1 2010-12-06 Yael Aharon <yael.aharon (a] nokia.com> 2 3 Reviewed by Andreas Kling. 4 5 [Qt] Support focus ring outline color for links. 6 https://bugs.webkit.org/show_bug.cgi?id=50428 7 8 Take width and offset into account when drawing focus ring. 9 10 Tests: fast/css/focus-ring-outline-color.html 11 fast/css/focus-ring-outline-offset.html 12 fast/css/focus-ring-outline-width.html 13 14 * platform/graphics/qt/GraphicsContextQt.cpp: 15 (WebCore::GraphicsContext::drawFocusRing): 16 17 2010-12-06 Yael Aharon <yael.aharon (a] nokia.com> 18 19 Reviewed by Andreas Kling. 20 21 [Qt] Fix focus ring outline color support 22 https://bugs.webkit.org/show_bug.cgi?id=50325 23 24 * platform/graphics/qt/GraphicsContextQt.cpp: 25 (WebCore::GraphicsContext::drawFocusRing): 26 27 Take the outline width into account when drawing the focus ring of image map. 28 Change the outline-style from dotted to solid. The default outline-width is 29 5 pixels, and dotted lines just don't make sense anymore. 30 Give the focus ring alpha of 50%, following what other ports do. 31 Save and restore the pen when drawing a focus ring. 32 33 2010-12-06 Andras Becsi <abecsi (a] webkit.org> 34 35 Reviewed by Csaba Osztrogonc. 36 37 [Qt][V8] Build fix after r73283. 38 39 No new tests needed. 40 41 * WebCore.pri: Add missing webaudio directory 42 to IDL generator includes. 43 44 2010-12-06 Philippe Normand <pnormand (a] igalia.com> 45 46 Reviewed by Martin Robinson. 47 48 [soup] implement ResourceHandle::platformSetDefersLoading 49 https://bugs.webkit.org/show_bug.cgi?id=44158 50 51 * platform/network/soup/ResourceHandleSoup.cpp: 52 (WebCore::ResourceHandle::platformSetDefersLoading): Implemented 53 using the soup_session_{,un}pause_message APIs. 54 55 2010-12-06 Sergio Villar Senin <svillar (a] igalia.com> 56 57 Reviewed by Martin Robinson. 58 59 [GTK] Leak in webkit_soup_cache_load if file contents load fails 60 https://bugs.webkit.org/show_bug.cgi?id=50558 61 62 g_file_get_contents() could return an error after allocating a 63 buffer for file contents. We must free that memory before 64 returning. 65 66 * platform/network/soup/cache/webkit/soup-cache.c: 67 (webkit_soup_cache_load): Added a missing g_free(). 68 69 2010-12-06 Sheriff Bot <webkit.review.bot (a] gmail.com> 70 71 Unreviewed, rolling out r73351. 72 http://trac.webkit.org/changeset/73351 73 https://bugs.webkit.org/show_bug.cgi?id=50560 74 75 "The change broke plugin tests in Chromium" (Requested by 76 yurys on #webkit). 77 78 * bindings/js/ScriptCallStackFactory.cpp: 79 (WebCore::ScriptCallStack::stackTrace): 80 * bindings/js/ScriptCallStackFactory.h: 81 * bindings/v8/ScriptCallStackFactory.cpp: 82 (WebCore::toScriptCallFrame): 83 (WebCore::toScriptCallFramesVector): 84 (WebCore::createScriptCallStack): 85 (WebCore::ScriptCallStack::stackTrace): 86 * bindings/v8/ScriptCallStackFactory.h: 87 * bindings/v8/V8ConsoleMessage.cpp: 88 (WebCore::V8ConsoleMessage::handler): 89 * inspector/ScriptCallFrame.cpp: 90 (WebCore::ScriptCallFrame::ScriptCallFrame): 91 (WebCore::ScriptCallFrame::isEqual): 92 (WebCore::ScriptCallFrame::buildInspectorObject): 93 * inspector/ScriptCallFrame.h: 94 (WebCore::ScriptCallFrame::sourceURL): 95 * inspector/ScriptCallStack.h: 96 * inspector/TimelineRecordFactory.cpp: 97 (WebCore::TimelineRecordFactory::createGenericRecord): 98 * inspector/front-end/ConsoleView.js: 99 (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 100 101 2010-12-06 Robert Hogan <robert (a] webkit.org> 102 103 Reviewed by Kenneth Rohde Christiansen. 104 105 [Qt] Report zero width for zero size fonts 106 107 Report zero width when font size is zero. 108 109 Fixes fast/text/font-size-zero.html 110 111 https://bugs.webkit.org/show_bug.cgi?id=50539 112 113 * platform/graphics/qt/FontQt.cpp: 114 (WebCore::Font::floatWidthForSimpleText): 115 (WebCore::Font::floatWidthForComplexText): 116 117 2010-12-03 Yury Semikhatsky <yurys (a] chromium.org> 118 119 Reviewed by Pavel Feldman. 120 121 [v8] Web Inspector: remove duplicate code for capturing stack trace 122 https://bugs.webkit.org/show_bug.cgi?id=50461 123 124 No new tests. Covered with existing inspector tests. 125 126 * bindings/js/ScriptCallStackFactory.cpp: 127 (WebCore::createScriptCallStack): 128 * bindings/js/ScriptCallStackFactory.h: 129 * bindings/v8/ScriptCallStackFactory.cpp: 130 (WebCore::toScriptCallFrame): 131 (WebCore::toScriptCallFramesVector): 132 (WebCore::createScriptCallStack): 133 * bindings/v8/ScriptCallStackFactory.h: 134 * bindings/v8/V8ConsoleMessage.cpp: 135 (WebCore::V8ConsoleMessage::handler): 136 * inspector/ScriptCallFrame.cpp: 137 (WebCore::ScriptCallFrame::ScriptCallFrame): 138 (WebCore::ScriptCallFrame::isEqual): 139 (WebCore::ScriptCallFrame::buildInspectorObject): 140 * inspector/ScriptCallFrame.h: 141 (WebCore::ScriptCallFrame::sourceURL): 142 * inspector/ScriptCallStack.h: 143 * inspector/TimelineRecordFactory.cpp: 144 (WebCore::TimelineRecordFactory::createGenericRecord): 145 * inspector/front-end/ConsoleView.js: 146 (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 147 148 2010-12-06 Sergio Villar Senin <svillar (a] igalia.com> 149 150 Reviewed by Martin Robinson. 151 152 [GTK] webkit_soup_cache_clear() does not delete all entries in the cache 153 https://bugs.webkit.org/show_bug.cgi?id=50462 154 155 Do not use g_hash_table_foreach to remove entries from the cache 156 entries hashtable. Iterate over a list of entries to remove them 157 from the hash table. 158 159 * platform/network/soup/ResourceHandleSoup.cpp: 160 * platform/network/soup/cache/webkit/soup-cache.c: 161 (remove_cache_item): 162 (webkit_soup_cache_finalize): 163 (clear_cache_item): 164 (webkit_soup_cache_clear): 165 166 2010-12-05 Kent Tamura <tkent (a] chromium.org> 167 168 Unreviewed. Run sort-Xcode-project-file. 169 170 * WebCore.xcodeproj/project.pbxproj: 171 172 2010-11-30 Luiz Agostini <luiz.agostini (a] openbossa.org> 173 174 Reviewed by Darin Adler. 175 176 HTML5 <details> and <summary> initial implementation 177 https://bugs.webkit.org/show_bug.cgi?id=50309 178 179 HTML5 <details> and <summary> elements initial implementation. The main objective is 180 to add the files for html element and renderers, and to get rid of build system issues 181 in future patches. 182 183 See: http://www.w3.org/TR/html5/interactive-elements.html#the-details-element 184 http://www.w3.org/TR/html5/interactive-elements.html#the-summary-element 185 186 build systems 187 188 * CMakeLists.txt: 189 * DerivedSources.cpp: 190 * DerivedSources.make: 191 * GNUmakefile.am: 192 * WebCore.gypi: 193 * WebCore.pri: 194 * WebCore.pro: 195 * WebCore.vcproj/WebCore.vcproj: 196 * WebCore.xcodeproj/project.pbxproj: 197 * bindings/gobject/GNUmakefile.am: 198 199 Some css properties to the new html elements. 200 201 * css/html.css: 202 (details): 203 (summary): 204 205 New html element associated with the corresponding tag. 206 207 * html/HTMLAttributeNames.in: 208 * html/HTMLTagNames.in: 209 210 1 html element and 3 renderers were added. 211 212 * html/HTMLDetailsElement.cpp: Added. 213 * html/HTMLDetailsElement.h: Added. 214 * html/HTMLDetailsElement.idl: Added. 215 * html/HTMLElementsAllInOne.cpp: 216 * rendering/RenderDetails.cpp: Added. 217 * rendering/RenderDetails.h: Added. 218 * rendering/RenderDetailsMarker.cpp: Added. 219 * rendering/RenderDetailsMarker.h: Added. 220 * rendering/RenderSummary.cpp: Added. 221 * rendering/RenderSummary.h: Added. 222 * rendering/RenderingAllInOne.cpp: 223 224 New renderer type checkers. 225 226 * rendering/RenderObject.h: 227 (WebCore::RenderObject::isDetails): 228 (WebCore::RenderObject::isDetailsMarker): 229 (WebCore::RenderObject::isSummary): 230 231 2010-12-05 Rob Buis <rwlbuis (a] gmail.com> 232 233 Reviewed by Nikolas Zimmermann. 234 235 createSVGTransformFromMatrix(undefined) => NULL ptr 236 https://bugs.webkit.org/show_bug.cgi?id=49564 237 238 Throw TYPE_MISMATCH_ERR when using undefined or null as value for matrix parameter. 239 240 * svg/SVGTransformList.idl: 241 * svg/properties/SVGTransformListPropertyTearOff.h: 242 (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix): 243 244 2010-12-05 Alejandro G. Castro <alex (a] igalia.com> 245 246 Reviewed by Xan Lopez. 247 248 [GTK] Fix compilation warnings reported by clang 249 https://bugs.webkit.org/show_bug.cgi?id=50252 250 251 * platform/graphics/Path.h: CairoPath is now a class, not a 252 struct. 253 * platform/network/soup/ResourceHandleSoup.cpp: 254 (WebCore::sendRequestCallback): Cast the status_code to int. 255 256 2010-12-05 Alejandro G. Castro <alex (a] igalia.com> 257 258 Reviewed by Martin Robinson. 259 260 [GTK] Remove setColor functions it was replicated in 261 CairoUtilities: setSourceRGBAFromColor. 262 263 * platform/graphics/cairo/GraphicsContextCairo.cpp: 264 (WebCore::setPlatformFill): 265 (WebCore::setPlatformStroke): 266 (WebCore::fillRectSourceOver): 267 (WebCore::GraphicsContext::drawRect): 268 (WebCore::GraphicsContext::drawLine): 269 (WebCore::GraphicsContext::drawEllipse): 270 (WebCore::GraphicsContext::strokeArc): 271 (WebCore::GraphicsContext::drawConvexPolygon): 272 (WebCore::GraphicsContext::drawFocusRing): 273 (WebCore::GraphicsContext::fillRoundedRect): 274 275 2010-12-05 Adam Roben <aroben (a] apple.com> 276 277 Windows production build fix 278 279 Put spaces after trailing backslashes when setting 280 %WebKitVSPropsRedirectionDir%. According to MSDN 281 <http://msdn.microsoft.com/en-us/library/2kzfk8c7(v=VS.80).aspx>: 282 283 A backslash ( \ ) followed by a newline character is interpreted as 284 a space in the command; use a backslash at the end of a line to 285 continue a command onto the next line. NMAKE interprets the 286 backslash literally if any other character, including a space or 287 tab, follows the backslash. 288 289 * WebCore.vcproj/WebCore.make: 290 291 2010-12-05 Robert Hogan <robert (a] webkit.org> 292 293 Reviewed by Andreas Kling. 294 295 [Qt] Zero-sized font does not yet work 296 297 Fix fast/text/font-size-zero.html 298 299 Copy other ports by setting minimumFontSize to 0 for DRT runs, 300 copy a fix to SimpleFontData from chromium/safari, and set font 301 size in FontPlatformData to zero if size zero is requested 302 and QFont::pixelSize otherwise. (Note that QFont doesn't accept 303 a pixel size of zero). 304 305 Also fix QFont::setPixelSize in FontPlatformData to use 306 description.computedPixelSize rather than computedSize and 307 pixelSize() rather than pointSizeF - since the latter gets 308 set to -1 if pixelSize is set at all. 309 310 https://bugs.webkit.org/show_bug.cgi?id=49759 311 312 * platform/graphics/qt/FontPlatformData.h: 313 (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate): 314 (WebCore::FontPlatformData::pixelSize): 315 * platform/graphics/qt/FontPlatformDataQt.cpp: 316 (WebCore::FontPlatformData::FontPlatformData): 317 * platform/graphics/qt/FontQt.cpp: 318 (WebCore::drawTextCommon): 319 * platform/graphics/qt/SimpleFontDataQt.cpp: 320 (WebCore::SimpleFontData::platformInit): 321 (WebCore::SimpleFontData::platformGlyphInit): 322 (WebCore::SimpleFontData::platformCharWidthInit): 323 324 2010-12-04 Daniel Bates <dbates (a] rim.com> 325 326 Reviewed by Darin Adler. 327 328 Add support for lower-armenian and upper-armenian 329 https://bugs.webkit.org/show_bug.cgi?id=49641 330 331 Implement support for list-style-types lower-armenian and upper-armenian 332 for lowercase Armenian and uppercase Armenian numerals, respectively. 333 334 Tests: fast/lists/w3-css3-lower-armenian.html 335 fast/lists/w3-css3-upper-armenian.html 336 337 * css/CSSPrimitiveValueMappings.h: 338 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added enum values LowerArmenian 339 and UpperArmenian. 340 * css/CSSValueKeywords.in: Added "upper-armenian" and "lower-armenian". 341 * inspector/front-end/SourceCSSTokenizer.re2js: Ditto. 342 * rendering/RenderListMarker.cpp: 343 (WebCore::effectiveListMarkerType): Added enum values LowerArmenian 344 and UpperArmenian. 345 (WebCore::listMarkerSuffix): Ditto. 346 (WebCore::listMarkerText): Ditto. 347 (WebCore::RenderListMarker::paint): Ditto. 348 (WebCore::RenderListMarker::computePreferredLogicalWidths): Ditto. 349 (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto. 350 * rendering/style/RenderStyleConstants.h: Ditto. 351 352 2010-12-04 Dan Bernstein <mitz (a] apple.com> 353 354 Reviewed by Sam Weinig. 355 356 WebCore part of <rdar://problem/8145955> Add text search API for counting/marking/highlighting matches in a range 357 https://bugs.webkit.org/show_bug.cgi?id=50530 358 359 * WebCore.exp.in: Export Range version of countMatchesForText(). 360 * editing/Editor.cpp: 361 (WebCore::isFrameInRange): Added this helper method. 362 (WebCore::Editor::countMatchesForText): Added a Range parameter and restricted the result to 363 matches that occur in the range. 364 * editing/Editor.h: 365 366 2010-12-04 Gavin Peters <gavinp (a] chromium.org> 367 368 Reviewed by Adam Barth. 369 370 Implement onload events for <link rel=prefetch> 371 https://bugs.webkit.org/show_bug.cgi?id=50187 372 373 Tests: fast/dom/HTMLLinkElement/link-and-subresource-test.html 374 fast/dom/HTMLLinkElement/prefetch-onload.html 375 376 * html/HTMLLinkElement.cpp: 377 (WebCore::HTMLLinkElement::HTMLLinkElement): 378 (WebCore::HTMLLinkElement::~HTMLLinkElement): 379 (WebCore::HTMLLinkElement::parseMappedAttribute): 380 (WebCore::HTMLLinkElement::process): 381 (WebCore::HTMLLinkElement::onloadTimerFired): 382 (WebCore::HTMLLinkElement::notifyFinished): 383 * html/HTMLLinkElement.h: 384 * loader/cache/CachedResource.cpp: 385 (WebCore::CachedResource::data): 386 387 2010-12-04 Xan Lopez <xlopez (a] igalia.com> 388 389 Reviewed by Martin Robinson. 390 391 [GTK] Drop GdkDrawable usage, it's deprecated in GTK+3.x and we can use GdkWindow 392 https://bugs.webkit.org/show_bug.cgi?id=50451 393 394 GdkDrawable has been removed in GTK+3.x. To cope with this we can 395 actually stop using it altogether, since GdkWindow is just a 396 typedef for it and that seems to be good enough for us. 397 398 * platform/graphics/GraphicsContext.h: s/GdkDrawable/GdkWindow/. 399 * platform/graphics/cairo/GraphicsContextCairo.cpp: 400 (WebCore::GraphicsContext::gdkWindow): ditto. 401 * platform/gtk/GtkVersioning.h: declare GDK_WINDOW_XWINDOW for GTK 3.x builds. 402 * platform/gtk/PlatformScreenGtk.cpp: 403 (WebCore::screenAvailableRect): s/GdkDrawable/GdkWindow/. 404 * platform/gtk/WidgetGtk.cpp: 405 (WebCore::gdkWindow): ditto. 406 (WebCore::Widget::setCursor): ditto. 407 * platform/gtk/WidgetRenderingContextGtk2.cpp: ditto. 408 409 2010-12-03 Dimitri Glazkov <dglazkov (a] chromium.org> 410 411 Reviewed by Darin Adler. 412 413 REGRESSION(r71934): input event fires twice when editing text inside a text input. 414 https://bugs.webkit.org/show_bug.cgi?id=50477 415 416 Now that events escape the shadow DOM boundary, the input event is fired twice 417 for each input, once triggered by editing, once triggered by value change. 418 419 Test: fast/forms/text-input-event.html 420 421 * dom/InputElement.cpp: 422 (WebCore::InputElement::setValueFromRenderer): Added a check to ensure editable fields 423 don't fire an extra input event. 424 425 2010-12-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 426 427 Unreviewed, rolling out r73302. 428 http://trac.webkit.org/changeset/73302 429 https://bugs.webkit.org/show_bug.cgi?id=50499 430 431 Causes crashes in debug LayoutTests (Requested by xan_ on 432 #webkit). 433 434 * accessibility/AccessibilityRenderObject.cpp: 435 (WebCore::AccessibilityRenderObject::renderParentObject): 436 (WebCore::AccessibilityRenderObject::addChildren): 437 * accessibility/AccessibilityRenderObject.h: 438 * accessibility/chromium/AccessibilityObjectChromium.cpp: 439 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 440 441 2010-12-01 Ilya Tikhonovsky <loislo (a] chromium.org> 442 443 Reviewed by Pavel Feldman. 444 445 Web Inspector: Inspector protocol cleanup task. 446 447 The patch has just small renames and adjustments for the protocol things. 448 'handler' keyword in idl file was replaced with 'domain'. 449 'domain' property was assigned for the each backend to frontend messages. 450 At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly. 451 452 https://bugs.webkit.org/show_bug.cgi?id=50337 453 454 * inspector/CodeGeneratorInspector.pm: 455 * inspector/Inspector.idl: 456 * inspector/front-end/inspector.js: 457 (WebInspector_syncDispatch): 458 459 2010-12-03 Alexander Pavlov <apavlov (a] chromium.org> 460 461 Reviewed by Yury Semikhatsky. 462 463 Web Inspector: Duplicate "!important" for !important properties displayed in the Styles pane 464 https://bugs.webkit.org/show_bug.cgi?id=50460 465 466 * inspector/front-end/StylesSidebarPane.js: 467 * inspector/front-end/inspector.css: 468 469 2010-12-03 Xan Lopez <xlopez (a] igalia.com> 470 471 Unreviewed build fix. 472 473 The JS code generator includes headers unconditionally, so we need 474 to generate them unconditionally and disable the feature. The 475 WebAudio files hadn't been added to our sources list. 476 477 * GNUmakefile.am: 478 479 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 480 481 Unreviewed build fix. 482 483 Try to fix EFL build after r73273. 484 485 * CMakeLists.txt: 486 487 2010-12-03 Chris Guillory <chris.guillory (a] google.com> 488 489 Reviewed by Chris Fleizach. 490 491 Include the FrameView widget of a RenderWidget in the accessibility tree. 492 https://bugs.webkit.org/show_bug.cgi?id=49106 493 494 Include render widget children in the accessibility tree for not mac webkit ports. 495 496 * accessibility/AccessibilityRenderObject.cpp: 497 (WebCore::AccessibilityRenderObject::renderParentObject): 498 (WebCore::AccessibilityRenderObject::addChildren): 499 (WebCore::AccessibilityRenderObject::addRenderWidgetChildren): 500 * accessibility/AccessibilityRenderObject.h: 501 * accessibility/chromium/AccessibilityObjectChromium.cpp: 502 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 503 504 2010-11-30 Abhishek Arya <inferno (a] chromium.org> 505 506 Reviewed by Dave Hyatt. 507 508 Don't clone an anonymous block, instead create a new one in splitBlocks. Also, 509 when beforeChild is not in one of our children, then do the processing first 510 to get its anonymous container before calling splitBlocks. 511 https://bugs.webkit.org/show_bug.cgi?id=49928 512 513 Tests: fast/multicol/span/anonymous-before-child-parent-crash.html 514 fast/multicol/span/anonymous-split-block-crash.html 515 516 * rendering/RenderBlock.cpp: 517 (WebCore::RenderBlock::splitBlocks): 518 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): 519 520 2010-12-03 Mark Rowe <mrowe (a] apple.com> 521 522 Reviewed by Eric Seidel. 523 524 Animated GIF animates much more slowly in Safari than Firefox 525 <rdar://problem/7689300> / <http://webkit.org/b/26455> 526 527 Adopt Firefox's behavior for frame duration clamping. Images that specify a frame duration 528 of <= 10ms are treated as having a frame duration of 100ms, while all other images use the 529 frame duration that they specify. 530 531 ImageIO currently implements its own clamping of frame durations (<rdar://problem/7689297>) 532 which will result in this change having no observable effect on platforms where it is used 533 until an updated version of ImageIO becomes available. 534 535 * platform/graphics/ImageSource.cpp: 536 (WebCore::ImageSource::frameDurationAtIndex): Update the formatting of the comment and style 537 of the code to match that in ImageSourceCG. 538 * platform/graphics/cg/ImageSourceCG.cpp: 539 (WebCore::ImageSource::frameDurationAtIndex): 540 541 2010-12-03 Chris Rogers <crogers (a] google.com> 542 543 Unreviewed build fix. 544 545 Fix M_E compile error on Chromium Win 546 https://bugs.webkit.org/show_bug.cgi?id=50479 547 548 * platform/audio/AudioUtilities.cpp: 549 (WebCore::AudioUtilities::discreteTimeConstantForSampleRate): 550 551 2010-12-03 Chris Rogers <crogers (a] google.com> 552 553 Unreviewed build fix. 554 555 Try to fix GTK build due to recent web audio makefile changes (disable ENABLE_WEB_AUDIO explicitly) 556 https://bugs.webkit.org/show_bug.cgi?id=50478 557 558 * GNUmakefile.am: 559 560 2010-12-03 Simon Fraser <simon.fraser (a] apple.com> 561 562 Reviewed by Dirk Schulze. 563 564 Clean up some text-related code on GraphicsContext 565 https://bugs.webkit.org/show_bug.cgi?id=50464 566 567 Save 8 bytes in GraphicsContextState by rearranging the 568 data members to reduce padding. 569 570 * platform/graphics/GraphicsContextPrivate.h: 571 (WebCore::GraphicsContextState::GraphicsContextState): 572 573 2010-12-03 Simon Fraser <simon.fraser (a] apple.com> 574 575 Another Chromium build fix. 576 577 * platform/graphics/skia/GraphicsContextSkia.cpp: 578 (WebCore::GraphicsContext::setPlatformTextDrawingMode): 579 580 2010-12-03 Simon Fraser <simon.fraser (a] apple.com> 581 582 Fix Chromium build. 583 584 * platform/graphics/skia/PlatformContextSkia.h: 585 586 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 587 588 Reviewed by Andreas Kling. 589 590 [CMake] Remove WebCore_IDL_PURE_FILES 591 https://bugs.webkit.org/show_bug.cgi?id=50445 592 593 * CMakeLists.txt: 594 595 2010-12-03 Jia Pu <jpu (a] apple.com> 596 597 Reviewed by Darin Adler. 598 599 Need to move all code that applies correction into correction panel callback. 600 https://bugs.webkit.org/show_bug.cgi?id=50426 601 <rdar://problem/8720832> 602 603 No new test, since there's no behavioral change. 604 605 This patch is to prepare WebKit to work with upcoming AppKit changes. The main changes are: 606 1. Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult(). 607 2. Added more user dictionary learning code. 608 3. Removed m_ prefix in all member variables of CorrectionPanelInfo. 609 610 * editing/CorrectionPanelInfo.h: Remove m_ prefix on member variables. Added ReasonForDismissingCorrectionPanel enum type. 611 612 * editing/Editor.cpp: Moved all calls to applyCorrectionPanelInfo() into handleCorrectionPanelResult(). 613 Adopted new member variable naming in class CorrectionPanelInfo. 614 (WebCore::Editor::respondToChangedSelection): 615 (WebCore::Editor::~Editor): 616 (WebCore::Editor::markMisspellingsAfterTypingToWord): 617 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 618 (WebCore::Editor::correctionPanelTimerFired): 619 (WebCore::Editor::handleCorrectionPanelResult): 620 (WebCore::Editor::startCorrectionPanelTimer): 621 (WebCore::Editor::stopCorrectionPanelTimer): 622 (WebCore::Editor::handleCancelOperation): 623 (WebCore::Editor::dismissCorrectionPanel): 624 (WebCore::Editor::applyCorrectionPanelInfo): 625 626 * editing/Editor.h: Changed signature of dismissCorrectionPanel to use ReasonForDismissingCorrectionPanel. 627 628 * loader/EmptyClients.h: Ditto. 629 (WebCore::EmptyEditorClient::dismissCorrectionPanel): 630 631 * page/EditorClient.h: Ditto. 632 633 2010-12-03 Pavel Feldman <pfeldman (a] chromium.org> 634 635 Reviewed by Yury Semikhatsky. 636 637 Web Inspector: reveal in elements panel does not switch the panel itself. 638 https://bugs.webkit.org/show_bug.cgi?id=50408 639 640 * inspector/front-end/ElementsTreeOutline.js: 641 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement): 642 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): 643 * inspector/front-end/ObjectPropertiesSection.js: 644 (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): 645 646 2010-12-03 Simon Fraser <simon.fraser (a] apple.com> 647 648 Reviewed by Nikolas Zimmermann. 649 650 Clean up some text-related code on GraphicsContext 651 https://bugs.webkit.org/show_bug.cgi?id=50464 652 653 Use defined types for textDrawingMode and it's associated flags. 654 655 * html/canvas/CanvasRenderingContext2D.cpp: 656 (WebCore::CanvasRenderingContext2D::drawTextInternal): 657 * platform/graphics/GraphicsContext.cpp: 658 (WebCore::GraphicsContext::textDrawingMode): 659 (WebCore::GraphicsContext::setTextDrawingMode): 660 (WebCore::GraphicsContext::setPlatformTextDrawingMode): 661 * platform/graphics/GraphicsContext.h: 662 * platform/graphics/GraphicsContextPrivate.h: 663 (WebCore::GraphicsContextState::GraphicsContextState): 664 * platform/graphics/cairo/FontCairo.cpp: 665 (WebCore::drawGlyphsShadow): 666 (WebCore::Font::drawGlyphs): 667 * platform/graphics/cg/GraphicsContextCG.cpp: 668 (WebCore::GraphicsContext::setPlatformTextDrawingMode): 669 * platform/graphics/chromium/FontLinux.cpp: 670 (WebCore::Font::drawGlyphs): 671 (WebCore::Font::drawComplexText): 672 * platform/graphics/gtk/FontGtk.cpp: 673 (WebCore::drawGlyphsShadow): 674 (WebCore::Font::drawComplexText): 675 * platform/graphics/mac/FontMac.mm: 676 (WebCore::Font::drawGlyphs): 677 * platform/graphics/openvg/PainterOpenVG.cpp: 678 (WebCore::PlatformPainterState::PlatformPainterState): 679 (WebCore::PainterOpenVG::textDrawingMode): 680 (WebCore::PainterOpenVG::setTextDrawingMode): 681 (WebCore::PainterOpenVG::drawText): 682 * platform/graphics/qt/FontQt.cpp: 683 (WebCore::drawTextCommon): 684 * platform/graphics/skia/PlatformContextSkia.cpp: 685 (WebCore::PlatformContextSkia::State::State): 686 (WebCore::PlatformContextSkia::getTextDrawingMode): 687 (WebCore::PlatformContextSkia::setTextDrawingMode): 688 * platform/graphics/skia/SkiaFontWin.cpp: 689 (WebCore::windowsCanHandleTextDrawing): 690 (WebCore::paintSkiaText): 691 * platform/graphics/texmap/TextureMapper.h: 692 (WebCore::TextureMapper::setTextDrawingMode): 693 (WebCore::TextureMapper::textDrawingMode): 694 (WebCore::TextureMapper::TextureMapper): 695 * platform/graphics/win/FontCGWin.cpp: 696 (WebCore::drawGDIGlyphs): 697 (WebCore::Font::drawGlyphs): 698 * platform/graphics/wince/GraphicsContextWinCE.cpp: 699 (WebCore::GraphicsContext::drawText): 700 * rendering/InlineTextBox.cpp: 701 (WebCore::updateGraphicsContext): 702 * rendering/RenderSVGResourceGradient.cpp: 703 (WebCore::RenderSVGResourceGradient::applyResource): 704 * rendering/RenderSVGResourcePattern.cpp: 705 (WebCore::RenderSVGResourcePattern::applyResource): 706 * rendering/RenderSVGResourceSolidColor.cpp: 707 (WebCore::RenderSVGResourceSolidColor::applyResource): 708 * svg/SVGFont.cpp: 709 (WebCore::Font::drawTextUsingSVGFont): 710 711 2010-12-03 Chris Rogers <crogers (a] google.com> 712 713 Reviewed by Kenneth Russell. 714 715 First steps to adding web audio files to build systems 716 https://bugs.webkit.org/show_bug.cgi?id=49952 717 718 No new tests since audio API is not yet implemented. 719 720 * CMakeLists.txt: 721 * DerivedSources.make: 722 * ForwardingHeaders/wtf/Complex.h: Added. 723 * GNUmakefile.am: 724 * WebCore.gyp/WebCore.gyp: 725 * WebCore.gypi: 726 * WebCore.pri: 727 * WebCore.pro: 728 * bindings/js/JSDOMWindowCustom.cpp: 729 (WebCore::JSDOMWindow::audioContext): 730 * features.pri: 731 * page/DOMWindow.idl: 732 * platform/audio/HRTFElevation.cpp: 733 734 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 735 736 Reviewed by David Levin. 737 738 Use String::adopt in TextCodecWinCE::decode 739 https://bugs.webkit.org/show_bug.cgi?id=50319 740 741 * platform/text/wince/TextCodecWinCE.cpp: 742 (WebCore::TextCodecWinCE::decode): 743 744 2010-12-03 Brady Eidson <beidson (a] apple.com> 745 746 Reviewed by Anders Carlsson. 747 748 Groundwork for <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191 749 WebKit2 Authentication Support 750 751 * WebCore.exp.in: 752 753 Expose the AuthenticationClient for WK2 platforms (Windows already does this): 754 * platform/network/mac/AuthenticationChallenge.h: 755 * platform/network/mac/AuthenticationMac.mm: 756 (-[WebCoreAuthenticationClientAsChallengeSender client]): 757 (WebCore::AuthenticationChallenge::authenticationClient): 758 759 * platform/network/qt/AuthenticationChallenge.h: 760 (WebCore::AuthenticationChallenge::authenticationClient): 761 762 2010-12-03 Ryosuke Niwa <rniwa (a] webkit.org> 763 764 Reviewed by Darin Adler. 765 766 REGRESSION: Crash when deleting text after textarea's value is modified on input event 767 https://bugs.webkit.org/show_bug.cgi?id=49962 768 769 The crash was caused by TypingCommand::deleteKeyPressed's reusing a typing command for 770 textarea's shadow DOM after its input event handler rewrote the value set by the typing command. 771 Because the reused typing command's ending selection was pointing at a shadow node 772 that has been detached from the document when the event handler set the new value, 773 rootEditableElement of the ending selection was null and caused the crash. 774 775 Fixed the bug by updating the ending selection of the last typing command when it differsfrom 776 that of the current selection held by the SelectionController in TypingCommand::deleteKeyPressed. 777 Also fixed similar bugs in forwardDeleteKeyPressed and insertText, and insertTextRunWithoutNewlines. 778 779 Tests: editing/input/set-value-on-input-and-delete.html 780 editing/input/set-value-on-input-and-forward-delete.html 781 editing/input/set-value-on-input-and-type-input.html 782 editing/input/set-value-on-input-and-type-textarea.html 783 784 * editing/InsertTextCommand.h: Added TypingCommand as a friend because it needs to update selection. 785 * editing/TypingCommand.cpp: 786 (WebCore::TypingCommand::deleteKeyPressed): Updates the last typing command's selection as needed. 787 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto. 788 (WebCore::TypingCommand::insertText): Ditto. 789 (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection): Added. 790 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Updates InsertTextCommand's selection as needed. 791 * editing/TypingCommand.h: 792 793 2010-12-03 Daniel Cheng <dcheng (a] chromium.org> 794 795 Reviewed by Tony Chang. 796 797 Dragging and dropping into an empty document crashes WebKit. 798 https://bugs.webkit.org/show_bug.cgi?id=48793 799 800 Remove the assert and update callers to check for a null return value. 801 802 Test: manual-tests/drop-in-empty-doc.html 803 804 * manual-tests/drop-in-empty-doc.html: Added. 805 * manual-tests/resources/drop-in-empty-doc.xhtml: Added. 806 * page/DragController.cpp: 807 (WebCore::elementUnderMouse): 808 (WebCore::DragController::tryDocumentDrag): 809 (WebCore::DragController::concludeEditDrag): 810 811 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 812 813 Reviewed by Andreas Kling. 814 815 Move Inspector generator logic into main CMakeLists.txt file 816 https://bugs.webkit.org/show_bug.cgi?id=50445 817 818 * CMakeLists.txt: 819 820 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 821 822 Reviewed by Andreas Kling. 823 824 Move StringWx.cpp into wtf directory 825 https://bugs.webkit.org/show_bug.cgi?id=50060 826 827 * WebCore.gypi: 828 * platform/text/wx/StringWx.cpp: Removed. 829 830 2010-12-03 Dimitri Glazkov <dglazkov (a] chromium.org> 831 832 Reviewed by Darin Adler. 833 834 REGRESSION(r72783): DOMActivate fires multiple times from input type=file 835 https://bugs.webkit.org/show_bug.cgi?id=50396 836 837 Test: fast/events/shadow-boundary-crossing-2.html 838 839 * dom/EventContext.cpp: Reverted changes made in r72783. 840 * dom/EventContext.h: Ditto. 841 * dom/Node.cpp: 842 (WebCore::Node::containsIncludingShadowDOM): Added. 843 (WebCore::Node::dispatchGenericEvent): Reverted changes made in r72783. 844 * dom/Node.h: Added decl. 845 * html/HTMLLabelElement.cpp: 846 (WebCore::HTMLLabelElement::defaultEventHandler): Reverted changes made in r72783. 847 848 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 849 850 Reviewed by Andreas Kling. 851 852 Move StringBrew.cpp into wtf directory 853 https://bugs.webkit.org/show_bug.cgi?id=50058 854 855 * platform/text/brew/StringBrew.cpp: Removed. 856 857 2010-12-03 Patrick Gansterer <paroga (a] webkit.org> 858 859 Reviewed by Andreas Kling. 860 861 Move StringHaiku.cpp into wtf directory 862 https://bugs.webkit.org/show_bug.cgi?id=50057 863 864 * platform/text/haiku/StringHaiku.cpp: Removed. 865 866 2010-12-03 Jessie Berlin <jberlin (a] apple.com> 867 868 Reviewed by Sam Weinig. 869 870 Need a WebKit2 Equivalent of WebSecurityOrigin 871 https://bugs.webkit.org/show_bug.cgi?id=50170 872 873 * WebCore.exp.in: 874 Export the symbol for SecurityOrigin::createFromDatabaseIdentifier. 875 876 2010-12-03 Andras Becsi <abecsi (a] inf.u-szeged.hu> 877 878 Unreviewed build fix after r73254. 879 880 [Qt][V8] Add missing headers to $headerIncludes rather than $implIncludes 881 because headers are needed by the generated .h files. 882 883 No new tests needed. 884 885 * bindings/scripts/CodeGeneratorV8.pm: 886 887 2010-12-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 888 889 Reviewed by Dirk Schulze. 890 891 1336 files in WebCore rebuild when you touch SVGNames 892 https://bugs.webkit.org/show_bug.cgi?id=42025 893 894 Remove global SVGNames.h dependency, as SVGAnimatedPropertyMacros.h included it. 895 This requires to add the SVGNames.h include to lots of cpp files. 896 897 No functional changes, thus no new tests. 898 899 * css/CSSCursorImageValue.cpp: 900 * css/CSSFontFaceSource.cpp: 901 * dom/Node.cpp: 902 * loader/cache/CachedFont.cpp: 903 * rendering/RenderSVGResourceClipper.cpp: 904 * rendering/RenderSVGResourceFilter.cpp: 905 * rendering/RenderSVGTransformableContainer.cpp: 906 * rendering/RenderSVGViewportContainer.cpp: 907 * rendering/SVGRenderTreeAsText.cpp: 908 * rendering/SVGResources.cpp: 909 * rendering/svg/RenderSVGTextPath.cpp: 910 * rendering/svg/SVGRootInlineBox.cpp: 911 * svg/SVGAnimateElement.cpp: 912 * svg/SVGAnimateMotionElement.cpp: 913 * svg/SVGAnimateTransformElement.cpp: 914 * svg/SVGDefsElement.cpp: 915 * svg/SVGFEBlendElement.cpp: 916 * svg/SVGFEDisplacementMapElement.cpp: 917 * svg/SVGFEMergeElement.cpp: 918 * svg/SVGFEMergeNodeElement.cpp: 919 * svg/SVGFEOffsetElement.cpp: 920 * svg/SVGFETileElement.cpp: 921 * svg/SVGFETurbulenceElement.cpp: 922 * svg/SVGFont.cpp: 923 * svg/SVGGElement.cpp: 924 * svg/SVGImageElement.cpp: 925 * svg/SVGLength.cpp: 926 * svg/SVGMPathElement.cpp: 927 * svg/SVGPathElement.cpp: 928 * svg/SVGPathSegList.cpp: 929 * svg/SVGStyledTransformableElement.cpp: 930 * svg/SVGSymbolElement.cpp: 931 * svg/SVGTextContentElement.cpp: 932 * svg/SVGTextElement.cpp: 933 * svg/SVGTextPathElement.cpp: 934 * svg/SVGUseElement.cpp: 935 * svg/SVGViewSpec.cpp: 936 * svg/animation/SMILTimeContainer.cpp: 937 * svg/properties/SVGAnimatedPropertyMacros.h: 938 * svg/properties/SVGPathSegListPropertyTearOff.cpp: 939 940 2010-12-02 Philippe Normand <pnormand (a] igalia.com> 941 942 Reviewed by Martin Robinson. 943 944 [GStreamer] hasVideo/Audio return false until the pipeline reaches PAUSED 945 https://bugs.webkit.org/show_bug.cgi?id=50382 946 947 Go to PAUSED even if preload is deactivated. In that case don't 948 process the GStreamer state changes until commitLoad() has been 949 called. This patch also fixes hasVideo and hasAudio methods, 950 making them reactive to the playbin2 audio/video tags-changed 951 signals. 952 953 Test: media/controls-without-preload.html 954 955 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 956 (WebCore::mediaPlayerPrivateMessageCallback): 957 (WebCore::mediaPlayerPrivateVideoTagsChangedCallback): 958 (WebCore::mediaPlayerPrivateAudioTagsChangedCallback): 959 (WebCore::mediaPlayerPrivateAudioTagsChangeTimeoutCallback): 960 (WebCore::mediaPlayerPrivateVideoTagsChangeTimeoutCallback): 961 (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer): 962 (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): 963 (WebCore::MediaPlayerPrivateGStreamer::load): 964 (WebCore::MediaPlayerPrivateGStreamer::commitLoad): 965 (WebCore::MediaPlayerPrivateGStreamer::videoTagsChanged): 966 (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideoTags): 967 (WebCore::MediaPlayerPrivateGStreamer::audioTagsChanged): 968 (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudioTags): 969 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): 970 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 971 (WebCore::MediaPlayerPrivateGStreamer::hasVideo): 972 (WebCore::MediaPlayerPrivateGStreamer::hasAudio): 973 (WebCore::MediaPlayerPrivateGStreamer::loadDelayed): 974 975 2010-12-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 976 977 Reviewed by Dirk Schulze. 978 979 Finish splitting DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for the remaining SVGAnimated* types 980 https://bugs.webkit.org/show_bug.cgi?id=50440 981 982 Continuing the work on bug 42025: Introduce (DECLARE|DEFINE)_ANIMATED_(ANGLE|BOOLEAN|INTEGER|PRESERVEASPECTRATIO|RECT). 983 The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. 984 985 No functional changes, thus no new tests. 986 987 * svg/SVGAElement.cpp: 988 * svg/SVGAElement.h: 989 * svg/SVGAnimatedAngle.h: 990 * svg/SVGAnimatedBoolean.h: 991 * svg/SVGAnimatedInteger.h: 992 * svg/SVGAnimatedPreserveAspectRatio.h: 993 * svg/SVGAnimatedRect.h: 994 * svg/SVGAnimationElement.cpp: 995 * svg/SVGAnimationElement.h: 996 (WebCore::SVGAnimationElement::calculateDistance): 997 (WebCore::SVGAnimationElement::animationPath): 998 * svg/SVGCircleElement.cpp: 999 * svg/SVGCircleElement.h: 1000 * svg/SVGClipPathElement.cpp: 1001 * svg/SVGClipPathElement.h: 1002 * svg/SVGCursorElement.cpp: 1003 * svg/SVGCursorElement.h: 1004 * svg/SVGDefsElement.cpp: 1005 * svg/SVGDefsElement.h: 1006 * svg/SVGEllipseElement.cpp: 1007 * svg/SVGEllipseElement.h: 1008 * svg/SVGFEConvolveMatrixElement.cpp: 1009 * svg/SVGFEConvolveMatrixElement.h: 1010 * svg/SVGFEImageElement.cpp: 1011 * svg/SVGFEImageElement.h: 1012 * svg/SVGFETurbulenceElement.cpp: 1013 * svg/SVGFETurbulenceElement.h: 1014 * svg/SVGFilterElement.cpp: 1015 * svg/SVGFilterElement.h: 1016 * svg/SVGFilterPrimitiveStandardAttributes.h: 1017 * svg/SVGFontElement.cpp: 1018 (WebCore::SVGFontElement::firstMissingGlyphElement): 1019 (WebCore::SVGFontElement::ensureGlyphCache): 1020 * svg/SVGFontElement.h: 1021 * svg/SVGForeignObjectElement.cpp: 1022 * svg/SVGForeignObjectElement.h: 1023 * svg/SVGGElement.cpp: 1024 * svg/SVGGElement.h: 1025 (WebCore::SVGGElement::isShadowTreeContainerElement): 1026 (WebCore::SVGGElement::isValid): 1027 * svg/SVGGradientElement.cpp: 1028 * svg/SVGGradientElement.h: 1029 * svg/SVGImageElement.cpp: 1030 * svg/SVGImageElement.h: 1031 * svg/SVGLineElement.cpp: 1032 * svg/SVGLineElement.h: 1033 * svg/SVGLinearGradientElement.h: 1034 * svg/SVGMPathElement.cpp: 1035 * svg/SVGMPathElement.h: 1036 * svg/SVGMarkerElement.cpp: 1037 * svg/SVGMarkerElement.h: 1038 * svg/SVGMaskElement.cpp: 1039 * svg/SVGMaskElement.h: 1040 * svg/SVGPathElement.cpp: 1041 * svg/SVGPathElement.h: 1042 * svg/SVGPatternElement.cpp: 1043 * svg/SVGPatternElement.h: 1044 * svg/SVGPolyElement.cpp: 1045 * svg/SVGPolyElement.h: 1046 * svg/SVGRadialGradientElement.h: 1047 * svg/SVGRectElement.cpp: 1048 * svg/SVGRectElement.h: 1049 * svg/SVGSVGElement.cpp: 1050 (WebCore::SVGSVGElement::contentScriptType): 1051 (WebCore::SVGSVGElement::contentStyleType): 1052 (WebCore::SVGSVGElement::parseMappedAttribute): 1053 * svg/SVGSVGElement.h: 1054 * svg/SVGScriptElement.cpp: 1055 * svg/SVGScriptElement.h: 1056 * svg/SVGSwitchElement.cpp: 1057 * svg/SVGSwitchElement.h: 1058 (WebCore::SVGSwitchElement::isValid): 1059 * svg/SVGSymbolElement.cpp: 1060 * svg/SVGSymbolElement.h: 1061 (WebCore::SVGSymbolElement::rendererIsNeeded): 1062 * svg/SVGTextContentElement.cpp: 1063 * svg/SVGTextContentElement.h: 1064 * svg/SVGUseElement.cpp: 1065 * svg/SVGUseElement.h: 1066 * svg/SVGViewElement.cpp: 1067 * svg/SVGViewElement.h: 1068 (WebCore::SVGViewElement::viewTarget): 1069 (WebCore::SVGViewElement::rendererIsNeeded): 1070 * svg/SVGViewSpec.cpp: 1071 * svg/SVGViewSpec.h: 1072 (WebCore::SVGViewSpec::transform): 1073 (WebCore::SVGViewSpec::viewTargetString): 1074 (WebCore::SVGViewSpec::contextElement): 1075 * svg/properties/SVGAnimatedPropertyMacros.h: 1076 1077 2010-12-03 Noel Gordon <noel.gordon (a] gmail.com> 1078 1079 Reviewed by Darin Fisher. 1080 1081 [chromium] PNG encoder leaks memory on png_write_row errors. 1082 https://bugs.webkit.org/show_bug.cgi?id=50439 1083 1084 Move the creation of needed C++ objects before the setjmp() point so 1085 those objects have their destructors called if libpng errors invoke 1086 the setjmp() return path. 1087 1088 Other minor cleanup: use the skia bitmap locker class, and remove the 1089 PNGDestroyer class - instead directly call png_destroy_write_struct() 1090 at each of the encodeImpl() return points. 1091 1092 No change in behaviour, so no new tests. 1093 1094 * platform/image-encoders/skia/PNGImageEncoder.cpp: 1095 (WebCore::encodeImpl): 1096 (WebCore::PNGImageEncoder::encode): 1097 1098 2010-12-02 Philippe Normand <pnormand (a] igalia.com> 1099 1100 Reviewed by Eric Carlson. 1101 1102 Theme not updated when MediaPlayer m_private engine changes 1103 https://bugs.webkit.org/show_bug.cgi?id=50228 1104 1105 Trigger a new rendering of the media element when the private 1106 media-player backend is updated. 1107 1108 * html/HTMLMediaElement.cpp: 1109 (WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): 1110 * html/HTMLMediaElement.h: 1111 * platform/graphics/MediaPlayer.cpp: 1112 (WebCore::MediaPlayer::MediaPlayer): 1113 (WebCore::MediaPlayer::load): 1114 * platform/graphics/MediaPlayer.h: 1115 (WebCore::MediaPlayerClient::mediaPlayerEngineUpdated): 1116 1117 2010-12-03 Yonathan Randolph <yonathan (a] gmail.com> 1118 1119 Reviewed by Alexey Proskuryakov. 1120 1121 XPath lexer misinterprets expression starting with "div". 1122 https://bugs.webkit.org/show_bug.cgi?id=50366 1123 1124 * xml/XPathParser.cpp: 1125 * xml/XPathParser.h: 1126 (WebCore::XPath::Parser::isOperatorContext): removed (renamed) 1127 (WebCore::XPath::Parser::isBinaryOperatorContext): added 1128 1129 2010-12-02 Rob Buis <rwlbuis (a] gmail.com> 1130 1131 Reviewed by Alexey Proskuryakov. 1132 1133 CSS 2.1 failure: at-import-* 1134 https://bugs.webkit.org/show_bug.cgi?id=47153 1135 1136 Fix at-import-010.htm by only setting m_allowImportRules 1137 to false when creating valid style or page rules. 1138 1139 Test: css2.1/t040105-import-10-b.html 1140 1141 * css/CSSParser.cpp: 1142 (WebCore::CSSParser::createStyleRule): 1143 1144 2010-12-02 Aaron Boodman <aa (a] chromium.org> 1145 1146 Reviewed by David Hyatt. 1147 1148 Reduce the number of cases where we end up with a stale value for 1149 minimumPreferredLogicalWidth(). This isn't a complete fix, but fixes a 1150 large number of cases. 1151 1152 RenderObject::minimumPreferredLogicalWidth() sometimes reports wrong value. 1153 https://bugs.webkit.org/show_bug.cgi?id=50119 1154 1155 * rendering/RenderBox.cpp: 1156 (WebCore::RenderBox::styleDidChange): 1157 1158 2010-12-02 Gregg Tavares <gman (a] google.com> 1159 1160 Reviewed by David Levin. 1161 1162 Need to initialize destination variables before calling GL 1163 https://bugs.webkit.org/show_bug.cgi?id=50048 1164 1165 No new tests because no change in functionality. 1166 1167 * html/canvas/WebGLFramebuffer.cpp: 1168 (WebCore::WebGLFramebuffer::initializeRenderbuffers): 1169 * html/canvas/WebGLProgram.cpp: 1170 (WebCore::WebGLProgram::cacheActiveAttribLocations): 1171 * html/canvas/WebGLRenderingContext.cpp: 1172 (WebCore::WebGLRenderingContext::getAttachedShaders): 1173 (WebCore::WebGLRenderingContext::getBufferParameter): 1174 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): 1175 (WebCore::WebGLRenderingContext::getBooleanParameter): 1176 (WebCore::WebGLRenderingContext::getFloatParameter): 1177 (WebCore::WebGLRenderingContext::getLongParameter): 1178 (WebCore::WebGLRenderingContext::getUnsignedLongParameter): 1179 * platform/graphics/chromium/LayerChromium.cpp: 1180 (WebCore::loadShader): 1181 (WebCore::LayerChromium::createShaderProgram): 1182 * platform/graphics/chromium/LayerRendererChromium.cpp: 1183 (WebCore::LayerRendererChromium::initializeSharedObjects): 1184 * platform/graphics/gpu/DrawingBuffer.cpp: 1185 (WebCore::DrawingBuffer::reset): 1186 * platform/graphics/gpu/Shader.cpp: 1187 (WebCore::Shader::loadProgram): 1188 1189 2010-12-02 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 1190 1191 Reviewed by Andreas Kling. 1192 1193 [Qt] Enable Web Timing for Qt 1194 https://bugs.webkit.org/show_bug.cgi?id=42433 1195 1196 * features.pri: Enable Web Timing for trunk (but not yet for 1197 production) 1198 1199 2010-12-02 Andy Estes <aestes (a] apple.com> 1200 1201 Rubber-stamped by Mark Rowe. 1202 1203 Update bindings test results with new GObject results. 1204 1205 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 1206 (WebKit::kit): 1207 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h: 1208 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 1209 (WebKit::kit): 1210 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h: 1211 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: 1212 (WebKit::kit): 1213 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h: 1214 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 1215 (WebKit::kit): 1216 (webkit_dom_test_obj_obj_method): 1217 (webkit_dom_test_obj_obj_method_with_args): 1218 (webkit_dom_test_obj_method_that_requires_all_args): 1219 (webkit_dom_test_obj_method_that_requires_all_args_and_throws): 1220 (webkit_dom_test_obj_with_script_state_obj): 1221 (webkit_dom_test_obj_with_script_state_obj_exception): 1222 (webkit_dom_test_obj_get_read_only_test_obj_attr): 1223 (webkit_dom_test_obj_get_test_obj_attr): 1224 (webkit_dom_test_obj_get_xml_obj_attr): 1225 * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h: 1226 1227 2010-12-02 Simon Fraser <simon.fraser (a] apple.com> 1228 1229 Revert r73217 and r73227 because of continued bustage. 1230 1231 * WebCore.xcodeproj/project.pbxproj: 1232 * platform/graphics/GraphicsLayer.h: 1233 (WebCore::GraphicsLayer::nativeLayer): 1234 * platform/graphics/ca/PlatformCAAnimation.h: Removed. 1235 * platform/graphics/ca/PlatformCALayer.h: Removed. 1236 * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Removed. 1237 * platform/graphics/ca/mac/PlatformCALayerMac.mm: Removed. 1238 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 1239 (WebCore::GraphicsLayerChromium::nativeLayer): 1240 * platform/graphics/chromium/GraphicsLayerChromium.h: 1241 * platform/graphics/mac/GraphicsLayerMac.h: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.h. 1242 (WebCore::GraphicsLayerMac::hasContentsLayer): 1243 (WebCore::GraphicsLayerMac::primaryLayer): 1244 (WebCore::GraphicsLayerMac::isReplicatedRootClone): 1245 (WebCore::GraphicsLayerMac::primaryLayerClones): 1246 (WebCore::GraphicsLayerMac::animationIsRunning): 1247 (WebCore::GraphicsLayerMac::contentsLayer): 1248 (WebCore::GraphicsLayerMac::ReplicaState::ReplicaState): 1249 (WebCore::GraphicsLayerMac::ReplicaState::push): 1250 (WebCore::GraphicsLayerMac::ReplicaState::setBranchType): 1251 (WebCore::GraphicsLayerMac::ReplicaState::pop): 1252 (WebCore::GraphicsLayerMac::ReplicaState::depth): 1253 (WebCore::GraphicsLayerMac::ReplicaState::replicaDepth): 1254 (WebCore::GraphicsLayerMac::hasCloneLayers): 1255 (WebCore::GraphicsLayerMac::LayerPropertyAnimation::LayerPropertyAnimation): 1256 (WebCore::GraphicsLayerMac::AnimationProcessingAction::AnimationProcessingAction): 1257 * platform/graphics/mac/GraphicsLayerMac.mm: Renamed from WebCore/platform/graphics/ca/GraphicsLayerCA.cpp. 1258 (WebCore::currentTimeToMediaTime): 1259 (WebCore::mediaTimeToCurrentTime): 1260 (-[WebAnimationDelegate animationDidStart:]): 1261 (-[WebAnimationDelegate WebCore::]): 1262 (-[WebAnimationDelegate setLayer:WebCore::]): 1263 (WebCore::copyTransform): 1264 (WebCore::getTransformFunctionValue): 1265 (WebCore::getValueFunctionNameForTransformOperation): 1266 (WebCore::propertyIdToString): 1267 (WebCore::animationIdentifier): 1268 (WebCore::getCAMediaTimingFunction): 1269 (WebCore::setLayerBorderColor): 1270 (WebCore::clearBorderColor): 1271 (WebCore::setLayerBackgroundColor): 1272 (WebCore::clearLayerBackgroundColor): 1273 (WebCore::safeSetSublayers): 1274 (WebCore::caValueFunctionSupported): 1275 (WebCore::forceSoftwareAnimation): 1276 (WebCore::nullActionsDictionary): 1277 (WebCore::animationHasStepsTimingFunction): 1278 (WebCore::GraphicsLayer::create): 1279 (WebCore::GraphicsLayerMac::GraphicsLayerMac): 1280 (WebCore::GraphicsLayerMac::~GraphicsLayerMac): 1281 (WebCore::GraphicsLayerMac::setName): 1282 (WebCore::GraphicsLayerMac::nativeLayer): 1283 (WebCore::GraphicsLayerMac::setChildren): 1284 (WebCore::GraphicsLayerMac::addChild): 1285 (WebCore::GraphicsLayerMac::addChildAtIndex): 1286 (WebCore::GraphicsLayerMac::addChildBelow): 1287 (WebCore::GraphicsLayerMac::addChildAbove): 1288 (WebCore::GraphicsLayerMac::replaceChild): 1289 (WebCore::GraphicsLayerMac::removeFromParent): 1290 (WebCore::GraphicsLayerMac::setMaskLayer): 1291 (WebCore::GraphicsLayerMac::setReplicatedLayer): 1292 (WebCore::GraphicsLayerMac::setReplicatedByLayer): 1293 (WebCore::GraphicsLayerMac::setPosition): 1294 (WebCore::GraphicsLayerMac::setAnchorPoint): 1295 (WebCore::GraphicsLayerMac::setSize): 1296 (WebCore::GraphicsLayerMac::setTransform): 1297 (WebCore::GraphicsLayerMac::setChildrenTransform): 1298 (WebCore::GraphicsLayerMac::moveOrCopyLayerAnimation): 1299 (WebCore::GraphicsLayerMac::moveOrCopyAnimationsForProperty): 1300 (WebCore::GraphicsLayerMac::setPreserves3D): 1301 (WebCore::GraphicsLayerMac::setMasksToBounds): 1302 (WebCore::GraphicsLayerMac::setDrawsContent): 1303 (WebCore::GraphicsLayerMac::setBackgroundColor): 1304 (WebCore::GraphicsLayerMac::clearBackgroundColor): 1305 (WebCore::GraphicsLayerMac::setContentsOpaque): 1306 (WebCore::GraphicsLayerMac::setBackfaceVisibility): 1307 (WebCore::GraphicsLayerMac::setOpacity): 1308 (WebCore::GraphicsLayerMac::setNeedsDisplay): 1309 (WebCore::GraphicsLayerMac::setNeedsDisplayInRect): 1310 (WebCore::GraphicsLayerMac::setContentsNeedsDisplay): 1311 (WebCore::GraphicsLayerMac::setContentsRect): 1312 (WebCore::GraphicsLayerMac::addAnimation): 1313 (WebCore::GraphicsLayerMac::pauseAnimation): 1314 (WebCore::GraphicsLayerMac::removeAnimation): 1315 (WebCore::GraphicsLayerMac::animationDidStart): 1316 (WebCore::GraphicsLayerMac::setContentsToImage): 1317 (WebCore::GraphicsLayerMac::setContentsToMedia): 1318 (WebCore::GraphicsLayerMac::didDisplay): 1319 (WebCore::GraphicsLayerMac::syncCompositingState): 1320 (WebCore::GraphicsLayerMac::syncCompositingStateForThisLayerOnly): 1321 (WebCore::GraphicsLayerMac::recursiveCommitChanges): 1322 (WebCore::GraphicsLayerMac::commitLayerChangesBeforeSublayers): 1323 (WebCore::GraphicsLayerMac::commitLayerChangesAfterSublayers): 1324 (WebCore::GraphicsLayerMac::updateLayerNames): 1325 (WebCore::GraphicsLayerMac::updateSublayerList): 1326 (WebCore::GraphicsLayerMac::updateLayerPosition): 1327 (WebCore::GraphicsLayerMac::updateLayerSize): 1328 (WebCore::GraphicsLayerMac::updateAnchorPoint): 1329 (WebCore::GraphicsLayerMac::updateTransform): 1330 (WebCore::GraphicsLayerMac::updateChildrenTransform): 1331 (WebCore::GraphicsLayerMac::updateMasksToBounds): 1332 (WebCore::GraphicsLayerMac::updateContentsOpaque): 1333 (WebCore::GraphicsLayerMac::updateBackfaceVisibility): 1334 (WebCore::GraphicsLayerMac::updateStructuralLayer): 1335 (WebCore::GraphicsLayerMac::ensureStructuralLayer): 1336 (WebCore::GraphicsLayerMac::structuralLayerPurpose): 1337 (WebCore::GraphicsLayerMac::updateLayerDrawsContent): 1338 (WebCore::GraphicsLayerMac::updateLayerBackgroundColor): 1339 (WebCore::GraphicsLayerMac::updateContentsImage): 1340 (WebCore::GraphicsLayerMac::updateContentsMediaLayer): 1341 (WebCore::GraphicsLayerMac::updateContentsCanvasLayer): 1342 (WebCore::GraphicsLayerMac::updateContentsRect): 1343 (WebCore::GraphicsLayerMac::updateMaskLayer): 1344 (WebCore::GraphicsLayerMac::updateReplicatedLayers): 1345 (WebCore::GraphicsLayerMac::ReplicaState::cloneID): 1346 (WebCore::GraphicsLayerMac::replicatedLayerRoot): 1347 (WebCore::GraphicsLayerMac::updateLayerAnimations): 1348 (WebCore::GraphicsLayerMac::setCAAnimationOnLayer): 1349 (WebCore::bug7311367Workaround): 1350 (WebCore::GraphicsLayerMac::removeCAAnimationFromLayer): 1351 (WebCore::copyAnimationProperties): 1352 (WebCore::GraphicsLayerMac::pauseCAAnimationOnLayer): 1353 (WebCore::GraphicsLayerMac::setContentsToCanvas): 1354 (WebCore::GraphicsLayerMac::repaintLayerDirtyRects): 1355 (WebCore::GraphicsLayerMac::updateContentsNeedsDisplay): 1356 (WebCore::GraphicsLayerMac::createAnimationFromKeyframes): 1357 (WebCore::GraphicsLayerMac::createTransformAnimationsFromKeyframes): 1358 (WebCore::GraphicsLayerMac::createBasicAnimation): 1359 (WebCore::GraphicsLayerMac::createKeyframeAnimation): 1360 (WebCore::GraphicsLayerMac::setupAnimation): 1361 (WebCore::GraphicsLayerMac::timingFunctionForAnimationValue): 1362 (WebCore::GraphicsLayerMac::setAnimationEndpoints): 1363 (WebCore::GraphicsLayerMac::setAnimationKeyframes): 1364 (WebCore::GraphicsLayerMac::setTransformAnimationEndpoints): 1365 (WebCore::GraphicsLayerMac::setTransformAnimationKeyframes): 1366 (WebCore::GraphicsLayerMac::suspendAnimations): 1367 (WebCore::GraphicsLayerMac::resumeAnimations): 1368 (WebCore::GraphicsLayerMac::hostLayerForSublayers): 1369 (WebCore::GraphicsLayerMac::layerForSuperlayer): 1370 (WebCore::GraphicsLayerMac::animatedLayer): 1371 (WebCore::GraphicsLayerMac::animatedLayerClones): 1372 (WebCore::GraphicsLayerMac::platformLayer): 1373 (WebCore::GraphicsLayerMac::setDebugBackgroundColor): 1374 (WebCore::GraphicsLayerMac::setDebugBorder): 1375 (WebCore::GraphicsLayerMac::constrainedSize): 1376 (WebCore::GraphicsLayerMac::requiresTiledLayer): 1377 (WebCore::GraphicsLayerMac::swapFromOrToTiledLayer): 1378 (WebCore::GraphicsLayerMac::defaultContentsOrientation): 1379 (WebCore::GraphicsLayerMac::updateContentsTransform): 1380 (WebCore::GraphicsLayerMac::setupContentsLayer): 1381 (WebCore::GraphicsLayerMac::findOrMakeClone): 1382 (WebCore::GraphicsLayerMac::ensureCloneLayers): 1383 (WebCore::GraphicsLayerMac::removeCloneLayers): 1384 (WebCore::GraphicsLayerMac::positionForCloneRootLayer): 1385 (WebCore::GraphicsLayerMac::propagateLayerChangeToReplicas): 1386 (WebCore::GraphicsLayerMac::fetchCloneLayers): 1387 (WebCore::GraphicsLayerMac::cloneLayer): 1388 (WebCore::GraphicsLayerMac::setOpacityInternal): 1389 (WebCore::GraphicsLayerMac::updateOpacityOnLayer): 1390 (WebCore::GraphicsLayerMac::noteSublayersChanged): 1391 (WebCore::GraphicsLayerMac::noteLayerPropertyChanged): 1392 * platform/graphics/mac/WebLayer.h: 1393 * platform/graphics/mac/WebLayer.mm: 1394 (-[WebLayer initWithLayer:]): 1395 (-[WebLayer setNeedsDisplay]): 1396 (-[WebLayer setNeedsDisplayInRect:]): 1397 (-[WebLayer display]): 1398 (-[WebLayer drawInContext:]): 1399 (-[WebLayer setLayerOwner:]): 1400 (-[WebLayer layerOwner]): 1401 * platform/graphics/mac/WebTiledLayer.h: 1402 * platform/graphics/mac/WebTiledLayer.mm: 1403 (-[WebTiledLayer initWithLayer:]): 1404 (-[WebTiledLayer setNeedsDisplay]): 1405 (-[WebTiledLayer setNeedsDisplayInRect:]): 1406 (-[WebTiledLayer display]): 1407 (-[WebTiledLayer drawInContext:]): 1408 (-[WebTiledLayer setLayerOwner:]): 1409 (-[WebTiledLayer layerOwner]): 1410 * platform/graphics/qt/GraphicsLayerQt.cpp: 1411 (WebCore::GraphicsLayerQtImpl::flushChanges): 1412 (WebCore::GraphicsLayerQt::nativeLayer): 1413 * platform/graphics/qt/GraphicsLayerQt.h: 1414 * platform/graphics/win/GraphicsLayerCACF.cpp: 1415 (WebCore::GraphicsLayerCACF::nativeLayer): 1416 * platform/graphics/win/GraphicsLayerCACF.h: 1417 1418 2010-12-02 Noel Gordon <noel.gordon (a] gmail.com> 1419 1420 Reviewed by David Levin. 1421 [chromium] Remove dead code from PNG encoder 1422 https://bugs.webkit.org/show_bug.cgi?id=50377 1423 1424 Also webkit style the PNG encoder files. 1425 1426 No change in behaviour, so no new tests. 1427 1428 * platform/image-encoders/skia/PNGImageEncoder.cpp: 1429 (WebCore::encodeImpl): 1430 (WebCore::PNGImageEncoder::encode): 1431 * platform/image-encoders/skia/PNGImageEncoder.h: 1432 1433 2010-12-02 Yuta Kitamura <yutak (a] chromium.org> 1434 1435 Reviewed by Alexey Proskuryakov. 1436 1437 An attempt to fix Chromium's clang build. 1438 1439 Implement (non-EventListener) marquee IDL attributes from HTML5. 1440 https://bugs.webkit.org/show_bug.cgi?id=49786 1441 1442 * rendering/style/RenderStyle.h: 1443 (WebCore::InheritedFlags::initialMarqueeSpeed): 1444 1445 2010-12-02 Mikhail Naganov <mnaganov (a] chromium.org> 1446 1447 Reviewed by Pavel Feldman. 1448 1449 Web Inspector: Fix heap snapshots loading. Loading is now 1450 conducted by the Profiles panel which prevents accidental 1451 simultaneous attempts to load the same profile several times in 1452 parallel. 1453 1454 https://bugs.webkit.org/show_bug.cgi?id=50427 1455 1456 * inspector/front-end/HeapSnapshotView.js: 1457 (WebInspector.HeapSnapshotView.prototype._loadProfile): 1458 (WebInspector.HeapSnapshotView.prototype.processLoadedSnapshot): 1459 * inspector/front-end/ProfilesPanel.js: 1460 (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot): 1461 (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk): 1462 (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot): 1463 1464 2010-12-02 Chris Marrin <cmarrin (a] apple.com> 1465 1466 Reviewed by Simon Fraser. 1467 1468 Fix Leopard build broken by http://trac.webkit.org/changeset/73217 1469 1470 * platform/graphics/ca/GraphicsLayerCA.cpp: 1471 (WebCore::getTransformFunctionValue): 1472 (WebCore::GraphicsLayerCA::updateContentsTransform): 1473 * platform/graphics/ca/PlatformCALayer.h: 1474 * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: 1475 (PlatformCAAnimation::valueFunction): 1476 (PlatformCAAnimation::setValueFunction): 1477 * platform/graphics/ca/mac/PlatformCALayerMac.mm: 1478 (PlatformCALayer::PlatformCALayer): 1479 (PlatformCALayer::anchorPoint): 1480 (PlatformCALayer::setAnchorPoint): 1481 (PlatformCALayer::contentsTransform): 1482 (PlatformCALayer::setContentsTransform): 1483 (PlatformCALayer::isGeometryFlipped): 1484 (PlatformCALayer::setGeometryFlipped): 1485 (PlatformCALayer::setMinificationFilter): 1486 (PlatformCALayer::setMagnificationFilter): 1487 1488 2010-12-02 Dan Bernstein <mitz (a] apple.com> 1489 1490 Reviewed by Dave Hyatt. 1491 1492 CSS support for the text-emphasis properties 1493 Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property 1494 https://bugs.webkit.org/show_bug.cgi?id=48539 1495 1496 Test: fast/css/parsing-text-emphasis.html 1497 1498 * css/CSSComputedStyleDeclaration.cpp: 1499 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added text-emphasis-color, 1500 text-emphasis-position and text-emphasis-style. Left the text-emphasis shorthand unsupported. 1501 * css/CSSParser.cpp: 1502 (WebCore::CSSParser::parseValue): Parse the properties. 1503 (WebCore::CSSParser::parseTextEmphasisStyle): Added. 1504 * css/CSSParser.h: 1505 * css/CSSPrimitiveValueMappings.h: 1506 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added TextEmphasisPosition, TextEmphasisFill 1507 and TextEmphasisMark mappings. 1508 (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition): Added. 1509 (WebCore::CSSPrimitiveValue::operator TextEmphasisFill): Added. 1510 (WebCore::CSSPrimitiveValue::operator TextEmphasisMark): Added. 1511 * css/CSSPropertyLonghand.cpp: 1512 (WebCore::initShorthandMap): Added the text-emphasis shorthand. 1513 * css/CSSPropertyNames.in: Added -webkit-text-emphasis, -webkit-text-emphasis-color, 1514 -webkit-text-emphasis-position, and -webkit-text-emphasis-style. 1515 * css/CSSStyleSelector.cpp: 1516 (WebCore::isValidVisitedLinkProperty): Added text-emphasis-color. 1517 (WebCore::CSSStyleSelector::applyProperty): Handle the properties. 1518 * css/CSSValueKeywords.in: Added 'over' and 'under' for text-emphasis-position. Added 'dot', 1519 'double-circle', 'triangle', 'sesame', 'filled' and 'open' for text-emphasis-style. 1520 * rendering/style/RenderStyle.cpp: 1521 (WebCore::RenderStyle::colorIncludingFallback): Handle text-emphasis-color. 1522 (WebCore::RenderStyle::textEmphasisMark): Added. Maps the fake 'auto' value to 'dot' or 1523 'sesame' based on writing direction. 1524 * rendering/style/RenderStyle.h: Added accessors. 1525 (WebCore::InheritedFlags::textEmphasisFill): 1526 (WebCore::InheritedFlags::textEmphasisCustomMark): 1527 (WebCore::InheritedFlags::textEmphasisPosition): 1528 (WebCore::InheritedFlags::setTextEmphasisColor): 1529 (WebCore::InheritedFlags::setTextEmphasisFill): 1530 (WebCore::InheritedFlags::setTextEmphasisMark): 1531 (WebCore::InheritedFlags::setTextEmphasisCustomMark): 1532 (WebCore::InheritedFlags::setTextEmphasisPosition): 1533 (WebCore::InheritedFlags::initialTextEmphasisColor): 1534 (WebCore::InheritedFlags::initialTextEmphasisFill): 1535 (WebCore::InheritedFlags::initialTextEmphasisMark): 1536 (WebCore::InheritedFlags::initialTextEmphasisCustomMark): 1537 (WebCore::InheritedFlags::initialTextEmphasisPosition): 1538 (WebCore::InheritedFlags::textEmphasisColor): 1539 * rendering/style/RenderStyleConstants.h: 1540 * rendering/style/StyleRareInheritedData.cpp: 1541 (WebCore::StyleRareInheritedData::StyleRareInheritedData): 1542 (WebCore::StyleRareInheritedData::operator==): 1543 * rendering/style/StyleRareInheritedData.h: 1544 1545 2010-12-02 Chris Marrin <cmarrin (a] apple.com> 1546 1547 Reviewed by Simon Fraser. 1548 1549 Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations 1550 https://bugs.webkit.org/show_bug.cgi?id=49388 1551 1552 Replaced GraphicsLayerMac with GraphicsLayerCA. GraphicsLayerCA is essentially 1553 identical to GraphicsLayerMac, but replaces all the CoreAnimation specific calls 1554 with calls to PlatformCALayer and PlatformCAAnimation. This makes GraphicsLayerCA 1555 platform neutral as long as implementations of those two classes are available. 1556 Added implementations in PlatformCALayerMac and PlatformCAAnimationMac. Also got 1557 rid of GraphicsLayer::nativeLayer() and replaced it with GraphicsLayer::platformLayer() 1558 to avoid confusion since both names were used to refer to the same thing. 1559 1560 This patch is only for Mac. Windows implementation has not changed. 1561 1562 * WebCore.xcodeproj/project.pbxproj: 1563 * platform/graphics/GraphicsLayer.h: 1564 * platform/graphics/ca: Added. 1565 * platform/graphics/ca/GraphicsLayerCA.cpp: Added. 1566 * platform/graphics/ca/GraphicsLayerCA.h: Added. 1567 * platform/graphics/ca/PlatformCAAnimation.h: Added. 1568 * platform/graphics/ca/PlatformCALayer.h: Added. 1569 * platform/graphics/ca/mac: Added. 1570 * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Added. 1571 * platform/graphics/ca/mac/PlatformCALayerMac.mm: Added. 1572 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 1573 * platform/graphics/chromium/GraphicsLayerChromium.h: 1574 * platform/graphics/mac/GraphicsLayerMac.h: Removed. 1575 * platform/graphics/mac/GraphicsLayerMac.mm: Removed. 1576 * platform/graphics/mac/WebLayer.h: 1577 * platform/graphics/mac/WebLayer.mm: 1578 * platform/graphics/mac/WebTiledLayer.h: 1579 * platform/graphics/mac/WebTiledLayer.mm: 1580 * platform/graphics/qt/GraphicsLayerQt.cpp: 1581 * platform/graphics/qt/GraphicsLayerQt.h: 1582 * platform/graphics/win/GraphicsLayerCACF.cpp: 1583 * platform/graphics/win/GraphicsLayerCACF.h: 1584 1585 2010-12-02 Joseph Pecoraro <joepeck (a] webkit.org> 1586 1587 Reviewed by Darin Adler. 1588 1589 Update ResourceLoaderSet Enumeration 1590 https://bugs.webkit.org/show_bug.cgi?id=50405 1591 1592 Use size_t when working with Vectors and when comparing between size_t types. 1593 1594 * loader/DocumentLoader.cpp: 1595 (WebCore::cancelAll): 1596 (WebCore::setAllDefersLoading): 1597 1598 2010-12-02 Jian Li <jianli (a] chromium.org> 1599 1600 Reviewed by Kenneth Russell. 1601 1602 Integer calculation issues in DataView constructor 1603 https://bugs.webkit.org/show_bug.cgi?id=50354 1604 1605 Test: fast/canvas/webgl/data-view-crash.html 1606 1607 * html/canvas/DataView.cpp: 1608 (WebCore::DataView::create): 1609 1610 2010-12-02 Patrick Gansterer <paroga (a] webkit.org> 1611 1612 Reviewed by Darin Adler. 1613 1614 Add AtomicString::fromUTF8 1615 https://bugs.webkit.org/show_bug.cgi?id=45594 1616 1617 Use AtomicString::fromUTF8 directly in the libxml2 parser. 1618 1619 * dom/XMLDocumentParserLibxml2.cpp: 1620 (WebCore::toAtomicString): 1621 1622 2010-12-02 Andy Estes <aestes (a] apple.com> 1623 1624 Fix the Qt Linux Release minimal build. 1625 1626 * html/HTMLMarqueeElement.cpp: Include ExceptionCode.h 1627 1628 2010-12-02 Joseph Pecoraro <joepeck (a] webkit.org> 1629 1630 Reviewed by Darin Adler. 1631 1632 Update ResourceLoaderSet Enumeration 1633 https://bugs.webkit.org/show_bug.cgi?id=50405 1634 1635 * loader/DocumentLoader.cpp: 1636 (WebCore::cancelAll): instead of copying the HashSet, use copyToVector. 1637 (WebCore::setAllDefersLoading): instead of copying the HashSet, use copyToVector. 1638 1639 2010-12-02 Andy Estes <aestes (a] apple.com> 1640 1641 Reviewed by Darin Adler. 1642 1643 Implement (non-EventListener) marquee IDL attributes from HTML5. 1644 https://bugs.webkit.org/show_bug.cgi?id=49786 1645 1646 Test: fast/html/marquee-element.html 1647 1648 * html/HTMLMarqueeElement.cpp: 1649 (WebCore::HTMLMarqueeElement::scrollAmount): If the content attribute 1650 can be converted to a signed integer and is >= 0, return it. 1651 Otherwise, return the default scrollAmount value. 1652 (WebCore::HTMLMarqueeElement::setScrollAmount): Update the content 1653 attribute if it is >= 0. Otherwise, raise INDEX_SIZE_ERR. 1654 (WebCore::HTMLMarqueeElement::scrollDelay): Same as scrollAmount. 1655 (WebCore::HTMLMarqueeElement::setScrollDelay): Same as setScrollAmount. 1656 (WebCore::HTMLMarqueeElement::loop): If the content attribute can be 1657 converted to a signed integer and is greater than 0 or equal to -1, 1658 return it. Otherwise, return the default loop value. 1659 (WebCore::HTMLMarqueeElement::setLoop): Update the content attribute if 1660 it is greater than 0 or equal to -1. Otherwise, raise INDEX_SIZE_ERR. 1661 * html/HTMLMarqueeElement.h: 1662 * html/HTMLMarqueeElement.idl: Update the IDL to match what is in HTML5. 1663 * rendering/style/RenderStyle.h: 1664 (WebCore::InheritedFlags::initialMarqueeSpeed): 1665 1666 2010-12-02 Patrick Gansterer <paroga (a] webkit.org> 1667 1668 Reviewed by Andreas Kling. 1669 1670 [OpenVG] Remove "current path" of GraphicsContext 1671 https://bugs.webkit.org/show_bug.cgi?id=50294 1672 1673 * platform/graphics/GraphicsContext.h: 1674 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 1675 (WebCore::GraphicsContext::fillPath): 1676 (WebCore::GraphicsContext::strokePath): 1677 (WebCore::GraphicsContext::clipPath): 1678 * platform/graphics/openvg/PainterOpenVG.cpp: 1679 (WebCore::PainterOpenVG::PainterOpenVG): 1680 (WebCore::PainterOpenVG::~PainterOpenVG): 1681 (WebCore::PainterOpenVG::drawPath): 1682 * platform/graphics/openvg/PainterOpenVG.h: 1683 1684 2010-12-02 Patrick Gansterer <paroga (a] webkit.org> 1685 1686 Reviewed by Andreas Kling. 1687 1688 [WINCE] Remove "current path" of GraphicsContext 1689 https://bugs.webkit.org/show_bug.cgi?id=50284 1690 1691 * platform/graphics/GraphicsContext.h: 1692 * platform/graphics/wince/GraphicsContextWinCE.cpp: 1693 (WebCore::GraphicsContext::fillPath): 1694 (WebCore::GraphicsContext::strokePath): 1695 1696 2010-12-02 Johnny Ding <jnd (a] chromium.org> 1697 1698 Reviewed by Adam Barth. 1699 1700 Set the right gesture status for URL redirections. 1701 https://bugs.webkit.org/show_bug.cgi?id=47817 1702 1703 Tests: fast/frames/location-redirect-user-gesture.html 1704 fast/frames/meta-refresh-user-gesture.html 1705 1706 * loader/NavigationScheduler.cpp: 1707 (WebCore::ScheduledNavigation::clearUserGesture): 1708 (WebCore::ScheduledRedirect::ScheduledRedirect): 1709 1710 2010-12-02 Chris Rogers <crogers (a] google.com> 1711 1712 Reviewed by Kenneth Russell. 1713 1714 AudioContext needs createBuffer() method from ArrayBuffer 1715 https://bugs.webkit.org/show_bug.cgi?id=50343 1716 1717 No new tests since audio API is not yet implemented. 1718 1719 * webaudio/AudioContext.cpp: 1720 (WebCore::AudioContext::createBuffer): 1721 * webaudio/AudioContext.h: 1722 * webaudio/AudioContext.idl: 1723 1724 2010-12-02 Noel Gordon <noel.gordon (a] gmail.com> 1725 1726 Reviewed by David Levin. 1727 1728 [chromium] Add canvas.toDataURL("image/jpeg", quality) support 1729 https://bugs.webkit.org/show_bug.cgi?id=49365 1730 1731 Adds a libjpeg-based image encoder for Skia bitmaps. Default encoding quality 1732 is 92 to match Mozilla, also Safari, though the actual value used by Safari is 1733 undocumented, and it appears to pre-blur images prior to compression. 1734 1735 The preMultipliedBGRAtoRGB() routine restores the un-premultiplied RGB colors 1736 where there is non-zero alpha. Again, this matches Firefox and Safari, but no 1737 browser conforms to the HTML5 canvas standard here, I believe, considering the 1738 result of canvas/philip/tests/toDataURL.jpeg.alpha.html; that test ignores the 1739 alpha channel when extracting an "image/jpeg".toDataURL(). The correct answer 1740 needs more investigation, bug http://webkit.org/b/40147. 1741 1742 Canvas toDataURL is covered by existing tests canvas/philip/tests/toDataURL.*, 1743 and fast/canvas/*toDataURL* tests. 1744 1745 * WebCore.gypi: 1746 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: 1747 (WebCore::V8HTMLCanvasElement::toDataURLCallback): don't set encoding quality 1748 here, just pass the toDataURL parameters through to the canvas layer. 1749 * platform/chromium/MIMETypeRegistryChromium.cpp: 1750 (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): implement 1751 the supported mimeTypes for encoding in-place. 1752 * platform/graphics/skia/ImageBufferSkia.cpp: 1753 (WebCore::ImageBuffer::toDataURL): add jpeg encoding and quality support. 1754 * platform/image-encoders/skia/JPEGImageEncoder.cpp: Added. 1755 (WebCore::prepareOutput): 1756 (WebCore::writeOutput): 1757 (WebCore::finishOutput): 1758 (WebCore::handleError): 1759 (WebCore::preMultipliedBGRAtoRGB): FIXME: bug 40147. 1760 (WebCore::JPEGImageEncoder::encode): 1761 * platform/image-encoders/skia/JPEGImageEncoder.h: Added. 1762 1763 2010-12-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 1764 1765 Unreviewed, rolling out r73152. 1766 http://trac.webkit.org/changeset/73152 1767 https://bugs.webkit.org/show_bug.cgi?id=50401 1768 1769 the patch has broken chromium win layout tests (Requested by 1770 loislo on #webkit). 1771 1772 * inspector/CodeGeneratorInspector.pm: 1773 * inspector/Inspector.idl: 1774 * inspector/front-end/Callback.js: 1775 * inspector/front-end/DOMAgent.js: 1776 (WebInspector.DOMNode): 1777 * inspector/front-end/inspector.js: 1778 (WebInspector.loaded.WebInspector.socket.onmessage): 1779 (WebInspector.dispatch): 1780 (WebInspector_syncDispatch): 1781 (WebInspector.reportProtocolError): 1782 1783 2010-12-02 W. James MacLean <wjmaclean (a] chromium.org> 1784 1785 Reviewed by James Robinson. 1786 1787 Scaled Resized images are blurred when sent to Skia 1788 https://bugs.webkit.org/show_bug.cgi?id=42370 1789 1790 This patch modifies ImageSkia.cpp to fix the calculation of resampled 1791 bitmap sizes so as to include the transform matrix of the canvas. 1792 Includes new tests to catch a scrolling regression and a clipping regression. 1793 1794 Tests: svg/custom/image-rescale-clip.html 1795 svg/custom/image-rescale-scroll.html 1796 svg/custom/image-rescale.svg 1797 1798 * platform/graphics/skia/ImageSkia.cpp: 1799 (WebCore::computeResamplingMode): 1800 (WebCore::drawResampledBitmap): 1801 1802 2010-12-02 Erik Arvidsson <arv (a] chromium.org> 1803 1804 Reviewed by Darin Adler. 1805 1806 Missing DOM property for incremental input attribute 1807 https://bugs.webkit.org/show_bug.cgi?id=50335 1808 1809 Test: fast/forms/incremental-dom-property.html 1810 1811 * html/HTMLInputElement.idl: Added attribute 1812 1813 2010-12-02 John Knottenbelt <jknotten (a] chromium.org> 1814 1815 Reviewed by Steve Block. 1816 1817 Move requestGeolocationPermissionForFrame to GeolocationClient 1818 https://bugs.webkit.org/show_bug.cgi?id=50061 1819 1820 This change facilitates client-based geolocation implementation by 1821 bringing together permission control into the geolocation client 1822 interface. 1823 1824 * page/Chrome.h: 1825 * page/ChromeClient.h: 1826 * page/Geolocation.cpp: 1827 (WebCore::Geolocation::disconnectFrame): 1828 (WebCore::Geolocation::requestPermission): 1829 * page/GeolocationClient.h: 1830 * page/GeolocationController.cpp: 1831 (WebCore::GeolocationController::requestPermission): 1832 (WebCore::GeolocationController::cancelPermissionRequest): 1833 * page/GeolocationController.h: 1834 * platform/mock/GeolocationClientMock.cpp: 1835 (WebCore::GeolocationClientMock::GeolocationClientMock): 1836 (WebCore::GeolocationClientMock::setPermission): 1837 (WebCore::GeolocationClientMock::requestPermission): 1838 (WebCore::GeolocationClientMock::cancelPermissionRequest): 1839 (WebCore::GeolocationClientMock::asyncUpdatePermission): 1840 (WebCore::GeolocationClientMock::permissionTimerFired): 1841 (WebCore::GeolocationClientMock::reset): 1842 (WebCore::GeolocationClientMock::stopUpdating): 1843 (WebCore::GeolocationClientMock::asyncUpdateController): 1844 (WebCore::GeolocationClientMock::controllerTimerFired): 1845 * platform/mock/GeolocationClientMock.h: 1846 1847 2010-12-01 Ilya Tikhonovsky <loislo (a] chromium.org> 1848 1849 Reviewed by Pavel Feldman. 1850 1851 Web Inspector: Inspector protocol cleanup task. 1852 1853 The patch has just small renames and adjustments for the protocol things. 1854 'handler' keyword in idl file was replaced with 'domain'. 1855 'domain' property was assigned for the each backend to frontend messages. 1856 At the next step WebInspector wrapper functions will be removed and 'agents' will be called directly. 1857 1858 https://bugs.webkit.org/show_bug.cgi?id=50337 1859 1860 * inspector/CodeGeneratorInspector.pm: 1861 * inspector/Inspector.idl: 1862 * inspector/front-end/inspector.js: 1863 (WebInspector_syncDispatch): 1864 1865 2010-12-01 Andrey Kosyakov <caseq (a] chromium.org> 1866 1867 Reviewed by Pavel Feldman. 1868 1869 Web Inspector: [Resources panel] [HAR] Need a way to save timing data. 1870 Re-implementing HAR export functionality that used to be in Resources 1871 tab in Network tab. 1872 https://bugs.webkit.org/show_bug.cgi?id=45663 1873 1874 * inspector/front-end/NetworkPanel.js: 1875 (WebInspector.NetworkPanel.prototype._createTable): 1876 (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode): 1877 (WebInspector.NetworkPanel.prototype._contextMenu): 1878 (WebInspector.NetworkPanel.prototype._exportAll): 1879 (WebInspector.NetworkPanel.prototype._exportResource): 1880 (WebInspector.NetworkDataGridNode.prototype.refreshResource): 1881 * inspector/front-end/networkPanel.css: 1882 (.data-grid table.data tr.revealed.network-item): 1883 (.data-grid.filter-other table.data tr.revealed.network-category-other): 1884 1885 2010-12-02 Dai Mikurube <dmikurube (a] google.com> 1886 1887 Reviewed by Kent Tamura. 1888 1889 Reject named colors, accept only #rrggbb in <input type=color /> 1890 https://bugs.webkit.org/show_bug.cgi?id=50308 1891 1892 * html/ColorInputType.cpp: Modified to accept only simple colors like #xxxxxx. 1893 (WebCore::isValidColorString): 1894 1895 2010-12-02 Vincent Scheib <scheib (a] chromium.org> 1896 1897 Reviewed by Darin Fisher. 1898 1899 [chromium] histograms api updated in WebKitClient and added to ChromiumBridge 1900 https://bugs.webkit.org/show_bug.cgi?id=50285 1901 1902 Test by loading "about:histograms" after navigating to accelerated pages. 1903 1904 * platform/chromium/ChromiumBridge.h: api update. 1905 1906 2010-12-02 Andras Becsi <abecsi (a] webkit.org> 1907 1908 Unreviewed build fix. 1909 1910 [Qt][V8] Fix linking of generated sources. 1911 1912 No new tests needed. 1913 1914 * WebCore.pro: add missing V8ImageDataCustom.cpp. 1915 1916 2010-12-02 Nikolas Zimmermann <nzimmermann (a] rim.com> 1917 1918 Reviewed by Adam Roben. 1919 1920 Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedString/SVGAnimatedEnumeration 1921 https://bugs.webkit.org/show_bug.cgi?id=50383 1922 1923 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(STRING|ENUMERATION) / DEFINE_ANIMATED_(STRING|ENUMERATION). 1924 The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. 1925 1926 No functional changes, thus no new tests. 1927 1928 * svg/SVGAElement.cpp: 1929 * svg/SVGAElement.h: 1930 (WebCore::SVGAElement::isValid): 1931 (WebCore::SVGAElement::target): 1932 * svg/SVGAltGlyphElement.cpp: 1933 * svg/SVGAltGlyphElement.h: 1934 * svg/SVGAnimatedEnumeration.h: 1935 * svg/SVGAnimatedString.h: 1936 * svg/SVGClipPathElement.cpp: 1937 * svg/SVGClipPathElement.h: 1938 * svg/SVGComponentTransferFunctionElement.cpp: 1939 * svg/SVGComponentTransferFunctionElement.h: 1940 * svg/SVGCursorElement.cpp: 1941 * svg/SVGCursorElement.h: 1942 * svg/SVGFEBlendElement.cpp: 1943 * svg/SVGFEBlendElement.h: 1944 * svg/SVGFEColorMatrixElement.cpp: 1945 * svg/SVGFEColorMatrixElement.h: 1946 * svg/SVGFEComponentTransferElement.cpp: 1947 * svg/SVGFEComponentTransferElement.h: 1948 * svg/SVGFECompositeElement.cpp: 1949 * svg/SVGFECompositeElement.h: 1950 * svg/SVGFEConvolveMatrixElement.cpp: 1951 * svg/SVGFEConvolveMatrixElement.h: 1952 * svg/SVGFEDiffuseLightingElement.cpp: 1953 * svg/SVGFEDiffuseLightingElement.h: 1954 * svg/SVGFEDisplacementMapElement.cpp: 1955 * svg/SVGFEDisplacementMapElement.h: 1956 * svg/SVGFEGaussianBlurElement.cpp: 1957 * svg/SVGFEGaussianBlurElement.h: 1958 * svg/SVGFEImageElement.cpp: 1959 * svg/SVGFEImageElement.h: 1960 * svg/SVGFELightElement.cpp: 1961 * svg/SVGFEMergeNodeElement.cpp: 1962 * svg/SVGFEMergeNodeElement.h: 1963 * svg/SVGFEMorphologyElement.cpp: 1964 * svg/SVGFEMorphologyElement.h: 1965 * svg/SVGFEOffsetElement.cpp: 1966 * svg/SVGFEOffsetElement.h: 1967 * svg/SVGFESpecularLightingElement.cpp: 1968 * svg/SVGFESpecularLightingElement.h: 1969 * svg/SVGFETileElement.cpp: 1970 * svg/SVGFETileElement.h: 1971 * svg/SVGFETurbulenceElement.cpp: 1972 * svg/SVGFETurbulenceElement.h: 1973 * svg/SVGFilterElement.cpp: 1974 * svg/SVGFilterElement.h: 1975 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 1976 * svg/SVGFilterPrimitiveStandardAttributes.h: 1977 * svg/SVGForeignObjectElement.cpp: 1978 * svg/SVGForeignObjectElement.h: 1979 * svg/SVGGradientElement.cpp: 1980 * svg/SVGGradientElement.h: 1981 * svg/SVGImageElement.cpp: 1982 * svg/SVGImageElement.h: 1983 * svg/SVGMPathElement.cpp: 1984 * svg/SVGMPathElement.h: 1985 * svg/SVGMarkerElement.cpp: 1986 * svg/SVGMarkerElement.h: 1987 * svg/SVGMaskElement.cpp: 1988 * svg/SVGMaskElement.h: 1989 * svg/SVGPatternElement.cpp: 1990 * svg/SVGPatternElement.h: 1991 * svg/SVGScriptElement.cpp: 1992 * svg/SVGScriptElement.h: 1993 * svg/SVGStyledElement.cpp: 1994 * svg/SVGStyledElement.h: 1995 (WebCore::SVGStyledElement::hasRelativeLengths): 1996 (WebCore::SVGStyledElement::supportsMarkers): 1997 (WebCore::SVGStyledElement::style): 1998 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): 1999 (WebCore::SVGStyledElement::selfHasRelativeLengths): 2000 (WebCore::SVGStyledElement::isStyled): 2001 * svg/SVGTRefElement.cpp: 2002 * svg/SVGTRefElement.h: 2003 * svg/SVGTextContentElement.cpp: 2004 * svg/SVGTextContentElement.h: 2005 * svg/SVGTextPathElement.cpp: 2006 * svg/SVGTextPathElement.h: 2007 * svg/SVGUseElement.cpp: 2008 * svg/SVGUseElement.h: 2009 2010 2010-12-02 Patrick Gansterer <paroga (a] webkit.org> 2011 2012 Reviewed by Andreas Kling. 2013 2014 [WX] Remove "current path" of GraphicsContext 2015 https://bugs.webkit.org/show_bug.cgi?id=50286 2016 2017 * platform/graphics/GraphicsContext.h: 2018 * platform/graphics/wx/GraphicsContextWx.cpp: 2019 (WebCore::GraphicsContext::GraphicsContext): 2020 (WebCore::GraphicsContext::fillPath): 2021 (WebCore::GraphicsContext::strokePath): 2022 2023 2010-10-26 Martin Robinson <mrobinson (a] igalia.com> 2024 2025 Reviewed by Xan Lopez. 2026 2027 [GTK] Text input controls do not react properly to CSS styling 2028 https://bugs.webkit.org/show_bug.cgi?id=40855 2029 2030 Improve text input control rendering. Instead of using the GTK+ border 2031 attributes of the control modify the padding, they modify the border. 2032 Make this same choice for search inputs and text area inputs. 2033 2034 * platform/gtk/RenderThemeGtk.cpp: 2035 (WebCore::setTextInputBorders): Added this helper which sets text input control 2036 borders based on GTK+ theme settings. 2037 (WebCore::RenderThemeGtk::adjustTextFieldStyle): Use the setTextInputBorders helper. 2038 (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto. 2039 (WebCore::RenderThemeGtk::adjustSearchFieldStyle): Ditto. 2040 * platform/gtk/RenderThemeGtk.h: 2041 2042 2010-12-02 Andreas Kling <kling (a] webkit.org> 2043 2044 Reviewed by Kenneth Rohde Christiansen. 2045 2046 [Qt] GraphicsContext::strokeRect() taints the context's lineWidth 2047 https://bugs.webkit.org/show_bug.cgi?id=50269 2048 2049 Test: fast/canvas/canvas-lineWidth-intact-after-strokeRect.html 2050 2051 * platform/graphics/qt/GraphicsContextQt.cpp: 2052 (WebCore::GraphicsContext::strokeRect): Restore the context's 2053 original stroke thickness after painting. 2054 2055 2010-12-02 Renata Hodovan <reni (a] webkit.org> 2056 2057 Reviewed by Andreas Kling. 2058 2059 [Qt] GraphicsContext::clip(path) should clip using winding fill 2060 https://bugs.webkit.org/show_bug.cgi?id=49912 2061 2062 GraphicsContext::clip(path) now uses winding fill and this function is called by 2063 GraphicsContext::canvasClip(path). 2064 2065 No new test is needed. 2066 2067 * platform/graphics/qt/GraphicsContextQt.cpp: 2068 (WebCore::GraphicsContext::clip): 2069 (WebCore::GraphicsContext::canvasClip): 2070 2071 2010-12-01 Alexander Pavlov <apavlov (a] chromium.org> 2072 2073 Reviewed by Yury Semikhatsky. 2074 2075 Web Inspector: Remove obsolete CSS backend API from InspectorDOMAgent 2076 https://bugs.webkit.org/show_bug.cgi?id=50318 2077 2078 * CMakeLists.txt: 2079 * GNUmakefile.am: 2080 * WebCore.gypi: 2081 * WebCore.order: 2082 * WebCore.pro: 2083 * WebCore.vcproj/WebCore.vcproj: 2084 * WebCore.xcodeproj/project.pbxproj: 2085 * inspector/Inspector.idl: 2086 * inspector/InspectorCSSAgent.h: 2087 * inspector/InspectorCSSStore.cpp: Removed. 2088 * inspector/InspectorCSSStore.h: Removed. 2089 * inspector/InspectorController.cpp: 2090 (WebCore::InspectorController::InspectorController): 2091 (WebCore::InspectorController::connectFrontend): 2092 (WebCore::InspectorController::didCommitLoad): 2093 * inspector/InspectorController.h: 2094 * inspector/InspectorDOMAgent.cpp: 2095 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 2096 (WebCore::InspectorDOMAgent::unbind): 2097 * inspector/InspectorDOMAgent.h: 2098 (WebCore::InspectorDOMAgent::create): 2099 2100 2010-12-02 Csaba Osztrogonc <ossy (a] webkit.org> 2101 2102 Unreviewed trivial buildfix after r73117. 2103 2104 * page/FrameView.cpp: 2105 (WebCore::FrameView::calculateScrollbarModesForLayout): 2106 2107 2010-12-02 Yuqiang Xian <yuqiang.xian (a] intel.com> 2108 2109 Reviewed by Pavel Feldman. 2110 2111 [V8] Speed up data property access for ImageData. 2112 https://bugs.webkit.org/show_bug.cgi?id=49999 2113 2114 We create a normal V8 object which has a PixelArray as the backing storage, 2115 and set the "data" property of the ImageData object to it. 2116 This way "data" becomes a pure JS property and we don't need to call through 2117 the C++ bindings for ImageData "data" access. 2118 This eliminates big overhead in switching between JavaScript and native 2119 contexts and performing object bindings. 2120 2121 No new tests. Relying on existing Canvas tests. 2122 2123 * WebCore.gypi: 2124 * bindings/scripts/CodeGeneratorV8.pm: 2125 * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: 2126 (WebCore::toV8): 2127 * bindings/v8/custom/V8ImageDataCustom.cpp: Added. 2128 (WebCore::toV8): 2129 * html/ImageData.idl: 2130 * html/canvas/CanvasPixelArray.idl: 2131 2132 2010-12-02 Kent Tamura <tkent (a] chromium.org> 2133 2134 Unreviewed. Run sort-Xcode-project-file. 2135 2136 * WebCore.xcodeproj/project.pbxproj: 2137 2138 2010-12-02 Mike Lawther <mikelawther (a] chromium.org> 2139 2140 Reviewed by David Hyatt. 2141 2142 Clean up of iframe scrollbar mode code 2143 https://bugs.webkit.org/show_bug.cgi?id=47797 2144 2145 Pull setChildNeedsLayout/setNeedsLayout calls out of scrollbar mode 2146 calculation method and put back into main layout function. 2147 Early exit from the scrollbar calc when scrollbars are turned off. 2148 2149 * page/FrameView.cpp: 2150 (WebCore::FrameView::calculateScrollbarModesForLayout): 2151 (WebCore::FrameView::layout): 2152 2153 2010-12-02 Hironori Bono <hbono (a] chromium.org> 2154 2155 Reviewed by Darin Fisher. 2156 2157 [Chromium] Fix possible crashes in FontFallbackFont::determinePitch(). 2158 https://bugs.webkit.org/show_bug.cgi?id=25770 2159 2160 When all of "Arial", "Courier New", and "Times New Roman" fonts are corrupted, 2161 FontCache::getLastResortFallbackFont() returns 0 and it causes this crash. To 2162 avoid this crash, this change falls back to system fonts (Windows ensures they 2163 are sane) as Win Safari does. Unfortunately, I don't have any ideas how I can 2164 write a layout test for this issue because this crash happens on a PC some of 2165 its system fonts are corrupted. 2166 2167 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 2168 (WebCore::fontDataFromDescriptionAndLogFont): 2169 (WebCore::FontCache::getLastResortFallbackFont): 2170 2171 2010-12-02 Dimitri Glazkov <dglazkov (a] chromium.org> 2172 2173 Reviewed by Kent Tamura. 2174 2175 Provide means to store shadow DOM nodes on Element 2176 https://bugs.webkit.org/show_bug.cgi?id=48697 2177 2178 Adds shadow DOM awareness to the standard Node attach/detach, 2179 document and tree insertion and removal cycle. 2180 2181 No new tests, because the code is not yet used. 2182 2183 * dom/Element.cpp: 2184 (WebCore::Element::insertedIntoDocument): Added logic to cascade down to shadow DOM, if present. 2185 (WebCore::Element::removedFromDocument): Ditto. 2186 (WebCore::Element::insertedIntoTree): Ditto. 2187 (WebCore::Element::removedFromTree): Ditto. 2188 (WebCore::Element::attach): Ditto. 2189 (WebCore::Element::detach): Ditto. 2190 (WebCore::Element::recalcStyle): 2191 (WebCore::Element::shadowRoot): Added. 2192 (WebCore::Element::setShadowRoot): Added. 2193 (WebCore::Element::clearShadowRoot): Added. 2194 * dom/Element.h: Added decls. 2195 * dom/ElementRareData.h: Added a member to hold a RefPtr to the shadow DOM root for the element. 2196 2197 2010-12-02 Adam Barth <abarth (a] webkit.org> 2198 2199 Reviewed by Eric Seidel. 2200 2201 Gray-scale JPEG images with a color profile are stretched horizonally 2202 https://bugs.webkit.org/show_bug.cgi?id=49950 2203 2204 Turns out gray-scale JPEGs with color profiles have the same issue as 2205 PNGs. As with PNGs, we suppress now suppress the color profile for 2206 gray-scale JPEGs. Most importantly, this patch adds a test. 2207 2208 Test: fast/images/gray-scale-jpeg-with-color-profile.html 2209 2210 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 2211 (WebCore::JPEGImageReader::decode): 2212 2213 2010-12-01 Geoffrey Garen <ggaren (a] apple.com> 2214 2215 Build fix: Added a forwarding header. 2216 2217 * ForwardingHeaders/wtf/OSAllocator.h: Added. 2218 2219 2010-12-01 Jia Pu <jpu (a] apple.com> 2220 2221 Reviewed by Darin Adler. 2222 2223 Support multiple correction candidates panel for misspelled word on Mac OS X. 2224 https://bugs.webkit.org/show_bug.cgi?id=50137 2225 <rdar://problem/8568059> 2226 2227 Test: platform/mac/editing/spelling/delete-autocorrected-word-1.html 2228 Manual test: WebCore/manual-tests/autocorrection/dismiss-multiple-guesses.html 2229 WebCore/manual-tests/autocorrection/select-from-multiple-guesses.html 2230 2231 This patch is for supporting multiple correction suggestion panel on Mac OS X. 2232 The behavior and implementation is similar to that of reversion candiate panel. 2233 2234 * WebCore.exp.in: Added and removed symbols. 2235 2236 * editing/CorrectionPanelInfo.h: Added new correction panel type, PanelTypeSpellingSuggestions. 2237 2238 * editing/Editor.cpp: 2239 (WebCore::markerTypesForAutocorrection): Convenient function for getting marker types to 2240 be added to autocorrected word. 2241 (WebCore::boundingBoxForRange): Convenient function for calculating the bounding box of a range. 2242 (WebCore::markerTypesForReplacement): Convenient function for getting marker types to 2243 be added to word that has been replaced by various correction panel. 2244 (WebCore::Editor::respondToChangedSelection): Added code to trigger timer for multiple 2245 suggestion panel. 2246 (WebCore::Editor::guessesForMisspelledSelection): Adopted new signature of EditorClient::getGuessesForWord(). 2247 (WebCore::Editor::markMisspellingsAfterTypingToWord): Adopted new signature of applyCorrectionPanelInfo(). 2248 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto. 2249 (WebCore::Editor::correctionPanelTimerFired): Added code to handle new multiple suggestion panel. 2250 (WebCore::Editor::handleCorrectionPanelResult): Replaced handleRejectedCorrection(), since 2251 with new AppKit correction panel API, not only rejection, but also confirmation can be 2252 handled in callback. 2253 (WebCore::Editor::stopCorrectionPanelTimer): Moved the code that clears correction panel info 2254 from dismissCorrectionPanel() to this function to fix a bug that would occur when deleting 2255 autocorrected word. 2256 (WebCore::Editor::dismissCorrectionPanel): Ditto. 2257 (WebCore::Editor::applyCorrectionPanelInfo): Added code to handle new multiple suggestion panel. 2258 2259 * editing/Editor.h: Replaced handleRejectedCorrection() with handleCorrectionPanelResult(). 2260 Changed the signature of applyCorrectionPanelInfo() to hanlde new correction panel type. 2261 2262 * editing/TextCheckingHelper.cpp: 2263 (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Adopted new EditorClient::getGuessesForWord(). 2264 2265 * editing/TextCheckingHelper.h: Made paragraphRange() public. 2266 2267 * loader/EmptyClients.h: 2268 (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature defined in base class. 2269 (WebCore::EmptyEditorClient::getGuessesForWord): Ditto. 2270 2271 * manual-tests/autocorrection/dismiss-multiple-guesses.html: Added. 2272 2273 * manual-tests/autocorrection/select-from-multiple-guesses.html: Added. 2274 2275 * page/EditorClient.h: Changed showCorrectionPanel() to allow passing multiple correction 2276 candidates. Changed getGuessesForWord() to allow passing in contextual text for better 2277 correction suggestions (for those spellcheckers that utilizes such contextual information). 2278 2279 2010-12-01 David Hyatt <hyatt (a] apple.com> 2280 2281 Reviewed by James Robinson. 2282 2283 https://bugs.webkit.org/show_bug.cgi?id=50360 2284 2285 Make sure to include the origin adjustment code that I added on Mac to keep truncation-rtl.html passing. 2286 2287 * platform/ScrollView.cpp: 2288 (WebCore::ScrollView::updateScrollbars): 2289 2290 2010-12-01 David Hyatt <hyatt (a] apple.com> 2291 2292 Reviewed by Dan Bernstein. 2293 2294 https://bugs.webkit.org/show_bug.cgi?id=46645 2295 2296 Generalize overflow section scrollOriginX code to be a point and to work in both horizontal 2297 and vertical modes. 2298 2299 Not testable yet, since the rightmost/leftmost/topmost/lowestPosition functions are returning 2300 horrendously wrong values in the vertical text case for overflow:auto objects. 2301 2302 * rendering/RenderLayer.cpp: 2303 (WebCore::RenderLayer::RenderLayer): 2304 (WebCore::RenderLayer::scrollToOffset): 2305 (WebCore::RenderLayer::computeScrollDimensions): 2306 (WebCore::RenderLayer::updateOverflowStatus): 2307 * rendering/RenderLayer.h: 2308 (WebCore::RenderLayer::scrolledContentOffset): 2309 (WebCore::RenderLayer::scrollXOffset): 2310 (WebCore::RenderLayer::scrollYOffset): 2311 (WebCore::RenderLayer::scrollToXOffset): 2312 (WebCore::RenderLayer::scrollToYOffset): 2313 2314 2010-12-01 Steve Falkenburg <sfalken (a] apple.com> 2315 2316 Reviewed by Adam Roben. 2317 2318 WinCairo build should not use link-time code generation (LTCG) 2319 https://bugs.webkit.org/show_bug.cgi?id=50353 2320 2321 * WebCore.vcproj/QTMovieWin.vcproj: 2322 * WebCore.vcproj/WebCore.vcproj: 2323 2324 2010-12-01 David Hyatt <hyatt (a] apple.com> 2325 2326 Reviewed by Darin Adler. 2327 2328 https://bugs.webkit.org/show_bug.cgi?id=46645 2329 2330 Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept 2331 recently added for horizontal RTL documents and applies it to writing modes as well. Now the 2332 scrollOrigin is a point, since you can start off locked to the bottom or locked to the right. 2333 2334 This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and 2335 makes them behave the same as the cross-platform code (allowing for cross-platform results to be 2336 landed). 2337 2338 * page/FrameView.cpp: 2339 (WebCore::FrameView::adjustViewSize): 2340 * page/mac/WebCoreFrameView.h: 2341 * platform/ScrollView.cpp: 2342 (WebCore::ScrollView::ScrollView): 2343 (WebCore::ScrollView::maximumScrollPosition): 2344 (WebCore::ScrollView::minimumScrollPosition): 2345 (WebCore::ScrollView::valueChanged): 2346 (WebCore::ScrollView::updateScrollbars): 2347 (WebCore::ScrollView::wheelEvent): 2348 * platform/ScrollView.h: 2349 (WebCore::ScrollView::scrollOrigin): 2350 * platform/mac/ScrollViewMac.mm: 2351 (WebCore::ScrollView::platformSetScrollPosition): 2352 (WebCore::ScrollView::platformSetScrollOrigin): 2353 * rendering/RenderBox.cpp: 2354 (WebCore::RenderBox::paintRootBoxDecorations): 2355 * rendering/RenderView.cpp: 2356 (WebCore::RenderView::layout): 2357 (WebCore::RenderView::docTop): 2358 (WebCore::RenderView::docHeight): 2359 (WebCore::RenderView::docLeft): 2360 (WebCore::RenderView::docWidth): 2361 * rendering/RenderView.h: 2362 2363 2010-11-30 Steve Block <steveblock (a] google.com> 2364 2365 Reviewed by Jeremy Orlow. 2366 2367 Upstream recent changes to WebCore/platform/network/android 2368 https://bugs.webkit.org/show_bug.cgi?id=50224 2369 2370 Android implementation changes only, no new tests. 2371 2372 * platform/network/NetworkingContext.h: 2373 * platform/network/android/CookieJarAndroid.cpp: 2374 (WebCore::setCookies): 2375 (WebCore::cookies): 2376 (WebCore::cookieRequestHeaderFieldValue): 2377 (WebCore::cookiesEnabled): 2378 * platform/network/android/ProxyServerAndroid.cpp: Added. 2379 (WebCore::proxyServersForURL): 2380 * platform/network/android/ResourceHandleAndroid.cpp: 2381 (WebCore::ResourceHandle::start): 2382 (WebCore::ResourceHandle::loadResourceSynchronously): 2383 * platform/network/android/ResourceRequestAndroid.cpp: 2384 (WebCore::initializeMaximumHTTPConnectionCountPerHost): 2385 2386 2010-12-01 Steve Falkenburg <sfalken (a] apple.com> 2387 2388 Reviewed by Adam Roben. 2389 2390 vcproj changes can't be applied cleanly by the Windows EWS bot 2391 https://bugs.webkit.org/show_bug.cgi?id=50328 2392 2393 * WebCore.vcproj/QTMovieWin.vcproj: Modified property svn:eol-style. 2394 * WebCore.vcproj/QTMovieWinCommon.vsprops: Added property svn:eol-style. 2395 * WebCore.vcproj/WebCore.sln: Modified property svn:eol-style. 2396 * WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style. 2397 * WebCore.vcproj/WebCore.vcproj: Modified property svn:eol-style. 2398 * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added property svn:eol-style. 2399 * WebCore.vcproj/WebCoreCG.vsprops: Added property svn:eol-style. 2400 * WebCore.vcproj/WebCoreCURL.vsprops: Added property svn:eol-style. 2401 * WebCore.vcproj/WebCoreCairo.vsprops: Added property svn:eol-style. 2402 * WebCore.vcproj/WebCoreCommon.vsprops: Added property svn:eol-style. 2403 * WebCore.vcproj/WebCoreGenerated.vcproj: Modified property svn:eol-style. 2404 * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added property svn:eol-style. 2405 * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added property svn:eol-style. 2406 * WebCore.vcproj/WebCoreMediaQT.vsprops: Added property svn:eol-style. 2407 * WebCore.vcproj/WebCorePthreads.vsprops: Added property svn:eol-style. 2408 * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added property svn:eol-style. 2409 2410 2010-11-30 Vangelis Kokkevis <vangelis (a] chromium.org> 2411 2412 Reviewed by Darin Fisher. 2413 2414 Adds accelerated compositing trigger flags to Settings to allow 2415 ports to set them via command line flags, etc. 2416 https://bugs.webkit.org/show_bug.cgi?id=50301 2417 2418 * page/Settings.cpp: 2419 (WebCore::Settings::Settings): 2420 (WebCore::Settings::setAcceleratedCompositingFor3DTransformsEnabled): 2421 (WebCore::Settings::setAcceleratedCompositingForVideoEnabled): 2422 (WebCore::Settings::setAcceleratedCompositingForPluginsEnabled): 2423 (WebCore::Settings::setAcceleratedCompositingForCanvasEnabled): 2424 (WebCore::Settings::setAcceleratedCompositingForAnimationEnabled): 2425 * page/Settings.h: 2426 (WebCore::Settings::acceleratedCompositingFor3DTransformsEnabled): 2427 (WebCore::Settings::acceleratedCompositingForVideoEnabled): 2428 (WebCore::Settings::acceleratedCompositingForPluginsEnabled): 2429 (WebCore::Settings::acceleratedCompositingForCanvasEnabled): 2430 (WebCore::Settings::acceleratedCompositingForAnimationEnabled): 2431 2432 2010-12-01 Darin Adler <darin (a] apple.com> 2433 2434 Fixed warning seen on buildbot. 2435 2436 * platform/graphics/chromium/ContentLayerChromium.cpp: 2437 (WebCore::ContentLayerChromium::SharedValues::SharedValues): Added #if. 2438 2439 2010-12-01 Ryosuke Niwa <rniwa (a] webkit.org> 2440 2441 Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci. 2442 2443 chrome.dll!WebCore::RangeBoundaryPoint::toPosition ReadAV@NULL (cf0d0f28bc56f2591cc74f71b46036ea) 2444 https://bugs.webkit.org/show_bug.cgi?id=47808 2445 2446 The crash was caused by moveParagraphWithClones' not copying the entire paragraph 2447 when called by doApplyForSingleParagraph, which was induced by a bug in 2448 cloneParagraphUnderNewElement which ended the cloning process early when the start node 2449 and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement 2450 by calling traverseNextSibling(outerNode) instead of nextSibling(). 2451 2452 Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null. 2453 2454 Tests: editing/execCommand/switch-multiple-list-items-crash.html 2455 editing/execCommand/switch-multiple-list-items.html 2456 2457 * editing/CompositeEditCommand.cpp: 2458 (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): 2459 * editing/InsertListCommand.cpp: 2460 (WebCore::InsertListCommand::doApply): 2461 2462 2010-12-01 Kevin Ollivier <kevino (a] theolliviers.com> 2463 2464 [wx] Build fixes after recent trunk changes. 2465 2466 * platform/graphics/wx/ImageBufferWx.cpp: 2467 (WebCore::ImageBuffer::ImageBuffer): 2468 * platform/wx/LocalizedStringsWx.cpp: 2469 (WebCore::platformDefaultLanguage): 2470 2471 2010-12-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 2472 2473 Unreviewed, rolling out r73047. 2474 http://trac.webkit.org/changeset/73047 2475 https://bugs.webkit.org/show_bug.cgi?id=50339 2476 2477 missing bug number (Requested by rniwa on #webkit). 2478 2479 * editing/CompositeEditCommand.cpp: 2480 (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): 2481 * editing/InsertListCommand.cpp: 2482 (WebCore::InsertListCommand::doApply): 2483 2484 2010-12-01 Ryosuke Niwa <rniwa (a] webkit.org> 2485 2486 Reviewed by Darin Adler, Tony Chang, and unofficially by Enrica Casucci. 2487 2488 The crash was caused by moveParagraphWithClones' not copying the entire paragraph 2489 when called by doApplyForSingleParagraph, which was induced by a bug in 2490 cloneParagraphUnderNewElement which ended the cloning process early when the start node 2491 and the end node didn't share the same parent node. Fixed the bug in cloneParagraphUnderNewElement 2492 by calling traverseNextSibling(outerNode) instead of nextSibling(). 2493 2494 Also added an early exit to InsertListCommand::doApply when lastSelectionRange is null. 2495 2496 Tests: editing/execCommand/switch-multiple-list-items-crash.html 2497 editing/execCommand/switch-multiple-list-items.html 2498 2499 * editing/CompositeEditCommand.cpp: 2500 (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): 2501 * editing/InsertListCommand.cpp: 2502 (WebCore::InsertListCommand::doApply): 2503 2504 2010-12-01 Grace Kloba <klobag (a] chromium.org> 2505 2506 Reviewed by Kenneth Russell. 2507 2508 [chromium] ContentLayerChromium shader should honor the platform Sk_x_SHIFT value instead of assuming BGRA color 2509 https://bugs.webkit.org/show_bug.cgi?id=50189 2510 2511 * platform/graphics/chromium/ContentLayerChromium.cpp: 2512 (WebCore::ContentLayerChromium::SharedValues::SharedValues):Use SK_B32_SHIFT to decide whether to use RGBA or BGRA shader for Skia port. 2513 2514 2010-12-01 Nico Weber <thakis (a] chromium.org> 2515 2516 Reviewed by Dimitri Glazkov. 2517 2518 Fix clang warnings caused by -Wlogical-op-parentheses 2519 https://bugs.webkit.org/show_bug.cgi?id=50324 2520 2521 * platform/graphics/mac/ComplexTextController.cpp: 2522 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 2523 2524 2010-12-01 Martin Robinson <mrobinson (a] igalia.com> 2525 2526 Build fix for GTK+. 2527 2528 * platform/gtk/PopupMenuGtk.cpp: 2529 (WebCore::PopupMenuGtk::typeAheadFind): Uncomment mistakenly commented line. 2530 2531 2010-12-01 Apelete Seketeli <apelete (a] seketeli.org> and Martin Robinson <mrobinson (a] igalia.com> 2532 2533 Reviewed by Xan Lopez. 2534 2535 [Gtk] Open menulists should support typeahead find 2536 https://bugs.webkit.org/show_bug.cgi?id=27443 2537 2538 Added typeahead find support for open GTK+ menulists. 2539 2540 Test: platform/gtk/fast/forms/menulist-typeahead-find.html 2541 2542 * platform/gtk/PopupMenuGtk.cpp: 2543 (WebCore::PopupMenuGtk::PopupMenuGtk): Initialize new members. 2544 (WebCore::PopupMenuGtk::show): Track currently selected menu item 2545 via a signal handler. 2546 (WebCore::PopupMenuGtk::typeAheadFind): Added. 2547 (WebCore::PopupMenuGtk::menuUnmapped): Reset typeahead find state 2548 when menu is unmapped. 2549 (WebCore::PopupMenuGtk::resetTypeAheadFindState): Added. 2550 (WebCore::PopupMenuGtk::selectItemCallback): Added. 2551 (WebCore::PopupMenuGtk::keyPressEventCallback): Added. 2552 * platform/gtk/PopupMenuGtk.h: Added new members to track typeahead 2553 find state. 2554 2555 2010-12-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 2556 2557 Reviewed by Xan Lopez. 2558 2559 Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGAnimatedNumber 2560 https://bugs.webkit.org/show_bug.cgi?id=50323 2561 2562 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_NUMBER / DEFINE_ANIMATED_NUMBER. 2563 The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. 2564 2565 No functional changes, thus no new tests. 2566 2567 * svg/SVGAnimatedNumber.h: 2568 * svg/SVGComponentTransferFunctionElement.cpp: 2569 * svg/SVGComponentTransferFunctionElement.h: 2570 * svg/SVGFECompositeElement.cpp: 2571 * svg/SVGFECompositeElement.h: 2572 * svg/SVGFEConvolveMatrixElement.cpp: 2573 * svg/SVGFEConvolveMatrixElement.h: 2574 * svg/SVGFEDiffuseLightingElement.cpp: 2575 * svg/SVGFEDiffuseLightingElement.h: 2576 * svg/SVGFEDisplacementMapElement.cpp: 2577 * svg/SVGFEDisplacementMapElement.h: 2578 * svg/SVGFEGaussianBlurElement.cpp: 2579 * svg/SVGFEGaussianBlurElement.h: 2580 * svg/SVGFELightElement.cpp: 2581 * svg/SVGFELightElement.h: 2582 * svg/SVGFEMorphologyElement.cpp: 2583 * svg/SVGFEMorphologyElement.h: 2584 * svg/SVGFEOffsetElement.cpp: 2585 * svg/SVGFEOffsetElement.h: 2586 * svg/SVGFESpecularLightingElement.cpp: 2587 * svg/SVGFESpecularLightingElement.h: 2588 * svg/SVGFETurbulenceElement.cpp: 2589 * svg/SVGFETurbulenceElement.h: 2590 * svg/SVGPathElement.cpp: 2591 * svg/SVGPathElement.h: 2592 * svg/SVGStopElement.cpp: 2593 * svg/SVGStopElement.h: 2594 (WebCore::SVGStopElement::isGradientStop): 2595 2596 2010-12-01 Martin Robinson <mrobinson (a] igalia.com> 2597 2598 Reviewed by Xan Lopez. 2599 2600 Sliders are not transformed after r50188 2601 https://bugs.webkit.org/show_bug.cgi?id=50317 2602 2603 Need to call updateLayerTransform during slider layout, as sliders 2604 may be transformed. 2605 2606 No new tests. This patch should make fast/forms/slider-transformed.html 2607 pass on the GTK+ bots. 2608 2609 * rendering/RenderSlider.cpp: 2610 (WebCore::RenderSlider::layout): Call updateLayerTransform here. 2611 2612 2010-11-30 Pavel Feldman <pfeldman (a] chromium.org> 2613 2614 Reviewed by Yury Semikhatsky. 2615 2616 Web Inspector: do not make helpScreen.css lazily loaded. 2617 https://bugs.webkit.org/show_bug.cgi?id=50304 2618 2619 * inspector/front-end/HelpScreen.js: 2620 (WebInspector.HelpScreen): 2621 (WebInspector.HelpScreen.prototype._onBlur): 2622 * inspector/front-end/inspector.html: 2623 2624 2010-12-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 2625 2626 Reviewed by Xan Lopez. 2627 2628 Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLengthList/SVGNumberList/SVGTransformList 2629 https://bugs.webkit.org/show_bug.cgi?id=50322 2630 2631 Continuing the work on bug 42025: Introduce DECLARE_ANIMATED_(LENGTH|NUMBER|TRANSFORM)_LIST / DEFINE_ANIMATED_(LENGTH|NUMBER|TRANSFORM). 2632 The animated property declaration lives in the header, the definition in the cpp file, to avoid the dependency on SVGNames.h in all headers. 2633 2634 No functional changes, thus no new tests. 2635 2636 * svg/SVGAnimatedLengthList.h: 2637 * svg/SVGAnimatedNumberList.h: 2638 * svg/SVGAnimatedTransformList.h: 2639 * svg/SVGComponentTransferFunctionElement.cpp: 2640 * svg/SVGComponentTransferFunctionElement.h: 2641 * svg/SVGFEColorMatrixElement.cpp: 2642 * svg/SVGFEColorMatrixElement.h: 2643 * svg/SVGFEConvolveMatrixElement.cpp: 2644 * svg/SVGFEConvolveMatrixElement.h: 2645 * svg/SVGGradientElement.cpp: 2646 * svg/SVGGradientElement.h: 2647 (WebCore::SVGGradientElement::needsPendingResourceHandling): 2648 * svg/SVGPatternElement.cpp: 2649 * svg/SVGPatternElement.h: 2650 * svg/SVGPolygonElement.cpp: 2651 * svg/SVGPolylineElement.cpp: 2652 * svg/SVGStyledTransformableElement.cpp: 2653 * svg/SVGStyledTransformableElement.h: 2654 * svg/SVGTextElement.cpp: 2655 (WebCore::SVGTextElement::SVGTextElement): 2656 * svg/SVGTextElement.h: 2657 (WebCore::SVGTextElement::localCoordinateSpaceTransform): 2658 * svg/SVGTextPositioningElement.cpp: 2659 * svg/SVGTextPositioningElement.h: 2660 * svg/properties/SVGAnimatedPropertyMacros.h: 2661 2662 2010-12-01 Alexander Pavlov <apavlov (a] chromium.org> 2663 2664 Reviewed by Yury Semikhatsky. 2665 2666 Web Inspector: name-only property appears in style declaration but not in the Styles pane 2667 https://bugs.webkit.org/show_bug.cgi?id=49663 2668 2669 Check that at least one property has been parsed from the user input. 2670 2671 * inspector/InspectorStyleSheet.cpp: 2672 (WebCore::InspectorStyle::setPropertyText): 2673 2674 2010-12-01 Andrey Kosyakov <caseq (a] chromium.org> 2675 2676 Reviewed by Pavel Feldman. 2677 2678 Web Inspector: disable cookies tab in network resource view by default, enable for chromium 2679 https://bugs.webkit.org/show_bug.cgi?id=50249 2680 2681 * inspector/front-end/NetworkItemView.js: 2682 (WebInspector.NetworkItemView): 2683 (WebInspector.NetworkItemView.prototype.resize): 2684 * inspector/front-end/Settings.js: 2685 2686 2010-12-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 2687 2688 Reviewed by Xan Lopez. 2689 2690 Split DECLARE_ANIMATED_PROPERTY* in DECLARE/DEFINE parts for SVGLength 2691 https://bugs.webkit.org/show_bug.cgi?id=50316 2692 2693 Introduce DECLARE_ANIMATED_LENGTH / DEFINE_ANIMATED_LENGTH, splitting up the original DECLARE_ANIMATED_PROPERTY_NEW macro 2694 in a part that goes in the .cpp file and another that remains in the header. This avoids having to include SVGNames.h 2695 in all SVG*Element files. 2696 2697 No functional changes, thus no new tests. 2698 2699 * svg/SVGAnimatedLength.h: 2700 * svg/SVGCircleElement.cpp: 2701 * svg/SVGCircleElement.h: 2702 (WebCore::SVGCircleElement::isValid): 2703 * svg/SVGCursorElement.cpp: 2704 * svg/SVGCursorElement.h: 2705 (WebCore::SVGCursorElement::isValid): 2706 * svg/SVGEllipseElement.cpp: 2707 * svg/SVGEllipseElement.h: 2708 (WebCore::SVGEllipseElement::isValid): 2709 * svg/SVGFilterElement.cpp: 2710 * svg/SVGFilterElement.h: 2711 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 2712 * svg/SVGFilterPrimitiveStandardAttributes.h: 2713 * svg/SVGForeignObjectElement.cpp: 2714 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement): 2715 * svg/SVGForeignObjectElement.h: 2716 (WebCore::SVGForeignObjectElement::isValid): 2717 * svg/SVGImageElement.cpp: 2718 * svg/SVGImageElement.h: 2719 (WebCore::SVGImageElement::isValid): 2720 * svg/SVGLineElement.cpp: 2721 * svg/SVGLineElement.h: 2722 (WebCore::SVGLineElement::isValid): 2723 (WebCore::SVGLineElement::supportsMarkers): 2724 * svg/SVGLinearGradientElement.cpp: 2725 * svg/SVGLinearGradientElement.h: 2726 * svg/SVGMarkerElement.cpp: 2727 (WebCore::SVGMarkerElement::SVGMarkerElement): 2728 * svg/SVGMarkerElement.h: 2729 * svg/SVGMaskElement.cpp: 2730 * svg/SVGMaskElement.h: 2731 (WebCore::SVGMaskElement::isValid): 2732 (WebCore::SVGMaskElement::needsPendingResourceHandling): 2733 * svg/SVGPatternElement.cpp: 2734 * svg/SVGPatternElement.h: 2735 (WebCore::SVGPatternElement::isValid): 2736 (WebCore::SVGPatternElement::needsPendingResourceHandling): 2737 * svg/SVGRadialGradientElement.cpp: 2738 * svg/SVGRadialGradientElement.h: 2739 * svg/SVGRectElement.cpp: 2740 * svg/SVGRectElement.h: 2741 (WebCore::SVGRectElement::isValid): 2742 * svg/SVGSVGElement.cpp: 2743 (WebCore::SVGSVGElement::SVGSVGElement): 2744 * svg/SVGSVGElement.h: 2745 (WebCore::SVGSVGElement::isValid): 2746 (WebCore::SVGSVGElement::setContainerSize): 2747 (WebCore::SVGSVGElement::containerSize): 2748 (WebCore::SVGSVGElement::hasSetContainerSize): 2749 (WebCore::SVGSVGElement::currentTranslate): 2750 (WebCore::SVGSVGElement::timeContainer): 2751 (WebCore::SVGSVGElement::isSVG): 2752 (WebCore::SVGSVGElement::rendererIsNeeded): 2753 * svg/SVGTextContentElement.cpp: 2754 * svg/SVGTextContentElement.h: 2755 (WebCore::SVGTextContentElement::isValid): 2756 (WebCore::SVGTextContentElement::isTextContent): 2757 * svg/SVGTextPathElement.cpp: 2758 * svg/SVGTextPathElement.h: 2759 * svg/SVGTextPositioningElement.h: 2760 * svg/SVGUseElement.cpp: 2761 * svg/SVGUseElement.h: 2762 (WebCore::SVGUseElement::isValid): 2763 (WebCore::SVGUseElement::setUpdatesBlocked): 2764 (WebCore::SVGUseElement::isPendingResource): 2765 * svg/properties/SVGAnimatedPropertyMacros.h: 2766 2767 2010-12-01 Anton D'Auria <adauria (a] apple.com> 2768 2769 Reviewed by Kevin Decker. 2770 2771 Deny access to local and session storage in private browsing mode. 2772 https://bugs.webkit.org/show_bug.cgi?id=49329 2773 2774 * storage/Storage.cpp: 2775 (WebCore::Storage::length): 2776 (WebCore::Storage::key): 2777 (WebCore::Storage::getItem): 2778 (WebCore::Storage::contains): 2779 2780 2010-12-01 Philippe Normand <pnormand (a] igalia.com> 2781 2782 Reviewed by Martin Robinson. 2783 2784 Volume control not correctly initialized 2785 https://bugs.webkit.org/show_bug.cgi?id=36299 2786 2787 Replaced the mute/volume Timers with g_timeouts which are (for 2788 now, at least) more reliable than Timers for one-shot-fire-now 2789 actions. 2790 2791 Test: media/video-volume.html 2792 2793 * platform/graphics/MediaPlayer.cpp: 2794 (WebCore::MediaPlayer::~MediaPlayer): Reset the raw pointers to 0 2795 when destructing the player. 2796 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 2797 (WebCore::mediaPlayerPrivateVolumeChangeTimeoutCallback): 2798 (WebCore::mediaPlayerPrivateMuteChangeTimeoutCallback): 2799 (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): 2800 (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange): 2801 (WebCore::MediaPlayerPrivateGStreamer::volumeChanged): 2802 (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfMute): 2803 (WebCore::MediaPlayerPrivateGStreamer::muteChanged): 2804 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Set 2805 playbin2 volume/mute base on MediaPlayer related values. 2806 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 2807 2808 2010-12-01 Patrick Gansterer <paroga (a] webkit.org> 2809 2810 Reviewed by Andreas Kling. 2811 2812 Cleanup main CMakeLists.txt after r72664, r72672 and r72667 2813 https://bugs.webkit.org/show_bug.cgi?id=50232 2814 2815 * CMakeLists.txt: Removed obsolete dependencies. 2816 2817 2010-12-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 2818 2819 Reviewed by Dirk Schulze. 2820 2821 Cleanup SVGPropertyTraits 2822 https://bugs.webkit.org/show_bug.cgi?id=50229 2823 2824 Move all template specializations for non-POD types (eg. SVGLength, SVGLengthList, etc.) from SVGPropertyTraits 2825 into the right SVG* classes, to avoid having to include a dozen SVG*.h files in SVGPropertyTraits.h, which is 2826 included by all DOM/JS/V8 binding files and SVGElement.h. 2827 2828 No new functionality, thus no new tests. 2829 2830 * GNUmakefile.am: 2831 * WebCore.gypi: 2832 * WebCore.pro: 2833 * WebCore.xcodeproj/project.pbxproj: 2834 * bindings/scripts/CodeGenerator.pm: 2835 * bindings/scripts/CodeGeneratorObjC.pm: 2836 * bindings/scripts/CodeGeneratorV8.pm: 2837 * svg/SVGAngle.h: 2838 * svg/SVGLength.h: 2839 * svg/SVGLengthList.h: 2840 * svg/SVGMarkerElement.h: 2841 * svg/SVGNumberList.h: 2842 * svg/SVGPatternElement.h: 2843 * svg/SVGPointList.h: 2844 * svg/SVGPreserveAspectRatio.h: 2845 * svg/SVGRect.h: Added. 2846 * svg/SVGSVGElement.h: 2847 * svg/SVGStringList.h: 2848 * svg/SVGSymbolElement.h: 2849 * svg/SVGTransformList.h: 2850 * svg/SVGViewElement.h: 2851 * svg/SVGViewSpec.h: 2852 * svg/properties/SVGListProperty.h: 2853 * svg/properties/SVGPropertyTraits.h: 2854 * svg/properties/SVGTransformListPropertyTearOff.h: 2855 2856 2010-11-30 Kent Tamura <tkent (a] chromium.org> 2857 2858 Reviewed by Darin Adler. 2859 2860 Refactor HTMLInputElement: Move a part of HTMLInputElement:: 2861 defaultEventHandler() to InputTypes 2862 https://bugs.webkit.org/show_bug.cgi?id=50097 2863 2864 Move all of keyboard-related event handling to InputType. 2865 2866 No new tests because this should not change any behavior. 2867 2868 * html/BaseButtonInputType.cpp: 2869 (WebCore::BaseButtonInputType::handleKeydownEvent): 2870 (WebCore::BaseButtonInputType::handleKeypressEvent): 2871 (WebCore::BaseButtonInputType::handleKeyupEvent): 2872 * html/BaseButtonInputType.h: 2873 * html/BaseCheckableInputType.cpp: 2874 (WebCore::BaseCheckableInputType::handleKeydownEvent): 2875 (WebCore::BaseCheckableInputType::handleKeypressEvent): 2876 * html/BaseCheckableInputType.h: 2877 * html/CheckboxInputType.cpp: 2878 (WebCore::CheckboxInputType::handleKeyupEvent): 2879 * html/CheckboxInputType.h: 2880 * html/HTMLInputElement.cpp: 2881 (WebCore::HTMLInputElement::defaultEventHandler): 2882 We remove !implicitSubmission check for callBaseClassEarly because 2883 implicitSubmission can not be true for keydown event and keypress 2884 event at this point. 2885 * html/InputType.cpp: 2886 (WebCore::InputType::shouldSubmitImplicitly): 2887 Returns true for a keypress event with "\r". Note that we don't overload 2888 this function for BUTTON, FILE, IMAGE, RESET, and SUBMIT because a 2889 keypress event with "\r" for these types returns from HTMLInputElement::defaultEventHandler() 2890 before implicit submission checking. 2891 (WebCore::InputType::handleKeypressEvent): 2892 (WebCore::InputType::handleKeyupEvent): 2893 * html/InputType.h: 2894 * html/RadioInputType.cpp: 2895 (WebCore::RadioInputType::handleKeydownEvent): 2896 (WebCore::RadioInputType::handleKeyupEvent): 2897 * html/RadioInputType.h: 2898 * html/TextFieldInputType.cpp: 2899 (WebCore::TextFieldInputType::shouldSubmitImplicitly): 2900 * html/TextFieldInputType.h: 2901 2902 2010-11-30 Patrick Gansterer <paroga (a] webkit.org> 2903 2904 Reviewed by Andreas Kling. 2905 2906 Move CSS generator logic into main CMakeLists.txt file 2907 https://bugs.webkit.org/show_bug.cgi?id=50230 2908 2909 * CMakeLists.txt: 2910 2911 2010-11-30 Ojan Vafai <ojan (a] chromium.org> 2912 2913 Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test 2914 https://bugs.webkit.org/show_bug.cgi?id=50288 2915 2916 2010-11-29 Adam Barth <abarth (a] webkit.org (:abarth) (r)> 2917 Reviewed by Darin Adler. 2918 Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs 2919 https://bugs.webkit.org/show_bug.cgi?id=50182 2920 A display-isolated URL can only be displayed (e.g., put in an iframe, 2921 hyperlinked to) by documents from that scheme. In a sense, this is a 2922 generalization of some of the protections we give file URLs, but 2923 instead of lumping them all together into one "local" bucket, this 2924 patch creates a separate bucket for each scheme. 2925 For a while, I tried using a separate bucket for each origin. That 2926 would have played nicely with what Blob URLs are trying to do, but some 2927 "chrome" URL pages rely on being able to display other chrome URL 2928 pages, even in different origins. For example, the New Tab Page shows 2929 thumbnails from the "thumbnail" host. 2930 This patch also removes a bunch of unused code. I've also propagated 2931 the "deprecated" status of deprecatedCanDisplay to 2932 deprecatedShouldTreatURLAsLocal because that method has no other 2933 callers and is really asking for uppercase/lowercase bugs. I dream of 2934 someday removing these functions. 2935 page/SecurityOrigin.cpp: 2936 (WebCore::SecurityOrigin::canDisplay): 2937 (WebCore::SecurityOrigin::deprecatedCanDisplay): 2938 platform/SchemeRegistry.cpp: 2939 (WebCore::displayIsolatedURLSchemes): 2940 (WebCore::SchemeRegistry::registerURLSchemeAsLocal): 2941 (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal): 2942 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): 2943 (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated): 2944 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated): 2945 platform/SchemeRegistry.h: 2946 2010-11-29 Adam Barth <abarth (a] webkit.org (:abarth) (r)> 2947 Reviewed by Darin Adler. 2948 Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs 2949 https://bugs.webkit.org/show_bug.cgi?id=50182 2950 This patch adds a Chromium API for registering schemes as 2951 display-isolated. In a subsequent patch, I'll change the "chrome" 2952 scheme in Chrome to be display isolated instead of local. That will 2953 prevent file URLs from linking to chrome URLs. 2954 public/WebSecurityPolicy.h: 2955 src/WebSecurityPolicy.cpp: 2956 (WebKit::WebSecurityPolicy::registerURLSchemeAsDisplayIsolated): 2957 2958 * page/SecurityOrigin.cpp: 2959 (WebCore::SecurityOrigin::canDisplay): 2960 (WebCore::SecurityOrigin::deprecatedCanDisplay): 2961 * platform/SchemeRegistry.cpp: 2962 (WebCore::SchemeRegistry::registerURLSchemeAsLocal): 2963 (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal): 2964 (WebCore::SchemeRegistry::localURLSchemes): 2965 (WebCore::SchemeRegistry::shouldTreatURLAsLocal): 2966 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): 2967 * platform/SchemeRegistry.h: 2968 2969 2010-11-30 Chris Fleizach <cfleizach (a] apple.com> 2970 2971 Reviewed by Beth Dakin. 2972 2973 WebKit duplicates AXValue and AXDescription on abbr 2974 https://bugs.webkit.org/show_bug.cgi?id=50260 2975 2976 stringValue() and accessibilityDescription() were returning the same value for static text with 2977 an aria-label. Static text elements should not have an accessibility description, they 2978 should only have a stringValue. 2979 2980 Test: platform/mac/accessibility/static-text-with-aria-label.html 2981 2982 * accessibility/AccessibilityRenderObject.cpp: 2983 (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription): 2984 (WebCore::AccessibilityRenderObject::accessibilityDescription): 2985 (WebCore::AccessibilityRenderObject::text): 2986 * accessibility/AccessibilityRenderObject.h: 2987 2988 2010-11-30 Ryosuke Niwa <rniwa (a] webkit.org> 2989 2990 Reviewed by Darin Adler. 2991 2992 [HTML5] Rename member variables of HTMLScriptElement 2993 https://bugs.webkit.org/show_bug.cgi?id=49705 2994 2995 Renamed m_wasCreatedByParser to m_wasInsertedByParser, m_requested to m_isExternalScript, 2996 m_isEvaluated to m_wasAlreadyStarted, and m_firedLoad to m_haveFiredLoad. 2997 2998 Also made ScriptElement's haveFiredLoadEvent and removed HTMLScriptElement's haveFiredLoadEvent. 2999 This effectively adds the same function to SVGScriptElement, which isn't currently used anywhere. 3000 3001 No new tests are added since this is a refactoring. 3002 3003 * dom/ScriptElement.cpp: 3004 (WebCore::ScriptElement::ScriptElement): 3005 (WebCore::ScriptElement::insertedIntoDocument): 3006 (WebCore::ScriptElement::childrenChanged): 3007 (WebCore::ScriptElement::finishParsingChildren): 3008 (WebCore::ScriptElement::requestScript): 3009 (WebCore::ScriptElement::evaluateScript): 3010 (WebCore::ScriptElement::executeScript): 3011 (WebCore::ScriptElement::ignoresLoadRequest): 3012 * dom/ScriptElement.h: 3013 (WebCore::ScriptElement::haveFiredLoadEvent): 3014 (WebCore::ScriptElement::setHaveFiredLoadEvent): 3015 (WebCore::ScriptElement::wasInsertedByParser): 3016 (WebCore::ScriptElement::wasAlreadyStarted): 3017 * html/HTMLScriptElement.cpp: 3018 (WebCore::HTMLScriptElement::HTMLScriptElement): 3019 (WebCore::HTMLScriptElement::create): 3020 (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): 3021 * html/HTMLScriptElement.h: 3022 * svg/SVGScriptElement.cpp: 3023 (WebCore::SVGScriptElement::SVGScriptElement): 3024 (WebCore::SVGScriptElement::create): 3025 (WebCore::SVGScriptElement::svgAttributeChanged): 3026 (WebCore::SVGScriptElement::insertedIntoDocument): 3027 (WebCore::SVGScriptElement::dispatchLoadEvent): 3028 (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): 3029 * svg/SVGScriptElement.h: 3030 3031 2010-11-30 Darin Adler <darin (a] apple.com> 3032 3033 Rolled back most of the FileReaderLoader changes to fix 32-bit builds. 3034 3035 * fileapi/FileReaderLoader.cpp: Changed types back to unsigned from unsigned long long 3036 * fileapi/FileReaderLoader.h: Ditto. 3037 3038 2010-11-30 Dan Bernstein <mitz (a] apple.com> 3039 3040 Reviewed by Darin Adler. 3041 3042 Text search should treat all matches as word-start matches when the target begins with a separator character 3043 https://bugs.webkit.org/show_bug.cgi?id=50302 3044 3045 * editing/TextIterator.cpp: 3046 (WebCore::SearchBuffer::SearchBuffer): Disable the AtWordStarts option if it was specified and 3047 the target string begins with one of the "separator" characters. 3048 3049 2010-11-30 Pavel Feldman <pfeldman (a] chromium.org> 3050 3051 Reviewed by Dave Hyatt. 3052 3053 Web Inspector: [CRASH] on "Revert to this revision" of style with import. 3054 https://bugs.webkit.org/show_bug.cgi?id=50256 3055 3056 Rolled back one line from http://trac.webkit.org/changeset/36904 as agreed with 3057 David. 3058 3059 * css/CSSImportRule.cpp: 3060 (WebCore::CSSImportRule::insertedIntoParent): 3061 3062 2010-11-30 Martin Robinson <mrobinson (a] igalia.com> 3063 3064 Reviewed by Xan Lopez. 3065 3066 [GTK] fillRect shadow has incorrect behavior when using ctx.scale(x,y) 3067 https://bugs.webkit.org/show_bug.cgi?id=50283 3068 3069 Adjust the mask rectangle for Cairo shadows, so that the origin 3070 is not affected by the scale of the transformation matrix. 3071 3072 * platform/graphics/ContextShadow.h: Make this Qt-only member global. 3073 * platform/graphics/cairo/ContextShadowCairo.cpp: 3074 (WebCore::ContextShadow::beginShadowLayer): Save the original layer area. 3075 (WebCore::ContextShadow::endShadowLayer): If the target context has a scale 3076 transform, make sure not to scale the blur distance when blitting the shadow. 3077 3078 2010-11-30 Darin Adler <darin (a] apple.com> 3079 3080 Reviewed by Alexey Proskuryakov. 3081 3082 Make ProgressEvent 64-bit instead of 32-bit 3083 https://bugs.webkit.org/show_bug.cgi?id=50289 3084 3085 * dom/ProgressEvent.cpp: 3086 (WebCore::ProgressEvent::ProgressEvent): Changed arguments to unsigned long long. 3087 (WebCore::ProgressEvent::initProgressEvent): Ditto. 3088 3089 * dom/ProgressEvent.h: Fixed formatting. Changed types to unsigned long long. 3090 Made isProgressEvent override private. 3091 3092 * dom/ProgressEvent.idl: Tweaked formatting and changed types to unsigned long long. 3093 3094 * fileapi/FileReader.cpp: Removed unneeded includes. 3095 Used static on const so we'd get an error if the same constant was in a header. 3096 (WebCore::FileReader::didReceiveData): Removed unneeded WTF prefix. 3097 (WebCore::FileReader::fireEvent): Got rid of local variables that would narrow 3098 bytes loaded and total bytes to 32-bit. 3099 3100 * fileapi/FileReaderLoader.cpp: 3101 (WebCore::FileReaderLoader::didReceiveResponse): Restructured code a bit and 3102 added comments. Also added handling for when ArrayBuffer::create returns 0. 3103 (WebCore::FileReaderLoader::didReceiveData): Fixed handling of case where more 3104 data arrives than is expected so it won't overrun the buffer. Also broke an 3105 assertion into two and improved a comment. 3106 3107 * fileapi/FileReaderLoader.h: Changed bytesLoaded and totalBytes to unsigned long long. 3108 3109 * fileapi/FileWriter.cpp: 3110 (WebCore::FileWriter::fireEvent): Removed narrowing casts in call to 3111 ProgressEvent::create. 3112 3113 * html/canvas/ArrayBuffer.cpp: 3114 (WebCore::ArrayBuffer::tryAllocate): Added a comment because the code here seems wrong. 3115 3116 * xml/XMLHttpRequest.cpp: 3117 (WebCore::XMLHttpRequest::didSendData): Removed narrowing casts in call to 3118 XMLHttpRequestProgressEvent::create. 3119 (WebCore::XMLHttpRequest::didReceiveData): Removed narrowing casts in call to 3120 dispatchProgressEvent. 3121 3122 * xml/XMLHttpRequestProgressEvent.h: Fixed formatting. Changed types to unsigned long long. 3123 Made isXMLHttpRequestProgressEvent override private. 3124 3125 * xml/XMLHttpRequestProgressEvent.idl: Tweaked formatting and changed types to unsigned long long. 3126 3127 * xml/XMLHttpRequestProgressEventThrottle.cpp: 3128 (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Changed types to 3129 unsigned long long. 3130 3131 * xml/XMLHttpRequestProgressEventThrottle.h: Changed types to unsigned long long. 3132 3133 2010-11-30 Yael Aharon <yael.aharon (a] nokia.com> 3134 3135 Reviewed by Darin Adler. 3136 3137 Progress and meter elements should take a form in their constructor like any other form control. 3138 https://bugs.webkit.org/show_bug.cgi?id=50195 3139 3140 Tests: fast/dom/HTMLMeterElement/meter-element-form.html 3141 fast/dom/HTMLProgressElement/progress-element-form.html 3142 3143 * html/HTMLMeterElement.cpp: 3144 (WebCore::HTMLMeterElement::HTMLMeterElement): 3145 (WebCore::HTMLMeterElement::create): 3146 * html/HTMLMeterElement.h: 3147 * html/HTMLProgressElement.h: 3148 * html/HTMLTagNames.in: 3149 3150 2010-11-30 Tony Chang <tony (a] chromium.org> 3151 3152 Reviewed by Adam Barth. 3153 3154 [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn 3155 https://bugs.webkit.org/show_bug.cgi?id=49036 3156 3157 No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html 3158 3159 In http://codereview.chromium.org/11574, the forked chromium test 3160 plugin changed how it testGetIntIdentifier to work around a change 3161 caused by a silverlight specific plugin fix: 3162 http://codereview.chromium.org/11569/diff/1/2 3163 3164 It's not clear to me that this change is needed anymore since 3165 silverlight has had multiple releases, testing without this patch 3166 works on a test windows build, and safari win seems to run silverlight 3167 without this either. Since there's no test for this behavior, I'm 3168 rolling it out so we can match the upstream test. 3169 3170 * bindings/v8/V8NPUtils.cpp: 3171 (WebCore::convertV8ObjectToNPVariant): 3172 3173 2010-11-30 Chris Guillory <chris.guillory (a] google.com> 3174 3175 Reviewed by Chris Fleizach. 3176 3177 Computing style on a stale node while sending pending accessibility notification. 3178 https://bugs.webkit.org/show_bug.cgi?id=50162 3179 3180 Retain node pointer members of AccessibilityImageMapLink. 3181 3182 Test: accessibility/image-map-title-causes-crash.html 3183 3184 * accessibility/AccessibilityImageMapLink.cpp: 3185 (WebCore::AccessibilityImageMapLink::parentObject): 3186 (WebCore::AccessibilityImageMapLink::anchorElement): 3187 (WebCore::AccessibilityImageMapLink::url): 3188 (WebCore::AccessibilityImageMapLink::elementRect): 3189 * accessibility/AccessibilityImageMapLink.h: 3190 (WebCore::AccessibilityImageMapLink::areaElement): 3191 (WebCore::AccessibilityImageMapLink::mapElement): 3192 (WebCore::AccessibilityImageMapLink::node): 3193 * dom/Document.cpp: 3194 (WebCore::Document::clearAXObjectCache): 3195 3196 2010-11-30 James Robinson <jamesr (a] chromium.org> 3197 3198 Reviewed by Tony Chang. 3199 3200 Build fix - add parens in foo || bar && baz to make gcc happy 3201 https://bugs.webkit.org/show_bug.cgi?id=50276 3202 3203 gcc 4.4 warns that statements of the form "foo || bar && baz". It wants 3204 parens around the "bar && baz" part to make it clear which way the logical 3205 operators bind. 3206 3207 * editing/TextIterator.cpp: 3208 (WebCore::SearchBuffer::search): 3209 3210 2010-11-30 Daniel Bates <dbates (a] rim.com> 3211 3212 Reviewed by David Hyatt. 3213 3214 Focused <area> should use CSS properties of <area> instead of associated <img> 3215 https://bugs.webkit.org/show_bug.cgi?id=49888 3216 3217 Fixes an issue where the CSS properties of an <area> were not used when 3218 the <area> was focused. 3219 3220 Currently, when focusing an <area> (say by pressing option + tab in Mac 3221 Safari) we use the CSS style information for the <img> associated with 3222 the <area>. Instead, we should use the CSS style information for the 3223 focused <area>. In particular, this will make the us honor the outline- 3224 color property of a focused <area> when drawing its focus ring. 3225 3226 Tests: fast/images/imagemap-focus-ring-outline-color-explicitly-inherited-from-map.html 3227 fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map.html 3228 fast/images/imagemap-focus-ring-outline-color.html 3229 3230 * rendering/RenderImage.cpp: 3231 (WebCore::RenderImage::paintFocusRing): Use the style information of 3232 the focused <area> when drawing the focus ring for it. 3233 3234 2010-11-30 Tony Chang <tony (a] chromium.org> 3235 3236 Reviewed by James Robinson. 3237 3238 [chromium] enable WebCore compiler warnings on Linux take 3 3239 https://bugs.webkit.org/show_bug.cgi?id=50258 3240 3241 * WebCore.gyp/WebCore.gyp: 3242 3243 2010-11-30 Mario Sanchez Prada <msanchez (a] igalia.com> 3244 3245 Reviewed by Chris Fleizach. 3246 3247 [GTK] Implement ROLE_COMBO_BOX 3248 https://bugs.webkit.org/show_bug.cgi?id=25678 3249 3250 Implement the remaining bits for combo boxes. 3251 3252 This patch finishes the implementation, from the point of view of 3253 the Atk library, of those objects exposed to ATK as combo boxes, 3254 and their related elements (menus and menu items). It therefore 3255 implements the proper interfaces for each type of object related 3256 to combo boxes (AtkSelection for the combo box, AtkText for every 3257 menu item and AtkAction for the combo box, the menu and the menu 3258 items), takes care of emitting the proper signals when focus or a 3259 given a selection changes and adds a new unit test to check all 3260 this new stuff. 3261 3262 Make possible to ask an AccessibleMenuListOption for a sensible 3263 string representation, so far only available through the private 3264 and MSAA related method nameForMSAA. Just moved the implementation 3265 of that method to an overriden version of stringValue(), which is 3266 platform independent, and called that from nameForMSAA(). 3267 3268 * accessibility/AccessibilityMenuListOption.h: 3269 * accessibility/AccessibilityMenuListOption.cpp: 3270 (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to 3271 stringValue(), which holds from now on that used to be here. 3272 (WebCore::AccessibilityMenuListOption::stringValue): New, override 3273 of AccessibilityObject::stringValue() to return a proper string. 3274 3275 Emit the missing signals when a selection is made. 3276 3277 * accessibility/gtk/AXObjectCacheAtk.cpp: 3278 (WebCore::AXObjectCache::postPlatformNotification): Emit the usual 3279 'focus' signals when a selection is made over the combo box. 3280 3281 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 3282 (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED 3283 Atk states are added to the state set when needed. 3284 (listObjectForSelection): New, returns the proper list object (the 3285 one holding the list of available options as its children) for an 3286 specific AtkObject implementing AtkSelection. This is needed 3287 because sometimes the selectable options are not directly children 3288 of the AtkSelection object (i.e. a combo box has a 'menu' object 3289 as its only child of it, holding the list of options as children). 3290 (optionFromList): Use listObjectForSelection() to get the actual 3291 object holding the list of children as the available options. 3292 (optionFromSelection): Add support for combo boxes. 3293 (webkit_accessible_selection_add_selection): Ditto. 3294 (webkit_accessible_selection_clear_selection): Ditto. 3295 (webkit_accessible_selection_get_selection_count): Ditto. 3296 (webkit_accessible_selection_is_child_selected): Ditto. 3297 (webkit_accessible_selection_remove_selection): Ditto. 3298 (webkit_accessible_text_get_text): Makes sure stringValue() is 3299 considered to get the result substring when it was already 3300 considered when checking the maximum text length for the object. 3301 (getInterfaceMaskFromObject): Make sure the AtkSelection interface 3302 is implemented for the combo boxes, that the AtkText is 3303 implemented for the menu items and that the AtkAction interface is 3304 now implemented for every object (WebCore will decide what to do). 3305 3306 Avoid a segfault crash when using this from unit tests. 3307 3308 * platform/gtk/PopupMenuGtk.cpp: 3309 (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow 3310 before calling gdk_window_get_origin() over it. 3311 3312 2010-11-30 Andreas Kling <kling (a] webkit.org> 3313 3314 Reviewed by Tor Arne Vestb. 3315 3316 [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform 3317 3318 Stash the transform in a const reference (QPainter::transform() returns one) 3319 instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect. 3320 3321 * platform/graphics/qt/GraphicsContextQt.cpp: 3322 (WebCore::GraphicsContext::fillPath): 3323 (WebCore::GraphicsContext::strokePath): 3324 (WebCore::GraphicsContext::fillRect): 3325 3326 2010-11-30 Vangelis Kokkevis <vangelis (a] chromium.org> 3327 3328 Reviewed by Simon Fraser. 3329 3330 Provide more fine grained control to ports over when to turn on 3331 accelerated compositing. 3332 https://bugs.webkit.org/show_bug.cgi?id=49998 3333 3334 The RenderLayerCompositor now checks with the chrome client whether 3335 3d transforms, video, plugins, canvas and animation require 3336 switching over to the composited path. Layers that overlap composited 3337 content will still turn into composited layers regardless of the 3338 setting. 3339 3340 * css/MediaQueryEvaluator.cpp: 3341 (WebCore::transform_3dMediaFeatureEval): 3342 * page/ChromeClient.h: 3343 (WebCore::ChromeClient::allowedCompositingTriggers): 3344 * rendering/RenderLayer.cpp: 3345 (WebCore::RenderLayer::canRender3DTransforms): 3346 (WebCore::RenderLayer::updateTransform): 3347 (WebCore::RenderLayer::currentTransform): 3348 * rendering/RenderLayer.h: 3349 * rendering/RenderLayerBacking.cpp: 3350 (WebCore::RenderLayerBacking::updateLayerTransform): 3351 * rendering/RenderLayerCompositor.cpp: 3352 (WebCore::RenderLayerCompositor::RenderLayerCompositor): 3353 (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags): 3354 (WebCore::RenderLayerCompositor::canRender3DTransforms): 3355 (WebCore::RenderLayerCompositor::requiresCompositingLayer): 3356 (WebCore::RenderLayerCompositor::requiresCompositingForTransform): 3357 (WebCore::RenderLayerCompositor::requiresCompositingForVideo): 3358 (WebCore::RenderLayerCompositor::requiresCompositingForCanvas): 3359 (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): 3360 (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): 3361 * rendering/RenderLayerCompositor.h: 3362 3363 2010-11-30 Xan Lopez <xlopez (a] igalia.com> 3364 3365 Reviewed by Martin Robinson. 3366 3367 [GTK] Plug leak in SoupCache 3368 https://bugs.webkit.org/show_bug.cgi?id=50142 3369 3370 Free the cache file contents when we don't need them anymore. 3371 3372 * platform/network/soup/cache/webkit/soup-cache.c: 3373 (webkit_soup_cache_load): 3374 3375 2010-11-30 Andras Becsi <abecsi (a] webkit.org> 3376 3377 Reviewed by Csaba Osztrogonc. 3378 3379 [Qt][V8] Make QtWebKit with V8 build on Linux. 3380 https://bugs.webkit.org/show_bug.cgi?id=50244 3381 3382 No new tests needed. 3383 3384 * WebCore.pri: add missing idl file 3385 * WebCore.pro: enable Linux build 3386 * bindings/scripts/CodeGeneratorV8.pm: add missing headers 3387 * bindings/v8/ScriptControllerQt.cpp: fix instantiation 3388 (WebCore::ScriptController::qtScriptEngine): 3389 * bindings/v8/V8GCController.cpp: fix guard 3390 (WebCore::V8GCController::checkMemoryUsage): 3391 * inspector/CodeGeneratorInspector.pm: add missing header 3392 * loader/ResourceLoadScheduler.cpp: ditto 3393 * loader/cache/MemoryCache.cpp: ditto 3394 * loader/loader.cpp: ditto 3395 3396 2010-11-30 David Hyatt <hyatt (a] apple.com> 3397 3398 Reviewed by Simon Fraser. 3399 3400 https://bugs.webkit.org/show_bug.cgi?id=50183 3401 3402 Code got commented out by accident during render tree refactoring last year. Put the code back in, since 3403 it hurts performance to have that line commented out. 3404 3405 In order to put this code back in, I had to fix some bugs with preferred width computations and 3406 overflow: scroll. Make the pref widths computation create the scrollbar if it doesn't exist yet. 3407 3408 Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values. Otherwise 3409 the scrollbar inflates the width beyond the fixed size that was specified. 3410 3411 For table cells, there is an additional wrinkle. Make sure not to include the scrollbar size as part of the minimum 3412 intrinsic width so that we don't incorrectly grow. 3413 3414 * rendering/RenderBlock.cpp: 3415 (WebCore::RenderBlock::layoutPositionedObjects): 3416 (WebCore::RenderBlock::computePreferredLogicalWidths): 3417 * rendering/RenderFlexibleBox.cpp: 3418 (WebCore::RenderFlexibleBox::computePreferredLogicalWidths): 3419 3420 2010-11-30 Vitaly Repeshko <vitalyr (a] chromium.org> 3421 3422 Unreviewed. 3423 3424 Attempt to fix windows debug chromium build. 3425 3426 * html/TimeInputType.cpp: Added include providing isfinite. 3427 3428 2010-11-30 Darin Adler <darin (a] apple.com> 3429 3430 Reviewed by Jon Honeycutt. 3431 3432 DOM binding code generator scripts import unused File::stat Perl module 3433 https://bugs.webkit.org/show_bug.cgi?id=50250 3434 3435 * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat". 3436 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 3437 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 3438 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 3439 3440 2010-11-30 Pavel Feldman <pfeldman (a] chromium.org> 3441 3442 Reviewed by Yury Semikhatsky. 3443 3444 Web Inspector: implement "Revert to this revision" in resources panel. 3445 https://bugs.webkit.org/show_bug.cgi?id=50107 3446 3447 * inspector/Inspector.idl: 3448 * inspector/InspectorCSSAgent.cpp: 3449 (WebCore::InspectorCSSAgent::setStyleSheetText2): 3450 * inspector/InspectorCSSAgent.h: 3451 * inspector/InspectorStyleSheet.cpp: 3452 (WebCore::InspectorStyleSheet::reparseStyleSheet): 3453 * inspector/front-end/CSSStyleModel.js: 3454 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): 3455 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 3456 (WebInspector.CSSStyleModel.prototype._onRevert): 3457 * inspector/front-end/Resource.js: 3458 (WebInspector.Resource.prototype.get contentTimestamp): 3459 (WebInspector.Resource.prototype.setInitialContent): 3460 (WebInspector.Resource.prototype.isLocallyModified): 3461 (WebInspector.Resource.prototype.setContent.else.finished): 3462 (WebInspector.Resource.prototype.setContent): 3463 (WebInspector.Resource.prototype.revertToThis.callback): 3464 (WebInspector.Resource.prototype.revertToThis): 3465 (WebInspector.Resource.prototype.get baseRevision): 3466 (WebInspector.Resource.prototype._innerRequestContent): 3467 * inspector/front-end/ResourcesPanel.js: 3468 (WebInspector.ResourcesPanel.prototype._showResourceView): 3469 (WebInspector.FrameResourceTreeElement.prototype._contentChanged): 3470 (WebInspector.ResourceRevisionTreeElement): 3471 (WebInspector.ResourceRevisionTreeElement.prototype.onattach): 3472 (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart): 3473 (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent): 3474 * inspector/front-end/ScriptsPanel.js: 3475 (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback): 3476 (WebInspector.ScriptsPanel.prototype.editScriptSource): 3477 * inspector/front-end/SourceView.js: 3478 (WebInspector.SourceView.prototype._editLine): 3479 (WebInspector.SourceView.prototype._editLineComplete): 3480 (WebInspector.SourceView.prototype._revertEditLine): 3481 3482 2010-11-30 Adam Roben <aroben (a] apple.com> 3483 3484 Clean up WebCore.vcproj's bindings filter 3485 3486 I added files that we compile (via an all-in-one file) but weren't in 3487 the .vcproj, removed files that no longer exist, and added the scripts 3488 we use. 3489 3490 Fixes <http://webkit.org/b/50248> WebCore.vcproj's bindings filter is 3491 out-of-date 3492 3493 Reviewed by Darin Adler. 3494 3495 * WebCore.vcproj/WebCore.vcproj: 3496 3497 2010-11-30 Adam Roben <aroben (a] apple.com> 3498 3499 Move JSIDB* files to the DerivedSources filter 3500 3501 This correctly reflects their location on disk. (They were formerly 3502 listed under bindings/js.) 3503 3504 * WebCore.vcproj/WebCore.vcproj: 3505 3506 2010-11-30 Xiaomei Ji <xji (a] chromium.org> 3507 3508 Reviewed by David Hyatt. 3509 3510 Remove clampNegativeToZero in adjustScrollPositionWithinRange. 3511 https://bugs.webkit.org/show_bug.cgi?id=50203 3512 3513 * platform/ScrollView.cpp: 3514 (WebCore::ScrollView::adjustScrollPositionWithinRange): 3515 3516 2010-11-30 Adam Roben <aroben (a] apple.com> 3517 3518 Remove duplicate files from WebCore.vcproj 3519 3520 Rubber-stamped by Steve Falkenburg. 3521 3522 * WebCore.vcproj/WebCore.vcproj: 3523 3524 2010-11-30 Adam Roben <aroben (a] apple.com> 3525 3526 Let VS do its thang with WebCore.vcproj 3527 3528 I just removed and readded AnimationBase.cpp. 3529 3530 Rubber-stamped by Steve Falkenburg. 3531 3532 * WebCore.vcproj/WebCore.vcproj: 3533 3534 2010-11-30 Mario Sanchez Prada <msanchez (a] igalia.com> 3535 3536 Reviewed by Chris Fleizach. 3537 3538 ASSERT failing for combo boxes when selection changes 3539 https://bugs.webkit.org/show_bug.cgi?id=50062 3540 3541 Don't call listBoxOnChange for elements using menu lists. 3542 3543 Test: fast/forms/select-option-accesskey-crash.html 3544 3545 * dom/SelectElement.cpp: 3546 (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check 3547 to decide whether to call menuListOnChange() or listBoxOnChange() 3548 instead of always calling listBoxOnChange(). 3549 3550 2010-11-30 Andreas Kling <kling (a] webkit.org> 3551 3552 Reviewed by Dirk Schulze. 3553 3554 GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument. 3555 https://bugs.webkit.org/show_bug.cgi?id=48516 3556 3557 No new tests, this is refactoring only. 3558 3559 fillPath() -> fillPath(const Path&) 3560 strokePath() -> strokePath(const Path&) 3561 clipPath(WindRule) -> clipPath(const Path&, WindRule) 3562 3563 drawPath() was only used by CG, so made it PLATFORM(CG) specific. 3564 3565 The Qt, CG and Cairo implementations are best-effort. 3566 For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods. 3567 3568 * WebCore.exp.in: 3569 * html/canvas/CanvasRenderingContext2D.cpp: 3570 (WebCore::CanvasRenderingContext2D::fill): 3571 (WebCore::CanvasRenderingContext2D::stroke): 3572 * inspector/InspectorController.cpp: 3573 (WebCore::drawOutlinedQuad): 3574 * mathml/RenderMathMLRoot.cpp: 3575 (WebCore::RenderMathMLRoot::paint): 3576 * mathml/RenderMathMLSquareRoot.cpp: 3577 (WebCore::RenderMathMLSquareRoot::paint): 3578 * platform/graphics/GraphicsContext.h: 3579 * platform/graphics/GraphicsContextPrivate.h: 3580 * platform/graphics/cairo/GraphicsContextCairo.cpp: 3581 (WebCore::GraphicsContext::fillPath): 3582 (WebCore::GraphicsContext::strokePath): 3583 (WebCore::GraphicsContext::clipPath): 3584 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 3585 * platform/graphics/cg/GraphicsContextCG.cpp: 3586 (WebCore::GraphicsContext::drawEllipse): 3587 (WebCore::addConvexPolygonToPath): 3588 (WebCore::GraphicsContext::drawConvexPolygon): 3589 (WebCore::GraphicsContext::clipConvexPolygon): 3590 (WebCore::GraphicsContext::drawPath): 3591 (WebCore::GraphicsContext::fillPath): 3592 (WebCore::GraphicsContext::strokePath): 3593 (WebCore::GraphicsContext::fillRoundedRect): 3594 (WebCore::GraphicsContext::clipPath): 3595 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 3596 (WebCore::GraphicsContext::strokePath): 3597 (WebCore::GraphicsContext::fillPath): 3598 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 3599 (WebCore::GraphicsContext::fillPath): 3600 (WebCore::GraphicsContext::strokePath): 3601 (WebCore::GraphicsContext::clipPath): 3602 * platform/graphics/qt/GraphicsContextQt.cpp: 3603 (WebCore::GraphicsContext::restorePlatformState): 3604 (WebCore::GraphicsContext::fillPath): 3605 (WebCore::GraphicsContext::strokePath): 3606 (WebCore::GraphicsContext::clipPath): 3607 (WebCore::GraphicsContext::strokeRect): 3608 (WebCore::GraphicsContext::translate): 3609 (WebCore::GraphicsContext::rotate): 3610 (WebCore::GraphicsContext::scale): 3611 (WebCore::GraphicsContext::concatCTM): 3612 * platform/graphics/skia/GraphicsContextSkia.cpp: 3613 (WebCore::GraphicsContext::clipPath): 3614 (WebCore::GraphicsContext::fillPath): 3615 (WebCore::GraphicsContext::strokePath): 3616 * platform/graphics/wince/GraphicsContextWinCE.cpp: 3617 (WebCore::GraphicsContext::fillPath): 3618 (WebCore::GraphicsContext::strokePath): 3619 (WebCore::GraphicsContext::clipPath): 3620 * platform/graphics/wx/GraphicsContextWx.cpp: 3621 (WebCore::GraphicsContext::clipPath): 3622 (WebCore::GraphicsContext::fillPath): 3623 (WebCore::GraphicsContext::strokePath): 3624 * rendering/RenderBoxModelObject.cpp: 3625 (WebCore::RenderBoxModelObject::paintBorder): 3626 (WebCore::RenderBoxModelObject::paintBoxShadow): 3627 * rendering/RenderEmbeddedObject.cpp: 3628 (WebCore::RenderEmbeddedObject::paintReplaced): 3629 * rendering/RenderObject.cpp: 3630 (WebCore::RenderObject::drawBoxSideFromPath): 3631 * rendering/RenderSVGResource.h: 3632 (WebCore::RenderSVGResource::postApplyResource): 3633 * rendering/RenderSVGResourceClipper.cpp: 3634 (WebCore::RenderSVGResourceClipper::pathOnlyClipping): 3635 * rendering/RenderSVGResourceFilter.cpp: 3636 (WebCore::RenderSVGResourceFilter::postApplyResource): 3637 * rendering/RenderSVGResourceFilter.h: 3638 * rendering/RenderSVGResourceGradient.cpp: 3639 (WebCore::RenderSVGResourceGradient::applyResource): 3640 * rendering/RenderSVGResourceGradient.h: 3641 * rendering/RenderSVGResourcePattern.cpp: 3642 (WebCore::RenderSVGResourcePattern::postApplyResource): 3643 * rendering/RenderSVGResourcePattern.h: 3644 * rendering/RenderSVGResourceSolidColor.cpp: 3645 (WebCore::RenderSVGResourceSolidColor::postApplyResource): 3646 * rendering/RenderSVGResourceSolidColor.h: 3647 * rendering/SVGRenderSupport.cpp: 3648 (WebCore::SVGRenderSupport::finishRenderSVGContent): 3649 * rendering/svg/RenderSVGPath.cpp: 3650 (WebCore::RenderSVGPath::fillAndStrokePath): 3651 * rendering/svg/SVGInlineTextBox.cpp: 3652 (WebCore::SVGInlineTextBox::releasePaintingResource): 3653 (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting): 3654 (WebCore::SVGInlineTextBox::paintDecorationWithStyle): 3655 * rendering/svg/SVGInlineTextBox.h: 3656 * svg/SVGFont.cpp: 3657 (WebCore::Font::drawTextUsingSVGFont): 3658 3659 2010-11-30 Alexey Proskuryakov <ap (a] apple.com> 3660 3661 Reviewed by Darin Adler and Geoff Garen. 3662 3663 https://bugs.webkit.org/show_bug.cgi?id=44152 3664 <rdar://problem/8324423> CSSOM should match DOM in discarding wrapper-less parents. 3665 3666 We have existing behaviors where parent objects in detached subtrees are not preserved: 3667 - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making 3668 its children parentNode attribute null; 3669 - relationship between a <style> or <link> node and its stylesheet is immediately broken 3670 when the node is removed from document (in this case, regardless of wrapper existence). 3671 3672 Both match Firefox. For consistency, CSSOM should do the same. In fact, it already partially 3673 does - CSSRule.parentRule gets zeroed out when the parent rule is destroyed. 3674 3675 Tests: fast/dom/StyleSheet/detached-parent-rule-without-wrapper.html 3676 fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html 3677 3678 * css/StyleSheet.cpp: (WebCore::StyleSheet::~StyleSheet): Clear out child rule parent. 3679 3680 * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::insertedIntoDocument): Keep 3681 the new assertion from firing. This function was adding a rule to style sheet, without 3682 telling the rule about it. 3683 3684 2010-11-30 Steve Falkenburg <sfalken (a] apple.com> 3685 3686 Reviewed by Adam Roben. 3687 3688 All projects on Windows should use cmd files for build events 3689 https://bugs.webkit.org/show_bug.cgi?id=50213 3690 3691 * WebCore.vcproj/QTMovieWinCommon.vsprops: 3692 * WebCore.vcproj/QTMovieWinPostBuild.cmd: Added. 3693 * WebCore.vcproj/QTMovieWinPreBuild.cmd: Added. 3694 * WebCore.vcproj/WebCoreCommon.vsprops: 3695 * WebCore.vcproj/WebCorePostBuild.cmd: Added. 3696 * WebCore.vcproj/WebCorePreBuild.cmd: Added. 3697 3698 2010-11-30 Sheriff Bot <webkit.review.bot (a] gmail.com> 3699 3700 Unreviewed, rolling out r72914. 3701 http://trac.webkit.org/changeset/72914 3702 https://bugs.webkit.org/show_bug.cgi?id=50241 3703 3704 "pfeldman has a revision management patch both for CSS and JS" 3705 (Requested by apavlov on #webkit). 3706 3707 * English.lproj/localizedStrings.js: 3708 * inspector/InspectorStyleSheet.cpp: 3709 (WebCore::InspectorStyleSheet::reparseStyleSheet): 3710 * inspector/front-end/CSSStyleModel.js: 3711 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): 3712 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 3713 (WebInspector.CSSStyleSheet.prototype.getText): 3714 (WebInspector.CSSStyleSheet.prototype.setText): 3715 * inspector/front-end/ResourcesPanel.js: 3716 (WebInspector.ResourceRevisionTreeElement.prototype.onattach): 3717 (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart): 3718 3719 2010-11-25 Satish Sampath <satish (a] chromium.org> 3720 3721 Reviewed by Kent Tamura. 3722 3723 Fix rendering of speech button when setting the attribute dynamically. 3724 https://bugs.webkit.org/show_bug.cgi?id=50077 3725 3726 * html/HTMLInputElement.cpp: 3727 (WebCore::HTMLInputElement::parseMappedAttribute): 3728 * rendering/RenderTextControlSingleLine.cpp: 3729 (WebCore::RenderTextControlSingleLine::speechAttributeChanged): 3730 * rendering/RenderTextControlSingleLine.h: 3731 3732 2010-11-30 Alexander Pavlov <apavlov (a] chromium.org> 3733 3734 Reviewed by Yury Semikhatsky. 3735 3736 Web Inspector: Enable switching between revisions of stylesheets 3737 https://bugs.webkit.org/show_bug.cgi?id=50227 3738 3739 Drive-by fix: styleSheetChanged() call needed after a stylesheet reparsing on setStyleSheetText2(). 3740 3741 * English.lproj/localizedStrings.js: 3742 * inspector/InspectorStyleSheet.cpp: 3743 (WebCore::InspectorStyleSheet::reparseStyleSheet): 3744 * inspector/front-end/CSSStyleModel.js: 3745 (WebInspector.CSSStyleModel.prototype.setStyleSheetText): 3746 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): 3747 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 3748 (WebInspector.CSSStyleSheet.prototype.getText): 3749 * inspector/front-end/ResourcesPanel.js: 3750 (WebInspector.ResourceRevisionTreeElement.prototype.onattach): 3751 (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart): 3752 (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent): 3753 3754 2010-11-30 John Knottenbelt <jknotten (a] chromium.org> 3755 3756 Reviewed by David Levin. 3757 3758 V8 binding for DOMTimeStamp should be Number, not Date 3759 https://bugs.webkit.org/show_bug.cgi?id=49963 3760 3761 Test: fast/dom/domtimestamp-is-number.html 3762 3763 * bindings/scripts/CodeGeneratorV8.pm: 3764 3765 2010-11-30 Renata Hodovan <reni (a] inf.u-szeged.hu> 3766 3767 Reviewed by Andreas Kling. 3768 3769 [Qt] Leak with GraphicsContext::takeOwnershipOfPlatformContext() 3770 https://bugs.webkit.org/show_bug.cgi?id=49916 3771 3772 Change the order of calling QPainter::device() and QPainter::end(), so device() will return with a valid device. 3773 No new test is needed. 3774 3775 * platform/graphics/qt/GraphicsContextQt.cpp: 3776 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 3777 3778 2010-11-30 Patrick Gansterer <paroga (a] webkit.org> 3779 3780 Reviewed by Andreas Kling. 3781 3782 Move generator logic into main CMakeLists.txt file 3783 https://bugs.webkit.org/show_bug.cgi?id=49885 3784 3785 Also make the generator calls more portable. 3786 3787 * CMakeLists.txt: 3788 3789 2010-11-30 Mario Sanchez Prada <msanchez (a] igalia.com> 3790 3791 Unreviewed, rolling out r72902. 3792 http://trac.webkit.org/changeset/72902 3793 https://bugs.webkit.org/show_bug.cgi?id=50062 3794 3795 This change is causing layout test failures on the Tests bots 3796 for the mac platform. 3797 3798 * dom/SelectElement.cpp: 3799 (WebCore::SelectElement::accessKeySetSelectedIndex): 3800 3801 2010-11-30 Sheriff Bot <webkit.review.bot (a] gmail.com> 3802 3803 Unreviewed, rolling out r72764. 3804 http://trac.webkit.org/changeset/72764 3805 https://bugs.webkit.org/show_bug.cgi?id=50215 3806 3807 This change is causing assertion failures on the debug bots. 3808 (Requested by mrobinson on #webkit). 3809 3810 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 3811 (webkit_accessible_get_name): 3812 (webkit_accessible_detach): 3813 3814 2010-11-30 Pavel Feldman <pfeldman (a] chromium.org> 3815 3816 Reviewed by Yury Semikhatsky. 3817 3818 Web Inspector: make copy(node) work in console. 3819 https://bugs.webkit.org/show_bug.cgi?id=50180 3820 3821 * inspector/front-end/InjectedScript.js: 3822 (injectedScriptConstructor.): 3823 3824 2010-11-30 Mario Sanchez Prada <msanchez (a] igalia.com> 3825 3826 Reviewed by Darin Adler. 3827 3828 ASSERT failing for combo boxes when selection changes 3829 https://bugs.webkit.org/show_bug.cgi?id=50062 3830 3831 Don't call listBoxOnChange for elements using menu lists. 3832 3833 Test: accessibility/select-menulist-crash.html 3834 3835 * dom/SelectElement.cpp: 3836 (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check 3837 to decide whether to call menuListOnChange() or listBoxOnChange() 3838 instead of always calling listBoxOnChange(). 3839 3840 2010-11-30 Helder Correia <helder (a] sencha.com> 3841 3842 Reviewed by Kenneth Rohde Christiansen. 3843 3844 [Qt] Path stroke shadow has incorrect behavior when using ctx.scale(x,y) 3845 https://bugs.webkit.org/show_bug.cgi?id=50198 3846 3847 Handle the special case when scaling is used and translate the shadow 3848 offset accordingly. The correct behavior is ensured in ContextShadow 3849 already, the issue only happens when using a non-blur shadow. 3850 3851 Test: fast/canvas/canvas-scale-strokePath-shadow.html 3852 3853 * platform/graphics/qt/GraphicsContextQt.cpp: 3854 (WebCore::GraphicsContext::strokePath): 3855 3856 2010-11-30 Helder Correia <helder (a] sencha.com> 3857 3858 Reviewed by Kenneth Rohde Christiansen. 3859 3860 [Qt] Path filling should keep shadow offset after context scaling 3861 https://bugs.webkit.org/show_bug.cgi?id=50194 3862 3863 Handle the special case when scaling is used and translate the shadow 3864 offset accordingly. The correct behavior is ensured in ContextShadow 3865 already, the issue only happens when using a non-blur shadow. 3866 3867 Test: fast/canvas/canvas-scale-fillPath-shadow.html 3868 3869 * platform/graphics/qt/GraphicsContextQt.cpp: 3870 (WebCore::GraphicsContext::fillPath): 3871 3872 2010-11-30 Yury Semikhatsky <yurys (a] chromium.org> 3873 3874 Reviewed by Pavel Feldman. 3875 3876 Web Inspector: make ScriptCallStack and ScriptArguments reference counted 3877 https://bugs.webkit.org/show_bug.cgi?id=50156 3878 3879 No new tests. This refactoring is covered with existing inspector tests. 3880 3881 * bindings/js/JSConsoleCustom.cpp: 3882 (WebCore::JSConsole::profile): 3883 (WebCore::JSConsole::profileEnd): 3884 * bindings/js/ScriptCallStackFactory.cpp: 3885 (WebCore::createScriptCallStack): 3886 (WebCore::createScriptArguments): 3887 * bindings/js/ScriptCallStackFactory.h: 3888 * bindings/scripts/CodeGeneratorJS.pm: 3889 * bindings/scripts/CodeGeneratorV8.pm: 3890 * bindings/scripts/test/JS/JSTestObj.cpp: 3891 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 3892 * bindings/scripts/test/V8/V8TestObj.cpp: 3893 (WebCore::TestObjInternal::customArgsAndExceptionCallback): 3894 * bindings/v8/ScriptCallStackFactory.cpp: 3895 (WebCore::createScriptCallStack): 3896 (WebCore::createScriptArguments): 3897 * bindings/v8/ScriptCallStackFactory.h: 3898 * bindings/v8/V8ConsoleMessage.cpp: 3899 (WebCore::V8ConsoleMessage::handler): 3900 (WebCore::V8ConsoleMessage::dispatchNow): 3901 * bindings/v8/V8ConsoleMessage.h: 3902 * bindings/v8/custom/V8ConsoleCustom.cpp: 3903 (WebCore::V8Console::traceCallback): 3904 (WebCore::V8Console::assertCallback): 3905 (WebCore::V8Console::profileCallback): 3906 (WebCore::V8Console::profileEndCallback): 3907 * inspector/ConsoleMessage.cpp: 3908 (WebCore::ConsoleMessage::ConsoleMessage): 3909 * inspector/ConsoleMessage.h: 3910 * inspector/InspectorController.cpp: 3911 (WebCore::InspectorController::addMessageToConsole): 3912 (WebCore::InspectorController::startGroup): 3913 * inspector/InspectorController.h: 3914 * inspector/ScriptArguments.cpp: 3915 (WebCore::ScriptArguments::create): 3916 * inspector/ScriptArguments.h: 3917 * inspector/ScriptCallFrame.h: 3918 * inspector/ScriptCallStack.cpp: 3919 (WebCore::ScriptCallStack::create): 3920 (WebCore::ScriptCallStack::at): 3921 (WebCore::ScriptCallStack::size): 3922 * inspector/ScriptCallStack.h: 3923 * page/Console.cpp: 3924 (WebCore::Console::addMessage): 3925 (WebCore::Console::debug): 3926 (WebCore::Console::error): 3927 (WebCore::Console::info): 3928 (WebCore::Console::log): 3929 (WebCore::Console::dir): 3930 (WebCore::Console::dirxml): 3931 (WebCore::Console::trace): 3932 (WebCore::Console::assertCondition): 3933 (WebCore::Console::count): 3934 (WebCore::Console::markTimeline): 3935 (WebCore::Console::profile): 3936 (WebCore::Console::profileEnd): 3937 (WebCore::Console::timeEnd): 3938 (WebCore::Console::group): 3939 (WebCore::Console::groupCollapsed): 3940 (WebCore::Console::warn): 3941 * page/Console.h: 3942 3943 2010-11-29 Dan Bernstein <mitz (a] apple.com> 3944 3945 Build fix for non-ICU platforms after r72887. 3946 3947 * editing/TextIterator.cpp: 3948 (WebCore::SearchBuffer::prependContext): 3949 3950 2010-11-29 Dan Bernstein <mitz (a] apple.com> 3951 3952 Reviewed by Darin Adler. 3953 3954 WebCore part of <rdar://problem/8650085> adding word-prefix search options to the text search API. 3955 https://bugs.webkit.org/show_bug.cgi?id=50038 3956 3957 Test: editing/text-iterator/findString.html 3958 3959 * GNUmakefile.am: Added FindOptions.h. 3960 * WebCore.exp.in: Export the new methods that take FindOptions. 3961 * WebCore.gypi: Added FindOptions.h. 3962 * WebCore.pro: Added FindOptions.h and TextBoundaries.{cpp,h}. 3963 * WebCore.vcproj/WebCore.vcproj: Added FindOptions.h. 3964 * WebCore.xcodeproj/project.pbxproj: Added FindOptions.h and TextBoundaries.cpp. 3965 * editing/Editor.cpp: 3966 (WebCore::Editor::firstVisibleRange): Changed to use FindOptions. 3967 (WebCore::Editor::lastVisibleRange): Ditto. 3968 (WebCore::Editor::nextVisibleRange): Ditto. 3969 (WebCore::Editor::findString): Ditto. 3970 (WebCore::Editor::countMatchesForText): Ditto. 3971 * editing/Editor.h: Added a version of findString() that takes FindOptions. Changed 3972 countMatchesForText() to take FindOptions. Made nextVisibleRange() private and changed it 3973 and firstVisibleRange() and lastVisibleRange() to take FindOptions. 3974 * editing/FindOptions.h: Added. 3975 * editing/TextIterator.cpp: 3976 Augmented SearchBuffer with an optional prefix, which is not searched, but provides context 3977 for determining word boundaries. 3978 (WebCore::isSeparator): Added. Identifies a class of characters used to determine where 3979 words are embedded in a word. 3980 (WebCore::SearchBuffer::SearchBuffer): Changed to take FindOptions. Added initialization of 3981 m_options, m_prefixLength and m_needsMoreContext. 3982 (WebCore::SearchBuffer::append): Adjust m_prefixLength as part of the prefix gets pushed out 3983 of the buffer. 3984 (WebCore::SearchBuffer::needsMoreContext): Added. 3985 (WebCore::SearchBuffer::prependContext): Added. 3986 (WebCore::SearchBuffer::isWordStartMatch): Added. 3987 (WebCore::SearchBuffer::search): Changed to account for the context prefix. When searching 3988 only for word prefix matches, maintains enough context before a tentative match when moving 3989 it to the beginning of the buffer. Reject matches that are not at word starts if requested. 3990 Adjust m_prefixLength when pushing characters out of the buffer. 3991 (WebCore::findPlainText): Changed to work with FindOptions. Feed the search buffer with context 3992 if and as long as it requires more of it. 3993 * editing/TextIterator.h: Added a version of findPlainText() that takes FindOptions. 3994 * editing/visible_units.cpp: Moved {end,start}Of{First,Last}WordBoundary to TextBoundaries.cpp. 3995 * page/Page.cpp: 3996 (WebCore::Page::findString): Changed to work with FindOptions. 3997 (WebCore::Page::markAllMatchesForText): Ditto. 3998 * page/Page.h: Added FindOptions-based findString() and markAllMatchesForText(). 3999 * platform/text/TextBoundaries.cpp: 4000 (WebCore::endOfFirstWordBoundaryContext): Moved here from visible_units.cpp. 4001 (WebCore::startOfLastWordBoundaryContext): Ditto. 4002 * platform/text/TextBoundaries.h: 4003 4004 2010-11-29 Dai Mikurube <dmikurube (a] google.com> 4005 4006 Reviewed by Kent Tamura. 4007 4008 when empty, clicking "down" on outer-spin-button returns "max value" 4009 https://bugs.webkit.org/show_bug.cgi?id=45491 4010 4011 Modified stepping-up/down from renderer 4012 - to clamp steps, 4013 - to handle empty values (described below), and 4014 - to apply them for range type inputs. 4015 4016 Stepping-up/down for empty values are handled "the empty as 0." 4017 For example : 4018 * If 0 is in-range, and matches to step value 4019 "down" -> -step 4020 "up" -> +step 4021 If -step or +step is out of range, new value should be 0. 4022 4023 * If 0 is smaller than the minimum value 4024 "down" -> the minimum value 4025 "up" -> the minimum value 4026 4027 * If 0 is larger than the maximum value 4028 "down" -> the maximum value 4029 "up" -> the maximum value 4030 4031 * If 0 is in-range, but not matched to step value 4032 "down" -> smaler matched value nearest to 0. 4033 e.g. <input type=number min=-100 step=3> -> -1 4034 "up" -> larger matched value nearest to 0. 4035 e.g. <input type=number min=-100 step=3> -> 2 4036 4037 As for date/datetime-local/month/time/week types, the empty is assumed as "current local date/time". 4038 As for datetime type, the empty is assumed as "current date/time in UTC". 4039 4040 As for range input types, changed stepping from renderer to use stepUpFromRenderer(). 4041 It was calculated with stepUp() from RangeInputType::handleKeydownEvent(). 4042 4043 Test: fast/forms/input-stepup-stepdown-from-renderer.html 4044 4045 * html/BaseDateAndTimeInputType.cpp: 4046 (WebCore::BaseDateAndTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time 4047 * html/BaseDateAndTimeInputType.h: 4048 * html/DateTimeInputType.cpp: 4049 (WebCore::DateTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current UTC time 4050 * html/DateTimeInputType.h: 4051 * html/HTMLInputElement.cpp: 4052 (WebCore::HTMLInputElement::stepUpFromRenderer): Modified it to clamp steps, support empty values and support range type inputs 4053 * html/HTMLInputElement.h: 4054 (WebCore::HTMLInputElement::isRangeControl): 4055 * html/InputType.cpp: 4056 (WebCore::InputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns 0 4057 * html/InputType.h: 4058 * html/MonthInputType.cpp: 4059 (WebCore::MonthInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local month 4060 * html/MonthInputType.h: 4061 * html/RangeInputType.cpp: 4062 (WebCore::RangeInputType::handleKeydownEvent): Added comments and modified it to use stepUpFromRenderer() 4063 * html/TimeInputType.cpp: 4064 (WebCore::TimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time 4065 * html/TimeInputType.h: 4066 * manual-tests/input-type-datetime-default-value.html: Added manual tests for default values of date/time inputs since they are "the current local/UTC time", which cannot be tested automatically. 4067 4068 2010-11-29 Adam Barth <abarth (a] webkit.org> 4069 4070 Reviewed by Darin Adler. 4071 4072 Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs 4073 https://bugs.webkit.org/show_bug.cgi?id=50182 4074 4075 A display-isolated URL can only be displayed (e.g., put in an iframe, 4076 hyperlinked to) by documents from that scheme. In a sense, this is a 4077 generalization of some of the protections we give file URLs, but 4078 instead of lumping them all together into one "local" bucket, this 4079 patch creates a separate bucket for each scheme. 4080 4081 For a while, I tried using a separate bucket for each origin. That 4082 would have played nicely with what Blob URLs are trying to do, but some 4083 "chrome" URL pages rely on being able to display other chrome URL 4084 pages, even in different origins. For example, the New Tab Page shows 4085 thumbnails from the "thumbnail" host. 4086 4087 This patch also removes a bunch of unused code. I've also propagated 4088 the "deprecated" status of deprecatedCanDisplay to 4089 deprecatedShouldTreatURLAsLocal because that method has no other 4090 callers and is really asking for uppercase/lowercase bugs. I dream of 4091 someday removing these functions. 4092 4093 * page/SecurityOrigin.cpp: 4094 (WebCore::SecurityOrigin::canDisplay): 4095 (WebCore::SecurityOrigin::deprecatedCanDisplay): 4096 * platform/SchemeRegistry.cpp: 4097 (WebCore::displayIsolatedURLSchemes): 4098 (WebCore::SchemeRegistry::registerURLSchemeAsLocal): 4099 (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal): 4100 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): 4101 (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated): 4102 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated): 4103 * platform/SchemeRegistry.h: 4104 4105 2010-11-29 Sergio Villar Senin <svillar (a] igalia.com> 4106 4107 Reviewed by Martin Robinson. 4108 4109 [GTK] Leaks in SoupCache code 4110 https://bugs.webkit.org/show_bug.cgi?id=50161 4111 4112 Fixes some memory leaks in SoupCache code. 4113 4114 * platform/network/soup/cache/soup-http-input-stream.c: 4115 (send_async_finished): Added a missing g_object_unref. 4116 * platform/network/soup/cache/webkit/soup-cache.c: 4117 (get_cacheability): Added soup_header_free_param_list. 4118 (webkit_soup_cache_entry_set_freshness): Ditto. 4119 (webkit_soup_cache_send_response): Ditto. 4120 (webkit_soup_cache_has_response): Ditto. 4121 4122 2010-11-29 Jian Li <jianli (a] chromium.org> 4123 4124 Reviewed by David Levin. 4125 4126 Add send(ArrayBuffer) to XMLHttpRequest per XMLHttpRequest Level 2 spec 4127 https://bugs.webkit.org/show_bug.cgi?id=50199 4128 4129 Test: http/tests/xmlhttprequest/send-array-buffer.html 4130 4131 * bindings/js/JSXMLHttpRequestCustom.cpp: 4132 (WebCore::JSXMLHttpRequest::send): 4133 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 4134 (WebCore::V8XMLHttpRequest::sendCallback): 4135 * xml/XMLHttpRequest.cpp: 4136 (WebCore::XMLHttpRequest::send): 4137 * xml/XMLHttpRequest.h: 4138 4139 2010-11-29 James Robinson <jamesr (a] chromium.org> 4140 4141 [chromium] REGRESSION(72470): Crash in skia on some images 4142 https://bugs.webkit.org/show_bug.cgi?id=50201 4143 4144 Reverts r72470 4145 4146 * platform/graphics/skia/ImageSkia.cpp: 4147 (WebCore::computeResamplingMode): 4148 (WebCore::drawResampledBitmap): 4149 4150 2010-11-29 Dmitry Titov <dimich (a] chromium.org> 4151 4152 Reviewed by David Levin. 4153 4154 Crash when iframe transfers from one page to another and has child frames. 4155 https://bugs.webkit.org/show_bug.cgi?id=50200 4156 4157 * page/Frame.cpp: 4158 (WebCore::Frame::transferChildFrameToNewDocument): 4159 avoid overriding 'didTransfer' which has the result of previous check. 4160 4161 2010-11-19 Ryosuke Niwa <rniwa (a] webkit.org> 4162 4163 Reviewed by David Hyatt. 4164 4165 up arrow doesn't work with RTL text with word wrapping 4166 https://bugs.webkit.org/show_bug.cgi?id=41987 4167 4168 The bug was caused by positionForPoint's not returning the correct affinity when the x coordiate 4169 is to the left of the first line, and startOfLine's incorrectly moving position to the previous candidate. 4170 4171 Fixed the bug by returning upstream VisiblePosition in positionForPoint if the first inline text box's offset 4172 is greater than 0. Also removed the code added by http://trac.webkit.org/changeset/23608 since this changeset 4173 does not add any test, and the problem described in the changelog reproduces regardless of the code's presence. 4174 4175 Tests: editing/selection/click-left-of-rtl-wrapping-text.html 4176 editing/selection/modify-up-on-rtl-wrapping-text.html 4177 4178 * editing/visible_units.cpp: 4179 (WebCore::startOfLine): 4180 * rendering/RenderText.cpp: 4181 (WebCore::RenderText::positionForPoint): 4182 4183 2010-11-29 Ilya Sherman <isherman (a] chromium.org> 4184 4185 Reviewed by Kent Tamura. 4186 4187 Ensure that option elements are rendered with normal font weight on Windows/Linux 4188 https://bugs.webkit.org/show_bug.cgi?id=50055 4189 4190 * WebCore.gyp/WebCore.gyp: include themeChromiumSkia.css 4191 * css/themeChromiumSkia.css: Added. 4192 (option): font-weight: normal !important; 4193 * rendering/RenderThemeChromiumSkia.cpp: 4194 (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): include themeChromiumSkia.css 4195 4196 2010-11-29 Brent Fulgham <bfulgham (a] webkit.org> 4197 4198 Unreviewed build fix. 4199 4200 * WebCore.vcproj/WebCoreCairo.vsprops: Provide missing WIN_CAIRO 4201 definition so that proper targets are build. 4202 * platform/graphics/win/cairo/FontPlatformData.h: 4203 (WebCore::FontPlatformData::orientation): Add missing implementation. 4204 4205 2010-11-29 Chris Rogers <crogers (a] google.com> 4206 4207 Reviewed by Kenneth Russell. 4208 4209 Switch web audio code to use FloatPoint3D instead of Vector3 4210 https://bugs.webkit.org/show_bug.cgi?id=50186 4211 4212 No new tests since audio API is not yet implemented. 4213 4214 * platform/audio/Cone.cpp: 4215 (WebCore::ConeEffect::gain): 4216 * platform/audio/Cone.h: 4217 * platform/graphics/FloatPoint3D.h: 4218 (WebCore::FloatPoint3D::isZero): 4219 (WebCore::operator*): 4220 (WebCore::FloatPoint3D::distanceTo): 4221 * webaudio/AudioListener.h: 4222 (WebCore::AudioListener::setPosition): 4223 (WebCore::AudioListener::position): 4224 (WebCore::AudioListener::setOrientation): 4225 (WebCore::AudioListener::orientation): 4226 (WebCore::AudioListener::setUpVector): 4227 (WebCore::AudioListener::upVector): 4228 (WebCore::AudioListener::setVelocity): 4229 (WebCore::AudioListener::velocity): 4230 * webaudio/AudioPannerNode.cpp: 4231 (WebCore::AudioPannerNode::AudioPannerNode): 4232 (WebCore::AudioPannerNode::getAzimuthElevation): 4233 (WebCore::AudioPannerNode::dopplerRate): 4234 (WebCore::AudioPannerNode::distanceConeGain): 4235 * webaudio/AudioPannerNode.h: 4236 (WebCore::AudioPannerNode::position): 4237 (WebCore::AudioPannerNode::setPosition): 4238 (WebCore::AudioPannerNode::orientation): 4239 (WebCore::AudioPannerNode::setOrientation): 4240 (WebCore::AudioPannerNode::velocity): 4241 (WebCore::AudioPannerNode::setVelocity): 4242 4243 2010-11-29 Xiaomei Ji <xji (a] chromium.org> 4244 4245 Reviewed by David Hyatt. 4246 4247 Right-to-left pages should be scrollable to reveal left overflow. 4248 https://bugs.webkit.org/show_bug.cgi?id=23556 4249 4250 For RTL page, save left layout overflow and include it into the document 4251 size during layout. Use the left layout overflow when scroll and paint 4252 the page. Behavior on LTR page should be untouched since left layout 4253 overflow is set as 0 for LTR page. 4254 4255 Tests: fast/dom/horizontal-scrollbar-in-rtl-doesnt-fire-onscroll.html 4256 fast/dom/horizontal-scrollbar-in-rtl.html 4257 fast/dom/horizontal-scrollbar-when-dir-change.html 4258 fast/dom/left-overflow-in-ltr.html 4259 fast/dom/right-overflow-in-rtl.html 4260 4261 * page/FrameView.cpp: 4262 (WebCore::FrameView::adjustViewSize): Save negative of left layout overflow as scroll X origin. And includes left layout overflow into document size. 4263 * page/mac/WebCoreFrameView.h: Add methods for setting and getting scroll X origin. 4264 * platform/ScrollView.cpp: 4265 (WebCore::ScrollView::ScrollView): 4266 (WebCore::ScrollView::maximumScrollPosition): Minus scroll X origin from maximum horizontal scroll position. 4267 (WebCore::ScrollView::minimumScrollPosition): 4268 (WebCore::ScrollView::adjustScrollPositionWithinRange): 4269 (WebCore::ScrollView::valueChanged): 4270 (WebCore::ScrollView::setScrollPosition): 4271 (WebCore::ScrollView::updateScrollbars): 4272 (WebCore::ScrollView::wheelEvent): 4273 * platform/ScrollView.h: 4274 * platform/mac/ScrollViewMac.mm: 4275 (WebCore::ScrollView::platformSetContentsSize): 4276 (WebCore::ScrollView::platformSetScrollPosition): 4277 (WebCore::ScrollView::platformSetScrollOriginX): 4278 * rendering/RenderBox.cpp: 4279 (WebCore::RenderBox::styleDidChange): 4280 (WebCore::RenderBox::paintRootBoxDecorations): Include left layout overflow into canvas size. 4281 * rendering/RenderView.cpp: 4282 (WebCore::RenderView::layout): Save left layout overflow. 4283 (WebCore::RenderView::docLeft): 4284 (WebCore::RenderView::docWidth): Include left layout overflow into doc width for RTL page. 4285 * rendering/RenderView.h: 4286 4287 2010-11-29 Simon Fraser <simon.fraser (a] apple.com> 4288 4289 Reviewed by Ojan Vafai. 4290 4291 bunch of pixel failures after http://trac.webkit.org/changeset/72839/ 4292 https://bugs.webkit.org/show_bug.cgi?id=50188 4293 4294 We need to call updateLayerTransform() for reflections, and 4295 table rows as well. 4296 4297 * rendering/RenderReplica.cpp: 4298 (WebCore::RenderReplica::layout): 4299 * rendering/RenderTableRow.cpp: 4300 (WebCore::RenderTableRow::layout): 4301 * rendering/RenderTableSection.cpp: 4302 (WebCore::RenderTableSection::layoutRows): 4303 4304 2010-11-29 Xiaomei Ji <xji (a] chromium.org> 4305 4306 Reviewed by David Hyatt. 4307 4308 Fix tab overflow problem when alignment is not left. 4309 https://bugs.webkit.org/show_bug.cgi?id=25459 4310 4311 I checked WordPad in Windows, TextEdit in Mac, OpenOffice, and Google doc. 4312 In all of them, (when the writing mode is horizontal) when the alignment is not 4313 left alignment, the length of tab is computed based on the tab's position 4314 relative to the left start of line, not based on the tab's position relative 4315 to the left edge of the document. 4316 4317 WebKit should follow the same. 4318 4319 The m_xPos in each TextRun should be relative to the left start of the line, 4320 not left start of its containing block (in right alignment and center alignment, 4321 left start of the line is not the same as left start of the containing block). 4322 So, when the text is drawn, the width of tab is consistent with the width 4323 computed in RenderBlock::computeInlineDirectionPositionsForLine(). 4324 4325 I did not test vertical writing mode, but I think the same rule should apply. 4326 4327 Test: fast/dom/tab-in-right-alignment.html 4328 4329 * platform/graphics/TextRun.h: 4330 * rendering/InlineTextBox.cpp: 4331 (WebCore::InlineTextBox::textPos): 4332 * rendering/InlineTextBox.h: 4333 4334 2010-11-29 Mikhail Naganov <mnaganov (a] chromium.org> 4335 4336 Reviewed by Pavel Feldman. 4337 4338 WebInspector: Request JSON-serialized heap snapshot from JS engine. 4339 This simplifies heap snapshots interaction and API. Instead of 4340 having objects representing snapshot entities, the whole snapshot 4341 is transferred to WebInspector and parsed there. 4342 4343 https://bugs.webkit.org/show_bug.cgi?id=49974 4344 4345 * bindings/js/ScriptHeapSnapshot.h: 4346 (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream): 4347 (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot): 4348 (WebCore::ScriptHeapSnapshot::writeJSON): 4349 (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot): 4350 * bindings/v8/ScriptHeapSnapshot.cpp: 4351 (WebCore::ScriptHeapSnapshot::writeJSON): 4352 * bindings/v8/ScriptHeapSnapshot.h: 4353 (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream): 4354 * inspector/Inspector.idl: 4355 * inspector/InspectorProfilerAgent.cpp: 4356 (WebCore::InspectorProfilerAgent::getProfile): 4357 * inspector/front-end/HeapSnapshotView.js: 4358 (WebInspector.HeapSnapshotEdgesIterator): 4359 (WebInspector.HeapSnapshotEdgesIterator.prototype.get done): 4360 (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement): 4361 (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden): 4362 (WebInspector.HeapSnapshotEdgesIterator.prototype.get name): 4363 (WebInspector.HeapSnapshotEdgesIterator.prototype.next): 4364 (WebInspector.HeapSnapshotEdgesIterator.prototype.get node): 4365 (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex): 4366 (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex): 4367 (WebInspector.HeapSnapshotEdgesIterator.prototype._getType): 4368 (WebInspector.HeapSnapshotNodeWrapper): 4369 (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges): 4370 (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount): 4371 (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount): 4372 (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden): 4373 (WebInspector.HeapSnapshotNodeWrapper.prototype.get name): 4374 (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize): 4375 (WebInspector.HeapSnapshotNodeWrapper.prototype._getName): 4376 (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges): 4377 (WebInspector.HeapSnapshotNodeWrapper.prototype._getType): 4378 (WebInspector.HeapSnapshot): 4379 (WebInspector.HeapSnapshot.prototype._init): 4380 (WebInspector.HeapSnapshot.prototype.get rootEdges): 4381 (WebInspector.HeapSnapshotView.prototype.snapshotLoaded): 4382 (WebInspector.HeapSnapshotView.prototype._loadProfile.processLoadedSnapshot): 4383 (WebInspector.HeapSnapshotView.prototype._loadProfile): 4384 (WebInspector.HeapSnapshotView.prototype._convertSnapshot): 4385 (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers): 4386 (WebInspector.HeapSnapshotView.prototype._prepareProfile): 4387 (WebInspector.HeapSnapshotView.prototype._sortData): 4388 * inspector/front-end/ProfilesPanel.js: 4389 (WebInspector.ProfilesPanel): 4390 (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk): 4391 (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot): 4392 * inspector/front-end/inspector.js: 4393 (WebInspector.addHeapSnapshotChunk): 4394 (WebInspector.finishHeapSnapshot): 4395 4396 2010-11-29 Simon Fraser <simon.fraser (a] apple.com> 4397 4398 Reviewed by Dave Hyatt. 4399 4400 layer()->currentTransform() is stale when layout changes the box size 4401 https://bugs.webkit.org/show_bug.cgi?id=50175 4402 4403 RenderLayer::updateTransform() is fairly expensive, so we 4404 have to avoid calling it from RenderBox::applyLayerTransformToRect() 4405 every time. This requires that we update the layer's transform 4406 during layout, instead of from updateLayerPositions() which is too late. 4407 4408 So call updateLayerTransform() from the various layout methods 4409 on renderers that can be transformed, and remove it from 4410 updateLayerPositions(). 4411 4412 Test: fast/overflow/overflow-update-transform.html 4413 4414 * rendering/RenderBlock.cpp: 4415 (WebCore::RenderBlock::layoutBlock): 4416 (WebCore::RenderBlock::layoutOnlyPositionedObjects): 4417 * rendering/RenderBox.cpp: 4418 (WebCore::RenderBox::applyLayerTransformToRect): 4419 (WebCore::RenderBox::updateLayerTransform): 4420 * rendering/RenderBox.h: 4421 * rendering/RenderEmbeddedObject.cpp: 4422 (WebCore::RenderEmbeddedObject::layout): 4423 * rendering/RenderFlexibleBox.cpp: 4424 (WebCore::RenderFlexibleBox::layoutBlock): 4425 * rendering/RenderIFrame.cpp: 4426 (WebCore::RenderIFrame::layout): 4427 * rendering/RenderLayer.cpp: 4428 (WebCore::RenderLayer::updateLayerPositions): 4429 * rendering/RenderReplaced.cpp: 4430 (WebCore::RenderReplaced::layout): 4431 * rendering/RenderTable.cpp: 4432 (WebCore::RenderTable::layout): 4433 4434 2010-11-29 Chris Rogers <crogers (a] google.com> 4435 4436 Reviewed by Kenneth Russell. 4437 4438 Add remaining custom JSC web audio bindings 4439 https://bugs.webkit.org/show_bug.cgi?id=50172 4440 4441 No new tests since audio API is not yet implemented. 4442 4443 * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added. 4444 (WebCore::JSAudioBufferSourceNode::setBuffer): 4445 * bindings/js/JSConvolverNodeCustom.cpp: Added. 4446 (WebCore::JSConvolverNode::setBuffer): 4447 * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added. 4448 (WebCore::JSJavaScriptAudioNode::markChildren): 4449 * webaudio/AudioBufferSourceNode.idl: 4450 * webaudio/ConvolverNode.idl: 4451 4452 2010-11-29 Yael Aharon <yael.aharon (a] nokia.com> 4453 4454 Reviewed by Darin Adler. 4455 4456 HTMLFormElement.elements doesn't include fieldsets 4457 https://bugs.webkit.org/show_bug.cgi?id=48193 4458 4459 Add fieldset and keygen to the list of form collection elements, by making them enumeratable. 4460 This patch does not add object element to the list. A separate bug will do that. 4461 4462 Test: fast/forms/form-collection-elements.html 4463 4464 * html/HTMLFieldSetElement.h: 4465 (WebCore::HTMLFieldSetElement::isEnumeratable): 4466 * html/HTMLKeygenElement.h: 4467 (WebCore::HTMLKeygenElement::isEnumeratable): 4468 4469 2010-11-29 Xan Lopez <xlopez (a] igalia.com> 4470 4471 Reviewed by Martin Robinson. 4472 4473 Get distcheck going. 4474 4475 * GNUmakefile.am: 4476 4477 2010-11-29 Alexey Proskuryakov <ap (a] apple.com> 4478 4479 Reviewed by Darin Adler. 4480 4481 https://bugs.webkit.org/show_bug.cgi?id=50181 4482 CSS style declarations don't GC protect parents 4483 4484 Test: fast/dom/StyleSheet/gc-declaration-parent-rule.html 4485 4486 * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::markChildren): 4487 Protect the parent rule. 4488 4489 2010-11-29 Ilya Tikhonovsky <loislo (a] chromium.org> 4490 4491 Reviewed by Pavel Feldman. 4492 4493 Web Inspector: UI fix. In Timeline, Paint events "Location" value is displayed 4494 in a confusing manner. The format string should be changed from %d x %d 4495 pattern to (%d, %d). 4496 4497 https://bugs.webkit.org/show_bug.cgi?id=50178 4498 4499 * English.lproj/localizedStrings.js: 4500 * inspector/front-end/TimelinePanel.js: 4501 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): 4502 4503 2010-11-29 Darin Adler <darin (a] apple.com> 4504 4505 Reviewed by Andreas Kling. 4506 4507 Remove a couple unneeded overflow checks 4508 https://bugs.webkit.org/show_bug.cgi?id=49816 4509 4510 * platform/text/TextCodecUTF16.cpp: 4511 (WebCore::TextCodecUTF16::encode): Use an ASSERT instead of 4512 an overflow check with CRASH. 4513 4514 2010-11-29 Tony Chang <tony (a] chromium.org> 4515 4516 Unreviewed, disable warnings again on chromium linux 4517 4518 * WebCore.gyp/WebCore.gyp: 4519 4520 2010-11-29 Cosmin Truta <ctruta (a] chromium.org> 4521 4522 Reviewed by Nikolas Zimmermann. 4523 4524 getBoundingClientRect: Do not truncate the coordinates to integers 4525 https://bugs.webkit.org/show_bug.cgi?id=48110 4526 4527 Remove the float-to-int coordinate conversions inside getBoundingClientRect, 4528 to comply with the CSSOM View Module API. 4529 4530 Tests: fast/dom/Element/getBoundingClientRect.html 4531 fast/dom/Range/getBoundingClientRect.html 4532 svg/zoom/page/zoom-getBoundingClientRect.xhtml 4533 svg/zoom/page/zoom-zoom-coords.xhtml 4534 4535 * dom/ClientRect.cpp: 4536 (WebCore::ClientRect::ClientRect): Added overload to allow a FloatRect argument. 4537 * dom/ClientRect.h: 4538 (WebCore::ClientRect::create): Ditto. 4539 * dom/Element.cpp: 4540 (Element::getBoundingClientRect): Removed conversion from FloatRect to IntRect. 4541 * dom/Range.cpp: 4542 (WebCore::Range::getBoundingClientRect): Ditto. 4543 * rendering/RenderObject.h: 4544 (adjustIntRectForAbsoluteZoom): Removed. 4545 (adjustFloatRectForAbsoluteZoom): Added. 4546 * rendering/style/RenderStyle.h: 4547 (adjustFloatForAbsoluteZoom): Added. 4548 4549 2010-11-29 Dimitri Glazkov <dglazkov (a] chromium.org> 4550 4551 Reviewed by Darin Adler. 4552 4553 Converge means of querying a parent node into one way, which is Node::parentNode. 4554 https://bugs.webkit.org/show_bug.cgi?id=49686 4555 4556 A follow-up to r72259, which explicitly forbids further use of Node::parent by 4557 making it private. 4558 4559 No change in behavior, so no new tests. 4560 4561 * dom/Document.cpp: 4562 (WebCore::Document::styleForElementIgnoringPendingStylesheets): Changed to use parentNode. 4563 (WebCore::Document::hoveredNodeDetached): Ditto. 4564 (WebCore::Document::activeChainNodeDetached): Ditto. 4565 * dom/Node.h: Made Node::parent private. 4566 * page/SpatialNavigation.cpp: 4567 (WebCore::canBeScrolledIntoView): Changed to use parentNode. 4568 * xml/XSLTProcessorQt.cpp: 4569 (WebCore::XSLTProcessor::transformToString): Ditto. 4570 4571 2010-11-29 Tony Chang <tony (a] chromium.org> 4572 4573 Reviewed by James Robinson. 4574 4575 [chromium] try to enable WebCore compiler warnings on linux 4576 https://bugs.webkit.org/show_bug.cgi?id=50168 4577 4578 * WebCore.gyp/WebCore.gyp: 4579 * platform/graphics/chromium/FontLinux.cpp: 4580 (WebCore::TextRunWalker::setPadding): 4581 (WebCore::TextRunWalker::setGlyphXPositions): 4582 (WebCore::glyphIndexForXPositionInScriptRun): 4583 4584 2010-11-29 Alexey Proskuryakov <ap (a] apple.com> 4585 4586 Reviewed by Darin Adler. 4587 4588 https://bugs.webkit.org/show_bug.cgi?id=50165 4589 CSS style rules don't GC protect parents 4590 4591 Tests: fast/dom/StyleSheet/gc-parent-rule.html 4592 fast/dom/StyleSheet/gc-parent-stylesheet.html 4593 4594 * bindings/js/JSCSSRuleCustom.cpp: (WebCore::JSCSSRule::markChildren): Mark parents. The code 4595 is super naive compared to what we have for nodes - but CSSOM has shallow hierarchies, so 4596 it should be OK. 4597 4598 * css/CSSRule.idl: Added CustomMarkFunction. 4599 4600 2010-11-29 Gavin Peters <gavinp (a] chromium.org> 4601 4602 Reviewed by Adam Barth. 4603 4604 Web page can prevent WebKit from loading subresources on other 4605 pages (cache poisoning) 4606 https://bugs.webkit.org/show_bug.cgi?id=35404 4607 4608 Tests: http/tests/misc/unloadable-script.html 4609 loader/reload-subresource-when-type-changes.html 4610 4611 * loader/cache/MemoryCache.cpp: 4612 (WebCore::MemoryCache::requestResource): 4613 4614 2010-11-29 Simon Fraser <simon.fraser (a] apple.com> 4615 4616 Reviewed by Dan Bernstein. 4617 4618 Crash in WebCore::CSSStyleSelector::loadPendingImages 4619 https://bugs.webkit.org/show_bug.cgi?id=50149 4620 4621 Null-check style->boxReflect() when loading pending style images. 4622 4623 Test: fast/reflections/pending-reflection-mask-crash.html 4624 4625 * css/CSSStyleSelector.cpp: 4626 (WebCore::CSSStyleSelector::loadPendingImages): 4627 4628 2010-11-29 Pavel Feldman <pfeldman (a] chromium.org> 4629 4630 Reviewed by Yury Semikhatsky. 4631 4632 Web Inspector: crash upon inspecting user style sheet. 4633 https://bugs.webkit.org/show_bug.cgi?id=50109 4634 4635 * inspector/InspectorStyleSheet.cpp: 4636 (WebCore::InspectorStyleSheet::resourceStyleSheetText): 4637 4638 2010-11-29 Patrick Gansterer <paroga (a] webkit.org> 4639 4640 Reviewed by Adam Roben. 4641 4642 [WINCE] Implement WebCore::directoryName 4643 https://bugs.webkit.org/show_bug.cgi?id=50031 4644 4645 Also fix handling of paths without path separator. 4646 4647 * platform/wince/FileSystemWinCE.cpp: 4648 (WebCore::reverseFindPathSeparator): 4649 (WebCore::makeAllDirectories): 4650 (WebCore::pathGetFileName): 4651 (WebCore::directoryName): 4652 4653 2010-11-29 Patrick Gansterer <paroga (a] webkit.org> 4654 4655 Reviewed by Adam Roben. 4656 4657 Simplify directoryName in FileSystemWin.cpp 4658 https://bugs.webkit.org/show_bug.cgi?id=50028 4659 4660 * platform/win/FileSystemWin.cpp: 4661 (WebCore::directoryName): 4662 4663 2010-11-24 Dimitri Glazkov <dglazkov (a] chromium.org> 4664 4665 Reviewed by Darin Adler. 4666 4667 REGRESSION (r71934): Main search field at Apple tech specs does not accept typing 4668 https://bugs.webkit.org/show_bug.cgi?id=49868 4669 4670 The problem here was that the inner text element of search input was first laid out as 4671 disabled and thus with a 0-height. This would prevent a hit test to ever reach it, even 4672 if it's enabled. 4673 4674 Test: fast/forms/disabled-search-input.html 4675 4676 * rendering/RenderBlock.cpp: 4677 (WebCore::RenderBlock::hasLineIfEmpty): Removed a check for textarea that is no longer necessary. 4678 * rendering/TextControlInnerElements.cpp: 4679 (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty): Added an override to ensure that 4680 an empty inner text element is always one-line high. 4681 4682 2010-11-29 W. James MacLean <wjmaclean (a] chromium.org> 4683 4684 Reviewed by Dirk Schulze. 4685 4686 Large input numbers cause overflow during SVG parsing, leading to crash 4687 https://bugs.webkit.org/show_bug.cgi?id=49546 4688 4689 Values outside the range supported by float lead to Infinity() or NaN() 4690 during parsing, leading to subsequent crashes. Modified 4691 parser to verify number is in the supported range, and return false if not. 4692 4693 Tests: svg/custom/svg-parse-overflow-1.html 4694 svg/custom/svg-parse-overflow-2.html 4695 svg/custom/svg-parse-overflow-3.html 4696 svg/custom/svg-parse-overflow-4.html 4697 svg/custom/svg-parse-overflow-5.html 4698 4699 * svg/SVGParserUtilities.cpp: 4700 (WebCore::isValidRange): 4701 (WebCore::genericParseNumber): 4702 4703 2010-11-29 Yury Semikhatsky <yurys (a] chromium.org> 4704 4705 Reviewed by Pavel Feldman. 4706 4707 Web Inspector: display name of an object constructor as the object's type 4708 https://bugs.webkit.org/show_bug.cgi?id=50063 4709 4710 Name of the function that has created given object is used as the object's 4711 type when it's displayed in the inspector front-end(in case of V8). Before 4712 this change, it was always a value of the object's constructor.name property 4713 which is confusing in some cases(see the test). 4714 4715 Removed check for jsEngine from the InjectedScript.js, all VM-specific code 4716 is now encapsulated on the bindings layer. 4717 4718 Test: inspector/console-object-constructor-name.html 4719 4720 * bindings/js/JSInjectedScriptHostCustom.cpp: 4721 (WebCore::InjectedScriptHost::createInjectedScript): 4722 (WebCore::JSInjectedScriptHost::constructorName): 4723 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 4724 (WebCore::InjectedScriptHost::createInjectedScript): 4725 (WebCore::V8InjectedScriptHost::constructorNameCallback): 4726 * inspector/InjectedScriptHost.idl: 4727 * inspector/front-end/InjectedScript.js: 4728 (injectedScriptConstructor.): 4729 4730 2010-11-29 Jeremy Moskovich <jeremy (a] chromium.org> 4731 4732 Reviewed by Eric Seidel. 4733 4734 https://bugs.webkit.org/show_bug.cgi?id=24346 4735 4736 Remove temporary workaround to load Gears plugin. 4737 4738 * html/HTMLObjectElement.cpp: 4739 (WebCore::HTMLObjectElement::rendererIsNeeded): 4740 4741 2010-11-29 Yael Aharon <yael.aharon (a] nokia.com> 4742 4743 Reviewed by Antonio Gomes. 4744 4745 Spatial Navigation: Store more information in FocusCandidate 4746 https://bugs.webkit.org/show_bug.cgi?id=50153 4747 4748 More information should be stored in FocusCandidate, to avoid 4749 recalculating it when running the spatial navigation algorithm. 4750 4751 No new tests, since this is code refactoring only. 4752 4753 * page/FocusController.cpp: 4754 (WebCore::updateFocusCandidateIfNeeded): 4755 (WebCore::FocusController::findFocusCandidateInContainer): 4756 (WebCore::FocusController::advanceFocusDirectionallyInContainer): 4757 * page/SpatialNavigation.cpp: 4758 (WebCore::FocusCandidate::FocusCandidate): 4759 (WebCore::canBeScrolledIntoView): 4760 * page/SpatialNavigation.h: 4761 (WebCore::FocusCandidate::FocusCandidate): 4762 4763 2010-11-29 Dimitri Glazkov <dglazkov (a] chromium.org> 4764 4765 Reviewed by Darin Adler. 4766 4767 Use the right focusable check to avoid multiple focus/blur events being fired from inside of the shadow DOM. 4768 https://bugs.webkit.org/show_bug.cgi?id=49977 4769 4770 * editing/SelectionController.cpp: 4771 (WebCore::SelectionController::setFocusedNodeIfNeeded): Added a FIXME to remove redundant code. 4772 * page/EventHandler.cpp: 4773 (WebCore::EventHandler::dispatchMouseEvent): Changed to use isMouseFocusable, which is what shadow DOM elements 4774 override, and added a FIXME to convert to use shadow DOM-aware traversal instead of render tree traversal. 4775 4776 Test: fast/events/shadow-boundary-crossing-2.html 4777 4778 2010-11-29 Adam Roben <aroben (a] apple.com> 4779 4780 Windows build fix after r72715 4781 4782 * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag to fix an 4783 XML syntax error. 4784 4785 2010-11-29 Bernhard Bauer <bauerb (a] chromium.org> 4786 4787 Reviewed by Jeremy Orlow. 4788 4789 Remove databaseFileName from IDBFactoryBackendImpl 4790 https://bugs.webkit.org/show_bug.cgi?id=50150 4791 4792 No new tests, since functionality is unchanged. 4793 4794 * storage/IDBFactoryBackendImpl.cpp: 4795 (WebCore::openSQLiteDatabase): 4796 * storage/IDBFactoryBackendImpl.h: 4797 4798 2010-11-29 Philippe Normand <pnormand (a] igalia.com> 4799 4800 Reviewed by Xan Lopez. 4801 4802 [GStreamer] take video sink ownership with gst_object API 4803 https://bugs.webkit.org/show_bug.cgi?id=49011 4804 4805 Use gst_object_ref_sink instead of g_object_ref_sink to avoid 4806 possible leaks. 4807 4808 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 4809 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): 4810 4811 2010-11-29 Jan Erik Hanssen <jhanssen (a] sencha.com> 4812 4813 Reviewed by Kenneth Rohde Christiansen. 4814 4815 QtWebKit asserts when selecting elided text. 4816 https://bugs.webkit.org/show_bug.cgi?id=45391 4817 4818 Ensure that the length passed to fromRawDataWithoutRef() does 4819 not exceed the length of the string. 4820 4821 * platform/graphics/qt/FontQt.cpp: 4822 (WebCore::Font::selectionRectForSimpleText): 4823 4824 2010-11-26 Alexander Pavlov <apavlov (a] chromium.org> 4825 4826 Reviewed by Pavel Feldman. 4827 4828 Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored" 4829 https://bugs.webkit.org/show_bug.cgi?id=31614 4830 4831 * English.lproj/localizedStrings.js: 4832 * inspector/front-end/Color.js: 4833 (WebInspector.Color.prototype.toString): 4834 (WebInspector.Color.prototype._parse.this.rgba.set 0): 4835 (WebInspector.Color.prototype._parse.set WebInspector): 4836 (WebInspector.Color.prototype._parse): 4837 * inspector/front-end/StylesSidebarPane.js: 4838 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat): 4839 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay): 4840 4841 2010-11-29 Helder Correia <helder (a] sencha.com> 4842 4843 Reviewed by Kenneth Rohde Christiansen. 4844 4845 [Qt] fillRect shadow has incorrect behavior when using ctx.scale(x,y) 4846 https://bugs.webkit.org/show_bug.cgi?id=50141 4847 4848 Don't apply scaling transformation to shadow offsets. 4849 4850 Test: fast/canvas/canvas-scale-fillRect-shadow.html 4851 4852 * platform/graphics/ContextShadow.h: 4853 * platform/graphics/qt/ContextShadowQt.cpp: 4854 (WebCore::ContextShadow::beginShadowLayer): 4855 (WebCore::ContextShadow::endShadowLayer): 4856 * platform/graphics/qt/GraphicsContextQt.cpp: 4857 (WebCore::GraphicsContext::fillRect): 4858 4859 2010-11-28 Dimitri Glazkov <dglazkov (a] chromium.org> 4860 4861 Reviewed by Darin Adler. 4862 4863 Default event handlers should also be using event retargeting. 4864 https://bugs.webkit.org/show_bug.cgi?id=49986 4865 4866 Test: fast/events/shadow-boundary-crossing-2.html 4867 4868 * dom/EventContext.cpp: 4869 (WebCore::EventContext::defaultEventHandler): Added. 4870 * dom/EventContext.h: Added decl. 4871 * dom/Node.cpp: 4872 (WebCore::Node::dispatchGenericEvent): Changed to use event retargeting for 4873 default event handlers. 4874 4875 2010-11-23 MORITA Hajime <morrita (a] google.com> 4876 4877 Reviewed by Kent Tamura. 4878 4879 REGRESSION: Text on <input type="search"> is not spellchecked. 4880 https://bugs.webkit.org/show_bug.cgi?id=49651 4881 4882 TextControlInnerElement::isSpellCheckingEnabled() didn't consider 4883 non-root shadow elelements and always went false for <input type="search>. 4884 This change unifies shadow and host handling into Element::isSpellCheckingEnabled(). 4885 4886 Test: editing/spelling/spellcheck-attribute.html 4887 4888 * dom/Element.cpp: 4889 (WebCore::Element::isSpellCheckingEnabled): 4890 * rendering/TextControlInnerElements.cpp: 4891 * rendering/TextControlInnerElements.h: 4892 4893 2010-11-28 Antonio Gomes <agomes (a] rim.com> 4894 4895 Reviewed by Kenneth Rohde Christiansen. 4896 4897 Spatial Navigation: use isSpatialNaviagtionEnabled from SpatialNavigation.h in HTMLInputElement::defaultEventHandler 4898 https://bugs.webkit.org/show_bug.cgi?id=50131 4899 4900 For all isSpatialNavigationEnabled calls throughout WebCore, we decided to use the static method in 4901 SpatialNavigation.h instead of directly checking from the one in Settings.h. Reason: in a soon future, 4902 there will be a isCaretBrowsing check incorporated into this method (and probably renaming it accordingly) 4903 to avoid feature conflicts (spatial navigation x caret browsing). 4904 4905 No new tests needed. 4906 4907 * html/HTMLInputElement.cpp: 4908 (WebCore::HTMLInputElement::defaultEventHandler): 4909 4910 2010-11-27 Benjamin Kalman <kalman (a] chromium.org> 4911 4912 Reviewed by Darin Adler. 4913 4914 Move Position::EditingBoundaryCrossingRule to a new header file 4915 https://bugs.webkit.org/show_bug.cgi?id=49630 4916 4917 * GNUmakefile.am: 4918 * WebCore.exp.in: 4919 * WebCore.gypi: 4920 * WebCore.pro: 4921 * WebCore.vcproj/WebCore.vcproj: 4922 * WebCore.xcodeproj/project.pbxproj: 4923 * dom/Position.cpp: 4924 (WebCore::downstreamIgnoringEditingBoundaries): 4925 (WebCore::upstreamIgnoringEditingBoundaries): 4926 * dom/Position.h: 4927 * editing/DeleteSelectionCommand.cpp: 4928 (WebCore::DeleteSelectionCommand::doApply): 4929 * editing/EditingBoundary.h: Added. 4930 * editing/visible_units.cpp: 4931 (WebCore::startOfParagraph): 4932 (WebCore::endOfParagraph): 4933 (WebCore::isStartOfParagraph): 4934 (WebCore::isEndOfParagraph): 4935 * editing/visible_units.h: 4936 * rendering/RenderObject.cpp: 4937 (WebCore::RenderObject::createVisiblePosition): 4938 4939 2010-11-26 Rob Buis <rwlbuis (a] gmail.com> 4940 4941 Reviewed by Simon Fraser. 4942 4943 Percentage z offset in transform-origin should make the property invalid 4944 https://bugs.webkit.org/show_bug.cgi?id=48704 4945 4946 Discard transform-origin property when parsing invalid Z value. 4947 4948 Test: fast/css/transform-origin-parsing.html 4949 4950 * css/CSSParser.cpp: 4951 (WebCore::CSSParser::parseTransformOriginShorthand): 4952 (WebCore::CSSParser::parseTransformOrigin): 4953 * css/CSSParser.h: 4954 4955 2010-11-26 Dan Bernstein <mitz (a] apple.com> 4956 4957 Reviewed by Antti Koivisto. 4958 4959 <rdar://problem/8681368> Avoid unnecessary calls to CTFontGetPlatformFont() 4960 https://bugs.webkit.org/show_bug.cgi?id=50096 4961 4962 No new test, since functionality is unchanged. 4963 4964 * platform/graphics/chromium/CrossProcessFontLoading.mm: 4965 (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument. 4966 * platform/graphics/cocoa/FontPlatformData.h: 4967 (WebCore::FontPlatformData::FontPlatformData): Ditto. 4968 (WebCore::FontPlatformData::operator==): Removed comparison of font IDs. 4969 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 4970 (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument. 4971 (WebCore::FontPlatformData::FontPlatformData): Updated. 4972 (WebCore::FontPlatformData::operator=): Removed copying of font ID. 4973 (WebCore::FontPlatformData::setFont): Removed setting of font ID. 4974 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: 4975 (WebCore::initializeATSUStyle): Call CTFontGetPlatformFont() here if necessary. 4976 * platform/graphics/mac/FontCustomPlatformData.cpp: 4977 (WebCore::FontCustomPlatformData::fontPlatformData): Updated for FontPlatformData change. 4978 (WebCore::createFontCustomPlatformData): Updated for FontCustomPlatformData change. 4979 * platform/graphics/mac/FontCustomPlatformData.h: 4980 (WebCore::FontCustomPlatformData::FontCustomPlatformData): Removed ATSUFontID argument and 4981 data member. 4982 * platform/graphics/mac/SimpleFontDataATSUI.mm: 4983 (WebCore::SimpleFontData::checkShapesArabic): Call CTFontGetPlatformFont() here if necessary. 4984 4985 2010-11-26 Franois Sausset <sausset (a] gmail.com> 4986 4987 Reviewed by Daniel Bates. 4988 4989 MathML: code cleaning needed in MathMLInlineContainerElement.cpp 4990 https://bugs.webkit.org/show_bug.cgi?id=50069 4991 4992 Unnecessary namespace was removed and style was adjusted. 4993 4994 * mathml/MathMLInlineContainerElement.cpp: 4995 (WebCore::MathMLInlineContainerElement::createRenderer): 4996 4997 2010-11-26 Andrei Popescu <andreip (a] google.com> 4998 4999 Reviewed by Jeremy Orlow. 5000 5001 IDBDatabase and IDBObjectStore remove* methods should be renamed to delete* 5002 https://bugs.webkit.org/show_bug.cgi?id=50113 5003 5004 Modified exisiting layout tests to cover this change. 5005 5006 * storage/IDBDatabase.cpp: 5007 (WebCore::IDBDatabase::deleteObjectStore): 5008 * storage/IDBDatabase.h: 5009 * storage/IDBDatabase.idl: 5010 * storage/IDBDatabaseBackendImpl.cpp: 5011 (WebCore::IDBDatabaseBackendImpl::deleteObjectStore): 5012 (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal): 5013 * storage/IDBDatabaseBackendImpl.h: 5014 * storage/IDBDatabaseBackendInterface.h: 5015 * storage/IDBObjectStore.cpp: 5016 (WebCore::IDBObjectStore::deleteFunction): 5017 (WebCore::IDBObjectStore::deleteIndex): 5018 * storage/IDBObjectStore.h: 5019 * storage/IDBObjectStore.idl: 5020 * storage/IDBObjectStoreBackendImpl.cpp: 5021 (WebCore::IDBObjectStoreBackendImpl::deleteFunction): 5022 (WebCore::IDBObjectStoreBackendImpl::deleteInternal): 5023 (WebCore::IDBObjectStoreBackendImpl::deleteIndex): 5024 (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal): 5025 * storage/IDBObjectStoreBackendImpl.h: 5026 * storage/IDBObjectStoreBackendInterface.h: 5027 5028 2010-11-26 Sheriff Bot <webkit.review.bot (a] gmail.com> 5029 5030 Unreviewed, rolling out r72701. 5031 http://trac.webkit.org/changeset/72701 5032 https://bugs.webkit.org/show_bug.cgi?id=50114 5033 5034 REGRESSION: bad transform matrix on content layer (Requested 5035 by backer on #webkit). 5036 5037 * WebCore.gypi: 5038 * platform/graphics/chromium/Canvas2DLayerChromium.cpp: 5039 (WebCore::Canvas2DLayerChromium::updateContents): 5040 * platform/graphics/chromium/Canvas2DLayerChromium.h: 5041 * platform/graphics/chromium/ContentLayerChromium.cpp: 5042 (WebCore::ContentLayerChromium::cleanupResources): 5043 (WebCore::ContentLayerChromium::updateContents): 5044 (WebCore::ContentLayerChromium::updateTextureRect): 5045 (WebCore::ContentLayerChromium::draw): 5046 * platform/graphics/chromium/ContentLayerChromium.h: 5047 * platform/graphics/chromium/ImageLayerChromium.cpp: 5048 (WebCore::ImageLayerChromium::updateContents): 5049 * platform/graphics/chromium/ImageLayerChromium.h: 5050 * platform/graphics/chromium/LayerChromium.h: 5051 (WebCore::LayerChromium::contentsDirty): 5052 (WebCore::LayerChromium::updateContents): 5053 (WebCore::LayerChromium::draw): 5054 * platform/graphics/chromium/LayerRendererChromium.cpp: 5055 (WebCore::LayerRendererChromium::LayerRendererChromium): 5056 (WebCore::LayerRendererChromium::prepareToDrawLayers): 5057 (WebCore::LayerRendererChromium::drawLayers): 5058 (WebCore::LayerRendererChromium::updateLayersRecursive): 5059 (WebCore::LayerRendererChromium::useRenderSurface): 5060 (WebCore::LayerRendererChromium::drawLayer): 5061 (WebCore::LayerRendererChromium::initializeSharedObjects): 5062 (WebCore::LayerRendererChromium::cleanupSharedObjects): 5063 * platform/graphics/chromium/LayerRendererChromium.h: 5064 * platform/graphics/chromium/LayerTexture.cpp: Removed. 5065 * platform/graphics/chromium/LayerTexture.h: Removed. 5066 * platform/graphics/chromium/PluginLayerChromium.cpp: 5067 (WebCore::PluginLayerChromium::updateContents): 5068 * platform/graphics/chromium/PluginLayerChromium.h: 5069 * platform/graphics/chromium/RenderSurfaceChromium.cpp: 5070 (WebCore::RenderSurfaceChromium::RenderSurfaceChromium): 5071 (WebCore::RenderSurfaceChromium::cleanupResources): 5072 (WebCore::RenderSurfaceChromium::prepareContentsTexture): 5073 * platform/graphics/chromium/RenderSurfaceChromium.h: 5074 * platform/graphics/chromium/TextureManager.cpp: Removed. 5075 * platform/graphics/chromium/TextureManager.h: Removed. 5076 * platform/graphics/chromium/VideoLayerChromium.cpp: 5077 (WebCore::VideoLayerChromium::updateContents): 5078 * platform/graphics/chromium/VideoLayerChromium.h: 5079 * platform/graphics/chromium/WebGLLayerChromium.cpp: 5080 (WebCore::WebGLLayerChromium::updateContents): 5081 * platform/graphics/chromium/WebGLLayerChromium.h: 5082 5083 2010-11-26 Jeremy Orlow <jorlow (a] chromium.org> 5084 5085 Unreviewed build fix. 5086 5087 * storage/IDBIndex.cpp: 5088 (WebCore::IDBIndex::openCursor): 5089 (WebCore::IDBIndex::openKeyCursor): 5090 * storage/IDBObjectStore.cpp: 5091 (WebCore::IDBObjectStore::openCursor): 5092 5093 2010-11-26 Sergio Villar Senin <svillar (a] igalia.com> 5094 5095 Reviewed by Xan Lopez. 5096 5097 [GTK] SoupCache should not ignore loader's conditional requests 5098 https://bugs.webkit.org/show_bug.cgi?id=50101 5099 5100 SoupCache must not handle WebKit loader conditional requests and 5101 thus should never return its own cached response if any. This was 5102 causing frequent resource load failures as WebCore was trying to 5103 revalidate its own resources and was not getting any expected 5104 result. 5105 5106 * platform/network/soup/cache/webkit/soup-cache.c: 5107 (webkit_soup_cache_has_response): check the presence of 5108 conditional request headers when deciding whether the cache has a 5109 valid response for a given request. 5110 5111 2010-11-26 Jeremy Orlow <jorlow (a] chromium.org> 5112 5113 Reviewed by Steve Block. 5114 5115 Make IDBKeyRange match the spec 5116 https://bugs.webkit.org/show_bug.cgi?id=50105 5117 5118 Remove flags and instead add two booleans for being open. 5119 Change left to lower and right to upper everywhere. 5120 5121 * storage/IDBIndexBackendImpl.cpp: 5122 (WebCore::IDBIndexBackendImpl::openCursorInternal): 5123 * storage/IDBKey.cpp: 5124 (WebCore::IDBKey::lowerCursorWhereFragment): 5125 (WebCore::IDBKey::upperCursorWhereFragment): 5126 * storage/IDBKey.h: 5127 * storage/IDBKeyRange.cpp: 5128 (WebCore::IDBKeyRange::IDBKeyRange): 5129 (WebCore::IDBKeyRange::only): 5130 (WebCore::IDBKeyRange::lowerBound): 5131 (WebCore::IDBKeyRange::upperBound): 5132 (WebCore::IDBKeyRange::bound): 5133 (WebCore::IDBKeyRange::lowerWhereClauseComparisonOperator): 5134 (WebCore::IDBKeyRange::upperWhereClauseComparisonOperator): 5135 * storage/IDBKeyRange.h: 5136 (WebCore::IDBKeyRange::create): 5137 (WebCore::IDBKeyRange::lower): 5138 (WebCore::IDBKeyRange::upper): 5139 (WebCore::IDBKeyRange::lowerOpen): 5140 (WebCore::IDBKeyRange::upperOpen): 5141 * storage/IDBKeyRange.idl: 5142 * storage/IDBObjectStoreBackendImpl.cpp: 5143 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal): 5144 5145 2010-11-25 Jeremy Orlow <jorlow (a] chromium.org> 5146 5147 Reviewed by Steve Block. 5148 5149 Convert open*Cursor and createIndex over to using OptionsObject 5150 https://bugs.webkit.org/show_bug.cgi?id=50093 5151 5152 Add IDBKeyRange to OptionsObject's parsing abilities. Switch 5153 more APIs over to using it. 5154 5155 * bindings/v8/OptionsObject.cpp: 5156 (WebCore::OptionsObject::getKeyDOMStringList): 5157 (WebCore::OptionsObject::getKeyKeyRange): 5158 * bindings/v8/OptionsObject.h: 5159 * storage/IDBIndex.cpp: 5160 (WebCore::IDBIndex::openCursor): 5161 (WebCore::IDBIndex::openKeyCursor): 5162 * storage/IDBIndex.h: 5163 (WebCore::IDBIndex::openCursor): 5164 (WebCore::IDBIndex::openKeyCursor): 5165 * storage/IDBIndex.idl: 5166 * storage/IDBObjectStore.cpp: 5167 (WebCore::IDBObjectStore::createIndex): 5168 (WebCore::IDBObjectStore::openCursor): 5169 * storage/IDBObjectStore.h: 5170 (WebCore::IDBObjectStore::createIndex): 5171 (WebCore::IDBObjectStore::openCursor): 5172 * storage/IDBObjectStore.idl: 5173 5174 2010-11-25 Jeremy Orlow <jorlow (a] chromium.org> 5175 5176 Reviewed by Steve Block. 5177 5178 Clean up IDBDatabase.transaction and add checks to IDBTransaction.objectStore 5179 https://bugs.webkit.org/show_bug.cgi?id=50081 5180 5181 IDBDatabase.transaction should use the new optional OptionsObject way 5182 of taking optional paramters. Modify that object to get numbers and 5183 domStringLists from it. Verify that any requested resources exist and 5184 return an exception if not. 5185 5186 When IDBTransaction.objectStore is called, verify that it's one of the 5187 requested resources. Also verify that it still exists. Plumb the 5188 exception code to make this work. 5189 5190 Tests: storage/indexeddb/create-and-remove-object-store.html 5191 storage/indexeddb/transaction-and-objectstore-calls.html 5192 5193 * bindings/v8/OptionsObject.cpp: 5194 (WebCore::OptionsObject::getKeyInteger): 5195 (WebCore::OptionsObject::getKeyString): 5196 (WebCore::OptionsObject::getKeyDOMStringList): 5197 * bindings/v8/OptionsObject.h: 5198 * storage/IDBDatabase.cpp: 5199 (WebCore::IDBDatabase::createObjectStore): 5200 (WebCore::IDBDatabase::transaction): 5201 * storage/IDBDatabase.h: 5202 (WebCore::IDBDatabase::transaction): 5203 * storage/IDBDatabase.idl: 5204 * storage/IDBDatabaseBackendImpl.cpp: 5205 (WebCore::IDBDatabaseBackendImpl::transaction): 5206 * storage/IDBTransaction.cpp: 5207 (WebCore::IDBTransaction::objectStore): 5208 * storage/IDBTransactionBackendImpl.cpp: 5209 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 5210 (WebCore::IDBTransactionBackendImpl::objectStore): 5211 * storage/IDBTransactionBackendImpl.h: 5212 * storage/IDBTransactionBackendInterface.h: 5213 5214 2010-11-26 Mario Sanchez Prada <msanchez (a] igalia.com> 5215 5216 Reviewed by Xan Lopez. 5217 5218 [GTK] events missing when a document is (re)loaded 5219 https://bugs.webkit.org/show_bug.cgi?id=25831 5220 5221 Make sure webArea returns a proper name and that a signal 5222 'state-change::defunct' is emitted when detaching the wrapper. 5223 5224 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 5225 (webkit_accessible_get_name): Returns the current document's title 5226 as fallback mechanism for webArea objects. 5227 (webkit_accessible_detach): Emit 'state-change::defunct' function 5228 as soon as the wrapper is detached from the related core object. 5229 5230 2010-11-26 Sergio Villar Senin <svillar (a] igalia.com> 5231 5232 Reviewed by Xan Lopez. 5233 5234 [Gtk] ASSERT(d->m_response.isNull()) in contentSniffedCallback 5235 https://bugs.webkit.org/show_bug.cgi?id=50083 5236 5237 ResourceHandleSoup should not listen to content-sniffed signal 5238 when content sniffing is not enabled. This will prevent us 5239 reaching an assertion on content-sniffed callback 5240 5241 * platform/network/soup/ResourceHandleSoup.cpp: 5242 (WebCore::startHttp): 5243 * platform/network/soup/cache/soup-request-http.c: 5244 (conditional_get_ready_cb): added a comment with the 5245 possible fix for a pure libsoup HTTP cache. 5246 (send_async_cb): prevent an early object finalization adding a 5247 reference. 5248 (webkit_soup_request_http_send_async): Ditto. 5249 5250 2010-11-26 Renata Hodovan <reni (a] inf.u-szeged.hu> 5251 5252 Reviewed by Antonio Gomes. 5253 5254 [Qt] Remove empty ScrollView::platformInit/platformDestroy 5255 https://bugs.webkit.org/show_bug.cgi?id=50079 5256 5257 No new test is needed. 5258 5259 * platform/ScrollView.cpp: 5260 (WebCore::ScrollView::wheelEvent): 5261 * platform/qt/ScrollViewQt.cpp: 5262 5263 2010-11-26 Pavel Feldman <pfeldman (a] chromium.org> 5264 5265 Not reviewed. Fixing inspector tests. 5266 5267 * inspector/front-end/Resource.js: 5268 (WebInspector.Resource.prototype.set timing): 5269 5270 2010-11-25 Pavel Feldman <pfeldman (a] chromium.org> 5271 5272 Reviewed by Yury Semikhatsky. 5273 5274 Web Inspector: UI polish for Network and Resources panels. 5275 https://bugs.webkit.org/show_bug.cgi?id=50100 5276 5277 - Fixed timing inconsistencies 5278 - Made grid user-selectable 5279 - Selection in network panel is made on name column only 5280 5281 * inspector/front-end/NetworkPanel.js: 5282 (WebInspector.NetworkPanel): 5283 (WebInspector.NetworkPanel.prototype._toggleGridMode): 5284 (WebInspector.NetworkDataGridNode.prototype.createCells): 5285 (WebInspector.NetworkDataGridNode.prototype.select): 5286 (WebInspector.NetworkDataGridNode.prototype.get selectable): 5287 (WebInspector.NetworkDataGridNode.prototype._createTimelineCell): 5288 (WebInspector.NetworkDataGridNode.prototype.refreshGraph): 5289 (WebInspector.NetworkDataGridNode.prototype._refreshLabelPositions): 5290 * inspector/front-end/Popover.js: 5291 (WebInspector.PopoverHelper): 5292 (WebInspector.PopoverHelper.prototype.setTimeout): 5293 (WebInspector.PopoverHelper.prototype._mouseMove): 5294 (WebInspector.PopoverHelper.prototype._handleMouseAction): 5295 * inspector/front-end/Resource.js: 5296 (WebInspector.Resource.prototype.get responseReceivedTime): 5297 (WebInspector.Resource.prototype.set endTime): 5298 (WebInspector.Resource.prototype.set timing): 5299 * inspector/front-end/ResourceManager.js: 5300 (WebInspector.ResourceManager.prototype.didReceiveResponse): 5301 (WebInspector.ResourceManager.prototype.didFinishLoading): 5302 * inspector/front-end/ResourcesPanel.js: 5303 (WebInspector.FrameResourceTreeElement.prototype._ondragstart): 5304 * inspector/front-end/networkPanel.css: 5305 (.network-sidebar .data-grid td:not(.network-summary)): 5306 (.network-sidebar .data-grid td.name-column): 5307 (.network.panel:not(.viewing-resource) .network-sidebar td.name-column:hover): 5308 (.network-timing-row): 5309 (.network-timing-bar): 5310 (.network-timing-bar-title): 5311 (.resource-timing-view): 5312 5313 2010-11-26 Helder Correia <helder (a] sencha.com> 5314 5315 Reviewed by Ariya Hidayat. 5316 5317 [Qt] Blur shadow for rectangle fill 5318 https://bugs.webkit.org/show_bug.cgi?id=44488 5319 5320 Shadow color opacity needs to be set when blurring shadow with 5321 ContextShadow. 5322 5323 Test: fast/canvas/canvas-fillRect-shadow.html 5324 5325 * platform/graphics/qt/GraphicsContextQt.cpp: 5326 (WebCore::GraphicsContext::fillRect): 5327 5328 2010-11-26 Hans Wennborg <hans (a] chromium.org> 5329 5330 Reviewed by Jeremy Orlow. 5331 5332 IndexedDB: Rename IDBDatabase.objectStores to objectStoreNames 5333 https://bugs.webkit.org/show_bug.cgi?id=50102 5334 5335 Rename as per the spec: http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#database-interface 5336 5337 * manual-tests/indexeddb-persists.html: 5338 * storage/IDBDatabase.h: 5339 (WebCore::IDBDatabase::objectStoreNames): 5340 * storage/IDBDatabase.idl: 5341 * storage/IDBDatabaseBackendImpl.cpp: 5342 (WebCore::IDBDatabaseBackendImpl::objectStoreNames): 5343 (WebCore::IDBDatabaseBackendImpl::setVersion): 5344 (WebCore::IDBDatabaseBackendImpl::transaction): 5345 * storage/IDBDatabaseBackendImpl.h: 5346 * storage/IDBDatabaseBackendInterface.h: 5347 5348 2010-11-26 Andrei Popescu <andreip (a] google.com> 5349 5350 Reviewed by Jeremy Orlow. 5351 5352 IDBFactory::open should not have a description argument. 5353 https://bugs.webkit.org/show_bug.cgi?id=50087 5354 5355 Modified exisiting tests to cover this change. 5356 5357 * storage/IDBDatabaseBackendImpl.cpp: 5358 (WebCore::setMetaData): 5359 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 5360 (WebCore::IDBDatabaseBackendImpl::setVersionInternal): 5361 * storage/IDBDatabaseBackendImpl.h: 5362 (WebCore::IDBDatabaseBackendImpl::create): 5363 * storage/IDBDatabaseBackendInterface.h: 5364 * storage/IDBFactory.cpp: 5365 (WebCore::IDBFactory::open): 5366 * storage/IDBFactory.h: 5367 * storage/IDBFactory.idl: 5368 * storage/IDBFactoryBackendImpl.cpp: 5369 (WebCore::IDBFactoryBackendImpl::open): 5370 * storage/IDBFactoryBackendImpl.h: 5371 * storage/IDBFactoryBackendInterface.h: 5372 5373 2010-11-25 Kenichi Ishibashi <bashi (a] google.com> 5374 5375 Reviewed by Kent Tamura. 5376 5377 Assertion failure by resetting <output> twice 5378 https://bugs.webkit.org/show_bug.cgi?id=50095 5379 5380 Don't call setTextContentInternal() when the value wouldn't 5381 be changed. 5382 5383 Test: fast/forms/output-reset-assertion-failed.html 5384 5385 * html/HTMLOutputElement.cpp: 5386 (WebCore::HTMLOutputElement::HTMLOutputElement): Calls 5387 setTextContentInternal() if and only if needed. 5388 (WebCore::HTMLOutputElement::reset): Ditto. 5389 (WebCore::HTMLOutputElement::setValue): Ditto. 5390 (WebCore::HTMLOutputElement::setDefaultValue): Ditto. 5391 5392 2010-11-24 Ryosuke Niwa <rniwa (a] webkit.org> 5393 5394 Crash when moving caret around a word with a first-letter rule and whitespace is not collapsible. 5395 https://bugs.webkit.org/show_bug.cgi?id=49652 5396 5397 Fixed the crash by giving the correct end offset to emitText in handleTextNode. 5398 5399 This patch does not fix a bug in TextIterator that incorrectly calculates 5400 the end offset of a word with a first-letter rule as demonstrated in the layout test 5401 because fixing the bug requires an overhaul of TextIterator and new behavior is consistent 5402 with the case when whitespace is collapsible. 5403 5404 Test: editing/text-iterator/first-letter-word-boundary.html 5405 5406 * editing/TextIterator.cpp: 5407 (WebCore::TextIterator::handleTextNode): 5408 5409 2010-11-25 Mike Lawther <mikelawther (a] chromium.org> 5410 5411 Reviewed by Kent Tamura. 5412 5413 Fix typos in CSS grammar (HERZ -> HERTZ) 5414 https://bugs.webkit.org/show_bug.cgi?id=50094 5415 5416 * css/CSSGrammar.y: 5417 * css/CSSParser.cpp: 5418 (WebCore::CSSParser::lex): 5419 * css/tokenizer.flex: 5420 5421 2010-11-25 Antti Koivisto <antti (a] apple.com> 5422 5423 Reviewed by Dan Bernstein. 5424 5425 https://bugs.webkit.org/show_bug.cgi?id=50078 5426 Simplify CachedResource error handling code by getting rid of the m_httpStatusCodeErrorOccurred boolean. 5427 5428 * loader/cache/CachedImage.cpp: 5429 (WebCore::CachedImage::CachedImage): 5430 * loader/cache/CachedImage.h: 5431 (WebCore::CachedImage::shouldIgnoreHTTPStatusCodeErrors): 5432 * loader/cache/CachedResource.h: 5433 (WebCore::CachedResource::shouldIgnoreHTTPStatusCodeErrors): 5434 (WebCore::CachedResource::httpStatusCodeErrorOccurred): 5435 * loader/loader.cpp: 5436 (WebCore::Loader::didReceiveData): 5437 5438 2010-11-25 Andreas Kling <kling (a] webkit.org> 5439 5440 Reviewed by Tor Arne Vestb. 5441 5442 [Qt] Remove unnecessary save/restore in GraphicsContext::drawConvexPolygon() 5443 https://bugs.webkit.org/show_bug.cgi?id=50085 5444 5445 * platform/graphics/qt/GraphicsContextQt.cpp: 5446 (WebCore::GraphicsContext::drawConvexPolygon): 5447 Remember the previous antialiasing mode and reset it after we're done. 5448 5449 2010-11-25 Ben Murdoch <benm (a] google.com> 5450 5451 Reviewed by Steve Block. 5452 5453 Potential crash in JavaClassV8.cpp 5454 https://bugs.webkit.org/show_bug.cgi?id=50016 5455 5456 It is possible that we attempt to free uninitialised 5457 memory in the JavaClass destrctor when using V8 in the 5458 case that the JVM could not find the class in the constructor. 5459 5460 It turns out that the troublesome m_name is not acutally 5461 used anywhere, so we remove it in this patch. 5462 5463 No new tests, just removing dead code. 5464 5465 * bridge/jni/v8/JavaClassV8.cpp: Remove unused m_name. 5466 * bridge/jni/v8/JavaClassV8.h: Ditto. 5467 5468 2010-11-25 Hans Wennborg <hans (a] chromium.org> 5469 5470 Reviewed by Jeremy Orlow. 5471 5472 IndexedDB: Better errors for not yet implemented features 5473 https://bugs.webkit.org/show_bug.cgi?id=50075 5474 5475 Raise an exception if createObjectStore is called with autoIncrement 5476 set to true. 5477 5478 Be a little bit more explicit in IDBBindingUtilities that we don't 5479 allow using Date objects as keys yet. 5480 5481 * bindings/v8/IDBBindingUtilities.cpp: 5482 (WebCore::createIDBKeyFromValue): 5483 * storage/IDBDatabase.cpp: 5484 (WebCore::IDBDatabase::createObjectStore): 5485 * storage/IDBObjectStoreBackendImpl.cpp: 5486 (WebCore::IDBObjectStoreBackendImpl::putInternal): 5487 5488 2010-11-25 Pavel Feldman <pfeldman (a] chromium.org> 5489 5490 Reviewed by Yury Semikhatsky. 5491 5492 Web Inspector: highlight diffs of revisions against base version. 5493 https://bugs.webkit.org/show_bug.cgi?id=50088 5494 5495 * inspector/front-end/CSSStyleModel.js: 5496 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): 5497 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 5498 * inspector/front-end/ResourcesPanel.js: 5499 (WebInspector.ResourcesPanel): 5500 (WebInspector.ResourcesPanel.prototype.show): 5501 (WebInspector.ResourcesPanel.prototype._showResourceView.callback): 5502 (WebInspector.ResourcesPanel.prototype._showResourceView): 5503 (WebInspector.ResourcesPanel.prototype._applyDiffMarkup): 5504 (WebInspector.FrameResourceTreeElement.prototype._contentChanged): 5505 * inspector/front-end/SourceFrame.js: 5506 (WebInspector.SourceFrame.prototype.markDiff): 5507 (WebInspector.SourceFrame.prototype._createViewerIfNeeded): 5508 (WebInspector.SourceFrame.prototype._updateDiffDecorations.addDecorations): 5509 (WebInspector.SourceFrame.prototype._updateDiffDecorations): 5510 (WebInspector.SourceFrame.prototype._removeDiffDecorations): 5511 * inspector/front-end/SourceView.js: 5512 * inspector/front-end/textViewer.css: 5513 (.webkit-line-number): 5514 (.diff-container .webkit-added-line .webkit-line-content): 5515 (.diff-container .webkit-removed-line .webkit-line-content): 5516 (.diff-container .webkit-changed-line .webkit-line-content): 5517 * inspector/front-end/utilities.js: 5518 5519 2010-11-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 5520 5521 Unreviewed, rolling out r72732. 5522 http://trac.webkit.org/changeset/72732 5523 https://bugs.webkit.org/show_bug.cgi?id=50089 5524 5525 Made Qt bot sad and crashy (Requested by Ossy on #webkit). 5526 5527 * platform/network/qt/QNetworkReplyHandler.cpp: 5528 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 5529 * platform/network/qt/QNetworkReplyHandler.h: 5530 * platform/network/qt/ResourceHandleQt.cpp: 5531 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 5532 (WebCore::WebCoreSynchronousLoader::didFail): 5533 (WebCore::ResourceHandle::loadResourceSynchronously): 5534 5535 2010-11-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 5536 5537 Unreviewed, rolling out r72734. 5538 http://trac.webkit.org/changeset/72734 5539 https://bugs.webkit.org/show_bug.cgi?id=50086 5540 5541 Backing out 72732 which made Qt sad and crashy (Requested by 5542 kling on #webkit). 5543 5544 * platform/network/qt/ResourceHandleQt.cpp: 5545 (WebCore::ResourceHandle::loadResourceSynchronously): 5546 5547 2010-11-25 Andreas Kling <kling (a] webkit.org> 5548 5549 Unreviewed crash fix for Qt 4.6.x. 5550 5551 Check that QNetworkReplyHandler::reply() doesn't return null before 5552 using it (this code needs to work for Qt 4.6 as well.) 5553 5554 * platform/network/qt/ResourceHandleQt.cpp: 5555 (WebCore::ResourceHandle::loadResourceSynchronously): 5556 5557 2010-11-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 5558 5559 Unreviewed, rolling out r72727. 5560 http://trac.webkit.org/changeset/72727 5561 https://bugs.webkit.org/show_bug.cgi?id=50084 5562 5563 Broke dom-breakpoints test on chromium win (Requested by 5564 podivilov on #webkit). 5565 5566 * inspector/InspectorController.cpp: 5567 (WebCore::InspectorController::setNativeBreakpoint): 5568 * inspector/InspectorDOMAgent.cpp: 5569 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 5570 (WebCore::InspectorDOMAgent::discardBindings): 5571 (WebCore::InspectorDOMAgent::setDOMBreakpoint): 5572 (WebCore::InspectorDOMAgent::removeDOMBreakpoint): 5573 (WebCore::InspectorDOMAgent::descriptionForDOMEvent): 5574 (WebCore::InspectorDOMAgent::removeBreakpointsForNode): 5575 (WebCore::InspectorDOMAgent::createBreakpointId): 5576 * inspector/InspectorDOMAgent.h: 5577 * inspector/front-end/BreakpointManager.js: 5578 (WebInspector.BreakpointManager.prototype.reset): 5579 (WebInspector.BreakpointManager.prototype.createDOMBreakpoint): 5580 (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings): 5581 (WebInspector.BreakpointManager.prototype.restoreBreakpoints): 5582 (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints): 5583 (WebInspector.DOMBreakpoint): 5584 (WebInspector.DOMBreakpoint.prototype.populateLabelElement): 5585 (WebInspector.EventListenerBreakpoint): 5586 (WebInspector.XHRBreakpoint): 5587 * inspector/front-end/BreakpointsSidebarPane.js: 5588 (WebInspector.BreakpointsSidebarPane): 5589 (WebInspector.BreakpointsSidebarPane.prototype.reset): 5590 (WebInspector.EventListenerBreakpointsSidebarPane): 5591 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset): 5592 * inspector/front-end/DOMAgent.js: 5593 (WebInspector.DOMAgent.prototype._setDocument): 5594 * inspector/front-end/ElementsPanel.js: 5595 (WebInspector.ElementsPanel.prototype.reset): 5596 * inspector/front-end/ElementsTreeOutline.js: 5597 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction): 5598 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 5599 * inspector/front-end/ScriptsPanel.js: 5600 (WebInspector.ScriptsPanel.prototype.reset): 5601 * inspector/front-end/inspector.js: 5602 (WebInspector.reset): 5603 (WebInspector.didCommitLoad): 5604 5605 2010-11-25 Peter Hartmann <peter.hartmann (a] nokia.com> 5606 5607 Reviewed by Andreas Kling. 5608 5609 [Qt] enable usage of synchronous HTTP feature in Qt 5610 https://bugs.webkit.org/show_bug.cgi?id=37191 5611 5612 Currently, we spin an event loop when doing synchronous calls to 5613 wait for completion. This patch uses synchronous requests in Qt, 5614 if available, and spins the event loop as a fallback solution. 5615 Patch by Simon Hausmann and Peter Hartmann. 5616 5617 * platform/network/qt/QNetworkReplyHandler.cpp: 5618 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 5619 * platform/network/qt/QNetworkReplyHandler.h: 5620 * platform/network/qt/ResourceHandleQt.cpp: 5621 (WebCore::WebCoreSynchronousLoader::setReplyFinished): 5622 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): 5623 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 5624 (WebCore::WebCoreSynchronousLoader::didFail): 5625 (WebCore::WebCoreSynchronousLoader::waitForCompletion): 5626 (WebCore::ResourceHandle::loadResourceSynchronously): 5627 5628 2010-11-25 Hans Wennborg <hans (a] chromium.org> 5629 5630 Reviewed by Jeremy Orlow. 5631 5632 V8 Bindings: remove faulty include in OptionsObject.h 5633 https://bugs.webkit.org/show_bug.cgi?id=50073 5634 5635 There is no <wtf/NonCopyable.h>, and the code doesn't try to use it 5636 either. 5637 5638 No new functionality, no new tests. 5639 5640 * bindings/v8/OptionsObject.h: 5641 5642 2010-11-25 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 5643 5644 Reviewed by Simon Hausmann. 5645 5646 Actually handle targetDensityDpi in computeViewportAttributes 5647 https://bugs.webkit.org/show_bug.cgi?id=50068 5648 5649 * dom/ViewportArguments.cpp: 5650 (WebCore::computeViewportAttributes): 5651 5652 2010-11-25 Jeremy Orlow <jorlow (a] chromium.org> 5653 5654 Reviewed by Steve Block. 5655 5656 Add an OptionsObject class for IndexedDB (and later Geolocation) 5657 https://bugs.webkit.org/show_bug.cgi?id=50030 5658 5659 Geolocation and IndexedDB both have the concept of an optional 5660 parameter that has various options supplied with it. In 5661 Geolocation this was done with custom bindings, but I'm trying to 5662 avoid that for IndexedDB. 5663 5664 This first patch implements it in V8 and makes createObjectStore use it. 5665 The next patch will cover Geolocation and JSC. 5666 5667 Test: storage/indexeddb/create-object-store-options.html 5668 5669 * WebCore.gypi: 5670 * bindings/scripts/CodeGeneratorV8.pm: 5671 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 5672 (WebDOMTestObj::optionsObject): 5673 * bindings/scripts/test/CPP/WebDOMTestObj.h: 5674 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 5675 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 5676 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: 5677 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 5678 (webkit_dom_test_obj_options_object): 5679 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 5680 * bindings/scripts/test/JS/JSTestObj.cpp: 5681 (WebCore::jsTestObjPrototypeFunctionOptionsObject): 5682 * bindings/scripts/test/JS/JSTestObj.h: 5683 * bindings/scripts/test/ObjC/DOMTestObj.h: 5684 * bindings/scripts/test/ObjC/DOMTestObj.mm: 5685 (-[DOMTestObj optionsObject:ooo:]): 5686 * bindings/scripts/test/TestObj.idl: 5687 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: 5688 (WebCore::ConfigureV8TestMediaQueryListListenerTemplate): 5689 * bindings/scripts/test/V8/V8TestObj.cpp: 5690 (WebCore::TestObjInternal::optionsObjectCallback): 5691 * bindings/v8/OptionsObject.cpp: Added. 5692 (WebCore::OptionsObject::OptionsObject): 5693 (WebCore::OptionsObject::~OptionsObject): 5694 (WebCore::OptionsObject::operator=): 5695 (WebCore::OptionsObject::undefinedOrNull): 5696 (WebCore::OptionsObject::getKeyBool): 5697 (WebCore::OptionsObject::getKeyString): 5698 (WebCore::OptionsObject::getKey): 5699 * bindings/v8/OptionsObject.h: 5700 * bindings/js/OptionsObject.h: 5701 * storage/IDBDatabase.cpp: 5702 (WebCore::IDBDatabase::createObjectStore): 5703 * storage/IDBDatabase.h: 5704 (WebCore::IDBDatabase::createObjectStore): 5705 * storage/IDBDatabase.idl: 5706 5707 2010-11-24 Pavel Podivilov <podivilov (a] chromium.org> 5708 5709 Reviewed by Yury Semikhatsky. 5710 5711 Web Inspector: set DOM breakpoints by path. 5712 https://bugs.webkit.org/show_bug.cgi?id=50017 5713 5714 This change is needed to be able to push DOM breakpoints for all URL's to backend 5715 at frontend load. 5716 5717 * inspector/InspectorController.cpp: 5718 (WebCore::InspectorController::setNativeBreakpoint): 5719 * inspector/InspectorDOMAgent.cpp: 5720 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 5721 (WebCore::InspectorDOMAgent::discardBindings): 5722 (WebCore::InspectorDOMAgent::setDOMBreakpoint): 5723 (WebCore::InspectorDOMAgent::removeDOMBreakpoint): 5724 (WebCore::InspectorDOMAgent::descriptionForDOMEvent): 5725 (WebCore::InspectorDOMAgent::removeBreakpointsForNode): 5726 * inspector/InspectorDOMAgent.h: 5727 * inspector/front-end/BreakpointManager.js: 5728 (WebInspector.BreakpointManager.prototype.reset): 5729 (WebInspector.BreakpointManager.prototype.createDOMBreakpoint): 5730 (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings): 5731 (WebInspector.BreakpointManager.prototype.restoreBreakpoints): 5732 (WebInspector.DOMBreakpoint): 5733 (WebInspector.DOMBreakpoint.prototype._setNodeId): 5734 (WebInspector.DOMBreakpoint.prototype.populateLabelElement): 5735 (WebInspector.EventListenerBreakpoint): 5736 (WebInspector.XHRBreakpoint): 5737 * inspector/front-end/BreakpointsSidebarPane.js: 5738 (WebInspector.BreakpointsSidebarPane): 5739 (WebInspector.BreakpointsSidebarPane.prototype._reset): 5740 (WebInspector.EventListenerBreakpointsSidebarPane): 5741 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._reset): 5742 * inspector/front-end/DOMAgent.js: 5743 (WebInspector.DOMAgent.prototype._setDocument): 5744 * inspector/front-end/ElementsPanel.js: 5745 (WebInspector.ElementsPanel.prototype.reset): 5746 * inspector/front-end/ElementsTreeOutline.js: 5747 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction): 5748 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 5749 * inspector/front-end/ScriptsPanel.js: 5750 (WebInspector.ScriptsPanel.prototype.reset): 5751 * inspector/front-end/inspector.js: 5752 (WebInspector.reset): 5753 (WebInspector.didCommitLoad): 5754 5755 2010-11-25 Pavel Feldman <pfeldman (a] chromium.org> 5756 5757 Reviewed by Yury Semikhatsky. 5758 5759 Web Inspector: reuse code for recreating resource views. 5760 https://bugs.webkit.org/show_bug.cgi?id=50066 5761 5762 * inspector/front-end/NetworkItemView.js: 5763 (WebInspector.NetworkItemView): 5764 * inspector/front-end/NetworkPanel.js: 5765 (WebInspector.NetworkPanel.prototype.refreshResource): 5766 * inspector/front-end/ResourceManager.js: 5767 (WebInspector.ResourceManager.resourceViewTypeMatchesResource): 5768 (WebInspector.ResourceManager.resourceViewForResource): 5769 (WebInspector.ResourceManager.recreateResourceView): 5770 * inspector/front-end/ResourcesPanel.js: 5771 (WebInspector.FrameResourceTreeElement.prototype._contentChanged): 5772 5773 2010-11-25 Hans Wennborg <hans (a] chromium.org> 5774 5775 Reviewed by Jeremy Orlow. 5776 5777 IndexedDB: Disallow inserting records with NULL keys 5778 https://bugs.webkit.org/show_bug.cgi?id=50033 5779 5780 Disallow inserting records with null keys into the object store. 5781 5782 * storage/IDBKey.h: 5783 * storage/IDBObjectStoreBackendImpl.cpp: 5784 (WebCore::IDBObjectStoreBackendImpl::putInternal): 5785 5786 2010-11-25 Philippe Normand <pnormand (a] igalia.com> 5787 5788 Rubber-stamped by Xan Lopez. 5789 5790 g_signal_accumulator_first_wins was introduced in glib 2.27.1 so 5791 no need to use our version if that version of glib is used during 5792 the build. 5793 5794 * platform/gtk/GtkVersioning.c: 5795 * platform/gtk/GtkVersioning.h: 5796 5797 2010-11-24 Jian Li <jianli (a] chromium.org> 5798 5799 Reviewed by Kenneth Russell. 5800 5801 Implement DataView interface from Typed Array specification 5802 https://bugs.webkit.org/show_bug.cgi?id=46541 5803 5804 Test: fast/canvas/webgl/data-view-test.html 5805 5806 * CMakeLists.txt: 5807 * DerivedSources.make: 5808 * GNUmakefile.am: 5809 * WebCore.gypi: 5810 * WebCore.pri: 5811 * WebCore.pro: 5812 * WebCore.xcodeproj/project.pbxproj: 5813 * bindings/generic/RuntimeEnabledFeatures.h: 5814 (WebCore::RuntimeEnabledFeatures::dataViewEnabled): 5815 * bindings/js/JSArrayBufferViewHelper.h: 5816 (WebCore::constructArrayBufferViewWithArrayBufferArgument): 5817 (WebCore::constructArrayBufferView): 5818 * bindings/js/JSDOMWindowCustom.cpp: 5819 (WebCore::JSDOMWindow::dataView): 5820 * bindings/js/JSDataViewCustom.cpp: Added. 5821 * bindings/js/JSFloat32ArrayCustom.cpp: 5822 (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array): 5823 * bindings/js/JSInt16ArrayCustom.cpp: 5824 (WebCore::JSInt16ArrayConstructor::constructJSInt16Array): 5825 * bindings/js/JSInt32ArrayCustom.cpp: 5826 (WebCore::JSInt32ArrayConstructor::constructJSInt32Array): 5827 * bindings/js/JSInt8ArrayCustom.cpp: 5828 (WebCore::JSInt8ArrayConstructor::constructJSInt8Array): 5829 * bindings/js/JSUint16ArrayCustom.cpp: 5830 (WebCore::JSUint16ArrayConstructor::constructJSUint16Array): 5831 * bindings/js/JSUint32ArrayCustom.cpp: 5832 (WebCore::JSUint32ArrayConstructor::constructJSUint32Array): 5833 * bindings/js/JSUint8ArrayCustom.cpp: 5834 (WebCore::JSUint8ArrayConstructor::constructJSUint8Array): 5835 * bindings/v8/custom/V8ArrayBufferViewCustom.h: 5836 (WebCore::constructWebGLArrayWithArrayBufferArgument): 5837 (WebCore::constructWebGLArray): 5838 * bindings/v8/custom/V8DataViewCustom.cpp: Added. 5839 * html/canvas/ArrayBufferView.h: 5840 (WebCore::ArrayBufferView::isDataView): 5841 * html/canvas/DataView.cpp: Added. 5842 * html/canvas/DataView.h: Added. 5843 * html/canvas/DataView.idl: Added. 5844 * page/DOMWindow.idl: 5845 5846 2010-11-24 Nicolas Dufresne <nicolas.dufresne (a] collabora.co.uk> 5847 5848 Reviewed by Martin Robinson. 5849 5850 [GTK] Windowless plugins gets broken key input 5851 https://bugs.webkit.org/show_bug.cgi?id=49927 5852 5853 When converting the GdkEvent to XEvent we need to send the 5854 hardware_keycode as XEvent::keycode. Instead we where sending 5855 the GdkEvent::keyval. This is already tested by 5856 plugins/keyboard-events.html, but a bug in the test plugin was 5857 resulting in false positive. 5858 5859 * plugins/gtk/PluginViewGtk.cpp: 5860 (WebCore::PluginView::handleKeyboardEvent): 5861 5862 2010-11-24 Eric Uhrhane <ericu (a] chromium.org> 5863 5864 Reviewed by David Levin. 5865 5866 Implement FileWriterSync 5867 https://bugs.webkit.org/show_bug.cgi?id=49939 5868 5869 Tests to follow in a separate CL, once the test framework in 47680 goes in. 5870 5871 Build file changes to add FileWriterBase and FileWriterBaseCallback. 5872 * CMakeLists.txt: 5873 * GNUmakefile.am: 5874 * WebCore.gypi: 5875 * WebCore.pro: 5876 * WebCore.vcproj/WebCore.vcproj: 5877 * WebCore.xcodeproj/project.pbxproj: 5878 5879 FileWriterSync doesn't turn out to need to be an ActiveDOMObject. 5880 * bindings/scripts/CodeGeneratorV8.pm: 5881 5882 Added new AsyncFileWriter::waitForOperationToComplete to enable 5883 synchronous calls. 5884 * fileapi/AsyncFileWriter.h: 5885 5886 Added a way to get a FileSystemSync. 5887 * fileapi/DOMFileSystemSync.cpp: 5888 * fileapi/FileEntrySync.cpp: 5889 * fileapi/FileEntrySync.h: 5890 * fileapi/FileEntrySync.idl: 5891 5892 Added an error code for OK, rather than just having 0 everywhere. 5893 * fileapi/FileError.h: 5894 5895 Turned FileWriterCallback into FileWriterBaseCallback. 5896 * fileapi/FileSystemCallbacks.cpp: 5897 * fileapi/FileSystemCallbacks.h: 5898 5899 Refactored out a common base class, FileWriterBase, for FileWriter and 5900 FileWriterSync. 5901 * fileapi/FileWriter.cpp: 5902 * fileapi/FileWriter.h: 5903 * fileapi/FileWriterBase.cpp: Added. 5904 * fileapi/FileWriterBase.h: Added. 5905 * fileapi/FileWriterBaseCallback.h: Added. 5906 * fileapi/FileWriterSync.cpp: 5907 * fileapi/FileWriterSync.h: 5908 5909 Small tweaks to deal with the base class refactoring. 5910 * fileapi/DOMFileSystem.cpp: 5911 * fileapi/DOMFileSystemSync.h: 5912 5913 Removed "CallWith=ScriptExecutionContext", as FileWriterSync doesn't actually need it. 5914 * fileapi/FileWriterSync.idl: 5915 5916 2010-11-24 Martin Robinson <mrobinson (a] igalia.com> 5917 5918 Reviewed by Xan Lopez. 5919 5920 Build fix for GTK+. There were some typos in my last build fix 5921 and the empty command (semicolon) seems to be necessary for wildcard 5922 rule chains. 5923 5924 * GNUmakefile.am: Small build fixes. 5925 5926 2010-11-24 James Robinson <jamesr (a] chromium.org> 5927 5928 Reviewed by Kenneth Russell. 5929 5930 [chromium] Compositor needs to manage its VRAM use 5931 https://bugs.webkit.org/show_bug.cgi?id=49629 5932 5933 This adds a basic texture manager to the Chromium compositor to limit the amount of VRAM 5934 used by compositor textures and switches ContentLayerChromium, ImageLayerChromium, and 5935 RenderSurfaceChromium to use managed LayerTexture. The other *LayerChromium classes (Canvas, 5936 Video, and WebGL) and the root layer are still unmanaged. 5937 5938 The TextureManager works by providing tokens to callers that want to use a managed texture. 5939 The token can be used to request a texture, see if the previously requested texture is still 5940 available, and to protect/unprotect textures when they cannot be collected. Whenever a 5941 texture is created the manager attempts to free up the least recently used textures until the 5942 total memory use is below the provided threshhold. If the manager cannot satisfy the memory 5943 limit it will not return any new textures until some old textures are released. 5944 5945 A LayerTexture wraps a TextureManager token, size, and format. A LayerChromium can check if a 5946 previously requested texture is still available for use and reserve the LayerTexture's underlying 5947 storage between the updateContentsIfDirty() and the draw() call. 5948 5949 Also changes LayerChromium from having separate contentsDirty()/updateContents() calls to a single 5950 updateContentsIfDirty(). 5951 5952 Tests: compositing/lots-of-img-layers-with-opacity.html 5953 compositing/lots-of-img-layers.html 5954 5955 * WebCore.gypi: 5956 * platform/graphics/chromium/Canvas2DLayerChromium.cpp: 5957 (WebCore::Canvas2DLayerChromium::updateContentsIfDirty): 5958 * platform/graphics/chromium/Canvas2DLayerChromium.h: 5959 * platform/graphics/chromium/ContentLayerChromium.cpp: 5960 (WebCore::ContentLayerChromium::cleanupResources): 5961 (WebCore::ContentLayerChromium::updateContentsIfDirty): 5962 (WebCore::ContentLayerChromium::updateTextureRect): 5963 (WebCore::ContentLayerChromium::draw): 5964 * platform/graphics/chromium/ContentLayerChromium.h: 5965 * platform/graphics/chromium/ImageLayerChromium.cpp: 5966 (WebCore::ImageLayerChromium::updateContentsIfDirty): 5967 * platform/graphics/chromium/ImageLayerChromium.h: 5968 * platform/graphics/chromium/LayerChromium.h: 5969 (WebCore::LayerChromium::updateContentsIfDirty): 5970 (WebCore::LayerChromium::draw): 5971 * platform/graphics/chromium/LayerRendererChromium.cpp: 5972 (WebCore::LayerRendererChromium::LayerRendererChromium): 5973 (WebCore::LayerRendererChromium::prepareToDrawLayers): 5974 (WebCore::LayerRendererChromium::drawLayers): 5975 (WebCore::LayerRendererChromium::updateLayersRecursive): 5976 (WebCore::LayerRendererChromium::useRenderSurface): 5977 (WebCore::LayerRendererChromium::drawLayer): 5978 (WebCore::LayerRendererChromium::initializeSharedObjects): 5979 (WebCore::LayerRendererChromium::cleanupSharedObjects): 5980 * platform/graphics/chromium/LayerRendererChromium.h: 5981 (WebCore::LayerRendererChromium::renderSurfaceSharedValues): 5982 (WebCore::LayerRendererChromium::textureManager): 5983 * platform/graphics/chromium/LayerTexture.cpp: Added. 5984 (WebCore::LayerTexture::LayerTexture): 5985 (WebCore::LayerTexture::~LayerTexture): 5986 (WebCore::LayerTexture::isValid): 5987 (WebCore::LayerTexture::reserve): 5988 (WebCore::LayerTexture::unreserve): 5989 (WebCore::LayerTexture::bindTexture): 5990 (WebCore::LayerTexture::framebufferTexture2D): 5991 * platform/graphics/chromium/LayerTexture.h: Added. 5992 (WebCore::LayerTexture::create): 5993 * platform/graphics/chromium/PluginLayerChromium.cpp: 5994 (WebCore::PluginLayerChromium::updateContentsIfDirty): 5995 * platform/graphics/chromium/PluginLayerChromium.h: 5996 * platform/graphics/chromium/RenderSurfaceChromium.cpp: 5997 (WebCore::RenderSurfaceChromium::SharedValues::SharedValues): 5998 (WebCore::RenderSurfaceChromium::SharedValues::~SharedValues): 5999 (WebCore::RenderSurfaceChromium::RenderSurfaceChromium): 6000 (WebCore::RenderSurfaceChromium::cleanupResources): 6001 (WebCore::RenderSurfaceChromium::prepareContentsTexture): 6002 (WebCore::RenderSurfaceChromium::draw): 6003 * platform/graphics/chromium/RenderSurfaceChromium.h: 6004 (WebCore::RenderSurfaceChromium::SharedValues::shaderProgram): 6005 (WebCore::RenderSurfaceChromium::SharedValues::shaderSamplerLocation): 6006 (WebCore::RenderSurfaceChromium::SharedValues::shaderMatrixLocation): 6007 (WebCore::RenderSurfaceChromium::SharedValues::shaderAlphaLocation): 6008 (WebCore::RenderSurfaceChromium::SharedValues::initialized): 6009 * platform/graphics/chromium/TextureManager.cpp: Added. 6010 (WebCore::memoryUseBytes): 6011 (WebCore::TextureManager::TextureManager): 6012 (WebCore::TextureManager::getToken): 6013 (WebCore::TextureManager::releaseToken): 6014 (WebCore::TextureManager::hasTexture): 6015 (WebCore::TextureManager::protectTexture): 6016 (WebCore::TextureManager::unprotectTexture): 6017 (WebCore::TextureManager::reduceMemoryToLimit): 6018 (WebCore::TextureManager::addTexture): 6019 (WebCore::TextureManager::removeTexture): 6020 (WebCore::TextureManager::requestTexture): 6021 * platform/graphics/chromium/TextureManager.h: Added. 6022 (WebCore::TextureManager::create): 6023 * platform/graphics/chromium/VideoLayerChromium.cpp: 6024 (WebCore::VideoLayerChromium::updateContentsIfDirty): 6025 * platform/graphics/chromium/VideoLayerChromium.h: 6026 * platform/graphics/chromium/WebGLLayerChromium.cpp: 6027 (WebCore::WebGLLayerChromium::updateContentsIfDirty): 6028 * platform/graphics/chromium/WebGLLayerChromium.h: 6029 6030 2010-11-24 Nicolas Dufresne <nicolas.dufresne (a] collabora.co.uk> 6031 6032 Reviewed by Martin Robinson. 6033 6034 [GTK] response.isNull() assert when using directory file URI 6035 https://bugs.webkit.org/show_bug.cgi?id=49018 6036 6037 Do ensure that didReceiveResponse happens before any call to 6038 didReceiveData. That was not true for file:// URIs pointing to 6039 directories and thus was triggering an assertion. 6040 6041 Test: platform/gtk/fast/loader/crash-display-local-directory.html 6042 6043 * platform/network/soup/ResourceHandleSoup.cpp: 6044 (WebCore::gotHeadersCallback): 6045 (WebCore::contentSniffedCallback): 6046 (WebCore::parseDataUrl): 6047 (WebCore::sendRequestCallback): 6048 (WebCore::readCallback): 6049 6050 2010-11-24 Xan Lopez <xlopez (a] igalia.com> 6051 6052 Reviewed by Martin Robinson. 6053 6054 * bindings/gobject/WebKitDOMBinding.h: fix stlye nit. 6055 6056 2010-11-24 Xan Lopez <xlopez (a] igalia.com> 6057 6058 Reviewed by Martin Robinson. 6059 6060 [GTK] Make kit() methods return the proper type instead of gpointer 6061 https://bugs.webkit.org/show_bug.cgi?id=50034 6062 6063 Change kit() methods to return proper type pointer. 6064 6065 * bindings/gobject/WebKitDOMBinding.cpp: change implementions of 6066 kit methods. 6067 * bindings/gobject/WebKitDOMBinding.h: change their declarations. 6068 * bindings/scripts/CodeGeneratorGObject.pm: change the generated 6069 kit() methods. 6070 6071 2010-11-24 Martin Robinson <mrobinson (a] igalia.com> 6072 6073 Reviewed by Xan Lopez. 6074 6075 [GTK] DerivedSources/WebCore/DocTypeStrings.cpp is generated for every build 6076 https://bugs.webkit.org/show_bug.cgi?id=50032 6077 6078 Instead of listing two targets for rules that have two outputs, make 6079 a dependency chain. This fixes the issue where some files are generated 6080 unconditionally. Also remove all unnecessary semicolons from the file. 6081 6082 No new tests as this is just a build fix. 6083 6084 * GNUmakefile.am: Fix GNUmake dependency issue. 6085 6086 2010-11-24 Nico Weber <nicolasweber (a] gmx.de> 6087 6088 Reviewed by Adam Barth. 6089 6090 Chromium/Mac: Make scaled images un-ugly when using the webkit image decoders 6091 https://bugs.webkit.org/show_bug.cgi?id=49965 6092 6093 Probably covered by existing tests whose expectations were overwritten 6094 in http://trac.webkit.org/changeset/70858 6095 6096 * platform/image-decoders/cg/ImageDecoderCG.cpp: 6097 (WebCore::RGBA32Buffer::asNewNativeImage): 6098 6099 2010-11-24 Alexander Pavlov <apavlov (a] chromium.org> 6100 6101 Reviewed by Pavel Feldman. 6102 6103 Web Inspector: Crash when inspecting http://alphaarnhem.nl/beta/ 6104 https://bugs.webkit.org/show_bug.cgi?id=50025 6105 6106 @font-face rules were improperly handled by source data extractor. 6107 6108 * css/CSSParser.cpp: 6109 (WebCore::CSSParser::CSSParser): 6110 (WebCore::CSSParser::parseDeclaration): 6111 (WebCore::CSSParser::createStyleRule): 6112 (WebCore::CSSParser::markRuleBodyStart): 6113 (WebCore::CSSParser::markPropertyStart): 6114 (WebCore::CSSParser::markPropertyEnd): 6115 * css/CSSParser.h: 6116 6117 2010-11-24 Cris Neckar <cdn (a] chromium.org> 6118 6119 Reviewed by Adam Barth. 6120 6121 Added check when parsing local fonts to ensure that a value's unit type is either string or ident. 6122 https://bugs.webkit.org/show_bug.cgi?id=49883 6123 6124 Test: fast/css/local_font_invalid.html 6125 6126 * css/CSSParser.cpp: 6127 (WebCore::CSSParser::parseFontFaceSrc): 6128 6129 2010-11-24 Pavel Feldman <pfeldman (a] chromium.org> 6130 6131 Reviewed by Yury Semikhatsky. 6132 6133 Web Inspector: place local modifications to under original 6134 resource nodes in the resource panel. 6135 https://bugs.webkit.org/show_bug.cgi?id=50029 6136 6137 * English.lproj/localizedStrings.js: 6138 * inspector/Inspector.idl: 6139 * inspector/InspectorController.cpp: 6140 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 6141 (WebCore::InspectorController::scriptImported): 6142 * inspector/InspectorResourceAgent.cpp: 6143 (WebCore::InspectorResourceAgent::setInitialContent): 6144 * inspector/InspectorResourceAgent.h: 6145 * inspector/front-end/CSSStyleModel.js: 6146 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 6147 (WebInspector.CSSStyleModel.prototype.addRule): 6148 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback): 6149 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 6150 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt): 6151 (WebInspector.CSSProperty.prototype.setText): 6152 (WebInspector.CSSProperty.prototype.setDisabled.callback): 6153 (WebInspector.CSSProperty.prototype.setDisabled): 6154 (WebInspector.CSSStyleSheet.prototype.setText): 6155 * inspector/front-end/NetworkPanel.js: 6156 (WebInspector.NetworkPanel.prototype.refreshResource): 6157 * inspector/front-end/Resource.js: 6158 (WebInspector.Resource.prototype.set content): 6159 (WebInspector.Resource.prototype.get contentTimestamp): 6160 (WebInspector.Resource.prototype.setInitialContent): 6161 * inspector/front-end/ResourceManager.js: 6162 (WebInspector.ResourceManager): 6163 (WebInspector.ResourceManager.prototype.setInitialContent): 6164 * inspector/front-end/ResourcesPanel.js: 6165 (WebInspector.ResourcesPanel): 6166 (WebInspector.ResourcesPanel.prototype.reset): 6167 (WebInspector.ResourcesPanel.prototype._innerShowView): 6168 (WebInspector.FrameResourceTreeElement): 6169 (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated): 6170 (WebInspector.FrameResourceTreeElement.prototype._contentChanged.else.finished): 6171 (WebInspector.FrameResourceTreeElement.prototype._contentChanged): 6172 (WebInspector.ResourceRevisionTreeElement): 6173 * inspector/front-end/SourceFrame.js: 6174 (WebInspector.SourceFrame.prototype.get scrollTop): 6175 (WebInspector.SourceFrame.prototype.set scrollTop): 6176 * inspector/front-end/SourceView.js: 6177 (WebInspector.SourceView.prototype.get scrollTop): 6178 (WebInspector.SourceView.prototype.set scrollTop): 6179 (WebInspector.SourceView.prototype._editLine): 6180 (WebInspector.SourceView.prototype._editLineComplete): 6181 * inspector/front-end/StylesSidebarPane.js: 6182 (WebInspector.StylePropertyTreeElement.prototype): 6183 6184 2010-11-24 Andrey Kosyakov <caseq (a] chromium.org> 6185 6186 Reviewed by Pavel Feldman. 6187 6188 Web Inspector: extension API cleanup 6189 https://bugs.webkit.org/show_bug.cgi?id=50019 6190 6191 * inspector/front-end/ElementsPanel.js: 6192 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): 6193 (WebInspector.ElementsPanel): 6194 * inspector/front-end/ExtensionAPI.js: See bug for summary of extension API changes. 6195 (WebInspector.injectedExtensionAPI.Resources.resourceDispatch): 6196 (WebInspector.injectedExtensionAPI): 6197 (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR): 6198 (WebInspector.injectedExtensionAPI.ResourceImpl.prototype.getContent): 6199 (WebInspector.injectedExtensionAPI.Panels.prototype.create): 6200 (WebInspector.injectedExtensionAPI.PanelImpl): 6201 (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl): 6202 (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane): 6203 (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createWatchExpressionSidebarPane): 6204 (WebInspector.injectedExtensionAPI.ElementsPanel): 6205 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight): 6206 (WebInspector.injectedExtensionAPI.Audits.prototype.addCategory): 6207 (WebInspector.injectedExtensionAPI.AuditCategoryImpl.auditResultDispatch): 6208 (WebInspector.injectedExtensionAPI.AuditCategoryImpl): 6209 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity): 6210 (WebInspector.injectedExtensionAPI.InspectedWindow): 6211 (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.eval): 6212 * inspector/front-end/ExtensionCommon.js: 6213 (WebInspector.commonExtensionSymbols): 6214 * inspector/front-end/ExtensionServer.js: 6215 (WebInspector.ExtensionServer): 6216 (WebInspector.ExtensionServer.prototype.notifyObjectSelected): 6217 (WebInspector.ExtensionServer.prototype.notifyResourceFinished): 6218 (WebInspector.ExtensionServer.prototype.notifyPageLoaded): 6219 (WebInspector.ExtensionServer.prototype.notifyPageDOMContentLoaded): 6220 (WebInspector.ExtensionServer.prototype._onCreatePanel): 6221 (WebInspector.ExtensionServer.prototype._onReload): 6222 (WebInspector.ExtensionServer.prototype._onGetHAR): 6223 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 6224 (WebInspector.ExtensionServer.prototype._onAddAuditCategory): 6225 (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript): 6226 * inspector/front-end/HAREntry.js: 6227 (WebInspector.HARLog): 6228 (WebInspector.HARLog.prototype.build): 6229 (WebInspector.HARLog.prototype._convertResource): 6230 * inspector/front-end/inspector.js: 6231 (WebInspector.domContentEventFired): 6232 (WebInspector.loadEventFired): 6233 (WebInspector.didCommitLoad): 6234 6235 2010-11-23 Jeremy Orlow <jorlow (a] chromium.org> 6236 6237 Reviewed by Steve Block. 6238 6239 Fix minor errors in IndexedDB 6240 https://bugs.webkit.org/show_bug.cgi?id=49970 6241 6242 * Remove SNAPSHOT_READ per spec. 6243 * Assert that the transaction that changes the db is a setVersion 6244 transaction. 6245 * When an objectStore already exists, throw a CONSTRAINT_ERR. 6246 * When not in a setVersion transaction, throw a NOT_ALLOWED_ERR. 6247 6248 Test: storage/indexeddb/createAndRemoveObjectStore.html 6249 6250 * storage/IDBDatabase.cpp: 6251 (WebCore::IDBDatabase::createObjectStore): 6252 * storage/IDBDatabaseBackendImpl.cpp: 6253 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 6254 * storage/IDBTransaction.h: 6255 * storage/IDBTransaction.idl: 6256 6257 2010-11-24 Philippe Normand <pnormand (a] igalia.com> 6258 6259 Reviewed by Xan Lopez. 6260 6261 [GStreamer] pause webkitvideosink during fullscreen video playback 6262 https://bugs.webkit.org/show_bug.cgi?id=48824 6263 6264 Added an identity element before the webkitvideosink so that when 6265 fullscreen video is active the element can drop the incoming 6266 buffers so that webkitvideosink appears paused. 6267 6268 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 6269 (WebCore::GStreamerGWorld::enterFullscreen): 6270 (WebCore::GStreamerGWorld::exitFullscreen): 6271 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 6272 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): 6273 6274 2010-11-24 Avi Drissman <avi (a] google.com> 6275 6276 Reviewed by Antonio Gomes. 6277 6278 Add preference to not select when right-clicked 6279 https://bugs.webkit.org/show_bug.cgi?id=23351 6280 6281 Test: editing/selection/context-menu-text-selection.html 6282 6283 * editing/EditingBehavior.h: 6284 (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick): 6285 * page/EventHandler.cpp: 6286 (WebCore::EventHandler::sendContextMenuEvent): 6287 6288 2010-11-24 Andras Becsi <abecsi (a] inf.u-szeged.hu> 6289 6290 Reviewed by Csaba Osztrogonc. 6291 6292 Make build-webkit --minimal build with ENABLE_INSPECTOR=0. 6293 https://bugs.webkit.org/show_bug.cgi?id=49975 6294 6295 No new tests needed. 6296 6297 * features.pri: Make the Qt buildsystem aware 6298 that the inspector is enabled by default. 6299 6300 2010-11-24 Martin Robinson <mrobinson (a] igalia.com> 6301 6302 Reviewed by Xan Lopez. 6303 6304 [GTK] The WebKitWebView should expose a set of signals encapsulating the behavior of the EditorClient 6305 https://bugs.webkit.org/show_bug.cgi?id=49143 6306 6307 * platform/gtk/GtkVersioning.c: 6308 (g_signal_accumulator_first_wins): Add g_signal_accumulator_first_wins for versions of 6309 GLib before 2.28. 6310 * platform/gtk/GtkVersioning.h: 6311 6312 2010-11-24 Sheriff Bot <webkit.review.bot (a] gmail.com> 6313 6314 Unreviewed, rolling out r72499. 6315 http://trac.webkit.org/changeset/72499 6316 https://bugs.webkit.org/show_bug.cgi?id=50022 6317 6318 This change is causing crashes on the bots. (Requested by 6319 mrobinson on #webkit). 6320 6321 * accessibility/AccessibilityMenuListOption.cpp: 6322 (WebCore::AccessibilityMenuListOption::nameForMSAA): 6323 * accessibility/AccessibilityMenuListOption.h: 6324 * accessibility/gtk/AXObjectCacheAtk.cpp: 6325 (WebCore::AXObjectCache::postPlatformNotification): 6326 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 6327 (setAtkStateSetFromCoreObject): 6328 (optionFromList): 6329 (optionFromSelection): 6330 (webkit_accessible_selection_add_selection): 6331 (webkit_accessible_selection_clear_selection): 6332 (webkit_accessible_selection_get_selection_count): 6333 (webkit_accessible_selection_is_child_selected): 6334 (webkit_accessible_selection_remove_selection): 6335 (webkit_accessible_text_get_text): 6336 (getInterfaceMaskFromObject): 6337 * platform/gtk/PopupMenuGtk.cpp: 6338 (WebCore::PopupMenuGtk::show): 6339 6340 2010-11-24 Patrick Gansterer <paroga (a] webkit.org> 6341 6342 Reviewed by Csaba Osztrogonc. 6343 6344 Simplify makeprop.pl 6345 https://bugs.webkit.org/show_bug.cgi?id=49925 6346 6347 Don't generate CSSPropertyNamesHash.h. 6348 Instead generate CSSPropertyNames directly. 6349 6350 * GNUmakefile.am: Removed rule for CSSPropertyNamesHash.h. 6351 * css/makeprop.pl: 6352 6353 2010-11-24 Patrick Gansterer <paroga (a] webkit.org> 6354 6355 Reviewed by Csaba Osztrogonc. 6356 6357 Remove Bakefile build system files 6358 https://bugs.webkit.org/show_bug.cgi?id=49983 6359 6360 r53757 only removed the content, but not the files. 6361 This patch removes that empty files. 6362 6363 * WebCoreSources.bkl: Removed. 6364 * webcore-base.bkl: Removed. 6365 * webcore-wx.bkl: Removed. 6366 6367 2010-11-24 Renata Hodovan <reni (a] inf.u-szeged.hu> 6368 6369 Reviewed by Andreas Kling. 6370 6371 [Qt] GraphicsContext: Clean up Qt/WebCore type conversion functions 6372 https://bugs.webkit.org/show_bug.cgi?id=49919 6373 6374 Add ASSERT_NOT_REACHED() if the given WebCore type doesn't have an equivalent type in Qt. 6375 Also change the return value of toQtLineJoin() from Qt::MiterJoin to the default Qt::SvgMiterJoin, 6376 because the previous one doesn't work currently. 6377 6378 No new test is needed. 6379 6380 * platform/graphics/qt/GraphicsContextQt.cpp: 6381 (WebCore::GraphicsContext::toQtCompositionMode): 6382 (WebCore::toQtLineCap): 6383 (WebCore::toQtLineJoin): 6384 (WebCore::toQPenStyle): 6385 (WebCore::toQtFillRule): 6386 6387 2010-11-24 Patrick Gansterer <paroga (a] webkit.org> 6388 6389 Reviewed by Csaba Osztrogonc. 6390 6391 Simplify makevalues.pl 6392 https://bugs.webkit.org/show_bug.cgi?id=49926 6393 6394 Don't generate CSSValueKeywordsHash.h. 6395 Instead generate CSSValueKeywords.cpp directly. 6396 6397 * GNUmakefile.am: Removed rule for CSSValueKeywordsHash.h. 6398 * css/makevalues.pl: 6399 6400 2010-11-24 Andras Becsi <abecsi (a] inf.u-szeged.hu> 6401 6402 Reviewed by Kenneth Rohde Christiansen. 6403 6404 Make WebKit2 compile with !ENABLE(INSPECTOR). 6405 https://bugs.webkit.org/show_bug.cgi?id=49973 6406 6407 No new tests needed. 6408 6409 * bindings/js/ScriptHeapSnapshot.h: 6410 * bindings/js/ScriptProfile.cpp: 6411 * bindings/js/ScriptProfile.h: 6412 * inspector/InspectorDebuggerAgent.cpp: 6413 * inspector/InspectorDebuggerAgent.h: 6414 * inspector/InspectorProfilerAgent.cpp: 6415 * inspector/InspectorProfilerAgent.h: 6416 * inspector/ScriptBreakpoint.h: 6417 6418 2010-11-24 Patrick Gansterer <paroga (a] webkit.org> 6419 6420 Reviewed by Csaba Osztrogonc. 6421 6422 Simplify make-hash-tools.pl 6423 https://bugs.webkit.org/show_bug.cgi?id=49922 6424 6425 HashTools.h does not need to be generated, because it only contains static code. 6426 6427 * html/DocTypeStrings.gperf: Include findDoctypeEntry function. 6428 * make-hash-tools.pl: Do not generate HashTools.h. 6429 * platform/ColorData.gperf: Include findColor function. 6430 * platform/HashTools.h: Added. 6431 6432 2010-11-24 Andreas Kling <kling (a] webkit.org> 6433 6434 Reviewed by Simon Hausmann. 6435 6436 [Qt] Pass Qt::TextBypassShaping flag when calculating shadow layer rects 6437 6438 Without this, we could end up with a slightly too small shadow layer 6439 for some string/font combinations. 6440 6441 * platform/graphics/qt/FontQt.cpp: 6442 (WebCore::drawTextCommon): 6443 6444 2010-11-22 Pavel Feldman <pfeldman (a] chromium.org> 6445 6446 Reviewed by Yury Semikhatsky. 6447 6448 Web Inspector: add timing tab to the network item view. 6449 https://bugs.webkit.org/show_bug.cgi?id=49920 6450 6451 * WebCore.gypi: 6452 * WebCore.vcproj/WebCore.vcproj: 6453 * inspector/front-end/NetworkItemView.js: 6454 (WebInspector.NetworkItemView): 6455 * inspector/front-end/NetworkPanel.js: 6456 (WebInspector.NetworkPanel.prototype._showPopover): 6457 * inspector/front-end/Resource.js: 6458 (WebInspector.Resource.prototype.set timing): 6459 * inspector/front-end/ResourceTimingView.js: Added. 6460 (WebInspector.ResourceTimingView): 6461 (WebInspector.ResourceTimingView.prototype.show): 6462 (WebInspector.ResourceTimingView.prototype._refresh): 6463 (WebInspector.ResourceTimingView.createTimingTable): 6464 * inspector/front-end/WebKit.qrc: 6465 * inspector/front-end/inspector.html: 6466 * inspector/front-end/networkPanel.css: 6467 (#network-views .network-item-view .tabbed-pane-header): 6468 (.resource-timing-view): 6469 (.resource-timing-view table): 6470 (.resource-timing-view .network-timing-bar): 6471 (.resource-timing-view .network-timing-bar.proxy): 6472 (.resource-timing-view .network-timing-bar.dns): 6473 (.resource-timing-view .network-timing-bar.connecting): 6474 (.resource-timing-view .network-timing-bar.ssl): 6475 (.resource-timing-view .network-timing-bar.sending): 6476 (.resource-timing-view .network-timing-bar.waiting): 6477 (.resource-timing-view .network-timing-bar.receiving): 6478 (.resource-timing-view.visible): 6479 6480 2010-11-24 Pavel Feldman <pfeldman (a] chromium.org> 6481 6482 Not reviewed. Follow up to r72652 (style id change in inspector). 6483 6484 * inspector/front-end/AuditRules.js: 6485 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback): 6486 6487 2010-11-22 Pavel Feldman <pfeldman (a] chromium.org> 6488 6489 Reviewed by Yury Semikhatsky. 6490 6491 Web Inspector: refactor ResourceView hierarchy. 6492 https://bugs.webkit.org/show_bug.cgi?id=49864 6493 6494 This refactoring splits ResourceView.js into: 6495 NetworkItemView.js (tabbed pane) 6496 ResourceHeadersView.js (header tab) 6497 ResourceCookiesView.js (cookies tab) 6498 ResourceView.js (base class for content tab). 6499 CookiesTable was extracted from CookieItemsView and 6500 brushed up. headersVisible flag has been removed. 6501 6502 * English.lproj/localizedStrings.js: 6503 * WebCore.gypi: 6504 * WebCore.vcproj/WebCore.vcproj: 6505 * inspector/front-end/CookieItemsView.js: 6506 (WebInspector.CookieItemsView): 6507 (WebInspector.CookieItemsView.prototype.get statusBarItems): 6508 (WebInspector.CookieItemsView.prototype.hide): 6509 (WebInspector.CookieItemsView.prototype.resize): 6510 (WebInspector.CookieItemsView.prototype._updateWithCookies): 6511 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 6512 (WebInspector.CookieItemsView.prototype._deleteCookie): 6513 (WebInspector.CookieItemsView.prototype._deleteButtonClicked): 6514 (WebInspector.CookieItemsView.prototype._refreshButtonClicked): 6515 (WebInspector.SimpleCookiesTable): 6516 (WebInspector.SimpleCookiesTable.prototype.setCookies): 6517 (WebInspector.SimpleCookiesTable.prototype.resize): 6518 * inspector/front-end/CookiesTable.js: Added. 6519 (WebInspector.CookiesTable): 6520 (WebInspector.CookiesTable.prototype.updateWidths): 6521 (WebInspector.CookiesTable.prototype.setCookies): 6522 (WebInspector.CookiesTable.prototype.addCookiesFolder): 6523 (WebInspector.CookiesTable.prototype.get selectedCookie): 6524 (WebInspector.CookiesTable.prototype._rebuildTable): 6525 (WebInspector.CookiesTable.prototype.reset): 6526 (WebInspector.CookiesTable.prototype._populateNode): 6527 (WebInspector.CookiesTable.prototype._totalSize): 6528 (WebInspector.CookiesTable.prototype._sortCookies.localeCompare): 6529 (WebInspector.CookiesTable.prototype._sortCookies.numberCompare): 6530 (WebInspector.CookiesTable.prototype._sortCookies.expiresCompare): 6531 (WebInspector.CookiesTable.prototype._sortCookies): 6532 (WebInspector.CookiesTable.prototype._createGridNode): 6533 (WebInspector.CookiesTable.prototype._onDeleteFromGrid): 6534 * inspector/front-end/FileSystemView.js: 6535 (WebInspector.FileSystemView.prototype._selectFileSystemTab): 6536 (WebInspector.FileSystemView.prototype.selectTemporaryFileSystemTab): 6537 * inspector/front-end/FontView.js: 6538 (WebInspector.FontView.prototype.hasContent): 6539 (WebInspector.FontView.prototype._createContentIfNeeded): 6540 (WebInspector.FontView.prototype.show): 6541 (WebInspector.FontView.prototype.updateFontPreviewSize): 6542 * inspector/front-end/ImageView.js: 6543 (WebInspector.ImageView.prototype.hasContent): 6544 (WebInspector.ImageView.prototype.show): 6545 * inspector/front-end/NetworkItemView.js: Added. 6546 (WebInspector.NetworkItemView): 6547 (WebInspector.NetworkItemView.prototype.show): 6548 (WebInspector.NetworkItemView.prototype._selectTab): 6549 (WebInspector.NetworkItemView.prototype._tabSelected): 6550 (WebInspector.NetworkItemView.prototype.resize): 6551 (WebInspector.NetworkItemView.prototype.selectContentTab): 6552 * inspector/front-end/NetworkPanel.js: 6553 (WebInspector.NetworkPanel.prototype.show): 6554 (WebInspector.NetworkPanel.prototype.refreshResource): 6555 (WebInspector.NetworkPanel.prototype._showResource): 6556 (WebInspector.NetworkPanel.prototype._closeVisibleResource): 6557 * inspector/front-end/ResourceCookiesView.js: Added. 6558 (WebInspector.ResourceCookiesView): 6559 (WebInspector.ResourceCookiesView.prototype.show): 6560 * inspector/front-end/ResourceHeadersView.js: Added. 6561 (WebInspector.ResourceHeadersView): 6562 (WebInspector.ResourceHeadersView.prototype._refreshURL): 6563 (WebInspector.ResourceHeadersView.prototype._refreshQueryString): 6564 (WebInspector.ResourceHeadersView.prototype._refreshFormData): 6565 (WebInspector.ResourceHeadersView.prototype._refreshRequestPayload): 6566 (WebInspector.ResourceHeadersView.prototype._refreshParms): 6567 (WebInspector.ResourceHeadersView.prototype._toggleURLdecoding): 6568 (WebInspector.ResourceHeadersView.prototype._getHeaderValue): 6569 (WebInspector.ResourceHeadersView.prototype._refreshRequestHeaders): 6570 (WebInspector.ResourceHeadersView.prototype._refreshResponseHeaders): 6571 (WebInspector.ResourceHeadersView.prototype._refreshHTTPInformation): 6572 (WebInspector.ResourceHeadersView.prototype._refreshHeaders): 6573 * inspector/front-end/ResourceView.js: 6574 (WebInspector.ResourceView): 6575 (WebInspector.ResourceView.prototype.hasContent): 6576 * inspector/front-end/ResourcesPanel.js: 6577 (WebInspector.ResourcesPanel.prototype.show): 6578 (WebInspector.ResourcesPanel.prototype.showResource): 6579 (WebInspector.ResourcesPanel.prototype._showResourceView): 6580 * inspector/front-end/ScriptsPanel.js: 6581 (WebInspector.ScriptsPanel.prototype.show): 6582 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 6583 * inspector/front-end/SourceView.js: 6584 (WebInspector.SourceView): 6585 (WebInspector.SourceView.prototype.show): 6586 (WebInspector.SourceView.prototype.hide): 6587 (WebInspector.SourceView.prototype.resize): 6588 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): 6589 (WebInspector.SourceView.prototype.hasContent): 6590 (WebInspector.SourceView.prototype.updateLocalContent): 6591 (WebInspector.SourceView.prototype.selectLocalContentTab): 6592 * inspector/front-end/StylesSidebarPane.js: 6593 * inspector/front-end/TabbedPane.js: 6594 (WebInspector.TabbedPane): 6595 (WebInspector.TabbedPane.prototype.appendTab): 6596 (WebInspector.TabbedPane.prototype.selectTab): 6597 (WebInspector.TabbedPane.prototype._showTab): 6598 (WebInspector.TabbedPane.prototype._hideTab): 6599 * inspector/front-end/WebKit.qrc: 6600 * inspector/front-end/inspector.css: 6601 (.webkit-line-gutter-backdrop): 6602 (.resource-view): 6603 (.resource-view.visible): 6604 (.resource-view.font): 6605 (.resource-view.image > .image): 6606 (.resource-view.image > .info): 6607 (.storage-view): 6608 (.storage-view .data-grid): 6609 (.storage-empty-view, .storage-view .storage-table-error): 6610 (.storage-view .storage-table-error): 6611 * inspector/front-end/inspector.html: 6612 * inspector/front-end/networkPanel.css: 6613 (.network-cell-subtitle): 6614 (.network-header-subtitle): 6615 (#network-views .network-item-view .tabbed-pane-header): 6616 (#network-views.small .network-item-view .tabbed-pane-header): 6617 (.network-item-view): 6618 (.network-item-view.visible): 6619 (.network-item-view .tabbed-pane-header): 6620 (.network-item-view .scope-bar li): 6621 (.resource-headers-view): 6622 (.resource-headers-view.visible): 6623 (.resource-headers-view .outline-disclosure .parent): 6624 (.resource-headers-view .outline-disclosure .children li): 6625 (.resource-headers-view .outline-disclosure li.expanded .header-count): 6626 (.resource-headers-view .outline-disclosure .header-name): 6627 (.resource-headers-view .outline-disclosure .header-value): 6628 (.resource-headers-view .outline-disclosure .raw-form-data): 6629 (.resource-cookies-view): 6630 (.resource-cookies-view.visible): 6631 (.resource-cookies-view .data-grid): 6632 (.resource-cookies-view .data-grid .row-group): 6633 6634 2010-11-24 Pavel Feldman <pfeldman (a] chromium.org> 6635 6636 Reviewed by Yury Semikhatsky. 6637 6638 Web Inspector: add "Locally modified" group into the resource panel. 6639 https://bugs.webkit.org/show_bug.cgi?id=50005 6640 6641 * English.lproj/localizedStrings.js: 6642 * inspector/front-end/ResourcesPanel.js: 6643 (WebInspector.ResourcesPanel): 6644 (WebInspector.ResourcesPanel.prototype.reset): 6645 (WebInspector.ResourcesPanel.prototype.addLocallyModifiedRevision): 6646 (WebInspector.ResourcesPanel.prototype._innerShowView): 6647 (WebInspector.BaseStorageTreeElement.prototype.set titleText): 6648 (WebInspector.LocallyModifiedResourceTreeElement): 6649 (WebInspector.LocallyModifiedResourceTreeElement.prototype.onselect): 6650 (WebInspector.LocallyModifiedResourceTreeElement.prototype.gcRevisions): 6651 (WebInspector.LocallyModifiedRevisionTreeElement): 6652 (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onattach): 6653 (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onselect): 6654 (WebInspector.LocallyModifiedRevisionTreeElement.prototype._ondragstart): 6655 6656 2010-11-24 Pavel Feldman <pfeldman (a] chromium.org> 6657 6658 Reviewed by Yury Semikhatsky. 6659 6660 Web Inspector: pass style id to front-end as Object, not string. 6661 https://bugs.webkit.org/show_bug.cgi?id=49971 6662 6663 * inspector/Inspector.idl: 6664 * inspector/InspectorCSSAgent.cpp: 6665 (WebCore::InspectorCSSAgent::getStylesForNode2): 6666 (WebCore::InspectorCSSAgent::getStyleSheetText2): 6667 (WebCore::InspectorCSSAgent::setPropertyText2): 6668 (WebCore::InspectorCSSAgent::toggleProperty2): 6669 (WebCore::InspectorCSSAgent::setRuleSelector2): 6670 * inspector/InspectorCSSAgent.h: 6671 * inspector/InspectorStyleSheet.cpp: 6672 (WebCore::InspectorStyle::buildObjectForStyle): 6673 (WebCore::InspectorStyleSheet::finalURL): 6674 (WebCore::InspectorStyleSheet::ruleForId): 6675 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet): 6676 (WebCore::InspectorStyleSheet::buildObjectForRule): 6677 (WebCore::InspectorStyleSheet::text): 6678 (WebCore::InspectorStyleSheet::ruleOrStyleId): 6679 (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle): 6680 (WebCore::InspectorStyleSheetForInlineStyle::text): 6681 * inspector/InspectorStyleSheet.h: 6682 (WebCore::InspectorCSSId::InspectorCSSId): 6683 (WebCore::InspectorCSSId::isEmpty): 6684 (WebCore::InspectorCSSId::styleSheetId): 6685 (WebCore::InspectorCSSId::ordinal): 6686 (WebCore::InspectorCSSId::asInspectorValue): 6687 (WebCore::InspectorStyleSheet::id): 6688 (WebCore::InspectorStyleSheetForInlineStyle::styleForId): 6689 * inspector/front-end/CSSStyleModel.js: 6690 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 6691 (WebInspector.CSSStyleModel.prototype.addRule): 6692 (WebInspector.CSSStyleModel.prototype._styleSheetChanged): 6693 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt): 6694 (WebInspector.CSSProperty.prototype.setText): 6695 (WebInspector.CSSProperty.prototype.setDisabled.callback): 6696 (WebInspector.CSSProperty.prototype.setDisabled): 6697 (WebInspector.CSSStyleSheet.createForId): 6698 (WebInspector.CSSStyleSheet.prototype.setText): 6699 6700 2010-11-24 Sheriff Bot <webkit.review.bot (a] gmail.com> 6701 6702 Unreviewed, rolling out r72647. 6703 http://trac.webkit.org/changeset/72647 6704 https://bugs.webkit.org/show_bug.cgi?id=50009 6705 6706 breaks the http layout tests (Requested by philn-tp on 6707 #webkit). 6708 6709 * platform/network/soup/ResourceHandleSoup.cpp: 6710 (WebCore::sendRequestCallback): 6711 (WebCore::startHttp): 6712 (WebCore::ResourceHandle::platformSetDefersLoading): 6713 6714 2010-11-23 Philippe Normand <pnormand (a] igalia.com> 6715 6716 Reviewed by Martin Robinson. 6717 6718 [soup] implement ResourceHandle::platformSetDefersLoading 6719 https://bugs.webkit.org/show_bug.cgi?id=44158 6720 6721 * platform/network/soup/ResourceHandleSoup.cpp: 6722 (WebCore::ResourceHandle::platformSetDefersLoading): Implemented 6723 using the soup_session_{,un}pause_message APIs. 6724 6725 2010-11-22 Abhishek Arya <inferno (a] chromium.org> 6726 6727 Reviewed by Adam Barth. 6728 6729 r71925 broke the chrome new tab page. r71925 blocked drag and drop 6730 of same security origin objects onto themselves if their origin is 6731 marked unique. We need to allow drag and drop in that scenario. 6732 https://bugs.webkit.org/show_bug.cgi?id=49098 6733 6734 Test: http/tests/security/drag-drop-same-unique-origin.html 6735 6736 * page/SecurityOrigin.cpp: 6737 (WebCore::SecurityOrigin::canReceiveDragData): 6738 6739 2010-11-23 Cris Neckar <cdn (a] chromium.org> 6740 6741 Reviewed by Dimitri Glazkov. 6742 6743 Removed unneeded conversions to RenderBlock. 6744 https://bugs.webkit.org/show_bug.cgi?id=49896 6745 6746 Test: fast/css/input-search-table-column-crash.html 6747 6748 * rendering/RenderTextControlSingleLine.cpp: 6749 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): 6750 6751 2010-11-23 Ryosuke Niwa <rniwa (a] webkit.org> 6752 6753 Reviewed by Adam Barth. 6754 6755 XMLDocumentParser::notifyFinished calls ScriptController's executeScript without updating isEvaluated flag 6756 https://bugs.webkit.org/show_bug.cgi?id=49701 6757 6758 Fixed the bug by calling ScriptElement's executeScript, which sets isEvaluated flag to true. 6759 6760 Test: fast/dom/script-clone-rerun-src.xhtml 6761 6762 * dom/XMLDocumentParser.cpp: 6763 (WebCore::XMLDocumentParser::notifyFinished): 6764 6765 2010-11-23 Sheriff Bot <webkit.review.bot (a] gmail.com> 6766 6767 Unreviewed, rolling out r72628. 6768 http://trac.webkit.org/changeset/72628 6769 https://bugs.webkit.org/show_bug.cgi?id=49994 6770 6771 This patch is causing layout-test failtures on GTK Linux 6772 64-bit Debug (Requested by ctguil on #webkit). 6773 6774 * accessibility/AccessibilityRenderObject.cpp: 6775 (WebCore::AccessibilityRenderObject::renderParentObject): 6776 (WebCore::AccessibilityRenderObject::addChildren): 6777 * accessibility/AccessibilityRenderObject.h: 6778 * accessibility/chromium/AccessibilityObjectChromium.cpp: 6779 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 6780 6781 2010-11-23 Xan Lopez <xlopez (a] igalia.com> 6782 6783 Reviewed by Martin Robinson. 6784 6785 [GTK] Fix IFrame DOM bindings API 6786 https://bugs.webkit.org/show_bug.cgi?id=49980 6787 6788 Fix IFrame API naming. It needs special casing because of the two 6789 consecutive capital letters. 6790 6791 * bindings/scripts/CodeGeneratorGObject.pm: 6792 6793 2010-11-23 Shimeng (Simon) Wang <swang (a] google.com> 6794 6795 Reviewed by Steve Block. 6796 6797 Use platform bridge to set scroll position. 6798 https://bugs.webkit.org/show_bug.cgi?id=49550 6799 6800 Refactoring only. Existing tests shall suffice. 6801 6802 * platform/android/PlatformBridge.h: 6803 * platform/android/ScrollViewAndroid.cpp: 6804 (WebCore::ScrollView::platformSetScrollPosition): 6805 6806 2010-11-23 Andreas Kling <kling (a] webkit.org> 6807 6808 Reviewed by Tor Arne Vestb. 6809 6810 [Qt] Selecting shadowed text causes rendering artifacts 6811 https://bugs.webkit.org/show_bug.cgi?id=49990 6812 6813 When selecting text starting from the end of a word, we need to use 6814 the X coordinate of the start of the substring when calculating the 6815 bounding rect for a ContextShadow. 6816 6817 * platform/graphics/qt/FontQt.cpp: 6818 (WebCore::drawTextCommon): 6819 6820 2010-11-23 Chris Guillory <chris.guillory (a] google.com> 6821 6822 Reviewed by Dimitri Glazkov. 6823 6824 Include the FrameView widget of a RenderWidget in the accessibility tree. 6825 https://bugs.webkit.org/show_bug.cgi?id=49106 6826 6827 Include render widget children in the accessibility tree for not mac webkit ports. 6828 6829 Test: accessibility/iframe-has-document.html 6830 6831 * accessibility/AccessibilityRenderObject.cpp: 6832 (WebCore::AccessibilityRenderObject::renderParentObject): 6833 (WebCore::AccessibilityRenderObject::addChildren): 6834 (WebCore::AccessibilityRenderObject::addRenderWidgetChildren): 6835 * accessibility/AccessibilityRenderObject.h: 6836 * accessibility/chromium/AccessibilityObjectChromium.cpp: 6837 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): 6838 6839 2010-11-23 Chris Rogers <crogers (a] google.com> 6840 6841 Reviewed by Alexey Proskuryakov. 6842 6843 Add .responseType and .response to XMLHttpRequest 6844 https://bugs.webkit.org/show_bug.cgi?id=49633 6845 6846 Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-abort.html 6847 fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer.html 6848 fast/xmlhttprequest/xmlhttprequest-responsetype-document.html 6849 fast/xmlhttprequest/xmlhttprequest-responsetype-text.html 6850 6851 * bindings/js/JSXMLHttpRequestCustom.cpp: 6852 (WebCore::JSXMLHttpRequest::markChildren): 6853 (WebCore::JSXMLHttpRequest::open): 6854 (WebCore::JSXMLHttpRequest::response): 6855 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 6856 (WebCore::V8XMLHttpRequest::responseAccessorGetter): 6857 * xml/XMLHttpRequest.cpp: 6858 (WebCore::XMLHttpRequest::XMLHttpRequest): 6859 (WebCore::XMLHttpRequest::responseText): 6860 (WebCore::XMLHttpRequest::responseXML): 6861 (WebCore::XMLHttpRequest::responseBlob): 6862 (WebCore::XMLHttpRequest::responseArrayBuffer): 6863 (WebCore::XMLHttpRequest::setResponseType): 6864 (WebCore::XMLHttpRequest::responseType): 6865 (WebCore::XMLHttpRequest::setAsBlob): 6866 (WebCore::XMLHttpRequest::open): 6867 (WebCore::XMLHttpRequest::clearResponse): 6868 (WebCore::XMLHttpRequest::didFinishLoading): 6869 (WebCore::XMLHttpRequest::didReceiveData): 6870 * xml/XMLHttpRequest.h: 6871 (WebCore::XMLHttpRequest::asBlob): 6872 (WebCore::XMLHttpRequest::optionalResponseXML): 6873 (WebCore::XMLHttpRequest::optionalResponseBlob): 6874 (WebCore::XMLHttpRequest::responseTypeCode): 6875 (WebCore::XMLHttpRequest::optionalResponseArrayBuffer): 6876 * xml/XMLHttpRequest.idl: 6877 6878 2010-11-23 Abhishek Arya <inferno (a] chromium.org> 6879 6880 Reviewed by Adam Barth. 6881 6882 dispatchEvent call in EventSource endRequest can lead to calling endRequest 6883 again which frees up the pending activity. Make sure we have request in flight 6884 to prevent that from happening. 6885 https://bugs.webkit.org/show_bug.cgi?id=49448 6886 6887 Test: http/tests/eventsource/eventsource-status-error-iframe-crash.html 6888 6889 * page/EventSource.cpp: 6890 (WebCore::EventSource::endRequest): 6891 (WebCore::EventSource::close): 6892 6893 2010-11-23 Sheriff Bot <webkit.review.bot (a] gmail.com> 6894 6895 Unreviewed, rolling out r72618. 6896 http://trac.webkit.org/changeset/72618 6897 https://bugs.webkit.org/show_bug.cgi?id=49987 6898 6899 "Newly added test is failing on Chromium-linux, patch author 6900 said to rollout" (Requested by jparent on #webkit). 6901 6902 * editing/EditingBehavior.h: 6903 * page/EventHandler.cpp: 6904 (WebCore::EventHandler::sendContextMenuEvent): 6905 6906 2010-11-23 Avi Drissman <avi (a] google.com> 6907 6908 Reviewed by Antonio Gomes. 6909 6910 Add preference to not select when right-clicked 6911 https://bugs.webkit.org/show_bug.cgi?id=23351 6912 6913 Test: editing/selection/context-menu-text-selection.html 6914 6915 * editing/EditingBehavior.h: 6916 (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick): 6917 * page/EventHandler.cpp: 6918 (WebCore::EventHandler::sendContextMenuEvent): 6919 6920 2010-11-23 Alexander Pavlov <apavlov (a] chromium.org> 6921 6922 Reviewed by Pavel Feldman. 6923 6924 Web Inspector: [STYLES] invalid color values are not marked as such. 6925 https://bugs.webkit.org/show_bug.cgi?id=49960 6926 6927 Properties having a valid structure but invalid values will also 6928 be marked as non-parsedOk in the Styles pane. 6929 6930 * css/CSSGrammar.y: 6931 * inspector/InspectorStyleSheet.cpp: 6932 (WebCore::InspectorStyle::populateObjectWithStyleProperties): 6933 6934 2010-11-23 Adam Bergkvist <adam.bergkvist (a] ericsson.com> 6935 6936 Reviewed by Martin Robinson. 6937 6938 [GTK] Building with Blob support fails 6939 https://bugs.webkit.org/show_bug.cgi?id=49724 6940 6941 Build fix. 6942 6943 * GNUmakefile.am: 6944 * platform/gtk/FileSystemGtk.cpp: 6945 (WebCore::seekFile): Not implemented. 6946 6947 2010-11-23 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 6948 6949 Reviewed by Andreas Kling. 6950 6951 Make setShouldDelegateScrolling not a real setting, so that it works 6952 similar to the related setUseFixedLayout and setPaintEntireContents 6953 options which are all in ScrollView. 6954 6955 * page/FrameView.cpp: 6956 * page/FrameView.h: 6957 * page/Settings.cpp: 6958 (WebCore::Settings::Settings): 6959 * page/Settings.h: 6960 * platform/ScrollView.cpp: 6961 (WebCore::ScrollView::ScrollView): 6962 (WebCore::ScrollView::setDelegatesScrolling): 6963 * platform/ScrollView.h: 6964 (WebCore::ScrollView::delegatesScrolling): 6965 6966 2010-11-23 Adam Roben <aroben (a] apple.com> 6967 6968 Don't rely on DocumentLoader outliving the load/unload events 6969 6970 DocumentLoader::m_documentLoadTiming is used to record how long firing 6971 the load event took. But the DocumentLoader was being destroyed while 6972 the event was being dispatched (due to a call to document.open), which 6973 meant that when we tried to record the time when the load event 6974 finished, we were writing into freed memory. We now protect the 6975 DocumentLoader using a RefPtr. (I initially made a change where we 6976 would only access the DocumentLoader after the event has finished 6977 firing, but it seemed possible that a different DocumentLoader could 6978 have come into existence by then, which would cause us to record the 6979 times on the wrong DocumentLoadTiming struct.) 6980 6981 I only saw a crash when firing the load event, but the code for timing 6982 the unload event seemed like it was vulnerable to the same issue, so I 6983 made the same fix for it. 6984 6985 Fixes <http://webkit.org/b/49972> REGRESSION (r72415?): Crash in 6986 DOMWindow::dispatchTimedEvent when running fast/dom/onload-open.html 6987 6988 Reviewed by Darin Fisher. 6989 6990 * loader/FrameLoader.cpp: 6991 (WebCore::FrameLoader::stopLoading): 6992 * page/DOMWindow.cpp: 6993 (WebCore::DOMWindow::dispatchLoadEvent): 6994 Protect the DocumentLoader (and thus its DocumentLoadTiming) with a 6995 RefPtr. 6996 6997 2010-11-17 Zhenyao Mo <zmo (a] google.com> 6998 6999 Reviewed by Kenneth Russell. 7000 7001 readPixels should generate INVALID_ENUM if only one of type/format mismatch UNSIGNED_BYTE/RGBA 7002 https://bugs.webkit.org/show_bug.cgi?id=49673 7003 7004 Test: fast/canvas/webgl/read-pixels-test.html 7005 7006 * html/canvas/WebGLRenderingContext.cpp: 7007 (WebCore::WebGLRenderingContext::readPixels): 7008 7009 2010-11-23 Alexander Pavlov <apavlov (a] chromium.org> 7010 7011 Reviewed by Pavel Feldman. 7012 7013 Web Inspector: [STYLES] Use strike through as an 'overridden' marker. 7014 https://bugs.webkit.org/show_bug.cgi?id=49961 7015 7016 "line-through" is used for inactive properties overridden within the same style. 7017 7018 * inspector/front-end/inspector.css: 7019 (.styles-section .properties .overloaded, .styles-section .properties .inactive, .styles-section .properties .disabled): 7020 7021 2010-11-23 Yael Aharon <yael.aharon (a] nokia.com> 7022 7023 Reviewed by Antonio Gomes. 7024 7025 Spatial Navigation: Code cleanup 7026 https://bugs.webkit.org/show_bug.cgi?id=49442 7027 7028 Remove code that is not used anymore after http://trac.webkit.org/changeset/72522. 7029 Added const to canBeScrolledIntoView. 7030 No new tests because this is only code cleanup. 7031 7032 * page/FocusController.cpp: 7033 * page/FocusController.h: 7034 * page/SpatialNavigation.cpp: 7035 (WebCore::canBeScrolledIntoView): 7036 * page/SpatialNavigation.h: 7037 7038 2010-11-23 Jeremy Orlow <jorlow (a] chromium.org> 7039 7040 Reviewed by Steve Block. 7041 7042 Remove unimplemented (and untested) methods from IndexedDB 7043 https://bugs.webkit.org/show_bug.cgi?id=49911 7044 7045 * storage/IDBCursor.idl: 7046 * storage/IDBDatabase.idl: 7047 7048 2010-11-18 Satish Sampath <satish (a] chromium.org> 7049 7050 Reviewed by Jeremy Orlow. 7051 7052 For speech input event, send an event object containing all the recognition results and metadata. 7053 https://bugs.webkit.org/show_bug.cgi?id=49736 7054 7055 Currently the speech input event 'onwebkitspeechchange' receives no parameters. WebCore already 7056 has the full list of recognition results and populates only the top result into the input field 7057 automatically. In this patch we pass a SpeechInputEvent object to the event handler, and the JS 7058 code can access the full list of results via "event.results.length", "results[i].utterance" and 7059 "results[i].confidence". Also updated mock object with appropriate methods to test multiple results. 7060 7061 Test: fast/speech/input-onspeechchange-event.html 7062 7063 * CMakeLists.txt: 7064 * GNUmakefile.am: 7065 * WebCore.gypi: 7066 * WebCore.pri: 7067 * WebCore.pro: 7068 * WebCore.xcodeproj/project.pbxproj: 7069 * bindings/js/JSEventCustom.cpp: 7070 (WebCore::toJS): Added new event 7071 * bindings/v8/custom/V8EventCustom.cpp: 7072 (WebCore::toV8): Added new event 7073 * dom/Event.cpp: 7074 (WebCore::Event::isSpeechInputEvent): 7075 * dom/Event.h: 7076 * html/HTMLInputElement.cpp: 7077 * html/HTMLInputElement.h: 7078 * page/SpeechInputEvent.h: New file implementing SpeechInputEvent.idl 7079 (WebCore::SpeechInputEvent::~SpeechInputEvent): 7080 (WebCore::SpeechInputEvent::create): 7081 (WebCore::SpeechInputEvent::isSpeechInputEvent): 7082 (WebCore::SpeechInputEvent::results): 7083 (WebCore::SpeechInputEvent::SpeechInputEvent): 7084 * page/SpeechInputEvent.idl: New file defining SpeechInputEvent object 7085 * page/SpeechInputListener.h: 7086 * page/SpeechInputResult.cpp: 7087 (WebCore::SpeechInputResult::create): 7088 * page/SpeechInputResult.h: 7089 * page/SpeechInputResult.idl: New file defining a single SpeechInputResult object 7090 * page/SpeechInputResultList.h: New file implementing SpeechInputResultList.idl 7091 (WebCore::SpeechInputResultList::create): 7092 (WebCore::SpeechInputResultList::length): 7093 (WebCore::SpeechInputResultList::item): 7094 (WebCore::SpeechInputResultList::SpeechInputResultList): 7095 * page/SpeechInputResultList.idl: New file defining a list of SpeechInputResult objects 7096 * platform/mock/SpeechInputClientMock.cpp: 7097 (WebCore::SpeechInputClientMock::addRecognitionResult): Renamed method and added one parameter. 7098 (WebCore::SpeechInputClientMock::clearResults): 7099 (WebCore::SpeechInputClientMock::timerFired): 7100 * platform/mock/SpeechInputClientMock.h: 7101 * rendering/TextControlInnerElements.cpp: 7102 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Pass new event object to handler. 7103 7104 2010-11-22 Alexey Proskuryakov <ap (a] apple.com> 7105 7106 Reviewed by Darin Adler. 7107 7108 https://bugs.webkit.org/show_bug.cgi?id=49860 7109 CSS style rules don't GC protect objects reachable as their properties 7110 7111 Test: fast/dom/StyleSheet/gc-rule-children-wrappers.html 7112 7113 * Android.jscbindings.mk: 7114 * CMakeLists.txt: 7115 * GNUmakefile.am: 7116 * WebCore.gypi: 7117 * WebCore.pro: 7118 * WebCore.vcproj/WebCore.vcproj: 7119 * WebCore.xcodeproj/project.pbxproj: 7120 * bindings/js/JSBindingsAllInOne.cpp: 7121 Added new files, sorted appropriate sections for easier adding. 7122 7123 * bindings/js/JSCSSFontFaceRuleCustom.cpp: Added. 7124 (WebCore::JSCSSFontFaceRule::markChildren): 7125 * bindings/js/JSCSSImportRuleCustom.cpp: Added. 7126 (WebCore::JSCSSImportRule::markChildren): 7127 * bindings/js/JSCSSMediaRuleCustom.cpp: Added. 7128 (WebCore::JSCSSMediaRule::markChildren): 7129 * bindings/js/JSCSSPageRuleCustom.cpp: Added. 7130 (WebCore::JSCSSPageRule::markChildren): 7131 * bindings/js/JSCSSStyleRuleCustom.cpp: Added. 7132 (WebCore::JSCSSStyleRule::markChildren): 7133 * bindings/js/JSWebKitCSSKeyframeRuleCustom.cpp: Added. 7134 (WebCore::JSWebKitCSSKeyframeRule::markChildren): 7135 * bindings/js/JSWebKitCSSKeyframesRuleCustom.cpp: Added. 7136 (WebCore::JSWebKitCSSKeyframesRule::markChildren): 7137 Mark objects reachable through these ones. 7138 7139 * css/CSSFontFaceRule.idl: 7140 * css/CSSImportRule.idl: 7141 * css/CSSMediaRule.idl: 7142 * css/CSSPageRule.idl: 7143 * css/CSSStyleRule.idl: 7144 * css/WebKitCSSKeyframeRule.idl: 7145 * css/WebKitCSSKeyframesRule.idl: 7146 Added CustomMarkFunction IDL attribute. 7147 7148 2010-11-23 Helder Correia <helder (a] sencha.com> 7149 7150 Reviewed by Ariya Hidayat. 7151 7152 [Qt] Drawing an image on canvas with shadowBlur draws a solid shadow 7153 https://bugs.webkit.org/show_bug.cgi?id=49878 7154 7155 Add support for blurry shadows when drawing images on canvas. 7156 7157 Test: fast/canvas/canvas-drawImage-shadow.html 7158 7159 * platform/graphics/qt/ContextShadowQt.cpp: 7160 (WebCore::ContextShadow::endShadowLayer): Make composition work for solid shadow too. 7161 * platform/graphics/qt/ImageQt.cpp: 7162 (WebCore::BitmapImage::draw): Remove old shadow code and introduce ContextShadow. 7163 7164 2010-11-22 Patrick Gansterer <paroga (a] webkit.org> 7165 7166 Reviewed by Adam Roben. 7167 7168 Port ContextMenuWin.cpp to WinCE 7169 https://bugs.webkit.org/show_bug.cgi?id=48408 7170 7171 * platform/ContextMenu.h: 7172 * platform/win/ContextMenuWin.cpp: 7173 (WebCore::ContextMenu::ContextMenu): 7174 (WebCore::ContextMenu::itemCount): 7175 (WebCore::insertMenuItem): 7176 (WebCore::ContextMenu::insertItem): 7177 (WebCore::contextMenuItemByIdOrPosition): 7178 (WebCore::ContextMenu::setPlatformDescription): 7179 (WebCore::contextMenuItemVector): 7180 (WebCore::platformMenuDescription): 7181 7182 2010-11-22 David Hyatt <hyatt (a] apple.com> 7183 7184 Back out r72527 since it caused multiple rendering regressions. Details in bug. 7185 7186 * rendering/InlineFlowBox.cpp: 7187 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 7188 * rendering/RenderListItem.cpp: 7189 (WebCore::RenderListItem::positionListMarker): 7190 7191 2010-11-22 John Knottenbelt <jknotten (a] chromium.org> 7192 7193 Reviewed by Steve Block. 7194 7195 Implement mocks for client-based Geolocation. 7196 https://bugs.webkit.org/show_bug.cgi?id=49258 7197 7198 * Android.mk: 7199 * CMakeLists.txt: 7200 * GNUmakefile.am: 7201 * WebCore.gypi: 7202 * WebCore.pro: 7203 * WebCore.vcproj/WebCore.vcproj: 7204 * WebCore.xcodeproj/project.pbxproj: 7205 * platform/mock/GeolocationClientMock.cpp: Added. 7206 (WebCore::GeolocationClientMock::GeolocationClientMock): 7207 (WebCore::GeolocationClientMock::~GeolocationClientMock): 7208 (WebCore::GeolocationClientMock::setController): 7209 (WebCore::GeolocationClientMock::setPosition): 7210 (WebCore::GeolocationClientMock::setError): 7211 (WebCore::GeolocationClientMock::geolocationDestroyed): 7212 (WebCore::GeolocationClientMock::startUpdating): 7213 (WebCore::GeolocationClientMock::stopUpdating): 7214 (WebCore::GeolocationClientMock::setEnableHighAccuracy): 7215 (WebCore::GeolocationClientMock::lastPosition): 7216 (WebCore::GeolocationClientMock::timerFired): 7217 (WebCore::GeolocationClientMock::makeGeolocationCallback): 7218 * platform/mock/GeolocationClientMock.h: Added. 7219 7220 2010-11-22 Tony Gentilcore <tonyg (a] chromium.org> 7221 7222 Reviewed by Adam Barth. 7223 7224 Fix bogus include guard. 7225 7226 * loader/NavigationScheduler.h: 7227 7228 2010-11-22 Andreas Kling <kling (a] webkit.org> 7229 7230 Reviewed by Ariya Hidayat. 7231 7232 [Qt] Canvas: strokeText() and fillText() produce same shadow 7233 https://bugs.webkit.org/show_bug.cgi?id=48845 7234 7235 Test: fast/canvas/canvas-strokeText-strokes-shadow.html 7236 7237 * platform/graphics/qt/FontQt.cpp: 7238 (WebCore::drawTextCommon): Stroke the shadow rather than filling it in the cTextStroke case. 7239 7240 2010-11-22 Patrick Gansterer <paroga (a] webkit.org> 7241 7242 Reviewed by Sam Weinig. 7243 7244 Use WTF::FixedArray::size() 7245 https://bugs.webkit.org/show_bug.cgi?id=49891 7246 7247 * dom/Document.cpp: 7248 (WebCore::Document::~Document): 7249 7250 2010-11-22 Ryosuke Niwa <rniwa (a] webkit.org> 7251 7252 Reviewed by Tony Chang. 7253 7254 SelectionController::typingStyle() should return EditingStyle* 7255 https://bugs.webkit.org/show_bug.cgi?id=49813 7256 7257 Changed the return type of SelectionController::typingStyle to EditingStyle*. 7258 7259 Extracted textDirection from Editor::textDirectionForSelection to hide the underlying 7260 CSSMutableStyleDeclaration. 7261 7262 Also extracted the code to preserve unicode-bidi and direction CSS properties in 7263 InsertTextCommand::input, and moved into EditingStyle::prepareToApplyAt. ShouldPreserveWritingDirection, 7264 which is added to the argument list of EditingStyle::prepareToApplyAt, decides whether or not 7265 these two properties are preserved. 7266 7267 Also added SelectionController::copyTypingStyle() to copy the typing style as an instance of 7268 CSSMutableStyleDeclaration. 7269 7270 No new tests are added since this is a refactoring. 7271 7272 * editing/EditingStyle.cpp: 7273 (WebCore::EditingStyle::textDirection): Extracted from Editor::textDirectionForSelection. 7274 (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode): Added a missing null check. 7275 (WebCore::EditingStyle::prepareToApplyAt): See above. 7276 (WebCore::editingStyleIncludingTypingStyle): Calls SelectionController::typingStyle. 7277 * editing/EditingStyle.h: Moved WritingDirection from Editor.h 7278 * editing/Editor.cpp: 7279 (WebCore::Editor::textDirectionForSelection): Calls EditingStyle::textDirection. 7280 (WebCore::Editor::computeAndSetTypingStyle): Calls SelectionController::typingStyle. 7281 (WebCore::Editor::selectionComputedStyle): Ditto. 7282 (WebCore::Editor::styleForSelectionStart): Ditto. 7283 * editing/Editor.h: 7284 * editing/InsertLineBreakCommand.cpp: 7285 (WebCore::InsertLineBreakCommand::doApply): Ditto. 7286 * editing/InsertTextCommand.cpp: 7287 (WebCore::InsertTextCommand::input): Calls EditingStyle::prepareToApplyAt with PreserveWritingDirection. 7288 * editing/SelectionController.h: 7289 (WebCore::SelectionController::typingStyle): Returns EditingStyle* rather than CSSMutableStyleDeclaration*. 7290 (WebCore::SelectionController::copyTypingStyle): Added. 7291 7292 2010-11-22 Patrick Gansterer <paroga (a] webkit.org> 7293 7294 Reviewed by Adam Roben. 7295 7296 [WINCE] Set correct preprocessor definitions 7297 https://bugs.webkit.org/show_bug.cgi?id=49887 7298 7299 * config.h: 7300 7301 2010-11-22 James Robinson <jamesr (a] chromium.org> 7302 7303 Reviewed by Dimitri Glazkov. 7304 7305 [chromium] font-size:0 text runs should have zero width 7306 https://bugs.webkit.org/show_bug.cgi?id=49871 7307 7308 Returns 0 from platformWidthForGlyph if the specified font size is 0. 7309 7310 Test: fast/text/font-size-zero.html 7311 7312 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: 7313 (WebCore::SimpleFontData::platformWidthForGlyph): 7314 * platform/graphics/chromium/SimpleFontDataLinux.cpp: 7315 (WebCore::SimpleFontData::platformWidthForGlyph): 7316 7317 2010-11-22 Charlie Reis <creis (a] chromium.org> 7318 7319 Reviewed by Darin Fisher. 7320 7321 Update correct content state during back/forward navigations 7322 https://bugs.webkit.org/show_bug.cgi?id=48809 7323 7324 Ensures that history's previousItem is non-null when clients try to 7325 update content state (e.g., Chromium's UpdateSessionHistory). We now 7326 track load completions with a boolean field rather than by clearing 7327 previousItem. 7328 7329 Test: fast/history/saves-state-after-frame-nav.html 7330 7331 * loader/HistoryController.cpp: 7332 * loader/HistoryController.h: 7333 7334 2010-11-22 Luiz Agostini <luiz.agostini (a] openbossa.org> 7335 7336 Unreviewed, Windows build fix. 7337 7338 Adding JSMediaQueryList to DerivedSources.cpp. 7339 7340 * DerivedSources.cpp: 7341 7342 2010-11-22 Adam Roben <aroben (a] apple.com> 7343 7344 Use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops files 7345 7346 Apple's Windows build allows placing header files and import libraries for WebKit's 7347 dependencies (CoreGraphics, CFNetwork, SQLite, etc.) outside the source tree via the 7348 $WebKitLibrariesDir environment variable. This is both required for production builds and 7349 convenient for Apple-internal developer builds. Apple's production builds also require that 7350 WebKit's shared .vsprops files be accessed relative to $WebKitLibrariesDir. In production 7351 builds, the files are copied into that directory tree by the 7352 WebKitLibraries/win/tools/WinTools.make file. In Apple-internal developer builds, the 7353 copying is done by 7354 JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make. 7355 7356 This .vsprops copying is problematic in one very important case: when a developer updates 7357 their source tree and then tries to build. Visual Studio only reads .vsprops files when a 7358 project is first loaded. So, when Visual Studio is first opened after the .vsprops files are 7359 updated, it reads in the old files that were already residing in $WebKitLibrariesDir. When a 7360 build is started, JavaScriptCoreGenerated.make copies the new .vsprops files into 7361 $WebKitLibrariesDir, but Visual Studio will not pick up the changes. The rest of the build 7362 will proceed with out-of-date .vsprops files, which will likely result in a build failure. 7363 7364 To fix this, we now use normal relative paths to access the .vsprops files in the source 7365 tree rather than in $WebKitLibrariesDir, but prefix those paths with a new environment 7366 variable, $WebKitVSPropsRedirectionDir. In developer builds, this environment variable is 7367 unset, so the normal relative paths are used to read the .vsprops files out of the source 7368 tree directly. In production builds, this environment variable is set to a fake directory 7369 that will cause the .vsprops files in $WebKitLibrariesDir to be found when the relative path 7370 is resolved. 7371 7372 For example, JavaScriptCore.vcproj uses this path for FeatureDefines.vsprops: 7373 7374 $(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops 7375 7376 In developer builds, where $WebKitVSPropsRedirectionDir is unset, this will point to the 7377 files in WebKitLibraries\win\tools\vsprops in the source tree. In production builds, 7378 JavaScriptCore.make sets $WebKitVSPropsRedirectionDir to 7379 "$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\", so the full path for 7380 FeatureDefines.vsprops becomes: 7381 7382 $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops 7383 7384 which resolves to: 7385 7386 $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops 7387 7388 (We rely on the fact that Windows doesn't care whether the directories "1", "2", and "3" 7389 actually exist since they are matched by an equal number of ".." path components.) 7390 7391 Note that Visual Studio still won't pick up changes made to .vsprops files while Visual 7392 Studio is open, but that problem hasn't seemed to cause developers many headaches so far. 7393 7394 Fixes <http://webkit.org/b/49181> Windows build fails mysteriously when .vsprops files are 7395 updated 7396 7397 Reviewed by Dave Hyatt. 7398 7399 * WebCore.vcproj/WebCore.make: Set $WebKitVSPropsRedirectionDir so that 7400 production builds can find the .vsprops files. 7401 7402 * WebCore.vcproj/QTMovieWin.vcproj: 7403 * WebCore.vcproj/WebCore.vcproj: 7404 Changed to use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops 7405 files. 7406 7407 2010-10-21 Luiz Agostini <luiz.agostini (a] openbossa.org> 7408 7409 Reviewed by Darin Adler. 7410 7411 Implement CSSOM View matchMedia interface 7412 https://bugs.webkit.org/show_bug.cgi?id=37205 7413 7414 New interfaces may be used to evaluate media queries and to associate listeners 7415 to media queries. Those listeners are called whenever the associated query changes. 7416 Specification may be found at http://dev.w3.org/csswg/cssom-view/#the-mediaquerylist-interface 7417 7418 operator== added to JS version of ScriptValue. 7419 Method isFunction added to JS and V8 versions of ScriptValue. 7420 7421 * bindings/js/ScriptValue.cpp: 7422 (WebCore::ScriptValue::isFunction): 7423 * bindings/js/ScriptValue.h: 7424 (WebCore::ScriptValue::operator==): 7425 * bindings/v8/ScriptValue.h: 7426 (WebCore::ScriptValue::isFunction): 7427 7428 Some changes were needed to the code generators to handle type MediaQueryListListener. 7429 7430 * bindings/scripts/CodeGeneratorGObject.pm: 7431 * bindings/scripts/CodeGeneratorJS.pm: 7432 * bindings/scripts/CodeGeneratorV8.pm: 7433 7434 Some changes to the bindings test results that were previously added. 7435 7436 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: 7437 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h: 7438 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: 7439 (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod): 7440 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: 7441 (WebCore::TestMediaQueryListListenerInternal::methodCallback): 7442 (WebCore::ConfigureV8TestMediaQueryListListenerTemplate): 7443 7444 New interfaces: 7445 7446 * css/MediaQueryList.cpp: Added. 7447 * css/MediaQueryList.h: Added. 7448 * css/MediaQueryList.idl: Added. 7449 7450 * css/MediaQueryListListener.cpp: Added. 7451 * css/MediaQueryListListener.h: Added. 7452 * css/MediaQueryListListener.idl: Added. 7453 7454 To avoid adding code to classes DOMWindow and Document a new class MediaQueryMatcher was created. 7455 7456 * css/MediaQueryMatcher.cpp: Added. 7457 * css/MediaQueryMatcher.h: Added. 7458 7459 Document and DOMWindow have changed to support new features. DOMWindow is the class that 7460 publishes methods matchMedia but for page cache to work properly the reference to the 7461 MediaQueryMatcher must be in Document. 7462 7463 * dom/Document.cpp: 7464 (WebCore::Document::~Document): 7465 (WebCore::Document::mediaQueryMatcher): 7466 (WebCore::Document::styleSelectorChanged): 7467 * dom/Document.h: 7468 * page/DOMWindow.cpp: 7469 (WebCore::DOMWindow::matchMedia): 7470 * page/DOMWindow.h: 7471 * page/DOMWindow.idl: 7472 7473 Build systems 7474 7475 * CMakeLists.txt: 7476 * DerivedSources.make: 7477 * GNUmakefile.am: 7478 * WebCore.gypi: 7479 * WebCore.pri: 7480 * WebCore.pro: 7481 * WebCore.vcproj/WebCore.vcproj: 7482 * WebCore.xcodeproj/project.pbxproj: 7483 * bindings/gobject/GNUmakefile.am: 7484 7485 Tests: fast/media/media-query-list-01.html 7486 fast/media/media-query-list-02.html 7487 fast/media/media-query-list-03.html 7488 fast/media/media-query-list-04.html 7489 fast/media/media-query-list-05.html 7490 fast/media/media-query-list-06.html 7491 fast/media/media-query-list-07.html 7492 7493 2010-11-22 Alexander Pavlov <apavlov (a] chromium.org> 7494 7495 Reviewed by Pavel Feldman. 7496 7497 Web Inspector: [REGRESSION] Contents of rules inside @media not displayed/editable 7498 https://bugs.webkit.org/show_bug.cgi?id=49804 7499 7500 * css/CSSImportRule.cpp: 7501 (WebCore::CSSImportRule::insertedIntoParent): 7502 * inspector/InspectorCSSAgent.cpp: 7503 (WebCore::InspectorCSSAgent::setStyleSheetText2): 7504 * inspector/InspectorStyleSheet.cpp: 7505 (WebCore::asCSSRuleList): 7506 (WebCore::InspectorStyleSheet::reparseStyleSheet): 7507 (WebCore::InspectorStyleSheet::setText): 7508 (WebCore::InspectorStyleSheet::addRule): 7509 (WebCore::InspectorStyleSheet::ruleForId): 7510 (WebCore::InspectorStyleSheet::ruleIndexByStyle): 7511 (WebCore::InspectorStyleSheet::ensureText): 7512 (WebCore::InspectorStyleSheet::ensureSourceData): 7513 (WebCore::InspectorStyleSheet::ensureFlatRules): 7514 (WebCore::InspectorStyleSheet::revalidateStyle): 7515 (WebCore::InspectorStyleSheet::buildArrayForRuleList): 7516 (WebCore::InspectorStyleSheet::fixUnparsedPropertyRanges): 7517 (WebCore::InspectorStyleSheet::collectFlatRules): 7518 * inspector/InspectorStyleSheet.h: 7519 7520 2010-11-22 Ilya Tikhonovsky <loislo (a] chromium.org> 7521 7522 Reviewed by Pavel Feldman. 7523 7524 Web Inspector: dump inspector protocol messages into console. 7525 Sometimes I need to dump inspector messages into console. 7526 It'd be much simple to have this code in repository and 7527 enable protocol dumping just by a flag. 7528 7529 https://bugs.webkit.org/show_bug.cgi?id=49905 7530 7531 * inspector/CodeGeneratorInspector.pm: 7532 * inspector/front-end/WorkersSidebarPane.js: 7533 (WebInspector.WorkersSidebarPane.prototype.reset): 7534 * inspector/front-end/inspector.js: 7535 (WebInspector_syncDispatch): 7536 7537 2010-11-22 Andreas Kling <kling (a] webkit.org> 7538 7539 Reviewed by Nikolas Zimmermann. 7540 7541 GraphicsContext: Make drawFocusRing() take a Path instead of a Vector<Path> 7542 https://bugs.webkit.org/show_bug.cgi?id=49840 7543 7544 This avoid copying a Path object when drawing focus rings. 7545 7546 * platform/graphics/GraphicsContext.h: 7547 * platform/graphics/cairo/GraphicsContextCairo.cpp: 7548 (WebCore::GraphicsContext::drawFocusRing): 7549 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 7550 (WebCore::GraphicsContext::drawFocusRing): 7551 * platform/graphics/mac/GraphicsContextMac.mm: 7552 (WebCore::GraphicsContext::drawFocusRing): 7553 * platform/graphics/qt/GraphicsContextQt.cpp: 7554 (WebCore::GraphicsContext::drawFocusRing): 7555 * platform/graphics/skia/GraphicsContextSkia.cpp: 7556 (WebCore::GraphicsContext::drawFocusRing): 7557 * platform/graphics/win/GraphicsContextCGWin.cpp: 7558 (WebCore::GraphicsContext::drawFocusRing): 7559 * platform/graphics/wince/GraphicsContextWinCE.cpp: 7560 (WebCore::GraphicsContext::drawFocusRing): 7561 * platform/graphics/wx/GraphicsContextWx.cpp: 7562 (WebCore::GraphicsContext::drawFocusRing): 7563 * rendering/RenderImage.h: 7564 * rendering/RenderImage.cpp: 7565 (WebCore::RenderImage::paint): 7566 (WebCore::RenderImage::paintFocusRing): 7567 Renamed from paintFocusRings since it only paints one ring. 7568 7569 2010-11-22 Renata Hodovan <reni (a] webkit.org> 7570 7571 Reviewed by Andreas Kling. 7572 7573 Outside list bullets ignore text-align style. 7574 https://bugs.webkit.org/show-bug.cgi?id=15713 7575 7576 Fix the position of outside markers by setting its logicalLeft member. Embedded markers need special treatment. 7577 First, the total width of markers should be calculated. Subtracting it from logicalLeft we get the outermost bullet's 7578 position. As for the others, this sum should be decremented with the previous marker's width. 7579 In case of vertical markers the padding is unneeded. 7580 7581 Test: fast/lists/outSideListMarkers.html 7582 7583 * rendering/InlineFlowBox.cpp: 7584 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 7585 * rendering/RenderListItem.cpp: 7586 (WebCore::RenderListItem::positionListMarker): 7587 7588 2010-11-22 Yael Aharon <yael.aharon (a] nokia.com>, Chang Shu <chang.shu (a] nokia.com> 7589 7590 Reviewed by Antonio Gomes. 7591 7592 Spatial Navigation: issues with the node selection algorithm. 7593 https://bugs.webkit.org/show_bug.cgi?id=49382 7594 7595 Modify the Spatial Navigation algorithm, to better handle initial focus and 7596 navigation between frames. 7597 The new algorithm takes the rect of the focused node as the startingRect, 7598 instead of the node itself. That allows us to construct a virtual rect if 7599 there is no focused node, or if it is off the screen. 7600 The virtual rect is the edge of the container in the direction of the navigation. 7601 7602 With this patch, scrollable containers and frames will scroll regardless of weather 7603 they have focusable content. Users will be able to use arrow keys to view all the 7604 content of such a container. The only exception is if the container has style overflow:hidden. 7605 We will not scroll in that case. 7606 7607 With this patch, we handle z-index and positioning so that if there are 2 overlapping focusable nodes, 7608 we do a hit test and only the node on top can get focus. 7609 7610 hasOffScreenRect() was modified so that it can check if a node will be off-screen even after we scrolled 7611 its parent container. We do not add the scrolling conditions for containers that have overflow:hidden 7612 and cannot scroll. 7613 7614 calculateScrollbarModesForLayout is used to decide if a frame can scroll or not. We cannot rely on 7615 the exsistance of the scrollbar, because it could be removed via the API, while the frame is still 7616 allowed to scroll. 7617 7618 * page/FocusController.cpp: 7619 (WebCore::updateFocusCandidateIfNeeded): 7620 (WebCore::FocusController::findFocusCandidateInContainer): 7621 (WebCore::FocusController::advanceFocusDirectionallyInContainer): 7622 (WebCore::FocusController::advanceFocusDirectionally): 7623 * page/FocusController.h: 7624 * page/FrameView.h: 7625 * page/SpatialNavigation.cpp: 7626 (WebCore::FocusCandidate::FocusCandidate): 7627 (WebCore::distanceDataForNode): 7628 (WebCore::alignmentForRects): 7629 (WebCore::areRectsMoreThanFullScreenApart): 7630 (WebCore::isRectInDirection): 7631 (WebCore::hasOffscreenRect): 7632 (WebCore::scrollInDirection): 7633 (WebCore::isScrollableContainerNode): 7634 (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDirection): 7635 (WebCore::canScrollInDirection): 7636 (WebCore::rectToAbsoluteCoordinates): 7637 (WebCore::nodeRectInAbsoluteCoordinates): 7638 (WebCore::frameRectInAbsoluteCoordinates): 7639 (WebCore::entryAndExitPointsForDirection): 7640 (WebCore::canBeScrolledIntoView): 7641 (WebCore::virtualRectForDirection): 7642 * page/SpatialNavigation.h: 7643 7644 2010-11-22 Nikolas Zimmermann <nzimmermann (a] rim.com> 7645 7646 Reviewed by Dirk Schulze. 7647 7648 Fix various problems with the SVG*List code 7649 https://bugs.webkit.org/show_bug.cgi?id=49880 7650 7651 Write tests for SVGNumberList/SVGPointList/SVGStringList/SVGTransformList and extend SVGLengthList tests. 7652 SVG DOM <-> XML DOM synchronization is now tested for all these types, and works great. Unify the string format produced 7653 by the various valueAsString() functions for maximum compatibility with Firefox / Opera. 7654 7655 * Build a real transform string for SVGTransformList, instead of dumping the elements of the concatted matrix. 7656 * Add SVGStringList XML dom synchronization, only affects SVGTests requiredFeatures/requiredExtensions/systemLanguage. 7657 * Make all animVal properties readonly, tested by types-dom-07-f.svg (from SVG 1.1 2nd edition). 7658 * Enable StrictTypeChecking/RequiresAllArguments=Raise for all SVGList types. 7659 7660 Tests: svg/W3C-SVG-1.1-SE/types-dom-07-f.svg 7661 svg/dom/SVGNumberList-basics.xhtml 7662 svg/dom/SVGPointList-basics.xhtml 7663 svg/dom/SVGStringList-basics.xhtml 7664 svg/dom/SVGTransformList-basics.xhtml 7665 7666 * bindings/js/JSSVGLengthCustom.cpp: 7667 (WebCore::JSSVGLength::setValue): Throw NO_MODIFICATION_ALLOWED_ERR when the SVGPropertyTearOffs role is AnimValRole. 7668 (WebCore::JSSVGLength::convertToSpecifiedUnits): Ditto. 7669 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 7670 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 7671 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 7672 * bindings/v8/custom/V8SVGLengthCustom.cpp: 7673 (WebCore::V8SVGLength::valueAccessorSetter): Ditto. 7674 (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback): Ditto. 7675 * svg/SVGAElement.cpp: 7676 (WebCore::SVGAElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7677 * svg/SVGAnimationElement.cpp: 7678 (WebCore::SVGAnimationElement::synchronizeProperty): Ditto. 7679 * svg/SVGCircleElement.cpp: 7680 (WebCore::SVGCircleElement::synchronizeProperty): Ditto. 7681 * svg/SVGClipPathElement.cpp: 7682 (WebCore::SVGClipPathElement::synchronizeProperty): Ditto. 7683 * svg/SVGCursorElement.cpp: 7684 (WebCore::SVGCursorElement::synchronizeProperty): Ditto. 7685 * svg/SVGDefsElement.cpp: 7686 (WebCore::SVGDefsElement::synchronizeProperty): Ditto. 7687 * svg/SVGEllipseElement.cpp: 7688 (WebCore::SVGEllipseElement::synchronizeProperty): Ditto. 7689 * svg/SVGForeignObjectElement.cpp: 7690 (WebCore::SVGForeignObjectElement::synchronizeProperty): Ditto. 7691 * svg/SVGGElement.cpp: 7692 (WebCore::SVGGElement::synchronizeProperty): Ditto. 7693 * svg/SVGImageElement.cpp: 7694 (WebCore::SVGImageElement::synchronizeProperty): Ditto. 7695 * svg/SVGLengthList.cpp: 7696 (WebCore::SVGLengthList::valueAsString): Use ' ' instead of ',' as seperator. 7697 * svg/SVGLengthList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise. 7698 * svg/SVGLineElement.cpp: 7699 (WebCore::SVGLineElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7700 * svg/SVGMaskElement.cpp: 7701 (WebCore::SVGMaskElement::synchronizeProperty): Ditto. 7702 * svg/SVGNumberList.cpp: 7703 (WebCore::SVGNumberList::valueAsString): Use ' ' instead of ',' as seperator. 7704 * svg/SVGNumberList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise. 7705 * svg/SVGPathElement.cpp: 7706 (WebCore::SVGPathElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7707 * svg/SVGPatternElement.cpp: 7708 (WebCore::SVGPatternElement::synchronizeProperty): Ditto. 7709 * svg/SVGPointList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise. 7710 * svg/SVGPolyElement.cpp: 7711 (WebCore::SVGPolyElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7712 * svg/SVGRectElement.cpp: 7713 (WebCore::SVGRectElement::synchronizeProperty): Ditto. 7714 * svg/SVGSVGElement.cpp: 7715 (WebCore::SVGSVGElement::synchronizeProperty): Ditto. 7716 * svg/SVGStringList.cpp: 7717 (WebCore::SVGStringList::valueAsString): Add valueAsString() implementation, necessary for SVG DOM <-> XML DOM synchronization. 7718 * svg/SVGStringList.h: 7719 * svg/SVGStringList.idl: Enable StrictTypeChecking, RequiresAllArguments=Raise. 7720 * svg/SVGSwitchElement.cpp: 7721 (WebCore::SVGSwitchElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7722 * svg/SVGTests.cpp: Rewrite, similar to SVGPolyElement, to synchronize the requiredFeatures/requiredExtension/systemLanguage SVGStringLists with their XML DOM attributes. 7723 (WebCore::SVGTests::SVGTests): 7724 (WebCore::SVGTests::isValid): 7725 (WebCore::SVGTests::parseMappedAttribute): 7726 (WebCore::SVGTests::isKnownAttribute): 7727 (WebCore::SVGTests::handleAttributeChange): 7728 (WebCore::SVGTests::synchronizeProperties): To be called by all classes inheriting from SVGTests, in their synchronizeProperty() methods. 7729 (WebCore::SVGTests::synchronizeRequiredFeatures): 7730 (WebCore::SVGTests::synchronizeRequiredExtensions): 7731 (WebCore::SVGTests::synchronizeSystemLanguage): 7732 (WebCore::SVGTests::requiredFeatures): 7733 (WebCore::SVGTests::requiredExtensions): 7734 (WebCore::SVGTests::systemLanguage): 7735 * svg/SVGTests.h: 7736 * svg/SVGTextContentElement.cpp: 7737 (WebCore::SVGTextContentElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7738 * svg/SVGTransform.cpp: 7739 (WebCore::SVGTransform::valueAsString): Added a proper way to serialize a SVGTransform into a String. 7740 * svg/SVGTransform.h: 7741 * svg/SVGTransformList.cpp: 7742 (WebCore::SVGTransformList::valueAsString): Rewrite, to build a real transform list string, instead of dumping the concatted matrix. 7743 * svg/SVGUseElement.cpp: 7744 (WebCore::SVGUseElement::synchronizeProperty): Also synchronize the SVGTests SVGStringLists. 7745 * svg/properties/SVGListProperty.h: s/TYPE_MISMATCH_ERR/SVGException::SVG_WRONG_TYPE_ERR/ for compatibility with Firefox. 7746 (WebCore::SVGListProperty::initializeValuesAndWrappers): 7747 (WebCore::SVGListProperty::insertItemBeforeValuesAndWrappers): 7748 (WebCore::SVGListProperty::replaceItemValues): 7749 (WebCore::SVGListProperty::replaceItemValuesAndWrappers): 7750 (WebCore::SVGListProperty::removeItemValuesAndWrappers): Handle corner case, the item passed to removeItem() was the only on in the list, list is empty now, nothing to replace. 7751 (WebCore::SVGListProperty::appendItemValuesAndWrappers): 7752 (WebCore::SVGListProperty::role): Expose the role of this list property. 7753 * svg/properties/SVGPathSegListPropertyTearOff.h: s/TYPE_MISMATCH_ERR/SVGException::SVG_WRONG_TYPE_ERR/ for compatibility with Firefox. 7754 (WebCore::SVGPathSegListPropertyTearOff::initialize): 7755 (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore): 7756 (WebCore::SVGPathSegListPropertyTearOff::replaceItem): 7757 (WebCore::SVGPathSegListPropertyTearOff::appendItem): 7758 * svg/properties/SVGProperty.h: Add new virtual SVGPropertyRole role() accessor. 7759 * svg/properties/SVGPropertyTearOff.h: 7760 (WebCore::SVGPropertyTearOff::create): Store the passed in SVGProperyRole, instead of ignoring it. 7761 (WebCore::SVGPropertyTearOff::role): 7762 (WebCore::SVGPropertyTearOff::SVGPropertyTearOff): 7763 * svg/properties/SVGStaticPropertyTearOff.h: 7764 (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): Pass UndefinedRole as default role to SVGPropertyTearOff. 7765 * svg/properties/SVGStaticPropertyWithParentTearOff.h: Ditto. 7766 (WebCore::SVGStaticPropertyWithParentTearOff::SVGStaticPropertyWithParentTearOff): 7767 7768 2010-11-22 Yuzo Fujishima <yuzo (a] google.com> 7769 7770 Reviewed by Dan Bernstein. 7771 7772 Fix for Bug 49374 - Web Font specified with base64 data URI ending with EOT is not rendered. 7773 https://bugs.webkit.org/show_bug.cgi?id=49374 7774 7775 Test: fast/css/font-face-data-uri.html 7776 7777 * css/CSSFontFaceSrcValue.cpp: 7778 (WebCore::CSSFontFaceSrcValue::isSupportedFormat): Do not check "file 7779 extension" for data URI. For other URI, check against ".eot" rather 7780 than "eot". 7781 7782 2010-11-21 Patrick Gansterer <paroga (a] webkit.org> 7783 7784 Reviewed by Csaba Osztrogonc. 7785 7786 Use WTF_ARRAY_LENGTH in WebCore directory 7787 https://bugs.webkit.org/show_bug.cgi?id=49882 7788 7789 * accessibility/AccessibilityObject.cpp: 7790 (WebCore::createARIARoleMap): 7791 * bindings/js/JSDOMWindowBase.cpp: 7792 (WebCore::JSDOMWindowBase::JSDOMWindowBase): 7793 * bindings/scripts/CodeGeneratorV8.pm: 7794 * bindings/scripts/test/V8/V8TestObj.cpp: 7795 (WebCore::ConfigureV8TestObjTemplate): 7796 * css/CSSComputedStyleDeclaration.cpp: 7797 * css/CSSMutableStyleDeclaration.cpp: 7798 (WebCore::CSSMutableStyleDeclaration::getPropertyValue): 7799 * css/CSSParser.cpp: 7800 (WebCore::CSSParser::parseAnimationShorthand): 7801 (WebCore::CSSParser::parseTransitionShorthand): 7802 * css/CSSPropertyLonghand.cpp: 7803 (WebCore::initShorthandMap): 7804 * dom/ExceptionCode.cpp: 7805 (WebCore::getExceptionCodeDescription): 7806 * editing/ApplyStyleCommand.cpp: 7807 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): 7808 * editing/EditingStyle.cpp: 7809 * editing/Editor.cpp: 7810 (WebCore::triStateOfStyle): 7811 * editing/EditorCommand.cpp: 7812 (WebCore::createCommandMap): 7813 * editing/MarkupAccumulator.cpp: 7814 (WebCore::appendCharactersReplacingEntities): 7815 * html/canvas/WebGLBuffer.cpp: 7816 (WebCore::WebGLBuffer::getCachedMaxIndex): 7817 (WebCore::WebGLBuffer::setCachedMaxIndex): 7818 * loader/FTPDirectoryParser.cpp: 7819 (WebCore::parseOneFTPLine): 7820 * mathml/RenderMathMLOperator.cpp: 7821 (WebCore::RenderMathMLOperator::updateFromElement): 7822 * page/animation/AnimationBase.cpp: 7823 (WebCore::addShorthandProperties): 7824 * rendering/RenderTextControl.cpp: 7825 (WebCore::RenderTextControl::hasValidAvgCharWidth): 7826 * rendering/break_lines.cpp: 7827 * svg/SVGTransformable.cpp: 7828 (WebCore::parseAndSkipType): 7829 * svg/SVGViewSpec.cpp: 7830 (WebCore::SVGViewSpec::parseViewSpec): 7831 * svg/SVGZoomAndPan.cpp: 7832 (WebCore::SVGZoomAndPan::parseZoomAndPan): 7833 * xml/XPathFunctions.cpp: 7834 (WebCore::XPath::createFunctionMap): 7835 7836 2010-11-21 Mario Sanchez Prada <msanchez (a] igalia.com> 7837 7838 Reviewed by Chris Fleizach. 7839 7840 [GTK] Implement ROLE_COMBO_BOX 7841 https://bugs.webkit.org/show_bug.cgi?id=25678 7842 7843 Implement the remaining bits for combo boxes. 7844 7845 This patch finishes the implementation, from the point of view of 7846 the Atk library, of those objects exposed to ATK as combo boxes, 7847 and their related elements (menus and menu items). It therefore 7848 implements the proper interfaces for each type of object related 7849 to combo boxes (AtkSelection for the combo box, AtkText for every 7850 menu item and AtkAction for the combo box, the menu and the menu 7851 items), takes care of emitting the proper signals when focus or a 7852 given a selection changes and adds a new unit test to check all 7853 this new stuff. 7854 7855 Make possible to ask an AccessibleMenuListOption for a sensible 7856 string representation, so far only available through the private 7857 and MSAA related method nameForMSAA. Just moved the implementation 7858 of that method to an overriden version of stringValue(), which is 7859 platform independent, and called that from nameForMSAA(). 7860 7861 * accessibility/AccessibilityMenuListOption.h: 7862 * accessibility/AccessibilityMenuListOption.cpp: 7863 (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to 7864 stringValue(), which holds from now on that used to be here. 7865 (WebCore::AccessibilityMenuListOption::stringValue): New, override 7866 of AccessibilityObject::stringValue() to return a proper string. 7867 7868 Emit the missing signals when a selection is made. 7869 7870 * accessibility/gtk/AXObjectCacheAtk.cpp: 7871 (WebCore::AXObjectCache::postPlatformNotification): Emit the usual 7872 'focus' signals when a selection is made over the combo box. 7873 7874 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 7875 (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED 7876 Atk states are added to the state set when needed. 7877 (listObjectForSelection): New, returns the proper list object (the 7878 one holding the list of available options as its children) for an 7879 specific AtkObject implementing AtkSelection. This is needed 7880 because sometimes the selectable options are not directly children 7881 of the AtkSelection object (i.e. a combo box has a 'menu' object 7882 as its only child of it, holding the list of options as children). 7883 (optionFromList): Use listObjectForSelection() to get the actual 7884 object holding the list of children as the available options. 7885 (optionFromSelection): Add support for combo boxes. 7886 (webkit_accessible_selection_add_selection): Ditto. 7887 (webkit_accessible_selection_clear_selection): Ditto. 7888 (webkit_accessible_selection_get_selection_count): Ditto. 7889 (webkit_accessible_selection_is_child_selected): Ditto. 7890 (webkit_accessible_selection_remove_selection): Ditto. 7891 (webkit_accessible_text_get_text): Makes sure stringValue() is 7892 considered to get the result substring when it was already 7893 considered when checking the maximum text length for the object. 7894 (getInterfaceMaskFromObject): Make sure the AtkSelection interface 7895 is implemented for the combo boxes, that the AtkText is 7896 implemented for the menu items and that the AtkAction interface is 7897 now implemented for every object (WebCore will decide what to do). 7898 7899 Avoid a segfault crash when using this from unit tests. 7900 7901 * platform/gtk/PopupMenuGtk.cpp: 7902 (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow 7903 before calling gdk_window_get_origin() over it. 7904 7905 2010-11-21 Patrick Gansterer <paroga (a] webkit.org> 7906 7907 Reviewed by Csaba Osztrogonc. 7908 7909 Use WTF_ARRAY_LENGTH in WebCore/platform directory 7910 https://bugs.webkit.org/show_bug.cgi?id=49881 7911 7912 * platform/KURL.cpp: 7913 (WebCore::portAllowed): 7914 * platform/KURLGoogle.cpp: 7915 (WebCore::portAllowed): 7916 * platform/MIMETypeRegistry.cpp: 7917 (WebCore::initializeSupportedImageMIMETypes): 7918 (WebCore::initializeSupportedJavaScriptMIMETypes): 7919 (WebCore::initializeSupportedNonImageMimeTypes): 7920 * platform/UUID.cpp: 7921 (WebCore::createCanonicalUUIDString): 7922 * platform/efl/RenderThemeEfl.cpp: 7923 (WebCore::RenderThemeEfl::applyEdjeStateFromForm): 7924 * platform/graphics/GraphicsTypes.cpp: 7925 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 7926 (WebCore::FontCodepage::if): 7927 * platform/graphics/chromium/FontUtilsChromiumWin.cpp: 7928 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 7929 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): 7930 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 7931 (WebCore::disableComponentsOnce): 7932 * platform/graphics/mac/SimpleFontDataATSUI.mm: 7933 (WebCore::SimpleFontData::checkShapesArabic): 7934 * platform/graphics/mac/SimpleFontDataCoreText.cpp: 7935 (WebCore::SimpleFontData::getCFStringAttributes): 7936 * platform/graphics/win/GraphicsContextCGWin.cpp: 7937 (WebCore::GraphicsContext::drawLineForTextChecking): 7938 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 7939 (WebCore::disableComponentsOnce): 7940 * platform/graphics/win/QTMovie.cpp: 7941 (QTMovie::load): 7942 * platform/network/cf/SocketStreamHandleCFNet.cpp: 7943 (WebCore::SocketStreamHandle::createStreams): 7944 * platform/text/TextEncodingRegistry.cpp: 7945 (WebCore::pruneBlacklistedCodecs): 7946 * platform/text/transcoder/FontTranscoder.cpp: 7947 (WebCore::FontTranscoder::FontTranscoder): 7948 7949 2010-11-20 Andreas Kling <kling (a] webkit.org> 7950 7951 Rubber-stamped by Antonio Gomes. 7952 7953 [Qt] Fix spelling error (isEmtpyValue -> isEmptyValue) 7954 7955 * platform/graphics/qt/FontPlatformDataQt.cpp: 7956 (WebCore::isEmptyValue): 7957 (WebCore::FontPlatformData::FontPlatformData): 7958 7959 2010-11-20 Andreas Kling <kling (a] webkit.org> 7960 7961 Reviewed by Antonio Gomes. 7962 7963 [Qt] Limit the size of image preview "cursor" when dragging 7964 https://bugs.webkit.org/show_bug.cgi?id=49872 7965 7966 Respect DragController::maxDragImageSize() (currently 400x400.) 7967 7968 * platform/qt/DragImageQt.cpp: 7969 (WebCore::dragImageSize): 7970 (WebCore::scaleDragImage): 7971 7972 2010-11-20 Andreas Kling <kling (a] webkit.org> 7973 7974 Reviewed by Antonio Gomes. 7975 7976 [Qt] Dragging a selection should use a rendering of the selection as "cursor" for the drag 7977 https://bugs.webkit.org/show_bug.cgi?id=49870 7978 7979 Implement Frame::dragImageForSelection() and the necessary DragImage helpers for Qt. 7980 7981 * page/qt/FrameQt.cpp: 7982 (WebCore::Frame::dragImageForSelection): 7983 * platform/qt/DragImageQt.cpp: 7984 (WebCore::deleteDragImage): 7985 (WebCore::createDragImageFromImage): 7986 7987 2010-11-20 Xan Lopez <xlopez (a] igalia.com> 7988 7989 Reviewed by Martin Robinson. 7990 7991 [GTK] Memory managament for DOM GObject wrappers 7992 https://bugs.webkit.org/show_bug.cgi?id=40302 7993 7994 Initial attempt to have a kind of poor man's garbage collection 7995 for GObject DOM objects. We tie the object's lifecycle to their 7996 parent Frame and/or its document; that is, all objects will be 7997 collected when their parent frame is destroyed or when that frame 7998 transitions to a new document. Manual management (calling 7999 g_object_unref on them) is also allowed, and is required for 8000 objects that are not in the DOM tree (eg NodeLists). 8001 8002 * GNUmakefile.am: 8003 * bindings/gobject/DOMObjectCache.cpp: Added. 8004 * bindings/gobject/DOMObjectCache.h: Copied from WebCore/bindings/gobject/WebKitDOMBinding.h. 8005 * bindings/gobject/WebKitDOMBinding.cpp: Remove the old cache code. 8006 * bindings/gobject/WebKitDOMBinding.h: ditto. 8007 * bindings/scripts/CodeGeneratorGObject.pm: include the new DOMObjectCache header. 8008 8009 2010-11-20 Helder Correia <helder (a] sencha.com> 8010 8011 Reviewed by Andreas Kling. 8012 8013 [Qt] Path stroke lacks blur shadow support 8014 https://bugs.webkit.org/show_bug.cgi?id=49490 8015 8016 Add blur shadow support to strokePath(). 8017 8018 Test: fast/canvas/canvas-strokePath-shadow.html 8019 8020 * platform/graphics/qt/GraphicsContextQt.cpp: 8021 (WebCore::GraphicsContext::strokePath): 8022 8023 2010-11-20 Kwang Yul Seo <skyul (a] company100.net> 8024 8025 Reviewed by David Kilzer. 8026 8027 [BREWMP] Replace HTONL, HTONS, NTOHL and NTOHS with byte order conversion functions from AEEstd.h 8028 https://bugs.webkit.org/show_bug.cgi?id=49518 8029 8030 HTONL, HTONS, NTOHL and NTOHS macros are prohibited in Mod1. Use byte order conversion functions provided by AEEstd.h. 8031 8032 * platform/graphics/WOFFFileFormat.cpp: 8033 8034 2010-11-20 Kwang Yul Seo <skyul (a] company100.net> 8035 8036 Reviewed by David Kilzer. 8037 8038 [BREWMP] Use std_wstrlen instead of WSTRLEN 8039 https://bugs.webkit.org/show_bug.cgi?id=49516 8040 8041 WSTRLEN is prohibited in Mod1. Use std_wstrlen from AEEstd.h instead. 8042 8043 * platform/text/brew/StringBrew.cpp: 8044 (WTF::String::String): 8045 8046 2010-11-20 Patrick Gansterer <paroga (a] webkit.org> 8047 8048 Reviewed by David Kilzer. 8049 8050 [WINCE] Implement textBreakLast and textBreakPrevious 8051 https://bugs.webkit.org/show_bug.cgi?id=49552 8052 8053 This allows us to use TextBoundaries.cpp and remove TextBoundariesWinCE.cpp. 8054 Also unify the different TextBreakIterator::first() implementations. 8055 8056 * platform/text/wince/TextBoundariesWinCE.cpp: Removed. 8057 * platform/text/wince/TextBreakIteratorWinCE.cpp: 8058 (WebCore::TextBreakIterator::first): 8059 (WebCore::TextBreakIterator::last): 8060 (WebCore::textBreakLast): 8061 (WebCore::textBreakPrevious): 8062 8063 2010-11-20 Andreas Kling <kling (a] webkit.org> 8064 8065 Reviewed by David Kilzer. 8066 8067 Path: Remove unused method swap() 8068 https://bugs.webkit.org/show_bug.cgi?id=49853 8069 8070 * platform/graphics/Path.h: 8071 8072 2010-11-20 David Kilzer <ddkilzer (a] apple.com> 8073 8074 <http://webkit.org/b/49867> MediaPlayerPrivateQTKit::setPreservesPitch(bool) leaks an NSDictionary 8075 8076 Reviewed by Dan Bernstein. 8077 8078 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 8079 (WebCore::MediaPlayerPrivateQTKit::setPreservesPitch): Use 8080 RetainPtr<NSDictionary> for movieAttributes. 8081 8082 2010-11-20 Patrick Gansterer <paroga (a] webkit.org> 8083 8084 Reviewed by Andreas Kling. 8085 8086 Use String::fromUTF8 instead of UTF8Encoding().decode 8087 in the libxml XMLDocumentParser 8088 https://bugs.webkit.org/show_bug.cgi?id=45488 8089 8090 * dom/XMLDocumentParser.cpp: 8091 (WebCore::toString): 8092 8093 2010-11-20 Renata Hodovan <reni (a] inf.u-szeged.hu> 8094 8095 Reviewed by Dirk Schulze. 8096 8097 FilterPrimitives should have a pointer to its Filter object. 8098 https://bugs.webkit.org/show_bug.cgi?id=49863 8099 8100 FilterPrimitives should have a renderer, and they need a member pointer to their Filter objects for Layout() calls. 8101 This patch adds this member to FilterEffect. 8102 8103 No new test is needed because these modifications are covered by all of SVG Filter tests. 8104 8105 * platform/graphics/filters/FEBlend.cpp: 8106 (WebCore::FEBlend::FEBlend): 8107 (WebCore::FEBlend::create): 8108 (WebCore::FEBlend::apply): 8109 * platform/graphics/filters/FEBlend.h: 8110 * platform/graphics/filters/FEColorMatrix.cpp: 8111 (WebCore::FEColorMatrix::FEColorMatrix): 8112 (WebCore::FEColorMatrix::create): 8113 (WebCore::FEColorMatrix::apply): 8114 * platform/graphics/filters/FEColorMatrix.h: 8115 * platform/graphics/filters/FEComponentTransfer.cpp: 8116 (WebCore::FEComponentTransfer::FEComponentTransfer): 8117 (WebCore::FEComponentTransfer::create): 8118 (WebCore::FEComponentTransfer::apply): 8119 * platform/graphics/filters/FEComponentTransfer.h: 8120 * platform/graphics/filters/FEComposite.cpp: 8121 (WebCore::FEComposite::FEComposite): 8122 (WebCore::FEComposite::create): 8123 (WebCore::FEComposite::determineAbsolutePaintRect): 8124 (WebCore::FEComposite::apply): 8125 * platform/graphics/filters/FEComposite.h: 8126 * platform/graphics/filters/FEConvolveMatrix.cpp: 8127 (WebCore::FEConvolveMatrix::FEConvolveMatrix): 8128 (WebCore::FEConvolveMatrix::create): 8129 (WebCore::FEConvolveMatrix::apply): 8130 * platform/graphics/filters/FEConvolveMatrix.h: 8131 (WebCore::FEConvolveMatrix::determineAbsolutePaintRect): 8132 * platform/graphics/filters/FEDiffuseLighting.cpp: 8133 (WebCore::FEDiffuseLighting::FEDiffuseLighting): 8134 (WebCore::FEDiffuseLighting::create): 8135 * platform/graphics/filters/FEDiffuseLighting.h: 8136 * platform/graphics/filters/FEDisplacementMap.cpp: 8137 (WebCore::FEDisplacementMap::FEDisplacementMap): 8138 (WebCore::FEDisplacementMap::create): 8139 (WebCore::FEDisplacementMap::apply): 8140 * platform/graphics/filters/FEDisplacementMap.h: 8141 (WebCore::FEDisplacementMap::determineAbsolutePaintRect): 8142 * platform/graphics/filters/FEFlood.cpp: 8143 (WebCore::FEFlood::FEFlood): 8144 (WebCore::FEFlood::create): 8145 (WebCore::FEFlood::apply): 8146 * platform/graphics/filters/FEFlood.h: 8147 (WebCore::FEFlood::determineAbsolutePaintRect): 8148 * platform/graphics/filters/FEGaussianBlur.cpp: 8149 (WebCore::FEGaussianBlur::FEGaussianBlur): 8150 (WebCore::FEGaussianBlur::create): 8151 (WebCore::FEGaussianBlur::determineAbsolutePaintRect): 8152 (WebCore::FEGaussianBlur::apply): 8153 * platform/graphics/filters/FEGaussianBlur.h: 8154 * platform/graphics/filters/FELighting.cpp: 8155 (WebCore::FELighting::FELighting): 8156 (WebCore::FELighting::apply): 8157 * platform/graphics/filters/FELighting.h: 8158 (WebCore::FELighting::determineAbsolutePaintRect): 8159 * platform/graphics/filters/FEMerge.cpp: 8160 (WebCore::FEMerge::FEMerge): 8161 (WebCore::FEMerge::create): 8162 (WebCore::FEMerge::apply): 8163 * platform/graphics/filters/FEMerge.h: 8164 * platform/graphics/filters/FEMorphology.cpp: 8165 (WebCore::FEMorphology::FEMorphology): 8166 (WebCore::FEMorphology::create): 8167 (WebCore::FEMorphology::determineAbsolutePaintRect): 8168 (WebCore::FEMorphology::apply): 8169 * platform/graphics/filters/FEMorphology.h: 8170 * platform/graphics/filters/FEOffset.cpp: 8171 (WebCore::FEOffset::FEOffset): 8172 (WebCore::FEOffset::create): 8173 (WebCore::FEOffset::determineAbsolutePaintRect): 8174 (WebCore::FEOffset::apply): 8175 * platform/graphics/filters/FEOffset.h: 8176 * platform/graphics/filters/FESpecularLighting.cpp: 8177 (WebCore::FESpecularLighting::FESpecularLighting): 8178 (WebCore::FESpecularLighting::create): 8179 * platform/graphics/filters/FESpecularLighting.h: 8180 * platform/graphics/filters/FETile.cpp: 8181 (WebCore::FETile::FETile): 8182 (WebCore::FETile::create): 8183 (WebCore::FETile::apply): 8184 * platform/graphics/filters/FETile.h: 8185 (WebCore::FETile::determineAbsolutePaintRect): 8186 * platform/graphics/filters/FETurbulence.cpp: 8187 (WebCore::FETurbulence::FETurbulence): 8188 (WebCore::FETurbulence::create): 8189 (WebCore::FETurbulence::apply): 8190 * platform/graphics/filters/FETurbulence.h: 8191 (WebCore::FETurbulence::determineAbsolutePaintRect): 8192 * platform/graphics/filters/FilterEffect.cpp: 8193 (WebCore::FilterEffect::FilterEffect): 8194 (WebCore::FilterEffect::determineAbsolutePaintRect): 8195 (WebCore::FilterEffect::effectContext): 8196 * platform/graphics/filters/FilterEffect.h: 8197 (WebCore::FilterEffect::filter): 8198 * platform/graphics/filters/SourceAlpha.cpp: 8199 (WebCore::SourceAlpha::create): 8200 (WebCore::SourceAlpha::determineAbsolutePaintRect): 8201 (WebCore::SourceAlpha::apply): 8202 * platform/graphics/filters/SourceAlpha.h: 8203 (WebCore::SourceAlpha::SourceAlpha): 8204 * platform/graphics/filters/SourceGraphic.cpp: 8205 (WebCore::SourceGraphic::create): 8206 (WebCore::SourceGraphic::determineAbsolutePaintRect): 8207 (WebCore::SourceGraphic::apply): 8208 * platform/graphics/filters/SourceGraphic.h: 8209 (WebCore::SourceGraphic::SourceGraphic): 8210 * rendering/RenderSVGResourceFilter.cpp: 8211 (WebCore::RenderSVGResourceFilter::buildPrimitives): 8212 (WebCore::RenderSVGResourceFilter::applyResource): 8213 (WebCore::RenderSVGResourceFilter::postApplyResource): 8214 * rendering/RenderSVGResourceFilter.h: 8215 * rendering/SVGRenderTreeAsText.cpp: 8216 (WebCore::writeSVGResourceContainer): 8217 * svg/SVGFEBlendElement.cpp: 8218 (WebCore::SVGFEBlendElement::build): 8219 * svg/SVGFEBlendElement.h: 8220 * svg/SVGFEColorMatrixElement.cpp: 8221 (WebCore::SVGFEColorMatrixElement::build): 8222 * svg/SVGFEColorMatrixElement.h: 8223 * svg/SVGFEComponentTransferElement.cpp: 8224 (WebCore::SVGFEComponentTransferElement::build): 8225 * svg/SVGFEComponentTransferElement.h: 8226 * svg/SVGFECompositeElement.cpp: 8227 (WebCore::SVGFECompositeElement::build): 8228 * svg/SVGFECompositeElement.h: 8229 * svg/SVGFEConvolveMatrixElement.cpp: 8230 (WebCore::SVGFEConvolveMatrixElement::build): 8231 * svg/SVGFEConvolveMatrixElement.h: 8232 * svg/SVGFEDiffuseLightingElement.cpp: 8233 (WebCore::SVGFEDiffuseLightingElement::build): 8234 * svg/SVGFEDiffuseLightingElement.h: 8235 * svg/SVGFEDisplacementMapElement.cpp: 8236 (WebCore::SVGFEDisplacementMapElement::build): 8237 * svg/SVGFEDisplacementMapElement.h: 8238 * svg/SVGFEFloodElement.cpp: 8239 (WebCore::SVGFEFloodElement::build): 8240 * svg/SVGFEFloodElement.h: 8241 * svg/SVGFEGaussianBlurElement.cpp: 8242 (WebCore::SVGFEGaussianBlurElement::build): 8243 * svg/SVGFEGaussianBlurElement.h: 8244 * svg/SVGFEImageElement.cpp: 8245 (WebCore::SVGFEImageElement::build): 8246 * svg/SVGFEImageElement.h: 8247 * svg/SVGFEMergeElement.cpp: 8248 (WebCore::SVGFEMergeElement::build): 8249 * svg/SVGFEMergeElement.h: 8250 * svg/SVGFEMorphologyElement.cpp: 8251 (WebCore::SVGFEMorphologyElement::build): 8252 * svg/SVGFEMorphologyElement.h: 8253 * svg/SVGFEOffsetElement.cpp: 8254 (WebCore::SVGFEOffsetElement::build): 8255 * svg/SVGFEOffsetElement.h: 8256 * svg/SVGFESpecularLightingElement.cpp: 8257 (WebCore::SVGFESpecularLightingElement::build): 8258 * svg/SVGFESpecularLightingElement.h: 8259 * svg/SVGFETileElement.cpp: 8260 (WebCore::SVGFETileElement::build): 8261 * svg/SVGFETileElement.h: 8262 * svg/SVGFETurbulenceElement.cpp: 8263 (WebCore::SVGFETurbulenceElement::build): 8264 * svg/SVGFETurbulenceElement.h: 8265 * svg/SVGFilterPrimitiveStandardAttributes.h: 8266 * svg/graphics/filters/SVGFEImage.cpp: 8267 (WebCore::FEImage::FEImage): 8268 (WebCore::FEImage::create): 8269 (WebCore::FEImage::determineAbsolutePaintRect): 8270 (WebCore::FEImage::apply): 8271 * svg/graphics/filters/SVGFEImage.h: 8272 * svg/graphics/filters/SVGFilterBuilder.cpp: 8273 (WebCore::SVGFilterBuilder::SVGFilterBuilder): 8274 * svg/graphics/filters/SVGFilterBuilder.h: 8275 (WebCore::SVGFilterBuilder::create): 8276 8277 2010-11-20 Helder Correia <helder (a] sencha.com> 8278 8279 Reviewed by Andreas Kling. 8280 8281 [Qt] GraphicsContext::strokeArc() is not necessary any more 8282 https://bugs.webkit.org/show_bug.cgi?id=49859 8283 8284 Remove strokeArc() from the Qt port. 8285 8286 No test is needed. 8287 8288 * platform/graphics/qt/GraphicsContextQt.cpp: 8289 8290 2010-11-20 Helder Correia <helder (a] sencha.com> 8291 8292 Reviewed by Andreas Kling. 8293 8294 [Qt] Path fill lacks blur shadow support 8295 https://bugs.webkit.org/show_bug.cgi?id=49491 8296 8297 Add blur shadow support to fillPath(). 8298 8299 Test: fast/canvas/canvas-fillPath-shadow.html 8300 8301 * platform/graphics/qt/GraphicsContextQt.cpp: 8302 (WebCore::GraphicsContext::fillPath): 8303 8304 2010-11-19 W. James MacLean <wjmaclean (a] chromium.org> 8305 8306 Reviewed by James Robinson. 8307 8308 Scaled Resized images are blurred when sent to Skia 8309 https://bugs.webkit.org/show_bug.cgi?id=42370 8310 8311 This patch modifies ImageSkia.cpp to fix the calculation of resampled 8312 bitmap sizes so as to include the transform matrix of the canvas. 8313 Includes a new test to catch a regression that occured the first time 8314 this patch was applied. 8315 8316 Tests: svg/custom/image-rescale-scroll.html 8317 svg/custom/image-rescale.svg 8318 8319 * platform/graphics/skia/ImageSkia.cpp: 8320 (WebCore::computeResamplingMode): 8321 (WebCore::drawResampledBitmap): 8322 8323 2010-11-19 Jia Pu <jpu (a] apple.com> 8324 8325 Reviewed by Dan Bernstein. 8326 8327 Regression: contraction is considered misspelling. 8328 https://bugs.webkit.org/show_bug.cgi?id=49423 8329 <rdar://problem/8654206> 8330 8331 Test: platform/mac/editing/spelling/autocorrection-contraction.html 8332 manual-tests/autocorrection/autocorrection-contraction.html 8333 8334 * editing/Editor.cpp: 8335 (WebCore::isAmbiguousBoundaryCharacter): Moved function to the top of the file so that it can 8336 be used by all other functions in the file. 8337 (WebCore::Editor::markMisspellingsAfterTypingToWord): Renamed markMisspellingsAfterTypingToPosition() 8338 to improve readability, and to pass in additional argument. Before we apply pending 8339 autocorrection, we check to see if currently typed character makes current word a partial 8340 contraction, for instance "wouldn'". If that's the case, we would not apply the pending 8341 correction. 8342 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Make sure currently typed word 8343 is not a partial contraction, such as "wouldn'", before mark it as misspelled. Also update 8344 the location of ambiguous boundary if other replacements have changed the length of the 8345 paragraph. 8346 * editing/Editor.h: 8347 * editing/TypingCommand.cpp: 8348 (WebCore::TypingCommand::markMisspellingsAfterTyping): Adopt renamed function. 8349 * manual-tests/autocorrection/autocorrection-contraction.html: Added. 8350 8351 2010-11-19 Andreas Kling <kling (a] webkit.org> 8352 8353 Reviewed by Antonio Gomes. 8354 8355 ScrollView: Make delegatesScrolling() and avoidScrollbarCreation() const. 8356 https://bugs.webkit.org/show_bug.cgi?id=49854 8357 8358 * page/FrameView.cpp: 8359 (WebCore::FrameView::delegatesScrolling): 8360 (WebCore::FrameView::avoidScrollbarCreation): 8361 * page/FrameView.h: 8362 * platform/ScrollView.h: 8363 (WebCore::ScrollView::delegatesScrolling): 8364 (WebCore::ScrollView::avoidScrollbarCreation): 8365 8366 2010-11-19 Pavel Podivilov <podivilov (a] chromium.org> 8367 8368 Reviewed by Yury Semikhatsky. 8369 8370 Web Inspector: scripts panel should be shown before execution line is scrolled into view. 8371 https://bugs.webkit.org/show_bug.cgi?id=49792 8372 8373 * inspector/front-end/ScriptsPanel.js: 8374 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 8375 8376 2010-11-19 James Simonsen <simonjam (a] chromium.org> 8377 8378 Reviewed by Tony Chang. 8379 8380 [chromium] Fix whitespace character handling in complex text on linux 8381 https://bugs.webkit.org/show_bug.cgi?id=49771 8382 8383 * platform/graphics/SimpleFontData.h: 8384 (WebCore::SimpleFontData::isZeroWidthSpaceGlyph): Added. 8385 (WebCore::SimpleFontData::boundsForGlyph): Use isZeroWidthSpaceGlyph(). 8386 (WebCore::SimpleFontData::widthForGlyph): Use isZeroWidthSpaceGlyph(). 8387 * platform/graphics/chromium/FontLinux.cpp: 8388 (WebCore::TextRunWalker::nextScriptRun): Cache currently used font data. 8389 (WebCore::TextRunWalker::setGlyphXPositions): Skip zero width spaces. 8390 (WebCore::TextRunWalker::normalizeSpacesAndMirrorChars): Normalize zero width spaces. 8391 (WebCore::TextRunWalker::getNormalizedTextRun): 8392 8393 2010-11-19 Steve Falkenburg <sfalken (a] apple.com> 8394 8395 Reviewed by Adam Roben. 8396 8397 Add Debug_Cairo_CFLite and Release_Cairo_CFLite configurations for all vcproj files 8398 https://bugs.webkit.org/show_bug.cgi?id=49819 8399 8400 * WebCore.vcproj/QTMovieWin.vcproj: 8401 * WebCore.vcproj/WebCore.vcproj: 8402 * WebCore.vcproj/WebCoreGenerated.vcproj: 8403 8404 2010-11-19 Brady Eidson <beidson (a] apple.com> 8405 8406 Reviewed by Darin Adler. 8407 8408 <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=49836 8409 Add WebKit2 API relevant to customization of context menus 8410 8411 * WebCore.exp.in: 8412 8413 2010-11-19 Michael Saboff <msaboff (a] apple.com> 8414 8415 Reviewed by Sam Weinig. 8416 8417 Removed import of DOMSVGAnimatedPathData.h to fix build. 8418 8419 * bindings/objc/DOMSVG.h: 8420 8421 2010-11-19 Avi Drissman <avi (a] google.com> 8422 8423 Reviewed by Antonio Gomes. 8424 8425 Complete support for Unix editing mode 8426 https://bugs.webkit.org/show_bug.cgi?id=49757 8427 8428 * page/Settings.cpp: 8429 (WebCore::Settings::Settings): 8430 * page/Settings.h: 8431 8432 2010-11-19 Nate Chapin <japhet (a] chromium.org> 8433 8434 Reviewed by Alexey Proskuryakov. 8435 8436 Remove requests from ResourceLoadScheduler's queue before 8437 actually starting them. We're holding a RefPtr anyway, and 8438 the load might be terminated and removed from the queue synchronously. 8439 https://bugs.webkit.org/show_bug.cgi?id=49693 8440 8441 Test: fast/loader/subresource-willSendRequest-null.html 8442 8443 * loader/ResourceLoadScheduler.cpp: 8444 (WebCore::ResourceLoadScheduler::servePendingRequests): 8445 8446 2010-11-18 Zhenyao Mo <zmo (a] google.com> 8447 8448 Reviewed by Kenneth Russell. 8449 8450 Make sure is* return false if the name is never bound 8451 https://bugs.webkit.org/show_bug.cgi?id=49767 8452 8453 * html/canvas/WebGLBuffer.h: Add function to check whether the buffer has been bound before. 8454 (WebCore::WebGLBuffer::hasEverBeenBound): 8455 * html/canvas/WebGLFramebuffer.cpp: Ditto. 8456 (WebCore::WebGLFramebuffer::WebGLFramebuffer): 8457 * html/canvas/WebGLFramebuffer.h: Ditto. 8458 (WebCore::WebGLFramebuffer::hasEverBeenBound): 8459 (WebCore::WebGLFramebuffer::setBound): 8460 * html/canvas/WebGLRenderbuffer.cpp: Ditto. 8461 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): 8462 * html/canvas/WebGLRenderbuffer.h: Ditto. 8463 (WebCore::WebGLRenderbuffer::hasEverBeenBound): 8464 (WebCore::WebGLRenderbuffer::setBound): 8465 * html/canvas/WebGLRenderingContext.cpp: 8466 (WebCore::WebGLRenderingContext::bindFramebuffer): Set bound status to true. 8467 (WebCore::WebGLRenderingContext::bindRenderbuffer): Ditto. 8468 (WebCore::WebGLRenderingContext::isBuffer): Return false if it's never bound. 8469 (WebCore::WebGLRenderingContext::isFramebuffer): Ditto. 8470 (WebCore::WebGLRenderingContext::isRenderbuffer): Ditto. 8471 (WebCore::WebGLRenderingContext::isTexture): Ditto. 8472 * html/canvas/WebGLTexture.h: Add function to check whether the texture has been bound before. 8473 (WebCore::WebGLTexture::hasEverBeenBound): 8474 8475 2010-11-19 Benjamin Poulain <benjamin.poulain (a] nokia.com> 8476 8477 Reviewed by Kenneth Rohde Christiansen. 8478 8479 [Qt] mask-box-image renders wrong in certain conditions 8480 https://bugs.webkit.org/show_bug.cgi?id=43476 8481 8482 Qt does not follow the same convention as the other port 8483 when rendering a pixmap with null width of height. When one 8484 of those dimension is null, we should ignore the painting call 8485 to behave like the other ports. 8486 8487 * platform/graphics/qt/ImageQt.cpp: 8488 (WebCore::Image::drawPattern): 8489 8490 2010-11-18 Zhenyao Mo <zmo (a] google.com> 8491 8492 Reviewed by Kenneth Russell. 8493 8494 GraphicsContext3D::reshape is clearing using current clear color instead of transparent 8495 https://bugs.webkit.org/show_bug.cgi?id=44064 8496 8497 * platform/graphics/gpu/DrawingBuffer.cpp: 8498 (WebCore::DrawingBuffer::reset): Use 0 as clear values. 8499 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 8500 (WebCore::GraphicsContext3D::reshape): Ditto. 8501 8502 2010-11-19 Chris Rogers <crogers (a] google.com> 8503 8504 Reviewed by Darin Adler. 8505 8506 AudioContext should not include "HTMLNames.h" 8507 https://bugs.webkit.org/show_bug.cgi?id=49680 8508 8509 No new tests since audio API is not yet implemented. 8510 8511 * webaudio/AudioContext.cpp: 8512 8513 2010-11-19 Steve Falkenburg <sfalken (a] apple.com> 8514 8515 Reviewed by Darin Adler. 8516 8517 Normalize Cairo/CFLite project/solution configuration names 8518 https://bugs.webkit.org/show_bug.cgi?id=49818 8519 8520 * WebCore.vcproj/WebCore.vcproj: 8521 * WebCore.vcproj/WebCoreGenerated.vcproj: 8522 8523 2010-11-19 Daniel Bates <dbates (a] rim.com> 8524 8525 Reviewed by Antonio Gomes. 8526 8527 Replace null checks of newParent in Frame::transferChildFrameToNewDocument() with ASSERT 8528 https://bugs.webkit.org/show_bug.cgi?id=49489 8529 8530 Substitute ASSERT(newParent) for null-checks for newParent in 8531 Frame::transferChildFrameToNewDocument() since newParent is 8532 never null. 8533 8534 When Frame::transferChildFrameToNewDocument() is called the child 8535 frame's owner element has already been transferred to the new 8536 document D and D is attached (i.e. has a frame). 8537 8538 * page/Frame.cpp: 8539 (WebCore::Frame::transferChildFrameToNewDocument): 8540 8541 2010-11-19 Anders Carlsson <andersca (a] apple.com> 8542 8543 Reviewed by Sam Weinig. 8544 8545 Add SandboxExtension abstraction and use it for the injected bundle extension 8546 https://bugs.webkit.org/show_bug.cgi?id=49817 8547 8548 Export fileSystemRepresentation symbol needed by WebKit2. 8549 8550 * WebCore.exp.in: 8551 8552 2010-11-19 Steve Falkenburg <sfalken (a] apple.com> 8553 8554 Windows build fix. Remove leftover Debug_Internal use. 8555 8556 * WebCore.vcproj/WebCore.vcproj: 8557 8558 2010-11-18 Steve Falkenburg <sfalken (a] apple.com> 8559 8560 Reviewed by Adam Roben. 8561 8562 Windows vcproj configuration names should be normalized across projects 8563 https://bugs.webkit.org/show_bug.cgi?id=49776 8564 8565 * WebCore.vcproj/WebCore.sln: 8566 * WebCore.vcproj/WebCore.submit.sln: 8567 * WebCore.vcproj/WebCoreGenerated.vcproj: 8568 * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Added. 8569 * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Added. 8570 8571 2010-11-19 James Simonsen <simonjam (a] chromium.org> 8572 8573 Reviewed by Darin Fisher. 8574 8575 [Web Timing] Add unloadEventStart 8576 https://bugs.webkit.org/show_bug.cgi?id=49101 8577 8578 * loader/DocumentLoadTiming.h: 8579 (WebCore::DocumentLoadTiming::DocumentLoadTiming): 8580 * loader/FrameLoader.cpp: 8581 (WebCore::FrameLoader::stopLoading): Use dispatchTimedEvent(). 8582 * page/DOMWindow.cpp: 8583 (WebCore::DOMWindow::dispatchLoadEvent): Use dispatchTimedEvent(). 8584 (WebCore::DOMWindow::dispatchTimedEvent): Added. 8585 * page/DOMWindow.h: 8586 * page/Timing.cpp: 8587 (WebCore::Timing::unloadEventStart): 8588 * page/Timing.h: 8589 * page/Timing.idl: 8590 8591 2010-11-19 Martin Robinson <mrobinson (a] igalia.com> 8592 8593 Reviewed by Daniel Bates. 8594 8595 [GTK] fast/text/international tests are flaky on the bots 8596 https://bugs.webkit.org/show_bug.cgi?id=49781 8597 8598 Beef up the == operator overload for Freetype FontPlatformData. Before 8599 if two FontPlatformDatas had hash values which fell into the same bucket 8600 and were similar enough, they would be evaluated as being equal, leading 8601 to failures. 8602 8603 No new tests for this change. It's very hard to test, because it depends 8604 on the memory address of new allocations. Hopefully flakiness on the bots 8605 will go away after patch. 8606 8607 * platform/graphics/freetype/FontPlatformDataFreeType.cpp: 8608 (WebCore::FontPlatformData::operator==): Beef up the == operator overload. 8609 8610 2010-11-19 Benjamin Poulain <benjamin.poulain (a] nokia.com> 8611 8612 Reviewed by Kenneth Rohde Christiansen. 8613 8614 [Qt] mask-box-image renders wrong in certain conditions 8615 https://bugs.webkit.org/show_bug.cgi?id=43476 8616 8617 When rendering a pixmap with a dest rect having a null dimension, 8618 Qt uses the dimension of the Pixmap. The other ports do not render 8619 anything by convention. 8620 8621 This patch change BitmapImage to follow the convention of other ports and do not 8622 paint anything. 8623 8624 * platform/graphics/qt/ImageQt.cpp: 8625 (WebCore::BitmapImage::draw): 8626 8627 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8628 8629 Reviewed by Dirk Schulze. 8630 8631 Don't call invalidateSVGAttributes() from the setFooBaseValue() methods 8632 https://bugs.webkit.org/show_bug.cgi?id=49807 8633 8634 Covered by existing tests. 8635 8636 * svg/SVGComponentTransferFunctionElement.cpp: 8637 (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute): Use setFooBaseValue(newList) instead of fooBaseValue() = newList; 8638 * svg/SVGFEColorMatrixElement.cpp: 8639 (WebCore::SVGFEColorMatrixElement::parseMappedAttribute): Ditto. 8640 * svg/SVGFEConvolveMatrixElement.cpp: 8641 (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute): Ditto. 8642 * svg/SVGGradientElement.cpp: 8643 (WebCore::SVGGradientElement::parseMappedAttribute): Ditto. 8644 * svg/SVGPatternElement.cpp: 8645 (WebCore::SVGPatternElement::parseMappedAttribute): Ditto. 8646 * svg/SVGStyledTransformableElement.cpp: 8647 (WebCore::SVGStyledTransformableElement::parseMappedAttribute): Ditto. 8648 * svg/SVGTextElement.cpp: 8649 (WebCore::SVGTextElement::parseMappedAttribute): Ditto. 8650 * svg/SVGTextPositioningElement.cpp: 8651 (WebCore::SVGTextPositioningElement::parseMappedAttribute): Ditto. 8652 * svg/properties/SVGAnimatedPropertyMacros.h: Don't call invalidateSVGAttributes() in setFooBaseValue(). 8653 8654 2010-11-19 Sheriff Bot <webkit.review.bot (a] gmail.com> 8655 8656 Unreviewed, rolling out r72399. 8657 http://trac.webkit.org/changeset/72399 8658 https://bugs.webkit.org/show_bug.cgi?id=49805 8659 8660 Broke Chromium build (Requested by antonm_ on #webkit). 8661 8662 * page/chromium/ChromeClientChromium.h: 8663 * platform/chromium/PopupMenuChromium.cpp: 8664 (WebCore::PopupContainer::showPopup): 8665 (WebCore::PopupContainer::showExternal): 8666 (WebCore::PopupListBox::layout): 8667 (WebCore::PopupMenuChromium::show): 8668 * platform/chromium/PopupMenuChromium.h: 8669 8670 2010-11-19 Yael Aharon <yael.aharon (a] nokia.com> 8671 8672 Reviewed by Antonio Gomes. 8673 8674 Focus ring in image maps does not take zooming into account 8675 https://bugs.webkit.org/show_bug.cgi?id=49625 8676 8677 Take pageZoomFactor into account when calculating the path of the focus ring. 8678 8679 Test: fast/images/imagemap-focus-ring-zoom.html 8680 8681 * html/HTMLAreaElement.cpp: 8682 (WebCore::HTMLAreaElement::getPath): 8683 8684 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8685 8686 Reviewed by Dirk Schulze. 8687 8688 SVGTransformList::consolidate() fails on empty lists 8689 https://bugs.webkit.org/show_bug.cgi?id=49619 8690 8691 Return null in consolidate() when the list is empty, according to SVG 1.1. 8692 8693 Test: svg/dom/SVGTransformList-empty-list-consolidation.html 8694 8695 * svg/properties/SVGTransformListPropertyTearOff.h: 8696 (WebCore::SVGTransformListPropertyTearOff::consolidate): 8697 8698 2010-11-19 Jay Civelli <jcivelli (a] chromium.org> 8699 8700 Reviewed by David Levin. 8701 8702 [chromium] Removing the now unused code to show popup externally on Mac. 8703 https://bugs.webkit.org/show_bug.cgi?id=49747 8704 8705 * page/chromium/ChromeClientChromium.h: 8706 * platform/chromium/PopupMenuChromium.cpp: 8707 (WebCore::PopupContainer::showPopup): 8708 (WebCore::PopupListBox::layout): 8709 (WebCore::PopupMenuChromium::show): 8710 * platform/chromium/PopupMenuChromium.h: 8711 8712 2010-11-18 Ilya Tikhonovsky <loislo (a] chromium.org> 8713 8714 Reviewed by Yury Semikhatsky. 8715 8716 Web Inspector: reduce the footprint of InspectorBackendDispatcher. 8717 InspectorBackendDispatcher is a generated file. 8718 Its content is not optimal and loc may be reduced by a quarter. 8719 In each generated function we have a code for getting 'in' values from 8720 the arguments properties object. I've extracted this code into separate getters. 8721 The side effect is better readability of the generated code. 8722 8723 https://bugs.webkit.org/show_bug.cgi?id=49729 8724 8725 * inspector/CodeGeneratorInspector.pm: 8726 8727 2010-11-19 John Knottenbelt <jknotten (a] chromium.org> 8728 8729 Reviewed by Jeremy Orlow. 8730 8731 Reentrant Geolocation tests crash with an assertion. 8732 https://bugs.webkit.org/show_bug.cgi?id=39908 8733 8734 PositionErrors should not be sent to Geolocation watches or one shots 8735 that are due to receive a valid cached position. 8736 8737 Test: fast/dom/Geolocation/maximum-age.html 8738 8739 * page/Geolocation.cpp: 8740 (WebCore::Geolocation::sendError): 8741 (WebCore::Geolocation::copyCachedNotifiers): 8742 (WebCore::Geolocation::handleError): 8743 * page/Geolocation.h: 8744 8745 2010-11-19 Sam Magnuson <smagnuso (a] gmail.com> 8746 8747 Reviewed by Laszlo Gombos. 8748 8749 [Qt] Compile with QT_NO_CLIPBOARD 8750 https://bugs.webkit.org/show_bug.cgi?id=49742 8751 8752 * platform/qt/PasteboardQt.cpp: 8753 (WebCore::Pasteboard::canSmartReplace): 8754 8755 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8756 8757 Reviewed by Andreas Kling. 8758 8759 Remove more unused V8/SVG code 8760 https://bugs.webkit.org/show_bug.cgi?id=49800 8761 8762 Remove DOMSVGObjectWithContextMap and all usages. 8763 8764 * bindings/scripts/CodeGeneratorV8.pm: 8765 * bindings/v8/DOMDataStore.cpp: 8766 (WebCore::DOMDataStore::DOMDataStore): 8767 (WebCore::DOMDataStore::getDOMWrapperMap): 8768 * bindings/v8/DOMDataStore.h: 8769 (WebCore::DOMDataStore::domSvgElementInstanceMap): 8770 * bindings/v8/ScopedDOMDataStore.cpp: 8771 (WebCore::ScopedDOMDataStore::ScopedDOMDataStore): 8772 (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore): 8773 * bindings/v8/StaticDOMDataStore.cpp: 8774 (WebCore::StaticDOMDataStore::StaticDOMDataStore): 8775 * bindings/v8/StaticDOMDataStore.h: 8776 * bindings/v8/V8DOMMap.cpp: 8777 (WebCore::removeAllDOMObjectsInCurrentThread): 8778 * bindings/v8/V8DOMMap.h: 8779 8780 2010-11-19 Zoltan Herczeg <zherczeg (a] webkit.org> 8781 8782 Reviewed by Nikolas Zimmermann. 8783 8784 createImageBuffer fail should be handled in the same way as other fails 8785 https://bugs.webkit.org/show_bug.cgi?id=49799 8786 8787 When createImageBuffer fails (i.e the image width or height is less than 8788 0.5, which is rounded to 0) it just returs with false. Since the m_filter 8789 hash map is not updated in this case, the filter image is not drawn. 8790 8791 Test: svg/filters/filter-rounding-issues.svg 8792 8793 * rendering/RenderSVGResourceFilter.cpp: 8794 (WebCore::RenderSVGResourceFilter::applyResource): 8795 8796 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8797 8798 Reviewed by Andreas Kling. 8799 8800 Remove old style SVG DOM JS bindings and DeprecatedSVGAnimated* files 8801 https://bugs.webkit.org/show_bug.cgi?id=49796 8802 8803 Just remove the old style SVG DOM JS bindings, now that everything has been converted to the new concept. 8804 8805 * GNUmakefile.am: Remove SVGList/SVGListTraits/JSSVGPODListCustom/JSSVGPODTypeWrapper/JSSVGContextCache and V8SVGPODTypeWrapper files. 8806 * WebCore.gypi: Ditto. 8807 * WebCore.pro: Ditto. 8808 * WebCore.vcproj/WebCore.vcproj: Ditto. 8809 * WebCore.xcodeproj/project.pbxproj: Ditto. 8810 * bindings/js/JSSVGContextCache.h: Removed. 8811 * bindings/js/JSSVGPODListCustom.h: Removed. 8812 * bindings/js/JSSVGPODTypeWrapper.h: Removed. 8813 * bindings/v8/V8Proxy.cpp: Remove SVG specific context cache code, which is no longer needed. 8814 * bindings/v8/V8Proxy.h: Ditto. 8815 * bindings/v8/V8SVGPODTypeWrapper.h: Removed. 8816 * svg/DeprecatedSVGAnimatedProperty.h: Removed. 8817 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Removed. 8818 * svg/DeprecatedSVGAnimatedTemplate.h: Removed. 8819 * svg/SVGElement.h: Remove DeprecatedSVGAnimated* include, which pulled in SVGNames.h for every file. 8820 * svg/SVGList.h: Removed. 8821 * svg/SVGListTraits.h: Removed. 8822 8823 2010-11-19 Alexander Pavlov <apavlov (a] chromium.org> 8824 8825 Reviewed by Pavel Feldman. 8826 8827 Web Inspector: [REGRESSION] Crash on opening WebInspector for a page with CSS containing @media with nested rules 8828 https://bugs.webkit.org/show_bug.cgi?id=49731 8829 8830 Temporarily disable building of styles for nested rules. 8831 8832 * inspector/InspectorStyleSheet.cpp: 8833 (WebCore::InspectorStyleSheet::buildObjectForRule): 8834 (WebCore::InspectorStyleSheet::buildObjectForStyle): 8835 (WebCore::InspectorStyleSheet::ensureParsedDataReady): 8836 (WebCore::InspectorStyleSheet::ensureSourceData): 8837 * inspector/InspectorStyleSheet.h: 8838 * inspector/front-end/StylesSidebarPane.js: 8839 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate): 8840 (WebInspector.StylesSidebarPane.prototype._refreshStyleRules): 8841 (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules): 8842 8843 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8844 8845 Not reviewed. Fix Qt build. 8846 8847 * WebCore.pro: Move SVGPathSegListPropertyTearOff.cpp from HEADERS to SOURCES list. This got lost, when reapplying the patch from the bug - I only fixed it locally before landing the first time. 8848 8849 2010-11-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 8850 8851 Reviewed by Dirk Schulze. 8852 8853 Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept 8854 https://bugs.webkit.org/show_bug.cgi?id=49580 8855 8856 SVGPathElement.cloneNode loses generated pathSegList 8857 https://bugs.webkit.org/show_bug.cgi?id=43388 8858 8859 SVG Path elements are not correctly updated through pathSegList manipulation on relative values 8860 https://bugs.webkit.org/show_bug.cgi?id=30219 8861 8862 Changing an SVGPathSeg does not update a following Smooth Cubic Curveto 8863 https://bugs.webkit.org/show_bug.cgi?id=19741 8864 8865 SVGPathElement should only build SVGPathSeg* list on demand 8866 https://bugs.webkit.org/show_bug.cgi?id=10827 8867 8868 Tests: svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg 8869 svg/dom/SVGPathSegList-appendItem.xhtml 8870 svg/dom/SVGPathSegList-clear-and-initialize.xhtml 8871 svg/dom/SVGPathSegList-cloning.html 8872 svg/dom/SVGPathSegList-insertItemBefore.xhtml 8873 svg/dom/SVGPathSegList-removeItem.xhtml 8874 svg/dom/SVGPathSegList-replaceItem.xhtml 8875 svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml 8876 svg/dom/SVGPathSegList-xml-dom-synchronization2.xhtml 8877 svg/dom/SVGPathSegList-segment-modification.svg 8878 8879 Convert SVGPathSeg*/SVGPathSegList to the new SVG(Animated)PropertyTearOff concept. 8880 Unlike all other SVG* types that use the SVGPropertyTearOff concept, SVGPathSegs are already refcounted, 8881 and don't need to be wrapped in SVGPropertyTearOff objects. The consequence is that SVGPathSegs need to track 8882 themselves to which list and path element they belong. Introduce new SVGAnimatedPathSegListPropertyTearOff 8883 and SVGPathSegListPropertyTearOff classes, that encapsulate the special needed for SVGPathSegList. 8884 8885 Each SVGPathSeg now needs to store a RefPtr<SVGPathElement> - this makes it impossible to use SVGPathSegList 8886 to represent the 'd' attribute internally in SVGPathElement. SVGPathSegList is now only used in the SVG DOM bindings 8887 if someone explicitely requests 'pathElement.pathSegList' (eg. via JS). Switch to use SVGPathByteStream to store 8888 the 'd' attribute data in SVGPathElement, which is much more compact, and less memory intensive. 8889 Dirk already prepared SVGPathParserFactory some months ago, which allows easy conversion between 8890 String/Path/SVGPathSegList/SVGPathByteStream in all directions, including normalizing the lists, when requested. 8891 8892 As consequence SVGPathSegList is now only built on demand, when explicitely requested. Using the SVGAnimatedProperty 8893 concept gives us 'd' attribute <-> SVGPathSegList synchronization for free, fixing several bugs, listed above. 8894 8895 * Android.mk: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 8896 * CMakeLists.txt: Ditto. 8897 * DerivedSources.make: Remove SVGAnimatedPathData IDL generation. 8898 * GNUmakefile.am: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 8899 * WebCore.gyp/WebCore.gyp: Remove SVGAnimatedPathData IDL generation. 8900 * WebCore.gypi: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 8901 * WebCore.order: Remove no-longer existant SVGAnimatedPathData symbols. 8902 * WebCore.pro: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp / JSSVGPathSegCustom.* from build. 8903 * WebCore.vcproj/WebCore.vcproj: Ditto. 8904 * WebCore.xcodeproj/project.pbxproj: Ditto. 8905 * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGPathSegCustom.cpp from build. 8906 * bindings/js/JSDOMBinding.cpp: Adapt to toJS() changes, remove context parameter. 8907 (WebCore::setDOMException): 8908 * bindings/js/JSDOMBinding.h: Remove obsolete CREATE_SVG_OBJECT_WRAPPER macro, the context parameter is not existant anymore. 8909 * bindings/js/JSSVGPathSegCustom.cpp: Replace CREATE_SVG_OBJECT_WRAPPER by CREATE_DOM_OBJECT_WRAPPER. Remove context parameter/handling. 8910 (WebCore::toJS): 8911 * bindings/js/JSSVGPathSegListCustom.cpp: Removed. 8912 * bindings/scripts/CodeGenerator.pm: Map 'SVGPathSegList' IDL type to SVG 'SVGPathSegListPropertyTearOff' native type. 8913 * bindings/scripts/CodeGeneratorJS.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. Handle SVGPathSegListPropertyTearOff. 8914 * bindings/scripts/CodeGeneratorObjC.pm: Handle SVGPathSegListPropertyTearOff. 8915 * bindings/scripts/CodeGeneratorV8.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. 8916 * rendering/SVGRenderTreeAsText.cpp: Build path string from byte stream, not path segment list. 8917 (WebCore::operator<<): 8918 * svg/SVGAllInOne.cpp: Remove obsolete cpp files. 8919 * svg/SVGAnimatedPathData.cpp: Removed. 8920 * svg/SVGAnimatedPathData.h: Removed. 8921 * svg/SVGAnimatedPathData.idl: Removed. 8922 * svg/SVGPathElement.cpp: Build SVGPathList on demand. Use SVGPathByteStream to parse/store the 'd' attribute content. 8923 (WebCore::SVGPathElement::SVGPathElement): 8924 (WebCore::SVGPathElement::getPathSegAtLength): Use SVGPathByteStream, not SVGPathSegList to determine the getPathSegAtLength() information. 8925 (WebCore::SVGPathElement::createSVGPathSegClosePath): Pass SVGPathElement to SVGPathSeg and a SVGPathSegRole parameter and store it to track the list origin. 8926 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): Ditto. 8927 (WebCore::SVGPathElement::createSVGPathSegMovetoRel): Ditto. 8928 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): Ditto. 8929 (WebCore::SVGPathElement::createSVGPathSegLinetoRel): Ditto. 8930 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): Ditto. 8931 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): Ditto. 8932 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): Ditto. 8933 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): Ditto. 8934 (WebCore::SVGPathElement::createSVGPathSegArcAbs): Ditto. 8935 (WebCore::SVGPathElement::createSVGPathSegArcRel): Ditto. 8936 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): Ditto. 8937 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): Ditto. 8938 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): Ditto. 8939 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): Ditto. 8940 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): Ditto. 8941 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): Ditto. 8942 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): Ditto. 8943 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): Ditto. 8944 (WebCore::SVGPathElement::parseMappedAttribute): Build SVGPathByteStream from 'd' attribute, not a SVGPathSegList. 8945 (WebCore::SVGPathElement::svgAttributeChanged): If a SVGPathSegList object has been built, synchronize it with the 'd' attribute. 8946 (WebCore::SVGPathElement::synchronizeProperty): Synchronize 'd' attribute with the SVGPathSegList, if needed. 8947 (WebCore::SVGPathElement::synchronizeD): Added. 8948 (WebCore::SVGPathElement::pathSegList): Use same trick as in SVGPolyElement to expose the 'pathSegList' / 'animatedPathSegList' object to the SVG DOM bindings. 8949 (WebCore::SVGPathElement::normalizedPathSegList): Ditto. 8950 (WebCore::SVGPathElement::animatedPathSegList): Ditto. 8951 (WebCore::SVGPathElement::animatedNormalizedPathSegList): Ditto. 8952 (WebCore::SVGPathElement::toPathData): Build 'Path' object from SVGPathByteStream, not from SVGPathSegList. 8953 (WebCore::SVGPathElement::pathSegListChanged): Used to synchronize the SVGPathSegLists and the d attribute, as well as any changes from any SVGPathSeg associated with this SVGPathElement. 8954 * svg/SVGPathElement.h: Add new accessors... 8955 (WebCore::SVGPathElement::pathByteStream): ... needed by SVGRenderTreeAsText. 8956 (WebCore::SVGPathElement::animatablePathSegList): ... needed by SVGPathSegListPropertyTearOff. 8957 * svg/SVGPathElement.idl: Merge SVGAnimatedPathData interface into SVGPathElement. 8958 * svg/SVGPathParserFactory.cpp: Cleanup SVGPathParserFactory, remove obsolete methods, now that SVGPathElement switched to using SVGPathByteStream internally. 8959 (WebCore::globalSVGPathSegListBuilder): 8960 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList): 8961 (WebCore::SVGPathParserFactory::buildPathFromByteStream): 8962 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 8963 (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList): 8964 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString): 8965 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): 8966 (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathByteStream): 8967 * svg/SVGPathParserFactory.h: 8968 * svg/SVGPathSeg.cpp: Removed. 8969 * svg/SVGPathSeg.h: Add new SVGPathSegRole enum, identifying to which list a path segment belongs. 8970 (WebCore::SVGPathSeg::SVGPathSeg): 8971 * svg/SVGPathSeg.idl: Reindented. 8972 * svg/SVGPathSegArc.cpp: Removed. 8973 * svg/SVGPathSegArc.h: All setters now call the commitChange() method. 8974 * svg/SVGPathSegArcAbs.idl: Enable StrictTypeChecking. 8975 * svg/SVGPathSegArcRel.idl: Ditto. 8976 * svg/SVGPathSegClosePath.cpp: Removed. 8977 * svg/SVGPathSegClosePath.h: 8978 * svg/SVGPathSegCurvetoCubic.cpp: Removed. 8979 * svg/SVGPathSegCurvetoCubic.h: All setters now call the commitChange() method. 8980 * svg/SVGPathSegCurvetoCubicAbs.idl: Enable StrictTypeChecking. 8981 * svg/SVGPathSegCurvetoCubicRel.idl: Ditto. 8982 * svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed. 8983 * svg/SVGPathSegCurvetoCubicSmooth.h: All setters now call the commitChange() method. 8984 * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Enable StrictTypeChecking. 8985 * svg/SVGPathSegCurvetoCubicSmoothRel.idl: Ditto. 8986 * svg/SVGPathSegCurvetoQuadratic.cpp: Removed. 8987 * svg/SVGPathSegCurvetoQuadratic.h: All setters now call the commitChange() method. 8988 * svg/SVGPathSegCurvetoQuadraticAbs.idl: Enable StrictTypeChecking. 8989 * svg/SVGPathSegCurvetoQuadraticRel.idl: Ditto. 8990 * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed. 8991 * svg/SVGPathSegCurvetoQuadraticSmooth.h: All setters now call the commitChange() method. 8992 * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Enable StrictTypeChecking. 8993 * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Ditto. 8994 * svg/SVGPathSegLineto.cpp: Removed. 8995 * svg/SVGPathSegLineto.h: All setters now call the commitChange() method. 8996 * svg/SVGPathSegLinetoAbs.idl: Enable StrictTypeChecking. 8997 * svg/SVGPathSegLinetoHorizontal.cpp: Removed. 8998 * svg/SVGPathSegLinetoHorizontal.h: All setters now call the commitChange() method. 8999 * svg/SVGPathSegLinetoHorizontalAbs.idl: Enable StrictTypeChecking. 9000 * svg/SVGPathSegLinetoHorizontalRel.idl: Ditto. 9001 * svg/SVGPathSegLinetoRel.idl: Enable StrictTypeChecking. 9002 * svg/SVGPathSegLinetoVertical.cpp: Removed. 9003 * svg/SVGPathSegLinetoVertical.h: All setters now call the commitChange() method. 9004 * svg/SVGPathSegLinetoVerticalAbs.idl: Enable StrictTypeChecking. 9005 * svg/SVGPathSegLinetoVerticalRel.idl: Ditto. 9006 * svg/SVGPathSegList.cpp: Switch from SVGList<RefPtr<SVGPathSeg> > to a plain Vector<RefPtr<SVGPathSeg> >. 9007 (WebCore::SVGPathSegList::valueAsString): Utilize SVGPathParserFactory to build a String from a SVGPathSegList. 9008 (WebCore::SVGPathSegList::commitChange): Call SVGPathElement::pathSegListChanged(). 9009 * svg/SVGPathSegList.h: 9010 (WebCore::SVGPathSegList::SVGPathSegList): 9011 * svg/SVGPathSegList.idl: Remove [JSCCustom] flags, no longer needed. 9012 * svg/SVGPathSegListBuilder.cpp: Adapt to SVGPathSegList API changes. 9013 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder): 9014 (WebCore::SVGPathSegListBuilder::moveTo): 9015 (WebCore::SVGPathSegListBuilder::lineTo): 9016 (WebCore::SVGPathSegListBuilder::lineToHorizontal): 9017 (WebCore::SVGPathSegListBuilder::lineToVertical): 9018 (WebCore::SVGPathSegListBuilder::curveToCubic): 9019 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth): 9020 (WebCore::SVGPathSegListBuilder::curveToQuadratic): 9021 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth): 9022 (WebCore::SVGPathSegListBuilder::arcTo): 9023 (WebCore::SVGPathSegListBuilder::closePath): 9024 * svg/SVGPathSegListBuilder.h: Ditto. 9025 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathElement): 9026 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList): 9027 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegRole): 9028 (WebCore::SVGPathSegListBuilder::cleanup): 9029 * svg/SVGPathSegListSource.cpp: Ditto. 9030 (WebCore::SVGPathSegListSource::SVGPathSegListSource): 9031 (WebCore::SVGPathSegListSource::parseSVGSegmentType): 9032 (WebCore::SVGPathSegListSource::nextCommand): 9033 (WebCore::SVGPathSegListSource::parseMoveToSegment): 9034 (WebCore::SVGPathSegListSource::parseLineToSegment): 9035 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment): 9036 * svg/SVGPathSegListSource.h: Ditto. 9037 (WebCore::SVGPathSegListSource::create): 9038 * svg/SVGPathSegMoveto.cpp: Removed. 9039 * svg/SVGPathSegMoveto.h: All setters now call the commitChange() method. 9040 * svg/SVGPathSegMovetoAbs.idl: Enable StrictTypeChecking. 9041 * svg/SVGPathSegMovetoRel.idl: Ditto. 9042 * svg/SVGPathSegWithContext.h: Added. This is the new base class for all SVGPathSeg derived types, that's associated with a SVGPathElement and a 'role' (normalized/unaltered segment list). 9043 (WebCore::SVGPathSegWithContext::SVGPathSegWithContext): 9044 (WebCore::SVGPathSegWithContext::animatedProperty): 9045 (WebCore::SVGPathSegWithContext::setContextAndRole): 9046 (WebCore::SVGPathSegWithContext::commitChange): 9047 (WebCore::SVGPathSegSingleCoordinate::x): 9048 (WebCore::SVGPathSegSingleCoordinate::setX): 9049 (WebCore::SVGPathSegSingleCoordinate::y): 9050 (WebCore::SVGPathSegSingleCoordinate::setY): 9051 (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate): 9052 * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Added. 9053 (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal): 9054 (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal): 9055 (WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList): 9056 (WebCore::SVGAnimatedPathSegListPropertyTearOff::create): 9057 (WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff): 9058 * svg/properties/SVGPathSegListPropertyTearOff.cpp: Added. 9059 (WebCore::SVGPathSegListPropertyTearOff::clear): Added in the cpp file, not in the header, as it needs access to SVGPathSegWithContext, which we can't include from the header. 9060 (WebCore::SVGPathSegListPropertyTearOff::getItem): Ditto. 9061 (WebCore::SVGPathSegListPropertyTearOff::removeItem): Ditto. 9062 (WebCore::SVGPathSegListPropertyTearOff::contextElement): Needs access to SVGPathElement, that's why it lives in the cpp file. 9063 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemValue): Needs access to SVGPathSegWithContext. 9064 * svg/properties/SVGPathSegListPropertyTearOff.h: Added. 9065 (WebCore::SVGPathSegListPropertyTearOff::create): 9066 (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList): 9067 (WebCore::SVGPathSegListPropertyTearOff::numberOfItems): 9068 (WebCore::SVGPathSegListPropertyTearOff::initialize): 9069 (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore): 9070 (WebCore::SVGPathSegListPropertyTearOff::replaceItem): 9071 (WebCore::SVGPathSegListPropertyTearOff::appendItem): 9072 (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff): 9073 (WebCore::SVGPathSegListPropertyTearOff::commitChange): 9074 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemWrapper): 9075 9076 2010-11-19 Pavel Feldman <pfeldman (a] chromium.org> 9077 9078 Not reviewed: one line follow up to r72376. 9079 9080 * inspector/InspectorResourceAgent.cpp: 9081 (WebCore::buildObjectForResourceResponse): 9082 9083 2010-11-19 Sergio Villar Senin <svillar (a] igalia.com> 9084 9085 Reviewed by Xan Lopez. 9086 9087 [Gtk] "CRITICAL **: msg_got_headers_cb: assertion `entry' failed" when using HTTP cache 9088 https://bugs.webkit.org/show_bug.cgi?id=49666 9089 9090 WebKit resource load cache does validate its own resources by 9091 issuing conditional requests to the server. The HTTP cache was 9092 making the assumption that any possible conditional request was 9093 always generated by itself. 9094 9095 * platform/network/soup/cache/webkit/soup-cache.c: 9096 (webkit_soup_cache_entry_remove): added an assertion 9097 (msg_got_headers_cb): 9098 9099 2010-11-19 Dai Mikurube <dmikurube (a] google.com> 9100 9101 Reviewed by Kent Tamura. 9102 9103 stepUp/stepDown for values in step-mismatching state for input elements 9104 https://bugs.webkit.org/show_bug.cgi?id=48976 9105 9106 Fixed stepUp/stepDown behaviors for step-mismatching values to follow the specification of 9107 HTML5 4.10.7.3 Common input element APIs. In details, disabled any stepwise adjustment for 9108 step-mismatching values. 9109 9110 * html/HTMLInputElement.cpp: 9111 (WebCore::HTMLInputElement::applyStep): 9112 9113 2010-11-19 Pavel Feldman <pfeldman (a] chromium.org> 9114 9115 Not reviewed. Rolled out build failures introduced in r72373. 9116 9117 * inspector/CodeGeneratorInspector.pm: 9118 9119 2010-11-18 Pavel Feldman <pfeldman (a] chromium.org> 9120 9121 Reviewed by Yury Semikhatsky. 9122 9123 Web Inspector: provide response code and status text as 9124 a part of raw headers data. 9125 https://bugs.webkit.org/show_bug.cgi?id=49668 9126 9127 * GNUmakefile.am: 9128 * WebCore.gypi: 9129 * WebCore.pro: 9130 * WebCore.vcproj/WebCore.vcproj: 9131 * WebCore.xcodeproj/project.pbxproj: 9132 * inspector/InspectorResourceAgent.cpp: 9133 (WebCore::buildObjectForResourceResponse): 9134 * inspector/front-end/NetworkPanel.js: 9135 (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell): 9136 * inspector/front-end/ResourceManager.js: 9137 (WebInspector.ResourceManager.prototype._updateResourceWithResponse): 9138 * platform/network/ResourceLoadInfo.h: Renamed from WebCore/platform/network/ResourceRawHeaders.h. 9139 (WebCore::ResourceLoadInfo::ResourceLoadInfo): 9140 * platform/network/ResourceResponseBase.cpp: 9141 (WebCore::ResourceResponseBase::resourceLoadInfo): 9142 (WebCore::ResourceResponseBase::setResourceLoadInfo): 9143 * platform/network/ResourceResponseBase.h: 9144 9145 2010-11-19 Mike Lawther <mikelawther (a] chromium.org> 9146 9147 Reviewed by James Robinson. 9148 9149 [skia] assert when attempting to get (but not use) pointer to outside the canvas 9150 https://bugs.webkit.org/show_bug.cgi?id=49698 9151 9152 Early return to avoid getting a pointer to outside the canvas, and 9153 hence triggering a Skia assert. 9154 9155 * platform/graphics/skia/ImageBufferSkia.cpp: 9156 (WebCore::getImageData): 9157 9158 2010-11-18 Ilya Tikhonovsky <loislo (a] chromium.org> 9159 9160 Reviewed by Yury Semikhatsky. 9161 9162 Web Inspector: reduce the footprint of InspectorBackendDispatcher. 9163 InspectorBackendDispatcher is a generated file. 9164 Its content is not optimal and loc may be reduced by a quarter. 9165 In each generated function we have a code for getting 'in' values from 9166 the arguments properties object. I've extracted this code into separate getters. 9167 The side effect is better readability of the generated code. 9168 9169 https://bugs.webkit.org/show_bug.cgi?id=49729 9170 9171 * inspector/CodeGeneratorInspector.pm: 9172 9173 2010-11-19 Yael Aharon <yael.aharon (a] nokia.com> 9174 9175 Reviewed by Antonio Gomes. 9176 9177 [Qt] Focus ring does not show for image maps 9178 https://bugs.webkit.org/show_bug.cgi?id=49615 9179 9180 Draw a focus ring for the paths surrounding the focus ring of image map area. 9181 Provide Qt specific results for the test fast/images/imagemap-focus-ring.html. 9182 9183 * platform/graphics/qt/GraphicsContextQt.cpp: 9184 (WebCore::GraphicsContext::drawFocusRing): 9185 9186 2010-11-01 MORITA Hajime <morrita (a] google.com> 9187 9188 Reviewed by David Hyatt. 9189 9190 Navigating dark background websites results in blinding white flashes between pages. 9191 https://bugs.webkit.org/show_bug.cgi?id=45640 9192 9193 This FOUC is caused by an early layout request before the <body> is ready, 9194 and the page's background style given for <body>, instead of <html>. 9195 So many sites have such stylesheets that we should care them. 9196 9197 - Some DOM operation such as 'element.offsetLeft' causes page layout. 9198 - The page layout results page repaint 9199 - The page page repaint makes a white screen. because there is nothing to paint 9200 before <body> is available. 9201 9202 This change: 9203 - extracted existing FOUC check on RenderBlock and RenderLayer to 9204 Document::mayCauseFlashOfUnstyledContent(), 9205 - checked non-<head> element availability on mayCauseFlashOfUnstyledContent(), and 9206 - added FOUC guards before requesting reapint on FrameView. 9207 9208 Note that non-<head> document root children are typically <body>, but possibly 9209 some other type of elements in the case of non-HTML documents. 9210 9211 No new tests. The data loading speed matters and it cannot be 9212 captured by DRT. 9213 9214 * dom/Document.cpp: 9215 (hasHeadSibling): Added. 9216 (WebCore::Document::mayCauseFlashOfUnstyledContent): Added. 9217 * dom/Document.h: 9218 * page/FrameView.cpp: 9219 (WebCore::FrameView::invalidateRect): Added a guard. 9220 (WebCore::FrameView::repaintContentRectangle): Added a guard. 9221 (WebCore::FrameView::doDeferredRepaints): Added a guard. 9222 (WebCore::FrameView::shouldUpdate): Added. 9223 * page/FrameView.h: 9224 * rendering/RenderBlock.cpp: 9225 (WebCore::RenderBlock::paintContents): Replaced FOUC check to use mayCauseFlashOfUnstyledContent 9226 * rendering/RenderLayer.cpp: 9227 (WebCore::RenderLayer::paintLayer): Replaced FOUC check to use mayCauseFlashOfUnstyledContent 9228 9229 2010-11-18 Kent Tamura <tkent (a] chromium.org> 9230 9231 Reviewed by Tony Chang. 9232 9233 Add more validation message functions 9234 https://bugs.webkit.org/show_bug.cgi?id=49716 9235 9236 Add the following message functions: 9237 - validationMessageValueMissingForCheckbox() 9238 - validationMessageValueMissingForFile() 9239 - validationMessageValueMissingForMultipleFile() 9240 - validationMessageValueMissingForRadio() 9241 - validationMessageValueMissingForSelect() 9242 9243 and update ValidityState, HTMLInputElement, and InputTypes to use them. 9244 9245 No new tests because this doesn't change visible behavior. 9246 9247 * html/CheckboxInputType.cpp: 9248 (WebCore::CheckboxInputType::valueMissingText): 9249 * html/CheckboxInputType.h: 9250 * html/FileInputType.cpp: 9251 (WebCore::FileInputType::valueMissingText): 9252 * html/FileInputType.h: 9253 * html/HTMLInputElement.cpp: 9254 (WebCore::HTMLInputElement::valueMissingText): 9255 * html/HTMLInputElement.h: 9256 * html/InputType.cpp: 9257 (WebCore::InputType::valueMissingText): 9258 * html/InputType.h: 9259 * html/RadioInputType.cpp: 9260 (WebCore::RadioInputType::valueMissingText): 9261 * html/RadioInputType.h: 9262 * html/ValidityState.cpp: 9263 (WebCore::ValidityState::validationMessage): 9264 * platform/LocalizedStrings.cpp: 9265 (WebCore::validationMessageValueMissingForCheckboxText): 9266 (WebCore::validationMessageValueMissingForFileText): 9267 (WebCore::validationMessageValueMissingForMultipleFileText): 9268 (WebCore::validationMessageValueMissingForRadioText): 9269 (WebCore::validationMessageValueMissingForSelectText): 9270 * platform/LocalizedStrings.h: 9271 * platform/android/LocalizedStringsAndroid.cpp: 9272 (WebCore::validationMessageValueMissingForCheckboxText): 9273 (WebCore::validationMessageValueMissingForFileText): 9274 (WebCore::validationMessageValueMissingForMultipleFileText): 9275 (WebCore::validationMessageValueMissingForRadioText): 9276 (WebCore::validationMessageValueMissingForSelectText): 9277 * platform/brew/LocalizedStringsBrew.cpp: 9278 (WebCore::validationMessageValueMissingForCheckboxText): 9279 (WebCore::validationMessageValueMissingForFileText): 9280 (WebCore::validationMessageValueMissingForMultipleFileText): 9281 (WebCore::validationMessageValueMissingForRadioText): 9282 (WebCore::validationMessageValueMissingForSelectText): 9283 * platform/efl/LocalizedStringsEfl.cpp: 9284 (WebCore::validationMessageValueMissingForCheckboxText): 9285 (WebCore::validationMessageValueMissingForFileText): 9286 (WebCore::validationMessageValueMissingForMultipleFileText): 9287 (WebCore::validationMessageValueMissingForRadioText): 9288 (WebCore::validationMessageValueMissingForSelectText): 9289 * platform/gtk/LocalizedStringsGtk.cpp: 9290 (WebCore::validationMessageValueMissingForCheckboxText): 9291 (WebCore::validationMessageValueMissingForFileText): 9292 (WebCore::validationMessageValueMissingForMultipleFileText): 9293 (WebCore::validationMessageValueMissingForRadioText): 9294 (WebCore::validationMessageValueMissingForSelectText): 9295 * platform/haiku/LocalizedStringsHaiku.cpp: 9296 (WebCore::validationMessageValueMissingText): 9297 (WebCore::validationMessageValueMissingForCheckboxText): 9298 (WebCore::validationMessageValueMissingForFileText): 9299 (WebCore::validationMessageValueMissingForMultipleFileText): 9300 (WebCore::validationMessageValueMissingForRadioText): 9301 (WebCore::validationMessageValueMissingForSelectText): 9302 * platform/wx/LocalizedStringsWx.cpp: 9303 (WebCore::validationMessageValueMissingForCheckboxText): 9304 (WebCore::validationMessageValueMissingForFileText): 9305 (WebCore::validationMessageValueMissingForMultipleFileText): 9306 (WebCore::validationMessageValueMissingForRadioText): 9307 (WebCore::validationMessageValueMissingForSelectText): 9308 9309 2010-11-18 Gavin Barraclough <barraclough (a] apple.com> 9310 9311 Reviewed by Oliver Hunt. 9312 9313 Bug 49708 - Stop recompiling functions to regenerate exception info. 9314 9315 Instead only hold info as necessary keep divot info is the inspector 9316 is enabled, line number info is debugging or profiling, and handler 9317 info for functions with try/catch. 9318 9319 * bindings/js/JSDOMWindowBase.cpp: 9320 (WebCore::JSDOMWindowBase::supportsRichSourceInfo): 9321 - report to JSC whether the inspector is enabled - in which 9322 case we will generate better error messages on exceptions. 9323 * bindings/js/JSDOMWindowBase.h: 9324 9325 2010-11-18 Jian Li <jianli (a] chromium.org> 9326 9327 Reviewed by Kenneth Russell. 9328 9329 Make binding code generation scripts support 'short' type 9330 https://bugs.webkit.org/show_bug.cgi?id=49704 9331 9332 Updated binding tests. 9333 9334 * bindings/scripts/CodeGeneratorJS.pm: Also fixed a style issue. 9335 * bindings/scripts/CodeGeneratorV8.pm: 9336 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 9337 * bindings/scripts/test/CPP/WebDOMTestObj.h: 9338 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 9339 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: 9340 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 9341 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 9342 * bindings/scripts/test/JS/JSTestObj.cpp: 9343 * bindings/scripts/test/JS/JSTestObj.h: 9344 * bindings/scripts/test/ObjC/DOMTestObj.h: 9345 * bindings/scripts/test/ObjC/DOMTestObj.mm: 9346 * bindings/scripts/test/TestObj.idl: 9347 * bindings/scripts/test/V8/V8TestObj.cpp: 9348 9349 2010-11-18 Mark Rowe <mrowe (a] apple.com> 9350 9351 Rubber-stamped by Adam Roben. 9352 9353 <rdar://problem/8602509&8602717&8602724> Enable compaction support. 9354 9355 * Configurations/WebCore.xcconfig: 9356 9357 2010-11-18 Dave Hyatt <hyatt (a] apple.com> 9358 9359 Reviewed by Dan Bernstein. 9360 9361 https://bugs.webkit.org/show_bug.cgi?id=49772 9362 9363 Fix nested ruby. My previous checkin (for 49717) broke it. Push the ruby text and ruby base text 9364 together based off logicalTopOverflow and logicalBottomOverflow rather than lineTop and lineBottom. 9365 This way the overflow from nested rubies is accounted for. 9366 9367 Added fast/ruby/nested-ruby.html 9368 9369 * rendering/RenderRubyRun.cpp: 9370 (WebCore::RenderRubyRun::layout): 9371 9372 2010-11-18 Kinuko Yasuda <kinuko (a] chromium.org> 9373 9374 Reviewed by Nate Chapin. 9375 9376 [V8] ASSERT(WTF::isMainThread()) fails in V8Binding::int32ToWebCoreString in workers 9377 https://bugs.webkit.org/show_bug.cgi?id=49613 9378 9379 No new tests. Running existing worker tests like 9380 fast/workers/storage/execute-sql-args-worker.html in chromium 9381 would verify it. 9382 9383 * bindings/v8/V8Binding.cpp: 9384 (WebCore::int32ToWebCoreStringFast): 9385 (WebCore::int32ToWebCoreString): 9386 9387 2010-11-18 Alexey Proskuryakov <ap (a] apple.com> 9388 9389 Windows build fix. 9390 9391 https://bugs.webkit.org/show_bug.cgi?id=49762 9392 Stylesheet wrappers are not GC protected 9393 9394 * bindings/js/JSBindingsAllInOne.cpp: Added new custom binding files. 9395 9396 2010-11-18 Dave Hyatt <hyatt (a] apple.com> 9397 9398 Reviewed by Dan Bernstein. 9399 9400 https://bugs.webkit.org/show_bug.cgi?id=49717 9401 9402 Implement better behavior for the logical height and block direction spacing of ruby text and ruby 9403 base text. 9404 9405 Added six new tests: ruby-auto-line-expansion.html (one version for each of the four writing modes) to 9406 test ruby text accommodation and quirks-mode-ruby-spacing.html / quirks-mode-ruby-spacing-bt.html to test 9407 that ruby doesn't reset line-height. 9408 9409 * css/html.css: 9410 Remove the line-height:normal rule for <ruby> This behavior was incorrect, since a <ruby> on a line 9411 by itself in quirks mode would cause the overall line-height of the enclosing block to not be honored. 9412 9413 * rendering/InlineBox.h: 9414 (WebCore::InlineBox::adjustBlockDirectionPosition): 9415 Add adjustBlockDirectionPosition as a shorthand for calling adjustPosition with the correct delta (x or y) 9416 depending on orientation. 9417 9418 * rendering/InlineFlowBox.cpp: 9419 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 9420 placeBoxesInBlockDirection now looks for Ruby runs, and when it encounters them it sets a flag, containsRuby, 9421 to true. This flag is stored as a bit on the RootInlineBox and lets us know whether we need to do a later 9422 crawl of the line boxes after they are positioned to see if all the Ruby texts fit or not. 9423 9424 Add the notion of a lineTop and lineBottom that include margins, since flipped lines writing modes (lr and bt) 9425 mess up the flipping otherwise. These new variables are lineTopIncludingMargins and lineBottomIncludingMargins. 9426 This is only relevant for replaced elements, since the block direction margins of inline flows are always 0. 9427 9428 Because RenderRubyRun is implemented as an inline-block (this is probably not a behavior we want to keep long-term), 9429 the line-height is propagated into the inline-block, and it ends up being counted as part of the overall lineTop 9430 and lineBottom since it is inside the inline-block's height. To prevent this from happening, we have to fake it 9431 as though RenderRubyRun was just a normal inline. We look at the line boxes of the ruby base and we push lineTop/Bottom 9432 in by the leading on either side so that it isn't counted as part of lineTop and lineBottom. This enables the later 9433 Ruby code that examines the spacing between lines to not be fooled into thinking it can't intrude into an inline-block's 9434 interior on a previous line. 9435 9436 (WebCore::InlineFlowBox::computeBlockDirectionRubyAdjustment): 9437 This function computes the amount that a line box has to be moved in order to accommodate all of the Ruby texts on the 9438 line. With tb and rl writing modes, the Ruby is trying to fit between the current line and a previous line, and so 9439 we're checking some highest previous position and computing the amount we have to move. 9440 9441 For lr and bt writing modes, the lines are flipped relative to the block direction, so we are computing how much we have 9442 to move the *following* line based off a lowest position. 9443 9444 In all writing modes we will allow Ruby text to intrude into the padding of a block. 9445 9446 * rendering/InlineFlowBox.h: 9447 * rendering/RenderBlock.cpp: 9448 (WebCore::RenderBlock::layoutBlockChildren): 9449 Ruby text is now considered a special child that should be excluded from normal layout, margin collapsing and height 9450 computations. Rename the layoutLegend function to be more generalized and make it apply to both Ruby text and to 9451 legends. This means that the RenderRubyRun computes its logical height without any regard for the ruby text. 9452 9453 * rendering/RenderBlock.h: 9454 (WebCore::RenderBlock::layoutSpecialExcludedChild): 9455 layoutSpecialExcludedChild is the new version of layoutLegend and it is implemented by RenderFieldset and RenderRubyRun. 9456 9457 * rendering/RenderBlockLineLayout.cpp: 9458 (WebCore::RenderBlock::layoutInlineChildren): 9459 When we hit the end of line layout, if we're in lr or bt writing modes, we have to potentially grow the height of the block 9460 to accommodate ruby text along the bottom side of the line. We call computeBlockDirectionRubyAdjustment here in flipped lines 9461 writing mode only, and then we increase the logical height of the block if necessary. 9462 9463 * rendering/RenderFieldset.cpp: 9464 (WebCore::RenderFieldset::layoutSpecialExcludedChild): 9465 * rendering/RenderFieldset.h: 9466 No changes here other than the function rename. 9467 9468 * rendering/RenderRubyRun.cpp: 9469 (WebCore::RenderRubyRun::staticCreateRubyRun): 9470 Remove the hack that locked RenderRubyRun's writing mode to tb or rl, since it didn't really work anyway, and it isn't necessary 9471 now that RenderRubyRun has its own layout method. 9472 9473 (WebCore::RenderRubyRun::layoutSpecialExcludedChild): 9474 RenderRubyRun lays out the ruby text here but doesn't do anything with its placement yet. We wait until the base is positioned 9475 and then handled positioning the RenderRubyText at the end of RenderRubyRun's layout method. 9476 9477 (WebCore::RenderRubyRun::layout): 9478 * rendering/RenderRubyRun.h: 9479 RenderRubyRun now has its own layout method that calls the base class to get the RenderRubyBase positioned and then moves the 9480 RenderRubyText such that its bottommost line box's bottom and the RenderRubyBase's topmost line box's line top are flush with 9481 one another. The RenderRubyText will commonly be positioned at a negative coordinate now and spill out of the RenderRubyRun 9482 as overflow. 9483 9484 * rendering/RootInlineBox.cpp: 9485 (WebCore::RootInlineBox::RootInlineBox): 9486 Added the m_containsRuby bit for performance to avoid the extra pass to try to accommodate ruby texts when none are present. 9487 9488 (WebCore::RootInlineBox::adjustPosition): 9489 Fixed a bug in adjustPosition where the lineTop, lineBottom and blockLogicalHeight values were always being augmented by dy 9490 even in vertical writing modes (where dx needed to be used instead). 9491 9492 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 9493 (WebCore::RootInlineBox::blockDirectionRubyAdjustment): 9494 * rendering/RootInlineBox.h: 9495 (WebCore::RootInlineBox::containsRuby): 9496 RootInlineBox now calls blockDirectionRubyAdjustment to determine the amount of additional spacing that has to exist between 9497 the lines in order to accommodate all Ruby texts, and then it does adjustPosition to move the new line by the amount required. 9498 9499 2010-11-18 Alexey Proskuryakov <ap (a] apple.com> 9500 9501 Reviewed by Geoffrey Garen. 9502 9503 https://bugs.webkit.org/show_bug.cgi?id=49762 9504 Stylesheet wrappers are not GC protected 9505 9506 Tests: fast/dom/StyleSheet/gc-inline-style-cssvalues.html 9507 fast/dom/StyleSheet/gc-styleheet-wrapper.xhtml 9508 9509 * Android.jscbindings.mk: 9510 * CMakeLists.txt: 9511 * GNUmakefile.am: 9512 * WebCore.gypi: 9513 * WebCore.pro: 9514 * WebCore.vcproj/WebCore.vcproj: 9515 Added the new custom bindings files. 9516 9517 * WebCore.xcodeproj/project.pbxproj: Added the new custom bindings files. Also, added some 9518 existing headers. 9519 9520 * bindings/js/JSDOMBinding.cpp: (WebCore::isObservableThroughDOM): If a node has a stylesheet 9521 with a wrapper, it may be the only thing having the stylesheet's wrapper alive, so its own 9522 wrapper has to stay alive, too. 9523 While at it, also fixed the same issue with inline style declarations. 9524 Also, added a FIXME comment about one with attribute nodes. We implement a less conservative 9525 approach for nodes, so perhaps fixing this is not as easy as removing a hasCustomProperties() 9526 check. 9527 9528 * bindings/js/JSHTMLLinkElementCustom.cpp: Added. 9529 (WebCore::JSHTMLLinkElement::markChildren): 9530 * bindings/js/JSHTMLStyleElementCustom.cpp: Added. 9531 (WebCore::JSHTMLStyleElement::markChildren): 9532 * bindings/js/JSProcessingInstructionCustom.cpp: Added. 9533 (WebCore::JSProcessingInstruction::markChildren): 9534 Mark stylesheets owned by these nodes. As always in markChildren() functions, we do it 9535 conservatively, without checking whether the stylesheet or any of its children have custom 9536 properties. 9537 9538 * dom/ProcessingInstruction.idl: 9539 * html/HTMLLinkElement.idl: 9540 * html/HTMLStyleElement.idl: 9541 These have custom mark functions now. 9542 9543 2010-11-18 Jian Li <jianli (a] chromium.org> 9544 9545 Reviewed by Kenneth Russell. 9546 9547 Move length and slice out of ArrayBufferView interface 9548 https://bugs.webkit.org/show_bug.cgi?id=49697 9549 9550 No functionality change. Covered by existing ArrayBuffer tests. 9551 9552 * WebCore.gypi: 9553 * WebCore.pro: 9554 * WebCore.xcodeproj/project.pbxproj: 9555 * bindings/js/JSArrayBufferViewCustom.cpp: Removed. 9556 * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: Removed. 9557 * html/canvas/ArrayBufferView.h: 9558 * html/canvas/ArrayBufferView.idl: 9559 * html/canvas/Float32Array.cpp: 9560 (WebCore::Float32Array::slice): 9561 * html/canvas/Float32Array.h: 9562 * html/canvas/Float32Array.idl: 9563 * html/canvas/Int16Array.cpp: 9564 (WebCore::Int16Array::slice): 9565 * html/canvas/Int16Array.h: 9566 * html/canvas/Int16Array.idl: 9567 * html/canvas/Int32Array.cpp: 9568 (WebCore::Int32Array::slice): 9569 * html/canvas/Int32Array.h: 9570 * html/canvas/Int32Array.idl: 9571 * html/canvas/Int8Array.cpp: 9572 (WebCore::Int8Array::slice): 9573 * html/canvas/Int8Array.h: 9574 * html/canvas/Int8Array.idl: 9575 * html/canvas/TypedArrayBase.h: 9576 (WebCore::TypedArrayBase::length): 9577 * html/canvas/Uint16Array.cpp: 9578 (WebCore::Uint16Array::slice): 9579 * html/canvas/Uint16Array.h: 9580 * html/canvas/Uint16Array.idl: 9581 * html/canvas/Uint32Array.cpp: 9582 (WebCore::Uint32Array::slice): 9583 * html/canvas/Uint32Array.h: 9584 * html/canvas/Uint32Array.idl: 9585 * html/canvas/Uint8Array.cpp: 9586 (WebCore::Uint8Array::slice): 9587 * html/canvas/Uint8Array.h: 9588 * html/canvas/Uint8Array.idl: 9589 * html/canvas/WebGLRenderingContext.cpp: 9590 (WebCore::WebGLRenderingContext::readPixels): 9591 9592 2010-11-17 Zhenyao Mo <zmo (a] google.com> 9593 9594 Reviewed by Kenneth Russell. 9595 9596 Implement UNPACK_COLORSPACE_CONVERSION_WEBGL 9597 https://bugs.webkit.org/show_bug.cgi?id=47196 9598 9599 * platform/image-decoders/ImageDecoder.h: 9600 (WebCore::ImageDecoder::ignoresGammaAndColorProfile): Add a getter function for the ignoreGammaAndColorProfile setting. 9601 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 9602 (WebCore::JPEGImageReader::decode): Hookup ignoreGammaAndColorProfile setting with color profile processing. 9603 * platform/image-decoders/png/PNGImageDecoder.cpp: 9604 (WebCore::PNGImageDecoder::headerAvailable): Ditto. 9605 9606 2010-11-18 Steve Falkenburg <sfalken (a] apple.com> 9607 9608 Reviewed by Adam Roben. 9609 9610 Remove leftover Windows Debug_Internal configurations 9611 https://bugs.webkit.org/show_bug.cgi?id=49758 9612 9613 * WebCore.vcproj/QTMovieWin.vcproj: 9614 * WebCore.vcproj/WebCore.vcproj: 9615 9616 2010-11-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 9617 9618 Unreviewed, rolling out r72299. 9619 http://trac.webkit.org/changeset/72299 9620 https://bugs.webkit.org/show_bug.cgi?id=49761 9621 9622 Broke chromium ui test SessionHistoryTest.FrameBackForward. 9623 (Requested by dave_levin on #webkit). 9624 9625 * loader/HistoryController.cpp: 9626 (WebCore::HistoryController::HistoryController): 9627 (WebCore::HistoryController::saveDocumentState): 9628 (WebCore::HistoryController::updateForBackForwardNavigation): 9629 (WebCore::HistoryController::updateForCommit): 9630 (WebCore::HistoryController::updateForFrameLoadCompleted): 9631 (WebCore::HistoryController::setCurrentItem): 9632 (WebCore::HistoryController::createItem): 9633 (WebCore::HistoryController::createItemTree): 9634 (WebCore::HistoryController::recursiveGoToItem): 9635 * loader/HistoryController.h: 9636 9637 2010-11-18 James Robinson <jamesr (a] chromium.org> 9638 9639 Reviewed by Darin Fisher. 9640 9641 [chromium] REGRESSION(72141): Chromium fails acid3 on windows and linux 9642 https://bugs.webkit.org/show_bug.cgi?id=49638 9643 9644 Avoid clamping zero text size to 12pt in FontPlatformData::setupPaint() in FontPlatformDataLinux.cpp 9645 Set all metrics to 0 if the font size is specified as zero in SimpleFontDataChromiumWin.cpp, just 9646 like Safari Win did in r72270. 9647 9648 Test: fast/text/font-size-zero.html 9649 9650 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 9651 (WebCore::FontPlatformData::setupPaint): 9652 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: 9653 (WebCore::SimpleFontData::platformInit): 9654 9655 2010-11-18 Rob Buis <rwlbuis (a] gmail.com> 9656 9657 Reviewed by Simon Fraser. 9658 9659 Only inject fullscreen.css when in fullscreen 9660 https://bugs.webkit.org/show_bug.cgi?id=49510 9661 9662 Refactor to only add fullscreen sheet rules when document is in fullscreen mode. 9663 9664 * css/CSSStyleSelector.cpp: 9665 (WebCore::CSSStyleSelector::CSSStyleSelector): 9666 (WebCore::loadFullDefaultStyle): 9667 (WebCore::loadFullScreenRulesIfNeeded): 9668 (WebCore::CSSStyleSelector::styleForElement): 9669 9670 2010-11-18 Steve Falkenburg <sfalken (a] apple.com> 9671 9672 Reviewed by Adam Roben. 9673 9674 Debug_Internal Windows configuration is unnecessary, should be removed 9675 https://bugs.webkit.org/show_bug.cgi?id=49753 9676 9677 * WebCorePrefix.h: 9678 9679 2010-11-18 Steve Falkenburg <sfalken (a] apple.com> 9680 9681 Reviewed by Adam Roben. 9682 9683 Clean up vcproj errors 9684 https://bugs.webkit.org/show_bug.cgi?id=49741 9685 9686 * WebCore.vcproj/WebCore.vcproj: 9687 9688 2010-11-18 Alexey Proskuryakov <ap (a] apple.com> 9689 9690 Reviewed by Anders Carlsson. 9691 9692 https://bugs.webkit.org/show_bug.cgi?id=49694 9693 Add some comments about XSLStyleSheet owner node 9694 9695 No change in behavior, so no tests. 9696 9697 * dom/ProcessingInstruction.cpp: 9698 (WebCore::ProcessingInstruction::checkStyleSheet): 9699 * xml/XSLStyleSheet.h: 9700 (WebCore::XSLStyleSheet::create): 9701 (WebCore::XSLStyleSheet::createEmbedded): 9702 (WebCore::XSLStyleSheet::createForXSLTProcessor): 9703 * xml/XSLStyleSheetLibxslt.cpp: 9704 (WebCore::XSLStyleSheet::XSLStyleSheet): 9705 * xml/XSLTProcessorLibxslt.cpp: 9706 (WebCore::xsltStylesheetPointer): 9707 * xml/XSLTProcessorQt.cpp: 9708 (WebCore::XSLTProcessor::transformToString): 9709 9710 2010-11-18 Jer Noble <jer.noble (a] apple.com> 9711 9712 Reviewed by Eric Carlson. 9713 9714 REGRESSION (Safari 5.0.1): HTML5 videos on YouTube never start playing on Windows 9715 https://bugs.webkit.org/show_bug.cgi?id=44439 9716 <rdar://problem/8342407> 9717 9718 setUpCookiesForQuickTime() previously depended on having setFrameView() called first 9719 in order to get a Frame, and when it wasn't set, the cookie-copy failed. Now, 9720 setUpCookiesForQuickTime uses the MediaPlayerClient function mediaPlayerOwningDocument() 9721 to retrieve the document and subsequently, the Frame. 9722 9723 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 9724 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime): 9725 9726 2010-11-18 Joseph Pecoraro <joepeck (a] webkit.org> 9727 9728 Reviewed by Darin Adler. 9729 9730 Allow no-store resources to be used for back navigation 9731 https://bugs.webkit.org/show_bug.cgi?id=49672 9732 9733 Test: http/tests/cache/history-only-cached-subresource-loads.html 9734 9735 HTTP allows "Cache-Control: no-store" resources to "cached" for the 9736 purposes of history, such as back/forward navigation. Previously 9737 WebCore just immediately evicted these resources, now we leave them in 9738 the cache as long as they are not "https". This allows us to use them 9739 if they are used in a back navigation, or lazily evict and replace 9740 them on other load types expecting non-stale resources. 9741 9742 (WebCore::CachedResource::CachedResource): 9743 (WebCore::CachedResource::removeClient): instead of immediately removing the resource from the cache, leave it in the cache. 9744 * loader/cache/CachedResourceLoader.cpp: 9745 (WebCore::CachedResourceLoader::checkForReload): 9746 (WebCore::CachedResourceLoader::requestResource): allow history only resources if the CachePolicy is CachePolicyHistoryBuffer (back/forward navigation). 9747 * loader/cache/MemoryCache.cpp: 9748 (WebCore::MemoryCache::requestResource): lazily remove history only resources if it is requested for a load type expecting non-stale resources. 9749 * loader/cache/MemoryCache.h: default the forHistory parameter to false. 9750 9751 Rename cache policy CachePolicyAllowStale to CachePolicyHistoryBuffer. 9752 9753 * loader/FrameLoader.cpp: 9754 (WebCore::FrameLoader::subresourceCachePolicy): 9755 * loader/cache/CachePolicy.h: 9756 * loader/cache/CachedResource.cpp: 9757 9758 2010-11-18 Alexey Proskuryakov <ap (a] apple.com> 9759 9760 Reviewed by Darin Adler. 9761 9762 https://bugs.webkit.org/show_bug.cgi?id=49700 9763 XSLTProcessor.importNode is only tested with document nodes, and hits an assertion 9764 9765 Test: fast/xsl/import-non-document-node.xhtml 9766 9767 * css/CSSStyleSheet.cpp: 9768 (WebCore::isAcceptableCSSStyleSheetParent): 9769 (WebCore::CSSStyleSheet::CSSStyleSheet): 9770 * css/StyleSheet.cpp: 9771 (WebCore::StyleSheet::StyleSheet): 9772 Moved the assertion - hopefully, it's valid for CSS stylesheets. 9773 9774 2010-11-18 Charlie Reis <creis (a] chromium.org> 9775 9776 Reviewed by Darin Fisher. 9777 9778 Update correct content state during back/forward navigations 9779 https://bugs.webkit.org/show_bug.cgi?id=48809 9780 9781 Ensures that history's previousItem is non-null when clients try to 9782 update content state (e.g., Chromium's UpdateSessionHistory). We now 9783 track load completions with a boolean field rather than by clearing 9784 previousItem. 9785 9786 Behavior covered by existing tests in fast/history and fast/loader. 9787 9788 * loader/HistoryController.cpp: 9789 9790 2010-11-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 9791 9792 Unreviewed, rolling out r72288. 9793 http://trac.webkit.org/changeset/72288 9794 https://bugs.webkit.org/show_bug.cgi?id=49730 9795 9796 'krit attempted to do that, but revert got stuck' (Requested 9797 by antonm on #webkit). 9798 9799 * Android.mk: 9800 * CMakeLists.txt: 9801 * DerivedSources.make: 9802 * GNUmakefile.am: 9803 * WebCore.gyp/WebCore.gyp: 9804 * WebCore.gypi: 9805 * WebCore.order: 9806 * WebCore.pro: 9807 * WebCore.vcproj/WebCore.vcproj: 9808 * WebCore.xcodeproj/project.pbxproj: 9809 * bindings/js/JSBindingsAllInOne.cpp: 9810 * bindings/js/JSDOMBinding.cpp: 9811 (WebCore::setDOMException): 9812 * bindings/js/JSDOMBinding.h: 9813 (WebCore::createDOMObjectWrapper): 9814 (WebCore::getDOMObjectWrapper): 9815 * bindings/js/JSSVGPathSegCustom.cpp: 9816 (WebCore::toJS): 9817 * bindings/js/JSSVGPathSegListCustom.cpp: Added. 9818 (WebCore::JSSVGPathSegList::clear): 9819 (WebCore::JSSVGPathSegList::initialize): 9820 (WebCore::JSSVGPathSegList::getItem): 9821 (WebCore::JSSVGPathSegList::insertItemBefore): 9822 (WebCore::JSSVGPathSegList::replaceItem): 9823 (WebCore::JSSVGPathSegList::removeItem): 9824 (WebCore::JSSVGPathSegList::appendItem): 9825 * bindings/scripts/CodeGenerator.pm: 9826 * bindings/scripts/CodeGeneratorJS.pm: 9827 * bindings/scripts/CodeGeneratorObjC.pm: 9828 * bindings/scripts/CodeGeneratorV8.pm: 9829 * rendering/SVGRenderTreeAsText.cpp: 9830 (WebCore::operator<<): 9831 * svg/SVGAllInOne.cpp: 9832 * svg/SVGAnimatedPathData.cpp: Added. 9833 * svg/SVGAnimatedPathData.h: Copied from WebCore/svg/SVGPathSegClosePath.h. 9834 (WebCore::SVGAnimatedPathData::~SVGAnimatedPathData): 9835 * svg/SVGAnimatedPathData.idl: Copied from WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl. 9836 * svg/SVGPathElement.cpp: 9837 (WebCore::SVGPathElement::SVGPathElement): 9838 (WebCore::SVGPathElement::getPathSegAtLength): 9839 (WebCore::SVGPathElement::createSVGPathSegClosePath): 9840 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): 9841 (WebCore::SVGPathElement::createSVGPathSegMovetoRel): 9842 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): 9843 (WebCore::SVGPathElement::createSVGPathSegLinetoRel): 9844 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): 9845 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): 9846 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): 9847 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): 9848 (WebCore::SVGPathElement::createSVGPathSegArcAbs): 9849 (WebCore::SVGPathElement::createSVGPathSegArcRel): 9850 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): 9851 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): 9852 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): 9853 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): 9854 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): 9855 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): 9856 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): 9857 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): 9858 (WebCore::SVGPathElement::parseMappedAttribute): 9859 (WebCore::SVGPathElement::svgAttributeChanged): 9860 (WebCore::SVGPathElement::synchronizeProperty): 9861 (WebCore::SVGPathElement::pathSegList): 9862 (WebCore::SVGPathElement::normalizedPathSegList): 9863 (WebCore::SVGPathElement::animatedPathSegList): 9864 (WebCore::SVGPathElement::animatedNormalizedPathSegList): 9865 (WebCore::SVGPathElement::toPathData): 9866 * svg/SVGPathElement.h: 9867 (WebCore::SVGPathElement::isValid): 9868 (WebCore::SVGPathElement::supportsMarkers): 9869 * svg/SVGPathElement.idl: 9870 * svg/SVGPathParserFactory.cpp: 9871 (WebCore::globalSVGPathSegListBuilder): 9872 (WebCore::SVGPathParserFactory::buildPathFromByteStream): 9873 (WebCore::SVGPathParserFactory::buildPathFromSVGPathSegList): 9874 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString): 9875 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 9876 (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList): 9877 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString): 9878 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): 9879 (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList): 9880 * svg/SVGPathParserFactory.h: 9881 * svg/SVGPathSeg.cpp: Copied from WebCore/svg/SVGPathSegLinetoHorizontalRel.idl. 9882 (WebCore::SVGPathSeg::associatedAttributeName): 9883 * svg/SVGPathSeg.h: 9884 (WebCore::SVGPathSegSingleCoord::setX): 9885 (WebCore::SVGPathSegSingleCoord::x): 9886 (WebCore::SVGPathSegSingleCoord::setY): 9887 (WebCore::SVGPathSegSingleCoord::y): 9888 (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord): 9889 * svg/SVGPathSeg.idl: 9890 * svg/SVGPathSegArc.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 9891 (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs): 9892 (WebCore::SVGPathSegArcRel::SVGPathSegArcRel): 9893 * svg/SVGPathSegArc.h: 9894 (WebCore::SVGPathSegArc::SVGPathSegArc): 9895 (WebCore::SVGPathSegArc::setX): 9896 (WebCore::SVGPathSegArc::x): 9897 (WebCore::SVGPathSegArc::setY): 9898 (WebCore::SVGPathSegArc::y): 9899 (WebCore::SVGPathSegArc::setR1): 9900 (WebCore::SVGPathSegArc::r1): 9901 (WebCore::SVGPathSegArc::setR2): 9902 (WebCore::SVGPathSegArc::r2): 9903 (WebCore::SVGPathSegArc::setAngle): 9904 (WebCore::SVGPathSegArc::angle): 9905 (WebCore::SVGPathSegArc::setLargeArcFlag): 9906 (WebCore::SVGPathSegArc::largeArcFlag): 9907 (WebCore::SVGPathSegArc::setSweepFlag): 9908 (WebCore::SVGPathSegArc::sweepFlag): 9909 (WebCore::SVGPathSegArcAbs::create): 9910 (WebCore::SVGPathSegArcAbs::pathSegType): 9911 (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter): 9912 (WebCore::SVGPathSegArcRel::create): 9913 (WebCore::SVGPathSegArcRel::pathSegType): 9914 (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter): 9915 * svg/SVGPathSegArcAbs.idl: 9916 * svg/SVGPathSegArcRel.idl: 9917 * svg/SVGPathSegClosePath.cpp: Added. 9918 * svg/SVGPathSegClosePath.h: 9919 (WebCore::SVGPathSegClosePath::create): 9920 (WebCore::SVGPathSegClosePath::SVGPathSegClosePath): 9921 * svg/SVGPathSegCurvetoCubic.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 9922 (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs): 9923 (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel): 9924 * svg/SVGPathSegCurvetoCubic.h: 9925 (WebCore::SVGPathSegCurvetoCubic::SVGPathSegCurvetoCubic): 9926 (WebCore::SVGPathSegCurvetoCubic::setX): 9927 (WebCore::SVGPathSegCurvetoCubic::x): 9928 (WebCore::SVGPathSegCurvetoCubic::setY): 9929 (WebCore::SVGPathSegCurvetoCubic::y): 9930 (WebCore::SVGPathSegCurvetoCubic::setX1): 9931 (WebCore::SVGPathSegCurvetoCubic::x1): 9932 (WebCore::SVGPathSegCurvetoCubic::setY1): 9933 (WebCore::SVGPathSegCurvetoCubic::y1): 9934 (WebCore::SVGPathSegCurvetoCubic::setX2): 9935 (WebCore::SVGPathSegCurvetoCubic::x2): 9936 (WebCore::SVGPathSegCurvetoCubic::setY2): 9937 (WebCore::SVGPathSegCurvetoCubic::y2): 9938 (WebCore::SVGPathSegCurvetoCubicAbs::create): 9939 (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType): 9940 (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter): 9941 (WebCore::SVGPathSegCurvetoCubicRel::create): 9942 (WebCore::SVGPathSegCurvetoCubicRel::pathSegType): 9943 (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter): 9944 * svg/SVGPathSegCurvetoCubicAbs.idl: 9945 * svg/SVGPathSegCurvetoCubicRel.idl: 9946 * svg/SVGPathSegCurvetoCubicSmooth.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 9947 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs): 9948 (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel): 9949 * svg/SVGPathSegCurvetoCubicSmooth.h: 9950 (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth): 9951 (WebCore::SVGPathSegCurvetoCubicSmooth::setX): 9952 (WebCore::SVGPathSegCurvetoCubicSmooth::x): 9953 (WebCore::SVGPathSegCurvetoCubicSmooth::setY): 9954 (WebCore::SVGPathSegCurvetoCubicSmooth::y): 9955 (WebCore::SVGPathSegCurvetoCubicSmooth::setX2): 9956 (WebCore::SVGPathSegCurvetoCubicSmooth::x2): 9957 (WebCore::SVGPathSegCurvetoCubicSmooth::setY2): 9958 (WebCore::SVGPathSegCurvetoCubicSmooth::y2): 9959 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create): 9960 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType): 9961 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter): 9962 (WebCore::SVGPathSegCurvetoCubicSmoothRel::create): 9963 (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType): 9964 (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter): 9965 * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: 9966 * svg/SVGPathSegCurvetoCubicSmoothRel.idl: 9967 * svg/SVGPathSegCurvetoQuadratic.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 9968 (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs): 9969 (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel): 9970 * svg/SVGPathSegCurvetoQuadratic.h: 9971 (WebCore::SVGPathSegCurvetoQuadratic::SVGPathSegCurvetoQuadratic): 9972 (WebCore::SVGPathSegCurvetoQuadratic::setX): 9973 (WebCore::SVGPathSegCurvetoQuadratic::x): 9974 (WebCore::SVGPathSegCurvetoQuadratic::setY): 9975 (WebCore::SVGPathSegCurvetoQuadratic::y): 9976 (WebCore::SVGPathSegCurvetoQuadratic::setX1): 9977 (WebCore::SVGPathSegCurvetoQuadratic::x1): 9978 (WebCore::SVGPathSegCurvetoQuadratic::setY1): 9979 (WebCore::SVGPathSegCurvetoQuadratic::y1): 9980 (WebCore::SVGPathSegCurvetoQuadraticAbs::create): 9981 (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType): 9982 (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter): 9983 (WebCore::SVGPathSegCurvetoQuadraticRel::create): 9984 (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType): 9985 (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter): 9986 * svg/SVGPathSegCurvetoQuadraticAbs.idl: 9987 * svg/SVGPathSegCurvetoQuadraticRel.idl: 9988 * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 9989 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs): 9990 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel): 9991 * svg/SVGPathSegCurvetoQuadraticSmooth.h: 9992 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create): 9993 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegType): 9994 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter): 9995 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create): 9996 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegType): 9997 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter): 9998 * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: 9999 * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: 10000 * svg/SVGPathSegLineto.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 10001 (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs): 10002 (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel): 10003 * svg/SVGPathSegLineto.h: 10004 (WebCore::SVGPathSegLinetoAbs::create): 10005 (WebCore::SVGPathSegLinetoAbs::pathSegType): 10006 (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter): 10007 (WebCore::SVGPathSegLinetoRel::create): 10008 (WebCore::SVGPathSegLinetoRel::pathSegType): 10009 (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter): 10010 * svg/SVGPathSegLinetoAbs.idl: 10011 * svg/SVGPathSegLinetoHorizontal.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 10012 (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs): 10013 (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel): 10014 * svg/SVGPathSegLinetoHorizontal.h: 10015 (WebCore::SVGPathSegLinetoHorizontal::SVGPathSegLinetoHorizontal): 10016 (WebCore::SVGPathSegLinetoHorizontal::setX): 10017 (WebCore::SVGPathSegLinetoHorizontal::x): 10018 (WebCore::SVGPathSegLinetoHorizontalAbs::create): 10019 (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegType): 10020 (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter): 10021 (WebCore::SVGPathSegLinetoHorizontalRel::create): 10022 (WebCore::SVGPathSegLinetoHorizontalRel::pathSegType): 10023 (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter): 10024 * svg/SVGPathSegLinetoHorizontalAbs.idl: 10025 * svg/SVGPathSegLinetoHorizontalRel.idl: 10026 * svg/SVGPathSegLinetoRel.idl: 10027 * svg/SVGPathSegLinetoVertical.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 10028 (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs): 10029 (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel): 10030 * svg/SVGPathSegLinetoVertical.h: 10031 (WebCore::SVGPathSegLinetoVertical::SVGPathSegLinetoVertical): 10032 (WebCore::SVGPathSegLinetoVertical::setY): 10033 (WebCore::SVGPathSegLinetoVertical::y): 10034 (WebCore::SVGPathSegLinetoVerticalAbs::create): 10035 (WebCore::SVGPathSegLinetoVerticalAbs::pathSegType): 10036 (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter): 10037 (WebCore::SVGPathSegLinetoVerticalRel::create): 10038 (WebCore::SVGPathSegLinetoVerticalRel::pathSegType): 10039 (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter): 10040 * svg/SVGPathSegLinetoVerticalAbs.idl: 10041 * svg/SVGPathSegLinetoVerticalRel.idl: 10042 * svg/SVGPathSegList.cpp: 10043 (WebCore::SVGPathSegList::SVGPathSegList): 10044 * svg/SVGPathSegList.h: 10045 (WebCore::SVGPathSegList::create): 10046 * svg/SVGPathSegList.idl: 10047 * svg/SVGPathSegListBuilder.cpp: 10048 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder): 10049 (WebCore::SVGPathSegListBuilder::moveTo): 10050 (WebCore::SVGPathSegListBuilder::lineTo): 10051 (WebCore::SVGPathSegListBuilder::lineToHorizontal): 10052 (WebCore::SVGPathSegListBuilder::lineToVertical): 10053 (WebCore::SVGPathSegListBuilder::curveToCubic): 10054 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth): 10055 (WebCore::SVGPathSegListBuilder::curveToQuadratic): 10056 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth): 10057 (WebCore::SVGPathSegListBuilder::arcTo): 10058 (WebCore::SVGPathSegListBuilder::closePath): 10059 * svg/SVGPathSegListBuilder.h: 10060 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList): 10061 (WebCore::SVGPathSegListBuilder::cleanup): 10062 * svg/SVGPathSegListSource.cpp: 10063 (WebCore::SVGPathSegListSource::SVGPathSegListSource): 10064 (WebCore::SVGPathSegListSource::parseSVGSegmentType): 10065 (WebCore::SVGPathSegListSource::nextCommand): 10066 (WebCore::SVGPathSegListSource::parseMoveToSegment): 10067 (WebCore::SVGPathSegListSource::parseLineToSegment): 10068 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment): 10069 * svg/SVGPathSegListSource.h: 10070 (WebCore::SVGPathSegListSource::create): 10071 * svg/SVGPathSegMoveto.cpp: Copied from WebCore/svg/SVGPathSegClosePath.h. 10072 (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs): 10073 (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel): 10074 * svg/SVGPathSegMoveto.h: 10075 (WebCore::SVGPathSegMovetoAbs::create): 10076 (WebCore::SVGPathSegMovetoAbs::pathSegType): 10077 (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter): 10078 (WebCore::SVGPathSegMovetoRel::create): 10079 (WebCore::SVGPathSegMovetoRel::pathSegType): 10080 (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter): 10081 * svg/SVGPathSegMovetoAbs.idl: 10082 * svg/SVGPathSegMovetoRel.idl: 10083 * svg/SVGPathSegWithContext.h: Removed. 10084 * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Removed. 10085 * svg/properties/SVGPathSegListPropertyTearOff.cpp: Removed. 10086 * svg/properties/SVGPathSegListPropertyTearOff.h: Removed. 10087 10088 2010-11-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 10089 10090 Unreviewed, rolling out r72292. 10091 http://trac.webkit.org/changeset/72292 10092 https://bugs.webkit.org/show_bug.cgi?id=49732 10093 10094 will break win build (Requested by loislo on #webkit). 10095 10096 * inspector/CodeGeneratorInspector.pm: 10097 10098 2010-11-18 Ilya Tikhonovsky <loislo (a] chromium.org> 10099 10100 Reviewed by Yury Semikhatsky. 10101 10102 Web Inspector: reduce the footprint of InspectorBackendDispatcher. 10103 InspectorBackendDispatcher is a generated file. 10104 Its content is not optimal and loc may be reduced by a quarter. 10105 In each generated function we have a code for getting 'in' values from 10106 the arguments properties object. I've extracted this code into separate getters. 10107 The side effect is better readability of the generated code. 10108 10109 https://bugs.webkit.org/show_bug.cgi?id=49729 10110 10111 * inspector/CodeGeneratorInspector.pm: 10112 10113 2010-11-18 Alexander Pavlov <apavlov (a] chromium.org> 10114 10115 Reviewed by Pavel Feldman. 10116 10117 [v8] fast/css/getFloatValueForUnit.html fails since http://trac.webkit.org/changeset/72189 10118 https://bugs.webkit.org/show_bug.cgi?id=49656 10119 10120 Explicitly specify indexerType for the generation of V8WebKitCSSTransformValue binding. 10121 10122 * bindings/scripts/CodeGeneratorV8.pm: 10123 10124 2010-11-18 Nikolas Zimmermann <nzimmermann (a] rim.com> 10125 10126 Reviewed by Dirk Schulze. 10127 10128 Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept 10129 https://bugs.webkit.org/show_bug.cgi?id=49580 10130 10131 SVGPathElement.cloneNode loses generated pathSegList 10132 https://bugs.webkit.org/show_bug.cgi?id=43388 10133 10134 SVG Path elements are not correctly updated through pathSegList manipulation on relative values 10135 https://bugs.webkit.org/show_bug.cgi?id=30219 10136 10137 Changing an SVGPathSeg does not update a following Smooth Cubic Curveto 10138 https://bugs.webkit.org/show_bug.cgi?id=19741 10139 10140 SVGPathElement should only build SVGPathSeg* list on demand 10141 https://bugs.webkit.org/show_bug.cgi?id=10827 10142 10143 Tests: svg/W3C-SVG-1.1-SE/paths-dom-02-f.svg 10144 svg/dom/SVGPathSegList-appendItem.xhtml 10145 svg/dom/SVGPathSegList-clear-and-initialize.xhtml 10146 svg/dom/SVGPathSegList-cloning.html 10147 svg/dom/SVGPathSegList-insertItemBefore.xhtml 10148 svg/dom/SVGPathSegList-removeItem.xhtml 10149 svg/dom/SVGPathSegList-replaceItem.xhtml 10150 svg/dom/SVGPathSegList-xml-dom-synchronization.xhtml 10151 svg/dom/SVGPathSegList-xml-dom-synchronization2.xhtml 10152 svg/dom/SVGPathSegList-segment-modification.svg 10153 10154 Convert SVGPathSeg*/SVGPathSegList to the new SVG(Animated)PropertyTearOff concept. 10155 Unlike all other SVG* types that use the SVGPropertyTearOff concept, SVGPathSegs are already refcounted, 10156 and don't need to be wrapped in SVGPropertyTearOff objects. The consequence is that SVGPathSegs need to track 10157 themselves to which list and path element they belong. Introduce new SVGAnimatedPathSegListPropertyTearOff 10158 and SVGPathSegListPropertyTearOff classes, that encapsulate the special needed for SVGPathSegList. 10159 10160 Each SVGPathSeg now needs to store a RefPtr<SVGPathElement> - this makes it impossible to use SVGPathSegList 10161 to represent the 'd' attribute internally in SVGPathElement. SVGPathSegList is now only used in the SVG DOM bindings 10162 if someone explicitely requests 'pathElement.pathSegList' (eg. via JS). Switch to use SVGPathByteStream to store 10163 the 'd' attribute data in SVGPathElement, which is much more compact, and less memory intensive. 10164 Dirk already prepared SVGPathParserFactory some months ago, which allows easy conversion between 10165 String/Path/SVGPathSegList/SVGPathByteStream in all directions, including normalizing the lists, when requested. 10166 10167 As consequence SVGPathSegList is now only built on demand, when explicitely requested. Using the SVGAnimatedProperty 10168 concept gives us 'd' attribute <-> SVGPathSegList synchronization for free, fixing several bugs, listed above. 10169 10170 * Android.mk: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 10171 * CMakeLists.txt: Ditto. 10172 * DerivedSources.make: Remove SVGAnimatedPathData IDL generation. 10173 * GNUmakefile.am: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 10174 * WebCore.gyp/WebCore.gyp: Remove SVGAnimatedPathData IDL generation. 10175 * WebCore.gypi: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp from build. 10176 * WebCore.order: Remove no-longer existant SVGAnimatedPathData symbols. 10177 * WebCore.pro: Remove obsolete SVGPathSeg*.cpp files and SVGAnimatedPathData.cpp / JSSVGPathSegCustom.* from build. 10178 * WebCore.vcproj/WebCore.vcproj: Ditto. 10179 * WebCore.xcodeproj/project.pbxproj: Ditto. 10180 * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGPathSegCustom.cpp from build. 10181 * bindings/js/JSDOMBinding.cpp: Adapt to toJS() changes, remove context parameter. 10182 (WebCore::setDOMException): 10183 * bindings/js/JSDOMBinding.h: Remove obsolete CREATE_SVG_OBJECT_WRAPPER macro, the context parameter is not existant anymore. 10184 * bindings/js/JSSVGPathSegCustom.cpp: Replace CREATE_SVG_OBJECT_WRAPPER by CREATE_DOM_OBJECT_WRAPPER. Remove context parameter/handling. 10185 (WebCore::toJS): 10186 * bindings/js/JSSVGPathSegListCustom.cpp: Removed. 10187 * bindings/scripts/CodeGenerator.pm: Map 'SVGPathSegList' IDL type to SVG 'SVGPathSegListPropertyTearOff' native type. 10188 * bindings/scripts/CodeGeneratorJS.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. Handle SVGPathSegListPropertyTearOff. 10189 * bindings/scripts/CodeGeneratorObjC.pm: Handle SVGPathSegListPropertyTearOff. 10190 * bindings/scripts/CodeGeneratorV8.pm: Remove IsSVGTypeNeedingContextParameter() methods and usages. 10191 * rendering/SVGRenderTreeAsText.cpp: Build path string from byte stream, not path segment list. 10192 (WebCore::operator<<): 10193 * svg/SVGAllInOne.cpp: Remove obsolete cpp files. 10194 * svg/SVGAnimatedPathData.cpp: Removed. 10195 * svg/SVGAnimatedPathData.h: Removed. 10196 * svg/SVGAnimatedPathData.idl: Removed. 10197 * svg/SVGPathElement.cpp: Build SVGPathList on demand. Use SVGPathByteStream to parse/store the 'd' attribute content. 10198 (WebCore::SVGPathElement::SVGPathElement): 10199 (WebCore::SVGPathElement::getPathSegAtLength): Use SVGPathByteStream, not SVGPathSegList to determine the getPathSegAtLength() information. 10200 (WebCore::SVGPathElement::createSVGPathSegClosePath): Pass SVGPathElement to SVGPathSeg and a SVGPathSegRole parameter and store it to track the list origin. 10201 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): Ditto. 10202 (WebCore::SVGPathElement::createSVGPathSegMovetoRel): Ditto. 10203 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): Ditto. 10204 (WebCore::SVGPathElement::createSVGPathSegLinetoRel): Ditto. 10205 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): Ditto. 10206 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): Ditto. 10207 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): Ditto. 10208 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): Ditto. 10209 (WebCore::SVGPathElement::createSVGPathSegArcAbs): Ditto. 10210 (WebCore::SVGPathElement::createSVGPathSegArcRel): Ditto. 10211 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): Ditto. 10212 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): Ditto. 10213 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): Ditto. 10214 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): Ditto. 10215 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): Ditto. 10216 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): Ditto. 10217 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): Ditto. 10218 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): Ditto. 10219 (WebCore::SVGPathElement::parseMappedAttribute): Build SVGPathByteStream from 'd' attribute, not a SVGPathSegList. 10220 (WebCore::SVGPathElement::svgAttributeChanged): If a SVGPathSegList object has been built, synchronize it with the 'd' attribute. 10221 (WebCore::SVGPathElement::synchronizeProperty): Synchronize 'd' attribute with the SVGPathSegList, if needed. 10222 (WebCore::SVGPathElement::synchronizeD): Added. 10223 (WebCore::SVGPathElement::pathSegList): Use same trick as in SVGPolyElement to expose the 'pathSegList' / 'animatedPathSegList' object to the SVG DOM bindings. 10224 (WebCore::SVGPathElement::normalizedPathSegList): Ditto. 10225 (WebCore::SVGPathElement::animatedPathSegList): Ditto. 10226 (WebCore::SVGPathElement::animatedNormalizedPathSegList): Ditto. 10227 (WebCore::SVGPathElement::toPathData): Build 'Path' object from SVGPathByteStream, not from SVGPathSegList. 10228 (WebCore::SVGPathElement::pathSegListChanged): Used to synchronize the SVGPathSegLists and the d attribute, as well as any changes from any SVGPathSeg associated with this SVGPathElement. 10229 * svg/SVGPathElement.h: Add new accessors... 10230 (WebCore::SVGPathElement::pathByteStream): ... needed by SVGRenderTreeAsText. 10231 (WebCore::SVGPathElement::animatablePathSegList): ... needed by SVGPathSegListPropertyTearOff. 10232 * svg/SVGPathElement.idl: Merge SVGAnimatedPathData interface into SVGPathElement. 10233 * svg/SVGPathParserFactory.cpp: Cleanup SVGPathParserFactory, remove obsolete methods, now that SVGPathElement switched to using SVGPathByteStream internally. 10234 (WebCore::globalSVGPathSegListBuilder): 10235 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList): 10236 (WebCore::SVGPathParserFactory::buildPathFromByteStream): 10237 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 10238 (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList): 10239 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString): 10240 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): 10241 (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathByteStream): 10242 * svg/SVGPathParserFactory.h: 10243 * svg/SVGPathSeg.cpp: Removed. 10244 * svg/SVGPathSeg.h: Add new SVGPathSegRole enum, identifying to which list a path segment belongs. 10245 (WebCore::SVGPathSeg::SVGPathSeg): 10246 * svg/SVGPathSeg.idl: Reindented. 10247 * svg/SVGPathSegArc.cpp: Removed. 10248 * svg/SVGPathSegArc.h: All setters now call the commitChange() method. 10249 * svg/SVGPathSegArcAbs.idl: Enable StrictTypeChecking. 10250 * svg/SVGPathSegArcRel.idl: Ditto. 10251 * svg/SVGPathSegClosePath.cpp: Removed. 10252 * svg/SVGPathSegClosePath.h: 10253 * svg/SVGPathSegCurvetoCubic.cpp: Removed. 10254 * svg/SVGPathSegCurvetoCubic.h: All setters now call the commitChange() method. 10255 * svg/SVGPathSegCurvetoCubicAbs.idl: Enable StrictTypeChecking. 10256 * svg/SVGPathSegCurvetoCubicRel.idl: Ditto. 10257 * svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed. 10258 * svg/SVGPathSegCurvetoCubicSmooth.h: All setters now call the commitChange() method. 10259 * svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Enable StrictTypeChecking. 10260 * svg/SVGPathSegCurvetoCubicSmoothRel.idl: Ditto. 10261 * svg/SVGPathSegCurvetoQuadratic.cpp: Removed. 10262 * svg/SVGPathSegCurvetoQuadratic.h: All setters now call the commitChange() method. 10263 * svg/SVGPathSegCurvetoQuadraticAbs.idl: Enable StrictTypeChecking. 10264 * svg/SVGPathSegCurvetoQuadraticRel.idl: Ditto. 10265 * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed. 10266 * svg/SVGPathSegCurvetoQuadraticSmooth.h: All setters now call the commitChange() method. 10267 * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Enable StrictTypeChecking. 10268 * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Ditto. 10269 * svg/SVGPathSegLineto.cpp: Removed. 10270 * svg/SVGPathSegLineto.h: All setters now call the commitChange() method. 10271 * svg/SVGPathSegLinetoAbs.idl: Enable StrictTypeChecking. 10272 * svg/SVGPathSegLinetoHorizontal.cpp: Removed. 10273 * svg/SVGPathSegLinetoHorizontal.h: All setters now call the commitChange() method. 10274 * svg/SVGPathSegLinetoHorizontalAbs.idl: Enable StrictTypeChecking. 10275 * svg/SVGPathSegLinetoHorizontalRel.idl: Ditto. 10276 * svg/SVGPathSegLinetoRel.idl: Enable StrictTypeChecking. 10277 * svg/SVGPathSegLinetoVertical.cpp: Removed. 10278 * svg/SVGPathSegLinetoVertical.h: All setters now call the commitChange() method. 10279 * svg/SVGPathSegLinetoVerticalAbs.idl: Enable StrictTypeChecking. 10280 * svg/SVGPathSegLinetoVerticalRel.idl: Ditto. 10281 * svg/SVGPathSegList.cpp: Switch from SVGList<RefPtr<SVGPathSeg> > to a plain Vector<RefPtr<SVGPathSeg> >. 10282 (WebCore::SVGPathSegList::valueAsString): Utilize SVGPathParserFactory to build a String from a SVGPathSegList. 10283 (WebCore::SVGPathSegList::commitChange): Call SVGPathElement::pathSegListChanged(). 10284 * svg/SVGPathSegList.h: 10285 (WebCore::SVGPathSegList::SVGPathSegList): 10286 * svg/SVGPathSegList.idl: Remove [JSCCustom] flags, no longer needed. 10287 * svg/SVGPathSegListBuilder.cpp: Adapt to SVGPathSegList API changes. 10288 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder): 10289 (WebCore::SVGPathSegListBuilder::moveTo): 10290 (WebCore::SVGPathSegListBuilder::lineTo): 10291 (WebCore::SVGPathSegListBuilder::lineToHorizontal): 10292 (WebCore::SVGPathSegListBuilder::lineToVertical): 10293 (WebCore::SVGPathSegListBuilder::curveToCubic): 10294 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth): 10295 (WebCore::SVGPathSegListBuilder::curveToQuadratic): 10296 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth): 10297 (WebCore::SVGPathSegListBuilder::arcTo): 10298 (WebCore::SVGPathSegListBuilder::closePath): 10299 * svg/SVGPathSegListBuilder.h: Ditto. 10300 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathElement): 10301 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList): 10302 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegRole): 10303 (WebCore::SVGPathSegListBuilder::cleanup): 10304 * svg/SVGPathSegListSource.cpp: Ditto. 10305 (WebCore::SVGPathSegListSource::SVGPathSegListSource): 10306 (WebCore::SVGPathSegListSource::parseSVGSegmentType): 10307 (WebCore::SVGPathSegListSource::nextCommand): 10308 (WebCore::SVGPathSegListSource::parseMoveToSegment): 10309 (WebCore::SVGPathSegListSource::parseLineToSegment): 10310 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment): 10311 * svg/SVGPathSegListSource.h: Ditto. 10312 (WebCore::SVGPathSegListSource::create): 10313 * svg/SVGPathSegMoveto.cpp: Removed. 10314 * svg/SVGPathSegMoveto.h: All setters now call the commitChange() method. 10315 * svg/SVGPathSegMovetoAbs.idl: Enable StrictTypeChecking. 10316 * svg/SVGPathSegMovetoRel.idl: Ditto. 10317 * svg/SVGPathSegWithContext.h: Added. This is the new base class for all SVGPathSeg derived types, that's associated with a SVGPathElement and a 'role' (normalized/unaltered segment list). 10318 (WebCore::SVGPathSegWithContext::SVGPathSegWithContext): 10319 (WebCore::SVGPathSegWithContext::animatedProperty): 10320 (WebCore::SVGPathSegWithContext::setContextAndRole): 10321 (WebCore::SVGPathSegWithContext::commitChange): 10322 (WebCore::SVGPathSegSingleCoordinate::x): 10323 (WebCore::SVGPathSegSingleCoordinate::setX): 10324 (WebCore::SVGPathSegSingleCoordinate::y): 10325 (WebCore::SVGPathSegSingleCoordinate::setY): 10326 (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate): 10327 * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h: Added. 10328 (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal): 10329 (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal): 10330 (WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList): 10331 (WebCore::SVGAnimatedPathSegListPropertyTearOff::create): 10332 (WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff): 10333 * svg/properties/SVGPathSegListPropertyTearOff.cpp: Added. 10334 (WebCore::SVGPathSegListPropertyTearOff::clear): Added in the cpp file, not in the header, as it needs access to SVGPathSegWithContext, which we can't include from the header. 10335 (WebCore::SVGPathSegListPropertyTearOff::getItem): Ditto. 10336 (WebCore::SVGPathSegListPropertyTearOff::removeItem): Ditto. 10337 (WebCore::SVGPathSegListPropertyTearOff::contextElement): Needs access to SVGPathElement, that's why it lives in the cpp file. 10338 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemValue): Needs access to SVGPathSegWithContext. 10339 * svg/properties/SVGPathSegListPropertyTearOff.h: Added. 10340 (WebCore::SVGPathSegListPropertyTearOff::create): 10341 (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList): 10342 (WebCore::SVGPathSegListPropertyTearOff::numberOfItems): 10343 (WebCore::SVGPathSegListPropertyTearOff::initialize): 10344 (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore): 10345 (WebCore::SVGPathSegListPropertyTearOff::replaceItem): 10346 (WebCore::SVGPathSegListPropertyTearOff::appendItem): 10347 (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff): 10348 (WebCore::SVGPathSegListPropertyTearOff::commitChange): 10349 (WebCore::SVGPathSegListPropertyTearOff::processIncomingListItemWrapper): 10350 10351 2010-11-18 Mario Sanchez Prada <msanchez (a] igalia.com> 10352 10353 Reviewed by Martin Robinson. 10354 10355 [Gtk] atk_text_get_selection returns the wrong offsets after a link 10356 https://bugs.webkit.org/show_bug.cgi?id=49514 10357 10358 Consider possible embedded objects to calculate startOffset. 10359 10360 So far we were using offsetInContainerNode() to calculate the 10361 value of startOffset when checking the offsets for the current 10362 selection, which was wrong because that wouldn't work ok if any 10363 embedded object was present in the paragraph before the 10364 selection. Thus, we need to consider this fact when calculating 10365 the startOffset from the point of view of the object this function 10366 is called on, in order to return the right and actual values. 10367 10368 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 10369 (getSelectionOffsetsForObject): Check range length from the first 10370 position in the object the function is called on until the first 10371 position of current selection, and use it as startOffset. 10372 10373 2010-11-12 Stephen White <senorblanco (a] chromium.org> 10374 10375 Reviewed by Simon Fraser. 10376 10377 Fix for multiple urls in a background-image causing repeated repaints. 10378 https://bugs.webkit.org/show_bug.cgi?id=42390 10379 10380 Change the key of RenderBoxModelObject's LastPaintSizeMap to include 10381 the layer of the element being drawn, so that the same URL used 10382 repeated in the same background-image, or another element's 10383 background-image, can be uniquely identified. The layer is a void 10384 pointer, since it is only used as part of the key and using a 10385 void pointer will discourage dereferencing it. This pointer is NULL 10386 when called from RenderImage (<img> elements). 10387 10388 Covered by fast/backgrounds/size/contain-and-cover.html 10389 10390 * rendering/RenderBoxModelObject.cpp: 10391 (WebCore::ImageQualityController::keyDestroyed): 10392 The old objectDestroyed() is renamed to keyDestroyed(). 10393 (WebCore::ImageQualityController::objectDestroyed): 10394 The new objectDestroyed() iterates over all outstanding resizes 10395 to remove any resizes pertaining to this object. 10396 (WebCore::ImageQualityController::highQualityRepaintTimerFired): 10397 Retrieve the RenderBoxModelObject from the pair's "first" member. 10398 (WebCore::ImageQualityController::shouldPaintAtLowQuality): 10399 Create a key from the {object, layer} pair, and use it to access 10400 the repaint size map. 10401 (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality): 10402 Plumb the layer through to the image quality controller. 10403 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 10404 Pass the bgLayer when checking 10405 * rendering/RenderBoxModelObject.h: 10406 Add the void* layer parameter to shouldPaintAtLowQuality. 10407 * rendering/RenderImage.cpp: 10408 (WebCore::RenderImage::paintIntoRect): 10409 Pass 0 (null) for the layer parameter in this case. 10410 10411 2010-11-18 Chris Rogers <crogers (a] google.com> 10412 10413 Reviewed by Dimitri Glazkov. 10414 10415 Add loadPlatformAudioResource() and decodeAudioFileData() to ChromiumBridge 10416 https://bugs.webkit.org/show_bug.cgi?id=49557 10417 10418 No new tests since audio API is not yet implemented. 10419 10420 * platform/chromium/ChromiumBridge.h: 10421 10422 2010-11-17 Sheriff Bot <webkit.review.bot (a] gmail.com> 10423 10424 Unreviewed, rolling out r72228. 10425 http://trac.webkit.org/changeset/72228 10426 https://bugs.webkit.org/show_bug.cgi?id=49712 10427 10428 Caused many >10 regressions on Win and Linux gpu layout test 10429 runs. (Requested by dave_levin on #webkit). 10430 10431 * html/canvas/WebGLFramebuffer.cpp: 10432 (WebCore::WebGLFramebuffer::onAccess): 10433 (WebCore::WebGLFramebuffer::initializeRenderbuffers): 10434 * html/canvas/WebGLFramebuffer.h: 10435 * html/canvas/WebGLRenderingContext.cpp: 10436 (WebCore::WebGLRenderingContext::clear): 10437 (WebCore::WebGLRenderingContext::copyTexImage2D): 10438 (WebCore::WebGLRenderingContext::copyTexSubImage2D): 10439 (WebCore::WebGLRenderingContext::drawArrays): 10440 (WebCore::WebGLRenderingContext::drawElements): 10441 (WebCore::WebGLRenderingContext::readPixels): 10442 (WebCore::WebGLRenderingContext::texImage2DBase): 10443 10444 2010-11-17 Sheriff Bot <webkit.review.bot (a] gmail.com> 10445 10446 Unreviewed, rolling out r72243. 10447 http://trac.webkit.org/changeset/72243 10448 https://bugs.webkit.org/show_bug.cgi?id=49710 10449 10450 Seemed to cause a large set of Chromium layout test to start 10451 failing. (Requested by dave_levin on #webkit). 10452 10453 * bindings/v8/V8NPUtils.cpp: 10454 (WebCore::convertV8ObjectToNPVariant): 10455 10456 2010-11-17 Adam Roben <aroben (a] apple.com> 10457 10458 Fix Acid3 in Safari for Windows 10459 10460 Reviewed by Dave Hyatt. 10461 10462 * platform/graphics/win/SimpleFontDataWin.cpp: 10463 (WebCore::SimpleFontData::initGDIFont): Initialize all our metrics to 0 10464 if we have a font size of 0. 10465 10466 2010-11-17 Dimitri Glazkov <dglazkov (a] chromium.org> 10467 10468 Reviewed by Darin Adler. 10469 10470 Converge means of querying a parent node into one way, which is Node::parentNode. 10471 https://bugs.webkit.org/show_bug.cgi?id=49686 10472 10473 No change in behavior, so no new tests. 10474 10475 * accessibility/AccessibilityObject.cpp: 10476 (WebCore::renderListItemContainerForNode): Changed to use parentNode. 10477 * accessibility/AccessibilityRenderObject.cpp: 10478 (WebCore::AccessibilityRenderObject::mouseButtonListener): Ditto. 10479 (WebCore::siblingWithAriaRole): Ditto. 10480 (WebCore::AccessibilityRenderObject::getDocumentLinks): Ditto. 10481 (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest): Ditto. 10482 * accessibility/mac/AccessibilityObjectWrapper.mm: Ditto. 10483 (blockquoteLevel): Ditto. 10484 * bindings/v8/V8GCController.cpp: 10485 (WebCore::ObjectGrouperVisitor::visitDOMWrapper): Ditto. 10486 * dom/ContainerNode.cpp: Ditto. 10487 (WebCore::ContainerNode::insertBefore): Ditto. 10488 (WebCore::ContainerNode::insertBeforeCommon): Ditto. 10489 (WebCore::ContainerNode::replaceChild): Ditto. 10490 (WebCore::ContainerNode::removeChild): Ditto. 10491 (WebCore::ContainerNode::appendChild): Ditto. 10492 (WebCore::ContainerNode::parserAddChild): Ditto. 10493 * dom/DocumentType.cpp: 10494 (WebCore::DocumentType::insertedIntoDocument): Ditto. 10495 * dom/Element.cpp: 10496 (WebCore::Element::computeInheritedLanguage): Ditto. 10497 * dom/MouseRelatedEvent.cpp: 10498 (WebCore::MouseRelatedEvent::receivedTarget): Ditto. 10499 * dom/Position.cpp: 10500 (WebCore::Position::isCandidate): Changed to use parentNode. 10501 * dom/PositionIterator.cpp: 10502 (WebCore::PositionIterator::isCandidate): Ditto. 10503 * editing/AppendNodeCommand.cpp: 10504 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto. 10505 * editing/ApplyStyleCommand.cpp: 10506 (WebCore::dummySpanAncestorForNode): Ditto. 10507 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Ditto. 10508 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Ditto. 10509 (WebCore::highestEmbeddingAncestor): Ditto. 10510 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto. 10511 (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical): Ditto. 10512 (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical): Ditto. 10513 * editing/CompositeEditCommand.cpp: 10514 (WebCore::CompositeEditCommand::splitTreeToNode): Ditto. 10515 * editing/DeleteSelectionCommand.cpp: 10516 (WebCore::updatePositionForNodeRemoval): Ditto. 10517 * editing/Editor.cpp: 10518 (WebCore::Editor::textDirectionForSelection): Ditto. 10519 * editing/MergeIdenticalElementsCommand.cpp: 10520 (WebCore::MergeIdenticalElementsCommand::doUnapply): Ditto. 10521 * editing/htmlediting.cpp: 10522 (WebCore::isEmptyTableCell): Ditto. 10523 * editing/markup.cpp: 10524 (WebCore::StyledMarkupAccumulator::serializeNodes): Ditto. 10525 * editing/visible_units.cpp: 10526 (WebCore::previousLinePosition): Ditto. 10527 (WebCore::nextLinePosition): Ditto. 10528 * html/HTMLAreaElement.cpp: 10529 (WebCore::HTMLAreaElement::imageElement): Ditto. 10530 * html/HTMLElement.cpp: 10531 (WebCore::HTMLElement::setOuterHTML): Ditto. 10532 (WebCore::HTMLElement::insertAdjacent): Ditto. 10533 (WebCore::HTMLElement::supportsFocus): Ditto. 10534 * html/HTMLEmbedElement.cpp: 10535 (WebCore::HTMLEmbedElement::insertedIntoDocument): Ditto. 10536 (WebCore::HTMLEmbedElement::attributeChanged): Ditto. 10537 * html/HTMLTableElement.cpp: 10538 (WebCore::HTMLTableElement::insertRow): Ditto. 10539 * html/HTMLTableRowsCollection.cpp: Ditto. 10540 (WebCore::isInHead): Ditto. 10541 (WebCore::isInBody): Ditto. 10542 (WebCore::isInFoot): Ditto. 10543 (WebCore::HTMLTableRowsCollection::rowAfter): Ditto. 10544 * html/HTMLViewSourceDocument.cpp: 10545 (WebCore::HTMLViewSourceDocument::addRange): Ditto. 10546 * html/MediaDocument.cpp: 10547 (WebCore::MediaDocument::replaceMediaElementTimerFired): Ditto. 10548 * html/parser/HTMLConstructionSite.cpp: 10549 (WebCore::HTMLConstructionSite::attach): Ditto. 10550 (WebCore::HTMLConstructionSite::findFosterSite): Ditto. 10551 * html/parser/HTMLTreeBuilder.cpp: 10552 * page/FocusController.cpp: 10553 (WebCore::FocusController::findFocusableNodeInDirection): Ditto. 10554 * rendering/MediaControlElements.cpp: 10555 (WebCore::MediaControlElement::rendererIsNeeded): Ditto. 10556 (WebCore::MediaControlElement::attach): Ditto. 10557 (WebCore::MediaControlElement::updateStyle): Ditto. 10558 (WebCore::MediaControlInputElement::rendererIsNeeded): Ditto. 10559 (WebCore::MediaControlInputElement::attach): Ditto. 10560 (WebCore::MediaControlInputElement::updateStyle): Ditto. 10561 * rendering/RenderSVGGradientStop.cpp: 10562 (WebCore::RenderSVGGradientStop::gradientElement): Ditto. 10563 * svg/SVGAElement.cpp: 10564 (WebCore::SVGAElement::createRenderer): Ditto. 10565 (WebCore::SVGAElement::childShouldCreateRenderer): Ditto. 10566 * svg/SVGFELightElement.cpp: 10567 (WebCore::SVGFELightElement::svgAttributeChanged): Ditto. 10568 (WebCore::SVGFELightElement::childrenChanged): Ditto. 10569 * svg/SVGFEMergeNodeElement.cpp: 10570 (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): Ditto. 10571 * svg/SVGLength.cpp: 10572 (WebCore::SVGLength::determineViewport): Ditto. 10573 * svg/SVGStyledElement.cpp: 10574 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Ditto. 10575 * svg/SVGUseElement.cpp: 10576 (WebCore::SVGUseElement::removeDisallowedElementsFromSubtree): Ditto. 10577 * svg/animation/SVGSMILElement.cpp: 10578 (WebCore::SVGSMILElement::insertedIntoDocument): Ditto. 10579 * xml/XPathNodeSet.cpp: 10580 (WebCore::XPath::NodeSet::sort): Ditto. 10581 * xml/XPathStep.cpp: 10582 (WebCore::XPath::Step::nodesInAxis): Ditto. 10583 * xml/XSLTProcessorLibxslt.cpp: 10584 (WebCore::xsltStylesheetPointer): Ditto. 10585 10586 2010-11-17 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 10587 10588 Reviewed by Andreas Kling. 10589 10590 ScrollView: Don't translate by scrollX/scrollY or clip when paintsEntireContents() 10591 10592 This makes paint() with paintEntireContents() do exactly what it's supposed to: 10593 paint from 0,0 to contentsSize(). 10594 10595 The clipping was a no-op anyway since visibleContentRect() will return the whole 10596 rect in paintsEntireContents() mode. 10597 10598 * platform/ScrollView.cpp: 10599 (WebCore::ScrollView::paint): 10600 10601 2010-11-17 Kenneth Rohde Christansen <kenneth (a] webkit.org> 10602 10603 Reviewed by Andreas Kling. 10604 10605 ScrollView: Update the actualVisibleContentRect after delegating a scroll. 10606 10607 This lets us avoid updating the actualVisibleContentRect from the client 10608 after each scroll. We had to do this synchronously for WebKit2 to support 10609 programmatic "animated scrolling" from JS. 10610 10611 * platform/ScrollView.cpp: 10612 (WebCore::ScrollView::setScrollPosition): 10613 10614 2010-11-17 Andreas Kling <kling (a] webkit.org> 10615 10616 Reviewed by Kenneth Rohde Christiansen. 10617 10618 ScrollView: Decouple actualVisibleContentRect from visibleContentRect 10619 10620 Added actualVisibleContentRect() which will return the override provided 10621 by setActualVisibleContentRect() or fall back to visibleContentRect() 10622 if no override has been set. 10623 10624 This is similar to what the iPhone does. 10625 10626 * platform/ScrollView.cpp: 10627 (WebCore::ScrollView::visibleContentRect): 10628 * platform/ScrollView.h: 10629 (WebCore::ScrollView::actualVisibleContentRect): 10630 (WebCore::ScrollView::setActualVisibleContentRect): IntRect -> const IntRect& 10631 10632 2010-11-17 Tony Chang <tony (a] chromium.org> 10633 10634 Reviewed by Adam Barth. 10635 10636 [chromium] fix get-int-identifier-special-values.html using TestNetscapePlugIn 10637 https://bugs.webkit.org/show_bug.cgi?id=49036 10638 10639 No new tests: Covered by plugins/npruntime/get-int-identifier-special-values.html 10640 10641 In http://codereview.chromium.org/11574, the forked chromium test 10642 plugin changed how it testGetIntIdentifier to work around a change 10643 caused by a silverlight specific plugin fix: 10644 http://codereview.chromium.org/11569/diff/1/2 10645 10646 It's not clear to me that this change is needed anymore since 10647 silverlight has had multiple releases, testing without this patch 10648 works on a test windows build, and safari win seems to run silverlight 10649 without this either. Since there's no test for this behavior, I'm 10650 rolling it out so we can match the upstream test. 10651 10652 * bindings/v8/V8NPUtils.cpp: 10653 (WebCore::convertV8ObjectToNPVariant): 10654 10655 2010-11-17 Andreas Kling <kling (a] webkit.org> 10656 10657 Reviewed by Kenneth Rohde Christiansen. 10658 10659 ScrollView: Let visibleContentRect() return the contentsSize() if paintsEntireContents() 10660 10661 * platform/ScrollView.cpp: 10662 (WebCore::ScrollView::visibleContentRect): 10663 10664 2010-11-17 James Simonsen <simonjam (a] chromium.org> 10665 10666 Reviewed by Tony Chang. 10667 10668 [chromium] Fix negative letter spacing in complex text on linux 10669 https://bugs.webkit.org/show_bug.cgi?id=49563 10670 10671 Test: fast/text/atsui-negative-spacing-features.html 10672 10673 * platform/graphics/chromium/FontLinux.cpp: Make spacing signed. 10674 10675 2010-11-17 Andreas Kling <kling (a] webkit.org> 10676 10677 Reviewed by Kenneth Rohde Christiansen. 10678 10679 ScrollView: Avoid unnecessary work in setScrollPosition() when scrolling is delegated. 10680 10681 * platform/ScrollView.cpp: 10682 (WebCore::ScrollView::setScrollPosition): If delegatesScrolling(), we never use the 10683 newScrollPosition, so move that calculation below the delegation path. 10684 10685 2010-11-17 Dave Hyatt <hyatt (a] apple.com> 10686 10687 Reviewed by Sam Weinig. 10688 10689 https://bugs.webkit.org/show_bug.cgi?id=48537 10690 10691 Fonts with no vertical metrics should synthesize baselines when they appear 10692 on lines that do use fonts with vertical metrics. Basically we want to make 10693 sure that English text behaves like vertical-align:middle, i.e., its baseline 10694 should be treated as though it cuts through the middle of the ascent+descent. 10695 10696 The way this works is that each line in the line box tree is labeled as having 10697 a baseline type that is either ideographic or alphabetic for the purposes of 10698 vertical alignment. A line becomes ideographic if any font with vertical tables 10699 is either explicitly specified as the primary font or in any of the used fonts 10700 in the text on that line. 10701 10702 This baselineType is passed down to computeLogicalBoxHeights and placeBoxesInBlockDirection, 10703 and passed to the ascent and descent methods of the fonts that are examined. 10704 The underlying Font code selects an appropriate baseline given the type passed in. 10705 10706 This patch also rewrites vertical alignment to lop 4 bytes off all RenderInlines and 10707 to instead carry around the cached vertical positions for RenderInlines in a new 10708 VerticalPositionCache object. This cache only lives for a single layout 10709 operation, but it does cache information across all the lines built and placed during the 10710 layout. 10711 10712 This matches the old behavior, since every call to layoutInlineChildren invalidated 10713 all of the vertical positions in all of the RenderInlines anyway. 10714 10715 The VerticalPositionCache consists of two HashMaps, and it caches vertical alignment 10716 positions for both alphabetic and ideographic baseline types. 10717 10718 The vertical-align computation has now been moved out of RenderBoxModelObject and 10719 RenderInline and just placed right into verticalPositionForBox in InlineFlowBox. 10720 This function has been changed to no longer be recursive when checking parents, 10721 and it now relies on the fact that the parent vertical alignment computation result 10722 has already been stored in the logicalTop() of that parent's line box. By checking 10723 the line box logicalTop() value instead of recurring, the performance of first lines 10724 now significantly improves to no longer have O(n^2) behavior in the depth of the line 10725 box tree on the first line. 10726 10727 All of the baselinePosition functions on the various RenderObjects have been amended 10728 to take a FontBaseline as the first argument. This patch does not attempt to fix up 10729 MathML or form controls yet and just hardcodes AlphabeticBaselines for those renderers. 10730 10731 The RenderTableCell baselinePosition virtual method has been made non-virtual and had 10732 all arguments removed, since it actually had no real connection with the rest of the 10733 baseline positioning system. Cell baseline positioning works by calling firstLineBoxBaseline, 10734 and that method has been patched to use the cached baselineType for the first line box 10735 when computing the baseline of that line. 10736 10737 Added fast/blockflow/vertical-baseline-alignment.html and fast/blockflow/vertical-align-table-baseline.html. 10738 10739 * WebCore.xcodeproj/project.pbxproj: 10740 * mathml/RenderMathMLFraction.cpp: 10741 (WebCore::RenderMathMLFraction::baselinePosition): 10742 * mathml/RenderMathMLFraction.h: 10743 * mathml/RenderMathMLOperator.cpp: 10744 (WebCore::RenderMathMLOperator::baselinePosition): 10745 * mathml/RenderMathMLOperator.h: 10746 * mathml/RenderMathMLRow.cpp: 10747 (WebCore::RenderMathMLRow::baselinePosition): 10748 * mathml/RenderMathMLRow.h: 10749 * mathml/RenderMathMLSubSup.cpp: 10750 (WebCore::RenderMathMLSubSup::baselinePosition): 10751 * mathml/RenderMathMLSubSup.h: 10752 * mathml/RenderMathMLUnderOver.cpp: 10753 (WebCore::RenderMathMLUnderOver::layout): 10754 (WebCore::RenderMathMLUnderOver::baselinePosition): 10755 * mathml/RenderMathMLUnderOver.h: 10756 * platform/graphics/SimpleFontData.h: 10757 * rendering/InlineBox.h: 10758 (WebCore::InlineBox::baselinePosition): 10759 * rendering/InlineFlowBox.cpp: 10760 (WebCore::verticalPositionForBox): 10761 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 10762 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 10763 * rendering/InlineFlowBox.h: 10764 * rendering/InlineTextBox.cpp: 10765 (WebCore::InlineTextBox::baselinePosition): 10766 * rendering/InlineTextBox.h: 10767 * rendering/RenderBlock.cpp: 10768 (WebCore::RenderBlock::baselinePosition): 10769 (WebCore::RenderBlock::firstLineBoxBaseline): 10770 (WebCore::RenderBlock::lastLineBoxBaseline): 10771 * rendering/RenderBlock.h: 10772 * rendering/RenderBlockLineLayout.cpp: 10773 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): 10774 (WebCore::RenderBlock::layoutInlineChildren): 10775 * rendering/RenderBox.cpp: 10776 (WebCore::RenderBox::baselinePosition): 10777 * rendering/RenderBox.h: 10778 * rendering/RenderBoxModelObject.cpp: 10779 * rendering/RenderBoxModelObject.h: 10780 * rendering/RenderFileUploadControl.cpp: 10781 (WebCore::RenderFileUploadControl::paintObject): 10782 * rendering/RenderInline.cpp: 10783 (WebCore::RenderInline::RenderInline): 10784 (WebCore::RenderInline::baselinePosition): 10785 * rendering/RenderInline.h: 10786 * rendering/RenderListBox.cpp: 10787 (WebCore::RenderListBox::baselinePosition): 10788 * rendering/RenderListBox.h: 10789 * rendering/RenderListMarker.cpp: 10790 (WebCore::RenderListMarker::baselinePosition): 10791 * rendering/RenderListMarker.h: 10792 * rendering/RenderSlider.cpp: 10793 (WebCore::RenderSlider::baselinePosition): 10794 * rendering/RenderSlider.h: 10795 * rendering/RenderTableCell.cpp: 10796 (WebCore::RenderTableCell::baselinePosition): 10797 * rendering/RenderTableCell.h: 10798 * rendering/RenderTextControlMultiLine.cpp: 10799 (WebCore::RenderTextControlMultiLine::baselinePosition): 10800 * rendering/RenderTextControlMultiLine.h: 10801 * rendering/RootInlineBox.cpp: 10802 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 10803 * rendering/RootInlineBox.h: 10804 (WebCore::RootInlineBox::baselinePosition): 10805 * rendering/VerticalPositionCache.h: Added. 10806 (WebCore::VerticalPositionCache::VerticalPositionCache): 10807 (WebCore::VerticalPositionCache::get): 10808 (WebCore::VerticalPositionCache::set): 10809 * rendering/svg/SVGInlineTextBox.cpp: 10810 (WebCore::SVGInlineTextBox::calculateBoundaries): 10811 10812 2010-11-17 Sam Weinig <sam (a] webkit.org> 10813 10814 Reviewed by Anders Carlsson. 10815 10816 Add stubbed out ScrollAnimator for the Mac 10817 https://bugs.webkit.org/show_bug.cgi?id=49678 10818 10819 * WebCore.xcodeproj/project.pbxproj: 10820 Add ScrollAnimator.h/cpp. 10821 10822 * platform/mac/ScrollAnimatorMac.cpp: Added. 10823 (WebCore::ScrollAnimator::create): 10824 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac): 10825 (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac): 10826 (WebCore::ScrollAnimatorMac::scroll): 10827 (WebCore::ScrollAnimatorMac::setScrollPositionAndStopAnimation): 10828 * platform/mac/ScrollAnimatorMac.h: Added. 10829 ScrollAnimatorMac just calls through to the base class for now. 10830 10831 2010-11-17 Cris Neckar <cdn (a] chromium.org> 10832 10833 Reviewed by Adam Barth. 10834 10835 Modified codepath for object fallback content which has failed to load. 10836 Refactored CachedResource error handling to use more granular statuses instead of a boolean value. 10837 https://bugs.webkit.org/show_bug.cgi?id=46921 10838 10839 Test: fast/html/object-image-nested-fallback.html 10840 10841 * html/HTMLObjectElement.cpp: 10842 (WebCore::HTMLObjectElement::renderFallbackContent): 10843 * loader/cache/CachedCSSStyleSheet.cpp: 10844 (WebCore::CachedCSSStyleSheet::error): 10845 * loader/cache/CachedCSSStyleSheet.h: 10846 * loader/cache/CachedFont.cpp: 10847 (WebCore::CachedFont::ensureCustomFontData): 10848 (WebCore::CachedFont::error): 10849 * loader/cache/CachedFont.h: 10850 * loader/cache/CachedImage.cpp: 10851 (WebCore::CachedImage::data): 10852 (WebCore::CachedImage::error): 10853 * loader/cache/CachedImage.h: 10854 * loader/cache/CachedResource.cpp: 10855 (WebCore::CachedResource::CachedResource): 10856 (WebCore::CachedResource::canUseCacheValidator): 10857 (WebCore::CachedResource::mustRevalidate): 10858 * loader/cache/CachedResource.h: 10859 (WebCore::CachedResource::error): 10860 (WebCore::CachedResource::httpStatusCodeError): 10861 (WebCore::CachedResource::errorOccurred): 10862 * loader/cache/CachedScript.cpp: 10863 (WebCore::CachedScript::error): 10864 * loader/cache/CachedScript.h: 10865 * loader/cache/CachedXSLStyleSheet.cpp: 10866 (WebCore::CachedXSLStyleSheet::error): 10867 * loader/cache/CachedXSLStyleSheet.h: 10868 * loader/loader.cpp: 10869 (WebCore::Loader::load): 10870 (WebCore::Loader::didFinishLoading): 10871 (WebCore::Loader::didFail): 10872 (WebCore::Loader::didReceiveData): 10873 10874 2010-11-16 Zhenyao Mo <zmo (a] google.com> 10875 10876 Reviewed by Kenneth Russell. 10877 10878 WebGLRenderingContext needs to zero textures and renderbuffers 10879 https://bugs.webkit.org/show_bug.cgi?id=49355 10880 10881 Test: fast/canvas/webgl/uninitialized-test.html 10882 10883 * html/canvas/WebGLFramebuffer.cpp: 10884 (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed. 10885 (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist. 10886 * html/canvas/WebGLFramebuffer.h: Modify onAccess function signature. 10887 * html/canvas/WebGLRenderingContext.cpp: 10888 (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter. 10889 (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto. 10890 (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto. 10891 (WebCore::WebGLRenderingContext::drawArrays): Ditto. 10892 (WebCore::WebGLRenderingContext::drawElements): Ditto. 10893 (WebCore::WebGLRenderingContext::readPixels): Ditto. 10894 (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures. 10895 10896 2010-11-17 Ryosuke Niwa <rniwa (a] webkit.org> 10897 10898 Reviewed by Darin Adler. 10899 10900 Merge ScriptElement and ScriptElementData 10901 https://bugs.webkit.org/show_bug.cgi?id=49647 10902 10903 Merged two classes. 10904 10905 * dom/AsyncScriptRunner.cpp: 10906 (WebCore::AsyncScriptRunner::executeScriptSoon): Takes ScriptElement* instead of ScriptElementData*. 10907 (WebCore::AsyncScriptRunner::timerFired): Uses ScriptElement* instead of ScriptElementData*. 10908 * dom/AsyncScriptRunner.h: 10909 * dom/ScriptElement.cpp: 10910 (WebCore::ScriptElement::ScriptElement): Merged with ScriptElementData::ScriptElementData. 10911 (WebCore::ScriptElement::~ScriptElement): Merged with ScriptElementData::~ScriptElementData. 10912 (WebCore::ScriptElement::insertedIntoDocument): Calls createdByParser, isAsynchronous, requestScript, and scriptContent. 10913 (WebCore::ScriptElement::removedFromDocument): Calls stopLoadRequest. 10914 (WebCore::ScriptElement::childrenChanged): Calls createdByParser and accesses m_element. 10915 (WebCore::ScriptElement::finishParsingChildren): Calls scriptContent. 10916 (WebCore::ScriptElement::handleSourceAttribute): Calls ignoresLoadRequest and requestScript. 10917 (WebCore::ScriptElement::requestScript): Moved from ScriptElementData; calls dispatchErrorEvent. 10918 (WebCore::ScriptElement::evaluateScript): Moved from ScriptElementData. 10919 (WebCore::ScriptElement::executeScript): Ditto. 10920 (WebCore::ScriptElement::stopLoadRequest): Ditto. 10921 (WebCore::ScriptElement::execute): Moved from ScriptElementData; calls dispatchErrorEvent and dispatchLoadEvent. 10922 (WebCore::ScriptElement::notifyFinished): Moved from ScriptElementData. 10923 (WebCore::ScriptElement::ignoresLoadRequest): Ditto. 10924 (WebCore::ScriptElement::shouldExecuteAsJavaScript): Moved from ScriptElementData; calls typeAttributeValue, languageAttributeValue, 10925 forAttributeValue, and eventAttributeValue. 10926 (WebCore::ScriptElement::scriptCharset): Moved from ScriptElementData. 10927 (WebCore::ScriptElement::scriptContent): Ditto. 10928 (WebCore::ScriptElement::isAsynchronous): Moved from ScriptElementData; calls sourceAttributeValue and asyncAttributeValue. 10929 (WebCore::ScriptElement::isDeferred): Moved from ScriptElementData; calls sourceAttributeValue, asyncAttributeValue, 10930 and deferAttributeValue. 10931 * dom/ScriptElement.h: 10932 (WebCore::ScriptElement::element): 10933 (WebCore::ScriptElement::haveFiredLoadEvent): 10934 (WebCore::ScriptElement::setHaveFiredLoadEvent): 10935 (WebCore::ScriptElement::createdByParser): 10936 (WebCore::ScriptElement::isEvaluated): 10937 10938 2010-11-17 Tenghui Zhu <ztenghui (a] google.com> 10939 10940 Reviewed by Jeremy Orlow. 10941 10942 profileCallback and profileEndCallback should be guarded with ENABLE_JAVASCRIPT_DEBUGGER 10943 https://bugs.webkit.org/show_bug.cgi?id=49623 10944 10945 No new tests. Just a compiling error fix. 10946 10947 * bindings/v8/custom/V8ConsoleCustom.cpp: 10948 Add the guard ENABLE_JAVA_SCRIPT_DEBUGGER to profileCallback and profileEndCallback 10949 10950 2010-11-17 John Knottenbelt <jknotten (a] chromium.org> 10951 10952 Reviewed by Jeremy Orlow. 10953 10954 Introduce GeoNotifierVector typedef for increased readability 10955 https://bugs.webkit.org/show_bug.cgi?id=49597 10956 10957 * page/Geolocation.cpp: 10958 (WebCore::Geolocation::Watchers::getNotifiersVector): 10959 (WebCore::Geolocation::sendError): 10960 (WebCore::Geolocation::sendPosition): 10961 (WebCore::Geolocation::stopTimer): 10962 (WebCore::Geolocation::stopTimersForOneShots): 10963 (WebCore::Geolocation::stopTimersForWatchers): 10964 (WebCore::Geolocation::cancelRequests): 10965 (WebCore::Geolocation::cancelAllRequests): 10966 (WebCore::Geolocation::handleError): 10967 (WebCore::Geolocation::makeSuccessCallbacks): 10968 * page/Geolocation.h: 10969 10970 2010-11-17 John Knottenbelt <jknotten (a] chromium.org> 10971 10972 Reviewed by Jeremy Orlow. 10973 10974 Convert correctly between GeolocationPosition and Geoposition 10975 timestamp formats. 10976 https://bugs.webkit.org/show_bug.cgi?id=48518 10977 10978 Test: fast/dom/Geolocation/timestamp.html 10979 10980 * page/Geolocation.cpp: 10981 (WebCore::createGeoposition): 10982 10983 2010-11-17 Chang Shu <chang.shu (a] nokia.com> 10984 10985 Reviewed by Antonio Gomes. 10986 10987 [Mac] Suppress single select popup menu when spatial navigation is enabled on Mac. 10988 This makes spatial navigation work properly for single select box. 10989 10990 Test: fast/events/spatial-navigation/snav-single-select.html 10991 10992 * dom/SelectElement.cpp: 10993 (WebCore::nextValidIndex): 10994 (WebCore::SelectElement::menuListDefaultEventHandler): 10995 10996 2010-11-17 Satish Sampath <satish (a] chromium.org> 10997 10998 Reviewed by Jeremy Orlow. 10999 11000 Clear the speech input mock explicitly before each test. 11001 https://bugs.webkit.org/show_bug.cgi?id=49660 11002 11003 * platform/mock/SpeechInputClientMock.cpp: 11004 (WebCore::SpeechInputClientMock::clearResults): Added clearResults method. 11005 * platform/mock/SpeechInputClientMock.h: 11006 11007 2010-11-17 Alexander Pavlov <apavlov (a] chromium.org> 11008 11009 [Chromium] Unreviewed, fix Chromium-Mac build from r72189. 11010 11011 * css/CSSPrimitiveValue.cpp: 11012 (WebCore::CSSPrimitiveValue::getDoubleValue): 11013 11014 2010-11-17 Hans Wennborg <hans (a] chromium.org> 11015 11016 Reviewed by Jeremy Orlow. 11017 11018 IndexedDB: IDBKey::whereSyntax should impose conditions on all columns 11019 https://bugs.webkit.org/show_bug.cgi?id=49601 11020 11021 The WHERE clause should specifiy a condition for each key column to 11022 make sure that the ObjectStoreData_composit index can be used when 11023 querying the object store based on key. Not using the index causes 11024 severe performance degradation for common IDB operations. 11025 11026 * storage/IDBKey.cpp: 11027 (WebCore::IDBKey::whereSyntax): 11028 11029 2010-11-17 Eric Uhrhane <ericu (a] chromium.org> 11030 11031 Reviewed by David Levin. 11032 11033 [Chromium] implementation of async FileWriter for workers 11034 https://bugs.webkit.org/show_bug.cgi?id=47681 11035 11036 Tests are in a separate changelist. 11037 11038 * platform/CrossThreadCopier.h: Changed CrossThreadCopier[Base] to support PassRefPtrs 11039 11040 2010-11-17 Alejandro G. Castro <alex (a] igalia.com> 11041 11042 Reviewed by Martin Robinson. 11043 11044 [gtk] r69119 modified just the gtk2 version of the 11045 scrolled_window_paint function but not the gtk3 version 11046 https://bugs.webkit.org/show_bug.cgi?id=49585 11047 11048 Use gtk_paint_shadow the same as the actual code from GTK+. Avoid 11049 using state and use the same values we are using for gtk2 in the 11050 paint function. 11051 11052 * platform/gtk/ScrollbarThemeGtk.cpp: 11053 (WebCore::ScrollbarThemeGtk::paintButton): Initialized the 11054 depressed attribute of the state variable to avoid using it 11055 without initialization. 11056 * platform/gtk/gtk3drawing.c: 11057 (moz_gtk_scrolled_window_paint): 11058 11059 2010-11-16 Alexander Pavlov <apavlov (a] chromium.org> 11060 11061 Reviewed by Simon Fraser. 11062 11063 CSSPrimitiveValue.getFloatValue does not convert sizes 11064 https://bugs.webkit.org/show_bug.cgi?id=35770 11065 11066 Implemented all same-category unit conversions (length, angle, time, frequency) and retained 11067 absolute-relative (cm, mm, in, pt, pc) length conversions intact. 11068 Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException. 11069 11070 * css/CSSPrimitiveValue.cpp: 11071 (WebCore::unitCategory): 11072 (WebCore::conversionToCanonicalUnitsScaleFactor): 11073 (WebCore::CSSPrimitiveValue::getDoubleValue): 11074 (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory): 11075 (WebCore::CSSPrimitiveValue::getDoubleValueInternal): 11076 (WebCore::CSSPrimitiveValue::getIdent): 11077 * css/CSSPrimitiveValue.h: 11078 (WebCore::CSSPrimitiveValue::getFloatValue): 11079 (WebCore::CSSPrimitiveValue::getIntValue): 11080 11081 2010-11-17 Ademar de Souza Reis Jr. <ademar.reis (a] openbossa.org> 11082 11083 Reviewed by Andreas Kling. 11084 11085 Document::nodesFromRect() has wrong source code documentation 11086 https://bugs.webkit.org/show_bug.cgi?id=49610 11087 11088 * dom/Document.h: fix nodesFromRect() documentation 11089 11090 2010-11-17 Alexis Menard <alexis.menard (a] nokia.com>, Simon Hausmann <simon.hausmann (a] nokia.com> 11091 11092 Reviewed by Kenneth Christiansen, Tor Arne Vestb. 11093 11094 [Qt] Add support for use GStreamer with the Qt build 11095 11096 Make it possible to use gstreamer with the Qt build via the USE_GSTREAMER macro. The 11097 integration is rather basic at this point, allowing for software based rendering 11098 only at the moment. AC integration and fullscreen playback is still missing. 11099 11100 * WebCore.pro: Added a bunch of gstreamer files to the build and guard it as a 11101 build option with the USE_GSTREAMER macro. 11102 * platform/graphics/MediaPlayer.cpp: 11103 (WebCore::installedMediaEngines): Don't use the generic media player registration 11104 when using GStreamer. These #ifdefs should be removed, but the gstreamer folks want 11105 to be able to build with gstreamer _and_ another backend simultaenously. 11106 * platform/graphics/gstreamer/ImageGStreamer.h: 11107 * platform/graphics/gstreamer/ImageGStreamerQt.cpp: Added. 11108 (ImageGStreamer::createImage): 11109 (ImageGStreamer::ImageGStreamer): 11110 (ImageGStreamer::~ImageGStreamer): 11111 * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h: Added. 11112 * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp: Added. 11113 (FullScreenVideoWindow::FullScreenVideoWindow): 11114 (FullScreenVideoWindow::keyPressEvent): 11115 (FullScreenVideoWindow::event): 11116 (PlatformVideoWindow::PlatformVideoWindow): 11117 (PlatformVideoWindow::~PlatformVideoWindow): 11118 (PlatformVideoWindow::prepareForOverlay): 11119 11120 2010-11-17 Alexander Pavlov <apavlov (a] chromium.org> 11121 11122 Reviewed by Pavel Feldman. 11123 11124 Web Inspector: [REGRESSION] editing disabled styles breaks style bodies. 11125 https://bugs.webkit.org/show_bug.cgi?id=49602 11126 11127 * inspector/InspectorStyleSheet.cpp: 11128 (WebCore::InspectorStyle::setPropertyText): 11129 * inspector/front-end/StylesSidebarPane.js: 11130 (WebInspector.StylePropertyTreeElement.prototype.get name): 11131 (WebInspector.StylePropertyTreeElement.prototype.get priority): 11132 (WebInspector.StylePropertyTreeElement.prototype.get value): 11133 11134 2010-11-16 Adam Roben <aroben (a] apple.com> 11135 11136 Move QTMovieWin's settings into a vsprops file 11137 11138 Fixes <http://webkit.org/b/49644> QTMovieWin should use a vsprops file 11139 11140 Reviewed by Steve Falkenburg. 11141 11142 * WebCore.vcproj/QTMovieWin.vcproj: 11143 * WebCore.vcproj/QTMovieWinCommon.vsprops: Added. 11144 11145 2010-11-16 Andy Estes <aestes (a] apple.com> 11146 11147 Reviewed by Dave Hyatt. 11148 11149 WebKit mishandles line boxes where the content height exceeds the 11150 specified line-height. 11151 https://bugs.webkit.org/show_bug.cgi?id=49410 11152 11153 If a line height is explicitly specified on a text box and fallback 11154 fonts are in use, only the primary font should be considered when 11155 computing the box's ascent and descent. This prevents the inline box 11156 from being sized larger than the specified line height. 11157 11158 This patch also fixes a math error when computing a used font's descent 11159 in the case where line height isn't explicitly set. This change results 11160 in a number of layout tests needing re-baselining. 11161 11162 Test: fast/css/line-height-determined-by-primary-font.html 11163 11164 * rendering/InlineFlowBox.cpp: 11165 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 11166 11167 2010-11-15 Ryosuke Niwa <rniwa (a] webkit.org> 11168 11169 Reviewed by Darin Adler. 11170 11171 ScriptElementData should be a private member of ScriptElement 11172 https://bugs.webkit.org/show_bug.cgi?id=49578 11173 11174 Privatized m_data of ScriptElement. Added haveFiredLoadEvent, setHaveFiredLoadEvent, createdByParser, 11175 and isEvaluated to ScriptElement to proxy calls from HTMLScriptElement and SVGScriptElement to ScriptElementData. 11176 11177 No tests are added since this is a cleanup. 11178 11179 * dom/ScriptElement.h: 11180 (WebCore::ScriptElement::haveFiredLoadEvent): Added. 11181 (WebCore::ScriptElement::setHaveFiredLoadEvent): Added. 11182 (WebCore::ScriptElement::createdByParser): Added. 11183 (WebCore::ScriptElement::isEvaluated): Added. 11184 * html/HTMLScriptElement.cpp: 11185 (WebCore::HTMLScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent and setHaveFiredLoadEvent. 11186 (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): Calls isEvaluated. 11187 * html/HTMLScriptElement.h: 11188 (WebCore::HTMLScriptElement::text): Calls scriptContent. 11189 (WebCore::HTMLScriptElement::haveFiredLoadEvent): Calls haveFiredLoadEvent. 11190 * svg/SVGScriptElement.cpp: 11191 (WebCore::SVGScriptElement::svgAttributeChanged): Calls haveFiredLoadEvent and createdByParser. 11192 (WebCore::SVGScriptElement::insertedIntoDocument): Calls createdByParser. 11193 (WebCore::SVGScriptElement::finishParsingChildren): Calls setHaveFiredLoadEvent. 11194 (WebCore::SVGScriptElement::haveLoadedRequiredResources): Ditto. 11195 (WebCore::SVGScriptElement::dispatchLoadEvent): Calls haveFiredLoadEvent. 11196 (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): Calls createdByParser, 11197 haveFiredLoadEvent, and setHaveFiredLoadEvent. 11198 11199 2010-11-16 Antti Koivisto <antti (a] apple.com> 11200 11201 Reviewed by Darin Adler. 11202 11203 https://bugs.webkit.org/show_bug.cgi?id=49320 11204 Minor ResourceLoadScheduler cleanups 11205 11206 * loader/ResourceLoadScheduler.cpp: 11207 (WebCore::ResourceLoadScheduler::scheduleLoad): 11208 (WebCore::ResourceLoadScheduler::servePendingRequests): 11209 (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation): 11210 (WebCore::ResourceLoadScheduler::HostInformation::remove): 11211 (WebCore::ResourceLoadScheduler::HostInformation::hasRequests): 11212 * loader/ResourceLoadScheduler.h: 11213 11214 2010-11-16 Dave Hyatt <hyatt (a] apple.com> 11215 11216 Reviewed by Sam Weinig. 11217 11218 Add a baselineType member to RootInlineBox that caches whether the default baseline behavior for that 11219 line should be ideographic or alphabetic. Add a requiresIdeographicsBaseline recursive function to 11220 InlineFlowBox that scans for the use of any vertical fonts. 11221 11222 * rendering/InlineFlowBox.cpp: 11223 (WebCore::InlineFlowBox::requiresIdeographicBaseline): 11224 * rendering/InlineFlowBox.h: 11225 * rendering/RootInlineBox.cpp: 11226 (WebCore::RootInlineBox::RootInlineBox): 11227 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 11228 * rendering/RootInlineBox.h: 11229 (WebCore::RootInlineBox::baselineType): 11230 11231 2010-11-16 Dave Hyatt <hyatt (a] apple.com> 11232 11233 Reviewed by Sam Weinig. 11234 11235 Add FontBaseline.h and make ascent and descent take a baseline parameter so that both an 11236 alphabetic and ideographic baseline can be requested. 11237 11238 * WebCore.xcodeproj/project.pbxproj: 11239 * platform/graphics/Font.h: 11240 (WebCore::Font::ascent): 11241 (WebCore::Font::descent): 11242 * platform/graphics/FontBaseline.h: Added. 11243 * platform/graphics/SimpleFontData.h: 11244 (WebCore::SimpleFontData::ascent): 11245 (WebCore::SimpleFontData::descent): 11246 (WebCore::SimpleFontData::height): 11247 11248 2010-11-16 Antti Koivisto <koivisto (a] iki.fi> 11249 11250 Reviewed by Adam Barth. 11251 11252 https://bugs.webkit.org/show_bug.cgi?id=31223 11253 Make primitive values immutable. 11254 11255 Make CSSPrimitiveValue setFloatValue and setStringValue always throw NO_MODIFICATION_ALLOWED exception. 11256 11257 Reasoning: 11258 - these setters never worked correctly, style was not invalidated so changing values would have no effect on rendering 11259 - computed style is immutable in all cases, and it wasn't 11260 - no other engine seems to support mutable primitives, as a result there is no content using these APIs 11261 - mutable primitive values are pointless, the usual way to change the value of a propertly is to replace it with a new value 11262 - allowing mutation of primitive values makes optimizations harder 11263 11264 * css/CSSPrimitiveValue.cpp: 11265 (WebCore::CSSPrimitiveValue::setFloatValue): 11266 (WebCore::CSSPrimitiveValue::setStringValue): 11267 11268 2010-11-16 Steve Falkenburg <sfalken (a] apple.com> 11269 11270 Reviewed by Adam Roben. 11271 11272 Disable LTCG for Windows Release builds. Add new Release_LTCG configuration. 11273 https://bugs.webkit.org/show_bug.cgi?id=49632 11274 11275 * WebCore.vcproj/QTMovieWin.vcproj: 11276 * WebCore.vcproj/WebCore.make: 11277 * WebCore.vcproj/WebCore.sln: 11278 * WebCore.vcproj/WebCore.vcproj: 11279 11280 2010-11-16 Anders Carlsson <andersca (a] apple.com> 11281 11282 Reviewed by John Sullivan. 11283 11284 Set the original URL for downloads 11285 https://bugs.webkit.org/show_bug.cgi?id=49628 11286 11287 Export symbols needed by WebKit2. 11288 11289 * WebCore.exp.in: 11290 11291 2010-11-16 Dave Hyatt <hyatt (a] apple.com> 11292 11293 Reviewed by Dan Bernstein. 11294 11295 https://bugs.webkit.org/show_bug.cgi?id=11004 11296 11297 font-size:0 is ignored. Remove the minimum font size of 1 in CSSStyleSelector. 11298 Change the pref value for minimum font size from 1 to 0. Make sure to never use the NSFont's size, 11299 since it doesn't honor a size of 0. Instead pass the size in to the FontPlatformData(NSFont*) version 11300 of the constructor rather than using [NSFont pointSize]. 11301 11302 https://bugs.webkit.org/show_bug.cgi?id=49582 11303 11304 Negative leading is not handled correctly. There are two bugs here. The first is that 11305 maxAscent and maxDescent can be negative, so we need a notion of whether or not we have 11306 set them before so that we can allow them to be < 0. 11307 11308 The second issue is that we should understand where fonts will end up relative to 11309 our baseline (excluding line height), and only allow those boxes to impact ascent and 11310 descent if the actual font box (without factoring in line height) is above or below the 11311 root line box baseline. 11312 11313 Added fast/css/negative-leading.html 11314 11315 These two bug fixes have to land together to keep the Acid 3 test rendering correctly. 11316 11317 * WebCore.exp.in: 11318 * css/CSSStyleSelector.cpp: 11319 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): 11320 * platform/graphics/cocoa/FontPlatformData.h: 11321 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 11322 (WebCore::FontPlatformData::FontPlatformData): 11323 * platform/graphics/mac/FontCacheMac.mm: 11324 (WebCore::FontCache::getFontDataForCharacters): 11325 (WebCore::FontCache::createFontPlatformData): 11326 * platform/graphics/mac/SimpleFontDataMac.mm: 11327 (WebCore::SimpleFontData::smallCapsFontData): 11328 * rendering/InlineFlowBox.cpp: 11329 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 11330 * rendering/InlineFlowBox.h: 11331 * rendering/RootInlineBox.cpp: 11332 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 11333 11334 2010-11-16 Darin Adler <darin (a] apple.com> 11335 11336 https://bugs.webkit.org/show_bug.cgi?id=49611 11337 REGRESSION (r72115): 5 layout tests are broken 11338 11339 * loader/FrameLoader.cpp: 11340 (WebCore::FrameLoader::loadFrameRequest): Roll change from 11341 https://bugs.webkit.org/show_bug.cgi?id=48603 out. I'll roll 11342 it back in after fixing the failing tests. 11343 11344 2010-11-16 Dan Bernstein <mitz (a] apple.com> 11345 11346 Reviewed by Simon Fraser. 11347 11348 <rdar://problem/8672000> REGRESSION (r72040): Error image with alt text can cause style to be frozen in a subtree 11349 https://bugs.webkit.org/show_bug.cgi?id=49579 11350 11351 r72040 introduced a call to setNeedsStyleRecalc() from RenderImage::imageChanged(). When imageChanged() 11352 got called beneath recalcStyle() on some ancestor element, the result was that the ancestors 11353 childNeedsStyleRecalc flag got cleared, but its descendants all the way down to the image did not. 11354 Thereafter, setNeedsStyleRecalc() would fail to propagate from that subtree up to the root. The fix 11355 is to avoid the newly-added setNeedsStyleRecalc() in most cases, including during reclacStyle(), and 11356 just keep it for when it is needed. 11357 11358 Tests: fast/block/float/015.html 11359 fast/images/style-access-during-imageChanged-style-freeze.html 11360 11361 * dom/Document.cpp: 11362 (WebCore::Document::isPendingStyleRecalc): Added. 11363 * dom/Document.h: 11364 * rendering/RenderImage.cpp: 11365 (WebCore::RenderImage::imageChanged): Only defer intrinsic size compoutation if a style recalc 11366 is coming (indicating that current style() is stale). 11367 11368 2010-11-11 Zhenyao Mo <zmo (a] google.com> 11369 11370 Reviewed by Kenneth Russell. 11371 11372 Implement UNPACK_COLORSPACE_CONVERSION_WEBGL 11373 https://bugs.webkit.org/show_bug.cgi?id=47196 11374 11375 * html/canvas/WebGLRenderingContext.cpp: 11376 (WebCore::WebGLRenderingContext::texImage2DImpl): Apply UNPACK_COLORSPACE_CONVERSION settings to image uploading. 11377 (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto. 11378 * platform/graphics/GraphicsContext3D.cpp: 11379 (WebCore::GraphicsContext3D::extractImageData): Ditto. 11380 * platform/graphics/GraphicsContext3D.h: 11381 * platform/graphics/ImageSource.cpp: 11382 (WebCore::ImageSource::ImageSource): Add ignoreGammaColorProfile parameter. 11383 (WebCore::ImageSource::setData): Ditto. 11384 * platform/graphics/ImageSource.h: 11385 * platform/graphics/cg/GraphicsContext3DCG.cpp: 11386 (WebCore::GraphicsContext3D::getImageData): Ditto. 11387 * platform/graphics/cg/ImageSourceCG.cpp: 11388 (WebCore::ImageSource::ImageSource): Ditto. 11389 * platform/graphics/qt/GraphicsContext3DQt.cpp: 11390 (WebCore::GraphicsContext3D::getImageData): Ditto. 11391 * platform/graphics/qt/ImageDecoderQt.cpp: 11392 (WebCore::ImageDecoder::create): Ditto. 11393 (WebCore::ImageDecoderQt::ImageDecoderQt): Ditto. 11394 * platform/graphics/qt/ImageDecoderQt.h: 11395 * platform/graphics/skia/GraphicsContext3DSkia.cpp: 11396 (WebCore::GraphicsContext3D::getImageData): Ditto. 11397 * platform/image-decoders/ImageDecoder.cpp: 11398 (WebCore::ImageDecoder::create): Ditto. 11399 * platform/image-decoders/ImageDecoder.h: 11400 (WebCore::ImageDecoder::ImageDecoder): Ditto. 11401 * platform/image-decoders/bmp/BMPImageDecoder.cpp: 11402 (WebCore::BMPImageDecoder::BMPImageDecoder): 11403 * platform/image-decoders/bmp/BMPImageDecoder.h: 11404 * platform/image-decoders/gif/GIFImageDecoder.cpp: 11405 (WebCore::GIFImageDecoder::GIFImageDecoder): Ditto. 11406 * platform/image-decoders/gif/GIFImageDecoder.h: 11407 * platform/image-decoders/ico/ICOImageDecoder.cpp: 11408 (WebCore::ICOImageDecoder::ICOImageDecoder): Ditto. 11409 (WebCore::ICOImageDecoder::decodeAtIndex): Ditto. 11410 * platform/image-decoders/ico/ICOImageDecoder.h: 11411 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 11412 (WebCore::JPEGImageDecoder::JPEGImageDecoder): Ditto. 11413 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 11414 * platform/image-decoders/png/PNGImageDecoder.cpp: 11415 (WebCore::PNGImageDecoder::PNGImageDecoder): Ditto. 11416 (WebCore::PNGImageDecoder::headerAvailable): Ignore gamma settings if ignoreGammaAndColorProfile is true. 11417 * platform/image-decoders/png/PNGImageDecoder.h: 11418 * platform/image-decoders/webp/WEBPImageDecoder.cpp: 11419 (WebCore::WEBPImageDecoder::WEBPImageDecoder): Add ignoreGammaAndColorProfile parameter. 11420 * platform/image-decoders/webp/WEBPImageDecoder.h: 11421 11422 2010-11-16 Eric Carlson <eric.carlson (a] apple.com> 11423 11424 Unreviewed attempt to fix GTK build after http://trac.webkit.org/changeset/72117 11425 11426 * platform/graphics/MediaPlayer.cpp: 11427 (WebCore::installedMediaEngines): 11428 11429 2010-11-12 Zhenyao Mo <zmo (a] google.com> 11430 11431 Reviewed by Kenneth Russell. 11432 11433 Refactor GL backend flags 11434 https://bugs.webkit.org/show_bug.cgi?id=49460 11435 11436 * html/canvas/WebGLRenderingContext.cpp: 11437 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Call setupFlags(). 11438 (WebCore::WebGLRenderingContext::initializeNewContext): Remove flag initialization to setupFlags(). 11439 (WebCore::WebGLRenderingContext::setupFlags): Initialize GL flags. 11440 (WebCore::WebGLRenderingContext::getRenderbufferParameter): Use accessor function instead of member. 11441 (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto. 11442 * html/canvas/WebGLRenderingContext.h: Use flags set in setupFlags instead of querying underlying GL implementation. 11443 (WebCore::WebGLRenderingContext::isGLES2Compliant): 11444 (WebCore::WebGLRenderingContext::isGLES2NPOTStrict): 11445 (WebCore::WebGLRenderingContext::isErrorGeneratedOnOutOfBoundsAccesses): 11446 (WebCore::WebGLRenderingContext::isResourceSafe): 11447 (WebCore::WebGLRenderingContext::isDepthStencilSupported): 11448 * platform/graphics/Extensions3D.h: Add NPOT extension. 11449 * platform/graphics/GraphicsContext3D.h: Remove GL flag queries at this level. 11450 * platform/graphics/chromium/Extensions3DChromium.h: Add resource_safe and strict_attribs extensions. 11451 * platform/graphics/mac/GraphicsContext3DMac.mm: Remove GL flag queries at this level. 11452 11453 2010-11-16 Kenneth Russell <kbr (a] google.com> 11454 11455 Reviewed by Dimitri Glazkov. 11456 11457 WebIDL conversions from string to number and array to number should not generate TypeError 11458 https://bugs.webkit.org/show_bug.cgi?id=49218 11459 11460 Recent SVG-related changes to the StrictTypeChecking extended attribute in 11461 CodeGeneratorJS.pm and CodeGeneratorV8.pm were not correct according to the Web IDL and 11462 ECMA-262 specifications. In particular, when an attribute or function argument is specified 11463 as a number type (floating-point or integer), passing in a String or object is not supposed 11464 to raise an exception. 11465 11466 The original intent of the StrictTypeChecking extended attribute was to properly raise 11467 TypeError when an interface type is required, but the supplied object does not implement the 11468 interface type (http://dev.w3.org/2006/webapi/WebIDL/#es-interface). Historically WebKit has 11469 silently passed null to the C++ bindings in this case. The handling of strings in the 11470 original StrictTypeChecking implementation was also incorrect, raising exceptions when it 11471 should not. 11472 11473 The semantics of StrictTypeChecking have been changed to enforce only the restrictions on 11474 interface types. The V8 custom bindings for WebGL have been updated to match the behavior of 11475 the autogenerated code. 11476 11477 Test: fast/canvas/webgl/type-conversion-test.html 11478 11479 * bindings/scripts/CodeGeneratorJS.pm: 11480 * bindings/scripts/CodeGeneratorV8.pm: 11481 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 11482 (WebCore::getObjectParameter): 11483 (WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterCallback): 11484 (WebCore::V8WebGLRenderingContext::getParameterCallback): 11485 (WebCore::V8WebGLRenderingContext::getProgramParameterCallback): 11486 (WebCore::V8WebGLRenderingContext::getShaderParameterCallback): 11487 (WebCore::vertexAttribAndUniformHelperf): 11488 11489 2010-11-16 Alexey Proskuryakov <ap (a] apple.com> 11490 11491 Windows build fix. 11492 11493 * DerivedSources.cpp: Removing CSS Variables generated files. 11494 11495 2010-11-16 Eric Carlson <eric.carlson (a] apple.com> 11496 11497 Reviewed by John Sullivan. 11498 11499 getMIMEType(s)ForExtension should consult system mapping 11500 https://bugs.webkit.org/show_bug.cgi?id=49497 11501 11502 No new tests possible. 11503 11504 * platform/MIMETypeRegistry.cpp: 11505 (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): Add the type returned by getMIMETypeForExtension. 11506 Put the result of mediaMIMETypeMap().get() in a local variable and test instead of calling 11507 constains() and then get(). 11508 (WebCore::MIMETypeRegistry::getMediaMIMETypesForExtension): Ditto. 11509 11510 2010-11-16 Eric Carlson <eric.carlson (a] apple.com> 11511 11512 Reviewed by Darin Adler. 11513 11514 Rename QTKit based media engine class name 11515 https://bugs.webkit.org/show_bug.cgi?id=36663 11516 11517 No new tests as this just renames a class and restructures existing code. 11518 11519 * platform/graphics/MediaPlayer.cpp: 11520 (WebCore::installedMediaEngines): Use a macro with the platform media player class name to reduce the 11521 number of #ifs in the code. 11522 11523 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Rename MediaPlayerPrivate to MediaPlayerPrivateQTKit. 11524 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 11525 (WebCore::MediaPlayerPrivateQTKit::create): 11526 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): 11527 (WebCore::MediaPlayerPrivateQTKit::MediaPlayerPrivateQTKit): 11528 (WebCore::MediaPlayerPrivateQTKit::~MediaPlayerPrivateQTKit): 11529 (WebCore::MediaPlayerPrivateQTKit::createQTMovie): 11530 (WebCore::MediaPlayerPrivateQTKit::createQTMovieView): 11531 (WebCore::MediaPlayerPrivateQTKit::detachQTMovieView): 11532 (WebCore::MediaPlayerPrivateQTKit::createQTVideoRenderer): 11533 (WebCore::MediaPlayerPrivateQTKit::destroyQTVideoRenderer): 11534 (WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer): 11535 (WebCore::MediaPlayerPrivateQTKit::destroyQTMovieLayer): 11536 (WebCore::MediaPlayerPrivateQTKit::currentRenderingMode): 11537 (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode): 11538 (WebCore::MediaPlayerPrivateQTKit::setUpVideoRendering): 11539 (WebCore::MediaPlayerPrivateQTKit::tearDownVideoRendering): 11540 (WebCore::MediaPlayerPrivateQTKit::hasSetUpVideoRendering): 11541 (WebCore::MediaPlayerPrivateQTKit::createQTTime): 11542 (WebCore::MediaPlayerPrivateQTKit::resumeLoad): 11543 (WebCore::MediaPlayerPrivateQTKit::load): 11544 (WebCore::MediaPlayerPrivateQTKit::loadInternal): 11545 (WebCore::MediaPlayerPrivateQTKit::prepareToPlay): 11546 (WebCore::MediaPlayerPrivateQTKit::platformMedia): 11547 (WebCore::MediaPlayerPrivateQTKit::platformLayer): 11548 (WebCore::MediaPlayerPrivateQTKit::play): 11549 (WebCore::MediaPlayerPrivateQTKit::pause): 11550 (WebCore::MediaPlayerPrivateQTKit::duration): 11551 (WebCore::MediaPlayerPrivateQTKit::currentTime): 11552 (WebCore::MediaPlayerPrivateQTKit::seek): 11553 (WebCore::MediaPlayerPrivateQTKit::doSeek): 11554 (WebCore::MediaPlayerPrivateQTKit::cancelSeek): 11555 (WebCore::MediaPlayerPrivateQTKit::seekTimerFired): 11556 (WebCore::MediaPlayerPrivateQTKit::paused): 11557 (WebCore::MediaPlayerPrivateQTKit::seeking): 11558 (WebCore::MediaPlayerPrivateQTKit::naturalSize): 11559 (WebCore::MediaPlayerPrivateQTKit::hasVideo): 11560 (WebCore::MediaPlayerPrivateQTKit::hasAudio): 11561 (WebCore::MediaPlayerPrivateQTKit::supportsFullscreen): 11562 (WebCore::MediaPlayerPrivateQTKit::setVolume): 11563 (WebCore::MediaPlayerPrivateQTKit::hasClosedCaptions): 11564 (WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible): 11565 (WebCore::MediaPlayerPrivateQTKit::setRate): 11566 (WebCore::MediaPlayerPrivateQTKit::setPreservesPitch): 11567 (WebCore::MediaPlayerPrivateQTKit::buffered): 11568 (WebCore::MediaPlayerPrivateQTKit::maxTimeSeekable): 11569 (WebCore::MediaPlayerPrivateQTKit::maxTimeLoaded): 11570 (WebCore::MediaPlayerPrivateQTKit::bytesLoaded): 11571 (WebCore::MediaPlayerPrivateQTKit::totalBytes): 11572 (WebCore::MediaPlayerPrivateQTKit::cancelLoad): 11573 (WebCore::MediaPlayerPrivateQTKit::cacheMovieScale): 11574 (WebCore::MediaPlayerPrivateQTKit::isReadyForVideoSetup): 11575 (WebCore::MediaPlayerPrivateQTKit::prepareForRendering): 11576 (WebCore::MediaPlayerPrivateQTKit::updateStates): 11577 (WebCore::MediaPlayerPrivateQTKit::loadStateChanged): 11578 (WebCore::MediaPlayerPrivateQTKit::rateChanged): 11579 (WebCore::MediaPlayerPrivateQTKit::sizeChanged): 11580 (WebCore::MediaPlayerPrivateQTKit::timeChanged): 11581 (WebCore::MediaPlayerPrivateQTKit::didEnd): 11582 (WebCore::MediaPlayerPrivateQTKit::setSize): 11583 (WebCore::MediaPlayerPrivateQTKit::setVisible): 11584 (WebCore::MediaPlayerPrivateQTKit::hasAvailableVideoFrame): 11585 (WebCore::MediaPlayerPrivateQTKit::repaint): 11586 (WebCore::MediaPlayerPrivateQTKit::paintCurrentFrameInContext): 11587 (WebCore::MediaPlayerPrivateQTKit::paint): 11588 (WebCore::MediaPlayerPrivateQTKit::getSupportedTypes): 11589 (WebCore::MediaPlayerPrivateQTKit::supportsType): 11590 (WebCore::MediaPlayerPrivateQTKit::isAvailable): 11591 (WebCore::MediaPlayerPrivateQTKit::disableUnsupportedTracks): 11592 (WebCore::MediaPlayerPrivateQTKit::sawUnsupportedTracks): 11593 (WebCore::MediaPlayerPrivateQTKit::supportsAcceleratedRendering): 11594 (WebCore::MediaPlayerPrivateQTKit::acceleratedRenderingStateChanged): 11595 (WebCore::MediaPlayerPrivateQTKit::hasSingleSecurityOrigin): 11596 (WebCore::MediaPlayerPrivateQTKit::movieLoadType): 11597 (WebCore::MediaPlayerPrivateQTKit::setPreload): 11598 (WebCore::MediaPlayerPrivateQTKit::mediaTimeForTimeValue): 11599 (-[WebCoreMovieObserver initWithCallback:]): 11600 11601 2010-11-16 Alexey Proskuryakov <ap (a] apple.com> 11602 11603 Reviewed by Dave Hyatt. 11604 11605 https://bugs.webkit.org/show_bug.cgi?id=49483 11606 Remove CSS Variable support 11607 11608 * Android.derived.jscbindings.mk: 11609 * Android.derived.v8bindings.mk: 11610 * Android.mk: 11611 * CMakeLists.txt: 11612 * DerivedSources.make: 11613 * GNUmakefile.am: 11614 * WebCore.gypi: 11615 * WebCore.pri: 11616 * WebCore.pro: 11617 * WebCore.vcproj/WebCore.vcproj: 11618 * WebCore.xcodeproj/project.pbxproj: 11619 * bindings/js/JSCSSRuleCustom.cpp: 11620 (WebCore::toJS): 11621 * bindings/v8/custom/V8DOMWindowCustom.cpp 11622 * bindings/objc/DOMCSS.mm: 11623 (kitClass): 11624 * bindings/scripts/CodeGeneratorJS.pm: 11625 * css/CSSComputedStyleDeclaration.cpp: 11626 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 11627 * css/CSSGrammar.y: 11628 * css/CSSMutableStyleDeclaration.cpp: 11629 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration): 11630 (WebCore::CSSMutableStyleDeclaration::removeProperty): 11631 (WebCore::CSSMutableStyleDeclaration::addParsedProperties): 11632 (WebCore::CSSMutableStyleDeclaration::copy): 11633 * css/CSSMutableStyleDeclaration.h: 11634 (WebCore::CSSMutableStyleDeclaration::create): 11635 * css/CSSParser.cpp: 11636 (WebCore::CSSParser::CSSParser): 11637 (WebCore::CSSParser::~CSSParser): 11638 (WebCore::CSSParser::parseValue): 11639 (WebCore::CSSParser::lex): 11640 (WebCore::CSSParser::recheckAtKeyword): 11641 (WebCore::CSSParser::text): 11642 (WebCore::CSSParser::createMediaRule): 11643 (WebCore::CSSParser::createKeyframesRule): 11644 (WebCore::CSSParser::createStyleRule): 11645 (WebCore::CSSParser::createFontFaceRule): 11646 (WebCore::CSSParser::addNamespace): 11647 (WebCore::CSSParser::createPageRule): 11648 * css/CSSParser.h: 11649 * css/CSSParserValues.cpp: 11650 (WebCore::CSSParserValueList::addValue): 11651 (WebCore::CSSParserValueList::deleteValueAt): 11652 (WebCore::CSSParserValue::createCSSValue): 11653 * css/CSSParserValues.h: 11654 (WebCore::CSSParserValueList::CSSParserValueList): 11655 * css/CSSPrimitiveValue.cpp: 11656 (WebCore::CSSPrimitiveValue::cleanup): 11657 (WebCore::CSSPrimitiveValue::getStringValue): 11658 (WebCore::CSSPrimitiveValue::cssText): 11659 (WebCore::CSSPrimitiveValue::parserValue): 11660 * css/CSSPrimitiveValue.h: 11661 * css/CSSProperty.cpp: 11662 (WebCore::CSSProperty::cssText): 11663 * css/CSSPropertyNames.in: 11664 * css/CSSRule.h: 11665 * css/CSSRule.idl: 11666 * css/CSSStyleDeclaration.cpp: 11667 (WebCore::CSSStyleDeclaration::copyPropertiesInSet): 11668 * css/CSSStyleSelector.cpp: 11669 (WebCore::CSSStyleSelector::addMatchedDeclaration): 11670 (WebCore::CSSRuleSet::addRulesFromSheet): 11671 (WebCore::CSSStyleSelector::applyProperty): 11672 * css/CSSStyleSelector.h: 11673 * css/CSSValue.h: 11674 * css/CSSVariableDependentValue.cpp: Removed. 11675 * css/CSSVariableDependentValue.h: Removed. 11676 * css/CSSVariablesDeclaration.cpp: Removed. 11677 * css/CSSVariablesDeclaration.h: Removed. 11678 * css/CSSVariablesDeclaration.idl: Removed. 11679 * css/CSSVariablesRule.cpp: Removed. 11680 * css/CSSVariablesRule.h: Removed. 11681 * css/CSSVariablesRule.idl: Removed. 11682 * css/StyleBase.h: 11683 (WebCore::StyleBase::isMediaRule): 11684 * css/tokenizer.flex: 11685 * page/DOMWindow.idl: 11686 11687 2010-11-16 Darin Adler <darin (a] apple.com> 11688 11689 Reviewed by Sam Weinig. 11690 11691 https://bugs.webkit.org/show_bug.cgi?id=48603 11692 Boolean logic mistake in local file check 11693 11694 * loader/FrameLoader.cpp: 11695 (WebCore::FrameLoader::loadFrameRequest): Fix logic so that both checks have to pass 11696 before accepting a local file load. 11697 11698 2010-11-15 Darin Adler <darin (a] apple.com> 11699 11700 Reviewed by Sam Weinig. 11701 11702 Harden additional string functions against large lengths 11703 https://bugs.webkit.org/show_bug.cgi?id=49574 11704 11705 * platform/text/TextCodecUTF16.cpp: 11706 (WebCore::TextCodecUTF16::encode): Check for length that is 11707 too large for size_t. 11708 11709 * platform/text/TextStream.cpp: 11710 (WebCore::TextStream::operator<<): Check for length that is 11711 too large for size_t. 11712 11713 2010-11-16 Pavel Feldman <pfeldman (a] chromium.org> 11714 11715 Not reviewed. Touching inspector controller to make gtk / qt happier. 11716 11717 * inspector/InspectorController.cpp: 11718 11719 2010-11-16 Carlos Garcia Campos <cgarcia (a] igalia.com> 11720 11721 Reviewed by Martin Robinson. 11722 11723 [GTK] Use gdk_pixbuf_get_from_surface() when available 11724 https://bugs.webkit.org/show_bug.cgi?id=49532 11725 11726 * platform/graphics/gtk/GdkCairoUtilities.cpp: 11727 (cairoImageSurfaceToGdkPixbuf): 11728 11729 2010-11-16 Pavel Feldman <pfeldman (a] chromium.org> 11730 11731 Reviewed by Yury Semikhatsky. 11732 11733 Web Inspector: init front-end UI upon DOMContentLoaded, not load event. 11734 https://bugs.webkit.org/show_bug.cgi?id=49596 11735 11736 * inspector/front-end/inspector.js: 11737 (windowLoaded): 11738 11739 2010-11-15 Alexander Pavlov <apavlov (a] chromium.org> 11740 11741 Reviewed by Pavel Feldman. 11742 11743 Web Inspector: Migrate frontend to the new CSS editing/retrieval API 11744 https://bugs.webkit.org/show_bug.cgi?id=49492 11745 11746 Test: inspector/styles-new-API.html 11747 11748 * inspector/front-end/AuditRules.js: 11749 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback): 11750 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.routine): 11751 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback): 11752 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback): 11753 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback): 11754 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun): 11755 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun): 11756 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages): 11757 * inspector/front-end/CSSStyleModel.js: 11758 (WebInspector.CSSStyleModel.prototype.getStylesAsync): 11759 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync): 11760 (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync): 11761 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 11762 (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback): 11763 (WebInspector.CSSStyleModel.prototype.addRule): 11764 (WebInspector.CSSStyleModel.prototype.addRule.callback): 11765 (WebInspector.CSSStyleDeclaration): 11766 (WebInspector.CSSStyleDeclaration.prototype.propertyAt): 11767 (WebInspector.CSSStyleDeclaration.prototype.pastLastSourcePropertyIndex): 11768 (WebInspector.CSSStyleDeclaration.prototype.newBlankProperty): 11769 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt): 11770 (WebInspector.CSSStyleDeclaration.prototype.appendProperty): 11771 (WebInspector.CSSRule): 11772 (WebInspector.CSSProperty.prototype.get propertyText): 11773 (WebInspector.CSSProperty.prototype.setText): 11774 (WebInspector.CSSProperty.prototype.setDisabled): 11775 (WebInspector.CSSStyleSheet): 11776 (WebInspector.CSSStyleSheet.createForId): 11777 (WebInspector.CSSStyleSheet.prototype.getText): 11778 (WebInspector.CSSStyleSheet.prototype.setText): 11779 * inspector/front-end/Settings.js: 11780 * inspector/front-end/StylesSidebarPane.js: 11781 (WebInspector.StylePropertiesSection.prototype.onpopulate): 11782 (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty): 11783 (WebInspector.StylePropertiesSection.prototype._debugShowStyle.removeStyleBox): 11784 (WebInspector.StylePropertiesSection.prototype._debugShowStyle): 11785 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): 11786 (WebInspector.StylePropertyTreeElement.prototype): 11787 (WebInspector.StylePropertyTreeElement.prototype.): 11788 * inspector/front-end/inspector.css: 11789 (.styles-section .properties li.not-parsed-ok): 11790 (.styles-section .properties li.not-parsed-ok::before): 11791 (.styles-section .properties .inactive): 11792 11793 2010-11-16 Sheriff Bot <webkit.review.bot (a] gmail.com> 11794 11795 Unreviewed, rolling out r72082. 11796 http://trac.webkit.org/changeset/72082 11797 https://bugs.webkit.org/show_bug.cgi?id=49594 11798 11799 "broken SnowLeopard build" (Requested by apavlov on #webkit). 11800 11801 * css/CSSPrimitiveValue.cpp: 11802 (WebCore::scaleFactorForConversion): 11803 (WebCore::CSSPrimitiveValue::getDoubleValue): 11804 (WebCore::CSSPrimitiveValue::getIdent): 11805 * css/CSSPrimitiveValue.h: 11806 (WebCore::CSSPrimitiveValue::getFloatValue): 11807 (WebCore::CSSPrimitiveValue::getIntValue): 11808 11809 2010-11-16 Sheriff Bot <webkit.review.bot (a] gmail.com> 11810 11811 Unreviewed, rolling out r72087. 11812 http://trac.webkit.org/changeset/72087 11813 https://bugs.webkit.org/show_bug.cgi?id=49593 11814 11815 "broken build" (Requested by apavlov on #webkit). 11816 11817 * css/CSSPrimitiveValue.cpp: 11818 (WebCore::unitCategory): 11819 11820 2010-11-15 Pavel Feldman <pfeldman (a] chromium.org> 11821 11822 Reviewed by Yury Semikhatsky. 11823 11824 Web Inspector: rename StoragePanel to ResourcesPanel. 11825 https://bugs.webkit.org/show_bug.cgi?id=49534 11826 11827 * WebCore.gypi: 11828 * WebCore.vcproj/WebCore.vcproj: 11829 * inspector/front-end/DatabaseQueryView.js: 11830 (WebInspector.DatabaseQueryView.prototype._queryFinished): 11831 * inspector/front-end/DatabaseTableView.js: 11832 (WebInspector.DatabaseTableView.prototype._queryFinished): 11833 * inspector/front-end/ExtensionServer.js: 11834 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 11835 * inspector/front-end/Images/storageIcon.png: Removed. 11836 * inspector/front-end/ResourceManager.js: 11837 (WebInspector.ResourceManager.prototype.setOverrideContent): 11838 (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame): 11839 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame): 11840 (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent): 11841 (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources): 11842 (WebInspector.ResourceTreeModel.prototype.addResourceToFrame): 11843 * inspector/front-end/StoragePanel.js: Removed. 11844 * inspector/front-end/WebKit.qrc: 11845 * inspector/front-end/inspector.css: 11846 (.resources.panel .sidebar): 11847 (.resources.panel .sidebar li): 11848 (.resources.panel .sidebar li.parent): 11849 (.resources.panel .sidebar li.selected): 11850 (.resources.panel .sidebar li.selected .selection): 11851 (.resources.panel .sidebar :focus li.selected .selection): 11852 (body.inactive .resources.panel .sidebar li.selected .selection): 11853 (.resources.panel .sidebar .icon): 11854 (.resources.panel .base-storage-tree-element-title): 11855 (.resources.panel .status): 11856 (.resources.panel li .status .bubble): 11857 * inspector/front-end/inspector.html: 11858 * inspector/front-end/inspector.js: 11859 (WebInspector._createPanels): 11860 (WebInspector.openResource): 11861 (WebInspector.showPanel): 11862 (WebInspector.selectDatabase): 11863 (WebInspector.selectDOMStorage): 11864 (WebInspector.addDatabase): 11865 (WebInspector.addDOMStorage): 11866 (WebInspector.updateDOMStorage): 11867 (WebInspector.updateApplicationCacheStatus): 11868 (WebInspector.didGetFileSystemPath): 11869 (WebInspector.didGetFileSystemError): 11870 (WebInspector.didGetFileSystemDisabled): 11871 (WebInspector.updateNetworkState): 11872 (WebInspector._choosePanelToShowSourceLine): 11873 11874 2010-11-16 Alexander Pavlov <apavlov (a] chromium.org> 11875 11876 Unreviewed SnowLeopard build fix. 11877 11878 * css/CSSPrimitiveValue.cpp: 11879 (WebCore::unitCategory): 11880 11881 2010-11-16 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 11882 11883 Reviewed by Andreas Kling. 11884 11885 Viewport meta tag: Fix geometry computation 11886 11887 Available width and height should also be divided by the device pixel ratio. 11888 11889 * dom/ViewportArguments.cpp: 11890 (WebCore::computeViewportAttributes): 11891 * platform/network/qt/DnsPrefetchHelper.cpp: 11892 11893 2010-11-12 Alexander Pavlov <apavlov (a] chromium.org> 11894 11895 Reviewed by Simon Fraser. 11896 11897 CSSPrimitiveValue.getFloatValue does not convert sizes 11898 https://bugs.webkit.org/show_bug.cgi?id=35770 11899 11900 Implemented all same-category unit conversions (length, angle, time, frequency) and retained 11901 absolute-relative (cm, mm, in, pt, pc) length conversions intact. 11902 Illegal unit conversion attempts will throw an INVALID_ACCESS_ERR DOMException. 11903 11904 * css/CSSPrimitiveValue.cpp: 11905 (WebCore::unitCategory): 11906 (WebCore::scaleFactorForConversion): 11907 (WebCore::CSSPrimitiveValue::getDoubleValue): 11908 (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory): 11909 (WebCore::CSSPrimitiveValue::getDoubleValueInternal): 11910 * css/CSSPrimitiveValue.h: 11911 11912 2010-11-15 Pavel Feldman <pfeldman (a] chromium.org> 11913 11914 Reviewed by Yury Semikhatsky. 11915 11916 Web Inspector: extract HTML title setter in treeoutline.js. 11917 https://bugs.webkit.org/show_bug.cgi?id=49540 11918 11919 * inspector/front-end/ElementsTreeOutline.js: 11920 (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange): 11921 (WebInspector.ElementsTreeElement.prototype.updateTitle): 11922 * inspector/front-end/treeoutline.js: 11923 (TreeElement.prototype.get titleHTML): 11924 (TreeElement.prototype.set titleHTML): 11925 (TreeElement.prototype._setListItemNodeContent): 11926 11927 2010-11-16 John Knottenbelt <jknotten (a] chromium.org> 11928 11929 Reviewed by Jeremy Orlow. 11930 11931 Assert that DeviceOrientationClientMock is used by only one controller. 11932 https://bugs.webkit.org/show_bug.cgi?id=48506 11933 11934 This is a design constraint of the DeviceOrientationClientMock because the 11935 m_controller field can only store a pointer to a single instance of the 11936 corresponding DeviceOrientationController. 11937 11938 * platform/mock/DeviceOrientationClientMock.cpp: 11939 (WebCore::DeviceOrientationClientMock::setController): 11940 11941 2010-11-16 Mihai Parparita <mihaip (a] chromium.org> 11942 11943 Reviewed by Adam Barth. 11944 11945 fast/images/size-failure.html results in malloc of 2 Gb after switching to WebKit image decoders 11946 https://bugs.webkit.org/show_bug.cgi?id=48634 11947 11948 Specify the capacity when calling CFDataCreateMutable, which can signal 11949 malloc failures (by returning NULL), unlike CFDataSetLength. 11950 11951 * platform/image-decoders/cg/ImageDecoderCG.cpp: 11952 (WebCore::RGBA32Buffer::setSize): 11953 11954 2010-11-15 Rob Buis <rwlbuis (a] gmail.com> 11955 11956 Reviewed by Dirk Schulze and Darin Adler. 11957 11958 requiredFeatures does not adapt to SVGStringList changes 11959 https://bugs.webkit.org/show_bug.cgi?id=40887 11960 11961 Centralize the const_cast handling and only do it if needed. 11962 Remove the const_cast in all svgAttributeChanged functions and move 11963 it to SVGTest::handleAttributeChange. Add an early return to 11964 handleAttributeChange to avoid unnecessary const_casts. 11965 11966 No tests necessary as functionality has not changed. 11967 11968 * svg/SVGCircleElement.cpp: 11969 (WebCore::SVGCircleElement::svgAttributeChanged): 11970 * svg/SVGEllipseElement.cpp: 11971 (WebCore::SVGEllipseElement::svgAttributeChanged): 11972 * svg/SVGForeignObjectElement.cpp: 11973 (WebCore::SVGForeignObjectElement::svgAttributeChanged): 11974 * svg/SVGGElement.cpp: 11975 (WebCore::SVGGElement::svgAttributeChanged): 11976 * svg/SVGImageElement.cpp: 11977 (WebCore::SVGImageElement::svgAttributeChanged): 11978 * svg/SVGLineElement.cpp: 11979 (WebCore::SVGLineElement::svgAttributeChanged): 11980 * svg/SVGPathElement.cpp: 11981 (WebCore::SVGPathElement::svgAttributeChanged): 11982 * svg/SVGPolyElement.cpp: 11983 (WebCore::SVGPolyElement::svgAttributeChanged): 11984 * svg/SVGRectElement.cpp: 11985 (WebCore::SVGRectElement::svgAttributeChanged): 11986 * svg/SVGSVGElement.cpp: 11987 (WebCore::SVGSVGElement::svgAttributeChanged): 11988 * svg/SVGTests.cpp: 11989 (WebCore::SVGTests::handleAttributeChange): 11990 * svg/SVGTests.h: 11991 * svg/SVGTextContentElement.cpp: 11992 (WebCore::SVGTextContentElement::svgAttributeChanged): 11993 * svg/SVGUseElement.cpp: 11994 (WebCore::SVGUseElement::svgAttributeChanged): 11995 11996 2010-11-15 Dimitri Glazkov <dglazkov (a] chromium.org> 11997 11998 Reviewed by Darin Adler. 11999 12000 REGRESSION(r71934): Removing an element with a shadow DOM from under a cursor causes a crash. 12001 https://bugs.webkit.org/show_bug.cgi?id=49569 12002 12003 Test: fast/events/remove-shadow-host-crash.html 12004 12005 * rendering/TextControlInnerElements.h: 12006 (WebCore::TextControlInnerElement::isShadowNode): 12007 (WebCore::TextControlInnerElement::shadowParentNode): 12008 12009 2010-11-12 Ryosuke Niwa <rniwa (a] webkit.org> 12010 12011 Reviewed by Darin Adler. 12012 12013 ScriptElement rather than HTMLScriptElement and SVGScriptElement should have ScriptElementData 12014 https://bugs.webkit.org/show_bug.cgi?id=49469 12015 12016 Moved m_data, scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript from 12017 HTMLScriptElement and SVGScriptElement to ScriptElementData. 12018 12019 Also made insertedIntoDocument, removedFromDocument, childrenChanged, finishParsingChildren, 12020 and handleSourceAttribute of ScriptElement non-static. 12021 12022 No new tests are added since this is a cleanup. 12023 12024 * dom/ScriptElement.cpp: 12025 (WebCore::ScriptElement::scriptCharset): Added. 12026 (WebCore::ScriptElement::scriptContent): Added. 12027 (WebCore::ScriptElement::shouldExecuteAsJavaScript): Added. 12028 (WebCore::ScriptElement::executeScript): Added. 12029 (WebCore::ScriptElement::insertedIntoDocument): Made non-static. Accesses m_data. 12030 (WebCore::ScriptElement::removedFromDocument): Ditto. 12031 (WebCore::ScriptElement::childrenChanged): Ditto. 12032 (WebCore::ScriptElement::finishParsingChildren): Ditto. 12033 (WebCore::ScriptElement::handleSourceAttribute): Ditto. 12034 * dom/ScriptElement.h: Moved the declaration of ScriptElement after that of ScriptElementData 12035 because ScriptElement has to instantiate ScriptElementData. 12036 (WebCore::ScriptElement::ScriptElement): Initializes m_data. 12037 * html/HTMLScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript. 12038 (WebCore::HTMLScriptElement::HTMLScriptElement): Initializes ScriptElement instead of ScriptElementData. 12039 (WebCore::HTMLScriptElement::childrenChanged): Calls ScriptElement::childrenChanged. 12040 (WebCore::HTMLScriptElement::parseMappedAttribute): Calls ScriptElement::handleSourceAttribute. 12041 (WebCore::HTMLScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren. 12042 (WebCore::HTMLScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument. 12043 (WebCore::HTMLScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument. 12044 * html/HTMLScriptElement.h: 12045 * svg/SVGScriptElement.cpp: Removed scriptCharset, scriptContent, shouldExecuteAsJavaScript, and executeScript. 12046 (WebCore::SVGScriptElement::SVGScriptElement): Initializes ScriptElement instead of ScriptElementData. 12047 (WebCore::SVGScriptElement::svgAttributeChanged): Calls ScriptElement::handleSourceAttribute. 12048 (WebCore::SVGScriptElement::insertedIntoDocument): Calls ScriptElement::insertedIntoDocument. 12049 (WebCore::SVGScriptElement::removedFromDocument): Calls ScriptElement::removedFromDocument. 12050 (WebCore::SVGScriptElement::childrenChanged): Calls ScriptElement::childrenChanged. 12051 (WebCore::SVGScriptElement::finishParsingChildren): Calls ScriptElement::finishParsingChildren. 12052 * svg/SVGScriptElement.h: 12053 12054 2010-11-15 Kent Tamura <tkent (a] chromium.org> 12055 12056 Reviewed by Darin Adler. 12057 12058 Refactor HTMLInputElement: Move a part of HTMLInputElement:: 12059 defaultEventHandler() to InputTypes. 12060 https://bugs.webkit.org/show_bug.cgi?id=48317 12061 12062 Move out the followings to InputTypes: 12063 - click event processing, 12064 - the first keydown event processing, and 12065 - DOMActivate event processing. 12066 12067 Move m_xPos and m_yPos from HTMLInputElement to ImageInputType as 12068 m_clickLocation. It's ok to move them because they should be valid only 12069 when HTMLInputElement::m_activeSubmit is true. For type=image, 12070 m_activeSubmit is true only in DOMActivate event handling. So we reset 12071 m_clickLocation in handleDOMActivateEvent() with Event::underlyingEvent(). 12072 12073 No new tests because this is just a refactoring. 12074 12075 * html/BaseDateAndTimeInputType.cpp: 12076 (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): 12077 * html/BaseDateAndTimeInputType.h: 12078 * html/FileInputType.cpp: 12079 (WebCore::FileInputType::handleDOMActivateEvent): 12080 * html/FileInputType.h: 12081 * html/HTMLInputElement.cpp: 12082 (WebCore::HTMLInputElement::HTMLInputElement): 12083 (WebCore::HTMLInputElement::defaultEventHandler): 12084 * html/HTMLInputElement.h: 12085 * html/ImageInputType.cpp: 12086 (WebCore::ImageInputType::appendFormData): 12087 (WebCore::ImageInputType::handleDOMActivateEvent): 12088 * html/ImageInputType.h: 12089 * html/InputType.cpp: 12090 (WebCore::InputType::handleClickEvent): 12091 (WebCore::InputType::handleDOMActivateEvent): 12092 (WebCore::InputType::handleKeydownEvent): 12093 * html/InputType.h: 12094 * html/NumberInputType.cpp: 12095 (WebCore::NumberInputType::handleKeydownEvent): 12096 * html/NumberInputType.h: 12097 * html/RadioInputType.cpp: 12098 (WebCore::RadioInputType::handleClickEvent): 12099 * html/RadioInputType.h: 12100 * html/RangeInputType.cpp: 12101 (WebCore::RangeInputType::handleKeydownEvent): 12102 * html/RangeInputType.h: 12103 * html/ResetInputType.cpp: 12104 (WebCore::ResetInputType::handleDOMActivateEvent): 12105 * html/ResetInputType.h: 12106 * html/SubmitInputType.cpp: 12107 (WebCore::SubmitInputType::handleDOMActivateEvent): 12108 * html/SubmitInputType.h: 12109 * html/TextFieldInputType.cpp: 12110 (WebCore::TextFieldInputType::handleKeydownEvent): 12111 (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): 12112 * html/TextFieldInputType.h: 12113 12114 2010-11-15 Chris Rogers <crogers (a] google.com> 12115 12116 Reviewed by Kenneth Russell. 12117 12118 Add AudioNode custom bindings 12119 https://bugs.webkit.org/show_bug.cgi?id=49119 12120 12121 No new tests since audio API is not yet implemented. 12122 12123 * bindings/js/JSAudioNodeCustom.cpp: Added. 12124 (WebCore::JSAudioNode::connect): 12125 (WebCore::JSAudioNode::disconnect): 12126 * bindings/v8/custom/V8AudioNodeCustom.cpp: Added. 12127 (WebCore::V8AudioNode::connectCallback): 12128 (WebCore::V8AudioNode::disconnectCallback): 12129 * webaudio/AudioNode.idl: 12130 12131 2010-11-15 Dave Hyatt <hyatt (a] apple.com> 12132 12133 Reviewed by Dan Bernstein. 12134 12135 https://bugs.webkit.org/show_bug.cgi?id=49570 12136 12137 Put italics specialization check back in CSSFontSelector. I had to back it out, since it broke 12138 a layout test, and the issue was that local font fallback fonts should not be considered by the 12139 specialization check (since you never want to pick a fallback over an actual @font-face rule if 12140 the @font-face rule can handle it). 12141 12142 * css/CSSFontFace.h: 12143 (WebCore::CSSFontFace::create): 12144 (WebCore::CSSFontFace::isLocalFallback): 12145 (WebCore::CSSFontFace::CSSFontFace): 12146 * css/CSSFontSelector.cpp: 12147 (WebCore::CSSFontSelector::addFontFaceRule): 12148 (WebCore::compareFontFaces): 12149 12150 2010-11-15 Adele Peterson <adele (a] apple.com> 12151 12152 Reviewed by Darin Adler. 12153 12154 Fix for: https://bugs.webkit.org/show_bug.cgi?id=49452 12155 Placeholder should not be swapped in and out of the text control's inner text element 12156 12157 There's no need to swap the placeholder text in and out of the inner text element. Instead, just paint the text. 12158 This reduces complexity and makes it easier to make independent decisions about the placeholder text and the text control value. 12159 12160 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setValueFromRenderer): 12161 Since updatePlaceholderVisibility checks the value, set the value before calling updatePlaceholderVisibility. 12162 * rendering/RenderTextControl.cpp: 12163 (WebCore::RenderTextControl::updatePlaceholderVisibility): Remove code that set the inner text value with the placeholder text. 12164 (WebCore::RenderTextControl::paintObject): Paint the placeholder text during the background phase. 12165 * rendering/RenderTextControl.h: 12166 * rendering/RenderTextControlMultiLine.cpp: 12167 (WebCore::RenderTextControlMultiLine::nodeAtPoint): Remove custom hit testing that tried to avoid hitting the placeholder text at the wrong time. 12168 (WebCore::RenderTextControlMultiLine::updateFromElement): Remove code that set the inner text value with the placeholder text. 12169 (WebCore::RenderTextControlMultiLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement. 12170 (WebCore::RenderTextControlMultiLine::textBoxInsetLeft): Added. 12171 (WebCore::RenderTextControlMultiLine::textBoxInsetRight): Added. 12172 * rendering/RenderTextControlMultiLine.h: 12173 * rendering/RenderTextControlSingleLine.cpp: 12174 (WebCore::RenderTextControlSingleLine::updateFromElement): Remove code that set the inner text value with the placeholder text. 12175 (WebCore::RenderTextControlSingleLine::createInnerTextStyle): Remove code that created the inner text style based on the placeholder pseudoelement. 12176 (WebCore::RenderTextControlSingleLine::textBoxInsetLeft): Added. 12177 (WebCore::RenderTextControlSingleLine::textBoxInsetRight): Added. 12178 * rendering/RenderTextControlSingleLine.h: 12179 * rendering/TextControlInnerElements.cpp: Removed custom hit testing that tried to avoid hitting the placeholder text at the wrong time. 12180 12181 2010-11-15 Andreas Kling <kling (a] webkit.org> 12182 12183 Unreviewed buildfix (Qt WebKit2 minimal) 12184 12185 * platform/qt/CookieJarQt.cpp: Add missing <QStringList> include. 12186 12187 2010-11-15 Chris Rogers <crogers (a] google.com> 12188 12189 Reviewed by Kenneth Russell. 12190 12191 Add Event and EventListener hooks for JavaScriptAudioNode and AudioProcessingEvent 12192 https://bugs.webkit.org/show_bug.cgi?id=49357 12193 12194 No new tests since audio API is not yet implemented. 12195 12196 * bindings/js/JSEventCustom.cpp: 12197 (WebCore::toJS): 12198 * bindings/js/JSEventTarget.cpp: 12199 (WebCore::toJS): 12200 * bindings/v8/V8DOMWrapper.cpp: 12201 (WebCore::V8DOMWrapper::convertEventTargetToV8Object): 12202 * bindings/v8/custom/V8EventCustom.cpp: 12203 (WebCore::toV8): 12204 * dom/Event.cpp: 12205 (WebCore::Event::isAudioProcessingEvent): 12206 * dom/Event.h: 12207 * dom/EventNames.h: 12208 * dom/EventTarget.cpp: 12209 (WebCore::EventTarget::toJavaScriptAudioNode): 12210 * dom/EventTarget.h: 12211 12212 2010-11-15 Alexey Proskuryakov <ap (a] apple.com> 12213 12214 Reviewed by Darin Adler. 12215 12216 A minor style fix in StyledElement.cpp. 12217 12218 * dom/StyledElement.cpp: 12219 (WebCore::StyledElement::addCSSProperty): 12220 (WebCore::StyledElement::addCSSImageProperty): 12221 12222 2010-11-15 Alexey Proskuryakov <ap (a] apple.com> 12223 12224 Reviewed by Darin Adler. 12225 12226 https://bugs.webkit.org/show_bug.cgi?id=49565 12227 Remove Attr.style accessor 12228 12229 * dom/Attr.idl: Only keep the accessor for Objective C API. Inspector doesn't seem to need 12230 it any more. 12231 12232 2010-11-15 Beth Dakin <bdakin (a] apple.com> 12233 12234 Reviewed by Darin Adler. 12235 12236 Fix for https://bugs.webkit.org/show_bug.cgi?id=49555 12237 Frame::scalePage() should treat the origin as an absolute 12238 coordinate 12239 -and corresponding- 12240 <rdar://problem/8667138> 12241 12242 * page/Frame.cpp: 12243 (WebCore::Frame::scalePage): 12244 12245 2010-11-15 Dan Bernstein <mitz (a] apple.com> 12246 12247 Reviewed by Darin Adler. 12248 12249 <rdar://problem/8662770> Error image has incorrect size when a custom font is used 12250 12251 Test: fast/images/style-access-during-imageChanged-crash.html 12252 12253 * rendering/RenderImage.cpp: 12254 (WebCore::RenderImage::RenderImage): Added initialization of m_needsToSetSizeForAltText. 12255 (WebCore::RenderImage::imageSizeForError): Factored the non-alt-text dependent size computation 12256 out of setImageSizeForAltText() into this function. 12257 (WebCore::RenderImage::setImageSizeForAltText): Changed to use imageSizeForError(). 12258 (WebCore::RenderImage::styleDidChange): Added. If m_needsToSetSizeForAltText is true, sets the 12259 intrinsic size and calls imageDimensionsChanged() as needed to cause layout or invalidation. 12260 (WebCore::RenderImage::imageChanged): Moved some code from here... 12261 (WebCore::RenderImage::imageDimensionsChanged): ...to here. 12262 * rendering/RenderImage.h: 12263 12264 2010-11-15 Anders Carlsson <andersca (a] apple.com> 12265 12266 Reviewed by Dimitri Glazkov. 12267 12268 ASSERTION (r72003): Assertion failure when running layout tests 12269 https://bugs.webkit.org/show_bug.cgi?id=49561 12270 12271 r72003 added the 'formaction' URL attribute to HTMLButtonElement and HTMLInputElement, 12272 but did not add the attribute to the isURLAttribute which lead to assertion failures 12273 when running the layout tests with a debug build. 12274 12275 * html/HTMLButtonElement.cpp: 12276 (WebCore::HTMLButtonElement::isURLAttribute): 12277 * html/HTMLButtonElement.h: 12278 * html/HTMLInputElement.cpp: 12279 (WebCore::HTMLInputElement::isURLAttribute): 12280 12281 2010-11-15 Alexey Proskuryakov <ap (a] apple.com> 12282 12283 Reviewed by Darin Adler. 12284 12285 https://bugs.webkit.org/show_bug.cgi?id=49559 12286 DOMWindow.getComputedStyle pseudo element argument lacks ConvertUndefinedOrNullToNullString 12287 12288 No observable change in behavior, so no tests. 12289 12290 * page/DOMWindow.idl: Added ConvertUndefinedOrNullToNullString. 12291 12292 2010-11-15 Andreas Kling <kling (a] webkit.org> 12293 12294 Reviewed by Tor Arne Vestb. 12295 12296 [Qt] Make WTF_USE_MEEGOTOUCH available for WebKit2 as well 12297 12298 Move this into WebCore/features.pri which is used by both WebCore and WebKit2. 12299 12300 * WebCore.pro: 12301 * features.pri: 12302 12303 2010-11-15 Martin Robinson <mrobinson (a] igalia.com> 12304 12305 Build fix for GTK+. 12306 12307 * GNUmakefile.am: Add some missing generated files to the source list. 12308 12309 2010-11-15 Kenneth Russell <kbr (a] google.com> 12310 12311 Reviewed by James Robinson. 12312 12313 [chromium] Avoid copying of SkBitmap in LayerRendererChromium 12314 https://bugs.webkit.org/show_bug.cgi?id=49560 12315 12316 Ran CSS 3D content to test. No other new tests. 12317 12318 * platform/graphics/chromium/LayerRendererChromium.cpp: 12319 (WebCore::LayerRendererChromium::updateRootLayerTextureRect): 12320 12321 2010-11-15 Vangelis Kokkevis <vangelis (a] chromium.org> 12322 12323 Reviewed by Kenneth Russell. 12324 12325 [chromium] Fixes layer opacity implementation of composited layers 12326 https://bugs.webkit.org/show_bug.cgi?id=49233 12327 12328 This introduces a fairly drastic change in how LayerRendererChromium draws 12329 composited layers. Layers that have non-zero opacity as well as layers that 12330 clip their descendants (and have non-trivial transforms) are now first 12331 rendered onto off-screen surfaces (RenderSurfaceChromium's). The compositing 12332 operation now consists of two distinct phases: First a hierarchical traversal 12333 of the layer tree to compute the layer transforms, determine what the necessary 12334 RenderSurfaces are and sort layer that preserve-3d based on their z-value. A second 12335 pass goes through all the RenderSurfaces discovered by the first pass and updates 12336 their contents. 12337 Additional significant side-effects of this change are: 12338 1. Depth buffer and depth testing is no longer used. Drawing relies on a painter's 12339 algorithm to render layers with the preserves-3d property from back to front using 12340 the Z coordinate of their center. This will further be improved in the future with 12341 the intoduction of a BSP tree to properly deal with intersecting layers. 12342 2. Compositor no longer uses the stencil buffer to do clipping. Clipping is now performed 12343 by rendering layer subtrees into an offscreen buffer and setting the appropriate 12344 scissor and viewport transformation. 12345 12346 Tests: abs-position-inside-opacity.html (for the opacity implementation) 12347 and the rest of the compositing layout tests to verify that 12348 everything still works. 12349 12350 * WebCore.gypi: 12351 * platform/graphics/chromium/ContentLayerChromium.cpp: 12352 (WebCore::ContentLayerChromium::cleanupResources): 12353 (WebCore::ContentLayerChromium::requiresClippedUpdateRect): 12354 (WebCore::ContentLayerChromium::calculateClippedUpdateRect): 12355 (WebCore::ContentLayerChromium::updateContents): 12356 * platform/graphics/chromium/LayerChromium.cpp: 12357 (WebCore::LayerChromium::LayerChromium): 12358 (WebCore::LayerChromium::cleanupResources): 12359 (WebCore::LayerChromium::createRenderSurface): 12360 (WebCore::LayerChromium::descendantsDrawContent): 12361 (WebCore::LayerChromium::descendantsDrawContentRecursive): 12362 * platform/graphics/chromium/LayerChromium.h: 12363 (WebCore::LayerChromium::drawTransform): 12364 (WebCore::LayerChromium::layerRenderer): 12365 * platform/graphics/chromium/LayerRendererChromium.cpp: 12366 (WebCore::orthoMatrix): 12367 (WebCore::isScaleOrTranslation): 12368 (WebCore::LayerRendererChromium::compareLayerZ): 12369 (WebCore::LayerRendererChromium::LayerRendererChromium): 12370 (WebCore::LayerRendererChromium::prepareToDrawLayers): 12371 (WebCore::LayerRendererChromium::drawLayers): 12372 (WebCore::LayerRendererChromium::updateLayersRecursive): 12373 (WebCore::LayerRendererChromium::useRenderSurface): 12374 (WebCore::LayerRendererChromium::drawLayer): 12375 (WebCore::LayerRendererChromium::setScissorToRect): 12376 (WebCore::LayerRendererChromium::setDrawViewportRect): 12377 (WebCore::LayerRendererChromium::initializeSharedObjects): 12378 (WebCore::LayerRendererChromium::cleanupSharedObjects): 12379 * platform/graphics/chromium/LayerRendererChromium.h: 12380 * platform/graphics/chromium/RenderSurfaceChromium.cpp: Added. 12381 (WebCore::RenderSurfaceChromium::RenderSurfaceChromium): 12382 (WebCore::RenderSurfaceChromium::~RenderSurfaceChromium): 12383 (WebCore::RenderSurfaceChromium::cleanupResources): 12384 (WebCore::RenderSurfaceChromium::layerRenderer): 12385 (WebCore::RenderSurfaceChromium::prepareContentsTexture): 12386 * platform/graphics/chromium/RenderSurfaceChromium.h: Added. 12387 (WebCore::RenderSurfaceChromium::contentRectCenter): 12388 (WebCore::RenderSurfaceChromium::contentRect): 12389 * platform/graphics/chromium/VideoLayerChromium.cpp: 12390 (WebCore::VideoLayerChromium::cleanupResources): 12391 12392 2010-11-15 Martin Robinson <mrobinson (a] igalia.com> 12393 12394 Reviewed by Andreas Kling. 12395 12396 [GTK] gdk_pixbuf_get_from_surface from GtkVersioning.h is broken on GTK+ 2 builds 12397 https://bugs.webkit.org/show_bug.cgi?id=49549 12398 12399 No new tests. This can be verified by loading any existing vertical text test 12400 in GtkLauncher and noticing the lack of CRITICAL GLib exceptions. There's currently 12401 no automatic way of verifying custom cursors. 12402 12403 * platform/gtk/GtkVersioning.c: 12404 (gdk_pixbuf_get_from_surface): Reverse a sanity check in this method to be correct. 12405 12406 2010-11-12 Jer Noble <jer.noble (a] apple.com> 12407 12408 Reviewed by Brady Eidson. 12409 12410 Can't view HTML5 video when running Safari with an authenticated proxy server 12411 <rdar://problem/8351926> 12412 12413 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 12414 (WebCore::MediaPlayerPrivate::createQTMovie): 12415 12416 2010-11-14 Abhishek Arya <inferno (a] chromium.org> 12417 12418 Reviewed by Dimitri Glazkov. 12419 12420 Event dispatch call can blow away the node's renderer initialized 12421 before the call in updateSelectionForMouseDrag function. We need 12422 to initialize it after the call. 12423 https://bugs.webkit.org/show_bug.cgi?id=49524 12424 12425 * page/EventHandler.cpp: 12426 (WebCore::EventHandler::updateSelectionForMouseDrag): 12427 12428 2010-11-15 Patrick Gansterer <paroga (a] webkit.org> 12429 12430 Reviewed by Martin Robinson. 12431 12432 Make ContextShadow compile on all platforms 12433 https://bugs.webkit.org/show_bug.cgi?id=49535 12434 12435 Add a void* typedef for PlatformImage and PlatformContext for unsupported platforms 12436 and move them into the WebCore namespace like all other Platform* typedefs. 12437 12438 * platform/graphics/ContextShadow.h: 12439 12440 2010-11-15 Renata Hodovan <reni (a] webkit.org> 12441 12442 Reviewed by Andreas Kling. 12443 12444 SVGFEImageElement doesn't support dynamic invalidation 12445 https://bugs.webkit.org/show_bug.cgi?id=49536 12446 12447 The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary. 12448 12449 Tests: svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr.html 12450 svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop.html 12451 12452 * svg/SVGFEImageElement.cpp: 12453 (WebCore::SVGFEImageElement::svgAttributeChanged): 12454 * svg/SVGFEImageElement.h: 12455 12456 2010-11-15 Yael Aharon <yael.aharon (a] nokia.com> 12457 12458 Reviewed by Antonio Gomes. 12459 12460 [Qt] Focus ring does not show on focused links. 12461 https://bugs.webkit.org/show_bug.cgi?id=49515 12462 12463 After http://trac.webkit.org/changeset/69766 the focus ring on links is no longer 12464 visible in Qt. 12465 The reason is that Qt always returned true in RenderTheme::supportsFocusRing(), 12466 but until r69766, we did not check that for links. Qt draws its own focus ring 12467 for controls that it draws, but not for links. 12468 Change the return value to false if the style's appearance is not something that Qt 12469 draws by itself or does not support. 12470 Added a Qt specific test result for the new test added in r69766. 12471 12472 * platform/qt/RenderThemeQt.cpp: 12473 (WebCore::RenderThemeQt::supportsFocusRing): 12474 12475 2010-11-15 Dai Mikurube <dmikurube (a] google.com> 12476 12477 Reviewed by Kent Tamura. 12478 12479 Implement formaction, formenctype, formmethod and formtarget attributes for input and button tags 12480 https://bugs.webkit.org/show_bug.cgi?id=49240 12481 12482 Tests: fast/forms/formaction-attribute.html 12483 fast/forms/formmethod-attribute-button-html.html 12484 fast/forms/formmethod-attribute-input-html.html 12485 fast/forms/formtarget-attribute-button-html.html 12486 fast/forms/formtarget-attribute-input-html.html 12487 fast/forms/mailto/formenctype-attribute-button-html.html 12488 fast/forms/mailto/formenctype-attribute-input-html.html 12489 fast/forms/submit-form-attributes.html 12490 12491 * html/HTMLAttributeNames.in: Added formaction, formmethod, formtarget and formenctype attributes 12492 * html/HTMLButtonElement.idl: 12493 * html/HTMLInputElement.idl: 12494 * loader/FormSubmission.cpp: Modified to check the pressed button and its attributes 12495 (WebCore::FormSubmission::Attributes::copyFrom): 12496 (WebCore::FormSubmission::create): 12497 * loader/FormSubmission.h: 12498 12499 2010-11-15 Pavel Feldman <pfeldman (a] chromium.org> 12500 12501 Reviewed by Yury Semikhatsky. 12502 12503 Web Inspector: Do not hide default Ctrl+A behavior on non-Mac. 12504 https://bugs.webkit.org/show_bug.cgi?id=49527 12505 12506 * inspector/front-end/TextPrompt.js: 12507 (WebInspector.TextPrompt.prototype._onKeyDown): 12508 12509 2010-11-15 Ilya Sherman <isherman (a] chromium.org> 12510 12511 Reviewed by Kent Tamura. 12512 12513 Add capability for displaying warnings to autofill popup 12514 Warnings are displayed in dark gray italic. 12515 https://bugs.webkit.org/show_bug.cgi?id=49291 12516 http://code.google.com/p/chromium/issues/detail?id=58509 12517 12518 * platform/chromium/PopupMenuChromium.cpp: 12519 (WebCore::PopupListBox::getRowFont): 12520 Use item-specific font, not just the generic menu font. 12521 (WebCore::PopupListBox::selectIndex): 12522 Updated to clear the selection when hovering over a non-selectable item. 12523 * platform/chromium/PopupMenuChromium.h: Minor cleanup 12524 12525 2010-11-14 David Hyatt <hyatt (a] apple.com> 12526 12527 Back out the italics portion of the previous patch until I can figure out why it 12528 doesn't work. 12529 12530 * css/CSSFontSelector.cpp: 12531 (WebCore::compareFontFaces): 12532 12533 2010-11-14 Kent Tamura <tkent (a] chromium.org> 12534 12535 Reviewed by Dimitri Glazkov. 12536 12537 Improve API for form validation message strings 12538 https://bugs.webkit.org/show_bug.cgi?id=34945 12539 12540 This change introduces three new functions; 12541 validationMessageTypeMismatchFor*Text(). The implementation for each 12542 platform is just a call to validationMessageTypeMismatchText(). 12543 12544 Some validationMessage*() functions have new parameters. The parameters 12545 are ignored in all platforms for now. 12546 12547 This change doesn't change any behavior. However a platform can add 12548 additional information to validation messages. e.g. Changing "type 12549 mismatch" to "Please specify an e-mail address" for <input type=email>. 12550 12551 * html/EmailInputType.cpp: 12552 (WebCore::EmailInputType::typeMismatchText): Call validationMessageTypeMismatchForEmailText() 12553 or validationMessageTypeMismatchForMultipleEmailText(). 12554 * html/EmailInputType.h: 12555 * html/HTMLFormControlElement.h: Add maxLength() and value() to access them from ValidityState. 12556 * html/HTMLInputElement.cpp: Add the following functions to pass extra 12557 information to validation message string functions. 12558 (WebCore::HTMLInputElement::minimumString): 12559 (WebCore::HTMLInputElement::maximumString): 12560 (WebCore::HTMLInputElement::stepBaseString): 12561 (WebCore::HTMLInputElement::stepString): 12562 (WebCore::HTMLInputElement::typeMismatchText): 12563 * html/HTMLInputElement.h: 12564 * html/HTMLTextAreaElement.h: 12565 * html/InputType.cpp: 12566 (WebCore::InputType::typeMismatchText): Call validationMessageTypeMismatchText(). 12567 * html/InputType.h: 12568 * html/URLInputType.cpp: 12569 (WebCore::URLInputType::typeMismatchText): Call validationMessageTypeMismatchForURLText(). 12570 * html/URLInputType.h: 12571 * html/ValidityState.cpp: 12572 (WebCore::ValidityState::validationMessage): 12573 * platform/LocalizedStrings.cpp: 12574 (WebCore::validationMessageTypeMismatchForEmailText): 12575 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12576 (WebCore::validationMessageTypeMismatchForURLText): 12577 (WebCore::validationMessageTooLongText): 12578 (WebCore::validationMessageRangeUnderflowText): 12579 (WebCore::validationMessageRangeOverflowText): 12580 (WebCore::validationMessageStepMismatchText): 12581 * platform/LocalizedStrings.h: 12582 - Add validationMessageTypeMismatchForEmailText(), 12583 validationMessageTypeMismatchForMultipleEmailText() and 12584 validationMessageTypeMismatchForURLText() 12585 - Add length parameters to validationMessageTooLongText(). 12586 - Add the minimum value parameter to validationMessageRangeUnderflowText() 12587 - Add the maximum value parameter to validationMessageRangeOverflowText() 12588 - Add parameters of the base value and the step value to validationMessageStepMismatchText() 12589 * platform/android/LocalizedStringsAndroid.cpp: 12590 (WebCore::validationMessageTypeMismatchForEmailText): 12591 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12592 (WebCore::validationMessageTypeMismatchForURLText): 12593 (WebCore::validationMessageTooLongText): 12594 (WebCore::validationMessageRangeUnderflowText): 12595 (WebCore::validationMessageRangeOverflowText): 12596 (WebCore::validationMessageStepMismatchText): 12597 * platform/brew/LocalizedStringsBrew.cpp: 12598 (WebCore::validationMessageTypeMismatchForEmailText): 12599 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12600 (WebCore::validationMessageTypeMismatchForURLText): 12601 (WebCore::validationMessageTooLongText): 12602 (WebCore::validationMessageRangeUnderflowText): 12603 (WebCore::validationMessageRangeOverflowText): 12604 (WebCore::validationMessageStepMismatchText): 12605 * platform/efl/LocalizedStringsEfl.cpp: 12606 (WebCore::validationMessageRangeOverflowText): 12607 (WebCore::validationMessageRangeUnderflowText): 12608 (WebCore::validationMessageStepMismatchText): 12609 (WebCore::validationMessageTooLongText): 12610 (WebCore::validationMessageTypeMismatchForEmailText): 12611 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12612 (WebCore::validationMessageTypeMismatchForURLText): 12613 * platform/gtk/LocalizedStringsGtk.cpp: 12614 (WebCore::validationMessageTypeMismatchForEmailText): 12615 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12616 (WebCore::validationMessageTypeMismatchForURLText): 12617 (WebCore::validationMessageTooLongText): 12618 (WebCore::validationMessageRangeUnderflowText): 12619 (WebCore::validationMessageRangeOverflowText): 12620 (WebCore::validationMessageStepMismatchText): 12621 * platform/haiku/LocalizedStringsHaiku.cpp: 12622 (WebCore::validationMessageTypeMismatchForEmailText): 12623 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12624 (WebCore::validationMessageTypeMismatchForURLText): 12625 (WebCore::validationMessageTooLongText): 12626 (WebCore::validationMessageRangeUnderflowText): 12627 (WebCore::validationMessageRangeOverflowText): 12628 (WebCore::validationMessageStepMismatchText): 12629 * platform/wx/LocalizedStringsWx.cpp: 12630 (WebCore::validationMessageTypeMismatchForEmailText): 12631 (WebCore::validationMessageTypeMismatchForMultipleEmailText): 12632 (WebCore::validationMessageTypeMismatchForURLText): 12633 (WebCore::validationMessageTooLongText): 12634 (WebCore::validationMessageRangeUnderflowText): 12635 (WebCore::validationMessageRangeOverflowText): 12636 (WebCore::validationMessageStepMismatchText): 12637 12638 2010-11-14 Kent Tamura <tkent (a] chromium.org> 12639 12640 Reviewed by Andreas Kling. 12641 12642 KeyboardEvent::keyIdentifier() should return "const String&" 12643 https://bugs.webkit.org/show_bug.cgi?id=49426 12644 12645 No new tests. This shouldn't change the current behavior. 12646 12647 * dom/KeyboardEvent.h: 12648 (WebCore::KeyboardEvent::keyIdentifier): Change the return type; String -> const String& 12649 * dom/SelectElement.cpp: 12650 (WebCore::SelectElement::menuListDefaultEventHandler): 12651 Change the type of a variable to have keyIdentifier(); String -> const String& 12652 (WebCore::SelectElement::listBoxDefaultEventHandler): ditto. 12653 * html/HTMLInputElement.cpp: 12654 (WebCore::HTMLInputElement::defaultEventHandler): ditto. 12655 (WebCore::HTMLInputElement::handleKeyEventForRange): ditto. 12656 * page/EventHandler.cpp: 12657 (WebCore::EventHandler::handleKeyboardSelectionMovement): ditto. 12658 12659 2010-11-14 Kenichi Ishibashi <bashi (a] google.com> 12660 12661 Reviewed by Kent Tamura. 12662 12663 [HTML5] "form" attribute support for form control elements 12664 https://bugs.webkit.org/show_bug.cgi?id=47813 12665 12666 Adds a list of form-associated elements with form attribute into 12667 the Document class to support form attribute. 12668 Adds a function to determine the right place to locate 12669 form-associated elements with form attribute into 12670 m_associatedElements of HTMLFormElement class. 12671 12672 Tests: fast/forms/form-attribute-elements-order.html 12673 fast/forms/form-attribute-elements-order2.html 12674 fast/forms/form-attribute-elements.html 12675 fast/forms/form-attribute.html 12676 12677 * dom/Document.cpp: 12678 (WebCore::Document::registerFormElementWithFormAttribute): Added. 12679 (WebCore::Document::unregisterFormElementWithFormAttribute): Added. 12680 (WebCore::Document::resetFormElementsOwner): Added. 12681 * dom/Document.h: Added the list for elements with form attribute. 12682 * html/HTMLAttributeNames.in: Added form attribute. 12683 * html/HTMLFormControlElement.cpp: 12684 (WebCore::HTMLFormControlElement::insertedIntoTree): Modified to handle 12685 form attribute. 12686 (WebCore::HTMLFormControlElement::removedFromTree): Ditto. 12687 (WebCore::HTMLFormControlElement::resetFormOwner): Added. 12688 (WebCore::HTMLFormControlElement::attributeChanged): Added. 12689 * html/HTMLFormControlElement.h: 12690 * html/HTMLFormElement.cpp: 12691 (WebCore::HTMLFormElement::HTMLFormElement): Modified to initialize 12692 newly-added variables. 12693 (WebCore::HTMLFormElement::insertedIntoDocument): Modified to reset 12694 form owner of form-associated elements. 12695 (WebCore::HTMLFormElement::removedFromDocument): Ditto. 12696 (WebCore::HTMLFormElement::formElementIndexWithFormAttribute): Added. 12697 (WebCore::HTMLFormElement::formElementIndex): Modified to treat 12698 form-associated elements with form attribute separately. 12699 (WebCore::HTMLFormElement::removeFormElement): Modified to handle 12700 form-associated elements with form attribute. 12701 * html/HTMLFormElement.h: Added three variables to handle form attribute. 12702 * html/HTMLOutputElement.cpp: Removed "FIXME" comment. 12703 (WebCore::HTMLOutputElement::parseMappedAttribute): 12704 * html/HTMLOutputElement.h: Removed setForm(). 12705 12706 2010-11-14 David Hyatt <hyatt (a] apple.com> 12707 12708 Reviewed by Dan Bernstein. 12709 12710 https://bugs.webkit.org/show_bug.cgi?id=49521 12711 12712 REGRESSION svg/W3C-SVG-1.1/fonts-desc-02-t.svg broken by r71979. 12713 12714 Refine the font selection function for @font-face to be smarter about what fonts it prefers. If 12715 a font is labeled as only supporting small-caps, then prefer it to one that claims to support both 12716 normal and small-caps. The specialized font is more likely to be true small-caps and to not rely 12717 on synthesis. 12718 12719 Added the same logic for italic as well. Prefer the font that is specifically restricted to 12720 italic to one that claims it can support anything. 12721 12722 * css/CSSFontSelector.cpp: 12723 (WebCore::compareFontFaces): 12724 12725 2010-11-14 Ryuan Choi <ryuan.choi (a] samsung.com> 12726 12727 Reviewed by Martin Robinson. 12728 12729 [EFL] add pango support 12730 https://bugs.webkit.org/show_bug.cgi?id=46029 12731 12732 Include pango related files. 12733 No new tests; functionality is unchanged. 12734 12735 * CMakeListsEfl.txt: 12736 12737 2010-11-12 Tenghui Zhu <ztenghui (a] google.com> 12738 12739 Reviewed by Andreas Kling. 12740 12741 [V8] Code generation script error in generating the SVGStaticListPropertyTearOff 12742 https://bugs.webkit.org/show_bug.cgi?id=49463 12743 12744 * bindings/scripts/CodeGeneratorV8.pm: The svgNativeType is the one containing 12745 the SVGStaticListPropertyTearOff string, not the svgListPropertyType. 12746 12747 2010-11-14 Patrick Gansterer <paroga (a] webkit.org> 12748 12749 Reviewed by Andreas Kling. 12750 12751 Sort CMakeLists.txt 12752 https://bugs.webkit.org/show_bug.cgi?id=49507 12753 12754 * CMakeLists.txt: 12755 12756 2010-11-13 Patrick Gansterer <paroga (a] webkit.org> 12757 12758 Reviewed by Yury Semikhatsky. 12759 12760 Buildfix for !ENABLE(INSPECTOR) 12761 https://bugs.webkit.org/show_bug.cgi?id=49500 12762 12763 Also unify the position of the condition in the cpp files. 12764 12765 * inspector/ConsoleMessage.cpp: 12766 * inspector/InspectorResourceAgent.cpp: 12767 * inspector/InspectorState.cpp: 12768 * inspector/ScriptCallFrame.cpp: 12769 * inspector/ScriptCallStack.cpp: 12770 12771 2010-11-13 David Hyatt <hyatt (a] apple.com> 12772 12773 Reviewed by Anders Carlsson. 12774 12775 https://bugs.webkit.org/show_bug.cgi?id=49506 12776 12777 Repaint is broken across writing mode boundaries. It's not enough to add in flipped offsets. You have 12778 to flip the rect itself. 12779 12780 Added fast/repaint/repaint-across-writing-mode-boundary.html 12781 12782 * rendering/RenderBox.cpp: 12783 (WebCore::RenderBox::computeRectForRepaint): 12784 12785 2010-11-13 David Hyatt <hyatt (a] apple.com> 12786 12787 Reviewed by Dan Bernstein. 12788 12789 https://bugs.webkit.org/show_bug.cgi?id=49505 12790 12791 REGRESSION: @font-face doesn't work with the small-caps variant. This was broken by the addition of SVG fonts 12792 support long ago. This patch fixes the SVG code so that it doesn't break non-SVG fonts. 12793 12794 Added fast/blockflow/broken-ideograph-small-caps.html 12795 12796 * css/CSSFontFace.cpp: 12797 (WebCore::CSSFontFace::hasSVGFontFaceSource): 12798 * css/CSSFontFace.h: 12799 * css/CSSFontFaceSource.cpp: 12800 (WebCore::CSSFontFaceSource::getFontData): 12801 * css/CSSFontFaceSource.h: 12802 * css/CSSFontSelector.cpp: 12803 (WebCore::CSSFontSelector::addFontFaceRule): 12804 (WebCore::CSSFontSelector::getFontData): 12805 12806 2010-11-13 Dan Bernstein <mitz (a] apple.com> 12807 12808 Reviewed by Dave Hyatt. 12809 12810 fast/text/hyphen* tests have different results on Leopard 12811 https://bugs.webkit.org/show_bug.cgi?id=43296 12812 12813 * platform/text/mac/TextBreakIteratorInternalICUMac.mm: 12814 (WebCore::topLanguagePreference): Changed to look up the value of the AppleLanguages default 12815 through the normal NSUserDefaults search order rather than skipping the application domain. 12816 This makes this function respect DumpRenderTrees setting of the default in the application 12817 domain. 12818 12819 2010-11-13 David Hyatt <hyatt (a] apple.com> 12820 12821 Reviewed by Dan Bernstein. 12822 12823 https://bugs.webkit.org/show_bug.cgi?id=49499 12824 12825 broken-ideographic-font.html causes layout test flakiness in release builds. The reason for this is 12826 that the custom font data for m_brokenIdeographFontData was never getting pruned out of the tree. 12827 The same problem exists for custom small caps fonts, so I made sure that the small caps fonts get 12828 pruned as well. In addition, custom small caps fonts were never getting deleted either. 12829 12830 I also made allowsLigatures in FontPlatformData orientation-independent, and the callers check it 12831 instead. 12832 12833 Unskip fast/blockflow/broken-ideographic-font.html 12834 12835 * platform/graphics/SimpleFontData.cpp: 12836 (WebCore::SimpleFontData::~SimpleFontData): 12837 * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: 12838 (WebCore::SimpleFontData::platformDestroy): 12839 (WebCore::SimpleFontData::smallCapsFontData): 12840 * platform/graphics/chromium/SimpleFontDataLinux.cpp: 12841 (WebCore::SimpleFontData::platformDestroy): 12842 (WebCore::SimpleFontData::smallCapsFontData): 12843 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 12844 (WebCore::FontPlatformData::allowsLigatures): 12845 * platform/graphics/freetype/SimpleFontDataFreeType.cpp: 12846 (WebCore::SimpleFontData::platformDestroy): 12847 (WebCore::SimpleFontData::smallCapsFontData): 12848 * platform/graphics/haiku/SimpleFontDataHaiku.cpp: 12849 (WebCore::SimpleFontData::platformDestroy): 12850 (WebCore::SimpleFontData::smallCapsFontData): 12851 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: 12852 (WebCore::disableLigatures): 12853 * platform/graphics/mac/SimpleFontDataCoreText.cpp: 12854 (WebCore::SimpleFontData::getCFStringAttributes): 12855 * platform/graphics/mac/SimpleFontDataMac.mm: 12856 (WebCore::SimpleFontData::platformDestroy): 12857 * platform/graphics/win/SimpleFontDataWin.cpp: 12858 (WebCore::SimpleFontData::platformDestroy): 12859 (WebCore::SimpleFontData::smallCapsFontData): 12860 * platform/graphics/wx/SimpleFontDataWx.cpp: 12861 (WebCore::SimpleFontData::platformDestroy): 12862 (WebCore::SimpleFontData::smallCapsFontData): 12863 12864 2010-11-13 David Hyatt <hyatt (a] apple.com> 12865 12866 https://bugs.webkit.org/show_bug.cgi?id=49496 12867 12868 Fix broken-ideographic-font.html. I had the font installed locally on my machine, and this covered up 12869 the fact that CoreText was implicitly using it as fallback in the vertical case only. The bots don't have 12870 the font installed locally, and so they showed the bug. 12871 12872 Make sure the GlyphPage is filled with horizontal glyphs for a broken ideograph font, so that CoreText is 12873 willing to fill. 12874 12875 * platform/graphics/mac/SimpleFontDataCoreText.cpp: 12876 (WebCore::SimpleFontData::getCFStringAttributes): 12877 12878 2010-11-13 David Hyatt <hyatt (a] apple.com> 12879 12880 Reviewed by Dan Bernstein. 12881 12882 https://bugs.webkit.org/show_bug.cgi?id=49464 12883 12884 Fix bugs with the orientation of fonts when the font is brought in via fallback, when the font contains no 12885 vertical tables, or when the font is loaded via font-face in both horizontal and vertical forms. 12886 12887 (1) Include orientation as part of the @font-face hashtables so that the fonts are treated as 12888 distinct when used in horizontal and vertical forms. 12889 12890 (2) Let the orientation member of FontPlatformData represent the desired orientation rather than 12891 the supported one. Add an orientation member to SimpleFontData that represents the actual 12892 supported orientation of the font. 12893 12894 (3) For fonts with no vertical tables, add a brokenIdeographicsFont accessor that is invoked when 12895 CJK ideographs are encountered. This is essentially identical to the small caps fallback mechanism 12896 but invoked only for ideographs. The special ideograph font locks the orientation to vertical and 12897 renders the glyphs upright even when the font has no vertical tables. Punctuation and such will 12898 still look funny, and really this is a bug in the font, but at least this way it will be apparent 12899 that the font is to blame. 12900 12901 Added fast/blockflow/broken-ideographic-font.html and fast/blockflow/vertical-font-fallback.html. 12902 12903 * css/CSSFontFaceSource.cpp: 12904 (WebCore::CSSFontFaceSource::getFontData): 12905 * css/CSSSegmentedFontFace.cpp: 12906 (WebCore::CSSSegmentedFontFace::getFontData): 12907 * platform/graphics/Font.cpp: 12908 (WebCore::Font::isCJKIdeograph): 12909 * platform/graphics/Font.h: 12910 * platform/graphics/FontFastPath.cpp: 12911 (WebCore::Font::glyphDataForCharacter): 12912 * platform/graphics/SimpleFontData.cpp: 12913 (WebCore::SimpleFontData::SimpleFontData): 12914 (WebCore::SimpleFontData::~SimpleFontData): 12915 (WebCore::SimpleFontData::brokenIdeographFontData): 12916 * platform/graphics/SimpleFontData.h: 12917 (WebCore::SimpleFontData::orientation): 12918 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 12919 (WebCore::FontPlatformData::FontPlatformData): 12920 * platform/graphics/mac/FontMac.mm: 12921 (WebCore::showGlyphsWithAdvances): 12922 * platform/graphics/mac/SimpleFontDataMac.mm: 12923 (WebCore::SimpleFontData::platformInit): 12924 (WebCore::SimpleFontData::platformBoundsForGlyph): 12925 (WebCore::SimpleFontData::platformWidthForGlyph): 12926 12927 2010-11-13 Rob Buis <rwlbuis (a] gmail.com> 12928 12929 Reviewed by Dirk Schulze. 12930 12931 requiredFeatures does not adapt to SVGStringList changes 12932 https://bugs.webkit.org/show_bug.cgi?id=40887 12933 12934 Centralize logic of handling of SVGElement validity changes. 12935 The logic is to detach the SVGElement when changing from valid 12936 to invalid, and to attach when changing from invalid to valid. 12937 12938 Tests: svg/dynamic-updates/SVGCircleElement-dom-requiredFeatures.html 12939 svg/dynamic-updates/SVGCircleElement-svgdom-requiredFeatures.html 12940 svg/dynamic-updates/SVGEllipseElement-dom-requiredFeatures.html 12941 svg/dynamic-updates/SVGEllipseElement-svgdom-requiredFeatures.html 12942 svg/dynamic-updates/SVGForeignObjectElement-dom-requiredFeatures.html 12943 svg/dynamic-updates/SVGForeignObjectElement-svgdom-requiredFeatures.html 12944 svg/dynamic-updates/SVGGElement-dom-requiredFeatures.html 12945 svg/dynamic-updates/SVGGElement-svgdom-requiredFeatures.html 12946 svg/dynamic-updates/SVGImageElement-dom-requiredFeatures.html 12947 svg/dynamic-updates/SVGImageElement-svgdom-requiredFeatures.html 12948 svg/dynamic-updates/SVGLineElement-dom-requiredFeatures.html 12949 svg/dynamic-updates/SVGLineElement-svgdom-requiredFeatures.html 12950 svg/dynamic-updates/SVGPathElement-dom-requiredFeatures.html 12951 svg/dynamic-updates/SVGPathElement-svgdom-requiredFeatures.html 12952 svg/dynamic-updates/SVGPolygonElement-dom-requiredFeatures.html 12953 svg/dynamic-updates/SVGPolygonElement-svgdom-requiredFeatures.html 12954 svg/dynamic-updates/SVGPolylineElement-dom-requiredFeatures.html 12955 svg/dynamic-updates/SVGPolylineElement-svgdom-requiredFeatures.html 12956 svg/dynamic-updates/SVGRectElement-dom-requiredFeatures.html 12957 svg/dynamic-updates/SVGRectElement-svgdom-requiredFeatures.html 12958 svg/dynamic-updates/SVGSVGElement-dom-requiredFeatures.html 12959 svg/dynamic-updates/SVGSVGElement-svgdom-requiredFeatures.html 12960 svg/dynamic-updates/SVGTextElement-dom-requiredFeatures.html 12961 svg/dynamic-updates/SVGTextElement-svgdom-requiredFeatures.html 12962 svg/dynamic-updates/SVGUseElement-dom-requiredFeatures.html 12963 svg/dynamic-updates/SVGUseElement-svgdom-requiredFeatures.html 12964 12965 * svg/SVGCircleElement.cpp: 12966 (WebCore::SVGCircleElement::svgAttributeChanged): 12967 * svg/SVGEllipseElement.cpp: 12968 (WebCore::SVGEllipseElement::svgAttributeChanged): 12969 * svg/SVGForeignObjectElement.cpp: 12970 (WebCore::SVGForeignObjectElement::svgAttributeChanged): 12971 * svg/SVGGElement.cpp: 12972 (WebCore::SVGGElement::svgAttributeChanged): 12973 * svg/SVGImageElement.cpp: 12974 (WebCore::SVGImageElement::svgAttributeChanged): 12975 * svg/SVGLineElement.cpp: 12976 (WebCore::SVGLineElement::svgAttributeChanged): 12977 * svg/SVGPathElement.cpp: 12978 (WebCore::SVGPathElement::svgAttributeChanged): 12979 * svg/SVGPolyElement.cpp: 12980 (WebCore::SVGPolyElement::svgAttributeChanged): 12981 * svg/SVGRectElement.cpp: 12982 (WebCore::SVGRectElement::svgAttributeChanged): 12983 * svg/SVGSVGElement.cpp: 12984 (WebCore::SVGSVGElement::svgAttributeChanged): 12985 * svg/SVGTests.cpp: 12986 (WebCore::knownAttribute): 12987 (WebCore::SVGTests::isKnownAttribute): 12988 (WebCore::SVGTests::handleAttributeChange): Centralized handling of SVGElement validity changes. 12989 * svg/SVGTests.h: 12990 * svg/SVGTextContentElement.cpp: 12991 (WebCore::SVGTextContentElement::svgAttributeChanged): 12992 (WebCore::SVGTextContentElement::isKnownAttribute): 12993 * svg/SVGTextContentElement.h: 12994 * svg/SVGUseElement.cpp: 12995 (WebCore::SVGUseElement::svgAttributeChanged): 12996 12997 2010-11-13 Andrey Kosyakov <caseq (a] chromium.org> 12998 12999 Reviewed by Pavel Feldman. 13000 13001 Web Inspector: [refactoring] support Views in TabbedPane and streamline tab selection in resource view 13002 https://bugs.webkit.org/show_bug.cgi?id=49493 13003 13004 * inspector/front-end/NetworkPanel.js: 13005 (WebInspector.NetworkPanel.prototype._showResource): 13006 * inspector/front-end/ResourceView.js: 13007 (WebInspector.ResourceView): 13008 (WebInspector.ResourceView.prototype.selectContentTab): 13009 (WebInspector.ResourceView.prototype._selectTab): 13010 (WebInspector.ResourceView.prototype._refreshCookies): 13011 (WebInspector.ResourceCookiesTab.prototype.show): 13012 * inspector/front-end/StoragePanel.js: 13013 (WebInspector.StoragePanel.prototype.showResource): 13014 * inspector/front-end/TabbedPane.js: 13015 (WebInspector.TabbedPane.prototype.appendTab): 13016 (WebInspector.TabbedPane.prototype.hasTab): 13017 (WebInspector.TabbedPane.prototype.selectTabById): 13018 (WebInspector.TabbedPane.prototype._hideTab): 13019 (WebInspector.TabbedPane.prototype._showTab): 13020 * inspector/front-end/inspector.css: 13021 (.resource-view-cookies): 13022 (.resource-view-cookies.visible): 13023 13024 2010-11-13 Yury Semikhatsky <yurys (a] chromium.org> 13025 13026 Reviewed by Pavel Feldman. 13027 13028 REGRESSION(71515): Web Inspector: Safari crash calling console.log when Log JavaScript Exceptions to Console is checked 13029 https://bugs.webkit.org/show_bug.cgi?id=49362 13030 13031 * page/Console.cpp: 13032 (WebCore::Console::addMessage): avoid accessing ScriptArguments and ScriptCallStack after their ownership 13033 has been passed to the inspector. 13034 13035 2010-11-13 Yury Semikhatsky <yurys (a] chromium.org> 13036 13037 Reviewed by Pavel Feldman. 13038 13039 Web Inspector: DOM event listener name is cropped in Elements panel 13040 https://bugs.webkit.org/show_bug.cgi?id=49387 13041 13042 * inspector/front-end/inspector.css: 13043 (.event-bar): use margin-left instead of left to fit child node into its parent 13044 13045 2010-11-13 Ilya Sherman <isherman (a] chromium.org> 13046 13047 Reviewed by Shinichiro Hamaji. 13048 13049 Fixes regression from previous patch -- computes y offsets for elements 13050 that are scrolled out of the window. 13051 https://bugs.webkit.org/show_bug.cgi?id=49306 13052 13053 * manual-tests/select-scroll.html: Added. 13054 * platform/chromium/PopupMenuChromium.cpp: 13055 (WebCore::PopupListBox::layout): 13056 13057 2010-11-12 Daniel Bates <dbates (a] rim.com> 13058 13059 Reviewed by Adam Barth. 13060 13061 Transferred <iframe>s may not have a unique internal name 13062 https://bugs.webkit.org/show_bug.cgi?id=48768 13063 13064 Fixes an issue where an <iframe> that is transferred from 13065 document A to document B, where A != B, may not have a 13066 unique internal name in B. 13067 13068 Test: fast/frames/iframe-reparenting-unique-name.html 13069 13070 * html/HTMLFrameElementBase.cpp: 13071 (WebCore::HTMLFrameElementBase::setNameAndOpenURL): Inlined code from 13072 HTMLFrameElementBase::setName() so that we can remove setName(), which 13073 was only called being called by HTMLFrameElementBase::setNameAndOpenURL(). 13074 * html/HTMLFrameElementBase.h: Removed HTMLFrameElementBase::setName(). 13075 * html/HTMLFrameOwnerElement.h: Removed HTMLFrameOwnerElement::setName(). 13076 * page/Frame.cpp: 13077 (WebCore::Frame::transferChildFrameToNewDocument): Modified to call FrameTree::transferChild(). 13078 * page/FrameTree.cpp: 13079 (WebCore::FrameTree::transferChild): Added. 13080 (WebCore::FrameTree::appendChild): Moved the majority of the code into FrameTree::actuallyAppendChild(). 13081 (WebCore::FrameTree::actuallyAppendChild): Added. 13082 * page/FrameTree.h: 13083 13084 2010-11-12 Joseph Pecoraro <joepeck (a] webkit.org> 13085 13086 Reviewed by Alexey Proskuryakov. 13087 13088 Some FrameLoader.h Cleanup 13089 https://bugs.webkit.org/show_bug.cgi?id=49484 13090 13091 Removed function signatures without any implementation. The functions 13092 used to exist, and were nicely refactored into PageCache in r60688 and 13093 the signatures were left behind. 13094 13095 Removed function signature setLoadType. Added in r17238 back when the 13096 file was named WebFrameLoader, and the implementation was lost during 13097 the transition from its mm implementation. 13098 13099 Removed function signature updateHistoryAfterClientRedirect. Implementation 13100 and call points were removed in r18541 but the signature was left behind, 13101 and jumped files! 13102 13103 Removed unused debug variable m_didDispatchDidCommitLoad. It was added 13104 and used in Assertions in r28399. It was removed soon after, in r28464 13105 because they were, "firing like crazy. Not sure why yet." It was 13106 never used again. 13107 13108 Added const qualifier and moved interruptionForPolicyChangeError to 13109 be more like its buddies. 13110 13111 * loader/FrameLoader.cpp: 13112 (WebCore::FrameLoader::FrameLoader): 13113 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): 13114 (WebCore::FrameLoader::interruptionForPolicyChangeError): 13115 (WebCore::FrameLoader::dispatchDidCommitLoad): 13116 * loader/FrameLoader.h: 13117 13118 2010-11-12 Yael Aharon <yael.aharon (a] nokia.com> 13119 13120 Reviewed by David Hyatt. 13121 13122 Spatial Navigation: Cannot focus on some ContainerNode 13123 https://bugs.webkit.org/show_bug.cgi?id=48393 13124 13125 ContainerNode::getLowerRightCorner() assumes that the lowest right corner of its last child 13126 is its own lowest right corner. If that child is an empty text node after an image, it does 13127 not have size and position information, so we should go to the previous child. 13128 13129 Tests: fast/events/spatial-navigation/snav-container-only-white-space.html 13130 fast/events/spatial-navigation/snav-container-white-space.html 13131 13132 * dom/ContainerNode.cpp: 13133 (WebCore::ContainerNode::getLowerRightCorner): 13134 13135 2010-11-12 James Simonsen <simonjam (a] chromium.org> 13136 13137 Reviewed by Darin Fisher. 13138 13139 [Web Timing] Rename interfaces: 13140 - Navigation -> PerformanceNavigation 13141 - Timing -> PerformanceTiming 13142 https://bugs.webkit.org/show_bug.cgi?id=48919 13143 13144 * DerivedSources.cpp: 13145 * DerivedSources.make: 13146 * GNUmakefile.am: 13147 * WebCore.gypi: 13148 * WebCore.vcproj/WebCore.vcproj: 13149 * WebCore.xcodeproj/project.pbxproj: 13150 * page/Performance.cpp: 13151 (WebCore::Performance::navigation): 13152 (WebCore::Performance::timing): 13153 * page/Performance.h: 13154 * page/Performance.idl: 13155 * page/PerformanceNavigation.cpp: Renamed from WebCore/page/Navigation.cpp. 13156 (WebCore::PerformanceNavigation::PerformanceNavigation): 13157 (WebCore::PerformanceNavigation::frame): 13158 (WebCore::PerformanceNavigation::disconnectFrame): 13159 (WebCore::PerformanceNavigation::type): 13160 (WebCore::PerformanceNavigation::redirectCount): 13161 * page/PerformanceNavigation.h: Renamed from WebCore/page/Navigation.h. 13162 (WebCore::PerformanceNavigation::create): 13163 * page/PerformanceNavigation.idl: Renamed from WebCore/page/Navigation.idl. 13164 * page/PerformanceTiming.cpp: Renamed from WebCore/page/Timing.cpp. 13165 (WebCore::toIntegerMilliseconds): 13166 (WebCore::getPossiblySkewedTimeInKnownRange): 13167 (WebCore::PerformanceTiming::PerformanceTiming): 13168 (WebCore::PerformanceTiming::frame): 13169 (WebCore::PerformanceTiming::disconnectFrame): 13170 (WebCore::PerformanceTiming::navigationStart): 13171 (WebCore::PerformanceTiming::unloadEventEnd): 13172 (WebCore::PerformanceTiming::redirectStart): 13173 (WebCore::PerformanceTiming::redirectEnd): 13174 (WebCore::PerformanceTiming::fetchStart): 13175 (WebCore::PerformanceTiming::domainLookupStart): 13176 (WebCore::PerformanceTiming::domainLookupEnd): 13177 (WebCore::PerformanceTiming::connectStart): 13178 (WebCore::PerformanceTiming::connectEnd): 13179 (WebCore::PerformanceTiming::requestStart): 13180 (WebCore::PerformanceTiming::requestEnd): 13181 (WebCore::PerformanceTiming::responseStart): 13182 (WebCore::PerformanceTiming::responseEnd): 13183 (WebCore::PerformanceTiming::domLoading): 13184 (WebCore::PerformanceTiming::domInteractive): 13185 (WebCore::PerformanceTiming::domContentLoaded): 13186 (WebCore::PerformanceTiming::domComplete): 13187 (WebCore::PerformanceTiming::loadEventStart): 13188 (WebCore::PerformanceTiming::loadEventEnd): 13189 (WebCore::PerformanceTiming::documentLoader): 13190 (WebCore::PerformanceTiming::documentTiming): 13191 (WebCore::PerformanceTiming::documentLoadTiming): 13192 (WebCore::PerformanceTiming::resourceLoadTiming): 13193 (WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): 13194 * page/PerformanceTiming.h: Renamed from WebCore/page/Timing.h. 13195 (WebCore::PerformanceTiming::create): 13196 * page/PerformanceTiming.idl: Renamed from WebCore/page/Timing.idl. 13197 13198 2010-11-12 Eric Carlson <eric.carlson (a] apple.com> 13199 13200 Reviewed by Simon Fraser. 13201 13202 Remove unused code from HTMLMediaElement 13203 https://bugs.webkit.org/show_bug.cgi?id=49451 13204 13205 Just removing code, so no new tests. 13206 13207 * html/HTMLMediaElement.cpp: Removed unused functions. 13208 * html/HTMLMediaElement.h: 13209 13210 2010-11-12 Ryosuke Niwa <rniwa (a] webkit.org> 13211 13212 Unreviewed Xcode project fix. 13213 13214 * WebCore.xcodeproj/project.pbxproj: 13215 13216 2010-11-12 Alexey Proskuryakov <ap (a] apple.com> 13217 13218 Reviewed by Simon Fraser. 13219 13220 https://bugs.webkit.org/show_bug.cgi?id=49473 13221 WebKitCSSMatrix shouldn't inherit from StyleBase 13222 13223 No change in behavior, so no tests. 13224 13225 * css/WebKitCSSMatrix.cpp: 13226 (WebCore::WebKitCSSMatrix::WebKitCSSMatrix): We don't inherit from StyleBase any more, so 13227 no need to initialize always-null parent. 13228 (WebCore::WebKitCSSMatrix::setMatrixValue): Since there was never a parent, useStrictParsing() 13229 just returned true. 13230 13231 * css/WebKitCSSMatrix.h: Just inherit from RefCounted<WebKitCSSMatrix>. Removed unused default 13232 constructor and copy constructor. 13233 13234 * html/canvas/WebGLRenderingContext.h: Removed an unnneded forward declaration. 13235 13236 2010-11-12 Helder Correia <helder (a] sencha.com> 13237 13238 Reviewed by Andreas Kling. 13239 13240 [Qt] Path::addArc() does not set right angle direction on full arcs 13241 https://bugs.webkit.org/show_bug.cgi?id=49138 13242 13243 Ensure correctness of nonzero winding rule for full arc paths. 13244 Invert the sign of the span if the direction is counterclockwise. 13245 13246 Test: fast/canvas/canvas-arc-360-winding.html 13247 13248 * platform/graphics/qt/PathQt.cpp: 13249 (WebCore::Path::addArc): 13250 13251 2010-11-05 Dimitri Glazkov <dglazkov (a] chromium.org> 13252 13253 Reviewed by Darin Adler. 13254 13255 Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch. 13256 https://bugs.webkit.org/show_bug.cgi?id=46015 13257 13258 Test: fast/events/shadow-boundary-crossing-2.html 13259 13260 This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically 13261 for DOMWindow), an abstraction that carries information around dispatching an event for any given Node. 13262 13263 This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to 13264 appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside. 13265 13266 * Android.mk: Added EventContext, WindowEventContext files. 13267 * CMakeLists.txt: Ditto. 13268 * GNUmakefile.am: Ditto. 13269 * WebCore.gypi: Ditto. 13270 * WebCore.pro: Ditto. 13271 * WebCore.xcodeproj/project.pbxproj: Ditto. 13272 * WebCore.vcproj/WebCore.vcproj: Ditto. 13273 * dom/ContainerNode.cpp: 13274 (WebCore::notifyChildInserted): Changed to be shadow DOM-aware. 13275 * dom/EventContext.cpp: Added. 13276 * dom/EventContext.h: Added. 13277 * dom/Node.cpp: 13278 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware. 13279 (WebCore::Node::createRendererIfNeeded): Ditto. 13280 (WebCore::Node::parentOrHostNode): Added new helper method. 13281 (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware. 13282 (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one. 13283 (WebCore::Node::getEventAncestors): Renamed and refactored to collect a vector of EventContexts. 13284 (WebCore::Node::topEventContext): Added. 13285 (WebCore::eventHasListeners): Changed to use EventContexts. 13286 (WebCore::Node::dispatchGenericEvent): Ditto. 13287 * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl, 13288 and changed signature of eventAncestors to use EventContexts. 13289 * dom/Text.cpp: 13290 (WebCore::Text::createRenderer): Changed to be shadow DOM-aware. 13291 * dom/WindowEventContext.cpp: Added. 13292 * dom/WindowEventContext.h: Added. 13293 * inspector/InspectorDOMAgent.cpp: 13294 (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts. 13295 * page/EventHandler.cpp: 13296 (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary. 13297 * rendering/RenderTextControlMultiLine.cpp: 13298 (WebCore::RenderTextControlMultiLine::subtreeHasChanged): Removed event invocation that's 13299 no longer necessary. 13300 * rendering/ShadowElement.h: Made m_shadowParent a RefPtr to avoid stale references when parent 13301 is deleted. 13302 * rendering/TextControlInnerElements.cpp: 13303 (WebCore::TextControlInnerTextElement::defaultEventHandler): Flipped the condition back 13304 from where it was prior to r60418. 13305 * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed. 13306 * svg/SVGElement.h: Ditto. 13307 13308 2010-11-12 Ryuan Choi <ryuan.choi (a] samsung.com> 13309 13310 Reviewed by Martin Robinson. 13311 13312 [GTK] Remove unnecessary header for FontPlatformDataPango.cpp 13313 https://bugs.webkit.org/show_bug.cgi?id=46029 13314 13315 Remove unnecessary header includes. 13316 No new tests, as there's no functionality. 13317 13318 * platform/graphics/pango/FontPlatformDataPango.cpp: 13319 13320 2010-11-11 Abhishek Arya <inferno (a] chromium.org> 13321 13322 Reviewed by Adam Barth. 13323 13324 Not allow drag and drop across different origins. 13325 https://bugs.webkit.org/show_bug.cgi?id=49098 13326 13327 Test: http/tests/security/drag-drop-different-origin.html 13328 13329 * page/DragController.cpp: 13330 (WebCore::DragController::tryDocumentDrag): 13331 * page/SecurityOrigin.cpp: 13332 (WebCore::SecurityOrigin::canDropOnTarget): 13333 * page/SecurityOrigin.h: 13334 13335 2010-11-11 Alexander Pavlov <apavlov (a] chromium.org> 13336 13337 Reviewed by Yury Semikhatsky. 13338 13339 Web Inspector: Inspect element tooltip obscures element metrics 13340 https://bugs.webkit.org/show_bug.cgi?id=47822 13341 13342 * inspector/InspectorController.cpp: 13343 (WebCore::InspectorController::drawNodeHighlight): 13344 (WebCore::InspectorController::drawElementTitle): 13345 13346 2010-11-12 Luiz Agostini <luiz.agostini (a] openbossa.org> 13347 13348 Reviewed by Kenneth Rohde Christiansen. 13349 13350 [Qt] Button's background style from default Qt Mobile Theme is overriding facebook's button style 13351 https://bugs.webkit.org/show_bug.cgi?id=48198 13352 13353 Instead of creating gradients that goes from white to grey and cover the whole element the gradients 13354 are created by varying the alpha channel of a dark color. This way the effect will not override the 13355 background color of the elements. 13356 13357 * css/themeQtMobile.css: 13358 13359 2010-11-12 Justin Schuh <jschuh (a] chromium.org> 13360 13361 Reviewed by Adam Barth. 13362 13363 Use a RefPtr inside ContainerNode::willRemove loop 13364 https://bugs.webkit.org/show_bug.cgi?id=49237 13365 13366 Test: fast/innerHTML/innerHTML-iframe.html 13367 13368 * dom/ContainerNode.cpp: 13369 (WebCore::ContainerNode::willRemove): 13370 13371 2010-11-12 Pavel Feldman <pfeldman (a] chromium.org> 13372 13373 Reviewed by Yury Semikhatsky. 13374 13375 Web Inspector: add more event listener breakpoint types, add support for regular breakpoint hit state, beautify hit rendering. 13376 https://bugs.webkit.org/show_bug.cgi?id=49130 13377 13378 * English.lproj/localizedStrings.js: 13379 * inspector/front-end/BreakpointManager.js: 13380 (WebInspector.BreakpointManager.prototype.debuggerPaused): 13381 (WebInspector.Breakpoint.jsBreakpointId): 13382 (WebInspector.Breakpoint.prototype.get id): 13383 * inspector/front-end/BreakpointsSidebarPane.js: 13384 (WebInspector.EventListenerBreakpointsSidebarPane): 13385 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory): 13386 * inspector/front-end/CallStackSidebarPane.js: 13387 (WebInspector.CallStackSidebarPane.prototype._breakpointHit): don't call populateStatusMessage for JS breakpoints 13388 since there is no specific message in that case. 13389 * inspector/front-end/ScriptsPanel.js: 13390 (WebInspector.ScriptsPanel): 13391 (WebInspector.ScriptsPanel.prototype.reset): 13392 * inspector/front-end/inspector.css: 13393 (#elements-sidebar): 13394 (.pane > .body): 13395 (#scripts-sidebar): 13396 (li.breakpoint-hit .breakpoint-hit-marker): 13397 13398 2010-11-12 Andrey Kosyakov <caseq (a] chromium.org> 13399 13400 Reviewed by Yury Semikhatsky. 13401 13402 Web Inspector: [Extensions API] [refactoring] generate public API interfaces automatically 13403 https://bugs.webkit.org/show_bug.cgi?id=49441 13404 13405 * inspector/front-end/ExtensionAPI.js: 13406 (WebInspector.injectedExtensionAPI.PanelImpl): 13407 (WebInspector.injectedExtensionAPI): 13408 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPane): 13409 (WebInspector.injectedExtensionAPI.AuditCategoryImpl): 13410 (WebInspector.injectedExtensionAPI.AuditResultImpl): 13411 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity): 13412 (WebInspector.injectedExtensionAPI.): 13413 13414 2010-11-12 Renata Hodovan <reni (a] webkit.org> 13415 13416 Reviewed by Nikolas Zimmermann. 13417 13418 SVGFEDisplacementMapElement doesn't support dynamic invalidation 13419 https://bugs.webkit.org/show_bug.cgi?id=49430 13420 13421 The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary. 13422 13423 Tests: svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr.html 13424 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr.html 13425 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr.html 13426 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr.html 13427 svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr.html 13428 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop.html 13429 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop.html 13430 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop.html 13431 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop.html 13432 svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop.html 13433 13434 * svg/SVGFEDisplacementMapElement.cpp: 13435 (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged): 13436 * svg/SVGFEDisplacementMapElement.h: 13437 13438 2010-11-12 Andrey Kosyakov <caseq (a] chromium.org> 13439 13440 Reviewed by Yury Semikhatsky. 13441 13442 Web Inspector: [refactoring] do not use absolute positioning for tabbed panes 13443 https://bugs.webkit.org/show_bug.cgi?id=49439 13444 13445 * inspector/front-end/TabbedPane.js: 13446 (WebInspector.TabbedPane): 13447 (WebInspector.TabbedPane.prototype.appendTab): 13448 * inspector/front-end/inspector.css: 13449 (.resource-view.visible): 13450 (.resource-view .tabbed-pane-header): 13451 (.resource-view-cookies): 13452 (.tabbed-pane): 13453 (.tabbed-pane-content): 13454 * inspector/front-end/networkPanel.css: 13455 13456 2010-11-12 John Knottenbelt <jknotten (a] chromium.org> 13457 13458 Reviewed by Steve Block. 13459 13460 Rename GeolocationControllerClient to GeolocationClient. 13461 https://bugs.webkit.org/show_bug.cgi?id=49259 13462 13463 No new tests, renaming only. 13464 13465 * GNUmakefile.am: 13466 * WebCore.gypi: 13467 * WebCore.order: 13468 * WebCore.vcproj/WebCore.vcproj: 13469 * WebCore.xcodeproj/project.pbxproj: 13470 * page/GeolocationClient.h: Renamed from WebCore/page/GeolocationControllerClient.h. 13471 (WebCore::GeolocationClient::~GeolocationClient): 13472 * page/GeolocationController.cpp: 13473 (WebCore::GeolocationController::GeolocationController): 13474 * page/GeolocationController.h: 13475 * page/Page.h: 13476 13477 2010-11-12 Ilya Sherman <isherman (a] chromium.org> 13478 13479 Reviewed by Eric Seidel. 13480 13481 Remove some trailing whitespace 13482 https://bugs.webkit.org/show_bug.cgi?id=49433 13483 13484 * platform/PopupMenuClient.h: 13485 * platform/chromium/PopupMenuChromium.cpp: 13486 (WebCore::PopupContainer::show): 13487 (WebCore::PopupListBox::paintRow): 13488 (WebCore::PopupListBox::scrollToRevealRow): 13489 * platform/chromium/PopupMenuChromium.h: 13490 * platform/chromium/SearchPopupMenuChromium.cpp: 13491 * rendering/RenderMenuList.h: 13492 (WebCore::RenderMenuList::toRenderMenuList): 13493 * rendering/RenderTextControlSingleLine.h: 13494 (WebCore::toRenderTextControlSingleLine): 13495 13496 2010-11-12 Ryosuke Niwa <rniwa (a] webkit.org> 13497 13498 Reviewed by Csaba Osztrogonc. 13499 13500 [qt] script-clone tests added in r71895 fails on qt platform 13501 https://bugs.webkit.org/show_bug.cgi?id=49429 13502 13503 Fixed parseEndElement to call ScriptElement's executeScript as supposed to that of ScriptController. 13504 13505 * dom/XMLDocumentParserQt.cpp: 13506 (WebCore::XMLDocumentParser::parseEndElement): 13507 13508 2010-11-05 MORITA Hajime <morrita (a] google.com> 13509 13510 Reviewed by Kent Tamura. 13511 13512 Refactoring: Return values of TextCheckingHelper::paragraphAlignedRange should form a class. 13513 https://bugs.webkit.org/show_bug.cgi?id=49053 13514 13515 Replaced paragraphAlignedRange() function call into 13516 TextCheckingParagraph class. The class encapsulates a range of a 13517 paragraph, and its relation within associated checking range. 13518 Instance variables of the class are computed lazily. So we can save unnecessary 13519 memory allocation and DOM tree traversal. 13520 13521 No new tests, no behavior change. 13522 13523 * editing/Editor.cpp: 13524 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced paragraphAlignedRange() call. 13525 (WebCore::Editor::changeBackToReplacedString): Replaced paragraphAlignedRange() call. 13526 * editing/TextCheckingHelper.cpp: 13527 (WebCore::expandToParagraphBoundary): 13528 (WebCore::TextCheckingParagraph::TextCheckingParagraph): 13529 (WebCore::TextCheckingParagraph::~TextCheckingParagraph): 13530 (WebCore::TextCheckingParagraph::expandRangeToNextEnd): 13531 (WebCore::TextCheckingParagraph::invalidateParagraphRangeValues): 13532 (WebCore::TextCheckingParagraph::rangeLength): 13533 (WebCore::TextCheckingParagraph::paragraphRange): 13534 (WebCore::TextCheckingParagraph::subrange): 13535 (WebCore::TextCheckingParagraph::offsetTo): 13536 (WebCore::TextCheckingParagraph::isEmpty): 13537 (WebCore::TextCheckingParagraph::offsetAsRange): 13538 (WebCore::TextCheckingParagraph::text): 13539 (WebCore::TextCheckingParagraph::checkingStart): 13540 (WebCore::TextCheckingParagraph::checkingEnd): 13541 (WebCore::TextCheckingParagraph::checkingLength): 13542 (WebCore::TextCheckingHelper::findFirstBadGrammar): Replaced paragraphAlignedRange() call. 13543 (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Replaced paragraphAlignedRange() call. 13544 * editing/TextCheckingHelper.h: 13545 (WebCore::TextCheckingParagraph::textLength): 13546 (WebCore::TextCheckingParagraph::textSubstring): 13547 (WebCore::TextCheckingParagraph::textCharacters): 13548 (WebCore::TextCheckingParagraph::textCharAt): 13549 (WebCore::TextCheckingParagraph::checkingSubstring): 13550 (WebCore::TextCheckingParagraph::checkingRangeMatches): 13551 (WebCore::TextCheckingParagraph::isCheckingRangeCoveredBy): 13552 (WebCore::TextCheckingParagraph::checkingRangeCovers): 13553 (WebCore::TextCheckingParagraph::checkingRange): 13554 (WebCore::TextCheckingParagraph::isTextEmpty): 13555 (WebCore::TextCheckingParagraph::isRangeEmpty): 13556 13557 2010-11-11 Ryosuke Niwa <rniwa (a] webkit.org> 13558 13559 Reviewed by Darin Adler. 13560 13561 Script runs more than once after a clone 13562 https://bugs.webkit.org/show_bug.cgi?id=48966 13563 13564 The bug was caused by cloneElementWithoutChildren's not propagating isEvaluated flag, 13565 which indicates whether or not the script has already started, and the fact 13566 neither HTMLScriptRunner nor XMLDocumentParser was setting isEvaluated flag to true. 13567 13568 Fixed the bug by making cloneElementWithoutChildren call a virtual cloneElementWithoutAttributesAndChildren, 13569 and override it in HTMLScriptElement and SVGScriptElement to propagate isEvaluated flag, 13570 and replacing direct access to ScriptController by a call to new ScriptElementData::executeScript, 13571 which updates the isEvaluated flag properly. 13572 13573 See also: http://www.whatwg.org/specs/web-apps/current-work/#already-started 13574 13575 Tests: fast/dom/script-clone-rerun-self.html 13576 fast/dom/script-clone-rerun.html 13577 svg/dom/SVGScriptElement/script-clone-rerun-self.svg 13578 svg/dom/SVGScriptElement/script-clone-rerun.svg 13579 13580 * dom/Element.cpp: 13581 (WebCore::Element::cloneElementWithoutChildren): Calls cloneElementWithoutChildren. 13582 (WebCore::Element::cloneElementWithoutAttributesAndChildren): Extracted from cloneElementWithoutChildren. 13583 * dom/Element.h: 13584 * dom/ScriptElement.cpp: 13585 (WebCore::ScriptElementData::ScriptElementData): Added isEvaluated flag to the argument list. 13586 (WebCore::ScriptElementData::evaluateScript): Extracted from HTMLScriptRunner::executeScript. 13587 (WebCore::ScriptElementData::executeScript): Renamed evaluated to isEvaluated. 13588 (WebCore::ScriptElementData::ignoresLoadRequest): Renamed evaluated to isEvaluated. 13589 * dom/ScriptElement.h: Renamed evaluated to isEvaluated. 13590 (WebCore::ScriptElementData::isEvaluated): Added. 13591 * dom/XMLDocumentParserLibxml2.cpp: 13592 (WebCore::XMLDocumentParser::endElementNs): Calls ScriptElement::executeScript. 13593 * html/HTMLScriptElement.cpp: 13594 (WebCore::HTMLScriptElement::HTMLScriptElement): Added isEvaluated flag to the argument list. 13595 (WebCore::HTMLScriptElement::create): Calls the constructor with the isEvaluated flag set to false. 13596 (WebCore::HTMLScriptElement::cloneElementWithoutAttributesAndChildren): Propagates isEvaluated. 13597 (WebCore::HTMLScriptElement::executeScript): Added; calls ScriptElementData::executeScript. 13598 * html/HTMLScriptElement.h: 13599 * html/parser/HTMLScriptRunner.cpp: 13600 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Added an assertion that was lost 13601 in extracting ScriptElementData::executeScript. 13602 (WebCore::HTMLScriptRunner::runScript): Calls ScriptElementData::executeScript. 13603 * html/parser/HTMLScriptRunner.h: 13604 * svg/SVGScriptElement.cpp: 13605 (WebCore::SVGScriptElement::SVGScriptElement): Added isEvaluated flag to the argument list. 13606 (WebCore::SVGScriptElement::create): Calls the constructor with the isEvaluated flag set to false. 13607 (WebCore::SVGScriptElement::cloneElementWithoutAttributesAndChildren): Propagates isEvaluated. 13608 (WebCore::SVGScriptElement::executeScript): Added; calls ScriptElementData::executeScript. 13609 * svg/SVGScriptElement.h: 13610 13611 2010-11-11 Shinichiro Hamaji <hamaji (a] chromium.org> 13612 13613 Reviewed by Darin Adler. 13614 13615 REGRESSION: window.print in onload doesn't fire if there's an img 13616 https://bugs.webkit.org/show_bug.cgi?id=48195 13617 13618 This issue was introduced in 13619 https://bugs.webkit.org/show_bug.cgi?id=43658 13620 This happens because FrameLoader::isLoading() is false while an 13621 image is still loading. Now, window.print() happens after all 13622 resources are loaded. 13623 13624 Also changed the name of a member variable as Darin suggested in Bug 43658. 13625 13626 Added a manual test as DRT doesn't support window.print() yet. 13627 13628 * loader/DocumentLoader.cpp: 13629 (WebCore::DocumentLoader::DocumentLoader): 13630 (WebCore::DocumentLoader::updateLoading): 13631 * loader/DocumentLoader.h: 13632 * page/DOMWindow.cpp: 13633 (WebCore::DOMWindow::DOMWindow): 13634 (WebCore::DOMWindow::print): 13635 (WebCore::DOMWindow::finishedLoading): 13636 * page/DOMWindow.h: 13637 13638 2010-11-11 James Simonsen <simonjam (a] chromium.org> 13639 13640 Reviewed by Tony Chang. 13641 13642 [chromium] Support letter spacing and fix whitespace wrapping on linux 13643 13644 When lines wrapped on RTL text, the whitespace was inserted before 13645 the first character on the new line instead of at the end of the 13646 previous line. This has been fixed. 13647 13648 The missing cluster information needed for letter spacing was hidden in 13649 harfbuzz's attributes struct. 13650 13651 https://bugs.webkit.org/show_bug.cgi?id=49405 13652 13653 * platform/graphics/chromium/FontLinux.cpp: 13654 (WebCore::TextRunWalker::letterSpacing): Added. 13655 (WebCore::TextRunWalker::isWordBreak): No need for isRTL. 13656 (WebCore::TextRunWalker::setPadding): Ditto. 13657 (WebCore::TextRunWalker::setGlyphXPositions): Support letter spacing. No whitespace before RTL text on new line. 13658 (WebCore::glyphIndexForXPositionInScriptRun): Support letter spacing. 13659 13660 2010-11-11 Kavita Kanetkar <kkanetkar (a] chromium.org> 13661 13662 Reviewed by Dumitru Daniliuc. 13663 13664 FileSystem: Fix a link error for non-chromium WebKit build 13665 https://bugs.webkit.org/show_bug.cgi?id=49296 13666 13667 * WebCore.xcodeproj/project.pbxproj: 13668 * inspector/InspectorFileSystemAgent.cpp: 13669 (WebCore::InspectorFileSystemAgentCallbacks::didOpenFileSystem): 13670 (WebCore::InspectorFileSystemAgentCallbacks::didReadDirectoryEntry): 13671 (WebCore::InspectorFileSystemAgentCallbacks::didReadDirectoryEntries): 13672 (WebCore::InspectorFileSystemAgentCallbacks::didCreateFileWriter): 13673 (WebCore::InspectorFileSystemAgentCallbacks::didFail): 13674 (WebCore::InspectorFileSystemAgent::revealFolderInOS): 13675 13676 2010-11-11 Nate Chapin <japhet (a] chromium.org> 13677 13678 Reviewed by Antti Koivisto. 13679 13680 Cleanup after http://trac.webkit.org/changeset/71562, namely: 13681 Make deferred request handle simpler. 13682 Don't perform callbacks associated with network load starting 13683 (e.g., willSendRequest) until the load is in fact sent to the network. 13684 Make ResourceLoadScheduler a friend of ResourceLoader and make 13685 ResourceLoader::start() protected to try to ensure loads actually 13686 go through the scheduler. 13687 https://bugs.webkit.org/show_bug.cgi?id=49351 13688 13689 Behavior should be covered by existing tests. 13690 13691 * loader/NetscapePlugInStreamLoader.cpp: 13692 (WebCore::NetscapePlugInStreamLoader::create): 13693 * loader/ResourceLoadScheduler.cpp: 13694 (WebCore::ResourceLoadScheduler::servePendingRequests): 13695 * loader/ResourceLoadScheduler.h: 13696 (WebCore::ResourceLoadScheduler::HostInformation::limitRequests): 13697 * loader/ResourceLoader.cpp: 13698 (WebCore::ResourceLoader::init): 13699 (WebCore::ResourceLoader::start): 13700 (WebCore::ResourceLoader::setDefersLoading): 13701 (WebCore::ResourceLoader::didCancel): 13702 * loader/ResourceLoader.h: 13703 (WebCore::ResourceLoader::reachedTerminalState): 13704 (WebCore::ResourceLoader::request): 13705 * loader/SubresourceLoader.cpp: 13706 (WebCore::SubresourceLoader::create): 13707 * loader/loader.cpp: 13708 (WebCore::Loader::load): 13709 (WebCore::Loader::willSendRequest): 13710 * loader/loader.h: 13711 13712 2010-11-11 Carol Szabo <carol.szabo (a] nokia.com> 13713 13714 Reviewed by Kent Tamura. 13715 13716 css2:order of counters in out-of flow content 13717 https://bugs.webkit.org/show_bug.cgi?id=32412 13718 13719 Tests: fast/css/content/content-none.html 13720 fast/css/content/content-normal.html 13721 13722 * css/CSSParser.cpp: 13723 (WebCore::CSSParser::parseContent): 13724 Added support for none, normal, open-quote, no-open-quote, etc. 13725 identifiers in terms of parsing only, as this has effect on the 13726 evaluation of counters. No further implementation needed for 13727 none and normal, the others are parsed but do not work as expected. 13728 13729 2010-11-11 Julie-Jeongeun-Kim <jiyuluna (a] gmail.com> 13730 13731 Reviewed by Kent Tamura. 13732 13733 SelectionStart, selectionEnd properties return wrong values when the selection is in a read-only input or textarea element 13734 https://bugs.webkit.org/show_bug.cgi?id=25444 13735 13736 'rootEditableElement()' is checked on RenderTextControl::indexForVisiblePosition. 13737 It means that just editable elements can get selection information. 13738 ReadOnly element is not editable element. So, it just returns and can't get correct selection information. 13739 INPUT and TEXTAREA elements can be read-only but 'indexForVisiblePosition' doesn't accept them. 13740 So, Selectable elements, INPUT and TEXTAREA, checking is added for that case. 13741 Even if they are read-only, they are selectable. 13742 13743 new tests:fast/forms/selection-start-end-readonly.html 13744 13745 * html/HTMLInputElement.idl: 13746 * rendering/RenderTextControl.cpp: 13747 (WebCore::RenderTextControl::isSelectableElement): 13748 (WebCore::RenderTextControl::indexForVisiblePosition): 13749 * rendering/RenderTextControl.h: 13750 13751 2010-11-11 Adam Barth <abarth (a] webkit.org> 13752 13753 Reviewed by David Levin. 13754 13755 Add some RefPtrs to be on the safe side 13756 https://bugs.webkit.org/show_bug.cgi?id=49301 13757 13758 Hopefully no behavior change. 13759 13760 * html/parser/HTMLTreeBuilder.cpp: 13761 (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): 13762 13763 2010-11-11 Chris Rogers <crogers (a] google.com> 13764 13765 Reviewed by Kenneth Russell. 13766 13767 Fix Accelerate.framework issues in VectorMath 32-bit ppc & i386 vs. other architectures (64-bit, ARM, etc.). 13768 On the Mac we use the highly optimized versions in Accelerate.framework 13769 In 32-bit mode (__ppc__ or __i386__) <Accelerate/Accelerate.h> includes <vecLib/vDSP_translate.h> which defines macros 13770 of the same name as our namespaced function names, so we must handle this case differently. 13771 Other architectures (64bit, ARM, etc.) do not include this header file. 13772 13773 https://bugs.webkit.org/show_bug.cgi?id=49112 13774 13775 No new tests since audio API is not yet implemented. 13776 13777 * platform/audio/VectorMath.cpp: 13778 (WebCore::VectorMath::vsmul): 13779 (WebCore::VectorMath::vadd): 13780 13781 2010-11-11 Dan Bernstein <mitz (a] apple.com> 13782 13783 Reviewed by Darin Adler. 13784 13785 <rdar://problem/8657116> fast/text/justification-padding-mid-word.html fails on Windows 13786 https://bugs.webkit.org/show_bug.cgi?id=49378 13787 13788 * platform/graphics/win/UniscribeController.cpp: 13789 (WebCore::UniscribeController::shapeAndPlaceItem): For all characters that need to be treated 13790 as zero-width spaces, substitute the space glyph with zero advance. Apply justification padding 13791 and word spacing only at characters treated as (non-zero-width) spaces. 13792 13793 2010-11-11 Darin Adler <darin (a] apple.com> 13794 13795 Reviewed by Sam Weinig. 13796 13797 Harden some string functions against large lengths 13798 https://bugs.webkit.org/show_bug.cgi?id=49293 13799 13800 * rendering/RenderText.cpp: 13801 (WebCore::makeCapitalized): Check before incrementing length. 13802 13803 2010-11-10 Zhenyao Mo <zmo (a] google.com> 13804 13805 Reviewed by Kenneth Russell. 13806 13807 bufferData/bufferSubData should not crash with null data input 13808 https://bugs.webkit.org/show_bug.cgi?id=49350 13809 13810 * html/canvas/WebGLRenderingContext.cpp: return early if input data is null. 13811 (WebCore::WebGLRenderingContext::bufferData): 13812 (WebCore::WebGLRenderingContext::bufferSubData): 13813 13814 2010-11-10 Zhenyao Mo <zmo (a] google.com> 13815 13816 Reviewed by Kenneth Russell. 13817 13818 Implement UNPACK_COLORSPACE_CONVERSION_WEBGL 13819 https://bugs.webkit.org/show_bug.cgi?id=47196 13820 13821 This is the first patch for this bug. We add constants and methods, but haven't hooked it up with texture uploading yet. Also, in order to check in constants.html, we need to remove out-dated constants, and update affected tests correspondingly. 13822 13823 Test: fast/canvas/webgl/constants.html 13824 13825 * html/canvas/WebGLRenderingContext.cpp: 13826 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Move init code to initializeNewContext. 13827 (WebCore::WebGLRenderingContext::initializeNewContext): Ditto. 13828 (WebCore::WebGLRenderingContext::getParameter): Implement UNPACK_COLORSPACE_CONVERSION_WEBGL. 13829 (WebCore::WebGLRenderingContext::pixelStorei): Ditto. 13830 * html/canvas/WebGLRenderingContext.h: Add a member to track UNPACK_COLORSPACE_CONVERSION_WEBGL setting. 13831 * html/canvas/WebGLRenderingContext.idl: Update constants. 13832 * platform/graphics/GraphicsContext3D.h: Update constants. 13833 13834 2010-11-11 Chris Marrin <cmarrin (a] apple.com> 13835 13836 Reviewed by James Robinson. 13837 13838 Add multisampling support to DrawingBuffer. 13839 https://bugs.webkit.org/show_bug.cgi?id=49206 13840 13841 Added support for the GL_ANGLE_framebuffer_blit and GL_ANGLE_framebuffer_multisample 13842 extensions to Extensions3D. Then I use these to add multisample support to DrawingBuffer. 13843 13844 This re-lands changes rolled out by http://trac.webkit.org/changeset/71839. It includes 13845 the change from http://trac.webkit.org/changeset/71831 and additional changes to 13846 DrawingBufferChromium.cpp which cause the broken canvas tests to pass. 13847 13848 * platform/graphics/Extensions3D.h: 13849 * platform/graphics/chromium/DrawingBufferChromium.cpp: 13850 (WebCore::DrawingBuffer::DrawingBuffer): 13851 (WebCore::DrawingBuffer::~DrawingBuffer): 13852 (WebCore::DrawingBuffer::publishToPlatformLayer): 13853 (WebCore::DrawingBuffer::didReset): 13854 (WebCore::DrawingBuffer::platformColorBuffer): 13855 * platform/graphics/chromium/Extensions3DChromium.h: 13856 (WebCore::Extensions3DChromium::blitFramebuffer): 13857 (WebCore::Extensions3DChromium::renderbufferStorageMultisample): 13858 * platform/graphics/gpu/DrawingBuffer.cpp: 13859 (WebCore::DrawingBuffer::create): 13860 (WebCore::DrawingBuffer::clear): 13861 (WebCore::DrawingBuffer::reset): 13862 (WebCore::DrawingBuffer::commit): 13863 (WebCore::DrawingBuffer::bind): 13864 * platform/graphics/gpu/DrawingBuffer.h: 13865 (WebCore::DrawingBuffer::multisample): 13866 * platform/graphics/gpu/mac/DrawingBufferMac.mm: 13867 (WebCore::DrawingBuffer::DrawingBuffer): 13868 (WebCore::DrawingBuffer::didReset): 13869 (WebCore::DrawingBuffer::platformColorBuffer): 13870 * platform/graphics/opengl/Extensions3DOpenGL.cpp: 13871 (WebCore::Extensions3DOpenGL::supports): 13872 (WebCore::Extensions3DOpenGL::blitFramebuffer): 13873 (WebCore::Extensions3DOpenGL::renderbufferStorageMultisample): 13874 * platform/graphics/opengl/Extensions3DOpenGL.h: 13875 * platform/graphics/skia/ImageBufferSkia.cpp: 13876 (WebCore::ImageBuffer::draw): 13877 13878 2010-11-11 David Hyatt <hyatt (a] apple.com> 13879 13880 Reviewed by Simon Fraser. 13881 13882 https://bugs.webkit.org/show_bug.cgi?id=48664 13883 13884 Make repaint invalidation work with flipped blocks ("rl" and "bt" writing modes). 13885 13886 This patch disables the layout state for flipped blocks, since the paint offset isn't right. 13887 13888 Bugs in the overflow sides for lines have been fixed. before/AfterSideVisible/LayoutOverflowForLine 13889 now respect flipping (and don't incorrectly change sides). This is a very confusing aspect of 13890 the overflow stuff (and at some point we should consider renaming top/left/right/bottom since they 13891 aren't physical). 13892 13893 offsetFromContainer and mapLocalToContainer remain physical and refer to the top left offset. 13894 This means at every step up you convert to the correct physical coordinate. It also means these 13895 functions will be unreliable during layout for flipped blocks. At first glance, this seems to be 13896 more or less ok. 13897 13898 computeRectForRepaint now delays flipping conversions until you cross a writing-mode boundary. This 13899 allows for documents to be fully flipped and repaint during layout can still be reliable. This is 13900 critical for incremental line layout repainting. 13901 13902 Added new tests in fast/repaint and also rebaselined the tests in that directory because I'm tired 13903 of all the stale results and failures. 13904 13905 * editing/SelectionController.cpp: 13906 (WebCore::SelectionController::absoluteBoundsForLocalRect): 13907 (WebCore::SelectionController::paintCaret): 13908 * rendering/InlineTextBox.cpp: 13909 (WebCore::InlineTextBox::selectionRect): 13910 * rendering/RenderBlock.cpp: 13911 (WebCore::RenderBlock::layoutBlock): 13912 (WebCore::RenderBlock::layoutOnlyPositionedObjects): 13913 (WebCore::RenderBlock::paintSelection): 13914 * rendering/RenderBlockLineLayout.cpp: 13915 (WebCore::RenderBlock::beforeSideVisibleOverflowForLine): 13916 (WebCore::RenderBlock::afterSideVisibleOverflowForLine): 13917 (WebCore::RenderBlock::beforeSideLayoutOverflowForLine): 13918 (WebCore::RenderBlock::afterSideLayoutOverflowForLine): 13919 * rendering/RenderBox.cpp: 13920 (WebCore::RenderBox::layout): 13921 (WebCore::RenderBox::mapLocalToContainer): 13922 (WebCore::RenderBox::offsetFromContainer): 13923 (WebCore::RenderBox::clippedOverflowRectForRepaint): 13924 (WebCore::RenderBox::computeRectForRepaint): 13925 (WebCore::RenderBox::flipForWritingMode): 13926 (WebCore::RenderBox::locationOffsetIncludingFlipping): 13927 * rendering/RenderBox.h: 13928 * rendering/RenderFlexibleBox.cpp: 13929 (WebCore::RenderFlexibleBox::layoutBlock): 13930 * rendering/RenderInline.cpp: 13931 (WebCore::RenderInline::clippedOverflowRectForRepaint): 13932 * rendering/RenderSlider.cpp: 13933 (WebCore::RenderSlider::layout): 13934 * rendering/RenderTable.cpp: 13935 (WebCore::RenderTable::layout): 13936 * rendering/RenderTableRow.cpp: 13937 (WebCore::RenderTableRow::layout): 13938 * rendering/RenderTableSection.cpp: 13939 (WebCore::RenderTableSection::layout): 13940 (WebCore::RenderTableSection::layoutRows): 13941 * rendering/RenderView.cpp: 13942 (WebCore::RenderView::computeRectForRepaint): 13943 * rendering/ShadowElement.cpp: 13944 (WebCore::ShadowBlockElement::layoutAsPart): 13945 13946 2010-11-11 Chris Marrin <cmarrin (a] apple.com> 13947 13948 Reviewed by Simon Fraser. 13949 13950 Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations 13951 https://bugs.webkit.org/show_bug.cgi?id=49388 13952 13953 Renamed GraphicsLayerCA.* to GraphicsLayerMac.* 13954 13955 * WebCore.xcodeproj/project.pbxproj: 13956 * platform/graphics/mac/GraphicsLayerCA.h: Removed. 13957 * platform/graphics/mac/GraphicsLayerCA.mm: Removed. 13958 * platform/graphics/mac/GraphicsLayerMac.h: Copied from WebCore/platform/graphics/mac/GraphicsLayerCA.h. 13959 * platform/graphics/mac/GraphicsLayerMac.mm: Copied from WebCore/platform/graphics/mac/GraphicsLayerCA.mm. 13960 13961 2010-11-11 Kenneth Russell <kbr (a] google.com> 13962 13963 Reviewed by James Robinson. 13964 13965 [chromium] Missing adoptPtr in GraphicsContext3DSkia.cpp 13966 https://bugs.webkit.org/show_bug.cgi?id=49359 13967 13968 * platform/graphics/skia/GraphicsContext3DSkia.cpp: 13969 (WebCore::GraphicsContext3D::getImageData): 13970 13971 2010-11-11 Dan Bernstein <mitz (a] apple.com> 13972 13973 Reviewed by Adam Roben. 13974 13975 <rdar://problem/8113511> Enable auto-hyphenation 13976 13977 * WebCore.vcproj/WebCore.vcproj: Included HyphenationCF.cpp instead of Hyphenation.cpp. 13978 * platform/text/cf/HyphenationCF.cpp: Added functions and definitions for Windows to look up CFStringGetHyphenationLocationBeforeIndex 13979 and CFStringIsHyphenationAvailableForLocale at runtime. 13980 (wkCFStringGetHyphenationLocationBeforeIndex): 13981 (wkCFStringIsHyphenationAvailableForLocale): 13982 (WebCore::lastHyphenLocation): Added a cast. 13983 13984 2010-11-11 Eric Carlson <eric.carlson (a] apple.com> 13985 13986 Reviewed by Eric Seidel. 13987 13988 video-pause-immediately.html sometimes fails 13989 https://bugs.webkit.org/show_bug.cgi?id=49397 13990 13991 * html/HTMLMediaElement.cpp: 13992 (WebCore::HTMLMediaElement::playInternal): Don't bother calling invalidateCachedTime, it 13993 will be called from updatePlayState. 13994 (WebCore::HTMLMediaElement::pauseInternal): Don't bother calling refreshCachedTime, it 13995 will be called from updatePlayState. 13996 (WebCore::HTMLMediaElement::updatePlayState): Call refreshCachedTime after telling the media 13997 engine to pause so we cache the post-paused time. 13998 13999 2010-11-11 Mihai Parparita <mihaip (a] chromium.org> 14000 14001 Unreviewed rollout. 14002 14003 Roll out r71827 and r71831, which caused many GPU canvas test failures. 14004 14005 * platform/graphics/Extensions3D.h: 14006 * platform/graphics/chromium/DrawingBufferChromium.cpp: 14007 (WebCore::DrawingBuffer::reset): 14008 (WebCore::DrawingBuffer::getRenderingResultsAsTexture): 14009 * platform/graphics/chromium/Extensions3DChromium.h: 14010 * platform/graphics/gpu/DrawingBuffer.cpp: 14011 (WebCore::DrawingBuffer::create): 14012 (WebCore::DrawingBuffer::clear): 14013 (WebCore::DrawingBuffer::bind): 14014 * platform/graphics/gpu/DrawingBuffer.h: 14015 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 14016 (WebCore::SharedGraphicsContext3D::create): 14017 * platform/graphics/gpu/mac/DrawingBufferMac.mm: 14018 (WebCore::DrawingBuffer::DrawingBuffer): 14019 (WebCore::DrawingBuffer::reset): 14020 * platform/graphics/opengl/Extensions3DOpenGL.cpp: 14021 (WebCore::Extensions3DOpenGL::supports): 14022 * platform/graphics/opengl/Extensions3DOpenGL.h: 14023 * platform/graphics/skia/ImageBufferSkia.cpp: 14024 (WebCore::ImageBuffer::draw): 14025 14026 2010-11-11 Eric Carlson <eric.carlson (a] apple.com> 14027 14028 Restore the portion of the ChangeLog removed in my last commit. 14029 14030 2010-11-11 Eric Carlson <eric.carlson (a] apple.com> 14031 14032 Unreviewed Leoaprd build fix. 14033 14034 * html/HTMLMediaElement.cpp: 14035 (WebCore::HTMLMediaElement::invalidateCachedTime): Make the const a double. 14036 14037 2010-11-11 Dirk Schulze <krit (a] webkit.org> 14038 14039 Unreviewed Qt build fix. 14040 14041 SVGAnimation calcMode 'spline' should be useable for from-to and from-by animations 14042 https://bugs.webkit.org/show_bug.cgi?id=49284 14043 14044 * svg/SVGAnimationElement.cpp: 14045 (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints): 14046 (WebCore::SVGAnimationElement::startedActiveInterval): 14047 14048 2010-11-11 Hans Wennborg <hans (a] chromium.org> 14049 14050 Reviewed by Jeremy Orlow. 14051 14052 IndexedDB: signal IDBFactoryBackendInterface destruction to embedder 14053 https://bugs.webkit.org/show_bug.cgi?id=49313 14054 14055 Define IDBFactoryBackendInterface destructor out-of-line to allow 14056 for embedder-specific implementation. For Chromium, have the 14057 destructor call ChromiumBridge::idbShutdown(). 14058 14059 * platform/chromium/ChromiumBridge.h: 14060 * storage/IDBFactoryBackendInterface.cpp: 14061 (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface): 14062 * storage/IDBFactoryBackendInterface.h: 14063 * storage/chromium/IDBFactoryBackendInterface.cpp: 14064 (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface): 14065 14066 2010-11-11 Dirk Schulze <krit (a] webkit.org> 14067 14068 Reviewed by Nikolas Zimmermann. 14069 14070 SVGAnimation calcMode 'spline' should be useable for from-to and from-by animations 14071 https://bugs.webkit.org/show_bug.cgi?id=49284 14072 14073 Add support for from-to and from-by animations in combination with calcMode 'spline' for SVGAnimations. 14074 14075 Tests: svg/animations/animate-calcMode-spline-by.html 14076 svg/animations/animate-calcMode-spline-from-by.html 14077 svg/animations/animate-calcMode-spline-from-to.html 14078 svg/animations/animate-calcMode-spline-to.html 14079 svg/animations/animate-calcMode-spline-values.html 14080 14081 * svg/SVGAnimationElement.cpp: 14082 (WebCore::SVGAnimationElement::calculateKeyTimesIndex): Added to share more code. 14083 (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints): 14084 (WebCore::SVGAnimationElement::currentValuesForValuesAnimation): 14085 (WebCore::SVGAnimationElement::startedActiveInterval): 14086 (WebCore::SVGAnimationElement::updateAnimation): 14087 * svg/SVGAnimationElement.h: 14088 14089 2010-11-10 Chris Marrin <cmarrin (a] apple.com> 14090 14091 Reviewed by James Robinson. 14092 14093 Add multisampling support to DrawingBuffer. 14094 https://bugs.webkit.org/show_bug.cgi?id=49206 14095 14096 Added support for the GL_ANGLE_framebuffer_blit and GL_ANGLE_framebuffer_multisample 14097 extensions to Extensions3D. Then I use these to add multisample support to DrawingBuffer. 14098 14099 * platform/graphics/Extensions3D.h: 14100 * platform/graphics/chromium/DrawingBufferChromium.cpp: 14101 (WebCore::DrawingBuffer::platformColorBuffer): 14102 * platform/graphics/chromium/Extensions3DChromium.h: 14103 (WebCore::Extensions3DChromium::blitFramebuffer): 14104 (WebCore::Extensions3DChromium::renderbufferStorageMultisample): 14105 * platform/graphics/gpu/DrawingBuffer.cpp: 14106 (WebCore::DrawingBuffer::create): 14107 (WebCore::DrawingBuffer::clear): 14108 (WebCore::DrawingBuffer::reset): 14109 (WebCore::DrawingBuffer::commit): 14110 (WebCore::DrawingBuffer::bind): 14111 * platform/graphics/gpu/DrawingBuffer.h: 14112 (WebCore::DrawingBuffer::multisample): 14113 * platform/graphics/gpu/mac/DrawingBufferMac.mm: 14114 (WebCore::DrawingBuffer::DrawingBuffer): 14115 (WebCore::DrawingBuffer::platformLayer): 14116 (WebCore::DrawingBuffer::platformColorBuffer): 14117 * platform/graphics/opengl/Extensions3DOpenGL.cpp: 14118 (WebCore::Extensions3DOpenGL::supports): 14119 (WebCore::Extensions3DOpenGL::blitFramebuffer): 14120 (WebCore::Extensions3DOpenGL::renderbufferStorageMultisample): 14121 * platform/graphics/opengl/Extensions3DOpenGL.h: 14122 * platform/graphics/skia/ImageBufferSkia.cpp: 14123 (WebCore::ImageBuffer::draw): 14124 14125 2010-11-11 Eric Carlson <eric.carlson (a] apple.com> 14126 14127 Build fix after r71824. 14128 14129 * html/HTMLMediaElement.cpp: 14130 (WebCore::HTMLMediaElement::invalidateCachedTime): Use an explicit cast from double to float. 14131 (WebCore::HTMLMediaElement::currentTime): Ditto. 14132 14133 2010-11-11 Eric Carlson <eric.carlson (a] apple.com> 14134 14135 Reviewed by Antti Koivisto. 14136 14137 Lots of time spent in MediaPlayerPrivate::currentTime() when playing multiple videos. 14138 https://bugs.webkit.org/show_bug.cgi?id=49009 14139 14140 Make it possible for HTMLMediaElement to cache the movie time and report 'currentTime' 14141 as [cached time + elapsed wall time]. The media engine returns the maximum duration it 14142 is safe to calculate time before resampling the actual movie time with the new 14143 maximumDurationToCacheMovieTime method. Because this may be different for different media 14144 engines the default return value is 0, making it an opt-in feature. 14145 14146 No new tests were added because the existing tests already check currentTime, and because 14147 it is only possible to look for drift between the calculated and actual media time by 14148 calculating the time AND getting the actual media time - which the defeats the purpose of 14149 the change. Building with LOG_CACHED_TIME_WARNINGS defined enables code that does both 14150 and logs warnings when the delta between calculated and observed is greater than 0.01. 14151 14152 * html/HTMLMediaElement.cpp: 14153 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize new member variables. 14154 (WebCore::HTMLMediaElement::prepareForLoad): Force a time resync before setting m_paused. 14155 (WebCore::HTMLMediaElement::seek): Force a time resync before getting the current time before 14156 seeking so there is no drift. 14157 (WebCore::HTMLMediaElement::refreshCachedTime): New, update the cached movie time and the 14158 wall clock time it was recorded. 14159 (WebCore::HTMLMediaElement::invalidateCachedTime): New, flag the cached time as invalid. 14160 (WebCore::HTMLMediaElement::currentTime): Use a cached movie time for as long as the media 14161 engine says it is safe. Lots of optional logging can be enabled to help ports fine tune 14162 the maximum cache interval. 14163 (WebCore::HTMLMediaElement::ended): Force a time resync before setting m_paused. 14164 (WebCore::HTMLMediaElement::endScrubbing): Fix a typo in the logging. 14165 (WebCore::HTMLMediaElement::scheduleTimeupdateEvent): Call currentTime() instead of calling 14166 MediaPlayer so we use the cached time as much as it possible. 14167 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Invalidate cached time because the engine 14168 seeked. 14169 (WebCore::HTMLMediaElement::mediaPlayerRateChanged): Ditto. 14170 (WebCore::HTMLMediaElement::updatePlayState): Invalidate cached time before changing m_paused. 14171 * html/HTMLMediaElement.h: 14172 14173 * platform/graphics/MediaPlayer.cpp: 14174 (WebCore::MediaPlayer::maximumDurationToCacheMovieTime): New. 14175 * platform/graphics/MediaPlayer.h: 14176 * platform/graphics/MediaPlayerPrivate.h: 14177 (WebCore::MediaPlayerPrivateInterface::maximumDurationToCacheMovieTime): New. 14178 14179 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: 14180 (WebCore::MediaPlayerPrivate::maximumDurationToCacheMovieTime): New, say it is safe to cache 14181 time for five seconds (based on lots of experimenting with LOG_CACHED_TIME_WARNINGS enabled). 14182 14183 2010-11-11 Adam Roben <aroben (a] apple.com> 14184 14185 Windows build fix after r71816 14186 14187 r71816 renamed 14188 WebCore/platform/graphics/cairo/FontPlatformDataCairoWin.h to 14189 WebCore/platform/graphics/win/FontPlatformData.h. This made Apple's 14190 Windows port pick up this header in preference to 14191 WebCore/platform/cg/FontPlatformData.h, thus breaking the build. I 14192 moved the file to 14193 WebCore/platform/graphics/win/cairo/FontPlatformData.h so it won't be 14194 picked up by Apple's Windows build. 14195 14196 * WebCore.vcproj/WebCore.vcproj: Updated for file move and let VS 14197 re-sort the files. 14198 14199 * WebCore.vcproj/WebCoreCairo.vsprops: Added 14200 platform/graphics/win/cairo to the include path. 14201 14202 * WebCore.vcproj/copyForwardingHeaders.cmd: Copy files from 14203 platform/graphics/win/cairo to $WebKitOutputDir. 14204 14205 * platform/graphics/cg/FontPlatformData.h: Touched to force this file 14206 to be recopied for Apple's build. 14207 14208 * platform/graphics/win/cairo/FontPlatformData.h: Renamed from 14209 WebCore/platform/graphics/win/FontPlatformData.h. 14210 14211 2010-11-11 Balazs Kelemen <kbalazs (a] webkit.org> 14212 14213 Reviewed by Andreas Kling. 14214 14215 [Qt][WK2] Implement BackingStore 14216 https://bugs.webkit.org/show_bug.cgi?id=49377 14217 No change in functionality so no tests. 14218 14219 Add a way to hand off ownership of the QPainter and the underlying 14220 QPaintDevice to the GraphicsContext. 14221 * platform/graphics/GraphicsContext.h: 14222 * platform/graphics/qt/GraphicsContextQt.cpp: 14223 (WebCore::GraphicsContextPlatformPrivate::takeOwnershipOfPlatformContext): 14224 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 14225 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 14226 (WebCore::GraphicsContext::takeOwnershipOfPlatformContext): 14227 14228 2010-11-11 Ryuan Choi <ryuan.choi (a] samsung.com> 14229 14230 Reviewed by Adam Barth. 14231 14232 [GTK] Move font related files. 14233 https://bugs.webkit.org/show_bug.cgi?id=48116 14234 14235 Move pango and freetype related files to share non-GTK+ platforms. 14236 14237 No new tests because this is pure refactoring. 14238 14239 * CMakeListsEfl.txt: 14240 * GNUmakefile.am: 14241 * WebCore.vcproj/WebCore.vcproj: 14242 * platform/graphics/cairo/FontCacheFreeType.cpp: Removed. 14243 * platform/graphics/cairo/FontCustomPlatformData.cpp: Removed. 14244 * platform/graphics/cairo/FontPlatformData.h: Removed. 14245 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Removed. 14246 * platform/graphics/cairo/FontPlatformDataFreeType.h: Removed. 14247 * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Removed. 14248 * platform/graphics/cairo/SimpleFontDataCairo.cpp: Removed. 14249 * platform/graphics/freetype: Added. 14250 * platform/graphics/freetype/FontCacheFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontCacheFreeType.cpp. 14251 * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontCustomPlatformData.cpp. 14252 * platform/graphics/freetype/FontPlatformData.h: Copied from WebCore/platform/graphics/cairo/FontPlatformDataFreeType.h. 14253 * platform/graphics/freetype/FontPlatformDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/FontPlatformDataFreeType.cpp. 14254 * platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp: Copied from WebCore/platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp. 14255 * platform/graphics/freetype/SimpleFontDataFreeType.cpp: Copied from WebCore/platform/graphics/cairo/SimpleFontDataCairo.cpp. 14256 * platform/graphics/gtk/FontCachePango.cpp: Removed. 14257 * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Removed. 14258 * platform/graphics/gtk/FontPlatformDataPango.cpp: Removed. 14259 * platform/graphics/gtk/FontPlatformDataPango.h: Removed. 14260 * platform/graphics/gtk/GlyphPageTreeNodePango.cpp: Removed. 14261 * platform/graphics/gtk/SimpleFontDataPango.cpp: Removed. 14262 * platform/graphics/pango: Added. 14263 * platform/graphics/pango/FontCachePango.cpp: Copied from WebCore/platform/graphics/gtk/FontCachePango.cpp. 14264 * platform/graphics/pango/FontCustomPlatformDataPango.cpp: Copied from WebCore/platform/graphics/gtk/FontCustomPlatformDataPango.cpp. 14265 * platform/graphics/pango/FontPlatformData.h: Copied from WebCore/platform/graphics/gtk/FontPlatformDataPango.h. 14266 * platform/graphics/pango/FontPlatformDataPango.cpp: Copied from WebCore/platform/graphics/gtk/FontPlatformDataPango.cpp. 14267 * platform/graphics/pango/GlyphPageTreeNodePango.cpp: Copied from WebCore/platform/graphics/gtk/GlyphPageTreeNodePango.cpp. 14268 * platform/graphics/pango/SimpleFontDataPango.cpp: Copied from WebCore/platform/graphics/gtk/SimpleFontDataPango.cpp. 14269 * platform/graphics/win/FontPlatformData.h: Copied from WebCore/platform/graphics/win/FontPlatformDataCairoWin.h. 14270 * platform/graphics/win/FontPlatformDataCairoWin.h: Removed. 14271 14272 2010-11-11 Pavel Feldman <pfeldman (a] chromium.org> 14273 14274 Reviewed by Yury Semikhatsky. 14275 14276 Web Inspector: size of resources in summary is 0 14277 when there are redirects. 14278 https://bugs.webkit.org/show_bug.cgi?id=49242 14279 14280 * inspector/front-end/NetworkPanel.js: 14281 (WebInspector.NetworkPanel.prototype._updateSummaryBar): 14282 14283 2010-11-11 Ben Murdoch <benm (a] google.com> 14284 14285 Reviewed by Darin Fisher. 14286 14287 document.createTouch and document.createTouchList should specify EnabledAtRuntime 14288 https://bugs.webkit.org/show_bug.cgi?id=49324 14289 14290 The createTouch and createTouchList APIs added to Document.idl in 14291 http://trac.webkit.org/changeset/70047 should have EnabledAtRuntime 14292 specified as touch related features are controlled by a 14293 RuntimeEnabledFeature flag in addition to a compile time guard. 14294 14295 No new tests. This should have been part of r70047 and 14296 that revision provided adequate tests of the new feature. 14297 14298 * bindings/generic/RuntimeEnabledFeatures.h: 14299 (WebCore::RuntimeEnabledFeatures::createTouchEnabled): 14300 (WebCore::RuntimeEnabledFeatures::createTouchListEnabled): 14301 * dom/Document.idl: Add EnabledAtRuntime specifier to the 14302 idl methods. 14303 14304 2010-11-09 Pavel Feldman <pfeldman (a] chromium.org> 14305 14306 Reviewed by Yury Semikhatsky. 14307 14308 Web Inspector: Provide context menu item 'Reveal in Elements Panel' 14309 on elements in inspector UI. 14310 https://bugs.webkit.org/show_bug.cgi?id=49161 14311 14312 * English.lproj/localizedStrings.js: 14313 * inspector/front-end/ElementsTreeOutline.js: 14314 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement): 14315 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): 14316 * inspector/front-end/ObjectPropertiesSection.js: 14317 (WebInspector.ObjectPropertyTreeElement.prototype.update): 14318 (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): 14319 (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired.revealElement): 14320 14321 2010-11-11 Pavel Feldman <pfeldman (a] chromium.org> 14322 14323 Reviewed by Yury Semikhatsky. 14324 14325 Web Inspector: Audit panel toolbar icon shifts left when clicked. 14326 https://bugs.webkit.org/show_bug.cgi?id=48766 14327 14328 * inspector/front-end/Images/auditsIcon.png: 14329 14330 2010-11-11 Nikolas Zimmermann <nzimmermann (a] rim.com> 14331 14332 Reviewed by Dirk Schulze. 14333 14334 chrome.dll!WebCore::SVGLengthInternal::valueInSpecifiedUnitsAttrGetter ReadAV@NULL (4cf97a4f3ebe8006a2f5ffcc5bc10aeb) 14335 https://bugs.webkit.org/show_bug.cgi?id=49331 14336 14337 Test: svg/dom/SVGPolygonElement-baseVal-list-removal-crash.html 14338 14339 * svg/properties/SVGListProperty.h: 14340 (WebCore::SVGListProperty::replaceItemValuesAndWrappers): Avoid premature deletion of 'oldItem'. 14341 (WebCore::SVGListProperty::removeItemValuesAndWrappers): Ditto. 14342 14343 2010-11-11 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 14344 14345 Reviewed by Andreas Kling. 14346 14347 Make it possible to override the visibleContentRect in the case the 14348 client is handling the scrolling. This is similar to what the iPhone does. 14349 14350 * platform/ScrollView.cpp: 14351 (WebCore::ScrollView::visibleContentRect): 14352 * platform/ScrollView.h: 14353 (WebCore::ScrollView::setActualVisibleContentRect): 14354 14355 2010-11-11 Andreas Kling <kling (a] webkit.org> 14356 14357 Reviewed by Kenneth Rohde Christiansen. 14358 14359 FrameView: Don't clip to visibleContentRect in paintEntireContents mode 14360 https://bugs.webkit.org/show_bug.cgi?id=49375 14361 14362 In paintEntireContents mode (used in combination with tiling) we 14363 cannot clip to the actual visibleContentRect as the clipped regions 14364 will not be updated again on scroll. If paintsEntireContents is 14365 enabled, return the actual content rect. 14366 14367 * page/FrameView.cpp: 14368 (WebCore::FrameView::windowClipRect): 14369 14370 2010-11-10 Nikolas Zimmermann <nzimmermann (a] rim.com> 14371 14372 Reviewed by Dirk Schulze. 14373 14374 Convert SVGMatrix/SVGTransform/SVGTransformList to the new SVGPropertyTearOff concept 14375 https://bugs.webkit.org/show_bug.cgi?id=49311 14376 14377 Move the last list type, SVGTransformList, and the last POD types, SVGMatrix & SVGTransform, over to the new SVGPropertyTearOff concept. 14378 Removes the need for a custom JSSVGMatrix/V8SVGMatrix implementation, it's all integrated within the bindings now. 14379 14380 Tests: svg/W3C-SVG-1.1-SE/coords-dom-01-f.svg 14381 svg/W3C-SVG-1.1-SE/coords-dom-02-f.svg 14382 svg/W3C-SVG-1.1-SE/coords-dom-03-f.svg 14383 svg/W3C-SVG-1.1-SE/coords-dom-04-f.svg 14384 svg/W3C-SVG-1.1-SE/types-dom-01-b.svg 14385 svg/W3C-SVG-1.1-SE/types-dom-02-f.svg 14386 svg/W3C-SVG-1.1-SE/types-dom-03-b.svg 14387 svg/W3C-SVG-1.1-SE/types-dom-04-b.svg 14388 svg/W3C-SVG-1.1-SE/types-dom-05-b.svg 14389 svg/dom/SVGMatrix.html 14390 svg/dom/SVGTransform.html 14391 svg/dom/SVGTransformList.html 14392 14393 * Android.jscbindings.mk: Removed JSSVGMatrixCustom.cpp. 14394 * Android.v8bindings.mk: Removed V8SVGMatrixCustom.cpp. 14395 * CMakeLists.txt: Remove JSSVGMatrixCustom.cpp. 14396 * GNUmakefile.am: Ditto. Add SVGAnimatedTransformListPropertyTearOff.h/SVGStaticPropertyWithParentTearOff.h/SVGTransformListPropertyTearOff.h/SVGAnimatedTransformList.h/SVGMatrix.h to build. 14397 * WebCore.gypi: Ditto. 14398 * WebCore.pro: Ditto. 14399 * WebCore.vcproj/WebCore.vcproj: Ditto. 14400 * WebCore.xcodeproj/project.pbxproj: Ditto. 14401 * bindings/js/JSBindingsAllInOne.cpp: Remove JSSVGMatrixCustom.cpp 14402 * bindings/js/JSSVGMatrixCustom.cpp: Removed. 14403 * bindings/scripts/CodeGenerator.pm: Convert SVGMatrix/SVGTransform/SVGTransformList to the new concept. 14404 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 14405 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 14406 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 14407 * bindings/v8/custom/V8SVGMatrixCustom.cpp: Removed. 14408 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGTransformList handling. 14409 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 14410 * svg/SVGAnimateTransformElement.cpp: Adapt to SVGTransformList API changes. 14411 (WebCore::transformListFor): 14412 (WebCore::SVGAnimateTransformElement::resetToBaseValue): 14413 (WebCore::SVGAnimateTransformElement::calculateAnimatedValue): 14414 (WebCore::SVGAnimateTransformElement::applyResultsToTarget): 14415 * svg/SVGAnimatedTransformList.h: Added. 14416 * svg/SVGGradientElement.cpp: Ditto. 14417 (WebCore::SVGGradientElement::SVGGradientElement): 14418 (WebCore::SVGGradientElement::parseMappedAttribute): 14419 * svg/SVGGradientElement.h: Ditto. 14420 * svg/SVGLinearGradientElement.cpp: Ditto. 14421 (WebCore::SVGLinearGradientElement::collectGradientAttributes): 14422 * svg/SVGMatrix.h: Added. SVGMatrix inherits from AffineTransform, and is only used in the bindings. It implements SVGs special requirements. 14423 (WebCore::SVGMatrix::translate): Returns a copy of the matrix, not affecting the original matrix. 14424 (WebCore::SVGMatrix::scale): Ditto. 14425 (WebCore::SVGMatrix::scaleNonUniform): Ditto. 14426 (WebCore::SVGMatrix::rotate): Ditto. 14427 (WebCore::SVGMatrix::flipX): Ditto. 14428 (WebCore::SVGMatrix::flipY): Ditto. 14429 (WebCore::SVGMatrix::skewX): Ditto. 14430 (WebCore::SVGMatrix::skewY): Ditto. 14431 (WebCore::SVGMatrix::multiply): Ditto. 14432 (WebCore::SVGMatrix::inverse): Ditto. 14433 (WebCore::SVGMatrix::rotateFromVector): Dittto. 14434 * svg/SVGMatrix.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise on all attributes/functions. 14435 * svg/SVGPatternElement.cpp: Adapt to SVGTransformList API changes. 14436 (WebCore::SVGPatternElement::SVGPatternElement): 14437 (WebCore::SVGPatternElement::parseMappedAttribute): 14438 (WebCore::SVGPatternElement::collectPatternAttributes): 14439 * svg/SVGPatternElement.h: Ditto. 14440 * svg/SVGPoint.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise for 'matrixTransform', now that SVGMatrix has been converted to the new scheme. 14441 * svg/SVGRadialGradientElement.cpp: Adapt to SVGTransformList API changes. 14442 (WebCore::SVGRadialGradientElement::collectGradientAttributes): 14443 * svg/SVGSVGElement.cpp: Ditto. 14444 (WebCore::SVGSVGElement::createSVGTransformFromMatrix): 14445 (WebCore::SVGSVGElement::viewBoxToViewTransform): 14446 * svg/SVGSVGElement.h: Ditto. 14447 * svg/SVGStyledTransformableElement.cpp: Ditto. 14448 (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement): 14449 (WebCore::SVGStyledTransformableElement::animatedLocalTransform): 14450 (WebCore::SVGStyledTransformableElement::parseMappedAttribute): 14451 * svg/SVGStyledTransformableElement.h: Ditto. 14452 * svg/SVGTextElement.cpp: Ditto. 14453 (WebCore::SVGTextElement::SVGTextElement): 14454 (WebCore::SVGTextElement::parseMappedAttribute): 14455 (WebCore::SVGTextElement::animatedLocalTransform): 14456 * svg/SVGTextElement.h: Ditto. 14457 * svg/SVGTransform.cpp: Modernize code, inlined some getters. 14458 (WebCore::SVGTransform::SVGTransform): 14459 (WebCore::SVGTransform::setMatrix): 14460 * svg/SVGTransform.h: Reindent header. 14461 (WebCore::SVGTransform::type): 14462 (WebCore::SVGTransform::svgMatrix): 14463 (WebCore::SVGTransform::matrix): 14464 (WebCore::SVGTransform::angle): 14465 (WebCore::SVGTransform::rotationCenter): 14466 (WebCore::SVGTransform::isValid): 14467 (WebCore::operator==): Avoid function calls, make operator== a friend of SVGTransform, and compare members directly. 14468 (WebCore::operator!=): 14469 * svg/SVGTransform.idl: 14470 * svg/SVGTransformList.cpp: Rewritten as plain Vector<SVGTransform>. 14471 (WebCore::SVGTransformList::createSVGTransformFromMatrix): 14472 (WebCore::SVGTransformList::consolidate): 14473 (WebCore::SVGTransformList::concatenate): 14474 (WebCore::SVGTransformList::valueAsString): 14475 * svg/SVGTransformList.h: 14476 (WebCore::SVGTransformList::SVGTransformList): 14477 * svg/SVGTransformList.idl: Enable StrictTypeChecking/RequiresAllArguments=Raise on all attributes/functions. 14478 * svg/SVGTransformable.cpp: Adapt to SVGTransformList API changes. 14479 (WebCore::SVGTransformable::parseTransformAttribute): 14480 * svg/SVGTransformable.h: Ditto. 14481 * svg/SVGViewSpec.cpp: Ditto. 14482 (WebCore::SVGViewSpec::SVGViewSpec): 14483 (WebCore::SVGViewSpec::setTransform): 14484 (WebCore::SVGViewSpec::parseViewSpec): 14485 * svg/SVGViewSpec.h: Ditto. 14486 (WebCore::SVGViewSpec::transform): 14487 * svg/properties/SVGAnimatedListPropertyTearOff.h: Made constructor and members protected. 14488 * svg/properties/SVGAnimatedPropertyMacros.h: Add new helper macro DECLARE_ANIMATED_TRANSFORM_LIST_PROPERTY. This is needed until we expand all macros. 14489 * svg/properties/SVGAnimatedTransformListPropertyTearOff.h: Added. Extends SVGAnimatedListPropertyTearOff, returning SVGTransformListPropertyTearOff objects. 14490 (WebCore::SVGAnimatedTransformListPropertyTearOff::baseVal): 14491 (WebCore::SVGAnimatedTransformListPropertyTearOff::animVal): 14492 (WebCore::SVGAnimatedTransformListPropertyTearOff::create): 14493 (WebCore::SVGAnimatedTransformListPropertyTearOff::SVGAnimatedTransformListPropertyTearOff): 14494 * svg/properties/SVGListPropertyTearOff.h: Made construct and members protected. 14495 * svg/properties/SVGProperty.h: Declare commitChange() as pure virtual method. 14496 * svg/properties/SVGPropertyTraits.h: Handle SVGTransformList. 14497 * svg/properties/SVGStaticPropertyWithParentTearOff.h: Added. Same concept as JSSVGStaticPODTypeWrapperWithParent, used to expose SVGPropertyTearOffs for types 14498 that are using this concept themselves. (SVGMatrix attribute of SVGTransform, both are POD types, using SVGPropertyTearOff). 14499 (WebCore::SVGStaticPropertyWithParentTearOff::create): 14500 (WebCore::SVGStaticPropertyWithParentTearOff::commitChange): 14501 (WebCore::SVGStaticPropertyWithParentTearOff::SVGStaticPropertyWithParentTearOff): 14502 * svg/properties/SVGTransformListPropertyTearOff.h: Added. Extends SVGListPropertyTearOff by two special SVGTransformList methods: consolidate and createSVGTransformFromMatrix. 14503 (WebCore::SVGTransformListPropertyTearOff::create): 14504 (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix): 14505 (WebCore::SVGTransformListPropertyTearOff::consolidate): 14506 (WebCore::SVGTransformListPropertyTearOff::SVGTransformListPropertyTearOff): 14507 14508 2010-11-11 Alejandro G. Castro <alex (a] igalia.com> 14509 14510 Reviewed by Nikolas Zimmermann. 14511 14512 Fixed WebKitGTK gtk3 compilation. 14513 14514 * platform/gtk/WidgetRenderingContextGtk3.cpp: 14515 (WebCore::WidgetRenderingContext::WidgetRenderingContext): 14516 14517 2010-11-11 Dan Bernstein <mitz (a] apple.com> 14518 14519 Reverted r71975:71976. That change was wrong, and the tests caught it. 14520 14521 * platform/graphics/mac/ComplexTextController.h: 14522 (WebCore::ComplexTextController::ComplexTextRun::create): 14523 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 14524 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 14525 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): 14526 14527 2010-11-11 Matthew Delaney <mdelaney (a] apple.com> 14528 14529 Reviewed by Dan Bernstein. 14530 14531 Fix LayoutTests/canvas/philip/tests/2d.drawImage.null.html 14532 https://bugs.webkit.org/show_bug.cgi?id=48307 14533 14534 There are no new tests because this is a fix for a pre-existing failing test.) 14535 14536 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: Corrected expection throwing cases to match up with spec. 14537 14538 2010-11-10 Ryosuke Niwa <rniwa (a] webkit.org> 14539 14540 Reviewed by Adam Barth. 14541 14542 [HTML5] 10.2.8.4 Scripts that modify the page as it is being parsed 14543 https://bugs.webkit.org/show_bug.cgi?id=49364 14544 14545 Fixed HTMLScriptRunner's executeScript to use the ScriptController of the frame to which script element belongs 14546 as supposed to that of the frame associated with the HTMLScriptRunner. 14547 14548 See also: http://www.whatwg.org/specs/web-apps/current-work/#scripts-that-modify-the-page-as-it-is-being-parsed 14549 14550 Test: fast/parser/script-modify-page-outer.html 14551 14552 * html/parser/HTMLScriptRunner.cpp: 14553 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Calls executeScript. 14554 (WebCore::HTMLScriptRunner::executeScript): Uses the correct ScriptController instance. 14555 (WebCore::HTMLScriptRunner::runScript): Call executeScript. 14556 * html/parser/HTMLScriptRunner.h: 14557 14558 2010-11-10 Dan Bernstein <mitz (a] apple.com> 14559 14560 Style fix I said Id make then forgot to make. 14561 14562 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 14563 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 14564 14565 2010-11-10 Ned Holbrook <nholbrook (a] apple.com> 14566 14567 Reviewed by Dan Bernstein. 14568 14569 Allow for the possibility of CoreText generating multiple runs for a single text run. 14570 https://bugs.webkit.org/show_bug.cgi?id=49353 14571 14572 * platform/graphics/mac/ComplexTextController.h: 14573 (WebCore::ComplexTextController::ComplexTextRun::create): 14574 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 14575 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 14576 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): 14577 14578 2010-10-15 Martin Robinson <mrobinson (a] igalia.com> 14579 14580 Reviewed by Xan Lopez. 14581 14582 [GTK] Widgets do not support CSS transformations 14583 https://bugs.webkit.org/show_bug.cgi?id=40139 14584 14585 Instead of rendering directly onto the target drawable when rendering 14586 form controls on GTK+ 2.0, render onto an intermediate surface and use 14587 cairo to blit the result back to the target surface. This has two 14588 benefits. The first is that it always honors the current Cairo 14589 transformation. The second is that since the intermediate drawable is 14590 always a 32-bit GdkPixmap, we do not have to have a set of widgets 14591 per-colormap any longer. 14592 14593 This change also begins the abstraction of widget rendering so that GTK+ 14594 2 and GTK+ 3 can use the same code path. The WidgetRenderingContext will 14595 eventually hide all version differences from RenderThemeGtk, which can 14596 just focus on interpreting the GtkStyle properties. 14597 14598 * GNUmakefile.am: Add WidgetRenderinContext source files to the sources list. 14599 * platform/graphics/cairo/PlatformRefPtrCairo.cpp: 14600 (WTF::refPlatformPtr): Add a specialization for Cairo patterns. 14601 (WTF::derefPlatformPtr): Ditto. 14602 * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto. 14603 * platform/gtk/RenderThemeGtk.cpp: 14604 (WebCore::RenderThemeGtk::RenderThemeGtk): No longer keep a set of 14605 widgets per-colormap for GTK+, instead just determine if we can use RGBA 14606 colormaps and go from there. 14607 (WebCore::RenderThemeGtk::~RenderThemeGtk): Ditto. 14608 (WebCore::RenderThemeGtk::getIndicatorMetrics): Put the logic for 14609 getting toggle button indicator metrics into this helper. 14610 (WebCore::RenderThemeGtk::paintRenderObject): Now uses 14611 WidgetRenderingContext to do widget rendering. 14612 (WebCore::setToggleSize): Use the new getIndicatorMetrics helper. 14613 * platform/gtk/RenderThemeGtk.h: Added a member to track whether or not 14614 the widgets are using a RGBA colormap. Also remove a defunct Page* 14615 member. 14616 * platform/gtk/ScrollbarThemeGtk.cpp: Switch all widget drawing 14617 operations to use WidgetRenderingContext. 14618 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto. 14619 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto. 14620 (WebCore::ScrollbarThemeGtk::paintThumb): Ditto. 14621 (WebCore::ScrollbarThemeGtk::paint): Ditto. 14622 (WebCore::ScrollbarThemeGtk::paintButton): Ditto. 14623 * platform/gtk/WidgetRenderingContext.h: Added. 14624 * platform/gtk/WidgetRenderingContextGtk2.cpp: Added. 14625 (WebCore::purgeScratchBuffer): Added, this is similar to the scratch 14626 buffer implementation from ContextShadow. 14627 (WebCore::PurgeScratchBufferTimer::fired): Ditto. 14628 (WebCore::scheduleScratchBufferPurge): Ditto. 14629 (WebCore::getExtraSpaceForWidget): 14630 (WebCore::WidgetRenderingContext::WidgetRenderingContext): Added. 14631 (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Added. 14632 (WebCore::WidgetRenderingContext::paintMozillaWidget): Added. 14633 * platform/gtk/WidgetRenderingContextGtk3.cpp: Added. 14634 (WebCore::WidgetRenderingContext::WidgetRenderingContext): Added. 14635 (WebCore::~WidgetRenderingContext::WidgetRenderingContext): Added. 14636 (WebCore::WidgetRenderingContext::paintMozillaWidget): Added. 14637 14638 2010-11-10 Beth Dakin <bdakin (a] apple.com> 14639 14640 Reviewed by Simon Fraser. 14641 14642 Fix for https://bugs.webkit.org/show_bug.cgi?id=49356 14643 -[WebView _scaleWebView:] should take and origin and scroll the 14644 document 14645 -and corresponding- 14646 <rdar://problem/8643921> 14647 14648 Apply the scale to the origin, and set a new scroll position. 14649 * page/Frame.cpp: 14650 (WebCore::Frame::scalePage): 14651 * page/Frame.h: 14652 * WebCore.exp.in: 14653 14654 2010-11-10 Dan Bernstein <mitz (a] apple.com> 14655 14656 Reviewed by Darin Adler. 14657 14658 REGRESSION (r71566): r71566 breaks bidi-control-chars-treated-as-ZWS.html 14659 https://bugs.webkit.org/show_bug.cgi?id=49295 14660 14661 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: Reverted to r71565. Eliding bidi 14662 control characters from ATSUI is no longer necessary since ComplexTextController removes 14663 any glyphs corresponding to them. 14664 (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): 14665 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 14666 14667 2010-11-10 Pascal Massimino <pascal.massimino (a] gmail.com> 14668 14669 Reviewed by Adam Barth. 14670 14671 Simplify the alpha-detection code in png's decoding loop. 14672 https://bugs.webkit.org/show_bug.cgi?id=49333 14673 14674 Added a special test for this case: png_per_row_alpha_decoding.html 14675 14676 * platform/image-decoders/png/PNGImageDecoder.cpp: 14677 (WebCore::PNGImageDecoder::rowAvailable): modified loop. 14678 14679 2010-11-10 Dan Bernstein <mitz (a] apple.com> 14680 14681 Reviewed by Simon Fraser. 14682 14683 <rdar://problem/8647848> REGRESSION (r68551): Spaces shown at soft hyphens with complex justification 14684 https://bugs.webkit.org/show_bug.cgi?id=49352 14685 14686 Test: fast/text/justification-padding-mid-word.html 14687 14688 * platform/graphics/mac/ComplexTextController.cpp: 14689 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Changed to add justification padding 14690 and word spacing only at characters that are treated as space, instead of all characters that 14691 use the space glyph (which includes characters treated as zero-width space as well). 14692 14693 2010-11-10 Matthew Delaney <mdelaney (a] apple.com> 14694 14695 Reviewed by Darin Adler. 14696 14697 Crash in documentWillBecomeInactive() when closing window with Reader showing content with SVG 14698 https://bugs.webkit.org/show_bug.cgi?id=49084 14699 14700 Manual test added. 14701 14702 * manual-tests/svg-deep-clone-to-new-doc.html: Added manual test for reproducing bug since an automated version proved to be a bit tough to craft up. 14703 * svg/SVGSVGElement.cpp: Added in necessary document ownership transfer calls. 14704 * svg/SVGSVGElement.h: 14705 14706 2010-11-10 Pavel Feldman <pfeldman (a] chromium.org> 14707 14708 Reviewed by Yury Semikhatsky. 14709 14710 Web Inspector: Red error bubbles don't fit content. 14711 https://bugs.webkit.org/show_bug.cgi?id=49305 14712 14713 * inspector/front-end/textViewer.css: 14714 (.webkit-html-message-bubble): 14715 14716 2010-11-10 Alexey Proskuryakov <ap (a] apple.com> 14717 14718 Release build fix. 14719 14720 * css/StyleSheet.cpp: isAcceptableStyleSheetParent() is a debug-only function. 14721 14722 2010-11-08 Alexey Proskuryakov <ap (a] apple.com> 14723 14724 Reviewed by Darin Adler. 14725 14726 https://bugs.webkit.org/show_bug.cgi?id=45205 14727 <rdar://problem/8391455> Detached elements shouldn't have style sheets. 14728 14729 Tests: fast/dom/StyleSheet/detached-style-2.html 14730 fast/dom/StyleSheet/detached-style-pi.xhtml 14731 fast/dom/StyleSheet/detached-style.html 14732 fast/dom/StyleSheet/detached-style-pi-2.xhtml 14733 14734 * bindings/js/JSStyleSheetCustom.cpp: (WebCore::JSStyleSheet::markChildren): 14735 There is no longer a need to mark owner nodes - StyleSheet->ownerNode() is only non-null when 14736 the node is in document. 14737 14738 * css/StyleSheet.cpp: (WebCore::StyleSheet::StyleSheet): Added an assertion checking that 14739 all nodes that can be StyleSheet parents have been verified. 14740 14741 * css/StyleSheet.h: (WebCore::StyleSheet::clearOwnerNode): Added. 14742 14743 * dom/ProcessingInstruction.cpp: 14744 (WebCore::ProcessingInstruction::~ProcessingInstruction): Clear stylesheet's owner node. This 14745 shouldn't have observable effect, since a processing instruction that is in document can only 14746 be destroyed with document, and a reachable stylsheet keeps document alive. 14747 (WebCore::ProcessingInstruction::removedFromDocument): Clear the relationship between node and style sheet when removed. 14748 (WebCore::ProcessingInstruction::setCSSStyleSheet): If the element was removed during load, we still 14749 don't want to create a style sheet. 14750 14751 * dom/StyleElement.cpp: 14752 (WebCore::StyleElement::sheet): There is no reason for lazy creation. It was a wrong fix for 14753 bug 14462, whose regression test still passes. 14754 (WebCore::StyleElement::removedFromDocument): Clear the relationship between node and style sheet when removed. 14755 (WebCore::StyleElement::finishParsingChildren): Don't call sheet(), it doens't have side effects any more. 14756 (WebCore::StyleElement::createSheet): Assert that the element is in document. We never want 14757 to create a style sheet for an element that isn't. 14758 14759 * dom/StyleElement.h: (WebCore::StyleElement::sheet): Made implementation inline, now that 14760 it's a simple getter. 14761 14762 * html/HTMLLinkElement.cpp: 14763 (WebCore::HTMLLinkElement::~HTMLLinkElement): Clear stylesheet's owner node. 14764 (WebCore::HTMLLinkElement::process): Assert that there is no style sheet lingering for any reason. 14765 (WebCore::HTMLLinkElement::removedFromDocument): Clear the relationship between node and style sheet when removed. 14766 (WebCore::HTMLLinkElement::setCSSStyleSheet): If the element was removed during load, we still 14767 don't want to create a style sheet. 14768 14769 * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::~HTMLStyleElement): 14770 * html/HTMLStyleElement.h: 14771 * svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::~SVGStyleElement): 14772 * svg/SVGStyleElement.h: 14773 Clear stylesheet's owner node. As above, this shouldn't have observable effect. 14774 14775 * xml/XSLTProcessor.h: 14776 * xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::~XSLTProcessor): 14777 * dom/Document.cpp: (WebCore::Document::~Document): 14778 * css/CSSParser.cpp: (WebCore::CSSParser::parseSelector): 14779 Assert that stylesheet won't outlive its owner node. We don't really use refcounting here. 14780 14781 2010-11-10 Dan Bernstein <mitz (a] apple.com> 14782 14783 Reviewed by Dave Hyatt. 14784 14785 REGRESSION (r71566): r71566 breaks bidi-control-chars-treated-as-ZWS.html 14786 https://bugs.webkit.org/show_bug.cgi?id=49295 14787 14788 * platform/graphics/mac/ComplexTextController.h: Added m_indexOffset. 14789 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: 14790 (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Use m_indexOffset 14791 instead of computing the offset based on m_directionalOverride. 14792 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Set m_indexOffset to 14793 the offset between indices in m_characters and indices in the text passed to ATSUI. 14794 14795 2010-11-10 Pavel Feldman <pfeldman (a] chromium.org> 14796 14797 Reviewed by Yury Semikhatsky. 14798 14799 Web Inspector: Gear menu floats to right edge and expands 14800 to bottom of "Styles" section. 14801 https://bugs.webkit.org/show_bug.cgi?id=49303 14802 14803 This fixes computed style's option wrapping to the next line. 14804 14805 * inspector/front-end/inspector.css: 14806 (.sidebar-pane-subtitle): 14807 14808 2010-11-10 Stephen White <senorblanco (a] chromium.org> 14809 14810 Reviewed by James Robinson. 14811 14812 Fix canvas.putImageData(canvas.getImageData(...)) to be lossless. 14813 https://bugs.webkit.org/show_bug.cgi?id=49330 14814 14815 These cycles should be lossless for valid colours. A similar fix went 14816 into the CG port at r32878. 14817 14818 Covered by canvas/philip/tests/2d.imageData.put.unchanged.html. 14819 14820 * platform/graphics/skia/ImageBufferSkia.cpp: 14821 (WebCore::mulDiv255Ceil): 14822 A helper function to do (a + b + 254) / 255 without a divide. 14823 (WebCore::putImageData): 14824 Use the above helper to round up when premultiplying alpha. 14825 14826 2010-11-10 Csaba Osztrogonc <ossy (a] webkit.org> 14827 14828 Reviewed by David Hyatt. 14829 14830 HTML5 Ruby support should be mandatory feature 14831 https://bugs.webkit.org/show_bug.cgi?id=49272 14832 14833 Remove Ruby as optional feature. 14834 14835 * Configurations/FeatureDefines.xcconfig: 14836 * DerivedSources.make: 14837 * GNUmakefile.am: 14838 * WebCorePrefix.h: Touch WebCorePrefix.h to avoid incremental build failure on Windows. 14839 * config.h: Touch config.h to avoid incremental build failure on Windows. 14840 * features.pri: 14841 * html/HTMLTagNames.in: 14842 * rendering/RenderBlock.cpp: Remove ENABLE_RUBY guard. 14843 (WebCore::canMergeContiguousAnonymousBlocks): 14844 * rendering/RenderObject.cpp: Remove ENABLE_RUBY guard. 14845 (WebCore::RenderObject::createObject): 14846 * rendering/RenderRuby.cpp: Remove ENABLE_RUBY guard. 14847 * rendering/RenderRuby.h: Remove ENABLE_RUBY guard. 14848 * rendering/RenderRubyBase.cpp: Remove ENABLE_RUBY guard. 14849 * rendering/RenderRubyBase.h: Remove ENABLE_RUBY guard. 14850 * rendering/RenderRubyRun.cpp: Remove ENABLE_RUBY guard. 14851 * rendering/RenderRubyRun.h: Remove ENABLE_RUBY guard. 14852 * rendering/RenderRubyText.cpp: Remove ENABLE_RUBY guard. 14853 * rendering/RenderRubyText.h: Remove ENABLE_RUBY guard. 14854 14855 2010-11-10 Martin Robinson <mrobinson (a] igalia.com> 14856 14857 Reviewed by Xan Lopez. 14858 14859 [GTK] Complex text does not have full CSS text-shadow support 14860 https://bugs.webkit.org/show_bug.cgi?id=45597 14861 14862 Add ContextShadow support to FontGtk, which enables non-solid shadows 14863 for complex text rendering. 14864 14865 Test: platform/gtk/fonts/complex-text-shadows.html 14866 14867 * platform/graphics/gtk/FontGtk.cpp: 14868 (WebCore::destroyPangoRegion): Added this helper, which helps reduce 14869 the number of #ifdefs when dealing with GTK+ region type differences. 14870 (WebCore::getPangoRegionExtents): Ditto. 14871 (WebCore::drawGlyphsShadow): Added this helper which either renders 14872 a solid shadow manually or uses ContextShadow to render a blurry shadow. 14873 (WebCore::Font::drawComplexText): Use the new helpers. 14874 14875 2010-11-10 Alejandro G. Castro <alex (a] igalia.com> 14876 14877 Reviewed by Martin Robinson. 14878 14879 [gtk] The revision r71528 causes crashes in GObjectEventListener 14880 https://bugs.webkit.org/show_bug.cgi?id=49314 14881 14882 Moved the addition of the event listener to the node after calling 14883 the constructor of the event listener. This is required beacuse 14884 the addEventListener API receives the EventListener inside a 14885 PassRefPtr. 14886 14887 * bindings/gobject/GObjectEventListener.cpp: 14888 (WebCore::GObjectEventListener::GObjectEventListener): 14889 * bindings/gobject/GObjectEventListener.h: 14890 (WebCore::GObjectEventListener::addEventListener): 14891 14892 2010-11-02 Alexander Pavlov <apavlov (a] chromium.org> 14893 14894 Reviewed by Pavel Feldman. 14895 14896 Web Inspector: Enable InspectorCSSAgent (not used by frontend for CSS editing yet) 14897 https://bugs.webkit.org/show_bug.cgi?id=48834 14898 14899 Drive-by fix: use a single API method to retrieve all node-related styles instead of a bunch of separate calls. 14900 14901 Test: inspector/styles-new-API.html 14902 14903 * inspector/CodeGeneratorInspector.pm: 14904 * inspector/Inspector.idl: 14905 * inspector/InspectorCSSAgent.cpp: 14906 (WebCore::InspectorCSSAgent::InspectorCSSAgent): 14907 (WebCore::InspectorCSSAgent::setDOMAgent): 14908 (WebCore::InspectorCSSAgent::reset): 14909 (WebCore::InspectorCSSAgent::getStylesForNode2): 14910 (WebCore::InspectorCSSAgent::getComputedStyleForNode2): 14911 (WebCore::InspectorCSSAgent::addRule2): 14912 (WebCore::InspectorCSSAgent::querySelectorAll): 14913 * inspector/InspectorCSSAgent.h: 14914 * inspector/InspectorController.cpp: 14915 (WebCore::InspectorController::InspectorController): 14916 (WebCore::InspectorController::connectFrontend): 14917 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 14918 (WebCore::InspectorController::didCommitLoad): 14919 * inspector/InspectorController.h: 14920 (WebCore::InspectorController::cssAgent): 14921 * inspector/InspectorDOMAgent.cpp: 14922 * inspector/InspectorDOMAgent.h: 14923 * inspector/InspectorStyleSheet.cpp: 14924 (WebCore::InspectorStyle::setPropertyText): 14925 (WebCore::InspectorStyle::styleText): 14926 (WebCore::InspectorStyle::disableProperty): 14927 (WebCore::InspectorStyle::populateAllProperties): 14928 (WebCore::InspectorStyle::populateObjectWithStyleProperties): 14929 (WebCore::InspectorStyleSheet::buildObjectForRule): 14930 (WebCore::InspectorStyleSheet::fixUnparsedPropertyRanges): 14931 (WebCore::InspectorStyleSheet::ensureSourceData): 14932 (WebCore::InspectorStyleSheetForInlineStyle::text): 14933 * inspector/InspectorStyleSheet.h: 14934 (WebCore::InspectorStyleProperty::setRawTextFromStyleDeclaration): 14935 (WebCore::InspectorStyleProperty::hasRawText): 14936 14937 2010-11-10 Alexander Pavlov <apavlov (a] chromium.org> 14938 14939 Reviewed by Yury Semikhatsky. 14940 14941 Web Inspector: Move CSSStyleDeclaration from DOMAgent.js into CSSStyleModel.js 14942 https://bugs.webkit.org/show_bug.cgi?id=49312 14943 14944 No new tests, as it's just code motion. 14945 14946 * inspector/front-end/CSSStyleModel.js: 14947 (WebInspector.CSSStyleDeclaration): 14948 (WebInspector.CSSStyleDeclaration.parsePayload): 14949 (WebInspector.CSSStyleDeclaration.prototype.get allProperties): 14950 (WebInspector.CSSStyleDeclaration.prototype.getLiveProperty): 14951 (WebInspector.CSSStyleDeclaration.prototype.getPropertyValue): 14952 (WebInspector.CSSStyleDeclaration.prototype.getPropertyPriority): 14953 (WebInspector.CSSStyleDeclaration.prototype.getPropertyShorthand): 14954 (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit): 14955 (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands): 14956 (WebInspector.CSSStyleDeclaration.prototype.getLonghandProperties): 14957 (WebInspector.CSSStyleDeclaration.prototype.getShorthandValue): 14958 (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority): 14959 (WebInspector.CSSStyleDeclaration.prototype.appendProperty): 14960 (WebInspector.CSSStyleDeclaration.prototype.propertyAt): 14961 (WebInspector.CSSRule): 14962 (WebInspector.CSSRule.parsePayload): 14963 (WebInspector.CSSRule.prototype.get isUserAgent): 14964 (WebInspector.CSSRule.prototype.get isUser): 14965 (WebInspector.CSSRule.prototype.get isViaInspector): 14966 (WebInspector.CSSRule.prototype.get isRegular): 14967 (WebInspector.CSSProperty): 14968 (WebInspector.CSSProperty.parsePayload): 14969 (WebInspector.CSSProperty.prototype.get propertyText): 14970 (WebInspector.CSSProperty.prototype.get isLive): 14971 (WebInspector.CSSProperty.prototype.get active): 14972 (WebInspector.CSSProperty.prototype.get styleBased): 14973 (WebInspector.CSSProperty.prototype.get inactive): 14974 (WebInspector.CSSProperty.prototype.get disabled): 14975 (WebInspector.CSSProperty.prototype.setText): 14976 (WebInspector.CSSProperty.prototype.setValue): 14977 (WebInspector.CSSProperty.prototype.setDisabled.callback): 14978 (WebInspector.CSSProperty.prototype.setDisabled): 14979 * inspector/front-end/DOMAgent.js: 14980 14981 2010-11-10 Sheriff Bot <webkit.review.bot (a] gmail.com> 14982 14983 Unreviewed, rolling out r71733. 14984 http://trac.webkit.org/changeset/71733 14985 https://bugs.webkit.org/show_bug.cgi?id=49319 14986 14987 made qt bot crashy and sad (Requested by kling on #webkit). 14988 14989 * page/FrameView.cpp: 14990 (WebCore::FrameView::windowClipRect): 14991 14992 2010-11-10 Peter Rybin <peter.rybin (a] gmail.com> 14993 14994 Reviewed by Adam Barth. 14995 14996 HTML parser should provide script column position within HTML document to JavaScript engine 14997 https://bugs.webkit.org/show_bug.cgi?id=45271 14998 14999 Replaces line number with TextPosition struct so that script engine 15000 gets script starting line/column. 15001 15002 * ForwardingHeaders/wtf/text/TextPosition.h: Added. 15003 * bindings/js/ScriptSourceCode.h: 15004 (WebCore::ScriptSourceCode::ScriptSourceCode): 15005 * bindings/v8/ScheduledAction.cpp: 15006 (WebCore::ScheduledAction::ScheduledAction): 15007 * bindings/v8/ScriptController.cpp: 15008 (WebCore::ScriptController::eventHandlerPosition): 15009 * bindings/v8/ScriptController.h: 15010 * bindings/v8/ScriptEventListener.cpp: 15011 (WebCore::createAttributeEventListener): 15012 * bindings/v8/ScriptSourceCode.h: 15013 (WebCore::ScriptSourceCode::ScriptSourceCode): 15014 (WebCore::ScriptSourceCode::startLine): 15015 (WebCore::ScriptSourceCode::startPosition): 15016 * bindings/v8/V8LazyEventListener.cpp: 15017 (WebCore::V8LazyEventListener::V8LazyEventListener): 15018 (WebCore::V8LazyEventListener::prepareListenerObject): 15019 * bindings/v8/V8LazyEventListener.h: 15020 (WebCore::V8LazyEventListener::create): 15021 * bindings/v8/V8Proxy.cpp: 15022 (WebCore::V8Proxy::compileScript): 15023 (WebCore::V8Proxy::evaluate): 15024 (WebCore::V8Proxy::runScript): 15025 * bindings/v8/V8Proxy.h: 15026 * bindings/v8/WorkerContextExecutionProxy.cpp: 15027 (WebCore::WorkerContextExecutionProxy::evaluate): 15028 (WebCore::WorkerContextExecutionProxy::runScript): 15029 * bindings/v8/WorkerContextExecutionProxy.h: 15030 * bindings/v8/WorkerScriptController.cpp: 15031 (WebCore::WorkerScriptController::evaluate): 15032 * dom/PendingScript.cpp: 15033 (WebCore::PendingScript::releaseElementAndClear): 15034 * dom/PendingScript.h: 15035 (WebCore::PendingScript::PendingScript): 15036 (WebCore::PendingScript::operator=): 15037 (WebCore::PendingScript::startingPosition): 15038 * dom/ScriptableDocumentParser.h: 15039 * dom/XMLDocumentParser.h: 15040 * dom/XMLDocumentParserLibxml2.cpp: 15041 (WebCore::XMLDocumentParser::XMLDocumentParser): 15042 (WebCore::XMLDocumentParser::startElementNs): 15043 (WebCore::XMLDocumentParser::endElementNs): 15044 (WebCore::XMLDocumentParser::lineNumber): 15045 (WebCore::XMLDocumentParser::columnNumber): 15046 (WebCore::XMLDocumentParser::textPosition): 15047 (WebCore::XMLDocumentParser::textPositionOneBased): 15048 * dom/XMLDocumentParserQt.cpp: 15049 (WebCore::XMLDocumentParser::XMLDocumentParser): 15050 (WebCore::XMLDocumentParser::textPosition): 15051 (WebCore::XMLDocumentParser::parseStartElement): 15052 (WebCore::XMLDocumentParser::parseEndElement): 15053 * html/parser/HTMLDocumentParser.cpp: 15054 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): 15055 (WebCore::HTMLDocumentParser::textPosition): 15056 * html/parser/HTMLDocumentParser.h: 15057 * html/parser/HTMLScriptRunner.cpp: 15058 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 15059 (WebCore::HTMLScriptRunner::execute): 15060 (WebCore::HTMLScriptRunner::runScript): 15061 * html/parser/HTMLScriptRunner.h: 15062 * html/parser/HTMLTreeBuilder.cpp: 15063 (WebCore::uninitializedPositionValue1): 15064 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 15065 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 15066 (WebCore::HTMLTreeBuilder::processEndTag): 15067 (WebCore::HTMLTreeBuilder::processScriptStartTag): 15068 * html/parser/HTMLTreeBuilder.h: 15069 15070 2010-11-10 Ilya Sherman <isherman (a] chromium.org> 15071 15072 Reviewed by Shinichiro Hamaji. 15073 15074 Fix autofill popup height computation -- take icon heights into account. 15075 https://bugs.webkit.org/show_bug.cgi?id=49306 15076 15077 * platform/chromium/PopupMenuChromium.cpp: 15078 (WebCore::PopupListBox::layout): 15079 15080 2010-11-10 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 15081 15082 Reviewed by Andreas Kling. 15083 15084 In paintEntireContents mode (used in combination with tiling) we 15085 cannot clip to the actual visibleContentRect as the clipped regions 15086 will not be updated again on scroll. If paintsEntireContents is 15087 enabled, return the actual content rect. 15088 15089 * page/FrameView.cpp: 15090 (WebCore::FrameView::windowClipRect): 15091 15092 2010-11-10 Shinichiro Hamaji <hamaji (a] chromium.org> 15093 15094 Adding a manual test which I forgot to add in r71618. 15095 15096 [Chromium] display:none has no effect on <option> element 15097 https://bugs.webkit.org/show_bug.cgi?id=49169 15098 15099 * manual-tests/display-none-option.html: Added. 15100 15101 2010-11-10 Shane Stephens <shanestephens (a] google.com> 15102 15103 Reviewed by Dirk Schulze. 15104 15105 SVGTextElement supplemental transforms pre-multiplied but should be 15106 post-multiplied in animatedLocalTransform 15107 https://bugs.webkit.org/show_bug.cgi?id=48215 15108 15109 Test: svg/animations/animate-text-nested-transforms.svg 15110 15111 * svg/SVGTextElement.cpp: 15112 (WebCore::SVGTextElement::animatedLocalTransform): 15113 15114 Switched order of multiplication. Note that due to a bug in 15115 AffineTransform's operator* implementation the order of arguments is 15116 reversed (see http://bugs.webkit.org/show_bug.cgi?id=48031). 15117 15118 2010-11-09 Abhishek Arya <inferno (a] chromium.org> 15119 15120 Reviewed by Dan Bernstein. 15121 15122 Fieldsets avoid floats. Legend elements are expected to have their parent 15123 as fieldset. When this not the case, floats get added incorrectly added to the 15124 legend blocks. This patch tries to prevent those floats addition. 15125 https://bugs.webkit.org/show_bug.cgi?id=49214 15126 15127 Test: fast/blockflow/overhanging-float-legend-crash.html 15128 15129 * rendering/RenderBox.cpp: 15130 (WebCore::RenderBox::avoidsFloats): 15131 * rendering/RenderObject.cpp: 15132 (WebCore::RenderObject::isLegend): 15133 * rendering/RenderObject.h: 15134 15135 2010-11-10 Cris Neckar <cdn (a] chromium.org> 15136 15137 Reviewed by Nikolas Zimmermann. 15138 15139 Added check to ensure that svg viewport containers are not treated in the same way as generic svg containers. 15140 https://bugs.webkit.org/show_bug.cgi?id=49188 15141 15142 Test: svg/dom/viewport-container-crash.svg 15143 15144 * rendering/SVGImageBufferTools.cpp: 15145 (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer): 15146 15147 2010-11-09 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 15148 15149 Reviewed by Eric Seidel. 15150 15151 [WML] Fix build breaks when WML is enabled. 15152 https://bugs.webkit.org/show_bug.cgi?id=49168 15153 15154 The backForward() of Page class returns BackForwarddController class type. 15155 So, WML classes need to include the BackForwardController.h file. And, select() 15156 of RenderTextControl.h was removed. Thus, the select() should be replaced by 15157 setSelectionRange(). 15158 15159 * wml/WMLDoElement.cpp: Includes BackForwardController.h. 15160 * wml/WMLDocument.cpp: ditto. 15161 * wml/WMLInputElement.cpp: 15162 (WebCore::WMLInputElement::select): Replaced by setSelectionRange(). 15163 * wml/WMLPageState.cpp: Includes BackForwardController.h. 15164 * wml/WMLPrevElement.cpp: ditto. 15165 15166 2010-11-09 Chris Rogers <crogers (a] google.com> 15167 15168 Reviewed by Kenneth Russell. 15169 15170 Add JavaScriptAudioNode files 15171 https://bugs.webkit.org/show_bug.cgi?id=48875 15172 15173 No new tests since audio API is not yet implemented. 15174 15175 * webaudio/JavaScriptAudioNode.cpp: Added. 15176 (WebCore::JavaScriptAudioNode::create): 15177 (WebCore::JavaScriptAudioNode::JavaScriptAudioNode): 15178 (WebCore::JavaScriptAudioNode::~JavaScriptAudioNode): 15179 (WebCore::JavaScriptAudioNode::initialize): 15180 (WebCore::JavaScriptAudioNode::uninitialize): 15181 (WebCore::JavaScriptAudioNode::toJavaScriptAudioNode): 15182 (WebCore::JavaScriptAudioNode::process): 15183 (WebCore::JavaScriptAudioNode::fireProcessEventDispatch): 15184 (WebCore::JavaScriptAudioNode::fireProcessEvent): 15185 (WebCore::JavaScriptAudioNode::reset): 15186 (WebCore::JavaScriptAudioNode::scriptExecutionContext): 15187 * webaudio/JavaScriptAudioNode.h: Added. 15188 (WebCore::JavaScriptAudioNode::eventTargetData): 15189 (WebCore::JavaScriptAudioNode::ensureEventTargetData): 15190 (WebCore::JavaScriptAudioNode::bufferSize): 15191 (WebCore::JavaScriptAudioNode::doubleBufferIndex): 15192 (WebCore::JavaScriptAudioNode::swapBuffers): 15193 (WebCore::JavaScriptAudioNode::refEventTarget): 15194 (WebCore::JavaScriptAudioNode::derefEventTarget): 15195 * webaudio/JavaScriptAudioNode.idl: Added. 15196 15197 2010-11-09 Nico Weber <thakis (a] chromium.org> 15198 15199 Reviewed by Kenneth Russell. 15200 15201 [Chromium] Text jitter during 2D CSS transform 15202 https://bugs.webkit.org/show_bug.cgi?id=49224 15203 15204 Text subpixel rendering only works in AlphaPremultipliedFirst | 15205 kCGBitmapByteOrder32Host contexts: 15206 http://www.cocoabuilder.com/archive/cocoa/228931-sub-pixel-font-smoothing-with-cgbitmapcontext.html 15207 15208 Changing this has the added benefit that the data layout now matches 15209 skia. 15210 15211 * platform/graphics/chromium/ContentLayerChromium.cpp: 15212 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 15213 (WebCore::ContentLayerChromium::updateContents): 15214 * platform/graphics/chromium/ImageLayerChromium.cpp: 15215 (WebCore::ImageLayerChromium::updateContents): 15216 * platform/graphics/chromium/LayerRendererChromium.cpp: 15217 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 15218 15219 2010-11-09 Helder Correia <helder (a] sencha.com> 15220 15221 Reviewed by Darin Adler. 15222 15223 Philip Canvas test 2d.path.rect.winding fails 15224 https://bugs.webkit.org/show_bug.cgi?id=49225 15225 15226 Rect path direction is important for nonzero winding rule. 15227 15228 The rect(x, y, w, h) method must create a new subpath containing just the four points 15229 (x, y), (x+w, y), (x+w, y+h), (x, y+h), with those four points connected by straight 15230 lines, and must then mark the subpath as closed. 15231 15232 * html/canvas/CanvasRenderingContext2D.cpp: 15233 (WebCore::CanvasRenderingContext2D::rect): 15234 15235 2010-11-09 Fumitoshi Ukai <ukai (a] chromium.org> 15236 15237 Unreviewed build fix on Chromium/Win at r71711 15238 15239 RefCound.h reported an error that it cannot access private member 15240 declared in class 'WebCore::FileWriterSync' at 15241 WebCore::FileWriterSync::~FileWriterSync. 15242 15243 * fileapi/FileWriterSync.h: make destructor public 15244 15245 2010-11-09 Chris Rogers <crogers (a] google.com> 15246 15247 Reviewed by James Robinson. 15248 15249 AudioFileReaderMac.cpp must include <CoreServices/CoreServices.h> 15250 https://bugs.webkit.org/show_bug.cgi?id=49270 15251 15252 * platform/audio/mac/AudioFileReaderMac.cpp: 15253 15254 2010-11-09 Eric Uhrhane <ericu (a] chromium.org> 15255 15256 Reviewed by David Levin. 15257 15258 Add idl and mock classes for FileWriterSync. 15259 https://bugs.webkit.org/show_bug.cgi?id=48693 15260 15261 No new tests, as there's no functionality. 15262 15263 Build file additions. 15264 * CMakeLists.txt: 15265 * DerivedSources.cpp: 15266 * DerivedSources.make: 15267 * GNUmakefile.am: 15268 * WebCore.gypi: 15269 * WebCore.pro: 15270 * WebCore.vcproj/WebCore.vcproj: 15271 * WebCore.xcodeproj/project.pbxproj: 15272 * bindings/scripts/CodeGeneratorV8.pm: 15273 15274 * fileapi/FileWriterSync.cpp: Added. 15275 * fileapi/FileWriterSync.h: Added. 15276 * fileapi/FileWriterSync.idl: Added. 15277 15278 2010-11-09 Mario Sanchez Prada <msanchez (a] igalia.com> 15279 15280 Reviewed by Chris Fleizach. 15281 15282 [GTK] Improve accessibility of focusable lists 15283 https://bugs.webkit.org/show_bug.cgi?id=25679 15284 15285 Emit the 'selected' and 'focused' events as needed. 15286 15287 This is the last bit of a series of patches to fix bug 25679, 15288 which just ensures that the right signals are emmited whenever a 15289 selection inside a listbox object changes, that is, the signals 15290 'state-changed::selected', 'state-changed::focused' and 15291 'focus-event', along with the right detail for each of them to 15292 report if the focus/selection has been activated or not. 15293 15294 * accessibility/gtk/AXObjectCacheAtk.cpp: 15295 (WebCore::notifyChildrenSelectionChange): New, takes care of 15296 emitting all the needed signals when children selection has 15297 changed, both from the point of view of the container and the 15298 selected/unselected items inside of it. It currently supports 15299 listboxes (html 'select' controls) only. 15300 (WebCore::AXObjectCache::postPlatformNotification): Replaced some 15301 old code with a simple call to notifyChildrenSelectionChange(). 15302 15303 2010-11-09 David Hyatt <hyatt (a] apple.com> 15304 15305 Reviewed by Dan Bernstein. 15306 15307 https://bugs.webkit.org/show_bug.cgi?id=49202 15308 15309 Make lists work with vertical text. 15310 15311 (1) Patch all the CSS rules in html.css so that the margins are directionally abstract. 15312 (2) Add a transposedRect and transposedSize method to IntRect and IntSize for swapping x/y and width/height. 15313 (3) Add adjustLineDirectionPosition as a helper for moving a line box only in the line direction. 15314 (4) Fix a bug in addIntrudingFLoats uncovered by list test cases where the top margin of an element was being 15315 incorrectly added to a float's physical left side instead of its top side. 15316 (5) Make positioning and painting and selection of list markers account for all writing modes. 15317 (6) Add helpers for setting the start and end margins directly in a RenderStyle, since lists do this to hack 15318 marker margins before they have been calculated and set on the box. 15319 15320 Cloned a bunch of fast/lists tests into fast/lists/*-vertical.html versions. 15321 15322 * css/html.css: 15323 * platform/graphics/IntRect.h: 15324 (WebCore::IntRect::transposedRect): 15325 * platform/graphics/IntSize.h: 15326 (WebCore::IntSize::transposedSize): 15327 * rendering/InlineBox.h: 15328 (WebCore::InlineBox::adjustLineDirectionPosition): 15329 * rendering/RenderBlock.cpp: 15330 (WebCore::RenderBlock::addIntrudingFloats): 15331 * rendering/RenderListItem.cpp: 15332 (WebCore::getParentOfFirstLineBox): 15333 (WebCore::RenderListItem::positionListMarker): 15334 (WebCore::RenderListItem::paint): 15335 * rendering/RenderListMarker.cpp: 15336 (WebCore::RenderListMarker::localSelectionRect): 15337 (WebCore::RenderListMarker::paint): 15338 (WebCore::RenderListMarker::layout): 15339 (WebCore::RenderListMarker::computePreferredLogicalWidths): 15340 (WebCore::RenderListMarker::updateMargins): 15341 (WebCore::RenderListMarker::getRelativeMarkerRect): 15342 * rendering/style/RenderStyle.cpp: 15343 (WebCore::RenderStyle::setMarginStart): 15344 (WebCore::RenderStyle::setMarginEnd): 15345 * rendering/style/RenderStyle.h: 15346 15347 2010-11-09 Abhishek Arya <inferno (a] chromium.org> 15348 15349 Reviewed by Antti Koivisto. 15350 15351 Call to SVGSMILElement::applyResultsToTarget can blow away the SVGSMILElement. 15352 Refptr the SVGSMILElement in the ResultElementMap to protect it. 15353 https://bugs.webkit.org/show_bug.cgi?id=49274 15354 15355 Test: svg/animations/animate-update-crash.xhtml 15356 15357 * svg/animation/SMILTimeContainer.cpp: 15358 (WebCore::SMILTimeContainer::updateAnimations): 15359 15360 2010-11-09 Alexey Proskuryakov <ap (a] apple.com> 15361 15362 Reviewed by Darin Adler. 15363 15364 https://bugs.webkit.org/show_bug.cgi?id=49281 15365 Remove broken code for embedded CSS xml-stylesheet 15366 15367 * dom/Document.cpp: (WebCore::Document::recalcStyleSelector): This made no sense, was untested, 15368 and didn't match Firefox. 15369 15370 2010-11-09 Brady Eidson <beidson (a] apple.com> 15371 15372 Reviewed by Darin Adler. 15373 15374 <rdar://problem/8613727> and https://bugs.webkit.org/show_bug.cgi?id=48720 15375 Customizable context menu support in WebKit2. 15376 15377 Various WebCore support to allow WebKit2 to create new ContextMenuItems with 15378 the information it has. 15379 15380 * WebCore.exp.in: 15381 15382 * platform/ContextMenu.h: 15383 * platform/ContextMenuItem.h: 15384 15385 * platform/mac/ContextMenuItemMac.mm: 15386 (WebCore::ContextMenuItem::ContextMenuItem): 15387 (WebCore::ContextMenuItem::setSubMenu): 15388 * platform/mac/ContextMenuMac.mm: 15389 (WebCore::platformMenuDescription): 15390 15391 * platform/qt/ContextMenuItemQt.cpp: 15392 (WebCore::ContextMenuItem::ContextMenuItem): 15393 (WebCore::ContextMenuItem::setSubMenu): 15394 * platform/qt/ContextMenuQt.cpp: 15395 (WebCore::platformMenuDescription): 15396 15397 * platform/win/ContextMenuItemWin.cpp: 15398 (WebCore::ContextMenuItem::ContextMenuItem): 15399 (WebCore::ContextMenuItem::setSubMenu): 15400 * platform/win/ContextMenuWin.cpp: 15401 (WebCore::platformMenuDescription): 15402 15403 2010-11-09 Sam Weinig <sam (a] webkit.org> 15404 15405 Reviewed by Anders Carlsson. 15406 15407 Need WebKit2 mechanism for getting the visible page text 15408 <rdar://problem/8646928> 15409 https://bugs.webkit.org/show_bug.cgi?id=49275 15410 15411 * WebCore.exp.in: Add necessary exports. 15412 15413 2010-11-09 Simon Fraser <simon.fraser (a] apple.com> 15414 15415 Reviewed by James Robinson. 15416 15417 Make showLayerTree() more useful for debugging 15418 https://bugs.webkit.org/show_bug.cgi?id=49273 15419 15420 Three things to make showLayerTree() more useful when called from gdb: 15421 1. Add showLayerTree(RenderObject*) 15422 2. Make it not update layout, so you can call it when debugging layout code. 15423 3. Add output of the 'needs layout' flags for each renderer. 15424 15425 * rendering/RenderLayer.cpp: 15426 (showLayerTree): 15427 * rendering/RenderLayer.h: 15428 * rendering/RenderTreeAsText.cpp: 15429 (WebCore::RenderTreeAsText::writeRenderObject): 15430 (WebCore::externalRepresentation): 15431 * rendering/RenderTreeAsText.h: 15432 15433 2010-11-09 Chris Rogers <crogers (a] google.com> 15434 15435 Reviewed by James Robinson. 15436 15437 AudioChannel.h is including AudioFloatArray.h instead of AudioArray.h 15438 https://bugs.webkit.org/show_bug.cgi?id=49269 15439 15440 * platform/audio/AudioChannel.h: 15441 15442 2010-11-09 Dan Bernstein <mitz (a] apple.com> 15443 15444 Reviewed by Dave Hyatt. 15445 15446 Made tables hit-test correctly in all writing modes. 15447 15448 Part of: Make tables work with vertical text 15449 https://bugs.webkit.org/show_bug.cgi?id=46417 15450 15451 Test: fast/blockflow/table-hit-test.html 15452 15453 * rendering/RenderTable.cpp: 15454 (WebCore::RenderTable::nodeAtPoint): 15455 * rendering/RenderTableRow.cpp: 15456 (WebCore::RenderTableRow::nodeAtPoint): 15457 * rendering/RenderTableSection.cpp: 15458 (WebCore::RenderTableSection::nodeAtPoint): 15459 15460 2010-11-09 Simon Fraser <simon.fraser (a] apple.com> 15461 15462 Reviewed by Darin Adler. 15463 15464 Caret fails to render with some combination of iframes and compositing 15465 https://bugs.webkit.org/show_bug.cgi?id=49079 15466 15467 Because it's possible for the caret to jump between different 15468 compositing layers and the view, caret repainting currently dirties 15469 both the view and all compositing layers that intersect the caret rect, 15470 via repaintRectangleInViewAndCompositedLayers(). 15471 15472 When an iframe contained compositing layers, we erroneously skipped 15473 invalidating the compositing layer inside the iframe, which caused 15474 the caret to fail to blink. 15475 15476 * manual-tests/compositing/caret-in-compositing-frame.html: Added. 15477 * manual-tests/compositing/resources/editable-compositing-subframe.html: Added. 15478 * rendering/RenderView.cpp: 15479 (WebCore::RenderView::repaintRectangleInViewAndCompositedLayers): 15480 15481 2010-11-09 Peter Rybin <peter.rybin (a] gmail.com> 15482 15483 Reviewed by Adam Barth. 15484 15485 XMLDocumentParser gets deleted and then used in LayoutTest/fast/frames/set-parent-src-synchronously.xhtml on QT/Linux 15486 https://bugs.webkit.org/show_bug.cgi?id=48643 15487 15488 * dom/XMLDocumentParserQt.cpp: 15489 (WebCore::XMLDocumentParser::doWrite): 15490 15491 2010-11-09 Simon Fraser <simon.fraser (a] apple.com> 15492 15493 Reviewed by Dave Hyatt. 15494 15495 https://bugs.webkit.org/show_bug.cgi?id=49197 15496 <rdar://problem/8642746> 15497 15498 When starting an accelerated transform animation on a renderer, check 15499 that it's a RenderBox before allow transform animations (and before 15500 calling borderBoxRect()), because transforms are currently disallowed 15501 on inline elements. 15502 15503 Test: animations/animation-on-inline-crash.html 15504 15505 * rendering/RenderLayerBacking.cpp: 15506 (WebCore::RenderLayerBacking::startAnimation): 15507 15508 2010-11-09 Simon Fraser <simon.fraser (a] apple.com> 15509 15510 Reviewed by Dave Hyatt. 15511 15512 https://bugs.webkit.org/show_bug.cgi?id=49204 15513 <rdar://problem/8643412> 15514 15515 Add checks to the CSSStyleSelector code to ensure that the 15516 casts to the various CSSValue types are safe, and do more 15517 rigorous checking of the lengths of CSSValueLists, and 15518 non-null members of Pair in some cases. 15519 15520 * css/CSSBorderImageValue.h: 15521 (WebCore::CSSBorderImageValue::isBorderImageValue): 15522 * css/CSSCursorImageValue.h: 15523 (WebCore::CSSCursorImageValue::isCursorImageValue): 15524 * css/CSSImageValue.h: 15525 (WebCore::CSSImageValue::isImageValue): 15526 * css/CSSReflectValue.h: 15527 (WebCore::CSSReflectValue::isReflectValue): 15528 * css/CSSStyleSelector.cpp: 15529 (WebCore::CSSStyleSelector::resolveVariablesForDeclaration): 15530 (WebCore::CSSRuleSet::addRulesFromSheet): 15531 (WebCore::CSSRuleSet::addStyleRule): 15532 (WebCore::applyCounterList): 15533 (WebCore::CSSStyleSelector::applyProperty): 15534 (WebCore::CSSStyleSelector::mapFillSize): 15535 (WebCore::CSSStyleSelector::mapAnimationDelay): 15536 (WebCore::CSSStyleSelector::mapAnimationDirection): 15537 (WebCore::CSSStyleSelector::mapAnimationFillMode): 15538 (WebCore::CSSStyleSelector::mapAnimationName): 15539 (WebCore::CSSStyleSelector::mapAnimationPlayState): 15540 (WebCore::CSSStyleSelector::mapNinePieceImage): 15541 (WebCore::CSSStyleSelector::createTransformOperations): 15542 * css/CSSValue.h: 15543 (WebCore::CSSValue::isBorderImageValue): 15544 (WebCore::CSSValue::isCursorImageValue): 15545 (WebCore::CSSValue::isFontFamilyValue): 15546 (WebCore::CSSValue::isReflectValue): 15547 (WebCore::CSSValue::isShadowValue): 15548 * css/FontFamilyValue.h: 15549 (WebCore::FontFamilyValue::isFontFamilyValue): 15550 * css/SVGCSSStyleSelector.cpp: 15551 (WebCore::CSSStyleSelector::applySVGProperty): 15552 * css/ShadowValue.h: 15553 (WebCore::ShadowValue::isShadowValue): 15554 * platform/graphics/transforms/TransformOperations.h: 15555 (WebCore::TransformOperations::clear): 15556 15557 2010-11-09 Ben Murdoch <benm (a] google.com> 15558 15559 Reviewed by Steve Block. 15560 15561 Android is missing implementation of V8GCController::checkMemoryUsage 15562 https://bugs.webkit.org/show_bug.cgi?id=49255 15563 15564 This patch adds the necessary code to WebCore to implement the 15565 functionality. The implementation of the PlatformBridge on Android 15566 does not live upstream yet, so not patching that here. 15567 15568 No new test as this is a platform specific change on Android. 15569 15570 * bindings/v8/V8GCController.cpp: 15571 (WebCore::V8GCController::checkMemoryUsage): Implement on Android. 15572 * platform/android/PlatformBridge.h: Add necessary methods to read 15573 device specific memory usage and constraints. 15574 15575 2010-11-09 Andreas Kling <kling (a] webkit.org> 15576 15577 Reviewed by Kenneth Rohde Christiansen. 15578 15579 ScrollView::updateScrollbars() shouldn't do anything when scrolling is delegated. 15580 15581 * platform/ScrollView.cpp: 15582 (WebCore::ScrollView::updateScrollbars): 15583 15584 2010-11-09 Steve Block <steveblock (a] google.com> 15585 15586 Reviewed by Andreas Kling. 15587 15588 Unused parameter warning causes JSC build failure with deviceorientation 15589 https://bugs.webkit.org/show_bug.cgi?id=49251 15590 15591 No new tests, build fix only. 15592 15593 * bindings/js/JSDeviceMotionEventCustom.cpp: 15594 (WebCore::JSDeviceMotionEvent::interval): 15595 * bindings/js/JSDeviceOrientationEventCustom.cpp: 15596 (WebCore::JSDeviceOrientationEvent::alpha): 15597 (WebCore::JSDeviceOrientationEvent::beta): 15598 (WebCore::JSDeviceOrientationEvent::gamma): 15599 15600 2010-11-09 Renata Hodovan <reni (a] webkit.org> 15601 15602 Reviewed by Nikolas Zimmermann. 15603 15604 SVGFETileElement doesn't support dynamic invalidation, when attributes change. 15605 https://bugs.webkit.org/show_bug.cgi?id=49247 15606 15607 The dynamic changes are captured by the svgAttributeChanged function. Invalidate the filter primitive if necessary. 15608 15609 Tests: svg/dynamic-updates/SVGFETileElement-dom-in-attr.html 15610 svg/dynamic-updates/SVGFETileElement-svgdom-in-prop.html 15611 15612 * svg/SVGFETileElement.cpp: 15613 (WebCore::SVGFETileElement::svgAttributeChanged): 15614 * svg/SVGFETileElement.h: 15615 15616 2010-11-09 Jenn Braithwaite <jennb (a] chromium.org> 15617 15618 Reviewed by Dmitry Titov. 15619 15620 Update ProgressTracker when moving a frame between documents 15621 https://bugs.webkit.org/show_bug.cgi?id=48368 15622 15623 No new tests. andersca informs me it's not possible to test 15624 ProgressTracker changes via layouttests. Review extra carefully... 15625 15626 * loader/DocumentLoader.cpp: 15627 (WebCore::DocumentLoader::transferLoadingResourcesFromPage): 15628 Changed to use FrameLoader to deliver the notification to the 15629 client via the notifier. 15630 * loader/FrameLoader.cpp: 15631 (WebCore::FrameLoader:;transferLoadingResourcesFromPage): 15632 Update old and new progress tracker about frame progress. 15633 (WebCore::FrameLoader::dispatchTransferLoadingResourceFromPage): 15634 Added to route notification via the notifier. 15635 * loader/FrameLoader.h: 15636 * loader/ProgressTracker.cpp: 15637 (WebCore::ProgressTracker::completeProgress): 15638 Comment change only. 15639 * loader/ResourceLoadNotifier.cpp: 15640 (WebCore::ResourceLoadNotifier::dispatchTransferLoadingResourceFromPage): 15641 Added to provide one place to notify client and progress tracker - 15642 and probably inspector controller (separate patch). 15643 * loader/ResourceLoadNotifier.h: 15644 15645 2010-11-09 Dai Mikurube <dmikurube (a] google.com> 15646 15647 Reviewed by Kent Tamura. 15648 15649 Too precise serialization from floating point number to string for "number" input elements 15650 https://bugs.webkit.org/show_bug.cgi?id=48308 15651 15652 Modified to consider decimal places when handling step and base in applyStep(). 15653 15654 * html/HTMLInputElement.cpp: Considering decimal places of the given "step" attribtue. 15655 (WebCore::HTMLInputElement::getAllowedValueStep): 15656 (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces): 15657 (WebCore::HTMLInputElement::applyStep): 15658 * html/HTMLInputElement.h: 15659 * html/InputType.cpp: Added virtual functions for decimal places and an acceptable error. 15660 (WebCore::InputType::stepBaseWithDecimalPlaces): 15661 (WebCore::InputType::acceptableError): 15662 (WebCore::InputType::parseToDoubleWithDecimalPlaces): 15663 * html/InputType.h: 15664 * html/NumberInputType.cpp: 15665 (WebCore::NumberInputType::stepMismatch): Using the virtual function acceptableError(). 15666 (WebCore::NumberInputType::stepBaseWithDecimalPlaces): Considering decimal places of the given "base" attribute. 15667 (WebCore::NumberInputType::parseToDoubleWithDecimalPlaces): 15668 (WebCore::NumberInputType::acceptableError): Concrete acceptableError() for the number type. 15669 * html/NumberInputType.h: 15670 * html/parser/HTMLParserIdioms.cpp: 15671 (WebCore::parseToDoubleForNumberTypeWithDecimalPlaces): Parsing numbers with decimal places. 15672 * html/parser/HTMLParserIdioms.h: 15673 15674 2010-11-09 Yuzo Fujishima <yuzo (a] google.com> 15675 15676 Reviewed by Shinichiro Hamaji. 15677 15678 Fix for Bug 48984 - [Chromium] @media print crash due to paged media support 15679 Page context has been inheriting from document element style that becomes null if display property is none. 15680 It should inherit from document style instead to properly handle direction property (and to avoid the null reference). 15681 https://bugs.webkit.org/show_bug.cgi?id=48984 15682 15683 Test: printing/page-format-data-display-none.html 15684 15685 * css/CSSStyleSelector.cpp: 15686 (WebCore::CSSStyleSelector::styleForPage): Page context inherits from 15687 document style. 15688 15689 2010-11-09 Chris Rogers <crogers (a] google.com> 15690 15691 Reviewed by Kenneth Russell. 15692 15693 Add custom bindings for AudioContext 15694 https://bugs.webkit.org/show_bug.cgi?id=49115 15695 15696 No new tests since audio API is not yet implemented. 15697 15698 * bindings/js/JSAudioContextCustom.cpp: Added. 15699 (WebCore::JSAudioContextConstructor::constructJSAudioContext): 15700 * bindings/v8/custom/V8AudioContextCustom.cpp: Added. 15701 (WebCore::V8AudioContext::constructorCallback): 15702 15703 2010-11-09 Shinichiro Hamaji <hamaji (a] chromium.org> 15704 15705 Reviewed by Dimitri Glazkov. 15706 15707 [Chromium] display:none has no effect on <option> element 15708 https://bugs.webkit.org/show_bug.cgi?id=49169 15709 15710 Added a manual test because it's hard to test the content of 15711 <option> element. 15712 15713 * manual-tests/display-none-option.html: Added. 15714 * platform/PopupMenuStyle.h: 15715 (WebCore::PopupMenuStyle::PopupMenuStyle): 15716 (WebCore::PopupMenuStyle::isDisplayNone): 15717 * platform/chromium/PopupMenuChromium.cpp: 15718 (WebCore::PopupListBox::getRowHeight): 15719 (WebCore::PopupListBox::layout): 15720 * rendering/RenderMenuList.cpp: 15721 (WebCore::RenderMenuList::itemStyle): 15722 (WebCore::RenderMenuList::menuStyle): 15723 * rendering/RenderTextControlSingleLine.cpp: 15724 (WebCore::RenderTextControlSingleLine::menuStyle): 15725 15726 2010-11-09 Chris Rogers <crogers (a] google.com> 15727 15728 Reviewed by Kenneth Russell. 15729 15730 audio engine: add audio resources abstraction 15731 https://bugs.webkit.org/show_bug.cgi?id=34660 15732 15733 No new tests since audio API is not yet implemented. 15734 15735 * platform/audio/AudioBus.h: 15736 * platform/audio/HRTFElevation.cpp: 15737 (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation): 15738 (WebCore::HRTFElevation::createByInterpolatingSlices): 15739 * platform/audio/mac/AudioBusMac.mm: Added. 15740 (WebCore::AudioBus::loadPlatformResource): 15741 15742 2010-11-09 James Simonsen <simonjam (a] chromium.org> 15743 15744 Reviewed by Dimitri Glazkov. 15745 15746 [Web Timing] Remove requestEnd 15747 https://bugs.webkit.org/show_bug.cgi?id=48924 15748 15749 * page/Timing.cpp: 15750 * page/Timing.h: 15751 * page/Timing.idl: 15752 15753 2010-11-09 Sam Magnuson <smagnuson (a] netflix.com> 15754 15755 Reviewed by Andreas Kling. 15756 15757 [Qt] image borders do not render correctly 15758 https://bugs.webkit.org/show_bug.cgi?id=49191 15759 15760 Test: fast/borders/border-image-01.html 15761 15762 * platform/graphics/qt/ImageQt.cpp: 15763 (WebCore::Image::drawPattern): 15764 15765 2010-11-08 James Simonsen <simonjam (a] chromium.org> 15766 15767 Reviewed by Dimitri Glazkov. 15768 15769 [Web Timing] Split domContentLoaded into start/end 15770 https://bugs.webkit.org/show_bug.cgi?id=48920 15771 15772 * dom/Document.cpp: 15773 (WebCore::Document::finishedParsing): 15774 * dom/DocumentTiming.h: 15775 (WebCore::DocumentTiming::DocumentTiming): 15776 * page/Timing.cpp: 15777 (WebCore::Timing::domContentLoadedStart): 15778 (WebCore::Timing::domContentLoadedEnd): 15779 * page/Timing.h: 15780 * page/Timing.idl: 15781 15782 2010-11-08 Nate Chapin <japhet (a] chromium.org> 15783 15784 Reviewed by Adam Barth. 15785 15786 Call ApplicationCacheHost::maybeLoadResource() in 15787 ResourceLoader::start() instead of ResourceLoader::load(). 15788 maybeLoadResource() might mutate the ResourceRequest, and 15789 in its current location any modifications are lost. 15790 15791 https://bugs.webkit.org/show_bug.cgi?id=49221 15792 15793 Fixes a couple of http/tests/appcache tests 15794 failing on chromium. 15795 15796 * loader/ResourceLoader.cpp: 15797 (WebCore::ResourceLoader::load): 15798 (WebCore::ResourceLoader::start): 15799 15800 2010-11-08 Chang Shu <chang.shu (a] nokia.com> 15801 15802 Reviewed by Antonio Gomes. 15803 15804 [GTK] Use Space to toggle arrow key handling for selection change or 15805 spatial navigation. Put the logic in common code to pass both Qt and 15806 GTK. Mac won't work because arrow keys trigger the popup. 15807 https://bugs.webkit.org/show_bug.cgi?id=49150 15808 15809 Existing test: fast/events/spatial-navigation/snav-single-select.html 15810 15811 * dom/SelectElement.cpp: 15812 (WebCore::SelectElement::menuListDefaultEventHandler): 15813 15814 2010-11-08 Jenn Braithwaite <jennb (a] chromium.org> 15815 15816 Reviewed by Pavel Feldman. 15817 15818 _bindResourceURL in ResourceManager.js may not add resource to map 15819 https://bugs.webkit.org/show_bug.cgi?id=49088 15820 15821 No new tests. pfeldman working on better test harness and tests. 15822 15823 * inspector/front-end/ResourceManager.js: 15824 (WebInspector.ResourceManager.prototype._bindResourceURL): 15825 15826 2010-11-08 John Knottenbelt <jknotten (a] chromium.org> 15827 15828 Reviewed by Steve Block. 15829 15830 Convert to and from DOMTimeStamp with converter functions. 15831 This is a refactoring only, covered by existing layout tests. 15832 https://bugs.webkit.org/show_bug.cgi?id=49066 15833 15834 * GNUmakefile.am: 15835 * WebCore.gypi: 15836 * WebCore.pro: 15837 * WebCore.vcproj/WebCore.vcproj: 15838 * WebCore.xcodeproj/project.pbxproj: 15839 * dom/DOMTimeStamp.h: Added. 15840 (WebCore::convertSecondsToDOMTimeStamp): 15841 (WebCore::convertDOMTimeStampToSeconds): 15842 * dom/Event.cpp: 15843 (WebCore::Event::Event): 15844 * dom/Event.h: 15845 * page/Geolocation.cpp: 15846 (WebCore::Geolocation::haveSuitableCachedPosition): 15847 * platform/android/GeolocationServiceAndroid.cpp: 15848 (WebCore::GeolocationServiceAndroid::isPositionMoreTimely): 15849 15850 2010-11-08 Ryosuke Niwa <rniwa (a] webkit.org> 15851 15852 Unreviewed build fix for Chromium Mac for r71590. 15853 15854 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 15855 (WebCore::provideStringAndAttributes): 15856 15857 2010-11-08 Anton Muhin <antonm (a] chromium.org> 15858 15859 Reviewed by Nate Chapin. 15860 15861 [v8] Get rid of automatically generated named property getter for classes with namedItem method 15862 https://bugs.webkit.org/show_bug.cgi?id=48770 15863 15864 * bindings/scripts/CodeGeneratorV8.pm: 15865 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 15866 15867 2010-11-08 Ned Holbrook <nholbrook (a] apple.com> 15868 15869 Reviewed by Adam Barth. 15870 15871 Avoid CFAttributedString creation in ComplexTextController by adopting UniChar provider SPI. 15872 https://bugs.webkit.org/show_bug.cgi?id=48886 15873 15874 * WebCore.exp.in: 15875 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 15876 (WebCore::provideStringAndAttributes): 15877 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): 15878 * platform/mac/WebCoreSystemInterface.h: 15879 * platform/mac/WebCoreSystemInterface.mm: 15880 15881 2010-11-08 David Hyatt <hyatt (a] apple.com> 15882 15883 Reviewed by Simon Fraser. 15884 15885 https://bugs.webkit.org/show_bug.cgi?id=49228 15886 15887 REGRESSION: caret too short when a positive line height is specified. Now that lineTop no longer 15888 accidentally incorporates the top leading, we need to use selectionTop/Bottom for the caret rect. 15889 15890 * rendering/RenderText.cpp: 15891 (WebCore::RenderText::localCaretRect): 15892 15893 2010-11-08 Pierre-Antoine LaFayette <pierre.lafayette (a] gmail.com> 15894 15895 Reviewed by Darin Fisher. 15896 15897 [chromium] Adding hasUserGesture flag to the ResourceRequest 15898 https://bugs.webkit.org/show_bug.cgi?id=37057 15899 15900 This flag is to be used on the browser side to indicate when a 15901 download has been user initiated. 15902 15903 No new tests. This change will be tested through a browser UI test. 15904 15905 * platform/network/chromium/ResourceRequest.h: 15906 (WebCore::ResourceRequest::ResourceRequest): 15907 (WebCore::ResourceRequest::hasUserGesture): 15908 (WebCore::ResourceRequest::setHasUserGesture): 15909 15910 2010-11-08 Chris Rogers <crogers (a] google.com> 15911 15912 Reviewed by Kenneth Russell. 15913 15914 Remove obsolete PASSTHROUGH and MATRIXMIX panner mode 15915 https://bugs.webkit.org/show_bug.cgi?id=49087 15916 15917 No new tests since audio API is not yet implemented. 15918 15919 * platform/audio/Panner.cpp: 15920 (WebCore::Panner::create): 15921 * platform/audio/Panner.h: 15922 * webaudio/AudioPannerNode.h: 15923 * webaudio/AudioPannerNode.idl: 15924 15925 2010-11-08 Patrick Gansterer <paroga (a] webkit.org> 15926 15927 Reviewed by Adam Roben. 15928 15929 Merge EditorWinCE.cpp into EditorWin.cpp 15930 https://bugs.webkit.org/show_bug.cgi?id=49095 15931 15932 * platform/win/EditorWin.cpp: 15933 (WebCore::Editor::newGeneralClipboard): 15934 * platform/wince/EditorWinCE.cpp: Removed. 15935 15936 2010-11-08 David Hyatt <hyatt (a] apple.com> 15937 15938 Reviewed by Simon Fraser. 15939 15940 https://bugs.webkit.org/show_bug.cgi?id=49217 15941 15942 Fix coordinate space mismatch in RenderReplaced and make sure RenderText retains its old behavior of 15943 preferring later lines when there is overlap. 15944 15945 * rendering/RenderReplaced.cpp: 15946 (WebCore::RenderReplaced::positionForPoint): 15947 * rendering/RenderText.cpp: 15948 (WebCore::RenderText::positionForPoint): 15949 15950 2010-11-08 Steve Block <steveblock (a] google.com> 15951 15952 Reviewed by David Levin. 15953 15954 Building for Android generates several compiler warnings 15955 https://bugs.webkit.org/show_bug.cgi?id=49175 15956 15957 Fixes these warnings, most of which are trivial. 15958 - PREFIX_FOR_WEBCORE was previously required for STL's algorithm, but is no 15959 longer. See 15960 http://android.git.kernel.org/?p=platform/external/webkit.git;a=commit;h=a47ab5294213cca2741f453b450b02666e08cac8 15961 - The definition of EXPORT is required only for the JNI entry point in 15962 WebKit/android, so does not need to be in WebCorePrefix.h 15963 15964 No new tests, fixes compile warnings only. 15965 15966 * WebCorePrefix.h: 15967 * bridge/jni/jsc/JNIUtilityPrivate.cpp: 15968 (JSC::Bindings::convertValueToJValue): 15969 * platform/android/FileSystemAndroid.cpp: 15970 (WebCore::listDirectory): 15971 15972 2010-11-08 Dan Bernstein <mitz (a] apple.com> 15973 15974 Reviewed by Darin Adler. 15975 15976 <rdar://problem/8119781> Crash zooming into Word document at office.live.com 15977 https://bugs.webkit.org/show_bug.cgi?id=49203 15978 15979 Test: fast/css/zoom-change-triggering-layout.html 15980 15981 RenderBox::styleDidChange() was calling scrollLeft() and scrollTop(), whose RenderTextControlSingleLine 15982 overrides can trigger layout. 15983 15984 * rendering/RenderBox.cpp: 15985 (WebCore::RenderBox::styleDidChange): Use the layer directly for updating the scroll offsets when 15986 the zoom factor changes. 15987 15988 2010-11-08 David Hyatt <hyatt (a] apple.com> 15989 15990 Reviewed by Simon Fraser. 15991 15992 https://bugs.webkit.org/show_bug.cgi?id=48587 15993 15994 Make Ruby work with vertical text. Ruby already nearly does work. The only big issue I found was with 15995 flipped lines writing modes. Make sure to mutate the writing-mode of the RenderRubyRun to ensure that 15996 the ruby text is on the correct side of the ruby base. 15997 15998 Added fast/blockflow tests of the various writing modes. 15999 16000 * rendering/RenderBlock.cpp: 16001 (WebCore::RenderBlock::baselinePosition): 16002 (WebCore::RenderBlock::firstLineBoxBaseline): 16003 (WebCore::RenderBlock::lastLineBoxBaseline): 16004 * rendering/RenderRubyRun.cpp: 16005 (WebCore::RenderRubyRun::staticCreateRubyRun): 16006 16007 2010-11-08 Brent Fulgham <bfulgham (a] webkit.org> 16008 16009 Unreviewed build correction after @70369/@70846. 16010 16011 Please use PLATFORM(CG) to define CG-specific code, not 16012 PLATFORM(CF). 16013 16014 * platform/image-decoders/ImageDecoder.cpp: 16015 * platform/image-decoders/ImageDecoder.h: 16016 16017 2010-11-08 James Robinson <jamesr (a] chromium.org> 16018 16019 Reviewed by Dimitri Glazkov. 16020 16021 Input element with inner spin button set to display:none causes crash 16022 https://bugs.webkit.org/show_bug.cgi?id=49121 16023 16024 Null check the inner spin button's renderer before dereferencing it. 16025 16026 Test: fast/forms/input-number-spinbutton-crash.html 16027 16028 * rendering/RenderTextControlSingleLine.cpp: 16029 (WebCore::RenderTextControlSingleLine::forwardEvent): 16030 16031 2010-11-08 Xiaomei Ji <xji (a] chromium.org> 16032 16033 Reviewed by Dan Bernstein. 16034 16035 Fix Unicode explicit bidi control characters are removed in editing operations, 16036 such as insert/copy/cut/paste. 16037 https://bugs.webkit.org/show_bug.cgi?id=25321 16038 16039 Unicode explicit bidi control characters were excluded in BidiRun and 16040 consequently from InlineTextBoxes due to their effect on rendering complex 16041 text with ATSUI. 16042 The fix is including those characters in BidiRun and remove them from 16043 ComplexTextRun with ATSUI. 16044 16045 Test: editing/inserting/insert-paste-bidi-control.html 16046 fast/text/atsui-bidi-control.html 16047 16048 * platform/graphics/mac/ComplexTextControllerATSUI.cpp: 16049 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): 16050 * platform/text/BidiResolver.h: 16051 (WebCore::::checkDirectionInLowerRaiseEmbeddingLevel): 16052 (WebCore::::lowerExplicitEmbeddingLevel): 16053 (WebCore::::raiseExplicitEmbeddingLevel): 16054 (WebCore::::createBidiRunsForLine): 16055 16056 2010-11-08 David Hyatt <hyatt (a] apple.com> 16057 16058 Reviewed by Dan Bernstein. 16059 16060 https://bugs.webkit.org/show_bug.cgi?id=49126 16061 16062 RenderBlock::positionForPoint is not writing-mode aware. Patch the function to examine lines in the correct 16063 writing-mode direction. Patched and renamed a number of helpers used by positionForPoint. 16064 16065 Fixed a bug with RenderReplaced's positionForPoint. There was a coordinate space mismatch between what the 16066 function expected (local coordinates) and what was passed in (containing block coords), which meant the function didn't even work. 16067 16068 Fixed a bug with the propagation of selection state on RenderReplaced to its containing block. The bit double propagated 16069 because both the base class function and the derived class function did the propagation, and the setter function did not 16070 do the right thing if this happened. 16071 16072 Patched the localSelectionRect method on RenderReplaced so that selection draws in the right place in all writing modes. 16073 16074 Added new tests of positionForPoint and replaced elements in fast/blockflow. 16075 16076 * editing/visible_units.cpp: 16077 (WebCore::previousLinePosition): 16078 (WebCore::nextLinePosition): 16079 * platform/graphics/IntPoint.h: 16080 (WebCore::IntPoint::transpose): 16081 * rendering/InlineBox.cpp: 16082 (WebCore::InlineBox::paint): 16083 * rendering/RenderBlock.cpp: 16084 (WebCore::RenderBlock::nodeAtPoint): 16085 (WebCore::RenderBlock::hitTestFloats): 16086 (WebCore::positionForPointRespectingEditingBoundaries): 16087 (WebCore::RenderBlock::positionForPointWithInlineChildren): 16088 (WebCore::RenderBlock::positionForPoint): 16089 * rendering/RenderReplaced.cpp: 16090 (WebCore::RenderReplaced::positionForPoint): 16091 (WebCore::RenderReplaced::localSelectionRect): 16092 (WebCore::RenderReplaced::setSelectionState): 16093 * rendering/RenderReplaced.h: 16094 * rendering/RenderText.cpp: 16095 (WebCore::RenderText::positionForPoint): 16096 * rendering/RootInlineBox.cpp: 16097 (WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition): 16098 * rendering/RootInlineBox.h: 16099 16100 2010-11-08 Nate Chapin <japhet (a] chromium.org> 16101 16102 Reviewed by Alexey Proskuryakov. 16103 16104 Move connection-per-host counting and request prioritization out 16105 of Loader and down to the ResourceLoader level. 16106 16107 https://bugs.webkit.org/show_bug.cgi?id=27165 16108 16109 Refactor only, so no new tests. 16110 16111 * CMakeLists.txt: 16112 * GNUmakefile.am: 16113 * WebCore.exp.in: 16114 * WebCore.gypi: 16115 * WebCore.pro: 16116 * WebCore.vcproj/WebCore.vcproj: 16117 * WebCore.xcodeproj/project.pbxproj: 16118 * dom/ContainerNode.cpp: 16119 (WebCore::ContainerNode::suspendPostAttachCallbacks): 16120 (WebCore::ContainerNode::resumePostAttachCallbacks): 16121 * loader/DocumentThreadableLoader.cpp: 16122 (WebCore::DocumentThreadableLoader::loadRequest): 16123 * loader/MainResourceLoader.cpp: 16124 (WebCore::MainResourceLoader::loadNow): 16125 * loader/NetscapePlugInStreamLoader.cpp: 16126 (WebCore::NetscapePlugInStreamLoader::create): 16127 * loader/NetscapePlugInStreamLoader.h: 16128 * loader/ResourceLoadScheduler.cpp: Added. 16129 (WebCore::ResourceLoadScheduler::hostForURL): 16130 (WebCore::resourceLoadScheduler): Returns the single ResourceLoadScheduler instance 16131 (WebCore::ResourceLoadScheduler::ResourceLoadScheduler): 16132 (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad): 16133 (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad): 16134 (WebCore::ResourceLoadScheduler::addMainResourceLoad): 16135 (WebCore::ResourceLoadScheduler::scheduleLoad): 16136 (WebCore::ResourceLoadScheduler::remove): 16137 (WebCore::ResourceLoadScheduler::crossOriginRedirectReceived): 16138 (WebCore::ResourceLoadScheduler::servePendingRequests): 16139 (WebCore::ResourceLoadScheduler::suspendPendingRequests): 16140 (WebCore::ResourceLoadScheduler::resumePendingRequests): 16141 (WebCore::ResourceLoadScheduler::scheduleServePendingRequests): 16142 (WebCore::ResourceLoadScheduler::requestTimerFired): 16143 (WebCore::ResourceLoadScheduler::assertLoaderBeingCounted): 16144 (WebCore::ResourceLoadScheduler::HostInformation::assertLoaderBeingCounted): 16145 (WebCore::ResourceLoadScheduler::HostInformation::HostInformation): 16146 (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation): 16147 (WebCore::ResourceLoadScheduler::HostInformation::schedule): 16148 (WebCore::ResourceLoadScheduler::HostInformation::addLoadInProgress): 16149 (WebCore::ResourceLoadScheduler::HostInformation::remove): 16150 (WebCore::ResourceLoadScheduler::HostInformation::hasRequests): 16151 * loader/ResourceLoadScheduler.h: Added. 16152 (WebCore::ResourceLoadScheduler::HostInformation::name): 16153 (WebCore::ResourceLoadScheduler::HostInformation::limitRequests): 16154 (WebCore::ResourceLoadScheduler::HostInformation::requestsPending): 16155 * loader/ResourceLoader.cpp: 16156 (WebCore::ResourceLoader::releaseResources): Remove this from ResourceLoadScheduler's counting. 16157 (WebCore::ResourceLoader::load): 16158 (WebCore::ResourceLoader::start): Create the ResourceHandle, called by ResourceLoadScheduler. 16159 (WebCore::ResourceLoader::willSendRequest): Ensure ResourceLoadScheduler counts redirects 16160 correctly. 16161 * loader/ResourceLoader.h: 16162 (WebCore::ResourceLoader::url): 16163 * loader/icon/IconLoader.cpp: 16164 (WebCore::IconLoader::startLoading): 16165 * loader/loader.cpp: Move scheduling to ResourceLoadScheduler, remove Host subclass 16166 and make Loader the SubresourceLoaderClient instead. 16167 (WebCore::determinePriority): 16168 (WebCore::Loader::load): Schedule the creation of the ResourceHandle, rather than 16169 doing it immediately. 16170 (WebCore::Loader::cancelRequests): 16171 (WebCore::Loader::didFinishLoading): 16172 (WebCore::Loader::didFail): 16173 (WebCore::Loader::didReceiveResponse): 16174 (WebCore::Loader::didReceiveData): 16175 (WebCore::Loader::didReceiveCachedMetadata): 16176 * loader/loader.h: 16177 * page/EventSource.cpp: 16178 (WebCore::EventSource::connect): 16179 (WebCore::EventSource::endRequest): 16180 * plugins/PluginStream.cpp: 16181 (WebCore::PluginStream::start): 16182 * xml/XMLHttpRequest.cpp: 16183 (WebCore::XMLHttpRequest::XMLHttpRequest): 16184 (WebCore::XMLHttpRequest::~XMLHttpRequest): 16185 (WebCore::XMLHttpRequest::createRequest): 16186 (WebCore::XMLHttpRequest::didFail): 16187 (WebCore::XMLHttpRequest::didFinishLoading): 16188 * xml/XMLHttpRequest.h: 16189 16190 2010-11-08 Ryosuke Niwa <rniwa (a] webkit.org> 16191 16192 Reviewed by Darin Adler. 16193 16194 Remove the remaining editing-style functions from ApplyStyleCommand 16195 https://bugs.webkit.org/show_bug.cgi?id=49155 16196 16197 Replaced removeNonEditingProperties, editingStyleAtPosition, prepareEditingStyleToApplyAt, 16198 and removeStylesAddedByNode in ApplyStyleCommand.cpp by removeNonEditingProperties, EditingStyle::create, 16199 prepareToApplyAt, and removeStyleAddedByNode in EditingStyle.cpp. 16200 16201 Also removed unnecessary header includes from various cpp files. 16202 16203 No tests are added since this is a cleanup. 16204 16205 * editing/ApplyStyleCommand.cpp: Removed removeNonEditingProperties, editingStyleAtPosition, 16206 prepareEditingStyleToApplyAt, and removeStylesAddedByNode. 16207 * editing/ApplyStyleCommand.h: Ditto. 16208 * editing/DeleteSelectionCommand.cpp: Removed removeEnclosingAnchorStyle. 16209 (WebCore::DeleteSelectionCommand::saveTypingStyleState): Calls removeStylesAddedByNode instead. 16210 * editing/EditingStyle.cpp: 16211 (WebCore::copyEditingProperties): Moved and renamed ApplyStyleCommand::removeNonEditingProperties. 16212 (WebCore::editingStyleFromComputedStyle): Calls copyEditingProperties. Changed the argument to PassRefPtr 16213 as supposed to a raw pointer for convenience. 16214 (WebCore::EditingStyle::init): Calls editingStyleFromComputedStyle. 16215 (WebCore::EditingStyle::removeStyleAddedByNode): Added. 16216 (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode): Added. 16217 (WebCore::EditingStyle::removeNonEditingProperties): Added. 16218 (WebCore::editingStyleIncludingTypingStyle): Calls copyEditingProperties. 16219 * editing/EditingStyle.h: Added prototypes. 16220 * editing/Editor.cpp: 16221 (WebCore::Editor::selectionComputedStyle): Uses EditingStyle. 16222 * editing/InsertParagraphSeparatorCommand.cpp: 16223 (WebCore::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion): Ditto. 16224 (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Ditto. 16225 * editing/InsertParagraphSeparatorCommand.h: 16226 * editing/RemoveFormatCommand.cpp: 16227 (WebCore::RemoveFormatCommand::doApply): Ditto. 16228 * editing/ReplaceSelectionCommand.cpp: 16229 (WebCore::handleStyleSpansBeforeInsertion): Ditto. 16230 (WebCore::ReplaceSelectionCommand::handleStyleSpans): Ditto. 16231 (WebCore::ReplaceSelectionCommand::doApply): Ditto. 16232 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto. 16233 * editing/ReplaceSelectionCommand.h: 16234 * editing/markup.cpp: Removed removeEnclosingMailBlockquoteStyle and removeDefaultStyles. 16235 (WebCore::createMarkup): Uses EditingStyle. 16236 16237 2010-11-08 Simon Fraser <simon.fraser (a] apple.com> 16238 16239 Reviewed by Dan Bernstein. 16240 16241 Media objects in nested iframes showing above everything else in TinyMCE 16242 https://bugs.webkit.org/show_bug.cgi?id=44877 16243 16244 Tests: compositing/iframes/become-composited-nested-iframes.html 16245 compositing/iframes/overlapped-nested-iframes.html 16246 16247 The overlap testing logic that connects compositing across iframe boundaries 16248 needed to be educated about nestd iframes, for platforms (i.e. Mac) where iframes 16249 are allowed to be independently composited. 16250 16251 Also fix a bug that could cause iframes (and possibly other elements) that share 16252 style to fail to become composited. 16253 16254 * css/CSSStyleSelector.cpp: 16255 (WebCore::CSSStyleSelector::canShareStyleWithElement): Disable style sharing for elements 16256 that force synethetic style updates in order to gain RenderLayers, so they can become 16257 composited. This is tested by become-composited-nested-iframes.html, though it is very 16258 timing-dependent. 16259 16260 * page/FrameView.h: 16261 * page/FrameView.cpp: 16262 (WebCore::FrameView::hasCompositedContentIncludingDescendants): New method that 16263 is a "deep" version of hasCompositedContent() on platforms where that is necessary to ask. 16264 16265 (WebCore::FrameView::hasCompositingAncestor): New method. 16266 (WebCore::FrameView::setIsOverlapped): If we can have independently composited iframes, 16267 we need to force all descendant iframes to update so that compositing gets hooked up across 16268 nested iframes. 16269 16270 (WebCore::FrameView::isOverlappedIncludingAncestors): New method, only called on platforms 16271 where allowsIndependentlyCompositedIFrames() is true. 16272 16273 * rendering/RenderLayerCompositor.h: 16274 * rendering/RenderLayerCompositor.cpp: 16275 (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedIFrames): Utility method that 16276 returns true if an iframe can be a compositing root. 16277 16278 (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Make use of 16279 allowsIndependentlyCompositedIFrames(). 16280 16281 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): We need to notify all 16282 descendant frames, not just children. 16283 16284 * rendering/RenderObject.cpp: 16285 (WebCore::RenderObject::setStyle): Add assert to ensure that we don't do style sharing 16286 for elements that play tricks with synthetic style changes. 16287 16288 * rendering/RenderWidget.cpp: 16289 (WebCore::RenderWidget::paint): Run overlap testing if a frame has any composited 16290 descendants. 16291 16292 2010-11-08 Darin Adler <darin (a] apple.com> 16293 16294 Reviewed by Alexey Proskuryakov. 16295 16296 Incorrect image map used when multiple maps have the same name 16297 https://bugs.webkit.org/show_bug.cgi?id=49086 16298 16299 Tests: fast/images/image-map-multiple.html 16300 fast/images/image-map-multiple-xhtml.xhtml 16301 16302 Factored out the code used to look up elements by id and reused it 16303 to look up maps by name. It handles multiple elements efficiently. 16304 16305 * dom/Document.cpp: 16306 (WebCore::Document::DocumentOrderedMap::clear): Added. 16307 (WebCore::Document::DocumentOrderedMap::add): Added. Has code that 16308 was formerly in addElementById. 16309 (WebCore::Document::DocumentOrderedMap::remove): Added. Has code that 16310 was formerly in removeElementById. 16311 (WebCore::Document::DocumentOrderedMap::get): Added. Has code that 16312 was formerly in getElementById. 16313 (WebCore::keyMatchesId): Added. 16314 (WebCore::Document::getElementById): Use DocumentOrderedMap::get. 16315 (WebCore::Document::addElementById): Use DocumentOrderedMap::add. 16316 (WebCore::Document::removeElementById): Use DocumentOrderedMap::remove. 16317 (WebCore::Document::addImageMap): Use DocumentOrderedMap::add. 16318 (WebCore::Document::removeImageMap): Use DocumentOrderedMap::remove. 16319 (WebCore::keyMatchesMapName): Added. 16320 (WebCore::keyMatchesLowercasedMapName): Added. 16321 (WebCore::Document::getImageMap): Use DocumentOrderedMap::get. 16322 16323 * dom/Document.h: Added DocumentOrderedMap class, used inside the 16324 Document class. Changed m_imageMapsByName to be a DocumentOrderedMap. 16325 Changed m_elementsById to be a DocumentOrderedMap. Eliminated 16326 m_duplicateIds, since DocumentOrderedMap now has that internally. 16327 16328 2010-11-08 Alexey Proskuryakov <ap (a] apple.com> 16329 16330 Reviewed by Darin Adler. 16331 16332 https://bugs.webkit.org/show_bug.cgi?id=48685 16333 Notify UI process about focused frame 16334 16335 * WebCore.xcodeproj/project.pbxproj: Adding developmentRegion back. 16336 16337 * loader/EmptyClients.h: (WebCore::EmptyChromeClient::focusedFrameChanged): 16338 * page/Chrome.cpp: (WebCore::Chrome::focusedFrameChanged): 16339 * page/Chrome.h: 16340 * page/ChromeClient.h: 16341 Added a new Chrome client notification. 16342 16343 * page/FocusController.cpp: (WebCore::FocusController::setFocusedFrame): Notify chrome. 16344 16345 2010-11-08 Anders Carlsson <andersca (a] apple.com> 16346 16347 Reviewed by Adam Roben. 16348 16349 Remove use of HIGetScaleFactor 16350 https://bugs.webkit.org/show_bug.cgi?id=49186 16351 <rdar://problem/8618410> 16352 16353 Scale factors can vary on a display-by-display basis and it doesn't make sense 16354 to compute scale factor event coordinates like this. 16355 16356 * plugins/mac/PluginViewMac.mm: 16357 (WebCore::PluginView::globalMousePosForPlugin): 16358 16359 2010-11-08 Noam Rosenthal <noam.rosenthal (a] nokia.com> 16360 16361 Reviewed by Kenneth Rohde Christiansen. 16362 16363 [Texmap] [Qt] Texture mapper initial implementation 16364 https://bugs.webkit.org/show_bug.cgi?id=47070 16365 16366 Make the necessary changes in TextureMapperNode in preparation of making it possible to paint it 16367 from a different thread. 16368 The main problematic part was the cache, which made it so that textures can become invalid and have to 16369 be rerendered from content during paint. This is solved here by creating a pack/unpack function for 16370 textures, which lets a texture archive its data away from video memory, or do whatever the platform 16371 thinks is right for freeing memory without needing to re-render again from content (which cannot be 16372 made thread safe). 16373 16374 After this change, TextureMapperNode moved to its own file, and has 2 entry points: paint and syncCompositingState. 16375 The idea is that syncCompositingState has to be called in the UI thread, paint can be called from a different 16376 thread, and they should block each other. 16377 16378 The new test tests the cache code-path, to show that the pack/unpack technique works for cases where it 16379 kicks in. 16380 16381 Test: compositing/layer-creation/many-layers.html 16382 16383 * WebCore.pro: 16384 * platform/graphics/opengl/TextureMapperGL.cpp: 16385 (WebCore::BitmapTextureGL::~BitmapTextureGL): 16386 (WebCore::BitmapTextureGL::BitmapTextureGL): 16387 (WebCore::TextureMapperGL::TextureMapperGL): 16388 (WebCore::TextureMapperGL::drawTexture): 16389 * platform/graphics/opengl/TextureMapperGL.h: 16390 (WebCore::TextureMapperGL::create): 16391 * platform/graphics/qt/TextureMapperQt.cpp: 16392 (WebCore::BitmapTextureQt::pack): 16393 (WebCore::BitmapTextureQt::unpack): 16394 (WebCore::TextureMapper::create): 16395 (WebCore::BitmapTextureQt::BitmapTextureQt): 16396 * platform/graphics/qt/TextureMapperQt.h: Added. 16397 16398 2010-11-08 Simon Fraser <simon.fraser (a] apple.com> 16399 16400 Reviewed by Sam Weinig. 16401 16402 Allow applets to participate in accelerated compositing 16403 https://bugs.webkit.org/show_bug.cgi?id=49117 16404 <rdar://problem/8625819> 16405 16406 Add RenderApplet to the list of renderers that can optionally get RenderLayers, 16407 and be composited for some reason. 16408 16409 Not currently testable. 16410 16411 * rendering/RenderApplet.h: Outdented the class declaration. 16412 16413 * rendering/RenderApplet.cpp: 16414 (WebCore::RenderApplet::requiresLayer): Return true if the underlying widget 16415 has a platform layer. 16416 (WebCore::RenderApplet::allowsAcceleratedCompositing): Check the widget to see 16417 if it has a platform layer. 16418 16419 * rendering/RenderLayer.cpp: 16420 (WebCore::RenderLayer::shouldBeNormalFlowOnly): Reformat, and add isApplet(). 16421 (WebCore::RenderLayer::isSelfPaintingLayer): Reformat, and add isApplet(). 16422 * rendering/RenderLayerBacking.cpp: 16423 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Use 'renderer' local variable 16424 for efficiency. Now check for embedded objects and applets. 16425 * rendering/RenderLayerCompositor.cpp: 16426 (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Check for embedded objects and applets. 16427 16428 2010-11-08 Xan Lopez <xlopez (a] igalia.com> 16429 16430 Reviewed by Martin Robinson. 16431 16432 * GNUmakefile.am: add missing files to fix distcheck. 16433 16434 2010-11-08 Alexander Pavlov <apavlov (a] chromium.org> 16435 16436 Reviewed by David Hyatt. 16437 16438 getPropertyValue("background") causes crash 16439 https://bugs.webkit.org/show_bug.cgi?id=49055 16440 16441 Test: fast/css/background-norepeat-crash.html 16442 16443 * css/CSSMutableStyleDeclaration.cpp: 16444 (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): 16445 16446 2010-11-08 Martin Robinson <mrobinson (a] igalia.com> 16447 16448 Reviewed by Xan Lopez. 16449 16450 [GTK] Wrapped DOM bindings GObjects do not disconnect event listeners when they die 16451 https://bugs.webkit.org/show_bug.cgi?id=49136 16452 16453 When GObjects are finalized and freed, disconnect their event listeners, so that 16454 WebCore does not try to fire signals on dead GObjects. We do this by holding a weak 16455 reference to the GObject in the signal listener. When the weak reference notification 16456 callback is executed, we disconnect the event listener. 16457 16458 No new tests; this fix is proved by prevention of crashes in soon to be 16459 landed editing delegate signals, which are covered by the layout tests. 16460 16461 * bindings/gobject/GObjectEventListener.cpp: 16462 (WebCore::GObjectEventListener::GObjectEventListener): Updated the constructor. 16463 (WebCore::GObjectEventListener::~GObjectEventListener): Disconnect the weak reference 16464 if the GObject is still alive. 16465 (WebCore::GObjectEventListener::gobjectDestroyed): When the GObject is destroyed, 16466 disconnect the appropriate event listener. 16467 (WebCore::GObjectEventListener::handleEvent): Changes to reflect use of CString 16468 instead of WebCore string. 16469 * bindings/gobject/GObjectEventListener.h: 16470 (WebCore::GObjectEventListener::addEventListener): Changed create to addEventListener, 16471 so that the connection and disconnection is an internal contract to the class. 16472 (WebCore::GObjectEventListener::gobjectDestroyedCallback): Added. 16473 * bindings/scripts/CodeGeneratorGObject.pm: Modified the code generate to use 16474 GObjectEventListener::addEventListener and no longer call addEventListener on 16475 its own. 16476 16477 2010-11-08 Adam Roben <aroben (a] apple.com> 16478 16479 Windows Release build fix after r71514 16480 16481 The build was failing due to an alignment error. Strangely, depending 16482 on the order of SVGStaticPropertyTearOff's members, the build will 16483 either fail in Release (as it does before this change), or Debug (as it 16484 did before r71514), but not both. 16485 16486 * svg/properties/SVGStaticPropertyTearOff.h: 16487 (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): Copied 16488 the #pragma pack trick from JSSVGPODTypeWrapper.h, which has similar 16489 issues. 16490 16491 2010-11-08 Yury Semikhatsky <yurys (a] chromium.org> 16492 16493 Reviewed by Pavel Feldman. 16494 16495 Web Inspector: decouple ScriptArguments from ScriptCallStack 16496 https://bugs.webkit.org/show_bug.cgi?id=48058 16497 16498 ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8. 16499 The factory functions that allow to create ScriptCallStack from VM-specific 16500 objects are defined in ScriptCallStackFactory.cpp. 16501 16502 ScriptArguments class is used for passing arguments from JS code to the native 16503 part. 16504 16505 No new tests. This refactoring is covered with existing Console tests. 16506 16507 * Android.jscbindings.mk: 16508 * Android.v8bindings.mk: 16509 * CMakeLists.txt: 16510 * GNUmakefile.am: 16511 * WebCore.gypi: 16512 * WebCore.pro: 16513 * WebCore.vcproj/WebCore.vcproj: 16514 * WebCore.xcodeproj/project.pbxproj: 16515 * bindings/js/JSBindingsAllInOne.cpp: 16516 * bindings/js/JSConsoleCustom.cpp: 16517 (WebCore::JSConsole::profile): 16518 (WebCore::JSConsole::profileEnd): 16519 * bindings/js/ScriptCallStackFactory.cpp: Renamed from WebCore/bindings/js/ScriptCallStack.cpp. 16520 (WebCore::createScriptCallStack): 16521 (WebCore::createScriptArguments): 16522 (WebCore::ScriptCallStack::stackTrace): 16523 * bindings/js/ScriptCallStackFactory.h: Copied from WebCore/bindings/js/ScriptCallFrame.cpp. 16524 * bindings/js/ScriptState.cpp: 16525 (WebCore::ScriptStateProtectedPtr::~ScriptStateProtectedPtr): 16526 (WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr): 16527 (WebCore::ScriptStateProtectedPtr::get): 16528 * bindings/js/ScriptState.h: 16529 * bindings/scripts/CodeGeneratorJS.pm: 16530 * bindings/scripts/CodeGeneratorV8.pm: 16531 * bindings/scripts/test/JS/JSTestObj.cpp: 16532 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 16533 * bindings/scripts/test/V8/V8TestObj.cpp: 16534 (WebCore::TestObjInternal::customArgsAndExceptionCallback): 16535 * bindings/v8/ScriptCallFrame.h: Removed. 16536 * bindings/v8/ScriptCallStack.h: Removed. 16537 * bindings/v8/ScriptCallStackFactory.cpp: Renamed from WebCore/bindings/v8/ScriptCallStack.cpp. 16538 (WebCore::toScriptCallFrame): 16539 (WebCore::toScriptCallFramesVector): 16540 (WebCore::createScriptCallStack): 16541 (WebCore::createScriptArguments): 16542 (WebCore::ScriptCallStack::stackTrace): 16543 * bindings/v8/ScriptCallStackFactory.h: Copied from WebCore/bindings/js/ScriptCallFrame.cpp. 16544 * bindings/v8/ScriptController.cpp: 16545 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 16546 * bindings/v8/ScriptState.h: 16547 (WebCore::ScriptStateProtectedPtr::get): 16548 * bindings/v8/V8ConsoleMessage.cpp: 16549 (WebCore::V8ConsoleMessage::handler): 16550 (WebCore::V8ConsoleMessage::dispatchNow): 16551 * bindings/v8/V8ConsoleMessage.h: 16552 * bindings/v8/custom/V8ConsoleCustom.cpp: 16553 (WebCore::V8Console::traceCallback): 16554 (WebCore::V8Console::assertCallback): 16555 (WebCore::V8Console::profileCallback): 16556 (WebCore::V8Console::profileEndCallback): 16557 * dom/NodeFilter.h: 16558 * inspector/ConsoleMessage.cpp: 16559 (WebCore::ConsoleMessage::ConsoleMessage): 16560 (WebCore::ConsoleMessage::addToFrontend): 16561 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 16562 (WebCore::ConsoleMessage::isEqual): 16563 * inspector/ConsoleMessage.h: 16564 * inspector/InspectorController.cpp: 16565 (WebCore::InspectorController::addMessageToConsole): 16566 (WebCore::InspectorController::startGroup): 16567 * inspector/InspectorController.h: 16568 * inspector/ScriptArguments.cpp: Copied from WebCore/bindings/v8/ScriptCallFrame.cpp. 16569 (WebCore::ScriptArguments::ScriptArguments): 16570 (WebCore::ScriptArguments::~ScriptArguments): 16571 (WebCore::ScriptArguments::argumentAt): 16572 (WebCore::ScriptArguments::globalState): 16573 (WebCore::ScriptArguments::getFirstArgumentAsString): 16574 (WebCore::ScriptArguments::isEqual): 16575 * inspector/ScriptArguments.h: Copied from WebCore/bindings/js/ScriptCallFrame.h. 16576 (WebCore::ScriptArguments::argumentCount): 16577 * inspector/ScriptCallFrame.cpp: Renamed from WebCore/bindings/v8/ScriptCallFrame.cpp. 16578 (WebCore::ScriptCallFrame::ScriptCallFrame): 16579 (WebCore::ScriptCallFrame::~ScriptCallFrame): 16580 (WebCore::ScriptCallFrame::isEqual): 16581 (WebCore::ScriptCallFrame::buildInspectorObject): 16582 * inspector/ScriptCallFrame.h: Renamed from WebCore/bindings/js/ScriptCallFrame.h. 16583 (WebCore::ScriptCallFrame::functionName): 16584 (WebCore::ScriptCallFrame::sourceURL): 16585 (WebCore::ScriptCallFrame::lineNumber): 16586 * inspector/ScriptCallStack.cpp: Renamed from WebCore/bindings/js/ScriptCallFrame.cpp. 16587 (WebCore::ScriptCallStack::ScriptCallStack): 16588 (WebCore::ScriptCallStack::~ScriptCallStack): 16589 (WebCore::ScriptCallStack::at): 16590 (WebCore::ScriptCallStack::size): 16591 (WebCore::ScriptCallStack::isEqual): 16592 (WebCore::ScriptCallStack::buildInspectorObject): 16593 * inspector/ScriptCallStack.h: Renamed from WebCore/bindings/js/ScriptCallStack.h. 16594 * page/Console.cpp: 16595 (WebCore::Console::addMessage): 16596 (WebCore::Console::debug): 16597 (WebCore::Console::error): 16598 (WebCore::Console::info): 16599 (WebCore::Console::log): 16600 (WebCore::Console::dir): 16601 (WebCore::Console::dirxml): 16602 (WebCore::Console::trace): 16603 (WebCore::Console::assertCondition): 16604 (WebCore::Console::count): 16605 (WebCore::Console::markTimeline): 16606 (WebCore::Console::profile): 16607 (WebCore::Console::profileEnd): 16608 (WebCore::Console::timeEnd): 16609 (WebCore::Console::group): 16610 (WebCore::Console::groupCollapsed): 16611 (WebCore::Console::shouldCaptureFullStackTrace): 16612 (WebCore::Console::warn): 16613 * page/Console.h: 16614 (WebCore::Console::profiles): 16615 * page/Console.idl: 16616 16617 2010-11-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 16618 16619 Not reviewed. Build fix. 16620 16621 Attempt to fix windows builds after r71512. Swap order of members to avoid warning C4121. 16622 16623 * svg/properties/SVGStaticPropertyTearOff.h: 16624 (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): 16625 16626 2010-11-08 Mikhail Naganov <mnaganov (a] chromium.org> 16627 16628 Unreviewed. Fix Qt build after r71511. 16629 16630 * inspector/InspectorController.cpp: 16631 (WebCore::InspectorController::restoreInspectorStateFromCookie): 16632 16633 2010-11-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 16634 16635 Reviewed by Dirk Schulze. 16636 16637 Convert SVGPoint/SVGPointList to the new SVGPropertyTearOff concept 16638 https://bugs.webkit.org/show_bug.cgi?id=49067 16639 16640 Remove SVGAnimatedPoints interface, not reachable through bindings anyway, it was just another MI interface, that 16641 now has been integrated into SVGPolylineElement/SVGPolygonElement, simplfying the generation and avoiding virtual 16642 calls in SVGPolylineElement/SVGPolygonElement. 16643 16644 Remove the need to use manual XML <-> SVG DOM synchronization. The points/animatedPoints methods now create 16645 SVGListPropertyTearOffs, thus using the same synchronization/expose-to-bindings concept like all other 16646 animated properties. 16647 16648 Convert SVGPoint/SVGPointList to use the new SVGPropertyTearOff concept, adapted all code, as SVGPointList 16649 is now a plain Vector<FloatPoint>. Enable StrictTypeChecking for SVGPoint. 16650 16651 Test: svg/dom/SVGPoint.html 16652 16653 * Android.derived.v8bindings.mk: Remove SVGAnimatedPoints (and IDL generation). 16654 * Android.mk: Ditto. 16655 * CMakeLists.txt: Ditto. 16656 * DerivedSources.make: Ditto. 16657 * GNUmakefile.am: Ditto. Add SVGStaticPropertyTearOff.h to build. 16658 * WebCore.gypi: Ditto. 16659 * WebCore.order: Remove SVGAnimatedPoints symbols. 16660 * WebCore.pro: Remove SVGAnimatedPoints (and IDL generation). Add SVGStaticPropertyTearOff.h to build. 16661 * WebCore.vcproj/WebCore.vcproj: Ditto. 16662 * WebCore.xcodeproj/project.pbxproj: Ditto. 16663 * bindings/objc/DOMSVG.h: Remove DOMSVGAnimatedPoints include. 16664 * bindings/scripts/CodeGenerator.pm: Adapt code converting SVGPoint/SVGPointList to use the new SVGPropertyTearOff concepts. 16665 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 16666 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 16667 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 16668 * rendering/SVGRenderTreeAsText.cpp: Adapt for SVGPolyElement API change, use pointList() instead of points() (which is only used for bindings now). 16669 (WebCore::operator<<): 16670 * svg/SVGAllInOne.cpp: Remove SVGAnimatedPoints.cpp. 16671 * svg/SVGAnimateElement.cpp: Adapt for SVGPointList API change, it's not refcounted anymore. 16672 (WebCore::SVGAnimateElement::calculateAnimatedValue): 16673 (WebCore::SVGAnimateElement::calculateFromAndToValues): 16674 (WebCore::SVGAnimateElement::applyResultsToTarget): 16675 * svg/SVGAnimateElement.h: Ditto. 16676 * svg/SVGAnimatedPoints.cpp: Removed. 16677 * svg/SVGAnimatedPoints.h: Removed. 16678 * svg/SVGAnimatedPoints.idl: Removed. 16679 * svg/SVGParserUtilities.cpp: Adapt for SVGPointList API change, it's not refcounted anymore. 16680 (WebCore::pointsListFromSVGData): 16681 * svg/SVGParserUtilities.h: Ditto. 16682 * svg/SVGPoint.idl: Remove PODType marker, and add StrictTypeChecking for x/y attributes. 16683 * svg/SVGPointList.cpp: SVGPointList is now a plain Vector<FloatPoint>, rewrite. 16684 (WebCore::SVGPointList::valueAsString): 16685 (WebCore::SVGPointList::createAnimated): 16686 * svg/SVGPointList.h: Ditto. 16687 (WebCore::SVGPointList::SVGPointList): 16688 * svg/SVGPolyElement.cpp: Remove manual SVG <-> XML DOM synchronization. Now handles through the SVGAnimatedPropertyTearOff concept. 16689 (WebCore::SVGPolyElement::parseMappedAttribute): 16690 (WebCore::SVGPolyElement::svgAttributeChanged): 16691 (WebCore::SVGPolyElement::synchronizeProperty): 16692 (WebCore::SVGPolyElement::synchronizePoints): 16693 (WebCore::SVGPolyElement::points): 16694 (WebCore::SVGPolyElement::animatedPoints): 16695 * svg/SVGPolyElement.h: Reindented. 16696 (WebCore::SVGPolyElement::pointList): 16697 (WebCore::SVGPolyElement::isValid): 16698 (WebCore::SVGPolyElement::supportsMarkers): 16699 * svg/SVGPolygonElement.cpp: Adapt for SVGPointList API change. 16700 (WebCore::SVGPolygonElement::toPathData): 16701 * svg/SVGPolygonElement.idl: Remove SVGAnimatedPoints inheritance. 16702 * svg/SVGPolylineElement.cpp: Adapt for SVGPointList API change. 16703 (WebCore::SVGPolylineElement::toPathData): 16704 * svg/SVGPolylineElement.idl: Remove SVGAnimatedPoints inheritance. 16705 * svg/SVGSVGElement.cpp: 16706 (WebCore::SVGSVGElement::setCurrentTranslate): Use updateCurrentTranslate(). 16707 (WebCore::SVGSVGElement::updateCurrentTranslate): Added, only used by the bindings, after changing a value of SVGStaticPropertyTearOff object. 16708 * svg/SVGSVGElement.h: 16709 (WebCore::SVGSVGElement::currentTranslate): Return reference to m_translation. 16710 * svg/properties/SVGPropertyTearOff.h: Made constructors protected, as SVGStaticPropertyTearOff inherits from it. 16711 (WebCore::SVGPropertyTearOff::commitChange): 16712 * svg/properties/SVGPropertyTraits.h: Add SVGPointList handing. 16713 * svg/properties/SVGStaticPropertyTearOff.h: Added. Used for SVGProperty types returned by attributes, that are not associated with a SVGAnimatedProperty. (SVGSVGElement::currentTranslate). 16714 (WebCore::SVGStaticPropertyTearOff::create): 16715 (WebCore::SVGStaticPropertyTearOff::commitChange): 16716 (WebCore::SVGStaticPropertyTearOff::SVGStaticPropertyTearOff): 16717 16718 2010-11-08 Mikhail Naganov <mnaganov (a] chromium.org> 16719 16720 Reviewed by Adam Barth. 16721 16722 Web Inspector [Chromium]: Make CPU profiling to survive navigation. 16723 16724 https://bugs.webkit.org/show_bug.cgi?id=48843 16725 16726 * inspector/Inspector.idl: 16727 * inspector/InspectorController.cpp: 16728 (WebCore::InspectorController::restoreInspectorStateFromCookie): 16729 (WebCore::InspectorController::reuseFrontend): 16730 (WebCore::InspectorController::disconnectFrontend): 16731 (WebCore::InspectorController::populateScriptObjects): 16732 (WebCore::InspectorController::restoreProfiler): 16733 (WebCore::InspectorController::didCommitLoad): 16734 (WebCore::InspectorController::startUserInitiatedProfiling): 16735 (WebCore::InspectorController::stopUserInitiatedProfiling): 16736 * inspector/InspectorController.h: 16737 (WebCore::InspectorController::startProfiling): 16738 (WebCore::InspectorController::stopProfiling): 16739 * inspector/InspectorProfilerAgent.cpp: 16740 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling): 16741 (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling): 16742 * inspector/InspectorProfilerAgent.h: 16743 * inspector/InspectorState.cpp: 16744 (WebCore::InspectorState::InspectorState): 16745 * inspector/InspectorState.h: 16746 * inspector/front-end/ProfilesPanel.js: 16747 (WebInspector.ProfilesPanel.prototype.hasTemporaryProfile): 16748 (WebInspector.ProfilesPanel.prototype.hasProfile): 16749 * inspector/front-end/inspector.js: 16750 (WebInspector.setRecordingProfile): 16751 16752 2010-11-08 Renata Hodovan <reni (a] webkit.org> 16753 16754 Reviewed by Nikolas Zimmermann. 16755 16756 SVGFEConvolveMatrixElement doesn't support dynamic invalidation 16757 https://bugs.webkit.org/show_bug.cgi?id=47660 16758 16759 Wrap orderX and orderY into the common order property according to the w3 standard and remove them from svnattrs.in. 16760 The patch implements the orderXIdentifier and orderYIdentifier getter functions to reach 16761 properly the orderX and orderY components of order property from SVG DOM. 16762 16763 Tests: svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-bias-prop.html 16764 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-divisor-prop.html 16765 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop.html 16766 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-in-prop.html 16767 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelMatrix-prop.html 16768 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-kernelUnitLength-prop.html 16769 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-order-prop.html 16770 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop.html 16771 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop.html 16772 svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop.html 16773 16774 * svg/SVGFEConvolveMatrixElement.cpp: 16775 (WebCore::SVGFEConvolveMatrixElement::orderXIdentifier): 16776 (WebCore::SVGFEConvolveMatrixElement::orderYIdentifier): 16777 * svg/SVGFEConvolveMatrixElement.h: 16778 * svg/svgattrs.in: 16779 16780 2010-11-08 Adam Barth <abarth (a] webkit.org> 16781 16782 Reviewed by Antti Koivisto. 16783 16784 Rename CachedResourceLoader::m_doc to CachedResourceLoader::m_document 16785 https://bugs.webkit.org/show_bug.cgi?id=49163 16786 16787 The usual convention is to use "document", not "doc" to refer to the 16788 document. 16789 16790 * css/CSSCursorImageValue.cpp: 16791 (WebCore::CSSCursorImageValue::cachedImage): 16792 * dom/XMLDocumentParserLibxml2.cpp: 16793 (WebCore::shouldAllowExternalLoad): 16794 * loader/cache/CachedResourceLoader.cpp: 16795 (WebCore::CachedResourceLoader::CachedResourceLoader): 16796 (WebCore::CachedResourceLoader::frame): 16797 (WebCore::CachedResourceLoader::requestImage): 16798 (WebCore::CachedResourceLoader::canRequest): 16799 (WebCore::CachedResourceLoader::requestResource): 16800 (WebCore::CachedResourceLoader::printAccessDeniedMessage): 16801 (WebCore::CachedResourceLoader::preload): 16802 (WebCore::CachedResourceLoader::checkForPendingPreloads): 16803 (WebCore::CachedResourceLoader::requestPreload): 16804 * loader/cache/CachedResourceLoader.h: 16805 (WebCore::CachedResourceLoader::document): 16806 * loader/cache/MemoryCache.cpp: 16807 (WebCore::MemoryCache::requestResource): 16808 * loader/loader.cpp: 16809 (WebCore::Loader::load): 16810 (WebCore::Loader::Host::servePendingRequests): 16811 (WebCore::Loader::Host::didFinishLoading): 16812 (WebCore::Loader::Host::didFail): 16813 * xml/XSLTProcessorLibxslt.cpp: 16814 (WebCore::docLoaderFunc): 16815 16816 2010-11-07 Adam Barth <abarth (a] webkit.org> 16817 16818 Unreviewed. Remove some unneeded includes. 16819 16820 * loader/FrameLoader.cpp: 16821 * loader/PlaceholderDocument.cpp: 16822 16823 2010-11-07 Adam Barth <abarth (a] webkit.org> 16824 16825 Reviewed by Eric Seidel. 16826 16827 Rename Cache to MemoryCache 16828 https://bugs.webkit.org/show_bug.cgi?id=49159 16829 16830 So sayeth the diagram. 16831 16832 * Android.mk: 16833 * CMakeLists.txt: 16834 * GNUmakefile.am: 16835 * WebCore.gypi: 16836 * WebCore.pro: 16837 * WebCore.vcproj/WebCore.vcproj: 16838 * WebCore.xcodeproj/project.pbxproj: 16839 * css/CSSImageValue.cpp: 16840 * dom/ContainerNode.cpp: 16841 * history/PageCache.cpp: 16842 * inspector/InspectorCSSStore.h: 16843 * inspector/InspectorResourceAgent.cpp: 16844 * loader/FrameLoader.cpp: 16845 * loader/archive/cf/LegacyWebArchive.cpp: 16846 * loader/cache/Cache.cpp: Removed. 16847 * loader/cache/Cache.h: Removed. 16848 * loader/cache/CachedCSSStyleSheet.cpp: 16849 (WebCore::CachedCSSStyleSheet::allClientsRemoved): 16850 * loader/cache/CachedFont.cpp: 16851 * loader/cache/CachedFont.h: 16852 * loader/cache/CachedImage.cpp: 16853 (WebCore::CachedImage::destroyDecodedData): 16854 * loader/cache/CachedImage.h: 16855 * loader/cache/CachedResource.cpp: 16856 * loader/cache/CachedResource.h: 16857 * loader/cache/CachedResourceLoader.cpp: 16858 * loader/cache/CachedResourceLoader.h: 16859 * loader/cache/CachedScript.cpp: 16860 (WebCore::CachedScript::destroyDecodedData): 16861 * loader/cache/MemoryCache.cpp: Copied from WebCore/loader/cache/Cache.cpp. 16862 (WebCore::cache): 16863 (WebCore::MemoryCache::MemoryCache): 16864 (WebCore::MemoryCache::requestResource): 16865 (WebCore::MemoryCache::requestUserCSSStyleSheet): 16866 (WebCore::MemoryCache::revalidateResource): 16867 (WebCore::MemoryCache::revalidationSucceeded): 16868 (WebCore::MemoryCache::revalidationFailed): 16869 (WebCore::MemoryCache::resourceForURL): 16870 (WebCore::MemoryCache::deadCapacity): 16871 (WebCore::MemoryCache::liveCapacity): 16872 (WebCore::MemoryCache::pruneLiveResources): 16873 (WebCore::MemoryCache::pruneDeadResources): 16874 (WebCore::MemoryCache::setCapacities): 16875 (WebCore::MemoryCache::makeResourcePurgeable): 16876 (WebCore::MemoryCache::evict): 16877 (WebCore::MemoryCache::addCachedResourceLoader): 16878 (WebCore::MemoryCache::removeCachedResourceLoader): 16879 (WebCore::MemoryCache::lruListFor): 16880 (WebCore::MemoryCache::removeFromLRUList): 16881 (WebCore::MemoryCache::insertInLRUList): 16882 (WebCore::MemoryCache::resourceAccessed): 16883 (WebCore::MemoryCache::removeFromLiveDecodedResourcesList): 16884 (WebCore::MemoryCache::insertInLiveDecodedResourcesList): 16885 (WebCore::MemoryCache::addToLiveResourcesSize): 16886 (WebCore::MemoryCache::removeFromLiveResourcesSize): 16887 (WebCore::MemoryCache::adjustSize): 16888 (WebCore::MemoryCache::TypeStatistic::addResource): 16889 (WebCore::MemoryCache::getStatistics): 16890 (WebCore::MemoryCache::setDisabled): 16891 (WebCore::MemoryCache::dumpStats): 16892 (WebCore::MemoryCache::dumpLRULists): 16893 * loader/cache/MemoryCache.h: Copied from WebCore/loader/cache/Cache.h. 16894 (WebCore::MemoryCache::shouldMakeResourcePurgeableOnEviction): 16895 * loader/loader.cpp: 16896 * page/EventSource.cpp: 16897 * page/Settings.h: 16898 * xml/XMLHttpRequest.cpp: 16899 (WebCore::XMLHttpRequest::createRequest): 16900 16901 2010-11-07 Eric Seidel <eric (a] webkit.org> 16902 16903 Unreviewed. Attempt to fix the windows build. 16904 16905 Move the rest of the cache-related files into loader/cache 16906 https://bugs.webkit.org/show_bug.cgi?id=49156 16907 16908 * WebCore.vcproj/WebCoreCommon.vsprops: 16909 * WebCore.vcproj/copyForwardingHeaders.cmd: 16910 16911 2010-11-07 Eric Seidel <eric (a] webkit.org> 16912 16913 Reviewed by Adam Barth. 16914 16915 Move the rest of the cache-related files into loader/cache 16916 https://bugs.webkit.org/show_bug.cgi?id=49156 16917 16918 * GNUmakefile.am: 16919 * WebCore.gypi: 16920 * WebCore.vcproj/WebCore.vcproj: 16921 * WebCore.xcodeproj/project.pbxproj: 16922 * loader/CachePolicy.h: Removed. 16923 * loader/CachedCSSStyleSheet.cpp: Removed. 16924 * loader/CachedCSSStyleSheet.h: Removed. 16925 * loader/CachedFont.cpp: Removed. 16926 * loader/CachedFont.h: Removed. 16927 * loader/CachedImage.cpp: Removed. 16928 * loader/CachedImage.h: Removed. 16929 * loader/CachedResource.cpp: Removed. 16930 * loader/CachedResource.h: Removed. 16931 * loader/CachedResourceClient.h: Removed. 16932 * loader/CachedResourceClientWalker.cpp: Removed. 16933 * loader/CachedResourceClientWalker.h: Removed. 16934 * loader/CachedResourceHandle.cpp: Removed. 16935 * loader/CachedResourceHandle.h: Removed. 16936 * loader/CachedResourceLoader.cpp: Removed. 16937 * loader/CachedResourceLoader.h: Removed. 16938 * loader/CachedScript.cpp: Removed. 16939 * loader/CachedScript.h: Removed. 16940 * loader/CachedXSLStyleSheet.cpp: Removed. 16941 * loader/CachedXSLStyleSheet.h: Removed. 16942 * loader/cache/CachePolicy.h: Copied from WebCore/loader/CachePolicy.h. 16943 * loader/cache/CachedCSSStyleSheet.cpp: Copied from WebCore/loader/CachedCSSStyleSheet.cpp. 16944 * loader/cache/CachedCSSStyleSheet.h: Copied from WebCore/loader/CachedCSSStyleSheet.h. 16945 * loader/cache/CachedFont.cpp: Copied from WebCore/loader/CachedFont.cpp. 16946 * loader/cache/CachedFont.h: Copied from WebCore/loader/CachedFont.h. 16947 * loader/cache/CachedImage.cpp: Copied from WebCore/loader/CachedImage.cpp. 16948 * loader/cache/CachedImage.h: Copied from WebCore/loader/CachedImage.h. 16949 * loader/cache/CachedResource.cpp: Copied from WebCore/loader/CachedResource.cpp. 16950 * loader/cache/CachedResource.h: Copied from WebCore/loader/CachedResource.h. 16951 * loader/cache/CachedResourceClient.h: Copied from WebCore/loader/CachedResourceClient.h. 16952 * loader/cache/CachedResourceClientWalker.cpp: Copied from WebCore/loader/CachedResourceClientWalker.cpp. 16953 * loader/cache/CachedResourceClientWalker.h: Copied from WebCore/loader/CachedResourceClientWalker.h. 16954 * loader/cache/CachedResourceHandle.cpp: Copied from WebCore/loader/CachedResourceHandle.cpp. 16955 * loader/cache/CachedResourceHandle.h: Copied from WebCore/loader/CachedResourceHandle.h. 16956 * loader/cache/CachedResourceLoader.cpp: Copied from WebCore/loader/CachedResourceLoader.cpp. 16957 * loader/cache/CachedResourceLoader.h: Copied from WebCore/loader/CachedResourceLoader.h. 16958 * loader/cache/CachedScript.cpp: Copied from WebCore/loader/CachedScript.cpp. 16959 * loader/cache/CachedScript.h: Copied from WebCore/loader/CachedScript.h. 16960 * loader/cache/CachedXSLStyleSheet.cpp: Copied from WebCore/loader/CachedXSLStyleSheet.cpp. 16961 * loader/cache/CachedXSLStyleSheet.h: Copied from WebCore/loader/CachedXSLStyleSheet.h. 16962 16963 2010-11-07 Adam Barth <abarth (a] webkit.org> 16964 16965 Reviewed by Eric Seidel. 16966 16967 Rename X-Purpose to Purpose 16968 https://bugs.webkit.org/show_bug.cgi?id=47802 16969 16970 As requested by IETF HTTP WG. This patch is part of a larger movement 16971 in the HTTP community to move away from X- headers. Various senior 16972 folks at the IETF believe they're a failed experiment: 16973 16974 http://tools.ietf.org/html/draft-saintandre-xdash-considered-harmful 16975 16976 * loader/loader.cpp: 16977 (WebCore::Loader::Host::servePendingRequests): 16978 16979 2010-11-07 Daniel Bates <dbates (a] rim.com> 16980 16981 Reviewed by Adam Barth. 16982 16983 Assert that a non-null PassRefPtr<Document> has a non-null frame in Frame::setDocument() 16984 https://bugs.webkit.org/show_bug.cgi?id=49152 16985 16986 Add an ASSERT to ensure that a non-null Document has a non-null Frame 16987 in Frame::setDocument(). 16988 16989 Currently, whenever Frame::setDocument() is called with a non-null 16990 Document the Document has a non-null Frame. We should assert this 16991 invariant. 16992 16993 * page/Frame.cpp: 16994 (WebCore::Frame::setDocument): 16995 16996 2010-11-07 Eric Seidel <eric (a] webkit.org> 16997 16998 Reviewed by Adam Barth. 16999 17000 Move Cache.* into loader/cache in as a start to cleaning up loader/ 17001 https://bugs.webkit.org/show_bug.cgi?id=49153 17002 17003 * Android.mk: 17004 * CMakeLists.txt: 17005 * GNUmakefile.am: 17006 * WebCore.gypi: 17007 * WebCore.pro: 17008 * WebCore.vcproj/WebCore.vcproj: 17009 * WebCore.xcodeproj/project.pbxproj: 17010 * loader/cache/Cache.cpp: Renamed from WebCore/loader/Cache.cpp. 17011 (WebCore::cache): 17012 (WebCore::Cache::Cache): 17013 (WebCore::createResource): 17014 (WebCore::Cache::requestResource): 17015 (WebCore::Cache::requestUserCSSStyleSheet): 17016 (WebCore::Cache::revalidateResource): 17017 (WebCore::Cache::revalidationSucceeded): 17018 (WebCore::Cache::revalidationFailed): 17019 (WebCore::Cache::resourceForURL): 17020 (WebCore::Cache::deadCapacity): 17021 (WebCore::Cache::liveCapacity): 17022 (WebCore::Cache::pruneLiveResources): 17023 (WebCore::Cache::pruneDeadResources): 17024 (WebCore::Cache::setCapacities): 17025 (WebCore::Cache::makeResourcePurgeable): 17026 (WebCore::Cache::evict): 17027 (WebCore::Cache::addCachedResourceLoader): 17028 (WebCore::Cache::removeCachedResourceLoader): 17029 (WebCore::fastLog2): 17030 (WebCore::Cache::lruListFor): 17031 (WebCore::Cache::removeFromLRUList): 17032 (WebCore::Cache::insertInLRUList): 17033 (WebCore::Cache::resourceAccessed): 17034 (WebCore::Cache::removeFromLiveDecodedResourcesList): 17035 (WebCore::Cache::insertInLiveDecodedResourcesList): 17036 (WebCore::Cache::addToLiveResourcesSize): 17037 (WebCore::Cache::removeFromLiveResourcesSize): 17038 (WebCore::Cache::adjustSize): 17039 (WebCore::Cache::TypeStatistic::addResource): 17040 (WebCore::Cache::getStatistics): 17041 (WebCore::Cache::setDisabled): 17042 (WebCore::Cache::dumpStats): 17043 (WebCore::Cache::dumpLRULists): 17044 * loader/cache/Cache.h: Renamed from WebCore/loader/Cache.h. 17045 (WebCore::Cache::LRUList::LRUList): 17046 (WebCore::Cache::TypeStatistic::TypeStatistic): 17047 (WebCore::Cache::loader): 17048 (WebCore::Cache::disabled): 17049 (WebCore::Cache::setPruneEnabled): 17050 (WebCore::Cache::prune): 17051 (WebCore::Cache::setDeadDecodedDataDeletionInterval): 17052 (WebCore::Cache::deadDecodedDataDeletionInterval): 17053 (WebCore::Cache::remove): 17054 (WebCore::Cache::shouldMakeResourcePurgeableOnEviction): 17055 17056 2010-11-05 Helder Correia <helder (a] sencha.com> 17057 17058 Reviewed by Andreas Kling. 17059 17060 [Qt] box-shadow does not blur (is solid) when using border-radius 17061 https://bugs.webkit.org/show_bug.cgi?id=46327 17062 17063 Implement blurred box-shadow when styling with border-radius. 17064 This change is related to https://bugs.webkit.org/show_bug.cgi?id=44488 17065 17066 * platform/graphics/qt/GraphicsContextQt.cpp: 17067 (WebCore::GraphicsContext::fillRoundedRect): 17068 17069 2010-11-07 John Reck <jreck (a] google.com> 17070 17071 Reviewed by Steve Block. 17072 17073 Implements navigator.language for Android 17074 https://bugs.webkit.org/show_bug.cgi?id=49099 17075 17076 Android was previously hardcoding the value for WebCore::platformDefaultLanguage(). 17077 This patch removes the hardcoding and calls into the PlatformBridge to get the 17078 correct language based off of the user's settings. 17079 17080 No new tests needed, this is already covered 17081 17082 * Android.mk: 17083 * platform/android/LanguageAndroid.cpp: Added. 17084 (WebCore::platformDefaultLanguage): 17085 * platform/android/PlatformBridge.h: 17086 * platform/android/TemporaryLinkStubs.cpp: 17087 17088 2010-11-07 Robert Hogan <robert (a] webkit.org> 17089 17090 Reviewed by Andreas Kling. 17091 17092 [qt] screenDepthPerComponent returns the wrong value 17093 17094 Return best estimate of the number of bits per color 17095 rather than screen depth. 17096 17097 Add a layout test to sanity check screenDepthPerComponent. 17098 17099 https://bugs.webkit.org/show_bug.cgi?id=20289 17100 17101 Test: fast/css/media-rule-screenDepthPerComponent.html 17102 17103 * platform/qt/PlatformScreenQt.cpp: 17104 (WebCore::screenDepthPerComponent): 17105 17106 2010-11-07 Chang Shu <chang.shu (a] nokia.com> 17107 17108 Reviewed by Antonio Gomes. 17109 17110 Add a helper function to avoid duplicated code. 17111 https://bugs.webkit.org/show_bug.cgi?id=49085 17112 17113 * dom/SelectElement.cpp: 17114 * editing/SelectionController.cpp: 17115 (WebCore::SelectionController::modify): 17116 * html/HTMLInputElement.cpp: 17117 (WebCore::HTMLInputElement::isKeyboardFocusable): 17118 * page/EventHandler.cpp: 17119 (WebCore::EventHandler::defaultArrowEventHandler): 17120 * page/SpatialNavigation.cpp: 17121 (WebCore::isSpatialNavigationEnabled): 17122 * page/SpatialNavigation.h: 17123 17124 2010-11-06 Pavel Feldman <pfeldman (a] chromium.org> 17125 17126 Reviewed by Simon Fraser. 17127 17128 Web Inspector: Some image resources don't display the image when selected in the Resources panel. 17129 https://bugs.webkit.org/show_bug.cgi?id=48935 17130 17131 Marked resources loaded from memory cache as finished. 17132 17133 * inspector/front-end/ResourceManager.js: 17134 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 17135 17136 2010-11-06 Pavel Feldman <pfeldman (a] chromium.org> 17137 17138 Reviewed by Timothy Hatcher. 17139 17140 Web Inspector: XHR logging is not checked in context menu after browser restart. 17141 https://bugs.webkit.org/show_bug.cgi?id=49133 17142 17143 * inspector/InspectorState.cpp: 17144 (WebCore::InspectorState::InspectorState): 17145 17146 2010-11-06 Ryosuke Niwa <rniwa (a] webkit.org> 17147 17148 Unreviewed Windows build fix. 17149 17150 * editing/EditingAllInOne.cpp: Added EditingStyle.cpp 17151 17152 2010-11-04 Ryosuke Niwa <rniwa (a] webkit.org> 17153 17154 Reviewed by Darin Adler. 17155 17156 Bug 46335 - Add EditingStyle 17157 https://bugs.webkit.org/show_bug.cgi?id=46335 17158 17159 Added EditingStyle to WebCore/editing. This class is intended to encapsulate getPropertiesNotIn, removeNonEditingProperties, 17160 editingStyleAtPosition, and prepareEditingStyleToApplyAt in ApplyStyleCommand.cpp once deployed everywhere. 17161 Deployed it in typing styles. 17162 17163 No new tests are added since this is a refactoring in progress. 17164 17165 * CMakeLists.txt: Added EditingStyle.cpp 17166 * GNUmakefile.am: Added EditingStyle.cpp and EditingStyle.h 17167 * WebCore.gypi: Ditto. 17168 * WebCore.pro: Ditto. 17169 * WebCore.xcodeproj/project.pbxproj: Ditto. 17170 * editing/CompositeEditCommand.cpp: 17171 (WebCore::CompositeEditCommand::moveParagraphs): Calls editingStyleIncludingTypingStyle. 17172 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Uses EditingStyle. 17173 * editing/DeleteSelectionCommand.cpp: 17174 (WebCore::DeleteSelectionCommand::saveTypingStyleState): Ditto. 17175 (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Ditto. 17176 * editing/DeleteSelectionCommand.h: 17177 * editing/EditingStyle.cpp: Added. 17178 (WebCore::editingStyleFromComputedStyle): Added. 17179 (WebCore::EditingStyle::EditingStyle): Added. 17180 (WebCore::EditingStyle::init): Added; a clone of ApplyStyleCommand::editingStyleAtPosition. 17181 (WebCore::EditingStyle::removeTextFillAndStrokeColorsIfNeeded): Extracted from init. 17182 (WebCore::EditingStyle::replaceFontSizeByKeywordIfPossible): Extracted from init. 17183 (WebCore::EditingStyle::isEmpty): Added. 17184 (WebCore::EditingStyle::setStyle): Added. 17185 (WebCore::EditingStyle::clear): Added. 17186 (WebCore::EditingStyle::removeBlockProperties): Added. 17187 (WebCore::EditingStyle::prepareToApplyAt): Added. 17188 (WebCore::editingStyleIncludingTypingStyle): Added. 17189 * editing/EditingStyle.h: Added. 17190 (WebCore::EditingStyle::create): Added. 17191 (WebCore::EditingStyle::style): Added. 17192 * editing/RemoveFormatCommand.cpp: 17193 (WebCore::RemoveFormatCommand::doApply): Uses EditingStyle. 17194 * editing/SelectionController.h: 17195 (WebCore::SelectionController::typingStyle): Uses EditingStyle. 17196 (WebCore::SelectionController::clearTypingStyle): Uses EditingStyle. 17197 (WebCore::SelectionController::setTypingStyle): Uses EditingStyle. 17198 * rendering/style/RenderStyle.h: Added EditingStyle as a friend. 17199 17200 2010-11-05 David Hyatt <hyatt (a] apple.com> 17201 17202 Reviewed by Dan Bernstein and Simon Fraser. 17203 17204 https://bugs.webkit.org/show_bug.cgi?id=47237 17205 17206 Make selection work with vertical text. This patch fixes a bug in the computation of lineTop. For lines 17207 with positive leading, lineTop was incorrectly including the top leading. Since the flipping of lines 17208 for "lr" and "bt" writing modes involved flipping using lineTop and lineBottom, an incorrect lineTop meant 17209 that those modes were mis-rendering. This is why the Japanese "lr" text examples have the first line smushed 17210 too far against the border. 17211 17212 Fixing lineTop to no longer incorrectly include top leading has implications for editing. I ended up 17213 rewriting positionForPoint to exactly match selection, since that seemed to be the most intuitive 17214 behavior. I got rid of the verticalClickFudgeFactor and now just use selectionTop and selectionBottom 17215 instead of lineTop and lineBottom. I am pretty sure the code used selectionTop in a previous incarnation 17216 anyway and that I moved away from it when I implemented lineTop and lineBottom. The code then grew 17217 more complicated from people trying to work with lineTop and lineBottom, but going back to selectionTop 17218 and selectionBottom is the right behavior I think. One editing test has been updated after this change 17219 (editing/selection/after-line-break.html), and one DOM test has been changed to not hit test past the 17220 bottom of a line (fast/dom/Document/CaretRangeFromPoint/basic.html). 17221 17222 I patched selection painting of InlineTextBoxes so that the leading going up to the next line box is used 17223 for "lr" and "bt" modes instead of the previous box. This makes sense for English text, but we may want 17224 a different policy for Japanese text eventually (possibly just splitting the difference instead). Leaving it 17225 this way for now, and we can collect feedback on the design. 17226 17227 I rewrote all of the selection gap painting code to be writing-mode aware. During the course of rewriting this 17228 code I noticed a bug in the logicalLeftSelectionOffset and logicalRightSelectionOffset functions where there 17229 was a coordinate space mismatch on a comparison. Fixing this improves the repaint/selection-clear.html test. 17230 17231 Added new tests in fast/blockflow/. 17232 17233 * rendering/InlineFlowBox.cpp: 17234 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 17235 * rendering/InlineFlowBox.h: 17236 * rendering/InlineTextBox.cpp: 17237 (WebCore::InlineTextBox::selectionBottom): 17238 (WebCore::InlineTextBox::paintSelection): 17239 (WebCore::InlineTextBox::paintCompositionBackground): 17240 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): 17241 (WebCore::InlineTextBox::paintTextMatchMarker): 17242 * rendering/InlineTextBox.h: 17243 * rendering/RenderBlock.cpp: 17244 (WebCore::RenderBlock::selectionGapRectsForRepaint): 17245 (WebCore::RenderBlock::paintSelection): 17246 (WebCore::clipOutPositionedObjects): 17247 (WebCore::blockDirectionOffset): 17248 (WebCore::inlineDirectionOffset): 17249 (WebCore::RenderBlock::logicalRectToPhysicalRect): 17250 (WebCore::RenderBlock::selectionGaps): 17251 (WebCore::RenderBlock::inlineSelectionGaps): 17252 (WebCore::RenderBlock::blockSelectionGaps): 17253 (WebCore::RenderBlock::blockSelectionGap): 17254 (WebCore::RenderBlock::logicalLeftSelectionGap): 17255 (WebCore::RenderBlock::logicalRightSelectionGap): 17256 (WebCore::RenderBlock::logicalLeftSelectionOffset): 17257 (WebCore::RenderBlock::logicalRightSelectionOffset): 17258 * rendering/RenderBlock.h: 17259 * rendering/RenderBox.cpp: 17260 (WebCore::RenderBox::flipForWritingMode): 17261 * rendering/RenderBox.h: 17262 (WebCore::RenderBox::logicalBottom): 17263 * rendering/RootInlineBox.cpp: 17264 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 17265 (WebCore::RootInlineBox::lineSelectionGap): 17266 (WebCore::RootInlineBox::selectionTop): 17267 (WebCore::RootInlineBox::selectionBottom): 17268 * rendering/RootInlineBox.h: 17269 17270 2010-11-05 Simon Fraser <simon.fraser (a] apple.com> 17271 17272 Just put things back the way they were. Too many mysterious linker errors. 17273 17274 2010-11-05 Simon Fraser <simon.fraser (a] apple.com> 17275 17276 Undo most of the previous commit since the compiler seems to have trouble 17277 with an inlined operator++ in debug builds. 17278 17279 * platform/DeprecatedPtrListImpl.cpp: 17280 (WebCore::DeprecatedPtrListImplIterator::operator++): 17281 * platform/DeprecatedPtrListImpl.h: 17282 17283 2010-11-05 Simon Fraser <simon.fraser (a] apple.com> 17284 17285 Reviewed by Dave Hyatt. 17286 17287 Inline some DeprecatedPtrListImplIterator methods for performance 17288 https://bugs.webkit.org/show_bug.cgi?id=49124 17289 17290 This is a ~4% performance improvement on some Peacekeepr "Community" tests. 17291 17292 * platform/DeprecatedPtrListImpl.cpp: 17293 * platform/DeprecatedPtrListImpl.h: 17294 (WebCore::DeprecatedListNode::DeprecatedListNode): 17295 (WebCore::DeprecatedPtrListImplIterator::current): 17296 (WebCore::DeprecatedPtrListImplIterator::operator++): 17297 17298 2010-11-05 Adam Barth <abarth (a] webkit.org> 17299 17300 Reviewed by Eric Seidel. 17301 17302 Gray-scale PNGs with color profiles don't decode properly on Chromium Mac 17303 https://bugs.webkit.org/show_bug.cgi?id=49110 17304 17305 Applying the color profile from this PNG was causing the image to 17306 triple in width. This seems to be because both the PNG decoder and 17307 CoreGraphics were trying to expand the gray-scale image to RGB. To fix 17308 this issue, I've disabled color profile support for gray-scale PNGs. 17309 17310 Test: fast/images/gray-scale-png-with-color-profile.html 17311 17312 * platform/image-decoders/png/PNGImageDecoder.cpp: 17313 (WebCore::PNGImageDecoder::headerAvailable): 17314 17315 2010-11-05 Jian Li <jianli (a] chromium.org> 17316 17317 Reviewed by Dmitry Titov. 17318 17319 Need to check if page is detached in Frame::transferChildFrameToNewDocument to avoid occasional crash 17320 https://bugs.webkit.org/show_bug.cgi?id=49116 17321 17322 The fix is to add the check. 17323 17324 * page/Frame.cpp: 17325 (WebCore::Frame::transferChildFrameToNewDocument): 17326 17327 2010-11-04 Enrica Casucci <enrica (a] apple.com> 17328 17329 Reviewed by Adele Peterson. 17330 17331 Pasting large amounts of plain text in a text area is very slow 17332 https://bugs.webkit.org/show_bug.cgi?id=49040 17333 <rdar://problem/7640912> 17334 17335 The optimization consists in skipping the ApplyStyle command when 17336 pasting into a text area or into an element that has -webkit-user-modify: read-write-plaintext-only. 17337 The biggest performance hit comes from iterating through 17338 a large number of paragraph when no style change is needed. 17339 A further step will be to improve the paragraph iteration when it 17340 can't be avoided. 17341 17342 * editing/ReplaceSelectionCommand.cpp: 17343 (WebCore::ReplaceSelectionCommand::doApply): Check if the selection 17344 is in a text form control or in an element that has -webkit-user-modify: read-write-plaintext-only 17345 and force no style matching. 17346 17347 2010-11-05 Ryosuke Niwa <rniwa (a] webkit.org> 17348 17349 Reviewed by David Levin. 17350 17351 JSCallbackData::invokeCallback triggers layout from a worker thread 17352 https://bugs.webkit.org/show_bug.cgi?id=49096 17353 17354 Fixed the bug by only calling updateStyleForAllDocuments when the context is document in 17355 JSCallbackData::invokeCallback. 17356 17357 No new tests are added since many of existing workers tests hit the added assertion in debug builds. 17358 17359 * bindings/js/JSCallbackData.cpp: 17360 (WebCore::JSCallbackData::invokeCallback): No longer calls updateStyleForAllDocuments unconditionally. 17361 * dom/Document.cpp: 17362 (WebCore::Document::updateStyleIfNeeded): Added ASSERT(isMainThread()). 17363 (WebCore::Document::updateStyleForAllDocuments): Ditto. 17364 (WebCore::Document::updateLayout): Ditto. 17365 17366 2010-11-05 Ilya Sherman <isherman (a] chromium.org> 17367 17368 Reviewed by Simon Fraser. 17369 17370 Querying selection start and end should be const 17371 https://bugs.webkit.org/show_bug.cgi?id=48786 17372 17373 * rendering/RenderTextControl.cpp: 17374 (WebCore::RenderTextControl::selectionStart): 17375 (WebCore::RenderTextControl::selectionEnd): 17376 (WebCore::RenderTextControl::visiblePositionForIndex): 17377 (WebCore::RenderTextControl::indexForVisiblePosition): 17378 * rendering/RenderTextControl.h: 17379 17380 2010-11-05 Chris Marrin <cmarrin (a] apple.com> 17381 17382 Reviewed by Simon Fraser. 17383 17384 Move resumeAnimations/suspendAnimations from Frame to AnimationController. 17385 https://bugs.webkit.org/show_bug.cgi?id=49073 17386 17387 Changed the name of suspendAnimations/resumeAnimations to 17388 suspendAnimationsInDocument/resumeAnimationsInDocument. These are no 17389 longer exported, but have the same functionality as before. I then 17390 added new suspendAnimations/resumeAnimations function which take 17391 no params and suspend/resume on the frame owning the animation 17392 controller and all its child frames. These are the functions that 17393 are now exported. I then changed all the platform specific WebKit 17394 code to use these functions. 17395 17396 * WebCore.exp.in: 17397 * page/Frame.cpp: 17398 * page/Frame.h: 17399 * page/animation/AnimationController.cpp: 17400 (WebCore::AnimationControllerPrivate::suspendAnimations): 17401 (WebCore::AnimationControllerPrivate::resumeAnimations): 17402 17403 2010-11-04 Zhenyao Mo <zmo (a] google.com> 17404 17405 Reviewed by Kenneth Russell. 17406 17407 Need to simulate DEPTH_STENCIL in framebufferRenderbuffer / getFramebufferAttachmentParameter 17408 https://bugs.webkit.org/show_bug.cgi?id=49020 17409 17410 * html/canvas/WebGLFramebuffer.cpp: 17411 (WebCore::WebGLFramebuffer::getAttachment): Return the attached renderbuffer/texture. 17412 (WebCore::WebGLFramebuffer::isIncomplete): Add an extra parameter deciding whether we should check internal format matching the attachment point or not. 17413 (WebCore::WebGLFramebuffer::onAccess): Pass extra parameter in isIncomplete. 17414 * html/canvas/WebGLFramebuffer.h: 17415 * html/canvas/WebGLRenderingContext.cpp: 17416 (WebCore::WebGLRenderingContext::checkFramebufferStatus): Pass extra parameter in isIncomplete. 17417 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Emulate DEPTH_STENCIL_ATTACHMENT; re-attach previously conflicted buffers upon detachment. 17418 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Throw an error when conflicted attachments exist. 17419 (WebCore::WebGLRenderingContext::renderbufferStorage): Map DEPTH_STENCIL to DEPTH24_STENCIL8. 17420 * platform/graphics/Extensions3D.h: Add DEPTH24_STENCIL8 enum and update the documentation. 17421 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 17422 (WebCore::GraphicsContext3D::framebufferRenderbuffer): Remove emulation code at this level. 17423 17424 2010-11-05 Chris Guillory <chris.guillory (a] google.com> 17425 17426 Reviewed by Chris Fleizach. 17427 17428 Keep a reference to the scrollbar in accessibility scrollbar. 17429 https://bugs.webkit.org/show_bug.cgi?id=48896 17430 17431 * accessibility/AccessibilityScrollbar.h: 17432 (WebCore::AccessibilityScrollbar::scrollbar): 17433 17434 2010-11-05 Chang Shu <chang.shu (a] nokia.com> 17435 17436 Reviewed by Antonio Gomes. 17437 17438 Add support for <select> element in single selection mode. We use space to 17439 trigger arrow key handling for selection change or spatial navigation. 17440 https://bugs.webkit.org/show_bug.cgi?id=48937 17441 17442 * dom/SelectElement.cpp: 17443 (WebCore::isSpatialNavigationEnabled): 17444 (WebCore::SelectElement::menuListDefaultEventHandler): 17445 (WebCore::SelectElement::listBoxDefaultEventHandler): 17446 17447 2010-11-05 Charlie Reis <creis (a] chromium.org> 17448 17449 Reviewed by Darin Fisher. 17450 17451 Need to expose HistoryController::previousItem() for Chromium WebKit API. 17452 https://bugs.webkit.org/show_bug.cgi?id=48809 17453 17454 * loader/HistoryController.h: 17455 17456 2010-11-05 Ryosuke Niwa <rniwa (a] webkit.org> 17457 17458 Reviewed by Darin Adler. 17459 17460 Crash in ApplyStyleCommand::surroundNodeRangeWithElement 17461 https://bugs.webkit.org/show_bug.cgi?id=48581 17462 17463 The crash was caused by a false assertion that we can always recover selection in 17464 ApplyStyleCommand::removeInlineStyle. Fixed the crash by removing the assertion 17465 and adding an early exit to the call site. Also converted raw pointers to RefPtr 17466 in surroundNodeRangeWithElement and addInlineStyleIfNeeded. 17467 17468 Test (non-Mac platforms): editing/style/iframe-onload-crash.html 17469 17470 * editing/ApplyStyleCommand.cpp: 17471 (WebCore::ApplyStyleCommand::applyInlineStyle): 17472 (WebCore::ApplyStyleCommand::removeInlineStyle): 17473 (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement): 17474 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 17475 * editing/ApplyStyleCommand.h: 17476 17477 2010-11-04 Alexey Proskuryakov <ap (a] apple.com> 17478 17479 Reviewed by Darin Adler. 17480 17481 https://bugs.webkit.org/show_bug.cgi?id=49008 17482 <rdar://problem/7906226> Frequent crashes on mail.yahoo.co.jp 17483 17484 Instance::m_runtimeObject used to be zeroed out by RuntimeObject destructor. But the 17485 destructor may not be called immediately - GC first marks an object as dead, and only 17486 destroys it when its cell is overwritten. So, m_runtimeObject would keep pointing to a dead 17487 object. 17488 17489 Functions in JSPluginElementFunctions.cpp put the RuntimeObject on stack for later use, 17490 but if it's already dead, it can be overwritten before use. 17491 17492 The solution is of course to use WeakGCPtr, which returns 0 for dead objects. 17493 17494 * bridge/jsc/BridgeJSC.cpp: 17495 (JSC::Bindings::Instance::Instance): 17496 (JSC::Bindings::Instance::~Instance): 17497 (JSC::Bindings::Instance::createRuntimeObject): 17498 (JSC::Bindings::Instance::willDestroyRuntimeObject): 17499 (JSC::Bindings::Instance::willInvalidateRuntimeObject): 17500 * bridge/jsc/BridgeJSC.h: 17501 * bridge/runtime_object.cpp: 17502 (JSC::Bindings::RuntimeObject::~RuntimeObject): 17503 (JSC::Bindings::RuntimeObject::invalidate): 17504 17505 2010-11-05 Chris Marrin <cmarrin (a] apple.com> 17506 17507 Reviewed by Simon Fraser. 17508 17509 Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state 17510 https://bugs.webkit.org/show_bug.cgi?id=46945 17511 17512 Add new funtions to suspend and resume animations. The go through all subframes and suspend or resume them 17513 recursively. 17514 17515 Test: animations/stop-animation-on-suspend.html 17516 17517 * WebCore.exp.in: 17518 * page/Frame.cpp: 17519 (WebCore::Frame::suspendAnimations): 17520 (WebCore::Frame::resumeAnimations): 17521 * page/Frame.h: 17522 17523 2010-11-05 Pavel Feldman <pfeldman (a] chromium.org> 17524 17525 Reviewed by Timothy Hatcher. 17526 17527 Web Inspector: Crash in InspectorDOMAgent::innerParentNode. 17528 https://bugs.webkit.org/show_bug.cgi?id=49054 17529 17530 * inspector/InspectorDOMAgent.cpp: 17531 (WebCore::InspectorDOMAgent::setOuterHTML): 17532 17533 2010-11-05 Pavel Feldman <pfeldman (a] chromium.org> 17534 17535 Reviewed by Timothy Hatcher. 17536 17537 Web Inspector: XHR logging in console should give complete view of resource. 17538 https://bugs.webkit.org/show_bug.cgi?id=48998 17539 17540 Drive-by fixes: linkify line number to scripts panel, fall back to resources; 17541 enable multiline console entry on shift modifier as well. 17542 17543 * inspector/front-end/NetworkPanel.js: 17544 (WebInspector.NetworkPanel): 17545 (WebInspector.NetworkPanel.prototype._reset): 17546 (WebInspector.NetworkPanel.prototype.refreshResource): 17547 (WebInspector.NetworkPanel.prototype.canShowSourceLine): 17548 (WebInspector.NetworkPanel.prototype.showSourceLine): 17549 * inspector/front-end/StoragePanel.js: 17550 (WebInspector.StoragePanel.prototype.show): 17551 (WebInspector.StoragePanel.prototype.showSourceLine): 17552 * inspector/front-end/inspector.js: 17553 (WebInspector.showPanel): 17554 (WebInspector.linkifyStringAsFragment): 17555 17556 2010-10-27 Jeremy Orlow <jorlow (a] chromium.org> 17557 17558 Reviewed by Steve Block. 17559 17560 Clean up IDBTransactionBackend/Coordinator 17561 https://bugs.webkit.org/show_bug.cgi?id=48425 17562 17563 Get rid of obsolete id and thus we don't need the factory method 17564 on IDBTransactionCoordinator that creates IDBTransactionBackends. 17565 17566 Add an assert to IDBTransactionBackend to make sure we're not in 17567 the coordinator and then remove the coordinators ref counting link 17568 to the transaction. 17569 17570 Have the transaction backend zero out refs to the database when its 17571 done using it. 17572 17573 Existing tests provide coverage for this refactoring. 17574 17575 * storage/IDBDatabaseBackendImpl.cpp: 17576 (WebCore::IDBDatabaseBackendImpl::setVersion): 17577 (WebCore::IDBDatabaseBackendImpl::transaction): 17578 * storage/IDBTransactionBackendImpl.cpp: 17579 (WebCore::IDBTransactionBackendImpl::create): 17580 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 17581 (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl): 17582 (WebCore::IDBTransactionBackendImpl::abort): 17583 (WebCore::IDBTransactionBackendImpl::commit): 17584 * storage/IDBTransactionBackendImpl.h: 17585 * storage/IDBTransactionBackendInterface.h: 17586 * storage/IDBTransactionCoordinator.cpp: 17587 (WebCore::IDBTransactionCoordinator::didStartTransaction): 17588 (WebCore::IDBTransactionCoordinator::didFinishTransaction): 17589 (WebCore::IDBTransactionCoordinator::isActive): 17590 (WebCore::IDBTransactionCoordinator::processStartedTransactions): 17591 * storage/IDBTransactionCoordinator.h: 17592 17593 2010-10-27 Jeremy Orlow <jorlow (a] chromium.org> 17594 17595 Reviewed by Steve Block. 17596 17597 IDBFactoryBackend's reference to IDBDatabaseBackend should be weak 17598 https://bugs.webkit.org/show_bug.cgi?id=48416 17599 17600 The factory's lifetime is that of the application, so without making 17601 this weak, IDBDatabaseBackend's will never be closed until the app 17602 terminates. 17603 17604 * storage/IDBDatabaseBackendImpl.cpp: 17605 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 17606 (WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl): 17607 * storage/IDBDatabaseBackendImpl.h: 17608 (WebCore::IDBDatabaseBackendImpl::create): 17609 * storage/IDBFactoryBackendImpl.cpp: 17610 (WebCore::IDBFactoryBackendImpl::removeIDBDatabaseBackend): 17611 (WebCore::IDBFactoryBackendImpl::removeSQLiteDatabase): 17612 (WebCore::IDBFactoryBackendImpl::open): 17613 * storage/IDBFactoryBackendImpl.h: 17614 17615 2010-10-27 Jeremy Orlow <jorlow (a] chromium.org> 17616 17617 Reviewed by Steve Block. 17618 17619 IDBObjectStoreBackend and IDBIndexBackend should not depend on IDBDatabaseBackend 17620 https://bugs.webkit.org/show_bug.cgi?id=48410 17621 17622 Break dependency cyles between IDBDatabaseBackend and the other classes listed. 17623 This was causing memory leaks. 17624 17625 * storage/IDBCursorBackendImpl.cpp: 17626 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): 17627 (WebCore::IDBCursorBackendImpl::updateInternal): 17628 (WebCore::IDBCursorBackendImpl::removeInternal): 17629 (WebCore::IDBCursorBackendImpl::database): 17630 * storage/IDBCursorBackendImpl.h: 17631 (WebCore::IDBCursorBackendImpl::create): 17632 * storage/IDBDatabaseBackendImpl.cpp: 17633 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 17634 (WebCore::IDBDatabaseBackendImpl::loadObjectStores): 17635 * storage/IDBIndexBackendImpl.cpp: 17636 (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): 17637 (WebCore::IDBIndexBackendImpl::openCursorInternal): 17638 (WebCore::IDBIndexBackendImpl::sqliteDatabase): 17639 * storage/IDBIndexBackendImpl.h: 17640 (WebCore::IDBIndexBackendImpl::create): 17641 (WebCore::IDBIndexBackendImpl::storeName): 17642 * storage/IDBObjectStoreBackendImpl.cpp: 17643 (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): 17644 (WebCore::IDBObjectStoreBackendImpl::createIndex): 17645 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal): 17646 (WebCore::IDBObjectStoreBackendImpl::loadIndexes): 17647 (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase): 17648 * storage/IDBObjectStoreBackendImpl.h: 17649 (WebCore::IDBObjectStoreBackendImpl::create): 17650 17651 2010-11-05 Pavel Feldman <pfeldman (a] chromium.org> 17652 17653 Reviewed by Timothy Hatcher. 17654 17655 Web Inspector: inspector lags on large resources with numerous <script> tags. 17656 https://bugs.webkit.org/show_bug.cgi?id=49060 17657 17658 * inspector/front-end/ScriptsPanel.js: 17659 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): 17660 17661 2010-11-05 Patrick Gansterer <paroga (a] webkit.org> 17662 17663 Reviewed by David Kilzer. 17664 17665 Replace ARRAYSIZE with WTF_ARRAY_LENGTH 17666 https://bugs.webkit.org/show_bug.cgi?id=48903 17667 17668 * platform/UUID.cpp: 17669 (WebCore::createCanonicalUUIDString): 17670 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 17671 (WebCore::FontCache::getFontDataForCharacters): 17672 * platform/graphics/win/FontCacheWin.cpp: 17673 (WebCore::FontCache::getLastResortFallbackFont): 17674 * platform/graphics/win/IconWin.cpp: 17675 (WebCore::Icon::createIconForFiles): 17676 * platform/win/ClipboardUtilitiesWin.cpp: 17677 (WebCore::getWebLocData): 17678 * platform/win/ClipboardWin.cpp: 17679 (WebCore::createGlobalHDropContent): 17680 (WebCore::createGlobalImageFileDescriptor): 17681 (WebCore::ClipboardWin::files): 17682 (WebCore::ClipboardWin::writeURL): 17683 * platform/win/DragDataWin.cpp: 17684 (WebCore::DragData::asFilenames): 17685 * platform/win/FileSystemWin.cpp: 17686 (WebCore::safeCreateFile): 17687 17688 2010-11-05 Roland Steiner <rolandsteiner (a] chromium.org> 17689 17690 Reviewed by Dirk Schulze. 17691 17692 Bug 48979 - [Chromium] SVGListPropertyTearOff.h: function commitChange ASSERTs on Win & Mac 17693 https://bugs.webkit.org/show_bug.cgi?id=48979 17694 17695 Function removeItemValuesAndWrappers(): Move code out of 'if' statement so that 17696 'wrappers' and 'values' stay synced. 17697 17698 test: svg/dom/baseVal-animVal-crash.html doesn't ASSERT 17699 17700 * svg/properties/SVGListProperty.h: 17701 (WebCore::SVGListProperty::removeItemValuesAndWrappers): 17702 17703 2010-11-05 John Reck <jreck (a] google.com> 17704 17705 Reviewed by Nikolas Zimmermann. 17706 17707 The change to SVGPropertyTearOff by CodeGeneratorV8.pm caused two build failures 17708 for Android. One was a missing SVGPropertyTearOff.h include, the other was a 17709 missing forward declaration of FloatRect. Seems to be the result of: 17710 https://bugs.webkit.org/show_bug.cgi?id=48204 17711 17712 Bug: https://bugs.webkit.org/show_bug.cgi?id=49025 17713 17714 No tests needed, fixes build issue. 17715 17716 * bindings/scripts/CodeGeneratorV8.pm: 17717 17718 2010-11-05 Rob Buis <rwlbuis (a] gmail.com> 17719 17720 Reviewed by David Hyatt. 17721 17722 CSSRule#parentRule always null 17723 https://bugs.webkit.org/show_bug.cgi?id=46228 17724 17725 Ensure MediaList child rules have the MediaList set as parent 17726 in order to correct their parentRule correctness. 17727 17728 Test: fast/dom/css-mediarule-parentRule.html 17729 17730 * css/CSSMediaRule.cpp: 17731 (WebCore::CSSMediaRule::CSSMediaRule): 17732 17733 2010-11-04 Xan Lopez <xlopez (a] igalia.com> 17734 17735 Fix the GTK+ build. 17736 17737 * GNUmakefile.am: 17738 17739 2010-10-20 Chang Shu <chang.shu (a] nokia.com>, Antonio Gomes <tonikitoo (a] webkit.org> 17740 17741 Reviewed by Simon Fraser. 17742 17743 [Qt] Makes <input type=text> and <textarea> functional with 17744 Spatial Navigation enabled. Before this patch, the focus cannot 17745 move away from input box once it is in. This patch allows focus 17746 move to neighbor nodes when the caret reaches the edge of the texts. 17747 This patch does not support yet cases where the focused <input> 17748 has a JS handler for the arrow keys. 17749 https://bugs.webkit.org/show_bug.cgi?id=37153 17750 17751 Tests: fast/events/spatial-navigation/snav-input.html 17752 fast/events/spatial-navigation/snav-textarea.html 17753 17754 * editing/EditorCommand.cpp: 17755 (WebCore::executeMoveDown): 17756 (WebCore::executeMoveLeft): 17757 (WebCore::executeMoveRight): 17758 (WebCore::executeMoveUp): 17759 * editing/SelectionController.cpp: 17760 (WebCore::SelectionController::modify): 17761 17762 2010-11-04 Dan Bernstein <mitz (a] apple.com> 17763 17764 Build fix. 17765 17766 * editing/Editor.cpp: 17767 (WebCore::Editor::dismissCorrectionPanel): 17768 17769 2010-11-04 Jia Pu <jpu (a] apple.com> 17770 17771 Reviewed by Dan Bernstein. 17772 17773 reversion bubble in WebViews 17774 https://bugs.webkit.org/show_bug.cgi?id=47630 17775 <rdar://problem/8530960> 17776 17777 Added manual test: 17778 manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html 17779 manual-tests/autocorrection/delete-to-dismiss-reversion.html 17780 manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html 17781 manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html 17782 manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html 17783 17784 We can only manully test this feature for two reasons: 17785 1. On Mac OS X, the result of spell checking is partly determined by past user usage. We can't 17786 realiably generating test cases until we can disable user custom data during spell checking. 17787 2. To exerciese this feature, we need a minimum of 0.3 second delay using WebCore timer. 17788 17789 This patch is to add reversion to correction panel. It consists of following major code changes: 17790 1. Collected all autocorrection related member variables in Editor into a CorrectionPanelInfo 17791 class to improve readability. 17792 2. Changed signature of Editor::startCorrectionPanelTimer() to allow caller to specify the 17793 type of correction panel--regular correction or reversion. 17794 3. Made necessary changes to adopt reversion API in AppKit. 17795 4. Use SUPPORT_CORRECTION_PANEL macro to improve readability. 17796 17797 * GNUmakefile.am: Added CorrectionPanelInfo.h. 17798 * WebCore.gypi: Ditto. 17799 * WebCore.pro: Ditto. 17800 * WebCore.vcproj/WebCore.vcproj: Ditto. 17801 * WebCore.xcodeproj/project.pbxproj: 17802 * editing/CorrectionPanelInfo.h: Added. 17803 * editing/Editor.cpp: 17804 (WebCore::Editor::respondToChangedSelection): Start correction panel timer for reversion when 17805 the new selection is a caret selection at end of a previously corrected word. 17806 (WebCore::Editor::appliedEditing): Stop timer at the beginning of the method instead of at the end. 17807 (WebCore::Editor::~Editor): Adopted new method dismissCorrectionPanel(). 17808 (WebCore::Editor::markMisspellingsAfterTypingToPosition): Adopted new method applyCorrectionPanelInfo(). 17809 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Code change for new m_correctionPanelInfo 17810 member variable. 17811 (WebCore::Editor::correctionPanelTimerFired): Change to handle reversion panel type. 17812 (WebCore::Editor::handleRejectedCorrection): Ditto. 17813 (WebCore::Editor::startCorrectionPanelTimer): Changed signature to allow passing in panel type. 17814 (WebCore::Editor::stopCorrectionPanelTimer): Adopted macro SUPPORT_CORRECTION_PANEL. 17815 (WebCore::Editor::handleCancelOperation): Ditto. 17816 (WebCore::Editor::isShowingCorrectionPanel): Ditto. 17817 (WebCore::Editor::dismissCorrectionPanel): Update m_correctionPanelInfo when correction panel 17818 is dismissed. 17819 (WebCore::Editor::applyCorrectionPanelInfo): Factored out code that applies autocorrection. 17820 (WebCore::Editor::changeSelectionAfterCommand): Adopt macro SUPPORT_CORRECTION_PANEL. 17821 * editing/Editor.h: Adopted CorrectionPanelInfo and add new member methods. 17822 * editing/EditorCommand.cpp: Adopted macro SUPPORT_CORRECTION_PANEL 17823 (WebCore::createCommandMap): 17824 * editing/TypingCommand.cpp: Adopted macro SUPPORT_CORRECTION_PANEL and new signature of 17825 startCorrectionPanelTimer(). 17826 (WebCore::TypingCommand::markMisspellingsAfterTyping): 17827 * loader/EmptyClients.h: 17828 (WebCore::EmptyEditorClient::showCorrectionPanel): Adopted new signature of base class method. 17829 (WebCore::EmptyEditorClient::dismissCorrectionPanel): Ditto. 17830 * manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html: Added. 17831 * manual-tests/autocorrection/delete-to-dismiss-reversion.html: Added. 17832 * manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html: Added. 17833 * manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html: Added. 17834 * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html: Added. 17835 * page/EditorClient.h: Changed signature of showCorrectionPanel() and dismissCorrectionPanel(). 17836 * platform/graphics/mac/GraphicsContextMac.mm: Added comment to improve readability. 17837 (WebCore::GraphicsContext::drawLineForTextChecking): 17838 17839 2010-11-04 Dan Bernstein <mitz (a] apple.com> 17840 17841 Reviewed by Dave Hyatt. 17842 17843 Made table layout and painting work with all writing modes. Hit-testing, repainting, tables 17844 where some elements have their own layers, and cells whose writing mode differs from the 17845 tables are not supported yet. 17846 17847 Part of: Make tables work with vertical text 17848 https://bugs.webkit.org/show_bug.cgi?id=46417 17849 17850 Tests: fast/table/027-vertical.html 17851 fast/table/028-vertical.html 17852 fast/table/035-vertical.html 17853 fast/table/038-vertical.html 17854 fast/table/040-vertical.html 17855 fast/table/auto-with-percent-height-vertical.html 17856 fast/table/border-collapsing/001-vertical.html 17857 fast/table/border-collapsing/002-vertical.html 17858 fast/table/border-collapsing/003-vertical.html 17859 fast/table/border-collapsing/004-vertical.html 17860 fast/table/border-collapsing/border-collapsing-head-foot-vertical.html 17861 fast/table/border-collapsing/equal-precedence-resolution-vertical.html 17862 fast/table/border-collapsing/rtl-border-collapsing-vertical.html 17863 fast/table/colspanMinWidth-vertical.html 17864 fast/table/fixed-with-auto-with-colspan-vertical.html 17865 fast/table/growCellForImageQuirk-vertical.html 17866 fast/table/height-percent-test-vertical.html 17867 fast/table/percent-widths-stretch-vertical.html 17868 fast/table/rowspan-paint-order-vertical.html 17869 fast/table/table-display-types-vertical.html 17870 17871 * css/CSSStyleSelector.cpp: 17872 (WebCore::CSSStyleSelector::adjustRenderStyle): Changed to allow all writing modes for tables, 17873 make row groups, rows, column groups and columns inherit the tables writing mode. For now, 17874 make cells do this too. 17875 * html/HTMLTableElement.cpp: 17876 (WebCore::HTMLTableElement::parseMappedAttribute): Map align=center using logical properties. 17877 * rendering/RenderTable.cpp: 17878 (WebCore::RenderTable::RenderTable): Initialize m_borderStart and m_borderEnd. 17879 (WebCore::RenderTable::styleDidChange): Changed the rule for when to use auto layout to look 17880 at the logical width instead of the width. 17881 (WebCore::RenderTable::computeLogicalWidth): Uses logical widths and works with perpendicular 17882 containing blocks. 17883 (WebCore::RenderTable::layout): Use logical lengths. 17884 (WebCore::RenderTable::setCellLogicalWidths): Renamed setCellWidths() to this and updated for 17885 the renaming of RenderTableSection::setCellWidths(). 17886 (WebCore::RenderTable::paintObject): Account for flipped modes. 17887 (WebCore::RenderTable::subtractCaptionRect): Added this helper method the considers writing modes. 17888 (WebCore::RenderTable::paintBoxDecorations): Adopted subtractCaptionRect(). 17889 (WebCore::RenderTable::paintMask): Ditto. 17890 (WebCore::RenderTable::computePreferredLogicalWidths): Updated for the renaming of 17891 recalcHorizontalBorders(). 17892 (WebCore::RenderTable::calcBorderStart): Renamed calcBorderLeft() to this and changed it to use 17893 borderStart(). Splits odd number of pixels based on the physical side. 17894 (WebCore::RenderTable::calcBorderEnd): Similar. 17895 (WebCore::RenderTable::recalcBordersInRowDirection): Renamed recalcHorizontalBorders() to this 17896 and updated for other renames. 17897 (WebCore::RenderTable::borderBefore): Replaced borderTop() with this. 17898 (WebCore::RenderTable::borderAfter): Similar. 17899 (WebCore::RenderTable::outerBorderBefore): Similar. 17900 (WebCore::RenderTable::outerBorderAfter): Similar. 17901 (WebCore::RenderTable::outerBorderStart): Similar. 17902 (WebCore::RenderTable::outerBorderEnd): Similar. 17903 (WebCore::RenderTable::firstLineBoxBaseline): Changed to use logical heights. 17904 (WebCore::RenderTable::overflowClipRect): Account for writing modes. 17905 * rendering/RenderTable.h: 17906 (WebCore::RenderTable::borderStart): 17907 (WebCore::RenderTable::borderEnd): 17908 (WebCore::RenderTable::borderLeft): 17909 (WebCore::RenderTable::borderRight): 17910 (WebCore::RenderTable::borderTop): 17911 (WebCore::RenderTable::borderBottom): 17912 (WebCore::RenderTable::outerBorderLeft): 17913 (WebCore::RenderTable::outerBorderRight): 17914 (WebCore::RenderTable::outerBorderTop): 17915 (WebCore::RenderTable::outerBorderBottom): 17916 (WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection): Changed to match its name. 17917 * rendering/RenderTableRow.cpp: 17918 (WebCore::RenderTableRow::styleWillChange): Changed to detect changes to logical height. 17919 * rendering/RenderTableSection.cpp: 17920 (WebCore::setRowLogicalHeightToRowStyleLogicalHeightIfNotRelative): Renamed and changed to use 17921 logical heights. 17922 (WebCore::RenderTableSection::RenderTableSection): Updated initializers for new member variables. 17923 (WebCore::RenderTableSection::addChild): Updated for rename. 17924 (WebCore::RenderTableSection::ensureRows): Ditto. 17925 (WebCore::RenderTableSection::addCell): Ditto. Also use logical heights. 17926 (WebCore::RenderTableSection::setCellLogicalWidths): Renamed setCellWidths() to this, changed 17927 to use logical widths. 17928 (WebCore::RenderTableSection::calcRowLogicalHeight): Added logical to the name. Updated with 17929 logical heights. 17930 (WebCore::RenderTableSection::layoutRows): 17931 (WebCore::RenderTableSection::calcOuterBorderBefore): 17932 (WebCore::RenderTableSection::calcOuterBorderAfter): 17933 (WebCore::RenderTableSection::calcOuterBorderStart): 17934 (WebCore::RenderTableSection::calcOuterBorderEnd): 17935 (WebCore::RenderTableSection::recalcOuterBorder): 17936 (WebCore::RenderTableSection::firstLineBoxBaseline): 17937 (WebCore::RenderTableSection::paintCell): 17938 (WebCore::RenderTableSection::recalcCells): 17939 * rendering/RenderTableSection.h: 17940 (WebCore::RenderTableSection::outerBorderBefore): 17941 (WebCore::RenderTableSection::outerBorderAfter): 17942 (WebCore::RenderTableSection::outerBorderStart): 17943 (WebCore::RenderTableSection::outerBorderEnd): 17944 17945 2010-11-04 Kent Tamura <tkent (a] chromium.org> 17946 17947 Unreviewed, trivial test fix. 17948 17949 Fix GTK build for http://trac.webkit.org/changeset/71373 . 17950 17951 * GNUmakefile.am: Add HTMLOutputElement.{cpp,h} 17952 17953 2010-11-04 MORITA Hajime <morrita (a] google.com> 17954 17955 Reviewed by Kent Tamura. 17956 17957 Stale reference to RenderObject held as FrameView layoutRoot 17958 https://bugs.webkit.org/show_bug.cgi?id=48019 17959 17960 <progress> and <meter> shouldn't have children of its RenderObject, 17961 which caused unexpected result. 17962 This change suppresses child creation to prevent it. 17963 17964 Tests: fast/dom/HTMLMeterElement/meter-element-with-child-crash.html 17965 fast/dom/HTMLProgressElement/progress-element-with-child-crash.html 17966 17967 * rendering/RenderIndicator.h: 17968 (WebCore::RenderIndicator::canHaveChildren): 17969 17970 2010-11-04 Kenichi Ishibashi <bashi (a] google.com> 17971 17972 Reviewed by Kent Tamura. 17973 17974 [HTML5][Forms] Support for <output> element 17975 https://bugs.webkit.org/show_bug.cgi?id=29363 17976 17977 Support for <output> element. 17978 17979 Tests: fast/dom/HTMLOutputElement/dom-settable-token-list.html 17980 fast/dom/HTMLOutputElement/htmloutputelement-reset-event.html 17981 fast/dom/HTMLOutputElement/htmloutputelement-validity.html 17982 fast/dom/HTMLOutputElement/htmloutputelement-value.html 17983 fast/dom/HTMLOutputElement/htmloutputelement.html 17984 17985 * Android.derived.jscbindings.mk: Added JSHTMLOutputElement.h. 17986 * Android.derived.v8bindings.mk: Added V8HTMLOutputElement.h. 17987 * Android.jscbindings.mk: Added JSHTMLOutputElementCustom.cpp. 17988 * Android.mk: Added HTMLOutputElement.cpp. 17989 * Android.v8bindings.mk: Added V8HTMLOutputElementCustom.cpp. 17990 * CMakeLists.txt: Added HTMLOutputElement.{idl,cpp} and JSHTMLOutputElementCustom.cpp. 17991 * DerivedSources.cpp: Added JSHTMLOutputElement.cpp. 17992 * DerivedSources.make: Added HTMLOutputElement entry. 17993 * GNUmakefile.am: Added JSHTMLOutputElement.{cpp,h} 17994 * WebCore.gypi: Added HTMLOutputElement.{idl,cpp,h}, JSHTMLOutputElementCustom.cpp and V8HTMLOutputElementCustom.cpp 17995 * WebCore.pri: Added HTMLOutputElement.idl. 17996 * WebCore.pro: Added V8HTMLOutputElementCustom.cpp, JSHTMLOutputElementCustom.cpp and HTMLOutputElement.cpp. 17997 * WebCore.vcproj/WebCore.vcproj: Added entries for JSHTMLOutputElement.{cpp,h} and JSHTMLOutputElementCustom.cpp. 17998 * WebCore.xcodeproj/project.pbxproj: Added entries for JSHTMLOutputElementCustom.cpp, HTMLOutputElement.{cpp,h,idl}, JSHTMLOutputElement.{cpp,h} 17999 * bindings/js/JSBindingsAllInOne.cpp: Added JSHTMLOutputElementCustom.cpp. 18000 * bindings/js/JSHTMLOutputElementCustom.cpp: Added. 18001 (WebCore::JSHTMLOutputElement::htmlFor): 18002 (WebCore::JSHTMLOutputElement::setHtmlFor): 18003 * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Modified. 18004 (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): Returns null if the index is out of range. 18005 * bindings/v8/custom/V8HTMLOutputElementCustom.cpp: Added. 18006 (WebCore::V8HTMLOutputElement::htmlForAccessorGetter): 18007 (WebCore::V8HTMLOutputElement::htmlForAccessorSetter): 18008 * css/html.css: Added a default style of output element. 18009 (output): 18010 * html/DOMSettableTokenList.cpp: Fix bugs. 18011 (WebCore::DOMSettableTokenList::item): Returns null string if the index is out of range. 18012 (WebCore::DOMSettableTokenList::addInternal): Added check m_tokens.isNull(). 18013 (WebCore::DOMSettableTokenList::setValue): Set the value case sensitive. 18014 * html/HTMLOutputElement.cpp: Added. 18015 (WebCore::HTMLOutputElement::HTMLOutputElement): 18016 (WebCore::HTMLOutputElement::create): 18017 (WebCore::HTMLOutputElement::formControlType): 18018 (WebCore::HTMLOutputElement::parseMappedAttribute): 18019 (WebCore::HTMLOutputElement::htmlFor): 18020 (WebCore::HTMLOutputElement::setFor): 18021 (WebCore::HTMLOutputElement::setForm): 18022 (WebCore::HTMLOutputElement::childrenChanged): 18023 (WebCore::HTMLOutputElement::reset): 18024 (WebCore::HTMLOutputElement::value): 18025 (WebCore::HTMLOutputElement::setValue): 18026 (WebCore::HTMLOutputElement::defaultValue): 18027 (WebCore::HTMLOutputElement::setDefaultValue): 18028 (WebCore::HTMLOutputElement::setTextContentInternal): 18029 * html/HTMLOutputElement.h: Added. 18030 (WebCore::HTMLOutputElement::isEnumeratable): 18031 (WebCore::HTMLOutputElement::willValidate): 18032 * html/HTMLOutputElement.idl: Added. 18033 * html/HTMLTagNames.in: Added "output". 18034 * page/DOMWindow.idl: Added an attribute for HTMLOutputElement. 18035 18036 2010-11-04 Zhenyao Mo <zmo (a] google.com> 18037 18038 Reviewed by Kenneth Russell. 18039 18040 Remove IMPLEMENTATION_COLOR_READ_FORMAT and TYPE 18041 https://bugs.webkit.org/show_bug.cgi?id=48938 18042 18043 * html/canvas/WebGLRenderingContext.cpp: 18044 (WebCore::WebGLRenderingContext::initializeNewContext): 18045 (WebCore::WebGLRenderingContext::getParameter): 18046 (WebCore::WebGLRenderingContext::readPixels): 18047 * html/canvas/WebGLRenderingContext.h: 18048 * html/canvas/WebGLRenderingContext.idl: 18049 * platform/graphics/GraphicsContext3D.h: 18050 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 18051 (WebCore::GraphicsContext3D::getIntegerv): 18052 18053 2010-11-04 Zhenyao Mo <zmo (a] google.com> 18054 18055 Reviewed by Kenneth Russell. 18056 18057 TypedArray should throw exception if length not a multiple of element size 18058 https://bugs.webkit.org/show_bug.cgi?id=45487 18059 18060 * bindings/js/JSArrayBufferViewHelper.h: 18061 (WebCore::constructArrayBufferView): 18062 * bindings/v8/custom/V8ArrayBufferViewCustom.h: 18063 (WebCore::constructWebGLArray): 18064 18065 2010-11-04 Kenneth Russell <kbr (a] google.com> 18066 18067 Reviewed by Adam Barth. 18068 18069 [chromium] Mac: WebGL: all textured content is blue 18070 https://bugs.webkit.org/show_bug.cgi?id=49021 18071 18072 Added support for 8-bit, little-endian CGImages. The previous 18073 image decode path used the default byte order, which is apparently 18074 big-endian. 18075 18076 Tested with various WebGL content and layout tests in Chromium. 18077 Ran layout tests in WebKit and tested various WebGL content in 18078 Safari. Was not able to run layout tests with Chromium port of 18079 DumpRenderTree due to build failures currently in the tree. 18080 18081 * platform/graphics/GraphicsContext3D.cpp: 18082 (WebCore::doPacking): 18083 * platform/graphics/GraphicsContext3D.h: 18084 * platform/graphics/cg/GraphicsContext3DCG.cpp: 18085 (WebCore::getSourceDataFormat): 18086 (WebCore::GraphicsContext3D::getImageData): 18087 18088 2010-11-03 Zhenyao Mo <zmo (a] google.com> 18089 18090 Reviewed by Kenneth Russell. 18091 18092 renderbufferStorage(DEPTH_STENCIL) shouldn't generate an error 18093 https://bugs.webkit.org/show_bug.cgi?id=48891 18094 18095 * html/canvas/WebGLFramebuffer.cpp: 18096 (WebCore::WebGLFramebuffer::isIncomplete): Considering the case where DEPTH_STENCIL is not supported. 18097 * html/canvas/WebGLRenderbuffer.cpp: 18098 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): Init added members. 18099 * html/canvas/WebGLRenderbuffer.h: Add members and accessor functions. 18100 (WebCore::WebGLRenderbuffer::setInternalFormat): 18101 (WebCore::WebGLRenderbuffer::setSize): 18102 (WebCore::WebGLRenderbuffer::getWidth): 18103 (WebCore::WebGLRenderbuffer::getHeight): 18104 (WebCore::WebGLRenderbuffer::setIsValid): 18105 (WebCore::WebGLRenderbuffer::isValid): 18106 * html/canvas/WebGLRenderingContext.cpp: 18107 (WebCore::WebGLRenderingContext::initializeNewContext): Check if packed_depth_stencil extension exists. 18108 (WebCore::WebGLRenderingContext::getRenderbufferParameter): Simulate the case for DEPTH_STENCIL where packed_depth_stencil is not supported. 18109 (WebCore::WebGLRenderingContext::renderbufferStorage): Bypass the call if packed_depth_stencil is not supported. 18110 * html/canvas/WebGLRenderingContext.h: 18111 18112 2010-11-04 Kavita Kanetkar <kkanetkar (a] chromium.org> 18113 18114 Reviewed by Adam Barth. 18115 18116 Web Inspector: Enable files ystem UI for chromium 18117 https://bugs.webkit.org/show_bug.cgi?id=48963 18118 18119 * inspector/Inspector.idl: 18120 * inspector/InspectorFileSystemAgent.cpp: 18121 (WebCore::InspectorFileSystemAgent::getFileSystemPathAsync): 18122 * inspector/InspectorFileSystemAgent.h: 18123 * inspector/front-end/FileSystemView.js: 18124 (WebInspector.FileSystemView): 18125 (WebInspector.FileSystemView.prototype.setFileSystemDisabled): 18126 (WebInspector.FileSystemView.prototype._createTextAndButton): 18127 (WebInspector.FileSystemView.prototype.refreshFileSystem): 18128 * inspector/front-end/StoragePanel.js: 18129 (WebInspector.StoragePanel.prototype.setFileSystemDisabled): 18130 * inspector/front-end/inspector.js: 18131 (WebInspector.didGetFileSystemDisabled): 18132 (WebInspector.reset): 18133 18134 2010-11-04 Robert Hogan <robert (a] webkit.org> 18135 18136 Reviewed by Darin Adler. 18137 18138 Stale reference to JSDOMWindow in ScriptController::m_cacheableBindingObject 18139 18140 After bug 37725 we need to update the globalObject() (i.e. JSDOMWindow) 18141 associated with the m_cacheablebindingRootObject every time we clear the 18142 frame and load a new page. This allows the runtime objects 18143 (e.g. LayoutTestController etc.) to persist between navigations as 18144 before but also ensures that when qt_runtime, or any other bridge, 18145 looks at the root->globalObject() of a cacheable binding object 18146 it gets the DOMWindow of the current page rather than the DOMWindow 18147 that was in place when m_cacheableBindingRootObject was created. 18148 18149 Fixes fast/dom/nodesFromRect-basic.html on Qt. 18150 18151 https://bugs.webkit.org/show_bug.cgi?id=48758 18152 18153 * bindings/js/ScriptController.cpp: 18154 (WebCore::ScriptController::clearWindowShell): 18155 * bridge/runtime_root.cpp: 18156 (JSC::Bindings::RootObject::updateGlobalObject): 18157 * bridge/runtime_root.h: 18158 18159 2010-11-04 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 18160 18161 Reviewed by David Hyatt. 18162 18163 Delegate scrolling via a separate method 18164 https://bugs.webkit.org/show_bug.cgi?id=48988 18165 18166 Add a delegatedScrollRequested method to HostWindow for delegating 18167 scrolling to the view. This is only used in conjunction with tiling, 18168 and is ifdef'ed. 18169 18170 * page/Chrome.cpp: 18171 (WebCore::Chrome::delegatedScrollRequested): 18172 * page/Chrome.h: 18173 * page/ChromeClient.h: 18174 * platform/HostWindow.h: 18175 * platform/ScrollView.cpp: 18176 (WebCore::ScrollView::setScrollPosition): 18177 18178 2010-11-04 Pavel Feldman <pfeldman (a] chromium.org> 18179 18180 Reviewed by Timothy Hatcher. 18181 18182 Web Inspector: Need better way of switching back to the Timeline view of the Network tab. 18183 https://bugs.webkit.org/show_bug.cgi?id=48995 18184 18185 - Moved close button to the left, preceding tab headers; 18186 - Auto-adjusting summary bar width when switching to the preview mode 18187 - Auto-scrolling network log if it was scrolled to bottom. 18188 18189 * inspector/front-end/DataGrid.js: 18190 (WebInspector.DataGrid): 18191 (WebInspector.DataGrid.prototype.isScrolledToLastRow): 18192 (WebInspector.DataGrid.prototype.scrollToLastRow): 18193 * inspector/front-end/NetworkPanel.js: 18194 (WebInspector.NetworkPanel): 18195 (WebInspector.NetworkPanel.prototype.updateSidebarWidth): 18196 (WebInspector.NetworkPanel.prototype._positionSummaryBar): 18197 (WebInspector.NetworkPanel.prototype.refresh): 18198 (WebInspector.NetworkPanel.prototype._reset): 18199 (WebInspector.NetworkPanel.prototype._toggleGridMode): 18200 * inspector/front-end/inspector.css: 18201 (.tabbed-pane-header li): 18202 * inspector/front-end/networkPanel.css: 18203 (.network-summary-bar): 18204 (#network-close-button): 18205 (#network-views.small #network-close-button): 18206 (#network-views .resource-view .tabbed-pane-header): 18207 (#network-views.small .resource-view .tabbed-pane-header): 18208 18209 2010-11-04 Erik Arvidsson <arv (a] chromium.org> 18210 18211 Reviewed by Dimitri Glazkov. 18212 18213 Support box-sizing without the vendor prefix 18214 https://bugs.webkit.org/show_bug.cgi?id=36713 18215 18216 Based on patch by Peter Beverloo <peter (a] lvp-media.com> 18217 18218 Test: fast/css/box-sizing-backwards-compat-prefix.html 18219 18220 * css/CSSComputedStyleDeclaration.cpp: 18221 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 18222 * css/CSSParser.cpp: 18223 (WebCore::CSSParser::parseValue): 18224 (WebCore::cssPropertyID): This handles -webkit-box-sizing and maps it to box-sizing. 18225 * css/CSSPropertyNames.in: 18226 * css/CSSStyleSelector.cpp: 18227 (WebCore::CSSStyleSelector::applyProperty): 18228 * css/quirks.css: Change -webkit-box-sizing to box-sizing. 18229 (input:not([type=image]), textarea): 18230 * css/view-source.css: Ditto. 18231 (.webkit-line-gutter-backdrop, .webkit-line-number): 18232 * css/wml.css: Ditto. 18233 (do): 18234 (select): 18235 18236 2010-11-04 John Reck <jreck (a] google.com> 18237 18238 Reviewed by Steve Block. 18239 18240 Fix a linker failure when building for Android 18241 https://bugs.webkit.org/show_bug.cgi?id=48964 18242 18243 The Android stub for setCookieStoragePrivateBrowsingEnabled(bool) wasn't in the WebCore namespace, which caused 18244 a linker failure when building for Android. Moved the stub to the WebCore namespace. This was caused by 18245 http://trac.webkit.org/changeset/70400 18246 18247 No new tests, build fix only 18248 18249 * platform/android/TemporaryLinkStubs.cpp: 18250 18251 2010-11-04 Joseph Pecoraro <joepeck (a] webkit.org> 18252 18253 Reviewed by Andreas Kling. 18254 18255 Request.h getters can be made const 18256 https://bugs.webkit.org/show_bug.cgi?id=49003 18257 18258 Added the const qualifier to some getters that don't mutate the object. 18259 18260 * loader/Request.h: 18261 (WebCore::Request::cachedResource): 18262 (WebCore::Request::cachedResourceLoader): 18263 (WebCore::Request::isIncremental): 18264 (WebCore::Request::isMultipart): 18265 18266 2010-11-03 Brian Weinstein <bweinstein (a] apple.com> 18267 18268 Reviewed by Brady Eidson. 18269 18270 User scripts shouldn't be injected in a frame's empty initial document. 18271 https://bugs.webkit.org/show_bug.cgi?id=48970 18272 <rdar://problem/8618164> 18273 <rdar://problem/8082122> 18274 18275 When a frame loads, it first creates an empty initial document, then navigates to the correct URL. Our 18276 current policy with user scripts is to inject them into both the initial empty document, and then inject 18277 them again. 18278 18279 This causes developers to think their scripts have been injected twice into all iframes, and there is a timing 18280 issue between WebKit1 and WebKit2 that causes start scripts to be injected into the initial empty document 18281 of the main frame when a new tab or window is created. 18282 18283 The fix for this is to not inject user scripts when the frame is creating its initial empty document before loading 18284 the correct source. 18285 18286 * page/Frame.cpp: 18287 (WebCore::Frame::injectUserScripts): 18288 18289 2010-11-04 Andreas Kling <kling (a] webkit.org> 18290 18291 Reviewed by Nikolas Zimmermann. 18292 18293 GraphicsContext: Don't do full save/restore when painting with low quality scaling 18294 https://bugs.webkit.org/show_bug.cgi?id=48738 18295 18296 Stash the imageInterpolationQuality() in a local and reset it after painting. 18297 18298 * platform/graphics/GraphicsContext.cpp: 18299 (WebCore::GraphicsContext::drawImage): 18300 (WebCore::GraphicsContext::drawTiledImage): 18301 (WebCore::GraphicsContext::drawImageBuffer): 18302 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 18303 (WebCore::GraphicsContext::imageInterpolationQuality): 18304 * platform/graphics/skia/GraphicsContextSkia.cpp: 18305 (WebCore::GraphicsContext::imageInterpolationQuality): 18306 * platform/graphics/wince/GraphicsContextWinCE.cpp: 18307 (WebCore::GraphicsContext::imageInterpolationQuality): 18308 18309 2010-11-04 Nikolas Zimmermann <nzimmermann (a] rim.com> 18310 18311 Reviewed by Andreas Kling. 18312 18313 Refactor SVGStringListPropertyTearOff/SVGListPropertyTearOff to use a common base class 18314 https://bugs.webkit.org/show_bug.cgi?id=48990 18315 18316 Introduce SVGListProperty as common base class between static lists (SVGStringListPropertyTearOff) and dynamic lists (SVGListPropertyTearOff). 18317 This is a preparation for the addition of the next static list type: SVGPointList. 18318 18319 * GNUmakefile.am: Add new files to build. 18320 * WebCore.gypi: Ditto. 18321 * WebCore.pro: Ditto. 18322 * WebCore.vcproj/WebCore.vcproj: Ditto. 18323 * WebCore.xcodeproj/project.pbxproj: Ditto. 18324 * bindings/scripts/CodeGenerator.pm: s/SVGStringListPropertyTearOff/SVGStaticListPropertyTearOff/. 18325 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 18326 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 18327 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 18328 * svg/properties/SVGAnimatedListPropertyTearOff.h: Include SVGStaticListPropertyTearOff.h here, to avoid special dependencies in CodeGenerator*.pm 18329 * svg/properties/SVGListProperty.h: Added. 18330 * svg/properties/SVGListPropertyTearOff.h: Use SVGList API implementation from SVGListProperty base class. 18331 * svg/properties/SVGStaticListPropertyTearOff.h: Added. Use SVGList API implementation from SVGListProperty base class. 18332 * svg/properties/SVGStringListPropertyTearOff.h: Removed. 18333 18334 2010-11-04 Ryosuke Niwa <rniwa (a] webkit.org> 18335 18336 Unreviewed. Fixed WebCore.xcodeproject 18337 18338 * WebCore.xcodeproj/project.pbxproj: 18339 18340 2010-11-04 Pratik Solanki <psolanki (a] apple.com> 18341 18342 Reviewed by Darin Adler. 18343 18344 Should make use of purge priorities for different resource types 18345 https://bugs.webkit.org/show_bug.cgi?id=48684 18346 18347 Assign purge priorities to CachedResource objects. JavaScript and CSS stylesheets are more 18348 important than images so hint to the kernel to purge them last. We do this by repurposing 18349 the previously unused function, PurgeableBuffer::setPurgePriority(). It now just sets the 18350 priority field and does not have side-effects like calling makePurgeable(true). 18351 18352 Also, remove unusued PurgeableBuffer::create(const Vector<char>&) function and move the 18353 purgeable memory size threshold from CachedResource to PurgeableBuffer. 18354 18355 * WebCore.xcodeproj/project.pbxproj: Add new PurgePriority.h header and mark it as private 18356 header. 18357 * loader/CachedCSSStyleSheet.h: 18358 (WebCore::CachedCSSStyleSheet::purgePriority): 18359 * loader/CachedImage.h: 18360 (WebCore::CachedImage::purgePriority): 18361 * loader/CachedResource.cpp: 18362 (WebCore::CachedResource::makePurgeable): Set the purge priority on the PurgeableBffer. 18363 Also, move the check for purgeable size threshold to PurgeableBuffer. 18364 * loader/CachedResource.h: 18365 (WebCore::CachedResource::purgePriority): Added. New virtual method that lets the class 18366 specify its purge priority. 18367 * loader/CachedScript.h: 18368 (WebCore::CachedScript::purgePriority): 18369 * platform/PurgePriority.h: Added. Move the PurgePriority enum from PurgeableBuffer class to 18370 its own header file. 18371 (WebCore::): 18372 * platform/PurgeableBuffer.h: 18373 (WebCore::PurgeableBuffer::setPurgePriority): Update this previously unused function to just 18374 set the priority and not call makePurgeable(true). 18375 * platform/mac/PurgeableBufferMac.cpp: Update size threshold to 16KB which is what 18376 CachedResource was using. 18377 18378 2010-11-04 Chris Guillory <chris.guillory (a] google.com> 18379 18380 Reviewed by Chris Fleizach. 18381 18382 Ignore static text children of text field controls in the accessibility tree. 18383 https://bugs.webkit.org/show_bug.cgi?id=48944 18384 18385 * accessibility/AccessibilityRenderObject.cpp: 18386 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 18387 18388 2010-11-04 Erik Arvidsson <arv (a] chromium.org> 18389 18390 Reviewed by Tony Chang. 18391 18392 Computed style is not correct for negative values in the presence of zooming 18393 https://bugs.webkit.org/show_bug.cgi?id=48855 18394 18395 * rendering/style/RenderStyle.h: 18396 (WebCore::adjustForAbsoluteZoom): When the value is less than zero we need to decrement instead of increment. 18397 18398 2010-11-04 Shane Stephens <shanestephens (a] google.com> 18399 18400 Reviewed by Tony Chang. 18401 18402 SVGStyledTransformableElement supplemental transforms pre-multiplied 18403 but should be post-multiplied. 18404 https://bugs.webkit.org/show_bug.cgi?id=48026 18405 18406 Test: svg/animations/animate-path-nested-transforms.svg 18407 18408 * svg/SVGStyledTransformableElement.cpp: 18409 (WebCore::SVGStyledTransformableElement::animatedLocalTransform): 18410 18411 Switched order of multiplication. Note that due to a bug in 18412 AffineTransform's operator* implementation the order of arguments is 18413 reversed (see http://bugs.webkit.org/show_bug.cgi?id=48031). 18414 18415 2010-11-04 James Simonsen <simonjam (a] chromium.org> 18416 18417 Reviewed by Darin Fisher. 18418 18419 [Web Timing] Implement dom* timing marks 18420 https://bugs.webkit.org/show_bug.cgi?id=46301 18421 18422 Test: fast/dom/webtiming-document-open.html 18423 18424 * GNUmakefile.am: Added DocumentTiming.h 18425 * WebCore.gypi: Ditto. 18426 * WebCore.vcproj/WebCore.vcproj: Ditto. 18427 * WebCore.xcodeproj/project.pbxproj: Ditto. 18428 * dom/Document.cpp: 18429 (WebCore::Document::setReadyState): Set DOM WebTiming marks. 18430 (WebCore::Document::finishedParsing): Set DOM WebTiming marks. 18431 * dom/Document.h: 18432 (WebCore::Document::timing): Added. 18433 * dom/DocumentTiming.h: Added. 18434 (WebCore::DocumentTiming::DocumentTiming): 18435 * page/Timing.cpp: Added DOM timing. 18436 (WebCore::Timing::domLoading): Ditto. 18437 (WebCore::Timing::domInteractive): Ditto. 18438 (WebCore::Timing::domContentLoaded): Ditto. 18439 (WebCore::Timing::domComplete): Ditto. 18440 (WebCore::Timing::documentTiming): Ditto. 18441 * page/Timing.h: Ditto. 18442 * page/Timing.idl: Ditto. 18443 18444 2010-11-04 Carlos Garcia Campos <cgarcia (a] igalia.com> 18445 18446 Reviewed by Martin Robinson. 18447 18448 [GTK] Implement unencodable characters handling in TextCodecGtk::encode() 18449 https://bugs.webkit.org/show_bug.cgi?id=48902 18450 18451 Fixes a crash in test fast/encoding/char-encoding.html. 18452 18453 * platform/text/gtk/TextCodecGtk.cpp: 18454 (WebCore::TextCodecGtk::encode): 18455 18456 2010-11-04 Adam Barth <abarth (a] webkit.org> 18457 18458 Enabled ICCJPEG on Chromium Mac 18459 https://bugs.webkit.org/show_bug.cgi?id=48977 18460 18461 Add iccjpeg as a dependency. 18462 18463 * WebCore.gyp/WebCore.gyp: 18464 18465 2010-11-03 Kent Tamura <tkent (a] chromium.org> 18466 18467 Reviewed by Dimitri Glazkov. 18468 18469 Framework to show form validation message for invalid controls 18470 https://bugs.webkit.org/show_bug.cgi?id=31718 18471 18472 HTMLFormElement::validateInteractively() shows a validation message for 18473 an invalid control by HTMLFormControlElement::updateVisibleValidationMessage(), 18474 and the message is hidden when the invalid control looses focus, becomes 18475 valid, detached, or the form is submitted again. 18476 18477 Introduce ValidationMessage class to manage visible form validation 18478 message. It has no implementation to show/hide a message yet. 18479 18480 No new tests. New behavior is disabled by default, and is timing-dependent. 18481 18482 * Android.mk: Add ValidationMessage. 18483 * CMakeLists.txt: ditto. 18484 * GNUmakefile.am: ditto. 18485 * WebCore.gypi: ditto. 18486 * WebCore.pro: ditto. 18487 * WebCore.vcproj/WebCore.vcproj: ditto. 18488 * WebCore.xcodeproj/project.pbxproj: ditto. 18489 * html/HTMLFormControlElement.cpp: 18490 (WebCore::HTMLFormControlElement::detach): Hides a validation message. 18491 (WebCore::HTMLFormControlElement::setNeedsWillValidateCheck): 18492 Hides a validation message if validation is not needed. 18493 (WebCore::HTMLFormControlElement::updateVisibleValidationMessage): 18494 (WebCore::HTMLFormControlElement::hideVisibleValidationMessage): 18495 (WebCore::HTMLFormControlElement::setNeedsValidityCheck): 18496 Hides a validation message or updates the validation message. 18497 (WebCore::HTMLFormControlElement::dispatchBlurEvent): 18498 Hides a validation message. 18499 (WebCore::HTMLFormControlElement::visibleValidationMessage): 18500 * html/HTMLFormControlElement.h: 18501 * html/HTMLFormElement.cpp: 18502 (WebCore::HTMLFormElement::validateInteractively): 18503 - Hide existing validation messages before showing new message. 18504 - Show new validation message. 18505 * html/ValidationMessage.cpp: Added. 18506 (WebCore::ValidationMessage::ValidationMessage): 18507 (WebCore::ValidationMessage::~ValidationMessage): 18508 (WebCore::ValidationMessage::create): 18509 (WebCore::ValidationMessage::setMessage): 18510 (WebCore::ValidationMessage::hideMessage): 18511 * html/ValidationMessage.h: Added. 18512 (WebCore::ValidationMessage::message): 18513 18514 2010-11-03 Patrick Gansterer <paroga (a] webkit.org> 18515 18516 Reviewed by Adam Roben. 18517 18518 Port WCDataObject.cpp to WinCE 18519 https://bugs.webkit.org/show_bug.cgi?id=48921 18520 18521 OleDuplicateData is not supported on WinCE. 18522 18523 * platform/win/WCDataObject.cpp: 18524 (WebCore::WCDataObject::CopyMedium): 18525 18526 2010-11-03 Patrick Gansterer <paroga (a] webkit.org> 18527 18528 Reviewed by Adam Roben. 18529 18530 Port ClipboardWin.cpp to WinCE 18531 https://bugs.webkit.org/show_bug.cgi?id=48412 18532 18533 * platform/win/ClipboardWin.cpp: 18534 (WebCore::writeFileToDataObject): 18535 18536 2010-11-03 Patrick Gansterer <paroga (a] webkit.org> 18537 18538 Reviewed by Adam Roben. 18539 18540 Port ClipboardWin.cpp to WinCE 18541 https://bugs.webkit.org/show_bug.cgi?id=48412 18542 18543 * platform/win/ClipboardWin.cpp: 18544 (WebCore::filesystemPathFromUrlOrTitle): 18545 (WebCore::createGlobalHDropContent): 18546 (WebCore::ClipboardWin::files): 18547 18548 2010-11-03 Vincent Scheib <scheib (a] chromium.org> 18549 18550 Reviewed by James Robinson. 18551 18552 [chromium] GraphicsContext3D creation attributes include canRecoverFromContextLoss option 18553 https://bugs.webkit.org/show_bug.cgi?id=48850 18554 18555 Implementations of GraphicsContext3D may respect the creation attribute 18556 canRecoverFromContextLoss being false, and then only succeeding initialization if 18557 the context can satisfy that request of never being lost. DX9 on XP can not satisfy 18558 such a request. 18559 18560 Test by use of accelerated canvas 2d in Chromium with ANGLE on XP machines. 18561 18562 * platform/graphics/GraphicsContext3D.h: 18563 (WebCore::GraphicsContext3D::Attributes::Attributes): 18564 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 18565 (WebCore::SharedGraphicsContext3D::create): 18566 18567 2010-11-03 Carlos Garcia Campos <cgarcia (a] igalia.com> 18568 18569 Reviewed by Martin Robinson. 18570 18571 [GTK] Use sentence boundaries instead of start/end sentence 18572 https://bugs.webkit.org/show_bug.cgi?id=48422 18573 18574 Using sentence boundaries all intersentence 18575 whitespace/control/format characters are assigned to a 18576 sentence. This is what ICU does, so we have to do the same in 18577 order to get the same results with glib unicode backend. It fixes 18578 the sentence tests cases in test fast/dom/Range/range-expand.html. 18579 18580 * platform/text/gtk/TextBreakIteratorGtk.cpp: 18581 (WebCore::textBreakNext): 18582 (WebCore::textBreakPrevious): 18583 18584 2010-11-03 Zhenyao Mo <zmo (a] google.com> 18585 18586 Reviewed by Kenneth Russell. 18587 18588 depthRange should generate INVALID_OPERATION if zNear is greater than zFar 18589 https://bugs.webkit.org/show_bug.cgi?id=48676 18590 18591 * html/canvas/WebGLRenderingContext.cpp: 18592 (WebCore::WebGLRenderingContext::depthRange): 18593 18594 2010-11-03 Adrienne Walker <enne (a] google.com> 18595 18596 Reviewed by Kenneth Russell. 18597 18598 Properly return empty strings instead of null when using invalid 18599 objects for some WebGL calls. This fixes issues caused by r71274. 18600 https://bugs.webkit.org/show_bug.cgi?id=48962 18601 18602 * html/canvas/WebGLRenderingContext.cpp: 18603 (WebCore::WebGLRenderingContext::getProgramInfoLog): 18604 (WebCore::WebGLRenderingContext::getShaderInfoLog): 18605 (WebCore::WebGLRenderingContext::getShaderSource): 18606 18607 2010-11-01 Ryosuke Niwa <rniwa (a] webkit.org> 18608 18609 Reviewed by Darin Adler. 18610 18611 Crash in ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle 18612 https://bugs.webkit.org/show_bug.cgi?id=48581 18613 18614 The crash was caused by RemoveNodePreservingChildrenCommand's calling removeNode 18615 on m_node without checking that m_node has a parent and it's still in the document. 18616 Fixed the crash by adding an early exit in CompositeEditCommand::removeNode and 18617 deploying RefPtr in several places of ApplyStyleCommand.cpp. 18618 18619 Test: editing/style/iframe-onload-crash.html 18620 18621 * editing/ApplyStyleCommand.cpp: 18622 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): 18623 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): 18624 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): 18625 * editing/ApplyStyleCommand.h: 18626 * editing/CompositeEditCommand.cpp: 18627 (WebCore::CompositeEditCommand::removeNode): 18628 18629 2010-11-03 Jia Pu <jpu (a] apple.com> 18630 18631 Reviewed by Darin Adler. 18632 18633 Crashes in WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair() when deleting multiple lines of text. 18634 https://bugs.webkit.org/show_bug.cgi?id=48918 18635 <rdar://problem/8620602> 18636 18637 I haven't been able to found a reliable way to reproduce the bug. However, whenever it happens, 18638 the crash is caused by a null node pointer returned by TextIterator. So it seems to be a 18639 safe fix to guard against that. 18640 18641 * editing/Editor.cpp: (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited): 18642 18643 2010-11-02 Zhenyao Mo <zmo (a] google.com> 18644 18645 Reviewed by Kenneth Russell. 18646 18647 A different mask or reference value in stencil operations should generate INVALID_OPERATION 18648 https://bugs.webkit.org/show_bug.cgi?id=48669 18649 18650 * html/canvas/WebGLRenderingContext.cpp: 18651 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Init stencil func ref/mask and stencil mask to default. 18652 (WebCore::WebGLRenderingContext::stencilFunc): Cache ref/mask value. 18653 (WebCore::WebGLRenderingContext::stencilFuncSeparate): Generate error if front/back values differ. 18654 (WebCore::WebGLRenderingContext::stencilMask): Cache mask value. 18655 (WebCore::WebGLRenderingContext::stencilMaskSeparate): Generate error if front/back values differ. 18656 (WebCore::WebGLRenderingContext::validateFace): Validate face parameter. 18657 (WebCore::WebGLRenderingContext::validateStencilFunc): Validate stencil func parameter. 18658 * html/canvas/WebGLRenderingContext.h: Add members to track stencil func ref/mask and stencil mask. 18659 18660 2010-11-03 Dimitri Glazkov <dglazkov (a] chromium.org> 18661 18662 Reverting r71244, r71248 and r71250. Broke default event handling inside text fields. 18663 https://bugs.webkit.org/show_bug.cgi?id=46015 18664 18665 * Android.mk: 18666 * CMakeLists.txt: 18667 * GNUmakefile.am: 18668 * WebCore.gypi: 18669 * WebCore.pro: 18670 * WebCore.vcproj/WebCore.vcproj: 18671 * WebCore.xcodeproj/project.pbxproj: 18672 * dom/ContainerNode.cpp: 18673 (WebCore::notifyChildInserted): 18674 * dom/DOMAllInOne.cpp: 18675 * dom/EventContext.cpp: Removed. 18676 * dom/EventContext.h: Removed. 18677 * dom/Node.cpp: 18678 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): 18679 (WebCore::Node::createRendererIfNeeded): 18680 (WebCore::Node::eventParentNode): 18681 (WebCore::Node::enclosingLinkEventParentOrSelf): 18682 (WebCore::eventTargetAsSVGElementInstance): 18683 (WebCore::eventTargetRespectingSVGTargetRules): 18684 (WebCore::Node::eventAncestors): 18685 (WebCore::Node::dispatchGenericEvent): 18686 * dom/Node.h: 18687 * dom/Text.cpp: 18688 (WebCore::Text::createRenderer): 18689 * dom/WindowEventContext.cpp: Removed. 18690 * dom/WindowEventContext.h: Removed. 18691 * inspector/InspectorDOMAgent.cpp: 18692 (WebCore::InspectorDOMAgent::getEventListenersForNode): 18693 * inspector/InspectorInstrumentation.cpp: 18694 (WebCore::eventHasListeners): 18695 (WebCore::InspectorInstrumentation::willDispatchEventImpl): 18696 * inspector/InspectorInstrumentation.h: 18697 (WebCore::InspectorInstrumentation::willDispatchEvent): 18698 * page/EventHandler.cpp: 18699 (WebCore::EventHandler::updateMouseEventTargetNode): 18700 * rendering/ShadowElement.h: 18701 (WebCore::ShadowElement::shadowParent): 18702 (WebCore::ShadowElement::shadowParentNode): 18703 * svg/SVGElement.cpp: 18704 (WebCore::SVGElement::eventParentNode): 18705 * svg/SVGElement.h: 18706 18707 2010-11-03 Adam Barth <abarth (a] webkit.org> 18708 18709 Reviewed by Eric Seidel. 18710 18711 CG use of WebKit image decoders crashes on some animated GIFs 18712 https://bugs.webkit.org/show_bug.cgi?id=48955 18713 18714 It turns out CFDataGetMutableBytePtr isn't safe call on a null pointer. 18715 18716 Test: fast/images/dont-crash-with-null-gif-frames.html 18717 18718 * platform/image-decoders/cg/ImageDecoderCG.cpp: 18719 (WebCore::RGBA32Buffer::copyReferenceToBitmapData): 18720 (WebCore::RGBA32Buffer::copyBitmapData): 18721 18722 2010-11-03 Adrienne Walker <enne (a] google.com> 18723 18724 Reviewed by Kenneth Russell. 18725 18726 Implement lost, restored, and creation failure context events for 18727 WebGLRenderingContext. The lost and restored functions are not hooked 18728 up yet, but the context now acts according to the spec as it should 18729 during a lost context. Tested manually, as there's no programmatic 18730 way to lose a context yet. 18731 https://bugs.webkit.org/show_bug.cgi?id=35626 18732 18733 * WebCore.gypi: 18734 * WebCore.xcodeproj/project.pbxproj: 18735 * bindings/js/JSWebGLRenderingContextCustom.cpp: 18736 (WebCore::JSWebGLRenderingContext::getAttachedShaders): 18737 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 18738 (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback): 18739 * dom/EventNames.h: 18740 * html/canvas/WebGLContextEvent.cpp: Added. 18741 (WebCore::WebGLContextEvent::WebGLContextEvent): 18742 (WebCore::WebGLContextEvent::~WebGLContextEvent): 18743 (WebCore::WebGLContextEvent::initEvent): 18744 * html/canvas/WebGLContextEvent.h: Added. 18745 (WebCore::WebGLContextEvent::create): 18746 (WebCore::WebGLContextEvent::statusMessage): 18747 * html/canvas/WebGLContextEvent.idl: Added. 18748 * html/canvas/WebGLRenderingContext.cpp: 18749 (WebCore::WebGLRenderingContext::create): 18750 (WebCore::WebGLRenderingContext::WebGLRenderingContext): 18751 (WebCore::WebGLRenderingContext::initializeNewContext): 18752 (WebCore::WebGLRenderingContext::activeTexture): 18753 (WebCore::WebGLRenderingContext::attachShader): 18754 (WebCore::WebGLRenderingContext::bindAttribLocation): 18755 (WebCore::WebGLRenderingContext::bindBuffer): 18756 (WebCore::WebGLRenderingContext::bindFramebuffer): 18757 (WebCore::WebGLRenderingContext::bindRenderbuffer): 18758 (WebCore::WebGLRenderingContext::bindTexture): 18759 (WebCore::WebGLRenderingContext::blendColor): 18760 (WebCore::WebGLRenderingContext::blendEquation): 18761 (WebCore::WebGLRenderingContext::blendEquationSeparate): 18762 (WebCore::WebGLRenderingContext::blendFunc): 18763 (WebCore::WebGLRenderingContext::blendFuncSeparate): 18764 (WebCore::WebGLRenderingContext::bufferData): 18765 (WebCore::WebGLRenderingContext::bufferSubData): 18766 (WebCore::WebGLRenderingContext::checkFramebufferStatus): 18767 (WebCore::WebGLRenderingContext::clear): 18768 (WebCore::WebGLRenderingContext::clearColor): 18769 (WebCore::WebGLRenderingContext::clearDepth): 18770 (WebCore::WebGLRenderingContext::clearStencil): 18771 (WebCore::WebGLRenderingContext::colorMask): 18772 (WebCore::WebGLRenderingContext::compileShader): 18773 (WebCore::WebGLRenderingContext::copyTexImage2D): 18774 (WebCore::WebGLRenderingContext::copyTexSubImage2D): 18775 (WebCore::WebGLRenderingContext::createBuffer): 18776 (WebCore::WebGLRenderingContext::createFramebuffer): 18777 (WebCore::WebGLRenderingContext::createTexture): 18778 (WebCore::WebGLRenderingContext::createProgram): 18779 (WebCore::WebGLRenderingContext::createRenderbuffer): 18780 (WebCore::WebGLRenderingContext::createShader): 18781 (WebCore::WebGLRenderingContext::cullFace): 18782 (WebCore::WebGLRenderingContext::deleteBuffer): 18783 (WebCore::WebGLRenderingContext::deleteFramebuffer): 18784 (WebCore::WebGLRenderingContext::deleteProgram): 18785 (WebCore::WebGLRenderingContext::deleteRenderbuffer): 18786 (WebCore::WebGLRenderingContext::deleteShader): 18787 (WebCore::WebGLRenderingContext::deleteTexture): 18788 (WebCore::WebGLRenderingContext::depthFunc): 18789 (WebCore::WebGLRenderingContext::depthMask): 18790 (WebCore::WebGLRenderingContext::depthRange): 18791 (WebCore::WebGLRenderingContext::detachShader): 18792 (WebCore::WebGLRenderingContext::disable): 18793 (WebCore::WebGLRenderingContext::disableVertexAttribArray): 18794 (WebCore::WebGLRenderingContext::drawArrays): 18795 (WebCore::WebGLRenderingContext::drawElements): 18796 (WebCore::WebGLRenderingContext::enable): 18797 (WebCore::WebGLRenderingContext::enableVertexAttribArray): 18798 (WebCore::WebGLRenderingContext::finish): 18799 (WebCore::WebGLRenderingContext::flush): 18800 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): 18801 (WebCore::WebGLRenderingContext::framebufferTexture2D): 18802 (WebCore::WebGLRenderingContext::frontFace): 18803 (WebCore::WebGLRenderingContext::generateMipmap): 18804 (WebCore::WebGLRenderingContext::getActiveAttrib): 18805 (WebCore::WebGLRenderingContext::getActiveUniform): 18806 (WebCore::WebGLRenderingContext::getAttachedShaders): 18807 (WebCore::WebGLRenderingContext::getAttribLocation): 18808 (WebCore::WebGLRenderingContext::getBufferParameter): 18809 (WebCore::WebGLRenderingContext::getContextAttributes): 18810 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): 18811 (WebCore::WebGLRenderingContext::getParameter): 18812 (WebCore::WebGLRenderingContext::getProgramParameter): 18813 (WebCore::WebGLRenderingContext::getProgramInfoLog): 18814 (WebCore::WebGLRenderingContext::getRenderbufferParameter): 18815 (WebCore::WebGLRenderingContext::getShaderParameter): 18816 (WebCore::WebGLRenderingContext::getShaderInfoLog): 18817 (WebCore::WebGLRenderingContext::getShaderSource): 18818 (WebCore::WebGLRenderingContext::getTexParameter): 18819 (WebCore::WebGLRenderingContext::getUniform): 18820 (WebCore::WebGLRenderingContext::getUniformLocation): 18821 (WebCore::WebGLRenderingContext::getVertexAttrib): 18822 (WebCore::WebGLRenderingContext::getVertexAttribOffset): 18823 (WebCore::WebGLRenderingContext::hint): 18824 (WebCore::WebGLRenderingContext::isBuffer): 18825 (WebCore::WebGLRenderingContext::isContextLost): 18826 (WebCore::WebGLRenderingContext::isEnabled): 18827 (WebCore::WebGLRenderingContext::isFramebuffer): 18828 (WebCore::WebGLRenderingContext::isProgram): 18829 (WebCore::WebGLRenderingContext::isRenderbuffer): 18830 (WebCore::WebGLRenderingContext::isShader): 18831 (WebCore::WebGLRenderingContext::isTexture): 18832 (WebCore::WebGLRenderingContext::lineWidth): 18833 (WebCore::WebGLRenderingContext::linkProgram): 18834 (WebCore::WebGLRenderingContext::pixelStorei): 18835 (WebCore::WebGLRenderingContext::polygonOffset): 18836 (WebCore::WebGLRenderingContext::readPixels): 18837 (WebCore::WebGLRenderingContext::releaseShaderCompiler): 18838 (WebCore::WebGLRenderingContext::renderbufferStorage): 18839 (WebCore::WebGLRenderingContext::sampleCoverage): 18840 (WebCore::WebGLRenderingContext::scissor): 18841 (WebCore::WebGLRenderingContext::shaderSource): 18842 (WebCore::WebGLRenderingContext::stencilFunc): 18843 (WebCore::WebGLRenderingContext::stencilFuncSeparate): 18844 (WebCore::WebGLRenderingContext::stencilMask): 18845 (WebCore::WebGLRenderingContext::stencilMaskSeparate): 18846 (WebCore::WebGLRenderingContext::stencilOp): 18847 (WebCore::WebGLRenderingContext::stencilOpSeparate): 18848 (WebCore::WebGLRenderingContext::texImage2D): 18849 (WebCore::WebGLRenderingContext::texParameter): 18850 (WebCore::WebGLRenderingContext::texSubImage2DBase): 18851 (WebCore::WebGLRenderingContext::texSubImage2DImpl): 18852 (WebCore::WebGLRenderingContext::texSubImage2D): 18853 (WebCore::WebGLRenderingContext::uniform1f): 18854 (WebCore::WebGLRenderingContext::uniform1fv): 18855 (WebCore::WebGLRenderingContext::uniform1i): 18856 (WebCore::WebGLRenderingContext::uniform1iv): 18857 (WebCore::WebGLRenderingContext::uniform2f): 18858 (WebCore::WebGLRenderingContext::uniform2fv): 18859 (WebCore::WebGLRenderingContext::uniform2i): 18860 (WebCore::WebGLRenderingContext::uniform2iv): 18861 (WebCore::WebGLRenderingContext::uniform3f): 18862 (WebCore::WebGLRenderingContext::uniform3fv): 18863 (WebCore::WebGLRenderingContext::uniform3i): 18864 (WebCore::WebGLRenderingContext::uniform3iv): 18865 (WebCore::WebGLRenderingContext::uniform4f): 18866 (WebCore::WebGLRenderingContext::uniform4fv): 18867 (WebCore::WebGLRenderingContext::uniform4i): 18868 (WebCore::WebGLRenderingContext::uniform4iv): 18869 (WebCore::WebGLRenderingContext::uniformMatrix2fv): 18870 (WebCore::WebGLRenderingContext::uniformMatrix3fv): 18871 (WebCore::WebGLRenderingContext::uniformMatrix4fv): 18872 (WebCore::WebGLRenderingContext::useProgram): 18873 (WebCore::WebGLRenderingContext::validateProgram): 18874 (WebCore::WebGLRenderingContext::vertexAttribPointer): 18875 (WebCore::WebGLRenderingContext::viewport): 18876 (WebCore::WebGLRenderingContext::loseContext): 18877 (WebCore::WebGLRenderingContext::restoreContext): 18878 (WebCore::WebGLRenderingContext::addObject): 18879 (WebCore::WebGLRenderingContext::vertexAttribfImpl): 18880 (WebCore::WebGLRenderingContext::vertexAttribfvImpl): 18881 * html/canvas/WebGLRenderingContext.h: 18882 * html/canvas/WebGLRenderingContext.idl: 18883 * platform/graphics/GraphicsContext3D.h: 18884 18885 2010-11-03 Kenneth Russell <kbr (a] google.com> 18886 18887 Reviewed by Chris Marrin. 18888 18889 Redesign extension mechanism in GraphicsContext3D 18890 https://bugs.webkit.org/show_bug.cgi?id=46894 18891 18892 Upon request, factored out extension support from GraphicsContext3D 18893 into a new Extensions3D class. (The plural was chosen because the 18894 class and subclasses hold multiple extensions.) 18895 18896 Unlike GraphicsContext3D, Extensions3D contains only pure virtual 18897 methods. This was done because Extensions3D's inheritance diagram 18898 and usage pattern is very different from that of GraphicsContext3D, 18899 and the concrete subclasses need to decide how to implement the 18900 various entry points. Requiring them to be placed at the 18901 Extensions3D level will cause implementation details to leak into 18902 the base class, which is highly undesirable. Any virtual call 18903 overhead to these entry points will be negligible. 18904 18905 Changed call sites utilizing these extensions to call through the 18906 Extensions3D object or its subclasses. 18907 18908 Tested: 18909 - Chromium on Linux with accelerated 2D canvas and HTML5 video 18910 - Chromium on Mac OS X with WebGL and CSS 3D content 18911 - Safari on Mac OS X with WebGL and CSS 3D content 18912 18913 No new tests. Covered by existing tests. 18914 18915 * WebCore.gypi: 18916 * WebCore.pro: 18917 * WebCore.xcodeproj/project.pbxproj: 18918 * platform/graphics/Extensions3D.h: Added. 18919 (WebCore::Extensions3D::~Extensions3D): 18920 * platform/graphics/GraphicsContext3D.cpp: 18921 * platform/graphics/GraphicsContext3D.h: 18922 * platform/graphics/chromium/DrawingBufferChromium.cpp: 18923 (WebCore::DrawingBuffer::DrawingBuffer): 18924 (WebCore::DrawingBuffer::publishToPlatformLayer): 18925 * platform/graphics/chromium/Extensions3DChromium.h: Added. 18926 * platform/graphics/chromium/VideoLayerChromium.cpp: 18927 (WebCore::VideoLayerChromium::updateTexture): 18928 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 18929 (WebCore::SharedGraphicsContext3D::supportsBGRA): 18930 * platform/graphics/gpu/SharedGraphicsContext3D.h: 18931 * platform/graphics/gpu/Texture.cpp: 18932 (WebCore::convertFormat): 18933 * platform/graphics/mac/GraphicsContext3DMac.mm: 18934 * platform/graphics/opengl/Extensions3DOpenGL.cpp: Added. 18935 (WebCore::Extensions3DOpenGL::Extensions3DOpenGL): 18936 (WebCore::Extensions3DOpenGL::~Extensions3DOpenGL): 18937 (WebCore::Extensions3DOpenGL::supports): 18938 (WebCore::Extensions3DOpenGL::getGraphicsResetStatusARB): 18939 * platform/graphics/opengl/Extensions3DOpenGL.h: Added. 18940 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 18941 (WebCore::GraphicsContext3D::getExtensions): 18942 * platform/graphics/qt/Extensions3DQt.cpp: Added. 18943 (WebCore::Extensions3DQt::Extensions3DQt): 18944 (WebCore::Extensions3DQt::~Extensions3DQt): 18945 (WebCore::Extensions3DQt::supports): 18946 (WebCore::Extensions3DQt::getGraphicsResetStatusARB): 18947 * platform/graphics/qt/Extensions3DQt.h: Added. 18948 * platform/graphics/qt/GraphicsContext3DQt.cpp: 18949 (WebCore::GraphicsContext3D::getExtensions): 18950 * platform/graphics/skia/PlatformContextSkia.cpp: 18951 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 18952 18953 2010-11-03 Mike Thole <mthole (a] apple.com> 18954 18955 Reviewed by Darin Adler. 18956 18957 Tweak coding style (follow-up to r71264). 18958 18959 * platform/mac/Language.mm: 18960 (WebCore::createHTTPStyleLanguageCode): Style tweaks. 18961 18962 2010-11-03 Darin Adler <darin (a] apple.com> 18963 18964 Updated Xcode projects by opening them with Xcode 3.2.4. 18965 Updated svn:ignore for Xcode projects. 18966 18967 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Added property svn:ignore. 18968 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Updated with Xcode 3.2.4. 18969 18970 2010-11-03 Matthew Delaney <mdelaney (a] apple.com> 18971 18972 Reviewed by Darin Adler. 18973 18974 Fix canvas/philip/tests/2d.pattern.image.undefined.html 18975 https://bugs.webkit.org/show_bug.cgi?id=48894 18976 18977 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: Changed error thrown to match the spec. 18978 18979 2010-11-03 Simon Fraser <simon.fraser (a] apple.com> 18980 18981 Reviewed by John Sullivan. 18982 18983 Crash when setting context font to bad value 18984 https://bugs.webkit.org/show_bug.cgi?id=48948 18985 18986 Null-check the CSSValue passed to CSSStyleSelector::applyPropertyToStyle(), 18987 since it may be null if the style declaration does not contain a value 18988 for the 'font' property. 18989 18990 Test: fast/canvas/invalid-set-font-crash.html 18991 18992 * css/CSSStyleSelector.cpp: 18993 (WebCore::CSSStyleSelector::applyPropertyToStyle): 18994 18995 2010-11-03 Mike Thole <mthole (a] apple.com> 18996 18997 Reviewed by Alexey Proskuryakov. 18998 18999 Crash under WebCore::platformDefaultLanguage() when using Arabic language 19000 https://bugs.webkit.org/show_bug.cgi?id=48946 19001 19002 * platform/mac/Language.mm: 19003 (WebCore::createHTTPStyleLanguageCode): 19004 Retain the lowercaseLanguageCode string before returning it. This was the code path that 19005 would lead to a crash. Also removed early return to prevent a leak of preferredLanguageCode. 19006 19007 2010-11-03 Dan Bernstein <mitz (a] apple.com> 19008 19009 Reviewed by Dave Hyatt. 19010 19011 Made table column width allocation algorithms use logical widths. 19012 19013 Part of: Make tables work with vertical text 19014 https://bugs.webkit.org/show_bug.cgi?id=46417 19015 19016 No new tests since tables dont support different block flows yet. 19017 19018 * rendering/AutoTableLayout.cpp: 19019 (WebCore::AutoTableLayout::AutoTableLayout): 19020 (WebCore::AutoTableLayout::recalcColumn): 19021 (WebCore::AutoTableLayout::fullRecalc): 19022 (WebCore::AutoTableLayout::computePreferredLogicalWidths): 19023 (WebCore::AutoTableLayout::calcEffectiveLogicalWidth): 19024 (WebCore::AutoTableLayout::insertSpanCell): 19025 (WebCore::AutoTableLayout::layout): 19026 * rendering/AutoTableLayout.h: 19027 (WebCore::AutoTableLayout::Layout::Layout): 19028 * rendering/FixedTableLayout.cpp: 19029 (WebCore::FixedTableLayout::calcWidthArray): 19030 (WebCore::FixedTableLayout::computePreferredLogicalWidths): 19031 (WebCore::FixedTableLayout::layout): 19032 * rendering/FixedTableLayout.h: 19033 * rendering/RenderTable.h: 19034 (WebCore::RenderTable::bordersPaddingAndSpacingInRowDirection): Renamed, but not changed yet. 19035 19036 2010-11-03 No'am Rosenthal <noam.rosenthal (a] nokia.com> 19037 19038 Unreviewed build fix for r71253 19039 19040 #endif for TILED_BACKING_STORE was at the wrong place. 19041 19042 * platform/graphics/qt/GraphicsLayerQt.cpp: 19043 (WebCore::GraphicsLayerQtImpl::tiledBackingStoreBackgroundColor): 19044 19045 2010-11-03 David Hyatt <hyatt (a] apple.com> 19046 19047 Reviewed by Dan Bernstein. 19048 19049 https://bugs.webkit.org/show_bug.cgi?id=48945 19050 19051 Patch logicalLeftSelectionOffset and logicalRightSelectionOffset to be directionally abstract. 19052 19053 Also make sure writing mode roots are also selection painting roots. 19054 19055 * rendering/RenderBlock.cpp: 19056 (WebCore::RenderBlock::isSelectionRoot): 19057 (WebCore::RenderBlock::logicalLeftSelectionOffset): 19058 (WebCore::RenderBlock::logicalRightSelectionOffset): 19059 * rendering/RenderBlock.h: 19060 19061 2010-11-03 Pavel Feldman <pfeldman (a] chromium.org> 19062 19063 Reviewed by Timothy Hatcher. 19064 19065 Web Inspector: main resource is being re-assigned upon iframe's commit load. 19066 https://bugs.webkit.org/show_bug.cgi?id=48940 19067 19068 * inspector/front-end/ResourceManager.js: 19069 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 19070 (WebInspector.ResourceManager.prototype.didCommitLoadForFrame): 19071 19072 2010-11-03 Nate Chapin <japhet (a] chromium.org> 19073 19074 Reviewed by Alexey Proskuryakov. 19075 19076 Wait to stop all loads for a frame being detached until after its 19077 chidlren have been detached. This ensures that any loads started 19078 by a child's unload event handler will be properly cancelled. 19079 https://bugs.webkit.org/show_bug.cgi?id=46579 19080 19081 Tests: fast/loader/ping-error.html 19082 http/tests/navigation/image-load-in-subframe-unload-handler.html 19083 19084 * loader/FrameLoader.cpp: 19085 (WebCore::FrameLoader::detachFromParent): 19086 19087 2010-11-03 Pavel Feldman <pfeldman (a] chromium.org> 19088 19089 Reviewed by Simon Fraser. 19090 19091 Web Inspector: show proper image size for cached resources. 19092 https://bugs.webkit.org/show_bug.cgi?id=48915 19093 19094 * inspector/front-end/ExtensionServer.js: 19095 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 19096 * inspector/front-end/ImageView.js: 19097 (WebInspector.ImageView.prototype.contentTabSelected.onImageLoad): 19098 (WebInspector.ImageView.prototype.contentTabSelected): 19099 (WebInspector.ImageView.prototype._base64ToSize): 19100 * inspector/front-end/NetworkPanel.js: 19101 (WebInspector.NetworkDataGridNode.prototype._refreshNameCell): 19102 * inspector/front-end/Resource.js: 19103 (WebInspector.Resource.prototype.set finished): 19104 (WebInspector.Resource.prototype.get content): 19105 (WebInspector.Resource.prototype.requestContent): 19106 (WebInspector.Resource.prototype._innerRequestContent): 19107 * inspector/front-end/ResourceManager.js: 19108 (WebInspector.ResourceManager.requestContent): 19109 * inspector/front-end/SourceView.js: 19110 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): 19111 19112 2010-11-03 Noam Rosenthal <noam.rosenthal (a] nokia.com> 19113 19114 Reviewed by Kenneth Rohde Christiansen. 19115 19116 [Qt] GraphicsLayer: support tiling 19117 https://bugs.webkit.org/show_bug.cgi?id=39691 19118 19119 Add support for TiledBackingStore in GraphicsLayerQt, when a layer is too large. 19120 19121 No new tests. Tests in LayoutTests/compositing/tiling now work with OpenGL enabled. 19122 19123 * platform/graphics/qt/GraphicsLayerQt.cpp: 19124 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl): 19125 (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl): 19126 (WebCore::GraphicsLayerQtImpl::recache): 19127 (WebCore::GraphicsLayerQtImpl::paint): 19128 (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaintBegin): 19129 (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaint): 19130 (WebCore::GraphicsLayerQtImpl::tiledBackingStorePaintEnd): 19131 (WebCore::GraphicsLayerQtImpl::tiledBackingStoreContentsRect): 19132 (WebCore::GraphicsLayerQtImpl::tiledBackingStoreBackgroundColor): 19133 (WebCore::GraphicsLayerQtImpl::tiledBackingStoreVisibleRect): 19134 19135 2010-11-03 Tony Chang <tony (a] chromium.org> 19136 19137 Reviewed by Ojan Vafai. 19138 19139 Undo r54932 which inappropriately adjusts font sizes on zoomed pages 19140 https://bugs.webkit.org/show_bug.cgi?id=48890 19141 19142 Test: editing/inserting/page-zoom-font-size.html 19143 19144 * editing/ReplaceSelectionCommand.cpp: 19145 (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance): 19146 19147 2010-11-03 Dan Bernstein <mitz (a] apple.com> 19148 19149 Reviewed by Dave Hyatt. 19150 19151 Make collapsed borders in tables work with different block flows 19152 https://bugs.webkit.org/show_bug.cgi?id=46191 19153 19154 No new tests since tables dont support different block flows yet. 19155 19156 This change still doesnt support cells whose block flow differs from the tables. 19157 19158 * rendering/AutoTableLayout.cpp: 19159 (WebCore::AutoTableLayout::recalcColumn): Updated for the renaming of styleOrColWidth(). 19160 (WebCore::AutoTableLayout::calcEffectiveWidth): Ditto. 19161 * rendering/FixedTableLayout.cpp: 19162 (WebCore::FixedTableLayout::calcWidthArray): Ditto. 19163 * rendering/RenderBlock.cpp: 19164 (WebCore::RenderBlock::computePreferredLogicalWidths): Ditto. 19165 * rendering/RenderTableCell.cpp: 19166 (WebCore::RenderTableCell::styleOrColLogicalWidth): Renamed styleOrColWidth() to this and 19167 changed to use logical widths. 19168 (WebCore::RenderTableCell::computePreferredLogicalWidths): Updated for the above rename. 19169 (WebCore::RenderTableCell::updateLogicalWidth): Renamed updateWidth() to this and changed 19170 to set the logical width. 19171 (WebCore::RenderTableCell::collapsedStartBorder): Changed collapsedLeftBorder() into this. 19172 Note that start here will refer to the tables block flow, not the cells, once we allow 19173 the two to differ. 19174 (WebCore::RenderTableCell::collapsedEndBorder): Similar. 19175 (WebCore::RenderTableCell::collapsedBeforeBorder): Similar. 19176 (WebCore::RenderTableCell::collapsedAfterBorder): Similar. 19177 (WebCore::RenderTableCell::collapsedLeftBorder): Resolves left to a logical side using 19178 the tables block flow. 19179 (WebCore::RenderTableCell::collapsedRightBorder): Similar. 19180 (WebCore::RenderTableCell::collapsedTopBorder): Similar. 19181 (WebCore::RenderTableCell::collapsedBottomBorder): Similar. 19182 (WebCore::RenderTableCell::borderStart): Use borderHalfStart(). 19183 (WebCore::RenderTableCell::borderEnd): Similar. 19184 (WebCore::RenderTableCell::borderBefore): Similar. 19185 (WebCore::RenderTableCell::borderAfter): Similar. 19186 (WebCore::RenderTableCell::borderHalfLeft): Resolves left to a logical side using the 19187 tables block flow. 19188 (WebCore::RenderTableCell::borderHalfRight): Similar. 19189 (WebCore::RenderTableCell::borderHalfTop): Similar. 19190 (WebCore::RenderTableCell::borderHalfBottom): Similar. 19191 (WebCore::RenderTableCell::borderHalfStart): Added. Uses collapsedStartBorder(). Splits odd 19192 widths based on physical side. 19193 (WebCore::RenderTableCell::borderHalfEnd): Similar. 19194 (WebCore::RenderTableCell::borderHalfBefore): Similar. 19195 (WebCore::RenderTableCell::borderHalfAfter): Similar. 19196 (WebCore::RenderTableCell::collectBorderStyles): Use logical methods. 19197 (WebCore::RenderTableCell::paintCollapsedBorder): Updated. 19198 * rendering/RenderTableCell.h: 19199 * rendering/RenderTableSection.cpp: 19200 (WebCore::RenderTableSection::setCellWidths): Updated for the renaming of updateWidth(). 19201 * rendering/style/RenderStyle.cpp: 19202 (WebCore::RenderStyle::borderBefore): Added. 19203 (WebCore::RenderStyle::borderAfter): Added. 19204 (WebCore::RenderStyle::borderStart): Added. 19205 (WebCore::RenderStyle::borderEnd): Adeed. 19206 * rendering/style/RenderStyle.h: 19207 19208 2010-11-03 Dimitri Glazkov <dglazkov (a] chromium.org> 19209 19210 Fix Win build correctly after r71244 and r71248 19211 19212 * WebCore.vcproj/WebCore.vcproj: Added XML gobbledygook back. 19213 * dom/DOMAllInOne.cpp: Added files to build into a combined file. 19214 19215 2010-11-03 Dimitri Glazkov <dglazkov (a] chromium.org> 19216 19217 Fix Qt, Win builds after r71244. 19218 19219 * WebCore.vcproj/WebCore.vcproj: Removed XML gobbledygook that prevents files from building. 19220 * dom/Text.cpp: 19221 (WebCore::Text::createRenderer): Moved parentOrHost inside ENABLE(SVG) guard. 19222 19223 2010-11-03 David Hyatt <hyatt (a] apple.com> 19224 19225 Reviewed by Dan Bernstein. 19226 19227 https://bugs.webkit.org/show_bug.cgi?id=48928 19228 19229 Rename all the selection gap functions to not be directionally specific. Left and Right turn into LogicalLeft and 19230 LogicalRight. Horizontal becomes Line. Vertical becomes Block. 19231 19232 * rendering/RenderBlock.cpp: 19233 (WebCore::RenderBlock::selectionGapRectsForRepaint): 19234 (WebCore::RenderBlock::paintSelection): 19235 (WebCore::RenderBlock::fillSelectionGaps): 19236 (WebCore::RenderBlock::fillInlineSelectionGaps): 19237 (WebCore::RenderBlock::fillBlockSelectionGaps): 19238 (WebCore::RenderBlock::fillLineSelectionGap): 19239 (WebCore::RenderBlock::fillBlockSelectionGap): 19240 (WebCore::RenderBlock::fillLogicalLeftSelectionGap): 19241 (WebCore::RenderBlock::fillLogicalRightSelectionGap): 19242 (WebCore::RenderBlock::getSelectionGapInfo): 19243 (WebCore::RenderBlock::logicalLeftSelectionOffset): 19244 (WebCore::RenderBlock::logicalRightSelectionOffset): 19245 * rendering/RenderBlock.h: 19246 * rendering/RootInlineBox.cpp: 19247 (WebCore::RootInlineBox::fillLineSelectionGap): 19248 19249 2010-11-03 Dimitri Glazkov <dglazkov (a] chromium.org> 19250 19251 Reviewed by Darin Adler. 19252 19253 Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch. 19254 https://bugs.webkit.org/show_bug.cgi?id=46015 19255 19256 This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically 19257 for DOMWindow), an abstraction that carries information around dispatching an event for any given Node. 19258 19259 This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to 19260 appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside. 19261 19262 * Android.mk: Added EventContext, WindowEventContext files. 19263 * CMakeLists.txt: Ditto. 19264 * GNUmakefile.am: Ditto. 19265 * WebCore.gypi: Ditto. 19266 * WebCore.pro: Ditto. 19267 * WebCore.xcodeproj/project.pbxproj: Ditto. 19268 * WebCore.vcproj/WebCore.vcproj: Ditto. 19269 * dom/ContainerNode.cpp: 19270 (WebCore::notifyChildInserted): Changed to be shadow DOM-aware. 19271 * dom/EventContext.cpp: Added. 19272 * dom/EventContext.h: Added. 19273 * dom/Node.cpp: 19274 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware. 19275 (WebCore::Node::createRendererIfNeeded): Ditto. 19276 (WebCore::Node::parentOrHostNode): Added new helper method. 19277 (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware. 19278 (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one. 19279 (WebCore::Node::eventAncestors): Refactored to collect a vector of EventContexts. 19280 (WebCore::Node::topEventContext): Added. 19281 (WebCore::eventHasListeners): Changed to use EventContexts. 19282 (WebCore::Node::dispatchGenericEvent): Ditto. 19283 * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl, 19284 and changed signature of eventAncestors to use EventContexts. 19285 * dom/Text.cpp: 19286 (WebCore::Text::createRenderer): Changed to be shadow DOM-aware. 19287 * inspector/InspectorDOMAgent.cpp: 19288 (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts. 19289 * page/EventHandler.cpp: 19290 (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary. 19291 * rendering/ShadowElement.h: Made m_shadowParent a RefPtr to avoid stale references when parent 19292 is deleted. 19293 * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed. 19294 * svg/SVGElement.h: Ditto. 19295 * dom/WindowEventContext.cpp: Added. 19296 * dom/WindowEventContext.h: Added. 19297 19298 2010-11-02 Mikhail Naganov <mnaganov (a] chromium.org> 19299 19300 Reviewed by Pavel Feldman. 19301 19302 Web Inspector: Fix console messages about starting and finishing profiling. 19303 19304 https://bugs.webkit.org/show_bug.cgi?id=48825 19305 19306 * inspector/InspectorProfilerAgent.cpp: 19307 (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole): 19308 * inspector/front-end/ProfilesPanel.js: 19309 (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink): 19310 19311 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19312 19313 Reviewed by Andreas Kling. 19314 19315 chrome.dll!WebCore::SVGLength::SVGLength ... 19316 https://bugs.webkit.org/show_bug.cgi?id=48831 19317 19318 Test: svg/dom/baseVal-animVal-crash.html 19319 19320 * svg/properties/SVGListPropertyTearOff.h: 19321 (WebCore::SVGListPropertyTearOff::initialize): Renamed removeItemFromListIfNeeded to processIncomingListItem, to reflect its new job. 19322 (WebCore::SVGListPropertyTearOff::insertItemBefore): Ditto. 19323 (WebCore::SVGListPropertyTearOff::replaceItem): Ditto. 19324 (WebCore::SVGListPropertyTearOff::appendItem): Ditto. 19325 (WebCore::SVGListPropertyTearOff::processIncomingListItem): Copy incoming item, if necessary, see inline comments. 19326 * svg/properties/SVGPropertyTearOff.h: 19327 (WebCore::SVGPropertyTearOff::detachWrapper): Remove association with SVGAnimatedProperty, when wrapper is detached. 19328 19329 2010-11-03 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 19330 19331 Reviewed by Andreas Kling. 19332 19333 Make it possible to delegate scrolling to the UI 19334 https://bugs.webkit.org/show_bug.cgi?id=48907 19335 19336 Add a WebCore setting for delegating scrolling to the actual 19337 WebKit view, which means that setScrollPosition will call 19338 scrollContents directly without going though the scrollbar 19339 code. 19340 19341 * page/FrameView.cpp: 19342 (WebCore::FrameView::delegatesScrolling): 19343 * page/FrameView.h: 19344 * page/Settings.cpp: 19345 (WebCore::Settings::Settings): 19346 (WebCore::Settings::setShouldDelegateScrolling): 19347 * page/Settings.h: 19348 (WebCore::Settings::shouldDelegateScrolling): 19349 * platform/ScrollView.cpp: 19350 (WebCore::ScrollView::setScrollPosition): 19351 * platform/ScrollView.h: 19352 (WebCore::ScrollView::delegatesScrolling): 19353 19354 2010-11-03 Patrick Gansterer <paroga (a] webkit.org> 19355 19356 Reviewed by Adam Roben. 19357 19358 [WINCE] Add SharedBitmap 19359 https://bugs.webkit.org/show_bug.cgi?id=28272 19360 19361 SharedBitmap is a helper class used as NativeImagePtr for WinCE. 19362 It's wide used by WinCE graphics files as a replacement of HBITMAP. 19363 19364 Originally written by Yong Li <yong.li (a] torchmobile.com>. 19365 19366 * platform/graphics/wince/GraphicsContextWinCE.cpp: 19367 (WebCore::TransparentLayerDC::TransparentLayerDC): 19368 (WebCore::TransparentLayerDC::~TransparentLayerDC): 19369 (WebCore::ScopeDCProvider::ScopeDCProvider): 19370 (WebCore::ScopeDCProvider::~ScopeDCProvider): 19371 (WebCore::GraphicsContext::drawText): 19372 * platform/graphics/wince/SharedBitmap.cpp: Added. 19373 (WebCore::SharedBitmap::create): 19374 (WebCore::SharedBitmap::SharedBitmap): 19375 (WebCore::SharedBitmap::~SharedBitmap): 19376 (WebCore::SharedBitmap::resetPixels): 19377 (WebCore::convert32To16): 19378 (WebCore::SharedBitmap::to16bit): 19379 (WebCore::SharedBitmap::freeMemory): 19380 (WebCore::SharedBitmap::createHandle): 19381 (WebCore::SharedBitmap::ensureHandle): 19382 (WebCore::SharedBitmap::draw): 19383 (WebCore::SharedBitmap::clipBitmap): 19384 (WebCore::drawPatternSimple): 19385 (WebCore::normalizePhase): 19386 (WebCore::SharedBitmap::drawPattern): 19387 (WebCore::SharedBitmap::DCProvider::getDC): 19388 (WebCore::SharedBitmap::DCProvider::releaseDC): 19389 (WebCore::SharedBitmap::clearPixels): 19390 * platform/graphics/wince/SharedBitmap.h: Added. 19391 (WebCore::DCProvider::getDC): 19392 (WebCore::DCProvider::releaseDC): 19393 (WebCore::DCProvider::DCHolder::DCHolder): 19394 (WebCore::DCProvider::DCHolder::~DCHolder): 19395 (WebCore::DCProvider::DCHolder::set): 19396 (WebCore::DCProvider::DCHolder::get): 19397 (WebCore::DCProvider::DCHolder::clearInternal): 19398 (WebCore::DCProvider::DCHolder::setInternal): 19399 19400 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19401 19402 Reviewed by Dirk Schulze. 19403 19404 chrome.dll!WebCore::SVGListPropertyTearOff<...>::getItem ReadAV@NULL (578c0f7f21ca517ba29a4eafb7099c1b) 19405 https://bugs.webkit.org/show_bug.cgi?id=48829 19406 19407 Share SVGPropertyTearOff wrapper cache between SVGAnimatedListPropertyTearOff::baseVal/animVal. 19408 When modifying the list through baseVal, and then grabbing the animVal list an assertion was fired, 19409 as the wrapper cache was out of sync with the underlying SVG*List vector. 19410 19411 Test: svg/dom/baseVal-animVal-list-crash.html 19412 19413 * svg/properties/SVGAnimatedListPropertyTearOff.h: 19414 (WebCore::SVGAnimatedListPropertyTearOff::baseVal): 19415 (WebCore::SVGAnimatedListPropertyTearOff::animVal): 19416 (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList): 19417 (WebCore::SVGAnimatedListPropertyTearOff::detachListWrappers): 19418 (WebCore::SVGAnimatedListPropertyTearOff::values): 19419 (WebCore::SVGAnimatedListPropertyTearOff::wrappers): 19420 (WebCore::SVGAnimatedListPropertyTearOff::create): 19421 (WebCore::SVGAnimatedListPropertyTearOff::SVGAnimatedListPropertyTearOff): 19422 * svg/properties/SVGListPropertyTearOff.h: 19423 (WebCore::SVGListPropertyTearOff::create): 19424 (WebCore::SVGListPropertyTearOff::removeItemFromList): 19425 (WebCore::SVGListPropertyTearOff::clear): 19426 (WebCore::SVGListPropertyTearOff::numberOfItems): 19427 (WebCore::SVGListPropertyTearOff::initialize): 19428 (WebCore::SVGListPropertyTearOff::getItem): 19429 (WebCore::SVGListPropertyTearOff::insertItemBefore): 19430 (WebCore::SVGListPropertyTearOff::replaceItem): 19431 (WebCore::SVGListPropertyTearOff::removeItem): 19432 (WebCore::SVGListPropertyTearOff::appendItem): 19433 (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff): 19434 (WebCore::SVGListPropertyTearOff::commitChange): 19435 19436 2010-11-02 Ilya Tikhonovsky <loislo (a] chromium.org> 19437 19438 Reviewed by Pavel Feldman. 19439 19440 Web Inspector: Remove obsolete code. 19441 It is not required to push onload and DOMContentLoaded events times to the fresh instance of Inspector. 19442 Network Panel is showing the markers only after reloading the inspected page. 19443 https://bugs.webkit.org/show_bug.cgi?id=48854 19444 19445 * inspector/InspectorController.cpp: 19446 (WebCore::InspectorController::InspectorController): 19447 (WebCore::InspectorController::populateScriptObjects): 19448 (WebCore::InspectorController::mainResourceFiredDOMContentEvent): 19449 (WebCore::InspectorController::mainResourceFiredLoadEvent): 19450 * inspector/InspectorController.h: 19451 19452 2010-11-03 Pavel Feldman <pfeldman (a] chromium.org> 19453 19454 Reviewed by Jeremy Orlow. 19455 19456 Web Inspector: brush up breakpoints UI and UX. 19457 https://bugs.webkit.org/show_bug.cgi?id=48901 19458 19459 * inspector/front-end/BreakpointManager.js: 19460 (WebInspector.DOMBreakpoint.prototype.populateLabelElement): 19461 (WebInspector.XHRBreakpoint.prototype.populateLabelElement): 19462 * inspector/front-end/BreakpointsSidebarPane.js: 19463 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem): 19464 (WebInspector.XHRBreakpointsSidebarPane.prototype.addBreakpointItem): 19465 (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog): 19466 (WebInspector.BreakpointItem): 19467 * inspector/front-end/ElementsTreeOutline.js: 19468 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction): 19469 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 19470 * inspector/front-end/PropertiesSection.js: 19471 (WebInspector.PropertiesSection): 19472 * inspector/front-end/inspector.css: 19473 (.monospace): 19474 (body.platform-mac.platform-mac-snowleopard .source-code): 19475 (body.platform-windows .monospace, body.platform-windows .source-code): 19476 (body.platform-linux .monospace, body.platform-linux .source-code): 19477 (.source-code): 19478 (.section .header): 19479 (.section .header::before): 19480 (.section .header .title, .event-bar .header .title): 19481 (.section .header .subtitle, .event-bar .header .subtitle): 19482 (.section.expanded .properties, .event-bar.expanded .event-properties): 19483 (.event-listener-breakpoints .event-category): 19484 (.event-listener-breakpoints.properties-tree .children li): 19485 (.event-listener-breakpoints .checkbox-elem): 19486 (.event-bar): 19487 (.event-bars .event-bar .header .title): 19488 (.event-bars .event-bar .header::before): 19489 (.pane > .body .info): 19490 (.pane > .body .placard + .info): 19491 (ol.breakpoint-list): 19492 (.breakpoint-list li): 19493 (.pane .breakpoint-hit): 19494 (.cursor-pointer): 19495 (.cursor-auto): 19496 19497 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19498 19499 Not reviewed. 19500 19501 Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept 19502 https://bugs.webkit.org/show_bug.cgi?id=48898 19503 19504 Fix Chromium/V8 build for real, verified using a local ToT Chromium build. 19505 19506 * bindings/scripts/CodeGeneratorV8.pm: 19507 19508 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19509 19510 Not reviewed. 19511 19512 Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept 19513 https://bugs.webkit.org/show_bug.cgi?id=48898 19514 19515 Next attempt to fix the Chromium/V8 builds - a class forward in the headers was still missing. 19516 19517 * bindings/scripts/CodeGeneratorV8.pm: Add SVGStringListPropertyTearOff in the V8SVGStringList header. 19518 19519 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19520 19521 Not reviewed. 19522 19523 Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept 19524 https://bugs.webkit.org/show_bug.cgi?id=48898 19525 19526 Attempt to fix the Chromium/V8 builds. 19527 19528 * bindings/scripts/CodeGeneratorV8.pm: Add missing "SVGStringListPropertyTearOff.h" include, also replaces some commas by semicolons (no idea why it worked before, Perl is not strict...) 19529 19530 2010-11-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 19531 19532 Reviewed by Dirk Schulze. 19533 19534 Convert SVGAnimatedString/SVGStringList to the new SVG*PropertyTearOff concept 19535 https://bugs.webkit.org/show_bug.cgi?id=48898 19536 19537 Convert SVGAnimatedString/SVGStringList to the new svg animated type concept. 19538 SVGStringList is special compared to all other SVG*Lists, as it returns non-live elements. 19539 That means myStringList.getItem(0) = 'foobar' doesn't take effect. 19540 19541 When appending an item to a SVGStringList, that has been taken from another list, it's not removed from the list origin. 19542 That demanded a new SVGStringListPropertyTearOff which does just that. 19543 19544 Tests: svg/W3C-SVG-1.1-SE/types-dom-06-f.svg 19545 svg/dom/SVGStringList.html 19546 19547 * GNUmakefile.am: Add SVGAnimatedString.h / SVGStringListPropertyTearOff.h to build. 19548 * WebCore.gypi: Ditto. 19549 * WebCore.pro: Ditto. 19550 * WebCore.vcproj/WebCore.vcproj: Ditto. 19551 * WebCore.xcodeproj/project.pbxproj: Ditto. 19552 * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedString as new style svg animated type. Map SVGStringList to SVGStringListPropertyTearOff. 19553 * bindings/scripts/CodeGeneratorJS.pm: Handle SVGStringListPropertyTearOff in GetSVGPropertyTypes. 19554 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 19555 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 19556 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedString handling. 19557 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 19558 * svg/SVGAElement.cpp: Renamed target to svgTarget() to avoid clashes with Element::target(), adjust the bindings to call svgTarget() instead of target(), when processing SVGAElement. 19559 (WebCore::SVGAElement::parseMappedAttribute): 19560 (WebCore::SVGAElement::synchronizeProperty): 19561 * svg/SVGAElement.h: 19562 * svg/SVGAltGlyphElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/ 19563 * svg/SVGAnimatedString.h: Added. 19564 * svg/SVGCursorElement.h: Ditto. 19565 * svg/SVGFEBlendElement.h: Ditto. 19566 * svg/SVGFEColorMatrixElement.h: Ditto. 19567 * svg/SVGFEComponentTransferElement.h: Ditto. 19568 * svg/SVGFECompositeElement.h: Ditto. 19569 * svg/SVGFEConvolveMatrixElement.h: Ditto. 19570 * svg/SVGFEDiffuseLightingElement.h: Ditto. 19571 * svg/SVGFEDisplacementMapElement.h: Ditto. 19572 * svg/SVGFEGaussianBlurElement.h: Ditto. 19573 * svg/SVGFEImageElement.h: Ditto. 19574 * svg/SVGFEMergeNodeElement.h: Ditto. 19575 * svg/SVGFEMorphologyElement.h: Ditto. 19576 * svg/SVGFEOffsetElement.h: Ditto. 19577 * svg/SVGFESpecularLightingElement.h: Ditto. 19578 * svg/SVGFETileElement.h: Ditto. 19579 * svg/SVGFilterElement.h: Ditto. 19580 * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto. 19581 * svg/SVGForeignObjectElement.h: Ditto. 19582 * svg/SVGGradientElement.h: Ditto. 19583 * svg/SVGImageElement.h: Ditto. 19584 * svg/SVGLengthList.idl: Remove leftover SVGListProperty marker. 19585 * svg/SVGMPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/ 19586 * svg/SVGPatternElement.h: Ditto. 19587 * svg/SVGScriptElement.h: Ditto. 19588 * svg/SVGStringList.cpp: Make SVGStringList a plain Vector<String>. 19589 (WebCore::SVGStringList::commitChange): React to SVGStringList changes. 19590 (WebCore::SVGStringList::reset): 19591 (WebCore::SVGStringList::parse): 19592 * svg/SVGStringList.h: 19593 (WebCore::SVGStringList::SVGStringList): 19594 * svg/SVGStyledElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/ 19595 * svg/SVGTRefElement.h: Ditto. 19596 * svg/SVGTests.cpp: Adapt to SVGStringList API changes. 19597 (WebCore::SVGTests::SVGTests): 19598 (WebCore::SVGTests::hasExtension): 19599 (WebCore::SVGTests::isValid): 19600 (WebCore::SVGTests::parseMappedAttribute): 19601 (WebCore::SVGTests::isKnownAttribute): 19602 * svg/SVGTests.h: Ditto. 19603 (WebCore::SVGTests::requiredFeatures): 19604 (WebCore::SVGTests::requiredExtensions): 19605 (WebCore::SVGTests::systemLanguage): 19606 * svg/SVGTextPathElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/ 19607 * svg/SVGURIReference.h: Adapt to SVGStringList API changes. 19608 (WebCore::SVGURIReference::~SVGURIReference): 19609 * svg/SVGUseElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARED_ANIMATED_STATIC_PROPERTY_NEW/ 19610 * svg/SVGViewElement.cpp: Adapt to SVGStringList API changes. 19611 (WebCore::SVGViewElement::SVGViewElement): 19612 (WebCore::SVGViewElement::parseMappedAttribute): 19613 * svg/SVGViewElement.h: Ditto. 19614 (WebCore::SVGViewElement::viewTarget): 19615 * svg/properties/SVGAnimatedPropertyMacros.h: Moved GetOwnerElementForType heleprs from SVGAnimatedPropertySynchronizer into this file. 19616 * svg/properties/SVGAnimatedPropertySynchronizer.h: 19617 * svg/properties/SVGPropertyTraits.h: Handle SVGStringList. 19618 * svg/properties/SVGStringListPropertyTearOff.h: Added. This is a simplified version of SVGListPropertyTearOff, tied to SVGStringList and its special demands. 19619 (WebCore::SVGStringListPropertyTearOff::create): 19620 (WebCore::SVGStringListPropertyTearOff::clear): 19621 (WebCore::SVGStringListPropertyTearOff::numberOfItems): 19622 (WebCore::SVGStringListPropertyTearOff::initialize): 19623 (WebCore::SVGStringListPropertyTearOff::getItem): 19624 (WebCore::SVGStringListPropertyTearOff::insertItemBefore): 19625 (WebCore::SVGStringListPropertyTearOff::replaceItem): 19626 (WebCore::SVGStringListPropertyTearOff::removeItem): 19627 (WebCore::SVGStringListPropertyTearOff::appendItem): 19628 (WebCore::SVGStringListPropertyTearOff::SVGStringListPropertyTearOff): 19629 19630 2010-11-03 Zoltan Herczeg <zherczeg (a] webkit.org> 19631 19632 Reviewed by Dirk Schulze. 19633 19634 SVG FELighting performance issues 19635 https://bugs.webkit.org/show_bug.cgi?id=48212 19636 19637 This patch speeds-up FELighting filter painting by 40% 19638 It reduces the number of floating point operations and 19639 empolys faster pixel manipulation (both for read and 19640 write). Furthermore the length() member of FloatPoint3D 19641 is made inline to speed up vector length calculations. 19642 19643 The lighting filter pixels tests are cover this patch. 19644 19645 * platform/graphics/FloatPoint3D.cpp: 19646 * platform/graphics/FloatPoint3D.h: 19647 (WebCore::FloatPoint3D::length): 19648 * platform/graphics/filters/FELighting.cpp: 19649 (WebCore::FELighting::LightingData::topLeft): 19650 (WebCore::FELighting::LightingData::topRow): 19651 (WebCore::FELighting::LightingData::topRight): 19652 (WebCore::FELighting::LightingData::leftColumn): 19653 (WebCore::FELighting::LightingData::interior): 19654 (WebCore::FELighting::LightingData::rightColumn): 19655 (WebCore::FELighting::LightingData::bottomLeft): 19656 (WebCore::FELighting::LightingData::bottomRow): 19657 (WebCore::FELighting::LightingData::bottomRight): 19658 (WebCore::FELighting::inlineSetPixel): 19659 (WebCore::FELighting::setPixel): 19660 (WebCore::FELighting::drawLighting): 19661 (WebCore::FELighting::apply): 19662 * platform/graphics/filters/FELighting.h: 19663 * platform/graphics/filters/LightSource.cpp: 19664 (WebCore::PointLightSource::updatePaintingData): 19665 (WebCore::SpotLightSource::updatePaintingData): 19666 (WebCore::DistantLightSource::initPaintingData): 19667 * platform/graphics/filters/LightSource.h: 19668 19669 2010-11-03 Daniel Bates <dbates (a] rim.com> 19670 19671 Reviewed by Adam Barth. 19672 19673 For unnamed frames, window.name returns a generated name 19674 https://bugs.webkit.org/show_bug.cgi?id=6751 19675 19676 Part 2 of 2. 19677 19678 Fixes an issue where the window.name of an unnamed frame returns 19679 a unique generated name that is used internally to identify the 19680 frame. Instead, we should return an empty string as implied by 19681 section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names). 19682 This section describes that a browsing context can have no name or be 19683 the empty string. 19684 19685 * html/HTMLFrameElementBase.cpp: 19686 (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty 19687 frame name since this is valid as per the HTML5 spec. 19688 (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName() 19689 since the loader code no longer depends on the frame name being unique. 19690 * page/DOMWindow.cpp: 19691 (WebCore::DOMWindow::name): Modified to call FrameTree::name(). 19692 * page/FrameTree.cpp: 19693 (WebCore::FrameTree::setName): 19694 (WebCore::FrameTree::clearName): 19695 * page/FrameTree.h: 19696 (WebCore::FrameTree::name): Re-added; returns the DOM-specified name of the 19697 frame. Previously, this method returned the internal frame name. 19698 19699 2010-11-03 takano takumi <takano1 (a] asia.apple.com> 19700 19701 Reviewed by Dan Bernstein. 19702 19703 Add text-combine property to our property list. Reflect the setting to a RenderStyle object. 19704 https://bugs.webkit.org/show_bug.cgi?id=48608 19705 19706 Test: fast/text/international/text-combine-parser-test.html 19707 19708 * css/CSSComputedStyleDeclaration.cpp: Added text-combine property support. 19709 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 19710 * css/CSSParser.cpp: Added text-combine property support. 19711 (WebCore::CSSParser::parseValue): 19712 * css/CSSPrimitiveValueMappings.h: Added a primitive value mapper for text-combine 19713 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 19714 (WebCore::CSSPrimitiveValue::operator TextCombine): 19715 * css/CSSPropertyNames.in: Added "text-combine". 19716 * css/CSSStyleSelector.cpp: Added text-combine property support. 19717 (WebCore::CSSStyleSelector::applyProperty): 19718 * css/CSSValueKeywords.in: Added values for text-combine. 19719 * rendering/style/RenderStyle.cpp: 19720 (WebCore::RenderStyle::diff): Added check of text-combine value. 19721 * rendering/style/RenderStyle.h: Added accessors for text-combine. 19722 (WebCore::InheritedFlags::textCombine): 19723 (WebCore::InheritedFlags::setTextCombine): 19724 (WebCore::InheritedFlags::initialTextCombine): 19725 * rendering/style/RenderStyleConstants.h: 19726 * rendering/style/StyleRareNonInheritedData.cpp: Added text-combine property support. 19727 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): 19728 (WebCore::StyleRareNonInheritedData::operator==): 19729 * rendering/style/StyleRareNonInheritedData.h: Added text-combine entry for RenderStyle object here. 19730 19731 2010-11-02 Daniel Bates <dbates (a] rim.com> 19732 19733 Reviewed by Adam Barth. 19734 19735 For unnamed frames, window.name returns a generated name 19736 https://bugs.webkit.org/show_bug.cgi?id=6751 19737 19738 Part 1 of 2. 19739 19740 Towards fixing bug #6751, rename FrameTree::name() to FrameTree::uniqueName(), 19741 which is more descriptive of its purpose. A follow up patch will re-add 19742 FrameTree::name() which will return the DOM-specified name of the frame. 19743 19744 We will also take this opportunity to verify that we have found all the 19745 call sites of FrameTree::name(). 19746 19747 * loader/DocumentLoader.cpp: 19748 (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName(). 19749 * loader/FrameLoader.cpp: 19750 (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto. 19751 (WebCore::FrameLoader::commitProvisionalLoad): Ditto. 19752 * loader/HistoryController.cpp: 19753 (WebCore::HistoryController::saveDocumentState): Ditto. 19754 (WebCore::HistoryController::restoreDocumentState): Ditto. 19755 (WebCore::HistoryController::createItem): Ditto. 19756 (WebCore::HistoryController::currentFramesMatchItem): Ditto. 19757 * loader/ProgressTracker.cpp: 19758 (WebCore::ProgressTracker::progressStarted): Ditto. 19759 (WebCore::ProgressTracker::progressCompleted): Ditto. 19760 * loader/archive/cf/LegacyWebArchive.cpp: 19761 (WebCore::LegacyWebArchive::create): Ditto. 19762 * page/DOMWindow.cpp: 19763 (WebCore::DOMWindow::name): Ditto. 19764 * page/FrameTree.cpp: 19765 (WebCore::FrameTree::setName): Ditto. 19766 (WebCore::FrameTree::clearName): Ditto. 19767 (WebCore::FrameTree::uniqueChildName): Ditto. 19768 (WebCore::FrameTree::child): Ditto. 19769 (WebCore::FrameTree::find): Ditto. 19770 * page/FrameTree.h: 19771 (WebCore::FrameTree::uniqueName): Renamed (formerly FrameTree::name()). 19772 19773 2010-11-02 Chris Rogers <crogers (a] google.com> 19774 19775 Reviewed by James Robinson. 19776 19777 Add AudioProcessingEvent files 19778 https://bugs.webkit.org/show_bug.cgi?id=48884 19779 19780 No new tests since audio API is not yet implemented. 19781 19782 * webaudio/AudioProcessingEvent.cpp: Added. 19783 (WebCore::AudioProcessingEvent::create): 19784 (WebCore::AudioProcessingEvent::AudioProcessingEvent): 19785 (WebCore::AudioProcessingEvent::~AudioProcessingEvent): 19786 (WebCore::AudioProcessingEvent::isAudioProcessingEvent): 19787 * webaudio/AudioProcessingEvent.h: Added. 19788 (WebCore::AudioProcessingEvent::inputBuffer): 19789 (WebCore::AudioProcessingEvent::outputBuffer): 19790 * webaudio/AudioProcessingEvent.idl: Added. 19791 19792 2010-11-02 Al Patrick <apatrick (a] chromium.org> 19793 19794 Reviewed by Kenneth Russell. 19795 19796 Added PluginLayerChromium, which composites plugin instances that have an associated OpenGL backing texture. 19797 19798 https://bugs.webkit.org/show_bug.cgi?id=48032 19799 19800 * WebCore.gypi: 19801 * loader/SubframeLoader.cpp 19802 (WebCore::SubframeLoader::loadPlugin): 19803 * platform/graphics/chromium/LayerChromium.cpp: 19804 (WebCore::LayerChromium::setNeedsDisplay): 19805 * platform/graphics/chromium/LayerRendererChromium.cpp: 19806 (WebCore::LayerRendererChromium::initializeSharedObjects): 19807 (WebCore::LayerRendererChromium::cleanupSharedObjects): 19808 * platform/graphics/chromium/LayerRendererChromium.h: 19809 (WebCore::LayerRendererChromium::pluginLayerSharedValues): 19810 * platform/graphics/chromium/PluginLayerChromium.cpp: Added. 19811 (WebCore::PluginLayerChromium::SharedValues::SharedValues): 19812 (WebCore::PluginLayerChromium::SharedValues::~SharedValues): 19813 (WebCore::PluginLayerChromium::create): 19814 (WebCore::PluginLayerChromium::PluginLayerChromium): 19815 (WebCore::PluginLayerChromium::updateContents): 19816 (WebCore::PluginLayerChromium::draw): 19817 * platform/graphics/chromium/PluginLayerChromium.h: Added. 19818 (WebCore::PluginLayerChromium::drawsContent): 19819 (WebCore::PluginLayerChromium::setTextureId): 19820 (WebCore::PluginLayerChromium::SharedValues::shaderProgram): 19821 (WebCore::PluginLayerChromium::SharedValues::shaderSamplerLocation): 19822 (WebCore::PluginLayerChromium::SharedValues::shaderMatrixLocation): 19823 (WebCore::PluginLayerChromium::SharedValues::shaderAlphaLocation): 19824 (WebCore::PluginLayerChromium::SharedValues::initialized): 19825 19826 2010-11-02 James Simonsen <simonjam (a] chromium.org> 19827 19828 Reviewed by Adam Barth. 19829 19830 mathml in html sometimes incorrectly parsed 19831 https://bugs.webkit.org/show_bug.cgi?id=48105 19832 19833 * html/parser/HTMLTreeBuilder.cpp: 19834 (WebCore::HTMLTreeBuilder::processEndTag): Fixed to match HTML5 spec. 19835 19836 2010-11-02 Chris Guillory <chris.guillory (a] google.com> 19837 19838 Reviewed by Dmitry Titov. 19839 19840 Null check obj in AXObjectCache::postPlatformNotification. 19841 https://bugs.webkit.org/show_bug.cgi?id=48896 19842 19843 * accessibility/chromium/AXObjectCacheChromium.cpp: 19844 (WebCore::AXObjectCache::postPlatformNotification): 19845 19846 2010-11-02 Kavita Kanetkar <kkanetkar (a] chromium.org> 19847 19848 Reviewed by Dumitru Daniliuc. 19849 19850 [FileSystem] Support not creating directories when queried by inspector. 19851 https://bugs.webkit.org/show_bug.cgi?id=48169 19852 19853 * fileapi/LocalFileSystem.cpp: 19854 (WebCore::openFileSystem): 19855 (WebCore::LocalFileSystem::readFileSystem): 19856 (WebCore::LocalFileSystem::requestFileSystem): 19857 * fileapi/LocalFileSystem.h: 19858 * platform/AsyncFileSystem.cpp: 19859 (WebCore::AsyncFileSystem::openFileSystem): 19860 * platform/AsyncFileSystem.h: 19861 19862 2010-11-02 Chris Rogers <crogers (a] google.com> 19863 19864 Reviewed by Kenneth Russell. 19865 19866 Add AudioBufferSourceNode files 19867 https://bugs.webkit.org/show_bug.cgi?id=48012 19868 19869 No new tests since audio API is not yet implemented. 19870 19871 * webaudio/AudioBufferSourceNode.cpp: Added. 19872 (WebCore::AudioBufferSourceNode::create): 19873 (WebCore::AudioBufferSourceNode::AudioBufferSourceNode): 19874 (WebCore::AudioBufferSourceNode::~AudioBufferSourceNode): 19875 (WebCore::AudioBufferSourceNode::process): 19876 (WebCore::AudioBufferSourceNode::provideInput): 19877 (WebCore::AudioBufferSourceNode::readFromBuffer): 19878 (WebCore::AudioBufferSourceNode::readFromBufferWithGrainEnvelope): 19879 (WebCore::AudioBufferSourceNode::reset): 19880 (WebCore::AudioBufferSourceNode::setBuffer): 19881 (WebCore::AudioBufferSourceNode::numberOfChannels): 19882 (WebCore::AudioBufferSourceNode::noteOn): 19883 (WebCore::AudioBufferSourceNode::noteGrainOn): 19884 (WebCore::AudioBufferSourceNode::noteOff): 19885 (WebCore::AudioBufferSourceNode::totalPitchRate): 19886 * webaudio/AudioBufferSourceNode.h: Added. 19887 (WebCore::AudioBufferSourceNode::buffer): 19888 (WebCore::AudioBufferSourceNode::looping): 19889 (WebCore::AudioBufferSourceNode::setLooping): 19890 (WebCore::AudioBufferSourceNode::gain): 19891 (WebCore::AudioBufferSourceNode::playbackRate): 19892 (WebCore::AudioBufferSourceNode::setPannerNode): 19893 * webaudio/AudioBufferSourceNode.idl: Added. 19894 19895 2010-11-02 Martin Robinson <mrobinson (a] igalia.com> 19896 19897 Reviewed by Adam Barth. 19898 19899 [Cairo] Remove PlatformRefPtrCairo 19900 https://bugs.webkit.org/show_bug.cgi?id=48192 19901 19902 Replace PlatformRefPtrCairo with a RefPtr specialization for Cairo and 19903 Fontconfig types. This is the first step toward removing PlatformRefPtr, 19904 whose job is better handled by RefPtr. 19905 19906 * CMakeListsEfl.txt: Update the sources list to include RefPtrCairo 19907 instead of PlatformRefPtrCairo. 19908 * GNUmakefile.am: Ditto. 19909 * WebCore.vcproj/WebCore.vcproj: Ditto. 19910 * platform/graphics/GraphicsContext.h: Replace PlatformRefPtrCairo with 19911 RefPtrCairo. 19912 * platform/graphics/cairo/CairoUtilities.cpp: Ditto. 19913 (WebCore::drawPatternToCairoContext): Ditto. 19914 * platform/graphics/cairo/FontCacheFreeType.cpp: Ditto. 19915 (WebCore::FontCache::getFontDataForCharacters): Ditto. 19916 (WebCore::FontCache::createFontPlatformData): Ditto. 19917 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Ditto. 19918 (WebCore::FontPlatformData::FontPlatformData): Ditto. 19919 (WebCore::FontPlatformData::initializeWithFontFace): Ditto. 19920 * platform/graphics/cairo/FontPlatformDataFreeType.h: Ditto. 19921 * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto. 19922 * platform/graphics/cairo/ImageCairo.cpp: Ditto. 19923 * platform/graphics/cairo/RefPtrCairo.cpp: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.cpp. 19924 (WTF::refIfNotNull): Added. 19925 (WTF::derefIfNotNull): Added. 19926 * platform/graphics/cairo/RefPtrCairo.h: Renamed from WebCore/platform/graphics/cairo/PlatformRefPtrCairo.h. 19927 * platform/gtk/CursorGtk.cpp: Replace PlatformRefPtrCairo with 19928 RefPtrCairo. 19929 (WebCore::createNamedCursor): Ditto. 19930 * platform/gtk/DragImageGtk.cpp: Ditto. 19931 (WebCore::scaleDragImage): Ditto. 19932 (WebCore::dissolveDragImageToFraction): Ditto. 19933 * plugins/gtk/PluginViewGtk.cpp: Ditto. 19934 (WebCore::PluginView::paint): Ditto. 19935 19936 2010-11-02 Chris Rogers <crogers (a] google.com> 19937 19938 Reviewed by Kenneth Russell. 19939 19940 Simple followup changes to files affected by AudioNodeInput thread safety 19941 https://bugs.webkit.org/show_bug.cgi?id=48661 19942 19943 No new tests since audio API is not yet implemented. 19944 19945 * webaudio/AudioBasicProcessorNode.cpp: 19946 (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput): 19947 * webaudio/AudioChannelSplitter.cpp: 19948 (WebCore::AudioChannelSplitter::process): 19949 * webaudio/AudioDestinationNode.cpp: 19950 (WebCore::AudioDestinationNode::initialize): 19951 (WebCore::AudioDestinationNode::uninitialize): 19952 (WebCore::AudioDestinationNode::provideInput): 19953 * webaudio/AudioGainNode.cpp: 19954 (WebCore::AudioGainNode::checkNumberOfChannelsForInput): 19955 * webaudio/AudioPannerNode.cpp: 19956 (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode): 19957 19958 2010-11-02 Chris Guillory <chris.guillory (a] google.com> 19959 19960 Reviewed by Chris Fleizach. 19961 19962 Chromium: Propagate a document value changed notification on scroll. 19963 https://bugs.webkit.org/show_bug.cgi?id=48817 19964 19965 * accessibility/AccessibilityObject.h: 19966 (WebCore::AccessibilityObject::isAccessibilityScrollbar): 19967 * accessibility/AccessibilityScrollbar.h: 19968 (WebCore::AccessibilityScrollbar::scrollbar): 19969 (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar): 19970 * accessibility/chromium/AXObjectCacheChromium.cpp: 19971 (WebCore::AXObjectCache::postPlatformNotification): 19972 19973 2010-11-02 Chris Rogers <crogers (a] google.com> 19974 19975 Reviewed by Kenneth Russell. 19976 19977 Add ConvolverNode files 19978 https://bugs.webkit.org/show_bug.cgi?id=47941 19979 19980 No new tests since audio API is not yet implemented. 19981 19982 * webaudio/ConvolverNode.cpp: Added. 19983 (WebCore::ConvolverNode::ConvolverNode): 19984 (WebCore::ConvolverNode::~ConvolverNode): 19985 (WebCore::ConvolverNode::process): 19986 (WebCore::ConvolverNode::reset): 19987 (WebCore::ConvolverNode::initialize): 19988 (WebCore::ConvolverNode::uninitialize): 19989 (WebCore::ConvolverNode::setBuffer): 19990 (WebCore::ConvolverNode::buffer): 19991 * webaudio/ConvolverNode.h: Added. 19992 (WebCore::ConvolverNode::create): 19993 * webaudio/ConvolverNode.idl: Added. 19994 19995 2010-11-02 Chris Rogers <crogers (a] google.com> 19996 19997 Reviewed by Kenneth Russell. 19998 19999 Add RealtimeAnalyser files 20000 https://bugs.webkit.org/show_bug.cgi?id=48810 20001 20002 No new tests since audio API is not yet implemented. 20003 20004 * webaudio/RealtimeAnalyser.cpp: Added. 20005 (WebCore::RealtimeAnalyser::RealtimeAnalyser): 20006 (WebCore::RealtimeAnalyser::~RealtimeAnalyser): 20007 (WebCore::RealtimeAnalyser::reset): 20008 (WebCore::RealtimeAnalyser::setFftSize): 20009 (WebCore::RealtimeAnalyser::writeInput): 20010 (WebCore::RealtimeAnalyser::doFFTAnalysis): 20011 (WebCore::RealtimeAnalyser::getFloatFrequencyData): 20012 (WebCore::RealtimeAnalyser::getByteFrequencyData): 20013 (WebCore::RealtimeAnalyser::getByteTimeDomainData): 20014 * webaudio/RealtimeAnalyser.h: Added. 20015 (WebCore::RealtimeAnalyser::fftSize): 20016 (WebCore::RealtimeAnalyser::frequencyBinCount): 20017 (WebCore::RealtimeAnalyser::setMinDecibels): 20018 (WebCore::RealtimeAnalyser::minDecibels): 20019 (WebCore::RealtimeAnalyser::setMaxDecibels): 20020 (WebCore::RealtimeAnalyser::maxDecibels): 20021 (WebCore::RealtimeAnalyser::setSmoothingTimeConstant): 20022 (WebCore::RealtimeAnalyser::smoothingTimeConstant): 20023 (WebCore::RealtimeAnalyser::magnitudeBuffer): 20024 20025 2010-11-02 Ilya Sherman <isherman (a] chromium.org> 20026 20027 Reviewed by Kent Tamura. 20028 20029 Avoid overlapping label text in autofill popup with icon. 20030 Updates the menu width computation to take the icon width into account. 20031 https://bugs.webkit.org/show_bug.cgi?id=48497 20032 20033 * platform/chromium/PopupMenuChromium.cpp: 20034 (WebCore::PopupListBox::paintRow): 20035 (WebCore::PopupListBox::layout): 20036 20037 2010-10-28 Zhenyao Mo <zmo (a] google.com> 20038 20039 Reviewed by Kenneth Russell. 20040 20041 Perform framebuffer attachment checking upon draw call rather than attachment 20042 https://bugs.webkit.org/show_bug.cgi?id=46318 20043 20044 * html/canvas/WebGLFramebuffer.cpp: 20045 (WebCore::getInternalFormat): Helper function to get an attachment's internal format. 20046 (WebCore::isUninitialized): Helper function to decide if an attachment is initialized or not. 20047 (WebCore::setInitialized): Helper funtion to set an attachment as being initialized. 20048 (WebCore::WebGLFramebuffer::setAttachment): No longer perform buffer initialization at this point. 20049 (WebCore::WebGLFramebuffer::removeAttachment): Ditto. 20050 (WebCore::WebGLFramebuffer::getColorBufferFormat): Make it const. 20051 (WebCore::WebGLFramebuffer::isIncomplete): Attachments conflict check. 20052 (WebCore::WebGLFramebuffer::onAccess): Check atatchment conflicts and buffer initialization if necessary. 20053 (WebCore::WebGLFramebuffer::initializeRenderbuffers): Return a boolean whether the framebuffer is complete or not. 20054 * html/canvas/WebGLFramebuffer.h: Add new function declaration and remove some outdated functions. 20055 (WebCore::WebGLFramebuffer::isColorAttached): 20056 (WebCore::WebGLFramebuffer::isDepthAttached): Make this private. 20057 (WebCore::WebGLFramebuffer::isStencilAttached): Ditto. 20058 (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto. 20059 * html/canvas/WebGLRenderbuffer.h: 20060 (WebCore::WebGLRenderbuffer::setInternalFormat): Also set the renderbuffer as uninitialized. 20061 * html/canvas/WebGLRenderingContext.cpp: 20062 (WebCore::WebGLRenderingContext::bindFramebuffer): No longer perform framebuffer initialization at this point. 20063 (WebCore::WebGLRenderingContext::checkFramebufferStatus): Check WebGL specific attachment conflicts. 20064 (WebCore::WebGLRenderingContext::clear): Call WebGLFramebuffer::onAccess. 20065 (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto. 20066 (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto. 20067 (WebCore::WebGLRenderingContext::drawArrays): Ditto. 20068 (WebCore::WebGLRenderingContext::drawElements): Ditto. 20069 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): No longer perform framebuffer initialization at this point. 20070 (WebCore::WebGLRenderingContext::readPixels): Call WebGLFramebuffer::onAccess. 20071 (WebCore::WebGLRenderingContext::renderbufferStorage): No longer perform framebuffer initialization at this point. 20072 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. 20073 20074 2010-11-01 Zhenyao Mo <zmo (a] google.com> 20075 20076 Reviewed by Kenneth Russell. 20077 20078 blendFunc should generate INVALID_OPERATION if constant color and constant alpha are together as source and destination factors 20079 https://bugs.webkit.org/show_bug.cgi?id=48674 20080 20081 Test: fast/canvas/webgl/webgl-specific.html 20082 20083 * html/canvas/WebGLRenderingContext.cpp: 20084 (WebCore::WebGLRenderingContext::blendFunc): 20085 (WebCore::WebGLRenderingContext::blendFuncSeparate): 20086 * html/canvas/WebGLRenderingContext.h: 20087 (WebCore::WebGLRenderingContext::validateBlendFuncFactors): Helper function to do the checking. 20088 20089 2010-11-02 Simon Fraser <simon.fraser (a] apple.com> 20090 20091 Reviewed by Dan Bernstein. 20092 20093 Overlapped nested iframes show smearing when scrolled 20094 https://bugs.webkit.org/show_bug.cgi?id=48873 20095 20096 A FrameView goes into slow scrolling mode (not blitting) when told that it is 20097 overlapped. However, a nested iframe could still try to use fast scrolling 20098 when its parent is overlapped, which could result in bad rendering. 20099 20100 Fixed by making useSlowRepaints() and useSlowRepaintsIfNotOverlapped() 20101 walk up their parent chain, asking if their parents also use slow 20102 repaints. 20103 20104 All the places that call setCanBlitOnScroll() now call 20105 updateCanBlitOnScrollRecursively() to ensure that the canBlitOnScroll 20106 flag is updated correctly on subframes. 20107 20108 Repaint tests do not work on nested iframes, so added manual test. 20109 20110 * manual-tests/frames/nested-iframe-blit-on-scroll.html: Added. 20111 * manual-tests/frames/resources/blit-on-scroll-subframe.html: Added. 20112 * manual-tests/frames/resources/blit-on-scroll-subsubframe.html: Added. 20113 * page/FrameView.cpp: 20114 (WebCore::FrameView::layout): 20115 (WebCore::FrameView::useSlowRepaints): 20116 (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): 20117 (WebCore::FrameView::updateCanBlitOnScrollRecursively): 20118 (WebCore::FrameView::setUseSlowRepaints): 20119 (WebCore::FrameView::addSlowRepaintObject): 20120 (WebCore::FrameView::removeSlowRepaintObject): 20121 (WebCore::FrameView::addFixedObject): 20122 (WebCore::FrameView::removeFixedObject): 20123 (WebCore::FrameView::setIsOverlapped): 20124 (WebCore::FrameView::setContentIsOpaque): 20125 * page/FrameView.h: 20126 20127 2010-11-02 Simon Fraser <simon.fraser (a] apple.com> 20128 20129 Reviewed by Dan Bernstein. 20130 20131 Iframes nested inside a compositing layer don't repaint correctly 20132 https://bugs.webkit.org/show_bug.cgi?id=48880 20133 <rdar://problem/8194698> 20134 20135 The isEnclosedInCompositingLayer() is used to modify the behavior of 20136 -[WebClipView visibleRect:] in WebKit, so that scrolling-related repaints 20137 are correct in composited iframes. Previously it only asked whether the 20138 frame's renderer was in a compositing layer, but we actually need to 20139 consult all ancestors. 20140 20141 Test: compositing/iframes/nested-iframe-scrolling.html 20142 20143 * page/FrameView.cpp: 20144 (WebCore::FrameView::isEnclosedInCompositingLayer): 20145 20146 2010-11-02 David Hyatt <hyatt (a] apple.com> 20147 20148 Reviewed by Dan Bernstein. 20149 20150 https://bugs.webkit.org/show_bug.cgi?id=48672 20151 20152 Make vertical glyph offset hit testing work with inline boxes. This allows selection to paint 20153 properly for vertical text (although gap-filling is still broken). 20154 20155 Refactored and cleaned up the writing mode flipping functions, and also did some cleanup to 20156 better share code between hit testing and painting. 20157 20158 * rendering/InlineBox.cpp: 20159 (WebCore::InlineBox::locationIncludingFlipping): 20160 (WebCore::InlineBox::flipForWritingMode): 20161 * rendering/InlineBox.h: 20162 * rendering/InlineFlowBox.cpp: 20163 (WebCore::InlineFlowBox::nodeAtPoint): 20164 (WebCore::InlineFlowBox::paint): 20165 (WebCore::InlineFlowBox::paintBoxDecorations): 20166 (WebCore::InlineFlowBox::paintMask): 20167 * rendering/InlineTextBox.cpp: 20168 (WebCore::InlineTextBox::selectionRect): 20169 (WebCore::InlineTextBox::nodeAtPoint): 20170 (WebCore::InlineTextBox::paint): 20171 (WebCore::InlineTextBox::textPos): 20172 (WebCore::InlineTextBox::offsetForPosition): 20173 (WebCore::InlineTextBox::positionForOffset): 20174 * rendering/RenderBlock.cpp: 20175 (WebCore::RenderBlock::paintChildren): 20176 (WebCore::RenderBlock::paintFloats): 20177 (WebCore::RenderBlock::hitTestFloats): 20178 (WebCore::RenderBlock::hitTestContents): 20179 * rendering/RenderBox.cpp: 20180 (WebCore::RenderBox::computeRectForRepaint): 20181 (WebCore::RenderBox::flipForWritingMode): 20182 (WebCore::RenderBox::locationOffsetIncludingFlipping): 20183 * rendering/RenderBox.h: 20184 * rendering/RenderInline.cpp: 20185 (WebCore::RenderInline::clippedOverflowRectForRepaint): 20186 * rendering/RenderLineBoxList.cpp: 20187 (WebCore::RenderLineBoxList::rangeIntersectsRect): 20188 (WebCore::RenderLineBoxList::anyLineIntersectsRect): 20189 (WebCore::RenderLineBoxList::lineIntersectsDirtyRect): 20190 (WebCore::RenderLineBoxList::paint): 20191 (WebCore::RenderLineBoxList::hitTest): 20192 * rendering/RenderLineBoxList.h: 20193 * rendering/RenderText.cpp: 20194 (WebCore::RenderText::positionForPoint): 20195 20196 2010-11-02 Adam Barth <abarth (a] webkit.org> 20197 20198 Reviewed by Eric Seidel. 20199 20200 JPEG decoders should understand color profiles 20201 https://bugs.webkit.org/show_bug.cgi?id=48819 20202 20203 This patch is currently a no-op because no one defines USE(ICCJPEG). 20204 We'll enable this for Chromium Mac once we have ICCJPEG landed in 20205 Chromium's third_party directory. 20206 20207 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 20208 (WebCore::readColorProfile): 20209 (WebCore::JPEGImageReader::JPEGImageReader): 20210 (WebCore::JPEGImageReader::decode): 20211 (WebCore::JPEGImageDecoder::outputScanlines): 20212 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 20213 (WebCore::JPEGImageDecoder::setColorProfile): 20214 20215 2010-11-02 Mihai Parparita <mihaip (a] chromium.org> 20216 20217 Reviewed by Adam Barth. 20218 20219 [Chromium] Crash when encountering history.back() call during Page::goToItem execution 20220 https://bugs.webkit.org/show_bug.cgi?id=48477 20221 20222 For the Chromium port, BackForwardList::itemAtIndex synthesizes a 20223 HistoryItem and saves a pointer to it in m_pendingItem. During 20224 Page::goToItem we call FrameLoader::stopAllLoaders, which can trigger 20225 onload handlers (if a subframe was not considered committed by the frame 20226 loader). If one of those handlers calls calls history.back() or another 20227 operation that ends up in NavigationScheduler::scheduleHistoryNavigation, 20228 we would call BackForwardList::itemAtIndex, which means that we would 20229 lose the m_pendingItem RefPtr that pointed to the item being navigated 20230 to, causing its ref count to go to 0*, and thus for the HistoryItem to 20231 be deleted before we were done navigating to it. 20232 20233 This is fixed in two ways: 20234 - Add a protector RefPtr in Page::goToItem to make sure that the item is 20235 still around for when we pass it to HistoryController:goToItem. 20236 - Change NavigationScheduler::scheduleHistoryNavigation to not use 20237 BackForwardList::itemAtIndex and instead look at the 20238 forward/backListCount() (since it doesn't actually care about the 20239 returned HistoryItem). 20240 20241 * Full annotated stack trace of this is at http://crbug.com/59554#c9. 20242 20243 Test: http/tests/history/back-during-onload-triggered-by-back.html 20244 20245 * loader/NavigationScheduler.cpp: 20246 (WebCore::NavigationScheduler::scheduleHistoryNavigation): 20247 * page/Page.cpp: 20248 (WebCore::Page::goToItem): 20249 20250 2010-10-28 Zhenyao Mo <zmo (a] google.com> 20251 20252 Reviewed by Kenneth Russell. 20253 20254 Update getUniform for bvec[234] to return boolean[] rather than Uint8Array 20255 https://bugs.webkit.org/show_bug.cgi?id=47568 20256 20257 * html/canvas/WebGLRenderingContext.cpp: 20258 (WebCore::WebGLRenderingContext::getUniform): 20259 20260 2010-11-02 Chris Rogers <crogers (a] google.com> 20261 20262 Reviewed by Kenneth Russell. 20263 20264 Add RealtimeAnalyserNode files 20265 https://bugs.webkit.org/show_bug.cgi?id=48798 20266 20267 No new tests since audio API is not yet implemented. 20268 20269 * webaudio/RealtimeAnalyserNode.cpp: Added. 20270 (WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode): 20271 (WebCore::RealtimeAnalyserNode::~RealtimeAnalyserNode): 20272 (WebCore::RealtimeAnalyserNode::process): 20273 (WebCore::RealtimeAnalyserNode::pullInputs): 20274 (WebCore::RealtimeAnalyserNode::reset): 20275 * webaudio/RealtimeAnalyserNode.h: Added. 20276 (WebCore::RealtimeAnalyserNode::create): 20277 (WebCore::RealtimeAnalyserNode::fftSize): 20278 (WebCore::RealtimeAnalyserNode::setFftSize): 20279 (WebCore::RealtimeAnalyserNode::frequencyBinCount): 20280 (WebCore::RealtimeAnalyserNode::setMinDecibels): 20281 (WebCore::RealtimeAnalyserNode::minDecibels): 20282 (WebCore::RealtimeAnalyserNode::setMaxDecibels): 20283 (WebCore::RealtimeAnalyserNode::maxDecibels): 20284 (WebCore::RealtimeAnalyserNode::setSmoothingTimeConstant): 20285 (WebCore::RealtimeAnalyserNode::smoothingTimeConstant): 20286 (WebCore::RealtimeAnalyserNode::getFloatFrequencyData): 20287 (WebCore::RealtimeAnalyserNode::getByteFrequencyData): 20288 (WebCore::RealtimeAnalyserNode::getByteTimeDomainData): 20289 * webaudio/RealtimeAnalyserNode.idl: Added. 20290 20291 2010-11-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 20292 20293 Unreviewed, rolling out r71152. 20294 http://trac.webkit.org/changeset/71152 20295 https://bugs.webkit.org/show_bug.cgi?id=48866 20296 20297 Causes lots and lots of crashes (Requested by jamesr_ on 20298 #webkit). 20299 20300 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 20301 (WebCore::JPEGImageReader::JPEGImageReader): 20302 (WebCore::JPEGImageReader::decode): 20303 (WebCore::JPEGImageDecoder::outputScanlines): 20304 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 20305 20306 2010-11-02 Alexey Proskuryakov <ap (a] apple.com> 20307 20308 Reviewed by Timothy Hatcher. 20309 20310 https://bugs.webkit.org/show_bug.cgi?id=48813 20311 <rdar://problem/8602552> REGRESSION (r63622): DNS prefetching for <link> tags doesn't work 20312 in non-HTTP documents 20313 20314 Cannot test DNS prefetching. 20315 20316 * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::process): We should be looking at 20317 preferences, not at whether this document has prefetching enabled. 20318 20319 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20320 20321 Not reviewed: Web Inspector: follow up to r71139. Fixed Mac monospace 20322 height style. 20323 20324 * inspector/front-end/PropertiesSection.js: 20325 (WebInspector.PropertiesSection): 20326 * inspector/front-end/inspector.css: 20327 20328 2010-11-02 Adam Barth <abarth (a] webkit.org> 20329 20330 Reviewed by Eric Seidel. 20331 20332 JPEG decoders should understand color profiles 20333 https://bugs.webkit.org/show_bug.cgi?id=48819 20334 20335 This patch is currently a no-op because no one defines USE(ICCJPEG). 20336 We'll enable this for Chromium Mac once we have ICCJPEG landed in 20337 Chromium's third_party directory. 20338 20339 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 20340 (WebCore::readColorProfile): 20341 (WebCore::JPEGImageReader::JPEGImageReader): 20342 (WebCore::JPEGImageReader::decode): 20343 (WebCore::JPEGImageDecoder::outputScanlines): 20344 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 20345 (WebCore::JPEGImageDecoder::setColorProfile): 20346 20347 2010-11-02 Ilya Sherman <isherman (a] chromium.org> 20348 20349 Reviewed by Simon Fraser. 20350 20351 Marks selectionStart() and selectionEnd() as const. 20352 https://bugs.webkit.org/show_bug.cgi?id=48786 20353 20354 * html/HTMLFormControlElement.cpp: 20355 (WebCore::HTMLTextFormControlElement::selectionStart): 20356 (WebCore::HTMLTextFormControlElement::selectionEnd): 20357 * html/HTMLFormControlElement.h: 20358 20359 2010-11-02 Chris Rogers <crogers (a] google.com> 20360 20361 Reviewed by Kenneth Russell. 20362 20363 Fix license for audio files 20364 https://bugs.webkit.org/show_bug.cgi?id=48859 20365 20366 * webaudio/AudioChannelSplitter.cpp: 20367 * webaudio/AudioChannelSplitter.h: 20368 * webaudio/AudioDestinationNode.cpp: 20369 * webaudio/AudioDestinationNode.h: 20370 * webaudio/AudioGainNode.cpp: 20371 * webaudio/AudioGainNode.h: 20372 * webaudio/AudioPannerNode.cpp: 20373 * webaudio/AudioPannerNode.h: 20374 * webaudio/AudioPannerNode.idl: 20375 20376 2010-11-02 Martin Robinson <mrobinson (a] igalia.com> 20377 20378 Reviewed by Xan Lopez. 20379 20380 Remove special handling of HashTableDeletedValue in PlatformRefPtr and manually manage memory that cannot be controlled by HashTraits 20381 https://bugs.webkit.org/show_bug.cgi?id=48841 20382 20383 Switch to manually managing the memory in FontPlatformDataFreeType. This 20384 is necessary because smart pointers do not know how to deal with a pointer 20385 value of -1 (HashTableDeletedValue) and HashTraits can only manage the type 20386 contained in the HashMap. 20387 20388 No new tests as this should not change functionality. 20389 20390 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 20391 (WebCore::FontPlatformData::FontPlatformData): 20392 (WebCore::FontPlatformData::operator=): 20393 (WebCore::FontPlatformData::~FontPlatformData): 20394 (WebCore::FontPlatformData::operator==): 20395 (WebCore::FontPlatformData::initializeWithFontFace): 20396 * platform/graphics/cairo/FontPlatformDataFreeType.h: 20397 (WebCore::FontPlatformData::FontPlatformData): 20398 (WebCore::FontPlatformData::scaledFont): 20399 (WebCore::FontPlatformData::hash): 20400 (WebCore::FontPlatformData::isHashTableDeletedValue): 20401 (WebCore::FontPlatformData::hashTableDeletedFontValue): 20402 * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: 20403 (WebCore::GlyphPage::fill): 20404 * platform/graphics/cairo/SimpleFontDataCairo.cpp: 20405 (WebCore::SimpleFontData::platformInit): 20406 (WebCore::SimpleFontData::containsCharacters): 20407 (WebCore::SimpleFontData::platformWidthForGlyph): 20408 20409 2010-11-02 Adam Barth <abarth (a] webkit.org> 20410 20411 Reviewed by Eric Seidel. 20412 20413 querySelectorAll('body>:last-child') does not work unless HTML file ends with 'new-line'. 20414 https://bugs.webkit.org/show_bug.cgi?id=47166 20415 20416 We need to pop all the open elements when we end the document in the 20417 AfterAfterBody state. 20418 20419 Test: fast/parser/pop-all-after-after-body.html 20420 20421 * html/parser/HTMLTreeBuilder.cpp: 20422 (WebCore::HTMLTreeBuilder::processEndOfFile): 20423 20424 2010-11-02 Patrick Gansterer <paroga (a] webkit.org> 20425 20426 Reviewed by Adam Roben. 20427 20428 Cleanup createGlobalImageFileDescriptor in ClipboardWin 20429 https://bugs.webkit.org/show_bug.cgi?id=48189 20430 20431 * platform/win/ClipboardWin.cpp: 20432 (WebCore::ClipboardWin::writeURL): 20433 20434 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20435 20436 Reviewed by Timothy Hatcher. 20437 20438 Web Inspector: display frame names in the resources panel. 20439 https://bugs.webkit.org/show_bug.cgi?id=48839 20440 20441 * inspector/Inspector.idl: 20442 * inspector/InspectorResourceAgent.cpp: 20443 (WebCore::frameId): 20444 (WebCore::buildObjectForDocumentLoader): 20445 (WebCore::buildObjectForFrame): 20446 (WebCore::buildObjectForFrameTree): 20447 (WebCore::InspectorResourceAgent::didCommitLoad): 20448 (WebCore::InspectorResourceAgent::frameDetachedFromParent): 20449 (WebCore::InspectorResourceAgent::frameForId): 20450 (WebCore::InspectorResourceAgent::resourceContent): 20451 * inspector/InspectorResourceAgent.h: 20452 * inspector/front-end/ResourceManager.js: 20453 (WebInspector.ResourceManager.prototype.didCommitLoadForFrame): 20454 (WebInspector.ResourceManager.prototype._processCachedResources): 20455 (WebInspector.ResourceManager.prototype._addFramesRecursively): 20456 (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame): 20457 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame): 20458 * inspector/front-end/StoragePanel.js: 20459 (WebInspector.StoragePanel.prototype.addOrUpdateFrame): 20460 (WebInspector.BaseStorageTreeElement.prototype.get titleText): 20461 (WebInspector.FrameTreeElement): 20462 (WebInspector.FrameTreeElement.prototype.onattach): 20463 (WebInspector.FrameTreeElement.prototype.get nameForSorting): 20464 (WebInspector.FrameTreeElement.prototype.setTitles): 20465 (WebInspector.FrameTreeElement.prototype.set hovered): 20466 * inspector/front-end/inspector.css: 20467 (li.selected .base-storage-tree-element-subtitle): 20468 (.base-storage-tree-element-subtitle): 20469 20470 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20471 20472 Not reviewed. Follow up to r71139: removing unused images. 20473 https://bugs.webkit.org/show_bug.cgi?id=48827 20474 20475 * WebCore.gypi: 20476 * inspector/front-end/Images/grayConnectorPoint.png: Removed. 20477 * inspector/front-end/Images/whiteConnectorPoint.png: Removed. 20478 * inspector/front-end/WebKit.qrc: 20479 20480 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20481 20482 Reviewed by Timothy Hatcher. 20483 20484 Web Inspector: make properties and event listeners look consistent with the styles section. 20485 https://bugs.webkit.org/show_bug.cgi?id=48827 20486 20487 * inspector/front-end/EventListenersSidebarPane.js: 20488 * inspector/front-end/PropertiesSection.js: 20489 (WebInspector.PropertiesSection): 20490 * inspector/front-end/PropertiesSidebarPane.js: 20491 (WebInspector.PropertiesSidebarPane.prototype.update.callback): 20492 (WebInspector.PropertiesSidebarPane.prototype.update): 20493 * inspector/front-end/inspector.css: 20494 (.events-pane .section:not(:nth-of-type(1))): 20495 (.event-bar:first-child): 20496 (.section .header): 20497 (.section .header::before): 20498 (.section.expanded .header::before): 20499 (.section .header .title, .event-bar .header .title): 20500 (.section .header .subtitle, .event-bar .header .subtitle): 20501 (.section.expanded .properties, .event-bar.expanded .event-properties): 20502 (.properties-tree): 20503 (.event-bar): 20504 (.event-bars .event-bar .header): 20505 (.event-bars .event-bar .header .title): 20506 (.event-bars .event-bar .header::before): 20507 20508 2010-11-02 Dan Bernstein <mitz (a] apple.com> 20509 20510 Reviewed by Anders Carlsson. 20511 20512 Remove unused methods and member variables from AutoTableLayout. 20513 20514 * rendering/AutoTableLayout.cpp: 20515 (WebCore::AutoTableLayout::AutoTableLayout): Removed initialization of m_percentagesDirty 20516 and m_totalPercent. 20517 (WebCore::AutoTableLayout::fullRecalc): Removed setting of m_percentagesDirty. 20518 (WebCore::AutoTableLayout::calcPercentages): Removed. 20519 * rendering/AutoTableLayout.h: Removed totalPercent(), m_percentagesDirty, and m_totalPercent. 20520 20521 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20522 20523 Reviewed by Timothy Hatcher. 20524 20525 Web Inspector: clear / hide timing information for cached resources. 20526 https://bugs.webkit.org/show_bug.cgi?id=48848 20527 20528 * inspector/front-end/Resource.js: 20529 (WebInspector.Resource.prototype.set cached): 20530 (WebInspector.Resource.prototype.get timing): 20531 (WebInspector.Resource.prototype.set timing): 20532 * inspector/front-end/ResourceManager.js: 20533 (WebInspector.ResourceManager.prototype.markResourceAsCached): 20534 20535 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20536 20537 Reviewed by Timothy Hatcher. 20538 20539 Web Inspector: improve network's 'preview close' usability. 20540 https://bugs.webkit.org/show_bug.cgi?id=48846 20541 20542 * inspector/front-end/networkPanel.css: 20543 (#network-close-button:hover): 20544 (#network-close-button:active): 20545 20546 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20547 20548 Reviewed by Timothy Hatcher. 20549 20550 Web Inspector: Image heights are displayed as 0. 20551 https://bugs.webkit.org/show_bug.cgi?id=40817 20552 20553 * inspector/front-end/ImageView.js: 20554 (WebInspector.ImageView.prototype.contentTabSelected): 20555 (WebInspector.ImageView.prototype.contentTabSelected.onImageLoad): 20556 20557 2010-10-31 Noam Rosenthal <noam.rosenthal (a] nokia.com> 20558 20559 Reviewed by Kenneth Rohde Christiansen. 20560 20561 [Texmap] [Qt] Texture mapper initial implementation 20562 https://bugs.webkit.org/show_bug.cgi?id=47070 20563 20564 Some refactor for texmap to enable WebKit2: remove globals, and allow TextureMapper to exist without a GraphicsContext. 20565 This will allow rendering the TextureMapperNode tree without an active QPainter, into the current GL context. 20566 Most of the changes simply move the globas in TextureMapperGL into members of that class. 20567 20568 No new tests. Old tests in LayoutTests/compositing cover this. 20569 20570 * platform/graphics/opengl/TextureMapperGL.cpp: 20571 (WebCore::TextureMapperGLData::ShaderInfo::getUniformLocation): 20572 (WebCore::TextureMapperGLData::ShaderInfo::createShaderProgram): 20573 (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::findOrCreate): 20574 (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::deref): 20575 (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::DirectlyCompositedImageRepository): 20576 (WebCore::TextureMapperGLData::DirectlyCompositedImageRepository::~DirectlyCompositedImageRepository): 20577 (WebCore::TextureMapperGLData::TextureMapperGLData): 20578 (WebCore::TextureMapperGL::TextureMapperGL): 20579 (WebCore::TextureMapperGL::drawTexture): 20580 (WebCore::BitmapTextureGL::setContentsToImage): 20581 (WebCore::BitmapTextureGL::destroy): 20582 (WebCore::TextureMapperGL::~TextureMapperGL): 20583 (WebCore::TextureMapperGL::makeContextCurrent): 20584 (WebCore::TextureMapperGL::obtainCurrentContext): 20585 (WebCore::TextureMapperGL::bindSurface): 20586 (WebCore::TextureMapperGL::paintToTarget): 20587 (WebCore::TextureMapperGL::createTexture): 20588 * platform/graphics/opengl/TextureMapperGL.h: 20589 (WebCore::TextureMapperGL::data): 20590 * platform/graphics/qt/TextureMapperQt.cpp: 20591 (WebCore::TextureMapperQt::TextureMapperQt): 20592 (WebCore::TextureMapperQt::setGraphicsContext): 20593 (WebCore::TextureMapper::create): 20594 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: 20595 (WebCore::TextureMapperNode::paint): 20596 (WebCore::TextureMapperNode::uploadTextureFromContent): 20597 * platform/graphics/texmap/TextureMapper.h: 20598 (WebCore::TextureMapper::setGraphicsContext): 20599 (WebCore::TextureMapper::setImageInterpolationQuality): 20600 (WebCore::TextureMapper::setTextDrawingMode): 20601 (WebCore::TextureMapper::imageInterpolationQuality): 20602 (WebCore::TextureMapper::textDrawingMode): 20603 (WebCore::TextureMapper::TextureMapper): 20604 * platform/graphics/texmap/TextureMapperPlatformLayer.h: 20605 (WebCore::TextureMapperContentLayer::paint): 20606 20607 2010-11-02 Adele Peterson <adele (a] apple.com> 20608 20609 Reviewed by Kent Tamura. 20610 20611 Fix for https://bugs.webkit.org/show_bug.cgi?id=48814 20612 <rdar://problem/8546143> Attempting to redo typing in apple.com/startpage search field causes infinite recursion in TextControlInnerTextElement::defaultEventHandler 20613 20614 Test: editing/undo/redo-after-detach.html 20615 20616 * rendering/TextControlInnerElements.cpp: (WebCore::TextControlInnerTextElement::defaultEventHandler): 20617 A TextControlInnerTextElement will almost always have a shadowAncestorNode, the HTMLInputElement. In this case, 20618 after the renderer was destroyed, this shadow node was kept alive by the EditCommand, even though its not hooked up 20619 anymore to the shadow DOM. EditCommands can sometimes operate on stale selections and are expected to fail silently. 20620 So here we prevent the infinite loop during event dispatch, and the rest of the redo operation will fail silently. 20621 20622 2010-11-02 Chris Marrin <cmarrin (a] apple.com> 20623 20624 Reviewed by Simon Fraser. 20625 20626 When animations are paused, play-state can cause them to be unpaused. 20627 https://bugs.webkit.org/show_bug.cgi?id=46525 20628 20629 I Changed updatePlayState() to only unpause when both play-state is 20630 "running" and not suspended. Likewise I pause animation when either 20631 play-state is "paused" or suspended. 20632 20633 Test: animations/play-state-suspend.html 20634 20635 * page/animation/AnimationBase.cpp: 20636 (WebCore::AnimationBase::updatePlayState): 20637 20638 2010-11-02 Chris Marrin <cmarrin (a] apple.com> 20639 20640 Reviewed by Adam Roben. 20641 20642 Make RenderStyle::playState() return typed value and cleanup naming in Animation code 20643 https://bugs.webkit.org/show_bug.cgi?id=48844 20644 20645 playState() function was returning unsigned value, but there is a EAnimPlayState 20646 enum type which has the legal playState values. This type is now used everywhere. 20647 I also changed the naming of the m_isSuspended to m_suspended to match the style 20648 elsewhere in the code. 20649 20650 * page/animation/AnimationBase.cpp: 20651 (WebCore::AnimationBase::updatePlayState): 20652 * page/animation/AnimationBase.h: 20653 * page/animation/AnimationController.cpp: 20654 (WebCore::AnimationControllerPrivate::clear): 20655 (WebCore::AnimationControllerPrivate::updateAnimationTimer): 20656 * page/animation/CompositeAnimation.cpp: 20657 (WebCore::CompositeAnimation::updateKeyframeAnimations): 20658 (WebCore::CompositeAnimation::suspendAnimations): 20659 (WebCore::CompositeAnimation::resumeAnimations): 20660 * page/animation/CompositeAnimation.h: 20661 (WebCore::CompositeAnimation::suspended): 20662 (WebCore::CompositeAnimation::CompositeAnimation): 20663 * platform/animation/Animation.h: 20664 (WebCore::Animation::playState): 20665 (WebCore::Animation::setPlayState): 20666 (WebCore::Animation::initialAnimationPlayState): 20667 20668 2010-11-01 Zhenyao Mo <zmo (a] google.com> 20669 20670 Reviewed by Andreas Kling. 20671 20672 vertexAttribPointer should generate INVALID_VALUE if the stride exceeds 255 20673 https://bugs.webkit.org/show_bug.cgi?id=48677 20674 20675 Test: fast/canvas/webgl/gl-vertexattribpointer.html 20676 20677 * html/canvas/WebGLRenderingContext.cpp: 20678 (WebCore::WebGLRenderingContext::vertexAttribPointer): Generate INVALID_VALUE if stride > 255. 20679 20680 2010-11-01 Martin Robinson <mrobinson (a] igalia.com> 20681 20682 Reviewed by Xan Lopez. 20683 20684 [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html 20685 https://bugs.webkit.org/show_bug.cgi?id=48805 20686 20687 Track active WebSocket handles via a sequential id. This ensures 20688 that when a handle is reallocated into a recently used segment of 20689 memory, it doesn't trigger a false positive in the code which ensures 20690 the original handle is active. 20691 20692 No new tests. This test should stop crashing on the bots, proving the fix. 20693 20694 * platform/network/soup/SocketStreamHandle.h: 20695 (WebCore::SocketStreamHandle::id): Added an m_id member and accessor 20696 to SocketStreamHandle. 20697 * platform/network/soup/SocketStreamHandleSoup.cpp: 20698 (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to 20699 SocketStreamHandle*. 20700 (WebCore::deactivateHandle): Ditto. 20701 (WebCore::activateHandle): Ditto. 20702 (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto. 20703 (WebCore::SocketStreamHandle::connected): Ditto. 20704 (WebCore::SocketStreamHandle::readBytes): Ditto. 20705 (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto. 20706 (WebCore::connectedCallback): Ditto. 20707 (WebCore::readReadyCallback): Ditto. 20708 (WebCore::writeReadyCallback): Ditto. 20709 20710 2010-11-02 Csaba Osztrogonc <ossy (a] webkit.org> 20711 20712 Unreviewed trivial fix. 20713 20714 * WebCore.pro: Remove inspector/InspectorResource.h after r71035. 20715 20716 2010-11-02 Pavel Podivilov <podivilov (a] chromium.org> 20717 20718 Reviewed by Pavel Feldman. 20719 20720 Web Inspector: make xhr breakpoints editable 20721 https://bugs.webkit.org/show_bug.cgi?id=48830 20722 20723 * inspector/front-end/BreakpointManager.js: 20724 (WebInspector.Breakpoint.prototype.set sourceText): 20725 (WebInspector.Breakpoint.prototype.click): 20726 (WebInspector.Breakpoint.prototype.populateLabelElement): 20727 (WebInspector.XHRBreakpoint.prototype.populateEditElement): 20728 * inspector/front-end/BreakpointsSidebarPane.js: 20729 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpointItem): 20730 (WebInspector.BreakpointsSidebarPane.prototype._breakpointItemClicked): 20731 (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired): 20732 (WebInspector.BreakpointsSidebarPane.prototype._addListElement): 20733 (WebInspector.BreakpointsSidebarPane.prototype._removeListElement): 20734 (WebInspector.XHRBreakpointsSidebarPane.addButtonClicked): 20735 (WebInspector.XHRBreakpointsSidebarPane): 20736 (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint): 20737 (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog): 20738 (WebInspector.XHRBreakpointsSidebarPane.prototype._breakpointItemClicked): 20739 (WebInspector.BreakpointItem): 20740 (WebInspector.BreakpointItem.prototype.get element): 20741 (WebInspector.BreakpointItem.prototype.click): 20742 (WebInspector.BreakpointItem.prototype.populateEditElement): 20743 (WebInspector.BreakpointItem.prototype.remove): 20744 (WebInspector.BreakpointItem.prototype._hitStateChanged): 20745 (WebInspector.BreakpointItem.prototype._labelChanged): 20746 (WebInspector.BreakpointItem.prototype._createLabelElement): 20747 * inspector/front-end/inspector.js: 20748 (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded): 20749 (WebInspector.createJSBreakpointsSidebarPane): 20750 (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded): 20751 (WebInspector.createDOMBreakpointsSidebarPane): 20752 (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded): 20753 (WebInspector.createXHRBreakpointsSidebarPane): 20754 20755 2010-11-02 Pavel Podivilov <podivilov (a] chromium.org> 20756 20757 Reviewed by Pavel Feldman. 20758 20759 Web Inspector: fix for breakpoints not restored on live edit bug 20760 https://bugs.webkit.org/show_bug.cgi?id=48833 20761 20762 * inspector/front-end/ScriptsPanel.js: 20763 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 20764 * inspector/front-end/inspector.js: 20765 (WebInspector.pausedScript): 20766 20767 2010-11-02 Alexander Pavlov <apavlov (a] chromium.org> 20768 20769 Reviewed by Pavel Feldman. 20770 20771 Web Inspector: [REGRESSION] Rule addition/selector editing result in unusable rules 20772 https://bugs.webkit.org/show_bug.cgi?id=48826 20773 20774 * inspector/front-end/CSSStyleModel.js: 20775 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 20776 (WebInspector.CSSStyleModel.prototype.addRule): 20777 * inspector/front-end/StylesSidebarPane.js: 20778 (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback): 20779 (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted): 20780 20781 2010-11-02 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 20782 20783 Reviewed by Andreas Kling. 20784 20785 [Qt] Don't include Objective-C sources in SOURCES 20786 20787 * WebCore.pro: 20788 20789 2010-11-02 Pavel Podivilov <podivilov (a] chromium.org> 20790 20791 Reviewed by Pavel Feldman. 20792 20793 Web Inspector: persist native breakpoints in localStorage 20794 https://bugs.webkit.org/show_bug.cgi?id=48711 20795 20796 * inspector/InspectorController.cpp: 20797 (WebCore::InspectorController::disconnectFrontend): 20798 (WebCore::InspectorController::didCommitLoad): 20799 (WebCore::InspectorController::clearNativeBreakpoints): 20800 * inspector/InspectorController.h: 20801 * inspector/front-end/BreakpointManager.js: 20802 (WebInspector.BreakpointManager): 20803 (WebInspector.DOMBreakpoint): 20804 (WebInspector.EventListenerBreakpoint): 20805 (WebInspector.EventListenerBreakpoint.eventNameForUI): 20806 (WebInspector.EventListenerBreakpoint.prototype._uiEventName): 20807 (WebInspector.XHRBreakpoint): 20808 (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement): 20809 * inspector/front-end/BreakpointsSidebarPane.js: 20810 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): 20811 (WebInspector.BreakpointsSidebarPane.prototype._breakpointHit): 20812 (WebInspector.BreakpointItem.prototype._hitStateChanged): 20813 (WebInspector.EventListenerBreakpointsSidebarPane): 20814 * inspector/front-end/ConsoleView.js: 20815 * inspector/front-end/EventListenersSidebarPane.js: 20816 * inspector/front-end/NetworkPanel.js: 20817 * inspector/front-end/Panel.js: 20818 * inspector/front-end/ResourceView.js: 20819 * inspector/front-end/ScriptsPanel.js: 20820 * inspector/front-end/Settings.js: 20821 (WebInspector.Settings): 20822 (WebInspector.Settings.prototype.inspectedURLChanged): 20823 (WebInspector.Settings.prototype._formatProjectKey): 20824 * inspector/front-end/StoragePanel.js: 20825 * inspector/front-end/StylesSidebarPane.js: 20826 * inspector/front-end/WatchExpressionsSidebarPane.js: 20827 * inspector/front-end/inspector.css: 20828 (.pane .breakpoint-hit): 20829 * inspector/front-end/inspector.js: 20830 (WebInspector.set currentPanel): 20831 (WebInspector.doLoadedDone.onPopulateScriptObjects): 20832 (WebInspector.doLoadedDone): 20833 (WebInspector.reset): 20834 (WebInspector.inspectedURLChanged): 20835 20836 2010-11-01 Pavel Feldman <pfeldman (a] chromium.org> 20837 20838 Reviewed by Joseph Pecoraro. 20839 20840 Web Inspector: use mimeType from cached resource 20841 in case response data contains none. 20842 https://bugs.webkit.org/show_bug.cgi?id=48773 20843 20844 * inspector/InspectorResourceAgent.cpp: 20845 (WebCore::InspectorResourceAgent::didReceiveResponse): 20846 * inspector/front-end/NetworkPanel.js: 20847 (WebInspector.NetworkPanel.prototype._createTable): 20848 20849 2010-11-01 Andrey Kosyakov <caseq (a] chromium.org> 20850 20851 Reviewed by Pavel Feldman. 20852 20853 Web Inspector: [Extensions API] expose API to create properties watch sidebar panes 20854 https://bugs.webkit.org/show_bug.cgi?id=48761 20855 20856 * inspector/front-end/ExtensionAPI.js: 20857 (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createSidebarPane): 20858 (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane.callbackWrapper): 20859 (WebInspector.injectedExtensionAPI.PanelImpl.prototype.createWatchExpressionSidebarPane): 20860 (WebInspector.injectedExtensionAPI): 20861 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl): 20862 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setExpression): 20863 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject): 20864 * inspector/front-end/ExtensionPanel.js: Added ExtensionWatchSidebarPane 20865 (WebInspector.ExtensionWatchSidebarPane): 20866 (WebInspector.ExtensionWatchSidebarPane.prototype.setObject): 20867 (WebInspector.ExtensionWatchSidebarPane.prototype.setExpression): 20868 (WebInspector.ExtensionWatchSidebarPane.prototype._onEvaluate): 20869 (WebInspector.ExtensionWatchSidebarPane.prototype._setObject): 20870 * inspector/front-end/ExtensionServer.js: 20871 (WebInspector.ExtensionServer): 20872 (WebInspector.ExtensionServer.prototype.notifyExtensionWatchSidebarUpdated): 20873 (WebInspector.ExtensionServer.prototype._onCreateSidebar): 20874 (WebInspector.ExtensionServer.prototype._onCreateWatchExpressionSidebarPane): 20875 (WebInspector.ExtensionServer.prototype._createSidebar): 20876 (WebInspector.ExtensionServer.prototype._onSetWatchSidebarContent): 20877 * inspector/front-end/InjectedScript.js: 20878 (injectedScriptConstructor.): 20879 * inspector/front-end/RemoteObject.js: Added a wrapper for local JSON object to simulate RemoteObject interface. 20880 (WebInspector.RemoteObject.fromLocalObject): 20881 (WebInspector.LocalJSONObject): 20882 (WebInspector.LocalJSONObject.prototype.get description): 20883 (WebInspector.LocalJSONObject.prototype.get type): 20884 (WebInspector.LocalJSONObject.prototype.get hasChildren): 20885 (WebInspector.LocalJSONObject.prototype.getOwnProperties): 20886 (WebInspector.LocalJSONObject.prototype.getProperties): 20887 (WebInspector.LocalJSONObject.prototype.isError): 20888 20889 2010-11-02 Ryuan Choi <ryuan.choi (a] samsung.com> 20890 20891 Unreviewed build fix for EFL build with libcurl 20892 20893 [EFL] remove multiple definition with libcurl 20894 https://bugs.webkit.org/show_bug.cgi?id=48499 20895 20896 Add macro to isolate setCookieStoragePrivateBrowsingEnabled from EFL 20897 build because it was duplicated. 20898 20899 * platform/network/curl/CookieJarCurl.cpp: 20900 20901 2010-11-02 Pavel Feldman <pfeldman (a] chromium.org> 20902 20903 Reviewed by Joseph Pecoraro. 20904 20905 Web Inspector: highlight frame on hover in resources panel. 20906 https://bugs.webkit.org/show_bug.cgi?id=48760 20907 20908 * inspector/Inspector.idl: 20909 * inspector/InspectorController.cpp: 20910 (WebCore::InspectorController::highlightFrame): 20911 * inspector/InspectorController.h: 20912 (WebCore::InspectorController::hideFrameHighlight): 20913 * inspector/front-end/StoragePanel.js: 20914 (WebInspector.StoragePanel): 20915 (WebInspector.StoragePanel.prototype.showView): 20916 (WebInspector.StoragePanel.prototype._onmousemove): 20917 (WebInspector.StoragePanel.prototype._onmouseout): 20918 (WebInspector.FrameTreeElement.prototype.onselect): 20919 (WebInspector.FrameTreeElement.prototype.ondeselect): 20920 (WebInspector.FrameTreeElement.prototype.set displayName): 20921 (WebInspector.FrameTreeElement.prototype.set hovered): 20922 * inspector/front-end/inspector.css: 20923 (.storage.panel .sidebar li.selected .selection): 20924 (.storage.panel .sidebar :focus li.selected .selection): 20925 (body.inactive .storage.panel .sidebar li.selected .selection): 20926 20927 2010-11-02 Nikolas Zimmermann <nzimmermann (a] rim.com> 20928 20929 Reviewed by Rob Buis. 20930 20931 Convert SVGPreserveAspectRatio to the new SVGPropertyTearOff concept 20932 https://bugs.webkit.org/show_bug.cgi?id=48822 20933 20934 Convert the next type to use the SVGPropertyTearOffConcept. Just SVGAnimatedTransformList/SVGTransform/SVGStringList are missing. 20935 20936 Tests: svg/dom/SVGAnimatedPreserveAspectRatio.html 20937 svg/dom/SVGPreserveAspectRatio.html 20938 20939 * GNUmakefile.am: Add SVGAnimatedPreserveAspectRatio.h to build. 20940 * WebCore.gypi: Ditto. 20941 * WebCore.pro: Ditto. 20942 * WebCore.vcproj/WebCore.vcproj: Ditto. 20943 * WebCore.xcodeproj/project.pbxproj: Ditto. 20944 * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedPreserveAspectRatio as new style animated type. 20945 * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGPreserveAspectRatio handling. 20946 * bindings/scripts/CodeGeneratorObjC.pm: Always include the type wrapped by SVGPropertyTearOff<> - this was missing before, and now become visible as missing include. 20947 * bindings/scripts/CodeGeneratorV8.pm: Remove special SVGPreserveAspectRatio handling. 20948 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGPreserveAspectRatio handling. 20949 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 20950 * svg/SVGAnimatedPreserveAspectRatio.h: Added. 20951 * svg/SVGFEImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used. 20952 * svg/SVGFitToViewBox.cpp: 20953 (WebCore::SVGFitToViewBox::viewBoxToViewTransform): SVGPreserveAspectRatio::getCTM doesn't need x/y parameters, they were not used anywhere, remove them. 20954 * svg/SVGFitToViewBox.h: Replace includes by class forwards. 20955 * svg/SVGImageElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used. 20956 * svg/SVGLocatable.cpp: Add SVGNames.h include, to allow Qt to build (thanks ews!). 20957 * svg/SVGMarkerElement.h: Ditto. 20958 * svg/SVGPatternElement.h: Ditto. 20959 * svg/SVGPreserveAspectRatio.cpp: Modernize code, add error handling for align/meetOrSlice covered by the new tests. 20960 (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio): 20961 (WebCore::SVGPreserveAspectRatio::setAlign): 20962 (WebCore::SVGPreserveAspectRatio::setMeetOrSlice): 20963 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio): 20964 (WebCore::SVGPreserveAspectRatio::transformRect): 20965 (WebCore::SVGPreserveAspectRatio::getCTM): 20966 (WebCore::SVGPreserveAspectRatio::valueAsString): 20967 * svg/SVGPreserveAspectRatio.h: Reindented header. 20968 (WebCore::SVGPreserveAspectRatio::align): Inlined. 20969 (WebCore::SVGPreserveAspectRatio::meetOrSlice): Inlined. 20970 * svg/SVGPreserveAspectRatio.idl: Enable StrictTypeChecking for the align/meetOrSlice properties. 20971 * svg/SVGSVGElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ where SVGPreserveAspectRatio is used. 20972 * svg/SVGStyledTransformableElement.h: Add SVGAnimatedPropertyMacros.h include, needed by efl to build (thanks ews!). 20973 * svg/SVGSymbolElement.h: Ditto. 20974 * svg/SVGViewElement.h: Ditto. 20975 * svg/SVGViewSpec.h: Ditto. 20976 20977 2010-11-01 MORITA Hajime <morrita (a] google.com> 20978 20979 Reviewed by Kent Tamura. 20980 20981 @spellcheck attribute at the child of contentEditable node is ignored. 20982 https://bugs.webkit.org/show_bug.cgi?id=48418 20983 20984 Changed to check spellcheck availability against a node under the 20985 selection (caret) instead of the focus. For shadow elements, the 20986 check now refers its host node. Note that the original code didn't 20987 care shadows because focus is never set on them. 20988 20989 Test: editing/spelling/spelling-attribute-at-child.html 20990 20991 * dom/Element.h: 20992 * editing/Editor.cpp: 20993 (WebCore::Editor::markMisspellingsOrBadGrammar): 20994 (WebCore::Editor::isSpellCheckingEnabledFor): 20995 (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): Now just calling isSpellCheckingEnabledFor() 20996 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 20997 * editing/Editor.h: 20998 * platform/ContextMenu.cpp: 20999 (WebCore::ContextMenu::populate): 21000 * rendering/TextControlInnerElements.cpp: 21001 (WebCore::TextControlInnerElement::isSpellCheckingEnabled): Added. 21002 * rendering/TextControlInnerElements.h: 21003 21004 2010-11-01 Martin Robinson <mrobinson (a] igalia.com> 21005 21006 Reviewed by Daniel Bates. 21007 21008 [GTK] PopupMenuGtk has a very confusing if-else block 21009 https://bugs.webkit.org/show_bug.cgi?id=48816 21010 21011 Small code cleanup for PopupMenuGtk. 21012 21013 * platform/gtk/PopupMenuGtk.cpp: 21014 (WebCore::PopupMenuGtk::show): 21015 21016 2010-11-01 Adam Barth <abarth (a] webkit.org> 21017 21018 Reviewed by Eric Seidel. 21019 21020 [Chromium] Add ICC support for PNG on Mac 21021 https://bugs.webkit.org/show_bug.cgi?id=48170 21022 21023 This just pipes the ICC profile from libpng to CoreGraphics. This 21024 patch would have been a lot prettier on Snow Leopard, but we have to 21025 use a somewhat ugly API to get this to work on Leopard. 21026 21027 This is covered by about infinite tests. 21028 21029 * platform/image-decoders/ImageDecoder.cpp: 21030 (WebCore::RGBA32Buffer::setColorProfile): 21031 * platform/image-decoders/ImageDecoder.h: 21032 * platform/image-decoders/cg/ImageDecoderCG.cpp: 21033 (WebCore::RGBA32Buffer::asNewNativeImage): 21034 * platform/image-decoders/png/PNGImageDecoder.cpp: 21035 (WebCore::PNGImageDecoder::headerAvailable): 21036 (WebCore::PNGImageDecoder::rowAvailable): 21037 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 21038 (WebCore::RGBA32Buffer::setColorProfile): 21039 * platform/image-decoders/skia/ImageDecoderSkia.cpp: 21040 (WebCore::RGBA32Buffer::setColorProfile): 21041 21042 2010-11-01 Chang Shu <chang.shu (a] nokia.com> 21043 21044 Reviewed by Antonio Gomes. 21045 21046 Leave SelectElement key handling without setting event default 21047 handled when the selection reaches the boundary so focus can 21048 move to neighbor nodes in spatial navigation. 21049 https://bugs.webkit.org/show_bug.cgi?id=48145 21050 21051 * dom/SelectElement.cpp: 21052 (WebCore::SelectElement::listBoxDefaultEventHandler): 21053 21054 2010-11-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 21055 21056 Unreviewed, rolling out r71080. 21057 http://trac.webkit.org/changeset/71080 21058 https://bugs.webkit.org/show_bug.cgi?id=48815 21059 21060 This change caused many crashes on the debug bot. (Requested 21061 by mrobinson on #webkit). 21062 21063 * platform/network/soup/SocketStreamHandle.h: 21064 * platform/network/soup/SocketStreamHandleSoup.cpp: 21065 (WebCore::isActiveHandle): 21066 (WebCore::deactivateHandle): 21067 (WebCore::SocketStreamHandle::SocketStreamHandle): 21068 (WebCore::SocketStreamHandle::connected): 21069 (WebCore::SocketStreamHandle::readBytes): 21070 (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): 21071 (WebCore::connectedCallback): 21072 (WebCore::readReadyCallback): 21073 (WebCore::writeReadyCallback): 21074 21075 2010-11-01 Martin Robinson <mrobinson (a] igalia.com> 21076 21077 Reviewed by Xan Lopez. 21078 21079 [Soup] Random crashes in http/tests/websocket/tests/workers/worker-handshake-challenge-randomness.html 21080 https://bugs.webkit.org/show_bug.cgi?id=48805 21081 21082 Track active WebSocket handles via a sequential id. This ensures 21083 that when a handle is reallocated into a recently used segment of 21084 memory, it doesn't trigger a false positive in the code which ensures 21085 the original handle is active. 21086 21087 No new tests. This test should stop crashing on the bots, proving the fix. 21088 21089 * platform/network/soup/SocketStreamHandle.h: 21090 (WebCore::SocketStreamHandle::id): Added an m_id member and accessor 21091 to SocketStreamHandle. 21092 * platform/network/soup/SocketStreamHandleSoup.cpp: 21093 (WebCore::getHandleFromId): Updated to work with HashMap of handle ids to 21094 SocketStreamHandle*. 21095 (WebCore::deactivateHandle): Ditto. 21096 (WebCore::activateHandle): Ditto. 21097 (WebCore::SocketStreamHandle::SocketStreamHandle): Ditto. 21098 (WebCore::SocketStreamHandle::connected): Ditto. 21099 (WebCore::SocketStreamHandle::readBytes): Ditto. 21100 (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Ditto. 21101 (WebCore::connectedCallback): Ditto. 21102 (WebCore::readReadyCallback): Ditto. 21103 (WebCore::writeReadyCallback): Ditto. 21104 21105 2010-11-01 Kent Tamura <tkent (a] chromium.org> 21106 21107 Unreviewed. Run sort-Xcode-project-file. 21108 21109 * WebCore.xcodeproj/project.pbxproj: 21110 21111 2010-11-01 Simon Fraser <simon.fraser (a] apple.com> 21112 21113 Reviewed by Dan Bernstein. 21114 21115 Assertion failure in FrameView::layout when clicking on a YouTube video on youtube.com front page 21116 https://bugs.webkit.org/show_bug.cgi?id=44287 21117 21118 When removing subframes, it's possible for layout() to get called on a FrameView 21119 for a Frame that has been removed from the frame tree. This can happen if the parent 21120 document happens to do a layout() while RenderView still has a reference to the widget 21121 for the removed frame; updateWidgetPosition() will try to force a layout() on the 21122 subframe. 21123 21124 Fix by checking that the FrameView's Frame still has a reference to the page before 21125 calling layout() on the subframe. 21126 21127 Test: fast/frames/layout-after-destruction.html 21128 21129 * rendering/RenderWidget.cpp: 21130 (WebCore::RenderWidget::updateWidgetPosition): 21131 21132 2010-11-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 21133 21134 Unreviewed, rolling out r71065. 21135 http://trac.webkit.org/changeset/71065 21136 https://bugs.webkit.org/show_bug.cgi?id=48801 21137 21138 Seem to breake a lot of tests on Chromium bots (Requested by 21139 dimich on #webkit). 21140 21141 * platform/image-decoders/ImageDecoder.cpp: 21142 * platform/image-decoders/ImageDecoder.h: 21143 * platform/image-decoders/cg/ImageDecoderCG.cpp: 21144 (WebCore::RGBA32Buffer::asNewNativeImage): 21145 * platform/image-decoders/png/PNGImageDecoder.cpp: 21146 (WebCore::PNGImageDecoder::headerAvailable): 21147 (WebCore::PNGImageDecoder::rowAvailable): 21148 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 21149 * platform/image-decoders/skia/ImageDecoderSkia.cpp: 21150 21151 2010-11-01 Matthew Delaney <mdelaney (a] apple.com> 21152 21153 Reviewed by Simon Fraser. 21154 21155 Setting attr repeatDur=0 on SVG element causes hang 21156 https://bugs.webkit.org/show_bug.cgi?id=48785 21157 21158 Test: svg/animations/repeatDur-zero.xhtml 21159 21160 * svg/animation/SVGSMILElement.cpp: Fixing bound checking for legal repeatDur values. 21161 21162 2010-10-31 Adam Barth <abarth (a] webkit.org> 21163 21164 Reviewed by Eric Seidel. 21165 21166 [Chromium] Add ICC support for PNG on Mac 21167 https://bugs.webkit.org/show_bug.cgi?id=48170 21168 21169 This just pipes the ICC profile from libpng to CoreGraphics. This 21170 patch would have been a lot prettier on Snow Leopard, but we have to 21171 use a somewhat ugly API to get this to work on Leopard. 21172 21173 This is covered by about infinite tests. 21174 21175 * platform/image-decoders/ImageDecoder.cpp: 21176 (WebCore::RGBA32Buffer::setColorProfile): 21177 * platform/image-decoders/ImageDecoder.h: 21178 * platform/image-decoders/cg/ImageDecoderCG.cpp: 21179 (WebCore::RGBA32Buffer::asNewNativeImage): 21180 * platform/image-decoders/png/PNGImageDecoder.cpp: 21181 (WebCore::PNGImageDecoder::headerAvailable): 21182 (WebCore::PNGImageDecoder::rowAvailable): 21183 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 21184 (WebCore::RGBA32Buffer::setColorProfile): 21185 * platform/image-decoders/skia/ImageDecoderSkia.cpp: 21186 (WebCore::RGBA32Buffer::setColorProfile): 21187 21188 2010-11-01 David Hyatt <hyatt (a] apple.com> 21189 21190 Reviewed by Dan Bernstein. 21191 21192 https://bugs.webkit.org/show_bug.cgi?id=48776 21193 21194 Change isVertical() on InlineBox to isHorizontal() instead. This makes the horizontal code path come 21195 first if you branch on isHorizontal() and makes the code read better (since that's the more common code 21196 path). 21197 21198 * rendering/InlineBox.cpp: 21199 (WebCore::InlineBox::logicalHeight): 21200 * rendering/InlineBox.h: 21201 (WebCore::InlineBox::InlineBox): 21202 (WebCore::InlineBox::isHorizontal): 21203 (WebCore::InlineBox::setIsHorizontal): 21204 (WebCore::InlineBox::width): 21205 (WebCore::InlineBox::height): 21206 (WebCore::InlineBox::logicalLeft): 21207 (WebCore::InlineBox::setLogicalLeft): 21208 (WebCore::InlineBox::logicalTop): 21209 (WebCore::InlineBox::setLogicalTop): 21210 (WebCore::InlineBox::baselinePosition): 21211 (WebCore::InlineBox::lineHeight): 21212 * rendering/InlineFlowBox.cpp: 21213 (WebCore::InlineFlowBox::addToLine): 21214 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 21215 (WebCore::InlineFlowBox::computeBlockDirectionOverflow): 21216 (WebCore::InlineFlowBox::paintFillLayer): 21217 (WebCore::InlineFlowBox::paintBoxDecorations): 21218 (WebCore::InlineFlowBox::paintMask): 21219 * rendering/InlineFlowBox.h: 21220 (WebCore::InlineFlowBox::marginLogicalLeft): 21221 (WebCore::InlineFlowBox::marginLogicalRight): 21222 (WebCore::InlineFlowBox::borderLogicalLeft): 21223 (WebCore::InlineFlowBox::borderLogicalRight): 21224 (WebCore::InlineFlowBox::paddingLogicalLeft): 21225 (WebCore::InlineFlowBox::paddingLogicalRight): 21226 (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions): 21227 (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions): 21228 * rendering/InlineTextBox.cpp: 21229 (WebCore::InlineTextBox::selectionRect): 21230 (WebCore::InlineTextBox::applyShadowToGraphicsContext): 21231 (WebCore::paintTextWithShadows): 21232 (WebCore::InlineTextBox::paint): 21233 (WebCore::InlineTextBox::paintDecoration): 21234 * rendering/InlineTextBox.h: 21235 * rendering/RenderBlockLineLayout.cpp: 21236 (WebCore::RenderBlock::createLineBoxes): 21237 * rendering/RenderBox.cpp: 21238 (WebCore::RenderBox::blockDirectionOverflow): 21239 * rendering/RenderBox.h: 21240 * rendering/RenderBoxModelObject.cpp: 21241 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 21242 * rendering/RenderLineBoxList.cpp: 21243 (WebCore::RenderLineBoxList::hitTest): 21244 * rendering/RootInlineBox.cpp: 21245 (WebCore::RootInlineBox::RootInlineBox): 21246 (WebCore::RootInlineBox::placeEllipsis): 21247 * rendering/RootInlineBox.h: 21248 (WebCore::RootInlineBox::baselinePosition): 21249 (WebCore::RootInlineBox::lineHeight): 21250 21251 2010-11-01 Simon Fraser <simon.fraser (a] apple.com> 21252 21253 Reviewed by Dave Hyatt. 21254 21255 Multiple background properties are not retrievable via DOM method getComputedStyle 21256 https://bugs.webkit.org/show_bug.cgi?id=23203 21257 21258 Return lists of values from getComputedStyle() for multiple backgrounds, 21259 and multiple masks. 21260 21261 Test: fast/backgrounds/multiple-backgrounds-computed-style.html 21262 21263 * css/CSSComputedStyleDeclaration.cpp: 21264 (WebCore::fillSizeToCSSValue): 21265 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 21266 21267 2010-11-01 David Hyatt <hyatt (a] apple.com> 21268 21269 Reviewed by Dan Bernstein. 21270 21271 https://bugs.webkit.org/show_bug.cgi?id=48663 21272 21273 Make repaint invalidation work with vertical lines. Rewrite linesBoundingBox for RenderText and 21274 RenderInline to give the correct rectangle back for vertical lines. Also patch linesVisibleOverflowBoundingBox 21275 to give back the correct rectangle for vertical lines. 21276 21277 Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0. 21278 21279 Patch hit testing to also account for "rt" and "bt" blocks. 21280 21281 * rendering/InlineBox.cpp: 21282 (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): 21283 * rendering/InlineFlowBox.cpp: 21284 (WebCore::InlineFlowBox::nodeAtPoint): 21285 * rendering/InlineFlowBox.h: 21286 (WebCore::InlineFlowBox::logicalLeftVisibleOverflow): 21287 (WebCore::InlineFlowBox::logicalRightVisibleOverflow): 21288 (WebCore::InlineFlowBox::bottomLayoutOverflow): 21289 (WebCore::InlineFlowBox::rightLayoutOverflow): 21290 (WebCore::InlineFlowBox::bottomVisualOverflow): 21291 (WebCore::InlineFlowBox::rightVisualOverflow): 21292 * rendering/InlineTextBox.cpp: 21293 (WebCore::InlineTextBox::nodeAtPoint): 21294 * rendering/RenderBlock.cpp: 21295 (WebCore::RenderBlock::hitTestFloats): 21296 (WebCore::RenderBlock::hitTestContents): 21297 * rendering/RenderBox.cpp: 21298 (WebCore::RenderBox::computeRectForRepaint): 21299 (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): 21300 * rendering/RenderBox.h: 21301 * rendering/RenderInline.cpp: 21302 (WebCore::RenderInline::linesBoundingBox): 21303 (WebCore::RenderInline::linesVisibleOverflowBoundingBox): 21304 (WebCore::RenderInline::clippedOverflowRectForRepaint): 21305 * rendering/RenderText.cpp: 21306 (WebCore::RenderText::linesBoundingBox): 21307 21308 2010-11-01 Brady Eidson <beidson (a] apple.com> 21309 21310 Reviewed by Anders Carlsson. 21311 21312 <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699 21313 Context menu support for WebKit 2. 21314 21315 Add a "showContextMenu" call to Chrome/ChromeClient: 21316 * loader/EmptyClients.h: 21317 (WebCore::EmptyChromeClient::showContextMenu): 21318 * page/Chrome.cpp: 21319 (WebCore::Chrome::showContextMenu): 21320 * page/Chrome.h: 21321 * page/ChromeClient.h: 21322 21323 Add a "platform description to ContextMenuItem" creator, will be needed by WebKit2 21324 * platform/ContextMenu.h: 21325 * platform/mac/ContextMenuMac.mm: 21326 (WebCore::contextMenuItemVector): 21327 21328 * platform/mac/ContextMenuItemMac.mm: 21329 (WebCore::ContextMenuItem::checked): WebKit2 ports now need this implemented. 21330 21331 Stub these out to keep their WK2 ports building: 21332 * platform/qt/ContextMenuItemQt.cpp: 21333 (WebCore::ContextMenuItem::checked): 21334 * platform/qt/ContextMenuQt.cpp: 21335 (WebCore::contextMenuItemVector): 21336 * platform/win/ContextMenuItemWin.cpp: 21337 (WebCore::ContextMenuItem::checked): 21338 * platform/win/ContextMenuWin.cpp: 21339 (WebCore::contextMenuItemVector): 21340 21341 2010-11-01 Eric Carlson <eric.carlson (a] apple.com> 21342 21343 Reviewed by Adam Roben. 21344 21345 Seeking by very small increment doesn't generate 'seeked' event 21346 https://bugs.webkit.org/show_bug.cgi?id=48530 21347 21348 Test: media/video-seek-by-small-increment.html 21349 21350 * html/HTMLMediaElement.cpp: 21351 (WebCore::HTMLMediaElement::seek): Ask the media engine for its closest time value so we can 21352 avoid asking it to seek to the current time. 21353 21354 * platform/graphics/MediaPlayer.cpp: 21355 (WebCore::MediaPlayer::mediaTimeForTimeValue): New. 21356 * platform/graphics/MediaPlayer.h: 21357 * platform/graphics/MediaPlayerPrivate.h: 21358 (WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue): Ditto. 21359 21360 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: 21361 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 21362 (WebCore::MediaPlayerPrivate::mediaTimeForTimeValue): Return the closest value in the movie's time scale. 21363 21364 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 21365 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue): Ditto 21366 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 21367 21368 * platform/graphics/win/QTMovie.cpp: 21369 (QTMovie::timeScale): Return the movie's time scale. 21370 * platform/graphics/win/QTMovie.h: 21371 21372 2010-11-01 Pavel Feldman <pfeldman (a] chromium.org> 21373 21374 Not reviewed: Chromium build fix. Adding missing transitive dependency. 21375 21376 * inspector/InspectorResourceAgent.cpp: 21377 21378 2010-11-01 Pavel Feldman <pfeldman (a] chromium.org> 21379 21380 Not reviewed. Removing references to removed file from project files. 21381 21382 * WebCore.gypi: 21383 * inspector/front-end/WebKit.qrc: 21384 * inspector/front-end/inspector.css: 21385 21386 2010-11-01 Pavel Feldman <pfeldman (a] chromium.org> 21387 21388 Reviewed by Timothy Hatcher. 21389 21390 Web Inspector: remove old resources panel. 21391 https://bugs.webkit.org/show_bug.cgi?id=45657 21392 21393 * CMakeLists.txt: 21394 * English.lproj/localizedStrings.js: 21395 * GNUmakefile.am: 21396 * WebCore.gypi: 21397 * WebCore.pro: 21398 * WebCore.vcproj/WebCore.vcproj: 21399 * WebCore.xcodeproj/project.pbxproj: 21400 * bindings/js/JSInjectedScriptHostCustom.cpp: 21401 * inspector/InjectedScriptHost.cpp: 21402 * inspector/Inspector.idl: 21403 * inspector/InspectorCSSStore.cpp: 21404 * inspector/InspectorController.cpp: 21405 (WebCore::InspectorController::~InspectorController): 21406 (WebCore::InspectorController::connectFrontend): 21407 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 21408 (WebCore::InspectorController::populateScriptObjects): 21409 (WebCore::InspectorController::unbindAllResources): 21410 (WebCore::InspectorController::didCommitLoad): 21411 (WebCore::InspectorController::frameDetachedFromParent): 21412 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 21413 (WebCore::InspectorController::identifierForInitialRequest): 21414 (WebCore::InspectorController::willSendRequest): 21415 (WebCore::InspectorController::markResourceAsCached): 21416 (WebCore::InspectorController::didReceiveResponse): 21417 (WebCore::InspectorController::didReceiveContentLength): 21418 (WebCore::InspectorController::didFinishLoading): 21419 (WebCore::InspectorController::didFailLoading): 21420 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 21421 (WebCore::InspectorController::scriptImported): 21422 (WebCore::InspectorController::didCreateWebSocket): 21423 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 21424 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 21425 (WebCore::InspectorController::didCloseWebSocket): 21426 * inspector/InspectorController.h: 21427 * inspector/InspectorFrontendHost.cpp: 21428 * inspector/InspectorResource.cpp: Removed. 21429 * inspector/InspectorResource.h: Removed. 21430 * inspector/InspectorResourceAgent.cpp: 21431 (WebCore::InspectorResourceAgent::setOverrideContent): 21432 * inspector/InspectorResourceAgent.h: 21433 * inspector/front-end/ConsoleView.js: 21434 (WebInspector.ConsoleView.prototype.addMessage): 21435 (WebInspector.ConsoleView.prototype.clearMessages): 21436 * inspector/front-end/ExtensionServer.js: 21437 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 21438 * inspector/front-end/Images/resourcesSilhouette.png: Removed. 21439 * inspector/front-end/Resource.js: 21440 * inspector/front-end/ResourceManager.js: 21441 (WebInspector.ResourceManager.getContent): 21442 * inspector/front-end/ResourcesPanel.js: Removed. 21443 * inspector/front-end/Settings.js: 21444 * inspector/front-end/StoragePanel.js: 21445 (WebInspector.StoragePanel): 21446 (WebInspector.StoragePanel.prototype.get toolbarItemLabel): 21447 * inspector/front-end/WebKit.qrc: 21448 * inspector/front-end/inspector.html: 21449 * inspector/front-end/inspector.js: 21450 (WebInspector._createPanels): 21451 (WebInspector.get networkResources): 21452 (WebInspector.forAllResources): 21453 (WebInspector.resourceForURL): 21454 (WebInspector.doLoadedDone.populateInspectorState): 21455 (WebInspector.openResource): 21456 (WebInspector.domContentEventFired): 21457 (WebInspector.loadEventFired): 21458 (WebInspector.reset): 21459 (WebInspector._choosePanelToShowSourceLine): 21460 21461 2010-10-28 Zhenyao Mo <zmo (a] google.com> 21462 21463 Reviewed by Kenneth Russell. 21464 21465 Fix enum naming style violation in GraphicsContext3D 21466 https://bugs.webkit.org/show_bug.cgi?id=48441 21467 21468 * platform/graphics/GraphicsContext3D.cpp: 21469 (WebCore::GraphicsContext3D::extractImageData): 21470 (WebCore::GraphicsContext3D::extractTextureData): 21471 (WebCore::doPacking): 21472 (WebCore::GraphicsContext3D::packPixels): 21473 * platform/graphics/GraphicsContext3D.h: 21474 * platform/graphics/cg/GraphicsContext3DCG.cpp: 21475 (WebCore::getSourceDataFormat): 21476 (WebCore::GraphicsContext3D::getImageData): 21477 * platform/graphics/skia/GraphicsContext3DSkia.cpp: 21478 (WebCore::GraphicsContext3D::getImageData): 21479 21480 2010-11-01 Martin Robinson <mrobinson (a] igalia.com> 21481 21482 Reviewed by Xan Lopez. 21483 21484 [GTK] Pasting markup into Thunderbird compose window produces no text 21485 https://bugs.webkit.org/show_bug.cgi?id=43737 21486 21487 Include a content-type meta tag prefix on all clipboard markup. Programs like 21488 Thunderbird expect this meta tag and will not paste anything unless it is there. 21489 21490 This is covered by changes to WebKit/gtk/tests/testcopyandpaste.c. This patch was 21491 written in such a way as to not affect layout test results, otherwise there 21492 would be many new GTK+-specific results that say "FAIL"). 21493 21494 * platform/gtk/PasteboardHelper.cpp: 21495 (WebCore::removeMarkupPrefix): Added this helper which removes the prefix 21496 when found on incoming clipboard and drag-and-drop text. 21497 (WebCore::PasteboardHelper::getClipboardContents): Remove the meta tag prefix. 21498 (WebCore::PasteboardHelper::fillSelectionData): Add the meta tag prefix. 21499 (WebCore::PasteboardHelper::fillDataObjectFromDropData): Remove the meta tag prefix 21500 21501 2010-11-01 Justin Schuh <jschuh (a] chromium.org> 21502 21503 Reviewed by Dirk Schulze. 21504 21505 Check for NULL node in SVGUseElement::associateInstancesWithShadowTreeElements loop 21506 https://bugs.webkit.org/show_bug.cgi?id=48741 21507 21508 Test: svg/custom/use-on-use-with-child-and-empty-target.svg 21509 21510 * svg/SVGUseElement.cpp: 21511 (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements): 21512 21513 2010-11-01 Mario Sanchez Prada <msanchez (a] igalia.com> 21514 21515 Reviewed by Martin Robinson. 21516 21517 [Gtk] AtkHyperlink needs to be implemented 21518 https://bugs.webkit.org/show_bug.cgi?id=33785 21519 21520 Implemented the AtkHyperlink/AtkHypertext stuff in the GTK port. 21521 21522 Even thought these kind of tasks are usually about implementing an 21523 interface, in this case it was needed to implement some more 21524 things due to the fact that AtkHyperlink is neither an interface 21525 nor an AtkObject, but just an abstract class child of GObject that 21526 needs to be redefined in a specific subclass of that one. On top 21527 of that, it was needed to implement the AtkAction interface as 21528 well for that new class, so exposed hyperlinks can work as 21529 expected with Assistive Technologies based on ATK. 21530 21531 Furthermore, as there's no mechanism to get an instance of that 21532 AtkHyperlink other than doing it through an AtkObject implementing 21533 the AtkHypertext interface, it was needed to also add the code to 21534 implement that one, so it makes possible to ask for the 21535 'hyperlinks' under an 'hypertext' accessible object. 21536 21537 Finally, to complete the implementation of all this stuff and make 21538 it all consistent, it was needed as well to implement the 21539 AtkHyperlinkImpl interface (providing just one method only) so 21540 that allows retrieving the AtkHyperlink object associated to an 21541 AtkObject implementing such an interface. 21542 21543 * GNUmakefile.am: Add the new WebKitAccessibleHyperlink.[h|cpp] 21544 files to the sources list for the GTK port. 21545 21546 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 21547 (core): New function to return the core accessibility object 21548 related to an AtkObject implementing the AtkHypertext interface. 21549 (webkitAccessibleHypertextGetLink): New, part of the 21550 implementation of the AtkHypertext interface. 21551 (webkitAccessibleHypertextGetNLinks): New, likewise. 21552 (webkitAccessibleHypertextGetLinkIndex): New, likewise. 21553 (atkHypertextInterfaceInit): New, initialize the AtkHypertext 21554 interface. 21555 (webkitAccessibleHyperlinkImplGetHyperlink): New, part of the 21556 implementation of the AtkHyperlinkImpl interface. 21557 (atkHyperlinkImplInterfaceInit): New, initialize the 21558 AtkHyperlinkImpl interface. 21559 (GetAtkInterfaceTypeFromWAIType): Add ATK_TYPE_HYPERTEXT and 21560 ATK_TYPE_HYPERLINK_IMPL to the list of recognized types. 21561 (getInterfaceMaskFromObject): Decide when it's needed to add 21562 WAI_HYPERTEXT and WAI_HYPERLINK to the interface mask. 21563 21564 * accessibility/gtk/WebKitAccessibleHyperlink.h: Added. 21565 * accessibility/gtk/WebKitAccessibleHyperlink.cpp: Added. 21566 (returnString): Return (const char*) from String variables. 21567 (core): Return the associated AccessibilityObject. 21568 (webkitAccessibleHyperlinkActionDoAction): Part of the 21569 implementation of the AtkAction interface. 21570 (webkitAccessibleHyperlinkActionGetNActions): Likewise. 21571 (webkitAccessibleHyperlinkActionGetDescription): Likewise. 21572 (webkitAccessibleHyperlinkActionGetKeybinding): Likewise. 21573 (webkitAccessibleHyperlinkActionGetName): Likewise. 21574 (atkActionInterfaceInit): Initialize the AtkAction interface. 21575 (getRangeLengthForObject): Returns the length for a given Range, 21576 considering special cases (e.g. List item markers). 21577 (webkitAccessibleHyperlinkGetURI): Implementation of one of the 21578 methods in the AtkHyperlink abstract class. 21579 (webkitAccessibleHyperlinkGetObject): Likewise. 21580 (webkitAccessibleHyperlinkGetStartIndex): Likewise. 21581 (webkitAccessibleHyperlinkGetEndIndex): Likewise. 21582 (webkitAccessibleHyperlinkIsValid): Likewise. 21583 (webkitAccessibleHyperlinkGetNAnchors): Likewise. 21584 (webkitAccessibleHyperlinkIsSelectedLink): Likewise. 21585 (webkitAccessibleHyperlinkGetProperty): Getter method. 21586 (webkitAccessibleHyperlinkSetProperty): Setter method. 21587 (webkitAccessibleHyperlinkFinalize): Finalize method. 21588 (webkitAccessibleHyperlinkClassInit): Initialize the 21589 WebKitAccessibleHyperlink class. 21590 (webkitAccessibleHyperlinkInit): Initialize the 21591 WebKitAccessibleHyperlink instance. 21592 (webkitAccessibleHyperlinkGetType): Implementation of the 21593 get_type() function for the WebKitAccessibleHyperlink class. 21594 (webkitAccessibleHyperlinkNew): Returns an instance of the class 21595 associated to a given AtkHyperlinkImpl object. 21596 (webkitAccessibleHyperlinkGetAccessibilityObject): Public function 21597 returning the AccessibilityObject associated to the instance of 21598 the WebKitAccessibleHyperlink class. 21599 21600 2010-11-01 Pavel Feldman <pfeldman (a] chromium.org> 21601 21602 Not reviewed: simplify inspector styles test to make all bots happy. 21603 (drive-by fix for overriden inspector styles in network panel). 21604 21605 * inspector/InspectorController.h: 21606 * inspector/front-end/networkPanel.css: 21607 21608 2010-11-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 21609 21610 Reviewed by Rob Buis. 21611 21612 Enable StrictTypeChecking for all types using SVG(Animated)PropertyTearOff 21613 https://bugs.webkit.org/show_bug.cgi?id=48715 21614 21615 Enable StrictTypeChecking for all readwrite attributes and function calls of all types using the new SVG(Animated)PropertyTearOff concept. 21616 Also enable RequiresAllArguments=Raise for all function calls of these new types. Cover this functionality by tests for each of them. 21617 21618 When testing SVGLength it became obvious that quite a lot of functionality was missing. 21619 Conversion from relative arguments (percentage, ems, exs) to user specified units was missing, added that functionality and tested it. 21620 User units to pt conversion was wrong, fixed that. 21621 21622 Tests: svg/dom/SVGAnimatedAngle.html 21623 svg/dom/SVGAnimatedBoolean.html 21624 svg/dom/SVGAnimatedEnumeration.html 21625 svg/dom/SVGAnimatedInteger.html 21626 svg/dom/SVGAnimatedLength.html 21627 svg/dom/SVGAnimatedLengthList.html 21628 svg/dom/SVGAnimatedRect.html 21629 svg/dom/SVGLength-px-with-context.html 21630 svg/dom/SVGLength-px.html 21631 svg/dom/SVGLength.html 21632 21633 * bindings/js/JSSVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that. 21634 (WebCore::JSSVGLength::value): 21635 (WebCore::JSSVGLength::setValue): 21636 (WebCore::JSSVGLength::convertToSpecifiedUnits): 21637 * bindings/scripts/CodeGeneratorObjC.pm: Remove FIXMEs, pass real context instead off null pointer. DOMSVGLength::value is functional now. 21638 * bindings/v8/custom/V8SVGLengthCustom.cpp: These SVGLength methods now take an ExceptionCode parameter, adapt to that. 21639 (WebCore::V8SVGLength::valueAccessorGetter): 21640 (WebCore::V8SVGLength::valueAccessorSetter): 21641 (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback): 21642 * rendering/style/SVGRenderStyle.h: Adapt to SVGLength API changes. 21643 (WebCore::SVGRenderStyle::initialBaselineShiftValue): 21644 (WebCore::SVGRenderStyle::initialKerning): 21645 (WebCore::SVGRenderStyle::initialStrokeDashOffset): 21646 (WebCore::SVGRenderStyle::initialStrokeWidth): 21647 * svg/SVGAngle.idl: Add StrictTypeChecking, RequiresAllArguments=Raise to all methods. 21648 * svg/SVGAnimatedBoolean.idl: Remove StrictTypeChecking from animVal, it's readonly so this is useless. 21649 * svg/SVGAnimatedEnumeration.idl: Add StrictTypeChecking to all attributes. 21650 * svg/SVGAnimatedInteger.idl: Ditto. 21651 * svg/SVGLength.cpp: Implement all missing features of SVGLength. Conform to our style guide (s/.0f// etc) 21652 (WebCore::lengthTypeToString): 21653 (WebCore::SVGLength::SVGLength): 21654 (WebCore::SVGLength::value): Throw NOT_SUPPORTED_ERR when trying to obtain to relative units, when no context is given (SVGLength created by createSVGLength()). 21655 (WebCore::SVGLength::setValue): Ditto, for the setter. 21656 (WebCore::SVGLength::valueAsPercentage): Use m_valueInSpecifiedUnits instead of valueInSpecifiedUnits(). 21657 (WebCore::SVGLength::setValueAsString): Throw SYNTAX_ERR if parsing failed. 21658 (WebCore::SVGLength::valueAsString): Use makeString() instead of String and operator+. 21659 (WebCore::SVGLength::newValueSpecifiedUnits): Add ExceptionCode parameter, throw NOT_SUPPORTED_ERR, if the given unit type is invalid. 21660 (WebCore::SVGLength::convertToSpecifiedUnits): Ditto. 21661 (WebCore::SVGLength::determineViewport): Added helper function used by convertValue*Percentage*. 21662 (WebCore::SVGLength::convertValueFromUserUnitsToPercentage): Add new helper functions, used by value/setValue. 21663 (WebCore::SVGLength::convertValueFromPercentageToUserUnits): Ditto. 21664 (WebCore::SVGLength::convertValueFromUserUnitsToEMS): Ditto. 21665 (WebCore::SVGLength::convertValueFromEMSToUserUnits): Ditto. 21666 (WebCore::SVGLength::convertValueFromUserUnitsToEXS): Ditto. 21667 (WebCore::SVGLength::convertValueFromEXSToUserUnits): Ditto. 21668 (WebCore::SVGLength::fromCSSPrimitiveValue): Adapt to newValueSpecifiedUnits API change. 21669 (WebCore::SVGLength::toCSSPrimitiveValue): Remove default switch case. 21670 * svg/SVGLength.h: 21671 (WebCore::SVGLength::valueInSpecifiedUnits): Inlined. 21672 (WebCore::SVGLength::setValueInSpecifiedUnits): Ditto. 21673 (WebCore::SVGLength::isRelative): 21674 * svg/SVGLength.idl: Add StrictTypeChecking for all attributes/functions and RequiresAllArguments=Raise for all functions. 21675 * svg/SVGLengthList.cpp: Adapt to SVGLength API changes. 21676 (WebCore::SVGLengthList::parse): 21677 21678 2010-10-31 Pavel Feldman <pfeldman (a] chromium.org> 21679 21680 Reviewed by Timothy Hatcher. 21681 21682 Web Inspector: unhide new network and resources panels. 21683 https://bugs.webkit.org/show_bug.cgi?id=48725 21684 21685 * English.lproj/localizedStrings.js: 21686 * inspector/InspectorController.h: 21687 * inspector/front-end/NetworkPanel.js: 21688 (WebInspector.NetworkPanel): 21689 * inspector/front-end/Settings.js: 21690 * inspector/front-end/StoragePanel.js: 21691 (WebInspector.StoragePanel): 21692 (WebInspector.StoragePanel.prototype.reset): 21693 (WebInspector.StoragePanel.prototype.addResourceToFrame): 21694 (WebInspector.StoragePanel.prototype.addDocumentURL): 21695 (WebInspector.StoragePanel.prototype.showFileSystem): 21696 (WebInspector.FileSystemTreeElement): 21697 (WebInspector.FileSystemTreeElement.prototype.get itemURL): 21698 (WebInspector.FileSystemTreeElement.prototype.onselect): 21699 * inspector/front-end/inspector.js: 21700 (WebInspector.updateResource): 21701 * inspector/front-end/networkPanel.css: 21702 (#network-close-button): 21703 (.network.panel.viewing-resource #network-close-button): 21704 21705 2010-10-26 MORITA Hajime <morrita (a] google.com> 21706 21707 Reviewed by Kent Tamura. 21708 21709 Refactoring: Spellchecking related static functions could form a class 21710 https://bugs.webkit.org/show_bug.cgi?id=48287 21711 21712 Extracted spellcheck related static functions to TextCheckingHelper class, 21713 which has EditorClient and Range as its member. 21714 21715 No new tests. Just a refactoring. 21716 21717 * CMakeLists.txt: 21718 * GNUmakefile.am: 21719 * WebCore.gypi: 21720 * WebCore.pro: 21721 * WebCore.vcproj/WebCore.vcproj: 21722 * WebCore.xcodeproj/project.pbxproj: 21723 * editing/EditingAllInOne.cpp 21724 * editing/Editor.cpp: 21725 (WebCore::Editor::advanceToNextMisspelling): 21726 (WebCore::Editor::isSelectionUngrammatical): 21727 (WebCore::Editor::guessesForUngrammaticalSelection): 21728 (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection): 21729 (WebCore::Editor::markMisspellingsAfterTypingToPosition): 21730 (WebCore::Editor::markMisspellingsOrBadGrammar): 21731 (WebCore::Editor::markMisspellings): 21732 (WebCore::Editor::markBadGrammar): 21733 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 21734 (WebCore::Editor::changeBackToReplacedString): 21735 * editing/Editor.h: 21736 * editing/TextCheckingHelper.cpp: Added. 21737 (WebCore::TextCheckingHelper::TextCheckingHelper): 21738 (WebCore::TextCheckingHelper::~TextCheckingHelper): 21739 (WebCore::TextCheckingHelper::paragraphAlignedRange): 21740 (WebCore::TextCheckingHelper::findFirstMisspelling): 21741 (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar): 21742 (WebCore::TextCheckingHelper::findFirstGrammarDetail): 21743 (WebCore::TextCheckingHelper::findFirstBadGrammar): 21744 (WebCore::TextCheckingHelper::isUngrammatical): 21745 (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): 21746 (WebCore::TextCheckingHelper::markAllMisspellings): 21747 (WebCore::TextCheckingHelper::markAllBadGrammar): 21748 * editing/TextCheckingHelper.h: Added. 21749 21750 2010-10-31 Xan Lopez <xlopez (a] igalia.com> 21751 21752 Try to fix the GTK+ build. 21753 21754 Do not use broken/deprecated functions that won't be available 21755 with G_DISABLE_DEPRECATED (used in debug builds). 21756 21757 * plugins/gtk/PluginPackageGtk.cpp: 21758 (WebCore::PluginPackage::fetchInfo): 21759 21760 2010-10-31 Kenichi Ishibashi <bashi (a] google.com> 21761 21762 Reviewed by Adam Barth. 21763 21764 V8 binding for DOMSettableTokenList 21765 https://bugs.webkit.org/show_bug.cgi?id=47812 21766 21767 Tests for this change will be included in the change for supporting 21768 the <output> element. 21769 See https://bugs.webkit.org/show_bug.cgi?id=29363. 21770 21771 * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Implemented. 21772 (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): Just calls DOMSettableTokenList::item(index). 21773 21774 2010-10-31 Robert Hogan <robert (a] webkit.org> 21775 21776 Reviewed by Antonio Gomes. 21777 21778 [Qt] [Gtk] Plug-ins having upper case in mime type are failing to load 21779 21780 Qt and Gtk are case-sensitive when storing the declared mime-type 21781 of plugins. Since plugin mime-types are lowercased prior to searching 21782 for them in the plugin database, ensure they are loaded with the 21783 mime-type in lower case too. 21784 21785 https://bugs.webkit.org/show_bug.cgi?id=36815 21786 21787 * plugins/gtk/PluginPackageGtk.cpp: 21788 (WebCore::PluginPackage::fetchInfo): 21789 * plugins/qt/PluginPackageQt.cpp: 21790 (WebCore::PluginPackage::setMIMEDescription): 21791 21792 2010-10-31 Robert Hogan <robert (a] webkit.org> 21793 21794 Reviewed by Antonio Gomes. 21795 21796 [Qt] Support nodesFromRect in DRT 21797 21798 Pass a Document object as a QWebElement. 21799 21800 https://bugs.webkit.org/show_bug.cgi?id=48716 21801 21802 * bridge/qt/qt_runtime.cpp: 21803 (JSC::Bindings::convertValueToQVariant): 21804 21805 2010-10-31 Peter Kasting <pkasting (a] google.com> 21806 21807 Reviewed by Adam Barth. 21808 21809 Treat GIFs with no loop count as "loop once". 21810 https://bugs.webkit.org/show_bug.cgi?id=47302 21811 21812 Test: fast/images/gif-loop-count.html 21813 21814 * platform/image-decoders/gif/GIFImageDecoder.cpp: 21815 (WebCore::GIFImageDecoder::repetitionCount): 21816 (WebCore::GIFImageDecoder::gifComplete): 21817 21818 2010-10-31 No'am Rosenthal <noam.rosenthal (a] nokia.com> 21819 21820 Reviewed by Andreas Kling. 21821 21822 [Texmap] [Qt] Texture mapper initial implementation 21823 https://bugs.webkit.org/show_bug.cgi?id=47070 21824 21825 Build fix for X11. 21826 21827 No new tests; build fix. 21828 21829 * plugins/qt/PluginViewQt.cpp: 21830 (WebCore::PluginView::invalidateRect): 21831 (WebCore::PluginView::platformStart): 21832 21833 2010-10-31 Andreas Kling <kling (a] webkit.org> 21834 21835 Reviewed by Dirk Schulze. 21836 21837 Remove the unused GraphicsContext::clipOutEllipseInRect(IntRect) 21838 https://bugs.webkit.org/show_bug.cgi?id=48727 21839 21840 This function was added in <http://trac.webkit.org/changeset/18654> for CSS3 box-shadows. 21841 All use of the function was removed in <http://trac.webkit.org/changeset/21601> 21842 21843 * platform/graphics/GraphicsContext.h: 21844 * platform/graphics/cairo/GraphicsContextCairo.cpp: 21845 * platform/graphics/cg/GraphicsContextCG.cpp: 21846 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 21847 (WebCore::GraphicsContext::clipOut): 21848 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 21849 * platform/graphics/qt/GraphicsContextQt.cpp: 21850 * platform/graphics/skia/GraphicsContextSkia.cpp: 21851 (WebCore::GraphicsContext::clipOut): 21852 * platform/graphics/wince/GraphicsContextWinCE.cpp: 21853 * platform/graphics/wx/GraphicsContextWx.cpp: 21854 21855 2010-10-31 Andreas Kling <kling (a] webkit.org> 21856 21857 Reviewed by Dirk Schulze. 21858 21859 [Qt] Respect the "antialiased" argument in clipConvexPolygon() 21860 https://bugs.webkit.org/show_bug.cgi?id=48734 21861 21862 Set (or unset) the QPainter::Antialiased render hint for antialiased 21863 clipping based on the "antialiased" argument. 21864 21865 No test since Qt doesn't have pixel tests yet. 21866 21867 * platform/graphics/qt/GraphicsContextQt.cpp: 21868 (WebCore::GraphicsContext::clipConvexPolygon): 21869 21870 2010-10-31 Andreas Kling <kling (a] webkit.org> 21871 21872 Reviewed by Dirk Schulze. 21873 21874 Remove the unused GraphicsContext::strokeRect(FloatRect) 21875 https://bugs.webkit.org/show_bug.cgi?id=48726 21876 21877 This function was only implemented by GraphicsContextOpenVG and not 21878 called from anywhere. 21879 21880 * platform/graphics/GraphicsContext.h: 21881 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 21882 21883 2010-10-31 Andreas Kling <kling (a] webkit.org> 21884 21885 Reviewed by Dirk Schulze. 21886 21887 Remove the unused GraphicsContext::origin() 21888 https://bugs.webkit.org/show_bug.cgi?id=48732 21889 21890 This method was not called from anywhere. 21891 21892 * platform/graphics/GraphicsContext.h: 21893 * platform/graphics/cairo/GraphicsContextCairo.cpp: 21894 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 21895 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 21896 * platform/graphics/qt/GraphicsContextQt.cpp: 21897 * platform/graphics/wince/GraphicsContextWinCE.cpp: 21898 21899 2010-10-31 Andreas Kling <kling (a] webkit.org> 21900 21901 Reviewed by Dirk Schulze. 21902 21903 [Qt] Remove GraphicsContext::pen() 21904 https://bugs.webkit.org/show_bug.cgi?id=48733 21905 21906 Have PathQt obtain the pen() through the platformContext() instead. 21907 21908 * platform/graphics/GraphicsContext.h: 21909 * platform/graphics/qt/GraphicsContextQt.cpp: 21910 * platform/graphics/qt/PathQt.cpp: 21911 (WebCore::Path::strokeContains): 21912 (WebCore::Path::strokeBoundingRect): 21913 21914 2010-10-31 Sheriff Bot <webkit.review.bot (a] gmail.com> 21915 21916 Unreviewed, rolling out r70959. 21917 http://trac.webkit.org/changeset/70959 21918 https://bugs.webkit.org/show_bug.cgi?id=48731 21919 21920 It broke fast/events/spatial-navigation tests (Requested by 21921 Ossy on #webkit). 21922 21923 * WebCore.xcodeproj/project.pbxproj: 21924 * rendering/InlineBox.cpp: 21925 (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): 21926 * rendering/InlineFlowBox.h: 21927 (WebCore::InlineFlowBox::bottomLayoutOverflow): 21928 (WebCore::InlineFlowBox::rightLayoutOverflow): 21929 (WebCore::InlineFlowBox::bottomVisualOverflow): 21930 (WebCore::InlineFlowBox::rightVisualOverflow): 21931 * rendering/RenderBox.cpp: 21932 * rendering/RenderBox.h: 21933 * rendering/RenderInline.cpp: 21934 (WebCore::RenderInline::linesBoundingBox): 21935 (WebCore::RenderInline::linesVisibleOverflowBoundingBox): 21936 (WebCore::RenderInline::clippedOverflowRectForRepaint): 21937 * rendering/RenderText.cpp: 21938 (WebCore::RenderText::linesBoundingBox): 21939 21940 2010-10-30 Pavel Feldman <pfeldman (a] chromium.org> 21941 21942 Reviewed by Timothy Hatcher. 21943 21944 Web Inspector: new resources and network panel usability improvements. 21945 https://bugs.webkit.org/show_bug.cgi?id=48680 21946 21947 By default, navigation clears network log, added 'preserve log' button, 21948 that prevents log from being cleared. 21949 21950 Storing expanded state of all group items, restoring last selected item, 21951 fall back to main frame's main resource by default. 21952 Do not list XHRs and redirects in resources. 21953 21954 * English.lproj/localizedStrings.js: 21955 * inspector/InspectorController.cpp: 21956 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 21957 (WebCore::InspectorController::identifierForInitialRequest): 21958 * inspector/front-end/NetworkPanel.js: 21959 (WebInspector.NetworkPanel.prototype.get statusBarItems): 21960 (WebInspector.NetworkPanel.prototype._positionSummaryBar): 21961 (WebInspector.NetworkPanel.prototype._updateFilter): 21962 (WebInspector.NetworkPanel.prototype._createStatusbarButtons): 21963 (WebInspector.NetworkPanel.prototype._onPreserveLogClicked): 21964 (WebInspector.NetworkPanel.prototype.reset): 21965 (WebInspector.NetworkPanel.prototype.refreshResource): 21966 * inspector/front-end/ResourceManager.js: 21967 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 21968 (WebInspector.ResourceManager.prototype.willSendRequest): 21969 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 21970 (WebInspector.ResourceManager.prototype.setOverrideContent): 21971 (WebInspector.ResourceManager.prototype.didCreateWebSocket): 21972 * inspector/front-end/StoragePanel.js: 21973 (WebInspector.StoragePanel): 21974 (WebInspector.StoragePanel.prototype.show): 21975 (WebInspector.StoragePanel.prototype._initDefaultSelection): 21976 (WebInspector.StoragePanel.prototype.reset): 21977 (WebInspector.StoragePanel.prototype.addResourceToFrame): 21978 (WebInspector.StoragePanel.prototype.refreshResource): 21979 (WebInspector.StoragePanel.prototype.showDatabase): 21980 (WebInspector.BaseStorageTreeElement.prototype.onselect): 21981 (WebInspector.StorageCategoryTreeElement): 21982 (WebInspector.StorageCategoryTreeElement.prototype.get itemURL): 21983 (WebInspector.StorageCategoryTreeElement.prototype.onselect): 21984 (WebInspector.StorageCategoryTreeElement.prototype.onattach): 21985 (WebInspector.StorageCategoryTreeElement.prototype.onexpand): 21986 (WebInspector.StorageCategoryTreeElement.prototype.oncollapse): 21987 (WebInspector.FrameTreeElement.prototype.get itemURL): 21988 (WebInspector.FrameTreeElement.prototype.onselect): 21989 (WebInspector.FrameResourceTreeElement.prototype.get itemURL): 21990 (WebInspector.FrameResourceTreeElement.prototype.onselect): 21991 (WebInspector.DatabaseTreeElement.prototype.get itemURL): 21992 (WebInspector.DatabaseTreeElement.prototype.onselect): 21993 (WebInspector.DatabaseTableTreeElement.prototype.get itemURL): 21994 (WebInspector.DatabaseTableTreeElement.prototype.onselect): 21995 (WebInspector.DOMStorageTreeElement.prototype.get itemURL): 21996 (WebInspector.DOMStorageTreeElement.prototype.onselect): 21997 (WebInspector.CookieTreeElement.prototype.get itemURL): 21998 (WebInspector.CookieTreeElement.prototype.onselect): 21999 (WebInspector.ApplicationCacheTreeElement.prototype.get itemURL): 22000 (WebInspector.ApplicationCacheTreeElement.prototype.onselect): 22001 22002 2010-10-30 Patrick Gansterer <paroga (a] webkit.org> 22003 22004 Unreviewed, build fix after r70846. 22005 22006 * platform/graphics/wince/ImageWinCE.cpp: 22007 (WebCore::RGBA32Buffer::asNewNativeImage): 22008 22009 2010-10-30 Dimitri Glazkov <dglazkov (a] chromium.org> 22010 22011 Unreviewed, rolling out r70984. 22012 http://trac.webkit.org/changeset/70984 22013 https://bugs.webkit.org/show_bug.cgi?id=46015 22014 22015 Made media/audio-delete-while-slider-thumb-clicked.html crash. 22016 22017 * Android.mk: 22018 * CMakeLists.txt: 22019 * GNUmakefile.am: 22020 * WebCore.gypi: 22021 * WebCore.pro: 22022 * WebCore.xcodeproj/project.pbxproj: 22023 * dom/ContainerNode.cpp: 22024 (WebCore::notifyChildInserted): 22025 * dom/EventContext.cpp: Removed. 22026 * dom/EventContext.h: Removed. 22027 * dom/Node.cpp: 22028 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): 22029 (WebCore::Node::createRendererIfNeeded): 22030 (WebCore::Node::eventParentNode): 22031 (WebCore::Node::enclosingLinkEventParentOrSelf): 22032 (WebCore::eventTargetAsSVGElementInstance): 22033 (WebCore::eventTargetRespectingSVGTargetRules): 22034 (WebCore::Node::eventAncestors): 22035 (WebCore::Node::dispatchGenericEvent): 22036 * dom/Node.h: 22037 * dom/Text.cpp: 22038 (WebCore::Text::createRenderer): 22039 * dom/WindowEventContext.cpp: Removed. 22040 * dom/WindowEventContext.h: Removed. 22041 * inspector/InspectorDOMAgent.cpp: 22042 (WebCore::InspectorDOMAgent::getEventListenersForNode): 22043 * inspector/InspectorInstrumentation.cpp: 22044 (WebCore::eventHasListeners): 22045 (WebCore::InspectorInstrumentation::willDispatchEventImpl): 22046 * inspector/InspectorInstrumentation.h: 22047 (WebCore::InspectorInstrumentation::willDispatchEvent): 22048 * page/EventHandler.cpp: 22049 (WebCore::EventHandler::updateMouseEventTargetNode): 22050 * svg/SVGElement.cpp: 22051 (WebCore::SVGElement::eventParentNode): 22052 * svg/SVGElement.h: 22053 22054 2010-10-30 Dimitri Glazkov <dglazkov (a] chromium.org> 22055 22056 Reviewed by Darin Adler. 22057 22058 Implement shadow DOM-aware event targeting and introduce EventContext to track the context of each event dispatch. 22059 https://bugs.webkit.org/show_bug.cgi?id=46015 22060 22061 This patch adds the notion of EventContext (and a very similar-acting WindowEventContext, specifically 22062 for DOMWindow), an abstraction that carries information around dispatching an event for any given Node. 22063 22064 This abstraction is necessary to ensure that events, fired from shadow DOM nodes are properly retargeted to 22065 appear as if they are coming from their host, thus never exposing the shadow DOM nodes to the world outside. 22066 22067 * Android.mk: Added EventContext, WindowEventContext files. 22068 * CMakeLists.txt: Ditto. 22069 * GNUmakefile.am: Ditto. 22070 * WebCore.gypi: Ditto. 22071 * WebCore.pro: Ditto. 22072 * WebCore.xcodeproj/project.pbxproj: Ditto. 22073 * dom/ContainerNode.cpp: 22074 (WebCore::notifyChildInserted): Changed to be shadow DOM-aware. 22075 * dom/EventContext.cpp: Added. 22076 * dom/EventContext.h: Added. 22077 * dom/Node.cpp: 22078 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Changed to be shadow DOM-aware. 22079 (WebCore::Node::createRendererIfNeeded): Ditto. 22080 (WebCore::Node::parentOrHostNode): Added new helper method. 22081 (WebCore::Node::enclosingLinkEventParentOrSelf): Changed to be shadow DOM-aware. 22082 (WebCore::eventTargetRespectingSVGTargetRules): Collapsed two helper methods into one. 22083 (WebCore::Node::eventAncestors): Refactored to collect a vector of EventContexts. 22084 (WebCore::Node::topEventContext): Added. 22085 (WebCore::eventHasListeners): Changed to use EventContexts. 22086 (WebCore::Node::dispatchGenericEvent): Ditto. 22087 * dom/Node.h: Removed eventParentNode that's no longer needed, added parentOrHostNode decl, 22088 and changed signature of eventAncestors to use EventContexts. 22089 * dom/Text.cpp: 22090 (WebCore::Text::createRenderer): Changed to be shadow DOM-aware. 22091 * inspector/InspectorDOMAgent.cpp: 22092 (WebCore::InspectorDOMAgent::getEventListenersForNode): Changed to use EventContexts. 22093 * page/EventHandler.cpp: 22094 (WebCore::EventHandler::updateMouseEventTargetNode): Removed code that's no longer necessary. 22095 * svg/SVGElement.cpp: Removed eventParentNode that's no longer needed. 22096 * svg/SVGElement.h: Ditto. 22097 * dom/WindowEventContext.cpp: Added. 22098 * dom/WindowEventContext.h: Added. 22099 22100 2010-10-30 Nikolas Zimmermann <nzimmermann (a] rim.com> 22101 22102 Reviewed by Rob Buis. 22103 22104 Convert SVGAnimatedNumber/SVGAnimatedNumberList to the new SVGAnimatedPropertyTearOff concept 22105 https://bugs.webkit.org/show_bug.cgi?id=48686 22106 22107 Convert the next set of primitives to use the new SVG(Animated)PropertyTearOff concept. 22108 22109 Tests: svg/dom/SVGAnimatedNumber.html 22110 svg/dom/SVGAnimatedNumberList.html 22111 svg/dom/SVGNumber.html 22112 22113 * GNUmakefile.am: Add SVGAnimatedNumber.h / SVGAnimatedNumberList.h to build. 22114 * WebCore.gypi: Ditto. 22115 * WebCore.pro: Ditto. 22116 * WebCore.vcproj/WebCore.vcproj: Ditto. 22117 * WebCore.xcodeproj/project.pbxproj: Ditto. 22118 * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedNumber/SVGAnimatedNumberList as new style SVG animated properties. Remove SVGNumber from PODType hash. 22119 * bindings/scripts/CodeGeneratorJS.pm: Remove special SVGNumber handing, it's obsolete now. 22120 * bindings/scripts/CodeGeneratorObjC.pm: Add special SVGNumber handling, as it's the first of the converted dynamic SVGAnimatedProperty types that's not in WebCore namespace. 22121 * bindings/scripts/CodeGeneratorV8.pm: Use AvoidInclusionOfType method from CodeGenerator.pm, remove special SVGNumber handling, that's obsolete now. 22122 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: 22123 (WebCore::extractFloatValuesFromSVGNumberList): Adapt to SVGNumberList change, which is a plain Vector<float> now. 22124 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedNumber/SVGAnimatedNumberList handling. 22125 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 22126 * svg/SVGAnimatedNumber.h: Added. 22127 * svg/SVGAnimatedNumber.idl: Enable StrictTypeChecking. 22128 * svg/SVGAnimatedNumberList.h: Added. 22129 * svg/SVGAnimatedNumberList.idl: Ditto. 22130 * svg/SVGComponentTransferFunctionElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List). 22131 (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement): 22132 (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute): 22133 (WebCore::SVGComponentTransferFunctionElement::transferFunction): 22134 * svg/SVGComponentTransferFunctionElement.h: 22135 * svg/SVGFEColorMatrixElement.cpp: Ditto. 22136 (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement): 22137 (WebCore::SVGFEColorMatrixElement::parseMappedAttribute): 22138 (WebCore::SVGFEColorMatrixElement::build): 22139 * svg/SVGFEColorMatrixElement.h: 22140 * svg/SVGFECompositeElement.h: Ditto. 22141 * svg/SVGFEConvolveMatrixElement.cpp: Ditto. 22142 (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement): 22143 (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthXIdentifier): Added, replacing char[] hack by a static atomic string. 22144 (WebCore::SVGFEConvolveMatrixElement::kernelUnitLengthYIdentifier): Ditto. 22145 (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute): 22146 (WebCore::SVGFEConvolveMatrixElement::build): 22147 * svg/SVGFEConvolveMatrixElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22148 * svg/SVGFEDiffuseLightingElement.cpp: Ditto. 22149 (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace. 22150 (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto. 22151 * svg/SVGFEDiffuseLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22152 * svg/SVGFEDisplacementMapElement.h: Ditto. 22153 * svg/SVGFEGaussianBlurElement.cpp: Ditto. 22154 (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Remove trailing whitespace. 22155 (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto. 22156 * svg/SVGFEGaussianBlurElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22157 * svg/SVGFELightElement.h: Ditto. 22158 * svg/SVGFEMorphologyElement.cpp: 22159 (WebCore::SVGFEMorphologyElement::radiusXIdentifier): Added, replacing char[] hack by a static atomic string. 22160 (WebCore::SVGFEMorphologyElement::radiusYIdentifier): Ditto. 22161 * svg/SVGFEMorphologyElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22162 * svg/SVGFEOffsetElement.h: Ditto. 22163 * svg/SVGFESpecularLightingElement.cpp: 22164 (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Remove trailing whitespace. 22165 (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto. 22166 * svg/SVGFESpecularLightingElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22167 * svg/SVGFETurbulenceElement.cpp: 22168 (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Remove trailing whitespace. 22169 (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto. 22170 * svg/SVGFETurbulenceElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22171 * svg/SVGFilterElement.cpp: 22172 (WebCore::SVGFilterElement::filterResXIdentifier): Remove trailing whitespace. 22173 (WebCore::SVGFilterElement::filterResYIdentifier): Ditto. 22174 * svg/SVGLengthList.idl: Remove leftover [SVGListProperty] marker. 22175 * svg/SVGMarkerElement.cpp: 22176 (WebCore::SVGMarkerElement::orientTypeIdentifier): Remove trailing whitespace. 22177 (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto. 22178 * svg/SVGNumber.idl: Remove [PODType] marker, add StrictTypeChecking. 22179 * svg/SVGNumberList.cpp: Convert from SVGPODList<RefPtr<SVGPODListItem<float> > > to plain Vector<float>, just like it has been done for SVGLengthList before. 22180 (WebCore::SVGNumberList::parse): 22181 (WebCore::SVGNumberList::valueAsString): 22182 * svg/SVGNumberList.h: 22183 (WebCore::SVGNumberList::SVGNumberList): 22184 * svg/SVGPathElement.h: Switch animated float properties to the new SVGAnimatedNumber(List). 22185 * svg/SVGStopElement.h: Ditto. 22186 * svg/SVGTextPositioningElement.cpp: Switch animated float properties to the new SVGAnimatedNumber(List). 22187 (WebCore::SVGTextPositioningElement::SVGTextPositioningElement): 22188 (WebCore::SVGTextPositioningElement::parseMappedAttribute): 22189 * svg/SVGTextPositioningElement.h: Ditto. 22190 * svg/properties/SVGPropertyTraits.h: Add SVGNumberList handling. 22191 22192 2010-10-29 Daniel Bates <dbates (a] rim.com> 22193 22194 No review, rolling out 70971. 22195 http://trac.webkit.org/changeset/70971 22196 https://bugs.webkit.org/show_bug.cgi?id=6751 22197 22198 Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since 22199 it caused layout test failures on all bots. In particular, the 22200 child count in a generated frame name differs after this patch. We need 22201 to look into this further. 22202 22203 Test: fast/frames/iframe-set-inner-html.html 22204 22205 * html/HTMLFrameElementBase.cpp: 22206 (WebCore::HTMLFrameElementBase::openURL): 22207 (WebCore::HTMLFrameElementBase::setName): 22208 * html/HTMLFrameElementBase.h: 22209 * loader/DocumentLoader.cpp: 22210 (WebCore::DocumentLoader::mainResource): 22211 * loader/FrameLoader.cpp: 22212 (WebCore::FrameLoader::loadURLIntoChildFrame): 22213 (WebCore::FrameLoader::commitProvisionalLoad): 22214 * loader/HistoryController.cpp: 22215 (WebCore::HistoryController::saveDocumentState): 22216 (WebCore::HistoryController::restoreDocumentState): 22217 (WebCore::HistoryController::createItem): 22218 (WebCore::HistoryController::currentFramesMatchItem): 22219 * loader/ProgressTracker.cpp: 22220 (WebCore::ProgressTracker::progressStarted): 22221 (WebCore::ProgressTracker::progressCompleted): 22222 * loader/archive/cf/LegacyWebArchive.cpp: 22223 (WebCore::LegacyWebArchive::create): 22224 * page/FrameTree.cpp: 22225 (WebCore::FrameTree::setName): 22226 (WebCore::FrameTree::clearName): 22227 (WebCore::FrameTree::uniqueChildName): 22228 (WebCore::FrameTree::child): 22229 (WebCore::FrameTree::find): 22230 * page/FrameTree.h: 22231 (WebCore::FrameTree::name): 22232 22233 2010-10-28 Antonio Gomes <agomes (a] rim.com> 22234 22235 Reviewed by Ojan Vafai. 22236 22237 Needs a "LinuxEditingBehavior", perhaps with a better name 22238 https://bugs.webkit.org/show_bug.cgi?id=36627 22239 22240 Added EditingUnixBehavior editing type aim to cover the cases when 22241 neither Mac or Windows behaviors are appropriated. 22242 22243 It was decided to name it Unix not Linux. 22244 22245 No new tests. The current editing tests that involve platform specific 22246 bahaviors are coded so that they go through all editing behavior 22247 types possible. There will be a follow up bug where all of them will 22248 be updated to include the new editing behavior ("unix"). 22249 22250 * editing/EditingBehaviorTypes.h: 22251 * page/Settings.cpp: 22252 (WebCore::editingBehaviorTypeForPlatform): 22253 (WebCore::Settings::Settings): 22254 22255 2010-10-29 Daniel Bates <dbates (a] rim.com> 22256 22257 Reviewed by Adam Barth. 22258 22259 For unnamed frames, window.name returns a generated name 22260 https://bugs.webkit.org/show_bug.cgi?id=6751 22261 22262 Fixes an issue where the window.name of an unnamed frame returns 22263 a unique generated name that is used internally to identify the 22264 frame. Instead, we should return an empty string as implied by 22265 section 5.1.6 of the HTML5 spec. (http://www.w3.org/TR/html5/browsers.html#browsing-context-names). 22266 This section describes that a browsing context can have no name or be 22267 the empty string. 22268 22269 * html/HTMLFrameElementBase.cpp: 22270 (WebCore::HTMLFrameElementBase::openURL): Removed ASSERT for empty 22271 frame name since this is valid as per the HTML5 spec. 22272 (WebCore::HTMLFrameElementBase::setName): Removed the call to FrameTree::uniqueChildName() 22273 since the loader code no longer depends on the frame name being unique. 22274 * html/HTMLFrameElementBase.h: 22275 * loader/DocumentLoader.cpp: 22276 (WebCore::DocumentLoader::mainResource): Use FrameTree::uniqueName(). 22277 * loader/FrameLoader.cpp: 22278 (WebCore::FrameLoader::loadURLIntoChildFrame): Ditto. 22279 (WebCore::FrameLoader::commitProvisionalLoad): Ditto. 22280 * loader/HistoryController.cpp: 22281 (WebCore::HistoryController::saveDocumentState): Ditto. 22282 (WebCore::HistoryController::restoreDocumentState): Ditto. 22283 (WebCore::HistoryController::createItem): 22284 (WebCore::HistoryController::currentFramesMatchItem): Ditto. 22285 * loader/ProgressTracker.cpp: 22286 (WebCore::ProgressTracker::progressStarted): Ditto. 22287 (WebCore::ProgressTracker::progressCompleted): Ditto. 22288 * loader/archive/cf/LegacyWebArchive.cpp: 22289 (WebCore::LegacyWebArchive::create): Ditto. 22290 * page/FrameTree.cpp: 22291 (WebCore::FrameTree::setName): Modified to store the DOM-specified 22292 name of the frame. 22293 (WebCore::FrameTree::clearName): 22294 (WebCore::FrameTree::uniqueChildName): Use FrameTree::uniqueName(). 22295 (WebCore::FrameTree::child): Ditto. 22296 (WebCore::FrameTree::find): Ditto. 22297 * page/FrameTree.h: 22298 (WebCore::FrameTree::uniqueName): Added. 22299 22300 2010-10-29 Darin Adler <darin (a] apple.com> 22301 22302 Try to fix build. 22303 22304 * page/ContextMenuController.cpp: Added include of BackForwardController.h. 22305 * page/DOMWindow.cpp: Ditto. 22306 * page/History.cpp: Ditto. 22307 * platform/ContextMenu.cpp: Ditto. 22308 22309 2010-10-29 Darin Adler <darin (a] apple.com> 22310 22311 Reviewed by Sam Weinig. 22312 22313 More back/forward refactoring 22314 22315 * WebCore.exp.in: Updated. 22316 22317 * GNUmakefile.am: Removed BackForwardControllerClient.h. 22318 * WebCore.gypi: Ditto. 22319 * WebCore.pro: Ditto. 22320 * WebCore.vcproj/WebCore.vcproj: Ditto. 22321 * WebCore.xcodeproj/project.pbxproj: Ditto. 22322 22323 * history/BackForwardControllerClient.h: Removed. 22324 22325 * history/BackForwardController.cpp: 22326 (WebCore::BackForwardController::BackForwardController): 22327 Set up just m_client. 22328 (WebCore::BackForwardController::~BackForwardController): 22329 Removed call to backForwardControllerDestroyed. 22330 (WebCore::BackForwardController::canGoBackOrForward): Added. 22331 (WebCore::BackForwardController::goBackOrForward): Added. 22332 (WebCore::BackForwardController::goBack): Added. 22333 (WebCore::BackForwardController::goForward): Added. 22334 (WebCore::BackForwardController::addItem): Added. 22335 (WebCore::BackForwardController::setCurrentItem): Added. 22336 (WebCore::BackForwardController::count): Added. 22337 (WebCore::BackForwardController::backCount): Added. 22338 (WebCore::BackForwardController::forwardCount): Added. 22339 (WebCore::BackForwardController::itemAtIndex): Added. 22340 (WebCore::BackForwardController::isActive): Added. 22341 (WebCore::BackForwardController::close): Added. 22342 22343 * history/BackForwardController.h: Added functions from Page 22344 and BackForwardList that should be called here instead. 22345 Note that BackForwardList is to be renamed BackForwardClient soon. 22346 22347 * history/BackForwardList.h: Removed many now-unneeded 22348 virtual functions. 22349 22350 * history/BackForwardListImpl.h: Moved BackForwardListClient 22351 in here. 22352 22353 * history/PageCache.cpp: 22354 (WebCore::logCanCachePageDecision): Use backForward(). 22355 (WebCore::PageCache::canCache): Ditto. 22356 22357 * loader/FrameLoader.cpp: 22358 (WebCore::FrameLoader::transitionToCommitted): Removed unneeded 22359 null check of backFowardList, which is never null. 22360 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Use backForward. 22361 (WebCore::FrameLoader::didFirstLayout): Ditto. 22362 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto. 22363 (WebCore::FrameLoader::checkDidPerformFirstNavigation): Ditto. 22364 * loader/HistoryController.cpp: 22365 (WebCore::HistoryController::goToItem): Ditto. 22366 (WebCore::HistoryController::updateForStandardLoad): Ditto. 22367 (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList): Ditto. 22368 (WebCore::HistoryController::updateBackForwardListClippedAtTarget): Ditto. 22369 (WebCore::HistoryController::pushState): Ditto. 22370 * loader/NavigationScheduler.cpp: 22371 (WebCore::ScheduledHistoryNavigation::fire): Ditto. 22372 (WebCore::NavigationScheduler::scheduleHistoryNavigation): Ditto. 22373 * page/ContextMenuController.cpp: 22374 (WebCore::ContextMenuController::contextMenuItemSelected): Ditto. 22375 * page/DOMWindow.cpp: 22376 (WebCore::DOMWindow::close): Ditto. 22377 * page/History.cpp: 22378 (WebCore::History::length): Ditto. 22379 22380 * page/Page.cpp: 22381 (WebCore::Page::Page): Use more adoptPtr. Use backForwardClient instead of 22382 backForwardControllerClient. 22383 (WebCore::Page::~Page): Use backForward. 22384 (WebCore::Page::backForwardList): Ditto. 22385 (WebCore::Page::goBack): Ditto. 22386 (WebCore::Page::goForward): Ditto. 22387 (WebCore::Page::canGoBackOrForward): Ditto. 22388 (WebCore::Page::goBackOrForward): Ditto. 22389 (WebCore::Page::getHistoryLength): Ditto. 22390 (WebCore::Page::PageClients::PageClients): Made non-inline. 22391 (WebCore::Page::PageClients::~PageClients): Ditto. 22392 22393 * page/Page.h: Made PageClients constructor and destructor non-inline. 22394 Added backForward function. Marked old functions as deprecated. 22395 22396 * page/Settings.cpp: 22397 (WebCore::Settings::setUsesPageCache): Use backForward. 22398 * platform/ContextMenu.cpp: 22399 (WebCore::ContextMenu::populate): Ditto. 22400 (WebCore::ContextMenu::checkOrEnableIfNeeded): Ditto. 22401 * wml/WMLDoElement.cpp: 22402 (WebCore::WMLDoElement::defaultEventHandler): Ditto. 22403 * wml/WMLDocument.cpp: 22404 (WebCore::WMLDocument::finishedParsing): Ditto. 22405 * wml/WMLPageState.cpp: 22406 (WebCore::WMLPageState::reset): Ditto. 22407 (WebCore::tryAccessHistoryURLs): Ditto. 22408 * wml/WMLPrevElement.cpp: 22409 (WebCore::WMLPrevElement::executeTask): Ditto. 22410 22411 2010-10-29 David Hyatt <hyatt (a] apple.com> 22412 22413 Reviewed by Sam Weinig. 22414 22415 https://bugs.webkit.org/show_bug.cgi?id=48663 22416 22417 Make repaint invalidation work with vertical lines. Rewrite linesBoundingBox for RenderText and 22418 RenderInline to give the correct rectangle back for vertical lines. Also patch linesVisibleOverflowBoundingBox 22419 to give back the correct rectangle for vertical lines. 22420 22421 Fix bugs in the overflow accessors of InlineFlowBox when m_overflow was 0. 22422 22423 Added fast/repaint/inline-vertical-lr-overflow.html 22424 22425 * rendering/InlineBox.cpp: 22426 (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): 22427 * rendering/InlineFlowBox.h: 22428 (WebCore::InlineFlowBox::logicalLeftVisibleOverflow): 22429 (WebCore::InlineFlowBox::logicalRightVisibleOverflow): 22430 (WebCore::InlineFlowBox::bottomLayoutOverflow): 22431 (WebCore::InlineFlowBox::rightLayoutOverflow): 22432 (WebCore::InlineFlowBox::bottomVisualOverflow): 22433 (WebCore::InlineFlowBox::rightVisualOverflow): 22434 * rendering/RenderBox.cpp: 22435 (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): 22436 * rendering/RenderBox.h: 22437 * rendering/RenderInline.cpp: 22438 (WebCore::RenderInline::linesBoundingBox): 22439 (WebCore::RenderInline::linesVisibleOverflowBoundingBox): 22440 (WebCore::RenderInline::clippedOverflowRectForRepaint): 22441 * rendering/RenderText.cpp: 22442 (WebCore::RenderText::linesBoundingBox): 22443 22444 2010-10-29 Mike Lawther <mikelawther (a] chromium.org> 22445 22446 Reviewed by James Robinson. 22447 22448 Fix canvas/philip/tests/2d.imageData.get.source.negative 22449 https://bugs.webkit.org/show_bug.cgi?id=48277 22450 22451 Handle negative width/height. 22452 See http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation 22453 22454 * html/canvas/CanvasRenderingContext2D.cpp: 22455 (WebCore::CanvasRenderingContext2D::getImageData): 22456 22457 2010-10-29 Kavita Kanetkar <kkanetkar (a] chromium.org> 22458 22459 Reviewed by Pavel Feldman. 22460 22461 Web Inspector: FileSystem integration 22462 https://bugs.webkit.org/show_bug.cgi?id=45982 22463 22464 Adding filesystem support for Inspector under storage tab. This fetches root paths for 22465 temporary and persistent filesystems and allows "reveal folder in OS" option that 22466 launches native file browser. Currently this feature is disabled for non-chromium platforms. 22467 22468 * CMakeLists.txt: 22469 * English.lproj/localizedStrings.js: 22470 * GNUmakefile.am: 22471 * WebCore.gypi: 22472 * WebCore.pro: 22473 * WebCore.vcproj/WebCore.vcproj: 22474 * inspector/CodeGeneratorInspector.pm: 22475 * inspector/Inspector.idl: 22476 * inspector/InspectorController.cpp: 22477 (WebCore::InspectorController::connectFrontend): 22478 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 22479 * inspector/InspectorController.h: 22480 (WebCore::InspectorController::fileSystemAgent): 22481 * inspector/InspectorFileSystemAgent.cpp: Added. 22482 * inspector/InspectorFileSystemAgent.h: Added. 22483 * inspector/front-end/FileSystemView.js: Added. 22484 * inspector/front-end/Settings.js: 22485 * inspector/front-end/StoragePanel.js: 22486 (WebInspector.StoragePanel): 22487 (WebInspector.StoragePanel.prototype.reset): 22488 (WebInspector.StoragePanel.prototype.addFileSystem): 22489 (WebInspector.StoragePanel.prototype.showFileSystem): 22490 (WebInspector.StoragePanel.prototype.updateFileSystemPath): 22491 (WebInspector.StoragePanel.prototype.updateFileSystemError): 22492 (WebInspector.FileSystemTreeElement): 22493 (WebInspector.FileSystemTreeElement.prototype.onselect): 22494 * inspector/front-end/WebKit.qrc: 22495 * inspector/front-end/inspector.css: 22496 (.file-system-storage-tree-item .icon): 22497 * inspector/front-end/inspector.html: 22498 * inspector/front-end/inspector.js: 22499 (WebInspector.updateResource): 22500 (WebInspector._addFileSystemOrigin): 22501 (WebInspector.didGetFileSystemPath): 22502 (WebInspector.didGetFileSystemError): 22503 (WebInspector.reset): 22504 * platform/AsyncFileSystem.h: 22505 (WebCore::AsyncFileSystem::root): 22506 * platform/FileSystem.h: 22507 * platform/chromium/ChromiumBridge.h: 22508 * platform/chromium/FileSystemChromium.cpp: 22509 (WebCore::revealFolderInOS): 22510 22511 2010-10-29 Ryosuke Niwa <rniwa (a] webkit.org> 22512 22513 Reviewed by Darin Adler. 22514 22515 Remove RenderTextControl::setSelectionRange 22516 https://bugs.webkit.org/show_bug.cgi?id=47870 22517 22518 Made RenderTextControl::setSelectionRange a global function. 22519 Removed setSelectionStart, setSelectionEnd, and select from RenderTextControl. 22520 22521 No new tests are added since there is no behavioral change. 22522 22523 * accessibility/AccessibilityRenderObject.cpp: 22524 (WebCore::AccessibilityRenderObject::setSelectedTextRange): Calls setSelectedTextRange. 22525 * dom/InputElement.cpp: 22526 (WebCore::InputElement::updateSelectionRange): Ditto. 22527 * html/HTMLFormControlElement.cpp: 22528 (WebCore::HTMLTextFormControlElement::setSelectionStart): Ditto. 22529 (WebCore::HTMLTextFormControlElement::setSelectionEnd): Ditto. 22530 (WebCore::HTMLTextFormControlElement::select): Ditto. 22531 (WebCore::HTMLTextFormControlElement::setSelectionRange): Ditto. 22532 * rendering/RenderTextControl.cpp: 22533 (WebCore::RenderTextControl::hasVisibleTextArea): Added. 22534 (WebCore::setSelectionRange): See above. 22535 * rendering/RenderTextControl.h: 22536 22537 2010-10-29 Carlos Garcia Campos <cgarcia (a] igalia.com> 22538 22539 Reviewed by Andreas Kling. 22540 22541 [GTK] Crash in TextEncoding.cpp when using glib unicode 22542 https://bugs.webkit.org/show_bug.cgi?id=48521 22543 22544 When the conversion to UTF-8 fails, try to encode the original string 22545 without normalizing. Fixes tests cases: 22546 fast/url/anchor.html 22547 fast/url/query.html 22548 fast/url/standard-url.html 22549 22550 * platform/text/TextEncoding.cpp: 22551 (WebCore::TextEncoding::encode): 22552 22553 2010-10-29 Benjamin Poulain <benjamin.poulain (a] nokia.com> 22554 22555 Reviewed by Antonio Gomes. 22556 22557 TextureMapperGL get the driver info log but do not use it 22558 https://bugs.webkit.org/show_bug.cgi?id=48247 22559 22560 Remove the call to glGetProgramInfoLog(). 22561 22562 * platform/graphics/opengl/TextureMapperGL.cpp: 22563 (WebCore::TexmapShaderInfo::createShaderProgram): 22564 22565 2010-10-29 Benjamin Kalman <kalman (a] google.com> 22566 22567 Reviewed by Tony Chang. 22568 22569 Deleting contenteditable text to the left of a non-contenteditable span inserts unnecessary placeholder <br/> 22570 https://bugs.webkit.org/show_bug.cgi?id=48658 22571 22572 * WebCore.exp.in: Update is{Start,End}OfParagraph symbols. 22573 * editing/DeleteSelectionCommand.cpp: 22574 (WebCore::DeleteSelectionCommand::doApply): Cross editability boundaries when determining whether to insert placeholder. 22575 * editing/visible_units.cpp: Allow editability boundary to be crossed in {start,end,isStart,isEnd}OfParagraph. 22576 (WebCore::startOfParagraph): Also, avoid returning a position where renderer can't accept caret, like in endOfParagraph. 22577 (WebCore::endOfParagraph): 22578 (WebCore::isStartOfParagraph): 22579 (WebCore::isEndOfParagraph): 22580 * editing/visible_units.h: Ditto. 22581 22582 2010-10-29 Pavel Feldman <pfeldman (a] chromium.org> 22583 22584 Reviewed by Timothy Hatcher. 22585 22586 Web Inspector: last active panel is not restored upon opening inspector. 22587 https://bugs.webkit.org/show_bug.cgi?id=48668 22588 22589 * inspector/Inspector.idl: 22590 * inspector/InspectorController.cpp: 22591 (WebCore::InspectorController::InspectorController): 22592 (WebCore::InspectorController::inspect): 22593 (WebCore::InspectorController::showPanel): 22594 (WebCore::InspectorController::disconnectFrontend): 22595 (WebCore::InspectorController::populateScriptObjects): 22596 * inspector/InspectorController.h: 22597 * inspector/InspectorState.cpp: 22598 (WebCore::InspectorState::InspectorState): 22599 * inspector/front-end/Settings.js: 22600 (WebInspector.Settings): 22601 * inspector/front-end/inspector.js: 22602 (WebInspector.set currentPanel): 22603 (WebInspector.doLoadedDone.onPopulateScriptObjects): 22604 (WebInspector.doLoadedDone): 22605 (WebInspector.documentClick.followLink): 22606 (WebInspector.documentClick): 22607 22608 2010-10-28 Michael Nordman <michaeln (a] google.com> 22609 22610 Reviewed by ap. 22611 22612 [Chrome] Fix an appcache regression introduced in r69226 22613 https://bugs.webkit.org/show_bug.cgi?id=48592 22614 Define a new ApplicationCacheHost method for the specific case of main resource redirect handling. 22615 22616 Tests: the existing layout test applies 22617 22618 * loader/MainResourceLoader.cpp: use the newly introduced method 22619 (WebCore::MainResourceLoader::willSendRequest): 22620 * loader/appcache/ApplicationCacheHost.cpp: 22621 (WebCore::ApplicationCacheHost::maybeLoadMainResourceForRedirect): 22622 * loader/appcache/ApplicationCacheHost.h: 22623 22624 2010-10-29 Eric Carlson <eric.carlson (a] apple.com> 22625 22626 Reviewed by Adam Roben. 22627 22628 Navigating to a .wav file creates a plugin document but should create a media document 22629 https://bugs.webkit.org/show_bug.cgi?id=48546 22630 <rdar://problem/8606105> 22631 22632 Test: media/media-can-play-wav-audio.html 22633 22634 * platform/MIMETypeRegistry.cpp: Add mapping from ".wav" to "audio/x-wav". 22635 22636 2010-10-29 Aaron Colwell <acolwell (a] chromium.org> 22637 22638 Reviewed by James Robinson. 22639 22640 Created helper method WebCore::PlatformContextSkia::getNormalizedAlpha() 22641 to centralize alpha rounding & clipping logic. 22642 https://bugs.webkit.org/show_bug.cgi?id=48094 22643 22644 Test: media/video-canvas-alpha.html 22645 22646 * platform/graphics/skia/ImageSkia.cpp: 22647 (WebCore::paintSkBitmap): 22648 * platform/graphics/skia/PlatformContextSkia.cpp: 22649 (WebCore::PlatformContextSkia::getNormalizedAlpha): 22650 * platform/graphics/skia/PlatformContextSkia.h: 22651 22652 2010-10-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 22653 22654 Reviewed by Dirk Schulze. 22655 22656 ASSERT when SVGAnimatedProperty instance is assigned to multiple elements. 22657 https://bugs.webkit.org/show_bug.cgi?id=48555 22658 22659 Test: svg/custom/insertItemBefore-from-non-list-origin.svg 22660 22661 * bindings/scripts/CodeGeneratorJS.pm: Include SVGAnimatedPropertyTearOff.h instead of SVGPropertyTearOff.h 22662 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 22663 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 22664 * svg/properties/SVGAnimatedListPropertyTearOff.h: 22665 (WebCore::SVGAnimatedListPropertyTearOff::isAnimatedListTearOff): Return true. 22666 (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList): Devirtualize function. 22667 * svg/properties/SVGAnimatedProperty.h: 22668 (WebCore::SVGAnimatedProperty::isAnimatedListTearOff): Return false. 22669 * svg/properties/SVGListPropertyTearOff.h: 22670 (WebCore::SVGListPropertyTearOff::removeItemFromListIfNeeded): Only try to remove the passed item from its list, if its actually a list and not just a SVGAnimatedProperty. 22671 22672 2010-10-29 David Hyatt <hyatt (a] apple.com> 22673 22674 Reviewed by Adam Roben. 22675 22676 https://bugs.webkit.org/show_bug.cgi?id=48444 22677 22678 Fix the dirty rect checks in RenderBoxLineList, InlineFlowBox, InlineTextBox. They were still assuming horizontal-tb writing-mode. 22679 This patch makes the checks directionally abstract and also refactors the checks in RenderLineBoxList to share code. 22680 22681 No tests yet, since the invalidation code for inlines still assumes horizontal-tb. That will be fixed in a follow-up bug, 22682 and then repaint tests will be easy to write. 22683 22684 * rendering/InlineBox.cpp: 22685 (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): 22686 * rendering/InlineBox.h: 22687 * rendering/InlineFlowBox.cpp: 22688 (WebCore::InlineFlowBox::paint): 22689 * rendering/InlineTextBox.cpp: 22690 (WebCore::InlineTextBox::paint): 22691 * rendering/RenderBox.cpp: 22692 (WebCore::RenderBox::convertFromFlippedWritingMode): 22693 * rendering/RenderBox.h: 22694 * rendering/RenderLineBoxList.cpp: 22695 (WebCore::RenderLineBoxList::rangeIntersectsDirtyRect): 22696 (WebCore::RenderLineBoxList::anyLineIntersectsDirtyRect): 22697 (WebCore::RenderLineBoxList::lineIntersectsDirtyRect): 22698 (WebCore::RenderLineBoxList::paint): 22699 (WebCore::RenderLineBoxList::hitTest): 22700 * rendering/RenderLineBoxList.h: 22701 22702 2010-10-29 Patrick Gansterer <paroga (a] webkit.org> 22703 22704 Reviewed by Adam Roben. 22705 22706 Cleanup createGlobalImageFileDescriptor in ClipboardWin 22707 https://bugs.webkit.org/show_bug.cgi?id=48189 22708 22709 * platform/win/ClipboardWin.cpp: 22710 (WebCore::createGlobalURLContent): 22711 (WebCore::createGlobalUrlFileDescriptor): 22712 (WebCore::ClipboardWin::writeURL): 22713 22714 2010-10-29 Dmitry Titov <dimich (a] chromium.org> 22715 22716 [Chromium clang] Unreviewed fix removing compiler warning. 22717 If GIFImageReader is a struct, don't call it a class. 22718 22719 * platform/image-decoders/gif/GIFImageDecoder.h: 22720 22721 2010-10-29 Alexey Proskuryakov <ap (a] apple.com> 22722 22723 Fix the world (d'oh!) 22724 22725 https://bugs.webkit.org/show_bug.cgi?id=48576 22726 Let WebKit2 client know when a frame is a frameset 22727 22728 * html/HTMLFrameSetElement.cpp: 22729 (WebCore::HTMLFrameSetElement::insertedIntoDocument): 22730 (WebCore::HTMLFrameSetElement::removedFromDocument): 22731 Call base class version. 22732 22733 2010-10-29 Jian Li <jianli (a] chromium.org> 22734 22735 Unreviewed. Fix chromium build break. 22736 22737 * bindings/v8/custom/V8FileReaderCustom.cpp: 22738 (WebCore::V8FileReader::resultAccessorGetter): 22739 22740 2010-10-29 Jian Li <jianli (a] chromium.org> 22741 22742 Reviewed by David Levin. 22743 22744 Support readAsArrayBuffer in FileReader and FileReaderSync 22745 https://bugs.webkit.org/show_bug.cgi?id=47691 22746 22747 Merge the similar code in FileReader and FileReaderSync into 22748 FileReaderLoader. 22749 22750 Test cases have been added to read-file-test-cases.js. 22751 22752 * Android.jscbindings.mk: 22753 * CMakeLists.txt: 22754 * GNUmakefile.am: 22755 * WebCore.gypi: 22756 * WebCore.pro: 22757 * WebCore.vcproj/WebCore.vcproj: 22758 * WebCore.xcodeproj/project.pbxproj: 22759 * bindings/v8/custom/V8FileReaderCustom.cpp: Added. 22760 * fileapi/FileReader.cpp: 22761 (WebCore::FileReader::FileReader): 22762 (WebCore::FileReader::readAsArrayBuffer): 22763 (WebCore::FileReader::readAsBinaryString): 22764 (WebCore::FileReader::readAsText): 22765 (WebCore::FileReader::readAsDataURL): 22766 (WebCore::FileReader::readInternal): 22767 (WebCore::FileReader::doAbort): 22768 (WebCore::FileReader::terminate): 22769 (WebCore::FileReader::start): 22770 (WebCore::FileReader::didStartLoading): 22771 (WebCore::FileReader::didReceiveData): 22772 (WebCore::FileReader::didFinishLoading): 22773 (WebCore::FileReader::didFail): 22774 (WebCore::FileReader::fireEvent): 22775 (WebCore::FileReader::arrayBufferResult): 22776 (WebCore::FileReader::stringResult): 22777 * fileapi/FileReader.h: 22778 (WebCore::FileReader::readType): 22779 * fileapi/FileReader.idl: 22780 * fileapi/FileReaderLoader.cpp: Added. 22781 * fileapi/FileReaderLoader.h: Added. 22782 * fileapi/FileReaderLoaderClient.h: Added. 22783 * fileapi/FileReaderSync.cpp: 22784 (WebCore::FileReaderSync::FileReaderSync): 22785 (WebCore::FileReaderSync::readAsArrayBuffer): 22786 (WebCore::FileReaderSync::readAsBinaryString): 22787 (WebCore::FileReaderSync::readAsText): 22788 (WebCore::FileReaderSync::readAsDataURL): 22789 (WebCore::FileReaderSync::startLoading): 22790 * fileapi/FileReaderSync.h: 22791 * fileapi/FileReaderSync.idl: 22792 * html/canvas/ArrayBuffer.cpp: 22793 (WebCore::ArrayBuffer::create): 22794 * html/canvas/ArrayBuffer.h: 22795 * loader/ThreadableLoaderClient.h: 22796 22797 2010-10-29 Tony Chang <tony (a] chromium.org> 22798 22799 Unreviewed, rolling out r70850. 22800 http://trac.webkit.org/changeset/70850 22801 https://bugs.webkit.org/show_bug.cgi?id=45640 22802 22803 chromium and qt pixel test regressions 22804 22805 * dom/Document.cpp: 22806 * dom/Document.h: 22807 * page/FrameView.cpp: 22808 (WebCore::FrameView::invalidateRect): 22809 (WebCore::FrameView::repaintContentRectangle): 22810 (WebCore::FrameView::doDeferredRepaints): 22811 * page/FrameView.h: 22812 * rendering/RenderBlock.cpp: 22813 (WebCore::RenderBlock::paintContents): 22814 * rendering/RenderLayer.cpp: 22815 (WebCore::RenderLayer::paintLayer): 22816 22817 2010-10-29 Alexey Proskuryakov <ap (a] apple.com> 22818 22819 Reviewed by Darin Adler. 22820 22821 https://bugs.webkit.org/show_bug.cgi?id=48576 22822 Let WebKit2 client know when a frame is a frameset 22823 22824 This can change in two cases, when document changes, and when frame is navigated to another 22825 document. 22826 22827 * dom/Document.cpp: (WebCore::Document::documentDidBecomeActive): Update the client when 22828 a document is restored from page cache. 22829 22830 * loader/FrameLoaderClient.h: Added a new client call to notify client. 22831 22832 * html/HTMLFrameSetElement.h: 22833 * html/HTMLFrameSetElement.cpp: 22834 (WebCore::HTMLFrameSetElement::insertedIntoDocument): 22835 (WebCore::HTMLFrameSetElement::removedFromDocument): 22836 Update the client when document changes, potentially becoming a frameset. Per WebCore 22837 definition, a document is a frameset when it has a FRAMESET element as direct child of 22838 document element (it may also have body elements). 22839 22840 * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::dispatchDidBecomeFrameset): 22841 Added an empty implementation. 22842 22843 2010-10-29 Csaba Osztrogonc <ossy (a] webkit.org> 22844 22845 Unreviewed fix. Touch WebCorePrefix.h to fix incremental build failure after r70878. 22846 22847 * WebCorePrefix.h: 22848 22849 2010-10-29 Carlos Garcia Campos <cgarcia (a] igalia.com> 22850 22851 Reviewed by Martin Robinson. 22852 22853 [GTK] Handle surrogate pairs in TextBreakIteratorGtk 22854 https://bugs.webkit.org/show_bug.cgi?id=48227 22855 22856 TextBreakIteratorGtk uses UTF-8 because it's what pango expects, but we 22857 need to return indices for the given input string that are in UTF-16. 22858 The number of characters is the same for both UTF-16 and UTF-8 except when 22859 the input string contains surrogate pairs. We need to keep both, the 22860 index for the UTF-8 string to be used internally, and the index for the 22861 UTF-16 string to be used as return value of the iterator interface. It 22862 fixes test fast/forms/textarea-maxlength.html 22863 22864 * platform/text/gtk/TextBreakIteratorGtk.cpp: 22865 (WebCore::CharacterIterator::getText): 22866 (WebCore::CharacterIterator::getLength): 22867 (WebCore::CharacterIterator::getSize): 22868 (WebCore::CharacterIterator::getIndex): 22869 (WebCore::CharacterIterator::getUTF16Index): 22870 (WebCore::CharacterIterator::getUTF16Length): 22871 (WebCore::CharacterIterator::characterSize): 22872 (WebCore::CharacterIterator::setText): 22873 (WebCore::CharacterIterator::setIndex): 22874 (WebCore::CharacterIterator::setUTF16Index): 22875 (WebCore::CharacterIterator::first): 22876 (WebCore::CharacterIterator::last): 22877 (WebCore::CharacterIterator::next): 22878 (WebCore::CharacterIterator::previous): 22879 (WebCore::setUpIterator): 22880 (WebCore::textBreakFirst): 22881 (WebCore::textBreakLast): 22882 (WebCore::textBreakNext): 22883 (WebCore::textBreakPrevious): 22884 (WebCore::textBreakPreceding): 22885 (WebCore::textBreakFollowing): 22886 (WebCore::textBreakCurrent): 22887 (WebCore::isTextBreak): 22888 22889 2010-10-29 Alexander Pavlov <apavlov (a] chromium.org> 22890 22891 Reviewed by Pavel Feldman. 22892 22893 Web Inspector: [REGRESSION] Addition of a new (blank) style property does not work 22894 https://bugs.webkit.org/show_bug.cgi?id=48631 22895 22896 Test: inspector/styles-add-blank-property.html 22897 22898 * inspector/front-end/StylesSidebarPane.js: 22899 (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty): 22900 (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate): 22901 22902 2010-10-29 Pavel Feldman <pfeldman (a] chromium.org> 22903 22904 Reviewed by Timothy Hatcher. 22905 22906 Web Inspector: add close button to network view, make tests pass for 22907 resource manager on all ports. 22908 https://bugs.webkit.org/show_bug.cgi?id=48628 22909 22910 * inspector/InspectorController.cpp: 22911 (WebCore::InspectorController::didCommitLoad): 22912 (WebCore::InspectorController::frameDetachedFromParent): 22913 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 22914 (WebCore::InspectorController::identifierForInitialRequest): 22915 (WebCore::InspectorController::willSendRequest): 22916 (WebCore::InspectorController::markResourceAsCached): 22917 (WebCore::InspectorController::didReceiveResponse): 22918 (WebCore::InspectorController::didReceiveContentLength): 22919 (WebCore::InspectorController::didFinishLoading): 22920 (WebCore::InspectorController::didFailLoading): 22921 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 22922 (WebCore::InspectorController::scriptImported): 22923 (WebCore::InspectorController::didCreateWebSocket): 22924 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 22925 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 22926 (WebCore::InspectorController::didCloseWebSocket): 22927 * inspector/front-end/NetworkPanel.js: 22928 (WebInspector.NetworkPanel): 22929 * inspector/front-end/ResourceManager.js: 22930 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame): 22931 * inspector/front-end/StoragePanel.js: 22932 (WebInspector.StoragePanel.prototype.addResourceToFrame): 22933 * inspector/front-end/inspector.js: 22934 (WebInspector._createPanels): 22935 * inspector/front-end/networkPanel.css: 22936 (.network-close-button): 22937 22938 2010-10-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 22939 22940 Reviewed by Dirk Schulze. 22941 22942 Convert SVGAnimatedEnumeration/Integer to the new SVGAnimatedPropertyTearOff concept 22943 https://bugs.webkit.org/show_bug.cgi?id=48623 22944 22945 Besides converting SVGAnimatedEnumeration/Integer to the new animated property tear off concept, fix support 22946 for multiple wrappers within the new concept, which was broken - covered by existing svg/dynamic-updates/ tests. 22947 22948 Replace all 'extern char[]' usage when using the multiple wrappers macro, by static AtomicStrings. 22949 22950 * GNUmakefile.am: Add SVGAnimatedEnumeration.h / SVGAnimatedInteger.h to build. 22951 * WebCore.gypi: Ditto. 22952 * WebCore.pro: Ditto. 22953 * WebCore.vcproj/WebCore.vcproj: Ditto. 22954 * WebCore.xcodeproj/project.pbxproj: Ditto. 22955 * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedEnumeration / SVGAnimatedInteger as animated types using the new concept. 22956 * bindings/scripts/CodeGeneratorObjC.pm: Touched, to force regenerating ObjC bindings, dependency tracking is obviously broken. 22957 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedBoolean/Enumeration/Integer handling. 22958 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 22959 * svg/SVGAnimatedEnumeration.h: Added. 22960 * svg/SVGAnimatedEnumeration.idl: 22961 * svg/SVGAnimatedInteger.h: Added. 22962 * svg/SVGClipPathElement.h: Adapted all code to create new style animated property tear offs for long & int types. 22963 * svg/SVGComponentTransferFunctionElement.h: 22964 * svg/SVGFEBlendElement.h: 22965 * svg/SVGFEColorMatrixElement.h: 22966 * svg/SVGFECompositeElement.h: 22967 * svg/SVGFEConvolveMatrixElement.h: 22968 * svg/SVGFEDiffuseLightingElement.cpp: 22969 (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Replaced extern[] char hack using a static AtomicString. 22970 (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto. 22971 * svg/SVGFEDiffuseLightingElement.h: 22972 * svg/SVGFEDisplacementMapElement.h: 22973 * svg/SVGFEGaussianBlurElement.cpp: 22974 (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Ditto. 22975 (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto. 22976 * svg/SVGFEGaussianBlurElement.h: 22977 * svg/SVGFEMorphologyElement.h: 22978 * svg/SVGFESpecularLightingElement.cpp: 22979 (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Ditto. 22980 (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto. 22981 * svg/SVGFESpecularLightingElement.h: 22982 * svg/SVGFETurbulenceElement.cpp: 22983 (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Ditto. 22984 (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto. 22985 * svg/SVGFETurbulenceElement.h: 22986 * svg/SVGFilterElement.cpp: 22987 (WebCore::SVGFilterElement::filterResXIdentifier): Ditto. 22988 (WebCore::SVGFilterElement::filterResYIdentifier): Ditto. 22989 * svg/SVGFilterElement.h: 22990 * svg/SVGGradientElement.h: 22991 * svg/SVGMarkerElement.cpp: 22992 (WebCore::SVGMarkerElement::orientTypeIdentifier): Ditto. 22993 (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto. 22994 * svg/SVGMarkerElement.h: 22995 * svg/SVGMaskElement.h: 22996 * svg/SVGPatternElement.h: 22997 * svg/SVGTextContentElement.h: 22998 * svg/SVGTextPathElement.h: 22999 * svg/properties/SVGAnimatedPropertyMacros.h: Add new macro for multiple wrappers using static properties. 23000 23001 2010-10-29 Andreas Kling <kling (a] webkit.org> 23002 23003 Reviewed by Kenneth Rohde Christiansen. 23004 23005 [Qt] Make GraphicsContext cheaper to construct 23006 https://bugs.webkit.org/show_bug.cgi?id=48626 23007 23008 Do less unnecessary things when creating the Qt GraphicsContext: 23009 - Don't create a black QBrush that's immediately discarded. 23010 - Don't call setPlatform*(), set the painter brush and pen directly. 23011 - Call setRenderHints() once instead of multiple setRenderHint(). 23012 23013 * platform/graphics/qt/GraphicsContextQt.cpp: 23014 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 23015 (WebCore::GraphicsContext::GraphicsContext): 23016 23017 2010-10-29 Andreas Kling <kling (a] webkit.org> 23018 23019 Reviewed by Simon Hausmann. 23020 23021 [Qt] GraphicsLayer: Don't notifySyncRequired() more than necessary 23022 https://bugs.webkit.org/show_bug.cgi?id=48624 23023 23024 Don't queue multiple meta method invocations for notifySyncRequired() 23025 23026 4% speedup on <http://ariya.github.com/clock.htm> 23027 23028 * platform/graphics/qt/GraphicsLayerQt.cpp: 23029 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl): 23030 (WebCore::GraphicsLayerQtImpl::notifySyncRequired): 23031 (WebCore::GraphicsLayerQtImpl::notifyChange): 23032 23033 2010-10-29 Zhenyao Mo <zmo (a] google.com> 23034 23035 Reviewed by Chris Marrin. 23036 23037 drawArrays/drawElements with first/offset out of range but size==0 should generate no error 23038 https://bugs.webkit.org/show_bug.cgi?id=48601 23039 23040 * html/canvas/WebGLRenderingContext.cpp: 23041 (WebCore::WebGLRenderingContext::drawArrays): 23042 (WebCore::WebGLRenderingContext::drawElements): 23043 23044 2010-10-29 Leandro Gracia Gil <leandrogracia (a] google.com> 23045 23046 Reviewed by Jeremy Orlow. 23047 23048 Patch the current speech input implementation to use the nearest 23049 language tag. The language is now passed to the startRecognition 23050 methods so that language-specific recognition could be used. Also added 23051 a second parameter to setMockSpeechInputResult for the language used in 23052 speech recognition. 23053 https://bugs.webkit.org/show_bug.cgi?id=47089 23054 23055 This is the 2nd of a 4-sided patch in Chromium and WebKit. For more 23056 details see http://codereview.chromium.org/3615005/show, 23057 http://codereview.chromium.org/3595018/show and 23058 https://bugs.webkit.org/show_bug.cgi?id=47420. 23059 23060 Test: fast/speech/input-text-language-tag.html 23061 23062 * page/SpeechInput.cpp: 23063 (WebCore::SpeechInput::startRecognition): 23064 * page/SpeechInput.h: 23065 * page/SpeechInputClient.h: 23066 * platform/mock/SpeechInputClientMock.cpp: 23067 (WebCore::SpeechInputClientMock::startRecognition): 23068 (WebCore::SpeechInputClientMock::setRecognitionResult): 23069 (WebCore::SpeechInputClientMock::timerFired): 23070 * platform/mock/SpeechInputClientMock.h: 23071 * rendering/TextControlInnerElements.cpp: 23072 (WebCore::TextControlInnerElement::attachInnerElement): 23073 (WebCore::SearchFieldCancelButtonElement::detach): 23074 (WebCore::SpinButtonElement::defaultEventHandler): 23075 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 23076 (WebCore::InputFieldSpeechButtonElement::detach): 23077 23078 2010-10-29 Mads Ager <ager (a] chromium.org> 23079 23080 Reviewed by Pavel Feldman. 23081 23082 [V8] The DateExtension cannot handle overwritten Date 23083 https://bugs.webkit.org/show_bug.cgi?id=48621 23084 23085 Check that the Date property is an object before attempting to get 23086 hidden properties from it. 23087 23088 Test: fast/dom/Window/slow-unload-handler-overwritten-date.html 23089 23090 * bindings/v8/DateExtension.cpp: 23091 (WebCore::DateExtension::setAllowSleep): 23092 23093 2010-10-27 Nikolas Zimmermann <nzimmermann (a] rim.com> 23094 23095 Reviewed by Dirk Schulze. 23096 23097 Convert SVGAnimatedBoolean to the new SVGAnimatedPropertyTearOff concept 23098 https://bugs.webkit.org/show_bug.cgi?id=48469 23099 23100 Convert the next SVG animated primitive type to use the SVGAnimatedPropertyTearOff concept: SVGAnimatedBoolean. 23101 Added new test verifying that StrictTypeChecking is enabled for SVGAnimatedBooleans. It also tests that this type is "static", see LayoutTests/ChangeLog for details. 23102 23103 Add support for StrictTypeChecking for boolean types. 23104 23105 Test: svg/dom/SVGExternalResourcesRequired.html 23106 23107 * GNUmakefile.am: Add SVGAnimatedBoolean.h and SVGAnimatedStaticPropertyTearOff.h to build. 23108 * WebCore.gypi: Ditto. 23109 * WebCore.pro: Ditto. 23110 * WebCore.vcproj/WebCore.vcproj: Ditto. 23111 * WebCore.xcodeproj/project.pbxproj: Ditto. 23112 * bindings/scripts/CodeGenerator.pm: Add SVGAnimatedBoolean to the new style svg animated bindings list. 23113 * bindings/scripts/CodeGeneratorJS.pm: Add StrictTypeChecking support for boolean types. 23114 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. Only generate kit() usage for new style animated types, if the wrapped type needs a tear off. 23115 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 23116 * svg/DeprecatedSVGAnimatedTemplate.h: Remove SVGAnimatedBoolean handling. 23117 * svg/SVGAElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_STATIC_PROPERTY_NEW/ for boolean types everywhere. Include SVGAnimatedPropertyMacros.h where needed. 23118 * svg/SVGAnimatedBoolean.h: Added. 23119 * svg/SVGAnimatedBoolean.idl: 23120 * svg/SVGAnimationElement.h: 23121 * svg/SVGCircleElement.h: 23122 * svg/SVGClipPathElement.h: 23123 * svg/SVGCursorElement.h: 23124 * svg/SVGDefsElement.h: 23125 * svg/SVGEllipseElement.h: 23126 * svg/SVGExternalResourcesRequired.cpp: 23127 * svg/SVGExternalResourcesRequired.h: 23128 (WebCore::SVGExternalResourcesRequired::~SVGExternalResourcesRequired): 23129 * svg/SVGFEConvolveMatrixElement.h: 23130 * svg/SVGFEImageElement.h: 23131 * svg/SVGFilterElement.h: 23132 * svg/SVGFontElement.h: 23133 * svg/SVGForeignObjectElement.h: 23134 * svg/SVGGElement.h: 23135 * svg/SVGGradientElement.h: 23136 * svg/SVGImageElement.h: 23137 * svg/SVGLineElement.h: 23138 * svg/SVGMPathElement.h: 23139 * svg/SVGMarkerElement.h: 23140 * svg/SVGMaskElement.h: 23141 * svg/SVGPathElement.h: 23142 * svg/SVGPatternElement.h: 23143 * svg/SVGPolyElement.h: 23144 * svg/SVGRectElement.h: 23145 * svg/SVGSVGElement.h: 23146 * svg/SVGScriptElement.h: 23147 * svg/SVGSwitchElement.h: 23148 * svg/SVGSymbolElement.h: 23149 * svg/SVGTextContentElement.h: 23150 * svg/SVGUseElement.h: 23151 * svg/SVGViewElement.h: 23152 * svg/properties/SVGAnimatedListPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them. 23153 * svg/properties/SVGAnimatedProperty.h: Remove m_baseVal/m_animVal. 23154 (WebCore::SVGAnimatedProperty::commitChange): New method to share code between the SVGAnimated*PropertyTearOff classes. 23155 * svg/properties/SVGAnimatedPropertyMacros.h: Add new DECLARE_ANIMATED_STATIC_PROPERTY_NEW macro which creates SVGAnimatedStaticPropertyTearOff types. 23156 * svg/properties/SVGAnimatedPropertyTearOff.h: Moved RefPtr<SVGProperty> m_baseVal/m_animVal from SVGAnimatedProperty, as SVGAnimatedStaticPropertyTearOff doesn't need them. 23157 * svg/properties/SVGAnimatedStaticPropertyTearOff.h: Added. 23158 (WebCore::SVGAnimatedStaticPropertyTearOff::baseVal): Directly returns the stored m_property as reference, no tear off is created. 23159 (WebCore::SVGAnimatedStaticPropertyTearOff::animVal): Ditto. 23160 (WebCore::SVGAnimatedStaticPropertyTearOff::setBaseVal): Directly updates the stored m_property reference, and invalidates the SVG attributes. 23161 (WebCore::SVGAnimatedStaticPropertyTearOff::setAnimVal): Not implemented. 23162 (WebCore::SVGAnimatedStaticPropertyTearOff::create): 23163 (WebCore::SVGAnimatedStaticPropertyTearOff::SVGAnimatedStaticPropertyTearOff): 23164 * svg/properties/SVGListPropertyTearOff.h: 23165 (WebCore::SVGListPropertyTearOff::commitChange): Share code, use SVGAnimatedProperty::commitChange. 23166 * svg/properties/SVGPropertyTearOff.h: 23167 (WebCore::SVGPropertyTearOff::commitChange): Ditto. 23168 23169 2010-10-28 MORITA Hajime <morrita (a] google.com> 23170 23171 Reviewed by Kent Tamura. 23172 23173 <meter min=0 max=100 value=100> should be optimum. 23174 https://bugs.webkit.org/show_bug.cgi?id=48613 23175 23176 Changed to make the condition inclusive for better case consistently. 23177 - Values on the border between optimum and subsequntial go optimum. 23178 - Values on the border between suboptimal and even-less-than-good go suboptimal. 23179 23180 Test: fast/dom/HTMLMeterElement/meter-boundary-values.html 23181 23182 * html/HTMLMeterElement.cpp: 23183 (WebCore::HTMLMeterElement::gaugeRegion): 23184 23185 2010-10-29 Kenichi Ishibashi <bashi (a] google.com> 23186 23187 Reviewed by Kent Tamura. 23188 23189 [HTML5] Add DOMSettableTokenList 23190 https://bugs.webkit.org/show_bug.cgi?id=47810 23191 23192 Adds DOMSettableTokenList interface to support <output> element. 23193 The DOMTokenList interface was refactored since its was tightly coupled 23194 with HTMLElement.classList property. 23195 23196 * Android.derived.jscbindings.mk: Added JSDOMSettableTokenList.h file. 23197 * Android.derived.v8bindings.mk: Added V8DOMSettableTokenList.h file. 23198 * Android.jscbindings.mk: Added JSDOMSettableTokenList.cpp file. 23199 * Android.mk: Added ClassList.cpp file. 23200 * CMakeLists.txt: Added DOMSettableTokenList.{cpp,idl} and ClassList.cpp files. 23201 * DerivedSources.cpp: Added JSDOMSettableTokenList.cpp file. 23202 * DerivedSources.make: Added DOMSettableTokenList entry. 23203 * GNUmakefile.am: Added JSDOMSettableTokenList.{h,cpp} and ClassList.{h,cpp} files. 23204 * WebCore.gypi: Added DOMSettableTokenList.{h,cpp,idl}, V8DOMSettableTokenListCustom.cpp and ClassList.{h,cpp} files. 23205 * WebCore.pri: Added DOMSettableTokenList.idl file. 23206 * WebCore.pro: Added V8DOMSettableTokenListCustom.cpp, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files. 23207 * WebCore.vcproj/WebCore.vcproj: Added JSDOMSettableTokenList.{h,cpp}, ClassList.{h,cpp} and DOMSettableTokenList.{h,cpp} files. 23208 * WebCore.xcodeproj/project.pbxproj: Added ClassList.{h,cpp}, DOMSettabletokenList.{h,cpp} and JSDOMSettableTokenList.{h,cpp} 23209 * bindings/gobject/GNUmakefile.am: Added WebKitDOMDOMSettableTokenList.{h,cpp} and WebKitDOMDOMSettableTokenListPrivate.cpp files. 23210 * bindings/scripts/CodeGeneratorJS.pm: Modified IndexGetterReturnsStrings() returns 1 for DOMSettableTokenList. 23211 * bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Added. 23212 (WebCore::V8DOMSettableTokenList::indexedPropertyGetter): 23213 * dom/Element.cpp: Replaced DOMTokenList to ClassList. 23214 (WebCore::Element::classList): 23215 * dom/ElementRareData.h: ditto. 23216 * dom/SpaceSplitString.cpp: Added add() and remove() functions. 23217 (WebCore::SpaceSplitStringData::add): 23218 (WebCore::SpaceSplitStringData::remove): 23219 (WebCore::SpaceSplitString::add): 23220 (WebCore::SpaceSplitString::remove): 23221 * dom/SpaceSplitString.h: Added add() and remove() functions. 23222 * dom/StyledElement.cpp: Replaced DOMTokenList to ClassList. 23223 (WebCore::StyledElement::classAttributeChanged): 23224 * dom/StyledElement.h: ditto. 23225 * html/ClassList.cpp: Added, mostly from original DOMTokenList.cpp. 23226 (WebCore::ClassList::ClassList): 23227 (WebCore::ClassList::ref): 23228 (WebCore::ClassList::deref): 23229 (WebCore::ClassList::length): 23230 (WebCore::ClassList::item): 23231 (WebCore::ClassList::contains): 23232 (WebCore::ClassList::containsInternal): 23233 (WebCore::ClassList::add): 23234 (WebCore::ClassList::addInternal): 23235 (WebCore::ClassList::remove): 23236 (WebCore::ClassList::removeInternal): 23237 (WebCore::ClassList::toggle): 23238 (WebCore::ClassList::toString): 23239 (WebCore::ClassList::reset): 23240 (WebCore::ClassList::classNames): 23241 * html/ClassList.h: Added, mostly from original DOMTokenList.h. 23242 (WebCore::ClassList::create): 23243 (WebCore::ClassList::element): 23244 * html/DOMSettableTokenList.cpp: Added. 23245 (WebCore::DOMSettableTokenList::DOMSettableTokenList): 23246 (WebCore::DOMSettableTokenList::~DOMSettableTokenList): 23247 (WebCore::DOMSettableTokenList::item): 23248 (WebCore::DOMSettableTokenList::contains): 23249 (WebCore::DOMSettableTokenList::add): 23250 (WebCore::DOMSettableTokenList::addInternal): 23251 (WebCore::DOMSettableTokenList::remove): 23252 (WebCore::DOMSettableTokenList::removeInternal): 23253 (WebCore::DOMSettableTokenList::toggle): 23254 (WebCore::DOMSettableTokenList::setValue): 23255 * html/DOMSettableTokenList.h: Added. 23256 (WebCore::DOMSettableTokenList::create): 23257 (WebCore::DOMSettableTokenList::ref): 23258 (WebCore::DOMSettableTokenList::deref): 23259 (WebCore::DOMSettableTokenList::length): 23260 (WebCore::DOMSettableTokenList::toString): 23261 (WebCore::DOMSettableTokenList::value): 23262 * html/DOMSettableTokenList.idl: Added. 23263 * html/DOMTokenList.cpp: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList. 23264 (WebCore::DOMTokenList::validateToken): Changed to be a static member function of DOMTokenList. 23265 (WebCore::DOMTokenList::addToken): Added, mostly from original DOMTokenList::addInternal(). 23266 (WebCore::DOMTokenList::removeToken): Added, mostly from original DOMTokenList::removeInternal(). 23267 * html/DOMTokenList.h: Refactored to be an abstract interface for both of ClassList and DOMSettableTokenList. 23268 (WebCore::DOMTokenList::~DOMTokenList): 23269 (WebCore::DOMTokenList::element): 23270 * page/DOMWindow.cpp: Added an entry for DOMSettableTokenList. 23271 * page/DOMWindow.idl: ditto. 23272 23273 2010-10-29 Pavel Feldman <pfeldman (a] chromium.org> 23274 23275 Reviewed by Timothy Hatcher. 23276 23277 Web Inspector: make legacy resource tracking optional in the native code, 23278 make cookeis work against new resource manager. 23279 https://bugs.webkit.org/show_bug.cgi?id=48532 23280 23281 * inspector/InspectorCSSStore.cpp: 23282 (WebCore::InspectorCSSStore::resourceStyleSheetText): 23283 * inspector/InspectorController.cpp: 23284 (WebCore::InspectorController::InspectorController): 23285 (WebCore::InspectorController::~InspectorController): 23286 (WebCore::InspectorController::connectFrontend): 23287 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 23288 (WebCore::InspectorController::populateScriptObjects): 23289 (WebCore::InspectorController::unbindAllResources): 23290 (WebCore::InspectorController::didCommitLoad): 23291 (WebCore::InspectorController::frameDetachedFromParent): 23292 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 23293 (WebCore::InspectorController::identifierForInitialRequest): 23294 (WebCore::InspectorController::willSendRequest): 23295 (WebCore::InspectorController::markResourceAsCached): 23296 (WebCore::InspectorController::didReceiveResponse): 23297 (WebCore::InspectorController::didReceiveContentLength): 23298 (WebCore::InspectorController::didFinishLoading): 23299 (WebCore::InspectorController::didFailLoading): 23300 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 23301 (WebCore::InspectorController::scriptImported): 23302 (WebCore::InspectorController::setResourceTrackingEnabled): 23303 (WebCore::InspectorController::getCookies): 23304 (WebCore::InspectorController::deleteCookie): 23305 (WebCore::InspectorController::didCreateWebSocket): 23306 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 23307 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 23308 (WebCore::InspectorController::didCloseWebSocket): 23309 (WebCore::InspectorController::breakpointsSettingKey): 23310 (WebCore::InspectorController::getResourceContent): 23311 * inspector/InspectorController.h: 23312 * inspector/InspectorResource.cpp: 23313 (WebCore::InspectorResource::updateScriptObject): 23314 (WebCore::InspectorResource::markFailed): 23315 * inspector/InspectorResource.h: 23316 * inspector/InspectorResourceAgent.cpp: 23317 (WebCore::populateObjectWithFrameResources): 23318 * inspector/front-end/CookieItemsView.js: 23319 (WebInspector.CookieItemsView.prototype._updateWithCookies): 23320 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 23321 * inspector/front-end/Resource.js: 23322 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 23323 (WebInspector.Resource.prototype._checkWarning): 23324 * inspector/front-end/ResourceManager.js: 23325 (WebInspector.ResourceManager.prototype._updateResourceWithResponse): 23326 (WebInspector.ResourceManager.prototype.didFailLoading): 23327 * inspector/front-end/inspector.js: 23328 (WebInspector.forAllResources): 23329 (WebInspector.updateResource): 23330 23331 2010-10-29 MORITA Hajime <morrita (a] google.com> 23332 23333 Unreviewed attempt for fixing build break for http://trac.webkit.org/changeset/70847 23334 23335 * editing/EditingAllInOne.cpp: 23336 23337 2010-10-29 Mihai Parparita <mihaip (a] chromium.org> 23338 23339 Reviewed by Adam Barth. 23340 23341 Support RegExp in V8 implementation of SerializedScriptValue 23342 https://bugs.webkit.org/show_bug.cgi?id=44809 23343 23344 Add RegExp serialization/deserialization now that V8 provides API access 23345 to the RegExp type. 23346 23347 * bindings/v8/SerializedScriptValue.cpp: 23348 (WebCore::ZigZag::Writer::writeRegExp): 23349 (WebCore::ZigZag::Serializer::writeRegExp): 23350 (WebCore::ZigZag::Serializer::doSerialize): 23351 (WebCore::ZigZag::Reader::read): 23352 (WebCore::ZigZag::Reader::readRegExp): 23353 23354 2010-10-13 MORITA Hajime <morrita (a] google.com> 23355 23356 Reviewed by David Hyatt. 23357 23358 Navigating dark background websites results in blinding white flashes between pages. 23359 https://bugs.webkit.org/show_bug.cgi?id=45640 23360 23361 This FOUC is caused by an early layout request before the <body> is ready, 23362 and the page's background style given for <body>, instead of <html>. 23363 So many sites have such stylesheets that we should care them. 23364 23365 - Some DOM operation such as 'element.offsetLeft' causes page layout. 23366 - The page layout results page repaint 23367 - The page page repaint makes a white screen. because there is nothing to paint 23368 before <body> is available. 23369 23370 This change: 23371 - extracted existing FOUC check on RenderBlock and RenderLayer to 23372 Document::mayCauseFlashOfUnstyledContent(), 23373 - checked <body> availability on mayCauseFlashOfUnstyledContent(), and 23374 - added FOUC guards before requesting reapint on FrameView. 23375 23376 No new tests. The data loading speed matters and it cannot be 23377 captured by DRT. 23378 23379 * dom/Document.cpp: 23380 (WebCore::Document::mayCauseFlashOfUnstyledContent): Added. 23381 * dom/Document.h: 23382 * page/FrameView.cpp: 23383 (WebCore::FrameView::invalidateRect): Added a guard. 23384 (WebCore::FrameView::repaintContentRectangle): Added a guard. 23385 (WebCore::FrameView::doDeferredRepaints): Added a guard. 23386 (WebCore::FrameView::shouldUpdate): Added. 23387 * page/FrameView.h: 23388 * rendering/RenderBlock.cpp: 23389 (WebCore::RenderBlock::paintContents): Replaced FOUC check to use mayCauseFlashOfUnstyledContent 23390 * rendering/RenderLayer.cpp: 23391 (WebCore::RenderLayer::paintLayer): Replaced FOUC check to use mayCauseFlashOfUnstyledContent 23392 23393 2010-10-29 David Hyatt <hyatt (a] apple.com> 23394 23395 Reviewed by Dan Bernstein. 23396 23397 https://bugs.webkit.org/show_bug.cgi?id=48618 23398 23399 Backgrounds should clip to the border radius properly for vertical lines. The code that does this still assumes horizontal lines. 23400 The testcase to cover this used nested spans, which also exposed a bug in the propagation of the vertical bit through the line 23401 box tree. 23402 23403 Added fast/blockflow/border-radius-clipping-vertical-lr.html. 23404 23405 * rendering/RenderBlockLineLayout.cpp: 23406 (WebCore::RenderBlock::createLineBoxes): 23407 * rendering/RenderBoxModelObject.cpp: 23408 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 23409 23410 2010-10-26 MORITA Hajime <morrita (a] google.com> 23411 23412 Reviewed by Kent Tamura. 23413 23414 Refactoring: Spellchecking related static functions could form a class 23415 https://bugs.webkit.org/show_bug.cgi?id=48287 23416 23417 Extracted spellcheck related static functions to TextCheckingHelper class, 23418 which has EditorClient and Range as its member. 23419 23420 No new tests. Just a refactoring. 23421 23422 * CMakeLists.txt: 23423 * GNUmakefile.am: 23424 * WebCore.gypi: 23425 * WebCore.pro: 23426 * WebCore.vcproj/WebCore.vcproj: 23427 * WebCore.xcodeproj/project.pbxproj: 23428 * editing/Editor.cpp: 23429 (WebCore::Editor::advanceToNextMisspelling): 23430 (WebCore::Editor::isSelectionUngrammatical): 23431 (WebCore::Editor::guessesForUngrammaticalSelection): 23432 (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection): 23433 (WebCore::Editor::markMisspellingsAfterTypingToPosition): 23434 (WebCore::Editor::markMisspellingsOrBadGrammar): 23435 (WebCore::Editor::markMisspellings): 23436 (WebCore::Editor::markBadGrammar): 23437 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 23438 (WebCore::Editor::changeBackToReplacedString): 23439 * editing/Editor.h: 23440 * editing/TextCheckingHelper.cpp: Added. 23441 (WebCore::TextCheckingHelper::TextCheckingHelper): 23442 (WebCore::TextCheckingHelper::~TextCheckingHelper): 23443 (WebCore::TextCheckingHelper::paragraphAlignedRange): 23444 (WebCore::TextCheckingHelper::findFirstMisspelling): 23445 (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar): 23446 (WebCore::TextCheckingHelper::findFirstGrammarDetail): 23447 (WebCore::TextCheckingHelper::findFirstBadGrammar): 23448 (WebCore::TextCheckingHelper::isUngrammatical): 23449 (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): 23450 (WebCore::TextCheckingHelper::markAllMisspellings): 23451 (WebCore::TextCheckingHelper::markAllBadGrammar): 23452 * editing/TextCheckingHelper.h: Added. 23453 23454 2010-10-28 Adam Barth <abarth (a] webkit.org> 23455 23456 Reviewed by Eric Seidel, Peter Kasting, and Darin Fisher. 23457 (Eric reviewed the CoreGraphics interactions, Peter reviewed the image 23458 decoder interaction, and Darin Fisher SGTMed the policy decision.) 23459 23460 [chromium] Chromium Mac should use WebKit's image decoders 23461 https://bugs.webkit.org/show_bug.cgi?id=47974 23462 23463 This patch teaches WebKit's image decoders how to talk to CoreGraphics. 23464 This patch doesn't handle color profiles, but that will come in a 23465 subsequent patch. 23466 23467 * WebCore.gyp/WebCore.gyp: 23468 * WebCore.gypi: 23469 * loader/CachedImage.cpp: 23470 (WebCore::CachedImage::createImage): 23471 * platform/graphics/ImageSource.h: 23472 * platform/image-decoders/ImageDecoder.cpp: 23473 (WebCore::RGBA32Buffer::clear): 23474 (WebCore::RGBA32Buffer::zeroFill): 23475 (WebCore::RGBA32Buffer::copyBitmapData): 23476 (WebCore::RGBA32Buffer::setSize): 23477 * platform/image-decoders/ImageDecoder.h: 23478 (WebCore::RGBA32Buffer::getAddr): 23479 * platform/image-decoders/cg: Added. 23480 * platform/image-decoders/cg/ImageDecoderCG.cpp: Added. 23481 (WebCore::RGBA32Buffer::copyBitmapData): 23482 (WebCore::RGBA32Buffer::setSize): 23483 (WebCore::RGBA32Buffer::asNewNativeImage): 23484 23485 2010-10-28 Sergio Villar Senin <svillar (a] igalia.com> 23486 23487 Reviewed by Xan Lopez. 23488 23489 [GTK] GObject bindings generator issues 23490 https://bugs.webkit.org/show_bug.cgi?id=48135 23491 23492 GObject code generator must not generate conditional API's. This 23493 patch also adds an alternative return value for non-void 23494 conditional methods. With this change the conditionalMethods hack 23495 is no longer needed. 23496 23497 * bindings/scripts/CodeGeneratorGObject.pm: 23498 23499 2010-10-28 David Hyatt <hyatt (a] apple.com> 23500 23501 Reviewed by Dan Bernstein. 23502 23503 https://bugs.webkit.org/show_bug.cgi?id=48569 23504 23505 Box shadows on vertical inlines don't paint properly. Fix the paintBoxShadow method to treat the edges to include as 23506 logical (so that top/bottom are used instead of left/right for vertical lines). In order to make my box-shadow tests 23507 work I had to fix a bug in the transform code of InlineTextBox that was causing the baselines of vertical lines to 23508 be wrong. 23509 23510 Added fast/blockflow/box-shadow-* tests 23511 23512 * rendering/InlineTextBox.cpp: 23513 (WebCore::InlineTextBox::paint): 23514 * rendering/RenderBoxModelObject.cpp: 23515 (WebCore::RenderBoxModelObject::paintBoxShadow): 23516 * rendering/RenderBoxModelObject.h: 23517 23518 2010-10-28 James Robinson <jamesr (a] chromium.org> 23519 23520 Reviewed by Simon Fraser. 23521 23522 iframes forced into slow scrolling mode by containing RenderLayer sometimes 23523 https://bugs.webkit.org/show_bug.cgi?id=48570 23524 23525 Only performs the overlap test for RenderLayers that paint themselves. This 23526 prevents marking RenderWidgets as being overlapped unnecessarily. 23527 23528 Test: fast/repaint/iframe-scroll-repaint.html 23529 23530 * rendering/RenderLayer.cpp: 23531 (WebCore::RenderLayer::paintLayer): 23532 23533 2010-10-28 Sheriff Bot <webkit.review.bot (a] gmail.com> 23534 23535 Unreviewed, rolling out r70814. 23536 http://trac.webkit.org/changeset/70814 23537 https://bugs.webkit.org/show_bug.cgi?id=48612 23538 23539 Caused media/controls-drag-timebar.html to fail on multiple 23540 platforms (Requested by aroben on #webkit). 23541 23542 * html/HTMLMediaElement.cpp: 23543 (WebCore::HTMLMediaElement::seek): 23544 * platform/graphics/MediaPlayer.cpp: 23545 * platform/graphics/MediaPlayer.h: 23546 * platform/graphics/MediaPlayerPrivate.h: 23547 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: 23548 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 23549 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 23550 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 23551 * platform/graphics/win/QTMovie.cpp: 23552 * platform/graphics/win/QTMovie.h: 23553 23554 2010-10-28 Dan Bernstein <mitz (a] apple.com> 23555 23556 Reviewed by Simon Fraser. 23557 23558 <rdar://problem/8597430> Crash triggered by incremental layout of block truncated by line-clamp 23559 https://bugs.webkit.org/show_bug.cgi?id=48602 23560 23561 Test: fast/flexbox/line-clamp-crash.html 23562 23563 * rendering/RenderFlexibleBox.cpp: 23564 (WebCore::RenderFlexibleBox::applyLineClamp): Even if the child needs layout, call clearTruncation(), 23565 since layout itself may be partial and not touch the truncated line (but touch its markup box). 23566 23567 2010-10-28 Jian Li <jianli (a] chromium.org> 23568 23569 Reviewed by Dmitry Titov. 23570 23571 [chromium] UUID generation does not work in Linux that has sandbox 23572 turned on 23573 https://bugs.webkit.org/show_bug.cgi?id=48571 23574 23575 This is because we cannot access /proc when sandbox is on. The fix is to 23576 use random numbers to construct UUID. 23577 23578 * platform/UUID.cpp: 23579 (WebCore::createCanonicalUUIDString): 23580 23581 2010-10-28 Jia Pu <jpu (a] apple.com> 23582 23583 Reviewed by Dan Bernstein. 23584 23585 Editing a word with misspell or autocorrection underline should remove the underline when the editing changes the word. 23586 https://bugs.webkit.org/show_bug.cgi?id=48078 23587 <rdar://problem/8579155> 23588 23589 Tests: platform/mac/editing/spelling/editing-multiple-words-with-markers.html 23590 platform/mac/editing/spelling/editing-word-with-marker-1.html 23591 platform/mac/editing/spelling/editing-word-with-marker-2.html 23592 23593 This patch is part of on-going improvement of autocorrection feature on Mac OS X. When an editing 23594 occurs, if it affects words (by deleting/inserting characters, spliting word, merging words) that 23595 have Spelling and/or CorrectionIndicator markers, we want to remove the markers. If subsequntial 23596 spelling checking finds spelling error in newlly formed words, it will add the markers back in. 23597 23598 * dom/DocumentMarker.h: Changed MarkerType to bit masks to make search multiple types easier. 23599 23600 * dom/DocumentMarkerController.cpp: Refactored two removeMarkers() methods to support remove 23601 markers with specific type from a node. 23602 (WebCore::DocumentMarkerController::removeMarkers): Changed signature to remove marker with specific type. 23603 (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair): Refactoring. 23604 (WebCore::DocumentMarkerController::hasMarkers): Convenience method to search markers in range. 23605 23606 * dom/DocumentMarkerController.h: Added new methods and matched new signature of removeMarkers(). 23607 23608 * editing/Editor.cpp: 23609 (WebCore::Editor::respondToChangedContents): Remove existing markers if the change formed new word. 23610 (WebCore::Editor::cut): Remove markers on words that will be modified by this editing. 23611 (WebCore::Editor::paste): Ditto. 23612 (WebCore::Editor::pasteAsPlainText): Ditto. 23613 (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited): Main logic for removing 23614 markers on words affected by editing. 23615 23616 * editing/Editor.h: Added removeSpellAndCorrectionMarkersFromWordsToBeEdited(). Added 23617 REMOVE_MARKERS_UPON_EDITING and SUPPORT_AUTOCORRECTION_PANEL macro to improve readability. 23618 23619 * editing/TypingCommand.cpp: 23620 (WebCore::TypingCommand::insertText): Remove markers on words that will be modified by this editing. 23621 (WebCore::TypingCommand::deleteKeyPressed): Ditto. 23622 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto. 23623 23624 2010-10-28 Brian Weinstein <bweinstein (a] apple.com> 23625 23626 Reviewed by Brady Eidson. 23627 23628 Part of <https://bugs.webkit.org/show_bug.cgi?id=45980> 23629 userscripts/user-script-*-document.html tests are flaky on Windows 23630 23631 In WebFrameLoaderClient::committedLoad on Windows, we call through to PluginStream::didRecieveData 23632 if our manual loader is a plugin stream, and we can call didRecieveData with a 0 length. 23633 23634 We shouldn't ASSERT that length is 0, because code paths exists where we call it with a 0 length. 23635 23636 This is tested by re-enabling user-script-plugin-document.html on Windows. 23637 23638 * plugins/PluginStream.cpp: 23639 (WebCore::PluginStream::didReceiveData): 23640 23641 2010-10-28 Mihai Parparita <mihaip (a] chromium.org> 23642 23643 Reviewed by Darin Adler. 23644 23645 [Chromium] History related tests REGRESSED after r70723 23646 https://bugs.webkit.org/show_bug.cgi?id=48513 23647 23648 Remove backItem(), forwardItem() and currentItem() from the Chromium 23649 BackForwardList implementation, since they can use the base class 23650 behavior now (which call itemAtIndex with -1, 1, and 0 respectively). 23651 23652 * history/BackForwardList.h: 23653 * history/BackForwardListChromium.cpp: 23654 23655 2010-10-28 Ryosuke Niwa <rniwa (a] webkit.org> 23656 23657 Reviewed by Tony Chang. 23658 23659 chrome.dll!WebCore::Node::shadowAncestorNode ReadAV@NULL (98643190851b5662363449cc7303d8a5) 23660 https://bugs.webkit.org/show_bug.cgi?id=47888 23661 23662 The crash was caused by the while loop in ApplyStyleCommand::fixRangeAndApplyInlineStyle 23663 not considering the case where startNode is the root editable element. 23664 Fixed the bug by not entering the loop when startNode is the editable root. 23665 23666 Test: editing/style/fix-range-from-root-editable-crash.html 23667 23668 * editing/ApplyStyleCommand.cpp: 23669 (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle): 23670 23671 2010-10-28 Noam Rosenthal <noam.rosenthal (a] nokia.com> 23672 23673 Reviewed by Ariya Hidayat. 23674 23675 [Texmap] [Qt] Texture mapper initial implementation 23676 https://bugs.webkit.org/show_bug.cgi?id=47070 23677 23678 Build fix, some wrong changes slipped into the previous patch. 23679 No new tests: build fix. 23680 23681 * platform/graphics/GraphicsLayer.h: 23682 * platform/graphics/opengl/TextureMapperGL.cpp: 23683 (WebCore::BitmapTextureGL::setContentsToImage): 23684 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: 23685 (WebCore::TextureMapperNode::uploadTextureFromContent): 23686 (WebCore::TextureMapperNode::paintRecursive): 23687 * platform/qt/QWebPageClient.h: 23688 (QWebPageClient::setRootGraphicsLayer): 23689 23690 2010-10-28 David Hyatt <hyatt (a] apple.com> 23691 23692 Reviewed by James Robinson. 23693 23694 https://bugs.webkit.org/show_bug.cgi?id=48568 23695 23696 Backgrounds don't work right with vertical RenderInlines. Make background painting 23697 do the right thing for vertical strips. 23698 23699 Added fast/blockflow/background-* tests 23700 23701 * rendering/InlineFlowBox.cpp: 23702 (WebCore::InlineFlowBox::paintFillLayer): 23703 23704 2010-10-28 Eric Carlson <eric.carlson (a] apple.com> 23705 23706 Reviewed by Adam Roben. 23707 23708 Seeking by very small increment doesn't generate 'seeked' event 23709 https://bugs.webkit.org/show_bug.cgi?id=48530 23710 23711 Test: media/video-seek-by-small-increment.html 23712 23713 * html/HTMLMediaElement.cpp: 23714 (WebCore::HTMLMediaElement::seek): Ask the media engine for its closest time value so we can 23715 avoid asking it to seek to the current time. 23716 23717 * platform/graphics/MediaPlayer.cpp: 23718 (WebCore::MediaPlayer::mediaTimeForTimeValue): New. 23719 * platform/graphics/MediaPlayer.h: 23720 * platform/graphics/MediaPlayerPrivate.h: 23721 (WebCore::MediaPlayerPrivateInterface::mediaTimeForTimeValue): Ditto. 23722 23723 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: 23724 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 23725 (WebCore::MediaPlayerPrivate::mediaTimeForTimeValue): Return the closest value in the movie's time scale. 23726 23727 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 23728 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue): Ditto 23729 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 23730 23731 * platform/graphics/win/QTMovie.cpp: 23732 (QTMovie::timeScale): Return the movie's time scale. 23733 * platform/graphics/win/QTMovie.h: 23734 23735 2010-10-28 David Hyatt <hyatt (a] apple.com> 23736 23737 Reviewed by Beth Dakin. 23738 23739 https://bugs.webkit.org/show_bug.cgi?id=48443 23740 23741 Border images don't work right with vertical RenderInlines. Make border/mask/background painting 23742 do the right thing for vertical strips. 23743 23744 Added fast/blockflow/border-image-* tests. 23745 23746 * rendering/InlineFlowBox.cpp: 23747 (WebCore::InlineFlowBox::paintBoxDecorations): 23748 (WebCore::InlineFlowBox::paintMask): 23749 23750 2010-10-28 Patrick Gansterer <paroga (a] webkit.org> 23751 23752 Reviewed by Adam Roben. 23753 23754 Port ContextMenuItemWin.cpp to WinCE 23755 https://bugs.webkit.org/show_bug.cgi?id=48407 23756 23757 * platform/win/ContextMenuItemWin.cpp: 23758 23759 2010-10-28 Ryosuke Niwa <rniwa (a] webkit.org> 23760 23761 Reviewed by Darin Adler. 23762 23763 queryCommandValue should fall back to queryCommandState 23764 https://bugs.webkit.org/show_bug.cgi?id=48479 23765 23766 Added a fallback to Command::value so that commands with a state function without a value function 23767 returns the value returned by the state function as a string. 23768 23769 * editing/EditorCommand.cpp: 23770 (WebCore::Editor::Command::value): 23771 23772 2010-10-28 Pavel Feldman <pfeldman (a] chromium.org> 23773 23774 Not reviewed. Rolling out r70800. 23775 23776 2010-10-28 Alexey Proskuryakov <ap (a] apple.com> 23777 23778 Reviewed by Dan Bernstein. 23779 23780 https://bugs.webkit.org/show_bug.cgi?id=48551 23781 HTMLDocument::isFrameSet() should not depend on renderer 23782 23783 No change in functionality, so no new tests. 23784 23785 * html/HTMLDocument.cpp: (WebCore::HTMLDocument::isFrameSet): Omit the check for renderer. 23786 23787 * rendering/RenderLayer.h: Removed unneeded includes and forward declarations. 23788 23789 2010-10-28 Pavel Feldman <pfeldman (a] chromium.org> 23790 23791 Reviewed by Timothy Hatcher. 23792 23793 Web Inspector: make legacy resource tracking optional in the native code, 23794 make cookeis work against new resource manager. 23795 https://bugs.webkit.org/show_bug.cgi?id=48532 23796 23797 * inspector/InspectorCSSStore.cpp: 23798 (WebCore::InspectorCSSStore::resourceStyleSheetText): 23799 * inspector/InspectorController.cpp: 23800 (WebCore::InspectorController::InspectorController): 23801 (WebCore::InspectorController::~InspectorController): 23802 (WebCore::InspectorController::connectFrontend): 23803 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 23804 (WebCore::InspectorController::populateScriptObjects): 23805 (WebCore::InspectorController::unbindAllResources): 23806 (WebCore::InspectorController::didCommitLoad): 23807 (WebCore::InspectorController::frameDetachedFromParent): 23808 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 23809 (WebCore::InspectorController::identifierForInitialRequest): 23810 (WebCore::InspectorController::willSendRequest): 23811 (WebCore::InspectorController::markResourceAsCached): 23812 (WebCore::InspectorController::didReceiveResponse): 23813 (WebCore::InspectorController::didReceiveContentLength): 23814 (WebCore::InspectorController::didFinishLoading): 23815 (WebCore::InspectorController::didFailLoading): 23816 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 23817 (WebCore::InspectorController::scriptImported): 23818 (WebCore::InspectorController::setResourceTrackingEnabled): 23819 (WebCore::InspectorController::getCookies): 23820 (WebCore::InspectorController::deleteCookie): 23821 (WebCore::InspectorController::didCreateWebSocket): 23822 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 23823 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 23824 (WebCore::InspectorController::didCloseWebSocket): 23825 (WebCore::InspectorController::breakpointsSettingKey): 23826 (WebCore::InspectorController::getResourceContent): 23827 * inspector/InspectorController.h: 23828 * inspector/InspectorResource.cpp: 23829 (WebCore::InspectorResource::updateScriptObject): 23830 (WebCore::InspectorResource::markFailed): 23831 * inspector/InspectorResource.h: 23832 * inspector/InspectorResourceAgent.cpp: 23833 (WebCore::populateObjectWithFrameResources): 23834 * inspector/front-end/Resource.js: 23835 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 23836 * inspector/front-end/ResourceManager.js: 23837 (WebInspector.ResourceManager.prototype._updateResourceWithResponse): 23838 (WebInspector.ResourceManager.prototype.didFailLoading): 23839 * inspector/front-end/inspector.js: 23840 (WebInspector.updateResource): 23841 23842 2010-10-28 Pavel Podivilov <podivilov (a] chromium.org> 23843 23844 Reviewed by Pavel Feldman. 23845 23846 Web Inspector: fix pausing on next JavaScript statement 23847 https://bugs.webkit.org/show_bug.cgi?id=48534 23848 23849 * inspector/InspectorDebuggerAgent.cpp: 23850 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 23851 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement): 23852 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement): 23853 (WebCore::InspectorDebuggerAgent::pause): 23854 (WebCore::InspectorDebuggerAgent::didPause): 23855 * inspector/InspectorDebuggerAgent.h: 23856 23857 2010-10-28 Yuzo Fujishima <yuzo (a] google.com> 23858 23859 Reviewed by David Hyatt. 23860 23861 Fix for Bug 14550 - Non-layout style change does not update nested first-letter 23862 https://bugs.webkit.org/show_bug.cgi?id=14550 23863 23864 If a render text fragment is accompanied by a first letter, update the 23865 first letter's style when the fragment's style is changed. 23866 23867 Test: fast/css/first-letter-nested.html 23868 23869 * rendering/RenderBlock.cpp: 23870 (WebCore::RenderBlock::styleDidChange): Stop calling updateFirstLetter 23871 from here. 23872 * rendering/RenderBlock.h: Make updateFirstLetter accessbile from 23873 RenderTextFragment. 23874 * rendering/RenderTextFragment.cpp: 23875 (WebCore::RenderTextFragment::styleDidChange): If appropriate, update 23876 first letter after removing stale cached pseudo style. 23877 (WebCore::RenderTextFragment::blockForAccompanyingFirstLetter): Helper 23878 to get the block for the first letter. 23879 * rendering/RenderTextFragment.h: 23880 * rendering/style/RenderStyle.cpp: 23881 (WebCore::RenderStyle::removeCachedPseudoStyle): Remove the specified 23882 pseudo style from cache. 23883 * rendering/style/RenderStyle.h: 23884 23885 2010-10-28 Benoit Jacob <bjacob (a] mozilla.com> 23886 23887 Reviewed by Kenneth Russell. 23888 23889 Ensure that WebGL stencil buffers are correctly initialized 23890 https://bugs.webkit.org/show_bug.cgi?id=48351 23891 23892 * html/canvas/WebGLFramebuffer.cpp: 23893 (WebCore::WebGLFramebuffer::initializeRenderbuffers): 23894 23895 2010-10-28 Chris Fleizach <cfleizach (a] apple.com> 23896 23897 Reviewed by Adele Peterson. 23898 23899 AX: multi select group option does not handle setting of AXSelectedChildren correctly 23900 https://bugs.webkit.org/show_bug.cgi?id=48464 23901 23902 Ensure that when selecting an item from a <select> element, it accounts for <optgroups>. 23903 23904 Test: platform/mac/accessibility/select-element-selection-with-optgroups.html 23905 23906 * accessibility/AccessibilityListBoxOption.cpp: 23907 (WebCore::AccessibilityListBoxOption::setSelected): 23908 23909 2010-10-28 Dan Bernstein <mitz (a] apple.com> 23910 23911 Reviewed by Adam Roben. 23912 23913 No longer soft-link zlib 23914 https://bugs.webkit.org/show_bug.cgi?id=48004 23915 23916 * platform/graphics/WOFFFileFormat.cpp: 23917 (WebCore::convertWOFFToSfnt): Removed Windows-speciific code to soft-link 23918 zlib. 23919 23920 2010-10-27 Zhenyao Mo <zmo (a] google.com> 23921 23922 Reviewed by Kenneth Russell. 23923 23924 Work around a Mac driver bug in generateMipmap 23925 https://bugs.webkit.org/show_bug.cgi?id=48489 23926 23927 * html/canvas/WebGLRenderingContext.cpp: 23928 (WebCore::WebGLRenderingContext::generateMipmap): Make sure minFilter is set to NEAREST_MIPMAP_LINEAR before generateMipmap, and after the call, set it back to the original value. 23929 * html/canvas/WebGLTexture.h: 23930 (WebCore::WebGLTexture::getMinFilter): Return the cached minFilter value. 23931 23932 2010-10-28 Mikhail Naganov <mnaganov (a] chromium.org> 23933 23934 [Chromium clang] Unreviewed. Fix forward declaration of 'struct FileMetadata'. 23935 23936 See http://build.chromium.org/p/chromium.fyi/builders/Chromium%20Linux%20Debug%20Clang/builds/753/steps/compile/logs/stdio 23937 23938 * fileapi/FileSystemCallbacks.h: 23939 * platform/AsyncFileSystemCallbacks.h: 23940 23941 2010-10-28 Alexander Pavlov <apavlov (a] chromium.org> 23942 23943 Reviewed by Pavel Feldman. 23944 23945 Web Inspector: Bring backend-frontend message format to follow the protocol specification 23946 https://bugs.webkit.org/show_bug.cgi?id=48406 23947 23948 * inspector/InspectorDOMAgent.cpp: 23949 (WebCore::InspectorDOMAgent::getStyles): 23950 (WebCore::InspectorDOMAgent::applyStyleText): 23951 (WebCore::InspectorDOMAgent::buildObjectForStyle): 23952 (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): 23953 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 23954 (WebCore::InspectorDOMAgent::buildObjectForRule): 23955 * inspector/InspectorDOMAgent.h: 23956 * inspector/front-end/AuditRules.js: 23957 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback): 23958 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun): 23959 * inspector/front-end/CSSStyleModel.js: 23960 (WebInspector.CSSStyleModel.parseRuleArrayPayload): 23961 (WebInspector.CSSStyleModel.prototype.getStylesAsync): 23962 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync): 23963 (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync): 23964 (WebInspector.CSSStyleModel.prototype.setCSSText): 23965 * inspector/front-end/DOMAgent.js: 23966 (WebInspector.CSSStyleDeclaration): 23967 (WebInspector.CSSStyleDeclaration.parsePayload): 23968 (WebInspector.CSSStyleDeclaration.prototype.get allProperties): 23969 (WebInspector.CSSStyleDeclaration.prototype.getLiveProperty): 23970 (WebInspector.CSSStyleDeclaration.prototype.getPropertyValue): 23971 (WebInspector.CSSStyleDeclaration.prototype.getPropertyPriority): 23972 (WebInspector.CSSStyleDeclaration.prototype.getPropertyShorthand): 23973 (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit): 23974 (WebInspector.CSSStyleDeclaration.prototype.getShorthandValue): 23975 (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority): 23976 (WebInspector.CSSStyleDeclaration.prototype.appendProperty): 23977 (WebInspector.CSSStyleDeclaration.prototype.propertyAt): 23978 (WebInspector.CSSRule): 23979 (WebInspector.CSSRule.parsePayload): 23980 (WebInspector.CSSRule.prototype.get isUserAgent): 23981 (WebInspector.CSSRule.prototype.get isUser): 23982 (WebInspector.CSSRule.prototype.get isViaInspector): 23983 (WebInspector.CSSRule.prototype.get isRegular): 23984 (WebInspector.CSSProperty): 23985 (WebInspector.CSSProperty.parsePayload): 23986 (WebInspector.CSSProperty.prototype.get propertyText): 23987 (WebInspector.CSSProperty.prototype.get isLive): 23988 (WebInspector.CSSProperty.prototype.get active): 23989 (WebInspector.CSSProperty.prototype.get styleBased): 23990 (WebInspector.CSSProperty.prototype.get inactive): 23991 (WebInspector.CSSProperty.prototype.get disabled): 23992 (WebInspector.CSSProperty.prototype.setText): 23993 (WebInspector.CSSProperty.prototype.setValue): 23994 (WebInspector.CSSProperty.prototype.setDisabled.callback): 23995 (WebInspector.CSSProperty.prototype.setDisabled): 23996 * inspector/front-end/MetricsSidebarPane.js: 23997 (WebInspector.MetricsSidebarPane.prototype.update.callback): 23998 (WebInspector.MetricsSidebarPane.prototype.update.inlineStyleCallback): 23999 (WebInspector.MetricsSidebarPane.prototype.update): 24000 (WebInspector.MetricsSidebarPane.prototype._update): 24001 (WebInspector.MetricsSidebarPane.prototype.editingCommitted.callback): 24002 (WebInspector.MetricsSidebarPane.prototype.editingCommitted.setEnabledValueCallback): 24003 (WebInspector.MetricsSidebarPane.prototype.editingCommitted): 24004 * inspector/front-end/StylesSidebarPane.js: 24005 (WebInspector.StylesSidebarPane.prototype.update): 24006 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate): 24007 (WebInspector.StylesSidebarPane.prototype._refreshStyleRules): 24008 (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules): 24009 (WebInspector.StylesSidebarPane.prototype._markUsedProperties): 24010 (WebInspector.StylesSidebarPane.prototype._containsInherited): 24011 (WebInspector.StylePropertiesSection): 24012 (WebInspector.StylePropertiesSection.prototype.isPropertyInherited): 24013 (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded): 24014 (WebInspector.StylePropertiesSection.prototype.onpopulate): 24015 (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty): 24016 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback): 24017 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): 24018 (WebInspector.ComputedStylePropertiesSection.prototype._isPropertyInherited): 24019 (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate): 24020 (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace): 24021 (WebInspector.StylePropertyTreeElement): 24022 (WebInspector.StylePropertyTreeElement.prototype.get disabled): 24023 (WebInspector.StylePropertyTreeElement.prototype.get name): 24024 (WebInspector.StylePropertyTreeElement.prototype.get priority): 24025 (WebInspector.StylePropertyTreeElement.prototype.get value): 24026 (WebInspector.StylePropertyTreeElement.prototype.get parsedOk): 24027 (WebInspector.StylePropertyTreeElement.prototype): 24028 (WebInspector.StylePropertyTreeElement.prototype.): 24029 24030 2010-10-27 MORITA Hajime <morrita (a] google.com> 24031 24032 Reviewed by Kent Tamura. 24033 24034 WebKit needs to expose an Element::spellcheck attribute to javascript. 24035 https://bugs.webkit.org/show_bug.cgi?id=25536 24036 24037 Published Element.spellcheck property on IDL, implemented it. 24038 24039 Tests: editing/spelling/spelling-attribute-change.html 24040 fast/dom/HTMLElement/spellcheck.html 24041 24042 * html/HTMLElement.cpp: 24043 (WebCore::HTMLElement::spellcheck): 24044 (WebCore::HTMLElement::setSpellcheck): 24045 * html/HTMLElement.h: 24046 * html/HTMLElement.idl: 24047 24048 2010-10-27 Pavel Feldman <pfeldman (a] chromium.org> 24049 24050 Reviewed by Timothy Hatcher. 24051 24052 Web Inspector: make debugger work against new resource manager. 24053 https://bugs.webkit.org/show_bug.cgi?id=48376 24054 24055 * inspector/Inspector.idl: 24056 * inspector/InspectorController.cpp: 24057 (WebCore::InspectorController::identifierForInitialRequest): 24058 * inspector/InspectorResourceAgent.cpp: 24059 (WebCore::InspectorResourceAgent::identifierForInitialRequest): 24060 * inspector/InspectorResourceAgent.h: 24061 * inspector/front-end/ExtensionServer.js: 24062 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 24063 * inspector/front-end/Resource.js: 24064 (WebInspector.Resource.prototype.set content): 24065 * inspector/front-end/ResourceManager.js: 24066 (WebInspector.ResourceManager): 24067 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 24068 (WebInspector.ResourceManager.prototype._createResource): 24069 (WebInspector.ResourceManager.prototype.willSendRequest): 24070 (WebInspector.ResourceManager.prototype._updateResourceWithRequest): 24071 (WebInspector.ResourceManager.prototype.didFinishLoading): 24072 (WebInspector.ResourceManager.prototype.didFailLoading): 24073 (WebInspector.ResourceManager.prototype.setOverrideContent): 24074 (WebInspector.ResourceManager.prototype._processCachedResources): 24075 (WebInspector.ResourceManager.prototype._addFramesRecursively): 24076 (WebInspector.ResourceManager.prototype.resourceForURL): 24077 (WebInspector.ResourceManager.prototype.addConsoleMessage): 24078 (WebInspector.ResourceManager.prototype.clearConsoleMessages): 24079 (WebInspector.ResourceManager.prototype.forAllResources): 24080 (WebInspector.ResourceManager.prototype._bindResourceURL): 24081 (WebInspector.ResourceManager.prototype._unbindResourceURL): 24082 (WebInspector.ResourceManager.getContent): 24083 (WebInspector.ResourceTreeModel): 24084 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame): 24085 (WebInspector.ResourceTreeModel.prototype.addResourceToFrame): 24086 (WebInspector.ResourceTreeModel.prototype._clearResources): 24087 * inspector/front-end/StoragePanel.js: 24088 (WebInspector.StoragePanel.prototype.addOrUpdateFrame): 24089 * inspector/front-end/networkPanel.css: 24090 (.network.panel .resources-dividers): 24091 24092 2010-10-28 Andy Estes <aestes (a] apple.com> 24093 24094 One more Qt fix due to r70754. 24095 24096 * html/HTMLObjectElement.cpp: 24097 (WebCore::HTMLObjectElement::hasValidClassId): 24098 24099 2010-10-28 Pascal Massimino <pascal.massimino (a] gmail.com> 24100 24101 Reviewed by Adam Barth. 24102 24103 fix setSize() call flow: it was only called the first 24104 time (when onlySize is true) 24105 Bug URL: https://bugs.webkit.org/show_bug.cgi?id=48494 24106 24107 Testing: difficult to exercise the bug, as it requires 24108 some manual flow (change tab, scroll,...) 24109 24110 * platform/image-decoders/webp/WEBPImageDecoder.cpp: 24111 (WebCore::WEBPImageDecoder::decode): 24112 fix: call setSize() even when onlySize is false 24113 24114 2010-10-28 Andy Estes <aestes (a] apple.com> 24115 24116 Fix the Qt build after r70754. 24117 24118 * html/HTMLObjectElement.cpp: 24119 (WebCore::HTMLObjectElement::hasValidClassId): 24120 (WebCore::HTMLObjectElement::updateWidget): 24121 * html/HTMLObjectElement.h: 24122 24123 2010-10-28 Andy Estes <aestes (a] apple.com> 24124 24125 Reviewed by Adam Barth. 24126 24127 Fix a test failure introduced in r70748 by supporting Qt's non-standard 24128 use of classid. 24129 https://bugs.webkit.org/show_bug.cgi?id=45679 24130 24131 * html/HTMLObjectElement.cpp: 24132 (WebCore::objectHasSupportedClassId): Return true if the object's 24133 serviceType is 'application/x-qt-plugin'. 24134 (WebCore::HTMLObjectElement::updateWidget): Do not render fallback 24135 content if a non-empty classid is specified for a Qt plugin object. 24136 24137 2010-10-28 Ivan Krsti <ike (a] apple.com> 24138 24139 Reviewed by Mark Rowe. 24140 24141 Remove unused experimental proxied panel interface. 24142 <rdar://problem/7237059> 24143 24144 * WebCore.exp.in: 24145 * platform/mac/WebCoreSystemInterface.h: 24146 * platform/mac/WebCoreSystemInterface.mm: 24147 24148 2010-10-27 Andy Estes <aestes (a] apple.com> 24149 24150 Reviewed by Adam Barth. 24151 24152 r66156 broke AtlasCT library, formerly affected http://map.d.co.il/ 24153 https://bugs.webkit.org/show_bug.cgi?id=45679 24154 24155 This patch removes WebKit's map of classid values to MIME types. It also 24156 changes the behavior of object elements to render fallback content when 24157 a non-empty classid attribute is specified, which is the behavior HTML5 24158 specifies when a UA encounters a classid it doesn't understand. 24159 24160 Test: fast/replaced/object-with-non-empty-classid-triggers-fallback.html 24161 24162 * html/HTMLObjectElement.cpp: Remove serviceTypeForClassId(), 24163 createClassIdToTypeMap(), and the ClassIdToTypeMap typedef. 24164 (WebCore::HTMLObjectElement::updateWidget): Do not call 24165 serviceTypeForClassId() when there is no type attribute, and render 24166 fallback content if the classid attribute is non-empty. 24167 24168 2010-10-27 Eric Uhrhane <ericu (a] chromium.org> 24169 24170 Reviewed by David Levin. 24171 24172 [Chromium] Metadata queries should return full file info, not just modification time 24173 https://bugs.webkit.org/show_bug.cgi?id=48098 24174 24175 LayoutTests that use this functionality via WorkerAsyncFileWriter are in review. 24176 24177 Build file changes to add FileMetadata. 24178 * GNUmakefile.am: 24179 * WebCore.gypi: 24180 * WebCore.pro: 24181 * WebCore.vcproj/WebCore.vcproj: 24182 * WebCore.xcodeproj/project.pbxproj: 24183 24184 The rest of the changes here just pass the new FileMetadata object through calls that used to take a modification time. 24185 * platform/FileMetadata.h: Added. 24186 (WebCore::FileMetadata::FileMetadata): 24187 * fileapi/FileSystemCallbacks.cpp: 24188 (WebCore::FileSystemCallbacksBase::didReadMetadata): 24189 (WebCore::MetadataCallbacks::didReadMetadata): 24190 * fileapi/FileSystemCallbacks.h: 24191 * platform/AsyncFileSystemCallbacks.h: 24192 24193 2010-10-27 Chris Rogers <crogers (a] google.com> 24194 24195 Reviewed by Kenneth Russell. 24196 24197 Add VectorMath files 24198 https://bugs.webkit.org/show_bug.cgi?id=48467 24199 24200 No new tests since audio API is not yet implemented. 24201 24202 * platform/audio/VectorMath.cpp: Added. 24203 (WebCore::VectorMath::vsmul): 24204 (WebCore::VectorMath::vadd): 24205 * platform/audio/VectorMath.h: Added. 24206 24207 2010-10-27 Chris Rogers <crogers (a] google.com> 24208 24209 Reviewed by Kenneth Russell. 24210 24211 Fixup files affected by VectorMath and related API changes 24212 https://bugs.webkit.org/show_bug.cgi?id=48481 24213 24214 No new tests since audio API is not yet implemented. 24215 24216 * platform/audio/AudioBus.cpp: 24217 * platform/audio/AudioChannel.cpp: 24218 * platform/audio/Biquad.cpp: 24219 * platform/audio/FFTConvolver.cpp: 24220 * platform/audio/FFTConvolver.h: 24221 * platform/audio/Panner.cpp: 24222 (WebCore::Panner::create): 24223 * platform/audio/Reverb.cpp: 24224 (WebCore::calculateNormalizationScale): 24225 (WebCore::Reverb::initialize): 24226 (WebCore::Reverb::process): 24227 * platform/audio/ReverbAccumulationBuffer.cpp: 24228 * platform/audio/ReverbAccumulationBuffer.h: 24229 * platform/audio/ReverbConvolver.cpp: 24230 (WebCore::ReverbConvolver::ReverbConvolver): 24231 (WebCore::ReverbConvolver::process): 24232 * platform/audio/ReverbConvolver.h: 24233 * platform/audio/ReverbConvolverStage.cpp: 24234 (WebCore::ReverbConvolverStage::ReverbConvolverStage): 24235 * platform/audio/ReverbConvolverStage.h: 24236 * platform/audio/ReverbInputBuffer.h: 24237 24238 2010-10-27 Kinuko Yasuda <kinuko (a] chromium.org> 24239 24240 Reviewed by Dumitru Daniliuc. 24241 24242 DOMFileSystem's reference should be kept while there're any active Entries/callbacks 24243 https://bugs.webkit.org/show_bug.cgi?id=47535 24244 24245 Changed to keep DOMFileSystem's reference in each EntryBase, DirectoryReaderBase, EntryCallbacks and EntriesCallbacks. 24246 24247 Test: fast/filesystem/filesystem-reference.html 24248 24249 * fileapi/DOMFileSystemBase.cpp: 24250 (WebCore::DOMFileSystemBase::readDirectory): Changed to pass/take 24251 PassRefPtr but not a raw pointer. 24252 * fileapi/DOMFileSystemBase.h: 24253 * fileapi/DirectoryEntry.cpp: 24254 (WebCore::DirectoryEntry::DirectoryEntry): Ditto. 24255 (WebCore::DirectoryEntry::createReader): 24256 * fileapi/DirectoryEntry.h: 24257 (WebCore::DirectoryEntry::create): Ditto. 24258 * fileapi/DirectoryEntrySync.cpp: 24259 (WebCore::DirectoryEntrySync::DirectoryEntrySync): Ditto. 24260 * fileapi/DirectoryEntrySync.h: 24261 (WebCore::DirectoryEntrySync::create): Ditto. 24262 * fileapi/DirectoryReader.h: 24263 (WebCore::DirectoryReader::filesystem): 24264 * fileapi/DirectoryReaderBase.h: 24265 (WebCore::DirectoryReaderBase::filesystem): 24266 * fileapi/Entry.cpp: 24267 (WebCore::Entry::Entry): Ditto. 24268 * fileapi/Entry.h: 24269 (WebCore::Entry::filesystem): 24270 * fileapi/EntryBase.h: 24271 (WebCore::EntryBase::filesystem): 24272 (WebCore::EntryBase::EntryBase): Ditto. 24273 * fileapi/EntrySync.cpp: 24274 (WebCore::EntrySync::create): Ditto. 24275 (WebCore::EntrySync::getParent): 24276 (WebCore::EntrySync::EntrySync): Ditto. 24277 * fileapi/EntrySync.h: 24278 (WebCore::EntrySync::filesystem): 24279 * fileapi/FileEntry.cpp: 24280 (WebCore::FileEntry::FileEntry): Ditto. 24281 * fileapi/FileEntry.h: 24282 (WebCore::FileEntry::create): Ditto. 24283 * fileapi/FileEntrySync.cpp: 24284 (WebCore::FileEntrySync::FileEntrySync): Ditto. 24285 * fileapi/FileEntrySync.h: 24286 (WebCore::FileEntrySync::create): Ditto. 24287 * fileapi/FileSystemCallbacks.cpp: 24288 (WebCore::EntriesCallbacks::create): Ditto. 24289 (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto. 24290 * fileapi/FileSystemCallbacks.h: 24291 24292 2010-10-27 Yuzo Fujishima <yuzo (a] google.com> 24293 24294 Reviewed by Eric Seidel. 24295 24296 Fix for Bug 48310 - SVG font-face-name without name attribute causes a crash 24297 https://bugs.webkit.org/show_bug.cgi?id=48310 24298 24299 Test: svg/custom/font-face-name-without-name-attr.svg 24300 24301 * svg/SVGFontFaceElement.cpp: 24302 (WebCore::SVGFontFaceElement::rebuildFontFace): Don't create src 24303 property if the src value list is empty. 24304 * svg/SVGFontFaceSrcElement.cpp: 24305 (WebCore::SVGFontFaceSrcElement::srcValue): Don't add empty src 24306 values to the src value list. 24307 24308 2010-10-27 Chris Rogers <crogers (a] google.com> 24309 24310 Reviewed by Kenneth Russell. 24311 24312 Allow AudioDSPKernel to function without an AudioDSPKernelProcessor 24313 https://bugs.webkit.org/show_bug.cgi?id=48472 24314 24315 No new tests since audio API is not yet implemented. 24316 24317 * platform/audio/AudioDSPKernel.h: 24318 (WebCore::AudioDSPKernel::AudioDSPKernel): 24319 (WebCore::AudioDSPKernel::sampleRate): 24320 24321 2010-10-27 Enrica Casucci <enrica (a] apple.com> 24322 24323 Reviewed by Alexey Proskuryakov. 24324 24325 Support Appkit key bindings and custom key bindings in WebKit2 24326 https://bugs.webkit.org/show_bug.cgi?id=48271 24327 <rdar://problem/7660723> 24328 24329 * dom/KeyboardEvent.h: 24330 (WebCore::KeypressCommand::KeypressCommand): Added default constructor and modified assert for text 24331 insertion command constructor to support WebKit2 scenarios. 24332 The default constructor is needed to support the generated WebKit2 message processing code. 24333 24334 2010-10-26 Darin Adler <darin (a] apple.com> 24335 24336 Reviewed by Sam Weinig. 24337 24338 WebKitTestRunner needs to support layoutTestController.dumpBackForwardList 24339 https://bugs.webkit.org/show_bug.cgi?id=42322 24340 rdar://problem/8193631 24341 24342 WebKitTestRunner needs to support layoutTestController.clearBackForwardList 24343 https://bugs.webkit.org/show_bug.cgi?id=42333 24344 rdar://problem/8193643 24345 24346 * WebCore.exp.in: Updated exports. 24347 24348 * history/BackForwardList.h: Added comments about future refactoring. 24349 Moved functions that are not called inside WebCore into a separate 24350 section, to be removed later. Added an isActive function to replace the 24351 use of enabled() and entries(). 24352 24353 * history/BackForwardListImpl.h: Removed isBackForwardListImpl. 24354 Marked virtual function overrides virtual explicitly, except for the 24355 ones that will be non-virtual once we make the changes above. 24356 Added the isActive function. 24357 24358 * history/PageCache.cpp: 24359 (WebCore::logCanCachePageDecision): Use isActive. 24360 (WebCore::PageCache::canCache): Ditto. 24361 24362 * loader/FrameLoader.cpp: 24363 (WebCore::FrameLoader::checkDidPerformFirstNavigation): Check 24364 using currentItem, backItem, and forwardItem instead of 24365 using entries. 24366 24367 * page/Settings.cpp: 24368 (WebCore::Settings::setUsesPageCache): Loop through the back/forward 24369 list entries using backListCount and forwardListCount instead of 24370 using entries. 24371 24372 2010-10-27 Chris Rogers <crogers (a] google.com> 24373 24374 Reviewed by Chris Marrin. 24375 24376 Add ENABLE_WEB_AUDIO feature enable flag (initially disabled) to build-webkit 24377 https://bugs.webkit.org/show_bug.cgi?id=48279 24378 24379 No new tests since flag is disabled. 24380 24381 * Configurations/FeatureDefines.xcconfig: 24382 24383 2010-10-27 Chris Rogers <crogers (a] google.com> 24384 24385 Reviewed by Kenneth Russell. 24386 24387 Add AudioResamplerKernel files 24388 https://bugs.webkit.org/show_bug.cgi?id=47624 24389 24390 No new tests since audio API is not yet implemented. 24391 24392 * platform/audio/AudioResamplerKernel.cpp: Added. 24393 (WebCore::AudioResamplerKernel::AudioResamplerKernel): 24394 (WebCore::AudioResamplerKernel::getSourcePointer): 24395 (WebCore::AudioResamplerKernel::process): 24396 (WebCore::AudioResamplerKernel::reset): 24397 (WebCore::AudioResamplerKernel::rate): 24398 * platform/audio/AudioResamplerKernel.h: Added. 24399 24400 2010-10-27 Adam Barth <abarth (a] webkit.org> 24401 24402 Reviewed by Ojan Vafai. 24403 24404 REGRESSION(66511): CORDYS Process Factory doesn't work 24405 https://bugs.webkit.org/show_bug.cgi?id=48453 24406 24407 When Ojan refactored this function in 66511, he missed an "else", 24408 which causes us to generated HIERARCHY_REQUEST_ERR in some cases where 24409 we're not supposed to. This patch restores the "else" behavior (using 24410 an early return) and adds a test for the cases that caused problems in 24411 the field. 24412 24413 Test: fast/dom/allowed-children.html 24414 24415 * dom/Node.cpp: 24416 (WebCore::isChildTypeAllowed): 24417 24418 2010-10-27 Beth Dakin <bdakin (a] apple.com> 24419 24420 Reviewed by Darin Adler. 24421 24422 Fix for https://bugs.webkit.org/show_bug.cgi?id=48385 Add WebKit 24423 SPI to scale a WebView 24424 -and corresponding- 24425 <rdar://problem/8107667> 24426 24427 This patch adds SPI to Mac WebKit that scales the page by the given 24428 scale factor. The scale factor is factored into the RenderStyle's 24429 transform. 24430 24431 Set the current pageScale for the document. 24432 * css/CSSStyleSelector.cpp: 24433 (WebCore::CSSStyleSelector::styleForDocument): 24434 24435 Frame keeps track of the page scale factor. When 24436 scalePage() is called, it modifies the RenderView's style to 24437 include a transform of the appropriate scale and forces a style 24438 recalc. 24439 * page/Frame.cpp: 24440 (WebCore::Frame::Frame): 24441 (WebCore::Frame::scalePage): 24442 * page/Frame.h: 24443 (WebCore::Frame::pageScaleFactor): 24444 * WebCore.exp.in: 24445 24446 Add a scale to the transformation matrix. 24447 * rendering/style/RenderStyle.cpp: 24448 (WebCore::RenderStyle::setPageScaleTransform): 24449 * rendering/style/RenderStyle.h: 24450 24451 2010-10-27 Dan Bernstein <mitz (a] apple.com> 24452 24453 Reviewed by Darin Adler. 24454 24455 REGRESSION (r70335): Incorrect article layout in Safari Reader 24456 https://bugs.webkit.org/show_bug.cgi?id=48436 24457 24458 * page/DOMWindow.cpp: 24459 (WebCore::DOMWindow::getMatchedCSSRules): Return rules from all origins if the cross-origin 24460 check is disabled. 24461 * page/Settings.cpp: 24462 (WebCore::Settings::Settings): Initialize m_crossOriginCheckInGetMatchedCSSRulesDisabled. 24463 * page/Settings.h: 24464 (WebCore::Settings::setCrossOriginCheckInGetMatchedCSSRulesDisabled): Added this accessor. 24465 (WebCore::Settings::crossOriginCheckInGetMatchedCSSRulesDisabled): Ditto. 24466 24467 2010-10-27 Zhenyao Mo <zmo (a] google.com> 24468 24469 Reviewed by Kenneth Russell. 24470 24471 refactor the nested large switch statements in GraphicsContext3DCG.cpp:getImageData() 24472 https://bugs.webkit.org/show_bug.cgi?id=47027 24473 24474 * platform/graphics/GraphicsContext3D.cpp: 24475 (WebCore::doPacking): ASSERT false if undefined format is passed in. 24476 * platform/graphics/GraphicsContext3D.h: Add kSourceFormatUndefined enum. 24477 * platform/graphics/cg/GraphicsContext3DCG.cpp: 24478 (WebCore::getSourceDataFormat): Decide source data format from componentsPerPixel, alpha format, bitsPerComponet, etc. 24479 (WebCore::GraphicsContext3D::getImageData): Refactor the code to use getSourceDataFormat and remove nested switches. 24480 24481 2010-10-27 Patrick Gansterer <paroga (a] webkit.org> 24482 24483 Reviewed by Adam Barth. 24484 24485 Use WTF::StringHasher::createBlobHash where possible 24486 https://bugs.webkit.org/show_bug.cgi?id=48228 24487 24488 Replace StringImpl::computeHash with StringHasher::createBlobHash. 24489 This removes many duplicated code. 24490 24491 * bindings/js/JSSVGPODTypeWrapper.h: 24492 (WebCore::PODTypeWrapperCacheInfoHash::hash): 24493 * page/SecurityOriginHash.h: 24494 (WebCore::SecurityOriginHash::hash): 24495 * platform/cf/SchedulePair.h: 24496 (WebCore::SchedulePairHash::hash): 24497 * platform/graphics/FontCache.cpp: 24498 (WebCore::computeHash): 24499 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 24500 (WebCore::FontPlatformData::RefCountedHFONT::hash): 24501 * platform/graphics/cocoa/FontPlatformData.h: 24502 (WebCore::FontPlatformData::hash): 24503 * platform/graphics/gtk/FontPlatformDataPango.h: 24504 (WebCore::FontPlatformData::hash): 24505 * platform/graphics/wince/FontPlatformData.cpp: 24506 (WebCore::FixedSizeFontDataKeyHash::hash): 24507 * platform/graphics/wx/FontPlatformDataWx.cpp: 24508 (WebCore::FontPlatformData::FontPlatformData): 24509 (WebCore::FontPlatformData::computeHash): 24510 * plugins/PluginPackage.cpp: 24511 (WebCore::PluginPackage::hash): 24512 * plugins/win/PluginPackageWin.cpp: 24513 (WebCore::PluginPackage::hash): 24514 * svg/DeprecatedSVGAnimatedTemplate.h: 24515 (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash): 24516 * svg/properties/SVGAnimatedPropertyDescription.h: 24517 (WebCore::SVGAnimatedPropertyDescriptionHash::hash): 24518 24519 2010-10-27 Tony Chang <tony (a] chromium.org> 24520 24521 Unreviewed, build fix after r70692. 24522 24523 * rendering/RenderBoxModelObject.cpp: 24524 (WebCore::RenderBoxModelObject::paintBorder): 24525 24526 2010-10-27 Leandro Pereira <leandro (a] profusion.mobi> 24527 24528 Unreviewed. Build fix after r70651. 24529 24530 * CMakeListsEfl.txt: Add SoupURIUtils.cpp. 24531 24532 2010-10-27 Crystal Zhang <haizhang (a] rim.com> 24533 24534 Reviewed by Eric Carlson. 24535 24536 https://bugs.webkit.org/show_bug.cgi?id=48446 24537 24538 Fix an issue where we were passing the wrong parameter 24539 to MIMETypeRegistry::getMIMETypeForExtension(). 24540 24541 * platform/MIMETypeRegistry.cpp: 24542 24543 2010-10-27 David Hyatt <hyatt (a] apple.com> 24544 24545 Reviewed by Beth Dakin. 24546 24547 https://bugs.webkit.org/show_bug.cgi?id=48449 24548 24549 Make border drawing work correctly with vertical inline flows. The top and bottom edge have to be omitted 24550 rather than the left and right edges. 24551 24552 Also discovered that border-radius is broken with the new path-based-drawing code for all inline flows. This 24553 is a regression from the old drawing code. I patched the code to be correct rather than clipping out stuff 24554 that it shouldn't and applying border-radii on lines that don't even have them. 24555 24556 Added fast/blockflow/border-vertical-lr.html and fast/borders/border-radius-inline-flow.html 24557 24558 * rendering/RenderBoxModelObject.cpp: 24559 (WebCore::RenderBoxModelObject::paintBorder): 24560 (WebCore::RenderBoxModelObject::clipBorderSidePolygon): 24561 * rendering/RenderBoxModelObject.h: 24562 24563 2010-10-27 Martin Robinson <mrobinson (a] igalia.com> 24564 24565 Reviewed by Gustavo Noronha Silva. 24566 24567 [Cairo] Font fallback determination is very ineffecient 24568 https://bugs.webkit.org/show_bug.cgi?id=42052 24569 24570 When choosing a fallback font in FontCache::getFontDataForCharacters, use FontConfig's 24571 mechanism for searching the fallback list directly, instead of scanning the list manually. 24572 If the font is a custom font or any other font with no FontConfig pattern associated with 24573 it, as FontConfig for a font that can supply the missing glyphs. 24574 24575 Test: platform/gtk/fonts/custom-font-missing-glyphs.html 24576 24577 * platform/graphics/cairo/FontCacheFreeType.cpp: 24578 (WebCore::createFontConfigPatternForCharacters): Added this helper which turns 24579 a collection of unicode characters into a FontConfig pattern. 24580 (WebCore::findBestFontGivenFallbacks): Using a FontConfig pattern created with th 24581 above helper and a FcFontSet of fallback fonts, this helper will find a font in 24582 the set which fulfills the requirments. 24583 (WebCore::FontCache::getFontDataForCharacters): Given an existing font with missing 24584 glyphs, either find an appropriate fallback font from the list of FontConfig fallbacks 24585 or ask FontConfig directly for an appropriate font. 24586 * platform/graphics/cairo/FontPlatformDataFreeType.h: Made a member mutable, as it is 24587 initialized lazily. 24588 24589 2010-10-27 Alexander Pavlov <apavlov (a] chromium.org> 24590 24591 Reviewed by Pavel Feldman. 24592 24593 Web Inspector: "Reload Page and Audit on Load" fails to run audits when resource tracking is disabled 24594 https://bugs.webkit.org/show_bug.cgi?id=48431 24595 24596 * inspector/front-end/AuditsPanel.js: 24597 (WebInspector.AuditsPanel.prototype._reloadResources): 24598 * inspector/front-end/ResourcesPanel.js: 24599 (WebInspector.ResourcesPanel.prototype._createPanelEnabler): 24600 (WebInspector.ResourcesPanel.prototype._enableResourceTracking): 24601 24602 2010-10-27 Abhishek Arya <inferno (a] chromium.org> 24603 24604 Reviewed by Dave Hyatt. 24605 24606 Add a function to make sure child is allowed before adding to a 24607 render view. 24608 https://bugs.webkit.org/show_bug.cgi?id=48328 24609 24610 Test: fast/inline/inline-child-height-width-calc-crash.html 24611 24612 * rendering/RenderView.cpp: 24613 (WebCore::RenderView::isChildAllowed): 24614 * rendering/RenderView.h: 24615 24616 2010-10-27 Martin Robinson <mrobinson (a] igalia.com> 24617 24618 Reviewed by Gustavo Noronha Silva. 24619 24620 [GTK] r69296 includes a cast from GdkWindow* to GtkWindow* 24621 https://bugs.webkit.org/show_bug.cgi?id=48445 24622 24623 Pass the pageClient GtkWidget* to gtk_xtbin_new instead of the 24624 GdkWindow*. The pageClient is used to get the proper visual for the 24625 plugin container widget. 24626 24627 No new tests. This patch should prevent plugins/null-npp-getvalue-pointer.html 24628 from crashing. 24629 24630 * plugins/gtk/PluginViewGtk.cpp: 24631 (WebCore::PluginView::platformStart): Pass the widget instead of the window. 24632 * plugins/gtk/gtk2xtbin.c: Accept the widget instead of the window. 24633 (gtk_xtbin_new): 24634 * plugins/gtk/gtk2xtbin.h: Update the declaration. 24635 24636 2010-10-27 Kwang Yul Seo <skyul (a] company100.net> 24637 24638 Reviewed by James Robinson. 24639 24640 [BREWMP] Port graphics backend 24641 https://bugs.webkit.org/show_bug.cgi?id=40275 24642 24643 Add PLATFORM(BREWMP) guard to skia's FontCustomPlatformData 24644 to share OS(LINUX) implementation. 24645 24646 * loader/CachedFont.cpp: 24647 * platform/graphics/skia/FontCustomPlatformData.cpp: 24648 (WebCore::FontCustomPlatformData::~FontCustomPlatformData): 24649 (WebCore::FontCustomPlatformData::fontPlatformData): 24650 (WebCore::createFontCustomPlatformData): 24651 * platform/graphics/skia/FontCustomPlatformData.h: 24652 24653 2010-10-27 Satish Sampath <satish (a] chromium.org> 24654 24655 Unreviewed, rolling out r70665. 24656 http://trac.webkit.org/changeset/70665 24657 https://bugs.webkit.org/show_bug.cgi?id=47089 24658 24659 Need to address Alexey's review comments. 24660 24661 * page/SpeechInput.cpp: 24662 (WebCore::SpeechInput::startRecognition): 24663 * page/SpeechInput.h: 24664 * page/SpeechInputClient.h: 24665 * platform/mock/SpeechInputClientMock.cpp: 24666 (WebCore::SpeechInputClientMock::startRecognition): 24667 (WebCore::SpeechInputClientMock::setRecognitionResult): 24668 (WebCore::SpeechInputClientMock::timerFired): 24669 * platform/mock/SpeechInputClientMock.h: 24670 * rendering/TextControlInnerElements.cpp: 24671 (WebCore::TextControlInnerElement::attachInnerElement): 24672 (WebCore::SearchFieldCancelButtonElement::detach): 24673 (WebCore::SpinButtonElement::defaultEventHandler): 24674 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 24675 (WebCore::InputFieldSpeechButtonElement::detach): 24676 24677 2010-10-27 ZHenyao Mo <zmo (a] google.com> 24678 24679 Reviewed by Kenneth Russell. 24680 24681 Must enable GL_POINT_SPRITE in GraphicsContext3D implementations 24682 https://bugs.webkit.org/show_bug.cgi?id=45908 24683 24684 * platform/graphics/mac/GraphicsContext3DMac.mm: Enable for Mac port. 24685 (WebCore::GraphicsContext3D::GraphicsContext3D): 24686 24687 2010-10-27 Leandro Gracia Gil <leandrogracia (a] google.com> 24688 24689 Reviewed by Jeremy Orlow. 24690 24691 Patch the current speech input implementation to use the nearest 24692 language tag. The language is now passed to the startRecognition 24693 methods so that language-specific recognition could be used. Also added 24694 a second parameter to setMockSpeechInputResult for the language used in 24695 speech recognition. 24696 https://bugs.webkit.org/show_bug.cgi?id=47089 24697 24698 This is the 2nd of a 4-sided patch in Chromium and WebKit. For more 24699 details see http://codereview.chromium.org/3615005/show and 24700 http://codereview.chromium.org/3595018/show. The last of the 4 patches 24701 depends also on the language tag validation provided by this patch: 24702 https://bugs.webkit.org/show_bug.cgi?id=48225. 24703 24704 Test: fast/speech/input-text-language-tag.html 24705 24706 * page/SpeechInput.cpp: 24707 (WebCore::SpeechInput::startRecognition): 24708 * page/SpeechInput.h: 24709 * page/SpeechInputClient.h: 24710 * platform/mock/SpeechInputClientMock.cpp: 24711 (WebCore::SpeechInputClientMock::startRecognition): 24712 (WebCore::SpeechInputClientMock::setRecognitionResult): 24713 (WebCore::SpeechInputClientMock::timerFired): 24714 * platform/mock/SpeechInputClientMock.h: 24715 * rendering/TextControlInnerElements.cpp: 24716 (WebCore::TextControlInnerElement::attachInnerElement): 24717 (WebCore::SearchFieldCancelButtonElement::detach): 24718 (WebCore::SpinButtonElement::defaultEventHandler): 24719 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 24720 (WebCore::InputFieldSpeechButtonElement::detach): 24721 24722 2010-10-27 David Hyatt <hyatt (a] apple.com> 24723 24724 Reviewed by Dan Bernstein. 24725 24726 https://bugs.webkit.org/show_bug.cgi?id=48381 24727 24728 Make basic layer positioning work with vertical-lr writing-mode. 24729 24730 * rendering/RenderBlock.cpp: 24731 (WebCore::RenderBlock::paintChildren): 24732 (WebCore::RenderBlock::paintFloats): 24733 * rendering/RenderBox.cpp: 24734 (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): 24735 (WebCore::RenderBox::locationOffsetIncludingFlipping): 24736 * rendering/RenderBox.h: 24737 * rendering/RenderLayer.cpp: 24738 (WebCore::RenderLayer::updateLayerPosition): 24739 24740 2010-10-27 Zhenyao Mo <zmo (a] google.com> 24741 24742 Reviewed by Kenneth Russell. 24743 24744 object-deletion-behaviour.html fails with mesa backend 24745 https://bugs.webkit.org/show_bug.cgi?id=46667 24746 24747 * html/canvas/WebGLRenderingContext.cpp: 24748 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): If object_type is 0, we return early because object_name should be always be 0. 24749 24750 2010-10-27 Zhenyao Mo <zmo (a] google.com> 24751 24752 Reviewed by Kenneth Russell. 24753 24754 If WebGL is running on top of a strict version of OpenGL ES it should make sure attribs have buffers assigned at all times 24755 https://bugs.webkit.org/show_bug.cgi?id=47964 24756 24757 * html/canvas/WebGLRenderingContext.cpp: 24758 (WebCore::WebGLRenderingContext::validateRenderingState): Minimum checking: if input <= 0, only check if each enabled vertex attribute is bound to a buffer. 24759 (WebCore::WebGLRenderingContext::drawArrays): If underlying GL performs bounds checking, we still need to do the minimum checking using validateRenderingState. 24760 (WebCore::WebGLRenderingContext::drawElements): Ditto. 24761 * html/canvas/WebGLRenderingContext.h: Add a comment for input <= 0 in validateRenderingState. 24762 24763 2010-10-27 Simon Fraser <simon.fraser (a] apple.com> 24764 24765 Reviewed by Dan Bernstein. 24766 24767 Accelerated animation with missing values in keyframes is broken 24768 https://bugs.webkit.org/show_bug.cgi?id=48395 24769 24770 r66339 changed the behavior of keyframe animations such that if a property 24771 is missing from a keyframe, the property will be interpolated between those 24772 keyframes that do have a value for the property. If a value is missing 24773 from the first or last keyframes, the element's unanimated style supplies 24774 that value. 24775 24776 However, accelerated animations had a bug where if a value was missing 24777 from the first (and maybe subsequent) or last (and maybe preceding) keyframes, 24778 the animation data given to the GraphicsLayer would be missing the style from the 24779 first or final keyframe. 24780 24781 Tests: animations/missing-values-first-keyframe.html 24782 animations/missing-values-last-keyframe.html 24783 24784 * rendering/RenderLayerBacking.cpp: 24785 (WebCore::RenderLayerBacking::startAnimation): 24786 24787 2010-10-27 Renata Hodovan <reni (a] inf.u-szeged.hu> 24788 24789 Reviewed by Dirk Schulze. 24790 24791 Calling the super class of RenderSVGImage::updateFromElement is missing 24792 https://bugs.webkit.org/show_bug.cgi?id=48347 24793 24794 RenderSVGImage::updateFromElement is an inherited function of RenderSVGModelObject what needs calling its ancestor. 24795 Lack of this call caused filters were not invalidated at SVGImage objects. 24796 24797 No new tests, because this modification is covered by SVGFEConvolveMatrixElement's dynamic update tests. 24798 24799 * rendering/RenderSVGImage.cpp: 24800 (WebCore::RenderSVGImage::updateFromElement): 24801 24802 2010-10-27 Justin Schuh <jschuh (a] chromium.org> 24803 24804 Reviewed by Dirk Schulze. 24805 24806 Ignore invalid blend modes 24807 https://bugs.webkit.org/show_bug.cgi?id=48371 24808 24809 Test: svg/filters/feBlend-invalid-mode.xhtml 24810 24811 * platform/graphics/filters/FEBlend.cpp: 24812 (WebCore::FEBlend::apply): 24813 24814 2010-10-27 Sergio Villar Senin <svillar (a] igalia.com> 24815 24816 Reviewed by Martin Robinson. 24817 24818 [Gtk] http/tests/xmlhttprequest/basic-auth-default.html fails 24819 https://bugs.webkit.org/show_bug.cgi?id=38956 24820 24821 Added a new utility function that turns SoupURIs into 24822 KURLs. That addresses some issues with SoupURIs like for example 24823 soup_uri_to_string ignoring the URI password. Basic authentication 24824 using URL credentials should work now. 24825 24826 * GNUmakefile.am: 24827 * platform/network/soup/ResourceHandleSoup.cpp: 24828 (WebCore::ResourceHandle::start): 24829 (WebCore::ResourceHandle::loadResourceSynchronously): 24830 * platform/network/soup/ResourceRequestSoup.cpp: 24831 (WebCore::ResourceRequest::updateFromSoupMessage): 24832 * platform/network/soup/ResourceResponseSoup.cpp: 24833 (WebCore::ResourceResponse::updateFromSoupMessage): 24834 * platform/network/soup/SoupURIUtils.cpp: Added. 24835 (WebCore::soupURIToKURL): 24836 * platform/network/soup/SoupURIUtils.h: Added. 24837 24838 2010-10-27 Ademar de Souza Reis Jr <ademar.reis (a] openbossa.org> 24839 24840 Reviewed by Andreas Kling. 24841 24842 Remove references to ancient QGVLauncher and QtLauncher 24843 https://bugs.webkit.org/show_bug.cgi?id=48430 24844 24845 * manual-tests/plugins/windowed.html: change to QtTestBrowser 24846 * manual-tests/plugins/windowless.html: ditto 24847 24848 2010-10-27 Patrick Gansterer <paroga (a] webkit.org> 24849 24850 Reviewed by Csaba Osztrogonc. 24851 24852 [WINCE] Buildfix after r70400. 24853 https://bugs.webkit.org/show_bug.cgi?id=48419 24854 24855 * platform/wince/TemporaryLinkStubs.cpp: Added. 24856 (WebCore::setCookieStoragePrivateBrowsingEnabled): 24857 24858 2010-10-27 Satish Sampath <satish (a] chromium.org> 24859 24860 Reviewed by Steve Block. 24861 24862 Add runtime flag check before enabling speech input in code. 24863 https://bugs.webkit.org/show_bug.cgi?id=48426 24864 24865 * html/HTMLInputElement.cpp: 24866 (WebCore::HTMLInputElement::isSpeechEnabled): Added runtime flag check. 24867 24868 2010-10-27 Adam Roben <aroben (a] apple.com> 24869 24870 Only decompress pixel buffers when needed (and fix a crash in the 24871 process) 24872 24873 Fixes <http://webkit.org/b/48417> Crash when running 24874 compositing/video/video-background-color.html on Windows 24875 24876 Reviewed by Anders Carlsson. 24877 24878 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 24879 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Only 24880 decompress the pixel buffer when it has an incompatible format. This 24881 also has the benefit of only decompressing the buffer when a 24882 QTDecompressionSession has been created! (I assume this was just a typo 24883 from when this code was added in r70252.) 24884 24885 2010-10-27 Mario Sanchez Prada <msanchez (a] igalia.com> 24886 24887 Reviewed by Martin Robinson. 24888 24889 getTextAtOffset returns incorrect results if a link includes text and an image 24890 https://bugs.webkit.org/show_bug.cgi?id=47365 24891 24892 Properly consider text under a non-text renderer in textForObject. 24893 24894 We need to check all the children under a non-text renderer, if 24895 any, to consider when current object is not a text object but some 24896 of its children are, in order not to miss those portions of text 24897 by not properly handling those situations. 24898 24899 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 24900 (textForRenderer): New. Get the text for a RenderObject's children. 24901 (textForObject): Use the new textForRenderer function. 24902 24903 2010-10-26 Nikolas Zimmermann <nzimmermann (a] rim.com> 24904 24905 Reviewed by Rob Buis. 24906 24907 Convert SVGRect to the new SVGPropertyTearOff concept 24908 https://bugs.webkit.org/show_bug.cgi?id=48204 24909 24910 Convert the next SVG primitive type to use the SVGPropertyTearOff concept: SVGRect. 24911 Added new test verifying that StrictTypeChecking is enabled for SVGRect. Refactor and share code between JSC/V8/ObjC generators. 24912 24913 Test: svg/dom/SVGRect.html 24914 24915 * GNUmakefile.am: Add SVGAnimatedRect.h to build. 24916 * WebCore.gypi: Ditto. 24917 * WebCore.pro: Ditto. 24918 * WebCore.vcproj/WebCore.vcproj: Ditto. 24919 * WebCore.xcodeproj/project.pbxproj: Ditto. 24920 * bindings/scripts/CodeGenerator.pm: Refactor SVGPropertyTearOff handling, and share code between JSC/V8/ObjC generators. 24921 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 24922 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 24923 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 24924 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedRect handling. 24925 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 24926 * svg/SVGAngle.idl: Remove [SVGProperty] flag. 24927 * svg/SVGAnimatedAngle.idl: Remove [SVGAnimatedProperty] flag. 24928 * svg/SVGAnimatedLength.idl: Ditto. 24929 * svg/SVGAnimatedLengthList.idl: Ditto. 24930 * svg/SVGAnimatedRect.h: Added. 24931 * svg/SVGFitToViewBox.h: SVGRect now uses the new tear off concept, adapt code. 24932 * svg/SVGLength.idl: Remove [SVGProperty] flag. 24933 * svg/SVGMarkerElement.h: 24934 * svg/SVGPatternElement.h: 24935 * svg/SVGRect.idl: Remove [PODType] flag, add StrictTypeChecking to all attributes. 24936 * svg/SVGSVGElement.cpp: s/setViewBox/setViewBoxBaseValue/. 24937 (WebCore::SVGSVGElement::currentView): 24938 (WebCore::SVGSVGElement::inheritViewAttributes): 24939 * svg/SVGSVGElement.h: 24940 * svg/SVGSVGElement.idl: Remove [Immutable] flags for SVGRect types, no longer needed. 24941 * svg/SVGSymbolElement.h: 24942 * svg/SVGViewElement.h: 24943 * svg/SVGViewSpec.cpp: Take a SVGElement as context element. 24944 (WebCore::SVGViewSpec::SVGViewSpec): 24945 * svg/SVGViewSpec.h: Ditto. 24946 (WebCore::SVGViewSpec::contextElement): 24947 * svg/SVGZoomEvent.idl: Remove [Immutable] flags for SVGRect types, no longer needed. 24948 * svg/properties/SVGAnimatedPropertyMacros.h: Support declaring animated properties on non-SVGElement types (here: SVGViewSpec), just like the old macros handled it. 24949 24950 2010-10-27 Pavel Podivilov <podivilov (a] chromium.org> 24951 24952 Unreviewed, fix line endings in InspectorState.h 24953 24954 * inspector/InspectorState.h: 24955 24956 2010-10-27 Pavel Podivilov <podivilov (a] chromium.org> 24957 24958 Reviewed by Pavel Feldman. 24959 24960 Web Inspector: move frontend settings to local storage 24961 https://bugs.webkit.org/show_bug.cgi?id=47715 24962 24963 * inspector/Inspector.idl: 24964 * inspector/InspectorController.cpp: 24965 (WebCore::InspectorController::InspectorController): 24966 (WebCore::InspectorController::didCommitLoad): 24967 * inspector/InspectorController.h: 24968 * inspector/InspectorState.cpp: 24969 (WebCore::InspectorState::InspectorState): 24970 * inspector/InspectorState.h: 24971 * inspector/front-end/ConsoleView.js: 24972 * inspector/front-end/EventListenersSidebarPane.js: 24973 * inspector/front-end/NetworkPanel.js: 24974 (WebInspector.NetworkPanel.prototype._createStatusbarButtons): 24975 * inspector/front-end/Panel.js: 24976 (WebInspector.Panel): 24977 * inspector/front-end/ResourcesPanel.js: 24978 (WebInspector.ResourcesPanel.prototype._createStatusbarButtons): 24979 * inspector/front-end/Settings.js: 24980 (WebInspector.Settings): 24981 (WebInspector.Settings.prototype.installApplicationSetting): 24982 (WebInspector.Settings.prototype.installProjectSetting): 24983 (WebInspector.Settings.prototype._get): 24984 (WebInspector.Settings.prototype._set): 24985 (WebInspector.Settings.prototype._getProjectSetting): 24986 (WebInspector.Settings.prototype._setProjectSetting): 24987 (WebInspector.Settings.prototype._formatProjectKey): 24988 * inspector/front-end/StylesSidebarPane.js: 24989 * inspector/front-end/WatchExpressionsSidebarPane.js: 24990 (WebInspector.WatchExpressionsSidebarPane): 24991 (WebInspector.WatchExpressionsSidebarPane.prototype.reset): 24992 * inspector/front-end/inspector.js: 24993 (WebInspector.reset): 24994 24995 2010-10-27 Andy Estes <aestes (a] apple.com> 24996 24997 Reviewed by David Hyatt. 24998 24999 Siblings of floated elements should be cleared below the float if they 25000 are too wide to fit in the containing block. 25001 https://bugs.webkit.org/show_bug.cgi?id=48396 25002 25003 Test: fast/block/float/clear-element-too-wide-for-containing-block.html 25004 25005 WebKit did not clear elements adjacent to floats if they were wider than 25006 the containing block, instead keeping them on the same line and allowing 25007 them to spill out the right side of the containing block. We should 25008 match the spec in this regard and clear the element below the float even 25009 if it is too wide for the containing block. Doing this seems to also 25010 match IE's and Firefox's behavior. 25011 25012 * rendering/RenderBlock.cpp: 25013 (WebCore::RenderBlock::getClearDelta): Continue to compute the clear 25014 delta even if the child's minimum preferred width is greater than the 25015 containing block's available width. 25016 25017 2010-10-26 Rob Buis <rwlbuis (a] gmail.com> 25018 25019 Reviewed by Nikolas Zimmermann. 25020 25021 Title-Element has no popup on <svg>-Elements, but on <g> 25022 https://bugs.webkit.org/show_bug.cgi?id=47669 25023 25024 Allow tooltips on non-root svg elements. 25025 25026 No new tests. 25027 25028 * svg/SVGStyledElement.cpp: 25029 25030 2010-10-26 Dai Mikurube <dmikurube (a] google.com> 25031 25032 Reviewed by Kent Tamura. 25033 25034 constraint validation: stepMismatch (rounding error) 25035 https://bugs.webkit.org/show_bug.cgi?id=48220 25036 25037 1. Changed the computation to achieve difference from a integral 25038 multiple of the allowed value step. 25039 25040 The previous fmod(doubleValue, step) sometimes returned unacceptable 25041 remainder. For example, 25042 double doubleValue = 1.005; // Actually, near to 1.005 25043 double step = 0.005; // Actually, near to 0.005 25044 fmod(doubleValue, step) ==> (near to) 0.005 25045 It's a case that doubleValue is a little smaller than 1.005 and step is 25046 a little larger than 0.005. 25047 25048 2. Changed the error threshold. 25049 25050 Number values in HTML5 are expressed in IEEE 754 single-precision. 25051 Too precise comparison sometimes leads unintended errors. 25052 25053 For example, I found a case : 25054 remainder = 0.00000000000000022204460 25055 acceptableError = 0.00000000000000007105427 25056 25057 * html/NumberInputType.cpp: 25058 (WebCore::NumberInputType::stepMismatch): 25059 25060 2010-10-26 Chris Rogers <crogers (a] google.com> 25061 25062 Reviewed by Kenneth Russell. 25063 25064 Add DelayNode files 25065 https://bugs.webkit.org/show_bug.cgi?id=47516 25066 25067 No new tests since audio API is not yet implemented. 25068 25069 * webaudio/DelayNode.cpp: Added. 25070 (WebCore::DelayNode::DelayNode): 25071 (WebCore::DelayNode::delayTime): 25072 * webaudio/DelayNode.h: Added. 25073 (WebCore::DelayNode::create): 25074 (WebCore::DelayNode::delayProcessor): 25075 * webaudio/DelayNode.idl: Added. 25076 25077 2010-10-26 Chris Rogers <crogers (a] google.com> 25078 25079 Reviewed by Kenneth Russell. 25080 25081 AudioContext and AudioNode followup changes for AudioNodeInput/AudioNodeOutput thread safety 25082 https://bugs.webkit.org/show_bug.cgi?id=47504 25083 25084 No new tests since audio API is not yet implemented. 25085 25086 * webaudio/AudioContext.cpp: 25087 (WebCore::AudioContext::isAudioThread): 25088 (WebCore::AudioContext::isGraphOwner): 25089 (WebCore::AudioContext::handlePreRenderTasks): 25090 (WebCore::AudioContext::handlePostRenderTasks): 25091 (WebCore::AudioContext::deleteMarkedNodes): 25092 (WebCore::AudioContext::markAudioNodeInputDirty): 25093 (WebCore::AudioContext::markAudioNodeOutputDirty): 25094 (WebCore::AudioContext::handleDirtyAudioNodeInputs): 25095 (WebCore::AudioContext::handleDirtyAudioNodeOutputs): 25096 * webaudio/AudioContext.h: 25097 * webaudio/AudioNode.cpp: 25098 * webaudio/AudioNode.h: 25099 (WebCore::AudioNode::isMarkedForDeletion): 25100 * webaudio/AudioNode.idl: 25101 25102 2010-10-26 Chris Rogers <crogers (a] google.com> 25103 25104 Reviewed by Kenneth Russell. 25105 25106 Add DelayProcessor files 25107 https://bugs.webkit.org/show_bug.cgi?id=47517 25108 25109 No new tests since audio API is not yet implemented. 25110 25111 * webaudio/DelayProcessor.cpp: Added. 25112 (WebCore::DelayProcessor::DelayProcessor): 25113 (WebCore::DelayProcessor::~DelayProcessor): 25114 (WebCore::DelayProcessor::createKernel): 25115 * webaudio/DelayProcessor.h: Added. 25116 (WebCore::DelayProcessor::delayTime): 25117 25118 2010-10-26 Chris Rogers <crogers (a] google.com> 25119 25120 Reviewed by Kenneth Russell. 25121 25122 Add AudioNodeOutput files 25123 https://bugs.webkit.org/show_bug.cgi?id=45581 25124 25125 No new tests since audio API is not yet implemented. 25126 25127 * webaudio/AudioNodeOutput.cpp: Added. 25128 (WebCore::AudioNodeOutput::AudioNodeOutput): 25129 (WebCore::AudioNodeOutput::setNumberOfChannels): 25130 (WebCore::AudioNodeOutput::setInternalBus): 25131 (WebCore::AudioNodeOutput::updateRenderingState): 25132 (WebCore::AudioNodeOutput::updateNumberOfChannels): 25133 (WebCore::AudioNodeOutput::propagateChannelCount): 25134 (WebCore::AudioNodeOutput::pull): 25135 (WebCore::AudioNodeOutput::bus): 25136 (WebCore::AudioNodeOutput::renderingFanOutCount): 25137 (WebCore::AudioNodeOutput::fanOutCount): 25138 (WebCore::AudioNodeOutput::addInput): 25139 (WebCore::AudioNodeOutput::removeInput): 25140 (WebCore::AudioNodeOutput::disconnectAllInputs): 25141 (WebCore::AudioNodeOutput::disable): 25142 (WebCore::AudioNodeOutput::enable): 25143 * webaudio/AudioNodeOutput.h: Added. 25144 (WebCore::AudioNodeOutput::node): 25145 (WebCore::AudioNodeOutput::context): 25146 (WebCore::AudioNodeOutput::numberOfChannels): 25147 (WebCore::AudioNodeOutput::isChannelCountKnown): 25148 25149 2010-10-26 Chris Rogers <crogers (a] google.com> 25150 25151 Reviewed by Kenneth Russell. 25152 25153 Add AudioNodeInput files 25154 https://bugs.webkit.org/show_bug.cgi?id=45577 25155 25156 No new tests since audio API is not yet implemented. 25157 25158 * webaudio/AudioNodeInput.cpp: Added. 25159 (WebCore::AudioNodeInput::AudioNodeInput): 25160 (WebCore::AudioNodeInput::connect): 25161 (WebCore::AudioNodeInput::disconnect): 25162 (WebCore::AudioNodeInput::disable): 25163 (WebCore::AudioNodeInput::enable): 25164 (WebCore::AudioNodeInput::changedOutputs): 25165 (WebCore::AudioNodeInput::updateRenderingState): 25166 (WebCore::AudioNodeInput::numberOfChannels): 25167 (WebCore::AudioNodeInput::numberOfRenderingChannels): 25168 (WebCore::AudioNodeInput::bus): 25169 (WebCore::AudioNodeInput::internalSummingBus): 25170 (WebCore::AudioNodeInput::sumAllConnections): 25171 (WebCore::AudioNodeInput::pull): 25172 * webaudio/AudioNodeInput.h: Added. 25173 (WebCore::AudioNodeInput::node): 25174 (WebCore::AudioNodeInput::context): 25175 (WebCore::AudioNodeInput::numberOfRenderingConnections): 25176 (WebCore::AudioNodeInput::renderingOutput): 25177 (WebCore::AudioNodeInput::isConnected): 25178 (WebCore::AudioNodeInput::numberOfConnections): 25179 25180 2010-10-26 MORITA Hajime <morrita (a] google.com> 25181 25182 Reviewed by Tony Chang. 25183 25184 Rolling in r70512 again, added missing null-check to 25185 Editor::isSpellCheckingEnabled(). 25186 http://trac.webkit.org/changeset/70512 25187 25188 spellcheck='' should be the same as spellcheck="true" 25189 https://bugs.webkit.org/show_bug.cgi?id=25539 25190 25191 * dom/Element.cpp: 25192 (WebCore::Element::spellcheckAttributeState): 25193 (WebCore::Element::isSpellCheckingEnabled): 25194 * dom/Element.h: 25195 * editing/Editor.cpp: 25196 (WebCore::markMisspellingsOrBadGrammar): 25197 (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): 25198 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 25199 * editing/Editor.h: 25200 * platform/ContextMenu.cpp: 25201 (WebCore::ContextMenu::populate): 25202 25203 2010-10-26 Brent Fulgham <bfulgham (a] webkit.org> 25204 25205 Unreviewed build fixes. 25206 25207 * WebCore.vcproj/WebCore.vcproj: Turn off several non-WinCairo 25208 files. We don't support CoreAnimation! 25209 * WebCore.vcproj/WebCoreCairo.vsprops: Add missing include path 25210 for 'image-decoders/webp' 25211 * platform/network/curl/CookieJarCurl.cpp: 25212 (WebCore::setCookieStoragePrivateBrowsingEnabled): Add build stub. 25213 25214 2010-10-26 Ryosuke Niwa <rniwa (a] webkit.org> 25215 25216 Reviewed by Kent Tamura. 25217 25218 Crash in CompositeEditCommand::splitTreeToNode 25219 https://bugs.webkit.org/show_bug.cgi?id=48349 25220 25221 The bug was caused by indentIntoBlockquote's passing null pointer to splitTreeToNode. 25222 Fixed the crash by adding early exits. 25223 25224 Test: editing/execCommand/indent-node-to-split-to-crash.html 25225 25226 * editing/CompositeEditCommand.cpp: 25227 (WebCore::CompositeEditCommand::splitTreeToNode): 25228 * editing/IndentOutdentCommand.cpp: 25229 (WebCore::IndentOutdentCommand::indentIntoBlockquote): 25230 25231 2010-10-26 Ryosuke Niwa <rniwa (a] webkit.org> 25232 25233 Reviewed by Kent Tamura. 25234 25235 REGRESSION(r67170): crash in removeImplicitlyStyledElement 25236 https://bugs.webkit.org/show_bug.cgi?id=48389 25237 25238 Fixed the crash by adding a null pointer check. 25239 25240 Test: editing/style/invalid-font-size.html 25241 25242 * editing/ApplyStyleCommand.cpp: 25243 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): 25244 25245 2010-10-26 Dimitri Glazkov <dglazkov (a] chromium.org> 25246 25247 Unreviewed, rolling out r70573. 25248 http://trac.webkit.org/changeset/70573 25249 https://bugs.webkit.org/show_bug.cgi?id=48204 25250 25251 Broke 39 tests on Chromium 25252 25253 * GNUmakefile.am: 25254 * WebCore.gypi: 25255 * WebCore.pro: 25256 * WebCore.vcproj/WebCore.vcproj: 25257 * WebCore.xcodeproj/project.pbxproj: 25258 * bindings/scripts/CodeGenerator.pm: 25259 * bindings/scripts/CodeGeneratorJS.pm: 25260 * bindings/scripts/CodeGeneratorObjC.pm: 25261 * bindings/scripts/CodeGeneratorV8.pm: 25262 * svg/DeprecatedSVGAnimatedPropertyTraits.h: 25263 * svg/DeprecatedSVGAnimatedTemplate.h: 25264 * svg/SVGAngle.idl: 25265 * svg/SVGAnimatedAngle.idl: 25266 * svg/SVGAnimatedLength.idl: 25267 * svg/SVGAnimatedLengthList.idl: 25268 * svg/SVGAnimatedRect.h: Removed. 25269 * svg/SVGFitToViewBox.h: 25270 * svg/SVGLength.idl: 25271 * svg/SVGMarkerElement.h: 25272 * svg/SVGPatternElement.h: 25273 * svg/SVGRect.idl: 25274 * svg/SVGSVGElement.cpp: 25275 (WebCore::SVGSVGElement::currentView): 25276 (WebCore::SVGSVGElement::inheritViewAttributes): 25277 * svg/SVGSVGElement.h: 25278 * svg/SVGSVGElement.idl: 25279 * svg/SVGSymbolElement.h: 25280 * svg/SVGViewElement.h: 25281 * svg/SVGViewSpec.cpp: 25282 (WebCore::SVGViewSpec::SVGViewSpec): 25283 * svg/SVGViewSpec.h: 25284 (WebCore::SVGViewSpec::contextElement): 25285 * svg/SVGZoomEvent.idl: 25286 * svg/properties/SVGAnimatedPropertyMacros.h: 25287 25288 2010-10-26 Anders Carlsson <andersca (a] apple.com> 25289 25290 Fix 32-bit build. 25291 25292 * platform/graphics/mac/FontMac.mm: 25293 (WebCore::showGlyphsWithAdvances): 25294 25295 2010-10-26 Jenn Braithwaite <jennb (a] chromium.org> 25296 25297 Reviewed by Dmitry Titov. 25298 25299 Resource tracking failure when trying to move a frame between documents 25300 https://bugs.webkit.org/show_bug.cgi?id=44713 25301 25302 Test: fast/frames/iframe-reparenting-fail-load.html 25303 25304 * loader/DocumentLoader.cpp: 25305 (WebCore::DocumentLoader::transferLoadingResourcesFromPage): 25306 Added method that notifies the client to update resource tracking for 25307 loading resources that have been transferred to a different page. 25308 * loader/DocumentLoader.h: 25309 * loader/EmptyClients.h: 25310 (WebCore::EmptyFrameLoaderClient::transferLoadingResourceFromPage): 25311 Empty method. 25312 * loader/FrameLoader.h: 25313 * loader/FrameLoader.cpp: 25314 Added method that triggers resource tracking updates. This wraps 25315 the DocumentLoader method as it appears DocumentLoader is opaque 25316 to Frame. 25317 * loader/FrameLoaderClient.h: 25318 Added API to notify the client to update resource tracking for 25319 a loading resource that has been transferred to a different page. 25320 * page/Frame.cpp: 25321 (WebCore::Frame::transferChildFrameToNewDocument): 25322 Update resource tracking if page has changed. 25323 25324 2010-10-26 Nikolas Zimmermann <nzimmermann (a] rim.com> 25325 25326 Reviewed by Rob Buis. 25327 25328 Convert SVGRect to the new SVGPropertyTearOff concept 25329 https://bugs.webkit.org/show_bug.cgi?id=48204 25330 25331 Convert the next SVG primitive type to use the SVGPropertyTearOff concept: SVGRect. 25332 Added new test verifying that StrictTypeChecking is enabled for SVGRect. Refactor and share code between JSC/V8/ObjC generators. 25333 25334 Test: svg/dom/SVGRect.html 25335 25336 * GNUmakefile.am: Add SVGAnimatedRect.h to build. 25337 * WebCore.gypi: Ditto. 25338 * WebCore.pro: Ditto. 25339 * WebCore.vcproj/WebCore.vcproj: Ditto. 25340 * WebCore.xcodeproj/project.pbxproj: Ditto. 25341 * bindings/scripts/CodeGenerator.pm: Refactor SVGPropertyTearOff handling, and share code between JSC/V8/ObjC generators. 25342 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 25343 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 25344 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 25345 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedRect handling. 25346 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 25347 * svg/SVGAngle.idl: Remove [SVGProperty] flag. 25348 * svg/SVGAnimatedAngle.idl: Remove [SVGAnimatedProperty] flag. 25349 * svg/SVGAnimatedLength.idl: Ditto. 25350 * svg/SVGAnimatedLengthList.idl: Ditto. 25351 * svg/SVGAnimatedRect.h: Added. 25352 * svg/SVGFitToViewBox.h: SVGRect now uses the new tear off concept, adapt code. 25353 * svg/SVGLength.idl: Remove [SVGProperty] flag. 25354 * svg/SVGMarkerElement.h: 25355 * svg/SVGPatternElement.h: 25356 * svg/SVGRect.idl: Remove [PODType] flag, add StrictTypeChecking to all attributes. 25357 * svg/SVGSVGElement.cpp: s/setViewBox/setViewBoxBaseValue/. 25358 (WebCore::SVGSVGElement::currentView): 25359 (WebCore::SVGSVGElement::inheritViewAttributes): 25360 * svg/SVGSVGElement.h: 25361 * svg/SVGSVGElement.idl: Remove [Immutable] flags for SVGRect types, no longer needed. 25362 * svg/SVGSymbolElement.h: 25363 * svg/SVGViewElement.h: 25364 * svg/SVGViewSpec.cpp: Take a SVGElement as context element. 25365 (WebCore::SVGViewSpec::SVGViewSpec): 25366 * svg/SVGViewSpec.h: Ditto. 25367 (WebCore::SVGViewSpec::contextElement): 25368 * svg/SVGZoomEvent.idl: Remove [Immutable] flags for SVGRect types, no longer needed. 25369 * svg/properties/SVGAnimatedPropertyMacros.h: Support declaring animated properties on non-SVGElement types (here: SVGViewSpec), just like the old macros handled it. 25370 25371 2010-10-26 takano takumi <takano1 (a] asia.apple.com> 25372 25373 Reviewed by Dave Hyatt. 25374 25375 Advances are wrong and glyphs are rotated improperly in vertical writing 25376 https://bugs.webkit.org/show_bug.cgi?id=48315 25377 25378 We shouldn't use vertical metrics for Roman fonts. Also, we should rotate vertical variant 25379 glyphs back on drawing as the whole run has already been rotated beforehand. 25380 25381 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 25382 (WebCore::FontPlatformData::FontPlatformData): Changed to ignore vertical orientation when the font doesn't support vertical metrics. 25383 * platform/graphics/mac/FontMac.mm: 25384 (WebCore::showGlyphsWithAdvances): Changed to rotate glyphs -90 degree for vertical variants. 25385 (WebCore::Font::drawGlyphs): 25386 25387 2010-10-26 Satish Sampath <satish (a] chromium.org> 25388 25389 Reviewed by Jeremy Orlow. 25390 25391 Add a 'grammar' attribute for speech input. 25392 https://bugs.webkit.org/show_bug.cgi?id=48339 25393 25394 To differentiate between various types of speech input, we add a 'x-webkit-grammar' attribute to a 25395 speech enabled input element. This is passed without validation to the speech recognizer. Typical values 25396 could be "builtin:search", "builtin:dictation" and even an externally hosted SRGS grammar XML file URI. 25397 It is up to the recognizer to interpret the value and use it as an aid in recognition. 25398 25399 * bindings/generic/RuntimeEnabledFeatures.h: 25400 (WebCore::RuntimeEnabledFeatures::webkitGrammarEnabled): 25401 * html/HTMLAttributeNames.in: 25402 * html/HTMLInputElement.idl: 25403 * page/SpeechInput.cpp: 25404 (WebCore::SpeechInput::startRecognition): 25405 * page/SpeechInput.h: 25406 * page/SpeechInputClient.h: 25407 * platform/mock/SpeechInputClientMock.cpp: 25408 (WebCore::SpeechInputClientMock::startRecognition): 25409 * platform/mock/SpeechInputClientMock.h: 25410 * rendering/TextControlInnerElements.cpp: 25411 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 25412 25413 2010-10-26 Pavel Feldman <pfeldman (a] chromium.org> 25414 25415 Reviewed by Timothy Hatcher. 25416 25417 Web Inspector: console does not work after two reloads. 25418 https://bugs.webkit.org/show_bug.cgi?id=48318 25419 25420 * inspector/InspectorController.cpp: 25421 (WebCore::InspectorController::disconnectFrontend): 25422 25423 2010-10-26 Pavel Podivilov <podivilov (a] chromium.org> 25424 25425 Reviewed by Pavel Feldman. 25426 25427 Web Inspector: console doesn't work in closures when window is overrode 25428 https://bugs.webkit.org/show_bug.cgi?id=48320 25429 25430 * inspector/front-end/InjectedScript.js: 25431 (injectedScriptConstructor.): 25432 25433 2010-10-26 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 25434 25435 Reviewed by Kenneth Rohde Christiansen. 25436 25437 [Qt] Fix an assert with QtPixmapInstance creation. 25438 https://bugs.webkit.org/show_bug.cgi?id=48323 25439 25440 This places the newly refcounted QtPixmapInstance in a RefPtr 25441 to prevent an assert on the first ref() call. 25442 25443 * bridge/qt/qt_pixmapruntime.cpp: 25444 (JSC::Bindings::QtPixmapInstance::createPixmapRuntimeObject): 25445 25446 2010-10-26 Kenichi Ishibashi <bashi (a] google.com> 25447 25448 Reviewed by Kent Tamura. 25449 25450 Input Method inserts conversion candidates unexpectedly 25451 https://bugs.webkit.org/show_bug.cgi?id=46868 25452 25453 Calls updateStyleIfNeeded() before setting selection for the composition to 25454 avoid inserting the previous composition text into a content editable element 25455 which has an event handler that changes the style of the element. 25456 25457 Test: platform/chromium/fast/text/chromium-mac-duplicate-ime-composition.html 25458 25459 * editing/Editor.cpp: 25460 (WebCore::Editor::setComposition): calls updateStyleIfNeeded() before setting selection. 25461 25462 2010-10-26 Mario Sanchez Prada <msanchez (a] igalia.com> 25463 25464 Reviewed by Chris Fleizach. 25465 25466 [Gtk] Layout tables should indicate that they are not data tables via an object attribute 25467 https://bugs.webkit.org/show_bug.cgi?id=35422 25468 25469 Set the 'layout-guess' attribute to 'true' for data tables. 25470 25471 Reorganized some code in AccessibilityTable so now the function 25472 isDataTable() is more coherent by just answering that very 25473 specific question, regardless of whether the table is being 25474 exposed or not to Assistive Technologies. 25475 25476 Hence, now it's possible to make two questions separately instead 25477 of just one, meaning that the new function isAccessibleTable() is 25478 now what we formerly defined as the isDataTable() function. 25479 25480 * accessibility/AccessibilityObject.h: 25481 (WebCore::AccessibilityObject::isAccessibilityTable): 25482 New function to allow asking tables both whether they are 25483 exposed and whether they are data tables, which are different 25484 questions whose answers might be the same in many situations, 25485 but different sometimes (as it can happen in the GTK port). 25486 * accessibility/AccessibilityTable.h: 25487 * accessibility/AccessibilityTable.cpp: 25488 (WebCore::AccessibilityTable::hasARIARole): 25489 New, checks whether the table has a valid ARIA role. 25490 (WebCore::AccessibilityTable::isAccessibilityTable): 25491 New, returns the value of m_isAccessibilityTable. It's 25492 basically the former isDataTable() function renamed. 25493 (WebCore::AccessibilityTable::isDataTable): 25494 Changed behaviour. Instead of just returning the value of 25495 m_isAccessibilityTable as it did so far (which was confusing 25496 because of that's not what the name suggests), focus on 25497 checking whether it's a data table or not and return a bool 25498 value accordingly. It's basically a rename of the former 25499 isTableExposableThroughAccessibility() function, but withouth 25500 the GTK-specific if-endif region (which didn't make sense 25501 here now, because that was answering the question "is the table 25502 exposed in the GTK port?", instead of "is it a data table?"). 25503 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): 25504 Uses the hasAriaRole(), and isDataTable() to determine whether 25505 a table should be exposed or not. Also includes the GTK-specific 25506 if-region coming from the former implementation of the function 25507 isTableExposableThroughAccessibility() not to check whether it's 25508 a data table in case the rest of the checks succeeded (all 25509 tables are exposed in the GTK port). 25510 (WebCore::AccessibilityTable::addChildren): 25511 Replace usage of isDataTable() with isAccessibilityTable(), to 25512 keep exactly the same behaviour happening before this patch. 25513 (WebCore::AccessibilityTable::roleValue): Ditto. 25514 (WebCore::AccessibilityTable::accessibilityIsIgnored): Ditto. 25515 (WebCore::AccessibilityTable::title): Ditto. 25516 25517 Updated usage of the former function isDataTable() everywhere 25518 else, replacing it with the new isAccessibilityTable(), so keeping 25519 exactly the same behaviour happening before this patch. 25520 25521 * accessibility/AccessibilityARIAGrid.cpp: 25522 (WebCore::AccessibilityARIAGrid::addChildren): 25523 Use isAccessibilityTable() instead of isDataTable(). 25524 * accessibility/AccessibilityARIAGridCell.cpp: 25525 (WebCore::AccessibilityARIAGridCell::parentTable): Ditto. 25526 * accessibility/AccessibilityARIAGridRow.cpp: 25527 (WebCore::AccessibilityARIAGridRow::disclosedRows): Ditto. 25528 (WebCore::AccessibilityARIAGridRow::disclosedByRow): Ditto. 25529 (WebCore::AccessibilityARIAGridRow::parentTable): Ditto. 25530 * accessibility/AccessibilityTableCell.cpp: 25531 (WebCore::AccessibilityTableCell::isTableCell): 25532 Use isAccessibilityTable() instead of isDataTable(). 25533 * accessibility/AccessibilityTableHeaderContainer.cpp: 25534 (WebCore::AccessibilityTableHeaderContainer::addChildren): Ditto. 25535 * accessibility/AccessibilityTableRow.cpp: 25536 (WebCore::AccessibilityTableRow::isTableRow): Ditto 25537 * accessibility/mac/AccessibilityObjectWrapper.mm: 25538 (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]): 25539 Use isAccessibilityTable() instead of isDataTable(). 25540 (-[AccessibilityObjectWrapper accessibilityAttributeNames]): Ditto. 25541 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): Ditto. 25542 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): Ditto. 25543 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): Ditto. 25544 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): Ditto. 25545 25546 Use the new function isAccessibilityTable() together with the 25547 modified implementation of isDataTable() to set the 'layout-guess' 25548 attribute when needed. 25549 25550 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 25551 (webkit_accessible_get_attributes): 25552 Set the 'layout-guess' attribute to 'true' to help Assistive 25553 Technologies guessing which tables are not data tables. 25554 25555 2010-10-26 Chris Marrin <cmarrin (a] apple.com> 25556 25557 Reviewed by Simon Fraser. 25558 25559 Resuming animations causes webkitAnimationStart events to be fired 25560 https://bugs.webkit.org/show_bug.cgi?id=46540 25561 25562 Added a flag that makes sure start animation event is only ever 25563 fired once. 25564 25565 Test: animations/suspend-resume-animation-events.html 25566 25567 * page/animation/KeyframeAnimation.cpp: 25568 (WebCore::KeyframeAnimation::KeyframeAnimation): 25569 (WebCore::KeyframeAnimation::sendAnimationEvent): 25570 * page/animation/KeyframeAnimation.h: 25571 25572 2010-10-26 Abhishek Arya <inferno (a] chromium.org> 25573 25574 Reviewed by Dimitri Glazkov. 25575 25576 Added checks to ensure that events types are right before casting. 25577 https://bugs.webkit.org/show_bug.cgi?id=48345 25578 25579 * html/ImageDocument.cpp: 25580 (WebCore::ImageEventListener::handleEvent): 25581 * inspector/InspectorDOMStorageResource.cpp: 25582 (WebCore::InspectorDOMStorageResource::handleEvent): 25583 25584 2010-10-26 Dai Mikurube <dmikurube (a] google.com> 25585 25586 Reviewed by Kent Tamura. 25587 25588 Number values for form controls should be in the range of IEEE 754 25589 single-precision floating point number 25590 https://bugs.webkit.org/show_bug.cgi?id=48221 25591 25592 Changed the range of number values to fit in IEEE 754 single-precision 25593 25594 * html/parser/HTMLParserIdioms.cpp: 25595 (WebCore::parseToDoubleForNumberType): 25596 * html/NumberInputType.cpp: 25597 25598 2010-10-26 David Hyatt <hyatt (a] apple.com> 25599 25600 Reviewed by Sam Weinig. 25601 25602 https://bugs.webkit.org/show_bug.cgi?id=48157 25603 25604 Direction and writing-mode should propagate from the <body> to the <html> to the initial containing block. 25605 Modify the existing code that propagates from the document element to also propagate from the body. 25606 25607 Fix the buggy code that was trying to dirty the body when the view changed size if it stretched to fill the 25608 viewport. The code didn't consider the root element, and it only worked with one axis. I pulled it 25609 out of calculateScrollbarModesForLayout, since it should never have been put there in the first place. 25610 25611 Added four new tests in fast/blockflow. 25612 25613 * css/CSSStyleSelector.cpp: 25614 (WebCore::CSSStyleSelector::initElement): 25615 (WebCore::CSSStyleSelector::styleForDocument): 25616 (WebCore::CSSStyleSelector::applyProperty): 25617 * dom/Document.cpp: 25618 (WebCore::Document::Document): 25619 * dom/Document.h: 25620 (WebCore::Document::directionSetOnDocumentElement): 25621 (WebCore::Document::writingModeSetOnDocumentElement): 25622 (WebCore::Document::setDirectionSetOnDocumentElement): 25623 (WebCore::Document::setWritingModeSetOnDocumentElement): 25624 * page/FrameView.cpp: 25625 (WebCore::FrameView::calculateScrollbarModesForLayout): 25626 (WebCore::FrameView::layout): 25627 * rendering/RenderBox.cpp: 25628 (WebCore::RenderBox::styleDidChange): 25629 * rendering/RenderBox.h: 25630 (WebCore::RenderBox::stretchesToViewport): 25631 25632 2010-10-26 Joseph Pecoraro <joepeck (a] webkit.org> 25633 25634 Reviewed by David Kilzer. 25635 25636 Fix Cache::dumpStats formatting 25637 https://bugs.webkit.org/show_bug.cgi?id=48286 25638 25639 This updates the column width in the dumpStats output to be wide enough 25640 for all the titles. Previously one of the titles was too wide and crept 25641 into later column space. 25642 25643 * loader/Cache.cpp: 25644 (WebCore::Cache::dumpStats): make columns 13 characters wide. 25645 25646 2010-10-26 Alexey Marinichev <amarinichev (a] chromium.org> 25647 25648 Reviewed by Kenneth Russell. 25649 25650 [chromium] Check getGraphicsResetStatusARB and reinitialize the 25651 renderer in an error is returned. 25652 https://bugs.webkit.org/show_bug.cgi?id=47848 25653 25654 Tested by failure injection (stopping in the debugger and issuing a 25655 jump as if an error has occurred). 25656 25657 * platform/graphics/chromium/LayerChromium.cpp: 25658 (WebCore::LayerChromium::setLayerRenderer): 25659 * platform/graphics/chromium/LayerRendererChromium.h: 25660 (WebCore::LayerRendererChromium::transferRootLayer): added 25661 25662 2010-10-26 Pavel Feldman <pfeldman (a] chromium.org> 25663 25664 Not reviewed. Touching inspector controller to kick gtk build, removing comments. 25665 25666 * inspector/InspectorController.cpp: 25667 * inspector/front-end/ResourceManager.js: 25668 * inspector/front-end/ScriptsPanel.js: 25669 25670 2010-10-26 Pavel Feldman <pfeldman (a] chromium.org> 25671 25672 Web Inspector: continue making resources panel optional. 25673 https://bugs.webkit.org/show_bug.cgi?id=48261 25674 25675 This refactoring makes console, audits and extensions tests pass while taking data from 25676 resources panel. Network panel as a source is to follow. 25677 25678 * inspector/front-end/AuditLauncherView.js: 25679 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 25680 * inspector/front-end/AuditsPanel.js: 25681 * inspector/front-end/ConsoleView.js: 25682 (WebInspector.ConsoleView.prototype.addMessage): 25683 * inspector/front-end/CookieItemsView.js: 25684 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain.populateResourcesForDocuments): 25685 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 25686 * inspector/front-end/ExtensionServer.js: 25687 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 25688 (WebInspector.ExtensionServer.prototype._onGetResources): 25689 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 25690 * inspector/front-end/HAREntry.js: 25691 (WebInspector.HARLog.prototype.build): 25692 (WebInspector.HARLog.prototype.buildMainResourceTimings): 25693 (WebInspector.HARLog.prototype._convertResource): 25694 * inspector/front-end/NetworkPanel.js: 25695 (WebInspector.NetworkPanel): 25696 (WebInspector.NetworkPanel.prototype._reset): 25697 (WebInspector.NetworkPanel.prototype.get resources): 25698 (WebInspector.NetworkPanel.prototype.addResource): 25699 * inspector/front-end/Resource.js: 25700 (WebInspector.Resource.prototype.set category): 25701 * inspector/front-end/ResourceCategory.js: 25702 (WebInspector.ResourceCategory): 25703 (WebInspector.ResourceCategory.prototype.toString): 25704 * inspector/front-end/ResourceManager.js: 25705 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 25706 (WebInspector.ResourceManager.prototype.willSendRequest): 25707 (WebInspector.ResourceManager.prototype.didFinishLoading): 25708 (WebInspector.ResourceManager.prototype.didFailLoading): 25709 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 25710 (WebInspector.ResourceManager.prototype.setOverrideContent): 25711 (WebInspector.ResourceTreeModel.prototype._callForFrameResources): 25712 * inspector/front-end/ResourcesPanel.js: 25713 (WebInspector.ResourcesPanel): 25714 (WebInspector.ResourcesPanel.prototype.reset): 25715 (WebInspector.ResourcesPanel.prototype.addResource): 25716 (WebInspector.ResourcesPanel.prototype.removeResource): 25717 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): 25718 * inspector/front-end/ScriptsPanel.js: 25719 (WebInspector.ScriptsPanel.prototype.addScript): 25720 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 25721 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 25722 * inspector/front-end/StylesSidebarPane.js: 25723 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): 25724 * inspector/front-end/inspector.js: 25725 (WebInspector._updateFocusedNode): 25726 (WebInspector.get networkResources): 25727 (WebInspector.forAllResources): 25728 (WebInspector.resourceForURL): 25729 (WebInspector.updateResource): 25730 (WebInspector.domContentEventFired): 25731 (WebInspector.loadEventFired): 25732 (WebInspector.removeResource): 25733 (WebInspector.reset): 25734 (WebInspector.displayNameForURL): 25735 (WebInspector.linkifyStringAsFragment): 25736 (WebInspector.resourceURLForRelatedNode.callback): 25737 (WebInspector.resourceURLForRelatedNode): 25738 25739 2010-10-26 Jeremy Orlow <jorlow (a] chromium.org> 25740 25741 Reviewed by Steve Block. 25742 Fix IndexedDB crashes 25743 https://bugs.webkit.org/show_bug.cgi?id=48266 25744 25745 If IDBKey returns null, type conversion failed. Handle this case 25746 in the bindings. 25747 25748 Change UNKNOWN_ERR to be 1 since 0 is hard coded to mean no error. 25749 This is just a stop-gap move until we get it figured out in standards 25750 land. 25751 25752 IDBObjectStore needs to handle null ranges. 25753 25754 It's actually OK for m_transaction to be non-null when hitting the 25755 destructor. We just need to then remove it from the set of pending 25756 transactions. 25757 25758 The transaction can become aborted in the middle of processing a 25759 list of tasks. Fix this. 25760 25761 All changes (except the last 2 races) are tested in LayoutTests. 25762 I couldn't find a way to reliably reproduce the races. 25763 25764 * bindings/scripts/CodeGeneratorV8.pm: 25765 * bindings/scripts/test/V8/V8TestObj.cpp: 25766 (WebCore::TestObjInternal::idbKeyCallback): 25767 * bindings/v8/IDBBindingUtilities.cpp: 25768 (WebCore::createIDBKeyFromValue): 25769 * storage/IDBDatabaseException.h: 25770 * storage/IDBDatabaseException.idl: 25771 * storage/IDBObjectStoreBackendImpl.cpp: 25772 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal): 25773 * storage/IDBRequest.cpp: 25774 (WebCore::IDBRequest::~IDBRequest): 25775 (WebCore::IDBRequest::timerFired): 25776 * storage/IDBTransactionBackendImpl.cpp: 25777 (WebCore::IDBTransactionBackendImpl::taskTimerFired): 25778 25779 2010-10-25 Andrey Kosyakov <caseq (a] chromium.org> 25780 25781 Reviewed by Pavel Feldman. 25782 25783 Web Inspector: Show cookie data in the request headers in network pane 25784 https://bugs.webkit.org/show_bug.cgi?id=16531 25785 25786 * inspector/front-end/CookieItemsView.js: 25787 (WebInspector.CookieItemsView): Factor out common cookies grid logic to CookiesTable 25788 (WebInspector.CookieItemsView.prototype._populateDataGrid): 25789 * inspector/front-end/CookieParser.js: Store cookie type (request/response) within a cookie. 25790 (WebInspector.CookieParser.prototype.parseCookie): 25791 (WebInspector.CookieParser.prototype.parseSetCookie): 25792 (WebInspector.CookieParser.prototype._addCookie): 25793 (WebInspector.Cookie): 25794 * inspector/front-end/DataGrid.js: 25795 (WebInspector.DataGrid.prototype.autoSizeColumns): Optionally, traverse nested nodes when looking for max field widths. 25796 (WebInspector.DataGrid.prototype._enumerateChildren): 25797 (WebInspector.DataGrid.prototype.updateWidths): Skip attempt to calculate column widths if grid is not attached to DOM tree yet. 25798 * inspector/front-end/FontView.js: 25799 (WebInspector.FontView.prototype.resize): 25800 * inspector/front-end/ResourceView.js: 25801 (WebInspector.ResourceView.prototype.resize): 25802 (WebInspector.ResourceView.prototype._selectTab): 25803 (WebInspector.ResourceView.prototype._selectCookiesTab): 25804 (WebInspector.ResourceView.prototype._innerSelectContentTab): 25805 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 25806 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 25807 (WebInspector.ResourceView.prototype._refreshHeaders): 25808 (WebInspector.ResourceView.prototype._refreshCookies): 25809 (WebInspector.ResourceCookiesTab): 25810 (WebInspector.ResourceCookiesTab.prototype.set requestCookies): 25811 (WebInspector.ResourceCookiesTab.prototype.set responseCookies): 25812 (WebInspector.ResourceCookiesTab.prototype._populateDataGrid): 25813 (WebInspector.ResourceCookiesTab.prototype._populateCookies): 25814 (WebInspector.ResourceCookiesTab.prototype._createFolder): 25815 * inspector/front-end/SourceView.js: 25816 (WebInspector.SourceView.prototype.resize): 25817 * inspector/front-end/inspector.css: 25818 (.resource-view .resource-view-cookies): 25819 (.resource-view.headers-visible .resource-view-cookies): 25820 (.resource-view-cookies.table .data-grid): 25821 (.resource-view-cookies .data-grid .row-group): 25822 25823 2010-10-26 Sheriff Bot <webkit.review.bot (a] gmail.com> 25824 25825 Unreviewed, rolling out r70518. 25826 http://trac.webkit.org/changeset/70518 25827 https://bugs.webkit.org/show_bug.cgi?id=48332 25828 25829 Breaks inspector tests. (Requested by pfeldman on #webkit). 25830 25831 * inspector/front-end/AuditLauncherView.js: 25832 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 25833 * inspector/front-end/AuditsPanel.js: 25834 * inspector/front-end/ConsoleView.js: 25835 (WebInspector.ConsoleView.prototype.addMessage): 25836 * inspector/front-end/CookieItemsView.js: 25837 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 25838 * inspector/front-end/ExtensionServer.js: 25839 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 25840 (WebInspector.ExtensionServer.prototype._onGetResources): 25841 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 25842 * inspector/front-end/HAREntry.js: 25843 (WebInspector.HARLog.prototype.build): 25844 (WebInspector.HARLog.prototype.buildMainResourceTimings): 25845 (WebInspector.HARLog.prototype._convertResource): 25846 * inspector/front-end/NetworkPanel.js: 25847 (WebInspector.NetworkPanel): 25848 (WebInspector.NetworkPanel.prototype._reset): 25849 (WebInspector.NetworkPanel.prototype.addResource): 25850 * inspector/front-end/Resource.js: 25851 (WebInspector.Resource.prototype.set category): 25852 * inspector/front-end/ResourceCategory.js: 25853 (WebInspector.ResourceCategory): 25854 (WebInspector.ResourceCategory.prototype.toString): 25855 (WebInspector.ResourceCategory.prototype.addResource): 25856 (WebInspector.ResourceCategory.prototype.removeResource): 25857 (WebInspector.ResourceCategory.prototype.removeAllResources): 25858 * inspector/front-end/ResourceManager.js: 25859 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 25860 (WebInspector.ResourceManager.prototype.willSendRequest): 25861 (WebInspector.ResourceManager.prototype.didFinishLoading): 25862 (WebInspector.ResourceManager.prototype.didFailLoading): 25863 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 25864 (WebInspector.ResourceManager.prototype.setOverrideContent): 25865 (WebInspector.ResourceTreeModel.prototype._callForFrameResources): 25866 * inspector/front-end/ResourcesPanel.js: 25867 (WebInspector.ResourcesPanel): 25868 (WebInspector.ResourcesPanel.prototype.reset): 25869 (WebInspector.ResourcesPanel.prototype.addResource): 25870 (WebInspector.ResourcesPanel.prototype.removeResource): 25871 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): 25872 * inspector/front-end/ScriptsPanel.js: 25873 (WebInspector.ScriptsPanel.prototype.addScript): 25874 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 25875 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 25876 * inspector/front-end/StylesSidebarPane.js: 25877 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): 25878 * inspector/front-end/inspector.js: 25879 (WebInspector._updateFocusedNode): 25880 (WebInspector.updateResource): 25881 (WebInspector.domContentEventFired): 25882 (WebInspector.loadEventFired): 25883 (WebInspector.removeResource): 25884 (WebInspector.reset): 25885 (WebInspector.displayNameForURL): 25886 (WebInspector.resourceForURL): 25887 (WebInspector.linkifyStringAsFragment): 25888 (WebInspector.resourceURLForRelatedNode): 25889 25890 2010-10-26 Jeremy Orlow <jorlow (a] chromium.org> 25891 25892 Reviewed by Steve Block. 25893 25894 Quota for IndexedDB should be per origin not per database 25895 https://bugs.webkit.org/show_bug.cgi?id=48064 25896 25897 Merge all databases for each origin into a single SQLiteDatabase. 25898 25899 Replace the awkward metaData table with a Database table. 25900 25901 Create a new IDBSQLiteDatabase class that wraps SQLiteDatabase 25902 and implements weak pointer semantics for IDBFactory. It's ref 25903 counted so multiple IDBDatabaseBackendImpls can share one. 25904 25905 Fix uniqueness constraints that were overly conservitive. 25906 25907 Get rid of the code that blows away existing data every time 25908 the database is opened. 25909 25910 Get rid of the fairly useless indexedDB manual test and replace 25911 it with one that verifies data persists. 25912 25913 Use name+origin (not just name) in our cache of IDBDatabaseBackend 25914 objects (so one origin can't access anothers' data). 25915 25916 Test: storage/indexeddb/duplicates.html 25917 25918 * WebCore.gypi: 25919 * manual-tests/indexed-database.html: Removed. 25920 * manual-tests/indexeddb-persists.html: Added. 25921 * storage/IDBDatabaseBackendImpl.cpp: 25922 (WebCore::extractMetaData): 25923 (WebCore::setMetaData): 25924 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 25925 (WebCore::IDBDatabaseBackendImpl::setDescription): 25926 (WebCore::IDBDatabaseBackendImpl::sqliteDatabase): 25927 (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): 25928 (WebCore::IDBDatabaseBackendImpl::setVersionInternal): 25929 (WebCore::IDBDatabaseBackendImpl::loadObjectStores): 25930 * storage/IDBDatabaseBackendImpl.h: 25931 (WebCore::IDBDatabaseBackendImpl::create): 25932 (WebCore::IDBDatabaseBackendImpl::id): 25933 * storage/IDBFactoryBackendImpl.cpp: 25934 (WebCore::IDBFactoryBackendImpl::removeSQLiteDatabase): 25935 (WebCore::openSQLiteDatabase): 25936 (WebCore::createTables): 25937 (WebCore::IDBFactoryBackendImpl::open): 25938 (WebCore::IDBFactoryBackendImpl::databaseFileName): 25939 * storage/IDBFactoryBackendImpl.h: 25940 * storage/IDBObjectStoreBackendImpl.cpp: 25941 (WebCore::putObjectStoreData): 25942 (WebCore::IDBObjectStoreBackendImpl::putInternal): 25943 * storage/IDBSQLiteDatabase.cpp: Added. 25944 (WebCore::IDBSQLiteDatabase::IDBSQLiteDatabase): 25945 (WebCore::IDBSQLiteDatabase::~IDBSQLiteDatabase): 25946 * storage/IDBSQLiteDatabase.h: Added. 25947 (WebCore::IDBSQLiteDatabase::create): 25948 (WebCore::IDBSQLiteDatabase::db): 25949 25950 2010-10-20 Andrey Kosyakov <caseq (a] chromium.org> 25951 25952 Reviewed by Yury Semikhatsky. 25953 25954 Inspector needs to use cached resources to display image resources. 25955 https://bugs.webkit.org/show_bug.cgi?id=16395 25956 25957 * inspector/Inspector.idl: Add base64Encode parameter to getContent 25958 * inspector/InspectorResourceAgent.cpp: 25959 (WebCore::InspectorResourceAgent::resourceContent): 25960 * inspector/InspectorResourceAgent.h: 25961 * inspector/front-end/ExtensionServer.js: 25962 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 25963 * inspector/front-end/ImageView.js: 25964 (WebInspector.ImageView.prototype.contentTabSelected.onResourceContent): 25965 (WebInspector.ImageView.prototype.contentTabSelected): 25966 * inspector/front-end/NetworkPanel.js: 25967 (WebInspector.NetworkDataGridNode.prototype._refreshNameCell.): 25968 (WebInspector.NetworkDataGridNode.prototype._refreshNameCell): 25969 * inspector/front-end/Resource.js: 25970 (WebInspector.Resource): 25971 (WebInspector.Resource.prototype.set finished): 25972 (WebInspector.Resource.prototype.getContent): 25973 (WebInspector.Resource.prototype.get contentURL): 25974 (WebInspector.Resource.prototype._requestContent.onResourceContent): 25975 (WebInspector.Resource.prototype._requestContent): 25976 * inspector/front-end/ResourcesPanel.js: 25977 (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement.): 25978 (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement): 25979 * inspector/front-end/Settings.js: Added useDataURLForResourceImageIcons 25980 * inspector/front-end/SourceView.js: 25981 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): 25982 25983 2010-10-26 Pavel Feldman <pfeldman (a] chromium.org> 25984 25985 Reviewed by Timothy Hatcher. 25986 25987 Web Inspector: continue making resources panel optional. 25988 https://bugs.webkit.org/show_bug.cgi?id=48261 25989 25990 This refactoring makes console, audits and extensions tests pass while taking data from 25991 resources panel. Network panel as a source is to follow. 25992 25993 * inspector/InspectorController.cpp: 25994 (WebCore::InspectorController::connectFrontend): 25995 * inspector/front-end/AuditLauncherView.js: 25996 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 25997 * inspector/front-end/AuditsPanel.js: 25998 * inspector/front-end/ConsoleView.js: 25999 (WebInspector.ConsoleView.prototype.addMessage): 26000 * inspector/front-end/CookieItemsView.js: 26001 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain.populateResourcesForDocuments): 26002 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 26003 * inspector/front-end/ExtensionServer.js: 26004 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 26005 (WebInspector.ExtensionServer.prototype._onGetResources): 26006 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 26007 * inspector/front-end/HAREntry.js: 26008 (WebInspector.HARLog.prototype.build): 26009 (WebInspector.HARLog.prototype.buildMainResourceTimings): 26010 (WebInspector.HARLog.prototype._convertResource): 26011 * inspector/front-end/NetworkPanel.js: 26012 (WebInspector.NetworkPanel): 26013 (WebInspector.NetworkPanel.prototype._reset): 26014 (WebInspector.NetworkPanel.prototype.get resources): 26015 (WebInspector.NetworkPanel.prototype.addResource): 26016 * inspector/front-end/Resource.js: 26017 (WebInspector.Resource.prototype.set category): 26018 * inspector/front-end/ResourceCategory.js: 26019 (WebInspector.ResourceCategory): 26020 (WebInspector.ResourceCategory.prototype.toString): 26021 * inspector/front-end/ResourceManager.js: 26022 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 26023 (WebInspector.ResourceManager.prototype.willSendRequest): 26024 (WebInspector.ResourceManager.prototype.didFinishLoading): 26025 (WebInspector.ResourceManager.prototype.didFailLoading): 26026 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 26027 (WebInspector.ResourceManager.prototype.setOverrideContent): 26028 (WebInspector.ResourceTreeModel.prototype._callForFrameResources): 26029 * inspector/front-end/ResourcesPanel.js: 26030 (WebInspector.ResourcesPanel): 26031 (WebInspector.ResourcesPanel.prototype.reset): 26032 (WebInspector.ResourcesPanel.prototype.addResource): 26033 (WebInspector.ResourcesPanel.prototype.removeResource): 26034 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): 26035 * inspector/front-end/ScriptsPanel.js: 26036 (WebInspector.ScriptsPanel.prototype.addScript): 26037 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 26038 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 26039 * inspector/front-end/Settings.js: 26040 * inspector/front-end/StylesSidebarPane.js: 26041 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): 26042 * inspector/front-end/inspector.js: 26043 (WebInspector._updateFocusedNode): 26044 (WebInspector.get networkResources): 26045 (WebInspector.forAllResources): 26046 (WebInspector.resourceForURL): 26047 (WebInspector.updateResource): 26048 (WebInspector.domContentEventFired): 26049 (WebInspector.loadEventFired): 26050 (WebInspector.removeResource): 26051 (WebInspector.reset): 26052 (WebInspector.displayNameForURL): 26053 (WebInspector.linkifyStringAsFragment): 26054 (WebInspector.resourceURLForRelatedNode.callback): 26055 (WebInspector.resourceURLForRelatedNode): 26056 26057 2010-10-26 Abhishek Arya <inferno (a] chromium.org> 26058 26059 Reviewed by Adam Barth. 26060 26061 Protect the frame from being blown away in loadWithDocumentLoader function call. 26062 dispatchBeforeLoadEvent can cause the frame to be freed, which gets later used in 26063 continueLoadAfterNavigationPolicy call. 26064 https://bugs.webkit.org/show_bug.cgi?id=48281 26065 26066 Test: fast/events/form-iframe-target-before-load-crash.html 26067 26068 * loader/FrameLoader.cpp: 26069 (WebCore::FrameLoader::loadWithDocumentLoader): 26070 26071 2010-10-26 Xan Lopez <xlopez (a] igalia.com> 26072 26073 Restore another mix-up in copy&paste error. Use height for the 26074 vertical adjustments instead of width. 26075 26076 * platform/gtk/ScrollViewGtk.cpp: 26077 (WebCore::ScrollView::setVerticalAdjustment): 26078 26079 2010-10-26 Xan Lopez <xlopez (a] igalia.com> 26080 26081 Restore early return accidentally removed in previous 26082 patch. Should make API tests pass again. 26083 26084 * platform/gtk/ScrollViewGtk.cpp: 26085 (WebCore::ScrollView::setHorizontalAdjustment): 26086 (WebCore::ScrollView::setVerticalAdjustment): 26087 26088 2010-10-26 Xan Lopez <xlopez (a] igalia.com> 26089 26090 Reviewed by Martin Robinson. 26091 26092 [GTK] Port to new GtkScrollable interface in GTK+ 3.x 26093 https://bugs.webkit.org/show_bug.cgi?id=48202 26094 26095 The new GtkScrollable API sets the adjustments individually, so 26096 adjust the code for this fact. 26097 26098 * platform/ScrollView.h: 26099 * platform/gtk/ScrollViewGtk.cpp: 26100 (WebCore::ScrollView::setHorizontalAdjustment): new method to set the horizontal adjustment. 26101 (WebCore::ScrollView::setVerticalAdjustment): new method to set the vertical adjustment. 26102 (WebCore::ScrollView::setGtkAdjustments): make this just call the other two methods. 26103 26104 2010-10-26 Sheriff Bot <webkit.review.bot (a] gmail.com> 26105 26106 Unreviewed, rolling out r70512. 26107 http://trac.webkit.org/changeset/70512 26108 https://bugs.webkit.org/show_bug.cgi?id=48314 26109 26110 crashes many tests (Requested by inferno-sec on #webkit). 26111 26112 * dom/Element.cpp: 26113 * dom/Element.h: 26114 * editing/Editor.cpp: 26115 (WebCore::markMisspellingsOrBadGrammar): 26116 (WebCore::Editor::spellCheckingEnabledInFocusedNode): 26117 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 26118 * editing/Editor.h: 26119 * platform/ContextMenu.cpp: 26120 (WebCore::ContextMenu::populate): 26121 26122 2010-10-24 MORITA Hajime <morrita (a] google.com> 26123 26124 Reviewed by Tony Chang. 26125 26126 spellcheck='' should be the same as spellcheck="true" 26127 https://bugs.webkit.org/show_bug.cgi?id=25539 26128 26129 - Added a check for empty string and missing attribute. 26130 - Extracted the check to Element::spellCheckingEnabled() 26131 - Introduced SpellcheckAttributeState enum to represent the 26132 states for spellcheck attributes. 26133 26134 * dom/Element.cpp: 26135 (WebCore::Element::spellcheckAttributeState): Added. 26136 (WebCore::Element::isSpellCheckingEnabled): Added. 26137 * dom/Element.h: 26138 * editing/Editor.cpp: 26139 (WebCore::markMisspellingsOrBadGrammar): 26140 (WebCore::Editor::isSpellCheckingEnabledInFocusedNode): Renamed, partly extracted to Element::isSpellCheckingEnabled() 26141 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 26142 * editing/Editor.h: 26143 * platform/ContextMenu.cpp: 26144 (WebCore::ContextMenu::populate): 26145 26146 2010-10-25 Kent Tamura <tkent (a] chromium.org> 26147 26148 Reviewed by Darin Adler. 26149 26150 Refactor HTMLInputElement: Move createRender(), appendFormData(), 26151 saveFormControlState() and restoreFormControlState() to InputTypes. 26152 https://bugs.webkit.org/show_bug.cgi?id=47834 26153 26154 This change adds BaseButtonInputType and BaseCheckableInputType. They 26155 are super classes of some concrete InputType classes. 26156 26157 No new tests. Just a code refactoring. 26158 26159 * CMakeLists.txt: Add BaseButtonInputType and BaseCheckableInputType files. 26160 * GNUmakefile.am: ditto. 26161 * WebCore.gypi: ditto. 26162 * WebCore.pro: ditto. 26163 * WebCore.vcproj/WebCore.vcproj: ditto. 26164 * WebCore.xcodeproj/project.pbxproj: ditto. 26165 * html/BaseButtonInputType.cpp: Added. 26166 (WebCore::BaseButtonInputType::appendFormData): 26167 (WebCore::BaseButtonInputType::createRenderer): 26168 * html/BaseButtonInputType.h: Added. 26169 (WebCore::BaseButtonInputType::BaseButtonInputType): 26170 * html/BaseCheckableInputType.cpp: Added. 26171 (WebCore::BaseCheckableInputType::saveFormControlState): 26172 (WebCore::BaseCheckableInputType::restoreFormControlState): 26173 (WebCore::BaseCheckableInputType::appendFormData): 26174 * html/BaseCheckableInputType.h: Added. 26175 (WebCore::BaseCheckableInputType::BaseCheckableInputType): 26176 * html/ButtonInputType.h: Change the super class. 26177 (WebCore::ButtonInputType::ButtonInputType): 26178 * html/CheckboxInputType.h: Change the super class. 26179 (WebCore::CheckboxInputType::CheckboxInputType): 26180 * html/FileInputType.cpp: 26181 (WebCore::FileInputType::appendFormData): 26182 (WebCore::FileInputType::createRenderer): 26183 * html/FileInputType.h: Change the super class. 26184 (WebCore::FileInputType::FileInputType): 26185 * html/HTMLFormControlElement.h: 26186 Make placeholderShouldBeVisible() public for access from TextFieldInputType. 26187 * html/HTMLInputElement.cpp: 26188 (WebCore::HTMLInputElement::saveFormControlState): 26189 (WebCore::HTMLInputElement::restoreFormControlState): 26190 (WebCore::HTMLInputElement::createRenderer): 26191 (WebCore::HTMLInputElement::appendFormData): 26192 * html/HTMLInputElement.h: 26193 Add the following functions for ImageInputType and SubmitInputType. 26194 (WebCore::HTMLInputElement::xPosition): 26195 (WebCore::HTMLInputElement::yPosition): 26196 * html/HiddenInputType.cpp: 26197 (WebCore::HiddenInputType::createRenderer): 26198 * html/HiddenInputType.h: 26199 * html/ImageInputType.cpp: 26200 (WebCore::ImageInputType::isFormDataAppendable): 26201 (WebCore::ImageInputType::appendFormData): 26202 (WebCore::ImageInputType::createRenderer): 26203 * html/ImageInputType.h: Change the super class. 26204 (WebCore::ImageInputType::ImageInputType): 26205 * html/InputType.cpp: 26206 (WebCore::InputType::saveFormControlState): 26207 (WebCore::InputType::restoreFormControlState): 26208 (WebCore::InputType::isFormDataAppendable): 26209 (WebCore::InputType::appendFormData): 26210 (WebCore::InputType::createRenderer): 26211 * html/InputType.h: 26212 * html/PasswordInputType.cpp: 26213 (WebCore::PasswordInputType::saveFormControlState): 26214 (WebCore::PasswordInputType::restoreFormControlState): 26215 * html/PasswordInputType.h: 26216 * html/RadioInputType.h: Change the super class. 26217 (WebCore::RadioInputType::RadioInputType): 26218 * html/RangeInputType.cpp: 26219 (WebCore::RangeInputType::createRenderer): 26220 * html/RangeInputType.h: 26221 * html/ResetInputType.h: 26222 (WebCore::ResetInputType::ResetInputType): 26223 * html/SubmitInputType.cpp: 26224 (WebCore::SubmitInputType::appendFormData): 26225 * html/SubmitInputType.h: Change the super class. 26226 (WebCore::SubmitInputType::SubmitInputType): 26227 * html/TextFieldInputType.cpp: 26228 (WebCore::TextFieldInputType::createRenderer): 26229 * html/TextFieldInputType.h: 26230 26231 2010-10-25 Simon Fraser <simon.fraser (a] apple.com> 26232 26233 Reviewed by Dan Bernstein. 26234 26235 Fix scrolling of noncomposited iframes within composited document 26236 https://bugs.webkit.org/show_bug.cgi?id=47391 26237 26238 When an iframe that is painting into a compositing layer is scrolled, 26239 we need to repaint via the RenderObject (which dirties the compositing layer contents), 26240 rather than going out to hostWindow. 26241 26242 Test: compositing/iframes/composited-iframe-scroll.html 26243 26244 * page/FrameView.cpp: 26245 (WebCore::FrameView::scrollContentsSlowPath): 26246 * page/FrameView.h: 26247 * platform/ScrollView.cpp: 26248 (WebCore::ScrollView::scrollContents): 26249 (WebCore::ScrollView::scrollContentsSlowPath): 26250 * platform/ScrollView.h: 26251 26252 2010-10-25 Ryosuke Niwa <rniwa (a] webkit.org> 26253 26254 Unreviewed Qt build fix for r70496. 26255 26256 * bridge/qt/qt_instance.cpp: 26257 (JSC::Bindings::QtInstance::numberValue): 26258 * bridge/qt/qt_pixmapruntime.cpp: 26259 (JSC::Bindings::QtPixmapWidthField::valueFromInstance): 26260 (JSC::Bindings::QtPixmapHeightField::valueFromInstance): 26261 * bridge/qt/qt_runtime.cpp: 26262 (JSC::Bindings::convertValueToQVariant): 26263 (JSC::Bindings::convertQVariantToValue): 26264 (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): 26265 (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): 26266 26267 2010-10-25 Andy Estes <aestes (a] apple.com> 26268 26269 Reviewed by Simon Fraser. 26270 26271 Source change by Simon Fraser. 26272 26273 Setting an element's visibility property to visible has no effect when 26274 it has a hidden parent. 26275 https://bugs.webkit.org/show_bug.cgi?id=48267 26276 26277 Test: fast/layers/visible-layer-with-hidden-parent.html 26278 26279 When a layer is hidden, there is an optimization that removes it from 26280 the layer tree. If the layer is made visible again, it would only mark 26281 its own stacking context's z-order list as dirty. If there are hidden 26282 parent layers, they need to be marked dirty as well so layers with 26283 visible descendents are re-added to the layer tree. 26284 26285 * rendering/RenderLayer.cpp: 26286 (WebCore::RenderLayer::setHasVisibleContent): Dirty the z-order lists of 26287 all parent stacking context render layers up to and including the first 26288 visible stacking context. 26289 26290 2010-10-25 Oliver Hunt <oliver (a] apple.com> 26291 26292 Reviewed by Gavin Barraclough. 26293 26294 Remove exec and globalData arguments from jsNumber 26295 https://bugs.webkit.org/show_bug.cgi?id=48270 26296 26297 Mechanical removal of exec parameter to jsNumber. 26298 26299 * bindings/js/JSAudioConstructor.cpp: 26300 (WebCore::JSAudioConstructor::JSAudioConstructor): 26301 * bindings/js/JSCSSStyleDeclarationCustom.cpp: 26302 (WebCore::JSCSSStyleDeclaration::nameGetter): 26303 * bindings/js/JSCoordinatesCustom.cpp: 26304 (WebCore::JSCoordinates::altitude): 26305 (WebCore::JSCoordinates::altitudeAccuracy): 26306 (WebCore::JSCoordinates::heading): 26307 (WebCore::JSCoordinates::speed): 26308 * bindings/js/JSDOMWindowCustom.cpp: 26309 (WebCore::JSDOMWindow::setTimeout): 26310 (WebCore::JSDOMWindow::setInterval): 26311 * bindings/js/JSDeviceMotionEventCustom.cpp: 26312 (WebCore::createAccelerationObject): 26313 (WebCore::createRotationRateObject): 26314 (WebCore::JSDeviceMotionEvent::interval): 26315 * bindings/js/JSDeviceOrientationEventCustom.cpp: 26316 (WebCore::JSDeviceOrientationEvent::alpha): 26317 (WebCore::JSDeviceOrientationEvent::beta): 26318 (WebCore::JSDeviceOrientationEvent::gamma): 26319 * bindings/js/JSGeolocationCustom.cpp: 26320 (WebCore::JSGeolocation::watchPosition): 26321 * bindings/js/JSHTMLInputElementCustom.cpp: 26322 (WebCore::JSHTMLInputElement::selectionStart): 26323 (WebCore::JSHTMLInputElement::selectionEnd): 26324 * bindings/js/JSHTMLOptionsCollectionCustom.cpp: 26325 (WebCore::JSHTMLOptionsCollection::length): 26326 * bindings/js/JSIDBKeyCustom.cpp: 26327 (WebCore::toJS): 26328 * bindings/js/JSInjectedScriptHostCustom.cpp: 26329 (WebCore::InjectedScriptHost::createInjectedScript): 26330 (WebCore::JSInjectedScriptHost::pushNodePathToFrontend): 26331 * bindings/js/JSOptionConstructor.cpp: 26332 (WebCore::JSOptionConstructor::JSOptionConstructor): 26333 * bindings/js/JSSQLResultSetRowListCustom.cpp: 26334 (WebCore::JSSQLResultSetRowList::item): 26335 * bindings/js/JSSVGLengthCustom.cpp: 26336 (WebCore::JSSVGLength::value): 26337 * bindings/js/JSScriptProfileNodeCustom.cpp: 26338 (WebCore::JSScriptProfileNode::callUID): 26339 * bindings/js/JSWebGLRenderingContextCustom.cpp: 26340 (WebCore::toJS): 26341 * bindings/js/JSWorkerContextCustom.cpp: 26342 (WebCore::JSWorkerContext::setTimeout): 26343 (WebCore::JSWorkerContext::setInterval): 26344 * bindings/js/JSWorkerContextErrorHandler.cpp: 26345 (WebCore::JSWorkerContextErrorHandler::handleEvent): 26346 * bindings/js/ScriptFunctionCall.cpp: 26347 (WebCore::ScriptCallArgumentHandler::appendArgument): 26348 * bindings/js/SerializedScriptValue.cpp: 26349 (WebCore::CloneDeserializer::readTerminal): 26350 * bindings/scripts/CodeGeneratorJS.pm: 26351 * bridge/c/c_instance.cpp: 26352 (JSC::Bindings::CInstance::numberValue): 26353 * bridge/c/c_utility.cpp: 26354 (JSC::Bindings::convertNPVariantToValue): 26355 * bridge/jni/jsc/JNIBridgeJSC.cpp: 26356 (JavaField::valueFromInstance): 26357 (JavaArray::valueAt): 26358 * bridge/jni/jsc/JavaInstanceJSC.cpp: 26359 (JavaInstance::numberValue): 26360 (JavaInstance::invokeMethod): 26361 * bridge/objc/objc_instance.mm: 26362 (ObjcInstance::numberValue): 26363 * bridge/objc/objc_utility.mm: 26364 (JSC::Bindings::convertObjcValueToValue): 26365 * bridge/runtime_array.cpp: 26366 (JSC::RuntimeArray::lengthGetter): 26367 * bridge/runtime_method.cpp: 26368 (JSC::RuntimeMethod::lengthGetter): 26369 26370 2010-10-21 Satish Sampath <satish (a] chromium.org> 26371 26372 Reviewed by Jeremy Orlow. 26373 26374 Allow embedder to pass on all the speech recognition results to the input element. 26375 https://bugs.webkit.org/show_bug.cgi?id=48068 26376 26377 No new tests added as functionality has not changed, tests will be added in the next 26378 patch where these results are exposed as an attribute to scripts. 26379 26380 * Android.mk: Added new source files. 26381 * GNUmakefile.am: 26382 * WebCore.gypi: 26383 * WebCore.pro: 26384 * WebCore.xcodeproj/project.pbxproj: 26385 * page/SpeechInput.cpp: 26386 (WebCore::SpeechInput::setRecognitionResult): Accept an array instead of a single string. 26387 * page/SpeechInput.h: 26388 * page/SpeechInputListener.h: 26389 * page/SpeechInputResult.cpp: Added, defines a class for managing a speech input result. 26390 (WebCore::SpeechInputResult::create): 26391 (WebCore::SpeechInputResult::SpeechInputResult): 26392 (WebCore::SpeechInputResult::confidence): 26393 (WebCore::SpeechInputResult::utterance): 26394 * page/SpeechInputResult.h: Added. 26395 * platform/mock/SpeechInputClientMock.cpp: 26396 (WebCore::SpeechInputClientMock::timerFired): 26397 * rendering/TextControlInnerElements.cpp: 26398 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): 26399 * rendering/TextControlInnerElements.h: 26400 26401 2010-10-25 Jian Li <jianli (a] chromium.org> 26402 26403 Reviewed by David Levin. 26404 26405 Support appending an ArrayBuffer object in BlobBuilder 26406 https://bugs.webkit.org/show_bug.cgi?id=47701 26407 26408 Test cases have been added to read-blob-test-cases.js. 26409 26410 * fileapi/BlobBuilder.cpp: 26411 (WebCore::BlobBuilder::getBuffer): 26412 (WebCore::BlobBuilder::append): Removed bool return values since they 26413 weren't used. 26414 * fileapi/BlobBuilder.h: 26415 * fileapi/BlobBuilder.idl: 26416 26417 2010-10-25 No'am Rosenthal <noam.rosenthal (a] nokia.com> 26418 26419 Reviewed by Kenneth Rohde Christiansen. 26420 26421 [Texmap] [Qt] Texture mapper initial implementation 26422 https://bugs.webkit.org/show_bug.cgi?id=47070 26423 26424 Glue layer (WebCoreSupport) changes to allow connecting TextureMapper to a Qt PageClient, i.e. 26425 a QWebView or a QGraphicsWebView. This enables the new type, TextureMapperPlatformLayer, to be recognized both by 26426 the compositor and by the page client. 26427 Note that this is temporarily an opt-in, under USE(TEXTURE_MAPPER) 26428 26429 No new tests: the existing tests under LayoutTests/compositing already cover this. 26430 26431 * platform/graphics/GraphicsLayer.h: 26432 * platform/qt/QWebPageClient.h: 26433 (QWebPageClient::setRootGraphicsLayer): 26434 26435 2010-10-25 No'am Rosenthal <noam.rosenthal (a] nokia.com> 26436 26437 Reviewed by Kenneth Rohde Christiansen. 26438 26439 [Texmap] [Qt] Texture mapper initial implementation 26440 https://bugs.webkit.org/show_bug.cgi?id=47070 26441 26442 Add a config flag and a define (WTF_USE_TEXTURE_MAPPER) to WebCore, to enable opt-in compilation of texture-mapper with Qt. 26443 26444 No new tests: WIP for a new implementation. 26445 26446 * WebCore.pro: 26447 26448 2010-10-25 Jian Li <jianli (a] chromium.org> 26449 26450 Reviewed by David Levin. 26451 26452 Calling FileReader.abort during reading could cause crash 26453 https://bugs.webkit.org/show_bug.cgi?id=48163 26454 26455 Test: fast/files/file-reader-abort.html 26456 26457 * fileapi/FileReader.cpp: 26458 (WebCore::delayedAbort): 26459 (WebCore::FileReader::abort): Schedule to do the abort later to work 26460 around the case that abort() could be called from event handler. 26461 (WebCore::FileReader::doAbort): 26462 (WebCore::FileReader::didFail): Do not go with normal error handling 26463 when we are in the process of aborting. 26464 (WebCore::FileReader::failed): 26465 (WebCore::FileReader::readyState): 26466 * fileapi/FileReader.h: 26467 26468 2010-10-25 Patrick Gansterer <paroga (a] webkit.org> 26469 26470 Reviewed by Adam Roben. 26471 26472 [WINCE] Buildfix for NetworkStateNotifier 26473 https://bugs.webkit.org/show_bug.cgi?id=48240 26474 26475 WinCE does not support RegisterWaitForSingleObject, so disable it for now. 26476 26477 * platform/network/win/NetworkStateNotifierWin.cpp: 26478 (WebCore::NetworkStateNotifier::NetworkStateNotifier): 26479 26480 2010-10-25 David Hyatt <hyatt (a] apple.com> 26481 26482 Reviewed by Dan Bernstein. 26483 26484 https://bugs.webkit.org/show_bug.cgi?id=48257 26485 26486 Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct 26487 top left corner and left baseline edge once so that can be passed down to all the painting functions instead of 26488 tx and ty. 26489 26490 adjustment helpers have been added that can be called before painting children or lines and that fix up 26491 the coordinates from flipped to physical. 26492 26493 Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html 26494 26495 * rendering/InlineBox.cpp: 26496 (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): 26497 * rendering/InlineBox.h: 26498 * rendering/InlineFlowBox.cpp: 26499 (WebCore::InlineFlowBox::paintBoxDecorations): 26500 (WebCore::InlineFlowBox::paintMask): 26501 * rendering/InlineTextBox.cpp: 26502 (WebCore::paintTextWithShadows): 26503 (WebCore::InlineTextBox::paint): 26504 (WebCore::InlineTextBox::paintSelection): 26505 (WebCore::InlineTextBox::paintCompositionBackground): 26506 (WebCore::InlineTextBox::paintDecoration): 26507 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): 26508 (WebCore::InlineTextBox::paintTextMatchMarker): 26509 (WebCore::InlineTextBox::computeRectForReplacementMarker): 26510 (WebCore::InlineTextBox::paintDocumentMarkers): 26511 (WebCore::InlineTextBox::paintCompositionUnderline): 26512 * rendering/InlineTextBox.h: 26513 * rendering/RenderBlock.cpp: 26514 (WebCore::RenderBlock::paintChildren): 26515 (WebCore::RenderBlock::paintFloats): 26516 * rendering/RenderBox.cpp: 26517 (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): 26518 * rendering/RenderBox.h: 26519 * rendering/style/RenderStyle.h: 26520 (WebCore::InheritedFlags::isFlippedBlocksWritingMode): 26521 26522 2010-10-25 Ben Murdoch <benm (a] google.com> 26523 26524 Reviewed by Steve Block. 26525 26526 Build break with ENABLE(BLOB) and not ENABLE(3D_CANVAS) 26527 https://bugs.webkit.org/show_bug.cgi?id=48243 26528 26529 Build fix only so no new tests. 26530 26531 * bindings/generic/RuntimeEnabledFeatures.h: Guard appropriately. 26532 * bindings/v8/custom/V8ArrayBufferViewCustom.h: ditto. 26533 26534 2010-10-25 Cris Neckar <cdn (a] chromium.org> 26535 26536 Reviewed by Dimitri Glazkov. 26537 26538 Added check to ensure that events with the type "mousedown" are mouse events before dispatching. 26539 https://bugs.webkit.org/show_bug.cgi?id=48159 26540 26541 Test: fast/events/keyboardevent-mousedown-crash.html 26542 26543 * dom/Node.cpp: 26544 (WebCore::Node::defaultEventHandler): 26545 26546 2010-10-25 Kwang Yul Seo <skyul (a] company100.net> 26547 26548 Unreviewed build fix for r70400. 26549 26550 Add dummy setCookieStoragePrivateBrowsingEnabled. 26551 26552 * platform/brew/TemporaryLinkStubs.cpp: Added. 26553 (WebCore::setCookieStoragePrivateBrowsingEnabled): 26554 26555 2010-10-25 Patrick Gansterer <paroga (a] webkit.org> 26556 26557 Reviewed by Adam Roben. 26558 26559 [WINCE] Use default implementation of AXObjectCache::platformGenerateAXID 26560 https://bugs.webkit.org/show_bug.cgi?id=48239 26561 26562 WinCE does not support NotifyWinEvent, so use the default implementation. 26563 26564 * accessibility/AXObjectCache.cpp: 26565 26566 2010-10-25 Sam Weinig <sam (a] webkit.org> 26567 26568 Reviewed by Anders Carlsson. 26569 26570 Need WebKit2 API to figure out if a frame can provide source 26571 <rdar://problem/8424632> 26572 https://bugs.webkit.org/show_bug.cgi?id=48252 26573 26574 * WebCore.exp.in: 26575 26576 2010-10-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 26577 26578 Unreviewed, rolling out r70451. 26579 http://trac.webkit.org/changeset/70451 26580 https://bugs.webkit.org/show_bug.cgi?id=48249 26581 26582 Broke set-unloaded-frame-location.html under Qt (Requested by 26583 caseq on #webkit). 26584 26585 * ForwardingHeaders/wtf/text/TextPosition.h: Removed. 26586 * bindings/js/ScriptSourceCode.h: 26587 (WebCore::ScriptSourceCode::ScriptSourceCode): 26588 * bindings/v8/ScheduledAction.cpp: 26589 (WebCore::ScheduledAction::ScheduledAction): 26590 * bindings/v8/ScriptController.cpp: 26591 (WebCore::ScriptController::eventHandlerLineNumber): 26592 (WebCore::ScriptController::eventHandlerColumnNumber): 26593 * bindings/v8/ScriptController.h: 26594 * bindings/v8/ScriptEventListener.cpp: 26595 (WebCore::createAttributeEventListener): 26596 * bindings/v8/ScriptSourceCode.h: 26597 (WebCore::ScriptSourceCode::ScriptSourceCode): 26598 (WebCore::ScriptSourceCode::startLine): 26599 * bindings/v8/V8LazyEventListener.cpp: 26600 (WebCore::V8LazyEventListener::V8LazyEventListener): 26601 (WebCore::V8LazyEventListener::prepareListenerObject): 26602 * bindings/v8/V8LazyEventListener.h: 26603 (WebCore::V8LazyEventListener::create): 26604 * bindings/v8/V8Proxy.cpp: 26605 (WebCore::V8Proxy::compileScript): 26606 (WebCore::V8Proxy::evaluate): 26607 (WebCore::V8Proxy::runScript): 26608 * bindings/v8/V8Proxy.h: 26609 * bindings/v8/WorkerContextExecutionProxy.cpp: 26610 (WebCore::WorkerContextExecutionProxy::evaluate): 26611 (WebCore::WorkerContextExecutionProxy::runScript): 26612 * bindings/v8/WorkerContextExecutionProxy.h: 26613 * bindings/v8/WorkerScriptController.cpp: 26614 (WebCore::WorkerScriptController::evaluate): 26615 * dom/PendingScript.cpp: 26616 (WebCore::PendingScript::releaseElementAndClear): 26617 * dom/PendingScript.h: 26618 (WebCore::PendingScript::PendingScript): 26619 (WebCore::PendingScript::operator=): 26620 (WebCore::PendingScript::startingLineNumber): 26621 * dom/ScriptableDocumentParser.h: 26622 * dom/XMLDocumentParser.h: 26623 * dom/XMLDocumentParserLibxml2.cpp: 26624 (WebCore::XMLDocumentParser::XMLDocumentParser): 26625 (WebCore::XMLDocumentParser::startElementNs): 26626 (WebCore::XMLDocumentParser::endElementNs): 26627 (WebCore::XMLDocumentParser::lineNumber): 26628 (WebCore::XMLDocumentParser::columnNumber): 26629 * dom/XMLDocumentParserQt.cpp: 26630 (WebCore::XMLDocumentParser::XMLDocumentParser): 26631 (WebCore::XMLDocumentParser::parseStartElement): 26632 (WebCore::XMLDocumentParser::parseEndElement): 26633 * html/parser/HTMLDocumentParser.cpp: 26634 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): 26635 (WebCore::HTMLDocumentParser::columnNumber): 26636 * html/parser/HTMLDocumentParser.h: 26637 * html/parser/HTMLScriptRunner.cpp: 26638 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 26639 (WebCore::HTMLScriptRunner::execute): 26640 (WebCore::HTMLScriptRunner::runScript): 26641 * html/parser/HTMLScriptRunner.h: 26642 * html/parser/HTMLTreeBuilder.cpp: 26643 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 26644 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 26645 (WebCore::HTMLTreeBuilder::processEndTag): 26646 (WebCore::HTMLTreeBuilder::processScriptStartTag): 26647 * html/parser/HTMLTreeBuilder.h: 26648 26649 2010-10-25 Kwang Yul Seo <skyul (a] company100.net> 26650 26651 Unreviewed build fix for r70095. 26652 26653 Provide platformDefaultLanguage(). 26654 26655 * platform/brew/LanguageBrew.cpp: Added. 26656 (WebCore::platformDefaultLanguage): 26657 * platform/brew/LocalizedStringsBrew.cpp: 26658 26659 2010-10-25 Patrick Gansterer <paroga (a] webkit.org> 26660 26661 Reviewed by David Kilzer. 26662 26663 Replace _countof with WTF_ARRAY_LENGTH 26664 https://bugs.webkit.org/show_bug.cgi?id=48229 26665 26666 * platform/win/FileSystemWin.cpp: 26667 (WebCore::openTemporaryFile): 26668 * platform/wince/FileSystemWinCE.cpp: 26669 (WebCore::openTemporaryFile): 26670 * plugins/win/PluginDatabaseWin.cpp: 26671 (WebCore::addPluginPathsFromRegistry): 26672 (WebCore::addWindowsMediaPlayerPluginDirectory): 26673 (WebCore::addMacromediaPluginDirectories): 26674 26675 2010-10-25 David Hyatt <hyatt (a] apple.com> 26676 26677 Reviewed by Sam Weinig. 26678 26679 https://bugs.webkit.org/show_bug.cgi?id=48246 26680 26681 Make selectionRect() on InlineTextBox give the right value for a vertical line. Selection is still too broken 26682 to test anything though. 26683 26684 * rendering/InlineTextBox.cpp: 26685 (WebCore::InlineTextBox::selectionRect): 26686 26687 2010-10-25 Benjamin Poulain <benjamin.poulain (a] nokia.com> 26688 26689 Reviewed by Antonio Gomes. 26690 26691 Typo in the TextureMapperGL 26692 https://bugs.webkit.org/show_bug.cgi?id=48241 26693 26694 Fix the typo. 26695 26696 * platform/graphics/opengl/TextureMapperGL.cpp: 26697 (WebCore::TextureMapperGL::TextureMapperGL): 26698 26699 2010-10-25 Pavel Feldman <pfeldman (a] chromium.org> 26700 26701 Reviewed by Timothy Hatcher. 26702 26703 Web Inspector: slowly make old resources panel optional (continued). 26704 https://bugs.webkit.org/show_bug.cgi?id=48207 26705 26706 * inspector/front-end/Resource.js: 26707 (WebInspector.Resource.prototype.set url): 26708 * inspector/front-end/StoragePanel.js: 26709 (WebInspector.StoragePanel.prototype.get toolbarItemLabel): 26710 (WebInspector.StoragePanel.prototype.showResource): 26711 (WebInspector.StoragePanel.prototype.searchMatchFound): 26712 (WebInspector.StoragePanel.prototype._findTreeElementForResource): 26713 (WebInspector.StoragePanel.prototype._findTreeElementForResource.getParent): 26714 (WebInspector.BaseStorageTreeElement.prototype.onattach): 26715 * inspector/front-end/inspector.css: 26716 (.storage.panel .sidebar): 26717 (.storage.panel .sidebar li): 26718 (.storage.panel .sidebar li.parent): 26719 (.storage.panel .sidebar li.selected): 26720 (.storage.panel .sidebar li .selection): 26721 (.storage.panel .sidebar :focus li .selection): 26722 (body.inactive .storage.panel .sidebar li .selection): 26723 (.storage.panel .sidebar .icon): 26724 26725 2010-10-25 No'am Rosenthal <noam.rosenthal (a] nokia.com> 26726 26727 Reviewed by Kenneth Rohde Christiansen. 26728 26729 [Texmap] [Qt] Texture mapper initial implementation 26730 This patch adds the OpenGL implementation of TextureMapper. See the other entries from bug 47070 for details. 26731 https://bugs.webkit.org/show_bug.cgi?id=47070 26732 26733 No new tests. Part of a new implementation. 26734 26735 * platform/graphics/opengl/TextureMapperGL.cpp: Added. 26736 * platform/graphics/opengl/TextureMapperGL.h: Added. 26737 26738 2010-10-25 Peter Rybin <peter.rybin (a] gmail.com> 26739 26740 Reviewed by Adam Barth. 26741 26742 HTML parser should provide script column position within HTML document to JavaScript engine 26743 https://bugs.webkit.org/show_bug.cgi?id=45271 26744 26745 Replaces line number with TextPosition struct so that script engine 26746 gets script starting line/column. 26747 26748 * ForwardingHeaders/wtf/text/TextPosition.h: Added. 26749 * bindings/js/ScriptSourceCode.h: 26750 (WebCore::ScriptSourceCode::ScriptSourceCode): 26751 * bindings/v8/ScheduledAction.cpp: 26752 (WebCore::ScheduledAction::ScheduledAction): 26753 * bindings/v8/ScriptController.cpp: 26754 (WebCore::ScriptController::eventHandlerPosition): 26755 * bindings/v8/ScriptController.h: 26756 * bindings/v8/ScriptEventListener.cpp: 26757 (WebCore::createAttributeEventListener): 26758 * bindings/v8/ScriptSourceCode.h: 26759 (WebCore::ScriptSourceCode::ScriptSourceCode): 26760 (WebCore::ScriptSourceCode::startLine): 26761 (WebCore::ScriptSourceCode::startPosition): 26762 * bindings/v8/V8LazyEventListener.cpp: 26763 (WebCore::V8LazyEventListener::V8LazyEventListener): 26764 (WebCore::V8LazyEventListener::prepareListenerObject): 26765 * bindings/v8/V8LazyEventListener.h: 26766 (WebCore::V8LazyEventListener::create): 26767 * bindings/v8/V8Proxy.cpp: 26768 (WebCore::V8Proxy::compileScript): 26769 (WebCore::V8Proxy::evaluate): 26770 (WebCore::V8Proxy::runScript): 26771 * bindings/v8/V8Proxy.h: 26772 * bindings/v8/WorkerContextExecutionProxy.cpp: 26773 (WebCore::WorkerContextExecutionProxy::evaluate): 26774 (WebCore::WorkerContextExecutionProxy::runScript): 26775 * bindings/v8/WorkerContextExecutionProxy.h: 26776 * bindings/v8/WorkerScriptController.cpp: 26777 (WebCore::WorkerScriptController::evaluate): 26778 * dom/PendingScript.cpp: 26779 (WebCore::PendingScript::releaseElementAndClear): 26780 * dom/PendingScript.h: 26781 (WebCore::PendingScript::PendingScript): 26782 (WebCore::PendingScript::operator=): 26783 (WebCore::PendingScript::startingPosition): 26784 * dom/ScriptableDocumentParser.h: 26785 * dom/XMLDocumentParser.h: 26786 * dom/XMLDocumentParserLibxml2.cpp: 26787 (WebCore::XMLDocumentParser::XMLDocumentParser): 26788 (WebCore::XMLDocumentParser::startElementNs): 26789 (WebCore::XMLDocumentParser::endElementNs): 26790 (WebCore::XMLDocumentParser::lineNumber): 26791 (WebCore::XMLDocumentParser::columnNumber): 26792 (WebCore::XMLDocumentParser::textPosition): 26793 (WebCore::XMLDocumentParser::textPositionOneBased): 26794 * dom/XMLDocumentParserQt.cpp: 26795 (WebCore::XMLDocumentParser::XMLDocumentParser): 26796 (WebCore::XMLDocumentParser::textPosition): 26797 (WebCore::XMLDocumentParser::parseStartElement): 26798 (WebCore::XMLDocumentParser::parseEndElement): 26799 * html/parser/HTMLDocumentParser.cpp: 26800 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): 26801 (WebCore::HTMLDocumentParser::textPosition): 26802 * html/parser/HTMLDocumentParser.h: 26803 * html/parser/HTMLScriptRunner.cpp: 26804 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 26805 (WebCore::HTMLScriptRunner::execute): 26806 (WebCore::HTMLScriptRunner::runScript): 26807 * html/parser/HTMLScriptRunner.h: 26808 * html/parser/HTMLTreeBuilder.cpp: 26809 (WebCore::uninitializedPositionValue1): 26810 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 26811 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 26812 (WebCore::HTMLTreeBuilder::processEndTag): 26813 (WebCore::HTMLTreeBuilder::processScriptStartTag): 26814 * html/parser/HTMLTreeBuilder.h: 26815 26816 2010-10-24 Pavel Feldman <pfeldman (a] chromium.org> 26817 26818 Reviewed by Timothy Hatcher. 26819 26820 Web Inspector: slowly make old resources panel optional. 26821 https://bugs.webkit.org/show_bug.cgi?id=48207 26822 26823 * inspector/front-end/AuditsPanel.js: 26824 (WebInspector.AuditsPanel.prototype._reloadResources): 26825 (WebInspector.AuditsPanel.prototype.show): 26826 * inspector/front-end/ExtensionServer.js: 26827 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 26828 * inspector/front-end/ResourcesPanel.js: 26829 * inspector/front-end/ScriptsPanel.js: 26830 (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): 26831 (WebInspector.ScriptsPanel.prototype._sourceFrameForResource): 26832 * inspector/front-end/inspector.js: 26833 (WebInspector._createPanels): 26834 (WebInspector.doLoadedDone.populateInspectorState): 26835 (WebInspector.doLoadedDone): 26836 (WebInspector.openResource): 26837 (WebInspector.updateResource): 26838 (WebInspector.domContentEventFired): 26839 (WebInspector.loadEventFired): 26840 (WebInspector.removeResource): 26841 (WebInspector.displayNameForURL): 26842 (WebInspector._choosePanelToShowSourceLine): 26843 (WebInspector.doPerformSearch): 26844 26845 2010-10-24 Pavel Feldman <pfeldman (a] chromium.org> 26846 26847 Reviewed by Timothy Hatcher. 26848 26849 Web Inspector: add support for errors, warnings and search to the storage panel. 26850 https://bugs.webkit.org/show_bug.cgi?id=48206 26851 26852 * inspector/front-end/ConsoleView.js: 26853 (WebInspector.ConsoleView.prototype.addMessage): 26854 (WebInspector.ConsoleView.prototype.clearMessages): 26855 * inspector/front-end/Resource.js: 26856 (WebInspector.Resource.prototype.set errors): 26857 (WebInspector.Resource.prototype.set warnings): 26858 (WebInspector.Resource.prototype.get searchMatches): 26859 (WebInspector.Resource.prototype.set searchMatches): 26860 (WebInspector.Resource.prototype.clearErrorsAndWarnings): 26861 * inspector/front-end/ResourceManager.js: 26862 (WebInspector.ResourceManager): 26863 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 26864 (WebInspector.ResourceManager.prototype._createResource): 26865 (WebInspector.ResourceManager.prototype._appendRedirect): 26866 (WebInspector.ResourceManager.prototype.didReceiveResponse): 26867 (WebInspector.ResourceManager.prototype.didFinishLoading): 26868 (WebInspector.ResourceManager.prototype.didFailLoading): 26869 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 26870 (WebInspector.ResourceManager.prototype.didCommitLoadForFrame): 26871 (WebInspector.ResourceManager.prototype.frameDetachedFromParent): 26872 (WebInspector.ResourceManager.prototype._addFramesRecursively): 26873 (WebInspector.ResourceManager.prototype.resourceForURL): 26874 (WebInspector.ResourceManager.prototype.addConsoleMessage): 26875 (WebInspector.ResourceManager.prototype.clearConsoleMessages): 26876 (WebInspector.ResourceTreeModel): 26877 (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame): 26878 (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame): 26879 (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent): 26880 (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources): 26881 (WebInspector.ResourceTreeModel.prototype.addResourceToFrame): 26882 (WebInspector.ResourceTreeModel.prototype._clearResources): 26883 (WebInspector.ResourceTreeModel.prototype._bindResourceURL): 26884 (WebInspector.ResourceTreeModel.prototype._unbindResourceURL): 26885 (WebInspector.ResourceTreeModel.prototype.resourceForURL): 26886 (WebInspector.ResourceTreeModel.prototype.forAllResources): 26887 (WebInspector.ResourceTreeModel.prototype._callForFrameResources): 26888 * inspector/front-end/StoragePanel.js: 26889 (WebInspector.StoragePanel): 26890 (WebInspector.StoragePanel.prototype.get toolbarItemLabel): 26891 (WebInspector.StoragePanel.prototype.reset): 26892 (WebInspector.StoragePanel.prototype.removeFrame): 26893 (WebInspector.StoragePanel.prototype.canShowSourceLine): 26894 (WebInspector.StoragePanel.prototype.showSourceLine): 26895 (WebInspector.StoragePanel.prototype.showResource): 26896 (WebInspector.StoragePanel.prototype._showResourceView): 26897 (WebInspector.StoragePanel.prototype.updateMainViewWidth): 26898 (WebInspector.StoragePanel.prototype.get searchableViews.callback): 26899 (WebInspector.StoragePanel.prototype.get searchableViews): 26900 (WebInspector.StoragePanel.prototype._forAllResourceTreeElements): 26901 (WebInspector.StoragePanel.prototype.searchMatchFound): 26902 (WebInspector.StoragePanel.prototype.searchCanceled.callback): 26903 (WebInspector.StoragePanel.prototype.searchCanceled): 26904 (WebInspector.StoragePanel.prototype.performSearch): 26905 (WebInspector.StoragePanel.prototype.showView): 26906 (WebInspector.BaseStorageTreeElement.prototype.onattach): 26907 (WebInspector.BaseStorageTreeElement.prototype.set titleText): 26908 (WebInspector.BaseStorageTreeElement.prototype.isEventWithinDisclosureTriangle): 26909 (WebInspector.FrameResourceTreeElement): 26910 (WebInspector.FrameResourceTreeElement.prototype.onselect): 26911 (WebInspector.FrameResourceTreeElement.prototype.ondblclick): 26912 (WebInspector.FrameResourceTreeElement.prototype.onattach): 26913 (WebInspector.FrameResourceTreeElement.prototype._ondragstart): 26914 (WebInspector.FrameResourceTreeElement.prototype._setBubbleText): 26915 (WebInspector.FrameResourceTreeElement.prototype._resetBubble): 26916 (WebInspector.FrameResourceTreeElement.prototype._searchMatchesUpdated): 26917 (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated): 26918 * inspector/front-end/inspector.css: 26919 (.storage.panel .sidebar): 26920 (.storage.panel .outline-disclosure li): 26921 (.storage.panel .outline-disclosure li.parent): 26922 (.storage.panel .outline-disclosure li .selection): 26923 (.storage.panel .outline-disclosure .icon): 26924 (.storage.panel .base-storage-tree-element-title): 26925 (.storage.panel .status): 26926 (.storage.panel li .status .bubble): 26927 (li .status): 26928 (li .status:empty): 26929 (li .status .bubble): 26930 (li .status .bubble:empty): 26931 (li.selected .status .bubble): 26932 (:focus li.selected .status .bubble): 26933 (body.inactive li.selected .status .bubble): 26934 (li.selected .bubble.search-matches): 26935 (:focus li.selected .bubble.search-matches): 26936 (body.inactive li.selected .bubble.search-matches): 26937 26938 2010-10-24 Csaba Osztrogonc <ossy (a] webkit.org> 26939 26940 Reviewed by David Kilzer. 26941 26942 Fix Qt minimal build break revealed by r70413. 26943 https://bugs.webkit.org/show_bug.cgi?id=48185 26944 26945 * rendering/RenderMeter.h: Missing include added, needless include removed. 26946 26947 2010-10-20 Kinuko Yasuda <kinuko (a] chromium.org> 26948 26949 Reviewed by Jian Li. 26950 26951 Renumber FileError/FileException error codes per latest File API spec changes 26952 https://bugs.webkit.org/show_bug.cgi?id=47936 26953 26954 * bindings/js/JSDOMBinding.cpp: 26955 (WebCore::setDOMException): Added FileExceptionType case. 26956 * bindings/v8/V8Proxy.cpp: 26957 (WebCore::V8Proxy::setDOMException): Added FileExceptionType case. 26958 * dom/ExceptionCode.cpp: 26959 (WebCore::getExceptionCodeDescription): Added code for FileException. 26960 * dom/ExceptionCode.h: 26961 * fileapi/AsyncFileWriterClient.h: 26962 * fileapi/DirectoryEntry.cpp: 26963 (WebCore::DirectoryEntry::getFile): 26964 (WebCore::DirectoryEntry::getDirectory): 26965 (WebCore::DirectoryEntry::removeRecursively): 26966 * fileapi/DirectoryEntrySync.cpp: 26967 (WebCore::DirectoryEntrySync::getFile): 26968 (WebCore::DirectoryEntrySync::getDirectory): 26969 (WebCore::DirectoryEntrySync::removeRecursively): 26970 * fileapi/DirectoryReaderSync.cpp: 26971 (WebCore::DirectoryReaderSync::readEntries): 26972 * fileapi/Entry.cpp: 26973 (WebCore::Entry::getMetadata): 26974 (WebCore::Entry::moveTo): 26975 (WebCore::Entry::copyTo): 26976 (WebCore::Entry::remove): 26977 (WebCore::Entry::getParent): 26978 * fileapi/EntrySync.cpp: 26979 (WebCore::EntrySync::getMetadata): 26980 (WebCore::EntrySync::moveTo): 26981 (WebCore::EntrySync::copyTo): 26982 (WebCore::EntrySync::remove): 26983 * fileapi/FileError.h: Added error code enum. 26984 (WebCore::FileError::create): 26985 (WebCore::FileError::code): 26986 (WebCore::FileError::FileError): 26987 * fileapi/FileError.idl: Rebased error code numbers. 26988 * fileapi/FileException.h: Added exception code enum. 26989 (WebCore::FileException::ErrorCodeToExceptionCode): Added. 26990 * fileapi/FileException.idl: Rebased exception code numbers. 26991 * fileapi/FileReader.cpp: 26992 (WebCore::FileReader::abort): 26993 (WebCore::FileReader::failed): 26994 (WebCore::FileReader::httpStatusCodeToErrorCode): Changed from 26995 httpStatuCodeToExceptionCode. 26996 * fileapi/FileReader.h: 26997 * fileapi/FileReaderSync.cpp: 26998 (WebCore::FileReaderSyncLoader::start): 26999 * fileapi/FileSystemCallbacks.cpp: 27000 (WebCore::FileSystemCallbacksBase::didFail): 27001 * fileapi/FileWriter.cpp: 27002 (WebCore::FileWriter::write): 27003 (WebCore::FileWriter::seek): 27004 (WebCore::FileWriter::truncate): 27005 (WebCore::FileWriter::abort): 27006 (WebCore::FileWriter::didFail): 27007 (WebCore::FileWriter::setError): 27008 * fileapi/FileWriter.h: 27009 * fileapi/SyncCallbackHelper.h: 27010 (WebCore::SyncCallbackHelper::SyncCallbackHelper): 27011 (WebCore::SyncCallbackHelper::getResult): 27012 (WebCore::SyncCallbackHelper::setError): 27013 * page/DOMWindow.cpp: 27014 (WebCore::DOMWindow::requestFileSystem): 27015 * workers/WorkerContext.cpp: 27016 (WebCore::WorkerContext::requestFileSystem): 27017 (WebCore::WorkerContext::requestFileSystemSync): 27018 27019 2010-10-24 Dan Bernstein <mitz (a] apple.com> 27020 27021 Reviewed by Anders Carlsson. 27022 27023 Expose HitTestResult::absoluteMediaURL() via WebKit API 27024 https://bugs.webkit.org/show_bug.cgi?id=48219 27025 27026 * WebCore.exp.in: Export HitTestResult::absoluteMediaURL(). 27027 27028 2010-10-24 Sam Weinig <sam (a] webkit.org> 27029 27030 Reviewed by Dan Bernstein. 27031 27032 Need a way to determine the screen rect for a form control in WebKit2 27033 <rdar://problem/8530670> 27034 https://bugs.webkit.org/show_bug.cgi?id=48216 27035 27036 * WebCore.exp.in: Add export. 27037 * dom/Element.cpp: 27038 (WebCore::Element::boundsInWindowSpace): 27039 * dom/Element.h: 27040 Add function to return the bounding box in window (in ScrollView terminology) space, 27041 this is the same space as the root viewport. 27042 27043 2010-10-24 Andreas Kling <kling (a] webkit.org> 27044 27045 Reviewed by Kenneth Rohde Christiansen. 27046 27047 [Qt] ImageBuffer::platformTransformColorSpace is unnecessarily slow 27048 https://bugs.webkit.org/show_bug.cgi?id=48211 27049 27050 Grab the QImage::bits() and do direct access instead of going through 27051 QImage::pixel() and QImage::setPixel(). 27052 27053 This is a performance optimization, so no new tests. 27054 27055 * platform/graphics/qt/ImageBufferQt.cpp: 27056 (WebCore::ImageBuffer::platformTransformColorSpace): 27057 27058 2010-10-24 Dirk Schulze <krit (a] webkit.org> 27059 27060 Reviewed by Nikolas Zimmermann. 27061 27062 Filter example Chiseled from SVG Wow! is slow 27063 https://bugs.webkit.org/show_bug.cgi?id=48174 27064 27065 Use a pointer to the ByteArray instead of the ref counted CanvasPixelArray or ImageData directly 27066 to access the data for pixel manipulation on SVG Filters or SVG Masker. This is a 27067 performance increase since the recurring use of the -> operator can be avoided. 27068 FEConvolveMatrix and FELighting still need to change in a followup patch. 27069 27070 No functionality was changed. So, no new tests. 27071 27072 * platform/graphics/filters/FEBlend.cpp: 27073 (WebCore::FEBlend::apply): 27074 * platform/graphics/filters/FEColorMatrix.cpp: 27075 (WebCore::luminance): 27076 (WebCore::effectType): 27077 (WebCore::FEColorMatrix::apply): 27078 * platform/graphics/filters/FEComponentTransfer.cpp: 27079 (WebCore::FEComponentTransfer::apply): 27080 * platform/graphics/filters/FEComposite.cpp: 27081 (WebCore::arithmetic): 27082 (WebCore::FEComposite::apply): 27083 * platform/graphics/filters/FEDisplacementMap.cpp: 27084 (WebCore::FEDisplacementMap::apply): 27085 * platform/graphics/filters/FEGaussianBlur.cpp: 27086 (WebCore::boxBlur): 27087 (WebCore::FEGaussianBlur::apply): 27088 * platform/graphics/filters/FEMorphology.cpp: 27089 (WebCore::FEMorphology::apply): 27090 * platform/graphics/filters/FETurbulence.cpp: 27091 (WebCore::FETurbulence::apply): 27092 * rendering/RenderSVGResourceMasker.cpp: 27093 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): 27094 27095 2010-10-24 Pavel Feldman <pfeldman (a] chromium.org> 27096 27097 Reviewed by Timothy Hatcher. 27098 27099 Web Inspector: polish network panel UI. 27100 https://bugs.webkit.org/show_bug.cgi?id=48205 27101 27102 * inspector/front-end/Images/frame.png: 27103 * inspector/front-end/Images/networkIcon.png: 27104 * inspector/front-end/NetworkPanel.js: 27105 (WebInspector.NetworkPanel.prototype._createTable): 27106 (WebInspector.NetworkPanel.prototype._setLargerResources): 27107 (WebInspector.NetworkPanel.prototype._toggleGridMode): 27108 * inspector/front-end/networkPanel.css: 27109 (.network.panel .data-grid td): 27110 (.network.panel .data-grid.small td): 27111 (#network-views .resource-view.headers-visible .resource-view-content): 27112 (#network-views.small .resource-view.headers-visible .resource-view-content): 27113 (#network-views .resource-view-headers): 27114 (#network-views.small .resource-view-headers): 27115 (#network-views .resource-view .tabbed-pane-header): 27116 (#network-views.small .resource-view .tabbed-pane-header): 27117 27118 2010-10-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 27119 27120 Reviewed by Dimitri Glazkov. 27121 27122 Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly 27123 https://bugs.webkit.org/show_bug.cgi?id=48179 27124 27125 Fix WebGL tests. Accept 'boolean' as valid numeric type in StrictTypeChecking mode. 27126 27127 * bindings/scripts/CodeGeneratorJS.pm: 27128 * bindings/scripts/CodeGeneratorV8.pm: 27129 27130 2010-10-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 27131 27132 Reviewed by Dirk Schulze. 27133 27134 Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly 27135 https://bugs.webkit.org/show_bug.cgi?id=48179 27136 27137 Speculative fix for the WebGL tests, I was not aware they're not run on Leopard, so I missed the breakage. 27138 27139 * bindings/scripts/CodeGeneratorJS.pm: Restore the order of type checking in the 'StrictTypeChecking' code. 27140 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 27141 27142 2010-10-23 Nikolas Zimmermann <nzimmermann (a] rim.com> 27143 27144 Reviewed by Dirk Schulze. 27145 27146 Convert SVGAngle to the new SVGPropertyTearOff concept, reimplement it properly 27147 https://bugs.webkit.org/show_bug.cgi?id=48179 27148 27149 Rewrite SVGAngle to use the new SVGPropertyTearOff concept, and consume much less memory. 27150 Down from two floats, one string and an ushort to one float and one ushort. Synchronize value/valueInSpecifiedUnits/valueAsString on demand. 27151 27152 Adding an extensive SVGAngle test, that required to implement 'StrictTypeChecking' for attribute setters (was only implemented in V8/JSC for function cals so far). 27153 27154 Test: svg/dom/SVGAngle.html 27155 27156 * GNUmakefile.am: Add SVGAnimatedAngle.h to build. 27157 * WebCore.gypi: Ditto. 27158 * WebCore.pro: Ditto. 27159 * WebCore.vcproj/WebCore.vcproj: Ditto. 27160 * WebCore.xcodeproj/project.pbxproj: Ditto. 27161 * bindings/scripts/CodeGenerator.pm: Split IsPrimitiveType in IsPrimitiveType and IsNumericType. 27162 * bindings/scripts/CodeGeneratorJS.pm: Implement 'StrictTypeChecking' for setters and recognize SVGAngle as new SVGPropertyTearOff type. 27163 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. 27164 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 27165 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAngle handling. 27166 * svg/DeprecatedSVGAnimatedTemplate.h: Remove SVGAnimatedAngle handling. 27167 * svg/SVGAngle.cpp: Rewrite, to consume less memory and to operate more efficient. 27168 * svg/SVGAngle.h: Ditto. 27169 * svg/SVGAngle.idl: Add 'StrictTypeChecking' to the value/valueInSpecifiedUnits methods. 27170 * svg/SVGAnimatedAngle.h: Added. 27171 * svg/SVGAnimatedAngle.idl: Mark as [SVGAnimatedProperty]. 27172 * svg/SVGMarkerElement.cpp: 27173 (WebCore::SVGMarkerElement::parseMappedAttribute): SVGAngle::setValueAsString() now takes an ExceptionCode parameter. 27174 * svg/SVGMarkerElement.h: s/ANIMATED_PROPERTY/ANIMATED_PROPERTY_NEW/ for the SVGAngle type. 27175 * svg/SVGNumber.idl: Remove exception setter exceptions, which aren't needed. As we're now generating exception handlers in the bindings, it would lead to compile errors. 27176 * svg/SVGPoint.idl: Ditto. 27177 * svg/SVGRect.idl: Ditto. 27178 * svg/SVGSVGElement.idl: Remove obsolete [SVGLiveProperty] flag. 27179 27180 2010-10-23 Daniel Bates <dbates (a] rim.com> 27181 27182 Reviewed by Adam Barth. 27183 27184 Remove unused method HTMLFrameElementBase::setNameAndOpenURLCallback() 27185 https://bugs.webkit.org/show_bug.cgi?id=48197 27186 27187 With the landing of the patch for bug #45365 in 27188 changeset 67182 <http://trac.webkit.org/changeset/67182>, 27189 HTMLFrameElementBase::setNameAndOpenURLCallback() is not needed. 27190 Therefore, we remove it. 27191 27192 Before changeset 67182, HTMLFrameElementBase::attach() set up a post-attach 27193 callback to HTMLFrameElementBase::setNameAndOpenURLCallback(). Changeset 67182 27194 removed this callback. 27195 27196 No functionality was changed. So, no new tests. 27197 27198 * html/HTMLFrameElementBase.cpp: Remove HTMLFrameElementBase::setNameAndOpenURLCallback(). 27199 * html/HTMLFrameElementBase.h: Ditto. 27200 27201 2010-10-23 Xan Lopez <xlopez (a] igalia.com> 27202 27203 Reviewed by Sam Weinig. 27204 27205 Unify globalData APIs 27206 https://bugs.webkit.org/show_bug.cgi?id=47969 27207 27208 Adapt code to JSGlobalObject::globalData returning a reference 27209 instead of a pointer. 27210 27211 * bindings/js/JSCallbackData.cpp: 27212 (WebCore::JSCallbackData::invokeCallback): 27213 * bindings/js/JSCustomXPathNSResolver.cpp: 27214 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): 27215 * bindings/js/JSEventListener.cpp: 27216 (WebCore::JSEventListener::handleEvent): 27217 * bindings/js/JSWorkerContextCustom.cpp: 27218 (WebCore::JSWorkerContext::markChildren): 27219 * bindings/js/JSWorkerContextErrorHandler.cpp: 27220 (WebCore::JSWorkerContextErrorHandler::handleEvent): 27221 * bindings/js/ScheduledAction.cpp: 27222 (WebCore::ScheduledAction::executeFunctionInContext): 27223 * bindings/js/WorkerScriptController.cpp: 27224 (WebCore::WorkerScriptController::evaluate): 27225 * bridge/NP_jsobject.cpp: 27226 (_NPN_InvokeDefault): 27227 (_NPN_Invoke): 27228 (_NPN_Evaluate): 27229 (_NPN_Construct): 27230 27231 2010-10-23 Alexey Proskuryakov <ap (a] apple.com> 27232 27233 Windows debug build fix. 27234 27235 * platform/network/cf/CookieStorageCFNet.cpp: Include MainThread.h for isMainThread(). 27236 27237 2010-10-23 Alexey Proskuryakov <ap (a] apple.com> 27238 27239 Windows build fix. 27240 27241 * platform/network/cf/CookieStorageCFNet.cpp: 27242 (WebCore::setCookieStoragePrivateBrowsingEnabled): It's adoptCF, not adoptPtr. 27243 27244 2010-10-23 Alexey Proskuryakov <ap (a] apple.com> 27245 27246 Reviewed by Anders Carlsson. 27247 27248 https://bugs.webkit.org/show_bug.cgi?id=48083 27249 <rdar://problem/8489082> Need WebKit2 API for private browsing (48083) 27250 27251 * GNUmakefile.am: 27252 * WebCore.gypi: 27253 * WebCore.pro: 27254 * WebCore.vcproj/WebCore.vcproj: 27255 Added CookieStorage.h to build files that contain headers. 27256 27257 * WebCore.xcodeproj/project.pbxproj: Added CookieStorage.h and CookieStorageMac.mm. 27258 27259 * WebCore.exp.in: Export _wkSetCookieStoragePrivateBrowsingEnabled (WebKit initializes WKSI 27260 on WebCore's behalf). 27261 27262 * platform/mac/WebCoreSystemInterface.h: 27263 * platform/mac/WebCoreSystemInterface.mm: 27264 More work for passing the function pointer down to WebCore. 27265 27266 * page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled): Tell cookie manager to 27267 when to use private browsing mode. Note that although this is a per-page setting, it 27268 actually has global effect. 27269 27270 * page/Settings.h: Extended a comment about what private browsing does. 27271 27272 * platform/android/TemporaryLinkStubs.cpp: (setCookieStoragePrivateBrowsingEnabled): 27273 * platform/chromium/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled): 27274 * platform/efl/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled): 27275 * platform/gtk/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled): 27276 * platform/haiku/TemporaryLinkStubs.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled): 27277 * platform/qt/TemporaryLinkStubsQt.cpp: (WebCore::setCookieStoragePrivateBrowsingEnabled): 27278 Added an empty implementation for ports that don't implement private browsing, or implement 27279 it in ways I cannot discover. 27280 27281 * platform/network/CookieStorage.h: Added. I'm not entirely sure how this is different from 27282 CookieJar.h, just following a precedent already set by Windows port with CookieStorageWin.h. 27283 27284 * platform/network/mac/CookieStorageMac.mm: Added. 27285 (WebCore::setCookieStoragePrivateBrowsingEnabled): Call a WKSI function to enable private 27286 browsing mode for cookies. 27287 27288 * platform/network/cf/CookieStorageCFNet.cpp: 27289 (WebCore::currentCookieStorage): Added ASSERT(isMainThread()). 27290 (WebCore::setCurrentCookieStorage): Ditto. 27291 (WebCore::setCookieStoragePrivateBrowsingEnabled): Set cookie storage to a private one 27292 when in private browsing mode. ResourceHandle applies the storage to each individual request. 27293 27294 * platform/network/cf/CookieStorageCFNet.h: Added a comment explaining that these functions 27295 are only for WebKit1. 27296 27297 2010-10-23 David Kilzer <ddkilzer (a] apple.com> 27298 27299 <http://webkit.org/b/48181> Add missing include of MacErrors.h 27300 27301 Reviewed by Alexey Proskuryakov. 27302 27303 * platform/network/mac/FormDataStreamMac.mm: Added #import of 27304 <MacErrors.h> for iOS since the formOpen() method uses "fnfErr", 27305 which was added in r55670. The same header is included through 27306 <CoreServices/CoreServices.h> on Mac OS X. 27307 27308 2010-10-23 Patrick Gansterer <paroga (a] webkit.org> 27309 27310 Reviewed by David Kilzer. 27311 27312 [WINCE] Port COMPtr.h to WinCE 27313 https://bugs.webkit.org/show_bug.cgi?id=48190 27314 27315 Don't include guiddef.h on WinCE. It's not required and only creates build problems. 27316 27317 * platform/win/COMPtr.h: 27318 27319 2010-10-23 Patrick Gansterer <paroga (a] webkit.org> 27320 27321 Reviewed by David Kilzer. 27322 27323 [WINCE] Rename SharedBitmap::createInstance to SharedBitmap::create 27324 https://bugs.webkit.org/show_bug.cgi?id=48180 27325 27326 Also use better arguments for the create function. 27327 27328 * platform/graphics/wince/GraphicsContextWinCE.cpp: 27329 (WebCore::GraphicsContextPlatformPrivate::getTransparentLayerBitmap): 27330 (WebCore::TransparentLayerDC::TransparentLayerDC): 27331 (WebCore::GraphicsContext::drawFrameControl): 27332 * platform/graphics/wince/ImageBufferWinCE.cpp: 27333 (WebCore::ImageBufferData::ImageBufferData): 27334 * platform/graphics/wince/ImageWinCE.cpp: 27335 (WebCore::RGBA32Buffer::asNewNativeImage): 27336 27337 2010-10-23 Dimitri Glazkov <dglazkov (a] chromium.org> 27338 27339 Unreviewed, rolling out r70369. 27340 http://trac.webkit.org/changeset/70369 27341 https://bugs.webkit.org/show_bug.cgi?id=47974 27342 27343 Caused weird artifacts in expected results. 27344 27345 * WebCore.gyp/WebCore.gyp: 27346 * WebCore.gypi: 27347 * loader/CachedImage.cpp: 27348 (WebCore::CachedImage::createImage): 27349 * platform/graphics/ImageSource.h: 27350 * platform/image-decoders/ImageDecoder.cpp: 27351 (WebCore::RGBA32Buffer::operator=): 27352 (WebCore::RGBA32Buffer::clear): 27353 (WebCore::RGBA32Buffer::zeroFill): 27354 (WebCore::RGBA32Buffer::copyBitmapData): 27355 (WebCore::RGBA32Buffer::setSize): 27356 * platform/image-decoders/ImageDecoder.h: 27357 (WebCore::RGBA32Buffer::getAddr): 27358 * platform/image-decoders/cairo/ImageDecoderCairo.cpp: 27359 (WebCore::RGBA32Buffer::asNewNativeImage): 27360 * platform/image-decoders/cg/ImageDecoderCG.cpp: Removed. 27361 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: 27362 (WebCore::RGBA32Buffer::asNewNativeImage): 27363 * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: 27364 (WebCore::RGBA32Buffer::asNewNativeImage): 27365 * platform/image-decoders/wx/ImageDecoderWx.cpp: 27366 (WebCore::RGBA32Buffer::asNewNativeImage): 27367 27368 2010-10-23 Adam Barth <abarth (a] webkit.org> 27369 27370 Reviewed by Andreas Kling. 27371 27372 WebP decoding hits ASSERT 27373 https://bugs.webkit.org/show_bug.cgi?id=48168 27374 27375 Calling reserveCapacity only allocates the memory. It doesn't actually 27376 set the length. When you try to access the zeroth element, you hit an 27377 ASSERT. 27378 27379 Covered by fast/images/webp-image-decoding.html in debug. 27380 27381 * platform/image-decoders/webp/WEBPImageDecoder.cpp: 27382 (WebCore::WEBPImageDecoder::decode): 27383 27384 2010-10-23 Martin Robinson <mrobinson (a] igalia.com> 27385 27386 Reviewed by Xan Lopez. 27387 27388 [GTK] Menu list buttons do react properly to CSS styling 27389 https://bugs.webkit.org/show_bug.cgi?id=48099 27390 27391 Correct the way that menu list buttons get their necessary padding from 27392 GTK+. Instead of resetting the padding to these values, return them via 27393 the popupInternalPadding* methods. Add implementations for *MenuListButton* 27394 methods. 27395 27396 * platform/gtk/RenderThemeGtk.cpp: 27397 (WebCore::getComboBoxPadding): Added. 27398 (WebCore::RenderThemeGtk::popupInternalPaddingLeft): Added. 27399 (WebCore::RenderThemeGtk::popupInternalPaddingRight): Added. 27400 (WebCore::RenderThemeGtk::popupInternalPaddingTop): Added. 27401 (WebCore::RenderThemeGtk::popupInternalPaddingBottom): Added. 27402 (WebCore::RenderThemeGtk::adjustMenuListStyle): Do not reset CSS 27403 properties, instead rely on the poupInternalPadding* methods. 27404 (WebCore::RenderThemeGtk::adjustMenuListButtonStyle): Added. 27405 (WebCore::RenderThemeGtk::paintMenuListButton): Added. 27406 * platform/gtk/RenderThemeGtk.h: Added new method declarations. 27407 27408 2010-10-23 Patrick Gansterer <paroga (a] webkit.org> 27409 27410 Reviewed by David Kilzer. 27411 27412 Add Gradient::hasAlpha 27413 https://bugs.webkit.org/show_bug.cgi?id=48183 27414 27415 WinCE can do some performance improvements if the gradient is opaque. 27416 27417 * platform/graphics/Gradient.cpp: 27418 (WebCore::Gradient::hasAlpha): 27419 * platform/graphics/Gradient.h: 27420 27421 2010-10-23 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 27422 27423 Reviewed by David Kilzer. 27424 27425 [EFL] Implement platformDefaultLanguage() 27426 https://bugs.webkit.org/show_bug.cgi?id=48113 27427 27428 Implement the platformDefaultLanguage() function for EFL port. 27429 27430 * platform/efl/LanguageEfl.cpp: 27431 (WebCore::platformDefaultLanguage): 27432 27433 2010-10-23 Sheriff Bot <webkit.review.bot (a] gmail.com> 27434 27435 Unreviewed, rolling out r70367. 27436 http://trac.webkit.org/changeset/70367 27437 https://bugs.webkit.org/show_bug.cgi?id=48176 27438 27439 It made 8-10 tests crash on Qt bot (Requested by Ossy on 27440 #webkit). 27441 27442 * loader/MainResourceLoader.cpp: 27443 (WebCore::MainResourceLoader::MainResourceLoader): 27444 (WebCore::MainResourceLoader::continueAfterContentPolicy): 27445 (WebCore::MainResourceLoader::didReceiveResponse): 27446 (WebCore::MainResourceLoader::setDefersLoading): 27447 * loader/MainResourceLoader.h: 27448 27449 2010-10-22 Andy Estes <aestes (a] apple.com> 27450 27451 Reviewed by Adam Roben and Sam Weinig. 27452 27453 WebKit shouldn't load a plug-in based on file extension if a MIME type 27454 is specified. 27455 https://bugs.webkit.org/show_bug.cgi?id=48046 27456 27457 The fix landed in r70332 only covered the Mac port. Implement this fix 27458 for other ports as well. 27459 27460 * plugins/PluginDatabase.cpp: 27461 (WebCore::PluginDatabase::findPlugin): 27462 27463 2010-10-21 Adam Barth <abarth (a] webkit.org> 27464 27465 Reviewed by Eric Seidel, Peter Kasting, and Darin Fisher. 27466 (Eric reviewed the CoreGraphics interactions, Peter reviewed the image 27467 decoder interaction, and Darin Fisher SGTMed the policy decision.) 27468 27469 [chromium] Chromium Mac should use WebKit's image decoders 27470 https://bugs.webkit.org/show_bug.cgi?id=47974 27471 27472 This patch teaches WebKit's image decoders how to talk to CoreGraphics. 27473 This patch doesn't handle color profiles, but that will come in a 27474 subsequent patch. 27475 27476 * WebCore.gyp/WebCore.gyp: 27477 * WebCore.gypi: 27478 * loader/CachedImage.cpp: 27479 (WebCore::CachedImage::createImage): 27480 * platform/graphics/ImageSource.h: 27481 * platform/image-decoders/ImageDecoder.cpp: 27482 (WebCore::RGBA32Buffer::clear): 27483 (WebCore::RGBA32Buffer::zeroFill): 27484 (WebCore::RGBA32Buffer::copyBitmapData): 27485 (WebCore::RGBA32Buffer::setSize): 27486 * platform/image-decoders/ImageDecoder.h: 27487 (WebCore::RGBA32Buffer::getAddr): 27488 * platform/image-decoders/cg: Added. 27489 * platform/image-decoders/cg/ImageDecoderCG.cpp: Added. 27490 (WebCore::RGBA32Buffer::copyBitmapData): 27491 (WebCore::RGBA32Buffer::setSize): 27492 (WebCore::RGBA32Buffer::asNewNativeImage): 27493 27494 2010-10-20 Anders Carlsson <andersca (a] apple.com> 27495 27496 Reviewed by Adam Barth and Darin Adler. 27497 27498 Using the decidePolicyForMIMEType delegate message in an asynchronous manner does not work 27499 https://bugs.webkit.org/show_bug.cgi?id=48014 27500 <rdar://problem/8202716> 27501 27502 * loader/MainResourceLoader.cpp: 27503 (WebCore::MainResourceLoader::continueAfterContentPolicy): 27504 Resume loading. 27505 27506 (WebCore::MainResourceLoader::didReceiveResponse): 27507 Defer loading until we hear back from the policy client. 27508 27509 2010-10-22 James Robinson <jamesr (a] chromium.org> 27510 27511 Reviewed by Dimitri Glazkov. 27512 27513 REGRESSION(66391): http://ligth-arts.all-up.com/ crashes in EventHandler::selectCursor 27514 https://bugs.webkit.org/show_bug.cgi?id=47942 27515 27516 Add checks for a NULL StyleImage in a CursorList. 27517 27518 * css/CSSComputedStyleDeclaration.cpp: 27519 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 27520 * css/CSSStyleSelector.cpp: 27521 (WebCore::CSSStyleSelector::loadPendingImages): 27522 * page/EventHandler.cpp: 27523 (WebCore::EventHandler::selectCursor): 27524 * rendering/style/CursorList.h: 27525 (WebCore::CursorList::at): 27526 * manual-tests/cursor-empty-url.html: Added. 27527 * manual-tests/resources/cursor-empty-url.css: Added. 27528 27529 2010-10-22 David Hyatt <hyatt (a] apple.com> 27530 27531 Reviewed by Adele Peterson. 27532 27533 https://bugs.webkit.org/show_bug.cgi?id=48156 27534 27535 Make vertical lines hit test properly and show a vertical i-beam cursor. Numerous bugs with overflow were discovered while getting this to work, 27536 so these are in the patch as well. The broken layout tests are fixed by the overflow bug fixes as well (which just restore the old behavior). 27537 27538 * page/EventHandler.cpp: 27539 (WebCore::EventHandler::selectCursor): 27540 * rendering/InlineBox.h: 27541 (WebCore::InlineBox::width): 27542 (WebCore::InlineBox::height): 27543 * rendering/InlineFlowBox.cpp: 27544 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 27545 (WebCore::InlineFlowBox::computeBlockDirectionOverflow): 27546 (WebCore::InlineFlowBox::nodeAtPoint): 27547 * rendering/InlineFlowBox.h: 27548 (WebCore::InlineFlowBox::logicalTopVisibleOverflow): 27549 (WebCore::InlineFlowBox::logicalBottomVisibleOverflow): 27550 (WebCore::InlineFlowBox::visibleOverflowRect): 27551 (WebCore::InlineFlowBox::layoutOverflowRect): 27552 (WebCore::InlineFlowBox::logicalTopLayoutOverflow): 27553 (WebCore::InlineFlowBox::logicalBottomLayoutOverflow): 27554 (WebCore::InlineFlowBox::visualOverflowRect): 27555 (WebCore::InlineFlowBox::logicalTopVisualOverflow): 27556 (WebCore::InlineFlowBox::logicalBottomVisualOverflow): 27557 (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions): 27558 * rendering/InlineTextBox.cpp: 27559 (WebCore::InlineTextBox::nodeAtPoint): 27560 * rendering/RenderBox.cpp: 27561 (WebCore::RenderBox::blockDirectionOverflow): 27562 * rendering/RenderBox.h: 27563 * rendering/RenderLineBoxList.cpp: 27564 (WebCore::RenderLineBoxList::hitTest): 27565 27566 2010-10-22 Dan Bernstein <mitz (a] apple.com> 27567 27568 Reviewed by Anders Carlsson. 27569 27570 <rdar://problem/8251616> Layout not updating in a subtree when a scrollbar is hidden in a flexbox descendant 27571 https://bugs.webkit.org/show_bug.cgi?id=48154 27572 27573 Test: scrollbars/hidden-scrollbar-prevents-layout.html 27574 27575 updateScrollInfoAfterLayout() calling setHasHorizontalScrollbar() caused updateScrollbarParts() 27576 to call setChildNeedsLayout() on the overflow, because the RenderScrollbar was created with 27577 the default thickness instead of the thickness specified in style. This led to the the overflows 27578 parent to be re-marked for layout during its own parents finishDelayUpdateScrollInfo(), and 27579 the result was that at the end of RenderView::layout(), there was a dirty renderer. 27580 27581 * rendering/RenderScrollbar.cpp: 27582 (WebCore::RenderScrollbar::RenderScrollbar): Set the frame size in the 'display: none' and 27583 'visibility: hidden' cases as well. 27584 27585 2010-10-22 Patrick Gansterer <paroga (a] webkit.org> 27586 27587 Unreviewed. 27588 27589 [WINCE] Build fix after r70143. 27590 27591 * platform/graphics/wince/ImageBufferWinCE.cpp: 27592 (WebCore::ImageBuffer::ImageBuffer): 27593 27594 2010-10-22 Adam Roben <aroben (a] apple.com> 27595 27596 Windows build fix 27597 27598 r70319 added Windows-native versions of the various platform/network 27599 headers to platform/network/win. WebCoreGenerated was copying these 27600 headers over the CFNetwork-specific versions in $WebKitOutputDir, 27601 leading to the wrong headers being used in WebKit. 27602 27603 This patch changes WebCoreGenerated not to copy any headers from 27604 platform/network/win into $WebKitOutputDir. Instead, only headers from 27605 platform/network/cf or platform/network/curl (as specified) are copied. 27606 There were some CFNetwork-specific files still hanging around in 27607 platform/network/win; these have been moved to platform/network/cf. 27608 27609 * WebCore.vcproj/WebCore.vcproj: Updated for file moves and let VS 27610 * format the file as it saw fit. 27611 27612 * WebCore.vcproj/WebCoreGenerated.vcproj: Added the various scripts 27613 * this project uses to make editing them easier. 27614 27615 * WebCore.vcproj/copyForwardingHeaders.cmd: Changed not to copy any 27616 * headers from platform/network/win. 27617 27618 * platform/network/cf/CookieJarCFNet.cpp: Renamed from WebCore/platform/network/win/CookieJarCFNetWin.cpp. 27619 * platform/network/cf/CookieStorageCFNet.cpp: Renamed from WebCore/platform/network/win/CookieStorageWin.cpp. 27620 * platform/network/cf/CookieStorageCFNet.h: Renamed from WebCore/platform/network/win/CookieStorageWin.h. 27621 27622 * platform/network/cf/ResourceHandleCFNet.cpp: Updated for rename. 27623 27624 * platform/network/cf/AuthenticationChallenge.h: 27625 * platform/network/cf/ResourceError.h: 27626 * platform/network/cf/ResourceRequest.h: 27627 * platform/network/cf/ResourceResponse.h: 27628 * platform/network/cf/SocketStreamError.h: 27629 * platform/network/cf/SocketStreamHandle.h: 27630 Touched to force a re-copy. 27631 27632 2010-10-22 Abhishek Arya <inferno (a] chromium.org> 27633 27634 Reviewed by Dave Hyatt. 27635 27636 Add code in getMatchedCSSRules to block cross origin access to stylesheet data. Prevent access 27637 in Javascript to non author stylesheets. 27638 https://bugs.webkit.org/show_bug.cgi?id=46853 27639 27640 Tests: http/tests/security/cross-origin-getMatchedCSSRules.html 27641 http/tests/security/cross-origin-getMatchedCSSRules2.html 27642 27643 * css/CSSRule.h: 27644 * css/CSSStyleSelector.cpp: 27645 (WebCore::CSSStyleSelector::matchRulesForList): 27646 (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker): 27647 (WebCore::CSSStyleSelector::styleRulesForElement): 27648 (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): 27649 * css/CSSStyleSelector.h: 27650 * page/DOMWindow.cpp: 27651 (WebCore::DOMWindow::getMatchedCSSRules): 27652 * page/DOMWindow.idl: 27653 27654 2010-10-22 Sam Weinig <sam (a] webkit.org> 27655 27656 Reviewed by Anders Carlsson. 27657 27658 WebKit2 needs to pass the current event modifier flags when requesting a new window 27659 https://bugs.webkit.org/show_bug.cgi?id=48140 27660 27661 Store the NavigationAction used for the newWindowPolicyDecision in the PolicyCallback 27662 so that it can be used after the decision has been made in further callbacks. 27663 27664 * WebCore.exp.in: Fix export name for new function signature. 27665 * loader/EmptyClients.h: 27666 (WebCore::EmptyChromeClient::createWindow): 27667 (WebCore::EmptyFrameLoaderClient::dispatchCreatePage): 27668 * loader/FrameLoader.cpp: 27669 (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy): 27670 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): 27671 (WebCore::createWindow): 27672 * loader/FrameLoader.h: 27673 * loader/FrameLoaderClient.h: 27674 * loader/PolicyCallback.cpp: 27675 (WebCore::PolicyCallback::set): 27676 (WebCore::PolicyCallback::call): 27677 (WebCore::PolicyCallback::cancel): 27678 * loader/PolicyCallback.h: 27679 * loader/PolicyChecker.cpp: 27680 (WebCore::PolicyChecker::checkNewWindowPolicy): 27681 * page/Chrome.cpp: 27682 (WebCore::Chrome::createWindow): 27683 * page/Chrome.h: 27684 * page/ChromeClient.h: 27685 * page/ContextMenuController.cpp: 27686 (WebCore::openNewWindow): 27687 27688 2010-10-22 David Hyatt <hyatt (a] apple.com> 27689 27690 Reviewed by Sam Weinig. 27691 27692 https://bugs.webkit.org/show_bug.cgi?id=48149 27693 27694 Update block direction line overflow computation to be writing-mode-aware. 27695 27696 * rendering/InlineBox.h: 27697 (WebCore::InlineBox::logicalBottom): 27698 * rendering/InlineFlowBox.cpp: 27699 (WebCore::InlineFlowBox::computeBlockDirectionOverflow): 27700 * rendering/InlineFlowBox.h: 27701 (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions): 27702 (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions): 27703 * rendering/RenderBlockLineLayout.cpp: 27704 (WebCore::RenderBlock::layoutInlineChildren): 27705 * rendering/RenderBox.cpp: 27706 (WebCore::RenderBox::blockDirectionOverflow): 27707 * rendering/RenderBox.h: 27708 * rendering/RootInlineBox.cpp: 27709 (WebCore::RootInlineBox::addHighlightOverflow): 27710 * rendering/style/RenderStyle.h: 27711 (WebCore::InheritedFlags::getTextShadowBlockDirectionExtent): 27712 (WebCore::InheritedFlags::getBoxShadowBlockDirectionExtent): 27713 (WebCore::InheritedFlags::getShadowBlockDirectionExtent): 27714 27715 2010-10-22 Adam Barth <abarth (a] webkit.org> 27716 27717 Reviewed by Eric Seidel. 27718 27719 ASSERT while viewing Google C++ style guide 27720 https://bugs.webkit.org/show_bug.cgi?id=48148 27721 27722 This code used to stop the parser twice. Instead of reaching in an 27723 trying to stop the parser manually, we now just let close() do the work 27724 for us. 27725 27726 Test: fast/xsl/transform-to-html.xml 27727 27728 * xml/XSLTProcessor.cpp: 27729 (WebCore::XSLTProcessor::createDocumentFromSource): 27730 27731 2010-10-22 Patrick Gansterer <paroga (a] webkit.org> 27732 27733 Reviewed by Adam Roben. 27734 27735 [WINCE] Implement GraphicsContext::(get|release)WindowsContext 27736 https://bugs.webkit.org/show_bug.cgi?id=48136 27737 27738 * platform/graphics/wince/GraphicsContextWinCE.cpp: 27739 (WebCore::GraphicsContext::getWindowsContext): 27740 (WebCore::GraphicsContext::releaseWindowsContext): 27741 27742 2010-10-22 Adam Roben <aroben (a] apple.com> 27743 27744 Attempt to fix the Windows build 27745 27746 * platform/network/win/CookieJarCFNetWin.cpp: Add a missing #include. 27747 27748 2010-10-22 Cosmin Truta <ctruta (a] chromium.org> 27749 27750 Reviewed by Dirk Schulze. 27751 27752 getBoundingClientRect does not work with SVG <text> 27753 https://bugs.webkit.org/show_bug.cgi?id=46775 27754 27755 Added back to SVGStyledTransformableElement overloads of the following 27756 methods: nearestViewportElement, farthestViewportElement, getBBox. 27757 This was necessary to appease the Visual C++ compiler, which warned on 27758 inheritance via dominance. 27759 27760 * svg/SVGStyledTransformableElement.cpp: 27761 * svg/SVGStyledTransformableElement.h: 27762 (SVGStyledTransformableElement::nearestViewportElement): 27763 (SVGStyledTransformableElement::farthestViewportElement): 27764 (SVGStyledTransformableElement::getBBox): 27765 27766 2010-10-21 Chris Marrin <cmarrin (a] apple.com> 27767 27768 Reviewed by Adam Roben. 27769 27770 Content in <iframe> doesn't appear when going back to http://webkit.org/blog/386/3d-transforms/ 27771 https://bugs.webkit.org/show_bug.cgi?id=32447 27772 27773 Added documentDidBecomeActive() when document comes back from cache to cause compositing 27774 layers in iframes to be reattached. 27775 27776 There is no layout test, but I added a manual test. This test is ready to be a layout test 27777 but currently DRT disables the WebCore page cache, so the back/forward essentially do a 27778 page load which does not exhibit the bug. 27779 27780 * history/CachedFrame.cpp: 27781 (WebCore::CachedFrameBase::restore): 27782 * manual-tests/compositing/show-composited-iframe-on-back-button.html: Added. 27783 27784 2010-10-22 Patrick Gansterer <paroga (a] webkit.org> 27785 27786 Reviewed by Adam Roben. 27787 27788 [WIN] Add Windows specific files for platform/network/win 27789 https://bugs.webkit.org/show_bug.cgi?id=27376 27790 27791 * platform/network/win/AuthenticationChallenge.h: Added. 27792 (WebCore::AuthenticationChallenge::AuthenticationChallenge): 27793 * platform/network/win/ResourceError.h: Added. 27794 (WebCore::ResourceError::ResourceError): 27795 * platform/network/win/ResourceRequest.h: Added. 27796 (WebCore::ResourceRequest::ResourceRequest): 27797 (WebCore::ResourceRequest::doUpdatePlatformRequest): 27798 (WebCore::ResourceRequest::doUpdateResourceRequest): 27799 (WebCore::ResourceRequest::doPlatformCopyData): 27800 (WebCore::ResourceRequest::doPlatformAdopt): 27801 * platform/network/win/ResourceResponse.h: Added. 27802 (WebCore::ResourceResponse::ResourceResponse): 27803 (WebCore::ResourceResponse::doPlatformCopyData): 27804 (WebCore::ResourceResponse::doPlatformAdopt): 27805 27806 2010-10-22 Adam Barth <abarth (a] webkit.org> 27807 27808 Unreviewed, rolling out r70290. 27809 http://trac.webkit.org/changeset/70290 27810 https://bugs.webkit.org/show_bug.cgi?id=48111 27811 27812 Undelete Android build files. 27813 27814 * Android.mk: Added. 27815 27816 2010-10-22 Cosmin Truta <ctruta (a] chromium.org> 27817 27818 Reviewed by Nikolas Zimmermann. 27819 27820 getBoundingClientRect does not work with SVG <text> 27821 https://bugs.webkit.org/show_bug.cgi?id=46775 27822 27823 Dispatched the calls from Element::getBoundingClientRect to getBBox 27824 through SVGElement::boundingBox. 27825 Recognized SVGTextElement in addition to SVGStyledLocatableElement 27826 as a class that provides getBBox. 27827 Fixed the result of zooming: adjusted the getBoundingClientRect rectangle 27828 for absolute zoom, even for SVG elements. 27829 27830 Additional cleanup task: 27831 Removed redundant overloads of SVGStyledTransformableElement 27832 methods: nearestViewportElement, farthestViewportElement, getBBox. 27833 These methods are already inherited from SVGStyledLocatableElement. 27834 27835 Test: css3/zoom-coords.xhtml 27836 27837 * WebCore.xcodeproj/project.pbxproj: Set role of SVGLocatable.h to private. 27838 * dom/Element.cpp: 27839 (Element::getBoundingClientRect): Used SVGElement::boundingBox. 27840 Adjusted coordinates for absolute zoom, for all kinds of elements. 27841 * svg/SVGElement.cpp: 27842 * svg/SVGElement.h: 27843 (SVGElement::boundingBox): Added. 27844 * svg/SVGStyledTransformableElement.cpp: 27845 * svg/SVGStyledTransformableElement.h: 27846 (SVGStyledTransformableElement::nearestViewportElement): Removed. 27847 (SVGStyledTransformableElement::farthestViewportElement): Removed. 27848 (SVGStyledTransformableElement::getBBox): Removed. 27849 27850 2010-10-22 Patrick Gansterer <paroga (a] webkit.org> 27851 27852 Reviewed by Adam Roben. 27853 27854 [WIN] Add stubs for SocketStream classes 27855 https://bugs.webkit.org/show_bug.cgi?id=47983 27856 27857 * platform/network/win/SocketStreamError.h: Copied from WebCore/platform/network/curl/SocketStreamError.h. 27858 (WebCore::SocketStreamError::SocketStreamError): 27859 * platform/network/win/SocketStreamHandle.h: Copied from WebCore/platform/network/curl/SocketStreamHandle.h. 27860 (WebCore::SocketStreamHandle::create): 27861 * platform/network/win/SocketStreamHandleWin.cpp: Copied from WebCore/platform/network/curl/SocketStreamHandleCurl.cpp. 27862 27863 2010-10-22 Patrick Gansterer <paroga (a] webkit.org> 27864 27865 Reviewed by Adam Roben. 27866 27867 Disable cache in ResourceHandleWin 27868 https://bugs.webkit.org/show_bug.cgi?id=48128 27869 27870 The caching of windows does not work correctly, so disable it for now. 27871 27872 * platform/network/win/ResourceHandleWin.cpp: 27873 (WebCore::ResourceHandle::start): 27874 27875 2010-10-22 Jia Pu <jpu (a] apple.com> 27876 27877 Reviewed by Dan Bernstein. 27878 27879 Regression (r69548): cancelled autocorrection suggestion is still applied. 27880 https://bugs.webkit.org/show_bug.cgi?id=48081 27881 <rdar://problem/8579765> 27882 27883 The test requires a 0.3 second delay using setTimeout(). So we put it in manual-tests. 27884 27885 * editing/Editor.cpp: 27886 (WebCore::Editor::handleRejectedCorrection): Clear autocorrection info when user dismissed the panel. 27887 * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Added. 27888 27889 2010-10-22 Andreas Kling <kling (a] webkit.org> 27890 27891 Reviewed by Kenneth Rohde Christiansen. 27892 27893 [Gtk] Fix canvas/philip/tests/2d.path.isPointInPath.nonfinite.html 27894 https://bugs.webkit.org/show_bug.cgi?id=48133 27895 27896 * platform/graphics/cairo/PathCairo.cpp: 27897 (WebCore::Path::contains): Return false if any x or y are nonfinite. 27898 27899 2010-10-22 Alexander Pavlov <apavlov (a] chromium.org> 27900 27901 Reviewed by Pavel Feldman. 27902 27903 Web Inspector: Implement property toggling in InspectorCSSAgent 27904 27905 This change implements enablement/disablement and setting of style properties. 27906 Disabled properties are persisted in the (top-level) scope of InspectorStyleSheet. 27907 https://bugs.webkit.org/show_bug.cgi?id=47339 27908 27909 Drive-by: fixes for the Web Inspector Protocol format. 27910 27911 * inspector/InspectorCSSAgent.cpp: 27912 (WebCore::InspectorCSSAgent::getComputedStyleForNode2): 27913 (WebCore::InspectorCSSAgent::getInheritedStylesForNode2): 27914 (WebCore::InspectorCSSAgent::setPropertyText2): 27915 (WebCore::InspectorCSSAgent::toggleProperty2): 27916 (WebCore::InspectorCSSAgent::setRuleSelector2): 27917 (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles): 27918 * inspector/InspectorCSSAgent.h: 27919 * inspector/InspectorStyleSheet.cpp: 27920 (WebCore::InspectorStyle::buildObjectForStyle): 27921 (WebCore::InspectorStyle::setPropertyText): 27922 (WebCore::InspectorStyle::toggleProperty): 27923 (WebCore::InspectorStyle::disabledIndexByOrdinal): 27924 (WebCore::InspectorStyle::styleText): 27925 (WebCore::InspectorStyle::disableProperty): 27926 (WebCore::InspectorStyle::enableProperty): 27927 (WebCore::InspectorStyle::populateAllProperties): 27928 (WebCore::InspectorStyle::populateObjectWithStyleProperties): 27929 (WebCore::InspectorStyle::shiftDisabledProperties): 27930 (WebCore::InspectorStyle::replacePropertyInStyleText): 27931 (WebCore::InspectorStyle::shorthandValue): 27932 (WebCore::InspectorStyle::shorthandPriority): 27933 (WebCore::InspectorStyle::longhandProperties): 27934 (WebCore::InspectorStyleSheet::setText): 27935 (WebCore::InspectorStyleSheet::setRuleSelector): 27936 (WebCore::InspectorStyleSheet::addRule): 27937 (WebCore::InspectorStyleSheet::ruleForId): 27938 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet): 27939 (WebCore::InspectorStyleSheet::buildObjectForRule): 27940 (WebCore::InspectorStyleSheet::buildObjectForStyle): 27941 (WebCore::InspectorStyleSheet::setPropertyText): 27942 (WebCore::InspectorStyleSheet::toggleProperty): 27943 (WebCore::InspectorStyleSheet::styleForId): 27944 (WebCore::InspectorStyleSheet::inspectorStyleForId): 27945 (WebCore::InspectorStyleSheet::rememberInspectorStyle): 27946 (WebCore::InspectorStyleSheet::forgetInspectorStyle): 27947 (WebCore::InspectorStyleSheet::ruleOrStyleId): 27948 (WebCore::InspectorStyleSheet::ensureText): 27949 (WebCore::InspectorStyleSheet::setStyleText): 27950 (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle): 27951 (WebCore::InspectorStyleSheet::ruleId): 27952 (WebCore::InspectorStyleSheet::revalidateStyle): 27953 (WebCore::InspectorStyleSheet::originalStyleSheetText): 27954 (WebCore::InspectorStyleSheet::resourceStyleSheetText): 27955 (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle): 27956 (WebCore::InspectorStyleSheetForInlineStyle::setStyleText): 27957 (WebCore::InspectorStyleSheetForInlineStyle::inspectorStyleForId): 27958 * inspector/InspectorStyleSheet.h: 27959 (WebCore::InspectorCSSId::createFromParts): 27960 (WebCore::InspectorCSSId::InspectorCSSId): 27961 (WebCore::InspectorCSSId::styleSheetId): 27962 (WebCore::InspectorCSSId::ordinal): 27963 (WebCore::InspectorCSSId::isEmpty): 27964 (WebCore::InspectorCSSId::asString): 27965 (WebCore::InspectorStyleProperty::InspectorStyleProperty): 27966 (WebCore::InspectorStyle::create): 27967 (WebCore::InspectorStyle::InspectorStyle): 27968 (WebCore::InspectorStyle::cssStyle): 27969 (WebCore::InspectorStyle::hasDisabledProperties): 27970 (WebCore::InspectorStyleSheet::styleId): 27971 (WebCore::InspectorStyleSheetForInlineStyle::styleForId): 27972 (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor): 27973 (WebCore::InspectorStyleSheetForInlineStyle::rememberInspectorStyle): 27974 (WebCore::InspectorStyleSheetForInlineStyle::forgetInspectorStyle): 27975 27976 2010-10-22 Pavel Feldman <pfeldman (a] chromium.org> 27977 27978 Reviewed by Yury Semikhatsky. 27979 27980 Web Inspector: update resources tree in storage panel upon network events. 27981 https://bugs.webkit.org/show_bug.cgi?id=48121 27982 27983 * inspector/Inspector.idl: 27984 * inspector/InspectorResourceAgent.cpp: 27985 (WebCore::buildObjectForDocumentLoader): 27986 (WebCore::buildObjectForFrameTree): 27987 (WebCore::InspectorResourceAgent::didCommitLoad): 27988 (WebCore::InspectorResourceAgent::frameDetachedFromParent): 27989 * inspector/front-end/ResourceManager.js: 27990 (WebInspector.ResourceManager): 27991 (WebInspector.ResourceManager.prototype._createResource): 27992 (WebInspector.ResourceManager.prototype.didReceiveResponse): 27993 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 27994 (WebInspector.ResourceManager.prototype.didCommitLoadForFrame): 27995 (WebInspector.ResourceManager.prototype._addResourceToStorageFrame): 27996 (WebInspector.ResourceManager.prototype.frameDetachedFromParent): 27997 (WebInspector.ResourceManager.prototype._clearResources): 27998 (WebInspector.ResourceManager.prototype._processCachedResources): 27999 (WebInspector.ResourceManager.prototype._addFramesRecursively): 28000 (WebInspector.ResourceManager.getContents): 28001 * inspector/front-end/StoragePanel.js: 28002 (WebInspector.StoragePanel.prototype.addOrUpdateFrame): 28003 (WebInspector.StoragePanel.prototype.removeFrame): 28004 (WebInspector.StoragePanel.prototype.addResourceToFrame): 28005 (WebInspector.StoragePanel.prototype.removeResourcesFromFrame): 28006 (WebInspector.BaseStorageTreeElement.prototype.onattach): 28007 (WebInspector.BaseStorageTreeElement.prototype.onreveal): 28008 (WebInspector.BaseStorageTreeElement.prototype.set titleText): 28009 (WebInspector.FrameTreeElement): 28010 (WebInspector.FrameTreeElement.prototype.onselect): 28011 (WebInspector.FrameTreeElement.prototype.get displayName): 28012 (WebInspector.FrameTreeElement.prototype.set displayName): 28013 28014 2010-10-22 Franois Sausset <sausset (a] gmail.com> 28015 28016 Reviewed by Kenneth Rohde Christiansen. 28017 28018 Fix wrong xHeight() value for Apple Symbols font. 28019 https://bugs.webkit.org/show_bug.cgi?id=41535 28020 28021 Test: mathml/xHeight.xhtml 28022 28023 * platform/graphics/mac/SimpleFontDataMac.mm: 28024 (WebCore::SimpleFontData::platformInit): 28025 28026 2010-10-22 Nikolas Zimmermann <nzimmermann (a] rim.com> 28027 28028 Reviewed by Dirk Schulze. 28029 28030 Further preparations to deploy the new SVGAnimatedProperty concept for the rest of the SVG datatypes 28031 https://bugs.webkit.org/show_bug.cgi?id=48125 28032 28033 Model SVGListPropertyTearOff similar to SVGPropertyTearOff, allow it to be used for SVGXXXList datatypes, that are not animated. (SVGStringList) 28034 Recognize all SVG primitive datatypes in SVGPropertyTraits. 28035 Add a new - temporary - macro to support multiple animated properties that map to a single DOM attribute (kernelUnitLength attribute vs. kernelUnitLengthX/Y properties). 28036 These macros will all be removed and expanded by their content, as soon as the transition to the new SVGAnimatedProperty concept is done. 28037 28038 Doesn't affect any tests yet, as the code is still unused. 28039 28040 * svg/properties/SVGAnimatedProperty.h: 28041 (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper): 28042 (WebCore::SVGAnimatedProperty::lookupWrapper): 28043 * svg/properties/SVGAnimatedPropertyMacros.h: 28044 * svg/properties/SVGAnimatedPropertySynchronizer.h: 28045 * svg/properties/SVGListPropertyTearOff.h: 28046 (WebCore::SVGListPropertyTearOff::create): 28047 (WebCore::SVGListPropertyTearOff::removeItemFromList): 28048 (WebCore::SVGListPropertyTearOff::detachListWrappers): 28049 (WebCore::SVGListPropertyTearOff::clear): 28050 (WebCore::SVGListPropertyTearOff::numberOfItems): 28051 (WebCore::SVGListPropertyTearOff::initialize): 28052 (WebCore::SVGListPropertyTearOff::getItem): 28053 (WebCore::SVGListPropertyTearOff::insertItemBefore): 28054 (WebCore::SVGListPropertyTearOff::replaceItem): 28055 (WebCore::SVGListPropertyTearOff::removeItem): 28056 (WebCore::SVGListPropertyTearOff::appendItem): 28057 (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff): 28058 (WebCore::SVGListPropertyTearOff::~SVGListPropertyTearOff): 28059 (WebCore::SVGListPropertyTearOff::commitChange): 28060 * svg/properties/SVGPropertyTearOff.h: 28061 * svg/properties/SVGPropertyTraits.h: 28062 28063 2010-10-22 Sheriff Bot <webkit.review.bot (a] gmail.com> 28064 28065 Unreviewed, rolling out r70301. 28066 http://trac.webkit.org/changeset/70301 28067 https://bugs.webkit.org/show_bug.cgi?id=48126 28068 28069 "Lang attribute layout tests failing" (Requested by satish on 28070 #webkit). 28071 28072 * dom/Element.cpp: 28073 (WebCore::Element::computeInheritedLanguage): 28074 * page/SpeechInput.cpp: 28075 (WebCore::SpeechInput::startRecognition): 28076 * page/SpeechInput.h: 28077 * page/SpeechInputClient.h: 28078 * platform/mock/SpeechInputClientMock.cpp: 28079 (WebCore::SpeechInputClientMock::startRecognition): 28080 (WebCore::SpeechInputClientMock::setRecognitionResult): 28081 (WebCore::SpeechInputClientMock::timerFired): 28082 * platform/mock/SpeechInputClientMock.h: 28083 * rendering/TextControlInnerElements.cpp: 28084 (WebCore::TextControlInnerElement::attachInnerElement): 28085 (WebCore::SearchFieldCancelButtonElement::detach): 28086 (WebCore::SpinButtonElement::defaultEventHandler): 28087 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 28088 (WebCore::InputFieldSpeechButtonElement::detach): 28089 28090 2010-10-22 Leandro Gracia Gil <leandrogracia (a] google.com> 28091 28092 Reviewed by Jeremy Orlow. 28093 28094 Patch the current speech input implementation to use and validate the 28095 nearest language tag. The language is now passed to the startRecognition 28096 methods so that language-specific recognition could be used. Also added 28097 a second parameter to setMockSpeechInputResult for the language used in 28098 speech recognition. 28099 https://bugs.webkit.org/show_bug.cgi?id=47089 28100 28101 This is the 2nd of a 4-sided patch in Chromium and WebKit. For more 28102 details see http://codereview.chromium.org/3615005/show and 28103 http://codereview.chromium.org/3595018/show. 28104 28105 Test: fast/speech/input-text-language-tag.html 28106 28107 * dom/Element.cpp: 28108 (WebCore::Element::computeInheritedLanguage): includes a brief character 28109 validation for the BCP 47 language tag. 28110 * page/SpeechInput.cpp: 28111 (WebCore::SpeechInput::startRecognition): 28112 * page/SpeechInput.h: 28113 * page/SpeechInputClient.h: 28114 * platform/mock/SpeechInputClientMock.cpp: 28115 (WebCore::SpeechInputClientMock::startRecognition): 28116 (WebCore::SpeechInputClientMock::setRecognitionResult): results are now 28117 stored by language using a hash map. 28118 (WebCore::SpeechInputClientMock::timerFired): 28119 * platform/mock/SpeechInputClientMock.h: 28120 * rendering/TextControlInnerElements.cpp: 28121 (WebCore::TextControlInnerElement::attachInnerElement): 28122 (WebCore::SearchFieldCancelButtonElement::detach): 28123 (WebCore::SpinButtonElement::defaultEventHandler): 28124 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 28125 (WebCore::InputFieldSpeechButtonElement::detach): 28126 28127 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28128 28129 Unreviewed, rolling out r70298.WebKit win compilation failure. 28130 http://trac.webkit.org/changeset/70298 28131 https://bugs.webkit.org/show_bug.cgi?id=48122 28132 28133 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28134 28135 Reviewed by Pavel Feldman. 28136 28137 Web Inspector: decouple ScriptArguments from ScriptCallStack 28138 https://bugs.webkit.org/show_bug.cgi?id=48058 28139 28140 ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8. 28141 The factory functions that allow to create ScriptCallStack from VM-specific 28142 objects are defined in ScriptCallStackFactory.cpp. 28143 28144 ScriptArguments class is used for passing arguments from JS code to the native 28145 part. 28146 28147 No new tests. This refactoring is covered with existing Console tests. 28148 28149 * WebCore.gypi: 28150 * WebCore.xcodeproj/project.pbxproj: 28151 * bindings/js/ScriptCallFrame.cpp: Removed. 28152 * bindings/js/ScriptCallFrame.h: Removed. 28153 * bindings/js/ScriptCallStack.cpp: Removed. 28154 * bindings/js/ScriptCallStack.h: Removed. 28155 * bindings/js/ScriptCallStackFactory.cpp: Added. 28156 (WebCore::createScriptCallStack): 28157 (WebCore::createScriptArguments): 28158 (WebCore::ScriptCallStack::stackTrace): 28159 * bindings/js/ScriptCallStackFactory.h: Added. 28160 * bindings/js/ScriptState.h: 28161 (WebCore::ScriptStateProtectedPtr::get): 28162 * bindings/scripts/CodeGeneratorJS.pm: 28163 * bindings/scripts/CodeGeneratorV8.pm: 28164 * bindings/v8/ScriptCallFrame.cpp: Removed. 28165 * bindings/v8/ScriptCallFrame.h: Removed. 28166 * bindings/v8/ScriptCallStack.cpp: Removed. 28167 * bindings/v8/ScriptCallStack.h: Removed. 28168 * bindings/v8/ScriptCallStackFactory.cpp: Added. 28169 (WebCore::toScriptCallFrame): 28170 (WebCore::toScriptCallFramesVector): 28171 (WebCore::createScriptCallStack): 28172 (WebCore::createScriptArguments): 28173 (WebCore::ScriptCallStack::stackTrace): 28174 * bindings/v8/ScriptCallStackFactory.h: Added. 28175 * bindings/v8/ScriptController.cpp: 28176 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 28177 * bindings/v8/ScriptState.h: 28178 (WebCore::ScriptStateProtectedPtr::get): 28179 * bindings/v8/V8ConsoleMessage.cpp: 28180 (WebCore::V8ConsoleMessage::handler): 28181 (WebCore::V8ConsoleMessage::dispatchNow): 28182 * bindings/v8/V8ConsoleMessage.h: 28183 * bindings/v8/custom/V8ConsoleCustom.cpp: 28184 (WebCore::V8Console::traceCallback): 28185 (WebCore::V8Console::assertCallback): 28186 * inspector/ConsoleMessage.cpp: 28187 (WebCore::ConsoleMessage::ConsoleMessage): 28188 (WebCore::ConsoleMessage::addToFrontend): 28189 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 28190 (WebCore::ConsoleMessage::isEqual): 28191 * inspector/ConsoleMessage.h: 28192 * inspector/InspectorController.cpp: 28193 (WebCore::InspectorController::addMessageToConsole): 28194 (WebCore::InspectorController::startGroup): 28195 * inspector/InspectorController.h: 28196 * inspector/ScriptArguments.cpp: Added. 28197 (WebCore::ScriptArguments::ScriptArguments): 28198 (WebCore::ScriptArguments::~ScriptArguments): 28199 (WebCore::ScriptArguments::argumentAt): 28200 (WebCore::ScriptArguments::globalState): 28201 (WebCore::ScriptArguments::getFirstArgumentAsString): 28202 (WebCore::ScriptArguments::isEqual): 28203 * inspector/ScriptArguments.h: Added. 28204 (WebCore::ScriptArguments::argumentCount): 28205 * inspector/ScriptCallFrame.cpp: Added. 28206 (WebCore::ScriptCallFrame::ScriptCallFrame): 28207 (WebCore::ScriptCallFrame::~ScriptCallFrame): 28208 (WebCore::ScriptCallFrame::isEqual): 28209 (WebCore::ScriptCallFrame::buildInspectorObject): 28210 * inspector/ScriptCallFrame.h: Added. 28211 (WebCore::ScriptCallFrame::functionName): 28212 (WebCore::ScriptCallFrame::sourceURL): 28213 (WebCore::ScriptCallFrame::lineNumber): 28214 * inspector/ScriptCallStack.cpp: Added. 28215 (WebCore::ScriptCallStack::ScriptCallStack): 28216 (WebCore::ScriptCallStack::~ScriptCallStack): 28217 (WebCore::ScriptCallStack::at): 28218 (WebCore::ScriptCallStack::size): 28219 (WebCore::ScriptCallStack::isEqual): 28220 (WebCore::ScriptCallStack::buildInspectorObject): 28221 * inspector/ScriptCallStack.h: Added. 28222 * page/Console.cpp: 28223 (WebCore::Console::addMessage): 28224 (WebCore::Console::debug): 28225 (WebCore::Console::error): 28226 (WebCore::Console::info): 28227 (WebCore::Console::log): 28228 (WebCore::Console::dir): 28229 (WebCore::Console::dirxml): 28230 (WebCore::Console::trace): 28231 (WebCore::Console::assertCondition): 28232 (WebCore::Console::count): 28233 (WebCore::Console::markTimeline): 28234 (WebCore::Console::profile): 28235 (WebCore::Console::profileEnd): 28236 (WebCore::Console::timeEnd): 28237 (WebCore::Console::group): 28238 (WebCore::Console::groupCollapsed): 28239 (WebCore::Console::shouldCaptureFullStackTrace): 28240 (WebCore::Console::warn): 28241 * page/Console.h: 28242 28243 2010-10-22 Benjamin Poulain <benjamin.poulain (a] nokia.com> 28244 28245 Reviewed by Simon Hausmann. 28246 28247 [Qt] All widgets are rendered incorrectly when rendered through a cache 28248 https://bugs.webkit.org/show_bug.cgi?id=47767 28249 28250 When a widget is not available to the RenderTheme, default 28251 value are used for the state. 28252 28253 * platform/qt/RenderThemeQt.cpp: 28254 (WebCore::initStyleOption): 28255 (WebCore::RenderThemeQt::paintButton): 28256 (WebCore::RenderThemeQt::paintTextField): 28257 (WebCore::RenderThemeQt::paintMenuList): 28258 (WebCore::RenderThemeQt::paintMenuListButton): 28259 (WebCore::RenderThemeQt::paintProgressBar): 28260 (WebCore::RenderThemeQt::paintSliderTrack): 28261 28262 2010-10-22 Zoltan Herczeg <zherczeg (a] webkit.org> 28263 28264 Reviewed by Dirk Schulze. 28265 28266 Moving all bounding box related calculation to RenderSVGResourceFilterPrimitive 28267 https://bugs.webkit.org/show_bug.cgi?id=47174 28268 28269 The primitive sub-region calculation was spread in many 28270 files across in WebKit source code, and all of them are moved 28271 to RenderSVGResourceFilterPrimitive, where they should be. 28272 In this patch the calculation is a static method which will 28273 be turned to a real member function in the near future. 28274 28275 * platform/graphics/filters/FETile.cpp: 28276 * platform/graphics/filters/FETile.h: 28277 (WebCore::FETile::filterEffectType): 28278 * platform/graphics/filters/Filter.h: 28279 * platform/graphics/filters/FilterEffect.cpp: 28280 * platform/graphics/filters/FilterEffect.h: 28281 * rendering/RenderSVGResourceFilter.cpp: 28282 (WebCore::RenderSVGResourceFilter::applyResource): 28283 * rendering/RenderSVGResourceFilterPrimitive.cpp: 28284 (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion): 28285 * rendering/RenderSVGResourceFilterPrimitive.h: 28286 (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive): 28287 * svg/graphics/filters/SVGFilter.cpp: 28288 * svg/graphics/filters/SVGFilter.h: 28289 (WebCore::SVGFilter::mapLocalRectToAbsoluteRect): 28290 (WebCore::SVGFilter::targetBoundingBox): 28291 28292 2010-10-21 Kwang Yul Seo <skyul (a] company100.net> 28293 28294 Reviewed by Kent Tamura. 28295 28296 [BREWMP] Add a String constructor which takes AECHAR* 28297 https://bugs.webkit.org/show_bug.cgi?id=45043 28298 28299 Implement String(const AECHAR*) constructor. 28300 28301 * platform/text/brew/StringBrew.cpp: Added. 28302 (WTF::String::String): 28303 28304 2010-10-21 James Simonsen <simonjam (a] chromium.org> 28305 28306 Reviewed by Adam Barth. 28307 28308 HTMLTreeBuilder's InForeignContent code needs a re-write 28309 28310 Foreign Content mode was changed significantly by: 28311 http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314 28312 28313 The differences can be seen here: 28314 http://html5.org/tools/web-apps-tracker?from=5520&to=5522 28315 28316 This bug addresses all spec changes in the diff except the select scope 28317 changes, which have already been fixed in a separate bug. 28318 28319 https://bugs.webkit.org/show_bug.cgi?id=46676 28320 28321 * html/parser/HTMLElementStack.cpp: 28322 (WebCore::HTMLNames::isScopeMarker): Add foreign elements to list. 28323 * html/parser/HTMLTreeBuilder.cpp: 28324 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 28325 (WebCore::HTMLTreeBuilder::processDoctypeToken): Switch mode before reprocessing any tokens. 28326 (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto. Remove secondary insertion mode. 28327 (WebCore::HTMLTreeBuilder::processStartTagForInTable): Switch mode before reprocessing any tokens. 28328 (WebCore::HTMLTreeBuilder::processStartTag): Ditto. Remove secondary insertion mode. 28329 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Remove foreign var. Use hasTagName() instead of == localName() to fix bug with foreign elements. 28330 (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): Switch mode before reprocessing any tokens. 28331 (WebCore::HTMLTreeBuilder::processEndTagForInRow): Ditto. 28332 (WebCore::HTMLTreeBuilder::processEndTagForInCell): Ditto. 28333 (WebCore::HTMLTreeBuilder::processEndTagForInBody): Ditto. 28334 (WebCore::HTMLTreeBuilder::processEndTag): Ditto. 28335 (WebCore::HTMLTreeBuilder::prepareToReprocessToken): Added. 28336 (WebCore::HTMLTreeBuilder::reprocessStartTag): Added. 28337 (WebCore::HTMLTreeBuilder::reprocessEndTag): Added. 28338 (WebCore::HTMLTreeBuilder::processForeignContentUsingInBodyModeAndResetMode): Added. 28339 (WebCore::HTMLTreeBuilder::resetForeignInsertionMode): Added. 28340 (WebCore::HTMLTreeBuilder::processComment): Switch mode before reprocessing any tokens. 28341 (WebCore::HTMLTreeBuilder::processCharacterBuffer): Ditto. 28342 (WebCore::HTMLTreeBuilder::processEndOfFile): Ditto. 28343 * html/parser/HTMLTreeBuilder.h: Functions and member for tracking potential switch from InForeignContentMode. 28344 28345 2010-10-21 Adam Barth <abarth (a] webkit.org> 28346 28347 Reviewed by David Levin. 28348 28349 Remove Android build system 28350 https://bugs.webkit.org/show_bug.cgi?id=48111 28351 28352 As far as I can tell, these files are not maintained. They are a 28353 mantaince burden on the project. If folks would like to come out of 28354 the woodwork and maintain these files, that's great. At the moment, 28355 they seem like dead weight for the project. 28356 28357 * Android.mk: Removed. 28358 28359 2010-10-21 Kwang Yul Seo <skyul (a] company100.net> 28360 28361 Reviewed by James Robinson. 28362 28363 Make sure skia is not Chromium specific 28364 https://bugs.webkit.org/show_bug.cgi?id=39672 28365 28366 GlyphPageTreeNodeLinux does not depend on Linux or Chromium. 28367 Move GlyphPageTreeNodeLinux to platform/graphics/skia and rename it to 28368 GlyphPageTreeNodeSkia.cpp so that other ports can use it. 28369 28370 * WebCore.gyp/WebCore.gyp: 28371 * WebCore.gypi: 28372 * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed. 28373 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added. 28374 28375 2010-10-21 Ryosuke Niwa <rniwa (a] webkit.org> 28376 28377 Reviewed by Tony Chang. 28378 28379 removeFormat needs to be reimplemented 28380 https://bugs.webkit.org/show_bug.cgi?id=43017 28381 28382 Reimplemented execCommand('RemoveFormat', false, null). New implementation removes 28383 the same elements removed by Internet Explorer. Because WebKit supports StyleWithCSS 28384 we also reset any editing styles to match that of the root editable element 28385 while Internet Explorer does not remove any CSS styles. 28386 28387 New implementation uses ApplyStyleCommand to remove appropriate elements and reset the style. 28388 Added new constructor and member variable to ApplyStyleCommand to support mass-removal of elements 28389 since it's inefficient to call ApplyStyleCommand on each element we're removing. 28390 28391 To avoid an infinite loop in pushDownInlineStyleAroundNode when mass-removing, WebKit no longer 28392 push down element one level at a time. Instead, we keep a stack of styled elements to be applied, 28393 and apply wrap siblings of targetNode's ancestors by all of them at once. 28394 28395 Tests: editing/execCommand/remove-format-elements.html 28396 editing/execCommand/remove-format-multiple-elements.html 28397 28398 * editing/ApplyStyleCommand.cpp: 28399 (WebCore::ApplyStyleCommand::ApplyStyleCommand): Added; this version takes style and a function pointer 28400 to a boolean function that determines which element needs to removed, and set m_removeOnly to true. 28401 (WebCore::ApplyStyleCommand::doApply): Added support for m_isInlineElementToRemoveFunction. 28402 (WebCore::ApplyStyleCommand::applyBlockStyle): Ditto. 28403 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Exits early if m_removeOnly is true. 28404 (WebCore::ApplyStyleCommand::isStyledInlineElementToRemove): Added. 28405 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls isStyledInlineElementToRemove. 28406 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Ditto. 28407 (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto. 28408 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): See above. 28409 * editing/ApplyStyleCommand.h: 28410 (WebCore::ApplyStyleCommand::create): Added. 28411 * editing/RemoveFormatCommand.cpp: 28412 (WebCore::isElementForRemoveFormatCommand): Added. 28413 (WebCore::RemoveFormatCommand::doApply): Rewritten. 28414 28415 2010-10-21 Tony Gentilcore <tonyg (a] chromium.org> 28416 28417 Reviewed by Adam Barth. 28418 28419 Ignore document.write() when it comes from a network task 28420 https://bugs.webkit.org/show_bug.cgi?id=47560 28421 28422 This implements the update to the spec made by: 28423 http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767 28424 28425 It also matches the latest Firefox 4 beta. The notable change is that 28426 document.write from a deferred script no longer works. This avoids 28427 blowing the patch away. 28428 28429 * dom/Document.cpp: 28430 (WebCore::Document::Document): 28431 (WebCore::Document::write): 28432 * dom/Document.h: 28433 (WebCore::DestructiveWriteCountIncrementer::DestructiveWriteCountIncrementer): 28434 (WebCore::Document::ignoreDestructiveWriteCountIncrementer): 28435 * dom/ScriptElement.cpp: 28436 (WebCore::ScriptElement::insertedIntoDocument): 28437 (WebCore::ScriptElementData::ScriptElementData): 28438 (WebCore::ScriptElementData::evaluateScript): 28439 * dom/ScriptElement.h: 28440 * html/parser/HTMLScriptRunner.cpp: 28441 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): 28442 28443 2010-10-21 Ryosuke Niwa <rniwa (a] webkit.org> 28444 28445 Unreviewed Leopard build fix attempt. 28446 28447 Explicitly cast the return value of deg2rad to float. 28448 28449 * rendering/InlineTextBox.cpp: 28450 (WebCore::InlineTextBox::paint): 28451 28452 2010-10-21 Mihai Parparita <mihaip (a] chromium.org> 28453 28454 Reviewed by James Robinson. 28455 28456 [Chromium] Fix Chromium Mac build 28457 https://bugs.webkit.org/show_bug.cgi?id=48096 28458 28459 Fix Chromium Mac build after r70225 (Chromium uses Core Text but is not 28460 PLATFORM(MAC)). 28461 28462 * platform/graphics/SimpleFontData.h: 28463 28464 2010-10-21 Xiaomei Ji <xji (a] chromium.org> 28465 28466 Reviewed by David Levin. 28467 28468 Performance improvement for FontLinux. 28469 https://bugs.webkit.org/show_bug.cgi?id=47019 28470 28471 Reduce the number of calls for the normalization function because converting 28472 to NFC form is very expensive. 28473 28474 Combine space normalization and character mirroring into one text scan. 28475 28476 Test: platform/chromium/fast/text/font-linux-normalize.html 28477 28478 * platform/graphics/chromium/FontLinux.cpp: 28479 (WebCore::TextRunWalker::TextRunWalker): 28480 (WebCore::TextRunWalker::~TextRunWalker): 28481 (WebCore::TextRunWalker::getNormalizedTextRun): 28482 (WebCore::TextRunWalker::normalizeSpacesAndMirrorChars): 28483 28484 2010-10-21 David Hyatt <hyatt (a] apple.com> 28485 28486 Reviewed by Darin Adler. 28487 28488 https://bugs.webkit.org/show_bug.cgi?id=48085 28489 28490 Make basic vertical text painting work. This includes the text itself, underlines, overlines, line-throughs and shadows. 28491 28492 Added fast/blockflow/english-lr-text.html 28493 28494 * rendering/InlineFlowBox.cpp: 28495 (WebCore::InlineFlowBox::paint): 28496 * rendering/InlineFlowBox.h: 28497 * rendering/InlineTextBox.cpp: 28498 (WebCore::InlineTextBox::applyShadowToGraphicsContext): 28499 (WebCore::paintTextWithShadows): 28500 (WebCore::InlineTextBox::paint): 28501 (WebCore::InlineTextBox::paintDecoration): 28502 (WebCore::InlineTextBox::paintTextMatchMarker): 28503 * rendering/InlineTextBox.h: 28504 * rendering/svg/SVGInlineTextBox.cpp: 28505 (WebCore::SVGInlineTextBox::paintTextWithShadows): 28506 28507 2010-10-21 No'am Rosenthal <noam.rosenthal (a] nokia.com> 28508 28509 Reviewed by Simon Hausmann. 28510 28511 [Qt] When doing rendering through tiling, it seems the tiles are not initialized before rendering 28512 https://bugs.webkit.org/show_bug.cgi?id=48070 28513 28514 No new tests. Auto-tests for Tiled Backing Store should be added, see bug 48082 28515 28516 * page/Frame.cpp: 28517 (WebCore::Frame::tiledBackingStoreBackgroundColor): 28518 * page/Frame.h: 28519 * platform/graphics/TiledBackingStoreClient.h: 28520 * platform/graphics/qt/TileQt.cpp: 28521 (WebCore::Tile::updateBackBuffer): 28522 28523 2010-10-21 Carlos Garcia Campos <cgarcia (a] igalia.com> 28524 28525 Reviewed by Martin Robinson. 28526 28527 [GTK] Use GCharsetConverter instead of g_iconv in TextCodecGtk 28528 https://bugs.webkit.org/show_bug.cgi?id=47896 28529 28530 It makes error handling easier. Fixes tests: 28531 fast/encoding/invalid-multi-byte-over-consumption.html 28532 fast/encoding/invalid-xml.html 28533 fast/encoding/japanese-encoding-mix.html 28534 when building with glib unicode 28535 28536 * platform/text/gtk/TextCodecGtk.cpp: 28537 (WebCore::TextCodecGtk::TextCodecGtk): 28538 (WebCore::TextCodecGtk::~TextCodecGtk): 28539 (WebCore::TextCodecGtk::createIConvDecoder): 28540 (WebCore::TextCodecGtk::createIConvEncoder): 28541 (WebCore::TextCodecGtk::decode): 28542 (WebCore::TextCodecGtk::encode): 28543 * platform/text/gtk/TextCodecGtk.h: 28544 28545 2010-10-21 Chris Fleizach <cfleizach (a] apple.com> 28546 28547 Reviewed by Beth Dakin. 28548 28549 AX: contenteditable nodes do not return correct AXSelectedText* attributes 28550 https://bugs.webkit.org/show_bug.cgi?id=48080 28551 28552 The ariaSelectedDOMTextRange() method was not returning the correct values. 28553 The fix is to return a plain text range that represents the current selection. 28554 28555 Test: platform/mac/accessibility/content-editable-range-properties.html 28556 28557 * accessibility/AccessibilityObject.h: 28558 (WebCore::AccessibilityObject::accessibilityDescription): 28559 * accessibility/AccessibilityRenderObject.cpp: 28560 (WebCore::AccessibilityRenderObject::ariaSelectedTextRange): 28561 (WebCore::AccessibilityRenderObject::selectedText): 28562 (WebCore::AccessibilityRenderObject::selectedTextRange): 28563 * accessibility/AccessibilityRenderObject.h: 28564 28565 2010-10-20 Jer Noble <jer.noble (a] apple.com> 28566 28567 Reviewed by Eric Carlson. 28568 28569 Video -> Canvas doesn't work on Windows 28570 https://bugs.webkit.org/show_bug.cgi?id=47996 28571 rdar://problem/7884690 28572 28573 * WebCore.vcproj/QTMovieWin.vcproj: Added QTDecompressionSession.{cpp,h} 28574 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 28575 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Create a 28576 QTDecompressionSession if necessary and convert the QTPixelBuffer 28577 into a CG-compatible one. 28578 * platform/graphics/win/QTDecompressionSession.cpp: Added. 28579 * platform/graphics/win/QTDecompressionSession.h: Added. 28580 * platform/graphics/win/QTPixelBuffer.cpp: 28581 (SetNumberValue): Moved from QTMovieVisualContext. 28582 (QTPixelBuffer::createPixelBufferAttributesDictionary): Moved from inside 28583 QTMovieVisualContext::createPixelBufferOptionsDictionary(). 28584 * platform/graphics/win/QTPixelBuffer.h: Moved the Type enum 28585 from QTMovieVisualContext.h. 28586 28587 2010-10-21 Carlos Garcia Campos <cgarcia (a] igalia.com> 28588 28589 Reviewed by Martin Robinson. 28590 28591 [GTK] TextBreakIteratorGtk should initialize its internal index to 0 28592 https://bugs.webkit.org/show_bug.cgi?id=48065 28593 28594 It fixes the following tests when using glib unicode: 28595 fast/forms/ValidityState-tooLong-input.html 28596 fast/forms/ValidityState-tooLong-textarea.html 28597 fast/forms/input-appearance-maxlength.html 28598 fast/forms/input-implicit-length-limit.html 28599 fast/forms/input-maxlength.html 28600 fast/forms/textarea-live-pseudo-selectors.html 28601 fast/forms/mailto/advanced-get.html 28602 fast/forms/mailto/advanced-put.html 28603 28604 * platform/text/gtk/TextBreakIteratorGtk.cpp: 28605 (WebCore::setUpIterator): 28606 28607 2010-10-21 takano takumi <takano1 (a] asia.apple.com> 28608 28609 Reviewed by Dan Bernstein. 28610 28611 Need to swap glyphs for vertical writing 28612 https://bugs.webkit.org/show_bug.cgi?id=46973 28613 28614 Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData, 28615 and ultimately to CoreText APIs in both font complex path and fast path. 28616 28617 Tests: fast/text/international/vertical-text-glyph-test.html 28618 fast/text/international/vertical-text-metrics-test.html 28619 28620 * WebCore.exp.in: 28621 * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h. 28622 * css/CSSFontFaceSource.cpp: 28623 (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData. 28624 * css/CSSStyleSelector.cpp: 28625 (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description 28626 when writing-mode is being specified. 28627 * loader/CachedFont.cpp: 28628 (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData. 28629 * loader/CachedFont.h: 28630 * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey 28631 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): 28632 (WebCore::FontPlatformDataCacheKey::operator==): 28633 (WebCore::computeHash): 28634 (WebCore::FontCache::getCachedFontPlatformData): 28635 * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class 28636 (WebCore::FontDescription::FontDescription): 28637 (WebCore::FontDescription::orientation): 28638 (WebCore::FontDescription::setOrientation): 28639 (WebCore::FontDescription::operator==): 28640 * platform/graphics/FontOrientation.h: Added. 28641 * platform/graphics/SimpleFontData.h: 28642 * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28643 (WebCore::FontCustomPlatformData::fontPlatformData): 28644 * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28645 * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class 28646 (WebCore::FontPlatformData::FontPlatformData): 28647 (WebCore::FontPlatformData::orientation): 28648 (WebCore::FontPlatformData::hash): 28649 (WebCore::FontPlatformData::operator==): 28650 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support 28651 (WebCore::FontPlatformData::FontPlatformData): 28652 (WebCore::FontPlatformData::operator=): 28653 (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation. 28654 (WebCore::FontPlatformData::description): 28655 * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData() 28656 (WebCore::FontCustomPlatformData::fontPlatformData): 28657 * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28658 (WebCore::FontCustomPlatformData::fontPlatformData): 28659 * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28660 * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object. 28661 (WebCore::FontCache::getFontDataForCharacters): 28662 (WebCore::FontCache::createFontPlatformData): 28663 * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object. 28664 (WebCore::FontCustomPlatformData::fontPlatformData): 28665 * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData() 28666 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: 28667 (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation. 28668 CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical. 28669 * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine. 28670 (WebCore::SimpleFontData::getCFStringAttributes): 28671 * platform/graphics/mac/SimpleFontDataMac.mm: 28672 (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics. 28673 (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances, 28674 to get vertical metrics when the font orientation is vertical. 28675 * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28676 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData() 28677 (WebCore::FontCustomPlatformData::fontPlatformData): 28678 * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28679 (WebCore::FontCustomPlatformData::fontPlatformData): 28680 * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28681 * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28682 (WebCore::FontCustomPlatformData::fontPlatformData): 28683 * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28684 * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData() 28685 (WebCore::FontCustomPlatformData::fontPlatformData): 28686 * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData() 28687 * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28688 (WebCore::FontCustomPlatformData::fontPlatformData): 28689 * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28690 * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 28691 (WebCore::FontCustomPlatformData::fontPlatformData): 28692 * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 28693 28694 2010-10-21 Pavel Feldman <pfeldman (a] chromium.org> 28695 28696 Reviewed by Yury Semikhatsky. 28697 28698 Web Inspector: provide resource tree in the Storage panel (behind the flag). 28699 https://bugs.webkit.org/show_bug.cgi?id=48069 28700 28701 * WebCore.gypi: 28702 * inspector/Inspector.idl: 28703 * inspector/InspectorController.cpp: 28704 (WebCore::InspectorController::frameDetachedFromParent): 28705 * inspector/InspectorResourceAgent.cpp: 28706 (WebCore::buildObjectForDocumentLoader): 28707 (WebCore::buildObjectForFrameResource): 28708 (WebCore::buildObjectForCachedResource): 28709 (WebCore::populateObjectWithFrameResources): 28710 (WebCore::InspectorResourceAgent::identifierForInitialRequest): 28711 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): 28712 (WebCore::buildObjectForFrameTree): 28713 (WebCore::InspectorResourceAgent::didCommitLoad): 28714 (WebCore::InspectorResourceAgent::frameDetachedFromParent): 28715 (WebCore::InspectorResourceAgent::cachedResources): 28716 (WebCore::InspectorResourceAgent::resourceContent): 28717 * inspector/InspectorResourceAgent.h: 28718 * inspector/front-end/Images/frame.png: Added. 28719 * inspector/front-end/NetworkPanel.js: 28720 (WebInspector.NetworkPanel.prototype.refreshResource): 28721 (WebInspector.NetworkPanel.prototype._showResource): 28722 * inspector/front-end/Resource.js: 28723 (WebInspector.Resource.Type.toString): 28724 (WebInspector.Resource.prototype.getContents): 28725 * inspector/front-end/ResourceManager.js: 28726 (WebInspector.ResourceManager): 28727 (WebInspector.ResourceManager.prototype.identifierForInitialRequest): 28728 (WebInspector.ResourceManager.prototype._createResource): 28729 (WebInspector.ResourceManager.prototype.willSendRequest): 28730 (WebInspector.ResourceManager.prototype._appendRedirect): 28731 (WebInspector.ResourceManager.prototype.markResourceAsCached): 28732 (WebInspector.ResourceManager.prototype.didReceiveResponse): 28733 (WebInspector.ResourceManager.prototype._updateResourceWithResponse): 28734 (WebInspector.ResourceManager.prototype.didReceiveContentLength): 28735 (WebInspector.ResourceManager.prototype.didFinishLoading): 28736 (WebInspector.ResourceManager.prototype.didFailLoading): 28737 (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache): 28738 (WebInspector.ResourceManager.prototype._updateResourceWithCachedResource): 28739 (WebInspector.ResourceManager.prototype.setOverrideContent): 28740 (WebInspector.ResourceManager.prototype.didCommitLoadForFrame): 28741 (WebInspector.ResourceManager.prototype.frameDetachedFromParent): 28742 (WebInspector.ResourceManager.prototype._clearResources): 28743 (WebInspector.ResourceManager.prototype.didCreateWebSocket): 28744 (WebInspector.ResourceManager.prototype.willSendWebSocketHandshakeRequest): 28745 (WebInspector.ResourceManager.prototype.didReceiveWebSocketHandshakeResponse): 28746 (WebInspector.ResourceManager.prototype.didCloseWebSocket): 28747 (WebInspector.ResourceManager.prototype._processCachedResources): 28748 (WebInspector.ResourceManager.prototype._appendFramesRecursively.comparator): 28749 (WebInspector.ResourceManager.prototype._appendFramesRecursively): 28750 (WebInspector.ResourceManager.createResourceView): 28751 (WebInspector.ResourceManager.resourceViewTypeMatchesResource): 28752 (WebInspector.ResourceManager.resourceViewForResource): 28753 (WebInspector.ResourceManager.getContents): 28754 * inspector/front-end/ResourcesPanel.js: 28755 (WebInspector.ResourcesPanel.prototype.get searchableViews): 28756 (WebInspector.ResourcesPanel.prototype.addMessageToResource): 28757 (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded): 28758 (WebInspector.ResourcesPanel.prototype.showResource): 28759 (WebInspector.ResourcesPanel.prototype.sourceFrameForResource): 28760 * inspector/front-end/ScriptsPanel.js: 28761 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 28762 * inspector/front-end/StoragePanel.js: 28763 (WebInspector.StoragePanel): 28764 (WebInspector.StoragePanel.prototype.addFrame): 28765 (WebInspector.StoragePanel.prototype.removeFrame): 28766 (WebInspector.StoragePanel.prototype.addFrameResource): 28767 (WebInspector.StoragePanel.prototype.removeFrameResources): 28768 (WebInspector.StoragePanel.prototype.showResource): 28769 (WebInspector.BaseStorageTreeElement.prototype.onattach): 28770 (WebInspector.BaseStorageTreeElement.prototype.onreveal): 28771 (WebInspector.FrameTreeElement): 28772 (WebInspector.FrameTreeElement.prototype.onselect): 28773 (WebInspector.FrameResourceTreeElement): 28774 (WebInspector.FrameResourceTreeElement.prototype.onselect): 28775 (WebInspector.FrameResourceTreeElement.prototype.onattach): 28776 * inspector/front-end/WebKit.qrc: 28777 * inspector/front-end/inspector.css: 28778 (.frame-storage-tree-item .icon): 28779 (.storage.panel .sidebar.outline-disclosure > ol): 28780 (.resources-category-images .image-resource-icon-preview): 28781 (.children.small .resources-category-images .image-resource-icon-preview): 28782 * inspector/front-end/inspector.js: 28783 28784 2010-10-21 David Kilzer <ddkilzer (a] apple.com> 28785 28786 <http://webkit.org/b/48047> Fix warnings found by check-Xcode-source-file-types 28787 28788 Reviewed by Adam Roben. 28789 28790 Fixes the following warning: 28791 28792 WARNING: Unknown file type 'sourcecode' for file 'CSSPrimitiveValue.idl'. 28793 1 issues found for WebCore/WebCore.xcodeproj/project.pbxproj. 28794 28795 * WebCore.xcodeproj/project.pbxproj: Removed explicit file type 28796 for CSSPrimitiveValue.idl to make it match other IDL files. 28797 28798 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28799 28800 Reviewed by Pavel Feldman. 28801 28802 Web Inspector: decouple ScriptArguments from ScriptCallStack 28803 https://bugs.webkit.org/show_bug.cgi?id=48058 28804 28805 ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8. 28806 The factory functions that allow to create ScriptCallStack from VM-specific 28807 objects are defined in ScriptCallStackFactory.cpp. 28808 28809 ScriptArguments class is used for passing arguments from JS code to the native 28810 part. 28811 28812 No new tests. This refactoring is covered with existing Console tests. 28813 28814 * WebCore.gypi: 28815 * WebCore.xcodeproj/project.pbxproj: 28816 * bindings/js/ScriptCallFrame.cpp: Removed. 28817 * bindings/js/ScriptCallFrame.h: Removed. 28818 * bindings/js/ScriptCallStack.cpp: Removed. 28819 * bindings/js/ScriptCallStack.h: Removed. 28820 * bindings/js/ScriptCallStackFactory.cpp: Added. 28821 (WebCore::createScriptCallStack): 28822 (WebCore::createScriptArguments): 28823 (WebCore::ScriptCallStack::stackTrace): 28824 * bindings/js/ScriptCallStackFactory.h: Added. 28825 * bindings/js/ScriptState.h: 28826 (WebCore::ScriptStateProtectedPtr::get): 28827 * bindings/scripts/CodeGeneratorJS.pm: 28828 * bindings/scripts/CodeGeneratorV8.pm: 28829 * bindings/v8/ScriptCallFrame.cpp: Removed. 28830 * bindings/v8/ScriptCallFrame.h: Removed. 28831 * bindings/v8/ScriptCallStack.cpp: Removed. 28832 * bindings/v8/ScriptCallStack.h: Removed. 28833 * bindings/v8/ScriptCallStackFactory.cpp: Added. 28834 (WebCore::toScriptCallFrame): 28835 (WebCore::toScriptCallFramesVector): 28836 (WebCore::createScriptCallStack): 28837 (WebCore::createScriptArguments): 28838 (WebCore::ScriptCallStack::stackTrace): 28839 * bindings/v8/ScriptCallStackFactory.h: Added. 28840 * bindings/v8/ScriptController.cpp: 28841 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 28842 * bindings/v8/ScriptState.h: 28843 (WebCore::ScriptStateProtectedPtr::get): 28844 * bindings/v8/V8ConsoleMessage.cpp: 28845 (WebCore::V8ConsoleMessage::handler): 28846 (WebCore::V8ConsoleMessage::dispatchNow): 28847 * bindings/v8/V8ConsoleMessage.h: 28848 * bindings/v8/custom/V8ConsoleCustom.cpp: 28849 (WebCore::V8Console::traceCallback): 28850 (WebCore::V8Console::assertCallback): 28851 * inspector/ConsoleMessage.cpp: 28852 (WebCore::ConsoleMessage::ConsoleMessage): 28853 (WebCore::ConsoleMessage::addToFrontend): 28854 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 28855 (WebCore::ConsoleMessage::isEqual): 28856 * inspector/ConsoleMessage.h: 28857 * inspector/InspectorController.cpp: 28858 (WebCore::InspectorController::addMessageToConsole): 28859 (WebCore::InspectorController::startGroup): 28860 * inspector/InspectorController.h: 28861 * inspector/ScriptArguments.cpp: Added. 28862 (WebCore::ScriptArguments::ScriptArguments): 28863 (WebCore::ScriptArguments::~ScriptArguments): 28864 (WebCore::ScriptArguments::argumentAt): 28865 (WebCore::ScriptArguments::globalState): 28866 (WebCore::ScriptArguments::getFirstArgumentAsString): 28867 (WebCore::ScriptArguments::isEqual): 28868 * inspector/ScriptArguments.h: Added. 28869 (WebCore::ScriptArguments::argumentCount): 28870 * inspector/ScriptCallFrame.cpp: Added. 28871 (WebCore::ScriptCallFrame::ScriptCallFrame): 28872 (WebCore::ScriptCallFrame::~ScriptCallFrame): 28873 (WebCore::ScriptCallFrame::isEqual): 28874 (WebCore::ScriptCallFrame::buildInspectorObject): 28875 * inspector/ScriptCallFrame.h: Added. 28876 (WebCore::ScriptCallFrame::functionName): 28877 (WebCore::ScriptCallFrame::sourceURL): 28878 (WebCore::ScriptCallFrame::lineNumber): 28879 * inspector/ScriptCallStack.cpp: Added. 28880 (WebCore::ScriptCallStack::ScriptCallStack): 28881 (WebCore::ScriptCallStack::~ScriptCallStack): 28882 (WebCore::ScriptCallStack::at): 28883 (WebCore::ScriptCallStack::size): 28884 (WebCore::ScriptCallStack::isEqual): 28885 (WebCore::ScriptCallStack::buildInspectorObject): 28886 * inspector/ScriptCallStack.h: Added. 28887 * page/Console.cpp: 28888 (WebCore::Console::addMessage): 28889 (WebCore::Console::debug): 28890 (WebCore::Console::error): 28891 (WebCore::Console::info): 28892 (WebCore::Console::log): 28893 (WebCore::Console::dir): 28894 (WebCore::Console::dirxml): 28895 (WebCore::Console::trace): 28896 (WebCore::Console::assertCondition): 28897 (WebCore::Console::count): 28898 (WebCore::Console::markTimeline): 28899 (WebCore::Console::profile): 28900 (WebCore::Console::profileEnd): 28901 (WebCore::Console::timeEnd): 28902 (WebCore::Console::group): 28903 (WebCore::Console::groupCollapsed): 28904 (WebCore::Console::shouldCaptureFullStackTrace): 28905 (WebCore::Console::warn): 28906 * page/Console.h: 28907 28908 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28909 28910 Unreviewed. Revert r70232. Chromium compilation failure. 28911 28912 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28913 28914 Unreviewed. Revert r70233. Too many failures. 28915 28916 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28917 28918 Unreviewed. Remove references to deleted headers from WebCore.pro 28919 28920 * WebCore.pro: 28921 28922 2010-10-21 Yury Semikhatsky <yurys (a] chromium.org> 28923 28924 Reviewed by Pavel Feldman. 28925 28926 Web Inspector: decouple ScriptArguments from ScriptCallStack 28927 https://bugs.webkit.org/show_bug.cgi?id=48058 28928 28929 ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8. 28930 The factory functions that allow to create ScriptCallStack from VM-specific 28931 objects are defined in ScriptCallStackFactory.cpp. 28932 28933 ScriptArguments class is used for passing arguments from JS code to the native 28934 part. 28935 28936 No new tests. This refactoring is covered with existing Console tests. 28937 28938 * WebCore.gypi: 28939 * WebCore.xcodeproj/project.pbxproj: 28940 * bindings/js/ScriptCallFrame.cpp: Removed. 28941 * bindings/js/ScriptCallFrame.h: Removed. 28942 * bindings/js/ScriptCallStack.cpp: Removed. 28943 * bindings/js/ScriptCallStack.h: Removed. 28944 * bindings/js/ScriptCallStackFactory.cpp: Added. 28945 (WebCore::createScriptCallStack): 28946 (WebCore::createScriptArguments): 28947 (WebCore::ScriptCallStack::stackTrace): 28948 * bindings/js/ScriptCallStackFactory.h: Added. 28949 * bindings/js/ScriptState.h: 28950 (WebCore::ScriptStateProtectedPtr::get): 28951 * bindings/scripts/CodeGeneratorJS.pm: 28952 * bindings/scripts/CodeGeneratorV8.pm: 28953 * bindings/v8/ScriptCallFrame.cpp: Removed. 28954 * bindings/v8/ScriptCallFrame.h: Removed. 28955 * bindings/v8/ScriptCallStack.cpp: Removed. 28956 * bindings/v8/ScriptCallStack.h: Removed. 28957 * bindings/v8/ScriptCallStackFactory.cpp: Added. 28958 (WebCore::toScriptCallFrame): 28959 (WebCore::toScriptCallFramesVector): 28960 (WebCore::createScriptCallStack): 28961 (WebCore::createScriptArguments): 28962 (WebCore::ScriptCallStack::stackTrace): 28963 * bindings/v8/ScriptCallStackFactory.h: Added. 28964 * bindings/v8/ScriptController.cpp: 28965 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 28966 * bindings/v8/ScriptState.h: 28967 (WebCore::ScriptStateProtectedPtr::get): 28968 * bindings/v8/V8ConsoleMessage.cpp: 28969 (WebCore::V8ConsoleMessage::handler): 28970 (WebCore::V8ConsoleMessage::dispatchNow): 28971 * bindings/v8/V8ConsoleMessage.h: 28972 * bindings/v8/custom/V8ConsoleCustom.cpp: 28973 (WebCore::V8Console::traceCallback): 28974 (WebCore::V8Console::assertCallback): 28975 * inspector/ConsoleMessage.cpp: 28976 (WebCore::ConsoleMessage::ConsoleMessage): 28977 (WebCore::ConsoleMessage::addToFrontend): 28978 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 28979 (WebCore::ConsoleMessage::isEqual): 28980 * inspector/ConsoleMessage.h: 28981 * inspector/InspectorController.cpp: 28982 (WebCore::InspectorController::addMessageToConsole): 28983 (WebCore::InspectorController::startGroup): 28984 * inspector/InspectorController.h: 28985 * inspector/ScriptArguments.cpp: Added. 28986 (WebCore::ScriptArguments::ScriptArguments): 28987 (WebCore::ScriptArguments::~ScriptArguments): 28988 (WebCore::ScriptArguments::argumentAt): 28989 (WebCore::ScriptArguments::globalState): 28990 (WebCore::ScriptArguments::getFirstArgumentAsString): 28991 (WebCore::ScriptArguments::isEqual): 28992 * inspector/ScriptArguments.h: Added. 28993 (WebCore::ScriptArguments::argumentCount): 28994 * inspector/ScriptCallFrame.cpp: Added. 28995 (WebCore::ScriptCallFrame::ScriptCallFrame): 28996 (WebCore::ScriptCallFrame::~ScriptCallFrame): 28997 (WebCore::ScriptCallFrame::isEqual): 28998 (WebCore::ScriptCallFrame::buildInspectorObject): 28999 * inspector/ScriptCallFrame.h: Added. 29000 (WebCore::ScriptCallFrame::functionName): 29001 (WebCore::ScriptCallFrame::sourceURL): 29002 (WebCore::ScriptCallFrame::lineNumber): 29003 * inspector/ScriptCallStack.cpp: Added. 29004 (WebCore::ScriptCallStack::ScriptCallStack): 29005 (WebCore::ScriptCallStack::~ScriptCallStack): 29006 (WebCore::ScriptCallStack::at): 29007 (WebCore::ScriptCallStack::size): 29008 (WebCore::ScriptCallStack::isEqual): 29009 (WebCore::ScriptCallStack::buildInspectorObject): 29010 * inspector/ScriptCallStack.h: Added. 29011 * page/Console.cpp: 29012 (WebCore::Console::addMessage): 29013 (WebCore::Console::debug): 29014 (WebCore::Console::error): 29015 (WebCore::Console::info): 29016 (WebCore::Console::log): 29017 (WebCore::Console::dir): 29018 (WebCore::Console::dirxml): 29019 (WebCore::Console::trace): 29020 (WebCore::Console::assertCondition): 29021 (WebCore::Console::count): 29022 (WebCore::Console::markTimeline): 29023 (WebCore::Console::profile): 29024 (WebCore::Console::profileEnd): 29025 (WebCore::Console::timeEnd): 29026 (WebCore::Console::group): 29027 (WebCore::Console::groupCollapsed): 29028 (WebCore::Console::shouldCaptureFullStackTrace): 29029 (WebCore::Console::warn): 29030 * page/Console.h: 29031 29032 2010-10-21 Pavel Feldman <pfeldman (a] chromium.org> 29033 29034 Reviewed by Yury Semikhatsky. 29035 29036 Chromium: use dedicated event listener type in EventListenerWrapper. 29037 https://bugs.webkit.org/show_bug.cgi?id=48059 29038 29039 This change introduces new EventListener::Type NativeEventListenerType. 29040 This new type is intended to be used by any code that wants to protect 29041 itself from unsafe casts to particular event listener implementations. 29042 29043 * dom/EventListener.h: 29044 29045 2010-10-21 Sheriff Bot <webkit.review.bot (a] gmail.com> 29046 29047 Unreviewed, rolling out r70225. 29048 http://trac.webkit.org/changeset/70225 29049 https://bugs.webkit.org/show_bug.cgi?id=48061 29050 29051 Build breakage on Leopard. (Requested by pfeldman on #webkit). 29052 29053 * WebCore.exp.in: 29054 * WebCore.xcodeproj/project.pbxproj: 29055 * css/CSSFontFaceSource.cpp: 29056 (WebCore::CSSFontFaceSource::getFontData): 29057 * css/CSSStyleSelector.cpp: 29058 (WebCore::CSSStyleSelector::applyProperty): 29059 * loader/CachedFont.cpp: 29060 (WebCore::CachedFont::platformDataFromCustomData): 29061 * loader/CachedFont.h: 29062 * platform/graphics/FontCache.cpp: 29063 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): 29064 (WebCore::FontPlatformDataCacheKey::operator==): 29065 (WebCore::computeHash): 29066 (WebCore::FontCache::getCachedFontPlatformData): 29067 * platform/graphics/FontDescription.h: 29068 (WebCore::FontDescription::FontDescription): 29069 (WebCore::FontDescription::operator==): 29070 * platform/graphics/FontOrientation.h: Removed. 29071 * platform/graphics/SimpleFontData.h: 29072 * platform/graphics/cairo/FontCustomPlatformData.cpp: 29073 (WebCore::FontCustomPlatformData::fontPlatformData): 29074 * platform/graphics/cairo/FontCustomPlatformData.h: 29075 * platform/graphics/cocoa/FontPlatformData.h: 29076 (WebCore::FontPlatformData::FontPlatformData): 29077 (WebCore::FontPlatformData::hash): 29078 (WebCore::FontPlatformData::operator==): 29079 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 29080 (WebCore::FontPlatformData::FontPlatformData): 29081 (WebCore::FontPlatformData::operator=): 29082 (WebCore::FontPlatformData::allowsLigatures): 29083 (WebCore::FontPlatformData::description): 29084 * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: 29085 (WebCore::FontCustomPlatformData::fontPlatformData): 29086 * platform/graphics/haiku/FontCustomPlatformData.cpp: 29087 (WebCore::FontCustomPlatformData::fontPlatformData): 29088 * platform/graphics/haiku/FontCustomPlatformData.h: 29089 * platform/graphics/mac/FontCacheMac.mm: 29090 (WebCore::FontCache::getFontDataForCharacters): 29091 (WebCore::FontCache::createFontPlatformData): 29092 * platform/graphics/mac/FontCustomPlatformData.cpp: 29093 (WebCore::FontCustomPlatformData::fontPlatformData): 29094 * platform/graphics/mac/FontCustomPlatformData.h: 29095 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: 29096 (WebCore::GlyphPage::fill): 29097 * platform/graphics/mac/SimpleFontDataCoreText.cpp: 29098 (WebCore::SimpleFontData::getCFStringAttributes): 29099 * platform/graphics/mac/SimpleFontDataMac.mm: 29100 (WebCore::SimpleFontData::platformBoundsForGlyph): 29101 (WebCore::SimpleFontData::platformWidthForGlyph): 29102 * platform/graphics/qt/FontCustomPlatformData.h: 29103 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: 29104 (WebCore::FontCustomPlatformData::fontPlatformData): 29105 * platform/graphics/skia/FontCustomPlatformData.cpp: 29106 (WebCore::FontCustomPlatformData::fontPlatformData): 29107 * platform/graphics/skia/FontCustomPlatformData.h: 29108 * platform/graphics/win/FontCustomPlatformData.cpp: 29109 (WebCore::FontCustomPlatformData::fontPlatformData): 29110 * platform/graphics/win/FontCustomPlatformData.h: 29111 * platform/graphics/win/FontCustomPlatformDataCairo.cpp: 29112 (WebCore::FontCustomPlatformData::fontPlatformData): 29113 * platform/graphics/win/FontCustomPlatformDataCairo.h: 29114 * platform/graphics/wince/FontCustomPlatformData.cpp: 29115 (WebCore::FontCustomPlatformData::fontPlatformData): 29116 * platform/graphics/wince/FontCustomPlatformData.h: 29117 * platform/graphics/wx/FontCustomPlatformData.cpp: 29118 (WebCore::FontCustomPlatformData::fontPlatformData): 29119 * platform/graphics/wx/FontCustomPlatformData.h: 29120 29121 2010-10-21 Carlos Garcia Campos <cgarcia (a] igalia.com> 29122 29123 Reviewed by Martin Robinson. 29124 29125 [GTK] Tests LayoutTests/fast/encoding/utf-32* fail when using glib unicode 29126 https://bugs.webkit.org/show_bug.cgi?id=47805 29127 29128 Register UTF-32 encodings in TextCodecGtk. 29129 29130 * platform/text/gtk/TextCodecGtk.cpp: 29131 (WebCore::TextCodecGtk::registerBaseEncodingNames): 29132 (WebCore::TextCodecGtk::registerBaseCodecs): 29133 29134 2010-10-21 Luiz Agostini <luiz.agostini (a] openbossa.org> 29135 29136 Reviewed by Darin Adler. 29137 29138 Adding MediaQueryListListener binding test cases 29139 https://bugs.webkit.org/show_bug.cgi?id=48028 29140 29141 MediaQueryListListener type will need special handling of the code generators. Adding the test cases. 29142 29143 * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp: Added. 29144 (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListenerPrivate::WebDOMTestMediaQueryListListenerPrivate): 29145 (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListener): 29146 (WebDOMTestMediaQueryListListener::operator=): 29147 (WebDOMTestMediaQueryListListener::impl): 29148 (WebDOMTestMediaQueryListListener::~WebDOMTestMediaQueryListListener): 29149 (WebDOMTestMediaQueryListListener::method): 29150 (toWebCore): 29151 (toWebKit): 29152 * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.h: Added. 29153 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: Added. 29154 (WebKit::kit): 29155 (webkit_dom_test_media_query_list_listener_method): 29156 (WebKit::core): 29157 (webkit_dom_test_media_query_list_listener_finalize): 29158 (webkit_dom_test_media_query_list_listener_set_property): 29159 (webkit_dom_test_media_query_list_listener_get_property): 29160 (webkit_dom_test_media_query_list_listener_constructed): 29161 (webkit_dom_test_media_query_list_listener_class_init): 29162 (webkit_dom_test_media_query_list_listener_init): 29163 (WebKit::wrapTestMediaQueryListListener): 29164 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h: Added. 29165 * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h: Added. 29166 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Added. 29167 (WebCore::JSTestMediaQueryListListenerConstructor::classInfo): 29168 (WebCore::JSTestMediaQueryListListenerConstructor::createStructure): 29169 (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor): 29170 (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot): 29171 (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertyDescriptor): 29172 (WebCore::JSTestMediaQueryListListenerPrototype::self): 29173 (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot): 29174 (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertyDescriptor): 29175 (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener): 29176 (WebCore::JSTestMediaQueryListListener::~JSTestMediaQueryListListener): 29177 (WebCore::JSTestMediaQueryListListener::createPrototype): 29178 (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot): 29179 (WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor): 29180 (WebCore::jsTestMediaQueryListListenerConstructor): 29181 (WebCore::JSTestMediaQueryListListener::getConstructor): 29182 (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod): 29183 (WebCore::toJS): 29184 (WebCore::toTestMediaQueryListListener): 29185 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h: Added. 29186 (WebCore::JSTestMediaQueryListListener::classInfo): 29187 (WebCore::JSTestMediaQueryListListener::createStructure): 29188 (WebCore::JSTestMediaQueryListListener::impl): 29189 (WebCore::JSTestMediaQueryListListenerPrototype::classInfo): 29190 (WebCore::JSTestMediaQueryListListenerPrototype::createStructure): 29191 (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype): 29192 * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.h: Added. 29193 * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.mm: Added. 29194 (-[DOMTestMediaQueryListListener dealloc]): 29195 (-[DOMTestMediaQueryListListener finalize]): 29196 (-[DOMTestMediaQueryListListener method:]): 29197 (core): 29198 (kit): 29199 * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h: Added. 29200 * bindings/scripts/test/TestMediaQueryListListener.idl: Added. 29201 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Added. 29202 (WebCore::TestMediaQueryListListenerInternal::V8_USE): 29203 (WebCore::TestMediaQueryListListenerInternal::methodCallback): 29204 (WebCore::ConfigureV8TestMediaQueryListListenerTemplate): 29205 (WebCore::V8TestMediaQueryListListener::GetRawTemplate): 29206 (WebCore::V8TestMediaQueryListListener::GetTemplate): 29207 (WebCore::V8TestMediaQueryListListener::HasInstance): 29208 (WebCore::V8TestMediaQueryListListener::wrapSlow): 29209 (WebCore::V8TestMediaQueryListListener::derefObject): 29210 * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: Added. 29211 (WebCore::V8TestMediaQueryListListener::toNative): 29212 (WebCore::V8TestMediaQueryListListener::wrap): 29213 (WebCore::toV8): 29214 29215 2010-10-21 takano takumi <takano1 (a] asia.apple.com> 29216 29217 Reviewed by Dan Bernstein. 29218 29219 Need to swap glyphs for vertical writing 29220 https://bugs.webkit.org/show_bug.cgi?id=46973 29221 29222 Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData, 29223 and ultimately to CoreText APIs in both font complex path and fast path. 29224 29225 Tests: fast/text/international/vertical-text-glyph-test.html 29226 fast/text/international/vertical-text-metrics-test.html 29227 29228 * WebCore.exp.in: 29229 * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h. 29230 * css/CSSFontFaceSource.cpp: 29231 (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData. 29232 * css/CSSStyleSelector.cpp: 29233 (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description 29234 when writing-mode is being specified. 29235 * loader/CachedFont.cpp: 29236 (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData. 29237 * loader/CachedFont.h: 29238 * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey 29239 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): 29240 (WebCore::FontPlatformDataCacheKey::operator==): 29241 (WebCore::computeHash): 29242 (WebCore::FontCache::getCachedFontPlatformData): 29243 * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class 29244 (WebCore::FontDescription::FontDescription): 29245 (WebCore::FontDescription::orientation): 29246 (WebCore::FontDescription::setOrientation): 29247 (WebCore::FontDescription::operator==): 29248 * platform/graphics/FontOrientation.h: Added. 29249 * platform/graphics/SimpleFontData.h: 29250 * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29251 (WebCore::FontCustomPlatformData::fontPlatformData): 29252 * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29253 * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class 29254 (WebCore::FontPlatformData::FontPlatformData): 29255 (WebCore::FontPlatformData::orientation): 29256 (WebCore::FontPlatformData::hash): 29257 (WebCore::FontPlatformData::operator==): 29258 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support 29259 (WebCore::FontPlatformData::FontPlatformData): 29260 (WebCore::FontPlatformData::operator=): 29261 (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation. 29262 (WebCore::FontPlatformData::description): 29263 * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData() 29264 (WebCore::FontCustomPlatformData::fontPlatformData): 29265 * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29266 (WebCore::FontCustomPlatformData::fontPlatformData): 29267 * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29268 * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object. 29269 (WebCore::FontCache::getFontDataForCharacters): 29270 (WebCore::FontCache::createFontPlatformData): 29271 * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object. 29272 (WebCore::FontCustomPlatformData::fontPlatformData): 29273 * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData() 29274 * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: 29275 (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation. 29276 CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical. 29277 * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine. 29278 (WebCore::SimpleFontData::getCFStringAttributes): 29279 * platform/graphics/mac/SimpleFontDataMac.mm: 29280 (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics. 29281 (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances, 29282 to get vertical metrics when the font orientation is vertical. 29283 * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29284 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData() 29285 (WebCore::FontCustomPlatformData::fontPlatformData): 29286 * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29287 (WebCore::FontCustomPlatformData::fontPlatformData): 29288 * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29289 * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29290 (WebCore::FontCustomPlatformData::fontPlatformData): 29291 * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29292 * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData() 29293 (WebCore::FontCustomPlatformData::fontPlatformData): 29294 * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData() 29295 * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29296 (WebCore::FontCustomPlatformData::fontPlatformData): 29297 * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29298 * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData() 29299 (WebCore::FontCustomPlatformData::fontPlatformData): 29300 * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData() 29301 29302 2010-10-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 29303 29304 Reviewed by Dirk Schulze. 29305 29306 Redesign SVGAnimatedProperty concept to share "POD type wrappers" between all bindings (-> add ObjC SVG bindings) 29307 https://bugs.webkit.org/show_bug.cgi?id=47905 29308 29309 Tests: svg/dom/SVGLengthList-appendItem.xhtml 29310 svg/dom/SVGLengthList-basics.xhtml 29311 svg/dom/SVGLengthList-getItem.xhtml 29312 svg/dom/SVGLengthList-initialize.xhtml 29313 svg/dom/SVGLengthList-insertItemBefore.xhtml 29314 svg/dom/SVGLengthList-removeItem.xhtml 29315 svg/dom/SVGLengthList-replaceItem.xhtml 29316 svg/dom/SVGLengthList-xml-dom-modifications.xhtml 29317 29318 Introduce a more lightweight, less intrusive way to expose SVGAnimated* DOM bindings. 29319 29320 Concrete example: 29321 The SVG DOM defines a 'SVGAnimatedLength' object, that's used to represent the x / y / width / height attributes of a 'SVGRectElement'. 29322 Each 'SVGAnimatedLength' object exposes a baseVal (markup defined attribute value) and an animVal (reflects the current state during animations), 29323 both of type 'SVGLength'. These objects are all _live_. That means you can do: 29324 var foobar = rect.x.baseVal; foobar.value += 150; 29325 29326 If we'd implement the SVG DOM straightforward, we'd have to store a refcounted SVGAnimatedLength object, containing two refcounted SVGLength objects 29327 in SVGRectElement, for each of the x/y/width/height attributes. Our solution, to reduce memory footprint and increase performance is to store 29328 SVGLength stack-allocated, non refcounted types in SVGRectElement for x/y/width/height, and don't implement the SVGAnimatedLength object at all. 29329 29330 In the past the JS bindings had to expose wrappers for SVGAnimatedLength on their own, and wrap each SVGLength object in an object called JSSVGPODTypeWrapper<SVGLength>. 29331 When JS changed the 'value' of the 'SVGLength', we constructed a copy of the SVGLength object, modified it, and called rectElement->setXBaseValue(newLength). 29332 This is not efficient at all, as we have to construct several copies of the SVGLength object, utilize callbacks to propagate the value changes in the SVG DOM. 29333 Furthermore, all bindings had to expose a similar concept, otherwhise SVG DOM wouldn't work. Up until now, only JSC and V8 bindings were available, that worked properly. 29334 29335 The new SVGAnimatedProperty concept removes the need for JSSVGPODTypeWrapper (and friends like JSSVGContextCache, that associated a SVGLength with its SVGRectElement). 29336 Instead a solution is offered, that all bindings can use simultaneously, without adding new types or special concepts like JSSVGPODTypeWrapper. 29337 29338 It works like this: 29339 A new refcounted SVGAnimatedProperty<PropertyType> template class is available, that stores a QualifiedName to associate the SVG DOM property with a XML DOM attribute. 29340 It also stores a RefPtr to the SVGElement that created it. 29341 29342 In SVGRectElement we still store SVGLength m_x/m_y/m_width/m_height members, and offer a new "xAnimated()" method which looks up or creates a SVGAnimatedProperty<SVGLength> 29343 object. The JS/V8/ObjC bindings call this method whenever someone requests "rect.x/y/width/height", and a new wrapper is created, and stored in a HashMap. 29344 29345 The SVGAnimatedProperty<PropertyType> is a base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff, the latter is used for all types of lists (SVGLengthList). 29346 SVGAnimatedProperty contains two methods used in the bindings: SVGProperty* baseVal and SVGProperty* animVal. SVGProperty is a base class for SVGPropertyTearOff and 29347 SVGListPropertyTearOff. Upon invocation of the baseVal/animVal methods a new SVG(List)PropertyTearOff object is created and stored in a RefPtr. 29348 The SVGPropertyTearOff objects stores a _reference_ to the type it wraps. Concrete example: 29349 When calling rect.x, a SVGAnimatedPropertyTearOff<SVGLength> is created, that stores a pointer to the SVGRectElement, and a SVGNames::xAttr. 29350 When calling rect.x.baseVal, a SVGPropertyTearOf<SVGLength> is created, that stores a reference to the "m_x" member variable of the SVGRectElement. 29351 Any changes applied to the SVGLength object, through the wrapper, are immediately live, as no copies are involved anymore, nor the need to fire any callback methods. 29352 This is the key concept of the new tear offs, no copies, no callbacks, no virtual methods (except one, needed for lists, but it's a detail). 29353 29354 The SVGAnimatedListPropertyTearOff and SVGListPropertyTearOff work the same, but for SVG*List objects. The whole SVG*List API is _removed_ from the SVG DOM classes 29355 like SVGLengthList. It now inherits from Vector<SVGLength>, where it used to store a Vector<RefPtr<SVGListItem<SVGLength> > >. The SVGList API (insertItemBefore, appendItem, etc.) 29356 is exposed through SVGListPropertyTearOff, and there's no need anymore for SVGLengthList to deal with it at all. 29357 SVGLengthList is live just like most other SVG DOM object. Concrete example: 29358 var item0 = text.x.baseVal.getItem(0); item0.value += 150; 29359 29360 Previously we chose to store a refcounted SVGListItem object, which wrapped the SVGLength object, to achieve liveness. We could change a single list item from DOM 29361 w/o copying the whole list. The drawback is that a simple type likeSVGLengthList, was heavy to store, as it contained a list of RefPtrs around a wrapper object 29362 around the real object 'SVGLength'. This complexity is completly gone. 29363 29364 The SVGListPropertyTearOff<SVGLengthList> stores a reference to the SVGLengthList object (eg. SVGTextElement::m_x) and maintains a list of SVGPropertyTearOff<SVGLength> 29365 wrappers, that are created when necessary (getItem(2), will create a wrapper around the third list item), and cached. These SVGPropertyTearOff<SVGLength> objects 29366 store references to the SVGLength object _in the SVGLengthList_. One has to be extra carefully, to keep those lists synchronized. 29367 The SVGLengthList API is fully implemented for the first time, including moving items between lists, and is extensively tested with 8 new testcases. 29368 29369 This patch only changed SVGLength/SVGLengthList to the new concept. All other types remain using the old DeprecatedSVGAnimatedProperty* concept. 29370 This will change in follow-up patches. 29371 29372 * GNUmakefile.am: Add new files from svg/properties to build. 29373 * WebCore.gypi: Ditto. 29374 * WebCore.pro: Ditto. 29375 * WebCore.vcproj/WebCore.vcproj: Ditto. 29376 * WebCore.xcodeproj/project.pbxproj: Ditto. 29377 * bindings/js/JSSVGLengthCustom.cpp: Adapt to context cache removal for SVGLength. 29378 (WebCore::JSSVGLength::value): 29379 (WebCore::JSSVGLength::convertToSpecifiedUnits): 29380 * bindings/scripts/CodeGenerator.pm: Add new isSVGNewStyleAnimatedProperty() helper method, return true for "SVGAnimatedLength" and "SVGAnimatedLengthList". 29381 * bindings/scripts/CodeGeneratorJS.pm: Generate new style SVG JS bindings, that don't need JSSVGContextCache / JSSVGPODTypeWrapper. 29382 * bindings/scripts/CodeGeneratorObjC.pm: Ditto. (+ Finally expose a working set of SVG DOM API for Objective C). 29383 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 29384 * bindings/v8/custom/V8SVGLengthCustom.cpp: Adapt to context cache removal for SVGLength. 29385 (WebCore::V8SVGLength::valueAccessorGetter): 29386 (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback): 29387 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: 29388 (WebCore::extractFloatValuesFromSVGLengthList): SVGLengthList is a POD type now, passed as const reference. 29389 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove handling for SVGLength/SVGLengthList, those are converted to the new SVGAnimatedProperty design now. 29390 * svg/DeprecatedSVGAnimatedTemplate.h: Ditto. 29391 * svg/SVGAnimatedLength.h: Added. 29392 * svg/SVGAnimatedLength.idl: Mark as [SVGAnimatedProperty]. 29393 * svg/SVGAnimatedLengthList.h: Added. 29394 * svg/SVGAnimatedLengthList.idl: Mark as [SVGAnimatedProperty]. 29395 * svg/SVGCircleElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished. 29396 * svg/SVGCursorElement.h: Ditto. 29397 * svg/SVGEllipseElement.h: Ditto. 29398 * svg/SVGFilterElement.h: Ditto. 29399 * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto. 29400 * svg/SVGForeignObjectElement.h: Ditto. 29401 * svg/SVGImageElement.h: Ditto. 29402 * svg/SVGLength.idl: Mark as [SVGProperty]. 29403 * svg/SVGLengthList.cpp: Use Vector API (appendItem -> append). No need to ever use the SVGList API internally. SVGLengthList is a Vector<SVGLength> now. 29404 (WebCore::SVGLengthList::parse): 29405 (WebCore::SVGLengthList::valueAsString): 29406 * svg/SVGLengthList.h: Inherit from Vector<SVGLength> - not from the SVGList base class. It's a simple, non-refcounted POD type now. 29407 (WebCore::SVGLengthList::SVGLengthList): 29408 * svg/SVGLengthList.idl: Mark as [SVGListProperty]. 29409 * svg/SVGLineElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished. 29410 * svg/SVGLinearGradientElement.h: Ditto. 29411 * svg/SVGMarkerElement.h: Ditto. 29412 * svg/SVGMaskElement.h: Ditto. 29413 * svg/SVGPatternElement.h: Ditto. 29414 * svg/SVGRadialGradientElement.h: Ditto. 29415 * svg/SVGRectElement.h: Ditto. 29416 * svg/SVGSVGElement.h: Ditto. 29417 * svg/SVGSVGElement.idl: Mark createSVGLength() as [SVGLiveProperty] - a wrapper for the returned object has to be created. 29418 * svg/SVGTextContentElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished. 29419 * svg/SVGTextPathElement.h: Ditto. 29420 * svg/SVGTextPositioningElement.cpp: 29421 (WebCore::SVGTextPositioningElement::SVGTextPositioningElement): 29422 (WebCore::SVGTextPositioningElement::parseMappedAttribute): Detach wrappers pointing to the old x/y/dx/dy list, if the underlying list changes via XML DOM. 29423 (WebCore::listContainsRelativeValue): Adapt to SVGLengthList interface changes, it's a POD type now. 29424 * svg/SVGTextPositioningElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_LIST_PROPERTY_NEW/ until the transition to the new concept is finished. 29425 * svg/SVGUseElement.h: 29426 * svg/properties/SVGAnimatedListPropertyTearOff.h: Added. 29427 * svg/properties/SVGAnimatedProperty.h: Added. This is the base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff. 29428 * svg/properties/SVGAnimatedPropertyDescription.h: Added. Refactored from DeprecatedSVGAnimatedProperty.h. 29429 * svg/properties/SVGAnimatedPropertyMacros.h: Added. These macros will be _removed_ as soon as the transition to the new concept is finished. 29430 * svg/properties/SVGAnimatedPropertyTearOff.h: Added. 29431 * svg/properties/SVGListPropertyTearOff.h: Added. 29432 * svg/properties/SVGProperty.h: Added. This is the base class for SVGPropertyTearOff and SVGListPropertyTearOff. 29433 * svg/properties/SVGPropertyTearOff.h: Added. 29434 * svg/properties/SVGPropertyTraits.h: Added. 29435 29436 2010-10-21 Alex Milowski <alex (a] milowski.com> 29437 29438 Reviewed by Kenneth Rohde Christiansen. 29439 29440 Changed the layout algorithm for rows to avoid unnecessary recursion 29441 into child rows. This solves the long rendering time experienced in 29442 https://bugs.webkit.org/show_bug.cgi?id=43462 as well as reports in 29443 various other bugs. The change in the algorithm required some 29444 tweaks to other rendering objects to make sure that the baseline 29445 alignment still works. 29446 29447 In addition, an attempt was made to go through the various 29448 rendering objects for MathML and reduce unnecessary calls that 29449 mark the tree in need of layout. 29450 29451 * mathml/RenderMathMLFenced.cpp: 29452 * mathml/RenderMathMLFenced.h: 29453 * mathml/RenderMathMLFraction.cpp: 29454 (WebCore::RenderMathMLFraction::layout): 29455 * mathml/RenderMathMLOperator.cpp: 29456 (WebCore::RenderMathMLOperator::stretchToHeight): 29457 * mathml/RenderMathMLRoot.cpp: 29458 (WebCore::RenderMathMLRoot::layout): 29459 * mathml/RenderMathMLRow.cpp: 29460 (WebCore::RenderMathMLRow::layout): 29461 * mathml/RenderMathMLRow.h: 29462 (WebCore::RenderMathMLRow::stretchToHeight): 29463 * mathml/RenderMathMLSubSup.cpp: 29464 (WebCore::RenderMathMLSubSup::addChild): 29465 (WebCore::RenderMathMLSubSup::stretchToHeight): 29466 (WebCore::RenderMathMLSubSup::nonOperatorHeight): 29467 (WebCore::RenderMathMLSubSup::layout): 29468 (WebCore::RenderMathMLSubSup::baselinePosition): 29469 * mathml/RenderMathMLUnderOver.cpp: 29470 (WebCore::RenderMathMLUnderOver::stretchToHeight): 29471 (WebCore::RenderMathMLUnderOver::layout): 29472 (WebCore::RenderMathMLUnderOver::nonOperatorHeight): 29473 * mathml/mathtags.in: 29474 29475 2010-10-21 Evan Martin <evan (a] chromium.org> 29476 29477 Reviewed by Tony Chang. 29478 29479 sqlite: show extended error codes in error logs 29480 https://bugs.webkit.org/show_bug.cgi?id=47859 29481 29482 SQLite can provide "extended" error codes, where extra information 29483 about the error is potentially encoded in the high bits of the error 29484 code. It's only off by default in case older apps rely on equality 29485 testing on the older error codes, which WebKit doesn't do. 29486 29487 * platform/sql/SQLiteDatabase.cpp: 29488 (WebCore::SQLiteDatabase::open): 29489 * platform/sql/SQLiteStatement.cpp: 29490 (WebCore::SQLiteStatement::step): 29491 29492 2010-10-21 Yuta Kitamura <yutak (a] chromium.org> 29493 29494 Reviewed by Yury Semikhatsky. 29495 29496 Web Inspector: Handle WebSocket events via InspectorInstrumentation 29497 https://bugs.webkit.org/show_bug.cgi?id=47968 29498 29499 * inspector/InspectorInstrumentation.cpp: 29500 (WebCore::InspectorInstrumentation::didCreateWebSocketImpl): 29501 (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl): 29502 (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl): 29503 (WebCore::InspectorInstrumentation::didCloseWebSocketImpl): 29504 * inspector/InspectorInstrumentation.h: 29505 (WebCore::InspectorInstrumentation::didCreateWebSocket): 29506 (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest): 29507 (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse): 29508 (WebCore::InspectorInstrumentation::didCloseWebSocket): 29509 * websockets/WebSocketChannel.cpp: 29510 (WebCore::WebSocketChannel::WebSocketChannel): 29511 Now we do not depend on InspectorController to generate a resource identifier. 29512 (WebCore::WebSocketChannel::disconnect): 29513 Check if m_identifier is valid in case we could not obtain an identifier. 29514 (WebCore::WebSocketChannel::didOpen): 29515 (WebCore::WebSocketChannel::didClose): 29516 (WebCore::WebSocketChannel::processBuffer): 29517 * websockets/WebSocketChannel.h: 29518 29519 2010-10-20 Pavel Feldman <pfeldman (a] chromium.org> 29520 29521 Reviewed by Yury Semikhatsky. 29522 29523 Web Inspector: Convert sidebar into the browsing tree in the Storage panel. 29524 https://bugs.webkit.org/show_bug.cgi?id=47988 29525 29526 * English.lproj/localizedStrings.js: 29527 * inspector/front-end/ApplicationCacheItemsView.js: 29528 (WebInspector.ApplicationCacheItemsView): 29529 * inspector/front-end/ConsoleView.js: 29530 (WebInspector.ConsoleMessage.prototype._formatMessage): 29531 * inspector/front-end/CookieItemsView.js: 29532 (WebInspector.CookieItemsView): 29533 * inspector/front-end/DatabaseTableView.js: 29534 (WebInspector.DatabaseTableView.prototype._queryFinished): 29535 * inspector/front-end/StoragePanel.js: 29536 (WebInspector.StoragePanel): 29537 (WebInspector.StoragePanel.prototype.reset): 29538 (WebInspector.StoragePanel.prototype.addDatabase): 29539 (WebInspector.StoragePanel.prototype.addCookieDomain): 29540 (WebInspector.StoragePanel.prototype.addDOMStorage): 29541 (WebInspector.StoragePanel.prototype.addApplicationCache): 29542 (WebInspector.StoragePanel.prototype.showDatabase): 29543 (WebInspector.StoragePanel.prototype.showDOMStorage): 29544 (WebInspector.StoragePanel.prototype.showCookies): 29545 (WebInspector.StoragePanel.prototype.showApplicationCache): 29546 (WebInspector.StoragePanel.prototype.showCategoryView): 29547 (WebInspector.StoragePanel.prototype._innerShowView): 29548 (WebInspector.BaseStorageTreeElement): 29549 (WebInspector.BaseStorageTreeElement.prototype.onattach): 29550 (WebInspector.StorageCategoryTreeElement): 29551 (WebInspector.StorageCategoryTreeElement.prototype.onselect): 29552 (WebInspector.DatabaseTreeElement): 29553 (WebInspector.DatabaseTreeElement.prototype.onselect): 29554 (WebInspector.DatabaseTreeElement.prototype.onpopulate.tableNamesCallback): 29555 (WebInspector.DatabaseTreeElement.prototype.onpopulate): 29556 (WebInspector.DatabaseTableTreeElement): 29557 (WebInspector.DatabaseTableTreeElement.prototype.onselect): 29558 (WebInspector.DOMStorageTreeElement): 29559 (WebInspector.DOMStorageTreeElement.prototype.onselect): 29560 (WebInspector.CookieTreeElement): 29561 (WebInspector.CookieTreeElement.prototype.onselect): 29562 (WebInspector.ApplicationCacheTreeElement): 29563 (WebInspector.ApplicationCacheTreeElement.prototype.onselect): 29564 (WebInspector.StorageCategoryView): 29565 (WebInspector.StorageCategoryView.prototype.setText): 29566 * inspector/front-end/inspector.css: 29567 (.properties-tree ol): 29568 (.properties-tree ol.expanded): 29569 (.database-storage-tree-item .icon): 29570 (.database-table-storage-tree-item .icon): 29571 (.domstorage-storage-tree-item.local-storage .icon): 29572 (.domstorage-storage-tree-item.session-storage .icon): 29573 (.cookie-storage-tree-item .icon): 29574 (.application-cache-storage-tree-item .icon): 29575 (.storage.panel .sidebar): 29576 (.storage.panel .outline-disclosure > ol): 29577 (.storage.panel .outline-disclosure li): 29578 (.storage.panel .outline-disclosure li .selection): 29579 (.storage.panel .sidebar-resizer-vertical): 29580 (.storage-base-tree-element-title): 29581 (.storage.panel .outline-disclosure ol): 29582 (.storage.panel .outline-disclosure li.selected): 29583 (.storage.panel .outline-disclosure .icon): 29584 (.storage-empty-view, .storage-view.table .storage-table-error): 29585 29586 2010-10-21 Carlos Garcia Campos <cgarcia (a] igalia.com> 29587 29588 Reviewed by Martin Robinson. 29589 29590 [GTK] Replace encodings multi-dimensional array with calls to registrar method 29591 https://bugs.webkit.org/show_bug.cgi?id=47990 29592 29593 * platform/text/gtk/TextCodecGtk.cpp: 29594 (WebCore::isEncodingAvailable): 29595 (WebCore::registerEncodingNameIfAvailable): 29596 (WebCore::registerEncodingAliasIfAvailable): 29597 (WebCore::registerCodecIfAvailable): 29598 (WebCore::TextCodecGtk::registerBaseEncodingNames): 29599 (WebCore::TextCodecGtk::registerBaseCodecs): 29600 (WebCore::TextCodecGtk::registerExtendedEncodingNames): 29601 (WebCore::TextCodecGtk::registerExtendedCodecs): 29602 (WebCore::TextCodecGtk::createIConvDecoder): 29603 (WebCore::TextCodecGtk::createIConvEncoder): 29604 * platform/text/gtk/TextCodecGtk.h: 29605 29606 2010-10-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 29607 29608 Unreviewed, rolling out r70040. 29609 http://trac.webkit.org/changeset/70040 29610 https://bugs.webkit.org/show_bug.cgi?id=48042 29611 29612 "Reverting a performance regression detected by page_cycler" 29613 (Requested by hayato on #webkit). 29614 29615 * css/CSSStyleSelector.cpp: 29616 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): 29617 (WebCore::CSSStyleSelector::checkSelector): 29618 * css/CSSStyleSelector.h: 29619 29620 2010-10-19 Simon Fraser <simon.fraser (a] apple.com> 29621 29622 Reviewed by Gavin Barraclough. 29623 29624 https://bugs.webkit.org/show_bug.cgi?id=47851 29625 29626 Avoid buffer overflows in CSSPrimitiveValue's use of 29627 DecimalNumber, and pass the buffer size in InspectorBasicValue. 29628 29629 Test: fast/css/large-value-csstext.html 29630 29631 * css/CSSPrimitiveValue.cpp: 29632 (WebCore::formatNumber): 29633 * inspector/InspectorValues.cpp: 29634 (WebCore::InspectorBasicValue::writeJSON): 29635 29636 2010-10-20 Dumitru Daniliuc <dumi (a] chromium.org> 29637 29638 Reviewed by David Levin. 29639 29640 Add SecurityOrigin::threadsafeCopy() to the list of exported symbols. 29641 https://bugs.webkit.org/show_bug.cgi?id=40655 29642 29643 * WebCore.exp.in: 29644 29645 2010-10-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 29646 29647 Unreviewed, rolling out r70165. 29648 http://trac.webkit.org/changeset/70165 29649 https://bugs.webkit.org/show_bug.cgi?id=48007 29650 29651 It broke tests on Qt bot (Requested by Ossy on #webkit). 29652 29653 * ForwardingHeaders/wtf/text/TextPosition.h: Removed. 29654 * bindings/js/ScriptSourceCode.h: 29655 (WebCore::ScriptSourceCode::ScriptSourceCode): 29656 * bindings/v8/ScheduledAction.cpp: 29657 (WebCore::ScheduledAction::ScheduledAction): 29658 * bindings/v8/ScriptController.cpp: 29659 (WebCore::ScriptController::eventHandlerLineNumber): 29660 (WebCore::ScriptController::eventHandlerColumnNumber): 29661 * bindings/v8/ScriptController.h: 29662 * bindings/v8/ScriptEventListener.cpp: 29663 (WebCore::createAttributeEventListener): 29664 * bindings/v8/ScriptSourceCode.h: 29665 (WebCore::ScriptSourceCode::ScriptSourceCode): 29666 (WebCore::ScriptSourceCode::startLine): 29667 * bindings/v8/V8LazyEventListener.cpp: 29668 (WebCore::V8LazyEventListener::V8LazyEventListener): 29669 (WebCore::V8LazyEventListener::prepareListenerObject): 29670 * bindings/v8/V8LazyEventListener.h: 29671 (WebCore::V8LazyEventListener::create): 29672 * bindings/v8/V8Proxy.cpp: 29673 (WebCore::V8Proxy::compileScript): 29674 (WebCore::V8Proxy::evaluate): 29675 (WebCore::V8Proxy::runScript): 29676 * bindings/v8/V8Proxy.h: 29677 * bindings/v8/WorkerContextExecutionProxy.cpp: 29678 (WebCore::WorkerContextExecutionProxy::evaluate): 29679 (WebCore::WorkerContextExecutionProxy::runScript): 29680 * bindings/v8/WorkerContextExecutionProxy.h: 29681 * bindings/v8/WorkerScriptController.cpp: 29682 (WebCore::WorkerScriptController::evaluate): 29683 * dom/PendingScript.cpp: 29684 (WebCore::PendingScript::releaseElementAndClear): 29685 * dom/PendingScript.h: 29686 (WebCore::PendingScript::PendingScript): 29687 (WebCore::PendingScript::operator=): 29688 (WebCore::PendingScript::startingLineNumber): 29689 * dom/ScriptableDocumentParser.h: 29690 * dom/XMLDocumentParser.h: 29691 * dom/XMLDocumentParserLibxml2.cpp: 29692 (WebCore::XMLDocumentParser::XMLDocumentParser): 29693 (WebCore::XMLDocumentParser::startElementNs): 29694 (WebCore::XMLDocumentParser::endElementNs): 29695 (WebCore::XMLDocumentParser::lineNumber): 29696 (WebCore::XMLDocumentParser::columnNumber): 29697 * dom/XMLDocumentParserQt.cpp: 29698 (WebCore::XMLDocumentParser::XMLDocumentParser): 29699 (WebCore::XMLDocumentParser::parseStartElement): 29700 (WebCore::XMLDocumentParser::parseEndElement): 29701 * html/parser/HTMLDocumentParser.cpp: 29702 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): 29703 (WebCore::HTMLDocumentParser::columnNumber): 29704 * html/parser/HTMLDocumentParser.h: 29705 * html/parser/HTMLScriptRunner.cpp: 29706 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 29707 (WebCore::HTMLScriptRunner::execute): 29708 (WebCore::HTMLScriptRunner::runScript): 29709 * html/parser/HTMLScriptRunner.h: 29710 * html/parser/HTMLTreeBuilder.cpp: 29711 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 29712 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 29713 (WebCore::HTMLTreeBuilder::processEndTag): 29714 (WebCore::HTMLTreeBuilder::processScriptStartTag): 29715 * html/parser/HTMLTreeBuilder.h: 29716 29717 2010-10-20 David Hyatt <hyatt (a] apple.com> 29718 29719 Reviewed by Dan Bernstein. 29720 29721 https://bugs.webkit.org/show_bug.cgi?id=48001 29722 29723 Make boxes place themselves properly in the block direction. Get basic painting working for spans and add a test that 29724 verifies that span painting and replaced element painting (like images) works correctly. 29725 29726 Added fast/blockflow/basic-vertical-line.html 29727 29728 * rendering/InlineBox.cpp: 29729 (WebCore::InlineBox::logicalHeight): 29730 * rendering/InlineFlowBox.cpp: 29731 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 29732 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): 29733 (WebCore::verticalPositionForBox): 29734 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 29735 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 29736 (WebCore::InlineFlowBox::flipLinesInBlockDirection): 29737 (WebCore::InlineFlowBox::paintBoxDecorations): 29738 (WebCore::InlineFlowBox::paintMask): 29739 * rendering/InlineFlowBox.h: 29740 * rendering/style/RenderStyle.h: 29741 (WebCore::InheritedFlags::isFlippedLinesWritingMode): 29742 29743 2010-10-20 Beth Dakin <bdakin (a] apple.com> 29744 29745 Reviewed by Dave Hyatt. 29746 29747 Fix for https://bugs.webkit.org/show_bug.cgi?id=47514 CSS 29748 transforms should affect scrolling 29749 29750 This patch causes topmostPosition, lowestPosition, 29751 leftmostPosition, and rightmostPosition to take transforms into 29752 account. 29753 29754 Compute the topmost/lowest/leftmost/rightmost position without 29755 factoring in the block's transform until the end. 29756 * rendering/RenderBlock.cpp: 29757 (WebCore::RenderBlock::topmostPosition): 29758 (WebCore::RenderBlock::lowestPosition): 29759 (WebCore::RenderBlock::rightmostPosition): 29760 (WebCore::RenderBlock::leftmostPosition): 29761 * rendering/RenderBlock.h: 29762 29763 transformedFrameRect() returns the frameRect() transformed to the 29764 layer's transform. applyLayerTransformToRect() does the same thing 29765 for the input rect. 29766 * rendering/RenderBox.cpp: 29767 (WebCore::RenderBox::applyLayerTransformToRect): 29768 (WebCore::RenderBox::transformedFrameRect): 29769 (WebCore::RenderBox::topmostPosition): 29770 (WebCore::RenderBox::lowestPosition): 29771 (WebCore::RenderBox::rightmostPosition): 29772 (WebCore::RenderBox::leftmostPosition): 29773 * rendering/RenderBox.h: 29774 * rendering/RenderMedia.cpp: 29775 (WebCore::RenderMedia::topmostPosition): 29776 (WebCore::RenderMedia::lowestPosition): 29777 (WebCore::RenderMedia::rightmostPosition): 29778 (WebCore::RenderMedia::leftmostPosition): 29779 * rendering/RenderMedia.h: 29780 * rendering/RenderTableSection.cpp: 29781 (WebCore::RenderTableSection::topmostPosition): 29782 (WebCore::RenderTableSection::lowestPosition): 29783 (WebCore::RenderTableSection::rightmostPosition): 29784 (WebCore::RenderTableSection::leftmostPosition): 29785 * rendering/RenderTableSection.h: 29786 29787 2010-10-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 29788 29789 Not reviewed. 29790 29791 Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty* 29792 https://bugs.webkit.org/show_bug.cgi?id=47973 29793 29794 Copy headers from svg/properties, otherwhise builds from scratch on win are broken. 29795 29796 * WebCore.vcproj/copyForwardingHeaders.cmd: 29797 29798 2010-10-20 Peter Rybin <peter.rybin (a] gmail.com> 29799 29800 Reviewed by Adam Barth. 29801 29802 HTML parser should provide script column position within HTML document to JavaScript engine 29803 https://bugs.webkit.org/show_bug.cgi?id=45271 29804 29805 Replaces line number with TextPosition struct so that script engine 29806 gets script starting line/column. 29807 29808 * ForwardingHeaders/wtf/text/TextPosition.h: Added. 29809 * bindings/js/ScriptSourceCode.h: 29810 (WebCore::ScriptSourceCode::ScriptSourceCode): 29811 * bindings/v8/ScheduledAction.cpp: 29812 (WebCore::ScheduledAction::ScheduledAction): 29813 * bindings/v8/ScriptController.cpp: 29814 (WebCore::ScriptController::eventHandlerPosition): 29815 * bindings/v8/ScriptController.h: 29816 * bindings/v8/ScriptEventListener.cpp: 29817 (WebCore::createAttributeEventListener): 29818 * bindings/v8/ScriptSourceCode.h: 29819 (WebCore::ScriptSourceCode::ScriptSourceCode): 29820 (WebCore::ScriptSourceCode::startLine): 29821 (WebCore::ScriptSourceCode::startPosition): 29822 * bindings/v8/V8LazyEventListener.cpp: 29823 (WebCore::V8LazyEventListener::V8LazyEventListener): 29824 (WebCore::V8LazyEventListener::prepareListenerObject): 29825 * bindings/v8/V8LazyEventListener.h: 29826 (WebCore::V8LazyEventListener::create): 29827 * bindings/v8/V8Proxy.cpp: 29828 (WebCore::V8Proxy::compileScript): 29829 (WebCore::V8Proxy::evaluate): 29830 (WebCore::V8Proxy::runScript): 29831 * bindings/v8/V8Proxy.h: 29832 * bindings/v8/WorkerContextExecutionProxy.cpp: 29833 (WebCore::WorkerContextExecutionProxy::evaluate): 29834 (WebCore::WorkerContextExecutionProxy::runScript): 29835 * bindings/v8/WorkerContextExecutionProxy.h: 29836 * bindings/v8/WorkerScriptController.cpp: 29837 (WebCore::WorkerScriptController::evaluate): 29838 * dom/PendingScript.cpp: 29839 (WebCore::PendingScript::releaseElementAndClear): 29840 * dom/PendingScript.h: 29841 (WebCore::PendingScript::PendingScript): 29842 (WebCore::PendingScript::operator=): 29843 (WebCore::PendingScript::startingPosition): 29844 * dom/ScriptableDocumentParser.h: 29845 * dom/XMLDocumentParser.h: 29846 * dom/XMLDocumentParserLibxml2.cpp: 29847 (WebCore::XMLDocumentParser::XMLDocumentParser): 29848 (WebCore::XMLDocumentParser::startElementNs): 29849 (WebCore::XMLDocumentParser::endElementNs): 29850 (WebCore::XMLDocumentParser::lineNumber): 29851 (WebCore::XMLDocumentParser::columnNumber): 29852 (WebCore::XMLDocumentParser::textPosition): 29853 (WebCore::XMLDocumentParser::textPositionOneBased): 29854 * dom/XMLDocumentParserQt.cpp: 29855 (WebCore::XMLDocumentParser::XMLDocumentParser): 29856 (WebCore::XMLDocumentParser::textPosition): 29857 (WebCore::XMLDocumentParser::parseStartElement): 29858 (WebCore::XMLDocumentParser::parseEndElement): 29859 * html/parser/HTMLDocumentParser.cpp: 29860 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder): 29861 (WebCore::HTMLDocumentParser::textPosition): 29862 * html/parser/HTMLDocumentParser.h: 29863 * html/parser/HTMLScriptRunner.cpp: 29864 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 29865 (WebCore::HTMLScriptRunner::execute): 29866 (WebCore::HTMLScriptRunner::runScript): 29867 * html/parser/HTMLScriptRunner.h: 29868 * html/parser/HTMLTreeBuilder.cpp: 29869 (WebCore::uninitializedPositionValue1): 29870 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 29871 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 29872 (WebCore::HTMLTreeBuilder::processEndTag): 29873 (WebCore::HTMLTreeBuilder::processScriptStartTag): 29874 * html/parser/HTMLTreeBuilder.h: 29875 29876 2010-10-20 David Hyatt <hyatt (a] apple.com> 29877 29878 Reviewed by Simon Fraser. 29879 29880 https://bugs.webkit.org/show_bug.cgi?id=47994 29881 29882 Make computeBlockDirectionPositionsForLine writing-mode-aware. None of the functions it calls are patched yet. 29883 29884 * rendering/RenderBlockLineLayout.cpp: 29885 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): 29886 29887 2010-10-20 John Abd-El-Malek <jam (a] chromium.org> 29888 29889 Reviewed by Darin Fisher. 29890 29891 [chromium] Fix crash when mousing over scrollview 29892 https://bugs.webkit.org/show_bug.cgi?id=47956 29893 29894 Test: plugins/mouse-move-over-plugin-in-frame.html 29895 29896 * platform/Widget.h: 29897 (WebCore::Widget::isPluginContainer): 29898 29899 2010-10-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 29900 29901 Unreviewed, rolling out r70149. 29902 http://trac.webkit.org/changeset/70149 29903 https://bugs.webkit.org/show_bug.cgi?id=47989 29904 29905 "Build breaks in mac and win" (Requested by satish on 29906 #webkit). 29907 29908 * dom/Element.cpp: 29909 (WebCore::Element::computeInheritedLanguage): 29910 * page/SpeechInput.cpp: 29911 (WebCore::SpeechInput::startRecognition): 29912 * page/SpeechInput.h: 29913 * page/SpeechInputClient.h: 29914 * platform/mock/SpeechInputClientMock.cpp: 29915 (WebCore::SpeechInputClientMock::startRecognition): 29916 (WebCore::SpeechInputClientMock::setRecognitionResult): 29917 (WebCore::SpeechInputClientMock::timerFired): 29918 * platform/mock/SpeechInputClientMock.h: 29919 * rendering/TextControlInnerElements.cpp: 29920 (WebCore::TextControlInnerElement::attachInnerElement): 29921 (WebCore::SearchFieldCancelButtonElement::detach): 29922 (WebCore::SpinButtonElement::defaultEventHandler): 29923 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 29924 (WebCore::InputFieldSpeechButtonElement::detach): 29925 29926 2010-10-20 Leandro Gracia Gil <leandrogracia (a] google.com> 29927 29928 Reviewed by Jeremy Orlow. 29929 29930 Patch the current speech input implementation to use and validate the 29931 nearest language tag. The language is now passed to the startRecognition 29932 methods so that language-specific recognition could be used. Also added 29933 a second parameter to setMockSpeechInputResult for the language used in 29934 speech recognition. 29935 https://bugs.webkit.org/show_bug.cgi?id=47089 29936 29937 This is the 2nd of a 4-sided patch in Chromium and WebKit. For more 29938 details see http://codereview.chromium.org/3615005/show and 29939 http://codereview.chromium.org/3595018/show. 29940 29941 Test: fast/speech/input-text-language-tag.html 29942 29943 * dom/Element.cpp: 29944 (WebCore::Element::computeInheritedLanguage): includes a brief character 29945 validation for the BCP 47 language tag. 29946 * page/SpeechInput.cpp: 29947 (WebCore::SpeechInput::startRecognition): 29948 * page/SpeechInput.h: 29949 * page/SpeechInputClient.h: 29950 * platform/mock/SpeechInputClientMock.cpp: 29951 (WebCore::SpeechInputClientMock::startRecognition): 29952 (WebCore::SpeechInputClientMock::setRecognitionResult): results are now 29953 stored by language using a hash map. 29954 (WebCore::SpeechInputClientMock::timerFired): 29955 * platform/mock/SpeechInputClientMock.h: 29956 * rendering/TextControlInnerElements.cpp: 29957 (WebCore::TextControlInnerElement::attachInnerElement): 29958 (WebCore::SearchFieldCancelButtonElement::detach): 29959 (WebCore::SpinButtonElement::defaultEventHandler): 29960 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 29961 (WebCore::InputFieldSpeechButtonElement::detach): 29962 29963 2010-10-20 Dirk Schulze <krit (a] webkit.org> 29964 29965 Reviewed by Nikolas Zimmermann. 29966 29967 Merge ColorSpace and ImageColorSpace enums 29968 https://bugs.webkit.org/show_bug.cgi?id=47922 29969 29970 Merging these two enums makes it easier to implement color-interpolation as well as 29971 color-interpolation-filter for SVG. 29972 Added ColorSpaceLinearRGB to the ColorSpace enum and changed ImageColorSpace to ColorSpace in all related 29973 files. Renamed enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB 29974 to follow webkit style rules. 29975 Removed gray scale support in ImageBuffer since it is not used anymore on WebKit. 29976 29977 * css/CSSPrimitiveValueMappings.h: 29978 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 29979 (WebCore::CSSPrimitiveValue::operator ColorSpace): 29980 * css/CSSStyleSelector.cpp: 29981 (WebCore::CSSStyleSelector::applyProperty): 29982 * editing/SelectionController.cpp: 29983 (WebCore::SelectionController::paintCaret): 29984 * html/HTMLCanvasElement.cpp: 29985 (WebCore::HTMLCanvasElement::paint): 29986 * html/canvas/CanvasRenderingContext2D.cpp: 29987 (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault): 29988 (WebCore::CanvasRenderingContext2D::setShadow): 29989 (WebCore::CanvasRenderingContext2D::applyShadow): 29990 (WebCore::CanvasRenderingContext2D::drawImage): 29991 (WebCore::CanvasRenderingContext2D::drawImageFromRect): 29992 (WebCore::CanvasRenderingContext2D::drawTextInternal): 29993 * html/canvas/CanvasStyle.cpp: 29994 (WebCore::CanvasStyle::applyStrokeColor): 29995 (WebCore::CanvasStyle::applyFillColor): 29996 * inspector/InspectorController.cpp: 29997 (WebCore::drawOutlinedQuad): 29998 (WebCore::InspectorController::drawElementTitle): 29999 * mathml/RenderMathMLBlock.cpp: 30000 (WebCore::RenderMathMLBlock::paint): 30001 * mathml/RenderMathMLFraction.cpp: 30002 (WebCore::RenderMathMLFraction::paint): 30003 * mathml/RenderMathMLRoot.cpp: 30004 (WebCore::RenderMathMLRoot::paint): 30005 * mathml/RenderMathMLSquareRoot.cpp: 30006 (WebCore::RenderMathMLSquareRoot::paint): 30007 * page/FrameView.cpp: 30008 (WebCore::FrameView::paintContents): 30009 * page/PrintContext.cpp: 30010 (WebCore::PrintContext::spoolAllPagesWithBoundaries): 30011 * platform/ScrollView.cpp: 30012 (WebCore::ScrollView::wheelEvent): 30013 * platform/ScrollbarTheme.h: 30014 (WebCore::ScrollbarTheme::paintScrollCorner): 30015 * platform/ScrollbarThemeComposite.cpp: 30016 (WebCore::ScrollbarThemeComposite::paintScrollCorner): 30017 * platform/chromium/PopupMenuChromium.cpp: 30018 (WebCore::PopupContainer::paintBorder): 30019 (WebCore::PopupListBox::paint): 30020 (WebCore::PopupListBox::paintRow): 30021 * platform/chromium/ScrollbarThemeChromium.cpp: 30022 (WebCore::ScrollbarThemeChromium::paintTickmarks): 30023 * platform/chromium/ScrollbarThemeChromiumMac.mm: 30024 (WebCore::ScrollbarThemeChromiumMac::paint): 30025 * platform/graphics/ColorSpace.h: 30026 * platform/graphics/GraphicsContext.cpp: 30027 (WebCore::GraphicsContext::setStrokePattern): 30028 (WebCore::GraphicsContext::setFillPattern): 30029 (WebCore::GraphicsContext::setStrokeGradient): 30030 (WebCore::GraphicsContext::setFillGradient): 30031 * platform/graphics/GraphicsContextPrivate.h: 30032 (WebCore::GraphicsContextState::GraphicsContextState): 30033 * platform/graphics/ImageBuffer.cpp: 30034 (WebCore::ImageBuffer::transformColorSpace): 30035 * platform/graphics/ImageBuffer.h: 30036 (WebCore::ImageBuffer::create): 30037 * platform/graphics/cairo/ImageBufferCairo.cpp: 30038 (WebCore::ImageBuffer::ImageBuffer): 30039 * platform/graphics/cg/ColorCG.cpp: 30040 (WebCore::cachedCGColorSpace): 30041 (WebCore::cachedCGColor): 30042 * platform/graphics/cg/GraphicsContextCG.cpp: 30043 (WebCore::linearRGBColorSpaceRef): 30044 * platform/graphics/cg/GraphicsContextCG.h: 30045 * platform/graphics/cg/ImageBufferCG.cpp: 30046 (WebCore::ImageBuffer::ImageBuffer): 30047 (WebCore::cgImage): 30048 (WebCore::ImageBuffer::draw): 30049 * platform/graphics/cg/ImageBufferData.h: 30050 * platform/graphics/cg/ImageCG.cpp: 30051 (WebCore::imageWithColorSpace): 30052 * platform/graphics/chromium/GLES2Canvas.cpp: 30053 (WebCore::GLES2Canvas::clearRect): 30054 (WebCore::GLES2Canvas::fillRect): 30055 * platform/graphics/chromium/TransparencyWin.cpp: 30056 (WebCore::TransparencyWin::setupLayerForWhiteLayer): 30057 * platform/graphics/filters/FEColorMatrix.cpp: 30058 (WebCore::FEColorMatrix::apply): 30059 * platform/graphics/filters/FEComposite.cpp: 30060 (WebCore::FEComposite::apply): 30061 * platform/graphics/filters/FEFlood.cpp: 30062 (WebCore::FEFlood::apply): 30063 * platform/graphics/filters/FEMerge.cpp: 30064 (WebCore::FEMerge::apply): 30065 * platform/graphics/filters/FEOffset.cpp: 30066 (WebCore::FEOffset::apply): 30067 * platform/graphics/filters/FETile.cpp: 30068 (WebCore::FETile::apply): 30069 * platform/graphics/filters/FilterEffect.cpp: 30070 (WebCore::FilterEffect::effectContext): 30071 * platform/graphics/filters/SourceAlpha.cpp: 30072 (WebCore::SourceAlpha::apply): 30073 * platform/graphics/filters/SourceGraphic.cpp: 30074 (WebCore::SourceGraphic::apply): 30075 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 30076 (WebCore::MediaPlayerPrivateGStreamer::paint): 30077 * platform/graphics/gtk/FontGtk.cpp: 30078 (WebCore::Font::drawComplexText): 30079 * platform/graphics/mac/GraphicsContextMac.mm: 30080 (WebCore::GraphicsContext::drawFocusRing): 30081 * platform/graphics/mac/GraphicsLayerCA.mm: 30082 (WebCore::setLayerBorderColor): 30083 (WebCore::setLayerBackgroundColor): 30084 * platform/graphics/qt/GraphicsContextQt.cpp: 30085 (WebCore::GraphicsContext::GraphicsContext): 30086 * platform/graphics/qt/ImageBufferQt.cpp: 30087 (WebCore::ImageBuffer::ImageBuffer): 30088 (WebCore::ImageBuffer::draw): 30089 * platform/graphics/skia/ImageBufferSkia.cpp: 30090 (WebCore::ImageBuffer::ImageBuffer): 30091 * platform/graphics/skia/PlatformContextSkia.cpp: 30092 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 30093 * platform/graphics/win/FontCGWin.cpp: 30094 (WebCore::Font::drawGlyphs): 30095 * platform/graphics/win/GraphicsContextCGWin.cpp: 30096 (WebCore::GraphicsContext::GraphicsContext): 30097 (WebCore::GraphicsContext::drawFocusRing): 30098 * platform/graphics/win/GraphicsLayerCACF.cpp: 30099 (WebCore::setLayerBorderColor): 30100 (WebCore::setLayerBackgroundColor): 30101 * platform/graphics/win/ImageCGWin.cpp: 30102 (WebCore::BitmapImage::getHBITMAPOfSize): 30103 * platform/graphics/win/ImageCairoWin.cpp: 30104 (WebCore::BitmapImage::getHBITMAPOfSize): 30105 (WebCore::BitmapImage::drawFrameMatchingSourceSize): 30106 * platform/graphics/win/WebLayer.cpp: 30107 (WebCore::WebLayer::drawInContext): 30108 * platform/graphics/wince/GraphicsContextWinCE.cpp: 30109 (WebCore::GraphicsContext::clearRect): 30110 (WebCore::GraphicsContext::fillRect): 30111 * platform/graphics/wince/ImageWinCE.cpp: 30112 (WebCore::BitmapImage::getHBITMAPOfSize): 30113 * platform/graphics/wx/GraphicsContextWx.cpp: 30114 (WebCore::GraphicsContext::GraphicsContext): 30115 * platform/gtk/RenderThemeGtk.cpp: 30116 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): 30117 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): 30118 (WebCore::paintMediaButton): 30119 (WebCore::RenderThemeGtk::paintMediaSliderTrack): 30120 (WebCore::RenderThemeGtk::paintMediaSliderThumb): 30121 * platform/mac/ScrollbarThemeMac.mm: 30122 (WebCore::ScrollbarThemeMac::paint): 30123 * platform/win/PopupMenuWin.cpp: 30124 (WebCore::PopupMenuWin::paint): 30125 * platform/win/WebCoreTextRenderer.cpp: 30126 (WebCore::doDrawTextAtPoint): 30127 * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: 30128 (WebCore::drawTextWithSpacing): 30129 * plugins/PluginView.cpp: 30130 (WebCore::PluginView::paintMissingPluginIcon): 30131 * rendering/RenderLayer.cpp: 30132 (WebCore::RenderLayer::beginTransparencyLayers): 30133 (WebCore::RenderLayer::paintResizer): 30134 * rendering/RenderListMarker.cpp: 30135 (WebCore::RenderListMarker::paint): 30136 * rendering/RenderMediaControlsChromium.cpp: 30137 (WebCore::paintMediaButton): 30138 (WebCore::paintMediaSlider): 30139 (WebCore::paintMediaVolumeSlider): 30140 (WebCore::paintMediaTimelineContainer): 30141 * rendering/RenderSVGImage.cpp: 30142 (WebCore::RenderSVGImage::paint): 30143 * rendering/RenderSVGResourceClipper.cpp: 30144 (WebCore::RenderSVGResourceClipper::applyClippingToContext): 30145 * rendering/RenderSVGResourceFilter.cpp: 30146 (WebCore::RenderSVGResourceFilter::applyResource): 30147 (WebCore::RenderSVGResourceFilter::postApplyResource): 30148 * rendering/RenderSVGResourceGradient.cpp: 30149 (WebCore::createMaskAndSwapContextForTextGradient): 30150 * rendering/RenderSVGResourceMasker.cpp: 30151 (WebCore::RenderSVGResourceMasker::applyResource): 30152 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): 30153 * rendering/RenderSVGResourcePattern.cpp: 30154 (WebCore::RenderSVGResourcePattern::createTileImage): 30155 * rendering/RenderSVGResourceSolidColor.cpp: 30156 (WebCore::RenderSVGResourceSolidColor::applyResource): 30157 * rendering/RenderScrollbarTheme.cpp: 30158 (WebCore::RenderScrollbarTheme::paintScrollCorner): 30159 * rendering/RenderThemeMac.mm: 30160 (WebCore::RenderThemeMac::paintProgressBar): 30161 (WebCore::RenderThemeMac::paintMenuListButton): 30162 * rendering/RenderThemeSafari.cpp: 30163 (WebCore::RenderThemeSafari::paintMenuListButton): 30164 * rendering/RenderThemeWinCE.cpp: 30165 (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton): 30166 (WebCore::RenderThemeWinCE::paintSliderTrack): 30167 (WebCore::RenderThemeWinCE::paintSliderThumb): 30168 * rendering/SVGImageBufferTools.cpp: 30169 (WebCore::SVGImageBufferTools::createImageBuffer): 30170 * rendering/SVGImageBufferTools.h: 30171 * rendering/style/StyleRareInheritedData.cpp: 30172 (WebCore::StyleRareInheritedData::StyleRareInheritedData): 30173 * svg/SVGFEImageElement.cpp: 30174 (WebCore::SVGFEImageElement::build): 30175 * svg/graphics/SVGImage.cpp: 30176 (WebCore::SVGImage::nativeImageForCurrentFrame): 30177 * svg/graphics/filters/SVGFEImage.cpp: 30178 (WebCore::FEImage::apply): 30179 30180 2010-10-20 Dirk Schulze <krit (a] webkit.org> 30181 30182 Reviewed by Andreas Kling. 30183 30184 Remove left over code after moving Cairo port to ShadowContext 30185 https://bugs.webkit.org/show_bug.cgi?id=47929 30186 30187 ImageBufferFilter is not needed anymore, since Cairo is using ShadowContext now. 30188 Made kernelPosition() in FEGaussianBlur a inline function instead of a static function. 30189 30190 * CMakeLists.txt: 30191 * GNUmakefile.am: 30192 * WebCore.gypi: 30193 * WebCore.vcproj/WebCore.vcproj: 30194 * platform/graphics/filters/FEGaussianBlur.cpp: 30195 (WebCore::kernelPosition): 30196 * platform/graphics/filters/FEGaussianBlur.h: 30197 * platform/graphics/filters/ImageBufferFilter.cpp: Removed. 30198 * platform/graphics/filters/ImageBufferFilter.h: Removed. 30199 30200 2010-10-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 30201 30202 Not reviewed. 30203 30204 Fix efl build, by adding the new svg/properties include directory. 30205 30206 * CMakeLists.txt: 30207 30208 2010-10-19 Andrey Kosyakov <caseq (a] chromium.org> 30209 30210 Reviewed by Pavel Feldman. 30211 30212 Web Inspector: expose request/response cookies in HAR 30213 https://bugs.webkit.org/show_bug.cgi?id=47894 30214 30215 Test: inspector/cookie-parser.html 30216 30217 * WebCore.gypi: 30218 * WebCore.vcproj/WebCore.vcproj: 30219 * inspector/front-end/CookieParser.js: Added. 30220 * inspector/front-end/HAREntry.js: 30221 (WebInspector.HAREntry.prototype._buildRequest): 30222 (WebInspector.HAREntry.prototype._buildResponse): 30223 (WebInspector.HAREntry.prototype._buildCookies): 30224 (WebInspector.HAREntry.prototype._buildCookie): 30225 * inspector/front-end/Resource.js: Parse Cookie/Set-Cookie headers and expose cookies. 30226 (WebInspector.Resource.prototype.set requestHeaders): 30227 (WebInspector.Resource.prototype.get requestCookies): 30228 (WebInspector.Resource.prototype.set responseHeaders): 30229 (WebInspector.Resource.prototype.get responseCookies): 30230 (WebInspector.Resource.prototype._parseRequestCookies): 30231 (WebInspector.Resource.prototype._parseResponseCookies): 30232 * inspector/front-end/WebKit.qrc: 30233 * inspector/front-end/inspector.html: 30234 30235 2010-10-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 30236 30237 Not reviewed. 30238 30239 Fix non-mac builds, by adding the new svg/properties include directory. 30240 30241 * GNUmakefile.am: 30242 * WebCore.gyp/WebCore.gyp: 30243 * WebCore.pro: 30244 * WebCore.vcproj/WebCoreCommon.vsprops: 30245 30246 2010-10-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 30247 30248 Reviewed by Adam Roben. 30249 30250 Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty* 30251 https://bugs.webkit.org/show_bug.cgi?id=47973 30252 30253 Prepare fixing bug 47905, redesigning SVGAnimatedProperty. As we're going to move type by type 30254 to the new animated property concept, keep the old one around, marked deprecated, until the 30255 transition is finished. 30256 30257 * GNUmakefile.am: 30258 * WebCore.gypi: 30259 * WebCore.pro: 30260 * WebCore.vcproj/WebCore.vcproj: 30261 * WebCore.xcodeproj/project.pbxproj: 30262 * bindings/scripts/CodeGeneratorObjC.pm: 30263 * bindings/scripts/CodeGeneratorV8.pm: 30264 * svg/DeprecatedSVGAnimatedProperty.h: Copied from svg/SVGAnimatedProperty.h. 30265 (WebCore::DeprecatedSVGAnimatedPropertyTearOff::DeprecatedSVGAnimatedPropertyTearOff): 30266 (WebCore::DeprecatedSVGAnimatedPropertyTearOff::~DeprecatedSVGAnimatedPropertyTearOff): 30267 (WebCore::DeprecatedSVGAnimatedProperty::~DeprecatedSVGAnimatedProperty): 30268 (WebCore::DeprecatedSVGAnimatedProperty::DeprecatedSVGAnimatedProperty): 30269 (WebCore::DeprecatedSVGAnimatedProperty::value): 30270 (WebCore::DeprecatedSVGAnimatedProperty::baseValue): 30271 * svg/DeprecatedSVGAnimatedPropertyTraits.h: Copied from svg/SVGAnimatedPropertyTraits.h. 30272 * svg/DeprecatedSVGAnimatedTemplate.h: Copied from svg/SVGAnimatedTemplate.h. 30273 (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::DeprecatedSVGAnimatedTypeWrapperKey): 30274 (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::operator==): 30275 (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash): 30276 (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::equal): 30277 (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue): 30278 (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue): 30279 (WebCore::DeprecatedSVGAnimatedTemplate::~DeprecatedSVGAnimatedTemplate): 30280 (WebCore::DeprecatedSVGAnimatedTemplate::forgetWrapper): 30281 (WebCore::lookupOrCreateWrapper): 30282 * svg/SVGAnimatedProperty.h: Removed. 30283 * svg/SVGAnimatedPropertySynchronizer.h: Removed. 30284 * svg/SVGAnimatedPropertyTraits.h: Removed. 30285 * svg/SVGAnimatedTemplate.h: Removed. 30286 * svg/SVGElement.h: 30287 * svg/SVGExternalResourcesRequired.h: 30288 * svg/SVGFitToViewBox.h: 30289 * svg/SVGURIReference.h: 30290 * svg/properties: Added. 30291 * svg/properties/SVGAnimatedPropertySynchronizer.h: Copied from svg/SVGAnimatedPropertySynchronizer.h. 30292 30293 2010-10-20 Shinichiro Hamaji <hamaji (a] chromium.org> 30294 30295 Reviewed by Kent Tamura. 30296 30297 absolutely positioned list in inline element crashes 30298 https://bugs.webkit.org/show_bug.cgi?id=45095 30299 30300 Add a NULL check to avoid crash. The rendering result isn't ideal yet. 30301 30302 Test: fast/lists/positioned-count-crash.html 30303 30304 * rendering/RenderListItem.cpp: 30305 (WebCore::previousListItem): 30306 30307 2010-10-19 Adam Roben <aroben (a] apple.com> 30308 30309 Remove uses of CACFContextRef and CARender* from WebCore 30310 30311 These types are now wrapped in a WKCACFContext type exported by 30312 WebKitSystemInterface. 30313 30314 Fixes <http://webkit.org/b/43244>. 30315 30316 Reviewed by Sam Weinig. 30317 30318 * platform/graphics/win/WKCACFContextFlusher.cpp: 30319 (WebCore::WKCACFContextFlusher::addContext): 30320 (WebCore::WKCACFContextFlusher::removeContext): 30321 (WebCore::WKCACFContextFlusher::flushAllContexts): 30322 * platform/graphics/win/WKCACFContextFlusher.h: 30323 Changed to use WKCACFContext. We don't retain/release the context when 30324 putting it into/taking it out of the set. WKCACFContext is not a 30325 ref-counted type, so we can't retain/release it, but the 30326 retain/release was also unnecessary as WKCACFLayerRenderer calls 30327 removeContext before the context is destroyed. 30328 30329 * platform/graphics/win/WKCACFLayer.cpp: 30330 (WebCore::WKCACFLayer::becomeRootLayerForContext): 30331 * platform/graphics/win/WKCACFLayer.h: 30332 Changed to use WKCACFContext. 30333 30334 * platform/graphics/win/WKCACFLayerRenderer.cpp: 30335 (WebCore::WKCACFLayerRenderer::didFlushContext): 30336 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): 30337 (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer): 30338 (WebCore::WKCACFLayerRenderer::layerTreeDidChange): 30339 (WebCore::WKCACFLayerRenderer::createRenderer): 30340 (WebCore::WKCACFLayerRenderer::destroyRenderer): 30341 (WebCore::WKCACFLayerRenderer::render): Also replaced uses of 30342 CGSRegion with WebKitSystemInterface functions/types. 30343 (WebCore::WKCACFLayerRenderer::resetDevice): 30344 * platform/graphics/win/WKCACFLayerRenderer.h: 30345 Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext 30346 with a single WKCACFContext, which wraps all three. We hold a bare 30347 pointer to it and destroy it in our destructor. 30348 30349 2010-10-19 Yongjun Zhang <yongjun_zhang (a] apple.com> 30350 30351 Reviewed by Dan Bernstein. 30352 30353 Pixel cracks when using background image sprite on transformed element at certain scales. 30354 https://bugs.webkit.org/show_bug.cgi?id=47868 30355 30356 The pixel bleeding happens when the current context has scale and interpolation is kCGInterpolationHigh 30357 or kCGInterpolationDefault. If the source rect size is smaller than the intrinsic image size, some 30358 pixels outside of the clip rect will also be used to interpolate the color value for clip edges, which 30359 results in unwanted thin lines around the painted area. We need to use sub-image patch to get rid of 30360 the artifacts in this case. 30361 30362 Test: fast/images/pixel-crack-image-background-webkit-transform-scale.html 30363 30364 * platform/graphics/cg/ImageCG.cpp: 30365 (WebCore::BitmapImage::draw): 30366 30367 2010-10-19 Evan Martin <evan (a] chromium.org> 30368 30369 Reviewed by Tony Chang. 30370 30371 sqlite: remove unused member variable 30372 https://bugs.webkit.org/show_bug.cgi?id=47957 30373 30374 There's no need to save the error code into a member variable 30375 because nobody ever looks at it. 30376 30377 * platform/sql/SQLiteDatabase.cpp: 30378 (WebCore::SQLiteDatabase::open): 30379 * platform/sql/SQLiteDatabase.h: 30380 30381 2010-10-19 Jia Pu <jpu (a] apple.com> 30382 30383 Reviewed by James Robinson. 30384 30385 Moving cursor back to autocorrected word in the same line shouldn't remove the underline 30386 https://bugs.webkit.org/show_bug.cgi?id=47629 30387 <rdar://problem/8546758> 30388 30389 Patch <http://trac.webkit.org/changeset/70071> breaks some Chromium Mac hehavior. This patch 30390 fixes that. 30391 30392 * editing/Editor.cpp: 30393 (WebCore::Editor::respondToChangedSelection): Add "!PLATFORM(MAC)" to make sure nothing changes 30394 on non-Mac platforms. 30395 30396 2010-10-19 Alexey Proskuryakov <ap (a] apple.com> 30397 30398 Build fix (EFL, maybe more). 30399 30400 * CMakeLists.txt: Added platform/Language.cpp here, too. 30401 30402 2010-10-19 Jian Li <jianli (a] chromium.org> 30403 30404 Reviewed by Darin Fisher. 30405 30406 Rename createBlobURL to createObjectURL and revokeBlobURL to 30407 revokeObjectURL per the latest File API spec. 30408 https://bugs.webkit.org/show_bug.cgi?id=47934 30409 30410 * inspector/front-end/ResourcesPanel.js: 30411 (WebInspector.ResourcesPanel.prototype._contextMenu): 30412 * inspector/front-end/utilities.js: 30413 * page/DOMWindow.cpp: 30414 (WebCore::DOMWindow::createObjectURL): 30415 (WebCore::DOMWindow::revokeObjectURL): 30416 * page/DOMWindow.h: 30417 * page/DOMWindow.idl: 30418 * workers/WorkerContext.cpp: 30419 (WebCore::WorkerContext::createObjectURL): 30420 (WebCore::WorkerContext::revokeObjectURL): 30421 * workers/WorkerContext.h: 30422 * workers/WorkerContext.idl: 30423 30424 2010-10-19 Alexey Proskuryakov <ap (a] apple.com> 30425 30426 Reviewed by Anders Carlsson. 30427 30428 https://bugs.webkit.org/show_bug.cgi?id=47933 30429 <rdar://problem/8494337> navigator.language doesn't work in WebKit2 30430 30431 * CMakeListsEfl.txt: 30432 * GNUmakefile.am: 30433 * WebCore.gypi: 30434 * WebCore.pro: 30435 * WebCore.vcproj/WebCore.vcproj: 30436 * WebCore.xcodeproj/project.pbxproj: 30437 * platform/chromium/Language.cpp: Removed. 30438 * platform/chromium/LanguageChromium.cpp: Copied from WebCore/platform/chromium/Language.cpp. 30439 * platform/efl/Language.cpp: Removed. 30440 * platform/efl/LanguageEfl.cpp: Copied from WebCore/platform/efl/Language.cpp. 30441 * platform/gtk/Language.cpp: Removed. 30442 * platform/gtk/LanguageGtk.cpp: Copied from WebCore/platform/gtk/Language.cpp. 30443 * platform/qt/Language.cpp: Removed. 30444 * platform/qt/LanguageQt.cpp: Copied from WebCore/platform/qt/Language.cpp. 30445 * platform/win/Language.cpp: Removed. 30446 * platform/win/LanguageWin.cpp: Copied from WebCore/platform/win/Language.cpp. 30447 * platform/Language.cpp: Added. 30448 Cross platform code is now in platform/Language.cpp. So, I renamed platform files to match 30449 the common pattern. 30450 30451 * WebCore.exp.in: Exported new functions. 30452 30453 * platform/Language.h: Added an ability to force the language, and an ability to set up 30454 listeners for changes (if the platform implements that). Web process will always use the 30455 forced language, as sent to it from UI process. 30456 30457 * platform/mac/Language.mm: Moved code from WebKit. 30458 (WebCore::platformDefaultLanguage): Added code to synchronize user defaults. For some reason, 30459 they come unsynchronized in WebKit2 here, unlike WebKit1. 30460 30461 * page/mac/WebCoreViewFactory.h: Removed defaultLanguageCode. WebCore no longer goes to WebKit 30462 to ask for that. 30463 30464 * platform/mac/WebCoreSystemInterface.h: 30465 * platform/mac/WebCoreSystemInterface.mm: 30466 Added wkCopyCFLocalizationPreferredName(). 30467 30468 2010-10-19 James Simonsen <simonjam (a] chromium.org> 30469 30470 Reviewed by Adam Barth. 30471 30472 Add "in select" insertion mode to parser. 30473 30474 This was added to the spec in: 30475 http://html5.org/tools/web-apps-tracker?from=5520&to=5522 30476 30477 And as a result of: 30478 http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314 30479 30480 https://bugs.webkit.org/show_bug.cgi?id=47706 30481 30482 No new tests. Open to ideas. 30483 30484 * html/parser/HTMLElementStack.cpp: Added "in select" mode. 30485 (WebCore::HTMLNames::isSelectScopeMarker): Ditto. 30486 (WebCore::HTMLElementStack::inSelectScope): Ditto. 30487 * html/parser/HTMLElementStack.h: Ditto. 30488 * html/parser/HTMLTreeBuilder.cpp: 30489 (WebCore::HTMLTreeBuilder::processStartTag): Use "in select" instead of "in table." 30490 (WebCore::HTMLTreeBuilder::processEndTag): Ditto. 30491 30492 2010-10-19 Jeremy Orlow <jorlow (a] chromium.org> 30493 30494 Reviewed by Nate Chapin. 30495 30496 Fix multiple index support in IndexedDB 30497 https://bugs.webkit.org/show_bug.cgi?id=47919 30498 30499 Fix 2 bugs that caused the IndexData of all but the last index to be 30500 properly updated: 30501 * The objectStoreDataId is NOT unique if there are multiple indexes. So 30502 remove the constraint. 30503 * Do not delete all existing entries with that objectStoreDataId before 30504 adding an entry for each index. Only do it once at the beginning. 30505 30506 Test: storage/indexeddb/queued-commands.html 30507 + index-basics.html modified 30508 30509 * storage/IDBFactoryBackendImpl.cpp: 30510 (WebCore::createTables): 30511 * storage/IDBObjectStoreBackendImpl.cpp: 30512 (WebCore::deleteIndexData): 30513 (WebCore::putIndexData): 30514 (WebCore::IDBObjectStoreBackendImpl::putInternal): 30515 30516 2010-10-19 Martin Robinson <mrobinson (a] igalia.com> 30517 30518 Fix the GTK+ build after r70072. The logic looks incorrect, but 30519 this fix tries to preserves it, even so. 30520 30521 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 30522 (baselinePositionForAccessibilityRenderObject): 30523 (getAttributeSetForAccessibilityObject): 30524 30525 2010-10-06 Jer Noble <jer.noble (a] apple.com> 30526 30527 Reviewed by Eric Carlson. 30528 30529 Windows: Implement 'preload=none' 30530 https://bugs.webkit.org/show_bug.cgi?id=47317 30531 <rdar://problem/7718442> 30532 30533 Implement the 'preload=none' identically to the mac implementation. Add three new 30534 ivars: m_preload, m_delayLoad and m_movieURL; and override the MediaPlayerPrivate 30535 functions: prepareToPlay() and setPreload(). 30536 30537 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 30538 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext): 30539 Initialize new ivars m_delayLoad and m_preload. 30540 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::resumeLoad): Added; new. 30541 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Split contents between 30542 load and loadInternal. 30543 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Added; new. 30544 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::prepareToPlay): Added; overrides MediaPlayerPrivate. 30545 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPreload): Added; overrides MediaPlayerPrivate. 30546 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 30547 30548 2010-10-19 Enrica Casucci <enrica (a] apple.com> 30549 30550 Reviewed by Alexey Proskuryakov. 30551 30552 Upstream support of KeyCodes for iOS 30553 https://bugs.webkit.org/show_bug.cgi?id=47857 30554 30555 * platform/cocoa/KeyEventCocoa.mm: 30556 (WebCore::windowsKeyCodeForCharCode): Added special handling of keyCodes for iOS. 30557 30558 2010-10-19 Joseph Pecoraro <joepeck (a] webkit.org> 30559 30560 Reviewed by David Kilzer. 30561 30562 iOS: ASSERT in Cache::adjustSize running layout tests 30563 https://bugs.webkit.org/show_bug.cgi?id=47873 30564 30565 Inside Cache::pruneDeadResources we loop over the LRU lists and make resources purgeable 30566 with Cache::makeResourcePurgeable(). This wasn't taking into account whether the resource 30567 was already purgeable or not, and the makeResourcePurgeable call was always calling 30568 adjustSize(). Now we make sure makeResourcePurgable only adjusts the size of the Cache's 30569 dead sizes when it first marks the resource purgeable. Likewise, if a resource is marked 30570 as purgeable and then evicted, we should not adjust the size again. 30571 30572 The balancing call is when we have a resource that has been marked as purgeable and we 30573 successfully mark it as no longer purgeable in Cache::resourceForURL. 30574 30575 No test added because this requires testing purgeable memory. 30576 30577 * loader/Cache.cpp: 30578 (WebCore::Cache::makeResourcePurgeable): 30579 (WebCore::Cache::evict): 30580 30581 2010-10-19 Vangelis Kokkevis <vangelis (a] chromium.org> 30582 30583 Reviewed by Kenneth Russell. 30584 30585 [chromium] Disable mipmapping for ImageLayer's to prevent memory use and 30586 performance regression. 30587 https://bugs.webkit.org/show_bug.cgi?id=47913 30588 30589 This patch is a straight revert of the patch committed with issue 46493 30590 30591 * platform/graphics/chromium/ContentLayerChromium.cpp: 30592 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 30593 (WebCore::ContentLayerChromium::updateTextureRect): 30594 * platform/graphics/chromium/ContentLayerChromium.h: 30595 (WebCore::ContentLayerChromium::SharedValues::initialized): 30596 * platform/graphics/chromium/ImageLayerChromium.cpp: 30597 (WebCore::ImageLayerChromium::updateContents): 30598 30599 2010-10-18 Zhenyao Mo <zmo (a] google.com> 30600 30601 Reviewed by Kenneth Russell. 30602 30603 gl-teximage.html fails on chromium webkit mac bot 30604 https://bugs.webkit.org/show_bug.cgi?id=47034 30605 30606 * platform/graphics/GraphicsContext3D.cpp: Deal with endians in 16 bit image data. 30607 (WebCore::convertColor16LittleTo8): 30608 (WebCore::convertColor16BigTo8): 30609 (WebCore::doPacking): 30610 * platform/graphics/GraphicsContext3D.h: Ditto. 30611 * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto. 30612 (WebCore::GraphicsContext3D::getImageData): 30613 30614 2010-10-19 David Hyatt <hyatt (a] apple.com> 30615 30616 Reviewed by Dan Bernstein. 30617 30618 https://bugs.webkit.org/show_bug.cgi?id=47841 30619 30620 Rework baselinePosition and lineHeight to be writing-mode-aware. There's a lot of refactoring here to clean up 30621 the method parameters to be more readable and to simplify the subclassing of the various methods in order to 30622 keep the horizontal/vertical querying to a minimum. 30623 30624 * WebCore.xcodeproj/project.pbxproj: 30625 * mathml/RenderMathMLFraction.cpp: 30626 (WebCore::RenderMathMLFraction::baselinePosition): 30627 * mathml/RenderMathMLFraction.h: 30628 * mathml/RenderMathMLOperator.cpp: 30629 (WebCore::RenderMathMLOperator::baselinePosition): 30630 * mathml/RenderMathMLOperator.h: 30631 * mathml/RenderMathMLRow.cpp: 30632 (WebCore::RenderMathMLRow::baselinePosition): 30633 * mathml/RenderMathMLRow.h: 30634 * mathml/RenderMathMLSubSup.cpp: 30635 (WebCore::RenderMathMLSubSup::baselinePosition): 30636 * mathml/RenderMathMLSubSup.h: 30637 * mathml/RenderMathMLUnderOver.cpp: 30638 (WebCore::RenderMathMLUnderOver::layout): 30639 (WebCore::RenderMathMLUnderOver::baselinePosition): 30640 * mathml/RenderMathMLUnderOver.h: 30641 * rendering/InlineBox.h: 30642 (WebCore::InlineBox::baselinePosition): 30643 (WebCore::InlineBox::lineHeight): 30644 * rendering/InlineFlowBox.cpp: 30645 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): 30646 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 30647 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 30648 * rendering/InlineTextBox.cpp: 30649 (WebCore::InlineTextBox::baselinePosition): 30650 (WebCore::InlineTextBox::lineHeight): 30651 * rendering/InlineTextBox.h: 30652 * rendering/RenderBR.cpp: 30653 (WebCore::RenderBR::lineHeight): 30654 * rendering/RenderBR.h: 30655 (WebCore::toRenderBR): 30656 * rendering/RenderBlock.cpp: 30657 (WebCore::RenderBlock::lineHeight): 30658 (WebCore::RenderBlock::baselinePosition): 30659 (WebCore::RenderBlock::firstLineBoxBaseline): 30660 (WebCore::RenderBlock::lastLineBoxBaseline): 30661 (WebCore::RenderBlock::localCaretRect): 30662 * rendering/RenderBlock.h: 30663 * rendering/RenderBlockLineLayout.cpp: 30664 (WebCore::RenderBlock::layoutInlineChildren): 30665 * rendering/RenderBox.cpp: 30666 (WebCore::RenderBox::lineHeight): 30667 (WebCore::RenderBox::baselinePosition): 30668 * rendering/RenderBox.h: 30669 * rendering/RenderBoxModelObject.cpp: 30670 (WebCore::RenderBoxModelObject::verticalPosition): 30671 * rendering/RenderBoxModelObject.h: 30672 * rendering/RenderFileUploadControl.cpp: 30673 (WebCore::RenderFileUploadControl::paintObject): 30674 * rendering/RenderFlexibleBox.cpp: 30675 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 30676 (WebCore::RenderFlexibleBox::layoutVerticalBox): 30677 * rendering/RenderInline.cpp: 30678 (WebCore::RenderInline::lineHeight): 30679 (WebCore::RenderInline::baselinePosition): 30680 * rendering/RenderInline.h: 30681 * rendering/RenderListBox.cpp: 30682 (WebCore::RenderListBox::baselinePosition): 30683 * rendering/RenderListBox.h: 30684 * rendering/RenderListMarker.cpp: 30685 (WebCore::RenderListMarker::lineHeight): 30686 (WebCore::RenderListMarker::baselinePosition): 30687 * rendering/RenderListMarker.h: 30688 * rendering/RenderObject.cpp: 30689 * rendering/RenderObject.h: 30690 * rendering/RenderReplaced.cpp: 30691 * rendering/RenderReplaced.h: 30692 * rendering/RenderSVGRoot.cpp: 30693 * rendering/RenderSVGRoot.h: 30694 * rendering/RenderSlider.cpp: 30695 (WebCore::RenderSlider::baselinePosition): 30696 * rendering/RenderSlider.h: 30697 * rendering/RenderTableCell.cpp: 30698 (WebCore::RenderTableCell::baselinePosition): 30699 * rendering/RenderTableCell.h: 30700 * rendering/RenderTableCol.h: 30701 (WebCore::RenderTableCol::isTableCol): 30702 * rendering/RenderTableRow.h: 30703 * rendering/RenderTableSection.h: 30704 * rendering/RenderText.cpp: 30705 * rendering/RenderText.h: 30706 * rendering/RenderTextControl.cpp: 30707 (WebCore::RenderTextControl::computeLogicalHeight): 30708 * rendering/RenderTextControlMultiLine.cpp: 30709 (WebCore::RenderTextControlMultiLine::baselinePosition): 30710 * rendering/RenderTextControlMultiLine.h: 30711 * rendering/RenderTextControlSingleLine.cpp: 30712 (WebCore::RenderTextControlSingleLine::createInnerTextStyle): 30713 * rendering/RootInlineBox.h: 30714 (WebCore::RootInlineBox::baselinePosition): 30715 (WebCore::RootInlineBox::lineHeight): 30716 * rendering/svg/SVGInlineTextBox.cpp: 30717 (WebCore::SVGInlineTextBox::calculateBoundaries): 30718 30719 2010-10-19 Jia Pu <jpu (a] apple.com> 30720 30721 Reviewed by Adele Peterson. 30722 30723 Moving cursor back to autocorrected word in the same line shouldn't remove the underline 30724 https://bugs.webkit.org/show_bug.cgi?id=47629 30725 <rdar://problem/8546758> 30726 30727 Tests: platform/mac/editing/spelling/click-autocorrected-word.html 30728 platform/mac/editing/spelling/delete-into-autocorrected-word.html 30729 platform/mac/editing/spelling/delete-into-misspelled-word.html 30730 platform/mac/editing/spelling/forward-delete-into-autocorrected-word.html 30731 platform/mac/editing/spelling/move-cursor-around-misspelled-word.html 30732 platform/mac/editing/spelling/move-cursor-to-autocorrected-word.html 30733 platform/mac/editing/spelling/move-cursor-to-beginning-of-autocorrected-word.html 30734 30735 * editing/Editor.cpp: 30736 (WebCore::Editor::respondToChangedSelection): Don't remove misspelling or autocorrection 30737 underlines when cursor is moved onto a word. 30738 30739 2010-10-19 Eric Carlson <eric.carlson (a] apple.com> 30740 30741 Not reviewed. Build fix. 30742 30743 * html/HTMLMediaElement.cpp: 30744 (WebCore::HTMLMediaElement::selectNextSourceChild): Initialize variable to avoid Windows 30745 "potentially uninitialized local variable" warning. 30746 30747 2010-10-19 Eric Carlson <eric.carlson (a] apple.com> 30748 30749 Reviewed by Darin Adler. 30750 30751 https://bugs.webkit.org/show_bug.cgi?id=46763 30752 CRASH in WebCore::ThreadTimers::sharedTimerFiredInternal 30753 30754 Fix crashes caused by moving and deleting <source> element(s) of active media element. 30755 30756 Tests: media/video-source-moved.html 30757 media/video-source-removed.html 30758 30759 * html/HTMLMediaElement.cpp: 30760 (WebCore::HTMLMediaElement::HTMLMediaElement): Add logging. Initialize selectNextSourceChild. 30761 (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto. 30762 (WebCore::HTMLMediaElement::insertedIntoDocument): Ditto. 30763 (WebCore::HTMLMediaElement::removedFromDocument): Ditto. 30764 (WebCore::HTMLMediaElement::scheduleLoad): Ditto. 30765 (WebCore::HTMLMediaElement::setNetworkState): Deal with m_currentSourceNode being null when 30766 the media engine signals a failure by skipping the error message and continuing as usual. 30767 (WebCore::HTMLMediaElement::setVolume): Fix logging typo. 30768 (WebCore::HTMLMediaElement::havePotentialSourceChild): Save and restore m_nextChildNodeToConsider 30769 around call to selectNextSourceChild because they are both significant. 30770 (WebCore::HTMLMediaElement::selectNextSourceChild): Use m_nextChildNodeToConsider to pick 30771 the first node to consider. Bail immediately if it signals that we have already processed 30772 every <source> node. Stach the node following the current source element in m_nextChildNodeToConsider 30773 so we can resume the search even if m_currentSourceNode is removed while it is being processed. 30774 (WebCore::HTMLMediaElement::sourceWasAdded): New, move logic from HTMLSourceElement::insertedIntoTree 30775 here and correct it to deal with a <source> node being inserted immediately after the 30776 current <source> node and a new <source> node being inserted at the end of the list after 30777 all candidates have failed. 30778 (WebCore::HTMLMediaElement::sourceWillBeRemoved): New, deal with current source node and next 30779 potential node being removed. 30780 * html/HTMLMediaElement.h: 30781 (WebCore::HTMLMediaElement::sourceChildEndOfListValue): New, define sentinal value used to indicate 30782 that all nodes have been processed. 30783 30784 * html/HTMLSourceElement.cpp: 30785 (WebCore::HTMLSourceElement::HTMLSourceElement): Add logging. 30786 (WebCore::HTMLSourceElement::insertedIntoTree): Call mediaElement->sourceWasAdded instead 30787 of having logic here. 30788 (WebCore::HTMLSourceElement::willRemove): New, call mediaElement->sourceWillBeRemoved 30789 (WebCore::HTMLSourceElement::scheduleErrorEvent): Add logging. 30790 (WebCore::HTMLSourceElement::cancelPendingErrorEvent): Add logging. 30791 * html/HTMLSourceElement.h: 30792 30793 2010-10-19 Luiz Agostini <luiz.agostini (a] openbossa.org> 30794 30795 Reviewed by Antti Koivisto. 30796 30797 [Qt] WebKit2 MacOS build fix 30798 https://bugs.webkit.org/show_bug.cgi?id=47897 30799 30800 Qt WebKit2 MacOS build fix. 30801 30802 * bridge/npapi.h: 30803 30804 2010-10-19 Philippe Normand <pnormand (a] igalia.com> 30805 30806 Reviewed by Xan Lopez. 30807 30808 [GTK] Soup cache code still has some warnings 30809 https://bugs.webkit.org/show_bug.cgi?id=47733 30810 30811 Fixed some compilation warnings happening with gcc 4.4.5 on 30812 64-bits architecture. 30813 30814 * platform/network/soup/cache/webkit/soup-cache.c: 30815 (webkit_soup_cache_entry_set_freshness): 30816 (close_ready_cb): 30817 30818 2010-10-19 Yury Semikhatsky <yurys (a] chromium.org> 30819 30820 Reviewed by Pavel Feldman. 30821 30822 Web Inspector: crash while trying to step over a function using inspector 30823 https://bugs.webkit.org/show_bug.cgi?id=47902 30824 30825 * inspector/front-end/ScriptsPanel.js: 30826 (WebInspector.ScriptsPanel.prototype.reset): reset scripts panel to resumed state on navigation. 30827 30828 2010-10-19 Ryuan Choi <ryuan.choi (a] samsung.com> 30829 30830 Unreviewed attempt to remove warning in EFL build. 30831 30832 Fix #if to #ifdef. 30833 30834 No new features, so no tests added. 30835 30836 * platform/efl/WidgetEfl.cpp: 30837 (WebCore::Widget::applyFallbackCursor): 30838 30839 2010-10-19 Andreas Kling <kling (a] webkit.org> 30840 30841 Reviewed by Tor Arne Vestb. 30842 30843 [Qt] getImageData returns wrong data for non-0,0 source offset 30844 https://bugs.webkit.org/show_bug.cgi?id=47898 30845 30846 Test: fast/canvas/canvas-getImageData-negative-source.html 30847 30848 * platform/graphics/qt/ImageBufferQt.cpp: 30849 (WebCore::getImageData): Add missing *4's to get correct pixel offset. 30850 30851 2010-10-19 Andreas Kling <kling (a] webkit.org> 30852 30853 Reviewed by Kenneth Rohde Christiansen. 30854 30855 [Qt] Correct initial state of ImageBuffer QPen 30856 https://bugs.webkit.org/show_bug.cgi?id=47804 30857 30858 Have the QPen on ImageBuffers start in Qt::SvgMiterJoin mode. 30859 30860 * platform/graphics/qt/ImageBufferQt.cpp: 30861 (WebCore::ImageBufferData::ImageBufferData): 30862 30863 2010-10-19 Philippe Normand <pnormand (a] igalia.com> 30864 30865 Reviewed by Martin Robinson. 30866 30867 GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay 30868 https://bugs.webkit.org/show_bug.cgi?id=46790 30869 30870 Simple API addition to PlatformVideoWindow to allow 30871 implementations to optionally prepare their own PlatformWidget 30872 before applying the GStreamer XOverlay to it. This will likely be 30873 needed on Mac OSX only. 30874 30875 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 30876 (WebCore::GStreamerGWorld::setWindowOverlay): 30877 * platform/graphics/gstreamer/PlatformVideoWindow.h: 30878 * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: 30879 (PlatformVideoWindow::prepareForOverlay): 30880 * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: 30881 (PlatformVideoWindow::prepareForOverlay): 30882 30883 2010-10-19 Ben Murdoch <benm (a] google.com> 30884 30885 Reviewed by Steve Block. 30886 30887 Missing support for document.createTouch and document.createTouchList 30888 https://bugs.webkit.org/show_bug.cgi?id=47676 30889 30890 These APIs are used by many sites to detect support for touch events. 30891 30892 Implement the APIs according to the documentation at: 30893 http://developer.apple.com/library/safari/#documentation/UserExperience/Reference/DocumentAdditionsReference/DocumentAdditions/DocumentAdditions.html 30894 30895 Tests: fast/events/touch/document-create-touch-list.html 30896 fast/events/touch/document-create-touch.html 30897 30898 * bindings/js/JSBindingsAllInOne.cpp: Add new files to list. 30899 * bindings/js/JSTouchCustom.cpp: Added. 30900 (WebCore::toJSNewlyCreated): 30901 * bindings/js/JSTouchListCustom.cpp: Added. 30902 (WebCore::toJSNewlyCreated): 30903 * bindings/scripts/CodeGeneratorJS.pm: 30904 * dom/Document.cpp: 30905 (WebCore::Document::createTouch): 30906 (WebCore::Document::createTouchList): 30907 * dom/Document.h: 30908 * dom/Document.idl: Add createTouch and createTouchList functions. 30909 * Android.jscbindings.mk: Update makefiles. 30910 * CMakeLists.txt: Ditto. 30911 * GNUmakefile.am: Ditto. 30912 * WebCore.gypi: Ditto. 30913 * WebCore.pro: Ditto. 30914 30915 30916 2010-10-19 Pavel Feldman <pfeldman (a] chromium.org> 30917 30918 Reviewed by Yury Semikhatsky. 30919 30920 Web Inspector: migrate from legacy Object.properties to Object.keys, remove dead code. 30921 https://bugs.webkit.org/show_bug.cgi?id=47890 30922 30923 * inspector/front-end/ConsoleView.js: 30924 (WebInspector.ConsoleView.prototype._reportCompletions): 30925 * inspector/front-end/ElementsPanel.js: 30926 (WebInspector.ElementsPanel): 30927 * inspector/front-end/ExtensionServer.js: 30928 (WebInspector.ExtensionServer.prototype._onGetResources): 30929 * inspector/front-end/HAREntry.js: 30930 (WebInspector.HARLog.prototype.build): 30931 * inspector/front-end/StylesSidebarPane.js: 30932 (WebInspector.StylePropertyTreeElement.prototype.): 30933 (WebInspector.StylePropertyTreeElement.prototype): 30934 * inspector/front-end/utilities.js: 30935 30936 2010-10-19 Pavel Feldman <pfeldman (a] chromium.org> 30937 30938 Reviewed by Yury Semikhatsky. 30939 30940 Web Inspector: do not access ResourcePanel from resources directly. 30941 https://bugs.webkit.org/show_bug.cgi?id=47892 30942 30943 * inspector/front-end/Resource.js: 30944 (WebInspector.Resource.prototype.set documentURL): 30945 (WebInspector.Resource.prototype.set startTime): 30946 (WebInspector.Resource.prototype.set responseReceivedTime): 30947 (WebInspector.Resource.prototype.set endTime): 30948 (WebInspector.Resource.prototype.set resourceSize): 30949 (WebInspector.Resource.prototype.set expectedContentLength): 30950 (WebInspector.Resource.prototype.set category): 30951 (WebInspector.Resource.prototype.set cached): 30952 (WebInspector.Resource.prototype.set mimeType): 30953 (WebInspector.Resource.prototype.get requestHeaders): 30954 (WebInspector.Resource.prototype.set requestHeaders): 30955 (WebInspector.Resource.prototype.get responseHeaders): 30956 (WebInspector.Resource.prototype.set responseHeaders): 30957 * inspector/front-end/ResourcesPanel.js: 30958 (WebInspector.ResourcesPanel.prototype.addResource): 30959 (WebInspector.ResourcesPanel.prototype.refreshResource): 30960 (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded): 30961 (WebInspector.ResourcesPanel.prototype._resourceViewIsConsistentWithCategory): 30962 (WebInspector.ResourceGraph): 30963 (WebInspector.ResourceGraph.prototype.refresh): 30964 * inspector/front-end/inspector.js: 30965 (WebInspector.updateResource): 30966 30967 2010-10-19 Yuta Kitamura <yutak (a] chromium.org> 30968 30969 Reviewed by Pavel Feldman. 30970 30971 Make sure WebSocket resource has the url field when it is created. 30972 30973 Web Inspector: Uncaught TypeError when connection to WebSocket server is refused 30974 https://bugs.webkit.org/show_bug.cgi?id=47891 30975 30976 * inspector/InspectorResource.cpp: 30977 (WebCore::InspectorResource::createWebSocket): 30978 30979 2010-10-19 Hayato Ito <hayato (a] chromium.org> 30980 30981 Reviewed by Darin Adler. 30982 30983 Make CSS style selector non-recursive. 30984 https://bugs.webkit.org/show_bug.cgi?id=43783 30985 30986 This change is one of the required changes to fix the following master bug: 30987 https://bugs.webkit.org/show_bug.cgi?id=42806 30988 30989 To avoid recursion, we prepare a call stack and maintain a list of 30990 function call state by ourselves and try matching iteratively. 30991 30992 Test: fast/css/long-css-selector-matches.html 30993 30994 * css/CSSStyleSelector.cpp: 30995 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): 30996 (WebCore::CSSStyleSelector::checkSelector): 30997 * css/CSSStyleSelector.h: 30998 30999 2010-10-19 Sheriff Bot <webkit.review.bot (a] gmail.com> 31000 31001 Unreviewed, rolling out r70034. 31002 http://trac.webkit.org/changeset/70034 31003 https://bugs.webkit.org/show_bug.cgi?id=47889 31004 31005 "Gustavo's bot is lame" (Requested by xan_ on #webkit). 31006 31007 * platform/network/soup/CookieJarSoup.cpp: 31008 (WebCore::defaultCookieJar): 31009 (WebCore::setCookies): 31010 * platform/network/soup/ResourceHandleSoup.cpp: 31011 (WebCore::ResourceHandle::prepareForURL): 31012 (WebCore::restartedCallback): 31013 (WebCore::startHttp): 31014 * platform/network/soup/ResourceRequestSoup.cpp: 31015 (WebCore::ResourceRequest::toSoupMessage): 31016 (WebCore::ResourceRequest::updateFromSoupMessage): 31017 31018 2010-10-19 Xan Lopez <xlopez (a] igalia.com> 31019 31020 Reviewed by Martin Robinson. 31021 31022 [GTK] Bump minimum requirement for libsoup to 2.30 31023 https://bugs.webkit.org/show_bug.cgi?id=46176 31024 31025 Bump minimum required libsoup version to 2.30. 31026 31027 * platform/network/soup/CookieJarSoup.cpp: 31028 (WebCore::defaultCookieJar): 31029 (WebCore::setCookies): 31030 * platform/network/soup/ResourceHandleSoup.cpp: 31031 (WebCore::ResourceHandle::prepareForURL): 31032 (WebCore::restartedCallback): 31033 (WebCore::startHttp): 31034 * platform/network/soup/ResourceRequestSoup.cpp: 31035 (WebCore::ResourceRequest::toSoupMessage): 31036 (WebCore::ResourceRequest::updateFromSoupMessage): 31037 31038 2010-10-19 Xan Lopez <xlopez (a] igalia.com> 31039 31040 Reviewed by Martin Robinson. 31041 31042 Fix distcheck, take 2. 31043 31044 * GNUmakefile.am: also move the generated CSS hash files to the 31045 build dir. 31046 31047 2010-10-18 Kent Tamura <tkent (a] chromium.org> 31048 31049 Reviewed by Dimitri Glazkov. 31050 31051 Should not save state of a detached form control. 31052 https://bugs.webkit.org/show_bug.cgi?id=47811 31053 31054 Test: fast/forms/state-save-of-detached-control.html 31055 31056 * html/HTMLFormControlElement.cpp: 31057 (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState): 31058 If the node is detached, don't save the state. 31059 31060 2010-10-18 Xan Lopez <xlopez (a] igalia.com> 31061 31062 Reviewed by Martin Robinson. 31063 31064 * GNUmakefile.am: add missing files. 31065 31066 2010-10-18 Oliver Hunt <oliver (a] apple.com> 31067 31068 Reviewed by Sam Weinig. 31069 31070 REGRESSION: Feedly extension crashes Webkit 31071 https://bugs.webkit.org/show_bug.cgi?id=45811 31072 31073 The basic problem was the deserializer was holding a pointer into 31074 the constant pool, but if you were sufficiently unlucky then the 31075 constant pool would be moved while still relying on the pointer, 31076 which leads to badness. 31077 31078 I looked at just making all the sites this could happen extract the 31079 right string/jsstring before any possible allocations, but it seemed 31080 too fragile so i've gone for a forwarding object as the solution. 31081 31082 * bindings/js/SerializedScriptValue.cpp: 31083 (WebCore::CloneDeserializer::CachedStringRef::CachedStringRef): 31084 (WebCore::CloneDeserializer::CachedStringRef::operator->): 31085 (WebCore::CloneDeserializer::readStringData): 31086 (WebCore::CloneDeserializer::readFile): 31087 (WebCore::CloneDeserializer::readTerminal): 31088 (WebCore::CloneDeserializer::deserialize): 31089 31090 2010-10-18 Chris Rogers <crogers (a] google.com> 31091 31092 Reviewed by Chris Fleizach. 31093 31094 Add AudioResampler files 31095 https://bugs.webkit.org/show_bug.cgi?id=47623 31096 31097 No new tests since audio API is not yet implemented. 31098 31099 * platform/audio/AudioResampler.cpp: Added. 31100 (WebCore::AudioResampler::AudioResampler): 31101 (WebCore::AudioResampler::configureChannels): 31102 (WebCore::AudioResampler::process): 31103 (WebCore::AudioResampler::setRate): 31104 (WebCore::AudioResampler::reset): 31105 * platform/audio/AudioResampler.h: Added. 31106 (WebCore::AudioResampler::~AudioResampler): 31107 (WebCore::AudioResampler::rate): 31108 31109 2010-10-18 Vangelis Kokkevis <vangelis (a] chromium.org> 31110 31111 Reviewed by James Robinson. 31112 31113 [chromium] Prevent the creation of very large textures for layers by switching 31114 to "large layer" mode when a texture is larger than some fixed reasonable size 31115 (set to 2000 pixels for now). 31116 https://bugs.webkit.org/show_bug.cgi?id=47751 31117 31118 The code also changes the large layer logic to use the current scissor rect used 31119 by the compositor instead of the visible rect to determine how to clip large layers. 31120 This will provide additional texture savings. In addition, the various layer rects 31121 have been converted to use integers instead of floats to preserve uniformity in the code. 31122 31123 Tests: Existing large layer layout tests including huge-layer and huge-layer-img 31124 31125 * platform/graphics/chromium/ContentLayerChromium.cpp: 31126 (WebCore::ContentLayerChromium::requiresClippedUpdateRect): 31127 (WebCore::ContentLayerChromium::calculateClippedUpdateRect): 31128 * platform/graphics/chromium/LayerChromium.cpp: 31129 (WebCore::LayerChromium::getDrawRect): 31130 * platform/graphics/chromium/LayerChromium.h: 31131 * platform/graphics/chromium/LayerRendererChromium.cpp: 31132 (WebCore::LayerRendererChromium::drawLayers): 31133 (WebCore::LayerRendererChromium::drawLayersRecursive): 31134 (WebCore::LayerRendererChromium::scissorToRect): 31135 * platform/graphics/chromium/LayerRendererChromium.h: 31136 (WebCore::LayerRendererChromium::currentScissorRect): 31137 31138 2010-10-18 Jia Pu <jpu (a] apple.com> 31139 31140 Reviewed by Stephanie Lewis. 31141 31142 Correct the description of manual test: autocorrection-cancelled-by-typing-1.html 31143 https://bugs.webkit.org/show_bug.cgi?id=47722 31144 <rdar://problem/8556206> 31145 31146 * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Update description 31147 to match the test content. 31148 31149 2010-10-18 Martin Robinson <mrobinson (a] igalia.com> 31150 31151 Build fix for newer versions of GTK+ 2.0. Instead of using GDK_DISPLAY() 31152 use GDK_DRAWABLE_XDISPLAY(gdk_display_get_default()). GDK_DISPLAY() was 31153 recently deprecated and the latter method has been available since GTK+ 31154 2.2. 31155 31156 * plugins/gtk/PluginViewGtk.cpp: 31157 (WebCore::PluginView::updatePluginWidget): 31158 (WebCore::PluginView::paint): 31159 (WebCore::PluginView::initXEvent): 31160 (WebCore::PluginView::platformGetValue): 31161 (WebCore::getVisualAndColormap): 31162 (WebCore::PluginView::platformStart): 31163 (WebCore::PluginView::platformDestroy): 31164 31165 2010-10-18 Ryosuke Niwa <rniwa (a] webkit.org> 31166 31167 Reviewed by Adam Barth. 31168 31169 elementCannotHaveEndTag should be a member function of MarkupAccumulator 31170 https://bugs.webkit.org/show_bug.cgi?id=47846 31171 31172 Moved elementCannotHaveEndTag into MarkupAccumulator. 31173 31174 No new tests are added since this is a cleanup. 31175 31176 * editing/MarkupAccumulator.cpp: 31177 (WebCore::MarkupAccumulator::elementCannotHaveEndTag): Added. 31178 * editing/MarkupAccumulator.h: Added MarkupAccumulator::elementCannotHaveEndTag. 31179 * editing/markup.cpp: Removed elementCannotHaveEndTag. 31180 * editing/markup.h: Removed elementCannotHaveEndTag. 31181 31182 2010-10-18 Johnny Ding <jnd (a] chromium.org> 31183 31184 Reviewed by Adam Barth. 31185 31186 Set the right referent sourceURL for the script with force user gesture. 31187 https://bugs.webkit.org/show_bug.cgi?id=37138 31188 31189 Because empty sourceURL indicates running script with force user gesture, 31190 make WebKit use document.url() as referent sourceURL (Since it uses blank 31191 URL instead empty if the input URL is empty) if WebKit isn't running the 31192 script from a hyper-link. 31193 31194 Test: fast/events/popup-blocked-from-window-open.html 31195 31196 * bindings/ScriptControllerBase.cpp: 31197 (WebCore::ScriptController::executeScript): 31198 * bindings/js/ScriptController.cpp: 31199 (WebCore::ScriptController::executeScriptInWorld): 31200 31201 2010-10-18 Darin Adler <darin (a] apple.com> 31202 31203 * dom/Node.h: Fix ancient typo in just-modified comment. 31204 31205 2010-10-18 Darin Adler <darin (a] apple.com> 31206 31207 Reviewed by Alexey Proskuryakov. 31208 31209 Remove some functions from class Node and make a few others non-virtual 31210 https://bugs.webkit.org/show_bug.cgi?id=47735 31211 31212 Refactoring. No new tests. 31213 31214 * bindings/js/JSNodeCustom.cpp: 31215 (WebCore::JSNode::markChildren): Added a FIXME about the use of the virtual 31216 ownerDocument function. 31217 31218 * dom/ContainerNode.cpp: 31219 (WebCore::ContainerNode::removeChildren): Removed the unused return value. 31220 31221 * dom/ContainerNode.h: Made insertBefore, replaceChild, removeChild, and 31222 appendChild non-virtual for clarity and performance. Made removeChildren 31223 non-virtual and removed its return value. Moved the inline Node functions 31224 that call through to ContainerNode into this file since the old way involved 31225 an extra level of inline function but otherwise had no advantages. 31226 31227 * dom/Element.h: Moved isMathMLElement here because there is no call site 31228 that needs to call it on a Node*. We can always move it back if we need to, 31229 but it's better to have less in the Node class. 31230 31231 * dom/Node.cpp: 31232 (WebCore::Node::insertBefore): Added an isContainerNode check so this can 31233 be non-virtual. There are very few callers who call this function on Node. 31234 If we want to optimize them further we can make the isContainerNode check 31235 inline in the future. 31236 (WebCore::Node::replaceChild): Ditto. 31237 (WebCore::Node::removeChild): Ditto. 31238 (WebCore::Node::appendChild): Ditto. 31239 (WebCore::Node::remove): Removed unneeded ref/unref because 31240 ContainerNode::removeChild already does this. 31241 (WebCore::Node::createRendererIfNeeded): Removed #if around call to 31242 childShouldCreateRenderer since it's needed even without SVG and XHTMLMP. 31243 31244 * dom/Node.h: Moved definitions of inline functions that depend on 31245 ContainerNode to the ContainerNode.h header. They already required inclusion 31246 of that header, so there is no functional change. Made insertBefore, 31247 replaceChild, removeChild, and appendChild non-virtual. There are very few 31248 callers of these functions on this class. Moved isMathMLElement to Element. 31249 Added a FIXME about the name of eventAncestors. Fixed comment formatting. 31250 Eliminated unused isEditableBlock function. Moved the body of the 31251 enclosingInlineElement function to the editing file that was the only 31252 call site. Removed the previousEditable and nextEditable functions, 31253 incorporating their bodies into the one place they were called. 31254 Took the childShouldCreateRenderer function out of #if since it's 31255 now used by the implementation of the <noscript> element. 31256 31257 * dom/Position.cpp: 31258 (WebCore::nextRenderedEditable): Rewrote the function to use nextLeafNode 31259 instead of nextEditable. 31260 (WebCore::previousRenderedEditable): Rewrote the function to use 31261 previousLeafNode instead of previousEditable. 31262 31263 * editing/ReplaceSelectionCommand.cpp: 31264 (WebCore::enclosingInline): Moved function here from the Node class. Also 31265 fixed an incorrect cast this function did, which assumed the function 31266 result was always an element, which the function does not guarantee. 31267 (WebCore::ReplaceSelectionCommand::doApply): Call the function above. 31268 31269 * history/HistoryItem.cpp: Added include of MathExtras.h. 31270 31271 2010-10-18 Yongjun Zhang <yongjun_zhang (a] apple.com> 31272 31273 Reviewed by Darin Adler. 31274 31275 Missing support for document.createEvent("OrientationEvent") 31276 https://bugs.webkit.org/show_bug.cgi?id=32492 31277 31278 Add support for document.createEvent("OrientationEvent") to help unit testing of 31279 onOrientationChange event. 31280 31281 Test: fast/dom/DeviceOrientation/create-event-onorientationchange.html 31282 31283 * dom/Document.cpp: 31284 (WebCore::Document::createEvent): 31285 31286 2010-10-18 Jeremy Orlow <jorlow (a] chromium.org> 31287 31288 Reviewed by Darin Adler. 31289 31290 DOMStringList should return null if the index is out of range 31291 https://bugs.webkit.org/show_bug.cgi?id=47829 31292 31293 When item() returns a null string, it needs to be passed to JS as 31294 null. The indexed getter will then magically do the right thing. 31295 So all that's left is having DOMStringList::item() return null when 31296 the index is out of bounds. 31297 31298 * dom/DOMStringList.cpp: 31299 (WebCore::DOMStringList::item): 31300 * dom/DOMStringList.h: 31301 * dom/DOMStringList.idl: 31302 31303 2010-10-18 Girish Ramakrishnan <girish (a] forwardbias.in> 31304 31305 Reviewed by Ariya Hidayat. 31306 31307 [Qt] Implement Accelerated Composition for NPAPI Plugins. 31308 31309 https://bugs.webkit.org/show_bug.cgi?id=35524 31310 31311 * plugins/PluginView.h: 31312 (WebCore::PluginView::platformLayer): 31313 * plugins/qt/PluginViewQt.cpp: 31314 (WebCore::PluginGraphicsLayerQt::PluginGraphicsLayerQt): 31315 (WebCore::PluginGraphicsLayerQt::~PluginGraphicsLayerQt): 31316 (WebCore::PluginGraphicsLayerQt::paint): 31317 (WebCore::PluginView::updatePluginWidget): 31318 (WebCore::PluginView::paint): 31319 (WebCore::PluginView::invalidateRect): 31320 (WebCore::PluginView::invalidateRegion): 31321 (WebCore::PluginView::platformStart): 31322 (WebCore::PluginView::platformLayer): 31323 31324 2010-10-18 Stuart Morgan <stuartmorgan (a] chromium.org> 31325 31326 Reviewed by Eric Seidel. 31327 31328 Switch to using the new Carbon NPAPI event declarations, and remove 31329 the old ones. 31330 31331 https://bugs.webkit.org/show_bug.cgi?id=40784 31332 31333 * bridge/npapi.h: 31334 * plugins/mac/PluginViewMac.mm: 31335 (WebCore::PluginView::setFocus): 31336 (WebCore::PluginView::handleMouseEvent): 31337 31338 2010-10-18 Pavel Feldman <pfeldman (a] chromium.org> 31339 31340 Reviewed by Yury Semikhatsky. 31341 31342 Web Inspector: comment out resource manager instantiation on front-end side. 31343 https://bugs.webkit.org/show_bug.cgi?id=47823 31344 31345 * inspector/front-end/inspector.js: 31346 31347 2010-10-18 Andrei Popescu <andreip (a] google.com> 31348 31349 Reviewed by Jeremy Orlow. 31350 31351 The description parameter of IDBFactory::open() should be mandatory. 31352 https://bugs.webkit.org/show_bug.cgi?id=47835 31353 31354 Makes the description parameter mandatory, as per the IndexedDatabase specification. 31355 Modified existing tests to cover this change. 31356 31357 * storage/IDBDatabaseBackendImpl.cpp: 31358 (WebCore::extractMetaData): 31359 (WebCore::setMetaData): 31360 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 31361 * storage/IDBFactory.cpp: 31362 (WebCore::IDBFactory::open): 31363 * storage/IDBFactory.h: 31364 * storage/IDBFactory.idl: 31365 31366 2010-10-18 Xiaomei Ji <xji (a] chromium.org> 31367 31368 Reviewed by David Levin. 31369 31370 Code cleanup: Move most function members in TextRunWorker from inlined. 31371 https://bugs.webkit.org/show_bug.cgi?id=47732 31372 31373 No functionality change, so no tests added. 31374 31375 * platform/graphics/chromium/FontLinux.cpp: 31376 (WebCore::TextRunWalker::setWordSpacingAdjustment): 31377 (WebCore::TextRunWalker::setLetterSpacingAdjustment): 31378 (WebCore::TextRunWalker::setXOffsetToZero): 31379 (WebCore::TextRunWalker::rtl): 31380 (WebCore::TextRunWalker::glyphs): 31381 (WebCore::TextRunWalker::length): 31382 (WebCore::TextRunWalker::xPositions): 31383 (WebCore::TextRunWalker::advances): 31384 (WebCore::TextRunWalker::width): 31385 (WebCore::TextRunWalker::logClusters): 31386 (WebCore::TextRunWalker::numCodePoints): 31387 (WebCore::TextRunWalker::fontPlatformDataForScriptRun): 31388 (WebCore::TextRunWalker::isCodepointSpace): 31389 (WebCore::TextRunWalker::TextRunWalker): 31390 (WebCore::TextRunWalker::~TextRunWalker): 31391 (WebCore::TextRunWalker::isWordBreak): 31392 (WebCore::TextRunWalker::setPadding): 31393 (WebCore::TextRunWalker::reset): 31394 (WebCore::TextRunWalker::setBackwardsIteration): 31395 (WebCore::TextRunWalker::nextScriptRun): 31396 (WebCore::TextRunWalker::widthOfFullRun): 31397 (WebCore::TextRunWalker::getTextRun): 31398 (WebCore::TextRunWalker::getNormalizedTextRun): 31399 (WebCore::TextRunWalker::setupFontForScriptRun): 31400 (WebCore::TextRunWalker::allocHarfbuzzFont): 31401 (WebCore::TextRunWalker::deleteGlyphArrays): 31402 (WebCore::TextRunWalker::createGlyphArrays): 31403 (WebCore::TextRunWalker::resetGlyphArrays): 31404 (WebCore::TextRunWalker::shapeGlyphs): 31405 (WebCore::TextRunWalker::setGlyphXPositions): 31406 (WebCore::TextRunWalker::mirrorCharacters): 31407 31408 2010-10-18 No'am Rosenthal <noam.rosenthal (a] nokia.com> 31409 31410 Reviewed by Andreas Kling. 31411 31412 [Qt] AC rendering bugs 31413 There were a few missing connections in Qt AC between GraphicsLayer and plugins, like changing the plugin's geometry to the layer's 31414 contentsRect, and making sure media layers handle ParentChange events and setContentsNeedsDisplay. Now media layers behave correctly. 31415 31416 https://bugs.webkit.org/show_bug.cgi?id=47571 31417 31418 No new tests. This is in preparation for fixing AC+plugins, which already has tests that don't work yet with Qt. 31419 31420 * platform/graphics/qt/GraphicsLayerQt.cpp: 31421 (WebCore::GraphicsLayerQtImpl::flushChanges): 31422 (WebCore::GraphicsLayerQt::setContentsNeedsDisplay): 31423 * platform/graphics/qt/GraphicsLayerQt.h: 31424 31425 2010-10-18 Pavel Feldman <pfeldman (a] chromium.org> 31426 31427 Reviewed by Simon Fraser. 31428 31429 Web Inspector: [crash] when Inspector Open in CSSStyleSelector::loadPendingImages(). 31430 https://bugs.webkit.org/show_bug.cgi?id=46224 31431 31432 * CMakeLists.txt: 31433 * GNUmakefile.am: 31434 * WebCore.gypi: 31435 * WebCore.pro: 31436 * WebCore.vcproj/WebCore.vcproj: 31437 * WebCore.xcodeproj/project.pbxproj: 31438 * inspector/InspectorClient.cpp: Added. 31439 (WebCore::InspectorClient::doDispatchMessageOnFrontendPage): 31440 * inspector/InspectorClient.h: 31441 (WebCore::InspectorClient::InspectorClient): 31442 31443 2010-10-18 Andrei Popescu <andreip (a] google.com> 31444 31445 Reviewed by Jeremy Orlow. 31446 31447 IDBKeyTree.h is no longer used. 31448 https://bugs.webkit.org/show_bug.cgi?id=47824 31449 31450 No new tests, just removing unused files. 31451 31452 * WebCore.gypi: 31453 * WebCore.xcodeproj/project.pbxproj: 31454 * storage/IDBKeyTree.h: Removed. 31455 31456 2010-10-18 Andreas Kling <kling (a] webkit.org> 31457 31458 Unreviewed buildfix for Qt + V8. 31459 Add missing <wtf/text/CString.h> include. 31460 31461 * inspector/InspectorInstrumentation.cpp: 31462 31463 2010-10-18 Ilya Tikhonovsky <loislo (a] chromium.org> 31464 31465 Reviewed by Yury Semikhatsky. 31466 31467 Web Inspector: toJSON serialization for Numbers should be fixed. 31468 DecimalNumber is used instead of printf. 31469 31470 https://bugs.webkit.org/show_bug.cgi?id=43832 31471 31472 * inspector/InspectorValues.cpp: 31473 (WebCore::InspectorBasicValue::writeJSON): 31474 31475 2010-10-18 Ilya Tikhonovsky <loislo (a] chromium.org> 31476 31477 Reviewed by Yury Semikhatsky. 31478 31479 Web Inspector: [REGRESSION] Inspector window visible during run-webkit-tests. 31480 The initial state of an inspector setting should stay untouched 31481 if the profile has no value for it. 31482 31483 https://bugs.webkit.org/show_bug.cgi?id=47785 31484 31485 * inspector/InspectorState.cpp: 31486 (WebCore::InspectorState::loadFromSettings): 31487 31488 2010-10-18 Pavel Feldman <pfeldman (a] chromium.org> 31489 31490 Reviewed by Yury Semikhatsky. 31491 31492 Web Inspector: tab headers on resource panel are 1px off on Mac. 31493 https://bugs.webkit.org/show_bug.cgi?id=47798 31494 31495 * inspector/front-end/inspector.css: 31496 (.tabbed-pane-header li): 31497 31498 2010-10-18 Pavel Feldman <pfeldman (a] chromium.org> 31499 31500 Not reviewed. Build fix. 31501 31502 * inspector/InspectorResourceAgent.cpp: 31503 (WebCore::cachedResourceTypeString): 31504 31505 2010-10-17 Pavel Feldman <pfeldman (a] chromium.org> 31506 31507 Reviewed by Yury Semikhatsky. 31508 31509 Web Inspector: Introduce InspectorResourceAgent.h/cpp and ResourceManager.js to 31510 fill network panel with data. 31511 https://bugs.webkit.org/show_bug.cgi?id=47779 31512 31513 InspectorResourceAgent instance / JS part are introduced in this patch. Agent's lifetime is equal 31514 to the front-end's. This new resource agent does not have state, instead it covers two functions: 31515 1) forwards loader client messages to the front-end 2) is capable of building a tree of cached resources. 31516 (1) feeds network panel with data, (2) shows the resource tree in the new ResourcesPanel concept. 31517 This bug is for extracting this new InspectorResourceAgent class and its javascript counterpart. 31518 Once resources panel is refactored for the new concept, InspectorResource, InspectorController's 31519 resource-related routines, inspector.js's code dealing with resources, they all will be gone. 31520 31521 * WebCore.gypi: 31522 * WebCore.vcproj/WebCore.vcproj: 31523 * inspector/CodeGeneratorInspector.pm: 31524 * inspector/Inspector.idl: 31525 * inspector/InspectorApplicationCacheAgent.cpp: 31526 (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse): 31527 * inspector/InspectorController.cpp: 31528 (WebCore::InspectorController::connectFrontend): 31529 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 31530 (WebCore::InspectorController::didCommitLoad): 31531 (WebCore::InspectorController::frameDetachedFromParent): 31532 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 31533 (WebCore::InspectorController::identifierForInitialRequest): 31534 (WebCore::InspectorController::willSendRequest): 31535 (WebCore::InspectorController::markResourceAsCached): 31536 (WebCore::InspectorController::didReceiveResponse): 31537 (WebCore::InspectorController::didReceiveContentLength): 31538 (WebCore::InspectorController::didFinishLoading): 31539 (WebCore::InspectorController::didFailLoading): 31540 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 31541 (WebCore::InspectorController::scriptImported): 31542 (WebCore::InspectorController::didCreateWebSocket): 31543 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 31544 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 31545 (WebCore::InspectorController::didCloseWebSocket): 31546 * inspector/InspectorController.h: 31547 * inspector/InspectorResource.cpp: 31548 (WebCore::InspectorResource::updateResponse): 31549 (WebCore::cachedResourceType): 31550 (WebCore::InspectorResource::type): 31551 (WebCore::InspectorResource::sourceString): 31552 (WebCore::InspectorResource::sourceBytes): 31553 (WebCore::InspectorResource::endTiming): 31554 * inspector/InspectorResourceAgent.cpp: 31555 (WebCore::InspectorResourceAgent::resourceContent): 31556 (WebCore::InspectorResourceAgent::resourceContentBase64): 31557 (WebCore::InspectorResourceAgent::resourceData): 31558 (WebCore::InspectorResourceAgent::cachedResource): 31559 (WebCore::buildObjectForHeaders): 31560 (WebCore::buildObjectForTiming): 31561 (WebCore::buildObjectForResourceRequest): 31562 (WebCore::buildObjectForResourceResponse): 31563 (WebCore::buildObjectForMainResource): 31564 (WebCore::cachedResourceTypeString): 31565 (WebCore::buildObjectForCachedResource): 31566 (WebCore::buildObjectForFrameResources): 31567 (WebCore::InspectorResourceAgent::~InspectorResourceAgent): 31568 (WebCore::InspectorResourceAgent::identifierForInitialRequest): 31569 (WebCore::InspectorResourceAgent::willSendRequest): 31570 (WebCore::InspectorResourceAgent::markResourceAsCached): 31571 (WebCore::InspectorResourceAgent::didReceiveResponse): 31572 (WebCore::InspectorResourceAgent::didReceiveContentLength): 31573 (WebCore::InspectorResourceAgent::didFinishLoading): 31574 (WebCore::InspectorResourceAgent::didFailLoading): 31575 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): 31576 (WebCore::InspectorResourceAgent::setOverrideContent): 31577 (WebCore::InspectorResourceAgent::didCommitLoad): 31578 (WebCore::InspectorResourceAgent::frameDetachedFromParent): 31579 (WebCore::createReadableStringFromBinary): 31580 (WebCore::InspectorResourceAgent::didCreateWebSocket): 31581 (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest): 31582 (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse): 31583 (WebCore::InspectorResourceAgent::didCloseWebSocket): 31584 (WebCore::InspectorResourceAgent::cachedResources): 31585 (WebCore::InspectorResourceAgent::InspectorResourceAgent): 31586 * inspector/InspectorResourceAgent.h: 31587 (WebCore::InspectorResourceAgent::create): 31588 * inspector/InspectorStyleSheet.cpp: 31589 (WebCore::InspectorStyleSheet::resourceStyleSheetText): 31590 * inspector/front-end/ExtensionServer.js: 31591 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 31592 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 31593 * inspector/front-end/Resource.js: 31594 (WebInspector.Resource.prototype.get responseReceivedTime): 31595 (WebInspector.Resource.prototype.set endTime): 31596 * inspector/front-end/Settings.js: 31597 * inspector/front-end/SourceView.js: 31598 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): 31599 * inspector/front-end/WebKit.qrc: 31600 * inspector/front-end/inspector.css: 31601 (.tabbed-pane-header li): 31602 * inspector/front-end/inspector.html: 31603 * inspector/front-end/inspector.js: 31604 (WebInspector.updateResource): 31605 * loader/ResourceLoadNotifier.cpp: 31606 (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse): 31607 * loader/appcache/ApplicationCacheGroup.cpp: 31608 (WebCore::ApplicationCacheGroup::didReceiveResponse): 31609 31610 2010-10-16 Pavel Feldman <pfeldman (a] chromium.org> 31611 31612 Reviewed by Yury Semikhatsky. 31613 31614 Web Inspector: brush up URL parsing on the front-end. 31615 https://bugs.webkit.org/show_bug.cgi?id=47772 31616 31617 * inspector/InspectorResource.cpp: 31618 (WebCore::InspectorResource::updateScriptObject): 31619 * inspector/front-end/AuditRules.js: 31620 (WebInspector.AuditRules.getDomainToResourcesMap): 31621 (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun): 31622 (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun): 31623 (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun): 31624 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun): 31625 (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies): 31626 (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies): 31627 * inspector/front-end/CookieItemsView.js: 31628 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain): 31629 * inspector/front-end/DOMAgent.js: 31630 (WebInspector.Cookies.cookieMatchesResourceURL): 31631 * inspector/front-end/Resource.js: 31632 (WebInspector.Resource): 31633 (WebInspector.Resource.prototype.set url): 31634 (WebInspector.Resource.prototype.get displayName): 31635 * inspector/front-end/ResourceCategory.js: 31636 (WebInspector.ResourceCategory.prototype.addResource): 31637 * inspector/front-end/ResourceView.js: 31638 (WebInspector.ResourceView): 31639 * inspector/front-end/inspector.js: 31640 (WebInspector.documentClick.followLink): 31641 (WebInspector.documentClick): 31642 (WebInspector.updateResource): 31643 (WebInspector.linkifyStringAsFragment): 31644 (WebInspector.resourceURLForRelatedNode): 31645 (WebInspector.completeURL): 31646 * inspector/front-end/utilities.js: 31647 (String.prototype.asParsedURL): 31648 31649 2010-10-17 Andreas Kling <kling (a] webkit.org> 31650 31651 Reviewed by Kenneth Rohde Christiansen. 31652 31653 [Qt] Support custom open() verbs/methods in XMLHttpRequest 31654 https://bugs.webkit.org/show_bug.cgi?id=40476 31655 31656 Fall back to QNetworkAccessManager::CustomOperation for any HTTP verb 31657 that's not specifically supported by QNetworkAccessManager. 31658 31659 This prevents the infinite loop that otherwise occurs after sending 31660 an UnknownOperation request. 31661 31662 This change is covered by existing (skipped) tests that will be 31663 unskipped once the Qt bots are running Qt 4.7. 31664 31665 * platform/network/qt/QNetworkReplyHandler.cpp: 31666 (WebCore::QNetworkReplyHandler::httpMethod): 31667 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 31668 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 31669 * platform/network/qt/QNetworkReplyHandler.h: 31670 31671 2010-10-17 Adam Barth <abarth (a] webkit.org> 31672 31673 Reviewed by Dimitri Glazkov. 31674 31675 Remove explicit passing of user gesture in NavigationScheduler 31676 https://bugs.webkit.org/show_bug.cgi?id=47786 31677 31678 As requested by Mr. Glazkov, remove more explicit passing of the user 31679 gesture state. We now use a static to pass this information around. 31680 31681 * bindings/generic/BindingFrame.h: 31682 (WebCore::::navigateIfAllowed): 31683 * bindings/js/JSDOMWindowCustom.cpp: 31684 (WebCore::JSDOMWindow::setLocation): 31685 * bindings/js/JSLocationCustom.cpp: 31686 (WebCore::JSLocation::reload): 31687 * bindings/v8/custom/V8LocationCustom.cpp: 31688 (WebCore::V8Location::reloadCallback): 31689 * inspector/InspectorController.cpp: 31690 (WebCore::InspectorController::setResourceTrackingEnabled): 31691 (WebCore::InspectorController::reloadPage): 31692 * loader/NavigationScheduler.cpp: 31693 (WebCore::ScheduledNavigation::ScheduledNavigation): 31694 (WebCore::ScheduledURLNavigation::ScheduledURLNavigation): 31695 (WebCore::ScheduledRedirect::ScheduledRedirect): 31696 (WebCore::ScheduledLocationChange::ScheduledLocationChange): 31697 (WebCore::ScheduledRefresh::ScheduledRefresh): 31698 (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation): 31699 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): 31700 (WebCore::NavigationScheduler::scheduleRedirect): 31701 (WebCore::NavigationScheduler::mustLockBackForwardList): 31702 (WebCore::NavigationScheduler::scheduleLocationChange): 31703 (WebCore::NavigationScheduler::scheduleFormSubmission): 31704 (WebCore::NavigationScheduler::scheduleRefresh): 31705 (WebCore::NavigationScheduler::scheduleHistoryNavigation): 31706 * loader/NavigationScheduler.h: 31707 * loader/SubframeLoader.cpp: 31708 (WebCore::SubframeLoader::loadOrRedirectSubframe): 31709 31710 2010-10-17 Julien Chaffraix <jchaffraix (a] codeaurora.org> 31711 31712 Reviewed by Andreas Kling. 31713 31714 'transparent' should be a valid color 31715 https://bugs.webkit.org/show_bug.cgi?id=45482 31716 31717 Test: svg/animations/svg-animate-color-transparent.svg 31718 31719 Based on previous work by Jan Erik Hanssen <jhanssen (a] codeaurora.org> 31720 31721 * platform/ColorData.gperf: Added 'transparent' to the list of colors. 31722 Added the alpha to all the colors as it was needed to support the new color. 31723 31724 * platform/graphics/Color.cpp: 31725 (WebCore::Color::Color): 31726 (WebCore::Color::setNamedColor): Avoid setting the alpha as now it is not 31727 always 0xFF. 31728 31729 2010-10-17 Justin Schuh <jschuh (a] chromium.org> 31730 31731 Reviewed by Nikolas Zimmermann. 31732 31733 Duplicate use element children in shadow tree. 31734 https://bugs.webkit.org/show_bug.cgi?id=47561 31735 31736 Test: svg/custom/use-nested-children.svg 31737 31738 * svg/SVGUseElement.cpp: 31739 (WebCore::SVGUseElement::expandUseElementsInShadowTree): 31740 31741 2010-10-17 Hyung Song <beergun (a] company100.net> 31742 31743 Reviewed by David Levin. 31744 31745 Add !SINGLE_THREADED guard. 31746 https://bugs.webkit.org/show_bug.cgi?id=47608 31747 31748 For SINGLE_THREADED ports LockingMutex.tryLock() returns false. 31749 This will prevent interrupt() from falling into infinite loop. 31750 31751 * platform/sql/SQLiteDatabase.cpp: 31752 (WebCore::SQLiteDatabase::interrupt): 31753 31754 2010-10-17 Simon Fraser <simon.fraser (a] apple.com> 31755 31756 Reviewed by Nikolas Zimmermann. 31757 31758 Very large and small numbers fail to round-trip through CSS 31759 https://bugs.webkit.org/show_bug.cgi?id=20674 31760 31761 Use the new DecimalNumber functionality to convert CSS numberic values to strings 31762 using decimal notation, rather than %g (which can output scientific notation). 31763 31764 Test: fast/css/round-trip-values.html 31765 31766 * css/CSSPrimitiveValue.cpp: 31767 (WebCore::formatNumber): 31768 (WebCore::CSSPrimitiveValue::cssText): 31769 31770 2010-10-17 Cosmin Truta <ctruta (a] chromium.org> 31771 31772 Reviewed by Nikolas Zimmermann. 31773 31774 Crash while processing ill-formed SVG with cycles 31775 https://bugs.webkit.org/show_bug.cgi?id=47498 31776 31777 Test: svg/custom/invalid-paint-shape-mask.svg 31778 31779 * rendering/SVGResources.cpp: 31780 (paintingResourceFromSVGPaint): Ensured that the painting resource is 31781 either a pattern resource or a gradient resource. 31782 (SVGResources::setClipper): 31783 (SVGResources::setFilter): 31784 (SVGResources::setMarkerStart): 31785 (SVGResources::setMarkerMid): 31786 (SVGResources::setMarkerEnd): 31787 (SVGResources::setMasker): 31788 (SVGResources::setFill): 31789 (SVGResources::setStroke): Added ASSERT statements for previously-unchecked 31790 preconditions. 31791 31792 2010-10-17 Alex Milowski <alex (a] milowski.com> 31793 31794 Reviewed by Kenneth Rohde Christiansen. 31795 31796 Fixed extra whitespace above operators when they aren't stretched 31797 yet the stretch height is large. Also, the baseline alignment 31798 was changed so that rows and operators interact appropriately now 31799 that operators don't have the extra white space. 31800 31801 * mathml/RenderMathMLOperator.cpp: 31802 * mathml/RenderMathMLRow.cpp: 31803 31804 2010-10-17 Viatcheslav Ostapenko <ostapenko.viatcheslav (a] nokia.com> 31805 31806 Reviewed by Antonio Gomes. 31807 31808 [Qt] Fix focusing of control elements on mouse click. 31809 Brings GTK fix to Qt platform. 31810 https://bugs.webkit.org/show_bug.cgi?id=40641 31811 31812 Test: fast/events/click-focus-control.html 31813 31814 * html/HTMLFormControlElement.cpp: 31815 (WebCore::HTMLFormControlElement::isMouseFocusable): 31816 31817 2010-10-17 Adam Barth <abarth (a] webkit.org> 31818 31819 Reviewed by Dimitri Glazkov. 31820 31821 FrameLoader doesn't need an explicit userGesture parameter 31822 https://bugs.webkit.org/show_bug.cgi?id=47777 31823 31824 We used to pass around the user gesture state explicitly. Now we use 31825 static state. Explicitly passing the user gesture state to FrameLoader 31826 in these methods is pretty out-dated. 31827 31828 * bindings/ScriptControllerBase.cpp: 31829 (WebCore::ScriptController::executeIfJavaScriptURL): 31830 * bindings/generic/BindingDOMWindow.h: 31831 (WebCore::::createWindow): 31832 (WebCore::::open): 31833 * bindings/js/JSDOMWindowCustom.cpp: 31834 (WebCore::createWindow): 31835 (WebCore::JSDOMWindow::open): 31836 * bindings/js/JSDocumentCustom.cpp: 31837 (WebCore::JSDocument::setLocation): 31838 * bindings/js/ScriptController.h: 31839 * bindings/v8/ScriptController.h: 31840 * html/HTMLAnchorElement.cpp: 31841 (WebCore::handleLinkClick): 31842 * inspector/InspectorController.cpp: 31843 (WebCore::InspectorController::openInInspectedWindow): 31844 * loader/FrameLoader.cpp: 31845 (WebCore::FrameLoader::changeLocation): 31846 (WebCore::FrameLoader::urlSelected): 31847 (WebCore::FrameLoader::submitForm): 31848 * loader/FrameLoader.h: 31849 * loader/NavigationScheduler.cpp: 31850 (WebCore::ScheduledURLNavigation::fire): 31851 (WebCore::ScheduledRefresh::fire): 31852 (WebCore::ScheduledHistoryNavigation::fire): 31853 (WebCore::NavigationScheduler::scheduleLocationChange): 31854 31855 2010-10-17 Sergey A. Sukiyazov <sergey.sukiyazov (a] gmail.com> 31856 31857 Reviewed by Andreas Kling 31858 31859 [Qt] Hovering the mouse over links produce a trail of underlined links (X11 paint engine) 31860 https://bugs.webkit.org/show_bug.cgi?id=42248 31861 31862 The problem will appear because coordinates of points may increase by 0.05f (if line width is odd) inside 31863 method GraphicsContext::adjustLineToPixelBoundaries(...) and become outside of text bounding rect htere, 31864 then the new point coordinates will be passed to Qt graphics engine. 31865 31866 The solution decreases Y cordinates of points inside drawLineForText(...) method only if Qt graphics engine 31867 is X11. The Y coordinates will be increase by 0.5f inside method adjustLineToPixelBoundaries(...), which 31868 called from drawLine(...), and then inside Qt painting engine will be rounded to next greater integer value. 31869 31870 NOTE: This changes will affect only Qt X11 verision and if only X11 Painting Engine will be used. 31871 31872 No new tests. 31873 31874 * platform/graphics/qt/GraphicsContextQt.cpp: 31875 (WebCore::GraphicsContext::drawLineForText): 31876 31877 2010-10-17 Rob Buis <rwlbuis (a] gmail.com> 31878 31879 Reviewed by Dirk Schulze. 31880 31881 Text under nested link dropped 31882 https://bugs.webkit.org/show_bug.cgi?id=46460 31883 31884 Allow links inside of tspan and textPath elements. 31885 31886 * svg/SVGTSpanElement.cpp: 31887 (WebCore::SVGTSpanElement::childShouldCreateRenderer): 31888 * svg/SVGTextPathElement.cpp: 31889 (WebCore::SVGTextPathElement::childShouldCreateRenderer): 31890 31891 2010-10-16 Kwang Yul Seo <skyul (a] company100.net> 31892 31893 Reviewed by Kent Tamura. 31894 31895 [BREWMP] Port TextCodec 31896 https://bugs.webkit.org/show_bug.cgi?id=45797 31897 31898 Implement TextCodec with Brew MP's ICharsetConv. 31899 Only UTF-8 is supported for now. 31900 31901 * platform/text/TextEncoding.cpp: 31902 (WebCore::TextEncoding::encode): 31903 * platform/text/TextEncodingRegistry.cpp: 31904 (WebCore::buildBaseTextCodecMaps): 31905 * platform/text/brew/TextCodecBrew.cpp: Added. 31906 (WebCore::newTextCodecBrew): 31907 (WebCore::TextCodecBrew::registerBaseEncodingNames): 31908 (WebCore::TextCodecBrew::registerBaseCodecs): 31909 (WebCore::TextCodecBrew::registerExtendedEncodingNames): 31910 (WebCore::TextCodecBrew::registerExtendedCodecs): 31911 (WebCore::TextCodecBrew::TextCodecBrew): 31912 (WebCore::TextCodecBrew::~TextCodecBrew): 31913 (WebCore::TextCodecBrew::decode): 31914 (WebCore::TextCodecBrew::encode): 31915 * platform/text/brew/TextCodecBrew.h: Added. 31916 31917 2010-10-16 Patrick Gansterer <paroga (a] webkit.org> 31918 31919 Unreviewed. 31920 31921 Build fix for !ENABLE(INSPECTOR) after r69844. 31922 31923 * inspector/InspectorState.h: Added ENABLE(INSPECTOR) guard. 31924 31925 2010-10-16 Patrick Gansterer <paroga (a] webkit.org> 31926 31927 Unreviewed, build fix. 31928 31929 WinCE build fix for r69798. 31930 31931 * platform/text/wince/TextCodecWinCE.cpp: Added missing include. 31932 31933 2010-10-16 Johnny Ding <jnd (a] chromium.org> 31934 31935 Reviewed by Adam Barth. 31936 31937 Requires a user gesture when opening file choose dialog. 31938 https://bugs.webkit.org/show_bug.cgi?id=47593 31939 31940 Test: fast/forms/input-file-not-open-without-gesture.html 31941 31942 * rendering/RenderFileUploadControl.cpp: 31943 (WebCore::RenderFileUploadControl::click): 31944 31945 2010-10-16 Alex Milowski <alex (a] milowski.com> 31946 31947 Reviewed by Kenneth Rohde Christiansen. 31948 31949 Changed the vertical alignment within mfenced to baseline to 31950 match the rest of the containers (e.g. mrow) and adjusted the 31951 operator spacing to 0.1em. 31952 31953 Test: mathml/presentation/fenced-mi.xhtml 31954 31955 * css/mathml.css: 31956 * mathml/RenderMathMLFenced.cpp: 31957 31958 2010-10-16 Patrick Gansterer <paroga (a] webkit.org> 31959 31960 Reviewed by Adam Barth. 31961 31962 Rename StringHasherFunctions.h to StringHasher.h 31963 https://bugs.webkit.org/show_bug.cgi?id=47200 31964 31965 * ForwardingHeaders/wtf/StringHashFunctions.h: Removed. 31966 * ForwardingHeaders/wtf/StringHasher.h: Copied from WebCore/ForwardingHeaders/wtf/StringHashFunctions.h. 31967 31968 2010-10-15 Ryosuke Niwa <rniwa (a] webkit.org> 31969 31970 Reviewed by Darin Adler. 31971 31972 unlink removes inline style of anchor elements 31973 https://bugs.webkit.org/show_bug.cgi?id=47424 31974 31975 The bug was caused by our not extracting styles when the anchor element is removed by removeInlineStyle. 31976 Because we removed the element without pushing its inline style down, we lost style information. 31977 31978 Fixed the bug by pushing down styles in removeInlineStyle as done in pushDownInlineStyleAroundNode. 31979 Also fixed a bug in addInlineStyleIfNeeded where StyleChange incorrectly removed styles of the container 31980 node as supposed to that of startNode from the style to apply when startNode is not an element. 31981 31982 Test: editing/execCommand/toggle-unlink.html 31983 31984 * editing/ApplyStyleCommand.cpp: 31985 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): To prevent a similar bug in the future, 31986 added an assert that extractedStyle is specified whenever we're removing a styled element. 31987 (WebCore::ApplyStyleCommand::removeInlineStyle): 31988 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 31989 31990 2010-10-15 Ryosuke Niwa <rniwa (a] webkit.org> 31991 31992 Reviewed by Tony Chang. 31993 31994 serializeNodesWithNamespaces should be in MarkupAccumulator 31995 https://bugs.webkit.org/show_bug.cgi?id=47749 31996 31997 Moved serializeNodesWithNamespaces to MarkupAccumulator, and renamed it to serializeNodes. 31998 MarkupAccumulator::serializeNode now returns the resultant string instead of having a separate takeResults(). 31999 Added several helper functions to MarkupAccumulator. 32000 32001 No new tests are added since this is a cleanup. 32002 32003 * editing/MarkupAccumulator.cpp: 32004 (WebCore::MarkupAccumulator::serializeNodes): Wrapper for serializeNodes and concatenateMarkup. 32005 (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): Moved from markup.cpp 32006 (WebCore::MarkupAccumulator::appendStartTag): Calls appendString instead of appending into m_succeedingMarkup directly. 32007 (WebCore::MarkupAccumulator::appendEndTag): Ditto. 32008 (WebCore::MarkupAccumulator::totalLength): Added; extracted from takeResults. 32009 (WebCore::MarkupAccumulator::concatenateMarkup): Ditto. 32010 * editing/MarkupAccumulator.h: 32011 (WebCore::MarkupAccumulator::length): Added; calls totalLength. 32012 * editing/markup.cpp: 32013 (WebCore::StyledMarkupAccumulator::appendString): Added; calls MarkupAccumulator's appendString. 32014 (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Calls appendString. 32015 (WebCore::StyledMarkupAccumulator::takeResults): Calls length, totalLength, and concatenateMarkup. 32016 (WebCore::StyledMarkupAccumulator::serializeNodes): Became a member function. 32017 (WebCore::createMarkup): Uses MarkupAccumulator. 32018 32019 2010-10-15 Kinuko Yasuda <kinuko (a] google.com> 32020 32021 Reviewed by Jian Li. 32022 32023 Implement FileEntrySync.file() in FileSystem API 32024 https://bugs.webkit.org/show_bug.cgi?id=47310 32025 32026 Tests: fast/filesystem/workers/file-from-file-entry-sync.html 32027 fast/filesystem/workers/file-from-file-entry.html 32028 32029 * fileapi/DOMFileSystem.cpp: 32030 (WebCore::DOMFileSystem::createFile): Added. 32031 * fileapi/DOMFileSystem.h: 32032 * fileapi/DOMFileSystemSync.cpp: 32033 (WebCore::DOMFileSystemSync::createFile): Added. 32034 * fileapi/DOMFileSystemSync.h: 32035 * fileapi/DirectoryReaderBase.h: Added 'virtual path' comment. 32036 * fileapi/EntryBase.h: Added 'virtual path' comment. 32037 * fileapi/FileEntry.cpp: 32038 (WebCore::FileEntry::file): Changed to use DOMFileSystem::createFile. 32039 * fileapi/FileEntrySync.cpp: 32040 (WebCore::FileEntrySync::file): Implemented. 32041 * fileapi/FileEntrySync.h: 32042 * fileapi/FileEntrySync.idl: Added file(). 32043 32044 2010-10-15 Nico Weber <thakis (a] chromium.org> 32045 32046 Reviewed by Eric Carlson. 32047 32048 Make sure to update the current graphics context when calling out to AppKit. 32049 https://bugs.webkit.org/show_bug.cgi?id=47757 32050 32051 Like r57741, but for the spellchecking highlight 32052 32053 * platform/graphics/mac/GraphicsContextMac.mm: 32054 (WebCore::GraphicsContext::drawLineForTextChecking): 32055 32056 2010-10-15 Brian Weinstein <bweinstein (a] apple.com> 32057 32058 Reviewed by Sam Weinig. 32059 32060 REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request. 32061 https://bugs.webkit.org/show_bug.cgi?id=47753 32062 <rdar://problem/8558242> 32063 32064 r69850 switched over to a different way of concatenating WebCore strings, but ran into an issue 32065 where some Windows calls were returning null terminated strings, and this breaks the new 32066 method of concatenation. 32067 32068 GetLocaleInfo returns a null-terminated string, but WebCore strings are non-null terminated, 32069 so once we create our WebCore string, we want to trim off the null terminating character before 32070 we return the localeInfo. 32071 32072 Test: fast/dom/navigator-userAgent.html 32073 32074 * platform/win/Language.cpp: 32075 (WebCore::localeInfo): 32076 32077 2010-10-15 Alexey Proskuryakov <ap (a] apple.com> 32078 32079 Trying to fix crashes on Leopard buildbot. 32080 32081 * loader/loader.cpp: 32082 (WebCore::Loader::Host::didFinishLoading): 32083 (WebCore::Loader::Host::didFail): 32084 Moved logging higher in the function - it seems that CachedResource can be already destroyed. 32085 32086 * platform/Logging.cpp: (WebCore::getChannelFromName): 32087 * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary): 32088 Initialize the new channel (oops). 32089 32090 2010-10-15 Mike Lawther <mikelawther (a] chromium.org> 32091 32092 Reviewed by James Robinson. 32093 32094 Prevent scrollbars from appearing in iframes with scrolling=no 32095 when the embedded content has overflow:scroll set on the html 32096 or body tags. 32097 32098 iframes keep getting scrollbars with scrolling="no" 32099 https://bugs.webkit.org/show_bug.cgi?id=29240 32100 32101 Test: fast/frames/iframe-scrolling-attribute-overflowscroll.html 32102 32103 * page/FrameView.cpp: 32104 (WebCore::FrameView::calculateScrollbarModesForLayout) 32105 (WebCore::FrameView::updateCanHaveScrollbars): 32106 (WebCore::FrameView::layout): 32107 * page/FrameView.h: 32108 (WebCore::FrameView::calculateScrollbarModesForLayout) 32109 32110 2010-10-15 Dan Bernstein <mitz (a] apple.com> 32111 32112 Reviewed by Adele Peterson. 32113 32114 Clean up RenderFlexibleBox::applyLineClamp() 32115 https://bugs.webkit.org/show_bug.cgi?id=47743 32116 32117 * rendering/RenderFlexibleBox.cpp: 32118 (WebCore::RenderFlexibleBox::applyLineClamp): 32119 32120 2010-10-15 Alexey Proskuryakov <ap (a] apple.com> 32121 32122 Reviewed by Darin Adler. 32123 32124 https://bugs.webkit.org/show_bug.cgi?id=47736 32125 <rdar://problem/8429396> WebCore cache gets corrupted if revalidation request starts at an inopportune time 32126 32127 Test: http/tests/cache/stopped-revalidation.html 32128 32129 * loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): Copied logic for 32130 revalidation requests from didFail(). 32131 32132 2010-10-15 Alexey Proskuryakov <ap (a] apple.com> 32133 32134 Reviewed by Darin Adler in <https://bugs.webkit.org/show_bug.cgi?id=47736>. 32135 32136 Add a logging channel for WebCore cache and resource loading. 32137 32138 Test: http/tests/cache/stopped-revalidation.html 32139 32140 * platform/Logging.cpp: 32141 * platform/Logging.h: 32142 Added a logging channel for Cache and Loader. 32143 32144 * loader/Cache.cpp: 32145 (WebCore::Cache::requestResource): 32146 (WebCore::Cache::revalidateResource): 32147 (WebCore::Cache::revalidationFailed): 32148 (WebCore::Cache::evict): 32149 * loader/CachedResource.cpp: 32150 (WebCore::CachedResource::setResourceToRevalidate): 32151 (WebCore::CachedResource::switchClientsToRevalidatedResource): 32152 (WebCore::CachedResource::mustRevalidate): 32153 Added logging. 32154 32155 * loader/loader.cpp: 32156 (WebCore::Loader::load): Added logging. 32157 (WebCore::Loader::scheduleServePendingRequests): Ditto. 32158 (WebCore::Loader::requestTimerFired): Ditto. 32159 (WebCore::Loader::servePendingRequests): Ditto. 32160 (WebCore::Loader::Host::servePendingRequests): Changed logging to use the new channel. 32161 (WebCore::Loader::Host::didFinishLoading): Changed logging to use the new channel. 32162 (WebCore::Loader::Host::didFail): Added logging. 32163 32164 2010-10-15 No'am Rosenthal <noam.rosenthal (a] nokia.com> 32165 32166 Reviewed by Simon Fraser. 32167 32168 Add public functions to serialize TransformOperations. 32169 https://bugs.webkit.org/show_bug.cgi?id=47728 32170 32171 Added public accessors to the internal data of the TransformOperations. 32172 32173 No new tests. These functions are enablers for WebKit2. 32174 32175 * platform/graphics/transforms/Matrix3DTransformOperation.h: 32176 (WebCore::Matrix3DTransformOperation::matrix): 32177 * platform/graphics/transforms/MatrixTransformOperation.h: 32178 (WebCore::MatrixTransformOperation::matrix): 32179 * platform/graphics/transforms/PerspectiveTransformOperation.h: 32180 (WebCore::PerspectiveTransformOperation::perspective): 32181 * platform/graphics/transforms/RotateTransformOperation.h: 32182 (WebCore::RotateTransformOperation::x): 32183 (WebCore::RotateTransformOperation::y): 32184 (WebCore::RotateTransformOperation::z): 32185 * platform/graphics/transforms/SkewTransformOperation.h: 32186 (WebCore::SkewTransformOperation::angleX): 32187 (WebCore::SkewTransformOperation::angleY): 32188 * platform/graphics/transforms/TranslateTransformOperation.h: 32189 (WebCore::TranslateTransformOperation::x): 32190 (WebCore::TranslateTransformOperation::y): 32191 (WebCore::TranslateTransformOperation::z): 32192 32193 2010-10-15 Jian Li <jianli (a] chromium.org> 32194 32195 Reviewed by Dmitry Titov. 32196 32197 FileReader.readAsDataURL should take Blob object 32198 https://bugs.webkit.org/show_bug.cgi?id=47679 32199 32200 Test cases have been added into read-blob-test-cases.js. 32201 32202 * fileapi/FileReader.idl: Update per the latest File API spec. 32203 32204 2010-10-15 Adam Barth <abarth (a] webkit.org> 32205 32206 Reviewed by Eric Seidel. 32207 32208 Move MarkupAccumulator from markup.cpp to its own file 32209 https://bugs.webkit.org/show_bug.cgi?id=47734 32210 32211 This patch moves the MarkupAccumulator class into its own file. 32212 There's a lot of clean up left to do, but this patch is a step in the 32213 right direction. 32214 32215 No behavior change. 32216 32217 * Android.mk: 32218 * CMakeLists.txt: 32219 * GNUmakefile.am: 32220 * WebCore.gypi: 32221 * WebCore.pro: 32222 * WebCore.vcproj/WebCore.vcproj: 32223 * WebCore.xcodeproj/project.pbxproj: 32224 * editing/markup.cpp: 32225 (WebCore::elementCannotHaveEndTag): 32226 * editing/markup.h: 32227 * editing/MarkupAccumulator.h: Added. 32228 * editing/MarkupAccumulator.cpp: Added. 32229 32230 2010-10-15 Ryosuke Niwa <rniwa (a] webkit.org> 32231 32232 Reviewed by Darin Adler. 32233 32234 Match the elements supported by execCommand('formatBlock') and queryCommandValue('formatBlock') 32235 https://bugs.webkit.org/show_bug.cgi?id=47712 32236 32237 Extended queryCommandValue('formatBlock', false, null) to support article, aside, blockquote, dd, dl, 32238 div, dl, dt, dl, footer, header, hgroup, nav, and section. Because this makes isElementForFormatBlockCommand 32239 in Editor.cpp and FormatBlockCommand::isElementToApplyInFormatBlockCommand identical, they are merged and moved 32240 to FormatBlockCommand.cpp 32241 32242 Tests are added to editing/execCommand/query-format-block.html 32243 32244 * editing/Editor.cpp: Removed isElementForFormatBlockCommand and Editor::elementForFormatBlockCommand. 32245 * editing/Editor.h: 32246 * editing/EditorCommand.cpp: 32247 (WebCore::executeFormatBlock): Removed the check of tag name; the check is moved into FormatBlockCommand. 32248 (WebCore::valueFormatBlock): Calls FormatBlockCommand::elementForFormatBlockCommand. 32249 * editing/FormatBlockCommand.cpp: 32250 (WebCore::isElementForFormatBlock): 32251 (WebCore::FormatBlockCommand::FormatBlockCommand): 32252 (WebCore::FormatBlockCommand::formatSelection): Added to check the tag name. Exit early if the specified tag name 32253 is not what FormatBlock should apply. Set m_didApply true if m_didApply did apply the element. 32254 (WebCore::FormatBlockCommand::formatRange): Moved from Editor.cpp. Takes Range* instead of accessing selection directly. 32255 (WebCore::FormatBlockCommand::elementForFormatBlockCommand): Moved from Editor.cpp 32256 (WebCore::enclosingBlockToSplitTreeTo): Calls isElementForFormatBlock. 32257 * editing/FormatBlockCommand.h: 32258 (WebCore::FormatBlockCommand::didApply): Added. 32259 32260 2010-10-15 Dirk Schulze <krit (a] webkit.org> 32261 32262 Reviewed by Nikolas Zimmermann. 32263 32264 carto.net Dock example redraws *way* too often 32265 https://bugs.webkit.org/show_bug.cgi?id=16090 32266 32267 Setting the attributes x, y, width or height shouldn't cause a repaint if the image boundaries don't change. 32268 Added updateFromElement() to RenderSVGImage that checks if the old boundaries match the new boundaries after 32269 setting one of the attributes of above. Mark renderer for layout (and therefore repaint) if the boundaries 32270 differ, do nothing if not. 32271 Also added caching of the repaint rect to avoid multiple calculations. 32272 32273 Test: svg/custom/repaint-on-constant-size-change.svg 32274 32275 * rendering/RenderSVGImage.cpp: 32276 (WebCore::RenderSVGImage::RenderSVGImage): 32277 (WebCore::RenderSVGImage::layout): Update repaint rect on layout. 32278 (WebCore::RenderSVGImage::updateFromElement): Check SVGImageElement for boundaries update. 32279 * rendering/RenderSVGImage.h: 32280 (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): Return the cached repaint rect. 32281 * svg/SVGImageElement.cpp: 32282 (WebCore::SVGImageElement::svgAttributeChanged): Call updateFromElement() on changes to x, y, width or height. 32283 32284 2010-10-15 Martin Robinson <mrobinson (a] igalia.com> 32285 32286 Build fix for GTK+. 32287 32288 * platform/network/soup/cache/webkit/soup-cache.h: Do not use PLATFORM(...) macro 32289 in a file that does not include config.h 32290 32291 2010-10-15 Anders Carlsson <andersca (a] apple.com> 32292 32293 Reviewed by Sam Weinig. 32294 32295 Add FindIndicatorWindow class 32296 https://bugs.webkit.org/show_bug.cgi?id=47731 32297 32298 Export symbols needed by the FindIndicator in WebKit2. 32299 32300 * WebCore.exp.in: 32301 32302 2010-10-15 Leandro Pereira <leandro (a] profusion.mobi> 32303 32304 [EFL] Unreviewed. Build fix. 32305 32306 Add new files needed by the Soup network backend, and #ifdef a 32307 GTK+-port only include in soup-cache.h. 32308 32309 * CMakeListsEfl.txt: 32310 * platform/network/soup/cache/webkit/soup-cache.h: 32311 32312 2010-10-14 Darin Adler <darin (a] apple.com> 32313 32314 Reviewed by Alexey Proskuryakov. 32315 32316 Use more specific types for node pointers, especially when calling node insertion and removal functions 32317 https://bugs.webkit.org/show_bug.cgi?id=47702 32318 32319 Refactoring. No new tests. 32320 32321 While developing this patch I temporarily removed the node insertion and 32322 removal member functions from the Node class and fixed almost all call sites 32323 so they call it directly on the ContainerNode class, which will be important 32324 once we make the functions non-virtual. 32325 32326 * css/CSSStyleSelector.cpp: 32327 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): 32328 * dom/ContainerNode.cpp: 32329 (WebCore::ContainerNode::insertBefore): 32330 (WebCore::ContainerNode::replaceChild): 32331 (WebCore::ContainerNode::appendChild): 32332 * dom/Document.cpp: 32333 (WebCore::Document::caretRangeFromPoint): 32334 * dom/DynamicNodeList.cpp: 32335 (WebCore::DynamicNodeList::itemWithName): 32336 * dom/Position.cpp: 32337 (WebCore::Position::previous): 32338 (WebCore::Position::next): 32339 * dom/Text.cpp: 32340 (WebCore::Text::replaceWholeText): 32341 * dom/TreeWalker.cpp: 32342 (WebCore::TreeWalker::firstChild): 32343 (WebCore::TreeWalker::lastChild): 32344 (WebCore::TreeWalker::previousNode): 32345 * dom/XMLDocumentParserLibxml2.cpp: 32346 (WebCore::XMLDocumentParser::XMLDocumentParser): 32347 * editing/BreakBlockquoteCommand.cpp: 32348 (WebCore::BreakBlockquoteCommand::doApply): 32349 * editing/CompositeEditCommand.h: 32350 * editing/DeleteButtonController.cpp: 32351 (WebCore::isDeletableElement): 32352 * editing/IndentOutdentCommand.cpp: 32353 (WebCore::IndentOutdentCommand::outdentParagraph): 32354 * editing/InsertNodeBeforeCommand.cpp: 32355 (WebCore::InsertNodeBeforeCommand::doApply): 32356 * editing/JoinTextNodesCommand.cpp: 32357 (WebCore::JoinTextNodesCommand::doApply): 32358 (WebCore::JoinTextNodesCommand::doUnapply): 32359 * editing/MergeIdenticalElementsCommand.cpp: 32360 (WebCore::MergeIdenticalElementsCommand::doUnapply): 32361 * editing/RemoveNodeCommand.cpp: 32362 (WebCore::RemoveNodeCommand::doApply): 32363 (WebCore::RemoveNodeCommand::doUnapply): 32364 * editing/RemoveNodeCommand.h: 32365 * editing/SplitElementCommand.cpp: 32366 (WebCore::SplitElementCommand::executeApply): 32367 * editing/SplitTextNodeCommand.cpp: 32368 (WebCore::SplitTextNodeCommand::doApply): 32369 (WebCore::SplitTextNodeCommand::doReapply): 32370 * editing/TextIterator.cpp: 32371 (WebCore::parentCrossingShadowBoundaries): 32372 * editing/htmlediting.cpp: 32373 (WebCore::enclosingList): 32374 * editing/markup.cpp: 32375 (WebCore::serializeNodes): 32376 (WebCore::ancestorToRetainStructureAndAppearance): 32377 (WebCore::createMarkup): 32378 * html/HTMLAreaElement.cpp: 32379 (WebCore::HTMLAreaElement::updateFocusAppearance): 32380 * html/HTMLEmbedElement.cpp: 32381 (WebCore::HTMLEmbedElement::rendererIsNeeded): 32382 * html/HTMLFormElement.cpp: 32383 (WebCore::HTMLFormElement::rendererIsNeeded): 32384 * html/HTMLFrameSetElement.cpp: 32385 (WebCore::HTMLFrameSetElement::attach): 32386 * html/HTMLImageElement.cpp: 32387 (WebCore::HTMLImageElement::insertedIntoTree): 32388 * html/HTMLLegendElement.cpp: 32389 (WebCore::HTMLLegendElement::associatedControl): 32390 * html/HTMLOptGroupElement.cpp: 32391 (WebCore::HTMLOptGroupElement::recalcSelectOptions): 32392 (WebCore::HTMLOptGroupElement::ownerSelectElement): 32393 * html/HTMLOptionElement.cpp: 32394 (WebCore::HTMLOptionElement::ownerSelectElement): 32395 * html/HTMLTableCellElement.cpp: 32396 (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls): 32397 * html/HTMLTableColElement.cpp: 32398 (WebCore::HTMLTableColElement::additionalAttributeStyleDecls): 32399 * html/HTMLTableElement.cpp: 32400 (WebCore::HTMLTableElement::insertRow): 32401 * html/HTMLTableRowElement.cpp: 32402 (WebCore::HTMLTableRowElement::rowIndex): 32403 * html/HTMLTableSectionElement.cpp: 32404 (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls): 32405 * page/DOMSelection.cpp: 32406 (WebCore::DOMSelection::getRangeAt): 32407 (WebCore::DOMSelection::containsNode): 32408 * rendering/RenderSVGGradientStop.cpp: 32409 (WebCore::RenderSVGGradientStop::gradientElement): 32410 * svg/SVGElement.cpp: 32411 (WebCore::SVGElement::ownerSVGElement): 32412 (WebCore::SVGElement::viewportElement): 32413 * svg/SVGFELightElement.cpp: 32414 (WebCore::SVGFELightElement::svgAttributeChanged): 32415 (WebCore::SVGFELightElement::childrenChanged): 32416 * svg/SVGFEMergeNodeElement.cpp: 32417 (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): 32418 * svg/SVGFontFaceFormatElement.cpp: 32419 (WebCore::SVGFontFaceFormatElement::childrenChanged): 32420 * svg/SVGFontFaceUriElement.cpp: 32421 (WebCore::SVGFontFaceUriElement::childrenChanged): 32422 * svg/SVGGlyphElement.cpp: 32423 (WebCore::SVGGlyphElement::invalidateGlyphCache): 32424 * svg/SVGHKernElement.cpp: 32425 (WebCore::SVGHKernElement::insertedIntoDocument): 32426 (WebCore::SVGHKernElement::removedFromDocument): 32427 * svg/SVGLocatable.cpp: 32428 (WebCore::SVGLocatable::nearestViewportElement): 32429 (WebCore::SVGLocatable::farthestViewportElement): 32430 * svg/SVGUseElement.cpp: 32431 (WebCore::SVGUseElement::updateContainerOffsets): 32432 * svg/SVGVKernElement.cpp: 32433 (WebCore::SVGVKernElement::insertedIntoDocument): 32434 (WebCore::SVGVKernElement::removedFromDocument): 32435 * svg/animation/SVGSMILElement.cpp: 32436 (WebCore::SVGSMILElement::targetElement): 32437 * wml/WMLDoElement.cpp: 32438 (WebCore::WMLDoElement::insertedIntoDocument): 32439 (WebCore::WMLDoElement::removedFromDocument): 32440 * wml/WMLNoopElement.cpp: 32441 (WebCore::WMLNoopElement::insertedIntoDocument): 32442 * wml/WMLOptionElement.cpp: 32443 (WebCore::ownerSelectElement): 32444 * wml/WMLPostfieldElement.cpp: 32445 (WebCore::WMLPostfieldElement::insertedIntoDocument): 32446 (WebCore::WMLPostfieldElement::removedFromDocument): 32447 * wml/WMLSetvarElement.cpp: 32448 (WebCore::WMLSetvarElement::insertedIntoDocument): 32449 (WebCore::WMLSetvarElement::removedFromDocument): 32450 * wml/WMLTaskElement.cpp: 32451 (WebCore::WMLTaskElement::insertedIntoDocument): 32452 (WebCore::WMLTaskElement::removedFromDocument): 32453 * wml/WMLTimerElement.cpp: 32454 (WebCore::WMLTimerElement::insertedIntoDocument): 32455 (WebCore::WMLTimerElement::removedFromDocument): 32456 * xml/XPathStep.cpp: 32457 (WebCore::XPath::Step::nodesInAxis): 32458 Use ContainerNode* for the result of the parentNode function now that 32459 it returns a ContainerNode*. In the past it used to return just Node*. 32460 32461 * dom/ContainerNode.h: Added toContainerNode. 32462 32463 * dom/Element.h: Use ContainerNode*. Added toElement. 32464 32465 * dom/Element.cpp: 32466 (WebCore::Element::deprecatedCreateContextualFragment): Explcitly 32467 cast to HTMLElement* in the case that handles <html> and <body> 32468 elements. 32469 (WebCore::Element::baseURI): Use ContainerNode*. 32470 32471 * dom/Node.cpp: 32472 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): Use ContainerNode*. 32473 (WebCore::Node::isDescendantOf): Ditto. 32474 (WebCore::Node::createRendererIfNeeded): Ditto. 32475 (WebCore::Node::setTextContent): Use already-typecast pointer in a call to 32476 appendChild. 32477 (WebCore::Node::ancestorElement): Use ContainerNode*. 32478 32479 * dom/Range.cpp: 32480 (WebCore::Range::compareNode): Use ContainerNode*. 32481 (WebCore::Range::intersectsNode): Ditto. 32482 (WebCore::Range::processContents): Cast to ContainerNode* in a couple cases 32483 where we previously checked that the node in question has a child. Any node 32484 that returns a non-zero value for firstChild is a ContainerNode. 32485 (WebCore::Range::checkNodeBA): Ditto. 32486 (WebCore::Range::selectNode): Ditto. 32487 (WebCore::Range::surroundContents): Ditto. 32488 32489 * dom/XMLDocumentParser.cpp: 32490 (WebCore::XMLDocumentParser::insertErrorMessageBlock): Rewrote code to use 32491 more specific types, document instead of doc, and paragraph instead of par. 32492 32493 * editing/ApplyStyleCommand.cpp: 32494 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): 32495 Use ContainerNode*. 32496 (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes): 32497 Use replaceElementWithSpanPreservingChildrenAndAttributes; the old function 32498 took a Node argument and had Node in its name. 32499 32500 * editing/CompositeEditCommand.cpp: 32501 (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Use ContainerNode. 32502 (WebCore::CompositeEditCommand::replaceElementWithSpanPreservingChildrenAndAttributes): 32503 Renamed and changed to take HTMLElement. Also use ContainerNode. 32504 (WebCore::CompositeEditCommand::prune): Ditto. 32505 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto. 32506 (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): Ditto. 32507 32508 * editing/ReplaceNodeWithSpanCommand.cpp: 32509 (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand): Take an 32510 HTMLElement instead of a Node. Call it m_elementToReplace instead of m_node. 32511 (WebCore::swapInNodePreservingAttributesAndChildren): Take HTMLElement. 32512 (WebCore::ReplaceNodeWithSpanCommand::doApply): Updated for name changes. 32513 (WebCore::ReplaceNodeWithSpanCommand::doUnapply): Ditto. 32514 * editing/ReplaceNodeWithSpanCommand.h: Ditto. 32515 32516 * editing/ReplaceSelectionCommand.cpp: 32517 (WebCore::ReplacementFragment::ReplacementFragment): Use StyledElement for result 32518 of insertFragmentForTestRendering since that's what it returns. 32519 (WebCore::ReplacementFragment::removeNode): Use ContainerNode. 32520 (WebCore::ReplacementFragment::insertNodeBefore): Ditto. 32521 (WebCore::ReplacementFragment::insertFragmentForTestRendering): Return StyledElement. 32522 Use HTMLElement for body. 32523 (WebCore::ReplacementFragment::restoreTestRenderingNodesToFragment): Take 32524 StyledElement. 32525 (WebCore::ReplaceSelectionCommand::handleStyleSpans): Use ContainerNode. 32526 (WebCore::ReplaceSelectionCommand::copyStyleToChildren): Use HTMLElement for 32527 the cloned span, since the clone will be a sspan too. 32528 (WebCore::ReplaceSelectionCommand::insertAsListItems): Use ContainerNode since 32529 the list item has a child, and that proves it is a ContainerNode. 32530 32531 * editing/SelectionController.cpp: 32532 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected): 32533 Use ContainerNode and also removed an unnneded local variable. 32534 32535 * html/HTMLElement.cpp: 32536 (WebCore::HTMLElement::setOuterText): Use ContainerNode. 32537 (WebCore::HTMLElement::insertAdjacent): Use ContainerNode and also use && to make 32538 the logic a little simpler. 32539 (WebCore::contextElementForInsertion): Use ContainerNode. 32540 (WebCore::HTMLElement::findFormAncestor): Ditto. 32541 32542 * inspector/InspectorDOMAgent.cpp: 32543 (WebCore::InspectorDOMAgent::removeNode): Use ContainerNode. 32544 (WebCore::InspectorDOMAgent::changeTagName): Ditto. 32545 (WebCore::InspectorDOMAgent::setOuterHTML): Ditto. 32546 (WebCore::InspectorDOMAgent::innerParentNode): Use isDocumentNode instead of 32547 nodeType. We should almost never use nodeType inside the engine. 32548 (WebCore::InspectorDOMAgent::didInsertDOMNode): Use ContainerNode. 32549 (WebCore::InspectorDOMAgent::didRemoveDOMNode): Ditto. 32550 32551 * wml/WMLOptGroupElement.cpp: Removed unneeded overrides of insertBefore, 32552 replaceChild, removeChild, appendChild, and removeChildren functions. 32553 Ths already overrides childrenChanged, that is called by all of the above, 32554 and it does the same thing these functions did. 32555 (WebCore::ownerSelectElement): Use ContainerNode. 32556 * wml/WMLOptGroupElement.h: Ditto. 32557 32558 2010-10-15 Ryosuke Niwa <rniwa (a] webkit.org> 32559 32560 Reviewed by Darin Adler. 32561 32562 Crash in WebCore::ApplyStyleCommand::applyBlockStyle 32563 https://bugs.webkit.org/show_bug.cgi?id=47699 32564 32565 The crash was caused by applyBlockStyle's invalidly assuming that visibleStart and visibleEnd always exist. 32566 Added an early exit to the function when either visibleStart or visibleEnd is null or orphaned. 32567 32568 Test: editing/style/block-style-progress-crash.html 32569 32570 * editing/ApplyStyleCommand.cpp: 32571 (WebCore::ApplyStyleCommand::applyBlockStyle): 32572 32573 2010-10-13 Anders Carlsson <andersca (a] apple.com> 32574 32575 Reviewed by Sam Weinig. 32576 32577 Add a FindIndicator class 32578 https://bugs.webkit.org/show_bug.cgi?id=47635 32579 32580 Make Gradient.h and Generator.h private headers; they're used by WebKit2. 32581 32582 * WebCore.xcodeproj/project.pbxproj: 32583 32584 2010-10-15 Sergio Villar Senin <svillar (a] igalia.com> 32585 32586 Reviewed by Gustavo Noronha Silva. 32587 32588 [Soup] Should not ignore body for redirection responses 32589 https://bugs.webkit.org/show_bug.cgi?id=29299 32590 32591 Body is now provided to WebKitGtk+ in some redirections (like 302) 32592 because it could be used by servers to perform clunky redirections 32593 for example using http-equiv=REFRESH 32594 32595 Test: http/tests/navigation/redirect302-metaredirect.html 32596 32597 * platform/network/soup/ResourceHandleSoup.cpp: 32598 (WebCore::gotHeadersCallback): 32599 (WebCore::finishedCallback): 32600 32601 2010-10-15 Sergio Villar Senin <svillar (a] igalia.com> 32602 32603 Reviewed by Martin Robinson. 32604 32605 [GTK] Fix introspection support 32606 https://bugs.webkit.org/show_bug.cgi?id=47723 32607 32608 WebKitSoupCacheType was incorrectly registered twice. Renamed to 32609 WebKitSoupCacheTypeType for the enumerated type. 32610 32611 * platform/network/soup/cache/webkit/soup-cache.c: 32612 (webkit_soup_cache_type_get_type): 32613 32614 2010-10-15 Ilya Tikhonovsky <loislo (a] chromium.org> 32615 32616 Reviewed by Yury Semikhatsky. 32617 32618 Web Inspector: extract consoleMessages related stuff from populateScriptObjects into separate function. 32619 32620 This is a part of Inspector protocol sanitization activity. 32621 We want to populate console messages only if it is required by frontend. 32622 32623 https://bugs.webkit.org/show_bug.cgi?id=46802 32624 32625 * inspector/Inspector.idl: 32626 * inspector/InspectorController.cpp: 32627 (WebCore::InspectorController::setConsoleMessagesEnabled): 32628 (WebCore::InspectorController::addConsoleMessage): 32629 (WebCore::InspectorController::disconnectFrontend): 32630 (WebCore::InspectorController::populateScriptObjects): 32631 * inspector/InspectorController.h: 32632 * inspector/InspectorState.cpp: 32633 (WebCore::InspectorState::InspectorState): 32634 * inspector/InspectorState.h: 32635 * inspector/front-end/inspector.js: 32636 (WebInspector.doLoadedDone): 32637 32638 2010-10-15 Ryuan Choi <ryuan.choi (a] samsung.com> 32639 32640 Reviewed by Nikolas Zimmermann. 32641 32642 [EFL] REGRESSION(69798) UCHAR can't be converted to String. 32643 https://bugs.webkit.org/show_bug.cgi?id=47698 32644 32645 Create String value using String(const char*, 1) instead of operator[]. 32646 32647 No tests. No functionality changed. 32648 32649 * platform/efl/PlatformKeyboardEventEfl.cpp: 32650 (WebCore::createWindowsKeyMap): 32651 32652 2010-10-15 Sergio Villar Senin <svillar (a] igalia.com> 32653 32654 Reviewed by Xan Lopez. 32655 32656 [GTK] Do a stricter check for invalid base64 dataURLs 32657 https://bugs.webkit.org/show_bug.cgi?id=47717 32658 32659 Restore the strict base64 decoding we added in 32660 https://bugs.webkit.org/show_bug.cgi?id=44261 and then rolled back 32661 in https://bugs.webkit.org/show_bug.cgi?id=47666 due to a failing 32662 test. The actual issue was that we were not finishing the load of 32663 the resource gracefully when an error happened. 32664 32665 Loading invalid base64-encoded data:// URLs are now handled 32666 properly. 32667 32668 * platform/network/soup/ResourceHandleSoup.cpp: 32669 (WebCore::parseDataUrl): 32670 * platform/network/soup/cache/soup-request-data.c: 32671 (webkit_soup_request_data_send): 32672 32673 2010-10-15 Alejandro G. Castro <alex (a] igalia.com> 32674 32675 Reviewed by Martin Robinson. 32676 32677 compile fail with gtk >= 2.22 32678 https://bugs.webkit.org/show_bug.cgi?id=47483 32679 32680 * platform/graphics/gtk/FontGtk.cpp: Removed the shrink operation, 32681 it was added long time ago and currently it is not adding any real 32682 area to the clip vertically, actually the gtk3 shrink version did 32683 not work. 32684 (WebCore::Font::drawComplexText): 32685 * platform/gtk/gtk2drawing.c: Undef the deprecation flags, this 32686 file is full of gtk2 stuff, and it does not seem interesting to 32687 upgrade because we are already creating a new version of the file 32688 for gtk3. 32689 32690 2010-10-14 Ilya Tikhonovsky <loislo (a] chromium.org> 32691 32692 Reviewed by Pavel Feldman. 32693 32694 Web Inspector: inspector settings/properties/states management 32695 should be extracted into separate class. 32696 32697 We have a lot of flags/values in InspectorController. 32698 Some flags are persisting into profile. 32699 Others are part of inspector state for frontend. 32700 All these flags should keep their values after navigation. 32701 It'd be better to extract these flags/values into separate 32702 class which will care about theirs lifetime. 32703 32704 https://bugs.webkit.org/show_bug.cgi?id=47275 32705 32706 * CMakeLists.txt: 32707 * GNUmakefile.am: 32708 * WebCore.exp.in: 32709 * WebCore.gypi: 32710 * WebCore.pro: 32711 * WebCore.vcproj/WebCore.vcproj: 32712 * WebCore.xcodeproj/project.pbxproj: 32713 * inspector/InspectorController.cpp: 32714 (WebCore::InspectorController::InspectorController): 32715 (WebCore::InspectorController::inspectorStartsAttached): 32716 (WebCore::InspectorController::setInspectorStartsAttached): 32717 (WebCore::InspectorController::setInspectorAttachedHeight): 32718 (WebCore::InspectorController::inspectorAttachedHeight): 32719 (WebCore::InspectorController::searchingForNodeInPage): 32720 (WebCore::InspectorController::resourceTrackingEnabled): 32721 (WebCore::InspectorController::saveApplicationSettings): 32722 (WebCore::InspectorController::getInspectorState): 32723 (WebCore::InspectorController::restoreInspectorStateFromCookie): 32724 (WebCore::InspectorController::getSettings): 32725 (WebCore::InspectorController::storeLastActivePanel): 32726 (WebCore::InspectorController::mouseDidMoveOverElement): 32727 (WebCore::InspectorController::handleMousePress): 32728 (WebCore::InspectorController::setSearchingForNode): 32729 (WebCore::InspectorController::setMonitoringXHREnabled): 32730 (WebCore::InspectorController::showPanel): 32731 (WebCore::InspectorController::disconnectFrontend): 32732 (WebCore::InspectorController::populateScriptObjects): 32733 (WebCore::InspectorController::restoreDebugger): 32734 (WebCore::InspectorController::restoreProfiler): 32735 (WebCore::InspectorController::getTrackedResource): 32736 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 32737 (WebCore::InspectorController::identifierForInitialRequest): 32738 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 32739 (WebCore::InspectorController::scriptImported): 32740 (WebCore::InspectorController::setResourceTrackingEnabled): 32741 (WebCore::InspectorController::ensureSettingsLoaded): 32742 (WebCore::InspectorController::startTimelineProfiler): 32743 (WebCore::InspectorController::stopTimelineProfiler): 32744 (WebCore::InspectorController::enableProfiler): 32745 (WebCore::InspectorController::disableProfiler): 32746 (WebCore::InspectorController::enableDebuggerFromFrontend): 32747 (WebCore::InspectorController::disableDebugger): 32748 (WebCore::InspectorController::loadBreakpoints): 32749 (WebCore::InspectorController::saveBreakpoints): 32750 * inspector/InspectorController.h: 32751 * inspector/InspectorFrontendClientLocal.cpp: 32752 (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight): 32753 (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight): 32754 * inspector/InspectorState.cpp: Added. 32755 (WebCore::InspectorState::InspectorState): 32756 (WebCore::InspectorState::restoreFromInspectorCookie): 32757 (WebCore::InspectorState::generateStateObjectForFrontend): 32758 (WebCore::InspectorState::loadFromSettings): 32759 (WebCore::InspectorState::updateCookie): 32760 (WebCore::InspectorState::setValue): 32761 (WebCore::InspectorState::getBoolean): 32762 (WebCore::InspectorState::getString): 32763 (WebCore::InspectorState::getLong): 32764 (WebCore::InspectorState::registerBoolean): 32765 (WebCore::InspectorState::registerString): 32766 (WebCore::InspectorState::registerLong): 32767 (WebCore::InspectorState::Property::create): 32768 * inspector/InspectorState.h: Added. 32769 (WebCore::InspectorState::setBoolean): 32770 (WebCore::InspectorState::setString): 32771 (WebCore::InspectorState::setLong): 32772 32773 2010-10-14 Jia Pu <jpu (a] apple.com> 32774 32775 Reviewed by Adele Peterson. 32776 32777 REGRESSION (r69548): Autocorrections are applied even after typing further characters in the word 32778 https://bugs.webkit.org/show_bug.cgi?id=47689 32779 <rdar://problem/8552250> 32780 32781 The test requires using setTimeout(). So we put it in manual-tests. 32782 32783 * editing/Editor.cpp: 32784 (WebCore::Editor::markMisspellingsAfterTypingToPosition): Relpace release() with clear(). 32785 (WebCore::Editor::startCorrectionPanelTimer): Release previously set correction range before 32786 start timer for next autocorrection check. 32787 * manual-tests/autocorrection: Added. 32788 * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Added. 32789 32790 2010-10-14 Ryosuke Niwa <rniwa (a] webkit.org> 32791 32792 Reviewed by Tony Chang and Darin Adler. 32793 32794 execCommand FormatBlock creates lots of blockquotes 32795 https://bugs.webkit.org/show_bug.cgi?id=19795 32796 32797 The bug was caused by WebKit's not reusing the block node added by previous iteration 32798 and its inserting block node at wrong places. 32799 32800 Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of 32801 IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange 32802 avoids the existing block elements when replacing blocks and it also adds a placeholder 32803 when removing the existing block caused paragraphs to collapse. 32804 32805 Also fixed a bug in moveParagraphWithClones where erroneous br is added to the start of 32806 the block element to which the paragraph is moved if the block element is the start of a paragraph 32807 and not the end of a paragraph. 32808 32809 Tests: editing/execCommand/format-block-multiple-paragraphs.html 32810 editing/execCommand/format-block-table.html 32811 32812 * editing/CompositeEditCommand.cpp: 32813 (WebCore::CompositeEditCommand::moveParagraphWithClones): No longer adds erroneous br. 32814 * editing/EditorCommand.cpp: 32815 (WebCore::executeFormatBlock): 32816 * editing/FormatBlockCommand.cpp: 32817 (WebCore::FormatBlockCommand::formatRange): Rewritten; see above. 32818 (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement 32819 and moved from htmlediting.cpp. 32820 (WebCore::enclosingBlockToSplitTreeTo): Added. 32821 * editing/FormatBlockCommand.h: 32822 * editing/VisiblePosition.cpp: 32823 (WebCore::enclosingBlockFlowElement): Changed the return type to Element* 32824 * editing/VisiblePosition.h: 32825 32826 2010-10-14 Justin Schuh <jschuh (a] chromium.org> 32827 32828 Reviewed by James Robinson. 32829 32830 Crash in HTMLTextFormControlElement::selection() 32831 https://bugs.webkit.org/show_bug.cgi?id=47522 32832 32833 Patch by Ryosuke Niwa <rniwa (a] webkit.org> 32834 32835 The bug was caused by our triggering layout inside RenderTextControl::selection. 32836 Fixed it by changing the return type of RenderTextControl::selection to PassRefPtr<Range> from VisibleSelection. 32837 32838 Test: fast/forms/render-text-crash.html 32839 32840 * editing/Editor.cpp: 32841 (WebCore::Editor::selectionForCommand): Calls HTMLTextFormControlElement::selection. 32842 * html/HTMLFormControlElement.cpp: 32843 (WebCore::HTMLTextFormControlElement::selection): Calls RenderTextControl::selection. 32844 * html/HTMLFormControlElement.h: 32845 * rendering/RenderTextControl.cpp: 32846 (WebCore::RenderTextControl::selection): Changed the return type. 32847 * rendering/RenderTextControl.h: 32848 32849 2010-10-14 James Robinson <jamesr (a] chromium.org> 32850 32851 Reviewed by Simon Fraser. 32852 32853 SelectElement should check if its renderer exists after calling Element::focus() 32854 https://bugs.webkit.org/show_bug.cgi?id=47696 32855 32856 Adds null checks for element->renderer() after calling element->focus(), since focus() 32857 can dispatch an event and run arbitrary javascript that may cause the select element 32858 to lose its renderer. 32859 32860 Test: fast/forms/select-listbox-focus-displaynone.html 32861 32862 * dom/SelectElement.cpp: 32863 (WebCore::SelectElement::menuListDefaultEventHandler): 32864 (WebCore::SelectElement::listBoxDefaultEventHandler): 32865 32866 2010-10-14 Beth Dakin <bdakin (a] apple.com> 32867 32868 Reviewed by Dave Hyatt. 32869 32870 This patch lays the groundwork for 32871 https://bugs.webkit.org/show_bug.cgi?id=47514 CSS transforms should 32872 affect scrolling 32873 by adding topmostPosition(). 32874 32875 * rendering/RenderBlock.cpp: 32876 (WebCore::RenderBlock::topmostPosition): 32877 * rendering/RenderBlock.h: 32878 * rendering/RenderBox.cpp: 32879 (WebCore::RenderBox::topmostPosition): 32880 * rendering/RenderBox.h: 32881 * rendering/RenderMedia.cpp: 32882 (WebCore::RenderMedia::topmostPosition): 32883 * rendering/RenderMedia.h: 32884 * rendering/RenderTableSection.cpp: 32885 (WebCore::RenderTableSection::topmostPosition): 32886 * rendering/RenderTableSection.h: 32887 32888 2010-10-14 Sergio Villar Senin <svillar (a] igalia.com> 32889 32890 Reviewed by Martin Robinson. 32891 32892 [GTK] fix compilation warnings in imported libsoup code 32893 https://bugs.webkit.org/show_bug.cgi?id=47674 32894 32895 Fixed some warnings caused by comparisons between signed and 32896 unsigned integer expressions 32897 32898 * platform/network/soup/cache/soup-directory-input-stream.c: 32899 (webkit_soup_directory_input_stream_read): 32900 * platform/network/soup/cache/soup-request-data.c: 32901 (webkit_soup_request_data_send): 32902 * platform/network/soup/cache/soup-request-file.c: 32903 (webkit_soup_request_file_ensure_file): 32904 * platform/network/soup/cache/webkit/soup-cache.c: 32905 (webkit_soup_cache_entry_is_fresh_enough): 32906 (webkit_soup_cache_has_response): 32907 32908 2010-10-14 Andreas Kling <kling (a] webkit.org> 32909 32910 Unreviewed buildfix, RetainPtr is a mac thing.. 32911 32912 * platform/network/soup/ProxyServerSoup.cpp: 32913 32914 2010-10-08 Martin Robinson <mrobinson (a] igalia.com> 32915 32916 Reviewed by Xan Lopez. 32917 32918 [GTK] Form controls do not respect GTK+ font size 32919 https://bugs.webkit.org/show_bug.cgi?id=47134 32920 32921 Have form controls use the font specified in GtkSettings. This font is 32922 the default control font in GTK+ applications and Firefox. We need to 32923 pass the string through Pango to get a valid font name and size. 32924 32925 * platform/gtk/RenderThemeGtk.cpp: 32926 (WebCore::getScreenDPI): A helper function which returns 32927 the DPI of the default screen or 96 as a fallback. 32928 (WebCore::RenderThemeGtk::systemFont): Calculate the system font 32929 by looking at the GtkSettings value and pushing it through Pango 32930 to get the font family and font size. 32931 32932 2010-10-14 Andreas Kling <kling (a] webkit.org> 32933 32934 Soup buildfix for r69808: add ProxyServer stub. 32935 32936 * GNUmakefile.am: 32937 * platform/network/soup/ProxyServerSoup.cpp: Added. 32938 (WebCore::proxyServersForURL): 32939 32940 2010-10-14 Andreas Kling <kling (a] webkit.org> 32941 32942 Fix GTK+ build after r69808. 32943 32944 * GNUmakefile.am: 32945 * platform/network/curl/ProxyServerCurl.cpp: 32946 (WebCore::proxyServersForURL): 32947 32948 2010-10-14 Simon Fraser <simon.fraser (a] apple.com> 32949 32950 Another build fix. Export FrameLoader::networkingContext() 32951 32952 * WebCore.exp.in: 32953 32954 2010-10-14 Simon Fraser <simon.fraser (a] apple.com> 32955 32956 Fix the build after r69808. 32957 32958 * WebCore.xcodeproj/project.pbxproj: 32959 * platform/network/cf/ProxyServerCFNet.cpp: 32960 (WebCore::proxyServersForURL): 32961 32962 2010-10-14 Gavin Barraclough <barraclough (a] apple.com> 32963 32964 Windows build fix following r69806. 32965 32966 * platform/win/ClipboardUtilitiesWin.cpp: 32967 (WebCore::markupToCFHTML): 32968 32969 2010-10-14 Dawit Alemayehu <adawit (a] kde.org> 32970 32971 Reviewed by Andreas Kling 32972 32973 Implemented NPN_GetValueForURL and NPN_SetValueForURL and NPN_GetAuthenticationInfo. 32974 https://bugs.webkit.org/show_bug.cgi?id=34539 32975 32976 These missing NPN functions cause Java applets to crash in ports such 32977 as QtWebkit that rely on webkit for Java applet support. 32978 32979 * plugins/PluginDebug.cpp: 32980 (WebCore::prettyNameForNPNURLVariable): 32981 * plugins/PluginDebug.h: 32982 * plugins/PluginPackage.cpp: 32983 (WebCore::PluginPackage::initializeBrowserFuncs): 32984 * plugins/PluginView.cpp: 32985 (WebCore::PluginView::getValueForURL): 32986 (WebCore::PluginView::setValueForURL): 32987 (WebCore::PluginView::getAuthenticationInfo): 32988 * plugins/PluginView.h: 32989 * plugins/npapi.cpp: 32990 (NPN_GetValueForURL): 32991 (NPN_SetValueForURL): 32992 (NPN_GetAuthenticationInfo): 32993 * platform/network/ProxyServer.h: 32994 * platform/network/cf/ProxyServerCFNet.cpp: 32995 (WebCore::proxyServersForURL): 32996 * platform/network/qt/ProxyServerQt.cpp: 32997 (WebCore::proxyServersForURL): 32998 32999 2010-10-14 Gavin Barraclough <barraclough (a] apple.com> 33000 33001 Windows build fix following r69806. 33002 33003 * platform/win/ClipboardUtilitiesWin.cpp: 33004 (WebCore::markupToCFHTML): 33005 33006 2010-10-14 Zhenyao Mo <zmo (a] google.com> 33007 33008 Reviewed by Kenneth Russell. 33009 33010 Cache link status at linkProgram and use it in useProgram instead of querying GPU 33011 https://bugs.webkit.org/show_bug.cgi?id=47685 33012 33013 * html/canvas/WebGLProgram.cpp: Always cache link status at linkStatus and use it upon query. 33014 (WebCore::WebGLProgram::WebGLProgram): 33015 * html/canvas/WebGLProgram.h: Ditto. 33016 (WebCore::WebGLProgram::getLinkStatus): 33017 (WebCore::WebGLProgram::setLinkStatus): 33018 * html/canvas/WebGLRenderingContext.cpp: Ditto. 33019 (WebCore::WebGLRenderingContext::getProgramParameter): 33020 (WebCore::WebGLRenderingContext::linkProgram): 33021 (WebCore::WebGLRenderingContext::useProgram): 33022 33023 2010-10-14 Justin Schuh <jschuh (a] chromium.org> 33024 33025 Reviewed by James Robinson. 33026 33027 Style fix for r69735 33028 https://bugs.webkit.org/show_bug.cgi?id=47684 33029 33030 No logic change. Existing tests apply. 33031 33032 * rendering/RootInlineBox.cpp: 33033 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 33034 33035 2010-10-14 Yury Semikhatsky <yurys (a] chromium.org> 33036 33037 Reviewed by Pavel Feldman. 33038 33039 Web Inspector: encapsulate ScriptState into ConsoleMessage instead of passing it as additional parameter 33040 https://bugs.webkit.org/show_bug.cgi?id=47675 33041 33042 No new tests. This refactoring is covered by existing inspector tests. 33043 33044 * bindings/js/JSConsoleCustom.cpp: 33045 * bindings/js/ScriptCallFrame.cpp: 33046 * bindings/js/ScriptCallFrame.h: 33047 (WebCore::ScriptCallFrame::functionName): 33048 (WebCore::ScriptCallFrame::sourceURL): 33049 (WebCore::ScriptCallFrame::lineNumber): 33050 (WebCore::ScriptCallFrame::argumentCount): 33051 * inspector/ConsoleMessage.cpp: 33052 (WebCore::ConsoleMessage::isEqual): 33053 * inspector/ConsoleMessage.h: 33054 * inspector/InspectorController.cpp: 33055 (WebCore::InspectorController::addMessageToConsole): 33056 (WebCore::InspectorController::addConsoleMessage): 33057 (WebCore::InspectorController::startGroup): 33058 (WebCore::InspectorController::endGroup): 33059 * inspector/InspectorController.h: 33060 33061 2010-10-14 Nikolas Zimmermann <nzimmermann (a] rim.com> 33062 33063 Reviewed by Gavin Barraclough. 33064 33065 Replace lots of String::format() usages by StringConcatenate 33066 https://bugs.webkit.org/show_bug.cgi?id=47664 33067 33068 * ForwardingHeaders/wtf/text/StringConcatenate.h: Added. 33069 * bindings/js/JSDOMWindowBase.cpp: 33070 (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage): 33071 * bindings/v8/V8Proxy.cpp: 33072 (WebCore::V8Proxy::reportUnsafeAccessTo): 33073 * dom/ExceptionBase.cpp: 33074 (WebCore::ExceptionBase::ExceptionBase): 33075 * dom/XMLDocumentParser.cpp: 33076 (WebCore::XMLDocumentParser::handleError): 33077 * history/PageCache.cpp: 33078 (WebCore::logCanCacheFrameDecision): 33079 * html/FTPDirectoryDocument.cpp: 33080 (WebCore::processFileDateString): 33081 * inspector/CodeGeneratorInspector.pm: 33082 * inspector/InspectorController.cpp: 33083 (WebCore::InspectorController::didReceiveResponse): 33084 (WebCore::InspectorController::count): 33085 * inspector/InspectorDOMAgent.cpp: 33086 (WebCore::InspectorDOMAgent::createBreakpointId): 33087 * inspector/InspectorDebuggerAgent.cpp: 33088 (WebCore::formatBreakpointId): 33089 * inspector/InspectorProfilerAgent.cpp: 33090 (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole): 33091 (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole): 33092 (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName): 33093 (WebCore::InspectorProfilerAgent::takeHeapSnapshot): 33094 * loader/CachedResourceLoader.cpp: 33095 (WebCore::CachedResourceLoader::printAccessDeniedMessage): 33096 * loader/FrameLoader.cpp: 33097 (WebCore::FrameLoader::checkIfDisplayInsecureContent): 33098 (WebCore::FrameLoader::checkIfRunInsecureContent): 33099 (WebCore::FrameLoader::shouldAllowNavigation): 33100 * loader/archive/cf/LegacyWebArchive.cpp: 33101 (WebCore::LegacyWebArchive::createFromSelection): 33102 * page/DOMWindow.cpp: 33103 (WebCore::DOMWindow::postMessageTimerFired): 33104 * page/PrintContext.cpp: 33105 (WebCore::PrintContext::pageProperty): 33106 (WebCore::PrintContext::pageSizeAndMarginsInPixels): 33107 * page/XSSAuditor.cpp: 33108 (WebCore::XSSAuditor::canLoadObject): 33109 * platform/efl/PlatformKeyboardEventEfl.cpp: 33110 (WebCore::createKeyMap): 33111 (WebCore::createWindowsKeyMap): 33112 * platform/graphics/GraphicsLayer.cpp: 33113 (WebCore::GraphicsLayer::animationNameForTransition): 33114 * platform/graphics/brew/ImageBrew.cpp: 33115 (WebCore::Image::loadPlatformResource): 33116 * platform/graphics/cg/ImageBufferCG.cpp: 33117 (WebCore::ImageBuffer::toDataURL): 33118 * platform/graphics/efl/ImageEfl.cpp: 33119 (WebCore::loadResourceSharedBuffer): 33120 * platform/graphics/gtk/ImageBufferGtk.cpp: 33121 (WebCore::ImageBuffer::toDataURL): 33122 * platform/graphics/haiku/ImageBufferHaiku.cpp: 33123 (WebCore::ImageBuffer::toDataURL): 33124 * platform/graphics/mac/GraphicsLayerCA.mm: 33125 (WebCore::animationIdentifier): 33126 * platform/graphics/qt/ImageBufferQt.cpp: 33127 (WebCore::ImageBuffer::toDataURL): 33128 * platform/graphics/skia/ImageBufferSkia.cpp: 33129 (WebCore::ImageBuffer::toDataURL): 33130 * platform/graphics/win/WebLayer.cpp: 33131 (WebCore::WebLayer::drawInContext): 33132 * platform/network/CredentialStorage.cpp: 33133 (WebCore::originStringFromURL): 33134 * platform/sql/SQLiteDatabase.cpp: 33135 (WebCore::SQLiteDatabase::setSynchronous): 33136 * platform/text/wince/TextCodecWinCE.cpp: 33137 (WebCore::LanguageManager::LanguageManager): 33138 * platform/win/ClipboardUtilitiesWin.cpp: 33139 (WebCore::markupToCFHTML): 33140 * platform/win/Language.cpp: 33141 (WebCore::defaultLanguage): 33142 * plugins/PluginStream.cpp: 33143 (WebCore::PluginStream::startStream): 33144 * svg/SVGUseElement.cpp: 33145 (WebCore::dumpInstanceTree): 33146 * websockets/WebSocket.cpp: 33147 (WebCore::WebSocket::connect): 33148 * websockets/WebSocketChannel.cpp: 33149 (WebCore::WebSocketChannel::appendToBuffer): 33150 * websockets/WebSocketHandshake.cpp: 33151 (WebCore::WebSocketHandshake::readServerHandshake): 33152 33153 2010-10-14 Xan Lopez <xlopez (a] igalia.com> 33154 33155 Reviewed by Martin Robinson. 33156 33157 [GTK] Small cleanup in PluginViewGtk 33158 https://bugs.webkit.org/show_bug.cgi?id=47588 33159 33160 Remove some dead code and use PlatformRefPtr for cairo surfaces. 33161 33162 No new tests, only refactoring. 33163 33164 * plugins/gtk/PluginViewGtk.cpp: 33165 (WebCore::PluginView::paint): 33166 33167 2010-10-14 Dawit Alemayehu <adawit (a] kde.org> 33168 33169 Reviewed by Andreas Kling. 33170 33171 Fix compile error when bulding webkit's Qt port using the "--v8" option. 33172 https://bugs.webkit.org/show_bug.cgi?id=47455 33173 33174 * platform/qt/PlatformBridge.h: 33175 33176 2010-10-01 Martin Robinson <mrobinson (a] igalia.com> 33177 33178 Reviewed by Holger Freyther. 33179 33180 [GTK] REGRESSION: FreeType backend does not respect XSettings font settings after r68558 33181 https://bugs.webkit.org/show_bug.cgi?id=47033 33182 33183 Fix logic that merges XSettings defaults and FontConfig settings. If 33184 FontConfig or XSettings specifies a subpixel order, we force subpixel 33185 anti-aliasing on. If anti-aliasing is turned on explicitly, only 33186 override the setting if it was previously off, otherwise we ignore 33187 the user's preference for subpixel or gray antialiasing. 33188 33189 Test: platform/gtk/fonts/xsettings_antialias_settings.html 33190 33191 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 33192 (WebCore::setCairoFontOptionsFromFontConfigPattern): Fix merging of XSettings 33193 and FontConfig anti-aliasing settings. 33194 (WebCore::getDefaultFontOptions): Added this helper. 33195 (WebCore::FontPlatformData::FontPlatformData): Use the getDefaultFontOptions helper. 33196 33197 2010-10-14 Jian Li <jianli (a] chromium.org> 33198 33199 Reviewed by David Levin. 33200 33201 Support typed arrays in workers 33202 https://bugs.webkit.org/show_bug.cgi?id=47616 33203 33204 To support typed arrays in workers, we need to expose constructors in 33205 WorkerContext and add NoStaticTables attribute. 33206 33207 I also add File API feature guard to the constructors defined in 33208 DOMWindow. 33209 33210 * bindings/js/JSDOMWindowCustom.cpp: Add File API feature guard to the 33211 constructors defined in DOMWindow. 33212 * html/canvas/ArrayBuffer.idl: Add NoStaticTables attribute. 33213 * html/canvas/ArrayBufferView.idl: Add NoStaticTables attribute. 33214 * html/canvas/Float32Array.idl: Add NoStaticTables attribute. 33215 * html/canvas/Int16Array.idl: Add NoStaticTables attribute. 33216 * html/canvas/Int32Array.idl: Add NoStaticTables attribute. 33217 * html/canvas/Int8Array.idl: Add NoStaticTables attribute. 33218 * html/canvas/Uint16Array.idl: Add NoStaticTables attribute. 33219 * html/canvas/Uint32Array.idl: Add NoStaticTables attribute. 33220 * html/canvas/Uint8Array.idl: Add NoStaticTables attribute. 33221 * page/DOMWindow.idl: Add File API feature guard to the constructors 33222 defined in DOMWindow. 33223 * workers/WorkerContext.idl: Expose type array constructors. 33224 33225 2010-10-14 Andreas Kling <kling (a] webkit.org> 33226 33227 Reviewed by Ariya Hidayat. 33228 33229 [Qt] Avoid creating empty transparency layers in ImageBuffer::clip() 33230 33231 We were creating empty layers for sub-1 height/width clips due to 33232 using IntRect(FloatRect) instead of enclosingIntRect(). 33233 This lead to a bunch of QPainter warnings on the console since you 33234 can't draw on an empty QPixmap. 33235 33236 * platform/graphics/qt/ImageBufferQt.cpp: 33237 (WebCore::ImageBuffer::clip): 33238 33239 2010-10-14 Holger Hans Peter Freyther <holger (a] moiji-mobile.com> 33240 33241 Reviewed by Martin Robinson. 33242 33243 [cairo] Typo in determining fixed width fonts 33244 https://bugs.webkit.org/show_bug.cgi?id=47470 33245 33246 It must be a single ampersand otherwise the 33247 && FT_FACE_FLAG_FIXED_WIDTH will always be true. 33248 33249 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 33250 (WebCore::FontPlatformData::FontPlatformData): 33251 33252 2010-10-14 Sergio Villar Senin <svillar (a] igalia.com> 33253 33254 Reviewed by Xan Lopez. 33255 33256 [GTK] Failing test LayoutTests/editing/undo/orphaned-selection-crash-bug32823-2.html 33257 https://bugs.webkit.org/show_bug.cgi?id=47666 33258 33259 Do a less strict decoding of base64 data url's as it was done 33260 before. The actual problem is most likely 33261 https://bugs.webkit.org/show_bug.cgi?id=47661 tough. 33262 33263 * platform/network/soup/cache/soup-request-data.c: 33264 (webkit_soup_request_data_send): 33265 33266 2010-10-14 Renata Hodovan <reni (a] inf.u-szeged.hu> 33267 33268 Reviewed by Andreas Kling. 33269 33270 SVGFEConvolveMatrixElement doesn't support dynamic invalidation, when attributes change. 33271 https://bugs.webkit.org/show_bug.cgi?id=47660 33272 33273 The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary. 33274 The patch also implements the simple setOrder and setKernelUnitLength methods. 33275 33276 Tests: svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-bias-attr.html 33277 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-divisor-attr.html 33278 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-edgeMode-attr.html 33279 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-in-attr.html 33280 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelMatrix-attr.html 33281 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-kernelUnitLength-attr.html 33282 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-order-attr.html 33283 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr.html 33284 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr.html 33285 svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr.html 33286 33287 * svg/SVGFEConvolveMatrixElement.cpp: 33288 (WebCore::SVGFEConvolveMatrixElement::setOrder): 33289 (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength): 33290 (WebCore::SVGFEConvolveMatrixElement::svgAttributeChanged): 33291 * svg/SVGFEConvolveMatrixElement.h: 33292 33293 2010-10-14 No'am Rosenthal <noam.rosenthal (a] nokia.com> 33294 33295 Reviewed by Andreas Kling. 33296 33297 [Qt] Text breaking is slow: enable ICU as an opt-in 33298 https://bugs.webkit.org/show_bug.cgi?id=40332 33299 33300 Added a config flag that enables ICU as an opt-in instead of the Qt specific code. 33301 33302 No new tests, this should be covered by existing tests. 33303 33304 * WebCore.pro: 33305 * platform/text/qt/TextBreakIteratorQt.cpp: 33306 (WebCore::currentTextBreakLocaleID): 33307 33308 2010-10-14 No'am Rosenthal <noam.rosenthal (a] nokia.com> 33309 33310 Reviewed by Kenneth Rohde Christiansen. 33311 33312 [Texmap] [Qt] Texture mapper initial implementation 33313 https://bugs.webkit.org/show_bug.cgi?id=47070 33314 33315 This patch enables compilation of TextureMapper with Media. It has an initial non-working implementation of a video layer, to be integrated 33316 once other parts of TextureMapper are fully working. 33317 33318 No new tests: this is new implementation that's not enabled yet. 33319 33320 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 33321 (WebCore::TextureMapperVideoLayerQt::TextureMapperVideoLayerQt): 33322 (WebCore::TextureMapperVideoLayerQt::setPlatformLayerClient): 33323 (WebCore::TextureMapperVideoLayerQt::paint): 33324 (WebCore::TextureMapperVideoLayerQt::size): 33325 (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged): 33326 (WebCore::MediaPlayerPrivateQt::platformLayer): 33327 * platform/graphics/qt/MediaPlayerPrivateQt.h: 33328 (WebCore::MediaPlayerPrivateQt::supportsAcceleratedRendering): 33329 (WebCore::MediaPlayerPrivateQt::acceleratedRenderingStateChanged): 33330 (WebCore::MediaPlayerPrivateQt::platformLayer): 33331 33332 2010-10-14 Alejandro G. Castro <alex (a] igalia.com> 33333 33334 Reviewed by Martin Robinson. 33335 33336 Fixed crashes in the GTK 64bits bot, we have to use NULL instead 33337 of 0 when calling these glib APIs, 0 is compiled as a char and in 33338 64bits systems it is not correct. 33339 33340 * platform/network/soup/cache/soup-requester.c: 33341 (webkit_soup_requester_new): 33342 (webkit_soup_requester_request_uri): 33343 33344 2010-10-14 Daniel Bates <dbates (a] rim.com> 33345 33346 Attempt to fix the Qt and GTK builds based on the build bot results from <http://webkit.sed.hu>. 33347 33348 * rendering/RenderInline.cpp: Include header "RenderTheme.h" 33349 33350 2010-10-14 Daniel Bates <dbates (a] rim.com> 33351 33352 Reviewed by Darin Adler. 33353 33354 Only draw focus ring in RenderInline and RenderImage if the theme 33355 is not able to draw a focus ring 33356 https://bugs.webkit.org/show_bug.cgi?id=47632 33357 33358 Fixes an issue where RenderInline::paintOutline() and RenderImage::paintFocusRings() 33359 would draw a focus ring regardless of whether the port-specific theme is able to 33360 draw a focus ring. Instead, these methods should only draw a focus ring if the 33361 theme is unable to draw a focus ring. 33362 33363 Also, extracted common focus ring drawing code from RenderObject::paintOutline() 33364 and RenderInline::paintOutline() into RenderObject::paintFocusRing(). 33365 33366 Tests: fast/forms/textfield-focus-ring.html 33367 fast/images/imagemap-focus-ring.html 33368 fast/inline/inline-focus-ring.html 33369 33370 * rendering/RenderImage.cpp: 33371 (WebCore::RenderImage::paintFocusRings): Modified to only draw a focus ring if the 33372 the theme does not draw one. 33373 * rendering/RenderInline.cpp: 33374 (WebCore::RenderInline::paintOutline): Modified to call RenderObject::paintFocusRing(). 33375 * rendering/RenderObject.cpp: 33376 * rendering/RenderObject.cpp: 33377 (WebCore::RenderObject::paintFocusRing): Added. 33378 (WebCore::RenderObject::paintOutline): Modified to call RenderObject::paintFocusRing(). 33379 * rendering/RenderObject.h: 33380 33381 2010-10-14 Pavel Feldman <pfeldman (a] chromium.org> 33382 33383 Reviewed by Yury Semikhatsky. 33384 33385 Web Inspector: Move load and dom content event timers into InspectorController. 33386 https://bugs.webkit.org/show_bug.cgi?id=47668 33387 33388 * inspector/CodeGeneratorInspector.pm: 33389 * inspector/Inspector.idl: 33390 * inspector/InspectorController.cpp: 33391 (WebCore::InspectorController::InspectorController): 33392 (WebCore::InspectorController::populateScriptObjects): 33393 (WebCore::InspectorController::mainResourceFiredDOMContentEvent): 33394 (WebCore::InspectorController::mainResourceFiredLoadEvent): 33395 * inspector/InspectorController.h: 33396 * inspector/InspectorResource.cpp: 33397 (WebCore::InspectorResource::InspectorResource): 33398 (WebCore::InspectorResource::updateScriptObject): 33399 * inspector/InspectorResource.h: 33400 * inspector/front-end/inspector.js: 33401 (WebInspector.updateResource): 33402 (WebInspector.domContentEventFired): 33403 (WebInspector.loadEventFired): 33404 33405 2010-10-14 Pavel Feldman <pfeldman (a] chromium.org> 33406 33407 Not reviewed. Re-landing r69757. 33408 33409 2010-10-14 Pavel Podivilov <podivilov (a] chromium.org> 33410 33411 Reviewed by Pavel Feldman. 33412 33413 Web Inspector: implement pausing on window events and timeouts 33414 https://bugs.webkit.org/show_bug.cgi?id=47542 33415 33416 * inspector/InspectorInstrumentation.cpp: 33417 (WebCore::InspectorInstrumentation::didInstallTimerImpl): 33418 (WebCore::InspectorInstrumentation::didRemoveTimerImpl): 33419 (WebCore::InspectorInstrumentation::willDispatchEventImpl): 33420 (WebCore::InspectorInstrumentation::didDispatchEventImpl): 33421 (WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl): 33422 (WebCore::InspectorInstrumentation::didDispatchEventOnWindowImpl): 33423 (WebCore::InspectorInstrumentation::willFireTimerImpl): 33424 (WebCore::InspectorInstrumentation::didFireTimerImpl): 33425 (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded): 33426 (WebCore::InspectorInstrumentation::cancelPauseOnNativeEvent): 33427 * inspector/InspectorInstrumentation.h: 33428 * inspector/front-end/BreakpointManager.js: 33429 (WebInspector.EventListenerBreakpoint.prototype.populateLabelElement): 33430 (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement): 33431 (WebInspector.EventListenerBreakpoint.prototype._condition): 33432 (WebInspector.EventListenerBreakpoint.prototype._uiEventName): 33433 * inspector/front-end/BreakpointsSidebarPane.js: 33434 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate): 33435 33436 2010-10-14 Csaba Osztrogonc <ossy (a] webkit.org> 33437 33438 Reviewed by Andreas Kling. 33439 33440 Canvas: "currentColor" should inherit the canvas element's color 33441 https://bugs.webkit.org/show_bug.cgi?id=40273 33442 33443 Warning fix after r69755. Missing default cases added. 33444 33445 * html/canvas/CanvasStyle.cpp: 33446 (WebCore::parseColorOrCurrentColor): 33447 (WebCore::CanvasStyle::createFromString): 33448 (WebCore::CanvasStyle::createFromStringWithOverrideAlpha): 33449 33450 2010-10-14 Pavel Feldman <pfeldman (a] chromium.org> 33451 33452 Not reviewed. Rolling out r69757. 33453 33454 2010-10-08 Pavel Feldman <pfeldman (a] chromium.org> 33455 33456 Reviewed by Yury Semikhatsky. 33457 33458 Web Inspector: extract content-related methods into InspectorResourceAgent. 33459 https://bugs.webkit.org/show_bug.cgi?id=47415 33460 33461 This is needed for resource-tracking-less operation of resources panel. 33462 33463 * CMakeLists.txt: 33464 * GNUmakefile.am: 33465 * WebCore.gypi: 33466 * WebCore.pro: 33467 * inspector/InspectorCSSAgent.cpp: 33468 * inspector/InspectorResource.cpp: 33469 (WebCore::InspectorResource::type): 33470 (WebCore::InspectorResource::sourceString): 33471 (WebCore::InspectorResource::sourceBytes): 33472 * inspector/InspectorResource.h: 33473 * inspector/InspectorResourceAgent.cpp: Added. 33474 (WebCore::InspectorResourceAgent::resourceContent): 33475 (WebCore::InspectorResourceAgent::resourceContentBase64): 33476 (WebCore::InspectorResourceAgent::resourceData): 33477 (WebCore::InspectorResourceAgent::cachedResourceType): 33478 (WebCore::InspectorResourceAgent::cachedResource): 33479 * inspector/InspectorResourceAgent.h: Added. 33480 * inspector/InspectorStyleSheet.cpp: 33481 (WebCore::InspectorStyleSheet::resourceStyleSheetText): 33482 * inspector/InspectorUtilities.cpp: Removed. 33483 * inspector/InspectorUtilities.h: Removed. 33484 33485 2010-10-14 Andreas Kling <kling (a] webkit.org> 33486 33487 Reviewed by Darin Adler. 33488 33489 Canvas: "currentColor" should inherit the canvas element's color 33490 https://bugs.webkit.org/show_bug.cgi?id=40273 33491 33492 Add support for "currentColor" in CanvasRenderingContext2D APIs. 33493 If the canvas is in-document, "currentColor" is replaced by canvas.style.color, 33494 otherwise we use fully opaque black. 33495 33496 For gradient addColorStop(), "currentColor" always means fully opaque black. 33497 33498 Spec link: 33499 http://www.whatwg.org/specs/web-apps/current-work/#2dcontext 33500 33501 Test: fast/canvas/canvas-currentColor.html 33502 33503 * html/canvas/CanvasGradient.cpp: 33504 (WebCore::CanvasGradient::addColorStop): 33505 * html/canvas/CanvasRenderingContext2D.cpp: 33506 (WebCore::CanvasRenderingContext2D::setStrokeStyle): 33507 (WebCore::CanvasRenderingContext2D::setFillStyle): 33508 (WebCore::CanvasRenderingContext2D::setShadowColor): 33509 (WebCore::CanvasRenderingContext2D::setShadow): 33510 * html/canvas/CanvasStyle.cpp: 33511 (WebCore::parseColor): 33512 (WebCore::currentColor): 33513 (WebCore::parseColorOrCurrentColor): 33514 (WebCore::CanvasStyle::CanvasStyle): 33515 (WebCore::CanvasStyle::createFromString): 33516 (WebCore::CanvasStyle::createFromStringWithOverrideAlpha): 33517 (WebCore::CanvasStyle::isEquivalentColor): 33518 (WebCore::CanvasStyle::applyStrokeColor): 33519 (WebCore::CanvasStyle::applyFillColor): 33520 * html/canvas/CanvasStyle.h: 33521 (WebCore::CanvasStyle::isCurrentColor): 33522 (WebCore::CanvasStyle::hasOverrideAlpha): 33523 (WebCore::CanvasStyle::overrideAlpha): 33524 33525 2010-10-08 Yury Semikhatsky <yurys (a] chromium.org> 33526 33527 Reviewed by Pavel Feldman. 33528 33529 Web Inspector: [REGRESSION] Scripts panel: the bubble shows wrong values 33530 https://bugs.webkit.org/show_bug.cgi?id=47358 33531 33532 Test: inspector/debugger-eval-on-call-frame.html 33533 33534 * inspector/front-end/InjectedScript.js: 33535 (injectedScriptConstructor.): don't embrace expression evaluated in the local scope 33536 of a call frame into with(window) to avoid shadowing local variables by global ones. 33537 33538 2010-10-13 Adam Barth <abarth (a] webkit.org> 33539 33540 Reviewed by Darin Adler. 33541 33542 Implement getParameter from the URL API 33543 https://bugs.webkit.org/show_bug.cgi?id=46610 33544 33545 Another API from 33546 https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en# 33547 getParameter lets a web site easily read the value of a URL parameter. 33548 This API is for the simple case of a non-repeated parameter name. 33549 getParameterAll will handle repeated parameter names in a future patch. 33550 33551 Tests: fast/dom/anchor-getParameter.html 33552 http/tests/misc/location-getParameter.html 33553 33554 * html/HTMLAnchorElement.cpp: 33555 (WebCore::HTMLAnchorElement::getParameter): 33556 * html/HTMLAnchorElement.h: 33557 * html/HTMLAnchorElement.idl: 33558 * page/Location.cpp: 33559 (WebCore::Location::getParameter): 33560 * page/Location.h: 33561 * page/Location.idl: 33562 * platform/KURL.cpp: 33563 (WebCore::KURL::copyParsedQueryTo): 33564 * platform/KURLGoogle.cpp: 33565 (WebCore::KURL::copyParsedQueryTo): 33566 * platform/KURL.h: 33567 33568 2010-10-14 Alejandro G. Castro <alex (a] igalia.com> 33569 33570 Unreviewed. GTK build fix. 33571 33572 * platform/network/soup/ResourceHandleSoup.cpp: 33573 (WebCore::sendRequestCallback): 33574 33575 2010-10-14 Adrienne Walker <enne (a] google.com> 33576 33577 Reviewed by James Robinson. 33578 33579 Add a short-term solution for large layers. Layers that are too 33580 large to be contained in a single texture just upload the portion of 33581 the layer that is within the content rect. A longer-term solution 33582 is still tiling with proper memory management. Layers that have full 33583 3D transforms (more than just translations) are still not drawn. 33584 https://bugs.webkit.org/show_bug.cgi?id=47016 33585 33586 Test: compositing/tiling 33587 33588 * platform/graphics/chromium/ContentLayerChromium.cpp: 33589 (WebCore::ContentLayerChromium::ContentLayerChromium): 33590 (WebCore::ContentLayerChromium::requiresClippedUpdateRect): 33591 (WebCore::ContentLayerChromium::calculateClippedUpdateRect): 33592 (WebCore::ContentLayerChromium::updateContents): 33593 (WebCore::ContentLayerChromium::updateTextureRect): 33594 (WebCore::ContentLayerChromium::draw): 33595 * platform/graphics/chromium/ContentLayerChromium.h: 33596 * platform/graphics/chromium/ImageLayerChromium.cpp: 33597 (WebCore::ImageLayerChromium::updateContents): 33598 * platform/graphics/chromium/LayerRendererChromium.cpp: 33599 (WebCore::LayerRendererChromium::drawLayers): 33600 * platform/graphics/chromium/LayerRendererChromium.h: 33601 (WebCore::LayerRendererChromium::rootLayerContentRect): 33602 33603 2010-10-14 Chris Rogers <crogers (a] google.com> 33604 33605 Reviewed by Chris Fleizach. 33606 33607 Add DelayDSPKernel files 33608 https://bugs.webkit.org/show_bug.cgi?id=47518 33609 33610 No new tests since audio API is not yet implemented. 33611 33612 * webaudio/DelayDSPKernel.cpp: Added. 33613 (WebCore::DelayDSPKernel::DelayDSPKernel): 33614 (WebCore::DelayDSPKernel::process): 33615 (WebCore::DelayDSPKernel::reset): 33616 * webaudio/DelayDSPKernel.h: Added. 33617 (WebCore::DelayDSPKernel::maxDelayTime): 33618 (WebCore::DelayDSPKernel::setDelayFrames): 33619 (WebCore::DelayDSPKernel::delayProcessor): 33620 33621 2010-10-13 Sergio Villar Senin <svillar (a] igalia.com> 33622 33623 Reviewed by Martin Robinson. 33624 33625 WebKitGtk+ to use the new API from the imported SoupURILoader code 33626 33627 [GTK] Add HTTP caching support 33628 https://bugs.webkit.org/show_bug.cgi?id=44261 33629 33630 ResourceHandleSoup now does everything via SoupURILoader. This means 33631 that all URLs are handled via the same code path, where WebCore simply 33632 asks libsoup for a WebKitSoupRequest and the request returns an input 33633 stream. Many of ResourceHandleSoup's data members are now PlatformRefPtr 33634 as well, to simplify reference counting 33635 33636 * platform/network/ResourceHandleInternal.h: 33637 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 33638 * platform/network/soup/ResourceHandleSoup.cpp: 33639 (WebCore::ResourceHandleInternal::~ResourceHandleInternal): 33640 (WebCore::ResourceHandle::~ResourceHandle): 33641 (WebCore::restartedCallback): 33642 (WebCore::gotChunkCallback): 33643 (WebCore::parseDataUrl): 33644 (WebCore::cleanupSoupRequestOperation): 33645 (WebCore::sendRequestCallback): 33646 (WebCore::startHttp): 33647 (WebCore::ResourceHandle::start): 33648 (WebCore::ResourceHandle::cancel): 33649 (WebCore::closeCallback): 33650 (WebCore::readCallback): 33651 (WebCore::startGio): 33652 * platform/network/soup/ResourceRequest.h: 33653 * platform/network/soup/ResourceRequestSoup.cpp: 33654 (WebCore::ResourceRequest::updateSoupMessage): 33655 33656 2010-10-12 Abhishek Arya <inferno (a] chromium.org> 33657 33658 Reviewed by Darin Adler. 33659 33660 Prevent block logical height of a root inline box from overflowing by clamping it 33661 at INT_MAX. Otherwise, we will not be able to properly dirty the set of lines during 33662 removal a floating object. 33663 https://bugs.webkit.org/show_bug.cgi?id=45611 33664 33665 Test: fast/overflow/overflow-block-logical-height-crash.html 33666 33667 * rendering/RootInlineBox.cpp: 33668 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 33669 33670 2010-10-13 James Robinson <jamesr (a] chromium.org> 33671 33672 Reviewed by Darin Adler. 33673 33674 Throw INDEX_SIZE_ERR exception if createRadialGradient is called with a negative radius 33675 Canvas: radialGradient with negative radius should throw exception 33676 https://bugs.webkit.org/show_bug.cgi?id=37176 33677 33678 This matches the canvas 2d specification, Opera, IE9 beta and our behavior for arc() 33679 and arcTo(). Also fixes some PassRefPtr/RefPtr errors in this file. 33680 33681 Test: canvas/philip/tests/2d.gradient.radial.negative.html 33682 33683 * html/canvas/CanvasRenderingContext2D.cpp: 33684 (WebCore::CanvasRenderingContext2D::createLinearGradient): 33685 (WebCore::CanvasRenderingContext2D::createRadialGradient): 33686 (WebCore::createEmptyImageData): 33687 (WebCore::CanvasRenderingContext2D::measureText): 33688 33689 2010-10-13 Fridrich Strba <fridrich.strba (a] bluewin.ch> 33690 33691 Reviewed by Darin Adler. 33692 33693 Add WebCore/plugins/win directory to CFLAGS 33694 https://bugs.webkit.org/show_bug.cgi?id=45547 33695 33696 * GNUmakefile.am: 33697 33698 2010-10-13 Martin Robinson <mrobinson (a] igalia.com> 33699 33700 Build fix for older versions of libsoup. 33701 33702 * platform/network/soup/cache/soup-request-file.c: 33703 (webkit_soup_request_file_ensure_file): Access the path member of the SoupURI directly. 33704 33705 2010-10-13 Kwang Yul Seo <skyul (a] company100.net> 33706 33707 Reviewed by Kent Tamura. 33708 33709 [BREWMP] Add TextBoundaries and TextBreakIterator 33710 https://bugs.webkit.org/show_bug.cgi?id=46105 33711 33712 Copy the implementation of WinCE port. 33713 33714 * platform/text/brew/TextBoundariesBrew.cpp: Added. 33715 (WebCore::findNextWordFromIndex): 33716 (WebCore::findWordBoundary): 33717 * platform/text/brew/TextBreakIteratorBrew.cpp: Added. 33718 (WebCore::isCharStop): 33719 (WebCore::isLineStop): 33720 (WebCore::isSentenceStop): 33721 (WebCore::TextBreakIterator::reset): 33722 (WebCore::TextBreakIterator::following): 33723 (WebCore::TextBreakIterator::preceding): 33724 (WebCore::WordBreakIterator::first): 33725 (WebCore::WordBreakIterator::next): 33726 (WebCore::WordBreakIterator::previous): 33727 (WebCore::CharBreakIterator::first): 33728 (WebCore::CharBreakIterator::next): 33729 (WebCore::CharBreakIterator::previous): 33730 (WebCore::LineBreakIterator::first): 33731 (WebCore::LineBreakIterator::next): 33732 (WebCore::LineBreakIterator::previous): 33733 (WebCore::SentenceBreakIterator::first): 33734 (WebCore::SentenceBreakIterator::next): 33735 (WebCore::SentenceBreakIterator::previous): 33736 (WebCore::wordBreakIterator): 33737 (WebCore::characterBreakIterator): 33738 (WebCore::lineBreakIterator): 33739 (WebCore::sentenceBreakIterator): 33740 (WebCore::textBreakFirst): 33741 (WebCore::textBreakNext): 33742 (WebCore::textBreakPreceding): 33743 (WebCore::textBreakFollowing): 33744 (WebCore::textBreakCurrent): 33745 (WebCore::isTextBreak): 33746 (WebCore::cursorMovementIterator): 33747 33748 2010-10-13 Jeremy Orlow <jorlow (a] chromium.org> 33749 33750 Reviewed by Nate Chapin. 33751 33752 IndexedDB should fire some errors synchronously 33753 https://bugs.webkit.org/show_bug.cgi?id=47530 33754 33755 Add dumb plumbing to pass around exception codes. 33756 Utilize that plumbing in the backend to fire some 33757 errors synchronously. 33758 Verify that create/remove* functions are only called 33759 in setVersionTransactions (and raise when not). 33760 Remove plumbing for obsolete IDBDatabase.objectStore 33761 Remove obsolete mode param. 33762 33763 * storage/IDBCursor.cpp: 33764 (WebCore::IDBCursor::update): 33765 (WebCore::IDBCursor::continueFunction): 33766 (WebCore::IDBCursor::remove): 33767 * storage/IDBCursor.h: 33768 (WebCore::IDBCursor::continueFunction): 33769 * storage/IDBCursor.idl: 33770 * storage/IDBCursorBackendImpl.cpp: 33771 (WebCore::IDBCursorBackendImpl::update): 33772 (WebCore::IDBCursorBackendImpl::continueFunction): 33773 (WebCore::IDBCursorBackendImpl::remove): 33774 * storage/IDBCursorBackendImpl.h: 33775 * storage/IDBCursorBackendInterface.h: 33776 * storage/IDBDatabase.cpp: 33777 (WebCore::IDBDatabase::IDBDatabase): 33778 (WebCore::IDBDatabase::createObjectStore): 33779 (WebCore::IDBDatabase::removeObjectStore): 33780 (WebCore::IDBDatabase::setVersion): 33781 (WebCore::IDBDatabase::transaction): 33782 * storage/IDBDatabase.h: 33783 (WebCore::IDBDatabase::createObjectStore): 33784 (WebCore::IDBDatabase::transaction): 33785 * storage/IDBDatabase.idl: 33786 * storage/IDBDatabaseBackendImpl.cpp: 33787 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 33788 (WebCore::IDBDatabaseBackendImpl::objectStore): 33789 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 33790 (WebCore::IDBDatabaseBackendImpl::setVersion): 33791 (WebCore::IDBDatabaseBackendImpl::transaction): 33792 * storage/IDBDatabaseBackendImpl.h: 33793 * storage/IDBDatabaseBackendInterface.h: 33794 * storage/IDBFactory.cpp: 33795 (WebCore::IDBFactory::open): 33796 * storage/IDBFactory.h: 33797 (WebCore::IDBFactory::open): 33798 * storage/IDBFactory.idl: 33799 * storage/IDBIndex.cpp: 33800 (WebCore::IDBIndex::openCursor): 33801 (WebCore::IDBIndex::openKeyCursor): 33802 (WebCore::IDBIndex::get): 33803 (WebCore::IDBIndex::getKey): 33804 * storage/IDBIndex.h: 33805 (WebCore::IDBIndex::openCursor): 33806 (WebCore::IDBIndex::openKeyCursor): 33807 * storage/IDBIndex.idl: 33808 * storage/IDBIndexBackendImpl.cpp: 33809 (WebCore::IDBIndexBackendImpl::openCursor): 33810 (WebCore::IDBIndexBackendImpl::openKeyCursor): 33811 (WebCore::IDBIndexBackendImpl::get): 33812 (WebCore::IDBIndexBackendImpl::getKey): 33813 * storage/IDBIndexBackendImpl.h: 33814 * storage/IDBIndexBackendInterface.h: 33815 * storage/IDBObjectStore.cpp: 33816 (WebCore::IDBObjectStore::get): 33817 (WebCore::IDBObjectStore::add): 33818 (WebCore::IDBObjectStore::put): 33819 (WebCore::IDBObjectStore::remove): 33820 (WebCore::IDBObjectStore::createIndex): 33821 (WebCore::IDBObjectStore::index): 33822 (WebCore::IDBObjectStore::removeIndex): 33823 (WebCore::IDBObjectStore::openCursor): 33824 * storage/IDBObjectStore.h: 33825 (WebCore::IDBObjectStore::add): 33826 (WebCore::IDBObjectStore::put): 33827 (WebCore::IDBObjectStore::createIndex): 33828 (WebCore::IDBObjectStore::openCursor): 33829 * storage/IDBObjectStore.idl: 33830 * storage/IDBObjectStoreBackendImpl.cpp: 33831 (WebCore::IDBObjectStoreBackendImpl::get): 33832 (WebCore::IDBObjectStoreBackendImpl::put): 33833 (WebCore::IDBObjectStoreBackendImpl::remove): 33834 (WebCore::IDBObjectStoreBackendImpl::createIndex): 33835 (WebCore::IDBObjectStoreBackendImpl::index): 33836 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 33837 (WebCore::IDBObjectStoreBackendImpl::openCursor): 33838 * storage/IDBObjectStoreBackendImpl.h: 33839 (WebCore::IDBObjectStoreBackendImpl::name): 33840 (WebCore::IDBObjectStoreBackendImpl::keyPath): 33841 (WebCore::IDBObjectStoreBackendImpl::autoIncrement): 33842 * storage/IDBObjectStoreBackendInterface.h: 33843 * storage/IDBTransaction.cpp: 33844 (WebCore::IDBTransaction::objectStore): 33845 * storage/IDBTransaction.h: 33846 * storage/IDBTransactionBackendImpl.cpp: 33847 (WebCore::IDBTransactionBackendImpl::objectStore): 33848 33849 2010-10-13 Sergio Villar Senin <svillar (a] igalia.com> 33850 33851 Reviewed by Martin Robinson. 33852 33853 [GTK] Add HTTP caching support 33854 https://bugs.webkit.org/show_bug.cgi?id=44261 33855 33856 This patch adds HTTP caching support to libsoup networking backend. 33857 This code will eventually be part of libsoup, but has been temporarily 33858 imported into the WebCore tree for testing purposes. All libsoup code 33859 is located in WebCore/platform/network/soup/cache. The webkit prefix 33860 was added to all the symbols to prevent problems when this lands in 33861 libsoup. Some external API was also added under webkit/ directory and 33862 will be used by library clients to enable HTTP caching. 33863 33864 There are two parts to this imported code, the first one is the code 33865 under WebCore/platform/network/soup/cache/ that contains all the 33866 SoupURILoader code that supports the development of the cache. The 33867 second part is the HTTP cache implementation located in 33868 WebCore/platform/network/soup/cache/webkit/. 33869 33870 * GNUmakefile.am: 33871 * platform/network/soup/cache/soup-directory-input-stream.c: Added. 33872 (webkit_soup_directory_input_stream_parse_info): 33873 (webkit_soup_directory_input_stream_read_next_file): 33874 (webkit_soup_directory_input_stream_read): 33875 (webkit_soup_directory_input_stream_close): 33876 (webkit_soup_directory_input_stream_class_init): 33877 (webkit_soup_directory_input_stream_init): 33878 (webkit_soup_directory_input_stream_new): 33879 * platform/network/soup/cache/soup-directory-input-stream.h: Added. 33880 * platform/network/soup/cache/soup-http-input-stream.c: Added. 33881 (webkit_soup_http_input_stream_finalize): 33882 (webkit_soup_http_input_stream_class_init): 33883 (webkit_soup_http_input_stream_seekable_iface_init): 33884 (webkit_soup_http_input_stream_init): 33885 (webkit_soup_http_input_stream_queue_message): 33886 (webkit_soup_http_input_stream_new): 33887 (webkit_soup_http_input_stream_got_headers): 33888 (webkit_soup_http_input_stream_got_chunk): 33889 (webkit_soup_http_input_stream_finished): 33890 (webkit_soup_http_input_stream_cancelled): 33891 (webkit_soup_http_input_stream_prepare_for_io): 33892 (webkit_soup_http_input_stream_done_io): 33893 (set_error_if_http_failed): 33894 (read_from_leftover): 33895 (webkit_soup_http_input_stream_send_internal): 33896 (send_sync_finished): 33897 (webkit_soup_http_input_stream_send): 33898 (webkit_soup_http_input_stream_read): 33899 (webkit_soup_http_input_stream_close): 33900 (wrapper_callback): 33901 (send_async_thread): 33902 (webkit_soup_http_input_stream_send_async_in_thread): 33903 (send_async_finished): 33904 (webkit_soup_http_input_stream_send_async_internal): 33905 (webkit_soup_http_input_stream_send_async): 33906 (webkit_soup_http_input_stream_send_finish): 33907 (read_async_done): 33908 (webkit_soup_http_input_stream_read_async): 33909 (webkit_soup_http_input_stream_read_finish): 33910 (webkit_soup_http_input_stream_close_async): 33911 (webkit_soup_http_input_stream_close_finish): 33912 (webkit_soup_http_input_stream_tell): 33913 (webkit_soup_http_input_stream_can_seek): 33914 (webkit_soup_http_input_stream_seek): 33915 (webkit_soup_http_input_stream_can_truncate): 33916 (webkit_soup_http_input_stream_truncate): 33917 (webkit_soup_http_input_stream_get_message): 33918 * platform/network/soup/cache/soup-http-input-stream.h: Added. 33919 * platform/network/soup/cache/soup-request-data.c: Added. 33920 (webkit_soup_request_data_init): 33921 (webkit_soup_request_data_finalize): 33922 (webkit_soup_request_data_check_uri): 33923 (uri_decoded_copy): 33924 (webkit_soup_request_data_send): 33925 (webkit_soup_request_data_get_content_length): 33926 (webkit_soup_request_data_get_content_type): 33927 (webkit_soup_request_data_class_init): 33928 * platform/network/soup/cache/soup-request-data.h: Added. 33929 * platform/network/soup/cache/soup-request-file.c: Added. 33930 (webkit_soup_request_file_get_file): 33931 (webkit_soup_request_file_init): 33932 (webkit_soup_request_file_finalize): 33933 (webkit_soup_request_file_check_uri): 33934 (webkit_soup_request_file_ftp_main_loop_quit): 33935 (webkit_soup_request_file_ensure_file_ftp): 33936 (webkit_soup_request_file_ensure_file): 33937 (webkit_soup_request_file_send): 33938 (webkit_soup_request_file_send_async_thread): 33939 (webkit_soup_request_file_send_async): 33940 (webkit_soup_request_file_send_finish): 33941 (webkit_soup_request_file_get_content_length): 33942 (webkit_soup_request_file_get_content_type): 33943 (webkit_soup_request_file_class_init): 33944 * platform/network/soup/cache/soup-request-file.h: Added. 33945 * platform/network/soup/cache/soup-request-http.c: Added. 33946 (webkit_soup_request_http_get_message): 33947 (webkit_soup_request_http_init): 33948 (webkit_soup_request_http_check_uri): 33949 (webkit_soup_request_http_finalize): 33950 (webkit_soup_request_http_send): 33951 (sent_async): 33952 (conditional_get_ready_cb): 33953 (send_async_cb): 33954 (webkit_soup_request_http_send_async): 33955 (webkit_soup_request_http_send_finish): 33956 (webkit_soup_request_http_get_content_length): 33957 (webkit_soup_request_http_get_content_type): 33958 (webkit_soup_request_http_class_init): 33959 * platform/network/soup/cache/soup-request-http.h: Added. 33960 * platform/network/soup/cache/soup-request.c: Added. 33961 (webkit_soup_request_init): 33962 (webkit_soup_request_finalize): 33963 (webkit_soup_request_set_property): 33964 (webkit_soup_request_get_property): 33965 (webkit_soup_request_initable_init): 33966 (webkit_soup_request_default_check_uri): 33967 (webkit_soup_request_default_send_async): 33968 (webkit_soup_request_default_send_finish): 33969 (webkit_soup_request_send): 33970 (webkit_soup_request_send_async): 33971 (webkit_soup_request_send_finish): 33972 (webkit_soup_request_class_init): 33973 (webkit_soup_request_initable_interface_init): 33974 (webkit_soup_request_get_uri): 33975 (webkit_soup_request_get_session): 33976 (webkit_soup_request_get_content_length): 33977 (webkit_soup_request_get_content_type): 33978 * platform/network/soup/cache/soup-request.h: Added. 33979 * platform/network/soup/cache/soup-requester.c: Added. 33980 (webkit_soup_requester_init): 33981 (finalize): 33982 (webkit_soup_requester_class_init): 33983 (init_request_types): 33984 (webkit_soup_requester_new): 33985 (webkit_soup_requester_request): 33986 (webkit_soup_requester_request_uri): 33987 (webkit_soup_scheme_is_valid): 33988 (webkit_soup_requester_add_protocol): 33989 (webkit_soup_requester_remove_protocol): 33990 (webkit_soup_error_quark): 33991 * platform/network/soup/cache/soup-requester.h: Added. 33992 * platform/network/soup/cache/webkit/soup-cache-private.h: Added. 33993 * platform/network/soup/cache/webkit/soup-cache.c: Added. 33994 (get_cacheability): 33995 (webkit_soup_cache_entry_free): 33996 (copy_headers): 33997 (update_headers): 33998 (webkit_soup_cache_entry_get_current_age): 33999 (webkit_soup_cache_entry_is_fresh_enough): 34000 (webkit_soup_message_get_cache_key): 34001 (webkit_soup_cache_entry_set_freshness): 34002 (webkit_soup_cache_entry_new): 34003 (webkit_soup_cache_writing_fixture_free): 34004 (close_ready_cb): 34005 (write_ready_cb): 34006 (msg_got_chunk_cb): 34007 (msg_got_body_cb): 34008 (webkit_soup_cache_entry_delete): 34009 (lru_compare_func): 34010 (cache_accepts_entries_of_size): 34011 (make_room_for_new_entry): 34012 (webkit_soup_cache_entry_insert_by_key): 34013 (msg_restarted_cb): 34014 (append_to_ready_cb): 34015 (msg_got_headers_cb): 34016 (webkit_soup_cache_send_response): 34017 (request_started): 34018 (attach): 34019 (webkit_soup_cache_session_feature_init): 34020 (webkit_soup_cache_init): 34021 (webkit_soup_cache_finalize): 34022 (webkit_soup_cache_set_property): 34023 (webkit_soup_cache_get_property): 34024 (webkit_soup_cache_constructed): 34025 (webkit_soup_cache_type_get_type): 34026 (webkit_soup_cache_class_init): 34027 (webkit_soup_cache_new): 34028 (webkit_soup_cache_has_response): 34029 (webkit_soup_cache_get_cacheability): 34030 (force_flush_timeout): 34031 (webkit_soup_cache_flush): 34032 (remove_cache_item): 34033 (webkit_soup_cache_clear): 34034 (webkit_soup_cache_generate_conditional_request): 34035 (pack_entry): 34036 (webkit_soup_cache_dump): 34037 (webkit_soup_cache_load): 34038 (webkit_soup_cache_set_max_size): 34039 (webkit_soup_cache_get_max_size): 34040 * platform/network/soup/cache/webkit/soup-cache.h: Added. 34041 34042 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34043 34044 Chromium build fix. 34045 34046 * bindings/v8/ScriptProfiler.cpp: 34047 34048 2010-10-13 Chris Evans <cevans (a] google.com> 34049 34050 Reviewed by Jian Li. 34051 34052 Blob / BlobBuilder can be put into bad state with wild integers and strings, due to integer overflows 34053 https://bugs.webkit.org/show_bug.cgi?id=47382 34054 34055 Fix integer overflow errors in Blob.slice and BlobBuilder.append. 34056 34057 Test: fast/files/blob-slice-overflow.html 34058 34059 * fileapi/Blob.cpp: 34060 (WebCore::Blob::slice): handle integer overflow properly. 34061 * fileapi/BlobBuilder.cpp: 34062 (WebCore::BlobBuilder::append): use correct type for vector length. 34063 34064 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34065 34066 Build fix - remove some redundant references to ScriptString. 34067 34068 * WebCore.gypi: 34069 * WebCore.pro: 34070 * bindings/v8/ScriptProfiler.cpp: 34071 34072 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34073 34074 Reviewed by Oliver Hunt. 34075 34076 Bug 47621 - Remove bindings/v8/ScriptString 34077 This is now redundant. 34078 34079 * bindings/v8/ScriptCallFrame.h: 34080 (WebCore::ScriptCallFrame::functionName): 34081 * bindings/v8/ScriptFunctionCall.cpp: 34082 * bindings/v8/ScriptFunctionCall.h: 34083 * bindings/v8/ScriptString.h: Removed. 34084 * bindings/v8/ScriptStringImpl.cpp: Removed. 34085 * bindings/v8/ScriptStringImpl.h: Removed. 34086 34087 2010-10-13 Anders Carlsson <andersca (a] apple.com> 34088 34089 Reviewed by John Sullivan. 34090 34091 Draw the find overlay holes 34092 https://bugs.webkit.org/show_bug.cgi?id=47631 34093 34094 Export symbols needed by WebKit2. 34095 34096 * WebCore.exp.in: 34097 34098 2010-10-13 James Simonsen <simonjam (a] chromium.org> 34099 34100 Reviewed by Darin Adler. 34101 34102 Implement onreadystatechange event handler for Documents 34103 https://bugs.webkit.org/show_bug.cgi?id=26140 34104 34105 Test: fast/dom/Document/readystate.html 34106 34107 * dom/Document.cpp: 34108 (WebCore::Document::setReadyState): Fire readystatechangeevent. 34109 (WebCore::Document::open): Clear event listeners. 34110 * dom/Document.h: Add readystatechange event. 34111 * dom/Document.idl: Ditto. 34112 34113 2010-10-13 Chris Fleizach <cfleizach (a] apple.com> 34114 34115 Reviewed by Beth Dakin. 34116 34117 AX: accessibilityIsIgnored not respected on ARIA tables 34118 https://bugs.webkit.org/show_bug.cgi?id=47564 34119 34120 For platforms that ignore column headers and header container objects (everything 34121 except Mac) on accessibility tables, that choice needs to be respected in 34122 ARIA tables as well. 34123 34124 GTK is the only open platform doing this, so I'll have to collect the result of this 34125 test. It was copied from table-hierarchy.html, but changed to use ARIA tables. 34126 34127 Test: platform/gtk/accessibility/aria-table-hierarchy.html 34128 34129 * accessibility/AccessibilityARIAGrid.cpp: 34130 (WebCore::AccessibilityARIAGrid::addChildren): 34131 34132 2010-10-13 Victoria Kirst <vrk (a] google.com> 34133 34134 Reviewed by James Robinson. 34135 34136 No longer ASSERT for LayerRenderer in VideoLayerChromium destructor 34137 https://bugs.webkit.org/show_bug.cgi?id=47432 34138 34139 * platform/graphics/chromium/VideoLayerChromium.cpp: 34140 (WebCore::VideoLayerChromium::cleanupResources): 34141 34142 2010-10-13 Leandro Pereira <leandro (a] profusion.mobi> 34143 34144 [EFL] Unreviewed. Build fix. 34145 34146 * CMakeLists.txt: Add ContextShadow.cpp. 34147 * CMakeListsEfl.txt: Add ContextShadowCairo.cpp. 34148 34149 2010-10-13 Martin Robinson <mrobinson (a] igalia.com> 34150 34151 Reviewed by Holger Freyther. 34152 34153 [GTK] r69681 caused some tests to crash 34154 https://bugs.webkit.org/show_bug.cgi?id=47622 34155 34156 Properly initialize m_layerContext on the ContextShadow so that in situations 34157 where beginShadowLayer bails out early with a null return value, it is set 34158 to null. This may happen when the first call to beginShadowLayer on a particular 34159 ContextShadow uses a region which is entirely outside the clip region or which 34160 is empty. 34161 34162 * platform/graphics/cairo/ContextShadow.cpp: 34163 (WebCore::ContextShadow::ContextShadow): Properly initialize m_layerContext. 34164 34165 2010-10-13 Anders Carlsson <andersca (a] apple.com> 34166 34167 Reviewed by Beth Dakin. 34168 34169 Don't set the fill/stroke colorspace before filling/stroking 34170 https://bugs.webkit.org/show_bug.cgi?id=47619 34171 34172 Setting the colorspace has the side-effect of setting the color to black, which is 34173 not what we want. When fill/stroke is called, a fill/stroke color should already have been set. 34174 34175 Pixel tests show no regressions from this change. 34176 34177 * platform/graphics/cg/GraphicsContextCG.cpp: 34178 (WebCore::GraphicsContext::fillPath): 34179 (WebCore::GraphicsContext::strokePath): 34180 (WebCore::GraphicsContext::fillRect): 34181 (WebCore::GraphicsContext::strokeRect): 34182 34183 2010-10-13 Brent Fulgham <bfulgham (a] webkit.org> 34184 34185 Unreviewed WinCairo build fix. 34186 New ContextShadow class not built for Windows builds. 34187 34188 * WebCore.vcproj/WebCore.vcproj: Add missing files for 34189 building ContextShadow on WinCairo. 34190 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 34191 Add missing include for ContextShadow definition. 34192 34193 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34194 34195 Chromium build fix pt1. 34196 34197 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 34198 (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): 34199 34200 2010-10-13 Anders Carlsson <andersca (a] apple.com> 34201 34202 Reviewed by Sam Weinig. 34203 34204 Send over find indicator information to the UI process 34205 https://bugs.webkit.org/show_bug.cgi?id=47612 34206 34207 Export symbols needed by WebKit2. 34208 34209 * WebCore.exp.in: 34210 34211 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34212 34213 Reviewed by Oliver Hunt. 34214 34215 https://bugs.webkit.org/show_bug.cgi?id=43987 34216 Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder 34217 to construct their internal result string. Remove ScriptString (this is now 34218 redundant). 34219 34220 * WebCore.xcodeproj/project.pbxproj: 34221 * bindings/js/JSDOMBinding.cpp: 34222 (WebCore::jsOwnedStringOrNull): 34223 * bindings/js/JSDOMBinding.h: 34224 * bindings/js/JSXMLHttpRequestCustom.cpp: 34225 (WebCore::JSXMLHttpRequest::responseText): 34226 * bindings/js/ScriptCallFrame.cpp: 34227 (WebCore::ScriptCallFrame::ScriptCallFrame): 34228 * bindings/js/ScriptCallFrame.h: 34229 (WebCore::ScriptCallFrame::functionName): 34230 * bindings/js/ScriptCallStack.h: 34231 * bindings/js/ScriptFunctionCall.cpp: 34232 * bindings/js/ScriptFunctionCall.h: 34233 * bindings/js/ScriptString.h: Removed. 34234 * dom/ScriptExecutionContext.h: 34235 * fileapi/FileReader.cpp: 34236 (WebCore::FileReader::FileReader): 34237 (WebCore::FileReader::abort): 34238 (WebCore::FileReader::didReceiveData): 34239 (WebCore::FileReader::result): 34240 (WebCore::FileReader::convertToText): 34241 (WebCore::FileReader::convertToDataURL): 34242 * fileapi/FileReader.h: 34243 * fileapi/FileReaderSync.cpp: 34244 (WebCore::FileReaderSyncLoader::FileReaderSyncLoader): 34245 (WebCore::FileReaderSyncLoader::didReceiveData): 34246 (WebCore::FileReaderSync::readAsBinaryString): 34247 (WebCore::FileReaderSync::readAsText): 34248 (WebCore::FileReaderSync::readAsDataURL): 34249 (WebCore::FileReaderSync::read): 34250 (WebCore::FileReaderSync::convertToText): 34251 * fileapi/FileReaderSync.h: 34252 (WebCore::FileReaderSync::readAsText): 34253 (WebCore::FileReaderSync::FileReaderSync): 34254 * inspector/InspectorController.cpp: 34255 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 34256 (WebCore::InspectorController::scriptImported): 34257 * inspector/InspectorController.h: 34258 * inspector/InspectorResource.cpp: 34259 (WebCore::InspectorResource::setOverrideContent): 34260 * inspector/InspectorResource.h: 34261 * loader/FrameLoader.cpp: 34262 * loader/FrameLoader.h: 34263 * loader/FrameLoaderClient.h: 34264 * loader/ResourceLoadNotifier.h: 34265 * workers/WorkerScriptLoader.h: 34266 * xml/XMLHttpRequest.cpp: 34267 (WebCore::XMLHttpRequest::XMLHttpRequest): 34268 (WebCore::XMLHttpRequest::responseText): 34269 (WebCore::XMLHttpRequest::responseXML): 34270 (WebCore::XMLHttpRequest::abort): 34271 (WebCore::XMLHttpRequest::clearResponse): 34272 (WebCore::XMLHttpRequest::dropProtection): 34273 (WebCore::XMLHttpRequest::didFinishLoading): 34274 (WebCore::XMLHttpRequest::didReceiveData): 34275 * xml/XMLHttpRequest.h: 34276 34277 2010-10-13 Gavin Barraclough <barraclough (a] apple.com> 34278 34279 Reviewed by Oliver Hunt. 34280 34281 Bug 43987 - Downloading using XHR is much slower than before 34282 34283 * svg/SVGPathStringBuilder.cpp: 34284 (WebCore::SVGPathStringBuilder::result): 34285 StringBuilder::size() -> StringBuilder::length(). 34286 34287 2010-10-13 Yong Li <yoli (a] rim.com> 34288 34289 Reviewed by Oliver Hunt. 34290 34291 Fix potential misaligned memory access in CloneDeserializer::readLittleEndian and readString 34292 that can result crash on ARM (<v6). 34293 https://bugs.webkit.org/show_bug.cgi?id=47594 34294 34295 No new test added, because the crash can be produced by existing tests like: 34296 LayoutTests/fast/events/message-channel-gc-4.html 34297 34298 * bindings/js/SerializedScriptValue.cpp: 34299 (WebCore::CloneDeserializer::readLittleEndian): 34300 (WebCore::CloneDeserializer::readString): 34301 34302 2010-10-06 Martin Robinson <mrobinson (a] igalia.com> 34303 34304 Reviewed by Dirk Schulze. 34305 34306 [Cairo] Activate ContextShadow in all places where shadows are drawn 34307 https://bugs.webkit.org/show_bug.cgi?id=46475 34308 34309 Turn on ContextShadow for the Cairo port and remove all old shadow code. 34310 Shadow tiling optimizations will be added in a followup patch to ContextShadowCairo. 34311 34312 * platform/graphics/GraphicsContext.h: Add a ContextShadow forward declaration for Cairo. 34313 * platform/graphics/cairo/FontCairo.cpp: Switch to using ContextShadow. 34314 (WebCore::prepareContextForGlyphDrawing): Added this helper which sets up the translation 34315 on the specified cairo_t to prepare for drawing glyphs. 34316 (WebCore::drawGlyphsToContext): Added this helper which draws the glyphs to a cairo_t, 34317 while properly handling glyphs with synthetic bold. 34318 (WebCore::Font::drawGlyphs): Removed old shadow code and replaced it with ContextShadow usage. 34319 * platform/graphics/cairo/GraphicsContextCairo.cpp: 34320 (WebCore::drawPathShadow): Modified this to use ContextShadow and to take an enum 34321 argument specifying whether to fill or stroke the solid figure for the shadow. 34322 (WebCore::fillCurrentCairoPath): Updated drawPathShadow call. 34323 (WebCore::strokeCurrentCairoPath): Ditto. 34324 (WebCore::GraphicsContext::savePlatformState): Save the ContextShadow. 34325 (WebCore::GraphicsContext::restorePlatformState): Restore the ContextShadow. 34326 (WebCore::GraphicsContext::drawPath): Updated drawPathShadow call. 34327 (WebCore::GraphicsContext::fillRect): Uses ContextShadow now. 34328 (WebCore::GraphicsContext::setPlatformShadow): Uses ContextShadow now. 34329 (WebCore::GraphicsContext::contextShadow): Added. 34330 (WebCore::GraphicsContext::clearPlatformShadow): Clears the ContextShadow member. 34331 (WebCore::GraphicsContext::fillRoundedRect): Updated drawPathShadow call. 34332 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 34333 (WebCore::GraphicsContextPlatformPrivate::hasShadow): Added. 34334 * platform/graphics/cairo/ImageCairo.cpp: 34335 (WebCore::BitmapImage::draw): Updated to use ContextShadow. 34336 34337 2010-10-13 John Knottenbelt <jknotten (a] chromium.org> 34338 34339 Reviewed by Steve Block. 34340 34341 First step towards client-based Geolocation in Chromium. Build 34342 fixes for CLIENT_BASED_GEOLOCATION preprocessor feature define. 34343 https://bugs.webkit.org/show_bug.cgi?id=47586 34344 34345 * WebCore.gyp/WebCore.gyp: 34346 * platform/chromium/ChromiumBridge.h: 34347 * platform/chromium/GeolocationServiceChromium.cpp: 34348 34349 2010-10-13 Steve Block <steveblock (a] google.com> 34350 34351 Unreviewed fix 34352 34353 Need to check for the existence of DeviceOrientation and DeviceMotion controllers 34354 34355 These features can be disabled at run time, so an enable guard is not sufficient. 34356 This bug was introduced in http://trac.webkit.org/changeset/69646 34357 34358 Tested with existing tests. 34359 34360 * history/PageCache.cpp: 34361 (WebCore::logCanCachePageDecision): 34362 (WebCore::PageCache::canCache): 34363 34364 2010-10-13 Yury Semikhatsky <yurys (a] chromium.org> 34365 34366 Reviewed by Pavel Feldman. 34367 34368 Web Inspector: stack information is inconsistent between console.trace and runtime errors. 34369 https://bugs.webkit.org/show_bug.cgi?id=47252 34370 34371 * console.trace() is now formatted the same way as other stack traces 34372 34373 * If there is //@ sourceURL=url line at the end of eval'ed script source 34374 the url will be shown in the stack traces for script. That is why ScriptCallFrame::sourceURL 34375 type has changed from KURL to String. 34376 34377 Tests: inspector/console-trace-in-eval.html 34378 inspector/console-uncaught-exception-in-eval.html 34379 34380 * bindings/js/ScriptCallFrame.cpp: 34381 (WebCore::ScriptCallFrame::ScriptCallFrame): 34382 * bindings/js/ScriptCallFrame.h: 34383 (WebCore::ScriptCallFrame::sourceURL): 34384 * bindings/v8/ScriptCallFrame.cpp: 34385 (WebCore::ScriptCallFrame::ScriptCallFrame): 34386 * bindings/v8/ScriptCallFrame.h: 34387 (WebCore::ScriptCallFrame::sourceURL): 34388 * bindings/v8/ScriptCallStack.cpp: 34389 (WebCore::getFrameLocation): 34390 (WebCore::ScriptCallStack::create): 34391 * bindings/v8/ScriptCallStack.h: 34392 * bindings/v8/ScriptController.cpp: 34393 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 34394 * bindings/v8/custom/V8ConsoleCustom.cpp: 34395 (WebCore::V8Console::traceCallback): 34396 * inspector/ConsoleMessage.cpp: 34397 (WebCore::ConsoleMessage::CallFrame::buildInspectorObject): 34398 (WebCore::ConsoleMessage::ConsoleMessage): 34399 * inspector/ConsoleMessage.h: 34400 * inspector/front-end/ConsoleView.js: 34401 (WebInspector.ConsoleMessage.prototype._formatMessage): 34402 * page/Console.cpp: 34403 (WebCore::Console::addMessage): 34404 (WebCore::Console::count): 34405 (WebCore::Console::timeEnd): 34406 34407 2010-10-13 Kent Tamura <tkent (a] chromium.org> 34408 34409 Unreviewed, a trivial change. 34410 34411 Run sort-Xcode-project-file. 34412 34413 * WebCore.xcodeproj/project.pbxproj: 34414 34415 2010-10-13 Yael Aharon <yael.aharon (a] nokia.com> 34416 34417 Reviewed by Andreas Kling. 34418 34419 Wrong ASSERT when select element has size 0 34420 https://bugs.webkit.org/show_bug.cgi?id=47567 34421 34422 Keep the ASSERT only if the size of the element list is more than 0 34423 Test: fast/dom/HTMLSelectElement/click-size-zero-no-crash.html 34424 34425 * dom/SelectElement.cpp: 34426 (WebCore::SelectElement::updateListBoxSelection): 34427 (WebCore::SelectElement::listBoxDefaultEventHandler): 34428 34429 2010-10-13 Steve Block <steveblock (a] google.com> 34430 34431 Reviewed by Alexey Proskuryakov. 34432 34433 Pages using DeviceOrientation and DeviceMotion should not go into the page cache 34434 https://bugs.webkit.org/show_bug.cgi?id=47408 34435 34436 Tests: fast/dom/DeviceMotion/no-page-cache.html 34437 fast/dom/DeviceOrientation/no-page-cache.html 34438 34439 * dom/DeviceMotionController.h: 34440 (WebCore::DeviceMotionController::isActive): 34441 * dom/DeviceOrientationController.h: 34442 (WebCore::DeviceOrientationController::isActive): 34443 * history/PageCache.cpp: 34444 (WebCore::logCanCachePageDecision): 34445 (WebCore::PageCache::canCache): 34446 * page/Page.cpp: 34447 34448 2010-10-13 Jenn Braithwaite <jennb (a] chromium.org> 34449 34450 Reviewed by Dmitry Titov. 34451 34452 Make resource identifiers unique across pages 34453 https://bugs.webkit.org/show_bug.cgi?id=47002 34454 34455 Test: http/tests/misc/iframe-reparenting-id-collision.html 34456 34457 * loader/ProgressTracker.cpp: 34458 (WebCore::ProgressTracker::ProgressTracker): 34459 (WebCore::ProgressTracker::createUniqueIdentifier): 34460 * loader/ProgressTracker.h: 34461 34462 2010-10-12 Roland Steiner <rolandsteiner (a] chromium.org> 34463 34464 Reviewed by David Hyatt. 34465 34466 Bug 41040 - :before/:after content should not become part of a ruby base 34467 https://bugs.webkit.org/show_bug.cgi?id=41040 34468 34469 Also related to: 34470 https://bugs.webkit.org/show_bug.cgi?id=40895. 34471 https://bugs.webkit.org/show_bug.cgi?id=43722. 34472 34473 Explicitly handle :before and :after content in the default way. 34474 34475 Test: fast/ruby/ruby-beforeafter.html 34476 fast/ruby/after-doesnt-crash.html 34477 34478 * rendering/RenderObject.h: 34479 (WebCore::RenderObject::isBeforeContent): 34480 * rendering/RenderRuby.cpp: 34481 (WebCore::lastRubyRun): 34482 (WebCore::RenderRubyAsInline::addChild): 34483 (WebCore::RenderRubyAsInline::removeChild): 34484 (WebCore::RenderRubyAsBlock::addChild): 34485 (WebCore::RenderRubyAsBlock::removeChild): 34486 34487 2010-10-12 Sheriff Bot <webkit.review.bot (a] gmail.com> 34488 34489 Unreviewed, rolling out r69639. 34490 http://trac.webkit.org/changeset/69639 34491 https://bugs.webkit.org/show_bug.cgi?id=47575 34492 34493 "regressed nav-element.html" (Requested by rniwa on #webkit). 34494 34495 * editing/ApplyBlockElementCommand.cpp: 34496 (WebCore::ApplyBlockElementCommand::formatSelection): 34497 * editing/EditorCommand.cpp: 34498 (WebCore::executeFormatBlock): 34499 * editing/FormatBlockCommand.cpp: 34500 (WebCore::FormatBlockCommand::formatRange): 34501 * editing/FormatBlockCommand.h: 34502 (WebCore::FormatBlockCommand::editingAction): 34503 * editing/VisiblePosition.cpp: 34504 (WebCore::enclosingBlockFlowElement): 34505 * editing/VisiblePosition.h: 34506 * editing/htmlediting.cpp: 34507 (WebCore::validBlockTag): 34508 * editing/htmlediting.h: 34509 34510 2010-10-12 Ryosuke Niwa <rniwa (a] webkit.org> 34511 34512 Reviewed by Tony Chang. 34513 34514 execCommand FormatBlock creates lots of blockquotes 34515 https://bugs.webkit.org/show_bug.cgi?id=19795 34516 34517 The bug was caused by WebKit's not reusing the block node added by previous iteration 34518 and its inserting block node at wrong places. 34519 34520 Fixed the bug by rewriting FormatBlockCommand::formatRange. New code resembles that of 34521 IndentOutdentCommand::indentIntoBlockquote. The difference between two is that formatRange 34522 avoids the existing block elements when replacing blocks and it also adds a placeholder 34523 when removing the existing block caused paragraphs to collapse. 34524 34525 Tests: editing/execCommand/format-block-multiple-paragraphs.html 34526 editing/execCommand/format-block-table.html 34527 34528 * editing/EditorCommand.cpp: 34529 (WebCore::executeFormatBlock): 34530 * editing/FormatBlockCommand.cpp: 34531 (WebCore::FormatBlockCommand::formatRange): Rewritten; see above. 34532 (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement 34533 and moved from htmlediting.cpp. 34534 (WebCore::FormatBlockCommand::enclosingBlockToSplitTreeTo): Added. 34535 * editing/FormatBlockCommand.h: 34536 * editing/VisiblePosition.cpp: 34537 (WebCore::enclosingBlockFlowElement): Changed the return type to Element* 34538 * editing/VisiblePosition.h: 34539 34540 2010-10-11 Girish Ramakrishnan <girish (a] forwardbias.in> 34541 34542 Reviewed by Anders Carlsson. 34543 34544 Make PluginView inherit from PluginViewBase. 34545 34546 This change is a precursor to adding accelerated compositing support 34547 for NPAPI plugins. 34548 34549 https://bugs.webkit.org/show_bug.cgi?id=47418 34550 34551 * page/Page.cpp: 34552 (WebCore::Page::privateBrowsingStateChanged): 34553 * plugins/PluginView.h: 34554 * plugins/PluginViewBase.h: 34555 (WebCore::PluginViewBase::PluginViewBase): 34556 34557 2010-10-12 Kinuko Yasuda <kinuko (a] chromium.org> 34558 34559 Reviewed by Jian Li. 34560 34561 Pass platform path (rather than virtual path) when creating File from FileEntry 34562 https://bugs.webkit.org/show_bug.cgi?id=47563 34563 34564 No new tests, the new test for FileWriter will be verifying this. 34565 34566 * fileapi/FileEntry.cpp: 34567 (WebCore::FileEntry::file): 34568 34569 2010-10-12 David Hyatt <hyatt (a] apple.com> 34570 34571 Reviewed by Dan Bernstein 34572 34573 <rdar://problem/8488444> REGRESSION (r67771) 34574 https://bugs.webkit.org/show_bug.cgi?id=47434 34575 Crash when printing in RenderBlock::markDescendantBlocksAndLinesForLayout 34576 34577 Added printing/simultaneous-position-float-change.html 34578 34579 Remove the markDescendantBlocksAndLinesForLayout method since it can walk m_floatingObjects lists with deleted 34580 objects in them. Make the mechanism for relayout when the page height changes the same as the one when pageY 34581 changes and just tie a concept of pageHeightChanged to the layout state. If that is set, blocks will just 34582 automatically mark themselves as needing layout. 34583 34584 * rendering/LayoutState.cpp: 34585 (WebCore::LayoutState::LayoutState): 34586 * rendering/LayoutState.h: 34587 (WebCore::LayoutState::LayoutState): 34588 (WebCore::LayoutState::pageHeight): 34589 (WebCore::LayoutState::pageHeightChanged): 34590 * rendering/RenderBlock.cpp: 34591 (WebCore::RenderBlock::layoutBlock): 34592 (WebCore::RenderBlock::layoutBlockChild): 34593 (WebCore::RenderBlock::layoutPositionedObjects): 34594 (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): 34595 (WebCore::RenderBlock::insertFloatingObject): 34596 (WebCore::RenderBlock::positionNewFloats): 34597 * rendering/RenderBlock.h: 34598 * rendering/RenderBox.cpp: 34599 * rendering/RenderBox.h: 34600 (WebCore::RenderBox::markForPaginationRelayoutIfNeeded): 34601 * rendering/RenderFlexibleBox.cpp: 34602 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 34603 (WebCore::RenderFlexibleBox::layoutVerticalBox): 34604 * rendering/RenderView.cpp: 34605 (WebCore::RenderView::RenderView): 34606 (WebCore::RenderView::layout): 34607 * rendering/RenderView.h: 34608 (WebCore::RenderView::setPageHeight): 34609 (WebCore::RenderView::pushLayoutState): 34610 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer): 34611 (WebCore::LayoutStateMaintainer::push): 34612 34613 2010-10-12 Anders Carlsson <andersca (a] apple.com> 34614 34615 Reviewed by Dan Bernstein. 34616 34617 Paint the find overlay background 34618 https://bugs.webkit.org/show_bug.cgi?id=47565 34619 34620 Export symbols required by WebKit2. 34621 34622 * WebCore.exp.in: 34623 34624 2010-10-12 James Robinson <jamesr (a] chromium.org> 34625 34626 Unreviewed chromium compile fixes for http://trac.webkit.org/changeset/69619 34627 34628 * platform/graphics/chromium/LayerRendererChromium.cpp: 34629 (WebCore::LayerRendererChromium::create): 34630 (WebCore::LayerRendererChromium::LayerRendererChromium): 34631 * platform/graphics/chromium/LayerRendererChromium.h: 34632 34633 2010-10-12 Chris Marrin <cmarrin (a] apple.com> 34634 34635 Reviewed by Darin Adler. 34636 34637 Manage DrawingBuffer lifetime in GraphicsContext3D 34638 https://bugs.webkit.org/show_bug.cgi?id=47501 34639 34640 GraphicsContext3D and DrawingBuffer are now Refcounted. DrawingBuffer 34641 has a RefPtr to GraphicsContext3D to ensure the proper lifetime. 34642 DrawingBuffer is now created by GraphicsContext3D. Also DrawingBuffer 34643 refers to GraphicsContext3D rather than SharedGraphicsContext3D. 34644 34645 * html/canvas/CanvasRenderingContext2D.cpp: 34646 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 34647 * html/canvas/CanvasRenderingContext2D.h: 34648 * html/canvas/WebGLRenderingContext.cpp: 34649 (WebCore::WebGLRenderingContext::create): 34650 (WebCore::WebGLRenderingContext::WebGLRenderingContext): 34651 * html/canvas/WebGLRenderingContext.h: 34652 * platform/graphics/GraphicsContext3D.cpp: 34653 (WebCore::GraphicsContext3D::createDrawingBuffer): 34654 * platform/graphics/GraphicsContext3D.h: 34655 * platform/graphics/chromium/DrawingBufferChromium.cpp: 34656 (WebCore::generateColorTexture): 34657 (WebCore::DrawingBuffer::DrawingBuffer): 34658 (WebCore::DrawingBuffer::~DrawingBuffer): 34659 (WebCore::DrawingBuffer::publishToPlatformLayer): 34660 (WebCore::DrawingBuffer::reset): 34661 * platform/graphics/gpu/DrawingBuffer.cpp: 34662 (WebCore::DrawingBuffer::create): 34663 (WebCore::DrawingBuffer::clear): 34664 (WebCore::DrawingBuffer::bind): 34665 * platform/graphics/gpu/DrawingBuffer.h: 34666 (WebCore::DrawingBuffer::graphicsContext3D): 34667 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 34668 (WebCore::SharedGraphicsContext3D::create): 34669 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D): 34670 * platform/graphics/gpu/SharedGraphicsContext3D.h: 34671 (WebCore::SharedGraphicsContext3D::graphicsContext3D): 34672 * platform/graphics/gpu/mac/DrawingBufferMac.mm: 34673 (WebCore::DrawingBuffer::DrawingBuffer): 34674 (WebCore::DrawingBuffer::~DrawingBuffer): 34675 (WebCore::DrawingBuffer::reset): 34676 * platform/graphics/mac/GraphicsContext3DMac.mm: 34677 (WebCore::GraphicsContext3D::create): 34678 34679 2010-10-12 Jian Li <jianli (a] chromium.org> 34680 34681 Reviewed by David Levin. 34682 34683 Fix passing blob data with string data item between threads. 34684 https://bugs.webkit.org/show_bug.cgi?id=46543 34685 34686 The fix is to use a thread-safe ref-counted Vector<char> to store the 34687 string data. This also makes us be able to store any binary data in it. 34688 34689 I've also fix BlobBuilder and BlobRegistryImpl to avoid some additional 34690 copies to make blob handling faster. 34691 34692 * fileapi/BlobBuilder.cpp: 34693 (WebCore::BlobBuilder::append): 34694 * fileapi/ThreadableBlobRegistry.cpp: 34695 (WebCore::BlobRegistryContext::BlobRegistryContext): 34696 * platform/network/BlobData.cpp: 34697 (WebCore::BlobDataItem::RawData::RawData): 34698 (WebCore::BlobDataItem::RawData::detachFromCurrentThread): 34699 (WebCore::BlobDataItem::detachFromCurrentThread): 34700 (WebCore::BlobData::create): 34701 (WebCore::BlobData::detachFromCurrentThread): 34702 (WebCore::BlobData::appendData): 34703 * platform/network/BlobData.h: 34704 (WebCore::BlobDataItem::RawData::create): 34705 (WebCore::BlobDataItem::RawData::data): 34706 (WebCore::BlobDataItem::RawData::length): 34707 (WebCore::BlobDataItem::RawData::mutableData): 34708 (WebCore::BlobDataItem::BlobDataItem): 34709 * platform/network/BlobRegistryImpl.cpp: 34710 (WebCore::BlobRegistryImpl::registerBlobURL): 34711 * platform/network/BlobResourceHandle.cpp: 34712 (WebCore::BlobResourceHandle::readDataSync): 34713 (WebCore::BlobResourceHandle::readDataAsync): 34714 * platform/network/mac/FormDataStreamMac.mm: 34715 (WebCore::setHTTPBody): 34716 * platform/text/LineEnding.cpp: 34717 (OutputBuffer::CStringBuffer::CStringBuffer): 34718 (OutputBuffer::CStringBuffer::~CStringBuffer): 34719 (OutputBuffer::CStringBuffer::allocate): 34720 (OutputBuffer::CStringBuffer::copy): 34721 (OutputBuffer::CStringBuffer::buffer): 34722 (OutputBuffer::VectorCharAppendBuffer::VectorCharAppendBuffer): 34723 (OutputBuffer::VectorCharAppendBuffer::~VectorCharAppendBuffer): 34724 (OutputBuffer::VectorCharAppendBuffer::allocate): 34725 (OutputBuffer::VectorCharAppendBuffer::copy): 34726 (OutputBuffer::internalNormalizeLineEndingsToCRLF): 34727 (WebCore::normalizeToCROrLF): 34728 (WebCore::normalizeLineEndingsToCRLF): 34729 (WebCore::normalizeLineEndingsToCR): 34730 (WebCore::normalizeLineEndingsToLF): 34731 (WebCore::normalizeLineEndingsToNative): 34732 * platform/text/LineEnding.h: 34733 34734 2010-10-12 Sheriff Bot <webkit.review.bot (a] gmail.com> 34735 34736 Unreviewed, rolling out r69589. 34737 http://trac.webkit.org/changeset/69589 34738 https://bugs.webkit.org/show_bug.cgi?id=47547 34739 34740 Wrong patch landed from a bug with two patches (Requested by 34741 mrobinson on #webkit). 34742 34743 * platform/network/ResourceHandleInternal.h: 34744 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 34745 * platform/network/soup/ResourceHandleSoup.cpp: 34746 (WebCore::ResourceHandleInternal::~ResourceHandleInternal): 34747 (WebCore::ResourceHandle::~ResourceHandle): 34748 (WebCore::restartedCallback): 34749 (WebCore::gotChunkCallback): 34750 (WebCore::finishedCallback): 34751 (WebCore::parseDataUrl): 34752 (WebCore::startHttp): 34753 * platform/network/soup/ResourceRequest.h: 34754 * platform/network/soup/ResourceRequestSoup.cpp: 34755 34756 2010-10-12 Simon Fraser <simon.fraser (a] apple.com> 34757 34758 Screen.availLeft should be signed 34759 https://bugs.webkit.org/show_bug.cgi?id=34397 34760 34761 Add the manual test missed in r69599. 34762 34763 * manual-tests/screen-availLeft.html: Added. 34764 34765 2010-10-12 Girish Ramakrishnan <girish (a] forwardbias.in> 34766 34767 Reviewed by Ariya Hidayat. 34768 34769 [Qt] Windowless mode 64-bit Flash/X11 freezes when right-click is sent. 34770 34771 Adds a new quirk PluginQuirkIgnoreRightClickInWindowlessMode. This 34772 quirk is enabled only for 64-bit Flash/X11 and should not affect other 34773 plugins. The freeze itself is in Flash code and the backtrace is not 34774 useful. 34775 34776 https://bugs.webkit.org/show_bug.cgi?id=47545 34777 34778 * plugins/PluginPackage.cpp: 34779 (WebCore::PluginPackage::determineQuirks): 34780 * plugins/PluginQuirkSet.h: 34781 * plugins/qt/PluginViewQt.cpp: 34782 (WebCore::PluginView::handleMouseEvent): 34783 34784 2010-10-08 Simon Fraser <simon.fraser (a] apple.com> 34785 34786 Reviewed by Alexey Proskuryakov. 34787 34788 Screen.availLeft should be signed 34789 https://bugs.webkit.org/show_bug.cgi?id=34397 34790 34791 For the screen to the left of the main screen, screen.availLeft 34792 can be negative, so the Screen API needs to use signed numbers 34793 for availLeft and availTop. 34794 34795 * manual-tests/screen-availLeft.html: Added. 34796 * page/Screen.cpp: 34797 (WebCore::Screen::availLeft): 34798 (WebCore::Screen::availTop): 34799 * page/Screen.h: 34800 * page/Screen.idl: 34801 34802 2010-10-12 Anders Carlsson <andersca (a] apple.com> 34803 34804 Reviewed by Sam Weinig. 34805 34806 Add FindController class 34807 https://bugs.webkit.org/show_bug.cgi?id=47555 34808 34809 Export Page::findString. 34810 34811 * WebCore.exp.in: 34812 34813 2010-10-12 Alexey Proskuryakov <ap (a] apple.com> 34814 34815 Reviewed by Simon Fraser. 34816 34817 https://bugs.webkit.org/show_bug.cgi?id=47550 34818 <rdar://problem/8353386> For WebKit plug-ins, beforeload can be called recursively 34819 (esp. with AdBlock style extensions) 34820 34821 No test - we don't have a WebKit-style plugin in DRT, and don't care enough to add one. 34822 34823 The fix is to block plug-in scripting while in beforeload event - the plug-in is obviously 34824 not available yet, so scripting could only attempt to load it recursively. 34825 34826 This didn't affect NPAPI plug-ins, because of a completely different code path taken in 34827 updateWidget(), see <https://bugs.webkit.org/show_bug.cgi?id=44575#c8>. 34828 34829 * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget): 34830 * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget): 34831 * html/HTMLPlugInElement.cpp: 34832 (WebCore::HTMLPlugInElement::HTMLPlugInElement): 34833 (WebCore::HTMLPlugInElement::pluginWidget): 34834 * html/HTMLPlugInElement.h: 34835 34836 2010-10-12 Nikolas Zimmermann <nzimmermann (a] rim.com> 34837 34838 Reviewed by Gavin Barraclough. 34839 34840 Unify JSC::StringBuilder & WebCore::StringBuilder 34841 https://bugs.webkit.org/show_bug.cgi?id=47538 34842 34843 JSC::StringBuilder operates on a Vector<UChar, 64> and allows to build a string based on a stream of characters in an efficient manner. 34844 WebCore::StringBuilder operates on a Vector<String, 16> and allows to concat an arbitary number of Strings. It's not efficient in handling single 34845 characters, as a String with length=1 has to be constructed for those. An analysis of the callers of WebCore::StringBuilder shows that 34846 most callsites actually combine Strings and single characters, so using a Vector<UChar> would be more efficient. Those who only combine large 34847 strings are only used for debugging purposes, so it's fine to switch them to a Vector<UChar> approach as well. 34848 34849 Replace WebCore::StringBuilder with JSC::StringBuilder, and move it to wtf/text/StringBuilder.h into the WTF namespace. 34850 While I was at it remove platform/text/StringBuffer.h, as it was only including wtf/text/StringBuffer.h. 34851 34852 No change in functionality, thus no new tests. 34853 34854 * Android.mk: Remove platform/text/StringBuilder.* and platform/text/StringBuffer.h. 34855 * CMakeLists.txt: Ditto. 34856 * GNUmakefile.am: Ditto. 34857 * WebCore.gypi: Ditto. 34858 * WebCore.order: Ditto. 34859 * WebCore.pro: Ditto. 34860 * WebCore.vcproj/WebCore.vcproj: Ditto. 34861 * WebCore.xcodeproj/project.pbxproj: Ditto. 34862 * ForwardingHeaders/runtime/StringBuilder.h: Removed. 34863 * ForwardingHeaders/runtime/UStringBuilder.h: Added. 34864 * ForwardingHeaders/wtf/text/StringBuilder.h: Added. 34865 * bindings/js/ScriptString.h: Don't include PlatformString.h but wtf/text/WTFString.h. 34866 (WebCore::ScriptString::operator+=): Use JSC::UStringBuilder instead of JSC::StringBuilder. 34867 * bridge/jni/JNIBridge.cpp: Use WTF::StringBuilder (+ use append(const UChar) for single characters). 34868 * css/MediaQuery.cpp: Ditto. 34869 * css/MediaQueryExp.cpp: Ditto. 34870 * dom/Node.cpp: Ditto. 34871 (WebCore::Node::appendTextContent): Manually track wheter the StringBuilder content is empty or null, the new StringBuilder doesn't differentiate between null & empty strings. 34872 * dom/Node.h: Remove appendTextContent definition, it's not needed to be exported, removes the need for a StringBuilder.h include or forward declaration. 34873 * html/DOMTokenList.cpp: Use WTF::StringBuilder. 34874 * inspector/InspectorResource.cpp: Remove useless StringBuffer.h include. 34875 * platform/android/FileSystemAndroid.cpp: Use WTF::StringBuilder. 34876 * platform/brew/FileSystemBrew.cpp: Ditto. 34877 * platform/chromium/ClipboardChromium.cpp: Ditto (+ use append(const UChar) for single characters). 34878 * platform/graphics/gpu/PODInterval.h: Ditto (Only used as debugging helper here, in debug builds). 34879 * platform/graphics/gpu/PODRedBlackTree.h: Ditto (Only used as debugging helper here, in debug builds). 34880 * platform/graphics/mac/GraphicsLayerCA.mm: Remove useless StringBuilder.h include. 34881 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Use WTF::StringBuilder, and use append(const UChar) for single characters. 34882 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Ditto. 34883 * platform/network/ProxyServer.cpp: 34884 (WebCore::appendProxyServerString): Use WTF::StringBuilder. 34885 * platform/text/StringBuffer.h: Removed. 34886 * platform/text/StringBuilder.cpp: Removed. 34887 * platform/text/StringBuilder.h: Removed. 34888 * plugins/DOMMimeType.cpp: Use WTF::StringBuilder. 34889 * svg/SVGPathParserFactory.cpp: Ditto. 34890 * svg/SVGPathStringBuilder.cpp: SVGPathStringBuilder used stringBuilder.toString(ConcatAddingSpacesBetweenIndividualStrings), adapt to the change, that this mode is gone now. 34891 (WebCore::SVGPathStringBuilder::result): Just use toString(), append a space to the end of each command, when building the string. Remove the last trailing space before building the result. 34892 (WebCore::SVGPathStringBuilder::moveTo): 34893 (WebCore::SVGPathStringBuilder::lineTo): 34894 (WebCore::SVGPathStringBuilder::lineToHorizontal): 34895 (WebCore::SVGPathStringBuilder::lineToVertical): 34896 (WebCore::SVGPathStringBuilder::curveToCubic): 34897 (WebCore::SVGPathStringBuilder::curveToCubicSmooth): 34898 (WebCore::SVGPathStringBuilder::curveToQuadratic): 34899 (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth): 34900 (WebCore::SVGPathStringBuilder::arcTo): 34901 (WebCore::SVGPathStringBuilder::closePath): 34902 * svg/SVGPathStringBuilder.h: 34903 (WebCore::SVGPathStringBuilder::cleanup): StringBuilder::clear() is gone, just cleanup by assigning StringBuilder(). 34904 * websockets/WebSocket.cpp: Use WTF::StringBuilder. 34905 * websockets/WebSocketHandshake.cpp: Ditto (+ use append(const UChar) for single characters). 34906 34907 2010-10-12 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 34908 34909 Reviewed by Antonio Gomes. 34910 34911 [EFL] Add a missing file in CMakeListEfl.txt 34912 https://bugs.webkit.org/show_bug.cgi?id=47480 34913 34914 IntRectEfl.cpp was missing in CMakeListEfl.txt. So, IntRectEfl.cpp is added. 34915 34916 * CMakeListsEfl.txt: 34917 34918 2010-10-12 Sam Weinig <sam (a] webkit.org> 34919 34920 Reviewed by Anders Carlsson. 34921 34922 Need WebKit2 API to get the cell above a table cell 34923 <rdar://problem/8537111> 34924 https://bugs.webkit.org/show_bug.cgi?id=47532 34925 34926 Re-factor functionality to get the cell above a table cell 34927 into a function on HTMLTableCellElement and export it for use 34928 as SPI. 34929 34930 * WebCore.exp.in: 34931 * WebCore.xcodeproj/project.pbxproj: 34932 * html/HTMLTableCellElement.cpp: 34933 (WebCore::HTMLTableCellElement::cellAbove): Move implementation here... 34934 * html/HTMLTableCellElement.h: 34935 * page/Frame.cpp: 34936 (WebCore::Frame::searchForLabelsAboveCell): ...from here. 34937 34938 2010-10-12 Dave Moore <davemoore (a] chromium.org> 34939 34940 Reviewed by Tony Chang. 34941 34942 Use new WebThemeEngine api on chromium / linux to draw scrollbars. 34943 https://bugs.webkit.org/show_bug.cgi?id=47473 34944 34945 * platform/chromium/ChromiumBridge.h: 34946 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 34947 34948 2010-10-12 Andreas Kling <kling (a] webkit.org> 34949 34950 Reviewed by Antonio Gomes. 34951 34952 [Qt] Clipping problem viewing SVG with WebKit 34953 https://bugs.webkit.org/show_bug.cgi?id=29596 34954 34955 SVG path clipping (via GraphicsContext::clipPath()) was done using the 34956 Qt::ReplaceClip mode (default) instead of Qt::IntersectClip. This led 34957 to misrenderings when nesting multiple clip paths. 34958 34959 * platform/graphics/qt/GraphicsContextQt.cpp: 34960 (WebCore::GraphicsContext::clipPath): 34961 34962 2010-10-07 Pavel Podivilov <podivilov (a] chromium.org> 34963 34964 Reviewed by Pavel Feldman. 34965 34966 Web Inspector: refactoring of native breakpoints. 34967 https://bugs.webkit.org/show_bug.cgi?id=47360 34968 34969 Make DOM, EventListener and XHR breakpoints subclasses of NativeBreakpoint class. 34970 Move stuff that depends on breakpoint type to corresponding subclass. 34971 34972 * inspector/Inspector.idl: 34973 * inspector/InspectorController.cpp: 34974 (WebCore::InspectorController::didCommitLoad): 34975 (WebCore::InspectorController::setNativeBreakpoint): 34976 (WebCore::InspectorController::removeNativeBreakpoint): 34977 (WebCore::InspectorController::findEventListenerBreakpoint): 34978 (WebCore::InspectorController::findXHRBreakpoint): 34979 * inspector/InspectorController.h: 34980 * inspector/InspectorDOMAgent.cpp: 34981 (WebCore::InspectorDOMAgent::setDOMBreakpoint): 34982 (WebCore::InspectorDOMAgent::removeDOMBreakpoint): 34983 (WebCore::InspectorDOMAgent::descriptionForDOMEvent): 34984 (WebCore::InspectorDOMAgent::didRemoveDOMNode): 34985 (WebCore::InspectorDOMAgent::removeBreakpointsForNode): 34986 (WebCore::InspectorDOMAgent::createBreakpointId): 34987 * inspector/InspectorDOMAgent.h: 34988 * inspector/InspectorDebuggerAgent.h: 34989 * inspector/InspectorInstrumentation.cpp: 34990 (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl): 34991 (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl): 34992 (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl): 34993 (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl): 34994 (WebCore::InspectorInstrumentation::willDispatchEventImpl): 34995 * inspector/front-end/BreakpointManager.js: 34996 (WebInspector.BreakpointManager): 34997 (WebInspector.BreakpointManager.prototype.reset): 34998 (WebInspector.BreakpointManager.prototype.createDOMBreakpoint): 34999 (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint): 35000 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint): 35001 (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint): 35002 (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint): 35003 (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend): 35004 (WebInspector.BreakpointManager.prototype.debuggerPaused): 35005 (WebInspector.BreakpointManager.prototype.debuggerResumed): 35006 (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints.restoreBreakpointsForNode): 35007 (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints): 35008 (WebInspector.NativeBreakpoint): 35009 (WebInspector.NativeBreakpoint.prototype.remove): 35010 (WebInspector.NativeBreakpoint.prototype.get _frontendId): 35011 (WebInspector.NativeBreakpoint.prototype.get _type): 35012 (WebInspector.NativeBreakpoint.prototype._compare): 35013 (WebInspector.NativeBreakpoint.prototype._onRemove): 35014 (WebInspector.DOMBreakpoint): 35015 (WebInspector.DOMBreakpoint.prototype.click): 35016 (WebInspector.DOMBreakpoint.prototype.compareTo): 35017 (WebInspector.DOMBreakpoint.prototype.populateLabelElement): 35018 (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.formatters.s): 35019 (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.append): 35020 (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement): 35021 (WebInspector.DOMBreakpoint.prototype._condition): 35022 (WebInspector.DOMBreakpoint.prototype._onRemove): 35023 (WebInspector.EventListenerBreakpoint): 35024 (WebInspector.EventListenerBreakpoint.prototype.compareTo): 35025 (WebInspector.EventListenerBreakpoint.prototype.label): 35026 (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement): 35027 (WebInspector.EventListenerBreakpoint.prototype._condition): 35028 (WebInspector.XHRBreakpoint): 35029 (WebInspector.XHRBreakpoint.prototype.compareTo): 35030 (WebInspector.XHRBreakpoint.prototype.populateLabelElement): 35031 (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement): 35032 (WebInspector.XHRBreakpoint.prototype._condition): 35033 (WebInspector.domBreakpointTypeLabel): 35034 (WebInspector.domBreakpointTypeContextMenuLabel): 35035 * inspector/front-end/BreakpointsSidebarPane.js: 35036 (WebInspector.BreakpointItem): 35037 (WebInspector.BreakpointItem.prototype._breakpointClicked): 35038 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate): 35039 * inspector/front-end/CallStackSidebarPane.js: 35040 (WebInspector.CallStackSidebarPane): 35041 (WebInspector.CallStackSidebarPane.prototype.registerShortcuts): 35042 (WebInspector.CallStackSidebarPane.prototype._breakpointHit): 35043 * inspector/front-end/DOMAgent.js: 35044 (WebInspector.DOMNode): 35045 (WebInspector.DOMAgent.prototype._setDocument): 35046 (WebInspector.DOMAgent.prototype._removeBreakpoints): 35047 (WebInspector.childNodeRemoved): 35048 * inspector/front-end/ElementsTreeOutline.js: 35049 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 35050 * inspector/front-end/ScriptsPanel.js: 35051 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 35052 * inspector/front-end/inspector.js: 35053 (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded): 35054 (WebInspector.createDOMBreakpointsSidebarPane): 35055 (WebInspector.reset): 35056 35057 2010-10-11 Eric Uhrhane <ericu (a] chromium.org> 35058 35059 Reviewed by Dumitru Daniliuc. 35060 35061 FileWriter should hold a reference to a Blob during write 35062 https://bugs.webkit.org/show_bug.cgi?id=47318 35063 35064 Without this reference, the Blob might get garbage-collected from JS 35065 before the write has completed, which would be quite unintuitive to the 35066 user. I just grab a RefPtr to the Blob at write(), then clear it when 35067 we're done. 35068 35069 * fileapi/FileWriter.cpp: 35070 (WebCore::FileWriter::stop): 35071 (WebCore::FileWriter::write): 35072 (WebCore::FileWriter::didWrite): 35073 (WebCore::FileWriter::didFail): 35074 * fileapi/FileWriter.h: 35075 35076 2010-10-11 Michael Saboff <msaboff (a] apple.com> 35077 35078 Reviewed by Darin Adler. 35079 35080 Changed DOMWindow to have a constructor. Updated the code generator 35081 to add security checks to the constructors if CheckDomainSecurity is 35082 set. Also changed the constructor generation code to use 35083 globalObject->prototype() for DOMWindow object prototypes instead 35084 of "self". 35085 https://bugs.webkit.org/show_bug.cgi?id=47422 35086 35087 Test: fast/dom/Window/window-constructor.html 35088 35089 * bindings/scripts/CodeGeneratorJS.pm: 35090 * page/DOMWindow.idl: 35091 35092 2010-10-11 Daniel Cheng <dcheng (a] chromium.org> 35093 35094 Reviewed by Tony Chang. 35095 35096 [chromium] Prepare Clipboard/DragData for transition to new drag-and-drop interface. 35097 https://bugs.webkit.org/show_bug.cgi?id=44992 35098 35099 In order to allow a graceful transition, ChromiumDataObject has been 35100 reimplemented as a wrapper around the three different types of data 35101 objects that the Chrome port uses: 35102 1. ChromiumDataObjectLegacy -- this is the original ChromiumDataObject. 35103 All the data that ClipboardChromium/DragDataChromium can potentially 35104 use is copied over, regardless of whether or not it is needed. 35105 2. ReadableDataObject -- used for dragging in and pasting into WebKit. 35106 For efficiency, it caches an optimistic list of types it believes it 35107 can handle. When getData() is called, a browser IPC is called to 35108 retrieve the appropriate data. 35109 3. WritableDataObject -- similar to ChromiumDataObjectLegacy in that it 35110 buffers all data when dragging out of WebKit or copying/cutting. 35111 Unfortunately, there is a difference between dragging out and 35112 copying/cutting--on drag outs, the data is buffered and flushed out 35113 when startDrag() is called. For copy/cut, any calls to setData() 35114 result in a browser IPC right away, so calls to setData() in one 35115 copy/cut event are not atomic. 35116 35117 Copy and paste has been changed to use the new data objects. Dragging 35118 out uses the legacy data object, and dragging in now has two potential 35119 entry points--one using the legacy data object, and one using 35120 ReadableDataObject. Once Chromium transitions to using the new drag-in 35121 interface, the old interface will be removed. 35122 35123 This change is covered by existing tests. 35124 35125 * WebCore.gypi: 35126 * editing/chromium/EditorChromium.cpp: 35127 (WebCore::Editor::newGeneralClipboard): 35128 * page/chromium/EventHandlerChromium.cpp: 35129 (WebCore::EventHandler::createDraggingClipboard): 35130 * platform/chromium/ChromiumDataObject.cpp: 35131 (WebCore::ChromiumDataObject::ChromiumDataObject): 35132 (WebCore::ChromiumDataObject::create): 35133 (WebCore::ChromiumDataObject::createReadable): 35134 (WebCore::ChromiumDataObject::createWritable): 35135 (WebCore::ChromiumDataObject::clearData): 35136 (WebCore::ChromiumDataObject::clearAll): 35137 (WebCore::ChromiumDataObject::clearAllExceptFiles): 35138 (WebCore::ChromiumDataObject::hasData): 35139 (WebCore::ChromiumDataObject::types): 35140 (WebCore::ChromiumDataObject::getData): 35141 (WebCore::ChromiumDataObject::setData): 35142 (WebCore::ChromiumDataObject::urlTitle): 35143 (WebCore::ChromiumDataObject::setUrlTitle): 35144 (WebCore::ChromiumDataObject::htmlBaseUrl): 35145 (WebCore::ChromiumDataObject::setHtmlBaseUrl): 35146 (WebCore::ChromiumDataObject::containsFilenames): 35147 (WebCore::ChromiumDataObject::filenames): 35148 (WebCore::ChromiumDataObject::setFilenames): 35149 (WebCore::ChromiumDataObject::fileExtension): 35150 (WebCore::ChromiumDataObject::setFileExtension): 35151 (WebCore::ChromiumDataObject::fileContentFilename): 35152 (WebCore::ChromiumDataObject::setFileContentFilename): 35153 (WebCore::ChromiumDataObject::fileContent): 35154 (WebCore::ChromiumDataObject::setFileContent): 35155 * platform/chromium/ChromiumDataObject.h: 35156 * platform/chromium/ChromiumDataObjectLegacy.cpp: Copied from ChromiumDataObject.cpp 35157 (WebCore::ChromiumDataObjectLegacy::clearData): 35158 (WebCore::ChromiumDataObjectLegacy::clearAll): 35159 (WebCore::ChromiumDataObjectLegacy::clearAllExceptFiles): 35160 (WebCore::ChromiumDataObjectLegacy::hasData): 35161 (WebCore::ChromiumDataObjectLegacy::types): 35162 (WebCore::ChromiumDataObjectLegacy::getData): 35163 (WebCore::ChromiumDataObjectLegacy::setData): 35164 (WebCore::ChromiumDataObjectLegacy::ChromiumDataObjectLegacy): 35165 * platform/chromium/ChromiumDataObjectLegacy.h: Copied from ChromiumDataObject.h 35166 (WebCore::ChromiumDataObjectLegacy::create): 35167 (WebCore::ChromiumDataObjectLegacy::copy): 35168 (WebCore::ChromiumDataObjectLegacy::urlTitle): 35169 (WebCore::ChromiumDataObjectLegacy::setUrlTitle): 35170 (WebCore::ChromiumDataObjectLegacy::htmlBaseUrl): 35171 (WebCore::ChromiumDataObjectLegacy::setHtmlBaseUrl): 35172 (WebCore::ChromiumDataObjectLegacy::containsFilenames): 35173 (WebCore::ChromiumDataObjectLegacy::filenames): 35174 (WebCore::ChromiumDataObjectLegacy::setFilenames): 35175 (WebCore::ChromiumDataObjectLegacy::fileExtension): 35176 (WebCore::ChromiumDataObjectLegacy::setFileExtension): 35177 (WebCore::ChromiumDataObjectLegacy::fileContentFilename): 35178 (WebCore::ChromiumDataObjectLegacy::setFileContentFilename): 35179 (WebCore::ChromiumDataObjectLegacy::fileContent): 35180 (WebCore::ChromiumDataObjectLegacy::setFileContent): 35181 * platform/chromium/ClipboardChromium.cpp: 35182 (WebCore::ClipboardChromium::create): 35183 * platform/chromium/ClipboardChromium.h: 35184 * platform/chromium/ReadableDataObject.cpp: 35185 (WebCore::ReadableDataObject::getData): 35186 * platform/chromium/WritableDataObject.cpp: 35187 (WebCore::WritableDataObject::setData): 35188 35189 2010-10-11 Anders Carlsson <andersca (a] apple.com> 35190 35191 Reviewed by Darin Adler. 35192 35193 Remove WebIconFetcher from WebKit and IconFetcher from WebCore 35194 https://bugs.webkit.org/show_bug.cgi?id=47523 35195 35196 Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses. 35197 35198 * GNUmakefile.am: 35199 * WebCore.exp.in: 35200 * WebCore.gyp/WebCore.gyp: 35201 * WebCore.gypi: 35202 * WebCore.vcproj/WebCore.vcproj: 35203 * WebCore.xcodeproj/project.pbxproj: 35204 * loader/icon/IconFetcher.cpp: Removed. 35205 * loader/icon/IconFetcher.h: Removed. 35206 35207 2010-10-11 Jia Pu <jpu (a] apple.com> 35208 35209 Reviewed by Adele Peterson. 35210 35211 Should commit pending autocorrection before next round of text checking. 35212 https://bugs.webkit.org/show_bug.cgi?id=46986 35213 <rdar://problem/8424535> 35214 35215 1. Apply pending autocorrection before calling markAllMisspellingsAndBadGrammarInRanges(). 35216 2. Remove unneccessary calls to dismissCorrectionPanel(), since the panel is dismissed when 35217 selection changes, which occurs after every typing command. 35218 35219 * editing/Editor.cpp: 35220 (WebCore::Editor::markMisspellingsAfterTypingToPosition): Apply pending autocorrection. 35221 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Store current correction replacement 35222 in m_correctionReplacementString. 35223 (WebCore::Editor::startCorrectionPanelTimer): Remove call to dismissCorrectionPanel(). 35224 * editing/Editor.h: Add m_correctionReplacementString to store proposed autocorrection string. 35225 35226 2010-10-11 Oliver Hunt <oliver (a] apple.com> 35227 35228 Reviewed by Adam Barth. 35229 35230 Make fast/canvas/webgl/glsl-conformance pass again 35231 https://bugs.webkit.org/show_bug.cgi?id=47525 35232 35233 Remove incorrect call to glGetShaderiv, so it is only 35234 called in the case where we don't have our own simulated 35235 log. 35236 35237 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 35238 (WebCore::GraphicsContext3D::getShaderInfoLog): 35239 35240 2010-10-11 Sam Weinig <sam (a] webkit.org> 35241 35242 Reviewed by Anders Carlsson. 35243 35244 Add WebKit2 equivalents for setValueForUser and setAutoFilled 35245 <rdar://problem/8475934> 35246 https://bugs.webkit.org/show_bug.cgi?id=47524 35247 35248 * WebCore.exp.in: Add needed export. 35249 35250 2010-10-11 Andrei Popescu <andreip (a] google.com> 35251 35252 Reviewed by Jeremy Orlow. 35253 35254 The names of IndexedDB-specific attributes of DOMWindow should be prefixed with 'webkit'. 35255 https://bugs.webkit.org/show_bug.cgi?id=47508 35256 35257 * bindings/generic/RuntimeEnabledFeatures.h: 35258 (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled): 35259 (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled): 35260 (WebCore::RuntimeEnabledFeatures::webkitIDBCursorEnabled): 35261 (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseEnabled): 35262 (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseErrorEnabled): 35263 (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseExceptionEnabled): 35264 (WebCore::RuntimeEnabledFeatures::webkitIDBErrorEventEnabled): 35265 (WebCore::RuntimeEnabledFeatures::webkitIDBEventEnabled): 35266 (WebCore::RuntimeEnabledFeatures::webkitIDBFactoryEnabled): 35267 (WebCore::RuntimeEnabledFeatures::webkitIDBIndexEnabled): 35268 (WebCore::RuntimeEnabledFeatures::webkitIDBKeyRangeEnabled): 35269 (WebCore::RuntimeEnabledFeatures::webkitIDBObjectStoreEnabled): 35270 (WebCore::RuntimeEnabledFeatures::webkitIDBRequestEnabled): 35271 (WebCore::RuntimeEnabledFeatures::webkitIDBSuccessEventEnabled): 35272 (WebCore::RuntimeEnabledFeatures::webkitIDBTransactionEnabled): 35273 * page/DOMWindow.cpp: 35274 (WebCore::DOMWindow::webkitIndexedDB): 35275 * page/DOMWindow.h: 35276 * page/DOMWindow.idl: 35277 35278 2010-10-11 Sam Weinig <sam (a] webkit.org> 35279 35280 Reviewed by Anders Carlsson. 35281 35282 Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef 35283 https://bugs.webkit.org/show_bug.cgi?id=47509 35284 35285 * WebCore.exp.in: Export toNode. 35286 35287 2010-10-11 Martin Robinson <mrobinson (a] igalia.com> 35288 35289 Reviewed by Tony Chang. 35290 35291 [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails on GTK+ 35292 https://bugs.webkit.org/show_bug.cgi?id=47244 35293 35294 Store the URI list as a String in DataObjectGtk, so that non-URI elements 35295 are preserved when getData(...) is called. This necessitates some other 35296 changes, including adding a m_filenames member to DataObjectGtk to store 35297 filenames extracted during setURIList(...). The logic in getData(...) has 35298 also changed to set success = true no matter what to match the spec. A 35299 followup patch will remove this parameter completely for all platforms. 35300 35301 * platform/gtk/ClipboardGtk.cpp: 35302 (WebCore::ClipboardGtk::getData): Always succeed to match the HTML5 35303 spec and Firefox. Simply return the uriList string from the DataObject 35304 instead of reconstructing it from a vector of KURLs. 35305 (WebCore::ClipboardGtk::setData): The DataObject now accepts a string 35306 for the uriList parameter. 35307 (WebCore::ClipboardGtk::types): Predicate the "Files" member on 35308 DataObjectGtk::hasFilenames(). 35309 (WebCore::ClipboardGtk::files): Update to reflect the change from 35310 DataObjectGtk::files() to DataObjectGtk::filenames(). 35311 * platform/gtk/DataObjectGtk.cpp: 35312 (WebCore::DataObjectGtk::setURIList): Expanded this setter to find the 35313 first valid URL to use as the m_url member and also extract a list of filenames 35314 from the URI list. 35315 (WebCore::DataObjectGtk::setURL): Updated to reflect changes to m_uriList. 35316 (WebCore::DataObjectGtk::clear): Updated to reflect changes to m_uriList and 35317 also leave a comment explaining why we do not clear filenames here. 35318 * platform/gtk/DataObjectGtk.h: 35319 (WebCore::DataObjectGtk::url): This implementation is now a simple getter. 35320 (WebCore::DataObjectGtk::uriList): Ditto. 35321 (WebCore::DataObjectGtk::filenames): Added. 35322 (WebCore::DataObjectGtk::hasURL): Now a simple check. 35323 (WebCore::DataObjectGtk::hasFilenames): Added. 35324 (WebCore::DataObjectGtk::clearURIList): Simple setter. 35325 (WebCore::DataObjectGtk::clearURL): Ditto. 35326 * platform/gtk/DragDataGtk.cpp: 35327 (WebCore::DragData::containsFiles): Updated to access DataObjectGtk::hasFilenames(). 35328 (WebCore::DragData::asFilenames): Updated to access DataObjectGtk::filenames(). 35329 * platform/gtk/PasteboardHelper.cpp: 35330 (WebCore::PasteboardHelper::getClipboardContents): Use the uriList as a string now. 35331 (WebCore::PasteboardHelper::fillSelectionData): Ditto. 35332 (WebCore::PasteboardHelper::fillDataObjectFromDropData): Ditto. 35333 35334 2010-10-11 James Robinson <jamesr (a] chromium.org> 35335 35336 Reviewed by Kenneth Russell. 35337 35338 [chromium] DRT crash in fast/canvas tests w/accel 2D canvas due to NULL DrawingBuffer 35339 https://bugs.webkit.org/show_bug.cgi?id=47241 35340 35341 Avoid initializing accelerated graphics objects on CanvasRenderingContext2D 35342 if there is no drawingContext associated with the canvas. 35343 35344 Test: fast/canvas/access-zero-sized-canvas.html 35345 fast/canvas/canvas-skia-excessive-size.html 35346 fast/canvas/toDataURL-noData.html 35347 with --accelerated-compositing and --accelerated-2d-canvas 35348 35349 * html/canvas/CanvasRenderingContext2D.cpp: 35350 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 35351 (WebCore::CanvasRenderingContext2D::reset): 35352 35353 2010-10-11 Martin Robinson <mrobinson (a] igalia.com> 35354 35355 Reviewed by Gustavo Noronha Silva. 35356 35357 [GTK] Cleanup font selection code for the Freetype backend 35358 https://bugs.webkit.org/show_bug.cgi?id=47503 35359 35360 Do some miscellaneous cleanup work in the Freetype font font selection backend. 35361 35362 * platform/graphics/cairo/FontCacheFreeType.cpp: 35363 (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Modified this method to return 35364 a WebCore String. 35365 (WebCore::FontCache::createFontPlatformData): Do a bit of cleanup in this method: properly 35366 handle cursive and fantasy as fallback-like fonts. Instead of using raw CStrings do string 35367 comparisons using WebCore Strings. Remove a large block comment that originated from a 35368 Apache-licensed file. 35369 35370 2010-10-11 Martin Robinson <mrobinson (a] igalia.com> 35371 35372 Reviewed by Gustavo Noronha Silva. 35373 35374 [GTK] Buttons activated with the keyboard should be painted as clicked 35375 https://bugs.webkit.org/show_bug.cgi?id=18364 35376 35377 When a button is pressed, force it into the hovered state as far as the 35378 Mozilla theme drawing code is concerned. This bug also seems to be an 35379 issue for Firefox. When we switch away from the Mozilla theme drawing 35380 code this work-around should no longer be necessary. 35381 35382 No new tests. I was not able to generate a pixel test for this issue. It 35383 seems that our DRT does not have the necessary infrastructure to generate a 35384 pixel dump while a button is in the pressed state. 35385 35386 * platform/gtk/RenderThemeGtk.cpp: 35387 (WebCore::RenderThemeGtk::paintRenderObject): 35388 35389 2010-10-11 Jian Li <jianli (a] chromium.org> 35390 35391 Unreviewed. Build fix. 35392 35393 * bindings/js/JSArrayBufferCustom.cpp: 35394 * bindings/js/JSArrayBufferViewCustom.cpp: 35395 * bindings/js/JSFloat32ArrayCustom.cpp: 35396 * bindings/js/JSInt16ArrayCustom.cpp: 35397 * bindings/js/JSInt32ArrayCustom.cpp: 35398 * bindings/js/JSInt8ArrayCustom.cpp: 35399 * bindings/js/JSUint16ArrayCustom.cpp: 35400 * bindings/js/JSUint32ArrayCustom.cpp: 35401 * bindings/js/JSUint8ArrayCustom.cpp: 35402 * bindings/v8/custom/V8ArrayBufferCustom.cpp: 35403 * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: 35404 * bindings/v8/custom/V8Float32ArrayCustom.cpp: 35405 * bindings/v8/custom/V8Int16ArrayCustom.cpp: 35406 * bindings/v8/custom/V8Int32ArrayCustom.cpp: 35407 * bindings/v8/custom/V8Int8ArrayCustom.cpp: 35408 * bindings/v8/custom/V8Uint16ArrayCustom.cpp: 35409 * bindings/v8/custom/V8Uint32ArrayCustom.cpp: 35410 * bindings/v8/custom/V8Uint8ArrayCustom.cpp: 35411 35412 2010-10-11 Brent Fulgham <bfulgham (a] webkit.org> 35413 35414 Unreviewed WinCairo build fixes. 35415 35416 * platform/network/curl/ResourceResponse.h: Correct forward declaration 35417 for CFURLResponseRef. 35418 * rendering/RenderMediaControls.h: Add ENABLE(VIDEO) guard to new 35419 header file to avoid build failure on non-VIDEO builds. 35420 35421 2010-10-11 Jian Li <jianli (a] chromium.org> 35422 35423 Reviewed by Adam Barth. 35424 35425 Add File API feature guard to all typed array files 35426 https://bugs.webkit.org/show_bug.cgi?id=47437 35427 35428 Since we're going to add ArrayBuffer support to FileReader and BlobBuilder, 35429 we need to update all type array files to include File API feature guard 35430 in addition to the existing 3D_CANVAS guard. When ArrayBuffer is used in 35431 XMLHttpRequest, we will then remove all the guards. This is per the 35432 discussion on webkit-dev mailing list: 35433 https://lists.webkit.org/pipermail/webkit-dev/2010-October/014716.html 35434 35435 * html/canvas/ArrayBuffer.cpp: 35436 * html/canvas/ArrayBuffer.idl: 35437 * html/canvas/ArrayBufferView.cpp: 35438 * html/canvas/ArrayBufferView.idl: 35439 * html/canvas/Float32Array.cpp: 35440 * html/canvas/Float32Array.idl: 35441 * html/canvas/Int16Array.cpp: 35442 * html/canvas/Int16Array.idl: 35443 * html/canvas/Int32Array.cpp: 35444 * html/canvas/Int32Array.idl: 35445 * html/canvas/Int8Array.cpp: 35446 * html/canvas/Int8Array.idl: 35447 * html/canvas/Uint16Array.cpp: 35448 * html/canvas/Uint16Array.idl: 35449 * html/canvas/Uint32Array.cpp: 35450 * html/canvas/Uint32Array.idl: 35451 * html/canvas/Uint8Array.cpp: 35452 * html/canvas/Uint8Array.idl: 35453 35454 2010-10-11 Andreas Kling <kling (a] webkit.org> 35455 35456 Build fix (implicit float conversion in Path.cpp) 35457 35458 * platform/graphics/Path.cpp: 35459 35460 2010-10-11 Girish Ramakrishnan <girish (a] forwardbias.in> 35461 35462 Reviewed by Kenneth Rohde Christiansen. 35463 35464 [Qt] Refactor Plugin X Pixmap painting code to a separate function 35465 35466 The refactored function will be used for rendering by the Accelerated 35467 Composition enabled graphics layer. 35468 35469 https://bugs.webkit.org/show_bug.cgi?id=35524 35470 35471 * plugins/PluginView.h: 35472 * plugins/qt/PluginViewQt.cpp: 35473 (WebCore::PluginView::paintUsingXPixmap): 35474 (WebCore::PluginView::paint): 35475 35476 2010-10-11 Andreas Kling <kling (a] webkit.org> 35477 35478 Reviewed by Dirk Schulze. 35479 35480 SVG: Remove "create" methods and use port-specific "add" counterparts 35481 https://bugs.webkit.org/show_bug.cgi?id=46052 35482 35483 Circles and ellipses will be significantly faster on platforms that 35484 implement Path::addEllipse() in a sane fashion. 35485 35486 Also, a lot of Path copying has been factored out by changing functions 35487 that would return Paths to take Path& arguments instead (toPathData, toClipPath) 35488 35489 * mathml/RenderMathMLRoot.cpp: 35490 (WebCore::RenderMathMLRoot::paint): 35491 * mathml/RenderMathMLSquareRoot.cpp: 35492 (WebCore::RenderMathMLSquareRoot::paint): 35493 * platform/graphics/GraphicsContext.cpp: 35494 (WebCore::GraphicsContext::addRoundedRectClip): 35495 (WebCore::GraphicsContext::clipOutRoundedRect): 35496 * platform/graphics/Path.cpp: 35497 (WebCore::pathLengthApplierFunction): 35498 (WebCore::Path::addRoundedRect): 35499 * platform/graphics/Path.h: 35500 * platform/graphics/cairo/ContextShadowCairo.cpp: 35501 (WebCore::ContextShadow::drawRectShadowWithoutTiling): 35502 (WebCore::ContextShadow::drawRectShadow): 35503 * platform/graphics/cairo/GraphicsContextCairo.cpp: 35504 (WebCore::GraphicsContext::drawFocusRing): 35505 (WebCore::GraphicsContext::drawTiledShadow): 35506 (WebCore::GraphicsContext::fillRoundedRect): 35507 * platform/graphics/cg/GraphicsContextCG.cpp: 35508 (WebCore::GraphicsContext::fillRoundedRect): 35509 * platform/graphics/qt/GraphicsContextQt.cpp: 35510 (WebCore::GraphicsContext::fillRoundedRect): 35511 * rendering/RenderBoxModelObject.cpp: 35512 (WebCore::RenderBoxModelObject::paintBorder): 35513 (WebCore::RenderBoxModelObject::paintBoxShadow): 35514 * rendering/RenderEmbeddedObject.cpp: 35515 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): 35516 * rendering/RenderSVGResourceClipper.cpp: 35517 (WebCore::RenderSVGResourceClipper::pathOnlyClipping): 35518 * rendering/svg/RenderSVGPath.cpp: 35519 (WebCore::RenderSVGPath::layout): 35520 * rendering/svg/RenderSVGTextPath.cpp: 35521 (WebCore::RenderSVGTextPath::layoutPath): 35522 * rendering/svg/SVGInlineTextBox.cpp: 35523 (WebCore::SVGInlineTextBox::paintDecorationWithStyle): 35524 * svg/SVGAnimateMotionElement.cpp: 35525 (WebCore::SVGAnimateMotionElement::animationPath): 35526 * svg/SVGCircleElement.cpp: 35527 (WebCore::SVGCircleElement::toPathData): 35528 * svg/SVGCircleElement.h: 35529 * svg/SVGEllipseElement.cpp: 35530 (WebCore::SVGEllipseElement::toPathData): 35531 * svg/SVGEllipseElement.h: 35532 * svg/SVGLineElement.cpp: 35533 (WebCore::SVGLineElement::toPathData): 35534 * svg/SVGLineElement.h: 35535 * svg/SVGPathElement.cpp: 35536 (WebCore::SVGPathElement::getTotalLength): 35537 (WebCore::SVGPathElement::getPointAtLength): 35538 (WebCore::SVGPathElement::toPathData): 35539 * svg/SVGPathElement.h: 35540 * svg/SVGPolygonElement.cpp: 35541 (WebCore::SVGPolygonElement::toPathData): 35542 * svg/SVGPolygonElement.h: 35543 * svg/SVGPolylineElement.cpp: 35544 (WebCore::SVGPolylineElement::toPathData): 35545 * svg/SVGPolylineElement.h: 35546 * svg/SVGRectElement.cpp: 35547 (WebCore::SVGRectElement::toPathData): 35548 * svg/SVGRectElement.h: 35549 * svg/SVGStyledTransformableElement.cpp: 35550 (WebCore::SVGStyledTransformableElement::toClipPath): 35551 * svg/SVGStyledTransformableElement.h: 35552 (WebCore::SVGStyledTransformableElement::toPathData): 35553 * svg/SVGUseElement.cpp: 35554 (WebCore::SVGUseElement::toClipPath): 35555 * svg/SVGUseElement.h: 35556 35557 2010-10-01 Oliver Hunt <oliver (a] apple.com> 35558 35559 Reviewed by Gavin Barraclough. 35560 35561 [ES5] Implement strict mode 35562 https://bugs.webkit.org/show_bug.cgi?id=10701 35563 35564 Test: fast/js/basic-strict-mode.html 35565 35566 Override toStrictThisObject on the domwindow so that 35567 it correctly provides the shell object when used as this 35568 in a strict mode function. 35569 35570 * bindings/js/JSDOMWindowBase.cpp: 35571 (WebCore::JSDOMWindowBase::toStrictThisObject): 35572 * bindings/js/JSDOMWindowBase.h: 35573 35574 2010-10-11 Joseph Pecoraro <joepeck (a] webkit.org> 35575 35576 Reviewed by Eric Carlson. 35577 35578 CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent 35579 https://bugs.webkit.org/show_bug.cgi?id=46777 35580 35581 Another case that could lead to an improper set of states between 35582 m_currentNode and m_loadingState. Also added an ASSERT and early 35583 return to prevent crashes if this case can still happen in other ways. 35584 35585 * html/HTMLMediaElement.cpp: 35586 (WebCore::HTMLMediaElement::prepareForLoad): 35587 35588 2010-10-11 Ryosuke Niwa <rniwa (a] webkit.org> 35589 35590 Reviewed by Darin Adler. 35591 35592 spellcheck="false" not respected in designMode 35593 https://bugs.webkit.org/show_bug.cgi?id=39978 35594 35595 The bug was caused by WebKit's setting focus to html element rather than body element in design mode. 35596 Because we disable spell-check only if ancestor nodes of the focused element had spellcheck=false, 35597 this caused us to ignore body element's spellcheck attribute. 35598 35599 Fixed the bug by overriding supportsFocus in HTMLBodyElement to make body element focusable 35600 when the parent node of body elements (namely html element) is editable. 35601 35602 Test: editing/spelling/design-mode-spellcheck-off.html 35603 35604 * html/HTMLBodyElement.cpp: 35605 (WebCore::HTMLBodyElement::supportsFocus): Added. 35606 * html/HTMLBodyElement.h: 35607 35608 2010-10-11 Oliver Hunt <oliver (a] apple.com> 35609 35610 Build fix -- I thought i had killed the prior commit in time to have this be part of the commit. 35611 35612 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 35613 (WebCore::GraphicsContext3D::getShaderInfoLog): 35614 35615 2010-10-11 Oliver Hunt <oliver (a] apple.com> 35616 35617 Reviewed by Andreas Kling. 35618 35619 Incorrect handling of 0 length logs in GraphicsContext3DOpenGL.cpp 35620 https://bugs.webkit.org/show_bug.cgi?id=47494 35621 35622 Working on another patch I found that there was some screwy behaviour 35623 when dealing with logs from GL. GL_INFO_LOG_LENGTH is defined as being 35624 zero if there is no log message, but we did not check for that case and 35625 simply perfomed a zero sized alloc and passed the resultant buffer to 35626 glGetShaderInfoLog, etc. glGetShaderInfoLog would then write a null 35627 terminator to the buffer, thus causing an overflow. This is obviously 35628 not a problem in practice as allocations are at least 4 bytes long in 35629 all common allocators, but it is still a bug. 35630 35631 I also removed some unnecessary null checks following calls to fastMalloc. 35632 35633 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 35634 (WebCore::GraphicsContext3D::getProgramInfoLog): 35635 (WebCore::GraphicsContext3D::getShaderInfoLog): 35636 35637 2010-10-11 Nikolas Zimmermann <nzimmermann (a] rim.com> 35638 35639 Reviewed by Andreas Kling. 35640 35641 Kill Path::debugString() 35642 https://bugs.webkit.org/show_bug.cgi?id=47493 35643 35644 Remove the obsolete Path::debugString() method. DRT now dumps paths in a platform independant way. 35645 35646 * platform/graphics/Path.h: 35647 * platform/graphics/cairo/PathCairo.cpp: 35648 * platform/graphics/cg/PathCG.cpp: 35649 * platform/graphics/haiku/PathHaiku.cpp: 35650 * platform/graphics/openvg/PathOpenVG.cpp: 35651 * platform/graphics/qt/PathQt.cpp: 35652 * platform/graphics/skia/PathSkia.cpp: 35653 * platform/graphics/wince/PathWinCE.cpp: 35654 * platform/graphics/wince/PlatformPathWinCE.cpp: 35655 * platform/graphics/wince/PlatformPathWinCE.h: 35656 * platform/graphics/wx/PathWx.cpp: 35657 * svg/SVGGlyphElement.h: 35658 (WebCore::SVGGlyphIdentifier::operator==): 35659 35660 2010-10-11 Martin Robinson <mrobinson (a] igalia.com> 35661 35662 Reviewed by Xan Lopez. 35663 35664 [GTK] Search field icons should be centered vertically in the field 35665 https://bugs.webkit.org/show_bug.cgi?id=47441 35666 35667 Center search field icons vertically in the search field. 35668 35669 * platform/gtk/RenderThemeGtk.cpp: 35670 (WebCore::centerRectVerticallyInParentInputElement): Added this helper. 35671 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Center the search 35672 field icon by adjusting its drawing rect relative to the containing search field. 35673 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto. 35674 35675 2010-10-11 Pavel Podivilov <podivilov (a] chromium.org> 35676 35677 Reviewed by Pavel Feldman. 35678 35679 Web Inspector: fix event listener breakpoints sidebar pane style 35680 https://bugs.webkit.org/show_bug.cgi?id=47487 35681 35682 * inspector/front-end/inspector.css: 35683 (.section .properties, .event-bar .event-properties): 35684 (.section.expanded .properties, .event-bar.expanded .event-properties): 35685 (.properties-tree): 35686 (.properties-tree li): 35687 (.properties-tree li.parent): 35688 (.properties-tree li.parent::before): 35689 (.properties-tree li.parent.expanded::before): 35690 (.properties-tree li .info): 35691 (.properties-tree ol, .stack-trace ol, ol.stack-trace): 35692 (.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace): 35693 (ol.stack-trace): 35694 (.event-listener-breakpoints .event-category): 35695 (.event-listener-breakpoints.properties-tree .children li): 35696 (.event-listener-breakpoints .checkbox-elem): 35697 (.breakpoint-list .breakpoint-hit): 35698 35699 2010-10-11 Andreas Kling <kling (a] webkit.org> 35700 35701 Reviewed by Tor Arne Vestb. 35702 35703 [Qt] Avoid QPainterPath::operator=(QPainterPath()) when possible 35704 35705 Same concept as <http://trac.webkit.org/changeset/69462>, do nothing 35706 when clearing an already empty QPainterPath. Avoids one delete+new. 35707 35708 * platform/graphics/qt/GraphicsContextQt.cpp: 35709 (WebCore::GraphicsContextPlatformPrivate::clearCurrentPath): 35710 (WebCore::GraphicsContext::fillPath): 35711 (WebCore::GraphicsContext::strokePath): 35712 (WebCore::GraphicsContext::beginPath): 35713 35714 2010-10-11 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 35715 35716 Unreviewed. Remove unnecessary GTK+ and Pango includes. 35717 35718 * platform/gtk/FileChooserGtk.cpp: 35719 * platform/gtk/Language.cpp: 35720 35721 2010-10-11 Kinuko Yasuda <kinuko (a] chromium.org> 35722 35723 Reviewed by David Levin. 35724 35725 Support DirectoryEntry.removeRecursively for FileSystem API 35726 https://bugs.webkit.org/show_bug.cgi?id=47400 35727 35728 Also disallows remove/removeRecursively on the root directory. 35729 35730 Test: fast/filesystem/op-remove.html 35731 35732 * fileapi/DOMFileSystemBase.cpp: 35733 (WebCore::DOMFileSystemBase::removeRecursively): Added. 35734 * fileapi/DOMFileSystemBase.h: 35735 * fileapi/DirectoryEntry.cpp: 35736 (WebCore::DirectoryEntry::removeRecursively): Added. 35737 * fileapi/DirectoryEntry.h: 35738 * fileapi/DirectoryEntry.idl: 35739 * fileapi/DirectoryEntrySync.cpp: 35740 (WebCore::DirectoryEntrySync::removeRecursively): Added. 35741 * fileapi/DirectoryEntrySync.h: 35742 * fileapi/DirectoryEntrySync.idl: 35743 * platform/AsyncFileSystem.h: 35744 35745 2010-10-11 Dirk Schulze <krit (a] webkit.org> 35746 35747 Reviewed by Nikolas Zimmermann. 35748 35749 SVG feImage take preserveAspectRatio into account for absolute paint rect 35750 https://bugs.webkit.org/show_bug.cgi?id=47464 35751 35752 Determine the smallest effect region for SVGFEImage by taking preserveAspectRatio into account. 35753 35754 * svg/graphics/filters/SVGFEImage.cpp: 35755 (WebCore::FEImage::determineAbsolutePaintRect): 35756 (WebCore::FEImage::apply): 35757 * svg/graphics/filters/SVGFEImage.h: 35758 35759 2010-10-10 Abhishek Arya <inferno (a] chromium.org> 35760 35761 Reviewed by Dan Bernstein. 35762 35763 <rdar://problem/8510200> Lines flow around a float that has been removed 35764 35765 Overhanging floats are not added to flexible boxes since they behave like 35766 block formatting contexts. This causes the intruding floats added in siblings 35767 to not get cleared. Enforce the float release by checking if the parent is a 35768 flexible box and if yes, use that as the outermost block. 35769 35770 https://bugs.webkit.org/show_bug.cgi?id=47104 35771 35772 Test: fast/flexbox/overhanging-floats-removed.html 35773 35774 * rendering/RenderBox.cpp: 35775 (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): 35776 35777 2010-10-10 Chris Fleizach <cfleizach (a] apple.com> 35778 35779 Reviewed by Beth Dakin. 35780 35781 AX: if aria-live is on a <span> or ignored element, live regions don't work 35782 https://bugs.webkit.org/show_bug.cgi?id=47443 35783 35784 If an element has aria attributes, but has no other native role associated with it, 35785 accessibility should fallback to exposing that element as an AXGroup. 35786 35787 Test: platform/mac/accessibility/live-region-on-span.html 35788 35789 * accessibility/AccessibilityRenderObject.cpp: 35790 (WebCore::AccessibilityRenderObject::determineAccessibilityRole): 35791 35792 2010-10-10 Daniel Cheng <dcheng (a] chromium.org> 35793 35794 Reviewed by Adam Barth. 35795 35796 [chromium] Clipboard no longer accepts 'text' as a synonym for 'text/plain' 35797 https://bugs.webkit.org/show_bug.cgi?id=47419 35798 35799 This was a regression introduced in r68807. mimeTypeText had the incorrect 35800 value. 35801 35802 Test: editing/pasteboard/dataTransfer-setData-getData.html 35803 35804 * platform/chromium/ClipboardMimeTypes.cpp: 35805 35806 2010-10-09 Eric Uhrhane <ericu (a] chromium.org> 35807 35808 Reviewed by Andreas Kling. 35809 35810 FileWriter sends write event instead of progress event 35811 https://bugs.webkit.org/show_bug.cgi?id=47454 35812 35813 No new tests; FileWriter tests will be added shortly, but currently 35814 there's no implementation capable of running them. 35815 35816 * fileapi/FileWriter.cpp: 35817 (WebCore::FileWriter::didWrite): 35818 35819 2010-10-09 Andreas Kling <kling (a] webkit.org> 35820 35821 Reviewed by Kenneth Rohde Christiansen. 35822 35823 [Qt] Fast-path in Path::clear() for already empty paths 35824 https://bugs.webkit.org/show_bug.cgi?id=47460 35825 35826 The only way to clear a QPainterPath is to assign QPainterPath() to it. 35827 Avoid creating a temporary object etc if the path is already empty. 35828 35829 * platform/graphics/qt/PathQt.cpp: 35830 (WebCore::Path::clear): 35831 35832 2010-10-08 Ryosuke Niwa <rniwa (a] webkit.org> 35833 35834 Reviewed by Darin Adler. 35835 35836 Redo in ReplaceNodeWithSpanCommand is broken 35837 https://bugs.webkit.org/show_bug.cgi?id=47428 35838 35839 The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand, 35840 and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply 35841 directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply 35842 only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op. 35843 35844 Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand. 35845 This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation. 35846 35847 Test: editing/undo/replace-by-span-then-remove.html 35848 35849 * editing/ReplaceNodeWithSpanCommand.cpp: 35850 (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand): 35851 * editing/ReplaceNodeWithSpanCommand.h: 35852 35853 2010-10-09 Carlos Garcia Campos <cgarcia (a] igalia.com> 35854 35855 Reviewed by Martin Robinson. 35856 35857 [GTK] Implement subregion rendering in WebView when using gtk3 35858 https://bugs.webkit.org/show_bug.cgi?id=47411 35859 35860 * GNUmakefile.am: 35861 * platform/graphics/FloatRect.h: 35862 * platform/graphics/cairo/FloatRectCairo.cpp: Added. 35863 (WebCore::FloatRect::FloatRect): 35864 (WebCore::FloatRect::operator cairo_rectangle_t): 35865 35866 2010-10-09 Carlos Garcia Campos <cgarcia (a] igalia.com> 35867 35868 Reviewed by Martin Robinson. 35869 35870 [GTK] Implement subregion rendering in WebView when using gtk3 35871 https://bugs.webkit.org/show_bug.cgi?id=47411 35872 35873 * GNUmakefile.am: 35874 * platform/graphics/FloatRect.h: 35875 * platform/graphics/cairo/FloatRectCairo.cpp: Added. 35876 (WebCore::FloatRect::FloatRect): 35877 (WebCore::FloatRect::operator cairo_rectangle_t): 35878 35879 2010-10-09 Kwang Yul Seo <skyul (a] company100.net> 35880 35881 Reviewed by Andreas Kling. 35882 35883 Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture 35884 https://bugs.webkit.org/show_bug.cgi?id=47114 35885 35886 PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS). 35887 35888 * platform/graphics/skia/PlatformContextSkia.h: 35889 35890 2010-10-09 Patrick Gansterer <paroga (a] webkit.org> 35891 35892 Reviewed by Adam Barth. 35893 35894 Use WTF::StringHasher for hashing MappedAttributeKey 35895 https://bugs.webkit.org/show_bug.cgi?id=46516 35896 35897 * dom/StyledElement.cpp: 35898 (WebCore::MappedAttributeHash::hash): 35899 35900 2010-10-09 Martin Robinson <mrobinson (a] igalia.com> 35901 35902 Reviewed by Xan Lopez. 35903 35904 [Gtk] Non-rectangular buttons have a square background behind them 35905 https://bugs.webkit.org/show_bug.cgi?id=23569 35906 35907 Remove some code which was clearing pieces of the GdkDrawable if it was 35908 currently mapped to a window. In our case it is unnecessary, because the 35909 platform-independent parts of the render have already cleared this section 35910 if it is needed. 35911 35912 Mozilla must not trip this code path, which means they are probably rendering 35913 most often to a non-mapped GdkPixmap. 35914 35915 No new tests as some themed rendering is covered by existing tests that 35916 render buttons. This particular bug is very hard to test as it only appears 35917 with certain GTK+ themes and we currently have no mechanism to test different 35918 themes in DRT. 35919 35920 * platform/gtk/gtk2drawing.c: 35921 (moz_gtk_button_paint): Remove unnecessary code. 35922 35923 2010-10-09 Martin Robinson <mrobinson (a] igalia.com> 35924 35925 Reviewed by Xan Lopez. 35926 35927 [GTK] Slider padding translate into a larger track rect 35928 https://bugs.webkit.org/show_bug.cgi?id=47435 35929 35930 Instead of painting the track rectangle for ranges onto the entire RenderBox 35931 rectangle, simply paint it on the content rectangle. This prevents misrendering 35932 sliders with padding. 35933 35934 * platform/gtk/RenderThemeGtk.cpp: 35935 (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect 35936 of the slider instead of the entire area (which includes padding). 35937 35938 2010-10-09 Kent Tamura <tkent (a] chromium.org> 35939 35940 Unreviewed, trivial regression fix for r69445. 35941 35942 RangeInputType::supportsRequired() should return false. 35943 https://bugs.webkit.org/show_bug.cgi?id=47405 35944 35945 * html/RangeInputType.cpp: 35946 (WebCore::RangeInputType::supportsRequired): 35947 * html/RangeInputType.h: 35948 35949 2010-10-09 Kent Tamura <tkent (a] chromium.org> 35950 35951 Reviewed by Dimitri Glazkov. 35952 35953 Refactor HTMLInputElement: Move typeMismatch(), valueMissing(), 35954 isRequiredFormControl(), and recalcWillValidate() 35955 https://bugs.webkit.org/show_bug.cgi?id=47405 35956 35957 Also make checkedRadioButtons() an inline member function of 35958 HTMLInputElement in order that RadioInputType can use it. 35959 35960 * html/BaseDateAndTimeInputType.cpp: 35961 (WebCore::BaseDateAndTimeInputType::typeMismatchFor): 35962 (WebCore::BaseDateAndTimeInputType::typeMismatch): 35963 * html/BaseDateAndTimeInputType.h: 35964 * html/ButtonInputType.cpp: 35965 (WebCore::ButtonInputType::supportsValidation): 35966 * html/ButtonInputType.h: 35967 * html/CheckboxInputType.cpp: 35968 (WebCore::CheckboxInputType::valueMissing): 35969 * html/CheckboxInputType.h: 35970 * html/ColorInputType.cpp: 35971 (WebCore::isValidColorString): 35972 (WebCore::ColorInputType::typeMismatchFor): 35973 (WebCore::ColorInputType::typeMismatch): 35974 (WebCore::ColorInputType::supportsRequired): 35975 * html/ColorInputType.h: 35976 * html/EmailInputType.cpp: 35977 (WebCore::isValidEmailAddress): 35978 (WebCore::EmailInputType::typeMismatchFor): 35979 (WebCore::EmailInputType::typeMismatch): 35980 * html/EmailInputType.h: 35981 * html/FileInputType.cpp: 35982 (WebCore::FileInputType::valueMissing): 35983 * html/FileInputType.h: 35984 * html/HTMLInputElement.cpp: 35985 (WebCore::HTMLInputElement::updateCheckedRadioButtons): 35986 (WebCore::HTMLInputElement::isValidValue): 35987 (WebCore::HTMLInputElement::typeMismatch): 35988 (WebCore::HTMLInputElement::valueMissing): 35989 (WebCore::HTMLInputElement::isKeyboardFocusable): 35990 (WebCore::HTMLInputElement::updateType): 35991 (WebCore::HTMLInputElement::parseMappedAttribute): 35992 (WebCore::HTMLInputElement::setChecked): 35993 (WebCore::HTMLInputElement::preDispatchEventHandler): 35994 (WebCore::HTMLInputElement::isRequiredFormControl): 35995 (WebCore::HTMLInputElement::recalcWillValidate): 35996 * html/HTMLInputElement.h: 35997 (WebCore::HTMLInputElement::checkedRadioButtons): 35998 * html/HiddenInputType.cpp: 35999 (WebCore::HiddenInputType::supportsValidation): 36000 * html/HiddenInputType.h: 36001 * html/ImageInputType.cpp: 36002 (WebCore::ImageInputType::supportsValidation): 36003 * html/ImageInputType.h: 36004 * html/InputType.cpp: 36005 (WebCore::InputType::supportsValidation): 36006 (WebCore::InputType::typeMismatchFor): 36007 (WebCore::InputType::typeMismatch): 36008 (WebCore::InputType::supportsRequired): 36009 (WebCore::InputType::valueMissing): 36010 * html/InputType.h: 36011 * html/IsIndexInputType.cpp: 36012 (WebCore::IsIndexInputType::supportsRequired): 36013 * html/IsIndexInputType.h: 36014 * html/NumberInputType.cpp: 36015 (WebCore::NumberInputType::typeMismatchFor): 36016 (WebCore::NumberInputType::typeMismatch): 36017 * html/NumberInputType.h: 36018 * html/RadioInputType.cpp: 36019 (WebCore::RadioInputType::valueMissing): 36020 * html/RadioInputType.h: 36021 * html/ResetInputType.cpp: 36022 (WebCore::ResetInputType::supportsValidation): 36023 * html/ResetInputType.h: 36024 * html/SubmitInputType.cpp: 36025 (WebCore::SubmitInputType::supportsValidation): 36026 * html/SubmitInputType.h: 36027 * html/TextFieldInputType.cpp: 36028 (WebCore::TextFieldInputType::valueMissing): 36029 * html/TextFieldInputType.h: 36030 * html/URLInputType.cpp: 36031 (WebCore::URLInputType::typeMismatchFor): 36032 (WebCore::URLInputType::typeMismatch): 36033 * html/URLInputType.h: 36034 * html/ValidityState.cpp: 36035 (WebCore::ValidityState::typeMismatch): 36036 36037 2010-10-09 Pratik Solanki <psolanki (a] apple.com> 36038 36039 Reviewed by Dan Bernstein. 36040 36041 https://bugs.webkit.org/show_bug.cgi?id=47450 36042 Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil 36043 <rdar://problem/8244376> 36044 36045 * platform/network/cf/SocketStreamHandleCFNet.cpp: 36046 (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is 36047 NULL, return early to avoid crash. 36048 36049 2010-10-08 Chris Rogers <crogers (a] google.com> 36050 36051 Reviewed by James Robinson. 36052 36053 Add HRTFPanner files 36054 https://bugs.webkit.org/show_bug.cgi?id=46299 36055 36056 No new tests since audio API is not yet implemented. 36057 36058 * platform/audio/HRTFPanner.cpp: Added. 36059 (WebCore::HRTFPanner::HRTFPanner): 36060 (WebCore::HRTFPanner::~HRTFPanner): 36061 (WebCore::HRTFPanner::fftSizeForSampleRate): 36062 (WebCore::HRTFPanner::reset): 36063 (WebCore::wrapDistance): 36064 (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend): 36065 (WebCore::HRTFPanner::pan): 36066 * platform/audio/HRTFPanner.h: Added. 36067 (WebCore::HRTFPanner::fftSize): 36068 (WebCore::HRTFPanner::sampleRate): 36069 36070 2010-10-08 James Robinson <jamesr (a] chromium.org> 36071 36072 Reviewed by Adam Barth. 36073 36074 Avoid inlining large and/or virtual functions in widely included header files 36075 https://bugs.webkit.org/show_bug.cgi?id=47230 36076 36077 Functions with very large bodies should not be included in widely included header files. 36078 This results in the function's code ending up included in hundreds of object files that 36079 the linker has to discard, at a cost of linker memory use, link time, and disk space. This 36080 is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit 36081 virtual address space and completely fails to link. 36082 36083 This patch moves function definitions from the .h to the corresponding .cpp when the function 36084 is large and not a candidate for inlining either because it is virtual or because its size is 36085 above any reasonable compiler's threshhold for inlining. The most common case by far in this 36086 patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in 36087 the header and an explicitly defined d'tor in the .cpp. This is important since many of our 36088 container and utility classes (especially Vector, String, and HashSet) have quite large 36089 destructors. 36090 36091 This patch removes 22.4MB of object file size in a debug 64 bit compile. 36092 36093 * css/CSSBorderImageValue.cpp: 36094 (WebCore::CSSBorderImageValue::~CSSBorderImageValue): 36095 * css/CSSBorderImageValue.h: 36096 * css/CSSFontFaceSrcValue.cpp: 36097 (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue): 36098 * css/CSSFontFaceSrcValue.h: 36099 * css/CSSFunctionValue.h: 36100 * dom/BeforeTextInsertedEvent.cpp: 36101 (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent): 36102 * dom/BeforeTextInsertedEvent.h: 36103 * dom/BeforeUnloadEvent.cpp: 36104 (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent): 36105 * dom/BeforeUnloadEvent.h: 36106 * dom/ClassNodeList.h: 36107 * dom/ClipboardEvent.cpp: 36108 (WebCore::ClipboardEvent::~ClipboardEvent): 36109 * dom/ClipboardEvent.h: 36110 * dom/CustomEvent.cpp: 36111 (WebCore::CustomEvent::~CustomEvent): 36112 * dom/CustomEvent.h: 36113 * dom/Element.cpp: 36114 * dom/Element.h: 36115 * dom/EventTarget.cpp: 36116 (WebCore::EventTargetData::EventTargetData): 36117 * dom/EventTarget.h: 36118 * dom/InputElement.cpp: 36119 (WebCore::InputElementData::~InputElementData): 36120 * dom/InputElement.h: 36121 * dom/MutationEvent.cpp: 36122 (WebCore::MutationEvent::~MutationEvent): 36123 * dom/MutationEvent.h: 36124 * dom/Node.cpp: 36125 (WebCore::Node::refEventTarget): 36126 (WebCore::Node::derefEventTarget): 36127 * dom/Node.h: 36128 * dom/OptionElement.cpp: 36129 (WebCore::OptionElementData::~OptionElementData): 36130 * dom/OptionElement.h: 36131 * dom/PopStateEvent.cpp: 36132 (WebCore::PopStateEvent::~PopStateEvent): 36133 * dom/PopStateEvent.h: 36134 * dom/QualifiedName.cpp: 36135 (WebCore::QualifiedName::~QualifiedName): 36136 * dom/QualifiedName.h: 36137 * dom/SelectElement.cpp: 36138 (WebCore::SelectElementData::~SelectElementData): 36139 * dom/SelectElement.h: 36140 * dom/StaticHashSetNodeList.cpp: 36141 (WebCore::StaticHashSetNodeList::StaticHashSetNodeList): 36142 (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList): 36143 * dom/StaticHashSetNodeList.h: 36144 * dom/StyleElement.cpp: 36145 (WebCore::StyleElement::~StyleElement): 36146 * dom/StyleElement.h: 36147 * dom/TouchEvent.cpp: 36148 (WebCore::TouchEvent::TouchEvent): 36149 (WebCore::TouchEvent::~TouchEvent): 36150 * dom/TouchEvent.h: 36151 * editing/CompositeEditCommand.cpp: 36152 (WebCore::CompositeEditCommand::~CompositeEditCommand): 36153 * editing/CompositeEditCommand.h: 36154 * editing/TextIterator.cpp: 36155 (WebCore::BitStack::~BitStack): 36156 (WebCore::TextIterator::~TextIterator): 36157 (WebCore::WordAwareIterator::~WordAwareIterator): 36158 * editing/TextIterator.h: 36159 * inspector/InspectorValues.cpp: 36160 (WebCore::InspectorObject::~InspectorObject): 36161 (WebCore::InspectorObject::InspectorObject): 36162 (WebCore::InspectorArray::~InspectorArray): 36163 (WebCore::InspectorArray::InspectorArray): 36164 * inspector/InspectorValues.h: 36165 * loader/CachedResource.cpp: 36166 (WebCore::CachedResource::registerHandle): 36167 (WebCore::CachedResource::unregisterHandle): 36168 * loader/CachedResource.h: 36169 * platform/network/HTTPHeaderMap.cpp: 36170 (WebCore::HTTPHeaderMap::HTTPHeaderMap): 36171 (WebCore::HTTPHeaderMap::~HTTPHeaderMap): 36172 (WebCore::HTTPHeaderMap::get): 36173 (WebCore::HTTPHeaderMap::add): 36174 * platform/network/HTTPHeaderMap.h: 36175 * rendering/RenderApplet.cpp: 36176 (WebCore::RenderApplet::~RenderApplet): 36177 * rendering/RenderApplet.h: 36178 * rendering/RenderButton.cpp: 36179 (WebCore::RenderButton::~RenderButton): 36180 * rendering/RenderButton.h: 36181 * rendering/RenderCounter.cpp: 36182 (WebCore::RenderCounter::~RenderCounter): 36183 * rendering/RenderCounter.h: 36184 * rendering/RenderFieldset.h: 36185 * rendering/RenderForeignObject.cpp: 36186 (WebCore::RenderForeignObject::~RenderForeignObject): 36187 * rendering/RenderForeignObject.h: 36188 * rendering/RenderFrame.h: 36189 * rendering/RenderFrameBase.h: 36190 * rendering/RenderHTMLCanvas.h: 36191 * rendering/RenderIFrame.h: 36192 * rendering/RenderInline.h: 36193 * rendering/RenderListItem.h: 36194 * rendering/RenderMarquee.cpp: 36195 (WebCore::RenderMarquee::~RenderMarquee): 36196 * rendering/RenderMarquee.h: 36197 * rendering/RenderPath.cpp: 36198 (WebCore::RenderPath::~RenderPath): 36199 * rendering/RenderPath.h: 36200 * rendering/RenderSVGBlock.h: 36201 * rendering/RenderSVGContainer.cpp: 36202 (WebCore::RenderSVGContainer::~RenderSVGContainer): 36203 * rendering/RenderSVGContainer.h: 36204 * rendering/RenderSVGHiddenContainer.h: 36205 * rendering/RenderSVGInline.h: 36206 * rendering/RenderSVGInlineText.cpp: 36207 (WebCore::RenderSVGInlineText::~RenderSVGInlineText): 36208 * rendering/RenderSVGInlineText.h: 36209 * rendering/RenderSVGModelObject.h: 36210 * rendering/RenderSVGResourceFilterPrimitive.h: 36211 * rendering/RenderSVGRoot.cpp: 36212 (WebCore::RenderSVGRoot::~RenderSVGRoot): 36213 * rendering/RenderSVGRoot.h: 36214 * rendering/RenderSVGTSpan.h: 36215 * rendering/RenderSVGText.h: 36216 * rendering/RenderSVGTextPath.h: 36217 * rendering/RenderSVGTransformableContainer.h: 36218 * rendering/RenderSVGViewportContainer.h: 36219 * rendering/RenderTable.cpp: 36220 (WebCore::RenderTable::~RenderTable): 36221 * rendering/RenderTable.h: 36222 * rendering/RenderTableCell.h: 36223 * rendering/RenderTableCol.h: 36224 * rendering/RenderTableRow.h: 36225 * rendering/RenderTextFragment.cpp: 36226 (WebCore::RenderTextFragment::~RenderTextFragment): 36227 * rendering/RenderTextFragment.h: 36228 * rendering/RenderWordBreak.h: 36229 * svg/SVGStyledElement.cpp: 36230 (WebCore::SVGStyledElement::~SVGStyledElement): 36231 * svg/SVGStyledElement.h: 36232 * svg/SVGStyledTransformableElement.cpp: 36233 (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement): 36234 * svg/SVGStyledTransformableElement.h: 36235 * xml/XPathParser.cpp: 36236 (WebCore::XPath::Parser::~Parser): 36237 * xml/XPathParser.h: 36238 36239 2010-10-08 Martin Robinson <mrobinson (a] igalia.com> 36240 36241 Reviewed by Daniel Bates. 36242 36243 [GTK] Fails /LayoutTests/fast/css/button-height.html 36244 https://bugs.webkit.org/show_bug.cgi?id=33936 36245 36246 GTK buttons honor height property set via CSS. The code for the method 36247 adjustButtonStyle originates from the original GTK+ theme drawing code 36248 and is clearly just a copy-paste from the Safari theme drawing code. The 36249 Safari theme drawing code does quite a bit of work to ensure that button 36250 fonts are consistent with the system theme, which is not something the GTK+ 36251 port does. 36252 36253 This change brings the method more in line with the Chromium port, which 36254 allows CSS to style buttons, only overriding the line-height property, 36255 which is required for layout tests to pass. 36256 36257 * platform/gtk/RenderThemeGtk.cpp: 36258 (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS 36259 properties for button styling. 36260 36261 2010-10-08 Mihai Parparita <mihaip (a] chromium.org> 36262 36263 Reviewed by Adam Barth. 36264 36265 popstate events are lost when network connection is in progress 36266 https://bugs.webkit.org/show_bug.cgi?id=42940 36267 36268 Instead of checking FrameLoader::isComplete() (which isn't true if the 36269 document's resource loader has requests outstanding), check that the 36270 document's readyState is complete, as the spec says. 36271 36272 Test: http/tests/history/popstate-fires-with-pending-requests.html 36273 36274 * dom/Document.cpp: 36275 (WebCore::Document::statePopped): 36276 * loader/FrameLoader.cpp: 36277 (WebCore::FrameLoader::didBeginDocument): Added call to set readyState 36278 to Loading earlier. Otherwise, readyState's initial value is Complete, 36279 and we only set it to Loading in Document::implicitOpen (which is called 36280 after FrameLoader::didBeginDocument by DocumentWriter::begin), so we 36281 could end up in Document::statePopped and have the readyState be 36282 Complete, even if we hadn't even begin loading the document. 36283 36284 2010-10-08 Daniel Cheng <dcheng (a] chromium.org> 36285 36286 Reviewed by Tony Chang. 36287 36288 [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change 36289 https://bugs.webkit.org/show_bug.cgi?id=47394 36290 36291 Minor cleanup--these classes have suffered from bit rot since they aren't 36292 actively used at the moment. The three main changes are to: 36293 1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl, 36294 setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL 36295 title and HTML base URL. 36296 2) Use Clipboard::ClipboardType instead of a bool. 36297 3) Remove the use of virtuals, as they are no longer needed.. 36298 36299 * platform/chromium/ReadableDataObject.cpp: 36300 (WebCore::clipboardBuffer): 36301 (WebCore::ReadableDataObject::create): 36302 (WebCore::ReadableDataObject::ReadableDataObject): 36303 (WebCore::ReadableDataObject::getData): 36304 (WebCore::ReadableDataObject::urlTitle): renamed from getURL 36305 (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML 36306 (WebCore::ReadableDataObject::containsFilenames): 36307 (WebCore::ReadableDataObject::filenames): 36308 (WebCore::ReadableDataObject::ensureTypeCacheInitialized): 36309 * platform/chromium/ReadableDataObject.h: 36310 * platform/chromium/WritableDataObject.cpp: 36311 (WebCore::WritableDataObject::create): 36312 (WebCore::WritableDataObject::WritableDataObject): 36313 (WebCore::WritableDataObject::setData): 36314 * platform/chromium/WritableDataObject.h: 36315 (WebCore::WritableDataObject::setUrlTitle): renamed from setURL 36316 (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML 36317 (WebCore::WritableDataObject::dataMap): 36318 (WebCore::WritableDataObject::urlTitle): 36319 (WebCore::WritableDataObject::htmlBaseURL): 36320 (WebCore::WritableDataObject::fileExtension): 36321 (WebCore::WritableDataObject::fileContentFilename): 36322 (WebCore::WritableDataObject::fileContent): 36323 (WebCore::WritableDataObject::setFileExtension): 36324 (WebCore::WritableDataObject::setFileContentFilename): 36325 (WebCore::WritableDataObject::setFileContent): 36326 36327 2010-10-08 Abhishek Arya <inferno (a] chromium.org> 36328 36329 Unreviewed, rolling out r69360. 36330 http://trac.webkit.org/changeset/69360 36331 https://bugs.webkit.org/show_bug.cgi?id=46921 36332 36333 Test still crashing on chromium test_shell 36334 36335 * html/HTMLObjectElement.cpp: 36336 (WebCore::HTMLObjectElement::renderFallbackContent): 36337 36338 2010-10-08 Sheriff Bot <webkit.review.bot (a] gmail.com> 36339 36340 Unreviewed, rolling out r68574. 36341 http://trac.webkit.org/changeset/68574 36342 https://bugs.webkit.org/show_bug.cgi?id=47433 36343 36344 [chromium] Breaks partial repaint of images while scrolling 36345 (Requested by jamesr on #webkit). 36346 36347 * platform/graphics/skia/ImageSkia.cpp: 36348 (WebCore::computeResamplingMode): 36349 (WebCore::drawResampledBitmap): 36350 36351 2010-10-08 Andy Estes <aestes (a] apple.com> 36352 36353 Reviewed by Darin Adler. 36354 36355 REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images. 36356 https://bugs.webkit.org/show_bug.cgi?id=47430 36357 36358 Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html 36359 36360 * rendering/RenderImage.cpp: 36361 (WebCore::RenderImage::imageChanged): imageChanged() can be called prior 36362 to m_imageResource being set. The appropriate thing to do in this case 36363 is to return early. 36364 (WebCore::RenderImage::notifyFinished): Ditto. 36365 36366 2010-10-08 Andrei Popescu <andreip (a] google.com> 36367 36368 Reviewed by Jeremy Orlow. 36369 36370 IndexedDB does not have a quota mechanism. 36371 https://bugs.webkit.org/show_bug.cgi?id=47389 36372 36373 Test: storage/indexeddb/database-quota.html 36374 36375 Add a simple mechanism for enforcing a maximum size 36376 for each origin using IndexedDB. Note that this depends 36377 on having one SQLite database file per origin, which is 36378 addressed in a separate patch. 36379 36380 * page/GroupSettings.cpp: 36381 (WebCore::GroupSettings::GroupSettings): 36382 (WebCore::GroupSettings::setIndexedDBQuotaBytes): 36383 * page/GroupSettings.h: 36384 (WebCore::GroupSettings::indexedDBQuotaBytes): 36385 * storage/IDBDatabaseBackendImpl.cpp: 36386 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 36387 (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): 36388 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 36389 (WebCore::IDBDatabaseBackendImpl::setVersionInternal): 36390 * storage/IDBFactory.cpp: 36391 (WebCore::IDBFactory::open): 36392 * storage/IDBFactoryBackendImpl.cpp: 36393 (WebCore::openSQLiteDatabase): 36394 (WebCore::IDBFactoryBackendImpl::open): 36395 * storage/IDBFactoryBackendImpl.h: 36396 * storage/IDBFactoryBackendInterface.h: 36397 * storage/IDBObjectStoreBackendImpl.cpp: 36398 (WebCore::putObjectStoreData): 36399 (WebCore::putIndexData): 36400 (WebCore::IDBObjectStoreBackendImpl::put): 36401 (WebCore::IDBObjectStoreBackendImpl::putInternal): 36402 (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): 36403 * storage/IDBObjectStoreBackendImpl.h: 36404 36405 2010-10-08 Gavin Peters <gavinp (a] chromium.org> 36406 36407 Reviewed by Adam Barth. 36408 36409 Output X-Purpose header for prefetch requests 36410 https://bugs.webkit.org/show_bug.cgi?id=46529 36411 36412 Test: http/tests/misc/prefetch-purpose.html 36413 36414 * loader/loader.cpp: 36415 (WebCore::Loader::Host::servePendingRequests): 36416 36417 2010-10-08 James Kozianski <koz (a] chromium.org> 36418 36419 Reviewed by Simon Fraser. 36420 36421 Crash on reload when CSS property 'content' has malformed URL. 36422 https://bugs.webkit.org/show_bug.cgi?id=47322 36423 36424 Make CSSStyleSelector handle the case where a cached image can't be 36425 produced due to a malformed URL. 36426 36427 Test: fast/css-generated-content/malformed-url.html 36428 36429 * css/CSSStyleSelector.cpp: 36430 (WebCore::CSSStyleSelector::loadPendingImages): 36431 36432 2010-10-08 Dirk Schulze <krit (a] webkit.org> 36433 36434 Reviewed by Nikolas Zimmermann. 36435 36436 SVG feImage needs absolute subregion for preserveAspectRatio 36437 https://bugs.webkit.org/show_bug.cgi?id=47409 36438 36439 PreserverAspectRatio needs the subregion in absolute coordinates to determine 36440 the destination position and size of the input image. The maxEffectRect() already 36441 stores the absolute subregion, but clipped to the filter region. 36442 36443 Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg 36444 36445 * platform/graphics/filters/FETile.cpp: 36446 (WebCore::FETile::apply): 36447 * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage. 36448 (WebCore::FilterEffect::filterEffectType): 36449 * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect 36450 (WebCore::SourceAlpha::filterEffectType): 36451 * platform/graphics/filters/SourceGraphic.h: Ditto. 36452 (WebCore::SourceGraphic::filterEffectType): 36453 * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image. 36454 (WebCore::FEImage::apply): 36455 * svg/graphics/filters/SVGFEImage.h: Ditto. 36456 (WebCore::FEImage::setAbsoluteSubregion): 36457 (WebCore::FEImage::filterEffectType): 36458 * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it. 36459 (WebCore::SVGFilter::determineFilterPrimitiveSubregion): 36460 36461 2010-10-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 36462 36463 Reviewed by Dirk Schulze. 36464 36465 gradient stroke on lines does not work 36466 https://bugs.webkit.org/show_bug.cgi?id=40985 36467 36468 Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition. 36469 Perfectly matches Opera, and now lets us pass three of the new tests. 36470 36471 Fix incorrect svg/custom/invalid-fill* tests: 36472 -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg) 36473 -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg) 36474 36475 Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers. 36476 As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition. 36477 36478 Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg 36479 svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg 36480 svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg 36481 36482 * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions. 36483 (WebCore::requestPaintingResource): 36484 (WebCore::RenderSVGResource::fillPaintingResource): 36485 (WebCore::RenderSVGResource::strokePaintingResource): 36486 * rendering/RenderSVGResource.h: 36487 * rendering/RenderSVGResourceGradient.cpp: Split collecting gradient properties from building the gradient. We don't need to build it, if it's not applyable (eg. on 1d lines). 36488 (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient): 36489 (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache): 36490 (WebCore::clipToTextMask): 36491 (WebCore::RenderSVGResourceGradient::applyResource): 36492 * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once. 36493 * rendering/RenderSVGResourceLinearGradient.cpp: 36494 (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient. 36495 (WebCore::RenderSVGResourceLinearGradient::buildGradient): 36496 * rendering/RenderSVGResourceLinearGradient.h: 36497 (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData. 36498 (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto. 36499 * rendering/RenderSVGResourcePattern.cpp: Split collecting pattern properties from building the pattern. We don't need to build it, if it's not applyable (eg. on 1d lines). 36500 (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern): 36501 (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache): 36502 (WebCore::RenderSVGResourcePattern::applyResource): 36503 (WebCore::RenderSVGResourcePattern::buildTileImageTransform): 36504 * rendering/RenderSVGResourcePattern.h: 36505 * rendering/RenderSVGResourceRadialGradient.cpp: 36506 (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes): 36507 (WebCore::RenderSVGResourceRadialGradient::buildGradient): 36508 * rendering/RenderSVGResourceRadialGradient.h: 36509 (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode): 36510 (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform): 36511 * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter. 36512 (WebCore::writeStyle): 36513 (WebCore::writeSVGResourceContainer): 36514 * rendering/svg/RenderSVGPath.cpp: 36515 (WebCore::RenderSVGPath::fillContains): Ditto. 36516 (WebCore::RenderSVGPath::strokeContains): Ditto. 36517 (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply. 36518 * rendering/svg/SVGInlineTextBox.cpp: 36519 (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto. 36520 * svg/SVGLinearGradientElement.cpp: 36521 (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy. 36522 * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes. 36523 * svg/SVGPatternElement.cpp: 36524 (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning. 36525 * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes. 36526 * svg/SVGRadialGradientElement.cpp: 36527 (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy. 36528 * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes. 36529 36530 2010-10-08 Benjamin Poulain <benjamin.poulain (a] nokia.com> 36531 36532 Reviewed by Andreas Kling. 36533 36534 [Qt] Slider widgets looks bad on Mac 36535 https://bugs.webkit.org/show_bug.cgi?id=47421 36536 36537 This patch change the rendering of the slider to only have the 36538 subcontrols that would be defined by default on a QSlider. 36539 36540 * platform/qt/RenderThemeQt.cpp: 36541 (WebCore::RenderThemeQt::paintSliderTrack): 36542 36543 2010-10-08 Renata Hodovan <reni (a] inf.u-szeged.hu> 36544 36545 Reviewed by Andreas Kling. 36546 36547 SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change. 36548 https://bugs.webkit.org/show_bug.cgi?id=47342 36549 36550 The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary. 36551 36552 Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html 36553 svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html 36554 svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html 36555 svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html 36556 svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html 36557 svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html 36558 36559 * svg/SVGFEColorMatrixElement.cpp: 36560 (WebCore::SVGFEColorMatrixElement::svgAttributeChanged): 36561 * svg/SVGFEColorMatrixElement.h: 36562 36563 2010-10-08 Pavel Podivilov <podivilov (a] chromium.org> 36564 36565 Reviewed by Pavel Feldman. 36566 36567 Web Inspector: save InspectorController in instrumentation cookie 36568 https://bugs.webkit.org/show_bug.cgi?id=47406 36569 36570 * bindings/v8/V8Proxy.cpp: 36571 (WebCore::V8Proxy::evaluate): 36572 (WebCore::V8Proxy::callFunction): 36573 * dom/Document.cpp: 36574 (WebCore::Document::recalcStyle): 36575 * dom/Node.cpp: 36576 (WebCore::Node::dispatchGenericEvent): 36577 * html/parser/HTMLDocumentParser.cpp: 36578 (WebCore::HTMLDocumentParser::pumpTokenizer): 36579 * inspector/InspectorInstrumentation.cpp: 36580 * inspector/InspectorInstrumentation.h: 36581 * loader/ResourceLoader.cpp: 36582 (WebCore::ResourceLoader::didReceiveResponse): 36583 (WebCore::ResourceLoader::didReceiveData): 36584 * page/DOMTimer.cpp: 36585 (WebCore::DOMTimer::fired): 36586 * page/DOMWindow.cpp: 36587 (WebCore::DOMWindow::dispatchEvent): 36588 * page/FrameView.cpp: 36589 (WebCore::FrameView::layout): 36590 (WebCore::FrameView::paintContents): 36591 * rendering/RenderLayerBacking.cpp: 36592 (WebCore::RenderLayerBacking::paintContents): 36593 * xml/XMLHttpRequest.cpp: 36594 (WebCore::XMLHttpRequest::callReadyStateChangeListener): 36595 36596 2010-10-08 Adam Roben <aroben (a] apple.com> 36597 36598 Windows Release build fix for 32-bit systems 36599 36600 WebCore had once again grown too large for the linker's virtual 36601 address space on 32-bit systems. I combined WebCore/rendering, 36602 WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files, 36603 and added a few more files to RenderSVGAllInOne.cpp. 36604 36605 Fixes <http://webkit.org/b/47417> <rdar://problem/8529362> 36606 36607 * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and 36608 excluded the individual files they contain from the build. 36609 36610 * rendering/RenderSVGAllInOne.cpp: Added a few more files to this. 36611 36612 * dom/DOMAllInOne.cpp: Added. 36613 * rendering/RenderingAllInOne.cpp: Added. 36614 * rendering/style/StyleAllInOne.cpp: Added. 36615 36616 2010-10-08 Girish Ramakrishnan <girish (a] forwardbias.in> 36617 36618 Reviewed by Andreas Kling. 36619 36620 [Qt] Use constBegin and constEnd when using const iterators 36621 36622 * platform/graphics/qt/GraphicsLayerQt.cpp: 36623 (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl): 36624 (WebCore::GraphicsLayerQtImpl::updateTransform): 36625 (WebCore::GraphicsLayerQtImpl::flushChanges): 36626 36627 2010-10-07 Pavel Feldman <pfeldman (a] chromium.org> 36628 36629 Reviewed by Yury Semikhatsky. 36630 36631 Web Inspector: add resource viewer to the network panel. 36632 https://bugs.webkit.org/show_bug.cgi?id=47346 36633 36634 * inspector/front-end/DataGrid.js: 36635 (WebInspector.DataGrid): 36636 (WebInspector.DataGrid.prototype.autoSizeColumns): 36637 (WebInspector.DataGrid.prototype.updateWidths): 36638 (WebInspector.DataGrid.prototype.columnWidthsMap): 36639 (WebInspector.DataGrid.prototype.applyColumnWidthsMap): 36640 (WebInspector.DataGrid.prototype.isColumnVisible): 36641 (WebInspector.DataGrid.prototype.showColumn): 36642 (WebInspector.DataGrid.prototype.hideColumn): 36643 (WebInspector.DataGrid.prototype._positionResizers): 36644 (WebInspector.DataGrid.prototype._resizerDragging): 36645 * inspector/front-end/NetworkPanel.js: 36646 (WebInspector.NetworkPanel): 36647 (WebInspector.NetworkPanel.prototype.updateSidebarWidth): 36648 (WebInspector.NetworkPanel.prototype.updateMainViewWidth): 36649 (WebInspector.NetworkPanel.prototype.handleShortcut): 36650 (WebInspector.NetworkPanel.prototype._createTable): 36651 (WebInspector.NetworkPanel.prototype._sortItems): 36652 (WebInspector.NetworkPanel.prototype._sortByTimeline): 36653 (WebInspector.NetworkPanel.prototype._createSummaryBar): 36654 (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded): 36655 (WebInspector.NetworkPanel.prototype.hide): 36656 (WebInspector.NetworkPanel.prototype.get searchableViews): 36657 (WebInspector.NetworkPanel.prototype.refresh): 36658 (WebInspector.NetworkPanel.prototype.reset): 36659 (WebInspector.NetworkPanel.prototype.refreshResource): 36660 (WebInspector.NetworkPanel.prototype.canShowSourceLine): 36661 (WebInspector.NetworkPanel.prototype.showSourceLine): 36662 (WebInspector.NetworkPanel.prototype._showResource): 36663 (WebInspector.NetworkPanel.prototype._closeVisibleResource): 36664 (WebInspector.NetworkPanel.prototype._resourceViewForResource): 36665 (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource): 36666 (WebInspector.NetworkPanel.prototype._toggleGridMode): 36667 (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode): 36668 (WebInspector.NetworkDataGridNode): 36669 (WebInspector.NetworkDataGridNode.prototype.select): 36670 (WebInspector.NetworkDataGridNode.prototype._createTimelineCell): 36671 * inspector/front-end/networkPanel.css: 36672 (#network-container): 36673 (#network-views): 36674 (.network.panel .data-grid.full-grid-mode .viewer-column): 36675 (.network.panel .data-grid.brief-grid-mode .time-column): 36676 (.network.panel.viewing-resource .network-timeline-grid): 36677 (.network.panel .data-grid.viewing-resource-mode .timeline-column): 36678 (.network.panel .network-sidebar): 36679 (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical): 36680 (.network.panel.viewing-resource .data-grid-resizer): 36681 (.network.panel .scope-bar): 36682 (.network.panel .resource-view.headers-visible .resource-view-content): 36683 (.network.panel:not(.viewing-resource) .data-grid tr.selected): 36684 36685 2010-10-08 Andreas Kling <kling (a] webkit.org> 36686 36687 Reviewed by Nikolas Zimmermann. 36688 36689 SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros 36690 https://bugs.webkit.org/show_bug.cgi?id=47180 36691 36692 Rename *Value to *ValueAttribute 36693 36694 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: 36695 (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue): 36696 (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter): 36697 * rendering/svg/SVGTextLayoutAttributesBuilder.h: 36698 36699 2010-10-08 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 36700 36701 Reviewed by Kenneth Rohde Christiansen. 36702 36703 [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so 36704 https://bugs.webkit.org/show_bug.cgi?id=47347 36705 36706 * WebCore.pro: 36707 36708 2010-10-08 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 36709 36710 Reviewed by Kenneth Rohde Christiansen. 36711 36712 [EFL] Implement IntRectEfl.cpp 36713 https://bugs.webkit.org/show_bug.cgi?id=47403 36714 36715 Implement IntRect for Efl Port using Eina_Rectangle. 36716 36717 * platform/graphics/IntRect.h: 36718 * platform/graphics/efl/IntRectEfl.cpp: 36719 (WebCore::IntRect::IntRect): 36720 (WebCore::IntRect::operator Eina_Rectangle): 36721 36722 2010-10-08 Andreas Kling <andreas.kling (a] nokia.com> 36723 36724 Reviewed by Nikolas Zimmermann. 36725 36726 SVG: Make RenderPath DRT output platform-independent 36727 https://bugs.webkit.org/show_bug.cgi?id=46051 36728 36729 Move away from using the port-specific Path::debugString() to dump 36730 RenderPath objects. This shrinks the DRT output delta between platforms 36731 and makes it more readable as we now dump only the relevant, 36732 element-specific properties of each object. 36733 36734 * rendering/SVGRenderTreeAsText.cpp: 36735 (WebCore::operator<<): 36736 Generate DRT output for RenderPaths in a platform-independent manner, 36737 dumping the relevant element properties. 36738 36739 2010-10-08 Kinuko Yasuda <kinuko (a] chromium.org> 36740 36741 Reviewed by David Levin. 36742 36743 Fix FileSystem path validation order to normalize '..' and '.' before restriction checks 36744 https://bugs.webkit.org/show_bug.cgi?id=47309 36745 36746 Test: fast/filesystem/op-get-entry.html 36747 36748 * fileapi/DOMFileSystemBase.cpp: 36749 (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order. 36750 (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order. 36751 36752 2010-10-08 Carlos Garcia Campos <cgarcia (a] igalia.com> 36753 36754 Reviewed by Xan Lopez. 36755 36756 [GTK] Port GTK+ theming code to GTK+ 3.x APIs 36757 https://bugs.webkit.org/show_bug.cgi?id=47398 36758 36759 Create a new gtk3drawing file for the widget drawing primitives in 36760 WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x 36761 code at the moment, but we'll evolve it incrementally from here. 36762 36763 * GNUmakefile.am: 36764 * platform/gtk/RenderThemeGtk.cpp: 36765 (WebCore::RenderThemeGtk::partsForDrawable): 36766 (WebCore::RenderThemeGtk::paintMozillaGtkWidget): 36767 * platform/gtk/gtk2drawing.c: 36768 (TSOffsetStyleGCArray): 36769 (TSOffsetStyleGCs): 36770 (moz_gtk_button_paint): 36771 (moz_gtk_scrollbar_thumb_paint): 36772 (moz_gtk_entry_paint): 36773 (moz_gtk_combo_box_paint): 36774 (moz_gtk_get_widget_border): 36775 * platform/gtk/gtk3drawing.c: Added. 36776 * platform/gtk/gtkdrawing.h: 36777 36778 2010-10-07 Daniel Cheng <dcheng (a] chromium.org> 36779 36780 Reviewed by Kent Tamura. 36781 36782 [chromium] Fix indentation in ChromiumDataObject.h 36783 https://bugs.webkit.org/show_bug.cgi?id=47396 36784 36785 Just a cleanup patch to make followup diffs smaller. 36786 36787 * platform/chromium/ChromiumDataObject.h: 36788 (WebCore::ChromiumDataObject::create): 36789 (WebCore::ChromiumDataObject::copy): 36790 (WebCore::ChromiumDataObject::urlTitle): 36791 (WebCore::ChromiumDataObject::setUrlTitle): 36792 (WebCore::ChromiumDataObject::htmlBaseUrl): 36793 (WebCore::ChromiumDataObject::setHtmlBaseUrl): 36794 (WebCore::ChromiumDataObject::containsFilenames): 36795 (WebCore::ChromiumDataObject::filenames): 36796 (WebCore::ChromiumDataObject::setFilenames): 36797 (WebCore::ChromiumDataObject::fileExtension): 36798 (WebCore::ChromiumDataObject::setFileExtension): 36799 (WebCore::ChromiumDataObject::fileContentFilename): 36800 (WebCore::ChromiumDataObject::setFileContentFilename): 36801 (WebCore::ChromiumDataObject::fileContent): 36802 (WebCore::ChromiumDataObject::setFileContent): 36803 36804 2010-10-07 Kent Tamura <tkent (a] chromium.org> 36805 36806 Reviewed by Dimitri Glazkov. 36807 36808 Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations 36809 https://bugs.webkit.org/show_bug.cgi?id=47327 36810 36811 Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(), 36812 valueAsNumber(), and setValueAsNumber() to InputType, and move 36813 serialize() and serializeForDateTimeTypes() too 36814 36815 * html/BaseDateAndTimeInputType.cpp: 36816 (WebCore::BaseDateAndTimeInputType::valueAsDate): 36817 (WebCore::BaseDateAndTimeInputType::setValueAsDate): 36818 (WebCore::BaseDateAndTimeInputType::valueAsNumber): 36819 (WebCore::BaseDateAndTimeInputType::setValueAsNumber): 36820 (WebCore::BaseDateAndTimeInputType::serialize): 36821 * html/BaseDateAndTimeInputType.h: 36822 * html/DateInputType.cpp: 36823 (WebCore::DateInputType::setMillisecondToDateComponents): 36824 * html/DateInputType.h: 36825 * html/DateTimeInputType.cpp: 36826 (WebCore::DateTimeInputType::setMillisecondToDateComponents): 36827 * html/DateTimeInputType.h: 36828 * html/DateTimeLocalInputType.cpp: 36829 (WebCore::DateTimeLocalInputType::valueAsDate): 36830 (WebCore::DateTimeLocalInputType::setValueAsDate): 36831 (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents): 36832 * html/DateTimeLocalInputType.h: 36833 * html/HTMLInputElement.cpp: 36834 (WebCore::HTMLInputElement::valueAsDate): 36835 (WebCore::HTMLInputElement::setValueAsDate): 36836 (WebCore::HTMLInputElement::valueAsNumber): 36837 (WebCore::HTMLInputElement::setValueAsNumber): 36838 (WebCore::HTMLInputElement::stepUpFromRenderer): 36839 * html/HTMLInputElement.h: 36840 * html/InputType.cpp: 36841 (WebCore::InputType::valueAsDate): 36842 (WebCore::InputType::setValueAsDate): 36843 (WebCore::InputType::valueAsNumber): 36844 (WebCore::InputType::setValueAsNumber): 36845 (WebCore::InputType::serialize): 36846 * html/InputType.h: 36847 * html/MonthInputType.cpp: 36848 (WebCore::MonthInputType::valueAsDate): 36849 (WebCore::MonthInputType::setValueAsDate): 36850 (WebCore::MonthInputType::setMillisecondToDateComponents): 36851 * html/MonthInputType.h: 36852 * html/NumberInputType.cpp: 36853 (WebCore::NumberInputType::valueAsNumber): 36854 (WebCore::NumberInputType::setValueAsNumber): 36855 (WebCore::NumberInputType::serialize): 36856 * html/NumberInputType.h: 36857 * html/RangeInputType.cpp: 36858 (WebCore::RangeInputType::valueAsNumber): 36859 (WebCore::RangeInputType::setValueAsNumber): 36860 (WebCore::RangeInputType::serialize): 36861 * html/RangeInputType.h: 36862 * html/TimeInputType.cpp: 36863 (WebCore::TimeInputType::setMillisecondToDateComponents): 36864 * html/TimeInputType.h: 36865 * html/WeekInputType.cpp: 36866 (WebCore::WeekInputType::setMillisecondToDateComponents): 36867 * html/WeekInputType.h: 36868 36869 2010-10-07 No'am Rosenthal <noam.rosenthal (a] nokia.com> 36870 36871 Reviewed by Kenneth Rohde Christiansen. 36872 36873 [Texmap] [Qt] Texture mapper initial implementation 36874 Texture Mapper is an implementation of accelerated compositing that doesn't require a 36875 platform specific scenegraph library like CA or QGraphicsView. The idea is that with 36876 time this would replace GraphicsLayerQt, and could serve as an implementation for other 36877 platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk, 36878 and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches 36879 an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt. 36880 36881 This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer. 36882 36883 * platform/graphics/qt/TextureMapperQt.cpp: Added. 36884 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added. 36885 * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added. 36886 * platform/graphics/texmap/TextureMapper.h: Added. 36887 * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added. 36888 36889 2010-10-07 Antonio Gomes <agomes (a] rim.com> 36890 36891 Reviewed by Simon Fraser. 36892 36893 [Mac] [DRT] implement setSpatialNavigationEnabled 36894 https://bugs.webkit.org/show_bug.cgi?id=47291 36895 36896 Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in 36897 so it can be used from WebKit/mac. 36898 36899 * WebCore.exp.in: 36900 36901 2010-10-07 Eric Uhrhane <ericu (a] chromium.org> 36902 36903 Reviewed by Jian Li 36904 36905 [V8] Add FileWriter to active DOM map 36906 https://bugs.webkit.org/show_bug.cgi?id=47380 36907 36908 It's an ActiveDOMObject; it needs to be in the map. 36909 36910 * bindings/scripts/CodeGeneratorV8.pm: 36911 36912 2010-10-07 Nico Weber <thakis (a] chromium.org> 36913 36914 Reviewed by James Robinson. 36915 36916 [chromium] Make sure to update the current graphics context when calling out to AppKit. 36917 https://bugs.webkit.org/show_bug.cgi?id=47387 36918 36919 This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is 36920 now no longer necessary. 36921 36922 Should be covered by existing tests. The checkbox at 36923 http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should 36924 now show up correctly. 36925 36926 * platform/chromium/ThemeChromiumMac.mm: 36927 (WebCore::paintCheckbox): 36928 (WebCore::paintRadio): 36929 Create current context. 36930 * platform/graphics/chromium/ContentLayerChromium.cpp: 36931 (WebCore::ContentLayerChromium::updateContents): 36932 Remove LocalCurrentContext, it's now no longer necessary. 36933 36934 2010-10-07 Cris Neckar <cdn (a] chromium.org> 36935 36936 Reviewed by Adam Barth. 36937 36938 Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach(). 36939 https://bugs.webkit.org/show_bug.cgi?id=46921 36940 36941 Test: fast/html/object-image-nested-fallback.html 36942 36943 * html/HTMLObjectElement.cpp: 36944 (WebCore::HTMLObjectElement::renderFallbackContent): 36945 36946 2010-10-07 Rafael Antognolli <antognolli (a] profusion.mobi> 36947 36948 Reviewed by Kenneth Rohde Christiansen. 36949 36950 [EFL] Fix shared timers on EFL port - make them thread safe. 36951 https://bugs.webkit.org/show_bug.cgi?id=47383 36952 36953 Using ecore_timer_add to create a timer from a thread that is 36954 not the main thread isn't safe. Now we add a pipe that is used 36955 to request a timer to be added in the main thread. 36956 36957 In order to reduce some delay on timers that are added with a 36958 very small interval, the timer callback is called immediately 36959 if the interval is smaller than the mainloop frame time. 36960 36961 No new features, so no tests added. 36962 36963 * platform/efl/SharedTimerEfl.cpp: 36964 (WebCore::setSharedTimerFiredFunction): 36965 (WebCore::timerEvent): 36966 (WebCore::processTimers): 36967 (WebCore::pipeHandlerCb): 36968 (WebCore::stopSharedTimer): 36969 (WebCore::addNewTimer): 36970 (WebCore::setSharedTimerFireTime): 36971 36972 2010-10-07 James Kozianski <koz (a] chromium.org> 36973 36974 Reviewed by Adam Barth. 36975 36976 getPropertyValue('border') is incorrect after border-top-width is set 36977 https://bugs.webkit.org/show_bug.cgi?id=45949 36978 36979 Test: fast/dom/css-shorthand-common-value.html 36980 36981 CSSMutableStyleDeclaration::getCommonValue() was ignoring values from 36982 properties that were implicitly set, which led to erroneous results 36983 from getPropertyValue(). 36984 36985 * css/CSSMutableStyleDeclaration.cpp: 36986 (WebCore::CSSMutableStyleDeclaration::getCommonValue): 36987 36988 2010-10-07 Ryosuke Niwa <rniwa (a] webkit.org> 36989 36990 Reviewed by Tony Chang. 36991 36992 REGRESSION: Indenting pre duplicates content 36993 https://bugs.webkit.org/show_bug.cgi?id=47233 36994 36995 The bug was caused by our not splitting text nodes properly. 36996 36997 In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded 36998 to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions 36999 for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph, 37000 start, and end to work-around moveParagraphWithClones's removing a line feed. 37001 37002 Tests: editing/execCommand/indent-pre-list.html 37003 editing/execCommand/indent-pre-paragraphs.html 37004 37005 * editing/ApplyBlockElementCommand.cpp: 37006 (WebCore::ApplyBlockElementCommand::formatSelection): See above. 37007 (WebCore::isNewLineAtPosition): 37008 (WebCore::renderStyleOfEnclosingTextNode): Added. 37009 (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added. 37010 (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added. 37011 * editing/ApplyBlockElementCommand.h: 37012 * editing/FormatBlockCommand.cpp: 37013 (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition. 37014 * editing/FormatBlockCommand.h: 37015 * editing/IndentOutdentCommand.cpp: 37016 (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto. 37017 (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto. 37018 (WebCore::IndentOutdentCommand::formatRange): Ditto. 37019 * editing/IndentOutdentCommand.h: 37020 37021 2010-10-07 Jian Li <jianli (a] chromium.org> 37022 37023 Reviewed by Adam Barth. 37024 37025 Support generating a FormData object based on the data in an existing <form>. 37026 https://bugs.webkit.org/show_bug.cgi?id=45929 37027 37028 Test: http/tests/local/formdata/send-form-data-constructed-from-form.html 37029 37030 * bindings/js/JSDOMFormDataCustom.cpp: 37031 (WebCore::toHTMLFormElement): 37032 (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData): 37033 * bindings/v8/custom/V8DOMFormDataCustom.cpp: 37034 (WebCore::V8DOMFormData::constructorCallback): 37035 * html/DOMFormData.cpp: 37036 (WebCore::DOMFormData::DOMFormData): 37037 * html/DOMFormData.h: 37038 (WebCore::DOMFormData::create): 37039 * html/DOMFormData.idl: 37040 37041 2010-10-07 Abhishek Arya <inferno (a] chromium.org> 37042 37043 Reviewed by Dave Hyatt. 37044 37045 Set the m_selectedChildren flag on the root inline box if one of the leaf 37046 inline box from the bidi runs walk has a selection state. Remove the flag 37047 setting logic from addToLine, since line boxes created in createLinesBoxes 37048 should not be propagating selection state to root inline box. 37049 https://bugs.webkit.org/show_bug.cgi?id=47201 37050 37051 Test: editing/selection/root-inlinebox-selected-children-crash.html 37052 37053 * rendering/InlineFlowBox.cpp: 37054 (WebCore::InlineFlowBox::addToLine): 37055 * rendering/RenderBlockLineLayout.cpp: 37056 (WebCore::RenderBlock::constructLine): 37057 37058 2010-10-07 Benjamin Otte <otte (a] gnome.org> 37059 37060 Reviewed by Martin Robinson. 37061 37062 [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins 37063 https://bugs.webkit.org/show_bug.cgi?id=47361 37064 37065 Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead 37066 of directly with X11. This should work fine with GDK double-buffering, but 37067 if we ever disable it, we'll need to verify that this is still functioning 37068 properly. 37069 37070 * plugins/gtk/PluginViewGtk.cpp: 37071 (WebCore::PluginView::paint): Do a bit of code cleanup. 37072 37073 2010-10-07 Anders Carlsson <andersca (a] apple.com> 37074 37075 Reviewed by Sam Weinig. 37076 37077 Add a WKPageFindClient, hook up WKPageCountStringMatches 37078 https://bugs.webkit.org/show_bug.cgi?id=47373 37079 37080 Export find related symbols needed by WebKit2. 37081 37082 * WebCore.exp.in: 37083 37084 2010-10-07 David Hyatt <hyatt (a] apple.com> 37085 37086 Reviewed by Sam Weinig. 37087 37088 https://bugs.webkit.org/show_bug.cgi?id=47370 37089 37090 Make line box placement in the inline direction writing-mode-aware. Lines now set their y-position instead of x-position 37091 when vertical. 37092 37093 Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in 37094 placeBoxesInInlineDirection can be replaced with the helper. 37095 37096 Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line 37097 boxes. 37098 37099 Vertical lines are still not testable until they can be placed in the block direction. Then the render tree dumps 37100 become meaningful (even if the pixel results look horrible). 37101 37102 * rendering/InlineBox.h: 37103 (WebCore::InlineBox::logicalRight): 37104 * rendering/InlineFlowBox.cpp: 37105 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 37106 * rendering/InlineFlowBox.h: 37107 (WebCore::InlineFlowBox::logicalLeftLayoutOverflow): 37108 (WebCore::InlineFlowBox::logicalRightLayoutOverflow): 37109 (WebCore::InlineFlowBox::logicalLeftVisualOverflow): 37110 (WebCore::InlineFlowBox::logicalRightVisualOverflow): 37111 (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions): 37112 * rendering/RenderBlockLineLayout.cpp: 37113 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 37114 * rendering/style/RenderStyle.cpp: 37115 (WebCore::RenderStyle::getShadowExtent): 37116 (WebCore::RenderStyle::getShadowHorizontalExtent): 37117 (WebCore::RenderStyle::getShadowVerticalExtent): 37118 * rendering/style/RenderStyle.h: 37119 (WebCore::InheritedFlags::getTextShadowExtent): 37120 (WebCore::InheritedFlags::getTextShadowHorizontalExtent): 37121 (WebCore::InheritedFlags::getTextShadowVerticalExtent): 37122 (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent): 37123 (WebCore::InheritedFlags::getBoxShadowExtent): 37124 (WebCore::InheritedFlags::getBoxShadowHorizontalExtent): 37125 (WebCore::InheritedFlags::getBoxShadowVerticalExtent): 37126 (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent): 37127 (WebCore::InheritedFlags::getShadowInlineDirectionExtent): 37128 37129 2010-10-07 Dan Bernstein <mitz (a] apple.com> 37130 37131 Reviewed by Simon Fraser. 37132 37133 <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page 37134 https://bugs.webkit.org/show_bug.cgi?id=47374 37135 37136 In the legacy (paint-time pagination) printing model, when there are overlapping lines, 37137 adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n, 37138 namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1 37139 moved the truncation point up again. 37140 37141 * rendering/RenderLineBoxList.cpp: 37142 (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the 37143 current line extends below the truncation point. 37144 37145 2010-10-07 Simon Fraser <simon.fraser (a] apple.com> 37146 37147 Reviewed by Beth Dakin. 37148 37149 Use isIdentityOrTranslationOrFlipped() in scrollbar code 37150 https://bugs.webkit.org/show_bug.cgi?id=47378 37151 37152 Replace old code that looked at values in the CGAffineTransform 37153 with nicely named method that does the same test. 37154 37155 * platform/mac/ScrollbarThemeMac.mm: 37156 (WebCore::ScrollbarThemeMac::paint): 37157 37158 2010-10-07 Simon Fraser <simon.fraser (a] apple.com> 37159 37160 Reviewed by Beth Dakin. 37161 37162 Edge fringe artifact with transformed, masked elements (including reflections) 37163 https://bugs.webkit.org/show_bug.cgi?id=19179 37164 37165 When drawing the mask images, use a transparency layer if the CTM 37166 has a rotation, scale or skew in it to avoid antialiasing issues at 37167 the edges. 37168 37169 Test: fast/css/transformed-mask.html 37170 37171 * rendering/RenderBox.cpp: 37172 (WebCore::RenderBox::paintMask): Don't bother painting the mask if 37173 painting is disabled, which also avoids an assertion in getCTM(). 37174 (WebCore::RenderBox::paintMaskImages): 37175 37176 2010-10-07 Kwang Yul Seo <skyul (a] company100.net> 37177 37178 Reviewed by Kent Tamura. 37179 37180 [BREWMP] Map non-alphabet key code to Unicode value 37181 https://bugs.webkit.org/show_bug.cgi?id=46002 37182 37183 Non-alphabet key codes are not equal to the unicode values. Add conversion. 37184 37185 * platform/brew/PlatformKeyboardEventBrew.cpp: 37186 (WebCore::singleCharacterString): 37187 37188 2010-10-05 Martin Robinson <mrobinson (a] igalia.com> 37189 37190 Reviewed by Chris Fleizach. 37191 37192 [GTK] The FreeType backend does not respect the FC_EMBOLDEN property 37193 https://bugs.webkit.org/show_bug.cgi?id=46216 37194 37195 Look for the FC_EMBOLDEN property of the FcPattern when constructing 37196 FontPlatformData and use it to enable synthetic bold fonts when necessary. 37197 37198 Test: platform/gtk/fonts/fontconfig-synthetic-bold.html 37199 37200 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 37201 (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property. 37202 37203 2010-10-07 James Simonsen <simonjam (a] chromium.org> 37204 37205 Reviewed by Pavel Feldman. 37206 37207 [Web Timing] Use platform definition of responseEnd 37208 https://bugs.webkit.org/show_bug.cgi?id=46306 37209 37210 No new tests. Used existing webtiming test. 37211 37212 * loader/MainResourceLoader.cpp: 37213 (WebCore::MainResourceLoader::didFinishLoading): 37214 37215 2010-10-05 Martin Robinson <mrobinson (a] igalia.com> 37216 37217 Reviewed by Chris Fleizach. 37218 37219 [Gtk] CSS font-style: italic behavior 37220 https://bugs.webkit.org/show_bug.cgi?id=33299 37221 37222 Properly interpret the FC_MATRIX property from a FontConfig pattern. 37223 FontConfig will use this property when returning fonts which have a 37224 synthetic oblique variant configured in the fonts.conf configuration 37225 file. 37226 37227 Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html 37228 37229 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 37230 (WebCore::FontPlatformData::FontPlatformData): Added a constructor that 37231 takes an existing FontPlatformData and a font size. 37232 (WebCore::FontPlatformData::initializeWithFontFace): Added this helper 37233 intialization method that properly handles the FC_MATRIX property from 37234 the FcPattern. 37235 * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration 37236 to the new constructor and the initializeWithFontFace. 37237 * platform/graphics/cairo/SimpleFontDataCairo.cpp: 37238 (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData 37239 constructor. 37240 37241 2010-10-07 David Hyatt <hyatt (a] apple.com> 37242 37243 Reviewed by Dan Bernstein. 37244 37245 https://bugs.webkit.org/show_bug.cgi?id=47357 37246 37247 Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware. 37248 37249 * rendering/InlineFlowBox.cpp: 37250 (WebCore::InlineFlowBox::computeLogicalBoxHeights): 37251 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 37252 * rendering/RenderBlock.cpp: 37253 (WebCore::RenderBlock::positionNewFloatOnLine): 37254 * rendering/RenderBlockLineLayout.cpp: 37255 (WebCore::getBorderPaddingMargin): 37256 (WebCore::inlineLogicalWidth): 37257 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 37258 (WebCore::inlineFlowRequiresLineBox): 37259 (WebCore::RenderBlock::skipLeadingWhitespace): 37260 (WebCore::RenderBlock::fitBelowFloats): 37261 (WebCore::RenderBlock::findNextLineBreak): 37262 * rendering/RenderBoxModelObject.h: 37263 (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin): 37264 (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding): 37265 37266 2010-10-07 Luiz Agostini <luiz.agostini (a] openbossa.org> 37267 37268 Reviewed by Kenneth Rohde Christiansen. 37269 37270 Fixing viewport meta tag user-scalable handling 37271 https://bugs.webkit.org/show_bug.cgi?id=47330 37272 37273 user-scalable attribute was not considered in viewport meta tag handling. 37274 37275 * dom/ViewportArguments.cpp: 37276 (WebCore::findConfigurationForViewportData): 37277 * dom/ViewportArguments.h: 37278 37279 2010-10-05 Diego Gonzalez <diegohcg (a] webkit.org> 37280 37281 Reviewed by Andreas Kling. 37282 37283 [Qt] Hook up accelerometer data via Qt DeviceMotion 37284 https://bugs.webkit.org/show_bug.cgi?id=47105 37285 37286 Get accelerometer necessary data via Qt mobility library using a 37287 provider class. Enable, also the RotationRate using the current device 37288 orientation provider. 37289 37290 * WebCore.pro: 37291 37292 2010-10-07 Luiz Agostini <luiz.agostini (a] openbossa.org> 37293 37294 Reviewed by Kenneth Rohde Christiansen. 37295 37296 Some viewport meta tag api refactoring 37297 https://bugs.webkit.org/show_bug.cgi?id=47334 37298 37299 WebCore::findConfigurationForViewportData renamed to computeViewportAttributes. 37300 WebCore::ViewportAttributes::layoutViewport renamed to layoutSize. 37301 37302 * dom/ViewportArguments.cpp: 37303 (WebCore::computeViewportAttributes): 37304 * dom/ViewportArguments.h: 37305 37306 2010-10-07 Carlos Garcia Campos <cgarcia (a] igalia.com> 37307 37308 Reviewed by Xan Lopez. 37309 37310 [GTK] Don't use GtkObject 37311 https://bugs.webkit.org/show_bug.cgi?id=47090 37312 37313 GtkObject has been removed in gtk3. 37314 37315 * plugins/gtk/gtk2xtbin.c: 37316 (gtk_xtbin_class_init): 37317 (gtk_xtbin_dispose): 37318 37319 2010-10-07 Pavel Podivilov <podivilov (a] chromium.org> 37320 37321 Reviewed by Pavel Feldman. 37322 37323 Web Inspector: highlight XHR breakpoint when hit. 37324 https://bugs.webkit.org/show_bug.cgi?id=47253 37325 37326 * inspector/InspectorController.cpp: 37327 (WebCore::InspectorController::didCommitLoad): 37328 (WebCore::InspectorController::setNativeBreakpoint): 37329 (WebCore::InspectorController::removeNativeBreakpoint): 37330 (WebCore::InspectorController::findEventListenerBreakpoint): 37331 (WebCore::InspectorController::findXHRBreakpoint): 37332 * inspector/InspectorController.h: 37333 * inspector/InspectorInstrumentation.cpp: 37334 (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl): 37335 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl): 37336 * inspector/front-end/BreakpointManager.js: 37337 (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint): 37338 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint): 37339 (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved): 37340 (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint): 37341 (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled): 37342 (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint): 37343 (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend): 37344 (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend): 37345 (WebInspector.BreakpointManager.prototype.debuggerPaused): 37346 (WebInspector.BreakpointManager.prototype.debuggerResumed): 37347 (WebInspector.NativeBreakpoint): 37348 (WebInspector.NativeBreakpoint.prototype.get enabled): 37349 (WebInspector.NativeBreakpoint.prototype.set enabled): 37350 (WebInspector.NativeBreakpoint.prototype.remove): 37351 * inspector/front-end/BreakpointsSidebarPane.js: 37352 (WebInspector.BreakpointItem): 37353 (WebInspector.BreakpointItem.prototype._breakpointClicked): 37354 (WebInspector.BreakpointItem.prototype._hitStateChanged): 37355 * inspector/front-end/CallStackSidebarPane.js: 37356 (WebInspector.CallStackSidebarPane.prototype.updateStatus): 37357 * inspector/front-end/inspector.css: 37358 (.breakpoint-list .breakpoint-hit): 37359 * inspector/front-end/inspector.js: 37360 (WebInspector.pausedScript): 37361 (WebInspector.resumedScript): 37362 37363 2010-10-07 Carlos Garcia Campos <cgarcia (a] igalia.com> 37364 37365 Reviewed by Xan Lopez. 37366 37367 [GTK] Fix the build for GTK+ 3 37368 https://bugs.webkit.org/show_bug.cgi?id=47249 37369 37370 Use GdkVisual instead of GdkColormap. GdkColormap has been removed 37371 in gtk3. 37372 37373 * plugins/gtk/PluginViewGtk.cpp: 37374 (WebCore::PluginView::platformStart): 37375 * plugins/gtk/gtk2xtbin.c: 37376 (gtk_xtbin_new): 37377 37378 2010-10-07 Carlos Garcia Campos <cgarcia (a] igalia.com> 37379 37380 Reviewed by Xan Lopez. 37381 37382 [GTK] Fix the build for GTK+ 3 37383 https://bugs.webkit.org/show_bug.cgi?id=47249 37384 37385 Do not use GdkDrawable deprecated API. Some methods of GdkDrawable 37386 are deprecated in gtk2 and have been removed in gtk3. Equivalent 37387 API has been added to GdkWindow. 37388 37389 * platform/gtk/GtkVersioning.c: 37390 (getDefaultGDKPointerDevice): 37391 * platform/gtk/GtkVersioning.h: 37392 * platform/gtk/PlatformScreenGtk.cpp: 37393 (WebCore::getVisual): 37394 (WebCore::screenAvailableRect): 37395 37396 2010-10-06 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 37397 37398 Reviewed by Andreas Kling. 37399 37400 [Qt] Disconnect signals before destroying MediaPlayerPrivateQt 37401 37402 https://bugs.webkit.org/show_bug.cgi?id=47073 37403 37404 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 37405 37406 2010-10-07 Alexander Pavlov <apavlov (a] chromium.org> 37407 37408 Unreviewed, release build fix. 37409 37410 * inspector/InspectorStyleSheet.cpp: 37411 (WebCore::InspectorStyleSheetForInlineStyle::setStyleText): 37412 * inspector/InspectorStyleSheet.h: 37413 (WebCore::InspectorStyleSheetForInlineStyle::styleForId): 37414 (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor): 37415 37416 2010-10-07 Pavel Podivilov <podivilov (a] chromium.org> 37417 37418 Unreviewed, build fix. 37419 37420 Build fix for r69283. 37421 37422 * dom/Document.cpp: 37423 (WebCore::Document::inspectorController): 37424 * dom/Document.h: 37425 37426 2010-10-07 Carlos Garcia Campos <cgarcia (a] igalia.com> 37427 37428 Reviewed by Xan Lopez. 37429 37430 [GTK] Fix the build for GTK+ 3 37431 https://bugs.webkit.org/show_bug.cgi?id=47249 37432 37433 Don't use gtk_size_request_get_size(). It has been removed, 37434 gtk_widget_get_preferred_size() should be used instead 37435 37436 * platform/gtk/PopupMenuGtk.cpp: 37437 (WebCore::PopupMenuGtk::show): 37438 37439 2010-10-06 Alexander Pavlov <apavlov (a] chromium.org> 37440 37441 Reviewed by Pavel Feldman. 37442 37443 Web Inspector: Implement handling of CSS operations in InspectorCSSAgent. 37444 Property toggling not implemented yet. The code is not going live. 37445 https://bugs.webkit.org/show_bug.cgi?id=45825 37446 37447 * CMakeLists.txt: 37448 * GNUmakefile.am: 37449 * WebCore.gypi: 37450 * WebCore.pro: 37451 * WebCore.vcproj/WebCore.vcproj: 37452 * WebCore.xcodeproj/project.pbxproj: 37453 * inspector/InspectorCSSAgent.cpp: Added. 37454 (WebCore::InspectorCSSAgent::buildObjectForStyle): 37455 (WebCore::InspectorCSSAgent::parentStyleSheet): 37456 (WebCore::InspectorCSSAgent::asCSSStyleRule): 37457 (WebCore::InspectorCSSAgent::InspectorCSSAgent): 37458 (WebCore::InspectorCSSAgent::~InspectorCSSAgent): 37459 (WebCore::InspectorCSSAgent::reset): 37460 (WebCore::InspectorCSSAgent::getMatchedRulesForNode2): 37461 (WebCore::InspectorCSSAgent::getMatchedPseudoRulesForNode2): 37462 (WebCore::InspectorCSSAgent::getAttributeStylesForNode2): 37463 (WebCore::InspectorCSSAgent::getInlineStyleForNode2): 37464 (WebCore::InspectorCSSAgent::getComputedStyleForNode2): 37465 (WebCore::InspectorCSSAgent::getInheritedStylesForNode2): 37466 (WebCore::InspectorCSSAgent::getAllStyles2): 37467 (WebCore::InspectorCSSAgent::getStyleSheet2): 37468 (WebCore::InspectorCSSAgent::setStyleSheetText2): 37469 (WebCore::InspectorCSSAgent::setStyleText2): 37470 (WebCore::InspectorCSSAgent::toggleProperty2): 37471 (WebCore::InspectorCSSAgent::setRuleSelector2): 37472 (WebCore::InspectorCSSAgent::addRule2): 37473 (WebCore::InspectorCSSAgent::getSupportedCSSProperties): 37474 (WebCore::InspectorCSSAgent::inlineStyleElement): 37475 (WebCore::InspectorCSSAgent::populateObjectWithStyleProperties): 37476 (WebCore::InspectorCSSAgent::shorthandValue): 37477 (WebCore::InspectorCSSAgent::shorthandPriority): 37478 (WebCore::InspectorCSSAgent::longhandProperties): 37479 (WebCore::InspectorCSSAgent::asInspectorStyleSheet): 37480 (WebCore::InspectorCSSAgent::elementForId): 37481 (WebCore::InspectorCSSAgent::bindStyleSheet): 37482 (WebCore::InspectorCSSAgent::viaInspectorStyleSheet): 37483 (WebCore::InspectorCSSAgent::styleSheetForId): 37484 (WebCore::InspectorCSSAgent::detectOrigin): 37485 (WebCore::InspectorCSSAgent::buildArrayForRuleList): 37486 (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles): 37487 (WebCore::InspectorCSSAgent::didRemoveDocument): 37488 (WebCore::InspectorCSSAgent::didRemoveDOMNode): 37489 * inspector/InspectorCSSAgent.h: Added. 37490 (WebCore::InspectorCSSAgent::create): 37491 * inspector/InspectorDOMAgent.cpp: 37492 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 37493 (WebCore::InspectorDOMAgent::setDOMListener): 37494 (WebCore::InspectorDOMAgent::unbind): 37495 (WebCore::InspectorDOMAgent::didRemoveDOMNode): 37496 (WebCore::InspectorDOMAgent::getSupportedCSSProperties): 37497 * inspector/InspectorDOMAgent.h: 37498 (WebCore::InspectorDOMAgent::DOMListener::~DOMListener): 37499 (WebCore::InspectorDOMAgent::documents): 37500 * inspector/InspectorStyleSheet.cpp: Added. 37501 (ParsedStyleSheet::cssStyleSheet): 37502 (ParsedStyleSheet::text): 37503 (ParsedStyleSheet::hasText): 37504 (ParsedStyleSheet::sourceData): 37505 (ParsedStyleSheet::hasSourceData): 37506 (ParsedStyleSheet::ParsedStyleSheet): 37507 (ParsedStyleSheet::setText): 37508 (ParsedStyleSheet::setSourceData): 37509 (ParsedStyleSheet::ruleSourceDataAt): 37510 (WebCore::InspectorStyleSheet::InspectorStyleSheet): 37511 (WebCore::InspectorStyleSheet::~InspectorStyleSheet): 37512 (WebCore::InspectorStyleSheet::setText): 37513 (WebCore::InspectorStyleSheet::setRuleSelector): 37514 (WebCore::InspectorStyleSheet::addRule): 37515 (WebCore::InspectorStyleSheet::ruleForId): 37516 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet): 37517 (WebCore::InspectorStyleSheet::buildObjectForRule): 37518 (WebCore::InspectorStyleSheet::buildObjectForStyle): 37519 (WebCore::InspectorStyleSheet::styleForId): 37520 (WebCore::InspectorStyleSheet::setStyleText): 37521 (WebCore::InspectorStyleSheet::ownerDocument): 37522 (WebCore::InspectorStyleSheet::ruleSourceDataFor): 37523 (WebCore::InspectorStyleSheet::ruleIndexByStyle): 37524 (WebCore::InspectorStyleSheet::ensureParsedDataReady): 37525 (WebCore::InspectorStyleSheet::text): 37526 (WebCore::InspectorStyleSheet::ensureText): 37527 (WebCore::InspectorStyleSheet::ensureSourceData): 37528 (WebCore::InspectorStyleSheet::innerSetStyleSheetText): 37529 (WebCore::InspectorStyleSheet::innerSetStyleText): 37530 (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle): 37531 (WebCore::InspectorStyleSheet::findPageRuleWithStyle): 37532 (WebCore::InspectorStyleSheet::fullRuleId): 37533 (WebCore::InspectorStyleSheet::revalidateStyle): 37534 (WebCore::InspectorStyleSheet::styleSheetText): 37535 (WebCore::InspectorStyleSheet::resourceStyleSheetText): 37536 (WebCore::InspectorStyleSheet::inlineStyleSheetText): 37537 (WebCore::InspectorStyleSheet::buildArrayForRuleList): 37538 (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle): 37539 (WebCore::InspectorStyleSheetForInlineStyle::setStyleText): 37540 (WebCore::InspectorStyleSheetForInlineStyle::ownerDocument): 37541 (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady): 37542 (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle): 37543 (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges): 37544 * inspector/InspectorStyleSheet.h: Added. 37545 (WebCore::InspectorStyleSheet::create): 37546 (WebCore::InspectorStyleSheet::id): 37547 (WebCore::InspectorStyleSheet::pageStyleSheet): 37548 (WebCore::InspectorStyleSheet::canBind): 37549 (WebCore::InspectorStyleSheet::fullRuleOrStyleId): 37550 (WebCore::InspectorStyleSheet::ruleOrStyleId): 37551 (WebCore::InspectorStyleSheet::fullStyleId): 37552 (WebCore::InspectorStyleSheetForInlineStyle::create): 37553 (WebCore::InspectorStyleSheetForInlineStyle::styleForId): 37554 (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor): 37555 (WebCore::InspectorStyleSheetForInlineStyle::ruleIndexByStyle): 37556 * inspector/InspectorUtilities.cpp: Added. 37557 (WebCore::InspectorUtilities::resourceContentForURL): 37558 * inspector/InspectorUtilities.h: Added. 37559 37560 2010-10-05 Pavel Podivilov <podivilov (a] chromium.org> 37561 37562 Reviewed by Pavel Feldman. 37563 37564 Web Inspector: extract Inspector Instrumentation API as a class 37565 https://bugs.webkit.org/show_bug.cgi?id=47173 37566 37567 * bindings/js/JSXMLHttpRequestCustom.cpp: 37568 (WebCore::JSXMLHttpRequest::send): 37569 * bindings/js/ScriptController.cpp: 37570 (WebCore::ScriptController::evaluateInWorld): 37571 * bindings/v8/V8DOMWindowShell.cpp: 37572 * bindings/v8/V8Proxy.cpp: 37573 (WebCore::V8Proxy::evaluate): 37574 (WebCore::V8Proxy::callFunction): 37575 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 37576 (WebCore::V8XMLHttpRequest::sendCallback): 37577 * dom/Document.cpp: 37578 (WebCore::Document::recalcStyle): 37579 * dom/Document.h: 37580 * dom/Node.cpp: 37581 (WebCore::Node::dispatchGenericEvent): 37582 * html/parser/HTMLDocumentParser.cpp: 37583 (WebCore::HTMLDocumentParser::pumpTokenizer): 37584 * html/parser/HTMLDocumentParser.h: 37585 * inspector/InspectorInstrumentation.cpp: 37586 (WebCore::InspectorInstrumentation::hasFrontend): 37587 (WebCore::InspectorInstrumentation::retrieveTimelineAgent): 37588 * inspector/InspectorInstrumentation.h: 37589 (WebCore::InspectorInstrumentation::hasFrontends): 37590 (WebCore::InspectorInstrumentation::inspectorControllerForContext): 37591 (WebCore::InspectorInstrumentation::inspectorControllerForDocument): 37592 (WebCore::InspectorInstrumentation::inspectorControllerForFrame): 37593 (WebCore::InspectorInstrumentation::inspectorControllerForPage): 37594 * inspector/InspectorTimelineAgent.cpp: 37595 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 37596 (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent): 37597 * inspector/InspectorTimelineAgent.h: 37598 * loader/ResourceLoader.cpp: 37599 (WebCore::ResourceLoader::didReceiveResponse): 37600 (WebCore::ResourceLoader::didReceiveData): 37601 * loader/loader.cpp: 37602 (WebCore::Loader::load): 37603 * page/DOMTimer.cpp: 37604 (WebCore::DOMTimer::install): 37605 (WebCore::DOMTimer::removeById): 37606 (WebCore::DOMTimer::fired): 37607 * page/DOMTimer.h: 37608 * page/DOMWindow.cpp: 37609 (WebCore::DOMWindow::dispatchEvent): 37610 * page/DOMWindow.h: 37611 * page/FrameView.cpp: 37612 (WebCore::FrameView::layout): 37613 (WebCore::FrameView::paintContents): 37614 * page/FrameView.h: 37615 * page/Page.cpp: 37616 * page/Page.h: 37617 * rendering/RenderLayerBacking.cpp: 37618 (WebCore::RenderLayerBacking::paintContents): 37619 * xml/XMLHttpRequest.cpp: 37620 (WebCore::XMLHttpRequest::callReadyStateChangeListener): 37621 37622 2010-10-07 Zraly Mike <mike.zraly (a] nokia.com> 37623 37624 Reviewed by Andreas Kling. 37625 37626 Windowless flash plugin is not rendered in Symbian 37627 https://bugs.webkit.org/show_bug.cgi?id=47172 37628 37629 * plugins/symbian/PluginViewSymbian.cpp: 37630 (WebCore::PluginView::platformStart): 37631 Add call to updatePluginWidget() following changes to 37632 platform widget. This is needed to set PluginView's 37633 m_windowRect and m_clipRect members properly after 37634 the proxy widget and its container get created. 37635 37636 2010-10-07 Andreas Kling <kling (a] webkit.org> 37637 37638 Reviewed by Nikolas Zimmermann. 37639 37640 Rename (and move) RenderPath to svg/RenderSVGPath 37641 https://bugs.webkit.org/show_bug.cgi?id=47053 37642 37643 Also renamed RenderObject::isRenderPath() to isSVGPath() 37644 37645 * Android.mk: 37646 * CMakeLists.txt: 37647 * GNUmakefile.am: 37648 * WebCore.gypi: 37649 * WebCore.order: 37650 * WebCore.pro: 37651 * WebCore.vcproj/WebCore.vcproj: 37652 * WebCore.xcodeproj/project.pbxproj: 37653 * rendering/RenderObject.h: 37654 (WebCore::RenderObject::isSVGPath): 37655 * rendering/RenderPath.cpp: Removed. 37656 * rendering/RenderPath.h: Removed. 37657 * rendering/RenderSVGHiddenContainer.cpp: 37658 * rendering/RenderSVGResourceClipper.cpp: 37659 (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): 37660 (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect): 37661 (WebCore::RenderSVGResourceClipper::hitTestClipContent): 37662 * rendering/RenderSVGResourceContainer.cpp: 37663 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): 37664 * rendering/RenderSVGResourceSolidColor.cpp: 37665 (WebCore::RenderSVGResourceSolidColor::postApplyResource): 37666 * rendering/RenderTreeAsText.cpp: 37667 (WebCore::write): 37668 * rendering/SVGRenderSupport.cpp: 37669 (WebCore::SVGRenderSupport::layoutChildren): 37670 * rendering/SVGRenderTreeAsText.cpp: 37671 (WebCore::writeStyle): 37672 (WebCore::operator<<): 37673 (WebCore::write): 37674 * rendering/SVGRenderTreeAsText.h: 37675 * rendering/style/SVGRenderStyle.cpp: 37676 (WebCore::SVGRenderStyle::diff): 37677 * rendering/svg/RenderSVGPath.cpp: Copied from WebCore/rendering/RenderPath.cpp. 37678 (WebCore::RenderSVGPath::RenderSVGPath): 37679 (WebCore::RenderSVGPath::fillContains): 37680 (WebCore::RenderSVGPath::strokeContains): 37681 (WebCore::RenderSVGPath::layout): 37682 (WebCore::RenderSVGPath::fillAndStrokePath): 37683 (WebCore::RenderSVGPath::paint): 37684 (WebCore::RenderSVGPath::addFocusRingRects): 37685 (WebCore::RenderSVGPath::nodeAtFloatPoint): 37686 (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded): 37687 (WebCore::RenderSVGPath::updateCachedBoundaries): 37688 * rendering/svg/RenderSVGPath.h: Copied from WebCore/rendering/RenderPath.h. 37689 (WebCore::RenderSVGPath::isSVGPath): 37690 (WebCore::RenderSVGPath::renderName): 37691 (WebCore::toRenderSVGPath): 37692 * svg/SVGCircleElement.cpp: 37693 (WebCore::SVGCircleElement::svgAttributeChanged): 37694 * svg/SVGEllipseElement.cpp: 37695 (WebCore::SVGEllipseElement::svgAttributeChanged): 37696 * svg/SVGGradientElement.cpp: 37697 * svg/SVGLineElement.cpp: 37698 (WebCore::SVGLineElement::svgAttributeChanged): 37699 * svg/SVGPathElement.cpp: 37700 (WebCore::SVGPathElement::svgAttributeChanged): 37701 * svg/SVGPolyElement.cpp: 37702 (WebCore::SVGPolyElement::svgAttributeChanged): 37703 * svg/SVGRectElement.cpp: 37704 (WebCore::SVGRectElement::svgAttributeChanged): 37705 * svg/SVGStyledLocatableElement.cpp: 37706 * svg/SVGStyledTransformableElement.cpp: 37707 (WebCore::SVGStyledTransformableElement::createRenderer): 37708 37709 2010-10-06 Yury Semikhatsky <yurys (a] chromium.org> 37710 37711 Reviewed by Pavel Feldman. 37712 37713 Web Inspector: clear line highlight when switching current view 37714 https://bugs.webkit.org/show_bug.cgi?id=47262 37715 37716 * inspector/front-end/SourceFrame.js: 37717 (WebInspector.SourceFrame.prototype.clearLineHighlight): 37718 * inspector/front-end/SourceView.js: 37719 (WebInspector.SourceView.prototype.hide): 37720 * inspector/front-end/TextViewer.js: 37721 (WebInspector.TextViewer.prototype.highlightLine): 37722 (WebInspector.TextViewer.prototype.clearLineHighlight): 37723 37724 2010-10-06 Chris Evans <cevans (a] google.com> 37725 37726 Reviewed by David Levin. 37727 37728 https://bugs.webkit.org/show_bug.cgi?id=47313 37729 37730 Fix integer errors with enormous input strings to newline normalization APIs. 37731 37732 * platform/text/LineEnding.cpp: 37733 (WebCore::normalizeLineEndingsToCRLF): return the empty string upon huge input strings. (Behaves similarly to base64Encode now). 37734 (WebCore::normalizeToCROrLF): use the correct type for a string length. 37735 37736 2010-10-06 Kent Tamura <tkent (a] chromium.org> 37737 37738 Unreviewed, build fix. 37739 37740 Windows build fix for r69272. 37741 37742 * html/BaseDateAndTimeInputType.cpp: 37743 (WebCore::BaseDateAndTimeInputType::stepBase): 37744 Use defaultStepBase() instead of defaultStepBase. 37745 * html/InputType.h: 37746 (WebCore::InputType::defaultStepBase): 37747 Make defaultStepBase static function. 37748 * html/NumberInputType.cpp: 37749 (WebCore::NumberInputType::stepBase): 37750 Use defaultStepBase() instead of defaultStepBase. 37751 37752 2010-10-06 Kent Tamura <tkent (a] chromium.org> 37753 37754 Reviewed by Dimitri Glazkov. 37755 37756 Refactor HTMLInputElement: Move range/step related functions 37757 https://bugs.webkit.org/show_bug.cgi?id=47251 37758 37759 Move the content of the following functions: 37760 - rangeUnderflow() 37761 - rangeOverflow() 37762 - minimum() 37763 - maximum() 37764 - stepMismatch() 37765 - stepBase() 37766 37767 getStepParameters() was split into InputType::defaultStep() and 37768 stepScaleFactor(). 37769 37770 * html/BaseDateAndTimeInputType.cpp: 37771 (WebCore::BaseDateAndTimeInputType::rangeUnderflow): 37772 (WebCore::BaseDateAndTimeInputType::rangeOverflow): 37773 (WebCore::BaseDateAndTimeInputType::stepMismatch): 37774 (WebCore::BaseDateAndTimeInputType::stepBase): 37775 * html/BaseDateAndTimeInputType.h: 37776 * html/DateInputType.cpp: 37777 (WebCore::DateInputType::minimum): 37778 (WebCore::DateInputType::maximum): 37779 (WebCore::DateInputType::defaultStep): 37780 (WebCore::DateInputType::stepScaleFactor): 37781 (WebCore::DateInputType::parsedStepValueShouldBeInteger): 37782 * html/DateInputType.h: 37783 * html/DateTimeInputType.cpp: 37784 (WebCore::DateTimeInputType::minimum): 37785 (WebCore::DateTimeInputType::maximum): 37786 (WebCore::DateTimeInputType::defaultStep): 37787 (WebCore::DateTimeInputType::stepScaleFactor): 37788 (WebCore::DateTimeInputType::scaledStepValeuShouldBeInteger): 37789 * html/DateTimeInputType.h: 37790 * html/DateTimeLocalInputType.cpp: 37791 (WebCore::DateTimeLocalInputType::minimum): 37792 (WebCore::DateTimeLocalInputType::maximum): 37793 (WebCore::DateTimeLocalInputType::defaultStep): 37794 (WebCore::DateTimeLocalInputType::stepScaleFactor): 37795 (WebCore::DateTimeLocalInputType::scaledStepValeuShouldBeInteger): 37796 * html/DateTimeLocalInputType.h: 37797 * html/HTMLInputElement.cpp: 37798 (WebCore::HTMLInputElement::rangeUnderflow): 37799 (WebCore::HTMLInputElement::rangeOverflow): 37800 (WebCore::HTMLInputElement::minimum): 37801 (WebCore::HTMLInputElement::maximum): 37802 (WebCore::HTMLInputElement::stepMismatch): 37803 (WebCore::HTMLInputElement::getAllowedValueStep): 37804 (WebCore::HTMLInputElement::applyStep): 37805 (WebCore::HTMLInputElement::handleKeyEventForRange): 37806 (WebCore::HTMLInputElement::stepUpFromRenderer): 37807 * html/HTMLInputElement.h: 37808 * html/InputType.cpp: 37809 (WebCore::InputType::patternMismatch): 37810 (WebCore::InputType::rangeUnderflow): 37811 (WebCore::InputType::rangeOverflow): 37812 (WebCore::InputType::minimum): 37813 (WebCore::InputType::maximum): 37814 (WebCore::InputType::stepMismatch): 37815 (WebCore::InputType::stepBase): 37816 (WebCore::InputType::defaultStep): 37817 (WebCore::InputType::stepScaleFactor): 37818 (WebCore::InputType::parsedStepValueShouldBeInteger): 37819 (WebCore::InputType::scaledStepValeuShouldBeInteger): 37820 * html/InputType.h: 37821 * html/MonthInputType.cpp: 37822 (WebCore::MonthInputType::minimum): 37823 (WebCore::MonthInputType::maximum): 37824 (WebCore::MonthInputType::defaultStep): 37825 (WebCore::MonthInputType::stepScaleFactor): 37826 (WebCore::MonthInputType::parsedStepValueShouldBeInteger): 37827 * html/MonthInputType.h: 37828 * html/NumberInputType.cpp: 37829 (WebCore::NumberInputType::rangeUnderflow): 37830 (WebCore::NumberInputType::rangeOverflow): 37831 (WebCore::NumberInputType::minimum): 37832 (WebCore::NumberInputType::maximum): 37833 (WebCore::NumberInputType::stepMismatch): 37834 (WebCore::NumberInputType::stepBase): 37835 (WebCore::NumberInputType::defaultStep): 37836 (WebCore::NumberInputType::stepScaleFactor): 37837 * html/NumberInputType.h: 37838 * html/RangeInputType.cpp: 37839 (WebCore::RangeInputType::rangeUnderflow): 37840 (WebCore::RangeInputType::rangeOverflow): 37841 (WebCore::RangeInputType::minimum): 37842 (WebCore::RangeInputType::maximum): 37843 (WebCore::RangeInputType::stepMismatch): 37844 (WebCore::RangeInputType::stepBase): 37845 (WebCore::RangeInputType::defaultStep): 37846 (WebCore::RangeInputType::stepScaleFactor): 37847 * html/RangeInputType.h: 37848 * html/TimeInputType.cpp: 37849 (WebCore::TimeInputType::minimum): 37850 (WebCore::TimeInputType::maximum): 37851 (WebCore::TimeInputType::defaultStep): 37852 (WebCore::TimeInputType::stepScaleFactor): 37853 (WebCore::TimeInputType::scaledStepValeuShouldBeInteger): 37854 * html/TimeInputType.h: 37855 * html/WeekInputType.cpp: 37856 (WebCore::WeekInputType::minimum): 37857 (WebCore::WeekInputType::maximum): 37858 (WebCore::WeekInputType::stepBase): 37859 (WebCore::WeekInputType::defaultStep): 37860 (WebCore::WeekInputType::stepScaleFactor): 37861 (WebCore::WeekInputType::parsedStepValueShouldBeInteger): 37862 * html/WeekInputType.h: 37863 37864 2010-10-06 Simon Fraser <simon.fraser (a] apple.com> 37865 37866 Reviewed by Dan Bernstein, Darin Adler. 37867 37868 :first-letter should apply to "punctuation" after the first letter 37869 https://bugs.webkit.org/show_bug.cgi?id=45986 37870 37871 Follow the CSS 2.1 spec by allow certain kinds of punctuation before and after 37872 the :first-letter character. 37873 37874 The spec does not describe whitespace behavior, and browsers are inconsistent. 37875 This patch allows whitespace (including non-breaking spaces) before and after the 37876 leading punctuation, and before the trailing punctuation. 37877 37878 Test: fast/css/first-letter-punctuation.html 37879 37880 * rendering/RenderBlock.cpp: 37881 (WebCore::isPunctuationForFirstLetter): 37882 (WebCore::shouldSkipForFirstLetter): 37883 (WebCore::RenderBlock::updateFirstLetter): 37884 37885 2010-10-06 Sanjeev Radhakrishnan <sanjeevr (a] chromium.org> 37886 37887 Reviewed by Darin Fisher. 37888 37889 Released the pluginNode in PluginDocument::detach() and prevents a memory leak. 37890 https://bugs.webkit.org/show_bug.cgi?id=47129 37891 37892 * html/PluginDocument.cpp: 37893 (WebCore::PluginDocument::detach): 37894 * html/PluginDocument.h: 37895 37896 2010-10-06 Vincent Scheib <scheib (a] chromium.org> 37897 37898 Reviewed by Kenneth Russell. 37899 37900 [chromium] Thumbnail generation asserts on zero alpha values. 37901 https://bugs.webkit.org/show_bug.cgi?id=47292 37902 37903 Test: Tested manually by running debug mode, and analyzing in PIX. 37904 37905 * platform/graphics/chromium/LayerRendererChromium.cpp: 37906 (WebCore::LayerRendererChromium::drawLayers): 37907 37908 2010-10-06 Kinuko Yasuda <kinuko (a] chromium.org> 37909 37910 Unreviewed, trying to fix chromium Windows build. 37911 37912 Explicitly give the parameter value that has a default parameter value. 37913 37914 * page/DOMWindow.cpp: 37915 (WebCore::DOMWindow::requestFileSystem): 37916 * workers/WorkerContext.cpp: 37917 (WebCore::WorkerContext::requestFileSystem): 37918 37919 2010-10-06 Darin Adler <darin (a] apple.com> 37920 37921 Try to fix Windows build. 37922 37923 * platform/graphics/cg/ColorCG.cpp: 37924 (WebCore::cachedCGColor): Put in braces to make the Windows compiler 37925 happy with this file. 37926 37927 * platform/graphics/cg/ImageCG.cpp: Added include of RetainPtr.h. 37928 37929 2010-10-06 Darin Adler <darin (a] apple.com> 37930 37931 Reviewed by Alexey Proskuryakov. 37932 37933 Cache CGColor as we do NSColor 37934 https://bugs.webkit.org/show_bug.cgi?id=47226 37935 37936 This fixes performance problems on certain web pages that use 37937 multiple colors. Once in the past we were using NSColor. Now that 37938 we are using CGColor, we need the same sort of caching that we have 37939 for NSColor. 37940 37941 One example: <http://results.active.com/uploads/html/100759.html>. 37942 37943 * WebCore.xcodeproj/project.pbxproj: Add GraphicsContextCG.h. 37944 37945 * platform/graphics/Color.h: Replace createCGColor with cachedCGColor. 37946 37947 * platform/graphics/cg/ColorCG.cpp: 37948 (WebCore::cachedCGColorSpace): Added. 37949 (WebCore::leakCGColor): Added. 37950 (WebCore::cachedCGColor): Added. 37951 37952 * platform/graphics/cg/GraphicsContextCG.cpp: 37953 (WebCore::setCGFillColor): Use cachedCGColor. 37954 (WebCore::setCGStrokeColor): Ditto. 37955 (WebCore::GraphicsContext::fillRect): Ditto. 37956 (WebCore::GraphicsContext::setPlatformShadow): Ditto. 37957 37958 * platform/graphics/cg/GraphicsContextCG.h: Added. 37959 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: 37960 Moved the color space functions here. 37961 37962 * platform/graphics/cg/ImageCG.cpp: Tweaked headers and formatting. 37963 37964 * platform/graphics/mac/ColorMac.mm: Removed the createCGColor 37965 function. 37966 37967 * platform/graphics/mac/GraphicsContextMac.mm: 37968 (WebCore::drawFocusRingToContext): Removed innappropriate use of 37969 RetainPtr for the arguments to this function. 37970 (WebCore::GraphicsContext::drawFocusRing): Use cachedCGColor. 37971 37972 * platform/graphics/mac/GraphicsLayerCA.mm: 37973 (WebCore::setLayerBorderColor): Use cachedCGColor. 37974 (WebCore::setLayerBackgroundColor): Ditto. 37975 * platform/graphics/win/GraphicsContextCGWin.cpp: 37976 (WebCore::GraphicsContext::drawFocusRing): Ditto. 37977 * platform/graphics/win/GraphicsLayerCACF.cpp: 37978 (WebCore::setLayerBorderColor): Ditto. 37979 (WebCore::setLayerBackgroundColor): Ditto. 37980 37981 * platform/graphics/win/WKCACFLayerRenderer.cpp: 37982 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Use 37983 CGColorCreateGenericRGB for color used only for debugging. 37984 * platform/graphics/win/WebTiledLayer.cpp: 37985 (WebCore::WebTiledLayer::addTile): Ditto. 37986 37987 2010-10-06 Peter Kasting <pkasting (a] google.com> 37988 37989 Reviewed by James Robinson 37990 37991 ScrollViews without scrollbars should not eat scroll events 37992 https://bugs.webkit.org/show_bug.cgi?id=47036 37993 37994 * platform/ScrollView.cpp: 37995 (WebCore::ScrollView::wheelEvent): 37996 37997 2010-10-06 Daniel Bates <dbates (a] rim.com> 37998 37999 Reviewed by Darin Adler. 38000 38001 ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet 38002 when <frameset> has CSS content property 38003 https://bugs.webkit.org/show_bug.cgi?id=47314 38004 38005 Fixes an issue where sending a mouse event to an HTML Frameset Element that 38006 whose content was replaced via the CSS content property causes an assertion 38007 failure. 38008 38009 By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as 38010 to support resizing a frame within the set. When a <frameset> specifies an 38011 image in its CSS content property we create a generic render object (RenderObject) 38012 for the frame set instead of a RenderFrameSet object. The event handler code 38013 in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer 38014 to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement 38015 must check that its renderer is of type RenderFrameSet before casting to this type. 38016 38017 Test: fast/frames/crash-frameset-CSS-content-property.html 38018 38019 * html/HTMLFrameSetElement.cpp: 38020 (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is 38021 of type RenderFrameSet before casting it as such. 38022 38023 2010-10-06 Albert J. Wong <ajwong (a] chromium.org> 38024 38025 Reviewed by Andreas Kling. 38026 38027 r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false. 38028 https://bugs.webkit.org/show_bug.cgi?id=47315 38029 38030 Compile fix. No tests. 38031 38032 * platform/graphics/filters/FETile.cpp: 38033 (WebCore::FETile::apply): 38034 38035 2010-10-06 Kinuko Yasuda <kinuko (a] chromium.org> 38036 38037 Unreviewed, fixing screwed up ChangeLogs. 38038 38039 2010-10-06 Kinuko Yasuda <kinuko (a] chromium.org> 38040 38041 Reviewed by David Levin. 38042 38043 Add FileSystemSync implementation for Worker 38044 https://bugs.webkit.org/show_bug.cgi?id=47044 38045 38046 Tests: fast/filesystem/async-operations.html 38047 fast/filesystem/workers/async-operations.html 38048 fast/filesystem/workers/sync-operations.html 38049 38050 * GNUmakefile.am: 38051 * WebCore.gypi: 38052 * WebCore.pro: 38053 * WebCore.vcproj/WebCore.vcproj: 38054 * WebCore.xcodeproj/project.pbxproj: 38055 * bindings/generic/RuntimeEnabledFeatures.h: Removed 38056 requestFileSystemEnabled() as I changed the idl/generator to 38057 use fileSystemEnabled for all the FileSystem related features. 38058 * fileapi/DOMFileSystem.cpp: 38059 * fileapi/DOMFileSystem.h: 38060 * fileapi/DOMFileSystemBase.cpp: 38061 (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem. 38062 (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem. 38063 (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem. 38064 (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem. 38065 (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem. 38066 (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem. 38067 (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem. 38068 (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem. 38069 (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem. 38070 * fileapi/DOMFileSystemBase.h: 38071 * fileapi/DOMFileSystemSync.h: 38072 * fileapi/DirectoryEntry.cpp: 38073 (WebCore::DirectoryEntry::DirectoryEntry): Updated to call 38074 DOMFileSystemBase's method instead of DOMFileSystem's one. 38075 (WebCore::DirectoryEntry::getFile): Ditto. 38076 (WebCore::DirectoryEntry::getDirectory): Ditto. 38077 * fileapi/DirectoryEntry.h: 38078 * fileapi/DirectoryEntrySync.cpp: 38079 (WebCore::DirectoryEntrySync::getFile): Implemented. 38080 (WebCore::DirectoryEntrySync::getDirectory): Implemented. 38081 * fileapi/DirectoryReader.h: 38082 * fileapi/DirectoryReaderSync.cpp: 38083 (WebCore::DirectoryReaderSync::readEntries): Implemented. 38084 * fileapi/Entry.cpp: 38085 (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method. 38086 (WebCore::Entry::getMetadata): Ditto. 38087 (WebCore::Entry::moveTo): Ditto. 38088 (WebCore::Entry::copyTo): Ditto. 38089 (WebCore::Entry::remove): Ditto. 38090 (WebCore::Entry::getParent): Ditto. 38091 * fileapi/Entry.h: 38092 * fileapi/Entry.idl: 38093 * fileapi/EntryArraySync.cpp: 38094 (WebCore::EntryArraySync::create): Added. 38095 * fileapi/EntryArraySync.h: 38096 * fileapi/EntryBase.h: 38097 (WebCore::EntryBase::filesystem): Added. 38098 * fileapi/EntrySync.cpp: 38099 (WebCore::EntrySync::create): Implemented. 38100 (WebCore::EntrySync::getMetadata): Implemented. 38101 (WebCore::EntrySync::moveTo): Implemented. 38102 (WebCore::EntrySync::copyTo): Implemented. 38103 (WebCore::EntrySync::remove): Implemented. 38104 * fileapi/EntrySync.h: 38105 * fileapi/FileEntry.cpp: 38106 * fileapi/FileEntry.h: 38107 * fileapi/FileSystemCallbacks.cpp: 38108 (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase 38109 instead of DOMFileSystem. 38110 (WebCore::EntryCallbacks::EntryCallbacks): Ditto. 38111 (WebCore::EntriesCallbacks::create): Ditto. 38112 (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto. 38113 * fileapi/FileSystemCallbacks.h: 38114 * fileapi/LocalFileSystem.cpp: 38115 (WebCore::LocalFileSystem::requestFileSystem): Added synchronous 38116 parameter. 38117 * fileapi/LocalFileSystem.h: 38118 * fileapi/Metadata.h: 38119 * fileapi/SyncCallbackHelper.h: Added. This defines a helper template 38120 for synchronous implementation. 38121 * page/DOMWindow.idl: 38122 * platform/AsyncFileSystem.h: 38123 (WebCore::AsyncFileSystem::waitCompletion): Added. 38124 * workers/WorkerContext.cpp: 38125 (WebCore::WorkerContext::requestFileSystemSync): Added. 38126 * workers/WorkerContext.h: 38127 * workers/WorkerContext.idl: 38128 38129 2010-10-06 Andrei Popescu <andreip (a] google.com> 38130 38131 Reviewed by Jeremy Orlow. 38132 38133 IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts. 38134 https://bugs.webkit.org/show_bug.cgi?id=47245 38135 38136 Recover metadata properly by adding abort tasks that 38137 are run when a transaction aborts. 38138 38139 * storage/IDBDatabase.cpp: 38140 (WebCore::IDBDatabase::createObjectStore): 38141 (WebCore::IDBDatabase::removeObjectStore): 38142 * storage/IDBDatabaseBackendImpl.cpp: 38143 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 38144 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 38145 (WebCore::IDBDatabaseBackendImpl::setVersion): 38146 (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap): 38147 (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap): 38148 (WebCore::IDBDatabaseBackendImpl::resetVersion): 38149 * storage/IDBDatabaseBackendImpl.h: 38150 * storage/IDBObjectStoreBackendImpl.cpp: 38151 (WebCore::IDBObjectStoreBackendImpl::createIndex): 38152 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 38153 (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap): 38154 (WebCore::IDBObjectStoreBackendImpl::addIndexToMap): 38155 * storage/IDBObjectStoreBackendImpl.h: 38156 * storage/IDBTransactionBackendImpl.cpp: 38157 (WebCore::IDBTransactionBackendImpl::scheduleTask): 38158 (WebCore::IDBTransactionBackendImpl::abort): 38159 * storage/IDBTransactionBackendImpl.h: 38160 * storage/IDBTransactionBackendInterface.h: 38161 * storage/IDBTransactionCoordinator.h: 38162 38163 2010-10-06 David Hyatt <hyatt (a] apple.com> 38164 38165 Reviewed by Dan Bernstein. 38166 38167 https://bugs.webkit.org/show_bug.cgi?id=47306 38168 38169 Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware. 38170 38171 * rendering/RenderBlockLineLayout.cpp: 38172 (WebCore::RenderBlock::determineStartPosition): 38173 (WebCore::RenderBlock::determineEndPosition): 38174 (WebCore::RenderBlock::matchedEndLine): 38175 38176 22010-10-06 Chris Fleizach <cfleizach (a] apple.com> 38177 38178 Reviewed by Beth Dakin. 38179 38180 REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks. 38181 https://bugs.webkit.org/show_bug.cgi?id=45832 38182 38183 Test: fast/events/mouse-focus-imagemap.html 38184 38185 * html/HTMLAreaElement.cpp: 38186 (WebCore::HTMLAreaElement::isKeyboardFocusable): 38187 (WebCore::HTMLAreaElement::isMouseFocusable): 38188 (WebCore::HTMLAreaElement::isFocusable): 38189 (WebCore::HTMLAreaElement::updateFocusAppearance): 38190 * html/HTMLAreaElement.h: 38191 38192 010-10-06 David Hyatt <hyatt (a] apple.com> 38193 38194 Reviewed by Dan Bernstein. 38195 38196 https://bugs.webkit.org/show_bug.cgi?id=47303 38197 38198 Convert layoutInlineChildren to be block-flow-aware. None of the functions it calls are patched yet. 38199 38200 * rendering/RenderBlock.cpp: 38201 (WebCore::RenderBlock::layoutBlock): 38202 * rendering/RenderBlock.h: 38203 (WebCore::RenderBlock::forceLayoutInlineChildren): 38204 * rendering/RenderBlockLineLayout.cpp: 38205 (WebCore::RenderBlock::layoutInlineChildren): 38206 (WebCore::RenderBlock::beforeSideVisibleOverflowForLine): 38207 (WebCore::RenderBlock::afterSideVisibleOverflowForLine): 38208 (WebCore::RenderBlock::beforeSideLayoutOverflowForLine): 38209 (WebCore::RenderBlock::afterSideLayoutOverflowForLine): 38210 * rendering/RenderBox.h: 38211 (WebCore::RenderBox::logicalLeftLayoutOverflow): 38212 (WebCore::RenderBox::logicalRightLayoutOverflow): 38213 (WebCore::RenderBox::logicalLeftVisualOverflow): 38214 (WebCore::RenderBox::logicalRightVisualOverflow): 38215 38216 2010-10-06 David Hyatt <hyatt (a] apple.com> 38217 38218 Reviewed by Dan Bernstein. 38219 38220 https://bugs.webkit.org/show_bug.cgi?id=47298 38221 38222 Rename blockHeight to blockLogicalHeight. 38223 38224 * rendering/RenderBlock.cpp: 38225 (WebCore::RenderBlock::markLinesDirtyInBlockRange): 38226 * rendering/RenderBlockLineLayout.cpp: 38227 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): 38228 (WebCore::RenderBlock::layoutInlineChildren): 38229 (WebCore::RenderBlock::determineStartPosition): 38230 (WebCore::RenderBlock::determineEndPosition): 38231 (WebCore::RenderBlock::matchedEndLine): 38232 * rendering/RootInlineBox.cpp: 38233 (WebCore::RootInlineBox::RootInlineBox): 38234 (WebCore::RootInlineBox::adjustPosition): 38235 * rendering/RootInlineBox.h: 38236 (WebCore::RootInlineBox::blockLogicalHeight): 38237 (WebCore::RootInlineBox::setBlockLogicalHeight): 38238 * rendering/svg/SVGRootInlineBox.cpp: 38239 (WebCore::SVGRootInlineBox::layoutRootBox): 38240 38241 2010-10-05 James Robinson <jamesr (a] chromium.org> 38242 38243 Reviewed by Kenneth Russell. 38244 38245 [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia 38246 https://bugs.webkit.org/show_bug.cgi?id=47242 38247 38248 Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData 38249 since that call mutates the software backing store. 38250 38251 Test: fast/canvas/canvas-putImageData.html 38252 38253 * platform/graphics/skia/ImageBufferSkia.cpp: 38254 (WebCore::ImageBuffer::putUnmultipliedImageData): 38255 38256 2010-10-06 Alexey Proskuryakov <ap (a] apple.com> 38257 38258 Reviewed by Brady Eidson. 38259 38260 https://bugs.webkit.org/show_bug.cgi?id=47294 38261 <rdar://problem/8425647>Application cache isn't consulted on redirect 38262 38263 Test: http/tests/appcache/main-resource-redirect.html 38264 38265 * loader/MainResourceLoader.cpp: 38266 (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now 38267 (presumably after a redirect is served by appcache), switch to it. 38268 (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL. 38269 38270 * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest 38271 reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now. 38272 38273 2010-10-06 Alejandro G. Castro <alex (a] igalia.com> 38274 38275 Reviewed by Dirk Schulze. 38276 38277 ContextShadow should not use the blur radius as kernel size of the 38278 box blurs 38279 https://bugs.webkit.org/show_bug.cgi?id=46918 38280 38281 Calculate the size of the kernel in the blur algorithm using the radius instead 38282 of using the blur distance directly. Change the name of the variables to match the 38283 terminology in the spec. 38284 38285 * platform/graphics/ContextShadow.cpp: 38286 (WebCore::ContextShadow::ContextShadow): 38287 (WebCore::ContextShadow::clear): 38288 (WebCore::ContextShadow::blurLayerImage): 38289 (WebCore::ContextShadow::calculateLayerBoundingRect): 38290 * platform/graphics/ContextShadow.h: 38291 38292 2010-10-06 Andras Becsi <abecsi (a] webkit.org> 38293 38294 Reviewed by Kenneth Rohde Christiansen. 38295 38296 [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate 38297 to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests. 38298 https://bugs.webkit.org/show_bug.cgi?id=47284 38299 38300 No new tests needed. 38301 38302 * platform/network/qt/SocketStreamHandlePrivate.h: 38303 * platform/network/qt/SocketStreamHandleQt.cpp: 38304 (WebCore::SocketStreamHandlePrivate::socketSentData): 38305 38306 2010-10-06 David Hyatt <hyatt (a] apple.com> 38307 38308 Reviewed by Dan Bernstein. 38309 38310 https://bugs.webkit.org/show_bug.cgi?id=47285 38311 38312 Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode. 38313 Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow 38314 as appropriate. 38315 38316 * css/CSSComputedStyleDeclaration.cpp: 38317 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 38318 * css/CSSParser.cpp: 38319 (WebCore::CSSParser::parseValue): 38320 * css/CSSPrimitiveValueMappings.h: 38321 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 38322 (WebCore::CSSPrimitiveValue::operator WritingMode): 38323 (WebCore::CSSPrimitiveValue::operator SVGWritingMode): 38324 * css/CSSProperty.cpp: 38325 (WebCore::resolveToPhysicalProperty): 38326 (WebCore::CSSProperty::resolveDirectionAwareProperty): 38327 * css/CSSProperty.h: 38328 * css/CSSPropertyNames.in: 38329 * css/CSSStyleSelector.cpp: 38330 (WebCore::CSSStyleSelector::styleForDocument): 38331 (WebCore::CSSStyleSelector::adjustRenderStyle): 38332 (WebCore::CSSStyleSelector::applyDeclarations): 38333 (WebCore::CSSStyleSelector::applyProperty): 38334 * css/CSSValueKeywords.in: 38335 * rendering/RenderBlock.cpp: 38336 (WebCore::RenderBlock::MarginInfo::MarginInfo): 38337 (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): 38338 (WebCore::RenderBlock::setLogicalLeftForChild): 38339 (WebCore::RenderBlock::setLogicalTopForChild): 38340 (WebCore::RenderBlock::layoutBlockChild): 38341 (WebCore::RenderBlock::insertFloatingObject): 38342 (WebCore::RenderBlock::addOverhangingFloats): 38343 (WebCore::RenderBlock::addIntrudingFloats): 38344 (WebCore::RenderBlock::collapsedMarginBeforeForChild): 38345 (WebCore::RenderBlock::collapsedMarginAfterForChild): 38346 (WebCore::RenderBlock::marginBeforeForChild): 38347 (WebCore::RenderBlock::marginAfterForChild): 38348 (WebCore::RenderBlock::marginStartForChild): 38349 (WebCore::RenderBlock::marginEndForChild): 38350 (WebCore::RenderBlock::setMarginStartForChild): 38351 (WebCore::RenderBlock::setMarginEndForChild): 38352 (WebCore::RenderBlock::setMarginBeforeForChild): 38353 (WebCore::RenderBlock::setMarginAfterForChild): 38354 (WebCore::RenderBlock::marginValuesForChild): 38355 * rendering/RenderBlock.h: 38356 (WebCore::RenderBlock::logicalWidthForChild): 38357 (WebCore::RenderBlock::logicalHeightForChild): 38358 (WebCore::RenderBlock::logicalTopForChild): 38359 (WebCore::RenderBlock::logicalRightOffsetForContent): 38360 (WebCore::RenderBlock::logicalLeftOffsetForContent): 38361 (WebCore::RenderBlock::logicalTopForFloat): 38362 (WebCore::RenderBlock::logicalBottomForFloat): 38363 (WebCore::RenderBlock::logicalLeftForFloat): 38364 (WebCore::RenderBlock::logicalRightForFloat): 38365 (WebCore::RenderBlock::logicalWidthForFloat): 38366 (WebCore::RenderBlock::setLogicalTopForFloat): 38367 (WebCore::RenderBlock::setLogicalLeftForFloat): 38368 (WebCore::RenderBlock::setLogicalHeightForFloat): 38369 (WebCore::RenderBlock::setLogicalWidthForFloat): 38370 * rendering/RenderBox.cpp: 38371 (WebCore::RenderBox::marginBefore): 38372 (WebCore::RenderBox::marginAfter): 38373 (WebCore::RenderBox::marginStart): 38374 (WebCore::RenderBox::marginEnd): 38375 (WebCore::RenderBox::setMarginStart): 38376 (WebCore::RenderBox::setMarginEnd): 38377 (WebCore::RenderBox::setMarginBefore): 38378 (WebCore::RenderBox::setMarginAfter): 38379 (WebCore::RenderBox::styleDidChange): 38380 (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight): 38381 (WebCore::RenderBox::computeLogicalWidth): 38382 (WebCore::RenderBox::computeLogicalHeight): 38383 (WebCore::RenderBox::availableLogicalHeightUsing): 38384 (WebCore::RenderBox::avoidsFloats): 38385 * rendering/RenderBox.h: 38386 (WebCore::RenderBox::logicalLeft): 38387 (WebCore::RenderBox::logicalTop): 38388 (WebCore::RenderBox::logicalWidth): 38389 (WebCore::RenderBox::logicalHeight): 38390 (WebCore::RenderBox::setLogicalLeft): 38391 (WebCore::RenderBox::setLogicalTop): 38392 (WebCore::RenderBox::setLogicalWidth): 38393 (WebCore::RenderBox::setLogicalHeight): 38394 (WebCore::RenderBox::setLogicalLocation): 38395 (WebCore::RenderBox::contentLogicalWidth): 38396 (WebCore::RenderBox::contentLogicalHeight): 38397 (WebCore::RenderBox::stretchesToViewport): 38398 (WebCore::RenderBox::intrinsicLogicalWidth): 38399 (WebCore::RenderBox::intrinsicLogicalHeight): 38400 (WebCore::RenderBox::availableWidth): 38401 (WebCore::RenderBox::availableHeight): 38402 (WebCore::RenderBox::scrollbarLogicalHeight): 38403 (WebCore::RenderBox::isWritingModeRoot): 38404 * rendering/RenderFieldset.cpp: 38405 (WebCore::RenderFieldset::paintBoxDecorations): 38406 (WebCore::RenderFieldset::paintMask): 38407 * rendering/RenderImage.cpp: 38408 (WebCore::RenderImage::computeReplacedLogicalWidth): 38409 (WebCore::RenderImage::computeReplacedLogicalHeight): 38410 * rendering/RenderInline.cpp: 38411 (WebCore::RenderInline::marginLeft): 38412 (WebCore::RenderInline::marginRight): 38413 (WebCore::RenderInline::marginTop): 38414 (WebCore::RenderInline::marginBottom): 38415 * rendering/RenderTableCell.cpp: 38416 (WebCore::RenderTableCell::paddingTop): 38417 (WebCore::RenderTableCell::paddingBottom): 38418 (WebCore::RenderTableCell::paddingLeft): 38419 (WebCore::RenderTableCell::paddingRight): 38420 * rendering/RenderView.h: 38421 (WebCore::RenderView::viewLogicalWidth): 38422 (WebCore::RenderView::viewLogicalHeight): 38423 * rendering/RootInlineBox.cpp: 38424 (WebCore::RootInlineBox::RootInlineBox): 38425 * rendering/style/RenderStyle.cpp: 38426 (WebCore::RenderStyle::diff): 38427 (WebCore::RenderStyle::logicalWidth): 38428 (WebCore::RenderStyle::logicalHeight): 38429 (WebCore::RenderStyle::logicalMinWidth): 38430 (WebCore::RenderStyle::logicalMaxWidth): 38431 (WebCore::RenderStyle::logicalMinHeight): 38432 (WebCore::RenderStyle::logicalMaxHeight): 38433 (WebCore::RenderStyle::borderBeforeWidth): 38434 (WebCore::RenderStyle::borderAfterWidth): 38435 (WebCore::RenderStyle::borderStartWidth): 38436 (WebCore::RenderStyle::borderEndWidth): 38437 (WebCore::RenderStyle::marginBefore): 38438 (WebCore::RenderStyle::marginAfter): 38439 (WebCore::RenderStyle::marginBeforeUsing): 38440 (WebCore::RenderStyle::marginAfterUsing): 38441 (WebCore::RenderStyle::marginStart): 38442 (WebCore::RenderStyle::marginEnd): 38443 (WebCore::RenderStyle::marginStartUsing): 38444 (WebCore::RenderStyle::marginEndUsing): 38445 (WebCore::RenderStyle::paddingBefore): 38446 (WebCore::RenderStyle::paddingAfter): 38447 (WebCore::RenderStyle::paddingStart): 38448 (WebCore::RenderStyle::paddingEnd): 38449 * rendering/style/RenderStyle.h: 38450 (WebCore::InheritedFlags::setBitDefaults): 38451 (WebCore::InheritedFlags::writingMode): 38452 (WebCore::InheritedFlags::isHorizontalWritingMode): 38453 (WebCore::InheritedFlags::setWritingMode): 38454 (WebCore::InheritedFlags::initialWritingMode): 38455 * rendering/style/RenderStyleConstants.h: 38456 * rendering/style/SVGRenderStyle.h: 38457 (WebCore::SVGRenderStyle::initialWritingMode): 38458 (WebCore::SVGRenderStyle::setWritingMode): 38459 (WebCore::SVGRenderStyle::writingMode): 38460 * rendering/style/SVGRenderStyleDefs.h: 38461 38462 2010-10-06 Sheriff Bot <webkit.review.bot (a] gmail.com> 38463 38464 Unreviewed, rolling out r69201. 38465 http://trac.webkit.org/changeset/69201 38466 https://bugs.webkit.org/show_bug.cgi?id=47279 38467 38468 This change broke the WebKitGTK+ build for GTK+ 2.0. 38469 (Requested by mrobinson on #webkit). 38470 38471 * platform/gtk/GtkVersioning.c: 38472 (getDefaultGDKPointerDevice): 38473 * platform/gtk/GtkVersioning.h: 38474 * platform/gtk/PlatformScreenGtk.cpp: 38475 (WebCore::getVisual): 38476 (WebCore::screenAvailableRect): 38477 38478 2010-10-06 Stephen White <senorblanco (a] chromium.org> 38479 38480 Reviewed by James Robinson. 38481 https://bugs.webkit.org/show_bug.cgi?id=47282 38482 38483 Robustify the creation of SharedGraphicsContext3D against shader 38484 compilation failures. 38485 38486 Covered by any canvas 2D layout test, when opened in chrome with 38487 --enable-accelerated-2d-canvas --in-process-webgl. 38488 38489 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 38490 (WebCore::SharedGraphicsContext3D::create): 38491 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D): 38492 * platform/graphics/gpu/SharedGraphicsContext3D.h: 38493 38494 2010-10-06 Luiz Agostini <luiz.agostini (a] openbossa.org> 38495 38496 Reviewed by Kenneth Rohde Christiansen. 38497 38498 Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes 38499 https://bugs.webkit.org/show_bug.cgi?id=47268 38500 38501 Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes 38502 38503 * dom/ViewportArguments.cpp: 38504 (WebCore::findConfigurationForViewportData): 38505 * dom/ViewportArguments.h: 38506 38507 2010-10-06 Renata Hodovan <reni (a] inf.u-szeged.hu> 38508 38509 Reviewed by Nikolas Zimmermann. 38510 38511 SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change. 38512 https://bugs.webkit.org/show_bug.cgi?id=47181 38513 38514 Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent. 38515 38516 Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html 38517 svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html 38518 38519 * svg/SVGFEMergeNodeElement.cpp: 38520 (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): 38521 * svg/SVGFEMergeNodeElement.h: 38522 38523 2010-10-06 Carlos Garcia Campos <cgarcia (a] igalia.com> 38524 38525 Reviewed by Martin Robinson. 38526 38527 [GTK] Remove unused code from gtk2drawing.c 38528 https://bugs.webkit.org/show_bug.cgi?id=47086 38529 38530 gtk2drawing.c was copied from mozilla and contains a lot of code that is not 38531 used by WebKit. Most of that unused code is uncompatible with gtk3, so 38532 removing it will make easier porting to gtk3. 38533 38534 * platform/gtk/gtk2drawing.c: 38535 (moz_gtk_get_widget_border): 38536 (moz_gtk_widget_paint): 38537 (moz_gtk_destroy_theme_parts_widgets): 38538 * platform/gtk/gtkdrawing.h: 38539 38540 2010-10-06 Carlos Garcia Campos <cgarcia (a] igalia.com> 38541 38542 Reviewed by Xan Lopez. 38543 38544 [GTK] Use pixbufs instead of pixmaps when creating platform cursors 38545 https://bugs.webkit.org/show_bug.cgi?id=47087 38546 38547 gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a 38548 pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead 38549 for both gtk2 and gtk3. 38550 38551 * platform/gtk/CursorGtk.cpp: 38552 (WebCore::createNamedCursor): 38553 * platform/gtk/GtkVersioning.c: 38554 (gdk_cairo_format_for_content): 38555 (gdk_cairo_surface_coerce_to_image): 38556 (convert_alpha): 38557 (convert_no_alpha): 38558 (gdk_pixbuf_get_from_surface): 38559 * platform/gtk/GtkVersioning.h: 38560 38561 2010-10-06 Pavel Podivilov <podivilov (a] chromium.org> 38562 38563 Reviewed by Yury Semikhatsky. 38564 38565 Web Inspector: add event listener breakpoints sidebar pane 38566 https://bugs.webkit.org/show_bug.cgi?id=46738 38567 38568 * inspector/front-end/BreakpointManager.js: 38569 (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint): 38570 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo): 38571 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint): 38572 (WebInspector.NativeBreakpoint): 38573 (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet): 38574 (WebInspector.NativeBreakpoint.prototype._setOnBackend): 38575 * inspector/front-end/BreakpointsSidebarPane.js: 38576 (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog): 38577 (WebInspector.BreakpointItem): 38578 (WebInspector.EventListenerBreakpointsSidebarPane): 38579 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate): 38580 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox): 38581 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked): 38582 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked): 38583 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged): 38584 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox): 38585 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset): 38586 * inspector/front-end/EventListenersSidebarPane.js: 38587 (): 38588 * inspector/front-end/PropertiesSection.js: 38589 (WebInspector.PropertiesSection): 38590 * inspector/front-end/ScriptsPanel.js: 38591 (WebInspector.ScriptsPanel): 38592 (WebInspector.ScriptsPanel.prototype.reset): 38593 * inspector/front-end/inspector.css: 38594 (.section .properties, .event-bar .event-properties): 38595 (.section.expanded .properties, .event-bar.expanded .event-properties): 38596 (ol.properties-tree): 38597 (ol.properties-tree li): 38598 (ol.properties-tree li.parent): 38599 (ol.properties-tree li.parent::before): 38600 (ol.properties-tree li.parent.expanded::before): 38601 (ol.properties-tree li .info): 38602 (ol.properties-tree ol, .stack-trace ol, ol.stack-trace): 38603 (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace): 38604 (ol.stack-trace): 38605 (.event-listener-breakpoints .event-category): 38606 (ol.event-listener-breakpoints.properties-tree .children li): 38607 (.event-listener-breakpoints .checkbox-elem): 38608 * inspector/front-end/inspector.js: 38609 (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded): 38610 (WebInspector.createXHRBreakpointsSidebarPane): 38611 38612 2010-10-06 Carlos Garcia Campos <cgarcia (a] igalia.com> 38613 38614 Reviewed by Xan Lopez. 38615 38616 [GTK] Port to gtk+3 (2.91.0) 38617 https://bugs.webkit.org/show_bug.cgi?id=47249 38618 38619 Do not use GdkDrawable deprecated API 38620 38621 Some methods of GdkDrawable are deprecated in gtk2 and have been 38622 remmoved in gtk3. Equivalent API has been added to GdkWindow. 38623 38624 * platform/gtk/GtkVersioning.c: 38625 (getDefaultGDKPointerDevice): 38626 * platform/gtk/GtkVersioning.h: 38627 * platform/gtk/PlatformScreenGtk.cpp: 38628 (WebCore::getVisual): 38629 (WebCore::screenAvailableRect): 38630 38631 2010-10-06 Ryuan Choi <ryuan.choi (a] samsung.com> 38632 38633 Reviewed by Antonio Gomes. 38634 38635 [EFL] Support Progress Tag 38636 https://bugs.webkit.org/show_bug.cgi?id=45951 38637 38638 Implement to render progress tag. 38639 38640 No new tests. Existing tests in fast/dom/HTMLProgressElement. 38641 38642 * platform/efl/RenderThemeEfl.cpp: 38643 (WebCore::RenderThemeEfl::paintThemePart): 38644 (WebCore::RenderThemeEfl::edjeGroupFromFormType): 38645 (WebCore::RenderThemeEfl::adjustProgressBarStyle): 38646 (WebCore::RenderThemeEfl::paintProgressBar): 38647 * platform/efl/RenderThemeEfl.h: 38648 38649 2010-10-06 Patrick Gansterer <paroga (a] webkit.org> 38650 38651 Reviewed by Darin Adler. 38652 38653 Add KURL::protocolIsData() 38654 https://bugs.webkit.org/show_bug.cgi?id=47219 38655 38656 * page/Page.cpp: 38657 (WebCore::Page::userStyleSheetLocationChanged): 38658 * page/SecurityOrigin.cpp: 38659 (WebCore::SecurityOrigin::taintsCanvas): 38660 * page/XSSAuditor.cpp: 38661 (WebCore::XSSAuditor::findInRequest): 38662 * platform/KURL.h: 38663 (WebCore::KURL::protocolIsData): 38664 * platform/network/curl/ResourceHandleManager.cpp: 38665 (WebCore::ResourceHandleManager::dispatchSynchronousJob): 38666 (WebCore::ResourceHandleManager::startJob): 38667 * platform/network/win/ResourceHandleWin.cpp: 38668 (WebCore::ResourceHandle::start): 38669 (WebCore::ResourceHandle::fileLoadTimer): 38670 38671 2010-10-06 Alexander Pavlov <apavlov (a] chromium.org> 38672 38673 Reviewed by Pavel Feldman. 38674 38675 CSSParser: Enable rule selector source range extraction. 38676 API modification followed by clients. 38677 https://bugs.webkit.org/show_bug.cgi?id=46367 38678 38679 Some code removal suggested by Darin Adler. 38680 38681 * css/CSSGrammar.y: 38682 * css/CSSParser.cpp: 38683 (WebCore::CSSParser::CSSParser): 38684 (WebCore::CSSParser::parseSheet): 38685 (WebCore::CSSParser::parseDeclaration): 38686 (WebCore::CSSParser::createStyleRule): 38687 (WebCore::CSSParser::markSelectorListStart): 38688 (WebCore::CSSParser::markSelectorListEnd): 38689 (WebCore::CSSParser::markRuleBodyStart): 38690 (WebCore::CSSParser::markRuleBodyEnd): 38691 (WebCore::CSSParser::markPropertyStart): 38692 (WebCore::CSSParser::markPropertyEnd): 38693 * css/CSSParser.h: 38694 (WebCore::CSSParser::resetSelectorListMarks): 38695 (WebCore::CSSParser::resetRuleBodyMarks): 38696 (WebCore::CSSParser::resetPropertyMarks): 38697 * css/CSSPropertySourceData.cpp: 38698 * css/CSSPropertySourceData.h: 38699 (WebCore::CSSRuleSourceData::create): 38700 * inspector/InspectorCSSStore.cpp: 38701 (WebCore::InspectorCSSStore::getRuleSourceData): 38702 (WebCore::InspectorCSSStore::extractRanges): 38703 (WebCore::InspectorCSSStore::getStyleAttributeRanges): 38704 * inspector/InspectorCSSStore.h: 38705 * inspector/InspectorDOMAgent.cpp: 38706 (WebCore::InspectorDOMAgent::getStyleSourceData): 38707 38708 2010-10-06 Dirk Schulze <krit (a] webkit.org> 38709 38710 Added reviewer to commit r69187. 38711 38712 2010-10-06 Dirk Schulze <krit (a] webkit.org> 38713 38714 Reviewed by Nikolas Zimmermann. 38715 38716 SVG feMorphology - big radii cause huge ImageBuffer sizes 38717 https://bugs.webkit.org/show_bug.cgi?id=47263 38718 38719 The current code in FEMorphology::determineAbsolutePaintRect calculates the smallest paint rect by inflate the paint rect 38720 of a previous effect with the radius. This was meant as an optimization, but I forgot to clip the calculated image size 38721 by the maximal effect size. This caused huge image sizes for big radii. 38722 38723 This is covered by svg/filters/feMorphology-invalid-radius.svg and fixes the crashes on Windows and Snow Leopard bots. 38724 38725 * platform/graphics/filters/FEMorphology.cpp: 38726 (WebCore::FEMorphology::determineAbsolutePaintRect): 38727 38728 2010-10-06 Alejandro G. Castro <alex (a] igalia.com> 38729 38730 Reviewed by Dirk Schulze. 38731 38732 Fixed crash in gtk bots (filter-empty-g.svg) after r69181. 38733 38734 * rendering/RenderSVGResourceFilter.cpp: 38735 (WebCore::RenderSVGResourceFilter::postApplyResource): 38736 38737 2010-10-06 Antonio Gomes <agomes (a] rim.org> 38738 38739 Reviewed by Kenneth Rohde Christiansen. 38740 38741 Rename HitTestResult::rectFromPoint to rectForPoint 38742 https://bugs.webkit.org/show_bug.cgi?id=47261 38743 38744 As per Kenneth Christiansen request inhttps://bugs.webkit.org/show_bug.cgi?id=46336#c20. 38745 38746 * WebCore.exp.in: 38747 * dom/Document.cpp: 38748 (WebCore::Document::nodesFromRect): 38749 * rendering/EllipsisBox.cpp: 38750 (WebCore::EllipsisBox::nodeAtPoint): 38751 * rendering/HitTestResult.cpp: 38752 (WebCore::HitTestResult::addNodeToRectBasedTestResult): 38753 (WebCore::HitTestResult::rectForPoint): 38754 * rendering/HitTestResult.h: 38755 (WebCore::HitTestResult::rectForPoint): 38756 * rendering/InlineFlowBox.cpp: 38757 (WebCore::InlineFlowBox::nodeAtPoint): 38758 * rendering/InlineTextBox.cpp: 38759 (WebCore::InlineTextBox::nodeAtPoint): 38760 * rendering/RenderBlock.cpp: 38761 (WebCore::RenderBlock::nodeAtPoint): 38762 (WebCore::RenderBlock::hitTestColumns): 38763 * rendering/RenderBox.cpp: 38764 (WebCore::RenderBox::nodeAtPoint): 38765 * rendering/RenderLayer.cpp: 38766 (WebCore::RenderLayer::hitTestLayer): 38767 (WebCore::RenderLayer::hitTestChildLayerColumns): 38768 * rendering/RenderTable.cpp: 38769 (WebCore::RenderTable::nodeAtPoint): 38770 * rendering/RenderTableSection.cpp: 38771 (WebCore::RenderTableSection::nodeAtPoint): 38772 38773 2010-10-06 Dirk Schulze <krit (a] webkit.org> 38774 38775 Reviewed by Martin Robinson. 38776 38777 SVGs with filters look grainy when scaled 38778 https://bugs.webkit.org/show_bug.cgi?id=5526 38779 38780 Fixed issues on Cairos shadow implementation after the changes to FilterEffects. 38781 Cairo calculates the inflation of the effect rect itself. Respect this for FEGaussianBlur. 38782 This is just a temporary solution, since Cairo and Qt will use ContextShadow soon. 38783 38784 * platform/graphics/GraphicsContext.h: 38785 * platform/graphics/cairo/GraphicsContextCairo.cpp: 38786 (WebCore::drawBorderlessRectShadow): 38787 (WebCore::GraphicsContext::applyPlatformShadow): 38788 (WebCore::GraphicsContext::createShadowMask): 38789 (WebCore::GraphicsContext::drawTiledShadow): 38790 (WebCore::GraphicsContext::fillRoundedRect): 38791 * platform/graphics/filters/ImageBufferFilter.cpp: 38792 (WebCore::ImageBufferFilter::ImageBufferFilter): 38793 (WebCore::ImageBufferFilter::create): 38794 * platform/graphics/filters/ImageBufferFilter.h: 38795 (WebCore::ImageBufferFilter::filterRegion): 38796 (WebCore::ImageBufferFilter::sourceImageRect): 38797 38798 2010-10-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 38799 38800 Reviewed by Dirk Schulze. 38801 38802 Only execute first SVG text layout phase if needed 38803 https://bugs.webkit.org/show_bug.cgi?id=47254 38804 38805 The first SVG text layout phase which computes the per-character metrics and extracts 38806 the x/y/dx/dy/rotate values from the SVG DOM is currently executed upon every RenderSVGText::layout() call. 38807 38808 Optimize this, by only calling it: 38809 - if x/y/dx/dy/rotate value lists change 38810 - the style of a RenderSVGInlineText changes (eg. font-size changes influence metrics) 38811 - the text content of any of the children in the <text> subtree change 38812 38813 No change in layout tests, a pure performance change - covered by existing tests. 38814 38815 * rendering/RenderSVGResourceGradient.cpp: 38816 (WebCore::createMaskAndSwapContextForTextGradient): Adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor(). 38817 (WebCore::clipToTextMask): Ditto. 38818 * rendering/SVGRenderSupport.cpp: 38819 * rendering/SVGRenderSupport.h: Move findTreeRootObject to RenderSVGText::locateRenderSVGTextAncestor(). 38820 * rendering/svg/RenderSVGInline.cpp: 38821 (WebCore::RenderSVGInline::objectBoundingBox): adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor(). 38822 (WebCore::RenderSVGInline::strokeBoundingBox): Ditto. 38823 (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto. 38824 (WebCore::RenderSVGInline::absoluteQuads): Ditto. 38825 * rendering/svg/RenderSVGInlineText.cpp: 38826 (WebCore::RenderSVGInlineText::styleDidChange): Call setNeedsPositioningValuesUpdate() on the RenderSVGText root object, if diff == StyleDifferenceLayout. 38827 * rendering/svg/RenderSVGText.cpp: 38828 (WebCore::RenderSVGText::RenderSVGText): Initialize m_needsPositioningValuesUpdate. 38829 (WebCore::RenderSVGText::locateRenderSVGTextAncestor): New helper function, moved from SVGRenderSupport, to a more sensible place. 38830 (WebCore::RenderSVGText::layout): Only execute the first SVG text layout phase, if m_needsPositioningValuesUpdate=true. 38831 * rendering/svg/RenderSVGText.h: 38832 (WebCore::RenderSVGText::setNeedsPositioningValuesUpdate): 38833 (WebCore::toRenderSVGText): Add new helper casting methods, like most other renderers have. 38834 * svg/SVGTextPositioningElement.cpp: 38835 (WebCore::updatePositioningValuesInRenderer): 38836 (WebCore::SVGTextPositioningElement::svgAttributeChanged): If x/y/dx/dy/rotate changes, call setNeedsPositioningValuesUpdate on the RenderSVGText root object. 38837 (WebCore::SVGTextPositioningElement::childrenChanged): If any children changes (addition, removal), do the same. 38838 * svg/SVGTextPositioningElement.h: 38839 38840 2010-10-05 Andrey Kosyakov <caseq (a] chromium.org> 38841 38842 Reviewed by Yury Semikhatsky. 38843 38844 Web Inspector: [Extensions API] Expose access to resource bodies 38845 Added support for encoding resource in WebInspector.getResourceContent() 38846 https://bugs.webkit.org/show_bug.cgi?id=45953 38847 38848 * inspector/Inspector.idl: Added encoding parameter to getResourceContent() 38849 * inspector/InspectorController.cpp: 38850 (WebCore::InspectorController::getResourceContent): 38851 * inspector/InspectorController.h: 38852 * inspector/InspectorResource.cpp: Added sourceBytes() to return encoded representation of resource's binary body. 38853 (WebCore::InspectorResource::sourceBytes): 38854 * inspector/InspectorResource.h: 38855 * inspector/front-end/ExtensionAPI.js: 38856 (WebInspector.injectedExtensionAPI.Resources.prototype.getContent): 38857 * inspector/front-end/ExtensionServer.js: 38858 (WebInspector.ExtensionServer): 38859 (WebInspector.ExtensionServer.prototype._onGetResourceContent): 38860 (WebInspector.ExtensionServer.prototype._onGetResourceContent.onContentAvailable): 38861 (WebInspector.getEncodedResourceContent): 38862 * inspector/front-end/NetworkPanel.js: 38863 (WebInspector.getResourceContent): 38864 * inspector/front-end/ResourcesPanel.js: 38865 (WebInspector.getResourceContent): 38866 38867 2010-10-06 David Hyatt <hyatt (a] apple.com> 38868 38869 Reviewed by Dan Bernstein. 38870 38871 https://bugs.webkit.org/show_bug.cgi?id=47235 38872 38873 Make "lr" block-flow fieldsets work. 38874 38875 (1) Patched html.css rules for legends and fieldsets to use logical margins and padding. 38876 (2) Converted just enough of computePreferredLogicalWidths to make basic examples work. 38877 (3) Removed the extra border drawing code from fieldsets so that the "clip out the legend" approach 38878 is now just always used. It's silly to keep the old border drawing code in (which has already gotten out 38879 of sync with the base class) just to avoid a save/restore and some clipping. 38880 (4) Modified the layout/painting routines to place the legend properly and to be able to draw it in 38881 both the top and the left borders. 38882 38883 Added fast/blockflow/fieldsets.html 38884 38885 * css/html.css: 38886 (legend): 38887 (fieldset): 38888 * rendering/RenderBlock.cpp: 38889 (WebCore::RenderBlock::determineLogicalLeftPositionForChild): 38890 (WebCore::RenderBlock::setLogicalLeftForChild): 38891 (WebCore::RenderBlock::setLogicalTopForChild): 38892 (WebCore::RenderBlock::layoutBlockChild): 38893 (WebCore::RenderBlock::computePreferredLogicalWidths): 38894 * rendering/RenderBlock.h: 38895 * rendering/RenderFieldset.cpp: 38896 (WebCore::RenderFieldset::layoutLegend): 38897 (WebCore::RenderFieldset::paintBoxDecorations): 38898 (WebCore::RenderFieldset::paintMask): 38899 * rendering/RenderFieldset.h: 38900 38901 2010-10-06 Patrick Gansterer <paroga (a] webkit.org> 38902 38903 Reviewed by Darin Adler. 38904 38905 Move parseDataUrl() from CURL into own file 38906 https://bugs.webkit.org/show_bug.cgi?id=41462 38907 38908 Move the data URL parsing algorithm into a new file to use it in ResourceHandleWin too. 38909 38910 * CMakeLists.txt: 38911 * WebCore.gypi: 38912 * WebCore.vcproj/WebCore.vcproj: 38913 * platform/network/DataURL.cpp: Added. 38914 (WebCore::handleDataURL): 38915 * platform/network/DataURL.h: Added. 38916 * platform/network/curl/ResourceHandleManager.cpp: 38917 (WebCore::ResourceHandleManager::dispatchSynchronousJob): 38918 (WebCore::ResourceHandleManager::startJob): 38919 * platform/network/win/ResourceHandleWin.cpp: 38920 (WebCore::ResourceHandle::start): 38921 (WebCore::ResourceHandle::fileLoadTimer): 38922 38923 2010-10-06 Dirk Schulze <krit (a] webkit.org> 38924 38925 Reviewed by Nikolas Zimmermann. 38926 38927 SVGs with filters look grainy when scaled 38928 https://bugs.webkit.org/show_bug.cgi?id=5526 38929 38930 SVG filter effects need smarter size calculation 38931 https://bugs.webkit.org/show_bug.cgi?id=31370 38932 38933 SVG elements use Filters before own transformations 38934 https://bugs.webkit.org/show_bug.cgi?id=32486 38935 38936 Calculate all filter results in device space instead of the filtered objects user space. This change is similar to 38937 the patches for SVG Pattern and SVG Masker before. It avoids pixelation and guarantees smooth filter results for 38938 every scale level and is independent of any transformation to the target element or any ancester of the target. 38939 The second part of this patch reduces the size of every effect to the smallest affected region instead of the complete 38940 filter primitive subregion (http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion). We just use the subregion 38941 as clipping region, like mentioned in the SVG specification, to make the affected region even smaller now. 38942 38943 This is a huge speed up. The ECMA cloud (http://ejohn.org/files/ecma-cloud.svg) is more than 100 times faster on Gtk and 38944 renders in less than a second. 38945 Some examples on svg-wow.org can be viewed the first time now, since the subregions were much bigger than the affected 38946 region. 38947 There's still more potential to speed up filters, by further reducing the ImageBuffer sizes. 38948 Renamed repaintRectInLocalCoordinates to absolutePaintRect, since all coordinates are in device space instead of the 38949 user space now. 38950 The absolute paint rect is calculated by determineAbsolutePaintRect() and gets called by FilterEffect::effectContext() on 38951 applying the effect. 38952 Partly rewrote filter resolution (http://www.w3.org/TR/SVG/filters.html#FilterElementFilterResAttribute) to work with the 38953 new concept. This also corrects the old behavior to match the SVG specification. 38954 38955 Tests: svg/filters/filterRes1.svg 38956 svg/filters/filterRes2.svg 38957 svg/filters/filterRes3.svg 38958 38959 * platform/graphics/cairo/GraphicsContextCairo.cpp: Call setAbsolutePaintRect instead of setRepaintRectInLocalCoordinates. 38960 (WebCore::GraphicsContext::createShadowMask): 38961 * platform/graphics/filters/FEBlend.cpp: Renamed repaintRectInLocalCoordinates to absolutePaintRect. 38962 (WebCore::FEBlend::apply): 38963 * platform/graphics/filters/FEColorMatrix.cpp: Ditto. 38964 (WebCore::FEColorMatrix::apply): 38965 * platform/graphics/filters/FEComponentTransfer.cpp: Ditto. 38966 (WebCore::FEComponentTransfer::apply): 38967 * platform/graphics/filters/FEComposite.cpp: Ditto. 38968 (WebCore::FEComposite::determineAbsolutePaintRect): 38969 (WebCore::FEComposite::apply): 38970 * platform/graphics/filters/FEComposite.h: 38971 * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto. 38972 (WebCore::FEConvolveMatrix::apply): 38973 * platform/graphics/filters/FEConvolveMatrix.h: 38974 (WebCore::FEConvolveMatrix::determineAbsolutePaintRect): 38975 * platform/graphics/filters/FEDisplacementMap.cpp: Ditto. 38976 (WebCore::FEDisplacementMap::apply): 38977 * platform/graphics/filters/FEDisplacementMap.h: 38978 (WebCore::FEDisplacementMap::determineAbsolutePaintRect): 38979 * platform/graphics/filters/FEFlood.cpp: Ditto. 38980 (WebCore::FEFlood::apply): 38981 * platform/graphics/filters/FEFlood.h: 38982 (WebCore::FEFlood::determineAbsolutePaintRect): 38983 * platform/graphics/filters/FEGaussianBlur.cpp: Ditto. 38984 (WebCore::calculateKernelSize): 38985 (WebCore::FEGaussianBlur::determineAbsolutePaintRect): 38986 (WebCore::FEGaussianBlur::apply): 38987 * platform/graphics/filters/FEGaussianBlur.h: 38988 * platform/graphics/filters/FELighting.cpp: Ditto. 38989 (WebCore::FELighting::apply): 38990 * platform/graphics/filters/FEMerge.cpp: Ditto. 38991 (WebCore::FEMerge::apply): 38992 * platform/graphics/filters/FEMorphology.cpp: Ditto. 38993 (WebCore::FEMorphology::determineAbsolutePaintRect): 38994 (WebCore::FEMorphology::apply): 38995 * platform/graphics/filters/FEMorphology.h: 38996 * platform/graphics/filters/FEOffset.cpp: Ditto. 38997 (WebCore::FEOffset::determineAbsolutePaintRect): 38998 (WebCore::FEOffset::apply): 38999 * platform/graphics/filters/FEOffset.h: 39000 * platform/graphics/filters/FETile.cpp: Ditto. 39001 (WebCore::FETile::determineFilterPrimitiveSubregion): 39002 (WebCore::FETile::apply): 39003 * platform/graphics/filters/FETile.h: 39004 (WebCore::FETile::determineAbsolutePaintRect): 39005 * platform/graphics/filters/FETurbulence.cpp: Ditto. 39006 (WebCore::FETurbulence::apply): 39007 * platform/graphics/filters/FETurbulence.h: 39008 (WebCore::FETurbulence::determineAbsolutePaintRect): 39009 * platform/graphics/filters/Filter.h: 39010 (WebCore::Filter::applyHorizontalScale): Map horizontal effect values to absolute coordinates. 39011 (WebCore::Filter::applyVerticalScale): Map vertical effect values to absolute coordinates. 39012 (WebCore::Filter::mapAbsolutePointToLocalPoint): 39013 (WebCore::Filter::filterRegionInUserSpace): 39014 * platform/graphics/filters/FilterEffect.cpp: Ditto. 39015 (WebCore::FilterEffect::determineFilterPrimitiveSubregion): 39016 (WebCore::FilterEffect::determineAbsolutePaintRect): 39017 (WebCore::FilterEffect::requestedRegionOfInputImageData): 39018 (WebCore::FilterEffect::drawingRegionOfInputImage): 39019 (WebCore::FilterEffect::effectContext): 39020 * platform/graphics/filters/FilterEffect.h: 39021 (WebCore::FilterEffect::absolutePaintRect): 39022 (WebCore::FilterEffect::setAbsolutePaintRect): 39023 (WebCore::FilterEffect::maxEffectRect): The subregion in absolute coordinates for SVG. 39024 (WebCore::FilterEffect::setMaxEffectRect): 39025 * platform/graphics/filters/SourceAlpha.cpp: Ditto. 39026 (WebCore::SourceAlpha::determineAbsolutePaintRect): 39027 (WebCore::SourceAlpha::apply): 39028 * platform/graphics/filters/SourceAlpha.h: 39029 * platform/graphics/filters/SourceGraphic.cpp: Ditto. 39030 (WebCore::SourceGraphic::determineAbsolutePaintRect): 39031 (WebCore::SourceGraphic::apply): 39032 * platform/graphics/filters/SourceGraphic.h: 39033 * rendering/RenderSVGResourceFilter.cpp: 39034 (WebCore::RenderSVGResourceFilter::applyResource): 39035 (WebCore::RenderSVGResourceFilter::postApplyResource): 39036 * rendering/RenderSVGResourceFilter.h: 39037 (WebCore::FilterData::FilterData): 39038 * svg/graphics/filters/SVGFEImage.cpp: Ditto. 39039 (WebCore::FEImage::apply): 39040 * svg/graphics/filters/SVGFEImage.h: 39041 (WebCore::FEImage::determineAbsolutePaintRect): 39042 * svg/graphics/filters/SVGFilter.cpp: 39043 (WebCore::SVGFilter::SVGFilter): 39044 (WebCore::SVGFilter::determineFilterPrimitiveSubregion): 39045 (WebCore::SVGFilter::applyHorizontalScale): 39046 (WebCore::SVGFilter::applyVerticalScale): 39047 (WebCore::SVGFilter::create): 39048 * svg/graphics/filters/SVGFilter.h: 39049 (WebCore::SVGFilter::effectBoundingBoxMode): 39050 (WebCore::SVGFilter::filterRegionInUserSpace): 39051 (WebCore::SVGFilter::filterRegion): 39052 (WebCore::SVGFilter::mapAbsolutePointToLocalPoint): Map absolute point to local point in userspace. 39053 (WebCore::SVGFilter::sourceImageRect): 39054 (WebCore::SVGFilter::maxImageSize): 39055 39056 2010-10-06 Pavel Podivilov <podivilov (a] chromium.org> 39057 39058 Reviewed by Yury Semikhatsky. 39059 39060 Web Inspector: add "Set Breakpoint" item to XHR resource context menu. 39061 https://bugs.webkit.org/show_bug.cgi?id=47085 39062 39063 * English.lproj/localizedStrings.js: 39064 * inspector/front-end/ResourcesPanel.js: 39065 (WebInspector.ResourcesPanel.prototype._contextMenu): 39066 39067 2010-10-05 Kinuko Yasuda <kinuko (a] chromium.org> 39068 39069 Reviewed by David Levin. 39070 39071 Add idl and mock classes for FileSystemSync for FileSystem API 39072 https://bugs.webkit.org/show_bug.cgi?id=46405 39073 39074 Added bunch of *Sync classes, plus refactored some classes: 39075 Added DOMFileSystemBase as a common base class for DOMFileSystem and 39076 DOMFileSystemSync. 39077 Added EntryBase as a common base class for Entry and EntrySync. 39078 Added DirectoryReaderBase as a common base class for DirectoryReader and 39079 DirectoryReaderSync. 39080 39081 Test: fast/filesystem/workers/ 39082 39083 * CMakeLists.txt: Added new files. 39084 * DerivedSources.cpp: Added new files. 39085 * DerivedSources.make: Added new files. 39086 * GNUmakefile.am: Added new files. 39087 * WebCore.gypi: Added new files. 39088 * WebCore.pri: Added new files. 39089 * WebCore.pro: Added new files. 39090 * WebCore.vcproj/WebCore.vcproj: Added new files. Also removed the duplicated fileapi\FileEntry.cpp entry. 39091 * WebCore.xcodeproj/project.pbxproj: Added new files. 39092 * bindings/js/JSDirectoryEntrySyncCustom.cpp: Added. 39093 * bindings/js/JSEntrySyncCustom.cpp: Added. 39094 * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp: Added. 39095 * bindings/v8/custom/V8EntrySyncCustom.cpp: Added. 39096 * fileapi/DOMFileSystemBase.cpp: Added. 39097 * fileapi/DOMFileSystemBase.h: Added. 39098 * fileapi/DOMFileSystemSync.cpp: Added. 39099 * fileapi/DOMFileSystemSync.h: Added. 39100 * fileapi/DOMFileSystemSync.idl: Added. 39101 * fileapi/DirectoryEntrySync.cpp: Added. 39102 * fileapi/DirectoryEntrySync.h: Added. 39103 * fileapi/DirectoryEntrySync.idl: Added. 39104 * fileapi/DirectoryReaderBase.h: Added. 39105 * fileapi/DirectoryReaderSync.cpp: Added. 39106 * fileapi/DirectoryReaderSync.h: Added. 39107 * fileapi/DirectoryReaderSync.idl: Added. 39108 * fileapi/EntryArraySync.cpp: Added. 39109 * fileapi/EntryArraySync.h: Added. 39110 * fileapi/EntryArraySync.idl: Added. 39111 * fileapi/EntryBase.h: Added. 39112 * fileapi/EntrySync.cpp: Added. 39113 * fileapi/EntrySync.h: Added. 39114 * fileapi/EntrySync.idl: Added. 39115 * fileapi/FileEntrySync.cpp: Added. 39116 * fileapi/FileEntrySync.h: Added. 39117 * fileapi/FileEntrySync.idl: Added. 39118 39119 2010-10-05 Kent Tamura <tkent (a] chromium.org> 39120 39121 Reviewed by Dimitri Glazkov. 39122 39123 REGRESSION (r67166): "Placeholder" text remains in input box after 2nd focus() 39124 https://bugs.webkit.org/show_bug.cgi?id=45940 39125 39126 Test: fast/forms/input-placeholder-focus-twice.html 39127 39128 * html/HTMLFormControlElement.h: Make supportsPlaceholder() public. 39129 * rendering/RenderTextControlSingleLine.cpp: 39130 (WebCore::RenderTextControlSingleLine::updateFromElement): 39131 We always need to update the renderer value with the DOM value if 39132 the element supports the placeholder feature. 39133 Note: the placeholder feature and "unacceptable renderer value" 39134 are exclusive. 39135 39136 2010-10-05 Kyusun Kim <maniagoon (a] company100.net> 39137 39138 Reviewed by Kent Tamura. 39139 39140 [BREWMP] Translate key code in PlatformKeyboardEvent with IKeysMapping 39141 https://bugs.webkit.org/show_bug.cgi?id=47234 39142 39143 Brew MP devices have a variey of key configurations and use modifiers to 39144 input capital letters, symbols and special characters. Use IKeysMapping to translate key code. 39145 39146 * platform/brew/PlatformKeyboardEventBrew.cpp: 39147 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): 39148 39149 2010-10-05 W. James MacLean <wjmaclean (a] chromium.org> 39150 39151 Reviewed by James Robinson. 39152 39153 [chromium] Add mipmap support for ImageLayerChromium 39154 https://bugs.webkit.org/show_bug.cgi?id=46493 39155 39156 Mipmap behaviour can be tested with existing tests. 39157 Tests in LayoutTests/compositing/images/ will detect if 39158 mipmaps fail. 39159 39160 * platform/graphics/chromium/ContentLayerChromium.cpp: 39161 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 39162 (WebCore::isPowerOfTwo): 39163 (WebCore::ContentLayerChromium::updateTextureRect): 39164 * platform/graphics/chromium/ContentLayerChromium.h: 39165 (WebCore::ContentLayerChromium::SharedValues::npotSupported): 39166 * platform/graphics/chromium/ImageLayerChromium.cpp: 39167 (WebCore::ImageLayerChromium::updateContents): 39168 39169 2010-10-05 Adam Barth <abarth (a] webkit.org> 39170 39171 Reviewed by Darin Adler. 39172 39173 Issue in treebuilder parsing related to table tags 39174 https://bugs.webkit.org/show_bug.cgi?id=47190 39175 39176 Update ASSERT to match the spec and our behavior. 39177 39178 * html/parser/HTMLTreeBuilder.cpp: 39179 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 39180 39181 2010-10-05 Victoria Kirst <vrk (a] google.com> 39182 39183 Reviewed by James Robinson. 39184 39185 VideoLayerChromium releases old resources if the LayerRenderer changes. 39186 https://bugs.webkit.org/show_bug.cgi?id=47030 39187 39188 Refactored LayerChromium to have a virtual cleanupResources() method 39189 that will release textures/other context-dependent resources when a 39190 LayerRenderer changes. ContentLayerChromium and VideoLayerChromium now 39191 override this method to perform cleanup. 39192 39193 * platform/graphics/chromium/ContentLayerChromium.cpp: 39194 * platform/graphics/chromium/ContentLayerChromium.h: 39195 * platform/graphics/chromium/LayerChromium.cpp: 39196 (WebCore::LayerChromium::setLayerRenderer): 39197 * platform/graphics/chromium/LayerChromium.h: 39198 (WebCore::LayerChromium::cleanupResources): 39199 * platform/graphics/chromium/VideoLayerChromium.cpp: 39200 (WebCore::VideoLayerChromium::~VideoLayerChromium): 39201 (WebCore::VideoLayerChromium::cleanupResources): 39202 * platform/graphics/chromium/VideoLayerChromium.h: 39203 39204 2010-10-05 Kinuko Yasuda <kinuko (a] chromium.org> 39205 39206 Reviewed by Jian Li. 39207 39208 FileEntry::file needs to be implemented 39209 https://bugs.webkit.org/show_bug.cgi?id=47192 39210 39211 Test: fast/filesystem/file-from-file-entry.html 39212 39213 * fileapi/FileEntry.cpp: 39214 (WebCore::FileEntry::file): Implemented. 39215 39216 2010-09-29 Alpha Lam <hclam (a] chromium.org> 39217 39218 Reviewed by James Robinson. 39219 39220 Render textures in video frame directly. 39221 https://bugs.webkit.org/show_bug.cgi?id=46765 39222 39223 Render textures in VideoLayerChromium directly if the video frame type 39224 is GL texture. In the future VideoLayerChromium will not allocate 39225 textures and perform textures upload as those operations will be done 39226 in Chromium to minimize memory copy. This patch will help moving toward 39227 this direction and facilitate hardware video decoding. 39228 39229 * platform/graphics/chromium/VideoFrameChromium.h: 39230 * platform/graphics/chromium/VideoFrameProvider.h: 39231 (WebCore::VideoFrameProvider::~VideoFrameProvider): 39232 * platform/graphics/chromium/VideoLayerChromium.cpp: 39233 (WebCore::VideoLayerChromium::VideoLayerChromium): 39234 (WebCore::VideoLayerChromium::~VideoLayerChromium): 39235 (WebCore::VideoLayerChromium::updateContents): 39236 (WebCore::VideoLayerChromium::draw): 39237 (WebCore::VideoLayerChromium::releaseCurrentFrame): 39238 (WebCore::VideoLayerChromium::resetFrameParameters): 39239 (WebCore::VideoLayerChromium::saveCurrentFrame): 39240 * platform/graphics/chromium/VideoLayerChromium.h: 39241 (WebCore::VideoLayerChromium::SharedValues::initialized): 39242 39243 2010-10-05 Fady Samuel <fsamuel (a] chromium.org> 39244 39245 Reviewed by Darin Adler. 39246 39247 REGRESSION (r65539): One pixel white gaps when scrolling Trac changeset pages 39248 https://bugs.webkit.org/show_bug.cgi?id=45131 39249 39250 When border-collapse: separate property is set on the table, paintObject 39251 may skip repainting cells, if the dirty region only touches one row/col of pixels. 39252 39253 Test: fast/table/simple_paint_separate_borders.html 39254 39255 * rendering/RenderTableSection.cpp: 39256 (WebCore::RenderTableSection::paintObject): 39257 Don't subtract one from the right and bottom of the dirty paint rect. 39258 39259 2010-10-05 Sanjeev Radhakrishnan <sanjeevr (a] chromium.org> 39260 39261 Reviewed by Darin Fisher. 39262 39263 PluginDocument now holds on to the created plugin node so that the pluginNode() and pluginWidget() methods can return the correct node. 39264 https://bugs.webkit.org/show_bug.cgi?id=47129 39265 39266 * html/PluginDocument.cpp: 39267 (WebCore::PluginDocumentParser::createDocumentStructure): 39268 (WebCore::PluginDocument::pluginWidget): 39269 (WebCore::PluginDocument::pluginNode): 39270 * html/PluginDocument.h: 39271 (WebCore::PluginDocument::setPluginNode): 39272 39273 2010-10-05 Andreas Kling <kling (a] webkit.org> 39274 39275 Reviewed by Tor Arne Vestb. 39276 39277 [Qt] Re-enable single-NPP_SetWindow quirk for 64-bit 39278 https://bugs.webkit.org/show_bug.cgi?id=45363 39279 39280 This is still causing trouble for people, so let's put the 39281 quirk back until we can figure this out properly. 39282 39283 * plugins/PluginPackage.cpp: 39284 (WebCore::PluginPackage::determineQuirks): 39285 39286 2010-10-05 Jian Li <jianli (a] chromium.org> 39287 39288 Reviewed by Nate Chapin. 39289 39290 [V8] Add FileReader to active DOM map 39291 https://bugs.webkit.org/show_bug.cgi?id=47205 39292 39293 We need to have a custom FileReader V8 constructor in order to add object 39294 into active DOM map to prevent it from GC-ed when it is still in-use. 39295 39296 * Android.v8bindings.mk: 39297 * WebCore.gypi: 39298 * bindings/scripts/CodeGeneratorV8.pm: 39299 * bindings/v8/custom/V8FileReaderCustom.cpp: Added. 39300 (WebCore::V8FileReader::constructorCallback): 39301 * fileapi/FileReader.idl: 39302 39303 2010-10-05 Vincent Scheib <scheib (a] chromium.org> 39304 39305 Reviewed by Kenneth Russell. 39306 39307 [chromium] 51304 GPU compositor resorts to "slow" text rendering for base page layer 39308 https://bugs.webkit.org/show_bug.cgi?id=47193 39309 39310 Test: Accelerated compositor test infrastructure still coming online. Tested manually. 39311 39312 * platform/graphics/chromium/LayerRendererChromium.cpp: 39313 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 39314 (WebCore::LayerRendererChromium::prepareToDrawLayers): 39315 (WebCore::LayerRendererChromium::drawLayers): 39316 39317 2010-10-05 Nico Weber <thakis (a] chromium.org> 39318 39319 Reviewed by Andreas Kling. 39320 39321 Fix clang build 39322 https://bugs.webkit.org/show_bug.cgi?id=47198 39323 39324 * page/Chrome.h: 39325 Declare ViewportArguments as struct, not as class. 39326 39327 2010-10-05 David Hyatt <hyatt (a] apple.com> 39328 39329 Reviewed by Sam Weinig. 39330 39331 https://bugs.webkit.org/show_bug.cgi?id=47204 39332 39333 Make isSelfCollapsingBlock use logical height instead of height in all its checks. 39334 39335 Added fast/blockflow/self-collapsing-block.html 39336 39337 * rendering/RenderBlock.cpp: 39338 (WebCore::RenderBlock::isSelfCollapsingBlock): 39339 39340 2010-10-05 Eric Uhrhane <ericu (a] chromium.org> 39341 39342 Reviewed by David Levin. 39343 39344 Relax restrictions on FileWriter::didWrite calls 39345 https://bugs.webkit.org/show_bug.cgi?id=47139 39346 39347 No new tests; they're still waiting on the first implementation. 39348 39349 * fileapi/FileWriter.cpp: 39350 (WebCore::FileWriter::FileWriter): 39351 (WebCore::FileWriter::write): 39352 (WebCore::FileWriter::didWrite): 39353 * fileapi/FileWriter.h: 39354 39355 2010-10-05 Daniel Cheng <dcheng (a] chromium.org> 39356 39357 Reviewed by Tony Chang. 39358 39359 [chromium] getData('text/uri-list') should return the same thing that was passed to setData('text/uri-list') 39360 https://bugs.webkit.org/show_bug.cgi?id=46943 39361 39362 We no longer parse the input of setData('text/uri-list') and only store 39363 the valid URLs that were parsed out. 39364 39365 Test: editing/pasteboard/dataTransfer-setData-getData.html 39366 39367 * platform/chromium/ChromiumDataObject.cpp: 39368 (WebCore::ChromiumDataObject::clearData): 39369 (WebCore::ChromiumDataObject::clearAllExceptFiles): 39370 (WebCore::ChromiumDataObject::types): 39371 (WebCore::ChromiumDataObject::getData): 39372 (WebCore::ChromiumDataObject::setData): 39373 * platform/chromium/ChromiumDataObject.h: 39374 39375 2010-10-05 Martin Robinson <mrobinson (a] igalia.com> 39376 39377 Reviewed by Xan Lopez. 39378 39379 [GTK] Support FontPlatformData::isFixedPitch for custom fonts 39380 https://bugs.webkit.org/show_bug.cgi?id=47124 39381 39382 Instead of determining whether or not a font is a fixed-width font 39383 lazily, do it up front. For fonts not backed by Fontconfig patterns, 39384 fetch information about whether or not the font is fixed-width from 39385 the FreeType face. 39386 39387 No new tests as this should not change functionality. 39388 39389 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 39390 (WebCore::FontPlatformData::FontPlatformData): Initialize the m_fixedWidth member 39391 from the Fontconfig pattern or the FreeType face. 39392 (WebCore::FontPlatformData::operator=): Copy over the m_fixedWidth member. 39393 (WebCore::FontPlatformData::isFixedPitch): Just return the value of the m_fixedWidth member. 39394 * platform/graphics/cairo/FontPlatformDataFreeType.h: Added an m_fixedWidth member. 39395 39396 2010-10-05 David Hyatt <hyatt (a] apple.com> 39397 39398 Reviewed by Anders Carlsson. 39399 39400 https://bugs.webkit.org/show_bug.cgi?id=47199 39401 39402 Make float positioning work in block layout with block children. 39403 It doesn't work yet from inside line layout, since line layout is unpatched. 39404 39405 Added fast/blockflow/floats-in-block-layout.html 39406 39407 * rendering/RenderBlock.cpp: 39408 (WebCore::RenderBlock::adjustFloatingBlock): 39409 (WebCore::RenderBlock::setLogicalLeftForChild): 39410 (WebCore::RenderBlock::setLogicalTopForChild): 39411 (WebCore::RenderBlock::insertFloatingObject): 39412 (WebCore::RenderBlock::positionNewFloats): 39413 (WebCore::RenderBlock::logicalLeftOffsetForLine): 39414 (WebCore::RenderBlock::logicalRightOffsetForLine): 39415 * rendering/RenderBlock.h: 39416 (WebCore::RenderBlock::FloatingObject::type): 39417 (WebCore::RenderBlock::FloatingObject::renderer): 39418 (WebCore::RenderBlock::logicalRightForFloat): 39419 (WebCore::RenderBlock::setLogicalTopForFloat): 39420 (WebCore::RenderBlock::setLogicalLeftForFloat): 39421 (WebCore::RenderBlock::setLogicalHeightForFloat): 39422 (WebCore::RenderBlock::setLogicalWidthForFloat): 39423 39424 2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen (a] nokia.com> 39425 39426 Reviewed by Kenneth Rohde Christiansen. 39427 39428 [Qt] Web process crash when pressing modifiers in input field 39429 https://bugs.webkit.org/show_bug.cgi?id=44935 39430 39431 Revert part of the http://trac.webkit.org/changeset/69105 due to a 39432 test regression. Unix: Add ASSERTs to plugin related code. These 39433 will fail if Qt WebKit2 is used with plugins, unless code is not 39434 fixed before. 39435 39436 * plugins/qt/PluginViewQt.cpp: 39437 (WebCore::setXKeyEventSpecificFields): Use qKeyEvent, Use ASSERT as a reminder. 39438 39439 2010-10-05 Chris Rogers <crogers (a] google.com> 39440 39441 Reviewed by Kenneth Russell. 39442 39443 Add AudioBasicProcessorNode files 39444 https://bugs.webkit.org/show_bug.cgi?id=46495 39445 39446 No new tests since audio API is not yet implemented. 39447 39448 * webaudio/AudioBasicProcessorNode.cpp: Added. 39449 (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode): 39450 (WebCore::AudioBasicProcessorNode::initialize): 39451 (WebCore::AudioBasicProcessorNode::uninitialize): 39452 (WebCore::AudioBasicProcessorNode::process): 39453 (WebCore::AudioBasicProcessorNode::pullInputs): 39454 (WebCore::AudioBasicProcessorNode::reset): 39455 (WebCore::AudioBasicProcessorNode::checkNumberOfChannelsForInput): 39456 (WebCore::AudioBasicProcessorNode::numberOfChannels): 39457 * webaudio/AudioBasicProcessorNode.h: Added. 39458 (WebCore::AudioBasicProcessorNode::processor): 39459 39460 2010-10-05 Chris Marrin <cmarrin (a] apple.com> 39461 39462 Unreviewed. 39463 39464 The platform/graphics/gpu folder was mistakenly inside the filters folder. 39465 I moved it to the right place in the Group Tree. 39466 39467 * WebCore.xcodeproj/project.pbxproj: 39468 39469 2010-10-05 Chris Marrin <cmarrin (a] apple.com> 39470 39471 Reviewed by Adam Roben. 39472 39473 Fix ownership of GraphicsContext3D in SharedGraphicsContext3D to prevent early deallocation and crash 39474 https://bugs.webkit.org/show_bug.cgi?id=47197 39475 39476 This is work in progress and the crash only happens with ACCELERATED_2D_CANVAS turned on (which is off 39477 by default). Many existing test cases will crash before and after this patch. 39478 39479 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 39480 (WebCore::SharedGraphicsContext3D::create): 39481 39482 2010-10-05 Tony Chang <tony (a] chromium.org> 39483 39484 Reviewed by Kent Tamura. 39485 39486 [chromium] properly paint really small scrollbar arrows on linux 39487 https://bugs.webkit.org/show_bug.cgi?id=47109 39488 39489 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 39490 (WebCore::ScrollbarThemeChromiumLinux::buttonSize): Clamp button size based on available size. This matches what 39491 we do on Win. 39492 39493 2010-10-05 Nate Chapin <japhet (a] chromium.org> 39494 39495 Reviewed by David Levin. 39496 39497 Remove unused CachedResource::Status values (New and NotCached). 39498 https://bugs.webkit.org/show_bug.cgi?id=47132 39499 39500 Refactor only, no new tests. 39501 39502 * loader/CachedResource.h: 39503 * loader/CachedResourceLoader.cpp: 39504 (WebCore::CachedResourceLoader::checkCacheObjectStatus): 39505 39506 2010-10-04 Jeremy Orlow <jorlow (a] chromium.org> 39507 39508 Reviewed by Nate Chapin. 39509 39510 Rename get* and open*Cursor per the spec on IDBIndex 39511 https://bugs.webkit.org/show_bug.cgi?id=46906 39512 39513 The spec changed so that: 39514 IDBIndex.get -> getKey 39515 IDBIndex.getObject -> get 39516 IDBIndex.openCursor -> openKeyCursor 39517 IDBIndex.openObjectCursor -> openCursor 39518 39519 Existing tests cover since this is just renaming stuff. 39520 39521 * storage/IDBIndex.cpp: 39522 (WebCore::IDBIndex::openCursor): 39523 (WebCore::IDBIndex::openKeyCursor): 39524 (WebCore::IDBIndex::get): 39525 (WebCore::IDBIndex::getKey): 39526 * storage/IDBIndex.h: 39527 * storage/IDBIndex.idl: 39528 * storage/IDBIndexBackendImpl.cpp: 39529 (WebCore::IDBIndexBackendImpl::openCursor): 39530 (WebCore::IDBIndexBackendImpl::openKeyCursor): 39531 (WebCore::IDBIndexBackendImpl::get): 39532 (WebCore::IDBIndexBackendImpl::getKey): 39533 * storage/IDBIndexBackendImpl.h: 39534 * storage/IDBIndexBackendInterface.h: 39535 39536 2010-10-05 Keith Kyzivat <keith.kyzivat (a] nokia.com> 39537 39538 Reviewed by Simon Hausmann. 39539 39540 [Qt] Fix breakage in RVCT 2.2 compile 39541 https://bugs.webkit.org/show_bug.cgi?id=47187 39542 39543 Fix bug in RVCT 2.2 compile for Symbian^3 in html/canvas/Int32Array.h and 39544 html/canvas/Uin8Array.h 39545 For RVCT2.2, the using clause is unneeded, and can be omitted. 39546 39547 A Test case cannot be made for this since this is a build-related issue. 39548 39549 * html/canvas/Int32Array.h: 39550 * html/canvas/Uint8Array.h: 39551 39552 2010-10-04 Andrei Popescu <andreip (a] google.com> 39553 39554 Reviewed by Jeremy Orlow. 39555 39556 IDBDatabase::createObjectStore/removeObjectStore and IDBObjectStore::createIndex/removeIndex should be synchronous. 39557 https://bugs.webkit.org/show_bug.cgi?id=46883 39558 39559 Makes the schema manipulation methods synchronous. Modifies the transaction 39560 logic to support tasks that may have pending events as well as tasks that 39561 don't have such events. 39562 39563 * storage/IDBDatabase.cpp: 39564 (WebCore::IDBDatabase::createObjectStore): 39565 (WebCore::IDBDatabase::removeObjectStore): 39566 * storage/IDBDatabase.h: 39567 * storage/IDBDatabase.idl: 39568 * storage/IDBDatabaseBackendImpl.cpp: 39569 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 39570 (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): 39571 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 39572 (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal): 39573 * storage/IDBDatabaseBackendImpl.h: 39574 * storage/IDBDatabaseBackendInterface.h: 39575 * storage/IDBIndexBackendImpl.cpp: 39576 (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): 39577 * storage/IDBIndexBackendImpl.h: 39578 (WebCore::IDBIndexBackendImpl::create): 39579 (WebCore::IDBIndexBackendImpl::id): 39580 (WebCore::IDBIndexBackendImpl::setId): 39581 * storage/IDBObjectStore.cpp: 39582 (WebCore::IDBObjectStore::createIndex): 39583 (WebCore::IDBObjectStore::removeIndex): 39584 * storage/IDBObjectStore.h: 39585 * storage/IDBObjectStore.idl: 39586 * storage/IDBObjectStoreBackendImpl.cpp: 39587 (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): 39588 (WebCore::IDBObjectStoreBackendImpl::createIndex): 39589 (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): 39590 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 39591 (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal): 39592 * storage/IDBObjectStoreBackendImpl.h: 39593 (WebCore::IDBObjectStoreBackendImpl::create): 39594 (WebCore::IDBObjectStoreBackendImpl::id): 39595 (WebCore::IDBObjectStoreBackendImpl::setId): 39596 (WebCore::IDBObjectStoreBackendImpl::autoIncrement): 39597 * storage/IDBObjectStoreBackendInterface.h: 39598 * storage/IDBTransactionBackendImpl.cpp: 39599 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 39600 (WebCore::IDBTransactionBackendImpl::objectStore): 39601 (WebCore::IDBTransactionBackendImpl::scheduleTask): 39602 (WebCore::IDBTransactionBackendImpl::abort): 39603 (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): 39604 (WebCore::IDBTransactionBackendImpl::run): 39605 (WebCore::IDBTransactionBackendImpl::taskTimerFired): 39606 (WebCore::IDBTransactionBackendImpl::taskEventTimerFired): 39607 * storage/IDBTransactionBackendImpl.h: 39608 39609 2010-10-05 Chris Fleizach <cfleizach (a] apple.com> 39610 39611 Reviewed by Darin Adler. 39612 39613 WAI-ARIA 'marquee' role live region uses aria-live="polite", should use aria-live="off" 39614 https://bugs.webkit.org/show_bug.cgi?id=47185 39615 39616 Test: platform/mac/accessibility/aria-liveregion-marquee-default.html 39617 39618 * accessibility/AccessibilityRenderObject.cpp: 39619 (WebCore::AccessibilityRenderObject::ariaLiveRegionStatus): 39620 39621 2010-10-05 Martin Robinson <mrobinson (a] igalia.com> 39622 39623 Reviewed by Xan Lopez. 39624 39625 [GTK] Interior scrollbars do not draw their background properly 39626 https://bugs.webkit.org/show_bug.cgi?id=47096 39627 39628 Correct the method that the GTK+ theme drawing code uses to 39629 draw scrolled window backgrounds. Now it uses gtk_paint_shadow, 39630 the same as the actual code from GTK+. 39631 39632 No new tests as this is very hard to write tests for. The bug only 39633 manifests on some GTK+ themes and we have no test harness mechanism 39634 for testing rendering with non-default GTK+ themes. 39635 39636 * platform/gtk/ScrollbarThemeGtk.cpp: 39637 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): No longer 39638 initialize the widget state, as it's unused by the callee. 39639 (WebCore::ScrollbarThemeGtk::paint): Remove an inaccurate comment. 39640 * platform/gtk/gtk2drawing.c: 39641 (moz_gtk_scrolled_window_paint): Paint scrolled window backgrounds 39642 with gtk_paint_shadow instead of gtk_paint_box. 39643 39644 2010-10-05 Kwang Yul Seo <skyul (a] company100.net> 39645 39646 Reviewed by Kent Tamura. 39647 39648 [BREWMP] Use PlatformRefPtr instead of OwnPtr in FileSystem 39649 https://bugs.webkit.org/show_bug.cgi?id=47025 39650 39651 PlatformRefPtr is a better choice here because all Brew MP instances are 39652 reference counted. 39653 39654 * platform/brew/FileSystemBrew.cpp: 39655 (WebCore::getFileSize): 39656 (WebCore::fileExists): 39657 (WebCore::deleteFile): 39658 (WebCore::deleteEmptyDirectory): 39659 (WebCore::canonicalPath): 39660 (WebCore::makeAllDirectories): 39661 (WebCore::openTemporaryFile): 39662 39663 2010-10-05 Martin Robinson <mrobinson (a] igalia.com> 39664 39665 Reviewed by Gustavo Noronha Silva. 39666 39667 [GTK] Complex text rendering does not render custom fonts 39668 https://bugs.webkit.org/show_bug.cgi?id=41091 39669 39670 For fonts that do not have a FontConfig pattern (including custom 39671 fonts), fall back to the simple text rendering path. This is a work- 39672 -around for not supporting Pango rendering with non-FontConfig fonts. 39673 39674 Test: platform/gtk/fonts/font-face-with-complex-text.html 39675 39676 * platform/graphics/gtk/FontGtk.cpp: 39677 (WebCore::Font::drawComplexText): Fall back to the simple path for custom fonts. 39678 (WebCore::Font::floatWidthForComplexText): Ditto. 39679 (WebCore::Font::offsetForPositionForComplexText): Ditto. 39680 (WebCore::Font::selectionRectForComplexText): Ditto. 39681 39682 2010-10-05 Kwang Yul Seo <skyul (a] company100.net> 39683 39684 Reviewed by Kent Tamura. 39685 39686 [BREWMP] Use PlatformRefPtr in getDisplayInfo 39687 https://bugs.webkit.org/show_bug.cgi?id=47023 39688 39689 Use PlatformRefPtr to release IBitmap* automatically. 39690 39691 * platform/brew/ScreenBrew.cpp: 39692 (WebCore::getDisplayInfo): 39693 39694 2010-10-05 Kristian Monsen <kristianm (a] google.com> 39695 39696 Reviewed by Steve Block. 39697 39698 Including JavaScriptCore/config.h from WebCore/config.h 39699 instead of from WebCorePrefix.h. 39700 https://bugs.webkit.org/show_bug.cgi?id=47179 39701 39702 No new tests, just changing where files are included. 39703 39704 * WebCorePrefix.h: 39705 * config.h: 39706 39707 2010-10-05 Jakob Petsovits <jpetsovits (a] rim.com> 39708 39709 Reviewed by Andreas Kling. 39710 39711 [Qt] Make build work with QT_NO_CURSOR 39712 https://bugs.webkit.org/show_bug.cgi?id=46097 39713 39714 Add a missing include. 39715 39716 * platform/qt/QWebPageClient.h: 39717 39718 2010-10-05 Jakob Petsovits <jpetsovits (a] rim.com> 39719 39720 Reviewed by Andreas Kling. 39721 39722 [Qt] Make build work with QT_NO_CURSOR 39723 https://bugs.webkit.org/show_bug.cgi?id=46097 39724 39725 createCustomCursor() is a static function and not used 39726 in that file if QT_NO_CURSOR is defined, so rather than 39727 making it return 0, it should not exist altogether. 39728 39729 * platform/qt/CursorQt.cpp: 39730 (WebCore::createCustomCursor): 39731 39732 2010-10-05 Adam Roben <aroben (a] apple.com> 39733 39734 Windows linker warning fix 39735 39736 * WebCore.vcproj/WebCore.vcproj: Exclude JSDOMTokenList.cpp from the 39737 build, since it is already being compiled via DerivedSources.cpp. Also 39738 let VS reorder some files. 39739 39740 2010-10-05 Kimmo Kinnunen <kimmo.t.kinnunen (a] nokia.com> 39741 39742 Reviewed by Kenneth Rohde Christiansen. 39743 39744 [Qt] Web process crash when pressing modifiers in input field 39745 https://bugs.webkit.org/show_bug.cgi?id=44935 39746 39747 Fix null pointer dereference by not using 39748 PlatformKeyboardEvent::m_qtEvent. This member is not set when 39749 event comes from WebKit2. Unix: Add ASSERTs to plugin related 39750 code. These will fail if WebKit2 is used with plugins, unless code 39751 is not fixed before. Symbian: Add ASSERT to code which uses 39752 qtEvent(). It will fail when WebKit2 is enabled for Symbian, if 39753 code is not fixed before. 39754 39755 * platform/PlatformKeyboardEvent.h: 39756 * platform/qt/PlatformKeyboardEventQt.cpp: 39757 (WebCore::isVirtualKeyCodeRepresentingCharacter): Added. 39758 (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): Avoid using m_qtEvent. 39759 (WebCore::PlatformKeyboardEvent::nativeModifiers): Added. Use ASSERT as a reminder. 39760 (WebCore::PlatformKeyboardEvent::nativeScanCode): Added. Use ASSERT as a reminder. 39761 * plugins/qt/PluginViewQt.cpp: 39762 (WebCore::setXKeyEventSpecificFields): 39763 * plugins/symbian/PluginViewSymbian.cpp: 39764 (WebCore::PluginView::handleKeyboardEvent): Add ASSERT as a reminder. 39765 39766 2010-10-05 Kwang Yul Seo <skyul (a] company100.net> 39767 39768 Reviewed by Csaba Osztrogonc. 39769 39770 Add ENABLE(ACCELERATED_2D_CANVAS) guard to LoopBlinnLocalTriangulator.cpp 39771 https://bugs.webkit.org/show_bug.cgi?id=47115 39772 39773 LoopBlinnLocalTriangulator.cpp depends on LoopBlinnMathUtils.cpp which is guarded by 39774 ENABLE(ACCELERATED_2D_CANVAS). 39775 39776 * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: 39777 39778 2010-10-05 Satish Sampath <satish (a] chromium.org> 39779 39780 Reviewed by Kent Tamura. 39781 39782 Added event onwebkitspeechchange to invoke on new speech input results. 39783 https://bugs.webkit.org/show_bug.cgi?id=47127 39784 39785 * dom/EventNames.h: Added webkitspeechchange event name. 39786 * html/HTMLAttributeNames.in: Added onwebkitspeechchange attribute name. 39787 * html/HTMLInputElement.cpp: 39788 (WebCore::HTMLInputElement::parseMappedAttribute): Handle new attribute set. 39789 (WebCore::HTMLInputElement::dispatchWebkitSpeechChangeEvent): Invoke the event handler. 39790 * html/HTMLInputElement.h: 39791 * html/HTMLInputElement.idl: Added attribute to IDL. 39792 * rendering/TextControlInnerElements.cpp: 39793 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Invoke new event handler instead of onChange 39794 39795 2010-10-05 Satish Sampath <satish (a] chromium.org> 39796 39797 Reviewed by Jeremy Orlow. 39798 39799 Rename @webkitspeech to @x-webkit-speech to follow HTML5 convention 39800 https://bugs.webkit.org/show_bug.cgi?id=46873 39801 39802 The @webkitspeech attribute is renamed to @x-webkit-speech per the HTML5 spec for extension 39803 attributes. The DOM attribute in IDL was renamed to 'webkitSpeech' as well. But the generated 39804 code for the attribute did not match the generated code for the IDL, so I modified 39805 dom/make_names.pl to generate the appropriate name for such extension attributes. 39806 39807 * bindings/generic/RuntimeEnabledFeatures.h: Rename flag accessor to match IDL attribute name. 39808 (WebCore::RuntimeEnabledFeatures::webkitSpeechEnabled): 39809 * dom/make_names.pl: Additions to generate names for x-webkit-xxxx attributes that match the 39810 generated code from IDL and remember the original names including the x- prefix when writing 39811 out the cpp files. 39812 * html/HTMLAttributeNames.in: Rename @webkitspeech to @x-webkit-speech 39813 * html/HTMLInputElement.idl: Rename @webkitspeech to @webkitSpeech 39814 39815 2010-10-04 Andrey Kosyakov <caseq (a] chromium.org> 39816 39817 Reviewed by Yury Semikhatsky. 39818 39819 Web Inspector: [Chromium][Extension API] provide tab id of inspected tab in extension API 39820 https://bugs.webkit.org/show_bug.cgi?id=47080 39821 39822 * inspector/front-end/ExtensionServer.js: Added support for platform-specific extensions API. 39823 (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript): 39824 39825 2010-10-05 Sanjeev Radhakrishnan <sanjeevr (a] chromium.org> 39826 39827 Reviewed by Darin Fisher. 39828 39829 Fixed implementation of pluginWidgetFromDocument to search for the "embed" element rather than just use the first child. 39830 https://bugs.webkit.org/show_bug.cgi?id=47129 39831 39832 * html/PluginDocument.cpp: 39833 (WebCore::PluginDocumentParser::pluginWidgetFromDocument): 39834 39835 2010-10-05 Chris Rogers <crogers (a] google.com> 39836 39837 Reviewed by Kenneth Russell. 39838 39839 Add BiquadDSPKernel files 39840 https://bugs.webkit.org/show_bug.cgi?id=46528 39841 39842 No new tests since audio API is not yet implemented. 39843 39844 * webaudio/BiquadDSPKernel.cpp: Added. 39845 (WebCore::BiquadDSPKernel::process): 39846 * webaudio/BiquadDSPKernel.h: Added. 39847 (WebCore::BiquadDSPKernel::BiquadDSPKernel): 39848 (WebCore::BiquadDSPKernel::reset): 39849 (WebCore::BiquadDSPKernel::biquadProcessor): 39850 39851 2010-10-05 Chris Rogers <crogers (a] google.com> 39852 39853 Reviewed by James Robinson. 39854 39855 Fix AudioContext to use new HRTFDatabaseLoader API 39856 https://bugs.webkit.org/show_bug.cgi?id=46858 39857 39858 No new tests since audio API is not yet implemented. 39859 39860 * webaudio/AudioContext.cpp: 39861 (WebCore::AudioContext::AudioContext): 39862 (WebCore::AudioContext::isRunnable): 39863 * webaudio/AudioContext.h: 39864 * webaudio/AudioContext.idl: 39865 39866 2010-10-05 Chris Rogers <crogers (a] google.com> 39867 39868 Reviewed by Kenneth Russell. 39869 39870 Add AudioPannerNode files 39871 https://bugs.webkit.org/show_bug.cgi?id=46505 39872 39873 No new tests since audio API is not yet implemented. 39874 39875 * webaudio/AudioPannerNode.cpp: Added. 39876 (WebCore::fixNANs): 39877 (WebCore::AudioPannerNode::AudioPannerNode): 39878 (WebCore::AudioPannerNode::~AudioPannerNode): 39879 (WebCore::AudioPannerNode::pullInputs): 39880 (WebCore::AudioPannerNode::process): 39881 (WebCore::AudioPannerNode::reset): 39882 (WebCore::AudioPannerNode::initialize): 39883 (WebCore::AudioPannerNode::uninitialize): 39884 (WebCore::AudioPannerNode::listener): 39885 (WebCore::AudioPannerNode::setPanningModel): 39886 (WebCore::AudioPannerNode::getAzimuthElevation): 39887 (WebCore::AudioPannerNode::dopplerRate): 39888 (WebCore::AudioPannerNode::distanceConeGain): 39889 (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode): 39890 * webaudio/AudioPannerNode.h: Added. 39891 (WebCore::AudioPannerNode::create): 39892 (WebCore::AudioPannerNode::panningModel): 39893 (WebCore::AudioPannerNode::position): 39894 (WebCore::AudioPannerNode::setPosition): 39895 (WebCore::AudioPannerNode::orientation): 39896 (WebCore::AudioPannerNode::setOrientation): 39897 (WebCore::AudioPannerNode::velocity): 39898 (WebCore::AudioPannerNode::setVelocity): 39899 (WebCore::AudioPannerNode::distanceModel): 39900 (WebCore::AudioPannerNode::setDistanceModel): 39901 (WebCore::AudioPannerNode::refDistance): 39902 (WebCore::AudioPannerNode::setRefDistance): 39903 (WebCore::AudioPannerNode::maxDistance): 39904 (WebCore::AudioPannerNode::setMaxDistance): 39905 (WebCore::AudioPannerNode::rolloffFactor): 39906 (WebCore::AudioPannerNode::setRolloffFactor): 39907 (WebCore::AudioPannerNode::coneInnerAngle): 39908 (WebCore::AudioPannerNode::setConeInnerAngle): 39909 (WebCore::AudioPannerNode::coneOuterAngle): 39910 (WebCore::AudioPannerNode::setConeOuterAngle): 39911 (WebCore::AudioPannerNode::coneOuterGain): 39912 (WebCore::AudioPannerNode::setConeOuterGain): 39913 (WebCore::AudioPannerNode::distanceGain): 39914 (WebCore::AudioPannerNode::coneGain): 39915 * webaudio/AudioPannerNode.idl: Added. 39916 39917 2010-10-04 Alejandro G. Castro <alex (a] igalia.com> 39918 39919 Reviewed by Martin Robinson. 39920 39921 [Cairo] Port drawTiledShadow to the new ContextShadow 39922 https://bugs.webkit.org/show_bug.cgi?id=45902 39923 39924 Ported the drawTiledShadow function to the ContextShadow, it 39925 renders shadows for rects faster than the simple blurring using 39926 tiling of a smaller rect. We will remove the old function in a 39927 next patch when starting to use ContextShadows for cairo 39928 rendering. 39929 39930 * platform/graphics/ContextShadow.h: 39931 * platform/graphics/cairo/ContextShadowCairo.cpp: 39932 (WebCore::ContextShadow::drawRectShadowWithoutTiling): 39933 (WebCore::ContextShadow::drawRectShadow): 39934 39935 2010-10-05 Chris Rogers <crogers (a] google.com> 39936 39937 Reviewed by Kenneth Russell. 39938 39939 Add BiquadProcessor files 39940 https://bugs.webkit.org/show_bug.cgi?id=46527 39941 39942 No new tests since audio API is not yet implemented. 39943 39944 * webaudio/BiquadProcessor.cpp: Added. 39945 (WebCore::BiquadProcessor::BiquadProcessor): 39946 (WebCore::BiquadProcessor::~BiquadProcessor): 39947 (WebCore::BiquadProcessor::createKernel): 39948 (WebCore::BiquadProcessor::process): 39949 * webaudio/BiquadProcessor.h: Added. 39950 (WebCore::BiquadProcessor::filterCoefficientsDirty): 39951 (WebCore::BiquadProcessor::parameter1): 39952 (WebCore::BiquadProcessor::parameter2): 39953 (WebCore::BiquadProcessor::parameter3): 39954 (WebCore::BiquadProcessor::type): 39955 39956 2010-10-05 Chris Rogers <crogers (a] google.com> 39957 39958 Reviewed by Kenneth Russell. 39959 39960 Add EqualPowerPanner files 39961 https://bugs.webkit.org/show_bug.cgi?id=45077 39962 39963 No new tests since audio API is not yet implemented. 39964 39965 * platform/audio/EqualPowerPanner.cpp: Added. 39966 (WebCore::EqualPowerPanner::EqualPowerPanner): 39967 (WebCore::EqualPowerPanner::pan): 39968 * platform/audio/EqualPowerPanner.h: Added. 39969 (WebCore::EqualPowerPanner::reset): 39970 39971 2010-10-05 Chris Rogers <crogers (a] google.com> 39972 39973 Reviewed by Kenneth Russell. 39974 39975 Add HighPass2FilterNode files 39976 https://bugs.webkit.org/show_bug.cgi?id=46533 39977 39978 No new tests since audio API is not yet implemented. 39979 39980 * webaudio/HighPass2FilterNode.cpp: Added. 39981 (WebCore::HighPass2FilterNode::HighPass2FilterNode): 39982 * webaudio/HighPass2FilterNode.h: Added. 39983 (WebCore::HighPass2FilterNode::create): 39984 (WebCore::HighPass2FilterNode::cutoff): 39985 (WebCore::HighPass2FilterNode::resonance): 39986 (WebCore::HighPass2FilterNode::biquadProcessor): 39987 * webaudio/HighPass2FilterNode.idl: Added. 39988 39989 2010-10-05 Chris Rogers <crogers (a] google.com> 39990 39991 Reviewed by Kenneth Russell. 39992 39993 Add LowPass2FilterNode files 39994 https://bugs.webkit.org/show_bug.cgi?id=46532 39995 39996 No new tests since audio API is not yet implemented. 39997 39998 * webaudio/LowPass2FilterNode.cpp: Added. 39999 (WebCore::LowPass2FilterNode::LowPass2FilterNode): 40000 * webaudio/LowPass2FilterNode.h: Added. 40001 (WebCore::LowPass2FilterNode::create): 40002 (WebCore::LowPass2FilterNode::cutoff): 40003 (WebCore::LowPass2FilterNode::resonance): 40004 (WebCore::LowPass2FilterNode::biquadProcessor): 40005 * webaudio/LowPass2FilterNode.idl: Added. 40006 40007 2010-10-04 Alejandro G. Castro <alex (a] igalia.com> 40008 40009 Reviewed by Kent Tamura. 40010 40011 Fixed compilation problem added in commit 69082. The interface of 40012 the function has two parameters with the same name. 40013 40014 * rendering/RenderBlock.h: 40015 40016 2010-10-04 Chris Rogers <crogers (a] google.com> 40017 40018 Reviewed by Kenneth Russell. 40019 40020 Add AudioUtilities files 40021 https://bugs.webkit.org/show_bug.cgi?id=47011 40022 40023 No new tests since audio API is not yet implemented. 40024 40025 * platform/audio/AudioUtilities.cpp: Added. 40026 (WebCore::AudioUtilities::decibelsToLinear): 40027 (WebCore::AudioUtilities::linearToDecibels): 40028 (WebCore::AudioUtilities::discreteTimeConstantForSampleRate): 40029 * platform/audio/AudioUtilities.h: Added. 40030 40031 2010-10-04 David Hyatt <hyatt (a] apple.com> 40032 40033 Reviewed by Dan Bernstein. 40034 40035 https://bugs.webkit.org/show_bug.cgi?id=47112 40036 40037 Convert addOverhangingFloats and addIntrudingFloats to be block-flow-aware. 40038 40039 Also clean up how floats are placed to use a bit instead of the magic -1 value on top(). 40040 40041 * rendering/RenderBlock.cpp: 40042 (WebCore::RenderBlock::layoutBlock): 40043 (WebCore::RenderBlock::layoutBlockChild): 40044 (WebCore::RenderBlock::insertFloatingObject): 40045 (WebCore::RenderBlock::removeFloatingObject): 40046 (WebCore::RenderBlock::removeFloatingObjectsBelow): 40047 (WebCore::RenderBlock::positionNewFloats): 40048 (WebCore::RenderBlock::markLinesDirtyInBlockRange): 40049 (WebCore::RenderBlock::clearFloats): 40050 (WebCore::RenderBlock::addOverhangingFloats): 40051 (WebCore::RenderBlock::addIntrudingFloats): 40052 * rendering/RenderBlock.h: 40053 (WebCore::RenderBlock::FloatingObject::FloatingObject): 40054 (WebCore::RenderBlock::FloatingObject::isPlaced): 40055 (WebCore::RenderBlock::FloatingObject::setIsPlaced): 40056 * rendering/RenderBlockLineLayout.cpp: 40057 (WebCore::RenderBlock::determineStartPosition): 40058 40059 2010-10-04 Nico Weber <thakis (a] chromium.org> 40060 40061 Reviewed by Kenneth Russell. 40062 40063 Fix broken C++ in PODInterval and PODIntervalTree 40064 https://bugs.webkit.org/show_bug.cgi?id=47063 40065 40066 See http://clang.llvm.org/compatibility.html#dep_lookup . Since 40067 valueToString needs to work with non-class types, it needs to be 40068 declared before it's used. And since it needs to handle many types, it 40069 needs to be a template function, for which clients will need to 40070 provide specializations for the types they care about. Partial template 40071 specialization is only supported for structs, so wrap the function in 40072 a struct, too. 40073 40074 * platform/graphics/gpu/PODInterval.h: 40075 (WebCore::PODInterval::toString): 40076 * platform/graphics/gpu/PODIntervalTree.h: 40077 (WebCore::PODIntervalTree::checkInvariantsFromNode): 40078 * platform/graphics/gpu/PODRedBlackTree.h: 40079 (WebCore::PODRedBlackTree::dumpFromNode): 40080 40081 2010-10-04 Yael Aharon <yael.aharon (a] nokia.com> 40082 40083 Reviewed by Antonio Gomes. 40084 40085 Spatial Navigation: Add support for <input type="radio"> 40086 https://bugs.webkit.org/show_bug.cgi?id=46993 40087 40088 When using Spatial Navigation, every radio button should be focusable and 40089 users should be able to navigate from one button to the next without moving the selection. 40090 40091 Tests: fast/events/spatial-navigation/snav-radio-group.html 40092 fast/events/spatial-navigation/snav-radio.html 40093 40094 * html/HTMLInputElement.cpp: 40095 (WebCore::HTMLInputElement::isKeyboardFocusable): 40096 Every radio button should be keyboard focusable, if using Spatial Navigation. 40097 (WebCore::HTMLInputElement::defaultEventHandler): 40098 Disable the algorithm for selecting the next radio button within a group, if using Spatial Navigation. 40099 40100 2010-10-04 Renata Hodovan <reni (a] inf.u-szeged.hu> 40101 40102 Reviewed by Andreas Kling. 40103 40104 SVGFEGaussianBlurElement doesn't support dynamic invalidation, when attributes change. 40105 https://bugs.webkit.org/show_bug.cgi?id=47074 40106 The patch also implements the simple setStdDeviation method. 40107 40108 Tests: svg/dynamic-updates/SVGFEGaussianBlurElement-dom-in-attr.html 40109 svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-attr.html 40110 svg/dynamic-updates/SVGFEGaussianBlurElement-dom-stdDeviation-call.html 40111 svg/dynamic-updates/SVGFEGaussianBlurElement-svgdom-in-prop.html 40112 40113 * svg/SVGFEGaussianBlurElement.cpp: 40114 (WebCore::SVGFEGaussianBlurElement::setStdDeviation): 40115 (WebCore::SVGFEGaussianBlurElement::svgAttributeChanged): 40116 * svg/SVGFEGaussianBlurElement.h: 40117 40118 2010-10-04 Patrick Gansterer <paroga (a] paroga.com> 40119 40120 Reviewed by Darin Adler. 40121 40122 Add Base64DecodePolicy option at base64Decode() 40123 https://bugs.webkit.org/show_bug.cgi?id=41510 40124 40125 Add an option for ignoring characters in base64 data. 40126 This is necessary for decoding data urls. 40127 40128 Also add an overload to decode WebCore::String directly. 40129 40130 * page/DOMWindow.cpp: 40131 (WebCore::DOMWindow::atob): 40132 * page/Page.cpp: 40133 (WebCore::Page::userStyleSheetLocationChanged): 40134 * platform/text/Base64.cpp: 40135 (WebCore::base64Encode): 40136 (WebCore::base64Decode): 40137 (WebCore::base64DecodeInternal): 40138 * platform/text/Base64.h: 40139 (WebCore::): 40140 40141 2010-10-04 Ryuan Choi <bunhere (a] gmail.com> 40142 40143 Unreviewed build fix. 40144 40145 [WML] Build fix for r68854 40146 https://bugs.webkit.org/show_bug.cgi?id=47043 40147 40148 Include HTMLParserIdioms.h. 40149 40150 No features added, so no new tests. 40151 40152 * wml/WMLAElement.cpp: 40153 * wml/WMLImageLoader.cpp: 40154 40155 2010-10-04 Ryuan Choi <ryuan.choi (a] samsung.com> 40156 40157 Unreviewed build fix. 40158 40159 [CMAKE] Build fix for r68901 40160 https://bugs.webkit.org/show_bug.cgi?id=47042 40161 40162 Move plugins/PluginPackage.cpp 40163 40164 No features added, so no new tests. 40165 40166 * CMakeLists.txt: 40167 40168 2010-10-04 Eric Uhrhane <ericu (a] chromium.org> 40169 40170 Reviewed by David Levin. 40171 40172 Hook FileEntry::createWriter to DOMFileSystem::createWriter 40173 https://bugs.webkit.org/show_bug.cgi?id=46908 40174 40175 No new tests--still waiting for the first complete implementation. 40176 40177 * fileapi/FileEntry.cpp: 40178 (WebCore::FileEntry::createWriter): 40179 40180 2010-10-04 Yael Aharon <yael.aharon (a] nokia.com> 40181 40182 Reviewed by Antonio Gomes. 40183 40184 Spatial Navigation: select element does not release focus with Spatial Navigation 40185 https://bugs.webkit.org/show_bug.cgi?id=46896 40186 40187 When using Spatial Navigation, once a select element is focused, you cannot use arrow keys 40188 to navigate out of the select element. That is because select element currently uses the 40189 arrow keys to change the selected element. 40190 Change the behavior of select element so it does not change selection, if Spatial Navigation 40191 is on. 40192 40193 This patch is addressing the case where Spatial Navigation is used 40194 in a mobile device, and the flag ENABLE_NO_LISTBOX_RENDERING is on. 40195 In the future we can add support for the case where the flag is off, and 40196 the user needs to traverse the select element inline. 40197 40198 Tests: fast/events/spatial-navigation/snav-multiple-select.html 40199 fast/events/spatial-navigation/snav-single-select.html 40200 40201 * dom/SelectElement.cpp: 40202 (WebCore::SelectElement::menuListDefaultEventHandler): 40203 40204 2010-10-04 Sriram Neelakandan <sriram.neelakandan (a] gmail.com> 40205 40206 Reviewed by Andreas Kling. 40207 40208 [Qt] QNetworkReplyHandler forces buffered output for FormData with files 40209 https://bugs.webkit.org/show_bug.cgi?id=46259 40210 40211 No new tests. Existing form submit tests should cover this change. 40212 40213 * platform/network/qt/QNetworkReplyHandler.cpp: 40214 (WebCore::FormDataIODevice::FormDataIODevice): 40215 (WebCore::FormDataIODevice::computeSize): 40216 Add computeSize() for computing form device size 40217 (WebCore::QNetworkReplyHandler::start): 40218 Call computeSize(), fill Content-Length and prevent UploadData buffering 40219 * platform/network/qt/QNetworkReplyHandler.h: 40220 (WebCore::FormDataIODevice::getFormDataSize): 40221 40222 2010-10-04 Chang Shu <chang.shu (a] nokia.com> 40223 40224 Reviewed by Antonio Gomes. 40225 40226 Fixed the typo that searches the wrong direction in the no-focus-node case. 40227 As a result, after page is loaded, pressing key "arrowdown" will bring the 40228 focus to the 1st element instead of the last element. 40229 https://bugs.webkit.org/show_bug.cgi?id=46901 40230 40231 Test: fast/events/spatial-navigation/snav-1st-stop.html 40232 40233 * page/FocusController.cpp: 40234 (WebCore::FocusController::advanceFocusDirectionally): 40235 40236 2010-10-04 Simon Fraser <simon.fraser (a] apple.com> 40237 40238 No review. 40239 40240 Touch cf/SocketStreamHandle.h and add an #ifdef to qt/SocketStreamHandle.h 40241 to fail at compile time if Mac includes that header. 40242 40243 * platform/network/cf/SocketStreamHandle.h: 40244 * platform/network/qt/SocketStreamHandle.h: 40245 40246 2010-10-04 Simon Fraser <simon.fraser (a] apple.com> 40247 40248 Reviewed by Darin Adler. 40249 40250 https://bugs.webkit.org/show_bug.cgi?id=47136 40251 WebSocket tests are crashing 40252 40253 The Mac xcode project was finding qt/SocketStreamHandle.h because of 40254 an inadvertent change in r68951. Thus the header and implementation didn't match, 40255 and memory corruption ensued. 40256 40257 * WebCore.xcodeproj/project.pbxproj: 40258 40259 2010-10-04 Chris Marrin <cmarrin (a] apple.com> 40260 40261 Reviewed by James Robinson. 40262 40263 Move SharedGraphicsContext3D from ChromeClient to Page 40264 https://bugs.webkit.org/show_bug.cgi?id=47113 40265 40266 * html/canvas/CanvasRenderingContext2D.cpp: 40267 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 40268 * page/ChromeClient.h: 40269 * page/Page.cpp: 40270 (WebCore::Page::sharedGraphicsContext3D): 40271 * page/Page.h: 40272 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 40273 (WebCore::SharedGraphicsContext3D::create): 40274 * platform/graphics/gpu/SharedGraphicsContext3D.h: 40275 40276 2010-10-04 Jeremy Orlow <jorlow (a] chromium.org> 40277 40278 Reviewed by Nate Chapin. 40279 40280 Implement IndexedDB's oncomplete and ontimeout. 40281 https://bugs.webkit.org/show_bug.cgi?id=47106 40282 40283 Add ontimeout and oncomplete to IDBTransaction and plumb 40284 them. Test this behavior in the existing IDBTransaction-basics 40285 test. 40286 40287 * WebCore.gypi: 40288 * storage/IDBTransaction.cpp: 40289 (WebCore::IDBTransaction::IDBTransaction): 40290 (WebCore::IDBTransaction::mode): 40291 (WebCore::IDBTransaction::objectStore): 40292 (WebCore::IDBTransaction::abort): 40293 (WebCore::IDBTransaction::onAbort): 40294 (WebCore::IDBTransaction::onComplete): 40295 (WebCore::IDBTransaction::onTimeout): 40296 (WebCore::IDBTransaction::stop): 40297 (WebCore::IDBTransaction::onAbortTimerFired): 40298 (WebCore::IDBTransaction::onCompleteTimerFired): 40299 (WebCore::IDBTransaction::onTimeoutTimerFired): 40300 * storage/IDBTransaction.h: 40301 * storage/IDBTransactionBackendImpl.cpp: 40302 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 40303 (WebCore::IDBTransactionBackendImpl::commit): 40304 * storage/IDBTransactionCallbacks.h: 40305 40306 2010-10-04 Enrica Casucci <enrica (a] apple.com> 40307 40308 Reviewed by Darin Adler. 40309 40310 Crash at WebCore::nextCandidate + 27 40311 https://bugs.webkit.org/show_bug.cgi?id=47118 40312 <rdar://problem/7282934> 40313 40314 When we canonicalize a Position to create a VisiblePosition, the position 40315 is passed by reference. In canonicalPosition we call updateLayoutIgnorePendingStylesheets 40316 that can produce a lot of side effects, including changing the selection. 40317 This becomes a serious problem whne the position passed as reference is one of 40318 the selection endpoints. 40319 40320 Test: editing/selection/focus-crash.html 40321 40322 * editing/VisiblePosition.cpp: 40323 (WebCore::VisiblePosition::canonicalPosition): 40324 40325 2010-10-04 Alexey Proskuryakov <ap (a] apple.com> 40326 40327 Reviewed by Adam Barth. 40328 40329 https://bugs.webkit.org/show_bug.cgi?id=37812 40330 Assertion failure when appcache/fail-on-update.html is run twice in a row 40331 40332 Test: http/tests/appcache/fail-on-update-2.html 40333 40334 For some reason, I can't reproduce this assertion failure with ToT, but the fixes I made 40335 previously are still good, and covered by the new test. 40336 40337 * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache): 40338 Handle the case when the cache is already obsolete by the time cache selection occurs. 40339 40340 * loader/appcache/ApplicationCacheHost.cpp: (WebCore::ApplicationCacheHost::failedLoadingMainResource): 40341 It's not true that loading from appcache always succeeds - it can be aborted. 40342 40343 * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store): 40344 Calling ensureOriginRecord(group->origin()) can change lastInsertRowID! 40345 40346 2010-10-04 Erik Arvidsson <arv (a] chromium.org> 40347 40348 Reviewed by James Robinson. 40349 40350 https://bugs.webkit.org/show_bug.cgi?id=47122 40351 Crash in classList when class attribute is empty. 40352 40353 Tests: fast/dom/HTMLElement/class-list.html 40354 40355 * html/DOMTokenList.cpp: 40356 (WebCore::DOMTokenList::length): 40357 (WebCore::DOMTokenList::containsInternal): 40358 (WebCore::DOMTokenList::classNames): 40359 40360 2010-10-04 Darin Adler <darin (a] apple.com> 40361 40362 Reviewed by Dan Bernstein. 40363 40364 Use isHTMLSpace in more places, and optimize it 40365 https://bugs.webkit.org/show_bug.cgi?id=47103 40366 40367 * css/CSSParser.cpp: 40368 (WebCore::parseColorInt): Use isHTMLSpace instead of a separate isCSSWhitespace function. 40369 (WebCore::parseAlphaValue): Ditto. 40370 (WebCore::CSSParser::text): Ditto. 40371 40372 * dom/SpaceSplitString.h: Removed isClassWhitespace. 40373 40374 * dom/SpaceSplitString.cpp: 40375 (WebCore::SpaceSplitStringData::createVector): Use isHTMLSpace instead of isClassWhitespace. 40376 * dom/StyledElement.cpp: 40377 (WebCore::StyledElement::classAttributeChanged): Ditto. 40378 * html/DOMTokenList.cpp: 40379 (WebCore::validateToken): Ditto. 40380 (WebCore::DOMTokenList::removeInternal): Ditto. 40381 40382 * html/parser/HTMLParserIdioms.h: Added histogram data an changed so that non-spaces take 40383 only a single branch and plain old spaces take only two branches. 40384 40385 2010-10-04 Justin Schuh <jschuh (a] chromium.org> 40386 40387 Reviewed by James Robinson. 40388 40389 HTMLMediaElement delayed load should fire asynchronously 40390 https://bugs.webkit.org/show_bug.cgi?id=45765 40391 40392 Test: media/remove-from-document-before-load.html 40393 40394 * dom/Document.cpp: 40395 (WebCore::Document::Document): 40396 (WebCore::Document::decrementLoadEventDelayCount): 40397 (WebCore::Document::loadEventDelayTimerFired): 40398 * dom/Document.h: 40399 * html/HTMLMediaElement.cpp: 40400 (WebCore::HTMLMediaElement::HTMLMediaElement): 40401 (WebCore::HTMLMediaElement::asyncEventTimerFired): 40402 (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): 40403 * html/HTMLMediaElement.h: 40404 40405 2010-10-04 Adam Barth <abarth (a] webkit.org> 40406 40407 Reviewed by Darin Adler. 40408 40409 ResourceHandle's public/protected/private sections are fragmented 40410 https://bugs.webkit.org/show_bug.cgi?id=47038 40411 40412 Minor cleanup. 40413 40414 * platform/network/ResourceHandle.h: 40415 40416 2010-10-04 Alexey Proskuryakov <ap (a] apple.com> 40417 40418 Reviewed by Adam Barth. 40419 40420 https://bugs.webkit.org/show_bug.cgi?id=43506 40421 <rdar://problem/8289284> foreign-iframe-main.html occasionally crashes (during the next test, 40422 idempotent-update.html) 40423 40424 Application cache doesn't use ResourceLoader machinery (for better or worse), so we need to 40425 abort update process explicitly. 40426 40427 Note that in principle, update could piggyback on any other existing frame - or even run 40428 frameless - but currently, it's tied to the first frame that requested update. 40429 40430 * loader/DocumentLoader.cpp: 40431 (WebCore::DocumentLoader::stopLoading): 40432 * loader/appcache/ApplicationCacheGroup.cpp: 40433 (WebCore::ApplicationCacheGroup::stopLoadingInFrame): 40434 * loader/appcache/ApplicationCacheGroup.h: 40435 * loader/appcache/ApplicationCacheHost.cpp: 40436 (WebCore::ApplicationCacheHost::~ApplicationCacheHost): 40437 (WebCore::ApplicationCacheHost::stopLoadingInFrame): 40438 * loader/appcache/ApplicationCacheHost.h: 40439 40440 2010-10-04 Adam Barth <abarth (a] webkit.org> 40441 40442 Reviewed by Darin Adler. 40443 40444 Rename RedirectScheduler to NavigationScheduler 40445 https://bugs.webkit.org/show_bug.cgi?id=47037 40446 40447 This class schedules more than just redirects. In fact, it schedules 40448 most kinds of navigations. 40449 40450 * Android.mk: 40451 * CMakeLists.txt: 40452 * GNUmakefile.am: 40453 * WebCore.gypi: 40454 * WebCore.pro: 40455 * WebCore.vcproj/WebCore.vcproj: 40456 * WebCore.xcodeproj/project.pbxproj: 40457 * bindings/generic/BindingDOMWindow.h: 40458 (WebCore::::createWindow): 40459 (WebCore::::open): 40460 * bindings/generic/BindingFrame.h: 40461 (WebCore::::navigateIfAllowed): 40462 * bindings/js/JSDOMWindowCustom.cpp: 40463 (WebCore::JSDOMWindow::setLocation): 40464 (WebCore::createWindow): 40465 (WebCore::JSDOMWindow::open): 40466 * bindings/js/JSDocumentCustom.cpp: 40467 (WebCore::JSDocument::setLocation): 40468 * bindings/js/JSLocationCustom.cpp: 40469 (WebCore::JSLocation::reload): 40470 * bindings/v8/custom/V8LocationCustom.cpp: 40471 (WebCore::V8Location::reloadCallback): 40472 * dom/Document.cpp: 40473 (WebCore::Document::implicitClose): 40474 (WebCore::Document::processHttpEquiv): 40475 * inspector/InspectorController.cpp: 40476 (WebCore::InspectorController::setResourceTrackingEnabled): 40477 (WebCore::InspectorController::reloadPage): 40478 * loader/FrameLoader.cpp: 40479 (WebCore::FrameLoader::setDefersLoading): 40480 (WebCore::FrameLoader::submitForm): 40481 (WebCore::FrameLoader::stopLoading): 40482 (WebCore::FrameLoader::didOpenURL): 40483 (WebCore::FrameLoader::didExplicitOpen): 40484 (WebCore::FrameLoader::cancelAndClear): 40485 (WebCore::FrameLoader::clear): 40486 (WebCore::FrameLoader::receivedFirstData): 40487 (WebCore::FrameLoader::checkCompleted): 40488 (WebCore::FrameLoader::provisionalLoadStarted): 40489 (WebCore::FrameLoader::completed): 40490 (WebCore::FrameLoader::prepareForCachedPageRestore): 40491 * loader/FrameLoader.h: 40492 * loader/NavigationScheduler.cpp: Added. 40493 (WebCore::ScheduledNavigation::ScheduledNavigation): 40494 (WebCore::ScheduledNavigation::~ScheduledNavigation): 40495 (WebCore::ScheduledNavigation::shouldStartTimer): 40496 (WebCore::ScheduledNavigation::didStartTimer): 40497 (WebCore::ScheduledNavigation::didStopTimer): 40498 (WebCore::ScheduledNavigation::delay): 40499 (WebCore::ScheduledNavigation::lockHistory): 40500 (WebCore::ScheduledNavigation::lockBackForwardList): 40501 (WebCore::ScheduledNavigation::wasDuringLoad): 40502 (WebCore::ScheduledNavigation::isLocationChange): 40503 (WebCore::ScheduledNavigation::wasUserGesture): 40504 (WebCore::ScheduledURLNavigation::ScheduledURLNavigation): 40505 (WebCore::ScheduledURLNavigation::fire): 40506 (WebCore::ScheduledURLNavigation::didStartTimer): 40507 (WebCore::ScheduledURLNavigation::didStopTimer): 40508 (WebCore::ScheduledURLNavigation::url): 40509 (WebCore::ScheduledURLNavigation::referrer): 40510 (WebCore::ScheduledRedirect::ScheduledRedirect): 40511 (WebCore::ScheduledRedirect::shouldStartTimer): 40512 (WebCore::ScheduledLocationChange::ScheduledLocationChange): 40513 (WebCore::ScheduledRefresh::ScheduledRefresh): 40514 (WebCore::ScheduledRefresh::fire): 40515 (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation): 40516 (WebCore::ScheduledHistoryNavigation::fire): 40517 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): 40518 (WebCore::ScheduledFormSubmission::fire): 40519 (WebCore::ScheduledFormSubmission::didStartTimer): 40520 (WebCore::ScheduledFormSubmission::didStopTimer): 40521 (WebCore::NavigationScheduler::NavigationScheduler): 40522 (WebCore::NavigationScheduler::~NavigationScheduler): 40523 (WebCore::NavigationScheduler::redirectScheduledDuringLoad): 40524 (WebCore::NavigationScheduler::locationChangePending): 40525 (WebCore::NavigationScheduler::clear): 40526 (WebCore::NavigationScheduler::scheduleRedirect): 40527 (WebCore::NavigationScheduler::mustLockBackForwardList): 40528 (WebCore::NavigationScheduler::scheduleLocationChange): 40529 (WebCore::NavigationScheduler::scheduleFormSubmission): 40530 (WebCore::NavigationScheduler::scheduleRefresh): 40531 (WebCore::NavigationScheduler::scheduleHistoryNavigation): 40532 (WebCore::NavigationScheduler::timerFired): 40533 (WebCore::NavigationScheduler::schedule): 40534 (WebCore::NavigationScheduler::startTimer): 40535 (WebCore::NavigationScheduler::cancel): 40536 * loader/NavigationScheduler.h: Added. 40537 * loader/RedirectScheduler.cpp: Removed. 40538 * loader/RedirectScheduler.h: Removed. 40539 * loader/SubframeLoader.cpp: 40540 (WebCore::SubframeLoader::loadOrRedirectSubframe): 40541 * loader/appcache/ApplicationCacheGroup.cpp: 40542 (WebCore::ApplicationCacheGroup::selectCache): 40543 * page/Frame.cpp: 40544 (WebCore::Frame::Frame): 40545 * page/Frame.h: 40546 (WebCore::Frame::navigationScheduler): 40547 * page/History.cpp: 40548 (WebCore::History::back): 40549 (WebCore::History::forward): 40550 (WebCore::History::go): 40551 * page/XSSAuditor.cpp: 40552 (WebCore::XSSAuditor::findInRequest): 40553 40554 2010-10-04 Adam Barth <abarth (a] webkit.org> 40555 40556 Reviewed by Sam Weinig. 40557 40558 Remove ENABLE_SANDBOX 40559 https://bugs.webkit.org/show_bug.cgi?id=47032 40560 40561 I'm not sure there's a reason for this to be behind a compile flag 40562 anymore. 40563 40564 * Configurations/FeatureDefines.xcconfig: 40565 * GNUmakefile.am: 40566 * features.pri: 40567 * html/HTMLIFrameElement.cpp: 40568 (WebCore::parseSandboxAttribute): 40569 (WebCore::HTMLIFrameElement::parseMappedAttribute): 40570 40571 2010-10-04 Huahui Wu <mediadependent (a] gmail.com> 40572 40573 Reviewed by Darin Adler. 40574 40575 Fix a compiler error for ANDROID introduced by bug 45221. 40576 https://bugs.webkit.org/show_bug.cgi?id=47095 40577 40578 It's a small fix for a compiler error, so there is no new test. 40579 40580 * platform/android/PlatformTouchEventAndroid.cpp: 40581 (WebCore::PlatformTouchEvent::PlatformTouchEvent): 40582 40583 2010-10-04 Chris Fleizach <cfleizach (a] apple.com> 40584 40585 Reviewed by Beth Dakin. 40586 40587 AX: doAXRangeForLine does not work 40588 https://bugs.webkit.org/show_bug.cgi?id=47101 40589 40590 Asking for NSAccessibilityRangeForLine was returning a null range for any line number > 0. 40591 The code was using a SelectionController to extend to the next line. Rather than change the implementation 40592 of that core functionality, it is cleaner to use endOfLine to find the end of the line. 40593 40594 Test: platform/mac/accessibility/range-for-line-textarea.html 40595 40596 * accessibility/AccessibilityRenderObject.cpp: 40597 (WebCore::AccessibilityRenderObject::doAXRangeForLine): 40598 40599 2010-10-04 Brent Fulgham <bfulgham (a] webkit.org> 40600 40601 Unreviewed, build fix for r68951. 40602 40603 Add stub implementation for ProxyServer logic. 40604 40605 * WebCore.vcproj/WebCore.vcproj: Add new WinCairo file. 40606 * WebCore/platform/network/curl/ProxyServerCurl.cpp: Added 40607 40608 2010-10-04 Alexey Proskuryakov <ap (a] apple.com> 40609 40610 Reviewed by Adam Barth. 40611 40612 https://bugs.webkit.org/show_bug.cgi?id=47035 40613 Application cache selection algorithm should only be invoked after navigation 40614 40615 Tests: http/tests/appcache/document-write-html-element-2.html 40616 http/tests/appcache/document-write-html-element.html 40617 http/tests/appcache/insert-html-element-with-manifest-2.html 40618 http/tests/appcache/insert-html-element-with-manifest.html 40619 40620 * dom/DocumentParser.cpp: (WebCore::DocumentParser::DocumentParser): 40621 * dom/DocumentParser.h: 40622 (WebCore::DocumentParser::setDocumentWasLoadedAsPartOfNavigation): 40623 (WebCore::DocumentParser::documentWasLoadedAsPartOfNavigation): 40624 Track whether the document being parsed is being loaded as part of navigation. 40625 40626 * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::insertedByParser): Only run the 40627 cache selection algorithm if the document is being loaded as part of navigation. We don't 40628 want to switch associated appcache is someone document.writes <html manifest=...>. 40629 40630 * html/HTMLHtmlElement.h: We need to differentiate between parsing and DOM manipulation, so 40631 this code can't be in HTMLHtmlElement::insertedIntoDocument(). 40632 40633 * dom/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::startElementNs): 40634 * dom/XMLDocumentParserQt.cpp: (WebCore::XMLDocumentParser::parseStartElement): 40635 * html/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure): 40636 * html/MediaDocument.cpp: (WebCore::MediaDocumentParser::createDocumentStructure): 40637 * html/PluginDocument.cpp: (WebCore::PluginDocumentParser::createDocumentStructure): 40638 * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML): 40639 Check for manifest attribute in cases specified by HTML5. 40640 40641 * html/parser/HTMLConstructionSite.h: Removed unused insertHTMLHtmlElement(). 40642 40643 * loader/DocumentWriter.cpp: (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation): 40644 * loader/DocumentWriter.h: 40645 Forward this call to DocumentParser, since DocumentWriter is supposed to encapsulate it. 40646 40647 * loader/FrameLoader.cpp: (WebCore::FrameLoader::receivedFirstData): Receiving data from 40648 loader means being loaded as part of navigation. This notion is used in HTML5 without a rigorous 40649 definition that I could find - this seems to be a meaningful formalization. 40650 40651 2010-10-04 David Hyatt <hyatt (a] apple.com> 40652 40653 Reviewed by Dan Bernstein. 40654 40655 https://bugs.webkit.org/show_bug.cgi?id=47100 40656 40657 Convert clearFloats() to be block-flow-aware. Helpers that it calls have not been patched though. 40658 40659 * rendering/RenderBlock.cpp: 40660 (WebCore::RenderBlock::clearFloats): 40661 * rendering/RenderBlock.h: 40662 (WebCore::RenderBlock::logicalTopForFloat): 40663 (WebCore::RenderBlock::logicalLeftForFloat): 40664 (WebCore::RenderBlock::logicalWidthForFloat): 40665 40666 2010-10-04 Diego Gonzalez <diegohcg (a] webkit.org> 40667 40668 Reviewed by Kenneth Rohde Christiansen. 40669 40670 [Qt] Hook up DeviceOrientation data for Qt support 40671 https://bugs.webkit.org/show_bug.cgi?id=47052 40672 40673 Get DeviceOrientation necessary data via Qt mobility library 40674 using a provider class. 40675 40676 * WebCore.pro: 40677 40678 2010-10-01 Victoria Kirst <vrk (a] google.com> 40679 40680 Reviewed by James Robinson. 40681 40682 Fixing crash when audio media player is destructed 40683 https://bugs.webkit.org/show_bug.cgi?id=47020 40684 40685 Adds assert for LayerRenderer in destructor. 40686 40687 * platform/graphics/chromium/VideoLayerChromium.cpp: 40688 (WebCore::VideoLayerChromium::~VideoLayerChromium): 40689 40690 2010-10-04 Pavel Podivilov <podivilov (a] chromium.org> 40691 40692 Reviewed by Pavel Feldman. 40693 40694 Web Inspector: do not show breakpoint in front-end if it was not set in v8 40695 https://bugs.webkit.org/show_bug.cgi?id=46749 40696 40697 * bindings/v8/DebuggerScript.js: 40698 (): 40699 40700 2010-10-04 Alejandro G. Castro <alex (a] igalia.com> 40701 40702 Reviewed by Martin Robinson. 40703 40704 [cairo] Context shadow modifies the data of the surface without 40705 flushing and marking as dirty 40706 https://bugs.webkit.org/show_bug.cgi?id=47079 40707 40708 Added the cairo_surface_flush and cairo_surface_mark_dirty before 40709 and after modifying the image pixels directly. 40710 40711 * platform/graphics/cairo/ContextShadowCairo.cpp: 40712 (WebCore::ContextShadow::endShadowLayer): 40713 40714 2010-10-04 Alejandro G. Castro <alex (a] igalia.com> 40715 40716 Reviewed by Xan Lopez. 40717 40718 Crashed caused by missing OwnPtrCairo include, for more 40719 information check the issue in the bug 46268. 40720 40721 * platform/graphics/cairo/CairoUtilities.cpp: 40722 40723 2010-10-04 Alejandro G. Castro <alex (a] igalia.com> 40724 40725 Reviewed by Martin Robinson. 40726 40727 [cairo] Move some cairo functions to the CairoUtilities 40728 https://bugs.webkit.org/show_bug.cgi?id=47076 40729 40730 Moved some cairo functions to the CairoUtilities so we can use 40731 them outside GraphicsContextCairo. 40732 40733 * platform/graphics/cairo/CairoUtilities.cpp: 40734 (WebCore::appendPathToCairoContext): 40735 (WebCore::setPathOnCairoContext): 40736 (WebCore::appendWebCorePathToCairoContext): 40737 (WebCore::toCairoOperator): 40738 (WebCore::drawPatternToCairoContext): 40739 * platform/graphics/cairo/CairoUtilities.h: 40740 * platform/graphics/cairo/GraphicsContextCairo.cpp: 40741 * platform/graphics/cairo/ImageCairo.cpp: 40742 (WebCore::Image::drawPattern): 40743 40744 2010-10-04 podivilov (a] chromium.org <podivilov (a] chromium.org> 40745 40746 Reviewed by Yury Semikhatsky. 40747 40748 Web Inspector: implement pausing on event listeners (back-end part) 40749 https://bugs.webkit.org/show_bug.cgi?id=46624 40750 40751 * bindings/js/ScriptDebugServer.cpp: 40752 (WebCore::ScriptDebugServer::setPauseOnNextStatement): 40753 * bindings/js/ScriptDebugServer.h: 40754 * bindings/v8/ScriptDebugServer.cpp: 40755 (WebCore::ScriptDebugServer::setPauseOnNextStatement): 40756 * bindings/v8/ScriptDebugServer.h: 40757 * dom/Node.cpp: 40758 (WebCore::Node::dispatchGenericEvent): 40759 * inspector/InspectorController.cpp: 40760 (WebCore::InspectorController::didCommitLoad): 40761 (WebCore::InspectorController::setNativeBreakpoint): 40762 (WebCore::InspectorController::removeNativeBreakpoint): 40763 (WebCore::InspectorController::shouldBreakOnEvent): 40764 (WebCore::InspectorController::shouldBreakOnXMLHttpRequest): 40765 * inspector/InspectorController.h: 40766 * inspector/InspectorDebuggerAgent.cpp: 40767 (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent): 40768 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement): 40769 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement): 40770 (WebCore::InspectorDebuggerAgent::pause): 40771 (WebCore::InspectorDebuggerAgent::didContinue): 40772 (WebCore::InspectorDebuggerAgent::breakProgram): 40773 * inspector/InspectorDebuggerAgent.h: 40774 * inspector/InspectorInstrumentation.cpp: 40775 (WebCore::eventHasListeners): 40776 (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl): 40777 (WebCore::InspectorInstrumentation::instrumentDidDispatchEventImpl): 40778 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl): 40779 * inspector/InspectorInstrumentation.h: 40780 (WebCore::InspectorInstrumentation::instrumentWillDispatchEvent): 40781 (WebCore::InspectorInstrumentation::instrumentDidDispatchEvent): 40782 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest): 40783 * inspector/InspectorTimelineAgent.cpp: 40784 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 40785 * inspector/InspectorTimelineAgent.h: 40786 (WebCore::InspectorTimelineAgent::id): 40787 * inspector/front-end/CallStackSidebarPane.js: 40788 40789 2010-10-04 Pavel Feldman <pfeldman (a] chromium.org> 40790 40791 Reviewed by Yury Semikhatsky. 40792 40793 Web Inspector: add total bar to the network panel. 40794 https://bugs.webkit.org/show_bug.cgi?id=47081 40795 40796 * English.lproj/localizedStrings.js: 40797 * inspector/front-end/ConsoleView.js: 40798 (WebInspector.ConsoleView.createDividerElement): 40799 * inspector/front-end/DataGrid.js: 40800 (WebInspector.DataGrid.prototype.removeChild): 40801 (WebInspector.DataGrid.prototype.sortNodes): 40802 (WebInspector.DataGrid.prototype._clickInHeaderCell): 40803 (WebInspector.DataGrid.prototype.markColumnAsSortedBy): 40804 * inspector/front-end/NetworkPanel.js: 40805 (WebInspector.NetworkPanel): 40806 (WebInspector.NetworkPanel.prototype.resize): 40807 (WebInspector.NetworkPanel.prototype._positionSummaryBar): 40808 (WebInspector.NetworkPanel.prototype._createTimelineGrid): 40809 (WebInspector.NetworkPanel.prototype._createSortingFunctions): 40810 (WebInspector.NetworkPanel.prototype._sortItems): 40811 (WebInspector.NetworkPanel.prototype._sortByTimeline): 40812 (WebInspector.NetworkPanel.prototype._createFilterStatusBarItems): 40813 (WebInspector.NetworkPanel.prototype._createSummaryBar): 40814 (WebInspector.NetworkPanel.prototype._updateSummaryBar): 40815 (WebInspector.NetworkPanel.prototype._updateFilter): 40816 (WebInspector.NetworkPanel.prototype.show): 40817 (WebInspector.NetworkPanel.prototype.refresh): 40818 (WebInspector.NetworkPanel.prototype.reset): 40819 (WebInspector.NetworkDataGridNode.SizeComparator): 40820 (WebInspector.NetworkDataGridNode.ResourcePropertyComparator): 40821 (WebInspector.NetworkTotalGridNode): 40822 (WebInspector.NetworkTotalGridNode.prototype.createCells): 40823 * inspector/front-end/ResourcesPanel.js: 40824 (WebInspector.ResourcesPanel.prototype.createFilterPanel): 40825 * inspector/front-end/inspector.css: 40826 (.scope-bar-divider): 40827 * inspector/front-end/networkPanel.css: 40828 (.network-timeline-grid): 40829 (.network-summary-bar): 40830 (.network-summary-bar-bottom): 40831 (.data-grid td .network-summary-bar): 40832 40833 2010-09-28 Luiz Agostini <luiz.agostini (a] openbossa.org> 40834 40835 Reviewed by Kenneth Rohde Christiansen. 40836 40837 Viewport data change notifications 40838 https://bugs.webkit.org/show_bug.cgi?id=46755 40839 40840 Regarding viewport meta tags, what matters for browser developers is to know when the viewport data has 40841 changed and its current value. Viewport data belongs to the document, but it is useful to keep the current 40842 viewport data in Page as a reference, to be able to send notifications only when the current viewport 40843 has changed. 40844 40845 * dom/Document.cpp: 40846 (WebCore::Document::processViewport): 40847 (WebCore::Document::setInPageCache): 40848 * dom/ViewportArguments.h: 40849 (WebCore::ViewportArguments::operator==): 40850 * html/HTMLBodyElement.cpp: 40851 (WebCore::HTMLBodyElement::HTMLBodyElement): 40852 * page/Chrome.cpp: 40853 (WebCore::Chrome::viewportDataChanged): 40854 * page/Chrome.h: 40855 * page/ChromeClient.h: 40856 (WebCore::ChromeClient::viewportDataChanged): 40857 * page/Page.cpp: 40858 (WebCore::Page::updateViewportArguments): 40859 * page/Page.h: 40860 (WebCore::Page::viewportArguments): 40861 40862 2010-10-03 Kent Tamura <tkent (a] chromium.org> 40863 40864 Unreviewed, build fix for r68996. 40865 40866 * html/BaseDateAndTimeInputType.cpp: Includes <wtf/MathExtras.h> for isfinite(). 40867 * html/MonthInputType.cpp: ditto. 40868 * html/NumberInputType.cpp: ditto. 40869 * html/RangeInputType.cpp: ditto. 40870 40871 2010-10-03 Kent Tamura <tkent (a] chromium.org> 40872 40873 Reviewed by Dimitri Glazkov. 40874 40875 Refactor HTMLInputElement: Move parseToDouble() and 40876 parseToDateComponents() to InputType. 40877 https://bugs.webkit.org/show_bug.cgi?id=46965 40878 40879 Introduce BaseDateAndTimeInputType, which is a super class of 40880 date, datetime, datetime-local, month, time, and week types. 40881 40882 No new tests. Just a refactoring. 40883 40884 * Android.mk: Add BaseDateAndTimeInputType. 40885 * CMakeLists.txt: ditto. 40886 * GNUmakefile.am: ditto. 40887 * WebCore.gypi: ditto. 40888 * WebCore.pro: ditto. 40889 * WebCore.vcproj/WebCore.vcproj: ditto. 40890 * WebCore.xcodeproj/project.pbxproj: ditto. 40891 * html/BaseDateAndTimeInputType.cpp: Added. 40892 (WebCore::BaseDateAndTimeInputType::parseToDouble): 40893 (WebCore::BaseDateAndTimeInputType::parseToDateComponents): 40894 * html/BaseDateAndTimeInputType.h: Added. 40895 (WebCore::BaseDateAndTimeInputType::BaseDateAndTimeInputType): 40896 * html/DateInputType.cpp: 40897 (WebCore::DateInputType::parseToDateComponentsInternal): 40898 * html/DateInputType.h: 40899 (WebCore::DateInputType::DateInputType): 40900 * html/DateTimeInputType.cpp: 40901 (WebCore::DateTimeInputType::parseToDateComponentsInternal): 40902 * html/DateTimeInputType.h: 40903 (WebCore::DateTimeInputType::DateTimeInputType): 40904 * html/DateTimeLocalInputType.cpp: 40905 (WebCore::DateTimeLocalInputType::parseToDateComponentsInternal): 40906 * html/DateTimeLocalInputType.h: 40907 (WebCore::DateTimeLocalInputType::DateTimeLocalInputType): 40908 * html/HTMLInputElement.cpp: Replace parseToD* calls with m_inputType->parseToD*. 40909 (WebCore::HTMLInputElement::typeMismatch): 40910 (WebCore::HTMLInputElement::rangeUnderflow): 40911 (WebCore::HTMLInputElement::rangeOverflow): 40912 (WebCore::HTMLInputElement::minimum): 40913 (WebCore::HTMLInputElement::maximum): 40914 (WebCore::HTMLInputElement::stepBase): 40915 (WebCore::HTMLInputElement::stepMismatch): 40916 (WebCore::HTMLInputElement::applyStep): 40917 (WebCore::HTMLInputElement::valueAsDate): 40918 (WebCore::HTMLInputElement::valueAsNumber): 40919 (WebCore::HTMLInputElement::handleKeyEventForRange): 40920 (WebCore::HTMLInputElement::stepUpFromRenderer): 40921 * html/HTMLInputElement.h: 40922 * html/InputType.cpp: 40923 (WebCore::InputType::parseToDouble): 40924 (WebCore::InputType::parseToDateComponents): 40925 * html/InputType.h: 40926 * html/MonthInputType.cpp: 40927 (WebCore::MonthInputType::parseToDouble): 40928 (WebCore::MonthInputType::parseToDateComponentsInternal): 40929 * html/MonthInputType.h: 40930 (WebCore::MonthInputType::MonthInputType): 40931 * html/NumberInputType.cpp: 40932 (WebCore::NumberInputType::parseToDouble): 40933 * html/NumberInputType.h: 40934 * html/RangeInputType.cpp: 40935 (WebCore::RangeInputType::parseToDouble): 40936 * html/RangeInputType.h: 40937 * html/TimeInputType.cpp: 40938 (WebCore::TimeInputType::parseToDateComponentsInternal): 40939 * html/TimeInputType.h: 40940 (WebCore::TimeInputType::TimeInputType): 40941 * html/WeekInputType.cpp: 40942 (WebCore::WeekInputType::parseToDateComponentsInternal): 40943 * html/WeekInputType.h: 40944 (WebCore::WeekInputType::WeekInputType): 40945 40946 2010-10-03 Adam Barth <abarth (a] webkit.org> 40947 40948 Reviewed by Holger Freyther. 40949 40950 ASSERT(m_state = Open); is bad news bears 40951 https://bugs.webkit.org/show_bug.cgi?id=47057 40952 40953 Added by ap (review by darin) in http://trac.webkit.org/changeset/50951 40954 Too bad the compiler doesn't catch these errors. I don't believe this 40955 is possible to test. 40956 40957 * platform/network/cf/SocketStreamHandleCFNet.cpp: 40958 (WebCore::SocketStreamHandle::writeStreamCallback): 40959 40960 2010-10-03 Adam Barth <abarth (a] webkit.org> 40961 40962 Reviewed by Holger Freyther. 40963 40964 All the WebSocket tests crash 40965 https://bugs.webkit.org/show_bug.cgi?id=47056 40966 40967 More code that tries to hold onto temporaries with references. 40968 40969 * websockets/WebSocketChannel.cpp: 40970 (WebCore::WebSocketChannel::didOpen): 40971 40972 2010-10-03 Adam Barth <abarth (a] webkit.org> 40973 40974 Reviewed by Holger Freyther. 40975 40976 All the WebSocket tests crash 40977 https://bugs.webkit.org/show_bug.cgi?id=47055 40978 40979 This code attempts to hold onto temporary objects using references. 40980 That doesn't work in C++. Instead, we need to actually store the 40981 objects somewhere. 40982 40983 * bindings/js/JSWebSocketCustom.cpp: 40984 (WebCore::JSWebSocketConstructor::constructJSWebSocket): 40985 40986 2010-10-02 Diego Gonzalez <diegohcg (a] webkit.org> 40987 40988 Reviewed by Kenneth Rohde Christiansen. 40989 40990 [Qt] Provide Qt support for DeviceMotion/Orientation clients 40991 https://bugs.webkit.org/show_bug.cgi?id=47051 40992 40993 Add Qt DeviceMotion/Orientation dummy clients in build system. 40994 40995 * WebCore.pro: 40996 40997 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 40998 40999 Reviewed by Dirk Schulze. 41000 41001 Rewrite SVG text layout code 41002 https://bugs.webkit.org/show_bug.cgi?id=45532 41003 41004 Modernize SVG text layout engine, split the layout process into three phases, so that each results can be cached (which will be done in a follow-up patch). 41005 41006 Phase #1) - SVGTextLayoutAttributesBuilder 41007 ------------------------------------------ 41008 41009 Parse x/y/dx/dy/rotate values of the <text> subtree (<text x="30 40">A<tspan>B<tspan x="50">C</tspan></tspan></text>) 41010 This is done by SVGTextLayoutAttributesBuilder. It builds a SVGTextLayoutAttributes object for each RenderSVGInlineText renderer, and stores it there. 41011 Phase #1 is started from RenderSVGText::layout(), before RenderBlockLineLayout is laying out the inline children, and thus before the InlineBox tree is created. 41012 41013 Now we know which character has an associated absolute x or y position, denoting the start of a new text chunk. Whenever we encounter a new text chunk 41014 RenderBlockLineLayout should create a new SVGInlineTextBox. This is very important, as BiDi reordering shouldn't happen across text chunks, as well as ligature detection. 41015 41016 The text chunk concept is now merged right into the InlineBox tree, so we don't need to hack around the lack of that, as done for the previous years. 41017 41018 Phase #2) - SVGTextLayoutEngine 41019 ------------------------------------------ 41020 41021 RenderSVGText::layout() calls RenderBlock::layoutInlineChildren() right after phase #1 ends. The InlineBox tree is created. During that process findNextLineBreak() 41022 decides how to split up the text into InlineTextBoxes. It has already been patched, to ask RenderSVGInlineText::characterStartsNewTextChunk(int position), whether the 41023 current character should go in a new SVGInlineTextBox or not. This requires that phase #1 already stored these information in the RenderSVGInlineText objects. 41024 41025 For each <text> object a SVGRootInlineBox is created (in constructLine()) and all child boxes are added. After that SVGRootInlineBox::computePerCharacterLayoutInformation() 41026 is called (unlike HTML text, which splits the vertical & horizontal layout in two phases, it's just one single phase for SVG). This function invokes SVGTextLayoutEngine 41027 and starts phase #2 of the layout process. 41028 41029 SVGTextLayoutEngine lays out the content of each SVGInlineTextBox either on a line or a path. It contains all the logic handling, alignment-baseline, dominant-baseline, 41030 letter-spacing, word-spacing, kerning, glyph-orientation-(horizontal|vertical), rotation, etc. etc. 41031 41032 As result it generates a set of SVGTextFragment objects which are stored in each SVGInlineTextBox. Each SVGTextFragment is a portion of text that can be rendered/measured 41033 at once. Some examples to illustrate what's going on: 41034 41035 <text x="20">ABCD</text>: 41036 - SVGInlineTextBox 41037 - SVGTextFragment, start 0 length 4, "ABCD" (x=20) 41038 41039 <text x="20 100">ABCD</text>: 41040 - SVGInlineTextBox 41041 - SVGTextFragment, start 0 length 1, "A" (x=20) 41042 - SVGInlineTextBox 41043 - SVGTextFragment, start 0 length 1, "B" (x=100) 41044 - SVGTextFragment, start 1 length 2, "CD" (x=100 + advance_of_last) 41045 41046 <text><textPath xlink:href="#somePath">ABCD</textPath></text>: 41047 - SVGInlineTextBox 41048 - SVGTextFragment, start 0 length 1, "A" (rotated!) 41049 - SVGTextFragment, start 1 length 1, "B" (rotated!) 41050 - SVGTextFragment, start 2 length 1, "C" (rotated!) 41051 - SVGTextFragment, start 3 length 1, "D" (rotated!) 41052 41053 <text x="0 50 100">A<tspan>B</tspan>C</text> 41054 - SVGInlineTextBox 41055 - SVGTextFragment, start 0 length 1, "A" (x=0) 41056 - SVGInlineFlowBox 41057 - SVGInlineTextBox 41058 - SVGTextFragment, start 0 length 1, "B" (x=50) 41059 - SVGInlineTextBox 41060 - SVGTextFragment, start 0 length 1, "C" (x=100) 41061 41062 When painting text SVGInlineTextBox just walks its fragments and paints them. Text selection works the same. 41063 All text measurements (width/height etc.) have already been done in phase #2 and aren't required anymore while painting/selecting. 41064 This is one of the main benefits of the new text layout engine, painting & selection is cheap now, compared to the layout process. 41065 41066 We're now doing phase #1 everytime RenderSVGText::layout() is called. This is not necessary, we only have to recompute these information 41067 if the x/y/dx/dy or rotate list of an element in the <text> subtree changes or the text content itself -> this will be done in a follow-up patch. 41068 It's likely that we'll also find ways to skip phase #2 in certain situations. 41069 41070 Phase #3) - SVGTextChunkBuilder 41071 ------------------------------------------ 41072 41073 After phase #2 finished, we can post-process the text fragments. Certain operations have to be applied on a "per chunk" basis. 41074 text-anchor should be applied to individual text chunks, as well as textLength corrections (lengthAdjust="spacing" / lengthAdjust="spacingAndGlyphs"). 41075 41076 SVGTextChunkBuilder just walks the SVGInlineTextBox, and collects all boxes belonging to a certain chunk. For each of the chunks all fragments 41077 are post-processed. For instance for text-anchor="middle", all x positions of all fragments are shifted by -fragmentWidth/2 (for horizonal text). 41078 41079 After phase #1 - #3 finished, SVGRootInlineBox::computePerCharacterLayoutInformation() utilizies the stored SVGTextFragments to lay out all child 41080 boxes in the InlineBox tree (setWidth/Height, etc.), the size and position of the SVGRootInlineBox and it's parent RenderSVGText object. 41081 41082 This should give interessted readers a good summary of how the new text layout engine works. 41083 See LayoutTests/ChangeLog for more details on test progression. 41084 41085 Tests: svg/custom/text-rotation.svg 41086 svg/custom/text-x-dy-lists.svg 41087 41088 * Android.mk: Add SVGTextLayoutEngine.* / SVGTextChunkBuilder.* to build. Remove SVGCharacterData.* / SVGTextChunkLayoutInfo.* / SVGTextLayoutUtilities.* from build. 41089 * CMakeLists.txt: Ditto. 41090 * GNUmakefile.am: Ditto. 41091 * WebCore.gypi: Ditto. 41092 * WebCore.pro: Ditto. 41093 * WebCore.vcproj/WebCore.vcproj: Ditto. 41094 * WebCore.xcodeproj/project.pbxproj: Ditto. 41095 * rendering/InlineBox.h: 41096 (WebCore::InlineBox::isSVGInlineFlowBox): Add helper function to identify SVGInlineFlowBoxes. The variants for SVGInlineTextBox etc. already exist. 41097 * rendering/InlineTextBox.h: Devirtualize selectionStartEnd, SVG is no longer overriding it. 41098 * rendering/RenderSVGAllInOne.cpp: removes 41099 * rendering/RenderText.cpp: 41100 (WebCore::RenderText::setTextInternal): Remove SVG specific hacks, moved to RenderSVGInlineText. 41101 * rendering/SVGCharacterData.cpp: Removed. 41102 * rendering/SVGCharacterData.h: Removed. 41103 * rendering/SVGCharacterLayoutInfo.cpp: Removed. 41104 * rendering/SVGCharacterLayoutInfo.h: Removed. 41105 * rendering/SVGRenderTreeAsText.cpp: Hack DRT output to be somewhat compatible with the current output, the plan is to change it completly after this patch. 41106 (WebCore::writeRenderSVGTextBox): 41107 (WebCore::writeSVGInlineTextBox): 41108 * rendering/SVGTextChunkLayoutInfo.cpp: Removed. 41109 * rendering/SVGTextChunkLayoutInfo.h: Removed. 41110 * rendering/SVGTextLayoutUtilities.cpp: Removed. 41111 * rendering/SVGTextLayoutUtilities.h: Removed. 41112 * rendering/style/RenderStyle.cpp: 41113 (WebCore::RenderStyle::diff): Only return immediately if SVGRenderStyle::diff produced StyleDifferenceLayout, it it's sth. else be sure to ask RenderStyle itself what to do. 41114 * rendering/style/SVGRenderStyle.h: 41115 (WebCore::SVGRenderStyle::isVerticalWritingMode): New helper method, moved from SVGTextLayoutUtilities. 41116 * rendering/svg/RenderSVGInlineText.cpp: 41117 (WebCore::applySVGWhitespaceRules): Moved from RenderText into a SVG specific place. 41118 (WebCore::RenderSVGInlineText::RenderSVGInlineText): Use applySVGWhitespaceRules on the incoming text. 41119 (WebCore::RenderSVGInlineText::styleDidChange): Only apply SVG white space rules, when using xml:space="preserve", otherwhise the constructor already handled it. 41120 (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Create text chunks for absolute y values as well, SVG 1.1 2nd Edition demands that. 41121 (WebCore::RenderSVGInlineText::positionForPoint): New function operating on all SVGInlineTextBoxes and their SVGTextFragments. 41122 * rendering/svg/RenderSVGInlineText.h: 41123 (WebCore::RenderSVGInlineText::layoutAttributes): Stores the layout attributes generated by SVGTextLayoutAttributesBuilder. 41124 (WebCore::toRenderSVGInlineText): New helper methods for casting. 41125 * rendering/svg/RenderSVGText.cpp: 41126 (WebCore::RenderSVGText::layout): Add comment, that SVGTextLayoutAttributesBuilder is just phase one of the layout process. 41127 (WebCore::RenderSVGText::positionForPoint): Simplified implementation for SVGs needs. 41128 * rendering/svg/RenderSVGText.h: 41129 * rendering/svg/SVGInlineFlowBox.cpp: 41130 (WebCore::SVGInlineFlowBox::paintSelectionBackground): Seperated selection background drawing from actual text rendering, to make sure selection is always in background for SVG. 41131 (WebCore::SVGInlineFlowBox::paint): Call computetextMatchMarkerRectForRenderer, before painting. 41132 (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer): New method. 41133 * rendering/svg/SVGInlineFlowBox.h: 41134 (WebCore::SVGInlineFlowBox::isSVGInlineFlowBox): 41135 * rendering/svg/SVGInlineTextBox.cpp: Completly rewritten, operates on SVGTextFragments, produced by the SVGTextLayoutEngine. Whole new concept, compared to the old hack. 41136 * rendering/svg/SVGInlineTextBox.h: 41137 (WebCore::SVGInlineTextBox::clearTextFragments): Only used by SVGTextLayoutEngine, to clean up previously computed fragments. 41138 (WebCore::SVGInlineTextBox::textFragments): Offers access to the fragments in the box. 41139 (WebCore::SVGInlineTextBox::startsNewTextChunk): Does this box start a new text chunk? 41140 (WebCore::SVGInlineTextBox::setStartsNewTextChunk): SVGTextLayoutEngine marks this box, if it starts a new text chunk. 41141 * rendering/svg/SVGRootInlineBox.cpp: Remove old code regarding text chunk parts. 41142 (WebCore::SVGRootInlineBox::paint): Selection is now painted before text, to assure it's really in the background. 41143 (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Use new SVGTextLayoutEngine. 41144 (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes): Feed SVGTextLayoutEngine with SVGInlineTextBoxes, detect the begin/end of path layouts. 41145 (WebCore::SVGRootInlineBox::layoutChildBoxes): Use new isSVGInlineTextBox() helper method. 41146 (WebCore::SVGRootInlineBox::closestLeafChildForPosition): Simplified version for SVG. 41147 * rendering/svg/SVGRootInlineBox.h: Remove access to text chunks, they're now longer stored in the SVGRootInlineBox. 41148 * rendering/svg/SVGTextChunk.cpp: s/SVGTextChunkNew/SVGTextChunk/ 41149 * rendering/svg/SVGTextChunk.h: 41150 * rendering/svg/SVGTextChunkBuilder.cpp: Added. 41151 * rendering/svg/SVGTextChunkBuilder.h: Added. 41152 * rendering/svg/SVGTextLayoutAttributes.cpp: Constify dump() method. 41153 * rendering/svg/SVGTextLayoutAttributes.h: 41154 (WebCore::SVGTextLayoutAttributes::textMetricsValues): 41155 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewritten, consume less memory, while building the layout attributes. 41156 * rendering/svg/SVGTextLayoutAttributesBuilder.h: 41157 * rendering/svg/SVGTextLayoutEngine.cpp: Added. 41158 * rendering/svg/SVGTextLayoutEngine.h: Added. 41159 * rendering/svg/SVGTextQuery.cpp: Rewritten to deal with the new SVGTextFragment/SVGTextLayoutAttributes logic. 41160 * rendering/svg/SVGTextQuery.h: 41161 41162 2010-10-02 Alpha Lam <hclam (a] chromium.org> 41163 41164 Build fix. Not reviewed. 41165 41166 An adhoc fix for a crash found by reliability bot. This will make the 41167 reliability bot happy. A proper fix is pending commit. 41168 41169 * platform/graphics/chromium/VideoLayerChromium.cpp: 41170 (WebCore::VideoLayerChromium::~VideoLayerChromium): 41171 41172 2010-10-01 Ryosuke Niwa <rniwa (a] webkit.org> 41173 41174 Reviewed by Darin Adler. 41175 41176 FormatBlockCommand and IndentOutdentCommand should use the same code to iterate paragraphs 41177 https://bugs.webkit.org/show_bug.cgi?id=46840 41178 41179 Added ApplyBlockElementCommand, which is an abstract class inherited by FormatBlockCommand 41180 and IndentOutdentCommand. It is intended to be inherited by InsertListCommand as well. 41181 41182 ApplyBlockElementCommand's doApply verifies the current selection and exits early 41183 if it's invalid or orphaned or if the current selection is outside editable region. 41184 It then calls formatSelection to apply the block element after which doApply restores the selection. 41185 formatSelection iterates through paragraphs and calls formatParagraph, a pure virtual function 41186 implemented by FormatBlockCommand and IndentOutdentCommand, on each paragraph. 41187 41188 No new tests are added since this is a refactoring. 41189 41190 * Android.mk: Added ApplyBlockElementCommand.cpp. 41191 * CMakeLists.txt: Ditto. 41192 * GNUmakefile.am: Added ApplyBlockElementCommand.cpp and ApplyBlockElementCommand.h. 41193 * WebCore.gypi: Ditto. 41194 * WebCore.pro: Ditto. 41195 * WebCore.xcodeproj/project.pbxproj: Ditto. 41196 * editing/ApplyBlockElementCommand.cpp: Added. 41197 (WebCore::countParagraphs): Moved from IndentOutdentCommand.cpp 41198 (WebCore::ApplyBlockElementCommand::ApplyBlockElementCommand): Added. 41199 (WebCore::ApplyBlockElementCommand::doApply): Moved from IndentOutdentCommand::doApply. 41200 (WebCore::ApplyBlockElementCommand::formatSelection): Moved from IndentOutdentCommand::indentRegion. 41201 (WebCore::ApplyBlockElementCommand::createBlockElement): Added. 41202 (WebCore::ApplyBlockElementCommand::splitTextNodes): Moved from IndentOutdentCommand::splitTextNodes. 41203 * editing/ApplyBlockElementCommand.h: Added. 41204 * editing/EditingAllInOne.cpp: 41205 * editing/EditorCommand.cpp: 41206 (WebCore::executeFormatBlock): 41207 * editing/FormatBlockCommand.cpp: Removed doApply. 41208 (WebCore::FormatBlockCommand::FormatBlockCommand): Calls ApplyBlockElementCommand's constructor. 41209 (WebCore::FormatBlockCommand::formatParagraph): Renamed from doApplyForSingleParagraph. 41210 * editing/FormatBlockCommand.h: FormatBlockCommand inherits from ApplyBlockElementCommand. 41211 (WebCore::FormatBlockCommand::create): Uses QualifiedName for the tag name instead of AtomicString. 41212 * editing/IndentOutdentCommand.cpp: Removed doApply, indentIntoBlockquote, and splitTextNodes. 41213 (WebCore::IndentOutdentCommand::IndentOutdentCommand): Calls ApplyBlockElementCommand's constructor. 41214 (WebCore::IndentOutdentCommand::indentIntoBlockquote): The code to nullify targetBlockquote 41215 when the next paragraph is in a different table cell is moved to ApplyBlockElementCommand::formatSelection. 41216 (WebCore::IndentOutdentCommand::formatSelection): Added. Calls outdentRegion when outdenting. 41217 (WebCore::IndentOutdentCommand::formatParagraph): Added. Calls tryIndentingAsListItem and indentIntoBlockquote. 41218 * editing/IndentOutdentCommand.h: IndentOutdentCommand inherits from ApplyBlockElementCommand. 41219 41220 2010-10-01 Mark Rowe <mrowe (a] apple.com> 41221 41222 Build fix. 41223 41224 Clear the executable bit from a number of source files. 41225 41226 * page/Frame.cpp: 41227 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: 41228 * platform/graphics/win/WKCACFLayerRenderer.cpp: 41229 * platform/graphics/win/WKCACFLayerRenderer.h: 41230 * platform/network/ResourceRawHeaders.h: 41231 * rendering/RenderLayerCompositor.cpp: 41232 * rendering/RenderLayerCompositor.h: 41233 41234 2010-10-01 Martin Robinson <mrobinson (a] igalia.com> 41235 41236 Reviewed by Adam Barth. 41237 41238 [GTK] r68923 broke some plugin tests 41239 https://bugs.webkit.org/show_bug.cgi?id=47040 41240 41241 No longer pass focus and blur events to plugins when the "old" DOM Level 41242 2 DOMFocusIn/DOMFocusOut events occur. r68923 made a change which means 41243 that the DOM Level 3 version is always fired for this event. 41244 41245 No new tests, as this should cause the failing tests to pass. 41246 41247 * plugins/PluginView.cpp: 41248 (WebCore::PluginView::handleEvent): No longer pass focus and blur events to 41249 plugins when DOMFocusIn / DOMFocusOut events occur. 41250 41251 2010-10-01 Anders Carlsson <andersca (a] apple.com> 41252 41253 Reviewed by Sam Weinig. 41254 41255 Plug-ins should have access to the private browsing state. 41256 https://bugs.webkit.org/show_bug.cgi?id=47031 41257 <rdar://problem/8505405> 41258 41259 * page/Page.cpp: 41260 (WebCore::Page::privateBrowsingStateChanged): 41261 When iterating over all widgets, also look for PluginViewBase classes and invoke their 41262 privateBrowsingStateChange member function. 41263 41264 * plugins/PluginViewBase.h: 41265 (WebCore::PluginViewBase::privateBrowsingStateChanged): 41266 Add function. 41267 41268 2010-10-01 Brian Weinstein <bweinstein (a] apple.com> 41269 41270 Build Fix for Windows. 41271 41272 * WebCore.vcproj/WebCore.vcproj: Don't have an empty post-build step, use 41273 WebCoreCommon.vsprops to handle post-build step. 41274 * WebCore.vcproj/WebCoreCommon.vsprops: Set the post-build step to delete 41275 $(WebKitOutputDir)/buildfailed. 41276 41277 2010-10-01 Ragner Magalhaes <ragner.magalhaes (a] openbossa.org> 41278 41279 Reviewed by Kenneth Rohde Christiansen. 41280 41281 [Qt] Segmentation fault during zoom out 41282 https://bugs.webkit.org/show_bug.cgi?id=46984 41283 41284 * platform/qt/QtMobileWebStyle.cpp: 41285 (QtMobileWebStyle::drawChecker): Adjust checkerSize to be greater than or equals to middle. 41286 41287 2010-10-01 Anders Carlsson <andersca (a] apple.com> 41288 41289 Another Qt build fix attempt. 41290 41291 * WebCore.pro: 41292 41293 2010-10-01 David Hyatt <hyatt (a] apple.com> 41294 41295 Reviewed by Dan Bernstein. 41296 41297 https://bugs.webkit.org/show_bug.cgi?id=47021 41298 41299 Patch the floatBottom function and its friends. Rename them and consolidate them to be block-flow-aware. 41300 41301 Nothing testable yet, since most of the float code is still unpatched. 41302 41303 * rendering/RenderBlock.cpp: 41304 (WebCore::RenderBlock::layoutBlock): 41305 (WebCore::RenderBlock::layoutBlockChildren): 41306 (WebCore::RenderBlock::layoutBlockChild): 41307 (WebCore::RenderBlock::positionNewFloats): 41308 (WebCore::RenderBlock::newLine): 41309 (WebCore::RenderBlock::nextFloatLogicalBottomBelow): 41310 (WebCore::RenderBlock::lowestFloatLogicalBottom): 41311 (WebCore::RenderBlock::clearFloats): 41312 (WebCore::RenderBlock::addOverhangingFloats): 41313 (WebCore::RenderBlock::getClearDelta): 41314 * rendering/RenderBlock.h: 41315 (WebCore::RenderBlock::logicalBottomForFloat): 41316 (WebCore::RenderBlock::hasOverhangingFloats): 41317 * rendering/RenderBlockLineLayout.cpp: 41318 (WebCore::RenderBlock::fitBelowFloats): 41319 41320 2010-10-01 Anders Carlsson <andersca (a] apple.com> 41321 41322 Fix typo. 41323 41324 * platform/network/qt/ProxyServerQt.cpp: 41325 (WebCore::proxyServersForURL): 41326 41327 2010-10-01 Anders Carlsson <andersca (a] apple.com> 41328 41329 Add Qt ProxyServer stub. 41330 41331 * WebCore.pro: 41332 * platform/network/qt/ProxyServerQt.cpp: Added. 41333 (WebCore::proxyServersForURL): 41334 41335 2010-10-01 Anders Carlsson <andersca (a] apple.com> 41336 41337 Reviewed by Dan Bernstein. 41338 41339 Add proxy server query function proxyServersForURL and change the Mac plug-in code to use it 41340 https://bugs.webkit.org/show_bug.cgi?id=47022 41341 <rdar://problem/8504712> 41342 41343 * WebCore.exp.in: 41344 Export proxyServersForURL and toString. 41345 41346 * WebCore.vcproj/WebCore.vcproj: 41347 * WebCore.xcodeproj/project.pbxproj: 41348 Add new files. 41349 41350 * platform/network/ProxyServer.cpp: Added. 41351 (WebCore::appendProxyServerString): 41352 (WebCore::toString): 41353 New function that converts a vector of ProxyServers into a PAC style string. 41354 41355 * platform/network/ProxyServer.h: Added. 41356 (WebCore::ProxyServer::ProxyServer): 41357 (WebCore::ProxyServer::type): 41358 (WebCore::ProxyServer::hostName): 41359 (WebCore::ProxyServer::port): 41360 Add ProxyServer class. 41361 41362 * platform/network/cf/ProxyServerCFNet.cpp: Added. 41363 (WebCore::proxyServersForURL): 41364 (WebCore::addProxyServersForURL): 41365 Query CFNetwork for the proxy servers given a URL. 41366 41367 2010-09-30 Zhenyao Mo <zmo (a] google.com> 41368 41369 Reviewed by Kenneth Russell. 41370 41371 texImage2D fails on 16-bit-per-channel images 41372 https://bugs.webkit.org/show_bug.cgi?id=46947 41373 41374 * platform/graphics/GraphicsContext3D.cpp: Handling 16-bit-per-channel source formats. 41375 (WebCore::convertColor16To8): 41376 (WebCore::doPacking): 41377 * platform/graphics/GraphicsContext3D.h: Ditto. 41378 * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto. 41379 (WebCore::GraphicsContext3D::getImageData): 41380 41381 2010-10-01 Eric Uhrhane <ericu (a] chromium.org> 41382 41383 Reviewed by Nate Chapin. 41384 41385 Add v8 binding helpers to make FileWriter be an EventTarget. 41386 https://bugs.webkit.org/show_bug.cgi?id=46910 41387 41388 No new tests; still waiting for the first complete implementation. 41389 41390 * bindings/v8/V8DOMWrapper.cpp: 41391 (WebCore::V8DOMWrapper::convertEventTargetToV8Object): 41392 41393 2010-10-01 David Hyatt <hyatt (a] apple.com> 41394 41395 Reviewed by Sam Weinig. 41396 41397 https://bugs.webkit.org/show_bug.cgi?id=47015 41398 41399 Change FloatingObject to store its dimensions as a rect. 41400 This will make it easier for logical access for block-flow later on if 41401 top/bottom is no different from left/width. This change also simplifies 41402 calling code a bit in places. 41403 41404 * rendering/RenderBlock.cpp: 41405 (WebCore::RenderBlock::addOverflowFromFloats): 41406 (WebCore::RenderBlock::repaintOverhangingFloats): 41407 (WebCore::RenderBlock::paintFloats): 41408 (WebCore::RenderBlock::fillSelectionGaps): 41409 (WebCore::RenderBlock::insertFloatingObject): 41410 (WebCore::RenderBlock::removeFloatingObject): 41411 (WebCore::RenderBlock::removeFloatingObjectsBelow): 41412 (WebCore::RenderBlock::positionNewFloats): 41413 (WebCore::RenderBlock::positionNewFloatOnLine): 41414 (WebCore::RenderBlock::logicalLeftOffsetForLine): 41415 (WebCore::RenderBlock::logicalRightOffsetForLine): 41416 (WebCore::RenderBlock::nextFloatBottomBelow): 41417 (WebCore::RenderBlock::floatBottom): 41418 (WebCore::RenderBlock::lowestPosition): 41419 (WebCore::RenderBlock::rightmostPosition): 41420 (WebCore::RenderBlock::leftmostPosition): 41421 (WebCore::RenderBlock::leftBottom): 41422 (WebCore::RenderBlock::rightBottom): 41423 (WebCore::RenderBlock::clearFloats): 41424 (WebCore::RenderBlock::addOverhangingFloats): 41425 (WebCore::RenderBlock::addIntrudingFloats): 41426 (WebCore::RenderBlock::hitTestFloats): 41427 (WebCore::RenderBlock::adjustForBorderFit): 41428 * rendering/RenderBlock.h: 41429 (WebCore::RenderBlock::FloatingObject::FloatingObject): 41430 (WebCore::RenderBlock::FloatingObject::left): 41431 (WebCore::RenderBlock::FloatingObject::right): 41432 (WebCore::RenderBlock::FloatingObject::top): 41433 (WebCore::RenderBlock::FloatingObject::bottom): 41434 (WebCore::RenderBlock::FloatingObject::width): 41435 (WebCore::RenderBlock::FloatingObject::height): 41436 (WebCore::RenderBlock::FloatingObject::setLeft): 41437 (WebCore::RenderBlock::FloatingObject::setTop): 41438 (WebCore::RenderBlock::FloatingObject::setWidth): 41439 (WebCore::RenderBlock::FloatingObject::setHeight): 41440 (WebCore::RenderBlock::FloatingObject::frameRect): 41441 (WebCore::RenderBlock::FloatingObject::setFrameRect): 41442 * rendering/RenderBlockLineLayout.cpp: 41443 (WebCore::RenderBlock::layoutInlineChildren): 41444 (WebCore::RenderBlock::matchedEndLine): 41445 41446 2010-10-01 Enrica Casucci <enrica (a] apple.com> 41447 41448 Reviewed by Darin Adler. 41449 41450 DOMFocusIn/DOMFocusOut return focusin/focusout Event.type 41451 https://bugs.webkit.org/show_bug.cgi?id=42580 41452 <rdar://problem/8107311> 41453 41454 This change removes the aliased type machinery from the Event class. 41455 We now fire the event with the new name and the oldname. 41456 41457 Tests: Modified fast/events/focusinout.html to check the event 41458 type. 41459 41460 * dom/Document.cpp: 41461 (WebCore::Document::setFocusedNode): 41462 * dom/Event.cpp: Removed aliasedType and hasAliasedType. 41463 * dom/Event.h: Removed aliasedType and hasAliasedType. 41464 * dom/EventTarget.cpp: 41465 (WebCore::EventTarget::fireEventListeners): Removed aliasedType related code. 41466 41467 2010-10-01 David Hyatt <hyatt (a] apple.com> 41468 41469 Reviewed by Darin Adler. 41470 41471 https://bugs.webkit.org/show_bug.cgi?id=46642, make replaced elements work with block-flow. This patch changes 41472 all of the computeReplacedLogicalWidth and comuteReplacedLogicalHeight functions (and their helpers) to use logical width 41473 and logical height instead. 41474 41475 Added fast/blockflow/block-level-images.html 41476 41477 * rendering/RenderBox.cpp: 41478 (WebCore::RenderBox::computeLogicalWidth): 41479 (WebCore::RenderBox::computeLogicalHeight): 41480 (WebCore::RenderBox::computeReplacedLogicalWidth): 41481 (WebCore::RenderBox::computeReplacedLogicalWidthUsing): 41482 (WebCore::RenderBox::computeReplacedLogicalHeight): 41483 (WebCore::RenderBox::computeReplacedLogicalHeightUsing): 41484 (WebCore::RenderBox::computePositionedLogicalWidthReplaced): 41485 (WebCore::RenderBox::computePositionedLogicalHeightReplaced): 41486 * rendering/RenderBox.h: 41487 (WebCore::RenderBox::intrinsicLogicalWidth): 41488 (WebCore::RenderBox::intrinsicLogicalHeight): 41489 * rendering/RenderImage.cpp: 41490 (WebCore::RenderImage::isLogicalWidthSpecified): 41491 (WebCore::RenderImage::isLogicalHeightSpecified): 41492 (WebCore::RenderImage::computeReplacedLogicalWidth): 41493 (WebCore::RenderImage::computeReplacedLogicalHeight): 41494 (WebCore::RenderImage::calcAspectRatioLogicalWidth): 41495 (WebCore::RenderImage::calcAspectRatioLogicalHeight): 41496 * rendering/RenderImage.h: 41497 * rendering/RenderReplaced.cpp: 41498 (WebCore::RenderReplaced::layout): 41499 (WebCore::RenderReplaced::computeReplacedLogicalWidth): 41500 (WebCore::RenderReplaced::computeReplacedLogicalHeight): 41501 (WebCore::RenderReplaced::calcAspectRatioLogicalWidth): 41502 (WebCore::RenderReplaced::calcAspectRatioLogicalHeight): 41503 (WebCore::RenderReplaced::computePreferredLogicalWidths): 41504 * rendering/RenderReplaced.h: 41505 * rendering/RenderSVGRoot.cpp: 41506 (WebCore::RenderSVGRoot::computePreferredLogicalWidths): 41507 (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): 41508 (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): 41509 * rendering/RenderSVGRoot.h: 41510 * rendering/RenderVideo.cpp: 41511 (WebCore::RenderVideo::computeReplacedLogicalWidth): 41512 (WebCore::RenderVideo::computeReplacedLogicalHeight): 41513 * rendering/RenderVideo.h: 41514 41515 2010-10-01 Nate Chapin <japhet (a] chromium.org> 41516 41517 Reviewed by Darin Adler. 41518 41519 Remove unused Request::buffer() and Request::m_buffer. 41520 41521 https://bugs.webkit.org/show_bug.cgi?id=47003 41522 41523 * loader/Request.h: 41524 41525 2010-10-01 Dan Bernstein <mitz (a] apple.com> 41526 41527 Reviewed by Adele Peterson. 41528 41529 <rdar://problem/7563219> Null dereference when dragging an element with generated content 41530 https://bugs.webkit.org/show_bug.cgi?id=47005 41531 41532 Test: fast/css-generated-content/drag-state.html 41533 41534 * rendering/RenderObject.cpp: 41535 (WebCore::RenderObject::updateDragState): Null-check node(). 41536 41537 2010-10-01 Robert Hogan <robert (a] webkit.org> 41538 41539 Reviewed by Adam Barth. 41540 41541 [Qt] Fix http/tests/loading/redirect-methods.html 41542 41543 Document our redirection behaviour too. 41544 41545 https://bugs.webkit.org/show_bug.cgi?id=41571 41546 41547 * platform/network/qt/QNetworkReplyHandler.cpp: 41548 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 41549 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 41550 * platform/network/qt/QNetworkReplyHandler.h: 41551 41552 2010-10-01 Adam Roben <aroben (a] apple.com> 41553 41554 Copy forwarding headers and Inspector JS files as part of 41555 WebCoreGenerated.vcproj 41556 41557 WebCoreGenerated.vcproj runs on every build, while WebCore.vcproj only 41558 runs when a .h or .cpp file changes. By moving the copying to 41559 WebCoreGenerated, it will happen even when someone only changes a JS 41560 file (as happened in r68887). 41561 41562 Fixes <http://webkit.org/b/46988> <rdar://problem/8502489> REGRESSION 41563 (r68887): Web Inspector: inspector/extensions*.html are failing on 41564 Windows 41565 41566 Reviewed by Anders Carlsson. 41567 41568 * WebCore.vcproj/WebCore.vcproj: Moved invocation of 41569 copyForwardingHeaders and copyInspectorFiles from here... 41570 * WebCore.vcproj/WebCoreGenerated.vcproj: ...to here. 41571 41572 2010-09-30 Ryosuke Niwa <rniwa (a] webkit.org> 41573 41574 Reviewed by Darin Adler. 41575 41576 Implement queryCommandState('justifyFull') 41577 https://bugs.webkit.org/show_bug.cgi?id=46954 41578 41579 Implemented queryCommandState('justifyFull'). 41580 New tests are added to editing/style/inline-style-container.html 41581 41582 * editing/ApplyStyleCommand.cpp: 41583 (WebCore::getTextAlignment): Added support for CSSValueJustify. 41584 * editing/EditorCommand.cpp: 41585 (WebCore::stateJustifyFull): Added. 41586 (WebCore::createCommandMap): Added stateJustifyFull. 41587 41588 2010-10-01 Jia Pu <jpu (a] apple.com> 41589 41590 Reviewed by Darin Adler. 41591 41592 Autocorrection shouldn't prompt the same correction after user has edited previous correction. 41593 https://bugs.webkit.org/show_bug.cgi?id=46839 41594 <rdar://problem/8476963> 41595 41596 * editing/Editor.cpp: 41597 (WebCore::Editor::respondToChangedSelection): Remove "CorrectionIndicator" marker instead of 41598 "Replacement" marker. Since the former controls whether we draw autocorrection underline, 41599 and the latter is used to prevent autocorrection from being applied again on already auto- 41600 corrected word. So the "Replacement" shouldn't be removed. 41601 41602 2010-10-01 Patrick Gansterer <paroga (a] webkit.org> 41603 41604 Reviewed by Anders Carlsson. 41605 41606 [CMake] Add handling for ENABLE(NETSCAPE_PLUGIN_API) 41607 https://bugs.webkit.org/show_bug.cgi?id=46309 41608 41609 * CMakeLists.txt: 41610 * CMakeListsEfl.txt: 41611 41612 2010-10-01 David Hyatt <hyatt (a] apple.com> 41613 41614 Reviewed by Darin Adler. 41615 41616 https://bugs.webkit.org/show_bug.cgi?id=46996, patch the functions dealing with the bottom of the block to 41617 be block-flow-aware. 41618 41619 * rendering/RenderBlock.cpp: 41620 (WebCore::RenderBlock::setCollapsedBottomMargin): 41621 (WebCore::RenderBlock::handleAfterSideOfBlock): 41622 41623 2010-10-01 Pratik Solanki <psolanki (a] apple.com> 41624 41625 Reviewed by Geoffrey Garen. 41626 Specify ALWAYS_INLINE at function declaration not function definition 41627 https://bugs.webkit.org/show_bug.cgi?id=46960 41628 41629 For functions defined with ALWAYS_INLINE, add the attribute to the declaration as well. 41630 41631 * css/CSSStyleSelector.h: 41632 * rendering/InlineIterator.h: 41633 * rendering/style/RenderStyle.h: 41634 41635 2010-10-01 David Hyatt <hyatt (a] apple.com> 41636 41637 Reviewed by Dan Bernstein. 41638 41639 https://bugs.webkit.org/show_bug.cgi?id=46995, make direction propagate up to the viewport from the root element. 41640 41641 Added fast/css/rtl-to-viewport.html 41642 41643 * css/CSSStyleSelector.cpp: 41644 (WebCore::CSSStyleSelector::styleForDocument): 41645 * rendering/RenderBox.cpp: 41646 (WebCore::RenderBox::styleDidChange): 41647 41648 2010-10-01 Alexey Proskuryakov <ap (a] apple.com> 41649 41650 Reviewed by Anders Carlsson. 41651 41652 https://bugs.webkit.org/show_bug.cgi?id=44406 41653 <rdar://problem/8310921> Application Cache crash when a fallback document has a manifest URL 41654 41655 Test: http/tests/appcache/foreign-fallback.html 41656 41657 * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache): 41658 Changed ApplicationCacheResource lookup to find fallback resources correctly. 41659 41660 2010-10-01 Kwang Yul Seo <skyul (a] company100.net> 41661 41662 Unreviewed, Brew MP build fix. 41663 41664 * platform/brew/ClipboardBrew.cpp: 41665 (WebCore::ClipboardBrew::ClipboardBrew): 41666 41667 2010-10-01 Rafael Antognolli <antognolli (a] profusion.mobi> 41668 41669 Unreviewed build fix. 41670 41671 [CMAKE] Build fix for r68878 41672 https://bugs.webkit.org/show_bug.cgi?id=46985 41673 41674 Fix name of files added to CMakeLists.txt: 41675 SVGTextLayoutBaseline.cpp -> SVGTextLayoutEngineBaseline.cpp 41676 SVGTextLayoutSpacing.cpp -> SVGTextLayoutEngineSpacing.cpp 41677 41678 No features added, so no new tests. 41679 41680 * CMakeLists.txt: 41681 41682 2010-10-01 Ragner Magalhaes <ragner.magalhaes (a] openbossa.org> 41683 41684 Reviewed by Kenneth Rohde Christiansen. 41685 41686 [Qt] New buttons style for Qt Mobile theme 41687 https://bugs.webkit.org/show_bug.cgi?id=46920 41688 41689 Rename Maemo5Webstyle to QtMobileWebStyle since it implements the style for all Qt mobile platform. 41690 Adjust new Qt mobile style for buttons, radios, checks and combos. 41691 41692 * WebCore.pro: 41693 * css/themeQtMobile.css: Adjust gradient color for buttons and combos. 41694 (select): 41695 (select:active): 41696 * platform/qt/QtMobileWebStyle.cpp: Renamed from platform/qt/Maemo5Webstyle.cpp to match name scheme. 41697 (QtMobileWebStyle::QtMobileWebStyle): 41698 (drawRectangularControlBackground): 41699 (QtMobileWebStyle::drawChecker): 41700 (QtMobileWebStyle::findChecker): 41701 (QtMobileWebStyle::drawRadio): Adjust gradient color for RadioButton. 41702 (QtMobileWebStyle::findRadio): 41703 (QtMobileWebStyle::drawControl): Adjust gradient color for CheckBox. 41704 (QtMobileWebStyle::drawMultipleComboButton): 41705 (QtMobileWebStyle::drawSimpleComboButton): Adjust ComboBox arrow. 41706 (QtMobileWebStyle::getButtonImageSize): 41707 (QtMobileWebStyle::findComboButton): 41708 (QtMobileWebStyle::drawComplexControl): 41709 * platform/qt/QtMobileWebStyle.h: Renamed from platform/qt/Maemo5Webstyle.h to match name scheme. 41710 * platform/qt/RenderThemeQt.cpp: 41711 (WebCore::RenderThemeQt::RenderThemeQt): 41712 41713 2010-10-01 Andrey Kosyakov <caseq (a] chromium.org> 41714 41715 Reviewed by Pavel Feldman. 41716 41717 Web Inspector: [Extensions API] expose page load events timings 41718 Added webInspector.resources.getPageTimings() 41719 41720 https://bugs.webkit.org/show_bug.cgi?id=45954 41721 41722 * inspector/front-end/ExtensionAPI.js: 41723 (WebInspector.injectedExtensionAPI.Resources.prototype): 41724 (WebInspector.injectedExtensionAPI.Resources.prototype.getPageTimings): 41725 * inspector/front-end/ExtensionServer.js: 41726 (WebInspector.ExtensionServer): 41727 (WebInspector.ExtensionServer.prototype._onGetPageTimings): 41728 * inspector/front-end/HAREntry.js: Return page event timings as -1 if start or event time unknown. 41729 (WebInspector.HARLog.prototype._buildPages): 41730 (WebInspector.HARLog.prototype.buildMainResourceTimings): 41731 (WebInspector.HARLog.prototype._convertResource): 41732 (WebInspector.HARLog.prototype._pageEventTime): 41733 41734 2010-10-01 Patrick Gansterer <paroga (a] webkit.org> 41735 41736 Reviewed by Adam Roben. 41737 41738 [WIN] Add GDIExtras 41739 https://bugs.webkit.org/show_bug.cgi?id=46974 41740 41741 Some, but not all WinCE environments have support for AlphaBlend(). 41742 Add this files to check for AlphaBlend (and SoftLink) on WinCE. 41743 On WinNT alphaBlendIfSupported() inlines AlphaBlend and returns true. 41744 41745 * platform/graphics/win/GDIExtras.cpp: Added. 41746 (WebCore::AlphaBlendPointer): 41747 * platform/graphics/win/GDIExtras.h: Added. 41748 (WebCore::hasAlphaBlendSupport): 41749 (WebCore::alphaBlendIfSupported): 41750 41751 2010-10-01 Patrick Gansterer <paroga (a] webkit.org> 41752 41753 Reviewed by Adam Roben. 41754 41755 [WINCE] Use alphaBlendIfSupported in GraphicsContext 41756 https://bugs.webkit.org/show_bug.cgi?id=46979 41757 41758 * platform/graphics/wince/GraphicsContextWinCE.cpp: 41759 (WebCore::GraphicsContextPlatformPrivate::paintBackTransparentLayerBitmap): 41760 41761 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 41762 41763 Reviewed by Dirk Schulze. 41764 41765 Add two new helper files for the new SVGTextLayoutEngine 41766 https://bugs.webkit.org/show_bug.cgi?id=46972 41767 41768 Refactor code from SVGTextLayoutUtilities into two seperated classes. 41769 SVGTextLayoutUtilities will be removed, as soon as the main clss SVGTextLayoutEngine lands and gets used. 41770 41771 Doesn't affect any functionality yet, as the new classes are not used so far. 41772 41773 * Android.mk: 41774 * CMakeLists.txt: 41775 * GNUmakefile.am: 41776 * WebCore.gypi: 41777 * WebCore.vcproj/WebCore.vcproj: 41778 * WebCore.xcodeproj/project.pbxproj: 41779 * rendering/svg/SVGTextFragment.h: 41780 * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Added. 41781 (WebCore::SVGTextLayoutEngineBaseline::SVGTextLayoutEngineBaseline): 41782 (WebCore::SVGTextLayoutEngineBaseline::calculateBaselineShift): 41783 (WebCore::SVGTextLayoutEngineBaseline::dominantBaselineToAlignmentBaseline): 41784 (WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift): 41785 (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle): 41786 (WebCore::glyphOrientationIsMultiplyOf180Degrees): 41787 (WebCore::SVGTextLayoutEngineBaseline::calculateGlyphAdvanceAndOrientation): 41788 * rendering/svg/SVGTextLayoutEngineBaseline.h: Added. 41789 * rendering/svg/SVGTextLayoutEngineSpacing.cpp: Added. 41790 (WebCore::SVGTextLayoutEngineSpacing::SVGTextLayoutEngineSpacing): 41791 (WebCore::SVGTextLayoutEngineSpacing::calculateSVGKerning): 41792 (WebCore::SVGTextLayoutEngineSpacing::calculateCSSKerningAndSpacing): 41793 * rendering/svg/SVGTextLayoutEngineSpacing.h: Added. 41794 41795 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 41796 41797 Reviewed by Andreas Kling. 41798 41799 Rename SVGTextLayoutBuilder to SVGTextLayoutAttributesBuilder 41800 https://bugs.webkit.org/show_bug.cgi?id=46971 41801 41802 Doesn't affect any functionality, just moves files around. 41803 41804 * Android.mk: 41805 * CMakeLists.txt: 41806 * GNUmakefile.am: 41807 * WebCore.gypi: 41808 * WebCore.pro: 41809 * WebCore.vcproj/WebCore.vcproj: 41810 * WebCore.xcodeproj/project.pbxproj: 41811 * rendering/svg/RenderSVGText.cpp: 41812 (WebCore::RenderSVGText::layout): Adopt to renaming. 41813 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Copied from rendering/svg/SVGTextLayoutBuilder.cpp. 41814 * rendering/svg/SVGTextLayoutAttributesBuilder.h: Copied from rendering/svg/SVGTextLayoutBuilder.h. 41815 * rendering/svg/SVGTextLayoutBuilder.cpp: Removed. 41816 * rendering/svg/SVGTextLayoutBuilder.h: Removed. 41817 41818 2010-10-01 MORITA Hajime <morrita (a] google.com> 41819 41820 Unreviewed build fix. 41821 41822 * platform/graphics/skia/PlatformContextSkia.cpp: 41823 (WebCore::PlatformContextSkia::PlatformContextSkia): 41824 41825 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 41826 41827 Reviewed by Andreas Kling. 41828 41829 Move SVG text related renderers into rendering/svg/ 41830 https://bugs.webkit.org/show_bug.cgi?id=46969 41831 41832 Doesn't affect any functionality, just moves files around. 41833 41834 * Android.mk: 41835 * CMakeLists.txt: 41836 * GNUmakefile.am: 41837 * WebCore.gypi: 41838 * WebCore.pro: 41839 * WebCore.vcproj/WebCore.vcproj: 41840 * WebCore.xcodeproj/project.pbxproj: 41841 * rendering/RenderSVGAllInOne.cpp: 41842 * rendering/RenderSVGInline.cpp: Removed. 41843 * rendering/RenderSVGInline.h: Removed. 41844 * rendering/RenderSVGInlineText.cpp: Removed. 41845 * rendering/RenderSVGInlineText.h: Removed. 41846 * rendering/RenderSVGTSpan.cpp: Removed. 41847 * rendering/RenderSVGTSpan.h: Removed. 41848 * rendering/RenderSVGText.cpp: Removed. 41849 * rendering/RenderSVGText.h: Removed. 41850 * rendering/RenderSVGTextPath.cpp: Removed. 41851 * rendering/RenderSVGTextPath.h: Removed. 41852 * rendering/SVGInlineFlowBox.cpp: Removed. 41853 * rendering/SVGInlineFlowBox.h: Removed. 41854 * rendering/SVGInlineTextBox.cpp: Removed. 41855 * rendering/SVGInlineTextBox.h: Removed. 41856 * rendering/SVGRootInlineBox.cpp: Removed. 41857 * rendering/SVGRootInlineBox.h: Removed. 41858 * rendering/SVGTextQuery.cpp: Removed. 41859 * rendering/SVGTextQuery.h: Removed. 41860 * rendering/svg/RenderSVGInline.cpp: Copied from rendering/RenderSVGInline.cpp. 41861 * rendering/svg/RenderSVGInline.h: Copied from rendering/RenderSVGInline.h. 41862 * rendering/svg/RenderSVGInlineText.cpp: Copied from rendering/RenderSVGInlineText.cpp. 41863 * rendering/svg/RenderSVGInlineText.h: Copied from rendering/RenderSVGInlineText.h. 41864 * rendering/svg/RenderSVGTSpan.cpp: Copied from rendering/RenderSVGTSpan.cpp. 41865 * rendering/svg/RenderSVGTSpan.h: Copied from rendering/RenderSVGTSpan.h. 41866 * rendering/svg/RenderSVGText.cpp: Copied from rendering/RenderSVGText.cpp. 41867 * rendering/svg/RenderSVGText.h: Copied from rendering/RenderSVGText.h. 41868 * rendering/svg/RenderSVGTextPath.cpp: Copied from rendering/RenderSVGTextPath.cpp. 41869 * rendering/svg/RenderSVGTextPath.h: Copied from rendering/RenderSVGTextPath.h. 41870 * rendering/svg/SVGInlineFlowBox.cpp: Copied from rendering/SVGInlineFlowBox.cpp. 41871 * rendering/svg/SVGInlineFlowBox.h: Copied from rendering/SVGInlineFlowBox.h. 41872 * rendering/svg/SVGInlineTextBox.cpp: Copied from rendering/SVGInlineTextBox.cpp. 41873 * rendering/svg/SVGInlineTextBox.h: Copied from rendering/SVGInlineTextBox.h. 41874 * rendering/svg/SVGRootInlineBox.cpp: Copied from rendering/SVGRootInlineBox.cpp. 41875 * rendering/svg/SVGRootInlineBox.h: Copied from rendering/SVGRootInlineBox.h. 41876 * rendering/svg/SVGTextQuery.cpp: Copied from rendering/SVGTextQuery.cpp. 41877 * rendering/svg/SVGTextQuery.h: Copied from rendering/SVGTextQuery.h. 41878 41879 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 41880 41881 Reviewed by Dirk Schulze. 41882 41883 Add SVGTextMetrics/SVGTextFragment/SVGTextChunk primitives used by the new layout engine 41884 https://bugs.webkit.org/show_bug.cgi?id=46964 41885 41886 The new SVG text layout engine will use these new classes. 41887 1) SVGTextMetrics is used to measure either single glyphs (which may span multiple characters, when ligatures are defined) or a range of characters. 41888 41889 -> In "single glyph" mode, it returns the width/height of the glyph, the length of the glyph (> 1, when ligatures are used) and a "Glyph" object 41890 describing the glyph (name of glyph, when used together with SVG Fonts and the unicode string the glyph describes). 41891 -> In "range of characters" mode, it returns the width/height of the range, and its length. 41892 41893 All measurements are done using the regular Font::floatWidth() methods, this class just encapsulates its usage for the SVG text layout engine. 41894 41895 2) SVGTextFragment describes a fragment of text, living in a SVGInlineTextBox, which can be measured/rendered in one shot. 41896 It contains all necessary information to render the fragment (x/y/width/height, offset into characters() buffer for the first char of the fragment, 41897 length, and an arbitary transformation, holding information about rotations/scale/glyph-orientation etc.) 41898 41899 In future the SVGTextLayoutEngine will generate SVGTextFragment objects for each SVGInlineTextBox. When painting no more measurements have to 41900 be performed as SVGTextFragment contains all necessary information to render text / select text etc. 41901 41902 3) SVGTextChunk describes a SVG text chunk, which may span multiple text boxes (and in turn text fragments). 41903 41904 Quotes from SVG spec: 41905 Each absolute position adjustment defines a new "text chunk". Absolute position adjustments impact text layout in the following ways: 41906 * Ligatures only occur when a set of characters which might map to a ligature are all in the same text chunk. 41907 * Each text chunk represents a separate block of text for alignment due to "text-anchor" property values. 41908 * Reordering of characters due to bidirectionality only occurs within a text chunk. Reordering does not happen across text chunks. 41909 41910 An absolute position adjustment occurs in the following circumstances: 41911 * At the start of a <text> element 41912 * At the start of each <textPath> element 41913 * For each character within a <text>, <tspan>, <tref> and <altGlyph> element which has an "x" or "y" attribute value assigned to it explicitly 41914 41915 After the line-layout finishes, each "text chunk" is altered according to the textLength and text-anchor processing rules 41916 (eg. for text-anchor="middle" moving the whole text chunk by -fragmentWidth/2, for horizontal text). 41917 41918 SVGTextChunk is just a simple helper class, that encapsulates measuring/altering a text chunk. 41919 41920 Doesn't affect any tests, as these classes aren't used so far. 41921 41922 * Android.mk: Add SVGTextMetrics.*, SVGTextFragment.h, SVGTextChunk.* to build. 41923 * CMakeLists.txt: Ditto. 41924 * GNUmakefile.am: Ditto. 41925 * WebCore.gypi: Ditto. 41926 * WebCore.pro: Ditto. 41927 * WebCore.vcproj/WebCore.vcproj: Ditto. 41928 * WebCore.xcodeproj/project.pbxproj: Ditto. 41929 * rendering/svg/SVGTextChunk.cpp: Added. 41930 * rendering/svg/SVGTextChunk.h: Added. 41931 * rendering/svg/SVGTextFragment.h: Added. 41932 * rendering/svg/SVGTextMetrics.cpp: Added. 41933 * rendering/svg/SVGTextMetrics.h: Added. 41934 41935 2010-10-01 Vincent Scheib <scheib (a] chromium.org> 41936 41937 Reviewed by James Robinson. 41938 41939 REGRESSION: Lots of fast canvas updates fail to completely render 41940 https://bugs.webkit.org/show_bug.cgi?id=46319 41941 41942 Test: fast/repaint/canvas-putImageData.html 41943 41944 * html/canvas/CanvasRenderingContext2D.cpp: 41945 (WebCore::CanvasRenderingContext2D::putImageData): 41946 41947 2010-10-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 41948 41949 Reviewed by Dirk Schulze. 41950 41951 Add helper methods to cast between renderers & SVGTextContent/PositioningElement 41952 https://bugs.webkit.org/show_bug.cgi?id=46963 41953 41954 Doesn't affect any tests. 41955 41956 * svg/SVGTextContentElement.cpp: 41957 (WebCore::SVGTextContentElement::elementFromRenderer): 41958 * svg/SVGTextContentElement.h: 41959 * svg/SVGTextPositioningElement.cpp: 41960 (WebCore::SVGTextPositioningElement::elementFromRenderer): 41961 * svg/SVGTextPositioningElement.h: 41962 41963 2010-09-30 MORITA Hajime <morrita (a] google.com> 41964 41965 Reviewed by James Robinson. 41966 41967 [Chromium] build fails unless ACCELERATED_2D_CANVAS defined 41968 https://bugs.webkit.org/show_bug.cgi?id=46955 41969 41970 Added ifdef guard around SharedGraphicsContext3D. 41971 41972 No new tests. just a build fix. 41973 41974 * platform/graphics/skia/PlatformContextSkia.cpp: 41975 (WebCore::PlatformContextSkia::~PlatformContextSkia): 41976 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D): 41977 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 41978 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 41979 * platform/graphics/skia/PlatformContextSkia.h: 41980 (WebCore::PlatformContextSkia::gpuCanvas): 41981 41982 2010-09-30 Kent Tamura <tkent (a] chromium.org> 41983 41984 Reviewed by Chris Fleizach. 41985 41986 [Windows] Implement <input type=number> UI 41987 https://bugs.webkit.org/show_bug.cgi?id=38381 41988 41989 Implement theme drawing for inner-spin-button. 41990 No new tests. Existing tests for type=number will cover this change. 41991 41992 * rendering/RenderThemeWin.cpp: 41993 (WebCore::RenderThemeWin::RenderThemeWin): 41994 Handle m_spinButtonTheme. 41995 (WebCore::RenderThemeWin::spinButtonTheme): ditto. 41996 (WebCore::RenderThemeWin::close): ditto. 41997 (WebCore::RenderThemeWin::determineClassicState): 41998 Add ControlSubPart parameter, and add support for InnerSpinButtonPart. 41999 (WebCore::RenderThemeWin::determineSpinButtonState): Added. 42000 (WebCore::RenderThemeWin::getClassicThemeData): 42001 Add ControlSubPart parameter, and handle InnerSpinButtonPart. 42002 (WebCore::RenderThemeWin::getThemeData): ditto. 42003 (WebCore::RenderThemeWin::adjustInnerSpinButtonStyle): 42004 Set SM_CXVSCROLL value to the width. 42005 (WebCore::RenderThemeWin::paintInnerSpinButton): 42006 Call drawControl() for the upper part and the lower part. 42007 * rendering/RenderThemeWin.h: 42008 42009 2010-09-30 Kent Tamura <tkent (a] chromium.org> 42010 42011 Unreviewed, Windows build fix for r68854 42012 42013 * WebCore.vcproj/copyForwardingHeaders.cmd: 42014 Copy WebCore/html/parser/*.h. 42015 42016 2010-09-30 Abhishek Arya <inferno (a] chromium.org> 42017 42018 Reviewed by Dan Bernstein. 42019 42020 While updating :before and :after content, make sure that the generated 42021 container is allowed to add the child type. 42022 https://bugs.webkit.org/show_bug.cgi?id=46106 42023 42024 Test: fast/css-generated-content/text-before-table-col-crash.html 42025 42026 * rendering/RenderObjectChildList.cpp: 42027 (WebCore::RenderObjectChildList::updateBeforeAfterContent): 42028 42029 2010-09-30 Mario Sanchez Prada <msanchez (a] igalia.com> 42030 42031 Reviewed by Daniel Bates. 42032 42033 [GTK] Crash on testatk.c unittest because of a call to ASSERT_NOT_REACHED 42034 https://bugs.webkit.org/show_bug.cgi?id=46886 42035 42036 Removed call to ASSERT_NOT_REACHED() from listMarkerSuffix(). 42037 42038 So far, this assertion made sense because it was not possible that 42039 a call to listMarkerSuffix() happened when the style of the list 42040 item was one of the following: Asterisks, Circle, Discm Footnotes, 42041 NoneListStyle or Square (it's easy to figure this out by checking 42042 the functions where listMarkerSuffix() was called). 42043 42044 However, since revision 68415 (about bug 45381), there's a new 42045 place where listMarkerSuffix() is being called (the suffix() 42046 public method), regardless of the style of the item being or not 42047 one of those pointed out, so the aforementioned assertion in 42048 listMarkerSuffix() would no longer be correct, as now it's ok to 42049 reach those cases in the switch statement. 42050 42051 * rendering/RenderListMarker.cpp: 42052 (WebCore::listMarkerSuffix): Removed call to ASSERT_NOT_REACHED(). 42053 42054 2010-09-30 Beth Dakin <bdakin (a] apple.com> 42055 42056 Reviewed by Adele Peterson. 42057 42058 https://bugs.webkit.org/show_bug.cgi?id=46948 Crash with all- 42059 whitespace separators for mfenced 42060 42061 Check the size of characters instead of separators in case all the 42062 separators were whitespace. 42063 42064 * mathml/RenderMathMLFenced.cpp: 42065 (WebCore::RenderMathMLFenced::updateFromElement): 42066 42067 2010-09-30 Darin Adler <darin (a] apple.com> 42068 42069 Reviewed by Sam Weinig. 42070 42071 Remove remaining calls to deprecatedParseURL 42072 https://bugs.webkit.org/show_bug.cgi?id=26599 42073 42074 Test: fast/replaced/object-param-spaces.html 42075 42076 * css/CSSHelper.cpp: Removed. 42077 * css/CSSHelper.h: Removed deprecatedParseURL. 42078 42079 * html/parser/HTMLParserIdioms.cpp: 42080 (WebCore::stripLeadingAndTrailingHTMLSpaces): 42081 Fixed bug where the function would turn the null string into the empty string. 42082 Fixed bug where the function would not strip all trailing spaces. 42083 42084 * html/parser/CSSPreloadScanner.cpp: 42085 (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state 42086 instead of calling the reset function. 42087 (WebCore::CSSPreloadScanner::scan): Tweaked coding style. 42088 (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of 42089 an identical local function named isWhitespace. 42090 (WebCore::parseCSSStringOrURL): Added. This function does what 42091 deprecatedParseURL did before, and this is the only place in WebKit 42092 that needs it. The code implements the rules for a string or URL 42093 token. The real CSS parser does this with flex and the code to hook 42094 flex up to yacc, so the function is not needed there. 42095 (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit 42096 and mae it call parseCSSStringOrURL. 42097 42098 * bindings/generic/BindingSecurity.h: 42099 (WebCore::::allowSettingFrameSrcToJavascriptUrl): 42100 * bindings/js/JSDOMBinding.cpp: 42101 (WebCore::allowSettingSrcToJavascriptURL): 42102 * bindings/js/JSHTMLFrameElementCustom.cpp: 42103 (WebCore::allowSettingJavascriptURL): 42104 * bindings/objc/DOM.mm: 42105 (-[DOMElement _getURLAttribute:]): 42106 * bindings/objc/DOMHTML.mm: 42107 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): 42108 * dom/Document.cpp: 42109 (WebCore::Document::processBaseElement): 42110 * dom/Element.cpp: 42111 (WebCore::isAttributeToRemove): 42112 (WebCore::Element::getURLAttribute): 42113 (WebCore::Element::getNonEmptyURLAttribute): 42114 * html/HTMLAnchorElement.cpp: 42115 (WebCore::HTMLAnchorElement::defaultEventHandler): 42116 (WebCore::HTMLAnchorElement::parseMappedAttribute): 42117 (WebCore::HTMLAnchorElement::href): 42118 * html/HTMLBodyElement.cpp: 42119 (WebCore::HTMLBodyElement::parseMappedAttribute): 42120 * html/HTMLEmbedElement.cpp: 42121 (WebCore::HTMLEmbedElement::parseMappedAttribute): 42122 * html/HTMLFrameElementBase.cpp: 42123 (WebCore::HTMLFrameElementBase::parseMappedAttribute): 42124 * html/HTMLImageElement.cpp: 42125 (WebCore::HTMLImageElement::parseMappedAttribute): 42126 * html/HTMLImageLoader.cpp: 42127 (WebCore::HTMLImageLoader::sourceURI): 42128 * html/HTMLLinkElement.cpp: 42129 (WebCore::HTMLLinkElement::parseMappedAttribute): 42130 * html/HTMLMediaElement.cpp: 42131 * html/HTMLObjectElement.cpp: 42132 (WebCore::HTMLObjectElement::parseMappedAttribute): 42133 (WebCore::HTMLObjectElement::parametersForPlugin): 42134 * html/HTMLTableElement.cpp: 42135 (WebCore::HTMLTableElement::parseMappedAttribute): 42136 * html/HTMLTablePartElement.cpp: 42137 (WebCore::HTMLTablePartElement::parseMappedAttribute): 42138 * html/parser/HTMLPreloadScanner.cpp: 42139 (WebCore::HTMLNames::PreloadTask::setUrlToLoad): 42140 * loader/FormSubmission.cpp: 42141 (WebCore::FormSubmission::Attributes::parseAction): 42142 * platform/chromium/ClipboardChromium.cpp: 42143 (WebCore::ClipboardChromium::declareAndWriteDragImage): 42144 * platform/chromium/PasteboardChromium.cpp: 42145 (WebCore::Pasteboard::writeImage): 42146 * platform/qt/ClipboardQt.cpp: 42147 (WebCore::ClipboardQt::declareAndWriteDragImage): 42148 * platform/win/ClipboardWin.cpp: 42149 (WebCore::ClipboardWin::declareAndWriteDragImage): 42150 * rendering/HitTestResult.cpp: 42151 (WebCore::HitTestResult::absoluteImageURL): 42152 (WebCore::HitTestResult::absoluteMediaURL): 42153 (WebCore::HitTestResult::absoluteLinkURL): 42154 * svg/SVGAElement.cpp: 42155 (WebCore::SVGAElement::defaultEventHandler): 42156 * svg/SVGImageLoader.cpp: 42157 (WebCore::SVGImageLoader::sourceURI): 42158 * wml/WMLAElement.cpp: 42159 (WebCore::WMLAElement::defaultEventHandler): 42160 * wml/WMLImageLoader.cpp: 42161 (WebCore::WMLImageLoader::sourceURI): 42162 Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL. 42163 42164 * WebCore.exp.in: Updated. 42165 42166 * Android.mk: Removed CSSHelper.cpp. 42167 * CMakeLists.txt: Ditto. 42168 * GNUmakefile.am: Ditto. 42169 * WebCore.gypi: Ditto. 42170 * WebCore.pro: Ditto. 42171 * WebCore.vcproj/WebCore.vcproj: Ditto. 42172 * WebCore.xcodeproj/project.pbxproj: Ditto. 42173 42174 * bindings/js/JSAttrCustom.cpp: 42175 * bindings/js/JSElementCustom.cpp: 42176 * bindings/v8/custom/V8ElementCustom.cpp: 42177 * bindings/v8/custom/V8LocationCustom.cpp: 42178 * css/CSSParser.cpp: 42179 * html/HTMLMediaElement.cpp: 42180 * html/HTMLVideoElement.cpp: 42181 * loader/ImageLoader.cpp: 42182 * rendering/style/RenderStyle.h: 42183 Removed unneeded include of CSSHelper.h. 42184 42185 2010-09-30 Alexey Marinichev <amarinichev (a] chromium.org> 42186 42187 Reviewed by Chris Marrin. 42188 42189 Add GetGraphicsResetStatusARB entry point from ARB_robustness 42190 extension to GraphicsContext3D 42191 https://bugs.webkit.org/show_bug.cgi?id=46850 42192 42193 Added stubs for GraphicsContext3D::getGraphicsResetStatusARB for 42194 Mac and QT. 42195 42196 * platform/graphics/GraphicsContext3D.h: 42197 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: 42198 (WebCore::GraphicsContext3D::getGraphicsResetStatusARB): 42199 * platform/graphics/qt/GraphicsContext3DQt.cpp: 42200 (WebCore::GraphicsContext3D::getGraphicsResetStatusARB): 42201 42202 2010-09-30 David Hyatt <hyatt (a] apple.com> 42203 42204 Reviewed by Sam Weinig. 42205 42206 https://bugs.webkit.org/show_bug.cgi?id=46938 42207 42208 Rewrite margin collapsing to be block-flow-aware. Eliminate a bunch of the margin functions on RenderBox in favor of a single 42209 master function for grabbing all the margin values for a child: marginValuesForChild on RenderBlock. Introduce a new 42210 MarginValues struct to make returning the collection of 4 margin values easy. 42211 42212 fast/blockflow/inline-direction-positioning.html progresses to have the correct results. 42213 Added fast/blockflow/margin-collapse.html 42214 42215 * rendering/RenderBlock.cpp: 42216 (WebCore::RenderBlock::MarginInfo::MarginInfo): 42217 (WebCore::RenderBlock::adjustPositionedBlock): 42218 (WebCore::RenderBlock::collapseMargins): 42219 (WebCore::RenderBlock::clearFloatsIfNeeded): 42220 (WebCore::RenderBlock::setCollapsedBottomMargin): 42221 (WebCore::RenderBlock::layoutBlockChild): 42222 (WebCore::RenderBlock::setMaxMarginBeforeValues): 42223 (WebCore::RenderBlock::setMaxMarginAfterValues): 42224 (WebCore::RenderBlock::marginValuesForChild): 42225 * rendering/RenderBlock.h: 42226 (WebCore::RenderBlock::MarginValues::MarginValues): 42227 (WebCore::RenderBlock::MarginValues::positiveMarginBefore): 42228 (WebCore::RenderBlock::MarginValues::negativeMarginBefore): 42229 (WebCore::RenderBlock::MarginValues::positiveMarginAfter): 42230 (WebCore::RenderBlock::MarginValues::negativeMarginAfter): 42231 (WebCore::RenderBlock::MarginValues::setPositiveMarginBefore): 42232 (WebCore::RenderBlock::MarginValues::setNegativeMarginBefore): 42233 (WebCore::RenderBlock::MarginValues::setPositiveMarginAfter): 42234 (WebCore::RenderBlock::MarginValues::setNegativeMarginAfter): 42235 (WebCore::RenderBlock::maxPositiveMarginBefore): 42236 (WebCore::RenderBlock::maxNegativeMarginBefore): 42237 (WebCore::RenderBlock::maxPositiveMarginAfter): 42238 (WebCore::RenderBlock::maxNegativeMarginAfter): 42239 (WebCore::RenderBlock::initMaxMarginValues): 42240 (WebCore::RenderBlock::collapsedMarginBefore): 42241 (WebCore::RenderBlock::collapsedMarginAfter): 42242 (WebCore::RenderBlock::MarginInfo::clearMargin): 42243 (WebCore::RenderBlock::MarginInfo::setPositiveMargin): 42244 (WebCore::RenderBlock::MarginInfo::setNegativeMargin): 42245 (WebCore::RenderBlock::MarginInfo::setPositiveMarginIfLarger): 42246 (WebCore::RenderBlock::MarginInfo::setNegativeMarginIfLarger): 42247 (WebCore::RenderBlock::MarginInfo::setMargin): 42248 (WebCore::RenderBlock::MarginInfo::positiveMargin): 42249 (WebCore::RenderBlock::MarginInfo::negativeMargin): 42250 (WebCore::RenderBlock::MarginInfo::margin): 42251 (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): 42252 (WebCore::RenderBlock::RenderBlockRareData::positiveMarginBeforeDefault): 42253 (WebCore::RenderBlock::RenderBlockRareData::negativeMarginBeforeDefault): 42254 (WebCore::RenderBlock::RenderBlockRareData::positiveMarginAfterDefault): 42255 (WebCore::RenderBlock::RenderBlockRareData::negativeMarginAfterDefault): 42256 * rendering/RenderBox.h: 42257 (WebCore::RenderBox::collapsedMarginBefore): 42258 (WebCore::RenderBox::collapsedMarginAfter): 42259 * rendering/RenderFlexibleBox.cpp: 42260 (WebCore::RenderFlexibleBox::layoutBlock): 42261 42262 2010-09-30 Patrick Gansterer <paroga (a] webkit.org> 42263 42264 Reviewed by Adam Roben. 42265 42266 [WINCE] Fix InternetGetCookie in CookieJarWin.cpp 42267 https://bugs.webkit.org/show_bug.cgi?id=46929 42268 42269 If the InternetGetCookie fails the output size won't be set. 42270 Set the default size to 0, so we always get the correct size 42271 and check the return value of InternetGetCookie. 42272 42273 * platform/network/win/CookieJarWin.cpp: 42274 (WebCore::cookies): 42275 42276 2010-09-30 Patrick Gansterer <paroga (a] webkit.org> 42277 42278 Reviewed by Adam Roben. 42279 42280 [WINCE] Use OwnPtr for HBRUSH and HPEN in GraphicsContext 42281 https://bugs.webkit.org/show_bug.cgi?id=46881 42282 42283 Also add some missing SelectObject calls. 42284 42285 * platform/graphics/wince/GraphicsContextWinCE.cpp: 42286 (WebCore::createPen): 42287 (WebCore::createBrush): 42288 (WebCore::GraphicsContext::drawRect): 42289 (WebCore::GraphicsContext::drawLine): 42290 (WebCore::GraphicsContext::drawEllipse): 42291 (WebCore::GraphicsContext::strokeArc): 42292 (WebCore::GraphicsContext::drawConvexPolygon): 42293 (WebCore::GraphicsContext::strokeRect): 42294 (WebCore::GraphicsContext::fillRoundedRect): 42295 (WebCore::GraphicsContext::fillPath): 42296 (WebCore::GraphicsContext::strokePath): 42297 42298 2010-09-30 Anders Carlsson <andersca (a] apple.com> 42299 42300 Reviewed by Dan Bernstein and Darin Adler. 42301 42302 WebCore uses the main thread to process sleep notifications 42303 https://bugs.webkit.org/show_bug.cgi?id=46935 42304 <rdar://problem/8495374> 42305 42306 Rewrite the old WebCorePowerNotifier to use IOKit directly. 42307 42308 On Snow Leopard, set up power notifications to arrive on a dispatch queue, 42309 so that we can handle them quickly even if the main thread is hung. 42310 42311 (Tiger and Leopard will still get the old behavior). 42312 42313 * WebCore.xcodeproj/project.pbxproj: 42314 Link with IOKit. 42315 42316 * platform/mac/SharedTimerMac.mm: 42317 (WebCore::PowerObserver::PowerObserver): 42318 Initialize the IOKit machinery. 42319 42320 (WebCore::PowerObserver::~PowerObserver): 42321 Tear down the IOKit notifications. 42322 42323 (WebCore::PowerObserver::didReceiveSystemPowerNotification): 42324 Acknowledge the event immediately and then call the shared timer functions. On Snow Leopard, we 42325 make sure to call the shared timer functions on the main thread. 42326 42327 2010-09-30 James Simonsen <simonjam (a] chromium.org> 42328 42329 Reviewed by Adam Barth. 42330 42331 [Web Timing] Make requestEnd equal to start of response 42332 https://bugs.webkit.org/show_bug.cgi?id=46302 42333 42334 * page/Timing.cpp: 42335 (WebCore::Timing::requestEnd): 42336 42337 2010-09-30 Zhenyao Mo <zmo (a] google.com> 42338 42339 Reviewed by Kenneth Russell. 42340 42341 fast/canvas/webgl/draw-elements-out-of-bounds.html is crashing on Snow Leopard 42342 https://bugs.webkit.org/show_bug.cgi?id=46870 42343 42344 * platform/graphics/ANGLEWebKitBridge.cpp: 42345 (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge): Remove ShFinalize(). 42346 42347 2010-09-30 Ryosuke Niwa <rniwa (a] webkit.org> 42348 42349 Reviewed by Tony Chang. 42350 42351 WebKit nests font element when applying different font styles 42352 https://bugs.webkit.org/show_bug.cgi?id=45568 42353 42354 The bug was caused by fixRangeAndApplyInlineStyle's not including fully selected ancestors, 42355 and addInlineStyleIfNeeded's always surrounding the contents by new elements as supposed to 42356 adding font attributes or style attribute. 42357 42358 Fixed the bug by extending the node range in fixRangeAndApplyInlineStyle and finding 42359 the appropriate container node to add attributes in addInlineStyleIfNeeded. 42360 addInlineStyleIfNeeded now tires to add font and style attributes to the inner most font and 42361 span elements respectively. 42362 42363 Also added an early exit check to removeStyleFromRunBeforeApplyingStyle so that WebKit does not 42364 modify the contents when the entire contents already have the desired style. 42365 42366 Test: editing/style/inline-style-container.html 42367 42368 * editing/ApplyStyleCommand.cpp: 42369 (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle): 42370 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): 42371 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): 42372 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 42373 42374 2010-09-30 Jarred Nicholls <jarred (a] sencha.com> 42375 42376 Reviewed by Darin Adler. 42377 42378 Removed unnecessary calls to ceil() on an int 42379 Removing the call fixes MSVC build errors 42380 https://bugs.webkit.org/show_bug.cgi?id=46931 42381 42382 * platform/graphics/ContextShadow.cpp: 42383 (WebCore::ContextShadow::calculateLayerBoundingRect): 42384 42385 2010-09-30 David Hyatt <hyatt (a] apple.com> 42386 42387 Reviewed by Beth Dakin. 42388 42389 https://bugs.webkit.org/show_bug.cgi?id=46932 42390 42391 Get fast/blockflow/root-lr-basic.html results to be correct by patching a few more 42392 height() calls to be logicalHeight(). 42393 42394 * rendering/RenderBlock.cpp: 42395 (WebCore::RenderBlock::collapseMargins): 42396 (WebCore::RenderBlock::handleAfterSideOfBlock): 42397 42398 2010-09-30 Cris Neckar <cdn (a] chromium.org> 42399 42400 Reviewed by Darin Adler. 42401 42402 Added check to test for removed counter node when calling findPlaceForCounter() in updateCounters(). 42403 Added refcounting to counternodes in countermaps. 42404 https://bugs.webkit.org/show_bug.cgi?id=46387 42405 42406 Test: fast/css/counters/counter-traverse-table-cell.html 42407 42408 * rendering/CounterNode.cpp: 42409 (WebCore::CounterNode::create): 42410 * rendering/CounterNode.h: 42411 * rendering/RenderCounter.cpp: 42412 (WebCore::makeCounterNode): 42413 (WebCore::destroyCounterNodeWithoutMapRemoval): 42414 (WebCore::RenderCounter::destroyCounterNodes): 42415 (WebCore::RenderCounter::destroyCounterNode): 42416 (WebCore::updateCounters): 42417 42418 2010-09-30 David Hyatt <hyatt (a] apple.com> 42419 42420 Reviewed by Beth Dakin. 42421 42422 https://bugs.webkit.org/show_bug.cgi?id=46928 42423 42424 Add isLeftToRightDirection() to RenderStyle and change callers that did direction() == LTR and direction() == RTL to use this instead. 42425 42426 * css/CSSStyleSelector.cpp: 42427 (WebCore::CSSStyleSelector::isLeftPage): 42428 (WebCore::CSSStyleSelector::applyProperty): 42429 * editing/Editor.cpp: 42430 (WebCore::Editor::hasBidiSelection): 42431 * editing/VisiblePosition.cpp: 42432 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate): 42433 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate): 42434 * html/canvas/CanvasRenderingContext2D.cpp: 42435 (WebCore::CanvasRenderingContext2D::drawTextInternal): 42436 * rendering/InlineBox.h: 42437 (WebCore::InlineBox::isLeftToRightDirection): 42438 (WebCore::InlineBox::caretLeftmostOffset): 42439 (WebCore::InlineBox::caretRightmostOffset): 42440 * rendering/InlineFlowBox.cpp: 42441 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes): 42442 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 42443 (WebCore::InlineFlowBox::paintTextDecorations): 42444 * rendering/InlineIterator.h: 42445 (WebCore::InlineIterator::direction): 42446 * rendering/InlineTextBox.cpp: 42447 (WebCore::InlineTextBox::selectionRect): 42448 (WebCore::InlineTextBox::placeEllipsisBox): 42449 (WebCore::InlineTextBox::paint): 42450 (WebCore::InlineTextBox::paintSelection): 42451 (WebCore::InlineTextBox::paintCompositionBackground): 42452 (WebCore::InlineTextBox::paintDecoration): 42453 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): 42454 (WebCore::InlineTextBox::paintTextMatchMarker): 42455 (WebCore::InlineTextBox::computeRectForReplacementMarker): 42456 (WebCore::InlineTextBox::textPos): 42457 (WebCore::InlineTextBox::offsetForPosition): 42458 (WebCore::InlineTextBox::positionForOffset): 42459 * rendering/RenderBlock.cpp: 42460 (WebCore::RenderBlock::adjustPositionedBlock): 42461 (WebCore::RenderBlock::determineLogicalLeftPositionForChild): 42462 (WebCore::RenderBlock::paintColumnRules): 42463 (WebCore::RenderBlock::paintColumnContents): 42464 (WebCore::RenderBlock::getHorizontalSelectionGapInfo): 42465 (WebCore::RenderBlock::logicalLeftOffsetForLine): 42466 (WebCore::RenderBlock::logicalRightOffsetForLine): 42467 (WebCore::RenderBlock::rightmostPosition): 42468 (WebCore::RenderBlock::leftmostPosition): 42469 (WebCore::RenderBlock::columnRectAt): 42470 (WebCore::RenderBlock::layoutColumns): 42471 (WebCore::getBorderPaddingMargin): 42472 (WebCore::RenderBlock::localCaretRect): 42473 (WebCore::RenderBlock::marginStartForChild): 42474 (WebCore::RenderBlock::marginEndForChild): 42475 (WebCore::RenderBlock::setMarginStartForChild): 42476 (WebCore::RenderBlock::setMarginEndForChild): 42477 * rendering/RenderBlockLineLayout.cpp: 42478 (WebCore::getBorderPaddingMargin): 42479 (WebCore::RenderBlock::constructLine): 42480 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 42481 (WebCore::RenderBlock::determineStartPosition): 42482 (WebCore::RenderBlock::skipTrailingWhitespace): 42483 (WebCore::RenderBlock::skipLeadingWhitespace): 42484 (WebCore::RenderBlock::findNextLineBreak): 42485 (WebCore::RenderBlock::checkLinesForTextOverflow): 42486 * rendering/RenderBox.cpp: 42487 (WebCore::RenderBox::marginStart): 42488 (WebCore::RenderBox::marginEnd): 42489 (WebCore::RenderBox::setMarginStart): 42490 (WebCore::RenderBox::setMarginEnd): 42491 (WebCore::RenderBox::scrollWidth): 42492 (WebCore::RenderBox::computeInlineDirectionMargins): 42493 (WebCore::RenderBox::containingBlockWidthForPositioned): 42494 (WebCore::RenderBox::computePositionedLogicalWidthUsing): 42495 (WebCore::RenderBox::computePositionedLogicalWidthReplaced): 42496 (WebCore::RenderBox::localCaretRect): 42497 * rendering/RenderBoxModelObject.cpp: 42498 (WebCore::RenderBoxModelObject::relativePositionOffsetX): 42499 * rendering/RenderFieldset.cpp: 42500 (WebCore::RenderFieldset::layoutLegend): 42501 * rendering/RenderFileUploadControl.cpp: 42502 (WebCore::RenderFileUploadControl::paintObject): 42503 * rendering/RenderFlexibleBox.cpp: 42504 (WebCore::FlexBoxIterator::FlexBoxIterator): 42505 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 42506 (WebCore::RenderFlexibleBox::layoutVerticalBox): 42507 * rendering/RenderLayer.cpp: 42508 (WebCore::RenderLayer::computeScrollDimensions): 42509 * rendering/RenderListBox.cpp: 42510 (WebCore::RenderListBox::paintItemForeground): 42511 * rendering/RenderListItem.cpp: 42512 (WebCore::RenderListItem::positionListMarker): 42513 (WebCore::RenderListItem::markerTextWithSuffix): 42514 * rendering/RenderListMarker.cpp: 42515 (WebCore::RenderListMarker::paint): 42516 (WebCore::RenderListMarker::updateMargins): 42517 (WebCore::RenderListMarker::suffix): 42518 * rendering/RenderMarquee.cpp: 42519 (WebCore::RenderMarquee::computePosition): 42520 * rendering/RenderMeter.cpp: 42521 (WebCore::RenderMeter::valuePartRect): 42522 * rendering/RenderProgress.cpp: 42523 (WebCore::RenderProgress::valuePartRect): 42524 * rendering/RenderTable.cpp: 42525 (WebCore::RenderTable::calcBorderLeft): 42526 (WebCore::RenderTable::calcBorderRight): 42527 * rendering/RenderTableCell.cpp: 42528 (WebCore::RenderTableCell::clippedOverflowRectForRepaint): 42529 (WebCore::RenderTableCell::borderHalfLeft): 42530 (WebCore::RenderTableCell::borderHalfRight): 42531 (WebCore::RenderTableCell::collectBorderStyles): 42532 (WebCore::RenderTableCell::paintCollapsedBorder): 42533 * rendering/RenderTableSection.cpp: 42534 (WebCore::RenderTableSection::layoutRows): 42535 (WebCore::RenderTableSection::recalcOuterBorder): 42536 (WebCore::RenderTableSection::paintObject): 42537 (WebCore::RenderTableSection::nodeAtPoint): 42538 * rendering/RenderText.cpp: 42539 (WebCore::RenderText::localCaretRect): 42540 (WebCore::RenderText::positionLineBox): 42541 * rendering/RenderTextControlSingleLine.cpp: 42542 (WebCore::RenderTextControlSingleLine::forwardEvent): 42543 * rendering/RenderThemeMac.mm: 42544 (WebCore::RenderThemeMac::levelIndicatorFor): 42545 (WebCore::RenderThemeMac::paintProgressBar): 42546 * rendering/RenderTreeAsText.cpp: 42547 (WebCore::writeTextRun): 42548 * rendering/SVGInlineTextBox.cpp: 42549 (WebCore::SVGInlineTextBox::measureCharacter): 42550 (WebCore::SVGInlineTextBox::buildLayoutInformation): 42551 * rendering/SVGRenderTreeAsText.cpp: 42552 (WebCore::writeSVGInlineTextBox): 42553 * rendering/SVGTextLayoutUtilities.cpp: 42554 (WebCore::svgTextRunForInlineTextBox): 42555 * rendering/style/RenderStyle.cpp: 42556 (WebCore::RenderStyle::borderStartWidth): 42557 (WebCore::RenderStyle::borderEndWidth): 42558 (WebCore::RenderStyle::marginStart): 42559 (WebCore::RenderStyle::marginEnd): 42560 (WebCore::RenderStyle::marginStartUsing): 42561 (WebCore::RenderStyle::marginEndUsing): 42562 (WebCore::RenderStyle::paddingStart): 42563 (WebCore::RenderStyle::paddingEnd): 42564 * rendering/style/RenderStyle.h: 42565 (WebCore::InheritedFlags::isLeftToRightDirection): 42566 * wml/WMLTableElement.cpp: 42567 (WebCore::WMLTableElement::alignCells): 42568 42569 2010-09-30 David Hyatt <hyatt (a] apple.com> 42570 42571 Reviewed by Simon Fraser. 42572 42573 https://bugs.webkit.org/show_bug.cgi?id=46923 42574 42575 Make determineLogicalLeftPositionForChild block-flow-aware. Rewrite the function so that there aren't 42576 completely separate LTR/RTL cases. 42577 42578 Added fast/blockflow/inline-direction-positioning.html 42579 42580 * rendering/RenderBlock.cpp: 42581 (WebCore::RenderBlock::determineLogicalLeftPositionForChild): 42582 (WebCore::RenderBlock::setLogicalLeftForChild): 42583 * rendering/RenderBlock.h: 42584 (WebCore::RenderBlock::logicalWidthForChild): 42585 (WebCore::RenderBlock::logicalRightOffsetForContent): 42586 (WebCore::RenderBlock::logicalLeftOffsetForContent): 42587 42588 2010-09-29 Adam Roben <aroben (a] apple.com> 42589 42590 Fix color media queries on Windows 42591 42592 Fixes <http://webkit.org/b/42973> <rdar://problem/8234072> (color:8) 42593 media query does not evaluate to true for 32bpp displays on Windows 42594 42595 Test: fast/media/color-does-not-include-alpha.html 42596 42597 Reviewed by Darin Adler. 42598 42599 * platform/win/PlatformScreenWin.cpp: 42600 (WebCore::screenDepthPerComponent): Use screenDepth instead of trying 42601 to interpret DEVMODE directly, since screenDepth knows how to correct 42602 for video drivers that return 32 instead of 24. 42603 42604 2010-09-29 Adam Roben <aroben (a] apple.com> 42605 42606 Make sure screen.colorDepth/screen.pixelDepth don't include the bits 42607 used for alpha 42608 42609 Fixes <http://webkit.org/b/42972> <rdar://problem/8234071> 42610 screen.colorDepth and screen.pixelDepth return 32 on Windows, but 42611 should return 24 (according to CSSOM View and Firefox) 42612 42613 Reviewed by Darin Adler. 42614 42615 * platform/win/PlatformScreenWin.cpp: 42616 (WebCore::screenDepth): If Windows says there are 32 bits per pixel, 42617 return 24 instead, as 32 includes the alpha component but this 42618 function is supposed to ignore the alpha component. 42619 42620 2010-09-30 Daniel Cheng <dcheng (a] chromium.org> 42621 42622 Reviewed by Tony Chang. 42623 42624 [chromium] Refactor ChromiumDataObject to use getters/setters. 42625 https://bugs.webkit.org/show_bug.cgi?id=46559 42626 42627 This is an intermediate step to converting ChromiumDataObject to use 42628 callbacks to the browser to retrieve data. 42629 42630 This is covered by existing tests. 42631 42632 * editing/chromium/EditorChromium.cpp: 42633 (WebCore::Editor::newGeneralClipboard): 42634 * page/chromium/EventHandlerChromium.cpp: 42635 (WebCore::EventHandler::createDraggingClipboard): 42636 * platform/chromium/ChromiumDataObject.cpp: 42637 (WebCore::ChromiumDataObject::clearData): 42638 (WebCore::ChromiumDataObject::clearAll): 42639 (WebCore::ChromiumDataObject::clearAllExceptFiles): 42640 (WebCore::ChromiumDataObject::hasData): 42641 (WebCore::ChromiumDataObject::types): 42642 (WebCore::ChromiumDataObject::getData): 42643 (WebCore::ChromiumDataObject::setData): 42644 (WebCore::ChromiumDataObject::ChromiumDataObject): 42645 * platform/chromium/ChromiumDataObject.h: 42646 (WebCore::ChromiumDataObject::create): 42647 (WebCore::ChromiumDataObject::urlTitle): 42648 (WebCore::ChromiumDataObject::setUrlTitle): 42649 (WebCore::ChromiumDataObject::htmlBaseUrl): 42650 (WebCore::ChromiumDataObject::setHtmlBaseUrl): 42651 (WebCore::ChromiumDataObject::containsFilenames): 42652 (WebCore::ChromiumDataObject::filenames): 42653 (WebCore::ChromiumDataObject::setFilenames): 42654 (WebCore::ChromiumDataObject::fileExtension): 42655 (WebCore::ChromiumDataObject::setFileExtension): 42656 (WebCore::ChromiumDataObject::fileContentFilename): 42657 (WebCore::ChromiumDataObject::setFileContentFilename): 42658 (WebCore::ChromiumDataObject::fileContent): 42659 (WebCore::ChromiumDataObject::setFileContent): 42660 * platform/chromium/ClipboardChromium.cpp: 42661 (WebCore::normalizeType): 42662 (WebCore::ClipboardChromium::clearData): 42663 (WebCore::ClipboardChromium::clearAllData): 42664 (WebCore::ClipboardChromium::getData): 42665 (WebCore::ClipboardChromium::setData): 42666 (WebCore::ClipboardChromium::types): 42667 (WebCore::ClipboardChromium::files): 42668 (WebCore::writeImageToDataObject): 42669 (WebCore::ClipboardChromium::declareAndWriteDragImage): 42670 (WebCore::ClipboardChromium::writeURL): 42671 (WebCore::ClipboardChromium::writeRange): 42672 (WebCore::ClipboardChromium::writePlainText): 42673 * platform/chromium/ClipboardChromiumWin.cpp: 42674 (WebCore::ClipboardChromium::validateFileName): 42675 * platform/chromium/ClipboardMimeTypes.cpp: 42676 * platform/chromium/ClipboardMimeTypes.h: 42677 * platform/chromium/DragDataChromium.cpp: 42678 (WebCore::containsHTML): 42679 (WebCore::DragData::containsURL): 42680 (WebCore::DragData::asURL): 42681 (WebCore::DragData::containsFiles): 42682 (WebCore::DragData::asFilenames): 42683 (WebCore::DragData::containsPlainText): 42684 (WebCore::DragData::asPlainText): 42685 (WebCore::DragData::canSmartReplace): 42686 (WebCore::DragData::asFragment): 42687 * platform/chromium/ReadableDataObject.cpp: 42688 (WebCore::ReadableDataObject::getURL): 42689 (WebCore::ReadableDataObject::getHTML): 42690 * platform/chromium/WritableDataObject.cpp: 42691 (WebCore::WritableDataObject::clearData): 42692 (WebCore::WritableDataObject::setData): 42693 (WebCore::WritableDataObject::setURL): 42694 (WebCore::WritableDataObject::setHTML): 42695 42696 2010-09-30 Chris Marrin <cmarrin (a] apple.com> 42697 42698 Reviewed by Simon Fraser. 42699 42700 Make 2D accelerated canvas rendering build on Mac 42701 https://bugs.webkit.org/show_bug.cgi?id=46007 42702 42703 Add accelerated 2D rendering files to Mac build, fix build errors, 42704 add ifdefs to compile only when the ACCELERATED_2D_CANVAS flag is 42705 enabled, and add a skeleton of the mac specific file so it builds. 42706 42707 DrawingBufferMac.mm, the Mac specific file does nothing right now 42708 other than initialize and create a layer. The rest will be added 42709 when I do the actual implementation. 42710 42711 The most significant change was to SharedGraphicsContext3D, which 42712 had a static local OwnPtr in one of the methods. This was causing 42713 the exit time destructor warning. Getting rid of the OwnPtr fixed 42714 the problem. Since the pointer that was being wrapped was to a 42715 static object that would never get destroyed, the OwnPtr was not 42716 necessary. 42717 42718 I also added the ACCELERATED_2D_CANVAS flag to build-webkit 42719 and FeatureDefines.xcconfig for WebCore, WebKit and JavaScriptCore. 42720 But right now the flag is off by default. 42721 42722 * Configurations/FeatureDefines.xcconfig: 42723 * WebCore.xcodeproj/project.pbxproj: 42724 * platform/graphics/gpu/DrawingBuffer.cpp: 42725 * platform/graphics/gpu/DrawingBuffer.h: 42726 (WebCore::DrawingBuffer::WillPublishCallback::~WillPublishCallback): 42727 * platform/graphics/gpu/LoopBlinnClassifier.cpp: 42728 * platform/graphics/gpu/LoopBlinnMathUtils.cpp: 42729 * platform/graphics/gpu/LoopBlinnTextureCoords.cpp: 42730 * platform/graphics/gpu/Shader.cpp: 42731 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 42732 (WebCore::SharedGraphicsContext3D::allContexts): 42733 * platform/graphics/gpu/SolidFillShader.cpp: 42734 * platform/graphics/gpu/TexShader.cpp: 42735 * platform/graphics/gpu/Texture.cpp: 42736 * platform/graphics/gpu/Texture.h: 42737 * platform/graphics/gpu/TilingData.cpp: 42738 * platform/graphics/gpu/mac: Added. 42739 * platform/graphics/gpu/mac/DrawingBufferMac.mm: Added. 42740 (WebCore::DrawingBuffer::DrawingBuffer): 42741 (WebCore::DrawingBuffer::~DrawingBuffer): 42742 (WebCore::DrawingBuffer::reset): 42743 (WebCore::DrawingBuffer::platformLayer): 42744 42745 2010-09-30 Renata Hodovan <reni (a] inf.u-szeged.hu> 42746 42747 Reviewed by Dirk Schulze. 42748 42749 SVGFECompositeElement doesn't support dynamic invalidation, when attributes change. 42750 https://bugs.webkit.org/show_bug.cgi?id=46902 42751 42752 Tests: svg/dynamic-updates/SVGFECompositeElement-dom-in-attr.html 42753 svg/dynamic-updates/SVGFECompositeElement-dom-in2-attr.html 42754 svg/dynamic-updates/SVGFECompositeElement-dom-k1-attr.html 42755 svg/dynamic-updates/SVGFECompositeElement-dom-k2-attr.html 42756 svg/dynamic-updates/SVGFECompositeElement-dom-k3-attr.html 42757 svg/dynamic-updates/SVGFECompositeElement-dom-k4-attr.html 42758 svg/dynamic-updates/SVGFECompositeElement-dom-operator-attr.html 42759 svg/dynamic-updates/SVGFECompositeElement-svgdom-in-prop.html 42760 svg/dynamic-updates/SVGFECompositeElement-svgdom-in2-prop.html 42761 svg/dynamic-updates/SVGFECompositeElement-svgdom-k1-prop.html 42762 svg/dynamic-updates/SVGFECompositeElement-svgdom-k2-prop.html 42763 svg/dynamic-updates/SVGFECompositeElement-svgdom-k3-prop.html 42764 svg/dynamic-updates/SVGFECompositeElement-svgdom-k4-prop.html 42765 svg/dynamic-updates/SVGFECompositeElement-svgdom-operator-prop.html 42766 42767 * svg/SVGFECompositeElement.cpp: 42768 (WebCore::SVGFECompositeElement::svgAttributeChanged): 42769 * svg/SVGFECompositeElement.h: 42770 42771 2010-09-29 Jeremy Orlow <jorlow (a] chromium.org> 42772 42773 Reviewed by Steve Block. 42774 42775 Finished IDBTransaction for IndexedDB 42776 https://bugs.webkit.org/show_bug.cgi?id=46823 42777 42778 Switch the rest of IndexedDB to use transactions. 42779 Implement most of setVersion. 42780 Add IDBTransactions to IDBAny, IDBCursor, IDBRequest, etc. 42781 Switch to using the standard cross thread task stuff. 42782 Make everything threadsafe so it works with cross thread copy 42783 (will be useful in the future). 42784 Fix some subtle bugs in transactions. 42785 42786 Various bits of clean up (when I couldn't resist). 42787 42788 * bindings/js/JSIDBAnyCustom.cpp: 42789 (WebCore::toJS): 42790 * bindings/v8/IDBBindingUtilities.cpp: 42791 (WebCore::LocalContext::LocalContext): 42792 (WebCore::LocalContext::~LocalContext): 42793 (WebCore::createIDBKeyFromSerializedValueAndKeyPath): 42794 * bindings/v8/SerializedScriptValue.cpp: 42795 (WebCore::SerializedScriptValue::release): 42796 (WebCore::SerializedScriptValue::SerializedScriptValue): 42797 * bindings/v8/SerializedScriptValue.h: 42798 * bindings/v8/custom/V8IDBAnyCustom.cpp: 42799 (WebCore::toV8): 42800 * platform/CrossThreadCopier.cpp: 42801 * storage/IDBAny.cpp: 42802 (WebCore::IDBAny::idbFactory): 42803 (WebCore::IDBAny::idbTransaction): 42804 (WebCore::IDBAny::set): 42805 * storage/IDBAny.h: 42806 * storage/IDBCallbacks.h: 42807 * storage/IDBCursor.cpp: 42808 (WebCore::IDBCursor::IDBCursor): 42809 (WebCore::IDBCursor::update): 42810 (WebCore::IDBCursor::continueFunction): 42811 (WebCore::IDBCursor::remove): 42812 * storage/IDBCursor.h: 42813 (WebCore::IDBCursor::create): 42814 * storage/IDBCursorBackendImpl.cpp: 42815 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): 42816 (WebCore::IDBCursorBackendImpl::update): 42817 (WebCore::IDBCursorBackendImpl::updateInternal): 42818 (WebCore::IDBCursorBackendImpl::continueFunction): 42819 (WebCore::IDBCursorBackendImpl::continueFunctionInternal): 42820 (WebCore::IDBCursorBackendImpl::remove): 42821 (WebCore::IDBCursorBackendImpl::removeInternal): 42822 * storage/IDBCursorBackendImpl.h: 42823 (WebCore::IDBCursorBackendImpl::create): 42824 * storage/IDBDatabase.cpp: 42825 (WebCore::IDBDatabase::setSetVersionTransaction): 42826 (WebCore::IDBDatabase::createObjectStore): 42827 (WebCore::IDBDatabase::removeObjectStore): 42828 (WebCore::IDBDatabase::setVersion): 42829 (WebCore::IDBDatabase::close): 42830 * storage/IDBDatabase.h: 42831 * storage/IDBDatabase.idl: 42832 * storage/IDBDatabaseBackendImpl.cpp: 42833 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 42834 (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): 42835 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 42836 (WebCore::IDBDatabaseBackendImpl::removeObjectStoreInternal): 42837 (WebCore::IDBDatabaseBackendImpl::setVersion): 42838 (WebCore::IDBDatabaseBackendImpl::setVersionInternal): 42839 (WebCore::IDBDatabaseBackendImpl::close): 42840 * storage/IDBDatabaseBackendImpl.h: 42841 * storage/IDBDatabaseBackendInterface.h: 42842 * storage/IDBFactory.cpp: 42843 (WebCore::IDBFactory::open): 42844 * storage/IDBIndex.cpp: 42845 (WebCore::IDBIndex::IDBIndex): 42846 (WebCore::IDBIndex::openObjectCursor): 42847 (WebCore::IDBIndex::openCursor): 42848 (WebCore::IDBIndex::getObject): 42849 (WebCore::IDBIndex::get): 42850 * storage/IDBIndex.h: 42851 (WebCore::IDBIndex::create): 42852 * storage/IDBIndexBackendImpl.cpp: 42853 (WebCore::IDBIndexBackendImpl::openCursorInternal): 42854 (WebCore::IDBIndexBackendImpl::openObjectCursor): 42855 (WebCore::IDBIndexBackendImpl::openCursor): 42856 (WebCore::IDBIndexBackendImpl::getInternal): 42857 (WebCore::IDBIndexBackendImpl::getObject): 42858 (WebCore::IDBIndexBackendImpl::get): 42859 * storage/IDBIndexBackendImpl.h: 42860 * storage/IDBIndexBackendInterface.h: 42861 * storage/IDBKey.cpp: 42862 (WebCore::IDBKey::IDBKey): 42863 * storage/IDBKey.h: 42864 * storage/IDBKeyRange.h: 42865 * storage/IDBObjectStore.cpp: 42866 (WebCore::IDBObjectStore::IDBObjectStore): 42867 (WebCore::IDBObjectStore::add): 42868 (WebCore::IDBObjectStore::put): 42869 (WebCore::IDBObjectStore::remove): 42870 (WebCore::IDBObjectStore::createIndex): 42871 (WebCore::IDBObjectStore::index): 42872 (WebCore::IDBObjectStore::removeIndex): 42873 (WebCore::IDBObjectStore::openCursor): 42874 * storage/IDBObjectStore.idl: 42875 * storage/IDBObjectStoreBackendImpl.cpp: 42876 (WebCore::IDBObjectStoreBackendImpl::get): 42877 (WebCore::IDBObjectStoreBackendImpl::getInternal): 42878 (WebCore::IDBObjectStoreBackendImpl::put): 42879 (WebCore::IDBObjectStoreBackendImpl::putInternal): 42880 (WebCore::IDBObjectStoreBackendImpl::remove): 42881 (WebCore::IDBObjectStoreBackendImpl::removeInternal): 42882 (WebCore::IDBObjectStoreBackendImpl::createIndex): 42883 (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): 42884 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 42885 (WebCore::IDBObjectStoreBackendImpl::removeIndexInternal): 42886 (WebCore::IDBObjectStoreBackendImpl::openCursor): 42887 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal): 42888 * storage/IDBObjectStoreBackendImpl.h: 42889 * storage/IDBObjectStoreBackendInterface.h: 42890 * storage/IDBRequest.cpp: 42891 (WebCore::IDBRequest::IDBRequest): 42892 (WebCore::IDBRequest::resetReadyState): 42893 (WebCore::IDBRequest::onSuccess): 42894 (WebCore::IDBRequest::timerFired): 42895 * storage/IDBRequest.h: 42896 (WebCore::IDBRequest::create): 42897 * storage/IDBTransactionBackendImpl.cpp: 42898 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 42899 (WebCore::IDBTransactionBackendImpl::scheduleTask): 42900 (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): 42901 (WebCore::IDBTransactionBackendImpl::run): 42902 (WebCore::IDBTransactionBackendImpl::start): 42903 (WebCore::IDBTransactionBackendImpl::commit): 42904 (WebCore::IDBTransactionBackendImpl::timerFired): 42905 * storage/IDBTransactionBackendImpl.h: 42906 42907 2010-09-30 Csaba Osztrogonc <ossy (a] webkit.org> 42908 42909 Reviewed by Martin Robinson. 42910 42911 [Gtk] build still broken since r68521 42912 https://bugs.webkit.org/show_bug.cgi?id=46795 42913 42914 makevalues.pl and makeprop.pl generate 3 files in one run. 42915 Double or triple target is incorrect, because on a multicore 42916 machine make processes targets in parallel. 42917 42918 Setting a->b->c dependencies for 3 generated files guarantees 42919 that make doesn't execute the recipe of the rule more than one. 42920 42921 * GNUmakefile.am: Dependencies and missing headers added. 42922 42923 2010-09-30 Andrey Kosyakov <caseq (a] chromium.org> 42924 42925 Unreviewed build fix (marked ResourceRawHeaders.h as private) 42926 42927 * WebCore.xcodeproj/project.pbxproj: 42928 42929 2010-09-29 Andrey Kosyakov <caseq (a] chromium.org> 42930 42931 Reviewed by Pavel Feldman. 42932 42933 Web Inspector: display headers actually used by network stack in Resources tab 42934 https://bugs.webkit.org/show_bug.cgi?id=46092 42935 42936 * GNUmakefile.am: 42937 * WebCore.gypi: 42938 * WebCore.pro: 42939 * WebCore.vcproj/WebCore.vcproj: 42940 * inspector/InspectorController.cpp: 42941 (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible. 42942 * inspector/InspectorResource.cpp: 42943 (WebCore::InspectorResource::updateResponse): 42944 * platform/network/ResourceRawHeaders.h: Added. 42945 * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting. 42946 (WebCore::ResourceRequestBase::reportRawHeaders): 42947 (WebCore::ResourceRequestBase::setReportRawHeaders): 42948 (WebCore::ResourceRequestBase::ResourceRequestBase): 42949 * platform/network/ResourceResponseBase.cpp: Added support for raw headers. 42950 (WebCore::ResourceResponseBase::resourceRawHeaders): 42951 (WebCore::ResourceResponseBase::setResourceRawHeaders): 42952 * platform/network/ResourceResponseBase.h: 42953 42954 2010-09-29 Andrey Kosyakov <caseq (a] chromium.org> 42955 42956 Reviewed by Pavel Feldman. 42957 42958 Web Inspector: display headers actually used by network stack in Resources tab 42959 https://bugs.webkit.org/show_bug.cgi?id=46092 42960 42961 * GNUmakefile.am: 42962 * WebCore.gypi: 42963 * WebCore.pro: 42964 * WebCore.vcproj/WebCore.vcproj: 42965 * inspector/InspectorController.cpp: 42966 (WebCore::InspectorController::willSendRequest): enable raw headers reporting if front-end is visible. 42967 * inspector/InspectorResource.cpp: 42968 (WebCore::InspectorResource::updateResponse): 42969 * platform/network/ResourceRawHeaders.h: Added. 42970 * platform/network/ResourceRequestBase.h: Added flag to enable raw headers reporting. 42971 (WebCore::ResourceRequestBase::reportRawHeaders): 42972 (WebCore::ResourceRequestBase::setReportRawHeaders): 42973 (WebCore::ResourceRequestBase::ResourceRequestBase): 42974 * platform/network/ResourceResponseBase.cpp: Added support for raw headers. 42975 (WebCore::ResourceResponseBase::resourceRawHeaders): 42976 (WebCore::ResourceResponseBase::setResourceRawHeaders): 42977 * platform/network/ResourceResponseBase.h: 42978 42979 2010-09-30 Andreas Kling <andreas.kling (a] nokia.com> 42980 42981 Reviewed by Tor Arne Vestb. 42982 42983 [Qt] V8 port: Unbreak build 42984 42985 Add missing <wtf/text/CString.h> include. 42986 42987 * loader/PingLoader.cpp: 42988 42989 2010-09-29 Ilya Tikhonovsky <loislo (a] chromium.org> 42990 42991 Reviewed by Pavel Feldman. 42992 42993 Web Inspector: assign the resource loading finish time which was obtained from the network stack 42994 as the end time for the corresponding event in Timeline. 42995 See related change for Resources panel https://bugs.webkit.org/show_bug.cgi?id=45664 42996 42997 https://bugs.webkit.org/show_bug.cgi?id=46789 42998 42999 * inspector/InspectorController.cpp: 43000 (WebCore::InspectorController::didFinishLoading): 43001 (WebCore::InspectorController::didFailLoading): 43002 * inspector/InspectorTimelineAgent.cpp: 43003 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 43004 * inspector/InspectorTimelineAgent.h: 43005 43006 2010-09-29 Pavel Feldman <pfeldman (a] chromium.org> 43007 43008 Reviewed by Timothy Hatcher. 43009 43010 Web Inspector: implement sorting by timeline in network panel + filtering. 43011 https://bugs.webkit.org/show_bug.cgi?id=45657 43012 43013 A number of drive-by fixes, sorting by timeline added, 43014 0-based timeline for duration added, filters added, 43015 more love for detailed view + nice headers. 43016 43017 * English.lproj/localizedStrings.js: 43018 * inspector/front-end/DataGrid.js: 43019 (WebInspector.DataGrid): 43020 (WebInspector.DataGrid.prototype.markColumnAsSortedBy): 43021 (WebInspector.DataGrid.prototype.headerTableHeader): 43022 * inspector/front-end/NetworkPanel.js: 43023 (WebInspector.NetworkPanel): 43024 (WebInspector.NetworkPanel.prototype.get statusBarItems): 43025 (WebInspector.NetworkPanel.prototype._createTable): 43026 (WebInspector.NetworkPanel.prototype._makeHeaderInnerHTML): 43027 (WebInspector.NetworkPanel.prototype._createSortingFunctions): 43028 (WebInspector.NetworkPanel.prototype._sortByTimeline): 43029 (WebInspector.NetworkPanel.prototype._sortItems): 43030 (WebInspector.NetworkPanel.prototype._createFilterPanel): 43031 (WebInspector.NetworkPanel.prototype._showCategory): 43032 (WebInspector.NetworkPanel.prototype._hideCategory): 43033 (WebInspector.NetworkPanel.prototype._updateFilter): 43034 (WebInspector.NetworkPanel.prototype._filter): 43035 (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded): 43036 (WebInspector.NetworkPanel.prototype.reset): 43037 (WebInspector.NetworkPanel.prototype._setLargerResources): 43038 (WebInspector.NetworkDataGridNode.prototype.createCells): 43039 (WebInspector.NetworkDataGridNode.prototype._createDivInTD): 43040 (WebInspector.NetworkDataGridNode.prototype._refreshURLCell): 43041 (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell): 43042 (WebInspector.NetworkDataGridNode.prototype._appendSubtitle): 43043 (WebInspector.NetworkDataGridNode.SizeComparator): 43044 (WebInspector.NetworkDataGridNode.ResourcePropertyComparator): 43045 * inspector/front-end/ProfilesPanel.js: 43046 (WebInspector.ProfilesPanel): 43047 (WebInspector.ProfilesPanel.prototype.updateMainViewWidth): 43048 * inspector/front-end/StoragePanel.js: 43049 (WebInspector.StoragePanel): 43050 * inspector/front-end/TimelineGrid.js: 43051 (WebInspector.TimelineGrid.prototype.updateDividers): 43052 * inspector/front-end/TimelineOverviewPane.js: 43053 (WebInspector.TimelineOverviewPane): 43054 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth): 43055 * inspector/front-end/inspector.css: 43056 (.data-grid th.sort-ascending > div::after): 43057 (.data-grid th.sort-descending > div::after): 43058 (.status-bar-items): 43059 * inspector/front-end/networkPanel.css: 43060 (.network.panel .data-grid td): 43061 (.network.panel .data-grid th): 43062 (.network.panel .data-grid.small th): 43063 (.network.panel .data-grid .data-container): 43064 (.network.panel .data-grid.small .data-container): 43065 (.network.panel .data-grid select): 43066 (.network.panel .data-grid td.time-column): 43067 (.network-cell-subtitle): 43068 (.network-header-subtitle): 43069 (.network-event-divider): 43070 (.network.panel .network-timeline-grid.small .network-event-divider): 43071 (.network.panel .resources-dividers-label-bar): 43072 (.network.panel .network-timeline-grid.small .resources-dividers-label-bar): 43073 (.network.panel .resources-divider-label): 43074 (.network.panel .resources-dividers-label-bar .resources-divider): 43075 (.network.panel .network-timeline-grid.small .resources-dividers-label-bar .resources-divider): 43076 (.network.panel .resources-divider.first .resources-divider-label): 43077 (.network.panel .resources-dividers-label-bar .resources-divider.first): 43078 (#network-filter): 43079 (.data-grid table.data tr.revealed.network-category-websockets, .data-grid table.data tr.revealed.network-category-other): 43080 (.data-grid.filter-all table.data tr.revealed.network-category-other, .data-grid.filter-other table.data tr.revealed.network-category-other): 43081 43082 2010-09-30 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 43083 43084 Reviewed by Simon Hausmann. 43085 43086 [Qt] Ensure we always report a valid size for the video 43087 43088 Some QtMultimedia-backends require a paint before even giving us 43089 a size, so we start out by using the default video size, and then 43090 update it once QtMultimedia starts feeding us valid sizes. 43091 43092 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 43093 (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt): 43094 (WebCore::MediaPlayerPrivateQt::nativeSizeChanged): 43095 (WebCore::MediaPlayerPrivateQt::setSize): 43096 (WebCore::MediaPlayerPrivateQt::naturalSize): 43097 * platform/graphics/qt/MediaPlayerPrivateQt.h: 43098 43099 2010-09-30 Nikolas Zimmermann <nzimmermann (a] rim.com> 43100 43101 Reviewed by Andreas Kling. 43102 43103 RenderSVGTextPath lacks isSVGTextPath() method 43104 https://bugs.webkit.org/show_bug.cgi?id=46888 43105 43106 Make RenderSVGTextPath objects easily detectable, using a isSVGTextPath() method, like all other SVG renderers have. 43107 43108 * rendering/RenderObject.h: 43109 (WebCore::RenderObject::isSVGTextPath): Return false. 43110 * rendering/RenderSVGTextPath.h: Changed indentation of whole file. 43111 (WebCore::RenderSVGTextPath::isSVGTextPath): Return true. 43112 (WebCore::RenderSVGTextPath::renderName): 43113 (WebCore::toRenderSVGTextPath): Add helper casting methods. 43114 43115 2010-09-30 Nikolas Zimmermann <nzimmermann (a] rim.com> 43116 43117 Reviewed by Dirk Schulze. 43118 43119 AffineTransform should expose methods calculating the x/y scale factors 43120 https://bugs.webkit.org/show_bug.cgi?id=46887 43121 43122 Expose methods calculating the x/y scale factors for an AffineTransform. 43123 43124 * platform/graphics/transforms/AffineTransform.cpp: 43125 (WebCore::affineTransformDecompose): Move xScale / yScale calculations in their own functions. 43126 (WebCore::AffineTransform::xScale): 43127 (WebCore::AffineTransform::yScale): 43128 * platform/graphics/transforms/AffineTransform.h: 43129 43130 2010-09-30 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 43131 43132 Reviewed by Simon Hausmann. 43133 43134 [Qt] Ensure that the media player backend does not leave any resources around 43135 43136 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 43137 (WebCore::MediaPlayerPrivateQt::~MediaPlayerPrivateQt): 43138 43139 2010-09-30 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 43140 43141 Reviewed by Simon Hausmann. 43142 43143 Minor cleanup of MediaPlayerPrivateQt 43144 43145 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 43146 (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt): 43147 (WebCore::MediaPlayerPrivateQt::currentTime): 43148 (WebCore::MediaPlayerPrivateQt::positionChanged): 43149 (WebCore::MediaPlayerPrivateQt::paint): 43150 43151 2010-09-30 Jochen Eisinger <jochen (a] chromium.org> 43152 43153 Reviewed by Jeremy Orlow. 43154 43155 Mark unused parameters as such. 43156 https://bugs.webkit.org/show_bug.cgi?id=46880 43157 43158 * inspector/InspectorDOMAgent.cpp: 43159 * page/Geolocation.cpp: 43160 (WebCore::Geolocation::clearWatch): 43161 43162 2010-09-29 Pavel Podivilov <podivilov (a] chromium.org> 43163 43164 Reviewed by Pavel Feldman. 43165 43166 Web Inspector: extract Inspector Instrumentation API as a class. 43167 https://bugs.webkit.org/show_bug.cgi?id=46614 43168 43169 * CMakeLists.txt: 43170 * GNUmakefile.am: 43171 * WebCore.gypi: 43172 * WebCore.pro: 43173 * WebCore.vcproj/WebCore.vcproj: 43174 * WebCore.xcodeproj/project.pbxproj: 43175 * bindings/js/JSXMLHttpRequestCustom.cpp: 43176 (WebCore::JSXMLHttpRequest::send): 43177 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 43178 (WebCore::V8XMLHttpRequest::sendCallback): 43179 * dom/CharacterData.cpp: 43180 (WebCore::CharacterData::dispatchModifiedEvent): 43181 * dom/ContainerNode.cpp: 43182 (WebCore::ContainerNode::insertBefore): 43183 (WebCore::ContainerNode::parserInsertBefore): 43184 (WebCore::ContainerNode::replaceChild): 43185 (WebCore::ContainerNode::appendChild): 43186 (WebCore::ContainerNode::parserAddChild): 43187 (WebCore::notifyChildInserted): 43188 (WebCore::dispatchChildRemovalEvents): 43189 * dom/Element.cpp: 43190 (WebCore::Element::setAttribute): 43191 (WebCore::Element::removeAttribute): 43192 * inspector/InspectorController.cpp: 43193 (WebCore::InspectorController::InspectorController): 43194 (WebCore::InspectorController::~InspectorController): 43195 (WebCore::InspectorController::connectFrontend): 43196 (WebCore::InspectorController::disconnectFrontend): 43197 (WebCore::InspectorController::instrumentWillSendXMLHttpRequest): 43198 * inspector/InspectorController.h: 43199 * inspector/InspectorInstrumentation.cpp: Added. 43200 (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl): 43201 (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl): 43202 (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl): 43203 (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl): 43204 (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl): 43205 (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl): 43206 (WebCore::InspectorInstrumentation::characterDataModifiedImpl): 43207 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl): 43208 * inspector/InspectorInstrumentation.h: Added. 43209 (WebCore::InspectorInstrumentation::frontendCreated): 43210 (WebCore::InspectorInstrumentation::frontendDeleted): 43211 (WebCore::InspectorInstrumentation::hasFrontends): 43212 (WebCore::InspectorInstrumentation::willInsertDOMNode): 43213 (WebCore::InspectorInstrumentation::didInsertDOMNode): 43214 (WebCore::InspectorInstrumentation::willRemoveDOMNode): 43215 (WebCore::InspectorInstrumentation::willModifyDOMAttr): 43216 (WebCore::InspectorInstrumentation::didModifyDOMAttr): 43217 (WebCore::InspectorInstrumentation::characterDataModified): 43218 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest): 43219 (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext): 43220 (WebCore::InspectorInstrumentation::inspectorControllerForDocument): 43221 (WebCore::InspectorInstrumentation::inspectorControllerForPage): 43222 * workers/SharedWorker.cpp: 43223 43224 2010-09-30 Kwang Yul Seo <skyul (a] company100.net> 43225 43226 Reviewed by Darin Adler. 43227 43228 Build fix: Add ENABLE(INSPECTOR) guard 43229 https://bugs.webkit.org/show_bug.cgi?id=46852 43230 43231 Page does not have inspectorController() when ENABLE(INSPECTOR) is 0. 43232 43233 * inspector/InspectorController.h: 43234 (WebCore::InspectorController::inspectorControllerForDocument): 43235 43236 2010-09-30 Michael Nordman <michaeln (a] google.com> 43237 43238 Reviewed by David Levin. 43239 43240 Make it possible to copy platform specific data members of ResourceRequest and ResourceResponse 43241 across threads and to compare platform specific data members of ResourceRequest. 43242 - Added two instance methods to the platform specific subclasses: doPlatformAdopt and doPlatformCopyData. 43243 - Also added a "shadowable" static method for platformCompare to ResourceRequestBase, a similar method 43244 is already present on ResourceResponseBase. 43245 - Converted the cross thread structs defined in ResourceRequest/ResponseBase.h to base 43246 classes and extended those base classes in the platform specific headers to provide a place 43247 to hold additional fields. 43248 - Used this mechanism to have the chromium port's data members make the hop. 43249 https://bugs.webkit.org/show_bug.cgi?id=46430 43250 43251 No new tests. Just plumbing. 43252 43253 * WebCore.exp.in: removed the symbol for the now inlined == operator 43254 * WebCore.gypi: added chromium/ResourceResponse.cpp 43255 * platform/network/ResourceRequestBase.cpp: 43256 (WebCore::ResourceRequestBase::adopt): 43257 (WebCore::ResourceRequestBase::copyData): 43258 (WebCore::ResourceRequestBase::compare): 43259 * platform/network/ResourceRequestBase.h: 43260 (WebCore::ResourceRequestBase::platformCompare): 43261 (WebCore::operator==): 43262 (WebCore::operator!=): 43263 * platform/network/ResourceResponseBase.cpp: 43264 (WebCore::ResourceResponseBase::asResourceResponse): 43265 (WebCore::ResourceResponseBase::adopt): 43266 (WebCore::ResourceResponseBase::copyData): 43267 * platform/network/ResourceResponseBase.h: 43268 * platform/network/android/ResourceRequest.h: 43269 (WebCore::ResourceRequest::doPlatformCopyData): 43270 (WebCore::ResourceRequest::doPlatformAdopt): 43271 * platform/network/android/ResourceResponse.h: 43272 (WebCore::ResourceResponse::doPlatformCopyData): 43273 (WebCore::ResourceResponse::doPlatformAdopt): 43274 * platform/network/cf/ResourceRequest.h: 43275 (WebCore::ResourceRequest::doPlatformCopyData): 43276 (WebCore::ResourceRequest::doPlatformAdopt): 43277 * platform/network/cf/ResourceResponse.h: 43278 (WebCore::ResourceResponse::doPlatformCopyData): 43279 (WebCore::ResourceResponse::doPlatformAdopt): 43280 * platform/network/chromium/ResourceRequest.cpp: 43281 (WebCore::ResourceRequest::doPlatformCopyData): 43282 (WebCore::ResourceRequest::doPlatformAdopt): 43283 * platform/network/chromium/ResourceRequest.h: 43284 * platform/network/chromium/ResourceResponse.cpp: Added. 43285 (WebCore::ResourceResponse::doPlatformCopyData): 43286 (WebCore::ResourceResponse::doPlatformAdopt): 43287 * platform/network/chromium/ResourceResponse.h: 43288 * platform/network/curl/ResourceRequest.h: 43289 (WebCore::ResourceRequest::doPlatformCopyData): 43290 (WebCore::ResourceRequest::doPlatformAdopt): 43291 * platform/network/curl/ResourceResponse.h: 43292 (WebCore::ResourceResponse::doPlatformCopyData): 43293 (WebCore::ResourceResponse::doPlatformAdopt): 43294 * platform/network/mac/ResourceRequest.h: 43295 (WebCore::ResourceRequest::doPlatformCopyData): 43296 (WebCore::ResourceRequest::doPlatformAdopt): 43297 * platform/network/mac/ResourceResponse.h: 43298 (WebCore::ResourceResponse::doPlatformCopyData): 43299 (WebCore::ResourceResponse::doPlatformAdopt): 43300 * platform/network/qt/ResourceRequest.h: 43301 (WebCore::ResourceRequest::doPlatformCopyData): 43302 (WebCore::ResourceRequest::doPlatformAdopt): 43303 * platform/network/qt/ResourceResponse.h: 43304 (WebCore::ResourceResponse::doPlatformCopyData): 43305 (WebCore::ResourceResponse::doPlatformAdopt): 43306 * platform/network/soup/ResourceRequest.h: 43307 (WebCore::ResourceRequest::doPlatformCopyData): 43308 (WebCore::ResourceRequest::doPlatformAdopt): 43309 * platform/network/soup/ResourceResponse.h: 43310 (WebCore::ResourceResponse::doUpdateResourceResponse): 43311 (WebCore::ResourceResponse::doPlatformCopyData): 43312 (WebCore::ResourceResponse::doPlatformAdopt): 43313 43314 2010-09-29 Chris Rogers <crogers (a] google.com> 43315 43316 Reviewed by Kenneth Russell. 43317 43318 Put default initialize() and uninitialize() methods in AudioNode 43319 https://bugs.webkit.org/show_bug.cgi?id=46767 43320 43321 No new tests since audio API is not yet implemented. 43322 43323 * webaudio/AudioNode.cpp: 43324 (WebCore::AudioNode::initialize): 43325 (WebCore::AudioNode::uninitialize): 43326 * webaudio/AudioNode.h: 43327 43328 2010-09-29 Kent Tamura <tkent (a] chromium.org> 43329 43330 Reviewed by Dimitri Glazkov. 43331 43332 Refactor HTMLInputElement: Make DeprecatedInputType private. 43333 https://bugs.webkit.org/show_bug.cgi?id=46791 43334 43335 No new tests because this doesn't change any behavior. 43336 43337 * html/HTMLInputElement.cpp: 43338 (WebCore::HTMLInputElement::createTypeMap): 43339 * html/HTMLInputElement.h: 43340 Move DeprecatedInputType, deprecatedInputType() and 43341 parseToDateComponents() to the private section, make 43342 createTypeMap() a member function of HTMLInputElement. 43343 (WebCore::HTMLInputElement::deprecatedInputType): 43344 43345 2010-09-29 Mihai Parparita <mihaip (a] chromium.org> 43346 43347 Reviewed by Darin Fisher. 43348 43349 REGRESSION: page reload on back button after history.pushState with appearing/disappearing iframes 43350 https://bugs.webkit.org/show_bug.cgi?id=46324 43351 43352 Revert same document check to the way it was before r66238 for history 43353 entries created by pushState or fragment changes. Logic fror determining 43354 if same document navigation should be used is moved to HistoryItem. 43355 43356 Tests: fast/history/same-document-iframes-changing-fragment.html 43357 fast/history/same-document-iframes-changing-pushstate.html 43358 43359 * history/HistoryItem.cpp: 43360 (WebCore::HistoryItem::shouldDoSameDocumentNavigationTo): 43361 (WebCore::HistoryItem::hasSameDocumentTree): 43362 (WebCore::HistoryItem::hasSameFrames): 43363 * history/HistoryItem.h: 43364 * loader/FrameLoader.cpp: 43365 (WebCore::FrameLoader::loadItem): 43366 43367 * loader/FrameLoader.cpp: 43368 (WebCore::FrameLoader::loadItem): 43369 43370 2010-09-29 MORITA Hajime <morrita (a] google.com> 43371 43372 Unreviewed build fix. 43373 43374 WebCore::ESpeak causes missing symbol with no ENABLE_SVG 43375 https://bugs.webkit.org/show_bug.cgi?id=46865 43376 43377 Moves ESpeak related function definitions outside ENABLE_SVG block. 43378 43379 * css/CSSPrimitiveValueMappings.h: 43380 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 43381 (WebCore::CSSPrimitiveValue::operator ESpeak): 43382 (WebCore::CSSPrimitiveValue::operator EVectorEffect): 43383 43384 2010-09-29 Chris Rogers <crogers (a] google.com> 43385 43386 Reviewed by Kenneth Russell. 43387 43388 Add AudioChannelSplitter files 43389 https://bugs.webkit.org/show_bug.cgi?id=46290 43390 43391 No new tests since audio API is not yet implemented. 43392 43393 * webaudio/AudioChannelSplitter.cpp: Added. 43394 (WebCore::AudioChannelSplitter::AudioChannelSplitter): 43395 (WebCore::AudioChannelSplitter::process): 43396 (WebCore::AudioChannelSplitter::reset): 43397 * webaudio/AudioChannelSplitter.h: Added. 43398 (WebCore::AudioChannelSplitter::create): 43399 * webaudio/AudioChannelSplitter.idl: Added. 43400 43401 2010-09-29 Kinuko Yasuda <kinuko (a] chromium.org> 43402 43403 Reviewed by David Levin. 43404 43405 Fix DirectoryReader's behavior to trigger only one EntriesCallback per readEntries 43406 https://bugs.webkit.org/show_bug.cgi?id=46563 43407 43408 Test: fast/filesystem/read-directory.html 43409 43410 * fileapi/DOMFileSystem.cpp: 43411 (WebCore::DOMFileSystem::readDirectory): Changed to take DirectoryReader 43412 as a parameter. 43413 * fileapi/DOMFileSystem.h: 43414 (WebCore::DOMFileSystem::scheduleCallback): Added. 43415 * fileapi/DirectoryReader.cpp: 43416 (WebCore::DirectoryReader::DirectoryReader): Added initializer for 43417 m_hasMore flag. 43418 (WebCore::DirectoryReader::readEntries): Changed to schedule 43419 EntriesCallback with an empty array if m_hasMore flag is set false. 43420 * fileapi/DirectoryReader.h: 43421 (WebCore::DirectoryReader::filesystem): Added. 43422 (WebCore::DirectoryReader::setHasMore): Added. 43423 * fileapi/FileSystemCallbacks.cpp: 43424 (WebCore::EntriesCallbacks::create): 43425 (WebCore::EntriesCallbacks::EntriesCallbacks): Changed to take 43426 DirectoryReader as a parameter. 43427 (WebCore::EntriesCallbacks::didReadDirectoryEntry): 43428 (WebCore::EntriesCallbacks::didReadDirectoryEntries): Changed 1) not to 43429 trigger the second callback when hasMore is false, and 2) to update 43430 the DirectoryReader's m_hasMore flag. 43431 * fileapi/FileSystemCallbacks.h: 43432 43433 2010-09-29 Chris Rogers <crogers (a] google.com> 43434 43435 Reviewed by Kenneth Russell. 43436 43437 Add AudioGainNode files 43438 https://bugs.webkit.org/show_bug.cgi?id=46286 43439 43440 No new tests since audio API is not yet implemented. 43441 43442 * webaudio/AudioGainNode.cpp: Added. 43443 (WebCore::AudioGainNode::AudioGainNode): 43444 (WebCore::AudioGainNode::process): 43445 (WebCore::AudioGainNode::reset): 43446 (WebCore::AudioGainNode::checkNumberOfChannelsForInput): 43447 * webaudio/AudioGainNode.h: Added. 43448 (WebCore::AudioGainNode::create): 43449 (WebCore::AudioGainNode::gain): 43450 * webaudio/AudioGainNode.idl: Added. 43451 43452 2010-09-29 Chris Rogers <crogers (a] google.com> 43453 43454 Reviewed by Kenneth Russell. 43455 43456 Add AudioChannelMerger files 43457 https://bugs.webkit.org/show_bug.cgi?id=46291 43458 43459 No new tests since audio API is not yet implemented. 43460 43461 * webaudio/AudioChannelMerger.cpp: Added. 43462 (WebCore::AudioChannelMerger::AudioChannelMerger): 43463 (WebCore::AudioChannelMerger::process): 43464 (WebCore::AudioChannelMerger::reset): 43465 * webaudio/AudioChannelMerger.h: Added. 43466 (WebCore::AudioChannelMerger::create): 43467 * webaudio/AudioChannelMerger.idl: Added. 43468 43469 2010-09-29 Chris Fleizach <cfleizach (a] apple.com> 43470 43471 No review. Missed file for patch. 43472 43473 AX: implement CSS3 Speech "speak" 43474 https://bugs.webkit.org/show_bug.cgi?id=46827 43475 43476 * css/CSSParser.cpp: 43477 (WebCore::CSSParser::parseValue): 43478 43479 2010-09-29 Enrica Casucci <enrica (a] apple.com> 43480 43481 Reviewed by Darin Adler. 43482 43483 Crash at lineBreakExistsAtPosition + 125 43484 <rdar://problem/7028809> 43485 https://bugs.webkit.org/show_bug.cgi?id=46770 43486 43487 lineBreakExistsAtPosition is called from InsertTextCommand::input, 43488 where we compute the downstream position of the endingSelection(). 43489 Downstream can return the original position, that comes from a VisibleSelection 43490 but there is no guarantee that its renderer is still there. Everywhere we dereference 43491 a renderer we check if it's null. 43492 43493 There is no regression test. 43494 43495 * editing/htmlediting.cpp: 43496 (WebCore::lineBreakExistsAtPosition): Added check that the renderer is not null 43497 before dereferencing it. 43498 43499 2010-09-29 Sam Weinig <sam (a] webkit.org> 43500 43501 Reviewed by Darin Adler. 43502 43503 Add additional checks to StringBuilder. 43504 <rdar://problem/7761248> 43505 43506 * platform/text/StringBuilder.cpp: 43507 (WebCore::checkAppend): 43508 (WebCore::StringBuilder::append): 43509 (WebCore::StringBuilder::toString): 43510 (WebCore::StringBuilder::clear): 43511 (WebCore::StringBuilder::length): 43512 * platform/text/StringBuilder.h: 43513 (WebCore::StringBuilder::StringBuilder): 43514 (WebCore::StringBuilder::setNonNull): 43515 (WebCore::StringBuilder::isNull): 43516 43517 2010-09-29 Anders Carlsson <andersca (a] apple.com> 43518 43519 Reviewed by Darin Adler. 43520 43521 plugins/npruntime/invoke-failure.html fails in WebKit2 due to slightly different exception being thrown 43522 https://bugs.webkit.org/show_bug.cgi?id=46715 43523 <rdar://problem/8485909> 43524 43525 Remove exclamation points from exceptions. 43526 43527 * bindings/v8/V8NPObject.cpp: 43528 (WebCore::npObjectInvokeImpl): 43529 * bridge/c/c_instance.cpp: 43530 (JSC::Bindings::CInstance::invokeMethod): 43531 (JSC::Bindings::CInstance::invokeDefaultMethod): 43532 (JSC::Bindings::CInstance::invokeConstruct): 43533 43534 2010-09-29 Anders Carlsson <andersca (a] apple.com> 43535 43536 Reviewed by Darin Adler. 43537 43538 Add additional check to Text::wholeText. 43539 <rdar://problem/8304795> 43540 43541 * dom/Text.cpp: 43542 (WebCore::Text::wholeText): 43543 43544 2010-09-29 Brian Weinstein <bweinstein (a] apple.com> 43545 43546 Reviewed by Brady Eidson. 43547 43548 REGRESSION (r66129): Loading full-frame .swf file crashes with flash blocker extension enabled 43549 <https://bugs.webkit.org/show_bug.cgi?id=46773> 43550 <rdar://problem/8390975> 43551 43552 After r66129, start scripts were run on plugin documents, and cancelling the load of a plugin 43553 document could cause Safari to crash. 43554 43555 If a plugin load on an initial document is cancelled, we cancel the main resource load (where the 43556 main resource is the plugin), and if the load is restarted and allowed, we don't go through the manual 43557 loading path like we do on the initial load of a plugin in a plugin document. 43558 43559 Tests: plugins/plugin-document-load-prevented-userscript.html 43560 plugins/plugin-document-willSendRequest-null.html 43561 43562 * html/HTMLEmbedElement.cpp: 43563 (WebCore::HTMLEmbedElement::updateWidget): If the plugin load was cancelled, and this is in a 43564 plugin document, call a function on PluginDocument that cancels the main resource load, and 43565 sets a plugin document flag. 43566 * html/PluginDocument.cpp: 43567 (WebCore::PluginDocumentParser::appendBytes): Null check the widget's renderer, because it could be 43568 null if the load was cancelled. 43569 (WebCore::PluginDocument::PluginDocument): Initialize the new variable. 43570 (WebCore::PluginDocument::cancelManualPluginLoad): Cancel the main resource load of the plugin document 43571 (which is a plugin in the case of a plugin document). 43572 * html/PluginDocument.h: 43573 (WebCore::PluginDocument::shouldLoadPluginManually): Returns whether or not we should load the plugin 43574 manually. 43575 (WebCore::PluginDocument::setShouldLoadPluginManually): Set whether or not we should load the plugin 43576 manually. 43577 (WebCore::toPluginDocument): 43578 * loader/SubframeLoader.cpp: 43579 (WebCore::SubframeLoader::loadPlugin): Check if we should load the plugin manually according to the plugin 43580 document. 43581 43582 2010-09-29 David Hyatt <hyatt (a] apple.com> 43583 43584 Reviewed by Sam Weinig. 43585 43586 https://bugs.webkit.org/show_bug.cgi?id=46844, make estimateLogicalTopPosition 43587 block-flow-aware. 43588 43589 * rendering/RenderBlock.cpp: 43590 (WebCore::RenderBlock::estimateLogicalTopPosition): 43591 (WebCore::RenderBlock::collapsedMarginBeforeForChild): 43592 (WebCore::RenderBlock::collapsedMarginAfterForChild): 43593 * rendering/RenderBlock.h: 43594 43595 2010-09-29 Chris Rogers <crogers (a] google.com> 43596 43597 Reviewed by Kenneth Russell. 43598 43599 Minor cleanup to AudioContext 43600 https://bugs.webkit.org/show_bug.cgi?id=46843 43601 43602 No new tests since audio API is not yet implemented 43603 43604 * webaudio/AudioContext.cpp: 43605 (WebCore::AudioContext::lock): 43606 (WebCore::AudioContext::handleDeferredFinishDerefs): 43607 43608 2010-09-29 MORITA Hajime <morrita (a] google.com> 43609 43610 Reviewed by Eric Seidel. 43611 43612 Assertion failed when accessing -webkit-margin-top-collapse via computed style. 43613 https://bugs.webkit.org/show_bug.cgi?id=46798 43614 43615 There was a switch statement which missed enum entries in getPropertyCSSValue(). 43616 This change added these entries to prevent the leak. 43617 It also added extra case statements to encourage the compiler's help. 43618 43619 Test: fast/css/getComputedStyle/margin-top-bottom-collapse-alias.html 43620 43621 * css/CSSComputedStyleDeclaration.cpp: 43622 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 43623 43624 2010-09-29 Chris Rogers <crogers (a] google.com> 43625 43626 Reviewed by Kenneth Russell. 43627 43628 Limit number of AudioNode deletions per render quantum in AudioContext 43629 https://bugs.webkit.org/show_bug.cgi?id=46834 43630 43631 No new tests since audio API is not yet implemented. 43632 43633 * webaudio/AudioContext.cpp: 43634 (WebCore::AudioContext::handlePostRenderTasks): 43635 (WebCore::AudioContext::deleteMarkedNodes): 43636 43637 2010-09-29 David Hyatt <hyatt (a] apple.com> 43638 43639 Reviewed by Simon Fraser. 43640 43641 https://bugs.webkit.org/show_bug.cgi?id=46838 43642 43643 Get rid of the marginXXXUsing/setMarginXXXUsing methods on RenderBox. I'm inverting the way these are called 43644 and putting the methods on RenderBlock instead. The methods can be named better this way and the getters 43645 can operate on RenderBoxModelObjects instead of just RenderBoxes. 43646 43647 * rendering/RenderBlock.cpp: 43648 (WebCore::RenderBlock::layoutBlockChild): 43649 (WebCore::RenderBlock::marginBeforeForChild): 43650 (WebCore::RenderBlock::marginAfterForChild): 43651 (WebCore::RenderBlock::marginStartForChild): 43652 (WebCore::RenderBlock::marginEndForChild): 43653 (WebCore::RenderBlock::setMarginStartForChild): 43654 (WebCore::RenderBlock::setMarginEndForChild): 43655 (WebCore::RenderBlock::setMarginBeforeForChild): 43656 (WebCore::RenderBlock::setMarginAfterForChild): 43657 * rendering/RenderBlock.h: 43658 (WebCore::RenderBlock::logicalHeightForChild): 43659 (WebCore::RenderBlock::logicalTopForChild): 43660 * rendering/RenderBox.cpp: 43661 (WebCore::RenderBox::marginBefore): 43662 (WebCore::RenderBox::marginAfter): 43663 (WebCore::RenderBox::marginStart): 43664 (WebCore::RenderBox::marginEnd): 43665 (WebCore::RenderBox::setMarginStart): 43666 (WebCore::RenderBox::setMarginEnd): 43667 (WebCore::RenderBox::setMarginBefore): 43668 (WebCore::RenderBox::setMarginAfter): 43669 (WebCore::RenderBox::computeLogicalWidth): 43670 (WebCore::RenderBox::computeInlineDirectionMargins): 43671 (WebCore::RenderBox::computeBlockDirectionMargins): 43672 * rendering/RenderBox.h: 43673 (WebCore::RenderBox::setMarginTop): 43674 (WebCore::RenderBox::setMarginBottom): 43675 (WebCore::RenderBox::setMarginLeft): 43676 (WebCore::RenderBox::setMarginRight): 43677 43678 2010-09-29 Dan Bernstein <mitz (a] apple.com> 43679 43680 Reviewed by Sam Weinig. 43681 43682 Removed input type site-specific quirk for mail.google.com 43683 https://bugs.webkit.org/show_bug.cgi?id=46836 43684 43685 * bindings/js/JSHTMLInputElementCustom.cpp: 43686 (WebCore::needsGmailQuirk): Removed. 43687 (WebCore::JSHTMLInputElement::type): Removed this custom getter. 43688 * html/HTMLInputElement.idl: Removed the JSCCustomGetter custom attribute 43689 from the type attribute. 43690 43691 2010-09-29 Joseph Pecoraro <joepeck (a] webkit.org> 43692 43693 Reviewed by Simon Fraser. 43694 43695 CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent 43696 https://bugs.webkit.org/show_bug.cgi?id=46777 43697 43698 It should not be possible to get to be in the LoadingFromSourceElement 43699 state with a null current source node. This was a possible scenario 43700 where the current source node was cleared but the load state was not 43701 cleared as well. Tried and could not create a test case for this. 43702 43703 * html/HTMLMediaElement.cpp: 43704 (WebCore::HTMLMediaElement::userCancelledLoad): clear the load state because we also clear the current source node. 43705 43706 2010-09-29 David Hyatt <hyatt (a] apple.com> 43707 43708 Reviewed by Dan Bernstein. 43709 43710 https://bugs.webkit.org/show_bug.cgi?id=46835, patch a few more height/logicalHeights. Rename stretchesToViewHeight. 43711 43712 * page/FrameView.cpp: 43713 (WebCore::FrameView::layout): 43714 * rendering/RenderBlock.cpp: 43715 (WebCore::RenderBlock::layoutBlock): 43716 * rendering/RenderBlockLineLayout.cpp: 43717 (WebCore::RenderBlock::layoutInlineChildren): 43718 * rendering/RenderBox.cpp: 43719 (WebCore::RenderBox::computeLogicalHeight): 43720 * rendering/RenderBox.h: 43721 (WebCore::RenderBox::stretchesToViewport): 43722 * rendering/RenderBoxModelObject.cpp: 43723 (WebCore::RenderBoxModelObject::relativePositionOffsetY): 43724 43725 2010-09-29 Chris Fleizach <cfleizach (a] apple.com> 43726 43727 Reviewed by Darin Adler. 43728 43729 AX: implement CSS3 Speech "speak" 43730 https://bugs.webkit.org/show_bug.cgi?id=46827 43731 43732 Support the "speak" style as defined in 43733 http://www.w3.org/TR/css3-speech/#speak 43734 43735 This puts all the pieces in place for a platform to support this ability, but there's no platform implementation yet. 43736 43737 Test: platform/mac/accessibility/css-speech-speak.html 43738 43739 * accessibility/AccessibilityObject.h: 43740 (WebCore::AccessibilityObject::speakProperty): 43741 * accessibility/AccessibilityRenderObject.cpp: 43742 (WebCore::AccessibilityRenderObject::speakProperty): 43743 * accessibility/AccessibilityRenderObject.h: 43744 * accessibility/mac/AccessibilityObjectWrapper.mm: 43745 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 43746 * css/CSSComputedStyleDeclaration.cpp: 43747 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 43748 * css/CSSPrimitiveValueMappings.h: 43749 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 43750 (WebCore::CSSPrimitiveValue::operator ESpeak): 43751 * css/CSSPropertyNames.in: 43752 * css/CSSStyleSelector.cpp: 43753 (WebCore::CSSStyleSelector::applyProperty): 43754 * css/CSSValueKeywords.in: 43755 * rendering/style/RenderStyle.h: 43756 (WebCore::InheritedFlags::speak): 43757 (WebCore::InheritedFlags::setSpeak): 43758 (WebCore::InheritedFlags::initialSpeak): 43759 * rendering/style/RenderStyleConstants.h: 43760 * rendering/style/StyleRareInheritedData.cpp: 43761 (WebCore::StyleRareInheritedData::StyleRareInheritedData): 43762 (WebCore::StyleRareInheritedData::operator==): 43763 * rendering/style/StyleRareInheritedData.h: 43764 43765 2010-09-29 Joo Paulo Rechi Vita <jprvita (a] profusion.mobi> 43766 43767 Reviewed by Antonio Gomes. 43768 43769 [Curl] Fix unused and unitialized warnings. 43770 https://bugs.webkit.org/show_bug.cgi?id=46831 43771 43772 No new tests since no new funcionality has been added. 43773 43774 * platform/network/curl/ResourceHandleCurl.cpp: 43775 (WebCore::allowsAnyHTTPSCertificateHosts): 43776 * platform/network/curl/ResourceHandleManager.cpp: 43777 (WebCore::ResourceHandleManager::ResourceHandleManager): 43778 (WebCore::handleLocalReceiveResponse): 43779 (WebCore::ResourceHandleManager::downloadTimerCallback): 43780 (WebCore::ResourceHandleManager::initializeHandle): 43781 43782 2010-09-29 David Hyatt <hyatt (a] apple.com> 43783 43784 Reviewed by Sam Weinig. 43785 43786 https://bugs.webkit.org/show_bug.cgi?id=46824 43787 43788 Convert layoutBlockChild (but not the functions it calls) to be block-flow-aware. 43789 43790 fast/blockflow/root-lr.html progresses as a result of this change. 43791 43792 * rendering/RenderBlock.cpp: 43793 (WebCore::RenderBlock::estimateLogicalTopPosition): 43794 (WebCore::RenderBlock::determineLogicalLeftPositionForChild): 43795 (WebCore::RenderBlock::setLogicalTopForChild): 43796 (WebCore::RenderBlock::layoutBlockChild): 43797 * rendering/RenderBlock.h: 43798 (WebCore::RenderBlock::logicalHeightForChild): 43799 (WebCore::RenderBlock::logicalTopForChild): 43800 * rendering/RenderBox.h: 43801 43802 2010-09-29 Ryosuke Niwa <rniwa (a] webkit.org> 43803 43804 Reviewed by Antonio Gomes. 43805 43806 queryCommandValue "formatBlock" always returns false 43807 https://bugs.webkit.org/show_bug.cgi?id=21305 43808 43809 Implemented queryCommandValue('formatBlock'). We match the Firefox's behavior exactly 43810 because Firefox and Internet Explorer support the same set of elements 43811 (address, h1, h2, h3, h4, h5, h6, and p) and Firefox's behavior is more compatible with Opera. 43812 See the bug for the detailed discussion. 43813 43814 WebKit's implementation returns the local name of the lowest common ancestor 43815 of the selection with the tag name address, h1, h2, h3, h4, h5, h6, or p. 43816 It returns "" when there is no such an ancestor or there is no selection. 43817 43818 Test: editing/execCommand/query-format-block.html 43819 43820 * editing/Editor.cpp: 43821 (WebCore::isElementForFormatBlockCommand): 43822 (WebCore::Editor::elementForFormatBlockCommand): 43823 * editing/Editor.h: 43824 * editing/EditorCommand.cpp: 43825 (WebCore::valueFormatBlock): 43826 (WebCore::createCommandMap): 43827 43828 2010-09-29 Matt Perry <mpcomplete (a] chromium.org> 43829 43830 Reviewed by Darin Fisher. 43831 43832 Remove obsolete registerExtension variants from chromium port. 43833 https://bugs.webkit.org/show_bug.cgi?id=46683 43834 43835 * bindings/v8/V8DOMWindowShell.cpp: 43836 (WebCore::V8DOMWindowShell::createNewContext): 43837 * bindings/v8/V8Proxy.cpp: 43838 (WebCore::V8Proxy::registeredExtensionWithV8): 43839 (WebCore::V8Proxy::registerExtension): 43840 * bindings/v8/V8Proxy.h: 43841 43842 2010-09-29 Martin Robinson <mrobinson (a] igalia.com> 43843 43844 Reviewed by Chris Fleizach. 43845 43846 [GTK] editing/selection/selection-modify-crash.html crashes when run in Xvfb 43847 https://bugs.webkit.org/show_bug.cgi?id=46822 43848 43849 When parentObjectUnignored returns null in objectAndOffsetUnignored consider that 43850 a failure case. Handle this failure appropriately at all call sites. 43851 43852 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 43853 (webkit_accessible_text_get_caret_offset): Handle the failure of objectAndOffsetUnignored. 43854 (objectAndOffsetUnignored): Always check the return value of parentObjectUnignored and 43855 return 0 to indicate failure when that happens. 43856 * editing/gtk/SelectionControllerGtk.cpp: 43857 (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Handle the failure 43858 case of objectAndOffsetUnignored. 43859 43860 2010-09-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 43861 43862 Unreviewed, rolling out r68657. 43863 http://trac.webkit.org/changeset/68657 43864 https://bugs.webkit.org/show_bug.cgi?id=46820 43865 43866 reason "Breaks win debug build" (Requested by podivilov on 43867 #webkit). 43868 43869 * CMakeLists.txt: 43870 * GNUmakefile.am: 43871 * WebCore.gypi: 43872 * WebCore.pro: 43873 * WebCore.xcodeproj/project.pbxproj: 43874 * bindings/js/JSXMLHttpRequestCustom.cpp: 43875 (WebCore::JSXMLHttpRequest::send): 43876 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 43877 (WebCore::V8XMLHttpRequest::sendCallback): 43878 * dom/CharacterData.cpp: 43879 (WebCore::CharacterData::dispatchModifiedEvent): 43880 * dom/ContainerNode.cpp: 43881 (WebCore::ContainerNode::insertBefore): 43882 (WebCore::ContainerNode::parserInsertBefore): 43883 (WebCore::ContainerNode::replaceChild): 43884 (WebCore::ContainerNode::appendChild): 43885 (WebCore::ContainerNode::parserAddChild): 43886 (WebCore::notifyChildInserted): 43887 (WebCore::dispatchChildRemovalEvents): 43888 * dom/Element.cpp: 43889 (WebCore::Element::setAttribute): 43890 (WebCore::Element::removeAttribute): 43891 * inspector/InspectorController.cpp: 43892 (WebCore::InspectorController::InspectorController): 43893 (WebCore::InspectorController::~InspectorController): 43894 (WebCore::InspectorController::connectFrontend): 43895 (WebCore::InspectorController::disconnectFrontend): 43896 (WebCore::InspectorController::willInsertDOMNodeImpl): 43897 (WebCore::InspectorController::didInsertDOMNodeImpl): 43898 (WebCore::InspectorController::willRemoveDOMNodeImpl): 43899 (WebCore::InspectorController::didRemoveDOMNodeImpl): 43900 (WebCore::InspectorController::willModifyDOMAttrImpl): 43901 (WebCore::InspectorController::didModifyDOMAttrImpl): 43902 (WebCore::InspectorController::characterDataModifiedImpl): 43903 (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl): 43904 * inspector/InspectorController.h: 43905 (WebCore::InspectorController::willInsertDOMNode): 43906 (WebCore::InspectorController::didInsertDOMNode): 43907 (WebCore::InspectorController::willRemoveDOMNode): 43908 (WebCore::InspectorController::willModifyDOMAttr): 43909 (WebCore::InspectorController::didModifyDOMAttr): 43910 (WebCore::InspectorController::characterDataModified): 43911 (WebCore::InspectorController::instrumentWillSendXMLHttpRequest): 43912 (WebCore::InspectorController::inspectorControllerForScriptExecutionContext): 43913 (WebCore::InspectorController::inspectorControllerForNode): 43914 (WebCore::InspectorController::inspectorControllerForDocument): 43915 * inspector/InspectorInstrumentation.cpp: Removed. 43916 * inspector/InspectorInstrumentation.h: Removed. 43917 * workers/SharedWorker.cpp: 43918 43919 2010-09-29 Xiaomei Ji <xji (a] chromium.org> 43920 43921 Reviewed by David Levin. 43922 43923 Performance improvement for FontLinux. 43924 https://bugs.webkit.org/show_bug.cgi?id=46374 43925 43926 Reduce new/delete operations by storing the maximum capacity of the glyph 43927 array and use that value in subsequent HB_ShapeItem calls. (Note that a 43928 call to HB_ShapeItem may reduce the value of m_item.num_glyphs below the 43929 capacity.) 43930 43931 Also be consistent with zero'ing the glyph arrays before calling 43932 HB_ShapeItem. 43933 43934 There is no functionality changes so no new tests are added. 43935 43936 * platform/graphics/chromium/FontLinux.cpp: 43937 (WebCore::TextRunWalker::createGlyphArrays): 43938 (WebCore::TextRunWalker::resetGlyphArrays): 43939 (WebCore::TextRunWalker::shapeGlyphs): 43940 43941 2010-09-29 Pavel Podivilov <podivilov (a] chromium.org> 43942 43943 Reviewed by Pavel Feldman. 43944 43945 Web Inspector: extract Inspector Instrumentation API as a class. 43946 https://bugs.webkit.org/show_bug.cgi?id=46614 43947 43948 * CMakeLists.txt: 43949 * GNUmakefile.am: 43950 * WebCore.gypi: 43951 * WebCore.pro: 43952 * WebCore.xcodeproj/project.pbxproj: 43953 * bindings/js/JSXMLHttpRequestCustom.cpp: 43954 (WebCore::JSXMLHttpRequest::send): 43955 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 43956 (WebCore::V8XMLHttpRequest::sendCallback): 43957 * dom/CharacterData.cpp: 43958 (WebCore::CharacterData::dispatchModifiedEvent): 43959 * dom/ContainerNode.cpp: 43960 (WebCore::ContainerNode::insertBefore): 43961 (WebCore::ContainerNode::parserInsertBefore): 43962 (WebCore::ContainerNode::replaceChild): 43963 (WebCore::ContainerNode::appendChild): 43964 (WebCore::ContainerNode::parserAddChild): 43965 (WebCore::notifyChildInserted): 43966 (WebCore::dispatchChildRemovalEvents): 43967 * dom/Element.cpp: 43968 (WebCore::Element::setAttribute): 43969 (WebCore::Element::removeAttribute): 43970 * inspector/InspectorController.cpp: 43971 (WebCore::InspectorController::InspectorController): 43972 (WebCore::InspectorController::~InspectorController): 43973 (WebCore::InspectorController::connectFrontend): 43974 (WebCore::InspectorController::disconnectFrontend): 43975 (WebCore::InspectorController::instrumentWillSendXMLHttpRequest): 43976 * inspector/InspectorController.h: 43977 * inspector/InspectorInstrumentation.cpp: Added. 43978 (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl): 43979 (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl): 43980 (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl): 43981 (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl): 43982 (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl): 43983 (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl): 43984 (WebCore::InspectorInstrumentation::characterDataModifiedImpl): 43985 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl): 43986 * inspector/InspectorInstrumentation.h: Added. 43987 (WebCore::InspectorInstrumentation::frontendCreated): 43988 (WebCore::InspectorInstrumentation::frontendDeleted): 43989 (WebCore::InspectorInstrumentation::hasFrontends): 43990 (WebCore::InspectorInstrumentation::willInsertDOMNode): 43991 (WebCore::InspectorInstrumentation::didInsertDOMNode): 43992 (WebCore::InspectorInstrumentation::willRemoveDOMNode): 43993 (WebCore::InspectorInstrumentation::willModifyDOMAttr): 43994 (WebCore::InspectorInstrumentation::didModifyDOMAttr): 43995 (WebCore::InspectorInstrumentation::characterDataModified): 43996 (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest): 43997 (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext): 43998 (WebCore::InspectorInstrumentation::inspectorControllerForDocument): 43999 (WebCore::InspectorInstrumentation::inspectorControllerForPage): 44000 44001 2010-09-29 David Hyatt <hyatt (a] apple.com> 44002 44003 Reviewed by Sam Weinig. 44004 44005 https://bugs.webkit.org/show_bug.cgi?id=46786, convert layoutBlockChild (but not any functions it calls) 44006 to be block-flow-aware. 44007 44008 * rendering/RenderBlock.cpp: 44009 (WebCore::RenderBlock::layoutBlock): 44010 (WebCore::RenderBlock::handleAfterSideOfBlock): 44011 (WebCore::RenderBlock::layoutBlockChildren): 44012 * rendering/RenderBlock.h: 44013 * rendering/RenderBox.h: 44014 (WebCore::RenderBox::scrollbarLogicalHeight): 44015 44016 2010-09-29 Joo Paulo Rechi Vita <jprvita (a] profusion.mobi> 44017 44018 Reviewed by Antonio Gomes. 44019 44020 [EFL] General small fixes. 44021 https://bugs.webkit.org/show_bug.cgi?id=46813 44022 44023 This commit spots a comparison between signed and unsigned integer 44024 expressions, a missing return and a never-called function. 44025 44026 No new tests since no new funcionality has been added. 44027 44028 * platform/efl/SharedBufferEfl.cpp: 44029 (WebCore::SharedBuffer::createWithContentsOfFile): 44030 44031 2010-09-29 Philippe Normand <pnormand (a] igalia.com> 44032 44033 Reviewed by Gustavo Noronha Silva. 44034 44035 build still broken since r68521 44036 https://bugs.webkit.org/show_bug.cgi?id=46795 44037 44038 Call make-values.pl once only. It seems calling it multiple times 44039 in the same build produces a wrong CSSValueKeywordsHash.h which 44040 has a duplicate declaration of its valueList variable. The double 44041 call is triggered by the double targets in the Makefile rules and 44042 makevalues.pl generates one of them, which screws up the build. A 44043 more proper fix should be done with the advices on 44044 http://www.cmcrossroads.com/cm-basics/12905-rules-with-multiple-outputs-in-gnu-make 44045 44046 * GNUmakefile.am: 44047 44048 2010-09-29 Joo Paulo Rechi Vita <jprvita (a] profusion.mobi> 44049 44050 Unreviewed build fix. 44051 44052 Fix CMake build for ENABLE_PROGRESS_TAG. 44053 https://bugs.webkit.org/show_bug.cgi?id=46808 44054 44055 No new tests since it's a build fix. 44056 44057 * CMakeLists.txt: 44058 44059 2010-09-29 Yury Semikhatsky <yurys (a] chromium.org> 44060 44061 Reviewed by Pavel Feldman. 44062 44063 [v8] Use generic mechanism to report exceptions in V8CustomVoidCallback 44064 https://bugs.webkit.org/show_bug.cgi?id=46803 44065 44066 No new tests. It's covered by existing tests under LayoutTests/storage 44067 44068 * bindings/v8/custom/V8CustomVoidCallback.cpp: 44069 (WebCore::invokeCallback): 44070 44071 2010-09-29 Satish Sampath <satish (a] chromium.org> 44072 44073 Reviewed by Jeremy Orlow. 44074 44075 Rename the input element's @speech attribute to @webkitspeech since it is still experimental. 44076 https://bugs.webkit.org/show_bug.cgi?id=46799 44077 44078 * bindings/generic/RuntimeEnabledFeatures.h: 44079 (WebCore::RuntimeEnabledFeatures::webkitspeechEnabled): Rename the runtime feature flag getter. 44080 * css/CSSPrimitiveValueMappings.h: 44081 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 44082 * css/CSSValueKeywords.in: Rename the css style name. 44083 * css/html.css: Rename the css style name. 44084 (input::-webkit-input-speech-button): 44085 * html/HTMLAttributeNames.in: Rename the @speech attribute. 44086 * html/HTMLInputElement.cpp: Update code using the attribute. 44087 (WebCore::HTMLInputElement::parseMappedAttribute): 44088 (WebCore::HTMLInputElement::isSpeechEnabled): 44089 * html/HTMLInputElement.idl: Rename the @speech attribute. 44090 44091 2010-09-29 MORITA Hajime <morrita (a] google.com> 44092 44093 [Chromium] failed to build without ACCELERATED_COMPOSITING 44094 https://bugs.webkit.org/show_bug.cgi?id=46793 44095 44096 Moved constant definitions from inside ACCELERATED_COMPOSITING to 44097 outside of the condition. 44098 44099 * WebCore.gypi: 44100 * platform/graphics/chromium/VideoFrameChromium.cpp: Added just for defining constants. 44101 * platform/graphics/chromium/VideoLayerChromium.cpp: 44102 44103 2010-09-28 Pavel Feldman <pfeldman (a] chromium.org> 44104 44105 Reviewed by Timothy Hatcher. 44106 44107 Web Inspector: [Resources panel] Need more visible "at a glance". 44108 https://bugs.webkit.org/show_bug.cgi?id=45657 44109 44110 * WebCore.gypi: 44111 * WebCore.vcproj/WebCore.vcproj: 44112 * inspector/front-end/DataGrid.js: 44113 (WebInspector.DataGrid): 44114 (WebInspector.DataGrid.prototype.updateWidths): 44115 (WebInspector.DataGrid.prototype.sortNodes): 44116 (WebInspector.DataGrid.prototype._resizerDragging): 44117 (WebInspector.DataGrid.prototype._endResizerDragging): 44118 (WebInspector.DataGridNode.prototype.selectable.true.get element): 44119 (WebInspector.DataGridNode.prototype.createCells): 44120 (WebInspector.DataGridNode.prototype.refresh): 44121 * inspector/front-end/Images/networkIcon.png: Copied from WebCore/inspector/front-end/Images/resourcesIcon.png. 44122 * inspector/front-end/NetworkPanel.js: Added. 44123 * inspector/front-end/Settings.js: 44124 * inspector/front-end/WebKit.qrc: 44125 * inspector/front-end/inspector.css: 44126 (.toolbar-item.network .toolbar-icon): 44127 (.data-grid .data-container): 44128 * inspector/front-end/inspector.html: 44129 * inspector/front-end/inspector.js: 44130 (WebInspector._createPanels): 44131 (WebInspector.updateResource): 44132 * inspector/front-end/networkPanel.css: Added. 44133 44134 2010-09-28 Ilya Tikhonovsky <loislo (a] chromium.org> 44135 44136 Reviewed by Yury Semikhatsky. 44137 44138 Web Inspector: move pauseOnExceptionState under control of InspectorState 44139 It is Inspector Protocol cleanup activity. 44140 The actual state of this flag can be obtained as a return value of setPauseOnExceptionState command 44141 or as a value in InspectorState object. 44142 44143 https://bugs.webkit.org/show_bug.cgi?id=46724 44144 44145 * inspector/Inspector.idl: 44146 * inspector/InspectorController.cpp: 44147 (WebCore::InspectorController::getInspectorState): 44148 (WebCore::InspectorController::populateScriptObjects): 44149 * inspector/InspectorDebuggerAgent.cpp: 44150 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): 44151 (WebCore::InspectorDebuggerAgent::pauseOnExceptionsState): 44152 * inspector/InspectorDebuggerAgent.h: 44153 * inspector/front-end/ScriptsPanel.js: 44154 (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions): 44155 * inspector/front-end/inspector.js: 44156 (WebInspector.doLoadedDone.populateInspectorState): 44157 (WebInspector.doLoadedDone): 44158 (WebInspector.reportProtocolError): 44159 44160 2010-09-28 Philippe Normand <pnormand (a] igalia.com> 44161 44162 Reviewed by Martin Robinson. 44163 44164 check USE(GSTREAMER) instead of ENABLE(VIDEO) in gstreamer/ files 44165 https://bugs.webkit.org/show_bug.cgi?id=46717 44166 44167 Guard the gstreamer/ files with USE(GSTREAMER), which is more 44168 explicit than ENABLE(VIDEO). 44169 44170 * GNUmakefile.am: Define WTF_USE_GSTREAMER only if GStreamer 44171 support is enabled. 44172 * platform/graphics/gstreamer/DataSourceGStreamer.cpp: 44173 * platform/graphics/gstreamer/DataSourceGStreamer.h: 44174 * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp: 44175 * platform/graphics/gstreamer/GOwnPtrGStreamer.h: 44176 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 44177 * platform/graphics/gstreamer/GStreamerGWorld.h: 44178 * platform/graphics/gstreamer/ImageGStreamer.h: 44179 * platform/graphics/gstreamer/ImageGStreamerCG.mm: 44180 * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: 44181 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 44182 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 44183 * platform/graphics/gstreamer/PlatformVideoWindow.h: 44184 * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: 44185 * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: 44186 * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: 44187 * platform/graphics/gstreamer/VideoSinkGStreamer.h: 44188 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 44189 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: 44190 44191 2010-09-28 Kent Tamura <tkent (a] chromium.org> 44192 44193 Unreviewed, windows build fix for r68629. 44194 44195 * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h} 44196 44197 2010-09-28 Johnny Ding <jnd (a] chromium.org> 44198 44199 Reviewed by Adam Barth. 44200 44201 https://bugs.webkit.org/show_bug.cgi?id=41292 44202 Pass the right popupAllowed flag to current execution frame, 44203 so WebKit can get right gesture status for popups initiated 44204 from plugins. 44205 This also makes v8 binding's ScriptController::processingUserGesture 44206 match what jsc version. 44207 44208 Test: plugins/plugin-initiate-popup-window.html 44209 44210 * bindings/v8/NPV8Object.cpp: 44211 (_NPN_EvaluateHelper): 44212 * bindings/v8/ScriptController.cpp: 44213 (WebCore::ScriptController::ScriptController): 44214 (WebCore::ScriptController::processingUserGesture): 44215 * bindings/v8/ScriptController.h: 44216 (WebCore::ScriptController::setAllowPopupsFromPlugin): 44217 (WebCore::ScriptController::allowPopupsFromPlugin): 44218 44219 2010-09-28 Kent Tamura <tkent (a] chromium.org> 44220 44221 Reviewed by Darin Adler. 44222 44223 Refactor HTMLInputElement: Introducing InputType class and classes 44224 for each input element types. 44225 https://bugs.webkit.org/show_bug.cgi?id=45872 44226 44227 No new tests because this doesn't change any behavior. 44228 44229 * Android.mk: Add new files. 44230 * CMakeLists.txt: ditto. 44231 * GNUmakefile.am: ditto. 44232 * WebCore.gypi: ditto. 44233 * WebCore.pro: ditto. 44234 * WebCore.vcproj/WebCore.vcproj: ditto. 44235 * WebCore.xcodeproj/project.pbxproj: ditto. 44236 * html/BaseTextInputType.cpp: Added. 44237 (WebCore::BaseTextInputType::isTextType): 44238 (WebCore::BaseTextInputType::patternMismatch): 44239 * html/BaseTextInputType.h: Added. 44240 (WebCore::BaseTextInputType::BaseTextInputType): 44241 * html/ButtonInputType.cpp: Added. 44242 (WebCore::ButtonInputType::create): 44243 (WebCore::ButtonInputType::formControlType): 44244 * html/ButtonInputType.h: Added. 44245 (WebCore::ButtonInputType::ButtonInputType): 44246 * html/CheckboxInputType.cpp: Added. 44247 (WebCore::CheckboxInputType::create): 44248 (WebCore::CheckboxInputType::formControlType): 44249 * html/CheckboxInputType.h: Added. 44250 (WebCore::CheckboxInputType::CheckboxInputType): 44251 * html/ColorInputType.cpp: Added. 44252 (WebCore::ColorInputType::create): 44253 (WebCore::ColorInputType::formControlType): 44254 * html/ColorInputType.h: Added. 44255 (WebCore::ColorInputType::ColorInputType): 44256 * html/DateInputType.cpp: Added. 44257 (WebCore::DateInputType::create): 44258 (WebCore::DateInputType::formControlType): 44259 * html/DateInputType.h: Added. 44260 (WebCore::DateInputType::DateInputType): 44261 * html/DateTimeInputType.cpp: Added. 44262 (WebCore::DateTimeInputType::create): 44263 (WebCore::DateTimeInputType::formControlType): 44264 * html/DateTimeInputType.h: Added. 44265 (WebCore::DateTimeInputType::DateTimeInputType): 44266 * html/DateTimeLocalInputType.cpp: Added. 44267 (WebCore::DateTimeLocalInputType::create): 44268 (WebCore::DateTimeLocalInputType::formControlType): 44269 * html/DateTimeLocalInputType.h: Added. 44270 (WebCore::DateTimeLocalInputType::DateTimeLocalInputType): 44271 * html/EmailInputType.cpp: Added. 44272 (WebCore::EmailInputType::create): 44273 (WebCore::EmailInputType::formControlType): 44274 * html/EmailInputType.h: Added. 44275 (WebCore::EmailInputType::EmailInputType): 44276 * html/FileInputType.cpp: Added. 44277 (WebCore::FileInputType::create): 44278 (WebCore::FileInputType::formControlType): 44279 * html/FileInputType.h: Added. 44280 (WebCore::FileInputType::FileInputType): 44281 * html/HTMLInputElement.cpp: 44282 (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType. 44283 (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType. 44284 (WebCore::HTMLInputElement::updateType): Update m_inputType with new type. 44285 (WebCore::HTMLInputElement::formControlType): Delegate to InputType. 44286 (WebCore::HTMLInputElement::isTextField): ditto. 44287 (WebCore::HTMLInputElement::isTextType): ditto. 44288 * html/HTMLInputElement.h: 44289 * html/HiddenInputType.cpp: Added. 44290 (WebCore::HiddenInputType::create): 44291 (WebCore::HiddenInputType::formControlType): 44292 * html/HiddenInputType.h: Added. 44293 (WebCore::HiddenInputType::HiddenInputType): 44294 * html/ImageInputType.cpp: Added. 44295 (WebCore::ImageInputType::create): 44296 (WebCore::ImageInputType::formControlType): 44297 * html/ImageInputType.h: Added. 44298 (WebCore::ImageInputType::ImageInputType): 44299 * html/InputType.cpp: Added. 44300 (WebCore::createInputTypeFactoryMap): 44301 (WebCore::InputType::create): 44302 (WebCore::InputType::createText): 44303 (WebCore::InputType::~InputType): 44304 (WebCore::InputType::isTextField): 44305 (WebCore::InputType::isTextType): 44306 (WebCore::InputType::patternMismatch): 44307 (WebCore::InputTypeNames::button): 44308 (WebCore::InputTypeNames::checkbox): 44309 (WebCore::InputTypeNames::color): 44310 (WebCore::InputTypeNames::date): 44311 (WebCore::InputTypeNames::datetime): 44312 (WebCore::InputTypeNames::datetimelocal): 44313 (WebCore::InputTypeNames::email): 44314 (WebCore::InputTypeNames::file): 44315 (WebCore::InputTypeNames::hidden): 44316 (WebCore::InputTypeNames::image): 44317 (WebCore::InputTypeNames::isindex): 44318 (WebCore::InputTypeNames::month): 44319 (WebCore::InputTypeNames::number): 44320 (WebCore::InputTypeNames::password): 44321 (WebCore::InputTypeNames::radio): 44322 (WebCore::InputTypeNames::range): 44323 (WebCore::InputTypeNames::reset): 44324 (WebCore::InputTypeNames::search): 44325 (WebCore::InputTypeNames::submit): 44326 (WebCore::InputTypeNames::telephone): 44327 (WebCore::InputTypeNames::text): 44328 (WebCore::InputTypeNames::time): 44329 (WebCore::InputTypeNames::url): 44330 (WebCore::InputTypeNames::week): 44331 * html/InputType.h: Added. 44332 (WebCore::InputType::InputType): 44333 (WebCore::InputType::element): 44334 * html/IsIndexInputType.cpp: Added. 44335 (WebCore::IsIndexInputType::create): 44336 (WebCore::IsIndexInputType::formControlType): 44337 * html/IsIndexInputType.h: Added. 44338 (WebCore::IsIndexInputType::IsIndexInputType): 44339 * html/MonthInputType.cpp: Added. 44340 (WebCore::MonthInputType::create): 44341 (WebCore::MonthInputType::formControlType): 44342 * html/MonthInputType.h: Added. 44343 (WebCore::MonthInputType::MonthInputType): 44344 * html/NumberInputType.cpp: Added. 44345 (WebCore::NumberInputType::create): 44346 (WebCore::NumberInputType::formControlType): 44347 * html/NumberInputType.h: Added. 44348 (WebCore::NumberInputType::NumberInputType): 44349 * html/PasswordInputType.cpp: Added. 44350 (WebCore::PasswordInputType::create): 44351 (WebCore::PasswordInputType::formControlType): 44352 * html/PasswordInputType.h: Added. 44353 (WebCore::PasswordInputType::PasswordInputType): 44354 * html/RadioInputType.cpp: Added. 44355 (WebCore::RadioInputType::create): 44356 (WebCore::RadioInputType::formControlType): 44357 * html/RadioInputType.h: Added. 44358 (WebCore::RadioInputType::RadioInputType): 44359 * html/RangeInputType.cpp: Added. 44360 (WebCore::RangeInputType::create): 44361 (WebCore::RangeInputType::formControlType): 44362 * html/RangeInputType.h: Added. 44363 (WebCore::RangeInputType::RangeInputType): 44364 * html/ResetInputType.cpp: Added. 44365 (WebCore::ResetInputType::create): 44366 (WebCore::ResetInputType::formControlType): 44367 * html/ResetInputType.h: Added. 44368 (WebCore::ResetInputType::ResetInputType): 44369 * html/SearchInputType.cpp: Added. 44370 (WebCore::SearchInputType::create): 44371 (WebCore::SearchInputType::formControlType): 44372 * html/SearchInputType.h: Added. 44373 (WebCore::SearchInputType::SearchInputType): 44374 * html/SubmitInputType.cpp: Added. 44375 (WebCore::SubmitInputType::create): 44376 (WebCore::SubmitInputType::formControlType): 44377 * html/SubmitInputType.h: Added. 44378 (WebCore::SubmitInputType::SubmitInputType): 44379 * html/TelephoneInputType.cpp: Added. 44380 (WebCore::TelephoneInputType::create): 44381 (WebCore::TelephoneInputType::formControlType): 44382 * html/TelephoneInputType.h: Added. 44383 (WebCore::TelephoneInputType::TelephoneInputType): 44384 * html/TextFieldInputType.cpp: Added. 44385 (WebCore::TextFieldInputType::isTextField): 44386 * html/TextFieldInputType.h: Added. 44387 (WebCore::TextFieldInputType::TextFieldInputType): 44388 * html/TextInputType.cpp: Added. 44389 (WebCore::TextInputType::create): 44390 (WebCore::TextInputType::formControlType): 44391 * html/TextInputType.h: Added. 44392 (WebCore::TextInputType::TextInputType): 44393 * html/TimeInputType.cpp: Added. 44394 (WebCore::TimeInputType::create): 44395 (WebCore::TimeInputType::formControlType): 44396 * html/TimeInputType.h: Added. 44397 (WebCore::TimeInputType::TimeInputType): 44398 * html/URLInputType.cpp: Added. 44399 (WebCore::URLInputType::create): 44400 (WebCore::URLInputType::formControlType): 44401 * html/URLInputType.h: Added. 44402 (WebCore::URLInputType::URLInputType): 44403 * html/WeekInputType.cpp: Added. 44404 (WebCore::WeekInputType::create): 44405 (WebCore::WeekInputType::formControlType): 44406 * html/WeekInputType.h: Added. 44407 (WebCore::WeekInputType::WeekInputType): 44408 44409 2010-09-28 David Hyatt <hyatt (a] apple.com> 44410 44411 Reviewed by Maciej Stachowiak. 44412 44413 https://bugs.webkit.org/show_bug.cgi?id=46782, rename the top and bottom margin quirk getters/setters. 44414 44415 Also do a bit of cleanup for block flow roots. Make sure they don't try to propagate overhanging floats out 44416 to ancestors. 44417 44418 * rendering/RenderBlock.cpp: 44419 (WebCore::RenderBlock::layoutBlock): 44420 (WebCore::RenderBlock::collapseMargins): 44421 (WebCore::RenderBlock::setCollapsedBottomMargin): 44422 (WebCore::RenderBlock::addOverhangingFloats): 44423 * rendering/RenderObject.cpp: 44424 (WebCore::RenderObject::RenderObject): 44425 * rendering/RenderObject.h: 44426 (WebCore::RenderObject::isMarginBeforeQuirk): 44427 (WebCore::RenderObject::isMarginAfterQuirk): 44428 (WebCore::RenderObject::setMarginBeforeQuirk): 44429 (WebCore::RenderObject::setMarginAfterQuirk): 44430 44431 2010-09-28 David Hyatt <hyatt (a] apple.com> 44432 44433 Reviewed by Sam Weinig. 44434 44435 https://bugs.webkit.org/show_bug.cgi?id=46780 44436 44437 Rename the pos/neg/collapsed margin methods. Rename all the members of the RenderBlockRareData struct. 44438 No logical changes. Just renames. 44439 44440 * editing/TextIterator.cpp: 44441 (WebCore::shouldEmitExtraNewlineForNode): 44442 * rendering/RenderBlock.cpp: 44443 (WebCore::RenderBlock::MarginInfo::MarginInfo): 44444 (WebCore::RenderBlock::layoutBlock): 44445 (WebCore::RenderBlock::collapseMargins): 44446 (WebCore::RenderBlock::clearFloatsIfNeeded): 44447 (WebCore::RenderBlock::estimateVerticalPosition): 44448 (WebCore::RenderBlock::setCollapsedBottomMargin): 44449 (WebCore::RenderBlock::layoutBlockChild): 44450 (WebCore::RenderBlock::paintChildren): 44451 (WebCore::RenderBlock::lowestPosition): 44452 (WebCore::RenderBlock::setMaxMarginBeforeValues): 44453 (WebCore::RenderBlock::setMaxMarginAfterValues): 44454 (WebCore::RenderBlock::absoluteRects): 44455 (WebCore::RenderBlock::absoluteQuads): 44456 (WebCore::RenderBlock::rectWithOutlineForRepaint): 44457 (WebCore::RenderBlock::addFocusRingRects): 44458 * rendering/RenderBlock.h: 44459 (WebCore::RenderBlock::maxPosMarginBefore): 44460 (WebCore::RenderBlock::maxNegMarginBefore): 44461 (WebCore::RenderBlock::maxPosMarginAfter): 44462 (WebCore::RenderBlock::maxNegMarginAfter): 44463 (WebCore::RenderBlock::initMaxMarginValues): 44464 (WebCore::RenderBlock::maxMarginBefore): 44465 (WebCore::RenderBlock::maxMarginAfter): 44466 (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): 44467 (WebCore::RenderBlock::RenderBlockRareData::beforePosDefault): 44468 (WebCore::RenderBlock::RenderBlockRareData::beforeNegDefault): 44469 (WebCore::RenderBlock::RenderBlockRareData::afterPosDefault): 44470 (WebCore::RenderBlock::RenderBlockRareData::afterNegDefault): 44471 * rendering/RenderBox.cpp: 44472 (WebCore::RenderBox::computeLogicalHeight): 44473 * rendering/RenderBox.h: 44474 (WebCore::RenderBox::collapsedMarginBefore): 44475 (WebCore::RenderBox::collapsedMarginAfter): 44476 (WebCore::RenderBox::maxMarginBefore): 44477 (WebCore::RenderBox::maxMarginAfter): 44478 * rendering/RenderFlexibleBox.cpp: 44479 (WebCore::RenderFlexibleBox::layoutBlock): 44480 44481 2010-09-28 Kevin Ollivier <kevino (a] theolliviers.com> 44482 44483 [wx] wxMSW build fix. Don't use multiple inheritance in PopupMenuWx to avoid debug build 44484 compiler error about ambiguity over which new override (wx's or FastAllocBase's) to use. 44485 44486 * platform/wx/PopupMenuWx.cpp: 44487 (WebCore::PopupMenuEventHandler::PopupMenuEventHandler): 44488 (WebCore::PopupMenuEventHandler::OnMenuItemSelected): 44489 (WebCore::PopupMenuWx::PopupMenuWx): 44490 (WebCore::PopupMenuWx::show): 44491 * platform/wx/PopupMenuWx.h: 44492 44493 2010-09-28 Xiaomei Ji <xji (a] chromium.org> 44494 44495 Reviewed by NOBODY (revert unsquashed git commits) 44496 44497 Revert change sets 68583 to 68590, which are un-squashed git-commits: Performance improvement for FontLinux regarding issue 46374. 44498 https://bugs.webkit.org/show_bug.cgi?id=46374 44499 44500 2010-09-28 Marc-Antoine Ruel <maruel (a] chromium.org> 44501 44502 Reviewed by Tony Chang. 44503 44504 Split webcore_html off webcore_remaining. 44505 44506 webcore_remaining is still too large for certain 32 bits toolsets. 44507 https://bugs.webkit.org/show_bug.cgi?id=46445 44508 44509 * WebCore.gyp/WebCore.gyp: 44510 44511 2010-09-28 Jia Pu <jpu (a] apple.com> 44512 44513 Reviewed by Dan Bernstein. 44514 44515 Delete and forward delete shouldn't start autocorrection panel timer. 44516 https://bugs.webkit.org/show_bug.cgi?id=46679 44517 <rdar://problem/8463917> 44518 44519 * editing/TypingCommand.cpp: 44520 (WebCore::TypingCommand::markMisspellingsAfterTyping): Only start correction panel timer 44521 when the editing command is InsertText. 44522 (WebCore::TypingCommand::typingAddedToOpenCommand): Add an argument to pass in command type. 44523 44524 * editing/TypingCommand.h: Add an argument to typingAddedToOpenCommand(). 44525 44526 2010-09-28 Mihai Parparita <mihaip (a] chromium.org> 44527 44528 Reviewed by Dimitri Glazkov. 44529 44530 No back/forward list entry added when submitting a form via an onclick handler inside a frame 44531 https://bugs.webkit.org/show_bug.cgi?id=44140 44532 44533 Lock the back/forward list for JavaScript form submissions inside frames 44534 only if they're not in response to user gestures. 44535 44536 Tests: fast/history/form-submit-in-frame-via-onclick.html 44537 fast/history/form-submit-in-frame.html 44538 44539 * loader/RedirectScheduler.cpp: 44540 (WebCore::RedirectScheduler::scheduleFormSubmission): 44541 44542 2010-09-28 David Hyatt <hyatt (a] apple.com> 44543 44544 Reviewed by Sam Weinig. 44545 44546 Fix typo in previous checkin. 44547 44548 * rendering/RenderBlock.cpp: 44549 (WebCore::RenderBlock::MarginInfo::MarginInfo): 44550 44551 2010-09-28 Nat Duca <nduca (a] chromium.org> 44552 44553 Reviewed by James Robinson. 44554 44555 [chromium] invalidateRootLayerRect needs to schedule compositor 44556 https://bugs.webkit.org/show_bug.cgi?id=46219 44557 44558 Update comments on LayerChromium commit/display functions to clarify 44559 their limitations. Remove unused dirtying logic from 44560 LayerRendererChromium. 44561 44562 * platform/graphics/chromium/LayerChromium.cpp: 44563 (WebCore::LayerChromium::setNeedsCommit): 44564 (WebCore::LayerChromium::setNeedsDisplay): 44565 * platform/graphics/chromium/LayerRendererChromium.cpp: 44566 (WebCore::LayerRendererChromium::LayerRendererChromium): 44567 (WebCore::LayerRendererChromium::present): 44568 * platform/graphics/chromium/LayerRendererChromium.h: 44569 44570 2010-09-28 Jenn Braithwaite <jennb (a] chromium.org> 44571 44572 Reviewed by Dmitry Titov. 44573 44574 Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument. 44575 https://bugs.webkit.org/show_bug.cgi?id=46663 44576 44577 No new tests. API addition only. Will be used in separate patch. 44578 44579 * loader/EmptyClients.h: 44580 (WebCore::EmptyFrameLoaderClient::didTransferChildFrameToNewDocument): 44581 * loader/FrameLoaderClient.h: 44582 * page/Frame.cpp: 44583 (WebCore::Frame::transferChildFrameToNewDocument): 44584 Pass former page to didTransferChildFrameToNewDocument. 44585 44586 2010-09-28 W. James MacLean <wjmaclean (a] chromium.org> 44587 44588 Reviewed by James Robinson. 44589 44590 Scaled Resized images are blurred when sent to Skia 44591 https://bugs.webkit.org/show_bug.cgi?id=42370 44592 44593 This patch modifies ImageSkia.cpp to fix the calculation of resampled 44594 bitmap sizes so as to include the transform matrix of the canvas. 44595 44596 Test: svg/custom/image-rescale.svg 44597 44598 * platform/graphics/skia/ImageSkia.cpp: 44599 (WebCore::computeResamplingMode): 44600 (WebCore::drawResampledBitmap): 44601 44602 2010-09-28 James Robinson <jamesr (a] chromium.org> 44603 44604 [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots 44605 44606 * WebCore.gyp/WebCore.gyp: 44607 44608 2010-09-27 James Robinson <jamesr (a] chromium.org> 44609 44610 Reviewed by Tony Chang. 44611 44612 [chromium] Increase warning level for chromium linux build 44613 https://bugs.webkit.org/show_bug.cgi?id=46687 44614 44615 This sets the chromium_code gyp variable to 1 for the chromium 44616 linux WebCore build and fixes the warnings that exposes. This 44617 matches the chromium mac build's compiler settings more closely 44618 and should cut down on the number of patches that break mac but 44619 compile cleaning on linux. 44620 44621 * WebCore.gyp/WebCore.gyp: 44622 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 44623 (WebCore::ScrollbarThemeChromiumLinux::paintButton): 44624 * platform/graphics/chromium/FontLinux.cpp: 44625 (WebCore::TextRunWalker::nextScriptRun): 44626 (WebCore::TextRunWalker::getTextRun): 44627 (WebCore::TextRunWalker::getNormalizedTextRun): 44628 (WebCore::TextRunWalker::setGlyphXPositions): 44629 (WebCore::glyphIndexForXPositionInScriptRun): 44630 (WebCore::Font::offsetForPositionForComplexText): 44631 (WebCore::Font::selectionRectForComplexText): 44632 * platform/graphics/chromium/HarfbuzzSkia.cpp: 44633 (WebCore::getOutlinePoint): 44634 * platform/graphics/chromium/LayerRendererChromium.cpp: 44635 (WebCore::LayerRendererChromium::updateRootLayerTextureRect): 44636 * platform/graphics/gpu/Texture.cpp: 44637 (WebCore::copySubRect): 44638 * platform/graphics/skia/PlatformContextSkia.cpp: 44639 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 44640 * platform/image-decoders/gif/GIFImageDecoder.cpp: 44641 (WebCore::GIFImageDecoder::setSize): 44642 * platform/image-decoders/gif/GIFImageDecoder.h: 44643 44644 2010-09-28 Stephen White <senorblanco (a] chromium.org> 44645 44646 Reviewed by Csaba Osztrogonc. 44647 44648 Fix for r68521 to build on VS2008/Release. 44649 44650 * html/DocTypeStrings.gperf: 44651 Don't emit "#include <string.h>" here, since we're inside a namespace. 44652 * make-hash-tools.pl: 44653 Emit #include <string.h> manually where required. 44654 * platform/ColorData.gperf: 44655 Don't emit "#include <string.h>" here, since we're inside a namespace. 44656 44657 2010-09-28 David Hyatt <hyatt (a] apple.com> 44658 44659 Reviewed by Sam Weinig. 44660 44661 Right now we have two properties named margin-top-collapse and margin-after-collapse. They are proprietary and only used by Safari RSS. 44662 44663 I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones. 44664 This way we have some names that are directionally independent. 44665 44666 Note that these properties aren't like other directional properties. They are about what to do with the before side and after side of 44667 your block's margins when collapsing with adjacent blocks. The meaning of before/after depend on the block-flow directionality 44668 of the containing block. 44669 44670 Computed style tests all changed and the remove-shorthand.html test covers manipulation of the shorthand. 44671 44672 * css/CSSComputedStyleDeclaration.cpp: 44673 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 44674 * css/CSSParser.cpp: 44675 (WebCore::CSSParser::parseValue): 44676 * css/CSSPropertyLonghand.cpp: 44677 (WebCore::initShorthandMap): 44678 * css/CSSPropertyNames.in: 44679 * css/CSSStyleSelector.cpp: 44680 (WebCore::CSSStyleSelector::applyProperty): 44681 * rendering/RenderBlock.cpp: 44682 (WebCore::RenderBlock::MarginInfo::MarginInfo): 44683 (WebCore::RenderBlock::isSelfCollapsingBlock): 44684 (WebCore::RenderBlock::collapseMargins): 44685 (WebCore::RenderBlock::layoutBlockChild): 44686 * rendering/style/RenderStyle.cpp: 44687 (WebCore::RenderStyle::diff): 44688 * rendering/style/RenderStyle.h: 44689 (WebCore::InheritedFlags::marginBeforeCollapse): 44690 (WebCore::InheritedFlags::marginAfterCollapse): 44691 (WebCore::InheritedFlags::setMarginBeforeCollapse): 44692 (WebCore::InheritedFlags::setMarginAfterCollapse): 44693 (WebCore::InheritedFlags::initialMarginBeforeCollapse): 44694 (WebCore::InheritedFlags::initialMarginAfterCollapse): 44695 * rendering/style/StyleRareNonInheritedData.cpp: 44696 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): 44697 (WebCore::StyleRareNonInheritedData::operator==): 44698 * rendering/style/StyleRareNonInheritedData.h: 44699 44700 2010-09-28 Martin Robinson <mrobinson (a] igalia.com> 44701 44702 Reviewed by Gustavo Noronha Silva. 44703 44704 [Cairo] FreeType fonts should obey FontConfig hinting/anti-aliasing settings 44705 https://bugs.webkit.org/show_bug.cgi?id=46740 44706 44707 When creating a font from a FontConfig pattern, use the FontConfig pattern's 44708 hinting and anti-aliasing settings. This follows the Chromium Linux approach 44709 of having FontConfig settings take precedence over GTK+ settings, as GTK+ 44710 settings cannot be configured per-font and per-font-size. 44711 44712 Test: platform/gtk/fonts/fontconfig-aliasing-settings.html 44713 44714 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 44715 (WebCore::convertFontConfigSubpixelOrder): Added this helper which converts 44716 the FontConfig subpixel order into the cairo equivalent. 44717 (WebCore::convertFontConfigHintStyle): Added this helper which converts the 44718 FontConfig hint style into the cairo equivalent. 44719 (WebCore::setCairoFontOptionsFromFontConfigPattern): Added this helper which 44720 reads the font rendering settings from a pattern and translates them into the 44721 appropriate cairo_font_options_t settings. 44722 (WebCore::FontPlatformData::FontPlatformData): When creating a font from a 44723 FontConfig pattern use setCairoFontOptionsFromFontConfigPattern to get the 44724 appropriate rendering options for the font. 44725 44726 2010-09-28 Sam Weinig <sam (a] webkit.org> 44727 44728 Reviewed by Darin Adler and Dave Hyatt. 44729 44730 Vertical scroll bar on apple.com is too short with WebKit2 44731 <rdar://problem/8379230> 44732 https://bugs.webkit.org/show_bug.cgi?id=46739 44733 44734 Adds a function to recalculate the scrollbars to take advantage of 44735 a changed window re-sizer rect. 44736 44737 * WebCore.exp.in: 44738 * platform/ScrollView.cpp: 44739 (WebCore::ScrollView::windowResizerRectChanged): 44740 * platform/ScrollView.h: 44741 44742 2010-09-28 David Hyatt <hyatt (a] apple.com> 44743 44744 Reviewed by Sam Weinig. 44745 44746 https://bugs.webkit.org/show_bug.cgi?id=46750 44747 44748 Rename the MarginInfo members and functions to be block-flow independent. 44749 44750 * rendering/RenderBlock.cpp: 44751 (WebCore::RenderBlock::MarginInfo::MarginInfo): 44752 (WebCore::RenderBlock::adjustPositionedBlock): 44753 (WebCore::RenderBlock::adjustFloatingBlock): 44754 (WebCore::RenderBlock::collapseMargins): 44755 (WebCore::RenderBlock::clearFloatsIfNeeded): 44756 (WebCore::RenderBlock::estimateVerticalPosition): 44757 (WebCore::RenderBlock::setCollapsedBottomMargin): 44758 (WebCore::RenderBlock::handleBottomOfBlock): 44759 (WebCore::RenderBlock::layoutBlockChild): 44760 (WebCore::RenderBlock::applyAfterBreak): 44761 * rendering/RenderBlock.h: 44762 (WebCore::RenderBlock::MarginInfo::setAtBeforeSideOfBlock): 44763 (WebCore::RenderBlock::MarginInfo::setAtAfterSideOfBlock): 44764 (WebCore::RenderBlock::MarginInfo::setMarginBeforeQuirk): 44765 (WebCore::RenderBlock::MarginInfo::setMarginAfterQuirk): 44766 (WebCore::RenderBlock::MarginInfo::setDeterminedMarginBeforeQuirk): 44767 (WebCore::RenderBlock::MarginInfo::atBeforeSideOfBlock): 44768 (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginBefore): 44769 (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginAfter): 44770 (WebCore::RenderBlock::MarginInfo::canCollapseMarginBeforeWithChildren): 44771 (WebCore::RenderBlock::MarginInfo::canCollapseMarginAfterWithChildren): 44772 (WebCore::RenderBlock::MarginInfo::determinedMarginBeforeQuirk): 44773 (WebCore::RenderBlock::MarginInfo::marginBeforeQuirk): 44774 (WebCore::RenderBlock::MarginInfo::marginAfterQuirk): 44775 44776 2010-09-28 Dan Bernstein <mitz (a] apple.com> 44777 44778 Reviewed by Darin Adler. 44779 44780 Improved the handling of soft hyphens in Copy and Find operations, addressing the following 44781 bugs: 44782 44783 <rdar://problem/7938878> Soft hyphenation and the clipboard 44784 https://bugs.webkit.org/show_bug.cgi?id=11154 44785 44786 window.getSelection().toString() breaks soft hyphen ­ 44787 https://bugs.webkit.org/show_bug.cgi?id=26774 44788 44789 <rdar://problem/5640505> soft hyphen breaks search function 44790 https://bugs.webkit.org/show_bug.cgi?id=16675 44791 44792 Test: fast/text/find-soft-hyphen.html 44793 44794 Changed line layout code to not skip over soft hyphens but rather include them in the text 44795 boxes. Changed font code to render the soft hyphen character as a zero width space, so that 44796 the former change will not affect rendering of soft hyphens in the middle of the line. Also 44797 changed line layout code to mark text boxes where hyphenation occurred due to a soft hyphen 44798 as hyphenated, so that the hyphen string specified in CSS will be appended to them. 44799 44800 Not omitting the soft hyphens from the text boxes makes the text iterator emit them, which 44801 solves the Copy and plain-text conversion issues. Previously, the iterator would emit a space 44802 to account for non-rendered characters between adjacent boxes, which was wrong in this case. 44803 44804 To make Find work, soft hyphens are folded into 0, which is ignorable in the collation used 44805 for Find. 44806 44807 * editing/TextIterator.cpp: 44808 (WebCore::foldQuoteMarkOrSoftHyphen): Renamed foldQuoteMark() to this and added folding of 44809 soft hyphen to 0. 44810 (WebCore::foldQuoteMarksAndSoftHyphens): Renamed foldQuoteMarks() to thid and added folding 44811 of soft hyphen to 0. 44812 (WebCore::SearchBuffer::SearchBuffer): Updated for renames. 44813 (WebCore::SearchBuffer::append): Ditto. 44814 * platform/graphics/Font.h: 44815 (WebCore::Font::treatAsSpace): Replaced number literal with name. 44816 (WebCore::Font::treatAsZeroWidthSpace): Added softHyphen. 44817 * platform/graphics/GlyphPageTreeNode.cpp: 44818 (WebCore::GlyphPageTreeNode::initializePage): Get the zero width space glyph for soft hyphen. 44819 * platform/graphics/mac/ComplexTextController.cpp: 44820 (WebCore::ComplexTextController::collectComplexTextRuns): Removed special handling that made 44821 a trailing soft hyphen render as hyphen-minus. All soft hyphens are now rendered as zero width 44822 spaces, and where a line break actually occurs at a soft hyphen, rendering code appends the 44823 CSS-specified hyphenate character to the text run that is passed to us here. 44824 * rendering/RenderBlockLineLayout.cpp: 44825 (WebCore::chopMidpointsAt): Removed this function, which was only used for skipping over soft 44826 hyphens. 44827 (WebCore::checkMidpoints): Removed code related to skipping over soft hyphens. 44828 (WebCore::RenderBlock::findNextLineBreak): Removed code to skip over soft hyphens. Ignore 44829 a line break opportunity at a soft hyphen if the style specifies 'hyphens: none'. Set 44830 'hyphenated' to true if a line break occurs at a soft hyphen. 44831 * rendering/style/RenderStyle.cpp: 44832 (WebCore::RenderStyle::hyphenString): Changed the assertion to allow querying for the hyphen 44833 string for 'hyphens: manual'. 44834 44835 2010-09-28 Martin Robinson <mrobinson (a] igalia.com> 44836 44837 More GTK+ build fixes after r68521. 44838 44839 * GNUmakefile.am: Added proper dependency tracking for some 44840 new autogenerated files. 44841 44842 2010-09-28 Andreas Kling <andreas.kling (a] nokia.com> 44843 44844 Reviewed by Kenneth Rohde Christiansen. 44845 44846 [Qt] Text drawing taints GraphicsContext's QPainter::pen() 44847 https://bugs.webkit.org/show_bug.cgi?id=46744 44848 44849 Test: fast/canvas/canvas-style-intact-after-text.html 44850 44851 * platform/graphics/qt/FontQt.cpp: 44852 (WebCore::drawTextCommon): Make sure the QPainter's pen is 44853 restored after filling and/or stroking text. 44854 44855 2010-09-28 Jia Pu <jpu (a] apple.com> 44856 44857 Reviewed by Dan Bernstein. 44858 44859 Autocorrection panel is shown at incorrect location when WebView is scrolled. 44860 https://bugs.webkit.org/show_bug.cgi?id=46531 44861 <rdar://problem/8455376> 44862 44863 * dom/Range.h: Make getBorderAndTextQuads() public so that it can be used by Editor. 44864 * editing/Editor.cpp: 44865 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced call to textQuads() 44866 with getBorderAndTextQuads(). 44867 44868 2010-09-28 Andrei Popescu <andreip (a] google.com> 44869 44870 Reviewed by Jeremy Orlow. 44871 44872 IDBRequest should not have a method called abort. 44873 https://bugs.webkit.org/show_bug.cgi?id=46720 44874 44875 IDBRequest::abort() was dropped from the spec following discussion in 44876 http://www.w3.org/Bugs/Public/show_bug.cgi?id=10165 44877 44878 * storage/IDBRequest.cpp: 44879 (WebCore::IDBRequest::IDBRequest): 44880 (WebCore::IDBRequest::~IDBRequest): 44881 (WebCore::IDBRequest::resetReadyState): 44882 (WebCore::IDBRequest::timerFired): 44883 (WebCore::IDBRequest::scheduleEvent): 44884 * storage/IDBRequest.h: 44885 * storage/IDBRequest.idl: 44886 44887 2010-09-28 Chris Fleizach <cfleizach (a] apple.com> 44888 44889 Reviewed by Beth Dakin. 44890 44891 CrashTracer: 1,382 crashes in Safari at com.apple.WebCore: WebCore::VisiblePosition::canonicalPosition + 78 44892 https://bugs.webkit.org/show_bug.cgi?id=45927 44893 44894 AXTextMarkers store pointers to Nodes without any retain or reference. If a Node is deallocated and then 44895 a client tries to use a text marker that references that node, it leads to this crash. 44896 44897 The AXObjectCache instance now keeps a HashSet of Node's being used. When a node becomes deallocated, it removes itself 44898 from the HashSet. When creating a VisiblePosition from an AXTextMarker, the cache can then check if the node is valid 44899 before proceeding. 44900 44901 Test: platform/mac/accessibility/crash-invalid-text-marker-node.html 44902 44903 * accessibility/AXObjectCache.cpp: 44904 (WebCore::AXObjectCache::visiblePositionForTextMarkerData): 44905 (WebCore::AXObjectCache::textMarkerDataForVisiblePosition): 44906 Modify to check whether a node is valid before proceeeding. 44907 * accessibility/AXObjectCache.h: 44908 (WebCore::AXObjectCache::setNodeInUse): 44909 (WebCore::AXObjectCache::removeNodeForUse): 44910 (WebCore::AXObjectCache::isNodeInUse): 44911 Methods for managing whether a node is in use by text markers. 44912 * accessibility/mac/AccessibilityObjectWrapper.mm: 44913 (textMarkerForVisiblePosition): 44914 (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]): 44915 (visiblePositionForTextMarker): 44916 (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]): 44917 (visiblePositionForStartOfTextMarkerRange): 44918 (visiblePositionForEndOfTextMarkerRange): 44919 (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): 44920 (textMarkerRangeFromVisiblePositions): 44921 (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): 44922 (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]): 44923 (-[AccessibilityObjectWrapper textMarkerRangeForSelection]): 44924 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 44925 (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]): 44926 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 44927 Change these calls so that the axObjectCache() can be passed in to create the visible position. 44928 * dom/Document.cpp: 44929 (WebCore::Document::axObjectCacheExists): 44930 * dom/Document.h: 44931 * dom/Node.cpp: 44932 (WebCore::Node::~Node): 44933 If accessibility is enabled, inform the axObjectCache() that this node is disappearing. 44934 44935 2010-09-28 Chris Rogers <crogers (a] google.com> 44936 44937 Reviewed by Kenneth Russell. 44938 44939 Add AudioDestinationNode files 44940 https://bugs.webkit.org/show_bug.cgi?id=45009 44941 44942 No new tests since audio API is not yet implemented. 44943 44944 * webaudio/AudioDestinationNode.cpp: Added. 44945 (WebCore::AudioDestinationNode::AudioDestinationNode): 44946 (WebCore::AudioDestinationNode::~AudioDestinationNode): 44947 (WebCore::AudioDestinationNode::initialize): 44948 (WebCore::AudioDestinationNode::uninitialize): 44949 (WebCore::AudioDestinationNode::provideInput): 44950 * webaudio/AudioDestinationNode.h: Added. 44951 (WebCore::AudioDestinationNode::create): 44952 (WebCore::AudioDestinationNode::process): 44953 (WebCore::AudioDestinationNode::reset): 44954 (WebCore::AudioDestinationNode::currentTime): 44955 (WebCore::AudioDestinationNode::sampleRate): 44956 (WebCore::AudioDestinationNode::numberOfChannels): 44957 * webaudio/AudioDestinationNode.idl: Added. 44958 44959 2010-09-28 Chris Rogers <crogers (a] google.com> 44960 44961 Reviewed by Kenneth Russell. 44962 44963 audio engine: audio output classes 44964 https://bugs.webkit.org/show_bug.cgi?id=34716 44965 44966 No new tests since audio API is not yet implemented. 44967 44968 * platform/audio/AudioDestination.h: Added. 44969 (WebCore::AudioDestination::~AudioDestination): 44970 * platform/audio/mac/AudioDestinationMac.cpp: Added. 44971 (WebCore::AudioDestination::create): 44972 (WebCore::AudioDestination::hardwareSampleRate): 44973 (WebCore::AudioDestinationMac::AudioDestinationMac): 44974 (WebCore::AudioDestinationMac::~AudioDestinationMac): 44975 (WebCore::AudioDestinationMac::configure): 44976 (WebCore::AudioDestinationMac::start): 44977 (WebCore::AudioDestinationMac::stop): 44978 (WebCore::AudioDestinationMac::render): 44979 (WebCore::AudioDestinationMac::inputProc): 44980 * platform/audio/mac/AudioDestinationMac.h: Added. 44981 (WebCore::AudioDestinationMac::isPlaying): 44982 (WebCore::AudioDestinationMac::sampleRate): 44983 44984 2010-09-28 Chris Rogers <crogers (a] google.com> 44985 44986 Reviewed by Kenneth Russell. 44987 44988 Add AudioGain files 44989 https://bugs.webkit.org/show_bug.cgi?id=46285 44990 44991 No new tests since audio API is not yet implemented. 44992 44993 * webaudio/AudioGain.h: Added. 44994 (WebCore::AudioGain::create): 44995 (WebCore::AudioGain::AudioGain): 44996 * webaudio/AudioGain.idl: Added. 44997 44998 2010-09-28 Chris Rogers <crogers (a] google.com> 44999 45000 Reviewed by Kenneth Russell. 45001 45002 Fix possible illegal float values in AudioParam 45003 https://bugs.webkit.org/show_bug.cgi?id=46681 45004 45005 No new tests since audio API is not yet implemented. 45006 45007 * webaudio/AudioParam.h: 45008 (WebCore::AudioParam::setValue): 45009 45010 2010-09-28 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 45011 45012 Reviewed by Simon Hausmann. 45013 45014 [Qt] Rename member variable in MediaPlayerPrivateQt 45015 45016 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 45017 * platform/graphics/qt/MediaPlayerPrivateQt.h: 45018 45019 2010-09-28 Andras Becsi <abecsi (a] webkit.org> 45020 45021 [Gtk] Build fix. Remove leftover trailing backslash. 45022 45023 * GNUmakefile.am: 45024 45025 2010-09-28 Andras Becsi <abecsi (a] webkit.org> 45026 45027 Unreviewed. 45028 45029 [Gtk] Build fix after r68521 45030 45031 No new tests needed. 45032 45033 * GNUmakefile.am: 45034 45035 2010-09-28 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 45036 45037 Reviewed by Andreas Kling. 45038 45039 [Qt] Rename MediaPlayerPrivate to MediaPlayerPrivateQt/Phonon 45040 45041 https://bugs.webkit.org/show_bug.cgi?id=36663 45042 45043 * platform/graphics/MediaPlayer.cpp: 45044 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 45045 * platform/graphics/qt/MediaPlayerPrivateQt.h: 45046 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: 45047 * platform/graphics/qt/MediaPlayerPrivatePhonon.h: 45048 45049 2010-09-28 Andras Becsi <abecsi (a] webkit.org> 45050 45051 Reviewed by Csaba Osztrogonc. 45052 45053 Undefined reference errors when linking due to gperf and inlining. 45054 webkit.org/b/29244 45055 45056 EFL CMake changes by Leandro Pereira <leandro (a] profusion.mobi> 45057 45058 Refactor gperf code generation and usage to fix the debug build with gcc>4.4. 45059 Hitherto gperf generated C code, these files were included in multiple C++ files across WebCore 45060 to access the functionality provided. This resulted in debug build failure with newer gcc versions 45061 because of a behaviour change of gcc, which disables C style inlining in debug mode. 45062 The make-hash-tools.pl script lets gperf generate C++ code for all gperf files now, which are compiled 45063 in their own compilation unit. 45064 The functionality provided by the generated code is wrapped behind HashTools.h, so there is no need 45065 for multiple inclusions of generated C files to access these functions. 45066 45067 No new tests needed. 45068 45069 * CMakeLists.txt: 45070 * WebCore.gyp/WebCore.gyp: 45071 * WebCore.pri: 45072 * WebCore.vcproj/WebCore.vcproj: 45073 * WebCore.xcodeproj/project.pbxproj: 45074 * css/CSSParser.cpp: 45075 * css/makeprop.pl: 45076 * css/makevalues.pl: 45077 * html/DocTypeStrings.gperf: 45078 * html/HTMLDocument.cpp: 45079 * make-hash-tools.pl: 45080 * platform/ColorData.gperf: 45081 * platform/graphics/Color.cpp: 45082 45083 2010-09-28 Andreas Kling <andreas.kling (a] nokia.com> 45084 45085 Reviewed by Kenneth Rohde Christiansen. 45086 45087 Canvas: Crash when setting a font with size in 'ex' units 45088 https://bugs.webkit.org/show_bug.cgi?id=46538 45089 45090 update() the style's font after setting the style's font description. 45091 Needed because CSSPrimitiveValue::computeLengthDouble() later assumes 45092 that the style's font is properly initialized (for xHeight().) 45093 45094 Fixes crash on IE test center's canvas-text-font-002 test. 45095 45096 * html/canvas/CanvasRenderingContext2D.cpp: 45097 (WebCore::CanvasRenderingContext2D::setFont): 45098 45099 2010-09-28 Benjamin Poulain <benjamin.poulain (a] nokia.com> 45100 45101 Reviewed by Kenneth Rohde Christiansen. 45102 45103 [Qt] Remove support for Qt 4.5 45104 https://bugs.webkit.org/show_bug.cgi?id=46718 45105 45106 Remove the code for versions of Qt prior to 4.6. 45107 45108 * WebCore.pro: 45109 * features.pri: 45110 * platform/network/qt/QNetworkReplyHandler.cpp: 45111 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 45112 (WebCore::QNetworkReplyHandler::start): 45113 * platform/network/qt/ResourceRequestQt.cpp: 45114 (WebCore::ResourceRequest::toNetworkRequest): 45115 * platform/qt/QWebPageClient.h: 45116 45117 2010-09-28 Kent Tamura <tkent (a] chromium.org> 45118 45119 Unreviewed, run sort-Xcode-project-file 45120 45121 * WebCore.xcodeproj/project.pbxproj: 45122 45123 2010-09-28 Huahui Wu <mediadependent (a] gmail.com> 45124 45125 Reviewed by Steve Block. 45126 45127 Add multi-touch for Android. 45128 https://bugs.webkit.org/show_bug.cgi?id=45221 45129 45130 The Android touch event used to take one point as the touch point, 45131 it's now changed to a vector of points to support multi-touch. 45132 45133 Tests: fast/events/touch/basic-multi-touch-events-limited.html 45134 fast/events/touch/touch-target-limited.html 45135 45136 * platform/PlatformTouchEvent.h: 45137 * platform/PlatformTouchPoint.h: 45138 * platform/android/PlatformTouchEventAndroid.cpp: 45139 (WebCore::PlatformTouchEvent::PlatformTouchEvent): 45140 * platform/android/PlatformTouchPointAndroid.cpp: 45141 (WebCore::PlatformTouchPoint::PlatformTouchPoint): 45142 45143 2010-09-27 Kent Tamura <tkent (a] chromium.org> 45144 45145 Reviewed by Alexey Proskuryakov. 45146 45147 Fix assertion failure in a case that the dirty flag of a textarea element is changed 45148 https://bugs.webkit.org/show_bug.cgi?id=45681 45149 45150 We need to call setNeedsValidityCheck() after updating m_isDirty. 45151 45152 Test: fast/forms/textarea-checkValidity-crash.html 45153 45154 * html/HTMLTextAreaElement.cpp: 45155 (WebCore::HTMLTextAreaElement::setValue): 45156 (WebCore::HTMLTextAreaElement::setNonDirtyValue): 45157 (WebCore::HTMLTextAreaElement::setValueCommon): 45158 * html/HTMLTextAreaElement.h: 45159 45160 2010-09-27 Abhishek Arya <inferno (a] chromium.org> 45161 45162 Reviewed by Dan Bernstein. 45163 45164 When the block RunIn is destroyed, its line box tree is not deleted. As a result, it 45165 gets later used during dirtying of inline text boxes step where this deleted parent is 45166 accessed. The fix is to delete the line box tree before destroying the runin block. 45167 45168 https://bugs.webkit.org/show_bug.cgi?id=46376 45169 45170 Test: fast/text/dirty-inline-textbox-crash.html 45171 45172 * rendering/RenderText.cpp: 45173 (WebCore::RenderText::dirtyLineBoxes): 45174 45175 2010-09-27 Eric Uhrhane <ericu (a] chromium.org> 45176 45177 Reviewed by David Levin. 45178 45179 Fix event sequencing in FileWriter 45180 https://bugs.webkit.org/show_bug.cgi?id=46544 45181 45182 Only set readyState to DONE when we're about to send the last progress 45183 event associated with an operation. Make sure all progress events come 45184 from backend calls, and aren't ever fired synchronously in response to 45185 user JS method calls. 45186 45187 No new tests, as none of this is fully implemented yet. 45188 45189 * fileapi/FileWriter.cpp: 45190 (WebCore::FileWriter::write): 45191 (WebCore::FileWriter::truncate): 45192 (WebCore::FileWriter::abort): 45193 (WebCore::FileWriter::didWrite): 45194 (WebCore::FileWriter::didTruncate): 45195 (WebCore::FileWriter::didFail): 45196 45197 2010-09-27 Chris Rogers <crogers (a] google.com> 45198 45199 Reviewed by James Robinson. 45200 45201 Add HRTFDatabase files 45202 https://bugs.webkit.org/show_bug.cgi?id=46233 45203 45204 No new tests since audio API is not yet implemented. 45205 45206 * platform/audio/HRTFDatabase.cpp: Added. 45207 (WebCore::HRTFDatabase::create): 45208 (WebCore::HRTFDatabase::HRTFDatabase): 45209 (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation): 45210 (WebCore::HRTFDatabase::indexFromElevationAngle): 45211 * platform/audio/HRTFDatabase.h: Added. 45212 (WebCore::HRTFDatabase::numberOfAzimuths): 45213 (WebCore::HRTFDatabase::sampleRate): 45214 45215 2010-09-27 Alpha Lam <hclam (a] chromium.org> 45216 45217 Build fix. Not reviewed. 45218 45219 Move constant definitions to VideoLayerChromium.cpp. 45220 A proper fix should come later. 45221 45222 * platform/graphics/chromium/VideoLayerChromium.cpp: 45223 45224 2010-09-23 Antonio Gomes <agomes (a] rim.com> 45225 45226 Reviewed by Kenneth Rohde Christiansen. 45227 45228 Make Document::nodesFromRect more flexible 45229 https://bugs.webkit.org/show_bug.cgi?id=46336 45230 45231 The patch changes the API for the Document::nodesFromRect() method as follows: 45232 45233 from 45234 - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping) 45235 to 45236 - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, 45237 unsigned leftPadding, bool ignoreClipping) 45238 45239 Previously the method was receiving as parameter horizontal and vertical padding values. 45240 In practice, the horizontal padding was being used to expand a given center point in both 45241 right and left directions, while vertical padding was expanding it to the top and bottom directions. 45242 45243 Although this design makes it possible to improve the touch experience on mobile devices 45244 (Document::nodesFromRect exposes the rect based hit testing system), empirical experiments 45245 showed that, specially in capacitive touch screens, users tend to tap below elements. So 45246 for even more accurate results (which means here the possibility of pleasant tapping experience), 45247 it makes sense to use a region that is offset more above the touch point, favoring elements 45248 above the touch point. 45249 45250 The patch basically implements that, increasing the API flexible and power by making it possible 45251 to specify different padding values for each direction in a given orientation. 45252 45253 Changes were made accordingly to the HitTestResult, RenderLayer, RenderImage and RenderLineBoxList 45254 classes. 45255 45256 WebCore: 45257 45258 * WebCore.exp.in: 45259 * dom/Document.h: API adjustment. 45260 * dom/Document.idl: Ditto. 45261 * dom/Document.cpp: API adjustment and method body implementation accordingly. 45262 (WebCore::Document::nodesFromRect): 45263 * page/EventHandler.cpp: 45264 (WebCore::EventHandler::hitTestResultAtPoint): For simplicity, I did not change the signature 45265 but the way the padding value passed in as parameter is being used to construct a HitTestResult. 45266 * rendering/HitTestResult.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction. 45267 (WebCore::HitTestResult::HitTestResult): Ditto. 45268 (WebCore::HitTestResult::operator=): Ditto. 45269 (WebCore::HitTestResult::rectFromPoint): Ditto. 45270 * rendering/HitTestResult.h: 45271 (WebCore::HitTestResult::topPadding): getter for the top padding. 45272 (WebCore::HitTestResult::rightPadding): getter for the right padding. 45273 (WebCore::HitTestResult::bottomPadding): getter for the bottom padding. 45274 (WebCore::HitTestResult::leftPadding): getter for the left padding. 45275 (WebCore::HitTestResult::rectFromPoint): Added a static method that given a center point and padding values for each direction, 45276 returns the rect that is going to be used in WebCore's hit testing processing. 45277 * rendering/RenderImage.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction. 45278 (WebCore::RenderImage::nodeAtPoint): Ditto. 45279 * rendering/RenderLayer.cpp: Ditto. 45280 (WebCore::RenderLayer::hitTestLayer): Ditto. 45281 (WebCore::RenderLayer::hitTestList): Ditto. 45282 * rendering/RenderLineBoxList.cpp: Ditto. 45283 (WebCore::RenderLineBoxList::hitTest): Ditto. 45284 45285 2010-09-27 Chris Rogers <crogers (a] google.com> 45286 45287 Reviewed by James Robinson. 45288 45289 Add HRTFDatabaseLoader files 45290 https://bugs.webkit.org/show_bug.cgi?id=46234 45291 45292 No new tests since audio API is not yet implemented. 45293 45294 * platform/audio/HRTFDatabaseLoader.cpp: Added. 45295 (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary): 45296 (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader): 45297 (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader): 45298 (WebCore::databaseLoaderEntry): 45299 (WebCore::HRTFDatabaseLoader::load): 45300 (WebCore::HRTFDatabaseLoader::loadAsynchronously): 45301 (WebCore::HRTFDatabaseLoader::isLoaded): 45302 (WebCore::HRTFDatabaseLoader::defaultHRTFDatabase): 45303 * platform/audio/HRTFDatabaseLoader.h: Added. 45304 (WebCore::HRTFDatabaseLoader::database): 45305 (WebCore::HRTFDatabaseLoader::databaseSampleRate): 45306 45307 2010-09-27 Ryosuke Niwa <rniwa (a] webkit.org> 45308 45309 Reviewed by Darin Adler. 45310 45311 queryCommandState with justifyCenter, justifyLeft, and justifyRight always return false 45312 https://bugs.webkit.org/show_bug.cgi?id=45910 45313 45314 Implemented queryCommandState for justifyCenter, justifyLeft, and justifyRight commands. 45315 Added getTextAlignment to convert -webkit-center, -webkit-left, and -webkit-right to 45316 center, left, and right respectively because they can be treated equally for editing purposes. 45317 45318 Test: editing/execCommand/query-text-alignment.html 45319 45320 * editing/ApplyStyleCommand.cpp: 45321 (WebCore::getTextAlignment): Added. 45322 (WebCore::getPropertiesNotIn): Uses getTextAlignment. 45323 * editing/EditorCommand.cpp: 45324 (WebCore::stateJustifyCenter): Added. 45325 (WebCore::stateJustifyLeft): Added. 45326 (WebCore::stateJustifyRight): Added. 45327 (WebCore::createCommandMap): Refers to stateJustifyCenter, stateJustifyLeft, and stateJustifyRight. 45328 45329 2010-09-27 Alpha Lam <hclam (a] chromium.org> 45330 45331 Unreviewed. Build fix. 45332 45333 Reorder member declarations and fix other warnings. 45334 45335 * platform/graphics/chromium/VideoLayerChromium.cpp: 45336 (WebCore::VideoLayerChromium::VideoLayerChromium): 45337 (WebCore::VideoLayerChromium::~VideoLayerChromium): 45338 (WebCore::VideoLayerChromium::updateContents): 45339 (WebCore::VideoLayerChromium::determineTextureFormat): 45340 (WebCore::VideoLayerChromium::allocateTexturesIfNeeded): 45341 * platform/graphics/chromium/VideoLayerChromium.h: 45342 45343 2010-09-27 Kenneth Russell <kbr (a] google.com> 45344 45345 Unreviewed, Qt build fix. Stub out CanvasRenderingContext::checkOrigin(const HTMLVideoElement*) 45346 on platforms that don't support video after r68460. 45347 45348 * html/canvas/CanvasRenderingContext.cpp: 45349 (WebCore::CanvasRenderingContext::checkOrigin): 45350 45351 2010-09-27 Chris Fleizach <cfleizach (a] apple.com> 45352 45353 Reviewed by Beth Dakin. 45354 45355 CrashTracer: 1,803 crashes in Safari at com.apple.WebCore: -[AccessibilityObjectWrapper accessibilityIsIgnored] + 56 45356 https://bugs.webkit.org/show_bug.cgi?id=46662 45357 45358 Before calling updateBackingStore(), the wrapper object needs to be retained, lest it be invalidated during 45359 the updateBackingStore call. This consolidates all calls to updateBackingStore(). 45360 45361 Test: platform/mac/accessibility/removing-textarea-after-edit-crash.html 45362 45363 * accessibility/mac/AXObjectCacheMac.mm: 45364 (WebCore::AXObjectCache::postPlatformNotification): 45365 Use an ASSERT here to catch the crash because DRT won't cause AppKit to post notifications. 45366 * accessibility/mac/AccessibilityObjectWrapper.mm: 45367 (-[AccessibilityObjectWrapper prepareAccessibilityMethod]): 45368 (-[AccessibilityObjectWrapper accessibilityActionNames]): 45369 (-[AccessibilityObjectWrapper accessibilityAttributeNames]): 45370 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 45371 (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]): 45372 (-[AccessibilityObjectWrapper accessibilityHitTest:]): 45373 (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]): 45374 (-[AccessibilityObjectWrapper accessibilityIsIgnored]): 45375 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): 45376 (-[AccessibilityObjectWrapper accessibilityPerformPressAction]): 45377 (-[AccessibilityObjectWrapper accessibilityPerformIncrementAction]): 45378 (-[AccessibilityObjectWrapper accessibilityPerformDecrementAction]): 45379 (-[AccessibilityObjectWrapper accessibilityPerformAction:]): 45380 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): 45381 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 45382 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]): 45383 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]): 45384 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): 45385 45386 2010-09-27 Adrienne Walker <enne (a] google.com> 45387 45388 Reviewed by Adam Barth. 45389 45390 WebGL's readPixels doesn't respect origin-clean flag 45391 45392 Push CanvasRenderingContext2D checkOrigin logic into base class so it can be shared between different kinds of canvas contexts. 45393 https://bugs.webkit.org/show_bug.cgi?id=45718 45394 45395 Test: LayoutTests/http/tests/canvas/webgl/origin-clean-conformance.html 45396 45397 * html/canvas/CanvasRenderingContext.cpp: 45398 (WebCore::CanvasRenderingContext::checkOrigin): 45399 * html/canvas/CanvasRenderingContext.h: 45400 (WebCore::CanvasRenderingContext::~CanvasRenderingContext): 45401 (WebCore::CanvasRenderingContext::canvas): 45402 (WebCore::CanvasRenderingContext::is2d): 45403 (WebCore::CanvasRenderingContext::is3d): 45404 (WebCore::CanvasRenderingContext::isAccelerated): 45405 (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas): 45406 (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer): 45407 (WebCore::CanvasRenderingContext::platformLayer): 45408 * html/canvas/CanvasRenderingContext2D.cpp: 45409 (WebCore::CanvasRenderingContext2D::setStrokeStyle): 45410 (WebCore::CanvasRenderingContext2D::setFillStyle): 45411 (WebCore::CanvasRenderingContext2D::drawImage): 45412 (WebCore::CanvasRenderingContext2D::drawImageFromRect): 45413 * html/canvas/CanvasRenderingContext2D.h: 45414 * html/canvas/WebGLRenderingContext.cpp: 45415 (WebCore::WebGLRenderingContext::readPixels): 45416 (WebCore::WebGLRenderingContext::texImage2D): 45417 (WebCore::WebGLRenderingContext::videoFrameToImage): 45418 (WebCore::WebGLRenderingContext::texSubImage2D): 45419 * html/canvas/WebGLRenderingContext.h: 45420 * html/canvas/WebGLRenderingContext.idl: 45421 45422 2010-09-27 Darin Adler <darin (a] apple.com> 45423 45424 Reviewed by Dan Bernstein. 45425 45426 REGRESSION (r68054): Buttons no longer render at correct sizes 45427 https://bugs.webkit.org/show_bug.cgi?id=46513 45428 45429 Test: fast/forms/input-button-sizes.html 45430 45431 The setUpButtonCell function was running only once, but needed to run every time 45432 through the button function. 45433 45434 * platform/mac/ThemeMac.mm: 45435 (WebCore::leakButtonCell): Added. Separate one-time initialization code. 45436 (WebCore::setUpButtonCell): Removed the first-time initialization part of this function. 45437 (WebCore::button): Merged the three functions back into one. 45438 45439 2010-09-27 Victoria Kirst <vrk (a] google.com> 45440 45441 Reviewed by James Robinson. 45442 45443 Modifies VideoLayerChromium to do YUV to RGB color conversion in the 45444 GPU. Also adds support for RGBA video frame formats, though this code 45445 path is currently never run because the video frames are in YV12 45446 format. 45447 https://bugs.webkit.org/show_bug.cgi?id=45069 45448 45449 * platform/graphics/chromium/LayerRendererChromium.cpp: 45450 (WebCore::LayerRendererChromium::initializeSharedObjects): 45451 (WebCore::LayerRendererChromium::cleanupSharedObjects): 45452 * platform/graphics/chromium/LayerRendererChromium.h: 45453 (WebCore::LayerRendererChromium::videoLayerSharedValues): 45454 * platform/graphics/chromium/VideoLayerChromium.cpp: 45455 (WebCore::VideoLayerChromium::SharedValues::SharedValues): 45456 (WebCore::VideoLayerChromium::SharedValues::~SharedValues): 45457 (WebCore::VideoLayerChromium::VideoLayerChromium): 45458 (WebCore::VideoLayerChromium::~VideoLayerChromium): 45459 (WebCore::VideoLayerChromium::updateContents): 45460 (WebCore::VideoLayerChromium::updateYUVContents): 45461 (WebCore::VideoLayerChromium::allocateYUVTextures): 45462 (WebCore::VideoLayerChromium::updateYUVTextures): 45463 (WebCore::VideoLayerChromium::updateRGBAContents): 45464 (WebCore::VideoLayerChromium::allocateTexture): 45465 (WebCore::VideoLayerChromium::updateTexture): 45466 (WebCore::VideoLayerChromium::updateContentsCompleted): 45467 (WebCore::VideoLayerChromium::draw): 45468 (WebCore::VideoLayerChromium::drawYUV): 45469 (WebCore::VideoLayerChromium::drawRGBA): 45470 * platform/graphics/chromium/VideoLayerChromium.h: 45471 (WebCore::VideoLayerChromium::drawsContent): 45472 (WebCore::VideoLayerChromium::SharedValues::yuvShaderProgram): 45473 (WebCore::VideoLayerChromium::SharedValues::rgbaShaderProgram): 45474 (WebCore::VideoLayerChromium::SharedValues::yuvShaderMatrixLocation): 45475 (WebCore::VideoLayerChromium::SharedValues::rgbaShaderMatrixLocation): 45476 (WebCore::VideoLayerChromium::SharedValues::yuvWidthScaleFactorLocation): 45477 (WebCore::VideoLayerChromium::SharedValues::rgbaWidthScaleFactorLocation): 45478 (WebCore::VideoLayerChromium::SharedValues::yTextureLocation): 45479 (WebCore::VideoLayerChromium::SharedValues::uTextureLocation): 45480 (WebCore::VideoLayerChromium::SharedValues::vTextureLocation): 45481 (WebCore::VideoLayerChromium::SharedValues::yuvAlphaLocation): 45482 (WebCore::VideoLayerChromium::SharedValues::rgbaTextureLocation): 45483 (WebCore::VideoLayerChromium::SharedValues::ccMatrixLocation): 45484 (WebCore::VideoLayerChromium::SharedValues::initialized): 45485 45486 2010-09-27 Peter Kasting <pkasting (a] google.com> 45487 45488 Reviewed by James Robinson. 45489 45490 ImageDecoderSkia.cpp needs to check for allocator failure when copying 45491 bitmaps. 45492 https://bugs.webkit.org/show_bug.cgi?id=46437 45493 45494 * manual-tests/large-size-image-crash.html: Added. 45495 * manual-tests/resources/large-size-image-crash.gif: Added. 45496 * platform/image-decoders/ImageDecoder.cpp: 45497 (WebCore::RGBA32Buffer::copyBitmapData): 45498 * platform/image-decoders/ImageDecoder.h: 45499 * platform/image-decoders/gif/GIFImageDecoder.cpp: 45500 (WebCore::GIFImageDecoder::initFrameBuffer): 45501 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 45502 (WebCore::RGBA32Buffer::copyBitmapData): 45503 * platform/image-decoders/skia/ImageDecoderSkia.cpp: 45504 (WebCore::RGBA32Buffer::copyBitmapData): 45505 45506 2010-09-27 James Robinson <jamesr (a] chromium.org> 45507 45508 Reviewed by Simon Fraser. 45509 45510 Revert r63307, it broke repainting dynamically changed SVG content 45511 https://bugs.webkit.org/show_bug.cgi?id=46499 45512 45513 This patch reverts r63307 and adds a regression test for what broke. 45514 45515 Test: fast/repaint/repaint-svg-after-style-change.html 45516 45517 * rendering/RenderForeignObject.cpp: 45518 (WebCore::RenderForeignObject::layout): 45519 * rendering/RenderPath.cpp: 45520 (WebCore::RenderPath::layout): 45521 * rendering/RenderSVGContainer.cpp: 45522 (WebCore::RenderSVGContainer::layout): 45523 * rendering/RenderSVGImage.cpp: 45524 (WebCore::RenderSVGImage::layout): 45525 * rendering/RenderSVGRoot.cpp: 45526 (WebCore::RenderSVGRoot::layout): 45527 * rendering/RenderSVGText.cpp: 45528 (WebCore::RenderSVGText::layout): 45529 45530 2010-09-27 Vangelis Kokkevis <vangelis (a] chromium.org> 45531 45532 Reviewed by James Robinson. 45533 45534 [chromium] Making LayerChromium's destructor virtual so that the appropriate 45535 derived class destructors get called when the layer tree is taken down. 45536 ContentLayerChromium and its derived types (ImageLayerChromium for now) will 45537 free up the texture allocated for their contents upon destruction. To avoid 45538 having the LayerRendererChromium destructor getting called before the layers 45539 are destroyed and thus leaving their textures orphaned, the layers now hold 45540 a ref counted pointer to the renderer that uses them. 45541 https://bugs.webkit.org/show_bug.cgi?id=46139 45542 45543 * platform/graphics/chromium/ContentLayerChromium.cpp: 45544 (WebCore::ContentLayerChromium::~ContentLayerChromium): 45545 (WebCore::ContentLayerChromium::setLayerRenderer): 45546 (WebCore::ContentLayerChromium::cleanupResources): 45547 * platform/graphics/chromium/ContentLayerChromium.h: 45548 * platform/graphics/chromium/LayerChromium.cpp: 45549 (WebCore::LayerChromium::setLayerRenderer): 45550 * platform/graphics/chromium/LayerChromium.h: 45551 (WebCore::LayerChromium::layerRenderer): 45552 * platform/graphics/chromium/LayerRendererChromium.cpp: 45553 (WebCore::LayerRendererChromium::create): 45554 (WebCore::LayerRendererChromium::deleteLayerTexture): 45555 (WebCore::LayerRendererChromium::cleanupSharedObjects): 45556 * platform/graphics/chromium/LayerRendererChromium.h: 45557 45558 2010-09-27 Erik Arvidsson <arv (a] chromium.org> 45559 45560 Reviewed by Darin Adler. 45561 45562 Implement HTML 5's HTMLElement.classList property 45563 https://bugs.webkit.org/show_bug.cgi?id=20709 45564 45565 This adds a DOMTokenList class that is used for the classList property. DOMTokenList uses a SpaceSplitString for fast 45566 contains check. In standards mode the existing classNames is used but in quirks mode we use an internal SpaceSplitString 45567 because classList is always case sensitive. 45568 45569 Tests: fast/dom/HTMLElement/class-list-gc.html 45570 fast/dom/HTMLElement/class-list-quirks.html 45571 fast/dom/HTMLElement/class-list.html 45572 perf/class-list-remove.html 45573 45574 * Android.derived.jscbindings.mk: 45575 * Android.derived.v8bindings.mk: 45576 * Android.jscbindings.mk: 45577 * CMakeLists.txt: 45578 * DerivedSources.cpp: 45579 * DerivedSources.make: 45580 * GNUmakefile.am: 45581 * WebCore.gypi: 45582 * WebCore.pri: 45583 * WebCore.pro: 45584 * WebCore.vcproj/WebCore.vcproj: 45585 * WebCore.xcodeproj/project.pbxproj: 45586 * bindings/gobject/GNUmakefile.am: 45587 * bindings/js/JSElementCustom.cpp: 45588 (WebCore::JSElement::markChildren): Make sure that we keep the wrapper while the element is alive. 45589 * bindings/scripts/CodeGeneratorJS.pm: DOMTokenList has a string indexed getter. 45590 * bindings/scripts/CodeGeneratorV8.pm: 45591 * bindings/v8/custom/V8DOMTokenListCustom.cpp: Added. 45592 (WebCore::toV8): 45593 * dom/Element.cpp: 45594 (WebCore::Element::classList): 45595 (WebCore::Element::optionalClassList): 45596 * dom/Element.h: 45597 * dom/ElementRareData.h: This now has an OwnPtr to a ClassList if the Element::classList is ever called. 45598 * dom/SpaceSplitString.h: 45599 (WebCore::SpaceSplitString::isNull): 45600 * dom/StyledElement.cpp: 45601 (WebCore::StyledElement::classAttributeChanged): Update the classList if it exists. 45602 * dom/StyledElement.h: 45603 * html/DOMTokenList.cpp: Added. 45604 (WebCore::validateToken): 45605 (WebCore::DOMTokenList::DOMTokenList): 45606 (WebCore::DOMTokenList::ref): 45607 (WebCore::DOMTokenList::deref): 45608 (WebCore::DOMTokenList::length): 45609 (WebCore::DOMTokenList::item): 45610 (WebCore::DOMTokenList::contains): 45611 (WebCore::DOMTokenList::containsInternal): The internal methods do no validation of the token. 45612 (WebCore::DOMTokenList::add): 45613 (WebCore::DOMTokenList::addInternal): 45614 (WebCore::DOMTokenList::remove): 45615 (WebCore::DOMTokenList::removeInternal): 45616 (WebCore::DOMTokenList::toggle): 45617 (WebCore::DOMTokenList::toString): 45618 (WebCore::DOMTokenList::reset): 45619 (WebCore::DOMTokenList::classNames): 45620 * html/DOMTokenList.h: Added. 45621 (WebCore::DOMTokenList::create): 45622 (WebCore::DOMTokenList::element): 45623 * html/DOMTokenList.idl: Added. 45624 * html/HTMLElement.idl: 45625 * page/DOMWindow.cpp: 45626 * page/DOMWindow.idl: 45627 45628 2010-09-27 Kenneth Russell <kbr (a] google.com> 45629 45630 Reviewed by James Robinson. 45631 45632 Add local triangulation of cubic curve control points 45633 https://bugs.webkit.org/show_bug.cgi?id=45252 45634 45635 (Re-landing; I neglected to actually add the new files in 45636 http://trac.webkit.org/changeset/68045 .) 45637 45638 Adding a localized triangulation algorithm which takes as input 45639 the four control points of a cubic curve segment and provides both 45640 triangles as well as the ability to walk the interior edges. The 45641 latter will be used later to fill the interior of shapes bounded 45642 by these cubic curves, quadratic curves and line segments. 45643 45644 * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added. 45645 (WebCore::LoopBlinnLocalTriangulator::Triangle::contains): 45646 (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex): 45647 (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex): 45648 (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise): 45649 (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator): 45650 (WebCore::LoopBlinnLocalTriangulator::reset): 45651 (WebCore::LoopBlinnLocalTriangulator::triangulate): 45652 (WebCore::LoopBlinnLocalTriangulator::triangulateHelper): 45653 (WebCore::LoopBlinnLocalTriangulator::addTriangle): 45654 (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex): 45655 (WebCore::LoopBlinnLocalTriangulator::isSharedEdge): 45656 * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added. 45657 (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex): 45658 (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates): 45659 (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates): 45660 (WebCore::LoopBlinnLocalTriangulator::Vertex::set): 45661 (WebCore::LoopBlinnLocalTriangulator::Vertex::end): 45662 (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd): 45663 (WebCore::LoopBlinnLocalTriangulator::Vertex::marked): 45664 (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked): 45665 (WebCore::LoopBlinnLocalTriangulator::Vertex::interior): 45666 (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior): 45667 (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags): 45668 (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle): 45669 (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex): 45670 (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices): 45671 (WebCore::LoopBlinnLocalTriangulator::getVertex): 45672 (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles): 45673 (WebCore::LoopBlinnLocalTriangulator::getTriangle): 45674 (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices): 45675 (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex): 45676 45677 2010-09-27 Chris Rogers <crogers (a] google.com> 45678 45679 Reviewed by Kenneth Russell. 45680 45681 Add AudioNode files 45682 https://bugs.webkit.org/show_bug.cgi?id=45571 45683 45684 No new tests since audio API is not yet implemented. 45685 45686 * webaudio/AudioNode.cpp: Added. 45687 (WebCore::AudioNode::AudioNode): 45688 (WebCore::AudioNode::~AudioNode): 45689 (WebCore::AudioNode::setType): 45690 (WebCore::AudioNode::lazyInitialize): 45691 (WebCore::AudioNode::addInput): 45692 (WebCore::AudioNode::addOutput): 45693 (WebCore::AudioNode::input): 45694 (WebCore::AudioNode::output): 45695 (WebCore::AudioNode::connect): 45696 (WebCore::AudioNode::disconnect): 45697 (WebCore::AudioNode::processIfNecessary): 45698 (WebCore::AudioNode::pullInputs): 45699 (WebCore::AudioNode::ref): 45700 (WebCore::AudioNode::deref): 45701 (WebCore::AudioNode::finishDeref): 45702 (WebCore::AudioNode::printNodeCounts): 45703 * webaudio/AudioNode.h: Added. 45704 (WebCore::AudioNode::context): 45705 (WebCore::AudioNode::type): 45706 (WebCore::AudioNode::isInitialized): 45707 (WebCore::AudioNode::numberOfInputs): 45708 (WebCore::AudioNode::numberOfOutputs): 45709 (WebCore::AudioNode::sampleRate): 45710 (WebCore::AudioNode::checkNumberOfChannelsForInput): 45711 * webaudio/AudioNode.idl: Added. 45712 45713 2010-09-27 David Hyatt <hyatt (a] apple.com> 45714 45715 Reviewed by Sam Weinig. 45716 45717 https://bugs.webkit.org/show_bug.cgi?id=46665 45718 45719 Patch RenderView's layout and computeLogicalWidth/Height methods to be block-flow-aware. 45720 45721 Added fast/root-lr-basic.html 45722 45723 * rendering/RenderView.cpp: 45724 (WebCore::RenderView::computeLogicalHeight): 45725 (WebCore::RenderView::computeLogicalWidth): 45726 (WebCore::RenderView::layout): 45727 * rendering/RenderView.h: 45728 (WebCore::RenderView::viewLogicalWidth): 45729 (WebCore::RenderView::viewLogicalHeight): 45730 45731 2010-09-24 Zhenyao Mo <zmo (a] google.com> 45732 45733 Reviewed by Kenneth Russell. 45734 45735 Hook up ANGLE with chromium --in-process-webgl port 45736 https://bugs.webkit.org/show_bug.cgi?id=44309 45737 45738 * platform/graphics/GraphicsContext3D.h: Move Angle stuff inside MAC only section. 45739 45740 2010-09-27 David Hyatt <hyatt (a] apple.com> 45741 45742 Reviewed by Sam Weinig. 45743 45744 https://bugs.webkit.org/show_bug.cgi?id=46659 45745 45746 Patch the width/height/x/y calls in layoutBlock() to be their logical equivalents instead. 45747 45748 * rendering/RenderBlock.cpp: 45749 (WebCore::RenderBlock::layoutBlock): 45750 45751 2010-09-27 David Hyatt <hyatt (a] apple.com> 45752 45753 Reviewed by Sam Weinig. 45754 45755 https://bugs.webkit.org/show_bug.cgi?id=46649, fix failing layout tests. 45756 45757 The implementation of setting the before/after margins was wrong and poking the wrong margin values. 45758 45759 Once I made them set the correct values, it revealed that one of the new block flow tests wasn't 45760 actually working. In order to fix it, I had to make the block direction margin computation actually 45761 use the containing block's block-flow in order to return the right answer. This involved cleaning 45762 up computeBlockDirectionMargins to be more like computeInlineDirectionMargins. 45763 45764 fast/css/logical-property-resolution.html also caught the bug. Its results are now correct. 45765 45766 * rendering/RenderBlock.cpp: 45767 (WebCore::RenderBlock::adjustPositionedBlock): 45768 (WebCore::RenderBlock::determineHorizontalPosition): 45769 (WebCore::RenderBlock::layoutBlockChild): 45770 (WebCore::RenderBlock::insertFloatingObject): 45771 * rendering/RenderBox.cpp: 45772 (WebCore::RenderBox::setMarginBeforeUsing): 45773 (WebCore::RenderBox::setMarginAfterUsing): 45774 (WebCore::RenderBox::computeLogicalWidth): 45775 (WebCore::RenderBox::computeInlineDirectionMargins): 45776 (WebCore::RenderBox::computeLogicalHeight): 45777 (WebCore::RenderBox::computeBlockDirectionMargins): 45778 * rendering/RenderBox.h: 45779 * rendering/RenderFlexibleBox.cpp: 45780 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 45781 (WebCore::RenderFlexibleBox::layoutVerticalBox): 45782 * rendering/RenderObject.h: 45783 * rendering/RenderTable.cpp: 45784 (WebCore::RenderTable::computeLogicalWidth): 45785 * rendering/RenderTableRow.cpp: 45786 (WebCore::RenderTableRow::layout): 45787 * rendering/style/RenderStyle.cpp: 45788 (WebCore::RenderStyle::marginBeforeUsing): 45789 (WebCore::RenderStyle::marginAfterUsing): 45790 * rendering/style/RenderStyle.h: 45791 45792 2010-09-14 Zhenyao Mo <zmo (a] google.com> 45793 45794 Reviewed by Kenneth Russell. 45795 45796 Textures and renderbuffers should be detached first before deletion if they are attached to framebuffers 45797 https://bugs.webkit.org/show_bug.cgi?id=43942 45798 45799 Test: fast/canvas/webgl/object-deletion-behaviour.html 45800 45801 * html/canvas/WebGLBuffer.cpp: 45802 (WebCore::WebGLBuffer::deleteObjectImpl): Delete the object only once. 45803 * html/canvas/WebGLFramebuffer.cpp: Use RefPtr for attachment WebGLObjects. 45804 (WebCore::WebGLFramebuffer::WebGLFramebuffer): 45805 (WebCore::WebGLFramebuffer::removeAttachment): Remove an attachment data ref. 45806 (WebCore::WebGLFramebuffer::onAttachedObjectChange): 45807 (WebCore::WebGLFramebuffer::getColorBufferFormat): 45808 (WebCore::WebGLFramebuffer::deleteObjectImpl): 45809 (WebCore::WebGLFramebuffer::initializeRenderbuffers): 45810 * html/canvas/WebGLFramebuffer.h: Declare removeAttachment(). 45811 * html/canvas/WebGLObject.cpp: 45812 (WebCore::WebGLObject::setObject): Make it protected and can only be called when initializing. 45813 * html/canvas/WebGLObject.h: 45814 (WebCore::WebGLObject::onDetached): Fix a bug. 45815 (WebCore::WebGLObject::isDeleted): Expose the delete flag. 45816 * html/canvas/WebGLProgram.cpp: 45817 (WebCore::WebGLProgram::deleteObjectImpl): Detach shaders when deleting a program. 45818 * html/canvas/WebGLRenderbuffer.cpp: 45819 (WebCore::WebGLRenderbuffer::deleteObjectImpl): Delete the object only once. 45820 * html/canvas/WebGLRenderingContext.cpp: 45821 (WebCore::WebGLRenderingContext::deleteFramebuffer): Bind to internal fbo when deleting the currently-bound fbo. 45822 (WebCore::WebGLRenderingContext::deleteRenderbuffer): Remove renderbuffer from currently-bound fbo upon deletion. 45823 (WebCore::WebGLRenderingContext::deleteTexture): Remove texture from currently-bound fbo upon deletion. 45824 (WebCore::WebGLRenderingContext::useProgram): Fix a condition. 45825 * html/canvas/WebGLShader.cpp: 45826 (WebCore::WebGLShader::deleteObjectImpl): Delete the object only once. 45827 * html/canvas/WebGLTexture.cpp: 45828 (WebCore::WebGLTexture::deleteObjectImpl): Ditto. 45829 45830 2010-09-27 Ryosuke Niwa <rniwa (a] webkit.org> 45831 45832 Reviewed by Antonio Gomes. 45833 45834 stateStyle (@EditorCommand.cpp) should ask EditingBehavior for platform specific behavior 45835 https://bugs.webkit.org/show_bug.cgi?id=41989 45836 45837 queryCommandState returns true even when in the mixed state 45838 https://bugs.webkit.org/show_bug.cgi?id=46382 45839 45840 Fixed stateStyle so that it calls selectionStartHasStyle when shouldToggleStyleBasedOnStartOfSelection 45841 is true (Mac platforms) and calls selectionHasStyle otherwise (non-Mac platforms). 45842 45843 Also fixed queryCommandState so that it only returns true when the state is TrueTriState 45844 as supposed to returning true whenever the state is not FalseTriState. New behavior matches that of 45845 other browsers such as Firefox and Internet Explorer. 45846 45847 * dom/Document.cpp: 45848 (WebCore::Document::queryCommandState): 45849 * editing/EditorCommand.cpp: 45850 (WebCore::executeToggleStyle): 45851 (WebCore::stateStyle): 45852 45853 2010-09-27 David Hyatt <hyatt (a] apple.com> 45854 45855 Reviewed by Dan Bernstein. 45856 45857 https://bugs.webkit.org/show_bug.cgi?id=46647, add getters/setters for the logical position of a box. 45858 45859 Also made all of the logicalWidth/Height getters/setters inline for performance. 45860 45861 * rendering/RenderBox.cpp: 45862 * rendering/RenderBox.h: 45863 (WebCore::RenderBox::logicalLeft): 45864 (WebCore::RenderBox::logicalTop): 45865 (WebCore::RenderBox::logicalWidth): 45866 (WebCore::RenderBox::logicalHeight): 45867 (WebCore::RenderBox::setLogicalLeft): 45868 (WebCore::RenderBox::setLogicalTop): 45869 (WebCore::RenderBox::setLogicalWidth): 45870 (WebCore::RenderBox::setLogicalHeight): 45871 (WebCore::RenderBox::setLogicalLocation): 45872 45873 2010-09-27 David Hyatt <hyatt (a] apple.com> 45874 45875 Reviewed by Sam Weinig. 45876 45877 https://bugs.webkit.org/show_bug.cgi?id=46639, make computeLogicalHeight block-flow-aware. 45878 45879 This patch does the following: 45880 (1) Makes computeLogicalHeight block-flow-aware (patching all helper functions as needed to make this work). 45881 (2) Makes block flow roots (blocks whose parent has a different block-flow directionality) establish new block formatting contexts. 45882 (This causes them to not collapse their margins with their children and to avoid floats). 45883 (3) Patch all occurrences of setHeight in block and line layout to setLogicalHeight so that height doesn't get incorrectly 45884 overwritten for lr/rl block-flow. This is necessary to write tests that examine the width/height of the blocks. 45885 45886 Added multiple new tests in fast/blockflow. 45887 fast/css/logical-property-resolution gives the correct results now. 45888 45889 * rendering/RenderBlock.cpp: 45890 (WebCore::RenderBlock::MarginInfo::MarginInfo): 45891 (WebCore::RenderBlock::layoutBlock): 45892 (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): 45893 (WebCore::RenderBlock::adjustFloatingBlock): 45894 (WebCore::RenderBlock::collapseMargins): 45895 (WebCore::RenderBlock::clearFloatsIfNeeded): 45896 (WebCore::RenderBlock::determineHorizontalPosition): 45897 (WebCore::RenderBlock::handleBottomOfBlock): 45898 (WebCore::RenderBlock::layoutBlockChildren): 45899 (WebCore::RenderBlock::layoutBlockChild): 45900 (WebCore::RenderBlock::positionNewFloatOnLine): 45901 (WebCore::RenderBlock::newLine): 45902 (WebCore::RenderBlock::logicalLeftOffsetForLine): 45903 (WebCore::RenderBlock::logicalRightOffsetForContent): 45904 (WebCore::RenderBlock::logicalRightOffsetForLine): 45905 (WebCore::RenderBlock::getClearDelta): 45906 (WebCore::RenderBlock::layoutColumns): 45907 * rendering/RenderBlock.h: 45908 * rendering/RenderBlockLineLayout.cpp: 45909 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): 45910 (WebCore::RenderBlock::layoutInlineChildren): 45911 (WebCore::RenderBlock::determineStartPosition): 45912 (WebCore::RenderBlock::fitBelowFloats): 45913 * rendering/RenderBox.cpp: 45914 (WebCore::RenderBox::marginBefore): 45915 (WebCore::RenderBox::marginBeforeUsing): 45916 (WebCore::RenderBox::marginAfter): 45917 (WebCore::RenderBox::marginAfterUsing): 45918 (WebCore::RenderBox::setMarginBefore): 45919 (WebCore::RenderBox::setMarginAfter): 45920 (WebCore::RenderBox::setMarginBeforeUsing): 45921 (WebCore::RenderBox::setMarginAfterUsing): 45922 (WebCore::RenderBox::computeLogicalHeight): 45923 (WebCore::RenderBox::computeLogicalHeightUsing): 45924 (WebCore::RenderBox::computePercentageLogicalHeight): 45925 (WebCore::RenderBox::computeReplacedHeightUsing): 45926 (WebCore::RenderBox::availableLogicalHeight): 45927 (WebCore::RenderBox::availableLogicalHeightUsing): 45928 (WebCore::RenderBox::computeBlockDirectionMargins): 45929 (WebCore::RenderBox::avoidsFloats): 45930 * rendering/RenderBox.h: 45931 (WebCore::RenderBox::contentLogicalWidth): 45932 (WebCore::RenderBox::contentLogicalHeight): 45933 (WebCore::RenderBox::stretchesToViewHeight): 45934 (WebCore::RenderBox::availableLogicalWidth): 45935 (WebCore::RenderBox::availableWidth): 45936 (WebCore::RenderBox::availableHeight): 45937 (WebCore::RenderBox::isBlockFlowRoot): 45938 * rendering/RenderTable.cpp: 45939 (WebCore::RenderTable::computeLogicalWidth): 45940 45941 2010-09-27 Mario Sanchez Prada <msanchez (a] igalia.com> 45942 45943 Reviewed by Chris Fleizach. 45944 45945 [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items 45946 https://bugs.webkit.org/show_bug.cgi?id=45381 45947 45948 Ensure list markers are consistently used in the Atk wrapper. 45949 45950 This patch does two things (both needed to fix the bug): It 45951 improves the way list items markers are exposed through the Atk 45952 Wrapper (by exposing the exact text in the marker, including the 45953 marker suffix, if any) and makes sure the marker is consistently 45954 considered and treated in those methods of the AtkText interface 45955 that would need it (like atk_text_get_character_count or 45956 atk_text_get_run_attributes, for instance). 45957 45958 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 45959 (textForObject): 45960 Append/prepend list marker when needed. 45961 (webkit_accessible_text_get_text): 45962 Use the new function markerTextWithSuffix() to expose a more 45963 accurate value. 45964 (accessibilityObjectLength): 45965 Consider list items marker to return the length of an object, 45966 if needed. Also, added some extra checks. 45967 (webkit_accessible_text_get_character_count): 45968 Just delegate on accessibilityObjectLength, to make it 45969 cleaner and more consistent. 45970 45971 * rendering/RenderListItem.cpp: 45972 (WebCore::RenderListItem::markerTextWithSuffix): 45973 New public function to return a single string with the 45974 marker associated to the item and its suffix, considering 45975 text direction (LTR or RTL). 45976 * rendering/RenderListItem.h: 45977 * rendering/RenderListMarker.cpp: 45978 (WebCore::RenderListMarker::suffix): 45979 New public function to return a String with the suffix 45980 associated to the marker. 45981 * rendering/RenderListMarker.h: 45982 45983 2010-09-27 Sheriff Bot <webkit.review.bot (a] gmail.com> 45984 45985 Unreviewed, rolling out r68389. 45986 http://trac.webkit.org/changeset/68389 45987 https://bugs.webkit.org/show_bug.cgi?id=46637 45988 45989 test_shell is crashing on chromium Win (Requested by loislo on 45990 #webkit). 45991 45992 * inspector/InspectorTimelineAgent.cpp: 45993 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 45994 (WebCore::InspectorTimelineAgent::pushGCEventRecords): 45995 (WebCore::InspectorTimelineAgent::didGC): 45996 (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent): 45997 (WebCore::InspectorTimelineAgent::willCallFunction): 45998 (WebCore::InspectorTimelineAgent::didCallFunction): 45999 (WebCore::InspectorTimelineAgent::willDispatchEvent): 46000 (WebCore::InspectorTimelineAgent::didDispatchEvent): 46001 (WebCore::InspectorTimelineAgent::willLayout): 46002 (WebCore::InspectorTimelineAgent::didLayout): 46003 (WebCore::InspectorTimelineAgent::willRecalculateStyle): 46004 (WebCore::InspectorTimelineAgent::didRecalculateStyle): 46005 (WebCore::InspectorTimelineAgent::willPaint): 46006 (WebCore::InspectorTimelineAgent::didPaint): 46007 (WebCore::InspectorTimelineAgent::willWriteHTML): 46008 (WebCore::InspectorTimelineAgent::didWriteHTML): 46009 (WebCore::InspectorTimelineAgent::didInstallTimer): 46010 (WebCore::InspectorTimelineAgent::didRemoveTimer): 46011 (WebCore::InspectorTimelineAgent::willFireTimer): 46012 (WebCore::InspectorTimelineAgent::didFireTimer): 46013 (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): 46014 (WebCore::InspectorTimelineAgent::didChangeXHRReadyState): 46015 (WebCore::InspectorTimelineAgent::willLoadXHR): 46016 (WebCore::InspectorTimelineAgent::didLoadXHR): 46017 (WebCore::InspectorTimelineAgent::willEvaluateScript): 46018 (WebCore::InspectorTimelineAgent::didEvaluateScript): 46019 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): 46020 (WebCore::InspectorTimelineAgent::willSendResourceRequest): 46021 (WebCore::InspectorTimelineAgent::willReceiveResourceData): 46022 (WebCore::InspectorTimelineAgent::didReceiveResourceData): 46023 (WebCore::InspectorTimelineAgent::willReceiveResourceResponse): 46024 (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): 46025 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 46026 (WebCore::InspectorTimelineAgent::didMarkTimeline): 46027 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): 46028 (WebCore::InspectorTimelineAgent::didMarkLoadEvent): 46029 (WebCore::InspectorTimelineAgent::reset): 46030 (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): 46031 (WebCore::InspectorTimelineAgent::addRecordToTimeline): 46032 (WebCore::InspectorTimelineAgent::setHeapSizeStatistic): 46033 (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): 46034 (WebCore::InspectorTimelineAgent::pushCurrentRecord): 46035 * inspector/InspectorTimelineAgent.h: 46036 (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry): 46037 (WebCore::InspectorTimelineAgent::GCEvent::GCEvent): 46038 46039 2010-09-27 Kinuko Yasuda <kinuko (a] google.com> 46040 46041 Reviewed by Adam Barth. 46042 46043 [Cleanup] Add create method to FileSystemCallbacks to get rid of naked new's 46044 https://bugs.webkit.org/show_bug.cgi?id=46561 46045 46046 Also cleanup the callbacks layering to pass AsyncFileSystemCallbacks 46047 object to LocalFileSystem::requestFileSystem (rather than 46048 FileSystemCallback and ErrorCallback) so that all the callbacks class 46049 we pass from WebCore to WebKit/chromium/src will be 46050 AsyncFileSystemCallbacks. 46051 46052 No new tests; this patch is only for cleanup and there should be no functionality changes. 46053 46054 * fileapi/DOMFileSystem.cpp: 46055 (WebCore::DOMFileSystem::getMetadata): 46056 (WebCore::DOMFileSystem::move): 46057 (WebCore::DOMFileSystem::copy): 46058 (WebCore::DOMFileSystem::remove): 46059 (WebCore::DOMFileSystem::getParent): 46060 (WebCore::DOMFileSystem::getFile): 46061 (WebCore::DOMFileSystem::getDirectory): 46062 (WebCore::DOMFileSystem::createWriter): 46063 (WebCore::DOMFileSystem::readDirectory): 46064 * fileapi/FileSystemCallbacks.cpp: 46065 (WebCore::EntryCallbacks::create): Added. 46066 (WebCore::EntriesCallbacks::create): Added. 46067 (WebCore::FileSystemCallbacks::create): Added. 46068 (WebCore::MetadataCallbacks::create): Added. 46069 (WebCore::FileWriterCallbacks::create): Added. 46070 (WebCore::VoidCallbacks::create): Added. 46071 * fileapi/FileSystemCallbacks.h: 46072 * fileapi/LocalFileSystem.cpp: 46073 (WebCore::openFileSystem): 46074 (WebCore::LocalFileSystem::requestFileSystem): Changed to take 46075 AsyncFileSystemCallbacks as (a) callback argument(s). 46076 * fileapi/LocalFileSystem.h: 46077 * page/DOMWindow.cpp: 46078 (WebCore::DOMWindow::requestFileSystem): Made a corresponding change 46079 to LocalFileSystem::requestFileSystem. 46080 * workers/WorkerContext.cpp: 46081 (WebCore::WorkerContext::requestFileSystem): Made a corresponding change 46082 to LocalFileSystem::requestFileSystem. 46083 46084 2010-09-27 Abhishek Arya <inferno (a] chromium.org> 46085 46086 Reviewed by Dave Hyatt. 46087 46088 Fix memory safety issue during positioning list marker as a result of assuming 46089 that list item's parent can always be casted to a RenderBox. The display of the parent 46090 can be manipluated using css as Inline which causes a bad cast. 46091 46092 https://bugs.webkit.org/show_bug.cgi?id=46384 46093 46094 Test: fast/lists/parent-box-not-box-crash.html 46095 46096 * rendering/RenderListItem.cpp: 46097 (WebCore::RenderListItem::positionListMarker): 46098 * rendering/RenderListMarker.cpp: 46099 (WebCore::RenderListMarker::layout): 46100 46101 2010-09-19 Martin Robinson <mrobinson (a] igalia.com> 46102 46103 Reviewed by Gustavo Noronha Silva. 46104 46105 [GTK] Wrong font instantiated from an unknown font family 46106 https://bugs.webkit.org/show_bug.cgi?id=36548 46107 46108 When FontConfig returns a match for a particular family name, ensure that 46109 the family name matches the configured alias for the original pattern. This 46110 should prevent selecting FontConfig fallbacks in situations where the next 46111 font on the CSS fallback list should be used. This requires moving all FontConfig 46112 matching logic into FontCacheFreeType and out of FontPlatformDataFreeType. 46113 It should be there anyway. 46114 46115 Test: platform/gtk/fonts/font-family-fallback.html 46116 46117 * platform/graphics/cairo/FontCacheFreeType.cpp: 46118 (WebCore::FontCache::platformInit): Simply call FcInit here instead of 46119 deferring to FontPlatformData. 46120 (WebCore::FontCache::getLastResortFallbackFont): The last resort font should 46121 be a fallback font or else the new FontConfig logic may result in null font data 46122 if it cannot find an appropriate match. 46123 (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Added. Helper function 46124 which converts WebCore fallback names into ones that FontConfig understands. 46125 (WebCore::isFallbackFontAllowed): Added. Helper function that allows FontConfig 46126 fallbacks to be used when generic family names are specified. 46127 (WebCore::FontCache::createFontPlatformData): Move all FontConfig matching logic here 46128 and prevent against the situation where FontConfig returns a different family name 46129 than we asked for. 46130 * platform/graphics/cairo/FontCustomPlatformData.cpp: Updated FontPlatformData constructor. 46131 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Update the constructor to 46132 take the FcPattern returned and the original FontDescription. We no longer need the other 46133 arguments, because the selection is now done by FontCacheFreeType. 46134 (WebCore::FontPlatformData::FontPlatformData): Remove the FontConfig selection logic from 46135 this code. 46136 * platform/graphics/cairo/FontPlatformDataFreeType.h: Updated method definitions. 46137 * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Fixed includes. 46138 * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added a PlatformRefPtr specialization 46139 for cairo_font_face_t. 46140 (WTF::refPlatformPtr): Added. 46141 (WTF::derefPlatformPtr): Added. 46142 * platform/graphics/cairo/PlatformRefPtrCairo.h: Updated method definitons. 46143 * platform/graphics/cairo/SimpleFontDataCairo.cpp: 46144 (WebCore::SimpleFontData::smallCapsFontData): Fixed FontPlatformData constructor. 46145 46146 2010-09-27 Philippe Normand <pnormand (a] igalia.com> 46147 46148 Reviewed by Martin Robinson. 46149 46150 [GTK] Doesn't build with gtk+ 2.14 46151 https://bugs.webkit.org/show_bug.cgi?id=46565 46152 46153 Fixed the build for GTK+ 2.14 by adding backward compatible 46154 a backward-compatible function for gtk_menu_item_get_label and a 46155 utility function to create a blank mouse cursor. Those functions 46156 are used in the fullscreen video controller and in the DRT 46157 EventSender. 46158 46159 * platform/gtk/GtkVersioning.c: 46160 (gdk_window_get_root_coords): 46161 (blankCursor): 46162 (gtk_menu_item_get_label): 46163 * platform/gtk/GtkVersioning.h: 46164 46165 2010-09-23 Stephen White <senorblanco (a] chromium.org> 46166 46167 Reviewed by James Robinson. 46168 46169 [CHROMIUM] Fix for canvas clearRect() with clipping active, when 46170 --enable-accelerated-2d-canvas is on. 46171 https://bugs.webkit.org/show_bug.cgi?id=46412 46172 46173 Covered by layout test http://philip.html5.org/tests/canvas/suite/tests/2d.clearRect.clip.html. 46174 46175 * platform/graphics/skia/GraphicsContextSkia.cpp: 46176 (WebCore::GraphicsContext::clearRect): 46177 Check if a clip is active during clipRect(), and force to software 46178 if so. Force a readback in this case, since clearRect() is not 46179 compatible with mixed-mode rendering. 46180 * platform/graphics/skia/PlatformContextSkia.cpp: 46181 (WebCore::PlatformContextSkia::canvasClipApplied): 46182 * platform/graphics/skia/PlatformContextSkia.h: 46183 Implement accessor to check if a clip is active. 46184 46185 2010-09-14 Zhenyao Mo <zmo (a] google.com> 46186 46187 Reviewed by Kenneth Russell. 46188 46189 drawElements with count=0 and offset = 0 should not generate GL error or crash 46190 https://bugs.webkit.org/show_bug.cgi?id=45769 46191 46192 * html/canvas/WebGLRenderingContext.cpp: Deal with count=0 case. 46193 (WebCore::WebGLRenderingContext::validateIndexArrayConservative): 46194 (WebCore::WebGLRenderingContext::validateIndexArrayPrecise): 46195 (WebCore::WebGLRenderingContext::drawElements): 46196 46197 2010-09-16 Zhenyao Mo <zmo (a] google.com> 46198 46199 Reviewed by Kenneth Russell. 46200 46201 Fold getString into getParameter and implement new queries 46202 https://bugs.webkit.org/show_bug.cgi?id=40321 46203 46204 Test: fast/canvas/webgl/gl-getstring.html 46205 46206 * html/canvas/WebGLRenderingContext.cpp: Merge getString enums into getParameter. 46207 (WebCore::WebGLRenderingContext::getParameter): 46208 * html/canvas/WebGLRenderingContext.h: Remove getString. 46209 * html/canvas/WebGLRenderingContext.idl: Remove getString. 46210 46211 2010-09-24 Zhenyao Mo <zmo (a] google.com> 46212 46213 Reviewed by Kenneth Russell. 46214 46215 gl-teximage fails on chrome mac bot 46216 https://bugs.webkit.org/show_bug.cgi?id=45332 46217 46218 Add support for alpha first pixel formats. 46219 46220 * platform/graphics/GraphicsContext3D.cpp: 46221 (WebCore::doPacking): 46222 * platform/graphics/GraphicsContext3D.h: 46223 * platform/graphics/cg/GraphicsContext3DCG.cpp: 46224 (WebCore::GraphicsContext3D::getImageData): 46225 46226 2010-09-17 Yury Semikhatsky <yurys (a] chromium.org> 46227 46228 Reviewed by Pavel Feldman. 46229 46230 Web Inspector: implement go-to-line feature 46231 https://bugs.webkit.org/show_bug.cgi?id=45166 46232 46233 * English.lproj/localizedStrings.js: 46234 * inspector/front-end/GoToLineDialog.js: Added. 46235 (WebInspector.GoToLineDialog): 46236 (WebInspector.GoToLineDialog.show): 46237 (WebInspector.GoToLineDialog.prototype._hide): 46238 (WebInspector.GoToLineDialog.prototype._onKeyDown): 46239 (WebInspector.GoToLineDialog.prototype._onBlur): 46240 * inspector/front-end/ScriptsPanel.js: 46241 (WebInspector.ScriptsPanel.prototype._registerShortcuts): 46242 (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult): 46243 (WebInspector.ScriptsPanel.prototype.showGoToLineDialog): 46244 * inspector/front-end/goToLineDialog.css: Added. 46245 (.go-to-line-dialog): 46246 * inspector/front-end/inspector.html: 46247 46248 2010-09-24 Pavel Podivilov <podivilov (a] chromium.org> 46249 46250 Reviewed by Pavel Feldman. 46251 46252 Web Inspector: add XHR breakpoints sidebar pane to front-end 46253 https://bugs.webkit.org/show_bug.cgi?id=46483 46254 46255 * English.lproj/localizedStrings.js: 46256 * WebCore.gypi: 46257 * inspector/InspectorController.cpp: 46258 (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl): 46259 * inspector/InspectorTimelineAgent.h: 46260 * inspector/front-end/BreakpointManager.js: 46261 (WebInspector.BreakpointManager): 46262 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): 46263 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint): 46264 (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved): 46265 (WebInspector.Breakpoint.prototype.compareTo): 46266 (WebInspector.XHRBreakpoint): 46267 (WebInspector.XHRBreakpoint.prototype.get enabled): 46268 (WebInspector.XHRBreakpoint.prototype.set enabled): 46269 (WebInspector.XHRBreakpoint.prototype.get url): 46270 (WebInspector.XHRBreakpoint.prototype.formatLabel): 46271 (WebInspector.XHRBreakpoint.prototype.compareTo): 46272 (WebInspector.XHRBreakpoint.prototype.remove): 46273 (WebInspector.XHRBreakpoint.prototype._setOnBackend.didSet): 46274 (WebInspector.XHRBreakpoint.prototype._setOnBackend): 46275 (WebInspector.XHRBreakpoint.prototype._removeFromBackend): 46276 * inspector/front-end/BreakpointsSidebarPane.js: 46277 (WebInspector.XHRBreakpointsSidebarPane): 46278 (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog): 46279 (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog): 46280 (WebInspector.BreakpointItem.prototype.compareTo): 46281 (WebInspector.BreakpointItem.prototype._checkboxClicked): 46282 (WebInspector.BreakpointItem.prototype._enableChanged): 46283 (WebInspector.BreakpointItem.prototype._breakpointClicked): 46284 (WebInspector.XHRBreakpointItem): 46285 * inspector/front-end/CallStackSidebarPane.js: 46286 (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s): 46287 (WebInspector.CallStackSidebarPane.prototype.updateStatus.append): 46288 (WebInspector.CallStackSidebarPane.prototype.updateStatus): 46289 * inspector/front-end/DOMAgent.js: 46290 (WebInspector.DOMBreakpoint.prototype.compareTo): 46291 * inspector/front-end/Images/paneAddButtons.png: Added. 46292 * inspector/front-end/ScriptsPanel.js: 46293 (WebInspector.ScriptsPanel): 46294 (WebInspector.ScriptsPanel.prototype.reset): 46295 * inspector/front-end/WebKit.qrc: 46296 * inspector/front-end/inspector.css: 46297 (.pane > .title > button.add): 46298 (.pane > .title > button.add:hover): 46299 (.pane > .title > button.add:active): 46300 (.pane > .body .breakpoint-condition): 46301 * inspector/front-end/inspector.js: 46302 (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded): 46303 (WebInspector.createXHRBreakpointsSidebarPane): 46304 46305 2010-09-27 Pavel Feldman <pfeldman (a] chromium.org> 46306 46307 Reviewed by Timothy Hatcher. 46308 46309 Web Inspector: Merge AbstractTimelinePanel into ResourcesPanel. 46310 https://bugs.webkit.org/show_bug.cgi?id=46612 46311 46312 I am refactoring resources panel and would like to merge abstract 46313 one back in since it is not use anywhere else. 46314 46315 * WebCore.gypi: 46316 * WebCore.vcproj/WebCore.vcproj: 46317 * inspector/front-end/AbstractTimelinePanel.js: Removed. 46318 * inspector/front-end/ResourceCategory.js: 46319 (WebInspector.ResourceCategory): 46320 (WebInspector.ResourceCategory.prototype.toString): 46321 * inspector/front-end/ResourcesPanel.js: 46322 (WebInspector.ResourcesPanel): 46323 (WebInspector.ResourcesPanel.prototype.get items): 46324 (WebInspector.ResourcesPanel.prototype.createInterface): 46325 (WebInspector.ResourcesPanel.prototype.createFilterPanel.createFilterElement): 46326 (WebInspector.ResourcesPanel.prototype.createFilterPanel): 46327 (WebInspector.ResourcesPanel.prototype.showCategory): 46328 (WebInspector.ResourcesPanel.prototype.hideCategory): 46329 (WebInspector.ResourcesPanel.prototype.filter): 46330 (WebInspector.ResourcesPanel.prototype._updateFilter): 46331 (WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition): 46332 (WebInspector.ResourcesPanel.prototype.get needsRefresh): 46333 (WebInspector.ResourcesPanel.prototype.set needsRefresh): 46334 (WebInspector.ResourcesPanel.prototype.refreshIfNeeded): 46335 (WebInspector.ResourcesPanel.prototype.resize): 46336 (WebInspector.ResourcesPanel.prototype.invalidateAllItems): 46337 (WebInspector.ResourcesPanel.prototype.get calculator): 46338 (WebInspector.ResourcesPanel.prototype.set calculator): 46339 (WebInspector.ResourcesPanel.prototype.addItem): 46340 (WebInspector.ResourcesPanel.prototype.removeItem): 46341 (WebInspector.ResourcesPanel.prototype.refreshItem): 46342 (WebInspector.ResourcesPanel.prototype.revealAndSelectItem): 46343 (WebInspector.ResourcesPanel.prototype.sortItems): 46344 (WebInspector.ResourcesPanel.prototype.adjustScrollPosition): 46345 (WebInspector.ResourcesPanel.prototype.addEventDivider): 46346 (WebInspector.ResourcesPanel.prototype.hideEventDividers): 46347 (WebInspector.ResourcesPanel.prototype.showEventDividers): 46348 (WebInspector.ResourcesPanel.prototype.show): 46349 (WebInspector.ResourcesPanel.prototype.refresh): 46350 (WebInspector.ResourcesPanel.prototype.reset): 46351 (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded): 46352 (WebInspector.ResourcesPanel.prototype.updateMainViewWidth): 46353 (WebInspector.ResourceBaseCalculator): 46354 (WebInspector.ResourceBaseCalculator.prototype.computeSummaryValues): 46355 (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphPercentages): 46356 (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphLabels): 46357 (WebInspector.ResourceBaseCalculator.prototype.get boundarySpan): 46358 (WebInspector.ResourceBaseCalculator.prototype.updateBoundaries): 46359 (WebInspector.ResourceBaseCalculator.prototype.reset): 46360 (WebInspector.ResourceBaseCalculator.prototype._value): 46361 (WebInspector.ResourceBaseCalculator.prototype.formatValue): 46362 (WebInspector.ResourceTimeCalculator): 46363 (WebInspector.ResourceTransferSizeCalculator): 46364 * inspector/front-end/WebKit.qrc: 46365 * inspector/front-end/inspector.html: 46366 46367 2010-09-27 Ragner Magalhaes <ragner.magalhaes (a] openbossa.org> 46368 46369 Reviewed by Kenneth Rohde Christiansen. 46370 46371 [Qt] New input style for Qt Mobile theme 46372 https://bugs.webkit.org/show_bug.cgi?id=46461 46373 46374 Rename themeQtMaemo5.css to themeQtMobile.css since it is the theme for all Qt mobile platform. 46375 Adjust new input style. 46376 46377 * WebCore.pri: 46378 * css/themeQtMobile.css: Renamed from css/themeQtMaemo5.css 46379 (select): 46380 (select:disabled): 46381 (select:active): 46382 (select:active:disabled): 46383 (textarea): 46384 (textarea:disabled): 46385 (textarea:active): 46386 * platform/qt/RenderThemeQt.cpp: 46387 (WebCore::RenderThemeQt::extraDefaultStyleSheet): Renamed themeQtMaemo5UserAgentStyleSheet to themeQtMobileUserAgentStyleSheet to match renamed file. 46388 46389 2010-09-27 Girish Ramakrishnan <girish (a] forwardbias.in> 46390 46391 Reviewed by Antonio Gomes. 46392 46393 [Qt] Enable local rendering of NPAPI plugins on Maemo6. 46394 46395 https://bugs.webkit.org/show_bug.cgi?id=46618 46396 46397 * WebCore.pro: 46398 * bridge/npapi.h: 46399 * plugins/PluginView.cpp: 46400 (WebCore::PluginView::setValue): 46401 (WebCore::PluginView::PluginView): 46402 * plugins/PluginView.h: 46403 * plugins/qt/PluginViewQt.cpp: 46404 (WebCore::PluginView::updatePluginWidget): 46405 (WebCore::PluginView::paint): 46406 (WebCore::PluginView::platformGetValueStatic): 46407 46408 2010-09-27 Ilya Tikhonovsky <loislo (a] chromium.org> 46409 46410 Reviewed by Pavel Feldman. 46411 46412 Web Inspector: divide InspectorTimelineAgent into two parts. 46413 46414 We have an idea to split InspectorTimelineAgent into two parts. 46415 The first part is an instrumentation API which can be used for DOM breakpoints too. 46416 The other is the real Timeline agent which do a transformation of raw data into timeline data. 46417 46418 https://bugs.webkit.org/show_bug.cgi?id=46611 46419 46420 * inspector/InspectorTimelineAgent.cpp: 46421 (WebCore::InspectorTimelineAgent2::TimelineRecordEntry::TimelineRecordEntry): 46422 (WebCore::InspectorTimelineAgent2::GCEvent::GCEvent): 46423 (WebCore::InspectorTimelineAgent2::InspectorTimelineAgent2): 46424 (WebCore::InspectorTimelineAgent2::~InspectorTimelineAgent2): 46425 (WebCore::InspectorTimelineAgent2::didGC): 46426 (WebCore::InspectorTimelineAgent2::addRecordToTimeline): 46427 (WebCore::InspectorTimelineAgent2::setHeapSizeStatistic): 46428 (WebCore::InspectorTimelineAgent2::startNewRecord): 46429 (WebCore::InspectorTimelineAgent2::completeCurrentRecord): 46430 (WebCore::InspectorTimelineAgent2::asyncRecord): 46431 (WebCore::InspectorTimelineAgent2::atomicRecord): 46432 (WebCore::InspectorTimelineAgent2::getTopRecordData): 46433 (WebCore::InspectorTimelineAgent2::reset): 46434 (WebCore::InspectorTimelineAgent2::resetFrontendProxyObject): 46435 (WebCore::InspectorTimelineAgent2::pushGCEventRecords): 46436 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 46437 (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent): 46438 (WebCore::InspectorTimelineAgent::reset): 46439 (WebCore::InspectorTimelineAgent::willCallFunction): 46440 (WebCore::InspectorTimelineAgent::didCallFunction): 46441 (WebCore::InspectorTimelineAgent::willDispatchEvent): 46442 (WebCore::InspectorTimelineAgent::didDispatchEvent): 46443 (WebCore::InspectorTimelineAgent::willLayout): 46444 (WebCore::InspectorTimelineAgent::didLayout): 46445 (WebCore::InspectorTimelineAgent::willRecalculateStyle): 46446 (WebCore::InspectorTimelineAgent::didRecalculateStyle): 46447 (WebCore::InspectorTimelineAgent::willPaint): 46448 (WebCore::InspectorTimelineAgent::didPaint): 46449 (WebCore::InspectorTimelineAgent::willWriteHTML): 46450 (WebCore::InspectorTimelineAgent::didWriteHTML): 46451 (WebCore::InspectorTimelineAgent::didInstallTimer): 46452 (WebCore::InspectorTimelineAgent::didRemoveTimer): 46453 (WebCore::InspectorTimelineAgent::willFireTimer): 46454 (WebCore::InspectorTimelineAgent::didFireTimer): 46455 (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): 46456 (WebCore::InspectorTimelineAgent::didChangeXHRReadyState): 46457 (WebCore::InspectorTimelineAgent::willLoadXHR): 46458 (WebCore::InspectorTimelineAgent::didLoadXHR): 46459 (WebCore::InspectorTimelineAgent::willEvaluateScript): 46460 (WebCore::InspectorTimelineAgent::didEvaluateScript): 46461 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): 46462 (WebCore::InspectorTimelineAgent::willSendResourceRequest): 46463 (WebCore::InspectorTimelineAgent::willReceiveResourceData): 46464 (WebCore::InspectorTimelineAgent::didReceiveResourceData): 46465 (WebCore::InspectorTimelineAgent::willReceiveResourceResponse): 46466 (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): 46467 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 46468 (WebCore::InspectorTimelineAgent::didMarkTimeline): 46469 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): 46470 (WebCore::InspectorTimelineAgent::didMarkLoadEvent): 46471 (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): 46472 * inspector/InspectorTimelineAgent.h: 46473 46474 2010-09-27 Alexander Pavlov <apavlov (a] chromium.org> 46475 46476 Reviewed by Sam Weinig. 46477 46478 Implement CSSStyleRule::setSelectorText() 46479 46480 This involves removing the "selectorText" "setter raises(DOMException)" clause from the IDL files, 46481 since the setter no longer raises the exception, as per http://dev.w3.org/csswg/cssom/#dom-cssstylerule-selectortext 46482 https://bugs.webkit.org/show_bug.cgi?id=46487 46483 46484 Test: fast/css/css-set-selector-text.html 46485 46486 * css/CSSPageRule.idl: 46487 * css/CSSStyleRule.cpp: 46488 (WebCore::CSSStyleRule::setSelectorText): 46489 * css/CSSStyleRule.h: 46490 * css/CSSStyleRule.idl: 46491 46492 2010-09-27 Zoltan Herczeg <zherczeg (a] webkit.org> 46493 46494 Reviewed by Dirk Schulze. 46495 46496 Filter builder should be able to follow the filter object dependencies 46497 https://bugs.webkit.org/show_bug.cgi?id=45812 46498 46499 To propagate the changes of a primitive object, a data structure 46500 is needed which stores the dependent primitive objects. (Those 46501 who use the resulting image.) This data structure is implemented 46502 as a hash map, which contains primitive object and set of primitive 46503 objects <key,value> pairs. The hash map is able to follow the 46504 dynamic topology changes. 46505 46506 * rendering/RenderSVGResourceFilter.cpp: 46507 (WebCore::RenderSVGResourceFilter::buildPrimitives): 46508 * rendering/RenderSVGResourceFilterPrimitive.h: 46509 (WebCore::RenderSVGResourceFilterPrimitive::renderName): 46510 (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive): 46511 * svg/graphics/filters/SVGFilterBuilder.cpp: 46512 (WebCore::SVGFilterBuilder::SVGFilterBuilder): 46513 (WebCore::SVGFilterBuilder::appendEffectToEffectReferences): 46514 (WebCore::SVGFilterBuilder::clearEffects): 46515 * svg/graphics/filters/SVGFilterBuilder.h: 46516 (WebCore::SVGFilterBuilder::getEffectReferences): 46517 (WebCore::SVGFilterBuilder::addBuiltinEffects): 46518 46519 2010-09-27 Andreas Kling <andreas.kling (a] nokia.com> 46520 46521 Rubber-stamped by Kenneth Rohde Christiansen. 46522 46523 [Qt] 32-bit Flash crashes on repeated SetWindow calls 46524 https://bugs.webkit.org/show_bug.cgi?id=46616 46525 46526 Re-enable PluginQuirkDontCallSetWindowMoreThanOnce for Qt on x86 Unix. 46527 46528 We incorrectly thought this was fixed in Flash 10, but it turns out it 46529 was just never broken on 64-bit. 46530 46531 * plugins/PluginPackage.cpp: 46532 (WebCore::PluginPackage::determineQuirks): 46533 46534 2010-09-27 smail Dnmez <ismail (a] namtrac.org> 46535 46536 Reviewed by Andreas Kling. 46537 46538 Add PluginView::setJavaScriptPaused(bool) stub for WinCE. 46539 46540 * platform/qt/TemporaryLinkStubsQt.cpp: 46541 (PluginView::setJavaScriptPaused): 46542 46543 2010-09-27 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 46544 46545 Reviewed by Dirk Schulze. 46546 46547 Bug 46607 - [WML] Fix a build break when WML is enabled 46548 46549 Fix a build break when WML is enabled. 46550 46551 * wml/WMLElement.cpp: Include HTMLParserIdioms.h 46552 (WebCore::WMLElement::parseMappedAttribute): Add additional parameter to invoke parseHTMLInteger() function. 46553 46554 2010-09-26 Patrick Gansterer <paroga (a] webkit.org> 46555 46556 Reviewed by Adam Barth. 46557 46558 Remove dead code and fix header includes in ResourceHandleWin 46559 https://bugs.webkit.org/show_bug.cgi?id=46479 46560 46561 Also add missing member varibale from r68167. 46562 46563 * platform/network/ResourceHandle.h: 46564 * platform/network/ResourceHandleInternal.h: 46565 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 46566 * platform/network/win/ResourceHandleWin.cpp: 46567 (WebCore::ResourceHandleInternal::~ResourceHandleInternal): 46568 (WebCore::ResourceHandle::~ResourceHandle): 46569 (WebCore::ResourceHandle::onRequestComplete): 46570 * platform/network/win/ResourceHandleWin.h: Removed. 46571 46572 2010-09-26 Patrick Gansterer <paroga (a] webkit.org> 46573 46574 Reviewed by Adam Barth. 46575 46576 Add WTF::StringHasher::createBlobHash 46577 https://bugs.webkit.org/show_bug.cgi?id=46514 46578 46579 Add this function for hashing FormElementKey and QualifiedNameComponents. 46580 46581 * dom/Document.cpp: 46582 (WebCore::FormElementKeyHash::hash): 46583 * dom/QualifiedName.h: 46584 (WebCore::hashComponents): 46585 (WebCore::QualifiedNameHash::hash): 46586 46587 2010-09-26 David Hyatt <hyatt (a] apple.com> 46588 46589 Reviewed by Sam Weinig. 46590 46591 https://bugs.webkit.org/show_bug.cgi?id=46519 46592 46593 Convert the implementation of computeLogicalWidth to work with block-flow. 46594 46595 * rendering/RenderBlock.cpp: 46596 (WebCore::RenderBlock::determineHorizontalPosition): 46597 Patched to call the new computeMarginsInContainingBlockInlineDirection. Eventually determineHorizontalPosition will 46598 be placing children along the inline direction of the containing block, and those children may have mismatched 46599 block flows. The new computeMarginsInContainingBlockInlineDirection function is designed to handle that. 46600 46601 * rendering/RenderBox.cpp: 46602 (WebCore::RenderBox::marginStart): 46603 (WebCore::RenderBox::marginStartUsing): 46604 (WebCore::RenderBox::marginEnd): 46605 (WebCore::RenderBox::marginEndUsing): 46606 (WebCore::RenderBox::setMarginStart): 46607 (WebCore::RenderBox::setMarginEnd): 46608 (WebCore::RenderBox::setMarginStartUsing): 46609 (WebCore::RenderBox::setMarginEndUsing): 46610 Helpers that allow for marginStart/End access and that also allow for marginStart/End to be computed based off another 46611 element's block-flow and direction (typically the containing block). 46612 46613 (WebCore::RenderBox::computeBorderBoxLogicalWidth): 46614 (WebCore::RenderBox::computeBorderBoxLogicalHeight): 46615 (WebCore::RenderBox::computeContentBoxLogicalWidth): 46616 (WebCore::RenderBox::computeContentBoxLogicalHeight): 46617 Patched to use logical border/padding widths and heights. 46618 46619 (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight): 46620 A function for returning the available logical height of a perpendicular containing block. If a child has vertical 46621 text for example and its block-flow is "lr", its available logical width is determined by the logical 46622 height of the containing block when that containing block is perpendicular, e.g. "tb". 46623 46624 (WebCore::RenderBox::computeLogicalWidth): 46625 (WebCore::RenderBox::computeLogicalWidthUsing): 46626 Patched to be block-flow-aware and to use logical width values everywhere. 46627 46628 (WebCore::RenderBox::sizesToIntrinsicLogicalWidth): 46629 Patched to use logical widths. 46630 46631 (WebCore::RenderBox::computeMarginsInContainingBlockInlineDirection): 46632 A new function that is directionally abstract and that can handle the computation of margins in the containing 46633 block's inline direction. This function is written such that a perpendicular child block flow can still be 46634 pushed to the center, left or right in the containing block's inline direction. 46635 46636 (WebCore::RenderBox::computePositionedLogicalWidth): 46637 This function is still largely unpatched. A future patch will address positioend elements. 46638 46639 * rendering/RenderBox.h: 46640 (WebCore::RenderBox::stretchesToMinIntrinsicLogicalWidth): 46641 * rendering/RenderFieldset.h: 46642 (WebCore::RenderFieldset::stretchesToMinIntrinsicLogicalWidth): 46643 Renames. 46644 46645 * rendering/RenderTable.cpp: 46646 (WebCore::RenderTable::computeLogicalWidth): 46647 Renames, but not converted yet. Tables will happen in a future patch. 46648 46649 * rendering/style/RenderStyle.cpp: 46650 (WebCore::RenderStyle::marginStartUsing): 46651 (WebCore::RenderStyle::marginEndUsing): 46652 * rendering/style/RenderStyle.h: 46653 Added helpers for accessing marginStart and End using another style's direction and block flow (typically will 46654 be the containing block's). 46655 46656 fast/block/basic/016.html changed, since centering now always awards the extra pixel for odd widths to the end margin 46657 instead of the right margin. This is a progression. 46658 46659 fast/css/logical-property-values.html is now reporting garbage results, which is expected now that some of the core layout 46660 functions have been patched. 46661 46662 Horizontal block flows are untestable still, since the normal layout process incorrectly blows away any computed height values. 46663 46664 2010-09-26 Antonio Gomes <agomes (a] rim.comg> 46665 46666 Reviewed by Kenneth Rohde Christiansen. 46667 46668 DRT/Mac nodesFromRect support 46669 46670 [Mac][DRT] Implement LayoutTestController::nodesFromRect 46671 https://bugs.webkit.org/show_bug.cgi?id=46580 46672 46673 Symbol files updated. 46674 46675 * WebCore.exp.in: Added symbols to Document::nodesFromRect and bits of JSDocument now 46676 needed in WebKit/mac. 46677 * WebCore.xcodeproj/project.pbxproj: Set both JSDocument.h and JSNodeList as private headers 46678 now that they are referred in WebKit/mac. 46679 46680 2010-09-26 Adam Barth <abarth (a] webkit.org> 46681 46682 Reviewed by Dimitri Glazkov. 46683 46684 Implement location.origin and HTMLAnchorElement.origin 46685 https://bugs.webkit.org/show_bug.cgi?id=46558 46686 46687 These attributes are part of my proposed URL API: 46688 https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en 46689 46690 Hixie thought we should implement as much of this API as makes sense on 46691 Location and HTMLAnchorElement as well. I'm starting with the origin 46692 attribute, because that seems like the biggest bang for the buck. 46693 46694 Tests: fast/dom/anchor-origin.html 46695 http/tests/misc/location-origin.html 46696 46697 * WebCore.xcodeproj/project.pbxproj: 46698 * html/HTMLAnchorElement.cpp: 46699 (WebCore::HTMLAnchorElement::origin): 46700 * html/HTMLAnchorElement.h: 46701 * html/HTMLAnchorElement.idl: 46702 * page/Location.cpp: 46703 (WebCore::Location::origin): 46704 * page/Location.h: 46705 * page/Location.idl: 46706 46707 2010-09-26 Sheriff Bot <webkit.review.bot (a] gmail.com> 46708 46709 Unreviewed, rolling out r68343. 46710 http://trac.webkit.org/changeset/68343 46711 https://bugs.webkit.org/show_bug.cgi?id=46581 46712 46713 broke GTK+ (Requested by kling on #webkit). 46714 46715 * html/canvas/CanvasRenderingContext2D.cpp: 46716 (WebCore::CanvasRenderingContext2D::setFont): 46717 46718 2010-09-25 Antonio Gomes <agomes (a] rim.com> 46719 46720 Reviewed by Kenneth Christiansen and Andreas Kling. 46721 46722 document.nodesFromRect() needs to be removed from Document.idl 46723 https://bugs.webkit.org/show_bug.cgi?id=46492 46724 46725 As discussed with Sam Weinig on IRC, it was decided to removed 46726 nodesFromRect() from the Document.idl, and that way, not exposing 46727 it to Web content. 46728 46729 Reason: there is no plan to make it standard at the moment, and at the 46730 very least, the method should had been originally added with the "webkit" 46731 prefix, which was not the case. 46732 46733 * dom/Document.idl: 46734 46735 2010-09-26 Renata Hodovan <reni (a] inf.u-szeged.hu> 46736 46737 Reviewed by Dirk Schulze. 46738 46739 SVGFEBlendElement doesn't support dynamic invalidation, when attributes change. 46740 https://bugs.webkit.org/show_bug.cgi?id=46464 46741 46742 Tests: svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html 46743 svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html 46744 svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html 46745 svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html 46746 svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html 46747 svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html 46748 46749 * svg/SVGFEBlendElement.cpp: 46750 (WebCore::SVGFEBlendElement::svgAttributeChanged): 46751 * svg/SVGFEBlendElement.h: 46752 46753 2010-09-26 Andreas Kling <andreas.kling (a] nokia.com> 46754 46755 Reviewed by Dan Bernstein. 46756 46757 Canvas: Crash when setting a font with size in 'ex' units 46758 https://bugs.webkit.org/show_bug.cgi?id=46538 46759 46760 update() the style's font after setting the style's font description. 46761 Needed because CSSPrimitiveValue::computeLengthDouble() later assumes 46762 that the style's font is properly initialized (for xHeight().) 46763 46764 Fixes crash on IE test center's canvas-text-font-002 test. 46765 46766 * html/canvas/CanvasRenderingContext2D.cpp: 46767 (WebCore::CanvasRenderingContext2D::setFont): 46768 46769 2010-09-26 Kwang Yul Seo <skyul (a] company100.net> 46770 46771 Reviewed by Eric Seidel. 46772 46773 [BREWMP] Don't pass PassOwnPtr in makeAllDirectories 46774 https://bugs.webkit.org/show_bug.cgi?id=42058 46775 46776 Change makeAllDirectories to take a raw FileMgr pointer 46777 because it is not safe to pass PassOwnPtr recursively. 46778 46779 * platform/brew/FileSystemBrew.cpp: 46780 (WebCore::makeAllDirectories): 46781 46782 2010-09-26 Robert Hogan <robert (a] webkit.org> 46783 46784 Reviewed by Andreas Kling. 46785 46786 [Qt] fix http/tests/uri/escaped-entity.html 46787 46788 Replace invalid encodings with the appropriate escaped entity. 46789 46790 See also http://bugreports.qt.nokia.com/browse/QTBUG-13412 46791 46792 https://bugs.webkit.org/show_bug.cgi?id=45245 46793 46794 * platform/text/qt/TextCodecQt.cpp: 46795 (WebCore::TextCodecQt::encode): 46796 46797 2010-09-25 Abhishek Arya <inferno (a] chromium.org> 46798 46799 Reviewed by Nikolas Zimmermann. 46800 46801 Fix the macro to bail out after setting the SVG style to 'initial'. Check that color is 46802 SVGColor before calling colorFromSVGColorCSSValue which makes sure we don't set invalid 46803 color. Also, doing the static cast in the caller and keeping the function 46804 colorFromSVGColorCSSValue clean to accept only take SVGColor objects. 46805 46806 https://bugs.webkit.org/show_bug.cgi?id=46471 46807 46808 Test: svg/css/invalid-color-crash.svg 46809 46810 * css/SVGCSSStyleSelector.cpp: 46811 (WebCore::colorFromSVGColorCSSValue): 46812 (WebCore::CSSStyleSelector::applySVGProperty): 46813 46814 2010-09-25 Ryosuke Niwa <rniwa (a] webkit.org> 46815 46816 Reviewed by Tony Chang. 46817 46818 FormatBlockCommand's modifyRange and doApply should be merged 46819 https://bugs.webkit.org/show_bug.cgi?id=46504 46820 46821 Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph. 46822 Merged the code in modifyRange into doApply and cleaned up. 46823 46824 No new tests are added since this is a cleanup. 46825 46826 * editing/FormatBlockCommand.cpp: 46827 (WebCore::FormatBlockCommand::doApply): Merged with modifyRange; calls doApplyForSingleParagraph. 46828 (WebCore::FormatBlockCommand::doApplyForSingleParagraph): Added. 46829 * editing/FormatBlockCommand.h: 46830 46831 2010-09-25 Dan Bernstein <mitz (a] apple.com> 46832 46833 Reviewed by John Sullivan. 46834 46835 <rdar://problem/8478160> Null deref in InlineBox::height() 46836 https://bugs.webkit.org/show_bug.cgi?id=45344 46837 46838 Test: fast/css/first-line-parent-style-different.html 46839 46840 * rendering/RenderObject.cpp: 46841 (WebCore::RenderObject::firstLineStyleSlowCase): Set the pseudo style bit on the RenderStyle 46842 which is going to supply the first-line style rather than on this objects RenderStyle. The 46843 styles may differ. 46844 46845 2010-09-25 Dan Bernstein <mitz (a] apple.com> 46846 46847 Reviewed by John Sullivan. 46848 46849 <rdar://problem/8478182> Make canHyphenate() return false for unsupported locales 46850 46851 No change in functionality, hence no new test. 46852 46853 * platform/text/cf/HyphenationCF.cpp: 46854 (WebCore::::createValueForKey): Return 0 if hyphenation is not available for the locale. 46855 (WebCore::cfLocaleCache): Moved the definition of the cache from lastHyphenLocation() to 46856 this new getter to allow canHyphenate() to share it. 46857 (WebCore::canHyphenate): Now returns true only if hyphenation is available. 46858 (WebCore::lastHyphenLocation): Added an assertion. 46859 46860 2010-09-25 Andreas Kling <andreas.kling (a] nokia.com> 46861 46862 Reviewed by Kenneth Rohde Christiansen. 46863 46864 [Qt] GraphicsContext::setLineDash() should scale dashOffset to penWidth 46865 https://bugs.webkit.org/show_bug.cgi?id=46548 46866 46867 Fixes incorrect rendering of <http://www.carto.net/svg/samples/animated_bustrack.shtml> 46868 46869 This is covered by existing layout tests which need to be rebaselined. 46870 46871 * platform/graphics/qt/GraphicsContextQt.cpp: 46872 (WebCore::GraphicsContext::setLineDash): 46873 46874 2010-09-24 Sam Weinig <sam (a] webkit.org> 46875 46876 Rubber-stamped by Dan Bernstein. 46877 46878 Fix accidental increase in the size of InlineBox by using a bit 46879 field to indicate that a bool should only take up 1 bit. 46880 46881 * rendering/InlineBox.h: 46882 46883 2010-09-24 Simon Fraser <simon.fraser (a] apple.com> 46884 46885 Reviewed by Sam Weinig. 46886 46887 Accelerated transitions do not suspend/resume properly. 46888 https://bugs.webkit.org/show_bug.cgi?id=43792 46889 46890 (1) Fix regression from r68233, where if an animation affected two 46891 properties, only one would animate. The testcase tests this. 46892 46893 (2) Fix a flash at the end of an animation or transition that has been 46894 paused and resumed. The flash occurred because we used CAAnimation's 46895 timeOffset when resuming to push the start of the animation into 46896 the past. However, timeOffset does not play nicely with fill modes, 46897 causing a single frame of animation with the element in its unanimated state. 46898 46899 Fixed this by offsetting the beginTime into the past, rather than setting 46900 timeOffset. Normally we submit animations with beginTime == 0, and rely 46901 on CA assigning a beginTime when the animation is committed. This beginTime 46902 is then passed to AnimationController to sync hardware and software animations. 46903 However, since the code now assigns beginTimes in the past (on resume), 46904 we now have to denote whether we've done this, and send an appropriate 46905 timestamp back to AnimationController. 46906 46907 (3) Finally, the patch removes PropertyAnimationPair and just uses LayerPropertyAnimation 46908 instead. This is just cleanup. 46909 46910 Test: animations/opacity-transform-animation.html 46911 46912 * platform/graphics/mac/GraphicsLayerCA.h: Remove PropertyAnimationPair, 46913 and change AnimationsMap to store a vector of LayerPropertyAnimation. 46914 New method, animationDidStart(), is called from the -animationDidStart: callback. 46915 46916 * platform/graphics/mac/GraphicsLayerCA.mm: 46917 (-[WebAnimationDelegate animationDidStart:]): Just call m_graphicsLayer->animationDidStart() 46918 now. 46919 (WebCore::animationIdentifier): We need to pass in the property, to fix (1) 46920 (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): Copy the WebKitAnimationBeginTimeSet 46921 value, if present. 46922 (WebCore::GraphicsLayerCA::animationDidStart): Call notifyAnimationStarted() on the client, 46923 after testing if we set a non-zero beginTime on this particular animation. 46924 (WebCore::GraphicsLayerCA::updateLayerAnimations): Change to use LayerPropertyAnimation. 46925 (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): Set value for WebKitAnimationBeginTimeSetKey 46926 if we have a non-zero timeOffset. Make animationID an NSString, to avoid several conversions. 46927 (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): Make animationID an NSString, to 46928 avoid several conversions. 46929 (WebCore::copyAnimationProperties): Copy WebKitAnimationBeginTimeSetKey if present. 46930 (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): Make animationID an NSString, to avoid 46931 several conversions. 46932 46933 2010-09-24 Andreas Kling <andreas.kling (a] nokia.com> 46934 46935 Reviewed by Kenneth Rohde Christiansen. 46936 46937 SVG: Avoid calling pow() in genericParseNumber() unless necessary 46938 https://bugs.webkit.org/show_bug.cgi?id=46537 46939 46940 0.4% speedup on <http://themaninblue.com/experiment/AnimationBenchmark/svg/> 46941 46942 * svg/SVGParserUtilities.cpp: 46943 (WebCore::genericParseNumber): Only call pow() when we have an exponent. 46944 46945 2010-09-24 Martin Robinson <mrobinson (a] igalia.com> 46946 46947 Reviewed by Gustavo Noronha Silva. 46948 46949 [GTK] opening local files on win32 46950 https://bugs.webkit.org/show_bug.cgi?id=31066 46951 46952 This is tested by changes to the testmimehandling API test. 46953 46954 * platform/network/soup/ResourceHandleSoup.cpp: Properly convert the GContentType 46955 of a file into a mime type. This is important for non-Unix platforms. 46956 46957 2010-09-24 Pawel Hajdan <phajdan.jr (a] chromium.org> 46958 46959 Reviewed by Dumitru Daniliuc. 46960 46961 Move the implementation of chromium_vfs to webkit for POSIX. 46962 This allows us to link Chrome with system-provided SQLite on Linux. 46963 See also http://code.google.com/p/chromium/issues/detail?id=22208. 46964 https://bugs.webkit.org/show_bug.cgi?id=45416 46965 46966 No new tests. 46967 46968 * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: 46969 (sqliteErrorFromPosixError): 46970 (releaseLockInfo): 46971 (releaseOpenInfo): 46972 (findLockInfo): 46973 (chromiumCheckReservedLock): 46974 (rangeLock): 46975 (chromiumLock): 46976 (closePendingFds): 46977 (chromiumUnlock): 46978 (chromiumCloseNoLock): 46979 (chromiumClose): 46980 (chromiumCheckReservedLockNoop): 46981 (chromiumLockNoop): 46982 (chromiumUnlockNoop): 46983 (seekAndRead): 46984 (chromiumRead): 46985 (seekAndWrite): 46986 (chromiumWrite): 46987 (syncWrapper): 46988 (chromiumSync): 46989 (chromiumTruncate): 46990 (chromiumFileSize): 46991 (chromiumFileControl): 46992 (chromiumSectorSize): 46993 (chromiumDeviceCharacteristics): 46994 (fillInChromiumFile): 46995 (findReusableFd): 46996 (chromiumOpen): 46997 (chromiumDelete): 46998 (chromiumAccess): 46999 (chromiumFullPathname): 47000 (chromiumDlOpen): 47001 (chromiumDlError): 47002 (chromiumDlSym): 47003 (chromiumDlClose): 47004 (chromiumRandomness): 47005 (chromiumSleep): 47006 (chromiumCurrentTime): 47007 (chromiumGetLastError): 47008 (WebCore::SQLiteFileSystem::registerSQLiteVFS): 47009 47010 2010-09-24 Andreas Kling <andreas.kling (a] nokia.com> 47011 47012 Reviewed by Dirk Schulze. 47013 47014 SVG: Make SVGLength's stringToLengthType() stricter and faster 47015 https://bugs.webkit.org/show_bug.cgi?id=46066 47016 47017 Only accept unit names immediately following the numeric value. 47018 This behavior matches Gecko. 47019 47020 Also, using String::endsWith("foo") caused a temporary WTF::String to be created. 47021 Avoid this by comparing characters directly. 47022 47023 10.5% speedup on <http://data.xeoh.net/svg.benchmark/> 47024 47025 Test: svg/custom/invalid-length-units.html 47026 47027 * svg/SVGLength.cpp: 47028 (WebCore::stringToLengthType): 47029 (WebCore::SVGLength::setValueAsString): 47030 47031 2010-09-24 Luiz Agostini <luiz.agostini (a] openbossa.org> 47032 Reviewed by Kenneth Rohde Christiansen. 47033 47034 Keep viewport information in Document 47035 https://bugs.webkit.org/show_bug.cgi?id=46385 47036 47037 The viewport meta data (layout viewport, scale) needs to be set again when bringing 47038 back a page from the page cache. As the viewport metadata is only retrieved while parsing 47039 the document, we need to store it in the Document class. 47040 47041 Test: fast/viewport/viewport-128.html 47042 47043 * WebCore.xcodeproj/project.pbxproj: 47044 * dom/Document.cpp: 47045 (WebCore::Document::processViewport): 47046 (WebCore::Document::setInPageCache): 47047 * dom/Document.h: 47048 (WebCore::Document::viewportArguments): 47049 47050 2010-09-24 David Hyatt <hyatt (a] apple.com> 47051 47052 Reviewed by Sam Weinig. 47053 47054 https://bugs.webkit.org/show_bug.cgi?id=46496, rename containingBlockWidthForContent to 47055 containingBlockLogicalWidthForContent. 47056 47057 * rendering/RenderBlock.cpp: 47058 (WebCore::RenderBlock::localCaretRect): 47059 * rendering/RenderBox.cpp: 47060 (WebCore::RenderBox::containingBlockLogicalWidthForContent): 47061 (WebCore::RenderBox::computeLogicalWidth): 47062 (WebCore::RenderBox::computeReplacedWidthUsing): 47063 * rendering/RenderBox.h: 47064 * rendering/RenderBoxModelObject.cpp: 47065 (WebCore::RenderBoxModelObject::relativePositionOffsetX): 47066 (WebCore::RenderBoxModelObject::containingBlockLogicalWidthForContent): 47067 * rendering/RenderBoxModelObject.h: 47068 47069 2010-09-24 David Hyatt <hyatt (a] apple.com> 47070 47071 Reviewed by Sam Weinig. 47072 47073 https://bugs.webkit.org/show_bug.cgi?id=46489, rename the lineWidth and left/RightOffset methods 47074 to reflect that they will be logical. 47075 47076 * rendering/RenderBlock.cpp: 47077 (WebCore::RenderBlock::determineHorizontalPosition): 47078 (WebCore::RenderBlock::leftSelectionOffset): 47079 (WebCore::RenderBlock::rightSelectionOffset): 47080 (WebCore::RenderBlock::positionNewFloats): 47081 (WebCore::RenderBlock::logicalLeftOffsetForContent): 47082 (WebCore::RenderBlock::logicalLeftOffsetForLine): 47083 (WebCore::RenderBlock::logicalRightOffsetForContent): 47084 (WebCore::RenderBlock::logicalRightOffsetForLine): 47085 (WebCore::RenderBlock::availableLogicalWidthForLine): 47086 (WebCore::RenderBlock::getClearDelta): 47087 * rendering/RenderBlock.h: 47088 (WebCore::RenderBlock::logicalRightOffsetForLine): 47089 (WebCore::RenderBlock::logicalLeftOffsetForLine): 47090 * rendering/RenderBlockLineLayout.cpp: 47091 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 47092 (WebCore::RenderBlock::layoutInlineChildren): 47093 (WebCore::RenderBlock::skipTrailingWhitespace): 47094 (WebCore::RenderBlock::skipLeadingWhitespace): 47095 (WebCore::RenderBlock::fitBelowFloats): 47096 (WebCore::RenderBlock::findNextLineBreak): 47097 (WebCore::RenderBlock::checkLinesForTextOverflow): 47098 * rendering/RenderBox.cpp: 47099 (WebCore::RenderBox::containingBlockWidthForContent): 47100 * rendering/RenderFlexibleBox.cpp: 47101 (WebCore::RenderFlexibleBox::applyLineClamp): 47102 * rendering/RenderListItem.cpp: 47103 (WebCore::RenderListItem::positionListMarker): 47104 * rendering/RenderTable.cpp: 47105 (WebCore::RenderTable::computeLogicalWidth): 47106 * rendering/RootInlineBox.cpp: 47107 (WebCore::RootInlineBox::selectionTop): 47108 47109 2010-09-24 Abhishek Arya <inferno (a] chromium.org> 47110 47111 Reviewed by Simon Fraser. 47112 47113 Comply with spec by generalizing container on which transforms can be applied. 47114 https://bugs.webkit.org/show_bug.cgi?id=46485 47115 47116 Already covered by existing tests. 47117 47118 * rendering/RenderObject.cpp: 47119 (WebCore::RenderObject::getTransformFromContainer): 47120 47121 2010-09-24 David Hyatt <hyatt (a] apple.com> 47122 47123 Reviewed by Simon Fraser. 47124 47125 https://bugs.webkit.org/show_bug.cgi?id=46482, rename the various prefWidth functions to use 47126 preferredLogicalWidth. 47127 47128 * rendering/AutoTableLayout.cpp: 47129 (WebCore::AutoTableLayout::recalcColumn): 47130 (WebCore::AutoTableLayout::computePreferredLogicalWidths): 47131 (WebCore::AutoTableLayout::calcEffectiveWidth): 47132 * rendering/AutoTableLayout.h: 47133 * rendering/FixedTableLayout.cpp: 47134 (WebCore::FixedTableLayout::calcWidthArray): 47135 (WebCore::FixedTableLayout::computePreferredLogicalWidths): 47136 * rendering/FixedTableLayout.h: 47137 * rendering/RenderBlock.cpp: 47138 (WebCore::RenderBlock::layoutBlockChildren): 47139 (WebCore::RenderBlock::layoutPositionedObjects): 47140 (WebCore::RenderBlock::getClearDelta): 47141 (WebCore::RenderBlock::computePreferredLogicalWidths): 47142 (WebCore::RenderBlock::computeInlinePreferredLogicalWidths): 47143 (WebCore::RenderBlock::computeBlockPreferredLogicalWidths): 47144 * rendering/RenderBlock.h: 47145 * rendering/RenderBlockLineLayout.cpp: 47146 (WebCore::dirtyLineBoxesForRenderer): 47147 (WebCore::RenderBlock::layoutInlineChildren): 47148 * rendering/RenderBox.cpp: 47149 (WebCore::RenderBox::RenderBox): 47150 (WebCore::RenderBox::minPreferredLogicalWidth): 47151 (WebCore::RenderBox::maxPreferredLogicalWidth): 47152 (WebCore::RenderBox::computeLogicalWidth): 47153 (WebCore::RenderBox::computeLogicalWidthUsing): 47154 (WebCore::RenderBox::computePositionedLogicalWidth): 47155 (WebCore::RenderBox::computePositionedLogicalWidthUsing): 47156 * rendering/RenderBox.h: 47157 (WebCore::RenderBox::computePreferredLogicalWidths): 47158 * rendering/RenderCounter.cpp: 47159 (WebCore::RenderCounter::computePreferredLogicalWidths): 47160 * rendering/RenderCounter.h: 47161 * rendering/RenderDataGrid.cpp: 47162 (WebCore::RenderDataGrid::computePreferredLogicalWidths): 47163 * rendering/RenderDataGrid.h: 47164 * rendering/RenderFieldset.cpp: 47165 (WebCore::RenderFieldset::computePreferredLogicalWidths): 47166 * rendering/RenderFieldset.h: 47167 * rendering/RenderFileUploadControl.cpp: 47168 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): 47169 * rendering/RenderFileUploadControl.h: 47170 * rendering/RenderFlexibleBox.cpp: 47171 (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths): 47172 (WebCore::RenderFlexibleBox::calcVerticalPrefWidths): 47173 (WebCore::RenderFlexibleBox::computePreferredLogicalWidths): 47174 (WebCore::RenderFlexibleBox::allowedChildFlex): 47175 * rendering/RenderFlexibleBox.h: 47176 * rendering/RenderFrameBase.cpp: 47177 (WebCore::RenderFrameBase::layoutWithFlattening): 47178 * rendering/RenderHTMLCanvas.cpp: 47179 (WebCore::RenderHTMLCanvas::canvasSizeChanged): 47180 * rendering/RenderImage.cpp: 47181 (WebCore::RenderImage::imageChanged): 47182 * rendering/RenderListBox.cpp: 47183 (WebCore::RenderListBox::computePreferredLogicalWidths): 47184 * rendering/RenderListBox.h: 47185 * rendering/RenderListItem.cpp: 47186 (WebCore::RenderListItem::updateMarkerLocation): 47187 (WebCore::RenderListItem::computePreferredLogicalWidths): 47188 * rendering/RenderListItem.h: 47189 * rendering/RenderListMarker.cpp: 47190 (WebCore::RenderListMarker::layout): 47191 (WebCore::RenderListMarker::computePreferredLogicalWidths): 47192 (WebCore::RenderListMarker::updateMargins): 47193 * rendering/RenderListMarker.h: 47194 * rendering/RenderMenuList.cpp: 47195 (WebCore::RenderMenuList::computePreferredLogicalWidths): 47196 * rendering/RenderMenuList.h: 47197 * rendering/RenderObject.cpp: 47198 (WebCore::RenderObject::RenderObject): 47199 (WebCore::RenderObject::setPreferredLogicalWidthsDirty): 47200 (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths): 47201 * rendering/RenderObject.h: 47202 (WebCore::RenderObject::preferredLogicalWidthsDirty): 47203 (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc): 47204 (WebCore::RenderObject::minPreferredLogicalWidth): 47205 (WebCore::RenderObject::maxPreferredLogicalWidth): 47206 * rendering/RenderReplaced.cpp: 47207 (WebCore::RenderReplaced::computePreferredLogicalWidths): 47208 * rendering/RenderReplaced.h: 47209 * rendering/RenderReplica.cpp: 47210 (WebCore::RenderReplica::computePreferredLogicalWidths): 47211 * rendering/RenderReplica.h: 47212 * rendering/RenderSVGRoot.cpp: 47213 (WebCore::RenderSVGRoot::computePreferredLogicalWidths): 47214 * rendering/RenderSVGRoot.h: 47215 * rendering/RenderScrollbarPart.cpp: 47216 (WebCore::RenderScrollbarPart::computePreferredLogicalWidths): 47217 * rendering/RenderScrollbarPart.h: 47218 * rendering/RenderSlider.cpp: 47219 (WebCore::RenderSlider::computePreferredLogicalWidths): 47220 * rendering/RenderSlider.h: 47221 * rendering/RenderTable.cpp: 47222 (WebCore::RenderTable::computeLogicalWidth): 47223 (WebCore::RenderTable::computePreferredLogicalWidths): 47224 * rendering/RenderTable.h: 47225 * rendering/RenderTableCell.cpp: 47226 (WebCore::RenderTableCell::computePreferredLogicalWidths): 47227 * rendering/RenderTableCell.h: 47228 * rendering/RenderTableCol.cpp: 47229 (WebCore::RenderTableCol::computePreferredLogicalWidths): 47230 * rendering/RenderTableCol.h: 47231 * rendering/RenderText.cpp: 47232 (WebCore::RenderText::trimmedPrefWidths): 47233 (WebCore::RenderText::minPreferredLogicalWidth): 47234 (WebCore::RenderText::maxPreferredLogicalWidth): 47235 (WebCore::RenderText::computePreferredLogicalWidths): 47236 (WebCore::RenderText::width): 47237 * rendering/RenderText.h: 47238 * rendering/RenderTextControl.cpp: 47239 (WebCore::RenderTextControl::computePreferredLogicalWidths): 47240 * rendering/RenderTextControl.h: 47241 * rendering/RenderTextControlSingleLine.cpp: 47242 (WebCore::RenderTextControlSingleLine::preferredContentWidth): 47243 (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight): 47244 * rendering/RenderVideo.cpp: 47245 (WebCore::RenderVideo::updateIntrinsicSize): 47246 * rendering/RenderView.cpp: 47247 (WebCore::RenderView::RenderView): 47248 (WebCore::RenderView::computePreferredLogicalWidths): 47249 (WebCore::RenderView::layout): 47250 * rendering/RenderView.h: 47251 * rendering/TableLayout.h: 47252 47253 2010-09-24 Jian Li <jianli (a] chromium.org> 47254 47255 Reviewed by Alexey Proskuryakov. 47256 47257 DOMWindow::revokeBlobURL erroneously uses ParsedURLString. 47258 https://bugs.webkit.org/show_bug.cgi?id=46434 47259 47260 Test: fast/files/revoke-blob-url.html 47261 47262 * page/DOMWindow.cpp: 47263 (WebCore::DOMWindow::revokeBlobURL): 47264 47265 2010-09-24 David Hyatt <hyatt (a] apple.com> 47266 47267 Reviewed by Sam Weinig. 47268 47269 https://bugs.webkit.org/show_bug.cgi?id=46474 47270 47271 Patch computeWidthUsing to be block-flow-aware. Rename the WidthType enum to LogicalWidthType. Make computeLogicalWidthUsing 47272 query the style for logical width properties instead of width properties. 47273 47274 fast/css/logical-property-resolution.html now fails and gives bad results. This is expected. It will become correct 47275 again as more layout code gets patched. 47276 47277 * rendering/RenderBox.cpp: 47278 (WebCore::RenderBox::computeLogicalWidth): 47279 (WebCore::RenderBox::computeLogicalWidthUsing): 47280 (WebCore::RenderBox::sizesToIntrinsicWidth): 47281 * rendering/RenderBox.h: 47282 47283 2010-09-24 Andrey Kosyakov <caseq (a] chromium.org> 47284 47285 Reviewed by Pavel Feldman. 47286 47287 Web Inspector: Clicking "Select All" in audits panel has no effect when the checkbox is unchecked 47288 Only add category event listeners to real categories, not to "Select All" 47289 https://bugs.webkit.org/show_bug.cgi?id=46467 47290 47291 * inspector/front-end/AuditLauncherView.js: 47292 (WebInspector.AuditLauncherView.prototype._createCategoryElement): 47293 47294 2010-09-24 Hans Wennborg <hans (a] chromium.org> 47295 47296 Reviewed by Steve Block. 47297 47298 Remove unnecessary casts in DeviceOrientation V8 bindings 47299 https://bugs.webkit.org/show_bug.cgi?id=46466 47300 47301 Remove unnecessary casts of v8::Value::NumberValue() to double from 47302 the custom v8 bindings code for DeviceOrientation/Motion. 47303 47304 No new tests: just cleanup, no new functionality. 47305 47306 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 47307 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 47308 * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: 47309 (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback): 47310 47311 2010-09-24 Ilya Tikhonovsky <loislo (a] chromium.org> 47312 47313 Reviewed by Pavel Feldman. 47314 47315 Web Inspector: move searchingForNode flag in InspectorController under control of InspectorCookies. 47316 47317 Four functions from Inspector IDL go away. 47318 Searching for node feature of Inspector keeps alive even after navigation. 47319 47320 https://bugs.webkit.org/show_bug.cgi?id=46462 47321 47322 * inspector/Inspector.idl: 47323 * inspector/InspectorController.cpp: 47324 (WebCore::InspectorController::updateInspectorStateCookie): 47325 (WebCore::InspectorController::restoreInspectorStateFromCookie): 47326 (WebCore::InspectorController::setSearchingForNode): 47327 (WebCore::InspectorController::populateScriptObjects): 47328 * inspector/InspectorController.h: 47329 * inspector/front-end/ElementsPanel.js: 47330 (WebInspector.ElementsPanel.prototype.hide): 47331 (WebInspector.ElementsPanel.prototype.updateFocusedNode): 47332 (WebInspector.ElementsPanel.prototype._setSearchingForNode): 47333 (WebInspector.ElementsPanel.prototype.setSearchingForNode): 47334 (WebInspector.ElementsPanel.prototype.toggleSearchingForNode): 47335 * inspector/front-end/inspector.js: 47336 (WebInspector._updateFocusedNode): 47337 47338 2010-09-24 Andrei Popescu <andreip (a] google.com> 47339 47340 Reviewed by Jeremy Orlow. 47341 47342 IDBTransactionCoordinator incorrectly assumes that aborted transactions must have been started or running. 47343 https://bugs.webkit.org/show_bug.cgi?id=46459 47344 47345 No new tests, storage/indexeddb/transaction-basics.html covers this. 47346 47347 Also fixes http://code.google.com/p/chromium/issues/detail?id=56732 47348 47349 * storage/IDBTransactionCoordinator.cpp: 47350 (WebCore::IDBTransactionCoordinator::didFinishTransaction): 47351 47352 2010-09-24 Hans Wennborg <hans (a] chromium.org> 47353 47354 Reviewed by Steve Block. 47355 47356 Update DeviceMotionEvent to spec 47357 https://bugs.webkit.org/show_bug.cgi?id=46344 47358 47359 The spec has changed: the DeviceMotionEvent attributes accelerationX, 47360 accelerationY, etc. have been baked into an 'acceleration' attribute 47361 which returns an object with x, y, and z values. Likewise for the 47362 rotation rate. The 'accelerationIncludingGravity' attribute is new. 47363 47364 * WebCore.exp.in: 47365 The DeviceMotionData::create member function has changed. Also export 47366 create functions for DeviceMotionData::Acceleration and RotationRate. 47367 47368 * bindings/js/JSDeviceMotionEventCustom.cpp: 47369 (WebCore::JSDeviceMotionEvent::acceleration): 47370 (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): 47371 (WebCore::JSDeviceMotionEvent::rotationRate): 47372 (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): 47373 Manually create and return objects with the right attributes for 47374 acceleration, accelerationIncludingGravity, and rotationRate. 47375 When creating the DeviceMotionData object in initDeviceMotionEvent, 47376 accept any input objects that have the right attributes. 47377 47378 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 47379 (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): 47380 (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): 47381 (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): 47382 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 47383 V8 counterpart to the JSC code above. 47384 47385 * dom/DeviceMotionData.cpp: 47386 (WebCore::DeviceMotionData::Acceleration::create): 47387 (WebCore::DeviceMotionData::Acceleration::Acceleration): 47388 (WebCore::DeviceMotionData::RotationRate::create): 47389 (WebCore::DeviceMotionData::RotationRate::RotationRate): 47390 (WebCore::DeviceMotionData::create): 47391 (WebCore::DeviceMotionData::DeviceMotionData): 47392 * dom/DeviceMotionData.h: 47393 (WebCore::DeviceMotionData::Acceleration::canProvideX): 47394 (WebCore::DeviceMotionData::Acceleration::canProvideY): 47395 (WebCore::DeviceMotionData::Acceleration::canProvideZ): 47396 (WebCore::DeviceMotionData::Acceleration::x): 47397 (WebCore::DeviceMotionData::Acceleration::y): 47398 (WebCore::DeviceMotionData::Acceleration::z): 47399 (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): 47400 (WebCore::DeviceMotionData::RotationRate::canProvideBeta): 47401 (WebCore::DeviceMotionData::RotationRate::canProvideGamma): 47402 (WebCore::DeviceMotionData::RotationRate::alpha): 47403 (WebCore::DeviceMotionData::RotationRate::beta): 47404 (WebCore::DeviceMotionData::RotationRate::gamma): 47405 (WebCore::DeviceMotionData::acceleration): 47406 (WebCore::DeviceMotionData::accelerationIncludingGravity): 47407 (WebCore::DeviceMotionData::rotationRate): 47408 Add member classes Acceleration and RotationRate to DeviceMotionData. 47409 47410 * dom/DeviceMotionEvent.idl: 47411 Update according to the spec. Acceleration and RotationRate need not 47412 be backed by native classes. 47413 47414 2010-09-24 Romain Pokrzywka <romain (a] kdab.com> 47415 47416 Reviewed by Simon Hausmann. 47417 47418 [Qt] Fix the Wince build. 47419 47420 * WebCore.pro: Apply msvc flags to wince, too. 47421 47422 2010-09-24 Anders Bakken <agbakken (a] gmail.com> 47423 47424 Reviewed by Simon Hausmann. 47425 47426 [Qt] Enable building Qt/Webkit with debug symbols 47427 47428 With this patch one can configure with -webkit-debug to build Webkit 47429 with debug symbols without having to manually edit WebCore.pro. 47430 47431 * WebCore.pro: 47432 47433 2010-09-24 Yael Aharon <yael.aharon (a] nokia.com> 47434 47435 Reviewed by Kenneth Rohde Christiansen. 47436 47437 [Qt] Web Sockets are insecure with QtWebKit 47438 https://bugs.webkit.org/show_bug.cgi?id=44769 47439 47440 Throw an error when the server certificate is not valid. 47441 DRT currently does not support secure websocket connection, 47442 so no new tests. This was tested with the server at 47443 http://code.google.com/p/pywebsocket instead. 47444 47445 * platform/network/qt/SocketStreamHandleQt.cpp: 47446 (WebCore::SocketStreamHandlePrivate::socketSslErrors): 47447 47448 2010-09-24 Jia Pu <jpu (a] apple.com> 47449 47450 Reviewed by Shinichiro Hamaji. 47451 47452 Need to remove autocorrection underlines in current line when newline is entered. 47453 https://bugs.webkit.org/show_bug.cgi?id=45709 47454 <rdar://problem/8335576> 47455 47456 This change affects only Mac OSX build. 47457 47458 * dom/DocumentMarker.h: Added "CorrectionIndicator" to indicate the words on which we need 47459 to draw autocorrection underline. We cannot use existing "Replacement" for this purpose, 47460 since it is not meant to be removed once it is added. But we need to remove all autocorrection 47461 underlines when a line break or paragraph separator is inserted, which is the behavior in 47462 NSTextView. Hence we need a separate marker value for drawing autocorrection underline. 47463 47464 * editing/Editor.cpp: 47465 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Add "CorrectionIndicator" when 47466 autocorrection takes place. 47467 (WebCore::Editor::changeSelectionAfterCommand): Remove "CorrectionIndicator" markers if the 47468 command results in inserting paragraph separator. 47469 47470 * rendering/InlineTextBox.cpp: 47471 (WebCore::textCheckingLineStyleForMarkerType): Use "CorrectionIndicator" marker instead of 47472 "Replacement" to draw autocorrection underline. 47473 (WebCore::InlineTextBox::paintDocumentMarkers): Ditto. 47474 47475 2010-09-24 Eric Uhrhane <ericu (a] chromium.org> 47476 47477 Reviewed by David Levin. 47478 47479 Remove unnecessary parameter from AsyncFileWriterClient::didTruncate 47480 https://bugs.webkit.org/show_bug.cgi?id=46390 47481 47482 * fileapi/AsyncFileWriterClient.h: 47483 47484 Added state to FileWriter to replace the parameter. 47485 * fileapi/FileWriter.h: 47486 * fileapi/FileWriter.cpp: 47487 (WebCore::FileWriter::truncate): 47488 (WebCore::FileWriter::didTruncate): 47489 47490 2010-09-24 Sheriff Bot <webkit.review.bot (a] gmail.com> 47491 47492 Unreviewed, rolling out r68236. 47493 http://trac.webkit.org/changeset/68236 47494 https://bugs.webkit.org/show_bug.cgi?id=46449 47495 47496 compile fix didn't work (Requested by dino___ on #webkit). 47497 47498 * WebCore.exp.in: 47499 * bindings/js/JSDeviceMotionEventCustom.cpp: 47500 (WebCore::JSDeviceMotionEvent::xAcceleration): 47501 (WebCore::JSDeviceMotionEvent::yAcceleration): 47502 (WebCore::JSDeviceMotionEvent::zAcceleration): 47503 (WebCore::JSDeviceMotionEvent::xRotationRate): 47504 (WebCore::JSDeviceMotionEvent::yRotationRate): 47505 (WebCore::JSDeviceMotionEvent::zRotationRate): 47506 (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): 47507 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 47508 (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter): 47509 (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter): 47510 (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter): 47511 (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter): 47512 (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter): 47513 (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter): 47514 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 47515 * dom/DeviceMotionData.cpp: 47516 (WebCore::DeviceMotionData::create): 47517 (WebCore::DeviceMotionData::DeviceMotionData): 47518 * dom/DeviceMotionData.h: 47519 (WebCore::DeviceMotionData::xAcceleration): 47520 (WebCore::DeviceMotionData::yAcceleration): 47521 (WebCore::DeviceMotionData::zAcceleration): 47522 (WebCore::DeviceMotionData::xRotationRate): 47523 (WebCore::DeviceMotionData::yRotationRate): 47524 (WebCore::DeviceMotionData::zRotationRate): 47525 (WebCore::DeviceMotionData::canProvideXAcceleration): 47526 (WebCore::DeviceMotionData::canProvideYAcceleration): 47527 (WebCore::DeviceMotionData::canProvideZAcceleration): 47528 (WebCore::DeviceMotionData::canProvideXRotationRate): 47529 (WebCore::DeviceMotionData::canProvideYRotationRate): 47530 (WebCore::DeviceMotionData::canProvideZRotationRate): 47531 * dom/DeviceMotionEvent.idl: 47532 47533 2010-09-24 Chris Guillory <chris.guillory (a] google.com> 47534 47535 Reviewed by Chris Fleizach. 47536 47537 Send webkit accessibility notifications to Chromium. 47538 https://bugs.webkit.org/show_bug.cgi?id=45156 47539 47540 * WebCore.gypi: 47541 * accessibility/chromium/AXObjectCacheChromium.cpp: 47542 (WebCore::AXObjectCache::postPlatformNotification): 47543 (WebCore::AXObjectCache::handleFocusedUIElementChanged): 47544 (WebCore::AXObjectCache::handleScrolledToAnchor): 47545 * dom/Document.cpp: 47546 (WebCore::Document::implicitClose): 47547 (WebCore::Document::setFocusedNode): 47548 * editing/SelectionController.h: 47549 * page/ChromeClient.h: 47550 (WebCore::ChromeClient::postAccessibilityNotification): 47551 * page/FrameView.cpp: 47552 (WebCore::FrameView::layout): 47553 47554 2010-09-24 David Hyatt <hyatt (a] apple.com> 47555 47556 Reviewed by Maciej Stachowiak. 47557 47558 https://bugs.webkit.org/show_bug.cgi?id=46454, rename a bunch of the width and height calculation methods. 47559 47560 calcReplacedWidth -> computeReplacedWidth 47561 47562 calcHorizontalMargins -> computeInlineDirectionMargins 47563 47564 calcVerticalMargins -> computeBlockDirectionMargins 47565 47566 calcWidthUsing -> computeLogicalWidthUsing 47567 47568 calcHeightUsing -> computeLogicalHeightUsing 47569 47570 calcReplacedHeight/HeightUsing -> computeReplacedHeight/HeightUsing 47571 47572 calcAbsoluteHorizontalValues -> computePositionedLogicalWidthUsing 47573 47574 calcAbsoluteVerticalValues -> computePositionedLogicalHeightUsing 47575 47576 calcAbsoluteHorizontal -> computePositionedLogicalWIdth 47577 47578 calcAbsoluteVertical -> computePositionedLogicalHeight 47579 47580 calcAbsoluteHorizontalReplaced -> computePositionedLogicalWidthReplaced 47581 47582 calcAbsoluteVerticalReplaced -> computePositionedLogicalHeightReplaced 47583 47584 calcBorderBoxWidth/Height -> computeBorderBoxLogicalWidth/LogicalHeight 47585 47586 calcContentBoxWidth/Height -> computeContentBoxLogicalWidth/LogicalHeight 47587 47588 shouldCalculateSizeAsReplaced -> shouldComputeSizeAsReplaced 47589 47590 calcPercentageHeight -> computePercentageLogicalHeight 47591 47592 * rendering/AutoTableLayout.cpp: 47593 (WebCore::AutoTableLayout::recalcColumn): 47594 * rendering/RenderBlock.cpp: 47595 (WebCore::RenderBlock::adjustPositionedBlock): 47596 (WebCore::RenderBlock::determineHorizontalPosition): 47597 (WebCore::RenderBlock::layoutBlockChild): 47598 (WebCore::RenderBlock::insertFloatingObject): 47599 (WebCore::RenderBlock::calcPrefWidths): 47600 * rendering/RenderBox.cpp: 47601 (WebCore::RenderBox::computeBorderBoxLogicalWidth): 47602 (WebCore::RenderBox::computeBorderBoxLogicalHeight): 47603 (WebCore::RenderBox::computeContentBoxLogicalWidth): 47604 (WebCore::RenderBox::computeContentBoxLogicalHeight): 47605 (WebCore::RenderBox::computeLogicalWidth): 47606 (WebCore::RenderBox::computeLogicalWidthUsing): 47607 (WebCore::RenderBox::computeInlineDirectionMargins): 47608 (WebCore::RenderBox::computeLogicalHeight): 47609 (WebCore::RenderBox::computeLogicalHeightUsing): 47610 (WebCore::RenderBox::computePercentageLogicalHeight): 47611 (WebCore::RenderBox::computeReplacedWidth): 47612 (WebCore::RenderBox::computeReplacedWidthUsing): 47613 (WebCore::RenderBox::computeReplacedHeight): 47614 (WebCore::RenderBox::computeReplacedHeightUsing): 47615 (WebCore::RenderBox::availableHeightUsing): 47616 (WebCore::RenderBox::computeBlockDirectionMargins): 47617 (WebCore::RenderBox::computePositionedLogicalWidth): 47618 (WebCore::RenderBox::computePositionedLogicalWidthUsing): 47619 (WebCore::RenderBox::computePositionedLogicalHeight): 47620 (WebCore::RenderBox::computePositionedLogicalHeightUsing): 47621 (WebCore::RenderBox::computePositionedLogicalWidthReplaced): 47622 (WebCore::RenderBox::computePositionedLogicalHeightReplaced): 47623 * rendering/RenderBox.h: 47624 (WebCore::RenderBox::shouldComputeSizeAsReplaced): 47625 * rendering/RenderDataGrid.cpp: 47626 (WebCore::RenderDataGrid::calcPrefWidths): 47627 * rendering/RenderFileUploadControl.cpp: 47628 (WebCore::RenderFileUploadControl::calcPrefWidths): 47629 * rendering/RenderFlexibleBox.cpp: 47630 (WebCore::RenderFlexibleBox::calcPrefWidths): 47631 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 47632 (WebCore::RenderFlexibleBox::layoutVerticalBox): 47633 * rendering/RenderImage.cpp: 47634 (WebCore::RenderImage::computeReplacedWidth): 47635 (WebCore::RenderImage::computeReplacedHeight): 47636 (WebCore::RenderImage::calcAspectRatioWidth): 47637 (WebCore::RenderImage::calcAspectRatioHeight): 47638 * rendering/RenderImage.h: 47639 * rendering/RenderListBox.cpp: 47640 (WebCore::RenderListBox::calcPrefWidths): 47641 * rendering/RenderMenuList.cpp: 47642 (WebCore::RenderMenuList::calcPrefWidths): 47643 * rendering/RenderObject.cpp: 47644 (WebCore::RenderObject::container): 47645 * rendering/RenderObject.h: 47646 (WebCore::RenderObject::computeBlockDirectionMargins): 47647 * rendering/RenderReplaced.cpp: 47648 (WebCore::RenderReplaced::computeReplacedWidth): 47649 (WebCore::RenderReplaced::computeReplacedHeight): 47650 (WebCore::RenderReplaced::calcAspectRatioWidth): 47651 (WebCore::RenderReplaced::calcAspectRatioHeight): 47652 (WebCore::RenderReplaced::calcPrefWidths): 47653 * rendering/RenderReplaced.h: 47654 * rendering/RenderSVGRoot.cpp: 47655 (WebCore::RenderSVGRoot::calcPrefWidths): 47656 (WebCore::RenderSVGRoot::computeReplacedWidth): 47657 (WebCore::RenderSVGRoot::computeReplacedHeight): 47658 * rendering/RenderSVGRoot.h: 47659 * rendering/RenderSlider.cpp: 47660 (WebCore::RenderSlider::calcPrefWidths): 47661 * rendering/RenderTable.cpp: 47662 (WebCore::RenderTable::computeLogicalWidth): 47663 (WebCore::RenderTable::layout): 47664 * rendering/RenderTableRow.cpp: 47665 (WebCore::RenderTableRow::layout): 47666 * rendering/RenderTextControl.cpp: 47667 (WebCore::RenderTextControl::calcPrefWidths): 47668 * rendering/RenderVideo.cpp: 47669 (WebCore::RenderVideo::computeReplacedWidth): 47670 (WebCore::RenderVideo::computeReplacedHeight): 47671 * rendering/RenderVideo.h: 47672 47673 2010-09-23 David Hyatt <hyatt (a] apple.com> 47674 47675 Reviewed by Sam Weinig. 47676 47677 https://bugs.webkit.org/show_bug.cgi?id=46451 47678 47679 Rename calcWidth to computeLogicalWidth. Rename calcHeight to computeLogicalHeight. 47680 47681 * rendering/RenderApplet.cpp: 47682 (WebCore::RenderApplet::layout): 47683 * rendering/RenderBlock.cpp: 47684 (WebCore::RenderBlock::layoutBlock): 47685 (WebCore::RenderBlock::insertFloatingObject): 47686 (WebCore::RenderBlock::getClearDelta): 47687 * rendering/RenderBlockLineLayout.cpp: 47688 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 47689 * rendering/RenderBox.cpp: 47690 (WebCore::RenderBox::computeLogicalWidth): 47691 (WebCore::RenderBox::computeLogicalHeight): 47692 (WebCore::RenderBox::calcPercentageHeight): 47693 (WebCore::RenderBox::calcReplacedHeightUsing): 47694 (WebCore::RenderBox::availableHeightUsing): 47695 (WebCore::RenderBox::calcAbsoluteHorizontal): 47696 * rendering/RenderBox.h: 47697 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): 47698 * rendering/RenderEmbeddedObject.cpp: 47699 (WebCore::RenderEmbeddedObject::layout): 47700 * rendering/RenderFlexibleBox.cpp: 47701 (WebCore::RenderFlexibleBox::layoutBlock): 47702 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 47703 (WebCore::RenderFlexibleBox::layoutVerticalBox): 47704 * rendering/RenderForeignObject.cpp: 47705 (WebCore::RenderForeignObject::computeLogicalWidth): 47706 (WebCore::RenderForeignObject::computeLogicalHeight): 47707 * rendering/RenderForeignObject.h: 47708 * rendering/RenderHTMLCanvas.cpp: 47709 (WebCore::RenderHTMLCanvas::canvasSizeChanged): 47710 * rendering/RenderIFrame.cpp: 47711 (WebCore::RenderIFrame::computeLogicalHeight): 47712 (WebCore::RenderIFrame::computeLogicalWidth): 47713 (WebCore::RenderIFrame::layout): 47714 * rendering/RenderIFrame.h: 47715 * rendering/RenderImage.cpp: 47716 (WebCore::RenderImage::imageChanged): 47717 * rendering/RenderIndicator.cpp: 47718 (WebCore::RenderIndicator::layout): 47719 * rendering/RenderListBox.cpp: 47720 (WebCore::RenderListBox::computeLogicalHeight): 47721 * rendering/RenderListBox.h: 47722 * rendering/RenderMeter.cpp: 47723 (WebCore::RenderMeter::computeLogicalWidth): 47724 (WebCore::RenderMeter::computeLogicalHeight): 47725 * rendering/RenderMeter.h: 47726 * rendering/RenderReplaced.cpp: 47727 (WebCore::RenderReplaced::layout): 47728 * rendering/RenderSVGRoot.cpp: 47729 (WebCore::RenderSVGRoot::layout): 47730 * rendering/RenderSlider.cpp: 47731 (WebCore::RenderSlider::layout): 47732 * rendering/RenderTable.cpp: 47733 (WebCore::RenderTable::computeLogicalWidth): 47734 (WebCore::RenderTable::layout): 47735 * rendering/RenderTable.h: 47736 * rendering/RenderTableCell.cpp: 47737 (WebCore::RenderTableCell::computeLogicalWidth): 47738 * rendering/RenderTableCell.h: 47739 * rendering/RenderTextControl.cpp: 47740 (WebCore::RenderTextControl::computeLogicalHeight): 47741 * rendering/RenderTextControl.h: 47742 * rendering/RenderTextControlSingleLine.cpp: 47743 (WebCore::RenderTextControlSingleLine::layout): 47744 (WebCore::RenderTextControlSingleLine::textBlockWidth): 47745 (WebCore::RenderTextControlSingleLine::decorationWidthRight): 47746 (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight): 47747 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): 47748 * rendering/RenderView.cpp: 47749 (WebCore::RenderView::computeLogicalHeight): 47750 (WebCore::RenderView::computeLogicalWidth): 47751 * rendering/RenderView.h: 47752 * svg/SVGSVGElement.cpp: 47753 (WebCore::SVGSVGElement::svgAttributeChanged): 47754 47755 2010-09-23 Hans Wennborg <hans (a] chromium.org> 47756 47757 Reviewed by Simon Fraser. 47758 47759 Update DeviceMotionEvent to spec 47760 https://bugs.webkit.org/show_bug.cgi?id=46344 47761 47762 The spec has changed: the DeviceMotionEvent attributes accelerationX, 47763 accelerationY, etc. have been baked into an 'acceleration' attribute 47764 which returns an object with x, y, and z values. Likewise for the 47765 rotation rate. The 'accelerationIncludingGravity' attribute is new. 47766 47767 * WebCore.exp.in: 47768 The DeviceMotionData::create member function has changed. Also export 47769 create functions for DeviceMotionData::Acceleration and RotationRate. 47770 47771 * bindings/js/JSDeviceMotionEventCustom.cpp: 47772 (WebCore::JSDeviceMotionEvent::acceleration): 47773 (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): 47774 (WebCore::JSDeviceMotionEvent::rotationRate): 47775 (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): 47776 Manually create and return objects with the right attributes for 47777 acceleration, accelerationIncludingGravity, and rotationRate. 47778 When creating the DeviceMotionData object in initDeviceMotionEvent, 47779 accept any input objects that have the right attributes. 47780 47781 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 47782 (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): 47783 (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): 47784 (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): 47785 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 47786 V8 counterpart to the JSC code above. 47787 47788 * dom/DeviceMotionData.cpp: 47789 (WebCore::DeviceMotionData::Acceleration::create): 47790 (WebCore::DeviceMotionData::Acceleration::Acceleration): 47791 (WebCore::DeviceMotionData::RotationRate::create): 47792 (WebCore::DeviceMotionData::RotationRate::RotationRate): 47793 (WebCore::DeviceMotionData::create): 47794 (WebCore::DeviceMotionData::DeviceMotionData): 47795 * dom/DeviceMotionData.h: 47796 (WebCore::DeviceMotionData::Acceleration::canProvideX): 47797 (WebCore::DeviceMotionData::Acceleration::canProvideY): 47798 (WebCore::DeviceMotionData::Acceleration::canProvideZ): 47799 (WebCore::DeviceMotionData::Acceleration::x): 47800 (WebCore::DeviceMotionData::Acceleration::y): 47801 (WebCore::DeviceMotionData::Acceleration::z): 47802 (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): 47803 (WebCore::DeviceMotionData::RotationRate::canProvideBeta): 47804 (WebCore::DeviceMotionData::RotationRate::canProvideGamma): 47805 (WebCore::DeviceMotionData::RotationRate::alpha): 47806 (WebCore::DeviceMotionData::RotationRate::beta): 47807 (WebCore::DeviceMotionData::RotationRate::gamma): 47808 (WebCore::DeviceMotionData::acceleration): 47809 (WebCore::DeviceMotionData::accelerationIncludingGravity): 47810 (WebCore::DeviceMotionData::rotationRate): 47811 Add member classes Acceleration and RotationRate to DeviceMotionData. 47812 47813 * dom/DeviceMotionEvent.idl: 47814 Update according to the spec. Acceleration and RotationRate need not 47815 be backed by native classes. 47816 47817 2010-09-23 Simon Fraser <simon.fraser (a] apple.com> 47818 47819 Reviewed by Dan Bernstein. 47820 47821 Accelerated transitions do not suspend/resume properly. 47822 https://bugs.webkit.org/show_bug.cgi?id=43792 47823 47824 Fix suspending of accelerated transitions. 47825 47826 GraphicsLayer changes unify the handling of transitions and animations 47827 in GraphicsLayer. Both are now identified by name, so the code 47828 now refers to "animationName" rather than "keyframesName". Transitions 47829 use a dummy name which is not a valid keyframe identifier. 47830 47831 Tests: animations/suspend-transform-animation.html 47832 transitions/suspend-transform-transition.html 47833 47834 * page/animation/ImplicitAnimation.h: 47835 * page/animation/ImplicitAnimation.cpp: 47836 (WebCore::ImplicitAnimation::pauseAnimation): Call down to the RenderLayerBacking 47837 to tell it that an accelerated transition was paused. 47838 47839 * platform/graphics/GraphicsLayer.h: 47840 * platform/graphics/GraphicsLayer.cpp: 47841 (WebCore::GraphicsLayer::animationNameForTransition): Create a name 47842 for the transition of the given property. 47843 (WebCore::GraphicsLayer::addAnimation): Generalize "keyframe" to "animation" in the parameter names. 47844 (WebCore::GraphicsLayer::pauseAnimation): ditto 47845 (WebCore::GraphicsLayer::removeAnimation): ditto 47846 47847 * platform/graphics/mac/GraphicsLayerCA.h: Parameter renaming, and some method renames for clarity. 47848 (WebCore::GraphicsLayerCA::animationIsRunning): 47849 (WebCore::GraphicsLayerCA::LayerPropertyAnimation::LayerPropertyAnimation): struct rename for clarity. 47850 47851 * platform/graphics/mac/GraphicsLayerCA.mm: 47852 (WebCore::animationIdentifier): the animationName already has the property baked in. 47853 (WebCore::GraphicsLayerCA::moveOrCopyLayerAnimation): just deals with one animation now. 47854 (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): we have to trawl through 47855 m_runningAnimations to get the identifiers for the animations that need to be copied. 47856 (WebCore::GraphicsLayerCA::addAnimation): rename parameters. 47857 (WebCore::GraphicsLayerCA::pauseAnimation): re-ordered methods here. member var renames. 47858 (WebCore::GraphicsLayerCA::removeAnimation): ditto. 47859 (WebCore::GraphicsLayerCA::updateLayerAnimations): no need to iterate over m_transitionPropertiesToRemove, 47860 and no more divergence between transitions and animations. 47861 (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): renames for clarity. 47862 (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): ditto 47863 (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): ditto 47864 (WebCore::GraphicsLayerCA::createAnimationFromKeyframes): renames 47865 (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): renames 47866 (WebCore::GraphicsLayerCA::suspendAnimations): whitespace. 47867 47868 * rendering/RenderLayerBacking.h: Group the transition and animation methods together. 47869 * rendering/RenderLayerBacking.cpp: 47870 (WebCore::RenderLayerBacking::animationPaused): Re-ordered methods for clarity. 47871 (WebCore::RenderLayerBacking::animationFinished): ditto 47872 (WebCore::RenderLayerBacking::startTransition): Use animationNameForTransition() to generate 47873 the animation identifier. 47874 (WebCore::RenderLayerBacking::transitionPaused): Call pauseAnimation, using animationNameForTransition() 47875 to generate the animation identifier. 47876 (WebCore::RenderLayerBacking::transitionFinished): Call removeAnimation, using animationNameForTransition() 47877 to generate the animation identifier. 47878 (WebCore::RenderLayerBacking::notifyAnimationStarted): Moved. 47879 (WebCore::RenderLayerBacking::notifySyncRequired): Moved. 47880 47881 2010-09-23 David Hyatt <hyatt (a] apple.com> 47882 47883 Reviewed by Sam Weinig. 47884 47885 https://bugs.webkit.org/show_bug.cgi?id=46442 47886 47887 Disallow the setting of block-flow to anything other than "tb" for all table-related display types 47888 and flexible box display types. By disallowing block-flow on the subclasses of RenderBlock like tables 47889 and flexible boxes, we ensure that alterations to the RenderBlock base class won't result in misrenderings 47890 in tables and flexible boxes that try to specify other block flow values. 47891 47892 * css/CSSStyleSelector.cpp: 47893 (WebCore::CSSStyleSelector::adjustRenderStyle): 47894 47895 2010-09-23 Kinuko Yasuda <kinuko (a] chromium.org> 47896 47897 Reviewed by David Levin. 47898 47899 Add Worker support for FileSystem API 47900 https://bugs.webkit.org/show_bug.cgi?id=45808 47901 47902 Exposed requestFileSystem and Flags constructor on worker contexts. 47903 47904 Also changed how to get the base path for Web file systems (in 47905 non-chromium ports) so that it works for workers too. 47906 This patch assumes each port calls 47907 LocalFileSystem::initializeLocalFileSystem() in its initialization 47908 phase. 47909 47910 No new tests; tests will be added when we have complete implementation. 47911 47912 * bindings/generic/RuntimeEnabledFeatures.cpp: 47913 (WebCore::RuntimeEnabledFeatures::fileSystemEnabled): Changed to 47914 reflect AsyncFileSystem::isAvailable 47915 * bindings/generic/RuntimeEnabledFeatures.h: Moved the implementation 47916 of fileSystemEnabled to .cpp. 47917 * fileapi/LocalFileSystem.cpp: 47918 (WebCore::LocalFileSystem::initializeLocalFileSystem): Added. 47919 (WebCore::LocalFileSystem::localFileSystem): Added. 47920 (WebCore::LocalFileSystem::fileSystemBasePath): Added. 47921 * fileapi/LocalFileSystem.h: 47922 (WebCore::LocalFileSystem::~LocalFileSystem): Removed. (As now it's 47923 going to be used as a singleton.) 47924 * page/DOMWindow.cpp: 47925 (WebCore::DOMWindow::requestFileSystem): Changed to use a singleton 47926 instance of LocalFileSystem. 47927 * page/SecurityOrigin.h: 47928 (WebCore::SecurityOrigin::canAccessFileSystem): Added. 47929 * page/Settings.cpp: Removed fileSystemRootPath method. 47930 * page/Settings.h: Removed fileSystemRootPath method. 47931 * platform/AsyncFileSystem.cpp: 47932 (WebCore::AsyncFileSystem::isAvailable): Added. 47933 * workers/WorkerContext.cpp: 47934 (WebCore::WorkerContext::requestFileSystem): Added to expose 47935 requestFileSystem method in worker contexts. 47936 (WebCore::WorkerContext::Observer): Added. 47937 (WebCore::WorkerContext::registerObserver): Added. 47938 (WebCore::WorkerContext::unregisterObserver): Added. 47939 (WebCore::WorkerContext::notifyObserversOfStop): Added. 47940 * workers/WorkerContext.h: 47941 * workers/WorkerContext.idl: 47942 * workers/WorkerThread.cpp: 47943 (WebCore::WorkerThreadShutdownStartTask::performTask): Modified to 47944 call workerContext->notifyObserversOfStop to notify worker observers 47945 of the worker thread termination. 47946 47947 2010-09-23 Matthew Delaney <mdelaney (a] apple.com> 47948 47949 Reviewed by Oliver Hunt. 47950 47951 Lower the default canvas interpolation quality for platforms that use CG 47952 https://bugs.webkit.org/show_bug.cgi?id=45722 47953 47954 Lowered the default image interpolation quality for platforms that 47955 use CG down to low since this is as good as if not better than 47956 other graphics platforms defaults (being bilinear interpolation). 47957 47958 * html/HTMLCanvasElement.cpp: 47959 (WebCore::HTMLCanvasElement::createImageBuffer): 47960 * html/HTMLCanvasElement.h: Moved in macros for default canvas interp quality. 47961 * platform/graphics/GraphicsContext.h: Moved out macros for default canvas interp quality. It makes more sense for them to be housed where they're used. 47962 47963 2010-09-23 David Hyatt <hyatt (a] apple.com> 47964 47965 Reviewed by Adele Peterson. 47966 47967 https://bugs.webkit.org/show_bug.cgi?id=46414, rename line box methods that refer specifically to 47968 "horizontal" and "vertical." Replace those terms with "inline direction" and "block direction." 47969 47970 * rendering/InlineFlowBox.cpp: 47971 (WebCore::InlineFlowBox::placeBoxesInInlineDirection): 47972 (WebCore::InlineFlowBox::placeBoxesInBlockDirection): 47973 (WebCore::InlineFlowBox::computeBlockDirectionOverflow): 47974 * rendering/InlineFlowBox.h: 47975 (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions): 47976 (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions): 47977 * rendering/RenderBlock.h: 47978 * rendering/RenderBlockLineLayout.cpp: 47979 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): 47980 (WebCore::RenderBlock::computeBlockDirectionPositionsForLine): 47981 (WebCore::RenderBlock::layoutInlineChildren): 47982 * rendering/RootInlineBox.cpp: 47983 (WebCore::RootInlineBox::alignBoxesInBlockDirection): 47984 * rendering/RootInlineBox.h: 47985 47986 2010-09-23 Andrew Wilson <atwilson (a] chromium.org> 47987 47988 Unreviewed, rolling out r68197. 47989 http://trac.webkit.org/changeset/68197 47990 https://bugs.webkit.org/show_bug.cgi?id=46344 47991 47992 Breaks 47993 47994 * WebCore.exp.in: 47995 * bindings/js/JSDeviceMotionEventCustom.cpp: 47996 (WebCore::JSDeviceMotionEvent::xAcceleration): 47997 (WebCore::JSDeviceMotionEvent::yAcceleration): 47998 (WebCore::JSDeviceMotionEvent::zAcceleration): 47999 (WebCore::JSDeviceMotionEvent::xRotationRate): 48000 (WebCore::JSDeviceMotionEvent::yRotationRate): 48001 (WebCore::JSDeviceMotionEvent::zRotationRate): 48002 (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): 48003 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 48004 (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter): 48005 (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter): 48006 (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter): 48007 (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter): 48008 (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter): 48009 (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter): 48010 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 48011 * dom/DeviceMotionData.cpp: 48012 (WebCore::DeviceMotionData::create): 48013 (WebCore::DeviceMotionData::DeviceMotionData): 48014 * dom/DeviceMotionData.h: 48015 (WebCore::DeviceMotionData::xAcceleration): 48016 (WebCore::DeviceMotionData::yAcceleration): 48017 (WebCore::DeviceMotionData::zAcceleration): 48018 (WebCore::DeviceMotionData::xRotationRate): 48019 (WebCore::DeviceMotionData::yRotationRate): 48020 (WebCore::DeviceMotionData::zRotationRate): 48021 (WebCore::DeviceMotionData::canProvideXAcceleration): 48022 (WebCore::DeviceMotionData::canProvideYAcceleration): 48023 (WebCore::DeviceMotionData::canProvideZAcceleration): 48024 (WebCore::DeviceMotionData::canProvideXRotationRate): 48025 (WebCore::DeviceMotionData::canProvideYRotationRate): 48026 (WebCore::DeviceMotionData::canProvideZRotationRate): 48027 * dom/DeviceMotionEvent.idl: 48028 48029 2010-09-23 David Hyatt <hyatt (a] apple.com> 48030 48031 Reviewed by Adele Peterson. 48032 48033 https://bugs.webkit.org/show_bug.cgi?id=46403, convert the margin/border/padding accessors 48034 to be logical. 48035 48036 * rendering/InlineFlowBox.cpp: 48037 (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth): 48038 (WebCore::InlineFlowBox::placeBoxesHorizontally): 48039 (WebCore::InlineFlowBox::paintBoxShadow): 48040 (WebCore::InlineFlowBox::paintBoxDecorations): 48041 (WebCore::InlineFlowBox::paintTextDecorations): 48042 * rendering/InlineFlowBox.h: 48043 (WebCore::InlineFlowBox::InlineFlowBox): 48044 (WebCore::InlineFlowBox::marginBorderPaddingLogicalLeft): 48045 (WebCore::InlineFlowBox::marginBorderPaddingLogicalRight): 48046 (WebCore::InlineFlowBox::marginLogicalLeft): 48047 (WebCore::InlineFlowBox::marginLogicalRight): 48048 (WebCore::InlineFlowBox::borderLogicalLeft): 48049 (WebCore::InlineFlowBox::borderLogicalRight): 48050 (WebCore::InlineFlowBox::paddingLogicalLeft): 48051 (WebCore::InlineFlowBox::paddingLogicalRight): 48052 (WebCore::InlineFlowBox::includeLogicalLeftEdge): 48053 (WebCore::InlineFlowBox::includeLogicalRightEdge): 48054 (WebCore::InlineFlowBox::setEdges): 48055 * rendering/RenderBlockLineLayout.cpp: 48056 (WebCore::RenderBlock::computeHorizontalPositionsForLine): 48057 * rendering/RenderBox.cpp: 48058 (WebCore::RenderBox::containingBlockWidthForPositioned): 48059 (WebCore::RenderBox::calcAbsoluteHorizontalValues): 48060 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): 48061 * rendering/RenderBoxModelObject.cpp: 48062 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 48063 48064 2010-09-23 Jeff Schiller <jeffschiller (a] google.com> 48065 48066 Reviewed by David Hyatt. 48067 48068 Ensure that SVG documents included by reference (object, iframe, embed) have transparent 48069 backgrounds (not white). https://bugs.webkit.org/show_bug.cgi?id=10687 48070 48071 Test: svg/in-html/by-reference.html 48072 48073 * dom/Document.cpp: 48074 (WebCore::Document::hasSVGRootNode): 48075 * dom/Document.h: 48076 (WebCore::Document::hasSVGRootNode): 48077 * rendering/RenderBoxModelObject.cpp: 48078 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 48079 48080 2010-09-23 Hans Wennborg <hans (a] chromium.org> 48081 48082 Reviewed by Simon Fraser. 48083 48084 Update DeviceMotionEvent to spec 48085 https://bugs.webkit.org/show_bug.cgi?id=46344 48086 48087 The spec has changed: the DeviceMotionEvent attributes accelerationX, 48088 accelerationY, etc. have been baked into an 'acceleration' attribute 48089 which returns an object with x, y, and z values. Likewise for the 48090 rotation rate. The 'accelerationIncludingGravity' attribute is new. 48091 48092 * WebCore.exp.in: 48093 The DeviceMotionData::create member function has changed. Also export 48094 create functions for DeviceMotionData::Acceleration and RotationRate. 48095 48096 * bindings/js/JSDeviceMotionEventCustom.cpp: 48097 (WebCore::JSDeviceMotionEvent::acceleration): 48098 (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity): 48099 (WebCore::JSDeviceMotionEvent::rotationRate): 48100 (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent): 48101 Manually create and return objects with the right attributes for 48102 acceleration, accelerationIncludingGravity, and rotationRate. 48103 When creating the DeviceMotionData object in initDeviceMotionEvent, 48104 accept any input objects that have the right attributes. 48105 48106 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 48107 (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter): 48108 (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter): 48109 (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter): 48110 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 48111 V8 counterpart to the JSC code above. 48112 48113 * dom/DeviceMotionData.cpp: 48114 (WebCore::DeviceMotionData::Acceleration::create): 48115 (WebCore::DeviceMotionData::Acceleration::Acceleration): 48116 (WebCore::DeviceMotionData::RotationRate::create): 48117 (WebCore::DeviceMotionData::RotationRate::RotationRate): 48118 (WebCore::DeviceMotionData::create): 48119 (WebCore::DeviceMotionData::DeviceMotionData): 48120 * dom/DeviceMotionData.h: 48121 (WebCore::DeviceMotionData::Acceleration::canProvideX): 48122 (WebCore::DeviceMotionData::Acceleration::canProvideY): 48123 (WebCore::DeviceMotionData::Acceleration::canProvideZ): 48124 (WebCore::DeviceMotionData::Acceleration::x): 48125 (WebCore::DeviceMotionData::Acceleration::y): 48126 (WebCore::DeviceMotionData::Acceleration::z): 48127 (WebCore::DeviceMotionData::RotationRate::canProvideAlpha): 48128 (WebCore::DeviceMotionData::RotationRate::canProvideBeta): 48129 (WebCore::DeviceMotionData::RotationRate::canProvideGamma): 48130 (WebCore::DeviceMotionData::RotationRate::alpha): 48131 (WebCore::DeviceMotionData::RotationRate::beta): 48132 (WebCore::DeviceMotionData::RotationRate::gamma): 48133 (WebCore::DeviceMotionData::acceleration): 48134 (WebCore::DeviceMotionData::accelerationIncludingGravity): 48135 (WebCore::DeviceMotionData::rotationRate): 48136 Add member classes Acceleration and RotationRate to DeviceMotionData. 48137 48138 * dom/DeviceMotionEvent.idl: 48139 Update according to the spec. Acceleration and RotationRate need not 48140 be backed by native classes. 48141 48142 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48143 48144 Reviewed by Adam Roben. 48145 48146 Set synchronous handle in ResourceHandleWin 48147 https://bugs.webkit.org/show_bug.cgi?id=46395 48148 48149 When loading synchronous network resources, we need to use a synchronous internet handle. 48150 48151 * platform/network/ResourceHandle.h: 48152 * platform/network/win/ResourceHandleWin.cpp: 48153 (WebCore::ResourceHandle::loadResourceSynchronously): 48154 (WebCore::ResourceHandle::setSynchronousInternetHandle): 48155 48156 2010-09-23 Alexey Proskuryakov <ap (a] apple.com> 48157 48158 Reviewed by Darin Adler. 48159 48160 https://bugs.webkit.org/show_bug.cgi?id=46326 48161 Crash when trying to create a NodeIterator rooted at a document-less DocumentType node 48162 48163 Test: fast/dom/node-iterator-with-doctype-root.html 48164 48165 * dom/Document.cpp: (WebCore::Document::detachNodeIterator): Added a comment explaining that 48166 attach/detach may not always be paired. 48167 48168 * dom/NodeIterator.cpp: 48169 (WebCore::NodeIterator::NodeIterator): Don't try to register with the document if there is none. 48170 (WebCore::NodeIterator::~NodeIterator): Ditto. 48171 (WebCore::NodeIterator::detach): Ditto. 48172 (WebCore::NodeIterator::updateForNodeRemoval): There should be a document if we're getting a 48173 notification. 48174 48175 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48176 48177 Reviewed by Adam Roben. 48178 48179 Add synchronous loading for local files to ResourceHandleWin 48180 https://bugs.webkit.org/show_bug.cgi?id=46392 48181 48182 * platform/network/win/ResourceHandleWin.cpp: 48183 (WebCore::ResourceHandle::start): 48184 48185 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48186 48187 Reviewed by Adam Roben. 48188 48189 Remove (has|set)ReceivedResponse() from public ResourceHandleWin API 48190 https://bugs.webkit.org/show_bug.cgi?id=46391 48191 48192 There is no need for this functions to be public, so remove them. 48193 48194 * platform/network/ResourceHandle.h: 48195 * platform/network/win/ResourceHandleWin.cpp: 48196 (WebCore::ResourceHandle::onRequestComplete): 48197 48198 2010-09-23 David Hyatt <hyatt (a] apple.com> 48199 48200 Reviewed by Adele Peterson. 48201 48202 https://bugs.webkit.org/show_bug.cgi?id=46400 48203 48204 Add logicalLeft/Top getter/setters to line boxes. 48205 48206 * rendering/InlineBox.h: 48207 (WebCore::InlineBox::logicalLeft): 48208 (WebCore::InlineBox::setLogicalLeft): 48209 (WebCore::InlineBox::logicalTop): 48210 (WebCore::InlineBox::setLogicalTop): 48211 48212 2010-09-23 Matthew Delaney <mdelaney (a] apple.com> 48213 48214 Reviewed by Simon Fraser. 48215 48216 Reduce minimum DOMTimer interval 48217 https://bugs.webkit.org/show_bug.cgi?id=45362 48218 48219 Since the setInterval call is meant to reflect a global change for 48220 all pages' DOMTimers, it's misleading to have it be a method on a 48221 given page's settings' object. Thus, this patch changes the call to be static. 48222 48223 This simple change to using a static call instead of the page's setting's 48224 method doesn't warrant a test. 48225 48226 * page/Settings.h: Changed the setInterval call to be static. 48227 48228 2010-09-23 David Hyatt <hyatt (a] apple.com> 48229 48230 Reviewed by Dan Bernstein. 48231 48232 https://bugs.webkit.org/show_bug.cgi?id=46386, give line boxes a vertical bit so that it's easy to know 48233 the overall direction of the line without having to ask the containing block. 48234 48235 Also couldn't resist some cleanup. Tightened up the type of the renderobject passed to RootInlineBox's 48236 constructor to be a RenderBlock. Moved all the virtual logical height stuff outside of the SVG ifdef 48237 since TrailingFloatsRootInlineBox uses it and should work without SVG enabled. 48238 48239 * rendering/EllipsisBox.h: 48240 (WebCore::EllipsisBox::EllipsisBox): 48241 * rendering/InlineBox.h: 48242 (WebCore::InlineBox::InlineBox): 48243 (WebCore::InlineBox::isVertical): 48244 (WebCore::InlineBox::setIsVertical): 48245 * rendering/InlineFlowBox.cpp: 48246 (WebCore::InlineFlowBox::addToLine): 48247 * rendering/RootInlineBox.cpp: 48248 (WebCore::RootInlineBox::RootInlineBox): 48249 (WebCore::RootInlineBox::placeEllipsis): 48250 * rendering/RootInlineBox.h: 48251 * rendering/SVGRootInlineBox.h: 48252 (WebCore::SVGRootInlineBox::SVGRootInlineBox): 48253 * rendering/TrailingFloatsRootInlineBox.h: 48254 (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): 48255 48256 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48257 48258 Reviewed by Adam Roben. 48259 48260 Check for a valid ResourceHandleClient in ResourceHandleWin 48261 https://bugs.webkit.org/show_bug.cgi?id=46389 48262 48263 * platform/network/win/ResourceHandleWin.cpp: 48264 (WebCore::ResourceHandle::onRequestComplete): Add checks to ensure client() is not 0. 48265 48266 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48267 48268 Reviewed by Adam Roben. 48269 48270 Fix ResourceHandleWin::cancel() for network resources 48271 https://bugs.webkit.org/show_bug.cgi?id=46383 48272 48273 * platform/network/win/ResourceHandleWin.cpp: 48274 (WebCore::ResourceHandle::onRequestComplete): Check it requestHandle is not 0. 48275 (WebCore::ResourceHandle::cancel): Set requestHandle to 0. 48276 48277 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48278 48279 Reviewed by Adam Roben. 48280 48281 Add handling for form data and additional HTTP headers in ResourceHandleWin 48282 https://bugs.webkit.org/show_bug.cgi?id=46369 48283 48284 * platform/network/win/ResourceHandleWin.cpp: 48285 (WebCore::ResourceHandle::start): 48286 48287 2010-09-23 Eric Carlson <eric.carlson (a] apple.com> 48288 48289 Reviewed by Simon Fraser 48290 48291 'seeking' event should always fire 48292 https://bugs.webkit.org/show_bug.cgi?id=45694 48293 48294 Update seek algorithm to match current spec. 48295 48296 * html/HTMLMediaElement.cpp: 48297 (WebCore::HTMLMediaElement::setReadyState): Don't need to fire 'seeking' event here. 48298 (WebCore::HTMLMediaElement::seek): Always fire 'seeking'. Update comments. 48299 (WebCore::HTMLMediaElement::finishSeek): Update comments. 48300 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto. 48301 48302 2010-09-23 Eric Uhrhane <ericu (a] chromium.org> 48303 48304 Reviewed by David Levin. 48305 48306 Rename FileWriterClient to AsyncFileWriterClient. 48307 https://bugs.webkit.org/show_bug.cgi?id=46325 48308 48309 * GNUmakefile.am: 48310 * WebCore.gypi: 48311 * WebCore.vcproj/WebCore.vcproj: 48312 * WebCore.xcodeproj/project.pbxproj: 48313 * fileapi/AsyncFileWriter.h: 48314 * fileapi/AsyncFileWriterClient.h: Copied from WebCore/fileapi/FileWriterClient.h. 48315 * fileapi/FileWriter.h: 48316 * fileapi/FileWriterClient.h: Removed. 48317 * platform/AsyncFileSystem.h: 48318 48319 2010-09-23 David Hyatt <hyatt (a] apple.com> 48320 48321 Reviewed by Dan Bernstein. 48322 48323 https://bugs.webkit.org/show_bug.cgi?id=46378, rename width/height on line boxes to logicalWidth/logicalHeight. 48324 48325 * editing/visible_units.cpp: 48326 (WebCore::previousLinePosition): 48327 (WebCore::nextLinePosition): 48328 * rendering/EllipsisBox.cpp: 48329 (WebCore::EllipsisBox::paint): 48330 (WebCore::EllipsisBox::paintSelection): 48331 (WebCore::EllipsisBox::nodeAtPoint): 48332 * rendering/InlineBox.cpp: 48333 (WebCore::InlineBox::logicalHeight): 48334 (WebCore::InlineBox::canAccommodateEllipsis): 48335 * rendering/InlineBox.h: 48336 (WebCore::InlineBox::InlineBox): 48337 (WebCore::InlineBox::hasVirtualLogicalHeight): 48338 (WebCore::InlineBox::setHasVirtualLogicalHeight): 48339 (WebCore::InlineBox::virtualLogicalHeight): 48340 (WebCore::InlineBox::setLogicalWidth): 48341 (WebCore::InlineBox::logicalWidth): 48342 * rendering/InlineFlowBox.cpp: 48343 (WebCore::InlineFlowBox::placeBoxesHorizontally): 48344 (WebCore::InlineFlowBox::placeBoxesVertically): 48345 (WebCore::InlineFlowBox::computeVerticalOverflow): 48346 (WebCore::InlineFlowBox::nodeAtPoint): 48347 (WebCore::InlineFlowBox::paintFillLayer): 48348 (WebCore::InlineFlowBox::paintBoxDecorations): 48349 (WebCore::InlineFlowBox::paintMask): 48350 (WebCore::InlineFlowBox::paintTextDecorations): 48351 (WebCore::InlineFlowBox::placeEllipsisBox): 48352 * rendering/InlineFlowBox.h: 48353 (WebCore::InlineFlowBox::visibleOverflowRect): 48354 (WebCore::InlineFlowBox::bottomLayoutOverflow): 48355 (WebCore::InlineFlowBox::rightLayoutOverflow): 48356 (WebCore::InlineFlowBox::layoutOverflowRect): 48357 (WebCore::InlineFlowBox::bottomVisualOverflow): 48358 (WebCore::InlineFlowBox::rightVisualOverflow): 48359 (WebCore::InlineFlowBox::visualOverflowRect): 48360 (WebCore::InlineFlowBox::setHorizontalOverflowPositions): 48361 (WebCore::InlineFlowBox::setVerticalOverflowPositions): 48362 * rendering/InlineTextBox.cpp: 48363 (WebCore::InlineTextBox::selectionRect): 48364 (WebCore::InlineTextBox::placeEllipsisBox): 48365 (WebCore::InlineTextBox::nodeAtPoint): 48366 (WebCore::InlineTextBox::paint): 48367 (WebCore::InlineTextBox::paintSelection): 48368 (WebCore::InlineTextBox::paintCustomHighlight): 48369 (WebCore::InlineTextBox::paintDecoration): 48370 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): 48371 (WebCore::InlineTextBox::paintTextMatchMarker): 48372 (WebCore::InlineTextBox::paintCompositionUnderline): 48373 * rendering/InlineTextBox.h: 48374 (WebCore::InlineTextBox::calculateBoundaries): 48375 (WebCore::InlineTextBox::setSpaceAdd): 48376 * rendering/RenderBlock.cpp: 48377 (WebCore::RenderBlock::paintEllipsisBoxes): 48378 (WebCore::RenderBlock::rightmostPosition): 48379 (WebCore::RenderBlock::adjustForBorderFit): 48380 (WebCore::RenderBlock::addFocusRingRects): 48381 * rendering/RenderBlockLineLayout.cpp: 48382 (WebCore::RenderBlock::computeHorizontalPositionsForLine): 48383 (WebCore::RenderBlock::checkLinesForTextOverflow): 48384 * rendering/RenderBox.cpp: 48385 (WebCore::RenderBox::paintCustomHighlight): 48386 (WebCore::RenderBox::containingBlockWidthForPositioned): 48387 * rendering/RenderFlexibleBox.cpp: 48388 (WebCore::RenderFlexibleBox::applyLineClamp): 48389 * rendering/RenderInline.cpp: 48390 (WebCore::RenderInline::absoluteRects): 48391 (WebCore::RenderInline::absoluteQuads): 48392 (WebCore::RenderInline::linesBoundingBox): 48393 (WebCore::RenderInline::addFocusRingRects): 48394 (WebCore::RenderInline::paintOutline): 48395 * rendering/RenderSVGInline.cpp: 48396 (WebCore::RenderSVGInline::createInlineFlowBox): 48397 (WebCore::RenderSVGInline::absoluteQuads): 48398 * rendering/RenderSVGInlineText.cpp: 48399 (WebCore::RenderSVGInlineText::createTextBox): 48400 * rendering/RenderSVGText.cpp: 48401 (WebCore::RenderSVGText::createRootInlineBox): 48402 * rendering/RenderText.cpp: 48403 (WebCore::RenderText::absoluteRects): 48404 (WebCore::RenderText::absoluteRectsForRange): 48405 (WebCore::RenderText::absoluteQuadsForRange): 48406 (WebCore::RenderText::positionForPoint): 48407 (WebCore::RenderText::localCaretRect): 48408 (WebCore::RenderText::linesBoundingBox): 48409 * rendering/RenderTreeAsText.cpp: 48410 (WebCore::writeTextRun): 48411 * rendering/RootInlineBox.cpp: 48412 (WebCore::RootInlineBox::canAccommodateEllipsis): 48413 (WebCore::RootInlineBox::placeEllipsis): 48414 (WebCore::RootInlineBox::addHighlightOverflow): 48415 (WebCore::RootInlineBox::paintCustomHighlight): 48416 (WebCore::RootInlineBox::fillLineSelectionGap): 48417 (WebCore::RootInlineBox::closestLeafChildForXPos): 48418 * rendering/SVGInlineFlowBox.h: 48419 (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): 48420 (WebCore::SVGInlineFlowBox::virtualLogicalHeight): 48421 (WebCore::SVGInlineFlowBox::setLogicalHeight): 48422 * rendering/SVGInlineTextBox.cpp: 48423 (WebCore::SVGInlineTextBox::SVGInlineTextBox): 48424 * rendering/SVGInlineTextBox.h: 48425 (WebCore::SVGInlineTextBox::virtualLogicalHeight): 48426 (WebCore::SVGInlineTextBox::setLogicalHeight): 48427 (WebCore::SVGInlineTextBox::selectionHeight): 48428 * rendering/SVGRenderTreeAsText.cpp: 48429 (WebCore::writeRenderSVGTextBox): 48430 * rendering/SVGRootInlineBox.cpp: 48431 (WebCore::SVGRootInlineBox::layoutChildBoxes): 48432 (WebCore::SVGRootInlineBox::layoutRootBox): 48433 * rendering/SVGRootInlineBox.h: 48434 (WebCore::SVGRootInlineBox::SVGRootInlineBox): 48435 (WebCore::SVGRootInlineBox::virtualLogicalHeight): 48436 (WebCore::SVGRootInlineBox::setLogicalHeight): 48437 * rendering/TrailingFloatsRootInlineBox.h: 48438 (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): 48439 (WebCore::TrailingFloatsRootInlineBox::virtualLogicalHeight): 48440 48441 2010-09-23 Matthew Delaney <mdelaney (a] apple.com> 48442 48443 Reviewed by Oliver Hunt. 48444 48445 context.drawImage with (source rect's height) = -(input image's native height) draws nothing 48446 https://bugs.webkit.org/show_bug.cgi?id=46243 48447 48448 This patch changes canvasrenderingcontext2d's drawImage with an image element to 48449 normalize the source and dest rects to acheive the desired canvas spec behavior 48450 of allowing negative widths and heights that don't cause flipping and fix the 48451 adverse behavior of specifying a source rect height of negative the source image's height 48452 48453 Tests: canvas/philip/tests/2d.drawImage.negativeSourceHeight.html 48454 canvas/philip/tests/2d.drawImage.negativeSourceHeight2.html 48455 canvas/philip/tests/2d.drawImage.negativeSourceHeightAndWidth.html 48456 48457 * html/canvas/CanvasRenderingContext2D.cpp: Normalize rects in drawImage before calling 48458 lower level draw calls. 48459 48460 2010-09-23 Renata Hodovan <reni (a] inf.u-szeged.hu> 48461 48462 Reviewed by Dirk Schulze. 48463 48464 SVGFEMorphologyElement doesn't support dynamic invalidation, when attributes change. 48465 https://bugs.webkit.org/show_bug.cgi?id=46363 48466 The patch also implements the simple setRadius method. 48467 48468 Tests: svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr.html 48469 svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr.html 48470 svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html 48471 svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop.html 48472 svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop.html 48473 svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call.html 48474 48475 * svg/SVGFEMorphologyElement.cpp: 48476 (WebCore::SVGFEMorphologyElement::setRadius): 48477 (WebCore::SVGFEMorphologyElement::svgAttributeChanged): 48478 * svg/SVGFEMorphologyElement.h: 48479 48480 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48481 48482 Reviewed by Adam Roben. 48483 48484 Add synchronous loading for network resources to ResourceHandleWin 48485 https://bugs.webkit.org/show_bug.cgi?id=46364 48486 48487 Use return value of onRequestComplete() to indicate that an additional 48488 call to it is required for receiving remaining network data. 48489 48490 * platform/network/ResourceHandle.h: 48491 * platform/network/win/ResourceHandleWin.cpp: 48492 (WebCore::ResourceHandle::onRequestComplete): 48493 (WebCore::ResourceHandle::start): 48494 48495 2010-09-23 Nate Chapin <japhet (a] chromium.org> 48496 48497 Reviewed by Darin Fisher. 48498 48499 Implement <a ping> (disabled by default). 48500 https://bugs.webkit.org/show_bug.cgi?id=30458 48501 48502 Tests: http/tests/navigation/ping-cross-origin-from-https.html 48503 http/tests/navigation/ping-cross-origin.html 48504 http/tests/navigation/ping-same-origin.html 48505 48506 * html/HTMLAnchorElement.cpp: 48507 (WebCore::HTMLAnchorElement::defaultEventHandler): 48508 (WebCore::HTMLAnchorElement::sendPings): 48509 * html/HTMLAnchorElement.h: 48510 * html/HTMLAttributeNames.in: 48511 * loader/PingLoader.cpp: 48512 (WebCore::PingLoader::sendPing): Set ping-specific headers. 48513 (WebCore::PingLoader::PingLoader): 48514 * loader/PingLoader.h: 48515 (WebCore::PingLoader::timeout): Ensure pings eventually timeout, since 48516 the normal cancel mechanism can't stop them. 48517 * page/Settings.cpp: 48518 * page/Settings.h: Add hyperlinkAuditingEnabled. 48519 48520 2010-09-23 Steve VanDeBogart <vandebo (a] chromium.org> 48521 48522 Reviewed by David Levin. 48523 48524 https://bugs.webkit.org/show_bug.cgi?id=46312 48525 48526 Use Skia's SkSafeRef/SkSafeUnref functions instead of safeRef/safeUnref. 48527 48528 * platform/graphics/chromium/FontLinux.cpp: 48529 (WebCore::Font::drawGlyphs): 48530 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 48531 (WebCore::FontPlatformData::FontPlatformData): 48532 (WebCore::FontPlatformData::~FontPlatformData): 48533 * platform/graphics/skia/GradientSkia.cpp: 48534 (WebCore::Gradient::platformDestroy): 48535 * platform/graphics/skia/PatternSkia.cpp: 48536 (WebCore::Pattern::platformDestroy): 48537 * platform/graphics/skia/PlatformContextSkia.cpp: 48538 (WebCore::PlatformContextSkia::State::State): 48539 (WebCore::PlatformContextSkia::State::~State): 48540 (WebCore::PlatformContextSkia::drawRect): 48541 (WebCore::PlatformContextSkia::setStrokeShader): 48542 (WebCore::PlatformContextSkia::setFillShader): 48543 (WebCore::PlatformContextSkia::setDashPathEffect): 48544 * platform/graphics/skia/SkiaFontWin.cpp: 48545 (WebCore::paintSkiaText): 48546 48547 2010-09-23 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 48548 48549 Reviewed by Csaba Osztrogonc. 48550 48551 Fix warnings regarding print format in 64 bits 48552 https://bugs.webkit.org/show_bug.cgi?id=46357 48553 48554 Use inttypes.h in order to have portable print formats across 32 and 48555 64 bits. 48556 48557 * platform/sql/SQLiteFileSystem.cpp: 48558 (WebCore::SQLiteFileSystem::getFileNameForNewDatabase): 48559 48560 2010-09-23 Chris Rogers <crogers (a] google.com> 48561 48562 Reviewed by Kenneth Russell. 48563 48564 Add AudioContext files 48565 https://bugs.webkit.org/show_bug.cgi?id=44890 48566 48567 No new tests since audio API is not yet implemented. 48568 48569 * webaudio/AudioContext.cpp: Added. 48570 (WebCore::AudioContext::createAudioRequest): 48571 (WebCore::AudioContext::create): 48572 (WebCore::AudioContext::AudioContext): 48573 (WebCore::AudioContext::~AudioContext): 48574 (WebCore::AudioContext::lazyInitialize): 48575 (WebCore::AudioContext::uninitialize): 48576 (WebCore::AudioContext::isInitialized): 48577 (WebCore::AudioContext::isRunnable): 48578 (WebCore::AudioContext::stop): 48579 (WebCore::AudioContext::document): 48580 (WebCore::AudioContext::hasDocument): 48581 (WebCore::AudioContext::refBuffer): 48582 (WebCore::AudioContext::createBuffer): 48583 (WebCore::AudioContext::createBufferSource): 48584 (WebCore::AudioContext::createJavaScriptNode): 48585 (WebCore::AudioContext::createLowPass2Filter): 48586 (WebCore::AudioContext::createHighPass2Filter): 48587 (WebCore::AudioContext::createPanner): 48588 (WebCore::AudioContext::createConvolver): 48589 (WebCore::AudioContext::createAnalyser): 48590 (WebCore::AudioContext::createGainNode): 48591 (WebCore::AudioContext::createDelayNode): 48592 (WebCore::AudioContext::createChannelSplitter): 48593 (WebCore::AudioContext::createChannelMerger): 48594 (WebCore::AudioContext::notifyNodeFinishedProcessing): 48595 (WebCore::AudioContext::derefFinishedSourceNodes): 48596 (WebCore::AudioContext::refNode): 48597 (WebCore::AudioContext::derefNode): 48598 (WebCore::AudioContext::derefUnfinishedSourceNodes): 48599 (WebCore::AudioContext::lock): 48600 (WebCore::AudioContext::tryLock): 48601 (WebCore::AudioContext::unlock): 48602 (WebCore::AudioContext::isAudioThread): 48603 (WebCore::AudioContext::isGraphOwner): 48604 (WebCore::AudioContext::addDeferredFinishDeref): 48605 (WebCore::AudioContext::handlePostRenderTasks): 48606 (WebCore::AudioContext::handleDeferredFinishDerefs): 48607 (WebCore::AudioContext::markForDeletion): 48608 (WebCore::AudioContext::deleteMarkedNodes): 48609 * webaudio/AudioContext.h: Added. 48610 (WebCore::AudioContext::destination): 48611 (WebCore::AudioContext::currentTime): 48612 (WebCore::AudioContext::sampleRate): 48613 (WebCore::AudioContext::listener): 48614 (WebCore::AudioContext::temporaryMonoBus): 48615 (WebCore::AudioContext::temporaryStereoBus): 48616 (WebCore::AudioContext::incrementConnectionCount): 48617 (WebCore::AudioContext::connectionCount): 48618 (WebCore::AudioContext::setAudioThread): 48619 (WebCore::AudioContext::audioThread): 48620 (WebCore::AudioContext::isAudioThreadFinished): 48621 (WebCore::AudioContext::AutoLocker::AutoLocker): 48622 (WebCore::AudioContext::AutoLocker::~AutoLocker): 48623 (WebCore::AudioContext::RefInfo::RefInfo): 48624 * webaudio/AudioContext.idl: Added. 48625 48626 2010-09-23 Jeremy Orlow <jorlow (a] chromium.org> 48627 48628 Reviewed by Steve Block. 48629 48630 IndexedDB shouldn't crash on invalid index names 48631 https://bugs.webkit.org/show_bug.cgi?id=46362 48632 48633 For now, return null. In a later patch, we'll do proper exception raising. 48634 48635 * storage/IDBObjectStore.cpp: 48636 (WebCore::IDBObjectStore::index): 48637 48638 2010-09-23 Abhishek Arya <inferno (a] chromium.org> 48639 48640 Reviewed by Dave Hyatt. 48641 48642 Fix the memory safety issue by checking containerObject is a RenderBox 48643 before doing the transforms. 48644 https://bugs.webkit.org/show_bug.cgi?id=46365 48645 48646 Test: compositing/overflow/get-transform-from-non-box-container.html 48647 48648 * rendering/RenderObject.cpp: 48649 (WebCore::RenderObject::getTransformFromContainer): 48650 48651 2010-09-23 David Hyatt <hyatt (a] apple.com> 48652 48653 Reviewed by Simon Fraser. 48654 48655 https://bugs.webkit.org/show_bug.cgi?id=46314. 48656 48657 The RenderView's block-flow should match the root element's block-flow. When we create (or re-create) the style for the document, take 48658 the block-flow from the document element's style and use it if it's available. 48659 48660 Also patch styleDidChange so that if the block-flow changes dynamically after we have already made the document style, we'll propagate 48661 the change back up to the RenderView and have it do a relayout. 48662 48663 No tests possible yet, since you can't see the document's style anywhere, and block-flow isn't doing anything to affect layout 48664 yet. 48665 48666 * css/CSSStyleSelector.cpp: 48667 (WebCore::CSSStyleSelector::styleForDocument): 48668 * rendering/RenderBox.cpp: 48669 (WebCore::RenderBox::styleDidChange): 48670 48671 2010-09-23 Pavel Podivilov <podivilov (a] chromium.org> 48672 48673 Reviewed by Yury Semikhatsky. 48674 48675 Web Inspector: source frame popups shouldn't disappear when hovered 48676 https://bugs.webkit.org/show_bug.cgi?id=46358 48677 48678 * inspector/front-end/SourceFrame.js: 48679 (WebInspector.SourceFrame.prototype._mouseMove): 48680 48681 2010-09-23 Mario Sanchez Prada <msanchez (a] igalia.com> 48682 48683 Reviewed by Chris Fleizach. 48684 48685 [Regression][Gtk] Left and Right Arrows no longer function when caret browsing is enabled 48686 https://bugs.webkit.org/show_bug.cgi?id=45375 48687 48688 Consider caret browsing for Move commands. 48689 48690 Test: platform/gtk/editing/selection/caret-mode-left-right-arrows.html 48691 48692 * editing/EditorCommand.cpp: 48693 (WebCore::createCommandMap): Use "caret browsing aware functions" 48694 as isEnabled() function for those commands moving the caret 48695 forward and backward across characters, words, lines or paragraphs, 48696 not just left and right, as it was the case so far. 48697 48698 2010-09-23 Brad Moore <bradm (a] apple.com> 48699 48700 Reviewed by Dan Bernstein. 48701 48702 Address a remaining discrepancy in piecewise text measurement 48703 https://bugs.webkit.org/show_bug.cgi?id=45796 48704 48705 Don't include always-integral space widths in the floating point accumulator designed 48706 to minimize precision loss. This brings whole-string measurement in line with piecewise 48707 text measurement when dealing with fonts with fractional advances. 48708 48709 * platform/graphics/WidthIterator.cpp: 48710 (WebCore::WidthIterator::advance): Change the associativity of width addition to minimize precision loss. 48711 48712 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48713 48714 Reviewed by Adam Roben. 48715 48716 Cleanup network communication code in ResourceHandleWin 48717 https://bugs.webkit.org/show_bug.cgi?id=46200 48718 48719 Add logic for request handling directly into ResourceHandle::start and fix style. 48720 Use Unicode instead of ASCII Windows API functions. 48721 48722 * platform/network/ResourceHandleInternal.h: 48723 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 48724 * platform/network/win/ResourceHandleWin.cpp: 48725 (WebCore::ResourceHandle::onRequestComplete): 48726 (WebCore::ResourceHandle::start): 48727 48728 2010-09-23 Luiz Agostini <luiz.agostini (a] openbossa.org> 48729 48730 Reviewed by Andreas Kling. 48731 48732 Invalid assertion in ScriptCallback 48733 https://bugs.webkit.org/show_bug.cgi?id=46348 48734 48735 Removing invalid ASSERT from method ScriptCallback::call(). 48736 48737 * bindings/js/ScriptFunctionCall.cpp: 48738 (WebCore::ScriptCallback::call): 48739 48740 2010-09-23 Martin Robinson <mrobinson (a] igalia.com> 48741 48742 Reviewed by Ariya Hidayat. 48743 48744 [Cairo] Generalize ContextShadow from the Qt port and use it for shadow code 48745 https://bugs.webkit.org/show_bug.cgi?id=45599 48746 48747 Make ContextShadow platform-independent and add a Cairo implementation. This is currently 48748 disabled for Cairo, but will be enabled in a followup patch with new baselines. 48749 48750 No new tests as this does not change functionality. 48751 48752 * GNUmakefile.am: Update source lists. 48753 * WebCore.pro: Update source lists. 48754 * platform/graphics/ContextShadow.cpp: Added. A generalized version of Qt's ContextShadow. 48755 (WebCore::ContextShadow::ContextShadow): 48756 (WebCore::ContextShadow::clear): 48757 (WebCore::ContextShadow::blurLayerImage): 48758 (WebCore::ContextShadow::calculateMinimalLayerRect): 48759 * platform/graphics/ContextShadow.h: Added. 48760 (WebCore::ContextShadow::offset): 48761 * platform/graphics/cairo/CairoUtilities.cpp: Added. 48762 (WebCore::setSourceRGBAFromColor): A utility to set the source RGBA on a Cairo surface from a WebCore color. 48763 * platform/graphics/cairo/CairoUtilities.h: Added. 48764 * platform/graphics/cairo/ContextShadowCairo.cpp: Added. 48765 (WebCore::purgeScratchBuffer): Static function to purge the shadow buffer. 48766 (WebCore::PurgeScratchBufferTimer::fired): Timer callback. 48767 (WebCore::scheduleScratchBufferPurge): Schedule's a WebCore timer to purge the shadow buffer. 48768 (WebCore::getScratchBuffer): Create or reuse the scratch buffer. 48769 (WebCore::ContextShadow::beginShadowLayer): Added. 48770 (WebCore::ContextShadow::endShadowLayer): Added. 48771 * platform/graphics/gtk/CairoUtilities.cpp: Removed. 48772 * platform/graphics/gtk/CairoUtilities.h: Removed. 48773 * platform/graphics/gtk/GdkCairoUtilities.cpp: Renamed from CairoUtilities.cpp. 48774 (getCairoSurfacePixel): 48775 (getGdkPixbufPixel): 48776 (cairoImageSurfaceToGdkPixbuf): 48777 * platform/graphics/gtk/GdkCairoUtilities.h: Added. 48778 * platform/graphics/gtk/ImageBufferGtk.cpp: 48779 * platform/graphics/gtk/ImageGtk.cpp: 48780 * platform/graphics/qt/ContextShadow.cpp: Removed. 48781 * platform/graphics/qt/ContextShadow.h: Removed. 48782 * platform/graphics/qt/ContextShadowQt.cpp: Added. Adapted from code originally in ContextShadow.cpp. 48783 (WebCore::ShadowBuffer::ShadowBuffer): 48784 (WebCore::ShadowBuffer::scratchImage): 48785 (WebCore::ShadowBuffer::schedulePurge): 48786 (WebCore::ShadowBuffer::timerEvent): 48787 (WebCore::ContextShadow::beginShadowLayer): 48788 (WebCore::ContextShadow::endShadowLayer): 48789 * platform/graphics/qt/FontQt.cpp: 48790 (WebCore::drawTextCommon): Updated to reflect new ContextShadow members. 48791 * platform/graphics/qt/GraphicsContextQt.cpp: 48792 (WebCore::GraphicsContextPlatformPrivate::hasShadow): Updated to reflect new ContextShadow members. 48793 (WebCore::GraphicsContext::strokeArc): Ditto. 48794 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 48795 (WebCore::GraphicsContext::fillPath): Ditto. 48796 (WebCore::GraphicsContext::strokePath): Ditto. 48797 (WebCore::GraphicsContext::fillRect): Ditto. 48798 (WebCore::GraphicsContext::fillRoundedRect): Ditto. 48799 (WebCore::GraphicsContext::setPlatformShadow): Ditto. 48800 48801 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48802 48803 Reviewed by Adam Roben. 48804 48805 Add internetStatusCallback to ResourceHandleWin. 48806 https://bugs.webkit.org/show_bug.cgi?id=46187 48807 48808 Add callback for asynchronous network transfer. 48809 48810 * platform/network/ResourceHandle.h: 48811 * platform/network/ResourceHandleInternal.h: 48812 * platform/network/win/ResourceHandleWin.cpp: 48813 (WebCore::callOnRedirect): 48814 (WebCore::callOnRequestComplete): 48815 (WebCore::ResourceHandle::internetStatusCallback): 48816 (WebCore::ResourceHandle::onRedirect): 48817 48818 2010-09-23 Andrei Popescu <andreip (a] google.com> 48819 48820 Reviewed by Jeremy Orlow. 48821 48822 IDBTransactionCoordinator contains a broken assertion. 48823 https://bugs.webkit.org/show_bug.cgi?id=46356 48824 48825 Remove the broken assertion. 48826 48827 * storage/IDBTransactionCoordinator.cpp: 48828 (WebCore::IDBTransactionCoordinator::processStartedTransactions): 48829 48830 2010-09-23 Pavel Podivilov <podivilov (a] chromium.org> 48831 48832 Reviewed by Pavel Feldman. 48833 48834 Web Inspector: highlight DOM nodes when navigating the DOM with keyboard 48835 https://bugs.webkit.org/show_bug.cgi?id=46346 48836 48837 * inspector/front-end/ElementsTreeOutline.js: 48838 (WebInspector.ElementsTreeElement.prototype.onselect): 48839 * inspector/front-end/treeoutline.js: 48840 (TreeOutline.prototype._treeKeyDown): 48841 (TreeElement.prototype.selectOnMouseDown): 48842 (TreeElement.prototype.select): 48843 48844 2010-09-23 Andrei Popescu <andreip (a] google.com> 48845 48846 Reviewed by Jeremy Orlow. 48847 48848 [Chromium] Build broken due to missing include in IDBTransactionBackendImpl.h 48849 https://bugs.webkit.org/show_bug.cgi?id=46352 48850 48851 No new tests needed, build fix. 48852 48853 * storage/IDBTransaction.cpp: 48854 (WebCore::IDBTransaction::objectStore): 48855 * storage/IDBTransactionBackendImpl.h: 48856 48857 2010-09-23 Andrei Popescu <andreip (a] google.com> 48858 48859 Reviewed by Jeremy Orlow. 48860 48861 IDBObjectStore::get should run in a transaction. 48862 https://bugs.webkit.org/show_bug.cgi?id=44700 48863 48864 Implements logic for running IDBObjectStore::get() in a transaction. 48865 Refactors the pending transaction monitor and the transaction coordinator 48866 to use pointers instead of transaction IDs. 48867 48868 * bindings/v8/V8Proxy.cpp: 48869 (WebCore::V8Proxy::didLeaveScriptContext): 48870 * storage/IDBCursorBackendImpl.cpp: 48871 * storage/IDBDatabase.cpp: 48872 (WebCore::IDBDatabase::objectStore): 48873 * storage/IDBDatabaseBackendImpl.cpp: 48874 (WebCore::IDBDatabaseBackendImpl::objectStore): 48875 * storage/IDBDatabaseBackendImpl.h: 48876 (WebCore::IDBDatabaseBackendImpl::transactionCoordinator): 48877 * storage/IDBFactoryBackendImpl.cpp: 48878 * storage/IDBFactoryBackendImpl.h: 48879 * storage/IDBFactoryBackendInterface.h: 48880 * storage/IDBObjectStore.cpp: 48881 (WebCore::IDBObjectStore::IDBObjectStore): 48882 (WebCore::IDBObjectStore::get): 48883 * storage/IDBObjectStore.h: 48884 (WebCore::IDBObjectStore::create): 48885 * storage/IDBObjectStoreBackendImpl.cpp: 48886 (WebCore::IDBTask::IDBTask): 48887 (WebCore::IDBTask::performTask): 48888 (WebCore::createTask): 48889 (WebCore::IDBObjectStoreBackendImpl::get): 48890 (WebCore::IDBObjectStoreBackendImpl::getInternal): 48891 * storage/IDBObjectStoreBackendImpl.h: 48892 * storage/IDBObjectStoreBackendInterface.h: 48893 * storage/IDBPendingTransactionMonitor.cpp: 48894 (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): 48895 (WebCore::IDBPendingTransactionMonitor::removePendingTransaction): 48896 (WebCore::IDBPendingTransactionMonitor::abortPendingTransactions): 48897 * storage/IDBPendingTransactionMonitor.h: 48898 * storage/IDBRequest.cpp: 48899 (WebCore::IDBRequest::IDBRequest): 48900 (WebCore::IDBRequest::~IDBRequest): 48901 (WebCore::IDBRequest::onSuccess): 48902 (WebCore::IDBRequest::timerFired): 48903 * storage/IDBRequest.h: 48904 (WebCore::IDBRequest::create): 48905 * storage/IDBTransaction.cpp: 48906 (WebCore::IDBTransaction::IDBTransaction): 48907 (WebCore::IDBTransaction::objectStore): 48908 * storage/IDBTransactionBackendImpl.cpp: 48909 (WebCore::IDBTransactionBackendImpl::create): 48910 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 48911 (WebCore::IDBTransactionBackendImpl::objectStore): 48912 (WebCore::IDBTransactionBackendImpl::scheduleTask): 48913 (WebCore::IDBTransactionBackendImpl::abort): 48914 (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents): 48915 (WebCore::IDBTransactionBackendImpl::run): 48916 (WebCore::IDBTransactionBackendImpl::start): 48917 (WebCore::IDBTransactionBackendImpl::commit): 48918 (WebCore::IDBTransactionBackendImpl::timerFired): 48919 * storage/IDBTransactionBackendImpl.h: 48920 (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl): 48921 (WebCore::IDBTransactionBackendImpl::isFinished): 48922 * storage/IDBTransactionBackendInterface.h: 48923 * storage/IDBTransactionCoordinator.cpp: 48924 (WebCore::IDBTransactionCoordinator::createTransaction): 48925 (WebCore::IDBTransactionCoordinator::didStartTransaction): 48926 (WebCore::IDBTransactionCoordinator::didFinishTransaction): 48927 (WebCore::IDBTransactionCoordinator::processStartedTransactions): 48928 * storage/IDBTransactionCoordinator.h: 48929 48930 2010-09-23 Patrick Gansterer <paroga (a] webkit.org> 48931 48932 Reviewed by Adam Roben. 48933 48934 [WINCE] Remove usage of MemoryManager 48935 https://bugs.webkit.org/show_bug.cgi?id=46206 48936 48937 MemoryManager does not provide any extra value, so remove it. 48938 48939 * page/wince/FrameWinCE.cpp: 48940 (WebCore::imageFromSelection): 48941 * platform/graphics/wince/PlatformPathWinCE.cpp: 48942 (WebCore::drawPolygons): 48943 48944 2010-09-23 Darin Adler <darin (a] apple.com> 48945 48946 Reviewed by Chris Fleizach. 48947 48948 media/video-controls-with-mutation-event-handler.html crashing 48949 https://bugs.webkit.org/show_bug.cgi?id=46169 48950 48951 * rendering/MediaControlElements.cpp: 48952 (WebCore::MediaControlInputElement::MediaControlInputElement): Don't take a type argument. 48953 We can't set the type until after the element is created beacuse of reference counting rules. 48954 (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Don't pass the type. 48955 (WebCore::MediaControlMuteButtonElement::create): Set the type. 48956 (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): More of the same. 48957 (WebCore::MediaControlPlayButtonElement::create): Ditto. 48958 (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Ditto. 48959 (WebCore::MediaControlSeekButtonElement::create): Ditto. 48960 (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto. 48961 (WebCore::MediaControlRewindButtonElement::create): Ditto. 48962 (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto. 48963 (WebCore::MediaControlReturnToRealtimeButtonElement::create): Ditto. 48964 (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Ditto. 48965 (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Ditto. 48966 (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Ditto. 48967 (WebCore::MediaControlTimelineElement::create): Ditto. 48968 (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): Ditto. 48969 (WebCore::MediaControlVolumeSliderElement::create): Ditto. 48970 (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Ditto. 48971 (WebCore::MediaControlFullscreenButtonElement::create): Ditto. 48972 48973 * rendering/MediaControlElements.h: Removed the type argument from the MediaControlInputElement 48974 constructor. 48975 48976 2010-09-22 Luke Macpherson <macpherson (a] chromium.org> 48977 48978 Reviewed by Alexey Proskuryakov. 48979 48980 Don't allow empty strings as tokens in xmlhttprequest, as per rfc2616 section 2.2. 48981 48982 XMLHttpRequest: setRequestHeader() does not throw SYNTAX_ERR exception if the header field name is empty 48983 https://bugs.webkit.org/show_bug.cgi?id=46151 48984 48985 Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-name.html 48986 48987 * xml/XMLHttpRequest.cpp: 48988 (WebCore::isValidToken): 48989 48990 2010-09-22 Kwang Yul Seo <skyul (a] company100.net> 48991 48992 Reviewed by Adam Barth. 48993 48994 [BREWMP] Enable touch events 48995 https://bugs.webkit.org/show_bug.cgi?id=46321 48996 48997 Enable TOUCH_EVENTS by porting PlatformTouchEvent and PlatformTouchPoint. 48998 Brew MP does not support multi touch, so enable only single touch for now. 48999 49000 * platform/PlatformTouchEvent.h: 49001 * platform/PlatformTouchPoint.h: 49002 * platform/brew/PlatformTouchEventBrew.cpp: Added. 49003 (WebCore::PlatformTouchEvent::PlatformTouchEvent): 49004 * platform/brew/PlatformTouchPointBrew.cpp: Added. 49005 (WebCore::PlatformTouchPoint::PlatformTouchPoint): 49006 49007 2010-09-22 Andy Estes <aestes (a] apple.com> 49008 49009 Reviewed by Darin Adler. 49010 49011 REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window 49012 https://bugs.webkit.org/show_bug.cgi?id=46334 49013 49014 * WebCore.exp.in: Export __ZN7WebCore27applicationIsMicrosoftMyDayEv. 49015 * platform/mac/RuntimeApplicationChecks.h: 49016 * platform/mac/RuntimeApplicationChecks.mm: 49017 (WebCore::applicationIsMicrosoftMyDay): Determine if the embeddding 49018 application is Microsoft My Day by checking the bundle identifier. 49019 49020 2010-09-22 Andy Estes <aestes (a] apple.com> 49021 49022 Rubber-stamped by Darin Adler. 49023 49024 Fix a typo and correct an inaccurate phrase in a comment. 49025 49026 * html/parser/HTMLTreeBuilder.cpp: 49027 (WebCore::HTMLTreeBuilder::processEndTag): 49028 49029 2010-09-22 Andy Estes <aestes (a] apple.com> 49030 49031 Reviewed by Adam Barth. 49032 49033 REGRESSION (r61285): <script /> parses differently in HTML5 49034 https://bugs.webkit.org/show_bug.cgi?id=42909 49035 49036 If pre-HTML5 parser quirks are enabled, the HTMLTreeBuilder should 49037 handle self-closing script tags like the old parser did. Specifically, 49038 "<script />" should be treated as "<script></script>". 49039 49040 * html/parser/HTMLDocumentParser.cpp: 49041 (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate 49042 HTMLTreeBuilder with the value of usePreHTML5ParserQuirks(). 49043 * html/parser/HTMLTreeBuilder.cpp: 49044 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 49045 (WebCore::HTMLTreeBuilder::processEndTag): If the tokenizer is not 49046 currently in DataState, this means that the current end token is fake 49047 and was created by the tree builder to handle a self-closing script tag. 49048 Assert that pre-HTML5 quirks are enabled and set the tokenizer's state 49049 to DataState in this case. 49050 (WebCore::HTMLTreeBuilder::processStartTagForInHead): If pre-HTML5 49051 parser quirks are enabled and the script tag is self-closing, create and 49052 procses a fake script end tag. 49053 * html/parser/HTMLTreeBuilder.h: 49054 (WebCore::HTMLTreeBuilder::create): 49055 49056 2010-09-22 Mihai Parparita <mihaip (a] chromium.org> 49057 49058 Reviewed by Darin Fisher. 49059 49060 [Chromium] User style layout tests don't pass on Chromium 49061 https://bugs.webkit.org/show_bug.cgi?id=46069 49062 49063 Instead of making resetUserStyleCacheInAllFrames be a no-op for 49064 Chromium, have it be controlled by a UserStyleInjectionTime enum. 49065 49066 Also move the UserStyleSheet::Level enum to be inside 49067 UserStyleSheetTypes for consistency. 49068 49069 * WebCore.exp.in: 49070 * dom/Document.cpp: 49071 (WebCore::Document::pageGroupUserSheets): 49072 * page/PageGroup.cpp: 49073 (WebCore::PageGroup::addUserStyleSheetToWorld): 49074 * page/PageGroup.h: 49075 * page/UserStyleSheet.h: 49076 (WebCore::UserStyleSheet::UserStyleSheet): 49077 (WebCore::UserStyleSheet::level): 49078 * page/UserStyleSheetTypes.h: 49079 49080 2010-09-22 Ruben <chromium (a] hybridsource.org> 49081 49082 Reviewed by Tony Chang. 49083 49084 [chromium] added ifdefs for FreeBSD support 49085 https://bugs.webkit.org/show_bug.cgi?id=46316 49086 49087 * bindings/js/JSInspectorFrontendHostCustom.cpp: 49088 (WebCore::JSInspectorFrontendHost::platform): 49089 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: 49090 (WebCore::V8InspectorFrontendHost::platformCallback): 49091 * dom/SelectElement.cpp: 49092 * loader/CachedFont.cpp: 49093 * page/EventHandler.cpp: 49094 * page/chromium/EventHandlerChromium.cpp: 49095 * platform/Scrollbar.cpp: 49096 * platform/chromium/ChromiumBridge.h: 49097 * platform/graphics/chromium/FontPlatformData.h: 49098 * platform/graphics/skia/FontCustomPlatformData.cpp: 49099 (WebCore::FontCustomPlatformData::~FontCustomPlatformData): 49100 (WebCore::FontCustomPlatformData::fontPlatformData): 49101 (WebCore::createFontCustomPlatformData): 49102 * platform/graphics/skia/FontCustomPlatformData.h: 49103 49104 2010-09-22 Rafael Antognolli <antognolli (a] profusion.mobi> 49105 49106 Unreviewed build fix. 49107 49108 [EFL] Fix build due to latest EFL (Edje) changes. 49109 https://bugs.webkit.org/show_bug.cgi?id=46317 49110 49111 Make the change int -> Edje_Load_Error (enum). 49112 49113 No new functionality, so no new tests. 49114 49115 * platform/efl/RenderThemeEfl.cpp: 49116 (WebCore::RenderThemeEfl::themePartCacheEntryReset): 49117 (WebCore::RenderThemeEfl::createEdje): 49118 (WebCore::RenderThemeEfl::applyPartDescriptions): 49119 * platform/efl/ScrollbarEfl.cpp: 49120 (ScrollbarEfl::setParent): 49121 49122 2010-09-22 Chris Fleizach <cfleizach (a] apple.com> 49123 49124 Reviewed by Darin Adler. 49125 49126 AX: aria-hidden change doesn't update the ax tree 49127 https://bugs.webkit.org/show_bug.cgi?id=45836 49128 49129 Test: accessibility/aria-hidden-update.html 49130 49131 * dom/Element.cpp: 49132 (WebCore::Element::updateAfterAttributeChanged): 49133 49134 2010-09-22 Kinuko Yasuda <kinuko (a] chromium.org> 49135 49136 Reviewed by Dumitru Daniliuc. 49137 49138 [FileSystem] Fix Flags handling in DirectoryEntry custom binding code 49139 https://bugs.webkit.org/show_bug.cgi?id=46028 49140 49141 Do not use adoptRef to get RefPtr from a raw pointer that is already 49142 adopted in toNative/toJS. 49143 49144 Test: fast/filesystem/flags-passing.html 49145 49146 * bindings/js/JSDirectoryEntryCustom.cpp: 49147 (WebCore::JSDirectoryEntry::getFile): 49148 (WebCore::JSDirectoryEntry::getDirectory): 49149 * bindings/v8/custom/V8DirectoryEntryCustom.cpp: 49150 (WebCore::V8DirectoryEntry::getDirectoryCallback): 49151 (WebCore::V8DirectoryEntry::getFileCallback): 49152 49153 2010-09-22 Jia Pu <jpu (a] apple.com> 49154 49155 Reviewed by Dan Bernstein. 49156 49157 Need to stop autocorrection panel timer when selection changes. 49158 https://bugs.webkit.org/show_bug.cgi?id=46201 49159 <rdar://problem/8441042> 49160 49161 * editing/Editor.cpp: 49162 (WebCore::Editor::appliedEditing): Stop correction timer after editing. 49163 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): When text checking is done for 49164 showing autocorrection panel, we suppress all corrections that are not at the end of 49165 text checking range. So that we don't replace other words while showing correction panel 49166 for the last word. 49167 (WebCore::Editor::stopCorrectionPanelTimer): Stop correction timer. 49168 49169 * editing/Editor.h: Added stopCorrectionPanelTimer() method. 49170 49171 2010-09-22 Eric Uhrhane <ericu (a] chromium.org> 49172 49173 Reviewed by Dumitru Daniliuc. 49174 49175 Add Chromium implementation for FileWriter 49176 https://bugs.webkit.org/show_bug.cgi?id=44361 49177 49178 No new tests; the implementation's not yet far enough along for that. 49179 49180 This makes a chain of contruction-and-linking-up for various sorts of 49181 FileWriter interfaces to call through to Chromium, and for various 49182 sorts of FileWriterClients to call back, with object ownership always 49183 pointing towards the Chromium API. That is, the DOM object owns an 49184 AsyncFileWriter, which owns its implementation object, and the reverse 49185 (client) direction is raw pointers. 49186 49187 File metadata is looked up before the FileWriter is returned, so that 49188 we know the file exists and can cache its length. 49189 49190 The WebCore part of this is simple and generic enough to handle 49191 Chromium, so it should be easy for me to put in a WebCore-only 49192 implementation next. 49193 49194 * fileapi/AsyncFileWriter.h: 49195 * fileapi/DOMFileSystem.cpp: 49196 (WebCore::DOMFileSystem::createWriter): 49197 * fileapi/DOMFileSystem.h: 49198 * fileapi/FileSystemCallbacks.cpp: 49199 (WebCore::FileSystemCallbacksBase::didCreateFileWriter): 49200 (WebCore::FileWriterCallbacks::FileWriterCallbacks): 49201 (WebCore::FileWriterCallbacks::didCreateFileWriter): 49202 * fileapi/FileSystemCallbacks.h: 49203 * platform/AsyncFileSystem.h: 49204 * platform/AsyncFileSystemCallbacks.h: 49205 49206 2010-09-22 Alexey Proskuryakov <ap (a] apple.com> 49207 49208 Reviewed by Adam Barth. 49209 49210 https://bugs.webkit.org/show_bug.cgi?id=46222 49211 <rdar://problem/8461701> Document.getElementById() malfunctions if ID was changed via Attr node modification. 49212 49213 Test: fast/dom/Attr/change-id-via-attr-node-value.html 49214 49215 * dom/Attr.h: 49216 * dom/Attr.cpp: 49217 (WebCore::Attr::setValue): Separated a version callable from WebCore from one avaiable to JS. 49218 Attr::setValue() can be called from Element::setAttribute(), and we don't want to update 49219 m_elementsById (or to call attributeChanged()) twice in that case. 49220 (WebCore::Attr::childrenChanged): If Attr's node children change, id changes. 49221 49222 * dom/Document.cpp: (WebCore::Document::removeElementById): Added an assertion that we are 49223 not trying to remove something that isn't there. If we are, we probably failed to update 49224 m_elementsById earlier. 49225 49226 * dom/Element.cpp: (WebCore::Element::setAttribute): If the attribute has an Attr node, its 49227 children should be updated to match attribute value. 49228 49229 2010-09-22 David Hyatt <hyatt (a] apple.com> 49230 49231 Reviewed by Dan Bernstein. 49232 49233 https://bugs.webkit.org/show_bug.cgi?id=46311, lock form controls and replaced elements to vertical block flow. 49234 49235 Patch form controls that don't use RenderReplaced by hand in html.css. Patch all RenderReplaced elements 49236 with an override of setStyle that forces the new style to have a vertical block flow. We have to do something like 49237 this to cover the CSS3 content: url(img) method of image replacement. 49238 49239 * css/html.css: 49240 (input, textarea, keygen, select, button, isindex, meter, progress): 49241 * rendering/RenderReplaced.cpp: 49242 (WebCore::RenderReplaced::setStyle): 49243 * rendering/RenderReplaced.h: 49244 49245 2010-09-22 David Hyatt <hyatt (a] apple.com> 49246 49247 Reviewed by Dan Bernstein. 49248 49249 https://bugs.webkit.org/show_bug.cgi?id=46304 49250 49251 display:inline should become display:inline-block when an object's block flow does not match its parent's block flow. 49252 49253 Added fast/blockflow/display-mutation.html 49254 49255 * css/CSSStyleSelector.cpp: 49256 (WebCore::CSSStyleSelector::styleForElement): 49257 (WebCore::CSSStyleSelector::pseudoStyleForElement): 49258 (WebCore::CSSStyleSelector::adjustRenderStyle): 49259 * css/CSSStyleSelector.h: 49260 49261 2010-09-22 Mario Sanchez Prada <msanchez (a] igalia.com> 49262 49263 Reviewed by Martin Robinson. 49264 49265 [Gtk] object:text-changed events should be emitted for entries and password text 49266 https://bugs.webkit.org/show_bug.cgi?id=25898 49267 49268 Implement proper 'text-changed' signal emission for the GTK port 49269 49270 Call deleteTextFromNode() when needed while removing text nodes. 49271 Do it even when removeNode() is going to be called afterwards, in 49272 order to allow accessibility to get properly notified about the 49273 text being removed alongside with that node. 49274 49275 * editing/DeleteSelectionCommand.cpp: 49276 (WebCore::DeleteSelectionCommand::handleGeneralDelete): 49277 49278 New function in AXObjectCache to call when text changes in a node. 49279 Added one new function to allow notifying something changed in a 49280 text node through the associated RenderObject, making such a 49281 function dependant on the platform-specific implementation, 49282 provided through a protected function (provided a proper 49283 implementation for the GTK port and a dummy one for the others). 49284 49285 * accessibility/AXObjectCache.cpp: 49286 (WebCore::AXObjectCache::nodeTextChangeNotification): New 49287 * accessibility/AXObjectCache.h: 49288 (WebCore::AXObjectCache::AXTextChange): New enumeration 49289 (WebCore::AXObjectCache::nodeTextChangeNotification): New 49290 (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New 49291 * accessibility/AccessibilityRenderObject.h: 49292 (WebCore::toAccessibilityRenderObject): 49293 * accessibility/chromium/AXObjectCacheChromium.cpp: 49294 (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New 49295 * accessibility/gtk/AXObjectCacheAtk.cpp: 49296 (WebCore::emitTextChanged): 49297 (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New 49298 * accessibility/mac/AXObjectCacheMac.mm: 49299 (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New 49300 * accessibility/win/AXObjectCacheWin.cpp: 49301 (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New 49302 49303 Notify accessibility when something changes in a text node. 49304 Call to AXObjectCache::nodeTextChangeNotification() to notify when 49305 text was inserted/deleted when applying/unapplying a text edition 49306 command, along with the offset in the original text where the 49307 change took place and the number of characters that got affected. 49308 49309 * editing/AppendNodeCommand.cpp: 49310 (WebCore::sendAXTextChangedIgnoringLineBreaks): 49311 (WebCore::AppendNodeCommand::doApply): 49312 (WebCore::AppendNodeCommand::doUnapply): 49313 * editing/DeleteFromTextNodeCommand.cpp: 49314 (WebCore::DeleteFromTextNodeCommand::doApply): 49315 (WebCore::DeleteFromTextNodeCommand::doUnapply): 49316 * editing/InsertIntoTextNodeCommand.cpp: 49317 (WebCore::InsertIntoTextNodeCommand::doApply): 49318 (WebCore::InsertIntoTextNodeCommand::doUnapply): 49319 * editing/InsertNodeBeforeCommand.cpp: 49320 (WebCore::InsertNodeBeforeCommand::doApply): 49321 (WebCore::InsertNodeBeforeCommand::doUnapply): 49322 (WebCore::DeleteSelectionCommand::handleGeneralDelete): 49323 49324 2010-09-22 David Hyatt <hyatt (a] apple.com> 49325 49326 Reviewed by Dan Bernstein. 49327 49328 https://bugs.webkit.org/show_bug.cgi?id=46298, add logicalWidth/Height getters/setters to RenderBox. 49329 49330 * rendering/RenderBox.cpp: 49331 (WebCore::RenderBox::logicalWidth): 49332 (WebCore::RenderBox::logicalHeight): 49333 (WebCore::RenderBox::setLogicalWidth): 49334 (WebCore::RenderBox::setLogicalHeight): 49335 * rendering/RenderBox.h: 49336 49337 2010-09-22 Luiz Agostini <luiz.agostini (a] openbossa.org> 49338 49339 Reviewed by Oliver Hunt. 49340 49341 Script engine agnostic ScriptCallback class 49342 https://bugs.webkit.org/show_bug.cgi?id=43216 49343 49344 Refactoring class ScriptFunctionCall to create a class (ScriptCallback) that 49345 receives a script function as a ScriptValue and calls that function with provided parameters. 49346 49347 * bindings/js/ScriptFunctionCall.cpp: 49348 (WebCore::ScriptCallArgumentHandler::appendArgument): 49349 (WebCore::ScriptFunctionCall::ScriptFunctionCall): 49350 (WebCore::ScriptCallback::ScriptCallback): 49351 (WebCore::ScriptCallback::call): 49352 * bindings/js/ScriptFunctionCall.h: 49353 (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler): 49354 * bindings/v8/ScriptFunctionCall.cpp: 49355 (WebCore::ScriptCallArgumentHandler::appendArgument): 49356 (WebCore::ScriptFunctionCall::ScriptFunctionCall): 49357 (WebCore::ScriptCallback::ScriptCallback): 49358 (WebCore::ScriptCallback::call): 49359 * bindings/v8/ScriptFunctionCall.h: 49360 (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler): 49361 49362 2010-09-22 Brent Fulgham <bfulgham (a] webkit.org> 49363 49364 Unreviewed. 49365 49366 Build fix for invalid assertion after r68059. 49367 49368 * editing/ApplyStyleCommand.cpp: 49369 (WebCore::getPropertiesNotIn): Correct assertion target after 49370 name change. 49371 49372 2010-09-22 David Hyatt <hyatt (a] apple.com> 49373 49374 Reviewed by Simon Fraser. 49375 49376 https://bugs.webkit.org/show_bug.cgi?id=45957, fix regression in column rules stacking test. 49377 49378 Rewrite how the pagination bit gets set in RenderLayers, since it was totally broken and not 49379 accounting for whether or not the columns block was even in the layer's containing block 49380 hierarchy. 49381 49382 * rendering/RenderLayer.cpp: 49383 (WebCore::checkContainingBlockChainForPagination): 49384 (WebCore::RenderLayer::updatePagination): 49385 49386 2010-09-22 Brent Fulgham <bfulgham (a] webkit.org> 49387 49388 Unreviewed. 49389 49390 [WinCairo] Build fix for platform/cairo stuff after r67981. 49391 49392 * WebCore.vcproj/WebCore.vcproj: Add new files needed by all cairo 49393 ports. 49394 49395 2010-09-22 Erik Arvidsson <arv (a] chromium.org> 49396 49397 Reviewed by Nate Chapin. 49398 49399 [Chromium] Fix memory model for dataset 49400 https://bugs.webkit.org/show_bug.cgi?id=46280 49401 49402 This is covered by existing tests. 49403 49404 * bindings/v8/custom/V8DOMStringMapCustom.cpp: 49405 (WebCore::toV8): 49406 49407 2010-09-22 Abhishek Arya <inferno (a] chromium.org> 49408 49409 Reviewed by Dave Hyatt. 49410 49411 Fix wrong casts for table cell since its parent is not a RenderBlock. Remove 49412 the redundant destroy call for empty anonymous columns or column span block. 49413 https://bugs.webkit.org/show_bug.cgi?id=46245 49414 49415 Tests: fast/table/table-anonymous-block-destroy-crash.html 49416 fast/table/table-columns-blocks-calc-crash.html 49417 49418 * rendering/RenderBlock.cpp: 49419 (WebCore::RenderBlock::addChildToAnonymousColumnBlocks): 49420 (WebCore::RenderBlock::columnsBlockForSpanningElement): 49421 (WebCore::RenderBlock::removeChild): 49422 49423 2010-09-22 Matt Perry <mpcomplete (a] chromium.org> 49424 49425 Reviewed by Darin Fisher. 49426 49427 Trying to reland a version of r67749: 49428 Have V8DOMWindowShell ask the embedder whether to run a V8 extension 49429 in a particular script context. 49430 https://bugs.webkit.org/show_bug.cgi?id=45721 49431 49432 * bindings/v8/V8DOMWindowShell.cpp: 49433 (WebCore::V8DOMWindowShell::createNewContext): 49434 * bindings/v8/V8Proxy.cpp: 49435 (WebCore::V8Proxy::registerExtension): 49436 * bindings/v8/V8Proxy.h: 49437 * loader/EmptyClients.h: 49438 (WebCore::EmptyFrameLoaderClient::allowScriptExtension): 49439 * loader/FrameLoaderClient.h: 49440 49441 2010-09-22 Ryosuke Niwa <rniwa (a] webkit.org> 49442 49443 Reviewed by Darin Adler. 49444 49445 queryCommandState returns false for Underline command when no selection is made 49446 https://bugs.webkit.org/show_bug.cgi?id=17594 49447 49448 The bug was caused by selectionComputedStyle's adding -webkit-text-decorations-in-effect property 49449 to a dummy span used to obtain the computed style when there is a typing style. 49450 Since this property is for internal use only, the CSS parser always stripped the property. 49451 As a result, we were always ignoring the text decorations set by the typing style. 49452 49453 Fixed the bug by making selectionComputedStyle directly merge the computed style of the current 49454 caret position and the typing style. This also eliminates the need for a dummy span element. 49455 Due to the merge, the return value of selectionComputedStyle had to be changed to CSSMutableStyleDeclaration 49456 from CSSComputedStyleDeclaration. 49457 49458 Test: editing/execCommand/query-text-decoration-with-typing-style.html 49459 49460 * editing/ApplyStyleCommand.cpp: 49461 (WebCore::StyleChange::init): Calls getPropertiesNotIn. 49462 (WebCore::getPropertiesNotIn): Renamed from getPropertiesNotInComputedStyle since it takes 49463 CSSStyleDeclaration* instead of CSSComputedStyleDeclaration* for the second argument. 49464 (WebCore::ApplyStyleCommand::removeNonEditingProperties): Extracted from editingStyleAtPosition. 49465 (WebCore::ApplyStyleCommand::editingStyleAtPosition): Calls removeNonEditingProperties. 49466 * editing/ApplyStyleCommand.h: 49467 * editing/Editor.cpp: 49468 (WebCore::triStateOfStyle): Calls getPropertiesNotIn. Renamed from triStateOfStyleInComputedStyle 49469 since it no longer takes CSSComputedStyleDeclaration. 49470 (WebCore::Editor::selectionStartHasStyle): Calls selectionComputedStyle and triStateOfStyle. 49471 (WebCore::Editor::selectionHasStyle): Ditto. 49472 (WebCore::Editor::selectionStartCSSPropertyValue): Calls selectionComputedStyle. 49473 (WebCore::Editor::selectionComputedStyle): See above. 49474 * editing/Editor.h: 49475 * editing/EditorCommand.cpp: 49476 (WebCore::executeToggleStyleInList): Calls selectionComputedStyle. 49477 49478 2010-09-22 Jamey Hicks <jamey.hicks (a] nokia.com> 49479 49480 Reviewed by Kenneth Rohde Christiansen. 49481 49482 [Qt] Web Inspector: Remote Web Inspector support for QtWebKit 49483 https://bugs.webkit.org/show_bug.cgi?id=43988 49484 49485 Runs a web debug server on port specified by QtTestBrowser 49486 argument -remote-inspector-port. Property 49487 _q_webInspectorServerPort of the QWebPage instance will be set 49488 according to the argument. All pages with that property set will 49489 be remotely inspectable. 49490 49491 URL for remote inspection of first QWebPage is 49492 http://localhost:9222/webkit/inspector/inspector.html?page=1 49493 where 1 is the number of the QWebPage instance. 49494 49495 The base URL yields an index page with links to the individual inspectors: 49496 http://localhost:9222/ 49497 49498 * WebCore.pro 49499 49500 2010-09-21 Darin Adler <darin (a] apple.com> 49501 49502 Reviewed by Anders Carlsson. 49503 49504 Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release 49505 https://bugs.webkit.org/show_bug.cgi?id=46220 49506 49507 * WebCore.exp.in: Updated. 49508 49509 * bindings/objc/ObjCEventListener.h: Use a RetainPtr for m_listener, since that 49510 will do a CFRetain, which is right for GC rather than an -[NSObject retain], 49511 which is not. 49512 * bindings/objc/ObjCEventListener.mm: 49513 (WebCore::ObjCEventListener::ObjCEventListener): Removed explicit retain. 49514 (WebCore::ObjCEventListener::~ObjCEventListener): Removed explicit release and 49515 added get(). 49516 (WebCore::ObjCEventListener::handleEvent): Added get(); 49517 49518 * bridge/objc/objc_instance.mm: 49519 (ObjcInstance::setGlobalException): Use copy/release instead of 49520 HardRetain/HardRelease. 49521 (ObjcInstance::moveGlobalExceptionToExecState): Ditto. 49522 49523 * platform/Cursor.h: Use RetainPtr for PlatformCursor on Mac. 49524 49525 * platform/Cursor.cpp: 49526 (WebCore::Cursor::platformCursor): Moved this to CursorMac for the Mac. 49527 49528 * platform/Widget.cpp: Removed retain/releasePlatformWidget and made them 49529 both inlines in the header file. 49530 49531 * platform/Widget.h: Fixed includes and added an include of RetainPtr. 49532 Made platformWidget and setPlatformWidget non-inline on the Mac platform. 49533 Made releasePlatformWidget and retainPlatformWidget empty inline functions 49534 for non-GTK platforms. 49535 49536 * platform/graphics/mac/ImageMac.mm: Removed unneeded FoundationExtras.h 49537 include. 49538 49539 * platform/mac/ClipboardMac.mm: 49540 (WebCore::cocoaTypeFromHTMLClipboardType): use RetainPtr for the return type. 49541 (WebCore::ClipboardMac::clearData): Use RetainPtr. 49542 (WebCore::ClipboardMac::getData): Ditto. 49543 (WebCore::ClipboardMac::setData): Ditto. 49544 49545 * platform/mac/CursorMac.mm: 49546 (WebCore::createCustomCursor): Use RetainPtr for the return type. 49547 (WebCore::Cursor::ensurePlatformCursor): Removed all the calls to HardRetain 49548 since m_platformCursor is now a RetainPtr. 49549 (WebCore::Cursor::Cursor): Ditto. 49550 (WebCore::Cursor::operator=): Ditto. Also HardRelease. 49551 (WebCore::Cursor::~Cursor): Ditto. 49552 (WebCore::Cursor::platformCursor): Use get here. 49553 49554 * platform/mac/FoundationExtras.h: Removed all the functions except for 49555 HardAutorelease. Later we can remove that one too. 49556 49557 * platform/mac/ThemeMac.mm: 49558 (WebCore::setUpButtonCell): Changed this function to have a return value. 49559 Otherwise we end up taking a pointer (actually a reference) to a global 49560 variable, which does not do the right thing for GC. 49561 (WebCore::nonDefaultButton): Added. 49562 (WebCore::defaultButton): Added. 49563 (WebCore::button): Changed to call two separate functions with two separate 49564 global variables to avoid the problem with pointers to globals. 49565 49566 * platform/mac/WidgetMac.mm: 49567 (WebCore::Widget::~Widget): Removed unneeded call to releasePlatformWidget. 49568 (WebCore::Widget::platformWidget): Non-inline so we can comipile the header 49569 plain non-Objective-C C++. 49570 (WebCore::Widget::setPlatformWidget): Ditto. 49571 49572 * platform/network/mac/WebCoreURLResponse.mm: 49573 (mimeTypeFromUTITree): Use RetainPtr for the return type. 49574 (-[NSURLResponse adjustMIMETypeIfNecessary]): Use RetainPtr. 49575 49576 2010-09-22 Martin Robinson <mrobinson (a] igalia.com> 49577 49578 Reviewed by Xan Lopez. 49579 49580 [GTK] r68027 caused many crashes on the bots 49581 https://bugs.webkit.org/show_bug.cgi?id=46268 49582 49583 Add the appropriate OwnPtrCairo.h include which has the OwnPtr 49584 specialization for Cairo paths. Without it, we will have memory 49585 corruption. 49586 49587 * platform/graphics/cairo/PathCairo.cpp: Add OwnPtrCairo.h include. 49588 49589 2010-09-22 Pavel Podivilov <podivilov (a] chromium.org> 49590 49591 Reviewed by Pavel Feldman. 49592 49593 Web Inspector: implement pausing on XHR 49594 https://bugs.webkit.org/show_bug.cgi?id=46086 49595 49596 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 49597 (WebCore::V8XMLHttpRequest::sendCallback): 49598 * inspector/Inspector.idl: 49599 * inspector/InspectorController.cpp: 49600 (WebCore::InspectorController::InspectorController): 49601 (WebCore::InspectorController::setNativeBreakpoint): 49602 (WebCore::InspectorController::removeNativeBreakpoint): 49603 (WebCore::InspectorController::willInsertDOMNodeImpl): 49604 (WebCore::InspectorController::willRemoveDOMNodeImpl): 49605 (WebCore::InspectorController::willModifyDOMAttrImpl): 49606 (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl): 49607 * inspector/InspectorController.h: 49608 (WebCore::InspectorController::instrumentWillSendXMLHttpRequest): 49609 (WebCore::InspectorController::inspectorControllerForScriptExecutionContext): 49610 (WebCore::InspectorController::inspectorControllerForNode): 49611 (WebCore::InspectorController::inspectorControllerForDocument): 49612 * inspector/InspectorDebuggerAgent.cpp: 49613 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 49614 (WebCore::InspectorDebuggerAgent::didPause): 49615 (WebCore::InspectorDebuggerAgent::breakProgram): 49616 * inspector/InspectorDebuggerAgent.h: 49617 * inspector/InspectorTimelineAgent.h: 49618 * inspector/front-end/CallStackSidebarPane.js: 49619 (WebInspector.CallStackSidebarPane.prototype.updateStatus): 49620 * inspector/front-end/ElementsPanel.js: 49621 (WebInspector.ElementsPanel): 49622 (WebInspector.ElementsPanel.prototype.reset): 49623 * inspector/front-end/ElementsTreeOutline.js: 49624 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 49625 * inspector/front-end/ScriptsPanel.js: 49626 (WebInspector.ScriptsPanel): 49627 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 49628 (WebInspector.ScriptsPanel.prototype.reset): 49629 * inspector/front-end/Settings.js: 49630 * xml/XMLHttpRequest.h: 49631 (WebCore::XMLHttpRequest::url): 49632 49633 2010-09-22 Kenneth Russell <kbr (a] google.com> 49634 49635 Reviewed by James Robinson. 49636 49637 Add local triangulation of cubic curve control points 49638 https://bugs.webkit.org/show_bug.cgi?id=45252 49639 49640 Adding a localized triangulation algorithm which takes as input 49641 the four control points of a cubic curve segment and provides both 49642 triangles as well as the ability to walk the interior edges. The 49643 latter will be used later to fill the interior of shapes bounded 49644 by these cubic curves, quadratic curves and line segments. 49645 49646 * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added. 49647 (WebCore::LoopBlinnLocalTriangulator::Triangle::contains): 49648 (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex): 49649 (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex): 49650 (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise): 49651 (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator): 49652 (WebCore::LoopBlinnLocalTriangulator::reset): 49653 (WebCore::LoopBlinnLocalTriangulator::triangulate): 49654 (WebCore::LoopBlinnLocalTriangulator::triangulateHelper): 49655 (WebCore::LoopBlinnLocalTriangulator::addTriangle): 49656 (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex): 49657 (WebCore::LoopBlinnLocalTriangulator::isSharedEdge): 49658 * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added. 49659 (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex): 49660 (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates): 49661 (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates): 49662 (WebCore::LoopBlinnLocalTriangulator::Vertex::set): 49663 (WebCore::LoopBlinnLocalTriangulator::Vertex::end): 49664 (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd): 49665 (WebCore::LoopBlinnLocalTriangulator::Vertex::marked): 49666 (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked): 49667 (WebCore::LoopBlinnLocalTriangulator::Vertex::interior): 49668 (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior): 49669 (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags): 49670 (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle): 49671 (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex): 49672 (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices): 49673 (WebCore::LoopBlinnLocalTriangulator::getVertex): 49674 (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles): 49675 (WebCore::LoopBlinnLocalTriangulator::getTriangle): 49676 (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices): 49677 (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex): 49678 49679 2010-09-22 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 49680 49681 Unreviewed, EFL build fix. 49682 49683 * CMakeListsEfl.txt: 49684 * platform/efl/ClipboardEfl.cpp: 49685 (WebCore::ClipboardEfl::ClipboardEfl): 49686 49687 2010-09-22 smail Dnmez <ismail (a] namtrac.org> 49688 49689 Reviewed by Andreas Kling. 49690 49691 [Qt] Build fix for WinCE 49692 49693 Add two missing stubs: 49694 - privateBrowsingStateChanged(bool) 49695 - bindingInstance() 49696 49697 * platform/qt/TemporaryLinkStubsQt.cpp: 49698 (PluginView::privateBrowsingStateChanged): 49699 (PluginView::bindingInstance): 49700 49701 2010-09-22 Martin Robinson <mrobinson (a] igalia.com> 49702 49703 Reviewed by Xan Lopez. 49704 49705 [GTK] FontCustomPlatformData.cpp leaks FT_Faces 49706 https://bugs.webkit.org/show_bug.cgi?id=16941 49707 49708 Attach lifetime of the FontCustomPlatformData FT_Face to the resulting cairo_font_face_t. 49709 This will free the memory associated with the FT_Face once the cairo_font_face_t is 49710 destroyed. 49711 49712 No new tests as functionality should not change. 49713 49714 * platform/graphics/cairo/FontCustomPlatformData.cpp: 49715 (WebCore::releaseCustomFontData): Moved this helper method to the top of the file 49716 and gave it a more descriptive name. 49717 (WebCore::FontCustomPlatformData::FontCustomPlatformData): Changed the constructor to 49718 take the FT_Face and the buffer, so to better encapsulate the creation of the cairo 49719 face. 49720 (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a comment about the 49721 fate of the FT_Face to the destructor. 49722 (WebCore::createFontCustomPlatformData): Cleaned up the code here and moved some of the 49723 logic into the constructor. 49724 * platform/graphics/cairo/FontCustomPlatformData.h: Updated method definitions. 49725 49726 2010-09-22 Balazs Kelemen <kb (a] inf.u-szeged.hu> 49727 49728 Reviewed by Kenneth Rohde Christiansen. 49729 49730 PluginStrategy should satisfy the needs of Qt 49731 https://bugs.webkit.org/show_bug.cgi?id=45857 49732 No new functionality so no new tests. 49733 49734 * plugins/PluginData.cpp: 49735 (WebCore::PluginData::initPlugins): 49736 * plugins/PluginStrategy.h: Added a |const Page*| argument to getPluginInfo. 49737 49738 2010-09-22 Pavel Feldman <pfeldman (a] chromium.org> 49739 49740 Reviewed by Yury Semikhatsky. 49741 49742 Web Inspector: Elements panel does not reflect changes to the text node values. 49743 https://bugs.webkit.org/show_bug.cgi?id=46166 49744 49745 * dom/CharacterData.cpp: 49746 (WebCore::CharacterData::dispatchModifiedEvent): 49747 * inspector/Inspector.idl: 49748 * inspector/InspectorController.cpp: 49749 (WebCore::InspectorController::characterDataModifiedImpl): 49750 * inspector/InspectorController.h: 49751 (WebCore::InspectorController::characterDataModified): 49752 * inspector/InspectorDOMAgent.cpp: 49753 (WebCore::InspectorDOMAgent::characterDataModified): 49754 * inspector/InspectorDOMAgent.h: 49755 (WebCore::EventListenerInfo::EventListenerInfo): 49756 (WebCore::InspectorDOMAgent::create): 49757 (WebCore::InspectorDOMAgent::cast): 49758 (WebCore::InspectorDOMAgent::cssStore): 49759 * inspector/front-end/DOMAgent.js: 49760 (WebInspector.DOMAgent.prototype._characterDataModified): 49761 (WebInspector.characterDataModified): 49762 * inspector/front-end/ElementsPanel.js: 49763 (WebInspector.ElementsPanel.prototype._characterDataModified): 49764 * inspector/front-end/ElementsTreeOutline.js: 49765 (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted): 49766 49767 2010-09-21 Ragner Magalhaes <ragner.magalhaes (a] openbossa.org> 49768 49769 Reviewed by Kenneth Rohde Christiansen. 49770 49771 [Qt] On Maemo platform, web style is missing for some inputs 49772 https://bugs.webkit.org/show_bug.cgi?id=46182 49773 49774 * css/themeQtMaemo5.css: 49775 49776 2010-09-22 Patrick Gansterer <paroga (a] webkit.org> 49777 49778 Unreviewed. 49779 49780 [WINCE] Build fix for ResourceHandleWin after r67291. 49781 49782 * platform/network/win/ResourceHandleWin.cpp: 49783 (WebCore::ResourceHandle::loadResourceSynchronously): Replace Frame* parameter with NetworkingContext*. 49784 49785 2010-09-22 Chris Guillory <chris.guillory (a] google.com> 49786 49787 Reviewed by Chris Fleizach. 49788 49789 Crash due to bad cast in AXObjectCacheChromium.cpp. 49790 https://bugs.webkit.org/show_bug.cgi?id=46237 49791 49792 * accessibility/chromium/AXObjectCacheChromium.cpp: 49793 (WebCore::AXObjectCache::postPlatformNotification): 49794 * page/ChromeClient.h: 49795 (WebCore::ChromeClient::postAccessibilityNotification): 49796 (WebCore::ChromeClient::didChangeAccessibilityObjectState): 49797 (WebCore::ChromeClient::didChangeAccessibilityObjectChildren): 49798 * page/chromium/ChromeClientChromium.h: 49799 49800 2010-09-22 Chris Rogers <crogers (a] google.com> 49801 49802 Reviewed by James Robinson. 49803 49804 Add HRTFElevation files 49805 https://bugs.webkit.org/show_bug.cgi?id=45864 49806 49807 No new tests since audio API is not yet implemented. 49808 49809 * platform/audio/HRTFElevation.cpp: Added. 49810 (WebCore::HRTFElevation::calculateSymmetricKernelsForAzimuthElevation): 49811 (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation): 49812 (WebCore::HRTFElevation::createForSubject): 49813 (WebCore::HRTFElevation::createByInterpolatingSlices): 49814 (WebCore::HRTFElevation::getKernelsFromAzimuth): 49815 * platform/audio/HRTFElevation.h: Added. 49816 (WebCore::HRTFElevation::kernelListL): 49817 (WebCore::HRTFElevation::kernelListR): 49818 (WebCore::HRTFElevation::elevationAngle): 49819 (WebCore::HRTFElevation::numberOfAzimuths): 49820 (WebCore::HRTFElevation::sampleRate): 49821 (WebCore::HRTFElevation::HRTFElevation): 49822 49823 2010-09-22 Alejandro G. Castro <alex (a] igalia.com> 49824 49825 Reviewed by Martin Robinson. 49826 49827 [gtk] Use the smart pointers to handle cairo_path_t 49828 https://bugs.webkit.org/show_bug.cgi?id=46212 49829 49830 Modified the code to use smart pointers with cairo_path_t 49831 variables. 49832 49833 * platform/graphics/cairo/GraphicsContextCairo.cpp: 49834 (WebCore::appendPathToCairoContext): 49835 (WebCore::GraphicsContext::clip): 49836 (WebCore::GraphicsContext::drawTiledShadow): 49837 * platform/graphics/cairo/PathCairo.cpp: 49838 (WebCore::Path::Path): 49839 (WebCore::Path::operator=): 49840 (WebCore::Path::apply): 49841 (WebCore::Path::debugString): 49842 49843 2010-09-22 Kwang Yul Seo <skyul (a] company100.net> 49844 49845 Reviewed by Kent Tamura. 49846 49847 [BREWMP] Implement Image::loadPlatformResource 49848 https://bugs.webkit.org/show_bug.cgi?id=45873 49849 49850 Load images from the resource directory. 49851 49852 * platform/graphics/brew/ImageBrew.cpp: Added. 49853 (WebCore::Image::loadPlatformResource): 49854 49855 2010-09-22 Chris Rogers <crogers (a] google.com> 49856 49857 Reviewed by James Robinson. 49858 49859 Add HRTFKernel files 49860 https://bugs.webkit.org/show_bug.cgi?id=45863 49861 49862 No new tests since audio API is not yet implemented. 49863 49864 * platform/audio/HRTFKernel.cpp: Added. 49865 (WebCore::extractAverageGroupDelay): 49866 (WebCore::HRTFKernel::HRTFKernel): 49867 (WebCore::HRTFKernel::createImpulseResponse): 49868 (WebCore::HRTFKernel::createInterpolatedKernel): 49869 * platform/audio/HRTFKernel.h: Added. 49870 (WebCore::HRTFKernel::create): 49871 (WebCore::HRTFKernel::fftFrame): 49872 (WebCore::HRTFKernel::fftSize): 49873 (WebCore::HRTFKernel::frameDelay): 49874 (WebCore::HRTFKernel::sampleRate): 49875 (WebCore::HRTFKernel::nyquist): 49876 (WebCore::HRTFKernel::HRTFKernel): 49877 49878 2010-09-22 Kent Tamura <tkent (a] chromium.org> 49879 49880 Reviewed by Chris Fleizach. 49881 49882 Support keyboard operations for <input type=range>. 49883 https://bugs.webkit.org/show_bug.cgi?id=45803 49884 49885 Increasing the value with Up/Right arrow keys by its step value, 49886 and decreasing with Down/Left arrow keys. If an input element has 49887 step=any attribute, increasing/decreasing by 1/100 of max-min. 49888 49889 Note: This change is not useful on Mac because users can't set 49890 focus on range controls. 49891 49892 Test: fast/forms/range-keyoperation.html 49893 49894 * html/HTMLInputElement.cpp: 49895 (WebCore::HTMLInputElement::defaultEventHandler): 49896 Calls handleKeyEventForRange() for RANGE and key events. 49897 (WebCore::HTMLInputElement::handleKeyEventForRange): 49898 * html/HTMLInputElement.h: Add handleKeyEventForRange() declaration. 49899 49900 2010-09-22 Mario Sanchez Prada <msanchez (a] igalia.com> 49901 49902 Reviewed by Chris Fleizach. 49903 49904 [Gtk] Incorrect exposure of list items whose children are elements 49905 https://bugs.webkit.org/show_bug.cgi?id=45383 49906 49907 Set ATK_ROLE_LIST_ITEM looking for the role of the parent object 49908 49909 Test: platform/gtk/accessibility/list-items-always-exposed.html 49910 49911 * accessibility/gtk/AccessibilityObjectAtk.cpp: 49912 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): 49913 Always include objects with ListItemRole in accessibility for GTK. 49914 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 49915 (getInterfaceMaskFromObject): Add some specific code to handle the 49916 special case of list markers by implementing AtkText when needed. 49917 49918 2010-09-22 Dirk Schulze <krit (a] webkit.org> 49919 49920 Reviewed by Nikolas Zimmermann. 49921 49922 Make FilterEffects independent of SVG 49923 https://bugs.webkit.org/show_bug.cgi?id=46177 49924 49925 Moving all FilterEffects from svg/graphics/filters to platform/graphics/filters, now that they 49926 are independent of SVG. Removed the SVG prefix of the files and updated the headers. 49927 49928 * Android.mk: 49929 * CMakeLists.txt: 49930 * GNUmakefile.am: 49931 * WebCore.gypi: 49932 * WebCore.pro: 49933 * WebCore.vcproj/WebCore.vcproj: 49934 * WebCore.xcodeproj/project.pbxproj: 49935 * platform/graphics/filters/DistantLightSource.h: Copied from WebCore/svg/graphics/filters/SVGDistantLightSource.h. 49936 * platform/graphics/filters/FEConvolveMatrix.cpp: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.cpp. 49937 * platform/graphics/filters/FEConvolveMatrix.h: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.h. 49938 * platform/graphics/filters/FEDiffuseLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.cpp. 49939 * platform/graphics/filters/FEDiffuseLighting.h: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.h. 49940 * platform/graphics/filters/FEDisplacementMap.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.cpp. 49941 * platform/graphics/filters/FEDisplacementMap.h: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.h. 49942 * platform/graphics/filters/FEFlood.cpp: Copied from WebCore/svg/graphics/filters/SVGFEFlood.cpp. 49943 * platform/graphics/filters/FEFlood.h: Copied from WebCore/svg/graphics/filters/SVGFEFlood.h. 49944 * platform/graphics/filters/FELighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFELighting.cpp. 49945 * platform/graphics/filters/FELighting.h: Copied from WebCore/svg/graphics/filters/SVGFELighting.h. 49946 * platform/graphics/filters/FEMerge.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMerge.cpp. 49947 * platform/graphics/filters/FEMerge.h: Copied from WebCore/svg/graphics/filters/SVGFEMerge.h. 49948 * platform/graphics/filters/FEMorphology.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.cpp. 49949 * platform/graphics/filters/FEMorphology.h: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.h. 49950 * platform/graphics/filters/FEOffset.cpp: Copied from WebCore/svg/graphics/filters/SVGFEOffset.cpp. 49951 * platform/graphics/filters/FEOffset.h: Copied from WebCore/svg/graphics/filters/SVGFEOffset.h. 49952 * platform/graphics/filters/FESpecularLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.cpp. 49953 * platform/graphics/filters/FESpecularLighting.h: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.h. 49954 * platform/graphics/filters/FETile.cpp: Copied from WebCore/svg/graphics/filters/SVGFETile.cpp. 49955 * platform/graphics/filters/FETile.h: Copied from WebCore/svg/graphics/filters/SVGFETile.h. 49956 * platform/graphics/filters/FETurbulence.cpp: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.cpp. 49957 * platform/graphics/filters/FETurbulence.h: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.h. 49958 * platform/graphics/filters/LightSource.cpp: Copied from WebCore/svg/graphics/filters/SVGLightSource.cpp. 49959 * platform/graphics/filters/LightSource.h: Copied from WebCore/svg/graphics/filters/SVGLightSource.h. 49960 * platform/graphics/filters/PointLightSource.h: Copied from WebCore/svg/graphics/filters/SVGPointLightSource.h. 49961 * platform/graphics/filters/SpotLightSource.h: Copied from WebCore/svg/graphics/filters/SVGSpotLightSource.h. 49962 * svg/SVGFEConvolveMatrixElement.h: 49963 * svg/SVGFEDiffuseLightingElement.cpp: 49964 * svg/SVGFEDisplacementMapElement.h: 49965 * svg/SVGFEDistantLightElement.cpp: 49966 * svg/SVGFEFloodElement.h: 49967 * svg/SVGFELightElement.h: 49968 * svg/SVGFEMergeElement.h: 49969 * svg/SVGFEMorphologyElement.h: 49970 * svg/SVGFEOffsetElement.h: 49971 * svg/SVGFEPointLightElement.cpp: 49972 * svg/SVGFESpecularLightingElement.h: 49973 * svg/SVGFESpotLightElement.cpp: 49974 * svg/SVGFETileElement.h: 49975 * svg/SVGFETurbulenceElement.h: 49976 * svg/graphics/filters/SVGDistantLightSource.h: Removed. 49977 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Removed. 49978 * svg/graphics/filters/SVGFEConvolveMatrix.h: Removed. 49979 * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Removed. 49980 * svg/graphics/filters/SVGFEDiffuseLighting.h: Removed. 49981 * svg/graphics/filters/SVGFEDisplacementMap.cpp: Removed. 49982 * svg/graphics/filters/SVGFEDisplacementMap.h: Removed. 49983 * svg/graphics/filters/SVGFEFlood.cpp: Removed. 49984 * svg/graphics/filters/SVGFEFlood.h: Removed. 49985 * svg/graphics/filters/SVGFELighting.cpp: Removed. 49986 * svg/graphics/filters/SVGFELighting.h: Removed. 49987 * svg/graphics/filters/SVGFEMerge.cpp: Removed. 49988 * svg/graphics/filters/SVGFEMerge.h: Removed. 49989 * svg/graphics/filters/SVGFEMorphology.cpp: Removed. 49990 * svg/graphics/filters/SVGFEMorphology.h: Removed. 49991 * svg/graphics/filters/SVGFEOffset.cpp: Removed. 49992 * svg/graphics/filters/SVGFEOffset.h: Removed. 49993 * svg/graphics/filters/SVGFESpecularLighting.cpp: Removed. 49994 * svg/graphics/filters/SVGFESpecularLighting.h: Removed. 49995 * svg/graphics/filters/SVGFETile.cpp: Removed. 49996 * svg/graphics/filters/SVGFETile.h: Removed. 49997 * svg/graphics/filters/SVGFETurbulence.cpp: Removed. 49998 * svg/graphics/filters/SVGFETurbulence.h: Removed. 49999 * svg/graphics/filters/SVGLightSource.cpp: Removed. 50000 * svg/graphics/filters/SVGLightSource.h: Removed. 50001 * svg/graphics/filters/SVGPointLightSource.h: Removed. 50002 * svg/graphics/filters/SVGSpotLightSource.h: Removed. 50003 50004 2010-09-22 Patrick Gansterer <paroga (a] webkit.org> 50005 50006 Reviewed by Adam Roben. 50007 50008 [WIN] Add internetHandle to WebCoreSynchronousLoader. 50009 https://bugs.webkit.org/show_bug.cgi?id=46185 50010 50011 For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle. 50012 This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle. 50013 50014 * platform/network/win/ResourceHandleWin.cpp: 50015 (WebCore::createInternetHandle): 50016 (WebCore::asynchronousInternetHandle): 50017 (WebCore::WebCoreSynchronousLoader::internetHandle): 50018 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle. 50019 (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle. 50020 50021 2010-09-22 Kwang Yul Seo <skyul (a] company100.net> 50022 50023 Reviewed by Chris Fleizach. 50024 50025 [chromium] Remove unused sys/types.h in VDMXParser.cpp 50026 https://bugs.webkit.org/show_bug.cgi?id=46136 50027 50028 sys/types.h is not needed here. 50029 50030 * platform/graphics/chromium/VDMXParser.cpp: 50031 50032 2010-09-22 Kwang Yul Seo <skyul (a] company100.net> 50033 50034 Reviewed by Kent Tamura. 50035 50036 [BREWMP] Change the home directory path to the WebKit module directory 50037 https://bugs.webkit.org/show_bug.cgi?id=45895 50038 50039 AEEFS_HOME_DIR denotes the currently running application's directory. 50040 Change it to fs:/~<clsid> to use the WebKit module directory as home. 50041 50042 * platform/brew/FileSystemBrew.cpp: 50043 (WebCore::homeDirectoryPath): 50044 50045 2010-09-22 Kwang Yul Seo <skyul (a] company100.net> 50046 50047 Reviewed by Kent Tamura. 50048 50049 [BREWMP] Add dummy Pasteboard 50050 https://bugs.webkit.org/show_bug.cgi?id=46107 50051 50052 Pasteboard is not supported yet. Add dummy implementation to avoid link errors. 50053 50054 * platform/brew/PasteboardBrew.cpp: Added. 50055 (WebCore::Pasteboard::generalPasteboard): 50056 (WebCore::Pasteboard::Pasteboard): 50057 (WebCore::Pasteboard::clear): 50058 (WebCore::Pasteboard::writeSelection): 50059 (WebCore::Pasteboard::writePlainText): 50060 (WebCore::Pasteboard::writeURL): 50061 (WebCore::Pasteboard::writeImage): 50062 (WebCore::Pasteboard::canSmartReplace): 50063 (WebCore::Pasteboard::plainText): 50064 (WebCore::Pasteboard::documentFragment): 50065 50066 2010-09-21 Ryosuke Niwa <rniwa (a] webkit.org> 50067 50068 Reviewed by Kent Tamura. 50069 50070 Each EntityMaskIn* needs explanation 50071 https://bugs.webkit.org/show_bug.cgi?id=44833 50072 50073 Added a description as to why we escape nbsp when serializing HTML documents but not when serializing XML documents. 50074 50075 * editing/markup.cpp: 50076 50077 2010-09-21 Ryosuke Niwa <rniwa (a] webkit.org> 50078 50079 Reviewed by Kent Tamura. 50080 50081 cleanup: removeInlineStyleFromElement and extractInlineStyleToPushDown should be merged 50082 https://bugs.webkit.org/show_bug.cgi?id=46205 50083 50084 Cleanup required to fix the bug 27818. Added the style extraction mechanism to removeInlineStyleFromElement 50085 and removeCSSStyle and replaced the call to extractInlineStyleToPushDown by a call to removeInlineStyleFromElement. 50086 50087 * editing/ApplyStyleCommand.cpp: 50088 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added extractedStyle argument. 50089 (WebCore::ApplyStyleCommand::removeCSSStyle): Added extractedStyle argument. 50090 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls removeInlineStyleFromElement instead of 50091 extractInlineStyleToPushDown which has been deleted. 50092 * editing/ApplyStyleCommand.h: 50093 50094 2010-09-21 Andrew Wilson <atwilson (a] chromium.org> 50095 50096 Unreviewed, rolling out r67982. 50097 http://trac.webkit.org/changeset/67982 50098 https://bugs.webkit.org/show_bug.cgi?id=45156 50099 50100 Causes crashes on chromium testshell 50101 50102 * WebCore.gypi: 50103 * accessibility/chromium/AXObjectCacheChromium.cpp: 50104 (WebCore::AXObjectCache::postPlatformNotification): 50105 (WebCore::AXObjectCache::handleFocusedUIElementChanged): 50106 (WebCore::AXObjectCache::handleScrolledToAnchor): 50107 * dom/Document.cpp: 50108 (WebCore::Document::implicitClose): 50109 (WebCore::Document::setFocusedNode): 50110 * editing/SelectionController.h: 50111 * editing/chromium/SelectionControllerChromium.cpp: Removed. 50112 * page/FrameView.cpp: 50113 (WebCore::FrameView::layout): 50114 * page/chromium/ChromeClientChromium.h: 50115 50116 2010-09-21 Cosmin Truta <ctruta (a] chromium.org> 50117 50118 Reviewed by James Robinson. 50119 50120 RenderImage::intrinsicSizeChanged crashes when m_imageResource is missing 50121 https://bugs.webkit.org/show_bug.cgi?id=46120 50122 50123 Avoid applying operator -> to m_imageResource when its underlying pointer is NULL. 50124 50125 * rendering/RenderImage.h: 50126 (WebCore::RenderImage::intrinsicSizeChanged): Checked m_imageResource. 50127 * html/HTMLImageElement.cpp: 50128 (HTMLImageElement::createRenderer): Fixed indentation. 50129 50130 2010-09-21 Kenneth Russell <kbr (a] google.com> 50131 50132 Reviewed by James Robinson. 50133 50134 [chromium] Remove GLES2Context and WebGLES2Context 50135 https://bugs.webkit.org/show_bug.cgi?id=46131 50136 50137 Removed now-obsolete GLES2Context and WebGLES2Context classes, and 50138 dependency on command buffer client code from WebCore. Built and 50139 tested 3D CSS and WebGL content on Mac OS X to test. 50140 50141 * WebCore.gypi: 50142 * platform/chromium/GLES2Context.h: Removed. 50143 * platform/graphics/skia/ImageSkia.cpp: 50144 50145 2010-09-21 Geoffrey Garen <ggaren (a] apple.com> 50146 50147 Try to fix the Windows build. 50148 50149 * loader/Cache.cpp: 50150 (WebCore::Cache::makeResourcePurgeable): 50151 (WebCore::Cache::evict): Cast to int before using unary '-', to avoid an 50152 MSVC warning. 50153 50154 2010-09-21 Pratik Solanki <psolanki (a] apple.com> 50155 50156 Reviewed by Geoffrey Garen and Darin Adler. 50157 50158 Use purgeable memory to keep more dead resources in cache 50159 https://bugs.webkit.org/show_bug.cgi?id=44806 50160 <rdar://problem/8350901> 50161 50162 This changes the behavior of dead resources in the WebCore cache to be the following if 50163 shouldMakeResourcePurgeableOnEviction() returns true. 50164 50165 1. Dead resources in the cache are kept in non-purgeable memory. 50166 2. When we prune dead resources, instead of freeing them, we mark their memory as purgeable 50167 and keep the resources until the kernel reclaims the purgeable memory. 50168 50169 By leaving the in-cache dead resources in dirty resident memory, we decrease the likelihood 50170 of the kernel claiming that memory and forcing us to refetch the resource (for example when 50171 a user presses back). 50172 50173 And by having an unbounded number of resource objects using purgeable memory, we can use 50174 as much memory as is available on the machine. The trade-off is that the CachedResource 50175 object (and its member variables) are allocated in non-purgeable TC-malloc'd memory so 50176 we would see slightly more memory use due to this. 50177 50178 * loader/Cache.cpp: 50179 (WebCore::Cache::resourceForURL): Adjust sizes appropriately if we made resource memory 50180 non-purgeable. 50181 (WebCore::Cache::pruneDeadResources): When removing dead resources, try first to mark their 50182 memory as purgeable. If not, evict the resource. 50183 (WebCore::Cache::makeResourcePurgeable): Added. Try to mark resource 50184 memory as purgeable. If successful, adjust the sizes so that we don't 50185 factor this resources size in the Cache size calculation. 50186 (WebCore::Cache::evict): Don't decrement size if we already did it in makeResourcePurgeable. 50187 (WebCore::Cache::dumpLRULists): Extra debug logging. 50188 * loader/Cache.h: 50189 (WebCore::Cache::shouldMakeResourcePurgeableOnEviction): Added. Indicates if the new 50190 behaviour is enabled. 50191 * loader/CachedCSSStyleSheet.cpp: 50192 (WebCore::CachedCSSStyleSheet::allClientsRemoved): Do not mark memory as purgeable. The 50193 Cache class takes care of this. 50194 * loader/CachedImage.cpp: 50195 (WebCore::CachedImage::destroyDecodedData): Ditto. 50196 * loader/CachedScript.cpp: 50197 (WebCore::CachedScript::destroyDecodedData): Ditto. 50198 50199 2010-09-21 Dan Bernstein <mitz (a] apple.com> 50200 50201 Reviewed by Darin Adler. 50202 50203 <rdar://problem/7729077> Extending the selection to sentence boundary after a line break may select extra character 50204 https://bugs.webkit.org/show_bug.cgi?id=46232 50205 50206 Test: editing/selection/extend-by-sentence-002.html 50207 50208 * editing/visible_units.cpp: 50209 (WebCore::nextBoundary): The text iterators range end can be the position after 50210 the line break, in which case the next visible is actually after the first character 50211 of the next sentence. Instead, advance the text iterator past the newline character 50212 and return the beginning of its range, which is guaranteed to still be before the 50213 next sentence. 50214 50215 2010-09-21 Robert Hogan <robert (a] webkit.org> 50216 50217 Rubber-stamped by Ariya Hidayat. 50218 50219 [Qt] Build fix against qt trunk 50220 50221 * platform/graphics/qt/ContextShadow.cpp: 50222 (WebCore::ContextShadow::beginShadowLayer): 50223 50224 2010-09-21 Tony Chang <tony (a] chromium.org> 50225 50226 Unreviewed, QT build fix. 50227 50228 * platform/qt/ClipboardQt.cpp: 50229 (WebCore::ClipboardQt::ClipboardQt): 50230 50231 2010-09-21 Andy Estes <aestes (a] apple.com> 50232 50233 Reviewed by Darin Adler. 50234 50235 REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen 50236 https://bugs.webkit.org/show_bug.cgi?id=46134 50237 50238 * WebCore.exp.in: Export __ZN7WebCore32applicationIsAOLInstantMessengerEv. 50239 * platform/mac/RuntimeApplicationChecks.h: 50240 * platform/mac/RuntimeApplicationChecks.mm: 50241 (WebCore::applicationIsAOLInstantMessenger): Determine if the embedding 50242 application is AOL Instant Messenger by checking the bundle identifier. 50243 50244 2010-09-21 Chris Guillory <chris.guillory (a] google.com> 50245 50246 Reviewed by Chris Fleizach. 50247 50248 Send webkit accessibility notifications to Chromium. 50249 https://bugs.webkit.org/show_bug.cgi?id=45156 50250 50251 * WebCore.gypi: 50252 * accessibility/chromium/AXObjectCacheChromium.cpp: 50253 (WebCore::AXObjectCache::postPlatformNotification): 50254 (WebCore::AXObjectCache::handleFocusedUIElementChanged): 50255 (WebCore::AXObjectCache::handleScrolledToAnchor): 50256 * dom/Document.cpp: 50257 (WebCore::Document::implicitClose): 50258 (WebCore::Document::setFocusedNode): 50259 * editing/SelectionController.h: 50260 * editing/chromium/SelectionControllerChromium.cpp: Added. 50261 (WebCore::SelectionController::notifyAccessibilityForSelectionChange): 50262 * page/FrameView.cpp: 50263 (WebCore::FrameView::layout): 50264 * page/chromium/ChromeClientChromium.h: 50265 50266 2010-09-21 Alejandro G. Castro <alex (a] igalia.com> 50267 50268 Reviewed by Martin Robinson. 50269 50270 [gtk] Move copyContextProperties outside the GraphicsContextCairo 50271 https://bugs.webkit.org/show_bug.cgi?id=46179. 50272 50273 Moved the copyContextProperties function to the CairoUtilities so 50274 we can use it outside GraphicsContextCairo. We moved also the old 50275 gtk CairoUtilities file to GdkCairoUtilities and added the new 50276 file in the cairo directory. 50277 50278 * GNUmakefile.am: 50279 * platform/graphics/cairo/CairoUtilities.cpp: Added. 50280 (WebCore::copyContextProperties): 50281 * platform/graphics/cairo/CairoUtilities.h: Added. 50282 * platform/graphics/cairo/GraphicsContextCairo.cpp: 50283 * platform/graphics/gtk/CairoUtilities.cpp: Removed. 50284 * platform/graphics/gtk/CairoUtilities.h: Removed. 50285 * platform/graphics/gtk/GdkCairoUtilities.cpp: Added. 50286 (getCairoSurfacePixel): 50287 (getGdkPixbufPixel): 50288 (cairoImageSurfaceToGdkPixbuf): 50289 * platform/graphics/gtk/GdkCairoUtilities.h: Added. 50290 * platform/graphics/gtk/ImageBufferGtk.cpp: 50291 * platform/graphics/gtk/ImageGtk.cpp: 50292 50293 2010-09-21 Vangelis Kokkevis <vangelis (a] chromium.org> 50294 50295 Reviewed by James Robinson. 50296 50297 [chromium] Cleaned up LayerRendererChromium::prepareToDrawLayers 50298 logic to avoid unnecessary copy operations if the existing root layer 50299 contents aren't useful for scrolling. Also removed call to updateLayersRecursive() 50300 as the composited layer update is actually happening in the drawLayers() method. 50301 https://bugs.webkit.org/show_bug.cgi?id=46199 50302 50303 50304 * platform/graphics/chromium/LayerRendererChromium.cpp: 50305 (WebCore::LayerRendererChromium::prepareToDrawLayers): 50306 50307 2010-09-21 Daniel Cheng <dcheng (a] chromium.org> 50308 50309 Reviewed by Tony Chang. 50310 50311 Change Clipboard to use an enum instead of isForDragging = true/false 50312 https://bugs.webkit.org/show_bug.cgi?id=46004 50313 50314 No new tests, since it's just a refactoring change. 50315 50316 * bindings/js/JSClipboardCustom.cpp: 50317 (WebCore::JSClipboard::setDragImage): 50318 * bindings/v8/custom/V8ClipboardCustom.cpp: 50319 (WebCore::V8Clipboard::setDragImageCallback): 50320 * dom/Clipboard.cpp: 50321 (WebCore::Clipboard::Clipboard): 50322 (WebCore::Clipboard::setDropEffect): 50323 (WebCore::Clipboard::setEffectAllowed): 50324 * dom/Clipboard.h: 50325 (WebCore::Clipboard::isForCopyAndPaste): 50326 (WebCore::Clipboard::isForDragAndDrop): 50327 * editing/android/EditorAndroid.cpp: 50328 (WebCore::Editor::newGeneralClipboard): 50329 * editing/brew/EditorBrew.cpp: 50330 (WebCore::Editor::newGeneralClipboard): 50331 * editing/chromium/EditorChromium.cpp: 50332 (WebCore::Editor::newGeneralClipboard): 50333 * editing/haiku/EditorHaiku.cpp: 50334 (WebCore::Editor::newGeneralClipboard): 50335 * editing/mac/EditorMac.mm: 50336 (WebCore::Editor::newGeneralClipboard): 50337 * editing/wx/EditorWx.cpp: 50338 (WebCore::Editor::newGeneralClipboard): 50339 * page/chromium/EventHandlerChromium.cpp: 50340 (WebCore::EventHandler::createDraggingClipboard): 50341 * page/efl/EventHandlerEfl.cpp: 50342 (WebCore::EventHandler::createDraggingClipboard): 50343 * page/gtk/EventHandlerGtk.cpp: 50344 (WebCore::EventHandler::createDraggingClipboard): 50345 * page/haiku/EventHandlerHaiku.cpp: 50346 (WebCore::EventHandler::createDraggingClipboard): 50347 * page/mac/EventHandlerMac.mm: 50348 (WebCore::EventHandler::createDraggingClipboard): 50349 * page/qt/EventHandlerQt.cpp: 50350 (WebCore::EventHandler::createDraggingClipboard): 50351 * page/win/EventHandlerWin.cpp: 50352 (WebCore::EventHandler::createDraggingClipboard): 50353 * page/wx/EventHandlerWx.cpp: 50354 (WebCore::EventHandler::createDraggingClipboard): 50355 * platform/android/ClipboardAndroid.cpp: 50356 (WebCore::ClipboardAndroid::ClipboardAndroid): 50357 (WebCore::ClipboardAndroid::clearData): 50358 (WebCore::ClipboardAndroid::clearAllData): 50359 (WebCore::ClipboardAndroid::setData): 50360 * platform/android/ClipboardAndroid.h: 50361 * platform/brew/ClipboardBrew.cpp: 50362 (WebCore::ClipboardBrew::ClipboardBrew): 50363 (WebCore::ClipboardBrew::clearData): 50364 (WebCore::ClipboardBrew::clearAllData): 50365 (WebCore::ClipboardBrew::setData): 50366 * platform/brew/ClipboardBrew.h: 50367 * platform/chromium/ClipboardChromium.cpp: 50368 (WebCore::Clipboard::create): 50369 (WebCore::ClipboardChromium::ClipboardChromium): 50370 (WebCore::ClipboardChromium::create): 50371 (WebCore::ClipboardChromium::getData): 50372 * platform/chromium/ClipboardChromium.h: 50373 * platform/efl/ClipboardEfl.cpp: 50374 (WebCore::Editor::newGeneralClipboard): 50375 (WebCore::ClipboardEfl::ClipboardEfl): 50376 * platform/efl/ClipboardEfl.h: 50377 (WebCore::ClipboardEfl::create): 50378 * platform/gtk/ClipboardGtk.cpp: 50379 (WebCore::Editor::newGeneralClipboard): 50380 (WebCore::Clipboard::create): 50381 (WebCore::ClipboardGtk::ClipboardGtk): 50382 (WebCore::dataObjectTypeFromHTMLClipboardType): 50383 (WebCore::ClipboardGtk::clearData): 50384 (WebCore::ClipboardGtk::getData): 50385 (WebCore::ClipboardGtk::setData): 50386 * platform/gtk/ClipboardGtk.h: 50387 (WebCore::ClipboardGtk::create): 50388 * platform/haiku/ClipboardHaiku.cpp: 50389 (WebCore::Clipboard::create): 50390 (WebCore::ClipboardHaiku::ClipboardHaiku): 50391 * platform/haiku/ClipboardHaiku.h: 50392 (WebCore::ClipboardHaiku::create): 50393 * platform/mac/ClipboardMac.h: 50394 (WebCore::ClipboardMac::create): 50395 * platform/mac/ClipboardMac.mm: 50396 (WebCore::Clipboard::create): 50397 (WebCore::ClipboardMac::ClipboardMac): 50398 * platform/qt/ClipboardQt.cpp: 50399 (WebCore::ClipboardQt::ClipboardQt): 50400 (WebCore::ClipboardQt::~ClipboardQt): 50401 (WebCore::ClipboardQt::clearData): 50402 (WebCore::ClipboardQt::clearAllData): 50403 (WebCore::ClipboardQt::setData): 50404 (WebCore::ClipboardQt::declareAndWriteDragImage): 50405 (WebCore::ClipboardQt::writeURL): 50406 (WebCore::ClipboardQt::writeRange): 50407 (WebCore::ClipboardQt::writePlainText): 50408 * platform/qt/ClipboardQt.h: 50409 (WebCore::ClipboardQt::create): 50410 * platform/win/ClipboardWin.cpp: 50411 (WebCore::Clipboard::create): 50412 (WebCore::ClipboardWin::ClipboardWin): 50413 (WebCore::ClipboardWin::clearData): 50414 (WebCore::ClipboardWin::clearAllData): 50415 (WebCore::ClipboardWin::setData): 50416 (WebCore::ClipboardWin::setExternalDataObject): 50417 * platform/win/ClipboardWin.h: 50418 (WebCore::ClipboardWin::create): 50419 * platform/win/EditorWin.cpp: 50420 (WebCore::Editor::newGeneralClipboard): 50421 * platform/wx/ClipboardWx.cpp: 50422 (WebCore::ClipboardWx::ClipboardWx): 50423 * platform/wx/ClipboardWx.h: 50424 (WebCore::ClipboardWx::create): 50425 50426 2010-09-21 Abhishek Arya <inferno (a] chromium.org> 50427 50428 Reviewed by Dave Hyatt. 50429 50430 Take isValueList() checks out of the asserts for memory safety. 50431 https://bugs.webkit.org/show_bug.cgi?id=46194 50432 50433 Test: editing/execCommand/apply-style-text-decoration-crash.html 50434 50435 * editing/ApplyStyleCommand.cpp: 50436 (WebCore::StyleChange::extractTextStyles): 50437 (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): 50438 50439 2010-09-21 Vangelis Kokkevis <vangelis (a] chromium.org> 50440 50441 Reviewed by Kenneth Russell. 50442 50443 [chromium] Fixing double translation of composited layers when scrolling. 50444 The scrolling transform is now applied by a separate layer maintained in 50445 the RenderLayerCompositor. 50446 https://bugs.webkit.org/show_bug.cgi?id=46193 50447 50448 * platform/graphics/chromium/LayerRendererChromium.cpp: 50449 (WebCore::LayerRendererChromium::drawLayers): 50450 50451 2010-09-21 David Hyatt <hyatt (a] apple.com> 50452 50453 Reviewed by Dan Bernstein. 50454 50455 https://bugs.webkit.org/show_bug.cgi?id=46196, add marginStart/Before/End/After accessors to RenderBoxModelObject. 50456 50457 * rendering/RenderBox.cpp: 50458 (WebCore::RenderBox::marginBefore): 50459 (WebCore::RenderBox::marginAfter): 50460 (WebCore::RenderBox::marginStart): 50461 (WebCore::RenderBox::marginEnd): 50462 * rendering/RenderBox.h: 50463 * rendering/RenderBoxModelObject.h: 50464 * rendering/RenderInline.cpp: 50465 (WebCore::computeMargin): 50466 (WebCore::RenderInline::marginLeft): 50467 (WebCore::RenderInline::marginRight): 50468 (WebCore::RenderInline::marginTop): 50469 (WebCore::RenderInline::marginBottom): 50470 (WebCore::RenderInline::marginStart): 50471 (WebCore::RenderInline::marginEnd): 50472 * rendering/RenderInline.h: 50473 (WebCore::RenderInline::marginBefore): 50474 (WebCore::RenderInline::marginAfter): 50475 50476 2010-09-21 David Hyatt <hyatt (a] apple.com> 50477 50478 Reviewed by Dan Bernstein. 50479 50480 https://bugs.webkit.org/show_bug.cgi?id=46190, add borderStart/Before/End/After accessors to RenderBoxModelObject. 50481 50482 * rendering/RenderBoxModelObject.h: 50483 (WebCore::RenderBoxModelObject::borderBefore): 50484 (WebCore::RenderBoxModelObject::borderAfter): 50485 (WebCore::RenderBoxModelObject::borderStart): 50486 (WebCore::RenderBoxModelObject::borderEnd): 50487 (WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight): 50488 (WebCore::RenderBoxModelObject::borderAndPaddingLogicalWidth): 50489 * rendering/RenderTableCell.cpp: 50490 (WebCore::RenderTableCell::borderStart): 50491 (WebCore::RenderTableCell::borderEnd): 50492 (WebCore::RenderTableCell::borderBefore): 50493 (WebCore::RenderTableCell::borderAfter): 50494 * rendering/RenderTableCell.h: 50495 50496 2010-09-21 Martin Robinson <mrobinson (a] igalia.com> 50497 50498 Reviewed by Xan Lopez. 50499 50500 [GTK] 'make dist' should be fixed in preparation for the next release 50501 https://bugs.webkit.org/show_bug.cgi?id=46129 50502 50503 * GNUmakefile.am: Update the sources list to include missing headers. 50504 50505 2010-09-21 David Hyatt <hyatt (a] apple.com> 50506 50507 Reviewed by John Sullivan. 50508 50509 https://bugs.webkit.org/show_bug.cgi?id=46188, make the cross-platform setPrinting method match the Mac version of the method. 50510 Specifically don't pass the page size down to subframes of the one you're printing. 50511 50512 * page/Frame.cpp: 50513 (WebCore::Frame::setPrinting): 50514 50515 2010-09-21 Patrick Gansterer <paroga (a] webkit.org> 50516 50517 Reviewed by Adam Roben. 50518 50519 Use WTF::Vector for storing formData in ResourceHandleWin. 50520 https://bugs.webkit.org/show_bug.cgi?id=46180 50521 50522 * platform/network/ResourceHandleInternal.h: 50523 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 50524 * platform/network/win/ResourceHandleWin.cpp: 50525 (WebCore::ResourceHandle::onHandleCreated): 50526 (WebCore::ResourceHandle::onRequestComplete): 50527 50528 2010-09-21 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 50529 50530 Reviewed by Andreas Kling. 50531 50532 [Qt] Check if the reply has been deleted before finishing a network request 50533 https://bugs.webkit.org/show_bug.cgi?id=46174 50534 50535 A crash can happen with the following sequence: 50536 1. QNetworkReplyHandler::abort() emits reply->deleteLater() 50537 2. QNAM emits QNetworkReply::finished() -> calls QNetworkReplyHandler::finish() 50538 3. event loop would call reply->deleteLater() 50539 However a crash occurs since m_reply == 0 on step 2. 50540 50541 * platform/network/qt/QNetworkReplyHandler.cpp: 50542 (WebCore::QNetworkReplyHandler::finish): 50543 50544 2010-09-21 Jochen Eisinger <jochen (a] chromium.org> 50545 50546 Reviewed by Jeremy Orlow. 50547 50548 Use @ to concatenate the database name and the database identifier when building 50549 the filename to use for indexed databases. That character is valid for filenames 50550 but cannot occur in a database identifier derived from a security origin. 50551 https://bugs.webkit.org/show_bug.cgi?id=46178 50552 50553 * storage/IDBFactoryBackendImpl.cpp: 50554 (WebCore::IDBFactoryBackendImpl::databaseFileName): 50555 50556 2010-09-21 Steve Block <steveblock (a] google.com> 50557 50558 Reviewed by Jeremy Orlow. 50559 50560 DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods 50561 https://bugs.webkit.org/show_bug.cgi?id=45891 50562 50563 Tested by existing DeviceOrientation tests. 50564 50565 * dom/DeviceMotionClient.h: 50566 * dom/DeviceMotionController.cpp: 50567 (WebCore::DeviceMotionController::~DeviceMotionController): 50568 * dom/DeviceMotionController.h: 50569 * dom/DeviceOrientationClient.h: 50570 * dom/DeviceOrientationController.cpp: 50571 (WebCore::DeviceOrientationController::~DeviceOrientationController): 50572 * dom/DeviceOrientationController.h: 50573 * loader/EmptyClients.h: 50574 (WebCore::EmptyDeviceMotionClient::deviceOrientationControllerDestroyed): 50575 (WebCore::EmptyDeviceOrientationClient::deviceOrientationControllerDestroyed): 50576 * platform/mock/DeviceOrientationClientMock.h: 50577 (WebCore::DeviceOrientationClientMock::deviceOrientationControllerDestroyed): 50578 50579 2010-09-21 Jochen Eisinger <jochen (a] chromium.org> 50580 50581 Reviewed by Jeremy Orlow. 50582 50583 Factor out the file name used for a given indexed database to a static method. 50584 https://bugs.webkit.org/show_bug.cgi?id=46090 50585 50586 * storage/IDBFactoryBackendImpl.cpp: 50587 (WebCore::openSQLiteDatabase): 50588 (WebCore::IDBFactoryBackendImpl::databaseFileName): 50589 * storage/IDBFactoryBackendImpl.h: 50590 50591 2010-09-21 Dirk Schulze <krit (a] webkit.org> 50592 50593 SVG Filter cleanup 50594 https://bugs.webkit.org/show_bug.cgi?id=45612 50595 50596 Unreviewed change of epsilon back to a more tolerant value in RenderTreeAsText and made it a static const. 50597 This should turn the bots green again. 50598 50599 * rendering/RenderTreeAsText.cpp: 50600 (WebCore::hasFractions): 50601 50602 2010-09-21 David Hyatt <hyatt (a] apple.com> 50603 50604 Reviewed by Dan Bernstein. 50605 50606 https://bugs.webkit.org/show_bug.cgi?id=46125, convert table cell intrinsic padding from top/bottom-based 50607 to before/after-based. A vertical text table can have intrinsic padding built into the left/right 50608 direction (and this allows the base class logical padding methods on RenderBoxModelObject to be safe to use). 50609 50610 * rendering/RenderTableCell.cpp: 50611 (WebCore::RenderTableCell::RenderTableCell): 50612 (WebCore::RenderTableCell::paddingTop): 50613 (WebCore::RenderTableCell::paddingBottom): 50614 (WebCore::RenderTableCell::paddingLeft): 50615 (WebCore::RenderTableCell::paddingRight): 50616 (WebCore::RenderTableCell::paddingBefore): 50617 (WebCore::RenderTableCell::paddingAfter): 50618 * rendering/RenderTableCell.h: 50619 (WebCore::RenderTableCell::setIntrinsicPaddingBefore): 50620 (WebCore::RenderTableCell::setIntrinsicPaddingAfter): 50621 (WebCore::RenderTableCell::setIntrinsicPadding): 50622 (WebCore::RenderTableCell::intrinsicPaddingBefore): 50623 (WebCore::RenderTableCell::intrinsicPaddingAfter): 50624 * rendering/RenderTableSection.cpp: 50625 (WebCore::RenderTableSection::calcRowHeight): 50626 (WebCore::RenderTableSection::layoutRows): 50627 * rendering/RenderTreeAsText.cpp: 50628 (WebCore::RenderTreeAsText::writeRenderObject): 50629 (WebCore::writeTextRun): 50630 50631 2010-09-21 Dirk Schulze <krit (a] webkit.org> 50632 50633 Reviewed by Nikolas Zimmermann. 50634 50635 SVG Filter cleanup 50636 https://bugs.webkit.org/show_bug.cgi?id=45612 50637 50638 Second cleanup patch. Modified files to follow webkit style. Removed dependencies 50639 to SVG of most of the filter effects and prepared them to move from WebCore/svg/graphics/filters 50640 to WebCore/platform/graphics/filters/. 50641 Renamed calculateDrawingIntRect and calculateDrawingRect to requestedRegionOfInputImageData and 50642 drawingRegionOfInputImage to clarify the functionality and make both functions distinguishable. 50643 50644 * platform/graphics/filters/FEBlend.cpp: 50645 (WebCore::FEBlend::apply): 50646 * platform/graphics/filters/FEBlend.h: 50647 * platform/graphics/filters/FEColorMatrix.cpp: 50648 (WebCore::FEColorMatrix::apply): 50649 * platform/graphics/filters/FEColorMatrix.h: 50650 * platform/graphics/filters/FEComponentTransfer.cpp: 50651 (WebCore::FEComponentTransfer::apply): 50652 * platform/graphics/filters/FEComponentTransfer.h: 50653 (WebCore::ComponentTransferFunction::ComponentTransferFunction): 50654 * platform/graphics/filters/FEComposite.cpp: 50655 (WebCore::FEComposite::apply): 50656 * platform/graphics/filters/FEComposite.h: 50657 * platform/graphics/filters/FEGaussianBlur.cpp: 50658 (WebCore::FEGaussianBlur::apply): 50659 * platform/graphics/filters/FEGaussianBlur.h: 50660 * platform/graphics/filters/Filter.h: 50661 * platform/graphics/filters/FilterEffect.cpp: 50662 (WebCore::FilterEffect::requestedRegionOfInputImageData): 50663 (WebCore::FilterEffect::drawingRegionOfInputImage): 50664 (WebCore::FilterEffect::effectContext): 50665 * platform/graphics/filters/FilterEffect.h: 50666 * platform/graphics/filters/ImageBufferFilter.cpp: 50667 * platform/graphics/filters/ImageBufferFilter.h: 50668 * platform/graphics/filters/SourceAlpha.cpp: 50669 (WebCore::SourceAlpha::apply): 50670 * platform/graphics/filters/SourceAlpha.h: 50671 (WebCore::SourceAlpha::isSourceInput): 50672 (WebCore::SourceAlpha::SourceAlpha): 50673 * platform/graphics/filters/SourceGraphic.cpp: 50674 (WebCore::SourceGraphic::apply): 50675 * platform/graphics/filters/SourceGraphic.h: 50676 (WebCore::SourceGraphic::isSourceInput): 50677 (WebCore::SourceGraphic::SourceGraphic): 50678 * rendering/RenderTreeAsText.cpp: 50679 (WebCore::hasFractions): 50680 (WebCore::operator<<): 50681 * rendering/RenderTreeAsText.h: 50682 (WebCore::operator<<): 50683 * rendering/SVGRenderTreeAsText.cpp: 50684 * rendering/SVGRenderTreeAsText.h: 50685 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: 50686 (WebCore::FEConvolveMatrix::apply): 50687 * svg/graphics/filters/SVGFEConvolveMatrix.h: 50688 * svg/graphics/filters/SVGFEDiffuseLighting.cpp: 50689 * svg/graphics/filters/SVGFEDiffuseLighting.h: 50690 * svg/graphics/filters/SVGFEDisplacementMap.cpp: 50691 (WebCore::FEDisplacementMap::apply): 50692 * svg/graphics/filters/SVGFEDisplacementMap.h: 50693 * svg/graphics/filters/SVGFEFlood.cpp: 50694 (WebCore::FEFlood::apply): 50695 (WebCore::FEFlood::externalRepresentation): 50696 * svg/graphics/filters/SVGFEFlood.h: 50697 * svg/graphics/filters/SVGFEImage.cpp: 50698 (WebCore::FEImage::apply): 50699 * svg/graphics/filters/SVGFEImage.h: 50700 * svg/graphics/filters/SVGFELighting.cpp: 50701 (WebCore::FELighting::apply): 50702 * svg/graphics/filters/SVGFELighting.h: 50703 * svg/graphics/filters/SVGFEMerge.cpp: 50704 (WebCore::FEMerge::apply): 50705 * svg/graphics/filters/SVGFEMerge.h: 50706 * svg/graphics/filters/SVGFEMorphology.cpp: 50707 (WebCore::FEMorphology::apply): 50708 * svg/graphics/filters/SVGFEMorphology.h: 50709 * svg/graphics/filters/SVGFEOffset.cpp: 50710 (WebCore::FEOffset::apply): 50711 * svg/graphics/filters/SVGFEOffset.h: 50712 * svg/graphics/filters/SVGFESpecularLighting.cpp: 50713 * svg/graphics/filters/SVGFESpecularLighting.h: 50714 * svg/graphics/filters/SVGFETile.cpp: 50715 (WebCore::FETile::apply): 50716 * svg/graphics/filters/SVGFETile.h: 50717 * svg/graphics/filters/SVGFETurbulence.cpp: 50718 (WebCore::FETurbulence::apply): 50719 * svg/graphics/filters/SVGFETurbulence.h: 50720 50721 2010-09-20 Philippe Normand <pnormand (a] igalia.com> 50722 50723 Reviewed by Eric Carlson. 50724 50725 [GTK] enhanced context menu for media elements 50726 https://bugs.webkit.org/show_bug.cgi?id=45021 50727 50728 New items in the media Element context menu: 50729 - play/pause 50730 - mute/unmute 50731 - controls display control 50732 - switch to fullscreen (for video only) 50733 - loop playback control 50734 - copy media url to clipboard 50735 - open in new window 50736 50737 Test: media/context-menu-actions.html 50738 50739 * page/ContextMenuController.cpp: 50740 (WebCore::ContextMenuController::contextMenuItemSelected): 50741 * platform/ContextMenu.cpp: 50742 (WebCore::ContextMenu::populate): 50743 (WebCore::ContextMenu::checkOrEnableIfNeeded): 50744 * platform/ContextMenuItem.h: 50745 * platform/LocalizationStrategy.h: 50746 * platform/LocalizedStrings.cpp: 50747 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50748 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50749 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50750 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50751 (WebCore::contextMenuItemTagToggleMediaControls): 50752 (WebCore::contextMenuItemTagToggleMediaLoop): 50753 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50754 (WebCore::contextMenuItemTagMediaPlay): 50755 (WebCore::contextMenuItemTagMediaPause): 50756 (WebCore::contextMenuItemTagMediaMute): 50757 * platform/LocalizedStrings.h: 50758 * platform/android/LocalizedStringsAndroid.cpp: 50759 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50760 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50761 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50762 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50763 (WebCore::contextMenuItemTagToggleMediaControls): 50764 (WebCore::contextMenuItemTagToggleMediaLoop): 50765 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50766 (WebCore::contextMenuItemTagMediaPlay): 50767 (WebCore::contextMenuItemTagMediaPause): 50768 (WebCore::contextMenuItemTagMediaMute): 50769 * platform/brew/LocalizedStringsBrew.cpp: 50770 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50771 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50772 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50773 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50774 (WebCore::contextMenuItemTagToggleMediaControls): 50775 (WebCore::contextMenuItemTagToggleMediaLoop): 50776 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50777 (WebCore::contextMenuItemTagMediaPlay): 50778 (WebCore::contextMenuItemTagMediaPause): 50779 (WebCore::contextMenuItemTagMediaMute): 50780 * platform/efl/LocalizedStringsEfl.cpp: 50781 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50782 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50783 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50784 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50785 (WebCore::contextMenuItemTagToggleMediaControls): 50786 (WebCore::contextMenuItemTagToggleMediaLoop): 50787 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50788 (WebCore::contextMenuItemTagMediaPlay): 50789 (WebCore::contextMenuItemTagMediaPause): 50790 (WebCore::contextMenuItemTagMediaMute): 50791 * platform/gtk/ContextMenuItemGtk.cpp: 50792 (WebCore::gtkStockIDFromContextMenuAction): 50793 * platform/gtk/LocalizedStringsGtk.cpp: 50794 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50795 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50796 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50797 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50798 (WebCore::contextMenuItemTagToggleMediaControls): 50799 (WebCore::contextMenuItemTagToggleMediaLoop): 50800 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50801 (WebCore::contextMenuItemTagMediaPlay): 50802 (WebCore::contextMenuItemTagMediaPause): 50803 (WebCore::contextMenuItemTagMediaMute): 50804 * platform/haiku/LocalizedStringsHaiku.cpp: 50805 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50806 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50807 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50808 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50809 (WebCore::contextMenuItemTagToggleMediaControls): 50810 (WebCore::contextMenuItemTagToggleMediaLoop): 50811 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50812 (WebCore::contextMenuItemTagMediaPlay): 50813 (WebCore::contextMenuItemTagMediaPause): 50814 (WebCore::contextMenuItemTagMediaMute): 50815 * platform/wx/LocalizedStringsWx.cpp: 50816 (WebCore::contextMenuItemTagOpenVideoInNewWindow): 50817 (WebCore::contextMenuItemTagOpenAudioInNewWindow): 50818 (WebCore::contextMenuItemTagCopyVideoLinkToClipboard): 50819 (WebCore::contextMenuItemTagCopyAudioLinkToClipboard): 50820 (WebCore::contextMenuItemTagToggleMediaControls): 50821 (WebCore::contextMenuItemTagToggleMediaLoop): 50822 (WebCore::contextMenuItemTagEnterVideoFullscreen): 50823 (WebCore::contextMenuItemTagMediaPlay): 50824 (WebCore::contextMenuItemTagMediaPause): 50825 (WebCore::contextMenuItemTagMediaMute): 50826 * rendering/HitTestResult.cpp: 50827 (WebCore::HitTestResult::absoluteMediaURL): 50828 (WebCore::HitTestResult::mediaSupportsFullscreen): 50829 (WebCore::HitTestResult::mediaElement): 50830 (WebCore::HitTestResult::toggleMediaControlsDisplay): 50831 (WebCore::HitTestResult::toggleMediaLoopPlayback): 50832 (WebCore::HitTestResult::enterFullscreenForVideo): 50833 (WebCore::HitTestResult::mediaControlsEnabled): 50834 (WebCore::HitTestResult::mediaLoopEnabled): 50835 (WebCore::HitTestResult::mediaPlaying): 50836 (WebCore::HitTestResult::toggleMediaPlayState): 50837 (WebCore::HitTestResult::mediaHasAudio): 50838 (WebCore::HitTestResult::mediaMuted): 50839 (WebCore::HitTestResult::toggleMediaMuteState): 50840 * rendering/HitTestResult.h: 50841 50842 2010-09-20 Kwang Yul Seo <skyul (a] company100.net> 50843 50844 Reviewed by Daniel Bates. 50845 50846 [BREWMP] Handle tab key 50847 https://bugs.webkit.org/show_bug.cgi?id=46104 50848 50849 In Brew MP, AVK_FUNCTION is the key code for tab. 50850 Process AVK_FUNCTION as tab in PlatformKeyboardEvent. 50851 50852 * platform/brew/PlatformKeyboardEventBrew.cpp: 50853 (WebCore::keyIdentifierForBrewKeyCode): 50854 (WebCore::windowsKeyCodeForKeyEvent): 50855 50856 2010-09-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 50857 50858 Unreviewed, rolling out r67918. 50859 http://trac.webkit.org/changeset/67918 50860 https://bugs.webkit.org/show_bug.cgi?id=46162 50861 50862 Broke chromium win compile (Requested by jamesr on #webkit). 50863 50864 * WebCore.gyp/WebCore.gyp: 50865 * WebCore.gypi: 50866 * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Renamed from WebCore/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp. 50867 (WebCore::GlyphPage::fill): 50868 50869 2010-09-20 Daniel Bates <dbates (a] rim.com> 50870 50871 Reviewed by Dan Bernstein. 50872 50873 Cleanup: Extract common border radii expansion code in 50874 RenderBoxModelObject::paintBoxShadow() into function 50875 https://bugs.webkit.org/show_bug.cgi?id=45934 50876 50877 Extracted code for expanding and clamping the border radii 50878 into common function to remove duplicate code. 50879 50880 No functionality was changed. So, no new tests. 50881 50882 * rendering/RenderBoxModelObject.cpp: 50883 (WebCore::uniformlyExpandBorderRadii): Added. 50884 (WebCore::RenderBoxModelObject::paintBoxShadow): Moved common code to uniformlyExpandBorderRadii(). 50885 50886 2010-09-20 Kwang Yul Seo <skyul (a] company100.net> 50887 50888 Reviewed by James Robinson. 50889 50890 Make sure skia is not Chromium specific 50891 https://bugs.webkit.org/show_bug.cgi?id=39672 50892 50893 GGlyphPageTreeNodeLinux does not depend on Linux or Chromium. 50894 Move GGlyphPageTreeNodeLinux to platform/graphics/skia and rename it to 50895 GlyphPageTreeNodeSkia.cpp so that other ports can use it. 50896 50897 * WebCore.gyp/WebCore.gyp: 50898 * WebCore.gypi: 50899 * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed. 50900 * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added. 50901 50902 2010-09-20 Kinuko Yasuda <kinuko (a] chromium.org> 50903 50904 Reviewed by David Levin. 50905 50906 Add NoStaticTables attributes to IDLs of FileSystem API for Worker support 50907 https://bugs.webkit.org/show_bug.cgi?id=46021 50908 50909 Added NoStaticTables attributes to IDLs except for ones for Callbacks. 50910 (As NoStaticTables only affects non-callback interfaces.) 50911 50912 * fileapi/DOMFileSystem.idl: 50913 * fileapi/DirectoryEntry.idl: 50914 * fileapi/DirectoryReader.idl: 50915 * fileapi/Entry.idl: 50916 * fileapi/EntryArray.idl: 50917 * fileapi/FileEntry.idl: 50918 * fileapi/Flags.idl: 50919 * fileapi/Metadata.idl: 50920 50921 2010-09-20 Nico Weber <thakis (a] chromium.org> 50922 50923 Reviewed by Adam Barth. 50924 50925 Fix "operands of ? are integers of different signs" clang warnings 50926 https://bugs.webkit.org/show_bug.cgi?id=46157 50927 50928 * platform/graphics/mac/ComplexTextController.cpp: 50929 (WebCore::ComplexTextController::advance): 50930 * rendering/RenderBox.cpp: 50931 (WebCore::RenderBox::calcHeight): 50932 50933 2010-09-20 Vangelis Kokkevis <vangelis (a] chromium.org> 50934 50935 Unreviewed, rolling out r67906. 50936 http://trac.webkit.org/changeset/67906 50937 https://bugs.webkit.org/show_bug.cgi?id=46139 50938 50939 Change causes chromium to crash when switching pages 50940 50941 * platform/graphics/chromium/ContentLayerChromium.h: 50942 * platform/graphics/chromium/LayerChromium.h: 50943 50944 2010-09-19 Antonio Gomes <agomes (a] rim.com> 50945 50946 Reviewed by Ojan Vafai. 50947 50948 SelectionController::modify should ask EditingBehavior for platform specific behavior 50949 https://bugs.webkit.org/show_bug.cgi?id=41975 50950 50951 As a follow up of the refactoring work in bug 39854, patch makes SelectionController::modify() 50952 stop accessing EditingBehaviorType values directly, and replaces its use by the EditingBehavior 50953 class. 50954 50955 Since the "Settings*" parameter of the private SelectionController::modify() method becomes unneeded 50956 with this change (it was used to query the editingBehaviorType), patch merges two modify() methods. 50957 50958 No behavior change, so no new tests. 50959 50960 * editing/EditingBehavior.h: 50961 (WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary): 50962 * editing/SelectionController.cpp: 50963 (WebCore::SelectionController::modify): 50964 * editing/SelectionController.h: 50965 50966 2010-09-20 Vangelis Kokkevis <vangelis (a] chromium.org> 50967 50968 Reviewed by James Robinson. 50969 50970 [chromium] Making destructors of LayerChromium and ContentLayerChromium virtual 50971 so that the derived class' destructor code gets called. 50972 https://bugs.webkit.org/show_bug.cgi?id=46139 50973 50974 * platform/graphics/chromium/ContentLayerChromium.h: 50975 * platform/graphics/chromium/LayerChromium.h: 50976 50977 2010-09-20 Darin Adler <darin (a] apple.com> 50978 50979 Reviewed by James Robinson. 50980 50981 Deprecate the inputType function on HTMLInputElement 50982 https://bugs.webkit.org/show_bug.cgi?id=46023 50983 50984 * html/HTMLInputElement.cpp: 50985 (WebCore::HTMLInputElement::HTMLInputElement): Use m_deprecatedTypeNumber. 50986 (WebCore::HTMLInputElement::isValidValue): Use deprecatedInputType. 50987 (WebCore::HTMLInputElement::typeMismatch): Ditto. 50988 (WebCore::HTMLInputElement::valueMissing): Ditto. 50989 (WebCore::HTMLInputElement::rangeUnderflow): Ditto. 50990 (WebCore::HTMLInputElement::rangeOverflow): Ditto. 50991 (WebCore::HTMLInputElement::minimum): Ditto. 50992 (WebCore::HTMLInputElement::maximum): Ditto. 50993 (WebCore::HTMLInputElement::stepBase): Ditto. 50994 (WebCore::HTMLInputElement::stepMismatch): Ditto. 50995 (WebCore::HTMLInputElement::getStepParameters): Ditto. 50996 (WebCore::HTMLInputElement::getAllowedValueStep): Ditto. 50997 (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto. 50998 (WebCore::HTMLInputElement::shouldUseInputMethod): Ditto. 50999 (WebCore::HTMLInputElement::handleBlurEvent): Ditto. 51000 (WebCore::HTMLInputElement::setType): Added a comment. 51001 (WebCore::HTMLInputElement::updateType): Replaced the setInputType function 51002 with this. The type is always the type attribute value, so there is no value 51003 in passing the type string in, and this is an internal implementation detail, 51004 not a public function. 51005 (WebCore::createFormControlTypes): Use deprecatedNumberOfTypes. 51006 (WebCore::HTMLInputElement::formControlType): Use deprecatedInputType. 51007 (WebCore::HTMLInputElement::saveFormControlState): Ditto. 51008 (WebCore::HTMLInputElement::restoreFormControlState): Ditto. 51009 (WebCore::HTMLInputElement::accessKeyAction): Ditto. 51010 (WebCore::HTMLInputElement::mapToEntry): Ditto. 51011 (WebCore::HTMLInputElement::parseMappedAttribute): Ditto. 51012 (WebCore::HTMLInputElement::rendererIsNeeded): Ditto. 51013 (WebCore::HTMLInputElement::createRenderer): Ditto. 51014 (WebCore::HTMLInputElement::attach): Ditto. 51015 (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Ditto. 51016 (WebCore::HTMLInputElement::appendFormData): Ditto. 51017 (WebCore::HTMLInputElement::isTextField): Ditto. 51018 (WebCore::HTMLInputElement::isTextType): Ditto. 51019 (WebCore::HTMLInputElement::setChecked): Ditto. 51020 (WebCore::HTMLInputElement::value): Ditto. 51021 (WebCore::HTMLInputElement::valueWithDefault): Ditto. 51022 (WebCore::HTMLInputElement::setSuggestedValue): Ditto. 51023 (WebCore::HTMLInputElement::setValue): Ditto. 51024 (WebCore::HTMLInputElement::parseToDouble): Ditto. 51025 (WebCore::HTMLInputElement::valueAsDate): Ditto. 51026 (WebCore::HTMLInputElement::setValueAsDate): Ditto. 51027 (WebCore::HTMLInputElement::valueAsNumber): Ditto. 51028 (WebCore::HTMLInputElement::setValueAsNumber): Ditto. 51029 (WebCore::HTMLInputElement::serializeForDateTimeTypes): Ditto. 51030 (WebCore::HTMLInputElement::serialize): Ditto. 51031 (WebCore::HTMLInputElement::setValueFromRenderer): Ditto. 51032 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Ditto. 51033 (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto. 51034 (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto. 51035 (WebCore::HTMLInputElement::defaultEventHandler): Ditto. 51036 (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): Ditto. 51037 (WebCore::HTMLInputElement::files): Ditto. 51038 (WebCore::HTMLInputElement::isAcceptableValue): Ditto. 51039 (WebCore::HTMLInputElement::sanitizeValue): Ditto. 51040 (WebCore::HTMLInputElement::hasUnacceptableValue): Ditto. 51041 (WebCore::HTMLInputElement::needsActivationCallback): Ditto. 51042 (WebCore::HTMLInputElement::isRequiredFormControl): Ditto. 51043 (WebCore::HTMLInputElement::recalcWillValidate): Ditto. 51044 (WebCore::HTMLInputElement::parseToDateComponents): Ditto. 51045 (WebCore::HTMLInputElement::dataList): Ditto. 51046 (WebCore::HTMLInputElement::isSpeechEnabled): Ditto. 51047 51048 * html/HTMLInputElement.h: Renamed InputType to DeprecatedInputType since it 51049 should not be used outside this class. Renamed numberOfTypes to 51050 dprecatedNumberOfTypes for the same reason. Changed all code to use 51051 deprecatedInputType function instead of m_type. Renamed inputType function 51052 to deprecatedInputType. Replaced public setInputType function with private 51053 updateType function. Renamed m_type data member to m_deprecatedTypeNumber. 51054 51055 * rendering/MediaControlElements.cpp: 51056 (WebCore::MediaControlInputElement::MediaControlInputElement): 51057 * rendering/RenderFileUploadControl.cpp: 51058 (WebCore::RenderFileUploadControl::updateFromElement): 51059 Use setType instead of setInputType. 51060 51061 2010-09-20 Mihai Parparita <mihaip (a] chromium.org> 51062 51063 Unreviewed; an attempt to fix Windows build. 51064 51065 * WebCore.vcproj/WebCore.vcproj: 51066 51067 2010-09-20 Simon Fraser <simon.fraser (a] apple.com> 51068 51069 Reviewed by Dan Bernstein. 51070 51071 When PDF image is directly composited, it does not display 51072 https://bugs.webkit.org/show_bug.cgi?id=46144 51073 51074 In the "direct image compositing" code path, we set the image directly 51075 as the contents of the GraphicsLayer. However, this only works with 51076 bitmap images, so we have to check that the image is a bitmap image. 51077 51078 Test: compositing/images/direct-pdf-image.html 51079 51080 * rendering/RenderLayerBacking.cpp: 51081 (WebCore::RenderLayerBacking::isDirectlyCompositedImage): 51082 51083 2010-09-20 Simon Fraser <simon.fraser (a] apple.com> 51084 51085 Reviewed by Darin Adler. 51086 51087 Crash when div with content set to image gets composited (Vimeo). 51088 https://bugs.webkit.org/show_bug.cgi?id=46140 51089 51090 When CSS specifies that the content of an element is an image, we make 51091 a RenderImage, and setStyle() before setting the image resource. In this 51092 case the compositing code can attempt to access the cached image, which 51093 would crash with a null deref. 51094 51095 Fix by null-checking m_imageResource. 51096 51097 Test: compositing/images/content-image.html 51098 51099 * rendering/RenderImage.h: 51100 (WebCore::RenderImage::cachedImage): 51101 51102 2010-09-20 Mihai Parparita <mihaip (a] chromium.org> 51103 51104 Reviewed by Dimitri Glazkov. 51105 51106 Hashchange event is no longer a simple event, needs to be its own interface 51107 https://bugs.webkit.org/show_bug.cgi?id=36335 51108 51109 Add HashChangeEvent.idl and supporting files/changes. 51110 51111 Test: fast/loader/hashchange-event-properties.html 51112 51113 The original version of this patch was written by 51114 Steven Lai <s3lance (a] hotmail.com>. 51115 51116 * CMakeLists.txt: 51117 * DerivedSources.cpp: 51118 * DerivedSources.make: 51119 * GNUmakefile.am: 51120 * WebCore.gypi: 51121 * WebCore.pri: 51122 * WebCore.vcproj/WebCore.vcproj: 51123 * WebCore.xcodeproj/project.pbxproj: 51124 * bindings/js/JSEventCustom.cpp: 51125 (WebCore::toJS): 51126 * bindings/v8/custom/V8EventCustom.cpp: 51127 (WebCore::toV8): 51128 * dom/Document.cpp: 51129 (WebCore::Document::enqueueHashchangeEvent): 51130 * dom/Event.cpp: 51131 (WebCore::Event::isHashChangeEvent): 51132 * dom/Event.h: 51133 * dom/HashChangeEvent.h: Added. 51134 (WebCore::HashChangeEvent::isHashChangeEvent): 51135 (WebCore::HashChangeEvent::create): 51136 (WebCore::HashChangeEvent::initHashChangeEvent): 51137 (WebCore::HashChangeEvent::oldURL): 51138 (WebCore::HashChangeEvent::newURL): 51139 (WebCore::HashChangeEvent::HashChangeEvent): 51140 * dom/HashChangeEvent.idl: Added. 51141 * page/DOMWindow.idl: 51142 51143 2010-09-20 Andy Estes <aestes (a] apple.com> 51144 51145 Reviewed by Adam Barth. 51146 51147 REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes 51148 https://bugs.webkit.org/show_bug.cgi?id=40961 51149 51150 Add an optional quirk to the HTML5 tokenizer that reverts it to WebKit's 51151 legacy behavior when the start of a new token is encountered before the 51152 current token is finished parsing. The legacy behavior is to emit the 51153 current token as if it were properly closed and being parsing the new 51154 token. 51155 51156 Test: fast/parser/pre-html5-parser-quirks.html 51157 51158 * html/parser/HTMLDocumentParser.cpp: 51159 (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate 51160 m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). 51161 (WebCore::usePreHTMLParserQuirks): Add a helper function to return the 51162 value of Settings::usePreHTML5ParserQuirks() if Settings is non-NULL. 51163 * html/parser/HTMLPreloadScanner.cpp: 51164 (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): Instantiate 51165 m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). 51166 * html/parser/HTMLTokenizer.cpp: 51167 (WebCore::HTMLTokenizer::HTMLTokenizer): 51168 (WebCore::HTMLTokenizer::nextToken): If the quirk is enabled and an 51169 unexpected '<' is encountered in certain states, emit the current token 51170 and reprocess the '<' as the start of a new token. 51171 * html/parser/HTMLTokenizer.h: 51172 (WebCore::HTMLTokenizer::create): 51173 * html/parser/HTMLViewSourceParser.cpp: 51174 (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): Instantiate 51175 m_tokenizer with the value of Settings::usePreHTML5ParserQuirks(). 51176 * page/Settings.cpp: 51177 (WebCore::Settings::Settings): 51178 * page/Settings.h: 51179 (WebCore::Settings::setUsePreHTML5ParserQuirks): 51180 (WebCore::Settings::usePreHTML5ParserQuirks): 51181 51182 2010-09-20 David Hyatt <hyatt (a] apple.com> 51183 51184 Reviewed by Dan Bernstein. 51185 51186 https://bugs.webkit.org/show_bug.cgi?id=46132, add an isVerticalBlockFlow() method to RenderStyle and 51187 patch callers so that they don't have to check both top-to-bottom and bottom-to-top block flow. 51188 51189 * rendering/RenderBox.cpp: 51190 (WebCore::RenderBox::availableLogicalWidth): 51191 * rendering/style/RenderStyle.cpp: 51192 (WebCore::RenderStyle::logicalWidth): 51193 (WebCore::RenderStyle::logicalHeight): 51194 (WebCore::RenderStyle::logicalMinWidth): 51195 (WebCore::RenderStyle::logicalMaxWidth): 51196 (WebCore::RenderStyle::logicalMinHeight): 51197 (WebCore::RenderStyle::logicalMaxHeight): 51198 (WebCore::RenderStyle::borderStartWidth): 51199 (WebCore::RenderStyle::borderEndWidth): 51200 (WebCore::RenderStyle::marginStart): 51201 (WebCore::RenderStyle::marginEnd): 51202 (WebCore::RenderStyle::paddingStart): 51203 (WebCore::RenderStyle::paddingEnd): 51204 * rendering/style/RenderStyle.h: 51205 (WebCore::InheritedFlags::isVerticalBlockFlow): 51206 51207 2010-09-20 David Hyatt <hyatt (a] apple.com> 51208 51209 Reviewed by Dan Bernstein. 51210 51211 https://bugs.webkit.org/show_bug.cgi?id=46124, add support for logical padding accessors to 51212 RenderBoxModelObject. 51213 51214 Added fast/blockflow/percentage-padding.html even though it fails, so that when more of layout is patched 51215 we can see it start passing. 51216 51217 * rendering/RenderBoxModelObject.cpp: 51218 (WebCore::RenderBoxModelObject::paddingTop): 51219 (WebCore::RenderBoxModelObject::paddingBottom): 51220 (WebCore::RenderBoxModelObject::paddingLeft): 51221 (WebCore::RenderBoxModelObject::paddingRight): 51222 (WebCore::RenderBoxModelObject::paddingBefore): 51223 (WebCore::RenderBoxModelObject::paddingAfter): 51224 (WebCore::RenderBoxModelObject::paddingStart): 51225 (WebCore::RenderBoxModelObject::paddingEnd): 51226 * rendering/RenderBoxModelObject.h: 51227 51228 2010-09-20 David Hyatt <hyatt (a] apple.com> 51229 51230 Reviewed by Dan Bernstein. 51231 51232 https://bugs.webkit.org/show_bug.cgi?id=46126, add availableLogicalWidth() to RenderBox. 51233 51234 * rendering/RenderBlock.cpp: 51235 (WebCore::RenderBlock::availableWidth): 51236 (WebCore::RenderBlock::availableLogicalWidth): 51237 * rendering/RenderBlock.h: 51238 * rendering/RenderBox.cpp: 51239 (WebCore::RenderBox::availableLogicalWidth): 51240 * rendering/RenderBox.h: 51241 (WebCore::RenderBox::availableWidth): 51242 51243 2010-09-20 Kenneth Russell <kbr (a] google.com> 51244 51245 Reviewed by James Robinson. 51246 51247 [chromium] Change compositor to use GraphicsContext3D rather than GLES2Context 51248 https://bugs.webkit.org/show_bug.cgi?id=45912 51249 51250 Switched Chromium's compositor to use GraphicsContext3D to issue 51251 its OpenGL rendering calls rather than the Chromium-specific 51252 GLES2Context and command buffer OpenGL implementation. 51253 51254 The in-process software rendering path for GraphicsContext3D does 51255 not yet work with the compositor, at least not on Mac OS X. This 51256 will be worked on in subsequent bugs. 51257 51258 Tested manually with 3D CSS, WebGL and video content on Mac OS X 51259 and Linux. No new tests. 51260 51261 * platform/graphics/chromium/Canvas2DLayerChromium.cpp: 51262 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium): 51263 (WebCore::Canvas2DLayerChromium::updateContents): 51264 * platform/graphics/chromium/CanvasLayerChromium.cpp: 51265 (WebCore::CanvasLayerChromium::SharedValues::SharedValues): 51266 (WebCore::CanvasLayerChromium::SharedValues::~SharedValues): 51267 (WebCore::CanvasLayerChromium::draw): 51268 * platform/graphics/chromium/CanvasLayerChromium.h: 51269 * platform/graphics/chromium/ContentLayerChromium.cpp: 51270 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 51271 (WebCore::ContentLayerChromium::SharedValues::~SharedValues): 51272 (WebCore::ContentLayerChromium::~ContentLayerChromium): 51273 (WebCore::ContentLayerChromium::updateTextureRect): 51274 (WebCore::ContentLayerChromium::draw): 51275 * platform/graphics/chromium/ContentLayerChromium.h: 51276 * platform/graphics/chromium/DrawingBufferChromium.cpp: 51277 (WebCore::DrawingBuffer::publishToPlatformLayer): 51278 * platform/graphics/chromium/LayerChromium.cpp: 51279 (WebCore::loadShader): 51280 (WebCore::LayerChromium::SharedValues::SharedValues): 51281 (WebCore::LayerChromium::SharedValues::~SharedValues): 51282 (WebCore::LayerChromium::createShaderProgram): 51283 (WebCore::LayerChromium::layerRendererContext): 51284 (WebCore::LayerChromium::drawTexturedQuad): 51285 (WebCore::LayerChromium::drawDebugBorder): 51286 (WebCore::LayerChromium::drawAsMask): 51287 (WebCore::LayerChromium::prepareForDraw): 51288 * platform/graphics/chromium/LayerChromium.h: 51289 (WebCore::LayerChromium::SharedValues::context): 51290 * platform/graphics/chromium/LayerRendererChromium.cpp: 51291 (WebCore::LayerRendererChromium::create): 51292 (WebCore::LayerRendererChromium::LayerRendererChromium): 51293 (WebCore::LayerRendererChromium::context): 51294 (WebCore::LayerRendererChromium::debugGLCall): 51295 (WebCore::LayerRendererChromium::useShader): 51296 (WebCore::LayerRendererChromium::prepareToDrawLayers): 51297 (WebCore::LayerRendererChromium::updateRootLayerTextureRect): 51298 (WebCore::LayerRendererChromium::drawLayers): 51299 (WebCore::LayerRendererChromium::finish): 51300 (WebCore::LayerRendererChromium::present): 51301 (WebCore::LayerRendererChromium::getFramebufferPixels): 51302 (WebCore::LayerRendererChromium::createLayerTexture): 51303 (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer): 51304 (WebCore::LayerRendererChromium::drawLayersRecursive): 51305 (WebCore::LayerRendererChromium::drawLayer): 51306 (WebCore::LayerRendererChromium::scissorToRect): 51307 (WebCore::LayerRendererChromium::makeContextCurrent): 51308 (WebCore::LayerRendererChromium::resizeOnscreenContent): 51309 (WebCore::LayerRendererChromium::initializeSharedObjects): 51310 (WebCore::LayerRendererChromium::cleanupSharedObjects): 51311 * platform/graphics/chromium/LayerRendererChromium.h: 51312 * platform/graphics/chromium/VideoLayerChromium.cpp: 51313 (WebCore::VideoLayerChromium::createTextureRect): 51314 (WebCore::VideoLayerChromium::updateTextureRect): 51315 * platform/graphics/chromium/WebGLLayerChromium.cpp: 51316 (WebCore::WebGLLayerChromium::updateContents): 51317 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 51318 (WebCore::SharedGraphicsContext3D::flush): 51319 (WebCore::SharedGraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM): 51320 (WebCore::SharedGraphicsContext3D::copyTextureToParentTextureCHROMIUM): 51321 * platform/graphics/gpu/SharedGraphicsContext3D.h: 51322 51323 2010-09-20 David Hyatt <hyatt (a] apple.com> 51324 51325 Reviewed by Dan Bernstein. 51326 51327 https://bugs.webkit.org/show_bug.cgi?id=46119, add logical accessors to RenderStyle. Not used by any RenderObjects yet, so no tests 51328 until then. 51329 51330 * rendering/style/RenderStyle.cpp: 51331 (WebCore::RenderStyle::logicalWidth): 51332 (WebCore::RenderStyle::logicalHeight): 51333 (WebCore::RenderStyle::logicalMinWidth): 51334 (WebCore::RenderStyle::logicalMaxWidth): 51335 (WebCore::RenderStyle::logicalMinHeight): 51336 (WebCore::RenderStyle::logicalMaxHeight): 51337 (WebCore::RenderStyle::borderBeforeWidth): 51338 (WebCore::RenderStyle::borderAfterWidth): 51339 (WebCore::RenderStyle::borderStartWidth): 51340 (WebCore::RenderStyle::borderEndWidth): 51341 (WebCore::RenderStyle::marginBefore): 51342 (WebCore::RenderStyle::marginAfter): 51343 (WebCore::RenderStyle::marginStart): 51344 (WebCore::RenderStyle::marginEnd): 51345 (WebCore::RenderStyle::paddingBefore): 51346 (WebCore::RenderStyle::paddingAfter): 51347 (WebCore::RenderStyle::paddingStart): 51348 (WebCore::RenderStyle::paddingEnd): 51349 * rendering/style/RenderStyle.h: 51350 51351 2010-09-20 David Hyatt <hyatt (a] apple.com> 51352 51353 Reviewed by Dan Bernstein. 51354 51355 https://bugs.webkit.org/show_bug.cgi?id=46116, implement block-flow-aware logical properties. 51356 51357 This patch adds all the logical properties from the CSS3 Writing Mode draft for margins, padding, border, 51358 width and height. 51359 51360 Added fast/css/logical-property-resolution.html 51361 51362 * css/CSSComputedStyleDeclaration.cpp: 51363 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 51364 * css/CSSParser.cpp: 51365 (WebCore::CSSParser::parseValue): 51366 * css/CSSProperty.cpp: 51367 (WebCore::resolveToPhysicalProperty): 51368 (WebCore::CSSProperty::resolveDirectionAwareProperty): 51369 * css/CSSProperty.h: 51370 * css/CSSPropertyNames.in: 51371 * css/CSSStyleSelector.cpp: 51372 (WebCore::CSSStyleSelector::applyDeclarations): 51373 (WebCore::CSSStyleSelector::applyProperty): 51374 51375 2010-09-20 David Hyatt <hyatt (a] apple.com> 51376 51377 Reviewed by Beth Dakin. 51378 51379 https://bugs.webkit.org/show_bug.cgi?id=46114, two tables repaint tests failing on bots. 51380 51381 Patch layoutRows to apply the layout delta when setting a new cell location prior to laying out the cell. 51382 51383 The layout delta is then removed after layout has happened when the repaint check is done. This change 51384 makes cell layout match block child layout, and now the cells have the correct new location up front 51385 when laying out (a necessity for pagination). 51386 51387 * rendering/RenderTableSection.cpp: 51388 (WebCore::RenderTableSection::layoutRows): 51389 51390 2010-09-20 Jacob Dinu <dinu.jacob (a] nokia.com> 51391 51392 Reviewed by Adam Barth. 51393 51394 When loading a cached page, dispatchDidCommitLoad is called after FrameLoader::open so 51395 that all initialzations are done before calling client dispatchDidCommitLoad to avoid 51396 client from accessing incorrect data. 51397 https://bugs.webkit.org/show_bug.cgi?id=41155 51398 51399 * loader/FrameLoader.cpp: 51400 (WebCore::FrameLoader::commitProvisionalLoad): 51401 (WebCore::FrameLoader::transitionToCommitted): 51402 51403 2010-09-20 Simon Fraser <simon.fraser (a] apple.com> 51404 51405 Reviewed by Adam Roben. 51406 51407 REGRESSION: alternating animation direction doesn't work on Windows 51408 https://bugs.webkit.org/show_bug.cgi?id=46017 51409 51410 Animation-direction on Windows was broken because bitfields on 51411 Windows are signed. 51412 51413 Fixed by making m_direction an unsigned in the bitfield, and 51414 casting in the accessor. 51415 51416 Test: animations/animation-direction.html 51417 51418 * platform/animation/Animation.h: 51419 (WebCore::Animation::direction): 51420 51421 2010-09-20 Enrica Casucci <enrica (a] apple.com> 51422 51423 Reviewed by Sam Weinig. 51424 51425 Pasteboard doesn't work in WebKit2. 51426 https://bugs.webkit.org/show_bug.cgi?id=42317 51427 <rdar://problem/7660537> 51428 51429 * loader/EmptyClients.h: 51430 (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Changed parameter to 51431 be a Vector of RefPtr. 51432 * page/EditorClient.h: 51433 * platform/mac/PasteboardMac.mm: 51434 (WebCore::Pasteboard::documentFragmentWithRtf): Stylistic changes. 51435 51436 2010-09-20 Yong Li <yoli (a] rim.com> 51437 51438 Reviewed by Alexey Proskuryakov. 51439 51440 https://bugs.webkit.org/show_bug.cgi?id=39966 51441 Make compareBorders() a consistent compare function which can beused by qsort(). 51442 51443 New test case added: LayoutTests/tables/sort-collapsed-border-styles.html 51444 51445 * rendering/RenderTableCell.cpp: 51446 (WebCore::compareBorders): 51447 (WebCore::chooseBorder): 51448 (WebCore::RenderTableCell::collapsedLeftBorder): 51449 (WebCore::RenderTableCell::collapsedRightBorder): 51450 (WebCore::RenderTableCell::collapsedTopBorder): 51451 (WebCore::RenderTableCell::collapsedBottomBorder): 51452 (WebCore::compareBorderStylesForQSort): 51453 51454 2010-09-20 Patrick Gansterer <paroga (a] paroga.com> 51455 51456 Reviewed by Adam Roben. 51457 51458 [WINCE] Buildfix for PluginViewWin.cpp 51459 https://bugs.webkit.org/show_bug.cgi?id=46033 51460 51461 * plugins/win/PluginViewWin.cpp: 51462 (WebCore::PluginView::paintIntoTransformedContext): 51463 (WebCore::PluginView::snapshot): 51464 51465 2010-09-18 David Hyatt <hyatt (a] apple.com> 51466 51467 Reviewed by Sam Weinig. 51468 51469 https://bugs.webkit.org/show_bug.cgi?id=46030, aintitcool.com doesn't paginate correctly when printed. 51470 51471 This happens because the site always has a document width that will exceed the page width. 51472 We incorrectly apply a double scale instead of clipping after the first scale still doesn't fit. 51473 The fix for the issue is to cap the right layout overflow to the page width and to just clip out 51474 any additional excess. This is the code in FrameView.cpp. 51475 51476 This patch also cleans up table cell invalidation to reduce the # of relayouts. This change is not 51477 a correctness fix. It's just performance. 51478 51479 I'm not sure how to write a test for this, since the double scale is an artifact of how WebKit mac calls 51480 back in when really printing. 51481 51482 * page/FrameView.cpp: 51483 (WebCore::FrameView::forceLayoutForPagination): 51484 * rendering/RenderBlock.cpp: 51485 (WebCore::RenderBlock::layoutBlockChild): 51486 (WebCore::RenderBlock::layoutPositionedObjects): 51487 (WebCore::RenderBlock::positionNewFloats): 51488 * rendering/RenderBlock.h: 51489 (WebCore::RenderBlock::markForPaginationRelayout): 51490 * rendering/RenderFlexibleBox.cpp: 51491 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 51492 (WebCore::RenderFlexibleBox::layoutVerticalBox): 51493 * rendering/RenderTableSection.cpp: 51494 (WebCore::RenderTableSection::layoutRows): 51495 51496 2010-09-20 Ilya Tikhonovsky <loislo (a] chromium.org> 51497 51498 Reviewed by Pavel Feldman. 51499 51500 Web Inspector: merge Inspector client runtime events into the serialized inspector state object. 51501 51502 Drive-by rename getBackendSettings -> getInspectorState to better reflect the nature of the data. 51503 51504 https://bugs.webkit.org/show_bug.cgi?id=45974 51505 51506 * inspector/Inspector.idl: 51507 * inspector/InspectorClient.h: 51508 (WebCore::InspectorClient::updateInspectorStateCookie): 51509 * inspector/InspectorController.cpp: 51510 (WebCore::InspectorController::saveApplicationSettings): 51511 (WebCore::InspectorController::getInspectorState): 51512 (WebCore::InspectorController::updateInspectorStateCookie): 51513 (WebCore::InspectorController::restoreInspectorStateFromCookie): 51514 (WebCore::InspectorController::getSettings): 51515 (WebCore::InspectorController::setMonitoringXHREnabled): 51516 (WebCore::InspectorController::restoreDebugger): 51517 (WebCore::InspectorController::restoreProfiler): 51518 (WebCore::InspectorController::setResourceTrackingEnabled): 51519 (WebCore::InspectorController::ensureSettingsLoaded): 51520 (WebCore::InspectorController::startTimelineProfiler): 51521 (WebCore::InspectorController::stopTimelineProfiler): 51522 (WebCore::InspectorController::enableProfiler): 51523 (WebCore::InspectorController::disableProfiler): 51524 (WebCore::InspectorController::enableDebuggerFromFrontend): 51525 (WebCore::InspectorController::disableDebugger): 51526 * inspector/InspectorController.h: 51527 * inspector/front-end/ConsoleView.js: 51528 (WebInspector.ConsoleView.prototype._handleContextMenuEvent): 51529 * inspector/front-end/ResourcesPanel.js: 51530 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): 51531 * inspector/front-end/Settings.js: 51532 (WebInspector.Settings.initialize): 51533 * inspector/front-end/inspector.js: 51534 (WebInspector.doLoadedDone.populateInspectorState): 51535 (WebInspector.doLoadedDone): 51536 51537 2010-09-20 Dirk Schulze <krit (a] webkit.org> 51538 51539 Reviewed by Nikolas Zimmermann. 51540 51541 SVG Filter cleanup 51542 https://bugs.webkit.org/show_bug.cgi?id=45612 51543 51544 All effect inputs are stored in a Vector in FilterEffect instead of passing them via constructors to every effect type. 51545 This simplifies the primitive subregion logic and centralizes it in determineFilterPrimitiveSubregion. 51546 Just SourceGraphic, SourceAlpha and FETile still calculate filter primitive subregions on 51547 their own. Working on it in a followup patch. 51548 The subregions code is SVG specific and moving this calculation to FilterEffect is an 51549 intermediate step before moving it to RenderSVGResourceFilterPrimitive in a following patch. 51550 The new FilterEffectVector will also make it possible to add code to determine the 51551 smallest used region of an effect and will help save memory and resources in the future. 51552 subRegion got renamed to filterPrimitiveSubregion to match the name scheme. scaledSubRegion got 51553 renamed to repaintRectInLocalCoordinates since this is its proper meaning. 51554 Removed unnecessary member variables and functions from FilterEffect. 51555 51556 No new tests added since the functionality didn't change. 51557 51558 * platform/graphics/cairo/GraphicsContextCairo.cpp: scaledSubRegion was renamed to repaintRectInLocalCoordinates. 51559 (WebCore::GraphicsContext::createShadowMask): 51560 * platform/graphics/filters/FEBlend.cpp: Removed Filter effect inputs from constructor. 51561 (WebCore::FEBlend::FEBlend): 51562 (WebCore::FEBlend::create): 51563 (WebCore::FEBlend::apply): Call inputFilterEffects to get input filter primitives. 51564 (WebCore::FEBlend::externalRepresentation): Call inputFilterEffects to get input filter primitives. 51565 * platform/graphics/filters/FEBlend.h: 51566 * platform/graphics/filters/FEColorMatrix.cpp: Ditto. 51567 (WebCore::FEColorMatrix::FEColorMatrix): 51568 (WebCore::FEColorMatrix::create): 51569 (WebCore::FEColorMatrix::apply): 51570 (WebCore::FEColorMatrix::externalRepresentation): 51571 * platform/graphics/filters/FEColorMatrix.h: 51572 * platform/graphics/filters/FEComponentTransfer.cpp: Ditto. 51573 (WebCore::FEComponentTransfer::FEComponentTransfer): 51574 (WebCore::FEComponentTransfer::create): 51575 (WebCore::FEComponentTransfer::apply): 51576 (WebCore::FEComponentTransfer::externalRepresentation): 51577 * platform/graphics/filters/FEComponentTransfer.h: 51578 * platform/graphics/filters/FEComposite.cpp: Ditto. 51579 (WebCore::FEComposite::FEComposite): 51580 (WebCore::FEComposite::create): 51581 (WebCore::FEComposite::apply): 51582 (WebCore::FEComposite::externalRepresentation): 51583 * platform/graphics/filters/FEComposite.h: 51584 * platform/graphics/filters/FEGaussianBlur.cpp: Ditto. 51585 (WebCore::FEGaussianBlur::FEGaussianBlur): 51586 (WebCore::FEGaussianBlur::create): 51587 (WebCore::FEGaussianBlur::apply): 51588 (WebCore::FEGaussianBlur::externalRepresentation): 51589 * platform/graphics/filters/FEGaussianBlur.h: 51590 * platform/graphics/filters/Filter.h: 51591 (WebCore::Filter::determineFilterPrimitiveSubregion): Renamed from calculateEffectSubRegion to match name scheme. 51592 * platform/graphics/filters/FilterEffect.cpp: 51593 (WebCore::FilterEffect::FilterEffect): 51594 (WebCore::FilterEffect::determineFilterPrimitiveSubregion): The main place for subregion calculation. 51595 (WebCore::FilterEffect::calculateDrawingIntRect): Takes repaintRectInLocalCoordinates now. 51596 (WebCore::FilterEffect::calculateDrawingRect): ditto. 51597 (WebCore::FilterEffect::getEffectContext): Check if ImageBuffer was created. 51598 * platform/graphics/filters/FilterEffect.h: Changed names to match name scheme. Removed unnecessary member variables and functions. 51599 Seperate SVG specific member variables and functions. Will get removed in followup patches. 51600 (WebCore::FilterEffect::resultImage): 51601 (WebCore::FilterEffect::setEffectBuffer): 51602 (WebCore::FilterEffect::inputEffect): 51603 (WebCore::FilterEffect::inputEffects): 51604 (WebCore::FilterEffect::numberOfinputEffects): 51605 (WebCore::FilterEffect::isAlphaImage): 51606 (WebCore::FilterEffect::setIsAlphaImage): 51607 (WebCore::FilterEffect::repaintRectInLocalCoordinates): 51608 (WebCore::FilterEffect::setRepaintRectInLocalCoordinates): 51609 (WebCore::FilterEffect::isSourceInput): 51610 (WebCore::FilterEffect::hasX): 51611 (WebCore::FilterEffect::setHasX): 51612 (WebCore::FilterEffect::hasY): 51613 (WebCore::FilterEffect::setHasY): 51614 (WebCore::FilterEffect::hasWidth): 51615 (WebCore::FilterEffect::setHasWidth): 51616 (WebCore::FilterEffect::hasHeight): 51617 (WebCore::FilterEffect::setHasHeight): 51618 (WebCore::FilterEffect::filterPrimitiveSubregion): 51619 (WebCore::FilterEffect::setFilterPrimitiveSubregion): 51620 (WebCore::FilterEffect::effectBoundaries): 51621 (WebCore::FilterEffect::setEffectBoundaries): 51622 * platform/graphics/filters/SourceAlpha.cpp: 51623 (WebCore::SourceAlpha::determineFilterPrimitiveSubregion): Renamed to match name scheme. 51624 * platform/graphics/filters/SourceAlpha.h: 51625 (WebCore::SourceAlpha::isSourceInput): 51626 * platform/graphics/filters/SourceGraphic.cpp: 51627 (WebCore::SourceGraphic::determineFilterPrimitiveSubregion): Ditto. 51628 * platform/graphics/filters/SourceGraphic.h: 51629 (WebCore::SourceGraphic::isSourceInput): 51630 * rendering/RenderSVGResourceFilter.cpp: Adapt to renames in FilterEffect. 51631 (WebCore::RenderSVGResourceFilter::applyResource): 51632 (WebCore::RenderSVGResourceFilter::postApplyResource): 51633 * svg/SVGFEBlendElement.cpp: Constructor of FEBlend doesn't take input effects. Adding them afterwards. 51634 (WebCore::SVGFEBlendElement::build): 51635 * svg/SVGFEColorMatrixElement.cpp: Ditto. 51636 (WebCore::SVGFEColorMatrixElement::build): 51637 * svg/SVGFEComponentTransferElement.cpp: Ditto. 51638 (WebCore::SVGFEComponentTransferElement::build): 51639 * svg/SVGFECompositeElement.cpp: Ditto. 51640 (WebCore::SVGFECompositeElement::build): 51641 * svg/SVGFEConvolveMatrixElement.cpp: Ditto. 51642 (WebCore::SVGFEConvolveMatrixElement::build): 51643 * svg/SVGFEDiffuseLightingElement.cpp: Ditto. 51644 (WebCore::SVGFEDiffuseLightingElement::build): 51645 * svg/SVGFEDisplacementMapElement.cpp: Ditto. 51646 (WebCore::SVGFEDisplacementMapElement::build): 51647 * svg/SVGFEGaussianBlurElement.cpp: Ditto. 51648 (WebCore::SVGFEGaussianBlurElement::build): 51649 * svg/SVGFEMergeElement.cpp: Ditto. 51650 (WebCore::SVGFEMergeElement::build): 51651 * svg/SVGFEMorphologyElement.cpp: Ditto. 51652 (WebCore::SVGFEMorphologyElement::build): 51653 * svg/SVGFEOffsetElement.cpp: Ditto. 51654 (WebCore::SVGFEOffsetElement::build): 51655 * svg/SVGFESpecularLightingElement.cpp: Ditto. 51656 (WebCore::SVGFESpecularLightingElement::build): 51657 * svg/SVGFETileElement.cpp: Ditto. 51658 (WebCore::SVGFETileElement::build): 51659 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Ditto. 51660 (WebCore::FEConvolveMatrix::FEConvolveMatrix): 51661 (WebCore::FEConvolveMatrix::create): 51662 (WebCore::FEConvolveMatrix::apply): 51663 (WebCore::FEConvolveMatrix::externalRepresentation): 51664 * svg/graphics/filters/SVGFEConvolveMatrix.h: 51665 * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto. 51666 (WebCore::FEDiffuseLighting::FEDiffuseLighting): 51667 (WebCore::FEDiffuseLighting::create): 51668 (WebCore::FEDiffuseLighting::externalRepresentation): 51669 * svg/graphics/filters/SVGFEDiffuseLighting.h: 51670 * svg/graphics/filters/SVGFEDisplacementMap.cpp: Ditto. 51671 (WebCore::FEDisplacementMap::FEDisplacementMap): 51672 (WebCore::FEDisplacementMap::create): 51673 (WebCore::FEDisplacementMap::apply): 51674 (WebCore::FEDisplacementMap::externalRepresentation): 51675 * svg/graphics/filters/SVGFEDisplacementMap.h: 51676 * svg/graphics/filters/SVGFEFlood.cpp: Ditto. 51677 (WebCore::FEFlood::apply): 51678 * svg/graphics/filters/SVGFEImage.cpp: Ditto. 51679 (WebCore::FEImage::apply): 51680 * svg/graphics/filters/SVGFELighting.cpp: Ditto. 51681 (WebCore::FELighting::FELighting): 51682 (WebCore::FELighting::apply): 51683 * svg/graphics/filters/SVGFELighting.h: 51684 * svg/graphics/filters/SVGFEMerge.cpp: Ditto. 51685 (WebCore::FEMerge::FEMerge): 51686 (WebCore::FEMerge::create): 51687 (WebCore::FEMerge::apply): 51688 (WebCore::FEMerge::externalRepresentation): 51689 * svg/graphics/filters/SVGFEMerge.h: 51690 * svg/graphics/filters/SVGFEMorphology.cpp: Ditto. 51691 (WebCore::FEMorphology::FEMorphology): 51692 (WebCore::FEMorphology::create): 51693 (WebCore::FEMorphology::apply): 51694 (WebCore::FEMorphology::externalRepresentation): 51695 * svg/graphics/filters/SVGFEMorphology.h: 51696 * svg/graphics/filters/SVGFEOffset.cpp: Ditto. 51697 (WebCore::FEOffset::FEOffset): 51698 (WebCore::FEOffset::create): 51699 (WebCore::FEOffset::apply): 51700 (WebCore::FEOffset::externalRepresentation): 51701 * svg/graphics/filters/SVGFEOffset.h: 51702 * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto. 51703 (WebCore::FESpecularLighting::FESpecularLighting): 51704 (WebCore::FESpecularLighting::create): 51705 (WebCore::FESpecularLighting::externalRepresentation): 51706 * svg/graphics/filters/SVGFESpecularLighting.h: 51707 * svg/graphics/filters/SVGFETile.cpp: Ditto. 51708 (WebCore::FETile::FETile): 51709 (WebCore::FETile::create): 51710 (WebCore::FETile::determineFilterPrimitiveSubregion): Renamed to match name scheme. 51711 (WebCore::FETile::apply): 51712 (WebCore::FETile::externalRepresentation): 51713 * svg/graphics/filters/SVGFETile.h: 51714 * svg/graphics/filters/SVGFilter.cpp: Renamed itemBox to targetBoundingBox to match name scheme. 51715 (WebCore::SVGFilter::SVGFilter): 51716 (WebCore::SVGFilter::determineFilterPrimitiveSubregion): Renamed to match name scheme. 51717 (WebCore::SVGFilter::create): 51718 * svg/graphics/filters/SVGFilter.h: 51719 (WebCore::SVGFilter::sourceImageRect): 51720 51721 2010-09-20 Pavel Podivilov <podivilov (a] chromium.org> 51722 51723 Reviewed by Pavel Feldman. 51724 51725 Web Inspector: highlight DOM node when hover on link element or DOM breakpoint 51726 https://bugs.webkit.org/show_bug.cgi?id=45897 51727 51728 * inspector/front-end/BreakpointsSidebarPane.js: 51729 (WebInspector.BreakpointItem): 51730 (WebInspector.JSBreakpointItem): 51731 (WebInspector.DOMBreakpointItem): 51732 (WebInspector.DOMBreakpointItem.prototype.compareTo): 51733 (WebInspector.DOMBreakpointItem.prototype._breakpointClicked): 51734 * inspector/front-end/ElementsPanel.js: 51735 (WebInspector.ElementsPanel.prototype.hide): 51736 (WebInspector.ElementsPanel.prototype.reset): 51737 (WebInspector.ElementsPanel.prototype.setDocument.selectNode): 51738 (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs): 51739 (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs): 51740 (WebInspector.ElementsPanel.prototype.linkifyNodeReference): 51741 * inspector/front-end/ElementsTreeOutline.js: 51742 (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode): 51743 (WebInspector.ElementsTreeOutline.prototype._onmousemove): 51744 (WebInspector.ElementsTreeOutline.prototype._onmouseout): 51745 * inspector/front-end/inspector.js: 51746 (WebInspector.highlightDOMNode): 51747 (WebInspector.highlightDOMNodeForTwoSeconds): 51748 (WebInspector.wireElementWithDOMNode): 51749 (WebInspector._updateFocusedNode): 51750 (WebInspector.reset): 51751 (WebInspector.updateFocusedNode): 51752 51753 2010-09-19 Sheriff Bot <webkit.review.bot (a] gmail.com> 51754 51755 Unreviewed, rolling out r67749. 51756 http://trac.webkit.org/changeset/67749 51757 https://bugs.webkit.org/show_bug.cgi?id=46068 51758 51759 breaking ToT chromium canary build (Requested by shans on 51760 #webkit). 51761 51762 * bindings/v8/V8DOMWindowShell.cpp: 51763 (WebCore::V8DOMWindowShell::createNewContext): 51764 * bindings/v8/V8Proxy.cpp: 51765 (WebCore::V8Proxy::registeredExtensionWithV8): 51766 (WebCore::V8Proxy::registerExtension): 51767 * bindings/v8/V8Proxy.h: 51768 * loader/EmptyClients.h: 51769 * loader/FrameLoaderClient.h: 51770 51771 2010-09-19 Gavin Barraclough <barraclough (a] apple.com> 51772 51773 Reviewed by Oliver Hunt. 51774 51775 Bug 46065 - Unify implementation of ToInt32 and ToUInt32, don't use fmod. 51776 51777 These methods implement the same conversion (see discussion in the notes 51778 of sections of 9.5 and 9.6 of the spec), only differing in how the result 51779 is interpretted. 51780 51781 Removing JSValue::toInt32 (since this has weird, non-spec function). 51782 A couple of places in the binding are using this method, so adding 51783 finiteInt32Value to the bindings to maintain current behaviour. 51784 51785 Test: fast/js/toInt32UInt32.html 51786 51787 * bindings/js/JSDOMBinding.h: 51788 (WebCore::finiteInt32Value): 51789 * bindings/js/JSHTMLOptionsCollectionCustom.cpp: 51790 (WebCore::JSHTMLOptionsCollection::add): 51791 * bindings/js/JSSQLResultSetRowListCustom.cpp: 51792 (WebCore::JSSQLResultSetRowList::item): 51793 * bindings/js/JSSVGPODListCustom.h: 51794 (WebCore::JSSVGPODListCustom::getItem): 51795 (WebCore::JSSVGPODListCustom::insertItemBefore): 51796 (WebCore::JSSVGPODListCustom::replaceItem): 51797 (WebCore::JSSVGPODListCustom::removeItem): 51798 * bindings/js/JSSVGPathSegListCustom.cpp: 51799 (WebCore::JSSVGPathSegList::getItem): 51800 (WebCore::JSSVGPathSegList::insertItemBefore): 51801 (WebCore::JSSVGPathSegList::replaceItem): 51802 (WebCore::JSSVGPathSegList::removeItem): 51803 51804 2010-09-19 Andreas Kling <andreas.kling (a] nokia.com> 51805 51806 Reviewed by Kenneth Rohde Christiansen. 51807 51808 [Qt] clipBoundingRect() should return rect relevant to current layer 51809 https://bugs.webkit.org/show_bug.cgi?id=46059 51810 51811 r65791 inadvertently changed clipBoundingRect() to always use the GC painter 51812 without checking the TransparencyLayer stack first. 51813 51814 * platform/graphics/qt/GraphicsContextQt.cpp: 51815 (WebCore::GraphicsContextPlatformPrivate::p): 51816 (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect): 51817 51818 2010-09-19 Sam Weinig <sam (a] webkit.org> 51819 51820 Reviewed by Anders Carlsson. 51821 51822 Replace WKBundleRangeRef with WKBundleRangeHandleRef. 51823 https://bugs.webkit.org/show_bug.cgi?id=46054 51824 51825 * WebCore.exp.in: 51826 * WebCore.xcodeproj/project.pbxproj: 51827 51828 2010-09-19 Patrick Gansterer <paroga (a] paroga.com> 51829 51830 Unreviewed. 51831 51832 [WINCE] Buildfix for Gradient after r67801. 51833 51834 * platform/graphics/Gradient.h: 51835 * platform/graphics/wince/GradientWinCE.cpp: 51836 (WebCore::Gradient::getStops): 51837 51838 2010-09-19 Kent Tamura <tkent (a] chromium.org> 51839 51840 Reviewed by Dimitri Glazkov. 51841 51842 [Chromium] Add is<input type>() functions to WebInputElement 51843 https://bugs.webkit.org/show_bug.cgi?id=46035 51844 51845 * html/HTMLInputElement.h: 51846 (WebCore::HTMLInputElement::isText): Added. It is used by WebKit/chromium. 51847 51848 2010-09-18 Andreas Kling <andreas.kling (a] nokia.com> 51849 51850 Reviewed by Antonio Gomes. 51851 51852 [Qt] Path: Remove unused member variable 51853 https://bugs.webkit.org/show_bug.cgi?id=46048 51854 51855 Path::m_lastMoveToIndex is not used for anything, so remove it. 51856 51857 * platform/graphics/Path.h: 51858 * platform/graphics/qt/PathQt.cpp: 51859 (WebCore::Path::Path): 51860 (WebCore::Path::operator=): 51861 (WebCore::Path::moveTo): 51862 51863 2010-09-18 Patrick Gansterer <paroga (a] paroga.com> 51864 51865 Reviewed by Darin Adler. 51866 51867 Use AtomicString insted of String in XMLDocumentParser 51868 https://bugs.webkit.org/show_bug.cgi?id=45990 51869 51870 Create AtomicString as early as possible. 51871 This can avoid unnecessary memcpy of String content. 51872 51873 * dom/XMLDocumentParser.h: 51874 * dom/XMLDocumentParserLibxml2.cpp: 51875 (WebCore::toAtomicString): 51876 (WebCore::handleElementNamespaces): 51877 (WebCore::handleElementAttributes): 51878 (WebCore::XMLDocumentParser::startElementNs): 51879 51880 2010-09-18 Erik Arvidsson <arv (a] chromium.org> 51881 51882 Reviewed by Nate Chapin. 51883 51884 [Chromium] fast/dom/dataset-gc.html is failing 51885 https://bugs.webkit.org/show_bug.cgi?id=45426 51886 51887 * bindings/scripts/CodeGeneratorV8.pm: 51888 * bindings/v8/custom/V8DOMStringMapCustom.cpp: 51889 (WebCore::toV8): 51890 * dom/DOMStringMap.h: 51891 * dom/DatasetDOMStringMap.h: 51892 (WebCore::DatasetDOMStringMap::element): 51893 51894 2010-09-18 Andreas Kling <andreas.kling (a] nokia.com> 51895 51896 Reviewed by Oliver Hunt. 51897 51898 Gradient: Fast-path for the ideal case in sortStopsIfNecessary() 51899 https://bugs.webkit.org/show_bug.cgi?id=46045 51900 51901 Avoid calling std::stable_sort for 2-stop gradients that are already in order. 51902 51903 * platform/graphics/Gradient.cpp: 51904 (WebCore::Gradient::sortStopsIfNecessary): 51905 51906 2010-09-18 Kwang Yul Seo <skyul (a] company100.net> 51907 51908 Reviewed by Andreas Kling. 51909 51910 [BREWMP] Fix a typo in key code name 51911 https://bugs.webkit.org/show_bug.cgi?id=46003 51912 51913 AVK_CLR is the right Brew MP key code name for VK_BACK. 51914 51915 * platform/brew/PlatformKeyboardEventBrew.cpp: 51916 (WebCore::windowsKeyCodeForKeyEvent): 51917 51918 2010-09-18 Andreas Kling <andreas.kling (a] nokia.com> 51919 51920 Reviewed by Oliver Hunt. 51921 51922 Gradient: Pre-reserve space for 2 color stops 51923 https://bugs.webkit.org/show_bug.cgi?id=46044 51924 51925 Most gradients have only 2 color stops, pre-reserve space for these in m_stops 51926 to avoid growing the vector dynamically in the common case. 51927 51928 * platform/graphics/Gradient.h: 51929 51930 2010-09-18 Dimitri Glazkov <dglazkov (a] chromium.org> 51931 51932 Unreviewed, rolling out r67792. 51933 http://trac.webkit.org/changeset/67792 51934 https://bugs.webkit.org/show_bug.cgi?id=45976 51935 51936 Broke over a hundred SVG tests. 51937 51938 * platform/graphics/GraphicsContext.cpp: 51939 (WebCore::GraphicsContext::drawImage): 51940 (WebCore::GraphicsContext::drawImageBuffer): 51941 * platform/graphics/GraphicsContext.h: 51942 51943 2010-09-18 Mihai Parparita <mihaip (a] chromium.org> 51944 51945 Reviewed by Simon Fraser. 51946 51947 webkitAnimationEnd event doesn't fire when skipping over final iteration 51948 https://bugs.webkit.org/show_bug.cgi?id=46010 51949 51950 It's possible for AnimationBase::fireAnimationEventsIfNeeded to decide 51951 that the animation is ended while we're in the looping state, if the 51952 animation timer never fires during an iteration. That then fails the 51953 assert in AnimationBase::updateStateMachine (we don't expect 51954 AnimationStateInputEndTimerFired while in the looping state). Jump the 51955 state to AnimationStateEnding, which is more accurate. 51956 51957 Test: animations/animation-end-event-short-iterations.html 51958 51959 * page/animation/AnimationBase.cpp: 51960 (WebCore::AnimationBase::fireAnimationEventsIfNeeded): 51961 51962 2010-09-18 Kwang Yul Seo <skyul (a] company100.net> 51963 51964 Reviewed by Andreas Kling. 51965 51966 [BREWMP] Wrong key code type in keyIdentifierForBrewKeyCode 51967 https://bugs.webkit.org/show_bug.cgi?id=46005 51968 51969 The type of key code in Brew MP is uint16. Take uint16 instead of int16 in keyIdentifierForBrewKeyCode. 51970 51971 * platform/brew/PlatformKeyboardEventBrew.cpp: 51972 (WebCore::keyIdentifierForBrewKeyCode): 51973 51974 2010-09-18 Matthew Delaney <mdelaney (a] apple.com> 51975 51976 Reviewed by Oliver Hunt. 51977 51978 Canvas drawImage with source or destination widths/heights of -1 renders incorrectly. 51979 https://bugs.webkit.org/show_bug.cgi?id=45976 51980 51981 Specifying a -1 width or height for either the source or destination rectangle in drawImage 51982 get improperly drawn with -1 replaced as the corresponding image width or height. This was because 51983 the value -1 was being passed around to signal non-specified widths and heights and thus was 51984 interpreted lower down in the drawImage implementation which disallowed any calls that actually 51985 wanted to use -1 as the widths or heights. Fixed this by moving the default logic up and not using 51986 -1 in-band signaling to denote default behavior. 51987 51988 Tests: canvas/philip/tests/2d.drawImage.negativeOneDest.html 51989 canvas/philip/tests/2d.drawImage.negativeOneSource.html 51990 51991 * platform/graphics/GraphicsContext.cpp: Removed -1 in-band signals and replaced cascased calls to have 51992 the desired replaces for unspecified widths and heights earlier on. 51993 * platform/graphics/GraphicsContext.h: Removed faulty default value. 51994 51995 2010-09-18 Ademar de Souza Reis Jr <ademar.reis (a] openbossa.org> 51996 51997 Reviewed by Kenneth Rohde Christiansen. 51998 51999 Enable Platform Strategies on Qt 52000 52001 [Qt] Turn on PLATFORM_STRATEGIES 52002 https://bugs.webkit.org/show_bug.cgi?id=45831 52003 52004 * WebCore.pro: Adding/removing implementation files 52005 * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was 52006 moved from platform/qt/Localizations.cpp 52007 (WebCore::defaultLanguage): Moved from Localizations.cpp 52008 * platform/qt/Localizations.cpp: Removed (code is now inside 52009 WebCoreSupport/WebPlatformStrategies.cpp) 52010 * plugins/qt/PluginDataQt.cpp: Removed (idem) 52011 52012 2010-09-18 Patrick Gansterer <paroga (a] paroga.com> 52013 52014 Reviewed by Darin Adler. 52015 52016 Rename Wince files to WinCE 52017 https://bugs.webkit.org/show_bug.cgi?id=37287 52018 52019 * loader/icon/wince/IconDatabaseWinCE.cpp: Copied from WebCore/loader/icon/wince/IconDatabaseWince.cpp. 52020 * loader/icon/wince/IconDatabaseWince.cpp: Removed. 52021 * page/wince/FrameWinCE.cpp: Copied from WebCore/page/wince/FrameWince.cpp. 52022 * page/wince/FrameWince.cpp: Removed. 52023 * platform/graphics/MediaPlayer.cpp: 52024 * platform/graphics/wince/ColorWinCE.cpp: Copied from WebCore/platform/graphics/wince/ColorWince.cpp. 52025 * platform/graphics/wince/ColorWince.cpp: Removed. 52026 * platform/graphics/wince/FontCacheWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontCacheWince.cpp. 52027 * platform/graphics/wince/FontCacheWince.cpp: Removed. 52028 * platform/graphics/wince/FontWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontWince.cpp. 52029 * platform/graphics/wince/FontWince.cpp: Removed. 52030 * platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Copied from WebCore/platform/graphics/wince/GlyphPageTreeNodeWince.cpp. 52031 * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Removed. 52032 * platform/graphics/wince/GradientWinCE.cpp: Copied from WebCore/platform/graphics/wince/GradientWince.cpp. 52033 * platform/graphics/wince/GradientWince.cpp: Removed. 52034 * platform/graphics/wince/GraphicsContextWinCE.cpp: Copied from WebCore/platform/graphics/wince/GraphicsContextWince.cpp. 52035 * platform/graphics/wince/GraphicsContextWince.cpp: Removed. 52036 * platform/graphics/wince/ImageBufferWinCE.cpp: Copied from WebCore/platform/graphics/wince/ImageBufferWince.cpp. 52037 * platform/graphics/wince/ImageBufferWince.cpp: Removed. 52038 * platform/graphics/wince/MediaPlayerPrivateWinCE.h: Copied from WebCore/platform/graphics/wince/MediaPlayerPrivateWince.h. 52039 * platform/graphics/wince/MediaPlayerPrivateWince.h: Removed. 52040 * platform/graphics/wince/PathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PathWince.cpp. 52041 * platform/graphics/wince/PathWince.cpp: Removed. 52042 * platform/graphics/wince/PlatformPathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PlatformPathWince.cpp. 52043 * platform/graphics/wince/PlatformPathWinCE.h: Copied from WebCore/platform/graphics/wince/PlatformPathWince.h. 52044 * platform/graphics/wince/PlatformPathWince.cpp: Removed. 52045 * platform/graphics/wince/PlatformPathWince.h: Removed. 52046 * platform/graphics/wince/SimpleFontDataWinCE.cpp: Copied from WebCore/platform/graphics/wince/SimpleFontDataWince.cpp. 52047 * platform/graphics/wince/SimpleFontDataWince.cpp: Removed. 52048 * platform/graphics/wince/WinCEGraphicsExtras.h: Copied from WebCore/platform/graphics/wince/WinceGraphicsExtras.h. 52049 * platform/graphics/wince/WinceGraphicsExtras.h: Removed. 52050 * platform/text/wince/TextBoundariesWinCE.cpp: Copied from WebCore/platform/text/wince/TextBoundariesWince.cpp. 52051 * platform/text/wince/TextBoundariesWince.cpp: Removed. 52052 * platform/text/wince/TextBreakIteratorWinCE.cpp: Copied from WebCore/platform/text/wince/TextBreakIteratorWince.cpp. 52053 * platform/text/wince/TextBreakIteratorWince.cpp: Removed. 52054 * platform/wince/CursorWinCE.cpp: Copied from WebCore/platform/wince/CursorWince.cpp. 52055 * platform/wince/CursorWince.cpp: Removed. 52056 * platform/wince/DragDataWinCE.cpp: Copied from WebCore/platform/wince/DragDataWince.cpp. 52057 * platform/wince/DragDataWince.cpp: Removed. 52058 * platform/wince/DragImageWinCE.cpp: Copied from WebCore/platform/wince/DragImageWince.cpp. 52059 * platform/wince/DragImageWince.cpp: Removed. 52060 * platform/wince/EditorWinCE.cpp: Copied from WebCore/platform/wince/EditorWince.cpp. 52061 (WebCore::Editor::newGeneralClipboard): 52062 * platform/wince/EditorWince.cpp: Removed. 52063 * platform/wince/FileChooserWinCE.cpp: Copied from WebCore/platform/wince/FileChooserWince.cpp. 52064 * platform/wince/FileChooserWince.cpp: Removed. 52065 * platform/wince/FileSystemWinCE.cpp: Copied from WebCore/platform/wince/FileSystemWince.cpp. 52066 * platform/wince/FileSystemWince.cpp: Removed. 52067 * platform/wince/KURLWinCE.cpp: Copied from WebCore/platform/wince/KURLWince.cpp. 52068 * platform/wince/KURLWince.cpp: Removed. 52069 * platform/wince/KeygenWinCE.cpp: Copied from WebCore/platform/wince/KeygenWince.cpp. 52070 * platform/wince/KeygenWince.cpp: Removed. 52071 * platform/wince/MIMETypeRegistryWinCE.cpp: Copied from WebCore/platform/wince/MIMETypeRegistryWince.cpp. 52072 * platform/wince/MIMETypeRegistryWince.cpp: Removed. 52073 * platform/wince/PasteboardWinCE.cpp: Copied from WebCore/platform/wince/PasteboardWince.cpp. 52074 * platform/wince/PasteboardWince.cpp: Removed. 52075 * platform/wince/SearchPopupMenuWinCE.cpp: Copied from WebCore/platform/wince/SearchPopupMenuWince.cpp. 52076 * platform/wince/SearchPopupMenuWince.cpp: Removed. 52077 * platform/wince/SharedTimerWinCE.cpp: Copied from WebCore/platform/wince/SharedTimerWince.cpp. 52078 * platform/wince/SharedTimerWince.cpp: Removed. 52079 * rendering/RenderThemeWinCE.cpp: Copied from WebCore/rendering/RenderThemeWince.cpp. 52080 (WebCore::RenderThemeWinCE::create): 52081 (WebCore::RenderTheme::themeForPage): 52082 (WebCore::RenderThemeWinCE::RenderThemeWinCE): 52083 (WebCore::RenderThemeWinCE::~RenderThemeWinCE): 52084 (WebCore::RenderThemeWinCE::platformActiveSelectionBackgroundColor): 52085 (WebCore::RenderThemeWinCE::platformInactiveSelectionBackgroundColor): 52086 (WebCore::RenderThemeWinCE::platformActiveSelectionForegroundColor): 52087 (WebCore::RenderThemeWinCE::platformInactiveSelectionForegroundColor): 52088 (WebCore::RenderThemeWinCE::supportsFocus): 52089 (WebCore::RenderThemeWinCE::supportsFocusRing): 52090 (WebCore::RenderThemeWinCE::determineClassicState): 52091 (WebCore::RenderThemeWinCE::getThemeData): 52092 (WebCore::RenderThemeWinCE::paintButton): 52093 (WebCore::RenderThemeWinCE::setCheckboxSize): 52094 (WebCore::RenderThemeWinCE::paintTextField): 52095 (WebCore::RenderThemeWinCE::adjustMenuListStyle): 52096 (WebCore::RenderThemeWinCE::paintMenuList): 52097 (WebCore::RenderThemeWinCE::paintMenuListButton): 52098 (WebCore::RenderThemeWinCE::systemFont): 52099 (WebCore::RenderThemeWinCE::themeChanged): 52100 (WebCore::RenderThemeWinCE::extraDefaultStyleSheet): 52101 (WebCore::RenderThemeWinCE::extraQuirksStyleSheet): 52102 (WebCore::RenderThemeWinCE::supportsHover): 52103 (WebCore::RenderThemeWinCE::systemColor): 52104 (WebCore::RenderThemeWinCE::adjustSliderThumbSize): 52105 (WebCore::RenderThemeWinCE::adjustButtonInnerStyle): 52106 (WebCore::RenderThemeWinCE::adjustSearchFieldStyle): 52107 (WebCore::RenderThemeWinCE::paintSearchField): 52108 (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton): 52109 (WebCore::RenderThemeWinCE::adjustSearchFieldCancelButtonStyle): 52110 (WebCore::RenderThemeWinCE::adjustSearchFieldDecorationStyle): 52111 (WebCore::RenderThemeWinCE::adjustSearchFieldResultsDecorationStyle): 52112 (WebCore::RenderThemeWinCE::paintSearchFieldResultsDecoration): 52113 (WebCore::RenderThemeWinCE::adjustSearchFieldResultsButtonStyle): 52114 (WebCore::RenderThemeWinCE::paintSearchFieldResultsButton): 52115 (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle): 52116 (WebCore::RenderThemeWinCE::paintSliderTrack): 52117 (WebCore::RenderThemeWinCE::paintSliderThumb): 52118 (WebCore::RenderThemeWinCE::paintMediaFullscreenButton): 52119 (WebCore::RenderThemeWinCE::paintMediaMuteButton): 52120 (WebCore::RenderThemeWinCE::paintMediaPlayButton): 52121 (WebCore::RenderThemeWinCE::paintMediaSeekBackButton): 52122 (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton): 52123 (WebCore::RenderThemeWinCE::paintMediaSliderTrack): 52124 (WebCore::RenderThemeWinCE::paintMediaSliderThumb): 52125 * rendering/RenderThemeWinCE.h: Copied from WebCore/rendering/RenderThemeWince.h. 52126 * rendering/RenderThemeWince.cpp: Removed. 52127 * rendering/RenderThemeWince.h: Removed. 52128 * storage/wince/DatabaseThreadWinCE.cpp: Copied from WebCore/storage/wince/DatabaseThreadWince.cpp. 52129 * storage/wince/DatabaseThreadWinCE.h: Copied from WebCore/storage/wince/DatabaseThreadWince.h. 52130 * storage/wince/DatabaseThreadWince.cpp: Removed. 52131 * storage/wince/DatabaseThreadWince.h: Removed. 52132 * storage/wince/LocalStorageThreadWinCE.cpp: Copied from WebCore/storage/wince/LocalStorageThreadWince.cpp. 52133 * storage/wince/LocalStorageThreadWinCE.h: Copied from WebCore/storage/wince/LocalStorageThreadWince.h. 52134 * storage/wince/LocalStorageThreadWince.cpp: Removed. 52135 * storage/wince/LocalStorageThreadWince.h: Removed. 52136 52137 2010-09-18 Patrick Gansterer <paroga (a] paroga.com> 52138 52139 Reviewed by Eric Seidel. 52140 52141 Move Plugin*None.cpp from CMakeLists.txt into CMakeListsEfl.txt 52142 https://bugs.webkit.org/show_bug.cgi?id=45900 52143 52144 PluginDataNone.cpp and PluginViewNone.cpp are not used by all port. 52145 Move them into plaform sepcific build system. 52146 52147 * CMakeLists.txt: 52148 * CMakeListsEfl.txt: 52149 52150 2010-09-18 Andreas Kling <andreas.kling (a] nokia.com> 52151 52152 Reviewed by Simon Hausmann. 52153 52154 [Qt] Don't copy clip path to TransparencyLayer 52155 https://bugs.webkit.org/show_bug.cgi?id=45965 52156 52157 We don't need to copy the GC's clip path to the TransparencyLayer since it will 52158 clip anyway when ending the layer. 52159 52160 * platform/graphics/qt/TransparencyLayer.h: 52161 (WebCore::TransparencyLayer::TransparencyLayer): 52162 52163 2010-09-18 Patrick Gansterer <paroga (a] paroga.com> 52164 52165 Unreviewed. 52166 52167 [WINCE] Buildfix for FrameWince.cpp after r51353, r67762 and r67771. 52168 52169 * page/wince/FrameWince.cpp: 52170 (WebCore::computePageRectsForFrame): 52171 (WebCore::imageFromSelection): 52172 52173 2010-09-18 Kent Tamura <tkent (a] chromium.org> 52174 52175 Unreviewed, a trivial change. 52176 52177 Run sort-Xcode-project-file. 52178 52179 * WebCore.xcodeproj/project.pbxproj: 52180 52181 2010-09-18 Dan Bernstein <mitz (a] apple.com> 52182 52183 Reviewed by Eric Seidel. 52184 52185 REGRESSION (r67762): Over 160 layout tests failing due to incorrect zoom factors in subframes 52186 https://bugs.webkit.org/show_bug.cgi?id=46031 52187 52188 * page/Frame.cpp: 52189 (WebCore::parentPageZoomFactor): Return the zoom factor of the parent frame. 52190 (WebCore::parentTextZoomFactor): Ditto. 52191 52192 2010-09-17 Sam Weinig <sam (a] webkit.org> 52193 52194 Reviewed by Jon Honeycutt. 52195 52196 Need a way to load data (as plain text) in a WKPage 52197 <rdar://problem/8424239> 52198 52199 * WebCore.exp.in: 52200 52201 2010-09-17 David Hyatt <hyatt (a] apple.com> 52202 52203 Reviewed by Sam Weinig. 52204 52205 https://bugs.webkit.org/show_bug.cgi?id=46027, image on gamespot.com paginates without bringing its enclosing border along. 52206 52207 Make sure that unsplittable objects like replaced elements propagate their pagination strut outward to the parent block 52208 when appropriate. An image on a line did this, but a block-level image did not. 52209 52210 Added fast/multicol/image-inside-nested-blocks-with-border.html 52211 52212 * rendering/RenderBlock.cpp: 52213 (WebCore::RenderBlock::layoutBlockChild): 52214 52215 2010-09-17 Dimitri Glazkov <dglazkov (a] chromium.org> 52216 52217 Unreviewed, build fix. 52218 52219 Move calls from frameView->pageZoomFactor() to frame->pageZoomFactor(). 52220 52221 * page/EventHandler.cpp: 52222 (WebCore::EventHandler::handleTouchEvent): Removed a helper function, 52223 added direct calls to frame->pageZoomFactor(). 52224 52225 2010-09-17 David Hyatt <hyatt (a] apple.com> 52226 52227 Reviewed by Simon Fraser. 52228 52229 https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model. 52230 52231 Make printing store the page height in the RenderView and push that into the layout state to 52232 use the new pagination model. The old pagination model is retained because it is still used 52233 for embedded WebViews. 52234 52235 * page/FrameView.cpp: 52236 (WebCore::FrameView::reset): 52237 (WebCore::FrameView::layout): 52238 (WebCore::FrameView::forceLayout): 52239 (WebCore::FrameView::forceLayoutForPagination): 52240 (WebCore::FrameView::adjustPageHeight): 52241 * page/FrameView.h: 52242 * page/PrintContext.cpp: 52243 (WebCore::PrintContext::computePageRectsWithPageSizeInternal): 52244 * rendering/RenderBlock.cpp: 52245 (WebCore::RenderBlock::paintChildren): 52246 * rendering/RenderBox.cpp: 52247 (WebCore::RenderBox::calcHeight): 52248 * rendering/RenderImage.cpp: 52249 (WebCore::RenderImage::paintReplaced): 52250 * rendering/RenderLineBoxList.cpp: 52251 (WebCore::RenderLineBoxList::paint): 52252 * rendering/RenderVideo.cpp: 52253 (WebCore::RenderVideo::paintReplaced): 52254 * rendering/RenderView.cpp: 52255 (WebCore::RenderView::RenderView): 52256 (WebCore::RenderView::layout): 52257 (WebCore::RenderView::paint): 52258 (WebCore::RenderView::setBestTruncatedAt): 52259 * rendering/RenderView.h: 52260 (WebCore::RenderView::popLayoutState): 52261 (WebCore::RenderView::pageHeight): 52262 (WebCore::RenderView::setPageHeight): 52263 (WebCore::RenderView::bestTruncatedAt): 52264 (WebCore::RenderView::truncatedAt): 52265 (WebCore::RenderView::setTruncatedAt): 52266 (WebCore::RenderView::printRect): 52267 (WebCore::RenderView::setPrintRect): 52268 (WebCore::RenderView::pushLayoutState): 52269 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer): 52270 (WebCore::LayoutStateMaintainer::push): 52271 (WebCore::LayoutStateMaintainer::pop): 52272 52273 2010-09-17 Dan Bernstein <mitz (a] apple.com> 52274 52275 Reviewed by Simon Fraser. 52276 52277 Canvas sizing ignores intrinsic size 52278 https://bugs.webkit.org/show_bug.cgi?id=46024 52279 52280 Updated fast/replaced/table-percent-height.html 52281 52282 * rendering/RenderEmbeddedObject.cpp: 52283 (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): If this is used as a proxy 52284 for <video>, behave like it has an intrinsic size (e.g. preserve aspect ratio when 52285 width is auto and height is specified). 52286 * rendering/RenderImage.cpp: 52287 (WebCore::RenderImage::calcAspectRatioWidth): Changed to explicitly invoke 52288 RenderBox::calcReplacedHeight(), now that RenderReplaced has its own implementation 52289 which we dont want. 52290 (WebCore::RenderImage::calcAspectRatioHeight): Similarly with calcReplacedWidth(). 52291 * rendering/RenderImage.h: 52292 * rendering/RenderReplaced.cpp: 52293 (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasIntrinsicSize. 52294 (WebCore::lengthIsSpecified): Added this helper function, based on RenderImages 52295 is{Width,Height}Specified(). 52296 (WebCore::RenderReplaced::calcReplacedWidth): Moved from RenderVideo all the way 52297 up here so other replaced objects could use this logic. 52298 (WebCore::RenderReplaced::calcReplacedHeight): Ditto. 52299 (WebCore::RenderReplaced::calcAspectRatioWidth): Ditto. 52300 (WebCore::RenderReplaced::calcAspectRatioHeight): Ditto. 52301 (WebCore::RenderReplaced::calcPrefWidths): Replaced with the RenderImage version 52302 of the logic. 52303 (WebCore::RenderReplaced::setIntrinsicSize): Added an assertion. 52304 * rendering/RenderReplaced.h: 52305 (WebCore::RenderReplaced::minimumReplacedHeight): Promoted from private to protected 52306 to allow RenderVideo to call through. 52307 (WebCore::RenderReplaced::setHasIntrinsicSize): Added this setter. 52308 * rendering/RenderVideo.cpp: 52309 (WebCore::RenderVideo::updateIntrinsicSize): Factor zoom into the intrinsic size, 52310 the way other RenderReplaced objects do. 52311 (WebCore::RenderVideo::calcReplacedWidth): Invoke the RenderReplaced implementation, 52312 which matches what used to be here, skipping over the RenderImage implementation. 52313 (WebCore::RenderVideo::calcReplacedHeight): Ditto. 52314 (WebCore::RenderVideo::minimumReplacedHeight): Ditto. 52315 * rendering/RenderVideo.h: 52316 52317 2010-09-17 Darin Adler <darin (a] apple.com> 52318 52319 Build fix for platforms that compile Touch. 52320 52321 * dom/Touch.cpp: 52322 (WebCore::contentsX): 52323 (WebCore::contentsY): 52324 Get zoom factor from Frame rather than FrameView. 52325 52326 2010-09-17 Darin Adler <darin (a] apple.com> 52327 52328 Reviewed by Sam Weinig. 52329 52330 REGRESSION (r60104): Zoom level is unexpectedly reset on page reload 52331 https://bugs.webkit.org/show_bug.cgi?id=42863 52332 52333 Moved zoom level back from FrameView to Frame. 52334 I had forgotten that FrameView's lifetime is much shorter than 52335 Frame's, and until that is fixed it's best to leave this on Frame. 52336 52337 * WebCore.exp.in: Updated. 52338 52339 * css/CSSStyleSelector.cpp: 52340 (WebCore::CSSStyleSelector::styleForDocument): 52341 (WebCore::CSSStyleSelector::applyProperty): 52342 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): 52343 * dom/Document.cpp: 52344 (WebCore::Document::nodesFromRect): 52345 (WebCore::Document::elementFromPoint): 52346 (WebCore::Document::caretRangeFromPoint): 52347 * dom/MouseRelatedEvent.cpp: 52348 (WebCore::contentsX): 52349 (WebCore::contentsY): 52350 (WebCore::pageZoomFactor): 52351 * dom/Node.cpp: 52352 (WebCore::Node::dispatchMouseEvent): 52353 (WebCore::Node::dispatchWheelEvent): 52354 * html/HTMLBodyElement.cpp: 52355 (WebCore::adjustForZoom): 52356 (WebCore::HTMLBodyElement::scrollLeft): 52357 (WebCore::HTMLBodyElement::setScrollLeft): 52358 (WebCore::HTMLBodyElement::scrollTop): 52359 (WebCore::HTMLBodyElement::setScrollTop): 52360 (WebCore::HTMLBodyElement::scrollHeight): 52361 (WebCore::HTMLBodyElement::scrollWidth): 52362 * html/ImageDocument.cpp: 52363 (WebCore::pageZoomFactor): 52364 (WebCore::ImageDocument::scale): 52365 (WebCore::ImageDocument::imageFitsInWindow): 52366 * page/DOMWindow.cpp: 52367 (WebCore::DOMWindow::innerHeight): 52368 (WebCore::DOMWindow::innerWidth): 52369 (WebCore::DOMWindow::scrollX): 52370 (WebCore::DOMWindow::scrollY): 52371 (WebCore::DOMWindow::scrollTo): 52372 * page/DragController.cpp: 52373 (WebCore::elementUnderMouse): 52374 * rendering/RenderView.cpp: 52375 (WebCore::RenderView::zoomFactor): 52376 * svg/SVGSVGElement.cpp: 52377 (WebCore::SVGSVGElement::currentScale): 52378 (WebCore::SVGSVGElement::setCurrentScale): 52379 Get zoom factor from Frame rather than FrameView. 52380 52381 * page/Frame.cpp: 52382 (WebCore::parentPageZoomFactor): Moved back here from FrameView. 52383 (WebCore::parentTextZoomFactor): Ditto. 52384 (WebCore::Frame::Frame): Ditto. 52385 (WebCore::Frame::setPageZoomFactor): Ditto. 52386 (WebCore::Frame::setTextZoomFactor): Ditto. 52387 (WebCore::Frame::setPageAndTextZoomFactors): Ditto. 52388 52389 * page/Frame.h: Moved functions and data for zooming back here 52390 from FrameView. 52391 52392 * page/FrameView.cpp: 52393 (WebCore::FrameView::FrameView): 52394 * page/FrameView.h: 52395 Removed code from here. 52396 52397 2010-09-17 Matthew Delaney <mdelaney (a] apple.com> 52398 52399 Reviewed by Simon Fraser. 52400 52401 Reduce minimum DOMTimer interval 52402 https://bugs.webkit.org/show_bug.cgi?id=45362 52403 52404 Reduced the minimum allowed DOMTimer interval to 4ms. This has us matching Chrome, 52405 which hasn't had any problem with 4ms in the past 2 years, as well as increasing our 52406 performance on perf tests that have tight frequent loops such as canvas "animation" 52407 performance tests. 52408 52409 No new tests added. Can't reliably instrument a test in javascript to verify that 52410 the minimum clamped interval time is in fact 4ms. 52411 52412 * WebCore.exp.in: 52413 * page/DOMTimer.cpp: Removed old comments. 52414 * page/DOMTimer.h: Removed old comments. 52415 * page/Settings.cpp: Exposted new method to set minimum DOMTimer interval. 52416 * page/Settings.h: 52417 52418 2010-09-17 Marc-Antoine Ruel <maruel (a] chromium.org> 52419 52420 Reviewed by Dimitri Glazkov. 52421 52422 [Chromium] Split webcore_platform off webcore_remaining 52423 52424 Further reduce webcore_remaining size by moving platform/ code in its 52425 own static libary. 52426 https://bugs.webkit.org/show_bug.cgi?id=45915 52427 52428 * WebCore.gyp/WebCore.gyp: 52429 52430 2010-09-13 Matt Perry <mpcomplete (a] chromium.org> 52431 52432 Reviewed by Darin Fisher. 52433 52434 Have V8DOMWindowShell ask the embedder whether to run a V8 extension 52435 in a particular script context. 52436 https://bugs.webkit.org/show_bug.cgi?id=45721 52437 52438 * bindings/v8/V8DOMWindowShell.cpp: 52439 (WebCore::V8DOMWindowShell::createNewContext): 52440 * bindings/v8/V8Proxy.cpp: 52441 (WebCore::V8Proxy::registeredExtensionWithV8): 52442 (WebCore::V8Proxy::registerExtension): 52443 * bindings/v8/V8Proxy.h: 52444 * loader/EmptyClients.h: 52445 (WebCore::EmptyFrameLoaderClient::allowScriptExtension): 52446 * loader/FrameLoaderClient.h: 52447 52448 2010-09-17 Anders Carlsson <andersca (a] apple.com> 52449 52450 Reviewed by Sam Weinig. 52451 52452 REGRESSION (r66711): Plug-in replacement text is never shown 52453 https://bugs.webkit.org/show_bug.cgi?id=45997 52454 <rdar://problem/8446766> 52455 52456 Don't return when the plug-in has replacement text. 52457 52458 * rendering/RenderEmbeddedObject.cpp: 52459 (WebCore::RenderEmbeddedObject::paintReplaced): 52460 52461 2010-09-17 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 52462 52463 Unreviewed, build fix. Add files missed in r67704. 52464 52465 * CMakeLists.txt: 52466 52467 2010-09-17 Simon Fraser <simon.fraser (a] apple.com> 52468 52469 Reviewed by Chris Marrin. 52470 52471 Remove scroll and clip layers for WKCACFLayerRenderer 52472 https://bugs.webkit.org/show_bug.cgi?id=45922 52473 52474 WKCACFLayerRenderer no longer needs its own layers for managing scrolling 52475 and clipping, because RenderLayerCompositor provides this functionality. 52476 52477 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: 52478 (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Remove call to setScrollFrame(). 52479 (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): Ditto. 52480 52481 * platform/graphics/win/WKCACFLayerRenderer.cpp: Remove references to scroll and clip layers 52482 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): 52483 (WebCore::WKCACFLayerRenderer::setRootChildLayer): 52484 (WebCore::WKCACFLayerRenderer::destroyRenderer): 52485 (WebCore::WKCACFLayerRenderer::resize): 52486 * platform/graphics/win/WKCACFLayerRenderer.h: 52487 52488 * rendering/RenderLayerCompositor.cpp: 52489 (WebCore::RenderLayerCompositor::layerTreeAsText): Dump the layers from the root platform layer. 52490 (WebCore::RenderLayerCompositor::requiresScrollLayer): On Windows, 52491 always say yes. 52492 52493 2010-09-17 Jian Li <jianli (a] chromium.org> 52494 52495 Reviewed by Dmitry Titov. 52496 52497 createBlobURL with no argument causes crash. 52498 https://bugs.webkit.org/show_bug.cgi?id=45880 52499 52500 The fix is to check if the passing blob argument is NULL or not. 52501 52502 Test: fast/files/create-blob-url-crash.html 52503 52504 * dom/ScriptExecutionContext.cpp: 52505 (WebCore::ScriptExecutionContext::createPublicBlobURL): 52506 * page/DOMWindow.idl: Add attribute to convert null string to undefined. 52507 52508 2010-09-17 Chris Marrin <cmarrin (a] apple.com> 52509 52510 Reviewed by Simon Fraser. 52511 52512 Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac 52513 https://bugs.webkit.org/show_bug.cgi?id=45911 52514 52515 * WebCore.exp.in: 52516 52517 2010-09-17 Tony Gentilcore <tonyg (a] chromium.org> 52518 52519 Reviewed by Adam Barth. 52520 52521 ASSERTION FAILED: m_loadEventDelayCount 52522 https://bugs.webkit.org/show_bug.cgi?id=45790 52523 52524 * dom/AsyncScriptRunner.cpp: 52525 (WebCore::AsyncScriptRunner::timerFired): Protect document before we go running scripts. 52526 52527 2010-09-17 Stephen White <senorblanco (a] chromium.org> 52528 52529 Reviewed by Kenneth Russell. 52530 52531 [CHROMIUM] GPU-accelerated canvas should work in test_shell. 52532 https://bugs.webkit.org/show_bug.cgi?id=45968 52533 52534 In order for the shaders in GPU-accelerated canvas to work in both the 52535 GraphicsContext3D / GLES2 path as well as chromium's test_shell (which 52536 passes them to the Mesa backend unmodified), the precision specifiers 52537 in the fragment shader have to be wrapped in #if GL_ES. 52538 52539 Soon to be covered by many layout tests. 52540 52541 * platform/graphics/gpu/SolidFillShader.cpp: 52542 (WebCore::SolidFillShader::create): 52543 * platform/graphics/gpu/TexShader.cpp: 52544 (WebCore::TexShader::create): 52545 52546 2010-09-17 Martin Robinson <mrobinson (a] igalia.com> 52547 52548 Reviewed by Xan Lopez. 52549 52550 [GTK] [REGRESSION] Listbox rendering is incorrect 52551 https://bugs.webkit.org/show_bug.cgi?id=45941 52552 52553 Only apply the shadow tiling optimization to a layer if the GraphicsContext 52554 has a shadow. 52555 52556 This is covered by manual-tests/select-element-type-select.html. 52557 52558 * platform/graphics/cairo/GraphicsContextCairo.cpp: 52559 (WebCore::drawBorderlessRectShadow): Before applying the tiled shadow optimization 52560 first check to see if the context has a shadow at all. 52561 52562 2010-09-17 Martin Robinson <mrobinson (a] igalia.com> 52563 52564 Reviewed by Oliver Hunt. 52565 52566 [GTK] FontPlatformDataFreeType should use smart pointers to hold its members 52567 https://bugs.webkit.org/show_bug.cgi?id=45917 52568 52569 Have FontPlatformDataFreeType use smart pointers to hold its reference-counted 52570 members. Also move the FcPattern specialization from OwnPtrCairo to PlatformRefPtrCairo 52571 as this type is reference-counted. 52572 52573 No new tests as this should not introduce any functionality changes. 52574 52575 * platform/graphics/cairo/FontCacheFreeType.cpp: 52576 (WebCore::FontCache::getFontDataForCharacters): Updated to reflect smart pointer changes. 52577 (WebCore::FontCache::createFontPlatformData): Ditto. 52578 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: 52579 (WebCore::FontPlatformData::FontPlatformData): Ditto. 52580 (WebCore::FontPlatformData::operator=): Ditto. 52581 (WebCore::FontPlatformData::~FontPlatformData): Ditto. 52582 (WebCore::FontPlatformData::isFixedPitch): Ditto. 52583 (WebCore::FontPlatformData::operator==): Ditto. 52584 * platform/graphics/cairo/FontPlatformDataFreeType.h: 52585 (WebCore::FontPlatformData::FontPlatformData): Ditto. 52586 (WebCore::FontPlatformData::scaledFont): Ditto. 52587 (WebCore::FontPlatformData::hash): Ditto. 52588 (WebCore::FontPlatformData::isHashTableDeletedValue): Ditto. 52589 * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: 52590 (WebCore::GlyphPage::fill): Ditto. 52591 * platform/graphics/cairo/OwnPtrCairo.cpp: Removed FcPattern specialization. 52592 * platform/graphics/cairo/OwnPtrCairo.h: Ditto. 52593 * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added FcPattern and cairo_scaled_font_t specializations. 52594 (WTF::refPlatformPtr): Ditto. 52595 (WTF::derefPlatformPtr): Ditto. 52596 * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto. 52597 * platform/graphics/cairo/SimpleFontDataCairo.cpp: 52598 (WebCore::SimpleFontData::platformInit): Updated to reflect smart pointer changes. 52599 (WebCore::SimpleFontData::containsCharacters): Ditto. 52600 (WebCore::SimpleFontData::platformWidthForGlyph): Ditto. 52601 * platform/graphics/gtk/FontGtk.cpp: 52602 (WebCore::setPangoAttributes): Ditto. 52603 52604 2010-09-14 Pavel Podivilov <podivilov (a] chromium.org> 52605 52606 Reviewed by Pavel Feldman. 52607 52608 Web Inspector: show status message below call stack when debugger is paused on DOM breakpoint 52609 https://bugs.webkit.org/show_bug.cgi?id=45114 52610 52611 * English.lproj/localizedStrings.js: 52612 * inspector/InspectorDOMAgent.cpp: 52613 (WebCore::InspectorDOMAgent::performSearch): 52614 (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion): 52615 (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval): 52616 (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification): 52617 (WebCore::InspectorDOMAgent::descriptionForDOMEvent): 52618 * inspector/InspectorDOMAgent.h: 52619 * inspector/InspectorDebuggerAgent.cpp: 52620 (WebCore::InspectorDebuggerAgent::didPause): 52621 * inspector/front-end/CallStackSidebarPane.js: 52622 (WebInspector.CallStackSidebarPane): 52623 (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s): 52624 (WebInspector.CallStackSidebarPane.prototype.updateStatus.append): 52625 (WebInspector.CallStackSidebarPane.prototype.updateStatus): 52626 * inspector/front-end/ElementsPanel.js: 52627 (WebInspector.ElementsPanel.prototype.linkifyNodeById): 52628 * inspector/front-end/ScriptsPanel.js: 52629 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 52630 * inspector/front-end/inspector.css: 52631 (.pane > .body .placard + .info): 52632 * inspector/front-end/inspector.js: 52633 (WebInspector.pausedScript): 52634 (WebInspector.formatLocalized): 52635 52636 2010-09-17 Johnny Ding <jnd (a] chromium.org> 52637 52638 Reviewed by Adam Barth. 52639 52640 Stop history reload navigation to bypass WebKit's popup blocker. 52641 Now history reload can only navigate the page in self frame, no matter 52642 what target frame is defined in <base> and no new window can be created. 52643 https://bugs.webkit.org/show_bug.cgi?id=45369 52644 52645 Test: fast/events/popup-blocked-from-history-reload.html 52646 52647 * loader/RedirectScheduler.cpp: 52648 (WebCore::ScheduledNavigation::ScheduledNavigation): 52649 (WebCore::ScheduledNavigation::wasUserGesture): 52650 Move the m_wasUserGesture to base class ScheduledNavigation. Then all 52651 asynchronous navigation situations can restore the correct gesture state 52652 during the real navigation process. 52653 (WebCore::ScheduledURLNavigation::ScheduledURLNavigation): 52654 (WebCore::ScheduledURLNavigation::fire): 52655 (WebCore::ScheduledURLNavigation::referrer): 52656 (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation): 52657 (WebCore::ScheduledHistoryNavigation::fire): 52658 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): 52659 (WebCore::ScheduledFormSubmission::fire): 52660 (WebCore::RedirectScheduler::scheduleHistoryNavigation): 52661 52662 2010-09-16 Vangelis Kokkevis <vangelis (a] chromium.org> 52663 52664 Reviewed by James Robinson. 52665 52666 [chromium] Clip the update region of an ImageLayerChromium to actual size 52667 of the image bitmap to prevent uninitialized memory access when uploading 52668 the dirty region to the texture. 52669 https://bugs.webkit.org/show_bug.cgi?id=45937 52670 52671 52672 * platform/graphics/chromium/ImageLayerChromium.cpp: 52673 (WebCore::ImageLayerChromium::updateContents): 52674 52675 2010-09-17 Dimitri Glazkov <dglazkov (a] chromium.org> 52676 52677 Reviewed by David Hyatt. 52678 52679 Remove extraneous RenderObject traversal. 52680 https://bugs.webkit.org/show_bug.cgi?id=45821 52681 52682 This code always exits in the first iteration of the loop, 52683 because in the context of this call, node->renderer()->node() != 0 52684 is always true. 52685 52686 No behavior change, covered by existing tests. 52687 52688 * page/EventHandler.cpp: 52689 (WebCore::EventHandler::canMouseDownStartSelect): Removed the loop. 52690 (WebCore::EventHandler::canMouseDragExtendSelect): Ditto. 52691 52692 2010-09-17 Pavel Feldman <pfeldman (a] chromium.org> 52693 52694 Reviewed by Yury Semikhatsky. 52695 52696 Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports 52697 resource as not cached to InspectorController. 52698 https://bugs.webkit.org/show_bug.cgi?id=45961 52699 52700 Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports 52701 resource as not cached to InspectorController. 52702 There is one path in control flow that leads to resources being 52703 reported as not cached. Patch to follow. 52704 52705 * inspector/InspectorController.cpp: 52706 (WebCore::InspectorController::markResourceAsCached): 52707 * inspector/InspectorController.h: 52708 * inspector/InspectorResource.cpp: 52709 (WebCore::InspectorResource::markAsCached): 52710 (WebCore::InspectorResource::updateResponse): 52711 * inspector/InspectorResource.h: 52712 * loader/FrameLoader.cpp: 52713 (WebCore::FrameLoader::loadedResourceFromMemoryCache): 52714 52715 2010-09-17 Alexander Pavlov <apavlov (a] chromium.org> 52716 52717 Unreviewed, build fix. Add files missed in the previous commit. 52718 52719 * GNUmakefile.am: 52720 * css/CSSPropertySourceData.cpp: Added. 52721 (WebCore::SourceRange::SourceRange): 52722 (WebCore::SourceRange::operator=): 52723 (WebCore::CSSPropertySourceData::CSSPropertySourceData): 52724 (WebCore::CSSPropertySourceData::operator=): 52725 (WebCore::CSSPropertySourceData::toString): 52726 (WebCore::CSSPropertySourceData::hash): 52727 (WebCore::CSSPropertySourceData::init): 52728 * css/CSSPropertySourceData.h: Added. 52729 (WebCore::CSSPropertySourceData::~CSSPropertySourceData): 52730 (WebCore::CSSStyleSourceData::create): 52731 52732 2010-09-15 Alexander Pavlov <apavlov (a] chromium.org> 52733 52734 Reviewed by Pavel Feldman. 52735 52736 Provide source-based properties for style declarations to CSSParser clients 52737 52738 This change: 52739 - Enables InspectorCSSStore to extract CSS stylesheet text for all source-based stylesheets, 52740 even with the resource tracking turned off. 52741 - Adds to CSSParser a capability of source-related style declaration data extraction: 52742 * Start/end source offsets for a declaration, relative to the parent stylesheet start or the "style" attribute value. 52743 * Start/end source offsets for CSS properties, relative to the declaration start. 52744 * CSS property data: name, value, priority, WebCore parsability (i.e. if the property is understood by WebCore). 52745 - Provides the extracted data to the WebInspector frontend via InspectorDOMAgent::getStyleSourceData(). 52746 https://bugs.webkit.org/show_bug.cgi?id=44949 52747 52748 * WebCore.gypi: 52749 * WebCore.pro: 52750 * WebCore.vcproj/WebCore.vcproj: 52751 * WebCore.xcodeproj/project.pbxproj: 52752 * css/CSSGrammar.y: 52753 * css/CSSMutableStyleDeclaration.h: 52754 (WebCore::CSSMutableStyleDeclaration::node): 52755 * css/CSSParser.cpp: 52756 (WebCore::CSSParser::CSSParser): 52757 (WebCore::CSSParser::parseSheet): 52758 (WebCore::CSSParser::parseDeclaration): 52759 (WebCore::CSSParser::createStyleRule): 52760 (WebCore::CSSParser::markRuleBodyStart): 52761 (WebCore::CSSParser::markPropertyStart): 52762 (WebCore::CSSParser::markPropertyEnd): 52763 * css/CSSParser.h: 52764 (WebCore::CSSParser::resetPropertyMarks): 52765 * css/CSSPropertySourceData.cpp: Added. 52766 (WebCore::SourceRange::SourceRange): 52767 (WebCore::SourceRange::operator=): 52768 (WebCore::CSSPropertySourceData::CSSPropertySourceData): 52769 (WebCore::CSSPropertySourceData::operator=): 52770 (WebCore::CSSPropertySourceData::toString): 52771 (WebCore::CSSPropertySourceData::hash): 52772 (WebCore::CSSPropertySourceData::init): 52773 * css/CSSPropertySourceData.h: Added. 52774 (WebCore::CSSPropertySourceData::~CSSPropertySourceData): 52775 (WebCore::CSSStyleSourceData::create): 52776 * inspector/Inspector.idl: 52777 * inspector/InspectorCSSStore.cpp: 52778 (WebCore::InspectorCSSStore::reset): 52779 (WebCore::InspectorCSSStore::styleSheetText): 52780 (WebCore::InspectorCSSStore::resourceStyleSheetText): 52781 (WebCore::InspectorCSSStore::inlineStyleSheetText): 52782 (WebCore::InspectorCSSStore::getStyleSourceData): 52783 (WebCore::InspectorCSSStore::extractRanges): 52784 (WebCore::InspectorCSSStore::getStyleAttributeRanges): 52785 (WebCore::InspectorCSSStore::getParentStyleSheet): 52786 (WebCore::InspectorCSSStore::inlineStyleElement): 52787 * inspector/InspectorCSSStore.h: 52788 * inspector/InspectorController.cpp: 52789 (WebCore::InspectorController::resourceContentForURL): 52790 * inspector/InspectorController.h: 52791 * inspector/InspectorDOMAgent.cpp: 52792 (WebCore::InspectorDOMAgent::getStyleSourceData): 52793 (WebCore::InspectorDOMAgent::buildObjectForStyle): 52794 * inspector/InspectorDOMAgent.h: 52795 52796 2010-09-17 Alexander Pavlov <apavlov (a] chromium.org> 52797 52798 Reviewed by Pavel Feldman. 52799 52800 Web Inspector: Show node description in inspector highlight 52801 https://bugs.webkit.org/show_bug.cgi?id=20930 52802 52803 * inspector/InspectorController.cpp: 52804 (WebCore::InspectorController::drawNodeHighlight): 52805 (WebCore::InspectorController::drawElementTitle): 52806 * inspector/InspectorController.h: 52807 52808 2010-09-16 takano takumi <takano1 (a] asia.apple.com> 52809 52810 Reviewed by Kent Tamura. 52811 52812 https://bugs.webkit.org/show_bug.cgi?id=45020 52813 Support "block-flow" and "writing-mode": interpret properties into RenderStyle 52814 52815 Fixed a regression in SVG test introduced by my previous change. 52816 52817 * css/CSSPrimitiveValueMappings.h: 52818 (WebCore::CSSPrimitiveValue::operator EWritingMode): 52819 * css/SVGCSSParser.cpp: 52820 (WebCore::CSSParser::parseSVGValue): 52821 52822 2010-09-16 Kenneth Russell <kbr (a] google.com> 52823 52824 Reviewed by James Robinson. 52825 52826 Add entry points to GraphicsContext3D needed for Chromium compositor port 52827 https://bugs.webkit.org/show_bug.cgi?id=45939 52828 52829 Added entry points for two Chromium-specific extensions, and added 52830 a flag to the GraphicsContext3D constructor, currently unsupported 52831 by all ports (including Chromium), indicating whether the context 52832 should render directly to the passed HostWindow or off-screen per 52833 the current semantics. The switch to use GraphicsContext3D in 52834 Chromium's compositor will follow in a subsequent patch. 52835 52836 No new tests; functionality is unchanged. Built and tested 52837 Chromium and WebKit on Mac OS X. 52838 52839 * platform/graphics/GraphicsContext3D.cpp: 52840 (WebCore::GraphicsContext3D::supportsMapSubCHROMIUM): 52841 (WebCore::GraphicsContext3D::mapBufferSubDataCHROMIUM): 52842 (WebCore::GraphicsContext3D::unmapBufferSubDataCHROMIUM): 52843 (WebCore::GraphicsContext3D::mapTexSubImage2DCHROMIUM): 52844 (WebCore::GraphicsContext3D::unmapTexSubImage2DCHROMIUM): 52845 (WebCore::GraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM): 52846 (WebCore::GraphicsContext3D::copyTextureToParentTextureCHROMIUM): 52847 * platform/graphics/GraphicsContext3D.h: 52848 * platform/graphics/mac/GraphicsContext3DMac.mm: 52849 (WebCore::GraphicsContext3D::create): 52850 (WebCore::GraphicsContext3D::GraphicsContext3D): 52851 * platform/graphics/qt/GraphicsContext3DQt.cpp: 52852 (WebCore::GraphicsContext3D::create): 52853 (WebCore::GraphicsContext3D::GraphicsContext3D): 52854 52855 2010-09-16 Simon Fraser <simon.fraser (a] apple.com> 52856 52857 Reviewed by James Robinson. 52858 52859 In layerTreeAsText output, avoid printing properties which have their default values 52860 https://bugs.webkit.org/show_bug.cgi?id=45931 52861 52862 Don't dump properties that have their default values to simplify output. 52863 52864 * platform/graphics/GraphicsLayer.cpp: 52865 (WebCore::GraphicsLayer::dumpProperties): 52866 52867 2010-09-16 Andreas Kling <andreas.kling (a] nokia.com> 52868 52869 Reviewed by Ariya Hidayat. 52870 52871 [Qt] GraphicsContext: Remove unused variable 52872 52873 GraphicsContextPlatformPrivate::redirect wasn't used for anything. 52874 52875 * platform/graphics/qt/GraphicsContextQt.cpp: 52876 (WebCore::GraphicsContextPlatformPrivate::p): 52877 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 52878 52879 2010-09-16 Andreas Kling <andreas.kling (a] nokia.com> 52880 52881 Reviewed by Ariya Hidayat. 52882 52883 [Qt] Remove unnecessary QPainter::clipPath() call in TransparencyLayer() 52884 https://bugs.webkit.org/show_bug.cgi?id=45923 52885 52886 QPainter::clipPath() can be very expensive, so use QPainter::hasClipping() 52887 instead of QPainter::clipPath().isEmpty(). 52888 52889 * platform/graphics/qt/TransparencyLayer.h: 52890 (WebCore::TransparencyLayer::TransparencyLayer): 52891 52892 2010-09-16 David Hyatt <hyatt (a] apple.com> 52893 52894 Reviewed by Eric Seidel. 52895 52896 Fix for regression from my previous check-in. Make sure not to move the LayoutRepainter line 52897 below the setHeight(0) call. This meant it snagged the wrong rectangle and we ended up repainting 52898 the world. 52899 52900 * rendering/RenderBlock.cpp: 52901 (WebCore::RenderBlock::layoutBlock): 52902 52903 2010-09-16 takano takumi <takano1 (a] asia.apple.com> 52904 52905 Reviewed by Dave Hyatt. 52906 52907 https://bugs.webkit.org/show_bug.cgi?id=45020 52908 Support "block-flow" and "writing-mode": interpret properties into RenderStyle 52909 52910 Added code that interprets "block-flow" property and "writing-mode" property settings 52911 into a RenderStyle object. 52912 52913 Test: fast/text/international/block-flow-parser-test.html 52914 52915 * css/CSSComputedStyleDeclaration.cpp: 52916 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 52917 * css/CSSParser.cpp: 52918 (WebCore::CSSParser::parseValue): 52919 * css/CSSPrimitiveValueMappings.h: 52920 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 52921 (WebCore::CSSPrimitiveValue::operator EBlockFlowDirection): 52922 * css/CSSPropertyNames.in: 52923 * css/CSSStyleSelector.cpp: 52924 (WebCore::CSSStyleSelector::applyProperty): 52925 * css/CSSValueKeywords.in: 52926 * css/SVGCSSValueKeywords.in: 52927 * rendering/style/RenderStyle.cpp: 52928 (WebCore::RenderStyle::diff): 52929 * rendering/style/RenderStyle.h: 52930 (WebCore::InheritedFlags::setBitDefaults): 52931 (WebCore::InheritedFlags::blockFlow): 52932 (WebCore::InheritedFlags::setBlockFlow): 52933 (WebCore::InheritedFlags::initialBlockFlow): 52934 * rendering/style/RenderStyleConstants.h: 52935 52936 2010-09-16 Martin Robinson <mrobinson (a] igalia.com> 52937 52938 Reviewed by Xan Lopez. 52939 52940 [GTK] Implement dissolveDragImageToFraction 52941 https://bugs.webkit.org/show_bug.cgi?id=45826 52942 52943 Convert the drag image from a GdkPixbuf to a Cairo surface. Not only 52944 might this allow code to be shared between Cairo ports it prevents a 52945 full data copy when the image is not resized and makes the implementation 52946 of dissolveDragImageToFraction more straight-forward. 52947 52948 This feature is covered by manual-tests/drag-image.html. 52949 52950 * page/gtk/DragControllerGtk.cpp: 52951 (WebCore::DragController::maxDragImageSize): Make the maximum size of the drag 52952 image a little smaller. 52953 * platform/DragImage.h: Changed the drag image type to be a cairo_surface_t*. 52954 * platform/gtk/DragImageGtk.cpp: 52955 (WebCore::dragImageSize): Reimplemented to reflect new drag image type. 52956 (WebCore::deleteDragImage): Ditto. 52957 (WebCore::scaleDragImage): Ditto. 52958 (WebCore::dissolveDragImageToFraction): Filled the stub of this function. 52959 (WebCore::createDragImageFromImage): Reimplemented to reflect new drag image type. 52960 * platform/gtk/GtkVersioning.h: Added definition for gtk_widget_get_realized for older GTK+s. 52961 52962 2010-09-15 David Hyatt <hyatt (a] apple.com> 52963 52964 Reviewed by Darin Adler. 52965 52966 https://bugs.webkit.org/show_bug.cgi?id=38402, paginate columns at layout time rather than at paint time. 52967 52968 This patch adds support for column breaking at layout time rather than at paint time. New variables have been 52969 added to LayoutState and to ColumnInfo to track column information while laying out. 52970 52971 The basic idea behind this patch is to retain the columns' paint-time hackery of transforming one long vertical strip 52972 into multiple columns. Now, however, layout is aware of the columns and will move objects up and down vertically in order 52973 to ensure they don't intersect a break. 52974 52975 Many new tests added in fast/multicol and new results added for existing fast/multicol tests. 52976 52977 * rendering/ColumnInfo.h: 52978 (WebCore::ColumnInfo::ColumnInfo): 52979 (WebCore::ColumnInfo::columnCount): 52980 (WebCore::ColumnInfo::columnHeight): 52981 (WebCore::ColumnInfo::setColumnCountAndHeight): 52982 (WebCore::ColumnInfo::setColumnHeight): 52983 (WebCore::ColumnInfo::updateMinimumColumnHeight): 52984 (WebCore::ColumnInfo::minimumColumnHeight): 52985 (WebCore::ColumnInfo::forcedBreaks): 52986 (WebCore::ColumnInfo::forcedBreakOffset): 52987 (WebCore::ColumnInfo::maximumDistanceBetweenForcedBreaks): 52988 (WebCore::ColumnInfo::clearForcedBreaks): 52989 (WebCore::ColumnInfo::addForcedBreak): 52990 * rendering/LayoutState.cpp: 52991 (WebCore::LayoutState::LayoutState): 52992 (WebCore::LayoutState::clearPaginationInformation): 52993 (WebCore::LayoutState::pageY): 52994 (WebCore::LayoutState::addForcedColumnBreak): 52995 * rendering/LayoutState.h: 52996 (WebCore::LayoutState::LayoutState): 52997 (WebCore::LayoutState::paginatingColumns): 52998 (WebCore::LayoutState::paginated): 52999 * rendering/RenderBlock.cpp: 53000 (WebCore::RenderBlock::RenderBlock): 53001 (WebCore::RenderBlock::~RenderBlock): 53002 (WebCore::RenderBlock::layoutBlock): 53003 (WebCore::RenderBlock::collapseMargins): 53004 (WebCore::RenderBlock::estimateVerticalPosition): 53005 (WebCore::RenderBlock::layoutBlockChild): 53006 (WebCore::RenderBlock::layoutPositionedObjects): 53007 (WebCore::RenderBlock::paintColumnRules): 53008 (WebCore::RenderBlock::paintColumnContents): 53009 (WebCore::RenderBlock::paintChildren): 53010 (WebCore::RenderBlock::insertFloatingObject): 53011 (WebCore::RenderBlock::removeFloatingObjects): 53012 (WebCore::RenderBlock::positionNewFloats): 53013 (WebCore::RenderBlock::positionNewFloatOnLine): 53014 (WebCore::RenderBlock::lowestPosition): 53015 (WebCore::RenderBlock::rightmostPosition): 53016 (WebCore::RenderBlock::leftmostPosition): 53017 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): 53018 (WebCore::RenderBlock::markDescendantBlocksAndLinesForLayout): 53019 (WebCore::RenderBlock::hitTestColumns): 53020 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): 53021 (WebCore::RenderBlock::columnCount): 53022 (WebCore::RenderBlock::columnRectAt): 53023 (WebCore::RenderBlock::layoutColumns): 53024 (WebCore::RenderBlock::adjustPointToColumnContents): 53025 (WebCore::RenderBlock::adjustRectForColumns): 53026 (WebCore::RenderBlock::adjustForColumns): 53027 (WebCore::RenderBlock::setMaxTopMargins): 53028 (WebCore::RenderBlock::setMaxBottomMargins): 53029 (WebCore::RenderBlock::setPaginationStrut): 53030 (WebCore::RenderBlock::setPageY): 53031 (WebCore::RenderBlock::nextPageTop): 53032 (WebCore::inNormalFlow): 53033 (WebCore::RenderBlock::applyBeforeBreak): 53034 (WebCore::RenderBlock::applyAfterBreak): 53035 (WebCore::RenderBlock::adjustForUnsplittableChild): 53036 (WebCore::RenderBlock::adjustLinePositionForPagination): 53037 * rendering/RenderBlock.h: 53038 (WebCore::RenderBlock::paginationStrut): 53039 (WebCore::RenderBlock::pageY): 53040 (WebCore::RenderBlock::maxTopPosMargin): 53041 (WebCore::RenderBlock::maxTopNegMargin): 53042 (WebCore::RenderBlock::maxBottomPosMargin): 53043 (WebCore::RenderBlock::maxBottomNegMargin): 53044 (WebCore::RenderBlock::initMaxMarginValues): 53045 (WebCore::RenderBlock::FloatingObject::FloatingObject): 53046 (WebCore::RenderBlock::FloatingObject::type): 53047 (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): 53048 * rendering/RenderBlockLineLayout.cpp: 53049 (WebCore::RenderBlock::layoutInlineChildren): 53050 (WebCore::RenderBlock::determineStartPosition): 53051 (WebCore::RenderBlock::skipLeadingWhitespace): 53052 (WebCore::RenderBlock::findNextLineBreak): 53053 * rendering/RenderBox.cpp: 53054 (WebCore::RenderBox::mapLocalToContainer): 53055 (WebCore::RenderBox::computeRectForRepaint): 53056 (WebCore::RenderBox::markDescendantBlocksAndLinesForLayout): 53057 * rendering/RenderBox.h: 53058 * rendering/RenderFlexibleBox.cpp: 53059 (WebCore::RenderFlexibleBox::layoutBlock): 53060 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 53061 (WebCore::RenderFlexibleBox::layoutVerticalBox): 53062 * rendering/RenderFlexibleBox.h: 53063 * rendering/RenderInline.cpp: 53064 (WebCore::RenderInline::computeRectForRepaint): 53065 (WebCore::RenderInline::mapLocalToContainer): 53066 * rendering/RenderLayer.cpp: 53067 (WebCore::RenderLayer::updatePagination): 53068 (WebCore::RenderLayer::paintChildLayerIntoColumns): 53069 (WebCore::RenderLayer::hitTestChildLayerColumns): 53070 * rendering/RenderLineBoxList.cpp: 53071 (WebCore::RenderLineBoxList::paint): 53072 * rendering/RenderTable.cpp: 53073 (WebCore::RenderTable::RenderTable): 53074 (WebCore::RenderTable::layout): 53075 * rendering/RenderTable.h: 53076 * rendering/RenderTableRow.cpp: 53077 (WebCore::RenderTableRow::layout): 53078 * rendering/RenderTableSection.cpp: 53079 (WebCore::RenderTableSection::layoutRows): 53080 * rendering/RenderView.cpp: 53081 (WebCore::RenderView::RenderView): 53082 (WebCore::RenderView::pushLayoutState): 53083 * rendering/RenderView.h: 53084 (WebCore::RenderView::setTruncatedAt): 53085 (WebCore::RenderView::pushLayoutState): 53086 (WebCore::RenderView::popLayoutState): 53087 (WebCore::LayoutStateMaintainer::LayoutStateMaintainer): 53088 (WebCore::LayoutStateMaintainer::push): 53089 * rendering/RootInlineBox.h: 53090 (WebCore::RootInlineBox::RootInlineBox): 53091 (WebCore::RootInlineBox::paginationStrut): 53092 (WebCore::RootInlineBox::setPaginationStrut): 53093 53094 2010-09-16 Pavel Podivilov <podivilov (a] chromium.org> 53095 53096 Reviewed by Dimitri Glazkov. 53097 53098 Fix debug crash in HTMLFrameOwnerElement caused by content frame being used after destruction. 53099 https://bugs.webkit.org/show_bug.cgi?id=45737 53100 53101 Test: fast/frames/frame-limit.html 53102 53103 * html/HTMLFrameOwnerElement.cpp: 53104 (WebCore::HTMLFrameOwnerElement::willRemove): 53105 53106 2010-09-16 Thomas Zander <t.zander (a] nokia.com> 53107 53108 Reviewed by Andreas Kling. 53109 53110 https://bugs.webkit.org/show_bug.cgi?id=45878 53111 53112 [Qt] Fixed incorrect Symbian scoping. 53113 53114 The missing install functionality is only true for mmp based systems. 53115 53116 * WebCore.pro: limit functionality to mmp systems. 53117 53118 2010-09-16 Anders Carlsson <andersca (a] apple.com> 53119 53120 Fix clang build. 53121 53122 * page/animation/AnimationBase.h: 53123 Fix struct/class mismatch. 53124 53125 2010-09-16 Darin Adler <darin (a] apple.com> 53126 53127 Reviewed by Andreas Kling. 53128 53129 Reduce use of HTMLInputElement::inputType so we can remove it later 53130 https://bugs.webkit.org/show_bug.cgi?id=45903 53131 53132 * accessibility/AccessibilityRenderObject.cpp: 53133 (WebCore::AccessibilityRenderObject::isFileUploadButton): Use isFileUpload. 53134 (WebCore::AccessibilityRenderObject::isInputImage): Use isImageButton. 53135 (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Use 53136 isCheckbox and isRadioButton. 53137 53138 * css/CSSStyleSelector.cpp: 53139 (WebCore::CSSStyleSelector::adjustRenderStyle): Use isImageButton. 53140 53141 * editing/Editor.cpp: 53142 (WebCore::Editor::setBaseWritingDirection): Use isTextField. 53143 53144 * editing/ReplaceSelectionCommand.cpp: 53145 (WebCore::ReplaceSelectionCommand::doApply): Use isPasswordField. 53146 53147 * editing/SelectionController.cpp: 53148 (WebCore::SelectionController::isInPasswordField): Use isPasswordField. 53149 53150 * html/HTMLInputElement.h: Added isFileUpload, isImageButton, and isSubmitButton. 53151 53152 * page/Chrome.cpp: 53153 (WebCore::Chrome::setToolTip): Use isSubmitButton and isFileUpload. 53154 53155 * page/DragController.cpp: 53156 (WebCore::asFileInput): Use isFileUpload. 53157 53158 * page/EventHandler.cpp: 53159 (WebCore::isSubmitImage): Use isImageButton. 53160 53161 * rendering/RenderFileUploadControl.cpp: 53162 (WebCore::RenderFileUploadControl::updateFromElement): Use isFileUpload. 53163 53164 2010-09-16 Pavel Podivilov <podivilov (a] chromium.org> 53165 53166 Reviewed by Pavel Feldman. 53167 53168 Web Inspector: quick fix for crash in InspectorController::loadBreakpoints caused by empty main resource 53169 https://bugs.webkit.org/show_bug.cgi?id=45901 53170 53171 * inspector/InspectorController.cpp: 53172 (WebCore::InspectorController::breakpointsSettingKey): 53173 53174 2010-09-16 Pavel Feldman <pfeldman (a] chromium.org> 53175 53176 Reviewed by Yury Semikhatsky. 53177 53178 Web Inspector: Prevent responseReceivedTime from being > endTime in case mixture of WebCore and Network stack info is used. 53179 https://bugs.webkit.org/show_bug.cgi?id=45892 53180 53181 * inspector/InspectorResource.cpp: 53182 (WebCore::InspectorResource::endTiming): 53183 53184 2010-09-16 Ilya Tikhonovsky <loislo (a] chromium.org> 53185 53186 Reviewed by Yury Semikhatsky. 53187 53188 Web Inspector: move resourceTracking flag under control of BackendSettings. 53189 53190 Four Inspector API methods about resourceTracking flag were removed. 53191 Actual state of the flag is transfered as the response of setResourceTracking request. 53192 Initial state of the flag on the frontend side is obtained from settings.backend. 53193 53194 https://bugs.webkit.org/show_bug.cgi?id=45887 53195 53196 * inspector/Inspector.idl: 53197 * inspector/InspectorController.cpp: 53198 (WebCore::InspectorController::getBackendSettings): 53199 (WebCore::InspectorController::populateScriptObjects): 53200 (WebCore::InspectorController::setResourceTracking): 53201 * inspector/InspectorController.h: 53202 * inspector/front-end/ResourcesPanel.js: 53203 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): 53204 * inspector/front-end/Settings.js: 53205 (WebInspector.Settings.initialize.populateBackendSettings): 53206 (WebInspector.Settings.initialize): 53207 * inspector/front-end/inspector.js: 53208 53209 2010-09-16 Jian Li <jianli (a] chromium.org> 53210 53211 Reviewed by David Levin. 53212 53213 BlobData should be copied for it to be used cross-thread in ThreadableBlobRegistry. 53214 https://bugs.webkit.org/show_bug.cgi?id=45909 53215 53216 * fileapi/ThreadableBlobRegistry.cpp: 53217 (WebCore::BlobRegistryContext::BlobRegistryContext): 53218 53219 2010-09-16 Daniel Cheng <dcheng (a] chromium.org> 53220 53221 Reviewed by Simon Fraser. 53222 53223 [chromium] Fix incorrect drag node/selection painting. 53224 https://bugs.webkit.org/show_bug.cgi?id=45573 53225 53226 Drag selections were being incorrectly clipped when dragging a selection 53227 near the bottom of a page that was taller than the viewport. To fix 53228 this, we use paintContents() instead of paint(). 53229 53230 * page/chromium/FrameChromium.cpp: 53231 (WebCore::Frame::nodeImage): 53232 (WebCore::Frame::dragImageForSelection): 53233 53234 2010-09-16 Daniel Cheng <dcheng (a] chromium.org> 53235 53236 Reviewed by Tony Chang. 53237 53238 Fix incorrect usage of dissolveDragImageToFraction(). 53239 https://bugs.webkit.org/show_bug.cgi?id=45835 53240 53241 createDragImageForSelection() was ignoring the return value of 53242 dissolveDragImageToFraction(). This didn't happen to crash on most 53243 platforms, since most implementations simply modified the image that was 53244 passed in. However, Chromium Mac's implementation actually creates a new 53245 image and returns that instead. This caused us to crash when copying the 53246 image from the renderer to the browser process, since the memory had 53247 already been freed. 53248 53249 * manual-tests/selection-drag-crash.html: Added. 53250 * platform/DragImage.cpp: 53251 (WebCore::createDragImageForSelection): 53252 53253 2010-09-16 Sheriff Bot <webkit.review.bot (a] gmail.com> 53254 53255 Unreviewed, rolling out r67628. 53256 http://trac.webkit.org/changeset/67628 53257 https://bugs.webkit.org/show_bug.cgi?id=45904 53258 53259 broke the build (Requested by eric_carlson on #webkit). 53260 53261 * page/ContextMenuController.cpp: 53262 (WebCore::ContextMenuController::contextMenuItemSelected): 53263 * platform/ContextMenu.cpp: 53264 (WebCore::ContextMenu::populate): 53265 (WebCore::ContextMenu::checkOrEnableIfNeeded): 53266 * platform/ContextMenuItem.h: 53267 * platform/LocalizationStrategy.h: 53268 * platform/LocalizedStrings.cpp: 53269 * platform/LocalizedStrings.h: 53270 * platform/android/LocalizedStringsAndroid.cpp: 53271 * platform/brew/LocalizedStringsBrew.cpp: 53272 * platform/efl/LocalizedStringsEfl.cpp: 53273 * platform/gtk/ContextMenuItemGtk.cpp: 53274 (WebCore::gtkStockIDFromContextMenuAction): 53275 * platform/gtk/LocalizedStringsGtk.cpp: 53276 * platform/haiku/LocalizedStringsHaiku.cpp: 53277 * platform/wx/LocalizedStringsWx.cpp: 53278 * rendering/HitTestResult.cpp: 53279 (WebCore::HitTestResult::absoluteMediaURL): 53280 * rendering/HitTestResult.h: 53281 53282 2010-09-16 Andreas Kling <andreas.kling (a] nokia.com> 53283 53284 Reviewed by Simon Fraser. 53285 53286 CSS: Fix crash in getTimingFunctionValue() 53287 https://bugs.webkit.org/show_bug.cgi?id=45896 53288 53289 Use a RefPtr to avoid deleting the TimingFunction prematurely. 53290 53291 This is covered by existing tests, e.g transitions/inherit-other-props.html 53292 but will only actually crash on picky platforms (or in valgrind.) 53293 53294 * css/CSSComputedStyleDeclaration.cpp: 53295 (WebCore::getTimingFunctionValue): 53296 53297 2010-09-16 Pavel Feldman <pfeldman (a] chromium.org> 53298 53299 Reviewed by Yury Semikhatsky. 53300 53301 Web Inspector: prevent resource timing popover from having scrollers. 53302 https://bugs.webkit.org/show_bug.cgi?id=45883 53303 53304 * inspector/front-end/ResourcesPanel.js: 53305 (WebInspector.ResourcesPanel.prototype._showPopover): 53306 53307 2010-09-15 Philippe Normand <pnormand (a] igalia.com> 53308 53309 Reviewed by Eric Carlson. 53310 53311 [GTK] enhanced context menu for media elements 53312 https://bugs.webkit.org/show_bug.cgi?id=45021 53313 53314 New items in the media Element context menu: 53315 - play/pause 53316 - mute/unmute 53317 - controls display control 53318 - switch to fullscreen (for video only) 53319 - loop playback control 53320 - copy media url to clipboard 53321 - open in new window 53322 53323 Test: media/context-menu-actions.html 53324 53325 * page/ContextMenuController.cpp: 53326 (WebCore::ContextMenuController::contextMenuItemSelected): 53327 * platform/ContextMenu.cpp: 53328 (WebCore::ContextMenu::populate): 53329 (WebCore::ContextMenu::checkOrEnableIfNeeded): 53330 * platform/ContextMenuItem.h: 53331 * platform/LocalizationStrategy.h: 53332 * platform/LocalizedStrings.cpp: 53333 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53334 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53335 (WebCore::contextMenuItemTagToggleMediaControls): 53336 (WebCore::contextMenuItemTagToggleMediaLoop): 53337 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53338 (WebCore::contextMenuItemTagMediaPlay): 53339 (WebCore::contextMenuItemTagMediaPause): 53340 (WebCore::contextMenuItemTagMediaMute): 53341 (WebCore::contextMenuItemTagMediaUnMute): 53342 * platform/LocalizedStrings.h: 53343 * platform/android/LocalizedStringsAndroid.cpp: 53344 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53345 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53346 (WebCore::contextMenuItemTagToggleMediaControls): 53347 (WebCore::contextMenuItemTagToggleMediaLoop): 53348 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53349 (WebCore::contextMenuItemTagMediaPlay): 53350 (WebCore::contextMenuItemTagMediaPause): 53351 (WebCore::contextMenuItemTagMediaMute): 53352 (WebCore::contextMenuItemTagMediaUnMute): 53353 * platform/brew/LocalizedStringsBrew.cpp: 53354 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53355 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53356 (WebCore::contextMenuItemTagToggleMediaControls): 53357 (WebCore::contextMenuItemTagToggleMediaLoop): 53358 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53359 (WebCore::contextMenuItemTagMediaPlay): 53360 (WebCore::contextMenuItemTagMediaPause): 53361 (WebCore::contextMenuItemTagMediaMute): 53362 (WebCore::contextMenuItemTagMediaUnMute): 53363 * platform/efl/LocalizedStringsEfl.cpp: 53364 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53365 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53366 (WebCore::contextMenuItemTagToggleMediaControls): 53367 (WebCore::contextMenuItemTagToggleMediaLoop): 53368 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53369 (WebCore::contextMenuItemTagMediaPlay): 53370 (WebCore::contextMenuItemTagMediaPause): 53371 (WebCore::contextMenuItemTagMediaMute): 53372 (WebCore::contextMenuItemTagMediaUnMute): 53373 * platform/gtk/ContextMenuItemGtk.cpp: 53374 (WebCore::gtkStockIDFromContextMenuAction): 53375 * platform/gtk/LocalizedStringsGtk.cpp: 53376 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53377 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53378 (WebCore::contextMenuItemTagToggleMediaControls): 53379 (WebCore::contextMenuItemTagToggleMediaLoop): 53380 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53381 (WebCore::contextMenuItemTagMediaPlay): 53382 (WebCore::contextMenuItemTagMediaPause): 53383 (WebCore::contextMenuItemTagMediaMute): 53384 (WebCore::contextMenuItemTagMediaUnMute): 53385 * platform/haiku/LocalizedStringsHaiku.cpp: 53386 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53387 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53388 (WebCore::contextMenuItemTagToggleMediaControls): 53389 (WebCore::contextMenuItemTagToggleMediaLoop): 53390 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53391 (WebCore::contextMenuItemTagMediaPlay): 53392 (WebCore::contextMenuItemTagMediaPause): 53393 (WebCore::contextMenuItemTagMediaMute): 53394 (WebCore::contextMenuItemTagMediaUnMute): 53395 * platform/wx/LocalizedStringsWx.cpp: 53396 (WebCore::contextMenuItemTagOpenMediaInNewWindow): 53397 (WebCore::contextMenuItemTagCopyMediaLinkToClipboard): 53398 (WebCore::contextMenuItemTagToggleMediaControls): 53399 (WebCore::contextMenuItemTagToggleMediaLoop): 53400 (WebCore::contextMenuItemTagEnterVideoFullscreen): 53401 (WebCore::contextMenuItemTagMediaPlay): 53402 (WebCore::contextMenuItemTagMediaPause): 53403 (WebCore::contextMenuItemTagMediaMute): 53404 (WebCore::contextMenuItemTagMediaUnMute): 53405 * rendering/HitTestResult.cpp: 53406 (WebCore::HitTestResult::absoluteMediaURL): 53407 (WebCore::HitTestResult::mediaSupportsFullscreen): 53408 (WebCore::HitTestResult::mediaElement): 53409 (WebCore::HitTestResult::toggleMediaControlsDisplay): 53410 (WebCore::HitTestResult::toggleMediaLoopPlayback): 53411 (WebCore::HitTestResult::enterFullscreenForVideo): 53412 (WebCore::HitTestResult::mediaControlsEnabled): 53413 (WebCore::HitTestResult::mediaLoopEnabled): 53414 (WebCore::HitTestResult::mediaPlaying): 53415 (WebCore::HitTestResult::toggleMediaPlayState): 53416 (WebCore::HitTestResult::mediaHasAudio): 53417 (WebCore::HitTestResult::mediaMuted): 53418 (WebCore::HitTestResult::toggleMediaMuteState): 53419 * rendering/HitTestResult.h: 53420 53421 2010-09-16 Tony Gentilcore <tonyg (a] chromium.org> 53422 53423 Reviewed by Adam Barth. 53424 53425 Crash in WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions 53426 https://bugs.webkit.org/show_bug.cgi?id=45833 53427 53428 Test: fast/parser/x-frame-options-detached-document-crash.html 53429 53430 * dom/Document.cpp: 53431 (WebCore::Document::processHttpEquiv): Other branches in this method already test for a null frame. So it seems to make sense to test that here as well. 53432 53433 2010-09-16 Vangelis Kokkevis <vangelis (a] chromium.org> 53434 53435 Reviewed by Darin Fisher. 53436 53437 [chromium] ImageLayerChromium needs to keep a ref to the Image it uses 53438 so that it never tries to access an already destroyed Image. 53439 https://bugs.webkit.org/show_bug.cgi?id=45869 53440 53441 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 53442 (WebCore::GraphicsLayerChromium::setContentsToImage): 53443 * platform/graphics/chromium/ImageLayerChromium.cpp: 53444 (WebCore::ImageLayerChromium::setContents): 53445 (WebCore::ImageLayerChromium::updateContents): 53446 * platform/graphics/chromium/ImageLayerChromium.h: 53447 53448 2010-09-16 Patrick Gansterer <paroga (a] paroga.com> 53449 53450 Reviewed by Adam Roben. 53451 53452 [WINCE] Add platform-specific Image methods 53453 https://bugs.webkit.org/show_bug.cgi?id=28272 53454 53455 * platform/graphics/wince/ImageWinCE.cpp: Added. 53456 (WebCore::RGBA32Buffer::asNewNativeImage): 53457 (WebCore::FrameData::clear): 53458 (WebCore::BitmapImage::getHBITMAPOfSize): 53459 (WebCore::BitmapImage::drawFrameMatchingSourceSize): 53460 (WebCore::BitmapImage::draw): 53461 (WebCore::Image::drawPattern): 53462 (WebCore::BitmapImage::drawPattern): 53463 (WebCore::BitmapImage::checkForSolidColor): 53464 53465 2010-09-16 Yury Semikhatsky <yurys (a] chromium.org> 53466 53467 Reviewed by Pavel Feldman. 53468 53469 Web Inspector: [REGRESSION] Scripts disappear from scripts panel after navigation 53470 https://bugs.webkit.org/show_bug.cgi?id=45890 53471 53472 * inspector/InspectorController.cpp: 53473 (WebCore::InspectorController::populateScriptObjects): 53474 (WebCore::InspectorController::restoreDebugger): 53475 (WebCore::InspectorController::restoreProfiler): 53476 * inspector/InspectorController.h: 53477 53478 2010-09-16 Satish Sampath <satish (a] chromium.org> 53479 53480 Unreviewed, fixing a build break with VS 2008. 53481 53482 Fix build break, add the namespace in a friend declaration to get MSVC recognize it properly. 53483 https://bugs.webkit.org/show_bug.cgi?id=45893 53484 53485 * fileapi/FileWriter.h: 53486 53487 2010-09-15 Philippe Normand <pnormand (a] igalia.com> 53488 53489 Reviewed by Martin Robinson. 53490 53491 [GStreamer] XOverlay API changes break the build 53492 https://bugs.webkit.org/show_bug.cgi?id=45810 53493 53494 Cope with the GStreamer XOverlay API change for the upcoming 53495 0.10.31 version. 53496 No new tests, build fix only. 53497 53498 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 53499 (WebCore::GStreamerGWorld::setWindowOverlay): 53500 53501 2010-09-16 Andreas Kling <andreas.kling (a] nokia.com> 53502 53503 Reviewed by Tor Arne Vestb. 53504 53505 [Qt] V8 port: Fix debug build 53506 53507 Add missing inclusion of <wtf/text/CString.h> where necessary for debug builds. 53508 53509 * history/PageCache.cpp: 53510 * html/HTMLElement.cpp: 53511 * html/HTMLMediaElement.cpp: 53512 * loader/DocumentLoader.cpp: 53513 * loader/icon/IconDatabase.cpp: 53514 * loader/icon/IconLoader.cpp: 53515 * storage/AbstractDatabase.cpp: 53516 * storage/Database.cpp: 53517 * storage/DatabaseSync.cpp: 53518 * storage/DatabaseTracker.cpp: 53519 53520 2010-09-16 Alexey Proskuryakov <ap (a] apple.com> 53521 53522 Reviewed by Adam Barth. 53523 53524 https://bugs.webkit.org/show_bug.cgi?id=45852 53525 Range::selectNode and selectNodeContents misbehave when argument is in another document 53526 53527 Test: fast/dom/Range/select-node-different-document.html 53528 53529 There is nothing in DOM Traversal spec that says this shouldn't work, and it does work in 53530 Firefox. 53531 53532 * dom/Range.cpp: 53533 (WebCore::Range::setDocument): 53534 (WebCore::Range::selectNode): 53535 (WebCore::Range::selectNodeContents): 53536 * dom/Range.h: 53537 53538 2010-09-16 Andrey Kosyakov <caseq (a] chromium.org> 53539 53540 Reviewed by Pavel Feldman. 53541 53542 Web Inspector: [Resources panel] [HAR] Need a way to save timing data. 53543 Added support to export HAR to file from Resources panel (conditional on Preferences) 53544 Added support for HARLog (a higher-level aggregate than HAREntry) 53545 https://bugs.webkit.org/show_bug.cgi?id=45663 53546 53547 * English.lproj/localizedStrings.js: 53548 * inspector/front-end/HAREntry.js: 53549 (WebInspector.HAREntry.prototype.build): 53550 (WebInspector.HAREntry.prototype._buildTimings): 53551 (WebInspector.HAREntry._toMilliseconds): 53552 (WebInspector.HARLog): 53553 (WebInspector.HARLog.prototype.build): 53554 (WebInspector.HARLog.prototype._buildPages): 53555 (WebInspector.HARLog.prototype._buildMainResourceTimings): 53556 (WebInspector.HARLog.prototype._convertResource): 53557 * inspector/front-end/ResourcesPanel.js: 53558 (WebInspector.ResourcesPanel): 53559 (WebInspector.ResourcesPanel.prototype.hide): 53560 (WebInspector.ResourcesPanel.prototype._contextMenu): 53561 (WebInspector.ResourcesPanel.prototype._exportAll): 53562 (WebInspector.ResourcesPanel.prototype._exportResource): 53563 * inspector/front-end/Settings.js: 53564 * inspector/front-end/utilities.js: 53565 (): 53566 53567 2010-09-16 Eric Uhrhane <ericu (a] chromium.org> 53568 53569 Reviewed by Jian Li. 53570 53571 Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM. 53572 https://bugs.webkit.org/show_bug.cgi?id=45798 53573 53574 * CMakeLists.txt: 53575 * Configurations/FeatureDefines.xcconfig: 53576 * GNUmakefile.am: 53577 * WebCore.pro: 53578 * dom/EventTarget.cpp: 53579 * dom/EventTarget.h: 53580 * dom/ExceptionCode.h: 53581 * dom/ScriptExecutionContext.cpp: 53582 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 53583 * dom/ScriptExecutionContext.h: 53584 * fileapi/AsyncFileWriter.h: 53585 * fileapi/FileEntry.cpp: 53586 * fileapi/FileEntry.h: 53587 * fileapi/FileEntry.idl: 53588 * fileapi/FileError.h: 53589 * fileapi/FileError.idl: 53590 * fileapi/FileException.h: 53591 * fileapi/FileException.idl: 53592 * fileapi/FileStreamProxy.cpp: 53593 * fileapi/FileStreamProxy.h: 53594 * fileapi/FileThread.cpp: 53595 * fileapi/FileThread.h: 53596 * fileapi/FileWriter.cpp: 53597 * fileapi/FileWriter.h: 53598 * fileapi/FileWriter.idl: 53599 * fileapi/FileWriterCallback.h: 53600 * fileapi/FileWriterCallback.idl: 53601 * fileapi/FileWriterClient.h: 53602 * page/DOMWindow.idl: 53603 * platform/AsyncFileStream.h: 53604 * platform/FileStream.cpp: 53605 * platform/FileStream.h: 53606 * platform/FileStreamClient.h: 53607 53608 2010-09-16 Marc-Antoine Ruel <maruel (a] chromium.org> 53609 53610 Reviewed by Dimitri Glazkov. 53611 53612 Convert WebCore.gyp to use regexp to excludes files instead of listing them in sources!. 53613 53614 This is necessary because sources! is processed before sources/. This makes 53615 applying broader pattern in sources/ more difficult since it overrides the files 53616 listed in sources!. Having all them in sources/ permits controlling the ordering 53617 of the regexp, thus the final list of included files. 53618 53619 Fix Harfbuzz and VDMX source files includes in WebCore.gypi and WebCore.gyp 53620 53621 https://bugs.webkit.org/show_bug.cgi?id=45823 53622 53623 * WebCore.gyp/WebCore.gyp: 53624 * WebCore.gypi: 53625 53626 2010-09-16 Nat Duca <nduca (a] chromium.org> 53627 53628 Reviewed by Darin Fisher. 53629 53630 [chromium] Make compositor obey finish flag 53631 https://bugs.webkit.org/show_bug.cgi?id=45552 53632 53633 The compositor should obey the finish flag on doComposite. This 53634 flag causes the compositor to finish rendering before returning, 53635 which is needed when resizing the window to avoid flashes of green. 53636 53637 * platform/graphics/chromium/LayerRendererChromium.cpp: 53638 (WebCore::LayerRendererChromium::finish): 53639 * platform/graphics/chromium/LayerRendererChromium.h: 53640 53641 2010-09-16 Alejandro G. Castro <alex (a] igalia.com> 53642 53643 Reviewed by Xan Lopez. 53644 53645 GTK+ 3.x. updates, gtk_widget_size_request is deprecated and 53646 "activate-slider" style property for scrollbars is gone. 53647 53648 * platform/gtk/PopupMenuGtk.cpp: 53649 (WebCore::PopupMenuGtk::show): 53650 * platform/gtk/gtk2drawing.c: 53651 (moz_gtk_scrollbar_thumb_paint): 53652 (moz_gtk_combo_box_paint): 53653 53654 2010-09-16 Diego Gonzalez <diegohcg (a] webkit.org> 53655 53656 Reviewed by Kenneth Rohde Christiansen. 53657 53658 [Qt] Remove FrameLoaderClientQt::webFrame() to use NetworkingContext to get the WebFrame to avoid layering violations 53659 https://bugs.webkit.org/show_bug.cgi?id=42293 53660 53661 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 53662 (WebCore::MediaPlayerPrivate::commitLoad): 53663 53664 2010-09-16 Ryuan Choi <ryuan.choi (a] samsung.com> 53665 53666 Unreviewed build fix for EFL 53667 53668 [EFL] REGRESSION(67567) FontCacheCairo was removed 53669 https://bugs.webkit.org/show_bug.cgi?id=45858 53670 53671 * CMakeListsEfl.txt: 53672 53673 2010-09-16 Yong Li <yoli (a] rim.com> 53674 53675 Reviewed by George Staikos. 53676 53677 https://bugs.webkit.org/show_bug.cgi?id=37117 53678 53679 Add platform-independent JPEG/PNG image encoders that 53680 work with big endian RGBA source data. 53681 53682 There's no layout test because this patch does't make 53683 any port start using the encoders. 53684 53685 * platform/image-encoders/JPEGImageEncoder.cpp: Added. 53686 * platform/image-encoders/JPEGImageEncoder.h: Added. 53687 * platform/image-encoders/PNGImageEncoder.cpp: Added. 53688 * platform/image-encoders/PNGImageEncoder.h: Added. 53689 53690 2010-09-15 Jeremy Orlow <jorlow (a] chromium.org> 53691 53692 Reviewed by Steve Block. 53693 53694 Allow the embedder to specify the base path for IndexedDB. 53695 https://bugs.webkit.org/show_bug.cgi?id=45815 53696 53697 Existing tests provide coverage. Use the indexedDBPath parameter that's 53698 already on the group settings object. Pass this parameter into the backend 53699 which will use it rather than a hard coded tmp directory location. If 53700 nothing is specified, assume it should be an in-memory temporary database. 53701 (This is useful for bringup and Chromium's incognito mode.) 53702 53703 * storage/IDBFactory.cpp: 53704 (WebCore::IDBFactory::open): 53705 * storage/IDBFactoryBackendImpl.cpp: 53706 (WebCore::openSQLiteDatabase): 53707 (WebCore::createTables): 53708 (WebCore::IDBFactoryBackendImpl::open): 53709 * storage/IDBFactoryBackendImpl.h: 53710 * storage/IDBFactoryBackendInterface.h: 53711 53712 2010-09-16 Yong Li <yoli (a] rim.com> 53713 53714 Reviewed by George Staikos. 53715 53716 Fix the bug that GIF image down sampling can miss some lines. 53717 https://bugs.webkit.org/show_bug.cgi?id=45322 53718 53719 Test: fast/images/gif-large-checkerboard.html 53720 53721 * platform/image-decoders/gif/GIFImageDecoder.cpp: 53722 (WebCore::GIFImageDecoder::haveDecodedRow): 53723 53724 2010-09-16 Philippe Normand <pnormand (a] igalia.com> 53725 53726 Reviewed by Andreas Kling. 53727 53728 [GStreamer] un-needed header includes in MediaPlayerPrivate 53729 https://bugs.webkit.org/show_bug.cgi?id=45877 53730 53731 Include only the headers we need. 53732 No new tests, #includes cleanup only. 53733 53734 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 53735 53736 2010-09-16 Pavel Feldman <pfeldman (a] chromium.org> 53737 53738 Reviewed by Yury Semikhatsky. 53739 53740 Web Inspector: console.group(object) does not allow object to be expanded. 53741 https://bugs.webkit.org/show_bug.cgi?id=45806 53742 53743 * inspector/front-end/ConsoleView.js: 53744 (WebInspector.ConsoleGroup.prototype.addMessage): 53745 * inspector/front-end/treeoutline.js: 53746 (TreeElement.treeElementToggled): 53747 53748 2010-09-08 Jeremy Orlow <jorlow (a] chromium.org> 53749 53750 Reviewed by Steve Block. 53751 53752 Complete index support for IndexedDB 53753 https://bugs.webkit.org/show_bug.cgi?id=45386 53754 53755 Add the rest of the index related API for IndexedDB. This 53756 includes cursor suport. A bunch of code was also refactored 53757 since it is shared between indexes and objectStores. 53758 53759 Tests: storage/indexeddb/index-basics.html 53760 storage/indexeddb/index-cursor.html 53761 + additions to others. 53762 53763 * storage/IDBAny.cpp: 53764 (WebCore::IDBAny::set): 53765 * storage/IDBCursor.cpp: 53766 (WebCore::IDBCursor::value): 53767 * storage/IDBCursorBackendImpl.cpp: 53768 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): 53769 (WebCore::IDBCursorBackendImpl::value): 53770 (WebCore::IDBCursorBackendImpl::update): 53771 (WebCore::IDBCursorBackendImpl::continueFunction): 53772 (WebCore::IDBCursorBackendImpl::remove): 53773 (WebCore::IDBCursorBackendImpl::loadCurrentRow): 53774 (WebCore::IDBCursorBackendImpl::database): 53775 * storage/IDBCursorBackendImpl.h: 53776 (WebCore::IDBCursorBackendImpl::create): 53777 * storage/IDBCursorBackendInterface.h: 53778 * storage/IDBFactoryBackendImpl.cpp: 53779 (WebCore::createTables): 53780 * storage/IDBIndex.cpp: 53781 (WebCore::IDBIndex::openObjectCursor): 53782 (WebCore::IDBIndex::openCursor): 53783 (WebCore::IDBIndex::getObject): 53784 (WebCore::IDBIndex::get): 53785 * storage/IDBIndex.h: 53786 (WebCore::IDBIndex::storeName): 53787 * storage/IDBIndex.idl: 53788 * storage/IDBIndexBackendImpl.cpp: 53789 (WebCore::IDBIndexBackendImpl::storeName): 53790 (WebCore::openCursorInternal): 53791 (WebCore::IDBIndexBackendImpl::openObjectCursor): 53792 (WebCore::IDBIndexBackendImpl::openCursor): 53793 (WebCore::getInternal): 53794 (WebCore::IDBIndexBackendImpl::getObject): 53795 (WebCore::IDBIndexBackendImpl::get): 53796 * storage/IDBIndexBackendImpl.h: 53797 (WebCore::IDBIndexBackendImpl::objectStore): 53798 * storage/IDBIndexBackendInterface.h: 53799 * storage/IDBKey.cpp: 53800 (WebCore::IDBKey::fromQuery): 53801 (WebCore::IDBKey::whereSyntax): 53802 (WebCore::IDBKey::leftCursorWhereFragment): 53803 (WebCore::IDBKey::rightCursorWhereFragment): 53804 * storage/IDBKey.h: 53805 * storage/IDBKeyRange.cpp: 53806 (WebCore::IDBKeyRange::leftWhereClauseComparisonOperator): 53807 (WebCore::IDBKeyRange::rightWhereClauseComparisonOperator): 53808 * storage/IDBKeyRange.h: 53809 * storage/IDBObjectStoreBackendImpl.cpp: 53810 (WebCore::IDBObjectStoreBackendImpl::openCursor): 53811 * storage/IDBRequest.cpp: 53812 (WebCore::IDBRequest::timerFired): 53813 53814 2010-09-15 Simon Fraser <simon.fraser (a] apple.com> 53815 53816 Fix chromium build. 53817 53818 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 53819 53820 2010-09-15 Simon Fraser <simon.fraser (a] apple.com> 53821 53822 Reviewed by Adam Roben. 53823 53824 https://bugs.webkit.org/show_bug.cgi?id=44715 53825 maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac 53826 53827 Remove the concept of geometry flipping from GraphicsLayer; geometry flipping will 53828 be taken care of in platform code without the need to complicate the GraphicsLayer API. 53829 53830 RenderLayerCompositor no longer sets the geometry orientation for the root 53831 platform layer; platform-specific code does this instead. 53832 53833 This fixes flipped layers in WebKit2, since WebKit2 was already flipping 53834 geometry, and then RenderLayerCompositor was doing an additional flip. 53835 53836 * platform/graphics/GraphicsLayer.cpp: 53837 (WebCore::GraphicsLayer::GraphicsLayer): 53838 * platform/graphics/GraphicsLayer.h: 53839 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 53840 * platform/graphics/chromium/GraphicsLayerChromium.h: 53841 * platform/graphics/mac/GraphicsLayerCA.h: 53842 * platform/graphics/mac/GraphicsLayerCA.mm: 53843 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): 53844 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): 53845 (WebCore::GraphicsLayerCA::defaultContentsOrientation): 53846 * platform/graphics/qt/GraphicsLayerQt.cpp: 53847 (WebCore::GraphicsLayerQtImpl::flushChanges): 53848 * platform/graphics/qt/GraphicsLayerQt.h: 53849 * platform/graphics/win/GraphicsLayerCACF.cpp: 53850 (WebCore::GraphicsLayerCACF::swapFromOrToTiledLayer): 53851 * platform/graphics/win/GraphicsLayerCACF.h: 53852 * platform/graphics/win/WKCACFLayerRenderer.cpp: 53853 (WebCore::WKCACFLayerRenderer::setRootChildLayer): 53854 * rendering/RenderLayerCompositor.cpp: 53855 (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): 53856 53857 2010-09-15 Julien Chaffraix <jchaffraix (a] codeaurora.org> 53858 53859 Unreviewed. 53860 53861 Reverting my changes as it is breaking several tests on Gtk and Qt. 53862 53863 * css/CSSParser.cpp: 53864 (WebCore::CSSParser::parseColor): 53865 * css/CSSParser.h: 53866 * html/canvas/CanvasRenderingContext2D.cpp: 53867 (WebCore::CanvasRenderingContext2D::setStrokeColor): 53868 (WebCore::CanvasRenderingContext2D::setFillColor): 53869 * html/canvas/CanvasStyle.cpp: 53870 (WebCore::CanvasStyle::createFromString): 53871 * html/canvas/CanvasStyle.h: 53872 53873 2010-09-15 Julien Chaffraix <jchaffraix (a] codeaurora.org> 53874 53875 Reviewed by Andreas Kling. 53876 53877 Parse system colors in the HTML5 canvas context. 53878 https://bugs.webkit.org/show_bug.cgi?id=39168 53879 53880 Test: fast/css/test-setting-canvas-color.html 53881 53882 Based on previous work by Jan Erik Hanssen <jhanssen (a] codeaurora.org> 53883 53884 * css/CSSParser.cpp: 53885 (WebCore::CSSParser::parseColor): Changed the function to better match our 53886 early return policy. Also we now return false when we don't parse the color. 53887 This is needed for createFromString to fallback to using parseSystemColor. 53888 53889 (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get 53890 the system colors. 53891 53892 * css/CSSParser.h: Added the new parseSystemColor method. 53893 53894 * html/canvas/CanvasRenderingContext2D.cpp: 53895 (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString. 53896 (WebCore::CanvasRenderingContext2D::setFillColor): Ditto. 53897 * html/canvas/CanvasStyle.cpp: 53898 (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor 53899 and fall back to parseSystemColor if it did not work. 53900 53901 * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString. 53902 53903 2010-09-14 Erik Arvidsson <arv (a] chromium.org> 53904 53905 Reviewed by Darin Adler. 53906 53907 getComputedStyle() returns different values for different zoom levels 53908 https://bugs.webkit.org/show_bug.cgi?id=32230 53909 53910 Test: fast/css/getComputedStyle/computed-style-with-zoom.html 53911 53912 * css/CSSComputedStyleDeclaration.cpp: 53913 (WebCore::zoomAdjustedPixelValue): 53914 (WebCore::zoomAdjustedNumberValue): 53915 (WebCore::valueForReflection): 53916 (WebCore::getPositionOffsetValue): 53917 (WebCore::getBorderRadiusCornerValue): 53918 (WebCore::computedTransform): 53919 (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword): 53920 (WebCore::CSSComputedStyleDeclaration::valueForShadow): 53921 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 53922 * css/CSSComputedStyleDeclaration.h: 53923 * css/SVGCSSComputedStyleDeclaration.cpp: 53924 (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): 53925 * rendering/RenderObject.h: 53926 (WebCore::adjustForAbsoluteZoom): 53927 * rendering/style/RenderStyle.h: 53928 (WebCore::adjustForAbsoluteZoom): 53929 53930 2010-09-14 Martin Robinson <mrobinson (a] igalia.com> 53931 53932 Reviewed by Xan Lopez. 53933 53934 [GTK] Fully separate Pango and FreeType font backends 53935 https://bugs.webkit.org/show_bug.cgi?id=27442 53936 53937 Split FontPlatformData.h into separate versions for Pango, FreeType and WinCairo. 53938 Include the correct file via #ifdef'd includes, like the Chromium port. Also split 53939 FontCacheCairo.cpp into Pango and FreeType versions, as they had almost no code in 53940 common. Finally, rename FontPlatformDataCairo to FontPlatformDataFreeType, as this 53941 compilation unit is used only by the FreeType backend. This change is important to 53942 prevent upcoming fixes to the FreeType backend from affecting other backends. 53943 53944 No new tests as functionality has not changed. 53945 53946 * CMakeListsEfl.txt: Update source lists. 53947 * GNUmakefile.am: Update source lists. 53948 * platform/graphics/cairo/FontCacheCairo.cpp: Removed. 53949 * platform/graphics/cairo/FontCacheFreeType.cpp: Added. 53950 (WebCore::FontCache::platformInit): 53951 (WebCore::FontCache::getFontDataForCharacters): 53952 (WebCore::FontCache::getSimilarFontPlatformData): 53953 (WebCore::FontCache::getLastResortFallbackFont): 53954 (WebCore::FontCache::getTraitsInFamily): 53955 (WebCore::isWellKnownFontName): 53956 (WebCore::FontCache::createFontPlatformData): 53957 * platform/graphics/cairo/FontPlatformData.h: 53958 * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Renamed from WebCore/platform/graphics/cairo/FontPlatformDataCairo.cpp. 53959 (WebCore::FontPlatformData::FontPlatformData): 53960 (WebCore::FontPlatformData::operator=): 53961 (WebCore::FontPlatformData::init): 53962 (WebCore::FontPlatformData::~FontPlatformData): 53963 (WebCore::FontPlatformData::isFixedPitch): 53964 (WebCore::FontPlatformData::operator==): 53965 (WebCore::FontPlatformData::description): 53966 * platform/graphics/cairo/FontPlatformDataFreeType.h: Added. 53967 (WebCore::FontPlatformData::FontPlatformData): 53968 (WebCore::FontPlatformData::size): 53969 (WebCore::FontPlatformData::setSize): 53970 (WebCore::FontPlatformData::syntheticBold): 53971 (WebCore::FontPlatformData::syntheticOblique): 53972 (WebCore::FontPlatformData::scaledFont): 53973 (WebCore::FontPlatformData::hash): 53974 (WebCore::FontPlatformData::isHashTableDeletedValue): 53975 (WebCore::FontPlatformData::hashTableDeletedFontValue): 53976 * platform/graphics/gtk/FontCachePango.cpp: Added. 53977 (WebCore::FontCache::platformInit): 53978 (WebCore::FontCache::getFontDataForCharacters): 53979 (WebCore::FontCache::getSimilarFontPlatformData): 53980 (WebCore::FontCache::getLastResortFallbackFont): 53981 (WebCore::FontCache::getTraitsInFamily): 53982 (WebCore::FontCache::createFontPlatformData): 53983 * platform/graphics/gtk/FontPlatformDataPango.h: Added. 53984 (WebCore::FontPlatformData::FontPlatformData): 53985 (WebCore::FontPlatformData::size): 53986 (WebCore::FontPlatformData::setSize): 53987 (WebCore::FontPlatformData::syntheticBold): 53988 (WebCore::FontPlatformData::syntheticOblique): 53989 (WebCore::FontPlatformData::scaledFont): 53990 (WebCore::FontPlatformData::hash): 53991 (WebCore::FontPlatformData::isHashTableDeletedValue): 53992 (WebCore::FontPlatformData::hashTableDeletedFontValue): 53993 * platform/graphics/win/FontPlatformDataCairoWin.h: Added. 53994 (WebCore::FontPlatformData::FontPlatformData): 53995 (WebCore::FontPlatformData::hfont): 53996 (WebCore::FontPlatformData::useGDI): 53997 (WebCore::FontPlatformData::fontFace): 53998 (WebCore::FontPlatformData::size): 53999 (WebCore::FontPlatformData::setSize): 54000 (WebCore::FontPlatformData::syntheticBold): 54001 (WebCore::FontPlatformData::syntheticOblique): 54002 (WebCore::FontPlatformData::scaledFont): 54003 (WebCore::FontPlatformData::hash): 54004 (WebCore::FontPlatformData::isHashTableDeletedValue): 54005 54006 2010-09-15 Chris Fleizach <cfleizach (a] apple.com> 54007 54008 Reviewed by Simon Fraser. 54009 54010 AX: when text is auto-truncated, accessibility bounds are wrong 54011 https://bugs.webkit.org/show_bug.cgi?id=45793 54012 54013 Allow accessibility to retrieve the absoluteQuads of a text node that 54014 clips to the ellipsis. 54015 54016 Test: accessibility/ellipsis-text.html 54017 54018 * accessibility/AccessibilityRenderObject.cpp: 54019 (WebCore::AccessibilityRenderObject::boundingBoxRect): 54020 * rendering/RenderText.cpp: 54021 (WebCore::ellipsisRectForBox): 54022 Make a common method to retrieve the ellipsis rect. 54023 (WebCore::RenderText::absoluteQuads): 54024 Default into the absoluteQuads method that allows for ellipsis clipping. 54025 (WebCore::RenderText::selectionRectForRepaint): 54026 Use the common method for retrieving the ellipsis. 54027 * rendering/RenderText.h: 54028 54029 2010-09-15 Ariya Hidayat <ariya (a] sencha.com> 54030 54031 [Qt] Improve the speed of blur shadow 54032 https://bugs.webkit.org/show_bug.cgi?id=44222 54033 54034 Rewrite the shadow blur function with loop unrolls and sliding step 54035 unification for both horizontal and vertical directions. 54036 This gives significant performance improvement on most cases. 54037 54038 * platform/graphics/qt/ContextShadow.cpp: 54039 (WebCore::shadowBlur): 54040 54041 2010-09-14 Pavel Feldman <pfeldman (a] chromium.org> 54042 54043 Reviewed by Yury Semikhatsky. 54044 54045 (Take 2). Web Inspector: Provide network-based load timing. 54046 Before this change, inspector used timers taken from 54047 within WebCore notifications (that are by definition 54048 synchronous and serialized). As a result, timing was 54049 affected by the routines running on the main thread 54050 (JavaScript and such). 54051 https://bugs.webkit.org/show_bug.cgi?id=45664 54052 54053 * inspector/InspectorController.cpp: 54054 (WebCore::InspectorController::willSendRequest): 54055 (WebCore::InspectorController::didFinishLoading): 54056 (WebCore::InspectorController::didFailLoading): 54057 * inspector/InspectorController.h: 54058 * inspector/InspectorResource.cpp: 54059 (WebCore::InspectorResource::endTiming): 54060 * inspector/InspectorResource.h: 54061 * loader/PingLoader.h: 54062 (WebCore::PingLoader::didFinishLoading): 54063 * loader/ResourceLoadNotifier.cpp: 54064 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): 54065 * loader/ResourceLoader.cpp: 54066 (WebCore::ResourceLoader::didFinishLoading): 54067 * loader/ResourceLoader.h: 54068 * loader/appcache/ApplicationCacheGroup.cpp: 54069 (WebCore::ApplicationCacheGroup::didFinishLoading): 54070 * loader/appcache/ApplicationCacheGroup.h: 54071 * loader/icon/IconFetcher.cpp: 54072 (WebCore::IconFetcher::didFinishLoading): 54073 * loader/icon/IconFetcher.h: 54074 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 54075 (StreamingClient::didFinishLoading): 54076 * platform/network/BlobResourceHandle.cpp: 54077 (WebCore::BlobResourceHandle::notifyFinish): 54078 * platform/network/ResourceHandleClient.h: 54079 (WebCore::ResourceHandleClient::didFinishLoading): 54080 * platform/network/ResourceLoadTiming.h: 54081 (WebCore::ResourceLoadTiming::deepCopy): 54082 (WebCore::ResourceLoadTiming::operator==): 54083 (WebCore::ResourceLoadTiming::ResourceLoadTiming): 54084 * platform/network/cf/ResourceHandleCFNet.cpp: 54085 (WebCore::didFinishLoading): 54086 * platform/network/curl/ResourceHandleCurl.cpp: 54087 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54088 * platform/network/curl/ResourceHandleManager.cpp: 54089 (WebCore::ResourceHandleManager::downloadTimerCallback): 54090 (WebCore::parseDataUrl): 54091 * platform/network/mac/ResourceHandleMac.mm: 54092 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): 54093 (WebCoreSynchronousLoaderClient::didFinishLoading): 54094 * platform/network/qt/QNetworkReplyHandler.cpp: 54095 (WebCore::QNetworkReplyHandler::finish): 54096 * platform/network/qt/ResourceHandleQt.cpp: 54097 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54098 * platform/network/soup/ResourceHandleSoup.cpp: 54099 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54100 (WebCore::WebCoreSynchronousLoader::didFail): 54101 * platform/network/win/ResourceHandleWin.cpp: 54102 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54103 (WebCore::ResourceHandle::onRequestComplete): 54104 (WebCore::ResourceHandle::fileLoadTimer): 54105 (WebCore::ResourceHandle::cancel): 54106 54107 2010-09-15 Sheriff Bot <webkit.review.bot (a] gmail.com> 54108 54109 Unreviewed, rolling out r67551. 54110 http://trac.webkit.org/changeset/67551 54111 https://bugs.webkit.org/show_bug.cgi?id=45816 54112 54113 "Plugin tests fail" (Requested by yurys on #webkit). 54114 54115 * inspector/InspectorController.cpp: 54116 (WebCore::InspectorController::willSendRequest): 54117 (WebCore::InspectorController::didFinishLoading): 54118 (WebCore::InspectorController::didFailLoading): 54119 (WebCore::InspectorController::didCloseWebSocket): 54120 * inspector/InspectorController.h: 54121 * inspector/InspectorResource.cpp: 54122 (WebCore::InspectorResource::endTiming): 54123 * inspector/InspectorResource.h: 54124 * loader/DocumentLoader.cpp: 54125 (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired): 54126 * loader/MainResourceLoader.cpp: 54127 (WebCore::MainResourceLoader::continueAfterContentPolicy): 54128 (WebCore::MainResourceLoader::didFinishLoading): 54129 * loader/MainResourceLoader.h: 54130 * loader/NetscapePlugInStreamLoader.cpp: 54131 (WebCore::NetscapePlugInStreamLoader::didFinishLoading): 54132 * loader/PingLoader.h: 54133 (WebCore::PingLoader::didFinishLoading): 54134 * loader/ResourceLoadNotifier.cpp: 54135 (WebCore::ResourceLoadNotifier::didFinishLoad): 54136 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): 54137 (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages): 54138 * loader/ResourceLoadNotifier.h: 54139 * loader/ResourceLoader.cpp: 54140 (WebCore::ResourceLoader::didFinishLoading): 54141 (WebCore::ResourceLoader::didFinishLoadingOnePart): 54142 * loader/ResourceLoader.h: 54143 * loader/SubresourceLoader.cpp: 54144 (WebCore::SubresourceLoader::didReceiveResponse): 54145 (WebCore::SubresourceLoader::didFinishLoading): 54146 * loader/SubresourceLoader.h: 54147 * loader/appcache/ApplicationCacheGroup.cpp: 54148 (WebCore::ApplicationCacheGroup::didFinishLoading): 54149 * loader/appcache/ApplicationCacheGroup.h: 54150 * loader/icon/IconFetcher.cpp: 54151 (WebCore::IconFetcher::didFinishLoading): 54152 * loader/icon/IconFetcher.h: 54153 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 54154 (StreamingClient::didFinishLoading): 54155 * platform/network/BlobResourceHandle.cpp: 54156 (WebCore::BlobResourceHandle::notifyFinish): 54157 * platform/network/ResourceHandleClient.h: 54158 (WebCore::ResourceHandleClient::didFinishLoading): 54159 * platform/network/cf/ResourceHandleCFNet.cpp: 54160 (WebCore::didFinishLoading): 54161 (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading): 54162 * platform/network/curl/ResourceHandleCurl.cpp: 54163 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54164 * platform/network/curl/ResourceHandleManager.cpp: 54165 (WebCore::ResourceHandleManager::downloadTimerCallback): 54166 (WebCore::parseDataUrl): 54167 * platform/network/mac/ResourceHandleMac.mm: 54168 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): 54169 (WebCoreSynchronousLoaderClient::didFinishLoading): 54170 * platform/network/qt/QNetworkReplyHandler.cpp: 54171 (WebCore::QNetworkReplyHandler::finish): 54172 * platform/network/qt/ResourceHandleQt.cpp: 54173 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54174 * platform/network/soup/ResourceHandleSoup.cpp: 54175 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54176 (WebCore::WebCoreSynchronousLoader::didFail): 54177 (WebCore::finishedCallback): 54178 (WebCore::parseDataUrl): 54179 * platform/network/win/ResourceHandleWin.cpp: 54180 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54181 (WebCore::ResourceHandle::onRequestComplete): 54182 (WebCore::ResourceHandle::fileLoadTimer): 54183 (WebCore::ResourceHandle::cancel): 54184 54185 2010-09-14 Pavel Feldman <pfeldman (a] chromium.org> 54186 54187 Reviewed by Yury Semikhatsky. 54188 54189 Web Inspector: Provide network-based load timing. 54190 Before this change, inspector used timers taken from 54191 within WebCore notifications (that are by definition 54192 synchronous and serialized). As a result, timing was 54193 affected by the routines running on the main thread 54194 (JavaScript and such). 54195 https://bugs.webkit.org/show_bug.cgi?id=45664 54196 54197 * inspector/InspectorController.cpp: 54198 (WebCore::InspectorController::willSendRequest): 54199 (WebCore::InspectorController::didFinishLoading): 54200 (WebCore::InspectorController::didFailLoading): 54201 * inspector/InspectorController.h: 54202 * inspector/InspectorResource.cpp: 54203 (WebCore::InspectorResource::endTiming): 54204 * inspector/InspectorResource.h: 54205 * loader/PingLoader.h: 54206 (WebCore::PingLoader::didFinishLoading): 54207 * loader/ResourceLoadNotifier.cpp: 54208 (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): 54209 * loader/ResourceLoader.cpp: 54210 (WebCore::ResourceLoader::didFinishLoading): 54211 * loader/ResourceLoader.h: 54212 * loader/appcache/ApplicationCacheGroup.cpp: 54213 (WebCore::ApplicationCacheGroup::didFinishLoading): 54214 * loader/appcache/ApplicationCacheGroup.h: 54215 * loader/icon/IconFetcher.cpp: 54216 (WebCore::IconFetcher::didFinishLoading): 54217 * loader/icon/IconFetcher.h: 54218 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 54219 (StreamingClient::didFinishLoading): 54220 * platform/network/BlobResourceHandle.cpp: 54221 (WebCore::BlobResourceHandle::notifyFinish): 54222 * platform/network/ResourceHandleClient.h: 54223 (WebCore::ResourceHandleClient::didFinishLoading): 54224 * platform/network/ResourceLoadTiming.h: 54225 (WebCore::ResourceLoadTiming::deepCopy): 54226 (WebCore::ResourceLoadTiming::operator==): 54227 (WebCore::ResourceLoadTiming::ResourceLoadTiming): 54228 * platform/network/cf/ResourceHandleCFNet.cpp: 54229 (WebCore::didFinishLoading): 54230 * platform/network/curl/ResourceHandleCurl.cpp: 54231 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54232 * platform/network/curl/ResourceHandleManager.cpp: 54233 (WebCore::ResourceHandleManager::downloadTimerCallback): 54234 (WebCore::parseDataUrl): 54235 * platform/network/mac/ResourceHandleMac.mm: 54236 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): 54237 (WebCoreSynchronousLoaderClient::didFinishLoading): 54238 * platform/network/qt/QNetworkReplyHandler.cpp: 54239 (WebCore::QNetworkReplyHandler::finish): 54240 * platform/network/qt/ResourceHandleQt.cpp: 54241 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54242 * platform/network/soup/ResourceHandleSoup.cpp: 54243 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54244 (WebCore::WebCoreSynchronousLoader::didFail): 54245 * platform/network/win/ResourceHandleWin.cpp: 54246 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 54247 (WebCore::ResourceHandle::onRequestComplete): 54248 (WebCore::ResourceHandle::fileLoadTimer): 54249 (WebCore::ResourceHandle::cancel): 54250 54251 2010-09-14 Ilya Tikhonovsky <loislo (a] chromium.org> 54252 54253 Reviewed by Yury Semikhatsky. 54254 54255 WebInspector: small refactoring for monitorXHR backend property. 54256 54257 Our Inspector API is quite big and can be simplified a bit. 54258 As example for single backend property like monitoringXHR we 54259 have 4 functions in the API. Two functions for frontend 54260 enableMonitoringXHR/disableMonitoringXHR and 54261 two functions for backend monitoringXHRWasEnabled and 54262 monitoringXHRWasDisabled. These functions can be replaced by 54263 one setMonitoringXHR with one 'in' and one 'out' argument. 54264 The initial state of the flag can be gathered from backend 54265 with help of getSettings call where additional section was 54266 added for backend state information. 54267 54268 https://bugs.webkit.org/show_bug.cgi?id=45759 54269 54270 * inspector/Inspector.idl: 54271 * inspector/InspectorController.cpp: 54272 * inspector/InspectorController.h: 54273 * inspector/front-end/ConsoleView.js: 54274 * inspector/front-end/Settings.js: 54275 * inspector/front-end/inspector.js: 54276 54277 2010-09-15 Pavel Feldman <pfeldman (a] chromium.org> 54278 54279 Reviewed by Yury Semikhatsky. 54280 54281 Web Inspector: Multiline console does not work on Windows / Linux. 54282 https://bugs.webkit.org/show_bug.cgi?id=45807 54283 54284 * inspector/front-end/ConsoleView.js: 54285 54286 2010-09-15 Renata Hodovan <reni (a] inf.u-szeged.hu> 54287 54288 Reviewed by Dirk Schulze. 54289 54290 SVGFETurbulenceElement doesn't support dynamic invalidation, when attributes change. 54291 A typo (noStich instead of nostitch) is also fixed in this patch. 54292 https://bugs.webkit.org/show_bug.cgi?id=45809 54293 54294 Tests: svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html 54295 svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html 54296 svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html 54297 svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html 54298 svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html 54299 svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html 54300 svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html 54301 svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html 54302 svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html 54303 svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html 54304 54305 * svg/SVGFETurbulenceElement.cpp: 54306 (WebCore::SVGFETurbulenceElement::parseMappedAttribute): 54307 (WebCore::SVGFETurbulenceElement::svgAttributeChanged): 54308 * svg/SVGFETurbulenceElement.h: 54309 54310 2010-09-15 Patrick Gansterer <paroga (a] paroga.com> 54311 54312 Reviewed by Kenneth Rohde Christiansen. 54313 54314 [WINCE] Avoid memcpy in TextCodecWinCE::encode 54315 https://bugs.webkit.org/show_bug.cgi?id=45468 54316 54317 * platform/text/wince/TextCodecWinCE.cpp: 54318 (WebCore::TextCodecWinCE::encode): 54319 54320 2010-09-14 Kinuko Yasuda <kinuko (a] chromium.org> 54321 54322 Reviewed by Dumitru Daniliuc. 54323 54324 Add custom binding code for DirectoryEntry to allow JSON parameters for Flags 54325 https://bugs.webkit.org/show_bug.cgi?id=45724 54326 54327 No new tests; tests will be added later. 54328 54329 * CMakeLists.txt: 54330 * GNUmakefile.am: 54331 * WebCore.gypi: 54332 * WebCore.pro: 54333 * WebCore.vcproj/WebCore.vcproj: 54334 * WebCore.xcodeproj/project.pbxproj: 54335 * bindings/js/JSDirectoryEntryCustom.cpp: Added. 54336 (WebCore::JSDirectoryEntry::getFile): 54337 (WebCore::JSDirectoryEntry::getDirectory): 54338 * bindings/v8/custom/V8DirectoryEntryCustom.cpp: Added. 54339 (WebCore::V8DirectoryEntry::getDirectoryCallback): 54340 (WebCore::V8DirectoryEntry::getFileCallback): 54341 * fileapi/DirectoryEntry.h: 54342 * fileapi/DirectoryEntry.idl: 54343 54344 2010-09-14 Jia Pu <jpu (a] apple.com> 54345 54346 Reviewed by Dan Bernstein. 54347 54348 Only intercept ESC key press when autocorrection UI is visible. 54349 https://bugs.webkit.org/show_bug.cgi?id=45071 54350 54351 Only intercept ESC key when autocorrection panel is shown. Otherwise pressing 54352 ESC will cancel current loading like usual. 54353 54354 * editing/Editor.cpp: 54355 (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection 54356 panel is shown. 54357 54358 * editing/Editor.h: Added declaration of isShowingCorrectionPanel(). 54359 54360 * editing/EditorCommand.cpp: 54361 (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation() 54362 when autocorrection panel is shown. 54363 (WebCore::createCommandMap): Replaced isSupported function pointer for 54364 executeCancelOperation() command with supportedDismissCorrectionPanel(). 54365 54366 * loader/EmptyClients.h: 54367 (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of 54368 new member method declared in base class. 54369 54370 * page/EditorClient.h: Declared new member method isShowingCorrectionPanel(). 54371 54372 2010-09-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 54373 54374 Unreviewed, rolling out r67503. 54375 http://trac.webkit.org/changeset/67503 54376 https://bugs.webkit.org/show_bug.cgi?id=45802 54377 54378 This patch broke GTK builds (Requested by jianli_ on #webkit). 54379 54380 * fileapi/ThreadableBlobRegistry.cpp: 54381 (WebCore::BlobRegistryContext::BlobRegistryContext): 54382 * loader/ResourceLoader.cpp: 54383 (WebCore::ResourceLoader::resourceData): 54384 (WebCore::ResourceLoader::addData): 54385 * platform/network/BlobResourceHandle.cpp: 54386 * platform/network/BlobResourceHandle.h: 54387 * platform/network/ResourceHandle.h: 54388 * platform/network/mac/ResourceHandleMac.mm: 54389 (WebCore::ResourceHandle::bufferedData): 54390 54391 2010-09-14 Luiz Agostini <luiz.agostini (a] openbossa.org> 54392 54393 Reviewed by Kenneth Rohde Christiansen. 54394 54395 [Qt] Zoom factor for checkboxes and radios. 54396 https://bugs.webkit.org/show_bug.cgi?id=45776 54397 54398 RenderThemeQt does not consider RenderStyle::effectiveZoom when calculating sizes of 54399 checkboxes and radios. 54400 54401 Even with this change the used QStyle must support different sizes for radios and checkboxes. 54402 QWindowStyle and QMacStyle, for example, do not. 54403 54404 * platform/qt/RenderThemeQt.cpp: 54405 (WebCore::RenderThemeQt::computeSizeBasedOnStyle): 54406 54407 2010-09-14 Chris Rogers <crogers (a] google.com> 54408 54409 Reviewed by Kenneth Russell. 54410 54411 audio engine: add AudioFileReader files (Mac implementation) 54412 https://bugs.webkit.org/show_bug.cgi?id=36475 54413 54414 No new tests since audio API is not yet implemented. 54415 54416 * platform/audio/AudioFileReader.h: Added. 54417 * platform/audio/mac/AudioFileReaderMac.cpp: Added. 54418 (WebCore::createAudioBufferList): 54419 (WebCore::destroyAudioBufferList): 54420 (WebCore::AudioFileReader::AudioFileReader): 54421 (WebCore::AudioFileReader::~AudioFileReader): 54422 (WebCore::AudioFileReader::readProc): 54423 (WebCore::AudioFileReader::getSizeProc): 54424 (WebCore::AudioFileReader::createBus): 54425 (WebCore::createBusFromAudioFile): 54426 (WebCore::createBusFromInMemoryAudioFile): 54427 * platform/audio/mac/AudioFileReaderMac.h: Added. 54428 (WebCore::AudioFileReader::data): 54429 (WebCore::AudioFileReader::dataSize): 54430 54431 2010-09-14 Simon Fraser <simon.fraser (a] apple.com> 54432 54433 Reviewed by Oliver Hunt. 54434 54435 Drawing an image outside the bounds of a canvas still causes repaints 54436 https://bugs.webkit.org/show_bug.cgi?id=45792 54437 54438 Some canvas examples, such as http://www.phoboslab.org/biolab/, draw 54439 images outide the bounds of the canvas. If the canvas already had a 54440 non-empty m_dirtyRect, such draws would cause us to do a repaint of 54441 m_dirtyRect again (which goes through the platform-specific invalidation 54442 machinery, which can be slow). 54443 54444 Optimize this by avoiding extra invalidation when the dirty rect 54445 does not intersect the canvas bounds. 54446 54447 Not testable because this avoids additional repaints of m_dirtyRect, but 54448 m_dirtyRect has to be non-empty for this to benefit. 54449 54450 * html/HTMLCanvasElement.cpp: 54451 (WebCore::HTMLCanvasElement::didDraw): 54452 54453 2010-09-14 Yury Semikhatsky <yurys (a] chromium.org> 54454 54455 Reviewed by Pavel Feldman. 54456 54457 Web Inspector: Links from "Profiles" don't lead to "Scripts" 54458 https://bugs.webkit.org/show_bug.cgi?id=45756 54459 54460 * inspector/front-end/ProfileDataGridTree.js: 54461 (WebInspector.ProfileDataGridNode.prototype.createCell): use standard routine to create resource link 54462 * inspector/front-end/inspector.js: code cleanup: removed no-op method 54463 (WebInspector.addMainEventListeners): 54464 54465 2010-09-14 Patrick Gansterer <paroga (a] paroga.com> 54466 54467 Reviewed by Adam Roben. 54468 54469 [WINCE] Use codePage instead of TextEncoding 54470 https://bugs.webkit.org/show_bug.cgi?id=45466 54471 54472 Use codePage as member variable to avoid repeated lookup. 54473 54474 * platform/text/wince/TextCodecWinCE.cpp: 54475 (WebCore::newTextCodecWinCE): 54476 (WebCore::TextCodecWinCE::TextCodecWinCE): 54477 (WebCore::decode): 54478 (WebCore::TextCodecWinCE::decode): 54479 (WebCore::TextCodecWinCE::encode): 54480 * platform/text/wince/TextCodecWinCE.h: 54481 54482 2010-09-14 Adam Barth <abarth (a] webkit.org> 54483 54484 Attempted Chromium build fix. The compiler can't tell that 54485 ASSERT_NOT_REACHED is not reached and so it demands an initialization 54486 of this variable. 54487 54488 * html/HTMLFontElement.cpp: 54489 (WebCore::HTMLFontElement::parseMappedAttribute): 54490 54491 2010-09-14 Andreas Kling <andreas.kling (a] nokia.com> 54492 54493 Reviewed by Ariya Hidayat. 54494 54495 [Qt] Wheeling over windowed plugins sometimes cause them to disappear 54496 54497 * plugins/qt/PluginContainerQt.cpp: 54498 (PluginClientWrapper::x11Event): Pass on captured mouse wheel events 54499 to the effective native window rather than the grandparent widget. 54500 We were calling QWidget::winId() which caused a new X11 window to be 54501 created for the grandparent widget and generally mess things up. 54502 54503 2010-09-14 Kevin Ollivier <kevino (a] theolliviers.com> 54504 54505 [wx] Build fix after move of selectedText() method. 54506 54507 * platform/wx/PasteboardWx.cpp: 54508 (WebCore::Pasteboard::writeSelection): 54509 54510 2010-09-14 Adam Barth <abarth (a] webkit.org> 54511 54512 Reviewed by Darin Adler. 54513 54514 Handle <font size=0> as <font size=1> like any other browser 54515 https://bugs.webkit.org/show_bug.cgi?id=39148 54516 54517 Update font size parser to match HTML5 spec. The main difference here 54518 is the handling of 0, which now maps to 1 instead of 3. 54519 54520 * html/HTMLFontElement.cpp: 54521 (WebCore::parseFontSize): 54522 (WebCore::HTMLFontElement::cssValueFromFontSizeNumber): 54523 54524 2010-09-14 Adam Barth <abarth (a] webkit.org> 54525 54526 Reviewed by Darin Adler. 54527 54528 document.lastModified gives no output if the response doesn't have a Last-Modified header 54529 https://bugs.webkit.org/show_bug.cgi?id=8475 54530 54531 Implement document.lastModified as per HTML5. 54532 54533 Tests: http/tests/misc/last-modified-parsing.html 54534 http/tests/misc/no-last-modified.html 54535 54536 * dom/Document.cpp: 54537 (WebCore::Document::lastModified): 54538 54539 2010-09-14 Adam Barth <abarth (a] webkit.org> 54540 54541 Reviewed by Eric Seidel. 54542 54543 `document.compatMode` is `undefined` when using `application/xhtml+xml` 54544 https://bugs.webkit.org/show_bug.cgi?id=44422 54545 54546 Moving the compatMode IDL attribute from HTMLDocument.idl to 54547 Document.idl fixes this bug and improve compliance with HTML5. 54548 54549 Test: fast/parser/compatMode-in-xhtml.xhtml 54550 54551 * dom/Document.cpp: 54552 (WebCore::Document::compatMode): 54553 * dom/Document.h: 54554 * dom/Document.idl: 54555 * html/HTMLDocument.cpp: 54556 * html/HTMLDocument.h: 54557 54558 2010-09-14 Adam Barth <abarth (a] webkit.org> 54559 54560 Reviewed by Nate Chapin. 54561 54562 V8 security checks don't account for shadowing named frames 54563 https://bugs.webkit.org/show_bug.cgi?id=45700 54564 54565 Test: http/tests/security/xss-DENIED-frame-name.html 54566 54567 * bindings/v8/custom/V8DOMWindowCustom.cpp: 54568 (WebCore::V8DOMWindow::namedSecurityCheck): 54569 - If the property name exists on the object, it will shadow the 54570 named property lookup on the window object. That means we need 54571 to block access if there's shadowing going on. 54572 (WebCore::V8DOMWindow::indexedSecurityCheck): 54573 - I made the corresponding change to this function too, but I don't 54574 think this one can actually be triggered because JavaScript 54575 variable names need to start with a non-digit. 54576 54577 2010-09-14 Adam Barth <abarth (a] webkit.org> 54578 54579 Reviewed by Eric Seidel. 54580 54581 incorrect tabindex parsing 54582 https://bugs.webkit.org/show_bug.cgi?id=21076 54583 54584 Updated our integer parsing for tabindex to use the algorithm from the 54585 HTML5 spec. 54586 54587 Test: fast/parser/tabindex-parsing-2.html 54588 54589 * html/HTMLElement.cpp: 54590 (WebCore::HTMLElement::parseMappedAttribute): 54591 * html/parser/HTMLParserIdioms.cpp: 54592 (WebCore::parseHTMLInteger): 54593 * html/parser/HTMLParserIdioms.h: 54594 54595 2010-09-14 Brent Fulgham <bfulgham (a] webkit.org> 54596 54597 Build correction, no review. 54598 54599 * WebCore.vcproj/WebCore.vcproj: Exclude OwnPtrCairo.cpp from 54600 non-Cairo based builds. 54601 54602 2010-09-14 Jian Li <jianli (a] chromium.org> 54603 54604 Reviewed by David Levin. 54605 54606 fast/files/apply-blob-url-to-img.html timeout on Leopard 54607 https://bugs.webkit.org/show_bug.cgi?id=45576 54608 54609 The failure on Leopard is caused by the static method 54610 ResourceHandle::supportsBufferedData that returns true to indicate that 54611 the buffered data support is enabled for blob resource. However, 54612 BlobResourceHandle does not support this and we need to override this. 54613 54614 The fix is to change supportsBufferedData method from static to virtual 54615 so that we can override the default behavior in BlobResourceHandle. 54616 54617 * fileapi/ThreadableBlobRegistry.cpp: Copy BlobData to make it cross-thread. 54618 (WebCore::BlobRegistryContext::BlobRegistryContext): 54619 * loader/ResourceLoader.cpp: 54620 (WebCore::ResourceLoader::resourceData): 54621 (WebCore::ResourceLoader::addData): 54622 * platform/network/BlobResourceHandle.cpp: 54623 (WebCore::BlobResourceHandle::supportsBufferedData): Override the default 54624 behavior. 54625 * platform/network/BlobResourceHandle.h: 54626 * platform/network/ResourceHandle.h: Made supportsBufferedData virtual. 54627 * platform/network/mac/ResourceHandleMac.mm: 54628 (WebCore::ResourceHandle::bufferedData): 54629 54630 2010-09-14 Brent Fulgham <bfulgham (a] webkit.org> 54631 54632 Build correction, no review. 54633 54634 * WebCore.vcproj/WebCore.vcproj: Add missing OwnPtrCairo.cpp 54635 implementation file. 54636 * platform/graphics/cairo/OwnPtrCairo.cpp: Add missing include 54637 for <cairo.h> 54638 54639 2010-09-14 Chris Guillory <chris.guillory (a] google.com> 54640 54641 Reviewed by Chris Fleizach. 54642 54643 Send all accessibility notifications to Chromium. 54644 https://bugs.webkit.org/show_bug.cgi?id=45156 54645 54646 Use postAccessibilityNotification to pass accessibility notifications 54647 to chromium. 54648 54649 Tests: platform/chromium/accessibility/post-notification-ActiveDescendantChanged.html 54650 platform/chromium/accessibility/post-notification-CheckedStateChanged.html 54651 platform/chromium/accessibility/post-notification-ChildrenChanged.html 54652 platform/chromium/accessibility/post-notification-FocusedUIElementChanged.html 54653 platform/chromium/accessibility/post-notification-LayoutComplete.html 54654 platform/chromium/accessibility/post-notification-LiveRegionChanged.html 54655 platform/chromium/accessibility/post-notification-LoadComplete.html 54656 platform/chromium/accessibility/post-notification-MenuListValueChanged.html 54657 platform/chromium/accessibility/post-notification-RowCollapsed.html 54658 platform/chromium/accessibility/post-notification-RowCountChanged.html 54659 platform/chromium/accessibility/post-notification-RowExpanded.html 54660 platform/chromium/accessibility/post-notification-ScrolledToAnchor.html 54661 platform/chromium/accessibility/post-notification-SelectedChildrenChanged.html 54662 platform/chromium/accessibility/post-notification-SelectedTextChanged.html 54663 platform/chromium/accessibility/post-notification-ValueChanged.html 54664 54665 * accessibility/chromium/AXObjectCacheChromium.cpp: 54666 (WebCore::AXObjectCache::postPlatformNotification): 54667 * page/chromium/ChromeClientChromium.h: 54668 54669 2010-09-14 Darin Adler <darin (a] apple.com> 54670 54671 Reviewed by Geoffrey Garen. 54672 54673 Hang processing href attribute containing a million slashes 54674 https://bugs.webkit.org/show_bug.cgi?id=45767 54675 54676 Test: fast/css/visited-link-hang.html 54677 54678 * platform/LinkHash.cpp: 54679 (WebCore::findSlashDotDotSlash): Added a start position argument and 54680 changed types to use size_t consistently instead of a mix. 54681 (WebCore::findSlashSlash): Ditto. 54682 (WebCore::findSlashDotSlash): Ditto. 54683 (WebCore::squeezeOutNullCharacters): Added. 54684 (WebCore::cleanSlashDotDotSlashes): Added. Factored out part 54685 of cleanPath (see below). 54686 (WebCore::mergeDoubleSlashes): Ditto. 54687 (WebCore::cleanSlashDotSlashes): Ditto. 54688 (WebCore::cleanPath): Changed algorithm to not remove as we go to 54689 avoid N^2 behavior; instead replace with null characters and then 54690 do a squeeze operation after the fact. Also moved the body of the 54691 function out of line since we normally don't have to do any cleaning. 54692 This whole thing should go at some point -- it's not the right 54693 algorithm -- but this should eliminate the performance problems 54694 without changing behavior. 54695 54696 2010-09-14 Nico Weber <thakis (a] chromium.org> 54697 54698 Reviewed by Kenneth Russell. 54699 54700 [chromium]: On Mac, let image layer data row order match skia. 54701 https://bugs.webkit.org/show_bug.cgi?id=45400 54702 54703 Make CoreGraphics texture row order match skia's row order, remove all 54704 code that worked around this difference. This also fixes a problem where 54705 image layers would be drawn upside down. 54706 54707 Covered by existing layout tests, but we don't run these with 54708 compositing yet. 54709 54710 * platform/graphics/chromium/ContentLayerChromium.cpp: 54711 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 54712 (WebCore::ContentLayerChromium::updateContents): 54713 (WebCore::ContentLayerChromium::updateTextureRect): 54714 * platform/graphics/chromium/LayerRendererChromium.cpp: 54715 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 54716 (WebCore::LayerRendererChromium::drawLayers): 54717 54718 2010-09-14 Ryosuke Niwa <rniwa (a] webkit.org> 54719 54720 Reviewed by Tony Chang. 54721 54722 applyInlineStyleToNodeRange does not extend run properly 54723 https://bugs.webkit.org/show_bug.cgi?id=45616 54724 54725 The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children. 54726 Fixed the bug by only skipping a node that contains the past end node, contains non-editable region, 54727 or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove 54728 styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes 54729 all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded. 54730 54731 Test: editing/style/inline-style-extend-run.html 54732 54733 * editing/ApplyStyleCommand.cpp: 54734 (WebCore::containsNonEditableRegion): Added. 54735 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above. 54736 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above. 54737 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways. 54738 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded. 54739 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded. 54740 * editing/ApplyStyleCommand.h: 54741 54742 2010-09-14 Andreas Kling <andreas.kling (a] nokia.com> 54743 54744 Reviewed by Kenneth Rohde Christiansen. 54745 54746 [Qt] V8 port: Get inspector up and running 54747 https://bugs.webkit.org/show_bug.cgi?id=45771 54748 54749 * inspector/front-end/WebKit.qrc: Add DebuggerScript.js 54750 54751 2010-09-14 Oliver Hunt <oliver (a] apple.com> 54752 54753 PPC Build fix. 54754 54755 * bindings/js/SerializedScriptValue.cpp: 54756 (WebCore::CloneDeserializer::readFile): 54757 (WebCore::CloneDeserializer::readTerminal): 54758 54759 2010-09-14 Kwang Yul Seo <skyul (a] company100.net> 54760 54761 Reviewed by Andreas Kling. 54762 54763 [chromium] Remove unused ICU headers 54764 https://bugs.webkit.org/show_bug.cgi?id=45698 54765 54766 Remove unused headers. 54767 54768 * platform/graphics/chromium/FontCacheLinux.cpp: 54769 54770 2010-09-14 Andreas Kling <andreas.kling (a] nokia.com> 54771 54772 Reviewed by Antonio Gomes. 54773 54774 [Qt] Numpad Enter key returns keyCode 0 instead of 13 54775 https://bugs.webkit.org/show_bug.cgi?id=45014 54776 54777 Original patch by Jarred Nicholls <jarred.nicholls (a] gmail.com> 54778 54779 There is a missing case statement in the PlatformKeyboardEventQt.cpp 54780 file to handle the Enter button on the number pad. Because it is not 54781 handled, the keyCode returned in a JavaScript event is 0 rather than 13. 54782 54783 Test: manual-tests/qt/numpad-enter-key.html 54784 54785 * manual-tests/qt/numpad-enter-key.html: Added. 54786 * platform/qt/PlatformKeyboardEventQt.cpp: 54787 (WebCore::windowsKeyCodeForKeyEvent): 54788 54789 2010-09-14 Evan Martin <evan (a] chromium.org> 54790 54791 Reviewed by Darin Fisher. 54792 54793 [chromium] building without debug syms broke after recent refactoring 54794 https://bugs.webkit.org/show_bug.cgi?id=45720 54795 54796 Now that we build WebCore as multiple libraries, we need to adjust the 54797 flags to turn off debug symbols for all of these libraries. 54798 54799 No new tests; should only affect an uncommon build flag. 54800 54801 * WebCore.gyp/WebCore.gyp: 54802 54803 2010-09-14 Tony Chang <tony (a] chromium.org> 54804 54805 Unreviewed, fix chromium compile. 54806 54807 * platform/graphics/chromium/ImageLayerChromium.h: 54808 54809 2010-09-14 Nico Weber <thakis (a] chromium.org> 54810 54811 Reviewed by Darin Fisher. 54812 54813 [chromium]: crash less in compositor mode on mac 54814 https://bugs.webkit.org/show_bug.cgi?id=45714 54815 54816 The contents image can go away when the dom is updated. Since the 54817 layer tree is updated asynchronously, it needs to ref the native image, 54818 else it will hold on to a stale object. 54819 54820 This still needs to be done for skia, too. 54821 54822 * platform/graphics/chromium/ImageLayerChromium.h: 54823 * platform/graphics/chromium/ImageLayerChromium.cpp: 54824 54825 2010-09-14 Andrey Kosyakov <caseq (a] chromium.org> 54826 54827 Reviewed by Yury Semikhatsky. 54828 54829 Web Inspector: [Resources panel] [HAR] Need a way to save timing data. 54830 Added support for resource timings to HAREntry. 54831 https://bugs.webkit.org/show_bug.cgi?id=45663 54832 54833 * inspector/front-end/HAREntry.js: 54834 (WebInspector.HAREntry.prototype._buildTimings): 54835 (WebInspector.HAREntry.prototype._toMilliseconds): 54836 (WebInspector.HAREntry.prototype._interval): 54837 54838 2010-09-14 Kwang Yul Seo <skyul (a] company100.net> 54839 54840 Reviewed by Kent Tamura. 54841 54842 [BREWMP] Always set LeftButton in PlatformMouseEvent 54843 https://bugs.webkit.org/show_bug.cgi?id=45705 54844 54845 AEE_POINTER_GET_MOUSE_MODIFIERS always returns 0, so it is impossible to know 54846 which button is pressed or released. The current code erroneously sets NoButton. 54847 Set LeftButton unconditionally because Brew MP usually runs on touch device. 54848 54849 * platform/brew/PlatformMouseEventBrew.cpp: 54850 (WebCore::PlatformMouseEvent::PlatformMouseEvent): 54851 54852 2010-09-14 Yury Semikhatsky <yurys (a] chromium.org> 54853 54854 Reviewed by Andreas Kling. 54855 54856 Move DebuggerScript.js from WebKit/chromium/src/js to WebCore/bindings/v8 54857 https://bugs.webkit.org/show_bug.cgi?id=45739 54858 54859 * bindings/v8/DebuggerScript.js: Added. 54860 54861 2010-09-10 Alexander Pavlov <apavlov (a] chromium.org> 54862 54863 Reviewed by Pavel Feldman. 54864 54865 Web Inspector: Implement on-demand reporting of empty CSS rules matched for a node by WebCore 54866 https://bugs.webkit.org/show_bug.cgi?id=45530 54867 54868 * css/CSSStyleSelector.cpp: 54869 (WebCore::CSSStyleSelector::matchRules): 54870 (WebCore::CSSStyleSelector::matchRulesForList): 54871 (WebCore::CSSStyleSelector::matchUARules): 54872 (WebCore::CSSStyleSelector::styleForElement): 54873 (WebCore::CSSStyleSelector::pseudoStyleForElement): 54874 (WebCore::CSSStyleSelector::styleRulesForElement): 54875 (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): 54876 * css/CSSStyleSelector.h: 54877 * inspector/InspectorDOMAgent.cpp: 54878 (WebCore::InspectorDOMAgent::getStyles): 54879 (WebCore::InspectorDOMAgent::buildArrayForPseudoElements): 54880 54881 2010-09-14 Hyung Song <beergun (a] company100.net> 54882 54883 Reviewed by Darin Adler. 54884 54885 [BREWMP] Set m_size in SharedBuffer::createWithContentsOfFile(); 54886 https://bugs.webkit.org/show_bug.cgi?id=45701 54887 54888 SharedBuffer::createWithContentsOfFile() reads file content and saves to 54889 result.m_buffer directly, leaving result.m_size unchanged. 54890 54891 * platform/brew/SharedBufferBrew.cpp: 54892 (WebCore::SharedBuffer::createWithContentsOfFile): 54893 54894 2010-09-14 Adam Barth <abarth (a] webkit.org> 54895 54896 Reviewed by Darin Adler. 54897 54898 Move adjustLexerState to the HTMLTokenizer 54899 https://bugs.webkit.org/show_bug.cgi?id=45649 54900 54901 This function used let us share code between the tree builder and the 54902 two other users of the HTMLTokenizer. However, now that the tree 54903 builder is all grown up, it can't use this code anymore. The other 54904 users would much rather this code lived on HTMLTokenizer and understood 54905 <script>. This patch attempts to make them happy. 54906 54907 * html/parser/HTMLPreloadScanner.cpp: 54908 (WebCore::HTMLPreloadScanner::processToken): 54909 * html/parser/HTMLTokenizer.cpp: 54910 (WebCore::HTMLTokenizer::updateStateFor): 54911 * html/parser/HTMLTokenizer.h: 54912 * html/parser/HTMLTreeBuilder.cpp: 54913 (WebCore::HTMLTreeBuilder::scriptEnabled): 54914 * html/parser/HTMLTreeBuilder.h: 54915 * html/parser/HTMLViewSourceParser.cpp: 54916 (WebCore::HTMLViewSourceParser::updateTokenizerState): 54917 54918 2010-09-14 Pierre-Antoine LaFayette <plafayet (a] codeaurora.org> 54919 54920 Reviewed by Darin Adler. 54921 54922 REGRESSION (r52839): Incomplete repaint of IMG with text-align:center 54923 https://bugs.webkit.org/show_bug.cgi?id=40142 54924 54925 http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case. This just generalizes to all inline content. 54926 54927 Patch by: Dave Hyatt 54928 54929 Tests: fast/repaint/block-layout-inline-children-float-positioned.html 54930 fast/repaint/block-layout-inline-children-replaced.html 54931 54932 * rendering/RenderBlockLineLayout.cpp: 54933 (WebCore::RenderBlock::layoutInlineChildren): 54934 54935 2010-09-14 Balazs Kelemen <kb (a] inf.u-szeged.hu> 54936 54937 Reviewed by Andreas Kling. 54938 54939 [Qt] Cookie operations should use NetworkingContext 54940 https://bugs.webkit.org/show_bug.cgi?id=45745 54941 No new functionality so no new tests. 54942 54943 * platform/qt/CookieJarQt.cpp: 54944 (WebCore::cookieJar): Use the NetworkingContext for obtaining the QNetworkAccessManager 54945 instead of directly accessing the FrameLoaderClient. 54946 54947 2010-09-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 54948 54949 Unreviewed, rolling out r67449. 54950 http://trac.webkit.org/changeset/67449 54951 https://bugs.webkit.org/show_bug.cgi?id=45746 54952 54953 This change makes tree red. (Requested by pfeldman on 54954 #webkit). 54955 54956 * editing/ApplyStyleCommand.cpp: 54957 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): 54958 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): 54959 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): 54960 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): 54961 * editing/ApplyStyleCommand.h: 54962 54963 2010-09-14 Eric Seidel <eric (a] webkit.org> 54964 54965 Unreviewed, reverting changes r67451 and r67451. 54966 Broke lots of builders. 54967 54968 Only intercept ESC key press when autocorrection UI is visible. 54969 https://bugs.webkit.org/show_bug.cgi?id=45071 54970 54971 * editing/Editor.cpp: 54972 * editing/Editor.h: 54973 * editing/EditorCommand.cpp: 54974 (WebCore::createCommandMap): 54975 * loader/EmptyClients.h: 54976 * page/EditorClient.h: 54977 54978 2010-09-14 Kinuko Yasuda <kinuko (a] chromium.org> 54979 54980 Unreviewed; an attempt to fix Chromium Windows build. 54981 54982 * fileapi/FileEntry.cpp: 54983 54984 2010-09-13 Andrey Kosyakov <caseq (a] chromium.org> 54985 54986 Reviewed by Pavel Feldman. 54987 54988 Web Inspector: provide support for opening external navigation for links within certain elements 54989 Use default handling for clicks on links that have target="_blank". 54990 Add option for external navigation to URL audit formatter. 54991 https://bugs.webkit.org/show_bug.cgi?id=45671 54992 54993 * inspector/front-end/AuditFormatters.js: 54994 (WebInspector.AuditFormatters.url): 54995 * inspector/front-end/inspector.js: 54996 54997 2010-09-14 Dan Bernstein <mitz (a] apple.com> 54998 54999 Build fix. 55000 55001 * editing/EditorCommand.cpp: 55002 55003 2010-09-14 Jia Pu <jpu (a] apple.com> 55004 55005 Reviewed by Dan Bernstein. 55006 55007 Only intercept ESC key press when autocorrection UI is visible. 55008 https://bugs.webkit.org/show_bug.cgi?id=45071 55009 55010 Only intercept ESC key when autocorrection panel is shown. Otherwise pressing 55011 ESC will cancel current loading like usual. 55012 55013 * editing/Editor.cpp: 55014 (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection 55015 panel is shown. 55016 55017 * editing/Editor.h: Added declaration of isShowingCorrectionPanel(). 55018 55019 * editing/EditorCommand.cpp: 55020 (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation() 55021 when autocorrection panel is shown. 55022 (WebCore::createCommandMap): Replaced isSupported function pointer for 55023 executeCancelOperation() command with supportedDismissCorrectionPanel(). 55024 55025 * loader/EmptyClients.h: 55026 (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of 55027 new member method declared in base class. 55028 55029 * page/EditorClient.h: Declared new member method isShowingCorrectionPanel(). 55030 55031 2010-09-14 Kwang Yul Seo <skyul (a] company100.net> 55032 55033 Reviewed by Kent Tamura. 55034 55035 [BREWMP] Remove TextBreakIteratorInternalICUBrew.cpp 55036 https://bugs.webkit.org/show_bug.cgi?id=45691 55037 55038 Brew MP no longer depends on ICU for internationalization. 55039 Remove TextBreakIteratorInternalICUBrew.cpp. 55040 55041 * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Removed. 55042 55043 2010-09-14 Ryosuke Niwa <rniwa (a] webkit.org> 55044 55045 Reviewed by Tony Chang. 55046 55047 applyInlineStyleToNodeRange does not extend run properly 55048 https://bugs.webkit.org/show_bug.cgi?id=45616 55049 55050 The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children. 55051 Fixed the bug by only skipping a node that contains the past end node, contains non-editable region, 55052 or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove 55053 styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes 55054 all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded. 55055 55056 Test: editing/style/inline-style-extend-run.html 55057 55058 * editing/ApplyStyleCommand.cpp: 55059 (WebCore::containsNonEditableRegion): Added. 55060 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above. 55061 (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above. 55062 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways. 55063 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded. 55064 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded. 55065 * editing/ApplyStyleCommand.h: 55066 55067 2010-09-13 Yuta Kitamura <yutak (a] chromium.org> 55068 55069 Reviewed by Kent Tamura. 55070 55071 Add one #if guard block to fix Qt builds. 55072 55073 Web Inspector: WebSocket in Resources tab 55074 https://bugs.webkit.org/show_bug.cgi?id=40768 55075 55076 * inspector/InspectorResource.cpp: 55077 55078 2010-09-13 Yuta Kitamura <yutak (a] chromium.org> 55079 55080 Reviewed by Pavel Feldman. 55081 55082 Add WebSocket resource type to Web Inspector. 55083 55084 When a new WebSocket connection is established, a line for that connection 55085 will appear in Web Inspector's Resources tab. If the resource name is 55086 clicked, the details of handshake request and response will be shown. 55087 55088 Web Inspector: WebSocket in Resources tab 55089 https://bugs.webkit.org/show_bug.cgi?id=40768 55090 55091 * inspector/InspectorController.cpp: 55092 (WebCore::InspectorController::addResource): WebSocket resource does not 55093 have an associated loader, thus frame might be null. Need to check it. 55094 (WebCore::InspectorController::removeResource): Ditto. 55095 (WebCore::InspectorController::didCreateWebSocket): 55096 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 55097 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 55098 (WebCore::InspectorController::didCloseWebSocket): 55099 * inspector/InspectorController.h: 55100 * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame, 55101 because WebSocket does not have a loader and we need to allow null for 55102 these variables. 55103 (WebCore::createReadableStringFromBinary): 55104 (WebCore::InspectorResource::InspectorResource): 55105 (WebCore::InspectorResource::create): Factory function of 55106 regular (non-WebSocket) resources. 55107 (WebCore::InspectorResource::createWebSocket): Factory function of 55108 WebSocket resources. 55109 (WebCore::InspectorResource::updateWebSocketRequest): 55110 (WebCore::InspectorResource::updateWebSocketResponse): 55111 (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes 55112 available when Frame::setDocument() is called. We cannot obtain documentURL 55113 during the constructor or updateRequest() function, because m_frame->document() 55114 is not available yet at that point and documentURL will contain a wrong URL. 55115 As far as I know, updateScriptObject() is the only place where we can safely 55116 obtain documentURL. 55117 (WebCore::InspectorResource::cachedResource): 55118 (WebCore::InspectorResource::type): 55119 (WebCore::InspectorResource::resourceData): 55120 * inspector/InspectorResource.h: 55121 (WebCore::InspectorResource::): 55122 (WebCore::InspectorResource::markWebSocket): 55123 * inspector/front-end/Resource.js: 55124 (WebInspector.Resource.Type.toString): 55125 (WebInspector.Resource.prototype.set type): 55126 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 55127 * inspector/front-end/ResourceView.js: 55128 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 55129 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 55130 (WebInspector.ResourceView.prototype._refreshHeaders): 55131 * inspector/front-end/inspector.css: 55132 (.resources-category-websockets, .resources-category-other): 55133 (.resources-category-websockets .resources-graph-bar): 55134 (.resources-category-websockets.resource-cached .resources-graph-bar): 55135 * inspector/front-end/inspector.js: 55136 (WebInspector.loaded): 55137 (WebInspector.updateResource): 55138 * websockets/WebSocketChannel.cpp: 55139 (WebCore::WebSocketChannel::WebSocketChannel): 55140 (WebCore::WebSocketChannel::disconnect): 55141 (WebCore::WebSocketChannel::didOpen): 55142 (WebCore::WebSocketChannel::didClose): 55143 (WebCore::WebSocketChannel::processBuffer): 55144 (WebCore::WebSocketChannel::identifier): 55145 * websockets/WebSocketChannel.h: 55146 55147 2010-09-13 W. James MacLean <wjmaclean (a] google.com> 55148 55149 Reviewed by Darin Fisher. 55150 55151 [chromium] Thumbnails not generated for GPU Rendered Pages 55152 https://bugs.webkit.org/show_bug.cgi?id=44127 55153 55154 Replicates existing functionality, use existing tests. 55155 Adds pixel-readback for GPU composited pages to allow for thumbnailing, 55156 printing and other services to work with GPU rendered pages. 55157 55158 * platform/graphics/chromium/LayerRendererChromium.cpp: 55159 (WebCore::LayerRendererChromium::getFramebufferPixels): 55160 * platform/graphics/chromium/LayerRendererChromium.h: 55161 (WebCore::LayerRendererChromium::rootLayerTextureSize): 55162 55163 2010-09-13 Kinuko Yasuda <kinuko (a] chromium.org> 55164 55165 Unreviewed, build fix for Gtk. 55166 55167 * bindings/js/JSEntryCustom.cpp: 55168 55169 2010-09-13 Kinuko Yasuda <kinuko (a] chromium.org> 55170 55171 Reviewed by Adam Barth. 55172 55173 Make FileEntry and DirectoryEntry methods accessible via Entry instance 55174 https://bugs.webkit.org/show_bug.cgi?id=45553 55175 55176 FileEntry- and DirectoryEntry- specific methods must be available on Entry object based on its internal type. 55177 55178 Added custom toJS/toV8 implementation to Entry interface. 55179 55180 No new tests; test will be added later when we have complete implementation for the API. 55181 55182 * CMakeLists.txt: 55183 * GNUmakefile.am: 55184 * WebCore.gypi: 55185 * WebCore.pro: 55186 * WebCore.vcproj/WebCore.vcproj: 55187 * WebCore.xcodeproj/project.pbxproj: 55188 * bindings/js/JSEntryCustom.cpp: Added. 55189 (WebCore::toJS): 55190 * bindings/v8/custom/V8EntryCustom.cpp: Added. 55191 (WebCore::toV8): 55192 * fileapi/DirectoryEntry.h: Nits fix. 55193 * fileapi/DirectoryEntry.idl: Added ConvertUndefinedOrNullToString to path parameter. 55194 * fileapi/Entry.idl: Added CustomToJS attribute. 55195 * fileapi/FileEntry.cpp: 55196 (WebCore::FileEntry::createWriter): 55197 (WebCore::FileEntry::file): 55198 * fileapi/FileEntry.h: 55199 * fileapi/FileEntry.idl: 55200 55201 2010-09-13 Ryosuke Niwa <rniwa (a] webkit.org> 55202 55203 Reviewed by Darin Adler. 55204 55205 REGRESSION: In Gmail, a crash occurs at getDoubleValue() when applying a text color to a new line 55206 https://bugs.webkit.org/show_bug.cgi?id=45632 55207 55208 Test: editing/execCommand/query-font-size-with-typing-style.html 55209 55210 The crash was caused by selectionStartCSSPropertyValue's deleting nodeToRemove before 55211 retrieving the font-size property. Fixed the bug by moving the removal code to the end of the function. 55212 55213 * editing/Editor.cpp: 55214 (WebCore::Editor::selectionStartCSSPropertyValue): 55215 55216 2010-09-13 Kwang Yul Seo <skyul (a] company100.net> 55217 55218 Reviewed by Darin Adler. 55219 55220 [BREWMP] Remove WebCore namespace in SSLKeyGeneratorBrew.cpp 55221 https://bugs.webkit.org/show_bug.cgi?id=45690 55222 55223 WebCore namespace is not required because getSupportedKeySizes and signedPublicKeyAndChallengeString are already 55224 in namespace WebCore block. 55225 55226 * platform/brew/SSLKeyGeneratorBrew.cpp: 55227 (WebCore::getSupportedKeySizes): 55228 (WebCore::signedPublicKeyAndChallengeString): 55229 55230 2010-09-13 Mario Sanchez Prada <msanchez (a] igalia.com> 55231 55232 Reviewed by Martin Robinson. 55233 55234 [GTK] Code simplification needed in Atk Wrapper 55235 https://bugs.webkit.org/show_bug.cgi?id=45687 55236 55237 Use TextIterator::rangeLength() to calculate endOffset 55238 55239 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 55240 (getSelectionOffsetsForObject): Don't manually iterate over a 55241 artificial new range but just call TextIterator::rangeLength on 55242 the range created between the start and end positions. 55243 55244 2010-09-13 Sam Weinig <sam (a] webkit.org> 55245 55246 Reviewed by Alice Liu. 55247 55248 Clean up xcode project. 55249 55250 * WebCore.xcodeproj/project.pbxproj: 55251 55252 2010-09-13 Eric Carlson <eric.carlson (a] apple.com> 55253 55254 Reviewed by Geoff Garen. 55255 55256 JavaScript dialog should not deactivate media element 55257 https://bugs.webkit.org/show_bug.cgi?id=45688 55258 55259 Test: http/tests/media/reload-after-dialog.html 55260 55261 * bindings/generic/ActiveDOMCallback.cpp: 55262 (WebCore::ActiveDOMObjectCallbackImpl::suspend): Add ReasonForSuspension parameter. 55263 55264 * bindings/js/ScriptDebugServer.cpp: 55265 (WebCore::ScriptDebugServer::setJavaScriptPaused): Pass new parameter to suspendActiveDOMObjects. 55266 55267 * dom/ActiveDOMObject.cpp: 55268 (WebCore::ActiveDOMObject::suspend): Add ReasonForSuspension parameter. 55269 * dom/ActiveDOMObject.h: 55270 55271 * dom/ScriptExecutionContext.cpp: 55272 (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Ditto. 55273 * dom/ScriptExecutionContext.h: 55274 55275 * history/CachedFrame.cpp: 55276 (WebCore::CachedFrame::CachedFrame): Pass new parameter to suspendActiveDOMObjects. 55277 55278 * html/HTMLMarqueeElement.cpp: 55279 (WebCore::HTMLMarqueeElement::suspend): Add ReasonForSuspension parameter. 55280 * html/HTMLMarqueeElement.h: 55281 55282 * html/HTMLMediaElement.cpp: 55283 (WebCore::HTMLMediaElement::stop): Deal with element being suspended. 55284 (WebCore::HTMLMediaElement::suspend): Do nothing unless reason for suspension is document 55285 becoming inactive. 55286 * html/HTMLMediaElement.h: 55287 55288 * page/PageGroupLoadDeferrer.cpp: 55289 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Pass WillShowDialog to suspendActiveDOMObjects. 55290 55291 * page/SuspendableTimer.cpp: 55292 (WebCore::SuspendableTimer::suspend): Add ReasonForSuspension parameter. 55293 * page/SuspendableTimer.h: 55294 55295 * websockets/WebSocket.cpp: 55296 (WebCore::WebSocket::suspend): Ditto. 55297 * websockets/WebSocket.h: 55298 55299 * xml/XMLHttpRequest.cpp: 55300 (WebCore::XMLHttpRequest::suspend): Ditto. 55301 * xml/XMLHttpRequest.h: 55302 55303 2010-09-13 Sam Weinig <sam (a] webkit.org> 55304 55305 Fix the mac build. 55306 55307 * page/mac/EventHandlerMac.mm: 55308 (WebCore::EventHandler::passMousePressEventToSubframe): 55309 55310 2010-09-13 Sam Weinig <sam (a] webkit.org> 55311 55312 Reviewed by Anders Carlsson. 55313 55314 Can't scroll on Bugzilla patch review pages on Mac with WebKit2 55315 https://bugs.webkit.org/show_bug.cgi?id=43555 55316 55317 <rdar://problem/8421386> WebKit2: gmail.com is completely unresponsive to clicks 55318 <rdar://problem/8276298> Can't scroll on Bugzilla patch review pages on Mac with WebKit2 (43555) 55319 55320 * page/mac/EventHandlerMac.mm: 55321 (WebCore::EventHandler::passWheelEventToWidget): 55322 (WebCore::frameHasPlatformWidget): 55323 (WebCore::EventHandler::passMousePressEventToSubframe): 55324 (WebCore::EventHandler::passMouseMoveEventToSubframe): 55325 (WebCore::EventHandler::passMouseReleaseEventToSubframe): 55326 Add WebKit2 mode for these functions based on the presence of a platform widget for a 55327 FrameView. 55328 55329 2010-09-13 Patrick Gansterer <paroga (a] paroga.com> 55330 55331 Reviewed by Kenneth Rohde Christiansen. 55332 55333 [WINCE] Buildfix for ViewportArguments.cpp 55334 https://bugs.webkit.org/show_bug.cgi?id=45678 55335 55336 Use fabs() instead of abs(). 55337 This patch also fixes the return value, when 55338 the value is between -1 and 1. 55339 55340 * dom/ViewportArguments.cpp: 55341 (WebCore::findUserScalableValue): 55342 55343 2010-09-13 Darin Adler <darin (a] apple.com> 55344 55345 Reviewed by Adam Barth. 55346 55347 Preparation for eliminating deprecatedParseURL 55348 https://bugs.webkit.org/show_bug.cgi?id=45695 55349 55350 Added new HTMLParserIdioms source file, with a name inspired by the HTML 55351 specification, which has a section defining things like "space character" 55352 that talks about common parser idioms. These are idioms for the main HTML 55353 parser and for parsers for various microlanguages as well. 55354 55355 * Android.mk: 55356 * CMakeLists.txt: 55357 * GNUmakefile.am: 55358 * WebCore.gypi: 55359 * WebCore.pro: 55360 * WebCore.vcproj/WebCore.vcproj: 55361 * WebCore.xcodeproj/project.pbxproj: 55362 Added HTMLParserIdioms. 55363 55364 * css/CSSHelper.h: Fixed indentation and comments here. Point to the new 55365 stripLeadingAndTrailingHTMLSpaces function. 55366 55367 * html/parser/HTMLParserIdioms.cpp: Added. 55368 * html/parser/HTMLParserIdioms.h: Added. 55369 55370 * html/parser/HTMLTreeBuilder.cpp: 55371 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace): 55372 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace): 55373 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace): 55374 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace): 55375 Updated for name changes. 55376 55377 * html/parser/HTMLTreeBuilder.h: Moved functions to HTMLParserIdioms.h. 55378 55379 * html/HTMLInputElement.cpp: 55380 * html/HTMLMeterElement.cpp: 55381 * html/HTMLProgressElement.cpp: 55382 * html/StepRange.cpp: 55383 * rendering/RenderSlider.cpp: 55384 Updated includes. 55385 55386 * svg/SVGImageLoader.cpp: 55387 (WebCore::SVGImageLoader::sourceURI): Fixed incorrect use of deprecatedParseURL. 55388 This is for use on the attribute value before building the URL, not on the URL 55389 after building it. I did not add a test case; this is an obscure corner and soon 55390 we will be moving to stripLeadingAndTrailingHTMLSpaces anyway. 55391 * wml/WMLImageLoader.cpp: 55392 (WebCore::WMLImageLoader::sourceURI): Ditto. 55393 55394 2010-09-13 Chris Fleizach <cfleizach (a] apple.com> 55395 55396 Reviewed by Darin Adler. 55397 55398 AX: REGRESSION: WebKit does not report label of web popup buttons 55399 https://bugs.webkit.org/show_bug.cgi?id=45715 55400 55401 Test: platform/mac/accessibility/popup-button-title.html 55402 55403 * WebCore.xcodeproj/project.pbxproj: 55404 * accessibility/AccessibilityRenderObject.cpp: 55405 (WebCore::AccessibilityRenderObject::title): 55406 55407 2010-09-13 Kinuko Yasuda <kinuko (a] chromium.org> 55408 55409 Reviewed by Dumitru Daniliuc. 55410 55411 Expose Flags constructor if FileSystem API is Enabled 55412 https://bugs.webkit.org/show_bug.cgi?id=45165 55413 55414 This change also includes: 55415 - Changed Flags' attribute names from UPPERCASE to camelCase to reflect the recent spec change. 55416 http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-flags-interface 55417 - Enhanced EnabledAtRuntime attribute to take parameter that is used to generate a RuntimeEnabledFeatures method name. 55418 55419 No new tests; tests will be added when we fully expose the interface. 55420 55421 * bindings/v8/V8DOMWindowCustom.cpp: Added custom getter for FlagsConstructor. 55422 * fileapi/Flags.idl: Changed attribute names to camelCase. 55423 * page/DOMWindow.idl: Exposed Flags constructor. 55424 55425 * bindings/scripts/CodeGenerator.pm: Updated the WK_lcfirst hack to work around getter method for 'create' (create() should be avoided as it's widely used to instantiate an object). 55426 * bindings/scripts/CodeGeneratorV8.pm: Added EnabledAtRuntime=FeatureName support. 55427 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 55428 (WebDOMTestObj::create): 55429 (WebDOMTestObj::setCreate): 55430 * bindings/scripts/test/CPP/WebDOMTestObj.h: 55431 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 55432 (webkit_dom_test_obj_set_property): 55433 (webkit_dom_test_obj_get_property): 55434 (webkit_dom_test_obj_class_init): 55435 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 55436 * bindings/scripts/test/JS/JSTestObj.cpp: 55437 * bindings/scripts/test/ObjC/DOMTestObj.h: 55438 * bindings/scripts/test/ObjC/DOMTestObj.mm: 55439 * bindings/scripts/test/TestObj.idl: 55440 * bindings/scripts/test/V8/V8TestObj.cpp: 55441 (WebCore::TestObjInternal::createAttrGetter): 55442 (WebCore::TestObjInternal::createAttrSetter): 55443 (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrGetter): 55444 (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrSetter): 55445 (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrGetter): 55446 (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrSetter): 55447 (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback): 55448 (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback): 55449 (WebCore::ConfigureV8TestObjTemplate): 55450 55451 2010-09-13 Adam Barth <abarth (a] webkit.org> 55452 55453 Reviewed by Darin Adler. 55454 55455 "Implement" EOF processing in AfterBodyMode and AfterAfterBodyMode 55456 https://bugs.webkit.org/show_bug.cgi?id=45647 55457 55458 Implements the notImplemented by doing nothing, which is the proper 55459 behavior according to the spec. 55460 55461 * html/parser/HTMLTreeBuilder.cpp: 55462 (WebCore::HTMLTreeBuilder::processEndOfFile): 55463 55464 2010-09-13 Adam Barth <abarth (a] webkit.org> 55465 55466 Reviewed by Darin Adler. 55467 55468 More trivial EOF handling in tree builder 55469 https://bugs.webkit.org/show_bug.cgi?id=45648 55470 55471 The spec says to treat these modes like the InBodyMode, which is what 55472 this patch does. Doing so is indistinguishable from our current 55473 behavior, which is why we didn't catch this based on tests. 55474 55475 * html/parser/HTMLTreeBuilder.cpp: 55476 (WebCore::HTMLTreeBuilder::processEndOfFile): 55477 55478 2010-09-13 James Robinson <jamesr (a] chromium.org> 55479 55480 Reviewed by Kenneth Russell. 55481 55482 SharedGraphicsContext3D's texture cache holds on to images after free 55483 https://bugs.webkit.org/show_bug.cgi?id=45706 55484 55485 Each SharedGraphicsContext3D keeps a cache of uploaded textures keyed by NativeImagePtrs. 55486 Whenever the backing native image is deleted it needs to let the SharedGraphicsContext3D know 55487 so that the cache entry and associated texture can also be removed. 55488 55489 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 55490 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D): 55491 (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D): 55492 (WebCore::SharedGraphicsContext3D::removeTextureFor): 55493 (WebCore::SharedGraphicsContext3D::removeTexturesFor): 55494 (WebCore::SharedGraphicsContext3D::allContexts): 55495 * platform/graphics/gpu/SharedGraphicsContext3D.h: 55496 * platform/graphics/skia/NativeImageSkia.cpp: 55497 (WebCore::NativeImageSkia::~NativeImageSkia): 55498 * platform/graphics/skia/NativeImageSkia.h: 55499 55500 2010-09-13 Chris Fleizach <cfleizach (a] apple.com> 55501 55502 Reviewed by David Kilzer. 55503 55504 AX: accessibilityIsIgnored is returning nil when return value expects a BOOL 55505 https://bugs.webkit.org/show_bug.cgi?id=45548 55506 55507 Test: platform/mac/accessibility/element-is-ignored.html 55508 55509 * accessibility/mac/AccessibilityObjectWrapper.mm: 55510 (-[AccessibilityObjectWrapper accessibilityIsIgnored]): 55511 55512 2010-09-13 Chris Fleizach <cfleizach (a] apple.com> 55513 55514 Reviewed by Darin Adler. 55515 55516 CrashTracer: 874 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 663 55517 https://bugs.webkit.org/show_bug.cgi?id=45697 55518 55519 Inside of AccessibilityTableRow, parentTable() should not use getOrCreate() on the parent table, because the render table may 55520 be in a bad state and accessing internal variables can lead to a crash. 55521 55522 Test: platform/mac/accessibility/updating-attribute-in-table-row-crash.html 55523 55524 * accessibility/AccessibilityTableRow.cpp: 55525 (WebCore::AccessibilityTableRow::parentTable): 55526 55527 2010-09-13 Adam Barth <abarth (a] webkit.org> 55528 55529 Reviewed by Eric Seidel. 55530 55531 Implement EOF handling in TextMode 55532 https://bugs.webkit.org/show_bug.cgi?id=45644 55533 55534 This patch is actually covered by a bunch of tests. We were just 55535 magically passing the tests before because of some nutty code in 55536 Document.cpp. 55537 55538 * dom/Document.cpp: 55539 (WebCore::Document::implicitClose): 55540 - This code was masking the notImplemented in the tree builder. 55541 I also removed the use of the setting because it wasn't working 55542 properly anyway. I'll implement a working version shortly. 55543 * html/parser/HTMLTreeBuilder.cpp: 55544 (WebCore::HTMLTreeBuilder::processEndOfFile): 55545 - Implement per the spec. 55546 55547 2010-09-13 Enrica Casucci <enrica (a] apple.com> 55548 55549 Reviewed by Sam Weining. 55550 55551 Paste should be implemented in WebCore like Copy and Cut for Mac also. 55552 https://bugs.webkit.org/show_bug.cgi?id=45494 55553 <rdar://problem/7660537> 55554 55555 On the Mac platform, the implementation of the paste operation is all done 55556 at the WebKit level. In order to support it on WebKit2 it is necessary to 55557 refactor the code and move this functionality at the level of WebCore like 55558 we already have on Windows. 55559 The original code relies on some in AppKit functions that call back into 55560 WebKit causing problems in WebKit2. All this functionality has been moved 55561 at the level of the editor client where it can be dealt with appropriately. 55562 55563 * editing/Editor.cpp: 55564 (WebCore::Editor::shouldInsertFragment): 55565 * editing/mac/EditorMac.mm: extended to support Mail specific scenarios. 55566 (WebCore::Editor::pasteWithPasteboard): 55567 * loader/EmptyClients.h: 55568 (WebCore::EmptyFrameLoaderClient::canShowMIMETypeAsHTML): Added. 55569 (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Added. 55570 (WebCore::EmptyEditorClient::setInsertionPasteboard): Added to support Mail. 55571 * loader/FrameLoaderClient.h: 55572 * page/EditorClient.h: 55573 * platform/Pasteboard.h: 55574 * platform/mac/PasteboardMac.mm: 55575 (WebCore::Pasteboard::writeSelection): replaced call to Appkit with one that 55576 doesn't calll back into WebKit. 55577 (WebCore::Pasteboard::documentFragmentWithImageResource): Re-implemented at the 55578 WebCore level. 55579 (WebCore::Pasteboard::documentFragmentWithRtf): Re-implemented at the 55580 WebCore level. 55581 (WebCore::uniqueURLWithRelativePart): Added. 55582 (WebCore::Pasteboard::documentFragment): Extended to include all the functionality 55583 provided in documentFragmentFromPasteboard in WebHTMLView.mm. 55584 55585 2010-09-13 Alejandro G. Castro <alex (a] igalia.com> 55586 55587 Reviewed by Kenneth Rohde Christiansen. 55588 55589 [Gtk] Reduce the size of the shadow buffer in the paths using the clip region 55590 https://bugs.webkit.org/show_bug.cgi?id=44699 55591 55592 Intersect the clip bounding rect with the path that we are going 55593 to use to create the shadow in order to reduce the region we have 55594 to blur. 55595 55596 * platform/graphics/cairo/GraphicsContextCairo.cpp: 55597 (WebCore::drawPathShadow): 55598 55599 210-09-13 Darin Fisher <darin (a] chromium.org> 55600 55601 Reviewed by David Levin. 55602 55603 Add option to conditionally compile smooth scrolling support. 55604 https://bugs.webkit.org/show_bug.cgi?id=45689 55605 55606 The OS(WINDOWS) conditional becomes unnecessary since 55607 ENABLE(SMOOTH_SCROLLING) should only be specified on 55608 platforms that have a smooth scrolling implementation. 55609 55610 * platform/ScrollAnimator.cpp: 55611 * platform/ScrollAnimatorWin.cpp: 55612 * platform/ScrollAnimatorWin.h: 55613 55614 2010-09-13 Ryosuke Niwa <rniwa (a] webkit.org> 55615 55616 Reviewed by Kent Tamura. 55617 55618 Move functions of StyledMarkupAccumulator below that of MarkupAccumulator 55619 https://bugs.webkit.org/show_bug.cgi?id=45624 55620 55621 Moved the declaration of StyledMarkupAccumulator and the definitions of its member functions 55622 to below the definitions of MarkupAccumulator's member functions. 55623 55624 No new tests are added since this is a cleanup. 55625 55626 * editing/markup.cpp: 55627 (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator): 55628 (WebCore::StyledMarkupAccumulator::appendElement): 55629 (WebCore::StyledMarkupAccumulator::shouldAnnotate): 55630 (WebCore::StyledMarkupAccumulator::wrapWithNode): 55631 (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): 55632 (WebCore::StyledMarkupAccumulator::takeResults): 55633 (WebCore::StyledMarkupAccumulator::appendText): 55634 (WebCore::StyledMarkupAccumulator::renderedText): 55635 (WebCore::StyledMarkupAccumulator::stringValueForRange): 55636 (WebCore::styleFromMatchedRulesForElement): 55637 (WebCore::StyledMarkupAccumulator::removeExteriorStyles): 55638 (WebCore::needInterchangeNewlineAfter): 55639 (WebCore::styleFromMatchedRulesAndInlineDecl): 55640 (WebCore::removeEnclosingMailBlockquoteStyle): 55641 (WebCore::removeDefaultStyles): 55642 55643 2010-09-13 Alejandro G. Castro <alex (a] igalia.com> 55644 55645 Reviewed by Martin Robinson. 55646 55647 [GTK] Leak in the GraphicsContextCairo drawPathShadow 55648 https://bugs.webkit.org/show_bug.cgi?id=44959 55649 55650 Fix a leak of the cairo_path. 55651 55652 * platform/graphics/cairo/GraphicsContextCairo.cpp: 55653 (WebCore::drawPathShadow): 55654 * platform/graphics/cairo/OwnPtrCairo.cpp: 55655 (WTF::cairo_path_t): 55656 * platform/graphics/cairo/OwnPtrCairo.h: 55657 55658 2010-09-13 Adam Barth <abarth (a] webkit.org> 55659 55660 Reviewed by Darin Adler. 55661 55662 Fix </sarcasm> 55663 https://bugs.webkit.org/show_bug.cgi?id=45645 55664 55665 Umm... Yeah. 55666 55667 * html/parser/HTMLTreeBuilder.cpp: 55668 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 55669 55670 2010-09-13 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 55671 55672 Reviewed by Darin Adler. 55673 55674 [WML] Fix build breaks when WML is enabled 55675 https://bugs.webkit.org/show_bug.cgi?id=45628 55676 55677 There are build breaks by Bug 22382 when WML is enabled. The handleLinkClick() has an event parameter. 55678 So, we need to set an event when wml invoke the handleLinkClick(). And, doTextFieldCommandFromEvent() 55679 was moved to editor. So, we need to mofidy the invocation in WMLInputElement.cpp 55680 55681 * wml/WMLAElement.cpp: 55682 (WebCore::WMLAElement::defaultEventHandler): 55683 * wml/WMLInputElement.cpp: 55684 (WebCore::WMLInputElement::defaultEventHandler): 55685 55686 2010-09-13 Martin Robinson <mrobinson (a] igalia.com> 55687 55688 Reviewed by Xan Lopez. 55689 55690 [GTK] When a feature is disabled by default, the source necessary to build it are not included in the distribution 55691 https://bugs.webkit.org/show_bug.cgi?id=45230 55692 55693 No new tests as this is just a build change. 55694 55695 * GNUmakefile.am: Move as many sources as possible to the SOURCES primary. 55696 Others should be moved over time as we solve issues with them. 55697 55698 2010-09-13 Chris Fleizach <cfleizach (a] apple.com> 55699 55700 Reviewed by Darin Adler. 55701 55702 REGRESSION (r64816-r64889): Crash in WebCore::AccessibilityRenderObject 55703 https://bugs.webkit.org/show_bug.cgi?id=43807 55704 55705 Ensure that visiblePositionForPoint can handle non RenderBoxModelObject types. 55706 55707 Test: platform/mac/accessibility/visible-position-crash-for-text-node.html 55708 55709 * accessibility/AccessibilityRenderObject.cpp: 55710 (WebCore::AccessibilityRenderObject::visiblePositionForPoint): 55711 55712 2010-09-13 Martin Robinson <mrobinson (a] igalia.com> 55713 55714 Reviewed by Andreas Kling. 55715 55716 [Qt] DOM listeners get wrong keycodes for some keys 55717 https://bugs.webkit.org/show_bug.cgi?id=43365 55718 55719 Produce the proper keycodes for the print screen key as well as the 55720 keypad insert and delete keys. 55721 55722 * platform/qt/PlatformKeyboardEventQt.cpp: 55723 (WebCore::windowsKeyCodeForKeyEvent): Fix keycode translation for the mentioned keys. 55724 55725 2010-09-13 Jonathan Dixon <joth (a] chromium.org> 55726 55727 Reviewed by Steve Block. 55728 55729 [chromium] Port test shell geolocation fixes to DRT 55730 https://bugs.webkit.org/show_bug.cgi?id=45313 55731 55732 Also re-apply rolled out patch http://trac.webkit.org/changeset/66886 :- 55733 Add missing virtual destructor to the abstract base class. 55734 55735 * platform/chromium/GeolocationServiceChromium.cpp: 55736 (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge): 55737 * platform/chromium/GeolocationServiceChromium.h: 55738 55739 2010-09-13 Yury Semikhatsky <yurys (a] chromium.org> 55740 55741 Reviewed by Pavel Feldman. 55742 55743 Web Inspector: upstream testExpandScope debugger test 55744 https://bugs.webkit.org/show_bug.cgi?id=45260 55745 55746 Test: inspector/debugger-expand-scope.html 55747 55748 * inspector/front-end/InjectedScript.js: return "Arguments" as class name for arguments variable in v8. 55749 (injectedScriptConstructor.): 55750 55751 2010-09-13 Mario Sanchez Prada <msanchez (a] igalia.com> 55752 55753 Reviewed by Martin Robinson. 55754 55755 [GTK] ATs should be able to select/unselect text 55756 https://bugs.webkit.org/show_bug.cgi?id=25673 55757 55758 Implement AtkText's setSelection and removeSelection functions 55759 55760 * accessibility/AccessibilityObject.cpp: 55761 (WebCore::AccessibilityObject::visiblePositionRangeForRange): 55762 Moved some GTK specific code from a ifdef-endif region to 55763 AccessibilityObjectAtk.cpp 55764 * accessibility/AccessibilityObject.h: 55765 * accessibility/gtk/AccessibilityObjectAtk.cpp: 55766 (WebCore::AccessibilityObject::getLengthForTextRange): New. 55767 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 55768 (webkit_accessible_text_remove_selection): Implemented following 55769 the lead of GAIL's implementation of the AtkText interface. 55770 (webkit_accessible_text_set_selection): Implemented following 55771 the lead of GAIL's implementation of the AtkText interface. 55772 (webkit_accessible_text_set_caret_offset): Changed to directly use 55773 visiblePositionRangeForRange now that there's no longer a problem 55774 with that, as it was in the past (only worked for text controls). 55775 55776 2010-08-27 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 55777 55778 Reviewed by Antti Koivisto. 55779 55780 Update support for the viewport meta tag algorithm, to 55781 match the following draft spec: 55782 55783 http://people.opera.com/rune/TR/ED-css-viewport-20100806/ 55784 55785 Add common handling of viewport meta tag based on new Opera spec 55786 https://bugs.webkit.org/show_bug.cgi?id=44201 55787 55788 Tests: fast/viewport/viewport-1.html 55789 fast/viewport/viewport-10.html 55790 fast/viewport/viewport-100.html 55791 fast/viewport/viewport-101.html 55792 fast/viewport/viewport-102.html 55793 fast/viewport/viewport-103.html 55794 fast/viewport/viewport-104.html 55795 fast/viewport/viewport-105.html 55796 fast/viewport/viewport-106.html 55797 fast/viewport/viewport-107.html 55798 fast/viewport/viewport-108.html 55799 fast/viewport/viewport-109.html 55800 fast/viewport/viewport-11.html 55801 fast/viewport/viewport-110.html 55802 fast/viewport/viewport-111.html 55803 fast/viewport/viewport-112.html 55804 fast/viewport/viewport-113.html 55805 fast/viewport/viewport-114.html 55806 fast/viewport/viewport-115.html 55807 fast/viewport/viewport-116.html 55808 fast/viewport/viewport-117.html 55809 fast/viewport/viewport-118.html 55810 fast/viewport/viewport-119.html 55811 fast/viewport/viewport-12.html 55812 fast/viewport/viewport-120.html 55813 fast/viewport/viewport-121.html 55814 fast/viewport/viewport-122.html 55815 fast/viewport/viewport-123.html 55816 fast/viewport/viewport-124.html 55817 fast/viewport/viewport-125.html 55818 fast/viewport/viewport-126.html 55819 fast/viewport/viewport-127.html 55820 fast/viewport/viewport-13.html 55821 fast/viewport/viewport-14.html 55822 fast/viewport/viewport-15.html 55823 fast/viewport/viewport-16.html 55824 fast/viewport/viewport-17.html 55825 fast/viewport/viewport-18.html 55826 fast/viewport/viewport-19.html 55827 fast/viewport/viewport-2.html 55828 fast/viewport/viewport-20.html 55829 fast/viewport/viewport-21.html 55830 fast/viewport/viewport-22.html 55831 fast/viewport/viewport-23.html 55832 fast/viewport/viewport-24.html 55833 fast/viewport/viewport-25.html 55834 fast/viewport/viewport-26.html 55835 fast/viewport/viewport-27.html 55836 fast/viewport/viewport-28.html 55837 fast/viewport/viewport-29.html 55838 fast/viewport/viewport-3.html 55839 fast/viewport/viewport-30.html 55840 fast/viewport/viewport-31.html 55841 fast/viewport/viewport-32.html 55842 fast/viewport/viewport-33.html 55843 fast/viewport/viewport-34.html 55844 fast/viewport/viewport-35.html 55845 fast/viewport/viewport-36.html 55846 fast/viewport/viewport-37.html 55847 fast/viewport/viewport-38.html 55848 fast/viewport/viewport-39.html 55849 fast/viewport/viewport-4.html 55850 fast/viewport/viewport-40.html 55851 fast/viewport/viewport-41.html 55852 fast/viewport/viewport-42.html 55853 fast/viewport/viewport-43.html 55854 fast/viewport/viewport-44.html 55855 fast/viewport/viewport-45.html 55856 fast/viewport/viewport-46.html 55857 fast/viewport/viewport-47.html 55858 fast/viewport/viewport-48.html 55859 fast/viewport/viewport-49.html 55860 fast/viewport/viewport-5.html 55861 fast/viewport/viewport-50.html 55862 fast/viewport/viewport-51.html 55863 fast/viewport/viewport-52.html 55864 fast/viewport/viewport-53.html 55865 fast/viewport/viewport-54.html 55866 fast/viewport/viewport-55.html 55867 fast/viewport/viewport-56.html 55868 fast/viewport/viewport-57.html 55869 fast/viewport/viewport-58.html 55870 fast/viewport/viewport-59.html 55871 fast/viewport/viewport-6.html 55872 fast/viewport/viewport-60.html 55873 fast/viewport/viewport-61.html 55874 fast/viewport/viewport-62.html 55875 fast/viewport/viewport-63.html 55876 fast/viewport/viewport-64.html 55877 fast/viewport/viewport-65.html 55878 fast/viewport/viewport-66.html 55879 fast/viewport/viewport-67.html 55880 fast/viewport/viewport-68.html 55881 fast/viewport/viewport-69.html 55882 fast/viewport/viewport-7.html 55883 fast/viewport/viewport-70.html 55884 fast/viewport/viewport-71.html 55885 fast/viewport/viewport-72.html 55886 fast/viewport/viewport-73.html 55887 fast/viewport/viewport-74.html 55888 fast/viewport/viewport-75.html 55889 fast/viewport/viewport-76.html 55890 fast/viewport/viewport-77.html 55891 fast/viewport/viewport-78.html 55892 fast/viewport/viewport-79.html 55893 fast/viewport/viewport-8.html 55894 fast/viewport/viewport-80.html 55895 fast/viewport/viewport-81.html 55896 fast/viewport/viewport-82.html 55897 fast/viewport/viewport-83.html 55898 fast/viewport/viewport-84.html 55899 fast/viewport/viewport-85.html 55900 fast/viewport/viewport-86.html 55901 fast/viewport/viewport-87.html 55902 fast/viewport/viewport-88.html 55903 fast/viewport/viewport-9.html 55904 fast/viewport/viewport-90.html 55905 55906 * dom/ViewportArguments.cpp: 55907 (WebCore::findConfigurationForViewportData): 55908 (WebCore::findSizeValue): 55909 (WebCore::findScaleValue): 55910 (WebCore::findUserScalableValue): 55911 (WebCore::findTargetDensityDPIValue): 55912 (WebCore::setViewportFeature): 55913 * dom/ViewportArguments.h: 55914 (WebCore::ViewportArguments::): 55915 (WebCore::ViewportArguments::ViewportArguments): 55916 (WebCore::ViewportArguments::hasCustomArgument): 55917 55918 2010-09-13 Andreas Kling <andreas.kling (a] nokia.com> 55919 55920 Reviewed by Kenneth Rohde Christiansen. 55921 55922 [Qt] Don't add empty strings to list of supported image MIME types 55923 https://bugs.webkit.org/show_bug.cgi?id=45643 55924 55925 After <http://trac.webkit.org/changeset/67355> getMIMETypeForExtension() 55926 returns an empty string instead of "application/octet-stream" for unsupported 55927 extensions. Don't add these to the list of supported types, and clean out 55928 the logic that removed "application/octet-stream" from supported types. 55929 55930 Fixes crash in initializeMIMETypeRegistry() due to inserting String() into 55931 a HashSet<String>. 55932 55933 * platform/MIMETypeRegistry.cpp: 55934 (WebCore::initializeSupportedImageMIMETypes): 55935 (WebCore::initializeSupportedImageMIMETypesForEncoding): 55936 55937 2010-09-13 Adam Barth <abarth (a] webkit.org> 55938 55939 Attempted Qt build fix. 55940 55941 * html/parser/HTMLElementStack.cpp: 55942 55943 2010-09-13 Adam Barth <abarth (a] webkit.org> 55944 55945 Reviewed by Eric Seidel. 55946 55947 Apply spec changes to InForeignContentMode 55948 https://bugs.webkit.org/show_bug.cgi?id=45636 55949 55950 Now breaking out of foreign content doesn't always bring you back to 55951 HTML. If you have a foreign content element that can contain HTML, you 55952 just get brought back to that element. 55953 55954 * html/parser/HTMLElementStack.cpp: 55955 (WebCore::HTMLNames::isForeignContentScopeMarker): 55956 (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker): 55957 * html/parser/HTMLElementStack.h: 55958 * html/parser/HTMLTreeBuilder.cpp: 55959 (WebCore::HTMLTreeBuilder::processStartTag): 55960 (WebCore::HTMLTreeBuilder::processEndOfFile): 55961 55962 2010-09-13 Adam Barth <abarth (a] webkit.org> 55963 55964 Reviewed by Eric Seidel. 55965 55966 Convert notImplemented() to ASSERT_NOT_REACHED 55967 https://bugs.webkit.org/show_bug.cgi?id=45639 55968 55969 The reason we never implemented this state is because it's not actually 55970 reachable. 55971 55972 * html/parser/HTMLTreeBuilder.cpp: 55973 (WebCore::HTMLTreeBuilder::processStartTag): 55974 55975 2010-09-13 Patrick Gansterer <paroga (a] paroga.com> 55976 55977 Reviewed by Kenneth Rohde Christiansen. 55978 55979 [WINCE] Buildfix for ScrollAnimatorWin 55980 https://bugs.webkit.org/show_bug.cgi?id=45595 55981 55982 Use fabs() instead of abs(). 55983 55984 * platform/ScrollAnimatorWin.cpp: 55985 (WebCore::ScrollAnimatorWin::scroll): 55986 (WebCore::ScrollAnimatorWin::animateScroll): 55987 55988 2010-09-13 Adam Barth <abarth (a] webkit.org> 55989 55990 Reviewed by Eric Seidel. 55991 55992 Remove fixed FIXME 55993 https://bugs.webkit.org/show_bug.cgi?id=45637 55994 55995 The spec made assertions that were false. Hixie fixed the spec by 55996 removing the assertions. There's no need to keep these FIXMEs in the 55997 code. 55998 55999 * html/parser/HTMLTreeBuilder.cpp: 56000 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 56001 56002 2010-09-12 Adam Barth <abarth (a] webkit.org> 56003 56004 Reviewed by Eric Seidel. 56005 56006 Remove FIXME now that the HTML5 spec has been updated 56007 https://bugs.webkit.org/show_bug.cgi?id=45634 56008 56009 The spec changed to say what we do here so this FIXME isn't needed 56010 anymore. 56011 56012 Tests: fast/parser/form-pointer-1.html 56013 fast/parser/form-pointer-2.html 56014 fast/parser/form-pointer-3.html 56015 fast/parser/form-pointer-4.html 56016 56017 * html/parser/HTMLTreeBuilder.cpp: 56018 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 56019 56020 2010-09-12 Robin Qiu <robin.qiu (a] torchmobile.com.cn> 56021 56022 Reviewed by Antonio Gomes. 56023 56024 https://bugs.webkit.org/show_bug.cgi?id=18768 56025 Fixed a bug in scroll flow. When we don't have scrollbars, we need to 56026 repaintFixedElementsAfterScrolling(), sendScrollEvent() ... as well as 56027 scrollContents(); 56028 56029 Tests: scrollbars/scrollevent-iframe-no-scrolling-wheel.html 56030 scrollbars/scrollevent-iframe-no-scrolling.html 56031 56032 * page/FrameView.cpp: 56033 (WebCore::FrameView::valueChanged): Added. 56034 * page/FrameView.h: Added a new method. 56035 * platform/ScrollView.cpp: 56036 (WebCore::ScrollView::valueChanged): Added. 56037 (WebCore::ScrollView::updateScrollbars): 56038 * platform/ScrollView.h: Added a new method. 56039 56040 2010-09-10 MORITA Hajime <morrita (a] google.com> 56041 56042 Reviewed by Tony Chang. 56043 56044 [Chromium] Implement textInputController.hasSpellingMarker() for Chromium 56045 https://bugs.webkit.org/show_bug.cgi?id=45441 56046 56047 Added an API for testing marker state. 56048 We locate this here instead of DRT for sharing the logic between 56049 multiple ports. 56050 56051 * WebCore.exp.in: 56052 * editing/Editor.cpp: 56053 (WebCore::Editor::selectionStartHasSpellingMarkerFor): 56054 * editing/Editor.h: 56055 56056 2010-09-12 Adam Barth <abarth (a] webkit.org> 56057 56058 Reviewed by Eric Seidel. 56059 56060 Adoption agency should use takeAllChildrenFrom 56061 https://bugs.webkit.org/show_bug.cgi?id=45570 56062 56063 Before this patch, we were using an unsafe pattern of walking the 56064 sibling list without grabbing references. Instead, we should use the 56065 shiny new takeAllChildrenFrom method that shoves the children into a 56066 vector first. Also, update takeAllChildrenFrom to handle the case 56067 where the old parent is attached. 56068 56069 * dom/ContainerNode.cpp: 56070 (WebCore::ContainerNode::takeAllChildrenFrom): 56071 * html/parser/HTMLTreeBuilder.cpp: 56072 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 56073 * html/parser/HTMLTreeBuilder.h: 56074 56075 2010-09-12 Adam Barth <abarth (a] webkit.org> 56076 56077 Reviewed by Eric Seidel. 56078 56079 isParsingFragment assert hit in new treebuilder 56080 https://bugs.webkit.org/show_bug.cgi?id=45621 56081 56082 Update our list of special tags to match the spec. 56083 56084 * html/parser/HTMLTreeBuilder.cpp: 56085 56086 2010-09-12 Robert Hogan <robert (a] webkit.org> 56087 56088 Reviewed by Andreas Kling. 56089 56090 [Qt] Fix http/tests/navigation/reload-subframe-object.html 56091 56092 We need to bring our use of getMimeTypeForPath() and 56093 getMimeTypeForExtension() into line with WebCore expectations. 56094 56095 We should use MIMETypeRegistry::getMIMETypeForExtension() for cases 56096 where an empty mimetype should be returned if no match is found, and 56097 MIMETypeRegistry::getMIMETypeForPath() for cases where 56098 'application/octet-stream' should be returned if no match is found. 56099 56100 Fixes http/tests/navigation/reload-subframe-object.html 56101 56102 Based on findings in webkit.org/b/31398 and webkit.org/b/15554. 56103 56104 https://bugs.webkit.org/show_bug.cgi?id=45613 56105 56106 * platform/network/qt/QNetworkReplyHandler.cpp: 56107 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 56108 * platform/qt/MIMETypeRegistryQt.cpp: 56109 (WebCore::MIMETypeRegistry::getMIMETypeForExtension): 56110 56111 2010-09-12 Dan Bernstein <mitz (a] apple.com> 56112 56113 Reviewed by Adele Peterson. 56114 56115 Neglect unlikely hyphenation opportunities 56116 https://bugs.webkit.org/show_bug.cgi?id=45606 56117 56118 Avoid looking for hyphenation points in about 40% of the cases at the cost of missing about 56119 3% of the hyphenation opportunities. 56120 56121 * rendering/RenderBlockLineLayout.cpp: 56122 (WebCore::tryHyphenating): Bail out if the widest the prefix before the hyphen can be is no more 56123 than 5/4 the font size. 56124 56125 2010-09-12 Oswald Buddenhagen <oswald.buddenhagen (a] nokia.com> 56126 56127 Reviewed by Simon Hausmann. 56128 56129 [Qt] fix qt_webkit_version.pri install for in-Qt builds 56130 56131 Always add the target, even if building inside Qt - as opposed to the 56132 headers and libraries, there are no rules for that coming from 56133 qbase.pri. 56134 56135 Task-number: QTBUG-13306 56136 56137 * WebCore.pro: 56138 56139 2010-09-12 Oswald Buddenhagen <oswald.buddenhagen (a] nokia.com> 56140 56141 Reviewed by Simon Hausmann. 56142 56143 [Qt] Let QtWebKit inject itself into the qt configuration 56144 56145 i.e., don't explicitly deal with qt_webkit_version.pri outside of the 56146 webkit source directory. 56147 56148 Task-number: QTBUG-12379 56149 56150 * WebCore.pro: 56151 56152 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56153 56154 [Qt] Build fix. 56155 56156 * WebCore.pro: Re-add erroneously removed sources. 56157 56158 2010-09-12 Andreas Kling <andreas.kling (a] nokia.com> 56159 56160 Reviewed by Kenneth Rohde Christiansen. 56161 56162 [Qt] Remove Path::closeSubpath() workaround for broken miter joins 56163 https://bugs.webkit.org/show_bug.cgi?id=45618 56164 56165 Removed Path::closeCanvasSubpath() and share the logic between Canvas and SVG 56166 paths. The problem was actually in Qt's path stroker and has been fixed for Qt 4.7.1. 56167 56168 * html/canvas/CanvasRenderingContext2D.cpp: 56169 (WebCore::CanvasRenderingContext2D::closePath): 56170 * platform/graphics/Path.h: 56171 * platform/graphics/qt/PathQt.cpp: 56172 56173 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56174 56175 Fix the Gtk and minimal builds. 56176 56177 * plugins/PluginView.cpp: 56178 (WebCore::PluginView::npObject): Correct the #ifdefs. 56179 (WebCore::PluginView::bindingInstance): Moved npErr variable 56180 into npObject() function where it is used. 56181 56182 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56183 56184 [Qt] Prospective build fix for minimal build. 56185 56186 * plugins/PluginView.cpp: Guard newly added function 56187 by ENABLE_NETSCAPE_PLUGIN feature. 56188 (WebCore::PluginView::npObject): 56189 * plugins/PluginView.h: 56190 56191 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56192 56193 Reviewed by Andreas Kling. 56194 56195 [Qt] Add support for binding QtWebKit to a QScriptEngine. 56196 56197 The ScriptController owns the V8 context, and this patch 56198 for the Qt build also gives it a QScriptEngine, that has 56199 been instructed to adopt the V8 context. 56200 56201 This is the enabler for the QObject bindings, used in 56202 the API and DRT. 56203 56204 * WebCore.pro: 56205 * bindings/v8/ScriptController.cpp: Include QScriptEngine 56206 for the Qt build, to let the ~ScriptController destructor 56207 find the QScriptEngine destructor (via OwnPtr). 56208 * bindings/v8/ScriptController.h: Declare getters. 56209 * bindings/v8/ScriptControllerQt.cpp: Added. 56210 (WebCore::ScriptController::qtScriptEngine): Implement 56211 engine adoption. 56212 56213 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56214 56215 Reviewed by Andreas Kling. 56216 56217 [Qt] Last bits and pieces for a V8 build. 56218 56219 When building with V8, get it from QtScript. 56220 56221 * WebCore.pro: Use QtScript, removed non-existant 56222 bridge files from the build. 56223 56224 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56225 56226 Reviewed by Andreas Kling. 56227 56228 [Qt] Add PlatformBridge for V8 build. 56229 56230 Add the minimalisting platform bridge with the two 56231 methods needed by NPV8Object.cpp. 56232 56233 * WebCore.pro: 56234 * platform/qt/PlatformBridge.h: Added. 56235 * platform/qt/PlatformBridgeQt.cpp: Added. 56236 (WebCore::PlatformBridge::popupsAllowed): 56237 (WebCore::PlatformBridge::pluginScriptableObject): 56238 * plugins/PluginView.cpp: Refactor the plugin object 56239 retrieval code into a separate function, called by 56240 bindingInstance() and PlatformBridge. 56241 (WebCore::PluginView::npObject): 56242 (WebCore::PluginView::bindingInstance): 56243 * plugins/PluginView.h: 56244 56245 2010-09-11 Jer Noble <jer.noble (a] apple.com> 56246 56247 Reviewed by Eric Carlson. 56248 56249 http/tests/media/text-served-as-text.html failing on Windows (Debug+Release) 56250 https://bugs.webkit.org/show_bug.cgi?id=45603 56251 56252 Disable the eat/text components under Windows the same way as we do on the Mac. 56253 56254 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 56255 * platform/graphics/win/QTMovie.cpp: 56256 * platform/graphics/win/QTMovie.h: 56257 56258 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56259 56260 Reviewed by Andreas Kling. 56261 56262 Fix compilation of the V8 bindings on X11 with Qt. 56263 56264 This changes brings the file in sync with its copy in bridge/, 56265 adding additional conflicting X11 keywords to undef. This is 56266 a temporary fix until the file is removed altogether, which is 56267 tracked in https://bugs.webkit.org/show_bug.cgi?id=45617 56268 56269 * bindings/v8/npruntime_internal.h: 56270 56271 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56272 56273 Reviewed by Andreas Kling. 56274 56275 Fix compilation of the V8 bindings on X11 with Qt. 56276 56277 These headers include npruntime, which drag on X11Resources.h, which 56278 among other things #define's None and Boolean. Later on v8.h is included, 56279 which declares these in enums and therefore conflicts. npruntime_internal.h 56280 was introduced exactly to address this problem by including npruntime.h 56281 and undeff'ing the offending constants. 56282 56283 * bindings/v8/V8Helpers.h: 56284 * bindings/v8/V8NPObject.h: 56285 * bindings/v8/V8NPUtils.h: 56286 56287 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56288 56289 Gtk build fix. 56290 56291 Use false instead of False after 56292 http://trac.webkit.org/changeset/67323 56293 56294 * plugins/gtk/PluginViewGtk.cpp: 56295 (WebCore::PluginView::updatePluginWidget): 56296 (WebCore::PluginView::paint): 56297 56298 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56299 56300 Reviewed by Andreas Kling. 56301 56302 [Qt] Fix the compilation of V8Binding.cpp when compiling with Qt. 56303 56304 * bindings/v8/V8Binding.cpp: 56305 (WebCore::WebCoreStringResource::WebCoreStringResource): In this 56306 line an AtomicString should be converted to a WTF::String. The former 56307 has a conversion operator to the latter, to be able to call the 56308 WTF::String copy constructor. When compiling with Qt, then AtomicString 56309 also has a conversion operator to QString _and_ WTF::String has an 56310 implicit constructor that takes a QString. Therefore the compiler is 56311 confused and not sure which conversion to prefer, the one that isn't 56312 actually a conversion - going to WTF::String - or the conversion from 56313 AtomicString to QString and then constructing the WTF::String from 56314 a QString. To resolve this ambiguity we explicitly call the string() 56315 helper function on the AtomicString, which is equivalent to the 56316 operator WTF::String(). 56317 56318 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56319 56320 Reviewed by Andreas Kling. 56321 56322 Fix the build without JSC. 56323 56324 Complement http://trac.webkit.org/changeset/59826 and 56325 add missing JSC guards. 56326 56327 * plugins/PluginView.cpp: 56328 (WebCore::PluginView::bindingInstance): 56329 (WebCore::PluginView::privateBrowsingStateChanged): 56330 * plugins/qt/PluginViewQt.cpp: 56331 (WebCore::PluginView::dispatchNPEvent): 56332 (WebCore::PluginView::setNPWindowIfNeeded): 56333 (WebCore::PluginView::platformStart): 56334 56335 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56336 56337 Reviewed by Andreas Kling. 56338 56339 Fix compilation with V8 and XPath enabled. 56340 56341 V8XPathNSResolver.cpp includes V8XPathNSResolver.h, 56342 which includes V8DOMWrapper.h as its first header. 56343 V8DOMWrapper.h then uses V8XPathNSResolver in an inline 56344 function, and gcc doesn't seem to like this, because 56345 at this point the type isn't known ("V8XPathNSResolver 56346 has not been declared"). Forward declaring the type 56347 doesn't help unfortunately: "incomplete type 56348 'WebCore::V8XPathNSResolver' used in nested name 56349 specifier". 56350 56351 To resolve this circular dependency, this patch moves 56352 the inline function into the .cpp file. 56353 56354 * bindings/v8/V8DOMWrapper.cpp: 56355 (WebCore::V8DOMWrapper::getXPathNSResolver): 56356 * bindings/v8/V8DOMWrapper.h: 56357 56358 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56359 56360 Reviewed by Andreas Kling. 56361 56362 [Qt][X11] Fix build with V8 against X11 headers. 56363 56364 Added "True" and "False" to the list of words 56365 we free from the X11 macro jail. 56366 56367 * bridge/npruntime_internal.h: 56368 * config.h: The V8 bindings end up indirectly pulling 56369 in X11 headers and they use True/False. There's no 56370 central header apart from this one, so include the 56371 x11 fixing header here for Qt/X11/V8. 56372 * plugins/qt/PluginViewQt.cpp: 56373 (WebCore::PluginView::paint): Use false instead of False 56374 since False isn't available anymore. 56375 56376 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56377 56378 Reviewed by Andreas Kling. 56379 56380 [Qt] Fix compilation with V8 and Qt. 56381 56382 Use WebKit's page cache for ScriptCachedFrameData. 56383 56384 * bindings/v8/ScriptCachedFrameData.h: 56385 56386 2010-09-12 Simon Hausmann <simon.hausmann (a] nokia.com> 56387 56388 Reviewed by Andreas Kling. 56389 56390 Fix compiler warning. 56391 56392 NPClass has 13 members, the last one (NPConstructFunctionPtr construct) wasn't 56393 initialized explicitly. 56394 56395 * bindings/v8/NPV8Object.cpp: 56396 56397 2010-09-12 Mario Sanchez Prada <msanchez (a] igalia.com> 56398 56399 Reviewed by Martin Robinson. 56400 56401 [Gtk] get_n_selections and get_selection fail when selecting text across object boundaries 56402 https://bugs.webkit.org/show_bug.cgi?id=26991 56403 56404 Fix AtkText getNSelections() and getSelection() to work properly 56405 56406 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 56407 (selectionBelongsToObject): Check that both the selection intersects 56408 the node AND that the selection is not just "touching" one of the 56409 boundaries for the selected node. We want to check whether the 56410 node is actually inside the region, at least partially 56411 (getSelectionOffsetsForObject): New function to get the start and 56412 end offsets of a selection for a given accessible object. 56413 (webkit_accessible_text_get_selection): Return zero when both 56414 start and end offsets are equal, following the lead of GAIL. 56415 56416 2010-09-11 Adam Barth <abarth (a] webkit.org> 56417 56418 Reviewed by Sam Weinig. 56419 56420 Make SecurityOrigin::canDisplay an instance function 56421 https://bugs.webkit.org/show_bug.cgi?id=45219 56422 56423 This function was secretly an instance function because callers needed 56424 to pass in a document (which owns a SecurityOrigin). Only the 56425 FrameLoader actually needs the method to be static. 56426 56427 * WebCore.exp.in: 56428 * html/HTMLMediaElement.cpp: 56429 (WebCore::HTMLMediaElement::isSafeToLoadURL): 56430 * loader/Cache.cpp: 56431 (WebCore::Cache::requestResource): 56432 - Notice that DocLoader::doc() can never be 0. 56433 * loader/FrameLoader.cpp: 56434 (WebCore::FrameLoader::loadFrameRequest): 56435 * loader/PingLoader.cpp: 56436 (WebCore::PingLoader::loadImage): 56437 * loader/SubframeLoader.cpp: 56438 (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): 56439 (WebCore::SubframeLoader::createJavaAppletWidget): 56440 (WebCore::SubframeLoader::loadSubframe): 56441 (WebCore::SubframeLoader::loadPlugin): 56442 * loader/SubresourceLoader.cpp: 56443 (WebCore::SubresourceLoader::create): 56444 * page/SecurityOrigin.cpp: 56445 (WebCore::SecurityOrigin::canDisplay): 56446 (WebCore::SecurityOrigin::deprecatedCanDisplay): 56447 * page/SecurityOrigin.h: 56448 * plugins/PluginView.cpp: 56449 (WebCore::PluginView::load): 56450 56451 2010-09-11 Adam Barth <abarth (a] webkit.org> 56452 56453 Reviewed by Sam Weinig. 56454 56455 Make SecurityOrigin::canDisplay an instance function 56456 https://bugs.webkit.org/show_bug.cgi?id=45219 56457 56458 This function was secretly an instance function because callers needed 56459 to pass in a document (which owns a SecurityOrigin). Only the 56460 FrameLoader actually needs the method to be static. 56461 56462 * WebCore.exp.in: 56463 * html/HTMLMediaElement.cpp: 56464 (WebCore::HTMLMediaElement::isSafeToLoadURL): 56465 * loader/Cache.cpp: 56466 (WebCore::Cache::requestResource): 56467 - Notice that DocLoader::doc() can never be 0. 56468 * loader/FrameLoader.cpp: 56469 (WebCore::FrameLoader::loadFrameRequest): 56470 * loader/PingLoader.cpp: 56471 (WebCore::PingLoader::loadImage): 56472 * loader/SubframeLoader.cpp: 56473 (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): 56474 (WebCore::SubframeLoader::createJavaAppletWidget): 56475 (WebCore::SubframeLoader::loadSubframe): 56476 (WebCore::SubframeLoader::loadPlugin): 56477 * loader/SubresourceLoader.cpp: 56478 (WebCore::SubresourceLoader::create): 56479 * page/SecurityOrigin.cpp: 56480 (WebCore::SecurityOrigin::canDisplay): 56481 (WebCore::SecurityOrigin::deprecatedCanDisplay): 56482 * page/SecurityOrigin.h: 56483 * plugins/PluginView.cpp: 56484 (WebCore::PluginView::load): 56485 56486 2010-09-11 Simon Hausmann <simon.hausmann (a] nokia.com> 56487 56488 Unreviewed. 56489 56490 [Qt] Trivial V8 build fix. 56491 56492 * WebCore.pri: Add storage, workers and css to the include paths for the 56493 JS code generator. 56494 56495 2010-09-11 Andreas Kling <andreas.kling (a] nokia.com> 56496 56497 Reviewed by Simon Hausmann. 56498 56499 [Qt] V8 port: Fix "WTF::String::utf8" returns incomplete type WTF::CString 56500 https://bugs.webkit.org/show_bug.cgi?id=45157 56501 56502 Include CString.h where necessary. Chromium builds would get it from 56503 KURLGooglePrivate.h so this is only an issue for Qt + V8. 56504 56505 * bindings/v8/V8Proxy.cpp: 56506 * inspector/InspectorDebuggerAgent.cpp: 56507 * inspector/InspectorProfilerAgent.cpp: 56508 * plugins/PluginDatabase.cpp: 56509 56510 2010-09-11 Simon Hausmann <simon.hausmann (a] nokia.com> 56511 56512 Reviewed by Andreas Kling. 56513 56514 [Qt] V8 port: webkit project files changes 56515 https://bugs.webkit.org/show_bug.cgi?id=45140 56516 56517 * WebCore.pro: Removed unecessary common.pri inclusion from earlier patch. 56518 56519 2010-09-03 Vlad Burlik <volodimir.burlik (a] nokia.com>, Simon Hausmann <simon.hausmann (a] nokia.com> 56520 56521 Reviewed by Andreas Kling. 56522 56523 [Qt] V8 port: webcore project files changes 56524 https://bugs.webkit.org/show_bug.cgi?id=45141 56525 56526 Modify webcore project files to include V8 javascript engine. By default disabled. 56527 56528 * WebCore.pri: 56529 * WebCore.pro: 56530 * features.pri: 56531 56532 2010-09-11 Andreas Kling <andreas.kling (a] nokia.com> 56533 56534 Reviewed by Simon Hausmann. 56535 56536 Web Inspector: Include CString.h in generated files 56537 56538 This is necessary for generated code that uses the CString 56539 returned by String::utf8() (from generateBackendDispatcher) 56540 56541 Chromium builds already get CString.h from KURLGooglePrivate.h 56542 so this issue only occurs when building Qt against V8. 56543 56544 * inspector/CodeGeneratorInspector.pm: 56545 56546 2010-09-11 Adele Peterson <adele (a] apple.com> 56547 56548 Reviewed by Sam Weinig. 56549 56550 Fix for https://bugs.webkit.org/show_bug.cgi?id=45587 56551 Move line clamp code to its own function. 56552 56553 * rendering/RenderFlexibleBox.cpp: 56554 (WebCore::RenderFlexibleBox::layoutVerticalBox): 56555 (WebCore::RenderFlexibleBox::applyLineClamp): 56556 * rendering/RenderFlexibleBox.h: 56557 56558 2010-09-11 Mihai Parparita <mihaip (a] chromium.org> 56559 56560 Reviewed by Adam Barth. 56561 56562 URIs in styles created via innerHTML are not resolved against the document's base URI 56563 https://bugs.webkit.org/show_bug.cgi?id=45565 56564 56565 The dummy document used for fragment parsing created by 56566 FragmentParsingContext should use the base URI of the fragment's 56567 document. Since (HTML)Document doesn't expose a setter for the base URI 56568 (and shouldn't), we allow it to be set by the constructor/create 56569 function. 56570 56571 Also remove some obsolete code that references the legacy tree builder 56572 from HTMLElement that I happened to notice. 56573 56574 Test: fast/innerHTML/innerHTML-uri-resolution.html 56575 56576 * dom/Document.cpp: 56577 (WebCore::Document::Document): 56578 * dom/Document.h: 56579 * html/HTMLDocument.cpp: 56580 (WebCore::HTMLDocument::HTMLDocument): 56581 * html/HTMLDocument.h: 56582 (WebCore::HTMLDocument::create): 56583 * html/HTMLElement.cpp: 56584 (WebCore::createFragmentFromSource): 56585 (WebCore::HTMLElement::setInnerHTML): 56586 * html/parser/HTMLTreeBuilder.cpp: 56587 (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): 56588 56589 2010-09-10 Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org> 56590 56591 Reviewed by Darin Adler. 56592 56593 Add NetworkingContext to avoid layer violations 56594 https://bugs.webkit.org/show_bug.cgi?id=42292 56595 56596 Activate NetworkingContext: 56597 56598 Since the ResourceHandle::create, ResourceHandle::start and 56599 ResourceHandle::loadResourceSynchronously API's were modified, 56600 having their Frame* parameter substituted by a NetworkingContext*, 56601 all implementations of them were also modified. 56602 This patch also modifies all functions that were calling the above 56603 ones. 56604 56605 * loader/FrameLoader.cpp: 56606 (WebCore::FrameLoader::loadResourceSynchronously): 56607 * loader/FrameLoader.h: 56608 * loader/MainResourceLoader.cpp: 56609 (WebCore::MainResourceLoader::loadNow): 56610 * loader/PingLoader.cpp: 56611 (WebCore::PingLoader::PingLoader): 56612 * loader/ResourceLoader.cpp: 56613 (WebCore::ResourceLoader::load): 56614 * loader/appcache/ApplicationCacheGroup.cpp: 56615 (WebCore::ApplicationCacheGroup::createResourceHandle): 56616 * loader/icon/IconFetcher.cpp: 56617 (WebCore::IconFetcher::loadEntry): 56618 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 56619 (webKitWebSrcStart): 56620 * platform/network/ResourceHandle.cpp: 56621 (WebCore::ResourceHandle::create): 56622 * platform/network/ResourceHandle.h: 56623 * platform/network/ResourceHandleInternal.h: 56624 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 56625 * platform/network/cf/ResourceHandleCFNet.cpp: 56626 (WebCore::ResourceHandle::start): 56627 (WebCore::ResourceHandle::loadResourceSynchronously): 56628 * platform/network/curl/ResourceHandleCurl.cpp: 56629 (WebCore::ResourceHandle::start): 56630 (WebCore::ResourceHandle::loadResourceSynchronously): 56631 * platform/network/mac/ResourceHandleMac.mm: 56632 (WebCore::ResourceHandle::start): 56633 (WebCore::ResourceHandle::loadResourceSynchronously): 56634 * platform/network/qt/QNetworkReplyHandler.cpp: 56635 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 56636 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 56637 (WebCore::QNetworkReplyHandler::start): 56638 * platform/network/qt/ResourceHandleQt.cpp: 56639 (WebCore::ResourceHandle::start): 56640 (WebCore::ResourceHandle::willLoadFromCache): 56641 (WebCore::ResourceHandle::loadResourceSynchronously): 56642 * platform/network/soup/ResourceHandleSoup.cpp: 56643 * platform/network/win/ResourceHandleWin.cpp: 56644 (WebCore::ResourceHandle::start): 56645 56646 2010-09-10 Jer Noble <jer.noble (a] apple.com> 56647 56648 No review; build fix only. 56649 56650 <CoreGraphics/CGAffineTransform.h> isn't on the build bots either. Wrap 56651 all references to m_movieTransform in #if USE(ACCELERATED_COMPOSITING) guards. 56652 56653 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 56654 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext): 56655 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize): 56656 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform): 56657 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 56658 56659 2010-09-10 Jer Noble <jer.noble (a] apple.com> 56660 56661 No review; build fix only. 56662 56663 <CoreGraphics/CGFloat.h> does not exist on the build bots. Replace 56664 instances of CGFAbs() with abs(). 56665 56666 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 56667 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize): 56668 56669 2010-09-10 Dan Bernstein <mitz (a] apple.com> 56670 56671 Reviewed by Darin Adler. 56672 56673 <rdar://problem/8414282> Cant dynamically change first-letter to/from floating 56674 56675 Test: fast/dynamic/first-letter-display-change.html 56676 56677 * rendering/RenderBlock.cpp: 56678 (WebCore::styleForFirstLetter): Factored this helper function out. 56679 (WebCore::RenderBlock::updateFirstLetter): Renamed variables so that the 56680 update style and create new branches use the same terminology. In the 56681 update case, if the style change requires a new renderer, handle it. 56682 * rendering/RenderTextFragment.h: 56683 (WebCore::toRenderTextFragment): Added. 56684 56685 2010-09-10 Sam Weinig <sam (a] webkit.org> 56686 56687 Reviewed by Darin Adler. 56688 56689 Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom. 56690 Precursor to <rdar://problem/7660657> 56691 https://bugs.webkit.org/show_bug.cgi?id=45522 56692 56693 * GNUmakefile.am: 56694 * WebCore.exp.in: 56695 * WebCore.gypi: 56696 * WebCore.pro: 56697 * WebCore.vcproj/WebCore.vcproj: 56698 * WebCore.xcodeproj/project.pbxproj: 56699 Remove ZoomMode.h 56700 56701 * css/CSSStyleSelector.cpp: 56702 (WebCore::CSSStyleSelector::applyProperty): 56703 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): 56704 Remove uses of shouldApplyTextZoom(), it had turned into just a compare to 1.0f. 56705 56706 * html/HTMLBodyElement.cpp: 56707 (WebCore::adjustForZoom): 56708 (WebCore::HTMLBodyElement::setScrollLeft): 56709 (WebCore::HTMLBodyElement::setScrollTop): 56710 Convert these to use the explicit pageZoomFactor() function, it made no sense for text zoom 56711 anyway. 56712 56713 * page/Frame.h: 56714 Remove include of ZoomMode.h 56715 56716 * page/FrameView.cpp: 56717 (WebCore::parentPageZoomFactor): 56718 (WebCore::parentTextZoomFactor): 56719 (WebCore::FrameView::FrameView): 56720 (WebCore::FrameView::setPageZoomFactor): 56721 (WebCore::FrameView::setTextZoomFactor): 56722 (WebCore::FrameView::setPageAndTextZoomFactors): 56723 * page/FrameView.h: 56724 (WebCore::FrameView::pageZoomFactor): 56725 (WebCore::FrameView::textZoomFactor): 56726 Change FrameView to store two values for zoom, one for page zoom and one for text zoom. 56727 56728 * page/Settings.cpp: 56729 (WebCore::Settings::Settings): 56730 * page/Settings.h: 56731 Removed zoom mode. 56732 56733 * page/ZoomMode.h: Removed. 56734 56735 * rendering/RenderView.cpp: 56736 (WebCore::RenderView::zoomFactor): 56737 Remove now unnecessary call to shouldApplyPageZoom since it will be 1 if it should 56738 be ignored. 56739 56740 * svg/SVGSVGElement.cpp: 56741 (WebCore::SVGSVGElement::setCurrentScale): 56742 Use explicit setPageZoomFactor function. 56743 56744 2010-09-10 Ryuan Choi <ryuan.choi (a] samsung.com> 56745 56746 Unreviewed build fix for EFL. 56747 56748 [EFL] REGRESSION(67167) build break because of newly added JSBindingState.cpp 56749 https://bugs.webkit.org/show_bug.cgi?id=45537 56750 56751 * CMakeLists.txt: 56752 56753 2010-09-10 Darin Adler <darin (a] apple.com> 56754 56755 Reviewed by Sam Weinig. 56756 56757 Move some Dashboard stuff from WebCore to WebKit along with a bit more FrameMac cleanup 56758 https://bugs.webkit.org/show_bug.cgi?id=45582 56759 56760 * WebCore.exp.in: Updated. 56761 56762 * WebCore.xcodeproj/project.pbxproj: Removed WebDashboardRegion.h/m. 56763 * page/mac/WebDashboardRegion.h: Removed. 56764 * page/mac/WebDashboardRegion.m: Removed. 56765 56766 * page/Frame.h: Removed unneeded #if. Removed dashboardRegionsDictionary function, now 56767 handled in WebKit. Removed searchForNSLabelsAboveCell function, which had become dead code. 56768 * page/mac/FrameMac.mm: Ditto. Also tweaked a place that said "int unsigned". 56769 56770 2010-09-10 Peter Kasting <pkasting (a] google.com> 56771 56772 Reviewed by Darin Adler. 56773 56774 Make middle clicks not fire DOM onclick events. 56775 https://bugs.webkit.org/show_bug.cgi?id=22382 56776 56777 * html/HTMLAnchorElement.cpp: Explicitly include middle-clicks in the 56778 computation of what constitutes a link click, since they're no longer 56779 implicitly included. 56780 (WebCore::isLinkClick): 56781 * html/HTMLInputElement.cpp: Removed unneeded checks that click events 56782 are coming from the left mouse button, since they all are now. 56783 (WebCore::HTMLInputElement::preDispatchEventHandler): 56784 (WebCore::HTMLInputElement::postDispatchEventHandler): 56785 (WebCore::HTMLInputElement::defaultEventHandler): 56786 * page/EventHandler.cpp: Changed logic to send a click event only for 56787 the left button. 56788 (WebCore::EventHandler::handleMouseDoubleClickEvent): 56789 (WebCore::EventHandler::handleMouseReleaseEvent): 56790 56791 2010-09-10 Adam Barth <abarth (a] webkit.org> 56792 56793 Attempted build fix for Qt Minimal. 56794 56795 * dom/Element.cpp: 56796 (WebCore::Element::getBoundingClientRect): 56797 56798 2010-09-10 Dan Bernstein <mitz (a] apple.com> 56799 56800 Reviewed by Anders Carlsson. 56801 56802 Pseudostyle resolution corrupts cached child index values 56803 https://bugs.webkit.org/show_bug.cgi?id=45574 56804 56805 Covered by fast/dom/firstline-fixed-crash.html and fast/dom/firstletter-tablecell-crash.html. 56806 56807 RenderBlock::updateFirstLetter() calls getCachedPseudoStyle() passing as the parent style the 56808 style of the parent of the first letter, which is not always the parent of the element for 56809 which we are getting :first-letter style. As a result, style resolution caches childIndex values 56810 in the wrong elements style. 56811 56812 * css/CSSStyleSelector.cpp: 56813 (WebCore::CSSStyleSelector::pseudoStyleForElement): Create the new style and inherit from 56814 the parent style before matching rules, to avoid corrupting the parent style itself. 56815 (WebCore::CSSStyleSelector::checkSelector): Always pass the elements parent style as 56816 the parent style here. 56817 * rendering/RenderBlock.cpp: 56818 (WebCore::RenderBlock::updateFirstLetter): Removed the null check that was added 56819 in r67183. 56820 * rendering/RenderBlockLineLayout.cpp: 56821 (WebCore::RenderBlock::findNextLineBreak): Removed the null check that was added 56822 in r67184. 56823 56824 2010-09-10 Jer Noble <jer.noble (a] apple.com> 56825 56826 Reviewed by Simon Fraser. 56827 56828 Movies with track or movie matrices don't display in <video> elements (Safari 5/Windows) 56829 https://bugs.webkit.org/show_bug.cgi?id=45333 56830 rdar://problem/81333126 56831 56832 QuickTime will refuse to decode video frames for movies whose movie and track matrices 56833 are non-identity. To work around this problem, extract the movie and track matrices 56834 from the movie, and set that matrix on the video layer instead. 56835 56836 * WebCore.vcproj/QTMovieWin.vcproj: 56837 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 56838 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::LayoutClient): Added. 56839 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::layoutSublayersOfLayer): 56840 Layout the video layer according to its superlayer's size. 56841 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext): 56842 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformLayer): 56843 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize): 56844 Apply the m_movieTransform to the size reported by QTMovie. 56845 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform): 56846 Calculate m_movieTransform and reset the movie and track matrices in the movie. 56847 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie): 56848 Create two nested layers instead of one. 56849 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie): 56850 Make sure to remove m_qtVideoLayer from any superlayer before dereferencing it. 56851 * platform/graphics/win/QTMovie.cpp: 56852 (QTMovie::videoTracks): Added. 56853 (QTMovie::getTransform): Added. 56854 (QTMovie::setTransform): Added. 56855 (QTMovie::resetTransform): Added. 56856 * platform/graphics/win/QTMovie.h: 56857 * platform/graphics/win/QTTrack.cpp: Added. 56858 * platform/graphics/win/QTTrack.h: Added. 56859 * platform/graphics/win/WKCACFLayer.cpp: 56860 (WebCore::WKCACFLayer::setBounds): Call setNeedsLayout() if a layoutClient is present. 56861 (WebCore::WKCACFLayer::setFrame): Call setNeedsLayout() if a layoutClient is present. 56862 56863 2010-09-10 Jer Noble <jer.noble (a] apple.com> 56864 56865 No review; build fix only. 56866 56867 Touch mediaControlsQuickTime in order to trigger the UserAgentStyleSheet.h to be rebuilt. 56868 56869 * css/mediaControlsQuickTime.css: 56870 (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): 56871 56872 2010-09-10 Adam Barth <abarth (a] webkit.org> 56873 56874 Reviewed by Darin Fisher. 56875 56876 Move code from WebKit-layer to DocumentLoader 56877 https://bugs.webkit.org/show_bug.cgi?id=45569 56878 56879 There's a bunch of code that's copy/pasted (poorly) across all the 56880 ports that really belongs in WebCore. This patch moves that logic into 56881 DocumentLoader. This patch is a step on the path to having 56882 DocumentLoader own DocumentWriter. 56883 56884 * WebCore.exp.in: 56885 * loader/DocumentLoader.cpp: 56886 (WebCore::DocumentLoader::commitData): 56887 * loader/DocumentLoader.h: 56888 * loader/FrameLoader.cpp: 56889 (WebCore::FrameLoader::finishedLoadingDocument): 56890 56891 2010-09-10 Cosmin Truta <ctruta (a] chromium.org> 56892 56893 Reviewed by Nikolas Zimmermann. 56894 56895 getBoundingClientRect Broken for SVG Elements 56896 https://bugs.webkit.org/show_bug.cgi?id=42815 56897 56898 Use getBBox to retrieve the bounding rectangle for SVG elements. 56899 56900 Test: svg/dom/getBoundingClientRect.xhtml 56901 56902 * dom/Element.cpp: 56903 (Element::getBoundingClientRect): 56904 56905 2010-09-09 Jer Noble <jer.noble (a] apple.com> 56906 56907 Reviewed by Eric Carlson. 56908 56909 Adopt shared control drawing for <video> controls on Windows 56910 https://bugs.webkit.org/show_bug.cgi?id=45490 56911 56912 * DerivedSources.make: Remove the OS check around mediaControlsQuickTime.css. 56913 * rendering/RenderMediaControls.cpp: 56914 (WebCore::determineState): Use WKMediaControllerThemeState flags instead of SafariTheme ones. 56915 (WebCore::getUnzoomedRectAndAdjustCurrentContext): Added. Copied verbatim from RenderMediaMac.mm. 56916 (WebCore::RenderMediaControls::adjustMediaSliderThumbSize): Use wkMeasureMediaUIPart to adjust the thumb size. 56917 (WebCore::RenderMediaControls::paintMediaControlsPart): Use wkDrawMediaUIPart instead of paintThemePart. 56918 (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Added. Copied verbatim from RenderMediaMac.mm. 56919 * rendering/RenderMediaControls.h: 56920 * rendering/RenderThemeWin.cpp: 56921 (WebCore::RenderThemeWin::adjustSliderThumbSize): Adjust both sliders and volume sliders. 56922 (WebCore::RenderThemeWin::extraMediaControlsStyleSheet): Added. Returns the mediaControlsQuickTime sheet. 56923 (WebCore::RenderThemeWin::paintMediaRewindButton): Added. Pass through to RenderMediaControls. 56924 (WebCore::RenderThemeWin::paintMediaControlsBackground): Added. Pass through to RenderMediaControls. 56925 (WebCore::RenderThemeWin::paintMediaVolumeSliderContainer): Added. Pass through to RenderMediaControls. 56926 (WebCore::RenderThemeWin::paintMediaVolumeSliderTrack): Added. Pass through to RenderMediaControls. 56927 (WebCore::RenderThemeWin::paintMediaVolumeSliderThumb): Added. Pass through to RenderMediaControls. 56928 (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton): Added. Pass through to RenderMediaControls. 56929 * rendering/RenderThemeWin.h: 56930 56931 2010-09-10 Peter Kasting <pkasting (a] google.com> 56932 56933 Reviewed by Darin Adler. 56934 56935 Cleanup and simplification in advance of making middle clicks not send a 56936 click event. 56937 https://bugs.webkit.org/show_bug.cgi?id=22382 56938 56939 * editing/DeleteButton.cpp: 56940 (WebCore::DeleteButton::defaultEventHandler): Removed unneeded code to 56941 check if the event is a MouseEvent. Any click event will do. 56942 * html/HTMLAnchorElement.cpp: 56943 (WebCore::appendServerMapMousePosition): Added. Factors out the 56944 modifications to the URL to add the mouse position to make the default 56945 event handler function easier to read. 56946 (WebCore::HTMLAnchorElement::defaultEventHandler): Reorganized to make 56947 the enter key logic separate from the link clicking logic and simplify 56948 the function. This makes minor functional changes like not calling 56949 FrameLoader::urlSelected() for fake "keydown" events constructed from 56950 JavaScript. 56951 (WebCore::HTMLAnchorElement::isLiveLink): Refactored to use new shared 56952 implementation in treatLinkAsLiveForEventType(). 56953 (WebCore::eventType): Factors out event type calculation (for 56954 treatLinkAsLiveForEventType()) from the default event handler to make it 56955 easier to read. 56956 (WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType): 56957 Implementation of the portions of isLiveLink() that are common with the 56958 checks defaultEventHandler() wants to do. 56959 (WebCore::isEnterKeyKeydownEvent): Added. Shared by the default 56960 event handlers for all three anchor elements. 56961 (WebCore::isMiddleMouseButtonEvent): Added. Shared by the isLinkClick 56962 function below and some code in SVG. Later we can make this private to 56963 this source file once we remove the unneeded SVG code. 56964 (WebCore::isLinkClick): Added. Shared by the default event handlers for 56965 all three anchor elements. 56966 (WebCore::handleLinkClick): Ditto. 56967 * html/HTMLAnchorElement.h: Added the new functions. 56968 * svg/SVGAElement.cpp: 56969 (WebCore::SVGAElement::defaultEventHandler): Removed lots of unneeded 56970 logic and streamlined the code to more closely match the 56971 HTMLAnchorElement code and share functions with it. 56972 * wml/WMLAElement.cpp: 56973 (WebCore::WMLAElement::defaultEventHandler): Ditto. 56974 56975 2010-09-10 Tony Gentilcore <tonyg (a] chromium.org> 56976 56977 Reviewed by Eric Seidel. 56978 56979 Implement HTML5 definition of script for-event neutering 56980 https://bugs.webkit.org/show_bug.cgi?id=45493 56981 56982 * dom/ScriptElement.cpp: 56983 (WebCore::ScriptElementData::shouldExecuteAsJavaScript): Same behavior, but reads more like the spec. Removed obsolete comments about supporting for-event. 56984 * html/parser/HTMLScriptRunner.cpp: 56985 (WebCore::HTMLScriptRunner::executeScript): Moved to runScript. 56986 (WebCore::HTMLScriptRunner::runScript): Checking shouldExecuteAsJavaScript() here means that external scripts which fail the check will never be requested. 56987 56988 2010-09-10 Nat Duca <nduca (a] chromium.org> 56989 56990 Reviewed by Darin Fisher. 56991 56992 [chromium] Accelerated Compositing: screen garbage when scrolling 56993 https://bugs.webkit.org/show_bug.cgi?id=45092 56994 56995 Split LayerRenderChromium::drawLayers into several different 56996 functions, responsible for preparing the backbuffer, updating the 56997 root texture, compositing and performing the final 56998 swapbuffers. This are then used by the new 56999 WebViewImpl::composite rendering path. 57000 57001 * platform/graphics/chromium/LayerChromium.cpp: 57002 (WebCore::LayerChromium::setBounds): 57003 (WebCore::LayerChromium::setFrame): 57004 (WebCore::LayerChromium::setNeedsDisplay): 57005 (WebCore::LayerChromium::resetNeedsDisplay): 57006 * platform/graphics/chromium/LayerChromium.h: 57007 (WebCore::LayerChromium::dirtyRect): 57008 * platform/graphics/chromium/LayerRendererChromium.cpp: 57009 (WebCore::LayerRendererChromium::prepareToDrawLayers): 57010 (WebCore::LayerRendererChromium::updateRootLayerTextureRect): 57011 (WebCore::LayerRendererChromium::drawLayers): 57012 (WebCore::LayerRendererChromium::present): 57013 * platform/graphics/chromium/LayerRendererChromium.h: 57014 57015 2010-09-10 David Holloway <dhollowa (a] chromium.org> 57016 57017 Reviewed by Adam Barth. 57018 57019 Replace WebCore::HTMLFormElement::submissionTrigger with WebCore::HTMLFormElement::submittedByUserGesture. 57020 Chromium AutoFill feature semantics changed with respect to what we mean by "user submitted" form. A 57021 more accurate measure of the user manually submitting a form is via user gesture. 57022 https://bugs.webkit.org/show_bug.cgi?id=45128 57023 57024 No new tests as this is only used by the Chromium WebKit API. 57025 57026 * html/HTMLFormElement.cpp: 57027 (WebCore::HTMLFormElement::HTMLFormElement): 57028 (WebCore::HTMLFormElement::prepareSubmit): 57029 (WebCore::HTMLFormElement::submit): 57030 (WebCore::HTMLFormElement::submittedByUserGesture): 57031 * html/HTMLFormElement.h: 57032 57033 2010-09-10 Adam Barth <abarth (a] webkit.org> 57034 57035 Reviewed by Eric Seidel. 57036 57037 Remove mention of "part" from Document.cpp 57038 https://bugs.webkit.org/show_bug.cgi?id=45566 57039 57040 This is an old KHTML name that's lingering around. 57041 57042 * dom/Document.cpp: 57043 (WebCore::Document::parentDocument): 57044 57045 2010-09-09 Darin Adler <darin (a] apple.com> 57046 57047 Reviewed by Adam Barth. 57048 57049 Move functions from Frame to SelectionController as planned 57050 https://bugs.webkit.org/show_bug.cgi?id=45508 57051 57052 Also removed Frame::dragCaretController since it just called Page::dragCaretController. 57053 57054 * editing/SelectionController.cpp: 57055 (WebCore::SelectionController::setSelection): 57056 (WebCore::SelectionController::modify): 57057 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected): 57058 (WebCore::SelectionController::selectAll): 57059 (WebCore::SelectionController::focusedOrActiveStateChanged): 57060 (WebCore::SelectionController::notifyRendererOfSelectionChange): 57061 (WebCore::isFrameElement): 57062 (WebCore::SelectionController::setFocusedNodeIfNeeded): 57063 (WebCore::SelectionController::paintDragCaret): 57064 (WebCore::SelectionController::shouldDeleteSelection): 57065 (WebCore::SelectionController::selectionBounds): 57066 (WebCore::SelectionController::selectionTextRects): 57067 (WebCore::scanForForm): 57068 (WebCore::SelectionController::currentForm): 57069 (WebCore::SelectionController::revealSelection): 57070 (WebCore::SelectionController::setSelectionFromNone): 57071 (WebCore::SelectionController::shouldChangeSelection): 57072 * editing/SelectionController.h: 57073 Moved functions here from Frame. 57074 57075 * page/Frame.cpp: 57076 * page/Frame.h: 57077 Moved functions to SelectionController. 57078 Reorganized header to be easier to read and a bit more logical. 57079 57080 * WebCore.exp.in: Updated. 57081 57082 * dom/Document.cpp: 57083 (WebCore::Document::nodeChildrenWillBeRemoved): 57084 (WebCore::Document::nodeWillBeRemoved): 57085 Call Page::dragCaretController directly. 57086 57087 * dom/Element.cpp: 57088 (WebCore::Element::updateFocusAppearance): 57089 * dom/InputElement.cpp: 57090 (WebCore::InputElement::updateFocusAppearance): 57091 * editing/ApplyStyleCommand.cpp: 57092 (WebCore::ApplyStyleCommand::editingStyleAtPosition): 57093 * editing/DeleteSelectionCommand.cpp: 57094 (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): 57095 * editing/Editor.cpp: 57096 (WebCore::Editor::canSmartCopyOrDelete): 57097 (WebCore::Editor::textDirectionForSelection): 57098 (WebCore::Editor::appliedEditing): 57099 (WebCore::Editor::insertTextWithoutSendingTextEvent): 57100 (WebCore::Editor::advanceToNextMisspelling): 57101 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 57102 (WebCore::Editor::revealSelectionAfterEditingOperation): 57103 (WebCore::Editor::transpose): 57104 (WebCore::Editor::changeSelectionAfterCommand): 57105 (WebCore::Editor::computeAndSetTypingStyle): 57106 (WebCore::Editor::selectionComputedStyle): 57107 (WebCore::Editor::styleForSelectionStart): 57108 (WebCore::Editor::findString): 57109 * editing/EditorCommand.cpp: 57110 (WebCore::executeDelete): 57111 * editing/InsertLineBreakCommand.cpp: 57112 (WebCore::InsertLineBreakCommand::doApply): 57113 * editing/InsertTextCommand.cpp: 57114 (WebCore::InsertTextCommand::input): 57115 * editing/RemoveFormatCommand.cpp: 57116 (WebCore::RemoveFormatCommand::doApply): 57117 * editing/ReplaceSelectionCommand.cpp: 57118 (WebCore::ReplaceSelectionCommand::doApply): 57119 * editing/TypingCommand.cpp: 57120 (WebCore::TypingCommand::insertTextRunWithoutNewlines): 57121 (WebCore::TypingCommand::deleteKeyPressed): 57122 (WebCore::TypingCommand::forwardDeleteKeyPressed): 57123 * html/HTMLTextAreaElement.cpp: 57124 (WebCore::HTMLTextAreaElement::updateFocusAppearance): 57125 * page/ContextMenuController.cpp: 57126 (WebCore::ContextMenuController::contextMenuItemSelected): 57127 * page/DragController.cpp: 57128 (WebCore::DragController::concludeEditDrag): 57129 (WebCore::dragLocForSelectionDrag): 57130 * page/EventHandler.cpp: 57131 (WebCore::EventHandler::selectClosestWordFromMouseEvent): 57132 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): 57133 (WebCore::EventHandler::handleMousePressEventTripleClick): 57134 (WebCore::EventHandler::handleMousePressEventSingleClick): 57135 (WebCore::EventHandler::updateSelectionForMouseDrag): 57136 (WebCore::EventHandler::handleMouseReleaseEvent): 57137 * page/FocusController.cpp: 57138 (WebCore::FocusController::advanceFocusInDocumentOrder): 57139 * page/chromium/EventHandlerChromium.cpp: 57140 (WebCore::EventHandler::passMousePressEventToSubframe): 57141 * page/chromium/FrameChromium.cpp: 57142 (WebCore::Frame::dragImageForSelection): 57143 * page/mac/FrameMac.mm: 57144 (WebCore::Frame::selectionImage): 57145 * platform/mac/ClipboardMac.mm: 57146 (WebCore::ClipboardMac::writeRange): 57147 * rendering/RenderBlock.cpp: 57148 (WebCore::RenderBlock::paintCaret): 57149 Call functions on selection(). 57150 57151 2010-09-10 Justin Schuh <jschuh (a] chromium.org> 57152 57153 Reviewed by Darin Adler. 57154 57155 SVGGElement::rendererIsNeeded should return false when parent isn't SVG 57156 https://bugs.webkit.org/show_bug.cgi?id=45562 57157 57158 Test: svg/custom/g-outside-svg.html 57159 57160 * svg/SVGGElement.cpp: 57161 (WebCore::SVGGElement::rendererIsNeeded): 57162 * svg/SVGGElement.h: 57163 57164 2010-09-10 Adam Barth <abarth (a] webkit.org> 57165 57166 Reviewed by Darin Adler. 57167 57168 REGRESSION (HTML Parser): CNN's Money site is not formatted correctly with AdBlock installed 57169 https://bugs.webkit.org/show_bug.cgi?id=41371 57170 57171 Drop support for closing comments with "-- >". This was an attempt to 57172 be more IE-like in comment parsing, but it turns out to cause problems 57173 for some high-profile sites. Firefox 4 is dropping support as well. 57174 We expect the spec to change soon too. 57175 57176 * html/parser/HTMLTokenizer.cpp: 57177 (WebCore::HTMLTokenizer::nextToken): 57178 * html/parser/HTMLTokenizer.h: 57179 57180 2010-09-10 Chris Marrin <cmarrin (a] apple.com> 57181 57182 Unreviewed. 57183 57184 Adding file that should have been in http://trac.webkit.org/changeset/67226 but 57185 I forgot to svn add. 57186 57187 * platform/graphics/opengl: Added. 57188 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm. 57189 57190 2010-09-10 Paul Sawaya <psawaya (a] apple.com> 57191 57192 Reviewed by Chris Marrin. 57193 57194 Refactored non-Mac specific code into GraphicsContext3DOpenGL. 57195 57196 Moving this file into platform/graphics/opengl and only building on Mac for now. 57197 57198 https://bugs.webkit.org/show_bug.cgi?id=30625 57199 57200 * WebCore.xcodeproj/project.pbxproj: 57201 * platform/graphics/mac/GraphicsContext3DMac.mm: 57202 (WebCore::GraphicsContext3D::makeContextCurrent): 57203 (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses): 57204 * platform/graphics/opengl: Added. 57205 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm. 57206 (WebCore::GraphicsContext3D::prepareTexture): 57207 (WebCore::GraphicsContext3D::activeTexture): 57208 (WebCore::GraphicsContext3D::attachShader): 57209 (WebCore::GraphicsContext3D::bindAttribLocation): 57210 (WebCore::GraphicsContext3D::bindBuffer): 57211 (WebCore::GraphicsContext3D::bindFramebuffer): 57212 (WebCore::GraphicsContext3D::bindRenderbuffer): 57213 (WebCore::GraphicsContext3D::bindTexture): 57214 (WebCore::GraphicsContext3D::blendColor): 57215 (WebCore::GraphicsContext3D::blendEquation): 57216 (WebCore::GraphicsContext3D::blendEquationSeparate): 57217 (WebCore::GraphicsContext3D::blendFunc): 57218 (WebCore::GraphicsContext3D::blendFuncSeparate): 57219 (WebCore::GraphicsContext3D::bufferData): 57220 (WebCore::GraphicsContext3D::bufferSubData): 57221 (WebCore::GraphicsContext3D::checkFramebufferStatus): 57222 (WebCore::GraphicsContext3D::clearColor): 57223 (WebCore::GraphicsContext3D::clear): 57224 (WebCore::GraphicsContext3D::clearDepth): 57225 (WebCore::GraphicsContext3D::clearStencil): 57226 (WebCore::GraphicsContext3D::colorMask): 57227 (WebCore::GraphicsContext3D::compileShader): 57228 (WebCore::GraphicsContext3D::copyTexImage2D): 57229 (WebCore::GraphicsContext3D::copyTexSubImage2D): 57230 (WebCore::GraphicsContext3D::cullFace): 57231 (WebCore::GraphicsContext3D::depthFunc): 57232 (WebCore::GraphicsContext3D::depthMask): 57233 (WebCore::GraphicsContext3D::depthRange): 57234 (WebCore::GraphicsContext3D::detachShader): 57235 (WebCore::GraphicsContext3D::disable): 57236 (WebCore::GraphicsContext3D::disableVertexAttribArray): 57237 (WebCore::GraphicsContext3D::drawArrays): 57238 (WebCore::GraphicsContext3D::drawElements): 57239 (WebCore::GraphicsContext3D::enable): 57240 (WebCore::GraphicsContext3D::enableVertexAttribArray): 57241 (WebCore::GraphicsContext3D::finish): 57242 (WebCore::GraphicsContext3D::flush): 57243 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 57244 (WebCore::GraphicsContext3D::framebufferTexture2D): 57245 (WebCore::GraphicsContext3D::frontFace): 57246 (WebCore::GraphicsContext3D::generateMipmap): 57247 (WebCore::GraphicsContext3D::getActiveAttrib): 57248 (WebCore::GraphicsContext3D::getActiveUniform): 57249 (WebCore::GraphicsContext3D::getAttachedShaders): 57250 (WebCore::GraphicsContext3D::getAttribLocation): 57251 (WebCore::GraphicsContext3D::getError): 57252 (WebCore::GraphicsContext3D::getString): 57253 (WebCore::GraphicsContext3D::hint): 57254 (WebCore::GraphicsContext3D::isBuffer): 57255 (WebCore::GraphicsContext3D::isEnabled): 57256 (WebCore::GraphicsContext3D::isFramebuffer): 57257 (WebCore::GraphicsContext3D::isProgram): 57258 (WebCore::GraphicsContext3D::isRenderbuffer): 57259 (WebCore::GraphicsContext3D::isShader): 57260 (WebCore::GraphicsContext3D::isTexture): 57261 (WebCore::GraphicsContext3D::lineWidth): 57262 (WebCore::GraphicsContext3D::linkProgram): 57263 (WebCore::GraphicsContext3D::pixelStorei): 57264 (WebCore::GraphicsContext3D::polygonOffset): 57265 (WebCore::GraphicsContext3D::readPixels): 57266 (WebCore::GraphicsContext3D::releaseShaderCompiler): 57267 (WebCore::GraphicsContext3D::renderbufferStorage): 57268 (WebCore::GraphicsContext3D::sampleCoverage): 57269 (WebCore::GraphicsContext3D::scissor): 57270 (WebCore::GraphicsContext3D::shaderSource): 57271 (WebCore::GraphicsContext3D::stencilFunc): 57272 (WebCore::GraphicsContext3D::stencilFuncSeparate): 57273 (WebCore::GraphicsContext3D::stencilMask): 57274 (WebCore::GraphicsContext3D::stencilMaskSeparate): 57275 (WebCore::GraphicsContext3D::stencilOp): 57276 (WebCore::GraphicsContext3D::stencilOpSeparate): 57277 (WebCore::GraphicsContext3D::texParameterf): 57278 (WebCore::GraphicsContext3D::texParameteri): 57279 (WebCore::GraphicsContext3D::uniform1f): 57280 (WebCore::GraphicsContext3D::uniform1fv): 57281 (WebCore::GraphicsContext3D::uniform2f): 57282 (WebCore::GraphicsContext3D::uniform2fv): 57283 (WebCore::GraphicsContext3D::uniform3f): 57284 (WebCore::GraphicsContext3D::uniform3fv): 57285 (WebCore::GraphicsContext3D::uniform4f): 57286 (WebCore::GraphicsContext3D::uniform4fv): 57287 (WebCore::GraphicsContext3D::uniform1i): 57288 (WebCore::GraphicsContext3D::uniform1iv): 57289 (WebCore::GraphicsContext3D::uniform2i): 57290 (WebCore::GraphicsContext3D::uniform2iv): 57291 (WebCore::GraphicsContext3D::uniform3i): 57292 (WebCore::GraphicsContext3D::uniform3iv): 57293 (WebCore::GraphicsContext3D::uniform4i): 57294 (WebCore::GraphicsContext3D::uniform4iv): 57295 (WebCore::GraphicsContext3D::uniformMatrix2fv): 57296 (WebCore::GraphicsContext3D::uniformMatrix3fv): 57297 (WebCore::GraphicsContext3D::uniformMatrix4fv): 57298 (WebCore::GraphicsContext3D::useProgram): 57299 (WebCore::GraphicsContext3D::validateProgram): 57300 (WebCore::GraphicsContext3D::vertexAttrib1f): 57301 (WebCore::GraphicsContext3D::vertexAttrib1fv): 57302 (WebCore::GraphicsContext3D::vertexAttrib2f): 57303 (WebCore::GraphicsContext3D::vertexAttrib2fv): 57304 (WebCore::GraphicsContext3D::vertexAttrib3f): 57305 (WebCore::GraphicsContext3D::vertexAttrib3fv): 57306 (WebCore::GraphicsContext3D::vertexAttrib4f): 57307 (WebCore::GraphicsContext3D::vertexAttrib4fv): 57308 (WebCore::GraphicsContext3D::vertexAttribPointer): 57309 (WebCore::GraphicsContext3D::viewport): 57310 (WebCore::GraphicsContext3D::getBooleanv): 57311 (WebCore::GraphicsContext3D::getBufferParameteriv): 57312 (WebCore::GraphicsContext3D::getFloatv): 57313 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv): 57314 (WebCore::GraphicsContext3D::getIntegerv): 57315 (WebCore::GraphicsContext3D::getProgramiv): 57316 (WebCore::GraphicsContext3D::getProgramInfoLog): 57317 (WebCore::GraphicsContext3D::getRenderbufferParameteriv): 57318 (WebCore::GraphicsContext3D::getShaderiv): 57319 (WebCore::GraphicsContext3D::getShaderInfoLog): 57320 (WebCore::GraphicsContext3D::getShaderSource): 57321 (WebCore::GraphicsContext3D::getTexParameterfv): 57322 (WebCore::GraphicsContext3D::getTexParameteriv): 57323 (WebCore::GraphicsContext3D::getUniformfv): 57324 (WebCore::GraphicsContext3D::getUniformiv): 57325 (WebCore::GraphicsContext3D::getUniformLocation): 57326 (WebCore::GraphicsContext3D::getVertexAttribfv): 57327 (WebCore::GraphicsContext3D::getVertexAttribiv): 57328 (WebCore::GraphicsContext3D::getVertexAttribOffset): 57329 (WebCore::GraphicsContext3D::texImage2D): 57330 (WebCore::GraphicsContext3D::texSubImage2D): 57331 (WebCore::GraphicsContext3D::createBuffer): 57332 (WebCore::GraphicsContext3D::createFramebuffer): 57333 (WebCore::GraphicsContext3D::createProgram): 57334 (WebCore::GraphicsContext3D::createRenderbuffer): 57335 (WebCore::GraphicsContext3D::createShader): 57336 (WebCore::GraphicsContext3D::createTexture): 57337 (WebCore::GraphicsContext3D::deleteBuffer): 57338 (WebCore::GraphicsContext3D::deleteFramebuffer): 57339 (WebCore::GraphicsContext3D::deleteProgram): 57340 (WebCore::GraphicsContext3D::deleteRenderbuffer): 57341 (WebCore::GraphicsContext3D::deleteShader): 57342 (WebCore::GraphicsContext3D::deleteTexture): 57343 57344 2010-09-10 Oliver Hunt <oliver (a] apple.com> 57345 57346 Qt build fix. 57347 57348 * bindings/js/SerializedScriptValue.cpp: 57349 (WebCore::CloneDeserializer::deserialize): 57350 57351 2010-09-10 Adam Barth <abarth (a] webkit.org> 57352 57353 Reviewed by Darin Adler. 57354 57355 Remove useless FrameLoader method 57356 https://bugs.webkit.org/show_bug.cgi?id=45492 57357 57358 This method has one caller, and that caller already has a more direct 57359 way of accessing the correct DocumentLoader. 57360 57361 * loader/FrameLoader.cpp: 57362 * loader/FrameLoader.h: 57363 * loader/MainResourceLoader.cpp: 57364 (WebCore::MainResourceLoader::addData): 57365 57366 2010-09-10 Adam Barth <abarth (a] webkit.org> 57367 57368 Reviewed by Eric Seidel. 57369 57370 Main resource bytes shouldn't bounce through FrameLoader 57371 https://bugs.webkit.org/show_bug.cgi?id=45496 57372 57373 After the MainResourceLoader hands the bytes for the main resource to 57374 the DocumentLoader, the DocumentLoader hands the bytes to the 57375 FrameLoaderClient. The FrameLoaderClient, in turn, returns the bytes 57376 to WebCore. Prior to this patch, the FrameLoaderClient returned the 57377 bytes to the FrameLoader. However, the FrameLoader was actually adding 57378 any value. 57379 57380 In this patch, we change the FrameLoaderClient to return the bytes to 57381 the DocumentLoader directly. In a future patch, we'll cut out the 57382 FrameLoaderClient middleman and handle the bytes internally in the 57383 DocumentLoader. 57384 57385 * WebCore.exp.in: 57386 * loader/DocumentLoader.cpp: 57387 (WebCore::DocumentLoader::addData): 57388 * loader/DocumentLoader.h: 57389 * loader/FrameLoader.cpp: 57390 (WebCore::FrameLoader::finishedLoadingDocument): 57391 * loader/FrameLoader.h: 57392 57393 2010-09-10 Oliver Hunt <oliver (a] apple.com> 57394 57395 Reviewed by Darin Adler. 57396 57397 Speed up deserialisation of strings 57398 https://bugs.webkit.org/show_bug.cgi?id=45555 57399 57400 Rather than building a list of Identifiers for the string pool 57401 we now build a list of a tuple of UString and JSString*. This 57402 doesn't hurt the property name case as ustring->identifier conversion 57403 is essentially free if the ustring has already been converted to 57404 an Identifier, but saves an unnecessary Identifier creation for 57405 strings we only ever use to create JSStrings. We also reduce 57406 GC pressure for duplicate strings by caching the JSStrings. 57407 57408 * bindings/js/SerializedScriptValue.cpp: 57409 (WebCore::CloneDeserializer::CachedString::CachedString): 57410 (WebCore::CloneDeserializer::CachedString::jsString): 57411 (WebCore::CloneDeserializer::CachedString::ustring): 57412 (WebCore::CloneDeserializer::readStringData): 57413 (WebCore::CloneDeserializer::putProperty): 57414 (WebCore::CloneDeserializer::readFile): 57415 (WebCore::CloneDeserializer::readTerminal): 57416 (WebCore::CloneDeserializer::deserialize): 57417 57418 2010-09-10 Ryosuke Niwa <rniwa (a] webkit.org> 57419 57420 Reviewed by Antonio Gomes. 57421 57422 REGRESSION(r67176): editing/selection/doubleclick-inline-first-last-contenteditable.html crashes 57423 https://bugs.webkit.org/show_bug.cgi?id=45525 57424 57425 The crash was caused by ancestorToRetainStructureAndAppearance not taking into consideration 57426 the case where there is no common block ancestor. Fixed this by adding a null check. 57427 57428 Test: editing/pasteboard/copy-without-common-block-crash.html 57429 57430 * editing/markup.cpp: 57431 (WebCore::ancestorToRetainStructureAndAppearance): Added a null check. 57432 57433 2010-09-09 Kinuko Yasuda <kinuko (a] chromium.org> 57434 57435 Reviewed by Dumitru Daniliuc. 57436 57437 [FileSystem] Do not call EntriesCallback more than once if there're no entries. 57438 https://bugs.webkit.org/show_bug.cgi?id=45498 57439 57440 No new tests, layout-tests that confirm the behavior will be added in later patches. 57441 57442 * fileapi/FileSystemCallbacks.cpp: 57443 (WebCore::EntriesCallbacks::EntriesCallbacks): 57444 (WebCore::EntriesCallbacks::didReadDirectoryEntry): 57445 (WebCore::EntriesCallbacks::didReadDirectoryEntries): 57446 57447 2010-09-10 Patrick Gansterer <paroga (a] paroga.com> 57448 57449 Reviewed by Darin Adler. 57450 57451 Use String::fromUTF8 instead of UTF8Encoding().decode 57452 in the libxml XMLDocumentParser 57453 https://bugs.webkit.org/show_bug.cgi?id=45488 57454 57455 * dom/XMLDocumentParserLibxml2.cpp: 57456 (WebCore::toString): 57457 57458 2010-09-10 Chris Fleizach <cfleizach (a] apple.com> 57459 57460 Reviewed by David Kilzer. 57461 57462 AX: accessibility not returning strings when visibility is hidden 57463 https://bugs.webkit.org/show_bug.cgi?id=45116 57464 57465 AX code uses plainText() in TextIterator to get the text for a node. 57466 However, when that node is not visible, no text is returned because TextIterator ignores 57467 clipped nodes and other hidden elements. 57468 57469 Solution is to add a new text iterator behavior for ignoring style visiblity. This allows 57470 for text to allows be returned for accessibility purposes. 57471 57472 Test: platform/mac/accessibility/clipped-text-under-element.html 57473 57474 * WebCore.exp.in: 57475 * accessibility/AccessibilityRenderObject.cpp: 57476 (WebCore::AccessibilityRenderObject::textUnderElement): 57477 (WebCore::AccessibilityRenderObject::stringValue): 57478 Use the new flag for plainText 57479 * editing/TextIterator.cpp: 57480 (WebCore::TextIterator::TextIterator): 57481 (WebCore::TextIterator::handleTextNode): 57482 (WebCore::TextIterator::handleTextBox): 57483 (WebCore::TextIterator::handleTextNodeFirstLetter): 57484 (WebCore::TextIterator::handleReplacedElement): 57485 Use the new flag to NOT skip hidden elements. 57486 (WebCore::plainTextToMallocAllocatedBuffer): 57487 (WebCore::plainText): 57488 * editing/TextIterator.h: 57489 Add the new text iterator behavior. 57490 57491 2010-09-10 Chris Fleizach <cfleizach (a] apple.com> 57492 57493 Reviewed by David Kilzer. 57494 57495 Mail crashes with searching for next misspelled word with VoiceOver 57496 https://bugs.webkit.org/show_bug.cgi?id=45501 57497 57498 Test: platform/mac/accessibility/crash-in-element-for-text-marker.html 57499 57500 * accessibility/mac/AccessibilityObjectWrapper.mm: 57501 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 57502 Check that the AX object is not nil before asking for the wrapper(). 57503 57504 2010-09-10 Michael Nordman <michaeln (a] google.com> 57505 57506 Reviewed by Dumitru Daniliuc. 57507 57508 Decouple Blob from ScriptExecutionContext. 57509 https://bugs.webkit.org/show_bug.cgi?id=45410 57510 57511 - Removed ScriptExecutionContext pointers from Blob and File constructors. 57512 - Removed ScriptExecutionContext's collection of Blobs instance in that context. 57513 - Refactored BlobURL to make a distinction between 'public' blob urls and 'internal' 57514 urls that are used solely as identifiers. The former requires a SecurityOrigin to 57515 to manufacture, the latter does not. 57516 - Added a constant and accessor for the blob protocol scheme on the BlobURL class. 57517 57518 No new tests are added since this is a cleanup. 57519 57520 * bindings/js/SerializedScriptValue.cpp: 57521 (WebCore::CloneDeserializer::readFile): 57522 (WebCore::CloneDeserializer::readTerminal): 57523 * bindings/v8/SerializedScriptValue.cpp: 57524 (WebCore::ZigZag::Reader::readBlob): 57525 (WebCore::ZigZag::Reader::readFile): 57526 (WebCore::ZigZag::Reader::readFileList): 57527 * dom/ScriptExecutionContext.cpp: 57528 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 57529 (WebCore::ScriptExecutionContext::createPublicBlobURL): 57530 (WebCore::ScriptExecutionContext::revokePublicBlobURL): 57531 * dom/ScriptExecutionContext.h: 57532 * fileapi/Blob.cpp: 57533 (WebCore::Blob::Blob): 57534 (WebCore::Blob::~Blob): 57535 (WebCore::Blob::slice): 57536 * fileapi/Blob.h: 57537 (WebCore::Blob::create): 57538 (WebCore::Blob::url): 57539 * fileapi/Blob.idl: 57540 * fileapi/BlobBuilder.cpp: 57541 (WebCore::BlobBuilder::getBlob): 57542 * fileapi/BlobBuilder.h: 57543 * fileapi/BlobBuilder.idl: 57544 * fileapi/BlobURL.cpp: 57545 (WebCore::BlobURL::createPublicURL): 57546 (WebCore::BlobURL::createInternalURL): 57547 (WebCore::BlobURL::getOrigin): 57548 (WebCore::BlobURL::getIdentifier): 57549 (WebCore::BlobURL::createBlobURL): 57550 * fileapi/BlobURL.h: 57551 (WebCore::BlobURL::blobProtocol): 57552 (WebCore::BlobURL::BlobURL): 57553 * fileapi/File.cpp: 57554 (WebCore::File::File): 57555 * fileapi/File.h: 57556 (WebCore::File::create): 57557 * fileapi/FileReader.cpp: Register a public url to perform the read. 57558 (WebCore::FileReader::cleanup): 57559 (WebCore::FileReader::start): 57560 (WebCore::FileReader::didFinishLoading): 57561 (WebCore::FileReader::failed): 57562 * fileapi/FileReader.h: Added m_urlForReading data member. 57563 * fileapi/FileReaderSync.cpp: 57564 (WebCore::FileReaderSync::read): Register a public url to perform the read. 57565 * fileapi/ThreadableBlobRegistry.cpp: 57566 (WebCore::ThreadableBlobRegistry::registerBlobURL): 57567 (WebCore::ThreadableBlobRegistry::unregisterBlobURL): 57568 * fileapi/ThreadableBlobRegistry.h: 57569 * html/HTMLInputElement.cpp: 57570 (WebCore::HTMLInputElement::appendFormData): 57571 (WebCore::HTMLInputElement::setFileListFromRenderer): 57572 * page/SecurityOrigin.cpp: Use BlobURL.blobProtocol(). 57573 (WebCore::SecurityOrigin::create): 57574 (WebCore::SecurityOrigin::canRequest): 57575 (WebCore::SecurityOrigin::canDisplay): 57576 * platform/chromium/ClipboardChromium.cpp: 57577 (WebCore::ClipboardChromium::files): 57578 * platform/gtk/ClipboardGtk.cpp: 57579 (WebCore::ClipboardGtk::files): 57580 * platform/mac/ClipboardMac.mm: 57581 (WebCore::ClipboardMac::files): 57582 * platform/win/ClipboardWin.cpp: 57583 (WebCore::ClipboardWin::files): 57584 57585 2010-09-10 Xan Lopez <xlopez (a] igalia.com> 57586 57587 Reviewed by Martin Robinson. 57588 57589 GDK_DISPLAY was removed in GTK+ 3.x, re-declare it when built 57590 against that. 57591 57592 * platform/gtk/GtkVersioning.h: 57593 57594 2010-09-10 Xan Lopez <xlopez (a] igalia.com> 57595 57596 Reviewed by Martin Robinson. 57597 57598 Fix compilation with GTK+ 3.x. 57599 57600 GDK key macros were renamed from GDK_FOO to GDK_KEY_FOO, we need 57601 to include the compat header provided if we want to keep using the 57602 old names. 57603 57604 * platform/gtk/GtkVersioning.h: add the compatibility header. 57605 * platform/gtk/KeyEventGtk.cpp: include GtkVersioning.h 57606 57607 2010-09-09 Tony Gentilcore <tonyg (a] chromium.org> 57608 57609 Reviewed by Eric Seidel. 57610 57611 Factor out the NestingLevelIncrementer 57612 https://bugs.webkit.org/show_bug.cgi?id=45471 57613 57614 No new tests because no new functionality. 57615 57616 * GNUmakefile.am: 57617 * WebCore.gypi: 57618 * WebCore.vcproj/WebCore.vcproj: 57619 * WebCore.xcodeproj/project.pbxproj: 57620 * html/parser/HTMLDocumentParser.cpp: 57621 * html/parser/HTMLDocumentParser.h: 57622 * html/parser/HTMLScriptRunner.cpp: 57623 * html/parser/NestingLevelIncrementer.h: Added. 57624 (WebCore::NestingLevelIncrementer::NestingLevelIncrementer): 57625 (WebCore::NestingLevelIncrementer::~NestingLevelIncrementer): 57626 57627 2010-09-10 Nikolas Zimmermann <nzimmermann (a] rim.com> 57628 57629 Reviewed by Dirk Schulze. 57630 57631 SVG text chunk concept needs to be integrated in the InlineBox structure 57632 https://bugs.webkit.org/show_bug.cgi?id=45533 57633 57634 Begin rewriting the SVG text layout code. As first step move the text chunk concept right into the inline box structure. 57635 This obsoletes the whole text chunk part concept (see SVGTextChunkLayoutInfo.h for details), and will soon simplify the 57636 whole layout code a lot. Previously we hacked around the fact that a single InlineTextBox could contain multiple text chunks 57637 For example: <text x="20 30 40">ABC</text> only led to the creation of one InlineTextBox containing three chunks. When 57638 painting such an InlineTextBox, we had to do nasty hacks (same for text selection etc.) 57639 57640 This is finally fixed by incorporating the knownledge about text chunks into the line layout algorithm. 57641 Note, this has no impact on HTML at all, no worries. 57642 57643 It's even required to do it this way as BiDi reordering shouldn't happen across text chunks. 57644 These are only the first bits, and currently slows down text layouting. Follow-up patches will remove the old layout 57645 algorithm, and will rely on the stored SVGTextLayoutAttributes in the RenerSVGInlineText renderers (instead of computing again). 57646 57647 * Android.mk: Add rendering/svg/SVGTextLayoutAttributes.* & rendering/svg/SVGTextLayoutBuilder.* to build. 57648 * CMakeLists.txt: Ditto. 57649 * GNUmakefile.am: Ditto. 57650 * WebCore.gyp/WebCore.gyp: Ditto. 57651 * WebCore.gypi: Ditto. 57652 * WebCore.pro: Ditto. 57653 * WebCore.vcproj/WebCore.vcproj: Ditto. 57654 * WebCore.vcproj/WebCoreCommon.vsprops: Ditto. (Recognize new rendering/svg directory.) 57655 * WebCore.vcproj/copyForwardingHeaders.cmd: Ditto. (Copy forwarding headers from rendering/svg directory.) 57656 * WebCore.xcodeproj/project.pbxproj: Ditto. 57657 * rendering/RenderBlockLineLayout.cpp: This is the key of the new concept, take text chunks into account when building the InlineBox structure. 57658 (WebCore::RenderBlock::findNextLineBreak): Split midpointState, if we encounter the beginning of a new text chunk. 57659 * rendering/RenderObject.h: 57660 (WebCore::RenderObject::isSVGInline): New method, which will be used to identify RenderSVGInline objects. 57661 * rendering/RenderSVGInline.h: 57662 (WebCore::RenderSVGInline::isSVGInline): Return true. 57663 * rendering/RenderSVGInlineText.cpp: 57664 (WebCore::RenderSVGInlineText::linesBoundingBox): Overriden, to simplify the calculations for SVG. 57665 (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Determines wheter the given position starts a new text chunk. 57666 * rendering/RenderSVGInlineText.h: 57667 (WebCore::RenderSVGInlineText::storeLayoutAttributes): Stores the layout attributes calculated in the text layout process (will be used everywhere in follow-up patches). 57668 * rendering/RenderSVGText.cpp: 57669 (WebCore::RenderSVGText::layout): Invoke SVGTextLayoutBuilder before creating the inline box tree, so we can decide which characters start new text chunks. 57670 * rendering/RenderText.h: Made linesBoundingBox() virtual so RenderSVGInlineText can override it. 57671 * rendering/svg: Added. 57672 * rendering/svg/SVGTextLayoutAttributes.cpp: Added. Holds x/y/dx/dy/rotate values and all kerning/ligature information used during layout. 57673 * rendering/svg/SVGTextLayoutAttributes.h: Added. 57674 * rendering/svg/SVGTextLayoutBuilder.cpp: Added. 57675 * rendering/svg/SVGTextLayoutBuilder.h: Added. 57676 57677 2010-09-10 Csaba Osztrogonc <ossy (a] webkit.org> 57678 57679 Unreviewed fix after r67085. 57680 57681 * WebCore.pro: Fix previously moved filenames. 57682 57683 2010-09-10 Adam Barth <abarth (a] webkit.org> 57684 57685 Reviewed by Eric Seidel. 57686 57687 Inline FrameLoader::committedLoad into its one caller 57688 https://bugs.webkit.org/show_bug.cgi?id=45481 57689 57690 This saves one round-trip through the FrameLoader when loading 57691 documents. 57692 57693 * loader/DocumentLoader.cpp: 57694 (WebCore::DocumentLoader::commitLoad): 57695 * loader/FrameLoader.cpp: 57696 * loader/FrameLoader.h: 57697 57698 2010-09-10 Patrick Gansterer <paroga (a] paroga.com> 57699 57700 Reviewed by Adam Roben. 57701 57702 [WINCE] Remove ImageBuffer::toDataURL implementation 57703 https://bugs.webkit.org/show_bug.cgi?id=45478 57704 57705 At the moment ImageBuffer::toDataURL uses JPEGEncoder.h and PNGEncoder.h. 57706 Both files are not in the repository. So remove the implementation for now. 57707 57708 * platform/graphics/wince/ImageBufferWince.cpp: 57709 (WebCore::ImageBuffer::toDataURL): 57710 57711 2010-09-10 Andreas Kling <andreas.kling (a] nokia.com> 57712 57713 Reviewed by Antonio Gomes. 57714 57715 WebGL: Fix GCC warnings about suggested parentheses around && within || 57716 https://bugs.webkit.org/show_bug.cgi?id=45534 57717 57718 * html/canvas/WebGLRenderingContext.cpp: 57719 (WebCore::WebGLRenderingContext::getVertexAttrib): 57720 (WebCore::WebGLRenderingContext::readPixels): 57721 (WebCore::WebGLRenderingContext::texParameter): 57722 (WebCore::WebGLRenderingContext::handleNPOTTextures): 57723 57724 2010-09-09 Alexander Pavlov <apavlov (a] chromium.org> 57725 57726 Reviewed by Yury Semikhatsky. 57727 57728 Web Inspector: Add navigation items into the Elements panel context menu. 57729 57730 For all anchors that have the class of "webkit-html-resource-link" or "webkit-html-external-link", 57731 a custom context menu with the items "Open Link in New Window" (invokes InspectorBackend.openInInspectedWindow() with 57732 the related URL) and "Open Link in Resources Panel" (opens the related resource in the Resources panel) is shown 57733 (the latter item is displayed only if the corresponding resource is known to the Web Inspector). 57734 https://bugs.webkit.org/show_bug.cgi?id=34250 57735 57736 * English.lproj/localizedStrings.js: 57737 * inspector/front-end/ElementsPanel.js: 57738 (WebInspector.ElementsPanel.prototype.populateHrefContextMenu): 57739 * inspector/front-end/ElementsTreeOutline.js: 57740 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): 57741 (WebInspector.ElementsTreeElement.prototype._attributeHTML): 57742 * inspector/front-end/StylesSidebarPane.js: 57743 (WebInspector.StylesSidebarPane.prototype._contextMenuEventFired): 57744 * inspector/front-end/inspector.js: 57745 (WebInspector.openResource): 57746 (WebInspector.resourceURLForRelatedNode): 57747 57748 2010-09-10 Kwang Yul Seo <skyul (a] company100.net> 57749 57750 Reviewed by James Robinson. 57751 57752 Make sure skia is not Chromium specific 57753 https://bugs.webkit.org/show_bug.cgi?id=39672 57754 57755 Move Image::loadPlatformResource to platform/graphics/chromium/ImageChromium.cpp. 57756 Other ports can use ImageSkia.cpp. 57757 57758 No new tests because this is pure refacotring. 57759 57760 * WebCore.gyp/WebCore.gyp: 57761 * WebCore.gypi: 57762 * platform/graphics/chromium/ImageChromium.cpp: Added. 57763 (WebCore::Image::loadPlatformResource): 57764 * platform/graphics/skia/ImageSkia.cpp: 57765 57766 2010-09-09 Ilya Tikhonovsky <loislo (a] chromium.org> 57767 57768 Reviewed by Joseph Pecoraro. 57769 57770 WebInspector: Selecting 'inspect element' always shows body in inspector instead of clicked element. 57771 57772 1. Open any page 57773 2. Right-click on any element, select "Inspect Element" 57774 3. Web Inspector is opened but the <body> element (for HTML) is focused rather than the selected element 57775 4. Inspect the Web Inspector. An error message is logged in the console. 57776 57777 The regression was introduced in http://trac.webkit.org/changeset/66012 - focusNode() is invoked in 57778 InspectorController::populateScriptObjects() before the main document is set for the InspectorDOMAgent 57779 instance (which makes focusNode() bail out prematurely). 57780 57781 https://bugs.webkit.org/show_bug.cgi?id=45374 57782 57783 * inspector/InspectorController.cpp: 57784 (WebCore::InspectorController::populateScriptObjects): 57785 57786 2010-09-10 Cris Neckar <cdn (a] chromium.org> 57787 57788 Reviewed by Chris Fleizach. 57789 57790 Null deref in RenderBlock::updateFirstLetter(). Check for null psuedo style. 57791 https://bugs.webkit.org/show_bug.cgi?id=45404 57792 57793 Test: fast/dom/firstletter-tablecell-crash.html 57794 57795 * rendering/RenderBlock.cpp: 57796 (WebCore::RenderBlock::updateFirstLetter): 57797 57798 2010-09-10 Cris Neckar <cdn (a] chromium.org> 57799 57800 Reviewed by Chris Fleizach. 57801 57802 Null deref in RenderBlock::findNextLineBreak(). Check for null style with 57803 first-line style and fixed position. 57804 https://bugs.webkit.org/show_bug.cgi?id=45350 57805 57806 Test: fast/dom/firstline-fixed-crash.html 57807 57808 * rendering/RenderBlockLineLayout.cpp: 57809 (WebCore::RenderBlock::findNextLineBreak): 57810 57811 2010-09-10 Eric Seidel <eric (a] webkit.org> 57812 57813 Reviewed by Dimitri Glazkov. 57814 57815 Remove support for non-lazy attach and fix frames to load from insertedIntoDocument instead of attach 57816 https://bugs.webkit.org/show_bug.cgi?id=45365 57817 57818 This change is the last piece of the puzzle which was preventing us from 57819 removing all eager-attach logic and moving WebCore to using an entirely 57820 recalcStyle-driven, on-demand renderer creation system, instead of every 57821 element being synchronously attached during parsing, regardless of whether 57822 it was ever going to be displayed or not. 57823 57824 This does not change the places we call lazyAttach vs. attach. This only 57825 changes the behavior of frame/plugin elements when lazyAttach is called. 57826 Previously lazyAttach would eager-attach those elements (and their ancestors) 57827 because they were marked as canLazyAttach() { return false; }. 57828 57829 This is a very tricky change, please review carefully. 57830 57831 Mostly I'm moving logic which used to be in attach() into 57832 insertedIntoDocument. Once it was there, there was no longer any reason 57833 why frame elements couldn't lazyAttach, thus removing the need 57834 for the non-lazy attach code path entirely. 57835 We've not yet converted all callsites over to using lazyAttach() instead 57836 of attach() however. 57837 57838 In order to move frame loading logic into insertedIntoDocument 57839 instead of attach, I needed to make sure that any javascript calls 57840 during the load would see an attached element. Thus I needed to mark 57841 the element as needing style resolve so that it would attach itself 57842 if needed. 57843 57844 I was not able to just call lazyAttach() from insertedIntoDocument directly 57845 due to two conflicting assumptions in the rendering tree: 57846 1. ContainerNode::attach() assumes its "safe" to call attach on all children 57847 without checking first if the child is already attached. This seems sane 57848 since its strange to think of a subtree as being attached w/o ancestors 57849 already being attached. Although it is a hard rule that subtrees may not 57850 have renderers w/o ancestors also having renderers, I do not believe it's 57851 a hard rule that subtrees may not be attached. Remember, attached() does 57852 not imply renderer()! It's possible ContainerNode::attach()'s assumption is wrong here. 57853 2. Node::attach() asserts !attached(). This makes sense and I would not 57854 want to remove this assert, however it means that if insertedIntoDocument 57855 were to call lazyAttach() (thus marking the element as attached()) then 57856 all callers would need to check if the element was already attached after 57857 insertedIntoDocument (called by appendChild, parserAppendChild, etc.) 57858 before calling attach or lazyAttach(). The following example: 57859 element.innerHTML = "<span><iframe></span>" is one case where this 57860 ASSERT would be hit if insertedIntoDocument called lazyAttach, since 57861 ContainerNode::attach() (called on the span by in appendChild(DocumentFragment) code) 57862 does not check if iframe is already attached. 57863 57864 Note: One subtle change here is that synchronous javascript which results 57865 from javascript: or beforeload is now run as part of insertedIntoDocument 57866 (thus any insert/append call *even* parserAddChild) instead of being 57867 run during attach (technically in the post-attach callbacks). 57868 57869 This is covered by numerous layout tests. 57870 57871 * dom/ContainerNode.cpp: 57872 (WebCore::willRemoveChild): 57873 (WebCore::willRemoveChildren): 57874 - Since insertedIntoDocument starts a load and yet does not mark the 57875 element as attached, we need to always call willRemove(). 57876 See note above as to why we don't just mark attached() in insertedIntoDocument. 57877 * dom/Node.cpp: 57878 (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc): 57879 - Share some code between lazyAttach and setNeedsStyleRecalc. 57880 (WebCore::Node::setNeedsStyleRecalc): 57881 - Use the new markAncestorsWithChildNeedsStyleRecalc 57882 (WebCore::Node::lazyAttach): 57883 - Remove the non-lazy code path, and use markAncestorsWithChildNeedsStyleRecalc. 57884 - Add an option to lazyAttach without marking attached(), used by HTMLFrameElementBase::insertedIntoDocument. 57885 * dom/Node.h: 57886 * html/HTMLFrameElementBase.cpp: 57887 - m_shouldOpenURLAfterAttach is no longer needed, yay! 57888 - m_checkAttachedTimer no longer has anything to do with attached(), so renamed it. 57889 I also documented that the newly named m_checkInDocumentTimer is all about the 57890 "magic iframe" performance quirk. (Which is actually speced in HTML5). 57891 I was initially baffled by this code, so I documented it. 57892 (WebCore::HTMLFrameElementBase::HTMLFrameElementBase) 57893 (WebCore::HTMLFrameElementBase::insertedIntoDocument): 57894 - This is the meat of this change, see discussion above. 57895 (WebCore::HTMLFrameElementBase::attach): 57896 - Code deleted or moved to insertedIntoDocument. 57897 (WebCore::HTMLFrameElementBase::width): 57898 - Fixed a bug in height()/width() which was probably causing crashes 57899 and was causing incorrect behavior after this change. 57900 renderBox() is not necessarily valid unless layout is up to date. 57901 Updating layout, can cause renderBox() to go invalid, thus this 57902 could have been a null-pointer crash. 57903 (WebCore::HTMLFrameElementBase::height): see width() 57904 (WebCore::HTMLFrameElementBase::setRemainsAliveOnRemovalFromTree): Timer rename. 57905 (WebCore::HTMLFrameElementBase::checkInDocumentTimerFired): Timer rename. 57906 * html/HTMLFrameElementBase.h: 57907 * html/HTMLFrameOwnerElement.cpp: 57908 (WebCore::HTMLFrameOwnerElement::willRemove): 57909 - Disconnecting the owner element removes the frame from the frame tree. 57910 frameDetached() calls Page::frameCount which expects that the frame is 57911 already gone at this point and asserts when it's not. It's unclear how 57912 this worked before, except that the frame removal was likely done in the 57913 post-attach callback, so the frameCount was wrong (too high) during 57914 frameDetached(), but was fixed up in the post-detach callback. 57915 * html/parser/HTMLConstructionSite.cpp: 57916 (WebCore::HTMLConstructionSite::attachAtSite): 57917 - Simplified this code, and added a check for the case when the node was already removed. 57918 Since the load logic is now run during insertedIntoDocument instead of attach(), 57919 synchronous javascript is now running during insertedIntoDocument and we need to 57920 make sure that the child is still in the tree. 57921 57922 2010-09-10 Dirk Pranke <dpranke (a] chromium.org> 57923 57924 Unreviewed, rolling out r67178. 57925 http://trac.webkit.org/changeset/67178 57926 https://bugs.webkit.org/show_bug.cgi?id=45524 57927 57928 re-roll-out patch to put original changes back in 57929 57930 * html/HTMLObjectElement.cpp: 57931 (WebCore::HTMLObjectElement::parametersForPlugin): 57932 (WebCore::HTMLObjectElement::updateWidget): 57933 * loader/SubframeLoader.cpp: 57934 (WebCore::SubframeLoader::resourceWillUsePlugin): 57935 * loader/SubframeLoader.h: 57936 57937 2010-09-10 Dirk Pranke <dpranke (a] chromium.org> 57938 57939 Reviewed by Kent Tamura. 57940 57941 roll out r66992 and r66997 - possibly introduced a perf slowdown in chromium tests 57942 https://bugs.webkit.org/show_bug.cgi?id=45524 57943 57944 * html/HTMLObjectElement.cpp: 57945 (WebCore::HTMLObjectElement::parametersForPlugin): 57946 (WebCore::HTMLObjectElement::updateWidget): 57947 * loader/SubframeLoader.cpp: 57948 (WebCore::SubframeLoader::requestFrame): 57949 * loader/SubframeLoader.h: 57950 57951 2010-09-10 Ryosuke Niwa <rniwa (a] webkit.org> 57952 57953 Reviewed by Tony Chang. 57954 57955 Extract the code to find special ancestors in createMarkup into a function 57956 https://bugs.webkit.org/show_bug.cgi?id=45449 57957 57958 Extracted the code to find special common ancestors in createMarkup as highestAncestorToWrapMarkup. 57959 Also isolated the code to find ancestors required to retain structure and appearance into 57960 ancestorToRetainStructureAndAppearance. 57961 57962 No new tests are added since this is a cleanup. 57963 57964 * editing/markup.cpp: 57965 (WebCore::ancestorToRetainStructureAndAppearance): Added. 57966 (WebCore::propertyMissingOrEqualToNone): Moved. 57967 (WebCore::isElementPresentational): Moved. 57968 (WebCore::shouldIncludeWrapperForFullySelectedRoot): Added. isSpecialAncestorBlock is merged into this function. 57969 (WebCore::highestAncestorToWrapMarkup): Extracted from createMarkup. 57970 (WebCore::createMarkup): Calls highestAncestorToWrapMarkup. 57971 57972 2010-09-09 Adam Barth <abarth (a] webkit.org> 57973 57974 Reviewed by Dimitri Glazkov. 57975 57976 Spurious null check in MediaDocumentParser 57977 https://bugs.webkit.org/show_bug.cgi?id=45461 57978 57979 Trivial change. FrameLoader can never be null. 57980 57981 * html/MediaDocument.cpp: 57982 (WebCore::MediaDocumentParser::createDocumentStructure): 57983 57984 2010-09-09 Ryosuke Niwa <rniwa (a] webkit.org> 57985 57986 Reviewed by Eric Seidel. 57987 57988 REGRESSION: applying new font size causes font-size outside selection to change 57989 https://bugs.webkit.org/show_bug.cgi?id=45026 57990 57991 The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly. 57992 Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue 57993 which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement 57994 57995 Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were 57996 relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size 57997 to legacy font size by CSSStyleSelector::legacyFontSize. 57998 57999 Test: editing/style/push-down-font-styles.html 58000 58001 * editing/ApplyStyleCommand.cpp: 58002 (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above. 58003 (WebCore::stringToCSSValue): Converts string to CSSValue. 58004 (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue. 58005 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue. 58006 * css/CSSStyleSelector.h: Made fontSizeForKeyword public. 58007 58008 2010-09-09 Kent Tamura <tkent (a] chromium.org> 58009 58010 Unreviewed, build fix for Qt. 58011 58012 * css/CSSStyleSelector.cpp: 58013 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 58014 58015 2010-09-09 Dominic Cooney <dominicc (a] google.com> 58016 58017 Reviewed by Kent Tamura. 58018 58019 Moves location.replace bindings logic into bindings/generic and 58020 instantiates it for JSC and V8. 58021 58022 https://bugs.webkit.org/show_bug.cgi?id=44891 58023 58024 Covered by existing location.replace tests. 58025 58026 * GNUmakefile.am: 58027 * WebCore.gypi: 58028 * WebCore.pro: 58029 * WebCore.vcproj/WebCore.vcproj: 58030 * WebCore.vcproj/WebCoreCommon.vsprops: 58031 * WebCore.xcodeproj/project.pbxproj: 58032 * bindings/generic/BindingDOMWindow.h: 58033 * bindings/generic/BindingFrame.h: Added. 58034 (WebCore::::navigateIfAllowed): 58035 * bindings/generic/BindingLocation.h: Added. 58036 (WebCore::::replace): 58037 * bindings/generic/GenericBinding.h: 58038 (WebCore::completeURL): 58039 * bindings/js/JSBinding.h: Added. 58040 * bindings/js/JSBindingsAllInOne.cpp: 58041 * bindings/js/JSDOMBinding.cpp: 58042 (WebCore::shouldAllowNavigation): 58043 (WebCore::toLexicalFrame): 58044 (WebCore::toDynamicFrame): 58045 (WebCore::processingUserGesture): 58046 (WebCore::completeURL): 58047 * bindings/js/JSLocationCustom.cpp: 58048 (WebCore::navigateIfAllowed): 58049 (WebCore::JSLocation::replace): 58050 * bindings/js/specialization/JSBindingState.cpp: Added. 58051 (WebCore::::getActiveFrame): 58052 (WebCore::::getFirstFrame): 58053 (WebCore::::processingUserGesture): 58054 (WebCore::::allowsAccessFromFrame): 58055 * bindings/js/specialization/JSBindingState.h: Added. 58056 * bindings/v8/V8Binding.h: 58057 * bindings/v8/V8Utilities.cpp: 58058 (WebCore::completeURL): 58059 (WebCore::navigateIfAllowed): 58060 * bindings/v8/custom/V8LocationCustom.cpp: 58061 (WebCore::V8Location::replaceCallback): 58062 * bindings/v8/specialization/V8BindingState.cpp: 58063 (WebCore::::allowsAccessFromFrame): 58064 * bindings/v8/specialization/V8BindingState.h: 58065 58066 2010-09-09 Kent Tamura <tkent (a] chromium.org> 58067 58068 Reviewed by Dimitri Glazkov. 58069 58070 Apply :invalid CSS class to <input type=number> with an unacceptable value 58071 https://bugs.webkit.org/show_bug.cgi?id=45376 58072 58073 Apply :invalid CSS class to <input type=number> elements with an 58074 unacceptable value in order to tell users that a value is not 58075 valid. 58076 58077 Introducing Element::hasUnaccceptableValue(), and CSSStyleSelector 58078 applies :invalid to not only elements with !isValidFormControlElement() 58079 but also elements with hasUnaccceptableValue(). 58080 58081 HTMLInputElement and RenderTextControlSingleLine need some changes 58082 to update style and to avoid updating renderer value during style 58083 update. 58084 58085 Test: fast/forms/input-number-unacceptable-style.html 58086 58087 * css/CSSStyleSelector.cpp: 58088 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 58089 * dom/Element.h: 58090 (WebCore::Element::hasUnacceptableValue): 58091 * html/HTMLInputElement.cpp: 58092 (WebCore::HTMLInputElement::handleBlurEvent): 58093 (WebCore::HTMLInputElement::hasUnacceptableValue): 58094 * html/HTMLInputElement.h: 58095 * rendering/RenderTextControlSingleLine.cpp: 58096 (WebCore::RenderTextControlSingleLine::subtreeHasChanged): 58097 (WebCore::RenderTextControlSingleLine::updateFromElement): 58098 58099 2010-09-09 Kent Tamura <tkent (a] chromium.org> 58100 58101 Reviewed by Dimitri Glazkov. 58102 58103 <input type=number> should not have an invalid number as its value 58104 https://bugs.webkit.org/show_bug.cgi?id=43973 58105 58106 This change implements the value sanitization algorithm for 58107 type=number, and remove validity.typeMismatch support for 58108 type=number in order to improve HTML5 conformance. 58109 58110 HTMLInputElement::value for type=number always has a valid number 58111 string or an empty string. However, the input field for it, a 58112 RenderTextControlSingleLine, can have a non-number string. For 58113 example, '-' is a non-number string, but a user needs to type 58114 '-'. So, the string in the input field has never been committed to 58115 HTMLInputElement until the string becomes a valid number string. 58116 58117 This change is also a preparation of supporting localized 58118 numbers. A localized string in the input field would not be 58119 matched with HTMLInputElement::value. 58120 58121 Test: fast/forms/input-number-commit-valid-only.html 58122 58123 * dom/InputElement.h: Add isAcceptableValue() 58124 * html/HTMLInputElement.cpp: 58125 (WebCore::HTMLInputElement::handleBlurEvent): 58126 Set formControlValueMatchesRenderer false to clean an invalid value in the renderer. 58127 (WebCore::HTMLInputElement::isAcceptableValue): 58128 (WebCore::HTMLInputElement::sanitizeValue): 58129 * html/HTMLInputElement.h: 58130 * html/ValidityState.cpp: 58131 (WebCore::ValidityState::typeMismatch): Always returns false for type=number. 58132 * rendering/RenderTextControlSingleLine.cpp: 58133 (WebCore::RenderTextControlSingleLine::subtreeHasChanged): 58134 * wml/WMLInputElement.h: 58135 (WebCore::WMLInputElement::isAcceptableValue): 58136 58137 2010-09-09 Tony Gentilcore <tonyg (a] chromium.org> 58138 58139 Reviewed by Adam Barth. 58140 58141 Support <script async> as specified by HTML5 58142 https://bugs.webkit.org/show_bug.cgi?id=45310 58143 58144 Tests: fast/dom/HTMLScriptElement/async-inline-script.html 58145 fast/dom/HTMLScriptElement/async-onbeforeload.html 58146 fast/dom/HTMLScriptElement/async-write.html 58147 http/tests/misc/async-and-defer-script.html 58148 http/tests/misc/script-async.html 58149 58150 * dom/AsyncScriptRunner.cpp: 58151 (WebCore::AsyncScriptRunner::AsyncScriptRunner): 58152 (WebCore::AsyncScriptRunner::~AsyncScriptRunner): 58153 (WebCore::AsyncScriptRunner::executeScriptSoon): Increment the delay count when a task to execute scripts is queued up. 58154 (WebCore::AsyncScriptRunner::timerFired): decrementLoadEventDelayCount handles calling checkCompleted(). 58155 * dom/AsyncScriptRunner.h: 58156 (WebCore::AsyncScriptRunner::create): 58157 * dom/Document.cpp: 58158 (WebCore::Document::Document): 58159 * dom/ScriptElement.cpp: 58160 (WebCore::ScriptElement::insertedIntoDocument): Treats async scripts just like a dynamically inserted script element rather than a parser inserted one. 58161 * html/parser/HTMLScriptRunner.cpp: 58162 (WebCore::HTMLScriptRunner::runScript): 58163 58164 2010-09-09 Alexey Marinichev <amarinichev (a] chromium.org> 58165 58166 Reviewed by James Robinson. 58167 58168 [chromium] Disable subpixel rendering in Linux when GPU compositor is active 58169 https://bugs.webkit.org/show_bug.cgi?id=45087 58170 58171 This extends windows-only logic to chromium linux as well. 58172 58173 * platform/graphics/chromium/ContentLayerChromium.cpp: 58174 (WebCore::ContentLayerChromium::updateContents): 58175 * platform/graphics/chromium/FontLinux.cpp: 58176 (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active. 58177 (WebCore::Font::drawGlyphs): 58178 (WebCore::Font::drawComplexText): 58179 * platform/graphics/chromium/LayerRendererChromium.cpp: 58180 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 58181 * platform/graphics/chromium/VideoLayerChromium.cpp: 58182 (WebCore::VideoLayerChromium::updateContents): 58183 * platform/graphics/skia/ImageBufferSkia.cpp: 58184 (WebCore::ImageBuffer::ImageBuffer): 58185 (WebCore::ImageBuffer::clip): 58186 * platform/graphics/skia/PlatformContextSkia.cpp: 58187 Made setDrawingToImageBuffer and isDrawingToImageBuffer available to 58188 Linux; removed all #if OS(WINDOWS) || OS(LINUX). 58189 (WebCore::PlatformContextSkia::State::State): 58190 (WebCore::PlatformContextSkia::PlatformContextSkia): 58191 (WebCore::PlatformContextSkia::isDrawingToImageBuffer): 58192 (WebCore::PlatformContextSkia::save): 58193 (WebCore::PlatformContextSkia::beginLayerClippedToImage): 58194 (WebCore::PlatformContextSkia::restore): 58195 (WebCore::PlatformContextSkia::applyClipFromImage): 58196 * platform/graphics/skia/PlatformContextSkia.h: 58197 58198 2010-09-09 Kinuko Yasuda <kinuko (a] chromium.org> 58199 58200 Unreviewed, Windows build fix. 58201 58202 * WebCore.vcproj/WebCore.vcproj: 58203 58204 2010-09-09 Kinuko Yasuda <kinuko (a] chromium.org> 58205 58206 Reviewed by Jian Li. 58207 58208 [FileSystem] Add File and FileWriter accessor methods in FileEntry 58209 https://bugs.webkit.org/show_bug.cgi?id=45440 58210 58211 Adding file() and createWrite() methods in FileEntry. 58212 http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-fileentry-interface 58213 58214 No new tests; this patch doesn't have implementation yet. 58215 58216 * CMakeLists.txt: 58217 * DerivedSources.cpp: 58218 * DerivedSources.make: 58219 * GNUmakefile.am: 58220 * WebCore.gypi: 58221 * WebCore.pri: 58222 * WebCore.pro: 58223 * WebCore.vcproj/WebCore.vcproj: 58224 * WebCore.xcodeproj/project.pbxproj: 58225 * fileapi/FileEntry.cpp: 58226 (WebCore::FileEntry::createWriter): Added. 58227 (WebCore::FileEntry::file): Added. 58228 * fileapi/FileEntry.h: 58229 * fileapi/FileEntry.idl: 58230 * fileapi/FileCallback.h: Added. 58231 * fileapi/FileCallback.idl: Added. 58232 * fileapi/FileWriterCallback.h: Added. 58233 * fileapi/FileWriterCallback.idl: Added. 58234 58235 2010-09-09 Yuzo Fujishima <yuzo (a] google.com> 58236 58237 Reviewed by Darin Adler. 58238 58239 Fix for Bug 24742 - CSS tokenizer allows color in 6 hex digit notation to be followed by the next token without separation 58240 Stop checking in the flex definition the number of hexadecimal digits for a hex color. 58241 Instead, rely on the checking in Color::parseHexColor(). 58242 The resultant grammar is actually more close to the one in http://www.w3.org/TR/CSS21/grammar.html . 58243 58244 https://bugs.webkit.org/show_bug.cgi?id=24742 58245 58246 Test: fast/css/invalid-hex-color.html 58247 58248 * css/tokenizer.flex: 58249 58250 2010-09-09 Chris Rogers <crogers (a] google.com> 58251 58252 Reviewed by Kenneth Russell. 58253 58254 Add AudioSourceNode files 58255 https://bugs.webkit.org/show_bug.cgi?id=45010 58256 58257 No new tests since audio API is not yet implemented. 58258 58259 * webaudio/AudioSourceNode.h: Added. 58260 (WebCore::AudioSourceNode::AudioSourceNode): 58261 * webaudio/AudioSourceNode.idl: Added. 58262 58263 2010-09-09 James Robinson <jamesr (a] chromium.org> 58264 58265 Reviewed by Kenneth Russell. 58266 58267 [chromium] Don't call deleteTexture on a texture attached to an FBO that is not currently bound 58268 https://bugs.webkit.org/show_bug.cgi?id=45504 58269 58270 The OpenGL semantics for glDeleteTextures() are that if one of the specified texture is attached 58271 to the currently bound FBO, that FBO's color attachment is removed. However, if the specified 58272 texture is attached to a non-current FBO then OpenGL states explicitly that that FBO's color 58273 attachment is not cleared and that the texture stays alive even though its ID is no longer 58274 valid to use. This is not the behavior we want in DrawingBuffer - we actually want the 58275 texture to be immediately deleted. This patch makes sure the DrawingBuffer's FBO is bound 58276 before deleting its color attachment texture. 58277 58278 * platform/graphics/chromium/DrawingBufferChromium.cpp: 58279 (WebCore::DrawingBuffer::~DrawingBuffer): 58280 (WebCore::DrawingBuffer::reset): 58281 58282 2010-09-09 James Robinson <jamesr (a] chromium.org> 58283 58284 Reviewed by Kenneth Russell. 58285 58286 [chromium] Chromium mac build should exclude all Skia files in platform/graphics/skia/, not just some 58287 https://bugs.webkit.org/show_bug.cgi?id=45516 58288 58289 This excludes platform/graphics/skia/*Skia.(h|cpp) by pattern instead of individual files. 58290 None of these files should be compiled into the Chromium mac build and the old file list had 58291 both omissions and stale entries. 58292 58293 * WebCore.gyp/WebCore.gyp: 58294 58295 2010-09-09 Dirk Pranke <dpranke (a] chromium.org> 58296 58297 Unreviewed, rolling out r67145. 58298 http://trac.webkit.org/changeset/67145 58299 https://bugs.webkit.org/show_bug.cgi?id=45431 58300 58301 broke editing/inserting/5994480-2.html on Chromium Linux 58302 58303 * css/CSSStyleSelector.h: 58304 * editing/ApplyStyleCommand.cpp: 58305 (WebCore::StyleChange::init): 58306 (WebCore::StyleChange::extractTextStyles): 58307 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): 58308 58309 2010-09-09 Dumitru Daniliuc <dumi (a] chromium.org> 58310 58311 Reviewed by Alexey Proskuryakov. 58312 58313 Removing an obsolete comment. 58314 https://bugs.webkit.org/show_bug.cgi?id=40112 58315 58316 * bindings/generic/ActiveDOMCallback.cpp: 58317 58318 2010-09-09 James Robinson <jamesr (a] chromium.org> 58319 58320 Reviewed by Kenneth Russell. 58321 58322 [chromium] Clear only the uploaded portion of the software backing store when in mixed mode 58323 https://bugs.webkit.org/show_bug.cgi?id=45503 58324 58325 This clears out only the dirty region of the software backing store when uploading results 58326 to hardware rather than clearing out the entire software backing store. This is a significant 58327 performance improvement when the dirty rects are small relative to the whole canvas. 58328 58329 This also implements the non-swizzle path of copySubRect() using memcpy() to copy the rows, which 58330 is another respectable performance increase. 58331 58332 * html/canvas/CanvasRenderingContext2D.cpp: 58333 * platform/graphics/gpu/Texture.cpp: 58334 (WebCore::copySubRect): 58335 * platform/graphics/skia/PlatformContextSkia.cpp: 58336 (WebCore::PlatformContextSkia::prepareForSoftwareDraw): 58337 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 58338 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 58339 58340 2010-09-09 Kenneth Russell <kbr (a] google.com> 58341 58342 Reviewed by James Robinson. 58343 58344 Add math utilities for cubic curve processing 58345 https://bugs.webkit.org/show_bug.cgi?id=45251 58346 58347 Adding mathematic utilities needed for the GPU accelerated path 58348 rendering algorithm from GPU Gems 3. No tests yet; will be tested 58349 in conjunction with later code. 58350 58351 * platform/graphics/gpu/LoopBlinnMathUtils.cpp: Added. 58352 (WebCore::LoopBlinnMathUtils::roundToZero): 58353 (WebCore::LoopBlinnMathUtils::approxEqual): 58354 (WebCore::LoopBlinnMathUtils::linesIntersect): 58355 (WebCore::LoopBlinnMathUtils::pointInTriangle): 58356 (WebCore::LoopBlinnMathUtils::trianglesOverlap): 58357 (WebCore::LoopBlinnMathUtils::chopCubicAt): 58358 (WebCore::LoopBlinnMathUtils::xRayCrossesLine): 58359 (WebCore::LoopBlinnMathUtils::numXRayCrossingsForCubic): 58360 * platform/graphics/gpu/LoopBlinnMathUtils.h: Added. 58361 58362 2010-09-09 Kinuko Yasuda <kinuko (a] chromium.org> 58363 58364 Reviewed by Dumitru Daniliuc. 58365 58366 Add Entry.getMetadata for FileSystem API 58367 https://bugs.webkit.org/show_bug.cgi?id=45403 58368 58369 Add getMetadata to Entry.idl (I had missed to include this 58370 in my previous Entry.idl patch.) 58371 58372 Also make some minor cleanups and nits fixes. 58373 58374 No new tests; layout test is going be added later. 58375 58376 * fileapi/DOMFileSystem.cpp: Bug fix. 58377 * fileapi/MetadataCallback.h: Nits fix. 58378 * fileapi/Entry.idl: Added getMetadata. 58379 * fileapi/ErrorCallback.h: Nits fix. 58380 58381 2010-09-09 Ryosuke Niwa <rniwa (a] webkit.org> 58382 58383 Reviewed by Eric Seidel. 58384 58385 REGRESSION: applying new font size causes font-size outside selection to change 58386 https://bugs.webkit.org/show_bug.cgi?id=45026 58387 58388 The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly. 58389 Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue 58390 which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement 58391 58392 Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were 58393 relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size 58394 to legacy font size by CSSStyleSelector::legacyFontSize. 58395 58396 Test: editing/style/push-down-font-styles.html 58397 58398 * editing/ApplyStyleCommand.cpp: 58399 (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above. 58400 (WebCore::stringToCSSValue): Converts string to CSSValue. 58401 (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue. 58402 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue. 58403 * css/CSSStyleSelector.h: Made fontSizeForKeyword public. 58404 58405 2010-09-09 Sheriff Bot <webkit.review.bot (a] gmail.com> 58406 58407 Unreviewed, rolling out r67126. 58408 http://trac.webkit.org/changeset/67126 58409 https://bugs.webkit.org/show_bug.cgi?id=45510 58410 58411 broke chromium mac compile, it also uses PlatformContextSkia 58412 (Requested by jamesr on #webkit). 58413 58414 * platform/graphics/chromium/ContentLayerChromium.cpp: 58415 (WebCore::ContentLayerChromium::updateContents): 58416 * platform/graphics/chromium/FontLinux.cpp: 58417 (WebCore::adjustTextRenderMode): 58418 (WebCore::Font::drawGlyphs): 58419 (WebCore::Font::drawComplexText): 58420 * platform/graphics/chromium/LayerRendererChromium.cpp: 58421 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 58422 * platform/graphics/chromium/VideoLayerChromium.cpp: 58423 (WebCore::VideoLayerChromium::updateContents): 58424 * platform/graphics/skia/ImageBufferSkia.cpp: 58425 (WebCore::ImageBuffer::ImageBuffer): 58426 (WebCore::ImageBuffer::clip): 58427 * platform/graphics/skia/PlatformContextSkia.cpp: 58428 (WebCore::PlatformContextSkia::State::State): 58429 (WebCore::PlatformContextSkia::PlatformContextSkia): 58430 (WebCore::PlatformContextSkia::save): 58431 (WebCore::PlatformContextSkia::restore): 58432 * platform/graphics/skia/PlatformContextSkia.h: 58433 58434 2010-09-09 Simon Fraser <simon.fraser (a] apple.com> 58435 58436 Attempt to fix Qt build. 58437 58438 * WebCore.pro: 58439 58440 2010-09-09 Simon Fraser <simon.fraser (a] apple.com> 58441 58442 Reviewed by Darin Adler. 58443 58444 https://bugs.webkit.org/show_bug.cgi?id=45509 58445 <rdar://problem/8142166> REGRESSION: WebView setDrawsBackground:NO no 58446 longer works without setBackgroundColor:clearColor 58447 58448 r61215 caused RenderView to paint the viewport background when the 58449 document element's renderer is known to not fill opaquely paint 58450 the entire viewport, i.e. more often than it did before. 58451 58452 This exposed a latent, long-standing bug which was introduced 58453 in r14638 (the RenderCanvas -> RenderView rename), where a call 58454 to view()->isTransparent() was not converted to frameView()->isTransparent(), 58455 yet happened to still compile because of RenderObject::isTransparent(). 58456 58457 This resulted in us painting the viewport background, even when 58458 WebView clients explicitly said that they wanted a transparent 58459 WebView. 58460 58461 Fixed by calling frameView()->isTransparent(), as intended. 58462 58463 * rendering/RenderView.cpp: 58464 (WebCore::RenderView::paintBoxDecorations): 58465 58466 2010-09-09 Chris Rogers <crogers (a] google.com> 58467 58468 Reviewed by Kenneth Russell. 58469 58470 audio engine: add Biquad files 58471 https://bugs.webkit.org/show_bug.cgi?id=44795 58472 58473 No new tests since audio API is not yet implemented. 58474 58475 * platform/audio/Biquad.cpp: Added. 58476 (WebCore::Biquad::Biquad): 58477 (WebCore::Biquad::process): 58478 (WebCore::Biquad::processFast): 58479 (WebCore::Biquad::processSliceFast): 58480 (WebCore::Biquad::reset): 58481 (WebCore::Biquad::setLowpassParams): 58482 (WebCore::Biquad::setHighpassParams): 58483 (WebCore::Biquad::setLowShelfParams): 58484 (WebCore::Biquad::setZeroPolePairs): 58485 (WebCore::Biquad::setAllpassPole): 58486 * platform/audio/Biquad.h: Added. 58487 (WebCore::Biquad::~Biquad): 58488 58489 2010-09-09 Chris Rogers <crogers (a] google.com> 58490 58491 Reviewed by Kenneth Russell. 58492 58493 Add AudioBuffer files 58494 https://bugs.webkit.org/show_bug.cgi?id=45003 58495 58496 No new tests since audio API is not yet implemented. 58497 58498 * webaudio/AudioBuffer.cpp: Added. 58499 (WebCore::AudioBuffer::create): 58500 (WebCore::AudioBuffer::createFromAudioFileData): 58501 (WebCore::AudioBuffer::AudioBuffer): 58502 (WebCore::AudioBuffer::releaseMemory): 58503 (WebCore::AudioBuffer::getChannelData): 58504 (WebCore::AudioBuffer::zero): 58505 * webaudio/AudioBuffer.h: Added. 58506 (WebCore::AudioBuffer::length): 58507 (WebCore::AudioBuffer::duration): 58508 (WebCore::AudioBuffer::sampleRate): 58509 (WebCore::AudioBuffer::numberOfChannels): 58510 (WebCore::AudioBuffer::gain): 58511 (WebCore::AudioBuffer::setGain): 58512 * webaudio/AudioBuffer.idl: Added. 58513 58514 2010-09-09 Alexey Marinichev <amarinichev (a] chromium.org> 58515 58516 Reviewed by James Robinson. 58517 58518 [chromium] Disable subpixel rendering in Linux when GPU compositor is active 58519 https://bugs.webkit.org/show_bug.cgi?id=45087 58520 58521 Covered by all tests that activate the compositor and contain text. 58522 58523 * platform/graphics/chromium/ContentLayerChromium.cpp: 58524 (WebCore::ContentLayerChromium::updateContents): 58525 * platform/graphics/chromium/FontLinux.cpp: 58526 (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active. 58527 (WebCore::Font::drawGlyphs): 58528 (WebCore::Font::drawComplexText): 58529 * platform/graphics/chromium/LayerRendererChromium.cpp: 58530 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 58531 * platform/graphics/chromium/VideoLayerChromium.cpp: 58532 (WebCore::VideoLayerChromium::updateContents): 58533 * platform/graphics/skia/ImageBufferSkia.cpp: 58534 (WebCore::ImageBuffer::ImageBuffer): 58535 (WebCore::ImageBuffer::clip): 58536 * platform/graphics/skia/PlatformContextSkia.cpp: 58537 Made setDrawingToImageBuffer and isDrawingToImageBuffer available to 58538 Linux; removed all #if OS(WINDOWS) || OS(LINUX). 58539 (WebCore::PlatformContextSkia::State::State): 58540 (WebCore::PlatformContextSkia::PlatformContextSkia): 58541 (WebCore::PlatformContextSkia::isDrawingToImageBuffer): 58542 (WebCore::PlatformContextSkia::save): 58543 (WebCore::PlatformContextSkia::beginLayerClippedToImage): 58544 (WebCore::PlatformContextSkia::restore): 58545 (WebCore::PlatformContextSkia::applyClipFromImage): 58546 * platform/graphics/skia/PlatformContextSkia.h: 58547 58548 2010-09-09 Simon Fraser <simon.fraser (a] apple.com> 58549 58550 Fix windows build by adding missing file. 58551 58552 * platform/graphics/win/LocalWindowsContext.h: Added. 58553 (WebCore::LocalWindowsContext::LocalWindowsContext): 58554 (WebCore::LocalWindowsContext::~LocalWindowsContext): 58555 (WebCore::LocalWindowsContext::hdc): 58556 58557 2010-09-09 Simon Fraser <simon.fraser (a] apple.com> 58558 58559 Reviewed by Adam Roben. 58560 58561 Scrollbars fail to render in composited iframes. 58562 https://bugs.webkit.org/show_bug.cgi?id=45335 58563 58564 Add a stack-based class, LocalWindowsContext, which does a getWindowsContext/ 58565 releaseWindowsContext automatically. 58566 58567 Also fix getWindowsContext to create a bitmap context if mayCreateBitmap 58568 is true, and if the context's HDC is null. This fixes scrollbar rendering 58569 in compositing layers. 58570 58571 Use LocalWindowsContext in places where we had bare getWindowsContext() calls. 58572 58573 * platform/graphics/win/LocalWindowsContext.h 58574 (WebCore::LocalWindowsContext::LocalWindowsContext): 58575 (WebCore::LocalWindowsContext::~LocalWindowsContext): 58576 (WebCore::LocalWindowsContext::hdc): 58577 * platform/graphics/win/GraphicsContextCGWin.cpp: 58578 (WebCore::GraphicsContext::releaseWindowsContext): 58579 * platform/graphics/win/GraphicsContextWin.cpp: 58580 (WebCore::GraphicsContext::getWindowsContext): 58581 * platform/graphics/win/IconWin.cpp: 58582 (WebCore::Icon::paint): 58583 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: 58584 (WebCore::MediaPlayerPrivate::paint): 58585 * platform/win/ScrollbarThemeWin.cpp: 58586 (WebCore::ScrollbarThemeWin::paintTrackPiece): 58587 (WebCore::ScrollbarThemeWin::paintButton): 58588 * plugins/win/PluginViewWin.cpp: 58589 (WebCore::PluginView::paintWindowedPluginIntoContext): 58590 (WebCore::PluginView::paint): 58591 * rendering/RenderThemeWin.cpp: 58592 (WebCore::drawControl): 58593 58594 2010-09-09 Vincent Scheib <scheib (a] chromium.org> 58595 58596 Reviewed by James Robinson. 58597 58598 [Chromium] Minimize uploads in canvas 2d mixed mode rendering 58599 https://bugs.webkit.org/show_bug.cgi?id=45476 58600 58601 No new tests - change is for performance, logic fixes only apparent when running hardware acceleration. 58602 58603 - Enumeration values fixed, "CavasWillDraw" -> "CanvasDidDraw". 58604 - markDirtyRect() plumbed through GraphicsContext to PlatformContextSkia. 58605 - Texture::updateSubRect() added to allow uploading only a dirty rect. 58606 - Logic fix in ImageBuffer::draw(), caused canvas to canvas copies to be incorrect. 58607 58608 * html/canvas/CanvasRenderingContext2D.cpp: 58609 (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault): 58610 (WebCore::CanvasRenderingContext2D::strokeRect): 58611 (WebCore::CanvasRenderingContext2D::drawImage): 58612 (WebCore::CanvasRenderingContext2D::didDraw): 58613 - Logic fix for drawingContext()->markDirtyRect() call. 58614 (WebCore::CanvasRenderingContext2D::putImageData): 58615 (WebCore::CanvasRenderingContext2D::drawTextInternal): 58616 - Logic fix for calls to "didDraw()", use peer method first. 58617 * html/canvas/CanvasRenderingContext2D.h: 58618 * platform/graphics/GraphicsContext.cpp: 58619 (WebCore::GraphicsContext::drawImageBuffer): 58620 (WebCore::GraphicsContext::markDirtyRect): 58621 * platform/graphics/GraphicsContext.h: 58622 * platform/graphics/gpu/Texture.cpp: 58623 (WebCore::Texture::create): 58624 (WebCore::Texture::load): 58625 (WebCore::Texture::updateSubRect): 58626 * platform/graphics/gpu/Texture.h: 58627 * platform/graphics/gpu/TilingData.h: 58628 (WebCore::TilingData::borderTexels): 58629 * platform/graphics/skia/GraphicsContextSkia.cpp: 58630 (WebCore::GraphicsContext::clipConvexPolygon): 58631 (WebCore::GraphicsContext::markDirtyRect): 58632 * platform/graphics/skia/ImageBufferSkia.cpp: 58633 (WebCore::ImageBuffer::draw): 58634 * platform/graphics/skia/PlatformContextSkia.cpp: 58635 (WebCore::PlatformContextSkia::State::cloneInheritedProperties): 58636 (WebCore::PlatformContextSkia::drawRect): 58637 (WebCore::PlatformContextSkia::setFillColor): 58638 (WebCore::PlatformContextSkia::setStrokeColor): 58639 (WebCore::PlatformContextSkia::markDirtyRect): 58640 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 58641 * platform/graphics/skia/PlatformContextSkia.h: 58642 58643 2010-09-08 Darin Adler <darin (a] apple.com> 58644 58645 Reviewed by Adam Barth. 58646 58647 Move functions from Frame to Editor as planned 58648 https://bugs.webkit.org/show_bug.cgi?id=45218 58649 58650 Just executing the plan that has long been described in Frame.h 58651 to move a bunch of functions to Editor. 58652 58653 * WebCore.exp.in: Updated. 58654 58655 * editing/Editor.cpp: 58656 (WebCore::Editor::fontForSelection): 58657 (WebCore::Editor::textDirectionForSelection): 58658 (WebCore::Editor::applyStyle): 58659 (WebCore::Editor::selectionStartHasStyle): 58660 (WebCore::Editor::selectionHasStyle): 58661 (WebCore::Editor::selectionStartCSSPropertyValue): 58662 (WebCore::Editor::Editor): 58663 (WebCore::Editor::cut): 58664 (WebCore::Editor::copy): 58665 (WebCore::Editor::ignoreSpelling): 58666 (WebCore::Editor::learnSpelling): 58667 (WebCore::Editor::isSelectionMisspelled): 58668 (WebCore::Editor::guessesForMisspelledSelection): 58669 (WebCore::Editor::selectedText): 58670 (WebCore::Editor::firstRectForRange): 58671 (WebCore::Editor::shouldChangeSelection): 58672 (WebCore::Editor::computeAndSetTypingStyle): 58673 (WebCore::Editor::selectionComputedStyle): 58674 (WebCore::Editor::textFieldDidBeginEditing): 58675 (WebCore::Editor::textFieldDidEndEditing): 58676 (WebCore::Editor::textDidChangeInTextField): 58677 (WebCore::Editor::doTextFieldCommandFromEvent): 58678 (WebCore::Editor::textWillBeDeletedInTextField): 58679 (WebCore::Editor::textDidChangeInTextArea): 58680 (WebCore::Editor::applyEditingStyleToBodyElement): 58681 (WebCore::Editor::applyEditingStyleToElement): 58682 (WebCore::Editor::styleForSelectionStart): 58683 (WebCore::Editor::findString): 58684 (WebCore::Editor::countMatchesForText): 58685 (WebCore::Editor::setMarkedTextMatchesAreHighlighted): 58686 (WebCore::Editor::respondToChangedSelection): 58687 * editing/Editor.h: 58688 * editing/mac/EditorMac.mm: 58689 (WebCore::Editor::fontAttributesForSelectionStart): 58690 (WebCore::Editor::baseWritingDirectionForSelectionStart): 58691 Moved functions here. 58692 58693 * page/Frame.cpp: 58694 (WebCore::Frame::Frame): 58695 (WebCore::Frame::shouldChangeSelection): 58696 * page/Frame.h: 58697 * page/mac/FrameMac.mm: 58698 Moved functions out of here. 58699 58700 * dom/InputElement.cpp: 58701 (WebCore::InputElement::dispatchBlurEvent): 58702 (WebCore::InputElement::aboutToUnload): 58703 * editing/DeleteSelectionCommand.cpp: 58704 (WebCore::DeleteSelectionCommand::doApply): 58705 * editing/EditorCommand.cpp: 58706 (WebCore::executeToggleStyleInList): 58707 (WebCore::executeDeleteToMark): 58708 (WebCore::executeFindString): 58709 (WebCore::executeSelectToMark): 58710 (WebCore::executeSetMark): 58711 (WebCore::executeSwapWithMark): 58712 (WebCore::enabledVisibleSelectionAndMark): 58713 * editing/SelectionController.cpp: 58714 (WebCore::SelectionController::setSelection): 58715 * html/HTMLInputElement.cpp: 58716 (WebCore::HTMLInputElement::defaultEventHandler): 58717 * page/ContextMenuController.cpp: 58718 (WebCore::ContextMenuController::contextMenuItemSelected): 58719 * page/DOMWindow.cpp: 58720 (WebCore::DOMWindow::find): 58721 * page/DragController.cpp: 58722 (WebCore::DragController::startDrag): 58723 * page/EventHandler.cpp: 58724 (WebCore::EventHandler::sendContextMenuEventForKey): 58725 * page/Page.cpp: 58726 (WebCore::Page::findString): 58727 (WebCore::Page::markAllMatchesForText): 58728 * rendering/InlineTextBox.cpp: 58729 (WebCore::InlineTextBox::paintTextMatchMarker): 58730 * rendering/RenderTextControlMultiLine.cpp: 58731 (WebCore::RenderTextControlMultiLine::subtreeHasChanged): 58732 * rendering/RenderTextControlSingleLine.cpp: 58733 (WebCore::RenderTextControlSingleLine::subtreeHasChanged): 58734 Changed call sites to use editor(). 58735 58736 2010-09-09 Chris Rogers <crogers (a] google.com> 58737 58738 Reviewed by Kenneth Russell. 58739 58740 Add AudioDSPKernelProcessor files 58741 https://bugs.webkit.org/show_bug.cgi?id=45211 58742 58743 No new tests since audio API is not yet implemented. 58744 58745 * platform/audio/AudioDSPKernelProcessor.cpp: Added. 58746 (WebCore::AudioDSPKernelProcessor::AudioDSPKernelProcessor): 58747 (WebCore::AudioDSPKernelProcessor::initialize): 58748 (WebCore::AudioDSPKernelProcessor::uninitialize): 58749 (WebCore::AudioDSPKernelProcessor::process): 58750 (WebCore::AudioDSPKernelProcessor::reset): 58751 (WebCore::AudioDSPKernelProcessor::setNumberOfChannels): 58752 * platform/audio/AudioDSPKernelProcessor.h: Added. 58753 (WebCore::AudioDSPKernelProcessor::numberOfChannels): 58754 58755 2010-09-09 Chris Rogers <crogers (a] google.com> 58756 58757 Reviewed by Kenneth Russell. 58758 58759 Add setRange() and zeroRange() methods to TypedArrayBase 58760 https://bugs.webkit.org/show_bug.cgi?id=45419 58761 58762 No new tests since adding new methods which are not yet called anywhere. 58763 58764 * html/canvas/ArrayBufferView.cpp: 58765 (WebCore::ArrayBufferView::setRangeImpl): 58766 (WebCore::ArrayBufferView::zeroRangeImpl): 58767 * html/canvas/ArrayBufferView.h: 58768 * html/canvas/TypedArrayBase.h: 58769 (WebCore::TypedArrayBase::setRange): 58770 (WebCore::TypedArrayBase::zeroRange): 58771 58772 2010-09-09 Robert Hogan <robert (a] webkit.org> 58773 58774 Reviewed by Andreas Kling. 58775 58776 [Qt] always send an Accept header 58777 58778 Ensure QtWebKit always sends an Accept header. This is required 58779 for compatibility with sites that expect the header in requests 58780 for subresources. 58781 58782 See https://bugs.webkit.org/show_bug.cgi?id=33242 for more. 58783 58784 https://bugs.webkit.org/show_bug.cgi?id=45458 58785 58786 * platform/network/qt/ResourceRequestQt.cpp: 58787 (WebCore::ResourceRequest::toNetworkRequest): 58788 58789 2010-09-09 Eric Carlson <eric.carlson (a] apple.com> 58790 58791 Reviewed by Chris Marrin. 58792 58793 Add media element logging 58794 https://bugs.webkit.org/show_bug.cgi?id=45469 58795 58796 Add logging at interesting points in a media element's lifecycle. 58797 58798 * html/HTMLMediaElement.cpp: 58799 (WebCore::urlForLogging): 58800 (WebCore::boolString): 58801 (WebCore::HTMLMediaElement::scheduleEvent): 58802 (WebCore::HTMLMediaElement::asyncEventTimerFired): 58803 (WebCore::HTMLMediaElement::canPlayType): 58804 (WebCore::HTMLMediaElement::load): 58805 (WebCore::HTMLMediaElement::prepareForLoad): 58806 (WebCore::HTMLMediaElement::selectMediaResource): 58807 (WebCore::HTMLMediaElement::loadResource): 58808 (WebCore::HTMLMediaElement::isSafeToLoadURL): 58809 (WebCore::HTMLMediaElement::waitForSourceChange): 58810 (WebCore::HTMLMediaElement::noneSupported): 58811 (WebCore::HTMLMediaElement::mediaEngineError): 58812 (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): 58813 (WebCore::HTMLMediaElement::setNetworkState): 58814 (WebCore::HTMLMediaElement::setReadyState): 58815 (WebCore::HTMLMediaElement::rewind): 58816 (WebCore::HTMLMediaElement::returnToRealtime): 58817 (WebCore::HTMLMediaElement::addPlayedRange): 58818 (WebCore::HTMLMediaElement::seek): 58819 (WebCore::HTMLMediaElement::finishSeek): 58820 (WebCore::HTMLMediaElement::setPlaybackRate): 58821 (WebCore::HTMLMediaElement::setWebkitPreservesPitch): 58822 (WebCore::HTMLMediaElement::setAutoplay): 58823 (WebCore::HTMLMediaElement::setPreload): 58824 (WebCore::HTMLMediaElement::play): 58825 (WebCore::HTMLMediaElement::playInternal): 58826 (WebCore::HTMLMediaElement::pause): 58827 (WebCore::HTMLMediaElement::pauseInternal): 58828 (WebCore::HTMLMediaElement::setLoop): 58829 (WebCore::HTMLMediaElement::setControls): 58830 (WebCore::HTMLMediaElement::setVolume): 58831 (WebCore::HTMLMediaElement::setMuted): 58832 (WebCore::HTMLMediaElement::togglePlayState): 58833 (WebCore::HTMLMediaElement::beginScrubbing): 58834 (WebCore::HTMLMediaElement::endScrubbing): 58835 (WebCore::HTMLMediaElement::selectNextSourceChild): 58836 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): 58837 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): 58838 (WebCore::HTMLMediaElement::mediaPlayerMuteChanged): 58839 (WebCore::HTMLMediaElement::mediaPlayerDurationChanged): 58840 (WebCore::HTMLMediaElement::mediaPlayerRateChanged): 58841 (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged): 58842 (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks): 58843 (WebCore::HTMLMediaElement::mediaPlayerSizeChanged): 58844 (WebCore::HTMLMediaElement::mediaPlayerRenderingModeChanged): 58845 (WebCore::HTMLMediaElement::updatePlayState): 58846 (WebCore::HTMLMediaElement::userCancelledLoad): 58847 (WebCore::HTMLMediaElement::stop): 58848 (WebCore::HTMLMediaElement::suspend): 58849 (WebCore::HTMLMediaElement::resume): 58850 (WebCore::HTMLMediaElement::hasPendingActivity): 58851 (WebCore::HTMLMediaElement::mediaVolumeDidChange): 58852 (WebCore::HTMLMediaElement::createMediaPlayerProxy): 58853 (WebCore::HTMLMediaElement::enterFullscreen): 58854 (WebCore::HTMLMediaElement::exitFullscreen): 58855 (WebCore::HTMLMediaElement::setClosedCaptionsVisible): 58856 (WebCore::HTMLMediaElement::mediaCanStart): 58857 (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): 58858 58859 2010-09-09 Anton Muhin <antonm (a] chromium.org> 58860 58861 Reviewed by Adam Barth. 58862 58863 [v8] bypass caches when query memory usage from post GC and in crash handler. 58864 https://bugs.webkit.org/show_bug.cgi?id=45036 58865 58866 Second part of the whole change: now use API introduced in 58867 http://trac.webkit.org/changeset/66818 and now backed by Chromium. 58868 58869 * bindings/v8/V8DOMWindowShell.cpp: 58870 (WebCore::reportFatalErrorInV8): 58871 * bindings/v8/V8GCController.cpp: 58872 (WebCore::V8GCController::gcEpilogue): 58873 58874 2010-09-09 Kwang Yul Seo <skyul (a] company100.net> 58875 58876 Reviewed by James Robinson. 58877 58878 Make sure skia is not Chromium specific 58879 https://bugs.webkit.org/show_bug.cgi?id=39672 58880 58881 FontCustomPlatformData is not Chromium-specific. Move it to platform/skia. 58882 58883 No new tests because this is pure refactoring. 58884 58885 * WebCore.gyp/WebCore.gyp: 58886 * WebCore.gypi: 58887 * platform/graphics/chromium/FontCustomPlatformData.cpp: Removed. 58888 * platform/graphics/chromium/FontCustomPlatformData.h: Removed. 58889 * platform/graphics/skia/FontCustomPlatformData.cpp: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.cpp. 58890 * platform/graphics/skia/FontCustomPlatformData.h: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.h. 58891 58892 2010-09-09 Chris Rogers <crogers (a] google.com> 58893 58894 Reviewed by Chris Fleizach. 58895 58896 Add AudioDSPKernel files 58897 https://bugs.webkit.org/show_bug.cgi?id=45319 58898 58899 No new tests since audio API is not yet implemented. 58900 58901 * platform/audio/AudioDSPKernel.h: Added. 58902 (WebCore::AudioDSPKernel::AudioDSPKernel): 58903 (WebCore::AudioDSPKernel::~AudioDSPKernel): 58904 (WebCore::AudioDSPKernel::sampleRate): 58905 (WebCore::AudioDSPKernel::nyquist): 58906 (WebCore::AudioDSPKernel::processor): 58907 58908 2010-09-09 Chris Rogers <crogers (a] google.com> 58909 58910 Reviewed by Chris Fleizach. 58911 58912 Add AudioProcessor.h 58913 https://bugs.webkit.org/show_bug.cgi?id=45206 58914 58915 No new tests since audio API is not yet implemented. 58916 58917 * platform/audio/AudioProcessor.h: Added. 58918 (WebCore::AudioProcessor::AudioProcessor): 58919 (WebCore::AudioProcessor::~AudioProcessor): 58920 (WebCore::AudioProcessor::isInitialized): 58921 (WebCore::AudioProcessor::sampleRate): 58922 58923 2010-09-09 Kenneth Russell <kbr (a] google.com> 58924 58925 Reviewed by James Robinson. 58926 58927 Add cubic texture coordinate computation 58928 https://bugs.webkit.org/show_bug.cgi?id=45250 58929 58930 Adding the texture coordinate computation for cubic curves per the 58931 GPU Gems 3 chapter. No tests yet; will be tested in conjunction 58932 with later code. 58933 58934 * platform/graphics/gpu/LoopBlinnConstants.h: Added. 58935 * platform/graphics/gpu/LoopBlinnTextureCoords.cpp: Added. 58936 (WebCore::LoopBlinnTextureCoords::compute): 58937 * platform/graphics/gpu/LoopBlinnTextureCoords.h: Added. 58938 (WebCore::LoopBlinnTextureCoords::Result::Result): 58939 (WebCore::LoopBlinnTextureCoords::LoopBlinnTextureCoords): 58940 58941 2010-09-09 Kenneth Russell <kbr (a] google.com> 58942 58943 Reviewed by James Robinson. 58944 58945 Add cubic curve classifier 58946 https://bugs.webkit.org/show_bug.cgi?id=45249 58947 58948 Adding the cubic curve classification algorithm per the GPU Gems 3 58949 chapter. No tests yet; will be tested in conjunction with later code. 58950 58951 * platform/graphics/gpu/LoopBlinnClassifier.cpp: Added. 58952 (WebCore::LoopBlinnClassifier::classify): 58953 * platform/graphics/gpu/LoopBlinnClassifier.h: Added. 58954 (WebCore::LoopBlinnClassifier::Result::Result): 58955 (WebCore::LoopBlinnClassifier::LoopBlinnClassifier): 58956 58957 2010-09-09 Ryosuke Niwa <rniwa (a] webkit.org> 58958 58959 Reviewed by Darin Adler. 58960 58961 QueryCommandValue('FontSize') returns pixel values instead of IE font numbers 58962 https://bugs.webkit.org/show_bug.cgi?id=21033 58963 58964 Modified selectionStartCSSPropertyValue to return legacy font size instead of pixel size. 58965 To implement the conversion between pixel font size and legacy font size, 58966 added legacyFontSize to CSSStyleSelector with a helper static function findNearestLegacyFontSize. 58967 58968 Fixed a bug in selectionComputedStyle where it obtains the style of the previous editing position 58969 even when the selection is a range. This change revealed a crash in executeToggleStyleInList, 58970 which was also fixed. 58971 58972 Test: editing/execCommand/query-font-size.html 58973 58974 * css/CSSComputedStyleDeclaration.cpp: 58975 (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword): Corrected style. 58976 (WebCore::CSSComputedStyleDeclaration::useFixedFontDefaultSize): Added. 58977 * css/CSSComputedStyleDeclaration.h: 58978 * css/CSSStyleSelector.cpp: 58979 (WebCore::CSSStyleSelector::fontSizeForKeyword): Renamed fixed/monospace to shouldUseFixedDefaultSize. 58980 (WebCore::findNearestLegacyFontSize): Added, a helper for legacyFontSize. 58981 (WebCore::CSSStyleSelector::legacyFontSize): Added. 58982 * css/CSSStyleSelector.h: 58983 * editing/Editor.cpp: 58984 (WebCore::Editor::selectionStartCSSPropertyValue): Added a conversion from pixel to legacy font size. 58985 * editing/EditorCommand.cpp: 58986 (WebCore::executeToggleStyleInList): Crash fix. 58987 * page/Frame.cpp: 58988 (WebCore::Frame::selectionComputedStyle): See above. 58989 58990 2010-09-09 Robert Hogan <robert (a] webkit.org> 58991 58992 Reviewed by Adam Barth. 58993 58994 Give WebKit clients a way to replace window.screen 58995 to foil attempts to track users with it. 58996 58997 This allows clients to overload the values returned by the 58998 Screen object through the JSC manipulation API (such as 58999 QWebFrame::addToJavaScriptWindowObject() in Qt). Clients will 59000 want to do this when they do not want to reveal too much 59001 explicit information about the user's desktop configuration. 59002 59003 https://bugs.webkit.org/show_bug.cgi?id=41802 59004 59005 * page/DOMWindow.idl: 59006 59007 2010-09-09 Kenneth Russell <kbr (a] google.com> 59008 59009 Reviewed by James Robinson. 59010 59011 Memory leak in red/black tree 59012 https://bugs.webkit.org/show_bug.cgi?id=45472 59013 59014 Fixed memory leak in red/black tree where it was using operator 59015 new directly to allocate its internal nodes rather than the arena 59016 with which it was configured. Added allocateObject variant to 59017 arena supporting single-argument constructors. Added test to 59018 red/black tree unit tests to cover this functionality, and 59019 refactored TrackedAllocator into helper file to share between 59020 arena and red/black tree tests. 59021 59022 * platform/graphics/gpu/PODArena.h: 59023 (WebCore::PODArena::allocateObject): 59024 (WebCore::PODArena::allocateBase): 59025 * platform/graphics/gpu/PODIntervalTree.h: 59026 (WebCore::PODIntervalTree::PODIntervalTree): 59027 * platform/graphics/gpu/PODRedBlackTree.h: 59028 (WebCore::PODRedBlackTree::add): 59029 59030 2010-09-09 Dean Jackson <dino (a] apple.com> 59031 59032 Reviewed by Simon Fraser. 59033 59034 Fill mode is broken with multiple keyframes 59035 https://bugs.webkit.org/show_bug.cgi?id=41209 59036 59037 With a forward fill mode the animation would tick after 59038 the end of the animation, causing the fractional 59039 duration of the animation to wrap. This meant the last 59040 style update would happen using the incorrect keyframes. 59041 The solution was to put clamps in for the elapsed time 59042 and current iteration count. 59043 59044 Tests: animations/fill-mode-missing-from-to-keyframes.html 59045 animations/fill-mode-multiple-keyframes.html 59046 59047 * page/animation/KeyframeAnimation.cpp: 59048 (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): 59049 59050 2010-09-09 Chris Fleizach <cfleizach (a] apple.com> 59051 59052 Reviewed by David Kilzer. 59053 59054 AX: Support AccessibilityTextMarkers in DRT 59055 https://bugs.webkit.org/show_bug.cgi?id=44778 59056 59057 Provide support in DRT for accessing and manipulating the text marker system that AX exposes. 59058 This will allow future bug fixes in the text marker system to be adequately tested. 59059 59060 Tests: platform/mac/accessibility/element-for-text-marker.html 59061 platform/mac/accessibility/text-marker-length.html 59062 59063 * accessibility/mac/AccessibilityObjectWrapper.mm: 59064 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 59065 59066 2010-09-09 Simon Fraser <simon.fraser (a] apple.com> 59067 59068 Reviewed by Dan Bernstein. 59069 59070 REGRESSION(r58875-r59046): Scrollable content drawn in wrong layer with Flash 10.1 59071 https://bugs.webkit.org/show_bug.cgi?id=40743 59072 59073 We can't do partial compositing layer updates on scrolling if we have to look 59074 for overlap, because the overlap map needs to be populated by traversing the 59075 compositing layer hierarchy from the root. 59076 59077 Test: compositing/layer-creation/scroll-partial-update.html 59078 59079 * rendering/RenderLayerCompositor.cpp: 59080 (WebCore::RenderLayerCompositor::updateCompositingLayers): 59081 59082 2010-09-09 Philippe Normand <pnormand (a] igalia.com> 59083 59084 Reviewed by Martin Robinson. 59085 59086 [GTK] testmimehandling falsely succeeds testing Ogg mime type 59087 https://bugs.webkit.org/show_bug.cgi?id=45349 59088 59089 Advertize audio/x-vorbis+ogg so MediaDocuments loading local ogg 59090 files work as well. 59091 59092 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 59093 (WebCore::mimeTypeCache): 59094 59095 2010-09-09 Adam Barth <abarth (a] webkit.org> 59096 59097 Move FTPDirectoryDocument, ImageDocument, MediaDocument, and 59098 PluginDocument from WebCore/loader to WebCore/html. These classes are 59099 subclasses of HTMLDocument. They don't belong in the loader. Further 59100 cleanup patches to follow. 59101 59102 * Android.mk: 59103 * CMakeLists.txt: 59104 * GNUmakefile.am: 59105 * WebCore.gypi: 59106 * WebCore.pro: 59107 * WebCore.vcproj/WebCore.vcproj: 59108 * WebCore.xcodeproj/project.pbxproj: 59109 * html/FTPDirectoryDocument.cpp: Copied from WebCore/loader/FTPDirectoryDocument.cpp. 59110 * html/FTPDirectoryDocument.h: Copied from WebCore/loader/FTPDirectoryDocument.h. 59111 * html/ImageDocument.cpp: Copied from WebCore/loader/ImageDocument.cpp. 59112 * html/ImageDocument.h: Copied from WebCore/loader/ImageDocument.h. 59113 * html/MediaDocument.cpp: Copied from WebCore/loader/MediaDocument.cpp. 59114 * html/MediaDocument.h: Copied from WebCore/loader/MediaDocument.h. 59115 * html/PluginDocument.cpp: Copied from WebCore/loader/PluginDocument.cpp. 59116 * html/PluginDocument.h: Copied from WebCore/loader/PluginDocument.h. 59117 * loader/FTPDirectoryDocument.cpp: Removed. 59118 * loader/FTPDirectoryDocument.h: Removed. 59119 * loader/ImageDocument.cpp: Removed. 59120 * loader/ImageDocument.h: Removed. 59121 * loader/MediaDocument.cpp: Removed. 59122 * loader/MediaDocument.h: Removed. 59123 * loader/PluginDocument.cpp: Removed. 59124 * loader/PluginDocument.h: Removed. 59125 59126 2010-09-09 Andrey Kosyakov <caseq (a] chromium.org> 59127 59128 Reviewed by Yury Semikhatsky. 59129 59130 Web Inspector: use string representation of resource type in extension API 59131 Fixed Resoruce.Type.toString() to handle Resource.Type.Media. 59132 https://bugs.webkit.org/show_bug.cgi?id=45286 59133 59134 Test: inspector/extensions-resources.html 59135 59136 * English.lproj/localizedStrings.js: Added "media". 59137 * inspector/front-end/ExtensionServer.js: Added webInspector.resources.Types. Return resource types as strings. 59138 (WebInspector.ExtensionServer.prototype._convertResource): 59139 (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript): 59140 * inspector/front-end/Resource.js: Added toUIString(), changed toString() to return locale-independent representation. 59141 (WebInspector.Resource.Type.toUIString): 59142 (WebInspector.Resource.Type.toString): 59143 59144 2010-09-09 Kristian Amlie <kristian.amlie (a] nokia.com> 59145 59146 Reviewed by Andreas Kling. 59147 59148 [Qt] Fixed incorrect Symbian scoping. 59149 59150 The missing install functionality is only true for mmp based systems. 59151 59152 https://bugs.webkit.org/show_bug.cgi?id=45268 59153 59154 * WebCore.pro: 59155 59156 2010-09-09 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 59157 59158 Reviewed by Dirk Schulze. 59159 59160 [WML] Add a parameter to fix build break. 59161 https://bugs.webkit.org/show_bug.cgi?id=45437 59162 59163 In WMLSelectElement.h, the setSelectedIndexByUser() needs to have one more parameter. 59164 Because, parent class's setSelectedIndexByUser() has one more param. 59165 59166 * wml/WMLSelectElement.h: 59167 59168 2010-09-09 Ryuan Choi <ryuan.choi (a] samsung.com> 59169 59170 Unreviewed attempt to fix EFL build after r67001. 59171 59172 [EFL] Regression (67001) Build break 59173 https://bugs.webkit.org/show_bug.cgi?id=45422 59174 59175 * platform/efl/ScrollbarEfl.cpp: 59176 (scrollbarEflEdjeMessage): 59177 59178 2010-09-08 Ryosuke Niwa <rniwa (a] webkit.org> 59179 59180 Reviewed by Tony Chang. 59181 59182 MarkupAccumulator should be broken down into two classes 59183 https://bugs.webkit.org/show_bug.cgi?id=44854 59184 59185 Extracted wrapWithNode, wrapWithStyleNode, stringValueForRange, renderedText, removeExteriorStyles, 59186 shouldAnnotate, m_shouldAnnotate, and m_reversedPrecedingMarkup from MarkupAccumulator to create 59187 StyledMarkupAccumulator in order to isolate annotation related code and prepending of text. 59188 59189 Isolating MarkupAccumulator as a separate class has two advantages: 59190 1. Isolated serialization code is easier to understand and easier to security-review. 59191 2. Embedder can use MarkupAccumulator to implement "Save as" feature. 59192 59193 Also made takeResults, appendText, and appendElement in MarkupAccumulator virtual to override in 59194 StyledMarkupAccumulator because prepending text requires overriding takeResults, appendText needs 59195 to append only rendered text when shouldAnnotate() is true, and appendElement requires a different 59196 behavior when shouldAnnotate() is true or when called inside wrapWithNode with convertBlocksToInlines = true. 59197 59198 No new tests are added since this is a cleanup. 59199 59200 * editing/markup.cpp: 59201 (WebCore::MarkupAccumulator::MarkupAccumulator): Removed shouldAnnotate from argument. 59202 (WebCore::MarkupAccumulator::~MarkupAccumulator): Added. 59203 (WebCore::StyledMarkupAccumulator::): Added. 59204 (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator): Added. 59205 (WebCore::StyledMarkupAccumulator::appendElement): Added to support annotation. 59206 (WebCore::StyledMarkupAccumulator::shouldAnnotate): Moved from MarkupAccumulator. 59207 (WebCore::MarkupAccumulator::appendStartTag): No longer takes convertBlocksToInlines and RangeFullySelectsNode. 59208 (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Moved from MarkupAccumulator. 59209 (WebCore::MarkupAccumulator::takeResults): No longer accumulates prepended text, and made virtual. 59210 (WebCore::StyledMarkupAccumulator::takeResults): Added to support prepended text. 59211 (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): Takes a reference to Attribute instead of a pointer. 59212 (WebCore::MarkupAccumulator::entityMaskForText): Extracted from appendText. 59213 (WebCore::MarkupAccumulator::appendText): No longer deals with annotation. 59214 (WebCore::StyledMarkupAccumulator::appendText): Added to support annotation. 59215 (WebCore::StyledMarkupAccumulator::stringValueForRange): Moved from MarkupAccumulator. 59216 (WebCore::StyledMarkupAccumulator::renderedText): Moved from MarkupAccumulator. 59217 (WebCore::MarkupAccumulator::appendElement): No longer deals with annotation. 59218 (WebCore::StyledMarkupAccumulator::wrapWithNode): Moved from MarkupAccumulator. 59219 (WebCore::StyledMarkupAccumulator::removeExteriorStyles): Moved from MarkupAccumulator. 59220 (WebCore::MarkupAccumulator::appendOpenTag): Added. 59221 (WebCore::MarkupAccumulator::appendCloseTag): Added. 59222 (WebCore::MarkupAccumulator::appendAttribute): Added. 59223 (WebCore::MarkupAccumulator::appendStartMarkup): No longer takes convertBlocksToInlines and RangeFullySelectsNode. 59224 (WebCore::serializeNodes): Takes StyledMarkupAccumulator. 59225 (WebCore::createMarkup): Range version uses StyledMarkupAccumulator and node version uses MarkupAccumulator. 59226 59227 2010-09-08 Peter Kasting <pkasting (a] google.com> 59228 59229 Not reviewed, layout test fix. 59230 59231 Fix flaky layout test results caused by not initializing members correctly. 59232 https://bugs.webkit.org/show_bug.cgi?id=45411 59233 59234 * platform/ScrollAnimator.cpp: 59235 (WebCore::ScrollAnimator::ScrollAnimator): 59236 (WebCore::ScrollAnimator::~ScrollAnimator): 59237 * platform/ScrollAnimator.h: 59238 59239 2010-09-08 MORITA Hajime <morrita (a] google.com> 59240 59241 Reviewed by Tony Chang. 59242 59243 spelling underline gets lost on backspace 59244 https://bugs.webkit.org/show_bug.cgi?id=41423 59245 59246 moveParagraphs() did make a DOM range by serializing source range 59247 and deserializing it back, and markers are gone during the process. 59248 This change marks that DOM range again. 59249 59250 Test: editing/spelling/spelling-backspace-between-lines.html 59251 59252 * editing/CompositeEditCommand.cpp: 59253 (WebCore::CompositeEditCommand::moveParagraphs): 59254 * editing/Editor.cpp: 59255 (WebCore::Editor::clearMisspellingsAndBadGrammar): Added. 59256 (WebCore::Editor::markMisspellingsAndBadGrammar): Added. 59257 * editing/Editor.h: 59258 59259 2010-09-08 Adam Barth <abarth (a] webkit.org> 59260 59261 Reviewed by Eric Seidel. 59262 59263 text/plain documents that start with \n trigger ASSERT 59264 https://bugs.webkit.org/show_bug.cgi?id=45409 59265 59266 Because the TextDocumentParser uses a <pre> element to show the text, 59267 it ran into a requirement from HTML5 to skip any initial \n character 59268 tokens inside a <pre> element. We don't want the behavior for 59269 TextDocuments, so I've loosened our ASSERTs and added a comment and a 59270 test to document the correct behavior. 59271 59272 Test: fast/tokenizer/text-plain.html 59273 59274 * html/parser/HTMLTokenizer.cpp: 59275 (WebCore::HTMLTokenizer::nextToken): 59276 59277 2010-09-08 James Robinson <jamesr (a] chromium.org> 59278 59279 Reviewed by Kenneth Russell. 59280 59281 [chromium] Always do 2d canvas clearRect() in hardware 59282 https://bugs.webkit.org/show_bug.cgi?id=45415 59283 59284 r67003 forced Canvas 2d's clearRect() to happen in software if a gradient/shadow/etc was 59285 active. This is subtly wrong for mixed mode rendering since it results in only the 59286 software backing store being cleared and not the hardware. This forces clearRect() to 59287 happen in hardware. Since we upload mixed mode results before doing any hardware draw 59288 this means we always clear everything. 59289 59290 * platform/graphics/skia/GraphicsContextSkia.cpp: 59291 (WebCore::GraphicsContext::clearRect): 59292 59293 2010-09-08 Dean Jackson <dino (a] apple.com> 59294 59295 Unreviewed attempt to fix the Mac builds. 59296 59297 * css/CSSParser.cpp: 59298 (WebCore::CSSParser::parseAnimationTimingFunction): 59299 59300 2010-09-08 Dean Jackson <dino (a] apple.com> 59301 59302 Unreviewed attempt to fix QT build. 59303 59304 * platform/graphics/qt/GraphicsLayerQt.cpp: 59305 (WebCore::solveStepsFunction): 59306 (WebCore::applyTimingFunction): 59307 59308 2010-09-08 Dean Jackson <dino (a] apple.com> 59309 59310 Reviewed by Simon Fraser. 59311 59312 Implement steps() timing function for animations 59313 https://bugs.webkit.org/show_bug.cgi?id=44541 59314 59315 Tests: animations/timing-functions.html 59316 transitions/steps-timing-function.html 59317 59318 * css/CSSComputedStyleDeclaration.cpp: 59319 (WebCore::getTimingFunctionValue): 59320 - when creating computed style we now test what 59321 type of timing function it being used 59322 * css/CSSParser.cpp: 59323 (WebCore::CSSParser::parseCubicBezierTimingFunctionValue): 59324 - rename this method from parseTimingFunctionValue 59325 (WebCore::CSSParser::parseAnimationTimingFunction): 59326 - support parsing the steps() function 59327 * css/CSSParser.h: 59328 - method rename 59329 * css/CSSStyleSelector.cpp: 59330 (WebCore::CSSStyleSelector::mapAnimationTimingFunction): 59331 - handle 'step-start' and 'step-end' identifiers. Also 59332 now use ::create when constructing objects 59333 * css/CSSTimingFunctionValue.cpp: 59334 (WebCore::CSSLinearTimingFunctionValue::cssText): 59335 (WebCore::CSSCubicBezierTimingFunctionValue::cssText): 59336 (WebCore::CSSStepsTimingFunctionValue::cssText): 59337 - new text output for computed style. We now produce 59338 the text 'linear' when appropriate. 59339 * css/CSSTimingFunctionValue.h: 59340 (WebCore::CSSTimingFunctionValue::isLinearTimingFunctionValue): 59341 (WebCore::CSSTimingFunctionValue::isCubicBezierTimingFunctionValue): 59342 (WebCore::CSSTimingFunctionValue::isStepsTimingFunctionValue): 59343 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue): 59344 (WebCore::CSSTimingFunctionValue::isTimingFunctionValue): 59345 (WebCore::CSSLinearTimingFunctionValue::create): 59346 (WebCore::CSSLinearTimingFunctionValue::isLinearTimingFunctionValue): 59347 (WebCore::CSSLinearTimingFunctionValue::CSSLinearTimingFunctionValue): 59348 (WebCore::CSSCubicBezierTimingFunctionValue::create): 59349 (WebCore::CSSCubicBezierTimingFunctionValue::isCubicBezierTimingFunctionValue): 59350 (WebCore::CSSCubicBezierTimingFunctionValue::CSSCubicBezierTimingFunctionValue): 59351 (WebCore::CSSStepsTimingFunctionValue::create): 59352 (WebCore::CSSStepsTimingFunctionValue::numberOfSteps): 59353 (WebCore::CSSStepsTimingFunctionValue::stepAtStart): 59354 (WebCore::CSSStepsTimingFunctionValue::isStepsTimingFunctionValue): 59355 (WebCore::CSSStepsTimingFunctionValue::CSSStepsTimingFunctionValue): 59356 - CSSTimingFunction is now a pure virtual ref-counted base class, with 59357 subclasses for each of the three supported timing functions. 59358 * css/CSSValueKeywords.in: 59359 - new keywords step-start and step-end 59360 * page/animation/AnimationBase.cpp: 59361 (WebCore::solveStepsFunction): 59362 - produces the output value from a stepping function 59363 (WebCore::AnimationBase::progress): 59364 - now has to switch based on timing function type 59365 * page/animation/KeyframeAnimation.cpp: 59366 (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): 59367 - use ref-counted access 59368 * platform/animation/Animation.cpp: 59369 (WebCore::Animation::animationsMatch): 59370 - change timing function comparison for operator== 59371 * platform/animation/Animation.h: 59372 (WebCore::Animation::timingFunction): 59373 (WebCore::Animation::setTimingFunction): 59374 (WebCore::Animation::initialAnimationTimingFunction): 59375 - move to ref-counted timing function class 59376 * platform/animation/TimingFunction.h: 59377 (WebCore::TimingFunction::~TimingFunction): 59378 (WebCore::TimingFunction::isLinearTimingFunction): 59379 (WebCore::TimingFunction::isCubicBezierTimingFunction): 59380 (WebCore::TimingFunction::isStepsTimingFunction): 59381 (WebCore::TimingFunction::TimingFunction): 59382 (WebCore::LinearTimingFunction::create): 59383 (WebCore::LinearTimingFunction::~LinearTimingFunction): 59384 (WebCore::LinearTimingFunction::operator==): 59385 (WebCore::LinearTimingFunction::LinearTimingFunction): 59386 (WebCore::CubicBezierTimingFunction::create): 59387 (WebCore::CubicBezierTimingFunction::~CubicBezierTimingFunction): 59388 (WebCore::CubicBezierTimingFunction::operator==): 59389 (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction): 59390 (WebCore::StepsTimingFunction::create): 59391 (WebCore::StepsTimingFunction::~StepsTimingFunction): 59392 (WebCore::StepsTimingFunction::operator==): 59393 (WebCore::StepsTimingFunction::numberOfSteps): 59394 (WebCore::StepsTimingFunction::stepAtStart): 59395 (WebCore::StepsTimingFunction::StepsTimingFunction): 59396 - TimingFunction is now a ref-counted pure virtual base class, 59397 with three subclasses representing the types of timing functions 59398 that are supported. 59399 * platform/graphics/GraphicsLayer.h: 59400 (WebCore::AnimationValue::AnimationValue): 59401 (WebCore::FloatAnimationValue::FloatAnimationValue): 59402 (WebCore::TransformAnimationValue::TransformAnimationValue): 59403 - use PassRefPtr in function parameters 59404 * platform/graphics/qt/GraphicsLayerQt.cpp: 59405 (WebCore::solveStepsFunction): 59406 (WebCore::applyTimingFunction): 59407 (WebCore::AnimationQt::AnimationQt): 59408 (WebCore::AnimationQt::updateCurrentTime): 59409 - implement the timing function switch for QT 59410 * platform/graphics/mac/GraphicsLayerCA.mm: 59411 (WebCore::getCAMediaTimingFunction): 59412 - update for new timing function interface 59413 (WebCore::animationHasStepsTimingFunction): 59414 - new method to make sure animations with steps() functions 59415 never try to execute in Core Animation 59416 (WebCore::GraphicsLayerCA::addAnimation): 59417 - test for steps() timing function 59418 (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue): 59419 * rendering/style/RenderStyleConstants.h: 59420 - remove old RenderStyle enum for timing function types 59421 59422 2010-09-08 Csaba Osztrogonc <ossy (a] webkit.org> 59423 59424 Unreviewed trivial fix after r66960. 59425 59426 * WebCore.pro: loader/TextDocument.h renamed to html/TextDocument.h 59427 59428 2010-09-08 Adam Barth <abarth (a] webkit.org> 59429 59430 Reviewed by Eric Seidel. 59431 59432 move-during-parse-parent.html crashes 59433 https://bugs.webkit.org/show_bug.cgi?id=45210 59434 59435 When inserting elements into the tree, they need to be associated with 59436 their parent's document, not the document for which the parser is 59437 running. These two are different when the parent has been moved to a 59438 different document during parsing. 59439 59440 Test: fast/parser/move-during-parsing.html 59441 59442 * html/parser/HTMLConstructionSite.cpp: 59443 (WebCore::HTMLConstructionSite::insertComment): 59444 (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement): 59445 (WebCore::HTMLConstructionSite::insertScriptElement): 59446 (WebCore::HTMLConstructionSite::insertTextNode): 59447 (WebCore::HTMLConstructionSite::createElement): 59448 (WebCore::HTMLConstructionSite::createHTMLElement): 59449 59450 2010-09-08 Gabor Loki <loki (a] webkit.org> 59451 59452 Reviewed by Andreas Kling. 59453 59454 Fix increases required alignment of target type warning on ARM 59455 https://bugs.webkit.org/show_bug.cgi?id=45301 59456 59457 No new tests needed. 59458 59459 * bindings/js/SerializedScriptValue.cpp: 59460 (WebCore::CloneDeserializer::readLittleEndian): 59461 (WebCore::CloneDeserializer::readString): 59462 * plugins/PluginDatabase.cpp: 59463 (WebCore::readTime): 59464 59465 2010-09-08 Antonio Gomes <agomes (a] rim.com> 59466 59467 Reviewed by Daniel Bates. 59468 59469 Make FocusController::focusedOrMainFrame method const 59470 https://bugs.webkit.org/show_bug.cgi?id=45406 59471 59472 No new tests. 59473 59474 * page/FocusController.cpp: 59475 (WebCore::FocusController::focusedOrMainFrame): 59476 * page/FocusController.h: 59477 59478 2010-09-08 Jian Li <jianli (a] chromium.org> 59479 59480 Reviewed by Darin Adler. 59481 59482 Fix a problem in createCanonicalUUIDString that causes the last digit 59483 missing on Linux. 59484 https://bugs.webkit.org/show_bug.cgi?id=45412 59485 59486 This is caused by not including the final null character into the count 59487 that is provided to fgets. 59488 59489 This is covered by the existing test: send-form-data-with-sliced-file.html. 59490 59491 * platform/UUID.cpp: 59492 (WebCore::createCanonicalUUIDString): 59493 59494 2010-09-08 Nico Weber <thakis (a] chromium.org> 59495 59496 Reviewed by Dimitri Glazkov. 59497 59498 chromium/mac: Fix overrelease in ImageLayerChromium 59499 https://bugs.webkit.org/show_bug.cgi?id=45360 59500 59501 Only release colorSpace if we created it. 59502 59503 * platform/graphics/chromium/ImageLayerChromium.cpp: 59504 (WebCore::ImageLayerChromium::updateContents): 59505 59506 2010-09-08 Robert Hogan <robert (a] webkit.org> 59507 59508 Reviewed by Antonio Gomes. 59509 59510 Remove some unnecessary duplicate calls to string functions 59511 59512 https://bugs.webkit.org/show_bug.cgi?id=45314 59513 59514 * platform/network/curl/ResourceHandleManager.cpp: 59515 (WebCore::parseDataUrl): 59516 * websockets/WebSocketChannel.cpp: 59517 (WebCore::WebSocketChannel::send): 59518 59519 2010-09-08 Peter Kasting <pkasting (a] google.com> 59520 59521 Not reviewed, fallout from http://trac.webkit.org/changeset/67001 59522 59523 Fix compile failures and add svn:eol-style on two new files. 59524 59525 * platform/ScrollAnimator.h: Added property svn:eol-style. 59526 * platform/ScrollAnimatorWin.cpp: Added property svn:eol-style. 59527 * platform/win/PopupMenuWin.cpp: Fix compile errors. 59528 (WebCore::PopupMenuWin::scrollToRevealSelection): 59529 (WebCore::PopupMenuWin::scrollSize): 59530 59531 2010-09-08 James Robinson <jamesr (a] chromium.org> 59532 59533 Reviewed by Kenneth Russell. 59534 59535 [chromium] Force canvas 2d draw calls to happen in software if a gradient, pattern, shadow, or clip are active 59536 https://bugs.webkit.org/show_bug.cgi?id=45405 59537 59538 This forces all draw calls to happen in software instead of hardware if there is a fill pattern, gradient, 59539 shadow, or clip applied; at least until we can handle these in hardware. Otherwise the pattern/gradient/etc 59540 is completely ignored by the hardware drawing routine and we render incorrectly. 59541 59542 The test is slightly convervative - for example it will force drawImage() calls to happen in software if a 59543 fill gradient is set even though it's irrelevant. This doesn't seem to be an issue in practice and we 59544 can tighten the checks later if needed. 59545 59546 Tested by fast/canvas/canvas-incremental-repaint.html. 59547 59548 * platform/graphics/skia/GraphicsContextSkia.cpp: 59549 (WebCore::GraphicsContext::canvasClip): 59550 (WebCore::GraphicsContext::fillRect): 59551 * platform/graphics/skia/ImageBufferSkia.cpp: 59552 (WebCore::ImageBuffer::draw): 59553 * platform/graphics/skia/ImageSkia.cpp: 59554 (WebCore::BitmapImage::draw): 59555 (WebCore::BitmapImageSingleFrameSkia::draw): 59556 * platform/graphics/skia/PlatformContextSkia.cpp: 59557 (WebCore::PlatformContextSkia::State::State): 59558 (WebCore::PlatformContextSkia::canvasClipPath): 59559 (WebCore::PlatformContextSkia::canAccelerate): 59560 * platform/graphics/skia/PlatformContextSkia.h: 59561 59562 2010-09-08 Peter Kasting <pkasting (a] google.com> 59563 59564 Reviewed by David Hyatt. 59565 59566 Add smooth scrolling framework, and a Windows implementation. 59567 https://bugs.webkit.org/show_bug.cgi?id=32356 59568 59569 * CMakeLists.txt: Add ScrollAnimator. 59570 * GNUmakefile.am: Add ScrollAnimator. 59571 * WebCore.gyp/WebCore.gyp: Add Windows ScrollAnimator. 59572 * WebCore.gypi: Add ScrollAnimator. 59573 * WebCore.pro: Add ScrollAnimator. 59574 * WebCore.vcproj/WebCore.vcproj: Add ScrollAnimator. 59575 * WebCore.xcodeproj/project.pbxproj: Add ScrollAnimator. 59576 * platform/ScrollAnimator.cpp: Added base implementation that does no animation. 59577 (WebCore::ScrollAnimator::create): 59578 (WebCore::ScrollAnimator::scroll): 59579 (WebCore::ScrollAnimator::setScrollPositionAndStopAnimation): 59580 * platform/ScrollAnimator.h: Added base implementation that does no animation. 59581 (WebCore::ScrollAnimator::ScrollAnimator): 59582 (WebCore::ScrollAnimator::~ScrollAnimator): 59583 * platform/ScrollAnimatorWin.cpp: Added Windows subclass that animates scrolls. 59584 (WebCore::ScrollAnimator::create): 59585 (WebCore::ScrollAnimatorWin::PerAxisData::PerAxisData): 59586 (WebCore::ScrollAnimatorWin::ScrollAnimatorWin): 59587 (WebCore::ScrollAnimatorWin::~ScrollAnimatorWin): 59588 (WebCore::ScrollAnimatorWin::scroll): 59589 (WebCore::ScrollAnimatorWin::setScrollPositionAndStopAnimation): 59590 (WebCore::ScrollAnimatorWin::accelerationTime): 59591 (WebCore::ScrollAnimatorWin::animationTimerFired): 59592 (WebCore::ScrollAnimatorWin::stopAnimationTimerIfNeeded): 59593 (WebCore::ScrollAnimatorWin::animateScroll): 59594 * platform/ScrollAnimatorWin.h: Added Windows subclass that animates scrolls. 59595 * platform/ScrollView.cpp: Implement new ScrollbarClient functions. Allow wheel scrolls to be animated. 59596 (WebCore::ScrollView::scrollSize): 59597 (WebCore::ScrollView::setScrollOffsetFromAnimation): 59598 (WebCore::ScrollView::updateScrollbars): 59599 (WebCore::ScrollView::wheelEvent): 59600 * platform/ScrollView.h: Implement new ScrollbarClient functions. 59601 * platform/Scrollbar.cpp: Allow ScrollAnimator to handle scrolls if present. 59602 (WebCore::Scrollbar::setValue): 59603 (WebCore::Scrollbar::scroll): 59604 (WebCore::Scrollbar::moveThumb): 59605 (WebCore::Scrollbar::setCurrentPos): 59606 (WebCore::Scrollbar::mouseMoved): 59607 * platform/Scrollbar.h: 59608 * platform/ScrollbarClient.cpp: Added to avoid having to make ScrollAnimator.h non-private. 59609 (WebCore::ScrollbarClient::ScrollbarClient): 59610 (WebCore::ScrollbarClient::~ScrollbarClient): 59611 (WebCore::ScrollbarClient::scroll): 59612 (WebCore::ScrollbarClient::setScrollPositionAndStopAnimation): 59613 * platform/ScrollbarClient.h: Add hooks for ScrollAnimator. 59614 (WebCore::ScrollbarClient::convertFromScrollbarToContainingView): 59615 (WebCore::ScrollbarClient::convertFromContainingViewToScrollbar): 59616 * platform/gtk/MainFrameScrollbarGtk.cpp: 59617 (MainFrameScrollbarGtk::gtkValueChanged): 59618 * platform/qt/ScrollbarQt.cpp: Use scroll() in preference to setValue(). 59619 (WebCore::Scrollbar::contextMenu): 59620 * platform/win/PopupMenuWin.cpp: Implement new ScrollbarClient functions. 59621 (WebCore::PopupMenuWin::scrollSize): 59622 (WebCore::PopupMenuWin::setScrollOffsetFromAnimation): 59623 * platform/win/PopupMenuWin.h: Implement new ScrollbarClient functions. 59624 * rendering/RenderDataGrid.cpp: Implement new ScrollbarClient functions. 59625 (WebCore::RenderDataGrid::scrollSize): 59626 (WebCore::RenderDataGrid::setScrollOffsetFromAnimation): 59627 * rendering/RenderDataGrid.h: Implement new ScrollbarClient functions. 59628 * rendering/RenderLayer.cpp: Implement new ScrollbarClient functions. 59629 (WebCore::RenderLayer::scrollToOffset): 59630 (WebCore::RenderLayer::scrollSize): 59631 (WebCore::RenderLayer::setScrollOffsetFromAnimation): 59632 (WebCore::RenderLayer::updateScrollInfoAfterLayout): 59633 * rendering/RenderLayer.h: Implement new ScrollbarClient functions. 59634 * rendering/RenderListBox.cpp: Implement new ScrollbarClient functions. 59635 (WebCore::RenderListBox::scrollToRevealElementAtListIndex): 59636 (WebCore::RenderListBox::scrollSize): 59637 (WebCore::RenderListBox::setScrollOffsetFromAnimation): 59638 (WebCore::RenderListBox::setScrollTop): 59639 * rendering/RenderListBox.h: Implement new ScrollbarClient functions. 59640 59641 2010-09-08 Ryosuke Niwa <rniwa (a] webkit.org> 59642 59643 Reviewed by Tony Chang. 59644 59645 applyInlineStyleToRange needs cleanup 59646 https://bugs.webkit.org/show_bug.cgi?id=45008 59647 59648 Removed rangeIsEmpty and extracted the entire loop into applyInlineStyleToNodeRange. 59649 applyInlineStyleToRange is now a wrapper that fixes range and passes it on to applyInlineStyleToNodeRange. 59650 59651 No new tests are added since this is a cleanup. 59652 59653 * editing/ApplyStyleCommand.cpp: 59654 (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Cleaned up. 59655 (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Extracted from applyInlineStyleToRange. 59656 * editing/ApplyStyleCommand.h: 59657 59658 2010-09-08 Andy Estes <aestes (a] apple.com> 59659 59660 Rubber-stamped by Darin Adler. 59661 59662 Incorporate additional feedback from 59663 https://bugs.webkit.org/show_bug.cgi?id=45364. 59664 59665 * html/HTMLObjectElement.cpp: 59666 (WebCore::HTMLObjectElement::parametersForPlugin): Rename urlParam to 59667 urlParameter. 59668 * loader/SubframeLoader.h: Add argument names to the definition of 59669 SubframeLoader::resourceWillUsePlugin(). 59670 59671 2010-09-07 Oliver Hunt <oliver (a] apple.com> 59672 59673 Reviewed by Anders Carlsson. 59674 59675 Support SerializedScriptValue in WebKit2 59676 https://bugs.webkit.org/show_bug.cgi?id=45340 59677 59678 Add a new constructor that allows WebKit2 to create a SerializedScriptValue 59679 directly from serialized data. 59680 59681 * WebCore.exp.in: 59682 * bindings/js/SerializedScriptValue.h: 59683 (WebCore::SerializedScriptValue::adopt): 59684 (WebCore::SerializedScriptValue::data): 59685 59686 2010-09-08 Andy Estes <aestes (a] apple.com> 59687 59688 Reviewed by Eric Carlson. 59689 59690 Fallback content should be rendered when an <object> doesn't specify a 59691 data, type or classid attribute. 59692 https://bugs.webkit.org/show_bug.cgi?id=45364 59693 <rdar://problem/8375816> 59694 59695 HTML5 says that if no data or type attribute is specified on an <object>, 59696 fallback content should be rendered. However, WebKit has traditionally 59697 supported specifying a URL and MIME type in <param> elements. 59698 59699 To more closely match the spec while maintaining compatibility with 59700 content that relied on our old behavior, we will continue to load 59701 a resource specified by <param> elements if we can determine a priori 59702 that it will be handled by a plug-in. 59703 59704 If we can't make this determination, and the <object> element has no 59705 "data" or "type" attribute, the <param> elements will be ignored and 59706 fallback content will be rendered. Otherwise, there is no change in 59707 behavior. 59708 59709 * html/HTMLObjectElement.cpp: 59710 (WebCore::HTMLObjectElement::parametersForPlugin): If an empty url is 59711 passed to this function and a <param> exists that specifies a url that 59712 references a plug-in resource, set it to url, making it the url that 59713 will be loaded by the <object> element. 59714 (WebCore::HTMLObjectElement::updateWidget): If no type attribute was 59715 specified, but there is a classid attribute, try to map the classid to 59716 a MIME type. This needs to be done before calling 59717 HTMLObjectElement::parametersForPlugin(). 59718 * loader/SubframeLoader.cpp: 59719 (WebCore::SubframeLoader::resourceWillUsePlugin): Make a public method 59720 that determines if a resource will load a plug-in based on its url and 59721 MIME type. This is equivalent to calling 59722 SubframeLoader::shouldUsePlugin(), but does not burden the caller with 59723 the details of fallback content. 59724 * loader/SubframeLoader.h: 59725 59726 2010-09-08 Pavel Podivilov <podivilov (a] chromium.org> 59727 59728 Reviewed by Yury Semikhatsky. 59729 59730 Web Inspector: add breakpoints to source frame after content is loaded. 59731 https://bugs.webkit.org/show_bug.cgi?id=43056 59732 59733 * inspector/front-end/ScriptsPanel.js: 59734 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 59735 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 59736 * inspector/front-end/SourceView.js: 59737 (WebInspector.SourceView.prototype._contentLoaded): 59738 59739 2010-09-08 Andreas Kling <andreas.kling (a] nokia.com> 59740 59741 Reviewed by Kenneth Rohde Christiansen. 59742 59743 Canvas: Remove unnecessary null-check of canvas() in getImageData() 59744 https://bugs.webkit.org/show_bug.cgi?id=45394 59745 59746 canvas() is already dereferenced earlier in the function so there is 59747 no use in checking it for null later. 59748 59749 * html/canvas/CanvasRenderingContext2D.cpp: 59750 (WebCore::CanvasRenderingContext2D::getImageData): 59751 59752 2010-09-08 Philippe Normand <pnormand (a] igalia.com> 59753 59754 Reviewed by Eric Carlson. 59755 59756 [GStreamer] cache media duration in READY instead of PLAYING 59757 https://bugs.webkit.org/show_bug.cgi?id=39053 59758 59759 New cacheDuration private method used to in updateStates() and 59760 durationChanged(). 59761 59762 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 59763 (WebCore::MediaPlayerPrivateGStreamer::updateStates): 59764 (WebCore::MediaPlayerPrivateGStreamer::cacheDuration): 59765 (WebCore::MediaPlayerPrivateGStreamer::durationChanged): 59766 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 59767 59768 2010-09-08 Martin Robinson <mrobinson (a] igalia.com> 59769 59770 Reviewed by Xan Lopez. 59771 59772 [GTK] Need a WebSocket implementation 59773 https://bugs.webkit.org/show_bug.cgi?id=45197 59774 59775 Add a GIO-based WebSocket implementation. This does not yet support 59776 SSL sockets or proxies, but these should be possible to add as support 59777 arrives in GLib/GIO for them. 59778 59779 * platform/network/soup/SocketStreamHandle.h: 59780 * platform/network/soup/SocketStreamHandleSoup.cpp: Add a GIO-based WebSocket implementation. 59781 (WebCore::isActiveHandle): Added. 59782 (WebCore::deactivateHandle): Added. 59783 (WebCore::SocketStreamHandle::SocketStreamHandle): Filled out stub. 59784 (WebCore::SocketStreamHandle::~SocketStreamHandle): Ditto. 59785 (WebCore::SocketStreamHandle::connected): Added. 59786 (WebCore::SocketStreamHandle::readBytes): Added. 59787 (WebCore::SocketStreamHandle::writeReady): Added. 59788 (WebCore::SocketStreamHandle::platformSend): Filled out stub. 59789 (WebCore::SocketStreamHandle::platformClose): Filled out stub. 59790 (WebCore::SocketStreamHandle::beginWaitingForSocketWritability): Added. 59791 (WebCore::SocketStreamHandle::stopWaitingForSocketWritability): 59792 (WebCore::connectedCallback): Added. 59793 (WebCore::readReadyCallback): Added. 59794 (WebCore::writeReadyCallback): Added. 59795 59796 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 59797 59798 Reviewed by Dirk Schulze. 59799 59800 [Cairo] Actually use the antialias parameter of GraphicsContext::clipConvexPolygon 59801 https://bugs.webkit.org/show_bug.cgi?id=45355 59802 59803 r63864 added an additional boolean parameter to GraphicsContext::clipConvexPolygon, 59804 which determines whether or not to render the render the clip with anti-aliasing 59805 or not. The Cairo implementation now uses that parameter to determine the argument 59806 to pass to cairo_set_antialias(...) when clipping. 59807 59808 Test: This is tested by many tests in fast/borders. 59809 59810 * platform/graphics/cairo/GraphicsContextCairo.cpp: 59811 (WebCore::GraphicsContext::clipConvexPolygon): Actually use the boolean antialias parameter. 59812 59813 2010-09-08 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 59814 59815 Reviewed by Kenneth Rohde Christiansen. 59816 59817 [EFL] Support to enable HTML5's Video based on gstreamer in WebKit-EFL 59818 https://bugs.webkit.org/show_bug.cgi?id=44098 59819 59820 To support video of HTML5 based on gstreamer, add files regarding gstreamer to 59821 CMakeListsEfl.txt. 59822 59823 * CMakeListsEfl.txt: 59824 59825 2010-09-08 Jan E Hanssen <jhanssen (a] sencha.com> 59826 59827 Reviewed by Dirk Schulze. 59828 59829 [Qt] PathQt should use the QPainterPath functionality for calculations 59830 https://bugs.webkit.org/show_bug.cgi?id=43837 59831 59832 Change PathQt to use the built-in functionality of QPainterPath for 59833 calculating length(), pointAtLength() and normalAngleAtLength(). 59834 59835 * platform/graphics/Path.cpp: 59836 * platform/graphics/qt/PathQt.cpp: 59837 (WebCore::Path::length): 59838 (WebCore::Path::pointAtLength): 59839 (WebCore::Path::normalAngleAtLength): 59840 59841 2010-09-08 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 59842 59843 Reviewed by Dirk Schulze. 59844 59845 [WML] Remove create() function in WMLTaskElement because of build break. 59846 https://bugs.webkit.org/show_bug.cgi?id=44954 59847 59848 Remove create() function in WMLTaskElement.cpp because of build breaks. 59849 59850 * wml/WMLTaskElement.cpp: 59851 * wml/WMLTaskElement.h: 59852 59853 2010-09-08 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 59854 59855 Reviewed by Dirk Schulze. 59856 59857 [WML] Add create functions to WML. 59858 https://bugs.webkit.org/show_bug.cgi?id=44950 59859 59860 There are missing definitions of create function in WML area. 59861 So, there are build breaks when enabling WML. The create functions and the construction 59862 are added. In addition, a style error and duplicated adoptRef usage are fixed. 59863 59864 * wml/WMLDocument.h: 59865 (WebCore::WMLDocument::create): 59866 * wml/WMLFormControlElement.h: 59867 * wml/WMLIntrinsicEvent.cpp: 59868 (WebCore::WMLIntrinsicEvent::WMLIntrinsicEvent): 59869 * wml/WMLIntrinsicEvent.h: 59870 59871 2010-09-08 Nico Weber <thakis (a] chromium.org> 59872 59873 Reviewed by Kenneth Russell. 59874 59875 chromium/mac: Fix crash with compositor due to missing current NSGraphicsContext 59876 https://bugs.webkit.org/show_bug.cgi?id=45354 59877 59878 * platform/graphics/chromium/ContentLayerChromium.cpp: 59879 (WebCore::ContentLayerChromium::updateContents): Set a current local context. 59880 59881 2010-09-08 Justin Schuh <jschuh (a] chromium.org> 59882 59883 Reviewed by Nikolas Zimmermann. 59884 59885 NULL deref when use target is reset, then set to display:none 59886 https://bugs.webkit.org/show_bug.cgi?id=45345 59887 59888 Move the NULL check on shadowRoot earlier in SVGUseElement::recalcStyle 59889 59890 Test: svg/custom/use-display-none.svg 59891 59892 * svg/SVGUseElement.cpp: 59893 (WebCore::SVGUseElement::recalcStyle): 59894 59895 2010-08-30 Maciej Stachowiak <mjs (a] apple.com> 59896 59897 Reviewed by Darin Adler. 59898 59899 Handle MediaQueryExp memory management exclusively with smart pointers 59900 https://bugs.webkit.org/show_bug.cgi?id=44874 59901 59902 Gace MediaQueryExp a create function, made the constructor private, and followed 59903 the implications. The one tricky bit was using a non-copying sort to sort 59904 the Vector<OwnPtr<MediaQueryExp> > in the MediaQuery constructor. 59905 59906 * ForwardingHeaders/wtf/NonCopyingSort.h: Added. 59907 * css/CSSGrammar.y: 59908 * css/CSSParser.cpp: 59909 (WebCore::CSSParser::~CSSParser): 59910 (WebCore::CSSParser::createFloatingMediaQueryExp): 59911 (WebCore::CSSParser::createFloatingMediaQueryExpList): 59912 (WebCore::CSSParser::sinkFloatingMediaQueryExpList): 59913 (WebCore::CSSParser::createFloatingMediaQuery): 59914 * css/CSSParser.h: 59915 * css/MediaList.cpp: 59916 * css/MediaQuery.cpp: 59917 (WebCore::expressionCompare): 59918 (WebCore::MediaQuery::MediaQuery): 59919 (WebCore::MediaQuery::~MediaQuery): 59920 * css/MediaQuery.h: 59921 (WebCore::MediaQuery::expressions): 59922 * css/MediaQueryEvaluator.cpp: 59923 (WebCore::MediaQueryEvaluator::eval): 59924 * css/MediaQueryExp.h: 59925 (WebCore::MediaQueryExp::create): 59926 59927 2010-09-08 Adam Barth <abarth (a] webkit.org> 59928 59929 Reviewed by Maciej Stachowiak. 59930 59931 Remove unused member variable from DecodedDocumentParser 59932 https://bugs.webkit.org/show_bug.cgi?id=45379 59933 59934 This member variable isn't used because of the recent split of 59935 TextDocumentParser and TextViewSourceParser. 59936 59937 * dom/DecodedDataDocumentParser.cpp: 59938 (WebCore::DecodedDataDocumentParser::DecodedDataDocumentParser): 59939 * dom/DecodedDataDocumentParser.h: 59940 * dom/ScriptableDocumentParser.cpp: 59941 (WebCore::ScriptableDocumentParser::ScriptableDocumentParser): 59942 * dom/ScriptableDocumentParser.h: 59943 59944 2010-09-08 Csaba Osztrogonc <ossy (a] webkit.org> 59945 59946 Reviewed by Andreas Kling. 59947 59948 Fix warning in rendering/RenderBlock.cpp. 59949 https://bugs.webkit.org/show_bug.cgi?id=45373 59950 59951 * rendering/RenderBlock.cpp: 59952 (WebCore::RenderBlock::hitTestColumns): Suggested parentheses added around && within || 59953 59954 2010-09-08 Mario Sanchez Prada <msanchez (a] igalia.com> 59955 59956 Reviewed by Martin Robinson. 59957 59958 [Gtk] A list item's number/bullet should not be a child of that list item 59959 https://bugs.webkit.org/show_bug.cgi?id=45190 59960 59961 Ignore list markers and prefix them to the text for the item 59962 59963 * accessibility/gtk/AccessibilityObjectAtk.cpp: 59964 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): 59965 Make list markers ignore accessibility for the GTK port. 59966 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 59967 (webkit_accessible_text_get_text): Prefix the text of a marker 59968 along with the accessible text for its list item's AtkObject 59969 59970 2010-09-08 Adam Barth <abarth (a] webkit.org> 59971 59972 Rubber-stamped by Eric Seidel. 59973 59974 Rename DocLoader to CachedResourceLoader because that's what it does. 59975 59976 * Android.mk: 59977 * CMakeLists.txt: 59978 * GNUmakefile.am: 59979 * WebCore.gypi: 59980 * WebCore.pro: 59981 * WebCore.vcproj/WebCore.vcproj: 59982 * WebCore.xcodeproj/project.pbxproj: 59983 * css/CSSCursorImageValue.cpp: 59984 (WebCore::CSSCursorImageValue::cachedImage): 59985 * css/CSSCursorImageValue.h: 59986 * css/CSSFontFaceSource.cpp: 59987 (WebCore::CSSFontFaceSource::getFontData): 59988 * css/CSSFontSelector.cpp: 59989 (WebCore::CSSFontSelector::cachedResourceLoader): 59990 (WebCore::CSSFontSelector::addFontFaceRule): 59991 * css/CSSFontSelector.h: 59992 * css/CSSImageValue.cpp: 59993 (WebCore::CSSImageValue::cachedImage): 59994 * css/CSSImageValue.h: 59995 * css/CSSImportRule.cpp: 59996 (WebCore::CSSImportRule::insertedIntoParent): 59997 * css/CSSStyleSelector.cpp: 59998 (WebCore::CSSStyleSelector::loadPendingImages): 59999 * css/CSSStyleSheet.h: 60000 * dom/Document.cpp: 60001 (WebCore::Document::Document): 60002 (WebCore::Document::~Document): 60003 (WebCore::Document::implicitClose): 60004 * dom/Document.h: 60005 (WebCore::Document::cachedResourceLoader): 60006 * dom/ProcessingInstruction.cpp: 60007 (WebCore::ProcessingInstruction::checkStyleSheet): 60008 * dom/ScriptElement.cpp: 60009 (WebCore::ScriptElementData::requestScript): 60010 * dom/XMLDocumentParser.cpp: 60011 * dom/XMLDocumentParser.h: 60012 * dom/XMLDocumentParserLibxml2.cpp: 60013 (WebCore::matchFunc): 60014 (WebCore::shouldAllowExternalLoad): 60015 (WebCore::openFunc): 60016 (WebCore::XMLDocumentParser::doWrite): 60017 (WebCore::XMLDocumentParser::endElementNs): 60018 (WebCore::XMLDocumentParser::initializeParserContext): 60019 (WebCore::XMLDocumentParser::doEnd): 60020 (WebCore::xmlDocPtrForString): 60021 * dom/XMLDocumentParserQt.cpp: 60022 (WebCore::XMLDocumentParser::parseEndElement): 60023 * dom/XMLDocumentParserScope.cpp: 60024 (WebCore::XMLDocumentParserScope::XMLDocumentParserScope): 60025 (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope): 60026 * dom/XMLDocumentParserScope.h: 60027 * editing/Editor.cpp: 60028 (WebCore::Editor::paste): 60029 * editing/mac/EditorMac.mm: 60030 (WebCore::Editor::paste): 60031 * html/HTMLLinkElement.cpp: 60032 (WebCore::HTMLLinkElement::process): 60033 * html/parser/CSSPreloadScanner.cpp: 60034 (WebCore::CSSPreloadScanner::emitRule): 60035 * html/parser/HTMLPreloadScanner.cpp: 60036 (WebCore::HTMLNames::PreloadTask::preload): 60037 * html/parser/HTMLScriptRunner.cpp: 60038 (WebCore::HTMLScriptRunner::requestPendingScript): 60039 * inspector/InspectorResource.cpp: 60040 (WebCore::InspectorResource::cachedResource): 60041 * loader/Cache.cpp: 60042 (WebCore::Cache::requestResource): 60043 (WebCore::Cache::requestUserCSSStyleSheet): 60044 (WebCore::Cache::revalidateResource): 60045 (WebCore::Cache::addCachedResourceLoader): 60046 (WebCore::Cache::removeCachedResourceLoader): 60047 * loader/Cache.h: 60048 * loader/CachedCSSStyleSheet.h: 60049 * loader/CachedFont.cpp: 60050 (WebCore::CachedFont::load): 60051 (WebCore::CachedFont::beginLoadIfNeeded): 60052 * loader/CachedFont.h: 60053 * loader/CachedImage.cpp: 60054 (WebCore::CachedImage::load): 60055 (WebCore::CachedImage::maximumDecodedImageSize): 60056 * loader/CachedImage.h: 60057 * loader/CachedResource.cpp: 60058 (WebCore::CachedResource::CachedResource): 60059 (WebCore::CachedResource::~CachedResource): 60060 (WebCore::CachedResource::load): 60061 * loader/CachedResource.h: 60062 (WebCore::CachedResource::load): 60063 (WebCore::CachedResource::setCachedResourceLoader): 60064 * loader/CachedResourceLoader.cpp: Copied from WebCore/loader/DocLoader.cpp. 60065 (WebCore::CachedResourceLoader::CachedResourceLoader): 60066 (WebCore::CachedResourceLoader::~CachedResourceLoader): 60067 (WebCore::CachedResourceLoader::frame): 60068 (WebCore::CachedResourceLoader::checkForReload): 60069 (WebCore::CachedResourceLoader::requestImage): 60070 (WebCore::CachedResourceLoader::requestFont): 60071 (WebCore::CachedResourceLoader::requestCSSStyleSheet): 60072 (WebCore::CachedResourceLoader::requestUserCSSStyleSheet): 60073 (WebCore::CachedResourceLoader::requestScript): 60074 (WebCore::CachedResourceLoader::requestXSLStyleSheet): 60075 (WebCore::CachedResourceLoader::requestLinkPrefetch): 60076 (WebCore::CachedResourceLoader::canRequest): 60077 (WebCore::CachedResourceLoader::requestResource): 60078 (WebCore::CachedResourceLoader::printAccessDeniedMessage): 60079 (WebCore::CachedResourceLoader::setAutoLoadImages): 60080 (WebCore::CachedResourceLoader::cachePolicy): 60081 (WebCore::CachedResourceLoader::removeCachedResource): 60082 (WebCore::CachedResourceLoader::setLoadInProgress): 60083 (WebCore::CachedResourceLoader::checkCacheObjectStatus): 60084 (WebCore::CachedResourceLoader::incrementRequestCount): 60085 (WebCore::CachedResourceLoader::decrementRequestCount): 60086 (WebCore::CachedResourceLoader::requestCount): 60087 (WebCore::CachedResourceLoader::preload): 60088 (WebCore::CachedResourceLoader::checkForPendingPreloads): 60089 (WebCore::CachedResourceLoader::requestPreload): 60090 (WebCore::CachedResourceLoader::clearPreloads): 60091 (WebCore::CachedResourceLoader::clearPendingPreloads): 60092 (WebCore::CachedResourceLoader::printPreloadStats): 60093 * loader/CachedResourceLoader.h: Copied from WebCore/loader/DocLoader.h. 60094 * loader/CachedScript.h: 60095 * loader/CachedXSLStyleSheet.h: 60096 * loader/DocLoader.cpp: Removed. 60097 * loader/DocLoader.h: Removed. 60098 * loader/DocumentLoader.cpp: 60099 (WebCore::DocumentLoader::isLoadingInAPISense): 60100 (WebCore::DocumentLoader::subresource): 60101 (WebCore::DocumentLoader::getSubresources): 60102 * loader/FrameLoader.cpp: 60103 (WebCore::numRequests): 60104 (WebCore::FrameLoader::stopLoading): 60105 (WebCore::FrameLoader::didBeginDocument): 60106 * loader/HistoryController.cpp: 60107 (WebCore::HistoryController::createItem): 60108 * loader/ImageLoader.cpp: 60109 (WebCore::ImageLoader::updateFromElement): 60110 * loader/Request.cpp: 60111 (WebCore::Request::Request): 60112 * loader/Request.h: 60113 (WebCore::Request::cachedResourceLoader): 60114 * loader/loader.cpp: 60115 (WebCore::Loader::load): 60116 (WebCore::Loader::cancelRequests): 60117 (WebCore::Loader::Host::servePendingRequests): 60118 (WebCore::Loader::Host::didFinishLoading): 60119 (WebCore::Loader::Host::didFail): 60120 (WebCore::Loader::Host::didReceiveResponse): 60121 (WebCore::Loader::Host::cancelPendingRequests): 60122 (WebCore::Loader::Host::cancelRequests): 60123 * loader/loader.h: 60124 * page/DragController.cpp: 60125 (WebCore::DragController::concludeEditDrag): 60126 * page/Frame.cpp: 60127 * page/FrameView.cpp: 60128 (WebCore::FrameView::checkStopDelayingDeferredRepaints): 60129 (WebCore::FrameView::updateDeferredRepaintDelay): 60130 * page/Settings.cpp: 60131 (WebCore::setLoadsImagesAutomaticallyInAllFrames): 60132 * platform/android/TemporaryLinkStubs.cpp: 60133 (WebCore::CheckCacheObjectStatus): 60134 * platform/network/android/ResourceHandleAndroid.cpp: 60135 (WebCore::ResourceHandle::start): 60136 * platform/network/cf/ResourceHandleCFNet.cpp: 60137 * platform/network/curl/ResourceHandleCurl.cpp: 60138 * platform/network/mac/ResourceHandleMac.mm: 60139 * platform/network/qt/ResourceHandleQt.cpp: 60140 * platform/network/soup/ResourceHandleSoup.cpp: 60141 * platform/network/win/ResourceHandleWin.cpp: 60142 * svg/SVGFEImageElement.cpp: 60143 (WebCore::SVGFEImageElement::requestImageResource): 60144 * svg/SVGFontFaceUriElement.cpp: 60145 (WebCore::SVGFontFaceUriElement::loadFont): 60146 * workers/Worker.cpp: 60147 * xml/XSLImportRule.cpp: 60148 (WebCore::XSLImportRule::loadSheet): 60149 * xml/XSLStyleSheet.h: 60150 * xml/XSLStyleSheetLibxslt.cpp: 60151 (WebCore::XSLStyleSheet::cachedResourceLoader): 60152 (WebCore::XSLStyleSheet::parseString): 60153 * xml/XSLStyleSheetQt.cpp: 60154 (WebCore::XSLStyleSheet::cachedResourceLoader): 60155 * xml/XSLTProcessor.cpp: 60156 * xml/XSLTProcessorLibxslt.cpp: 60157 (WebCore::docLoaderFunc): 60158 (WebCore::setXSLTLoadCallBack): 60159 (WebCore::xmlDocPtrFromNode): 60160 (WebCore::XSLTProcessor::transformToString): 60161 60162 2010-09-06 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 60163 60164 Reviewed by Eric Carlson. 60165 60166 Add mediaPlayerPlaybackStateChanged to MediaPlayerClient 60167 60168 https://bugs.webkit.org/show_bug.cgi?id=45263 60169 60170 The platform backend may change state, for example as a result 60171 of an external plugin controlling the backend, so we need to 60172 react to this situation by syncing up the WebCore state with the 60173 platform backend. 60174 60175 We call playInternal()/pauseInternal() depending on the backend 60176 state, to trigger the corresponding DOM events to match the state. 60177 60178 updatePlayState() is then refactored to take into account the 60179 situation where the backend is already in the correct state but 60180 WebCore is not, so that we update the playback progress timer 60181 and set m_playing correctly. 60182 60183 updatePlayState() changes Should be covered by existing tests. 60184 60185 * html/HTMLMediaElement.cpp: 60186 (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged): 60187 (WebCore::HTMLMediaElement::updatePlayState): 60188 * html/HTMLMediaElement.h: 60189 * platform/graphics/MediaPlayer.cpp: 60190 (WebCore::MediaPlayer::playbackStateChanged): 60191 * platform/graphics/MediaPlayer.h: 60192 (WebCore::MediaPlayerClient::mediaPlayerPlaybackStateChanged): 60193 60194 2010-09-08 Adam Barth <abarth (a] webkit.org> 60195 60196 Reviewed by Eric Seidel. 60197 60198 TextDocument doesn't belong in WebCore/loader 60199 https://bugs.webkit.org/show_bug.cgi?id=45346 60200 60201 TextDocument has nothing to do with loading. It turns out that it 60202 should be in WebCore/html because TextDocument is actually a subclass 60203 of HTMLDocument (in quirks mode, no less). 60204 60205 * Android.mk: 60206 * CMakeLists.txt: 60207 * GNUmakefile.am: 60208 * WebCore.gypi: 60209 * WebCore.pro: 60210 * WebCore.vcproj/WebCore.vcproj: 60211 * WebCore.xcodeproj/project.pbxproj: 60212 * html/TextDocument.cpp: Renamed from WebCore/loader/TextDocument.cpp. 60213 (WebCore::TextDocument::TextDocument): 60214 (WebCore::TextDocument::createParser): 60215 * html/TextDocument.h: Renamed from WebCore/loader/TextDocument.h. 60216 (WebCore::TextDocument::create): 60217 60218 2010-09-08 Adam Barth <abarth (a] webkit.org> 60219 60220 Reviewed by Eric Seidel. 60221 60222 Create TextViewSourceParser 60223 https://bugs.webkit.org/show_bug.cgi?id=45343 60224 60225 Rather than have the view source document set a flag on 60226 HTMLViewSourceParser to indicate whether we're parsing a text document, 60227 this patch creates a TextViewSourceParser for parsing text documents in 60228 view-source mode. Like the TextDocumentParser, the 60229 TextViewSourceParser implements this functionality by subclassing its 60230 HTML counterpart. 60231 60232 * Android.mk: 60233 * CMakeLists.txt: 60234 * GNUmakefile.am: 60235 * WebCore.gypi: 60236 * WebCore.pro: 60237 * WebCore.vcproj/WebCore.vcproj: 60238 * WebCore.xcodeproj/project.pbxproj: 60239 * html/HTMLViewSourceDocument.cpp: 60240 (WebCore::HTMLViewSourceDocument::createParser): 60241 * html/parser/HTMLViewSourceParser.cpp: 60242 * html/parser/HTMLViewSourceParser.h: 60243 (WebCore::HTMLViewSourceParser::tokenizer): 60244 * html/parser/TextViewSourceParser.cpp: Added. 60245 (WebCore::TextViewSourceParser::TextViewSourceParser): 60246 (WebCore::TextViewSourceParser::~TextViewSourceParser): 60247 * html/parser/TextViewSourceParser.h: Added. 60248 (WebCore::TextViewSourceParser::create): 60249 60250 2010-09-08 Adam Barth <abarth (a] webkit.org> 60251 60252 Reviewed by Darin Adler. 60253 60254 Move HTMLInputStream to WebCore/html/parser 60255 https://bugs.webkit.org/show_bug.cgi?id=45339 60256 60257 I forgot to move this file before. 60258 60259 * GNUmakefile.am: 60260 * WebCore.gypi: 60261 * WebCore.vcproj/WebCore.vcproj: 60262 * WebCore.xcodeproj/project.pbxproj: 60263 * html/parser/HTMLInputStream.h: Renamed from WebCore/html/HTMLInputStream.h. 60264 (WebCore::HTMLInputStream::HTMLInputStream): 60265 (WebCore::HTMLInputStream::appendToEnd): 60266 (WebCore::HTMLInputStream::insertAtCurrentInsertionPoint): 60267 (WebCore::HTMLInputStream::hasInsertionPoint): 60268 (WebCore::HTMLInputStream::markEndOfFile): 60269 (WebCore::HTMLInputStream::haveSeenEndOfFile): 60270 (WebCore::HTMLInputStream::current): 60271 (WebCore::HTMLInputStream::splitInto): 60272 (WebCore::HTMLInputStream::mergeFrom): 60273 (WebCore::InsertionPointRecord::InsertionPointRecord): 60274 (WebCore::InsertionPointRecord::~InsertionPointRecord): 60275 60276 2010-09-08 Adam Barth <abarth (a] webkit.org> 60277 60278 Reviewed by Eric Seidel. 60279 60280 TextDocument should come in from the cold 60281 https://bugs.webkit.org/show_bug.cgi?id=45334 60282 60283 Previously, TextDocument reinvented the wheel to parse text. This 60284 patch replaces TextDocument's hand-rolled parser with a parser built on 60285 the HTML parser infrustructure, which gives us that stuff for free. I 60286 also disentangled TextDocument from HTMLViewSourceDocument. 60287 60288 In a future patch, I'll move TextDocument out of the "loader" directory. 60289 60290 * Android.mk: 60291 * CMakeLists.txt: 60292 * GNUmakefile.am: 60293 * WebCore.gypi: 60294 * WebCore.pro: 60295 * WebCore.vcproj/WebCore.vcproj: 60296 * WebCore.xcodeproj/project.pbxproj: 60297 * html/HTMLViewSourceDocument.cpp: 60298 (WebCore::HTMLViewSourceDocument::createParser): 60299 * html/HTMLViewSourceDocument.h: 60300 * html/parser/HTMLTreeBuilder.cpp: 60301 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 60302 (WebCore::HTMLTreeBuilder::constructTreeFromAtomicToken): 60303 * html/parser/HTMLTreeBuilder.h: 60304 * html/parser/HTMLViewSourceParser.cpp: 60305 (WebCore::HTMLViewSourceParser::forcePlaintext): 60306 * html/parser/HTMLViewSourceParser.h: 60307 * html/parser/TextDocumentParser.cpp: Added. 60308 (WebCore::TextDocumentParser::TextDocumentParser): 60309 (WebCore::TextDocumentParser::~TextDocumentParser): 60310 (WebCore::TextDocumentParser::insertFakePreElement): 60311 * html/parser/TextDocumentParser.h: Added. 60312 (WebCore::TextDocumentParser::create): 60313 * loader/TextDocument.cpp: 60314 * loader/TextDocument.h: 60315 60316 2010-09-06 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 60317 60318 Reviewed by Andreas Kling. 60319 60320 Implement MediaPlayerPrivate::platformMedia() for the Qt port 60321 60322 https://bugs.webkit.org/show_bug.cgi?id=45264 60323 60324 * platform/graphics/MediaPlayer.h: 60325 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 60326 (WebCore::MediaPlayerPrivate::platformMedia): 60327 * platform/graphics/qt/MediaPlayerPrivateQt.h: 60328 60329 2010-09-08 Zoltan Herczeg <zherczeg (a] webkit.org> 60330 60331 Reviewed by Dirk Schulze. 60332 60333 An individual renderer should be assigned to each SVGFE*Element class 60334 https://bugs.webkit.org/show_bug.cgi?id=43954 60335 60336 RenderSVGResourceFilterPrimitive renderer is added to 60337 the project, and assigned to each object, which class is 60338 derived from SVGFilterPrimitiveStandardAttributes. The patch 60339 mainly contains build system changes, and it fixes one layout 60340 test in svg/dynamic-updates. 60341 60342 * Android.mk: 60343 * CMakeLists.txt: 60344 * GNUmakefile.am: 60345 * WebCore.gypi: 60346 * WebCore.pro: 60347 * WebCore.vcproj/WebCore.vcproj: 60348 * WebCore.xcodeproj/project.pbxproj: 60349 * rendering/RenderObject.h: 60350 (WebCore::RenderObject::isSVGResourceFilterPrimitive): 60351 * rendering/RenderSVGResourceFilterPrimitive.cpp: Added. 60352 (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive): 60353 * rendering/RenderSVGResourceFilterPrimitive.h: Added. 60354 (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive): 60355 * rendering/SVGRenderTreeAsText.cpp: 60356 (WebCore::writeSVGContainer): 60357 * svg/SVGFEDiffuseLightingElement.cpp: 60358 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): 60359 * svg/SVGFELightElement.cpp: 60360 (WebCore::SVGFELightElement::svgAttributeChanged): 60361 (WebCore::SVGFELightElement::childrenChanged): 60362 * svg/SVGFEOffsetElement.cpp: 60363 (WebCore::SVGFEOffsetElement::svgAttributeChanged): 60364 * svg/SVGFilterElement.h: 60365 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 60366 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 60367 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 60368 (WebCore::SVGFilterPrimitiveStandardAttributes::createRenderer): 60369 * svg/SVGFilterPrimitiveStandardAttributes.h: 60370 (WebCore::SVGFilterPrimitiveStandardAttributes::invalidate): 60371 60372 2010-09-07 Sam Weinig <sam (a] webkit.org> 60373 60374 Reviewed by Dan Bernstein. 60375 60376 DatasetDOMStringMap does not have the right memory model 60377 https://bugs.webkit.org/show_bug.cgi?id=45358 60378 60379 Test: fast/dom/dataset-gc.html 60380 60381 * bindings/js/JSElementCustom.cpp: 60382 (WebCore::JSElement::markChildren): 60383 Mark the dataset if it exists. 60384 60385 * dom/Element.cpp: 60386 (WebCore::Element::optionalDataset): 60387 * dom/Element.h: 60388 Expose a way to get the dataset or null (depending on if anyone thing 60389 has forced its creation yet). 60390 60391 2010-09-07 Jan E Hanssen <jhanssen (a] sencha.com> 60392 60393 Reviewed by Andreas Kling. 60394 60395 [Qt] Add a separate Path::closeCanvasSubpath() function for canvas paths 60396 https://bugs.webkit.org/show_bug.cgi?id=45331 60397 60398 This is needed due to an adverse effect of the fix in 44061 that causes 60399 certain paths not to be closed. This is not important for canvas paths 60400 but it is for SVG paths, so splitting up the code in a generic (SVG) 60401 case and one specialized for canvas. 60402 60403 Test: svg/dom/path-totalLength.html 60404 60405 * html/canvas/CanvasRenderingContext2D.cpp: 60406 (WebCore::CanvasRenderingContext2D::closePath): 60407 * platform/graphics/Path.h: 60408 (WebCore::Path::closeCanvasSubpath): 60409 * platform/graphics/qt/PathQt.cpp: 60410 (WebCore::Path::closeSubpath): 60411 (WebCore::Path::closeCanvasSubpath): 60412 60413 2010-09-07 Simon Fraser <simon.fraser (a] apple.com> 60414 60415 Reviewed by Chris Marrin. 60416 60417 Transform animations always run in software now 60418 https://bugs.webkit.org/show_bug.cgi?id=45341 60419 60420 After r66339 we always fell into software animation, because we 60421 failed to detect transform or opacity properties in the keyframes, 60422 so would send an empty list of values to the GraphicsLayer. 60423 60424 Fixed by using CSSProperty values, rather than GraphicsLayer 60425 values, when detecting the presence of properties in the keyframes. 60426 60427 Test: manual-tests/transition-accelerated.html 60428 60429 * rendering/RenderLayerBacking.cpp: 60430 (WebCore::RenderLayerBacking::startAnimation): 60431 60432 2010-09-07 Chris Rogers <crogers (a] google.com> 60433 60434 Reviewed by Kenneth Russell. 60435 60436 audio engine: add FFTFrame files 60437 https://bugs.webkit.org/show_bug.cgi?id=34827 60438 60439 No new tests since audio API is not yet implemented. 60440 60441 * platform/audio/FFTFrame.cpp: Added. 60442 (WebCore::FFTFrame::doPaddedFFT): 60443 (WebCore::FFTFrame::createInterpolatedFrame): 60444 (WebCore::FFTFrame::interpolateFrequencyComponents): 60445 (WebCore::FFTFrame::extractAverageGroupDelay): 60446 (WebCore::FFTFrame::addConstantGroupDelay): 60447 (WebCore::FFTFrame::print): 60448 * platform/audio/FFTFrame.h: Added. 60449 (WebCore::FFTFrame::fftSize): 60450 (WebCore::FFTFrame::log2FFTSize): 60451 (WebCore::FFTFrame::dspSplitComplex): 60452 * platform/audio/mac/FFTFrameMac.cpp: Added. 60453 (WebCore::FFTFrame::FFTFrame): 60454 (WebCore::FFTFrame::~FFTFrame): 60455 (WebCore::FFTFrame::multiply): 60456 (WebCore::FFTFrame::doFFT): 60457 (WebCore::FFTFrame::doInverseFFT): 60458 (WebCore::FFTFrame::fftSetupForSize): 60459 (WebCore::FFTFrame::cleanup): 60460 (WebCore::FFTFrame::realData): 60461 (WebCore::FFTFrame::imagData): 60462 60463 2010-09-07 Brent Fulgham <bfulgham (a] webkit.org> 60464 60465 Build fix, no review. 60466 60467 Provide stubs to allow WebKit.dll to build 60468 for the WinCairo port. 60469 60470 * platform/network/curl/ResourceRequest.h: 60471 (WebCore::ResourceRequest::ResourceRequest): 60472 * platform/network/curl/ResourceResponse.h: 60473 (WebCore::ResourceResponse::cfURLResponse): 60474 60475 2010-09-07 Chris Rogers <crogers (a] google.com> 60476 60477 Reviewed by Kenneth Russell. 60478 60479 Add AudioArray.h 60480 https://bugs.webkit.org/show_bug.cgi?id=45204 60481 60482 No new tests since audio API is not yet implemented. 60483 60484 * platform/audio/AudioArray.h: Added. 60485 (WebCore::AudioArray::AudioArray): 60486 (WebCore::AudioArray::zero): 60487 (WebCore::AudioArray::zeroRange): 60488 (WebCore::AudioArray::copyToRange): 60489 60490 2010-09-07 Mihai Parparita <mihaip (a] chromium.org> 60491 60492 Reviewed by Oliver Hunt. 60493 60494 pushState and replaceState do not clone RegExp objects correctly 60495 https://bugs.webkit.org/show_bug.cgi?id=44718 60496 60497 Add RegExp support to the JSC implementation of SerializedScriptValue 60498 (it stores the pattern and flags read from a RegExpObject, and creates 60499 a new one on deserialization). 60500 60501 Tests: fast/loader/stateobjects/pushstate-object-types.html 60502 60503 * ForwardingHeaders/runtime/RegExp.h: Added. 60504 * ForwardingHeaders/runtime/RegExpObject.h: Added. 60505 * bindings/js/SerializedScriptValue.cpp: 60506 (WebCore::CloneSerializer::dumpIfTerminal): 60507 (WebCore::CloneDeserializer::readTerminal): 60508 60509 2010-09-07 James Robinson <jamesr (a] chromium.org> 60510 60511 Reviewed by Kenneth Russell. 60512 60513 Fix compile errors in DrawingBuffer if USE(ACCELERATED_COMPOSITING) is not set 60514 https://bugs.webkit.org/show_bug.cgi?id=45324 60515 60516 Adds appropriate #if guards around code that has to deal directly with the compositor. 60517 DrawingBuffer can still be used without the compositor as an off-screen rendering 60518 region. 60519 60520 To test, compile without USE(ACCELERATED_COMPOSITING). 60521 60522 * platform/graphics/chromium/DrawingBufferChromium.cpp: 60523 (WebCore::DrawingBuffer::~DrawingBuffer): 60524 (WebCore::DrawingBuffer::reset): 60525 * platform/graphics/gpu/DrawingBuffer.h: 60526 60527 2010-09-03 Joseph Pecoraro <joepeck (a] webkit.org> 60528 60529 Reviewed by Darin Adler. 60530 60531 Provide a way to trigger a <select multiple> onchange event on changes 60532 https://bugs.webkit.org/show_bug.cgi?id=45192 60533 60534 Test: LayoutTests/platform/mac/fast/objc/dom-html-select-activate.html 60535 60536 This provides a way for a WebKit client using the Obj-C DOM bindings to 60537 trigger the "change" on a listbox select (<select multiple> or <select> 60538 with size > 1). This is because when a select is rendered as a listbox 60539 "change" events are triggered by mouse down events. 60540 60541 This adds -[DOMHTMLSelectElement _activateItemAtIndex:allowMultipleSelection:] 60542 to allow for handling multiple selections if the select element is a 60543 multi-select. 60544 60545 * bindings/objc/DOMHTML.mm: 60546 (-[DOMHTMLSelectElement _activateItemAtIndex:allowMultipleSelection:]): 60547 * bindings/objc/DOMPrivate.h: unified the Category name. Was "FormsAutocomplete" now all are "FormAutocomplete". 60548 * dom/SelectElement.h: 60549 * html/HTMLSelectElement.cpp: 60550 (WebCore::HTMLSelectElement::setSelectedIndexByUser): listboxs need to be treated specially to fire their "change" event. 60551 * html/HTMLSelectElement.h: 60552 * wml/WMLSelectElement.cpp: 60553 (WebCore::WMLSelectElement::setSelectedIndexByUser): 60554 60555 2010-09-07 Simon Fraser <simon.fraser (a] apple.com> 60556 60557 Reviewed by Darin Adler. 60558 60559 Minor WKCACFLayerRenderer cleanup 60560 https://bugs.webkit.org/show_bug.cgi?id=45201 60561 60562 Call initD3DGeometry() from createRenderer, rather than duplicating the code. 60563 60564 No behavior changes. 60565 60566 * platform/graphics/win/WKCACFLayerRenderer.cpp: 60567 (WebCore::WKCACFLayerRenderer::createRenderer): 60568 60569 2010-09-07 Vangelis Kokkevis <vangelis (a] chromium.org> 60570 60571 Reviewed by Darin Fisher. 60572 60573 [chromium] Reset the owner of PlatformLayer's once the GraphicsLayer they are associated with 60574 gets destroyed. 60575 https://bugs.webkit.org/show_bug.cgi?id=45329 60576 60577 Test: Fixes UI test failures downstream for all the Media tests when run on the buildbots (machines without GPUs). 60578 60579 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 60580 (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium): 60581 60582 2010-09-07 Anders Carlsson <andersca (a] apple.com> 60583 60584 Reviewed by Darin Adler. 60585 60586 <rdar://problem/8381749> -Wcast-align warning emitted when building with clang 60587 60588 Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc. 60589 60590 * Configurations/Base.xcconfig: 60591 60592 2010-09-07 Abhishek Arya <inferno (a] chromium.org> 60593 60594 Reviewed by Darin Adler. 60595 60596 Remove redundant bounds check in originalText(). Add bounds check 60597 to previousCharacter(). No need of start() > 0 check since m_start 60598 is unsigned and we already do start() null check inside function. 60599 https://bugs.webkit.org/show_bug.cgi?id=45303 60600 60601 Test: fast/text/one-letter-transform-crash.html 60602 60603 * rendering/RenderTextFragment.cpp: 60604 (WebCore::RenderTextFragment::originalText): 60605 (WebCore::RenderTextFragment::previousCharacter): 60606 60607 2010-09-07 Kenneth Russell <kbr (a] google.com> 60608 60609 Reviewed by Dimitri Glazkov. 60610 60611 Regression in JPEG texture uploads on Mac OS X 60612 https://bugs.webkit.org/show_bug.cgi?id=45316 60613 60614 Fixed regression introduced in 60615 https://bugs.webkit.org/show_bug.cgi?id=44566 . Added regression 60616 test covering this case to gl-teximage.html in Khronos repository 60617 and synced test with WebKit's version. 60618 60619 * platform/graphics/cg/GraphicsContext3DCG.cpp: 60620 (WebCore::GraphicsContext3D::getImageData): 60621 60622 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 60623 60624 Add rendering/ColumnInfo.h to the sources list. 60625 60626 * GNUmakefile.am: 60627 60628 2010-09-07 David Hyatt <hyatt (a] apple.com> 60629 60630 Reviewed by Beth Dakin. 60631 60632 https://bugs.webkit.org/show_bug.cgi?id=45317, encapsulate multi-column rectangle information. 60633 60634 * WebCore.xcodeproj/project.pbxproj: 60635 * rendering/ColumnInfo.h: Added. 60636 (WebCore::ColumnInfo::ColumnInfo): 60637 (WebCore::ColumnInfo::desiredColumnWidth): 60638 (WebCore::ColumnInfo::setDesiredColumnWidth): 60639 (WebCore::ColumnInfo::desiredColumnCount): 60640 (WebCore::ColumnInfo::setDesiredColumnCount): 60641 (WebCore::ColumnInfo::columnCount): 60642 (WebCore::ColumnInfo::columnRectAt): 60643 (WebCore::ColumnInfo::clearColumns): 60644 (WebCore::ColumnInfo::addColumnRect): 60645 * rendering/RenderBlock.cpp: 60646 (WebCore::RenderBlock::paintColumnRules): 60647 (WebCore::RenderBlock::paintColumnContents): 60648 (WebCore::RenderBlock::lowestPosition): 60649 (WebCore::RenderBlock::rightmostPosition): 60650 (WebCore::RenderBlock::leftmostPosition): 60651 (WebCore::RenderBlock::hitTestColumns): 60652 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): 60653 (WebCore::RenderBlock::desiredColumnWidth): 60654 (WebCore::RenderBlock::desiredColumnCount): 60655 (WebCore::RenderBlock::columnInfo): 60656 (WebCore::RenderBlock::layoutColumns): 60657 (WebCore::RenderBlock::adjustPointToColumnContents): 60658 (WebCore::RenderBlock::adjustRectForColumns): 60659 (WebCore::RenderBlock::adjustForColumns): 60660 * rendering/RenderBlock.h: 60661 * rendering/RenderLayer.cpp: 60662 (WebCore::RenderLayer::paintChildLayerIntoColumns): 60663 (WebCore::RenderLayer::hitTestChildLayerColumns): 60664 60665 2010-09-07 Dan Bernstein <mitz (a] apple.com> 60666 60667 Reviewed by Dave Hyatt. 60668 60669 <rdar://problem/7794761> Floats inside of multicol fail to hit test 60670 https://bugs.webkit.org/show_bug.cgi?id=44730 60671 60672 Test: fast/multicol/hit-test-float.html 60673 60674 Factored float hit-testing out of nodeAtPoint so that hitTestColumns could 60675 call it with column-adjusted coordinates. 60676 60677 * rendering/RenderBlock.cpp: 60678 (WebCore::RenderBlock::nodeAtPoint): 60679 (WebCore::RenderBlock::hitTestFloats): 60680 (WebCore::RenderBlock::hitTestColumns): 60681 * rendering/RenderBlock.h: 60682 60683 2010-09-07 Franois Sausset <sausset (a] gmail.com> 60684 60685 Reviewed by Beth Dakin. 60686 60687 <math> element should be centered when display attribute set to block. 60688 https://bugs.webkit.org/show_bug.cgi?id=44206 60689 60690 Test: mathml/presentation/attributes.xhtml 60691 60692 * css/mathml.css: 60693 (math[display="block"]): 60694 60695 2010-09-07 Eric Carlson <eric.carlson (a] apple.com> 60696 60697 Reviewed by Darin Adler. 60698 60699 Media elements should derive from ActiveDOMObjects 60700 https://bugs.webkit.org/show_bug.cgi?id=45306 60701 <rdar://problem/7929062> 60702 60703 * html/HTMLMediaElement.cpp: 60704 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize ActiveDOMObject 60705 (WebCore::HTMLMediaElement::stop): Call suspend, we want to do the same thing in both cases. 60706 (WebCore::HTMLMediaElement::suspend): Rename from documentWillBecomeInactive. 60707 (WebCore::HTMLMediaElement::resume): Rename from documentDidBecomeActive. 60708 (WebCore::HTMLMediaElement::hasPendingActivity): Return true if the event queue is not empty 60709 so the element can't be collected before they are sent. 60710 * html/HTMLMediaElement.h: 60711 (WebCore::HTMLMediaElement::canSuspend): 60712 60713 2010-09-07 Dimitri Glazkov <dglazkov (a] chromium.org> 60714 60715 Unreviewed, rolling out r66886. 60716 http://trac.webkit.org/changeset/66886 60717 https://bugs.webkit.org/show_bug.cgi?id=45112 60718 60719 Made 60720 60721 * platform/chromium/GeolocationServiceChromium.cpp: 60722 * platform/chromium/GeolocationServiceChromium.h: 60723 60724 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 60725 60726 Small build fix. Remove libWebCoreJS from CLEAN_FILES, as it 60727 is no longer built. 60728 60729 * GNUmakefile.am: Remove reference to libWebCoreJS. 60730 60731 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 60732 60733 Reviewed by Xan Lopez. 60734 60735 [GTK] [REGRESSION] r66848 caused a crash in testwebview 60736 https://bugs.webkit.org/show_bug.cgi?id=45298 60737 60738 No new tests as this fixes a test failure. 60739 60740 * platform/gtk/ScrollViewGtk.cpp: 60741 (WebCore::ScrollView::setGtkAdjustments): Don't actually attach the 60742 scrollbar adjustments unless this is a main frame ScrollView. If we do 60743 Scrollbars will be cast incorrectly to MainFrameScrollbarGtk, causing 60744 a segfault. 60745 60746 2010-09-07 Kristian Monsen <kristianm (a] google.com> 60747 60748 Reviewed by Steve Block. 60749 60750 Compile fix for Android. 60751 https://bugs.webkit.org/show_bug.cgi?id=45292 60752 Explicitly add needed header for 60753 STRING_TO_V8PARAMETER_EXCEPTION_BLOCK as they do not get 60754 included through other headers on Android. 60755 60756 No new tests, just a compile fix. 60757 60758 * bindings/scripts/CodeGeneratorV8.pm: 60759 60760 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 60761 60762 Reviewed by Xan Lopez. 60763 60764 [GTK] Fix some feature guards 60765 https://bugs.webkit.org/show_bug.cgi?id=45302 60766 60767 No new tests as this is just a build change. 60768 60769 * platform/graphics/gstreamer/DataSourceGStreamer.cpp: Guard with #if ENABLE(VIDEO) 60770 * platform/graphics/gstreamer/DataSourceGStreamer.h: Ditto. 60771 * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp: Ditto. 60772 * platform/graphics/gstreamer/GOwnPtrGStreamer.h: Ditto. 60773 * platform/graphics/gstreamer/GStreamerGWorld.cpp: Ditto. 60774 * platform/graphics/gstreamer/GStreamerGWorld.h: Ditto. 60775 * platform/graphics/gstreamer/ImageGStreamer.h: Ditto. 60776 * platform/graphics/gstreamer/ImageGStreamerCG.mm: Ditto. 60777 * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: Ditto. 60778 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Ditto. 60779 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Ditto. 60780 * platform/graphics/gstreamer/PlatformVideoWindow.h: Ditto. 60781 * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: Ditto. 60782 * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Ditto. 60783 * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: Ditto. 60784 * platform/graphics/gstreamer/VideoSinkGStreamer.h: Ditto. 60785 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: Ditto. 60786 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Ditto. 60787 * platform/gtk/GeolocationServiceGtk.cpp: Guard with ENABLE(GEOLOCATION) 60788 * platform/gtk/GeolocationServiceGtk.h: Ditto. 60789 60790 2010-09-07 Jonathan Dixon <joth (a] chromium.org> 60791 60792 Reviewed by Jeremy Orlow. 60793 60794 Access to out-of-scope WebGeolocationServiceBridgeImpl 60795 https://bugs.webkit.org/show_bug.cgi?id=45112 60796 60797 Add missing virtual destructor to the abstract base class. 60798 60799 * platform/chromium/GeolocationServiceChromium.cpp: 60800 (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge): 60801 * platform/chromium/GeolocationServiceChromium.h: 60802 60803 2010-09-07 Martin Robinson <mrobinson (a] igalia.com> 60804 60805 Reviewed by Xan Lopez. 60806 60807 [GTK] [REGRESSION] r66848 caused a crash in testwebview 60808 https://bugs.webkit.org/show_bug.cgi?id=45298 60809 60810 No new tests as this fixes a test failure. 60811 60812 * platform/gtk/ScrollViewGtk.cpp: 60813 (WebCore::ScrollView::setGtkAdjustments): Don't actually attach the 60814 scrollbar adjustments unless this is a main frame ScrollView. If we do 60815 Scrollbars will be cast incorrectly to MainFrameScrollbarGtk, causing 60816 a segfault. 60817 60818 2010-09-07 Adam Langley <agl (a] chromium.org> 60819 60820 Reviewed by Tony Chang. 60821 60822 [chromium] Fix complex text word spacing on Linux. 60823 60824 I broke complex text word spacing with r66689. I misnamed a 60825 variable in the original code |glyphIndex| when it was 60826 actually indexing code points. That meant that I compared it 60827 against the wrong limit when working around Harfbuzz issues 60828 and neatly disabled word spacing. 60829 60830 https://bugs.webkit.org/show_bug.cgi?id=45191 60831 60832 Test: fast/text/atsui-spacing-features.html 60833 60834 * platform/graphics/chromium/FontLinux.cpp: 60835 (WebCore::TextRunWalker::setGlyphXPositions): 60836 60837 2010-09-07 Satish Sampath <satish (a] chromium.org> 60838 60839 Reviewed by Steve Block. 60840 60841 Fix speech button's hit test logic for RTL rendering. 60842 https://bugs.webkit.org/show_bug.cgi?id=45288 60843 60844 * rendering/RenderTextControlSingleLine.cpp: 60845 (WebCore::RenderTextControlSingleLine::forwardEvent): 60846 60847 2010-09-07 Satish Sampath <satish (a] chromium.org> 60848 60849 Reviewed by Jeremy Orlow. 60850 60851 Ignore programmatic clicks on speech input button for security reasons. 60852 https://bugs.webkit.org/show_bug.cgi?id=45181 60853 60854 Test: fast/speech/speech-button-ignore-generated-events.html 60855 60856 * rendering/TextControlInnerElements.cpp: 60857 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 60858 60859 2010-09-07 Kent Hansen <kent.hansen (a] nokia.com> 60860 60861 Reviewed by Andreas Kling. 60862 60863 [Qt] tst_QWebFrame::connectAndDisconnect() fails on WebKit trunk because __qt_sender__ is never set 60864 https://bugs.webkit.org/show_bug.cgi?id=44697 60865 60866 When the signal handler is a JS function, __qt_sender__ is stuffed into a temporary 60867 object that's pushed onto the function's scope before the function is invoked, and 60868 popped again afterwards. 60869 60870 We were pushing this new scope object _after_ calling JSFunction::getCallData(), 60871 and relying on JSC::call() to use the fresh scope chain from the function object. 60872 However, this is no longer the case; JSC::call() uses the scope chain passed in 60873 the CallData argument. Hence, we need to set up the scope before the function's 60874 CallData is queried. 60875 60876 * bridge/qt/qt_runtime.cpp: 60877 (JSC::Bindings::QtConnectionObject::execute): 60878 60879 2010-09-07 Kwang Yul Seo <skyul (a] company100.net> 60880 60881 Reviewed by Kent Tamura. 60882 60883 Add ENABLE(INSPECTOR) guard in InspectorController::inspectorControllerForNode 60884 https://bugs.webkit.org/show_bug.cgi?id=45272 60885 60886 Build fix. 60887 60888 * inspector/InspectorController.h: 60889 (WebCore::InspectorController::inspectorControllerForNode): 60890 60891 2010-09-07 Joerg Bornemann <joerg.bornemann (a] nokia.com> 60892 60893 Reviewed by Ariya Hidayat. 60894 60895 Fix QtWebKit linker error on Windows CE 6. 60896 https://bugs.webkit.org/show_bug.cgi?id=43442 60897 60898 Doesn't affect any tests. 60899 60900 * WebCore.pro: 60901 60902 2010-09-07 James Kozianski <koz (a] chromium.org> 60903 60904 Reviewed by Kent Tamura. 60905 60906 Crash rendering <meter/> with percent padding 60907 https://bugs.webkit.org/show_bug.cgi?id=45081 60908 60909 Avoids a crash caused by RenderMeter checking its own dimensions to 60910 determine whether it needs layout. The crash is avoided by removing 60911 the check and always calling setNeedsLayout(true). 60912 60913 Test: fast/dom/HTMLMeterElement/meter-percent-size.html 60914 60915 * rendering/RenderIndicator.cpp: 60916 (WebCore::RenderIndicator::updateFromElement): 60917 * rendering/RenderIndicator.h: 60918 60919 2010-09-06 Adam Barth <abarth (a] webkit.org> 60920 60921 Reviewed by Sam Weinig. 60922 60923 OOB read with svg polyline 60924 https://bugs.webkit.org/show_bug.cgi?id=45279 60925 60926 In principle, attributeChanged can do anything. If we supported more 60927 DOM mutation events, it could even run JavaScript. That means we need 60928 to be prepared for the attribute map to change when running 60929 attributeChanged. This patch makes this loop resilient to the 60930 attribute map changing by storing the list of changed attributes on the 60931 stack. 60932 60933 Test: fast/parser/changing-attrbutes-crash.html 60934 60935 * dom/Element.cpp: 60936 (WebCore::Element::setAttributeMap): 60937 60938 2010-09-06 Oliver Hunt <oliver (a] apple.com> 60939 60940 Windows build fix 60941 60942 * bindings/js/SerializedScriptValue.cpp: 60943 (WebCore::CloneSerializer::write): 60944 60945 2010-09-06 Oliver Hunt <oliver (a] apple.com> 60946 60947 Windows build fix 60948 60949 * bindings/js/SerializedScriptValue.cpp: 60950 (WebCore::CloneSerializer::write): 60951 60952 2010-09-05 Oliver Hunt <oliver (a] apple.com> 60953 60954 Reviewed by Sam Weinig. 60955 60956 SerializedScriptValue needs to use a flat storage mechanism 60957 https://bugs.webkit.org/show_bug.cgi?id=45244 60958 60959 Rewrite the old tree to tree serialization logic to use 60960 flat storage. Unfortunately this basically required a 60961 complete rewrite. 60962 60963 * bindings/js/SerializedScriptValue.cpp: 60964 (WebCore::CloneBase::CloneBase): 60965 (WebCore::CloneBase::shouldTerminate): 60966 (WebCore::CloneBase::ticksUntilNextCheck): 60967 (WebCore::CloneBase::didTimeOut): 60968 (WebCore::CloneBase::throwStackOverflow): 60969 (WebCore::CloneBase::throwInterruptedException): 60970 (WebCore::CloneBase::fail): 60971 (WebCore::CloneSerializer::serialize): 60972 (WebCore::CloneSerializer::CloneSerializer): 60973 (WebCore::CloneSerializer::isArray): 60974 (WebCore::CloneSerializer::startObject): 60975 (WebCore::CloneSerializer::startArray): 60976 (WebCore::CloneSerializer::endObject): 60977 (WebCore::CloneSerializer::getSparseIndex): 60978 (WebCore::CloneSerializer::getProperty): 60979 (WebCore::CloneSerializer::dumpImmediate): 60980 (WebCore::CloneSerializer::dumpString): 60981 (WebCore::CloneSerializer::dumpIfTerminal): 60982 (WebCore::CloneSerializer::write): 60983 (WebCore::CloneSerializer::writeLittleEndian): 60984 (WebCore::CloneSerializer::writeStringIndex): 60985 (WebCore::CloneDeserializer::deserializeString): 60986 (WebCore::CloneDeserializer::deserialize): 60987 (WebCore::CloneDeserializer::CloneDeserializer): 60988 (WebCore::CloneDeserializer::throwValidationError): 60989 (WebCore::CloneDeserializer::isValid): 60990 (WebCore::CloneDeserializer::readLittleEndian): 60991 (WebCore::CloneDeserializer::read): 60992 (WebCore::CloneDeserializer::readStringIndex): 60993 (WebCore::CloneDeserializer::readString): 60994 (WebCore::CloneDeserializer::readStringData): 60995 (WebCore::CloneDeserializer::readTag): 60996 (WebCore::CloneDeserializer::putProperty): 60997 (WebCore::CloneDeserializer::readFile): 60998 (WebCore::CloneDeserializer::readTerminal): 60999 (WebCore::SerializedScriptValue::~SerializedScriptValue): 61000 (WebCore::SerializedScriptValue::SerializedScriptValue): 61001 (WebCore::SerializedScriptValue::create): 61002 (WebCore::SerializedScriptValue::toString): 61003 (WebCore::SerializedScriptValue::deserialize): 61004 (WebCore::SerializedScriptValue::nullValue): 61005 * bindings/js/SerializedScriptValue.h: 61006 * dom/MessagePortChannel.cpp: 61007 (WebCore::MessagePortChannel::EventData::EventData): 61008 * workers/WorkerMessagingProxy.cpp: 61009 (WebCore::MessageWorkerContextTask::MessageWorkerContextTask): 61010 (WebCore::MessageWorkerTask::MessageWorkerTask): 61011 61012 2010-09-06 Martin Robinson <mrobinson (a] igalia.com> 61013 61014 Reviewed by Gustavo Noronha Silva. 61015 61016 [GTK] ScrollbarThemeGtk should be enabled for interior frame scrollbars 61017 https://bugs.webkit.org/show_bug.cgi?id=45046 61018 61019 Make interior frame scrollbars "fully-fake," which means they do not rely 61020 at all on GTK+ for painting or behavior, but instead are typical WebCore 61021 scrollbars drawn according to the GTK+ theme. Move ScrollbarGtk to 61022 MainFrameScrollbarGtk and remove all logic in that file dealing with interior 61023 frame scrollbars. 61024 61025 No new tests, as this is already covered by pixel tests for scrollbars, 61026 which were added in r66605. 61027 61028 * GNUmakefile.am: Update sources list. 61029 * platform/ScrollView.h: Change the adjustment members to be smart pointers. 61030 * platform/Scrollbar.cpp: Enable THUMB_POSITION_AFFECTS_BUTTONS for GTK+ as well. 61031 * platform/gtk/MainFrameScrollbarGtk.cpp: Added. 61032 (MainFrameScrollbarGtk::create): Create a MainFrameScrollbarGtk instead of ScrollbarGtk. 61033 (MainFrameScrollbarGtk::MainFrameScrollbarGtk): 61034 (MainFrameScrollbarGtk::~MainFrameScrollbarGtk): 61035 (MainFrameScrollbarGtk::attachAdjustment): 61036 (MainFrameScrollbarGtk::detachAdjustment): 61037 (MainFrameScrollbarGtk::updateThumbPosition): 61038 (MainFrameScrollbarGtk::updateThumbProportion): 61039 (MainFrameScrollbarGtk::gtkValueChanged): 61040 (MainFrameScrollbarGtk::paint): 61041 * platform/gtk/MainFrameScrollbarGtk.h: Added. 61042 * platform/gtk/ScrollViewGtk.cpp: 61043 (WebCore::ScrollView::platformInit): Remove unnecessary initialization 61044 because of smart pointer change. 61045 (WebCore::ScrollView::createScrollbar): Instead of creating ScrollbarGtk for 61046 interior frame scrollbars, create a normal WebCore scrollbar. 61047 (WebCore::ScrollView::setGtkAdjustments): Added an extra assert which ensures 61048 that this method is never called with a non-null adjustment on an interior frame 61049 scrollbar. 61050 (WebCore::ScrollView::platformAddChild): Remove logic for interior frame scrollbars. 61051 (WebCore::ScrollView::platformRemoveChild): Remove logic for interior frame scrollbars. 61052 (WebCore::ScrollView::visibleContentRect): Use a more accurate guard for detecting 61053 transitionary states when accessing parent widgets. Explcitly guard against interior 61054 frame ScrollView's trying to determine size based on parent widgets. 61055 (WebCore::ScrollView::setScrollbarModes): This method was out of sync with the one 61056 it copy-and-pasted from. Update it and change the logic to do the right thing for 61057 interior frame scrollbars. 61058 * platform/gtk/ScrollbarGtk.cpp: Removed. 61059 * platform/gtk/ScrollbarGtk.h: Removed. 61060 61061 2010-09-06 Justin Schuh <jschuh (a] chromium.org> 61062 61063 Reviewed by Nikolas Zimmermann. 61064 61065 Make SVG PendingResources use RefPtr 61066 https://bugs.webkit.org/show_bug.cgi?id=43587 61067 61068 Convert SVGDocumentExtensions::m_pendingResources to use a RefPtr for 61069 pending elements instead of a raw pointer so that pending elements can't 61070 be freed prematurely. 61071 61072 Test: svg/custom/use-invalid-pattern.svg 61073 61074 * rendering/RenderSVGResourceContainer.cpp: 61075 (WebCore::RenderSVGResourceContainer::registerResource): 61076 * svg/SVGDocumentExtensions.cpp: 61077 (WebCore::SVGDocumentExtensions::addPendingResource): 61078 (WebCore::SVGDocumentExtensions::removePendingResource): 61079 * svg/SVGDocumentExtensions.h: 61080 * svg/SVGElement.cpp: 61081 (WebCore::SVGElement::insertedIntoDocument): 61082 61083 2010-09-06 Martin Robinson <mrobinson (a] igalia.com> 61084 61085 Reviewed by Gustavo Noronha Silva. 61086 61087 [GTK] ScrollbarThemeGtk should support secondary steppers 61088 https://bugs.webkit.org/show_bug.cgi?id=44791 61089 61090 Add support to ScrollbarThemeGtk for drawing alternate steppers. Adjust 61091 the algorithms for calculating forward and back button rects, if they 61092 are active in the theme. Expose this information via GtkScrollbarMetrics. 61093 61094 * platform/gtk/ScrollbarThemeGtk.cpp: 61095 (WebCore::ScrollbarThemeGtk::updateThemeProperties): Access the secondary stepper properties 61096 of GtkScrollbarMetrics when updating the style cache. 61097 (WebCore::ScrollbarThemeGtk::backButtonRect): Account for alternate steppers. 61098 (WebCore::ScrollbarThemeGtk::forwardButtonRect): Ditto. 61099 (WebCore::ScrollbarThemeGtk::trackRect): Ditto. 61100 (WebCore::ScrollbarThemeGtk::paintButton): Ditto. 61101 * platform/gtk/ScrollbarThemeGtk.h: 61102 * platform/gtk/gtk2drawing.c: Expose whether or not the style uses alternate steppers 61103 via GtkScrollbarMetrics. 61104 * platform/gtk/gtkdrawing.h: Added fields to GtkScrollbarMetrics. 61105 61106 2010-09-06 Tony Gentilcore <tonyg (a] chromium.org> 61107 61108 Reviewed by Adam Barth. 61109 61110 Implement HTML5 definition of document.readyState 61111 https://bugs.webkit.org/show_bug.cgi?id=45119 61112 61113 The legacy behavior was "loading" -> "loaded" -> "complete". The new 61114 HTML5 behavior is "loading" -> "interactive" -> "complete". There is 61115 some potential for this to cause compat problems if for instance a 61116 page expects readyState to be "loaded" during the DOMContentLoaded event. 61117 61118 Test: fast/dom/Document/readystate.html 61119 61120 * dom/Document.cpp: 61121 (WebCore::Document::Document): Initial value is Complete because according to http://www.whatwg.org/specs/web-apps/current-work/#dom-document-readystate, 61122 when a Document is created the initial value is "complete" unless it has a parser associated with it, in which case it is "loading". 61123 So the ctor starts it Complete, and when the parser is created it is flipped to Loading. 61124 (WebCore::Document::readyState): 61125 (WebCore::Document::setReadyState): 61126 (WebCore::Document::implicitOpen): 61127 (WebCore::Document::finishedParsing): Ensure that XML and HTML parser have transition to Stopping state. 61128 * dom/Document.h: 61129 * dom/DocumentParser.cpp: 61130 (WebCore::DocumentParser::prepareToStopParsing): Previously this was being called when parsing had stopped. 61131 It is better to ensure it is only called while parsing. 61132 * dom/XMLDocumentParser.cpp: 61133 (WebCore::XMLDocumentParser::end): Transition to stopping before calling document finishedParsiong(). 61134 * html/parser/HTMLDocumentParser.cpp: 61135 (WebCore::HTMLDocumentParser::prepareToStopParsing): Set state to interactive before running deferred scripts. 61136 This method is also called when parsing fragments, so we need to ensure it isn't done in that case. 61137 (WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd): Added. Break out this part s that notifyFinished doesn't go through 61138 the additional steps of pumping tokenizer, setting the state, etc. 61139 (WebCore::HTMLDocumentParser::notifyFinished): Now that prepareToStopParsing is split up, we must protect. It also makes sense to add a couple of ASSERTs. 61140 * loader/FrameLoader.cpp: 61141 (WebCore::FrameLoader::stopLoading): It looks like an aborted load should never transition to "complete" according the HTML5. I've left the legacy behavior for now though. 61142 (WebCore::FrameLoader::checkCompleted): The FrameLoader now sets the state on the Document instead of the Document polling the FrameLoader. 61143 61144 2010-09-06 Anton Muhin <antonm (a] chromium.org> 61145 61146 Reviewed by Adam Barth. 61147 61148 [v8] Inline hot methods for V8 to WebCore and back conversions 61149 https://bugs.webkit.org/show_bug.cgi?id=45270 61150 61151 Inline fast paths of hot functions performing conversions from V8 wrappers 61152 to WebCore native objects and back. 61153 That slightly increases the size of binary (within 0.1% for both Ubuntu 61154 and Windows, but those builds are slightly different from official ones), 61155 but gives performance boost (3--5% on Windows, up to 8% on Ubuntu). 61156 61157 * bindings/scripts/CodeGeneratorV8.pm: 61158 * bindings/v8/V8DOMWindowShell.cpp: 61159 (WebCore::V8DOMWindowShell::initContextIfNeeded): 61160 * bindings/v8/V8DOMWindowShell.h: 61161 * bindings/v8/V8DOMWrapper.cpp: 61162 (WebCore::V8DOMWrapper::getWrapperSlow): 61163 * bindings/v8/V8DOMWrapper.h: 61164 (WebCore::V8DOMWrapper::getWrapper): 61165 * bindings/v8/custom/V8NodeCustom.cpp: 61166 (WebCore::toV8Slow): 61167 61168 2010-09-06 Shane Stephens <shanestephens (a] google.com> 61169 61170 Reviewed by Dimitri Glazkov. 61171 61172 [Crash] <animateMotion> element directly inside <symbol> element causes crash when referenced by <use> 61173 https://bugs.webkit.org/show_bug.cgi?id=44750 61174 61175 Fixes crash by checking for null transforms and skipping update step 61176 when appropriate. 61177 61178 Test: svg/dom/symbol-embeddedAnimation.svg 61179 61180 * svg/SVGAnimateMotionElement.cpp: 61181 (WebCore::SVGAnimateMotionElement::applyResultsToTarget): 61182 61183 2010-09-06 Xan Lopez <xlopez (a] igalia.com> 61184 61185 Rubber-stamped by Tor Arne Vestb. 61186 61187 WebCore already generates a focus-{out,in} events on its setFocus 61188 method, there's no need to duplicate it here. Previously this was 61189 needed because we were not catching all possible names of focus 61190 events in PluginView::handleEvent and were missing the ones 61191 WebCore does, but this has been fixed in r66827. 61192 61193 * plugins/qt/PluginViewQt.cpp: 61194 (WebCore::PluginView::setFocus): 61195 61196 2010-09-06 Sheriff Bot <webkit.review.bot (a] gmail.com> 61197 61198 Unreviewed, rolling out r66823. 61199 http://trac.webkit.org/changeset/66823 61200 https://bugs.webkit.org/show_bug.cgi?id=45266 61201 61202 Windows build fails with unknown reason (Requested by zherczeg 61203 on #webkit). 61204 61205 * Android.mk: 61206 * CMakeLists.txt: 61207 * GNUmakefile.am: 61208 * WebCore.gypi: 61209 * WebCore.pro: 61210 * WebCore.vcproj/WebCore.vcproj: 61211 * WebCore.xcodeproj/project.pbxproj: 61212 * rendering/RenderObject.h: 61213 * rendering/RenderSVGResourceFilterPrimitive.cpp: Removed. 61214 * rendering/RenderSVGResourceFilterPrimitive.h: Removed. 61215 * rendering/SVGRenderTreeAsText.cpp: 61216 (WebCore::writeSVGContainer): 61217 * svg/SVGFEDiffuseLightingElement.cpp: 61218 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): 61219 * svg/SVGFELightElement.cpp: 61220 (WebCore::SVGFELightElement::svgAttributeChanged): 61221 (WebCore::SVGFELightElement::childrenChanged): 61222 * svg/SVGFEOffsetElement.cpp: 61223 (WebCore::SVGFEOffsetElement::svgAttributeChanged): 61224 * svg/SVGFilterElement.h: 61225 (WebCore::SVGFilterElement::invalidateFilter): 61226 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 61227 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 61228 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 61229 * svg/SVGFilterPrimitiveStandardAttributes.h: 61230 (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded): 61231 61232 2010-09-06 Xan Lopez <xlopez (a] igalia.com> 61233 61234 Reviewed by Martin Robinson. 61235 61236 [GTK] Provide Keyboard Events to Windowless plugins 61237 https://bugs.webkit.org/show_bug.cgi?id=44613 61238 61239 Fix keyboard event delivery for windowless plugins. 61240 61241 Based on a patch by Bharathwaaj. 61242 61243 * plugins/PluginView.cpp: 61244 (WebCore::PluginView::handleEvent): also take into account 61245 focused{in,out} events 61246 * plugins/gtk/PluginViewGtk.cpp: 61247 (WebCore::PluginView::handleKeyboardEvent): we want the keyval 61248 here, not the hardware keycode 61249 (WebCore::PluginView::handleMouseEvent): focus the pluginview on mouse events 61250 61251 2010-09-06 Ilya Tikhonovsky <loislo (a] chromium.org> 61252 61253 Reviewed by Yury Semikhatsky. 61254 61255 WebInspector: it'd be nice to be able to pass undefined argument as a callback to InspectorBackend functions. 61256 61257 There are some places where callback is passing via some wrapper. In that case sendMessageToBackend 61258 will be called with additional argument for callback but with undefined value. 61259 61260 https://bugs.webkit.org/show_bug.cgi?id=45265 61261 61262 * inspector/CodeGeneratorInspector.pm: 61263 61264 2010-09-06 Zoltan Herczeg <zherczeg (a] webkit.org> 61265 61266 Reviewed by Dirk Schulze. 61267 61268 An individual renderer should be assigned to each SVGFE*Element class 61269 https://bugs.webkit.org/show_bug.cgi?id=43954 61270 61271 RenderSVGResourceFilterPrimitive renderer is added to 61272 the project, and assigned to each object, which class is 61273 derived from SVGFilterPrimitiveStandardAttributes. The patch 61274 mainly contains build system changes, and it fixes one layout 61275 test in svg/dynamic-updates. 61276 61277 * Android.mk: 61278 * CMakeLists.txt: 61279 * GNUmakefile.am: 61280 * WebCore.gypi: 61281 * WebCore.pro: 61282 * WebCore.vcproj/WebCore.vcproj: 61283 * WebCore.xcodeproj/project.pbxproj: 61284 * rendering/RenderObject.h: 61285 (WebCore::RenderObject::isSVGResourceFilterPrimitive): 61286 * rendering/RenderSVGResourceFilterPrimitive.cpp: Added. 61287 (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive): 61288 * rendering/RenderSVGResourceFilterPrimitive.h: Added. 61289 (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive): 61290 * rendering/SVGRenderTreeAsText.cpp: 61291 (WebCore::writeSVGContainer): 61292 * svg/SVGFEDiffuseLightingElement.cpp: 61293 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): 61294 * svg/SVGFELightElement.cpp: 61295 (WebCore::SVGFELightElement::svgAttributeChanged): 61296 (WebCore::SVGFELightElement::childrenChanged): 61297 * svg/SVGFEOffsetElement.cpp: 61298 (WebCore::SVGFEOffsetElement::svgAttributeChanged): 61299 * svg/SVGFilterElement.h: 61300 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 61301 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 61302 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 61303 (WebCore::SVGFilterPrimitiveStandardAttributes::createRenderer): 61304 * svg/SVGFilterPrimitiveStandardAttributes.h: 61305 (WebCore::SVGFilterPrimitiveStandardAttributes::invalidate): 61306 61307 2010-09-06 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 61308 61309 Reviewed by Dirk Schulze. 61310 61311 [WML] Use RenderImageResource in WMLImageElement.cpp 61312 https://bugs.webkit.org/show_bug.cgi?id=44952 61313 61314 The hasImage() and setCachedImage() were moved to RenderImageResource class. 61315 So, WML also should use the functions from RenderImageResource. 61316 61317 * wml/WMLImageElement.cpp: 61318 (WebCore::WMLImageElement::attach): 61319 61320 2010-08-26 Jeremy Orlow <jorlow (a] chromium.org> 61321 61322 Reviewed by Steve Block. 61323 61324 Add index insertion support to IndexedDB. 61325 https://bugs.webkit.org/show_bug.cgi?id=44695 61326 61327 Whenever you insert an item into an ObjectStore, it should use all 61328 indexes' key paths to insert corresponding entries into each index. 61329 Also data should be deleted out of the index when it goes away. 61330 61331 Not much testing yet since there's no way to directly observe indexes. 61332 More will be in next patch. 61333 61334 * storage/IDBDatabaseBackendImpl.cpp: 61335 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 61336 * storage/IDBFactoryBackendImpl.cpp: 61337 (WebCore::createTables): 61338 * storage/IDBIndex.idl: 61339 * storage/IDBIndexBackendImpl.cpp: 61340 (WebCore::whereClause): 61341 (WebCore::bindWhereClause): 61342 (WebCore::IDBIndexBackendImpl::addingKeyAllowed): 61343 * storage/IDBIndexBackendImpl.h: 61344 (WebCore::IDBIndexBackendImpl::id): 61345 * storage/IDBKey.cpp: 61346 (WebCore::IDBKey::whereSyntax): 61347 (WebCore::IDBKey::bind): 61348 (WebCore::IDBKey::bindWithNulls): 61349 * storage/IDBKey.h: 61350 * storage/IDBObjectStore.idl: 61351 * storage/IDBObjectStoreBackendImpl.cpp: 61352 (WebCore::whereClause): 61353 (WebCore::bindWhereClause): 61354 (WebCore::IDBObjectStoreBackendImpl::get): 61355 (WebCore::fetchKeyFromKeyPath): 61356 (WebCore::putObjectStoreData): 61357 (WebCore::putIndexData): 61358 (WebCore::IDBObjectStoreBackendImpl::put): 61359 (WebCore::IDBObjectStoreBackendImpl::remove): 61360 (WebCore::IDBObjectStoreBackendImpl::createIndex): 61361 (WebCore::doDelete): 61362 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 61363 (WebCore::IDBObjectStoreBackendImpl::openCursor): 61364 * storage/IDBObjectStoreBackendImpl.h: 61365 61366 2010-09-06 Anton Muhin <antonm (a] chromium.org> 61367 61368 Reviewed by Adam Barth. 61369 61370 [v8] bypass caches when query memory usage from post GC and in crash handler. 61371 https://bugs.webkit.org/show_bug.cgi?id=45036 61372 61373 Add Chromium-specific API to query actual memory usage which bypasses any caches. 61374 61375 * platform/chromium/ChromiumBridge.h: 61376 61377 2010-09-06 Adam Barth <abarth (a] webkit.org> 61378 61379 Reviewed by Darin Adler. 61380 61381 Rename SecurityOrigin::canLoad to canDisplay 61382 https://bugs.webkit.org/show_bug.cgi?id=45214 61383 61384 canLoad is a pretty opaque name. This function is really about whether 61385 you can display the contents of the URL in an iframe, an image, or a 61386 plugin. 61387 61388 * WebCore.exp.in: 61389 * html/HTMLMediaElement.cpp: 61390 (WebCore::HTMLMediaElement::isSafeToLoadURL): 61391 * loader/Cache.cpp: 61392 (WebCore::Cache::requestResource): 61393 * loader/FrameLoader.cpp: 61394 (WebCore::FrameLoader::loadFrameRequest): 61395 * loader/PingLoader.cpp: 61396 (WebCore::PingLoader::loadImage): 61397 * loader/SubframeLoader.cpp: 61398 (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): 61399 (WebCore::SubframeLoader::createJavaAppletWidget): 61400 (WebCore::SubframeLoader::loadSubframe): 61401 (WebCore::SubframeLoader::loadPlugin): 61402 * loader/SubresourceLoader.cpp: 61403 (WebCore::SubresourceLoader::create): 61404 * page/SecurityOrigin.cpp: 61405 (WebCore::SecurityOrigin::canDisplay): 61406 * page/SecurityOrigin.h: 61407 * plugins/PluginView.cpp: 61408 (WebCore::PluginView::load): 61409 61410 2010-08-31 Yury Semikhatsky <yurys (a] chromium.org> 61411 61412 Reviewed by Joseph Pecoraro. 61413 61414 Web Inspector: browser crashes on attempt to evaluate "alert(1)" while staying on a breakpoint 61415 https://bugs.webkit.org/show_bug.cgi?id=44943 61416 61417 Test: inspector/debugger-suspend-active-dom-objects.html 61418 61419 * page/PageGroupLoadDeferrer.cpp: 61420 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): 61421 61422 2010-09-05 Kenneth Russell <kbr (a] google.com> 61423 61424 Reviewed by Darin Fisher. 61425 61426 Add unit tests for red-black tree and (POD) arena 61427 https://bugs.webkit.org/show_bug.cgi?id=45060 61428 61429 * platform/graphics/gpu/PODArena.h: Made DefaultChunkSize public so unit tests can access it. Fixed copyright header. 61430 * platform/graphics/gpu/PODInterval.h: Fixed copyright header. 61431 * platform/graphics/gpu/PODIntervalTree.h: Fixed copyright header. 61432 * platform/graphics/gpu/PODRedBlackTree.h: Fixed copyright header. 61433 61434 2010-09-05 Jeremy Orlow <jorlow (a] chromium.org> 61435 61436 Reviewed by Nate Chapin. 61437 61438 Add the concept of class methods to bindings (for IndexedDB's IDBKeyRange). 61439 https://bugs.webkit.org/show_bug.cgi?id=45044 61440 61441 IndexedDB's IDBKeyRange has what, in other languages, are called class 61442 methods. In javaScript terms, these are methods only accessible from their 61443 constructor and not instances. This change adds such support to V8. There 61444 are already other features required for IndexedDB that JSC doesn't yet 61445 support, so I'll add this to the list of todo items in the master bug 61446 for that. 61447 61448 The bindings tests cover this. My next patch will change WebCore to use 61449 this and it'll have associated layout tests. 61450 61451 * bindings/scripts/CodeGeneratorV8.pm: 61452 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 61453 (WebDOMTestObj::classMethod): 61454 (WebDOMTestObj::classMethodWithOptional): 61455 * bindings/scripts/test/CPP/WebDOMTestObj.h: 61456 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 61457 (webkit_dom_test_obj_class_method): 61458 (webkit_dom_test_obj_class_method_with_optional): 61459 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 61460 * bindings/scripts/test/JS/JSTestObj.cpp: 61461 (WebCore::jsTestObjPrototypeFunctionStaticMethod): 61462 (WebCore::jsTestObjPrototypeFunctionStaticMethodWithOptional): 61463 * bindings/scripts/test/JS/JSTestObj.h: 61464 * bindings/scripts/test/ObjC/DOMTestObj.h: 61465 * bindings/scripts/test/ObjC/DOMTestObj.mm: 61466 (-[DOMTestObj classMethod]): 61467 (-[DOMTestObj classMethodWithOptional:]): 61468 * bindings/scripts/test/TestObj.idl: 61469 * bindings/scripts/test/V8/V8TestObj.cpp: 61470 (WebCore::TestObjInternal::classMethodCallback): 61471 (WebCore::TestObjInternal::classMethodWithOptionalCallback): 61472 (WebCore::ConfigureV8TestObjTemplate): 61473 * storage/IDBKeyRange.idl: 61474 61475 2010-09-05 Jeremy Orlow <jorlow (a] chromium.org> 61476 61477 Reviewed by Steve Block. 61478 61479 Add IndexedDB objects' constructors to window 61480 https://bugs.webkit.org/show_bug.cgi?id=44599 61481 61482 Also add a forgotten constant to IDBTransaction, and 61483 change IDBKeyRange over to using the V8Static attribute 61484 so it actually behaves as it's supposed to. 61485 61486 * bindings/generic/RuntimeEnabledFeatures.h: 61487 (WebCore::RuntimeEnabledFeatures::iDBCursorEnabled): 61488 (WebCore::RuntimeEnabledFeatures::iDBDatabaseEnabled): 61489 (WebCore::RuntimeEnabledFeatures::iDBDatabaseErrorEnabled): 61490 (WebCore::RuntimeEnabledFeatures::iDBDatabaseExceptionEnabled): 61491 (WebCore::RuntimeEnabledFeatures::iDBErrorEventEnabled): 61492 (WebCore::RuntimeEnabledFeatures::iDBEventEnabled): 61493 (WebCore::RuntimeEnabledFeatures::iDBFactoryEnabled): 61494 (WebCore::RuntimeEnabledFeatures::iDBIndexEnabled): 61495 (WebCore::RuntimeEnabledFeatures::iDBKeyRangeEnabled): 61496 (WebCore::RuntimeEnabledFeatures::iDBObjectStoreEnabled): 61497 (WebCore::RuntimeEnabledFeatures::iDBRequestEnabled): 61498 (WebCore::RuntimeEnabledFeatures::iDBSuccessEventEnabled): 61499 (WebCore::RuntimeEnabledFeatures::iDBTransactionEnabled): 61500 * page/DOMWindow.cpp: 61501 (WebCore::DOMWindow::clear): 61502 (WebCore::DOMWindow::indexedDB): 61503 * page/DOMWindow.h: 61504 * page/DOMWindow.idl: 61505 * storage/IDBKeyRange.idl: 61506 * storage/IDBTransaction.h: 61507 * storage/IDBTransaction.idl: 61508 61509 2010-09-04 Justin Schuh <jschuh (a] chromium.org> 61510 61511 Reviewed by Nikolas Zimmermann. 61512 61513 Prevent premature deletion of svg use shadow tree 61514 https://bugs.webkit.org/show_bug.cgi?id=43260 61515 61516 Test: svg/custom/use-invalid-style.svg 61517 61518 * svg/SVGUseElement.cpp: 61519 (WebCore::SVGUseElement::insertedIntoDocument): 61520 (WebCore::SVGUseElement::removedFromDocument): 61521 (WebCore::SVGUseElement::detach): 61522 61523 2010-09-03 Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org> 61524 61525 Reviewed by Darin Adler. 61526 61527 Add NetworkingContext to avoid layer violations 61528 https://bugs.webkit.org/show_bug.cgi?id=42292 61529 61530 Create and provide access to NetworkingContext in FrameLoader. 61531 61532 In the WebKit layer we added specific implementations of FrameNetworkingContext 61533 so each port's FrameLoaderClient can add any port specific information to NetworkingContext 61534 The NetworkingContext is, therefore, created by a FrameLoaderClient and stored 61535 in the FrameLoader for each frame created. People must always use it 61536 by calling FrameLoader::networkingContext() and never through their FrameLoaderClient. 61537 The lifetime cycle of NetworkingContext is kept by a RefPtr, so the object is RefCounted. 61538 61539 It is still a preparation to NetworkingContext to be activated and 61540 work for all ports. 61541 61542 * WebCore.exp.in: 61543 * loader/EmptyClients.h: 61544 (WebCore::EmptyFrameLoaderClient::createNetworkingContext): 61545 * loader/FrameLoader.cpp: 61546 (WebCore::FrameLoader::~FrameLoader): 61547 (WebCore::FrameLoader::init): 61548 (WebCore::FrameLoader::networkingContext): 61549 * loader/FrameLoader.h: 61550 * loader/FrameLoaderClient.h: 61551 61552 2010-09-03 Kinuko Yasuda <kinuko (a] chromium.org> 61553 61554 Reviewed by Darin Adler. 61555 61556 V8/JS bindings should not perform type checks if the parameter has Callback attribute 61557 https://bugs.webkit.org/show_bug.cgi?id=45143 61558 61559 No new tests, should not affect existing idls. 61560 61561 * bindings/scripts/CodeGeneratorJS.pm: 61562 * bindings/scripts/CodeGeneratorV8.pm: 61563 * bindings/scripts/test/JS/JSTestObj.cpp: 61564 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5): 61565 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod): 61566 * bindings/scripts/test/TestObj.idl: 61567 * bindings/scripts/test/V8/V8TestObj.cpp: 61568 (WebCore::TestObjInternal::overloadedMethod5Callback): 61569 (WebCore::TestObjInternal::overloadedMethodCallback): 61570 61571 2010-09-03 Kenneth Russell <kbr (a] google.com> 61572 61573 Unreviewed, Chromium build fix. Fix breakage on Windows after 61574 r66787 / https://bugs.webkit.org/show_bug.cgi?id=45223 . 61575 61576 * platform/graphics/chromium/FontChromiumWin.cpp: 61577 (WebCore::Font::drawGlyphs): 61578 61579 2010-09-03 James Robinson <jamesr (a] chromium.org> 61580 61581 Reviewed by Kenneth Russell. 61582 61583 [chromium] Text sometimes fails to display in accelerated 2d canvases 61584 https://bugs.webkit.org/show_bug.cgi?id=45223 61585 61586 Calls PlatformContextSkia::prepareForSoftwareDraw() before drawing glyphs 61587 using skia to ensure that the backing store state is consistent. 61588 61589 * platform/graphics/chromium/FontChromiumWin.cpp: 61590 (WebCore::Font::drawGlyphs): 61591 * platform/graphics/chromium/FontLinux.cpp: 61592 (WebCore::Font::drawGlyphs): 61593 61594 2010-09-03 Kenneth Russell <kbr (a] google.com> 61595 61596 Reviewed by Darin Fisher. 61597 61598 Add thirdparty directory and incorporate GLU tessellator 61599 https://bugs.webkit.org/show_bug.cgi?id=44707 61600 61601 This directory is intended to contain copies of third-party libraries used 61602 by WebCore, in particular those which may require some modification in 61603 order to incorporate. 61604 61605 No tests at this time; these sources are being added in preparation for 61606 incorporating other code which uses them, at which point the code will be 61607 exercised and testable. 61608 61609 * thirdparty: Added. 61610 * thirdparty/README.txt: Added. 61611 * thirdparty/glu: Added. 61612 * thirdparty/glu/LICENSE.txt: Added. 61613 * thirdparty/glu/README.webkit: Added. 61614 * thirdparty/glu/gluos.h: Added. 61615 * thirdparty/glu/internal_glu.h: Added. 61616 * thirdparty/glu/libtess: Added. 61617 * thirdparty/glu/libtess/GNUmakefile: Added. 61618 * thirdparty/glu/libtess/Imakefile: Added. 61619 * thirdparty/glu/libtess/README: Added. 61620 * thirdparty/glu/libtess/alg-outline: Added. 61621 * thirdparty/glu/libtess/dict-list.h: Added. 61622 * thirdparty/glu/libtess/dict.c: Added. 61623 * thirdparty/glu/libtess/dict.h: Added. 61624 * thirdparty/glu/libtess/geom.c: Added. 61625 * thirdparty/glu/libtess/geom.h: Added. 61626 * thirdparty/glu/libtess/memalloc.c: Added. 61627 * thirdparty/glu/libtess/memalloc.h: Added. 61628 * thirdparty/glu/libtess/mesh.c: Added. 61629 * thirdparty/glu/libtess/mesh.h: Added. 61630 * thirdparty/glu/libtess/normal.c: Added. 61631 * thirdparty/glu/libtess/normal.h: Added. 61632 * thirdparty/glu/libtess/priorityq-heap.c: Added. 61633 * thirdparty/glu/libtess/priorityq-heap.h: Added. 61634 * thirdparty/glu/libtess/priorityq-sort.h: Added. 61635 * thirdparty/glu/libtess/priorityq.c: Added. 61636 * thirdparty/glu/libtess/priorityq.h: Added. 61637 * thirdparty/glu/libtess/render.c: Added. 61638 * thirdparty/glu/libtess/render.h: Added. 61639 * thirdparty/glu/libtess/sweep.c: Added. 61640 * thirdparty/glu/libtess/sweep.h: Added. 61641 * thirdparty/glu/libtess/tess.c: Added. 61642 * thirdparty/glu/libtess/tess.h: Added. 61643 * thirdparty/glu/libtess/tessmono.c: Added. 61644 * thirdparty/glu/libtess/tessmono.h: Added. 61645 61646 2010-09-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 61647 61648 Unreviewed, rolling out r66781. 61649 http://trac.webkit.org/changeset/66781 61650 https://bugs.webkit.org/show_bug.cgi?id=45220 61651 61652 Breaks the build. Adds a mac-specific file to 61653 platform/graphics without #if PLATFORM() guards and changes 61654 the GraphicsContext3D interface without updating all 61655 implementations (Requested by jamesr on #webkit). 61656 61657 * WebCore.gypi: 61658 * WebCore.xcodeproj/project.pbxproj: 61659 * html/canvas/WebGLObject.cpp: 61660 (WebCore::WebGLObject::deleteObject): 61661 * platform/graphics/ANGLEWebKitBridge.h: 61662 * platform/graphics/GraphicsContext3D.h: 61663 * platform/graphics/GraphicsContext3DOpenGL.cpp: Removed. 61664 * platform/graphics/mac/GraphicsContext3DMac.mm: 61665 (WebCore::GraphicsContext3D::validateAttributes): 61666 (WebCore::GraphicsContext3D::makeContextCurrent): 61667 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): 61668 (WebCore::GraphicsContext3D::reshape): 61669 (WebCore::ensureContext): 61670 (WebCore::GraphicsContext3D::prepareTexture): 61671 (WebCore::GraphicsContext3D::activeTexture): 61672 (WebCore::GraphicsContext3D::attachShader): 61673 (WebCore::GraphicsContext3D::bindAttribLocation): 61674 (WebCore::GraphicsContext3D::bindBuffer): 61675 (WebCore::GraphicsContext3D::bindFramebuffer): 61676 (WebCore::GraphicsContext3D::bindRenderbuffer): 61677 (WebCore::GraphicsContext3D::bindTexture): 61678 (WebCore::GraphicsContext3D::blendColor): 61679 (WebCore::GraphicsContext3D::blendEquation): 61680 (WebCore::GraphicsContext3D::blendEquationSeparate): 61681 (WebCore::GraphicsContext3D::blendFunc): 61682 (WebCore::GraphicsContext3D::blendFuncSeparate): 61683 (WebCore::GraphicsContext3D::bufferData): 61684 (WebCore::GraphicsContext3D::bufferSubData): 61685 (WebCore::GraphicsContext3D::checkFramebufferStatus): 61686 (WebCore::GraphicsContext3D::clearColor): 61687 (WebCore::GraphicsContext3D::clear): 61688 (WebCore::GraphicsContext3D::clearDepth): 61689 (WebCore::GraphicsContext3D::clearStencil): 61690 (WebCore::GraphicsContext3D::colorMask): 61691 (WebCore::GraphicsContext3D::compileShader): 61692 (WebCore::GraphicsContext3D::copyTexImage2D): 61693 (WebCore::GraphicsContext3D::copyTexSubImage2D): 61694 (WebCore::GraphicsContext3D::cullFace): 61695 (WebCore::GraphicsContext3D::depthFunc): 61696 (WebCore::GraphicsContext3D::depthMask): 61697 (WebCore::GraphicsContext3D::depthRange): 61698 (WebCore::GraphicsContext3D::detachShader): 61699 (WebCore::GraphicsContext3D::disable): 61700 (WebCore::GraphicsContext3D::disableVertexAttribArray): 61701 (WebCore::GraphicsContext3D::drawArrays): 61702 (WebCore::GraphicsContext3D::drawElements): 61703 (WebCore::GraphicsContext3D::enable): 61704 (WebCore::GraphicsContext3D::enableVertexAttribArray): 61705 (WebCore::GraphicsContext3D::finish): 61706 (WebCore::GraphicsContext3D::flush): 61707 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 61708 (WebCore::GraphicsContext3D::framebufferTexture2D): 61709 (WebCore::GraphicsContext3D::frontFace): 61710 (WebCore::GraphicsContext3D::generateMipmap): 61711 (WebCore::GraphicsContext3D::getActiveAttrib): 61712 (WebCore::GraphicsContext3D::getActiveUniform): 61713 (WebCore::GraphicsContext3D::getAttachedShaders): 61714 (WebCore::GraphicsContext3D::getAttribLocation): 61715 (WebCore::GraphicsContext3D::getContextAttributes): 61716 (WebCore::GraphicsContext3D::getError): 61717 (WebCore::GraphicsContext3D::getString): 61718 (WebCore::GraphicsContext3D::hint): 61719 (WebCore::GraphicsContext3D::isBuffer): 61720 (WebCore::GraphicsContext3D::isEnabled): 61721 (WebCore::GraphicsContext3D::isFramebuffer): 61722 (WebCore::GraphicsContext3D::isProgram): 61723 (WebCore::GraphicsContext3D::isRenderbuffer): 61724 (WebCore::GraphicsContext3D::isShader): 61725 (WebCore::GraphicsContext3D::isTexture): 61726 (WebCore::GraphicsContext3D::lineWidth): 61727 (WebCore::GraphicsContext3D::linkProgram): 61728 (WebCore::GraphicsContext3D::pixelStorei): 61729 (WebCore::GraphicsContext3D::polygonOffset): 61730 (WebCore::GraphicsContext3D::readPixels): 61731 (WebCore::GraphicsContext3D::releaseShaderCompiler): 61732 (WebCore::GraphicsContext3D::renderbufferStorage): 61733 (WebCore::GraphicsContext3D::sampleCoverage): 61734 (WebCore::GraphicsContext3D::scissor): 61735 (WebCore::GraphicsContext3D::shaderSource): 61736 (WebCore::GraphicsContext3D::stencilFunc): 61737 (WebCore::GraphicsContext3D::stencilFuncSeparate): 61738 (WebCore::GraphicsContext3D::stencilMask): 61739 (WebCore::GraphicsContext3D::stencilMaskSeparate): 61740 (WebCore::GraphicsContext3D::stencilOp): 61741 (WebCore::GraphicsContext3D::stencilOpSeparate): 61742 (WebCore::GraphicsContext3D::texParameterf): 61743 (WebCore::GraphicsContext3D::texParameteri): 61744 (WebCore::GraphicsContext3D::uniform1f): 61745 (WebCore::GraphicsContext3D::uniform1fv): 61746 (WebCore::GraphicsContext3D::uniform2f): 61747 (WebCore::GraphicsContext3D::uniform2fv): 61748 (WebCore::GraphicsContext3D::uniform3f): 61749 (WebCore::GraphicsContext3D::uniform3fv): 61750 (WebCore::GraphicsContext3D::uniform4f): 61751 (WebCore::GraphicsContext3D::uniform4fv): 61752 (WebCore::GraphicsContext3D::uniform1i): 61753 (WebCore::GraphicsContext3D::uniform1iv): 61754 (WebCore::GraphicsContext3D::uniform2i): 61755 (WebCore::GraphicsContext3D::uniform2iv): 61756 (WebCore::GraphicsContext3D::uniform3i): 61757 (WebCore::GraphicsContext3D::uniform3iv): 61758 (WebCore::GraphicsContext3D::uniform4i): 61759 (WebCore::GraphicsContext3D::uniform4iv): 61760 (WebCore::GraphicsContext3D::uniformMatrix2fv): 61761 (WebCore::GraphicsContext3D::uniformMatrix3fv): 61762 (WebCore::GraphicsContext3D::uniformMatrix4fv): 61763 (WebCore::GraphicsContext3D::useProgram): 61764 (WebCore::GraphicsContext3D::validateProgram): 61765 (WebCore::GraphicsContext3D::vertexAttrib1f): 61766 (WebCore::GraphicsContext3D::vertexAttrib1fv): 61767 (WebCore::GraphicsContext3D::vertexAttrib2f): 61768 (WebCore::GraphicsContext3D::vertexAttrib2fv): 61769 (WebCore::GraphicsContext3D::vertexAttrib3f): 61770 (WebCore::GraphicsContext3D::vertexAttrib3fv): 61771 (WebCore::GraphicsContext3D::vertexAttrib4f): 61772 (WebCore::GraphicsContext3D::vertexAttrib4fv): 61773 (WebCore::GraphicsContext3D::vertexAttribPointer): 61774 (WebCore::GraphicsContext3D::viewport): 61775 (WebCore::GraphicsContext3D::getBooleanv): 61776 (WebCore::GraphicsContext3D::getBufferParameteriv): 61777 (WebCore::GraphicsContext3D::getFloatv): 61778 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv): 61779 (WebCore::GraphicsContext3D::getIntegerv): 61780 (WebCore::GraphicsContext3D::getProgramiv): 61781 (WebCore::GraphicsContext3D::getProgramInfoLog): 61782 (WebCore::GraphicsContext3D::getRenderbufferParameteriv): 61783 (WebCore::GraphicsContext3D::getShaderiv): 61784 (WebCore::GraphicsContext3D::getShaderInfoLog): 61785 (WebCore::GraphicsContext3D::getShaderSource): 61786 (WebCore::GraphicsContext3D::getTexParameterfv): 61787 (WebCore::GraphicsContext3D::getTexParameteriv): 61788 (WebCore::GraphicsContext3D::getUniformfv): 61789 (WebCore::GraphicsContext3D::getUniformiv): 61790 (WebCore::GraphicsContext3D::getUniformLocation): 61791 (WebCore::GraphicsContext3D::getVertexAttribfv): 61792 (WebCore::GraphicsContext3D::getVertexAttribiv): 61793 (WebCore::GraphicsContext3D::getVertexAttribOffset): 61794 (WebCore::GraphicsContext3D::texImage2D): 61795 (WebCore::GraphicsContext3D::texSubImage2D): 61796 (WebCore::GraphicsContext3D::createBuffer): 61797 (WebCore::GraphicsContext3D::createFramebuffer): 61798 (WebCore::GraphicsContext3D::createProgram): 61799 (WebCore::GraphicsContext3D::createRenderbuffer): 61800 (WebCore::GraphicsContext3D::createShader): 61801 (WebCore::GraphicsContext3D::createTexture): 61802 (WebCore::GraphicsContext3D::deleteBuffer): 61803 (WebCore::GraphicsContext3D::deleteFramebuffer): 61804 (WebCore::GraphicsContext3D::deleteProgram): 61805 (WebCore::GraphicsContext3D::deleteRenderbuffer): 61806 (WebCore::GraphicsContext3D::deleteShader): 61807 (WebCore::GraphicsContext3D::deleteTexture): 61808 (WebCore::GraphicsContext3D::sizeInBytes): 61809 (WebCore::GraphicsContext3D::synthesizeGLError): 61810 61811 2010-09-03 James Robinson <jamesr (a] chromium.org> 61812 61813 Reviewed by Kenneth Russell. 61814 61815 Force 2d canvases to be rendered in software when the composite operation isn't source-over 61816 https://bugs.webkit.org/show_bug.cgi?id=45216 61817 61818 The current accelerated 2d canvas implementation is very slow for composite operations other 61819 than the default. This patch forces a canvas to be rendered in software if any other operation 61820 is set until we accelerate the rest. 61821 61822 Tested by any of the fast/canvas tests that use a non-default globalCompositeOperation. 61823 61824 * html/canvas/CanvasRenderingContext2D.cpp: 61825 (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): 61826 * platform/graphics/skia/PlatformContextSkia.cpp: 61827 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D): 61828 61829 2010-09-03 Paul Sawaya <psawaya (a] apple.com> 61830 61831 Reviewed by Chris Marrin. 61832 61833 Refactored out Mac specific code for platform/graphics/mac/GraphicsContext3D.mm file. 61834 Left general OpenGL code in platform/graphics/GraphicsContext3DOpenGL.cpp. 61835 https://bugs.webkit.org/show_bug.cgi?id=30625 61836 61837 * WebCore.gypi: 61838 * WebCore.xcodeproj/project.pbxproj: 61839 * html/canvas/WebGLObject.cpp: 61840 (WebCore::WebGLObject::deleteObject): 61841 * platform/graphics/ANGLEWebKitBridge.h: 61842 * platform/graphics/GraphicsContext3D.h: 61843 * platform/graphics/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm. 61844 (WebCore::GraphicsContext3D::prepareTexture): 61845 (WebCore::GraphicsContext3D::activeTexture): 61846 (WebCore::GraphicsContext3D::attachShader): 61847 (WebCore::GraphicsContext3D::bindAttribLocation): 61848 (WebCore::GraphicsContext3D::bindBuffer): 61849 (WebCore::GraphicsContext3D::bindFramebuffer): 61850 (WebCore::GraphicsContext3D::bindRenderbuffer): 61851 (WebCore::GraphicsContext3D::bindTexture): 61852 (WebCore::GraphicsContext3D::blendColor): 61853 (WebCore::GraphicsContext3D::blendEquation): 61854 (WebCore::GraphicsContext3D::blendEquationSeparate): 61855 (WebCore::GraphicsContext3D::blendFunc): 61856 (WebCore::GraphicsContext3D::blendFuncSeparate): 61857 (WebCore::GraphicsContext3D::bufferData): 61858 (WebCore::GraphicsContext3D::bufferSubData): 61859 (WebCore::GraphicsContext3D::checkFramebufferStatus): 61860 (WebCore::GraphicsContext3D::clearColor): 61861 (WebCore::GraphicsContext3D::clear): 61862 (WebCore::GraphicsContext3D::clearDepth): 61863 (WebCore::GraphicsContext3D::clearStencil): 61864 (WebCore::GraphicsContext3D::colorMask): 61865 (WebCore::GraphicsContext3D::compileShader): 61866 (WebCore::GraphicsContext3D::copyTexImage2D): 61867 (WebCore::GraphicsContext3D::copyTexSubImage2D): 61868 (WebCore::GraphicsContext3D::cullFace): 61869 (WebCore::GraphicsContext3D::depthFunc): 61870 (WebCore::GraphicsContext3D::depthMask): 61871 (WebCore::GraphicsContext3D::depthRange): 61872 (WebCore::GraphicsContext3D::detachShader): 61873 (WebCore::GraphicsContext3D::disable): 61874 (WebCore::GraphicsContext3D::disableVertexAttribArray): 61875 (WebCore::GraphicsContext3D::drawArrays): 61876 (WebCore::GraphicsContext3D::drawElements): 61877 (WebCore::GraphicsContext3D::enable): 61878 (WebCore::GraphicsContext3D::enableVertexAttribArray): 61879 (WebCore::GraphicsContext3D::finish): 61880 (WebCore::GraphicsContext3D::flush): 61881 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 61882 (WebCore::GraphicsContext3D::framebufferTexture2D): 61883 (WebCore::GraphicsContext3D::frontFace): 61884 (WebCore::GraphicsContext3D::generateMipmap): 61885 (WebCore::GraphicsContext3D::getActiveAttrib): 61886 (WebCore::GraphicsContext3D::getActiveUniform): 61887 (WebCore::GraphicsContext3D::getAttachedShaders): 61888 (WebCore::GraphicsContext3D::getAttribLocation): 61889 (WebCore::GraphicsContext3D::getError): 61890 (WebCore::GraphicsContext3D::getString): 61891 (WebCore::GraphicsContext3D::hint): 61892 (WebCore::GraphicsContext3D::isBuffer): 61893 (WebCore::GraphicsContext3D::isEnabled): 61894 (WebCore::GraphicsContext3D::isFramebuffer): 61895 (WebCore::GraphicsContext3D::isProgram): 61896 (WebCore::GraphicsContext3D::isRenderbuffer): 61897 (WebCore::GraphicsContext3D::isShader): 61898 (WebCore::GraphicsContext3D::isTexture): 61899 (WebCore::GraphicsContext3D::lineWidth): 61900 (WebCore::GraphicsContext3D::linkProgram): 61901 (WebCore::GraphicsContext3D::pixelStorei): 61902 (WebCore::GraphicsContext3D::polygonOffset): 61903 (WebCore::GraphicsContext3D::readPixels): 61904 (WebCore::GraphicsContext3D::releaseShaderCompiler): 61905 (WebCore::GraphicsContext3D::renderbufferStorage): 61906 (WebCore::GraphicsContext3D::sampleCoverage): 61907 (WebCore::GraphicsContext3D::scissor): 61908 (WebCore::GraphicsContext3D::shaderSource): 61909 (WebCore::GraphicsContext3D::stencilFunc): 61910 (WebCore::GraphicsContext3D::stencilFuncSeparate): 61911 (WebCore::GraphicsContext3D::stencilMask): 61912 (WebCore::GraphicsContext3D::stencilMaskSeparate): 61913 (WebCore::GraphicsContext3D::stencilOp): 61914 (WebCore::GraphicsContext3D::stencilOpSeparate): 61915 (WebCore::GraphicsContext3D::texParameterf): 61916 (WebCore::GraphicsContext3D::texParameteri): 61917 (WebCore::GraphicsContext3D::uniform1f): 61918 (WebCore::GraphicsContext3D::uniform1fv): 61919 (WebCore::GraphicsContext3D::uniform2f): 61920 (WebCore::GraphicsContext3D::uniform2fv): 61921 (WebCore::GraphicsContext3D::uniform3f): 61922 (WebCore::GraphicsContext3D::uniform3fv): 61923 (WebCore::GraphicsContext3D::uniform4f): 61924 (WebCore::GraphicsContext3D::uniform4fv): 61925 (WebCore::GraphicsContext3D::uniform1i): 61926 (WebCore::GraphicsContext3D::uniform1iv): 61927 (WebCore::GraphicsContext3D::uniform2i): 61928 (WebCore::GraphicsContext3D::uniform2iv): 61929 (WebCore::GraphicsContext3D::uniform3i): 61930 (WebCore::GraphicsContext3D::uniform3iv): 61931 (WebCore::GraphicsContext3D::uniform4i): 61932 (WebCore::GraphicsContext3D::uniform4iv): 61933 (WebCore::GraphicsContext3D::uniformMatrix2fv): 61934 (WebCore::GraphicsContext3D::uniformMatrix3fv): 61935 (WebCore::GraphicsContext3D::uniformMatrix4fv): 61936 (WebCore::GraphicsContext3D::useProgram): 61937 (WebCore::GraphicsContext3D::validateProgram): 61938 (WebCore::GraphicsContext3D::vertexAttrib1f): 61939 (WebCore::GraphicsContext3D::vertexAttrib1fv): 61940 (WebCore::GraphicsContext3D::vertexAttrib2f): 61941 (WebCore::GraphicsContext3D::vertexAttrib2fv): 61942 (WebCore::GraphicsContext3D::vertexAttrib3f): 61943 (WebCore::GraphicsContext3D::vertexAttrib3fv): 61944 (WebCore::GraphicsContext3D::vertexAttrib4f): 61945 (WebCore::GraphicsContext3D::vertexAttrib4fv): 61946 (WebCore::GraphicsContext3D::vertexAttribPointer): 61947 (WebCore::GraphicsContext3D::viewport): 61948 (WebCore::GraphicsContext3D::getBooleanv): 61949 (WebCore::GraphicsContext3D::getBufferParameteriv): 61950 (WebCore::GraphicsContext3D::getFloatv): 61951 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv): 61952 (WebCore::GraphicsContext3D::getIntegerv): 61953 (WebCore::GraphicsContext3D::getProgramiv): 61954 (WebCore::GraphicsContext3D::getProgramInfoLog): 61955 (WebCore::GraphicsContext3D::getRenderbufferParameteriv): 61956 (WebCore::GraphicsContext3D::getShaderiv): 61957 (WebCore::GraphicsContext3D::getShaderInfoLog): 61958 (WebCore::GraphicsContext3D::getShaderSource): 61959 (WebCore::GraphicsContext3D::getTexParameterfv): 61960 (WebCore::GraphicsContext3D::getTexParameteriv): 61961 (WebCore::GraphicsContext3D::getUniformfv): 61962 (WebCore::GraphicsContext3D::getUniformiv): 61963 (WebCore::GraphicsContext3D::getUniformLocation): 61964 (WebCore::GraphicsContext3D::getVertexAttribfv): 61965 (WebCore::GraphicsContext3D::getVertexAttribiv): 61966 (WebCore::GraphicsContext3D::getVertexAttribOffset): 61967 (WebCore::GraphicsContext3D::texImage2D): 61968 (WebCore::GraphicsContext3D::texSubImage2D): 61969 (WebCore::GraphicsContext3D::createBuffer): 61970 (WebCore::GraphicsContext3D::createFramebuffer): 61971 (WebCore::GraphicsContext3D::createProgram): 61972 (WebCore::GraphicsContext3D::createRenderbuffer): 61973 (WebCore::GraphicsContext3D::createShader): 61974 (WebCore::GraphicsContext3D::createTexture): 61975 (WebCore::GraphicsContext3D::deleteBuffer): 61976 (WebCore::GraphicsContext3D::deleteFramebuffer): 61977 (WebCore::GraphicsContext3D::deleteProgram): 61978 (WebCore::GraphicsContext3D::deleteRenderbuffer): 61979 (WebCore::GraphicsContext3D::deleteShader): 61980 (WebCore::GraphicsContext3D::deleteTexture): 61981 * platform/graphics/mac/GraphicsContext3DMac.mm: 61982 (WebCore::GraphicsContext3D::ensureContext): 61983 (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses): 61984 61985 2010-09-03 James Robinson <jamesr (a] chromium.org> 61986 61987 Reviewed by Darin Fisher. 61988 61989 [chromium] Implement ImageBufferSkia::draw on the GPU when possible 61990 https://bugs.webkit.org/show_bug.cgi?id=45207 61991 61992 When drawing from an ImageBuffer into a GraphicsContext, attempt to do the 61993 draw in hardware when possible. This is how canvas 2d's drawImage(canvas, ...) 61994 is implemented. Adds new API to DrawingBuffer to request a texture containing 61995 the DrawingBuffer's current rendering results. 61996 61997 Test: covered fast/canvas/drawImage.html and all other tests that draw from one 61998 2d canvas into another. 61999 62000 * html/canvas/CanvasRenderingContext2D.cpp: 62001 (WebCore::CanvasRenderingContext2D::drawImage): 62002 * platform/graphics/chromium/DrawingBufferChromium.cpp: 62003 (WebCore::DrawingBuffer::getRenderingResultsAsTexture): 62004 * platform/graphics/gpu/DrawingBuffer.h: 62005 * platform/graphics/skia/ImageBufferSkia.cpp: 62006 (WebCore::ImageBuffer::draw): 62007 62008 2010-09-03 James Robinson <jamesr (a] chromium.org> 62009 62010 Reviewed by Kenneth Russell. 62011 62012 [chromium] Null out Canvas2DLayerChromium's back reference to DrawingBuffer on destruction 62013 https://bugs.webkit.org/show_bug.cgi?id=45187 62014 62015 Canvas2DLayerChromium keeps a back reference to a DrawingBuffer. This has to be a raw pointer 62016 because the DrawingBuffer holds a RefPtr to the Canvas2DLayerChromium. Since the layer can 62017 outlive the buffer, this back reference has to be explicitly cleared when the DrawingBuffer 62018 is destroyed. 62019 62020 * platform/graphics/chromium/Canvas2DLayerChromium.cpp: 62021 (WebCore::Canvas2DLayerChromium::setDrawingBuffer): 62022 * platform/graphics/chromium/Canvas2DLayerChromium.h: 62023 * platform/graphics/chromium/DrawingBufferChromium.cpp: 62024 (WebCore::DrawingBuffer::~DrawingBuffer): 62025 62026 2010-09-03 Kenneth Russell <kbr (a] google.com> 62027 62028 Reviewed by Darin Fisher. 62029 62030 Add interval tree capable of holding plain old data (POD) 62031 https://bugs.webkit.org/show_bug.cgi?id=45160 62032 62033 Adding an interval tree currently capable of holding types which 62034 do not require their destructors to be called. POD is a slight 62035 misnomer which will be corrected soon, hopefully by removing this 62036 restriction. 62037 62038 This class is based on the augmentable property of the red/black 62039 tree integrated under bug 45059. 62040 62041 Unit tests for the PODIntervalTree will be integrated separately 62042 under bug 45161. 62043 62044 * WebCore.gypi: 62045 * platform/graphics/gpu/PODInterval.h: Added. 62046 (WebCore::PODInterval::PODInterval): 62047 (WebCore::PODInterval::low): 62048 (WebCore::PODInterval::high): 62049 (WebCore::PODInterval::data): 62050 (WebCore::PODInterval::overlaps): 62051 (WebCore::PODInterval::operator<): 62052 (WebCore::PODInterval::operator==): 62053 (WebCore::PODInterval::maxHigh): 62054 (WebCore::PODInterval::setMaxHigh): 62055 (WebCore::PODInterval::toString): 62056 * platform/graphics/gpu/PODIntervalTree.h: Added. 62057 (WebCore::PODIntervalTree::PODIntervalTree): 62058 (WebCore::PODIntervalTree::allOverlaps): 62059 (WebCore::PODIntervalTree::createInterval): 62060 (WebCore::PODIntervalTree::checkInvariants): 62061 (WebCore::PODIntervalTree::init): 62062 (WebCore::PODIntervalTree::searchForOverlapsFrom): 62063 (WebCore::PODIntervalTree::updateNode): 62064 (WebCore::PODIntervalTree::checkInvariantsFromNode): 62065 (WebCore::valueToString): 62066 62067 2010-09-02 Vangelis Kokkevis <vangelis (a] chromium.org> 62068 62069 Reviewed by Darin Fisher. 62070 62071 [chromium] Gracefully switch over to software compositing if the accelerated 62072 compositor fails to initialize. LayerRendererChromium::create() will now return 0 62073 if the GLES2Context passed to it is NULL or the LayerRendererChromium failed to initialize 62074 hardware rendering. 62075 https://bugs.webkit.org/show_bug.cgi?id=45124 62076 62077 Tested by forcing the creation of the gles2 context to fail and loading pages that normally trigger 62078 the compositor. 62079 62080 * platform/graphics/chromium/LayerRendererChromium.cpp: 62081 (WebCore::LayerRendererChromium::create): 62082 (WebCore::LayerRendererChromium::LayerRendererChromium): 62083 (WebCore::LayerRendererChromium::makeContextCurrent): 62084 62085 2010-09-03 Peter Kasting <pkasting (a] google.com> 62086 62087 Reviewed by Simon Fraser. 62088 62089 Report correct (unzoomed) image sizes for zoomed images. 62090 https://bugs.webkit.org/show_bug.cgi?id=42089 62091 62092 Test: fast/images/zoomed-img-size.html 62093 62094 * css/CSSPrimitiveValue.cpp: Factor rounding code out to a templatized function so it can be shared. 62095 (WebCore::CSSPrimitiveValue::computeLengthInt): 62096 (WebCore::CSSPrimitiveValue::computeLengthIntForLength): 62097 (WebCore::CSSPrimitiveValue::computeLengthShort): 62098 * css/CSSPrimitiveValue.h: Factor rounding code out to a templatized function so it can be shared. 62099 (WebCore::roundForImpreciseConversion): 62100 * html/HTMLImageElement.cpp: Report unzoomed size to script that queries an image's width or height. 62101 (WebCore::HTMLImageElement::width): 62102 (WebCore::HTMLImageElement::height): 62103 * loader/ImageDocument.cpp: Report unzoomed size in the page title when viewing a standalone image. 62104 (WebCore::ImageDocumentParser::finish): 62105 * rendering/RenderObject.h: Use shared rounding code from CSSPrimitiveValue to compensate for inexactness in zoomed sizes. 62106 (WebCore::adjustForAbsoluteZoom): 62107 62108 2010-09-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 62109 62110 Unreviewed, rolling out r66770. 62111 http://trac.webkit.org/changeset/66770 62112 https://bugs.webkit.org/show_bug.cgi?id=45200 62113 62114 Broke Windows in a way I can't figure out now to fix 62115 (Requested by abarth on #webkit). 62116 62117 * GNUmakefile.am: 62118 * WebCore.gypi: 62119 * WebCore.pro: 62120 * WebCore.vcproj/WebCore.vcproj: 62121 * WebCore.xcodeproj/project.pbxproj: 62122 * bindings/generic/BindingDOMWindow.h: 62123 (WebCore::::completeURL): 62124 * bindings/generic/BindingFrame.h: Removed. 62125 * bindings/generic/BindingLocation.h: Removed. 62126 * bindings/generic/GenericBinding.h: 62127 * bindings/js/JSBinding.h: Removed. 62128 * bindings/js/JSBindingsAllInOne.cpp: 62129 * bindings/js/JSDOMBinding.cpp: 62130 (WebCore::shouldAllowNavigation): 62131 (WebCore::toLexicalFrame): 62132 (WebCore::toDynamicFrame): 62133 (WebCore::processingUserGesture): 62134 (WebCore::completeURL): 62135 * bindings/js/JSLocationCustom.cpp: 62136 (WebCore::navigateIfAllowed): 62137 (WebCore::JSLocation::replace): 62138 * bindings/js/specialization/JSBindingState.cpp: Removed. 62139 * bindings/js/specialization/JSBindingState.h: Removed. 62140 * bindings/v8/V8Binding.h: 62141 * bindings/v8/V8Utilities.cpp: 62142 (WebCore::completeURL): 62143 (WebCore::navigateIfAllowed): 62144 * bindings/v8/custom/V8LocationCustom.cpp: 62145 (WebCore::V8Location::replaceCallback): 62146 * bindings/v8/specialization/V8BindingState.cpp: 62147 * bindings/v8/specialization/V8BindingState.h: 62148 62149 2010-09-03 Jian Li <jianli (a] chromium.org> 62150 62151 Reviewed by Darin Adler. 62152 62153 REGRESSION (r66452): Sending of multipart forms with files is broken. 62154 https://bugs.webkit.org/show_bug.cgi?id=45159 62155 62156 * platform/network/FormData.cpp: 62157 (WebCore::FormData::appendKeyValuePairItems): 62158 62159 2010-09-03 Dominic Cooney <dominicc (a] google.com> 62160 62161 Reviewed by Adam Barth. 62162 62163 Moves location.replace bindings logic into bindings/generic and 62164 instantiates it for JSC and V8. 62165 62166 https://bugs.webkit.org/show_bug.cgi?id=44891 62167 62168 Covered by existing location.replace tests. 62169 62170 * GNUmakefile.am: 62171 * WebCore.gypi: 62172 * WebCore.pro: 62173 * WebCore.vcproj/WebCore.vcproj: 62174 * WebCore.xcodeproj/project.pbxproj: 62175 * bindings/generic/BindingDOMWindow.h: 62176 (WebCore::::createWindow): 62177 (WebCore::::open): 62178 * bindings/generic/BindingFrame.h: Added. 62179 (WebCore::::navigateIfAllowed): 62180 * bindings/generic/BindingLocation.h: Added. 62181 (WebCore::::replace): 62182 * bindings/generic/GenericBinding.h: 62183 (WebCore::completeURL): 62184 * bindings/js/JSBinding.h: Added. 62185 * bindings/js/JSBindingsAllInOne.cpp: 62186 * bindings/js/JSDOMBinding.cpp: 62187 (WebCore::shouldAllowNavigation): 62188 (WebCore::toLexicalFrame): 62189 (WebCore::toDynamicFrame): 62190 (WebCore::processingUserGesture): 62191 (WebCore::completeURL): 62192 * bindings/js/JSLocationCustom.cpp: 62193 (WebCore::navigateIfAllowed): 62194 (WebCore::JSLocation::replace): 62195 * bindings/js/specialization/JSBindingState.cpp: Added. 62196 (WebCore::::getActiveFrame): 62197 (WebCore::::getFirstFrame): 62198 (WebCore::::processingUserGesture): 62199 (WebCore::::allowsAccessFromFrame): 62200 * bindings/js/specialization/JSBindingState.h: Added. 62201 * bindings/v8/V8Binding.h: 62202 * bindings/v8/V8Utilities.cpp: 62203 (WebCore::completeURL): 62204 (WebCore::navigateIfAllowed): 62205 * bindings/v8/custom/V8LocationCustom.cpp: 62206 (WebCore::V8Location::replaceCallback): 62207 * bindings/v8/specialization/V8BindingState.cpp: 62208 (WebCore::::allowsAccessFromFrame): 62209 * bindings/v8/specialization/V8BindingState.h: 62210 62211 2010-09-03 Dimitri Glazkov <dglazkov (a] chromium.org> 62212 62213 Reviewed by Tony Chang. 62214 62215 [Chromium] Make sure that the width of the menu list is always constant under layout tests. 62216 https://bugs.webkit.org/show_bug.cgi?id=45196 62217 62218 * rendering/RenderThemeChromiumWin.cpp: 62219 (WebCore::menuListButtonWidth): Added. 62220 (WebCore::RenderThemeChromiumWin::paintMenuList): Use menuListButtonWidth instead of always 62221 querying system metrics. 62222 62223 2010-09-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 62224 62225 Unreviewed, rolling out r66732. 62226 http://trac.webkit.org/changeset/66732 62227 https://bugs.webkit.org/show_bug.cgi?id=45195 62228 62229 the patch is not matched with general publish/subscribe scheme 62230 implemented in the Inspector API (Requested by loislo on 62231 #webkit). 62232 62233 * inspector/CodeGeneratorInspector.pm: 62234 * inspector/Inspector.idl: 62235 * inspector/InspectorDOMAgent.cpp: 62236 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): 62237 (WebCore::InspectorDOMAgent::getChildNodes): 62238 * inspector/InspectorDOMAgent.h: 62239 * inspector/front-end/DOMAgent.js: 62240 (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback): 62241 (WebInspector.DOMAgent.prototype.getChildNodesAsync): 62242 * inspector/front-end/WorkersSidebarPane.js: 62243 (WebInspector.WorkersSidebarPane.prototype.reset): 62244 62245 2010-09-03 James Robinson <jamesr (a] chromium.org> 62246 62247 [chromium] Compile fixes for 66746 62248 62249 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: 62250 (WebCore::SharedGraphicsContext3D::texImage2D): 62251 (WebCore::SharedGraphicsContext3D::texSubImage2D): 62252 62253 2010-09-03 Chris Rogers <crogers (a] google.com> 62254 62255 Reviewed by Kenneth Russell. 62256 62257 Add AudioParam files 62258 https://bugs.webkit.org/show_bug.cgi?id=44995 62259 62260 No new tests since audio API is not yet implemented. 62261 62262 * webaudio: Added. 62263 * webaudio/AudioParam.h: Added. 62264 (WebCore::AudioParam::create): 62265 (WebCore::AudioParam::AudioParam): 62266 (WebCore::AudioParam::value): 62267 (WebCore::AudioParam::setValue): 62268 (WebCore::AudioParam::name): 62269 (WebCore::AudioParam::minValue): 62270 (WebCore::AudioParam::maxValue): 62271 (WebCore::AudioParam::defaultValue): 62272 (WebCore::AudioParam::units): 62273 (WebCore::AudioParam::smoothedValue): 62274 (WebCore::AudioParam::smooth): 62275 (WebCore::AudioParam::resetSmoothedValue): 62276 (WebCore::AudioParam::setSmoothingConstant): 62277 * webaudio/AudioParam.idl: Added. 62278 62279 2010-09-03 Chris Rogers <crogers (a] google.com> 62280 62281 Reviewed by Kenneth Russell. 62282 62283 audio engine: add AudioChannel files 62284 https://bugs.webkit.org/show_bug.cgi?id=44921 62285 62286 No new tests since audio API is not yet implemented. 62287 62288 * platform/audio/AudioChannel.cpp: Added. 62289 (WebCore::AudioChannel::scale): 62290 (WebCore::AudioChannel::copyFrom): 62291 (WebCore::AudioChannel::copyFromRange): 62292 (WebCore::AudioChannel::sumFrom): 62293 (WebCore::AudioChannel::maxAbsValue): 62294 * platform/audio/AudioChannel.h: Added. 62295 (WebCore::AudioChannel::AudioChannel): 62296 (WebCore::AudioChannel::set): 62297 (WebCore::AudioChannel::length): 62298 (WebCore::AudioChannel::data): 62299 (WebCore::AudioChannel::zero): 62300 62301 2010-09-03 Patrick Gansterer <paroga (a] paroga.com> 62302 62303 Reviewed by Adam Roben. 62304 62305 [WINCE] Remove usage of ce_textcodecs.h 62306 https://bugs.webkit.org/show_bug.cgi?id=45169 62307 62308 ce_textcodecs.h was a non public header for (not required) 62309 additonal codecs in the original Torch Mobile port. 62310 62311 * platform/text/wince/TextCodecWinCE.cpp: 62312 (WebCore::LanguageManager::LanguageManager): 62313 (WebCore::decode): 62314 62315 2010-09-03 Chris Rogers <crogers (a] google.com> 62316 62317 Reviewed by Kenneth Russell. 62318 62319 Initial patch for audio engine: AudioBus and helper classes 62320 https://bugs.webkit.org/show_bug.cgi?id=34452 62321 62322 No new tests since audio API is not yet implemented. 62323 62324 * platform/audio/AudioBus.cpp: Added. 62325 (WebCore::AudioBus::AudioBus): 62326 (WebCore::AudioBus::setChannelMemory): 62327 (WebCore::AudioBus::zero): 62328 (WebCore::AudioBus::channelByType): 62329 (WebCore::AudioBus::topologyMatches): 62330 (WebCore::AudioBus::createBufferFromRange): 62331 (WebCore::AudioBus::maxAbsValue): 62332 (WebCore::AudioBus::normalize): 62333 (WebCore::AudioBus::scale): 62334 (WebCore::AudioBus::copyFrom): 62335 (WebCore::AudioBus::sumFrom): 62336 (WebCore::AudioBus::processWithGainFromMonoStereo): 62337 (WebCore::AudioBus::processWithGainFrom): 62338 (WebCore::AudioBus::copyWithGainFrom): 62339 (WebCore::AudioBus::sumWithGainFrom): 62340 * platform/audio/AudioBus.h: Added. 62341 (WebCore::AudioBus::numberOfChannels): 62342 (WebCore::AudioBus::channel): 62343 (WebCore::AudioBus::length): 62344 (WebCore::AudioBus::sampleRate): 62345 (WebCore::AudioBus::setSampleRate): 62346 (WebCore::AudioBus::setGain): 62347 (WebCore::AudioBus::gain): 62348 (WebCore::AudioBus::reset): 62349 (WebCore::AudioBus::AudioBus): 62350 * platform/audio/AudioSourceProvider.h: Added. 62351 (WebCore::AudioSourceProvider::~AudioSourceProvider): 62352 62353 2010-09-03 Chris Rogers <crogers (a] google.com> 62354 62355 Reviewed by Kenneth Russell. 62356 62357 Add Panner files 62358 https://bugs.webkit.org/show_bug.cgi?id=45076 62359 62360 No new tests since audio API is not yet implemented. 62361 62362 * platform/audio/Panner.cpp: Added. 62363 (WebCore::Panner::create): 62364 * platform/audio/Panner.h: Added. 62365 (WebCore::Panner::~Panner): 62366 (WebCore::Panner::panningModel): 62367 (WebCore::Panner::Panner): 62368 62369 2010-09-03 Chris Rogers <crogers (a] google.com> 62370 62371 Reviewed by Kenneth Russell. 62372 62373 Add AudioListener files 62374 https://bugs.webkit.org/show_bug.cgi?id=45006 62375 62376 No new tests since audio API is not yet implemented. 62377 62378 * webaudio: Added. 62379 * webaudio/AudioListener.cpp: Added. 62380 (WebCore::AudioListener::AudioListener): 62381 * webaudio/AudioListener.h: Added. 62382 (WebCore::AudioListener::create): 62383 (WebCore::AudioListener::setPosition): 62384 (WebCore::AudioListener::position): 62385 (WebCore::AudioListener::setOrientation): 62386 (WebCore::AudioListener::orientation): 62387 (WebCore::AudioListener::setUpVector): 62388 (WebCore::AudioListener::upVector): 62389 (WebCore::AudioListener::setVelocity): 62390 (WebCore::AudioListener::velocity): 62391 (WebCore::AudioListener::setDopplerFactor): 62392 (WebCore::AudioListener::dopplerFactor): 62393 (WebCore::AudioListener::setSpeedOfSound): 62394 (WebCore::AudioListener::speedOfSound): 62395 * webaudio/AudioListener.idl: Added. 62396 62397 2010-09-03 Chris Rogers <crogers (a] google.com> 62398 62399 Unreviewed 62400 62401 Add WebCore/webaudio and WebCore/platform/audio/mac directories in preparation for landing reviewed patches 62402 https://bugs.webkit.org/show_bug.cgi?id=45185 62403 62404 * platform/audio/mac: Added. 62405 * webaudio: Added. 62406 62407 2010-09-03 James Robinson <jamesr (a] chromium.org> 62408 62409 Reviewed by Chris Marrin. 62410 62411 Multiple accelerated 2D canvases should be able to use the same GraphicsContext3D 62412 https://bugs.webkit.org/show_bug.cgi?id=44926 62413 62414 This allows many accelerated 2d canvases to render using a single underlying GraphicsContext3D. 62415 It introduces a new class SharedGraphicsContext3D that manages several callers. This class could 62416 also cache the current state to avoid issuing redundant calls, although in this first cut it doesn't. 62417 The SharedGraphicsContext3D is provided through the ChromeClient so that its lifetime can be tied to that 62418 of the platform-specific compositor infrastructure. 62419 62420 Accelerated 2d canvases maintain a reference to a SharedGraphicsContext3D and have ownership of a CanvasFramebuffer, 62421 which represents the canvas's rendering target. The compositing layer for an accelerated 2d canvas is 62422 aware only of the canvas's CanvasFramebuffer. This means that WebGL and 2d canvases are no longer treated 62423 as the same time of layer by the compositor. 62424 62425 Covered by existing canvas tests. 62426 62427 * WebCore.gypi: 62428 * html/canvas/CanvasRenderingContext.cpp: 62429 * html/canvas/CanvasRenderingContext.h: 62430 (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer): 62431 (WebCore::CanvasRenderingContext::platformLayer): 62432 * html/canvas/CanvasRenderingContext2D.cpp: 62433 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 62434 (WebCore::CanvasRenderingContext2D::paintsIntoCanvasBuffer): 62435 (WebCore::CanvasRenderingContext2D::reset): 62436 (WebCore::CanvasRenderingContext2D::didDraw): 62437 (WebCore::CanvasRenderingContext2D::platformLayer): 62438 * html/canvas/CanvasRenderingContext2D.h: 62439 * html/canvas/WebGLRenderingContext.cpp: 62440 (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer): 62441 * html/canvas/WebGLRenderingContext.h: 62442 (WebCore::WebGLRenderingContext::graphicsContext3D): 62443 (WebCore::WebGLRenderingContext::platformLayer): 62444 * loader/EmptyClients.h: 62445 (WebCore::EmptyChromeClient::attachRootGraphicsLayer): 62446 (WebCore::EmptyChromeClient::setNeedsOneShotDrawingSynchronization): 62447 (WebCore::EmptyChromeClient::scheduleCompositingLayerSync): 62448 * page/ChromeClient.h: 62449 (WebCore::ChromeClient::getSharedGraphicsContext3D): 62450 * platform/graphics/GraphicsContext.cpp: 62451 (WebCore::GraphicsContext::setSharedGraphicsContext3D): 62452 (WebCore::GraphicsContext::syncSoftwareCanvas): 62453 * platform/graphics/GraphicsContext.h: 62454 * platform/graphics/chromium/Canvas2DLayerChromium.cpp: Added. 62455 (WebCore::Canvas2DLayerChromium::create): 62456 (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium): 62457 (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium): 62458 (WebCore::Canvas2DLayerChromium::updateContents): 62459 (WebCore::Canvas2DLayerChromium::setTextureChanged): 62460 (WebCore::Canvas2DLayerChromium::textureId): 62461 * platform/graphics/chromium/Canvas2DLayerChromium.h: Added. 62462 (WebCore::Canvas2DLayerChromium::drawsContent): 62463 * platform/graphics/chromium/CanvasLayerChromium.cpp: 62464 (WebCore::CanvasLayerChromium::CanvasLayerChromium): 62465 (WebCore::CanvasLayerChromium::~CanvasLayerChromium): 62466 (WebCore::CanvasLayerChromium::draw): 62467 * platform/graphics/chromium/CanvasLayerChromium.h: 62468 * platform/graphics/chromium/DrawingBufferChromium.cpp: Added. 62469 (WebCore::generateColorTexture): 62470 (WebCore::DrawingBuffer::DrawingBuffer): 62471 (WebCore::DrawingBuffer::~DrawingBuffer): 62472 (WebCore::DrawingBuffer::publishToPlatformLayer): 62473 (WebCore::DrawingBuffer::reset): 62474 (WebCore::DrawingBuffer::platformLayer): 62475 * platform/graphics/chromium/GLES2Canvas.cpp: 62476 (WebCore::GLES2Canvas::GLES2Canvas): 62477 (WebCore::GLES2Canvas::~GLES2Canvas): 62478 (WebCore::GLES2Canvas::bindFramebuffer): 62479 (WebCore::GLES2Canvas::clearRect): 62480 (WebCore::GLES2Canvas::fillRect): 62481 (WebCore::GLES2Canvas::drawTexturedRect): 62482 (WebCore::GLES2Canvas::drawTexturedRectTile): 62483 (WebCore::GLES2Canvas::drawQuad): 62484 (WebCore::GLES2Canvas::createTexture): 62485 (WebCore::GLES2Canvas::getTexture): 62486 * platform/graphics/chromium/GLES2Canvas.h: 62487 (WebCore::GLES2Canvas::context): 62488 (WebCore::GLES2Canvas::drawingBuffer): 62489 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 62490 (WebCore::GraphicsLayerChromium::setContentsToCanvas): 62491 * platform/graphics/chromium/GraphicsLayerChromium.h: 62492 * platform/graphics/chromium/WebGLLayerChromium.cpp: Added. 62493 (WebCore::WebGLLayerChromium::create): 62494 (WebCore::WebGLLayerChromium::WebGLLayerChromium): 62495 (WebCore::WebGLLayerChromium::updateContents): 62496 (WebCore::WebGLLayerChromium::setContext): 62497 * platform/graphics/chromium/WebGLLayerChromium.h: Added. 62498 (WebCore::WebGLLayerChromium::drawsContent): 62499 * platform/graphics/gpu/DrawingBuffer.cpp: Added. 62500 (WebCore::DrawingBuffer::create): 62501 (WebCore::DrawingBuffer::bind): 62502 (WebCore::DrawingBuffer::setWillPublishCallback): 62503 * platform/graphics/gpu/DrawingBuffer.h: Added. 62504 (WebCore::DrawingBuffer::size): 62505 * platform/graphics/gpu/SharedGraphicsContext3D.cpp: Added. 62506 (WebCore::SharedGraphicsContext3D::create): 62507 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D): 62508 (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D): 62509 (WebCore::SharedGraphicsContext3D::makeContextCurrent): 62510 (WebCore::SharedGraphicsContext3D::scissor): 62511 (WebCore::SharedGraphicsContext3D::enable): 62512 (WebCore::SharedGraphicsContext3D::disable): 62513 (WebCore::SharedGraphicsContext3D::clearColor): 62514 (WebCore::SharedGraphicsContext3D::clear): 62515 (WebCore::SharedGraphicsContext3D::drawArrays): 62516 (WebCore::SharedGraphicsContext3D::getError): 62517 (WebCore::SharedGraphicsContext3D::getIntegerv): 62518 (WebCore::SharedGraphicsContext3D::createFramebuffer): 62519 (WebCore::SharedGraphicsContext3D::createTexture): 62520 (WebCore::SharedGraphicsContext3D::deleteFramebuffer): 62521 (WebCore::SharedGraphicsContext3D::deleteTexture): 62522 (WebCore::SharedGraphicsContext3D::framebufferTexture2D): 62523 (WebCore::SharedGraphicsContext3D::texParameteri): 62524 (WebCore::SharedGraphicsContext3D::texImage2D): 62525 (WebCore::SharedGraphicsContext3D::texSubImage2D): 62526 (WebCore::SharedGraphicsContext3D::readPixels): 62527 (WebCore::SharedGraphicsContext3D::supportsBGRA): 62528 (WebCore::SharedGraphicsContext3D::getTexture): 62529 (WebCore::SharedGraphicsContext3D::applyCompositeOperator): 62530 (WebCore::SharedGraphicsContext3D::useQuadVertices): 62531 (WebCore::SharedGraphicsContext3D::setActiveTexture): 62532 (WebCore::SharedGraphicsContext3D::bindTexture): 62533 (WebCore::SharedGraphicsContext3D::useFillSolidProgram): 62534 (WebCore::SharedGraphicsContext3D::useTextureProgram): 62535 (WebCore::SharedGraphicsContext3D::bindFramebuffer): 62536 (WebCore::SharedGraphicsContext3D::setViewport): 62537 (WebCore::SharedGraphicsContext3D::paintsIntoCanvasBuffer): 62538 * platform/graphics/gpu/SharedGraphicsContext3D.h: Added. 62539 * platform/graphics/gpu/Texture.cpp: 62540 * platform/graphics/skia/GraphicsContextSkia.cpp: 62541 (WebCore::GraphicsContext::syncSoftwareCanvas): 62542 (WebCore::GraphicsContext::setSharedGraphicsContext3D): 62543 * platform/graphics/skia/ImageSkia.cpp: 62544 * platform/graphics/skia/PlatformContextSkia.cpp: 62545 (WebCore::PlatformContextSkia::~PlatformContextSkia): 62546 (WebCore::WillPublishCallbackImpl::create): 62547 (WebCore::WillPublishCallbackImpl::willPublish): 62548 (WebCore::WillPublishCallbackImpl::WillPublishCallbackImpl): 62549 (WebCore::PlatformContextSkia::setSharedGraphicsContext3D): 62550 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 62551 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 62552 * platform/graphics/skia/PlatformContextSkia.h: 62553 * rendering/RenderLayerBacking.cpp: 62554 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): 62555 62556 2010-09-03 Chris Rogers <crogers (a] google.com> 62557 62558 Reviewed by Kenneth Russell. 62559 62560 Add audio distance effect files 62561 https://bugs.webkit.org/show_bug.cgi?id=44705 62562 62563 No new tests since audio API is not yet implemented. 62564 62565 * platform/audio/Distance.cpp: Added. 62566 (WebCore::DistanceEffect::DistanceEffect): 62567 (WebCore::DistanceEffect::gain): 62568 (WebCore::DistanceEffect::linearGain): 62569 (WebCore::DistanceEffect::inverseGain): 62570 (WebCore::DistanceEffect::exponentialGain): 62571 * platform/audio/Distance.h: Added. 62572 (WebCore::DistanceEffect::model): 62573 (WebCore::DistanceEffect::setModel): 62574 (WebCore::DistanceEffect::setRefDistance): 62575 (WebCore::DistanceEffect::setMaxDistance): 62576 (WebCore::DistanceEffect::setRolloffFactor): 62577 (WebCore::DistanceEffect::refDistance): 62578 (WebCore::DistanceEffect::maxDistance): 62579 (WebCore::DistanceEffect::rolloffFactor): 62580 62581 2010-09-03 Johnny Ding <jnd (a] chromium.org> 62582 62583 Reviewed by Adam Barth. 62584 62585 Save the gesture state to track the user gesture state across async form submission. 62586 https://bugs.webkit.org/show_bug.cgi?id=44969 62587 62588 fast/events/popup-blocked-to-post-blank.html can cover the test in WebKit. 62589 A UI test will be added in chromium to address chromium's bug. 62590 62591 * loader/RedirectScheduler.cpp: 62592 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): 62593 (WebCore::ScheduledFormSubmission::fire): 62594 (WebCore::RedirectScheduler::scheduleFormSubmission): 62595 62596 2010-09-03 Dan Bernstein <mitz (a] apple.com> 62597 62598 Reviewed by Anders Carlsson. 62599 62600 <rdar://problem/8392655> REGRESSION (r57215): Decomposed diacritics render incorrectly when preceded by stacked diacritics 62601 https://bugs.webkit.org/show_bug.cgi?id=45182 62602 62603 Test: fast/text/decomposed-after-stacked-diacritics.html 62604 62605 * platform/graphics/Font.cpp: 62606 (WebCore::Font::codePath): Do not bail out if the run contains stacked diacritics, since 62607 it may also contain characters that require the complex text code path. 62608 62609 2010-09-03 Mikhail Naganov <mnaganov (a] chromium.org> 62610 62611 Reviewed by Yury Semikhatsky. 62612 62613 Web Inspector: Cleanup after r66117 - extract heap snapshot 62614 view styles into a dedicated .css 62615 62616 https://bugs.webkit.org/show_bug.cgi?id=45178 62617 62618 * WebCore.gypi: 62619 * WebCore.vcproj/WebCore.vcproj: 62620 * inspector/front-end/WebKit.qrc: 62621 * inspector/front-end/heapProfiler.css: Added. 62622 (.heap-snapshot-sidebar-tree-item .icon): 62623 (.heap-snapshot-sidebar-tree-item.small .icon): 62624 (.heap-snapshot-view): 62625 (.heap-snapshot-view.visible): 62626 (.heap-snapshot-view .data-grid): 62627 (.heap-snapshot-view .data-grid th.count-column): 62628 (.heap-snapshot-view .data-grid td.count-column): 62629 (.heap-snapshot-view .data-grid th.size-column): 62630 (.heap-snapshot-view .data-grid td.size-column): 62631 (.heap-snapshot-view .data-grid th.countDelta-column): 62632 (.heap-snapshot-view .data-grid td.countDelta-column): 62633 (.heap-snapshot-view .data-grid th.sizeDelta-column): 62634 (.heap-snapshot-view .data-grid td.sizeDelta-column): 62635 (#heap-snapshot-summary-container): 62636 (.heap-snapshot-summary): 62637 (.heap-snapshot-summary canvas.summary-graph): 62638 (.heap-snapshot-summary-label): 62639 * inspector/front-end/inspector.css: 62640 * inspector/front-end/inspector.html: 62641 62642 2010-09-03 Zaheer Ahmad <zaheer.mot (a] gmail.com> 62643 62644 Reviewed by Darin Adler. 62645 62646 [GTK] compilation issue with JSTimeRanges when video turned off 62647 https://bugs.webkit.org/show_bug.cgi?id=44249 62648 62649 Move the JSTimeRanges outside ENABLE_VIDEO in GNUMakefile.am 62650 * WebCore/GNUMakefile.am 62651 62652 2010-09-03 Ilya Tikhonovsky <loislo (a] chromium.org> 62653 62654 Reviewed by Yury Semikhatsky. 62655 62656 Web Inspector: cleanup inspector api. getChildNodes should return array of child nodes as an output value. 62657 62658 The current implementation of the inspector api has some unnecessary complexity. 62659 As example WebInspector is requesting child nodes of a node by getChildNodes 62660 but DOM agent is actually pushing the child nodes via setChildNodes event call and 62661 send back an empty response message. 62662 62663 https://bugs.webkit.org/show_bug.cgi?id=45172 62664 62665 * inspector/CodeGeneratorInspector.pm: 62666 * inspector/Inspector.idl: 62667 * inspector/InspectorDOMAgent.cpp: 62668 (WebCore::InspectorDOMAgent::getChildNodesArray): 62669 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): 62670 (WebCore::InspectorDOMAgent::getChildNodes): 62671 * inspector/InspectorDOMAgent.h: 62672 * inspector/front-end/DOMAgent.js: 62673 (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback): 62674 (WebInspector.DOMAgent.prototype.getChildNodesAsync): 62675 * inspector/front-end/WorkersSidebarPane.js: 62676 (WebInspector.WorkersSidebarPane.prototype.reset): 62677 62678 2010-09-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 62679 62680 Reviewed by Dirk Schulze. 62681 62682 SVG atlas map slider doesn't work properly 62683 https://bugs.webkit.org/show_bug.cgi?id=45107 62684 62685 SVG 1.1 2nd edition relaxes hit testing rules. The outermost <svg> should react 62686 to mouse events, in standalone and compound documents, if the mouse location is 62687 within the intrinsic boundaries of the <svg> element. 62688 62689 Tests: svg/custom/mouse-move-on-svg-container-standalone.svg 62690 svg/custom/mouse-move-on-svg-container.xhtml 62691 svg/custom/mouse-move-on-svg-root-standalone.svg 62692 svg/custom/mouse-move-on-svg-root.xhtml 62693 62694 * rendering/RenderSVGRoot.cpp: 62695 (WebCore::RenderSVGRoot::nodeAtPoint): 62696 62697 2010-09-03 Pavel Podivilov <podivilov (a] chromium.org> 62698 62699 Reviewed by Yury Semikhatsky. 62700 62701 Web Inspector: provide more information to front-end when breaking on DOM event 62702 https://bugs.webkit.org/show_bug.cgi?id=44679 62703 62704 * dom/ContainerNode.cpp: 62705 (WebCore::ContainerNode::insertBefore): 62706 (WebCore::ContainerNode::parserInsertBefore): 62707 (WebCore::ContainerNode::replaceChild): 62708 (WebCore::ContainerNode::appendChild): 62709 (WebCore::ContainerNode::parserAddChild): 62710 (WebCore::notifyChildInserted): 62711 (WebCore::dispatchChildRemovalEvents): 62712 * dom/Element.cpp: 62713 (WebCore::Element::setAttribute): 62714 (WebCore::Element::removeAttribute): 62715 * inspector/Inspector.idl: 62716 * inspector/InspectorController.cpp: 62717 (WebCore::InspectorController::willInsertDOMNodeImpl): 62718 (WebCore::InspectorController::didInsertDOMNodeImpl): 62719 (WebCore::InspectorController::willRemoveDOMNodeImpl): 62720 (WebCore::InspectorController::didRemoveDOMNodeImpl): 62721 (WebCore::InspectorController::willModifyDOMAttrImpl): 62722 (WebCore::InspectorController::didModifyDOMAttrImpl): 62723 * inspector/InspectorController.h: 62724 (WebCore::InspectorController::willInsertDOMNode): 62725 (WebCore::InspectorController::didInsertDOMNode): 62726 (WebCore::InspectorController::willRemoveDOMNode): 62727 (WebCore::InspectorController::willModifyDOMAttr): 62728 (WebCore::InspectorController::didModifyDOMAttr): 62729 (WebCore::InspectorController::inspectorControllerForNode): 62730 * inspector/InspectorDOMAgent.cpp: 62731 (WebCore::InspectorDOMAgent::~InspectorDOMAgent): 62732 (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion): 62733 (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval): 62734 (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification): 62735 (WebCore::InspectorDOMAgent::didInsertDOMNode): 62736 (WebCore::InspectorDOMAgent::didRemoveDOMNode): 62737 (WebCore::InspectorDOMAgent::didModifyDOMAttr): 62738 (WebCore::InspectorDOMAgent::createBreakpoint): 62739 * inspector/InspectorDOMAgent.h: 62740 * inspector/InspectorDebuggerAgent.cpp: 62741 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 62742 (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent): 62743 (WebCore::InspectorDebuggerAgent::didPause): 62744 (WebCore::InspectorDebuggerAgent::breakProgram): 62745 * inspector/InspectorDebuggerAgent.h: 62746 * inspector/InspectorValues.h: 62747 (WebCore::InspectorValue::isNull): 62748 * inspector/front-end/BreakpointsSidebarPane.js: 62749 (WebInspector.BreakpointItem): 62750 (WebInspector.BreakpointItem.prototype._enableChanged): 62751 * inspector/front-end/Script.js: 62752 (WebInspector.Script.prototype.get linesCount): 62753 * inspector/front-end/inspector.js: 62754 (WebInspector.pausedScript): 62755 62756 2010-08-31 Jeremy Orlow <jorlow (a] chromium.org> 62757 62758 Reviewed by Steve Block. 62759 62760 IDBCursor.continue() should reuse the .openCursor's IDBRequest object 62761 https://bugs.webkit.org/show_bug.cgi?id=44953 62762 62763 This is to match the spec. This requires a modification to IDBRequest so 62764 that multiple events can be queued up. 62765 62766 Note that the initial state for IDBRequest was removed from the spec. 62767 62768 Test: modified existing test to verify new behavior. 62769 62770 * storage/IDBAny.cpp: 62771 (WebCore::IDBAny::createInvalid): 62772 (WebCore::IDBAny::createNull): 62773 (WebCore::IDBAny::setNull): 62774 * storage/IDBAny.h: 62775 (WebCore::IDBAny::create): 62776 * storage/IDBCursor.cpp: 62777 (WebCore::IDBCursor::IDBCursor): 62778 (WebCore::IDBCursor::continueFunction): 62779 * storage/IDBCursor.h: 62780 (WebCore::IDBCursor::create): 62781 * storage/IDBCursor.idl: 62782 * storage/IDBRequest.cpp: 62783 (WebCore::IDBRequest::IDBRequest): 62784 (WebCore::IDBRequest::~IDBRequest): 62785 (WebCore::IDBRequest::resetReadyState): 62786 (WebCore::IDBRequest::onError): 62787 (WebCore::IDBRequest::onSuccess): 62788 (WebCore::IDBRequest::abort): 62789 (WebCore::IDBRequest::timerFired): 62790 (WebCore::IDBRequest::scheduleEvent): 62791 * storage/IDBRequest.h: 62792 * storage/IDBRequest.idl: 62793 62794 2010-09-03 Bharathwaaj Srinivasan <bharathwaaj.s (a] gmail.com> 62795 62796 Reviewed by Xan Lopez. 62797 62798 Initialize keyboard events before passing plugins. 62799 https://bugs.webkit.org/show_bug.cgi?id=44771 62800 62801 No new tests needed since this is a trivial fix. 62802 62803 * plugins/gtk/PluginViewGtk.cpp: 62804 (WebCore::PluginView::handleKeyboardEvent): 62805 62806 2010-09-03 Yury Semikhatsky <yurys (a] chromium.org> 62807 62808 Unreviewed. Fix Qt compilation. 62809 62810 * html/HTMLEmbedElement.cpp: 62811 (WebCore::HTMLEmbedElement::parametersForPlugin): 62812 62813 2010-09-03 Hironori Bono <hbono (a] chromium.org> 62814 62815 Reviewed by Kent Tamura. 62816 62817 Adds textInputController.hasSpellingMarker() to avoid using pixel tests for spellchecking tests 62818 and implements it for Mac. 62819 https://bugs.webkit.org/show_bug.cgi?id=41832 62820 62821 Tests: editing/spelling/spelling-contenteditable.html 62822 editing/spelling/spelling-textarea.html 62823 62824 * WebCore.exp.in: Exported symbols used by [WebFrame hasSpellingMarker:length:]. 62825 62826 2010-09-02 Yury Semikhatsky <yurys (a] chromium.org> 62827 62828 Reviewed by Pavel Feldman. 62829 62830 REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector 62831 https://bugs.webkit.org/show_bug.cgi?id=44230 62832 62833 * inspector/Inspector.idl: 62834 * inspector/InspectorController.cpp: 62835 (WebCore::InspectorController::inspectedPageDestroyed): 62836 (WebCore::InspectorController::close): 62837 * inspector/InspectorFrontendClient.h: 62838 * inspector/InspectorFrontendHost.cpp: 62839 (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController 62840 that frontend closes if InspectorController triggered the action. 62841 * inspector/InspectorFrontendHost.h: 62842 * inspector/InspectorFrontendHost.idl: 62843 * inspector/front-end/InspectorFrontendHostStub.js: 62844 (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend): 62845 * inspector/front-end/inspector.js: 62846 (WebInspector.disconnectFromBackend): 62847 62848 2010-09-03 Girish Ramakrishnan <girish (a] forwardbias.in> 62849 62850 Reviewed-by Simon Hausmann. 62851 62852 Passing a 32-bit depth X pixmap to NPAPI windowless plugins is too inefficient. 62853 Instead, pass a X Pixmap that has same depth as the screen depth since graphics 62854 operations are optimized for this depth. 62855 62856 https://bugs.webkit.org/show_bug.cgi?id=45167 62857 62858 * plugins/PluginPackage.cpp: 62859 (WebCore::PluginPackage::determineQuirks): 62860 62861 2010-09-02 Kwang Yul Seo <skyul (a] company100.net> 62862 62863 Reviewed by Kent Tamura. 62864 62865 Add ENABLE(DATABASE) guard to DatabaseAuthorizer.cpp 62866 https://bugs.webkit.org/show_bug.cgi?id=45152 62867 62868 DatabaseAuthorizer is used only with ENABLE(DATABASE). 62869 62870 * storage/DatabaseAuthorizer.cpp: 62871 62872 2010-09-02 Pavel Podivilov <podivilov (a] chromium.org> 62873 62874 Reviewed by Yury Semikhatsky. 62875 62876 Web Inspector: persist DOM breakpoints between page reloads 62877 https://bugs.webkit.org/show_bug.cgi?id=44837 62878 62879 * inspector/front-end/BreakpointsSidebarPane.js: 62880 (WebInspector.DOMBreakpointItem): 62881 * inspector/front-end/DOMAgent.js: 62882 (WebInspector.DOMNode.prototype.path): 62883 (WebInspector.DOMNode.prototype.setBreakpoint): 62884 (WebInspector.DOMNode.prototype.hasBreakpoint): 62885 (WebInspector.DOMNode.prototype.removeBreakpoint): 62886 (WebInspector.DOMNode.prototype.removeBreakpoints): 62887 (WebInspector.DOMAgent.prototype._setDocument): 62888 (WebInspector.DOMAgent.prototype._childNodeRemoved): 62889 (WebInspector.DOMAgent.prototype._removeBreakpoints): 62890 (WebInspector.DOMBreakpointManager): 62891 (WebInspector.DOMBreakpointManager.prototype.setBreakpoint): 62892 (WebInspector.DOMBreakpointManager.prototype.removeBreakpointsForNode): 62893 (WebInspector.DOMBreakpointManager.prototype._breakpointRemoved): 62894 (WebInspector.DOMBreakpointManager.prototype.restoreBreakpoints.restoreBreakpointsForNode): 62895 (WebInspector.DOMBreakpointManager.prototype.restoreBreakpoints): 62896 (WebInspector.DOMBreakpoint): 62897 (WebInspector.DOMBreakpoint.prototype.get nodeId): 62898 (WebInspector.DOMBreakpoint.prototype.get type): 62899 (WebInspector.DOMBreakpoint.prototype.set enabled): 62900 (WebInspector.DOMBreakpoint.prototype.remove): 62901 * inspector/front-end/ElementsPanel.js: 62902 (WebInspector.ElementsPanel.prototype.reset): 62903 (WebInspector.ElementsPanel.prototype.setDocument): 62904 * inspector/front-end/ElementsTreeOutline.js: 62905 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 62906 * inspector/front-end/SourceFrame.js: 62907 (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup): 62908 62909 2010-09-02 Eric Seidel <eric (a] webkit.org> 62910 62911 Reviewed by Dimitri Glazkov. 62912 62913 Move updateWidget into FrameView from RenderEmbeddedObject 62914 https://bugs.webkit.org/show_bug.cgi?id=45065 62915 62916 I also made updateWidget() virtual on HTMLPlugInImageElement. 62917 I'm not yet sure that updateWidget belongs on HTMLElement since 62918 I'm not sure that HTMLMediaElement's use of the updateWidget 62919 infrastructure is correct. 62920 62921 I also got rid of the strange !m_replacementText.isEmpty() checks 62922 by making a pluginCrashedOrWasMissing() call which seems to embody 62923 the idea behind that check and hides the screwy details. 62924 62925 I noticed a couple methods on HTMLPlugInImageElement were public 62926 which did not need to be. Fixed. 62927 62928 No functional change, thus no tests. 62929 62930 * html/HTMLEmbedElement.h: 62931 * html/HTMLObjectElement.h: 62932 * html/HTMLPlugInImageElement.cpp: 62933 (WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary): 62934 * html/HTMLPlugInImageElement.h: 62935 (WebCore::HTMLPlugInImageElement::serviceType): 62936 (WebCore::HTMLPlugInImageElement::url): 62937 * page/FrameView.cpp: 62938 (WebCore::FrameView::updateWidget): 62939 (WebCore::FrameView::updateWidgets): 62940 * page/FrameView.h: 62941 * rendering/RenderEmbeddedObject.cpp: 62942 (WebCore::RenderEmbeddedObject::pluginCrashedOrWasMissing): 62943 (WebCore::RenderEmbeddedObject::paint): 62944 (WebCore::RenderEmbeddedObject::paintReplaced): 62945 * rendering/RenderEmbeddedObject.h: 62946 62947 2010-09-02 Eric Seidel <eric (a] webkit.org> 62948 62949 Reviewed by Dimitri Glazkov. 62950 62951 Move updateWidget implementations into the DOM 62952 https://bugs.webkit.org/show_bug.cgi?id=45058 62953 62954 Unfortunately it's not yet possible to share an updateWidget 62955 implementation between <embed> and <object>. That would amount to 62956 (positive) functional changes for <embed> which I'd will separate 62957 into a later patch. I will also have to untangle <object>'s <param> 62958 walk from its url/serviceType calculations. 62959 62960 However after this patch it's slap-you-across-the-face obvious that 62961 RenderEmbeddedObject::updateWidget was the wrong place for this code. 62962 RenderEmbeddedObject::updateWidget still exists, but only as a 62963 pseudo-virtual-method dispatcher. Unless we add updateWidget() to 62964 HTMLElement, we won't be able to use real virtual dispatch. 62965 62966 I may need to consider making "having a widget" a has-a relationship 62967 with some sort of WidgetContainer object which Media and Plugin can 62968 share. Or its also possible that Media's use of the widget code here 62969 is just wrong. Certainly now that updateWidget was moved into HTMLMediaElement 62970 it becomes obvious that HTMLMediaElement has duplicate code for updating widgets. 62971 62972 No functional changes, thus no tests. 62973 62974 * html/HTMLEmbedElement.cpp: 62975 (WebCore::HTMLEmbedElement::updateWidget): 62976 * html/HTMLEmbedElement.h: 62977 * html/HTMLMediaElement.cpp: 62978 (WebCore::HTMLMediaElement::updateWidget): 62979 * html/HTMLMediaElement.h: 62980 * html/HTMLObjectElement.cpp: 62981 (WebCore::HTMLObjectElement::updateWidget): 62982 * html/HTMLObjectElement.h: 62983 (WebCore::HTMLObjectElement::useFallbackContent): 62984 * html/HTMLPlugInImageElement.h: 62985 (WebCore::HTMLPlugInImageElement::needsWidgetUpdate): 62986 (WebCore::HTMLPlugInImageElement::setNeedsWidgetUpdate): 62987 * loader/FrameLoader.cpp: 62988 * rendering/RenderEmbeddedObject.cpp: 62989 (WebCore::RenderEmbeddedObject::updateWidget): 62990 62991 2010-09-02 Eric Seidel <eric (a] webkit.org> 62992 62993 Reviewed by Dimitri Glazkov. 62994 62995 Move more code from RenderEmbeddedObject into the DOM 62996 https://bugs.webkit.org/show_bug.cgi?id=45055 62997 62998 No logic changes here, just taking the code which 62999 I ripped out of RenderEmbeddedObject::updateWidget 63000 into static methods before and moving it into 63001 the applicable DOM classes. 63002 63003 HTMLObjectElement::parametersForPlugin does too much 63004 but in order to fix it I may need to add a PluginParameters 63005 class so we can ask things about the parameters. <object> 63006 needs to get multiple bits of information out of its parameters 63007 array. Right now it does it all in one walk. In order to share 63008 code with HTMLEmbedElement, we need the "generate the params array" 63009 code to be separate from the "make advanced <object> specific decision 63010 from the params array". But that will need to be in a later patch. 63011 63012 No functional changes, thus no tests. 63013 63014 * html/HTMLEmbedElement.cpp: 63015 (WebCore::HTMLEmbedElement::parametersForPlugin): 63016 * html/HTMLEmbedElement.h: 63017 * html/HTMLObjectElement.cpp: 63018 (WebCore::createClassIdToTypeMap): 63019 (WebCore::serviceTypeForClassId): 63020 (WebCore::mapDataParamToSrc): 63021 (WebCore::HTMLObjectElement::parametersForPlugin): 63022 (WebCore::HTMLObjectElement::hasFallbackContent): 63023 * html/HTMLObjectElement.h: 63024 * html/HTMLPlugInImageElement.cpp: 63025 (WebCore::HTMLPlugInImageElement::allowedToLoadFrameURL): 63026 (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin): 63027 (WebCore::HTMLPlugInImageElement::detach): 63028 (WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary): 63029 (WebCore::HTMLPlugInImageElement::updateWidgetCallback): 63030 * html/HTMLPlugInImageElement.h: 63031 * rendering/RenderEmbeddedObject.cpp: 63032 (WebCore::updateWidgetForObjectElement): 63033 (WebCore::updateWidgetForEmbedElement): 63034 (WebCore::RenderEmbeddedObject::updateWidget): 63035 63036 2010-09-02 Franois Sausset <sausset (a] gmail.com> 63037 63038 Reviewed by Darin Adler. 63039 63040 MathML mo element should render "hyphen-minus" as "minus sign" (Unicode glyph names). 63041 https://bugs.webkit.org/show_bug.cgi?id=43629 63042 63043 Test: mathml/presentation/mo.xhtml 63044 63045 * mathml/RenderMathMLOperator.cpp: 63046 (WebCore::RenderMathMLOperator::RenderMathMLOperator): 63047 (WebCore::RenderMathMLOperator::updateFromElement): 63048 * mathml/RenderMathMLOperator.h: 63049 (WebCore::convertHyphenMinusToMinusSign): 63050 * platform/text/CharacterNames.h: 63051 63052 2010-09-02 Kenneth Russell <kbr (a] google.com> 63053 63054 Reviewed by Darin Fisher. 63055 63056 Add red-black tree capable of holding plain old data (POD) 63057 https://bugs.webkit.org/show_bug.cgi?id=45059 63058 63059 Adding an augmentable red-black tree capable of holding Plain Old 63060 Data (POD), or classes bottoming out into only POD, and an 63061 associated PODArena. Note that the PODArena will be used by other 63062 classes to allocate temporary structures, which is why it is not 63063 just an implementation detail of the red-black tree. 63064 63065 These classes are being placed under WebCore/platform/graphics/gpu 63066 for the time being. If they are generalized to hold even data 63067 types which internally perform dynamic memory allocation, we may 63068 consider moving them to WTF in the future. 63069 63070 Unit tests for the PODRedBlackTree will be integrated separately 63071 under bug 45060. 63072 63073 * WebCore.gypi: 63074 * platform/graphics/gpu/PODArena.h: Added. 63075 (WebCore::PODArena::Allocator::~Allocator): 63076 (WebCore::PODArena::FastMallocAllocator::create): 63077 (WebCore::PODArena::FastMallocAllocator::allocate): 63078 (WebCore::PODArena::FastMallocAllocator::free): 63079 (WebCore::PODArena::FastMallocAllocator::FastMallocAllocator): 63080 (WebCore::PODArena::create): 63081 (WebCore::PODArena::allocateObject): 63082 (WebCore::PODArena::~PODArena): 63083 (WebCore::PODArena::PODArena): 63084 (WebCore::PODArena::minAlignment): 63085 (WebCore::PODArena::roundUp): 63086 (WebCore::PODArena::Chunk::Chunk): 63087 (WebCore::PODArena::Chunk::~Chunk): 63088 (WebCore::PODArena::Chunk::allocate): 63089 * platform/graphics/gpu/PODRedBlackTree.h: Added. 63090 (WebCore::PODRedBlackTree::Visitor::~Visitor): 63091 (WebCore::PODRedBlackTree::PODRedBlackTree): 63092 (WebCore::PODRedBlackTree::~PODRedBlackTree): 63093 (WebCore::PODRedBlackTree::add): 63094 (WebCore::PODRedBlackTree::remove): 63095 (WebCore::PODRedBlackTree::contains): 63096 (WebCore::PODRedBlackTree::visitInorder): 63097 (WebCore::PODRedBlackTree::size): 63098 (WebCore::PODRedBlackTree::setNeedsFullOrderingComparisons): 63099 (WebCore::PODRedBlackTree::checkInvariants): 63100 (WebCore::PODRedBlackTree::dump): 63101 (WebCore::PODRedBlackTree::setVerboseDebugging): 63102 (WebCore::PODRedBlackTree::Node::Node): 63103 (WebCore::PODRedBlackTree::Node::~Node): 63104 (WebCore::PODRedBlackTree::Node::color): 63105 (WebCore::PODRedBlackTree::Node::setColor): 63106 (WebCore::PODRedBlackTree::Node::data): 63107 (WebCore::PODRedBlackTree::Node::copyFrom): 63108 (WebCore::PODRedBlackTree::Node::left): 63109 (WebCore::PODRedBlackTree::Node::setLeft): 63110 (WebCore::PODRedBlackTree::Node::right): 63111 (WebCore::PODRedBlackTree::Node::setRight): 63112 (WebCore::PODRedBlackTree::Node::parent): 63113 (WebCore::PODRedBlackTree::Node::setParent): 63114 (WebCore::PODRedBlackTree::root): 63115 (WebCore::PODRedBlackTree::updateNode): 63116 (WebCore::PODRedBlackTree::treeSearch): 63117 (WebCore::PODRedBlackTree::treeSearchNormal): 63118 (WebCore::PODRedBlackTree::treeSearchFullComparisons): 63119 (WebCore::PODRedBlackTree::treeInsert): 63120 (WebCore::PODRedBlackTree::treeSuccessor): 63121 (WebCore::PODRedBlackTree::treeMinimum): 63122 (WebCore::PODRedBlackTree::propagateUpdates): 63123 (WebCore::PODRedBlackTree::leftRotate): 63124 (WebCore::PODRedBlackTree::rightRotate): 63125 (WebCore::PODRedBlackTree::insertNode): 63126 (WebCore::PODRedBlackTree::deleteFixup): 63127 (WebCore::PODRedBlackTree::deleteNode): 63128 (WebCore::PODRedBlackTree::visitInorderImpl): 63129 (WebCore::PODRedBlackTree::Counter::Counter): 63130 (WebCore::PODRedBlackTree::Counter::visit): 63131 (WebCore::PODRedBlackTree::Counter::count): 63132 (WebCore::PODRedBlackTree::checkInvariantsFromNode): 63133 (WebCore::PODRedBlackTree::logIfVerbose): 63134 (WebCore::PODRedBlackTree::dumpFromNode): 63135 63136 2010-09-02 Rafael Antognolli <antognolli (a] profusion.mobi> 63137 63138 Reviewed by Martin Robinson. 63139 63140 [Cairo] Remove glib dependency (caused by use of GOwnPtr) 63141 https://bugs.webkit.org/show_bug.cgi?id=45053 63142 63143 Use OwnPtr instead of GOwnPtr to keep track of Fc* references 63144 in FontCacheCairo.cpp. 63145 63146 No features added, so no new tests. 63147 63148 * CMakeListsEfl.txt: Updating build system to look for GOwnPtrCairo.* 63149 * GNUmakefile.am: Ditto. 63150 * platform/graphics/cairo/FontCacheCairo.cpp: Using OwnPtr instead of GOwnPtr. 63151 (WebCore::FontCache::createFontPlatformData): 63152 * platform/graphics/cairo/GOwnPtrCairo.cpp: Removed. 63153 * platform/graphics/cairo/GOwnPtrCairo.h: Removed. 63154 * platform/graphics/cairo/OwnPtrCairo.cpp: Added. 63155 (WTF::FcPattern): 63156 (WTF::FcObjectSet): 63157 (WTF::FcFontSet): 63158 * platform/graphics/cairo/OwnPtrCairo.h: Added. 63159 63160 2010-09-02 Kinuko Yasuda <kinuko (a] chromium.org> 63161 63162 Unreviewed, updating binding-tests expectations (for changeset 66521). 63163 63164 * bindings/scripts/test/V8/V8TestObj.cpp: 63165 (WebCore::TestObjInternal::stringAttrAttrSetter): 63166 (WebCore::TestObjInternal::reflectedStringAttrAttrSetter): 63167 (WebCore::TestObjInternal::reflectedURLAttrAttrSetter): 63168 (WebCore::TestObjInternal::reflectedNonEmptyURLAttrAttrSetter): 63169 (WebCore::TestObjInternal::reflectedCustomURLAttrAttrSetter): 63170 (WebCore::TestObjInternal::reflectedCustomNonEmptyURLAttrAttrSetter): 63171 (WebCore::TestObjInternal::stringAttrWithGetterExceptionAttrSetter): 63172 (WebCore::TestObjInternal::stringAttrWithSetterExceptionAttrSetter): 63173 63174 2010-09-02 Adam Langley <agl (a] chromium.org> 63175 63176 Reviewed by Adam Barth. 63177 63178 [chromium] fix memory corruption in Khmer rendering. 63179 63180 https://bugs.webkit.org/show_bug.cgi?id=44960 63181 63182 Test: fast/text/khmer-crash.html 63183 63184 * platform/graphics/chromium/FontLinux.cpp: 63185 (WebCore::TextRunWalker::shapeGlyphs): 63186 The Khmer shaper has a bug where it would request larger output 63187 buffers, but request a zero increase in size. Because of this we add 63188 one to the requested size. 63189 (WebCore::TextRunWalker::setGlyphXPositions): 63190 The Khmer shaper is outputing cluster logs which suggest that some 63191 output glyphs appear from nowhere (i.e. have no input codepoints). I 63192 don't know Khmer, so maybe that's correct, but it broke the 63193 assumptions of this code, causing a read out-of-bounds. 63194 * platform/graphics/chromium/HarfbuzzSkia.cpp: 63195 (WebCore::stringToGlyphs): 63196 The Harfbuzz interfaces aren't documented, but it appears that the 63197 output array to stringToGlyphs isn't sized and that Harfbuzz expects 63198 us to detect when the input is too long. 63199 63200 2010-09-02 Adam Roben <aroben (a] apple.com> 63201 63202 Fill the scroll corner with white when shouldPaintCustomScrollbars is 63203 false 63204 63205 Previously we were only filling with white when 63206 shouldPaintCustomScrollbars was true but the ChromeClient didn't paint 63207 any custom scrollbars. 63208 63209 Reviewed by Sam Weinig. 63210 63211 * platform/ScrollbarThemeComposite.cpp: 63212 (WebCore::ScrollbarThemeComposite::paintScrollCorner): 63213 63214 2010-09-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 63215 63216 Unreviewed, rolling out r66671. 63217 http://trac.webkit.org/changeset/66671 63218 https://bugs.webkit.org/show_bug.cgi?id=45115 63219 63220 http/tests/misc/redirect-to-about-blank.html is failing on 63221 several platforms (Requested by japhet on #webkit). 63222 63223 * WebCore.exp.in: 63224 * dom/Document.cpp: 63225 (WebCore::Document::Document): 63226 (WebCore::Document::updateURLForPushOrReplaceState): 63227 * loader/DocumentWriter.cpp: 63228 (WebCore::DocumentWriter::begin): 63229 * loader/FrameLoader.cpp: 63230 (WebCore::FrameLoader::iconURL): 63231 (WebCore::FrameLoader::didOpenURL): 63232 (WebCore::FrameLoader::didExplicitOpen): 63233 (WebCore::FrameLoader::receivedFirstData): 63234 (WebCore::FrameLoader::setURL): 63235 (WebCore::FrameLoader::startIconLoader): 63236 (WebCore::FrameLoader::commitIconURLToIconDatabase): 63237 (WebCore::FrameLoader::finishedParsing): 63238 (WebCore::FrameLoader::checkIfDisplayInsecureContent): 63239 (WebCore::FrameLoader::checkIfRunInsecureContent): 63240 (WebCore::FrameLoader::updateFirstPartyForCookies): 63241 (WebCore::FrameLoader::loadInSameDocument): 63242 (WebCore::FrameLoader::commitProvisionalLoad): 63243 (WebCore::FrameLoader::open): 63244 (WebCore::FrameLoader::shouldScrollToAnchor): 63245 * loader/FrameLoader.h: 63246 (WebCore::FrameLoader::url): 63247 63248 2010-09-01 Zhenyao Mo <zmo (a] google.com> 63249 63250 Reviewed by Kenneth Russell. 63251 63252 Roll ANGLE under webkit to r402 63253 https://bugs.webkit.org/show_bug.cgi?id=45004 63254 63255 * platform/graphics/mac/GraphicsContext3DMac.mm: Update the code to use newer ANGLE interface. 63256 (WebCore::GraphicsContext3D::GraphicsContext3D): 63257 63258 2010-09-02 Ilya Tikhonovsky <loislo (a] chromium.org> 63259 63260 Reviewed by Yury Semikhatsky. 63261 63262 WebInspector: Timeline instrumentation code can crash browser. 63263 63264 Steps: 63265 1) load the site 63266 2) open inspector 63267 3) start timeline recording 63268 4) reload inspected page 63269 got NPE 63270 63271 https://bugs.webkit.org/show_bug.cgi?id=45098 63272 63273 * loader/ResourceLoader.cpp: 63274 (WebCore::ResourceLoader::didReceiveResponse): 63275 (WebCore::ResourceLoader::didReceiveData): 63276 63277 2010-09-02 Nate Chapin <japhet (a] chromium.org> 63278 63279 Reviewed by Adam Barth. 63280 63281 Remove m_URL from FrameLoader and instead depend on Document's url. 63282 FrameLoader::url() will be removed in a later patch. 63283 63284 http://bugs.webkit.org/show_bug.cgi?id=41165 63285 63286 No new tests, since this predominantly a refactor. Updating 63287 fast/dom/early-frame-url.html. 63288 63289 * WebCore.exp.in: 63290 * dom/Document.cpp: 63291 (WebCore::Document::Document): 63292 (WebCore::Document::updateURLForPushOrReplaceState): 63293 * loader/DocumentWriter.cpp: 63294 (WebCore::DocumentWriter::begin): 63295 * loader/FrameLoader.cpp: 63296 (WebCore::FrameLoader::iconURL): 63297 (WebCore::FrameLoader::didOpenURL): 63298 (WebCore::FrameLoader::didExplicitOpen): 63299 (WebCore::FrameLoader::receivedFirstData): 63300 (WebCore::FrameLoader::url): 63301 (WebCore::FrameLoader::setOutgoingReferrer): 63302 (WebCore::FrameLoader::startIconLoader): 63303 (WebCore::FrameLoader::commitIconURLToIconDatabase): 63304 (WebCore::FrameLoader::finishedParsing): 63305 (WebCore::FrameLoader::checkIfDisplayInsecureContent): 63306 (WebCore::FrameLoader::checkIfRunInsecureContent): 63307 (WebCore::FrameLoader::updateFirstPartyForCookies): 63308 (WebCore::FrameLoader::loadInSameDocument): 63309 (WebCore::FrameLoader::commitProvisionalLoad): 63310 (WebCore::FrameLoader::open): 63311 (WebCore::FrameLoader::shouldScrollToAnchor): 63312 * loader/FrameLoader.h: 63313 63314 2010-09-01 Tony Gentilcore <tonyg (a] chromium.org> 63315 63316 Reviewed by Adam Barth. 63317 63318 Support <script defer> as specified by HTML5 63319 https://bugs.webkit.org/show_bug.cgi?id=40934 63320 63321 Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html 63322 fast/dom/HTMLScriptElement/defer-double-write.html 63323 fast/dom/HTMLScriptElement/defer-inline-script.html 63324 fast/dom/HTMLScriptElement/defer-onbeforeload.html 63325 fast/dom/HTMLScriptElement/defer-script-invalid-url.html 63326 fast/dom/HTMLScriptElement/defer-write.html 63327 fast/dom/HTMLScriptElement/two-defer-writes.html 63328 http/tests/misc/script-defer-after-slow-stylesheet.html 63329 http/tests/misc/script-defer.html 63330 63331 * dom/Document.cpp: 63332 (WebCore::Document::open): Allow implicit open for writes() while executing deferred scripts. 63333 * dom/DocumentParser.cpp: 63334 (WebCore::DocumentParser::DocumentParser): 63335 (WebCore::DocumentParser::startParsing): 63336 (WebCore::DocumentParser::prepareToStopParsing): If called when stopped or detached, it shouldn't reset to stopping. 63337 (WebCore::DocumentParser::stopParsing): 63338 (WebCore::DocumentParser::detach): 63339 * dom/DocumentParser.h: 63340 (WebCore::DocumentParser::isParsing): 63341 (WebCore::DocumentParser::isActive): 63342 (WebCore::DocumentParser::isStopping): 63343 (WebCore::DocumentParser::isDetached): 63344 * dom/RawDataDocumentParser.h: 63345 (WebCore::RawDataDocumentParser::finish): 63346 * dom/XMLDocumentParser.cpp: 63347 (WebCore::XMLDocumentParser::append): 63348 (WebCore::XMLDocumentParser::exitText): 63349 * dom/XMLDocumentParserLibxml2.cpp: 63350 (WebCore::XMLDocumentParser::doWrite): 63351 (WebCore::XMLDocumentParser::startElementNs): 63352 (WebCore::XMLDocumentParser::endElementNs): 63353 (WebCore::XMLDocumentParser::characters): 63354 (WebCore::XMLDocumentParser::error): 63355 (WebCore::XMLDocumentParser::processingInstruction): 63356 (WebCore::XMLDocumentParser::cdataBlock): 63357 (WebCore::XMLDocumentParser::comment): 63358 (WebCore::XMLDocumentParser::internalSubset): 63359 (WebCore::XMLDocumentParser::initializeParserContext): 63360 (WebCore::XMLDocumentParser::doEnd): 63361 * html/parser/HTMLDocumentParser.cpp: 63362 (WebCore::HTMLDocumentParser::prepareToStopParsing): 63363 (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible): 63364 (WebCore::HTMLDocumentParser::pumpTokenizer): 63365 (WebCore::HTMLDocumentParser::insert): 63366 (WebCore::HTMLDocumentParser::append): 63367 (WebCore::HTMLDocumentParser::end): 63368 (WebCore::HTMLDocumentParser::attemptToEnd): 63369 (WebCore::HTMLDocumentParser::endIfDelayed): 63370 (WebCore::HTMLDocumentParser::notifyFinished): 63371 * html/parser/HTMLDocumentParser.h: 63372 * html/parser/HTMLScriptRunner.cpp: 63373 (WebCore::HTMLScriptRunner::~HTMLScriptRunner): 63374 (WebCore::HTMLScriptRunner::executeParsingBlockingScript): 63375 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): 63376 (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing): 63377 (WebCore::HTMLScriptRunner::requestDeferredScript): 63378 (WebCore::HTMLScriptRunner::runScript): 63379 * html/parser/HTMLScriptRunner.h: 63380 * loader/ImageDocument.cpp: 63381 (WebCore::ImageDocumentParser::finish): 63382 63383 2010-09-02 Andrey Kosyakov <caseq (a] chromium.org> 63384 63385 Reviewed by Yury Semikhatsky. 63386 63387 Web Inspector: HAR converter fails on POST requests with non-form content type 63388 https://bugs.webkit.org/show_bug.cgi?id=45109 63389 63390 * inspector/front-end/HAREntry.js: 63391 (WebInspector.HAREntry.prototype._buildPostData): 63392 63393 2010-09-02 Andreas Kling <andreas.kling (a] nokia.com> 63394 63395 Rubber-stamped by Simon Hausmann. 63396 63397 [Qt] REGRESSION(r62898): tst_QWebFrame crashing 63398 https://bugs.webkit.org/show_bug.cgi?id=43039 63399 63400 Rolling out the offending change <http://trac.webkit.org/changeset/62898> 63401 63402 * bridge/qt/qt_instance.cpp: 63403 (JSC::Bindings::QtInstance::markAggregate): 63404 63405 2010-09-02 Anton Muhin <antonm (a] chromium.org> 63406 63407 Reviewed by Tony Chang. 63408 63409 Fix indentation. 63410 https://bugs.webkit.org/show_bug.cgi?id=44678 63411 63412 * bindings/scripts/CodeGeneratorV8.pm: 63413 63414 2010-09-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 63415 63416 Unreviewed, rolling out r66655. 63417 http://trac.webkit.org/changeset/66655 63418 https://bugs.webkit.org/show_bug.cgi?id=45104 63419 63420 broke some editing tests (Requested by kling on #webkit). 63421 63422 * page/DOMSelection.cpp: 63423 (WebCore::DOMSelection::collapse): 63424 (WebCore::DOMSelection::selectAllChildren): 63425 63426 2010-09-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 63427 63428 Unreviewed, rolling out r66649. 63429 http://trac.webkit.org/changeset/66649 63430 https://bugs.webkit.org/show_bug.cgi?id=45103 63431 63432 It broke ~2000 tests on Qt bot (Requested by Ossy on #webkit). 63433 63434 * dom/Document.cpp: 63435 (WebCore::Document::open): 63436 * dom/DocumentParser.cpp: 63437 (WebCore::DocumentParser::DocumentParser): 63438 (WebCore::DocumentParser::detach): 63439 * dom/DocumentParser.h: 63440 (WebCore::DocumentParser::isDetached): 63441 (WebCore::DocumentParser::stopParsing): 63442 * dom/RawDataDocumentParser.h: 63443 (WebCore::RawDataDocumentParser::finish): 63444 * dom/XMLDocumentParser.cpp: 63445 (WebCore::XMLDocumentParser::append): 63446 (WebCore::XMLDocumentParser::exitText): 63447 * dom/XMLDocumentParserLibxml2.cpp: 63448 (WebCore::XMLDocumentParser::doWrite): 63449 (WebCore::XMLDocumentParser::startElementNs): 63450 (WebCore::XMLDocumentParser::endElementNs): 63451 (WebCore::XMLDocumentParser::characters): 63452 (WebCore::XMLDocumentParser::error): 63453 (WebCore::XMLDocumentParser::processingInstruction): 63454 (WebCore::XMLDocumentParser::cdataBlock): 63455 (WebCore::XMLDocumentParser::comment): 63456 (WebCore::XMLDocumentParser::internalSubset): 63457 (WebCore::XMLDocumentParser::initializeParserContext): 63458 (WebCore::XMLDocumentParser::doEnd): 63459 * dom/XMLDocumentParserQt.cpp: 63460 (WebCore::XMLDocumentParser::initializeParserContext): 63461 (WebCore::XMLDocumentParser::doEnd): 63462 (WebCore::XMLDocumentParser::parse): 63463 * html/parser/HTMLDocumentParser.cpp: 63464 (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible): 63465 (WebCore::HTMLDocumentParser::pumpTokenizer): 63466 (WebCore::HTMLDocumentParser::insert): 63467 (WebCore::HTMLDocumentParser::append): 63468 (WebCore::HTMLDocumentParser::end): 63469 (WebCore::HTMLDocumentParser::attemptToEnd): 63470 (WebCore::HTMLDocumentParser::endIfDelayed): 63471 (WebCore::HTMLDocumentParser::notifyFinished): 63472 * html/parser/HTMLDocumentParser.h: 63473 * html/parser/HTMLScriptRunner.cpp: 63474 (WebCore::HTMLScriptRunner::~HTMLScriptRunner): 63475 (WebCore::HTMLScriptRunner::executeParsingBlockingScript): 63476 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): 63477 (WebCore::HTMLScriptRunner::runScript): 63478 * html/parser/HTMLScriptRunner.h: 63479 * loader/ImageDocument.cpp: 63480 (WebCore::ImageDocumentParser::finish): 63481 63482 2010-09-02 Eric Seidel <eric (a] webkit.org> 63483 63484 Reviewed by Dimitri Glazkov. 63485 63486 Share more code between HTMLObjectElement and HTMLEmbedElement 63487 https://bugs.webkit.org/show_bug.cgi?id=45054 63488 63489 This pushes more of HTMLObjectElement code down into 63490 HTMLPlugInImageElement so that it can be shared with 63491 HTMLEmbedElement. 63492 63493 The most notable changes are: 63494 - HTMLEmbedElement now "delays" updating the widget until 63495 all of its children are parsed (this matches HTMLObjectElement). 63496 However, since HTMLEmbedElement can't have children, this is actually 63497 no delay. 63498 - useFallbackContent is now virtual, allowing HTMLEmbedElement and 63499 HTMLObjectElement to share the same code paths, and the <embed> 63500 case to just always return false for useFallbackContent(). 63501 63502 This is the final (fourth) part of this change. 63503 63504 No functional change, thus no tests. 63505 63506 * html/HTMLEmbedElement.cpp: 63507 * html/HTMLEmbedElement.h: 63508 * html/HTMLObjectElement.cpp: 63509 (WebCore::HTMLObjectElement::rendererIsNeeded): 63510 * html/HTMLObjectElement.h: 63511 * html/HTMLPlugInImageElement.cpp: 63512 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): 63513 (WebCore::HTMLPlugInImageElement::recalcStyle): 63514 (WebCore::HTMLPlugInImageElement::attach): 63515 (WebCore::HTMLPlugInImageElement::detach): 63516 (WebCore::HTMLPlugInImageElement::finishParsingChildren): 63517 * html/HTMLPlugInImageElement.h: 63518 63519 2010-09-02 Adam Barth <abarth (a] webkit.org> 63520 63521 Reviewed by Eric Seidel. 63522 63523 Move takeAllChildrenFrom to ContainerNode 63524 https://bugs.webkit.org/show_bug.cgi?id=45066 63525 63526 We're going to reuse this method for XMLDocumentLoader, so it's better 63527 to put it in a more general location. 63528 63529 * dom/ContainerNode.cpp: 63530 (WebCore::ContainerNode::takeAllChildrenFrom): 63531 * dom/ContainerNode.h: 63532 * html/parser/HTMLTreeBuilder.cpp: 63533 (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished): 63534 63535 2010-09-01 Andreas Kling <andreas.kling (a] nokia.com> 63536 63537 Reviewed by Darin Adler. 63538 63539 DOM Selection: collapse() and selectAllChildren() should throw WRONG_DOCUMENT_ERR if node belongs to other document 63540 https://bugs.webkit.org/show_bug.cgi?id=44595 63541 63542 Spec links: 63543 http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapse 63544 http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-selectallchildren 63545 63546 Test: fast/dom/Selection/wrong-document-err.html 63547 63548 * page/DOMSelection.cpp: 63549 (WebCore::DOMSelection::collapse): 63550 (WebCore::DOMSelection::selectAllChildren): 63551 63552 2010-09-02 Eric Seidel <eric (a] webkit.org> 63553 63554 Reviewed by Dimitri Glazkov. 63555 63556 Share more code between HTMLObjectElement and HTMLEmbedElement 63557 https://bugs.webkit.org/show_bug.cgi?id=45054 63558 63559 This pushes more of HTMLObjectElement code down into 63560 HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement. 63561 63562 This patch was originally written in one piece and reviewed by Dimitri. 63563 I'm landing it as four separate changes for easier readability and less 63564 chance of regression. 63565 63566 No functional change, thus no tests. 63567 63568 * html/HTMLEmbedElement.cpp: 63569 (WebCore::HTMLEmbedElement::HTMLEmbedElement): 63570 (WebCore::HTMLEmbedElement::create): 63571 * html/HTMLEmbedElement.h: 63572 * html/HTMLObjectElement.cpp: 63573 (WebCore::HTMLObjectElement::HTMLObjectElement): 63574 * html/HTMLObjectElement.h: 63575 * html/HTMLPlugInImageElement.cpp: 63576 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): 63577 (WebCore::HTMLPlugInImageElement::detach): 63578 (WebCore::HTMLPlugInImageElement::finishParsingChildren): 63579 * html/HTMLPlugInImageElement.h: 63580 * html/HTMLTagNames.in: 63581 63582 2010-09-02 Eric Seidel <eric (a] webkit.org> 63583 63584 Reviewed by Dimitri Glazkov. 63585 63586 Share more code between HTMLObjectElement and HTMLEmbedElement 63587 https://bugs.webkit.org/show_bug.cgi?id=45054 63588 63589 This pushes more of HTMLObjectElement code down into 63590 HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement. 63591 63592 I also moved a little code from HTMLPluginElement to HTMLPlugInImageElement 63593 since HTMLAppletElement does not need to share this same widget update logic. 63594 This is a small correction from the previous change. 63595 63596 This patch was originally written in one piece and reviewed by Dimitri. 63597 I'm landing it as three separate changes for easier readability and less 63598 chance of regression. 63599 63600 No functional change, thus no tests. 63601 63602 * html/HTMLEmbedElement.cpp: 63603 * html/HTMLEmbedElement.h: 63604 * html/HTMLObjectElement.cpp: 63605 (WebCore::HTMLObjectElement::attach): 63606 (WebCore::HTMLObjectElement::finishParsingChildren): 63607 (WebCore::HTMLObjectElement::detach): 63608 (WebCore::HTMLObjectElement::recalcStyle): 63609 (WebCore::HTMLObjectElement::childrenChanged): 63610 (WebCore::HTMLObjectElement::renderFallbackContent): 63611 * html/HTMLObjectElement.h: 63612 (WebCore::HTMLObjectElement::useFallbackContent): 63613 * html/HTMLPlugInElement.cpp: 63614 * html/HTMLPlugInElement.h: 63615 * html/HTMLPlugInImageElement.cpp: 63616 (WebCore::HTMLPlugInImageElement::createRenderer): 63617 (WebCore::HTMLPlugInImageElement::updateWidget): 63618 (WebCore::HTMLPlugInImageElement::updateWidgetCallback): 63619 * html/HTMLPlugInImageElement.h: 63620 (WebCore::HTMLPlugInImageElement::canLazyAttach): 63621 (WebCore::HTMLPlugInImageElement::useFallbackContent): 63622 63623 2010-09-02 Jer Noble <jer.noble (a] apple.com> 63624 63625 Reviewed by Darin Adler. 63626 63627 WebKit should not accept PDFs as video. 63628 https://bugs.webkit.org/show_bug.cgi?id=45013 63629 63630 The code in MediaPlayerPrivate::createQTMovie has been re-arranged. 63631 First, the component disabling is done only once. In 64-bit QTKit will 63632 store the list of disabled components and disable them once QTKitServer 63633 starts, so there is no need to disable them repeatedly. However, 63634 because of a bug in 64-bit QTKit, additional requests of the exact same 63635 component description will be ignored if QTKitServer is not yet running. 63636 To work around this, we must provide the exact component flags for each 63637 eat/PDF and grip/PDF component we wish to disable. 63638 63639 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 63640 (WebCore::disableComponentsOnce): Added. 63641 (WebCore::MediaPlayerPrivate::createQTMovie): Moved the component 63642 disabling code into disableComponentsOnce. 63643 63644 2010-09-02 Philippe Normand <pnormand (a] igalia.com> 63645 63646 Unreviewed, GTK build fix. 63647 63648 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 63649 (WebCore::GStreamerGWorld::enterFullscreen): 63650 63651 2010-09-02 Eric Seidel <eric (a] webkit.org> 63652 63653 Reviewed by Dimitri Glazkov. 63654 63655 Share more code between HTMLObjectElement and HTMLEmbedElement 63656 https://bugs.webkit.org/show_bug.cgi?id=45054 63657 63658 This pushes more of HTMLObjectElement code down into 63659 HTMLPlugInImageElement so that it can be shared with HTMLEmbedElement. 63660 63661 I also moved a little code from HTMLPluginElement to HTMLPlugInImageElement 63662 since HTMLAppletElement does not need to share this same widget update logic. 63663 This is a small correction from the previous change. 63664 63665 This patch was originally written in one piece and reviewed by Dimitri. 63666 I'm landing it as two separate changes for easier readability and less 63667 chance of regression. 63668 63669 No functional change, thus no tests. 63670 63671 * html/HTMLEmbedElement.cpp: 63672 (WebCore::HTMLEmbedElement::HTMLEmbedElement): 63673 (WebCore::HTMLEmbedElement::mapToEntry): 63674 (WebCore::HTMLEmbedElement::parseMappedAttribute): 63675 (WebCore::HTMLEmbedElement::rendererIsNeeded): 63676 (WebCore::HTMLEmbedElement::attach): 63677 (WebCore::HTMLEmbedElement::updateWidget): 63678 (WebCore::HTMLEmbedElement::insertedIntoDocument): 63679 (WebCore::HTMLEmbedElement::removedFromDocument): 63680 (WebCore::HTMLEmbedElement::attributeChanged): 63681 * html/HTMLEmbedElement.h: 63682 * html/HTMLObjectElement.cpp: 63683 (WebCore::HTMLObjectElement::HTMLObjectElement): 63684 (WebCore::HTMLObjectElement::parseMappedAttribute): 63685 (WebCore::HTMLObjectElement::rendererIsNeeded): 63686 (WebCore::HTMLObjectElement::attach): 63687 (WebCore::HTMLObjectElement::updateWidget): 63688 (WebCore::HTMLObjectElement::finishParsingChildren): 63689 (WebCore::HTMLObjectElement::detach): 63690 (WebCore::HTMLObjectElement::insertedIntoDocument): 63691 (WebCore::HTMLObjectElement::removedFromDocument): 63692 (WebCore::HTMLObjectElement::recalcStyle): 63693 (WebCore::HTMLObjectElement::childrenChanged): 63694 (WebCore::HTMLObjectElement::renderFallbackContent): 63695 * html/HTMLObjectElement.h: 63696 * html/HTMLPlugInElement.cpp: 63697 * html/HTMLPlugInElement.h: 63698 * html/HTMLPlugInImageElement.cpp: 63699 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): 63700 (WebCore::HTMLPlugInImageElement::renderEmbeddedObject): 63701 * html/HTMLPlugInImageElement.h: 63702 (WebCore::HTMLPlugInImageElement::needsWidgetUpdate): 63703 (WebCore::HTMLPlugInImageElement::setNeedsWidgetUpdate): 63704 * loader/SubframeLoader.cpp: 63705 (WebCore::SubframeLoader::requestObject): 63706 (WebCore::SubframeLoader::loadPlugin): 63707 * loader/SubframeLoader.h: 63708 * rendering/RenderEmbeddedObject.cpp: 63709 (WebCore::updateWidgetForObjectElement): 63710 (WebCore::updateWidgetForEmbedElement): 63711 63712 2010-09-02 Tony Gentilcore <tonyg (a] chromium.org> 63713 63714 Reviewed by Adam Barth. 63715 63716 Support <script defer> as specified by HTML5 63717 https://bugs.webkit.org/show_bug.cgi?id=40934 63718 63719 Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html 63720 fast/dom/HTMLScriptElement/defer-double-write.html 63721 fast/dom/HTMLScriptElement/defer-inline-script.html 63722 fast/dom/HTMLScriptElement/defer-onbeforeload.html 63723 fast/dom/HTMLScriptElement/defer-script-invalid-url.html 63724 fast/dom/HTMLScriptElement/defer-write.html 63725 fast/dom/HTMLScriptElement/two-defer-writes.html 63726 http/tests/misc/script-defer-after-slow-stylesheet.html 63727 http/tests/misc/script-defer.html 63728 63729 * dom/Document.cpp: 63730 (WebCore::Document::open): Allow implicit open for writes() while executing deferred scripts. 63731 * dom/DocumentParser.cpp: 63732 (WebCore::DocumentParser::DocumentParser): 63733 (WebCore::DocumentParser::startParsing): 63734 (WebCore::DocumentParser::prepareToStopParsing): If called when stopped or detached, it shouldn't reset to stopping. 63735 (WebCore::DocumentParser::stopParsing): 63736 (WebCore::DocumentParser::detach): 63737 * dom/DocumentParser.h: 63738 (WebCore::DocumentParser::isParsing): 63739 (WebCore::DocumentParser::isActive): 63740 (WebCore::DocumentParser::isStopping): 63741 (WebCore::DocumentParser::isDetached): 63742 * dom/RawDataDocumentParser.h: 63743 (WebCore::RawDataDocumentParser::finish): 63744 * dom/XMLDocumentParser.cpp: 63745 (WebCore::XMLDocumentParser::append): 63746 (WebCore::XMLDocumentParser::exitText): 63747 * dom/XMLDocumentParserLibxml2.cpp: 63748 (WebCore::XMLDocumentParser::doWrite): 63749 (WebCore::XMLDocumentParser::startElementNs): 63750 (WebCore::XMLDocumentParser::endElementNs): 63751 (WebCore::XMLDocumentParser::characters): 63752 (WebCore::XMLDocumentParser::error): 63753 (WebCore::XMLDocumentParser::processingInstruction): 63754 (WebCore::XMLDocumentParser::cdataBlock): 63755 (WebCore::XMLDocumentParser::comment): 63756 (WebCore::XMLDocumentParser::internalSubset): 63757 (WebCore::XMLDocumentParser::initializeParserContext): 63758 (WebCore::XMLDocumentParser::doEnd): 63759 * html/parser/HTMLDocumentParser.cpp: 63760 (WebCore::HTMLDocumentParser::prepareToStopParsing): 63761 (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible): 63762 (WebCore::HTMLDocumentParser::pumpTokenizer): 63763 (WebCore::HTMLDocumentParser::insert): 63764 (WebCore::HTMLDocumentParser::append): 63765 (WebCore::HTMLDocumentParser::end): 63766 (WebCore::HTMLDocumentParser::attemptToEnd): 63767 (WebCore::HTMLDocumentParser::endIfDelayed): 63768 (WebCore::HTMLDocumentParser::notifyFinished): 63769 * html/parser/HTMLDocumentParser.h: 63770 * html/parser/HTMLScriptRunner.cpp: 63771 (WebCore::HTMLScriptRunner::~HTMLScriptRunner): 63772 (WebCore::HTMLScriptRunner::executeParsingBlockingScript): 63773 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): 63774 (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing): 63775 (WebCore::HTMLScriptRunner::requestDeferredScript): 63776 (WebCore::HTMLScriptRunner::runScript): 63777 * html/parser/HTMLScriptRunner.h: 63778 * loader/ImageDocument.cpp: 63779 (WebCore::ImageDocumentParser::finish): 63780 63781 2010-09-02 Ilya Sherman <isherman (a] google.com> 63782 63783 Reviewed by Eric Seidel. 63784 63785 Decompose computing an element's inherited language, expose this 63786 capability to clients (in particular, for Chromium). 63787 https://bugs.webkit.org/show_bug.cgi?id=44803 63788 63789 No new tests -- just refactoring + exposing code. 63790 63791 * css/CSSStyleSelector.cpp: 63792 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 63793 * dom/Element.cpp: 63794 (WebCore::Element::computeInheritedLang): 63795 * dom/Element.h: 63796 63797 2010-08-31 Philippe Normand <pnormand (a] igalia.com> 63798 63799 Reviewed by Eric Carlson. 63800 63801 [GStreamer] can't play m4v videos 63802 https://bugs.webkit.org/show_bug.cgi?id=44951 63803 63804 Fixed registration of the m4v media type in the hashtable used by 63805 the player to report if it supports a given media type. 63806 63807 Test: media/media-can-play-mpeg4-video.html 63808 63809 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 63810 (WebCore::mimeTypeCache): 63811 63812 2010-09-01 Philippe Normand <pnormand (a] igalia.com> 63813 63814 Reviewed by Martin Robinson. 63815 63816 [GTK] warning: unused variable "queryResult" 63817 https://bugs.webkit.org/show_bug.cgi?id=44998 63818 63819 Fix the misbehavior introduced in r66573. The gst_element_query() 63820 call needs to be done whatever the GStreamer version used. 63821 63822 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 63823 (WebCore::GStreamerGWorld::enterFullscreen): 63824 63825 2010-09-01 Jia Pu <jpu (a] apple.com> 63826 63827 Reviewed by Dan Bernstein. 63828 63829 Add support for autocorrection UI on Mac OS X. 63830 https://bugs.webkit.org/show_bug.cgi?id=44958 63831 <rdar://problem/7326847> 63832 63833 Several new member methods are added to EditorClient for communication 63834 between WebCore and WebKit. A new handler, executeCancelOperation(), is 63835 added to EditorCommand.cpp so that WebCore can intercept the ESC key event 63836 to dismiss autocorrection UI. A new DocumentMarker value, RejectedCorrection, 63837 is added to keep track of the corrections that user has rejected, so that it 63838 will not be suggested again later. The autocorrection is driven by a timer. 63839 Every time the editor inserts a new letter, the timer is reset. If the timer 63840 fires, it means neither has user entered any new letter for current word, nor 63841 has he entered whitespace or punctuation to complete the word. In this case, 63842 we query for autocorrection. 63843 63844 * WebCore.exp.in: Updated 63845 63846 * dom/DocumentMarker.h: Added RejectedCorrection to indicate word on which user 63847 has rejected autocorrection. 63848 63849 * editing/Editor.cpp: 63850 (WebCore::Editor::Editor): Initialize autocorrection timer. 63851 (WebCore::Editor::~Editor): Make sure autocorrection UI is dismissed before 63852 destroying Editor object. 63853 (WebCore::Editor::markMisspellingsAfterTypingToPosition): Adopted new signature 63854 of markAllMisspellingsAndBadGrammarInRanges(). 63855 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Consolidated all 63856 boolean arguments into one bitfield. This improves readability and allows us to 63857 pass in a bit to indicate whether we want to show autocorrection UI. Also added 63858 code to show autocorrection UI if it is necessary. 63859 (WebCore::Editor::markMisspellingsAndBadGrammar): Adopted new signature of 63860 markAllMisspellingsAndBadGrammarInRanges(). 63861 (WebCore::Editor::correctionPanelTimerFired): Check to see if we should show 63862 autocorrection UI when user pauses during typing. 63863 (WebCore::Editor::handleRejectedCorrection): Update user dictionary when an autocorrection is rejected. 63864 (WebCore::Editor::startCorrectionPanelTimer): Start autocorrection timer. 63865 (WebCore::Editor::handleCancelOperation): Dismiss autocorrection UI when ESC key is pressed. 63866 63867 * editing/Editor.h: Added autocorrection related member methods and variables. 63868 63869 * editing/EditorCommand.cpp: 63870 (WebCore::executeCancelOperation): Handle ESC key event. Dismiss autocorrection UI. 63871 (WebCore::createCommandMap): Updated for executeCancelOperation(). 63872 63873 * editing/TypingCommand.cpp: 63874 (WebCore::TypingCommand::markMisspellingsAfterTyping): Reset autocorrection timer after insertion. 63875 63876 * loader/EmptyClients.h: 63877 (WebCore::EmptyEditorClient::showCorrectionPanel): Dummy implementation. 63878 (WebCore::EmptyEditorClient::dismissCorrectionPanel): Ditto 63879 63880 * page/EditorClient.h: Added methods for communication between WebCore and WebKit regarding autocorrection. 63881 63882 * page/Frame.cpp: 63883 (WebCore::Frame::respondToChangedSelection): Remove Replacement marker where we used to only remove Spelling 63884 mark, because whenever we need to remove spelling underline we also should remove autocorrection underline. 63885 63886 * platform/graphics/GraphicsContext.h: Added enum TextCheckingLineStyle to specify the underline 63887 for different type of text checking result. Replaced drawLineForMisspellingOrBadGrammar() with 63888 drawLineForTextChecking(), which allows autocorrection to have different indication from misspelling 63889 and grammatical error. 63890 63891 * platform/graphics/cairo/GraphicsContextCairo.cpp: 63892 (WebCore::GraphicsContext::drawLineForTextChecking): Replaced drawLineForMisspellingOrBadGrammar() with drawLineForTextChecking(). 63893 63894 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 63895 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63896 63897 * platform/graphics/mac/GraphicsContextMac.mm: 63898 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63899 63900 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 63901 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63902 63903 * platform/graphics/qt/GraphicsContextQt.cpp: 63904 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63905 63906 * platform/graphics/skia/GraphicsContextSkia.cpp: 63907 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63908 63909 * platform/graphics/win/GraphicsContextCGWin.cpp: 63910 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63911 63912 * platform/graphics/wince/GraphicsContextWince.cpp: 63913 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63914 63915 * platform/graphics/wx/GraphicsContextWx.cpp: 63916 (WebCore::GraphicsContext::drawLineForTextChecking): Ditto 63917 63918 * rendering/InlineTextBox.cpp: 63919 (WebCore::textCheckingLineStyleForMarkerType): Return line style for a given document marker type. 63920 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Replaced drawLineForMisspellingOrBadGrammar() with drawLineForTextChecking(). 63921 (WebCore::InlineTextBox::paintDocumentMarkers): Handle new marker value, RejectedCorrection. 63922 63923 2010-09-01 Kinuko Yasuda <kinuko (a] google.com> 63924 63925 Reviewed by Adam Barth. 63926 63927 [V8] Support readonly Date attribute 63928 https://bugs.webkit.org/show_bug.cgi?id=43943 63929 63930 Adds Date to non_wrapper_types in CodeGeneratorV8.pm. 63931 63932 New tests will be added for Metadata when we add FileSystem implementation. 63933 63934 * bindings/scripts/CodeGeneratorV8.pm: 63935 * fileapi/Metadata.h: 63936 * fileapi/Metadata.idl: 63937 63938 2010-09-01 Mihai Parparita <mihaip (a] chromium.org> 63939 63940 Reviewed by Chris Marrin. 63941 63942 animations/suspend-resume-animation.html does not pass when accelerated compositing is off 63943 https://bugs.webkit.org/show_bug.cgi?id=45057 63944 63945 Fix incorrect logic when resuming the animation (KeyframeAnimation::startAnimation 63946 and RenderLayerBacking::startAnimation return true when running an accelerated 63947 animation). 63948 63949 * page/animation/AnimationBase.cpp: 63950 (WebCore::AnimationBase::updateStateMachine): 63951 63952 2010-09-01 Eric Carlson <eric.carlson (a] apple.com> 63953 63954 Reviewed by Darin Adler. 63955 63956 Question mark QuickTime icon when navigating to this MP3 file 63957 https://bugs.webkit.org/show_bug.cgi?id=44846 63958 63959 Do not disable 'tmet' movie tracks, they carry meta data. 63960 63961 No DRT test because I am not sure it is possible to have one of these tracks in 63962 non-streaming movie. I will add a test later if I figure out how to create a movie. 63963 63964 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 63965 (WebCore::MediaPlayerPrivate::disableUnsupportedTracks): 63966 63967 2010-09-01 Eric Seidel <eric (a] webkit.org> 63968 63969 Reviewed by Dimitri Glazkov. 63970 63971 Remove rendering types from SubframeLoader and split RenderEmbeddedObject::updateWidget in preparation for moving to DOM 63972 https://bugs.webkit.org/show_bug.cgi?id=45007 63973 63974 This is just moving around code (and attempting to make it more sane). 63975 I also tried to use more specific types where possible. 63976 The SubframeLoader no longer uses any rendering types in its API. 63977 63978 I split RenderEmbeddedObject::updateWidget into a bunch of functions. 63979 It was obvious before, but now super-obvious after the split that these 63980 new functions do not belong in RenderEmbeddedObject. Instead they 63981 need to be moved to their respective DOM classes. I've added FIXMEs 63982 next to each of the functions which should be moved, but I've not moved 63983 any of the logic out of RenderEmbeddedObject.cpp yet in an effort to 63984 keep this patch as simple as possible. 63985 63986 No functional change, thus no tests. 63987 63988 * html/HTMLEmbedElement.cpp: 63989 (WebCore::HTMLEmbedElement::updateWidget): 63990 * html/HTMLFrameElementBase.cpp: 63991 (WebCore::HTMLFrameElementBase::attach): 63992 (WebCore::HTMLFrameElementBase::width): 63993 (WebCore::HTMLFrameElementBase::height): 63994 * html/HTMLFrameOwnerElement.cpp: 63995 (WebCore::HTMLFrameOwnerElement::renderPart): 63996 * html/HTMLFrameOwnerElement.h: 63997 * html/HTMLObjectElement.cpp: 63998 (WebCore::HTMLObjectElement::renderWidgetForJSBindings): 63999 (WebCore::HTMLObjectElement::createRenderer): 64000 (WebCore::HTMLObjectElement::updateWidget): 64001 * html/HTMLPlugInElement.cpp: 64002 (WebCore::HTMLPlugInElement::renderEmbeddedObject): 64003 * html/HTMLPlugInElement.h: 64004 * loader/PluginDocument.cpp: 64005 (WebCore::PluginDocumentParser::appendBytes): 64006 * loader/SubframeLoader.cpp: 64007 (WebCore::SubframeLoader::requestObject): 64008 (WebCore::SubframeLoader::document): 64009 (WebCore::SubframeLoader::loadPlugin): 64010 * loader/SubframeLoader.h: 64011 * rendering/RenderEmbeddedObject.cpp: 64012 (WebCore::isNetscapePlugin): 64013 (WebCore::hasFallbackContent): 64014 (WebCore::parametersFromObject): 64015 (WebCore::updateWidgetForObjectElement): 64016 (WebCore::parametersFromEmbed): 64017 (WebCore::updateWidgetForEmbedElement): 64018 (WebCore::updateWidgetForMediaElement): 64019 (WebCore::RenderEmbeddedObject::updateWidget): 64020 * rendering/RenderEmbeddedObject.h: 64021 (WebCore::RenderEmbeddedObject::setHasFallbackContent): 64022 * rendering/RenderLayerCompositor.h: 64023 64024 2010-09-01 Kinuko Yasuda <kinuko (a] chromium.org> 64025 64026 Reviewed by Jian Li. 64027 64028 Add more FileError and FileException code for FileWriter and FileSystem API 64029 https://bugs.webkit.org/show_bug.cgi?id=45048 64030 64031 Adding SYNTAX_ERR for FileWriter. 64032 http://dev.w3.org/2009/dap/file-system/file-writer.html 64033 64034 Adding INVALID_STATE_ERR, INVALID_MODIFICATION_ERR and QUOTA_EXCEEDED_ERR for FileSystem. 64035 http://dev.w3.org/2009/dap/file-system/file-dir-sys.html 64036 64037 Adding NO_MODIFICATION_ALLOWED_ERR (to FileException) for both. 64038 64039 * fileapi/FileError.idl: 64040 * fileapi/FileException.idl: 64041 64042 2010-09-01 Mihai Parparita <mihaip (a] chromium.org> 64043 64044 Reviewed by Brady Eidson. 64045 64046 popstate event is not fired until document opts in by calling pushstate. 64047 https://bugs.webkit.org/show_bug.cgi?id=41372 64048 64049 Fire popstate even when we don't have a state object when a page is 64050 loaded (for both regular loads and those from the page cache). Also 64051 fire popstate when doing in-document navigation via fragment changes. 64052 This is consistent with both Gecko and recent the HTML5 spec change: 64053 http://html5.org/tools/web-apps-tracker?from=5376&to=5377 64054 64055 Tests: fast/loader/stateobjects/popstate-fires-on-history-traversal.html 64056 fast/loader/stateobjects/popstate-fires-with-page-cache.html 64057 64058 * bindings/js/SerializedScriptValue.cpp: 64059 * bindings/js/SerializedScriptValue.h: 64060 (WebCore::SerializedScriptValue::create): 64061 * bindings/v8/SerializedScriptValue.cpp: 64062 * bindings/v8/SerializedScriptValue.h: 64063 * dom/Document.cpp: 64064 (WebCore::Document::implicitClose): 64065 * dom/Document.h: 64066 * history/CachedFrame.cpp: 64067 (WebCore::CachedFrameBase::restore): 64068 * loader/FrameLoader.cpp: 64069 (WebCore::FrameLoader::loadInSameDocument): 64070 (WebCore::FrameLoader::transitionToCommitted): 64071 * loader/HistoryController.cpp: 64072 (WebCore::HistoryController::pushState): 64073 (WebCore::HistoryController::replaceState): 64074 64075 2010-09-01 Ryosuke Niwa <rniwa (a] webkit.org> 64076 64077 Reviewed by Dimitri Glazkov. 64078 64079 REGRESSION(r66431): WebCore::Editor::selectionStartCSSPropertyValue crashes if no background color is specified 64080 https://bugs.webkit.org/show_bug.cgi?id=45068 64081 64082 The crash was caused by the assumption that every node has an ancestor with some background color, 64083 which was obviously false. Fixed this by adding a null for ancestor. 64084 64085 Test: editing/execCommand/backcolor-crash.html 64086 64087 * editing/Editor.cpp: 64088 (WebCore::Editor::selectionStartCSSPropertyValue): 64089 64090 2010-08-31 Jer Noble <jer.noble (a] apple.com> 64091 64092 Reviewed by Darin Adler. 64093 64094 WebKit should not accept PDFs as video. 64095 https://bugs.webkit.org/show_bug.cgi?id=45013 64096 64097 QuickTime will accept a PDF as the source for a movie, and happily 64098 convert that PDF into a .mov. WebKit should disable the eat and grip 64099 PDF components which allow this. 64100 64101 Test: http/tests/media/pdf-served-as-pdf.html 64102 64103 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 64104 (WebCore::MediaPlayerPrivate::createQTMovie): Add PDF eat and grip 64105 components to the components which are disabled before opening a 64106 QTMovie. 64107 64108 2010-09-01 Rob Buis <rwlbuis (a] gmail.com> 64109 64110 Reviewed by Darin Adler. 64111 64112 Support for Percentage Values in border-radius 64113 https://bugs.webkit.org/show_bug.cgi?id=38354 64114 64115 Support percentage values on the border-radius family 64116 of CSS properties. 64117 64118 * css/CSSComputedStyleDeclaration.cpp: 64119 (WebCore::getBorderRadiusCornerValue): 64120 * css/CSSParser.cpp: 64121 (WebCore::CSSParser::parseValue): 64122 (WebCore::CSSParser::parseBorderRadius): 64123 * css/CSSPrimitiveValue.cpp: 64124 * css/CSSStyleSelector.cpp: 64125 (WebCore::CSSStyleSelector::applyProperty): 64126 * page/animation/AnimationBase.cpp: 64127 (WebCore::AnimationBase::ensurePropertyMap): 64128 * platform/Length.h: 64129 * rendering/RenderObject.cpp: 64130 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): 64131 * rendering/style/BorderData.h: 64132 (WebCore::BorderData::BorderData): 64133 (WebCore::BorderData::hasBorderRadius): 64134 (WebCore::BorderData::topLeft): 64135 (WebCore::BorderData::topRight): 64136 (WebCore::BorderData::bottomLeft): 64137 (WebCore::BorderData::bottomRight): 64138 * rendering/style/RenderStyle.cpp: 64139 (WebCore::RenderStyle::getBorderRadiiForRect): 64140 (WebCore::RenderStyle::getInnerBorderRadiiForRectWithBorderWidths): 64141 * rendering/style/RenderStyle.h: 64142 (WebCore::InheritedFlags::borderTopLeftRadius): 64143 (WebCore::InheritedFlags::borderTopRightRadius): 64144 (WebCore::InheritedFlags::borderBottomLeftRadius): 64145 (WebCore::InheritedFlags::borderBottomRightRadius): 64146 (WebCore::InheritedFlags::setBorderTopLeftRadius): 64147 (WebCore::InheritedFlags::setBorderTopRightRadius): 64148 (WebCore::InheritedFlags::setBorderBottomLeftRadius): 64149 (WebCore::InheritedFlags::setBorderBottomRightRadius): 64150 (WebCore::InheritedFlags::setBorderRadius): 64151 (WebCore::InheritedFlags::initialBorderRadius): 64152 64153 2010-09-01 Andrey Kosyakov <caseq (a] chromium.org> 64154 64155 Reviewed by Yury Semikhatsky. 64156 64157 Web Inspector: webInspector.inspectedWindow.evaluate() should not fail if not passed callback. 64158 https://bugs.webkit.org/show_bug.cgi?id=45037 64159 64160 * inspector/front-end/ExtensionAPI.js: 64161 (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.evaluate): 64162 64163 2010-09-01 Dave Hyatt <hyatt (a] apple.com> 64164 64165 Reviewed by Dan Bernstein and Simon Fraser. 64166 64167 https://bugs.webkit.org/show_bug.cgi?id=44963, overhanging floats aren't positioned properly when they occur 64168 in multi-column layout. Don't let floats overhang in multi-column blocks, since they are part of the column layout. 64169 64170 fast/multicol/float-pagination-failure now succeeds, so will rename and move it. 64171 64172 * rendering/RenderBlock.cpp: 64173 (WebCore::RenderBlock::addOverhangingFloats): 64174 64175 2010-08-31 Kenneth Russell <kbr (a] google.com> 64176 64177 Reviewed by Simon Fraser. 64178 64179 Add helpers to FloatRect to compute bounding box from points 64180 https://bugs.webkit.org/show_bug.cgi?id=45015 64181 64182 Added fitToPoints, including a few overloaded variants for the 64183 cases of two, three and four points. I opted not to add a 64184 generalized version taking const FloatRect* or Vector<FloatRect> 64185 at the present time because for my own purposes they are 64186 unnecessary, and the specific versions can be more tightly coded. 64187 Also added left() and top() for symmetry with right() and bottom(). 64188 These changes have been tested with new code to be added later. 64189 64190 * platform/graphics/FloatRect.cpp: 64191 (WebCore::FloatRect::intersect): 64192 (WebCore::FloatRect::unite): 64193 (WebCore::FloatRect::fitToPoints): 64194 * platform/graphics/FloatRect.h: 64195 (WebCore::FloatRect::left): 64196 (WebCore::FloatRect::top): 64197 (WebCore::FloatRect::setLocationAndSizeFromEdges): 64198 64199 2010-09-01 Anton Muhin <antonm (a] chromium.org> 64200 64201 Reviewed by Dimitri Glazkov. 64202 64203 [v8] Use Vector and DEFINE_STATIC_LOCAL instead of plain static array. 64204 https://bugs.webkit.org/show_bug.cgi?id=45040 64205 64206 By code guidelines all the statics should be wrapped into appropriate macro. 64207 64208 * bindings/v8/V8Binding.cpp: 64209 (WebCore::int32ToWebCoreString): 64210 64211 2010-09-01 Alejandro G. Castro <alex (a] igalia.com> 64212 64213 Reviewed by Martin Robinson. 64214 64215 [Gtk] very slow page scrolling on big -webkit-box-shadow areas 64216 https://bugs.webkit.org/show_bug.cgi?id=39582 64217 64218 Add a new drawTiledShadow method to render a big shadow doing 64219 tiling of parts of a smaller shadow. We create the minimum shadow 64220 required to get the tiles we will use to render the real shadow 64221 and we use drawPattern with those tiles to create the shadow. 64222 64223 * platform/graphics/GraphicsContext.h: 64224 * platform/graphics/cairo/FontCairo.cpp: 64225 (WebCore::Font::drawGlyphs): 64226 * platform/graphics/cairo/GraphicsContextCairo.cpp: 64227 (WebCore::drawPathShadow): 64228 (WebCore::drawBorderlessRectShadow): 64229 (WebCore::GraphicsContext::fillRect): 64230 (WebCore::GraphicsContext::applyPlatformShadow): 64231 (WebCore::GraphicsContext::createShadowMask): 64232 (WebCore::getPhase): 64233 (WebCore::GraphicsContext::drawTiledShadow): 64234 (WebCore::GraphicsContext::fillRoundedRect): 64235 * platform/graphics/cairo/ImageCairo.cpp: 64236 (WebCore::BitmapImage::draw): 64237 64238 2010-09-01 Andrey Kosyakov <caseq (a] chromium.org> 64239 64240 Reviewed by Yury Semikhatsky. 64241 64242 Web Inspector, Extension API: Panel.onSelectionChanged event is never fired 64243 Added command line API to the lexical context of code evaluated by webInspector.inspectedWindow.evaluate() 64244 Fixed webInspector.inspectedWindow.evaluate() to return object rather than its stringified representation 64245 https://bugs.webkit.org/show_bug.cgi?id=44957 64246 64247 Test: inspector/extensions-eval.html 64248 64249 * inspector/front-end/ExtensionAPI.js: 64250 (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.evaluate): 64251 * inspector/front-end/ExtensionServer.js: 64252 (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage): 64253 64254 2010-08-27 Philippe Normand <pnormand (a] igalia.com> 64255 64256 Reviewed by Xan Lopez. 64257 64258 [GStreamer] ImageGStreamer doesn't need to hold a Cairo surface 64259 https://bugs.webkit.org/show_bug.cgi?id=44757 64260 64261 Pass the cairo surface to the BitmapImage constructor which will 64262 handle its life-cycle. 64263 64264 * platform/graphics/gstreamer/ImageGStreamer.h: 64265 * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: 64266 (ImageGStreamer::ImageGStreamer): 64267 (ImageGStreamer::~ImageGStreamer): 64268 64269 2010-08-30 Patrick Gansterer <paroga (a] paroga.com> 64270 64271 Reviewed by Dirk Schulze. 64272 64273 RenderImage::imageChanged invalidates wrong area 64274 https://bugs.webkit.org/show_bug.cgi?id=43779 64275 64276 Remove RenderImage inheritance from RenderSVGImage, it now inherits from RenderSVGModelObject. 64277 64278 * rendering/RenderSVGImage.cpp: 64279 (WebCore::RenderSVGImage::RenderSVGImage): 64280 (WebCore::RenderSVGImage::~RenderSVGImage): 64281 (WebCore::RenderSVGImage::layout): 64282 (WebCore::RenderSVGImage::paint): 64283 (WebCore::RenderSVGImage::imageChanged): 64284 * rendering/RenderSVGImage.h: 64285 (WebCore::RenderSVGImage::imageResource): 64286 * rendering/RenderSVGModelObject.h: 64287 * svg/SVGImageElement.cpp: 64288 64289 2010-09-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 64290 64291 Reviewed by Dirk Schulze. 64292 64293 Add culling to RenderSVGContainer 64294 https://bugs.webkit.org/show_bug.cgi?id=44896 64295 64296 Cache object/strokeBoundingBox and repaintRectInLocalCoordinates() in RenderSVGContainer & RenderSVGRoot, just like it's done in RenderPath. 64297 Propagate boundary changes up the render tree, in layout phase, in order to notify parents that they should update their cached boundaries. 64298 64299 This is a huge speed benefit when interacting with an already layouted document, as there's no need anymore to traverse all children 64300 of any container or <svg> element, just to retrieve the repaint rect. 64301 64302 * rendering/RenderForeignObject.cpp: 64303 (WebCore::RenderForeignObject::layout): Propagate boundary changes to parent, if neeeded. 64304 * rendering/RenderObject.cpp: 64305 (WebCore::RenderObject::setNeedsBoundariesUpdate): Ditto. 64306 * rendering/RenderObject.h: 64307 * rendering/RenderObjectChildList.cpp: 64308 (WebCore::RenderObjectChildList::removeChildNode): Ditto. 64309 * rendering/RenderPath.cpp: 64310 (WebCore::RenderPath::layout): Ditto. 64311 (WebCore::RenderPath::paint): Use new helper function to intersect the paintInfo.rect with the repaintRectInLocalCoordinates(). 64312 * rendering/RenderPath.h: Remove styleWillChange(), it's in RenderSVGModelObject now. 64313 (WebCore::RenderPath::setNeedsBoundariesUpdate): Mark as virtual, just like in RenderObject. 64314 * rendering/RenderSVGContainer.cpp: 64315 (WebCore::RenderSVGContainer::RenderSVGContainer): Initialize m_needsBoundariesUpdate to true. 64316 (WebCore::RenderSVGContainer::layout): Only update cached boundaries, if needed, once by traversing the child tree. 64317 (WebCore::RenderSVGContainer::paint): Use new helper function to intersect the paintInfo.rect with the repaintRectInLocalCoordinates(). 64318 (WebCore::RenderSVGContainer::updateCachedBoundaries): Ask children for their boundaries, and cache them. 64319 * rendering/RenderSVGContainer.h: 64320 (WebCore::RenderSVGContainer::setNeedsBoundariesUpdate): Set m_needsBoundariesUpdate when called. 64321 (WebCore::RenderSVGContainer::objectBoundingBox): Inlined, just returns a member variable now. 64322 (WebCore::RenderSVGContainer::strokeBoundingBox): Ditto. 64323 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): Ditto. 64324 (WebCore::RenderSVGContainer::calculateLocalTransform): Changed to return a boolean, wheter the transform was modified. 64325 * rendering/RenderSVGGradientStop.h: 64326 (WebCore::RenderSVGGradientStop::strokeBoundingBox): Add missing default implementation, return just FloatRect(). 64327 * rendering/RenderSVGHiddenContainer.cpp: Remove repaintRectInLocalCoordinates() override, it's now needed for painting markers. 64328 * rendering/RenderSVGHiddenContainer.h: 64329 (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint): Inlined, returning IntRect(). 64330 * rendering/RenderSVGImage.cpp: 64331 (WebCore::RenderSVGImage::layout): Propagate boundary changes to parent, if neeeded. 64332 * rendering/RenderSVGRoot.cpp: Cache boundaries here as well, just like in RenderSVGContainer. 64333 (WebCore::RenderSVGRoot::RenderSVGRoot): 64334 (WebCore::RenderSVGRoot::layout): 64335 (WebCore::RenderSVGRoot::updateCachedBoundaries): 64336 * rendering/RenderSVGRoot.h: 64337 (WebCore::RenderSVGRoot::setNeedsBoundariesUpdate): 64338 (WebCore::RenderSVGRoot::setNeedsTransformUpdate): 64339 (WebCore::RenderSVGRoot::objectBoundingBox): 64340 (WebCore::RenderSVGRoot::strokeBoundingBox): 64341 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 64342 * rendering/RenderSVGText.cpp: 64343 (WebCore::RenderSVGText::layout): Propagate boundary changes to parent, if neeeded. 64344 * rendering/RenderSVGTransformableContainer.cpp: 64345 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): Return true, if the localTransform changed. 64346 * rendering/RenderSVGTransformableContainer.h: 64347 * rendering/RenderSVGViewportContainer.cpp: 64348 (WebCore::RenderSVGViewportContainer::calcViewport): Propagate boundary changes to parent, if neeeded. 64349 * rendering/SVGRenderSupport.cpp: 64350 (WebCore::SVGRenderSupport::computeContainerBoundingBoxes): Helper function calculating object/strokeBoundingBox and repaintRectInLocalCoordinates in one shot. 64351 (WebCore::SVGRenderSupport::paintInfoIntersectsRepaintRect): Moved from RenderPath to share the culling functionality. 64352 * rendering/SVGRenderSupport.h: 64353 64354 2010-09-01 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 64355 64356 Reviewed by Laszlo Gombos. 64357 64358 [Qt] QWebPage::allowGeolocationRequest should be async API 64359 https://bugs.webkit.org/show_bug.cgi?id=41364 64360 64361 Adding GeolocationPermissionClientQt.cpp/h to build script 64362 64363 * WebCore.pro: 64364 64365 2010-09-01 Andreas Kling <andreas.kling (a] nokia.com> 64366 64367 Reviewed by Darin Adler. 64368 64369 DOM Selection: collapseToStart() and collapseToEnd() should throw INVALID_STATE_ERR if there's no selection 64370 https://bugs.webkit.org/show_bug.cgi?id=44598 64371 64372 Spec links: 64373 http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapsetostart 64374 http://www.whatwg.org/specs/web-apps/current-work/#dom-selection-collapsetoend 64375 64376 Test: fast/dom/Selection/collapseToX-empty-selection.html 64377 64378 * page/DOMSelection.cpp: 64379 (WebCore::DOMSelection::collapseToEnd): 64380 (WebCore::DOMSelection::collapseToStart): 64381 * page/DOMSelection.h: 64382 * page/DOMSelection.idl: 64383 64384 2010-09-01 Kinuko Yasuda <kinuko (a] chromium.org> 64385 64386 Unreviewed; another build fix. 64387 64388 * WebCore.pri: 64389 64390 2010-09-01 Kinuko Yasuda <kinuko (a] chromium.org> 64391 64392 Unreviewed; qt build fix. 64393 64394 * CMakeLists.txt: 64395 64396 2010-08-31 Kinuko Yasuda <kinuko (a] chromium.org> 64397 64398 Reviewed by Adam Barth. 64399 64400 Move FileSystem related files from WebCore/html to WebCore/fileapi. 64401 https://bugs.webkit.org/show_bug.cgi?id=44925 64402 64403 No new tests; there should be no functional changes. 64404 64405 * CMakeLists.txt: 64406 * GNUmakefile.am: 64407 * WebCore.gypi: 64408 * WebCore.pro: 64409 * WebCore.vcproj/WebCore.vcproj: 64410 * WebCore.xcodeproj/project.pbxproj: 64411 * fileapi/DOMFilePath.cpp: Renamed from WebCore/storage/DOMFilePath.cpp. 64412 * fileapi/DOMFilePath.h: Renamed from WebCore/storage/DOMFilePath.h. 64413 * fileapi/DOMFileSystem.cpp: Renamed from WebCore/storage/DOMFileSystem.cpp. 64414 * fileapi/DOMFileSystem.h: Renamed from WebCore/storage/DOMFileSystem.h. 64415 * fileapi/DOMFileSystem.idl: Renamed from WebCore/storage/DOMFileSystem.idl. 64416 * fileapi/DirectoryEntry.cpp: Renamed from WebCore/storage/DirectoryEntry.cpp. 64417 * fileapi/DirectoryEntry.h: Renamed from WebCore/storage/DirectoryEntry.h. 64418 * fileapi/DirectoryEntry.idl: Renamed from WebCore/storage/DirectoryEntry.idl. 64419 * fileapi/DirectoryReader.cpp: Renamed from WebCore/storage/DirectoryReader.cpp. 64420 * fileapi/DirectoryReader.h: Renamed from WebCore/storage/DirectoryReader.h. 64421 * fileapi/DirectoryReader.idl: Renamed from WebCore/storage/DirectoryReader.idl. 64422 * fileapi/EntriesCallback.h: Renamed from WebCore/storage/EntriesCallback.h. 64423 * fileapi/EntriesCallback.idl: Renamed from WebCore/storage/EntriesCallback.idl. 64424 * fileapi/Entry.cpp: Renamed from WebCore/storage/Entry.cpp. 64425 * fileapi/Entry.h: Renamed from WebCore/storage/Entry.h. 64426 * fileapi/Entry.idl: Renamed from WebCore/storage/Entry.idl. 64427 * fileapi/EntryArray.cpp: Renamed from WebCore/storage/EntryArray.cpp. 64428 * fileapi/EntryArray.h: Renamed from WebCore/storage/EntryArray.h. 64429 * fileapi/EntryArray.idl: Renamed from WebCore/storage/EntryArray.idl. 64430 * fileapi/EntryCallback.h: Renamed from WebCore/storage/EntryCallback.h. 64431 * fileapi/EntryCallback.idl: Renamed from WebCore/storage/EntryCallback.idl. 64432 * fileapi/ErrorCallback.h: Renamed from WebCore/storage/ErrorCallback.h. 64433 * fileapi/ErrorCallback.idl: Renamed from WebCore/storage/ErrorCallback.idl. 64434 * fileapi/FileEntry.cpp: Renamed from WebCore/storage/FileEntry.cpp. 64435 * fileapi/FileEntry.h: Renamed from WebCore/storage/FileEntry.h. 64436 * fileapi/FileEntry.idl: Renamed from WebCore/storage/FileEntry.idl. 64437 * fileapi/FileSystemCallback.h: Renamed from WebCore/storage/FileSystemCallback.h. 64438 * fileapi/FileSystemCallback.idl: Renamed from WebCore/storage/FileSystemCallback.idl. 64439 * fileapi/FileSystemCallbacks.cpp: Renamed from WebCore/storage/FileSystemCallbacks.cpp. 64440 * fileapi/FileSystemCallbacks.h: Renamed from WebCore/storage/FileSystemCallbacks.h. 64441 * fileapi/Flags.h: Renamed from WebCore/storage/Flags.h. 64442 * fileapi/Flags.idl: Renamed from WebCore/storage/Flags.idl. 64443 * fileapi/LocalFileSystem.cpp: Renamed from WebCore/storage/LocalFileSystem.cpp. 64444 * fileapi/LocalFileSystem.h: Renamed from WebCore/storage/LocalFileSystem.h. 64445 * fileapi/Metadata.h: Renamed from WebCore/storage/Metadata.h. 64446 * fileapi/Metadata.idl: Renamed from WebCore/storage/Metadata.idl. 64447 * fileapi/MetadataCallback.h: Renamed from WebCore/storage/MetadataCallback.h. 64448 * fileapi/MetadataCallback.idl: Renamed from WebCore/storage/MetadataCallback.idl. 64449 64450 2010-08-31 Nikolas Zimmermann <nzimmermann (a] rim.com> 64451 64452 Reviewed by Dirk Schulze. 64453 64454 Prepare RenderSVGContainer culling patch 64455 https://bugs.webkit.org/show_bug.cgi?id=44955 64456 64457 Add styleWillChange methods for all SVG renderers, that call setNeedsBoundariesUpdate(). 64458 It's currently a no-op, but will be used once the containers cache their boundaries, which 64459 happens in a follow-up patch. 64460 64461 * rendering/RenderSVGBlock.cpp: 64462 (WebCore::RenderSVGBlock::styleWillChange): Call setNeedsBoundariesUpdate(). 64463 * rendering/RenderSVGBlock.h: 64464 * rendering/RenderSVGImage.cpp: 64465 (WebCore::RenderSVGImage::styleWillChange): Ditto. 64466 * rendering/RenderSVGImage.h: 64467 * rendering/RenderSVGInline.cpp: 64468 (WebCore::RenderSVGInline::styleWillChange): Ditto. 64469 * rendering/RenderSVGInline.h: 64470 * rendering/RenderSVGModelObject.cpp: 64471 (WebCore::RenderSVGModelObject::styleWillChange): Ditto. 64472 * rendering/RenderSVGModelObject.h: 64473 * rendering/RenderSVGRoot.cpp: 64474 (WebCore::RenderSVGRoot::styleWillChange): Ditto. 64475 * rendering/RenderSVGRoot.h: 64476 * rendering/SVGRenderSupport.cpp: 64477 (WebCore::SVGRenderSupport::computeContainerBoundingBox): Skip hidden containers, not necessary to traverse them. 64478 * rendering/style/SVGRenderStyle.cpp: 64479 (WebCore::SVGRenderStyle::diff): svg-shadow changes need to cause relayouts, not only repaints, once container bounds are cached. 64480 64481 2010-08-31 Justin Garcia <justin.garcia (a] apple.com> 64482 64483 Reviewed by Dan Bernstein. 64484 64485 https://bugs.webkit.org/show_bug.cgi?id=44915 64486 Need to handle CSSValueAuto in CSSPrimitiveValue::operator ETextAlign() 64487 64488 * css/CSSPrimitiveValueMappings.h: 64489 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Map TAAUTO to -webkit-auto. "auto" is 64490 not a valid text-align value. We use TAAUTO internally for the nameless value that acts 64491 as left if direction:ltr and right for direction:rtl. 64492 64493 2010-08-31 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 64494 64495 Reviewed by Martin Robinson. 64496 64497 [EFL] Add PlatformVideoWindowEfl.cpp for WebKit EFL 64498 https://bugs.webkit.org/show_bug.cgi?id=44508 64499 64500 Add PlatformVideoWindowEfl.cpp in order to use gstreamer by 64501 WebKit EFL. 64502 64503 * platform/graphics/gstreamer/PlatformVideoWindow.h: 64504 (WebCore::PlatformVideoWindow::window): 64505 (WebCore::PlatformVideoWindow::videoWindowId): 64506 * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp: Added. 64507 (PlatformVideoWindow::PlatformVideoWindow): 64508 (PlatformVideoWindow::~PlatformVideoWindow): 64509 * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Include <gtk/gtk.h> directly. 64510 64511 2010-08-31 Dave Hyatt <hyatt (a] apple.com> 64512 64513 Reviewed by Sam Weinig. 64514 64515 https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that 64516 the former can occur in more places without having to do the latter. 64517 64518 * WebCore.exp.in: 64519 * page/FocusController.cpp: 64520 (WebCore::FocusController::setActive): 64521 * page/Frame.cpp: 64522 (WebCore::Frame::Frame): 64523 * page/Frame.h: 64524 * page/FrameView.cpp: 64525 (WebCore::FrameView::enterCompositingMode): 64526 (WebCore::FrameView::layout): 64527 (WebCore::FrameView::needsLayout): 64528 (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive): 64529 * page/FrameView.h: 64530 * page/Page.cpp: 64531 (WebCore::Page::scheduleForcedStyleRecalcForAllPages): 64532 * page/Page.h: 64533 * page/Settings.cpp: 64534 (WebCore::setNeedsRecalcStyleInAllFrames): 64535 (WebCore::setLoadsImagesAutomaticallyInAllFrames): 64536 (WebCore::Settings::setStandardFontFamily): 64537 (WebCore::Settings::setFixedFontFamily): 64538 (WebCore::Settings::setSerifFontFamily): 64539 (WebCore::Settings::setSansSerifFontFamily): 64540 (WebCore::Settings::setCursiveFontFamily): 64541 (WebCore::Settings::setFantasyFontFamily): 64542 (WebCore::Settings::setMinimumFontSize): 64543 (WebCore::Settings::setMinimumLogicalFontSize): 64544 (WebCore::Settings::setDefaultFontSize): 64545 (WebCore::Settings::setDefaultFixedFontSize): 64546 (WebCore::Settings::setLoadsImagesAutomatically): 64547 (WebCore::Settings::setTextAreasAreResizable): 64548 (WebCore::Settings::setAuthorAndUserStylesEnabled): 64549 (WebCore::Settings::setFontRenderingMode): 64550 (WebCore::Settings::setZoomMode): 64551 (WebCore::Settings::setAcceleratedCompositingEnabled): 64552 (WebCore::Settings::setShowDebugBorders): 64553 (WebCore::Settings::setShowRepaintCounter): 64554 * rendering/RenderTheme.cpp: 64555 (WebCore::RenderTheme::platformColorsDidChange): 64556 64557 2010-08-31 Jeremy Moskovich <jeremy (a] chromium.org> 64558 64559 Reviewed by Dimitri Glazkov. 64560 64561 Unfork Chromium's FontPlatformDataChromiumMac.mm. 64562 64563 Modified FontPlatformDataCocoa to provide hooks needed by Chromium. 64564 Moved Chromium's mechanics for OOP font loading to CrossProcessFontLoading.mm. 64565 Added ::create() function to MemoryActivatedFont to match new guidelines for 64566 RefCounted<> classes. 64567 64568 Not possible to test due to sandbox interaction. 64569 64570 * WebCore.gypi: Update files for chromium build. 64571 * platform/graphics/chromium/CrossProcessFontLoading.h: Added. 64572 (WebCore::MemoryActivatedFont::cgFont): 64573 (WebCore::MemoryActivatedFont::atsFontRef): 64574 * platform/graphics/chromium/CrossProcessFontLoading.mm: Added. 64575 (WebCore::MemoryActivatedFont::create): 64576 (WebCore::MemoryActivatedFont::MemoryActivatedFont): 64577 (WebCore::MemoryActivatedFont::~MemoryActivatedFont): 64578 (WebCore::FontPlatformData::loadFont): 64579 * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: Removed. 64580 * platform/graphics/cocoa/FontPlatformData.h: 64581 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: 64582 (WebCore::FontPlatformData::loadFont): 64583 (WebCore::FontPlatformData::FontPlatformData): 64584 (WebCore::FontPlatformData::operator=): 64585 (WebCore::FontPlatformData::setFont): 64586 64587 2010-08-31 Martin Robinson <mrobinson (a] igalia.com> 64588 64589 Reviewed by Adam Barth. 64590 64591 [GTK] warning: unused variable "queryResult" 64592 https://bugs.webkit.org/show_bug.cgi?id=44998 64593 64594 No new tests as functionality has not changed. 64595 64596 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 64597 (WebCore::GStreamerGWorld::enterFullscreen): Move queryResult within the gstreamer 64598 version guards, where it is used. 64599 64600 2010-08-31 Dave Hyatt <hyatt (a] apple.com> 64601 64602 Reviewed by Adam Roben. 64603 64604 Refinement to previous checkin for pagination of block-level replaced elements. Don't bother to 64605 paginate floating block-level replaced elements for now. 64606 64607 Added fast/multicol/float-pagination-failure.html 64608 64609 * rendering/RenderBlock.cpp: 64610 (WebCore::RenderBlock::paintChildren): 64611 64612 2010-08-31 Kinuko Yasuda <kinuko (a] chromium.org> 64613 64614 Reviewed by Jian Li. 64615 64616 Add LocalFileSystem.requestFileSystem interface to DOMWindow 64617 https://bugs.webkit.org/show_bug.cgi?id=44734 64618 64619 No new tests; tests will be added later. 64620 64621 * bindings/generic/RuntimeEnabledFeatures.cpp: 64622 * bindings/generic/RuntimeEnabledFeatures.h: 64623 (WebCore::RuntimeEnabledFeatures::fileSystemEnabled): 64624 (WebCore::RuntimeEnabledFeatures::setFileSystemEnabled): 64625 (WebCore::RuntimeEnabledFeatures::requestFileSystemEnabled): 64626 * page/DOMWindow.cpp: 64627 (WebCore::DOMWindow::requestFileSystem): 64628 * page/DOMWindow.h: 64629 (WebCore::DOMWindow::): 64630 * page/DOMWindow.idl: 64631 * page/Settings.cpp: 64632 (WebCore::Settings::setFileSystemRootPath): 64633 * page/Settings.h: 64634 (WebCore::Settings::fileSystemRootPath): 64635 64636 2010-08-31 Kwang Yul Seo <skyul (a] company100.net> 64637 64638 Reviewed by Adam Barth. 64639 64640 [BREWMP] Add PLATFORM(BREWMP) guard to PluginViewNone 64641 https://bugs.webkit.org/show_bug.cgi?id=44768 64642 64643 Build fix. Add PLATFORM(BREWMP) guard to add dummy PluginView::privateBrowsingStateChanged 64644 and PluginView::setJavaScriptPaused. 64645 64646 * plugins/PluginViewNone.cpp: 64647 64648 2010-08-31 Alexey Proskuryakov <ap (a] apple.com> 64649 64650 Reviewed by Adam Barth. 64651 64652 https://bugs.webkit.org/show_bug.cgi?id=40947 64653 <rdar://problem/8124723> REGRESSION (r57544): XMLHttpRequest POSTed multipart/form-data 64654 wrongfully gets a charset appended 64655 64656 Test: http/tests/xmlhttprequest/post-with-boundary.html 64657 64658 * xml/XMLHttpRequest.cpp: 64659 (WebCore::replaceCharsetInMediaType): Changed to only set charset if it was already present, 64660 and never append. 64661 (WebCore::XMLHttpRequest::send): Updated for replaceCharsetInMediaType renaming. 64662 64663 2010-08-31 Daniel Cheng <dcheng (a] chromium.org> 64664 64665 Reviewed by Tony Chang. 64666 64667 [chromium] Implement Readable/Writable versions of ChromiumDataObjectNew 64668 https://bugs.webkit.org/show_bug.cgi?id=44917 64669 64670 This is the second of several patches to update Chromium to support 64671 arbitrary data types in event.dataTransfer. 64672 ReadableDataObject simply calls through to several Chromium IPCs to 64673 retrieve the appropriate data. 64674 WritableDataObject ostensibly buffers arbitrary data internally until 64675 a call is made to flush the data to the platform-specific abstraction; 64676 unfortunately, a special exception is currently made for pasteboard 64677 handling due to how it is handled in WebCore. 64678 64679 No new tests. 64680 64681 * WebCore.gypi: 64682 * platform/chromium/ChromiumDataObjectNew.h: Removed. 64683 * platform/chromium/ClipboardChromium.cpp: 64684 * platform/chromium/ClipboardMimeTypes.cpp: Added. 64685 * platform/chromium/ClipboardMimeTypes.h: Added. 64686 * platform/chromium/ReadableDataObject.cpp: Added. 64687 (WebCore::clipboardBuffer): 64688 (WebCore::ReadableDataObject::create): 64689 (WebCore::ReadableDataObject::ReadableDataObject): 64690 (WebCore::ReadableDataObject::hasData): 64691 (WebCore::ReadableDataObject::types): 64692 (WebCore::ReadableDataObject::getData): 64693 (WebCore::ReadableDataObject::getURL): 64694 (WebCore::ReadableDataObject::getHTML): 64695 (WebCore::ReadableDataObject::hasFilenames): 64696 (WebCore::ReadableDataObject::filenames): 64697 (WebCore::ReadableDataObject::ensureTypeCacheInitialized): 64698 * platform/chromium/ReadableDataObject.h: Added. 64699 * platform/chromium/WritableDataObject.cpp: Added. 64700 (WebCore::WritableDataObject::create): 64701 (WebCore::WritableDataObject::WritableDataObject): 64702 (WebCore::WritableDataObject::clearData): 64703 (WebCore::WritableDataObject::clearAllExceptFiles): 64704 (WebCore::WritableDataObject::clearAll): 64705 (WebCore::WritableDataObject::setData): 64706 (WebCore::WritableDataObject::setURL): 64707 (WebCore::WritableDataObject::setHTML): 64708 (WebCore::WritableDataObject::dataMap): 64709 (WebCore::WritableDataObject::urlTitle): 64710 (WebCore::WritableDataObject::htmlBaseURL): 64711 (WebCore::WritableDataObject::fileExtension): 64712 (WebCore::WritableDataObject::fileContentFilename): 64713 (WebCore::WritableDataObject::fileContent): 64714 (WebCore::WritableDataObject::setFileExtension): 64715 (WebCore::WritableDataObject::setFileContentFilename): 64716 (WebCore::WritableDataObject::setFileContent): 64717 * platform/chromium/WritableDataObject.h: Added. 64718 64719 2010-08-31 Darin Adler <darin (a] apple.com> 64720 64721 Reviewed by Sam Weinig. 64722 64723 Null-deref when decoding web archive with no data key in LegacyWebArchive::createResource 64724 https://bugs.webkit.org/show_bug.cgi?id=45000 64725 64726 Test: webarchive/loading/missing-data.html 64727 64728 * loader/archive/cf/LegacyWebArchive.cpp: 64729 (WebCore::LegacyWebArchive::createResource): Use wrapCFData instead of CFDataGetBytePtr/GetLength, 64730 which is both more efficient, and can handle null. Also fixed incorrect use of ParsedURLString, 64731 since the string is coming from a file and so there are no guarantees about its format. 64732 64733 2010-08-31 Kenneth Russell <kbr (a] google.com> 64734 64735 Reviewed by Chris Marrin. 64736 64737 Add length and related operations to FloatPoint and FloatSize 64738 https://bugs.webkit.org/show_bug.cgi?id=44994 64739 64740 Added length and squared length operations to both FloatPoint and 64741 FloatSize, and added set(x, y), dot and normalize operations to 64742 FloatPoint. These changes have been tested with new code to be 64743 added later. 64744 64745 * platform/graphics/FloatPoint.cpp: 64746 (WebCore::FloatPoint::normalize): 64747 (WebCore::FloatPoint::length): 64748 * platform/graphics/FloatPoint.h: 64749 (WebCore::FloatPoint::set): 64750 (WebCore::FloatPoint::dot): 64751 (WebCore::FloatPoint::lengthSquared): 64752 (WebCore::operator*): 64753 * platform/graphics/FloatSize.cpp: 64754 (WebCore::FloatSize::diagonalLength): 64755 * platform/graphics/FloatSize.h: 64756 (WebCore::FloatSize::diagonalLengthSquared): 64757 64758 2010-08-31 Zhenyao Mo <zmo (a] google.com> 64759 64760 Reviewed by Kenneth Russell. 64761 64762 gl-teximage.html and tex-image-and-sub-image-2d-with-image.html failed on Chromium Mac bots (10.5) 64763 https://bugs.webkit.org/show_bug.cgi?id=44993 64764 64765 * platform/graphics/cg/GraphicsContext3DCG.cpp: 64766 (WebCore::GraphicsContext3D::getImageData): Take into consideration the source image pixel row alignment. 64767 64768 2010-08-31 Patrick Gansterer <paroga (a] paroga.com> 64769 64770 Reviewed by Kenneth Rohde Christiansen. 64771 64772 [CMake] Unify GENERATE_DOM_NAMES code 64773 https://bugs.webkit.org/show_bug.cgi?id=44842 64774 64775 * CMakeLists.txt: Added property svn:eol-style. 64776 64777 2010-08-31 Beth Dakin <bdakin (a] apple.com> 64778 64779 Rubber-stamped by Dan Bernstein.. 64780 64781 Variable name change. m_shouldFirePostLayoutTimer is now 64782 m_hasPendingPostLayoutTasks 64783 64784 * page/FrameView.cpp: 64785 (WebCore::FrameView::FrameView): 64786 (WebCore::FrameView::~FrameView): 64787 (WebCore::FrameView::reset): 64788 (WebCore::FrameView::layout): 64789 (WebCore::FrameView::performPostLayoutTasks): 64790 * page/FrameView.h: 64791 64792 2010-08-31 Beth Dakin <bdakin (a] apple.com> 64793 64794 Reviewed by Dave Hyatt. 64795 64796 Fix for https://bugs.webkit.org/show_bug.cgi?id=44828 FrameView 64797 should make more calls to postLayoutTasks() using the timer 64798 -and corresponding- 64799 <rdar://problem/8064938> 64800 64801 This change only allows synchronous calls to postLayoutTasks() if 64802 we are not already in a synchronous call to postLayoutTasks(). 64803 Furthermore, it de-couples the notion of "the post layout timer 64804 should fire" from m_postLayoutTasksTimer.isActive(), instead using 64805 a boolean to track the need to use the timer. 64806 64807 * page/FrameView.cpp: 64808 (WebCore::FrameView::FrameView): 64809 (WebCore::FrameView::~FrameView): 64810 (WebCore::FrameView::reset): 64811 (WebCore::FrameView::layout): 64812 (WebCore::FrameView::unscheduleRelayout): 64813 (WebCore::FrameView::performPostLayoutTasks): 64814 * page/FrameView.h: 64815 64816 2010-08-30 Anders Carlsson <andersca (a] apple.com> 64817 64818 Reviewed by Sam Weinig. 64819 64820 Fix 32-bit WebKit2 build. 64821 64822 * WebCore.exp.in: 64823 64824 2010-08-31 Nate Chapin <japhet (a] chromium.org> 64825 64826 Reviewed by Darin Fisher. 64827 64828 Regression in r63528: Custom http headers for loads of type 64829 FrameLoadTypeReloadFromOrigin are not being correctly 64830 propagated to subresource loads. 64831 64832 https://bugs.webkit.org/show_bug.cgi?id=44987 64833 64834 No tests, since DRT doesn't seem to have a way to trigger a 64835 FrameLoadTypeReloadFromOrigin load. 64836 64837 * loader/FrameLoader.cpp: 64838 (WebCore::FrameLoader::addExtraFieldsToRequest): 64839 64840 2010-08-31 Sam Weinig <sam (a] webkit.org> 64841 64842 Reviewed by Darin Adler. 64843 64844 Add ability to count text matches without marking 64845 https://bugs.webkit.org/show_bug.cgi?id=43996 64846 64847 Safari needs to be able to count text matches without triggering lots of repainting. 64848 Rename markAllMatchesForText() to countMatchesForText() and add a markMatches parameter. 64849 64850 * WebCore.exp.in: 64851 * page/Frame.cpp: 64852 (WebCore::Frame::countMatchesForText): 64853 * page/Frame.h: 64854 * page/Page.cpp: 64855 (WebCore::Page::markAllMatchesForText): 64856 64857 2010-08-31 Eric Carlson <eric.carlson (a] apple.com> 64858 64859 Reviewed by Darin Adler. 64860 64861 canPlayType("application/octet-stream") must return "" 64862 https://bugs.webkit.org/show_bug.cgi?id=44985 64863 64864 * platform/graphics/MediaPlayer.cpp: 64865 (WebCore::MediaPlayer::supportsType): Always return IsNotSupported for application/octet-stream 64866 64867 2010-08-31 Martin Robinson <mrobinson (a] igalia.com> 64868 64869 Reviewed by Gustavo Noronha Silva. 64870 64871 [GTK] ScrollbarThemeGtk should respond to theme changes 64872 https://bugs.webkit.org/show_bug.cgi?id=44782 64873 64874 Scrollbar is currently written with the assumption that scrollbars never change 64875 thickness. In GTK+ changing the current theme can alter scrollbar thickness. This 64876 change manually resizes interior frame scrollbar widgets when the GTK+ theme changes. 64877 Since we are now tracking style changes, we may also cache theme properties to avoid 64878 having to call moz_gtk_get_scrollbar_metrics repeatedly during rendering. 64879 64880 * platform/gtk/RenderThemeGtk.cpp: 64881 (WebCore::RenderThemeGtk::gtkScrollbar): Added accessor for the Mozilla theming code's 64882 scrollbar widget. We access it here, because RenderThemGtk takes care of initializing 64883 the Mozilla code. 64884 * platform/gtk/RenderThemeGtk.h: Added accessor declaration. 64885 * platform/gtk/ScrollbarThemeGtk.cpp: 64886 (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Update the style property cache during construction. 64887 (WebCore::ScrollbarThemeGtk::registerScrollbar): Track all interior frame scrollbars. 64888 (WebCore::ScrollbarThemeGtk::unregisterScrollbar): Ditto. 64889 (WebCore::ScrollbarThemeGtk::updateThemeProperties): Added this method which updates the style cache. 64890 (WebCore::gtkStyleSetCallback): Added this signal handler for when the style changes. 64891 (WebCore::ScrollbarThemeGtk::backButtonRect): Use the style cache instead of calling moz_gtk_get_scrollbar_metrics. 64892 (WebCore::ScrollbarThemeGtk::forwardButtonRect): Ditto. 64893 (WebCore::ScrollbarThemeGtk::trackRect): Ditto. 64894 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto. 64895 (WebCore::ScrollbarThemeGtk::thumbRect): Ditto. 64896 (WebCore::ScrollbarThemeGtk::paint): Ditto. 64897 (WebCore::ScrollbarThemeGtk::scrollbarThickness): Ditto. 64898 (WebCore::ScrollbarThemeGtk::buttonSize): Ditto. 64899 (WebCore::ScrollbarThemeGtk::minimumThumbLength): Ditto. 64900 * platform/gtk/ScrollbarThemeGtk.h: Added new method declarations. 64901 64902 2010-08-31 Darin Adler <darin (a] apple.com> 64903 64904 Reviewed by Anders Carlsson. 64905 64906 Web archives are created with a size of 0 due to PassRefPtr mistake 64907 https://bugs.webkit.org/show_bug.cgi?id=44984 64908 rdar://problem/8042283 64909 64910 * loader/archive/ArchiveResource.cpp: 64911 (WebCore::ArchiveResource::ArchiveResource): Merge the three constructors into one. 64912 (WebCore::ArchiveResource::create): Merge the two create functions into one, and 64913 fix the logic so there is no use of a PassRefPtr after it has been passed. 64914 * loader/archive/ArchiveResource.h: Use default arguments instead of overloading 64915 to cut down from three create functions to two. Remove two of the constructors. 64916 64917 2010-08-31 Jian Li <jianli (a] chromium.org> 64918 64919 Reviewed by David Levin. 64920 64921 Expose WorkerContext.createBlobURL and WorkerContext.revokeBlobURL. 64922 https://bugs.webkit.org/show_bug.cgi?id=44972 64923 64924 Test: fast/files/workers/worker-apply-blob-url-to-xhr.html 64925 64926 * page/SecurityOrigin.cpp: 64927 (WebCore::SecurityOrigin::canRequest): 64928 * workers/WorkerContext.cpp: 64929 (WebCore::WorkerContext::createBlobURL): 64930 (WebCore::WorkerContext::revokeBlobURL): 64931 * workers/WorkerContext.h: 64932 * workers/WorkerContext.idl: 64933 64934 2010-08-31 Darin Adler <darin (a] apple.com> 64935 64936 Reviewed by Anders Carlsson. 64937 64938 * editing/TextIterator.cpp: 64939 (WebCore::TextIterator::handleTextBox): 64940 Added a cast so we can mix int and unsigned in a single ?: expression. 64941 This warns with clang, but strangely not with gcc. 64942 64943 * html/parser/HTMLTreeBuilder.cpp: Removed unused functions. 64944 The clang compiler notices and complains about these. If we need them 64945 later we should use Subversion to bring them back. 64946 64947 2010-08-31 Kenneth Russell <kbr (a] google.com> 64948 64949 Reviewed by Simon Fraser. 64950 64951 Add cross product and arithmetic operations to FloatPoint3D 64952 https://bugs.webkit.org/show_bug.cgi?id=44970 64953 64954 Added set, move, and scale operations similar to FloatPoint's, 64955 addition and subtraction operators, length, lengthSquared and 64956 cross product. These changes have been tested with new code to be 64957 added later. 64958 64959 * platform/graphics/FloatPoint3D.cpp: 64960 (WebCore::FloatPoint3D::normalize): 64961 (WebCore::FloatPoint3D::length): 64962 * platform/graphics/FloatPoint3D.h: 64963 (WebCore::FloatPoint3D::set): 64964 (WebCore::FloatPoint3D::move): 64965 (WebCore::FloatPoint3D::scale): 64966 (WebCore::FloatPoint3D::dot): 64967 (WebCore::FloatPoint3D::cross): 64968 (WebCore::FloatPoint3D::lengthSquared): 64969 (WebCore::operator +=): 64970 (WebCore::operator -=): 64971 (WebCore::operator+): 64972 (WebCore::operator-): 64973 (WebCore::operator*): 64974 64975 2010-08-31 Martin Robinson <mrobinson (a] igalia.com> 64976 64977 Reviewed by Gustavo Noronha Silva. 64978 64979 [GTK] Isolate all GTK+ typedefs into one file 64980 https://bugs.webkit.org/show_bug.cgi?id=44900 64981 64982 * platform/graphics/gtk/CairoUtilities.h: Remove GTK+ typedefs. 64983 * platform/gtk/ClipboardGtk.h: Ditto. 64984 * platform/gtk/DataObjectGtk.h: Ditto. 64985 * platform/gtk/GOwnPtrGtk.h: Ditto. 64986 * platform/gtk/GRefPtrGtk.h: Ditto. 64987 * platform/gtk/PasteboardHelper.h: Ditto. 64988 * platform/gtk/PopupMenuGtk.h: Ditto. 64989 * platform/gtk/RenderThemeGtk.h: Ditto. 64990 * platform/gtk/ScrollbarGtk.h: Ditto. 64991 * platform/gtk/gtk2drawing.c: Remove unused Assertions.h. 64992 64993 2010-08-31 Tony Chang <tony (a] chromium.org> 64994 64995 Unreviewed, fix chromium compile. 64996 64997 * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: 64998 64999 2010-08-31 Chris Rogers <crogers (a] google.com> 65000 65001 Reviewed by Kenneth Russell. 65002 65003 audio engine: add FFTConvolver class 65004 https://bugs.webkit.org/show_bug.cgi?id=34907 65005 65006 No new tests since audio API is not yet implemented. 65007 65008 * platform/audio: Added. 65009 * platform/audio/FFTConvolver.cpp: Added. 65010 (WebCore::FFTConvolver::FFTConvolver): 65011 (WebCore::FFTConvolver::process): 65012 (WebCore::FFTConvolver::reset): 65013 * platform/audio/FFTConvolver.h: Added. 65014 (WebCore::FFTConvolver::fftSize): 65015 65016 2010-08-31 Jian Li <jianli (a] chromium.org> 65017 65018 Reviewed by Darin Fisher and David Levin. 65019 65020 Fix ThreadableBlobRegistry methods not to rely on WorkerContext. 65021 https://bugs.webkit.org/show_bug.cgi?id=44971 65022 65023 We could hit an ASSERT when we're performing some blob related cleanup 65024 in ScriptExecutionContext destructor when WorkerContext dies. The fix 65025 is to use isMainThread and callOnMainThread. 65026 65027 * fileapi/ThreadableBlobRegistry.cpp: 65028 (WebCore::BlobRegistryContext::BlobRegistryContext): 65029 (WebCore::registerBlobURLTask): 65030 (WebCore::ThreadableBlobRegistry::registerBlobURL): 65031 (WebCore::registerBlobURLFromTask): 65032 (WebCore::unregisterBlobURLTask): 65033 (WebCore::ThreadableBlobRegistry::unregisterBlobURL): 65034 65035 2010-08-31 Martin Robinson <mrobinson (a] igalia.com> 65036 65037 Reviewed by Gustavo Noronha Silva. 65038 65039 [GTK] Fix 'make dist' in preparation of the 1.3.3 release 65040 https://bugs.webkit.org/show_bug.cgi?id=44978 65041 65042 * GNUmakefile.am: Add missing and moved headers to the sources list. 65043 65044 2010-08-31 Ryuan Choi <ryuan.choi (a] samsung.com> 65045 65046 Reviewed by Antonio Gomes. 65047 65048 [EFL] crashes while dragging any contents 65049 https://bugs.webkit.org/show_bug.cgi?id=44940 65050 65051 Fix crashes caused by returning newly assigned value instead of adoptRef 65052 value. 65053 65054 * page/efl/EventHandlerEfl.cpp: 65055 (WebCore::EventHandler::createDraggingClipboard): 65056 * platform/efl/ClipboardEfl.cpp: 65057 (WebCore::Editor::newGeneralClipboard): 65058 * platform/efl/ClipboardEfl.h: 65059 (WebCore::ClipboardEfl::create): 65060 65061 2010-08-31 Ilya Tikhonovsky <loislo (a] chromium.org> 65062 65063 Reviewed by Yury Semikhatsky. 65064 65065 WebInspector: The parser of Inspector protocol messages should be covered by a test. 65066 65067 The inspector protocol is based on messages in JSON format. 65068 Each message should be a JSON object with a number of properties. 65069 InspectorBackendDispatcher is parsing these messages and should be 65070 able to detect wrong formatted messages. 65071 It has these functionality but no tests for it. 65072 65073 https://bugs.webkit.org/show_bug.cgi?id=44947 65074 65075 65076 * inspector/CodeGeneratorInspector.pm: 65077 65078 2010-08-31 Anton Muhin <antonm (a] chromium.org> 65079 65080 Reviewed by Adam Barth. 65081 65082 [v8] More correct and faster error handling when converting v8 objects to various WebCore strings 65083 https://bugs.webkit.org/show_bug.cgi?id=44678 65084 65085 Split v8 object conversion into two phase: 1st, which can throw an exception, and 65086 2nd, which must always succeed. That allows to report correctly the case when exception 65087 happens. 65088 65089 * bindings/scripts/CodeGeneratorV8.pm: 65090 * bindings/v8/V8Binding.cpp: 65091 (WebCore::int32ToWebCoreString): 65092 (WebCore::v8NonStringValueToWebCoreString): 65093 * bindings/v8/V8Binding.h: 65094 (WebCore::V8ParameterBase::operator String): 65095 (WebCore::V8ParameterBase::operator AtomicString): 65096 (WebCore::V8ParameterBase::V8ParameterBase): 65097 (WebCore::V8ParameterBase::prepareBase): 65098 (WebCore::V8ParameterBase::object): 65099 (WebCore::V8ParameterBase::setString): 65100 (WebCore::V8ParameterBase::toString): 65101 (WebCore::): 65102 (WebCore::::prepare): 65103 * bindings/v8/custom/V8BindingMacros.h: 65104 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: 65105 (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback): 65106 * bindings/v8/cstom/V8DeviceOrientationEventCustom.cpp: 65107 (WebCore::V8DeviceMotionEvent::initDeviceOrientationEventCallback): 65108 65109 2010-08-30 Ilya Tikhonovsky <loislo (a] chromium.org> 65110 65111 Reviewed by Joseph Pecoraro. 65112 65113 WebInspector: it'd be better to introduce inspector API related tests. 65114 65115 As far as we have some kind of API for Inspector 65116 it'd be better to have API related tests. This is the test 65117 for API wrappers. These wrappers are tracking the types of arguments 65118 of API functions. 65119 65120 https://bugs.webkit.org/show_bug.cgi?id=44875 65121 65122 Test: inspector/protocol-error.html 65123 65124 * inspector/CodeGeneratorInspector.pm: 65125 * inspector/front-end/inspector.js: 65126 (WebInspector_syncDispatch): 65127 (WebInspector.reportProtocolError): 65128 65129 2010-08-31 Sheriff Bot <webkit.review.bot (a] gmail.com> 65130 65131 Unreviewed, rolling out r66484. 65132 http://trac.webkit.org/changeset/66484 65133 https://bugs.webkit.org/show_bug.cgi?id=44966 65134 65135 Broke EFL build (Requested by acidx on #webkit). 65136 65137 * CMakeLists.txt: 65138 65139 2010-08-31 Ojan Vafai <ojan (a] chromium.org> 65140 65141 Reviewed by Tony Chang. 65142 65143 deduplicate code from Node::checkReplaceChild and Node::checkAddChild 65144 https://bugs.webkit.org/show_bug.cgi?id=44962 65145 65146 Remove duplicate code in preparation for fixing https://bugs.webkit.org/show_bug.cgi?id=19524 65147 No new tests since there is no change in functionality. 65148 65149 * dom/Node.cpp: 65150 (WebCore::isChildTypeAllowed): 65151 (WebCore::Node::canReplaceChild): 65152 (WebCore::checkAcceptChild): 65153 (WebCore::transferOwnerDocument): 65154 (WebCore::Node::checkReplaceChild): 65155 (WebCore::Node::checkAddChild): 65156 65157 2010-08-30 Zhenyao Mo <zmo (a] google.com> 65158 65159 Reviewed by Kenneth Russell. 65160 65161 [Chromium] bindTexture(TEXTURE_CUBE_MAP) shouldn't generate errors with valid cubemap texture 65162 https://bugs.webkit.org/show_bug.cgi?id=44922 65163 65164 * html/canvas/WebGLRenderingContext.cpp: Remove TEXTURE_WRAP_R code. 65165 (WebCore::WebGLRenderingContext::bindTexture): 65166 * html/canvas/WebGLTexture.cpp: Remove the code for tracking TEXTURE_WRAP_R. 65167 (WebCore::WebGLTexture::WebGLTexture): 65168 * html/canvas/WebGLTexture.h: Ditto. 65169 65170 2010-08-31 Jian Li <jianli (a] chromium.org> 65171 65172 Rubber-stamped by David Levin. 65173 65174 Rename addTwoCStrings to concatenateTwoCStrings. 65175 65176 * fileapi/BlobBuilder.cpp: 65177 (WebCore::concatenateTwoCStrings): 65178 (WebCore::BlobBuilder::append): 65179 65180 2010-08-31 Jian Li <jianli (a] chromium.org> 65181 65182 Reviewed by Darin Fisher. 65183 65184 Improve BlobBuilder to combine adjacent strings. 65185 https://bugs.webkit.org/show_bug.cgi?id=44884 65186 65187 * fileapi/BlobBuilder.cpp: 65188 (WebCore::addTwoCStrings): 65189 (WebCore::BlobBuilder::append): 65190 65191 2010-08-31 Darin Adler <darin (a] apple.com> 65192 65193 Reviewed by Simon Fraser. 65194 65195 Make DOM classes start with a reference count of 1, like all other RefCounted 65196 https://bugs.webkit.org/show_bug.cgi?id=28068 65197 65198 * dom/Document.cpp: 65199 (WebCore::Document::accessSVGExtensions): Use adoptPtr instead of set. 65200 65201 * dom/Document.h: Removed initialRefCount in Node constructor. It's always 1 now. 65202 65203 * dom/Node.h: Removed CreateWithZeroRefCountFlag, CreateStyledElementZeroRefCount, 65204 CreateSVGElementZeroRefCount, and initialRefCount. 65205 65206 * platform/TreeShared.h: Removed initialRefCount argument. It's always 1 now. 65207 65208 * rendering/RenderSVGShadowTreeRootContainer.cpp: 65209 (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement): Use create 65210 instead of new. 65211 65212 * rendering/SVGResources.h: Inherit from Noncopyable. 65213 65214 * rendering/SVGResourcesCache.cpp: 65215 (WebCore::SVGResourcesCache::~SVGResourcesCache): Removed unneeded special 65216 case code. 65217 65218 * rendering/SVGShadowTreeElements.cpp: 65219 (WebCore::SVGShadowTreeContainerElement::create): Added. 65220 (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Made argument 65221 type more specific. 65222 (WebCore::SVGShadowTreeRootElement::create): Added. 65223 * rendering/SVGShadowTreeElements.h: Added create functions, and made the 65224 argument type more specific. 65225 65226 * svg/SVGDocumentExtensions.cpp: 65227 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): Use adoptPtr. 65228 * svg/graphics/SVGImage.cpp: 65229 (WebCore::SVGImage::dataChanged): Use adoptPtr instead of set. 65230 65231 * svg/SVGElement.cpp: 65232 (WebCore::SVGElement::SVGElement): Use CreateSVGElement instead of 65233 CreateSVGElementZeroRefCount. 65234 (WebCore::SVGElement::create): Use adoptRef. 65235 65236 * wml/WMLElement.cpp: 65237 (WebCore::WMLElement::WMLElement): Use CreateStyledElement instead of 65238 CreateStyledElementZeroRefCount. 65239 (WebCore::WMLElement::create): Use adoptRef. 65240 65241 * svg/SVGAElement.cpp: 65242 (WebCore::SVGAElement::create): 65243 * svg/SVGAltGlyphElement.cpp: 65244 (WebCore::SVGAltGlyphElement::create): 65245 * svg/SVGAnimateColorElement.cpp: 65246 (WebCore::SVGAnimateColorElement::create): 65247 * svg/SVGAnimateElement.cpp: 65248 (WebCore::SVGAnimateElement::create): 65249 * svg/SVGAnimateMotionElement.cpp: 65250 (WebCore::SVGAnimateMotionElement::create): 65251 * svg/SVGAnimateTransformElement.cpp: 65252 (WebCore::SVGAnimateTransformElement::create): 65253 * svg/SVGCircleElement.cpp: 65254 (WebCore::SVGCircleElement::create): 65255 * svg/SVGClipPathElement.cpp: 65256 (WebCore::SVGClipPathElement::create): 65257 * svg/SVGCursorElement.cpp: 65258 (WebCore::SVGCursorElement::create): 65259 * svg/SVGDefsElement.cpp: 65260 (WebCore::SVGDefsElement::create): 65261 * svg/SVGDescElement.cpp: 65262 (WebCore::SVGDescElement::create): 65263 * svg/SVGEllipseElement.cpp: 65264 (WebCore::SVGEllipseElement::create): 65265 * svg/SVGFEBlendElement.cpp: 65266 (WebCore::SVGFEBlendElement::create): 65267 * svg/SVGFEColorMatrixElement.cpp: 65268 (WebCore::SVGFEColorMatrixElement::create): 65269 * svg/SVGFEComponentTransferElement.cpp: 65270 (WebCore::SVGFEComponentTransferElement::create): 65271 * svg/SVGFECompositeElement.cpp: 65272 (WebCore::SVGFECompositeElement::create): 65273 * svg/SVGFEConvolveMatrixElement.cpp: 65274 (WebCore::SVGFEConvolveMatrixElement::create): 65275 * svg/SVGFEDiffuseLightingElement.cpp: 65276 (WebCore::SVGFEDiffuseLightingElement::create): 65277 * svg/SVGFEDisplacementMapElement.cpp: 65278 (WebCore::SVGFEDisplacementMapElement::create): 65279 * svg/SVGFEDistantLightElement.cpp: 65280 (WebCore::SVGFEDistantLightElement::create): 65281 * svg/SVGFEFloodElement.cpp: 65282 (WebCore::SVGFEFloodElement::create): 65283 * svg/SVGFEFuncAElement.cpp: 65284 (WebCore::SVGFEFuncAElement::create): 65285 * svg/SVGFEFuncBElement.cpp: 65286 (WebCore::SVGFEFuncBElement::create): 65287 * svg/SVGFEFuncGElement.cpp: 65288 (WebCore::SVGFEFuncGElement::create): 65289 * svg/SVGFEFuncRElement.cpp: 65290 (WebCore::SVGFEFuncRElement::create): 65291 * svg/SVGFEGaussianBlurElement.cpp: 65292 (WebCore::SVGFEGaussianBlurElement::create): 65293 * svg/SVGFEImageElement.cpp: 65294 (WebCore::SVGFEImageElement::create): 65295 * svg/SVGFEMergeElement.cpp: 65296 (WebCore::SVGFEMergeElement::create): 65297 * svg/SVGFEMergeNodeElement.cpp: 65298 (WebCore::SVGFEMergeNodeElement::create): 65299 * svg/SVGFEMorphologyElement.cpp: 65300 (WebCore::SVGFEMorphologyElement::create): 65301 * svg/SVGFEOffsetElement.cpp: 65302 (WebCore::SVGFEOffsetElement::create): 65303 * svg/SVGFEPointLightElement.cpp: 65304 (WebCore::SVGFEPointLightElement::create): 65305 * svg/SVGFESpecularLightingElement.cpp: 65306 (WebCore::SVGFESpecularLightingElement::create): 65307 * svg/SVGFESpotLightElement.cpp: 65308 (WebCore::SVGFESpotLightElement::create): 65309 * svg/SVGFETileElement.cpp: 65310 (WebCore::SVGFETileElement::create): 65311 * svg/SVGFETurbulenceElement.cpp: 65312 (WebCore::SVGFETurbulenceElement::create): 65313 * svg/SVGFilterElement.cpp: 65314 (WebCore::SVGFilterElement::create): 65315 * svg/SVGFontElement.cpp: 65316 (WebCore::SVGFontElement::create): 65317 * svg/SVGFontFaceElement.cpp: 65318 (WebCore::SVGFontFaceElement::create): 65319 * svg/SVGFontFaceFormatElement.cpp: 65320 (WebCore::SVGFontFaceFormatElement::create): 65321 * svg/SVGFontFaceNameElement.cpp: 65322 (WebCore::SVGFontFaceNameElement::create): 65323 * svg/SVGFontFaceSrcElement.cpp: 65324 (WebCore::SVGFontFaceSrcElement::create): 65325 * svg/SVGFontFaceUriElement.cpp: 65326 (WebCore::SVGFontFaceUriElement::create): 65327 * svg/SVGForeignObjectElement.cpp: 65328 (WebCore::SVGForeignObjectElement::create): 65329 * svg/SVGGElement.cpp: 65330 (WebCore::SVGGElement::create): 65331 * svg/SVGGlyphElement.cpp: 65332 (WebCore::SVGGlyphElement::create): 65333 * svg/SVGHKernElement.cpp: 65334 (WebCore::SVGHKernElement::create): 65335 * svg/SVGImageElement.cpp: 65336 (WebCore::SVGImageElement::create): 65337 * svg/SVGLineElement.cpp: 65338 (WebCore::SVGLineElement::create): 65339 * svg/SVGLinearGradientElement.cpp: 65340 (WebCore::SVGLinearGradientElement::create): 65341 * svg/SVGMPathElement.cpp: 65342 (WebCore::SVGMPathElement::create): 65343 * svg/SVGMarkerElement.cpp: 65344 (WebCore::SVGMarkerElement::create): 65345 * svg/SVGMaskElement.cpp: 65346 (WebCore::SVGMaskElement::create): 65347 * svg/SVGMetadataElement.cpp: 65348 (WebCore::SVGMetadataElement::create): 65349 * svg/SVGMissingGlyphElement.cpp: 65350 (WebCore::SVGMissingGlyphElement::create): 65351 * svg/SVGPathElement.cpp: 65352 (WebCore::SVGPathElement::create): 65353 * svg/SVGPatternElement.cpp: 65354 (WebCore::SVGPatternElement::create): 65355 * svg/SVGPolygonElement.cpp: 65356 (WebCore::SVGPolygonElement::create): 65357 * svg/SVGPolylineElement.cpp: 65358 (WebCore::SVGPolylineElement::create): 65359 * svg/SVGRadialGradientElement.cpp: 65360 (WebCore::SVGRadialGradientElement::create): 65361 * svg/SVGRectElement.cpp: 65362 (WebCore::SVGRectElement::create): 65363 * svg/SVGSVGElement.cpp: 65364 (WebCore::SVGSVGElement::create): 65365 (WebCore::SVGSVGElement::currentView): 65366 * svg/SVGScriptElement.cpp: 65367 (WebCore::SVGScriptElement::create): 65368 * svg/SVGSetElement.cpp: 65369 (WebCore::SVGSetElement::create): 65370 * svg/SVGStopElement.cpp: 65371 (WebCore::SVGStopElement::create): 65372 * svg/SVGStyleElement.cpp: 65373 (WebCore::SVGStyleElement::create): 65374 * svg/SVGSwitchElement.cpp: 65375 (WebCore::SVGSwitchElement::create): 65376 * svg/SVGSymbolElement.cpp: 65377 (WebCore::SVGSymbolElement::create): 65378 * svg/SVGTRefElement.cpp: 65379 (WebCore::SVGTRefElement::create): 65380 * svg/SVGTSpanElement.cpp: 65381 (WebCore::SVGTSpanElement::create): 65382 * svg/SVGTextElement.cpp: 65383 (WebCore::SVGTextElement::create): 65384 * svg/SVGTextPathElement.cpp: 65385 (WebCore::SVGTextPathElement::create): 65386 * svg/SVGTitleElement.cpp: 65387 (WebCore::SVGTitleElement::create): 65388 * svg/SVGUseElement.cpp: 65389 (WebCore::SVGUseElement::create): 65390 (WebCore::SVGUseElement::expandUseElementsInShadowTree): 65391 * svg/SVGVKernElement.cpp: 65392 (WebCore::SVGVKernElement::create): 65393 * svg/SVGViewElement.cpp: 65394 (WebCore::SVGViewElement::create): 65395 * wml/WMLAElement.cpp: 65396 (WebCore::WMLAElement::create): 65397 * wml/WMLAccessElement.cpp: 65398 (WebCore::WMLAccessElement::create): 65399 * wml/WMLAnchorElement.cpp: 65400 (WebCore::WMLAnchorElement::create): 65401 * wml/WMLBRElement.cpp: 65402 (WebCore::WMLBRElement::create): 65403 * wml/WMLCardElement.cpp: 65404 (WebCore::WMLCardElement::create): 65405 * wml/WMLDoElement.cpp: 65406 (WebCore::WMLDoElement::create): 65407 * wml/WMLDocument.h: 65408 (WebCore::WMLDocument::create): 65409 * wml/WMLFieldSetElement.cpp: 65410 (WebCore::WMLFieldSetElement::create): 65411 * wml/WMLFormControlElement.cpp: 65412 (WebCore::WMLFormControlElement::create): 65413 * wml/WMLGoElement.cpp: 65414 (WebCore::WMLGoElement::create): 65415 * wml/WMLImageElement.cpp: 65416 (WebCore::WMLImageElement::create): 65417 * wml/WMLInputElement.cpp: 65418 (WebCore::WMLInputElement::create): 65419 * wml/WMLInsertedLegendElement.cpp: 65420 (WebCore::WMLInsertedLegendElement::create): 65421 * wml/WMLIntrinsicEvent.cpp: 65422 (WebCore::WMLIntrinsicEvent::create): 65423 * wml/WMLMetaElement.cpp: 65424 (WebCore::WMLMetaElement::create): 65425 * wml/WMLNoopElement.cpp: 65426 (WebCore::WMLNoopElement::create): 65427 * wml/WMLOnEventElement.cpp: 65428 (WebCore::WMLOnEventElement::create): 65429 * wml/WMLOptGroupElement.cpp: 65430 (WebCore::WMLOptGroupElement::create): 65431 * wml/WMLOptionElement.cpp: 65432 (WebCore::WMLOptionElement::create): 65433 * wml/WMLPElement.cpp: 65434 (WebCore::WMLPElement::create): 65435 * wml/WMLPostfieldElement.cpp: 65436 (WebCore::WMLPostfieldElement::create): 65437 * wml/WMLPrevElement.cpp: 65438 (WebCore::WMLPrevElement::create): 65439 * wml/WMLRefreshElement.cpp: 65440 (WebCore::WMLRefreshElement::create): 65441 * wml/WMLSelectElement.cpp: 65442 (WebCore::WMLSelectElement::create): 65443 * wml/WMLSetvarElement.cpp: 65444 (WebCore::WMLSetvarElement::create): 65445 * wml/WMLTableElement.cpp: 65446 (WebCore::WMLTableElement::create): 65447 * wml/WMLTaskElement.cpp: 65448 (WebCore::WMLTaskElement::create): 65449 * wml/WMLTemplateElement.cpp: 65450 (WebCore::WMLTemplateElement::create): 65451 * wml/WMLTimerElement.cpp: 65452 (WebCore::WMLTimerElement::create): 65453 Use adoptRef. 65454 65455 2010-08-31 Justin Schuh <jschuh (a] chromium.org> 65456 65457 Reviewed by Nate Chapin. 65458 65459 Local frame loads should check against origin (not referrer) 65460 https://bugs.webkit.org/show_bug.cgi?id=44888 65461 65462 Test: fast/frames/iframe-no-src-local-origin-allow.html 65463 65464 * loader/SubframeLoader.cpp: 65465 (WebCore::SubframeLoader::loadSubframe): 65466 65467 2010-08-25 Zhenyao Mo <zmo (a] google.com> 65468 65469 Reviewed by Kenneth Russell. 65470 65471 Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (cg) 65472 https://bugs.webkit.org/show_bug.cgi?id=44566 65473 65474 * platform/graphics/cg/GraphicsContext3DCG.cpp: 65475 (WebCore::GraphicsContext3D::getImageData): Fix the premultiplyAlpha issue for cg. 65476 65477 2010-08-31 Dave Hyatt <hyatt (a] apple.com> 65478 65479 Reviewed by Adam Roben. 65480 65481 https://bugs.webkit.org/show_bug.cgi?id=44956, paginate block-level replaced elements. 65482 <rdar://problem/8000991> Images with display:block get split between columns or pages 65483 65484 Added fast/multicol/paginate-block-replaced.html 65485 65486 * rendering/RenderBlock.cpp: 65487 (WebCore::RenderBlock::paintChildren): 65488 65489 2010-08-31 Alexey Proskuryakov <ap (a] apple.com> 65490 65491 Reviewed by Darin Adler. 65492 65493 https://bugs.webkit.org/show_bug.cgi?id=36515 65494 CSS style definitions are ignored if they just follow a "@charset" which appears in lines 65495 other than the first line in stylesheet. 65496 65497 Test: fast/css/misplaced-charset.html 65498 65499 * css/CSSGrammar.y: Ignore a misplaced charset rule without consuming extra characters and 65500 thus breaking subsequent rules. 65501 65502 2010-08-31 Patrick Gansterer <paroga (a] paroga.com> 65503 65504 Reviewed by Antonio Gomes. 65505 65506 [CMake] Add IF (ENABLE_MATHML) around MathML sources 65507 https://bugs.webkit.org/show_bug.cgi?id=44927 65508 65509 * CMakeLists.txt: 65510 65511 2010-08-31 Patrick Gansterer <paroga (a] paroga.com> 65512 65513 Reviewed by Kenneth Rohde Christiansen. 65514 65515 [CMake] Unify GENERATE_DOM_NAMES code 65516 https://bugs.webkit.org/show_bug.cgi?id=44842 65517 65518 * CMakeLists.txt: Added property svn:eol-style. 65519 65520 2010-08-31 Daniel Cheng <dcheng (a] chromium.org> 65521 65522 Reviewed by Tony Chang. 65523 65524 [chromium] Add an interface for platform copy/paste drag/drop data objects 65525 https://bugs.webkit.org/show_bug.cgi?id=44914 65526 65527 Currently, Chromium only supports a few hardcoded data types in 65528 event.dataTransfer. This is the first of several patches to add support 65529 for arbitrary data types. 65530 65531 No new tests. 65532 65533 * WebCore.gypi: 65534 * platform/chromium/ChromiumDataObjectNew.h: Added. 65535 * platform/chromium/ClipboardChromium.cpp: 65536 65537 2010-08-30 Andrey Kosyakov <caseq (a] chromium.org> 65538 65539 Reviewed by Yury Semikhatsky. 65540 65541 Web Inspector: add audits support to extension API 65542 Exposed (late) adding of categories from AuditPanel. 65543 Removed indexOfObjectInListSortedByFunction in favor of 65544 insertionIndexForObjectInListSortedByFunction (the former had 65545 weird interface always returning negative numbers and was only used in 65546 the latter). 65547 https://bugs.webkit.org/show_bug.cgi?id=44518 65548 65549 Tests: inspector/extensions-audits-api.html 65550 inspector/extensions-audits.html 65551 65552 * WebCore.gypi: 65553 * WebCore.vcproj/WebCore.vcproj: 65554 * inspector/front-end/AuditFormatters.js: Added. 65555 (WebInspector.applyFormatters): 65556 (WebInspector.AuditFormatters.text): 65557 (WebInspector.AuditFormatters.snippet): 65558 (WebInspector.AuditFormatters.concat): 65559 (WebInspector.AuditFormatters.url): 65560 * inspector/front-end/AuditLauncherView.js: 65561 (WebInspector.AuditLauncherView): 65562 (WebInspector.AuditLauncherView.prototype.addCategory.compareCategories): 65563 (WebInspector.AuditLauncherView.prototype.addCategory): 65564 (WebInspector.AuditLauncherView.prototype._launchButtonClicked): 65565 (WebInspector.AuditLauncherView.prototype._selectAllClicked): 65566 (WebInspector.AuditLauncherView.prototype._categoryClicked): 65567 (WebInspector.AuditLauncherView.prototype._createCategoryElement): 65568 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 65569 * inspector/front-end/AuditResultView.js: 65570 (WebInspector.AuditCategoryResultPane.prototype._appendResult): 65571 * inspector/front-end/AuditsPanel.js: 65572 (WebInspector.AuditsPanel): 65573 (WebInspector.AuditsPanel.prototype.addCategory): 65574 (WebInspector.AuditsPanel.prototype.getCategory): 65575 (WebInspector.AuditsPanel.prototype._executeAudit): 65576 (WebInspector.AuditCategory.prototype.run): 65577 * inspector/front-end/ExtensionAPI.js: 65578 (WebInspector.injectedExtensionAPI): 65579 (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype.addListener): 65580 (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype._fire): 65581 (WebInspector.injectedExtensionAPI.EventSinkImpl.prototype._dispatch): 65582 (WebInspector.injectedExtensionAPI.EventSink): 65583 (WebInspector.injectedExtensionAPI.InspectorExtensionAPI): 65584 (WebInspector.injectedExtensionAPI.Panels.prototype.create): 65585 (WebInspector.injectedExtensionAPI.Audits): 65586 (WebInspector.injectedExtensionAPI.Audits.prototype.addCategory): 65587 (WebInspector.injectedExtensionAPI.AuditCategory.customDispatch): 65588 (WebInspector.injectedExtensionAPI.AuditCategory): 65589 (WebInspector.injectedExtensionAPI.AuditCategoryImpl): 65590 (WebInspector.injectedExtensionAPI.AuditResult): 65591 (WebInspector.injectedExtensionAPI.AuditResult.prototype.get Severity): 65592 (WebInspector.injectedExtensionAPI.AuditResultImpl): 65593 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.addResult): 65594 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.createResult): 65595 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.done): 65596 (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype._nodeFactory): 65597 (WebInspector.injectedExtensionAPI.AuditResultNode): 65598 (WebInspector.injectedExtensionAPI.AuditResultNode.prototype.addChild): 65599 * inspector/front-end/ExtensionAuditCategory.js: Added. 65600 (WebInspector.ExtensionAuditCategory): 65601 (WebInspector.ExtensionAuditCategory.prototype.get id): 65602 (WebInspector.ExtensionAuditCategory.prototype.get displayName): 65603 (WebInspector.ExtensionAuditCategory.prototype.get ruleCount): 65604 (WebInspector.ExtensionAuditCategory.prototype.run): 65605 (WebInspector.ExtensionAuditCategoryResults): 65606 (WebInspector.ExtensionAuditCategoryResults.prototype.get complete): 65607 (WebInspector.ExtensionAuditCategoryResults.prototype.cancel): 65608 (WebInspector.ExtensionAuditCategoryResults.prototype.addResult): 65609 (WebInspector.ExtensionAuditCategoryResults.prototype._addNode): 65610 (WebInspector.ExtensionAuditCategoryResults.prototype._addResult): 65611 * inspector/front-end/ExtensionCommon.js: Added. 65612 (WebInspector.commonExtensionSymbols): 65613 * inspector/front-end/ExtensionServer.js: 65614 (WebInspector.ExtensionServer): 65615 (WebInspector.ExtensionServer.prototype.startAuditRun): 65616 (WebInspector.ExtensionServer.prototype.stopAuditRun): 65617 (WebInspector.ExtensionServer.prototype._postNotification): 65618 (WebInspector.ExtensionServer.prototype._onAddAuditCategory): 65619 (WebInspector.ExtensionServer.prototype._onAddAuditResult): 65620 (WebInspector.ExtensionServer.prototype._onStopAuditCategoryRun): 65621 (WebInspector.ExtensionServer.prototype._addExtensions): 65622 (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript): 65623 (WebInspector.ExtensionStatus): 65624 * inspector/front-end/WebKit.qrc: 65625 * inspector/front-end/inspector.html: 65626 * inspector/front-end/utilities.js: 65627 (): 65628 65629 2010-08-31 Justin Schuh <jschuh (a] chromium.org> 65630 65631 Reviewed by Nate Chapin. 65632 65633 Remove unused canReferToParentFrameEncoding() function from FrameLoader.cpp 65634 https://bugs.webkit.org/show_bug.cgi?id=44895 65635 65636 No new tests; no behavior changed. 65637 65638 * loader/FrameLoader.cpp: 65639 65640 2010-08-31 Jeremy Orlow <jorlow (a] chromium.org> 65641 65642 Build fix. 65643 65644 * storage/IDBObjectStoreBackendImpl.cpp: 65645 (WebCore::IDBObjectStoreBackendImpl::openCursor): 65646 65647 2010-08-24 Jeremy Orlow <jorlow (a] chromium.org> 65648 65649 Reviewed by Steve Block. 65650 65651 Implement the rest of IDBCursors + make them persistent 65652 https://bugs.webkit.org/show_bug.cgi?id=44546 65653 65654 Because the old (memory only) backend didn't support ranges, IDBCursors 65655 were never really finished. This completes them on top of SQLite like 65656 the rest of IndexedDB. 65657 65658 Test: storage/indexeddb/objectstore-cursor.html 65659 65660 * storage/IDBCursor.cpp: 65661 (WebCore::IDBCursor::value): 65662 * storage/IDBCursorBackendImpl.cpp: 65663 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): 65664 (WebCore::IDBCursorBackendImpl::key): 65665 (WebCore::IDBCursorBackendImpl::value): 65666 (WebCore::IDBCursorBackendImpl::update): 65667 (WebCore::IDBCursorBackendImpl::continueFunction): 65668 (WebCore::IDBCursorBackendImpl::remove): 65669 (WebCore::IDBCursorBackendImpl::loadCurrentRow): 65670 * storage/IDBCursorBackendImpl.h: 65671 (WebCore::IDBCursorBackendImpl::create): 65672 * storage/IDBCursorBackendInterface.h: 65673 * storage/IDBKey.cpp: 65674 (WebCore::IDBKey::isEqual): 65675 * storage/IDBKey.h: 65676 * storage/IDBKeyRange.cpp: 65677 (WebCore::IDBKeyRange::leftBound): 65678 (WebCore::IDBKeyRange::rightBound): 65679 (WebCore::IDBKeyRange::bound): 65680 * storage/IDBObjectStoreBackendImpl.cpp: 65681 (WebCore::cursorWhereFragment): 65682 (WebCore::IDBObjectStoreBackendImpl::openCursor): 65683 65684 2010-08-27 John Gregg <johnnyg (a] google.com> 65685 65686 Reviewed by David Levin. 65687 65688 Notifications should support a click event 65689 https://bugs.webkit.org/show_bug.cgi?id=44800 65690 65691 Test: fast/notifications/notifications-click-event.html 65692 65693 * notifications/Notification.h: 65694 * notifications/Notification.idl: 65695 65696 2010-08-31 Kent Tamura <tkent (a] chromium.org> 65697 65698 Reviewed by Adam Barth. 65699 65700 [V8] Custom binding for "dataset" 65701 https://bugs.webkit.org/show_bug.cgi?id=44930 65702 65703 * WebCore.gyp/WebCore.gyp: Remove the exclusion of DOMStringMap.idl. 65704 * WebCore.gypi: Add V8DOMStringMapCustom.cpp. 65705 * bindings/v8/custom/V8DOMStringMapCustom.cpp: Added. 65706 (WebCore::V8DOMStringMap::namedPropertyQuery): 65707 (WebCore::V8DOMStringMap::namedPropertyGetter): 65708 (WebCore::V8DOMStringMap::namedPropertyEnumerator): 65709 (WebCore::V8DOMStringMap::namedPropertyDeleter): 65710 (WebCore::V8DOMStringMap::namedPropertySetter): 65711 * dom/Element.idl: Remove V8 exclusion. 65712 * page/DOMWindow.idl: ditto. 65713 65714 2010-08-31 Jian Li <jianli (a] chromium.org> 65715 65716 Fix chromium build break. 65717 65718 * page/DOMWindow.h: 65719 65720 2010-08-31 Adam Barth <abarth (a] webkit.org> 65721 65722 Reviewed by Eric Seidel. 65723 65724 Stale document crashes at multiple URLs (with new parser) 65725 https://bugs.webkit.org/show_bug.cgi?id=44885 65726 65727 We're not supposed to load resources in detached documents. According 65728 to several locations I examined, it's the job of the caller of 65729 DocLoader to check this invariant. Like most code dealing with 65730 detached documents, this check isn't overly consistent. At some point, 65731 we'll need to rationalize all the different patterns here. However, at 65732 this point, this patch appears correct because it matches what we do 65733 for <link rel="stylesheet">. 65734 65735 Test: fast/dom/HTMLLinkElement/prefetch-detached.html 65736 65737 * html/HTMLLinkElement.cpp: 65738 (WebCore::HTMLLinkElement::process): 65739 * loader/DocLoader.cpp: 65740 (WebCore::DocLoader::requestLinkPrefetch): 65741 65742 2010-08-31 Jian Li <jianli (a] chromium.org> 65743 65744 Reviewed by David Levin. 65745 65746 Expose window.createBlobURL and window.revokeBlobURL. 65747 https://bugs.webkit.org/show_bug.cgi?id=44908 65748 65749 Tests: fast/files/apply-blob-url-to-img.html 65750 fast/files/apply-blob-url-to-xhr.html 65751 65752 * page/DOMWindow.cpp: 65753 (WebCore::DOMWindow::createBlobURL): 65754 (WebCore::DOMWindow::revokeBlobURL): 65755 * page/DOMWindow.h: 65756 * page/DOMWindow.idl: 65757 * xml/XMLHttpRequest.cpp: 65758 (WebCore::XMLHttpRequest::createRequest): 65759 65760 2010-08-31 Jian Li <jianli (a] chromium.org> 65761 65762 Reviewed by David Levin. 65763 65764 Support FileReaderSync in workers. 65765 https://bugs.webkit.org/show_bug.cgi?id=44657 65766 65767 Also add FileException interface and make Blob/File/FileError useable in 65768 workers. 65769 65770 Tests: fast/files/workers/worker-read-blob-async.html 65771 fast/files/workers/worker-read-blob-sync.html 65772 fast/files/workers/worker-read-file-async.html 65773 fast/files/workers/worker-read-file-sync.html 65774 65775 * DerivedSources.cpp: 65776 * DerivedSources.make: 65777 * WebCore.gypi: 65778 * WebCore.pro: 65779 * WebCore.vcproj/WebCore.vcproj: 65780 * WebCore.xcodeproj/project.pbxproj: 65781 * fileapi/Blob.idl: Added NoStaticTables attribute. 65782 * fileapi/File.idl: Added NoStaticTables attribute. 65783 * fileapi/FileError.idl: Added NoStaticTables attribute. 65784 * fileapi/FileException.h: Added. 65785 * fileapi/FileException.idl: Added. 65786 * fileapi/FileReaderSync.cpp: Added. 65787 * fileapi/FileReaderSync.h: Added. 65788 * fileapi/FileReaderSync.idl: Added. 65789 * workers/WorkerContext.idl: Expose FileReaderSync and BlodBuilder in workers. 65790 65791 2010-08-30 Philippe Normand <pnormand (a] igalia.com> 65792 65793 Reviewed by Martin Robinson. 65794 65795 [GTK] Buffered ranges drawing support 65796 https://bugs.webkit.org/show_bug.cgi?id=44869 65797 65798 Refactored the media slider track painting code to support 65799 multiple buffered ranges painting. This change introduces no 65800 functional regression. 65801 65802 * platform/gtk/RenderThemeGtk.cpp: 65803 (WebCore::RenderThemeGtk::paintMediaSliderTrack): 65804 65805 2010-08-30 Mihai Parparita <mihaip (a] chromium.org> 65806 65807 Reviewed by Adam Barth. 65808 65809 HISTORY_ALWAYS_ASYNC should be removed (history should always be async) 65810 https://bugs.webkit.org/show_bug.cgi?id=44315 65811 65812 Remove check in RedirectScheduler::scheduleHistoryNavigation that would 65813 dispatch some navigations synchronously. 65814 65815 Test: fast/history/history-traversal-is-asynchronous.html 65816 65817 * loader/RedirectScheduler.cpp: 65818 (WebCore::RedirectScheduler::scheduleHistoryNavigation): 65819 65820 2010-08-30 Jian Li <jianli (a] chromium.org> 65821 65822 Try to fix break again. 65823 65824 * fileapi/ThreadableBlobRegistry.cpp: 65825 (WebCore::ThreadableBlobRegistry::registerBlobURL): 65826 (WebCore::ThreadableBlobRegistry::unregisterBlobURL): 65827 65828 2010-08-30 Jian Li <jianli (a] chromium.org> 65829 65830 Fix another build break. Also fix directory upload test break. 65831 65832 * fileapi/File.cpp: 65833 (WebCore::File::File): 65834 * fileapi/ThreadableBlobRegistry.cpp: 65835 65836 2010-08-30 Jian Li <jianli (a] chromium.org> 65837 65838 Fix build break. 65839 65840 * xml/XMLHttpRequest.cpp: 65841 (WebCore::XMLHttpRequest::send): 65842 65843 2010-08-30 Jian Li <jianli (a] chromium.org> 65844 65845 Fix qt/gtk build break. 65846 65847 * platform/network/BlobRegistryImpl.cpp: 65848 65849 2010-08-30 Jian Li <jianli (a] chromium.org> 65850 65851 Reviewed by Darin Fisher. 65852 65853 Switch the Blob implementation to using the blob data registration model 65854 https://bugs.webkit.org/show_bug.cgi?id=44389 65855 65856 Tests: fast/files/read-blob-async.html 65857 fast/files/read-file-async.html 65858 65859 With this switch, File/Blob/BlobBuilder are changed to register the blob 65860 data. FileReader is changed to route through loading the blob resource. 65861 FormData is also updated to take BlobData. The WebKit mac implementation 65862 is updated to resolve the blob references in the BlobData. 65863 65864 * CMakeLists.txt: Update the project file to remove BlobItem.*. 65865 * GNUmakefile.am: Update the project file to remove BlobItem.*. 65866 * WebCore.gypi: Update the project file to remove BlobItem.*. 65867 * WebCore.pro: Update the project file to remove BlobItem.*. 65868 * WebCore.vcproj/WebCore.vcproj: Update the project file to remove BlobItem.*. 65869 * WebCore.xcodeproj/project.pbxproj: Update the project file to remove BlobItem.*. 65870 * fileapi/Blob.cpp: Switch to using BlobData. 65871 (WebCore::Blob::Blob): 65872 (WebCore::Blob::slice): 65873 * fileapi/Blob.h: Switch to using BlobData. 65874 (WebCore::Blob::create): 65875 (WebCore::Blob::size): 65876 (WebCore::Blob::isFile): 65877 * fileapi/BlobBuilder.cpp: Switch to using BlobData. 65878 (WebCore::BlobBuilder::BlobBuilder): 65879 (WebCore::BlobBuilder::append): 65880 (WebCore::BlobBuilder::getBlob): 65881 * fileapi/BlobBuilder.h: Switch to using BlobData. 65882 * fileapi/BlobURL.cpp: Add a new helper method used in FormData. 65883 (WebCore::BlobURL::getIdentifier): 65884 * fileapi/BlobURL.h: 65885 * fileapi/File.cpp: Switch to using BlobData. 65886 (WebCore::createBlobDataForFile): 65887 (WebCore::File::File): 65888 (WebCore::File::size): 65889 (WebCore::File::captureSnapshot): 65890 * fileapi/File.h: Switch to using BlobData. 65891 (WebCore::File::create): 65892 (WebCore::File::path): 65893 (WebCore::File::name): 65894 (WebCore::File::webkitRelativePath): 65895 * fileapi/FileReader.cpp: Change the reading to route through blob resource loading. 65896 (WebCore::FileReader::FileReader): 65897 (WebCore::FileReader::readAsBinaryString): 65898 (WebCore::FileReader::readAsText): 65899 (WebCore::FileReader::readAsDataURL): 65900 (WebCore::delayedStart): 65901 (WebCore::FileReader::readInternal): 65902 (WebCore::FileReader::terminate): 65903 (WebCore::FileReader::start): 65904 (WebCore::FileReader::didReceiveResponse): 65905 (WebCore::FileReader::didReceiveData): 65906 (WebCore::FileReader::didFinishLoading): 65907 (WebCore::FileReader::didFail): 65908 (WebCore::FileReader::failed): 65909 (WebCore::FileReader::httpStatusCodeToExceptionCode): 65910 (WebCore::FileReader::result): 65911 (WebCore::FileReader::convertToDataURL): 65912 * fileapi/FileReader.h: 65913 * html/FormDataList.cpp: Account to BlobData change. 65914 (WebCore::FormDataList::appendString): 65915 (WebCore::FormDataList::appendBlob): 65916 * html/FormDataList.h: Account to BlobData change. 65917 (WebCore::FormDataList::appendBlob): 65918 (WebCore::FormDataList::Item::Item): 65919 (WebCore::FormDataList::Item::data): 65920 (WebCore::FormDataList::Item::blob): 65921 (WebCore::FormDataList::items): 65922 * loader/FormSubmission.cpp: Account to BlobData change. 65923 (WebCore::FormSubmission::create): 65924 * platform/BlobItem.cpp: Removed. 65925 * platform/BlobItem.h: Removed. 65926 * platform/network/BlobRegistryImpl.cpp: Add the implementations for resource loading. 65927 (WebCore::BlobRegistryImpl::createResourceHandle): 65928 (WebCore::BlobRegistryImpl::loadResourceSynchronously): 65929 * platform/network/BlobResourceHandle.cpp: Fix a bug that the ref is not added. 65930 (WebCore::BlobResourceHandle::BlobResourceHandle): 65931 * platform/network/FormData.cpp: Account to BlobData change. 65932 (WebCore::FormData::create): 65933 (WebCore::FormData::createMultiPart): 65934 (WebCore::FormData::deepCopy): 65935 (WebCore::FormData::appendFile): 65936 (WebCore::FormData::appendKeyValuePairItems): 65937 * platform/network/FormData.h: Account to BlobData change. 65938 * platform/network/mac/FormDataStreamMac.mm: Resolve blob references in the form data. 65939 (WebCore::closeCurrentStream): 65940 (WebCore::advanceCurrentStream): 65941 (WebCore::formCreate): 65942 (WebCore::formRead): 65943 (WebCore::setHTTPBody): 65944 * xml/XMLHttpRequest.cpp: Account to BlobData change. 65945 (WebCore::XMLHttpRequest::send): 65946 65947 2010-08-30 Eric Seidel <eric (a] webkit.org> 65948 65949 Unreviewed, rolling out r66418. 65950 http://trac.webkit.org/changeset/66418 65951 https://bugs.webkit.org/show_bug.cgi?id=44896 65952 65953 Adam tried to roll this out with: 65954 https://bugs.webkit.org/show_bug.cgi?id=44924 65955 but we hit a commit-queue edgecase and it failed, trying again. 65956 65957 Causing test failures on multiple bots 65958 65959 * rendering/RenderForeignObject.cpp: 65960 (WebCore::RenderForeignObject::layout): 65961 * rendering/RenderObject.cpp: 65962 * rendering/RenderObject.h: 65963 (WebCore::RenderObject::setNeedsBoundariesUpdate): 65964 * rendering/RenderObjectChildList.cpp: 65965 (WebCore::RenderObjectChildList::removeChildNode): 65966 * rendering/RenderPath.cpp: 65967 (WebCore::RenderPath::layout): 65968 (WebCore::RenderPath::paint): 65969 (WebCore::RenderPath::styleWillChange): 65970 * rendering/RenderPath.h: 65971 (WebCore::RenderPath::setNeedsBoundariesUpdate): 65972 * rendering/RenderSVGBlock.cpp: 65973 * rendering/RenderSVGBlock.h: 65974 * rendering/RenderSVGContainer.cpp: 65975 (WebCore::RenderSVGContainer::RenderSVGContainer): 65976 (WebCore::RenderSVGContainer::layout): 65977 (WebCore::RenderSVGContainer::paint): 65978 (WebCore::RenderSVGContainer::objectBoundingBox): 65979 (WebCore::RenderSVGContainer::strokeBoundingBox): 65980 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 65981 * rendering/RenderSVGContainer.h: 65982 (WebCore::RenderSVGContainer::calculateLocalTransform): 65983 * rendering/RenderSVGGradientStop.h: 65984 * rendering/RenderSVGHiddenContainer.cpp: 65985 (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint): 65986 (WebCore::RenderSVGHiddenContainer::objectBoundingBox): 65987 (WebCore::RenderSVGHiddenContainer::repaintRectInLocalCoordinates): 65988 * rendering/RenderSVGHiddenContainer.h: 65989 * rendering/RenderSVGImage.cpp: 65990 (WebCore::RenderSVGImage::layout): 65991 * rendering/RenderSVGImage.h: 65992 * rendering/RenderSVGInline.cpp: 65993 * rendering/RenderSVGInline.h: 65994 * rendering/RenderSVGModelObject.cpp: 65995 * rendering/RenderSVGModelObject.h: 65996 * rendering/RenderSVGRoot.cpp: 65997 (WebCore::RenderSVGRoot::RenderSVGRoot): 65998 (WebCore::RenderSVGRoot::layout): 65999 (WebCore::RenderSVGRoot::objectBoundingBox): 66000 (WebCore::RenderSVGRoot::strokeBoundingBox): 66001 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 66002 * rendering/RenderSVGRoot.h: 66003 * rendering/RenderSVGText.cpp: 66004 (WebCore::RenderSVGText::layout): 66005 * rendering/RenderSVGTransformableContainer.cpp: 66006 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): 66007 * rendering/RenderSVGTransformableContainer.h: 66008 * rendering/RenderSVGViewportContainer.cpp: 66009 (WebCore::RenderSVGViewportContainer::calcViewport): 66010 * rendering/SVGRenderSupport.cpp: 66011 (WebCore::SVGRenderSupport::computeContainerBoundingBox): 66012 * rendering/SVGRenderSupport.h: 66013 * rendering/style/SVGRenderStyle.cpp: 66014 (WebCore::SVGRenderStyle::diff): 66015 66016 2010-08-30 Adam Barth <abarth (a] webkit.org> 66017 66018 Reviewed by Eric Seidel. 66019 66020 Implement CDATASection state for the HTMLTokenizer 66021 https://bugs.webkit.org/show_bug.cgi?id=44923 66022 66023 In the spec, this state refers back to the HTMLTreeBuilder from the 66024 HTMLTokenizer. Rather that introduce that (backwards) dependencies, we 66025 have the tree builder set a bit on the tokenizer. 66026 66027 * html/parser/HTMLTokenizer.cpp: 66028 (WebCore::HTMLTokenizer::reset): 66029 (WebCore::HTMLTokenizer::nextToken): 66030 * html/parser/HTMLTokenizer.h: 66031 (WebCore::HTMLTokenizer::shouldAllowCDATA): 66032 (WebCore::HTMLTokenizer::setShouldAllowCDATA): 66033 * html/parser/HTMLTreeBuilder.cpp: 66034 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 66035 66036 2010-08-30 Adam Barth <abarth (a] webkit.org> 66037 66038 Reviewed by Eric Seidel. 66039 66040 Enable HTML5lib's test_innerHTML01.dat 66041 https://bugs.webkit.org/show_bug.cgi?id=44919 66042 66043 These tests provoked two branches that we hadn't implemented yet. 66044 66045 * html/parser/HTMLTreeBuilder.cpp: 66046 (WebCore::HTMLTreeBuilder::processStartTag): 66047 (WebCore::HTMLTreeBuilder::processEndTag): 66048 66049 2010-08-30 Mark Rowe <mrowe (a] apple.com> 66050 66051 Reviewed by Darin Adler. 66052 66053 Stop using a QuickDraw function that was only used for debugging purposes. 66054 66055 * platform/graphics/mac/SimpleFontDataMac.mm: 66056 (WebCore::pathFromFont): 66057 66058 2010-08-30 Ryosuke Niwa <rniwa (a] webkit.org> 66059 66060 Reviewed by Darin Adler. 66061 66062 queryCommandValue("BackColor") returns rgb(0,0,0) for elements with transparent background 66063 https://bugs.webkit.org/show_bug.cgi?id=21680 66064 66065 The bug was caused by WebKit's using the computed style to obtain the background color, 66066 which is rgba(0,0,0,0) for nodes with transparent background color. While this is correct 66067 in the accordance to CSS2 because background-color is not inherited by default, 66068 it is not desirable for editing purposes where the background color in effect is expected. 66069 66070 Modified valueStyle in EditorCommand.cpp to call Editor::selectionStartCSSPropertyValue, 66071 instead of Frame::selectionStartStylePropertyValue, which traverses common ancestors of 66072 the selected range or caret to retrieve the effective background color of the selected region 66073 instead of the background color at the start of the selection. 66074 This takes effect when the original background color is transparent or the selection is range 66075 (to avoid picking up the background color only present at the start of paragraph). 66076 66077 Removed selectionStartStylePropertyValue and migrated it to Editor::selectionStartCSSPropertyValue. 66078 66079 Test: editing/execCommand/query-command-value-background-color.html 66080 66081 * editing/Editor.cpp: 66082 (WebCore::hasTransparentBackgroundColor): Checks whether the specified style's background color is transparent or not. 66083 (WebCore::Editor::selectionStartCSSPropertyValue): Migrated the contents of selectionStartStylePropertyValue and 66084 added the special case for background color. 66085 * editing/Editor.h: Added the prototype for selectionStartCSSPropertyValue. 66086 * editing/EditorCommand.cpp: 66087 (WebCore::valueStyle): Calls Editor::selectionStartCSSPropertyValue. 66088 * page/Frame.cpp: Removed selectionStartStylePropertyValue. 66089 * page/Frame.h: Ditto. 66090 66091 2010-08-30 Lei Zhang <thestig (a] chromium.org> 66092 66093 Reviewed by Shinichiro Hamaji. 66094 66095 Defer printing until the FrameLoader finishes loading. 66096 https://bugs.webkit.org/show_bug.cgi?id=43658 66097 66098 * manual-tests/print-before-load.html: Added. 66099 66100 * loader/FrameLoader.cpp: 66101 (WebCore::FrameLoader::finishedLoading): 66102 * page/DOMWindow.cpp: 66103 (WebCore::DOMWindow::DOMWindow): 66104 (WebCore::DOMWindow::print): 66105 * page/DOMWindow.h: 66106 (WebCore::DOMWindow::printDeferred): 66107 66108 2010-08-30 Chris Rogers <crogers (a] google.com> 66109 66110 Reviewed by Kenneth Russell. 66111 66112 audio engine: add ReverbConvolver class 66113 https://bugs.webkit.org/show_bug.cgi?id=34912 66114 66115 No new tests since audio API is not yet implemented. 66116 66117 * platform/audio: Added. 66118 * platform/audio/ReverbAccumulationBuffer.cpp: Added. 66119 (WebCore::ReverbAccumulationBuffer::ReverbAccumulationBuffer): 66120 (WebCore::ReverbAccumulationBuffer::readAndClear): 66121 (WebCore::ReverbAccumulationBuffer::updateReadIndex): 66122 (WebCore::ReverbAccumulationBuffer::accumulate): 66123 (WebCore::ReverbAccumulationBuffer::reset): 66124 * platform/audio/ReverbAccumulationBuffer.h: Added. 66125 (WebCore::ReverbAccumulationBuffer::readIndex): 66126 (WebCore::ReverbAccumulationBuffer::readTimeFrame): 66127 * platform/audio/ReverbConvolver.cpp: Added. 66128 (WebCore::backgroundThreadEntry): 66129 (WebCore::ReverbConvolver::ReverbConvolver): 66130 (WebCore::ReverbConvolver::~ReverbConvolver): 66131 (WebCore::ReverbConvolver::backgroundThreadEntry): 66132 (WebCore::ReverbConvolver::process): 66133 (WebCore::ReverbConvolver::reset): 66134 * platform/audio/ReverbConvolver.h: Added. 66135 (WebCore::ReverbConvolver::impulseResponseLength): 66136 (WebCore::ReverbConvolver::inputBuffer): 66137 (WebCore::ReverbConvolver::useBackgroundThreads): 66138 * platform/audio/ReverbConvolverStage.cpp: Added. 66139 (WebCore::ReverbConvolverStage::ReverbConvolverStage): 66140 (WebCore::ReverbConvolverStage::processInBackground): 66141 (WebCore::ReverbConvolverStage::process): 66142 (WebCore::ReverbConvolverStage::reset): 66143 * platform/audio/ReverbConvolverStage.h: Added. 66144 (WebCore::ReverbConvolverStage::inputReadIndex): 66145 * platform/audio/ReverbInputBuffer.cpp: Added. 66146 (WebCore::ReverbInputBuffer::ReverbInputBuffer): 66147 (WebCore::ReverbInputBuffer::write): 66148 (WebCore::ReverbInputBuffer::directReadFrom): 66149 (WebCore::ReverbInputBuffer::reset): 66150 * platform/audio/ReverbInputBuffer.h: Added. 66151 (WebCore::ReverbInputBuffer::writeIndex): 66152 66153 2010-08-30 Nikolas Zimmermann <nzimmermann (a] rim.com> 66154 66155 Reviewed by Dirk Schulze. 66156 66157 Add culling to RenderSVGContainer 66158 https://bugs.webkit.org/show_bug.cgi?id=44896 66159 66160 Cache object/strokeBoundingBox and repaintRectInLocalCoordinates() in RenderSVGContainer & RenderSVGRoot, just like it's done in RenderPath. 66161 Propagate boundary changes up the render tree, in layout phase, in order to notify parents that they should update their cached boundaries. 66162 66163 This is a huge speed benefit when interacting with an already layouted document, as there's no need anymore to traverse all children 66164 of any container or <svg> element, just to retrieve the repaint rect. 66165 66166 * rendering/RenderForeignObject.cpp: 66167 (WebCore::RenderForeignObject::layout): 66168 * rendering/RenderObject.cpp: 66169 (WebCore::RenderObject::setNeedsBoundariesUpdate): 66170 * rendering/RenderObject.h: 66171 * rendering/RenderObjectChildList.cpp: 66172 (WebCore::RenderObjectChildList::removeChildNode): 66173 * rendering/RenderPath.cpp: 66174 (WebCore::RenderPath::layout): 66175 (WebCore::RenderPath::paint): 66176 * rendering/RenderPath.h: 66177 (WebCore::RenderPath::path): 66178 (WebCore::RenderPath::setNeedsBoundariesUpdate): 66179 * rendering/RenderSVGBlock.cpp: 66180 (WebCore::RenderSVGBlock::styleWillChange): 66181 * rendering/RenderSVGBlock.h: 66182 * rendering/RenderSVGContainer.cpp: 66183 (WebCore::RenderSVGContainer::RenderSVGContainer): 66184 (WebCore::RenderSVGContainer::layout): 66185 (WebCore::RenderSVGContainer::paint): 66186 (WebCore::RenderSVGContainer::updateCachedBoundaries): 66187 * rendering/RenderSVGContainer.h: 66188 (WebCore::RenderSVGContainer::setNeedsBoundariesUpdate): 66189 (WebCore::RenderSVGContainer::objectBoundingBox): 66190 (WebCore::RenderSVGContainer::strokeBoundingBox): 66191 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 66192 (WebCore::RenderSVGContainer::calculateLocalTransform): 66193 * rendering/RenderSVGGradientStop.h: 66194 (WebCore::RenderSVGGradientStop::strokeBoundingBox): 66195 * rendering/RenderSVGHiddenContainer.cpp: 66196 * rendering/RenderSVGHiddenContainer.h: 66197 (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint): 66198 * rendering/RenderSVGImage.cpp: 66199 (WebCore::RenderSVGImage::layout): 66200 (WebCore::RenderSVGImage::styleWillChange): 66201 * rendering/RenderSVGImage.h: 66202 * rendering/RenderSVGInline.cpp: 66203 (WebCore::RenderSVGInline::styleWillChange): 66204 * rendering/RenderSVGInline.h: 66205 * rendering/RenderSVGModelObject.cpp: 66206 (WebCore::RenderSVGModelObject::styleWillChange): 66207 * rendering/RenderSVGModelObject.h: 66208 * rendering/RenderSVGRoot.cpp: 66209 (WebCore::RenderSVGRoot::RenderSVGRoot): 66210 (WebCore::RenderSVGRoot::layout): 66211 (WebCore::RenderSVGRoot::styleWillChange): 66212 (WebCore::RenderSVGRoot::updateCachedBoundaries): 66213 * rendering/RenderSVGRoot.h: 66214 (WebCore::RenderSVGRoot::setNeedsBoundariesUpdate): 66215 (WebCore::RenderSVGRoot::setNeedsTransformUpdate): 66216 (WebCore::RenderSVGRoot::objectBoundingBox): 66217 (WebCore::RenderSVGRoot::strokeBoundingBox): 66218 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 66219 * rendering/RenderSVGText.cpp: 66220 (WebCore::RenderSVGText::layout): 66221 * rendering/RenderSVGTransformableContainer.cpp: 66222 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform): 66223 * rendering/RenderSVGTransformableContainer.h: 66224 * rendering/RenderSVGViewportContainer.cpp: 66225 (WebCore::RenderSVGViewportContainer::calcViewport): 66226 * rendering/SVGRenderSupport.cpp: 66227 (WebCore::SVGRenderSupport::computeContainerBoundingBoxes): 66228 (WebCore::SVGRenderSupport::paintInfoIntersectsRepaintRect): 66229 * rendering/SVGRenderSupport.h: 66230 * rendering/style/SVGRenderStyle.cpp: 66231 (WebCore::SVGRenderStyle::diff): 66232 66233 2010-08-30 Leandro Pereira <leandro (a] profusion.mobi> 66234 66235 [EFL] Unreviewed. Build fix when ENABLE_WEB_SOCKETS=ON. 66236 66237 EFL port does not yet support automated tests. 66238 66239 * CMakeLists.txt: Add missing files. 66240 * CMakeListsEfl.txt: Ditto. 66241 66242 2010-08-30 Kenneth Russell <kbr (a] google.com> 66243 66244 Reviewed by Chris Marrin. 66245 66246 Expose Vector3 and associated operations 66247 https://bugs.webkit.org/show_bug.cgi?id=44666 66248 66249 Rolling out earlier patch exposing Vector3 class in 66250 TransformationMatrix.h. A different approach will be taken under 66251 another bug. 66252 66253 * platform/graphics/transforms/TransformationMatrix.cpp: 66254 (WebCore::v3Length): 66255 (WebCore::v3Scale): 66256 (WebCore::v3Dot): 66257 (WebCore::v3Combine): 66258 (WebCore::v3Cross): 66259 (WebCore::decompose): 66260 * platform/graphics/transforms/TransformationMatrix.ha: 66261 66262 2010-08-30 Jer Noble <jer.noble (a] apple.com> 66263 66264 Build fix; Unreviewed. 66265 66266 Added a export symbol to the WebCore.exp.in list. 66267 66268 * WebCore.exp.in: 66269 66270 2010-08-30 Chris Rogers <crogers (a] google.com> 66271 66272 Reviewed by Kenneth Russell. 66273 66274 Add audio cone effect files. The cone effect operates as defined in the OpenAL specification. 66275 https://bugs.webkit.org/show_bug.cgi?id=44712 66276 66277 No new tests since audio API not implemented yet. 66278 66279 * platform/audio: Added. 66280 * platform/audio/Cone.cpp: Added. 66281 (WebCore::ConeEffect::ConeEffect): 66282 (WebCore::ConeEffect::gain): 66283 * platform/audio/Cone.h: Added. 66284 (WebCore::ConeEffect::setInnerAngle): 66285 (WebCore::ConeEffect::innerAngle): 66286 (WebCore::ConeEffect::setOuterAngle): 66287 (WebCore::ConeEffect::outerAngle): 66288 (WebCore::ConeEffect::setOuterGain): 66289 (WebCore::ConeEffect::outerGain): 66290 66291 2010-08-30 Chris Rogers <crogers (a] google.com> 66292 66293 Reviewed by Chris Marrin. 66294 66295 audio engine: add Reverb class 66296 https://bugs.webkit.org/show_bug.cgi?id=36466 66297 66298 No new tests since audio API is not yet implemented. 66299 66300 * platform/audio: Added. 66301 * platform/audio/Reverb.cpp: Added. 66302 (WebCore::calculateNormalizationScale): 66303 (WebCore::Reverb::Reverb): 66304 (WebCore::Reverb::initialize): 66305 (WebCore::Reverb::process): 66306 (WebCore::Reverb::reset): 66307 * platform/audio/Reverb.h: Added. 66308 (WebCore::Reverb::): 66309 (WebCore::Reverb::impulseResponseLength): 66310 66311 2010-08-30 Chris Rogers <crogers (a] google.com> 66312 66313 Unreviewed 66314 66315 Add WebCore/platform/audio directory 66316 in preparation for landing: https://bugs.webkit.org/show_bug.cgi?id=36466 66317 66318 * platform/audio: Added. 66319 66320 2010-08-27 Jer Noble <jer.noble (a] apple.com> 66321 66322 Reviewed by Eric Carlson. 66323 66324 text/plain non-video files cause <video> to hang (while reading them?) 66325 https://bugs.webkit.org/show_bug.cgi?id=44212 66326 66327 Disable all the QuickTime components which ingest .txt files. 66328 66329 New tests: 66330 * http/tests/media/video-served-as-text.html: Added. 66331 * http/tests/media/text-served-as-text.html: Added. 66332 66333 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 66334 (WebCore::MediaPlayerPrivate::createQTMovie): Disable all four text 66335 'eat' components. 66336 * platform/mac/WebCoreSystemInterface.h: Add wkQTMovieDisableComponent. 66337 * platform/mac/WebCoreSystemInterface.mm: Add wkQTMovieDisableComponent. 66338 66339 2010-08-30 Robert Hogan <robert (a] webkit.org> 66340 66341 Reviewed by Simon Hausmann. 66342 66343 allow ports with windowed plugins to support windowless plugin tests 66344 66345 https://bugs.webkit.org/show_bug.cgi?id=40730 66346 66347 Ports that implement plugins windowed by default need to have a way of 66348 supporting plugin tests that assume the plugin is windowless. Add this 66349 feature to the tests and support it in the webkit test plugin. Also 66350 add mouse and keyboard event logging to the webkit-test plugin on Unix. 66351 66352 Unskip the following tests on Qt: 66353 66354 plugins/mouse-events.html 66355 plugins/keyboard-events.html 66356 plugins/mouse-events-fixedpos.html 66357 66358 * plugins/qt/PluginViewQt.cpp: 66359 (WebCore::PluginView::setFocus): 66360 (WebCore::setXKeyEventSpecificFields): 66361 66362 2010-08-30 Kinuko Yasuda <kinuko (a] chromium.org> 66363 66364 Reviewed by Darin Fisher. 66365 66366 Add DOMFileSystem implementation to support Entry manipulation operations 66367 https://bugs.webkit.org/show_bug.cgi?id=44732 66368 66369 No new tests; tests will be added later. 66370 66371 * storage/DOMFileSystem.cpp: 66372 (WebCore::DOMFileSystem::root): 66373 (WebCore::checkValidityForForCopyOrMove): Added. 66374 (WebCore::DOMFileSystem::getMetadata): Added. 66375 (WebCore::DOMFileSystem::move): Added. 66376 (WebCore::DOMFileSystem::copy): Added. 66377 (WebCore::DOMFileSystem::remove): Added. 66378 (WebCore::DOMFileSystem::getParent): Added. 66379 (WebCore::DOMFileSystem::getFile): Added. 66380 (WebCore::DOMFileSystem::getDirectory): Added. 66381 (WebCore::DOMFileSystem::readDirectory): Added. 66382 * storage/DirectoryEntry.cpp: 66383 (WebCore::DirectoryEntry::getFile): Added implementation. 66384 (WebCore::DirectoryEntry::getDirectory): Added implementation. 66385 * storage/DirectoryReader.cpp: 66386 (WebCore::DirectoryReader::DirectoryReader): Added implementation. 66387 (WebCore::DirectoryReader::readEntries): Added implementation. 66388 * storage/DirectoryReader.h: 66389 * storage/Entry.cpp: 66390 (WebCore::Entry::getMetadata): Added implementation. 66391 (WebCore::Entry::moveTo): Added implementation. 66392 (WebCore::Entry::copyTo): Added implementation. 66393 (WebCore::Entry::remove): Added implementation. 66394 (WebCore::Entry::getParent): Added implementation. 66395 * storage/Entry.h: 66396 * storage/FileEntry.h: 66397 66398 Added a helper template to schedule callbacks. 66399 * storage/DOMFileSystem.h: 66400 (WebCore::DOMFileSystem::DispatchCallbackTask): Added to schedule callbacks. 66401 (WebCore::DOMFileSystem::scheduleCallback): Added to schedule callbacks. 66402 66403 Changed to fire callbacks asynchronously. 66404 * storage/LocalFileSystem.cpp: 66405 (WebCore::LocalFileSystem::requestFileSystem): 66406 66407 2010-08-30 Alejandro G. Castro <alex (a] igalia.com> 66408 66409 Reviewed by Xan Lopez. 66410 66411 Fixed compilation error, now that we have included the 66412 GtkVersioning.h we have to remove some version dependent code from 66413 EventSender. 66414 66415 * platform/gtk/GtkVersioning.c: 66416 (gdk_window_get_root_coords): 66417 * platform/gtk/GtkVersioning.h: 66418 66419 2010-08-30 Beth Dakin <bdakin (a] apple.com> 66420 66421 Reviewed by Sam Weinig. 66422 66423 Fix for https://bugs.webkit.org/show_bug.cgi?id=44804 Crashes in 66424 RenderMathMLRoot::layout() and RenderMathMLRoot::paint() 66425 -and corresponding- 66426 <rdar://problem/8342055> 66427 66428 All of the calls to firstChild() and lastChild() in 66429 RenderMathMLRoot::layout() and RenderMathMLRoot::paint() need to be 66430 null checked. 66431 66432 * mathml/RenderMathMLRoot.cpp: 66433 (WebCore::RenderMathMLRoot::paint): 66434 (WebCore::RenderMathMLRoot::layout): 66435 66436 2010-08-30 Beth Dakin <bdakin (a] apple.com> 66437 66438 Reviewed by Darin Adler. 66439 66440 Fix for https://bugs.webkit.org/show_bug.cgi?id=44801 Crash in 66441 RenderMathMLSubSup::layout() 66442 -and corresponding- 66443 <rdar://problem/8325203> 66444 66445 Null-check m_scripts. It is null-checked everywhere else in the 66446 class and can legitimately be null. 66447 66448 * mathml/RenderMathMLSubSup.cpp: 66449 (WebCore::RenderMathMLSubSup::layout): 66450 66451 2010-08-30 Alejandro G. Castro <alex (a] igalia.com> 66452 66453 Reviewed by Martin Robinson. 66454 66455 [Gtk] gdk_display_get_core_pointer and gdk_device_get_core_pointer 66456 are deprecated 66457 https://bugs.webkit.org/show_bug.cgi?id=44787 66458 66459 We have replaced GtkVersioning.cpp with GtkVersioning.c and 66460 created a function (getDefaultGDKPointerDevice) to get the pointer 66461 of the window with the new APIs. We added that function to DRT and 66462 copyandpaste unit test. 66463 66464 * GNUmakefile.am: 66465 * platform/gtk/GtkVersioning.c: Added. 66466 (gtk_adjustment_set_value): 66467 (gtk_adjustment_configure): 66468 (getDefaultGDKPointerDevice): 66469 * platform/gtk/GtkVersioning.cpp: Removed. 66470 * platform/gtk/GtkVersioning.h: 66471 66472 2010-08-30 Darin Adler <darin (a] apple.com> 66473 66474 Reviewed by Sam Weinig. 66475 66476 Make SVG constructors private to make sure callers all use create 66477 https://bugs.webkit.org/show_bug.cgi?id=44872 66478 66479 Made as many members private and protected as possible, and got rid of many 66480 unneeded empty constructor and destructor definitions, in some cases changing 66481 a class to be non-polymorphic. Made some functions inline. Used the word document 66482 instead of the abbreviation doc. Removed unneeded explicit base class 66483 initialization in cases where it is no different from the default behavior. 66484 66485 * svg/SVGAElement.cpp: 66486 (WebCore::SVGAElement::SVGAElement): 66487 (WebCore::SVGAElement::childShouldCreateRenderer): 66488 * svg/SVGAElement.h: 66489 * svg/SVGAltGlyphElement.cpp: 66490 (WebCore::SVGAltGlyphElement::SVGAltGlyphElement): 66491 * svg/SVGAltGlyphElement.h: 66492 * svg/SVGAngle.cpp: 66493 * svg/SVGAngle.h: 66494 * svg/SVGAnimateColorElement.cpp: 66495 (WebCore::SVGAnimateColorElement::SVGAnimateColorElement): 66496 * svg/SVGAnimateColorElement.h: 66497 * svg/SVGAnimateElement.cpp: 66498 (WebCore::SVGAnimateElement::SVGAnimateElement): 66499 * svg/SVGAnimateElement.h: 66500 * svg/SVGAnimateMotionElement.cpp: 66501 (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement): 66502 * svg/SVGAnimateMotionElement.h: 66503 * svg/SVGAnimateTransformElement.cpp: 66504 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement): 66505 * svg/SVGAnimateTransformElement.h: 66506 * svg/SVGAnimatedPathData.cpp: 66507 * svg/SVGAnimatedPathData.h: 66508 * svg/SVGAnimatedPoints.cpp: 66509 * svg/SVGAnimatedPoints.h: 66510 * svg/SVGAnimationElement.cpp: 66511 (WebCore::SVGAnimationElement::SVGAnimationElement): 66512 * svg/SVGAnimationElement.h: 66513 * svg/SVGCircleElement.cpp: 66514 (WebCore::SVGCircleElement::SVGCircleElement): 66515 * svg/SVGCircleElement.h: 66516 * svg/SVGClipPathElement.cpp: 66517 (WebCore::SVGClipPathElement::SVGClipPathElement): 66518 * svg/SVGClipPathElement.h: 66519 * svg/SVGColor.cpp: 66520 * svg/SVGColor.h: 66521 * svg/SVGComponentTransferFunctionElement.cpp: 66522 (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement): 66523 * svg/SVGComponentTransferFunctionElement.h: 66524 * svg/SVGCursorElement.cpp: 66525 (WebCore::SVGCursorElement::SVGCursorElement): 66526 * svg/SVGCursorElement.h: 66527 * svg/SVGDefsElement.cpp: 66528 (WebCore::SVGDefsElement::SVGDefsElement): 66529 * svg/SVGDefsElement.h: 66530 * svg/SVGDescElement.cpp: 66531 (WebCore::SVGDescElement::SVGDescElement): 66532 * svg/SVGDescElement.h: 66533 * svg/SVGDocument.cpp: 66534 * svg/SVGDocument.h: 66535 * svg/SVGDocumentExtensions.cpp: 66536 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): 66537 (WebCore::SVGDocumentExtensions::reportWarning): 66538 (WebCore::SVGDocumentExtensions::reportError): 66539 * svg/SVGDocumentExtensions.h: 66540 * svg/SVGElement.h: 66541 * svg/SVGElementInstanceList.h: 66542 * svg/SVGEllipseElement.cpp: 66543 (WebCore::SVGEllipseElement::SVGEllipseElement): 66544 * svg/SVGEllipseElement.h: 66545 * svg/SVGExternalResourcesRequired.cpp: 66546 * svg/SVGExternalResourcesRequired.h: 66547 * svg/SVGFEBlendElement.cpp: 66548 (WebCore::SVGFEBlendElement::SVGFEBlendElement): 66549 * svg/SVGFEBlendElement.h: 66550 * svg/SVGFEColorMatrixElement.cpp: 66551 (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement): 66552 * svg/SVGFEColorMatrixElement.h: 66553 * svg/SVGFEComponentTransferElement.cpp: 66554 (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement): 66555 * svg/SVGFEComponentTransferElement.h: 66556 * svg/SVGFECompositeElement.cpp: 66557 (WebCore::SVGFECompositeElement::SVGFECompositeElement): 66558 * svg/SVGFECompositeElement.h: 66559 * svg/SVGFEConvolveMatrixElement.cpp: 66560 (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement): 66561 * svg/SVGFEConvolveMatrixElement.h: 66562 * svg/SVGFEDiffuseLightingElement.cpp: 66563 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement): 66564 * svg/SVGFEDiffuseLightingElement.h: 66565 * svg/SVGFEDisplacementMapElement.cpp: 66566 (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement): 66567 * svg/SVGFEDisplacementMapElement.h: 66568 * svg/SVGFEDistantLightElement.cpp: 66569 (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement): 66570 * svg/SVGFEDistantLightElement.h: 66571 * svg/SVGFEFloodElement.cpp: 66572 (WebCore::SVGFEFloodElement::SVGFEFloodElement): 66573 * svg/SVGFEFloodElement.h: 66574 * svg/SVGFEFuncAElement.cpp: 66575 (WebCore::SVGFEFuncAElement::SVGFEFuncAElement): 66576 * svg/SVGFEFuncAElement.h: 66577 * svg/SVGFEFuncBElement.cpp: 66578 (WebCore::SVGFEFuncBElement::SVGFEFuncBElement): 66579 * svg/SVGFEFuncBElement.h: 66580 * svg/SVGFEFuncGElement.cpp: 66581 (WebCore::SVGFEFuncGElement::SVGFEFuncGElement): 66582 * svg/SVGFEFuncGElement.h: 66583 * svg/SVGFEFuncRElement.cpp: 66584 (WebCore::SVGFEFuncRElement::SVGFEFuncRElement): 66585 * svg/SVGFEFuncRElement.h: 66586 * svg/SVGFEGaussianBlurElement.cpp: 66587 (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement): 66588 * svg/SVGFEGaussianBlurElement.h: 66589 * svg/SVGFEImageElement.cpp: 66590 (WebCore::SVGFEImageElement::SVGFEImageElement): 66591 * svg/SVGFEImageElement.h: 66592 * svg/SVGFELightElement.cpp: 66593 (WebCore::SVGFELightElement::SVGFELightElement): 66594 * svg/SVGFELightElement.h: 66595 * svg/SVGFEMergeElement.cpp: 66596 (WebCore::SVGFEMergeElement::SVGFEMergeElement): 66597 * svg/SVGFEMergeElement.h: 66598 * svg/SVGFEMergeNodeElement.cpp: 66599 (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement): 66600 * svg/SVGFEMergeNodeElement.h: 66601 * svg/SVGFEMorphologyElement.cpp: 66602 (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement): 66603 * svg/SVGFEMorphologyElement.h: 66604 * svg/SVGFEOffsetElement.cpp: 66605 (WebCore::SVGFEOffsetElement::SVGFEOffsetElement): 66606 * svg/SVGFEOffsetElement.h: 66607 * svg/SVGFEPointLightElement.cpp: 66608 (WebCore::SVGFEPointLightElement::SVGFEPointLightElement): 66609 (WebCore::SVGFEPointLightElement::lightSource): 66610 * svg/SVGFEPointLightElement.h: 66611 * svg/SVGFESpecularLightingElement.cpp: 66612 (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement): 66613 * svg/SVGFESpecularLightingElement.h: 66614 * svg/SVGFESpotLightElement.cpp: 66615 (WebCore::SVGFESpotLightElement::SVGFESpotLightElement): 66616 * svg/SVGFESpotLightElement.h: 66617 * svg/SVGFETileElement.cpp: 66618 (WebCore::SVGFETileElement::SVGFETileElement): 66619 * svg/SVGFETileElement.h: 66620 * svg/SVGFETurbulenceElement.cpp: 66621 (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement): 66622 * svg/SVGFETurbulenceElement.h: 66623 * svg/SVGFilterElement.cpp: 66624 (WebCore::SVGFilterElement::SVGFilterElement): 66625 * svg/SVGFilterElement.h: 66626 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 66627 (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes): 66628 * svg/SVGFilterPrimitiveStandardAttributes.h: 66629 * svg/SVGFitToViewBox.cpp: 66630 * svg/SVGFitToViewBox.h: 66631 * svg/SVGFontData.cpp: 66632 * svg/SVGFontData.h: 66633 * svg/SVGFontElement.cpp: 66634 (WebCore::SVGFontElement::SVGFontElement): 66635 * svg/SVGFontElement.h: 66636 * svg/SVGFontFaceElement.cpp: 66637 (WebCore::SVGFontFaceElement::SVGFontFaceElement): 66638 * svg/SVGFontFaceElement.h: 66639 * svg/SVGFontFaceFormatElement.cpp: 66640 (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement): 66641 * svg/SVGFontFaceFormatElement.h: 66642 * svg/SVGFontFaceNameElement.cpp: 66643 (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement): 66644 * svg/SVGFontFaceNameElement.h: 66645 * svg/SVGFontFaceSrcElement.cpp: 66646 (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement): 66647 * svg/SVGFontFaceSrcElement.h: 66648 * svg/SVGFontFaceUriElement.cpp: 66649 (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement): 66650 * svg/SVGFontFaceUriElement.h: 66651 * svg/SVGForeignObjectElement.cpp: 66652 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement): 66653 * svg/SVGForeignObjectElement.h: 66654 * svg/SVGGElement.cpp: 66655 (WebCore::SVGGElement::SVGGElement): 66656 * svg/SVGGElement.h: 66657 * svg/SVGGlyphElement.cpp: 66658 (WebCore::SVGGlyphElement::SVGGlyphElement): 66659 * svg/SVGGlyphElement.h: 66660 * svg/SVGGradientElement.cpp: 66661 (WebCore::SVGGradientElement::SVGGradientElement): 66662 * svg/SVGGradientElement.h: 66663 * svg/SVGHKernElement.cpp: 66664 (WebCore::SVGHKernElement::SVGHKernElement): 66665 * svg/SVGHKernElement.h: 66666 * svg/SVGImageElement.cpp: 66667 (WebCore::SVGImageElement::SVGImageElement): 66668 * svg/SVGImageElement.h: 66669 * svg/SVGImageLoader.cpp: 66670 * svg/SVGImageLoader.h: 66671 * svg/SVGLangSpace.cpp: 66672 * svg/SVGLangSpace.h: 66673 * svg/SVGLengthList.cpp: 66674 * svg/SVGLengthList.h: 66675 * svg/SVGLineElement.cpp: 66676 (WebCore::SVGLineElement::SVGLineElement): 66677 * svg/SVGLineElement.h: 66678 * svg/SVGLinearGradientElement.cpp: 66679 (WebCore::SVGLinearGradientElement::SVGLinearGradientElement): 66680 * svg/SVGLinearGradientElement.h: 66681 * svg/SVGLocatable.cpp: 66682 * svg/SVGLocatable.h: 66683 * svg/SVGMPathElement.cpp: 66684 (WebCore::SVGMPathElement::SVGMPathElement): 66685 * svg/SVGMPathElement.h: 66686 * svg/SVGMarkerElement.cpp: 66687 (WebCore::SVGMarkerElement::SVGMarkerElement): 66688 * svg/SVGMarkerElement.h: 66689 * svg/SVGMaskElement.cpp: 66690 (WebCore::SVGMaskElement::SVGMaskElement): 66691 * svg/SVGMaskElement.h: 66692 * svg/SVGMetadataElement.cpp: 66693 (WebCore::SVGMetadataElement::SVGMetadataElement): 66694 * svg/SVGMetadataElement.h: 66695 * svg/SVGMissingGlyphElement.cpp: 66696 (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement): 66697 * svg/SVGMissingGlyphElement.h: 66698 * svg/SVGNumberList.cpp: 66699 * svg/SVGNumberList.h: 66700 * svg/SVGPaint.cpp: 66701 * svg/SVGPaint.h: 66702 * svg/SVGParserUtilities.cpp: 66703 (WebCore::genericParseNumber): 66704 (WebCore::parseNumber): 66705 * svg/SVGPathBlender.cpp: 66706 * svg/SVGPathBlender.h: 66707 * svg/SVGPathBuilder.h: 66708 * svg/SVGPathByteStreamBuilder.h: 66709 * svg/SVGPathByteStreamSource.cpp: 66710 * svg/SVGPathByteStreamSource.h: 66711 * svg/SVGPathConsumer.h: 66712 * svg/SVGPathElement.cpp: 66713 (WebCore::SVGPathElement::SVGPathElement): 66714 * svg/SVGPathElement.h: 66715 * svg/SVGPathParser.cpp: 66716 * svg/SVGPathParser.h: 66717 * svg/SVGPathSeg.cpp: 66718 * svg/SVGPathSeg.h: 66719 * svg/SVGPathSegArc.h: 66720 * svg/SVGPathSegClosePath.cpp: 66721 * svg/SVGPathSegClosePath.h: 66722 * svg/SVGPathSegCurvetoCubic.h: 66723 * svg/SVGPathSegCurvetoCubicSmooth.h: 66724 * svg/SVGPathSegCurvetoQuadratic.h: 66725 * svg/SVGPathSegCurvetoQuadraticSmooth.h: 66726 * svg/SVGPathSegLineto.h: 66727 * svg/SVGPathSegLinetoHorizontal.h: 66728 * svg/SVGPathSegLinetoVertical.h: 66729 * svg/SVGPathSegList.cpp: 66730 * svg/SVGPathSegList.h: 66731 * svg/SVGPathSegListBuilder.h: 66732 * svg/SVGPathSegListSource.cpp: 66733 * svg/SVGPathSegListSource.h: 66734 * svg/SVGPathSegMoveto.h: 66735 * svg/SVGPathSource.h: 66736 * svg/SVGPathStringBuilder.cpp: 66737 * svg/SVGPathStringBuilder.h: 66738 * svg/SVGPathStringSource.cpp: 66739 * svg/SVGPathStringSource.h: 66740 * svg/SVGPatternElement.cpp: 66741 (WebCore::SVGPatternElement::SVGPatternElement): 66742 * svg/SVGPatternElement.h: 66743 * svg/SVGPointList.cpp: 66744 * svg/SVGPointList.h: 66745 * svg/SVGPolyElement.cpp: 66746 (WebCore::SVGPolyElement::SVGPolyElement): 66747 * svg/SVGPolyElement.h: 66748 * svg/SVGPolygonElement.cpp: 66749 (WebCore::SVGPolygonElement::SVGPolygonElement): 66750 * svg/SVGPolygonElement.h: 66751 * svg/SVGPolylineElement.cpp: 66752 (WebCore::SVGPolylineElement::SVGPolylineElement): 66753 * svg/SVGPolylineElement.h: 66754 * svg/SVGPreserveAspectRatio.cpp: 66755 * svg/SVGPreserveAspectRatio.h: 66756 * svg/SVGRadialGradientElement.cpp: 66757 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement): 66758 * svg/SVGRadialGradientElement.h: 66759 * svg/SVGRectElement.cpp: 66760 (WebCore::SVGRectElement::SVGRectElement): 66761 * svg/SVGRectElement.h: 66762 * svg/SVGSVGElement.h: 66763 * svg/SVGScriptElement.cpp: 66764 (WebCore::SVGScriptElement::SVGScriptElement): 66765 * svg/SVGScriptElement.h: 66766 * svg/SVGSetElement.cpp: 66767 (WebCore::SVGSetElement::SVGSetElement): 66768 * svg/SVGSetElement.h: 66769 * svg/SVGStopElement.cpp: 66770 (WebCore::SVGStopElement::SVGStopElement): 66771 * svg/SVGStopElement.h: 66772 * svg/SVGStringList.cpp: 66773 * svg/SVGStringList.h: 66774 * svg/SVGStylable.cpp: 66775 * svg/SVGStylable.h: 66776 * svg/SVGStyleElement.cpp: 66777 (WebCore::SVGStyleElement::SVGStyleElement): 66778 * svg/SVGStyleElement.h: 66779 * svg/SVGStyledElement.cpp: 66780 (WebCore::SVGStyledElement::SVGStyledElement): 66781 * svg/SVGStyledElement.h: 66782 * svg/SVGStyledLocatableElement.cpp: 66783 (WebCore::SVGStyledLocatableElement::SVGStyledLocatableElement): 66784 * svg/SVGStyledLocatableElement.h: 66785 * svg/SVGStyledTransformableElement.cpp: 66786 (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement): 66787 * svg/SVGStyledTransformableElement.h: 66788 * svg/SVGSwitchElement.cpp: 66789 (WebCore::SVGSwitchElement::SVGSwitchElement): 66790 (WebCore::SVGSwitchElement::childShouldCreateRenderer): 66791 * svg/SVGSwitchElement.h: 66792 * svg/SVGSymbolElement.cpp: 66793 (WebCore::SVGSymbolElement::SVGSymbolElement): 66794 * svg/SVGSymbolElement.h: 66795 * svg/SVGTRefElement.cpp: 66796 (WebCore::SVGTRefElement::SVGTRefElement): 66797 * svg/SVGTRefElement.h: 66798 * svg/SVGTSpanElement.cpp: 66799 (WebCore::SVGTSpanElement::SVGTSpanElement): 66800 * svg/SVGTests.cpp: 66801 * svg/SVGTests.h: 66802 * svg/SVGTextContentElement.cpp: 66803 (WebCore::SVGTextContentElement::SVGTextContentElement): 66804 * svg/SVGTextContentElement.h: 66805 * svg/SVGTextElement.cpp: 66806 (WebCore::SVGTextElement::SVGTextElement): 66807 * svg/SVGTextElement.h: 66808 * svg/SVGTextPathElement.cpp: 66809 (WebCore::SVGTextPathElement::SVGTextPathElement): 66810 * svg/SVGTextPathElement.h: 66811 * svg/SVGTextPositioningElement.cpp: 66812 (WebCore::SVGTextPositioningElement::SVGTextPositioningElement): 66813 * svg/SVGTextPositioningElement.h: 66814 * svg/SVGTitleElement.cpp: 66815 (WebCore::SVGTitleElement::SVGTitleElement): 66816 * svg/SVGTransform.cpp: 66817 * svg/SVGTransform.h: 66818 * svg/SVGTransformable.cpp: 66819 * svg/SVGTransformable.h: 66820 * svg/SVGURIReference.cpp: 66821 * svg/SVGURIReference.h: 66822 * svg/SVGUseElement.cpp: 66823 (WebCore::SVGUseElement::SVGUseElement): 66824 (WebCore::SVGUseElement::expandSymbolElementsInShadowTree): 66825 * svg/SVGUseElement.h: 66826 * svg/SVGViewElement.cpp: 66827 (WebCore::SVGViewElement::SVGViewElement): 66828 * svg/SVGViewElement.h: 66829 * svg/SVGViewSpec.cpp: 66830 (WebCore::SVGViewSpec::SVGViewSpec): 66831 * svg/SVGViewSpec.h: 66832 * svg/SVGZoomAndPan.cpp: 66833 * svg/SVGZoomAndPan.h: 66834 * svg/SVGZoomEvent.cpp: 66835 * svg/SVGZoomEvent.h: 66836 66837 2010-08-30 Eric Carlson <eric.carlson (a] apple.com> 66838 66839 Reviewed by Dan Bernstein. 66840 66841 Disable automatic looping 66842 https://bugs.webkit.org/show_bug.cgi?id=44844 66843 66844 Test: media/video-does-not-loop.html 66845 66846 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 66847 (WebCore::MediaPlayerPrivate::createQTMovie): Disable QuickTime automatic looping. 66848 66849 * platform/graphics/win/QTMovie.cpp: 66850 (QTMoviePrivate::createMovieController): Ditto. 66851 66852 2010-08-30 Ryosuke Niwa <rniwa (a] webkit.org> 66853 66854 Reviewed by Darin Adler. 66855 66856 ApplyStyleCommand::applyInlineStyle needs cleanup 66857 https://bugs.webkit.org/show_bug.cgi?id=44458 66858 66859 Cleanup: 66860 1. Isolated code to find the highest ancestor with embedding style, and deployed it in 66861 ApplyStyleCommand::applyInlineStyle. 66862 2. Combined the code to remove embedding style up to enclosing block and the code to 66863 remove unicode-bidi and direction properties between start and end nodes. 66864 3. Simplified the conditionals to apply embedding styles. 66865 66866 No new tests are added since this is a cleanup. 66867 66868 * editing/ApplyStyleCommand.cpp: 66869 (WebCore::highestEmbeddingAncestor): Added. 66870 (WebCore::ApplyStyleCommand::applyInlineStyle): See above. 66871 66872 2010-08-30 Martin Robinson <mrobinson (a] igalia.com> 66873 66874 Build fix. Add the new fileapi directory to the IDL vpath. 66875 66876 * GNUmakefile.am: 66877 66878 2010-08-30 Martin Robinson <mrobinson (a] igalia.com> 66879 66880 Reviewed by Xan Lopez. 66881 66882 [GTK] WebKit DOM bindings build should not depend on output GNUMakefile 66883 https://bugs.webkit.org/show_bug.cgi?id=44805 66884 66885 Move WebKit DOM bindings build rules to bindings/gobject/GNUmakefile.am to 66886 prevent full WebKit API rebuilds when the automake files change. 66887 66888 No new tests as this is just a build change. 66889 66890 * bindings/gobject/GNUmakefile.am: Added. 66891 66892 2010-08-30 Pavel Feldman <pfeldman (a] chromium.org> 66893 66894 Reviewed by Yury Semikhatsky. 66895 66896 Web Inspector: event listener properties are rendered as [object Object]. 66897 https://bugs.webkit.org/show_bug.cgi?id=44779 66898 66899 * inspector/front-end/EventListenersSidebarPane.js: 66900 66901 2010-08-30 Ryuan Choi <ryuan.choi (a] samsung.com> 66902 66903 Unreviewed build fix with Blob Support 66904 66905 [EFL] Build break with Blob support 66906 https://bugs.webkit.org/show_bug.cgi?id=44858 66907 66908 No new features added, so no new tests. 66909 66910 * CMakeLists.txt: 66911 66912 2010-08-30 Andras Becsi <abecsi (a] webkit.org> 66913 66914 Unreviewed trivial fix. 66915 66916 [Qt] Let qmake know about HTML parser headers. 66917 66918 No new tests needed. 66919 66920 * WebCore.pro: 66921 66922 2010-08-30 Andras Becsi <abecsi (a] webkit.org> 66923 66924 Unreviewed build fix. 66925 66926 [Qt] Fix fileapi header paths to fix warnings after r66365. 66927 66928 No new tests needed. 66929 66930 * WebCore.pro: 66931 66932 2010-08-30 Csaba Osztrogonc <ossy (a] webkit.org> 66933 66934 Reviewed by Kent Tamura. 66935 66936 REGRESSION(r66355): Fix warnings in html/DateComponents.cpp 66937 https://bugs.webkit.org/show_bug.cgi?id=44855 66938 66939 * html/DateComponents.cpp: 66940 (WebCore::DateComponents::setMillisecondsSinceEpochForWeek): Suggested parentheses added around && within || 66941 66942 2010-08-30 Csaba Osztrogonc <ossy (a] webkit.org> 66943 66944 Reviewed by Darin Adler. 66945 66946 REGRESSION(r66324): Fix warnings in editing/ApplyStyleCommand.cpp 66947 https://bugs.webkit.org/show_bug.cgi?id=44843 66948 66949 * editing/ApplyStyleCommand.cpp: 66950 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Suggested parentheses added around && within || 66951 66952 2010-08-30 Sheriff Bot <webkit.review.bot (a] gmail.com> 66953 66954 Unreviewed, rolling out r66198. 66955 http://trac.webkit.org/changeset/66198 66956 https://bugs.webkit.org/show_bug.cgi?id=44856 66957 66958 It made tests crash on Qt bot (Requested by Ossy_ on #webkit). 66959 66960 * inspector/Inspector.idl: 66961 * inspector/InspectorController.cpp: 66962 (WebCore::InspectorController::inspectedPageDestroyed): 66963 (WebCore::InspectorController::close): 66964 * inspector/InspectorFrontendClient.h: 66965 * inspector/InspectorFrontendHost.cpp: 66966 * inspector/InspectorFrontendHost.h: 66967 * inspector/InspectorFrontendHost.idl: 66968 * inspector/front-end/InspectorFrontendHostStub.js: 66969 * inspector/front-end/inspector.js: 66970 (WebInspector.inspectedPageDestroyed): 66971 66972 2010-08-30 Marc-Antoine Ruel <maruel (a] chromium.org> 66973 66974 Reviewed by Kent Tamura. 66975 66976 Split webcore_svg off webcore_remaining. webcore_svg contains all svg 66977 sources files. 66978 https://bugs.webkit.org/show_bug.cgi?id=44840 66979 66980 * WebCore.gyp/WebCore.gyp: 66981 66982 2010-08-13 MORITA Hajime <morrita (a] google.com> 66983 66984 Reviewed by Kent Tamura. 66985 66986 https://bugs.webkit.org/show_bug.cgi?id=43960 66987 [Chromium] styled scroll bar on the window is painted badly. 66988 66989 WebKit assumes outermost scrollbar always painted. 66990 So force their style to have the background color if it isn't 66991 given by the stylesheet. 66992 66993 Test: scrollbars/custom-scrollbar-with-incomplete-style.html 66994 66995 * rendering/RenderObject.h: 66996 (WebCore::RenderObject::hasBackground): Extracted body to RenderStyle for sharing. 66997 * rendering/RenderScrollbar.cpp: 66998 (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Added the workaround as mentioned above. 66999 * rendering/RenderScrollbar.h: 67000 * rendering/style/RenderStyle.h: 67001 (WebCore::InheritedFlags::hasBackground): Extracted from RenderObject. 67002 67003 2010-08-30 Adam Barth <abarth (a] webkit.org> 67004 67005 Reviewed by Darin Adler. 67006 67007 WebCore::RenderBlock::addChild* NULL ptrs 67008 https://bugs.webkit.org/show_bug.cgi?id=43722 67009 67010 Also includes some cleanup of comments and ASSERTs. 67011 67012 Test: fast/ruby/before-doesnt-crash.html 67013 67014 * rendering/RenderRuby.cpp: 67015 (WebCore::RenderRubyAsInline::addChild): 67016 67017 2010-08-30 Marc-Antoine Ruel <maruel (a] chromium.org> 67018 67019 Reviewed by Kent Tamura 67020 67021 Move most dependencies to webcore_prerequisites 67022 https://bugs.webkit.org/show_bug.cgi?id=44814 67023 67024 * WebCore.gyp/WebCore.gyp: 67025 67026 2010-08-30 Adam Barth <abarth (a] webkit.org> 67027 67028 Move AsyncImageResizer back to html to fix Chromium build. 67029 67030 * WebCore.gypi: 67031 67032 2010-08-30 Adam Barth <abarth (a] webkit.org> 67033 67034 Fix silly typo that breaks the build. 67035 67036 * WebCore.pro: 67037 67038 2010-08-30 Adam Barth <abarth (a] webkit.org> 67039 67040 Attempt to fix the Qt build. 67041 67042 * WebCore.pri: 67043 67044 2010-08-30 Adam Barth <abarth (a] webkit.org> 67045 67046 Attempt to fix Chromium build. 67047 67048 * WebCore.gyp/WebCore.gyp: 67049 67050 2010-08-29 Adam Barth <abarth (a] webkit.org> 67051 67052 Rubber-stamped by Maciej Stachowiak. 67053 67054 Move File and Blob related files from WebCore/html to WebCore/fileapi. 67055 67056 * Android.mk: 67057 * CMakeLists.txt: 67058 * DerivedSources.make: 67059 * GNUmakefile.am: 67060 * WebCore.gypi: 67061 * WebCore.pro: 67062 * WebCore.vcproj/WebCore.vcproj: 67063 * WebCore.vcproj/WebCoreCommon.vsprops: 67064 * WebCore.xcodeproj/project.pbxproj: 67065 * fileapi: Added. 67066 * fileapi/AsyncFileWriter.h: Copied from WebCore/html/AsyncFileWriter.h. 67067 * fileapi/Blob.cpp: Copied from WebCore/html/Blob.cpp. 67068 * fileapi/Blob.h: Copied from WebCore/html/Blob.h. 67069 * fileapi/Blob.idl: Copied from WebCore/html/Blob.idl. 67070 * fileapi/BlobBuilder.cpp: Copied from WebCore/html/BlobBuilder.cpp. 67071 * fileapi/BlobBuilder.h: Copied from WebCore/html/BlobBuilder.h. 67072 * fileapi/BlobBuilder.idl: Copied from WebCore/html/BlobBuilder.idl. 67073 * fileapi/BlobURL.cpp: Copied from WebCore/html/BlobURL.cpp. 67074 * fileapi/BlobURL.h: Copied from WebCore/html/BlobURL.h. 67075 * fileapi/File.cpp: Copied from WebCore/html/File.cpp. 67076 * fileapi/File.h: Copied from WebCore/html/File.h. 67077 * fileapi/File.idl: Copied from WebCore/html/File.idl. 67078 * fileapi/FileError.h: Copied from WebCore/html/FileError.h. 67079 * fileapi/FileError.idl: Copied from WebCore/html/FileError.idl. 67080 * fileapi/FileList.cpp: Copied from WebCore/html/FileList.cpp. 67081 * fileapi/FileList.h: Copied from WebCore/html/FileList.h. 67082 * fileapi/FileList.idl: Copied from WebCore/html/FileList.idl. 67083 * fileapi/FileReader.cpp: Copied from WebCore/html/FileReader.cpp. 67084 * fileapi/FileReader.h: Copied from WebCore/html/FileReader.h. 67085 * fileapi/FileReader.idl: Copied from WebCore/html/FileReader.idl. 67086 * fileapi/FileStreamProxy.cpp: Copied from WebCore/html/FileStreamProxy.cpp. 67087 * fileapi/FileStreamProxy.h: Copied from WebCore/html/FileStreamProxy.h. 67088 * fileapi/FileThread.cpp: Copied from WebCore/html/FileThread.cpp. 67089 * fileapi/FileThread.h: Copied from WebCore/html/FileThread.h. 67090 * fileapi/FileThreadTask.h: Copied from WebCore/html/FileThreadTask.h. 67091 * fileapi/FileWriter.cpp: Copied from WebCore/html/FileWriter.cpp. 67092 * fileapi/FileWriter.h: Copied from WebCore/html/FileWriter.h. 67093 * fileapi/FileWriter.idl: Copied from WebCore/html/FileWriter.idl. 67094 * fileapi/FileWriterClient.h: Copied from WebCore/html/FileWriterClient.h. 67095 * fileapi/ThreadableBlobRegistry.cpp: Copied from WebCore/html/ThreadableBlobRegistry.cpp. 67096 * fileapi/ThreadableBlobRegistry.h: Copied from WebCore/html/ThreadableBlobRegistry.h. 67097 * html/AsyncFileWriter.h: Removed. 67098 * html/Blob.cpp: Removed. 67099 * html/Blob.h: Removed. 67100 * html/Blob.idl: Removed. 67101 * html/BlobBuilder.cpp: Removed. 67102 * html/BlobBuilder.h: Removed. 67103 * html/BlobBuilder.idl: Removed. 67104 * html/BlobURL.cpp: Removed. 67105 * html/BlobURL.h: Removed. 67106 * html/File.cpp: Removed. 67107 * html/File.h: Removed. 67108 * html/File.idl: Removed. 67109 * html/FileError.h: Removed. 67110 * html/FileError.idl: Removed. 67111 * html/FileList.cpp: Removed. 67112 * html/FileList.h: Removed. 67113 * html/FileList.idl: Removed. 67114 * html/FileReader.cpp: Removed. 67115 * html/FileReader.h: Removed. 67116 * html/FileReader.idl: Removed. 67117 * html/FileStreamProxy.cpp: Removed. 67118 * html/FileStreamProxy.h: Removed. 67119 * html/FileThread.cpp: Removed. 67120 * html/FileThread.h: Removed. 67121 * html/FileThreadTask.h: Removed. 67122 * html/FileWriter.cpp: Removed. 67123 * html/FileWriter.h: Removed. 67124 * html/FileWriter.idl: Removed. 67125 * html/FileWriterClient.h: Removed. 67126 * html/ThreadableBlobRegistry.cpp: Removed. 67127 * html/ThreadableBlobRegistry.h: Removed. 67128 67129 2010-08-29 Marc-Antoine Ruel <maruel (a] chromium.org> 67130 67131 Reviewed by Kent Tamura. 67132 67133 Move more common settings to webcore_prerequisites 67134 https://bugs.webkit.org/show_bug.cgi?id=44812 67135 67136 * WebCore.gyp/WebCore.gyp: 67137 67138 2010-08-29 Darin Adler <darin (a] apple.com> 67139 67140 Reviewed by Maciej Stachowiak. 67141 67142 Create SVG and WML elements with create functions instead of direct invocations of new 67143 https://bugs.webkit.org/show_bug.cgi?id=44851 67144 67145 Added the create functions, made some existing constructors protected and private, 67146 made some other member functions protected and and private, added some missing virtual 67147 keywords for clarity to functions that already were overriding virtual functions, 67148 fixed some inconsistent indentation, and removed some unneeded empty destructors. 67149 67150 In the future, it will be good to have the constructors all be private so we don't 67151 use them by accident. Then we'll change the reference count rule globally and add 67152 all the necessary calls to adoptRef. 67153 67154 The SVG changes are compiled and tested. The WML changes are speculative and untested. 67155 67156 * dom/make_names.pl: Removed supportfor the createWithNew keyword. 67157 * svg/svgtags.in: Removed all the createWithNew keywords. 67158 * wml/WMLTagNames.in: Ditto. 67159 67160 * svg/SVGAElement.cpp: 67161 (WebCore::SVGAElement::create): Added. 67162 * svg/SVGAElement.h: 67163 * svg/SVGAltGlyphElement.cpp: 67164 (WebCore::SVGAltGlyphElement::create): Added. 67165 * svg/SVGAltGlyphElement.h: 67166 * svg/SVGAnimateColorElement.cpp: 67167 (WebCore::SVGAnimateColorElement::create): Added. 67168 * svg/SVGAnimateColorElement.h: 67169 * svg/SVGAnimateElement.cpp: 67170 (WebCore::SVGAnimateElement::create): Added. 67171 * svg/SVGAnimateElement.h: 67172 * svg/SVGAnimateMotionElement.cpp: 67173 (WebCore::SVGAnimateMotionElement::create): Added. 67174 * svg/SVGAnimateMotionElement.h: 67175 * svg/SVGAnimateTransformElement.cpp: 67176 (WebCore::SVGAnimateTransformElement::create): Added. 67177 * svg/SVGAnimateTransformElement.h: 67178 * svg/SVGCircleElement.cpp: 67179 (WebCore::SVGCircleElement::create): Added. 67180 * svg/SVGCircleElement.h: 67181 * svg/SVGClipPathElement.cpp: 67182 (WebCore::SVGClipPathElement::create): Added. 67183 * svg/SVGClipPathElement.h: 67184 * svg/SVGCursorElement.cpp: 67185 (WebCore::SVGCursorElement::create): Added. 67186 * svg/SVGCursorElement.h: 67187 * svg/SVGDefsElement.cpp: 67188 (WebCore::SVGDefsElement::create): Added. 67189 * svg/SVGDefsElement.h: 67190 * svg/SVGDescElement.cpp: 67191 (WebCore::SVGDescElement::create): Added. 67192 * svg/SVGDescElement.h: 67193 * svg/SVGEllipseElement.cpp: 67194 (WebCore::SVGEllipseElement::create): Added. 67195 * svg/SVGEllipseElement.h: 67196 * svg/SVGFEBlendElement.cpp: 67197 (WebCore::SVGFEBlendElement::create): Added. 67198 * svg/SVGFEBlendElement.h: 67199 * svg/SVGFEColorMatrixElement.cpp: 67200 (WebCore::SVGFEColorMatrixElement::create): Added. 67201 * svg/SVGFEColorMatrixElement.h: 67202 * svg/SVGFEComponentTransferElement.cpp: 67203 (WebCore::SVGFEComponentTransferElement::create): Added. 67204 * svg/SVGFEComponentTransferElement.h: 67205 * svg/SVGFECompositeElement.cpp: 67206 (WebCore::SVGFECompositeElement::create): Added. 67207 * svg/SVGFECompositeElement.h: 67208 * svg/SVGFEConvolveMatrixElement.cpp: 67209 (WebCore::SVGFEConvolveMatrixElement::create): Added. 67210 * svg/SVGFEConvolveMatrixElement.h: 67211 * svg/SVGFEDiffuseLightingElement.cpp: 67212 (WebCore::SVGFEDiffuseLightingElement::create): Added. 67213 * svg/SVGFEDiffuseLightingElement.h: 67214 * svg/SVGFEDisplacementMapElement.cpp: 67215 (WebCore::SVGFEDisplacementMapElement::create): Added. 67216 * svg/SVGFEDisplacementMapElement.h: 67217 * svg/SVGFEDistantLightElement.cpp: 67218 (WebCore::SVGFEDistantLightElement::create): Added. 67219 * svg/SVGFEDistantLightElement.h: 67220 * svg/SVGFEFloodElement.cpp: 67221 (WebCore::SVGFEFloodElement::create): Added. 67222 * svg/SVGFEFloodElement.h: 67223 * svg/SVGFEFuncAElement.cpp: 67224 (WebCore::SVGFEFuncAElement::create): Added. 67225 * svg/SVGFEFuncAElement.h: 67226 * svg/SVGFEFuncBElement.cpp: 67227 (WebCore::SVGFEFuncBElement::create): Added. 67228 * svg/SVGFEFuncBElement.h: 67229 * svg/SVGFEFuncGElement.cpp: 67230 (WebCore::SVGFEFuncGElement::create): Added. 67231 * svg/SVGFEFuncGElement.h: 67232 * svg/SVGFEFuncRElement.cpp: 67233 (WebCore::SVGFEFuncRElement::create): Added. 67234 * svg/SVGFEFuncRElement.h: 67235 * svg/SVGFEGaussianBlurElement.cpp: 67236 (WebCore::SVGFEGaussianBlurElement::create): Added. 67237 * svg/SVGFEGaussianBlurElement.h: 67238 * svg/SVGFEImageElement.cpp: 67239 (WebCore::SVGFEImageElement::create): Added. 67240 * svg/SVGFEImageElement.h: 67241 * svg/SVGFEMergeElement.cpp: 67242 (WebCore::SVGFEMergeElement::create): Added. 67243 * svg/SVGFEMergeElement.h: 67244 * svg/SVGFEMergeNodeElement.cpp: 67245 (WebCore::SVGFEMergeNodeElement::create): Added. 67246 * svg/SVGFEMergeNodeElement.h: 67247 * svg/SVGFEMorphologyElement.cpp: 67248 (WebCore::SVGFEMorphologyElement::create): Added. 67249 * svg/SVGFEMorphologyElement.h: 67250 * svg/SVGFEOffsetElement.cpp: 67251 (WebCore::SVGFEOffsetElement::create): Added. 67252 * svg/SVGFEOffsetElement.h: 67253 * svg/SVGFEPointLightElement.cpp: 67254 (WebCore::SVGFEPointLightElement::create): Added. 67255 * svg/SVGFEPointLightElement.h: 67256 * svg/SVGFESpecularLightingElement.cpp: 67257 (WebCore::SVGFESpecularLightingElement::create): Added. 67258 * svg/SVGFESpecularLightingElement.h: 67259 * svg/SVGFESpotLightElement.cpp: 67260 (WebCore::SVGFESpotLightElement::create): Added. 67261 * svg/SVGFESpotLightElement.h: 67262 * svg/SVGFETileElement.cpp: 67263 (WebCore::SVGFETileElement::create): Added. 67264 * svg/SVGFETileElement.h: 67265 * svg/SVGFETurbulenceElement.cpp: 67266 (WebCore::SVGFETurbulenceElement::create): Added. 67267 * svg/SVGFETurbulenceElement.h: 67268 * svg/SVGFilterElement.cpp: 67269 (WebCore::SVGFilterElement::create): Added. 67270 * svg/SVGFilterElement.h: 67271 * svg/SVGFontElement.cpp: 67272 (WebCore::SVGFontElement::create): Added. 67273 * svg/SVGFontElement.h: 67274 * svg/SVGFontFaceElement.cpp: 67275 (WebCore::SVGFontFaceElement::create): Added. 67276 * svg/SVGFontFaceElement.h: 67277 * svg/SVGFontFaceFormatElement.cpp: 67278 (WebCore::SVGFontFaceFormatElement::create): Added. 67279 * svg/SVGFontFaceFormatElement.h: 67280 * svg/SVGFontFaceNameElement.cpp: 67281 (WebCore::SVGFontFaceNameElement::create): Added. 67282 * svg/SVGFontFaceNameElement.h: 67283 * svg/SVGFontFaceSrcElement.cpp: 67284 (WebCore::SVGFontFaceSrcElement::create): Added. 67285 * svg/SVGFontFaceSrcElement.h: 67286 * svg/SVGFontFaceUriElement.cpp: 67287 (WebCore::SVGFontFaceUriElement::create): Added. 67288 * svg/SVGFontFaceUriElement.h: 67289 * svg/SVGForeignObjectElement.cpp: 67290 (WebCore::SVGForeignObjectElement::create): Added. 67291 * svg/SVGForeignObjectElement.h: 67292 * svg/SVGGElement.cpp: 67293 (WebCore::SVGGElement::create): Added. 67294 * svg/SVGGElement.h: 67295 * svg/SVGGlyphElement.cpp: 67296 (WebCore::SVGGlyphElement::create): Added. 67297 * svg/SVGGlyphElement.h: 67298 * svg/SVGHKernElement.cpp: 67299 (WebCore::SVGHKernElement::create): Added. 67300 * svg/SVGHKernElement.h: 67301 * svg/SVGImageElement.cpp: 67302 (WebCore::SVGImageElement::create): Added. 67303 * svg/SVGImageElement.h: 67304 * svg/SVGLineElement.cpp: 67305 (WebCore::SVGLineElement::create): Added. 67306 * svg/SVGLineElement.h: 67307 * svg/SVGLinearGradientElement.cpp: 67308 (WebCore::SVGLinearGradientElement::create): Added. 67309 * svg/SVGLinearGradientElement.h: 67310 * svg/SVGMPathElement.cpp: 67311 (WebCore::SVGMPathElement::create): Added. 67312 * svg/SVGMPathElement.h: 67313 * svg/SVGMarkerElement.cpp: 67314 (WebCore::SVGMarkerElement::create): Added. 67315 * svg/SVGMarkerElement.h: 67316 * svg/SVGMaskElement.cpp: 67317 (WebCore::SVGMaskElement::create): Added. 67318 * svg/SVGMaskElement.h: 67319 * svg/SVGMetadataElement.cpp: 67320 (SVGMetadataElement::create): Added. 67321 * svg/SVGMetadataElement.h: 67322 * svg/SVGMissingGlyphElement.cpp: 67323 (WebCore::SVGMissingGlyphElement::create): Added. 67324 * svg/SVGMissingGlyphElement.h: 67325 * svg/SVGPathElement.cpp: 67326 (WebCore::SVGPathElement::create): Added. 67327 * svg/SVGPathElement.h: 67328 * svg/SVGPatternElement.cpp: 67329 (WebCore::SVGPatternElement::create): Added. 67330 * svg/SVGPatternElement.h: 67331 * svg/SVGPolygonElement.cpp: 67332 (WebCore::SVGPolygonElement::create): Added. 67333 * svg/SVGPolygonElement.h: 67334 * svg/SVGPolylineElement.cpp: 67335 (WebCore::SVGPolylineElement::create): Added. 67336 * svg/SVGPolylineElement.h: 67337 * svg/SVGRadialGradientElement.cpp: 67338 (WebCore::SVGRadialGradientElement::create): Added. 67339 * svg/SVGRadialGradientElement.h: 67340 * svg/SVGRectElement.cpp: 67341 (WebCore::SVGRectElement::create): Added. 67342 * svg/SVGRectElement.h: 67343 * svg/SVGSVGElement.cpp: 67344 (WebCore::SVGSVGElement::create): Added. 67345 * svg/SVGSVGElement.h: 67346 * svg/SVGScriptElement.cpp: 67347 (WebCore::SVGScriptElement::create): Added. 67348 * svg/SVGScriptElement.h: 67349 * svg/SVGSetElement.cpp: 67350 (WebCore::SVGSetElement::create): Added. 67351 * svg/SVGSetElement.h: 67352 * svg/SVGStopElement.cpp: 67353 (WebCore::SVGStopElement::create): Added. 67354 * svg/SVGStopElement.h: 67355 (WebCore::SVGStyleElement::create): Added. 67356 * svg/SVGStyleElement.h: 67357 * svg/SVGSwitchElement.cpp: 67358 (WebCore::SVGSwitchElement::create): Added. 67359 * svg/SVGSwitchElement.h: 67360 * svg/SVGSymbolElement.cpp: 67361 (WebCore::SVGSymbolElement::create): Added. 67362 * svg/SVGSymbolElement.h: 67363 * svg/SVGTRefElement.cpp: 67364 (WebCore::SVGTRefElement::create): Added. 67365 * svg/SVGTRefElement.h: 67366 * svg/SVGTSpanElement.cpp: 67367 (WebCore::SVGTSpanElement::create): Added. 67368 * svg/SVGTSpanElement.h: 67369 * svg/SVGTextContentElement.h: 67370 * svg/SVGTextElement.cpp: 67371 (WebCore::SVGTextElement::create): Added. 67372 * svg/SVGTextElement.h: 67373 * svg/SVGTextPathElement.cpp: 67374 (WebCore::SVGTextPathElement::create): Added. 67375 * svg/SVGTextPathElement.h: 67376 * svg/SVGTextPositioningElement.h: 67377 * svg/SVGTitleElement.cpp: 67378 (WebCore::SVGTitleElement::create): Added. 67379 * svg/SVGTitleElement.h: 67380 * svg/SVGUseElement.cpp: 67381 (WebCore::SVGUseElement::create): Added. 67382 * svg/SVGUseElement.h: 67383 * svg/SVGVKernElement.cpp: 67384 (WebCore::SVGVKernElement::create): Added. 67385 * svg/SVGVKernElement.h: 67386 * svg/SVGViewElement.cpp: 67387 (WebCore::SVGViewElement::create): Added. 67388 * svg/SVGViewElement.h: 67389 * wml/WMLAElement.cpp: 67390 (WebCore::WMLAElement::create): Added. 67391 * wml/WMLAElement.h: 67392 * wml/WMLAccessElement.cpp: 67393 (WebCore::WMLAccessElement::create): Added. 67394 * wml/WMLAccessElement.h: 67395 * wml/WMLAnchorElement.cpp: 67396 (WebCore::WMLAnchorElement::create): Added. 67397 * wml/WMLAnchorElement.h: 67398 * wml/WMLBRElement.cpp: 67399 (WebCore::WMLBRElement::create): Added. 67400 * wml/WMLBRElement.h: 67401 * wml/WMLCardElement.cpp: 67402 (WebCore::WMLCardElement::create): Added. 67403 * wml/WMLCardElement.h: 67404 * wml/WMLDoElement.cpp: 67405 (WebCore::WMLDoElement::create): Added. 67406 * wml/WMLDoElement.h: 67407 * wml/WMLFieldSetElement.cpp: 67408 (WebCore::WMLFieldSetElement::create): Added. 67409 * wml/WMLFieldSetElement.h: 67410 * wml/WMLFormControlElement.cpp: 67411 (WebCore::WMLFormControlElement::create): Added. 67412 * wml/WMLGoElement.cpp: 67413 (WebCore::WMLGoElement::create): Added. 67414 * wml/WMLGoElement.h: 67415 * wml/WMLImageElement.cpp: 67416 (WebCore::WMLImageElement::create): Added. 67417 * wml/WMLImageElement.h: 67418 * wml/WMLInputElement.cpp: 67419 (WebCore::WMLInputElement::create): Added. 67420 * wml/WMLInputElement.h: 67421 * wml/WMLInsertedLegendElement.cpp: 67422 (WebCore::WMLInsertedLegendElement::create): Added. 67423 * wml/WMLInsertedLegendElement.h: 67424 * wml/WMLIntrinsicEvent.cpp: 67425 (WebCore::WMLIntrinsicEvent::create): Added. 67426 * wml/WMLMetaElement.cpp: 67427 (WebCore::WMLMetaElement::create): Added. 67428 * wml/WMLMetaElement.h: 67429 * wml/WMLNoopElement.cpp: 67430 (WebCore::WMLNoopElement::create): Added. 67431 * wml/WMLNoopElement.h: 67432 * wml/WMLOnEventElement.cpp: 67433 (WebCore::WMLOnEventElement::create): Added. 67434 * wml/WMLOnEventElement.h: 67435 * wml/WMLOptGroupElement.cpp: 67436 (WebCore::WMLOptGroupElement::create): Added. 67437 * wml/WMLOptGroupElement.h: 67438 * wml/WMLOptionElement.cpp: 67439 (WebCore::WMLOptionElement::create): Added. 67440 * wml/WMLOptionElement.h: 67441 * wml/WMLPElement.cpp: 67442 (WebCore::WMLPElement::create): Added. 67443 * wml/WMLPElement.h: 67444 * wml/WMLPostfieldElement.cpp: 67445 (WebCore::WMLPostfieldElement::create): Added. 67446 * wml/WMLPostfieldElement.h: 67447 * wml/WMLPrevElement.cpp: 67448 (WebCore::WMLPrevElement::create): Added. 67449 * wml/WMLPrevElement.h: 67450 * wml/WMLRefreshElement.cpp: 67451 (WebCore::WMLRefreshElement::create): Added. 67452 * wml/WMLRefreshElement.h: 67453 * wml/WMLSelectElement.cpp: 67454 (WebCore::WMLSelectElement::create): Added. 67455 * wml/WMLSelectElement.h: 67456 * wml/WMLSetvarElement.cpp: 67457 (WebCore::WMLSetvarElement::create): Added. 67458 * wml/WMLSetvarElement.h: 67459 * wml/WMLTableElement.cpp: 67460 (WebCore::WMLTableElement::create): Added. 67461 * wml/WMLTableElement.h: 67462 * wml/WMLTaskElement.cpp: 67463 (WebCore::WMLTaskElement::create): Added. 67464 * wml/WMLTaskElement.h: 67465 * wml/WMLTemplateElement.cpp: 67466 (WebCore::WMLTemplateElement::create): Added. 67467 * wml/WMLTemplateElement.h: 67468 * wml/WMLTimerElement.cpp: 67469 (WebCore::WMLTimerElement::create): Added. 67470 * wml/WMLTimerElement.h: 67471 67472 2010-08-29 Marc-Antoine Ruel <maruel (a] chromium.org> 67473 67474 Reviewed by Kent Tamura. 67475 67476 Rename webcore to 'webcore_remaining'. 67477 https://bugs.webkit.org/show_bug.cgi?id=44796 67478 67479 Create a meta-target webcore that inherits from every webcore_XXX targets. (Currently 1) 67480 Move direct_dependent_settings and export_dependent_settings from webcore_remaining to webcore 67481 67482 Obviously, there will be other webcore_XXX targets. Keeping the change as small as possible. 67483 67484 * WebCore.gyp/WebCore.gyp: 67485 67486 2010-08-29 Jeremy Moskovich <jeremy (a] chromium.org> 67487 67488 Reviewed by Dimitri Glazkov. 67489 67490 First step in unforking Chrome's FontPlatformDataMac.mm. 67491 Move files from platform/graphics/mac to platform/graphics/cocoa 67492 67493 https://bugs.webkit.org/show_bug.cgi?id=41398 67494 67495 Just moving files around so no new tests. 67496 67497 * WebCore.gyp/WebCore.gyp: 67498 * WebCore.gypi: 67499 * WebCore.xcodeproj/project.pbxproj: 67500 * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: 67501 * platform/graphics/cocoa/FontPlatformData.h: Copied from WebCore/platform/graphics/mac/FontPlatformData.h. 67502 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Copied from WebCore/platform/graphics/mac/FontPlatformDataMac.mm. 67503 * platform/graphics/mac/FontPlatformData.h: Removed. 67504 * platform/graphics/mac/FontPlatformDataMac.mm: Removed. 67505 67506 2010-08-29 Kent Tamura <tkent (a] chromium.org> 67507 67508 Reviewed by Darin Adler. 67509 67510 Introduce isValidValue(const String&) of HTMLInputElement and HTMLTextAreaElement 67511 https://bugs.webkit.org/show_bug.cgi?id=43537 67512 67513 isValidValue() is useful for browser implementations to propose 67514 form field values without breaking form validity. 67515 No new tests because these functions are not exposed to JavaScript. 67516 67517 * html/HTMLFormControlElement.h: 67518 (WebCore::HTMLTextFormControlElement::): 67519 Remove virtual valueMissing(), patternMismatch(), and tooLong(). 67520 * html/HTMLInputElement.cpp: 67521 (WebCore::isValidColorString): Moved from ValidityState. 67522 (WebCore::isValidEmailAddress): ditto. 67523 (WebCore::HTMLInputElement::isValidValue): Added. 67524 (WebCore::HTMLInputElement::typeMismatch): Add a String parameter. 67525 (WebCore::HTMLInputElement::valueMissing): Add a String parameter. 67526 (WebCore::HTMLInputElement::patternMismatch): Add a String parameter. 67527 (WebCore::HTMLInputElement::tooLong): Add String and NeedsToCheckDirtyFlag parameters. 67528 (WebCore::HTMLInputElement::rangeUnderflow): Add a String parameter. 67529 (WebCore::HTMLInputElement::rangeOverflow): Add a String parameter. 67530 (WebCore::HTMLInputElement::stepMismatch): Add a String parameter. 67531 * html/HTMLInputElement.h: 67532 * html/HTMLTextAreaElement.cpp: 67533 (WebCore::HTMLTextAreaElement::tooLong): Add String and NeedsToCheckDirtyFlag parameters. 67534 (WebCore::HTMLTextAreaElement::isValidValue): Added. 67535 * html/HTMLTextAreaElement.h: 67536 (WebCore::HTMLTextAreaElement::valueMissing): 67537 * html/ValidityState.cpp: 67538 (WebCore::ValidityState::valueMissing): Calls valueMissing() of HTMLInputElement or HTMLTextAreaElement. 67539 (WebCore::ValidityState::typeMismatch): Passes value() to HTMLInputElement::typeMismatch(). 67540 (WebCore::ValidityState::patternMismatch): Calls patternMismatch() of HTMLInputElement. 67541 (WebCore::ValidityState::tooLong): Calls valueMissing() of HTMLInputElement or HTMLTextAreaElement. 67542 (WebCore::ValidityState::rangeUnderflow): Passes value() to HTMLInputElement::rangeUnderflow(). 67543 (WebCore::ValidityState::rangeOverflow): Passes value() to HTMLInputElement::rangeUnderflow(). 67544 (WebCore::ValidityState::stepMismatch): Passes value() to HTMLInputElement::stepMismatch(). 67545 * html/ValidityState.h: 67546 67547 2010-08-29 Kent Tamura <tkent (a] chromium.org> 67548 67549 Reviewed by Darin Adler. 67550 67551 Change lower and higher limits of date/datetime/datetime-local/month/week types 67552 https://bugs.webkit.org/show_bug.cgi?id=39737 67553 67554 According to the latest draft of HTML5, ISO-8601 dates in HTML5 67555 should support A.D.0001 in Gregorian calendar though Gregorian 67556 calendar started in 1582. So, we change the lower limits of 67557 date&time types to 0001-01-01T00:00. 67558 67559 We also introduce the common higher limit, 275760-09-13T00:00. It 67560 is the higher limit of Date type of ECMAScript. 67561 67562 * html/DateComponents.cpp: 67563 (WebCore::DateComponents::parseYear): 67564 Rejects years less than A.D.1 and years greater than 275760. 67565 (WebCore::withinHTMLDateLimits): 67566 Helper functions to check lower and higher limits. 67567 (WebCore::DateComponents::addDay): 67568 - Remove an overflow check. 'year' can't be so large number because 67569 parseYear() rejects such numbers. 67570 - Add withinHTMLDateLimits() calls. 67571 (WebCore::DateComponents::addMinute): 67572 - Add an assertion for the base date. 67573 - Add withinHTMLDateLimits() calls. 67574 (WebCore::DateComponents::parseMonth): 67575 Add withinHTMLDateLimits() call. 67576 (WebCore::DateComponents::parseDate): ditto. 67577 (WebCore::DateComponents::parseWeek): ditto. 67578 (WebCore::DateComponents::parseDateTimeLocal): ditto. 67579 (WebCore::DateComponents::parseDateTime): ditto. 67580 (WebCore::DateComponents::setMillisecondsSinceEpochForDate): ditto. 67581 (WebCore::DateComponents::setMillisecondsSinceEpochForDateTime): ditto. 67582 (WebCore::DateComponents::setMillisecondsSinceEpochForMonth): ditto. 67583 (WebCore::DateComponents::setMonthsSinceEpoch): 67584 Add year range check and withinHTMLDateLimits() call. 67585 (WebCore::DateComponents::setMillisecondsSinceEpochForWeek): 67586 Add year range check and week range check. 67587 * html/DateComponents.h: 67588 Update minimum/maximum constant values. 67589 (WebCore::DateComponents::minimumDate): 67590 (WebCore::DateComponents::minimumDateTime): 67591 (WebCore::DateComponents::minimumMonth): 67592 (WebCore::DateComponents::minimumWeek): 67593 (WebCore::DateComponents::maximumDate): 67594 (WebCore::DateComponents::maximumDateTime): 67595 (WebCore::DateComponents::maximumMonth): 67596 (WebCore::DateComponents::maximumWeek): 67597 67598 2010-08-29 Kwang Yul Seo <skyul (a] company100.net> 67599 67600 Reviewed by Kent Tamura. 67601 67602 [BREWMP] Port SharedBuffer::createWithContentsOfFile 67603 https://bugs.webkit.org/show_bug.cgi?id=34412 67604 67605 Implement SharedBuffer::createWithContentsOfFile with IFile. 67606 67607 * platform/brew/SharedBufferBrew.cpp: Added. 67608 (WebCore::SharedBuffer::createWithContentsOfFile): 67609 67610 2010-08-29 Enrica Casucci <enrica (a] apple.com> 67611 67612 Reviewed by Adele Peterson. 67613 67614 Crash when dragging text in Google Docs 67615 https://bugs.webkit.org/show_bug.cgi?id=20471 67616 <rdar://problem/7783629> 67617 67618 This fixes the crash but also fixes the generated markup when 67619 performing a replacement at the border with an inline, to avoid the 67620 new content being merged into the inline. 67621 The crash is happening when doApply detects the need of merging 67622 the start and the end of the new paragraph and the destination position 67623 is moved inside an inline. 67624 67625 I've added new test cases to an existing layout test. 67626 67627 * editing/ReplaceSelectionCommand.cpp: 67628 (WebCore::ReplaceSelectionCommand::doApply): When the situation described above is detected, 67629 we insert a placeholder to avoid merging into the inline. 67630 67631 2010-08-29 Adam Barth <abarth (a] webkit.org> 67632 67633 Reviewed by Darin Adler. 67634 67635 Implement HTML5's fakepath 67636 https://bugs.webkit.org/show_bug.cgi?id=29000 67637 67638 The HTML 5 spec says to prepend C:\fakepath\ to the value of an 67639 <input type="file"> control, so that's what we do now. 67640 67641 * html/HTMLInputElement.cpp: 67642 (WebCore::HTMLInputElement::value): 67643 67644 2010-08-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 67645 67646 Unreviewed, rolling out r66329. 67647 http://trac.webkit.org/changeset/66329 67648 https://bugs.webkit.org/show_bug.cgi?id=44845 67649 67650 broke chromium mac (Requested by jamesr on #webkit). 67651 67652 * WebCore.gypi: 67653 * WebCore.xcodeproj/project.pbxproj: 67654 * platform/graphics/mac/FontPlatformData.h: Renamed from WebCore/platform/graphics/cocoa/FontPlatformData.h. 67655 (WebCore::toCTFontRef): 67656 (WebCore::FontPlatformData::FontPlatformData): 67657 (WebCore::FontPlatformData::isHashTableDeletedValue): 67658 (WebCore::FontPlatformData::size): 67659 (WebCore::FontPlatformData::syntheticBold): 67660 (WebCore::FontPlatformData::syntheticOblique): 67661 (WebCore::FontPlatformData::hash): 67662 (WebCore::FontPlatformData::operator==): 67663 (WebCore::FontPlatformData::font): 67664 (WebCore::FontPlatformData::isColorBitmapFont): 67665 (WebCore::FontPlatformData::cgFont): 67666 (WebCore::FontPlatformData::hashTableDeletedFontValue): 67667 * platform/graphics/mac/FontPlatformDataMac.mm: Renamed from WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm. 67668 (WebCore::FontPlatformData::FontPlatformData): 67669 (WebCore::~FontPlatformData): 67670 (WebCore::FontPlatformData::operator=): 67671 (WebCore::FontPlatformData::setFont): 67672 (WebCore::FontPlatformData::roundsGlyphAdvances): 67673 (WebCore::FontPlatformData::allowsLigatures): 67674 (WebCore::FontPlatformData::ctFont): 67675 (WebCore::FontPlatformData::description): 67676 67677 2010-08-29 Simon Fraser <simon.fraser (a] apple.com> 67678 67679 Reviewed by Darin Adler. 67680 67681 Fix RenderStyle::addCursor to use a StyleImage, not a CachedImage 67682 https://bugs.webkit.org/show_bug.cgi?id=44719 67683 67684 Modernize the CSS cursor code to use a StyleImage, rather 67685 than a CachedImage in the CursorData, and handle the loading 67686 of pending images for the cursor property. 67687 67688 Covered by manual tests in WebCore/manual-tests 67689 67690 * css/CSSComputedStyleDeclaration.cpp: 67691 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 67692 * css/CSSStyleSelector.cpp: 67693 (WebCore::CSSStyleSelector::applyProperty): 67694 (WebCore::CSSStyleSelector::loadPendingImages): 67695 * html/canvas/WebGLRenderingContext.cpp: 67696 * page/EventHandler.cpp: 67697 (WebCore::EventHandler::selectCursor): 67698 * rendering/style/CursorData.h: 67699 (WebCore::CursorData::CursorData): 67700 (WebCore::CursorData::image): 67701 (WebCore::CursorData::setImage): 67702 * rendering/style/CursorList.h: 67703 (WebCore::CursorList::operator[]): 67704 * rendering/style/RenderStyle.cpp: 67705 (WebCore::RenderStyle::addCursor): 67706 * rendering/style/RenderStyle.h: 67707 67708 2010-08-29 Simon Fraser <simon.fraser (a] apple.com> 67709 67710 Reviewed by Darin Adler. 67711 67712 When properties are missing from animation keyframes, interpolate between those keyframes that specify them 67713 https://bugs.webkit.org/show_bug.cgi?id=40794 67714 67715 When a property does not appear in all keyframes of a keyframe animation, we currently use the 67716 value of that property from the unanimated style. That forces the author to use additional 67717 keyframes for properties that need to "skip a keyframe", which is laborious. 67718 67719 With this change, properties are interpolated between the keyframes in which they appear. 67720 This is equivalent to splitting each property out into its own set of keyframes. 67721 67722 Tests: animations/missing-keyframe-properties-repeating.html 67723 animations/missing-keyframe-properties-timing-function.html 67724 animations/missing-keyframe-properties.html 67725 67726 * css/CSSStyleSelector.h: 67727 * css/CSSStyleSelector.cpp: 67728 (WebCore::CSSStyleSelector::styleForKeyframe): Pass a KeyframeValue in so that we can 67729 collect which properties are represented per keyframe. 67730 (WebCore::CSSStyleSelector::keyframeStylesForAnimation): Keyframes are inserted into a 67731 KeyframeList by object now, rather than by key and style. 67732 67733 * page/animation/AnimationBase.cpp: 67734 (WebCore::AnimationBase::progress): Use AnimationDirectionAlternate for readability. 67735 67736 * page/animation/KeyframeAnimation.cpp: 67737 (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): Renamed from getKeyframeAnimationInterval. 67738 Use fractionalTime etc to match AnimationBase::progress(), and do lookups per-property. 67739 Simplify the code that finds the relevant keyframe to do less work. 67740 (WebCore::KeyframeAnimation::animate): Call fetchIntervalEndpointsForProperty() for each property, rather than just once for the 67741 entire keyframe. 67742 (WebCore::KeyframeAnimation::getAnimatedStyle): Ditto. 67743 (WebCore::KeyframeAnimation::hasAnimationForProperty): FIXME comment. 67744 67745 * page/animation/KeyframeAnimation.h: Rename getKeyframeAnimationInterval() to fetchIntervalEndpointsForProperty(). 67746 67747 * rendering/RenderLayerBacking.cpp: 67748 (WebCore::RenderLayerBacking::startAnimation): For hardware animations, only insert values 67749 for keyframes which contain the property. 67750 67751 (WebCore::KeyframeList::KeyframeList): insert() takes a KeyframeValue now. 67752 * rendering/style/KeyframeList.cpp: 67753 (WebCore::KeyframeList::operator==): 67754 (WebCore::KeyframeList::insert): Fix insert/replace logic, and ensure we maintain the 67755 m_properties hash. 67756 67757 * rendering/style/KeyframeList.h: 67758 (WebCore::KeyframeValue::KeyframeValue): Make members private, with accessors. 67759 Add a m_properties HashSet for the properties animated in this keyframe. 67760 67761 67762 2010-08-29 Csaba Osztrogonc <ossy (a] webkit.org> 67763 67764 Reviewed by Darin Adler. 67765 67766 REGRESSION(r66324): Fix warnings in editing/ApplyStyleCommand.cpp 67767 https://bugs.webkit.org/show_bug.cgi?id=44843 67768 67769 * editing/ApplyStyleCommand.cpp: 67770 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Suggested parentheses added around && within || 67771 67772 2010-08-29 Darin Adler <darin (a] apple.com> 67773 67774 Try to fix Mac build. 67775 67776 * WebCore.xcodeproj/project.pbxproj: Mark CounterContent.h Private instead of Project. 67777 67778 2010-08-29 Pawel Hajdan <phajdan.jr (a] chromium.org> 67779 67780 Reviewed by Darin Adler. 67781 67782 Fix libxml workarounds to work with recent versions of libxml. 67783 I was testing locally with libxml2-2.7.6. 67784 https://bugs.webkit.org/show_bug.cgi?id=30508 67785 67786 Based on patch by Philippe Normand <pnormand (a] igalia.com>. 67787 67788 This also fixes a Chromium bug: 67789 http://code.google.com/p/chromium/issues/detail?id=29333 67790 67791 * dom/XMLDocumentParserLibxml2.cpp: 67792 (WebCore::switchToUTF16): 67793 (WebCore::XMLParserContext::createStringParser): 67794 (WebCore::XMLDocumentParser::doWrite): 67795 (WebCore::startDocumentHandler): 67796 67797 2010-08-29 Darin Adler <darin (a] apple.com> 67798 67799 Try to fix Windows build. 67800 67801 * rendering/style/ContentData.h: Added include of CounterContent.h. 67802 67803 * css/CSSStyleSelector.cpp: Removed include of CounterContent.h. 67804 * rendering/style/ContentData.cpp: Ditto. 67805 * rendering/style/RenderStyle.cpp: Ditto. 67806 67807 2010-08-29 Darin Adler <darin (a] apple.com> 67808 67809 Reviewed by Sam Weinig. 67810 67811 Deploy OwnPtr, PassOwnPtr, and adoptPtr in some CSS-related files 67812 https://bugs.webkit.org/show_bug.cgi?id=44834 67813 67814 * css/CSSFunctionValue.cpp: 67815 (WebCore::CSSFunctionValue::CSSFunctionValue): Updated since 67816 CSSParserFunction::args is an OwnPtr. 67817 (WebCore::CSSFunctionValue::parserValue): Ditto. 67818 67819 * css/CSSGrammar.y: Added leakPtr calls for putting MediaQueryExp* 67820 into the media query expression list, which is a vector of raw pointers 67821 that are deleted explicitly. 67822 67823 * css/CSSImportRule.cpp: 67824 (WebCore::CSSImportRule::setCSSStyleSheet): Updated to use document instead of doc. 67825 (WebCore::CSSImportRule::insertedIntoParent): Ditto. 67826 * css/CSSMutableStyleDeclaration.cpp: 67827 (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc): Ditto. 67828 67829 * css/CSSNamespace.h: Took the "m_" off the names of the data members of 67830 this structure. Used OwnPtr for the parent data member. Rewrote the 67831 namespaceForPrefix function so it's iterative instead of recursive. 67832 67833 * css/CSSParser.cpp: 67834 (WebCore::CSSParser::CSSParser): Update since m_mediaQuery, m_floatingMediaQuery, 67835 m_floatingMediaQueryExp, and m_floatingMediaQueryExpList are now all OwnPtr and 67836 thus don't need to be initialized. 67837 (WebCore::CSSParser::~CSSParser): Update to not delete the above OwnPtr. 67838 (WebCore::CSSParser::parseMediaQuery): Replaced the code that sets m_mediaQuery 67839 to 0 with an assertion. Also use release when passing the media query to 67840 appendMediaQuery. 67841 (WebCore::CSSParser::document): Updated to use document instead of doc and to 67842 use early return instead of a nested if. 67843 (WebCore::CSSParser::parseContent): Added a get() call needed since 67844 CSSParserFunction::args is an OwnPtr. 67845 (WebCore::CSSParser::parseAnimationTimingFunction): Ditto. 67846 (WebCore::CSSParser::parseDashboardRegions): Ditto. 67847 (WebCore::CSSParser::parseShape): Ditto. 67848 (WebCore::isValidFormatFunction): Ditto. 67849 (WebCore::CSSParser::parseFontFaceSrc): Ditto. 67850 (WebCore::CSSParser::parseColorParameters): Ditto. 67851 (WebCore::CSSParser::parseHSLParameters): Ditto. 67852 (WebCore::parseGradientColorStop): Ditto. 67853 (WebCore::CSSParser::parseGradient): Ditto. 67854 (WebCore::CSSParser::parseCanvas): Ditto. 67855 (WebCore::CSSParser::parseTransform): Ditto. 67856 (WebCore::CSSParser::createFloatingMediaQueryExp): Updated to use adoptPtr and 67857 remove the explicit deletion. 67858 (WebCore::CSSParser::sinkFloatingMediaQueryExp): Updated to use release. 67859 (WebCore::CSSParser::createFloatingMediaQueryExpList): Ditto. 67860 (WebCore::CSSParser::sinkFloatingMediaQueryExpList): Ditto. 67861 (WebCore::CSSParser::createFloatingMediaQuery): Ditto. 67862 (WebCore::CSSParser::sinkFloatingMediaQuery): Ditto. 67863 (WebCore::CSSParser::checkForVariables): Use get for CSSParserFunction::args. 67864 67865 * css/CSSParser.h: Made return values for sinkFloatingMediaQueryExp, 67866 sinkFloatingMediaQueryExpList, and sinkFloatingMediaQuery be PassOwnPtr. 67867 Made createFloatingMediaQuery take a PassOwnPtr. Made m_mediaQuery, 67868 m_floatingMediaQuery, m_floatingMediaQueryExp, and m_floatingMediaQueryExpList 67869 be OwnPtr. 67870 67871 * css/CSSParserValues.h: Made args be an OwnPtr. 67872 67873 * css/CSSStyleSelector.cpp: Made CSSRuleSet m_universalRules and m_pageRules 67874 be OwnPtr. 67875 (WebCore::CSSStyleSelector::CSSStyleSelector): Use document instead of doc. 67876 Got rid of the init function, only called here, because it did nothing that 67877 wasn't already done. Eliminated unneeded code to set m_userStyle to 0, since 67878 it's now an OwnPtr and will be 0 automatically. Use adoptPtr when initializing 67879 m_medium, m_authorStyle, and m_useStyle. 67880 (WebCore::CSSStyleSelector::~CSSStyleSelector): Got rid of unneeded delete of 67881 m_medium, m_authorStyle, and m_userStyle, and unneded clear of m_keyframesRuleMap. 67882 (WebCore::CSSStyleSelector::styleForElement): Use get with m_userStyle and 67883 m_authorStyle. 67884 (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. 67885 (WebCore::CSSStyleSelector::styleForPage): Ditto. 67886 (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Ditto. 67887 (WebCore::CSSRuleSet::CSSRuleSet): Got rid of unneeded initialization of 67888 m_universalRules and m_pageRules. 67889 (WebCore::CSSRuleSet::~CSSRuleSet): Got rid of unneeed deletion of same. 67890 (WebCore::CSSRuleSet::addRule): Use adoptPtr to initialize m_universalRules. 67891 (WebCore::CSSRuleSet::addPageRule): Use adoptPtr to initialize m_pageRules. 67892 (WebCore::CSSStyleSelector::applyProperty): Use adopPtr to create counter 67893 context object. 67894 67895 * css/CSSStyleSelector.h: Made m_authorStyle, m_userStyle, and m_medium use 67896 OwnPtr. Got rid of init function. 67897 67898 * css/CSSStyleSheet.cpp: 67899 (WebCore::CSSStyleSheet::CSSStyleSheet): Updatd for name change from m_doc 67900 and doc to m_document and document. Eliminated unneeded initialization of 67901 m_namespaces now that it is an OwnPtr. 67902 (WebCore::CSSStyleSheet::~CSSStyleSheet): Got rid of unneeded deletion of same. 67903 (WebCore::CSSStyleSheet::cssRules): Updated doc to document. 67904 (WebCore::CSSStyleSheet::addNamespace): Added adopPtr when setting m_namespaces. 67905 (WebCore::CSSStyleSheet::determineNamespace): Updated for changes to the 67906 CSSNamespace class, using uri data member instead of function. 67907 (WebCore::CSSStyleSheet::styleSheetChanged): Use document instead of doc. 67908 67909 * css/CSSStyleSheet.h: Renamed doc and m_doc to document and m_document. 67910 Made m_namespaces an OwnPtr. 67911 67912 * css/CSSValueList.cpp: 67913 (WebCore::CSSValueList::CSSValueList): Clean up logic a bit. 67914 (WebCore::CSSValueList::createParserValueList): Clean up logic a bit and 67915 return a PassOwnPtr. 67916 67917 * css/CSSValueList.h: Changed createParserValueList to return a PassOwnPtr. 67918 67919 * css/CSSVariablesDeclaration.cpp: 67920 (WebCore::CSSVariablesDeclaration::setNeedsStyleRecalc): Updated to use 67921 document instead of doc. 67922 67923 * css/MediaList.cpp: 67924 (WebCore::MediaList::deleteMedium): Use OwnPtr instead of a boolean to 67925 make sure the newly-created query here is deleted. 67926 (WebCore::MediaList::appendMediaQuery): Updated to take PassOwnPtr. 67927 67928 * css/MediaList.h: Changed appendMediaQuery to take a PassOwnPtr. 67929 67930 * inspector/InspectorDOMAgent.cpp: 67931 (WebCore::InspectorDOMAgent::getStyleSheet): Use document instead of doc. 67932 (WebCore::InspectorDOMAgent::getRuleRanges): Ditto. 67933 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): Ditto. 67934 67935 * rendering/style/ContentData.cpp: 67936 (WebCore::ContentData::clear): Update since data members are OwnPtr. 67937 Also, fixed iterative deletion algorithm to be much simpler. 67938 (WebCore::ContentData::dataEquivalent): Added FIXMEs and tweaked formatting. 67939 (WebCore::ContentData::deleteContent): Tweaked formatting. 67940 67941 * rendering/style/ContentData.h: Changed m_next to an OwnPtr. 67942 Added assertions to getters to check that we get the correct type. 67943 Use leakRef instead of releaseRef. Changed setCounter and setNext functions 67944 to take PassOwnPtr arguments. 67945 67946 * rendering/style/RenderStyle.cpp: 67947 (WebCore::RenderStyle::prepareToSetContent): Refactored common part of the 67948 into a shared function so the three setContent functions don't have to repeat 67949 the logic. Used an OwnPtr to avoid confusing logic and leakPtr. 67950 (WebCore::RenderStyle::setContent): Changed argument to PassOwnPtr. 67951 67952 * rendering/style/RenderStyle.h: Changed setContent argument to a PassOwnPtr. 67953 Added declaration of prepareToSetContent helper function. 67954 67955 2010-08-29 Patrick Gansterer <paroga (a] paroga.com> 67956 67957 Reviewed by Adam Roben. 67958 67959 [WINCE] Port ScrollbarThemeWin to WinCE 67960 https://bugs.webkit.org/show_bug.cgi?id=44818 67961 67962 Add a #ifdef around usage of unsupported DFCS_FLAT. 67963 67964 * platform/win/ScrollbarThemeWin.cpp: 67965 (WebCore::ScrollbarThemeWin::paintButton): 67966 67967 2010-08-29 Patrick Gansterer <paroga (a] paroga.com> 67968 67969 Reviewed by Adam Roben. 67970 67971 [WINCE] Port SystemInfo to WinCE 67972 https://bugs.webkit.org/show_bug.cgi?id=44817 67973 67974 * platform/win/SystemInfo.cpp: 67975 (WebCore::isRunningOnVistaOrLater): 67976 67977 2010-08-28 Jeremy Moskovich <jeremy (a] chromium.org> 67978 67979 Reviewed by Dimitri Glazkov. 67980 67981 First step in unforking Chrome's FontPlatformDataMac.mm. 67982 Move files from platform/graphics/mac to platform/graphics/cocoa 67983 67984 https://bugs.webkit.org/show_bug.cgi?id=41398 67985 67986 Just moving files around so no new tests. 67987 67988 * WebCore.gypi: 67989 * WebCore.xcodeproj/project.pbxproj: 67990 * platform/graphics/cocoa: Added. 67991 * platform/graphics/cocoa/FontPlatformData.h: Copied from WebCore/platform/graphics/mac/FontPlatformData.h. 67992 * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Copied from WebCore/platform/graphics/mac/FontPlatformDataMac.mm. 67993 * platform/graphics/mac/FontPlatformData.h: Removed. 67994 * platform/graphics/mac/FontPlatformDataMac.mm: Removed. 67995 67996 2010-08-28 Darin Adler <darin (a] apple.com> 67997 67998 Reviewed by Sam Weinig. 67999 68000 Some IDL attributes don't reflect URL content attributes properly 68001 https://bugs.webkit.org/show_bug.cgi?id=43650 68002 68003 * dom/Document.cpp: 68004 (WebCore::Document::processBaseElement): Added. Implements the rules for base elements 68005 from the HTML5 specification. Handles multiple base elements in the same document. 68006 68007 * dom/Document.h: Removed setBaseElementURL and setBaseElementTarget, replacing them 68008 with processBaseElement. 68009 68010 * html/HTMLBaseElement.cpp: 68011 (WebCore::HTMLBaseElement::parseMappedAttribute): Call the new processBaseElement 68012 function. 68013 (WebCore::HTMLBaseElement::insertedIntoDocument): Ditto. 68014 (WebCore::HTMLBaseElement::removedFromDocument): Ditto. 68015 (WebCore::HTMLBaseElement::isURLAttribute): Added. 68016 (WebCore::HTMLBaseElement::target): Moved here from the .h file and changed to not 68017 realy on an m_target local variable. 68018 68019 * html/HTMLBaseElement.h: Added an override of the isURLAttribute function. Removed 68020 unneeded process function. Removed declaration of nonexistent setHref and setTarget 68021 functions. Removed unneeded m_hrefAttrValue, m_href, and m_target. Moved 68022 implementation of target function into the .cpp file. 68023 68024 * html/HTMLBaseElement.idl: Marked the href attribute as URL. 68025 68026 * html/HTMLBlockquoteElement.cpp: 68027 (WebCore::HTMLBlockquoteElement::isURLAttribute): Added. 68028 * html/HTMLBlockquoteElement.h: Added isURLAttribute. 68029 * html/HTMLBlockquoteElement.idl: Marked the cite attribute as URL. 68030 68031 * html/HTMLEmbedElement.idl: Marked the src attribute as URL. 68032 68033 * html/HTMLFormElement.cpp: Added a comment about the action function, which should 68034 be removed. 68035 68036 * html/HTMLFormElement.idl: Marked the action attribute as URL. 68037 68038 * html/HTMLHtmlElement.cpp: 68039 (WebCore::HTMLHtmlElement::isURLAttribute): Added. 68040 (WebCore::HTMLHtmlElement::insertedIntoDocument): Tweaked a bit. 68041 * html/HTMLHtmlElement.h: Added isURLAttribute. 68042 * html/HTMLHtmlElement.idl: Marked the manifest attribute as URL. 68043 68044 * html/HTMLIFrameElement.idl: Marked the src attribute a URL. 68045 68046 * html/HTMLModElement.cpp: 68047 (WebCore::HTMLModElement::isURLAttribute): Added. 68048 * html/HTMLModElement.h: Added isURLAttribute. 68049 * html/HTMLModElement.idl: Marked the cite attribute as URL. 68050 68051 * html/HTMLQuoteElement.cpp: 68052 (WebCore::HTMLQuoteElement::isURLAttribute): Added. 68053 * html/HTMLQuoteElement.h: Added isURLAttribute. 68054 * html/HTMLQuoteElement.idl: Marked the cite attribute as URL. 68055 68056 * html/HTMLViewSourceDocument.cpp: 68057 (WebCore::HTMLViewSourceDocument::processTagToken): Changed code to create a base 68058 element instead of calling setBaseElementURL directly. 68059 (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Use AtomicString instead of String. 68060 (WebCore::HTMLViewSourceDocument::addLine): Ditto. 68061 (WebCore::HTMLViewSourceDocument::addText): Ditto. 68062 (WebCore::HTMLViewSourceDocument::addBase): Added. Creates a base element and inserts it. 68063 (WebCore::HTMLViewSourceDocument::addLink): Use AtomicString instead of String. 68064 68065 * html/HTMLViewSourceDocument.h: Updated function declarations as above. 68066 68067 * bindings/scripts/test/CPP/WebDOMTestCallback.h: 68068 * bindings/scripts/test/CPP/WebDOMTestInterface.h: 68069 * bindings/scripts/test/CPP/WebDOMTestObj.h: 68070 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 68071 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 68072 Updated results, which changed due to the fixes for at 68073 least these bugs, and perhaps a few more: 68074 https://bugs.webkit.org/show_bug.cgi?id=42115 68075 https://bugs.webkit.org/show_bug.cgi?id=44597 68076 https://bugs.webkit.org/show_bug.cgi?id=44738 68077 68078 * bindings/scripts/test/TestObj.idl: 68079 * html/HTMLAnchorElement.idl: 68080 * html/HTMLAreaElement.idl: 68081 * html/HTMLEmbedElement.idl: 68082 * html/HTMLFormElement.cpp: 68083 * html/HTMLFormElement.idl: 68084 * html/HTMLFrameElement.idl: 68085 * html/HTMLIFrameElement.idl: 68086 * html/HTMLImageElement.idl: 68087 * html/HTMLInputElement.idl: 68088 * html/HTMLLinkElement.idl: 68089 * html/HTMLMediaElement.idl: 68090 * html/HTMLObjectElement.idl: 68091 * html/HTMLScriptElement.idl: 68092 * html/HTMLSourceElement.idl: 68093 * html/HTMLVideoElement.idl: 68094 Tweaked formatting. 68095 68096 2010-08-28 Ryosuke Niwa <rniwa (a] webkit.org> 68097 68098 Reviewed by Darin Adler. 68099 68100 The logic to escape entities in appendEscapedContent and appendAttributeValue should be merged 68101 https://bugs.webkit.org/show_bug.cgi?id=44831 68102 68103 Added appendCharactersReplacingEntities to escape &, <, >, ", and nbsp based on the mask. 68104 Removed escapeContentText because it was only used in appendText, which now directly calls 68105 appendCharactersReplacingEntities. Replaced appendEscapedContent, ucharRange, and appendUCharRange 68106 by appendNodeValue. 68107 68108 No new tests are added since this is a cleanup. 68109 68110 * editing/markup.cpp: 68111 (WebCore::): 68112 (WebCore::appendCharactersReplacingEntities): Added. 68113 (WebCore::MarkupAccumulator::appendAttributeValue): Calls appendCharactersReplacingEntities. 68114 (WebCore::MarkupAccumulator::appendNodeValue): Added. 68115 (WebCore::MarkupAccumulator::appendText): Calls appendNodeValue and appendCharactersReplacingEntities. 68116 (WebCore::urlToMarkup): Calls escapeEntities. 68117 68118 2010-08-27 Ryosuke Niwa <rniwa (a] webkit.org> 68119 68120 Reviewed by Darin Adler. 68121 68122 cannot remove text-decoration when style is added by u or s 68123 https://bugs.webkit.org/show_bug.cgi?id=44560 68124 68125 The bug was caused by WebKit not pushing down implicitly added styles to descendent nodes. 68126 Fixed the bug by pushing down all elements that implicitly add style. 68127 68128 extractInlineStyleToPushDown now calls removeImplicitlyStyledElement, which was modified to extract 68129 the style implicitly added by the element to extractStyle. 68130 68131 This revealed a bug in applyInlineStyleToPushDown where applyInlineStyleIfNeeded could add 68132 an implicitly styled element inside an element with a conflicting style, thereby overriding the style of the element. 68133 Fixed this by extending the logic to honor the existing inline style declaration used in 68134 the case of rewriting inline style declaration to all cases including the one calling addInlineStyleIfNeeded. 68135 68136 Also fixed a bug in removeInlineStyle where pushDownInlineStyleAroundNode was called on a text node 68137 outside of selection if start was at the end of the text node. 68138 68139 Test: editing/style/push-down-implicit-styles.html 68140 68141 * editing/ApplyStyleCommand.cpp: 68142 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Added extractedStyle, which receives 68143 the style implicitly added by the element being removed. 68144 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Calls removeImplicitlyStyledElement 68145 to remove the implicitly styled element and extract the inline style added by the element. 68146 (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Fixed a bug that addInlineStyleIfNeeded 68147 could override the inline style declaration style of the node. 68148 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Uses extractInlineStyleToPushDown 68149 (WebCore::ApplyStyleCommand::removeInlineStyle): See above. 68150 * editing/ApplyStyleCommand.h: Prototype changes. 68151 68152 2010-08-27 Mark Rowe <mrowe (a] apple.com> 68153 68154 Reviewed by Adam Barth. 68155 68156 <http://webkit.org/b/44802> REGRESSION (r65351): WebCore build fails due to attempting to directly access WebKitTools/Scripts 68157 68158 Move create-html-entity-table in to WebCore so that the build is again self-contained. 68159 The script is also updated to take input as a CSV file rather than JSON as the former 68160 can be parsed without requiring a third-party Python module be installed. 68161 68162 * CMakeLists.txt: 68163 * DerivedSources.make: 68164 * GNUmakefile.am: 68165 * WebCore.gyp/WebCore.gyp: 68166 * WebCore.pri: 68167 * WebCore.xcodeproj/project.pbxproj: Stop copying the input file in to the WebCore framework wrapper. 68168 * html/parser/HTMLEntityNames.in: Added. 68169 * html/parser/HTMLEntityNames.json: Removed. 68170 * html/parser/create-html-entity-table: Renamed from WebKitTools/Scripts/create-html-entity-table. 68171 68172 2010-08-28 Daniel Bates <dbates (a] rim.com> 68173 68174 Attempt to fix Chromium Mac Release bot after changeset 66305 <http://trac.webkit.org/changeset/66305>. 68175 68176 * accessibility/chromium/AXObjectCacheChromium.cpp: 68177 (WebCore::AXObjectCache::postPlatformNotification): Added case statements for missing enum values. 68178 These case statements simply fall through to a "break" statement. 68179 68180 2010-08-26 Kevin Ollivier <kevino (a] theolliviers.com> 68181 68182 Reviewed by Nikolas Zimmermann. 68183 68184 Add explicit destructor for C++ DOM bindings to avoid memory leaks when using SWIG. 68185 https://bugs.webkit.org/attachment.cgi?bugid=44738 68186 68187 * bindings/scripts/CodeGeneratorCPP.pm: 68188 68189 2010-08-28 Eric Carlson <eric.carlson (a] apple.com> 68190 68191 Reviewed by Dan Bernstein. 68192 68193 Add WebM MIME types to type registry 68194 https://bugs.webkit.org/show_bug.cgi?id=44826 68195 68196 * platform/MIMETypeRegistry.cpp: 68197 (WebCore::TypeExtensionPair::): Add "video/webm" and "audio/webm" types. 68198 68199 2010-08-28 Eric Carlson <eric.carlson (a] apple.com> 68200 68201 Reviewed by Simon Fraser. 68202 68203 Crash reloading fast/events/tabindex-focus-blur-all.html test 68204 https://bugs.webkit.org/show_bug.cgi?id=44743 68205 68206 * html/HTMLMediaElement.cpp: 68207 (WebCore::HTMLMediaElement::asyncEventTimerFired): If m_isWaitingToDecrementLoadEventDelayCount 68208 is true, call setShouldDelayLoadEvent(false) and set the timer to fire the pending events 68209 on the next idle. 68210 (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): Don't clear the delay from within a 68211 media engine callback because document 'load' event handlers that cause the page to become 68212 inactive will delete the media engine. 68213 * html/HTMLMediaElement.h: Add m_isWaitingToDecrementLoadEventDelayCount. 68214 68215 2010-08-28 Simon Fraser <simon.fraser (a] apple.com> 68216 68217 Reviewed by Sam Weinig. 68218 68219 When properties are missing from animation keyframes, interpolate between those keyframes that specify them 68220 https://bugs.webkit.org/show_bug.cgi?id=40794 68221 68222 Some preliminary cleanup; for vectors, prefer indexed access rather than using iterators. 68223 68224 No behavior changes. 68225 68226 * css/CSSStyleSelector.cpp: 68227 (WebCore::CSSStyleSelector::keyframeStylesForAnimation): 68228 * page/animation/KeyframeAnimation.cpp: 68229 (WebCore::KeyframeAnimation::getKeyframeAnimationInterval): 68230 (WebCore::KeyframeAnimation::validateTransformFunctionList): 68231 * rendering/RenderLayerBacking.cpp: 68232 (WebCore::RenderLayerBacking::startAnimation): 68233 * rendering/style/KeyframeList.h: 68234 (WebCore::KeyframeList::at): 68235 (WebCore::KeyframeList::keyframes): 68236 68237 2010-08-28 Dan Bernstein <mitz (a] apple.com> 68238 68239 Reviewed by Simon Fraser. 68240 68241 Speculative fix for <rdar://problem/7275077> Crash in InlineBox::root() under RenderTextControl::textWithHardLineBreaks() 68242 https://bugs.webkit.org/show_bug.cgi?id=44816 68243 68244 No test because I could not reproduce the crash. 68245 68246 In a common variant of the crash, InlineBox::root() is called with this == 12. This suggests that 68247 a RenderInline* was cast into a RenderBox*, so RenderBox::inlineBoxWrapper() interpreted the 68248 m_lineHeight and m_verticalPosition members of a RenderInline as a pointer to an InlineBox. 68249 68250 The cast into RenderBox* in textWithHardLineBreaks() was introduced in r40881 with no exaplanation. 68251 68252 * rendering/RenderTextControl.cpp: 68253 (WebCore::RenderTextControl::textWithHardLineBreaks): Fetch the first line directly from the inner 68254 text block instead of relying on the first child being a text node. 68255 68256 2010-08-28 Moritz Lipp <mlq (a] pwmt.org> 68257 68258 Reviewed by Xan Lopez. 68259 68260 [GTK] Improper webkit_dom_document_evaluate implementation. 68261 https://bugs.webkit.org/show_bug.cgi?id=42115 68262 68263 The generated webkit_dom_document_evaluate() function does not meet the 68264 evaluate interface described in the W3 Documentation 68265 http://www.w3.org/TR/DOM-Level-3-XPath/xpath.html#XPathEvaluator-evaluate 68266 "If this is specified as nullor the implementation does not reuse the 68267 specified result,...". The current implementation did not accept the 68268 result parameter to be NULL. 68269 68270 * bindings/scripts/CodeGeneratorGObject.pm: 68271 68272 2010-08-28 Adam Barth <abarth (a] webkit.org> 68273 68274 Reviewed by Eric Seidel. 68275 68276 HTMLTreeBuilder needs to call HTMLFormElement::setDemoted 68277 https://bugs.webkit.org/show_bug.cgi?id=44781 68278 68279 This patch teaches the HTMLTreeBuilder about demoted form elements. 68280 Demoting a form element magically stops the form element from 68281 rendering. Demoted form elements are a concept from the 68282 LegacyHTMLTreeBuilder, but they are somewhat of a hack because 68283 rendering should be DOM-based. We'll likely look for a better solution 68284 in a future patch. 68285 68286 * html/parser/HTMLConstructionSite.cpp: 68287 (WebCore::HTMLConstructionSite::insertHTMLFormElement): 68288 * html/parser/HTMLConstructionSite.h: 68289 * html/parser/HTMLTreeBuilder.cpp: 68290 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 68291 68292 2010-08-28 Chris Guillory <chris.guillory (a] google.com> 68293 68294 Reviewed by Chris Fleizach. 68295 68296 Add AX notification for childrenChanged 68297 https://bugs.webkit.org/show_bug.cgi?id=44472 68298 68299 Test by running platform/chromium/accessibility/children-changed-notification.html within chromium's DRT 68300 68301 * accessibility/AXObjectCache.h: 68302 (WebCore::AXObjectCache::): 68303 * accessibility/AccessibilityRenderObject.cpp: 68304 (WebCore::AccessibilityRenderObject::childrenChanged): 68305 * accessibility/chromium/AXObjectCacheChromium.cpp: 68306 (WebCore::AXObjectCache::postPlatformNotification): 68307 * page/chromium/ChromeClientChromium.h: 68308 68309 2010-08-28 Eric Uhrhane <ericu (a] chromium.org> 68310 68311 Reviewed by Darin Fisher. 68312 68313 Implement the DOM FileWriter class 68314 https://bugs.webkit.org/show_bug.cgi?id=44362 68315 68316 No new tests until the delegate class has an implementation; bug logged. 68317 68318 Build file additions. 68319 * GNUmakefile.am: 68320 * WebCore.gypi: 68321 * WebCore.pro: 68322 * WebCore.vcproj/WebCore.vcproj: 68323 * WebCore.xcodeproj/project.pbxproj: 68324 68325 The AsyncFileWriter is an abstract interface to which FileWriter delegates all the hard work. 68326 * html/AsyncFileWriter.h: Added. 68327 68328 The FileWriterClient is the interface for communications back from the AsyncFileWriter [success/failure, progress events]. 68329 * html/FileWriterClient.h: Added. 68330 (WebCore::FileWriterClient::~FileWriterClient): 68331 68332 Added all delegation, state tracking, and progress event processing. 68333 * html/FileWriter.cpp: 68334 (WebCore::FileWriter::FileWriter): 68335 (WebCore::FileWriter::initialize): 68336 (WebCore::FileWriter::~FileWriter): 68337 ActiveDomObject stuff 68338 (WebCore::FileWriter::hasPendingActivity): 68339 (WebCore::FileWriter::stop): 68340 (WebCore::FileWriter::write): 68341 FileWriter public interface 68342 (WebCore::FileWriter::seek): 68343 (WebCore::FileWriter::truncate): 68344 (WebCore::FileWriter::abort): 68345 FileWriterClient interface 68346 (WebCore::FileWriter::didWrite): 68347 (WebCore::FileWriter::didTruncate): 68348 (WebCore::FileWriter::didFail): 68349 Progress events 68350 (WebCore::FileWriter::fireEvent): 68351 * html/FileWriter.h: 68352 68353 2010-08-28 Marc-Antoine Ruel <maruel (a] chromium.org> 68354 68355 Reviewed by Dimitri Glazkov. 68356 68357 Preparatory patch to split libwebcore in multiple libraries. 68358 68359 Start with a webcore_prerequisites pseudo-target what will be the common 68360 target for all the other ones. 68361 68362 * WebCore.gyp/WebCore.gyp: 68363 68364 2010-08-28 Pratik Solanki <psolanki (a] apple.com> 68365 68366 Reviewed by Dan Bernstein. 68367 68368 Add an ENABLE define for purgeable memory support 68369 https://bugs.webkit.org/show_bug.cgi?id=44777 68370 68371 * platform/PurgeableBuffer.h: 68372 * platform/mac/PurgeableBufferMac.cpp: 68373 68374 2010-08-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 68375 68376 Reviewed by Kenneth Rohde Christiansen. 68377 68378 [EFL] Fix error message when theme loading fails 68379 https://bugs.webkit.org/show_bug.cgi?id=44775 68380 68381 Parameters for logging were in the wrong order. 68382 68383 No new functionality so no new tests. 68384 68385 * platform/efl/ScrollbarEfl.cpp: 68386 (ScrollbarEfl::setParent): exchange argument order in log function 68387 call 68388 68389 2010-08-27 Nikolas Zimmermann <nzimmermann (a] rim.com> 68390 68391 Reviewed by Dirk Schulze. 68392 68393 REGRESSION: some tests no longer painting 68394 https://bugs.webkit.org/show_bug.cgi?id=44773 68395 68396 Fix regression from the RenderImageResource introduction, fast/canvas/canvas-as-image.html 68397 and fast/canvas/canvas-as-image-incremental-repaint.html pixel tests did not work anymore. 68398 68399 * rendering/RenderImageResource.h: 68400 (WebCore::RenderImageResource::hasImage): Make hasImage virtual. 68401 * rendering/RenderImageResourceStyleImage.h: 68402 (WebCore::RenderImageResourceStyleImage::hasImage): Always return true, just like RenderImageGeneratedContent did. 68403 68404 2010-08-27 Kimmo Kinnunen <kimmo.t.kinnunen (a] nokia.com> 68405 68406 Reviewed by Kenneth Rohde Christiansen. 68407 68408 [Qt] Cache plugin info to a persistent database 68409 68410 https://bugs.webkit.org/show_bug.cgi?id=43179 68411 68412 Implement a cache of NPAPI plugin metadata. Write the metadata to aa 68413 file that gets rewritten if any plugin is added / removed. Compilation 68414 of the feature is controlled by #if ENABLE(NETSCAPE_PLUGIN_METADATA_CACHE) 68415 68416 Currently only enabled for Qt UNIX flavors. 68417 68418 * WebCore.pro: Enable NETSCAPE_PLUGIN_METADATA_CACHE for UNIX builds 68419 * platform/qt/FileSystemQt.cpp: 68420 (WebCore::openFile): Added. 68421 (WebCore::readFromFile): Added. 68422 * plugins/PluginDatabase.cpp: 68423 (WebCore::persistentPluginMetadataCachePath): Static accessor for the path 68424 (WebCore::PluginDatabase::PluginDatabase): Add instance variable. 68425 (WebCore::PluginDatabase::refresh): 68426 (WebCore::PluginDatabase::pluginForMIMEType): Ensure returned plugin is loaded. 68427 (WebCore::PluginDatabase::MIMETypeForExtension): Ensure returned plugin is loaded. 68428 (WebCore::PluginDatabase::clear): 68429 (WebCore::fillBufferWithContentsOfFile): Static helper function. 68430 (WebCore::readUTF8String): Static helper function. 68431 (WebCore::readTime): Static helper function. 68432 (WebCore::PluginDatabase::loadPersistentMetadataCache): 68433 (WebCore::writeUTF8String): Static helper function. 68434 (WebCore::writeTime): Static helper function. 68435 (WebCore::PluginDatabase::updatePersistentMetadataCache): Added. 68436 (WebCore::PluginDatabase::isPersistentMetadataCacheEnabled): Added. 68437 (WebCore::PluginDatabase::setPersistentMetadataCacheEnabled):Added. 68438 (WebCore::PluginDatabase::persistentMetadataCachePath): Added. 68439 (WebCore::PluginDatabase::setPersistentMetadataCachePath): Added. 68440 * plugins/PluginDatabase.h: 68441 * plugins/PluginPackage.cpp: 68442 (WebCore::PluginPackage::PluginPackage): Add instance variable. 68443 (WebCore::PluginPackage::createPackageFromCache): Added. 68444 (WebCore::PluginPackage::ensurePluginLoaded): Added. 68445 * plugins/PluginPackage.h: 68446 (WebCore::PluginPackage::fullMIMEDescription): Added. 68447 * plugins/qt/PluginPackageQt.cpp: 68448 (WebCore::PluginPackage::fetchInfo): Split mime parsing. 68449 (WebCore::PluginPackage::setMIMEDescription): Added. Mime parsing. 68450 68451 2010-08-27 Daniel Bates <dbates (a] rim.com> 68452 68453 Reviewed by Darin Adler. 68454 68455 Implement symbolic CSS3 list-style-types 68456 https://bugs.webkit.org/show_bug.cgi?id=36734 68457 68458 Implements all of the symbolic CSS3 list-style-types as per 68459 section 4.5 of the CSS3 Lists module <http://www.w3.org/TR/css3-lists/#symbolic>. 68460 68461 Test: fast/lists/w3-css3-list-styles-symbolic.html 68462 68463 * css/CSSPrimitiveValueMappings.h: 68464 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added list style types Asterisks and Footnotes. 68465 * css/CSSValueKeywords.in: Ditto. 68466 * inspector/front-end/SourceCSSTokenizer.re2js: Ditto. 68467 * rendering/RenderListMarker.cpp: 68468 (WebCore::toAlphabeticOrNumeric): Changed type of parameter sequenceSize from int to unsigned. 68469 (WebCore::toSymbolic): Added. 68470 (WebCore::toAlphabetic): Changed type of parameter alphabetSize from int to unsigned. 68471 (WebCore::toNumeric): Changed type of parameter numeralsSize from int to unsigned. 68472 (WebCore::effectiveListMarkerType): Added. 68473 (WebCore::listMarkerSuffix): Added list style types Asterisks and Footnotes. 68474 (WebCore::listMarkerText): Ditto. 68475 (WebCore::RenderListMarker::paint): Ditto. 68476 (WebCore::RenderListMarker::calcPrefWidths): Ditto. 68477 (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto. 68478 * rendering/style/RenderStyleConstants.h: Ditto. 68479 (WebCore::): 68480 68481 2010-08-27 Vincent Scheib <scheib (a] chromium.org> 68482 68483 Reviewed by Darin Fisher. 68484 68485 CanvasRenderingContext2D::willDraw changed to didDraw 68486 68487 Solves issue with canvas to canvas draw calls, and simplifies 68488 mixed software and GPU acceleration of GraphicsContext implementations 68489 which must track dirty rects for backing stores. 68490 68491 https://bugs.webkit.org/show_bug.cgi?id=44741 68492 68493 * html/HTMLCanvasElement.cpp: 68494 (WebCore::HTMLCanvasElement::didDraw): 68495 * html/HTMLCanvasElement.h: 68496 * html/canvas/CanvasRenderingContext2D.cpp: 68497 (WebCore::CanvasRenderingContext2D::fill): 68498 (WebCore::CanvasRenderingContext2D::stroke): 68499 (WebCore::CanvasRenderingContext2D::clearRect): 68500 (WebCore::CanvasRenderingContext2D::fillRect): 68501 (WebCore::CanvasRenderingContext2D::strokeRect): 68502 (WebCore::CanvasRenderingContext2D::drawImage): 68503 (WebCore::CanvasRenderingContext2D::drawImageFromRect): 68504 (WebCore::CanvasRenderingContext2D::didDraw): 68505 (WebCore::CanvasRenderingContext2D::putImageData): 68506 (WebCore::CanvasRenderingContext2D::drawTextInternal): 68507 * html/canvas/CanvasRenderingContext2D.h: 68508 * html/canvas/WebGLRenderingContext.cpp: 68509 (WebCore::WebGLRenderingContext::markContextChanged): 68510 68511 2010-08-27 Daniel Cheng <dcheng (a] chromium.org> 68512 68513 Reviewed by Tony Chang. 68514 68515 [chromium] Add new WebClipboard method for setting generic data in copy/cut handlers. 68516 https://bugs.webkit.org/show_bug.cgi?id=42121 68517 68518 No new tests. 68519 68520 * platform/chromium/ChromiumBridge.h: 68521 68522 2010-08-27 Patrick Gansterer <paroga (a] paroga.com> 68523 68524 Reviewed by Adam Roben. 68525 68526 Remove unnecessary AlphaBlend in PasteboardWin. 68527 https://bugs.webkit.org/show_bug.cgi?id=44720 68528 68529 Replacing AlphaBlend with BitBlt is safe because testing showed that alpha 68530 never survives copy-and-paste on Windows in any browser, and StretchBlt 68531 was a overkill since the source and destination size are always equal. 68532 68533 * platform/win/PasteboardWin.cpp: 68534 (WebCore::Pasteboard::writeImage): 68535 68536 2010-08-26 Zhenyao Mo <zmo (a] google.com> 68537 68538 Reviewed by Kenneth Russell. 68539 68540 Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (skia) 68541 https://bugs.webkit.org/show_bug.cgi?id=38282 68542 68543 * platform/graphics/skia/GraphicsContext3DSkia.cpp: Dealing with the case of texImage2D with HTMLCanvasElement input. 68544 (WebCore::GraphicsContext3D::getImageData): 68545 68546 2010-08-26 Vangelis Kokkevis <vangelis (a] chromium.org> 68547 68548 Reviewed by Darin Fisher. 68549 68550 [chromium] Working around compile issue in LayerRendererChromium.cpp 68551 when DEBUG_GL_CALLS=1 68552 https://bugs.webkit.org/show_bug.cgi?id=44739 68553 68554 No new functionality, no new tests. 68555 68556 * platform/graphics/chromium/LayerRendererChromium.cpp: 68557 (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer): 68558 68559 2010-08-27 Patrick Gansterer <paroga (a] paroga.com> 68560 68561 Reviewed by Adam Roben. 68562 68563 [WINCE] Port SoftLinking to WinCE 68564 https://bugs.webkit.org/show_bug.cgi?id=44693 68565 68566 WinCE provides GetProcAddressW and GetProcAddressA for softlinking. 68567 Unfortunately WinNT provides only GetProcAddress (without A or W). 68568 68569 Add a platform dependent macro for GetProcAddress. 68570 68571 * platform/win/SoftLinking.h: 68572 68573 2010-08-27 Martin Robinson <mrobinson (a] igalia.com> 68574 68575 Reviewed by Xan Lopez. 68576 68577 [GTK] ScrollbarThemeGtk should account for the trough_under_steppers property 68578 https://bugs.webkit.org/show_bug.cgi?id=44742 68579 68580 No new tests until this code is activated, at which point pixel tests will 68581 test the scrollbar rendering. 68582 68583 * platform/gtk/ScrollbarThemeGtk.cpp: 68584 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Only inflate the track background 68585 if the style specifies trough_under_steppers. 68586 (WebCore::ScrollbarThemeGtk::paint): If the theme specifies trough_under_steppers, 68587 a dirty stepper also triggers a repaint of the trough region. 68588 68589 2010-08-27 Joseph Pecoraro <joepeck (a] webkit.org> 68590 68591 Reviewed by Alexey Proskuryakov. 68592 68593 Extra Events triggered by <input> on focus 68594 https://bugs.webkit.org/show_bug.cgi?id=44731 68595 68596 Tests: fast/events/input-focus-no-duplicate-events.html 68597 fast/events/input-tab-focus-no-duplicate-events.html 68598 68599 * dom/Element.cpp: 68600 (WebCore::Element::focus): do not continue and update the appearance of the element if it was not focused. 68601 * page/FocusController.cpp: 68602 (WebCore::FocusController::setFocusedNode): respect the return value of Document::setFocusedNode. 68603 68604 2010-08-26 Joseph Pecoraro <joepeck (a] webkit.org> 68605 68606 Reviewed by Pavel Feldman. 68607 68608 Web Inspector: attribute nodes don't get rendered in the console 68609 https://bugs.webkit.org/show_bug.cgi?id=44736 68610 68611 Extended Test: inspector/console-format.html 68612 68613 * inspector/InspectorDOMAgent.cpp: 68614 (WebCore::InspectorDOMAgent::buildObjectForNode): add "name" and "value" properties for Attribute nodes. 68615 * inspector/front-end/DOMAgent.js: 68616 (WebInspector.DOMNode): add "name" and "value" properties for Attribute nodes. 68617 * inspector/front-end/ElementsTreeOutline.js: display html for Attribute nodes. 68618 68619 2010-08-27 Adam Barth <abarth (a] webkit.org> 68620 68621 Rubber-stamped by Eric Seidel. 68622 68623 Finshing moving the HTML parser into WebCore/html/parser. 68624 68625 * Android.derived.mk: 68626 * Android.mk: 68627 * CMakeLists.txt: 68628 * DerivedSources.make: 68629 * GNUmakefile.am: 68630 * WebCore.gyp/WebCore.gyp: 68631 * WebCore.gypi: 68632 * WebCore.pri: 68633 * WebCore.pro: 68634 * WebCore.vcproj/WebCore.vcproj: 68635 * WebCore.xcodeproj/project.pbxproj: 68636 * html/CSSPreloadScanner.cpp: Removed. 68637 * html/CSSPreloadScanner.h: Removed. 68638 * html/HTMLConstructionSite.cpp: Removed. 68639 * html/HTMLConstructionSite.h: Removed. 68640 * html/HTMLDocumentParser.cpp: Removed. 68641 * html/HTMLDocumentParser.h: Removed. 68642 * html/HTMLEntityNames.json: Removed. 68643 * html/HTMLEntityParser.cpp: Removed. 68644 * html/HTMLEntityParser.h: Removed. 68645 * html/HTMLEntitySearch.cpp: Removed. 68646 * html/HTMLEntitySearch.h: Removed. 68647 * html/HTMLEntityTable.h: Removed. 68648 * html/HTMLFormattingElementList.cpp: Removed. 68649 * html/HTMLFormattingElementList.h: Removed. 68650 * html/HTMLParserScheduler.cpp: Removed. 68651 * html/HTMLParserScheduler.h: Removed. 68652 * html/HTMLPreloadScanner.cpp: Removed. 68653 * html/HTMLPreloadScanner.h: Removed. 68654 * html/HTMLScriptRunner.cpp: Removed. 68655 * html/HTMLScriptRunner.h: Removed. 68656 * html/HTMLScriptRunnerHost.h: Removed. 68657 * html/HTMLTokenizer.cpp: Removed. 68658 * html/HTMLTokenizer.h: Removed. 68659 * html/HTMLViewSourceParser.cpp: Removed. 68660 * html/HTMLViewSourceParser.h: Removed. 68661 * html/parser/CSSPreloadScanner.cpp: Copied from WebCore/html/CSSPreloadScanner.cpp. 68662 * html/parser/CSSPreloadScanner.h: Copied from WebCore/html/CSSPreloadScanner.h. 68663 * html/parser/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLConstructionSite.cpp. 68664 * html/parser/HTMLConstructionSite.h: Copied from WebCore/html/HTMLConstructionSite.h. 68665 * html/parser/HTMLDocumentParser.cpp: Copied from WebCore/html/HTMLDocumentParser.cpp. 68666 * html/parser/HTMLDocumentParser.h: Copied from WebCore/html/HTMLDocumentParser.h. 68667 * html/parser/HTMLEntityNames.json: Copied from WebCore/html/HTMLEntityNames.json. 68668 * html/parser/HTMLEntityParser.cpp: Copied from WebCore/html/HTMLEntityParser.cpp. 68669 * html/parser/HTMLEntityParser.h: Copied from WebCore/html/HTMLEntityParser.h. 68670 * html/parser/HTMLEntitySearch.cpp: Copied from WebCore/html/HTMLEntitySearch.cpp. 68671 * html/parser/HTMLEntitySearch.h: Copied from WebCore/html/HTMLEntitySearch.h. 68672 * html/parser/HTMLEntityTable.h: Copied from WebCore/html/HTMLEntityTable.h. 68673 * html/parser/HTMLFormattingElementList.cpp: Copied from WebCore/html/HTMLFormattingElementList.cpp. 68674 * html/parser/HTMLFormattingElementList.h: Copied from WebCore/html/HTMLFormattingElementList.h. 68675 * html/parser/HTMLParserScheduler.cpp: Copied from WebCore/html/HTMLParserScheduler.cpp. 68676 * html/parser/HTMLParserScheduler.h: Copied from WebCore/html/HTMLParserScheduler.h. 68677 * html/parser/HTMLPreloadScanner.cpp: Copied from WebCore/html/HTMLPreloadScanner.cpp. 68678 * html/parser/HTMLPreloadScanner.h: Copied from WebCore/html/HTMLPreloadScanner.h. 68679 * html/parser/HTMLScriptRunner.cpp: Copied from WebCore/html/HTMLScriptRunner.cpp. 68680 * html/parser/HTMLScriptRunner.h: Copied from WebCore/html/HTMLScriptRunner.h. 68681 * html/parser/HTMLScriptRunnerHost.h: Copied from WebCore/html/HTMLScriptRunnerHost.h. 68682 * html/parser/HTMLTokenizer.cpp: Copied from WebCore/html/HTMLTokenizer.cpp. 68683 * html/parser/HTMLTokenizer.h: Copied from WebCore/html/HTMLTokenizer.h. 68684 * html/parser/HTMLViewSourceParser.cpp: Copied from WebCore/html/HTMLViewSourceParser.cpp. 68685 * html/parser/HTMLViewSourceParser.h: Copied from WebCore/html/HTMLViewSourceParser.h. 68686 68687 2010-08-27 Simon Fraser <simon.fraser (a] apple.com> 68688 68689 Reviewed by Tony Chang. 68690 68691 Insertion point does not show when dragging text into an editable area 68692 https://bugs.webkit.org/show_bug.cgi?id=44295 68693 68694 r65681 caused the caret to use the last-computed caret rect when 68695 painting, rather than forcing a style update. Because of this, 68696 we now need to eagerly update the caret rect when changing 68697 the drag selection. 68698 68699 Not testable in DRT because the drag selection is always cleared 68700 before EventSender returns, so the drag caret can never show in 68701 the pixel results. 68702 68703 Tested by running editing/selection/drag-in-iframe.html manually. 68704 68705 * editing/SelectionController.cpp: 68706 (WebCore::SelectionController::setSelection): 68707 68708 2010-08-27 Adam Barth <abarth (a] webkit.org> 68709 68710 Attempt to fix the Windows build. 68711 68712 * WebCore.vcproj/WebCoreCommon.vsprops: 68713 68714 2010-08-27 Adam Barth <abarth (a] webkit.org> 68715 68716 Attempt to fix the Qt build. 68717 68718 * WebCore.pro: 68719 68720 2010-08-27 Adam Barth <abarth (a] webkit.org> 68721 68722 Rubber-stamped by Eric Seidel. 68723 68724 Move HTMLTreeBuilder and HTMLElementStack to WebCore/html/parser. 68725 68726 * Android.mk: 68727 * CMakeLists.txt: 68728 * GNUmakefile.am: 68729 * WebCore.gypi: 68730 * WebCore.pro: 68731 * WebCore.vcproj/WebCore.vcproj: 68732 * WebCore.xcodeproj/project.pbxproj: 68733 * html/HTMLElementStack.cpp: Removed. 68734 * html/HTMLElementStack.h: Removed. 68735 * html/HTMLTreeBuilder.cpp: Removed. 68736 * html/HTMLTreeBuilder.h: Removed. 68737 * html/parser/HTMLElementStack.cpp: Copied from WebCore/html/HTMLElementStack.cpp. 68738 * html/parser/HTMLElementStack.h: Copied from WebCore/html/HTMLElementStack.h. 68739 * html/parser/HTMLTreeBuilder.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp. 68740 * html/parser/HTMLTreeBuilder.h: Copied from WebCore/html/HTMLTreeBuilder.h. 68741 68742 2010-08-27 Adam Barth <abarth (a] webkit.org> 68743 68744 Reviewed by Darin Adler. 68745 68746 Create WebCore/html/parser 68747 https://bugs.webkit.org/show_bug.cgi?id=44792 68748 68749 This patch begins the process of moving the HTML parser code to the 68750 WebCore/html/parser directory. This patch moves a single header file. 68751 More files will follow in future patches. 68752 68753 * CMakeLists.txt: 68754 * GNUmakefile.am: 68755 * WebCore.gyp/WebCore.gyp: 68756 * WebCore.gypi: 68757 * WebCore.pro: 68758 * WebCore.vcproj/WebCore.vcproj: 68759 * WebCore.vcproj/WebCoreCommon.vsprops: 68760 * WebCore.xcodeproj/project.pbxproj: 68761 * html/parser/HTMLToken.h: Renamed from WebCore/html/HTMLToken.h. 68762 68763 2010-08-27 Chris Marrin <cmarrin (a] apple.com> 68764 68765 Reviewed by Simon Fraser. 68766 68767 https://bugs.webkit.org/show_bug.cgi?id=42862 68768 WebGL in CSS Canvas crashes 68769 68770 This fixes the crash, which was a simple null pointer deref. But this 68771 revealed that -webkit-canvas no longer works for WebGL. I believe this 68772 is due to the recent ImageBuffer optimizations done by Dave Hyatt 68773 (https://bugs.webkit.org/show_bug.cgi?id=43507). This changed ImageBuffer 68774 from always keeping a copy of the pixels to doing a copy to get them 68775 when needed. Since We need to get pixels out of the WebGL drawing buffer 68776 to use them as a CSS background, I had to change when I return those 68777 pixels to the ImageBuffer. 68778 68779 Tests: fast/canvas/webgl/css-webkit-canvas-repaint.html 68780 fast/canvas/webgl/css-webkit-canvas.html 68781 68782 * html/HTMLCanvasElement.cpp: 68783 (WebCore::HTMLCanvasElement::copiedImage): Add logic to get image from WebGL so it works with new ImageBuffer logic (see above) 68784 * html/canvas/WebGLRenderingContext.cpp: 68785 (WebCore::WebGLRenderingContext::create): Fixed null pointer deref 68786 68787 2010-08-27 James Robinson <jamesr (a] chromium.org> 68788 68789 Reviewed by Dimitri Glazkov. 68790 68791 Move Shader class from platform/graphics/chromium to platform/graphics/gpu 68792 https://bugs.webkit.org/show_bug.cgi?id=44793 68793 68794 The Shader class and its subclasses are not chromium-specific. This moves 68795 them to a common location so they can be re-used on all platforms. Also 68796 moves the Shader subclasses into their own .h/.cpp files. 68797 68798 Refactor, no new tests. 68799 68800 * WebCore.gypi: 68801 * platform/graphics/chromium/GLES2Canvas.cpp: 68802 * platform/graphics/chromium/Shader.cpp: Removed. 68803 * platform/graphics/chromium/Shader.h: Removed. 68804 * platform/graphics/gpu/Shader.cpp: Added. 68805 (WebCore::Shader::affineTo3x3): 68806 (WebCore::Shader::loadShader): 68807 (WebCore::Shader::loadProgram): 68808 (WebCore::Shader::Shader): 68809 (WebCore::Shader::~Shader): 68810 * platform/graphics/gpu/Shader.h: Added. 68811 * platform/graphics/gpu/SolidFillShader.cpp: Added. 68812 (WebCore::SolidFillShader::SolidFillShader): 68813 (WebCore::SolidFillShader::create): 68814 (WebCore::SolidFillShader::use): 68815 * platform/graphics/gpu/SolidFillShader.h: Added. 68816 * platform/graphics/gpu/TexShader.cpp: Added. 68817 (WebCore::TexShader::TexShader): 68818 (WebCore::TexShader::create): 68819 (WebCore::TexShader::use): 68820 * platform/graphics/gpu/TexShader.h: Added. 68821 68822 2010-08-27 Kinuko Yasuda <kinuko (a] chromium.org> 68823 68824 Reviewed by Darin Fisher. 68825 68826 Add AsyncFileSystem interface for platform-dependent FileSystem API implementation 68827 https://bugs.webkit.org/show_bug.cgi?id=44433 68828 68829 No new tests; tests will be added later. 68830 68831 * CMakeLists.txt: 68832 * WebCore.gypi: 68833 * WebCore.pro: 68834 * WebCore.vcproj/WebCore.vcproj: 68835 * WebCore.xcodeproj/project.pbxproj: 68836 * platform/AsyncFileSystem.cpp: Added. 68837 * platform/AsyncFileSystem.h: Added. 68838 * platform/AsyncFileSystemCallbacks.h: Added. 68839 * storage/DOMFileSystem.cpp: 68840 (WebCore::DOMFileSystem::DOMFileSystem): 68841 (WebCore::DOMFileSystem::~DOMFileSystem): 68842 (WebCore::DOMFileSystem::stop): 68843 (WebCore::DOMFileSystem::hasPendingActivity): 68844 (WebCore::DOMFileSystem::contextDestroyed): 68845 * storage/DOMFileSystem.h: 68846 (WebCore::DOMFileSystem::create): 68847 * storage/FileSystemCallbacks.cpp: 68848 (WebCore::FileSystemCallbacksBase::didFail): 68849 (WebCore::FileSystemCallbacks::FileSystemCallbacks): 68850 (WebCore::FileSystemCallbacks::didOpenFileSystem): 68851 * storage/FileSystemCallbacks.h: 68852 * storage/LocalFileSystem.cpp: Added. 68853 * storage/LocalFileSystem.h: Added. 68854 68855 * storage/Flags.h: Nits fix. 68856 68857 2010-07-27 Jer Noble <jer.noble (a] apple.com> 68858 68859 Reviewed by Eric Carlson. 68860 68861 Add JavaScript API to allow a page to go fullscreen. 68862 rdar://problem/6867795 68863 https://bugs.webkit.org/show_bug.cgi?id=43099 68864 68865 Mozilla has proposed a new set of JavaScript APIs which allow any element in 68866 a document to go full-screen. The current revision of their proposal can be 68867 found here: 68868 <https://wiki.mozilla.org/index.php?title=Gecko:FullScreenAPI&oldid=243429> 68869 68870 The proposed specification includes the following: 68871 68872 Document: 68873 - Three new methods on Document: 68874 + void requestFullScreen() 68875 + void requestFullScreenWithKeys() 68876 + void cancelFullScreen() 68877 - Three new attributes of Document: 68878 + readonly attribute boolean fullScreen 68879 + readonly attribute boolean fullScreenWithKeys 68880 + (optional) readonly attribute Element currentFullScreenElement 68881 68882 Element: 68883 - Two new methods on Element: 68884 + void requestFullScreen() 68885 + void requestFullScreenWithKeys() 68886 68887 Events: 68888 - One new event: 68889 + fullScreenChange 68890 68891 CSS Pseudo-classes: 68892 - Three new Pseudo-classes: 68893 + :full-screen 68894 + :full-screen-doc 68895 + :full-screen-root-with-target 68896 68897 For WebKit's initial implementation, all the above new APIs will be prefixed with 68898 "webkit" or "-webkit" where appropriate. 68899 68900 New tests: 68901 LayoutTests/fullscreen/full-screen-api.html 68902 LayoutTests/fullscreen/full-screen-css.html 68903 LayoutTests/fullscreen/full-screen-request.html 68904 68905 Project file changes: 68906 * Configurations/FeatureDefines.xcconfig: Added an ENABLE_FULLSCREEN_API entry. 68907 * DerivedSources.make: Added rules for fullscreen.css and WebCore.FullScreen.exp. 68908 * WebCore.FullScreen.exp: Added export symbols for Document and Element functions. 68909 * WebCore.xcodeproj/project.pbxproj: New source files added to the project. 68910 68911 IDL changes: 68912 * dom/Document.idl: Added the new full-screen API to the Document's javascript interface. 68913 * dom/Element.idl: Added the new full-screen API to the Element's javascript interface. 68914 68915 Source changes: 68916 * bindings/objc/PublicDOMInterfaces.h: Exposed Document and Element fullscreen functions in the DOM classes. 68917 * css/CSSSelector.cpp: Added new FullScreen pseudo-classes. 68918 * css/CSSSelector.h: Added new full-screen pseudo classes to the PseudoType enum. 68919 * css/CSSStyleSelector.cpp: 68920 (WebCore::loadFullDefaultStyle): Pull the fullscreen.css sheet into the defaultStyle and the defaultQuirksStyle sheets. 68921 (WebCore::loadSimpleDefaultStyle): Pull the fullscreen.css sheet into the defaultStyle sheet. 68922 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Check for the new FullScreen pseudo classes. 68923 * dom/Document.cpp: 68924 (WebCore::Document::createEvent): Support creating a "WebKitFullScreenChange" event. 68925 (WebCore::Document::addListenerTypeIfNeeded): Support listening for a "webKitFullScreenChangeEvent" 68926 (WebCore::Document::webkitRequestFullScreenForElement): Passes request to the chrome client to enter full screen mode. 68927 (WebCore::Document::webkitCancelFullScreen): Passes request to the chrome client to exit full screen mode. 68928 (WebCore::Document::webkitWillEnterFullScreenForElement): Sets the FullScreen pseudo-classes on the full-screen element and its document. 68929 (WebCore::Document::webkitDidEnterFullScreenForElement): Currently a no-op. 68930 (WebCore::Document::webkitWillExitFullScreenForElement): Currently a no-op. 68931 (WebCore::Document::webkitDidExitFullScreenForElement): Clears the FullScreen pseudo-classes on the full-screen element and its document. 68932 * dom/Document.h: Added const accessors for new full-screen instance variables. 68933 (WebCore::Document::): 68934 (WebCore::Document::webkitIsFullScreen): Accessor for m_isFullScreen. 68935 (WebCore::Document::webkitIsFullScreenWithKeysEnabled): Accessor for m_isFullScren and m_areKeysEnabled. 68936 (WebCore::Document::webkitCurrentFullScreenElement): Accessor for m_fullScreenElement. 68937 * dom/Element.cpp: 68938 (WebCore::Element::webkitRequestFullScreen): Calls Document::webkitRequestFullScreenForElement. 68939 * dom/Element.h: 68940 * dom/EventNames.h: Add a webkitfullscreenchange event name. 68941 * html/HTMLElement.cpp: 68942 (WebCore::HTMLElement::parseMappedAttribute): Parse the new "onwebkitfullscreenchange" attribute and register a listener. 68943 * page/ChromeClient.h: 68944 (WebCore::ChromeClient::supportsFullscreenForElement): Pass through to the current UI delegate. 68945 (WebCore::ChromeClient::enterFullscreenForElement): Create a WebKitFullScreenListener and pass through to the current UI delegate. 68946 (WebCore::ChromeClient::exitFullscreenForElement): Create a WebKitFullScreenListener and pass through to the current UI delegate. 68947 * page/Settings.cpp: 68948 (WebCore::Settings::Settings): 68949 * page/Settings.h: Add a new setting to control runtime support for full screen mode (defaults to off) 68950 * rendering/MediaControlElements.cpp: 68951 (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): The full screen button now toggles full screen mode (previously, it only entered). 68952 * rendering/style/RenderStyleConstants.h: Added new style constants. 68953 68954 2010-08-27 James Robinson <jamesr (a] chromium.org> 68955 68956 Reviewed by Darin Fisher. 68957 68958 Move Texture class from p/g/chromium to p/g/gpu 68959 https://bugs.webkit.org/show_bug.cgi?id=44783 68960 68961 This class and its support were developed in platform/graphics/chromium but are not chromium-specific 68962 in any way. This patch moves them to a common location so they can be shared by all platforms. 68963 68964 Pure refactor, so no new tests. 68965 68966 * WebCore.gyp/WebCore.gyp: 68967 * WebCore.gypi: 68968 * platform/graphics/chromium/GLES2Canvas.cpp: 68969 (WebCore::GLES2Canvas::drawTexturedRect): 68970 (WebCore::GLES2Canvas::drawTexturedRectTile): 68971 (WebCore::GLES2Canvas::createTexture): 68972 (WebCore::GLES2Canvas::getTexture): 68973 * platform/graphics/chromium/GLES2Canvas.h: 68974 * platform/graphics/chromium/GLES2Texture.cpp: Removed. 68975 * platform/graphics/chromium/GLES2Texture.h: Removed. 68976 * platform/graphics/gpu/Texture.cpp: Added. 68977 (WebCore::Texture::Texture): 68978 (WebCore::Texture::~Texture): 68979 (WebCore::convertFormat): 68980 (WebCore::Texture::create): 68981 (WebCore::copySubRect): 68982 (WebCore::Texture::load): 68983 (WebCore::Texture::bindTile): 68984 * platform/graphics/gpu/Texture.h: Added. 68985 (WebCore::Texture::): 68986 (WebCore::Texture::format): 68987 (WebCore::Texture::tiles): 68988 * platform/graphics/gpu/TilingData.cpp: Renamed from WebCore/platform/graphics/chromium/TilingData.cpp. 68989 (WebCore::computeNumTiles): 68990 (WebCore::TilingData::TilingData): 68991 (WebCore::TilingData::tileXIndexFromSrcCoord): 68992 (WebCore::TilingData::tileYIndexFromSrcCoord): 68993 (WebCore::TilingData::tileBounds): 68994 (WebCore::TilingData::tileBoundsWithBorder): 68995 (WebCore::TilingData::tileBoundsNormalized): 68996 (WebCore::TilingData::tilePositionX): 68997 (WebCore::TilingData::tilePositionY): 68998 (WebCore::TilingData::tileSizeX): 68999 (WebCore::TilingData::tileSizeY): 69000 (WebCore::TilingData::overlappedTileIndices): 69001 (WebCore::TilingData::intersectDrawQuad): 69002 * platform/graphics/gpu/TilingData.h: Renamed from WebCore/platform/graphics/chromium/TilingData.h. 69003 (WebCore::TilingData::maxTextureSize): 69004 (WebCore::TilingData::totalSizeX): 69005 (WebCore::TilingData::totalSizeY): 69006 (WebCore::TilingData::numTiles): 69007 (WebCore::TilingData::numTilesX): 69008 (WebCore::TilingData::numTilesY): 69009 (WebCore::TilingData::tileIndex): 69010 (WebCore::TilingData::tileXIndex): 69011 (WebCore::TilingData::tileYIndex): 69012 (WebCore::TilingData::TilingData): 69013 (WebCore::TilingData::assertTile): 69014 * platform/graphics/skia/ImageSkia.cpp: 69015 (WebCore::drawBitmapGLES2): 69016 * platform/graphics/skia/PlatformContextSkia.cpp: 69017 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 69018 * platform/graphics/skia/PlatformContextSkia.h: 69019 69020 2010-08-27 David Hyatt <hyatt (a] apple.com> 69021 69022 Reviewed by Simon Fraser. 69023 69024 https://bugs.webkit.org/show_bug.cgi?id=44788, implement HTML5-compliant doctype switching. 69025 69026 Rename the various modes to match the HTML5 specification: 69027 ParseMode -> CompatibilityMode 69028 CompatMode -> QuirksMode 69029 AlmostStrictMode -> LimitedQuirksMode 69030 StrictMode -> NoQuirksMode 69031 69032 Remove the htmlHacks() accessor from RenderStyle and make rendering code just go to the document 69033 instead. This makes switching modes avoid forcing all RenderStyles to detect as changed. 69034 69035 Clean up user stylesheets to minimize style recalculation when the mode is switched. 69036 69037 Fix bugs with the propagation of correct modes in the HTML5 parser. Make sure the 69038 dummy document created for fragment parsing properly inherits the real document's CompatibilityMode. 69039 Make sure the tree builder properly changes the insertion mode to "BeforeHTML" after handling 69040 a doctype token. 69041 69042 determineParseMode -> setCompatibilityModeFromDoctype, and it now implements the HTML5 algorithm 69043 precisely. 69044 69045 * WebCore.exp.in: 69046 * css/CSSStyleSelector.cpp: 69047 (WebCore::CSSStyleSelector::styleForDocument): 69048 (WebCore::CSSStyleSelector::applyProperty): 69049 (WebCore::CSSStyleSelector::fontSizeForKeyword): 69050 * dom/ClassNodeList.cpp: 69051 (WebCore::ClassNodeList::ClassNodeList): 69052 * dom/DecodedDataDocumentParser.cpp: 69053 (WebCore::DecodedDataDocumentParser::appendBytes): 69054 * dom/Document.cpp: 69055 (WebCore::Document::Document): 69056 (WebCore::Document::setCompatibilityMode): 69057 (WebCore::Document::setDocType): 69058 (WebCore::Document::unscheduleStyleRecalc): 69059 (WebCore::Document::recalcStyle): 69060 (WebCore::Document::updateStyleIfNeeded): 69061 (WebCore::Document::createStyleSelector): 69062 (WebCore::Document::implicitOpen): 69063 (WebCore::Document::pageUserSheet): 69064 (WebCore::Document::clearPageUserSheet): 69065 (WebCore::Document::updatePageUserSheet): 69066 (WebCore::Document::pageGroupUserSheets): 69067 (WebCore::Document::clearPageGroupUserSheets): 69068 (WebCore::Document::updatePageGroupUserSheets): 69069 (WebCore::Document::findAnchor): 69070 * dom/Document.h: 69071 (WebCore::Document::): 69072 (WebCore::Document::setCompatibilityModeFromDoctype): 69073 (WebCore::Document::lockCompatibilityMode): 69074 (WebCore::Document::compatibilityMode): 69075 (WebCore::Document::inQuirksMode): 69076 (WebCore::Document::inLimitedQuirksMode): 69077 (WebCore::Document::inNoQuirksMode): 69078 * dom/Element.cpp: 69079 (WebCore::Element::clientWidth): 69080 (WebCore::Element::clientHeight): 69081 (WebCore::Element::webkitMatchesSelector): 69082 * dom/NamedNodeMap.cpp: 69083 (WebCore::NamedNodeMap::setClass): 69084 * dom/Node.cpp: 69085 (WebCore::Node::querySelector): 69086 (WebCore::Node::querySelectorAll): 69087 * dom/OptionElement.cpp: 69088 (WebCore::OptionElement::collectOptionLabelOrText): 69089 * dom/SelectorNodeList.cpp: 69090 (WebCore::createSelectorNodeList): 69091 * dom/StyleElement.cpp: 69092 (WebCore::StyleElement::createSheet): 69093 * dom/StyledElement.cpp: 69094 (WebCore::StyledElement::createInlineStyleDecl): 69095 (WebCore::StyledElement::parseMappedAttribute): 69096 * editing/ReplaceSelectionCommand.cpp: 69097 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): 69098 * html/HTMLBodyElement.cpp: 69099 (WebCore::HTMLBodyElement::createLinkDecl): 69100 * html/HTMLCanvasElement.cpp: 69101 (WebCore::HTMLCanvasElement::getContext): 69102 * html/HTMLConstructionSite.cpp: 69103 (WebCore::HTMLConstructionSite::insertDoctype): 69104 * html/HTMLDocument.cpp: 69105 (WebCore::HTMLDocument::HTMLDocument): 69106 (WebCore::HTMLDocument::compatMode): 69107 (WebCore::HTMLDocument::setCompatibilityModeFromDoctype): 69108 * html/HTMLDocument.h: 69109 * html/HTMLLinkElement.cpp: 69110 (WebCore::HTMLLinkElement::setCSSStyleSheet): 69111 * html/HTMLTreeBuilder.cpp: 69112 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 69113 (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): 69114 (WebCore::HTMLTreeBuilder::processDoctypeToken): 69115 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 69116 (WebCore::HTMLTreeBuilder::defaultForInitial): 69117 * html/HTMLViewSourceDocument.cpp: 69118 (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument): 69119 * loader/DocumentWriter.cpp: 69120 (WebCore::DocumentWriter::replaceDocument): 69121 (WebCore::DocumentWriter::reportDataReceived): 69122 * loader/DocumentWriter.h: 69123 * loader/ImageDocument.cpp: 69124 (WebCore::ImageDocument::ImageDocument): 69125 * loader/MediaDocument.cpp: 69126 (WebCore::MediaDocument::MediaDocument): 69127 * loader/PluginDocument.cpp: 69128 (WebCore::PluginDocument::PluginDocument): 69129 * loader/SinkDocument.cpp: 69130 (WebCore::SinkDocument::SinkDocument): 69131 * loader/TextDocument.cpp: 69132 (WebCore::TextDocument::TextDocument): 69133 * page/Page.cpp: 69134 (WebCore::Page::userStyleSheetLocationChanged): 69135 * page/PageGroup.cpp: 69136 (WebCore::PageGroup::resetUserStyleCacheInAllFrames): 69137 * page/Settings.cpp: 69138 (WebCore::Settings::Settings): 69139 (WebCore::Settings::setEnforceCSSMIMETypeInNoQuirksMode): 69140 * page/Settings.h: 69141 (WebCore::Settings::enforceCSSMIMETypeInNoQuirksMode): 69142 * rendering/AutoTableLayout.cpp: 69143 (WebCore::AutoTableLayout::recalcColumn): 69144 * rendering/FixedTableLayout.cpp: 69145 (WebCore::FixedTableLayout::calcPrefWidths): 69146 * rendering/InlineFlowBox.cpp: 69147 (WebCore::InlineFlowBox::paintBoxDecorations): 69148 (WebCore::InlineFlowBox::paintMask): 69149 (WebCore::InlineFlowBox::paintTextDecorations): 69150 * rendering/InlineTextBox.cpp: 69151 (WebCore::InlineTextBox::paint): 69152 * rendering/RenderBlock.cpp: 69153 (WebCore::RenderBlock::isSelfCollapsingBlock): 69154 (WebCore::RenderBlock::collapseMargins): 69155 (WebCore::RenderBlock::handleBottomOfBlock): 69156 (WebCore::RenderBlock::calcInlinePrefWidths): 69157 (WebCore::RenderBlock::calcBlockPrefWidths): 69158 * rendering/RenderBlockLineLayout.cpp: 69159 (WebCore::createInlineBoxForRenderer): 69160 (WebCore::RenderBlock::findNextLineBreak): 69161 * rendering/RenderBox.cpp: 69162 (WebCore::RenderBox::calcPercentageHeight): 69163 (WebCore::RenderBox::calcAbsoluteHorizontal): 69164 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): 69165 * rendering/RenderBox.h: 69166 (WebCore::RenderBox::stretchesToViewHeight): 69167 * rendering/RenderListItem.cpp: 69168 (WebCore::getParentOfFirstLineBox): 69169 * rendering/RenderTable.cpp: 69170 (WebCore::RenderTable::layout): 69171 * rendering/RenderTableSection.cpp: 69172 (WebCore::RenderTableSection::calcRowHeight): 69173 * rendering/RootInlineBox.cpp: 69174 (WebCore::RootInlineBox::verticallyAlignBoxes): 69175 * rendering/style/RenderStyle.cpp: 69176 (WebCore::RenderStyle::diff): 69177 * rendering/style/RenderStyle.h: 69178 (WebCore::): 69179 (WebCore::InheritedFlags::setBitDefaults): 69180 69181 2010-08-27 Gavin Barraclough <barraclough (a] apple.com> 69182 69183 Reviewed by Oliver Hunt. 69184 69185 Bug 44745 - Number.toFixed/toExponential/toPrecision are inaccurate. 69186 69187 These methods should be using a version of dtoa that can generate results accurate 69188 to the requested precision, whereas our version of dtoa is only currently able to 69189 support producing results sufficiently accurate to distinguish the value from any 69190 other IEEE-754 double precision number. 69191 69192 * html/HTMLTreeBuilder.cpp: 69193 (WebCore::serializeForNumberType): 69194 doubleToStringInJavaScriptFormat renamed to numberToString. 69195 69196 2010-08-27 Michael Nordman <michaeln (a] google.com> 69197 69198 Reviewed by David Levin. 69199 69200 https://bugs.webkit.org/show_bug.cgi?id=44133 69201 IDL bindings for XmlHttpRequest.responseBlob support, doesn't do anything yet. 69202 Adds two new attributes, asBlob and responseBlob. 69203 Runtime disabled by default, also behind a new ENABLE_XHR_RESPONSE_BLOB compile time guard. 69204 69205 No new tests, just adding some stubs. 69206 69207 * bindings/generic/RuntimeEnabledFeatures.cpp: 69208 * bindings/generic/RuntimeEnabledFeatures.h: 69209 (WebCore::RuntimeEnabledFeatures::setResponseBlobEnabled): 69210 (WebCore::RuntimeEnabledFeatures::responseBlobEnabled): 69211 (WebCore::RuntimeEnabledFeatures::asBlobEnabled): 69212 * bindings/js/JSXMLHttpRequestCustom.cpp: 69213 (WebCore::JSXMLHttpRequest::responseText): Changed to allow an exceptional return path. 69214 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 69215 (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): Changed to allow an exceptional return path. 69216 * xml/XMLHttpRequest.cpp: 69217 (WebCore::XMLHttpRequest::responseText): Changed to raise an exception when accessed with asBlob set to true. 69218 (WebCore::XMLHttpRequest::responseXML): Changed to raise an exception when accessed with asBlob set to true. 69219 (WebCore::XMLHttpRequest::responseBlob): Added stub method, returns 0 for now. 69220 (WebCore::XMLHttpRequest::setAsBlob): Sets the asBlob attribute, raises exception if called at an inappropriate time. 69221 (WebCore::XMLHttpRequest::open): Resets asBlob to false, the default value. 69222 (WebCore::XMLHttpRequest::abort): Clears m_responseBlob. 69223 (WebCore::XMLHttpRequest::clearResponse): Clears m_responseBlob. 69224 (WebCore::XMLHttpRequest::didFinishLoading): Added a FIXME to populate m_responseBlob. 69225 * xml/XMLHttpRequest.h: 69226 (WebCore::XMLHttpRequest::asBlob): 69227 * xml/XMLHttpRequest.idl: 69228 69229 2010-08-27 Simon Fraser <simon.fraser (a] apple.com> 69230 69231 Reviewed by Tony Chang. 69232 69233 Crash in CSSStyleSelector.cpp 69234 https://bugs.webkit.org/show_bug.cgi?id=44780 69235 69236 Need to null-check the images when replacing pending images, because a later 69237 rule may have replaced an image with 'none'. 69238 69239 Test: fast/css/pending-images-crash.html 69240 69241 * css/CSSStyleSelector.cpp: 69242 (WebCore::CSSStyleSelector::loadPendingImages): 69243 * page/FrameView.cpp: 69244 (WebCore::FrameView::paintContents): Fix unrelated log message. 69245 69246 2010-08-27 Andrey Kosyakov <caseq (a] chromium.org> 69247 69248 Unreviewed. Revert r66218 & r66220 due to GTK test failures. 69249 69250 * WebCore.gypi: 69251 * WebCore.vcproj/WebCore.vcproj: 69252 * inspector/front-end/AuditLauncherView.js: 69253 (WebInspector.AuditLauncherView.categorySortFunction): 69254 (WebInspector.AuditLauncherView): 69255 (WebInspector.AuditLauncherView.prototype._launchButtonClicked): 69256 (WebInspector.AuditLauncherView.prototype._selectAllClicked): 69257 (WebInspector.AuditLauncherView.prototype._categoryClicked): 69258 (WebInspector.AuditLauncherView.prototype._createCategoryElement): 69259 (WebInspector.AuditLauncherView.prototype._createLauncherUI): 69260 * inspector/front-end/AuditResultView.js: 69261 (WebInspector.AuditCategoryResultPane.prototype._appendResult): 69262 * inspector/front-end/AuditsPanel.js: 69263 (WebInspector.AuditsPanel): 69264 (WebInspector.AuditsPanel.prototype._executeAudit): 69265 (WebInspector.AuditCategory.prototype.runRules): 69266 * inspector/front-end/ExtensionAPI.js: 69267 (injectedExtensionAPI): 69268 (injectedExtensionAPI.EventSinkImpl.prototype.addListener): 69269 (injectedExtensionAPI.EventSinkImpl.prototype._fire): 69270 (injectedExtensionAPI.EventSink): 69271 (injectedExtensionAPI.InspectorExtensionAPI): 69272 (injectedExtensionAPI.Panels.prototype.create): 69273 * inspector/front-end/ExtensionServer.js: 69274 (WebInspector.ExtensionServer): 69275 (WebInspector.ExtensionServer.prototype._postNotification): 69276 (WebInspector.ExtensionServer.prototype._addExtensions): 69277 (WebInspector.ExtensionStatus): 69278 * inspector/front-end/WebKit.qrc: 69279 * inspector/front-end/inspector.html: 69280 * inspector/front-end/utilities.js: 69281 (): 69282 69283 2010-08-27 Mihai Parparita <mihaip (a] chromium.org> 69284 69285 Reviewed by Darin Fisher. 69286 69287 Crash in HistoryController::recursiveGoToItem when navigating in a frame 69288 while another frame has a custom window name 69289 https://bugs.webkit.org/show_bug.cgi?id=44183 69290 69291 Fix up HistoryController::recursiveGoToItem to better check whether the 69292 current document frames, the curent history item frames, and the 69293 destination history frames match up. 69294 69295 Test: fast/history/history-subframe-with-name.html 69296 69297 * history/HistoryItem.cpp: 69298 (WebCore::HistoryItem::childItemWithDocumentSequenceNumber): Add linear 69299 lookup of child by document sequence number 69300 (WebCore::HistoryItem::hasSameDocuments): Remove assumption that the 69301 other item has the children in the same order (it doesn't seem to be 69302 true) 69303 (WebCore::HistoryItem::hasSameFrames): Add recursive comparison of child 69304 frames. 69305 * history/HistoryItem.h: 69306 * loader/FrameLoader.cpp: 69307 (WebCore::FrameLoader::loadItem): Compare full set of documents in 69308 history items, not just the topmost ones. Otherwise when going between 69309 framesets where only one of the subframes changed we wouldn't trigger a 69310 load. 69311 * loader/HistoryController.cpp: 69312 (WebCore::HistoryController::recursiveGoToItem): Also check that the 69313 two history items have the same frames 69314 (WebCore::HistoryController::currentFramesMatchItem): Refactor 69315 childFramesMatchItem to also check the top-most frame, to make 69316 recursiveGoToItem easier to read. 69317 * loader/HistoryController.h: 69318 69319 2010-08-27 Patrick Gansterer <paroga (a] paroga.com> 69320 69321 Reviewed by Nikolas Zimmermann. 69322 69323 [WINCE] Buildfix for graphics code after r65449 69324 https://bugs.webkit.org/show_bug.cgi?id=44510 69325 69326 * platform/graphics/wince/GraphicsContextWince.cpp: 69327 * platform/graphics/wince/ImageBufferWince.cpp: 69328 (WebCore::ImageBuffer::drawsUsingCopy): 69329 (WebCore::ImageBuffer::copyImage): 69330 (WebCore::ImageBuffer::clip): 69331 (WebCore::ImageBuffer::draw): 69332 (WebCore::ImageBuffer::drawPattern): 69333 69334 2010-08-27 Dawit Alemayehu <adawit (a] kde.org> 69335 69336 Reviewed by Simon Hausmann. 69337 69338 [Qt] Search the Windows registry for the location of the Java plugin DLL. 69339 https://bugs.webkit.org/show_bug.cgi?id=38911 69340 69341 This change, in addition to the ones 34539 and 38911, is needed to 69342 make Java applet work in QtWebKit on the Windows platform. 69343 69344 * plugins/win/PluginDatabaseWin.cpp: 69345 (WebCore::addJavaPluginDirectory): 69346 (WebCore::PluginDatabase::defaultPluginDirectories): 69347 69348 2010-08-27 Pavel Feldman <pfeldman (a] chromium.org> 69349 69350 Reviewed by Yury Semikhatsky. 69351 69352 Web Inspector: color-code property values in object notation. 69353 https://bugs.webkit.org/show_bug.cgi?id=44766 69354 69355 * inspector/front-end/ObjectPropertiesSection.js: 69356 (WebInspector.ObjectPropertyTreeElement.prototype.update): 69357 69358 2010-08-27 Patrick Gansterer <paroga (a] paroga.com> 69359 69360 Reviewed by Nikolas Zimmermann. 69361 69362 [WINCE] Buildfix for FontPlatformData after r65021 69363 https://bugs.webkit.org/show_bug.cgi?id=44467 69364 69365 * platform/graphics/wince/FontPlatformData.h: 69366 69367 2010-08-27 Patrick Gansterer <paroga (a] paroga.com> 69368 69369 Reviewed by Nikolas Zimmermann. 69370 69371 RenderImage::imageChanged invalidates wrong area 69372 https://bugs.webkit.org/show_bug.cgi?id=43779 69373 69374 At the moment RenderSVGImage inherits from RenderImage, which makes non-SVG compatible 69375 assumptions about repainting, and thus has to be fixed to inherit from RenderSVGModelObject. 69376 69377 This patch moves the CachedImage from RenderImage into a separate class. 69378 The new class contains the common behavior of RenderImage and RenderSVGImage. 69379 An additional patch will remove the inheritance of RenderImage at RenderSVGImage. 69380 69381 * Android.mk: 69382 * CMakeLists.txt: 69383 * GNUmakefile.am: 69384 * WebCore.gypi: 69385 * WebCore.pro: 69386 * WebCore.vcproj/WebCore.vcproj: 69387 * WebCore.xcodeproj/project.pbxproj: 69388 * html/HTMLEmbedElement.cpp: 69389 (WebCore::HTMLEmbedElement::createRenderer): 69390 (WebCore::HTMLEmbedElement::attach): 69391 * html/HTMLImageElement.cpp: 69392 (WebCore::HTMLImageElement::createRenderer): 69393 (WebCore::HTMLImageElement::attach): 69394 * html/HTMLInputElement.cpp: 69395 (WebCore::HTMLInputElement::createRenderer): 69396 (WebCore::HTMLInputElement::attach): 69397 * html/HTMLObjectElement.cpp: 69398 (WebCore::HTMLObjectElement::createRenderer): 69399 * html/HTMLVideoElement.cpp: 69400 (WebCore::HTMLVideoElement::attach): 69401 (WebCore::HTMLVideoElement::parseMappedAttribute): 69402 * loader/ImageLoader.cpp: 69403 (WebCore::ImageLoader::setImage): 69404 (WebCore::ImageLoader::updateFromElement): 69405 (WebCore::ImageLoader::renderImageResource): 69406 (WebCore::ImageLoader::updateRenderer): 69407 * loader/ImageLoader.h: 69408 * rendering/RenderImage.cpp: 69409 (WebCore::RenderImage::RenderImage): 69410 (WebCore::RenderImage::~RenderImage): 69411 (WebCore::RenderImage::setImageResource): 69412 (WebCore::RenderImage::imageChanged): 69413 (WebCore::RenderImage::notifyFinished): 69414 (WebCore::RenderImage::paintReplaced): 69415 (WebCore::RenderImage::paintIntoRect): 69416 (WebCore::RenderImage::minimumReplacedHeight): 69417 (WebCore::RenderImage::calcReplacedWidth): 69418 (WebCore::RenderImage::calcReplacedHeight): 69419 (WebCore::RenderImage::calcAspectRatioWidth): 69420 (WebCore::RenderImage::calcAspectRatioHeight): 69421 * rendering/RenderImage.h: 69422 (WebCore::RenderImage::imageResource): 69423 (WebCore::RenderImage::cachedImage): 69424 (WebCore::RenderImage::intrinsicSizeChanged): 69425 (WebCore::toRenderImage): 69426 * rendering/RenderImageGeneratedContent.cpp: Removed. 69427 * rendering/RenderImageGeneratedContent.h: Removed. 69428 * rendering/RenderImageResource.cpp: Added. 69429 (WebCore::RenderImageResource::RenderImageResource): 69430 (WebCore::RenderImageResource::~RenderImageResource): 69431 (WebCore::RenderImageResource::initialize): 69432 (WebCore::RenderImageResource::shutdown): 69433 (WebCore::RenderImageResource::setCachedImage): 69434 (WebCore::RenderImageResource::resetAnimation): 69435 (WebCore::RenderImageResource::setImageContainerSize): 69436 (WebCore::RenderImageResource::nullImage): 69437 * rendering/RenderImageResource.h: Added. 69438 (WebCore::RenderImageResource::create): 69439 (WebCore::RenderImageResource::cachedImage): 69440 (WebCore::RenderImageResource::hasImage): 69441 (WebCore::RenderImageResource::image): 69442 (WebCore::RenderImageResource::errorOccurred): 69443 (WebCore::RenderImageResource::usesImageContainerSize): 69444 (WebCore::RenderImageResource::imageHasRelativeWidth): 69445 (WebCore::RenderImageResource::imageHasRelativeHeight): 69446 (WebCore::RenderImageResource::imageSize): 69447 (WebCore::RenderImageResource::imagePtr): 69448 * rendering/RenderImageResourceStyleImage.cpp: Added. 69449 (WebCore::RenderImageResourceStyleImage::RenderImageResourceStyleImage): 69450 (WebCore::RenderImageResourceStyleImage::~RenderImageResourceStyleImage): 69451 (WebCore::RenderImageResourceStyleImage::initialize): 69452 (WebCore::RenderImageResourceStyleImage::shutdown): 69453 * rendering/RenderImageResourceStyleImage.h: Added. 69454 (WebCore::RenderImageResourceStyleImage::create): 69455 (WebCore::RenderImageResourceStyleImage::image): 69456 (WebCore::RenderImageResourceStyleImage::errorOccurred): 69457 (WebCore::RenderImageResourceStyleImage::setImageContainerSize): 69458 (WebCore::RenderImageResourceStyleImage::usesImageContainerSize): 69459 (WebCore::RenderImageResourceStyleImage::imageHasRelativeWidth): 69460 (WebCore::RenderImageResourceStyleImage::imageHasRelativeHeight): 69461 (WebCore::RenderImageResourceStyleImage::imageSize): 69462 (WebCore::RenderImageResourceStyleImage::imagePtr): 69463 * rendering/RenderMedia.cpp: 69464 (WebCore::RenderMedia::RenderMedia): 69465 * rendering/RenderObject.cpp: 69466 (WebCore::RenderObject::createObject): 69467 * rendering/RenderObjectChildList.cpp: 69468 (WebCore::RenderObjectChildList::updateBeforeAfterContent): 69469 * rendering/RenderSVGImage.cpp: 69470 (WebCore::RenderSVGImage::RenderSVGImage): 69471 (WebCore::RenderSVGImage::layout): 69472 (WebCore::RenderSVGImage::paint): 69473 * rendering/RenderVideo.cpp: 69474 (WebCore::RenderVideo::calculateIntrinsicSize): 69475 * svg/SVGImageElement.cpp: 69476 (WebCore::SVGImageElement::attach): 69477 * wml/WMLImageElement.cpp: 69478 (WebCore::WMLImageElement::createRenderer): 69479 69480 2010-08-27 Pavel Feldman <pfeldman (a] chromium.org> 69481 69482 Reviewed by Pavel Feldman. 69483 69484 Web Inspector: Elements panel breaks after calling "Edit as HTML" on <body> 69485 https://bugs.webkit.org/show_bug.cgi?id=44765 69486 69487 * inspector/InspectorDOMAgent.cpp: 69488 (WebCore::InspectorDOMAgent::setOuterHTML): 69489 69490 2010-08-25 Jeremy Orlow <jorlow (a] chromium.org> 69491 69492 Reviewed by Steve Block. 69493 69494 Add setVersion to IndexedDB 69495 https://bugs.webkit.org/show_bug.cgi?id=44630 69496 69497 * storage/IDBDatabase.cpp: 69498 (WebCore::IDBDatabase::setVersion): 69499 * storage/IDBDatabase.h: 69500 * storage/IDBDatabase.idl: 69501 * storage/IDBDatabaseBackendImpl.cpp: 69502 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 69503 (WebCore::IDBDatabaseBackendImpl::setVersion): 69504 * storage/IDBDatabaseBackendImpl.h: 69505 * storage/IDBDatabaseBackendInterface.h: 69506 69507 2010-08-26 Pavel Podivilov <podivilov (a] chromium.org> 69508 69509 Reviewed by Pavel Feldman. 69510 69511 Web Inspector: use context menu items with checkbox for setting and removing DOM breakpoints 69512 https://bugs.webkit.org/show_bug.cgi?id=44687 69513 69514 * English.lproj/localizedStrings.js: 69515 * inspector/front-end/BreakpointsSidebarPane.js: 69516 (WebInspector.DOMBreakpointItem): 69517 * inspector/front-end/DOMAgent.js: 69518 (WebInspector.DOMBreakpointManager.prototype.findBreakpoint): 69519 (WebInspector.DOMBreakpoint.labelForType): 69520 (WebInspector.DOMBreakpoint.contextMenuLabelForType): 69521 * inspector/front-end/ElementsTreeOutline.js: 69522 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 69523 * inspector/front-end/inspector.js: 69524 (WebInspector.pausedScript): 69525 69526 2010-08-27 Steve Block <steveblock (a] google.com> 69527 69528 Reviewed by Jeremy Orlow. 69529 69530 Calls to IndexedDB methods from V8Proxy::didLeaveScriptContext() are missing enable guards 69531 https://bugs.webkit.org/show_bug.cgi?id=44760 69532 69533 No new tests, build fix only. 69534 69535 * bindings/v8/V8Proxy.cpp: 69536 (WebCore::V8Proxy::didLeaveScriptContext): 69537 69538 2010-08-27 Dirk Schulze <krit (a] webkit.org> 69539 69540 Reviewed by Nikolas Zimmermann. 69541 69542 getPointAtLength returns incorrect values for paths closed with the closepath command 69543 https://bugs.webkit.org/show_bug.cgi?id=44197 69544 69545 The closepath segment was traversed by the wrong direction. Swap starting point and 69546 end point for closeSubpath. 69547 69548 Test: svg/dom/path-pointAtLength.html 69549 69550 * platform/graphics/PathTraversalState.cpp: 69551 (WebCore::PathTraversalState::closeSubpath): 69552 69553 2010-08-27 Dirk Schulze <krit (a] webkit.org> 69554 69555 Reviewed by Nikolas Zimmermann. 69556 69557 SVG Filter with wrong results on repaint for non-CG platforms 69558 https://bugs.webkit.org/show_bug.cgi?id=44706 69559 69560 The result of SVG Filter is transformed to linearRGB on every repaint. 69561 Transform the result just once, right after creating it. 69562 69563 Test: svg/repaint/filter-repaint.svg 69564 69565 * rendering/RenderSVGResourceFilter.cpp: 69566 (WebCore::RenderSVGResourceFilter::postApplyResource): 69567 69568 2010-08-27 Yury Semikhatsky <yurys (a] chromium.org> 69569 69570 Reviewed by Pavel Feldman. 69571 69572 REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector 69573 https://bugs.webkit.org/show_bug.cgi?id=44230 69574 69575 * inspector/Inspector.idl: 69576 * inspector/InspectorController.cpp: 69577 (WebCore::InspectorController::inspectedPageDestroyed): 69578 (WebCore::InspectorController::close): 69579 * inspector/InspectorFrontendClient.h: 69580 * inspector/InspectorFrontendHost.cpp: 69581 (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController 69582 that frontend closes if InspectorController triggered the action. 69583 * inspector/InspectorFrontendHost.h: 69584 * inspector/InspectorFrontendHost.idl: 69585 * inspector/front-end/InspectorFrontendHostStub.js: 69586 (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend): 69587 * inspector/front-end/inspector.js: 69588 (WebInspector.disconnectFromBackend): 69589 69590 2010-08-27 Sheriff Bot <webkit.review.bot (a] gmail.com> 69591 69592 Unreviewed, rolling out r66188. 69593 http://trac.webkit.org/changeset/66188 69594 https://bugs.webkit.org/show_bug.cgi?id=44756 69595 69596 "Graphic libraries handle segement length differently. Fixing 69597 one platform might break another one. Rolling out this patch 69598 and think about another solution to get getPointAtLength" 69599 (Requested by krit on #webkit). 69600 69601 * platform/graphics/PathTraversalState.cpp: 69602 (WebCore::PathTraversalState::closeSubpath): 69603 69604 2010-08-27 Simon Fraser <simon.fraser (a] apple.com> 69605 69606 Reviewed by Nikolas Zimmermann. 69607 69608 r66141 caused fast/forms/select-style.html to fail on mac: 69609 https://bugs.webkit.org/show_bug.cgi?id=44737 69610 69611 Handle the fact that a CSSImageValue may have a value of CSSValueNone, 69612 in which case we should not return a pending image. 69613 69614 * css/CSSImageValue.cpp: 69615 (WebCore::CSSImageValue::cachedOrPendingImage): 69616 * css/CSSStyleSelector.cpp: 69617 (WebCore::CSSStyleSelector::cachedOrPendingFromValue): 69618 69619 2010-08-27 Alejandro G. Castro <alex (a] igalia.com> 69620 69621 Reviewed by Dan Bernstein. 69622 69623 drawGDIGlyphs checks if the offset is empty incorrectly causing 69624 problems with the shadow 69625 https://bugs.webkit.org/show_bug.cgi?id=44619 69626 69627 Removed the offset empty condition, now we just check if we have 69628 offset or blur. 69629 69630 * platform/graphics/win/FontCGWin.cpp: 69631 (WebCore::drawGDIGlyphs): 69632 69633 2010-08-27 Dirk Schulze <krit (a] webkit.org> 69634 69635 Reviewed by Nikolas Zimmermann. 69636 69637 getPointAtLength returns incorrect values for paths closed with the closepath command 69638 https://bugs.webkit.org/show_bug.cgi?id=44197 69639 69640 The closepath segment was traversed by the wrong direction. Swap starting point and 69641 end point for closeSubpath. 69642 69643 Test: svg/dom/path-pointAtLength.html 69644 69645 * platform/graphics/PathTraversalState.cpp: 69646 (WebCore::PathTraversalState::closeSubpath): 69647 69648 2010-08-27 Nikolas Zimmermann <nzimmermann (a] rim.com> 69649 69650 Reviewed by Dirk Schulze. 69651 69652 SVGLocatable.getScreenCTM ignores scrolling 69653 https://bugs.webkit.org/show_bug.cgi?id=44083 69654 69655 getScreenCTM needs to include the FrameViews scrollOffset in the e/f parameters of the AffineTransform. 69656 Adding three new tests, which cover scrolling & getScreenCTM in large svgs with scrollbars, and with (nested) divs in overflow="scroll" mode. 69657 69658 Tests: svg/custom/getscreenctm-in-scrollable-div-area-nested.xhtml 69659 svg/custom/getscreenctm-in-scrollable-div-area.xhtml 69660 svg/custom/getscreenctm-in-scrollable-svg-area.xhtml 69661 69662 * svg/SVGSVGElement.cpp: 69663 (WebCore::SVGSVGElement::localCoordinateSpaceTransform): 69664 69665 2010-08-25 Ryosuke Niwa <rniwa (a] webkit.org> 69666 69667 Reviewed by Darin Adler. 69668 69669 implicitlyStyledElementShouldBeRemovedWhenApplyingStyle, removeHTMLFontStyle, and removeHTMLBidiEmbeddingStyle should be merged 69670 https://bugs.webkit.org/show_bug.cgi?id=44622 69671 69672 Merged shouldRemoveTextDecorationTag, implicitlyStyledElementShouldBeRemovedWhenApplyingStyle, removeHTMLFontStyle, 69673 and removeHTMLBidiEmbeddingStyle into removeImplicitlyStyledElement. New function uses CSSPropertyElementMapping to 69674 support all different cases dealt separately in each function. 69675 69676 No new tests are added since this is a cleanup. 69677 69678 * editing/ApplyStyleCommand.cpp: 69679 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls removeImplicitlyStyledElement. 69680 (WebCore::): 69681 (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Added. 69682 * editing/ApplyStyleCommand.h: 69683 69684 2010-08-26 Andy Estes <aestes (a] apple.com> 69685 69686 Reviewed by Darin Adler. 69687 69688 Based on a patch by Mihnea Ovidenie <mihnea (a] adobe.com>. 69689 69690 Percentage top value on position:relative descendant not resolved 69691 correctly if containing block height is not specified explicitly. 69692 https://bugs.webkit.org/show_bug.cgi?id=26396 69693 69694 If the containing block height is auto and the element is positioned 69695 relatively, and if the element's top/bottom is percent, then resolve the 69696 top/bottom as auto. 69697 69698 Test: fast/css/percent-top-relative-container-height-unspecified.html 69699 69700 * rendering/RenderBoxModelObject.cpp: 69701 (WebCore::RenderBoxModelObject::relativePositionOffsetY): 69702 69703 2010-08-26 James Robinson <jamesr (a] chromium.org> 69704 69705 Another chromium mac build fix. What a dumb version of GCC. 69706 69707 * platform/graphics/chromium/GLES2Texture.cpp: 69708 (WebCore::GLES2Texture::create): 69709 69710 2010-08-26 Kent Tamura <tkent (a] chromium.org> 69711 69712 Unreviewed, build fix for Chromium-mac. 69713 69714 * platform/graphics/chromium/Shader.cpp: 69715 (WebCore::loadShader): 69716 69717 2010-08-26 James Robinson <jamesr (a] chromium.org> 69718 69719 Fix chromium mac build. Unreviewed. 69720 69721 * platform/graphics/chromium/GLES2Canvas.cpp: 69722 (WebCore::GLES2Canvas::GLES2Canvas): 69723 * platform/graphics/chromium/GLES2Texture.cpp: 69724 (WebCore::GLES2Texture::load): 69725 69726 2010-08-26 Mark Rowe <mrowe (a] apple.com> 69727 69728 Darin pointed out that the braces are unnecessary in an Objective-C interface 69729 declaration when there are no data members. 69730 69731 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Begone, evil braces! 69732 69733 2010-08-26 Gavin Barraclough <barraclough (a] apple.com> 69734 69735 Rubber Stamped by Oliver Hunt. 69736 69737 Partially revert r65959. The toString changes regressed the v8 tests, 69738 but keep the toFixed/toExponential/toPrecision changes. 69739 69740 * html/HTMLTreeBuilder.cpp: 69741 (WebCore::serializeForNumberType): 69742 69743 2010-08-26 Mark Rowe <mrowe (a] apple.com> 69744 69745 Reviewed by Adam Roben. 69746 69747 Fix two build issues that are revealed when building with clang. 69748 69749 * platform/mac/PopupMenuMac.h: Forward-declare as an Objective-C class when compiling for Objective-C. 69750 * platform/network/BlobResourceHandle.h: Forward-declare as a struct to match the real declaration. 69751 69752 2010-08-26 Mark Rowe <mrowe (a] apple.com> 69753 69754 Reviewed by Sam Weinig. 69755 69756 <rdar://problem/8339008> WebCore's MediaPlayerPrivateQTKit.mm fails to build with clang. 69757 69758 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 69759 (WebCore::mainThreadSetNeedsDisplay): Remove some ambiguity in the return type of -delegate. 69760 Since the message was being sent to a receiver of type id the compiler cannot accurately 69761 determine the return type. Typically this would be resolved by using a more specific type 69762 for the receiver. However, due to lazy loading shenanigans that we play with QTKit we're 69763 unable to directly cast to the relevant type (QTMovieView*). Instead we fake up an interface 69764 with the correct type of the method we care about (-delegate) and cast to that type instead. 69765 69766 2010-08-26 Andy Estes <aestes (a] apple.com> 69767 69768 Reviewed by Darin Adler. 69769 69770 If an <embed> is part of an <object> element's fallback content, WebKit 69771 should only render the <embed> if the <object> fails to load. 69772 https://bugs.webkit.org/show_bug.cgi?id=44567 69773 <rdar://problem/7699852> 69774 69775 Tests: fast/replaced/invalid-object-with-fallback.html 69776 fast/replaced/object-with-embed-url-param.html 69777 69778 * html/HTMLEmbedElement.cpp: 69779 (WebCore::HTMLEmbedElement::rendererIsNeeded): An <embed> now needs a 69780 renderer if its parent is an <object> but the <object> is using fallback 69781 content. 69782 * html/HTMLObjectElement.h: 69783 (WebCore::HTMLObjectElement::useFallbackContent): Add a public getter 69784 for m_useFallbackContent for use in HTMLEmbedElement::rendererIsNeeded. 69785 * rendering/RenderEmbeddedObject.cpp: 69786 (WebCore::RenderEmbeddedObject::updateWidget): Change the logic that 69787 determines the plug-in parameters to pass to the loader. Do not override 69788 parameters from <object> with those from a child <embed>. 69789 69790 2010-08-26 James Robinson <jamesr (a] chromium.org> 69791 69792 Reviewed by Darin Fisher. 69793 69794 [chromium] Remove the USE(GLES2_RENDERING) define and associated code 69795 https://bugs.webkit.org/show_bug.cgi?id=43761 69796 69797 USE(GLES2_RENDERING) will not be useful since we'll be coding to GraphicsContext3D 69798 instead of OpenGL and can use ENABLE(ACCELERATED_2D_CANVAS) for canvas 2d specific 69799 changes. This deletes the macro and deletes the ChromeClient API to query 69800 GLES2Contexts since we'll never need one of these outside of the compositor, which 69801 is created in platform-specific code. 69802 69803 * loader/EmptyClients.h: 69804 * page/ChromeClient.h: 69805 * platform/graphics/chromium/GLES2Canvas.cpp: 69806 * platform/graphics/chromium/GLES2Canvas.h: 69807 * platform/graphics/chromium/GLES2Texture.cpp: 69808 * platform/graphics/chromium/GLES2Texture.h: 69809 * platform/graphics/skia/GraphicsContextSkia.cpp: 69810 (WebCore::GraphicsContext::savePlatformState): 69811 (WebCore::GraphicsContext::restorePlatformState): 69812 (WebCore::GraphicsContext::clearRect): 69813 (WebCore::GraphicsContext::concatCTM): 69814 (WebCore::GraphicsContext::fillRect): 69815 (WebCore::GraphicsContext::scale): 69816 (WebCore::GraphicsContext::setAlpha): 69817 (WebCore::GraphicsContext::setCompositeOperation): 69818 (WebCore::GraphicsContext::setPlatformFillColor): 69819 (WebCore::GraphicsContext::rotate): 69820 (WebCore::GraphicsContext::translate): 69821 (WebCore::GraphicsContext::setGraphicsContext3D): 69822 (WebCore::GraphicsContext::syncSoftwareCanvas): 69823 * platform/graphics/skia/ImageSkia.cpp: 69824 (WebCore::drawBitmapGLES2): 69825 (WebCore::BitmapImage::draw): 69826 (WebCore::BitmapImageSingleFrameSkia::draw): 69827 * platform/graphics/skia/PlatformContextSkia.cpp: 69828 (WebCore::PlatformContextSkia::PlatformContextSkia): 69829 (WebCore::PlatformContextSkia::~PlatformContextSkia): 69830 * platform/graphics/skia/PlatformContextSkia.h: 69831 69832 2010-08-26 Martin Robinson <mrobinson (a] igalia.com> 69833 69834 Build fix for GTK+, after a bad merge. 69835 69836 * platform/gtk/RenderThemeGtk.cpp: 69837 (WebCore::RenderThemeGtk::paintMozillaGtkWidget): 69838 69839 2010-08-23 Martin Robinson <mrobinson (a] igalia.com> 69840 69841 Reviewed by Gustavo Noronha Silva. 69842 69843 [GTK] ScrollbarThemeGtk is incomplete 69844 https://bugs.webkit.org/show_bug.cgi?id=44471 69845 69846 Add theme drawing code for GTK+ scrollbars. Turn RenderThemeGtk::paintMozillaWidget 69847 into a public method so that ScrollbarThemeGtk can access Mozilla theme API properly. 69848 69849 Tests for this issue will be activated in the form of pixel tests, but 69850 only after fully-fake scrollbars are activated. 69851 69852 * platform/gtk/RenderThemeGtk.cpp: 69853 (WebCore::RenderThemeGtk::paintMozillaGtkWidget): Added this public method which takes 69854 the proper widget state, widget type, graphics context and rectangle and renders a 69855 widget using the Mozilla theming API. 69856 (WebCore::RenderThemeGtk::paintRenderObject): Added this method which first calculates 69857 the widget state before passing the information on to paintMozillaGtkWidget. 69858 (WebCore::RenderThemeGtk::paintCheckbox): Switch to use paintRenderObject. 69859 (WebCore::RenderThemeGtk::paintRadio): Switch to use paintRenderObject. 69860 (WebCore::RenderThemeGtk::paintButton): Switch to use paintRenderObject. 69861 (WebCore::RenderThemeGtk::paintMenuList): Switch to use paintRenderObject. 69862 (WebCore::RenderThemeGtk::paintTextField): Switch to use paintRenderObject. 69863 (WebCore::RenderThemeGtk::paintSliderTrack): Switch to use paintRenderObject. 69864 (WebCore::RenderThemeGtk::paintSliderThumb): Switch to use paintRenderObject. 69865 (WebCore::RenderThemeGtk::paintProgressBar): Switch to use paintRenderObject. 69866 * platform/gtk/RenderThemeGtk.h: Added new method declarations. 69867 * platform/gtk/ScrollbarThemeGtk.cpp: Added code which can render GTK+ scrollbars. 69868 (WebCore::ScrollbarThemeGtk::hasThumb): Added. 69869 (WebCore::ScrollbarThemeGtk::backButtonRect): Added. 69870 (WebCore::ScrollbarThemeGtk::forwardButtonRect): Added. 69871 (WebCore::ScrollbarThemeGtk::trackRect): Added. 69872 (WebCore::ScrollbarThemeGtk::paintTrackBackground): Added. 69873 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Added. 69874 (WebCore::ScrollbarThemeGtk::paintThumb): Added. 69875 (WebCore::ScrollbarThemeGtk::thumbRect): Added. 69876 (WebCore::ScrollbarThemeGtk::paint): Added. 69877 (WebCore::ScrollbarThemeGtk::paintButton): Added. 69878 (WebCore::ScrollbarThemeGtk::paintScrollCorner): Added. 69879 (WebCore::ScrollbarThemeGtk::shouldCenterOnThumb): Added. 69880 (WebCore::ScrollbarThemeGtk::scrollbarThickness): Always get the metrics from the 69881 theme drawing API so that it stays up to date with theme changes. 69882 (WebCore::ScrollbarThemeGtk::buttonSize): Added. 69883 (WebCore::ScrollbarThemeGtk::minimumThumbLength): Added. 69884 * platform/gtk/ScrollbarThemeGtk.h: 69885 (WebCore::ScrollbarThemeGtk::hasButtons): Added. 69886 (WebCore::ScrollbarThemeGtk::initialAutoscrollTimerDelay): Added. 69887 (WebCore::ScrollbarThemeGtk::autoscrollTimerDelay): Added. 69888 69889 2010-08-26 Alexey Proskuryakov <ap (a] apple.com> 69890 69891 Reviewed by Sam Weinig. 69892 69893 https://bugs.webkit.org/show_bug.cgi?id=44726 69894 <rdar://problem/7935518> WebFrameProxies aren't destroyed until a page is destroyed 69895 69896 * loader/FrameLoader.cpp: 69897 (WebCore::FrameLoader::closeAndRemoveChild): 69898 (WebCore::FrameLoader::detachFromParent): 69899 Added a few FIXME comments. The logic we have to track frames is extremely convoluted. 69900 69901 2010-08-26 Ryosuke Niwa <rniwa (a] webkit.org> 69902 69903 Unreviewed; build fix. 69904 69905 Speculative chromium mac fix by including "Color.h". 69906 69907 * platform/graphics/chromium/Shader.cpp: 69908 69909 2010-08-26 Simon Fraser <simon.fraser (a] apple.com> 69910 69911 Reviewed by Dave Hyatt. 69912 69913 CSS downloads all background images related to element, instead of just final rule 69914 https://bugs.webkit.org/show_bug.cgi?id=24223 69915 69916 We used to kick off image loads at the point where the style selector 69917 applies a CSS rule to an element, even if that rule was overridden 69918 by a rule in a later block of rules. This caused loads of images that 69919 weren't actually used. 69920 69921 Fix this by delaying image loads until the style has been fully 69922 resolved. This is achieved by inserting a StylePendingImage into 69923 the RenderStyle for duration of the style resolution, and keeping 69924 an entry in a hash for the relevant CSS property. 69925 69926 At the end of style resolution, we iterate through the hash, and 69927 replace the StylePendingImage with StyleCachedImages, which 69928 causes the loads to happen only for images that are in the final style. 69929 69930 Tests: http/tests/css/border-image-loading.html 69931 http/tests/css/mask-image-loading.html 69932 http/tests/css/reflection-mask-image-loading.html 69933 69934 * GNUmakefile.am: Add StylePendingImage.h 69935 * WebCore.gypi: Ditto 69936 * WebCore.vcproj/WebCore.vcproj: Ditto 69937 69938 * css/CSSImageValue.h: Change m_image to a RefPtr<StyleImage>, 69939 since it may be a StylePendingImage or StyleCachedImage. 69940 * css/CSSImageValue.cpp: 69941 (WebCore::CSSImageValue::~CSSImageValue): Only call removeClient if it's a cachedImage. 69942 (WebCore::CSSImageValue::cachedOrPendingImage): If we have an image (pending or cached), 69943 return it. Otherwise make a pending image and return it. 69944 (WebCore::CSSImageValue::cachedImage): Only return the image if it's a cached image. 69945 (WebCore::CSSImageValue::cachedImageURL): 69946 (WebCore::CSSImageValue::clearCachedImage): 69947 69948 * css/CSSStyleSelector.h: 69949 * css/CSSStyleSelector.cpp: 69950 (WebCore::CSSStyleSelector::initForStyleResolve): Clear m_pendingImageProperties. 69951 (WebCore::CSSStyleSelector::styleForElement): Load pending images. 69952 (WebCore::CSSStyleSelector::styleForKeyframe): Ditto. 69953 (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. 69954 (WebCore::CSSStyleSelector::styleForPage): Ditto. 69955 (WebCore::CSSStyleSelector::applyProperty): Pull property into a local variable 69956 so we can use it in macros. 69957 (WebCore::CSSStyleSelector::mapFillAttachment): Pass the property down (needed to avoid 69958 additional macro complexity). 69959 (WebCore::CSSStyleSelector::mapFillClip): Ditto 69960 (WebCore::CSSStyleSelector::mapFillComposite): Ditto 69961 (WebCore::CSSStyleSelector::mapFillOrigin): Ditto 69962 (WebCore::CSSStyleSelector::styleImage): Call cachedOrPendingFromValue() 69963 (WebCore::CSSStyleSelector::cachedOrPendingFromValue): Get the cachedOrPendingImage() 69964 from the CSSValue, and if it's a pending image, record the property. 69965 (WebCore::CSSStyleSelector::mapFillImage): Pass the property down (needed to avoid 69966 additional macro complexity). 69967 (WebCore::CSSStyleSelector::mapFillRepeatX): Ditto 69968 (WebCore::CSSStyleSelector::mapFillRepeatY): Ditto 69969 (WebCore::CSSStyleSelector::mapFillSize): Ditto 69970 (WebCore::CSSStyleSelector::mapFillXPosition): Ditto 69971 (WebCore::CSSStyleSelector::mapFillYPosition): Ditto 69972 (WebCore::CSSStyleSelector::mapNinePieceImage): Ditto 69973 (WebCore::CSSStyleSelector::loadPendingImages): Iterate through the m_pendingImageProperties 69974 hash, and replace the pending images with cached images. 69975 69976 * rendering/style/StyleCachedImage.h: Make cssValue() const. 69977 * rendering/style/StyleCachedImage.cpp: 69978 (WebCore::StyleCachedImage::cssValue): 69979 69980 * rendering/style/StyleGeneratedImage.h: Make cssValue() const. 69981 * rendering/style/StyleGeneratedImage.cpp: 69982 (WebCore::StyleGeneratedImage::cssValue): 69983 69984 * rendering/style/StyleImage.h: 69985 (WebCore::StyleImage::operator==): Make const. 69986 (WebCore::StyleImage::isPendingImage): 69987 * rendering/style/StylePendingImage.h: Added. 69988 69989 2010-08-26 Sam Weinig <sam (a] webkit.org> 69990 69991 Reviewed by Darin Adler. 69992 69993 Add PassOwnArrayPtr 69994 https://bugs.webkit.org/show_bug.cgi?id=44627 69995 69996 Add new forwarding headers. 69997 69998 * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Added. 69999 * ForwardingHeaders/wtf/PassOwnArrayPtr.h: Added. 70000 70001 2010-08-26 Stanislav Brabec <sbrabec (a] suse.cz> 70002 70003 Reviewed by Martin Robinson. 70004 70005 [GTK] [PATCH] plugin loading invalid symlink evaluation deadlock 70006 https://bugs.webkit.org/show_bug.cgi?id=44683 70007 70008 Fix symlink resolution in PluginPackageGtk. 70009 70010 * plugins/gtk/PluginPackageGtk.cpp: 70011 (WebCore::PluginPackage::load): g_file_resolve_relative_path must be called with a 70012 a directory, not a file. 70013 70014 2010-08-26 Andy Estes <aestes (a] apple.com> 70015 70016 Reviewed by Eric Carlson. 70017 70018 A URL in a <param> should be parsed the same as if it were specified as 70019 the data attribute of an <object>. 70020 https://bugs.webkit.org/show_bug.cgi?id=44671 70021 70022 Test: fast/replaced/object-param-url-control-char.html 70023 70024 * rendering/RenderEmbeddedObject.cpp: 70025 (WebCore::RenderEmbeddedObject::updateWidget): Call deprecatedParseURL() 70026 on <param> values of names that we treat as URLs ("src", "movie", "code" 70027 and "url"). 70028 70029 2010-08-26 Stephen White <senorblanco (a] chromium.org> 70030 70031 Unreviewed; build fix. 70032 70033 Fix for Chromium/Mac. 70034 70035 * platform/graphics/chromium/Shader.cpp: 70036 70037 2010-08-26 Tony Chang <tony (a] chromium.org> 70038 70039 Reviewed by David Hyatt. 70040 70041 crash when rendering scrollbar gradient 70042 https://bugs.webkit.org/show_bug.cgi?id=44549 70043 70044 Test: scrollbars/scrollbar-gradient-crash.html 70045 70046 * css/CSSImageGeneratorValue.cpp: 70047 (WebCore::CSSImageGeneratorValue::getImage): Keep this alive. 70048 70049 2010-08-26 Stephen White <senorblanco (a] chromium.org> 70050 70051 Reviewed by Kenneth Russell. 70052 70053 [CHROMIUM] Give <canvas> 2D shaders their own class hierarchy. 70054 https://bugs.webkit.org/show_bug.cgi?id=44682 70055 70056 Covered by fast/canvas layout tests. 70057 70058 * WebCore.gypi: 70059 Add Shader.cpp, Shader.h to chromium build. 70060 * platform/graphics/chromium/GLES2Canvas.cpp: 70061 (WebCore::GLES2Canvas::GLES2Canvas): 70062 (WebCore::GLES2Canvas::~GLES2Canvas): 70063 (WebCore::GLES2Canvas::fillRect): 70064 (WebCore::GLES2Canvas::drawTexturedRect): 70065 (WebCore::GLES2Canvas::drawTexturedRectTile): 70066 Rip out all shader initialization and compilation code. 70067 Instantiate specialized shaders instead. 70068 * platform/graphics/chromium/GLES2Canvas.h: 70069 * platform/graphics/chromium/Shader.cpp: Added. 70070 (WebCore::affineTo3x3): 70071 (WebCore::Shader::Shader): 70072 (WebCore::Shader::~Shader): 70073 Implement Shader base class. 70074 (WebCore::loadShader): 70075 (WebCore::loadProgram): 70076 Utility functions refactored from GLES2Canvas. 70077 (WebCore::SolidFillShader::SolidFillShader): 70078 (WebCore::TexShader::TexShader): 70079 (WebCore::SolidFillShader::create): 70080 (WebCore::SolidFillShader::use): 70081 (WebCore::TexShader::create): 70082 (WebCore::TexShader::use): 70083 * platform/graphics/chromium/Shader.h: Added. 70084 70085 2010-08-26 Brian Weinstein <bweinstein (a] apple.com> 70086 70087 Reviewed by Adam Roben. 70088 70089 User scripts injected at start are not run for plugin and media documents 70090 <https://bugs.webkit.org/show_bug.cgi?id=44711> 70091 <rdar://problem/8359288> 70092 70093 http://trac.webkit.org/changeset/61271 made scripts injected at start run on ImageDocuments, 70094 but didn't implement this behavior for MediaDocuments and PluginDocuments. 70095 70096 * loader/MediaDocument.cpp: 70097 (WebCore::MediaDocumentParser::createDocumentStructure): Make sure we fire dispatchDocumentElementAvailable. 70098 * loader/PluginDocument.cpp: 70099 (WebCore::PluginDocumentParser::createDocumentStructure): Ditto. 70100 70101 2010-08-26 Peter Kasting <pkasting (a] google.com> 70102 70103 Reviewed by Dimitri Glazkov. 70104 70105 Misc. cleanup split off from bug 32356. 70106 https://bugs.webkit.org/show_bug.cgi?id=44696 70107 70108 * WebCore.gyp/WebCore.gyp: 70109 * dom/Element.cpp: 70110 (WebCore::localZoomForRenderer): 70111 * platform/ScrollView.cpp: 70112 (WebCore::ScrollView::wheelEvent): 70113 * platform/ScrollView.h: 70114 * platform/Scrollbar.cpp: 70115 (WebCore::Scrollbar::scroll): 70116 * platform/Scrollbar.h: 70117 (WebCore::Scrollbar::isScrollbar): 70118 * platform/ScrollbarClient.h: 70119 (WebCore::ScrollbarClient::~ScrollbarClient): 70120 * platform/qt/ScrollbarQt.cpp: 70121 (WebCore::Scrollbar::contextMenu): 70122 * rendering/RenderBox.h: 70123 * rendering/RenderLayer.cpp: 70124 (WebCore::RenderLayer::scroll): 70125 * rendering/RenderLayer.h: 70126 * rendering/RenderListBox.h: 70127 * rendering/RenderTextControlSingleLine.h: 70128 70129 2010-08-26 David Hyatt <hyatt (a] apple.com> 70130 70131 Reviewed by Simon Fraser. 70132 70133 https://bugs.webkit.org/show_bug.cgi?id=39647, font face loads do a synchronous recalcStyle(Force) 70134 on the whole document. Change these calls to do async recalcStyles instead. 70135 70136 * css/CSSFontSelector.cpp: 70137 (WebCore::CSSFontSelector::fontLoaded): 70138 (WebCore::CSSFontSelector::fontCacheInvalidated): 70139 * dom/Document.cpp: 70140 (WebCore::Document::scheduleForcedStyleRecalc): 70141 (WebCore::Document::styleSelectorChanged): 70142 * dom/Document.h: 70143 70144 2010-08-26 Xan Lopez <xlopez (a] igalia.com> 70145 70146 Reviewed by Martin Robinson. 70147 70148 Fix double free (we were passing const memory to a GOwnPtr) by 70149 getting rid of unneeded temp variable. 70150 70151 * platform/gtk/FileSystemGtk.cpp: 70152 (WebCore::directoryName): 70153 70154 2010-08-26 Mikhail Naganov <mnaganov (a] chromium.org> 70155 70156 Reviewed by Pavel Feldman. 70157 70158 Web Inspector: Store heap snapshots in InspectorProfilerAgent. 70159 70160 Change the way heap snapshots are transported to Inspector 70161 to be aligned with CPU profiles. As a result, the Heap snapshots 70162 view of Profiles panel was upstreamed into WebCore. 70163 70164 https://bugs.webkit.org/show_bug.cgi?id=44531 70165 70166 * English.lproj/localizedStrings.js: 70167 * GNUmakefile.am: 70168 * WebCore.gypi: 70169 * WebCore.pro: 70170 * WebCore.vcproj/WebCore.vcproj: 70171 * WebCore.xcodeproj/project.pbxproj: 70172 * bindings/js/ScriptHeapSnapshot.h: Added. 70173 (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot): 70174 (WebCore::ScriptHeapSnapshot::title): 70175 (WebCore::ScriptHeapSnapshot::uid): 70176 (WebCore::ScriptHeapSnapshot::buildInspectorObjectForHead): 70177 (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot): 70178 * bindings/js/ScriptProfiler.h: 70179 (WebCore::ScriptProfiler::takeHeapSnapshot): 70180 * bindings/v8/ScriptHeapSnapshot.cpp: Added. 70181 (WebCore::ScriptHeapSnapshot::title): 70182 (WebCore::ScriptHeapSnapshot::uid): 70183 (WebCore::buildInspectorObjectFor): 70184 (WebCore::ScriptHeapSnapshot::buildInspectorObjectForHead): 70185 * bindings/v8/ScriptHeapSnapshot.h: Added. 70186 (WebCore::ScriptHeapSnapshot::create): 70187 (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot): 70188 (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot): 70189 * bindings/v8/ScriptProfile.cpp: 70190 (WebCore::buildInspectorObjectFor): 70191 * bindings/v8/ScriptProfiler.cpp: 70192 (WebCore::ScriptProfiler::takeHeapSnapshot): 70193 * bindings/v8/ScriptProfiler.h: 70194 * inspector/Inspector.idl: 70195 * inspector/InspectorBackend.cpp: 70196 * inspector/InspectorBackend.h: 70197 * inspector/InspectorProfilerAgent.cpp: 70198 (WebCore::InspectorProfilerAgent::InspectorProfilerAgent): 70199 (WebCore::InspectorProfilerAgent::createSnapshotHeader): 70200 (WebCore::InspectorProfilerAgent::getProfileHeaders): 70201 (WebCore::InspectorProfilerAgent::getProfile): 70202 (WebCore::InspectorProfilerAgent::removeProfile): 70203 (WebCore::InspectorProfilerAgent::resetState): 70204 (WebCore::InspectorProfilerAgent::takeHeapSnapshot): 70205 * inspector/InspectorProfilerAgent.h: 70206 * inspector/front-end/HeapSnapshotView.js: Added. 70207 (WebInspector.HeapSnapshotView.profileCallback): 70208 (WebInspector.HeapSnapshotView.resetCompleted): 70209 (WebInspector.HeapSnapshotView): 70210 (WebInspector.HeapSnapshotView.prototype.get statusBarItems): 70211 (WebInspector.HeapSnapshotView.prototype.get profile): 70212 (WebInspector.HeapSnapshotView.prototype.set profile): 70213 (WebInspector.HeapSnapshotView.prototype.show): 70214 (WebInspector.HeapSnapshotView.prototype.hide): 70215 (WebInspector.HeapSnapshotView.prototype.resize): 70216 (WebInspector.HeapSnapshotView.prototype.refresh): 70217 (WebInspector.HeapSnapshotView.prototype.refreshShowAsPercents): 70218 (WebInspector.HeapSnapshotView.prototype._deleteSearchMatchedFlags): 70219 (WebInspector.HeapSnapshotView.prototype.searchCanceled): 70220 (WebInspector.HeapSnapshotView.prototype.performSearch): 70221 (WebInspector.HeapSnapshotView.prototype.jumpToFirstSearchResult.WebInspector.CPUProfileView.prototype.jumpToFirstSearchResult.jumpToLastSearchResult.WebInspector.CPUProfileView.prototype.jumpToLastSearchResult.jumpToNextSearchResult.WebInspector.CPUProfileView.prototype.jumpToNextSearchResult.jumpToPreviousSearchResult.WebInspector.CPUProfileView.prototype.jumpToPreviousSearchResult.showingFirstSearchResult.WebInspector.CPUProfileView.prototype.showingFirstSearchResult.showingLastSearchResult.WebInspector.CPUProfileView.prototype.showingLastSearchResult._jumpToSearchResult.WebInspector.CPUProfileView.prototype._jumpToSearchResult.refreshVisibleData): 70222 (WebInspector.HeapSnapshotView.prototype._changeBase.resetCompleted): 70223 (WebInspector.HeapSnapshotView.prototype._changeBase): 70224 (WebInspector.HeapSnapshotView.prototype._createSnapshotDataGridList): 70225 (WebInspector.HeapSnapshotView.prototype._getProfiles): 70226 (WebInspector.HeapSnapshotView.prototype._loadProfile.loadedCallback): 70227 (WebInspector.HeapSnapshotView.prototype._loadProfile): 70228 (WebInspector.HeapSnapshotView.prototype._mouseDownInDataGrid): 70229 (WebInspector.HeapSnapshotView.prototype.get _isShowingAsPercent): 70230 (WebInspector.HeapSnapshotView.prototype._percentClicked): 70231 (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers): 70232 (WebInspector.HeapSnapshotView.prototype._prepareProfile): 70233 (WebInspector.HeapSnapshotView.prototype._resetDataGridList.profileLoaded): 70234 (WebInspector.HeapSnapshotView.prototype._resetDataGridList): 70235 (WebInspector.HeapSnapshotView.prototype._sortData): 70236 (WebInspector.HeapSnapshotView.prototype._updateBaseOptions): 70237 (WebInspector.HeapSnapshotView.prototype._updatePercentButton): 70238 (WebInspector.HeapSnapshotView.prototype._updateSummaryGraph): 70239 (WebInspector.HeapSnapshotView.SearchHelper.operations.LESS): 70240 (WebInspector.HeapSnapshotView.SearchHelper.operations.LESS_OR_EQUAL): 70241 (WebInspector.HeapSnapshotView.SearchHelper.operations.EQUAL): 70242 (WebInspector.HeapSnapshotView.SearchHelper.operations.GREATER_OR_EQUAL): 70243 (WebInspector.HeapSnapshotView.SearchHelper.operations.GREATER): 70244 (WebInspector.HeapSnapshotView.SearchHelper.parseOperationAndNumber): 70245 (WebInspector.HeapSummaryCalculator): 70246 (WebInspector.HeapSummaryCalculator.prototype.computeSummaryValues): 70247 (WebInspector.HeapSummaryCalculator.prototype.formatValue): 70248 (WebInspector.HeapSummaryCalculator.prototype.get showAsPercent): 70249 (WebInspector.HeapSummaryCalculator.prototype.set showAsPercent): 70250 (WebInspector.HeapSummaryCountCalculator): 70251 (WebInspector.HeapSummaryCountCalculator.prototype._highFromLow): 70252 (WebInspector.HeapSummaryCountCalculator.prototype._valueToString): 70253 (WebInspector.HeapSummarySizeCalculator): 70254 (WebInspector.HeapSummarySizeCalculator.prototype._highFromLow): 70255 (WebInspector.HeapSnapshotDataGridNodeWithRetainers): 70256 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get _hasRetainers): 70257 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get _parent): 70258 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype._populate): 70259 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.produceDiff): 70260 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.sort): 70261 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.signForDelta): 70262 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.showDeltaAsPercent): 70263 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.getTotalCount): 70264 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.getTotalSize): 70265 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get countPercent): 70266 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get sizePercent): 70267 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get countDeltaPercent): 70268 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get sizeDeltaPercent): 70269 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.get data): 70270 (WebInspector.HeapSnapshotDataGridNodeWithRetainers.prototype.createCell): 70271 (WebInspector.HeapSnapshotDataGridNode): 70272 (WebInspector.HeapSnapshotDataGridList): 70273 (WebInspector.HeapSnapshotDataGridList.prototype.appendChild): 70274 (WebInspector.HeapSnapshotDataGridList.prototype.insertChild): 70275 (WebInspector.HeapSnapshotDataGridList.prototype.removeChildren): 70276 (WebInspector.HeapSnapshotDataGridList.prototype.populateChildren): 70277 (WebInspector.HeapSnapshotDataGridList.propertyComparator.comparator): 70278 (WebInspector.HeapSnapshotDataGridList.propertyComparator): 70279 (WebInspector.HeapSnapshotDataGridRetainerNode): 70280 (WebInspector.HeapSnapshotDataGridRetainerNode.prototype.get sizePercent): 70281 (WebInspector.HeapSnapshotDataGridRetainerNode.prototype.get sizeDeltaPercent): 70282 (WebInspector.HeapSnapshotDataGridRetainerNode.prototype._calculateRetainers): 70283 (WebInspector.HeapSnapshotProfileType): 70284 (WebInspector.HeapSnapshotProfileType.prototype.get buttonTooltip): 70285 (WebInspector.HeapSnapshotProfileType.prototype.get buttonStyle): 70286 (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked): 70287 (WebInspector.HeapSnapshotProfileType.prototype.get welcomeMessage): 70288 (WebInspector.HeapSnapshotProfileType.prototype.createSidebarTreeElementForProfile): 70289 (WebInspector.HeapSnapshotProfileType.prototype.createView): 70290 * inspector/front-end/ProfileView.js: 70291 (WebInspector.CPUProfileView): 70292 (WebInspector.CPUProfileType.prototype.createSidebarTreeElementForProfile): 70293 * inspector/front-end/ProfilesPanel.js: 70294 (WebInspector.ProfilesPanel.prototype.addProfileHeader): 70295 (WebInspector.ProfilesPanel.prototype.removeProfileHeader): 70296 (WebInspector.ProfilesPanel.prototype.getProfiles): 70297 (WebInspector.ProfilesPanel.prototype.updateProfile): 70298 (WebInspector.ProfileSidebarTreeElement): 70299 (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): 70300 * inspector/front-end/WebKit.qrc: 70301 * inspector/front-end/inspector.css: 70302 (.heap-snapshot-sidebar-tree-item .icon): 70303 (.heap-snapshot-sidebar-tree-item.small .icon): 70304 (.heap-snapshot-view): 70305 (.heap-snapshot-view.visible): 70306 (.heap-snapshot-view .data-grid): 70307 (.heap-snapshot-view .data-grid th.count-column): 70308 (.heap-snapshot-view .data-grid td.count-column): 70309 (.heap-snapshot-view .data-grid th.size-column): 70310 (.heap-snapshot-view .data-grid td.size-column): 70311 (.heap-snapshot-view .data-grid th.countDelta-column): 70312 (.heap-snapshot-view .data-grid td.countDelta-column): 70313 (.heap-snapshot-view .data-grid th.sizeDelta-column): 70314 (.heap-snapshot-view .data-grid td.sizeDelta-column): 70315 (#heap-snapshot-summary-container): 70316 (.heap-snapshot-summary): 70317 (.heap-snapshot-summary canvas.summary-graph): 70318 (.heap-snapshot-summary-label): 70319 * inspector/front-end/inspector.html: 70320 * inspector/front-end/inspector.js: 70321 (WebInspector._createPanels): 70322 70323 2010-08-25 David Hyatt <hyatt (a] apple.com> 70324 70325 Reviewed by Simon Fraser. 70326 70327 <rdar://problem/8302217> recalcStyles called immediately on each change when updating document-level stylesheets 70328 https://bugs.webkit.org/show_bug.cgi?id=36303 70329 70330 Parameterize updateStyleSelector to optionally defer the forced style recalc following the rebuilding of the 70331 sheets used by the CSSStyleSelector. Rename the method to styleSelectorChanged(). Add the capability to do 70332 a forced style recalc to the style recalc timer. 70333 70334 * css/CSSMutableStyleDeclaration.cpp: 70335 (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc): 70336 * css/CSSStyleSheet.cpp: 70337 (WebCore::CSSStyleSheet::styleSheetChanged): 70338 * css/CSSVariablesDeclaration.cpp: 70339 (WebCore::CSSVariablesDeclaration::setNeedsStyleRecalc): 70340 * dom/Document.cpp: 70341 (WebCore::Document::Document): 70342 (WebCore::Document::scheduleStyleRecalc): 70343 (WebCore::Document::updateStyleIfNeeded): 70344 (WebCore::Document::updateLayoutIgnorePendingStylesheets): 70345 (WebCore::Document::clearPageUserSheet): 70346 (WebCore::Document::clearPageGroupUserSheets): 70347 (WebCore::Document::processHttpEquiv): 70348 (WebCore::Document::setSelectedStylesheetSet): 70349 (WebCore::Document::removePendingSheet): 70350 (WebCore::Document::styleSelectorChanged): 70351 (WebCore::Document::setInPageCache): 70352 * dom/Document.h: 70353 (WebCore::): 70354 * dom/ProcessingInstruction.cpp: 70355 (WebCore::ProcessingInstruction::removedFromDocument): 70356 * dom/StyleElement.cpp: 70357 (WebCore::StyleElement::removedFromDocument): 70358 * dom/XMLDocumentParser.cpp: 70359 (WebCore::XMLDocumentParser::end): 70360 * dom/XMLDocumentParserLibxml2.cpp: 70361 (WebCore::XMLDocumentParser::doEnd): 70362 * html/HTMLDocument.cpp: 70363 (WebCore::HTMLDocument::determineParseMode): 70364 * html/HTMLLinkElement.cpp: 70365 (WebCore::HTMLLinkElement::setDisabledState): 70366 (WebCore::HTMLLinkElement::process): 70367 (WebCore::HTMLLinkElement::removedFromDocument): 70368 * page/Frame.cpp: 70369 (WebCore::Frame::setPrinting): 70370 (WebCore::Frame::reapplyStyles): 70371 * page/FrameView.cpp: 70372 (WebCore::FrameView::layout): 70373 * page/Page.cpp: 70374 (WebCore::Page::setViewMode): 70375 * rendering/RenderBlock.cpp: 70376 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): 70377 * svg/SVGFontFaceElement.cpp: 70378 (WebCore::SVGFontFaceElement::rebuildFontFace): 70379 (WebCore::SVGFontFaceElement::removeFromMappedElementSheet): 70380 70381 2010-08-24 Vangelis Kokkevis <vangelis (a] chromium.org> 70382 70383 Reviewed by Kenneth Russell. 70384 70385 [chromium] Implementing clipping for composited layers. Two 70386 types of clipping are added: Scissoring for layers that don't 70387 contain any rotations and stencil-buffer based clipping for 70388 all other layers. 70389 https://bugs.webkit.org/show_bug.cgi?id=44573 70390 70391 Tests: Compositor layout tests that test clipping such as 70392 compositing/geometry/{clip.html, clipping-foreground.html} now 70393 work properly. 70394 70395 * platform/graphics/chromium/LayerChromium.cpp: 70396 (WebCore::LayerChromium::SharedValues::SharedValues): 70397 (WebCore::LayerChromium::getDrawRect): 70398 (WebCore::LayerChromium::drawAsMask): 70399 * platform/graphics/chromium/LayerChromium.h: 70400 * platform/graphics/chromium/LayerRendererChromium.cpp: 70401 (WebCore::LayerRendererChromium::drawLayers): 70402 (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer): 70403 (WebCore::LayerRendererChromium::drawLayersRecursive): 70404 (WebCore::LayerRendererChromium::scissorToRect): 70405 (WebCore::LayerRendererChromium::initializeSharedObjects): 70406 * platform/graphics/chromium/LayerRendererChromium.h: 70407 70408 2010-08-25 Kenneth Russell <kbr (a] google.com> 70409 70410 Reviewed by Dimitri Glazkov. 70411 70412 Expose Vector3 and associated operations 70413 https://bugs.webkit.org/show_bug.cgi?id=44666 70414 70415 No new tests; ran several 3D CSS demos and did full layout test 70416 run. New code paths have also been tested by new calling code 70417 which will be checked in soon. 70418 70419 * platform/graphics/transforms/TransformationMatrix.cpp: 70420 (WebCore::decompose): 70421 * platform/graphics/transforms/TransformationMatrix.h: 70422 (WebCore::Vector3::Vector3): 70423 (WebCore::Vector3::x): 70424 (WebCore::Vector3::y): 70425 (WebCore::Vector3::z): 70426 (WebCore::Vector3::setX): 70427 (WebCore::Vector3::setY): 70428 (WebCore::Vector3::setZ): 70429 (WebCore::Vector3::set): 70430 (WebCore::Vector3::operator =): 70431 (WebCore::Vector3::operator +): 70432 (WebCore::Vector3::operator -): 70433 (WebCore::Vector3::operator[]): 70434 (WebCore::Vector3::length): 70435 (WebCore::Vector3::lengthSquared): 70436 (WebCore::Vector3::scaleTo): 70437 (WebCore::Vector3::normalize): 70438 (WebCore::Vector3::dot): 70439 (WebCore::Vector3::combine): 70440 (WebCore::Vector3::cross): 70441 70442 2010-08-26 Mikhail Naganov <mnaganov (a] chromium.org> 70443 70444 Reviewed by Pavel Feldman. 70445 70446 Web Inspector: fix CPU profile header entries doubling on Inspector re-opening. 70447 70448 https://bugs.webkit.org/show_bug.cgi?id=44685 70449 70450 * inspector/front-end/ProfilesPanel.js: 70451 (WebInspector.ProfilesPanel.prototype.show): 70452 70453 2010-08-26 Eric Carlson <eric.carlson (a] apple.com> 70454 70455 Reviewed by Darin Adler and Maciej Stachowiak. 70456 70457 https://bugs.webkit.org/show_bug.cgi?id=44013 70458 HTMLMediaElement should delay document load event 70459 70460 Test: media/video-delay-load-event.html 70461 70462 * dom/Document.cpp: 70463 (WebCore::Document::Document): Initialize incrementLoadEventDelayCount. 70464 (WebCore::Document::decrementLoadEventDelayCount): New, decrement incrementLoadEventDelayCount 70465 and call loader->checkCompleted() when it reaches zero. 70466 * dom/Document.h: 70467 (WebCore::Document::incrementLoadEventDelayCount): New. 70468 (WebCore::Document::isDelayingLoadEvent): New. 70469 70470 * html/HTMLMediaElement.cpp: 70471 (WebCore::HTMLMediaElement::~HTMLMediaElement): Stop delaying the load event if necessary. 70472 (WebCore::HTMLMediaElement::willMoveToNewOwnerDocument): Ditto. 70473 (WebCore::HTMLMediaElement::didMoveToNewOwnerDocument): Delay the load event if we don't the 70474 meta data for the movie yet. 70475 (WebCore::HTMLMediaElement::prepareForLoad): Delay the load event. 70476 (WebCore::HTMLMediaElement::selectMediaResource): Don't delay the load event when there are 70477 no more sources to consider. Don't change m_delayingTheLoadEvent directly, call 70478 setShouldDelayLoadEvent() instead. 70479 (WebCore::HTMLMediaElement::waitForSourceChange): Stop delaying the load event. 70480 (WebCore::HTMLMediaElement::noneSupported): Ditto. 70481 (WebCore::HTMLMediaElement::mediaEngineError): Ditto. 70482 (WebCore::HTMLMediaElement::setReadyState): Ditto. 70483 (WebCore::HTMLMediaElement::userCancelledLoad): Ditto. 70484 (WebCore::HTMLMediaElement::setShouldDelayLoadEvent): New, increment/decrement the document's 70485 load event delay count. 70486 * html/HTMLMediaElement.h: 70487 70488 * loader/FrameLoader.cpp: 70489 (WebCore::FrameLoader::checkCompleted): See if the document wants to delay completion for 70490 elements that don't go through a FrameLoader. 70491 (WebCore::FrameLoader::checkCallImplicitClose): Ditto 70492 * page/Frame.cpp: 70493 70494 2010-08-26 Dan Bernstein <mitz (a] apple.com> 70495 70496 Reviewed by Simon Fraser. 70497 70498 Fix the same issue as https://bugs.webkit.org/show_bug.cgi?id=41585 70499 but this time for the -webkit-font-smoothing property. 70500 70501 Updated fast/css/text-rendering-priority.html to cover all properties that 70502 affect the font. 70503 70504 * css/CSSPropertyNames.in: Moved text-rendering to the high priority section at the top. 70505 * css/CSSStyleSelector.cpp: 70506 (WebCore::CSSStyleSelector::styleForElement): Assert that the font is not dirtied by 70507 applying any of the low priority properties, but still handle the case that the assertion 70508 is false. 70509 (WebCore::CSSStyleSelector::applyDeclarations): Updated compile-time assertion. 70510 70511 2010-08-26 Martin Robinson <mrobinson (a] igalia.com> 70512 70513 Reviewed by Xan Lopez. 70514 70515 [GTK] The GNUmakefile.am files contain a myriad of confusing preprocessor and compiler flag definitions 70516 https://bugs.webkit.org/show_bug.cgi?id=44624 70517 70518 Clean up GNUmakefile.am. 70519 70520 * GNUmakefile.am: Remove some WebKit includes from webcore_cppflags. These 70521 includes are added to the build line by the top-level GNUmakefile.am, since 70522 WebCore isn't build as an intermediate library. 70523 70524 2010-08-26 Yury Semikhatsky <yurys (a] chromium.org> 70525 70526 Unreviewed. Revert r66103 since Qt tests are failing. 70527 70528 * inspector/Inspector.idl: 70529 * inspector/InspectorController.cpp: 70530 (WebCore::InspectorController::inspectedPageDestroyed): 70531 (WebCore::InspectorController::close): 70532 * inspector/InspectorFrontendClient.h: 70533 * inspector/InspectorFrontendHost.cpp: 70534 * inspector/InspectorFrontendHost.h: 70535 * inspector/InspectorFrontendHost.idl: 70536 * inspector/front-end/InspectorFrontendHostStub.js: 70537 * inspector/front-end/inspector.js: 70538 (WebInspector.inspectedPageDestroyed): 70539 70540 2010-08-26 Yury Semikhatsky <yurys (a] chromium.org> 70541 70542 Reviewed by Pavel Feldman. 70543 70544 REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector 70545 https://bugs.webkit.org/show_bug.cgi?id=44230 70546 70547 * inspector/Inspector.idl: 70548 * inspector/InspectorController.cpp: 70549 (WebCore::InspectorController::inspectedPageDestroyed): 70550 (WebCore::InspectorController::close): 70551 * inspector/InspectorFrontendClient.h: 70552 * inspector/InspectorFrontendHost.cpp: 70553 (WebCore::InspectorFrontendHost::disconnectFromBackend): don't try to notify InspectorController 70554 that frontend closes if InspectorController triggered the action. 70555 * inspector/InspectorFrontendHost.h: 70556 * inspector/InspectorFrontendHost.idl: 70557 * inspector/front-end/InspectorFrontendHostStub.js: 70558 (.WebInspector.InspectorFrontendHostStub.prototype.disconnectFromBackend): 70559 * inspector/front-end/inspector.js: 70560 (WebInspector.disconnectFromBackend): 70561 70562 2010-08-26 Ilya Tikhonovsky <loislo (a] chromium.org> 70563 70564 Reviewed by Yury Semikhatsky. 70565 70566 WebInspector: It would be better to have an explicit type check for the all 70567 arguments of InspectorBackend functions on front-end side. 70568 https://bugs.webkit.org/show_bug.cgi?id=44684 70569 70570 * inspector/CodeGeneratorInspector.pm: 70571 70572 2010-08-26 Ilya Tikhonovsky <loislo (a] chromium.org> 70573 70574 Reviewed by Yury Semikhatsky. 70575 70576 WebInspector: It would be better to rename setBool, pushBool and asBool accessors 70577 to setBoolean, pushBoolean and asBoolean for better matching with the results of 70578 JS typeof operator. 70579 https://bugs.webkit.org/show_bug.cgi?id=44680 70580 70581 * bindings/js/ScriptProfile.cpp: 70582 (WebCore::buildInspectorObjectFor): 70583 * bindings/v8/ScriptProfile.cpp: 70584 (WebCore::buildInspectorObjectFor): 70585 * inspector/CodeGeneratorInspector.pm: 70586 * inspector/InspectorController.cpp: 70587 (WebCore::InspectorController::buildObjectForCookie): 70588 * inspector/InspectorDOMAgent.cpp: 70589 (WebCore::InspectorDOMAgent::buildObjectForEventListener): 70590 (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): 70591 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 70592 (WebCore::InspectorDOMAgent::buildObjectForRule): 70593 * inspector/InspectorDOMStorageResource.cpp: 70594 (WebCore::InspectorDOMStorageResource::bind): 70595 * inspector/InspectorResource.cpp: 70596 (WebCore::InspectorResource::updateScriptObject): 70597 * inspector/InspectorValues.cpp: 70598 (WebCore::InspectorValue::asBoolean): 70599 (WebCore::InspectorBasicValue::asBoolean): 70600 (WebCore::InspectorBasicValue::asNumber): 70601 (WebCore::InspectorBasicValue::writeJSON): 70602 (WebCore::InspectorObject::getBoolean): 70603 * inspector/InspectorValues.h: 70604 (WebCore::InspectorValue::): 70605 (WebCore::InspectorBasicValue::InspectorBasicValue): 70606 (WebCore::InspectorObject::setBoolean): 70607 (WebCore::InspectorArray::pushBoolean): 70608 * inspector/ScriptBreakpoint.cpp: 70609 (WebCore::ScriptBreakpoint::sourceBreakpointsFromInspectorObject): 70610 (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints): 70611 * inspector/TimelineRecordFactory.cpp: 70612 (WebCore::TimelineRecordFactory::createTimerInstallData): 70613 (WebCore::TimelineRecordFactory::createResourceSendRequestData): 70614 (WebCore::TimelineRecordFactory::createResourceFinishData): 70615 70616 2010-08-26 Girish Ramakrishnan <girish (a] forwardbias.in> 70617 70618 Reviewed by Simon Hausmann. 70619 70620 [Qt] Set the clipRect correctly in windowed and windowless mode. 70621 In Windowed mode, the values are in page coordinates. In Windowless 70622 mode the values are in drawable coordinates. Setting these values is 70623 purely academic since they are not used by Flash. However, there is a 70624 possibility that plugins might infer a 'null' clipRect to mean 'invisible'. 70625 70626 https://bugs.webkit.org/show_bug.cgi?id=44594 70627 70628 * plugins/qt/PluginViewQt.cpp: 70629 (WebCore::PluginView::setNPWindowIfNeeded): 70630 70631 2010-08-26 Pavel Podivilov <podivilov (a] chromium.org> 70632 70633 Reviewed by Pavel Feldman. 70634 70635 Web Inspector: enable debugger after resources are pushed to front-end 70636 https://bugs.webkit.org/show_bug.cgi?id=44673 70637 70638 * inspector/InspectorController.cpp: 70639 (WebCore::InspectorController::connectFrontend): 70640 (WebCore::InspectorController::populateScriptObjects): 70641 70642 2010-08-26 Nikolas Zimmermann <nzimmermann (a] rim.com> 70643 70644 Reviewed by Dirk Schulze. 70645 70646 text-shadow is not respected in RenderSVGText::repaintRectInLocalCoordinates() 70647 https://bugs.webkit.org/show_bug.cgi?id=44616 70648 70649 Centralize code to calculate the shadow extents in ShadowData. 70650 Respect textShadow() when calculating the repaint rect of RenderSVGText. 70651 70652 Tests: svg/css/composite-shadow-text.svg 70653 transitions/svg-text-shadow-transition.html 70654 70655 * rendering/RenderObject.cpp: 70656 (WebCore::RenderObject::adjustRectForOutlineAndShadow): 70657 * rendering/RenderSVGRoot.cpp: 70658 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 70659 (WebCore::RenderSVGRoot::computeRectForRepaint): 70660 * rendering/RenderSVGText.cpp: 70661 (WebCore::RenderSVGText::repaintRectInLocalCoordinates): 70662 * rendering/SVGRenderSupport.cpp: 70663 (WebCore::SVGRenderSupport::computeRectForRepaint): 70664 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): 70665 (WebCore::SVGRenderSupport::finishRenderSVGContent): 70666 (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): 70667 * rendering/style/SVGRenderStyle.cpp: 70668 * rendering/style/SVGRenderStyle.h: 70669 * rendering/style/ShadowData.cpp: 70670 (WebCore::calculateShadowExtent): 70671 (WebCore::ShadowData::adjustRectForShadow): 70672 * rendering/style/ShadowData.h: 70673 70674 2010-08-25 Xan Lopez <xlopez (a] igalia.com> 70675 70676 Reviewed by Martin Robinson. 70677 70678 [GTK] Rework event definition in the DOM bindings 70679 https://bugs.webkit.org/show_bug.cgi?id=44597 70680 70681 Define DOM events in the base classes that implement EventTarget, 70682 since theoretically you can dispatch any event to any of those 70683 classes whether it makes sense semantically or not. 70684 70685 All the existing events in WebKit are not listed anywhere in the 70686 IDL files, so we need to have the list in the generator script. 70687 70688 * bindings/scripts/CodeGeneratorGObject.pm: 70689 70690 2010-08-25 Ilya Tikhonovsky <loislo (a] chromium.org> 70691 70692 Reviewed by Pavel Feldman. 70693 70694 WebInspector: as far as we have 'seq' property in the each inspector message 70695 it would be better to remove explicit callId argument from Inspector.idl functions 70696 declarations. 70697 https://bugs.webkit.org/show_bug.cgi?id=44617 70698 70699 * WebCore.xcodeproj/project.pbxproj: 70700 * inspector/CodeGeneratorInspector.pm: 70701 * inspector/Inspector.idl: 70702 * inspector/front-end/AuditRules.js: 70703 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun): 70704 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages): 70705 * inspector/front-end/BreakpointManager.js: 70706 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): 70707 * inspector/front-end/CSSStyleModel.js: 70708 (WebInspector.CSSStyleModel.prototype.getStylesAsync): 70709 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync): 70710 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 70711 (WebInspector.CSSStyleModel.prototype.addRule): 70712 (WebInspector.CSSStyleModel.prototype.toggleStyleEnabled): 70713 (WebInspector.CSSStyleModel.prototype.setCSSText): 70714 (WebInspector.CSSStyleModel.prototype.applyStyleText): 70715 * inspector/front-end/DOMAgent.js: 70716 (WebInspector.DOMAgent.prototype.getChildNodesAsync): 70717 (WebInspector.DOMAgent.prototype.setAttributeAsync): 70718 (WebInspector.DOMAgent.prototype.removeAttributeAsync): 70719 (WebInspector.DOMAgent.prototype.setTextNodeValueAsync): 70720 (WebInspector.ApplicationCache.getApplicationCachesAsync): 70721 (WebInspector.Cookies.getCookiesAsync): 70722 (WebInspector.EventListeners.getEventListenersForNodeAsync): 70723 * inspector/front-end/DOMStorage.js: 70724 (WebInspector.DOMStorage.prototype.getEntries): 70725 (WebInspector.DOMStorage.prototype.setItem): 70726 (WebInspector.DOMStorage.prototype.removeItem): 70727 * inspector/front-end/Database.js: 70728 (WebInspector.Database.prototype.getTableNames): 70729 (WebInspector.Database.prototype.executeSql): 70730 * inspector/front-end/ElementsPanel.js: 70731 (WebInspector.ElementsPanel.prototype.setDocument): 70732 * inspector/front-end/ElementsTreeOutline.js: 70733 (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted): 70734 (): 70735 * inspector/front-end/InjectedScriptAccess.js: 70736 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): 70737 (InjectedScriptAccess._installHandler): 70738 * inspector/front-end/MetricsSidebarPane.js: 70739 (WebInspector.MetricsSidebarPane.prototype.update): 70740 (WebInspector.MetricsSidebarPane.prototype.editingCommitted): 70741 * inspector/front-end/ProfileView.js: 70742 (WebInspector.CPUProfileView): 70743 * inspector/front-end/ProfilesPanel.js: 70744 * inspector/front-end/ResourcesPanel.js: 70745 (WebInspector.getResourceContent): 70746 * inspector/front-end/ScriptView.js: 70747 (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): 70748 * inspector/front-end/ScriptsPanel.js: 70749 (WebInspector.ScriptsPanel.prototype.editScriptSource): 70750 * inspector/front-end/inspector.js: 70751 (WebInspector.doLoadedDone): 70752 70753 2010-08-26 Kwang Yul Seo <skyul (a] company100.net> 70754 70755 Reviewed by Kent Tamura. 70756 70757 Add ENABLE(INDEXED_DATABASE) guard 70758 https://bugs.webkit.org/show_bug.cgi?id=44659 70759 70760 Build fix for ports with index database disabled. 70761 70762 * storage/IDBKeyPathBackendImpl.cpp: 70763 70764 2010-08-26 Girish Ramakrishnan <girish (a] forwardbias.in> 70765 70766 Reviewed by Ariya Hidayat. 70767 70768 [Qt] Replace QLibrary("libgdk-x11-2.0.so.0") with QLibrary("libgdk-x11-2.0", 0) 70769 https://bugs.webkit.org/show_bug.cgi?id=44618 70770 70771 * plugins/qt/PluginViewQt.cpp: 70772 (WebCore::getPluginDisplay): 70773 70774 2010-08-26 Adam Barth <abarth (a] webkit.org> 70775 70776 Reviewed by Sam Weinig. 70777 70778 Deploy adoptPtr to WebCore/loader 70779 https://bugs.webkit.org/show_bug.cgi?id=44591 70780 70781 This patch covers the easy cases. There are a handful of tougher cases 70782 that I'm leaving to a future patch. I filed one bug about a possible 70783 memory leak and I emailed webkit-dev about some infrastructure we'll 70784 need to tackle some of the harder cases. 70785 70786 * loader/CrossOriginAccessControl.cpp: 70787 (WebCore::createAllowedCrossOriginResponseHeadersSet): 70788 (WebCore::isOnAccessControlResponseHeaderWhitelist): 70789 * loader/DocLoader.cpp: 70790 (WebCore::DocLoader::requestPreload): 70791 * loader/DocumentLoader.cpp: 70792 (WebCore::DocumentLoader::DocumentLoader): 70793 (WebCore::DocumentLoader::addAllArchiveResources): 70794 (WebCore::DocumentLoader::addArchiveResource): 70795 * loader/DocumentThreadableLoader.cpp: 70796 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): 70797 (WebCore::DocumentThreadableLoader::didReceiveResponse): 70798 * loader/PingLoader.cpp: 70799 (WebCore::PingLoader::loadImage): 70800 * loader/ProgressTracker.cpp: 70801 (WebCore::ProgressTracker::incrementProgress): 70802 * loader/RedirectScheduler.cpp: 70803 (WebCore::RedirectScheduler::scheduleRedirect): 70804 (WebCore::RedirectScheduler::scheduleLocationChange): 70805 (WebCore::RedirectScheduler::scheduleFormSubmission): 70806 (WebCore::RedirectScheduler::scheduleRefresh): 70807 (WebCore::RedirectScheduler::scheduleHistoryNavigation): 70808 * loader/WorkerThreadableLoader.cpp: 70809 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData): 70810 * loader/icon/IconDatabase.cpp: 70811 (WebCore::readySQLiteStatement): 70812 * loader/icon/IconLoader.cpp: 70813 (WebCore::IconLoader::create): 70814 70815 2010-08-26 Alejandro G. Castro <alex (a] igalia.com> 70816 70817 Reviewed by Dan Bernstein. 70818 70819 shadowSize parameter is used to pass shadow offset in the 70820 GraphicsContext::setShadow and getShadow functions 70821 https://bugs.webkit.org/show_bug.cgi?id=44603 70822 70823 Change the shadowSize parameter ot the functions getShadow and 70824 setShadow in GraphicsContext to shadowOffset which is the current 70825 use of that parameter in the code. 70826 70827 * platform/graphics/GraphicsContext.cpp: 70828 (WebCore::GraphicsContext::setShadow): 70829 (WebCore::GraphicsContext::clearShadow): 70830 (WebCore::GraphicsContext::getShadow): 70831 * platform/graphics/GraphicsContext.h: 70832 * platform/graphics/GraphicsContextPrivate.h: 70833 * platform/graphics/cairo/FontCairo.cpp: 70834 (WebCore::Font::drawGlyphs): 70835 * platform/graphics/cairo/GraphicsContextCairo.cpp: 70836 (WebCore::GraphicsContext::calculateShadowBufferDimensions): 70837 (WebCore::drawPathShadow): 70838 (WebCore::drawBorderlessRectShadow): 70839 (WebCore::GraphicsContext::setPlatformShadow): 70840 * platform/graphics/cairo/ImageCairo.cpp: 70841 (WebCore::BitmapImage::draw): 70842 * platform/graphics/chromium/FontChromiumWin.cpp: 70843 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs): 70844 (WebCore::Font::drawComplexText): 70845 * platform/graphics/gtk/FontGtk.cpp: 70846 (WebCore::Font::drawComplexText): 70847 * platform/graphics/mac/FontMac.mm: 70848 (WebCore::Font::drawGlyphs): 70849 * platform/graphics/qt/ImageQt.cpp: 70850 (WebCore::BitmapImage::draw): 70851 * platform/graphics/qt/StillImageQt.cpp: 70852 (WebCore::StillImage::draw): 70853 * platform/graphics/qt/GraphicsContextQt: 70854 (WebCore::GraphicsContext::setPlatformShadow): 70855 * platform/graphics/skia/SkiaFontWin.cpp: 70856 (WebCore::windowsCanHandleDrawTextShadow): 70857 * platform/graphics/win/FontCGWin.cpp: 70858 (WebCore::drawGDIGlyphs): 70859 (WebCore::Font::drawGlyphs): 70860 * platform/graphics/wince/GraphicsContextWince.cpp: 70861 (WebCore::GraphicsContext::fillRoundedRect): 70862 (WebCore::GraphicsContext::drawText): 70863 70864 2010-08-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 70865 70866 Unreviewed, rolling out r66074. 70867 http://trac.webkit.org/changeset/66074 70868 https://bugs.webkit.org/show_bug.cgi?id=44660 70869 70870 Chromium canary turned red (Requested by yuzo on #webkit). 70871 70872 * bindings/generic/RuntimeEnabledFeatures.cpp: 70873 * bindings/generic/RuntimeEnabledFeatures.h: 70874 * bindings/js/JSXMLHttpRequestCustom.cpp: 70875 (WebCore::JSXMLHttpRequest::responseText): 70876 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 70877 (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): 70878 * xml/XMLHttpRequest.cpp: 70879 (WebCore::XMLHttpRequest::responseText): 70880 (WebCore::XMLHttpRequest::responseXML): 70881 (WebCore::XMLHttpRequest::open): 70882 (WebCore::XMLHttpRequest::abort): 70883 (WebCore::XMLHttpRequest::clearResponse): 70884 (WebCore::XMLHttpRequest::didFinishLoading): 70885 * xml/XMLHttpRequest.h: 70886 * xml/XMLHttpRequest.idl: 70887 70888 2010-08-25 Mark Rowe <mrowe (a] apple.com> 70889 70890 Reviewed by Dan Bernstein. 70891 70892 <rdar://problem/8205479> WebCore's icon database often prevents Safari from being killable via sudden termination 70893 70894 We need to ensure that each call to disableSuddenTermination is balanced by a corresponding call to enableSuddenTermination. 70895 It's possbile for several calls to IconDatabase::wakeSyncThread to correspond to only a single iteration of the loop within 70896 IconDatabase::syncThreadMainLoop. This results in the sudden termination disable count growing without bound rather than 70897 being balanced when the work completes. We can prevent this by ensuring that we only disable sudden termination once for each 70898 corresponding iteration of the sync thread's main loop. 70899 70900 * loader/icon/IconDatabase.cpp: 70901 (WebCore::IconDatabase::IconDatabase): 70902 (WebCore::IconDatabase::wakeSyncThread): Only disable sudden termination if it has not yet been disabled for this iteration of 70903 the sync thread's main loop. 70904 (WebCore::IconDatabase::syncThreadMainLoop): Clear the flag indicating that sudden termination has been disabled after reenabling it 70905 so that future calls to wakeSyncThread disable sudden termination once more. 70906 * loader/icon/IconDatabase.h: 70907 70908 2010-08-25 Michael Nordman <michaeln (a] google.com> 70909 70910 Reviewed by David Levin. 70911 70912 https://bugs.webkit.org/show_bug.cgi?id=44133 70913 IDL bindings for XmlHttpRequest.responseBlob support, doesn't do anything yet. 70914 Adds two new attributes, asBlob and responseBlob. 70915 Runtime disabled by default, also behind a new ENABLE_XHR_RESPONSE_BLOB compile time guard. 70916 70917 No new tests, just adding some stubs. 70918 70919 * bindings/generic/RuntimeEnabledFeatures.cpp: 70920 * bindings/generic/RuntimeEnabledFeatures.h: 70921 (WebCore::RuntimeEnabledFeatures::setResponseBlobEnabled): 70922 (WebCore::RuntimeEnabledFeatures::responseBlobEnabled): 70923 (WebCore::RuntimeEnabledFeatures::asBlobEnabled): 70924 * bindings/js/JSXMLHttpRequestCustom.cpp: 70925 (WebCore::JSXMLHttpRequest::responseText): Changed to allow an exceptional return path. 70926 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: 70927 (WebCore::V8XMLHttpRequest::responseTextAccessorGetter): Changed to allow an exceptional return path. 70928 * xml/XMLHttpRequest.cpp: 70929 (WebCore::XMLHttpRequest::responseText): Changed to raise an exception when accessed with asBlob set to true. 70930 (WebCore::XMLHttpRequest::responseXML): Changed to raise an exception when accessed with asBlob set to true. 70931 (WebCore::XMLHttpRequest::responseBlob): Added stub method, returns 0 for now. 70932 (WebCore::XMLHttpRequest::setAsBlob): Sets the asBlob attribute, raises exception if called at an inappropriate time. 70933 (WebCore::XMLHttpRequest::open): Resets asBlob to false, the default value. 70934 (WebCore::XMLHttpRequest::abort): Clears m_responseBlob. 70935 (WebCore::XMLHttpRequest::clearResponse): Clears m_responseBlob. 70936 (WebCore::XMLHttpRequest::didFinishLoading): Added a FIXME to populate m_responseBlob. 70937 * xml/XMLHttpRequest.h: 70938 (WebCore::XMLHttpRequest::asBlob): 70939 * xml/XMLHttpRequest.idl: 70940 70941 2010-08-24 Victoria Kirst <vrk (a] google.com> 70942 70943 Reviewed by Darin Fisher. 70944 70945 Adding a means of communication between WebKit/WebCore and 70946 chromium in order to share video frames. This adds the necessary 70947 WebKit-side classes and methods, but does not actually use them 70948 yet - that will be committed in a separate patch after the 70949 corresponding Chromium side is committed. 70950 70951 https://bugs.webkit.org/show_bug.cgi?id=44539 70952 70953 No new tests, as these new classes/APIs are not yet used. 70954 70955 * platform/graphics/chromium/VideoFrameChromium.h: Added. 70956 (WebCore::VideoFrameChromium::): 70957 * platform/graphics/chromium/VideoFrameProvider.h: Added. 70958 * platform/graphics/chromium/VideoLayerChromium.cpp: 70959 (WebCore::VideoLayerChromium::create): 70960 (WebCore::VideoLayerChromium::VideoLayerChromium): 70961 * platform/graphics/chromium/VideoLayerChromium.h: 70962 70963 2010-08-25 Kenneth Russell <kbr (a] google.com> 70964 70965 Reviewed by Simon Fraser. 70966 70967 Source data passed to TypedArray creators should be const 70968 https://bugs.webkit.org/show_bug.cgi?id=44649 70969 70970 Compiled and ran existing WebGL tests to verify. 70971 70972 * html/canvas/Float32Array.cpp: 70973 (WebCore::Float32Array::create): 70974 * html/canvas/Float32Array.h: 70975 * html/canvas/TypedArrayBase.h: 70976 (WebCore::TypedArrayBase::create): 70977 70978 2010-08-25 Eric Seidel <eric (a] webkit.org> 70979 70980 Unreviewed, just removing a dead enum. 70981 70982 Remove endTagRequirement now that the LegacyHTMLDocumentParser is dead 70983 https://bugs.webkit.org/show_bug.cgi?id=44626 70984 70985 Remove HTMLTagStatus since it's not used anymore. 70986 70987 * html/HTMLElement.h: 70988 70989 2010-08-25 Chris Fleizach <cfleizach (a] apple.com> 70990 70991 Reviewed by David Kilzer. 70992 70993 AX: CSS first letter text transform causes crash 70994 https://bugs.webkit.org/show_bug.cgi?id=44352 70995 70996 Test: accessibility/first-letter-text-transform-causes-crash.html 70997 70998 * accessibility/AccessibilityRenderObject.cpp: 70999 (WebCore::nextContinuation): 71000 71001 2010-08-25 Eric Seidel <eric (a] webkit.org> 71002 71003 Reviewed by Adam Barth. 71004 71005 Remove endTagRequirement now that the LegacyHTMLDocumentParser is dead 71006 https://bugs.webkit.org/show_bug.cgi?id=44626 71007 71008 Serialization is covered by a bunch of tests. innerHTML behavior is sadly not. 71009 In either case, this is just moving code and should have no functional change. 71010 71011 * editing/markup.cpp: 71012 (WebCore::elementCannotHaveEndTag): 71013 (WebCore::MarkupAccumulator::shouldSelfClose): 71014 (WebCore::MarkupAccumulator::appendEndMarkup): 71015 (WebCore::serializeNodesWithNamespaces): 71016 * html/HTMLAnchorElement.h: 71017 * html/HTMLAreaElement.h: 71018 * html/HTMLBRElement.h: 71019 * html/HTMLBaseElement.h: 71020 * html/HTMLBaseFontElement.h: 71021 * html/HTMLBlockquoteElement.h: 71022 * html/HTMLBodyElement.h: 71023 * html/HTMLCanvasElement.cpp: 71024 * html/HTMLCanvasElement.h: 71025 * html/HTMLDListElement.h: 71026 * html/HTMLDataGridCellElement.h: 71027 * html/HTMLDataGridColElement.h: 71028 * html/HTMLDirectoryElement.h: 71029 * html/HTMLDivElement.h: 71030 * html/HTMLElement.cpp: 71031 (WebCore::HTMLElement::nodeName): 71032 (WebCore::HTMLElement::ieForbidsInsertHTML): 71033 (WebCore::HTMLElement::deprecatedCreateContextualFragment): 71034 (WebCore::HTMLElement::setInnerText): 71035 (WebCore::HTMLElement::setOuterText): 71036 * html/HTMLElement.h: 71037 * html/HTMLEmbedElement.h: 71038 * html/HTMLFontElement.h: 71039 * html/HTMLFormControlElement.h: 71040 * html/HTMLFormElement.h: 71041 * html/HTMLFrameElement.h: 71042 * html/HTMLFrameSetElement.h: 71043 * html/HTMLHRElement.h: 71044 * html/HTMLHeadElement.h: 71045 * html/HTMLHeadingElement.h: 71046 * html/HTMLHtmlElement.h: 71047 * html/HTMLIFrameElement.h: 71048 * html/HTMLImageElement.h: 71049 * html/HTMLInputElement.h: 71050 * html/HTMLIsIndexElement.h: 71051 * html/HTMLLIElement.h: 71052 * html/HTMLLinkElement.h: 71053 * html/HTMLMapElement.h: 71054 * html/HTMLMarqueeElement.h: 71055 * html/HTMLMenuElement.h: 71056 * html/HTMLMetaElement.h: 71057 * html/HTMLModElement.h: 71058 * html/HTMLOListElement.h: 71059 * html/HTMLOptionElement.h: 71060 * html/HTMLParagraphElement.h: 71061 * html/HTMLParamElement.h: 71062 * html/HTMLPlugInElement.h: 71063 * html/HTMLPreElement.h: 71064 * html/HTMLQuoteElement.h: 71065 * html/HTMLScriptElement.h: 71066 * html/HTMLSourceElement.h: 71067 * html/HTMLStyleElement.h: 71068 * html/HTMLTableCaptionElement.h: 71069 * html/HTMLTableCellElement.h: 71070 * html/HTMLTableColElement.cpp: 71071 * html/HTMLTableColElement.h: 71072 * html/HTMLTableElement.h: 71073 * html/HTMLTableRowElement.h: 71074 * html/HTMLTableSectionElement.h: 71075 * html/HTMLUListElement.h: 71076 71077 2010-08-20 Zhenyao Mo <zmo (a] google.com> 71078 71079 Reviewed by Kenneth Russell. 71080 71081 WebGL must enforce restrictions even if running on OpenGL ES 2.0 71082 https://bugs.webkit.org/show_bug.cgi?id=42908 71083 71084 * html/canvas/WebGLFramebuffer.cpp: 71085 (WebCore::WebGLFramebuffer::getColorBufferFormat): Get format at given level instead of 0. 71086 * html/canvas/WebGLRenderingContext.cpp: Add two new flags and use them to replace the original isGLES2Compliant(). 71087 (WebCore::WebGLRenderingContext::WebGLRenderingContext): 71088 (WebCore::WebGLRenderingContext::bindTexture): 71089 (WebCore::WebGLRenderingContext::blendEquation): 71090 (WebCore::WebGLRenderingContext::blendEquationSeparate): 71091 (WebCore::WebGLRenderingContext::bufferData): 71092 (WebCore::WebGLRenderingContext::bufferSubData): 71093 (WebCore::WebGLRenderingContext::checkFramebufferStatus): 71094 (WebCore::WebGLRenderingContext::clear): 71095 (WebCore::WebGLRenderingContext::copyTexImage2D): 71096 (WebCore::WebGLRenderingContext::copyTexSubImage2D): 71097 (WebCore::WebGLRenderingContext::disable): 71098 (WebCore::WebGLRenderingContext::drawArrays): 71099 (WebCore::WebGLRenderingContext::drawElements): 71100 (WebCore::WebGLRenderingContext::enable): 71101 (WebCore::WebGLRenderingContext::generateMipmap): 71102 (WebCore::WebGLRenderingContext::hint): 71103 (WebCore::WebGLRenderingContext::isEnabled): 71104 (WebCore::WebGLRenderingContext::texImage2DBase): 71105 (WebCore::WebGLRenderingContext::texParameter): 71106 (WebCore::WebGLRenderingContext::isGLES2NPOTStrict): 71107 (WebCore::WebGLRenderingContext::isErrorGeneratedOnOutOfBoundsAccesses): 71108 * html/canvas/WebGLRenderingContext.h: Declare two new flags. 71109 * html/canvas/WebGLTexture.cpp: Get format at given level instead of 0. 71110 (WebCore::WebGLTexture::getInternalFormat): 71111 * html/canvas/WebGLTexture.h: Ditto. 71112 * platform/graphics/GraphicsContext3D.h: Add three new flags. 71113 * platform/graphics/mac/GraphicsContext3DMac.mm: Ditto. 71114 (WebCore::GraphicsContext3D::isGLES2NPOTStrict): 71115 (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses): 71116 * platform/graphics/qt/GraphicsContext3DQt.cpp: Ditto. 71117 (WebCore::GraphicsContext3D::isGLES2NPOTStrict): 71118 (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses): 71119 71120 2010-08-25 Brent Fulgham <bfulgham (a] webkit.org> 71121 71122 Build correction, no review. 71123 71124 * WebCore.vcproj/WebCore.vcproj: Add missing implementation 71125 for PlatformRefPtrCairo. 71126 71127 2010-08-25 Cris Neckar <cdn (a] chromium.org> 71128 71129 Reviewed by Darin Adler. 71130 71131 Added abort condition for RenderCounters when traversing a detached render tree. 71132 https://bugs.webkit.org/show_bug.cgi?id=43812 71133 71134 Test: fast/css/counters/counter-traverse-object-crash.html 71135 71136 * rendering/RenderCounter.cpp: 71137 (WebCore::findPlaceForCounter): 71138 71139 2010-08-25 Chris Marrin <cmarrin (a] apple.com> 71140 71141 Reviewed by Simon Fraser. 71142 71143 https://bugs.webkit.org/show_bug.cgi?id=44629 71144 Add layer consistency checking and fix found crashing bug 71145 71146 The crash was being caused by some of the calls which mutated 71147 the sublayer list leaving the list in an inconsistent state. 71148 This eventually lead to a crash. It would also lead to visual 71149 artifacts if the crash didn't occur. Added consistency checking 71150 to catch this and any other inconsistencies in the sublayer list. 71151 71152 The particular bug in this case was caused by clamping an index 71153 for insertion to the current size of the sublayer list. CACF uses 71154 an index equal to the current length to indicate an append operation. 71155 With tiled layers the apparent size of the list is one less than its 71156 actual size (to accomodate the layer which holds the list of tiles) 71157 so this clamping was causing the new layer to get inserted before the 71158 tile parent. The tile parent was then mistaken for a WKCACFLayer and 71159 it eventually tried to deref that layer, causing the crash. 71160 71161 I also added some protection when destroying a WKCACFLayer. The user data 71162 for the corresponding CACFLayer is now changed to 0xDeadBeef rather than 71163 null. This allows dangling layers to be more easily identified. This 71164 value is checked and ASSERTed if seen. I also remove the sublayers 71165 on destruction to make the consistency checks work properly while 71166 a layer is being destroyed. 71167 71168 Test: compositing/tiling/crash-reparent-tiled-layer.html 71169 71170 * platform/graphics/win/WKCACFLayer.cpp: 71171 * platform/graphics/win/WKCACFLayer.h: 71172 * platform/graphics/win/WebTiledLayer.cpp: 71173 * platform/graphics/win/WebTiledLayer.h: 71174 71175 2010-08-25 Ryosuke Niwa <rniwa (a] webkit.org> 71176 71177 Reviewed by Darin Adler. 71178 71179 WebCore::InsertListCommand::modifyRange infinite loop (100% CPU usage) 71180 https://bugs.webkit.org/show_bug.cgi?id=33668 71181 71182 The bug was caused by enclosingListChild returning a list child whose enclosing list is 71183 a sibling of the current list child. Fixed enclosingListChild to traverse upwards 71184 in the DOM to find the list child which is a sibling of the current list child. 71185 Also fixed adjacentEnclosingList to only returns the list that belongs to the same outer list. 71186 71187 In doApplyForSingleParagraph, if the start or the end of currentSelection existed inside a list content 71188 moved by moveParagraphWithClones, either end could point to a wrong position after the move. 71189 Fixed this problem by checking this condition upfront and restoring later. 71190 71191 In doApply, if moveParagraph or moveParagraphWithClones, endOfSelection or startOfLastParagraph 71192 could be null or orphaned, fixed this problem by indexForVisiblePosition. 71193 71194 Test: editing/execCommand/insert-list-orphaned-item-with-nested-lists.html 71195 71196 * editing/InsertListCommand.cpp: 71197 (WebCore::InsertListCommand::doApply): 71198 (WebCore::enclosingListChild): 71199 (WebCore::InsertListCommand::doApplyForSingleParagraph): 71200 (WebCore::adjacentEnclosingList): 71201 (WebCore::InsertListCommand::listifyParagraph): 71202 71203 2010-08-25 Brent Fulgham <bfulgham (a] webkit.org> 71204 71205 Build corrections, no review. 71206 71207 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 71208 Add include for new (missing) "CairoPath.h" class. 71209 * platform/graphics/cairo/PlatformRefPtrCairo.h: Correct 71210 include and compilation guards to match coding conventions. 71211 * platform/graphics/win/FontCustomPlatformDataCairo.cpp: 71212 Change implementation to match CG version, using the 71213 FontCustomPlatformData name, rather than the original 71214 FontCustomPlatformDataCairo. 71215 * platform/graphics/win/FontCustomPlatformDataCairo.h: 71216 Same as for the .cpp file. 71217 71218 2010-08-25 Krzysztof Czech <k.czech (a] samsung.com> 71219 71220 Reviewed by Kenneth Rohde Christiansen. 71221 71222 [EFL] Crash while calling PopupMenuEfl destructor 71223 https://bugs.webkit.org/show_bug.cgi?id=44497 71224 71225 Condition checks if m_view is defined 71226 before popup is hide 71227 71228 * platform/efl/PopupMenuEfl.cpp: 71229 (WebCore::PopupMenuEfl::~PopupMenuEfl): 71230 71231 2010-08-24 Ryosuke Niwa <rniwa (a] webkit.org> 71232 71233 Reviewed by Tony Chang. 71234 71235 Creating a link when selecting multiple nodes creates multiple links 71236 https://bugs.webkit.org/show_bug.cgi?id=30836 71237 71238 The bug was caused by applyInlineStyleToRange calling addInlineStyleIfNeeded 71239 on each inline element. Modified applyInlineStyleToRange to call addInlineStyleIfNeeded 71240 once for all inline elements with the same style difference. 71241 71242 Because this implies that anchor element may wrap other inline elements when added, 71243 modified pushDownInlineStyleAroundNode to push down styled elements. 71244 71245 Removed pushPartiallySelectedAnchorElementsDown from CompositeEditCommand since 71246 ApplyStyleCommand now correctly pushes down anchors at the start and the end of the selection. 71247 71248 Test: editing/execCommand/toggle-link.html 71249 71250 * editing/ApplyStyleCommand.cpp: 71251 (WebCore::StyleChange::operator==): Added. 71252 (WebCore::StyleChange::operator!=): Added. 71253 (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Wraps inline elements with 71254 the same style difference by one element instead of wrapping each element separately. 71255 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Extracts styled element. 71256 (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Avoids adding styled element. 71257 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Pushes down styled element. 71258 (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement): No longer checks inline-ness. 71259 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Adds style even when m_removeOnly. 71260 Callers should set addStyledElement = DoNotAddStyledElement to avoid adding styled element. 71261 * editing/ApplyStyleCommand.h: 71262 * editing/CompositeEditCommand.cpp: Removed pushPartiallySelectedAnchorElementsDown. 71263 * editing/CompositeEditCommand.h: Removed pushPartiallySelectedAnchorElementsDown. 71264 * editing/CreateLinkCommand.cpp: 71265 (WebCore::CreateLinkCommand::doApply): used to call pushPartiallySelectedAnchorElementsDown. 71266 * editing/UnlinkCommand.cpp: 71267 (WebCore::UnlinkCommand::doApply): Used to call pushPartiallySelectedAnchorElementsDown. 71268 71269 2010-08-24 Zhenyao Mo <zmo (a] google.com> 71270 71271 Reviewed by Kenneth Russell. 71272 71273 Passing premultiplyAlpha=false to tex{Sub}Image2D loses information (skia) 71274 https://bugs.webkit.org/show_bug.cgi?id=38282 71275 71276 Test: fast/canvas/webgl/gl-teximage.html 71277 71278 * platform/graphics/GraphicsContext3D.cpp: Fix a bug where alpha channel is ignored. 71279 * platform/graphics/ImageSource.cpp: Add premultiplyAlpha flag. 71280 (WebCore::ImageSource::ImageSource): 71281 (WebCore::ImageSource::setData): 71282 * platform/graphics/ImageSource.h: Ditto. 71283 * platform/graphics/cg/ImageSourceCG.cpp: Ditto. 71284 (WebCore::ImageSource::ImageSource): 71285 * platform/graphics/qt/ImageDecoderQt.cpp: Ditto. 71286 (WebCore::ImageDecoder::create): 71287 (WebCore::ImageDecoderQt::ImageDecoderQt): 71288 (WebCore::ImageDecoderQt::frameCount): 71289 (WebCore::ImageDecoderQt::forceLoadEverything): 71290 * platform/graphics/qt/ImageDecoderQt.h: Ditto. 71291 * platform/graphics/skia/GraphicsContext3DSkia.cpp: Fix the premultiplyAlpha data loss issue in skia. 71292 (WebCore::GraphicsContext3D::getImageData): 71293 * platform/image-decoders/ImageDecoder.cpp: Add premultiplyAlpha flag. 71294 (WebCore::ImageDecoder::create): 71295 (WebCore::RGBA32Buffer::RGBA32Buffer): 71296 (WebCore::RGBA32Buffer::operator=): 71297 * platform/image-decoders/ImageDecoder.h: Ditto. 71298 (WebCore::RGBA32Buffer::premultiplyAlpha): 71299 (WebCore::RGBA32Buffer::setPremultiplyAlpha): 71300 (WebCore::RGBA32Buffer::setRGBA): 71301 (WebCore::ImageDecoder::ImageDecoder): 71302 * platform/image-decoders/bmp/BMPImageDecoder.cpp: Ditto. 71303 (WebCore::BMPImageDecoder::BMPImageDecoder): 71304 (WebCore::BMPImageDecoder::frameBufferAtIndex): 71305 * platform/image-decoders/bmp/BMPImageDecoder.h: Ditto. 71306 * platform/image-decoders/gif/GIFImageDecoder.cpp: Ditto. 71307 (WebCore::GIFImageDecoder::GIFImageDecoder): 71308 (WebCore::GIFImageDecoder::frameCount): 71309 * platform/image-decoders/gif/GIFImageDecoder.h: Ditto. 71310 * platform/image-decoders/ico/ICOImageDecoder.cpp: Ditto. 71311 (WebCore::ICOImageDecoder::ICOImageDecoder): 71312 (WebCore::ICOImageDecoder::frameCount): 71313 (WebCore::ICOImageDecoder::decodeAtIndex): 71314 * platform/image-decoders/ico/ICOImageDecoder.h: Ditto. 71315 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Ditto. 71316 (WebCore::JPEGImageDecoder::JPEGImageDecoder): 71317 (WebCore::JPEGImageDecoder::frameBufferAtIndex): 71318 * platform/image-decoders/jpeg/JPEGImageDecoder.h: Ditto. 71319 * platform/image-decoders/png/PNGImageDecoder.cpp: Ditto. 71320 (WebCore::PNGImageDecoder::PNGImageDecoder): 71321 (WebCore::PNGImageDecoder::frameBufferAtIndex): 71322 * platform/image-decoders/png/PNGImageDecoder.h: Ditto. 71323 * platform/image-decoders/skia/ImageDecoderSkia.cpp: Ditto. 71324 (WebCore::RGBA32Buffer::RGBA32Buffer): 71325 (WebCore::RGBA32Buffer::operator=): 71326 71327 2010-08-25 Adam Barth <abarth (a] webkit.org> 71328 71329 Reviewed by Eric Seidel. 71330 71331 Remove XBL 71332 https://bugs.webkit.org/show_bug.cgi?id=44621 71333 71334 This patch removes support for XBL. XBL seems cool, but this code is 71335 old and pretty bitrotten. If we decide to support XBL in the future, 71336 we can recover this code from this revision. As it stands, it doesn't 71337 seem worth half-maintaining this code. 71338 71339 * Android.mk: 71340 * CMakeLists.txt: 71341 * GNUmakefile.am: 71342 * WebCore.gypi: 71343 * WebCore.pro: 71344 * WebCore.vcproj/WebCore.vcproj: 71345 * WebCore.xcodeproj/project.pbxproj: 71346 * css/CSSComputedStyleDeclaration.cpp: 71347 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 71348 * css/CSSParser.cpp: 71349 (WebCore::CSSParser::parseValue): 71350 * css/CSSPropertyNames.in: 71351 * css/CSSStyleSelector.cpp: 71352 (WebCore::CSSStyleSelector::applyProperty): 71353 * dom/Document.cpp: 71354 (WebCore::Document::Document): 71355 (WebCore::Document::~Document): 71356 * dom/Document.h: 71357 * loader/Cache.cpp: 71358 (WebCore::createResource): 71359 (WebCore::Cache::getStatistics): 71360 * loader/Cache.h: 71361 * loader/CachedResource.h: 71362 (WebCore::CachedResource::): 71363 * loader/CachedResourceClient.h: 71364 (WebCore::CachedResourceClient::setXSLStyleSheet): 71365 (WebCore::CachedResourceClient::fontLoaded): 71366 * loader/CachedXBLDocument.cpp: Removed. 71367 * loader/CachedXBLDocument.h: Removed. 71368 * loader/DocLoader.cpp: 71369 (WebCore::DocLoader::canRequest): 71370 * loader/DocLoader.h: 71371 * loader/loader.cpp: 71372 (WebCore::cachedResourceTypeToTargetType): 71373 (WebCore::Loader::determinePriority): 71374 * rendering/style/BindingURI.cpp: Removed. 71375 * rendering/style/BindingURI.h: Removed. 71376 * rendering/style/RenderStyle.cpp: 71377 * rendering/style/RenderStyle.h: 71378 * rendering/style/StyleRareNonInheritedData.cpp: 71379 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): 71380 (WebCore::StyleRareNonInheritedData::operator==): 71381 * rendering/style/StyleRareNonInheritedData.h: 71382 71383 2010-08-25 Andreas Kling <andreas.kling (a] nokia.com> 71384 71385 Reviewed by Ariya Hidayat. 71386 71387 [Qt] GraphicsContext: Construct with the correct default LineJoin (MiterJoin) 71388 71389 We weren't setting it explicitly which caused us to use Qt::MiterJoin when 71390 we actually want Qt::SvgMiterJoin. 71391 71392 Fixes display glitches on the "Monster" chrome experiment among other things. 71393 71394 * platform/graphics/qt/GraphicsContextQt.cpp: 71395 (WebCore::GraphicsContext::GraphicsContext): 71396 71397 2010-08-25 Rafael Antognolli <antognolli (a] profusion.mobi> 71398 71399 Unreviewed build fix. 71400 71401 [EFL] Build fix for revision 66024 71402 https://bugs.webkit.org/show_bug.cgi?id=44631 71403 71404 No new features added, so no new tests. 71405 71406 * CMakeListsEfl.txt: change GRefPtrCairo.cpp by PlatformRefPtrCairo.cpp. 71407 71408 2010-08-25 Ryosuke Niwa <rniwa (a] webkit.org> 71409 71410 Reviewed by Darin Adler. 71411 71412 Various designmode="on"/"off" & execCommand("Undo") NULL pointer crashes 71413 https://bugs.webkit.org/show_bug.cgi?id=32823 71414 71415 The bug was caused by changeSelectionAfterCommand which updates the selection 71416 without checking the whether new selection is valid or not. 71417 71418 Fixed changeSelectionAfterCommand so that it won't update the selection 71419 when either end of the new selection is orphaned. Also fixed various editing commands 71420 to exit early if either end of the selection is orphaned. 71421 71422 Tests: editing/undo/orphaned-selection-crash-bug32823-1.html 71423 editing/undo/orphaned-selection-crash-bug32823-2.html 71424 editing/undo/orphaned-selection-crash-bug32823-3.html 71425 editing/undo/orphaned-selection-crash-bug32823-4.html 71426 71427 * editing/Editor.cpp: 71428 (WebCore::Editor::changeSelectionAfterCommand): No longer sets orphaned selection. 71429 * editing/VisibleSelection.h: 71430 (WebCore::VisibleSelection::isNonOrphanedRange): Added. 71431 (WebCore::VisibleSelection::isNonOrphanedCaretOrRange): Added. 71432 * editing/DeleteSelectionCommand.cpp: 71433 (WebCore::DeleteSelectionCommand::doApply): Added an early exist. See above. 71434 * editing/FormatBlockCommand.cpp: 71435 (WebCore::FormatBlockCommand::doApply): Ditto. 71436 * editing/IndentOutdentCommand.cpp: 71437 (WebCore::IndentOutdentCommand::doApply): Ditto. 71438 * editing/InsertLineBreakCommand.cpp: 71439 (WebCore::InsertLineBreakCommand::doApply): Ditto. 71440 * editing/InsertListCommand.cpp: 71441 (WebCore::InsertListCommand::doApply): Ditto. 71442 * editing/InsertParagraphSeparatorCommand.cpp: 71443 (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto. 71444 * editing/InsertTextCommand.cpp: 71445 (WebCore::InsertTextCommand::input): Ditto. 71446 * editing/MoveSelectionCommand.cpp: 71447 (WebCore::MoveSelectionCommand::doApply): Ditto. 71448 * editing/RemoveFormatCommand.cpp: 71449 (WebCore::RemoveFormatCommand::doApply): Ditto. 71450 * editing/ReplaceSelectionCommand.cpp: 71451 (WebCore::ReplaceSelectionCommand::doApply): Ditto. 71452 * editing/TypingCommand.cpp: 71453 (WebCore::TypingCommand::doApply): Ditto. 71454 * editing/UnlinkCommand.cpp: 71455 (WebCore::UnlinkCommand::doApply): Ditto. 71456 71457 2010-08-25 Simon Fraser <simon.fraser (a] apple.com> 71458 71459 Reviewed by Dan Bernstein. 71460 71461 Flash content draws in front of site's drop down menu at http://www.monster.com/ 71462 https://bugs.webkit.org/show_bug.cgi?id=41330 71463 71464 If an iframe with composited content became overlapped, we failed to 71465 consider that iframe for compositing if it had no RenderLayer, so the layering 71466 would be incorrect. 71467 71468 Overlap is detected at painting time, but it's bad for FrameView::setIsOverlapped() 71469 to call setNeedsStyleRecalc(), because this would cause subsequent calls to 71470 FrameView::paintContents() in the same painting batch to bail with needsLayout(). 71471 71472 Instead, we do the setNeedsStyleRecalc() from RenderLayerCompositor::notifyIFramesOfCompositingChange(), 71473 so that the parent document has a chance to update style, and give the iframe a RenderLayer. 71474 Then setIsOverlapped() simply needs to schedule a layer update, which we do on a timer. 71475 71476 When dumping layers via Frame::layerTreeAsText(), if a layer update is pending, then 71477 update the layers. 71478 71479 Test: compositing/iframes/become-overlapped-iframe.html 71480 71481 * page/Frame.cpp: 71482 (WebCore::Frame::layerTreeAsText): 71483 * page/FrameView.cpp: 71484 (WebCore::FrameView::setIsOverlapped): 71485 * rendering/RenderLayerCompositor.cpp: 71486 (WebCore::RenderLayerCompositor::RenderLayerCompositor): 71487 (WebCore::RenderLayerCompositor::scheduleCompositingLayerUpdate): 71488 (WebCore::RenderLayerCompositor::compositingLayerUpdatePending): 71489 (WebCore::RenderLayerCompositor::updateCompositingLayersTimerFired): 71490 (WebCore::RenderLayerCompositor::updateCompositingLayers): 71491 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): 71492 * rendering/RenderLayerCompositor.h: 71493 71494 2010-08-25 Martin Robinson <mrobinson (a] igalia.com> 71495 71496 Reviewed by Gustavo Noronha Silva. 71497 71498 Cairo and EFL port shouldn't depend on glib. 71499 https://bugs.webkit.org/show_bug.cgi?id=44354 71500 71501 No new tests as functionality has not changed. 71502 71503 Replace occurrences of GRefPtr and adoptGRef with PlatformRefPtr and 71504 adoptPlatformRef. Rename GRefPtrCairo to PlatformRefPtrCairo. 71505 71506 * GNUmakefile.am: 71507 * platform/Cursor.h: 71508 * platform/graphics/cairo/GRefPtrCairo.cpp: Removed. 71509 * platform/graphics/cairo/GRefPtrCairo.h: Removed. 71510 * platform/graphics/cairo/ImageCairo.cpp: 71511 (WebCore::Image::drawPattern): 71512 * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added. 71513 (WTF::refPlatformPtr): 71514 (WTF::derefPlatformPtr): 71515 * platform/graphics/cairo/PlatformRefPtrCairo.h: Added. 71516 * platform/graphics/gtk/ImageBufferGtk.cpp: 71517 (WebCore::ImageBuffer::toDataURL): 71518 * platform/gtk/ClipboardGtk.cpp: 71519 (WebCore::ClipboardGtk::declareAndWriteDragImage): 71520 * platform/gtk/CursorGtk.cpp: 71521 (WebCore::createNamedCursor): 71522 (WebCore::createCustomCursor): 71523 (WebCore::Cursor::ensurePlatformCursor): 71524 * platform/gtk/DataObjectGtk.h: 71525 * platform/gtk/GRefPtrGtk.cpp: 71526 (WTF::refPlatformPtr): 71527 (WTF::derefPlatformPtr): 71528 * platform/gtk/GRefPtrGtk.h: 71529 * platform/gtk/PasteboardGtk.cpp: 71530 (WebCore::Pasteboard::writeImage): 71531 * platform/gtk/PasteboardHelper.cpp: 71532 (WebCore::PasteboardHelper::dropAtomsForContext): 71533 * platform/gtk/PopupMenuGtk.h: 71534 * platform/gtk/RenderThemeGtk.cpp: 71535 (WebCore::RenderThemeGtk::RenderThemeGtk): 71536 (WebCore::paintMozillaGtkWidget): 71537 * platform/gtk/RenderThemeGtk.h: 71538 71539 2010-08-25 Eric Carlson <eric.carlson (a] apple.com> 71540 71541 Reviewed by Alexey Proskuryakov. 71542 71543 HTMLMediaElement.canPlayType must be case insensitive for MIME type. 71544 https://bugs.webkit.org/show_bug.cgi?id=44577 71545 71546 * platform/graphics/MediaPlayer.cpp: 71547 (WebCore::MediaPlayer::load): 71548 (WebCore::MediaPlayer::supportsType): 71549 71550 2010-08-25 Xan Lopez <xlopez (a] igalia.com> 71551 71552 Reviewed by Martin Robinson. 71553 71554 [GTK] CodeGeneratorGObject not picking up FEATURE_DEFINES 71555 https://bugs.webkit.org/show_bug.cgi?id=44608 71556 71557 Move FEATURE_DEFINES declaration to the toplevel GNUmakefile.am, 71558 since it's used there now too. 71559 71560 * GNUmakefile.am: 71561 71562 2010-08-25 Dawit Alemayehu <adawit (a] kde.org> 71563 71564 Reviewed by Ariya Hidayat. 71565 71566 Proper workaround for missing Gtk initialization in Adobe's flash plugins. 71567 https://bugs.webkit.org/show_bug.cgi?id=44405 71568 71569 * plugins/qt/PluginPackageQt.cpp: 71570 (WebCore::initializeGtk): 71571 (WebCore::PluginPackage::load): 71572 71573 2010-08-25 Ilya Tikhonovsky <loislo (a] chromium.org> 71574 71575 Reviewed by Yury Semikhatsky. 71576 71577 WebInspector: InspectorBackendStub.js is not updated when Inspector.idl changes. 71578 https://bugs.webkit.org/show_bug.cgi?id=44604 71579 71580 * WebCore.xcodeproj/project.pbxproj: 71581 71582 2010-08-25 Pavel Podivilov <podivilov (a] chromium.org> 71583 71584 Reviewed by Yury Semikhatsky. 71585 71586 Web Inspector: don't stop on DOM breakpoints when all breakpoints are deactivated 71587 https://bugs.webkit.org/show_bug.cgi?id=44509 71588 71589 * bindings/v8/ScriptDebugServer.cpp: 71590 (WebCore::ScriptDebugServer::ScriptDebugServer): 71591 (WebCore::ScriptDebugServer::setBreakpointsActivated): 71592 (WebCore::ScriptDebugServer::breakProgram): 71593 * bindings/v8/ScriptDebugServer.h: 71594 * inspector/InspectorDebuggerAgent.cpp: 71595 (WebCore::InspectorDebuggerAgent::create): 71596 71597 2010-08-25 Yury Semikhatsky <yurys (a] chromium.org> 71598 71599 Reviewed by Pavel Feldman. 71600 71601 Web Inspector: lazily request frontend settings instead of pushing them on connect 71602 https://bugs.webkit.org/show_bug.cgi?id=44607 71603 71604 * html/HTMLDocument.cpp: 71605 (WebCore::HTMLDocument::createParser): 71606 * inspector/Inspector.idl: 71607 * inspector/InspectorController.cpp: 71608 (WebCore::InspectorController::getSettings): 71609 (WebCore::InspectorController::connectFrontend): 71610 (WebCore::InspectorController::populateScriptObjects): this method is now called explicitely from the frontend, 71611 it should be gone eventually once all panels request initial data lazily. 71612 * inspector/InspectorController.h: 71613 * inspector/front-end/ProfilesPanel.js: 71614 (WebInspector.ProfilesPanel.prototype.show): 71615 (WebInspector.ProfilesPanel.prototype.profilerWasEnabled): 71616 (WebInspector.ProfilesPanel.prototype._reset): 71617 * inspector/front-end/Settings.js: 71618 (WebInspector.Settings): 71619 (WebInspector.Settings.initialize.populateApplicationSettings): 71620 (WebInspector.Settings.initialize.populateSessionSettings): 71621 (WebInspector.Settings.initialize): 71622 * inspector/front-end/inspector.js: 71623 (WebInspector.doLoadedDone): 71624 71625 2010-08-25 Pavel Feldman <pfeldman (a] chromium.org> 71626 71627 Reviewed by Yury Semikhatsky. 71628 71629 Web Inspector: support checked and disabled context menu items. 71630 https://bugs.webkit.org/show_bug.cgi?id=44612 71631 71632 * platform/ContextMenu.cpp: 71633 (WebCore::ContextMenu::checkOrEnableIfNeeded): 71634 71635 2010-08-25 Pavel Feldman <pfeldman (a] chromium.org> 71636 71637 Reviewed by Yury Semikhatsky. 71638 71639 Web Inspector: support disabled and checked context menu items. 71640 https://bugs.webkit.org/show_bug.cgi?id=44601 71641 71642 * bindings/js/JSInspectorFrontendHostCustom.cpp: 71643 (WebCore::JSInspectorFrontendHost::showContextMenu): 71644 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: 71645 (WebCore::V8InspectorFrontendHost::showContextMenuCallback): 71646 * inspector/front-end/ContextMenu.js: 71647 (WebInspector.ContextMenu.prototype.appendItem): 71648 71649 2010-08-25 Zaheer Ahmad <zaheer.mot (a] gmail.com> 71650 71651 Reviewed by Xan Lopez. 71652 71653 [GTK] GTK port doesnt compile with video turned off 71654 https://bugs.webkit.org/show_bug.cgi?id=44236 71655 71656 Generate the audio GObject DOM bindings only if video enabled 71657 * WebCore/GNUMakefile.am 71658 * WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: 71659 Make the audio code invocation conditional 71660 71661 71662 2010-08-24 Pavel Podivilov <podivilov (a] chromium.org> 71663 71664 Reviewed by Pavel Feldman. 71665 71666 Web Inspector: add "Attribute Modified" and "Node Removed" DOM breakpoints 71667 https://bugs.webkit.org/show_bug.cgi?id=44532 71668 71669 Test: inspector/dom-breakpoint.html 71670 71671 * inspector/InspectorDOMAgent.cpp: 71672 (WebCore::InspectorDOMAgent::setDOMBreakpoint): 71673 (WebCore::InspectorDOMAgent::removeDOMBreakpoint): 71674 (WebCore::InspectorDOMAgent::didInsertDOMNode): 71675 (WebCore::InspectorDOMAgent::didRemoveDOMNode): 71676 (WebCore::InspectorDOMAgent::didModifyDOMAttr): 71677 * inspector/front-end/DOMAgent.js: 71678 * inspector/front-end/ElementsTreeOutline.js: 71679 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 71680 71681 2010-08-25 Satish Sampath <satish (a] chromium.org> 71682 71683 Reviewed by Jeremy Orlow. 71684 71685 Pass the element's bounds to embedder during speech recognition. 71686 https://bugs.webkit.org/show_bug.cgi?id=44427 71687 71688 The embedder would typically want to show a native UI with information, settings etc. 71689 By passing the display bounds of the html element, the embedder can position the 71690 native speech recognition UI appropriately. 71691 71692 * page/SpeechInput.cpp: 71693 (WebCore::SpeechInput::startRecognition): 71694 * page/SpeechInput.h: 71695 * page/SpeechInputClient.h: 71696 * platform/mock/SpeechInputClientMock.cpp: 71697 (WebCore::SpeechInputClientMock::startRecognition): 71698 * platform/mock/SpeechInputClientMock.h: 71699 * rendering/TextControlInnerElements.cpp: 71700 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 71701 (WebCore::InputFieldSpeechButtonElement::detach): 71702 71703 2010-08-25 Yongjun Zhang <yongjun_zhang (a] apple.com> 71704 71705 Reviewed by Alexey Proskuryakov. 71706 71707 https://bugs.webkit.org/show_bug.cgi?id=44461 71708 Assertion failure at WebCore/platform/network/CredentialStorage.cpp:85. 71709 71710 Remove the assertion at CredentialStorage.cpp:85 since it is legal to have 71711 multiple forward slashes after the path component. 71712 71713 No test needed. 71714 71715 * platform/network/CredentialStorage.cpp: 71716 (WebCore::protectionSpaceMapKeyFromURL): 71717 71718 2010-08-25 Pavel Feldman <pfeldman (a] chromium.org> 71719 71720 Reviewed by Yury Semikhatsky. 71721 71722 Web Inspector: search in Scripts panel brings ui back to original search view. 71723 https://bugs.webkit.org/show_bug.cgi?id=44516 71724 71725 * inspector/front-end/Panel.js: 71726 (WebInspector.Panel.prototype.searchCanceled): 71727 (WebInspector.Panel.prototype.jumpToNextSearchResult): 71728 (WebInspector.Panel.prototype.jumpToPreviousSearchResult): 71729 * inspector/front-end/ResourcesPanel.js: 71730 * inspector/front-end/ScriptsPanel.js: 71731 (WebInspector.ScriptsPanel): 71732 (WebInspector.ScriptsPanel.prototype.searchCanceled): 71733 (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback): 71734 (WebInspector.ScriptsPanel.prototype.performSearch): 71735 (WebInspector.ScriptsPanel.prototype.jumpToNextSearchResult): 71736 (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult): 71737 71738 2010-08-25 Kent Tamura <tkent (a] chromium.org> 71739 71740 Reviewed by Shinichiro Hamaji 71741 71742 <input type=number>: Support auto-repeat by mouse press 71743 https://bugs.webkit.org/show_bug.cgi?id=44476 71744 71745 Like arrow button of scrollbars, spinbuttons of <input 71746 type=number> should continue to increase/decrease their values 71747 while the mouse button is pressed. 71748 71749 No new tests because the new behavior strongly depends on a timer. 71750 71751 * rendering/TextControlInnerElements.cpp: 71752 (WebCore::SpinButtonElement::SpinButtonElement): 71753 Initializes the timer. 71754 (WebCore::SpinButtonElement::defaultEventHandler): 71755 Starts the timer by a mousedown event. 71756 (WebCore::SpinButtonElement::startRepeatingTimer): 71757 (WebCore::SpinButtonElement::stopRepeatingTimer): 71758 (WebCore::SpinButtonElement::repeatingTimerFired): 71759 * rendering/TextControlInnerElements.h: 71760 71761 2010-08-25 Gabor Loki <loki (a] webkit.org> 71762 71763 Reviewed by Gavin Barraclough. 71764 71765 Avoid increasing required alignment of target type warning 71766 https://bugs.webkit.org/show_bug.cgi?id=43963 71767 71768 Fix alignment warnings on Qt. 71769 71770 * bridge/qt/qt_runtime.cpp: 71771 (JSC::Bindings::convertQVariantToValue): 71772 * platform/graphics/qt/ImageBufferQt.cpp: 71773 (WebCore::getImageData): 71774 (WebCore::putImageData): 71775 * platform/image-decoders/ImageDecoder.h: 71776 (WebCore::RGBA32Buffer::getAddr): 71777 * platform/text/qt/TextCodecQt.cpp: 71778 (WebCore::TextCodecQt::decode): 71779 71780 2010-08-25 Kent Tamura <tkent (a] chromium.org> 71781 71782 Reviewed by Shinichiro Hamaji 71783 71784 Fix a bug that a spin-button doesn't release mouse capturing 71785 https://bugs.webkit.org/show_bug.cgi?id=44411 71786 71787 - LeftButton should be checked only for clickEvent. 71788 Note that this change doesn't change the behavior because 71789 button() value is initialized with LeftButton even for 71790 mousemoveEvent. 71791 - Should pass a SpinButtonElement node to setCapturingMouseEventsNode(). 71792 71793 Test: fast/forms/input-spinbutton-capturing.html 71794 71795 * rendering/TextControlInnerElements.cpp: 71796 (WebCore::SpinButtonElement::defaultEventHandler): 71797 71798 2010-08-25 Gabor Loki <loki (a] webkit.org> 71799 71800 Reviewed by Gavin Barraclough. 71801 71802 Avoid increasing required alignment of target type warning 71803 https://bugs.webkit.org/show_bug.cgi?id=43963 71804 71805 Fix platform independent alignment warnings. 71806 71807 * loader/CachedMetadata.h: 71808 (WebCore::CachedMetadata::readUnsigned): 71809 * platform/text/TextCodecLatin1.cpp: 71810 (WebCore::TextCodecLatin1::decode): 71811 71812 2010-08-25 Patrick Gansterer <paroga (a] paroga.com> 71813 71814 Reviewed by Adam Roben. 71815 71816 Add missing methods at ResourceHandleWin 71817 https://bugs.webkit.org/show_bug.cgi?id=44453 71818 71819 * platform/network/win/ResourceHandleWin.cpp: 71820 (WebCore::ResourceHandle::willLoadFromCache): 71821 (WebCore::prefetchDNS): 71822 (WebCore::ResourceHandle::bufferedData): 71823 (WebCore::ResourceHandle::supportsBufferedData): 71824 (WebCore::ResourceHandle::loadsBlocked): 71825 (WebCore::ResourceHandle::platformSetDefersLoading): 71826 71827 2010-08-25 Adam Barth <abarth (a] webkit.org> 71828 71829 Second attempt to fix Qt build 71830 71831 * dom/XMLDocumentParserQt.cpp: 71832 (WebCore::XMLDocumentParser::parseDtd): 71833 71834 2010-08-24 Eric Seidel <eric (a] webkit.org> 71835 71836 Reviewed by Adam Barth. 71837 71838 Remove more DTD junk now that the LegacyHTMLDocumentParser is gone 71839 https://bugs.webkit.org/show_bug.cgi?id=44588 71840 71841 Just removing dead code, thus no tests. 71842 71843 * html/HTMLElement.cpp: 71844 (WebCore::HTMLElement::nodeName): 71845 * html/HTMLElement.h: 71846 71847 2010-08-24 Adam Barth <abarth (a] webkit.org> 71848 71849 Qt build fix. 71850 71851 * dom/XMLDocumentParserQt.cpp: 71852 (WebCore::XMLDocumentParser::parseStartElement): 71853 (WebCore::XMLDocumentParser::parseProcessingInstruction): 71854 (WebCore::XMLDocumentParser::parseCdata): 71855 (WebCore::XMLDocumentParser::parseComment): 71856 (WebCore::XMLDocumentParser::parseDtd): 71857 71858 2010-08-24 Adam Barth <abarth (a] webkit.org> 71859 71860 Reviewed by Eric Seidel. 71861 71862 Delete HTMLElement::checkDTD 71863 https://bugs.webkit.org/show_bug.cgi?id=44563 71864 71865 This function existed to service the LegacyHTMLTreeBuilder. The new 71866 HTMLTreeBuilder has this logic internalized. Pulling on this thread 71867 caused me to remove a legacyParserAddChild and to discover some code 71868 that shouldn't be calling these parser-specific APIs. 71869 71870 * dom/ContainerNode.cpp: 71871 (WebCore::ContainerNode::parserAddChild): 71872 (WebCore::ContainerNode::deprecatedParserAddChild): 71873 * dom/ContainerNode.h: 71874 * dom/DOMImplementation.cpp: 71875 (WebCore::DOMImplementation::createDocument): 71876 * dom/Node.cpp: 71877 (WebCore::Node::deprecatedParserAddChild): 71878 * dom/Node.h: 71879 * dom/XMLDocumentParser.cpp: 71880 (WebCore::XMLDocumentParser::enterText): 71881 * dom/XMLDocumentParser.h: 71882 * dom/XMLDocumentParserLibxml2.cpp: 71883 (WebCore::XMLDocumentParser::startElementNs): 71884 (WebCore::XMLDocumentParser::characters): 71885 (WebCore::XMLDocumentParser::processingInstruction): 71886 (WebCore::XMLDocumentParser::cdataBlock): 71887 (WebCore::XMLDocumentParser::comment): 71888 (WebCore::XMLDocumentParser::internalSubset): 71889 * dom/XMLDocumentParserQt.cpp: 71890 (WebCore::XMLDocumentParser::parse): 71891 (WebCore::XMLDocumentParser::parseStartElement): 71892 (WebCore::XMLDocumentParser::parseCharacters): 71893 (WebCore::XMLDocumentParser::parseProcessingInstruction): 71894 (WebCore::XMLDocumentParser::parseCdata): 71895 (WebCore::XMLDocumentParser::parseComment): 71896 (WebCore::XMLDocumentParser::parseDtd): 71897 * html/HTMLDataGridElement.cpp: 71898 * html/HTMLDataGridElement.h: 71899 * html/HTMLDataGridRowElement.cpp: 71900 * html/HTMLDataGridRowElement.h: 71901 * html/HTMLDataListElement.cpp: 71902 * html/HTMLDataListElement.h: 71903 * html/HTMLDocument.cpp: 71904 * html/HTMLDocument.h: 71905 * html/HTMLElement.cpp: 71906 * html/HTMLElement.h: 71907 * html/HTMLFieldSetElement.cpp: 71908 * html/HTMLFieldSetElement.h: 71909 * html/HTMLFrameSetElement.cpp: 71910 * html/HTMLFrameSetElement.h: 71911 * html/HTMLHeadElement.cpp: 71912 * html/HTMLHeadElement.h: 71913 * html/HTMLHeadingElement.cpp: 71914 * html/HTMLHeadingElement.h: 71915 * html/HTMLHtmlElement.cpp: 71916 * html/HTMLHtmlElement.h: 71917 * html/HTMLKeygenElement.cpp: 71918 (WebCore::HTMLKeygenElement::HTMLKeygenElement): 71919 * html/HTMLMapElement.cpp: 71920 * html/HTMLMapElement.h: 71921 * html/HTMLMediaElement.cpp: 71922 * html/HTMLMediaElement.h: 71923 * html/HTMLNoScriptElement.cpp: 71924 * html/HTMLNoScriptElement.h: 71925 * html/HTMLOptGroupElement.cpp: 71926 * html/HTMLOptGroupElement.h: 71927 * html/HTMLOptionElement.cpp: 71928 * html/HTMLOptionElement.h: 71929 * html/HTMLParagraphElement.cpp: 71930 * html/HTMLParagraphElement.h: 71931 * html/HTMLPlugInElement.cpp: 71932 * html/HTMLPlugInElement.h: 71933 * html/HTMLScriptElement.h: 71934 * html/HTMLSelectElement.cpp: 71935 * html/HTMLSelectElement.h: 71936 * html/HTMLStyleElement.h: 71937 * html/HTMLTableColElement.cpp: 71938 * html/HTMLTableColElement.h: 71939 * html/HTMLTableElement.cpp: 71940 * html/HTMLTableElement.h: 71941 * html/HTMLTableRowElement.cpp: 71942 * html/HTMLTableRowElement.h: 71943 * html/HTMLTableSectionElement.cpp: 71944 * html/HTMLTableSectionElement.h: 71945 * html/HTMLTextAreaElement.h: 71946 * html/HTMLTitleElement.h: 71947 * rendering/MediaControlElements.cpp: 71948 (WebCore::MediaControlElement::attachToParent): 71949 (WebCore::MediaControlInputElement::attachToParent): 71950 * rendering/TextControlInnerElements.cpp: 71951 (WebCore::TextControlInnerElement::attachInnerElement): 71952 71953 2010-08-24 Adam Barth <abarth (a] webkit.org> 71954 71955 Reviewed by Eric Seidel. 71956 71957 Remove tagPriority 71958 https://bugs.webkit.org/show_bug.cgi?id=44557 71959 71960 This code used to be used by the old parser. Now it's unused. 71961 71962 * html/HTMLAnchorElement.h: 71963 * html/HTMLAppletElement.h: 71964 * html/HTMLAreaElement.h: 71965 * html/HTMLAudioElement.h: 71966 * html/HTMLBRElement.h: 71967 * html/HTMLBaseElement.h: 71968 * html/HTMLBaseFontElement.h: 71969 * html/HTMLBlockquoteElement.h: 71970 * html/HTMLBodyElement.h: 71971 * html/HTMLCanvasElement.cpp: 71972 * html/HTMLCanvasElement.h: 71973 * html/HTMLDListElement.h: 71974 * html/HTMLDataGridCellElement.h: 71975 * html/HTMLDataGridColElement.h: 71976 * html/HTMLDataGridElement.h: 71977 * html/HTMLDataGridRowElement.h: 71978 * html/HTMLDirectoryElement.h: 71979 * html/HTMLDivElement.h: 71980 * html/HTMLElement.cpp: 71981 * html/HTMLElement.h: 71982 * html/HTMLEmbedElement.h: 71983 * html/HTMLFieldSetElement.h: 71984 * html/HTMLFontElement.h: 71985 * html/HTMLFormControlElement.h: 71986 * html/HTMLFormElement.h: 71987 * html/HTMLFrameElement.h: 71988 * html/HTMLFrameSetElement.h: 71989 * html/HTMLHRElement.h: 71990 * html/HTMLHeadElement.h: 71991 * html/HTMLHeadingElement.h: 71992 * html/HTMLHtmlElement.h: 71993 * html/HTMLIFrameElement.h: 71994 * html/HTMLImageElement.h: 71995 * html/HTMLInputElement.h: 71996 * html/HTMLIsIndexElement.h: 71997 * html/HTMLKeygenElement.h: 71998 * html/HTMLLIElement.h: 71999 * html/HTMLLabelElement.h: 72000 * html/HTMLLinkElement.h: 72001 * html/HTMLMapElement.h: 72002 * html/HTMLMarqueeElement.h: 72003 * html/HTMLMenuElement.h: 72004 * html/HTMLMetaElement.h: 72005 * html/HTMLModElement.h: 72006 * html/HTMLOListElement.h: 72007 * html/HTMLObjectElement.h: 72008 * html/HTMLOptionElement.h: 72009 * html/HTMLParagraphElement.h: 72010 * html/HTMLParamElement.h: 72011 * html/HTMLPreElement.h: 72012 * html/HTMLQuoteElement.h: 72013 * html/HTMLScriptElement.h: 72014 * html/HTMLSelectElement.h: 72015 * html/HTMLSourceElement.h: 72016 * html/HTMLStyleElement.h: 72017 * html/HTMLTableCaptionElement.h: 72018 * html/HTMLTableCellElement.h: 72019 * html/HTMLTableColElement.cpp: 72020 * html/HTMLTableColElement.h: 72021 * html/HTMLTableElement.h: 72022 * html/HTMLTableRowElement.h: 72023 * html/HTMLTableSectionElement.h: 72024 * html/HTMLUListElement.h: 72025 * html/HTMLVideoElement.h: 72026 72027 2010-08-24 Eric Seidel <eric (a] webkit.org> 72028 72029 Reviewed by Adam Barth. 72030 72031 Fix one more html5lib test case for button scoping 72032 https://bugs.webkit.org/show_bug.cgi?id=44583 72033 72034 I <3 test driven development. 72035 72036 * html/HTMLTreeBuilder.cpp: 72037 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 72038 72039 2010-08-24 Eric Seidel <eric (a] webkit.org> 72040 72041 Reviewed by Adam Barth. 72042 72043 Remove HTML5 parser testing infrastructure now that we don't need it 72044 https://bugs.webkit.org/show_bug.cgi?id=44581 72045 72046 Just removing dead code, no tests. 72047 72048 * dom/DocumentFragment.cpp: 72049 * dom/DocumentFragment.h: 72050 * page/Settings.cpp: 72051 (WebCore::Settings::Settings): 72052 * page/Settings.h: 72053 72054 2010-08-24 Adam Barth <abarth (a] webkit.org> 72055 72056 Reviewed by Eric Seidel. 72057 72058 Remove unneeded include in HTMLPreloadScanner 72059 https://bugs.webkit.org/show_bug.cgi?id=44552 72060 72061 Slowly but steadily sweeping up the dust in the HTML parser. 72062 72063 * html/HTMLPreloadScanner.cpp: 72064 * html/HTMLPreloadScanner.h: 72065 72066 2010-08-24 Kinuko Yasuda <kinuko (a] chromium.org> 72067 72068 Reviewed by Dumitru Daniliuc. 72069 72070 Implement virtual path utilities for FileSystem API 72071 https://bugs.webkit.org/show_bug.cgi?id=44132 72072 72073 No new tests; tests will be added later. (Each DOMFilePath's method is briefly tested locally.) 72074 72075 * CMakeLists.txt: 72076 * GNUmakefile.am: 72077 * WebCore.gypi: 72078 * WebCore.pro: 72079 * WebCore.vcproj/WebCore.vcproj: 72080 * WebCore.xcodeproj/project.pbxproj: 72081 * storage/DOMFilePath.cpp: Added. 72082 * storage/DOMFilePath.h: Added. 72083 72084 2010-08-24 Adam Barth <abarth (a] webkit.org> 72085 72086 Reviewed by Eric Seidel. 72087 72088 HTMLParserScheduler::create 72089 https://bugs.webkit.org/show_bug.cgi?id=44551 72090 72091 * html/HTMLDocumentParser.cpp: 72092 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 72093 * html/HTMLParserScheduler.h: 72094 (WebCore::HTMLParserScheduler::create): 72095 72096 2010-08-24 Daniel Bates <dbates (a] rim.com> 72097 72098 Fix code comment as per Darin Adler's suggestion in <https://bugs.webkit.org/show_bug.cgi?id=44486#c2>. 72099 I inadvertently did not update this comment when I landed changeset 65967 <http://trac.webkit.org/changeset/65967>. 72100 72101 * rendering/RenderListMarker.cpp: 72102 (WebCore::listMarkerSuffix): 72103 72104 2010-08-24 Daniel Bates <dbates (a] rim.com> 72105 72106 Reviewed by Darin Adler. 72107 72108 Suffix for CSS alphabetic list style types should fallback to 72109 decimal for ordinals outside of their representable range 72110 https://bugs.webkit.org/show_bug.cgi?id=44486 72111 72112 Test: fast/lists/w3-css3-list-styles-fallback-style.html 72113 72114 Fixes an issue where the decimal suffix is not used for 72115 ordinals that cannot be represented by the alphabetic list 72116 style type. 72117 72118 Currently, for ordinals that cannot be represented in the 72119 alphabetic list style we use the suffix associated with the 72120 list style. Instead, we should use the suffix for the decimal 72121 list style ('.'). For instance, when the list style type is 72122 Afar and the starting ordinal is 0, then we fallback to the 72123 decimal list style suffix '.' because 0 cannot be represented 72124 in Afar. 72125 72126 * rendering/RenderListMarker.cpp: 72127 (WebCore::toRoman): Moved bounds check into WebCore::effectiveListMarkerType(). 72128 (WebCore::toAlphabetic): Ditto. 72129 (WebCore::toHebrew): Ditto. 72130 (WebCore::toArmenian): Ditto. 72131 (WebCore::toGeorgian): Ditto. 72132 (WebCore::toCJKIdeographic): Ditto. 72133 (WebCore::effectiveListMarkerType): Added. 72134 (WebCore::listMarkerSuffix): Added value parameter to prototype. 72135 Modified to call WebCore::effectiveListMarkerType. 72136 (WebCore::listMarkerText): Modified to call WebCore::effectiveListMarkerType(). 72137 (WebCore::RenderListMarker::paint): Modified to pass list item ordinal (i.e. m_listItem->value()) to WebCore::listMarkerSuffix(). 72138 (WebCore::RenderListMarker::calcPrefWidths): Ditto. 72139 (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto. 72140 72141 2010-08-24 Gavin Barraclough <barraclough (a] apple.com> 72142 72143 Windows build fix. 72144 72145 * ForwardingHeaders/wtf/DecimalNumber.h: Added. 72146 72147 2010-08-23 Gavin Barraclough <barraclough (a] apple.com> 72148 72149 Reviewed by Oliver Hunt. 72150 72151 https://bugs.webkit.org/show_bug.cgi?id=44487 72152 72153 * html/LegacyHTMLTreeBuilder.cpp: 72154 (WebCore::serializeForNumberType): 72155 Update function call to numberToString. 72156 72157 2010-08-24 Eric Seidel <eric (a] webkit.org> 72158 72159 Reviewed by Adam Barth. 72160 72161 XMLDocumentParser needs to implement DocumentParser::detach() 72162 https://bugs.webkit.org/show_bug.cgi?id=44533 72163 72164 Test: fast/frames/set-parent-src-synchronously.xhtml 72165 72166 In the example from the page we were accessing document() 72167 after DocumentParser::detach() was called. To prevent this 72168 I added an ASSERT(m_document) to document(), causing many 72169 test cases to cover the bug shown in bug 44533. 72170 72171 To fix the bug, I implemented XMLDocumentParser::detach() 72172 and had it call clearCurrentNodeStack(), thus making 72173 it impossible for XMLDocumentParser to still have the Document 72174 on the node stack after detach (which was what was causing this bug). 72175 72176 While fixing this, I noticed that XMLDocumentParser may have the 72177 same trouble crashing that the HTMLDocumentParser did when 72178 synchronously deleted from JS (for example by an iframe navigation). 72179 I added a test case to cover this and protected the parser after 72180 the two places it executes scripts. 72181 72182 * dom/DocumentParser.h: 72183 (WebCore::DocumentParser::document): 72184 (WebCore::DocumentParser::isDetached): 72185 * dom/RawDataDocumentParser.h: 72186 (WebCore::RawDataDocumentParser::finish): 72187 * dom/XMLDocumentParser.cpp: 72188 (WebCore::XMLDocumentParser::append): 72189 (WebCore::XMLDocumentParser::detach): 72190 (WebCore::XMLDocumentParser::notifyFinished): 72191 * dom/XMLDocumentParser.h: 72192 * dom/XMLDocumentParserLibxml2.cpp: 72193 (WebCore::XMLDocumentParser::doWrite): 72194 (WebCore::XMLDocumentParser::endElementNs): 72195 (WebCore::XMLDocumentParser::resumeParsing): 72196 * html/HTMLDocumentParser.cpp: 72197 (WebCore::HTMLDocumentParser::pumpTokenizer): 72198 (WebCore::HTMLDocumentParser::willPumpLexer): 72199 (WebCore::HTMLDocumentParser::didPumpLexer): 72200 (WebCore::HTMLDocumentParser::end): 72201 (WebCore::HTMLDocumentParser::endIfDelayed): 72202 (WebCore::HTMLDocumentParser::script): 72203 * html/HTMLViewSourceParser.cpp: 72204 (WebCore::HTMLViewSourceParser::updateTokenizerState): 72205 * html/HTMLViewSourceParser.h: 72206 (WebCore::HTMLViewSourceParser::document): 72207 * loader/ImageDocument.cpp: 72208 (WebCore::ImageDocumentParser::document): 72209 72210 2010-08-24 Patrick Gansterer <paroga (a] paroga.com> 72211 72212 Reviewed by Adam Roben. 72213 72214 Add SynchronousLoader for ResourceHandleWin 72215 https://bugs.webkit.org/show_bug.cgi?id=44452 72216 72217 * platform/network/win/ResourceHandleWin.cpp: 72218 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): 72219 (WebCore::WebCoreSynchronousLoader::didReceiveResponse): 72220 (WebCore::WebCoreSynchronousLoader::didReceiveData): 72221 (WebCore::WebCoreSynchronousLoader::didFinishLoading): 72222 (WebCore::WebCoreSynchronousLoader::didFail): 72223 (WebCore::ResourceHandle::loadResourceSynchronously): 72224 72225 2010-08-24 Ryosuke Niwa <rniwa (a] webkit.org> 72226 72227 Unreviewed. 72228 72229 Replaced soft tab indentation by hard tab indentation for LegacyWebArchive.h. 72230 72231 * WebCore.xcodeproj/project.pbxproj: 72232 72233 2010-08-24 Joseph Pecoraro <joepeck (a] webkit.org> 72234 72235 Reviewed by Mark Rowe. 72236 72237 Web Inspector: RemoteInspectorFrontend can be renamed to InspectorFrontend 72238 https://bugs.webkit.org/show_bug.cgi?id=44499 72239 72240 Follow-up. No longer generate the RemoteInspectorFrontend files, just 72241 generate the required InspectorFrontend files. 72242 72243 * DerivedSources.make: 72244 72245 2010-08-20 Joseph Pecoraro <joepeck (a] webkit.org> 72246 72247 Reviewed by Pavel Feldman. 72248 72249 Web Inspector: Backend Should Provide Full Supported CSS Properties List 72250 https://bugs.webkit.org/show_bug.cgi?id=40886 72251 72252 This allows the backend to send the front-end its complete list of 72253 supported CSS Properties. This is used in CSS Autocompletion and 72254 CSS Syntax Highlighting to show which styles are supported. 72255 72256 * css/makeprop.pl: moved CSS properties to the header file. 72257 * inspector/Inspector.idl: expose getSupportedCSSProperties. 72258 * inspector/InspectorDOMAgent.cpp: 72259 (WebCore::InspectorDOMAgent::getSupportedCSSProperties): 72260 * inspector/InspectorDOMAgent.h: 72261 * inspector/front-end/CSSCompletions.js: 72262 (WebInspector.CSSCompletions._firstIndexOfPrefix): handle a possible error case before properties have loaded. 72263 (WebInspector.CSSCompletions._load): fill up the special array with the received properties. 72264 * inspector/front-end/SourceCSSTokenizer.js: 72265 (WebInspector.SourceCSSTokenizer): use the list of support properties from the backend. 72266 * inspector/front-end/SourceCSSTokenizer.re2js: 72267 * inspector/front-end/inspector.js: request the list of supported CSS properties on load. 72268 (WebInspector.doLoadedDone): 72269 72270 2010-08-24 Adam Barth <abarth (a] webkit.org> 72271 72272 Reviewed by Eric Seidel. 72273 72274 Delete LegacyHTMLTreeBuilder 72275 https://bugs.webkit.org/show_bug.cgi?id=44554 72276 72277 There were some free functions in LegacyHTMLTreeBuilder that needed a 72278 new home. I've put them in HTMLTreeBuilder, but they'll probably need 72279 a better home eventually. 72280 72281 * Android.mk: 72282 * CMakeLists.txt: 72283 * GNUmakefile.am: 72284 * WebCore.gypi: 72285 * WebCore.pro: 72286 * WebCore.vcproj/WebCore.vcproj: 72287 * WebCore.xcodeproj/project.pbxproj: 72288 * dom/Document.cpp: 72289 (WebCore::shouldCreateImplicitHead): 72290 * dom/DocumentParser.h: 72291 * dom/ScriptableDocumentParser.h: 72292 * html/HTMLConstructionSite.cpp: 72293 * html/HTMLFormControlElement.cpp: 72294 (WebCore::HTMLFormControlElement::removedFromTree): 72295 * html/HTMLInputElement.cpp: 72296 * html/HTMLMeterElement.cpp: 72297 * html/HTMLProgressElement.cpp: 72298 * html/HTMLTreeBuilder.cpp: 72299 (WebCore::serializeForNumberType): 72300 (WebCore::parseToDoubleForNumberType): 72301 * html/HTMLTreeBuilder.h: 72302 * html/HTMLViewSourceParser.h: 72303 * html/LegacyHTMLTreeBuilder.cpp: Removed. 72304 * html/LegacyHTMLTreeBuilder.h: Removed. 72305 * html/StepRange.cpp: 72306 * html/ValidityState.cpp: 72307 * rendering/RenderSlider.cpp: 72308 72309 2010-08-24 Pavel Podivilov <podivilov (a] chromium.org> 72310 72311 Reviewed by Yury Semikhatsky. 72312 72313 Web Inspector: show DOM breakpoints in sidebar pane 72314 https://bugs.webkit.org/show_bug.cgi?id=44424 72315 72316 * inspector/front-end/BreakpointManager.js: 72317 (WebInspector.BreakpointManager.prototype._setBreakpoint): 72318 (WebInspector.BreakpointManager.prototype._breakpointRemoved): 72319 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): 72320 (WebInspector.Breakpoint.prototype.set enabled): 72321 (WebInspector.Breakpoint.prototype.set condition): 72322 (WebInspector.Breakpoint.prototype.remove): 72323 * inspector/front-end/BreakpointsSidebarPane.js: 72324 (WebInspector.BreakpointsSidebarPane): 72325 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): 72326 (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved): 72327 (WebInspector.BreakpointsSidebarPane.prototype._contextMenuEventFired): 72328 (WebInspector.BreakpointItem): 72329 (WebInspector.BreakpointItem.prototype.element): 72330 (WebInspector.BreakpointItem.prototype.remove): 72331 (WebInspector.BreakpointItem.prototype._checkboxClicked): 72332 (WebInspector.BreakpointItem.prototype._enableChanged): 72333 (WebInspector.BreakpointItem.prototype._removed): 72334 (WebInspector.JSBreakpointItem): 72335 (WebInspector.JSBreakpointItem.prototype._textChanged): 72336 (WebInspector.DOMBreakpointItem): 72337 (WebInspector.DOMBreakpointItem.prototype.compareTo): 72338 * inspector/front-end/DOMAgent.js: 72339 (WebInspector.DOMBreakpointManager): 72340 (WebInspector.DOMBreakpointManager.prototype.setBreakpoint): 72341 (WebInspector.DOMBreakpointManager.prototype.removeBreakpointsForNode): 72342 (WebInspector.DOMBreakpointManager.prototype._breakpointRemoved): 72343 (WebInspector.DOMBreakpoint): 72344 (WebInspector.DOMBreakpoint.prototype.get enabled): 72345 (WebInspector.DOMBreakpoint.prototype.set enabled): 72346 (WebInspector.DOMBreakpoint.prototype.remove): 72347 * inspector/front-end/ElementsPanel.js: 72348 (WebInspector.ElementsPanel): 72349 (WebInspector.ElementsPanel.prototype.reset): 72350 * inspector/front-end/ElementsTreeOutline.js: 72351 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 72352 * inspector/front-end/ScriptView.js: 72353 (WebInspector.ScriptView): 72354 * inspector/front-end/ScriptsPanel.js: 72355 (WebInspector.ScriptsPanel): 72356 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 72357 (WebInspector.ScriptsPanel.prototype.reset): 72358 * inspector/front-end/SourceFrame.js: 72359 (WebInspector.SourceFrame): 72360 (WebInspector.SourceFrame.prototype.set visible): 72361 (WebInspector.SourceFrame.prototype.addBreakpoint): 72362 (WebInspector.SourceFrame.prototype._breakpointRemoved): 72363 (WebInspector.SourceFrame.prototype._addBreakpointToSource): 72364 (WebInspector.SourceFrame.prototype._removeBreakpointFromSource): 72365 (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint): 72366 (WebInspector.SourceFrame.prototype._contextMenu): 72367 (WebInspector.SourceFrame.prototype._mouseDown): 72368 * inspector/front-end/SourceView.js: 72369 (WebInspector.SourceView): 72370 (WebInspector.SourceView.prototype.updateLocalContent): 72371 * inspector/front-end/inspector.js: 72372 (WebInspector.createJSBreakpointsSidebarPane.breakpointAdded): 72373 (WebInspector.createJSBreakpointsSidebarPane): 72374 (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded): 72375 (WebInspector.createDOMBreakpointsSidebarPane): 72376 (WebInspector.doLoadedDone): 72377 72378 2010-08-24 Stephen White <senorblanco (a] chromium.org> 72379 72380 Reviewed by Dumitru Daniliuc. 72381 72382 Speculative fix for layout test failures on Chrome/Linux. 72383 https://bugs.webkit.org/show_bug.cgi?id=44550 72384 72385 Tests fast/canvas/arc-crash.html, fast/canvas/canvas-state-intact-after-putImageData.html, and fast/canvas/toDataURL-supportedTypes.html are failing on Chrome/Linux. Can't repro the failure locally, but this fix can't hurt. 72386 72387 * html/canvas/CanvasRenderingContext2D.cpp: 72388 (WebCore::CanvasRenderingContext2D::paintRenderingResultsToCanvas): 72389 72390 2010-08-24 Dumitru Daniliuc <dumi (a] chromium.org> 72391 72392 Reviewed by Dimitri Glazkov. 72393 72394 Fix the NodeFilter wrapper and the binding for acceptNode. 72395 https://bugs.webkit.org/show_bug.cgi?id=44542 72396 72397 * bindings/v8/V8DOMWrapper.cpp: 72398 (WebCore::V8DOMWrapper::wrapNativeNodeFilter): This function 72399 should always create a filter. V8NodeFilterCondition::acceptNode() 72400 will check if the given object can be used as a filter, and throw 72401 an exception if it can't. 72402 * bindings/v8/V8NodeFilterCondition.cpp: 72403 (WebCore::V8NodeFilterCondition::acceptNode): Update this binding 72404 to do the same thing that the JS binding does. 72405 72406 2010-08-24 Simon Fraser <simon.fraser (a] apple.com> 72407 72408 Reviewed by Tony Chang. 72409 72410 After r65681, caret no longer displays promptly while editing form fields 72411 https://bugs.webkit.org/show_bug.cgi?id=44294 72412 72413 The caret no longer eagerly updates its rect on every paint, so we have 72414 to manually update it after scrolling the selection into view when 72415 the selection changes. 72416 72417 Tested by the pixel results of fast/forms/input-text-scroll-left-on-blur.html 72418 72419 * page/Frame.cpp: 72420 (WebCore::Frame::revealSelection): 72421 72422 2010-08-24 Adam Barth <abarth (a] webkit.org> 72423 72424 Reviewed by Darin Adler. 72425 72426 Remove redundant call to OwnPtr::clear 72427 https://bugs.webkit.org/show_bug.cgi?id=44548 72428 72429 As pointed out by Darin, this call to clear is not needed. 72430 72431 * editing/TextIterator.cpp: 72432 (WebCore::plainTextToMallocAllocatedBuffer): 72433 72434 2010-08-24 Adam Barth <abarth (a] webkit.org> 72435 72436 Reviewed by Eric Seidel. 72437 72438 HTMLTokenizer::create 72439 https://bugs.webkit.org/show_bug.cgi?id=44477 72440 72441 * html/HTMLDocumentParser.cpp: 72442 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 72443 * html/HTMLPreloadScanner.cpp: 72444 (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): 72445 (WebCore::HTMLPreloadScanner::scan): 72446 (WebCore::HTMLPreloadScanner::processToken): 72447 * html/HTMLPreloadScanner.h: 72448 * html/HTMLTokenizer.h: 72449 (WebCore::HTMLTokenizer::create): 72450 * html/HTMLViewSourceParser.cpp: 72451 (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): 72452 (WebCore::HTMLViewSourceParser::pumpTokenizer): 72453 (WebCore::HTMLViewSourceParser::updateTokenizerState): 72454 * html/HTMLViewSourceParser.h: 72455 72456 2010-08-24 Adam Barth <abarth (a] webkit.org> 72457 72458 Reviewed by Darin Adler. 72459 72460 Remove references to LegacyHTMLTreebuilder from HTMLTreeBuilder 72461 https://bugs.webkit.org/show_bug.cgi?id=44544 72462 72463 * html/HTMLDocumentParser.cpp: 72464 * html/HTMLDocumentParser.h: 72465 * html/HTMLTreeBuilder.cpp: 72466 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 72467 (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): 72468 (WebCore::HTMLTreeBuilder::FragmentParsingContext::document): 72469 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 72470 (WebCore::HTMLTreeBuilder::finished): 72471 * html/HTMLTreeBuilder.h: 72472 (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): 72473 72474 2010-08-24 Xan Lopez <xlopez (a] igalia.com> 72475 72476 Try to fix GTK+ build. 72477 72478 Move GTK_API_VERSION_2 define out. 72479 72480 * GNUmakefile.am: 72481 72482 2010-08-24 Simon Fraser <simon.fraser (a] apple.com> 72483 72484 Reviewed by Sam Weinig. 72485 72486 TreeWalker traversal order is wrong when skipping and rejecting 72487 https://bugs.webkit.org/show_bug.cgi?id=44377 72488 72489 TreeWalker's nextSibling() and previousSibling() behaved incorrectly 72490 when traversing down a subtree where all nodes are skipped; it backed all 72491 the way up to the root of the subtree, then jump to the subtree's parentNode. 72492 This would skip later siblings. 72493 72494 Fix by resetting 'node' when traversing to children so that node = node->parentNode() 72495 gets the correct node later. 72496 72497 Test: fast/dom/TreeWalker/traversal-skip-most.html 72498 72499 * dom/TreeWalker.cpp: 72500 (WebCore::TreeWalker::previousSibling): 72501 (WebCore::TreeWalker::nextSibling): 72502 72503 2010-08-24 Hans Wennborg <hans (a] chromium.org> 72504 72505 Reviewed by Steve Block. 72506 72507 Remove null-checks from DeviceOrientationController 72508 https://bugs.webkit.org/show_bug.cgi?id=44504 72509 72510 Remove checks for m_client being NULL from DeviceOrientationController. 72511 It will never be NULL, and this is checked by an ASSERT on construction. 72512 72513 Will be covered by layout tests for device orientation. 72514 72515 * dom/DeviceOrientationController.cpp: 72516 (WebCore::DeviceOrientationController::timerFired): 72517 (WebCore::DeviceOrientationController::addListener): 72518 (WebCore::DeviceOrientationController::removeListener): 72519 (WebCore::DeviceOrientationController::removeAllListeners): 72520 72521 2010-08-24 Stephen White <senorblanco (a] chromium.org> 72522 72523 Reviewed by Kenneth Russell. 72524 72525 Fix accelerated 2d canvas with accelerated compositing off. 72526 https://bugs.webkit.org/show_bug.cgi?id=44525 72527 72528 Tested by running with --enable-accelerated-2d-canvas with 72529 --enable-accelerated-compositing off. 72530 ImageBuffer::copyImage changes covered by 72531 LayoutTests/fast/canvas/canvas-pattern-*.html. 72532 72533 * html/HTMLCanvasElement.cpp: 72534 (WebCore::HTMLCanvasElement::paint): 72535 Extend the accelerated compositing check and the readback for 72536 non-accelerated compositing to accelerated 2D canvas also. 72537 * html/canvas/CanvasRenderingContext.cpp: 72538 * html/canvas/CanvasRenderingContext.h: 72539 (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer): 72540 Move this logic from WebGL to common canvas context code. 72541 * html/canvas/WebGLRenderingContext.h: 72542 Remove implementation of paintsIntoCanvasBuffer. 72543 * platform/graphics/skia/ImageBufferSkia.cpp: 72544 (WebCore::ImageBuffer::copyImage): 72545 When copying the image for patterns, sync the software canvas. 72546 * platform/graphics/skia/PlatformContextSkia.cpp: 72547 (WebCore::PlatformContextSkia::prepareForSoftwareDraw): 72548 Use SkDevice::eraseColor() to clear the canvas for mixed mode rendering. 72549 72550 2010-08-24 Adam Barth <abarth (a] webkit.org> 72551 72552 Reviewed by Eric Seidel. 72553 72554 Deploy adoptPtr in WebCore/editing 72555 https://bugs.webkit.org/show_bug.cgi?id=44501 72556 72557 * editing/Editor.cpp: 72558 (WebCore::Editor::Editor): 72559 * editing/TextIterator.cpp: 72560 (WebCore::plainTextToMallocAllocatedBuffer): 72561 72562 2010-08-24 Adam Barth <abarth (a] webkit.org> 72563 72564 Reviewed by Eric Seidel. 72565 72566 Deploy adoptPtr in WebCore/history 72567 https://bugs.webkit.org/show_bug.cgi?id=44502 72568 72569 * history/HistoryItem.cpp: 72570 (WebCore::HistoryItem::HistoryItem): 72571 (WebCore::HistoryItem::addRedirectURL): 72572 72573 2010-08-24 Adam Barth <abarth (a] webkit.org> 72574 72575 Reviewed by Eric Seidel. 72576 72577 Partial deployment of adoptPtr to WebCore/html 72578 https://bugs.webkit.org/show_bug.cgi?id=44507 72579 72580 Deploy adoptPtr to some more places in WebCore/html. The big chunk 72581 that I haven't done yet is createRenderer, but that's going to be a big 72582 patch unto itself. 72583 72584 * html/HTMLFormCollection.cpp: 72585 (WebCore::HTMLFormCollection::formCollectionInfo): 72586 * html/HTMLFormElement.cpp: 72587 (WebCore::HTMLFormElement::addElementAlias): 72588 * html/HTMLInputElement.cpp: 72589 (WebCore::createTypeMap): 72590 (WebCore::HTMLInputElement::setInputType): 72591 (WebCore::HTMLInputElement::parseMappedAttribute): 72592 (WebCore::HTMLInputElement::attach): 72593 (WebCore::HTMLInputElement::preDispatchEventHandler): 72594 * html/HTMLObjectElement.cpp: 72595 (WebCore::HTMLObjectElement::parseMappedAttribute): 72596 (WebCore::HTMLObjectElement::attach): 72597 * html/HTMLToken.h: 72598 (WebCore::HTMLToken::beginDOCTYPE): 72599 * html/HTMLVideoElement.cpp: 72600 (WebCore::HTMLVideoElement::attach): 72601 (WebCore::HTMLVideoElement::parseMappedAttribute): 72602 * html/ValidityState.h: 72603 (WebCore::ValidityState::create): 72604 72605 2010-08-24 Adam Barth <abarth (a] webkit.org> 72606 72607 Reviewed by Eric Seidel. 72608 72609 Partial deployment of adoptPtr to WebCore/html 72610 https://bugs.webkit.org/show_bug.cgi?id=44507 72611 72612 There's a lot of places that need adoptPtr in WebCore/html. This patch 72613 does some of them. More will follow. 72614 72615 * html/FileThreadTask.h: 72616 (WebCore::FileThreadTask0::create): 72617 (WebCore::FileThreadTask1::create): 72618 (WebCore::FileThreadTask2::create): 72619 (WebCore::FileThreadTask3::create): 72620 * html/HTMLAreaElement.cpp: 72621 (WebCore::HTMLAreaElement::mapMouseEvent): 72622 * html/HTMLCanvasElement.cpp: 72623 (WebCore::HTMLCanvasElement::getContext): 72624 * html/HTMLElementStack.cpp: 72625 (WebCore::HTMLElementStack::insertAbove): 72626 (WebCore::HTMLElementStack::pushCommon): 72627 * html/HTMLEmbedElement.cpp: 72628 (WebCore::HTMLEmbedElement::parseMappedAttribute): 72629 (WebCore::HTMLEmbedElement::attach): 72630 72631 2010-08-24 Sam Weinig <sam (a] webkit.org> 72632 72633 Reviewed by Simon Fraser. 72634 72635 Improve comment for Simon. 72636 72637 * editing/Editor.h: 72638 72639 2010-08-24 Sam Weinig <sam (a] webkit.org> 72640 72641 Reviewed by Oliver Hunt. 72642 72643 Paste event fires twice for mac WebKit 72644 <rdar://problem/8094611> 72645 https://bugs.webkit.org/show_bug.cgi?id=44535 72646 72647 The mac implementation of paste in WebKit was accidentally calling 72648 Editor::tryDHTMLPaste twice, once in -[WebHTMLView paste:] and once 72649 in Editor::pasteAsPlainText (which is called by -[WebHTMLView paste:]). 72650 Use the new pasteAsPlainTextBypassingDHTML function to bypass the 72651 second call. 72652 72653 Test: editing/pasteboard/paste-event-only-once.html 72654 72655 * WebCore.exp.in: 72656 * editing/Editor.cpp: 72657 (WebCore::Editor::pasteAsPlainTextBypassingDHTML): 72658 * editing/Editor.h: 72659 Expose a function which just pastes using from the general pasteboard, 72660 bypassing all the checking and DHTML pasting. 72661 72662 2010-08-24 Nate Chapin <japhet (a] chromium.org> 72663 72664 Unreviewed. 72665 72666 Chromium build fix (add a #include missing in PingLoader.cpp) 72667 72668 * loader/PingLoader.cpp: 72669 72670 2010-08-24 Nate Chapin <japhet (a] chromium.org> 72671 72672 Reviewed by David Levin. 72673 72674 Allow image loads triggered from unload handlers to run entirely 72675 independently of any other loads or navigations. 72676 72677 https://bugs.webkit.org/show_bug.cgi?id=30457 72678 72679 Test: http/tests/navigation/image-load-in-unload-handler.html 72680 72681 * Android.mk: 72682 * CMakeLists.txt: 72683 * GNUmakefile.am: 72684 * WebCore.gypi: 72685 * WebCore.pro: 72686 * WebCore.vcproj/WebCore.vcproj: 72687 * WebCore.xcodeproj/project.pbxproj: 72688 * loader/DocLoader.cpp: 72689 (WebCore::DocLoader::requestImage): Use PingLoader for image 72690 loads in unload handlers. 72691 * loader/FrameLoader.h: 72692 (WebCore::FrameLoader::pageDismissalEventBeingDispatched): 72693 * loader/PingLoader.cpp: Added. 72694 (WebCore::PingLoader::loadImage): Set the appropriate 72695 headers for an image load in unload handler (since we're 72696 not using SubresourceLoader, we need to do this manually here). 72697 (WebCore::PingLoader::PingLoader): 72698 * loader/PingLoader.h: Added. 72699 (WebCore::PingLoader::~PingLoader): 72700 (WebCore::PingLoader::didReceiveResponse): 72701 (WebCore::PingLoader::didReceiveData): 72702 (WebCore::PingLoader::didFinishLoading): 72703 (WebCore::PingLoader::didFail): 72704 72705 2010-08-24 Pavel Feldman <pfeldman (a] chromium.org> 72706 72707 Reviewed by Yury Semikhatsky. 72708 72709 Web Inspector: Trace to the style that contributes to 72710 the computed styles panel. 72711 https://bugs.webkit.org/show_bug.cgi?id=44448 72712 72713 Test: inspector/styles-computed-trace.html 72714 72715 * English.lproj/localizedStrings.js: 72716 * inspector/front-end/Section.js: 72717 (WebInspector.Section.prototype.set subtitle): 72718 (WebInspector.Section.prototype.get subtitleAsTextForTest): 72719 * inspector/front-end/StylesSidebarPane.js: 72720 (WebInspector.StylesSidebarPane.prototype._refreshUpdate): 72721 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate): 72722 (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules): 72723 (WebInspector.StylesSidebarPane.prototype._refreshSectionsForStyleRules): 72724 (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules): 72725 (WebInspector.StylePropertiesSection.linkifyUncopyable): 72726 (WebInspector.StylePropertiesSection): 72727 (WebInspector.StylePropertiesSection.prototype.isPropertyInherited): 72728 (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded): 72729 (WebInspector.StylePropertiesSection.prototype.isPropertyDisabled): 72730 (WebInspector.StylePropertiesSection.prototype.update): 72731 (WebInspector.StylePropertiesSection.prototype.onpopulate): 72732 (WebInspector.ComputedStylePropertiesSection): 72733 (WebInspector.ComputedStylePropertiesSection.prototype.collapse): 72734 (WebInspector.ComputedStylePropertiesSection.prototype._isPropertyInherited): 72735 (WebInspector.ComputedStylePropertiesSection.prototype.update): 72736 (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate): 72737 (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace): 72738 (WebInspector.BlankStylePropertiesSection): 72739 * inspector/front-end/inspector.css: 72740 (.styles-section a::before): 72741 * inspector/front-end/inspector.js: 72742 (WebInspector.documentClick.followLink): 72743 (WebInspector.documentClick): 72744 (WebInspector.linkifyResourceAsNode): 72745 72746 2010-08-24 Daniel Cheng <dcheng (a] chromium.org> 72747 72748 Reviewed by Eric Seidel. 72749 72750 [chromium] Generate drag images for HTML elements and selections. 72751 https://bugs.webkit.org/show_bug.cgi?id=43449 72752 72753 We weren't properly generating drag images if an HTML element was set 72754 as the drag feedback image. I also implemented dragImageForSelection 72755 while I was working on this part of the code. 72756 72757 No new tests. 72758 72759 * WebCore.exp.in: 72760 * bindings/objc/DOM.mm: 72761 (-[DOMNode renderedImage]): 72762 * page/Frame.h: 72763 * page/brew/FrameBrew.cpp: 72764 (WebCore::Frame::nodeImage): 72765 * page/chromium/FrameChromium.cpp: 72766 (WebCore::): 72767 (WebCore::Frame::nodeImage): 72768 (WebCore::Frame::dragImageForSelection): 72769 * page/efl/FrameEfl.cpp: 72770 (WebCore::Frame::nodeImage): 72771 * page/gtk/FrameGtk.cpp: 72772 (WebCore::Frame::nodeImage): 72773 * page/haiku/FrameHaiku.cpp: 72774 (WebCore::Frame::nodeImage): 72775 * page/mac/FrameMac.mm: 72776 (WebCore::Frame::nodeImage): 72777 (WebCore::Frame::dragImageForSelection): 72778 * page/qt/FrameQt.cpp: 72779 (WebCore::Frame::nodeImage): 72780 (WebCore::Frame::dragImageForSelection): 72781 * page/win/FrameCGWin.cpp: 72782 (WebCore::Frame::nodeImage): 72783 * page/win/FrameCairoWin.cpp: 72784 (WebCore::Frame::nodeImage): 72785 * page/wince/FrameWince.cpp: 72786 (WebCore::Frame::nodeImage): 72787 * page/wx/FrameWx.cpp: 72788 (WebCore::Frame::nodeImage): 72789 * platform/chromium/ClipboardChromium.cpp: 72790 (WebCore::ClipboardChromium::createDragImage): 72791 * rendering/RenderObject.cpp: 72792 (WebCore::RenderObject::selectionForegroundColor): 72793 72794 2010-08-24 Jeremy Orlow <jorlow (a] chromium.org> 72795 72796 Reviewed by Steve Block. 72797 72798 IndexedDB needs to manually delete all objectStore data and indexes 72799 https://bugs.webkit.org/show_bug.cgi?id=44522 72800 72801 Apparently it's only newer versions of SQLite that handle cascade 72802 delete. The rest silently fail. So do it manually. 72803 72804 Test: storage/indexeddb/objectstore-removeobjectstore.html 72805 72806 * storage/IDBDatabaseBackendImpl.cpp: 72807 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 72808 (WebCore::doDelete): 72809 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 72810 * storage/IDBDatabaseBackendImpl.h: 72811 * storage/IDBFactoryBackendImpl.cpp: 72812 (WebCore::createTables): 72813 * storage/IDBObjectStoreBackendImpl.cpp: 72814 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 72815 * storage/IDBObjectStoreBackendImpl.h: 72816 (WebCore::IDBObjectStoreBackendImpl::create): 72817 (WebCore::IDBObjectStoreBackendImpl::id): 72818 72819 2010-08-23 Sam Weinig <sam (a] webkit.org> 72820 72821 Reviewed by Adam Barth. 72822 72823 Fix for <rdar://problem/8153271> and <rdar://problem/8153288> 72824 Change behavior of javascript: urls in <embed> and <object> back to 72825 how they behaved before r50698. 72826 72827 Tests: fast/loader/javascript-url-in-embed.html 72828 fast/loader/javascript-url-in-object.html 72829 72830 * loader/SubframeLoader.cpp: 72831 (WebCore::SubframeLoader::requestFrame): 72832 (WebCore::SubframeLoader::requestObject): 72833 (WebCore::SubframeLoader::loadOrRedirectSubframe): 72834 * loader/SubframeLoader.h: 72835 72836 2010-08-24 Xan Lopez <xlopez (a] igalia.com> 72837 72838 Reviewed by Gustavo Noronha. 72839 72840 Update code to compile with latest GTK+ 3.x. 72841 72842 * platform/gtk/gtk2drawing.c: 72843 (TSOffsetStyleGCs): 72844 (moz_gtk_entry_paint): 72845 * plugins/gtk/gtk2xtbin.c: 72846 (gtk_xtbin_new): 72847 72848 2010-08-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 72849 72850 Reviewed by Dirk Schulze. 72851 72852 -webkit-svg-shadow doesn't repaint on changes 72853 https://bugs.webkit.org/show_bug.cgi?id=44521 72854 72855 Trivial fix, to make -webkit-svg-shadow react on changes. 72856 72857 Test: svg/css/shadow-changes.svg 72858 72859 * rendering/style/SVGRenderStyle.cpp: 72860 (WebCore::SVGRenderStyle::diff): If 'svgShadow' is not equal, cause a repaint. 72861 72862 2010-08-24 Dirk Schulze <krit (a] webkit.org> 72863 72864 Reviewed by Nikolas Zimmermann. 72865 72866 Cg logs "<Error>: CGPathCloseSubpath: no current point. " in lots of tests 72867 https://bugs.webkit.org/show_bug.cgi?id=43026 72868 72869 Check if the path is empty before closing it. 72870 72871 * svg/SVGPathBuilder.cpp: 72872 (WebCore::SVGPathBuilder::moveTo): 72873 72874 2010-08-24 Marcus Bulach <bulach (a] chromium.org> 72875 72876 Reviewed by Jeremy Orlow. 72877 72878 Hooks IDBKeyPath with IDBObjectStorage::put. 72879 https://bugs.webkit.org/show_bug.cgi?id=44275 72880 72881 Adds a mechanism to extract an IDBKey from SerializedScriptValue using IDBKeyPath 72882 during IDBObjectStorage::put. 72883 72884 * WebCore.gyp/WebCore.gyp: 72885 * WebCore.gypi: 72886 * platform/chromium/ChromiumBridge.h: 72887 * storage/IDBKeyPathBackendImpl.cpp: Added. 72888 (IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath): 72889 * storage/IDBKeyPathBackendImpl.h: Added. 72890 * storage/IDBObjectStoreBackendImpl.cpp: 72891 (WebCore::IDBObjectStoreBackendImpl::put): 72892 * storage/chromium/IDBKeyPathBackendImpl.cpp: Added. 72893 (WebCore::IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath): 72894 72895 2010-08-24 Ilya Tikhonovsky <loislo (a] chromium.org> 72896 72897 Reviewed by Pavel Feldman. 72898 72899 WebInspector: RemoteInspectorFrontend can be renamed to InspectorFrontend. 72900 The old version of InspectorFrontend was removed some time ago and now 72901 it is possible to rename the new version of inspector frontend class to its 72902 original name. 72903 https://bugs.webkit.org/show_bug.cgi?id=44499 72904 72905 * GNUmakefile.am: 72906 * WebCore.gyp/WebCore.gyp: 72907 * WebCore.pri: 72908 * WebCore.vcproj/WebCore.vcproj: 72909 * WebCore.xcodeproj/project.pbxproj: 72910 * inspector/CodeGeneratorInspector.pm: 72911 * inspector/ConsoleMessage.cpp: 72912 (WebCore::ConsoleMessage::addToFrontend): 72913 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 72914 * inspector/ConsoleMessage.h: 72915 * inspector/InjectedScriptHost.cpp: 72916 (WebCore::InjectedScriptHost::pushNodePathToFrontend): 72917 (WebCore::InjectedScriptHost::frontend): 72918 * inspector/InjectedScriptHost.h: 72919 * inspector/InspectorApplicationCacheAgent.cpp: 72920 (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent): 72921 * inspector/InspectorApplicationCacheAgent.h: 72922 * inspector/InspectorBackend.cpp: 72923 (WebCore::InspectorBackend::dispatchOnInjectedScript): 72924 (WebCore::InspectorBackend::frontend): 72925 * inspector/InspectorBackend.h: 72926 * inspector/InspectorCSSStore.cpp: 72927 * inspector/InspectorCSSStore.h: 72928 * inspector/InspectorController.cpp: 72929 (WebCore::InspectorController::inspectedPageDestroyed): 72930 (WebCore::InspectorController::inspect): 72931 (WebCore::InspectorController::focusNode): 72932 (WebCore::InspectorController::windowVisible): 72933 (WebCore::InspectorController::addConsoleMessage): 72934 (WebCore::InspectorController::clearConsoleMessages): 72935 (WebCore::InspectorController::inspectedWindowScriptObjectCleared): 72936 (WebCore::InspectorController::setSearchingForNode): 72937 (WebCore::InspectorController::setMonitoringXHR): 72938 (WebCore::InspectorController::connectFrontend): 72939 (WebCore::InspectorController::show): 72940 (WebCore::InspectorController::showPanel): 72941 (WebCore::InspectorController::close): 72942 (WebCore::InspectorController::disconnectFrontend): 72943 (WebCore::InspectorController::populateScriptObjects): 72944 (WebCore::InspectorController::pruneResources): 72945 (WebCore::InspectorController::didCommitLoad): 72946 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 72947 (WebCore::InspectorController::identifierForInitialRequest): 72948 (WebCore::InspectorController::mainResourceFiredDOMContentEvent): 72949 (WebCore::InspectorController::mainResourceFiredLoadEvent): 72950 (WebCore::InspectorController::willSendRequest): 72951 (WebCore::InspectorController::didReceiveResponse): 72952 (WebCore::InspectorController::didReceiveContentLength): 72953 (WebCore::InspectorController::didFinishLoading): 72954 (WebCore::InspectorController::didFailLoading): 72955 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 72956 (WebCore::InspectorController::scriptImported): 72957 (WebCore::InspectorController::enableResourceTracking): 72958 (WebCore::InspectorController::disableResourceTracking): 72959 (WebCore::InspectorController::startTimelineProfiler): 72960 (WebCore::InspectorController::stopTimelineProfiler): 72961 (WebCore::InspectorController::postWorkerNotificationToFrontend): 72962 (WebCore::InspectorController::didCreateWorker): 72963 (WebCore::InspectorController::didDestroyWorker): 72964 (WebCore::InspectorController::selectDatabase): 72965 (WebCore::InspectorController::didOpenDatabase): 72966 (WebCore::InspectorController::didUseDOMStorage): 72967 (WebCore::InspectorController::selectDOMStorage): 72968 (WebCore::InspectorController::enableDebuggerFromFrontend): 72969 (WebCore::InspectorController::enableDebugger): 72970 (WebCore::InspectorController::disableDebugger): 72971 (WebCore::InspectorController::evaluateForTestInFrontend): 72972 * inspector/InspectorController.h: 72973 (WebCore::InspectorController::hasFrontend): 72974 * inspector/InspectorDOMAgent.cpp: 72975 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 72976 * inspector/InspectorDOMAgent.h: 72977 (WebCore::InspectorDOMAgent::create): 72978 * inspector/InspectorDOMStorageResource.cpp: 72979 (WebCore::InspectorDOMStorageResource::bind): 72980 * inspector/InspectorDOMStorageResource.h: 72981 * inspector/InspectorDatabaseResource.cpp: 72982 (WebCore::InspectorDatabaseResource::bind): 72983 * inspector/InspectorDatabaseResource.h: 72984 * inspector/InspectorDebuggerAgent.cpp: 72985 (WebCore::InspectorDebuggerAgent::create): 72986 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 72987 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): 72988 (WebCore::InspectorDebuggerAgent::didParseSource): 72989 (WebCore::InspectorDebuggerAgent::failedToParseSource): 72990 (WebCore::InspectorDebuggerAgent::didPause): 72991 (WebCore::InspectorDebuggerAgent::didContinue): 72992 * inspector/InspectorDebuggerAgent.h: 72993 * inspector/InspectorProfilerAgent.cpp: 72994 (WebCore::InspectorProfilerAgent::InspectorProfilerAgent): 72995 (WebCore::InspectorProfilerAgent::addProfile): 72996 (WebCore::InspectorProfilerAgent::disable): 72997 (WebCore::InspectorProfilerAgent::enable): 72998 (WebCore::InspectorProfilerAgent::resetState): 72999 (WebCore::InspectorProfilerAgent::toggleRecordButton): 73000 * inspector/InspectorProfilerAgent.h: 73001 (WebCore::InspectorProfilerAgent::setFrontend): 73002 * inspector/InspectorResource.cpp: 73003 (WebCore::InspectorResource::updateScriptObject): 73004 (WebCore::InspectorResource::releaseScriptObject): 73005 * inspector/InspectorResource.h: 73006 * inspector/InspectorStorageAgent.cpp: 73007 (WebCore::InspectorStorageAgent::InspectorStorageAgent): 73008 * inspector/InspectorStorageAgent.h: 73009 (WebCore::InspectorStorageAgent::create): 73010 (WebCore::InspectorStorageAgent::frontend): 73011 * inspector/InspectorTimelineAgent.cpp: 73012 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 73013 (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): 73014 * inspector/InspectorTimelineAgent.h: 73015 73016 2010-08-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 73017 73018 Reviewed by Dirk Schulze. 73019 73020 Markers don't render, when applied to a target using vector-effect="non-scaling-stroke" 73021 https://bugs.webkit.org/show_bug.cgi?id=44511 73022 73023 Make fillAndStrokePath a member function of RenderPath, to avoid having to pass the const Path& and this paramters. 73024 Don't leave the GraphicsContext mutated after applying non-scaling-stroke transformation, otherwhise markers will be renderer 73025 in the wrong coordinate space, and thus don't show up anymore. 73026 73027 Test: svg/custom/non-scaling-stroke-markers.svg 73028 73029 * rendering/RenderPath.cpp: 73030 (WebCore::RenderPath::fillAndStrokePath): 73031 (WebCore::RenderPath::paint): 73032 * rendering/RenderPath.h: 73033 73034 2010-08-24 Adam Barth <abarth (a] webkit.org> 73035 73036 Reviewed by Kenneth Rohde Christiansen. 73037 73038 Remove wrong code from Qt that's dumping extra markup into the clipboard 73039 https://bugs.webkit.org/show_bug.cgi?id=44506 73040 73041 I have no way of testing this patch, but hopefully it should fix a 73042 bunch of newly failing tests. This code seems very confused. 73043 73044 * platform/qt/PasteboardQt.cpp: 73045 (WebCore::Pasteboard::writeSelection): 73046 73047 2010-08-24 Pavel Podivilov <podivilov (a] chromium.org> 73048 73049 Reviewed by Yury Semikhatsky. 73050 73051 Web Inspector: fix gcc warnings introduced in 65731 73052 https://bugs.webkit.org/show_bug.cgi?id=44468 73053 73054 * inspector/InspectorDOMAgent.cpp: 73055 (WebCore::InspectorDOMAgent::didInsertDOMNode): 73056 (WebCore::InspectorDOMAgent::pauseOnBreakpoint): 73057 73058 2010-08-24 Ariya Hidayat <ariya (a] sencha.com> 73059 73060 Reviewed by Simon Hausmann. 73061 73062 [Qt] Blur shadow for rectangle fill 73063 https://bugs.webkit.org/show_bug.cgi?id=44488 73064 73065 Refactor fillRect() function to support blur radius in the shadow. 73066 73067 * platform/graphics/qt/GraphicsContextQt.cpp: 73068 (WebCore::GraphicsContext::fillRect): 73069 73070 2010-08-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 73071 73072 Reviewed by Dirk Schulze 73073 73074 clip-path does not work inside mask element 73075 https://bugs.webkit.org/show_bug.cgi?id=41428 73076 73077 Add new tests covering nesting of clippers and maskers, with different unitTypes for the content coordinate system. 73078 Scale all ImageBuffer content to take into account that ImageBuffers use integer based sizes, where the content 73079 is floating-point sized. This compensates rounded errors, when scaling the document. 73080 73081 Tests: svg/clip-path/clip-in-mask-objectBoundingBox.svg 73082 svg/clip-path/clip-in-mask-userSpaceOnUse.svg 73083 svg/clip-path/clip-in-mask.svg 73084 svg/clip-path/deep-nested-clip-in-mask-different-unitTypes.svg 73085 svg/clip-path/deep-nested-clip-in-mask-panning.svg 73086 svg/clip-path/deep-nested-clip-in-mask.svg 73087 svg/clip-path/nested-clip-in-mask-image-based-clipping.svg 73088 svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping.svg 73089 svg/clip-path/nested-clip-in-mask-path-based-clipping.svg 73090 73091 * rendering/RenderSVGResourceClipper.cpp: 73092 (WebCore::RenderSVGResourceClipper::applyResource): Return the value of applyClippingToContext, instead of always true. 73093 (WebCore::RenderSVGResourceClipper::applyClippingToContext): Moved some code from createClipData, to avoid having to pass 5 arguments to createClipData. 73094 (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): Renamed from createClipData. 73095 * rendering/RenderSVGResourceClipper.h: 73096 * rendering/RenderSVGResourceGradient.cpp: 73097 (WebCore::createMaskAndSwapContextForTextGradient): Pass absoluteTargetRect to createImageBuffer. 73098 (WebCore::clipToTextMask): Ditto. 73099 * rendering/RenderSVGResourceMasker.cpp: 73100 (WebCore::RenderSVGResourceMasker::applyResource): Ditto. 73101 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Pass content transformation to renderSubtreeToImageBuffer, to support nesting objectBoundingBox resources. 73102 * rendering/RenderSVGResourcePattern.cpp: 73103 (WebCore::RenderSVGResourcePattern::applyResource): Adapt to calculateTransformationToOutermostSVGCoordinateSystem changes. AffineTransform is now passed as reference. 73104 (WebCore::RenderSVGResourcePattern::createTileImage): ImageBuffer content scaling is now handled by createImageBuffer. 73105 * rendering/SVGImageBufferTools.cpp: 73106 (WebCore::SVGImageBufferTools::calculateTransformationToOutermostSVGCoordinateSystem): Renamed. Don't return an AffineTransform copy, but instead pass it as reference. 73107 (WebCore::SVGImageBufferTools::createImageBuffer): Always scale the ImageBuffer content, to compensate rounding effects (code was only present in patterns so far). 73108 Now also needs the 'absoluteTargetRect' parameter, not only 'clampedAbsoluteTargetRect'. 73109 (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer): Moved from SVGRenderSupport. 73110 (WebCore::SVGImageBufferTools::clipToImageBuffer): Pass ImageBuffer as OwnPtr reference, to allow to clear it under certain circumstances (see comment). 73111 (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): Remove AffineTransform parameter, absoluteTargetRect is calculated before passing into this function. 73112 * rendering/SVGImageBufferTools.h: 73113 * rendering/SVGRenderSupport.cpp: 73114 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Important change, respect the RenderSVGResourceClipper::applyResource() return value! 73115 * rendering/SVGRenderSupport.h: 73116 * svg/SVGFEImageElement.cpp: 73117 (WebCore::SVGFEImageElement::build): renderSubtreeToImage now lives in SVGImageBufferTools, adapt code. 73118 73119 2010-08-24 Andrei Popescu <andreip (a] dhcp-172-16-14-12.lon.corp.google.com> 73120 73121 Reviewed by Jeremy Orlow. 73122 73123 [IndexedDB] IDBTransaction is missing the implementation for objectStore method 73124 https://bugs.webkit.org/show_bug.cgi?id=44446 73125 73126 * storage/IDBDatabaseBackendImpl.cpp: 73127 (WebCore::IDBDatabaseBackendImpl::transaction): 73128 * storage/IDBTransactionBackendImpl.cpp: 73129 (WebCore::IDBTransactionBackendImpl::create): 73130 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 73131 (WebCore::IDBTransactionBackendImpl::objectStore): 73132 * storage/IDBTransactionBackendImpl.h: 73133 * storage/IDBTransactionCoordinator.cpp: 73134 (WebCore::IDBTransactionCoordinator::createTransaction): 73135 * storage/IDBTransactionCoordinator.h: 73136 73137 2010-08-24 Andreas Kling <andreas.kling (a] nokia.com> 73138 73139 Reviewed by Tor Arne Vestb. 73140 73141 Disallow setting Document.xmlVersion to unsupported versions 73142 https://bugs.webkit.org/show_bug.cgi?id=44494 73143 73144 Added XMLDocumentParser::supportsXMLVersion() - only returns true for "1.0" 73145 in both implementations. 73146 73147 * dom/Document.cpp: 73148 (WebCore::Document::setXMLVersion): Throw NOT_SUPPORTED_ERR 73149 if XMLDocumentParser::supportsXMLVersion() returns false for the version. 73150 * dom/XMLDocumentParser.h: 73151 * dom/XMLDocumentParserLibxml2.cpp: 73152 (WebCore::XMLDocumentParser::supportsXMLVersion): 73153 * dom/XMLDocumentParserQt.cpp: 73154 (WebCore::XMLDocumentParser::supportsXMLVersion): 73155 73156 2010-08-24 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 73157 73158 Reviewed by Simon Hausmann. 73159 73160 [Qt][Symbian] Make sure WebKit headers are included before platform headers on Symbian 73161 https://bugs.webkit.org/show_bug.cgi?id=31273 73162 73163 On Symbian PREPEND_INCLUDEPATH is the best way to make sure that 73164 WebKit headers are included before platform headers. On all other 73165 platforms continue to use INCLUDEPATH (as before). 73166 73167 This patch also removed the workarounds that are put in place 73168 now that we have a better solution. 73169 73170 No new tests as there is no new functionality. 73171 73172 * WebCore.pro: 73173 73174 2010-08-24 Ariya Hidayat <ariya (a] sencha.com> 73175 73176 Reviewed by Kenneth Rohde Christiansen. 73177 73178 [Qt] Support text-shadow blur 73179 https://bugs.webkit.org/show_bug.cgi?id=19728 73180 73181 Implement blur for text shadow using the shadow layer in r65782. 73182 73183 * platform/graphics/qt/ContextShadow.cpp: 73184 (WebCore::ContextShadow::beginShadowLayer): 73185 * platform/graphics/qt/FontQt.cpp: 73186 (WebCore::drawTextCommon): 73187 73188 2010-08-23 Andreas Kling <andreas.kling (a] nokia.com> 73189 73190 Reviewed by Tor Arne Vestb. 73191 73192 setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace 73193 https://bugs.webkit.org/show_bug.cgi?id=44432 73194 73195 Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html 73196 73197 * dom/Element.cpp: 73198 (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null 73199 and the qualifiedName has a prefix. 73200 73201 2010-08-24 Adam Barth <abarth (a] webkit.org> 73202 73203 Build fix. leakPtr doesn't exist, contrary to my dreams. 73204 73205 * storage/IDBKeyTree.h: 73206 (WebCore::::put): 73207 * storage/IDBPendingTransactionMonitor.cpp: 73208 (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): 73209 73210 2010-08-24 Adam Barth <abarth (a] webkit.org> 73211 73212 Reviewed by Eric Seidel. 73213 73214 Deploy adoptPtr in WebCore/storage 73215 https://bugs.webkit.org/show_bug.cgi?id=44491 73216 73217 There are still some naked news for a future patch. The next step is 73218 to make create methods. 73219 73220 * storage/Database.cpp: 73221 (WebCore::DatabaseCreationCallbackTask::create): 73222 (WebCore::DerefContextTask::create): 73223 (WebCore::DeliverPendingCallbackTask::create): 73224 * storage/DatabaseSync.cpp: 73225 (WebCore::CloseSyncDatabaseOnContextThreadTask::create): 73226 * storage/DatabaseTask.h: 73227 (WebCore::Database::DatabaseOpenTask::create): 73228 (WebCore::Database::DatabaseCloseTask::create): 73229 (WebCore::Database::DatabaseTransactionTask::create): 73230 (WebCore::Database::DatabaseTableNamesTask::create): 73231 * storage/DatabaseThread.cpp: 73232 (WebCore::DatabaseThread::DatabaseThread): 73233 * storage/DatabaseTracker.cpp: 73234 (WebCore::DatabaseTracker::populateOrigins): 73235 (WebCore::DatabaseTracker::addOpenDatabase): 73236 * storage/IDBKeyTree.h: 73237 (WebCore::::put): 73238 * storage/IDBPendingTransactionMonitor.cpp: 73239 (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): 73240 * storage/LocalStorageTask.h: 73241 (WebCore::LocalStorageTask::createImport): 73242 (WebCore::LocalStorageTask::createSync): 73243 (WebCore::LocalStorageTask::createDeleteEmptyDatabase): 73244 (WebCore::LocalStorageTask::createTerminate): 73245 * storage/LocalStorageThread.cpp: 73246 (WebCore::LocalStorageThread::create): 73247 * storage/SQLTransaction.cpp: 73248 (WebCore::SQLTransaction::openTransactionAndPreflight): 73249 * storage/SQLTransactionSync.cpp: 73250 (WebCore::SQLTransactionSync::SQLTransactionSync): 73251 (WebCore::SQLTransactionSync::begin): 73252 * storage/StorageNamespaceImpl.cpp: 73253 (WebCore::StorageNamespaceImpl::copy): 73254 73255 2010-08-24 Ilya Tikhonovsky <loislo (a] chromium.org> 73256 73257 Reviewed by Yury Semikhatsky. 73258 73259 WebInspector: setAttachedWindow was modified at r65809 but it should be implemented another way. 73260 https://bugs.webkit.org/show_bug.cgi?id=44493 73261 73262 * inspector/Inspector.idl: 73263 * inspector/InspectorController.cpp: 73264 * inspector/InspectorController.h: 73265 * inspector/InspectorFrontendClientLocal.cpp: 73266 (WebCore::InspectorFrontendClientLocal::setAttachedWindow): 73267 73268 2010-08-23 Eric Seidel <eric (a] webkit.org> 73269 73270 Reviewed by Adam Barth. 73271 73272 Use new HTML5 TreeBuilder for fragment parsing 73273 https://bugs.webkit.org/show_bug.cgi?id=44475 73274 73275 The HTML5 TreeBuilder is ready to be used for all parsing 73276 including fragments! This is the last change to move trunk 73277 off of the LegacyHTMLTreeBuilder. We'll go through and 73278 delete the thousands of lines of code supporting the old 73279 parser in a separate patch. 73280 73281 This is covered by many layout tests. 73282 73283 * html/HTMLTreeBuilder.cpp: 73284 73285 2010-08-23 Adam Barth <abarth (a] webkit.org> 73286 73287 Reviewed by Eric Seidel. 73288 73289 HTMLScriptRunner::create 73290 https://bugs.webkit.org/show_bug.cgi?id=44474 73291 73292 * html/HTMLDocumentParser.cpp: 73293 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 73294 * html/HTMLScriptRunner.h: 73295 (WebCore::HTMLScriptRunner::create): 73296 73297 2010-08-23 Adam Barth <abarth (a] webkit.org> 73298 73299 Reviewed by Eric Seidel. 73300 73301 HTMLTreeBuilder should use adoptPtr 73302 https://bugs.webkit.org/show_bug.cgi?id=44473 73303 73304 We should really use this pattern everywhere. 73305 73306 * html/HTMLDocumentParser.cpp: 73307 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 73308 * html/HTMLTreeBuilder.h: 73309 (WebCore::HTMLTreeBuilder::create): 73310 73311 2010-08-23 Patrick Gansterer <paroga (a] paroga.com> 73312 73313 Reviewed by Adam Roben. 73314 73315 Set the ResourceResponse HTTP headers in RessourceHandleWin 73316 https://bugs.webkit.org/show_bug.cgi?id=44444 73317 73318 * platform/network/win/ResourceHandleWin.cpp: 73319 (WebCore::queryHTTPHeader): 73320 (WebCore::ResourceHandle::onRequestComplete): 73321 73322 2010-08-23 Patrick Gansterer <paroga (a] paroga.com> 73323 73324 Reviewed by Adam Roben. 73325 73326 Support all available biBitCount values in BitmapInfo 73327 https://bugs.webkit.org/show_bug.cgi?id=43724 73328 73329 Add an enum with all possible values for biBitCount. 73330 Also remove explicit initialization of bmiHeader members, 73331 because that is already done in the constructor. 73332 73333 * platform/win/BitmapInfo.cpp: Added property svn:eol-style. 73334 (WebCore::bitmapInfoForSize): 73335 (WebCore::BitmapInfo::create): 73336 (WebCore::BitmapInfo::createBottomUp): 73337 * platform/win/BitmapInfo.h: Added property svn:eol-style. 73338 (WebCore::BitmapInfo::): 73339 (WebCore::BitmapInfo::bytesPerLine): 73340 (WebCore::BitmapInfo::paddedBytesPerLine): 73341 (WebCore::BitmapInfo::paddedWidth): 73342 * platform/win/PopupMenuWin.cpp: 73343 (WebCore::PopupMenuWin::paint): 73344 73345 2010-08-23 Kent Tamura <tkent (a] chromium.org> 73346 73347 Unreviewed, build fix for r65852. 73348 73349 * rendering/RenderTextControlSingleLine.cpp: 73350 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): 73351 * rendering/TextControlInnerElements.cpp: 73352 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 73353 (WebCore::InputFieldSpeechButtonElement::create): 73354 * rendering/TextControlInnerElements.h: 73355 73356 2010-08-23 Ryosuke Niwa <rniwa (a] webkit.org> 73357 73358 Reviewed by Eric Seidel. 73359 73360 MarkupAccumulator::appendStartMarkup should be broken down into pieces 73361 https://bugs.webkit.org/show_bug.cgi?id=44288 73362 73363 Extracted appendText, appendComment, appendProcessingInstruction, appendElement and appendCDATASection. 73364 Also simplified the conditionals in appendText. 73365 73366 No new tests are added since this is a cleanup. 73367 73368 * editing/markup.cpp: 73369 (WebCore::MarkupAccumulator::appendText): 73370 (WebCore::MarkupAccumulator::appendComment): 73371 (WebCore::MarkupAccumulator::appendProcessingInstruction): 73372 (WebCore::MarkupAccumulator::appendElement): 73373 (WebCore::MarkupAccumulator::appendCDATASection): 73374 (WebCore::MarkupAccumulator::appendStartMarkup): 73375 73376 2010-08-23 Simon Fraser <simon.fraser (a] apple.com> 73377 73378 Reviewed by Alexey Proskuryakov. 73379 73380 TreeWalker is not calling acceptNode function in filter object 73381 https://bugs.webkit.org/show_bug.cgi?id=35296 73382 73383 Fix incorrect shadowing of the 'function' variable, which could result 73384 in badness when asking for arguments.callee. 73385 73386 * bindings/js/JSNodeFilterCondition.cpp: 73387 (WebCore::JSNodeFilterCondition::acceptNode): 73388 73389 2010-08-23 Darin Adler <darin (a] apple.com> 73390 73391 Reviewed by Geoff Garen. 73392 73393 Changed type of Node::parentNode to ContainerNode so we don't have to cast, 73394 since parent are all containers. 73395 73396 * css/CSSStyleSelector.h: Changed m_parentNode to ContainerNode*. 73397 73398 * dom/Document.h: Fixed the type of TreeShared in the Node constructor. 73399 Yes, it's here. 73400 73401 * dom/Node.cpp: 73402 (WebCore::Node::eventParentNode): Removed now-unneeded typecast dance. 73403 (WebCore::eventTargetAsSVGElementInstance):Changed type to ContainerNode*. 73404 73405 * dom/Node.h: Made Node inherit from TreeShared<ContainerNode> instead of 73406 from TreeShared<Node>. Removed bogus comment. Changed return type of parentNode 73407 and shadowParentNode functions to ContainerNode*. Fixed using to use 73408 TreeShared<ContainerNode>. 73409 73410 * dom/Position.h: Include ContainerNode.h instead of Node.h. 73411 73412 * html/HTMLConstructionSite.cpp: 73413 (WebCore::HTMLConstructionSite::findFosterSite): Removed now-unneeded typecast. 73414 73415 * rendering/MediaControlElements.h: 73416 * rendering/SVGShadowTreeElements.h: 73417 * rendering/TextControlInnerElements.h: 73418 Changed return type of shadowParentNode functions to ContainerNode. 73419 73420 * rendering/RenderMeter.cpp: 73421 (WebCore::RenderMeter::updatePartsState): Cast the node to HTMLElement* before 73422 passing it to the function that creates the shadow element. We know the node is 73423 a HTMLMeterElement, but the node function doesn't know that. 73424 * rendering/RenderProgress.cpp: 73425 (WebCore::RenderProgress::updatePartsState): Ditto. 73426 * rendering/RenderSlider.cpp: 73427 (WebCore::SliderThumbElement::SliderThumbElement): More of the same. 73428 (WebCore::SliderThumbElement::create): Ditto. 73429 (WebCore::RenderSlider::updateFromElement): Ditto. 73430 * rendering/RenderTextControl.cpp: 73431 (WebCore::RenderTextControl::createSubtreeIfNeeded): Ditto. 73432 * rendering/RenderTextControlSingleLine.cpp: 73433 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): Ditto. 73434 * rendering/SVGShadowTreeElements.cpp: 73435 (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Ditto. 73436 (WebCore::SVGShadowTreeRootElement::shadowParentNode): Ditto. 73437 * rendering/ShadowElement.cpp: 73438 (WebCore::ShadowBlockElement::create): Ditto. 73439 (WebCore::ShadowBlockElement::ShadowBlockElement): Ditto. 73440 (WebCore::ShadowBlockElement::createForPart): Ditto. 73441 (WebCore::ShadowInputElement::create): Ditto. 73442 (WebCore::ShadowInputElement::ShadowInputElement): Ditto. 73443 * rendering/ShadowElement.h: 73444 (WebCore::ShadowElement::ShadowElement): Ditto. 73445 (WebCore::ShadowElement::shadowParent): Ditto. 73446 (WebCore::ShadowElement::shadowParentNode): Ditto. 73447 * rendering/TextControlInnerElements.cpp: 73448 (WebCore::TextControlInnerElement::TextControlInnerElement): Ditto. 73449 (WebCore::TextControlInnerElement::create): Ditto. 73450 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement): Ditto. 73451 (WebCore::TextControlInnerTextElement::create): Ditto. 73452 (WebCore::SpinButtonElement::SpinButtonElement): Ditto. 73453 (WebCore::SpinButtonElement::create): Ditto. 73454 73455 * svg/SVGElement.cpp: 73456 (WebCore::SVGElement::eventParentNode): Removed now-unneeded typecast. 73457 73458 * svg/SVGStyledElement.cpp: 73459 (WebCore::SVGStyledElement::title): Changed type to ContainerNode*. 73460 73461 2010-08-23 Martin Robinson <mrobinson (a] igalia.com> 73462 73463 Reviewed by Gustavo Noronha Silva. 73464 73465 [GTK] The Mozilla theme drawing code incorrectly renders scrollbar backgrounds 73466 https://bugs.webkit.org/show_bug.cgi?id=44388 73467 73468 No new tests as this functionality is currently unused. When the 73469 the new scrollbar theme code lands for GTK+, this will be tested 73470 by scrollbar pixel tests. 73471 73472 * platform/gtk/gtk2drawing.c: Expose a method to paint scrolled window 73473 backgrounds and disable incorrect rendering of scrollbar trough backgrounds. 73474 (moz_gtk_scrolled_window_paint): Added. 73475 (moz_gtk_scrollbar_trough_paint): Disable incorrect background render. 73476 * platform/gtk/gtkdrawing.h: Add scrolled window widget type in the enum. 73477 73478 2010-08-23 Martin Robinson <mrobinson (a] igalia.com> 73479 73480 Reviewed by Gustavo Noronha Silva. 73481 73482 [GTK] The Mozilla theme drawing API should expose extra information about scrollbar geometry 73483 https://bugs.webkit.org/show_bug.cgi?id=44385 73484 73485 Expose the trough_under_steppers property in MozGtkScrollbarMetrics. 73486 73487 No new tests as this does not change functionality. 73488 73489 * platform/gtk/gtk2drawing.c: Set the trough_under_steppers member when accessing theme data. 73490 * platform/gtk/gtkdrawing.h: Add the trough_under_steppers member. 73491 73492 2010-08-23 Darin Adler <darin (a] apple.com> 73493 73494 Reviewed by Geoff Garen. 73495 73496 Parser DOM tree manipulation functions do not need to be virtual. 73497 73498 * dom/ContainerNode.h: Made parserAddChild, parserRemoveChild, and 73499 parserInsertBefore non-virtual. 73500 73501 * dom/Node.cpp: Removed the parserAddChild, parserRemoveChild, and 73502 parserInsertBefore functions, which should never have been in the Node class. 73503 * dom/Node.h: Ditto. 73504 73505 * html/HTMLConstructionSite.cpp: 73506 (WebCore::HTMLConstructionSite::attach): Changed argument type to ContainerNode* 73507 because we never need to attach a child to a non-container node. 73508 (WebCore::HTMLConstructionSite::findFosterSite): Cast the result of the parent 73509 function to ContainerNode*. A parent is always guaranteed to be a container, but 73510 the parent function returns a Node* so that callers can use it without including 73511 ContainerNode's header. That seems like something we can easily fix later. 73512 73513 * html/HTMLConstructionSite.h: Changed AttachmentSite::parent and the 73514 attach function to ContainerNode* instead of Node*. 73515 73516 2010-08-23 Adam Barth <abarth (a] webkit.org> 73517 73518 Reviewed by Eric Seidel. 73519 73520 editing/pasteboard/bad-placeholder.html fails with --html5-treebuilder 73521 https://bugs.webkit.org/show_bug.cgi?id=44463 73522 73523 The problem here is that using the documentElement as the context puts 73524 the tree builder into the BeforeHead insertion mode, which strips 73525 leading spaces. This code is confused about what it wants, but it 73526 certainly doesn't want to be in that insertion mode. Looking through 73527 the callers, they'd much rather be in the InBody insertion mode. We 73528 can get them there by creating a fake body element as the context 73529 element. 73530 73531 In the long term, all this code needs to be changed to move away from 73532 deprecatedCreateContextualFragment, which does a bunch of nasty stuff 73533 like removing certain kinds of elements. However, that's a battle for 73534 another day. 73535 73536 * editing/markup.cpp: 73537 (WebCore::createFragmentFromMarkup): 73538 73539 2010-08-23 Adam Barth <abarth (a] webkit.org> 73540 73541 Reviewed by Eric Seidel. 73542 73543 fast/xsl/default-html.html fails with HTML5 fragment parsing 73544 https://bugs.webkit.org/show_bug.cgi?id=44450 73545 73546 This patch is a step down a trail of tears. As far as I can tell, 73547 there's no spec for XSLTProcessor.transformToFragment. This patch 73548 attempts to infer the proper behavior from test cases and the Mozilla 73549 wiki. 73550 73551 * xml/XSLTProcessor.cpp: 73552 (WebCore::createFragmentFromSource): 73553 73554 2010-08-23 Adam Barth <abarth (a] webkit.org> 73555 73556 Reviewed by Eric Seidel. 73557 73558 editing/pasteboard/paste-visible-script.html is broken with --html5-treebuilder 73559 https://bugs.webkit.org/show_bug.cgi?id=44457 73560 73561 Turns out there are two more checks we need for fragment scripting 73562 permission. Not the most beautiful design, but it seems work. 73563 73564 * html/HTMLConstructionSite.cpp: 73565 (WebCore::HTMLConstructionSite::insertScriptElement): 73566 * html/HTMLTreeBuilder.cpp: 73567 (WebCore::HTMLTreeBuilder::processEndTag): 73568 73569 2010-08-23 Eric Seidel <eric (a] webkit.org> 73570 73571 Reviewed by Adam Barth. 73572 73573 fast/dom/script-innerHTML-x.xhtml fails when run with the HTML5 TreeBuilder in fragment mode 73574 https://bugs.webkit.org/show_bug.cgi?id=44447 73575 73576 This special handling for script/style used to exist in 73577 setInnerHTML. HTML5 moves this logic into the HTML and XML 73578 parsers instead of in setInnerHTML. 73579 73580 In order to share this logic between WebKit's two XML parsers 73581 I had to clean up a bit of the libxml2 parser and add a 73582 new appendFragmentSource method. 73583 73584 Covered by fast/dom/script-innerHTML-x.xhtml. 73585 73586 * dom/XMLDocumentParser.cpp: 73587 (WebCore::XMLDocumentParser::end): 73588 - Now that libxml2 is calling finish() for fragments (Qt already was) 73589 I went through and removed this unneeded style update after fragment parsing. 73590 (WebCore::XMLDocumentParser::parseDocumentFragment): 73591 - Yay for shared code! 73592 - This is where I added the style/script hack moved from setInnerHTML. 73593 * dom/XMLDocumentParser.h: 73594 - Fix indent. 73595 * dom/XMLDocumentParserLibxml2.cpp: 73596 - Removed parseDocumentFragment and moved necessary libxml-specific 73597 logic into appendFragmentSource. 73598 (WebCore::XMLDocumentParser::appendFragmentSource): 73599 * dom/XMLDocumentParserQt.cpp: 73600 (WebCore::XMLDocumentParser::appendFragmentSource): 73601 73602 2010-08-23 Kenneth Russell <kbr (a] google.com> 73603 73604 Reviewed by Dimitri Glazkov. 73605 73606 Remove references to ArrayBuffer and ArrayBufferView from GraphicsContext3D 73607 https://bugs.webkit.org/show_bug.cgi?id=44455 73608 73609 Updated Safari, Qt and Chromium WebGL ports to avoid referencing 73610 ArrayBuffer and ArrayBufferView types from GraphicsContext3D. 73611 73612 Ran all WebGL layout tests; no new regressions. Built and tested 73613 WebKit on Mac OS X; built Chromium on Mac OS X and Linux. 73614 73615 * html/canvas/WebGLBuffer.cpp: 73616 * html/canvas/WebGLBuffer.h: 73617 * html/canvas/WebGLRenderingContext.cpp: 73618 (WebCore::WebGLRenderingContext::bufferData): 73619 (WebCore::WebGLRenderingContext::bufferSubData): 73620 (WebCore::WebGLRenderingContext::texImage2D): 73621 (WebCore::WebGLRenderingContext::texSubImage2D): 73622 (WebCore::WebGLRenderingContext::simulateVertexAttrib0): 73623 * platform/graphics/GraphicsContext3D.cpp: 73624 (WebCore::GraphicsContext3D::extractTextureData): 73625 * platform/graphics/GraphicsContext3D.h: 73626 * platform/graphics/chromium/GLES2Canvas.cpp: 73627 (WebCore::GLES2Canvas::getQuadVertices): 73628 * platform/graphics/mac/GraphicsContext3DMac.mm: 73629 (WebCore::GraphicsContext3D::bufferData): 73630 (WebCore::GraphicsContext3D::bufferSubData): 73631 * platform/graphics/qt/GraphicsContext3DQt.cpp: 73632 (WebCore::GraphicsContext3D::bufferData): 73633 (WebCore::GraphicsContext3D::bufferSubData): 73634 73635 2010-08-20 Stephen White <senorblanco (a] chromium.org> 73636 73637 Reviewed by Kenneth Russell. 73638 73639 [CHROMIUM] Fix some failing layout tests w/ACCELERATED_2D_CANVAS 73640 https://bugs.webkit.org/show_bug.cgi?id=44346 73641 73642 LayoutTests/fast/canvas/canvas-incremental-repaint.html (top middle 73643 pane). 73644 Failing because we were not applying the CTM in clearRect(). Now using 73645 the fast path when the CTM is identity, and a fillRect() for the rest. 73646 LayoutTests/fast/canvas/canvas-strokeRect.html 73647 LayoutTests/fast/canvas/shadow-offset-[1-7].html 73648 Failing because we weren't switching to the software path when a 73649 shadow is present. 73650 Also refactor the two versions of fillRect(), and use TRIANGLE_STRIP 73651 strip instead of TRIANGLES, which lets us get rid of the element array 73652 and use drawArrays() instead of drawElements(). 73653 73654 Covered by the above layout tests. 73655 73656 * platform/graphics/chromium/GLES2Canvas.cpp: 73657 (WebCore::GLES2Canvas::GLES2Canvas): 73658 (WebCore::GLES2Canvas::~GLES2Canvas): 73659 Remove m_quadIndices (now unused). 73660 (WebCore::GLES2Canvas::clearRect): 73661 Use a glClear() fast path for the identity-CTM clear, and fillRect() 73662 for the rest. 73663 (WebCore::GLES2Canvas::fillRect): 73664 Refactor the two versions of fillRect(). 73665 (WebCore::GLES2Canvas::drawTexturedRect): 73666 (WebCore::GLES2Canvas::drawTexturedRectTile): 73667 Get rid of the ELEMENT_ARRAY_BUFFER bind. Use drawArrays() instead of 73668 drawElements(). 73669 (WebCore::GLES2Canvas::getQuadVertices): 73670 Re-order the vertices so they form a triangle strip. 73671 * platform/graphics/chromium/GLES2Canvas.h: 73672 Remove m_quadIndices (now unused). 73673 * platform/graphics/skia/GraphicsContextSkia.cpp: 73674 (WebCore::GraphicsContext::fillRect): 73675 Check for a draw looper (shadow), and drop to the software path. 73676 73677 2010-08-23 Patrick Gansterer <paroga (a] paroga.com> 73678 73679 Reviewed by Adam Roben. 73680 73681 Move filehandling into fileLoadTimer callback 73682 https://bugs.webkit.org/show_bug.cgi?id=43714 73683 73684 Also add mimetype detection for local files. 73685 73686 * platform/network/ResourceHandleInternal.h: 73687 (WebCore::ResourceHandleInternal::ResourceHandleInternal): 73688 * platform/network/win/ResourceHandleWin.cpp: 73689 (WebCore::ResourceHandle::start): 73690 (WebCore::ResourceHandle::fileLoadTimer): 73691 73692 2010-08-23 Iain Merrick <husky (a] google.com> 73693 73694 Reviewed by Steve Block. 73695 73696 Update JNI bridge for V8 after renaming of JavaString::utf8(). 73697 https://bugs.webkit.org/show_bug.cgi?id=44419 73698 73699 This fixes the build on Android. No new functionality, so no new tests. 73700 73701 * bridge/jni/v8/JNIBridgeV8.cpp: 73702 (JavaField::JavaField): 73703 * bridge/jni/v8/JNIBridgeV8.h: 73704 (JSC::Bindings::JavaField::type): 73705 * bridge/jni/v8/JavaClassV8.cpp: 73706 (JavaClass::JavaClass): 73707 * bridge/jni/v8/JavaNPObjectV8.cpp: 73708 (JSC::Bindings::JavaNPObjectGetProperty): 73709 * bridge/jni/v8/JavaStringV8.h: 73710 (JSC::Bindings::JavaStringImpl::utf8): 73711 73712 2010-08-23 Mihai Parparita <mihaip (a] chromium.org> 73713 73714 Reviewed by David Hyatt. 73715 73716 Assertion failure in FrameView::layout when modifying the DOM during 73717 pagehide with PageCache enabled 73718 https://bugs.webkit.org/show_bug.cgi?id=43152 73719 73720 Always unschedule any pending relayouts when changing the view, not just 73721 when we're not using the page cache. Otherwise touching the DOM during 73722 the pagehide handler can lead to layouts that will be done by the time 73723 the view has changed, which triggers an assert. 73724 73725 Test: fast/loader/unschedule-relayout-after-unload.html 73726 73727 * page/Frame.cpp: 73728 (WebCore::Frame::setView): move unscheduleRelayout outside page cache 73729 check. 73730 * page/FrameView.cpp: 73731 (WebCore::FrameView::layout): remove early return now that assert 73732 should be correct (and the referenced rdar:// got fixed). 73733 73734 2010-08-23 Abhishek Arya <inferno (a] chromium.org> 73735 73736 Reviewed by Dimitri Glazkov. 73737 73738 Fix security origin calculation in createPattern. Need to use 73739 cachedImage->response().url() instead of cachedImage->url(). 73740 https://bugs.webkit.org/show_bug.cgi?id=44399. 73741 73742 Test: http/tests/security/canvas-remote-read-remote-image-redirect.html 73743 73744 * html/canvas/CanvasRenderingContext2D.cpp: 73745 (WebCore::CanvasRenderingContext2D::createPattern): 73746 73747 2010-08-23 Simon Fraser <simon.fraser (a] apple.com> 73748 73749 Reviewed by Alexey Proskuryakov. 73750 73751 TreeWalker is not calling acceptNode function in filter object 73752 https://bugs.webkit.org/show_bug.cgi?id=35296 73753 73754 We only accepted raw functions as the NodeFilter on TreeWalker. Fix this to 73755 look for an 'acceptNode' function on the filter object, and use that if present. 73756 Also throw an exception if the filter object does not have an acceptNode function. 73757 73758 Test: fast/dom/TreeWalker/acceptNode-filter.html 73759 73760 * bindings/js/JSNodeFilterCondition.cpp: 73761 (WebCore::JSNodeFilterCondition::acceptNode): 73762 73763 2010-08-23 Sheriff Bot <webkit.review.bot (a] gmail.com> 73764 73765 Unreviewed, rolling out r65814. 73766 http://trac.webkit.org/changeset/65814 73767 https://bugs.webkit.org/show_bug.cgi?id=44443 73768 73769 broke svg/custom/missing-xlink.svg (Requested by kling on 73770 #webkit). 73771 73772 * dom/Element.cpp: 73773 (WebCore::Element::setAttributeNS): 73774 73775 2010-08-23 Jian Li <jianli (a] chromium.org> 73776 73777 Reviewed by Darin Fisher. 73778 73779 Handle blob resource. 73780 https://bugs.webkit.org/show_bug.cgi?id=43941 73781 73782 To provide lower level blob reosurce handling for all possible ports, 73783 BlobResourceHandle derived from ResourceHandle is implemented. It provides 73784 both synchronous and asynchronous resource loading for blob URL. 73785 73786 BlobResourceHandle needs to create a FileStreamProxy instance in order to 73787 asynchronous file stream operation. To achive this, a hook createAsyncFileStream 73788 is added to ResourceHandleClient interface. When ResourceLoader implements 73789 ths hook, it creates and returns FileStreamProxy. 73790 73791 BlobResourceHandle.* is not added to chromium port since it will implement 73792 its own blob resource handling. 73793 73794 * Android.mk: 73795 * CMakeLists.txt: 73796 * GNUmakefile.am: 73797 * WebCore.pro: 73798 * WebCore.vcproj/WebCore.vcproj: 73799 * WebCore.xcodeproj/project.pbxproj: 73800 * loader/ResourceLoader.cpp: 73801 (WebCore::ResourceLoader::createAsyncFileStream): Create and return FileStreamProxy. 73802 * loader/ResourceLoader.h: 73803 * page/SecurityOrigin.cpp: Add the support to get and validate the origin of blob URL. 73804 (WebCore::SecurityOrigin::create): 73805 (WebCore::SecurityOrigin::canLoad): 73806 * platform/network/BlobRegistryImpl.cpp: 73807 (WebCore::BlobRegistryImpl::appendStorageItems): Fix a bug that the length is not subtracted. 73808 * platform/network/BlobResourceHandle.cpp: Added. 73809 * platform/network/BlobResourceHandle.h: Added. 73810 * platform/network/HTTPParsers.cpp: 73811 (WebCore::parseRange): 73812 * platform/network/HTTPParsers.h: 73813 * platform/network/ResourceHandle.cpp: Hook up with asynchronous blob resource handling. 73814 (WebCore::ResourceHandle::create): 73815 * platform/network/ResourceHandle.h: 73816 * platform/network/ResourceHandleClient.h: 73817 (WebCore::ResourceHandleClient::createAsyncFileStream): Add a hook. 73818 * platform/network/mac/ResourceHandleMac.mm: 73819 (WebCore::ResourceHandle::loadResourceSynchronously): Hook up with synchronous blob resource handling. 73820 73821 2010-08-23 Jian Li <jianli (a] chromium.org> 73822 73823 Reviewed by David Levin. 73824 73825 Remove unneeded BlobRegistryImpl.* and WebBlobRegistryImpl.* from 73826 chromium project files. 73827 https://bugs.webkit.org/show_bug.cgi?id=44442 73828 73829 * WebCore.gypi: 73830 73831 2010-08-23 Adam Barth <abarth (a] webkit.org> 73832 73833 Reviewed by Eric Seidel. 73834 73835 Many LayoutTests crash when run with --html5-treebuilder 73836 https://bugs.webkit.org/show_bug.cgi?id=44440 73837 73838 Our list of special tags is out of sync with the HTML5 spec. This 73839 patch adds HTML to the list, which fixs a ton of crashers when parsing 73840 fragments. We neet to sync up the list at some point, but we want to 73841 make sure we have test coverage for all those changes, so I've left 73842 that for a future patch. 73843 73844 * html/HTMLTreeBuilder.cpp: 73845 73846 2010-08-23 Ilya Tikhonovsky <loislo (a] chromium.org> 73847 73848 Reviewed by Pavel Feldman. 73849 73850 WebInspector: Context menu in Scripts panel was broken. 73851 https://bugs.webkit.org/show_bug.cgi?id=44431 73852 73853 * inspector/InspectorFrontendHost.cpp: 73854 (WebCore::FrontendMenuProvider::contextMenuItemSelected): 73855 (WebCore::FrontendMenuProvider::contextMenuCleared): 73856 73857 2010-08-23 Andreas Kling <andreas.kling (a] nokia.com> 73858 73859 Reviewed by Tor Arne Vestb. 73860 73861 setAttributeNS() should throw NAMESPACE_ERR for prefixed qualifiedName with null namespace 73862 https://bugs.webkit.org/show_bug.cgi?id=44432 73863 73864 Test: fast/dom/setAttributeNS-prefix-and-null-namespace.html 73865 73866 * dom/Element.cpp: 73867 (WebCore::Element::setAttributeNS): Throw NAMESPACE_ERR if namespace is null 73868 and the qualifiedName has a prefix. 73869 73870 2010-08-23 Ryuan Choi <ryuan.choi (a] samsung.com> 73871 73872 Reviewed by Antonio Gomes. 73873 73874 [EFL] rendering was broken when missing plugin. 73875 https://bugs.webkit.org/show_bug.cgi?id=43395 73876 73877 Implement RenderThemeEfl::systemFont to render "Missing plugin" when we 73878 don't have proper plugin. 73879 In this case, RenderEmbeddedObject::paintReplaced call systemFont and 73880 pass returned font to GraphicsContext. 73881 73882 * platform/efl/RenderThemeEfl.cpp: 73883 (WebCore::RenderThemeEfl::setDefaultFontSize): 73884 (WebCore::RenderThemeEfl::systemFont): 73885 * platform/efl/RenderThemeEfl.h: 73886 73887 2010-08-23 Pavel Podivilov <podivilov (a] chromium.org> 73888 73889 Reviewed by Pavel Feldman. 73890 73891 Web Inspector: remove javascript breakpoint specific code from BreakpointSidebarPane 73892 https://bugs.webkit.org/show_bug.cgi?id=44327 73893 73894 * inspector/front-end/BreakpointManager.js: 73895 (WebInspector.BreakpointManager.prototype.setBreakpoint): 73896 (WebInspector.BreakpointManager.prototype.restoredBreakpoint): 73897 (WebInspector.BreakpointManager.prototype._setBreakpoint): 73898 (WebInspector.BreakpointManager.prototype._removeBreakpoint): 73899 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): 73900 (WebInspector.Breakpoint): 73901 * inspector/front-end/BreakpointsSidebarPane.js: 73902 (WebInspector.BreakpointsSidebarPane): 73903 (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): 73904 (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved): 73905 (WebInspector.JSBreakpointItem): 73906 (WebInspector.JSBreakpointItem.prototype.compareTo): 73907 (WebInspector.JSBreakpointItem.prototype.element): 73908 (WebInspector.JSBreakpointItem.prototype._breakpointClicked): 73909 (WebInspector.JSBreakpointItem.prototype._checkboxClicked): 73910 (WebInspector.JSBreakpointItem.prototype._enableChanged): 73911 (WebInspector.JSBreakpointItem.prototype._textChanged): 73912 (WebInspector.JSBreakpointItem.prototype._removed): 73913 * inspector/front-end/ScriptsPanel.js: 73914 (WebInspector.ScriptsPanel): 73915 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 73916 (WebInspector.ScriptsPanel.prototype._breakpointRemoved): 73917 * inspector/front-end/SourceFrame.js: 73918 (WebInspector.SourceFrame.prototype.addBreakpoint): 73919 (WebInspector.SourceFrame.prototype._addBreakpointToSource): 73920 73921 2010-08-23 Ilya Tikhonovsky <loislo (a] chromium.org> 73922 73923 Reviewed by Yury Semikhatsky. 73924 73925 WebInspector: inspector protocol should be switched from array based 73926 message format to object based message format. 73927 Almost all the protocol related things is generated by CodeGeneratorInspector.pm 73928 It was changed a bit. As result InspectorBackendStub.js wraps the 73929 calls into Request objects. InspectorBackendDispatcher.cpp unwraps 73930 these objects and calls corresponding agents. These two files and 73931 RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm 73932 Dispatching part of WebInspector also was adjusted for handling Event 73933 objects produced by RemoteInspectorFrontend.cpp and Response objects 73934 produced by InspectorBackendDispatcher.cpp 73935 https://bugs.webkit.org/show_bug.cgi?id=44338 73936 73937 * inspector/CodeGeneratorInspector.pm: 73938 * inspector/Inspector.idl: 73939 * inspector/InspectorController.cpp: 73940 (WebCore::InspectorController::setAttachedWindow): 73941 * inspector/InspectorController.h: 73942 * inspector/InspectorFrontendClientLocal.cpp: 73943 (WebCore::InspectorFrontendClientLocal::setAttachedWindow): 73944 * inspector/InspectorValues.h: 73945 (WebCore::InspectorObject::find): 73946 * inspector/front-end/Callback.js: 73947 (WebInspector.Callback.prototype.processResponse): 73948 * inspector/front-end/inspector.js: 73949 (WebInspector.dispatch): 73950 (WebInspector_syncDispatch): 73951 (WebInspector.dispatchMessageFromBackend): 73952 (WebInspector.reportProtocolError): 73953 73954 2010-08-19 Jeremy Orlow <jorlow (a] chromium.org> 73955 73956 Reviewed by Steve Block. 73957 73958 Remove IDBDatabase.description per spec changes 73959 https://bugs.webkit.org/show_bug.cgi?id=44264 73960 73961 There's now no longer any way to access the description from JS. 73962 The main premise of the manual test is now obsolete. Over time we'll 73963 be able to add to it again. While I'm at it, I cleaned up the format 73964 of the manual test to be easier to follow (code and usage wise). 73965 73966 * manual-tests/indexed-database.html: 73967 * storage/IDBDatabase.cpp: 73968 (WebCore::IDBDatabase::IDBDatabase): 73969 * storage/IDBDatabase.h: 73970 * storage/IDBDatabase.idl: 73971 73972 2010-08-23 Pavel Feldman <pfeldman (a] chromium.org> 73973 73974 Reviewed by Yury Semikhatsky. 73975 73976 Web Inspector: element's css: pseudo-class locations 73977 https://bugs.webkit.org/show_bug.cgi?id=44344 73978 73979 Also contains a drive-by fix for 44301 (gray out read-only). 73980 73981 * inspector/front-end/StylesSidebarPane.js: 73982 (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback): 73983 (WebInspector.StylesSidebarPane.prototype.update): 73984 (WebInspector.StylesSidebarPane.prototype._rebuildUpdate): 73985 (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules): 73986 (WebInspector.StylePropertiesSection): 73987 73988 2010-08-23 Sheriff Bot <webkit.review.bot (a] gmail.com> 73989 73990 Unreviewed, rolling out r65803. 73991 http://trac.webkit.org/changeset/65803 73992 https://bugs.webkit.org/show_bug.cgi?id=44416 73993 73994 windows build failed (Requested by loislo on #webkit). 73995 73996 * inspector/CodeGeneratorInspector.pm: 73997 * inspector/Inspector.idl: 73998 * inspector/InspectorController.cpp: 73999 * inspector/InspectorController.h: 74000 * inspector/InspectorFrontendClientLocal.cpp: 74001 (WebCore::InspectorFrontendClientLocal::setAttachedWindow): 74002 * inspector/InspectorValues.h: 74003 * inspector/front-end/Callback.js: 74004 (WebInspector.Callback.prototype.processResponse): 74005 * inspector/front-end/inspector.js: 74006 (WebInspector.dispatch.delayDispatch): 74007 (WebInspector.dispatch): 74008 (WebInspector_syncDispatch): 74009 (WebInspector.dispatchMessageFromBackend): 74010 (WebInspector.reportProtocolError): 74011 74012 2010-08-23 Ilya Tikhonovsky <loislo (a] chromium.org> 74013 74014 Reviewed by Yury Semikhatsky. 74015 74016 WebInspector: inspector protocol should be switched from array based 74017 message format to object based message format. 74018 Almost all the protocol related things is generated by CodeGeneratorInspector.pm 74019 It was changed a bit. As result InspectorBackendStub.js wraps the 74020 calls into Request objects. InspectorBackendDispatcher.cpp unwraps 74021 these objects and calls corresponding agents. These two files and 74022 RemoteInspectorFrontend are generated by CodeGeneratorInspector.pm 74023 Dispatching part of WebInspector also was adjusted for handling Event 74024 objects produced by RemoteInspectorFrontend.cpp and Response objects 74025 produced by InspectorBackendDispatcher.cpp 74026 https://bugs.webkit.org/show_bug.cgi?id=44338 74027 74028 * inspector/CodeGeneratorInspector.pm: 74029 * inspector/Inspector.idl: 74030 * inspector/InspectorController.cpp: 74031 (WebCore::InspectorController::setAttachedWindow): 74032 * inspector/InspectorController.h: 74033 * inspector/InspectorFrontendClientLocal.cpp: 74034 (WebCore::InspectorFrontendClientLocal::setAttachedWindow): 74035 * inspector/InspectorValues.h: 74036 (WebCore::InspectorObject::find): 74037 * inspector/front-end/Callback.js: 74038 (WebInspector.Callback.prototype.processResponse): 74039 * inspector/front-end/inspector.js: 74040 (WebInspector.dispatch): 74041 (WebInspector_syncDispatch): 74042 (WebInspector.dispatchMessageFromBackend): 74043 (WebInspector.reportProtocolError): 74044 74045 2010-08-23 Alejandro G. Castro <alex (a] igalia.com> 74046 74047 Reviewed by Xan Lopez. 74048 74049 Make the copy of the inspector files silent. 74050 74051 * GNUmakefile.am: 74052 74053 2010-08-23 Andreas Kling <andreas.kling (a] nokia.com> 74054 74055 Reviewed by Kenneth Rohde Christiansen. 74056 74057 [Qt] -webkit-text-stroke is broken due to Qt::TextBypassShaping 74058 https://bugs.webkit.org/show_bug.cgi?id=44403 74059 74060 Don't bypass the Harfbuzz shaping if we're drawing text with a stroke. 74061 For canvas, always use complex text shaping since stroke and fill are decoupled. 74062 74063 * html/canvas/CanvasRenderingContext2D.cpp: 74064 (WebCore::CanvasRenderingContext2D::measureText): 74065 (WebCore::CanvasRenderingContext2D::drawTextInternal): 74066 * platform/graphics/qt/FontQt.cpp: 74067 (WebCore::drawTextCommon): 74068 74069 2010-08-23 Mikhail Naganov <mnaganov (a] chromium.org> 74070 74071 Reviewed by Pavel Feldman. 74072 74073 Extract profiler-related code and data from InspectorController into 74074 InspectorProfilerAgent. 74075 74076 https://bugs.webkit.org/show_bug.cgi?id=44174 74077 74078 * CMakeLists.txt: 74079 * GNUmakefile.am: 74080 * WebCore.exp.in: 74081 * WebCore.gypi: 74082 * WebCore.pro: 74083 * WebCore.vcproj/WebCore.vcproj: 74084 * WebCore.xcodeproj/project.pbxproj: 74085 * bindings/js/ScriptProfiler.cpp: 74086 (WebCore::ScriptProfiler::isProfilerAlwaysEnabled): 74087 * bindings/js/ScriptProfiler.h: 74088 * bindings/v8/ScriptProfiler.cpp: 74089 (WebCore::ScriptProfiler::isProfilerAlwaysEnabled): 74090 * bindings/v8/ScriptProfiler.h: 74091 * inspector/CodeGeneratorInspector.pm: 74092 * inspector/Inspector.idl: 74093 * inspector/InspectorController.cpp: 74094 (WebCore::InspectorController::InspectorController): 74095 (WebCore::InspectorController::connectFrontend): 74096 (WebCore::InspectorController::disconnectFrontend): 74097 (WebCore::InspectorController::populateScriptObjects): 74098 (WebCore::InspectorController::didCommitLoad): 74099 (WebCore::InspectorController::addProfile): 74100 (WebCore::InspectorController::addProfileFinishedMessageToConsole): 74101 (WebCore::InspectorController::addStartProfilingMessageToConsole): 74102 (WebCore::InspectorController::isRecordingUserInitiatedProfile): 74103 (WebCore::InspectorController::getCurrentUserInitiatedProfileName): 74104 (WebCore::InspectorController::startUserInitiatedProfiling): 74105 (WebCore::InspectorController::stopUserInitiatedProfiling): 74106 (WebCore::InspectorController::profilerEnabled): 74107 (WebCore::InspectorController::enableProfiler): 74108 (WebCore::InspectorController::disableProfiler): 74109 * inspector/InspectorController.h: 74110 (WebCore::InspectorController::profilerAgent): 74111 * inspector/InspectorProfilerAgent.cpp: Added. 74112 (WebCore::InspectorProfilerAgent::create): 74113 (WebCore::InspectorProfilerAgent::InspectorProfilerAgent): 74114 (WebCore::InspectorProfilerAgent::~InspectorProfilerAgent): 74115 (WebCore::InspectorProfilerAgent::addProfile): 74116 (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole): 74117 (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole): 74118 (WebCore::InspectorProfilerAgent::createProfileHeader): 74119 (WebCore::InspectorProfilerAgent::disable): 74120 (WebCore::InspectorProfilerAgent::enable): 74121 (WebCore::InspectorProfilerAgent::getCurrentUserInitiatedProfileName): 74122 (WebCore::InspectorProfilerAgent::getProfileHeaders): 74123 (WebCore::InspectorProfilerAgent::getProfile): 74124 (WebCore::InspectorProfilerAgent::removeProfile): 74125 (WebCore::InspectorProfilerAgent::resetState): 74126 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling): 74127 (WebCore::InspectorProfilerAgent::stopUserInitiatedProfiling): 74128 (WebCore::InspectorProfilerAgent::toggleRecordButton): 74129 * inspector/InspectorProfilerAgent.h: Added. 74130 (WebCore::InspectorProfilerAgent::clearProfiles): 74131 (WebCore::InspectorProfilerAgent::enabled): 74132 (WebCore::InspectorProfilerAgent::isRecordingUserInitiatedProfile): 74133 (WebCore::InspectorProfilerAgent::setRemoteFrontend): 74134 (WebCore::InspectorProfilerAgent::startProfiling): 74135 (WebCore::InspectorProfilerAgent::stopProfiling): 74136 74137 2010-08-23 Ariya Hidayat <ariya (a] sencha.com> 74138 74139 Reviewed by Kenneth Rohde Christiansen. 74140 74141 [Qt] Crash when purging the scratch buffer for the shadow 74142 https://bugs.webkit.org/show_bug.cgi?id=44384 74143 74144 WebCore::Timer can't be used in a static object bcause it relies on 74145 thread global data, which is invalid once the application instance is 74146 destroyed. To overcome the problem, use QObject's timer support for 74147 the ShadowBuffer class. 74148 74149 * platform/graphics/qt/ContextShadow.cpp: 74150 (WebCore::): 74151 (WebCore::ShadowBuffer::ShadowBuffer): 74152 (WebCore::ShadowBuffer::schedulePurge): 74153 (WebCore::ShadowBuffer::timerEvent): 74154 74155 2010-08-23 Philippe Normand <pnormand (a] igalia.com> 74156 74157 Reviewed by Xan Lopez. 74158 74159 [GStreamer] don't expose the private player in GStreamerGWorld 74160 https://bugs.webkit.org/show_bug.cgi?id=44332 74161 74162 Only a pointer to our playbin2 element instance is required 74163 instead of the whole MediaPlayerPrivateGStreamer instance. 74164 74165 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 74166 (WebCore::GStreamerGWorld::createGWorld): 74167 (WebCore::GStreamerGWorld::GStreamerGWorld): 74168 (WebCore::GStreamerGWorld::~GStreamerGWorld): 74169 (WebCore::GStreamerGWorld::enterFullscreen): 74170 (WebCore::GStreamerGWorld::exitFullscreen): 74171 * platform/graphics/gstreamer/GStreamerGWorld.h: 74172 (WebCore::GStreamerGWorld::pipeline): 74173 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 74174 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): 74175 74176 2010-08-22 Andreas Kling <andreas.kling (a] nokia.com> 74177 74178 Reviewed by Kenneth Rohde Christiansen. 74179 74180 [Qt] GraphicsContext: Simplify getting the clip bounding rect 74181 https://bugs.webkit.org/show_bug.cgi?id=44396 74182 74183 Move the Qt 4.8 version check for QPainter::clipBoundingRect() 74184 into a GraphicsContextPlatformPrivate method. 74185 74186 * platform/graphics/qt/GraphicsContextQt.cpp: 74187 (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect): 74188 (WebCore::GraphicsContext::beginTransparencyLayer): 74189 (WebCore::GraphicsContext::clipOut): 74190 (WebCore::GraphicsContext::clipOutEllipseInRect): 74191 74192 2010-08-22 Juha Savolainen <juha.savolainen (a] weego.fi> 74193 74194 Reviewed by Kenneth Rohde Christiansen. 74195 74196 [Qt] Add QTouchEvents support for WebKit2 74197 https://bugs.webkit.org/show_bug.cgi?id=44330 74198 74199 This patch adds support for QTouchEvents in WebKit2. A new WebEvent-class 74200 is created for touchevents, WebTouchEvent. Also touchpoints needed a new 74201 class, WebPlatformTouchPoint. This is similar solution like in other 74202 events(like MouseEvent) on WebKit2. These classes are introduced in WebEvent.h 74203 Also there was a need to create an empty constructor to PlatformTouchPoint-class. 74204 74205 * platform/PlatformTouchPoint.h: 74206 (WebCore::PlatformTouchPoint::PlatformTouchPoint): 74207 74208 2010-08-22 Daniel Bates <dbates (a] rim.com> 74209 74210 Reviewed by Eric Seidel. 74211 74212 Encapsulate document marker management into DocumentMarkerController 74213 https://bugs.webkit.org/show_bug.cgi?id=44383 74214 74215 Moves the document marker management code in Document.cpp into its own 74216 class called DocumentMarkerController. 74217 74218 No functionality was changed, so no new tests. 74219 74220 * Android.mk: Added DocumentMarkerController.cpp 74221 * CMakeLists.txt: Ditto. 74222 * GNUmakefile.am: Added DocumentMarkerController.cpp and DocumentMarkerController.h. 74223 * WebCore.exp.in: Substituted symbols __ZN7WebCore24DocumentMarkerController13removeMarkersENS_14DocumentMarker10MarkerTypeE 74224 and __ZN7WebCore24DocumentMarkerController23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE for 74225 __ZN7WebCore8Document13removeMarkersENS_14DocumentMarker10MarkerTypeE and 74226 __ZN7WebCore8Document23renderedRectsForMarkersENS_14DocumentMarker10MarkerTypeE, respectively. 74227 * WebCore.gypi: Added DocumentMarkerController.cpp and DocumentMarkerController.h. 74228 * WebCore.pro: Ditto. 74229 * WebCore.vcproj/WebCore.vcproj: Ditto. 74230 * WebCore.xcodeproj/project.pbxproj: Ditto. 74231 * dom/Document.cpp: 74232 (WebCore::Document::removedLastRef): Modified to call DocumentMarkerController::detach(). 74233 (WebCore::Document::~Document): Removed "deleteAllValues(m_markers)" as DocumentMarkerController 74234 is stored in OwnPtr; so it will be destroyed automatically on Document destruction. 74235 (WebCore::Document::textInserted): Modified to use marker controller. 74236 (WebCore::Document::textRemoved): Ditto. 74237 * dom/Document.h: 74238 (WebCore::Document::markers): Added. 74239 * dom/DocumentMarkerController.cpp: Added. 74240 (WebCore::placeholderRectForMarker): 74241 (WebCore::DocumentMarkerController::detach): 74242 (WebCore::DocumentMarkerController::addMarker): 74243 (WebCore::DocumentMarkerController::removeMarkers): 74244 (WebCore::DocumentMarkerController::copyMarkers): 74245 (WebCore::DocumentMarkerController::markerContainingPoint): 74246 (WebCore::DocumentMarkerController::markersForNode): 74247 (WebCore::DocumentMarkerController::renderedRectsForMarkers): 74248 (WebCore::DocumentMarkerController::repaintMarkers): 74249 (WebCore::DocumentMarkerController::setRenderedRectForMarker): 74250 (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect): 74251 (WebCore::DocumentMarkerController::shiftMarkers): 74252 (WebCore::DocumentMarkerController::setMarkersActive): 74253 * dom/DocumentMarkerController.h: Added. 74254 (WebCore::DocumentMarkerController::~DocumentMarkerController): 74255 * editing/Editor.cpp: 74256 (WebCore::Editor::ignoreSpelling): Modified to use marker controller. 74257 (WebCore::findFirstMisspellingInRange): Ditto. 74258 (WebCore::findFirstGrammarDetailInRange): Ditto. 74259 (WebCore::Editor::advanceToNextMisspelling): Ditto. 74260 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto. 74261 (WebCore::Editor::changeBackToReplacedString): Ditto. 74262 * editing/SplitTextNodeCommand.cpp: 74263 (WebCore::SplitTextNodeCommand::doApply): Ditto. 74264 (WebCore::SplitTextNodeCommand::doUnapply): Ditto. 74265 * page/Frame.cpp: 74266 (WebCore::Frame::markAllMatchesForText): Ditto. 74267 (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Ditto. 74268 (WebCore::Frame::respondToChangedSelection): Ditto. 74269 * page/FrameView.cpp: 74270 (WebCore::FrameView::getTickmarks): Ditto. 74271 (WebCore::FrameView::paintContents): Ditto. 74272 * page/Page.cpp: 74273 (WebCore::Page::unmarkAllTextMatches): Ditto. 74274 * rendering/HitTestResult.cpp: 74275 (WebCore::HitTestResult::spellingToolTip): Ditto. 74276 (WebCore::HitTestResult::replacedString): Ditto. 74277 * rendering/InlineTextBox.cpp: 74278 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto. 74279 (WebCore::InlineTextBox::paintTextMatchMarker): Ditto. 74280 (WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto. 74281 (WebCore::InlineTextBox::paintDocumentMarkers): Ditto. 74282 * rendering/SVGInlineTextBox.cpp: 74283 (WebCore::SVGInlineTextBox::computeTextMatchMarkerRect): Ditto. 74284 74285 2010-08-22 Jian Li <jianli (a] chromium.org> 74286 74287 Reviewed by Darin Fisher. 74288 74289 Add the blob URL member to FormData. 74290 https://bugs.webkit.org/show_bug.cgi?id=44387 74291 74292 This is in preparation to switch blob implementation to using BlobData 74293 model. When a blob is added to a FormData, it is represented as a blob 74294 URL in the list. 74295 74296 * platform/network/FormData.cpp: 74297 (WebCore::FormData::appendBlob): 74298 * platform/network/FormData.h: 74299 (WebCore::FormDataElement::FormDataElement): 74300 (WebCore::FormDataElement::): 74301 (WebCore::operator==): 74302 74303 2010-08-22 Eric Seidel <eric (a] webkit.org> 74304 74305 Reviewed by Adam Barth. 74306 74307 HTML5 TreeBuilder builds wrong DOM for <a><svg><tr><input></a> 74308 https://bugs.webkit.org/show_bug.cgi?id=44390 74309 74310 The HTML5 spec has changed since Adam and I original wrote 74311 the HTMLTreeBuilder. Most important for this change was resolution of: 74312 http://www.w3.org/Bugs/Public/show_bug.cgi?id=9580 74313 74314 I also removed our "phrasing" tag support since that was also removed 74315 from the spec as part of other bug fixes. 74316 74317 This is tested by tonyg's <a><svg><tr><input></a> test in adoption01.dat. 74318 74319 * html/HTMLTreeBuilder.cpp: 74320 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): 74321 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 74322 (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement): 74323 (WebCore::HTMLTreeBuilder::processEndTag): 74324 74325 2010-08-22 Andreas Kling <andreas.kling (a] nokia.com> 74326 74327 Reviewed by Ariya Hidayat. 74328 74329 [Qt] TransparencyLayer: Always use anti-aliasing and smooth pixmap transform 74330 https://bugs.webkit.org/show_bug.cgi?id=44394 74331 74332 * platform/graphics/qt/TransparencyLayer.h: 74333 (WebCore::TransparencyLayer::TransparencyLayer): Set the Antialiasing 74334 and SmoothPixmapTransforms render hints for all TransparencyLayers. 74335 74336 2010-08-22 Andreas Kling <andreas.kling (a] nokia.com> 74337 74338 Reviewed by Ariya Hidayat. 74339 74340 [Qt] Gradient: Support inner radius larger than outer radius 74341 https://bugs.webkit.org/show_bug.cgi?id=44392 74342 74343 * platform/graphics/qt/GradientQt.cpp: 74344 (WebCore::Gradient::platformGradient): Reverse the (radial) gradient if r0 > r1. 74345 74346 2010-08-22 Ariya Hidayat <ariya (a] sencha.com> 74347 74348 Reviewed by Dirk Schulze. 74349 74350 [Qt] Layer approach to support generic shadow handling 74351 https://bugs.webkit.org/show_bug.cgi?id=44380 74352 74353 The pair beginShadowLayer and endShadowLayer creates a temporary image 74354 where the caller can draw onto, using the returned QPainter. When 74355 endShadowLayer is called, the temporary image will be filtered, using 74356 the specified shadow color and blur radius, and drawn to the graphics 74357 context. 74358 74359 * platform/graphics/GraphicsContext.h: 74360 * platform/graphics/qt/ContextShadow.cpp: 74361 (WebCore::ContextShadow::beginShadowLayer): 74362 (WebCore::ContextShadow::endShadowLayer): 74363 * platform/graphics/qt/ContextShadow.h: 74364 * platform/graphics/qt/GraphicsContextQt.cpp: 74365 (WebCore::GraphicsContext::fillRect): 74366 (WebCore::GraphicsContext::contextShadow): 74367 74368 2010-08-21 Eric Carlson <eric.carlson (a] apple.com> 74369 74370 Reviewed by Dan Bernstein. 74371 74372 Media engine should not be asked to open all urls 74373 https://bugs.webkit.org/show_bug.cgi?id=44370 74374 74375 * platform/graphics/MediaPlayer.cpp: 74376 (WebCore::MediaPlayer::load): Do nothing with urls with a type attribute that would be 74377 rejected by canPlayType(). 74378 74379 2010-08-21 Ariya Hidayat <ariya (a] sencha.com> 74380 74381 Reviewed by Kenneth Rohde Christiansen. 74382 74383 [Qt] Faster bounding rect for the shadow clip region 74384 https://bugs.webkit.org/show_bug.cgi?id=44369 74385 74386 Like in r65650, we should use the faster QPainter::clipBoundingRect 74387 when it is available. 74388 74389 * platform/graphics/qt/ContextShadow.cpp: 74390 (WebCore::ContextShadow::drawShadowRect): 74391 74392 2010-08-20 Girish Ramakrishnan <girish (a] forwardbias.in> 74393 74394 Reviewed by Ariya Hidayat. 74395 74396 [Qt] When using the raster graphics system on Maemo5, allow 74397 Flash to render directly into the raster window surface. 74398 wmode=transparent is now supported as a result of this change. 74399 74400 https://bugs.webkit.org/show_bug.cgi?id=44043 74401 74402 * plugins/qt/PluginViewQt.cpp: 74403 (WebCore::PluginView::paintUsingImageSurfaceExtension): 74404 74405 2010-08-20 Alexey Proskuryakov <ap (a] apple.com> 74406 74407 Reviewed by Brady Eidson. 74408 74409 https://bugs.webkit.org/show_bug.cgi?id=38428 74410 HTTP code 500 (and other non-4xx codes) wrongfully treated as success for subresources 74411 74412 Test: http/tests/misc/script-500.html 74413 74414 * loader/loader.cpp: (WebCore::Loader::Host::didReceiveData): Treat all HTTP codes >= 400 as 74415 error ones, since they are. 74416 74417 2010-08-20 Tony Gentilcore <tonyg (a] chromium.org> 74418 74419 Reviewed by Adam Barth. 74420 74421 Crash in WebCore::Node::createRendererIfNeeded() 74422 https://bugs.webkit.org/show_bug.cgi?id=44129 74423 74424 * dom/ContainerNode.cpp: 74425 (WebCore::ContainerNode::insertBefore): Factor out core bit to insertBetween. 74426 (WebCore::ContainerNode::insertBetween): Factored out of insertBefore. 74427 (WebCore::ContainerNode::parserInsertBefore): Similar to insertBefore, but doesn't handle reparenting or dispatch DOM mutation events. 74428 (WebCore::ContainerNode::removeChild): Factor out core bit to removeBetween. 74429 (WebCore::ContainerNode::removeBetween): Facotred out of removeChild. 74430 (WebCore::ContainerNode::parserRemoveChild): Similar to removeChild, but doesn't handle reparenting or dispatch DOM mutation events. 74431 (WebCore::ContainerNode::addChildCommon): 74432 (WebCore::ContainerNode::parserAddChild): 74433 (WebCore::ContainerNode::legacyParserAddChild): 74434 * dom/ContainerNode.h: 74435 * dom/Node.cpp: 74436 (WebCore::Node::parserRemoveChild): 74437 (WebCore::Node::parserInsertBefore): 74438 * dom/Node.h: 74439 * html/HTMLConstructionSite.cpp: 74440 (WebCore::HTMLConstructionSite::attach): 74441 (WebCore::HTMLConstructionSite::attachAtSite): Use new parserInsertBefore. 74442 * html/HTMLTreeBuilder.cpp: 74443 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 74444 (WebCore::HTMLTreeBuilder::reparentChildren): 74445 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): Was missing a key bit from the spec about removing the old parent if it exists. 74446 74447 2010-08-20 Kinuko Yasuda <kinuko (a] chromium.org> 74448 74449 Unreviewed; build fix. Had included wrong version of build file. 74450 74451 2010-08-20 Martin Robinson <mrobinson (a] igalia.com> 74452 74453 Reviewed by Joseph Pecoraro. 74454 74455 [GTK] Inspector extensions tests fail on GTK+ bots because onSelectionChanged is missing 74456 https://bugs.webkit.org/show_bug.cgi?id=44342 74457 74458 * GNUmakefile.am: Fix dependency tracking for copied web inspector files. 74459 74460 2010-08-20 Kinuko Yasuda <kinuko (a] chromium.org> 74461 74462 Reviewed by Darin Fisher. 74463 74464 Add Callback implementation for FileSystem API 74465 https://bugs.webkit.org/show_bug.cgi?id=44349 74466 74467 No new tests; tests will be added later. 74468 74469 * CMakeLists.txt: 74470 * GNUmakefile.am: 74471 * WebCore.gypi: 74472 * WebCore.pro: 74473 * WebCore.vcproj/WebCore.vcproj: 74474 * WebCore.xcodeproj/project.pbxproj: 74475 * storage/FileSystemCallbacks.cpp: Added. 74476 * storage/FileSystemCallbacks.h: Added. 74477 74478 * storage/EntryCallback.h: Nits fix 74479 * storage/FileSystemCallback.h: Nits fix 74480 74481 2010-08-20 Andreas Kling <andreas.kling (a] nokia.com> 74482 74483 Reviewed by Ariya Hidayat. 74484 74485 [Qt] WebKit does not compile with --3d-canvas 74486 https://bugs.webkit.org/show_bug.cgi?id=44335 74487 74488 - PlatformGLObject => Platform3DObject 74489 - Implemented getAttachedShaders() 74490 - Implemented bufferData() and bufferSubData() for ArrayBuffer* 74491 - Removed reference to nonexistent variable in getImageData() 74492 74493 * platform/graphics/qt/GraphicsContext3DQt.cpp: 74494 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal): 74495 (WebCore::GraphicsContext3D::attachShader): 74496 (WebCore::GraphicsContext3D::getAttachedShaders): 74497 (WebCore::GraphicsContext3D::bindAttribLocation): 74498 (WebCore::GraphicsContext3D::bindBuffer): 74499 (WebCore::GraphicsContext3D::bindFramebuffer): 74500 (WebCore::GraphicsContext3D::bindRenderbuffer): 74501 (WebCore::GraphicsContext3D::bindTexture): 74502 (WebCore::GraphicsContext3D::bufferData): 74503 (WebCore::GraphicsContext3D::bufferSubData): 74504 (WebCore::GraphicsContext3D::compileShader): 74505 (WebCore::GraphicsContext3D::detachShader): 74506 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 74507 (WebCore::GraphicsContext3D::framebufferTexture2D): 74508 (WebCore::GraphicsContext3D::getActiveAttrib): 74509 (WebCore::GraphicsContext3D::getActiveUniform): 74510 (WebCore::GraphicsContext3D::getAttribLocation): 74511 (WebCore::GraphicsContext3D::isBuffer): 74512 (WebCore::GraphicsContext3D::isFramebuffer): 74513 (WebCore::GraphicsContext3D::isProgram): 74514 (WebCore::GraphicsContext3D::isRenderbuffer): 74515 (WebCore::GraphicsContext3D::isShader): 74516 (WebCore::GraphicsContext3D::isTexture): 74517 (WebCore::GraphicsContext3D::linkProgram): 74518 (WebCore::GraphicsContext3D::shaderSource): 74519 (WebCore::GraphicsContext3D::useProgram): 74520 (WebCore::GraphicsContext3D::validateProgram): 74521 (WebCore::GraphicsContext3D::getProgramiv): 74522 (WebCore::GraphicsContext3D::getProgramInfoLog): 74523 (WebCore::GraphicsContext3D::getShaderiv): 74524 (WebCore::GraphicsContext3D::getShaderInfoLog): 74525 (WebCore::GraphicsContext3D::getShaderSource): 74526 (WebCore::GraphicsContext3D::getUniformfv): 74527 (WebCore::GraphicsContext3D::getUniformiv): 74528 (WebCore::GraphicsContext3D::getUniformLocation): 74529 (WebCore::GraphicsContext3D::getImageData): 74530 * platform/graphics/qt/GraphicsLayerQt.h: 74531 74532 2010-08-20 Dan Bernstein <mitz (a] apple.com> 74533 74534 Reviewed by Dave Kilzer. 74535 74536 #ifdef-out some Leopard-and-earlier code. 74537 74538 * platform/graphics/mac/FontCustomPlatformData.cpp: 74539 (WebCore::FontCustomPlatformData::~FontCustomPlatformData): 74540 74541 2010-08-20 Kenneth Russell <kbr (a] google.com> 74542 74543 Unreviewed, speculative Chromium build fix. Forward declare 74544 IntSize in WebGLRenderingContext.h and include IntSize.h in .cpp. 74545 74546 * html/canvas/WebGLRenderingContext.cpp: 74547 * html/canvas/WebGLRenderingContext.h: 74548 74549 2010-08-20 Eric Carlson <eric.carlson (a] apple.com> 74550 74551 Reviewed by Dan Bernstein. 74552 74553 Media element canPlayType("application/octet-stream") not handled correctly 74554 https://bugs.webkit.org/show_bug.cgi?id=44343 74555 74556 Test: media/media-can-play-octet-stream.html 74557 74558 * platform/graphics/MediaPlayer.cpp: 74559 (WebCore::applicationOctetStream): New, accessor for static string used more than once. 74560 (WebCore::textPlain): Ditto. 74561 (WebCore::codecs): Ditto. 74562 (WebCore::chooseBestEngineForTypeAndCodecs): Special case "application/octet-stream". 74563 (WebCore::MediaPlayer::load): Use static static string methods. 74564 (WebCore::MediaPlayer::supportsType): Special case "application/octet-stream". 74565 74566 2010-08-20 Adrienne Walker <enne (a] google.com> 74567 74568 Reviewed by Kenneth Russell. 74569 74570 Implement HTMLVideoElement support for texImage2D and texSubImage2D 74571 https://bugs.webkit.org/show_bug.cgi?id=33852 74572 74573 Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html 74574 74575 * html/canvas/WebGLRenderingContext.cpp: 74576 (WebCore::WebGLRenderingContext::WebGLRenderingContext): 74577 (WebCore::WebGLRenderingContext::videoFrameToImage): 74578 (WebCore::WebGLRenderingContext::texImage2D): 74579 (WebCore::WebGLRenderingContext::texSubImage2D): 74580 (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): 74581 (WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer): 74582 (WebCore::WebGLRenderingContext::LRUImageBufferCache::bubbleToFront): 74583 * html/canvas/WebGLRenderingContext.h: 74584 74585 2010-08-20 Dumitru Daniliuc <dumi (a] chromium.org> 74586 74587 Reviewed by Adam Barth. 74588 74589 Removing an incorrect ASSERT. 74590 https://bugs.webkit.org/show_bug.cgi?id=44151 74591 74592 A failure in the preflight step of a transaction wrapper does not 74593 guarantee that the transaction is rolled back (and it shouldn't). 74594 74595 Test: storage/change-version-no-crash-on-preflight-failure.html 74596 74597 * storage/SQLTransaction.cpp: 74598 (WebCore::SQLTransaction::openTransactionAndPreflight): 74599 74600 2010-08-20 David Leong <david.leong (a] nokia.com> 74601 74602 Reviewed by Laszlo Gombos. 74603 74604 [Qt] Update Symbian capabilities to remove AllFiles and DRM 74605 74606 Add CONFIG(production) variation for set of DLL capabilities. 74607 DRM and AllFiles capabilities need to be audited for the sis 74608 package to be signed. 74609 74610 No new tests. 74611 74612 * WebCore.pro: Updated Symbian Capabilities. 74613 74614 2010-08-20 Joseph Pecoraro <joepeck (a] webkit.org> 74615 74616 Reviewed by David Kilzer. 74617 74618 Do Not Copy Subversion Related Files in Inspector Build Phase 74619 https://bugs.webkit.org/show_bug.cgi?id=44353 74620 74621 * WebCore.xcodeproj/project.pbxproj: remove .svn directories in the "Copy Inspector Resources" build phase. 74622 74623 2010-08-19 Ryosuke Niwa <rniwa (a] webkit.org> 74624 74625 Reviewed by Adam Barth. 74626 74627 style correction in markup.cpp 74628 https://bugs.webkit.org/show_bug.cgi?id=44318 74629 74630 Make markup.cpp pass check-webkit-style. 74631 74632 No new tests are added since this is a cleanup. 74633 74634 * editing/markup.cpp: 74635 (WebCore::MarkupAccumulator::appendAttributeValue): 74636 (WebCore::appendEscapedContent): 74637 (WebCore::MarkupAccumulator::appendStartMarkup): 74638 (WebCore::completeURLs): 74639 (WebCore::isElementPresentational): 74640 (WebCore::isSpecialAncestorBlock): 74641 (WebCore::shouldIncludeWrapperForFullySelectedRoot): 74642 (WebCore::createMarkup): 74643 (WebCore::fillContainerFromString): 74644 (WebCore::createFragmentFromText): 74645 (WebCore::createFragmentFromNodes): 74646 74647 2010-08-20 Tony Chang <tony (a] chromium.org> 74648 74649 Reviewed by Adam Barth. 74650 74651 crash when trying to access a stale Node pointer in FocusController::setFocusedNode 74652 https://bugs.webkit.org/show_bug.cgi?id=44226 74653 74654 Test: fast/events/focus-change-crash2.html 74655 74656 * page/FocusController.cpp: 74657 (WebCore::FocusController::setFocusedNode): add a ref to prevent the focused node from being deleted 74658 74659 2010-08-20 Simon Fraser <simon.fraser (a] apple.com> 74660 74661 Reviewed by Dan Bernstein. 74662 74663 <rdar://problem/8245719> backface-visibility and reflections don't play nicely together. 74664 74665 On elements with a reflection and backface-visibility: hidden, set the doubleSided property on the 74666 reflection flattening layer so that backface-visibility works in all configurations. 74667 74668 Test: compositing/reflections/backface-hidden-reflection.html 74669 74670 * platform/graphics/mac/GraphicsLayerCA.mm: 74671 (WebCore::GraphicsLayerCA::updateBackfaceVisibility): Call setDoubleSided: on the structural 74672 layer for reflections. 74673 (WebCore::GraphicsLayerCA::ensureStructuralLayer): Fix a comment typo, and call updateBackfaceVisibility() 74674 when we gain a structural layer. 74675 74676 2010-08-20 Simon Fraser <simon.fraser (a] apple.com> 74677 74678 Reviewed by Dan Bernstein. 74679 74680 Slider labels do not update as you move the sliders on this page 74681 https://bugs.webkit.org/show_bug.cgi?id=41020 74682 74683 When repainting after layout in a multicol element, we need to adjust the 74684 repaint rect for the columns. 74685 74686 Test: fast/repaint/multicol-repaint.html 74687 74688 * rendering/RenderBlock.cpp: 74689 (WebCore::RenderBlock::layoutBlock): 74690 74691 2010-08-20 Jian Li <jianli (a] chromium.org> 74692 74693 Reviewed by David Levin. 74694 74695 Move FileStreamClient to platform and add AsyncFileStream interface. 74696 https://bugs.webkit.org/show_bug.cgi?id=44224 74697 74698 * GNUmakefile.am: 74699 * WebCore.gypi: 74700 * WebCore.pro: 74701 * WebCore.vcproj/WebCore.vcproj: 74702 * WebCore.xcodeproj/project.pbxproj: 74703 * html/FileStreamProxy.cpp: Account for the change. 74704 (WebCore::FileStreamProxy::FileStreamProxy): 74705 (WebCore::FileStreamProxy::stop): 74706 * html/FileStreamProxy.h: Make it derive from AsyncFileStream.h. 74707 * platform/AsyncFileStream.h: Added. 74708 * platform/FileStreamClient.h: Renamed from WebCore/html/FileStreamClient.h. 74709 74710 2010-08-20 Abhishek Arya <inferno (a] chromium.org> 74711 74712 Reviewed by Darin Fisher. 74713 74714 Prevent use of stale notification presenter pointer in notifications by instead using 74715 a notification center pointer and deriving the presenter from it. Notification presenter 74716 gets properly destroyed using disconnectFrame function inside notification center. Add 74717 null checks for notification presenter. 74718 https://bugs.webkit.org/show_bug.cgi?id=43645 74719 74720 Test: fast/notifications/notifications-window-close-crash.html 74721 74722 * notifications/Notification.cpp: 74723 (WebCore::Notification::Notification): 74724 (WebCore::Notification::create): 74725 (WebCore::Notification::show): 74726 (WebCore::Notification::cancel): 74727 (WebCore::Notification::contextDestroyed): 74728 (WebCore::Notification::finishLoading): 74729 * notifications/Notification.h: 74730 (WebCore::Notification::detachPresenter): 74731 * notifications/NotificationCenter.h: 74732 (WebCore::NotificationCenter::createHTMLNotification): 74733 (WebCore::NotificationCenter::createNotification): 74734 74735 2010-08-20 Martin Robinson <mrobinson (a] igalia.com> 74736 74737 Reviewed by Xan Lopez. 74738 74739 r64526 broke the GTK+-3 build 74740 https://bugs.webkit.org/show_bug.cgi?id=44254 74741 74742 No new tests, as this is covered by manual-tests/cursor.html. 74743 74744 * platform/gtk/CursorGtk.cpp: 74745 (WebCore::createPixmapFromBits): Added this method which turns the inline data 74746 structures into GdkPixmaps using Cairo and GDK-Cairo. 74747 (WebCore::createNamedCursor): Modified this method to use the new helper. 74748 * platform/gtk/CursorGtk.h: Changed all inline data structures to be unsigned 74749 char arrays (which Cairo requires). The progress cursor is known in X11 icon themes 74750 as "left_ptr_watch." This change to the name preserves the old behavior of taking this 74751 icon from the theme when available. It seems that this worked in the past due to a fluke 74752 or failure of the previous code. 74753 74754 2010-08-20 Martin Robinson <mrobinson (a] igalia.com> 74755 74756 Reviewed by Dirk Schulze. 74757 74758 [Cairo] Eliminate full-surface copy from canvas.drawImage(...) 74759 https://bugs.webkit.org/show_bug.cgi?id=44190 74760 74761 Covered by canvas layout tests. 74762 74763 * platform/graphics/cairo/ImageBufferCairo.cpp: 74764 (WebCore::ImageBuffer::drawsUsingCopy): Return false now. 74765 (WebCore::ImageBuffer::clip): Add a link to the bug which tracks this feature. 74766 (WebCore::ImageBuffer::draw): Construct the bitmap image without the full-surface copy. 74767 (WebCore::ImageBuffer::drawPattern): Ditto. 74768 74769 2010-08-20 Alejandro G. Castro <alex (a] igalia.com> 74770 74771 Reviewed by Xan Lopez. 74772 74773 [REGRESSION] r65608 broke gtk distcheck 74774 https://bugs.webkit.org/show_bug.cgi?id=44333 74775 74776 Define the inspector.html as a noinst_DATA intead of using the dir 74777 suffix, which is used for installation. 74778 74779 * GNUmakefile.am: 74780 74781 2010-08-19 Pavel Podivilov <podivilov (a] chromium.org> 74782 74783 Reviewed by Yury Semikhatsky. 74784 74785 Web Inspector: implement breaking on DOM node subtree mutations. 74786 https://bugs.webkit.org/show_bug.cgi?id=42886 74787 74788 Add two entries to Web Inspector DOM element context menu: 74789 1. "Stop on subtree modifications": will break on adding/removing of any element which is a child of the DOM element 74790 2. "Remove breakpoints": will remove all breakpoints associated with the DOM element 74791 74792 * English.lproj/localizedStrings.js: 74793 * bindings/js/ScriptDebugServer.cpp: 74794 (WebCore::ScriptDebugServer::breakProgram): 74795 * bindings/js/ScriptDebugServer.h: 74796 * bindings/v8/ScriptDebugServer.cpp: 74797 (WebCore::ScriptDebugServer::breakProgram): 74798 (WebCore::ScriptDebugServer::breakProgramCallback): 74799 (WebCore::ScriptDebugServer::handleV8DebugEvent): 74800 * bindings/v8/ScriptDebugServer.h: 74801 * inspector/Inspector.idl: 74802 * inspector/InspectorDOMAgent.cpp: 74803 (WebCore::InspectorDOMAgent::~InspectorDOMAgent): 74804 (WebCore::InspectorDOMAgent::discardBindings): 74805 (WebCore::InspectorDOMAgent::setDOMBreakpoint): 74806 (WebCore::InspectorDOMAgent::removeDOMBreakpoint): 74807 (WebCore::InspectorDOMAgent::didInsertDOMNode): 74808 (WebCore::InspectorDOMAgent::didRemoveDOMNode): 74809 (WebCore::InspectorDOMAgent::hasBreakpoint): 74810 (WebCore::InspectorDOMAgent::pauseOnBreakpoint): 74811 (WebCore::InspectorDOMAgent::updateSubtreeBreakpoints): 74812 * inspector/InspectorDOMAgent.h: 74813 * inspector/front-end/ElementsTreeOutline.js: 74814 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): 74815 * inspector/front-end/Settings.js: 74816 74817 2010-08-20 Yury Semikhatsky <yurys (a] chromium.org> 74818 74819 Reviewed by Pavel Feldman. 74820 74821 Web Inspector: discard InjectedScript reference on ScriptState when clearing injected scripts 74822 https://bugs.webkit.org/show_bug.cgi?id=44328 74823 74824 Otherwise if the reference is not cleared we may remove InjectedScript from the 74825 map on InjectedScriptHost but keep it on ScriptState and try to reuse it later. 74826 74827 * bindings/js/JSInjectedScriptHostCustom.cpp: 74828 (WebCore::InjectedScriptHost::discardInjectedScript): 74829 * bindings/v8/V8HiddenPropertyName.h: 74830 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 74831 (WebCore::InjectedScriptHost::discardInjectedScript): 74832 (WebCore::InjectedScriptHost::injectedScriptFor): 74833 * inspector/InjectedScript.h: 74834 (WebCore::InjectedScript::scriptState): 74835 * inspector/InjectedScriptHost.cpp: 74836 (WebCore::InjectedScriptHost::discardInjectedScripts): 74837 * inspector/InjectedScriptHost.h: 74838 74839 2010-08-20 Nikolas Zimmermann <nzimmermann (a] rim.com> 74840 74841 Reviewed by Dirk Schulze. 74842 74843 Clippers are rasterized, when applied to scaled target object 74844 https://bugs.webkit.org/show_bug.cgi?id=44325 74845 74846 Use SVGImageBufferTools logic for RenderSVGResourceClipper, just like RenderSVGResourceMasker/Gradient, 74847 to avoid pixelation, when the clipper is applied to a scaled target object, or when the document is scaled. 74848 74849 Test: svg/clip-path/clip-path-pixelation.svg 74850 74851 * rendering/RenderSVGResourceClipper.cpp: 74852 (WebCore::RenderSVGResourceClipper::applyClippingToContext): 74853 (WebCore::RenderSVGResourceClipper::createClipData): 74854 * rendering/RenderSVGResourceClipper.h: 74855 74856 2010-08-20 Andreas Kling <andreas.kling (a] nokia.com> 74857 74858 Reviewed by Kenneth Rohde Christiansen. 74859 74860 [Qt] Initialize GDK before loading plugins 74861 https://bugs.webkit.org/show_bug.cgi?id=44324 74862 74863 Attempt to call gdk_init_check() before loading any plugins. 74864 This prevents various crashes and freezes in Adobe's Flash plugin. 74865 74866 * plugins/qt/PluginPackageQt.cpp: 74867 (WebCore::initializeGdkIfPossible): 74868 (WebCore::PluginPackage::load): 74869 74870 2010-08-20 Dan Bernstein <mitz (a] apple.com> 74871 74872 Reviewed by Mark Rowe. 74873 74874 Follow-up to r41020. 74875 74876 No change in behavior, thus no new tests. 74877 74878 * platform/graphics/mac/FontPlatformDataMac.mm: 74879 (WebCore::FontPlatformData::FontPlatformData): Asserted that the NSFont parameter is not nil, 74880 and removed nil check. 74881 (WebCore::FontPlatformData::setFont): Asserted that the NSFont parameter is not nil and that 74882 this is not the deleted value, and removed code to handle those cases. 74883 74884 2010-08-19 Vincent Scheib <scheib (a] chromium.org> 74885 74886 Reviewed by David Levin. 74887 74888 [chromium] TilingData::tilePositionY has typo of X where Y should be used 74889 https://bugs.webkit.org/show_bug.cgi?id=44195 74890 74891 Corrected error, and rewrote functions to use for loop instead of recursion. 74892 74893 Unit Tests added to WebKit/chromium/tests/TilingDataTest.cpp 74894 74895 * platform/graphics/chromium/TilingData.cpp: 74896 (WebCore::TilingData::tilePositionX): 74897 (WebCore::TilingData::tilePositionY): 74898 74899 2010-08-19 Mihai Parparita <mihaip (a] chromium.org> 74900 74901 Reviewed by Brady Eidson. 74902 74903 Assertion failure when going back inside frame during onload 74904 https://bugs.webkit.org/show_bug.cgi?id=44217 74905 74906 Fix assertion failure when doing a history.back() within the main frame 74907 during onload of a child frame. This would happen when 74908 HISTORY_ALWAYS_ASYNC was set to 0, because we would only compare the 74909 current frame document sequence numbers when determining if we're in the 74910 same document, instead of also recursing over child frames. 74911 74912 Test: fast/history/history-back-within-subframe-hash.html 74913 74914 * history/HistoryItem.cpp: 74915 (WebCore::HistoryItem::hasSameDocuments): 74916 * history/HistoryItem.h: 74917 * loader/RedirectScheduler.cpp: 74918 (WebCore::RedirectScheduler::scheduleHistoryNavigation): 74919 74920 2010-08-19 Balazs Kelemen <kb (a] inf.u-szeged.hu> 74921 74922 Reviewed by Antonio Gomes. 74923 74924 [Qt] Fix cursor change propagation 74925 https://bugs.webkit.org/show_bug.cgi?id=44250 74926 74927 No functional change so new tests. 74928 74929 Propagate the setCursor callback to the PageClient via the HostWindow instead of preassuming 74930 the concrete type of the ChromeClient (what was generally wrong and actually incompatible with WebKit2). 74931 * platform/qt/WidgetQt.cpp: 74932 (WebCore::Widget::setCursor): 74933 74934 2010-08-19 Vangelis Kokkevis <vangelis (a] chromium.org> 74935 74936 Reviewed by Kenneth Russell. 74937 74938 [chromium] Rearranging the accelerated compositing code such that the 74939 layer rendering logic now lives in the layer classes rather than the 74940 compositor. This lifts the restriction of having one texture per layer 74941 and significantly cleans up the compositor code. This change mostly 74942 resulted in a lot of code moving around files. Noteworthy changes 74943 include: 74944 * Made LayerChromium a proper based class for layers that mostly handles 74945 the updates to the layer properties and superlayer / sublayer updates. 74946 * Introduced a new layer type, ContentLayerChromium, which handles 74947 layers that require a GraphicsContext to render their content. 74948 * ImageLayerChromium and VideoLayerChromium now derive from 74949 ContentLayerChromium as they share the same shader and draw function. 74950 * Removed TransformLayerChromium as its functionality is now replaced by 74951 the base LayerChromium class. 74952 * Re-arranged the order in which the members of LayerChromium are defined 74953 in the header file to form a more reasonable logical grouping. 74954 * Changed LayerRendererChromium to use the shader creation and drawing 74955 methods defined in the layer classes. As a result, a lot of GL code was 74956 removed from the implementation file. 74957 * Eliminated randomly dispersed calls to check for GL errors by a macro (GLC) 74958 which allows turning error testing on/off with a single define (DEBUG_GL_CALLS 74959 defined in LayerRendererChromium.h) 74960 * Replaced the previous layer render loop with two traversals of the layer 74961 hierarchy, the first to update transforms and opacity values and the 74962 second to render the layers. Eliminated global Z sorting of all layers as 74963 it was wrong. 74964 https://bugs.webkit.org/show_bug.cgi?id=44148 74965 74966 Test: Verified that pages using the compositor and compositor 74967 layout tests have not regressed. 74968 74969 * WebCore.gypi: 74970 * platform/graphics/chromium/CanvasLayerChromium.cpp: 74971 (WebCore::CanvasLayerChromium::SharedValues::SharedValues): 74972 (WebCore::CanvasLayerChromium::SharedValues::~SharedValues): 74973 (WebCore::CanvasLayerChromium::updateContents): 74974 (WebCore::CanvasLayerChromium::draw): 74975 * platform/graphics/chromium/CanvasLayerChromium.h: 74976 (WebCore::CanvasLayerChromium::SharedValues::canvasShaderProgram): 74977 (WebCore::CanvasLayerChromium::SharedValues::shaderSamplerLocation): 74978 (WebCore::CanvasLayerChromium::SharedValues::shaderMatrixLocation): 74979 (WebCore::CanvasLayerChromium::SharedValues::shaderAlphaLocation): 74980 (WebCore::CanvasLayerChromium::SharedValues::initialized): 74981 * platform/graphics/chromium/ContentLayerChromium.cpp: Added. 74982 (WebCore::ContentLayerChromium::SharedValues::SharedValues): 74983 (WebCore::ContentLayerChromium::SharedValues::~SharedValues): 74984 (WebCore::ContentLayerChromium::create): 74985 (WebCore::ContentLayerChromium::ContentLayerChromium): 74986 (WebCore::ContentLayerChromium::~ContentLayerChromium): 74987 (WebCore::ContentLayerChromium::updateContents): 74988 (WebCore::ContentLayerChromium::updateTextureRect): 74989 (WebCore::ContentLayerChromium::draw): 74990 * platform/graphics/chromium/ContentLayerChromium.h: Added. 74991 (WebCore::ContentLayerChromium::drawsContent): 74992 (WebCore::ContentLayerChromium::SharedValues::contentShaderProgram): 74993 (WebCore::ContentLayerChromium::SharedValues::shaderSamplerLocation): 74994 (WebCore::ContentLayerChromium::SharedValues::shaderMatrixLocation): 74995 (WebCore::ContentLayerChromium::SharedValues::shaderAlphaLocation): 74996 (WebCore::ContentLayerChromium::SharedValues::initialized): 74997 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 74998 (WebCore::GraphicsLayerChromium::GraphicsLayerChromium): 74999 (WebCore::GraphicsLayerChromium::updateLayerPreserves3D): 75000 * platform/graphics/chromium/ImageLayerChromium.cpp: 75001 (WebCore::ImageLayerChromium::ImageLayerChromium): 75002 (WebCore::ImageLayerChromium::updateContents): 75003 * platform/graphics/chromium/ImageLayerChromium.h: 75004 * platform/graphics/chromium/LayerChromium.cpp: 75005 (WebCore::loadShader): 75006 (WebCore::LayerChromium::SharedValues::SharedValues): 75007 (WebCore::LayerChromium::SharedValues::~SharedValues): 75008 (WebCore::LayerChromium::LayerChromium): 75009 (WebCore::LayerChromium::~LayerChromium): 75010 (WebCore::LayerChromium::createShaderProgram): 75011 (WebCore::LayerChromium::toGLMatrix): 75012 (WebCore::LayerChromium::drawTexturedQuad): 75013 (WebCore::LayerChromium::drawDebugBorder): 75014 (WebCore::LayerChromium::prepareForDraw): 75015 * platform/graphics/chromium/LayerChromium.h: 75016 (WebCore::LayerChromium::getSublayers): 75017 (WebCore::LayerChromium::setPosition): 75018 (WebCore::LayerChromium::contentsDirty): 75019 (WebCore::LayerChromium::drawsContent): 75020 (WebCore::LayerChromium::updateContents): 75021 (WebCore::LayerChromium::draw): 75022 (WebCore::LayerChromium::SharedValues::quadVerticesVbo): 75023 (WebCore::LayerChromium::SharedValues::quadElementsVbo): 75024 (WebCore::LayerChromium::SharedValues::maxTextureSize): 75025 (WebCore::LayerChromium::SharedValues::borderShaderProgram): 75026 (WebCore::LayerChromium::SharedValues::borderShaderMatrixLocation): 75027 (WebCore::LayerChromium::SharedValues::borderShaderColorLocation): 75028 (WebCore::LayerChromium::SharedValues::initialized): 75029 (WebCore::LayerChromium::layerRenderer): 75030 * platform/graphics/chromium/LayerRendererChromium.cpp: 75031 (WebCore::LayerRendererChromium::LayerRendererChromium): 75032 (WebCore::LayerRendererChromium::~LayerRendererChromium): 75033 (WebCore::LayerRendererChromium::debugGLCall): 75034 (WebCore::LayerRendererChromium::useShader): 75035 (WebCore::LayerRendererChromium::drawLayers): 75036 (WebCore::LayerRendererChromium::createLayerTexture): 75037 (WebCore::LayerRendererChromium::updateLayersRecursive): 75038 (WebCore::LayerRendererChromium::drawLayersRecursive): 75039 (WebCore::LayerRendererChromium::drawLayer): 75040 (WebCore::LayerRendererChromium::checkTextureSize): 75041 (WebCore::LayerRendererChromium::initializeSharedObjects): 75042 (WebCore::LayerRendererChromium::cleanupSharedObjects): 75043 * platform/graphics/chromium/LayerRendererChromium.h: 75044 (WebCore::LayerRendererChromium::projectionMatrix): 75045 (WebCore::LayerRendererChromium::layerSharedValues): 75046 (WebCore::LayerRendererChromium::contentLayerSharedValues): 75047 (WebCore::LayerRendererChromium::canvasLayerSharedValues): 75048 * platform/graphics/chromium/TransformLayerChromium.cpp: Removed. 75049 * platform/graphics/chromium/TransformLayerChromium.h: Removed. 75050 * platform/graphics/chromium/VideoLayerChromium.cpp: 75051 (WebCore::VideoLayerChromium::VideoLayerChromium): 75052 (WebCore::VideoLayerChromium::updateContents): 75053 (WebCore::VideoLayerChromium::createTextureRect): 75054 * platform/graphics/chromium/VideoLayerChromium.h: 75055 75056 2010-08-19 David Kilzer <ddkilzer (a] apple.com> 75057 75058 BUILD FIX: Fix Mac build after Windows WebKit2 changes for Netscape Plug-ins 75059 75060 * WebCore.exp.in: 75061 (WebCore::ScrollView::contentsToWindow): Added export. 75062 75063 2010-08-19 David Kilzer <ddkilzer (a] apple.com> 75064 75065 BUILD FIX #3: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled 75066 75067 Still trying to make Qt Linux Release minimal buildbot happy. 75068 75069 * plugins/PluginViewNone.cpp: Compile missing methods for Qt. 75070 75071 2010-08-19 David Kilzer <ddkilzer (a] apple.com> 75072 75073 BUILD FIX: <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled 75074 75075 Reviewed by Joseph Pecoraro. 75076 75077 * plugins/PluginView.cpp: Added #if ENABLE(NETSCAPE_PLUGIN_API) 75078 and #endif macros around the source to fix the Qt Linux Release 75079 Minimal build. 75080 75081 2010-08-19 Stephen White <senorblanco (a] chromium.org> 75082 75083 Reviewed by Kenneth Russell. 75084 75085 [CHROMIUM] Assert w/canvas image draw 75086 https://bugs.webkit.org/show_bug.cgi?id=44279 75087 75088 Don't use bitmap->pixelRef()->getPixels() directly; prefer 75089 bitmap->pixels() and an SkAutoLockPixels. Also, make sure to set 75090 the backing store state to Software when it was None. This handles 75091 missing draws when the first call is software. Finally, remove some 75092 spurious prepareForSoftwareDraw() calls in addPath() and beginPath(). 75093 It's really the fillPath() or strokePath() that matters. 75094 75095 Covered by LayoutTests/fast/canvas/arc360.html and others. 75096 75097 * platform/graphics/skia/GraphicsContextSkia.cpp: 75098 (WebCore::GraphicsContext::addPath): 75099 (WebCore::GraphicsContext::beginPath): 75100 Remove spurious prepareForSoftwareDraw() calls. 75101 * platform/graphics/skia/ImageSkia.cpp: 75102 (WebCore::drawBitmapGLES2): 75103 Lock SkBitmap's pixels, and use ->getPixels(). 75104 * platform/graphics/skia/PlatformContextSkia.cpp: 75105 (WebCore::PlatformContextSkia::prepareForSoftwareDraw): 75106 Switch backing store state to Software when it was None. 75107 75108 2010-08-19 David Kilzer <ddkilzer (a] apple.com> 75109 75110 <http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled 75111 75112 Reviewed by Joseph Pecoraro. 75113 75114 * WebCore.exp.in: 75115 (WebCore::HTMLPlugInElement::getNPObject): Moved from general 75116 section into ENABLE(NETSCAPE_PLUGIN_API) section. 75117 (WebCore::FrameView::windowClipRectForLayer): Moved from 75118 ENABLE(NETSCAPE_PLUGIN_API) section to general section since 75119 it's used by WebKit2. 75120 * plugins/PluginView.h: Added #if ENABLE(NETSCAPE_PLUGIN_API) 75121 and #endif macros as needed to make iOS WebKit build with 75122 NETSCAPE_PLUGIN_API disabled. 75123 * plugins/PluginViewNone.cpp: Ditto. 75124 (WebCore::PluginView::platformGetValueStatic): 75125 75126 2010-08-17 Eric Seidel <eric (a] webkit.org> 75127 75128 Reviewed by Adam Barth. 75129 75130 Make DocumentParser safer to use 75131 https://bugs.webkit.org/show_bug.cgi?id=43055 75132 75133 Make DocumentParser and its subclasses RefCounted, and protect 75134 HTMLDocumentParser during parsing. It's possible for a parser to 75135 get deleted if certain actions (e.g., a document.write()) occur 75136 synchronously. 75137 75138 The original version of this patch was written by Nate Chapin. 75139 75140 DocumentParser doesn't actually have to be fully RefCounted, since 75141 the only two things which should ever hold a reference to it are 75142 Document and DocumentParser itself. However using RefCounted and 75143 RefPtr was easier/cleaner than inventing a custom ref() scheme. 75144 75145 This deploys a new "detach()" method throughout the parsing 75146 framework. detach() causes the parser to disconnect from the 75147 document so that no further modifications will be made to the 75148 document while any possible DocumentParser stacks are unwound. 75149 75150 The irony of this patch is that the new detach() system is never 75151 used, since Document always outlives the DocumentParser in all of 75152 our layout tests. There is an ASSERT in ~Document() to verify 75153 that the DocumentParser will not outlive the Document. 75154 75155 However I expect that we will soon either find new test cases, or change 75156 the architecture in such a way that DocumentParser will outlive 75157 Document. At which point, the detach() plumbing will be crucial. 75158 Right now detach() serves as a safe-guard against use-after-free bugs 75159 for any case where DocumentParser does outlive the Document. 75160 75161 This also fixes test cases attached to: 75162 https://bugs.webkit.org/show_bug.cgi?id=42099 75163 75164 Tests: fast/frames/document-write-in-iframe-onload.html 75165 fast/frames/set-parent-src-synchronously.html 75166 fast/parser/document-close-iframe-load.html 75167 fast/parser/document-close-nested-iframe-load.html 75168 fast/parser/iframe-sets-parent-to-javascript-url.html 75169 75170 * dom/Document.cpp: 75171 - Added a new detachParser() call to be used anywhere we 75172 used to call m_parser.clear(). 75173 There is an ASSERT in ~DocumentParser which ensures that 75174 we get this right. 75175 (WebCore::Document::removedLastRef): 75176 (WebCore::Document::~Document): 75177 (WebCore::Document::createParser): 75178 (WebCore::Document::detachParser): 75179 (WebCore::Document::cancelParsing): 75180 (WebCore::Document::implicitOpen): 75181 - removed redundant m_parser.clear() 75182 (WebCore::Document::implicitClose): 75183 * dom/Document.h: 75184 * dom/DocumentParser.cpp: 75185 (WebCore::DocumentParser::~DocumentParser): 75186 - ASSERT that callers always call detach() before destruction. 75187 - This ASSERT might prove too cumbersome, but for now it's useful. 75188 (WebCore::DocumentParser::detach): 75189 * dom/DocumentParser.h: 75190 * dom/RawDataDocumentParser.h: 75191 * dom/XMLDocumentParser.cpp: 75192 (WebCore::XMLDocumentParser::finish): 75193 - Add a FIXME explaining part of the reason why 75194 stopParsing() and detach() are separate concepts. 75195 * dom/XMLDocumentParser.h: 75196 (WebCore::XMLDocumentParser::create): 75197 * dom/XMLDocumentParserLibxml2.cpp: 75198 (WebCore::XMLDocumentParser::parseDocumentFragment): 75199 * dom/XMLDocumentParserQt.cpp: 75200 (WebCore::XMLDocumentParser::parseDocumentFragment): 75201 * html/HTMLConstructionSite.cpp: 75202 (WebCore::HTMLConstructionSite::detach): 75203 (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded): 75204 * html/HTMLConstructionSite.h: 75205 * html/HTMLDocument.cpp: 75206 (WebCore::HTMLDocument::createParser): 75207 * html/HTMLDocument.h: 75208 * html/HTMLDocumentParser.cpp: 75209 - We need to protect(this) before calling into any code 75210 which might cause the parser to be destroyed. 75211 (WebCore::HTMLDocumentParser::~HTMLDocumentParser): 75212 (WebCore::HTMLDocumentParser::detach): 75213 (WebCore::HTMLDocumentParser::resumeParsingAfterYield): 75214 (WebCore::HTMLDocumentParser::pumpTokenizer): 75215 (WebCore::HTMLDocumentParser::insert): 75216 (WebCore::HTMLDocumentParser::append): 75217 (WebCore::HTMLDocumentParser::end): 75218 (WebCore::HTMLDocumentParser::finish): 75219 (WebCore::HTMLDocumentParser::notifyFinished): 75220 (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets): 75221 (WebCore::HTMLDocumentParser::parseDocumentFragment): 75222 * html/HTMLDocumentParser.h: 75223 (WebCore::HTMLDocumentParser::create): 75224 * html/HTMLScriptRunner.cpp: 75225 (WebCore::HTMLScriptRunner::detach): 75226 (WebCore::HTMLScriptRunner::executeParsingBlockingScript): 75227 (WebCore::HTMLScriptRunner::executeScript): 75228 (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets): 75229 (WebCore::HTMLScriptRunner::runScript): 75230 * html/HTMLScriptRunner.h: 75231 * html/HTMLTreeBuilder.cpp: 75232 (WebCore::HTMLTreeBuilder::detach): 75233 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 75234 (WebCore::HTMLTreeBuilder::finished): 75235 * html/HTMLTreeBuilder.h: 75236 * html/HTMLViewSourceDocument.cpp: 75237 (WebCore::HTMLViewSourceDocument::createParser): 75238 * html/HTMLViewSourceDocument.h: 75239 * html/HTMLViewSourceParser.cpp: 75240 (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): 75241 * html/HTMLViewSourceParser.h: 75242 (WebCore::HTMLViewSourceParser::create): 75243 * loader/FTPDirectoryDocument.cpp: 75244 (WebCore::FTPDirectoryDocumentParser::create): 75245 (WebCore::FTPDirectoryDocument::createParser): 75246 * loader/FTPDirectoryDocument.h: 75247 * loader/ImageDocument.cpp: 75248 (WebCore::ImageDocumentParser::create): 75249 (WebCore::ImageDocumentParser::ImageDocumentParser): 75250 (WebCore::ImageDocument::createParser): 75251 * loader/ImageDocument.h: 75252 * loader/MediaDocument.cpp: 75253 (WebCore::MediaDocumentParser::create): 75254 (WebCore::MediaDocument::createParser): 75255 * loader/MediaDocument.h: 75256 * loader/PluginDocument.cpp: 75257 (WebCore::PluginDocumentParser::create): 75258 (WebCore::PluginDocument::createParser): 75259 * loader/PluginDocument.h: 75260 * loader/SinkDocument.cpp: 75261 (WebCore::SinkDocumentParser::create): 75262 (WebCore::SinkDocument::createParser): 75263 * loader/SinkDocument.h: 75264 * loader/TextDocument.cpp: 75265 (WebCore::TextDocumentParser::create): 75266 (WebCore::TextDocument::createParser): 75267 (WebCore::createTextDocumentParser): 75268 * loader/TextDocument.h: 75269 75270 2010-08-19 David Kilzer <ddkilzer (a] apple.com> 75271 75272 Fix compilation of SelectElement.cpp with ARROW_KEYS_POP_MENU == 0 75273 75274 Reviewed by Simon Fraser. 75275 75276 * dom/SelectElement.cpp: 75277 (WebCore::SelectElement::menuListDefaultEventHandler): Added 75278 UNUSED_PARAM() macro for htmlForm argument when 75279 ARROW_KEYS_POP_MENU defined as zero. 75280 75281 2010-08-19 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 75282 75283 Reviewed by Simon Hausmann. 75284 75285 [Qt] Disable XSLT for production configuration 75286 https://bugs.webkit.org/show_bug.cgi?id=37445 75287 75288 Introduce a new CONFIG option to maintain stable configuration for 75289 the QtWebKit port and disable XSLT for the stable configuration 75290 because of bug 37445. 75291 75292 No new tests as there is no new functionality. 75293 75294 * features.pri: 75295 75296 2010-08-18 Zhenyao Mo <zmo (a] google.com> 75297 75298 Reviewed by Kenneth Russell. 75299 75300 Implement strict type checking in js bindings for WebGL functions 75301 https://bugs.webkit.org/show_bug.cgi?id=44202 75302 75303 Test: fast/canvas/webgl/bad-arguments-test.html 75304 75305 * bindings/js/JSWebGLRenderingContextCustom.cpp: Add type check for wrapper types and DOMString and throw error in case of mismatch. 75306 (WebCore::JSWebGLRenderingContext::getAttachedShaders): 75307 (WebCore::JSWebGLRenderingContext::getProgramParameter): 75308 (WebCore::JSWebGLRenderingContext::getShaderParameter): 75309 (WebCore::JSWebGLRenderingContext::getUniform): 75310 (WebCore::dataFunctionf): 75311 (WebCore::dataFunctioni): 75312 (WebCore::dataFunctionMatrix): 75313 * bindings/scripts/CodeGeneratorJS.pm: Ditto. 75314 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 75315 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: Ditto. 75316 (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback): 75317 (WebCore::V8WebGLRenderingContext::getProgramParameterCallback): 75318 (WebCore::V8WebGLRenderingContext::getShaderParameterCallback): 75319 (WebCore::V8WebGLRenderingContext::getUniformCallback): 75320 (WebCore::vertexAttribAndUniformHelperf): 75321 (WebCore::uniformHelperi): 75322 (WebCore::uniformMatrixHelper): 75323 * html/canvas/WebGLRenderingContext.idl: Add attribute StrictTypeChecking for WebGL functions. 75324 75325 2010-08-19 Simon Fraser <simon.fraser (a] apple.com> 75326 75327 Reviewed by Sam Weinig. 75328 75329 Clean up some selection code 75330 https://bugs.webkit.org/show_bug.cgi?id=44314 75331 75332 Change the concept of "layout" in SelectionController to "updateCaretRect", renaming 75333 methods accordingly. 75334 75335 Move selection and printing methods in RenderView.h into groups. 75336 75337 No behavioral changes. 75338 75339 * editing/SelectionController.cpp: 75340 (WebCore::SelectionController::SelectionController): 75341 (WebCore::SelectionController::setSelection): 75342 (WebCore::SelectionController::modify): 75343 (WebCore::SelectionController::setCaretRectNeedsUpdate): 75344 (WebCore::SelectionController::updateCaretRect): 75345 (WebCore::SelectionController::localCaretRect): 75346 (WebCore::SelectionController::recomputeCaretRect): Test m_caretRectNeedsUpdate first. 75347 (WebCore::SelectionController::invalidateCaretRect): 75348 * editing/SelectionController.h: 75349 * page/FrameView.cpp: 75350 (WebCore::FrameView::layout): 75351 * rendering/RenderLayer.cpp: 75352 (WebCore::RenderLayer::scrollToOffset): 75353 * rendering/RenderView.h: 75354 (WebCore::RenderView::selectionStart): 75355 (WebCore::RenderView::selectionEnd): 75356 (WebCore::RenderView::printRect): 75357 (WebCore::RenderView::setPrintRect): 75358 75359 2010-08-19 Simon Fraser <simon.fraser (a] apple.com> 75360 75361 Fix Chromium build. 75362 75363 * svg/SVGElement.cpp: 75364 (WebCore::SVGElement::attributeChanged): 75365 75366 2010-08-19 Simon Fraser <simon.fraser (a] apple.com> 75367 75368 Reviewed by Nikolas Zimmermann. 75369 75370 HTMLElement::isContentEditable() can cause an updateStyleIfNeeded() to happen in the middle of layout 75371 https://bugs.webkit.org/show_bug.cgi?id=21834 75372 <rdar://problem/8093653&8261394> 75373 75374 If we're in the middle of layout, or painting, and something causes updateStyleIfNeeded() to 75375 get called, then we can end up entering recalcStyle() during layout or painting. This is bad 75376 because it can create/destry the renderers and RenderLayers which are in use by layout/painting. 75377 This is the cause of a number of random crashers, some of which show up more frequently 75378 in content which uses accelerated compositing. 75379 75380 The changes here: 75381 1. Add an assertion in Document::updateStyleIfNeeded() that we are not laying out or painting. 75382 2. Remove calls to updateStyleIfNeeded() in editing and caret painting code 75383 3. Pass along information to CTM and BBox-related SVG methods to indicate whether it's safe 75384 to update style. 75385 75386 Tested by new assertions and existing tests. 75387 75388 * dom/Document.cpp: 75389 (WebCore::Document::updateStyleIfNeeded): New assertion that we are not mid-layout or painting. 75390 (WebCore::command): Call updateStyleIfNeeded() to ensure that subsequent calls to isContentEditable() 75391 return the correct result. 75392 75393 * dom/Element.cpp: 75394 (WebCore::Element::focus): Move the supportsFocus() call to after style has been updated. 75395 75396 * editing/SelectionController.cpp: 75397 (WebCore::SelectionController::localCaretRect): 75398 (WebCore::SelectionController::caretRepaintRect): 75399 (WebCore::SelectionController::paintCaret): 75400 * editing/SelectionController.h: 75401 (WebCore::SelectionController::localCaretRectForPainting): When painting, use localCaretRectForPainting() 75402 which does not update style. Make localCaretRect() non-const so allowing it to update style without ugly casts. 75403 75404 * html/HTMLElement.cpp: 75405 (WebCore::HTMLElement::isContentEditable): Don't call updateStyleIfNeeded() here. 75406 (WebCore::HTMLElement::isContentRichlyEditable): Ditto. 75407 (WebCore::HTMLElement::contentEditable): Ditto. 75408 75409 * page/FrameView.h: 75410 (WebCore::FrameView::isMidLayout): New accessor, used for asserting. 75411 75412 * rendering/RenderPath.cpp: 75413 (WebCore::fillAndStrokePath): Pass DisallowStyleUpdate to getScreenCTM since we are painting. 75414 * rendering/RenderSVGResourceContainer.cpp: 75415 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): This is only called when 75416 painting, so use DisallowStyleUpdate. 75417 75418 * svg/SVGElement.cpp: 75419 (WebCore::SVGElement::attributeChanged): Changes to the style attribute should not have 75420 side effects, since a call to Element::getAttribute() is allowed to result in a call to 75421 setAttribute() for the style attribute. To avoid updateStyleIfNeeded() during painting, 75422 this must not cause SVG to do extra work. 75423 75424 * svg/SVGLocatable.cpp: Pass StyleUpdateStrategy down to these methods to indicate 75425 whether it's OK to update style. 75426 (WebCore::SVGLocatable::getBBox): 75427 (WebCore::SVGLocatable::computeCTM): 75428 (WebCore::SVGLocatable::getTransformToElement): 75429 * svg/SVGLocatable.h: 75430 (WebCore::SVGLocatable::): 75431 * svg/SVGStyledLocatableElement.cpp: 75432 (WebCore::SVGStyledLocatableElement::getBBox): 75433 (WebCore::SVGStyledLocatableElement::getCTM): 75434 (WebCore::SVGStyledLocatableElement::getScreenCTM): 75435 * svg/SVGStyledLocatableElement.h: 75436 * svg/SVGStyledTransformableElement.cpp: 75437 (WebCore::SVGStyledTransformableElement::getCTM): 75438 (WebCore::SVGStyledTransformableElement::getScreenCTM): 75439 (WebCore::SVGStyledTransformableElement::getBBox): 75440 * svg/SVGStyledTransformableElement.h: 75441 * svg/SVGTextElement.cpp: 75442 (WebCore::SVGTextElement::getBBox): 75443 (WebCore::SVGTextElement::getCTM): 75444 (WebCore::SVGTextElement::getScreenCTM): 75445 * svg/SVGTextElement.h: 75446 75447 2010-08-19 Ryosuke Niwa <rniwa (a] webkit.org> 75448 75449 Reviewed by Darin Adler. 75450 75451 Range, EAnnotateForInterchange, and EAbsoluteURLs should be member variables of MarkupAccumulator 75452 https://bugs.webkit.org/show_bug.cgi?id=44229 75453 75454 No new tests are added since this is a clean up. 75455 75456 * editing/markup.cpp: 75457 (WebCore::MarkupAccumulator::MarkupAccumulator): Added shouldResolveURLs, shouldAnnotate, and range. 75458 (WebCore::MarkupAccumulator::shouldResolveURLs): Private inline accessor for m_shouldResolveURLs. 75459 (WebCore::MarkupAccumulator::shouldAnnotate): Private inline accessor for m_shouldAnnotate. 75460 (WebCore::MarkupAccumulator::appendEndTag): Renamed local variable result to markup. 75461 (WebCore::MarkupAccumulator::appendStartTag): Removed range, annotate, shouldResolveURLs from the function arguments. 75462 (WebCore::MarkupAccumulator::wrapWithNode): Ditto. 75463 (WebCore::MarkupAccumulator::appendStartMarkup): Ditto. 75464 (WebCore::serializeNodes): Ditto and uses MarkupAccumulator. 75465 (WebCore::createMarkup): Uses MarkupAccumulator. 75466 (WebCore::serializeNodesWithNamespaces): Ditto. 75467 75468 2010-08-19 Pavel Feldman <pfeldman (a] chromium.org> 75469 75470 Reviewed by Yury Semikhatsky. 75471 75472 Web Inspector: do not dump inspector errors into the inspected window console. 75473 https://bugs.webkit.org/show_bug.cgi?id=44272 75474 75475 * inspector/front-end/inspector.js: 75476 (WebInspector.reportProtocolError): 75477 75478 2010-08-19 Jeremy Orlow <jorlow (a] chromium.org> 75479 75480 Chromium build fix. 75481 75482 Use ASSERT_UNUSED on variables that aren't used besides by the ASSERT. 75483 75484 * storage/IDBDatabaseBackendImpl.cpp: 75485 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 75486 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 75487 (WebCore::IDBDatabaseBackendImpl::loadObjectStores): 75488 * storage/IDBObjectStoreBackendImpl.cpp: 75489 (WebCore::IDBObjectStoreBackendImpl::get): 75490 (WebCore::IDBObjectStoreBackendImpl::put): 75491 (WebCore::IDBObjectStoreBackendImpl::remove): 75492 (WebCore::IDBObjectStoreBackendImpl::createIndex): 75493 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 75494 (WebCore::IDBObjectStoreBackendImpl::openCursor): 75495 (WebCore::IDBObjectStoreBackendImpl::loadIndexes): 75496 75497 2010-08-19 Andrey Kosyakov <caseq (a] chromium.org> 75498 75499 Reviewed by Pavel Feldman. 75500 75501 Web Inspector: expose Panel.onSelectionChanged in extension API 75502 https://bugs.webkit.org/show_bug.cgi?id=44171 75503 75504 * inspector/front-end/ExtensionAPI.js: 75505 (injectedExtensionAPI.PanelImpl): 75506 (injectedExtensionAPI): 75507 75508 2010-08-19 Andrei Popescu <andreip (a] google.com> 75509 75510 Reviewed by Jeremy Orlow. 75511 75512 [IndexedDB] Abort idle IDBTransactions when the JS context they were created in finishes execution. 75513 https://bugs.webkit.org/show_bug.cgi?id=44101 75514 75515 This change also introduces the TransactionCoordinator, which will be used 75516 to schedule transactions for execution. 75517 75518 Test: storage/indexeddb/transaction-basics.html 75519 75520 * WebCore.gypi: 75521 * bindings/v8/V8DOMWrapper.cpp: 75522 (WebCore::V8DOMWrapper::convertEventTargetToV8Object): 75523 * bindings/v8/V8Proxy.cpp: 75524 (WebCore::V8Proxy::runScript): 75525 (WebCore::V8Proxy::callFunction): 75526 (WebCore::V8Proxy::didLeaveScriptContext): 75527 * bindings/v8/V8Proxy.h: 75528 * dom/EventTarget.cpp: 75529 (WebCore::EventTarget::toIDBTransaction): 75530 * dom/EventTarget.h: 75531 * page/PageGroup.h: 75532 (WebCore::PageGroup::hasIDBFactory): 75533 * storage/IDBAbortEvent.cpp: Added. 75534 (WebCore::IDBAbortEvent::create): 75535 (WebCore::IDBAbortEvent::IDBAbortEvent): 75536 (WebCore::IDBAbortEvent::~IDBAbortEvent): 75537 * storage/IDBAbortEvent.h: Added. 75538 (WebCore::IDBAbortEvent::isIDBAbortEvent): 75539 * storage/IDBDatabase.cpp: 75540 (WebCore::IDBDatabase::transaction): 75541 * storage/IDBDatabaseBackendImpl.cpp: 75542 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 75543 (WebCore::IDBDatabaseBackendImpl::transaction): 75544 * storage/IDBDatabaseBackendImpl.h: 75545 (WebCore::IDBDatabaseBackendImpl::create): 75546 * storage/IDBDatabaseBackendInterface.h: 75547 * storage/IDBFactoryBackendImpl.cpp: 75548 (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): 75549 (WebCore::IDBFactoryBackendImpl::open): 75550 (WebCore::IDBFactoryBackendImpl::abortPendingTransactions): 75551 * storage/IDBFactoryBackendImpl.h: 75552 * storage/IDBFactoryBackendInterface.h: 75553 * storage/IDBPendingTransactionMonitor.cpp: Added. 75554 (WebCore::IDBPendingTransactionMonitor::addPendingTransaction): 75555 (WebCore::IDBPendingTransactionMonitor::removePendingTransaction): 75556 (WebCore::IDBPendingTransactionMonitor::clearPendingTransactions): 75557 (WebCore::IDBPendingTransactionMonitor::pendingTransactions): 75558 * storage/IDBPendingTransactionMonitor.h: Added. 75559 * storage/IDBTransaction.cpp: 75560 (WebCore::IDBTransaction::IDBTransaction): 75561 (WebCore::IDBTransaction::onAbort): 75562 (WebCore::IDBTransaction::id): 75563 (WebCore::IDBTransaction::stop): 75564 (WebCore::IDBTransaction::timerFired): 75565 * storage/IDBTransaction.h: 75566 * storage/IDBTransactionBackendInterface.h: 75567 * storage/IDBTransactionCallbacks.h: Added. 75568 (WebCore::IDBTransactionCallbacks::~IDBTransactionCallbacks): 75569 * storage/IDBTransactionCoordinator.cpp: Added. 75570 (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl): 75571 (WebCore::IDBTransactionBackendImpl::create): 75572 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): 75573 (WebCore::IDBTransactionBackendImpl::objectStore): 75574 (WebCore::IDBTransactionBackendImpl::mode): 75575 (WebCore::IDBTransactionBackendImpl::scheduleTask): 75576 (WebCore::IDBTransactionBackendImpl::abort): 75577 (WebCore::IDBTransactionBackendImpl::sqliteDatabase): 75578 (WebCore::IDBTransactionBackendImpl::id): 75579 (WebCore::IDBTransactionBackendImpl::setCallbacks): 75580 (WebCore::IDBTransactionCoordinator::IDBTransactionCoordinator): 75581 (WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator): 75582 (WebCore::IDBTransactionCoordinator::createTransaction): 75583 (WebCore::IDBTransactionCoordinator::abort): 75584 * storage/IDBTransactionCoordinator.h: Added. 75585 (WebCore::IDBTransactionCoordinator::create): 75586 75587 2010-08-19 Pavel Feldman <pfeldman (a] chromium.org> 75588 75589 Reviewed by Yury Semikhatsky. 75590 75591 Chromium DevTools: There is no need in resource-based InjectedScript.js source. 75592 Now that we populate front-end after its onload handler, we don't need 75593 to install injected script early. Exposing injected script source on the WebCore 75594 level here. 75595 https://bugs.webkit.org/show_bug.cgi?id=44029 75596 75597 * inspector/InjectedScriptHost.h: 75598 (WebCore::InjectedScriptHost::injectedScriptSource): 75599 75600 2010-08-18 Jeremy Orlow <jorlow (a] chromium.org> 75601 75602 Reviewed by Steve Block. 75603 75604 Implement persistance for IndexedDB ObjectStores 75605 https://bugs.webkit.org/show_bug.cgi?id=44164 75606 75607 Get rid of the in-memory storage of ObjectStores and instead 75608 use SQL backed memory. 75609 75610 Existing tests give most of the coverage. Will update the manual 75611 test in the next patch (which will also re-work database.description). 75612 75613 * manual-tests/indexed-database.html: Get rid of race where you can click before the page loads. 75614 * platform/sql/SQLiteStatement.cpp: Add two helper functions 75615 (WebCore::SQLiteStatement::bindInt): 75616 (WebCore::SQLiteStatement::isColumnNull): 75617 * platform/sql/SQLiteStatement.h: 75618 * storage/IDBCursorBackendImpl.cpp: 75619 * storage/IDBDatabaseBackendImpl.cpp: 75620 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 75621 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 75622 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 75623 (WebCore::IDBDatabaseBackendImpl::importObjectStores): 75624 * storage/IDBDatabaseBackendImpl.h: 75625 (WebCore::IDBDatabaseBackendImpl::sqliteDatabase): 75626 * storage/IDBFactoryBackendImpl.cpp: 75627 (WebCore::createTables): 75628 * storage/IDBIndexBackendImpl.cpp: 75629 (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): 75630 (WebCore::IDBIndexBackendImpl::sqliteDatabase): 75631 * storage/IDBIndexBackendImpl.h: 75632 (WebCore::IDBIndexBackendImpl::create): 75633 * storage/IDBObjectStoreBackendImpl.cpp: 75634 (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): 75635 (WebCore::whereClause): 75636 (WebCore::bindKey): 75637 (WebCore::IDBObjectStoreBackendImpl::get): 75638 (WebCore::IDBObjectStoreBackendImpl::put): 75639 (WebCore::IDBObjectStoreBackendImpl::remove): 75640 (WebCore::IDBObjectStoreBackendImpl::createIndex): 75641 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 75642 (WebCore::IDBObjectStoreBackendImpl::openCursor): 75643 (WebCore::IDBObjectStoreBackendImpl::importIndexes): 75644 (WebCore::IDBObjectStoreBackendImpl::sqliteDatabase): 75645 * storage/IDBObjectStoreBackendImpl.h: 75646 (WebCore::IDBObjectStoreBackendImpl::create): 75647 (WebCore::IDBObjectStoreBackendImpl::database): 75648 75649 2010-08-19 Nikolas Zimmermann <nzimmermann (a] rim.com> 75650 75651 Reviewed by Dirk Schulze. 75652 75653 Pattern is rasterized 75654 https://bugs.webkit.org/show_bug.cgi?id=41396 75655 75656 SVG pattern size changed when resizing browser 75657 https://bugs.webkit.org/show_bug.cgi?id=38704 75658 75659 Incorrect pattern tilling 75660 https://bugs.webkit.org/show_bug.cgi?id=41603 75661 75662 Apply same fixes to <pattern> that <mask> recently received. Build the tile image in absolute coordinates, 75663 to avoid pixelation, when the target element is scaled. Also fixes problems when zooming into patterns. 75664 75665 Clamp ImageBuffer sizes to RenderSVGRoots viewport, now that gradient/pattern and mask buffers are created 75666 in absolute coordinates -> no more huge image buffer allocations, that could fail. 75667 75668 Drop overflow="visible" support for <pattern>, which complicates the code a lot. Neither Opera nor Firefox 75669 support this, and SVG 1.1 2nd Edition says that the rendering behaviour is "undefined". 75670 75671 Tests: svg/batik/paints/patternRegions-positioned-objects.svg 75672 svg/custom/pattern-incorrect-tiling.svg 75673 svg/custom/pattern-no-pixelation.svg 75674 svg/transforms/text-with-mask-with-svg-transform.svg 75675 75676 * rendering/PaintInfo.h: 75677 (WebCore::PaintInfo::applyTransform): Don't alter the repaint rect if it's infinite (only affects SVG). 75678 (WebCore::PaintInfo::infiniteRect): Moved from RenderLayer into PaintInfo, as applyTransform() needs it. 75679 * rendering/RenderLayer.cpp: 75680 (WebCore::RenderLayer::calculateClipRects): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/ 75681 * rendering/RenderLayer.h: Moved infiniteRect() to PaintInfo. 75682 * rendering/RenderLayerBacking.cpp: 75683 (WebCore::clipBox): s/ClipRects::infiniteRect/PaintInfo::infiniteRect/ 75684 * rendering/RenderLayerCompositor.cpp: 75685 (WebCore::RenderLayerCompositor::clippedByAncestor): Ditto. 75686 * rendering/RenderSVGResourceGradient.cpp: 75687 (WebCore::createMaskAndSwapContextForTextGradient): Clamp image buffer size, use new SVGImageBufferTools helper methods for that. 75688 (WebCore::clipToTextMask): Adapt to renames/code changes in SVGImageBufferTools. 75689 (WebCore::RenderSVGResourceGradient::applyResource): Ditto. 75690 * rendering/RenderSVGResourceMasker.cpp: 75691 (WebCore::RenderSVGResourceMasker::applyResource): lamp image buffer size, use new SVGImageBufferTools helper methods for that. 75692 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): Adapt to renames/code changes in SVGImageBufferTools. 75693 * rendering/RenderSVGResourceMasker.h: 75694 * rendering/RenderSVGResourcePattern.cpp: 75695 (WebCore::RenderSVGResourcePattern::applyResource): Rewrite to create tile image buffers in absolute coordinates, avoids pixelation artefacts. 75696 (WebCore::calculatePatternBoundaries): 75697 (WebCore::RenderSVGResourcePattern::buildTileImageTransform): 75698 (WebCore::RenderSVGResourcePattern::createTileImage): 75699 * rendering/RenderSVGResourcePattern.h: 75700 * rendering/SVGImageBufferTools.cpp: 75701 (WebCore::SVGImageBufferTools::transformationToOutermostSVGCoordinateSystem): Helper method, concating all localToParentTransforms() up until RenderSVGRoot is reached. 75702 (WebCore::SVGImageBufferTools::createImageBuffer): Simplified. 75703 (WebCore::SVGImageBufferTools::clipToImageBuffer): Rename absoluteTargetRect to clampedAbsoluteTargetRect. 75704 (WebCore::SVGImageBufferTools::roundedImageBufferSize): New helper method to centralize FloatSize -> IntSize rounding, when creating image buffers. 75705 (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRectForRenderer): New helper methods to clamp an image buffer rect against the viewport. 75706 * rendering/SVGImageBufferTools.h: 75707 * rendering/SVGRenderSupport.cpp: 75708 (WebCore::SVGRenderSupport::renderSubtreeToImage): Use PaintInfo::infiniteRect() as repaint rect, to avoid any culling. 75709 (WebCore::SVGRenderSupport::findTreeRootObject): Renamed from svgRootTreeObject, and expose it. 75710 (WebCore::SVGRenderSupport::layoutChildren): s/svgRootTreeObject/findTreeRootObject/. 75711 * rendering/SVGRenderSupport.h: 75712 * svg/SVGSVGElement.cpp: 75713 (WebCore::SVGSVGElement::setCurrentTranslate): Be sure to relayout on invalidation, otherwhise resources are not updated, and we have to update them, as they depend on the absolute transform. 75714 75715 2010-08-19 Alejandro G. Castro <alex (a] igalia.com> 75716 75717 Reviewed by Dirk Schulze. 75718 75719 [GTK] The size of the shadow image uses the standard deviation 75720 size instead of the blur radius 75721 https://bugs.webkit.org/show_bug.cgi?id=40793 75722 75723 The kernelSize variable was renamed to radius and recalculated 75724 considering the CSS3 specification 75725 http://www.w3.org/TR/css3-background/#the-box-shadow, and the 75726 visual result of other browsers. The HTML5 canvas shadow standard 75727 deviation calculation that was used, was not appropiate for the 75728 blur distance specified in the CSS3. 75729 75730 * platform/graphics/GraphicsContext.h: 75731 * platform/graphics/cairo/FontCairo.cpp: 75732 (WebCore::Font::drawGlyphs): 75733 * platform/graphics/cairo/GraphicsContextCairo.cpp: 75734 (WebCore::GraphicsContext::calculateShadowBufferDimensions): 75735 Changed the calculation, now we use the parameter in the style 75736 directly as recomended in the CSS3 standard. 75737 (WebCore::drawPathShadow): 75738 (WebCore::drawBorderlessRectShadow): 75739 (WebCore::GraphicsContext::createPlatformShadow): We get the 75740 standard deviation from the radius using the new function and we 75741 create the filter with that deviation. 75742 * platform/graphics/cairo/ImageCairo.cpp: 75743 (WebCore::BitmapImage::draw): 75744 * platform/graphics/filters/FEGaussianBlur.cpp: 75745 (WebCore::FEGaussianBlur::calculateStdDeviation): Added this 75746 function that gets the standard deviation from the blur 75747 radius. Required in the CSS3 case where we have this radio and we 75748 need the deviation to initialize the algorithm. 75749 * platform/graphics/filters/FEGaussianBlur.h: 75750 75751 2010-08-19 Andreas Kling <andreas.kling (a] nokia.com> 75752 75753 Reviewed by Kenneth Rohde Christiansen. 75754 75755 [Qt] Avoid unnecessary string copy in TextCodecQt::decode() 75756 https://bugs.webkit.org/show_bug.cgi?id=44232 75757 75758 * platform/text/qt/TextCodecQt.cpp: 75759 (WebCore::TextCodecQt::decode): Use String::append(const UChar*, int) 75760 to avoid creating a temporary string. 75761 75762 2010-08-19 Philippe Normand <pnormand (a] igalia.com> 75763 75764 Reviewed by Gustavo Noronha Silva. 75765 75766 [GStreamer] GTK XOverlay support in GStreamerGWorld 75767 https://bugs.webkit.org/show_bug.cgi?id=39474 75768 75769 GStreamerGWorld now catches synchronous messages coming from the 75770 sinks and creates a GTK window where the video can be overlayed if 75771 fullscreen display is requested using enterFullscreen. 75772 75773 * GNUmakefile.am: 75774 * platform/graphics/gstreamer/GStreamerGWorld.cpp: 75775 (WebCore::gstGWorldSyncMessageCallback): 75776 (WebCore::GStreamerGWorld::GStreamerGWorld): 75777 (WebCore::GStreamerGWorld::~GStreamerGWorld): 75778 (WebCore::GStreamerGWorld::enterFullscreen): 75779 (WebCore::GStreamerGWorld::exitFullscreen): 75780 (WebCore::GStreamerGWorld::setWindowOverlay): 75781 * platform/graphics/gstreamer/GStreamerGWorld.h: 75782 (WebCore::GStreamerGWorld::pipeline): 75783 (WebCore::GStreamerGWorld::platformVideoWindow): 75784 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 75785 * platform/graphics/gstreamer/PlatformVideoWindow.h: Added. 75786 (WebCore::PlatformVideoWindow::createWindow): 75787 (WebCore::PlatformVideoWindow::window): 75788 (WebCore::PlatformVideoWindow::videoWindowId): 75789 * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp: Added. 75790 (PlatformVideoWindow::PlatformVideoWindow): 75791 75792 2010-08-19 Eric Uhrhane <ericu (a] chromium.org> 75793 75794 Reviewed by David Levin. 75795 75796 Add idl and mock classes for FileWriter. 75797 https://bugs.webkit.org/show_bug.cgi?id=44075 75798 75799 No new tests, since there's no new functionality. 75800 75801 New do-nothing classes, but the real IDL: 75802 * FileWriter.idl: 75803 * FileWriter.h: 75804 * FileWriter.cpp: 75805 75806 The build file changes to include the above: 75807 * CMakeLists.txt: 75808 * DerivedSources.cpp: 75809 * DerivedSources.make: 75810 * GNUmakefile.am: 75811 * WebCore.gypi: 75812 * WebCore.pri: 75813 * WebCore.pro: 75814 * WebCore.vcproj/WebCore.vcproj: 75815 * WebCore.xcodeproj/project.pbxproj: 75816 75817 Added FileWriter event names and required EventTarget changes. 75818 * dom/EventNames.h: 75819 * dom/EventTarget.cpp: 75820 (WebCore::EventTarget::toFileWriter): 75821 * dom/EventTarget.h: 75822 75823 2010-08-18 Andreas Kling <andreas.kling (a] nokia.com> 75824 75825 Rubber-stamped by Ariya Hidayat. 75826 75827 [Qt] Remove unused variable in GraphicsContext::fillRect() 75828 75829 * platform/graphics/qt/GraphicsContextQt.cpp: 75830 (WebCore::GraphicsContext::fillRect): 75831 75832 2010-08-18 Ariya Hidayat <ariya (a] sencha.com> 75833 75834 Reviewed by Kenneth Rohde Christiansen. 75835 75836 [Qt] Short lived shadow buffer for blur operation 75837 https://bugs.webkit.org/show_bug.cgi?id=44094 75838 75839 ContextShadow needs a scratch image as the buffer for the blur filter. 75840 Instead of creating and destroying the buffer for every operation, 75841 we create a buffer which will be automatically purged via a timer. 75842 75843 * platform/graphics/qt/ContextShadow.cpp: 75844 (WebCore::): 75845 (WebCore::ShadowBuffer::ShadowBuffer): 75846 (WebCore::ShadowBuffer::scratchImage): 75847 (WebCore::ShadowBuffer::schedulePurge): 75848 (WebCore::ShadowBuffer::purgeBuffer): 75849 (WebCore::ContextShadow::drawShadowRect): 75850 75851 2010-08-18 Alexey Marinichev <amarinichev (a] chromium.org> 75852 75853 Reviewed by Darin Fisher. 75854 75855 [chromium] scrolling issues when accelerated compositor is enabled 75856 https://bugs.webkit.org/show_bug.cgi?id=43992 75857 75858 Corrected scroll position not being updated, and an off-by-half error. 75859 Int cast and floorf are taken out because they produce incorrect 75860 transformation matrix. The information lost there is not immediately 75861 obvious because of rounding that happens when texture is mapped with 75862 GL_NEAREST filtering mode. These errors accumulate, and after some 75863 scrolling it becomes more apparent. 75864 75865 To test the former, follow instructions in the bug. To test the 75866 latter, change GL_NEAREST to GL_LINEAR in LayerRendererChromium.cpp. 75867 Scrolling should work properly for all window sizes, without blurring 75868 images and shifting them to the left. 75869 75870 * platform/graphics/chromium/LayerRendererChromium.cpp: 75871 (WebCore::LayerRendererChromium::drawLayers): 75872 75873 2010-08-18 Simon Hausmann <simon.hausmann (a] nokia.com> 75874 75875 Reviewed by Ariya Hidayat. 75876 75877 [Qt] Implement GraphicsContext::clipOut more efficiently 75878 https://bugs.webkit.org/show_bug.cgi?id=43416 75879 75880 The current implementation of clipOut uses QPainter::clipRegion().boundingRect(), 75881 which is a very slow function because it converts the entire clip region - which 75882 may potentially contain a complex path - into a set of QRegion rectangles, just 75883 to throw away all that information and use the bounding rect. 75884 75885 QTBUG-12618 implements a faster function in QPainter: QPainter::clipBoundingRect(). 75886 75887 * platform/graphics/qt/GraphicsContextQt.cpp: 75888 (WebCore::GraphicsContext::clipOut): Use QPainter::clipBoundingRect() with Qt >= 4.8. 75889 (WebCore::GraphicsContext::clipOutEllipseInRect): Ditto. 75890 75891 2010-08-18 Martin Robinson <mrobinson (a] igalia.com> 75892 75893 Reviewed by Gustavo Noronha Silva. 75894 75895 [GTK] Since the GSEAL changes moz_gtk_scrollbar_button_paint fiddles the widget allocation but doesn't preserve it 75896 https://bugs.webkit.org/show_bug.cgi?id=44211 75897 75898 No new tests as we do not currently use the scrollbar button painting 75899 code. Tests for this issue will be enabled when we have pixel tests 75900 for WebCore-drawn interior frame scrollbars. 75901 75902 * platform/gtk/GtkVersioning.h: Add backward-compatible functions for getting 75903 and setting the widget allocation. 75904 * platform/gtk/gtk2drawing.c: 75905 (moz_gtk_scrollbar_button_paint): Use new backward-compatible functions for getting 75906 and setting the widget allocation. 75907 75908 2010-08-18 Ryosuke Niwa <rniwa (a] webkit.org> 75909 75910 Reviewed by Darin Adler. 75911 75912 Group functions in markup.cpp into MarkupAccumulatorWrapper 75913 https://bugs.webkit.org/show_bug.cgi?id=43936 75914 75915 Renamed MarkupAccumulatorWrapper to MarkupAccumulator and moved the MarkupAccumulatorWrapper 75916 to the top of markup.cpp. Made various functions private member functions of MarkupAccumulator. 75917 75918 No new tests are added since this is a cleanup. 75919 75920 * editing/markup.cpp: 75921 (WebCore::MarkupAccumulator::): 75922 (WebCore::MarkupAccumulator::MarkupAccumulator): 75923 (WebCore::MarkupAccumulator::appendString): 75924 (WebCore::MarkupAccumulator::appendStartTag): 75925 (WebCore::MarkupAccumulator::appendEndTag): 75926 (WebCore::MarkupAccumulator::wrapWithNode): 75927 (WebCore::MarkupAccumulator::wrapWithStyleNode): 75928 (WebCore::MarkupAccumulator::takeResults): 75929 (WebCore::MarkupAccumulator::appendAttributeValue): 75930 (WebCore::MarkupAccumulator::escapeContentText): 75931 (WebCore::MarkupAccumulator::appendQuotedURLAttributeValue): 75932 (WebCore::MarkupAccumulator::stringValueForRange): 75933 (WebCore::MarkupAccumulator::ucharRange): 75934 (WebCore::MarkupAccumulator::appendUCharRange): 75935 (WebCore::MarkupAccumulator::renderedText): 75936 (WebCore::MarkupAccumulator::shouldAddNamespaceElement): 75937 (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): 75938 (WebCore::MarkupAccumulator::appendNamespace): 75939 (WebCore::MarkupAccumulator::appendDocumentType): 75940 (WebCore::MarkupAccumulator::removeExteriorStyles): 75941 (WebCore::MarkupAccumulator::appendStartMarkup): 75942 (WebCore::MarkupAccumulator::shouldSelfClose): 75943 (WebCore::MarkupAccumulator::appendEndMarkup): 75944 (WebCore::serializeNodes): 75945 (WebCore::createMarkup): 75946 (WebCore::serializeNodesWithNamespaces): 75947 75948 2010-08-18 Beth Dakin <bdakin (a] apple.com> 75949 75950 Reviewed by Sam Weinig. 75951 75952 Fix for https://bugs.webkit.org/show_bug.cgi?id=44207 Empty mfrac 75953 and empty munderover cause crashes 75954 -and corresponding- 75955 <rdar://problem/8325160> 75956 75957 This is just a matter of adding null checks in the right places. 75958 * mathml/RenderMathMLFraction.cpp: 75959 (WebCore::RenderMathMLFraction::baselinePosition): 75960 * mathml/RenderMathMLUnderOver.cpp: 75961 (WebCore::RenderMathMLUnderOver::baselinePosition): 75962 75963 2010-08-18 Jian Li <jianli (a] chromium.org> 75964 75965 Reviewed by David Levin. 75966 75967 Move FileStream to platform. 75968 https://bugs.webkit.org/show_bug.cgi?id=44213 75969 75970 In addition to moving files over, FileStream has been changed to remove 75971 ExceptionCode dependency. Also update FileStreamProxy and FileRead to 75972 account for this change. 75973 75974 * Android.mk: 75975 * GNUmakefile.am: 75976 * WebCore.gypi: 75977 * WebCore.pro: 75978 * WebCore.vcproj/WebCore.vcproj: 75979 * WebCore.xcodeproj/project.pbxproj: 75980 * html/FileReader.cpp: 75981 (WebCore::FileReader::didOpen): 75982 * html/FileReader.h: 75983 * html/FileStream.cpp: Removed. 75984 * html/FileStream.h: Removed. 75985 * html/FileStreamClient.h: 75986 (WebCore::FileStreamClient::didTruncate): 75987 (WebCore::FileStreamClient::didOpen): 75988 * html/FileStreamProxy.cpp: 75989 (WebCore::didOpen): 75990 (WebCore::FileStreamProxy::openForReadOnFileThread): 75991 (WebCore::FileStreamProxy::openForWriteOnFileThread): 75992 (WebCore::FileStreamProxy::write): 75993 (WebCore::FileStreamProxy::writeOnFileThread): 75994 (WebCore::didTruncate): 75995 (WebCore::FileStreamProxy::truncateOnFileThread): 75996 * html/FileStreamProxy.h: 75997 * platform/FileStream.cpp: Renamed from WebCore/FileStream.cpp and updated. 75998 * platform/FileStream.h: Renamed from WebCore/FileStream.h and updated. 75999 76000 2010-08-18 Jian Li <jianli (a] chromium.org> 76001 76002 Reviewed by Darin Fisher. 76003 76004 Chromium side implementation of blob data and blob registry. 76005 https://bugs.webkit.org/show_bug.cgi?id=43871 76006 76007 Wrap !PLATFORM(CHROMIUM) around blobRegistry() so that chromium uses the 76008 implementation in WebKit Chromium. 76009 76010 * platform/network/BlobRegistryImpl.cpp: 76011 76012 2010-08-18 Martin Robinson <mrobinson (a] igalia.com> 76013 76014 Reviewed by Gustavo Noronha Silva. 76015 76016 [GTK] Bots are showing lots of GTK_IS_CONTAINER critical warnings 76017 https://bugs.webkit.org/show_bug.cgi?id=40990 76018 76019 Instead of relying on the ScrollView's adjustment members to determine if a 76020 Scrollbar should be native or just a shell of the parent's scrollbar (main frame 76021 scrollbar), just check if this ScrollView has a parent. This will ensure the 76022 correct behavior when main frame scrollbar's are created after the ScrollView's 76023 containing adjustments go away. 76024 76025 Lack of warnings during tests are the test for this fix. 76026 76027 * platform/gtk/ScrollViewGtk.cpp: 76028 (WebCore::ScrollView::createScrollbar): Decide what type of scrollbar to make based 76029 on the result of the parent() method. 76030 * platform/gtk/ScrollbarGtk.cpp: 76031 (ScrollbarGtk::ScrollbarGtk): Allow for an m_adjustment which is null. 76032 (ScrollbarGtk::attachAdjustment): Ditto. 76033 (ScrollbarGtk::updateThumbPosition): Ditto. 76034 (ScrollbarGtk::updateThumbProportion): Ditto. 76035 76036 2010-08-18 Adam Barth <abarth (a] webkit.org> 76037 76038 Reviewed by David Levin. 76039 76040 NOT_REACHED is reachable in SVGLength 76041 https://bugs.webkit.org/show_bug.cgi?id=44150 76042 76043 The author of this code was confused. This code is reachable. We just 76044 haven't implemented it yet. 76045 76046 * svg/SVGLength.cpp: 76047 (WebCore::SVGLength::setValue): 76048 76049 2010-08-18 Balazs Kelemen <kb (a] inf.u-szeged.hu> 76050 76051 Reviewed by Antonio Gomes. 76052 76053 [Qt] Use LAZY_NATIVE_CURSOR 76054 https://bugs.webkit.org/show_bug.cgi?id=44062 76055 76056 No functional change so new tests. 76057 76058 Change Cursor behaviour to match the LAZY_NATIVE_CURSOR policy. 76059 76060 * platform/Cursor.h: Typedef PlatformCursor to be a QCursor* to be able create it dynamically. 76061 (WebCore::Cursor::Cursor): Remove the ifdef for Qt. 76062 * platform/qt/CursorQt.cpp: Remove the Cursors class since we have the static cursor instances 76063 for the common cursor types in Cursor.cpp. Move the logic that maps the cursor types to 76064 QCursor instances into ensurePlatformCursor. 76065 (WebCore::Cursor::Cursor): 76066 (WebCore::Cursor::~Cursor): 76067 (WebCore::Cursor::operator=): 76068 (WebCore::createCustomCursor): 76069 (WebCore::Cursor::ensurePlatformCursor): 76070 * platform/qt/WidgetQt.cpp: 76071 (WebCore::Widget::setCursor): Adjust to the PlatformCursor change. 76072 76073 2010-08-18 Andreas Kling <andreas.kling (a] nokia.com> 76074 76075 Reviewed by Darin Adler. 76076 76077 CSS: Make rgb() and rgba() fast paths case-insensitive 76078 https://bugs.webkit.org/show_bug.cgi?id=44107 76079 76080 Also inlined the string comparisons against "rgb(" and "rgba(" 76081 which is faster and avoids creating a temporary String object. 76082 76083 * css/CSSParser.cpp: 76084 (WebCore::mightBeRGBA): 76085 (WebCore::mightBeRGB): 76086 (WebCore::CSSParser::parseColor): 76087 76088 2010-08-18 Jian Li <jianli (a] chromium.org> 76089 76090 Reviewed by Darin Fisher. 76091 76092 Change BlobStorageData to reuse BlobData. 76093 https://bugs.webkit.org/show_bug.cgi?id=44188 76094 76095 Also addressed Darin's feedbacks for bug 44116. 76096 76097 * html/ThreadableBlobRegistry.cpp: 76098 (WebCore::registerBlobURLTask): 76099 (WebCore::registerBlobURLFromTask): 76100 (WebCore::unregisterBlobURLTask): 76101 * platform/network/BlobData.cpp: 76102 (WebCore::BlobData::appendData): 76103 * platform/network/BlobData.h: 76104 (WebCore::BlobDataItem::BlobDataItem): 76105 * platform/network/BlobRegistry.h: 76106 * platform/network/BlobRegistryImpl.cpp: 76107 (WebCore::blobRegistry): 76108 (WebCore::BlobRegistryImpl::appendStorageItems): 76109 (WebCore::BlobRegistryImpl::registerBlobURL): 76110 * platform/network/BlobRegistryImpl.h: 76111 * platform/network/BlobStorageData.h: 76112 (WebCore::BlobStorageData::create): 76113 (WebCore::BlobStorageData::contentType): 76114 (WebCore::BlobStorageData::contentDisposition): 76115 (WebCore::BlobStorageData::items): 76116 (WebCore::BlobStorageData::BlobStorageData): 76117 76118 2010-08-18 David Hyatt <hyatt (a] apple.com> 76119 76120 Reviewed by Martin Robinson. 76121 76122 https://bugs.webkit.org/show_bug.cgi?id=44193 76123 76124 Fix a typo in my previous canvas checkin. m_in->resultImage() was originally m_in2->resultImage(), 76125 and I accidentally changed it when swapping the order of the arguments. 76126 76127 * platform/graphics/filters/FEComposite.cpp: 76128 (WebCore::FEComposite::apply): 76129 76130 2010-08-18 Stephen White <senorblanco (a] chromium.org> 76131 76132 Reviewed by Darin Fisher. 76133 76134 [CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path. 76135 https://bugs.webkit.org/show_bug.cgi?id=44115 76136 76137 This is the Skia followup to Dave Hyatt's patch in r65449. 76138 Covered by canvas layout tests. 76139 76140 * platform/graphics/skia/BitmapImageSingleFrameSkia.h: 76141 Add a "copyPixels" argument to the create() static to indicate if 76142 the caller wants the pixels to be copied or ref'ed. 76143 * platform/graphics/skia/ImageBufferSkia.cpp: 76144 (WebCore::ImageBuffer::drawsUsingCopy): 76145 We don't use the always-copy path anymore, so return false. 76146 (WebCore::ImageBuffer::copyImage): 76147 Force a copy here. 76148 (WebCore::ImageBuffer::draw): 76149 (WebCore::ImageBuffer::drawPattern): 76150 Create a temporary BitampImageSingleFrameSkia wrapped around the 76151 canvas's bitmap, and draw with it immediately. If drawing to our own 76152 canvas, copy the pixels, otherwise just shallow copy. 76153 * platform/graphics/skia/ImageSkia.cpp: 76154 (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): 76155 Make the constructor take an SkBitmap to be wrapped. 76156 (WebCore::BitmapImageSingleFrameSkia::create): 76157 Implement the "copyPixels" flag: if true, do a deep copy, otherwise 76158 do a shallow copy. 76159 * platform/graphics/skia/NativeImageSkia.cpp: 76160 (WebCore::NativeImageSkia::NativeImageSkia): 76161 * platform/graphics/skia/NativeImageSkia.h: 76162 Implement a new constructor that shallow-copies the given SkBitmap. 76163 76164 2010-08-18 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 76165 76166 Reviewed by Steve Block. 76167 76168 [Qt] Request for permission before starting Geolocation service 76169 https://bugs.webkit.org/show_bug.cgi?id=42027 76170 76171 Handles starting location acquisition when request is granted for ports using 76172 "!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy 76173 Only Qt port as of today uses the above combination. Enable 76174 PREEMPT_GEOLOCATION_PERMISSION for qt port. 76175 76176 Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION 76177 - fast/dom/Geolocation/delayed-permission-allowed.html 76178 - fast/dom/Geolocation/delayed-permission-denied.html 76179 - fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html 76180 - fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html 76181 76182 * WebCore.pro: 76183 * page/Geolocation.cpp: 76184 (WebCore::Geolocation::handlePendingPermissionNotifiers): 76185 76186 2010-08-18 Andreas Kling <andreas.kling (a] nokia.com> 76187 76188 Reviewed by Darin Adler. 76189 76190 CanvasStyle method naming cleanup 76191 https://bugs.webkit.org/show_bug.cgi?id=44184 76192 76193 Renamed the various create() overloads to reflect what they're 76194 constructing the CanvasStyle from. 76195 76196 The unused CanvasStyle::create(grayLevel) and accompanying constructor 76197 were removed. 76198 76199 Also renamed the isEquivalentColor overloads to isEquivalent{RGBA,CMYKA} 76200 76201 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 76202 (WebCore::toHTMLCanvasStyle): 76203 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: 76204 (WebCore::toCanvasStyle): 76205 * html/canvas/CanvasRenderingContext2D.cpp: 76206 (WebCore::CanvasRenderingContext2D::State::State): 76207 (WebCore::CanvasRenderingContext2D::setStrokeColor): 76208 (WebCore::CanvasRenderingContext2D::setFillColor): 76209 * html/canvas/CanvasStyle.cpp: 76210 (WebCore::CanvasStyle::createFromString): 76211 (WebCore::CanvasStyle::createFromStringWithOverrideAlpha): 76212 (WebCore::CanvasStyle::createFromGradient): 76213 (WebCore::CanvasStyle::createFromPattern): 76214 (WebCore::CanvasStyle::isEquivalentRGBA): 76215 (WebCore::CanvasStyle::isEquivalentCMYKA): 76216 * html/canvas/CanvasStyle.h: 76217 (WebCore::CanvasStyle::createFromRGBA): 76218 (WebCore::CanvasStyle::createFromGrayLevelWithAlpha): 76219 (WebCore::CanvasStyle::createFromRGBAChannels): 76220 (WebCore::CanvasStyle::createFromCMYKAChannels): 76221 76222 2010-08-18 Girish Ramakrishnan <girish (a] forwardbias.in> 76223 76224 Reviewed by Kenneth Rohde Christiansen. 76225 76226 [Qt] Implement Maemo5 local rendering NPAPI extension. See 76227 https://wiki.mozilla.org/Plugins:NokiaMaemoImageSurface for details. 76228 76229 With the local rendering extension, Flash will paint into a 16-bit surface. 76230 For wmode=transparent, Flash expects the surface to contain the contents 76231 beneath it. As it is tricky to implement the content propagation across all 76232 graphics systems, transparent Flash is not supported. We just fill the surface 76233 with white and wmode=transparent behaves the same as wmode=opaque with a white 76234 background. 76235 76236 https://bugs.webkit.org/show_bug.cgi?id=44043 76237 76238 * WebCore.pro: 76239 * plugins/PluginView.cpp: 76240 (WebCore::PluginView::setValue): 76241 (WebCore::PluginView::PluginView): 76242 * plugins/PluginView.h: 76243 * plugins/qt/PluginViewQt.cpp: 76244 (WebCore::PluginView::updatePluginWidget): 76245 (WebCore::PluginView::paintUsingImageSurfaceExtension): 76246 (WebCore::PluginView::paint): 76247 (WebCore::PluginView::platformGetValueStatic): 76248 76249 2010-08-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 76250 76251 Unreviewed, rolling out r65603. 76252 http://trac.webkit.org/changeset/65603 76253 https://bugs.webkit.org/show_bug.cgi?id=44179 76254 76255 4 tests crash on Qt bot (Requested by Ossy on #webkit). 76256 76257 * WebCore.pro: 76258 * page/Geolocation.cpp: 76259 (WebCore::Geolocation::handlePendingPermissionNotifiers): 76260 76261 2010-08-18 Ryuan Choi <ryuan.choi (a] samsung.com> 76262 76263 Unreviewed. Attempted build fix for EFL 76264 76265 [EFL]REGRESSION(65530) need to fix build break 76266 https://bugs.webkit.org/show_bug.cgi?id=44154 76267 76268 * CMakeListsEfl.txt: 76269 76270 2010-08-18 Ilya Tikhonovsky <loislo (a] chromium.org> 76271 76272 Unreviewed qt build fix. 76273 76274 * WebCore.pri: 76275 76276 2010-08-17 Ilya Tikhonovsky <loislo (a] chromium.org> 76277 76278 Reviewed by Yury Semikhatsky. 76279 76280 Web Inspector: replace hand written InspectorBackendStub.js with generated one. 76281 New command-line flag was added to combine-javascript-resources. 76282 It specifies the location of generated scripts. 76283 https://bugs.webkit.org/show_bug.cgi?id=43791 76284 76285 * GNUmakefile.am: 76286 * WebCore.gyp/WebCore.gyp: 76287 * WebCore.gypi: 76288 * WebCore.pri: 76289 * WebCore.pro: 76290 * WebCore.vcproj/WebCore.vcproj: 76291 * WebCore.xcodeproj/project.pbxproj: 76292 * combine-javascript-resources: 76293 * inspector/CodeGeneratorInspector.pm: 76294 * inspector/front-end/InspectorBackendStub.js: Removed. 76295 * inspector/front-end/WebKit.qrc: 76296 76297 2010-08-18 Andrey Kosyakov <caseq (a] chromium.org> 76298 76299 Reviewed by Pavel Feldman. 76300 76301 Web Inspector: extension panels do not occupy entire panel client area. 76302 https://bugs.webkit.org/show_bug.cgi?id=44167 76303 76304 * inspector/front-end/ExtensionServer.js: 76305 (WebInspector.ExtensionServer.prototype._onCreatePanel): 76306 (WebInspector.ExtensionServer.prototype._createClientIframe): 76307 76308 2010-08-18 Dirk Schulze <krit (a] webkit.org> 76309 76310 Reviewed by Nikolas Zimmermann. 76311 76312 Use SVGPathParser logic to traverse states of a Path 76313 https://bugs.webkit.org/show_bug.cgi?id=44009 76314 76315 Move the getPathSegAtLength logic from SVGPathSegList into a new SVGPathConsumer 76316 class: SVGPathTraversalStateBuilder. 76317 This allows us to get a SVGPathSeg at a given length for SVGPathByteStreams and SVGPathSegLists. 76318 It is also possible to use unaltered SVG path data, instead of just normalized path data. 76319 This is the final preparation to provide normalized and unaltered SVGPathSegLists 76320 on SVGPathElement. 76321 76322 * Android.mk: 76323 * CMakeLists.txt: 76324 * GNUmakefile.am: 76325 * WebCore.gypi: 76326 * WebCore.pro: 76327 * WebCore.vcproj/WebCore.vcproj: 76328 * WebCore.xcodeproj/project.pbxproj: 76329 * svg/SVGAllInOne.cpp: 76330 * svg/SVGPathBuilder.h: 76331 (WebCore::SVGPathBuilder::nextPathSegment): 76332 (WebCore::SVGPathBuilder::quitEarlier): 76333 * svg/SVGPathByteStreamBuilder.h: 76334 (WebCore::SVGPathByteStreamBuilder::nextPathSegment): 76335 (WebCore::SVGPathByteStreamBuilder::quitEarlier): 76336 * svg/SVGPathConsumer.h: 76337 * svg/SVGPathElement.cpp: 76338 (WebCore::SVGPathElement::getPathSegAtLength): 76339 * svg/SVGPathElement.h: 76340 * svg/SVGPathElement.idl: 76341 * svg/SVGPathParser.cpp: 76342 (WebCore::SVGPathParser::parsePathDataFromSource): 76343 * svg/SVGPathParserFactory.cpp: 76344 (WebCore::globalSVGPathTraversalStateBuilder): 76345 (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList): 76346 * svg/SVGPathParserFactory.h: 76347 * svg/SVGPathSegList.cpp: 76348 * svg/SVGPathSegList.h: 76349 * svg/SVGPathSegListBuilder.h: 76350 (WebCore::SVGPathSegListBuilder::nextPathSegment): 76351 (WebCore::SVGPathSegListBuilder::quitEarlier): 76352 * svg/SVGPathStringBuilder.h: 76353 (WebCore::SVGPathStringBuilder::nextPathSegment): 76354 (WebCore::SVGPathStringBuilder::quitEarlier): 76355 * svg/SVGPathTraversalStateBuilder.cpp: Added. New Consumer for SVGPathParser. 76356 (WebCore::SVGPathTraversalStateBuilder::SVGPathTraversalStateBuilder): 76357 (WebCore::SVGPathTraversalStateBuilder::moveTo): 76358 (WebCore::SVGPathTraversalStateBuilder::lineTo): 76359 (WebCore::SVGPathTraversalStateBuilder::curveToCubic): 76360 (WebCore::SVGPathTraversalStateBuilder::closePath): 76361 (WebCore::SVGPathTraversalStateBuilder::setDesiredLength): 76362 (WebCore::SVGPathTraversalStateBuilder::quitEarlier): 76363 (WebCore::SVGPathTraversalStateBuilder::nextPathSegment): 76364 (WebCore::SVGPathTraversalStateBuilder::pathSegmentIndex): 76365 * svg/SVGPathTraversalStateBuilder.h: Added. 76366 (WebCore::SVGPathTraversalStateBuilder::setCurrentTraversalState): 76367 (WebCore::SVGPathTraversalStateBuilder::cleanup): 76368 (WebCore::SVGPathTraversalStateBuilder::lineToHorizontal): 76369 (WebCore::SVGPathTraversalStateBuilder::lineToVertical): 76370 (WebCore::SVGPathTraversalStateBuilder::curveToCubicSmooth): 76371 (WebCore::SVGPathTraversalStateBuilder::curveToQuadratic): 76372 (WebCore::SVGPathTraversalStateBuilder::curveToQuadraticSmooth): 76373 (WebCore::SVGPathTraversalStateBuilder::arcTo): 76374 76375 2010-08-18 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 76376 76377 Reviewed by Steve Block. 76378 76379 [Qt] Request for permission before starting Geolocation service 76380 https://bugs.webkit.org/show_bug.cgi?id=42027 76381 76382 Handles starting location acquisition when request is granted for ports using 76383 "!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy 76384 Only Qt port as of today uses the above combination. Enable 76385 PREEMPT_GEOLOCATION_PERMISSION for qt port. 76386 76387 Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION 76388 - fast/dom/Geolocation/delayed-permission-allowed.html 76389 - fast/dom/Geolocation/delayed-permission-denied.html 76390 - fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html 76391 - fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html 76392 76393 * WebCore.pro: 76394 * page/Geolocation.cpp: 76395 (WebCore::Geolocation::handlePendingPermissionNotifiers): 76396 76397 2010-08-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 76398 76399 Unreviewed, rolling out r65595. 76400 http://trac.webkit.org/changeset/65595 76401 https://bugs.webkit.org/show_bug.cgi?id=44161 76402 76403 qt build failed (Requested by loislo on #webkit). 76404 76405 * GNUmakefile.am: 76406 * WebCore.gyp/WebCore.gyp: 76407 * WebCore.gypi: 76408 * WebCore.pri: 76409 * WebCore.pro: 76410 * WebCore.vcproj/copyInspectorFiles.cmd: 76411 * WebCore.xcodeproj/project.pbxproj: 76412 * combine-javascript-resources: 76413 * inspector/CodeGeneratorInspector.pm: 76414 * inspector/front-end/InspectorBackendStub.js: Added. 76415 (WebInspector.InspectorBackendStub): 76416 (WebInspector.InspectorBackendStub.prototype._registerDelegate): 76417 (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend): 76418 * inspector/front-end/InspectorBackendStub.qrc: Removed. 76419 * inspector/front-end/WebKit.qrc: 76420 76421 2010-08-18 Pavel Feldman <pfeldman (a] chromium.org> 76422 76423 Reviewed by Yury Semikhatsky. 76424 76425 Web Inspector: make objectId of string type instead of object. 76426 https://bugs.webkit.org/show_bug.cgi?id=44160 76427 76428 * WebCore.xcodeproj/project.pbxproj: 76429 * inspector/front-end/InjectedScript.js: 76430 (injectedScriptConstructor.): 76431 * inspector/front-end/InjectedScriptAccess.js: 76432 (get InjectedScriptAccess.getForObjectId): 76433 * inspector/front-end/RemoteObject.js: 76434 (WebInspector.RemoteObject.prototype.getProperties): 76435 (WebInspector.RemoteObject.prototype.setPropertyValue): 76436 (WebInspector.RemoteObject.prototype.pushNodeToFrontend): 76437 76438 2010-08-17 Ilya Tikhonovsky <loislo (a] chromium.org> 76439 76440 Reviewed by Yury Semikhatsky. 76441 76442 Web Inspector: replace hand written InspectorBackendStub.js by generated one. 76443 New command-line flag was added to combine-javascript-resources. 76444 It specifies the location of generated scripts. 76445 https://bugs.webkit.org/show_bug.cgi?id=43791 76446 76447 * GNUmakefile.am: 76448 * WebCore.gyp/WebCore.gyp: 76449 * WebCore.gypi: 76450 * WebCore.pri: 76451 * WebCore.pro: 76452 * WebCore.vcproj/WebCore.vcproj: 76453 * WebCore.xcodeproj/project.pbxproj: 76454 * combine-javascript-resources: 76455 * inspector/CodeGeneratorInspector.pm: 76456 * inspector/front-end/InspectorBackendStub.js: Removed. 76457 * inspector/front-end/WebKit.qrc: 76458 76459 2010-08-18 Shinichiro Hamaji <hamaji (a] chromium.org> 76460 76461 Reviewed by Dimitri Glazkov. 76462 76463 Printer font is different from screen font 76464 https://bugs.webkit.org/show_bug.cgi?id=43340 76465 76466 Not testable because PNG output in layoutTestController.setPrinting 76467 for chromium isn't implemented yet. 76468 76469 * platform/graphics/FontDescription.h: Use screen font even for printing on Mac Chromium 76470 (WebCore::FontDescription::setUsePrinterFont): 76471 76472 2010-08-18 Renata Hodovan <reni (a] inf.u-szeged.hu> 76473 76474 Reviewed by Dirk Schulze. 76475 76476 Fix displaying problem of feTurbulence. 76477 https://bugs.webkit.org/show_bug.cgi?id=44111 76478 76479 Change the order of calculating turbulenceFunctionResult 76480 and clamping it. Furthermore remove the unnecessary rounding of m_seed. 76481 Add a new test for checking the change of seed's value. 76482 76483 Test: svg/W3C-SVG-1.1/filters-turb-02-f.svg 76484 76485 * svg/graphics/filters/SVGFETurbulence.cpp: 76486 (WebCore::FETurbulence::initPaint): 76487 (WebCore::FETurbulence::calculateTurbulenceValueForPoint): 76488 (WebCore::FETurbulence::apply): 76489 76490 2010-08-17 Gavin Barraclough <barraclough (a] apple.com> 76491 76492 Reviewed by Sam Weinig. 76493 76494 Bug 44146 - Remove toDouble/toUInt32 methods from UString. 76495 76496 These methods all implement JavaScript language specific behaviour, and as such 76497 are not suited to being on a generic string object. They are also inefficient 76498 and incorrectly used, refactor & cleanup. Uses of these methods really divide 76499 out into two cases. 76500 76501 ToNumber: 76502 Uses of toDouble from JSString and from parseFloat are implementing ecma's 76503 ToNumber conversion from strings (see ecma-262 9.3.1), so UString::toDouble 76504 should largely just be moved out to a global jsToNumber function. ToNumber is 76505 capable of recognizing either decimal or hexadecimal numbers, but parseFloat 76506 should only recognize decimal values. This is currently handled by testing for 76507 hexadecimal before calling toDouble, which should unnecessary - instead we can 76508 just split out the two parts to the grammar into separate functions. Also, 76509 strtod recognizes a set of literals (nan, inf, and infinity - all with any 76510 capitalization) - which are not defined by any of the specs we are implementing. 76511 To handle this we need to perform additional work in toDouble to convert the 76512 unsupported cases of infinities back to NaNs. Instead we should simply remove 76513 support for this literals from strtod. This should provide a more desirable 76514 behaviour for all clients of strtod. 76515 76516 Indexed properties: 76517 Uses of the toStrictUInt32 methods are were all converting property names to 76518 indices, and all uses of toUInt32 were incorrect; in all cases we should have 76519 been calling toUInt32. This error results in some incorrect behaviour in the 76520 DOM (accessing property "0 " of a NodeList should fail; it currently does not). 76521 Move this method onto Identifier (our canonical property name), and make it 76522 always perform a strict conversion. Add a layout test to check NodeList does 76523 convert indexed property names correctly. 76524 76525 Test: fast/dom/NodeList/nodelist-item-with-index.html 76526 76527 * WebCore.xcodeproj/project.pbxproj: 76528 * bindings/js/JSDOMWindowCustom.cpp: 76529 (WebCore::JSDOMWindow::getOwnPropertySlot): 76530 (WebCore::JSDOMWindow::getOwnPropertyDescriptor): 76531 * bindings/js/JSHTMLAllCollectionCustom.cpp: 76532 (WebCore::callHTMLAllCollection): 76533 (WebCore::JSHTMLAllCollection::item): 76534 * bindings/js/JSHTMLCollectionCustom.cpp: 76535 (WebCore::callHTMLCollection): 76536 (WebCore::JSHTMLCollection::item): 76537 * bindings/js/JSNodeListCustom.cpp: 76538 (WebCore::callNodeList): 76539 * bindings/scripts/CodeGeneratorJS.pm: 76540 * bridge/runtime_array.cpp: 76541 (JSC::RuntimeArray::getOwnPropertySlot): 76542 (JSC::RuntimeArray::getOwnPropertyDescriptor): 76543 (JSC::RuntimeArray::put): 76544 76545 2010-08-18 Adam Barth <abarth (a] webkit.org> 76546 76547 Reviewed by Adele Peterson. 76548 76549 Null dereference in DOMSelection::deleteFromDocument 76550 https://bugs.webkit.org/show_bug.cgi?id=44153 76551 76552 deleteFromDocument checks selection->isNone() before calling 76553 selection->selection().toNormalizedRange(), but toNormalizedRange() 76554 notes that it needs to updateLayout(), which can make the selection 76555 isNone() again. In that case, we crash on a NULL pointer in 76556 deleteFromDocument. I don't know how to trigger that situation in a 76557 test, but cross_fuzz was able to hit it, so we should fix it. 76558 76559 * page/DOMSelection.cpp: 76560 (WebCore::DOMSelection::deleteFromDocument): 76561 76562 2010-08-17 Girish Ramakrishnan <girish (a] forwardbias.in> 76563 76564 Reviewed by Antonio Gomes. 76565 76566 [Qt] On Maemo5, there is no libgdk-x11-2.0.so symlink. Look for 76567 libgdk-x11-2.0.so.0 instead on X11 and Maemo5. 76568 76569 https://bugs.webkit.org/show_bug.cgi?id=44043 76570 76571 * plugins/qt/PluginViewQt.cpp: 76572 (WebCore::getPluginDisplay): 76573 76574 2010-08-17 Ariya Hidayat <ariya (a] sencha.com> 76575 76576 Reviewed by Antonio Gomes. 76577 76578 [Qt] Remove unused ContextShadowParameter class in GraphicsContextQt 76579 https://bugs.webkit.org/show_bug.cgi?id=44142 76580 76581 The class is not needed anymore after r65425. 76582 We know have dedicated ContextShadow in its own file. 76583 76584 * platform/graphics/qt/GraphicsContextQt.cpp: 76585 76586 2010-08-17 Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org> 76587 76588 Reviewed by Darin Adler. 76589 76590 Add NetworkingContext to avoid layer violations 76591 https://bugs.webkit.org/show_bug.cgi?id=42292 76592 76593 Preparation: Just add the files to the build system. 76594 76595 * GNUmakefile.am: Added new files. 76596 * WebCore.gypi: Ditto. 76597 * WebCore.pro: Ditto. 76598 * WebCore.vcproj/WebCore.vcproj: Ditto. 76599 * WebCore.xcodeproj/project.pbxproj: Ditto. 76600 76601 * loader/FrameNetworkingContext.h: Added. 76602 * platform/network/NetworkingContext.h: Added. 76603 Placeholders with tentative code that might be changed when landing 76604 the rest of it. 76605 76606 2010-08-17 Mihai Parparita <mihaip (a] chromium.org> 76607 76608 Reviewed by Darin Fisher. 76609 76610 Back button after Google search result click broken 76611 https://bugs.webkit.org/show_bug.cgi?id=44086 76612 76613 Test: fast/history/redirect-via-iframe.html 76614 76615 isLoadingInAPISense doesn't quite map to onload (it also returns true 76616 if frames are loading, even after the parent frame has fired its onload 76617 handler). Instead, add a flag for the onload event being fired, and 76618 use that. 76619 76620 * loader/DocumentLoader.cpp: 76621 (WebCore::DocumentLoader::DocumentLoader): 76622 * loader/DocumentLoader.h: 76623 (WebCore::DocumentLoader::handledOnloadEvents): 76624 (WebCore::DocumentLoader::wasOnloadHandled): 76625 * loader/FrameLoader.cpp: 76626 (WebCore::FrameLoader::handledOnloadEvents): 76627 * loader/RedirectScheduler.cpp: 76628 (WebCore::RedirectScheduler::mustLockBackForwardList): 76629 76630 2010-08-17 Steve Block <steveblock (a] google.com> 76631 76632 Reviewed by Jeremy Orlow. 76633 76634 Geolocation clearWatch() needs to protect against invalid IDs 76635 https://bugs.webkit.org/show_bug.cgi?id=44096 76636 76637 If the ID passed to clearWatch() is invalid, we early-out. 76638 76639 Test: fast/dom/Geolocation/clear-watch-invalid-id-crash.html 76640 76641 * page/Geolocation.cpp: 76642 (WebCore::Geolocation::Watchers::set): 76643 (WebCore::Geolocation::Watchers::remove): 76644 (WebCore::Geolocation::watchPosition): 76645 (WebCore::Geolocation::clearWatch): 76646 76647 2010-08-17 Stephen White <senorblanco (a] chromium.org> 76648 76649 Reviewed by David Levin. 76650 76651 Allow non-Skia ports to compile with ENABLE(ACCELERATED_2D_CANVAS). 76652 https://bugs.webkit.org/show_bug.cgi?id=44130 76653 76654 No tests; if it compiles, it's good. 76655 76656 * html/canvas/CanvasRenderingContext2D.cpp: 76657 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 76658 Fix a warning (treated as error). 76659 * platform/graphics/GraphicsContext.cpp: 76660 (WebCore::GraphicsContext::setGraphicsContext3D): 76661 (WebCore::GraphicsContext::syncSoftwareCanvas): 76662 * platform/graphics/GraphicsContext.h: 76663 Make setGraphicsContext3D() and syncSoftwareCanvas() stubbed out, 76664 but still present in non-Skia ports. This allows Chrome Mac to 76665 compile with ENABLE(ACCELERATED_2D_CANVAS) (although it isn't hooked 76666 up yet, it should at least compile). 76667 76668 2010-08-17 Brady Eidson <beidson (a] apple.com> 76669 76670 Reviewed by Sam Weinig. 76671 76672 Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed. 76673 <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131 76674 76675 No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant 76676 effort to give it the ability to perform the back/forward navigation in the background to reproduce 76677 this bug) 76678 76679 Manual tests in place of layout tests: 76680 * manual-tests/back-forward-during-alert-1.html: Added. 76681 * manual-tests/back-forward-during-alert-2.html: Added. 76682 76683 * page/Page.cpp: 76684 (WebCore::Page::goToItem): 76685 76686 2010-08-17 Ojan Vafai <ojan (a] chromium.org> 76687 76688 Reviewed by Tony Chang. 76689 76690 selectionStart clobbered if textarea isn't focused 76691 https://bugs.webkit.org/show_bug.cgi?id=43814 76692 76693 If a text control is blurred, setting selectionStart/end should use 76694 the cached selection value, which is currently stored on the form 76695 control element. 76696 76697 Test: fast/forms/text-control-select-blurred.html 76698 76699 * rendering/RenderTextControl.cpp: 76700 (WebCore::RenderTextControl::setSelectionStart): 76701 (WebCore::RenderTextControl::setSelectionEnd): 76702 76703 2010-08-17 Dmitry Titov <dimich (a] chromium.org> 76704 76705 Reviewed by David Levin. 76706 76707 MessagePort.close() crashes if the owning context was destroyed. 76708 https://bugs.webkit.org/show_bug.cgi?id=43140 76709 76710 Test: fast/events/message-port-context-destroyed.html 76711 76712 * dom/MessagePort.cpp: 76713 (WebCore::MessagePort::postMessage): 76714 (WebCore::MessagePort::start): 76715 (WebCore::MessagePort::close): 76716 (WebCore::MessagePort::contextDestroyed): 76717 Use isEntangled() method to gate various operations on MessagePort. This method also takes into account m_closed bit. 76718 76719 * dom/ScriptExecutionContext.cpp: 76720 (WebCore::ScriptExecutionContext::stopActiveDOMObjects): 76721 (WebCore::ScriptExecutionContext::closeMessagePorts): 76722 * dom/ScriptExecutionContext.h: 76723 Add closeMessagePorts() method that closes message ports at the same moments when other ActiveDOMObjects are stopped. 76724 76725 2010-08-17 Fady Samuel <fsamuel (a] chromium.org> 76726 76727 Reviewed by David Hyatt. 76728 76729 Updated table cell hit testing and painting to use binary search instead of linear scan. 76730 76731 Improved Table Hit Testing and Painting Performance 76732 https://bugs.webkit.org/show_bug.cgi?id=43933 76733 76734 Tests: fast/table/simple_paint.html 76735 tables/hittesting/filltable-emptycells.html 76736 tables/hittesting/filltable-levels.html 76737 tables/hittesting/filltable-outline.html 76738 tables/hittesting/filltable-rtl.html 76739 tables/hittesting/filltable-stress.html 76740 76741 * rendering/RenderTableSection.cpp: 76742 (WebCore::RenderTableSection::paintObject): Dirty rect determined using binary search. 76743 (WebCore::RenderTableSection::nodeAtPoint): Cell hit determined using binary search 76744 76745 2010-08-17 Abhishek Arya <inferno (a] chromium.org> 76746 76747 Reviewed by Dave Hyatt. 76748 76749 Only destroy empty anonymous block when it is columns or column span block 76750 in RenderBlock::removeChild. 76751 https://bugs.webkit.org/show_bug.cgi?id=44035 76752 76753 Test: fast/block/basic/empty-anonymous-block-remove-crash.html 76754 76755 * rendering/RenderBlock.cpp: 76756 (WebCore::RenderBlock::removeChild): 76757 76758 2010-08-17 Darin Fisher <darin (a] chromium.org> 76759 76760 Reviewed by Darin Adler. 76761 76762 [Chromium] REGRESSION: Incorrect repaint on scrolling with position:fixed elements 76763 https://bugs.webkit.org/show_bug.cgi?id=42949 76764 76765 This is a partial revert of http://trac.webkit.org/changeset/63907 76766 76767 * page/FrameView.cpp: 76768 (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): 76769 (WebCore::FrameView::scrollPositionChanged): 76770 * platform/ScrollView.cpp: 76771 (WebCore::ScrollView::valueChanged): 76772 76773 2010-08-17 Sheriff Bot <webkit.review.bot (a] gmail.com> 76774 76775 Unreviewed, rolling out r65528. 76776 http://trac.webkit.org/changeset/65528 76777 https://bugs.webkit.org/show_bug.cgi?id=44123 76778 76779 "Broke a bunch of canvas tests on Chrome win/linux." 76780 (Requested by senorblanco on #webkit). 76781 76782 * platform/graphics/skia/BitmapImageSingleFrameSkia.h: 76783 (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): 76784 * platform/graphics/skia/ImageBufferSkia.cpp: 76785 (WebCore::ImageBuffer::drawsUsingCopy): 76786 (WebCore::ImageBuffer::copyImage): 76787 (WebCore::ImageBuffer::draw): 76788 (WebCore::ImageBuffer::drawPattern): 76789 * platform/graphics/skia/ImageSkia.cpp: 76790 (WebCore::BitmapImageSingleFrameSkia::create): 76791 * platform/graphics/skia/NativeImageSkia.cpp: 76792 * platform/graphics/skia/NativeImageSkia.h: 76793 76794 2010-08-17 Martin Robinson <mrobinson (a] igalia.com> 76795 76796 Reviewed by David Hyatt. 76797 76798 [Cairo] Remove unnecessary full-surface copies from ImageCairo and GraphicsContextCairo 76799 https://bugs.webkit.org/show_bug.cgi?id=44076 76800 76801 No new tests as functionality has not changed. 76802 76803 * GNUmakefile.am: Added GRefPtrCairo to the sources list. 76804 * platform/graphics/cairo/GRefPtrCairo.cpp: Added. 76805 (WTF::refGPtr): Added specializations for cairo_t and cairo_surface_t. 76806 (WTF::derefGPtr): 76807 * platform/graphics/cairo/GRefPtrCairo.h: Added. 76808 * platform/graphics/cairo/GraphicsContextCairo.cpp: 76809 (WebCore::GraphicsContext::createPlatformShadow): Access the image surface directly 76810 from the ImageBuffer instead of wrapping it in an Image. 76811 * platform/graphics/cairo/ImageCairo.cpp: 76812 (WebCore::Image::drawPattern): Create the temporary surface using cairo primitives 76813 instead of through the platform-independent WebCore code. 76814 76815 2010-08-17 Martin Robinson <mrobinson (a] igalia.com> 76816 76817 [GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp 76818 https://bugs.webkit.org/show_bug.cgi?id=44069 76819 76820 No new tests as functionality has not changed. 76821 76822 * GNUmakefile.am: Add WEBKITGTK_API_VERSION_STRING definition, which 76823 allows WebCore to use this as well. 76824 * platform/graphics/gtk/ImageGtk.cpp: 76825 (getWebKitDataDirectory): Added this helper. 76826 (WebCore::Image::loadPlatformResource): Use GOwnPtr for gchar pointers and 76827 use the new getWebKitDataDirectory helper. 76828 * platform/gtk/GOwnPtrGtk.cpp: Move the GtkIconInfo template specialization to this file. 76829 (WTF::GtkIconInfo): Added this forward declaration. 76830 * platform/gtk/GOwnPtrGtk.h: Declaration for new template specialization. 76831 76832 2010-08-17 Stephen White <senorblanco (a] chromium.org> 76833 76834 Reviewed by Darin Fisher. 76835 76836 [CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path. 76837 This is the Skia followup to Dave Hyatt's patch in r65449. 76838 https://bugs.webkit.org/show_bug.cgi?id=44115 76839 76840 Covered by canvas layout tests. 76841 76842 * platform/graphics/skia/BitmapImageSingleFrameSkia.h: 76843 Add a "copyPixels" argument to the create() static to indicate if 76844 the caller wants the pixels to be copied or ref'ed. 76845 * platform/graphics/skia/ImageBufferSkia.cpp: 76846 (WebCore::ImageBuffer::drawsUsingCopy): 76847 We don't use the always-copy path anymore, so return false. 76848 (WebCore::ImageBuffer::copyImage): 76849 Shouldn't get here anymore, so ASSERT_NOT_REACHED. 76850 (WebCore::ImageBuffer::draw): 76851 (WebCore::ImageBuffer::drawPattern): 76852 Create a temporary BitampImageSingleFrameSkia wrapped around the 76853 canvas's bitmap, and draw with it immediately. If drawing to our own 76854 canvas, copy the pixels, otherwise just shallow copy. 76855 * platform/graphics/skia/ImageSkia.cpp: 76856 (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): 76857 Make the constructor take an SkBitmap to be wrapped. 76858 (WebCore::BitmapImageSingleFrameSkia::create): 76859 Implement the "copyPixels" flag: if true, do a deep copy, otherwise 76860 do a shallow copy. 76861 * platform/graphics/skia/NativeImageSkia.cpp: 76862 (WebCore::NativeImageSkia::NativeImageSkia): 76863 * platform/graphics/skia/NativeImageSkia.h: 76864 Implement a new constructor that shallow-copies the given SkBitmap. 76865 76866 2010-08-17 Jian Li <jianli (a] chromium.org> 76867 76868 Reviewed by Darin Fisher. 76869 76870 Move BlobRegistry interface and implementation to platform/network 76871 https://bugs.webkit.org/show_bug.cgi?id=44116 76872 76873 Also move BlobData and BlobStorageData since they're part of BlobRegistry 76874 implementation. 76875 76876 * Android.mk: 76877 * CMakeLists.txt: 76878 * GNUmakefile.am: 76879 * WebCore.gypi: 76880 * WebCore.pro: 76881 * WebCore.vcproj/WebCore.vcproj: 76882 * WebCore.xcodeproj/project.pbxproj: 76883 * platform/network/BlobData.cpp: Renamed from WebCore/platform/BlobData.cpp. 76884 * platform/network/BlobData.h: Renamed from WebCore/platform/BlobData.h. 76885 * platform/network/BlobRegistry.h: Renamed from WebCore/platform/BlobRegistry.h. 76886 * platform/network/BlobRegistryImpl.cpp: Renamed from WebCore/html/BlobRegistryImpl.cpp. 76887 * platform/network/BlobRegistryImpl.h: Renamed from WebCore/html/BlobRegistryImpl.h. 76888 * platform/network/BlobStorageData.h: Renamed from WebCore/html/BlobStorageData.h. 76889 76890 2010-08-17 Andreas Kling <andreas.kling (a] nokia.com> 76891 76892 Reviewed by Ariya Hidayat. 76893 76894 [Qt] Path: Fast approximation of stroke bounding rects 76895 https://bugs.webkit.org/show_bug.cgi?id=44014 76896 76897 In canvas's stroke(), use QPainterPath::controlPointRect() to calculate 76898 a slightly larger bounding rect in a fraction of the time. 76899 76900 * html/canvas/CanvasRenderingContext2D.cpp: 76901 (WebCore::CanvasRenderingContext2D::stroke): 76902 76903 2010-08-17 Girish Ramakrishnan <girish (a] forwardbias.in> 76904 76905 Reviewed by Kenneth Rohde Christiansen. 76906 Set PluginQuirkRequiresDefaultScreenDepth for all Flash versions and not 76907 just Flash 10. 76908 76909 https://bugs.webkit.org/show_bug.cgi?id=44043 76910 76911 * plugins/PluginPackage.cpp: 76912 (WebCore::PluginPackage::determineQuirks): 76913 76914 2010-08-17 Jian Li <jianli (a] chromium.org> 76915 76916 Reviewed by David Levin. 76917 76918 Change FileStream implementation to prepare for blob resource handling. 76919 https://bugs.webkit.org/show_bug.cgi?id=43985 76920 76921 Change FileStream to support synchronous usage only. All the asychronous 76922 logics are moved to FileStreamProxy. Update the existing FileReader code 76923 to adapt to this change. 76924 76925 * html/FileReader.cpp: Account for FileStreamProxy changes. 76926 (WebCore::FileReader::didStart): 76927 (WebCore::FileReader::didGetSize): 76928 (WebCore::FileReader::didOpen): 76929 (WebCore::FileReader::didRead): 76930 * html/FileReader.h: 76931 * html/FileStream.cpp: Remove m_client and make all calls synchronous only. 76932 (WebCore::FileStream::FileStream): 76933 (WebCore::FileStream::start): 76934 (WebCore::FileStream::stop): 76935 (WebCore::FileStream::getSize): 76936 (WebCore::FileStream::openForRead): 76937 (WebCore::FileStream::openForWrite): 76938 (WebCore::FileStream::close): 76939 (WebCore::FileStream::read): 76940 (WebCore::FileStream::write): 76941 (WebCore::FileStream::truncate): 76942 * html/FileStream.h: Add getSize() and make all calls synchronous by adding return values. 76943 (WebCore::FileStream::create): 76944 * html/FileStreamClient.h: Account for FileStreamProxy changes. 76945 (WebCore::FileStreamClient::didRead): 76946 (WebCore::FileStreamClient::didTruncate): 76947 (WebCore::FileStreamClient::didOpen): 76948 * html/FileStreamProxy.cpp: All the logics to handle asynchronous calls are wrapped here. 76949 (WebCore::FileStreamProxy::FileStreamProxy): 76950 (WebCore::FileStreamProxy::create): 76951 (WebCore::FileStreamProxy::fileThread): 76952 (WebCore::didStart): 76953 (WebCore::FileStreamProxy::startOnFileThread): 76954 (WebCore::FileStreamProxy::stop): 76955 (WebCore::derefProxyOnContext): 76956 (WebCore::FileStreamProxy::stopOnFileThread): 76957 (WebCore::didGetSize): 76958 (WebCore::FileStreamProxy::getSize): 76959 (WebCore::FileStreamProxy::getSizeOnFileThread): 76960 (WebCore::didOpen): 76961 (WebCore::FileStreamProxy::openForRead): 76962 (WebCore::FileStreamProxy::openForReadOnFileThread): 76963 (WebCore::FileStreamProxy::openForWrite): 76964 (WebCore::FileStreamProxy::openForWriteOnFileThread): 76965 (WebCore::FileStreamProxy::close): 76966 (WebCore::FileStreamProxy::closeOnFileThread): 76967 (WebCore::didRead): 76968 (WebCore::FileStreamProxy::read): 76969 (WebCore::FileStreamProxy::readOnFileThread): 76970 (WebCore::didWrite): 76971 (WebCore::FileStreamProxy::write): 76972 (WebCore::FileStreamProxy::writeOnFileThread): 76973 (WebCore::didTruncate): 76974 (WebCore::FileStreamProxy::truncate): 76975 (WebCore::FileStreamProxy::truncateOnFileThread): 76976 * html/FileStreamProxy.h: 76977 * html/FileThreadTask.h: Change all methods to return void since return value is not needed now. 76978 76979 2010-08-17 Dimitri Glazkov <dglazkov (a] chromium.org> 76980 76981 Returned WebCore.xcodeproj to default settings after http://trac.webkit.org/changeset/65468/trunk/WebCore/WebCore.xcodeproj/project.pbxproj. 76982 76983 * WebCore.xcodeproj/project.pbxproj: Removed developmentRegion = English line. 76984 76985 2010-08-17 Dimitri Glazkov <dglazkov (a] chromium.org> 76986 76987 Reviewed by Eric Seidel. 76988 76989 Eliminate extra traversal of the tree when determining ability to lazy-attach a Node. 76990 https://bugs.webkit.org/show_bug.cgi?id=43749 76991 76992 Land the actual change that I intended to land in http://trac.webkit.org/changeset/65508. 76993 76994 Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment), 76995 so the check for shadow tree existence isn't needed. 76996 Gives a small, but consistent win in Dromaeo's DOM Modification test. 76997 76998 * dom/Node.h: 76999 (WebCore::Node::canLazyAttach): Changed to always return true. 77000 77001 2010-08-17 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 77002 77003 Reviewed by Eric Carlson. 77004 77005 Restore intrinsic size of video elements after loading poster 77006 77007 The element might already have the instrinsic size of the video, in 77008 which case we don't want to override it witht that of the image. 77009 77010 * rendering/RenderVideo.cpp: call updateIntrinsicSize() to restore size 77011 77012 2010-08-17 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 77013 77014 Reviewed by Steve Block. 77015 77016 Geolocation preemptive permissions policy is buggy 77017 https://bugs.webkit.org/show_bug.cgi?id=42811 77018 77019 While waiting for permission, m_startRequestPermissionNotifier was 77020 used to consider only one pending request. This patch implements a set 77021 m_pendingForPermissionNotifiers to maintain set of pending requests. 77022 When user grants/denies permission all listeners will be notified. 77023 Also fixed issue with hasZeroTimeout() where startTimerIfNeeded() has 77024 to start irrespective of permission state 77025 77026 Tests: fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html 77027 fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html 77028 77029 * WebCore.pro: 77030 * page/Geolocation.cpp: 77031 (WebCore::Geolocation::startRequest): 77032 (WebCore::Geolocation::setIsAllowed): 77033 (WebCore::Geolocation::startUpdating): 77034 (WebCore::Geolocation::handlePendingPermissionNotifiers): 77035 * page/Geolocation.h: 77036 77037 2010-08-11 Jeremy Orlow <jorlow (a] chromium.org> 77038 77039 Beginnings of IndexedDB persistance + IDBDatabase.description fleshed out 77040 https://bugs.webkit.org/show_bug.cgi?id=43744 77041 77042 The beginnings of a SQLite backend for IndexedDB. Right now, only persists 77043 meta-data for the database. The rest is coming in future patches. Adds 77044 a manual test to verify persistance. 77045 77046 Test: storage/indexeddb/database-description.html 77047 + a manual test 77048 77049 * Android.mk: 77050 * CMakeLists.txt: 77051 * GNUmakefile.am: 77052 * WebCore.gypi: 77053 * WebCore.vcproj/WebCore.vcproj: 77054 * WebCore.xcodeproj/project.pbxproj: 77055 * manual-tests/indexed-database.html: Added. 77056 * page/SecurityOrigin.cpp: 77057 (WebCore::SecurityOrigin::databaseIdentifier): 77058 * platform/FileSystem.cpp: Added. 77059 (WebCore::): 77060 (WebCore::shouldEscapeUChar): 77061 (WebCore::encodeForFileName): 77062 * platform/FileSystem.h: 77063 * storage/IDBDatabase.cpp: 77064 (WebCore::IDBDatabase::IDBDatabase): 77065 * storage/IDBDatabase.h: 77066 (WebCore::IDBDatabase::description): 77067 * storage/IDBDatabaseBackendImpl.cpp: 77068 (WebCore::extractMetaData): 77069 (WebCore::setMetaData): 77070 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 77071 (WebCore::IDBDatabaseBackendImpl::setDescription): 77072 * storage/IDBDatabaseBackendImpl.h: 77073 (WebCore::IDBDatabaseBackendImpl::create): 77074 * storage/IDBFactory.h: 77075 * storage/IDBFactory.idl: 77076 * storage/IDBFactoryBackendImpl.cpp: 77077 (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): 77078 (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl): 77079 (WebCore::openSQLiteDatabase): 77080 (WebCore::createTables): 77081 (WebCore::IDBFactoryBackendImpl::open): 77082 * storage/IDBFactoryBackendImpl.h: 77083 (WebCore::IDBFactoryBackendImpl::create): 77084 77085 2010-08-17 Dimitri Glazkov <dglazkov (a] chromium.org> 77086 77087 Reviewed by Eric Seidel. 77088 77089 Eliminate extra traversal of the tree when determining ability to lazy-attach a Node. 77090 https://bugs.webkit.org/show_bug.cgi?id=43749 77091 77092 Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment), 77093 so the check for shadow tree existence isn't needed. 77094 77095 Gives a small, but consisten win in Dromaeo's DOM Modification test. 77096 77097 * dom/Node.cpp: Removed canLazyAttach declaration. 77098 * dom/Node.h: 77099 (WebCore::Node::canLazyAttach): Changed to always return true. 77100 77101 2010-08-17 Pavel Feldman <pfeldman (a] chromium.org> 77102 77103 Reviewed by Yury Semikhatsky. 77104 77105 Web Inspector: [CRASH] Console formatting crashes after cross-domain navigation. 77106 https://bugs.webkit.org/show_bug.cgi?id=44103 77107 77108 * bindings/js/JSInjectedScriptHostCustom.cpp: 77109 (WebCore::InjectedScriptHost::injectedScriptFor): 77110 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 77111 (WebCore::InjectedScriptHost::injectedScriptFor): 77112 * inspector/ConsoleMessage.cpp: 77113 (WebCore::ConsoleMessage::addToFrontend): 77114 77115 2010-08-17 Yury Semikhatsky <yurys (a] chromium.org> 77116 77117 Reviewed by Pavel Feldman. 77118 77119 Web Inspector: upstream Chromium debugger step tests 77120 https://bugs.webkit.org/show_bug.cgi?id=44106 77121 77122 Tests: inspector/debugger-step-in.html 77123 inspector/debugger-step-out.html 77124 inspector/debugger-step-over.html 77125 77126 * bindings/js/ScriptDebugServer.cpp: 77127 (WebCore::ScriptDebugServer::returnEvent): check that debugger is still attached after continue to ensure 77128 that current call frame is not 0. 77129 77130 2010-08-17 Ademar de Souza Reis Jr <ademar.reis (a] openbossa.org> 77131 77132 Reviewed by David Levin. 77133 77134 Trivial fix removing the self-inclusion of a couple of header files. 77135 77136 Self inclusion in Document.h and RenderTheme.h 77137 https://bugs.webkit.org/show_bug.cgi?id=44065 77138 77139 * dom/Document.h: 77140 * rendering/RenderTheme.h: 77141 77142 2010-08-17 No'am Rosenthal <noam.rosenthal (a] nokia.com> 77143 77144 Reviewed by Ariya Hidayat. 77145 77146 [Qt] Move the accelerated compositing build flag to the right place 77147 https://bugs.webkit.org/show_bug.cgi?id=43882 77148 77149 No new tests: build fix. 77150 77151 * WebCore.pro: 77152 77153 2010-08-17 Sheriff Bot <webkit.review.bot (a] gmail.com> 77154 77155 Unreviewed, rolling out r65500. 77156 http://trac.webkit.org/changeset/65500 77157 https://bugs.webkit.org/show_bug.cgi?id=44108 77158 77159 Qt bots failed to compile. (Requested by loislo on #webkit). 77160 77161 * GNUmakefile.am: 77162 * WebCore.gyp/WebCore.gyp: 77163 * WebCore.gypi: 77164 * WebCore.pri: 77165 * WebCore.pro: 77166 * WebCore.vcproj/copyInspectorFiles.cmd: 77167 * WebCore.xcodeproj/project.pbxproj: 77168 * combine-javascript-resources: 77169 * inspector/CodeGeneratorInspector.pm: 77170 * inspector/front-end/InspectorBackendStub.js: Added. 77171 (WebInspector.InspectorBackendStub): 77172 (WebInspector.InspectorBackendStub.prototype._registerDelegate): 77173 (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend): 77174 * inspector/front-end/InspectorBackendStub.qrc: Removed. 77175 * inspector/front-end/WebKit.qrc: 77176 77177 2010-08-17 Ilya Tikhonovsky <loislo (a] chromium.org> 77178 77179 Reviewed by Yury Semikhatsky. 77180 77181 Web Inspector: replace hand written InspectorBackendStub.js by generated one. 77182 New command-line flag was added to combine-javascript-resources. 77183 It specifies the location of generated scripts. 77184 https://bugs.webkit.org/show_bug.cgi?id=43791 77185 77186 * GNUmakefile.am: 77187 * WebCore.gyp/WebCore.gyp: 77188 * WebCore.gypi: 77189 * WebCore.pri: 77190 * WebCore.pro: 77191 * WebCore.vcproj/WebCore.vcproj: 77192 * WebCore.xcodeproj/project.pbxproj: 77193 * combine-javascript-resources: 77194 * inspector/CodeGeneratorInspector.pm: 77195 * inspector/front-end/InspectorBackendStub.js: Removed. 77196 * inspector/front-end/WebKit.qrc: 77197 77198 2010-08-17 Pavel Feldman <pfeldman (a] chromium.org> 77199 77200 Reviewed by Pavel Feldman. 77201 77202 Web Inspector: get rid of node and scoped object-specific ids. 77203 https://bugs.webkit.org/show_bug.cgi?id=44097 77204 77205 * inspector/front-end/ConsoleView.js: 77206 * inspector/front-end/ElementsTreeOutline.js: 77207 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): 77208 * inspector/front-end/EventListenersSidebarPane.js: 77209 * inspector/front-end/InjectedScript.js: 77210 (injectedScriptConstructor.): 77211 (injectedScriptConstructor): 77212 * inspector/front-end/InjectedScriptAccess.js: 77213 (InjectedScriptAccess): 77214 (InjectedScriptAccess.getForNode): 77215 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): 77216 (InjectedScriptAccess._installHandler): 77217 * inspector/front-end/PropertiesSidebarPane.js: 77218 (WebInspector.PropertiesSidebarPane.prototype.update): 77219 * inspector/front-end/RemoteObject.js: 77220 (WebInspector.RemoteObjectId): 77221 (WebInspector.RemoteObject.resolveNode): 77222 * inspector/front-end/ScriptsPanel.js: 77223 77224 2010-08-17 Xan Lopez <xlopez (a] igalia.com> 77225 77226 Reviewed by Gustavo Noronha. 77227 77228 [GTK] Fix wrapping of core Events in the bindings 77229 https://bugs.webkit.org/show_bug.cgi?id=44095 77230 77231 Return the proper GObject type instead of hardcoding 77232 WebKitDOMEvent for all Event types. 77233 77234 * bindings/gobject/GObjectEventListener.cpp: 77235 (WebCore::GObjectEventListener::handleEvent): 77236 * bindings/gobject/WebKitDOMBinding.cpp: 77237 (WebKit::kit): 77238 77239 2010-08-17 Xan Lopez <xlopez (a] igalia.com> 77240 77241 Reviewed by Gustavo Noronha. 77242 77243 Revert supposed build-fix which was in fact reverting a previous 77244 build fix which was correct (oh dear). 77245 77246 * GNUmakefile.am: 77247 77248 2010-08-17 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 77249 77250 Reviewed by Antonio Gomes. 77251 77252 [Qt] Add media element support for preload=none 77253 77254 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 77255 * platform/graphics/qt/MediaPlayerPrivateQt.h: 77256 77257 2010-08-17 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 77258 77259 Reviewed by Antonio Gomes. 77260 77261 [Qt] Pre-roll media when loading media elements 77262 77263 This ensures we get correct size-hints from QtMultimedia, as well as 77264 the media states Buffering and Buffered instead of Loading and Loaded, 77265 which we use to transition into MediaPlayer::HaveEnoughData. 77266 77267 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 77268 * platform/graphics/qt/MediaPlayerPrivateQt.h: 77269 77270 2010-08-16 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 77271 77272 Reviewed by Kenneth Rohde Christiansen. 77273 77274 [Qt] Fix missing default controls for stand-alone media elements 77275 77276 https://bugs.webkit.org/show_bug.cgi?id=35427 77277 77278 * css/mediaControlsQt.css: 77279 77280 2010-08-17 Ariya Hidayat <ariya (a] sencha.com> 77281 77282 Reviewed by Kenneth Rohde Christiansen. 77283 77284 [Qt] Reduce the size of the shadow buffer to the clip region 77285 https://bugs.webkit.org/show_bug.cgi?id=44091 77286 77287 Instead of allocating the buffer image (for the blur support) as big 77288 as the rectangle which casts the shadow, we limit the size to the 77289 current clip region. 77290 77291 * platform/graphics/qt/ContextShadow.cpp: 77292 (WebCore::ContextShadow::drawShadowRect): 77293 77294 2010-08-17 Philippe Normand <pnormand (a] igalia.com> 77295 77296 Reviewed by Martin Robinson. 77297 77298 [GStreamer] media/invalid-media-url-crash.html fails 77299 https://bugs.webkit.org/show_bug.cgi?id=42960 77300 77301 Implemented two ResourceHandleClient callbacks that need to notify 77302 downstream GStreamer elements of errors while accessing the 77303 resource. 77304 77305 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 77306 (StreamingClient::wasBlocked): 77307 (StreamingClient::cannotShowURL): 77308 77309 2010-08-16 Gavin Barraclough <barraclough (a] apple.com> 77310 77311 Rubber stamped by Sam Weinig 77312 77313 Remove unnecessary includes from UString.h, add new includes as necessary. 77314 77315 * dom/ScriptExecutionContext.h: 77316 * loader/appcache/ApplicationCache.cpp: 77317 77318 2010-08-16 Andreas Kling <andreas.kling (a] nokia.com> 77319 77320 Reviewed by Darin Adler. 77321 77322 CSS: Add fast-path for rgba() color parsing 77323 https://bugs.webkit.org/show_bug.cgi?id=42965 77324 77325 Test: fast/canvas/rgba-parsing.html 77326 77327 * css/CSSParser.cpp: 77328 (WebCore::CSSParser::parseColor): Extended with support for rgba(). 77329 (WebCore::parseAlphaValue): Added, parses an alpha value using 77330 WTF::strtod() (if necessary) and clamps between 0 and 1. 77331 (WebCore::isTenthAlpha): 77332 77333 2010-08-16 Kinuko Yasuda <kinuko (a] chromium.org> 77334 77335 Reviewed by Dumitru Daniliuc. 77336 77337 Add idl and mock classes for FileSystem API's {File,Directory}Entry and related interfaces 77338 https://bugs.webkit.org/show_bug.cgi?id=43993 77339 77340 Adding DirectoryEntry, DirectoryReader, EntriesCallback and FileEntry as defined in HTML5 FileSystem API. 77341 http://dev.w3.org/2009/dap/file-system/file-dir-sys.html 77342 77343 Also adding Makefile entries for idl and mock classes added in changeset 64414 (except for Android platforms). 77344 77345 Tests will be added when we add underlying implementation. 77346 77347 * CMakeLists.txt: 77348 * DerivedSources.cpp: 77349 * DerivedSources.make: 77350 * GNUmakefile.am: 77351 * WebCore.gypi: 77352 * WebCore.pri: 77353 * WebCore.pro: 77354 * WebCore.vcproj/WebCore.vcproj: 77355 * WebCore.xcodeproj/project.pbxproj: 77356 * storage/DOMFileSystem.cpp: 77357 (WebCore::DOMFileSystem::root): 77358 * storage/DOMFileSystem.h: 77359 * storage/DOMFileSystem.idl: 77360 * storage/DirectoryEntry.cpp: Added. 77361 * storage/DirectoryEntry.h: Added. 77362 * storage/DirectoryEntry.idl: Added. 77363 * storage/DirectoryReader.cpp: Added. 77364 * storage/DirectoryReader.h: Added. 77365 * storage/DirectoryReader.idl: Added. 77366 * storage/EntriesCallback.h: Added. 77367 * storage/EntriesCallback.idl: Added. 77368 * storage/EntryArray.cpp: Added. 77369 * storage/EntryArray.h: Added. 77370 * storage/EntryArray.idl: Added. 77371 * storage/Entry.cpp: 77372 (WebCore::Entry::Entry): 77373 (WebCore::Entry::getMetadata): 77374 (WebCore::Entry::moveTo): 77375 (WebCore::Entry::copyTo): 77376 (WebCore::Entry::remove): 77377 (WebCore::Entry::getParent): 77378 * storage/Entry.h: 77379 (WebCore::Entry::isFile): 77380 (WebCore::Entry::isDirectory): 77381 * storage/Entry.idl: 77382 * storage/FileEntry.cpp: Added. 77383 * storage/FileEntry.h: Added. 77384 * storage/FileEntry.idl: Added. 77385 77386 2010-08-16 Andreas Kling <andreas.kling (a] nokia.com> 77387 77388 Reviewed by Ariya Hidayat. 77389 77390 [Qt] Path::closeSubpath() should only close the last subpath if it has >1 point 77391 https://bugs.webkit.org/show_bug.cgi?id=44061 77392 77393 Spec link: 77394 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-closepath 77395 77396 Test: fast/canvas/canvas-closePath-single-point.html 77397 77398 * platform/graphics/Path.h: Add a Qt-only member to track the last subpath. 77399 * platform/graphics/qt/PathQt.cpp: 77400 (WebCore::Path::closeSubpath): Only close the last subpath if it 77401 has more than 1 point. Otherwise behave as moveTo(first point in last subpath) 77402 (WebCore::Path::Path): 77403 (WebCore::Path::operator=): 77404 (WebCore::Path::moveTo): 77405 (WebCore::Path::transform): 77406 77407 2010-08-16 Nate Chapin <japhet (a] chromium.org> 77408 77409 Unreviewed, Chromium mac build fix (with help from jamesr). 77410 77411 * platform/chromium/ScrollbarThemeChromiumMac.mm: 77412 (WebCore::ScrollbarThemeChromiumMac::paint): 77413 77414 2010-08-16 Gavin Barraclough <barraclough (a] apple.com> 77415 77416 Reviewed by Sam Weinig 77417 77418 Bug 44080 - String find/reverseFind methods need tidying up 77419 These methods have a couple of problems with their interface, and implementation. 77420 77421 These methods take and int index, and return an int - however this is problematic 77422 since on 64-bit string indices may have a full 32-bit range. This spills out into 77423 surrounding code, which unsafely casts string indices from unsigned to int. Code 77424 checking the result of these methods check for a mix of "== -1", "< 0", and 77425 "== notFound". Clean this up by changing these methods to take an unsigned 77426 starting index, and return a size_t. with a failed match indicated by notFound. 77427 reverseFind also has a special meaning for the starting index argument, in that a 77428 negative index is interpreted as an offset back from the end of the string. Remove 77429 this functionality, in the (1!) case where it is used we should just calculate the 77430 offset by subtracting from the string's length. 77431 77432 The implementation has a few problems too. The code is not in webkit style, in 77433 using assorted abbreviations in variable names, and implementations of similar 77434 find methods with differing argument types were unnecessarily inconsistent. When 77435 find is passed const char* data the string would be handled as latin1 (zero 77436 extended to UTF-16) for all characters but the first; this is sign extended. 77437 Case-insensitive find is broken for unicode strings; the hashing optimization is 77438 not unicode safe, and could result in false negatives. 77439 77440 Unify UString find methods to match String. 77441 77442 * css/CSSSelector.cpp: 77443 (WebCore::CSSSelector::RareData::parseNth): 77444 * css/CSSStyleDeclaration.cpp: 77445 (WebCore::CSSStyleDeclaration::setProperty): 77446 * css/CSSStyleSelector.cpp: 77447 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 77448 * dom/Document.cpp: 77449 (WebCore::Document::getImageMap): 77450 * editing/CompositeEditCommand.cpp: 77451 (WebCore::CompositeEditCommand::inputText): 77452 * editing/InsertTextCommand.cpp: 77453 (WebCore::InsertTextCommand::input): 77454 * editing/TextIterator.cpp: 77455 (WebCore::TextIterator::handleTextBox): 77456 * editing/TypingCommand.cpp: 77457 (WebCore::TypingCommand::insertText): 77458 * editing/markup.cpp: 77459 (WebCore::fillContainerFromString): 77460 (WebCore::createFragmentFromText): 77461 * html/File.cpp: 77462 (WebCore::File::Init): 77463 * html/HTMLAnchorElement.cpp: 77464 (WebCore::HTMLAnchorElement::setHost): 77465 * html/HTMLEmbedElement.cpp: 77466 (WebCore::HTMLEmbedElement::parseMappedAttribute): 77467 * html/HTMLFormControlElement.cpp: 77468 (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty): 77469 * html/HTMLObjectElement.cpp: 77470 (WebCore::HTMLObjectElement::parseMappedAttribute): 77471 * inspector/InspectorDOMAgent.cpp: 77472 (WebCore::InspectorDOMAgent::performSearch): 77473 * loader/CrossOriginPreflightResultCache.cpp: 77474 (WebCore::parseAccessControlAllowList): 77475 * loader/MainResourceLoader.cpp: 77476 (WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase): 77477 * loader/appcache/ApplicationCacheStorage.cpp: 77478 (WebCore::parseHeader): 77479 (WebCore::parseHeaders): 77480 * loader/icon/IconFetcher.cpp: 77481 (WebCore::parseIconLink): 77482 * page/DOMWindow.cpp: 77483 (WebCore::DOMWindow::parseModalDialogFeatures): 77484 * page/SecurityOrigin.cpp: 77485 (WebCore::SecurityOrigin::createFromDatabaseIdentifier): 77486 * page/UserContentURLPattern.cpp: 77487 (WebCore::UserContentURLPattern::parse): 77488 * page/XSSAuditor.cpp: 77489 (WebCore::XSSAuditor::findInRequest): 77490 * platform/ContentType.cpp: 77491 (WebCore::ContentType::parameter): 77492 (WebCore::ContentType::type): 77493 * platform/KURL.cpp: 77494 (WebCore::KURL::lastPathComponent): 77495 (WebCore::KURL::setProtocol): 77496 (WebCore::decodeURLEscapeSequences): 77497 (WebCore::substituteBackslashes): 77498 (WebCore::mimeTypeFromDataURL): 77499 * platform/Length.cpp: 77500 (WebCore::newCoordsArray): 77501 (WebCore::newLengthArray): 77502 * platform/LinkHash.cpp: 77503 (WebCore::findSlashDotDotSlash): 77504 (WebCore::findSlashSlash): 77505 (WebCore::findSlashDotSlash): 77506 (WebCore::cleanPath): 77507 * platform/MIMETypeRegistry.cpp: 77508 (WebCore::MIMETypeRegistry::getMIMETypeForPath): 77509 * platform/SchemeRegistry.cpp: 77510 (WebCore::SchemeRegistry::shouldTreatURLAsLocal): 77511 * platform/graphics/MediaPlayer.cpp: 77512 (WebCore::MediaPlayer::load): 77513 * platform/mac/DragImageMac.mm: 77514 (WebCore::createDragImageIconForCachedImage): 77515 * platform/network/CredentialStorage.cpp: 77516 (WebCore::protectionSpaceMapKeyFromURL): 77517 (WebCore::findDefaultProtectionSpaceForURL): 77518 * platform/network/HTTPParsers.cpp: 77519 (WebCore::skipWhiteSpace): 77520 (WebCore::skipToken): 77521 (WebCore::parseHTTPRefresh): 77522 (WebCore::filenameFromHTTPContentDisposition): 77523 (WebCore::findCharsetInMediaType): 77524 (WebCore::parseXSSProtectionHeader): 77525 (WebCore::extractReasonPhraseFromHTTPStatusLine): 77526 * platform/network/ResourceResponseBase.cpp: 77527 (WebCore::ResourceResponseBase::isAttachment): 77528 (WebCore::parseCacheHeader): 77529 * rendering/RenderEmbeddedObject.cpp: 77530 (WebCore::RenderEmbeddedObject::updateWidget): 77531 * storage/Entry.cpp: 77532 (WebCore::Entry::Entry): 77533 * svg/SVGFont.cpp: 77534 (WebCore::isCompatibleGlyph): 77535 * svg/SVGURIReference.cpp: 77536 (WebCore::SVGURIReference::getTarget): 77537 * svg/animation/SVGSMILElement.cpp: 77538 (WebCore::SVGSMILElement::parseClockValue): 77539 (WebCore::SVGSMILElement::parseCondition): 77540 * xml/XPathFunctions.cpp: 77541 (WebCore::XPath::FunSubstringBefore::evaluate): 77542 (WebCore::XPath::FunSubstringAfter::evaluate): 77543 (WebCore::XPath::FunTranslate::evaluate): 77544 (WebCore::XPath::FunLang::evaluate): 77545 * xml/XPathParser.cpp: 77546 (WebCore::XPath::Parser::expandQName): 77547 77548 2010-08-16 Ryosuke Niwa <rniwa (a] webkit.org> 77549 77550 Reviewed by Tony Chang. 77551 77552 REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium 77553 https://bugs.webkit.org/show_bug.cgi?id=44070 77554 77555 The crash was caused by start or end node being removed in pushDownInlineStyleAroundNode. 77556 It made start and end orphaned, and caused s.node() to be detached from the document. 77557 Fixed the crash by using nodes passed to pushDownInlineStyleAroundNode for start and end if the original 77558 start and end are orphaned because pushDownInlineStyleAroundNode won't prune targetNode. 77559 77560 Test: editing/pasteboard/smart-paste-003-trailing-whitespace.html 77561 77562 * editing/ApplyStyleCommand.cpp: 77563 (WebCore::ApplyStyleCommand::removeInlineStyle): 77564 77565 2010-08-16 James Robinson <jamesr (a] chromium.org> 77566 77567 Compile fix. Remove ANGLEWebKitBridge classes from Chromium build. They are unused. 77568 77569 * WebCore.gypi: 77570 77571 2010-08-16 Vincent Scheib <scheib (a] chromium.org> 77572 77573 Reviewed by Dimitri Glazkov. 77574 77575 Canvas2D does not support images larger than system's GPU max texture size 77576 https://bugs.webkit.org/show_bug.cgi?id=43864 77577 77578 A new class "TilingData" has been created that provides logic for 77579 splitting a large image into a series of smaller tiles. 77580 77581 GLES2Texture and CLES2Canvas are modified to use the TilingData to 77582 split images on texture upload and render one logical image as many smaller 77583 images. 77584 77585 TilingData is tested via unit tests in WebKit/chromium/tests/TilingDataTest.cpp 77586 77587 * WebCore.gypi: 77588 * platform/graphics/chromium/GLES2Canvas.cpp: 77589 (WebCore::GLES2Canvas::drawTexturedRect): 77590 (WebCore::GLES2Canvas::drawTexturedRectTile): 77591 * platform/graphics/chromium/GLES2Canvas.h: 77592 * platform/graphics/chromium/GLES2Texture.cpp: 77593 (WebCore::GLES2Texture::GLES2Texture): 77594 (WebCore::GLES2Texture::~GLES2Texture): 77595 (WebCore::GLES2Texture::create): 77596 (WebCore::copySubRect): 77597 (WebCore::GLES2Texture::load): 77598 (WebCore::GLES2Texture::bindTile): 77599 * platform/graphics/chromium/GLES2Texture.h: 77600 (WebCore::GLES2Texture::tiles): 77601 * platform/graphics/chromium/TilingData.cpp: Added. 77602 (WebCore::computeNumTiles): 77603 (WebCore::TilingData::TilingData): 77604 (WebCore::TilingData::tileXIndexFromSrcCoord): 77605 (WebCore::TilingData::tileYIndexFromSrcCoord): 77606 (WebCore::TilingData::tileBounds): 77607 (WebCore::TilingData::tileBoundsWithBorder): 77608 (WebCore::TilingData::tileBoundsNormalized): 77609 (WebCore::TilingData::tilePositionX): 77610 (WebCore::TilingData::tilePositionY): 77611 (WebCore::TilingData::tileSizeX): 77612 (WebCore::TilingData::tileSizeY): 77613 (WebCore::TilingData::overlappedTileIndices): 77614 (WebCore::TilingData::intersectDrawQuad): 77615 * platform/graphics/chromium/TilingData.h: Added. 77616 (WebCore::TilingData::maxTextureSize): 77617 (WebCore::TilingData::totalSizeX): 77618 (WebCore::TilingData::totalSizeY): 77619 (WebCore::TilingData::numTiles): 77620 (WebCore::TilingData::numTilesX): 77621 (WebCore::TilingData::numTilesY): 77622 (WebCore::TilingData::tileIndex): 77623 (WebCore::TilingData::tileXIndex): 77624 (WebCore::TilingData::tileYIndex): 77625 (WebCore::TilingData::TilingData): 77626 (WebCore::TilingData::assertTile): 77627 * platform/graphics/skia/ImageSkia.cpp: 77628 (WebCore::BitmapImage::draw): 77629 * platform/graphics/skia/PlatformContextSkia.cpp: 77630 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 77631 77632 2010-08-16 David Hyatt <hyatt (a] apple.com> 77633 77634 Reviewed by Anders Carlsson. 77635 77636 https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying its data when rendering after canvas changes happen. 77637 77638 This patch renames ImageBuffer::image() to ImageBuffer::copyImage(). The new method always returns a new copy that is a current 77639 snapshot of the ImageBuffer. 77640 77641 To draw an ImageBuffer, you now use new GraphicsContext calls: drawImageBuffer. Platforms can then optimize these calls to draw 77642 efficiently without having to copy the bits of the ImageBuffer into an Image. 77643 77644 * WebCore.xcodeproj/project.pbxproj: 77645 * css/CSSCanvasValue.cpp: 77646 (WebCore::CSSCanvasValue::image): 77647 * html/HTMLCanvasElement.cpp: 77648 (WebCore::HTMLCanvasElement::willDraw): 77649 (WebCore::HTMLCanvasElement::reset): 77650 (WebCore::HTMLCanvasElement::paint): 77651 (WebCore::HTMLCanvasElement::setSurfaceSize): 77652 (WebCore::HTMLCanvasElement::copiedImage): 77653 (WebCore::HTMLCanvasElement::clearCopiedImage): 77654 * html/HTMLCanvasElement.h: 77655 * html/canvas/CanvasPattern.cpp: 77656 (WebCore::CanvasPattern::CanvasPattern): 77657 * html/canvas/CanvasPattern.h: 77658 (WebCore::CanvasPattern::create): 77659 * html/canvas/CanvasRenderingContext2D.cpp: 77660 (WebCore::CanvasRenderingContext2D::drawImage): 77661 (WebCore::CanvasRenderingContext2D::createPattern): 77662 (WebCore::CanvasRenderingContext2D::drawTextInternal): 77663 * html/canvas/WebGLRenderingContext.cpp: 77664 (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): 77665 (WebCore::WebGLRenderingContext::reshape): 77666 (WebCore::WebGLRenderingContext::texImage2D): 77667 (WebCore::WebGLRenderingContext::texSubImage2D): 77668 * html/canvas/WebGLRenderingContext.h: 77669 (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer): 77670 * platform/graphics/GeneratedImage.cpp: 77671 (WebCore::GeneratedImage::drawPattern): 77672 * platform/graphics/GraphicsContext.cpp: 77673 (WebCore::GraphicsContext::drawImageBuffer): 77674 (WebCore::GraphicsContext::clipToImageBuffer): 77675 * platform/graphics/GraphicsContext.h: 77676 * platform/graphics/GraphicsContext3D.h: 77677 (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer): 77678 * platform/graphics/Image.h: 77679 * platform/graphics/ImageBuffer.h: 77680 (WebCore::ImageBuffer::width): 77681 (WebCore::ImageBuffer::height): 77682 * platform/graphics/Pattern.cpp: 77683 (WebCore::Pattern::Pattern): 77684 * platform/graphics/Pattern.h: 77685 (WebCore::Pattern::create): 77686 * platform/graphics/cairo/GraphicsContextCairo.cpp: 77687 * platform/graphics/cairo/ImageBufferCairo.cpp: 77688 (WebCore::ImageBuffer::drawsUsingCopy): 77689 (WebCore::ImageBuffer::copyImage): 77690 (WebCore::ImageBuffer::clip): 77691 (WebCore::ImageBuffer::draw): 77692 (WebCore::ImageBuffer::drawPattern): 77693 * platform/graphics/cg/GraphicsContextCG.cpp: 77694 * platform/graphics/cg/ImageBufferCG.cpp: 77695 (WebCore::ImageBuffer::ImageBuffer): 77696 (WebCore::ImageBuffer::drawsUsingCopy): 77697 (WebCore::ImageBuffer::copyImage): 77698 (WebCore::ImageBuffer::draw): 77699 (WebCore::ImageBuffer::drawPattern): 77700 (WebCore::ImageBuffer::clip): 77701 * platform/graphics/cg/ImageBufferData.h: 77702 * platform/graphics/filters/FEColorMatrix.cpp: 77703 (WebCore::FEColorMatrix::apply): 77704 * platform/graphics/filters/FEComposite.cpp: 77705 (WebCore::FEComposite::apply): 77706 * platform/graphics/filters/SourceAlpha.cpp: 77707 (WebCore::SourceAlpha::apply): 77708 * platform/graphics/filters/SourceGraphic.cpp: 77709 (WebCore::SourceGraphic::apply): 77710 * platform/graphics/mac/GraphicsContext3DMac.mm: 77711 * platform/graphics/qt/GraphicsContext3DQt.cpp: 77712 * platform/graphics/qt/GraphicsContextQt.cpp: 77713 * platform/graphics/qt/ImageBufferData.h: 77714 * platform/graphics/qt/ImageBufferQt.cpp: 77715 (WebCore::ImageBufferData::ImageBufferData): 77716 (WebCore::ImageBuffer::drawsUsingCopy): 77717 (WebCore::ImageBuffer::copyImage): 77718 (WebCore::ImageBuffer::draw): 77719 (WebCore::ImageBuffer::drawPattern): 77720 (WebCore::ImageBuffer::clip): 77721 * platform/graphics/skia/GraphicsContextSkia.cpp: 77722 * platform/graphics/skia/ImageBufferSkia.cpp: 77723 (WebCore::ImageBuffer::drawsUsingCopy): 77724 (WebCore::ImageBuffer::copyImage): 77725 (WebCore::ImageBuffer::clip): 77726 (WebCore::): 77727 * platform/graphics/wx/GraphicsContextWx.cpp: 77728 * platform/graphics/wx/ImageBufferWx.cpp: 77729 (WebCore::ImageBuffer::drawsUsingCopy): 77730 (WebCore::ImageBuffer::copyImage): 77731 (WebCore::ImageBuffer::clip): 77732 (WebCore::ImageBuffer::draw): 77733 (WebCore::ImageBuffer::drawPattern): 77734 * platform/mac/ScrollbarThemeMac.mm: 77735 (WebCore::ScrollbarThemeMac::paint): 77736 * rendering/RenderBoxModelObject.cpp: 77737 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 77738 * rendering/RenderSVGResourceClipper.cpp: 77739 (WebCore::RenderSVGResourceClipper::applyClippingToContext): 77740 * rendering/RenderSVGResourceFilter.cpp: 77741 (WebCore::RenderSVGResourceFilter::postApplyResource): 77742 * rendering/RenderSVGResourceGradient.cpp: 77743 (WebCore::clipToTextMask): 77744 * rendering/RenderSVGResourceMasker.cpp: 77745 (WebCore::RenderSVGResourceMasker::applyResource): 77746 * rendering/RenderSVGResourcePattern.cpp: 77747 (WebCore::RenderSVGResourcePattern::buildPattern): 77748 * rendering/RenderThemeMac.mm: 77749 (WebCore::RenderThemeMac::paintProgressBar): 77750 * svg/SVGFEImageElement.cpp: 77751 (WebCore::SVGFEImageElement::build): 77752 * svg/graphics/SVGImage.cpp: 77753 (WebCore::SVGImage::nativeImageForCurrentFrame): 77754 * svg/graphics/SVGImage.h: 77755 * svg/graphics/filters/SVGFEMerge.cpp: 77756 (WebCore::FEMerge::apply): 77757 * svg/graphics/filters/SVGFEOffset.cpp: 77758 (WebCore::FEOffset::apply): 77759 * svg/graphics/filters/SVGFETile.cpp: 77760 (WebCore::FETile::apply): 77761 77762 2010-08-16 Paul Sawaya <psawaya (a] apple.com> 77763 77764 Reviewed by Chris Marrin. 77765 77766 Added shader validation via ANGLE 77767 https://bugs.webkit.org/show_bug.cgi?id=42405 77768 77769 Added validation to WebGL via ANGLE 77770 77771 * Configurations/WebCore.xcconfig: 77772 * WebCore.gypi: 77773 * WebCore.xcodeproj/project.pbxproj: 77774 * platform/graphics/ANGLEWebKitBridge.cpp: Added. 77775 (WebCore::ANGLEWebKitBridge::ANGLEWebKitBridge): 77776 (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge): 77777 (WebCore::ANGLEWebKitBridge::validateShaderSource): 77778 * platform/graphics/ANGLEWebKitBridge.h: Added. 77779 (WebCore::): 77780 (WebCore::ANGLEWebKitBridge::setResources): 77781 * platform/graphics/GraphicsContext3D.h: 77782 (WebCore::GraphicsContext3D::): 77783 * platform/graphics/mac/GraphicsContext3DMac.mm: 77784 (WebCore::GraphicsContext3D::GraphicsContext3D): 77785 (WebCore::GraphicsContext3D::compileShader): 77786 (WebCore::GraphicsContext3D::shaderSource): 77787 (WebCore::GraphicsContext3D::getShaderiv): 77788 (WebCore::GraphicsContext3D::getShaderInfoLog): 77789 (WebCore::GraphicsContext3D::getShaderSource): 77790 77791 2010-08-16 Kevin Ollivier <kevino (a] theolliviers.com> 77792 77793 [wx] Build fix, do not build WebCore as a convenience library as this leads to 77794 errors in the Win build w/export symbols and causes problems with DOM bindings 77795 debugging in gdb. 77796 77797 * wscript: Removed. 77798 77799 2010-08-16 Ilya Tikhonovsky <loislo (a] chromium.org> 77800 77801 Reviewed by Adam Roben. 77802 77803 Current implementation of WebCore post-build step on windows platform is error prone. 77804 It would be better to extract the script into external file. 77805 https://bugs.webkit.org/show_bug.cgi?id=44058 77806 77807 * WebCore.vcproj/WebCore.vcproj: 77808 * WebCore.vcproj/copyForwardingHeaders.cmd: Added. 77809 * WebCore.vcproj/copyInspectorFiles.cmd: Added. 77810 77811 2010-08-16 Kevin Ollivier <kevino (a] theolliviers.com> 77812 77813 [wx] Fix typo in previous build fix. 77814 77815 * platform/graphics/WOFFFileFormat.cpp: 77816 77817 2010-08-16 Alex Milowski <alex (a] milowski.com> 77818 77819 Reviewed by David Levin. 77820 77821 Added the configuration of the MathML related files. 77822 77823 * WebCore.gyp/WebCore.gyp: 77824 * WebCore.gypi: 77825 77826 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 77827 77828 Not reviewed: fix Leopard Release inspector tests. 77829 77830 * inspector/front-end/inspector.js: 77831 77832 2010-08-16 Marcus Bulach <bulach (a] chromium.org> 77833 77834 Reviewed by Jeremy Orlow. 77835 77836 Implements IDBKeyPath extractor. 77837 https://bugs.webkit.org/show_bug.cgi?id=43276 77838 77839 Unit-test IDBKeyPathExtractorTest.cpp. 77840 LayoutTests will arrive as IndexedDB infrastructure is fleshed out. 77841 77842 * bindings/v8/IDBBindingUtilities.cpp: 77843 (WebCore::getValueFrom): 77844 (WebCore::createIDBKeyFromSerializedValueAndKeyPath): 77845 * bindings/v8/IDBBindingUtilities.h: 77846 77847 2010-08-13 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 77848 77849 Reviewed by Kenneth Rohde Christiansen and Martin Robinson. 77850 77851 [GTK] GTK+ drawing idle starved 77852 https://bugs.webkit.org/show_bug.cgi?id=43994 77853 77854 Tune down the priority of the shared timers to guarantee GTK+ has 77855 an opportunity to redraw. 77856 77857 * platform/gtk/SharedTimerGtk.cpp: 77858 (WebCore::setSharedTimerFireTime): 77859 77860 2010-08-16 Leandro Pereira <leandro (a] profusion.mobi> 77861 77862 [EFL] Build fix after r65366. 77863 77864 EFL port does not support automated tests yet. 77865 77866 * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if 77867 they're empty. 77868 77869 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 77870 77871 Reviewed by Yury Semikhatsky. 77872 77873 Web Inspector: Make InjectedScript proto-based. 77874 https://bugs.webkit.org/show_bug.cgi?id=44028 77875 77876 * inspector/front-end/InjectedScript.js: 77877 (injectedScriptConstructor): 77878 (injectedScriptConstructor.): 77879 77880 2010-08-16 Csaba Osztrogonc <ossy (a] webkit.org> 77881 77882 Reviewed by Adam Roben. 77883 77884 Fix warning in WebCore/plugins/win/PluginPackageWin.cpp 77885 https://bugs.webkit.org/show_bug.cgi?id=43920 77886 77887 * plugins/win/PluginPackageWin.cpp: 77888 (WebCore::PluginPackage::fetchInfo): 77889 77890 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 77891 77892 Not reviewed. Touch inspector file to force frontend deployment. 77893 77894 * inspector/InspectorController.cpp: 77895 77896 2010-08-16 Kevin Ollivier <kevino (a] theolliviers.com> 77897 77898 [wx] Build fix for non-Win ports on Windows. 77899 77900 * platform/graphics/WOFFFileFormat.cpp: 77901 77902 2010-08-16 Adam Langley <agl (a] chromium.org> 77903 77904 Reviewed by Tony Chang. 77905 77906 [chromium] Improve spacing support for complex text on Linux 77907 77908 https://bugs.webkit.org/show_bug.cgi?id=39014 77909 77910 Previously, our complex text support ignored word-spacing, 77911 justification and letter-spacing. This fixes the first two issues and 77912 allows us to render Scribd's HTML5 documents much better. 77913 77914 Test: fast/text/atsui-spacing-features.html 77915 77916 * platform/graphics/chromium/FontLinux.cpp: 77917 (WebCore::TextRunWalker::TextRunWalker): 77918 (WebCore::TextRunWalker::setWordSpacingAdjustment): 77919 (WebCore::TextRunWalker::setLetterSpacingAdjustment): 77920 (WebCore::TextRunWalker::setPadding): 77921 (WebCore::TextRunWalker::setGlyphXPositions): 77922 (WebCore::TextRunWalker::isCodepointSpace): 77923 (WebCore::Font::drawComplexText): 77924 (WebCore::Font::floatWidthForComplexText): 77925 (WebCore::Font::offsetForPositionForComplexText): 77926 (WebCore::Font::selectionRectForComplexText): 77927 77928 2010-08-16 Csaba Osztrogonc <ossy (a] webkit.org> 77929 77930 Reviewed by Kenneth Rohde Christiansen. 77931 77932 Fix warnings: unknown conversion type character 'l' in format 77933 https://bugs.webkit.org/show_bug.cgi?id=43359 77934 77935 * loader/icon/IconDatabase.cpp: 77936 (WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier. 77937 (WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows. 77938 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: 77939 (WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows. 77940 * platform/sql/SQLiteDatabase.cpp: 77941 (WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows. 77942 * storage/DatabaseTracker.cpp: 77943 (WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows. 77944 77945 2010-08-16 Csaba Osztrogonc <ossy (a] webkit.org> 77946 77947 Reviewed by Kenneth Rohde Christiansen. 77948 77949 Fix warnings: unknown conversion type character 'l' in format 77950 https://bugs.webkit.org/show_bug.cgi?id=43359 77951 77952 * loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows. 77953 (WebCore::parseOneFTPLine): 77954 77955 2010-08-16 Ariya Hidayat <ariya (a] sencha.com> 77956 77957 Reviewed by Kenneth Rohde Christiansen. 77958 77959 [Qt] Shadow blur for rectangle fill 77960 https://bugs.webkit.org/show_bug.cgi?id=44025 77961 77962 The blur implementation follows the approximation of Gaussian blur 77963 with three successive box blurs, working on the alpha channel only. 77964 (see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur). 77965 77966 * WebCore.pro: Refer to ContexShadow.* files. 77967 * platform/graphics/qt/ContextShadow.cpp: Added. 77968 (WebCore::ContextShadow::ContextShadow): 77969 (WebCore::ContextShadow::clear): 77970 (WebCore::blurHorizontal): Box blurs in horizontal direction, working 77971 on QImage (in-place). 77972 (WebCore::shadowBlur): Main blur function which just calls the 77973 above blurHorizontal function twice, once with transposed image 77974 (equivalent as it would have done vertical box blurs). 77975 (WebCore::ContextShadow::drawShadowRect): 77976 * platform/graphics/qt/ContextShadow.h: Added. 77977 (WebCore::ContextShadow::): 77978 * platform/graphics/qt/GraphicsContextQt.cpp: 77979 (WebCore::GraphicsContextPlatformPrivate::hasShadow): 77980 (WebCore::GraphicsContext::restorePlatformState): 77981 (WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow. 77982 (WebCore::GraphicsContext::setPlatformShadow): 77983 77984 2010-08-16 Andras Becsi <abecsi (a] webkit.org> 77985 77986 Rubber-stamped by Gustavo Noronha Silva. 77987 77988 [GTK] Build fix for MathML code generation. 77989 77990 No new tests needed. 77991 77992 * GNUmakefile.am: 77993 77994 2010-08-16 Sheriff Bot <webkit.review.bot (a] gmail.com> 77995 77996 Unreviewed, rolling out r65414. 77997 http://trac.webkit.org/changeset/65414 77998 https://bugs.webkit.org/show_bug.cgi?id=44055 77999 78000 GTL & QT tests failing. (Requested by pfeldman on #webkit). 78001 78002 * inspector/front-end/InjectedScript.js: 78003 (injectedScriptConstructor): 78004 (injectedScriptConstructor.): 78005 78006 2010-08-16 Ariya Hidayat <ariya (a] sencha.com> 78007 78008 Reviewed by Antonio Gomes. 78009 78010 [Qt] Save and restore shadow state in GraphicsContextQt 78011 https://bugs.webkit.org/show_bug.cgi?id=44031 78012 78013 This is needed after r65362. 78014 Use a new class ContextShadowParameter to track and keep the shadow 78015 state. We use this rather than using GraphicsContextState to allow 78016 possible optimizations (right now only to determine the shadow type, 78017 but in future it might cover things like cached scratch image, 78018 persistent shader, etc). 78019 78020 * platform/graphics/qt/GraphicsContextQt.cpp: 78021 (WebCore::ContextShadowParameter::): 78022 (WebCore::ContextShadowParameter::ContextShadowParameter): 78023 (WebCore::ContextShadowParameter::clear): 78024 (WebCore::GraphicsContextPlatformPrivate::hasShadow): 78025 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78026 (WebCore::GraphicsContext::savePlatformState): 78027 (WebCore::GraphicsContext::restorePlatformState): 78028 (WebCore::GraphicsContext::drawRect): 78029 (WebCore::GraphicsContext::drawLine): 78030 (WebCore::GraphicsContext::strokeArc): 78031 (WebCore::GraphicsContext::drawConvexPolygon): 78032 (WebCore::GraphicsContext::fillPath): 78033 (WebCore::GraphicsContext::strokePath): 78034 (WebCore::GraphicsContext::fillRect): 78035 (WebCore::GraphicsContext::fillRoundedRect): 78036 (WebCore::GraphicsContext::setPlatformShadow): 78037 (WebCore::GraphicsContext::clearPlatformShadow): 78038 78039 2010-07-28 Marcus Bulach <bulach (a] chromium.org> 78040 78041 Reviewed by Adam Barth. 78042 78043 Implement IDBKeyPath parser. 78044 https://bugs.webkit.org/show_bug.cgi?id=42976 78045 78046 IDBKeyPath is an internal class, exposed only for unit tests for now. 78047 It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties 78048 from a SerializedScriptValue. 78049 78050 * WebCore.gypi: 78051 * storage/IDBKeyPath.cpp: Added. 78052 (WebCore::IDBKeyPath::create): 78053 (WebCore::IDBKeyPath::IDBKeyPath): 78054 (WebCore::IDBKeyPath::~IDBKeyPath): 78055 (WebCore::IDBKeyPath::hasNext): 78056 (WebCore::IDBKeyPath::next): 78057 (WebCore::IDBKeyPath::identifier): 78058 (WebCore::IDBKeyPath::hasIndex): 78059 (WebCore::IDBKeyPath::indexValue): 78060 (WebCore::IDBKeyPath::parserError): 78061 (WebCore::IDBKeyPath::parse): 78062 (WebCore::IDBKeyPath::Lexer::lex): 78063 (WebCore::isSafeIdentifierStartCharacter): 78064 (WebCore::isSafeIdentifierCharacter): 78065 (WebCore::IDBKeyPath::Lexer::lexIdentifier): 78066 (WebCore::IDBKeyPath::Lexer::lexNumber): 78067 * storage/IDBKeyPath.h: Added. 78068 (WebCore::IDBKeyPath::Token::Token): 78069 (WebCore::IDBKeyPath::): 78070 (WebCore::IDBKeyPath::Lexer::Lexer): 78071 (WebCore::IDBKeyPath::Lexer::next): 78072 (WebCore::IDBKeyPath::Lexer::currentToken): 78073 78074 2010-08-13 Steve Block <steveblock (a] google.com> 78075 78076 Reviewed by Alexey Proskuryakov. 78077 78078 Geolocation requests in progress when the frame is disconnected should invoke the error callback 78079 https://bugs.webkit.org/show_bug.cgi?id=43974 78080 78081 If requests are ongoing when the Frame is disconnected, we abort them with a fatal error. 78082 To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to 78083 set a fatal error on all ongoing requests. Once the requests have made their error 78084 callbacks, they are deleted. Note that we check at callback time that the script 78085 execution context for the callback is still valid, so it's safe to attempt these 78086 callbacks even after the Geolocation object's Frame has gone. 78087 78088 This requires a change to allow multiple calls to GeoNotifier::setFatalError(). 78089 For repeated calls, we do not replace the existing error. This ensures that when 78090 permission has been denied and the frame is then disconnected, the error callback 78091 reports the permission error, as required by the spec. 78092 78093 Tests: fast/dom/Geolocation/disconnected-frame.html 78094 fast/dom/Geolocation/disconnected-frame-permission-denied.html 78095 78096 * page/Geolocation.cpp: 78097 (WebCore::Geolocation::GeoNotifier::setFatalError): 78098 (WebCore::Geolocation::disconnectFrame): 78099 (WebCore::Geolocation::startRequest): 78100 (WebCore::Geolocation::cancelAllRequests): 78101 * page/Geolocation.h: 78102 78103 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 78104 78105 Reviewed by Joseph Pecoraro. 78106 78107 Web Inspector: upstream frontend-side WebSocket transport. 78108 https://bugs.webkit.org/show_bug.cgi?id=43970 78109 78110 Chromium already has an alternate WebSocket-based communication channel with 78111 the backend. Upstreaming it in this change. We will agree on the URI 78112 of the remote service as the protocol matures. 78113 78114 * inspector/front-end/inspector.js: 78115 (.WebInspector.socket.onmessage): 78116 (.WebInspector.socket.onerror): 78117 (.WebInspector.socket.onopen): 78118 (WebInspector.loaded): 78119 (WebInspector.doLoadedDone): 78120 (WebInspector_syncDispatch): 78121 78122 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 78123 78124 Reviewed by Yury Semikhatsky. 78125 78126 Web Inspector: Make InjectedScript proto-based. 78127 https://bugs.webkit.org/show_bug.cgi?id=44028 78128 78129 * inspector/front-end/InjectedScript.js: 78130 (injectedScriptConstructor): 78131 (injectedScriptConstructor.): 78132 * inspector/front-end/inspector.js: 78133 (WebInspector.loaded): 78134 78135 2010-08-16 Pavel Feldman <pfeldman (a] chromium.org> 78136 78137 Reviewed by Joseph Pecoraro. 78138 78139 Web Inspector: [REGRESSION] console's clear command does not work. 78140 https://bugs.webkit.org/show_bug.cgi?id=44027 78141 78142 Test: inspector/console-command-clear.html 78143 78144 * inspector/Inspector.idl: 78145 * inspector/InspectorBackend.cpp: 78146 * inspector/InspectorBackend.h: 78147 * inspector/InspectorController.cpp: 78148 (WebCore::InspectorController::clearConsoleMessages): 78149 * inspector/front-end/ConsoleView.js: 78150 (WebInspector.ConsoleView.prototype.requestClearMessages): 78151 * inspector/front-end/inspector.js: 78152 (WebInspector.consoleMessagesCleared): 78153 78154 2010-08-16 Jeremy Orlow <jorlow (a] chromium.org> 78155 78156 Ugh, the #if ENABLE() was supposed to be added to Settings not GroupSettings. 78157 78158 * page/GroupSettings.cpp: 78159 (WebCore::GroupSettings::GroupSettings): 78160 (WebCore::GroupSettings::setLocalStorageQuotaBytes): 78161 * page/GroupSettings.h: 78162 * page/Settings.cpp: 78163 (WebCore::Settings::Settings): 78164 * page/Settings.h: 78165 78166 2010-08-16 Jeremy Orlow <jorlow (a] chromium.org> 78167 78168 Last build fix? 78169 78170 * page/PageGroup.cpp: 78171 (WebCore::PageGroup::PageGroup): 78172 78173 2010-08-16 Jeremy Orlow <jorlow (a] chromium.org> 78174 78175 Ugh...another build fix. 78176 78177 * page/GroupSettings.cpp: 78178 (WebCore::GroupSettings::GroupSettings): 78179 * page/GroupSettings.h: 78180 78181 2010-08-16 Jeremy Orlow <jorlow (a] chromium.org> 78182 78183 Build fix. 78184 78185 * GNUmakefile.am: 78186 78187 2010-08-16 Jeremy Orlow <jorlow (a] chromium.org> 78188 78189 Build fix. 78190 78191 * page/PageGroup.cpp: 78192 (WebCore::PageGroup::localStorage): 78193 78194 2010-08-13 Jeremy Orlow <jorlow (a] chromium.org> 78195 78196 Some settings are linked to the PageGroup not the Page. Create a new class for those. 78197 https://bugs.webkit.org/show_bug.cgi?id=43794 78198 78199 Since persistient storage is shared between pages, there's no way to modify 78200 some settings related to it on a per page basis. As such, it's not technically 78201 correct for these settings to be on the Page's settings. Create a new class 78202 called GroupSettings, move group-wide local storage setting there (the other we 78203 can't), and add a new setting for IndexedDB's path (which is prompting this change). 78204 78205 No behavior has changed, so no tests. 78206 78207 * Android.mk: 78208 * CMakeLists.txt: 78209 * GNUmakefile.am: 78210 * WebCore.gypi: 78211 * WebCore.pro: 78212 * WebCore.vcproj/WebCore.vcproj: 78213 * WebCore.xcodeproj/project.pbxproj: 78214 * page/GroupSettings.cpp: Added. 78215 (WebCore::GroupSettings::GroupSettings): 78216 (WebCore::GroupSettings::setLocalStorageQuotaBytes): 78217 (WebCore::GroupSettings::setLocalStorageDatabasePath): 78218 (WebCore::GroupSettings::setIndexedDBDatabasePath): 78219 * page/GroupSettings.h: Added. 78220 (WebCore::GroupSettings::create): 78221 (WebCore::GroupSettings::localStorageQuotaBytes): 78222 (WebCore::GroupSettings::localStorageDatabasePath): 78223 (WebCore::GroupSettings::indexedDBDatabasePath): 78224 * page/PageGroup.cpp: 78225 (WebCore::PageGroup::PageGroup): 78226 (WebCore::PageGroup::localStorage): 78227 * page/PageGroup.h: 78228 (WebCore::PageGroup::groupSettings): 78229 * page/Settings.cpp: 78230 (WebCore::Settings::Settings): 78231 (WebCore::Settings::setSessionStorageQuota): 78232 * page/Settings.h: 78233 78234 2010-08-16 Adam Barth <abarth (a] webkit.org> 78235 78236 Reviewed by Alexey Proskuryakov. 78237 78238 HTML5 fragment parsing doesn't load iframes 78239 https://bugs.webkit.org/show_bug.cgi?id=44038 78240 78241 Previously, this code assumed that every source iframe was actually 78242 attached to a render tree. It tried to "keep the iframe alive" as it 78243 moved documents. However, if the iframe wasn't attached to begin with, 78244 it was never "alive," so trying to keep a dead iframe alive lead to a 78245 ... zombie iframe. 78246 78247 Test: fast/frames/adopt-from-created-document.html 78248 78249 * dom/Document.cpp: 78250 (WebCore::Document::adoptNode): 78251 78252 2010-08-13 MORITA Hajime <morrita (a] google.com> 78253 78254 Reviewed by Tony Chang. 78255 78256 https://bugs.webkit.org/show_bug.cgi?id=43778 78257 Dropping should fire textInput event 78258 78259 This change: 78260 - added TextEvent::m_isDrop to distinguish drop-initiated events. 78261 - added to dispatch TextEvent from DragController before making a side effect 78262 and cancel the side effect if the event prevents default 78263 78264 Tests: editing/pasteboard/drop-text-events-sideeffect.html 78265 editing/pasteboard/drop-text-events.html 78266 78267 * dom/TextEvent.cpp: 78268 (WebCore::TextEvent::createForDrop): Added. 78269 (WebCore::TextEvent::TextEvent): 78270 * dom/TextEvent.h: 78271 (WebCore::TextEvent::isDrop): Added. 78272 * editing/Editor.cpp: 78273 (WebCore::Editor::handleTextEvent): 78274 (WebCore::Editor::findEventTargetFrom): Extracted from findEventTargetFromSelection(). 78275 (WebCore::Editor::findEventTargetFromSelection): 78276 * editing/Editor.h: 78277 * page/DragController.cpp: 78278 (WebCore::DragController::dispatchTextInputEventFor): Added. 78279 (WebCore::DragController::concludeEditDrag): Added an event dispatch path. 78280 * page/DragController.h: 78281 78282 2010-08-15 Ariya Hidayat <ariya (a] sencha.com> 78283 78284 Unreviewed, rolling out r65393. 78285 http://trac.webkit.org/changeset/65393 78286 https://bugs.webkit.org/show_bug.cgi?id=44031 78287 78288 Breaks some canvas tests. 78289 78290 * platform/graphics/qt/GraphicsContextQt.cpp: 78291 (WebCore::GraphicsContextPlatformPrivate::): 78292 (WebCore::GraphicsContextPlatformPrivate::hasShadow): 78293 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78294 (WebCore::GraphicsContext::savePlatformState): 78295 (WebCore::GraphicsContext::restorePlatformState): 78296 (WebCore::GraphicsContext::strokeArc): 78297 (WebCore::GraphicsContext::drawConvexPolygon): 78298 (WebCore::GraphicsContext::fillPath): 78299 (WebCore::GraphicsContext::strokePath): 78300 (WebCore::GraphicsContext::fillRect): 78301 (WebCore::GraphicsContext::fillRoundedRect): 78302 (WebCore::GraphicsContext::setPlatformShadow): 78303 (WebCore::GraphicsContext::clearPlatformShadow): 78304 78305 2010-08-15 Ariya Hidayat <ariya (a] sencha.com> 78306 78307 Reviewed by Antonio Gomes. 78308 78309 [Qt] Save and restore shadow state in GraphicsContextQt 78310 https://bugs.webkit.org/show_bug.cgi?id=44031 78311 78312 This is needed after r65362. 78313 Use a new class ContextShadowParameter to track and keep the shadow 78314 state. We use this rather than using GraphicsContextState to allow 78315 possible optimizations (right now only to determine the shadow type, 78316 but in future it might cover things like cached scratch image, 78317 persistent shader, etc). 78318 78319 * platform/graphics/qt/GraphicsContextQt.cpp: 78320 (WebCore::ContextShadowParameter::): 78321 (WebCore::ContextShadowParameter::ContextShadowParameter): 78322 (WebCore::ContextShadowParameter::clear): 78323 (WebCore::GraphicsContextPlatformPrivate::hasShadow): 78324 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78325 (WebCore::GraphicsContext::savePlatformState): 78326 (WebCore::GraphicsContext::restorePlatformState): 78327 (WebCore::GraphicsContext::drawRect): 78328 (WebCore::GraphicsContext::drawLine): 78329 (WebCore::GraphicsContext::strokeArc): 78330 (WebCore::GraphicsContext::drawConvexPolygon): 78331 (WebCore::GraphicsContext::fillPath): 78332 (WebCore::GraphicsContext::strokePath): 78333 (WebCore::GraphicsContext::fillRect): 78334 (WebCore::GraphicsContext::fillRoundedRect): 78335 (WebCore::GraphicsContext::setPlatformShadow): 78336 (WebCore::GraphicsContext::clearPlatformShadow): 78337 78338 2010-08-15 Ariya Hidayat <ariya (a] sencha.com> 78339 78340 Reviewed by Antonio Gomes. 78341 78342 [Qt] Border should not cast shadows 78343 https://bugs.webkit.org/show_bug.cgi?id=44015 78344 78345 Shadows should be not casted except for brush fill (which is not what 78346 drawLine and drawRect are supposed to do). 78347 78348 * platform/graphics/qt/GraphicsContextQt.cpp: 78349 (WebCore::GraphicsContext::drawRect): Remove shadow painting, 78350 (WebCore::GraphicsContext::drawLine): ditto. 78351 78352 2010-08-15 Ryuan Choi <ryuan.choi (a] samsung.com> 78353 78354 Reviewed by Antonio Gomes. 78355 78356 [EFL] Build error on r65378 78357 https://bugs.webkit.org/show_bug.cgi?id=44019 78358 78359 Change build script for HTMLEntityNames.json instead of HTMLEntityNames.gperf 78360 78361 * CMakeLists.txt: 78362 78363 2010-08-15 Kevin Ollivier <kevino (a] theolliviers.com> 78364 78365 [wx] Build fix, add missing header. 78366 78367 * platform/graphics/WOFFFileFormat.cpp: 78368 78369 2010-08-15 Kevin Ollivier <kevino (a] theolliviers.com> 78370 78371 [wx] Build fix, don't build PluginDataNone.cpp even on GTK as PluginDataWx.cpp compiles. 78372 78373 * wscript: 78374 78375 2010-08-15 Adam Barth <abarth (a] webkit.org> 78376 78377 Reviewed by Eric Seidel. 78378 78379 document.write() doesn't flush plain text 78380 https://bugs.webkit.org/show_bug.cgi?id=8961 78381 78382 Originally I thought we should buffer the character tokens until we've 78383 reached the end of the input stream, but that's not how the spec 78384 handles things (it emits the character tokens one-by-one). 78385 78386 Tests: fast/tokenizer/flush-characters-in-document-write-evil.html 78387 fast/tokenizer/flush-characters-in-document-write.html 78388 78389 * html/HTMLTokenizer.cpp: 78390 (WebCore::HTMLTokenizer::emitEndOfFile): 78391 (WebCore::HTMLTokenizer::nextToken): 78392 (WebCore::HTMLTokenizer::haveBufferedCharacterToken): 78393 - Renamed this function now that it's simplier. 78394 * html/HTMLTokenizer.h: 78395 78396 2010-08-15 Adam Barth <abarth (a] webkit.org> 78397 78398 Reviewed by Eric Seidel. 78399 78400 Don't try to replace a non-existent document after executing JavaScript URLs 78401 https://bugs.webkit.org/show_bug.cgi?id=44024 78402 78403 Synchronous JavaScript execution is evil. Previously, the frame was 78404 deleted after executing the JavaScript URL, so we'd get confused when 78405 we tried to replace its document. 78406 78407 Test: fast/frames/javascript-url-for-deleted-frame.html 78408 78409 * bindings/ScriptControllerBase.cpp: 78410 (WebCore::ScriptController::executeIfJavaScriptURL): 78411 78412 2010-08-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 78413 78414 Unreviewed, rolling out r65374. 78415 http://trac.webkit.org/changeset/65374 78416 https://bugs.webkit.org/show_bug.cgi?id=44018 78417 78418 broke a myriad of svg tests (Requested by kling on #webkit). 78419 78420 * platform/graphics/qt/PathQt.cpp: 78421 (WebCore::Path::strokeBoundingRect): 78422 78423 2010-08-14 Eric Seidel <eric (a] webkit.org> 78424 78425 Reviewed by Adam Barth. 78426 78427 XSLTProcessor.transformToFragment should not pass contextElement to html/xml document parsers 78428 https://bugs.webkit.org/show_bug.cgi?id=44017 78429 78430 This fixes two tests which otherwise would fail when the 78431 HTML5 TreeBuilder is enabled for fragment parsing. 78432 78433 This revealed a bug in HTMLTreeBuilder() which I fixed as well. 78434 78435 * html/HTMLTreeBuilder.cpp: 78436 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 78437 * xml/XSLTProcessor.cpp: 78438 (WebCore::createFragmentFromSource): 78439 78440 2010-08-14 Andreas Kling <andreas.kling (a] nokia.com> 78441 78442 Reviewed by Ariya Hidayat. 78443 78444 [Qt] Path: Fast approximation of stroke bounding rects 78445 https://bugs.webkit.org/show_bug.cgi?id=44014 78446 78447 * platform/graphics/qt/PathQt.cpp: 78448 (WebCore::Path::strokeBoundingRect): Use QPainterPath::controlPointRect() 78449 to calculate a slightly larger bounding rect in a fraction of the time. 78450 78451 2010-08-14 Eric Seidel <eric (a] webkit.org> 78452 78453 Reviewed by Adam Barth. 78454 78455 Move innerHTML off of Range::createContextualFragment 78456 https://bugs.webkit.org/show_bug.cgi?id=44011 78457 78458 This makes all the editing tests stop failing under the 78459 HTML5 TreeBuilder. 78460 78461 In a previous patch Adam disabled some of the (wrong) code 78462 in createContextualFragment when in html5 treebuilder mode. 78463 The problem is that the editing code depends on 78464 createContextualFragment (as well as the Range DOM API), 78465 so we have to leave this code in until we can figure 78466 out if it's right or wrong behavior for the Range API. 78467 78468 This patch moves innerHTML/outerHTML off of using 78469 createContextualFragment and instead calls 78470 DocumentFragment::parseHTML directly (which is much simpler). 78471 78472 I expect Adam and I will end up turning on the HTML5 TreeBuilder 78473 in the next couple days, and most of the if branches I added 78474 here will go away for good. 78475 78476 I renamed Element::createContextualFragment to 78477 deprecatedCreateContextualFragment, to indicate that it's a 78478 dead API. The editing code should move off of it and consider 78479 using DocumentFragment::parseHTML instead. 78480 78481 * dom/Element.cpp: 78482 (WebCore::Element::deprecatedCreateContextualFragment): 78483 * dom/Element.h: 78484 * dom/Range.cpp: 78485 (WebCore::Range::createContextualFragment): 78486 * editing/markup.cpp: 78487 (WebCore::createFragmentFromMarkup): 78488 * html/HTMLElement.cpp: 78489 (WebCore::useLegacyTreeBuilder): 78490 (WebCore::HTMLElement::deprecatedCreateContextualFragment): 78491 (WebCore::HTMLElement::setInnerHTML): 78492 (WebCore::HTMLElement::setOuterHTML): 78493 * html/HTMLElement.h: 78494 78495 2010-08-14 Tasuku Suzuki <tasuku.suzuki (a] nokia.com> 78496 78497 Reviewed by Antonio Gomes. 78498 78499 [Qt] Fix compilation with QT_NO_LINEEDIT 78500 https://bugs.webkit.org/show_bug.cgi?id=38324 78501 78502 * bridge/qt/qt_runtime.cpp: 78503 (JSC::Bindings::convertValueToQVariant): 78504 (JSC::Bindings::convertQVariantToValue): 78505 78506 2010-08-14 Rob Buis <rwlbuis (a] gmail.com> 78507 78508 Reviewed by Dirk Schulze. 78509 78510 IE SVG empty path test fails 78511 https://bugs.webkit.org/show_bug.cgi?id=44008 78512 78513 Change createLine to allow creating zero-length lines. This makes it possible 78514 to have markers and line-caps applied to zero-length lines. 78515 78516 Test: svg/custom/marker-empty-path.svg 78517 78518 * platform/graphics/Path.cpp: 78519 (WebCore::Path::createLine): 78520 78521 2010-08-14 Patrick Gansterer <paroga (a] paroga.com> 78522 78523 Reviewed by Kenneth Rohde Christiansen. 78524 78525 [CMake] Move SQL files into a IF (ENABLE_DATABASE) section 78526 https://bugs.webkit.org/show_bug.cgi?id=43979 78527 78528 * CMakeLists.txt: 78529 78530 2010-08-14 Matthew Delaney <mdelaney (a] apple.com> 78531 78532 Reviewed by Kenneth Rohde Christiansen. 78533 78534 Canvas is not reset when setting canvas.width 78535 https://bugs.webkit.org/show_bug.cgi?id=43341 78536 78537 * html/HTMLCanvasElement.cpp: 78538 (WebCore::HTMLCanvasElement::reset): Moved the call to 78539 hasCreatedImageBuffer up *before* the call to setSurface since setSurface 78540 sets hasCreatedImageBuffer to false every time. 78541 78542 2010-08-14 Patrick Gansterer <paroga (a] paroga.com> 78543 78544 Reviewed by Kenneth Rohde Christiansen. 78545 78546 [CMake] Set target properties only if available 78547 https://bugs.webkit.org/show_bug.cgi?id=43978 78548 78549 * CMakeLists.txt: 78550 78551 2010-08-14 Dirk Schulze <krit (a] webkit.org> 78552 78553 Unreviewed sort of Xcode project file. 78554 78555 * WebCore.xcodeproj/project.pbxproj: 78556 78557 2010-08-14 Ariya Hidayat <ariya (a] sencha.com> 78558 78559 Reviewed by Simon Hausmann and Kenneth Rohde Christiansen. 78560 78561 [Qt] Refactor shadow state handling in GraphicsContextQt 78562 https://bugs.webkit.org/show_bug.cgi?id=44006 78563 78564 * platform/graphics/qt/GraphicsContextQt.cpp: 78565 (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as 78566 member variables. 78567 (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient 78568 function to check whether there is shadow or not. 78569 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78570 (WebCore::GraphicsContext::drawRect): Use shadow states instead of 78571 calling getShadow. 78572 (WebCore::GraphicsContext::drawLine): ditto. 78573 (WebCore::GraphicsContext::strokeArc): ditto. 78574 (WebCore::GraphicsContext::drawConvexPolygon): ditto. 78575 (WebCore::GraphicsContext::fillPath): ditto. 78576 (WebCore::GraphicsContext::strokePath): ditto. 78577 (WebCore::GraphicsContext::fillRect): Removes the use of helper function 78578 drawBorderlessRectShadow as the code already becomes a lot simpler. 78579 (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper 78580 function drawFilledShadowPath as the code already becomes a lot simpler. 78581 (WebCore::GraphicsContext::setPlatformShadow): Store shadow states 78582 and find out the shadow type (complexity) for future use. 78583 (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states. 78584 78585 2010-08-13 Adam Barth <abarth (a] webkit.org> 78586 78587 Reviewed by Eric Seidel. 78588 78589 Rename some concepts in HTML entity search to be more self-documenting 78590 https://bugs.webkit.org/show_bug.cgi?id=44004 78591 78592 Start and end are now first and last, which lets us use some better 78593 names for the statics in HTMLEntityTable. 78594 78595 * html/HTMLEntityParser.cpp: 78596 (WebCore::consumeHTMLEntity): 78597 * html/HTMLEntitySearch.cpp: 78598 (WebCore::HTMLEntitySearch::HTMLEntitySearch): 78599 (WebCore::HTMLEntitySearch::findFirst): 78600 (WebCore::HTMLEntitySearch::findLast): 78601 (WebCore::HTMLEntitySearch::advance): 78602 * html/HTMLEntitySearch.h: 78603 (WebCore::HTMLEntitySearch::isEntityPrefix): 78604 (WebCore::HTMLEntitySearch::mostRecentMatch): 78605 (WebCore::HTMLEntitySearch::fail): 78606 * html/HTMLEntityTable.h: 78607 78608 2010-08-13 Adam Barth <abarth (a] webkit.org> 78609 78610 Fix ASSERT in XML entity parsing. You can't advance the entity search 78611 if you've already discovered that your string is not an entity. 78612 78613 * html/HTMLEntityParser.cpp: 78614 (WebCore::decodeNamedEntity): 78615 78616 2010-08-13 Eric Seidel <eric (a] webkit.org> 78617 78618 Unreviewed. Attempt at fixing Chromium build. 78619 78620 Add support for MathML entities 78621 https://bugs.webkit.org/show_bug.cgi?id=43949 78622 78623 * WebCore.gyp/WebCore.gyp: 78624 - I have no clue if this is right or not. 78625 78626 2010-08-13 Eric Seidel <eric (a] webkit.org> 78627 78628 Unreviewed. Attempted build fix for Windows. 78629 78630 Add support for MathML entities 78631 https://bugs.webkit.org/show_bug.cgi?id=43949 78632 78633 * DerivedSources.cpp: 78634 - Add HTMLEntityTable.cpp 78635 78636 2010-08-09 Adam Barth <abarth (a] webkit.org> 78637 78638 Reviewed by Eric Seidel. 78639 78640 Add support for MathML entities 78641 https://bugs.webkit.org/show_bug.cgi?id=43949 78642 78643 Implementing the HTML5 entity parsing algorithm require refactoring how 78644 we search for entity names. Instead of using a perfect hash, we now 78645 use a sorted list. As we advance through the input, we walk down a 78646 binary search of the table looking for an entity. 78647 78648 Using this data structure lets us keep track of whether the current 78649 string is a prefix of an existing entity, which we need for the 78650 algorithm. In a future patch, I plan to add some indices to the 78651 table, which should let us narrow down the range of interesting entries 78652 more quickly. 78653 78654 The one nasty piece of the algorithm is if we walk too far down the 78655 input and we need to back up to a previous match. In this patch, we 78656 accomplish this by rewinding the input and consuming a known number of 78657 characters to resync the source. 78658 78659 * WebCore.xcodeproj/project.pbxproj: 78660 * html/HTMLEntityParser.cpp: 78661 (WebCore::consumeHTMLEntity): 78662 * html/HTMLEntitySearch.cpp: Added. 78663 (WebCore::): 78664 (WebCore::HTMLEntitySearch::HTMLEntitySearch): 78665 (WebCore::HTMLEntitySearch::compare): 78666 (WebCore::HTMLEntitySearch::findStart): 78667 (WebCore::HTMLEntitySearch::findEnd): 78668 (WebCore::HTMLEntitySearch::advance): 78669 * html/HTMLEntitySearch.h: Added. 78670 (WebCore::HTMLEntitySearch::isEntityPrefix): 78671 (WebCore::HTMLEntitySearch::currentValue): 78672 (WebCore::HTMLEntitySearch::lastMatch): 78673 (WebCore::HTMLEntitySearch::): 78674 (WebCore::HTMLEntitySearch::fail): 78675 * html/HTMLEntityTable.h: Added. 78676 (WebCore::HTMLEntityTableEntry::lastCharacter): 78677 78678 2010-08-13 Tony Gentilcore <tonyg (a] chromium.org> 78679 78680 Reviewed by Eric Seidel. 78681 78682 Refactor HTMLScriptRunner to allow deferred scripts to share code 78683 https://bugs.webkit.org/show_bug.cgi?id=43736 78684 78685 No new tests because no functional change 78686 78687 * html/HTMLScriptRunner.cpp: 78688 (WebCore::HTMLScriptRunner::sourceFromPendingScript): Make const to enforce the idea that it doesn't change m_parsingBlockingScript. 78689 (WebCore::HTMLScriptRunner::executeParsingBlockingScript): Rename to make it clear this deals with the parsing blocking script and refactor to use executePendingScriptAndDispatchEvent. 78690 (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Factored out of executePendingScript, this can be used for executing any external script. 78691 (WebCore::HTMLScriptRunner::executeScript): This can be used for executing any inline or external script. ASSERTs moved to the two calling points. 78692 (WebCore::HTMLScriptRunner::executeParsingBlockingScripts): Moved method. 78693 (WebCore::HTMLScriptRunner::requestParsingBlockingScript): Factored out requestPendingScript. 78694 (WebCore::HTMLScriptRunner::requestPendingScript): Factored out from reqeustParsingBlockingScript. 78695 (WebCore::HTMLScriptRunner::runScript): 78696 * html/HTMLScriptRunner.h: 78697 78698 2010-08-13 Gavin Barraclough <barraclough (a] apple.com> 78699 78700 Windows build fix. 78701 78702 * WebCore.xcodeproj/project.pbxproj: 78703 * platform/win/SharedBufferWin.cpp: 78704 78705 2010-08-13 Gavin Barraclough <barraclough (a] apple.com> 78706 78707 Rubber stamped by Sam Weinig. 78708 Switch String::/UString::ascii() to return a CString. 78709 78710 * WebCore.xcodeproj/project.pbxproj: 78711 * bridge/c/c_class.cpp: 78712 (JSC::Bindings::CClass::methodsNamed): 78713 (JSC::Bindings::CClass::fieldNamed): 78714 * bridge/jni/jsc/JNIBridgeJSC.cpp: 78715 (JavaField::valueFromInstance): 78716 (JavaField::setValueToInstance): 78717 * bridge/jni/jsc/JavaInstanceJSC.cpp: 78718 (JavaInstance::invokeMethod): 78719 * bridge/objc/objc_class.mm: 78720 (JSC::Bindings::ObjcClass::methodsNamed): 78721 (JSC::Bindings::ObjcClass::fieldNamed): 78722 * bridge/objc/objc_instance.mm: 78723 (ObjcInstance::setValueOfUndefinedField): 78724 (ObjcInstance::getValueOfUndefinedField): 78725 * loader/icon/IconRecord.cpp: 78726 * platform/sql/SQLiteDatabase.cpp: 78727 * platform/sql/SQLiteStatement.cpp: 78728 * storage/SQLStatement.cpp: 78729 78730 2010-08-13 Mihai Parparita <mihaip (a] chromium.org> 78731 78732 Reviewed by Dimitri Glazkov. 78733 78734 Session history should skip over JS redirects 78735 https://bugs.webkit.org/show_bug.cgi?id=42861 78736 78737 Lock the back/forward list for location changes and form submits that 78738 happen before the onload event fires that are not the result of user 78739 gestures. 78740 78741 Made form submission (at the ScheduledFormSubmission level) more similar 78742 to ScheduledURLNavigation by having it call clientRedirected too, fixing 78743 a long-standing FIXME. 78744 78745 Test: fast/history/gesture-before-onload-location-href.html, 78746 fast/history/gesture-before-onload-form-submit.html and updated 78747 expectations for http/tests/history tests that used to fail. 78748 78749 * loader/FormSubmission.cpp: 78750 (WebCore::FormSubmission::requestURL): 78751 (WebCore::FormSubmission::populateFrameLoadRequest): 78752 * loader/FormSubmission.h: 78753 * loader/RedirectScheduler.cpp: 78754 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): 78755 (WebCore::ScheduledFormSubmission::fire): 78756 (WebCore::ScheduledFormSubmission::didStartTimer): 78757 (WebCore::ScheduledFormSubmission::didStopTimer): 78758 (WebCore::RedirectScheduler::scheduleRedirect): 78759 (WebCore::RedirectScheduler::mustLockBackForwardList): 78760 (WebCore::RedirectScheduler::scheduleLocationChange): 78761 (WebCore::RedirectScheduler::scheduleFormSubmission): 78762 * loader/RedirectScheduler.h: 78763 78764 2010-08-13 Leandro Pereira <leandro (a] profusion.mobi> 78765 78766 [EFL] Unreviewed build fix. 78767 These changes were supposed to be landed on r65319, but due to some 78768 svn-apply/commit-queue bug it wasn't fully applied. A bug was filed 78769 by Patrick Gansterer (author of the changes in this commit): 78770 https://bugs.webkit.org/show_bug.cgi?id=43981 78771 78772 * CMakeLists.txt: Update calls to GENERATE_GPERF and 78773 GENERATE_GRAMMAR macros. 78774 78775 2010-08-13 Chris Fleizach <cfleizach (a] apple.com> 78776 78777 AX: isNativeCheckbox does not work as advertised 78778 https://bugs.webkit.org/show_bug.cgi?id=43872 78779 78780 Re-adding this patch after it was erroneously rolled out. 78781 78782 Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html 78783 78784 * accessibility/AccessibilityRenderObject.cpp: 78785 (WebCore::AccessibilityRenderObject::isInputImage): 78786 (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): 78787 * dom/InputElement.h: 78788 * html/HTMLInputElement.h: 78789 (WebCore::HTMLInputElement::isCheckbox): 78790 78791 2010-08-13 Sheriff Bot <webkit.review.bot (a] gmail.com> 78792 78793 Unreviewed, rolling out r65331. 78794 http://trac.webkit.org/changeset/65331 78795 https://bugs.webkit.org/show_bug.cgi?id=43980 78796 78797 This patch breaks some shadow tests on Qt Linux release 78798 (Requested by ariya on #webkit). 78799 78800 * platform/graphics/qt/GraphicsContextQt.cpp: 78801 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78802 (WebCore::GraphicsContext::drawRect): 78803 (WebCore::GraphicsContext::drawLine): 78804 (WebCore::GraphicsContext::strokeArc): 78805 (WebCore::GraphicsContext::drawConvexPolygon): 78806 (WebCore::drawFilledShadowPath): 78807 (WebCore::GraphicsContext::fillPath): 78808 (WebCore::GraphicsContext::strokePath): 78809 (WebCore::drawBorderlessRectShadow): 78810 (WebCore::GraphicsContext::fillRect): 78811 (WebCore::GraphicsContext::fillRoundedRect): 78812 (WebCore::GraphicsContext::setPlatformShadow): 78813 (WebCore::GraphicsContext::clearPlatformShadow): 78814 78815 2010-08-13 Kinuko Yasuda <kinuko (a] chromium.org> 78816 78817 Reviewed by David Levin. 78818 78819 Update run-bindings-tests expectations 78820 https://bugs.webkit.org/show_bug.cgi?id=43944 78821 78822 The results have become out of sync after changeset 64552 and 65269. 78823 78824 Test: WebKitTools/Scripts/run-bindings-tests 78825 78826 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 78827 (webkit_dom_test_callback_callback_with_class1param): 78828 (webkit_dom_test_callback_callback_with_class2param): 78829 (webkit_dom_test_callback_callback_with_non_bool_return_type): 78830 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: 78831 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 78832 (webkit_dom_test_obj_void_method_with_args): 78833 (webkit_dom_test_obj_int_method_with_args): 78834 (webkit_dom_test_obj_obj_method): 78835 (webkit_dom_test_obj_obj_method_with_args): 78836 (webkit_dom_test_obj_method_that_requires_all_args): 78837 (webkit_dom_test_obj_method_that_requires_all_args_and_throws): 78838 (webkit_dom_test_obj_serialized_value): 78839 (webkit_dom_test_obj_idb_key): 78840 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture): 78841 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad): 78842 (webkit_dom_test_obj_with_script_state_obj): 78843 (webkit_dom_test_obj_with_script_state_obj_exception): 78844 (webkit_dom_test_obj_get_read_only_string_attr): 78845 (webkit_dom_test_obj_get_read_only_test_obj_attr): 78846 (webkit_dom_test_obj_get_string_attr): 78847 (webkit_dom_test_obj_set_string_attr): 78848 (webkit_dom_test_obj_get_test_obj_attr): 78849 (webkit_dom_test_obj_set_test_obj_attr): 78850 (webkit_dom_test_obj_get_xml_obj_attr): 78851 (webkit_dom_test_obj_set_xml_obj_attr): 78852 (webkit_dom_test_obj_get_reflected_string_attr): 78853 (webkit_dom_test_obj_set_reflected_string_attr): 78854 (webkit_dom_test_obj_get_reflected_url_attr): 78855 (webkit_dom_test_obj_set_reflected_url_attr): 78856 (webkit_dom_test_obj_get_reflected_non_empty_url_attr): 78857 (webkit_dom_test_obj_set_reflected_non_empty_url_attr): 78858 (webkit_dom_test_obj_get_reflected_custom_url_attr): 78859 (webkit_dom_test_obj_set_reflected_custom_url_attr): 78860 (webkit_dom_test_obj_get_reflected_custom_non_empty_url_attr): 78861 (webkit_dom_test_obj_set_reflected_custom_non_empty_url_attr): 78862 (webkit_dom_test_obj_get_string_attr_with_getter_exception): 78863 (webkit_dom_test_obj_set_string_attr_with_getter_exception): 78864 (webkit_dom_test_obj_get_string_attr_with_setter_exception): 78865 (webkit_dom_test_obj_set_string_attr_with_setter_exception): 78866 (webkit_dom_test_obj_get_script_string_attr): 78867 (webkit_dom_test_obj_get_hash): 78868 (webkit_dom_test_obj_class_init): 78869 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 78870 * bindings/scripts/test/JS/JSTestObj.cpp: 78871 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod): 78872 78873 2010-08-13 Ariya Hidayat <ariya (a] sencha.com> 78874 78875 Reviewed by Simon Hausmann. 78876 78877 [Qt] Canvas and CSS: blur option in shadow not working 78878 https://bugs.webkit.org/show_bug.cgi?id=34479 78879 78880 Patch 1: Refactor shadow states handling. 78881 78882 * platform/graphics/qt/GraphicsContextQt.cpp: 78883 (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as 78884 member variables. 78885 (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient 78886 function to check whether there is shadow or not. 78887 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 78888 (WebCore::GraphicsContext::drawRect): Use shadow states instead of 78889 calling getShadow. 78890 (WebCore::GraphicsContext::drawLine): ditto. 78891 (WebCore::GraphicsContext::strokeArc): ditto. 78892 (WebCore::GraphicsContext::drawConvexPolygon): ditto. 78893 (WebCore::GraphicsContext::fillPath): ditto. 78894 (WebCore::GraphicsContext::strokePath): ditto. 78895 (WebCore::GraphicsContext::fillRect): Removes the use of helper function 78896 drawBorderlessRectShadow as the code already becomes a lot simpler. 78897 (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper 78898 function drawFilledShadowPath as the code already becomes a lot simpler. 78899 (WebCore::GraphicsContext::setPlatformShadow): Store shadow states 78900 and find out the shadow type (complexity) for future use. 78901 (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states. 78902 78903 2010-08-11 Zhenyao Mo <zmo (a] google.com> 78904 78905 Reviewed by Dimitri Glazkov. 78906 78907 Regression in linking of programs 78908 https://bugs.webkit.org/show_bug.cgi?id=43820 78909 78910 Shaders and programs shouldn't be deleted until their attachments are removed, therefore, we need to track the attach/detach/useProgram. 78911 78912 * html/canvas/WebGLObject.cpp: Track the object attachment count and whether it should really be deleted. 78913 (WebCore::WebGLObject::WebGLObject): 78914 (WebCore::WebGLObject::setObject): 78915 (WebCore::WebGLObject::deleteObject): 78916 * html/canvas/WebGLObject.h: Track the object attachment count and whether it should really be deleted. 78917 (WebCore::WebGLObject::onAttached): 78918 (WebCore::WebGLObject::onDetached): 78919 (WebCore::WebGLObject::getAttachmentCount): 78920 * html/canvas/WebGLProgram.cpp: Track the attached shaders. 78921 (WebCore::WebGLProgram::WebGLProgram): 78922 (WebCore::WebGLProgram::deleteObjectImpl): 78923 (WebCore::WebGLProgram::getAttachedShader): 78924 (WebCore::WebGLProgram::attachShader): 78925 (WebCore::WebGLProgram::detachShader): 78926 * html/canvas/WebGLProgram.h: Track the attached shaders. 78927 * html/canvas/WebGLRenderingContext.cpp: 78928 (WebCore::WebGLRenderingContext::attachShader): Track the attachment of a shader to a program. 78929 (WebCore::WebGLRenderingContext::deleteProgram): Detach shaders. 78930 (WebCore::WebGLRenderingContext::detachShader): Track the attachment of a shader to a program. 78931 (WebCore::WebGLRenderingContext::validateWebGLObject): Also check if object == 0. 78932 (WebCore::WebGLRenderingContext::linkProgram): Using the cached attached shaders instead of query from driver. 78933 (WebCore::WebGLRenderingContext::useProgram): Track the attachment of a program to the current rendering pipeline. 78934 78935 2010-08-13 Steve Block <steveblock (a] google.com> 78936 78937 Reviewed by Alexey Proskuryakov. 78938 78939 Geolocation activity started after frame has been disconnected can cause crash 78940 https://bugs.webkit.org/show_bug.cgi?id=39879 78941 78942 New requests started after the Frame has been disconnected are ignored. We do 78943 not invoke the error callback as this would allow buggy or malicious pages to 78944 hose the CPU. Such a page could hold a reference to a Geolocation object from 78945 a since closed Page and register new requests from the error callback to 78946 create an infinite loop. 78947 78948 Tests: fast/dom/Geolocation/disconnected-frame-already.html 78949 78950 * page/Geolocation.cpp: 78951 78952 2010-08-13 Satish Sampath <satish (a] chromium.org> 78953 78954 Reviewed by Jeremy Orlow. 78955 78956 Support for multiple speech enabled elements in same page. 78957 https://bugs.webkit.org/show_bug.cgi?id=43922 78958 78959 * page/SpeechInput.cpp: Generates request ids as necessary when each speech enabled input element gets 78960 created/destroyed and multiplexes the listener callbacks to the appropriate input element based on the request id. 78961 (WebCore::SpeechInput::SpeechInput): 78962 (WebCore::SpeechInput::~SpeechInput): 78963 (WebCore::SpeechInput::registerListener): 78964 (WebCore::SpeechInput::unregisterListener): 78965 (WebCore::SpeechInput::didCompleteRecording): 78966 (WebCore::SpeechInput::didCompleteRecognition): 78967 (WebCore::SpeechInput::setRecognitionResult): 78968 (WebCore::SpeechInput::startRecognition): 78969 (WebCore::SpeechInput::stopRecording): 78970 (WebCore::SpeechInput::cancelRecognition): 78971 * page/SpeechInput.h: 78972 * page/SpeechInputClient.h: Now requires a one time set for the WebCore::SpeechInputListener and 78973 takes in a 'requestId' for all calls. 78974 * page/SpeechInputListener.h: Now returns the above mentioned requestId in all the listener callbacks for 78975 identifying which input element the event goes to. 78976 * platform/mock/SpeechInputClientMock.cpp: 78977 (WebCore::SpeechInputClientMock::SpeechInputClientMock): 78978 (WebCore::SpeechInputClientMock::setListener): 78979 (WebCore::SpeechInputClientMock::startRecognition): 78980 (WebCore::SpeechInputClientMock::stopRecording): 78981 (WebCore::SpeechInputClientMock::cancelRecognition): 78982 (WebCore::SpeechInputClientMock::timerFired): 78983 * platform/mock/SpeechInputClientMock.h: 78984 * rendering/TextControlInnerElements.cpp: 78985 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 78986 (WebCore::InputFieldSpeechButtonElement::~InputFieldSpeechButtonElement): 78987 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 78988 (WebCore::InputFieldSpeechButtonElement::speechInput): 78989 (WebCore::InputFieldSpeechButtonElement::didCompleteRecording): 78990 (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition): 78991 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): 78992 * rendering/TextControlInnerElements.h: 78993 78994 2010-08-13 Eric Carlson <eric.carlson (a] apple.com> 78995 78996 Reviewed by David Kilzer. 78997 78998 HTMLMediaElement::prepareForLoad should cancel current plug-in proxy media player 78999 https://bugs.webkit.org/show_bug.cgi?id=43923 79000 79001 * html/HTMLMediaElement.cpp: 79002 (WebCore::HTMLMediaElement::prepareForLoad): Tell mediaPlayer to cancel the current load 79003 if it already exists. 79004 79005 2010-08-12 Stephen White <senorblanco (a] chromium.org> 79006 79007 Reviewed by David Levin. 79008 79009 [CHROMIUM] Use the BGRA format for canvas 2D accel upload and readbacks. 79010 https://bugs.webkit.org/show_bug.cgi?id=43804 79011 79012 Use the BGRA format from GraphicsContext3D, if supported. Also keep a 79013 texture around for uploads, rather than re-creating it each time. 79014 79015 Covered by many layout tests (once we're running them). 79016 79017 * platform/graphics/chromium/GLES2Texture.cpp: 79018 (WebCore::convertFormat): 79019 Move convertFormat() ahead of texture creation, so we can check for 79020 BGRA support. 79021 (WebCore::GLES2Texture::create): 79022 Use convertFormat() to determine the correct format and types to use; 79023 use the returned format also for internalFormat, since GLES2 insists 79024 they match. 79025 * platform/graphics/skia/PlatformContextSkia.cpp: 79026 (WebCore::PlatformContextSkia::setGraphicsContext3D): 79027 Clear the upload texture when a new context is set. 79028 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 79029 Use m_uploadTexture instead of creating a new one each time. 79030 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 79031 When the context supports it, use the BGRA format for readbacks 79032 instead of swizzling. 79033 * platform/graphics/skia/PlatformContextSkia.h: 79034 Add m_uploadTexture for consecutive uploads. 79035 79036 2010-08-13 Simon Hausmann <simon.hausmann (a] nokia.com> 79037 79038 Reviewed by Ariya Hidayat. 79039 79040 [Qt] Clean up mobile feature useage 79041 https://bugs.webkit.org/show_bug.cgi?id=43968 79042 79043 * WebCore.pro: Replaced use of Nokia specific platform scopes with concrete 79044 feature names. 79045 79046 2010-08-13 Pavel Feldman <pfeldman (a] chromium.org> 79047 79048 Reviewed by Yury Semikhatsky. 79049 79050 Web Inspector: rename InspectorValue::push and set to 79051 push{Value|Object|Array} and set{...}. 79052 https://bugs.webkit.org/show_bug.cgi?id=43966 79053 79054 * bindings/js/ScriptProfile.cpp: 79055 (WebCore::buildInspectorObjectFor): 79056 * bindings/js/ScriptValue.cpp: 79057 (WebCore::jsToInspectorValue): 79058 * bindings/v8/ScriptCallStack.cpp: 79059 (WebCore::ScriptCallStack::stackTrace): 79060 * bindings/v8/ScriptProfile.cpp: 79061 (WebCore::buildInspectorObjectFor): 79062 * bindings/v8/ScriptValue.cpp: 79063 (WebCore::v8ToInspectorValue): 79064 * inspector/CodeGeneratorInspector.pm: 79065 * inspector/ConsoleMessage.cpp: 79066 (WebCore::ConsoleMessage::addToFrontend): 79067 * inspector/Inspector.idl: 79068 * inspector/InspectorApplicationCacheAgent.cpp: 79069 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): 79070 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): 79071 * inspector/InspectorController.cpp: 79072 (WebCore::InspectorController::buildArrayForCookies): 79073 (WebCore::InspectorController::getDOMStorageEntries): 79074 (WebCore::InspectorController::getProfileHeaders): 79075 (WebCore::InspectorController::getProfile): 79076 * inspector/InspectorDOMAgent.cpp: 79077 (WebCore::InspectorDOMAgent::getEventListenersForNode): 79078 (WebCore::InspectorDOMAgent::buildObjectForNode): 79079 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): 79080 (WebCore::InspectorDOMAgent::getStyles): 79081 (WebCore::InspectorDOMAgent::getAllStyles): 79082 (WebCore::InspectorDOMAgent::getRuleRanges): 79083 (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles): 79084 (WebCore::InspectorDOMAgent::buildArrayForCSSRules): 79085 (WebCore::InspectorDOMAgent::buildArrayForPseudoElements): 79086 (WebCore::InspectorDOMAgent::buildObjectForStyle): 79087 (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): 79088 (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties): 79089 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 79090 (WebCore::InspectorDOMAgent::buildObjectForRule): 79091 * inspector/InspectorDebuggerAgent.cpp: 79092 (WebCore::InspectorDebuggerAgent::saveBreakpoints): 79093 * inspector/InspectorResource.cpp: 79094 (WebCore::InspectorResource::updateScriptObject): 79095 * inspector/InspectorStorageAgent.cpp: 79096 (WebCore::): 79097 (WebCore::InspectorStorageAgent::executeSQL): 79098 * inspector/InspectorTimelineAgent.cpp: 79099 (WebCore::InspectorTimelineAgent::pushGCEventRecords): 79100 (WebCore::InspectorTimelineAgent::didInstallTimer): 79101 (WebCore::InspectorTimelineAgent::didRemoveTimer): 79102 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): 79103 (WebCore::InspectorTimelineAgent::willSendResourceRequest): 79104 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 79105 (WebCore::InspectorTimelineAgent::didMarkTimeline): 79106 (WebCore::InspectorTimelineAgent::addRecordToTimeline): 79107 (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): 79108 * inspector/InspectorValues.cpp: 79109 (WebCore::): 79110 (WebCore::InspectorValue::asValue): 79111 (WebCore::InspectorValue::asObject): 79112 (WebCore::InspectorValue::asArray): 79113 (WebCore::InspectorObject::asObject): 79114 (WebCore::InspectorArray::asArray): 79115 * inspector/InspectorValues.h: 79116 (WebCore::InspectorObject::setBool): 79117 (WebCore::InspectorObject::setNumber): 79118 (WebCore::InspectorObject::setString): 79119 (WebCore::InspectorObject::setValue): 79120 (WebCore::InspectorObject::setObject): 79121 (WebCore::InspectorObject::setArray): 79122 (WebCore::InspectorArray::pushValue): 79123 (WebCore::InspectorArray::pushObject): 79124 (WebCore::InspectorArray::pushArray): 79125 * inspector/ScriptBreakpoint.cpp: 79126 (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints): 79127 * inspector/TimelineRecordFactory.cpp: 79128 (WebCore::TimelineRecordFactory::createGenericRecord): 79129 79130 2010-08-13 Sheriff Bot <webkit.review.bot (a] gmail.com> 79131 79132 Unreviewed, rolling out r65204. 79133 http://trac.webkit.org/changeset/65204 79134 https://bugs.webkit.org/show_bug.cgi?id=43965 79135 79136 Caused a lot of test crashes in Chromium (Requested by yutak 79137 on #webkit). 79138 79139 * accessibility/AccessibilityRenderObject.cpp: 79140 (WebCore::AccessibilityRenderObject::isInputImage): 79141 (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): 79142 * dom/InputElement.h: 79143 * html/HTMLInputElement.h: 79144 79145 2010-08-13 Anton Muhin <antonm (a] chromium.org> 79146 79147 Reviewed by Nate Chapin. 79148 79149 Reapplying http://trac.webkit.org/changeset/65284 after fixed include. 79150 79151 [v8] Create callbacks for named access of elements from document object on fly. 79152 https://bugs.webkit.org/show_bug.cgi?id=43725 79153 79154 That should speed up access to methods on document as there is no need to 79155 consult with interceptor before invoking the method. 79156 79157 This reapplies http://trac.webkit.org/changeset/60670 reverted with 79158 http://trac.webkit.org/changeset/63845. The main difference is in treatment 79159 of removed named elements: we don't remove an accessor any more, but leave it. 79160 Therefore any accessor should be able to treat the case when there is no 79161 expando property. 79162 79163 * bindings/scripts/CodeGeneratorV8.pm: 79164 * bindings/v8/ScriptController.cpp: 79165 (WebCore::ScriptController::namedItemAdded): 79166 (WebCore::ScriptController::namedItemRemoved): 79167 * bindings/v8/V8DOMWindowShell.cpp: 79168 (WebCore::checkDocumentWrapper): 79169 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 79170 (WebCore::getter): 79171 (WebCore::V8DOMWindowShell::namedItemAdded): 79172 (WebCore::V8DOMWindowShell::namedItemRemoved): 79173 * bindings/v8/V8DOMWindowShell.h: 79174 * bindings/v8/V8DOMWrapper.cpp: 79175 (WebCore::V8DOMWrapper::instantiateV8Object): 79176 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 79177 (WebCore::V8HTMLDocument::WrapInShadowObject): 79178 (WebCore::V8HTMLDocument::GetNamedProperty): 79179 (WebCore::V8HTMLDocument::allAccessorSetter): 79180 (WebCore::toV8): 79181 * html/HTMLDocument.cpp: 79182 (WebCore::HTMLDocument::removeItemFromMap): 79183 79184 2010-08-13 Pavel Feldman <pfeldman (a] chromium.org> 79185 79186 Reviewed by Yury Semikhatsky. 79187 79188 Web Inspector: remove openInInspectorWindow and evaluateAndStringify from InjectedScript. 79189 https://bugs.webkit.org/show_bug.cgi?id=43854 79190 79191 * inspector/Inspector.idl: 79192 * inspector/InspectorController.cpp: 79193 (WebCore::InspectorController::openInInspectedWindow): 79194 * inspector/InspectorController.h: 79195 * inspector/front-end/ExtensionServer.js: 79196 (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage.callback): 79197 (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage): 79198 * inspector/front-end/InjectedScript.js: 79199 (injectedScriptConstructor): 79200 * inspector/front-end/InjectedScriptAccess.js: 79201 * inspector/front-end/InspectorBackendStub.js: 79202 (WebInspector.InspectorBackendStub): 79203 * inspector/front-end/ResourcesPanel.js: 79204 (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick): 79205 79206 2010-08-13 Fumitoshi Ukai <ukai (a] chromium.org> 79207 79208 Reviewed by Alexey Proskuryakov. 79209 79210 flaky websocket/tests/frame-length-overflow.html 79211 https://bugs.webkit.org/show_bug.cgi?id=43902 79212 79213 Add m_shouldDiscardReceivedData flag to indicate it will no longer 79214 receive data from network. 79215 79216 * websockets/WebSocketChannel.cpp: 79217 (WebCore::WebSocketChannel::WebSocketChannel): 79218 (WebCore::WebSocketChannel::didReceiveData): 79219 (WebCore::WebSocketChannel::didFail): 79220 (WebCore::WebSocketChannel::processBuffer): 79221 - when frame length overflows, we couldn't process data any more. 79222 clear buffer and mark m_shouldDiscardReceivedData true to make sure 79223 it doesn't process the same buffer again. 79224 * websockets/WebSocketChannel.h: 79225 79226 2010-08-13 Dirk Schulze <krit (a] webkit.org> 79227 79228 Reviewed by Nikolas Zimmermann. 79229 79230 Use SVGPathByteStream to animate SVGPath 79231 https://bugs.webkit.org/show_bug.cgi?id=43929 79232 79233 Use SVGPathByteStream to perform animations of Paths. SVGPathBlender blends 79234 the starting point to the end point according to the current progress value. 79235 Cleanup SVGPathSegList, by removing the unnecessary legacy blending code. 79236 79237 No new tests because no functional changes. 79238 79239 * Android.mk: 79240 * CMakeLists.txt: 79241 * GNUmakefile.am: 79242 * WebCore.gypi: 79243 * WebCore.pro: 79244 * WebCore.vcproj/WebCore.vcproj: 79245 * WebCore.xcodeproj/project.pbxproj: 79246 * svg/SVGAllInOne.cpp: 79247 * svg/SVGAnimateElement.cpp: 79248 (WebCore::SVGAnimateElement::SVGAnimateElement): 79249 (WebCore::SVGAnimateElement::calculateAnimatedValue): 79250 (WebCore::SVGAnimateElement::calculateFromAndToValues): 79251 (WebCore::SVGAnimateElement::resetToBaseValue): 79252 (WebCore::SVGAnimateElement::applyResultsToTarget): 79253 * svg/SVGAnimateElement.h: 79254 * svg/SVGPathBlender.cpp: Added. 79255 (WebCore::SVGPathBlender::SVGPathBlender): 79256 (WebCore::SVGPathBlender::~SVGPathBlender): 79257 (WebCore::SVGPathBlender::blendAnimatedFloat): 79258 (WebCore::SVGPathBlender::blendAnimatedFloatPoint): 79259 (WebCore::SVGPathBlender::blendMoveToSegment): 79260 (WebCore::SVGPathBlender::blendLineToSegment): 79261 (WebCore::SVGPathBlender::blendLineToHorizontalSegment): 79262 (WebCore::SVGPathBlender::blendLineToVerticalSegment): 79263 (WebCore::SVGPathBlender::blendCurveToCubicSegment): 79264 (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment): 79265 (WebCore::SVGPathBlender::blendCurveToQuadraticSegment): 79266 (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment): 79267 (WebCore::SVGPathBlender::blendArcToSegment): 79268 (WebCore::SVGPathBlender::blendAnimatedPath): 79269 (WebCore::SVGPathBlender::cleanup): 79270 * svg/SVGPathBlender.h: Added. 79271 * svg/SVGPathParserFactory.cpp: 79272 (WebCore::globalSVGPathBlender): 79273 (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): 79274 * svg/SVGPathParserFactory.h: 79275 * svg/SVGPathSegList.cpp: 79276 (WebCore::SVGPathSegList::getPathSegAtLength): 79277 * svg/SVGPathSegList.h: 79278 (WebCore::SVGPathSegList::create): 79279 * svg/SVGPointList.cpp: 79280 (WebCore::adjustAnimatedValue): 79281 79282 2010-08-12 Nikolas Zimmermann <nzimmermann (a] rim.com> 79283 79284 Reviewed by Dirk Schulze. 79285 79286 Window size changes + resources on absolute sized content leads to pixelation 79287 https://bugs.webkit.org/show_bug.cgi?id=43921 79288 79289 Avoid pixelation when using resources on absolute sized objects. Be sure to invalidate the used resources if window size changes. 79290 Otherwhise masks etc. will be scaled up and pixelate. As nice side-effect, this fixes run-webkit-tests --singly svg/W3C-SVG-1.1, which 79291 used to produce wrong results for the gradient tests, as the window size change from 800x600 for 480x360 (svg/W3C-SVG-1.1 specific DRT quirk) 79292 didn't invalidate the resources. 79293 79294 Renamed invalidateClient -> removeClientFromCache and invalidateClients -> removeAllClientsFromCache. 79295 Add a boolean "markForInvalidation" parameter, that controls wheter the clients should be marked for repaint/boundaries invalidation/layout 79296 or wheter we only want to notify the parents that the resource changed, to avoid doing unncessary work in SVGRenderSupport::layoutChildren. 79297 79298 Test: svg/custom/absolute-sized-content-with-resources.xhtml 79299 79300 * rendering/RenderSVGGradientStop.cpp: 79301 (WebCore::RenderSVGGradientStop::styleDidChange): Don't do anything for StyleDifferenceEqual. 79302 * rendering/RenderSVGImage.cpp: 79303 (WebCore::RenderSVGImage::imageChanged): 79304 * rendering/RenderSVGResource.cpp: 79305 (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): 79306 * rendering/RenderSVGResource.h: 79307 * rendering/RenderSVGResourceClipper.cpp: 79308 (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache): 79309 (WebCore::RenderSVGResourceClipper::removeClientFromCache): 79310 * rendering/RenderSVGResourceClipper.h: 79311 * rendering/RenderSVGResourceContainer.cpp: 79312 (WebCore::RenderSVGResourceContainer::layout): 79313 (WebCore::RenderSVGResourceContainer::idChanged): 79314 (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): 79315 (WebCore::RenderSVGResourceContainer::markClientForInvalidation): 79316 * rendering/RenderSVGResourceContainer.h: 79317 (WebCore::RenderSVGResourceContainer::): 79318 * rendering/RenderSVGResourceFilter.cpp: 79319 (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache): 79320 (WebCore::RenderSVGResourceFilter::removeClientFromCache): 79321 (WebCore::RenderSVGResourceFilter::postApplyResource): 79322 * rendering/RenderSVGResourceFilter.h: 79323 * rendering/RenderSVGResourceGradient.cpp: 79324 (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache): 79325 (WebCore::RenderSVGResourceGradient::removeClientFromCache): 79326 (WebCore::RenderSVGResourceGradient::applyResource): 79327 * rendering/RenderSVGResourceGradient.h: 79328 * rendering/RenderSVGResourceMarker.cpp: 79329 (WebCore::RenderSVGResourceMarker::layout): 79330 (WebCore::RenderSVGResourceMarker::removeAllClientsFromCache): 79331 (WebCore::RenderSVGResourceMarker::removeClientFromCache): 79332 * rendering/RenderSVGResourceMarker.h: 79333 * rendering/RenderSVGResourceMasker.cpp: 79334 (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache): 79335 (WebCore::RenderSVGResourceMasker::removeClientFromCache): 79336 * rendering/RenderSVGResourceMasker.h: 79337 * rendering/RenderSVGResourcePattern.cpp: 79338 (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache): 79339 (WebCore::RenderSVGResourcePattern::removeClientFromCache): 79340 (WebCore::RenderSVGResourcePattern::applyResource): 79341 * rendering/RenderSVGResourcePattern.h: 79342 * rendering/RenderSVGResourceSolidColor.h: 79343 (WebCore::RenderSVGResourceSolidColor::removeAllClientsFromCache): 79344 (WebCore::RenderSVGResourceSolidColor::removeClientFromCache): 79345 * rendering/SVGRenderSupport.cpp: 79346 (WebCore::invalidateResourcesOfChildren): Add new helper funtion recursively invalidating resources of a sub render tree. 79347 (WebCore::SVGRenderSupport::layoutChildren): Keep track of all objects that didn't need layout, as we still have to invalidate their resources, if window size changes. 79348 * rendering/SVGResources.cpp: 79349 (WebCore::SVGResources::removeClientFromCache): 79350 (WebCore::SVGResources::resourceDestroyed): 79351 * rendering/SVGResources.h: 79352 * rendering/SVGResourcesCache.cpp: 79353 (WebCore::SVGResourcesCache::clientLayoutChanged): 79354 79355 2010-08-13 Pavel Feldman <pfeldman (a] chromium.org> 79356 79357 Reviewed by Yury Semikhatsky. 79358 79359 Chromium DevTools: [CRASH] Autocomplete on arrays causes crashes. 79360 https://bugs.webkit.org/show_bug.cgi?id=43955 79361 79362 * bindings/v8/ScriptValue.cpp: 79363 (WebCore::v8ToInspectorValue): 79364 79365 2010-08-13 Gavin Barraclough <barraclough (a] apple.com> 79366 79367 Reviewed by Sam Weinig 79368 79369 Unify UString::UTF8String() & String::utf8() methods, 79370 remove UString::cost() & make atArrayIndex a free function. 79371 79372 * WebCore.xcodeproj/project.pbxproj: 79373 * bindings/js/JSDOMWindowCustom.cpp: 79374 (WebCore::JSDOMWindow::getOwnPropertySlot): 79375 (WebCore::JSDOMWindow::getOwnPropertyDescriptor): 79376 * bridge/NP_jsobject.cpp: 79377 (_NPN_Enumerate): 79378 * bridge/c/c_utility.cpp: 79379 (JSC::Bindings::convertValueToNPVariant): 79380 * bridge/jni/JNIBridge.cpp: 79381 (JavaParameter::JavaParameter): 79382 (JavaMethod::JavaMethod): 79383 (JavaMethod::signature): 79384 (JavaMethod::methodID): 79385 * bridge/jni/JNIBridge.h: 79386 (JSC::Bindings::JavaString::utf8): 79387 (JSC::Bindings::JavaParameter::type): 79388 (JSC::Bindings::JavaMethod::returnType): 79389 * bridge/jni/jni_jsobject.mm: 79390 (JavaJSObject::call): 79391 (JavaJSObject::eval): 79392 (JavaJSObject::getMember): 79393 (JavaJSObject::setMember): 79394 (JavaJSObject::removeMember): 79395 (JavaJSObject::convertJObjectToValue): 79396 * bridge/jni/jsc/JNIBridgeJSC.cpp: 79397 (JavaField::JavaField): 79398 (JavaField::valueFromInstance): 79399 (JavaField::setValueToInstance): 79400 * bridge/jni/jsc/JNIBridgeJSC.h: 79401 (JSC::Bindings::JavaField::type): 79402 * bridge/jni/jsc/JavaInstanceJSC.cpp: 79403 (JavaInstance::invokeMethod): 79404 * bridge/jni/jsc/JavaStringJSC.h: 79405 (JSC::Bindings::JavaStringImpl::utf8): 79406 * bridge/runtime_array.cpp: 79407 (JSC::RuntimeArray::getOwnPropertySlot): 79408 (JSC::RuntimeArray::getOwnPropertyDescriptor): 79409 (JSC::RuntimeArray::put): 79410 79411 2010-08-12 Yury Semikhatsky <yurys (a] chromium.org> 79412 79413 Reviewed by Pavel Feldman. 79414 79415 Web Inspector: allow interrupting long running JS to execute inspector command 79416 https://bugs.webkit.org/show_bug.cgi?id=43900 79417 79418 * bindings/v8/ScriptDebugServer.cpp: 79419 (WebCore::): 79420 (WebCore::ScriptDebugServer::pause): 79421 (WebCore::ScriptDebugServer::interruptAndRun): 79422 (WebCore::ScriptDebugServer::runPendingTasks): 79423 (WebCore::ScriptDebugServer::handleV8DebugEvent): 79424 * bindings/v8/ScriptDebugServer.h: 79425 (WebCore::ScriptDebugServer::Task::~Task): 79426 79427 2010-08-12 Sheriff Bot <webkit.review.bot (a] gmail.com> 79428 79429 Unreviewed, rolling out r65295. 79430 http://trac.webkit.org/changeset/65295 79431 https://bugs.webkit.org/show_bug.cgi?id=43950 79432 79433 It broke 4 sputnik tests (Requested by Ossy on #webkit). 79434 79435 * WebCore.xcodeproj/project.pbxproj: 79436 * bindings/js/JSDOMWindowCustom.cpp: 79437 (WebCore::JSDOMWindow::getOwnPropertySlot): 79438 (WebCore::JSDOMWindow::getOwnPropertyDescriptor): 79439 * bridge/NP_jsobject.cpp: 79440 (_NPN_Enumerate): 79441 * bridge/c/c_utility.cpp: 79442 (JSC::Bindings::convertValueToNPVariant): 79443 * bridge/jni/JNIBridge.cpp: 79444 (JavaParameter::JavaParameter): 79445 (JavaMethod::JavaMethod): 79446 (JavaMethod::signature): 79447 (JavaMethod::methodID): 79448 * bridge/jni/JNIBridge.h: 79449 (JSC::Bindings::JavaString::UTF8String): 79450 (JSC::Bindings::JavaParameter::type): 79451 (JSC::Bindings::JavaMethod::returnType): 79452 * bridge/jni/jni_jsobject.mm: 79453 (JavaJSObject::call): 79454 (JavaJSObject::eval): 79455 (JavaJSObject::getMember): 79456 (JavaJSObject::setMember): 79457 (JavaJSObject::removeMember): 79458 (JavaJSObject::convertJObjectToValue): 79459 * bridge/jni/jsc/JNIBridgeJSC.cpp: 79460 (JavaField::JavaField): 79461 (JavaField::valueFromInstance): 79462 (JavaField::setValueToInstance): 79463 * bridge/jni/jsc/JNIBridgeJSC.h: 79464 (JSC::Bindings::JavaField::type): 79465 * bridge/jni/jsc/JavaInstanceJSC.cpp: 79466 (JavaInstance::invokeMethod): 79467 * bridge/jni/jsc/JavaStringJSC.h: 79468 (JSC::Bindings::JavaStringImpl::UTF8String): 79469 * bridge/runtime_array.cpp: 79470 (JSC::RuntimeArray::getOwnPropertySlot): 79471 (JSC::RuntimeArray::getOwnPropertyDescriptor): 79472 (JSC::RuntimeArray::put): 79473 79474 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79475 79476 Not reviewed. Fixed typo in inspector js. 79477 Follow up to r65300. 79478 79479 * inspector/front-end/inspector.js: 79480 (WebInspector.log.isLogAvailable): 79481 79482 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79483 79484 Reviewed by Yury Semikhatsky. 79485 79486 Web Inspector: Make getPrototypes return objects, not names. 79487 https://bugs.webkit.org/show_bug.cgi?id=43934 79488 79489 * inspector/front-end/InjectedScript.js: 79490 (injectedScriptConstructor): 79491 (injectedScriptConstructor.): 79492 * inspector/front-end/PropertiesSidebarPane.js: 79493 (WebInspector.PropertiesSidebarPane.prototype.update.callback): 79494 * inspector/front-end/inspector.js: 79495 (WebInspector.log): 79496 79497 2010-08-12 James Robinson <jamesr (a] chromium.org> 79498 79499 Unreviewed, rolling out r65284 and r65288. Broke chromium compile. 79500 https://bugs.webkit.org/show_bug.cgi?id=43725 79501 http://trac.webkit.org/changeset/65284 79502 http://trac.webkit.org/changeset/65288 79503 79504 * bindings/scripts/CodeGeneratorV8.pm: 79505 * bindings/v8/ScriptController.cpp: 79506 (WebCore::ScriptController::namedItemAdded): 79507 (WebCore::ScriptController::namedItemRemoved): 79508 * bindings/v8/V8DOMWindowShell.cpp: 79509 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 79510 * bindings/v8/V8DOMWindowShell.h: 79511 * bindings/v8/V8DOMWrapper.cpp: 79512 (WebCore::V8DOMWrapper::instantiateV8Object): 79513 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 79514 (WebCore::V8HTMLDocument::namedPropertyDeleter): 79515 (WebCore::V8HTMLDocument::namedPropertyGetter): 79516 (WebCore::V8HTMLDocument::indexedPropertyGetter): 79517 (WebCore::V8HTMLDocument::allAccessorSetter): 79518 (WebCore::toV8): 79519 * html/HTMLDocument.cpp: 79520 (WebCore::HTMLDocument::removeItemFromMap): 79521 79522 2010-08-12 Gavin Barraclough <barraclough (a] apple.com> 79523 79524 Reviewed by Sam Weinig 79525 79526 Unify UString::UTF8String() & String::utf8() methods, 79527 remove UString::cost() & make atArrayIndex a free function. 79528 79529 * WebCore.xcodeproj/project.pbxproj: 79530 * bindings/js/JSDOMWindowCustom.cpp: 79531 (WebCore::JSDOMWindow::getOwnPropertySlot): 79532 (WebCore::JSDOMWindow::getOwnPropertyDescriptor): 79533 * bridge/NP_jsobject.cpp: 79534 (_NPN_Enumerate): 79535 * bridge/c/c_utility.cpp: 79536 (JSC::Bindings::convertValueToNPVariant): 79537 * bridge/jni/JNIBridge.cpp: 79538 (JavaParameter::JavaParameter): 79539 (JavaMethod::JavaMethod): 79540 (JavaMethod::signature): 79541 (JavaMethod::methodID): 79542 * bridge/jni/JNIBridge.h: 79543 (JSC::Bindings::JavaString::utf8): 79544 (JSC::Bindings::JavaParameter::type): 79545 (JSC::Bindings::JavaMethod::returnType): 79546 * bridge/jni/jni_jsobject.mm: 79547 (JavaJSObject::call): 79548 (JavaJSObject::eval): 79549 (JavaJSObject::getMember): 79550 (JavaJSObject::setMember): 79551 (JavaJSObject::removeMember): 79552 (JavaJSObject::convertJObjectToValue): 79553 * bridge/jni/jsc/JNIBridgeJSC.cpp: 79554 (JavaField::JavaField): 79555 (JavaField::valueFromInstance): 79556 (JavaField::setValueToInstance): 79557 * bridge/jni/jsc/JNIBridgeJSC.h: 79558 (JSC::Bindings::JavaField::type): 79559 * bridge/jni/jsc/JavaInstanceJSC.cpp: 79560 (JavaInstance::invokeMethod): 79561 * bridge/jni/jsc/JavaStringJSC.h: 79562 (JSC::Bindings::JavaStringImpl::utf8): 79563 * bridge/runtime_array.cpp: 79564 (JSC::RuntimeArray::getOwnPropertySlot): 79565 (JSC::RuntimeArray::getOwnPropertyDescriptor): 79566 (JSC::RuntimeArray::put): 79567 79568 2010-08-12 Gavin Barraclough <barraclough (a] apple.com> 79569 79570 Speculative build fix for chromium bindings (someone added the old include style!). 79571 79572 * bindings/v8/V8DOMWindowShell.h: 79573 79574 2010-08-12 MORITA Hajime <morrita (a] google.com> 79575 79576 Reviewed by Tony Chang. 79577 79578 [Refactoring] TextEvent class has to many flags 79579 https://bugs.webkit.org/show_bug.cgi?id=43893 79580 79581 Turned TextEvent::m_isLineBreak, TextEvent::m_isBacktab, TextEvent::m_isPaste 79582 into single TextEvent::m_inputType enumeration. 79583 79584 No functional change. No new tests. 79585 79586 * dom/TextEvent.cpp: 79587 (WebCore::TextEvent::selectInputType): 79588 (WebCore::TextEvent::create): 79589 (WebCore::TextEvent::createForPlainTextPaste): 79590 (WebCore::TextEvent::createForFragmentPaste): 79591 (WebCore::TextEvent::TextEvent): 79592 * dom/TextEvent.h: 79593 (WebCore::TextEvent::): 79594 (WebCore::TextEvent::isLineBreak): 79595 (WebCore::TextEvent::isBackTab): 79596 (WebCore::TextEvent::isPaste): 79597 * page/EventHandler.cpp: 79598 (WebCore::EventHandler::handleTextInputEvent): 79599 79600 2010-08-12 Kenneth Russell <kbr (a] google.com> 79601 79602 Reviewed by David Levin. 79603 79604 Delete obsolete CanvasNumberArray 79605 https://bugs.webkit.org/show_bug.cgi?id=38619 79606 79607 Deleted unreferenced code. Built WebKit and Chromium to test. 79608 79609 * Android.derived.jscbindings.mk: 79610 * Android.derived.v8bindings.mk: 79611 * Android.jscbindings.mk: 79612 * Android.mk: 79613 * bindings/js/JSCanvasNumberArrayCustom.cpp: Removed. 79614 * html/canvas/CanvasNumberArray.cpp: Removed. 79615 * html/canvas/CanvasNumberArray.h: Removed. 79616 * html/canvas/CanvasNumberArray.idl: Removed. 79617 79618 2010-08-12 Anton Muhin <antonm (a] chromium.org> 79619 79620 Reviewed by Nate Chapin. 79621 79622 [v8] Create callbacks for named access of elements from document object on fly. 79623 https://bugs.webkit.org/show_bug.cgi?id=43725 79624 79625 That should speed up access to methods on document as there is no need to 79626 consult with interceptor before invoking the method. 79627 79628 This reapplies http://trac.webkit.org/changeset/60670 reverted with 79629 http://trac.webkit.org/changeset/63845. The main difference is in treatment 79630 of removed named elements: we don't remove an accessor any more, but leave it. 79631 Therefore any accessor should be able to treat the case when there is no 79632 expando property. 79633 79634 * bindings/scripts/CodeGeneratorV8.pm: 79635 * bindings/v8/ScriptController.cpp: 79636 (WebCore::ScriptController::namedItemAdded): 79637 (WebCore::ScriptController::namedItemRemoved): 79638 * bindings/v8/V8DOMWindowShell.cpp: 79639 (WebCore::checkDocumentWrapper): 79640 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 79641 (WebCore::getter): 79642 (WebCore::V8DOMWindowShell::namedItemAdded): 79643 (WebCore::V8DOMWindowShell::namedItemRemoved): 79644 * bindings/v8/V8DOMWindowShell.h: 79645 * bindings/v8/V8DOMWrapper.cpp: 79646 (WebCore::V8DOMWrapper::instantiateV8Object): 79647 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 79648 (WebCore::V8HTMLDocument::WrapInShadowObject): 79649 (WebCore::V8HTMLDocument::GetNamedProperty): 79650 (WebCore::V8HTMLDocument::allAccessorSetter): 79651 (WebCore::toV8): 79652 * html/HTMLDocument.cpp: 79653 (WebCore::HTMLDocument::removeItemFromMap): 79654 79655 2010-08-12 Dimitri Glazkov <dglazkov (a] chromium.org> 79656 79657 Reviewed by Adam Barth. 79658 79659 Ensure that parser doesn't attach children that have been removed by JavaScript event handlers. 79660 https://bugs.webkit.org/show_bug.cgi?id=43813 79661 79662 This patch re-fixes bug 40742 in a way that keeps allowing HTMLLinkElement 79663 to lazy-attach. 79664 79665 * html/HTMLConstructionSite.cpp: 79666 (WebCore::HTMLConstructionSite::attach): Added parent check. 79667 * html/HTMLLinkElement.cpp: Basically undoes changes introduced by r61424. 79668 * html/HTMLLinkElement.h: Ditto. 79669 79670 2010-08-12 Justin Schuh <jschuh (a] chromium.org> 79671 79672 Reviewed by Dumitru Daniliuc. 79673 79674 Clear PluginData's page pointer on page refresh 79675 https://bugs.webkit.org/show_bug.cgi?id=43888 79676 79677 Test: plugins/access-after-page-destroyed.html 79678 79679 * page/Page.cpp: 79680 (WebCore::Page::refreshPlugins): 79681 79682 2010-08-12 Zhenyao Mo <zmo (a] google.com> 79683 79684 Reviewed by Dimitri Glazkov. 79685 79686 getParameter(STENCIL_VALUE_MASK) (and others) returns the wrong value 79687 https://bugs.webkit.org/show_bug.cgi?id=31842 79688 79689 * html/canvas/WebGLRenderingContext.cpp: 79690 (WebCore::WebGLRenderingContext::getUnsignedLongParameter): Casting from int to unsigned long correctly. 79691 79692 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79693 79694 Reviewed by Joseph Pecoraro. 79695 79696 Web Inspector: mimic FireBug's array detection. 79697 https://bugs.webkit.org/show_bug.cgi?id=30974 79698 79699 * inspector/front-end/InjectedScript.js: 79700 (injectedScriptConstructor): 79701 79702 2010-08-12 Zhenyao Mo <zmo (a] google.com> 79703 79704 Reviewed by Dimitri Glazkov. 79705 79706 regression in generateMipmap 79707 https://bugs.webkit.org/show_bug.cgi?id=43873 79708 79709 * html/canvas/WebGLTexture.cpp: 79710 (WebCore::WebGLTexture::generateMipmapLevelInfo): should set m_needToUseBlackTexture to false if generateMipmapLevelInfo runs through successfully. 79711 79712 2010-08-12 Ariya Hidayat <ariya (a] sencha.com> 79713 79714 Reviewed by David Hyatt. 79715 79716 [Qt] Split TransparencyLayer into its own header file. 79717 https://bugs.webkit.org/show_bug.cgi?id=43935 79718 79719 * WebCore.pro: Include TransparencyLayer.h. 79720 * platform/graphics/qt/GraphicsContextQt.cpp: 79721 * platform/graphics/qt/TransparencyLayer.h: Added. 79722 (WebCore::TransparencyLayer::TransparencyLayer): 79723 (WebCore::TransparencyLayer::operator=): 79724 79725 2010-08-12 Franois Sausset <sausset (a] gmail.com> 79726 79727 Reviewed by Beth Dakin. 79728 79729 Horizontal padding should be 0 on mrow elements. 79730 https://bugs.webkit.org/show_bug.cgi?id=43908 79731 79732 Updated tests in /mathml 79733 79734 * css/mathml.css: 79735 (mrow, mfenced): 79736 (mfenced): 79737 79738 2010-08-12 Aaron Boodman <aa (a] chromium.org> 79739 79740 Reviewed by David Hyatt. 79741 79742 Make the cascade level of "user" styles configurable 79743 https://bugs.webkit.org/show_bug.cgi?id=43457 79744 79745 * WebCore.exp.in: 79746 * css/CSSStyleSelector.cpp: 79747 (WebCore::CSSStyleSelector::CSSStyleSelector): 79748 * dom/Document.cpp: 79749 (WebCore::Document::pageGroupUserSheets): 79750 * page/PageGroup.cpp: 79751 (WebCore::PageGroup::addUserStyleSheetToWorld): 79752 * page/PageGroup.h: 79753 * page/UserStyleSheet.h: 79754 (WebCore::UserStyleSheet::): 79755 (WebCore::UserStyleSheet::UserStyleSheet): 79756 (WebCore::UserStyleSheet::level): 79757 79758 2010-08-12 Jian Li <jianli (a] chromium.org> 79759 79760 Fix qt build break. 79761 79762 * html/ThreadableBlobRegistry.cpp: 79763 (WebCore::postTaskToMainThread): 79764 79765 2010-08-12 Jian Li <jianli (a] chromium.org> 79766 79767 Reviewed by David Levin. 79768 79769 Add ThreadableBlobRegistry to support calling BlobRegistry methods in 79770 main thread. 79771 https://bugs.webkit.org/show_bug.cgi?id=43874 79772 79773 * Android.mk: 79774 * CMakeLists.txt: 79775 * GNUmakefile.am: 79776 * WebCore.gypi: 79777 * WebCore.pro: 79778 * WebCore.vcproj/WebCore.vcproj: 79779 * WebCore.xcodeproj/project.pbxproj: 79780 * dom/ScriptExecutionContext.cpp: 79781 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 79782 (WebCore::ScriptExecutionContext::addBlob): 79783 (WebCore::ScriptExecutionContext::removeBlob): 79784 (WebCore::ScriptExecutionContext::createPublicBlobURL): 79785 (WebCore::ScriptExecutionContext::revokePublicBlobURL): 79786 * dom/ScriptExecutionContext.h: 79787 * html/Blob.cpp: 79788 (WebCore::Blob::Blob): 79789 (WebCore::Blob::~Blob): 79790 (WebCore::Blob::contextDestroyed): 79791 * html/Blob.h: 79792 * html/BlobRegistryImpl.cpp: 79793 (WebCore::BlobRegistryImpl::registerBlobURL): 79794 (WebCore::BlobRegistryImpl::unregisterBlobURL): 79795 (WebCore::BlobRegistryImpl::getBlobDataFromURL): 79796 * html/ThreadableBlobRegistry.cpp: Added. 79797 * html/ThreadableBlobRegistry.h: Added. 79798 79799 2010-08-12 Csaba Osztrogonc <ossy (a] webkit.org> 79800 79801 Reviewed by Darin Adler. 79802 79803 generate-bindings.pl should generate warning free code 79804 https://bugs.webkit.org/show_bug.cgi?id=43353 79805 79806 * bindings/scripts/CodeGeneratorJS.pm: Suggested parentheses added around && within || 79807 79808 2010-08-11 Ryosuke Niwa <rniwa (a] webkit.org> 79809 79810 Reviewed by Kent Tamura. 79811 79812 merge MarkupAccumulator and MarkupAccumulatorWrapper 79813 https://bugs.webkit.org/show_bug.cgi?id=43834 79814 79815 Removed MarkupAccumulator and added serializeNodesWithNamespaces to use MarkupAccumulatorWrapper 79816 in both versions of createMarkup. Accumulation of nodes done manually in serializeNodes is 79817 now done by MarkupAccumulatorWrapper as done in the original MarkupAccumulator. 79818 79819 No new tests added since this is a cleanup. 79820 79821 * editing/markup.cpp: 79822 (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Takes vector of nodes and set it to m_nodes. 79823 (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Adds node to m_nodes. 79824 (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Adds node to m_nodes. 79825 (WebCore::serializeNodes): Adding node to nodes is moved into MarkupAccumulatorWrapper. 79826 (WebCore::createMarkup): Instantiates MarkupAccumulatorWrapper. 79827 (WebCore::serializeNodesWithNamespaces): Renamed from MarkupAccumulator::appendMarkup. 79828 79829 2010-08-12 Dirk Schulze <krit (a] webkit.org> 79830 79831 Unreviewed sort of Xcode project file. 79832 79833 * WebCore.xcodeproj/project.pbxproj: 79834 79835 2010-08-12 Ben Murdoch <benm (a] google.com> 79836 79837 Reviewed by Pavel Feldman. 79838 79839 InspectorController.h missing InspectorObject forward declaration 79840 https://bugs.webkit.org/show_bug.cgi?id=43913 79841 79842 Build fix so no new tests. 79843 79844 * inspector/InspectorController.h: Adds the necessary forward declaration. 79845 79846 2010-08-12 Hui Huang <hui.2.huang (a] nokia.com> 79847 79848 Reviewed by Eric Seidel. 79849 79850 m_windowRect is not updated because parent of PluginView is not 79851 set when updatePluginWidget is called. plugin gets wrong window 79852 size on setwindow. 79853 https://bugs.webkit.org/show_bug.cgi?id=43635 79854 79855 * plugins/symbian/PluginViewSymbian.cpp: 79856 (WebCore::PluginView::setParent): 79857 79858 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79859 79860 Not reviewed, re-apply r65241 and 65243. 79861 79862 Web Inspector: brush up object proxies, introduce remote object model. 79863 https://bugs.webkit.org/show_bug.cgi?id=43847 79864 79865 * WebCore.gypi: 79866 * WebCore.vcproj/WebCore.vcproj: 79867 * inspector/front-end/AuditRules.js: 79868 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun): 79869 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun): 79870 * inspector/front-end/ConsoleView.js: 79871 (WebInspector.ConsoleView.prototype.doEvalInWindow): 79872 (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): 79873 (WebInspector.ConsoleView.prototype._enterKeyPressed): 79874 (WebInspector.ConsoleView.prototype._format): 79875 (WebInspector.ConsoleView.prototype._formatarray): 79876 (WebInspector.ConsoleView.prototype._formatAsArrayEntry): 79877 (WebInspector.ConsoleMessage.prototype._format): 79878 (WebInspector.ConsoleCommandResult): 79879 * inspector/front-end/DOMAgent.js: 79880 (WebInspector.DOMNode): 79881 * inspector/front-end/ElementsPanel.js: 79882 (WebInspector.ElementsPanel.prototype.performSearch): 79883 * inspector/front-end/ElementsTreeOutline.js: 79884 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): 79885 * inspector/front-end/EventListenersSidebarPane.js: 79886 (): 79887 * inspector/front-end/InjectedScript.js: 79888 (injectedScriptConstructor): 79889 (injectedScriptConstructor.): 79890 * inspector/front-end/ObjectPropertiesSection.js: 79891 (WebInspector.ObjectPropertiesSection.prototype.update): 79892 (WebInspector.ObjectPropertiesSection.prototype.updateProperties): 79893 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): 79894 (WebInspector.ObjectPropertyTreeElement.prototype.update): 79895 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): 79896 * inspector/front-end/ObjectProxy.js: Removed. 79897 * inspector/front-end/PropertiesSidebarPane.js: 79898 (WebInspector.PropertiesSidebarPane.prototype.update.callback): 79899 * inspector/front-end/RemoteObject.js: Added. 79900 (WebInspector.RemoteObjectId): 79901 (WebInspector.RemoteObject): 79902 (WebInspector.RemoteObject.fromPrimitiveValue): 79903 (WebInspector.RemoteObject.fromNode): 79904 (WebInspector.RemoteObject.fromPayload): 79905 (WebInspector.RemoteObject.type): 79906 (WebInspector.RemoteObject.prototype.get objectId): 79907 (WebInspector.RemoteObject.prototype.get type): 79908 (WebInspector.RemoteObject.prototype.get description): 79909 (WebInspector.RemoteObject.prototype.get hasChildren): 79910 (WebInspector.RemoteObject.prototype.isError): 79911 (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): 79912 (WebInspector.RemoteObject.prototype.getOwnProperties): 79913 (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): 79914 (WebInspector.RemoteObjectProperty): 79915 * inspector/front-end/ScopeChainSidebarPane.js: 79916 (WebInspector.ScopeChainSidebarPane.prototype.update): 79917 * inspector/front-end/ScriptsPanel.js: 79918 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper): 79919 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): 79920 (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame): 79921 * inspector/front-end/SourceFrame.js: 79922 (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback): 79923 (WebInspector.SourceFrame.prototype._showPopup): 79924 (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame): 79925 * inspector/front-end/WatchExpressionsSidebarPane.js: 79926 (WebInspector.WatchExpressionsSection.prototype.update): 79927 (WebInspector.WatchExpressionTreeElement.prototype.update): 79928 * inspector/front-end/WebKit.qrc: 79929 * inspector/front-end/inspector.html: 79930 * inspector/front-end/inspector.js: 79931 (WebInspector.log.logMessage): 79932 (WebInspector.log): 79933 * inspector/front-end/utilities.js: 79934 (): 79935 79936 2010-08-11 Stephen White <senorblanco (a] chromium.org> 79937 79938 Reviewed by David Levin. 79939 79940 Add support for BGRA pixel format to GraphicsContext3D. 79941 https://bugs.webkit.org/show_bug.cgi?id=43858 79942 79943 Although this has been standard in desktop GL since 1.2, it's an 79944 extension in GL ES 2.0, so a query function is provided to check 79945 for support. Since they differ on semantics (GL ES 2.0 requires 79946 TexImage2D()'s format and internalFormat to match, while desktop GL 79947 will not accept BGRA as an internalFormat), the stub implementation 79948 returns false until these quirks have been implemented and tested on 79949 each port. 79950 79951 * platform/graphics/GraphicsContext3D.cpp: 79952 (WebCore::GraphicsContext3D::supportsBGRA): 79953 Add implementation for non-chromium platforms which returns false. 79954 * platform/graphics/GraphicsContext3D.h: 79955 (WebCore::GraphicsContext3D::): 79956 Add query function (supportsBGRA()) and the BGRA_EXT token. 79957 79958 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79959 79960 Not reviewed. Rolling out r65241 and 65243 for breaking inspector tests. 79961 79962 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79963 79964 Not reviewed. Adding the file missing in r65241. 79965 79966 * inspector/front-end/RemoteObject.js: Added. 79967 (WebInspector.RemoteObjectId): 79968 (WebInspector.RemoteObject): 79969 (WebInspector.RemoteObject.fromPrimitiveValue): 79970 (WebInspector.RemoteObject.fromNode): 79971 (WebInspector.RemoteObject.fromPayload): 79972 (WebInspector.RemoteObject.type): 79973 (WebInspector.RemoteObject.prototype.get objectId): 79974 (WebInspector.RemoteObject.prototype.get type): 79975 (WebInspector.RemoteObject.prototype.get description): 79976 (WebInspector.RemoteObject.prototype.get hasChildren): 79977 (WebInspector.RemoteObject.prototype.isError): 79978 (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): 79979 (WebInspector.RemoteObject.prototype.getOwnProperties): 79980 (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): 79981 (WebInspector.RemoteObjectProperty): 79982 79983 2010-08-12 Pavel Feldman <pfeldman (a] chromium.org> 79984 79985 Reviewed by Yury Semikhatsky. 79986 79987 Web Inspector: brush up object proxies, introduce remote object model. 79988 https://bugs.webkit.org/show_bug.cgi?id=43847 79989 79990 * WebCore.gypi: 79991 * WebCore.vcproj/WebCore.vcproj: 79992 * inspector/front-end/AuditRules.js: 79993 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun): 79994 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun): 79995 * inspector/front-end/ConsoleView.js: 79996 (WebInspector.ConsoleView.prototype.doEvalInWindow): 79997 (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): 79998 (WebInspector.ConsoleView.prototype._enterKeyPressed): 79999 (WebInspector.ConsoleView.prototype._format): 80000 (WebInspector.ConsoleView.prototype._formatnode): 80001 (WebInspector.ConsoleView.prototype._formatarray): 80002 (WebInspector.ConsoleView.prototype._formatAsArrayEntry): 80003 (WebInspector.ConsoleMessage.prototype._format): 80004 (WebInspector.ConsoleCommandResult): 80005 * inspector/front-end/DOMAgent.js: 80006 (WebInspector.DOMNode): 80007 * inspector/front-end/ElementsTreeOutline.js: 80008 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): 80009 * inspector/front-end/EventListenersSidebarPane.js: 80010 * inspector/front-end/InjectedScript.js: 80011 (injectedScriptConstructor): 80012 (injectedScriptConstructor.): 80013 * inspector/front-end/ObjectPropertiesSection.js: 80014 (WebInspector.ObjectPropertiesSection.prototype.update): 80015 (WebInspector.ObjectPropertiesSection.prototype.updateProperties): 80016 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): 80017 (WebInspector.ObjectPropertyTreeElement.prototype.update): 80018 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): 80019 * inspector/front-end/ObjectProxy.js: Removed. 80020 * inspector/front-end/PropertiesSidebarPane.js: 80021 (WebInspector.PropertiesSidebarPane.prototype.update.callback): 80022 * inspector/front-end/RemoteObject.js: Added. 80023 (WebInspector.RemoteObjectId): 80024 (WebInspector.RemoteObject): 80025 (WebInspector.RemoteObject.fromPrimitiveValue): 80026 (WebInspector.RemoteObject.fromErrorMessage): 80027 (WebInspector.RemoteObject.fromNode): 80028 (WebInspector.RemoteObject.fromPayload): 80029 (WebInspector.RemoteObject.type): 80030 (WebInspector.RemoteObject.prototype.get objectId): 80031 (WebInspector.RemoteObject.prototype.get type): 80032 (WebInspector.RemoteObject.prototype.get description): 80033 (WebInspector.RemoteObject.prototype.get hasChildren): 80034 (WebInspector.RemoteObject.prototype.isError): 80035 (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): 80036 (WebInspector.RemoteObject.prototype.getOwnProperties): 80037 (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): 80038 (WebInspector.RemoteObjectProperty): 80039 * inspector/front-end/ScopeChainSidebarPane.js: 80040 (WebInspector.ScopeChainSidebarPane.prototype.update): 80041 * inspector/front-end/ScriptsPanel.js: 80042 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper): 80043 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): 80044 (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame): 80045 * inspector/front-end/SourceFrame.js: 80046 (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback): 80047 (WebInspector.SourceFrame.prototype._showPopup): 80048 (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame): 80049 * inspector/front-end/WatchExpressionsSidebarPane.js: 80050 (WebInspector.WatchExpressionsSection.prototype.update): 80051 (WebInspector.WatchExpressionTreeElement.prototype.update): 80052 * inspector/front-end/WebKit.qrc: 80053 * inspector/front-end/inspector.html: 80054 * inspector/front-end/inspector.js: 80055 (WebInspector.log.logMessage): 80056 (WebInspector.log): 80057 * inspector/front-end/utilities.js: 80058 80059 2010-08-12 Ben Murdoch <benm (a] google.com> 80060 80061 Reviewed by Steve Block. 80062 80063 V8 code generator does not add V8BindingMacros.h include in all places it is needed 80064 https://bugs.webkit.org/show_bug.cgi?id=43907 80065 80066 Adds the V8BindingMacros.h header before using the STRING_TO_V8PARAMETER_EXCEPTION_BLOCK 80067 macro. 80068 80069 Build fix so no new tests. 80070 80071 * bindings/scripts/CodeGeneratorV8.pm: include the header at the right time. 80072 80073 2010-08-12 Jeremy Orlow <jorlow (a] chromium.org> 80074 80075 Revert for now 80076 https://bugs.webkit.org/show_bug.cgi?id=43794 80077 80078 * Android.mk: 80079 * CMakeLists.txt: 80080 * GNUmakefile.am: 80081 * WebCore.exp.in: 80082 * WebCore.gypi: 80083 * WebCore.pro: 80084 * WebCore.vcproj/WebCore.vcproj: 80085 * WebCore.xcodeproj/project.pbxproj: 80086 * page/GroupSettings.cpp: Removed. 80087 * page/GroupSettings.h: Removed. 80088 * page/PageGroup.cpp: 80089 (WebCore::PageGroup::PageGroup): 80090 (WebCore::PageGroup::localStorage): 80091 * page/PageGroup.h: 80092 * page/Settings.cpp: 80093 (WebCore::Settings::Settings): 80094 (WebCore::Settings::setLocalStorageQuota): 80095 (WebCore::Settings::setLocalStorageDatabasePath): 80096 * page/Settings.h: 80097 (WebCore::Settings::localStorageQuota): 80098 (WebCore::Settings::localStorageDatabasePath): 80099 80100 2010-08-12 Nikolas Zimmermann <nzimmermann (a] rim.com> 80101 80102 Not reviewed. Follow up to Jeremys fix, just remove the context parameter, it's not needed anymore. 80103 80104 * rendering/RenderSVGResourceGradient.cpp: 80105 (WebCore::createMaskAndSwapContextForTextGradient): 80106 * rendering/RenderSVGResourceMasker.cpp: 80107 (WebCore::RenderSVGResourceMasker::applyResource): 80108 * rendering/SVGImageBufferTools.cpp: 80109 (WebCore::SVGImageBufferTools::createImageBuffer): 80110 * rendering/SVGImageBufferTools.h: 80111 80112 2010-08-12 Jeremy Orlow <jorlow (a] chromium.org> 80113 80114 Build fix. 80115 80116 * rendering/SVGImageBufferTools.cpp: 80117 (WebCore::SVGImageBufferTools::createImageBuffer): 80118 80119 2010-08-12 Nikolas Zimmermann <nzimmermann (a] rim.com> 80120 80121 Reviewed by Dirk Schulze. 80122 80123 SVG masking performance very slow 80124 https://bugs.webkit.org/show_bug.cgi?id=43622 80125 80126 Create ImageBuffers only as large as the final rendered size on screen. Only gradient on text on CG handled this correctly so far. 80127 Refactored the code into a new SVGImageBufferTools class, and use the code from RenderSVGResourceMasker -> makes the IE9 demo SVG dice usable. 80128 Clippers, Patterns and Filters remain to be converted. 80129 80130 Test: svg/zoom/page/zoom-mask-with-percentages.svg 80131 80132 * Android.mk: Add SVGImageBufferTools.* to build. 80133 * CMakeLists.txt: Ditto. 80134 * GNUmakefile.am: Ditto. 80135 * WebCore.gypi: Ditto. 80136 * WebCore.pro: Ditto. 80137 * WebCore.xcodeproj/project.pbxproj: Ditto. 80138 * rendering/RenderSVGAllInOne.cpp: Ditto. 80139 * rendering/RenderSVGResourceGradient.cpp: Refactored CG gradient specific "create image buffer in absolute coordinates" code into SVGImageBufferTools class. 80140 (WebCore::createMaskAndSwapContextForTextGradient): 80141 (WebCore::clipToTextMask): 80142 (WebCore::RenderSVGResourceGradient::applyResource): 80143 * rendering/RenderSVGResourceMasker.cpp: Use new SVGImageBufferTools class, to avoid pixelation when zooming and to create image buffers as big as the final rendered size on screen, not more. 80144 (WebCore::RenderSVGResourceMasker::invalidateClients): 80145 (WebCore::RenderSVGResourceMasker::applyResource): 80146 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): 80147 (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect): 80148 (WebCore::RenderSVGResourceMasker::resourceBoundingBox): 80149 * rendering/RenderSVGResourceMasker.h: 80150 * rendering/SVGImageBufferTools.cpp: Added. 80151 (WebCore::SVGImageBufferTools::absoluteTransformFromContext): 80152 (WebCore::SVGImageBufferTools::createImageBuffer): 80153 (WebCore::SVGImageBufferTools::clipToImageBuffer): 80154 * rendering/SVGImageBufferTools.h: Added. 80155 (WebCore::SVGImageBufferTools::SVGImageBufferTools): 80156 (WebCore::SVGImageBufferTools::~SVGImageBufferTools): 80157 80158 2010-08-10 Jeremy Orlow <jorlow (a] chromium.org> 80159 80160 Reviewed by Adam Barth. 80161 80162 Some settings are linked to the PageGroup not the Page. Create a new class for those. 80163 https://bugs.webkit.org/show_bug.cgi?id=43794 80164 80165 Since persistient storage is shared between pages, there's no way to modify 80166 some settings related to it on a per page basis. As such, it's not technically 80167 correct for these settings to be on the Page's settings. Create a new class 80168 called GroupSettings, move the 2 group-wide local storage settings there, and 80169 add a new setting for IndexedDB's path (which is prompting this change). 80170 80171 No behavior has changed, so no tests. 80172 80173 * Android.mk: 80174 * CMakeLists.txt: 80175 * GNUmakefile.am: 80176 * WebCore.exp.in: 80177 * WebCore.gypi: 80178 * WebCore.pro: 80179 * WebCore.vcproj/WebCore.vcproj: 80180 * WebCore.xcodeproj/project.pbxproj: 80181 * page/PageGroup.cpp: 80182 (WebCore::PageGroup::PageGroup): 80183 (WebCore::PageGroup::localStorage): 80184 * page/PageGroup.h: 80185 (WebCore::PageGroup::groupSettings): 80186 * page/Settings.cpp: 80187 (WebCore::Settings::Settings): 80188 (WebCore::Settings::setSessionStorageQuota): 80189 * page/Settings.h: 80190 80191 2010-08-12 Benjamin Poulain <benjamin.poulain (a] nokia.com> 80192 80193 Reviewed by Simon Hausmann. 80194 80195 [Qt] Decode images directly to QPixmap 80196 https://bugs.webkit.org/show_bug.cgi?id=40797 80197 80198 Use the new API of Qt 4.7 to decode data from the image 80199 reader directly to QPixmap. 80200 80201 This allow us to use JDCT_IFAST when decoding jpeg images 80202 to pixmap, and to decode animated GIF images, while still 80203 using in-place conversion of color space. 80204 80205 * platform/graphics/qt/ImageDecoderQt.cpp: 80206 (WebCore::ImageDecoderQt::setData): 80207 (WebCore::ImageDecoderQt::internalHandleCurrentImage): 80208 80209 2010-07-14 Marcus Bulach <bulach (a] chromium.org> 80210 80211 Reviewed by darin (a] apple.com. 80212 80213 Removes DontCheckEnums from some IDLs and fixes the corresponding enums. 80214 https://bugs.webkit.org/show_bug.cgi?id=42278 80215 80216 This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=42250: it fixes some IDL/.h and enables generating compile-time checks for enums. 80217 80218 Tests: idls should generate valid code. 80219 80220 * dom/Node.h: 80221 (WebCore::Node::): 80222 * dom/Node.idl: 80223 * dom/OverflowEvent.h: 80224 (WebCore::OverflowEvent::): 80225 * dom/OverflowEvent.idl: 80226 * html/FileReader.cpp: 80227 (WebCore::FileReader::readyState): 80228 * html/FileReader.h: 80229 (WebCore::FileReader::): 80230 * html/FileReader.idl: 80231 80232 2010-08-12 Alejandro G. Castro <alex (a] igalia.com> 80233 80234 Reviewed by David Levin. 80235 80236 The #if clause enabling a feature should avoid the all includes of 80237 the feature 80238 https://bugs.webkit.org/show_bug.cgi?id=43866 80239 80240 Modified the position of the guard to avoid including all the 80241 headers if the feature controlling the guard is not enabled. 80242 80243 * dom/make_names.pl: 80244 80245 2010-08-12 Sheriff Bot <webkit.review.bot (a] gmail.com> 80246 80247 Unreviewed, rolling out r65221. 80248 http://trac.webkit.org/changeset/65221 80249 https://bugs.webkit.org/show_bug.cgi?id=43896 80250 80251 Broke snow leopard build. (Requested by dave_levin on 80252 #webkit). 80253 80254 * platform/graphics/GraphicsContext3D.cpp: 80255 * platform/graphics/GraphicsContext3D.h: 80256 (WebCore::GraphicsContext3D::): 80257 80258 2010-08-11 Stephen White <senorblanco (a] chromium.org> 80259 80260 Reviewed by David Levin. 80261 80262 Add support for BGRA pixel format to GraphicsContext3D. 80263 https://bugs.webkit.org/show_bug.cgi?id=43858 80264 80265 Although this has been standard in desktop GL since 1.2, it's an 80266 extension in GL ES 2.0, so a query function is provided to check 80267 for support. Since they differ on semantics (GL ES 2.0 requires 80268 TexImage2D()'s format and internalFormat to match, while desktop GL 80269 will not accept BGRA as an internalFormat), the stub implementation 80270 returns false until these quirks have been implemented and tested on 80271 each port. 80272 80273 * platform/graphics/GraphicsContext3D.cpp: 80274 (WebCore::GraphicsContext3D::supportsBGRA): 80275 Add implementation for non-chromium platforms which returns false. 80276 * platform/graphics/GraphicsContext3D.h: 80277 (WebCore::GraphicsContext3D::): 80278 Add query function (supportsBGRA()) and the BGRA_EXT token. 80279 80280 2010-08-11 Satish Sampath <satish (a] chromium.org> 80281 80282 Reviewed by Kent Tamura. 80283 80284 Handle clicks and recognition events for the speech input button 80285 https://bugs.webkit.org/show_bug.cgi?id=43857 80286 80287 * rendering/RenderInputSpeech.cpp: 80288 (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): Selects the image based on current state. 80289 * rendering/TextControlInnerElements.cpp: 80290 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 80291 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 80292 (WebCore::InputFieldSpeechButtonElement::set_state): Switch to a new state and update the UI. 80293 (WebCore::InputFieldSpeechButtonElement::didCompleteRecording): 80294 (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition): 80295 * rendering/TextControlInnerElements.h: 80296 (WebCore::InputFieldSpeechButtonElement::): 80297 (WebCore::InputFieldSpeechButtonElement::state): 80298 80299 2010-08-11 Fumitoshi Ukai <ukai (a] chromium.org> 80300 80301 Reviewed by Alexey Proskuryakov. 80302 80303 REGRESSION(65135): format specifier warnings 80304 https://bugs.webkit.org/show_bug.cgi?id=43876 80305 80306 * websockets/WebSocketChannel.cpp: 80307 (WebCore::WebSocketChannel::appendToBuffer): cast size_t to unsigned long for %lu. 80308 (WebCore::WebSocketChannel::processBuffer): cast size_t to unsigned long for %lu. 80309 80310 2010-08-11 Kevin Ollivier <kevino (a] theolliviers.com> 80311 80312 [wx] Build fix, don't generate WebDOMEventTarget.h/.cpp as we use the ones in bindings/cpp. 80313 80314 * DerivedSources.make: 80315 80316 2010-08-11 Tony Gentilcore <tonyg (a] chromium.org> 80317 80318 Reviewed by Adam Barth. 80319 80320 Make PendingScript copyable so that it can be stored in containers 80321 https://bugs.webkit.org/show_bug.cgi?id=43875 80322 80323 This will be useful for storing PendingScripts in a Vector or Deque for 80324 async and defer scripts. 80325 80326 No new tests because no functional changes. 80327 80328 * dom/PendingScript.h: 80329 (WebCore::PendingScript::PendingScript): 80330 (WebCore::PendingScript::operator=): 80331 80332 2010-08-11 Victoria Kirst <vrk (a] google.com> 80333 80334 Reviewed by David Levin. 80335 80336 Fixing a regression in the UI for Mac default audio/video controls. 80337 https://bugs.webkit.org/show_bug.cgi?id=43750 80338 80339 * rendering/RenderThemeChromiumMac.h: 80340 * rendering/RenderThemeChromiumMac.mm: 80341 (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderContainer): 80342 (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb): 80343 (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton): 80344 80345 2010-08-11 Adam Barth <abarth (a] webkit.org> 80346 80347 Reviewed by Eric Seidel. 80348 80349 HTML TreeBuilder hits ASSERT in fragment case with insertAdjacentHTML and colgroup 80350 https://bugs.webkit.org/show_bug.cgi?id=43758 80351 80352 This patch conditionalizes some LegacyHTMLTreeBuilder-specific code in 80353 HTMLElement::createContextualFragment that interferes with the new 80354 HTMLTreeBuilder. Doing that exposes the above ASSERT, which I've fixed 80355 in this patch too. Fixing that ASSERT involved a small refactoring in 80356 ExternalCharacterTokenBuffer. 80357 80358 * html/HTMLElement.cpp: 80359 (WebCore::HTMLElement::createContextualFragment): 80360 * html/HTMLTreeBuilder.cpp: 80361 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace): 80362 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace): 80363 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace): 80364 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeading): 80365 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeading): 80366 (WebCore::HTMLTreeBuilder::processCharacterBuffer): 80367 80368 2010-08-11 Adam Barth <abarth (a] webkit.org> 80369 80370 Reviewed by Eric Seidel. 80371 80372 Conditionalize wrong fragment parsing code to pass more HTML5lib tests 80373 https://bugs.webkit.org/show_bug.cgi?id=43877 80374 80375 This code exists to support the LegacyHTMLTreeBuilder. Unfortunately, 80376 it causes problems for the new HTMLTreeBuilder (which is more 80377 self-contained). 80378 80379 * dom/Element.cpp: 80380 (WebCore::Element::createContextualFragment): 80381 80382 2010-08-11 Ryosuke Niwa <rniwa (a] webkit.org> 80383 80384 Reviewed by Tony Chang. 80385 80386 Can't unbold text in div in font-weight span 80387 https://bugs.webkit.org/show_bug.cgi?id=26871 80388 80389 The bug was caused by removeInlineStyle not being able to include styled inline nodes around the start. 80390 Solved this problem by pushing down all inline styles instead of just text-decorations. 80391 This approach allows removeInlineStyle to remove styled ancestors properly and generates compact markups. 80392 80393 Test: editing/style/push-down-inline-styles.html 80394 80395 * editing/ApplyStyleCommand.cpp: 80396 (WebCore::ApplyStyleCommand::removeCSSStyle): No longer removes attributes or node when mode == RemoveNone. 80397 (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Calls shouldRemoveInlineStyleFromElement 80398 to determine the highest ancestor whose style needs to be pushed down. 80399 (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Renamed from extractTextDecorationStyle. 80400 Extracts all inline CSS properties specified instead of just text decorations. 80401 (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Renamed from applyTextDecorationStyle. 80402 Applies inline styles using addInlineStyleIfNeeded or adds inline CSS values. 80403 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Renamed from pushDownTextDecorationStyleAroundNode. 80404 (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode. 80405 * editing/ApplyStyleCommand.h: 80406 * editing/DeleteSelectionCommand.cpp: 80407 (WebCore::DeleteSelectionCommand::mergeParagraphs): Prevents moveParagraph from preserving 80408 the style of an empty paragraph when merged with the previous paragraph because we don't use that style anyways. 80409 80410 2010-08-11 Julien Chaffraix <jchaffraix (a] codeaurora.org> 80411 80412 Reviewed by Ariya Hidayat. 80413 80414 Remove dead code in CSSStyleSelector. 80415 https://bugs.webkit.org/show_bug.cgi?id=43805 80416 80417 * css/CSSStyleSelector.cpp: Remove some debugging code that 80418 was compiled out. 80419 80420 2010-08-11 Chris Fleizach <cfleizach (a] apple.com> 80421 80422 Reviewed by Beth Dakin. 80423 80424 AX: isNativeCheckbox does not work as advertised 80425 https://bugs.webkit.org/show_bug.cgi?id=43872 80426 80427 Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html 80428 80429 * accessibility/AccessibilityRenderObject.cpp: 80430 (WebCore::AccessibilityRenderObject::isInputImage): 80431 Only say it's an input image if its role has not been overriden 80432 (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): 80433 * dom/InputElement.h: 80434 Add methods to query if it's a checkbox or radio button type element. 80435 * html/HTMLInputElement.h: 80436 (WebCore::HTMLInputElement::isCheckbox): 80437 80438 2010-08-11 Kenneth Russell <kbr (a] google.com> 80439 80440 Reviewed by David Levin. 80441 80442 Remove obsolete WebGLArray type names 80443 https://bugs.webkit.org/show_bug.cgi?id=43885 80444 80445 Deleted aliases to obsolete WebGLArray type names. Updated 80446 affected layout tests, synchronizing them with the versions in the 80447 Khronos repository where appropriate. Ran all layout tests. 80448 80449 * bindings/js/JSDOMWindowCustom.cpp: 80450 * page/DOMWindow.idl: 80451 80452 2010-08-11 Steve Block <steveblock (a] google.com> 80453 80454 Reviewed by David Levin. 80455 80456 [chromium] Geolocation breaks the compile if ENABLE_GEOLOCATION is set to 0 80457 https://bugs.webkit.org/show_bug.cgi?id=43753 80458 80459 This change guards the entire contents of the V8 custom bindings files 80460 with ENABLE(GEOLOCATION) to match JSC. 80461 80462 No new tests, build fix only. 80463 80464 * bindings/v8/custom/V8CustomPositionCallback.cpp: 80465 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 80466 * bindings/v8/custom/V8GeolocationCustom.cpp: 80467 80468 2010-08-11 Kwang Yul Seo <skyul (a] company100.net> 80469 80470 Reviewed by David Levin. 80471 80472 Include <wtf/UnusedParam.h> in GraphicsContextSkia.cpp 80473 https://bugs.webkit.org/show_bug.cgi?id=43843 80474 80475 wtf/UnusedParam.h must be included because UNUSED_PARAM macro is used. 80476 80477 * platform/graphics/skia/GraphicsContextSkia.cpp: 80478 80479 2010-08-11 Nico Weber <thakis (a] chromium.org> 80480 80481 Reviewed by David Levin. 80482 80483 [chromium/mac]: Fix colors in compositing mode 80484 https://bugs.webkit.org/show_bug.cgi?id=43823 80485 80486 The textures are drawn by opengl, which doesn't do any color space 80487 correction -- it assumes everything is in the device color space 80488 already. Hence, when drawing into the memory that will be uploaded 80489 as opengl texture, use the device color space. 80490 80491 * platform/graphics/chromium/ImageLayerChromium.cpp: 80492 (WebCore::ImageLayerChromium::updateTextureContents): 80493 * platform/graphics/chromium/LayerChromium.cpp: 80494 (WebCore::LayerChromium::updateTextureContents): 80495 * platform/graphics/chromium/LayerRendererChromium.cpp: 80496 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 80497 80498 2010-08-11 Kenneth Russell <kbr (a] google.com> 80499 80500 Reviewed by Dimitri Glazkov. 80501 80502 Remove obsolete texImage2D and texSubImage2D entry points 80503 https://bugs.webkit.org/show_bug.cgi?id=40320 80504 80505 No new tests; covered by existing WebGL tests. 80506 80507 * html/canvas/WebGLRenderingContext.cpp: 80508 * html/canvas/WebGLRenderingContext.h: 80509 * html/canvas/WebGLRenderingContext.idl: 80510 80511 2010-08-11 Gavin Barraclough <barraclough (a] apple.com> 80512 80513 Windows build fix. 80514 80515 * platform/win/BString.cpp: 80516 (WebCore::BString::BString): 80517 80518 2010-08-11 Gavin Barraclough <barraclough (a] apple.com> 80519 80520 Qt build fix II. 80521 80522 * WebCore.xcodeproj/project.pbxproj: 80523 * bridge/qt/qt_runtime.cpp: 80524 (JSC::Bindings::convertValueToQVariant): 80525 80526 2010-08-11 Gavin Barraclough <barraclough (a] apple.com> 80527 80528 Qt build fix. 80529 80530 * WebCore.xcodeproj/project.pbxproj: 80531 * bridge/qt/qt_runtime.cpp: 80532 (JSC::Bindings::convertValueToQVariant): 80533 80534 2010-08-11 Steve Block <steveblock (a] google.com> 80535 80536 Reviewed by Jeremy Orlow. 80537 80538 Need EmptyDeviceOrientationClient and EmptyDeviceMotionClient for use with SVGImage 80539 https://bugs.webkit.org/show_bug.cgi?id=43848 80540 80541 Tested by existing DeviceOrientation tests. 80542 80543 * loader/EmptyClients.h: 80544 (WebCore::EmptyDeviceMotionClient::setController): 80545 (WebCore::EmptyDeviceMotionClient::startUpdating): 80546 (WebCore::EmptyDeviceMotionClient::stopUpdating): 80547 (WebCore::EmptyDeviceMotionClient::currentDeviceMotion): 80548 (WebCore::EmptyDeviceOrientationClient::setController): 80549 (WebCore::EmptyDeviceOrientationClient::startUpdating): 80550 (WebCore::EmptyDeviceOrientationClient::stopUpdating): 80551 (WebCore::EmptyDeviceOrientationClient::lastOrientation): 80552 * svg/graphics/SVGImage.cpp: 80553 (WebCore::SVGImage::dataChanged): 80554 80555 2010-08-11 Rob Buis <rwlbuis (a] gmail.com> 80556 80557 Reviewed by Dan Bernstein. 80558 80559 https://bugs.webkit.org/show_bug.cgi?id=42042 80560 An empty value for xml:lang isn't considered 80561 80562 Revert last line change of my patch ; it happens to 80563 behave correctly and same as before, but makes the 80564 use case of empty values unneededly slower. 80565 80566 No new tests. (No change in behavior) 80567 80568 * css/CSSStyleSelector.cpp: 80569 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 80570 80571 2010-08-11 Kevin Ollivier <kevino (a] theolliviers.com> 80572 80573 [wx, WebDOM] Build fix. Fix callback params and WebCore::String -> WTF::String fixes. 80574 80575 * bindings/cpp/WebDOMCustomVoidCallback.cpp: Added. 80576 (WebDOMCustomVoidCallback::WebDOMCustomVoidCallback): 80577 (WebDOMCustomVoidCallback::~WebDOMCustomVoidCallback): 80578 (WebDOMCustomVoidCallback::handleEvent): 80579 (toWebCore): 80580 * bindings/cpp/WebDOMCustomVoidCallback.h: Added. 80581 (WebDOMCustomVoidCallback::create): 80582 * bindings/cpp/WebDOMHTMLDocumentCustom.cpp: 80583 (documentWrite): 80584 * bindings/cpp/WebDOMString.cpp: 80585 (WebDOMString::equals): 80586 * bindings/scripts/CodeGeneratorCPP.pm: 80587 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: 80588 (WebDOMTestCallback::callbackWithClass1Param): 80589 (WebDOMTestCallback::callbackWithClass2Param): 80590 (WebDOMTestCallback::callbackWithNonBoolReturnType): 80591 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 80592 * bindings/scripts/test/V8/V8TestInterface.h: 80593 * bindings/scripts/test/V8/V8TestObj.h: 80594 * wscript: 80595 80596 2010-08-11 Gavin Barraclough <barraclough (a] apple.com> 80597 80598 Rubber stamps by Darin Adler & Sam Weinig. 80599 80600 Bug 43867 - Some UString cleanup 80601 80602 Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String. 80603 Move string concatenation methods to a new header to simplify down UString.h. Remove is8Bit(). 80604 80605 * WebCore.xcodeproj/project.pbxproj: 80606 * bindings/js/JSCSSStyleDeclarationCustom.cpp: 80607 (WebCore::hasCSSPropertyNamePrefix): 80608 (WebCore::cssPropertyName): 80609 * bindings/js/JSLocationCustom.cpp: 80610 (WebCore::JSLocation::setPort): 80611 * bindings/js/ScriptDebugServer.cpp: 80612 (WebCore::ScriptDebugServer::dispatchDidParseSource): 80613 * bindings/js/ScriptString.h: 80614 (WebCore::ScriptString::size): 80615 * bindings/js/ScriptValue.cpp: 80616 (WebCore::jsToInspectorValue): 80617 * bindings/objc/WebScriptObject.mm: 80618 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): 80619 * bridge/jni/jni_jsobject.mm: 80620 (JavaJSObject::convertValueToJObject): 80621 * bridge/jni/jsc/JNIUtilityPrivate.cpp: 80622 (JSC::Bindings::convertArrayInstanceToJavaArray): 80623 (JSC::Bindings::convertValueToJValue): 80624 * bridge/objc/objc_runtime.mm: 80625 (JSC::Bindings::callObjCFallbackObject): 80626 80627 2010-08-10 David Hyatt <hyatt (a] apple.com> 80628 80629 Reviewed by Dan Bernstein. 80630 80631 https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content. 80632 80633 Add a new boolean to Document to indicate that content should be paginated. This is checked when doing page breaks 80634 and in a couple of other cases. 80635 80636 * dom/Document.cpp: 80637 (WebCore::Document::Document): 80638 * dom/Document.h: 80639 (WebCore::Document::paginatedForScreen): 80640 (WebCore::Document::setPaginatedForScreen): 80641 (WebCore::Document::paginated): 80642 * rendering/RenderBlock.cpp: 80643 (WebCore::RenderBlock::paintChildren): 80644 (WebCore::RenderBlock::calcColumnWidth): 80645 * rendering/RenderBox.cpp: 80646 (WebCore::RenderBox::calcHeight): 80647 * rendering/RenderView.cpp: 80648 (WebCore::RenderView::paint): 80649 80650 2010-08-11 Adam Barth <abarth (a] webkit.org> 80651 80652 Windows build fix. Turns out we need to unconditionally include 80653 HTMLEntityNames.cpp now that LegacyHTMLDocumentParser doesn't exist. 80654 80655 * html/HTMLEntityParser.cpp: 80656 80657 2010-08-11 Eric Carlson <eric.carlson (a] apple.com> 80658 80659 Reviewed by Darin Adler. 80660 80661 Inserting a <source> element should immediately set networkState to NETWORK_NO_SOURCE. 80662 https://bugs.webkit.org/show_bug.cgi?id=42897 80663 80664 A <source> element inserted as a child of a media element with a networkState of NETWORK_EMPTY 80665 should cause the networkState to immediately change to NETWORK_NO_SOURCE. 80666 80667 * WebCore.xcodeproj/project.pbxproj: 80668 * html/HTMLMediaElement.cpp: 80669 (WebCore::HTMLMediaElement::HTMLMediaElement): Remove unused variable m_processingLoad. 80670 (WebCore::HTMLMediaElement::prepareForLoad): Set m_networkState to NETWORK_NO_SOURCE. 80671 (WebCore::HTMLMediaElement::loadInternal): Remove unused variable m_processingLoad. 80672 (WebCore::HTMLMediaElement::selectMediaResource): No need to change m_networkState, it was done in prepareForLoad. 80673 * html/HTMLMediaElement.h: 80674 80675 * html/HTMLSourceElement.cpp: 80676 (WebCore::HTMLSourceElement::insertedIntoTree): Renamed from insertedIntoDocument because we want 80677 to do this setup whether or not the parent media element is in the document. 80678 * html/HTMLSourceElement.h: 80679 80680 2010-08-11 Adam Barth <abarth (a] webkit.org> 80681 80682 Rubber-stamped by Eric Seidel. 80683 80684 Delete LegacyHTMLDocumentParser and LegacyPreloadScanner 80685 https://bugs.webkit.org/show_bug.cgi?id=43836 80686 80687 These classes are bit-rotting disturbingly quickly. We removed the 80688 last dependencies on these classes and so we can remove them. 80689 80690 We might need to preserve some of their particular quirks to handle 80691 some legacy applications, but our current thinking is to do that with 80692 individual settings that affect the new parser. 80693 80694 * Android.mk: 80695 * CMakeLists.txt: 80696 * GNUmakefile.am: 80697 * WebCore.gypi: 80698 * WebCore.pro: 80699 * WebCore.vcproj/WebCore.vcproj: 80700 * WebCore.xcodeproj/project.pbxproj: 80701 * dom/Document.cpp: 80702 * dom/DocumentFragment.cpp: 80703 (WebCore::DocumentFragment::parseHTML): 80704 * dom/DocumentParser.h: 80705 * dom/XMLDocumentParserLibxml2.cpp: 80706 * dom/XMLDocumentParserQt.cpp: 80707 * html/HTMLConstructionSite.cpp: 80708 * html/HTMLDocument.cpp: 80709 (WebCore::HTMLDocument::createParser): 80710 * html/HTMLEntityParser.cpp: 80711 (WebCore::decodeNamedEntity): 80712 * html/HTMLEntityParser.h: 80713 * html/HTMLFormControlElement.cpp: 80714 * html/HTMLTreeBuilder.cpp: 80715 * html/HTMLViewSourceDocument.cpp: 80716 (WebCore::HTMLViewSourceDocument::createParser): 80717 * html/LegacyHTMLDocumentParser.cpp: Removed. 80718 * html/LegacyHTMLDocumentParser.h: Removed. 80719 * html/LegacyHTMLTreeBuilder.cpp: 80720 * html/LegacyPreloadScanner.cpp: Removed. 80721 * html/LegacyPreloadScanner.h: Removed. 80722 * loader/FTPDirectoryDocument.cpp: 80723 (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser): 80724 (WebCore::FTPDirectoryDocumentParser::appendEntry): 80725 (WebCore::FTPDirectoryDocumentParser::createTDForFilename): 80726 (WebCore::processFilesizeString): 80727 (WebCore::wasLastDayOfMonth): 80728 (WebCore::processFileDateString): 80729 (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine): 80730 (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): 80731 (WebCore::FTPDirectoryDocumentParser::createBasicDocument): 80732 (WebCore::FTPDirectoryDocumentParser::append): 80733 (WebCore::FTPDirectoryDocumentParser::finish): 80734 * page/XSSAuditor.cpp: 80735 (WebCore::XSSAuditor::decodeHTMLEntities): 80736 * page/XSSAuditor.h: 80737 * platform/text/SegmentedString.cpp: 80738 (WebCore::SegmentedString::prepend): 80739 80740 2010-08-11 Chris Jerdonek <cjerdonek (a] webkit.org> 80741 80742 Reviewed by Adam Barth. 80743 80744 Refactored FrameLoader::createWindow() out of the FrameLoader class 80745 since FrameLoader should not be responsible for creating windows. 80746 80747 https://bugs.webkit.org/show_bug.cgi?id=39156 80748 80749 No new functionality, so no new tests. 80750 80751 * bindings/generic/BindingDOMWindow.h: 80752 (WebCore::::createWindow): 80753 - Updated the call to FrameLoader's createWindow(). 80754 * bindings/js/JSDOMWindowCustom.cpp: 80755 (WebCore::createWindow): 80756 - Updated the call to FrameLoader's createWindow(). 80757 * loader/FrameLoader.cpp: 80758 (WebCore::createWindowFromFrameLoader): 80759 - Made FrameLoader::createWindow() non-member, non-friend and changed it 80760 to accept Frame* parameters instead of FrameLoader*. 80761 * loader/FrameLoader.h: 80762 - Updated the header file to reflect the above change to FrameLoader.cpp. 80763 80764 2010-08-11 Ilya Tikhonovsky <loislo (a] chromium.org> 80765 80766 Reviewed by Pavel Feldman. 80767 80768 WebInspector: small refactoring for CodeGeneratorInspector. 80769 all "notify" methods are generating in InspectorFrontend 80770 the other methods are generating in InspectorBackend. 80771 https://bugs.webkit.org/show_bug.cgi?id=43849 80772 80773 * inspector/CodeGeneratorInspector.pm: 80774 80775 2010-08-11 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 80776 80777 Reviewed by Xan Lopez. 80778 80779 [GTK] Misc improvements to the scrolling code 80780 https://bugs.webkit.org/show_bug.cgi?id=41926 80781 80782 Refactor code that uses deprecated ways of dealing with the 80783 adjustments to use the GtkVersioning infrastructure. 80784 80785 * GNUmakefile.am: 80786 * platform/gtk/GtkVersioning.cpp: Added. 80787 * platform/gtk/GtkVersioning.h: 80788 * platform/gtk/ScrollViewGtk.cpp: 80789 * platform/gtk/ScrollbarGtk.cpp: 80790 (ScrollbarGtk::detachAdjustment): 80791 (ScrollbarGtk::updateThumbPosition): 80792 (ScrollbarGtk::updateThumbProportion): 80793 80794 2010-08-11 Nate Chapin <japhet (a] chromium.org> 80795 80796 Chromium mac build fix (variables weren't being initialized). 80797 80798 * platform/graphics/filters/FEGaussianBlur.cpp: 80799 (WebCore::FEGaussianBlur::apply): Initalize dxLeft, dxRight, dyLeft, dyRight. 80800 80801 2010-08-11 Pavel Feldman <pfeldman (a] chromium.org> 80802 80803 Reviewed by Yury Semikhatsky. 80804 80805 Web Inspector: apply correct fix to storage panel status bar buttons. 80806 80807 https://bugs.webkit.org/show_bug.cgi?id=43846 80808 80809 * inspector/front-end/DatabaseTableView.js: 80810 (WebInspector.DatabaseTableView.prototype.get statusBarItems): 80811 * inspector/front-end/StoragePanel.js: 80812 (WebInspector.StoragePanel.prototype._genericViewSetup): 80813 80814 2010-08-11 Kevin Ollivier <kevino (a] theolliviers.com> 80815 80816 Reviewed by Adam Barth. 80817 80818 Override operator= for C++ DOM binding classes with private structs 80819 and update C++ DOM bindings test results. 80820 https://bugs.webkit.org/show_bug.cgi?id=43735 80821 80822 * bindings/cpp/WebDOMEventTarget.cpp: 80823 (WebDOMEventTarget::operator=): 80824 * bindings/cpp/WebDOMEventTarget.h: 80825 * bindings/scripts/CodeGeneratorCPP.pm: 80826 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: 80827 (WebDOMTestCallback::operator=): 80828 * bindings/scripts/test/CPP/WebDOMTestCallback.h: 80829 * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: 80830 (WebDOMTestInterface::operator=): 80831 * bindings/scripts/test/CPP/WebDOMTestInterface.h: 80832 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 80833 (WebDOMTestObj::operator=): 80834 * bindings/scripts/test/CPP/WebDOMTestObj.h: 80835 80836 2010-08-11 Julie Parent <jparent (a] chromium.org> 80837 80838 Reviewed by Justin Garcia. 80839 80840 Crash in replaceSelectionCommand with RTL text. 80841 https://bugs.webkit.org/show_bug.cgi?id=41485 80842 80843 For text with mixed directionality, sort the text boxes before 80844 computing gaps, since that code assumes the boxes are in order. 80845 80846 Test: editing/execCommand/insert-image-on-top-of-directional-text.html 80847 80848 * editing/CompositeEditCommand.cpp: 80849 (WebCore::CompositeEditCommand::deleteInsignificantText): Sort boxes 80850 like we do in TextIterator before computing gaps. 80851 * editing/TextIterator.cpp: 80852 (WebCore::TextIterator::handleTextNode): Use new compareByStart 80853 rather than compareBoxStart. No functional change. 80854 * rendering/InlineTextBox.h: 80855 (WebCore::InlineTextBox::compareByStart): Moved compareBoxStart 80856 from TextIterator here so it can be used in multiple places. 80857 80858 2010-08-11 Fumitoshi Ukai <ukai (a] chromium.org> 80859 80860 Unreviewed build fix of Leopard Intel Debug (Build) 80861 80862 * websockets/WebSocketChannel.cpp: 80863 (WebCore::WebSocketChannel::processBuffer): use %lu, instead of %ul 80864 80865 2010-08-11 Alejandro G. Castro <alex (a] igalia.com> 80866 80867 Reviewed by Dirk Schulze. 80868 80869 Fixes to the gaussian blur algorithm 80870 https://bugs.webkit.org/show_bug.cgi?id=41605 80871 80872 Added the recomendations of SVG regarding the kernel size 80873 calculation for the approximation of the gaussian 80874 blur. http://www.w3.org/TR/SVG/filters.html#feGaussianBlurElement. 80875 Modified also some variable names to clarify algorithm, reviewed 80876 the situation where both standard deviations are 0. 80877 80878 * platform/graphics/filters/FEGaussianBlur.cpp: 80879 (WebCore::FEGaussianBlur::FEGaussianBlur): 80880 (WebCore::FEGaussianBlur::stdDeviationX): 80881 (WebCore::FEGaussianBlur::setStdDeviationX): 80882 (WebCore::FEGaussianBlur::stdDeviationY): 80883 (WebCore::FEGaussianBlur::setStdDeviationY): 80884 (WebCore::boxBlur): 80885 (WebCore::FEGaussianBlur::kernelPosition): Added the SVG kernel 80886 position recomendation. 80887 (WebCore::FEGaussianBlur::apply): 80888 (WebCore::FEGaussianBlur::externalRepresentation): 80889 * platform/graphics/filters/FEGaussianBlur.h: 80890 80891 2010-08-11 Kristian Monsen <kristianm (a] google.com> 80892 80893 Reviewed by Steve Block. 80894 80895 Compile fix for Android, added include for <wtf/text/Cstring.h, this 80896 did not get included in Android. 80897 https://bugs.webkit.org/show_bug.cgi?id=41517 80898 80899 Build fix only, no new tests. 80900 80901 * page/PrintContext.cpp: 80902 80903 2010-08-11 Fumitoshi Ukai <ukai (a] chromium.org> 80904 80905 Reviewed by Alexey Proskuryakov. 80906 80907 Fix length calculation to be more robust. 80908 https://bugs.webkit.org/show_bug.cgi?id=43777 80909 80910 Test: websocket/tests/frame-length-overflow.html 80911 80912 * websockets/WebSocketChannel.cpp: 80913 (WebCore::WebSocketChannel::appendToBuffer): len is size_t. 80914 - add sanity check for integer wraps. 80915 (WebCore::WebSocketChannel::skipBuffer): len is size_t. 80916 (WebCore::WebSocketChannel::processBuffer): length is size_t. 80917 - add sanity check for integer wraps. 80918 * websockets/WebSocketChannel.h: change m_bufferSize and len to size_t. 80919 80920 2010-08-10 Eric Seidel <eric (a] webkit.org> 80921 80922 Reviewed by Adam Barth. 80923 80924 Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode 80925 https://bugs.webkit.org/show_bug.cgi?id=43762 80926 80927 In fixing the insertAdjacentHTML I had to make small changes to 80928 the error logic, which ended up bringing us closer to HTML5. 80929 80930 Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html 80931 80932 * html/HTMLConstructionSite.cpp: 80933 (WebCore::HTMLConstructionSite::attach): 80934 - This ASSERT was just wrong, the child should not be attached 80935 in the case the parent is not attached. 80936 * html/HTMLElement.cpp: 80937 (WebCore::contextElementForInsertion): 80938 - This is part of HTML5, needed to know what to call the 80939 HTML or XML parsers with. The previous code always passed 80940 "this" which is wrong in the case of beforeBegin or afterEnd insertion. 80941 (WebCore::HTMLElement::insertAdjacentHTML): 80942 - Use the right contextElement now that we know how to compute it. 80943 * html/HTMLTreeBuilder.cpp: 80944 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 80945 - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug. 80946 80947 2010-08-11 Adam Barth <abarth (a] webkit.org> 80948 80949 Attempt to fix Windows build. 80950 80951 * platform/win/COMPtr.h: 80952 (WTF::): 80953 80954 2010-08-11 Adam Barth <abarth (a] webkit.org> 80955 80956 Reviewed by Eric Seidel. 80957 80958 Port view-source to new parser 80959 https://bugs.webkit.org/show_bug.cgi?id=43746 80960 80961 This patch switches the view-source mode for frames over to using the 80962 new HTML parsing infrastructure. This patch is an architectural change 80963 to how we parser view source documents. 80964 80965 Previously, the LegacyHTMLDocumentParser would output a "guide string" 80966 that consided of the inter-attribute whitespace and various "control" 80967 characters. The HTMLViewSourceDocument would then interpret this guide 80968 string to approximately reconstruct the source of the original document 80969 and colorize various syntatic constructs. 80970 80971 Unfortunately, that approach is inherently low-fidelity. It's not 80972 really feasible to reconstruct the input document from the token 80973 stream. The old view source mode also had a number of hacks in the old 80974 parser (e.g., to turn of decoding of HTML entities). 80975 80976 Instead of trying to reconstruct the original document from the token 80977 stream, we use the segmentation information given by the tokens to 80978 colorize the input document itself. Each token now caries information 80979 about where in the input stream it came from and where various 80980 subcomponents (e.g., attribute names and values) are located. This 80981 approach is higher fidelity because we use this segmentation 80982 information to colorize the original input instead of attempting to 80983 reconstruct the original input. 80984 80985 * Android.mk: 80986 * CMakeLists.txt: 80987 * GNUmakefile.am: 80988 * WebCore.gypi: 80989 * WebCore.pro: 80990 * WebCore.vcproj/WebCore.vcproj: 80991 * WebCore.xcodeproj/project.pbxproj: 80992 * html/HTMLDocumentParser.cpp: 80993 * html/HTMLToken.h: 80994 (WebCore::HTMLToken::clear): 80995 (WebCore::HTMLToken::startIndex): 80996 (WebCore::HTMLToken::length): 80997 (WebCore::HTMLToken::end): 80998 * html/HTMLViewSourceDocument.cpp: 80999 (WebCore::HTMLViewSourceDocument::createParser): 81000 (WebCore::HTMLViewSourceDocument::addSource): 81001 (WebCore::HTMLViewSourceDocument::processDoctypeToken): 81002 (WebCore::HTMLViewSourceDocument::processTagToken): 81003 (WebCore::HTMLViewSourceDocument::processCommentToken): 81004 (WebCore::HTMLViewSourceDocument::processCharacterToken): 81005 (WebCore::HTMLViewSourceDocument::addRange): 81006 * html/HTMLViewSourceDocument.h: 81007 * html/HTMLViewSourceParser.cpp: Added. 81008 (WebCore::HTMLViewSourceParser::~HTMLViewSourceParser): 81009 (WebCore::HTMLViewSourceParser::insert): 81010 (WebCore::HTMLViewSourceParser::pumpTokenizer): 81011 (WebCore::HTMLViewSourceParser::append): 81012 (WebCore::HTMLViewSourceParser::sourceForToken): 81013 (WebCore::HTMLViewSourceParser::updateTokenizerState): 81014 (WebCore::HTMLViewSourceParser::finish): 81015 (WebCore::HTMLViewSourceParser::finishWasCalled): 81016 * html/HTMLViewSourceParser.h: Added. 81017 (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): 81018 (WebCore::HTMLViewSourceParser::document): 81019 * html/LegacyHTMLDocumentParser.cpp: 81020 (WebCore::LegacyHTMLDocumentParser::processToken): 81021 (WebCore::LegacyHTMLDocumentParser::processDoctypeToken): 81022 81023 2010-08-11 Yoshiki Hayashi <yhayashi (a] google.com> 81024 81025 Reviewed by Shinichiro Hamaji. 81026 81027 Make form controls, textarea, legend and datagrid treat width: 81028 auto as specified in stretching vertical flexbox. Otherwise it's 81029 treated as intrinsic as before. 81030 https://bugs.webkit.org/show_bug.cgi?id=17918 81031 81032 Test: fast/flexbox/vertical-box-form-controls.html 81033 81034 * css/CSSStyleSelector.cpp: 81035 (WebCore::CSSStyleSelector::adjustRenderStyle): 81036 * rendering/RenderBox.cpp: 81037 (WebCore::RenderBox::sizesToIntrinsicWidth): 81038 81039 2010-08-10 Darin Adler <darin (a] apple.com> 81040 81041 Reviewed by Sam Weinig. 81042 81043 Add leakRef and clear to all RefPtr variants 81044 https://bugs.webkit.org/show_bug.cgi?id=42389 81045 81046 * platform/win/COMPtr.h: Changed all uses of "template <...>" to instead do 81047 "template<...>". Defined many of the inlined functions outside the class 81048 definition, to avoid style checker warnings about multiple statements on 81049 a single line and for slightly better clarity of the class definition itself. 81050 Renamed releaseRef to leakRef. Added a releaseRef that calls leakRef so we 81051 don't have to rename all callers at once. Added a clear function. Changed 81052 the hash table code so it doesn't need to call releaseRef, and so it uses 81053 the hash table deleted value hooks already present within the class. 81054 81055 2010-08-10 Ariya Hidayat <ariya (a] sencha.com> 81056 81057 [Qt] Fix build warning: remove reference to html/BlobRegistryImp.h 81058 81059 * WebCore.pro: 81060 81061 2010-08-10 Alexey Proskuryakov <ap (a] apple.com> 81062 81063 Reviewed by Darin Adler. 81064 81065 https://bugs.webkit.org/show_bug.cgi?id=43803 81066 <rdar://problem/6988023> Only the last Korean character can be shown if font style is enabled while typing (43803) 81067 81068 Test: platform/mac/editing/input/bold-node.html 81069 81070 * editing/Editor.cpp: (WebCore::Editor::setComposition): It is not clear to me what the 81071 "baseNode == extentNode" check is about in this function , but let's try to make it more 81072 likely that it passes. 81073 81074 2010-08-10 Hayato Ito <hayato (a] chromium.org> 81075 81076 Reviewed by Kent Tamura. 81077 81078 Make CSSSelector::specificity() non-recursive. 81079 https://bugs.webkit.org/show_bug.cgi?id=43784 81080 81081 This change is one of the required changes to fix the following master bug: 81082 https://bugs.webkit.org/show_bug.cgi?id=42806 81083 81084 No functional change, thus no tests. 81085 81086 * css/CSSSelector.cpp: 81087 (WebCore::CSSSelector::specificity): 81088 (WebCore::CSSSelector::specificityForOneSelector): 81089 (WebCore::CSSSelector::specificityForPage): 81090 * css/CSSSelector.h: 81091 81092 2010-08-10 Matthew Delaney <mdelaney (a] apple.com> 81093 81094 Reviewed by Darin Adler. 81095 81096 2d.path.clip.empty.html test is failing 81097 https://bugs.webkit.org/show_bug.cgi?id=43161 81098 81099 * platform/graphics/cg/GraphicsContextCG.cpp: 81100 (WebCore::GraphicsContext::clip): 81101 Catching the empty path case from being sent directly to 81102 CGContextClip - which would ignore it. Instead, using 81103 CGContextClip with a CGRectZero to achieve the desired 81104 behavior of reducing the clipping region to nothing. 81105 81106 2010-08-10 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 81107 81108 Reviewed by Antonio Gomes. 81109 81110 [EFL] Add video files to enable video in WebKit EFL 81111 https://bugs.webkit.org/show_bug.cgi?id=43790 81112 81113 Add files regarding html5 video to CMakeList.txt for WebKit Efl. 81114 But, this patch is not run html5 video on WebKit EFL yet. 81115 81116 * CMakeLists.txt: Add files related to html5video. 81117 * platform/efl/LocalizedStringsEfl.cpp: Add functions for html5 video. 81118 (WebCore::localizedMediaControlElementString): 81119 (WebCore::localizedMediaControlElementHelpText): 81120 (WebCore::localizedMediaTimeDescription): 81121 * platform/graphics/MediaPlayer.cpp: 81122 (WebCore::installedMediaEngines): Disable MediaPlayerPrivate::r 81123 egisterMediaEngine for WebKit EFL. 81124 81125 2010-08-10 Patrick Gansterer <paroga (a] paroga.com> 81126 81127 Reviewed by Nikolas Zimmermann. 81128 81129 Add a toRenderSVGImage function 81130 https://bugs.webkit.org/show_bug.cgi?id=43789 81131 81132 Add a function for casting to RenderSVGImage and use it. 81133 81134 * rendering/RenderSVGImage.h: 81135 (WebCore::toRenderSVGImage): 81136 * rendering/RenderTreeAsText.cpp: 81137 (WebCore::write): 81138 * rendering/SVGRenderTreeAsText.cpp: 81139 (WebCore::writeSVGImage): 81140 * rendering/SVGRenderTreeAsText.h: 81141 * svg/SVGImageElement.cpp: 81142 (WebCore::SVGImageElement::attach): 81143 81144 2010-08-10 Adam Barth <abarth (a] webkit.org> 81145 81146 Reviewed by Eric Seidel. 81147 81148 Clients of HTMLTokenizer should be able to see where characters went in the token 81149 https://bugs.webkit.org/show_bug.cgi?id=43766 81150 81151 When viewing the source of a document, we want to colorize different 81152 parts of the input depending on how they were tokenized. In this 81153 patch, we expose the internal segmentation of a token by recording the 81154 start and end offsets for each attribute name and each attribute value. 81155 81156 * html/HTMLToken.h: 81157 (WebCore::HTMLToken::addNewAttribute): 81158 (WebCore::HTMLToken::beginAttributeName): 81159 (WebCore::HTMLToken::endAttributeName): 81160 (WebCore::HTMLToken::beginAttributeValue): 81161 (WebCore::HTMLToken::endAttributeValue): 81162 (WebCore::HTMLToken::appendToAttributeName): 81163 (WebCore::HTMLToken::appendToAttributeValue): 81164 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 81165 * html/HTMLTokenizer.cpp: 81166 (WebCore::HTMLTokenizer::nextToken): 81167 81168 2010-08-10 Dumitru Daniliuc <dumi (a] chromium.org> 81169 81170 Reviewed by David Levin. 81171 81172 Do not post a sync task to the DB thread if it's terminating. 81173 https://bugs.webkit.org/show_bug.cgi?id=43676 81174 81175 * bindings/generic/ActiveDOMCallback.cpp: The context can 81176 sometimes be NULL. Check if it's NULL instead of asserting that 81177 it's not. 81178 (WebCore::ActiveDOMCallback::ActiveDOMCallback): 81179 * dom/ActiveDOMObject.cpp: 81180 (WebCore::ActiveDOMObject::ActiveDOMObject): 81181 81182 * storage/Database.cpp: Do not post a sync task to the DB thread 81183 if the DB thread is terminating. Also, when a task is destroyed, 81184 ASSERT that it was completed, or that it had no synchronizer. 81185 (WebCore::Database::openAndVerifyVersion): 81186 (WebCore::Database::markAsDeletedAndClose): 81187 (WebCore::Database::tableNames): 81188 * storage/DatabaseTask.cpp: 81189 (WebCore::DatabaseTaskSynchronizer::DatabaseTaskSynchronizer): 81190 (WebCore::DatabaseTask::~DatabaseTask): 81191 (WebCore::DatabaseTask::performTask): 81192 * storage/DatabaseTask.h: 81193 (WebCore::DatabaseTaskSynchronizer::hasCheckedForTermination): 81194 (WebCore::DatabaseTaskSynchronizer::setHasCheckedForTermination): 81195 (WebCore::DatabaseTask::hasSynchronizer): 81196 (WebCore::DatabaseTask::hasCheckedForTermination): 81197 * storage/DatabaseThread.cpp: 81198 (WebCore::DatabaseThread::terminationRequested): 81199 (WebCore::DatabaseThread::scheduleTask): 81200 (WebCore::DatabaseThread::scheduleImmediateTask): 81201 * storage/DatabaseThread.h: 81202 81203 2010-08-10 Gavin Barraclough <barraclough (a] apple.com> 81204 81205 Qt build fix. 81206 81207 * bridge/qt/qt_runtime.cpp: 81208 (JSC::Bindings::convertValueToQVariant): 81209 81210 2010-08-10 Jian Li <jianli (a] chromium.org> 81211 81212 Fix more build break. 81213 81214 * bindings/v8/SerializedScriptValue.cpp: 81215 (WebCore::ZigZag::Reader::readBlob): 81216 (WebCore::ZigZag::Reader::readFile): 81217 * dom/ScriptExecutionContext.cpp: 81218 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 81219 (WebCore::ScriptExecutionContext::revokeBlobURL): 81220 * dom/ScriptExecutionContext.h: 81221 * html/Blob.cpp: 81222 (WebCore::Blob::slice): 81223 81224 2010-08-10 Gavin Barraclough <barraclough (a] apple.com> 81225 81226 Rubber stamped by Sam Weinig 81227 81228 Bug 43817 - Remove UString::Rep 81229 UString::Rep has for a long time been replaced by UStringImpl (Rep 81230 remaining as a typedef). UStringImpl has since been removed too 81231 (unified with StringImpl). Remove Rep, rename rep() to impl() and 81232 m_rep to m_impl. Also add impl() method to Identifier, and rename 81233 its UString member from _ustring to m_string. 81234 81235 * bindings/js/JSDOMBinding.cpp: 81236 (WebCore::findAtomicString): 81237 * bindings/js/JSDOMBinding.h: 81238 (WebCore::ustringToString): 81239 (WebCore::identifierToString): 81240 (WebCore::ustringToAtomicString): 81241 (WebCore::identifierToAtomicString): 81242 * bindings/js/SerializedScriptValue.h: 81243 (WebCore::SerializedScriptValueData::SerializedScriptValueData): 81244 * bridge/IdentifierRep.cpp: 81245 (WebCore::IdentifierRep::get): 81246 * bridge/c/c_class.cpp: 81247 (JSC::Bindings::CClass::methodsNamed): 81248 (JSC::Bindings::CClass::fieldNamed): 81249 * bridge/jni/jsc/JavaClassJSC.cpp: 81250 (JavaClass::JavaClass): 81251 (JavaClass::methodsNamed): 81252 (JavaClass::fieldNamed): 81253 * bridge/jni/jsc/JavaStringJSC.h: 81254 (JSC::Bindings::JavaStringImpl::~JavaStringImpl): 81255 (JSC::Bindings::JavaStringImpl::init): 81256 (JSC::Bindings::JavaStringImpl::UTF8String): 81257 (JSC::Bindings::JavaStringImpl::uchars): 81258 (JSC::Bindings::JavaStringImpl::length): 81259 (JSC::Bindings::JavaStringImpl::uString): 81260 * bridge/jsc/BridgeJSC.h: 81261 81262 2010-08-10 Jian Li <jianli (a] chromium.org> 81263 81264 Fix qt build break. 81265 81266 * html/BlobRegistryImpl.cpp: 81267 * html/BlobRegistryImpl.h: 81268 * html/BlobURL.cpp: 81269 * html/BlobURL.h: 81270 * platform/BlobRegistry.h: 81271 81272 2010-08-10 Jian Li <jianli (a] chromium.org> 81273 81274 Reviewed by David Levin. 81275 81276 Add the support to register the blob data. 81277 https://bugs.webkit.org/show_bug.cgi?id=43600 81278 81279 This is the first step towards adding Blob URL support. The blob has 81280 an internal URL (used by FileReader) and public URLs (used by Blob.url). 81281 The URL and its associated data are managed by BlobRegistry interface. 81282 81283 This patch does not remove the usage of BlobItem. It will be removed 81284 when all the blob data support is hooked up and the new tests will be 81285 added then. 81286 81287 * CMakeLists.txt: 81288 * GNUmakefile.am: 81289 * WebCore.gypi: 81290 * WebCore.pro: 81291 * WebCore.vcproj/WebCore.vcproj: 81292 * WebCore.xcodeproj/project.pbxproj: 81293 * bindings/js/SerializedScriptValue.cpp: 81294 (WebCore::SerializedBlob::create): 81295 (WebCore::SerializedBlob::url): 81296 (WebCore::SerializedBlob::type): 81297 (WebCore::SerializedBlob::size): 81298 (WebCore::SerializedBlob::SerializedBlob): 81299 (WebCore::SerializedFile::create): 81300 (WebCore::SerializedFile::path): 81301 (WebCore::SerializedFile::url): 81302 (WebCore::SerializedFile::type): 81303 (WebCore::SerializedFile::SerializedFile): 81304 (WebCore::SerializedFileList::item): 81305 (WebCore::SerializedFileList::SerializedFileList): 81306 (WebCore::SerializedScriptValueData::SerializedScriptValueData): 81307 (WebCore::SharedSerializedData::asBlob): 81308 (WebCore::SharedSerializedData::asFile): 81309 (WebCore::SerializingTreeWalker::convertIfTerminal): 81310 (WebCore::DeserializingTreeWalker::convertIfTerminal): 81311 (WebCore::TeardownTreeWalker::convertIfTerminal): 81312 * bindings/js/SerializedScriptValue.h: 81313 (WebCore::SerializedScriptValueData::): 81314 (WebCore::SerializedScriptValueData::asString): 81315 (WebCore::SerializedScriptValueData::asBlob): 81316 (WebCore::SerializedScriptValueData::asFile): 81317 * bindings/v8/SerializedScriptValue.cpp: 81318 (WebCore::ZigZag::Writer::writeBlob): 81319 (WebCore::ZigZag::Writer::writeFile): 81320 (WebCore::ZigZag::Writer::writeFileList): 81321 (WebCore::ZigZag::Writer::doWriteUintHelper): 81322 (WebCore::ZigZag::Writer::doWriteUint32): 81323 (WebCore::ZigZag::Writer::doWriteUint64): 81324 (WebCore::ZigZag::Serializer::writeBlob): 81325 (WebCore::ZigZag::Serializer::writeFile): 81326 (WebCore::ZigZag::Reader::readBlob): 81327 (WebCore::ZigZag::Reader::readFile): 81328 (WebCore::ZigZag::Reader::readFileList): 81329 (WebCore::ZigZag::Reader::doReadUintHelper): 81330 (WebCore::ZigZag::Reader::doReadUint32): 81331 (WebCore::ZigZag::Reader::doReadUint64): 81332 * dom/ScriptExecutionContext.cpp: 81333 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 81334 (WebCore::ScriptExecutionContext::trackBlobURL): 81335 (WebCore::ScriptExecutionContext::revokeBlobURL): 81336 * dom/ScriptExecutionContext.h: 81337 * html/Blob.cpp: 81338 (WebCore::Blob::Blob): 81339 (WebCore::Blob::~Blob): 81340 (WebCore::Blob::createPublicURL): 81341 * html/Blob.h: 81342 (WebCore::Blob::create): 81343 (WebCore::Blob::url): 81344 * html/BlobRegistryImpl.cpp: Added. 81345 * html/BlobRegistryImpl.h: Added. 81346 * html/BlobStorageData.h: Added. 81347 * html/BlobURL.cpp: Added. 81348 * html/BlobURL.h: Added. 81349 * html/File.cpp: 81350 (WebCore::File::File): 81351 * html/File.h: 81352 (WebCore::File::create): 81353 * platform/BlobData.cpp: Added. 81354 * platform/BlobData.h: Added. 81355 * platform/BlobRegistry.h: Added. 81356 81357 2010-08-10 Adam Barth <abarth (a] webkit.org> 81358 81359 Reviewed by Eric Seidel. 81360 81361 SegmentedString should keep track of how many characters it consumes 81362 https://bugs.webkit.org/show_bug.cgi?id=43765 81363 81364 The easiest way to keep track of how many characters we've consumed 81365 would be to increment a counter every time we advance, but that's too 81366 slow. Instead, we keep track lazily and update our summary durning the 81367 slow case of advance (which is sufficiently rare). 81368 81369 There's some subtly to how this works w.r.t. "unconsuming" characters 81370 by pushing them back on the front of the segmented string. This isn't 81371 really a "right answer" here because the notion of unconsuming input 81372 isn't present in the API. This patch makes some assumptions about how 81373 clients of this class use its API. In a future patch, we might want to 81374 rename some of the method names to make this more explicit. 81375 81376 * platform/text/SegmentedString.cpp: 81377 (WebCore::SegmentedString::operator=): 81378 (WebCore::SegmentedString::append): 81379 (WebCore::SegmentedString::prepend): 81380 (WebCore::SegmentedString::advanceSubstring): 81381 * platform/text/SegmentedString.h: 81382 (WebCore::SegmentedSubstring::numberOfCharactersConsumed): 81383 (WebCore::SegmentedString::SegmentedString): 81384 (WebCore::SegmentedString::numberOfCharactersConsumed): 81385 81386 2010-08-10 Gavin Barraclough <barraclough (a] apple.com> 81387 81388 Rubber stamped by Sam Weinig. 81389 81390 Bug 43816 - Remove UStringImpl 81391 The class was actually removed a long time ago, replaced by StringImpl. 81392 UStringImpl is just a typedef onto StringImpl. Remove this. 81393 81394 * WebCore.xcodeproj/project.pbxproj: 81395 * bindings/js/JSDOMBinding.cpp: 81396 (WebCore::findAtomicString): 81397 81398 2010-08-09 Stephen White <senorblanco (a] chromium.org> 81399 81400 Reviewed by David Levin. 81401 81402 Prefer the medium-quality (bilinear) image resampling for 2D canvas on 81403 Chromium. 81404 https://bugs.webkit.org/show_bug.cgi?id=43646 81405 81406 This is what the accelerated path is going to do, 81407 so do it in the software path as well. 81408 81409 * html/HTMLCanvasElement.cpp: 81410 (WebCore::HTMLCanvasElement::createImageBuffer): 81411 * platform/graphics/GraphicsContext.h: 81412 81413 2010-08-10 Chris Fleizach <cfleizach (a] apple.com> 81414 81415 Reviewed by Dave Hyatt. 81416 81417 Removing an element from an anonymous block causes crash 81418 https://bugs.webkit.org/show_bug.cgi?id=42309 81419 81420 There was a case where a continuation was added as a child, but if you asked 81421 that child who is your parent, it would return the wrong answer. 81422 81423 The specific scenario was when a sibling of an element who was the start of a 81424 continuation was present. Retrieving the parent object had then follow the sibling 81425 chain and then follow the originating continuation chain. 81426 81427 Test: accessibility/removed-anonymous-block-child-causes-crash.html 81428 81429 * accessibility/AccessibilityRenderObject.cpp: 81430 (WebCore::AccessibilityRenderObject::nextSibling): 81431 Fix erroneous comment 81432 (WebCore::nextContinuation): 81433 (WebCore::AccessibilityRenderObject::renderParentObject): 81434 Handle unhandled continuation case. 81435 (WebCore::AccessibilityRenderObject::addChildren): 81436 ASSERT that the parentObject() is the same when adding a new child. 81437 81438 2010-08-10 Abhishek Arya <inferno (a] chromium.org> 81439 81440 Reviewed by David Hyatt. 81441 81442 Take checks for ruby base existence out of the ASSERTs. 81443 https://bugs.webkit.org/show_bug.cgi?id=43795 81444 81445 Test: fast/ruby/ruby-remove-no-base.html 81446 81447 * rendering/RenderRubyRun.cpp: 81448 (WebCore::RenderRubyRun::addChild): 81449 (WebCore::RenderRubyRun::removeChild): 81450 81451 2010-08-06 Zhenyao Mo <zmo (a] google.com> 81452 81453 Reviewed by Dimitri Glazkov. 81454 81455 texture functions should gen INVALID_OPERATION if no texture is bound 81456 https://bugs.webkit.org/show_bug.cgi?id=42907 81457 81458 * html/canvas/WebGLRenderingContext.cpp: 81459 (WebCore::WebGLRenderingContext::copyTexImage2D): Check if a texture is bound to target. 81460 (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto. 81461 (WebCore::WebGLRenderingContext::generateMipmap): Ditto. 81462 (WebCore::WebGLRenderingContext::getTexParameter): Ditto. 81463 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. 81464 (WebCore::WebGLRenderingContext::texParameter): Ditto. 81465 (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto. 81466 (WebCore::WebGLRenderingContext::validateTextureBinding): Check if target is valid and if a texture is bound to it. 81467 * html/canvas/WebGLRenderingContext.h: Declare validateTextureBinding(). 81468 81469 2010-08-10 Patrick Gansterer <paroga (a] paroga.com> 81470 81471 Reviewed by Sam Weinig. 81472 81473 [WINCE] Implement Path::currentPoint() 81474 https://bugs.webkit.org/show_bug.cgi?id=42927 81475 81476 * platform/graphics/wince/PathWince.cpp: 81477 (WebCore::Path::currentPoint): 81478 81479 2010-08-10 Ariya Hidayat <ariya (a] sencha.com> 81480 81481 [Qt] Warning fix, remove reference to platform/text/StringImpl.h 81482 81483 * WebCore.pro: 81484 81485 2010-08-10 Alice Liu <alice.liu (a] apple.com> 81486 81487 Chromium build fix attempt. not reviewed 81488 81489 * platform/text/TextBoundaries.cpp: use correct stringimplh include 81490 81491 2010-08-10 Jian Li <jianli (a] chromium.org> 81492 81493 Chromium build fix. 81494 81495 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 81496 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 81497 81498 2010-08-10 Johnny Ding <jnd (a] chromium.org> 81499 81500 Reviewed by Adam Barth. 81501 81502 Change the ScriptController::processingUserGesture to static method 81503 and use dynamic(JSC binding)/entered(V8 binding) frame to check the user gesture. 81504 https://bugs.webkit.org/show_bug.cgi?id=42827. 81505 81506 Test: fast/events/popup-blocked-from-iframe-script.html 81507 81508 * WebCore.order: 81509 * bindings/js/JSDOMBinding.cpp: 81510 (WebCore::processingUserGesture): 81511 * bindings/js/JSDOMBinding.h: 81512 * bindings/js/JSDOMWindowCustom.cpp: 81513 (WebCore::JSDOMWindow::setLocation): 81514 (WebCore::createWindow): 81515 (WebCore::domWindowAllowPopUp): 81516 (WebCore::JSDOMWindow::open): 81517 (WebCore::JSDOMWindow::showModalDialog): 81518 * bindings/js/JSDocumentCustom.cpp: 81519 (WebCore::JSDocument::setLocation): 81520 * bindings/js/JSLocationCustom.cpp: 81521 (WebCore::navigateIfAllowed): 81522 (WebCore::JSLocation::reload): 81523 * bindings/js/ScriptController.cpp: 81524 (WebCore::ScriptController::processingUserGesture): 81525 * bindings/js/ScriptController.h: 81526 * bindings/scripts/CodeGeneratorJS.pm: 81527 * bindings/scripts/test/JS/JSTestObj.cpp: 81528 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 81529 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 81530 * bindings/v8/ScriptController.cpp: 81531 (WebCore::ScriptController::processingUserGesture): 81532 (WebCore::ScriptController::anyPageIsProcessingUserGesture): 81533 * bindings/v8/ScriptController.h: 81534 * bindings/v8/specialization/V8BindingState.cpp: 81535 (WebCore::::processingUserGesture): 81536 * loader/FrameLoader.cpp: 81537 (WebCore::FrameLoader::isProcessingUserGesture): 81538 81539 2010-08-10 Gavin Barraclough <barraclough (a] apple.com> 81540 81541 Chromium build fix 81542 81543 * platform/graphics/chromium/FontPlatformDataLinux.h: 81544 81545 2010-08-10 Gavin Barraclough <barraclough (a] apple.com> 81546 81547 Rubber stamped by Sam Weinig. 81548 81549 Bug 43786 - Move AtomicStringHash from WebCore to WTF 81550 Also remove deprecated string headers from WebCore/platform/text. 81551 81552 * ForwardingHeaders/wtf/text/AtomicStringHash.h: Added. 81553 * GNUmakefile.am: 81554 * WebCore.gypi: 81555 * WebCore.pro: 81556 * WebCore.vcproj/WebCore.vcproj: 81557 * WebCore.xcodeproj/project.pbxproj: 81558 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 81559 * bindings/cpp/WebDOMHTMLCollectionCustom.cpp: 81560 * bindings/js/JSCSSStyleDeclarationCustom.cpp: 81561 * bindings/js/JSClipboardCustom.cpp: 81562 * bindings/js/JSDOMApplicationCacheCustom.cpp: 81563 * bindings/js/JSDOMMimeTypeArrayCustom.cpp: 81564 * bindings/js/JSDOMPluginArrayCustom.cpp: 81565 * bindings/js/JSDOMPluginCustom.cpp: 81566 * bindings/js/JSDOMStringMapCustom.cpp: 81567 * bindings/js/JSDOMWindowCustom.cpp: 81568 * bindings/js/JSDataGridColumnListCustom.cpp: 81569 * bindings/js/JSHTMLAllCollectionCustom.cpp: 81570 * bindings/js/JSHTMLCollectionCustom.cpp: 81571 * bindings/js/JSMessagePortCustom.cpp: 81572 * bindings/js/JSNodeListCustom.cpp: 81573 * bindings/scripts/CodeGeneratorCPP.pm: 81574 * bindings/scripts/CodeGeneratorJS.pm: 81575 * bindings/scripts/CodeGeneratorV8.pm: 81576 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: 81577 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 81578 * bindings/scripts/test/V8/V8TestInterface.h: 81579 * bindings/scripts/test/V8/V8TestObj.h: 81580 * bindings/v8/ScriptDebugServer.h: 81581 * bindings/v8/V8Binding.cpp: 81582 * bindings/v8/V8Binding.h: 81583 * bridge/jni/v8/JavaClassV8.h: 81584 * css/CSSFontFaceSource.h: 81585 * css/CSSFontSelector.cpp: 81586 * css/CSSFontSelector.h: 81587 * css/CSSNamespace.h: 81588 * css/CSSParser.cpp: 81589 * css/CSSParser.h: 81590 * css/CSSParserValues.h: 81591 * css/CSSStyleSelector.h: 81592 * css/CSSVariablesDeclaration.h: 81593 * css/MediaFeatureNames.h: 81594 * css/MediaQueryExp.h: 81595 * css/WebKitCSSKeyframesRule.h: 81596 * dom/CustomEvent.h: 81597 * dom/Document.cpp: 81598 * dom/Event.cpp: 81599 * dom/Event.h: 81600 * dom/EventNames.h: 81601 * dom/EventTarget.h: 81602 * dom/InputElement.h: 81603 * dom/MessagePort.cpp: 81604 * dom/MessagePort.h: 81605 * dom/NameNodeList.h: 81606 * dom/NodeRareData.h: 81607 * dom/QualifiedName.h: 81608 * dom/ScriptElement.cpp: 81609 * dom/SpaceSplitString.h: 81610 * dom/TagNodeList.h: 81611 * dom/XMLDocumentParser.h: 81612 * editing/EditorCommand.cpp: 81613 * history/mac/HistoryItemMac.mm: 81614 * html/BlobBuilder.cpp: 81615 * html/DataGridColumn.h: 81616 * html/DataGridColumnList.cpp: 81617 * html/HTMLDocument.h: 81618 * html/HTMLInputElement.cpp: 81619 * html/HTMLTokenizer.cpp: 81620 * html/HTMLTokenizer.h: 81621 * html/LegacyPreloadScanner.cpp: 81622 * html/LegacyPreloadScanner.h: 81623 * inspector/InspectorCSSStore.h: 81624 * inspector/InspectorController.h: 81625 * inspector/InspectorDOMAgent.cpp: 81626 * inspector/InspectorDOMAgent.h: 81627 * inspector/InspectorDebuggerAgent.h: 81628 * inspector/InspectorValues.h: 81629 * loader/Cache.h: 81630 * loader/CrossOriginAccessControl.cpp: 81631 * loader/CrossOriginPreflightResultCache.h: 81632 * loader/DocLoader.h: 81633 * loader/ImageLoader.h: 81634 * loader/appcache/ApplicationCache.h: 81635 * loader/appcache/ApplicationCacheStorage.h: 81636 * loader/appcache/DOMApplicationCache.h: 81637 * loader/icon/IconDatabase.h: 81638 * loader/icon/IconRecord.h: 81639 * loader/loader.h: 81640 * notifications/Notification.h: 81641 * page/FrameTree.h: 81642 * page/Page.cpp: 81643 * page/PageGroup.h: 81644 * page/SecurityOrigin.h: 81645 * page/Settings.h: 81646 * page/WindowFeatures.cpp: 81647 * page/animation/AnimationBase.h: 81648 * page/animation/AnimationControllerPrivate.h: 81649 * page/animation/CompositeAnimation.h: 81650 * platform/Cookie.h: 81651 * platform/KURL.cpp: 81652 * platform/KURLGoogle.cpp: 81653 * platform/KURLHash.h: 81654 * platform/Length.cpp: 81655 * platform/LinkHash.cpp: 81656 * platform/LinkHash.h: 81657 * platform/MIMETypeRegistry.cpp: 81658 * platform/MIMETypeRegistry.h: 81659 * platform/SchemeRegistry.h: 81660 * platform/ThreadGlobalData.cpp: 81661 * platform/ThreadGlobalData.h: 81662 * platform/cf/BinaryPropertyList.cpp: 81663 * platform/chromium/SearchPopupMenuChromium.cpp: 81664 * platform/efl/ClipboardEfl.cpp: 81665 * platform/efl/CookieJarEfl.cpp: 81666 * platform/efl/PlatformKeyboardEventEfl.cpp: 81667 * platform/graphics/FontCache.cpp: 81668 * platform/graphics/FontFamily.h: 81669 * platform/graphics/MediaPlayer.h: 81670 * platform/graphics/cg/ImageSourceCGWin.cpp: 81671 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 81672 * platform/graphics/chromium/FontCacheLinux.cpp: 81673 * platform/graphics/chromium/FontUtilsChromiumWin.cpp: 81674 * platform/graphics/chromium/LayerChromium.h: 81675 * platform/graphics/filters/Filter.h: 81676 * platform/graphics/mac/FontPlatformData.h: 81677 * platform/graphics/mac/GraphicsLayerCA.h: 81678 * platform/graphics/qt/FontCacheQt.cpp: 81679 * platform/graphics/win/FontCacheWin.cpp: 81680 * platform/graphics/win/FontPlatformDataCGWin.cpp: 81681 * platform/graphics/win/FontPlatformDataCairoWin.cpp: 81682 * platform/graphics/win/FontPlatformDataWin.cpp: 81683 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 81684 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: 81685 * platform/graphics/win/WKCACFLayer.h: 81686 * platform/graphics/wince/FontPlatformData.cpp: 81687 * platform/graphics/wx/FontPlatformData.h: 81688 * platform/gtk/ClipboardGtk.cpp: 81689 * platform/gtk/DataObjectGtk.h: 81690 * platform/haiku/ClipboardHaiku.cpp: 81691 * platform/haiku/CookieJarHaiku.cpp: 81692 * platform/haiku/SearchPopupMenuHaiku.cpp: 81693 * platform/mac/SearchPopupMenuMac.mm: 81694 * platform/mac/ThreadCheck.mm: 81695 * platform/network/CredentialStorage.cpp: 81696 * platform/network/HTTPHeaderMap.h: 81697 * platform/network/cf/DNSCFNet.cpp: 81698 * platform/network/curl/CookieJarCurl.cpp: 81699 * platform/qt/ClipboardQt.cpp: 81700 * platform/text/AtomicString.h: Removed. 81701 * platform/text/AtomicStringHash.h: Removed. 81702 * platform/text/AtomicStringImpl.h: Removed. 81703 * platform/text/AtomicStringKeyedMRUCache.h: 81704 * platform/text/StringBuilder.cpp: 81705 * platform/text/StringHash.h: Removed. 81706 * platform/text/StringImpl.h: Removed. 81707 * platform/text/TextCodecLatin1.cpp: 81708 * platform/text/TextCodecUTF16.cpp: 81709 * platform/text/TextCodecUserDefined.cpp: 81710 * platform/text/cf/HyphenationCF.cpp: 81711 * platform/text/cf/StringImplCF.cpp: 81712 * platform/text/mac/HyphenationMac.mm: 81713 * platform/text/mac/StringImplMac.mm: 81714 * platform/text/transcoder/FontTranscoder.h: 81715 * platform/text/wince/TextCodecWinCE.cpp: 81716 * platform/win/BString.cpp: 81717 * platform/win/ClipboardWin.cpp: 81718 * platform/win/SearchPopupMenuWin.cpp: 81719 * platform/wince/SearchPopupMenuWince.cpp: 81720 * platform/wx/ClipboardWx.cpp: 81721 * plugins/DOMMimeTypeArray.cpp: 81722 * plugins/DOMPlugin.cpp: 81723 * plugins/DOMPluginArray.cpp: 81724 * plugins/PluginDatabase.h: 81725 * plugins/PluginPackage.h: 81726 * plugins/PluginStream.h: 81727 * rendering/RenderApplet.h: 81728 * rendering/RenderText.cpp: 81729 * rendering/style/BindingURI.h: 81730 * rendering/style/ContentData.cpp: 81731 * rendering/style/CounterContent.h: 81732 * rendering/style/CounterDirectives.h: 81733 * rendering/style/KeyframeList.h: 81734 * rendering/style/StyleRareInheritedData.h: 81735 * storage/AbstractDatabase.cpp: 81736 * storage/DatabaseAuthorizer.h: 81737 * storage/DatabaseTracker.h: 81738 * storage/IDBDatabaseBackendImpl.h: 81739 * storage/IDBFactoryBackendImpl.h: 81740 * storage/IDBObjectStoreBackendImpl.h: 81741 * storage/OriginQuotaManager.h: 81742 * storage/OriginUsageRecord.h: 81743 * storage/SQLTransactionCoordinator.h: 81744 * storage/StorageAreaSync.h: 81745 * storage/StorageMap.h: 81746 * storage/StorageNamespaceImpl.cpp: 81747 * storage/chromium/QuotaTracker.h: 81748 * svg/SVGAltGlyphElement.h: 81749 * svg/SVGDocumentExtensions.cpp: 81750 * svg/SVGDocumentExtensions.h: 81751 * svg/SVGFitToViewBox.cpp: 81752 * svg/SVGLangSpace.h: 81753 * svg/animation/SMILTimeContainer.h: 81754 * svg/graphics/filters/SVGFilterBuilder.h: 81755 * websockets/WebSocket.h: 81756 * websockets/WebSocketChannel.cpp: 81757 * websockets/WebSocketHandshake.cpp: 81758 * websockets/WebSocketHandshakeResponse.cpp: 81759 * wml/WMLPageState.h: 81760 * workers/AbstractWorker.h: 81761 * workers/DefaultSharedWorkerRepository.h: 81762 * workers/Worker.h: 81763 * workers/WorkerContext.h: 81764 * xml/XMLHttpRequest.h: 81765 * xml/XMLHttpRequestUpload.cpp: 81766 * xml/XMLHttpRequestUpload.h: 81767 * xml/XPathExpressionNode.h: 81768 * xml/XPathNamespace.h: 81769 * xml/XPathParser.cpp: 81770 * xml/XSLTProcessor.h: 81771 81772 2010-08-10 Pavel Feldman <pfeldman (a] chromium.org> 81773 81774 Not reviewed. Adding changes that escaped from r65072. 81775 81776 Web Inspector: move database processing to native layer. 81777 https://bugs.webkit.org/show_bug.cgi?id=43788 81778 81779 * inspector/front-end/InspectorBackendStub.js: 81780 (WebInspector.InspectorBackendStub): 81781 * inspector/front-end/StoragePanel.js: 81782 (WebInspector.StoragePanel.prototype._genericViewSetup): 81783 81784 2010-08-10 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 81785 81786 Reviewed by Xan Lopez. 81787 81788 [GTK] Inputs of type 'search' have weird looking checkboxes instead of search/clear icons 81789 https://bugs.webkit.org/show_bug.cgi?id=43760 81790 81791 Draw appropriate GTK+ stock images for search/clear icons in search entries. 81792 81793 * platform/gtk/RenderThemeGtk.cpp: 81794 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton): 81795 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): 81796 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): 81797 81798 2010-08-10 Pavel Feldman <pfeldman (a] chromium.org> 81799 81800 Not reviewed. Qt build fix, follow up for r65072. 81801 81802 * inspector/InspectorController.cpp: 81803 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 81804 81805 2010-08-10 Pavel Feldman <pfeldman (a] chromium.org> 81806 81807 Reviewed by Yury Semikhatsky. 81808 81809 Web Inspector: move database processing to native layer. 81810 81811 https://bugs.webkit.org/show_bug.cgi?id=43788 81812 81813 * English.lproj/localizedStrings.js: 81814 * WebCore.gypi: 81815 * bindings/js/JSInjectedScriptHostCustom.cpp: 81816 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 81817 * inspector/CodeGeneratorInspector.pm: 81818 * inspector/InjectedScript.cpp: 81819 (WebCore::InjectedScript::dispatch): 81820 * inspector/InjectedScript.h: 81821 * inspector/InjectedScriptHost.cpp: 81822 * inspector/InjectedScriptHost.h: 81823 * inspector/InjectedScriptHost.idl: 81824 * inspector/Inspector.idl: 81825 * inspector/InspectorBackend.cpp: 81826 (WebCore::InspectorBackend::dispatchOnInjectedScript): 81827 (WebCore::InspectorBackend::executeSQL): 81828 * inspector/InspectorBackend.h: 81829 * inspector/InspectorController.cpp: 81830 (WebCore::InspectorController::connectFrontend): 81831 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 81832 * inspector/InspectorController.h: 81833 * inspector/InspectorDebuggerAgent.h: 81834 * inspector/InspectorStorageAgent.cpp: Added. 81835 (WebCore::): 81836 (WebCore::InspectorStorageAgent::InspectorStorageAgent): 81837 (WebCore::InspectorStorageAgent::~InspectorStorageAgent): 81838 (WebCore::InspectorStorageAgent::executeSQL): 81839 (WebCore::InspectorStorageAgent::clearFrontend): 81840 * inspector/InspectorStorageAgent.h: Added. 81841 (WebCore::InspectorStorageAgent::create): 81842 (WebCore::InspectorStorageAgent::frontend): 81843 * inspector/front-end/Database.js: 81844 (WebInspector.Database.prototype.executeSql): 81845 (WebInspector.sqlTransactionSucceeded): 81846 (WebInspector.sqlTransactionFailed): 81847 * inspector/front-end/DatabaseQueryView.js: 81848 (WebInspector.DatabaseQueryView.prototype._queryFinished): 81849 (WebInspector.DatabaseQueryView.prototype._queryError): 81850 * inspector/front-end/DatabaseTableView.js: 81851 (WebInspector.DatabaseTableView.prototype._queryFinished): 81852 * inspector/front-end/InjectedScript.js: 81853 * inspector/front-end/InjectedScriptAccess.js: 81854 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): 81855 (InjectedScriptAccess._installHandler): 81856 * inspector/front-end/StoragePanel.js: 81857 (WebInspector.StoragePanel.prototype.dataGridForResult): 81858 81859 2010-08-10 Steve Block <steveblock (a] google.com> 81860 81861 Reviewed by Jeremy Orlow. 81862 81863 [V8] DeviceMotionEvent can not be used from JavaScript 81864 https://bugs.webkit.org/show_bug.cgi?id=43785 81865 81866 This is tested by the existing tests fast/dom/DeviceMotion/create-event.html 81867 and fast/dom/DeviceMotion/optional-event-properties.html. 81868 81869 * bindings/v8/custom/V8EventCustom.cpp: 81870 (WebCore::toV8): 81871 81872 2010-08-10 Balazs Kelemen <kb (a] inf.u-szeged.hu> 81873 81874 Reviewed by Antonio Gomes. 81875 81876 [Qt] Build WebKit2 into a static lib 81877 81878 https://bugs.webkit.org/show_bug.cgi?id=43621 81879 81880 Just build changes so no new tests. 81881 81882 * WebCore.pri: Moved feature detection logic into features.pri since we need this in WebKit2.pro as well. 81883 * WebCore.pro: Moved the specification of the WebKit2 build to WebKit2.pro. Link against the static lib. 81884 * features.pri: Added. 81885 81886 2010-08-10 Yury Semikhatsky <yurys (a] chromium.org> 81887 81888 Reviewed by Pavel Feldman. 81889 81890 Web Inspector, Chromium: reloading of inspected page hits assert in InspectorController::enableDebuggerFromFrontend() 81891 https://bugs.webkit.org/show_bug.cgi?id=43780 81892 81893 * inspector/CodeGeneratorInspector.pm: 81894 * inspector/InspectorController.cpp: 81895 (WebCore::InspectorController::enableDebuggerFromFrontend): 81896 * inspector/InspectorController.h: 81897 (WebCore::InspectorController::hasFrontend): 81898 * inspector/InspectorDebuggerAgent.cpp: 81899 (WebCore::InspectorDebuggerAgent::create): 81900 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 81901 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): 81902 (WebCore::InspectorDebuggerAgent::didParseSource): 81903 (WebCore::InspectorDebuggerAgent::failedToParseSource): 81904 (WebCore::InspectorDebuggerAgent::didPause): 81905 (WebCore::InspectorDebuggerAgent::didContinue): 81906 * inspector/InspectorDebuggerAgent.h: 81907 81908 2010-08-10 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 81909 81910 Reviewed by Simon Hausmann. 81911 81912 Make sure NPAPI plugins get an initial setNPWindow on Mac 81913 81914 https://bugs.webkit.org/show_bug.cgi?id=43782 81915 81916 * plugins/mac/PluginViewMac.mm: 81917 81918 2010-08-10 Dirk Schulze <krit (a] webkit.org> 81919 81920 Reviewed by Nikolas Zimmermann. 81921 81922 Use SVGPathParser to create SVG paths and to perform path animations 81923 https://bugs.webkit.org/show_bug.cgi?id=43696 81924 81925 Removed toString() functions in all SVGPathSeg* objects as well as toPath() in SVGPathSegList. 81926 These hacks were used to create a SVG path data string or a platform path from a SVGPathSegList. 81927 Use the new SVGPathParser instead. 81928 81929 Doesn't affect any tests. 81930 81931 * svg/SVGAnimateElement.cpp: 81932 (WebCore::SVGAnimateElement::applyResultsToTarget): 81933 * svg/SVGPathElement.cpp: 81934 (WebCore::SVGPathElement::toPathData): 81935 * svg/SVGPathParserFactory.cpp: 81936 (WebCore::SVGPathParserFactory::buildPathFromSVGPathSegList): 81937 (WebCore::SVGPathParserFactory::buildStringFromByteStream): 81938 (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList): 81939 * svg/SVGPathParserFactory.h: 81940 * svg/SVGPathSeg.cpp: 81941 * svg/SVGPathSeg.h: 81942 * svg/SVGPathSegArc.cpp: 81943 * svg/SVGPathSegArc.h: 81944 * svg/SVGPathSegClosePath.h: 81945 (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter): 81946 * svg/SVGPathSegCurvetoCubic.h: 81947 * svg/SVGPathSegCurvetoCubicSmooth.h: 81948 * svg/SVGPathSegCurvetoQuadratic.h: 81949 * svg/SVGPathSegLinetoHorizontal.h: 81950 * svg/SVGPathSegLinetoVertical.h: 81951 * svg/SVGPathSegList.cpp: 81952 (WebCore::SVGPathSegList::getPathSegAtLength): 81953 * svg/SVGPathSegList.h: 81954 81955 2010-08-10 Sheriff Bot <webkit.review.bot (a] gmail.com> 81956 81957 Unreviewed, rolling out r65056. 81958 http://trac.webkit.org/changeset/65056 81959 https://bugs.webkit.org/show_bug.cgi?id=43773 81960 81961 "Clearly I missed something. I'm too tired to try and fix 81962 now. Will re-land in the morning." (Requested by eseidel on 81963 #webkit). 81964 81965 * html/HTMLConstructionSite.cpp: 81966 (WebCore::HTMLConstructionSite::attach): 81967 * html/HTMLElement.cpp: 81968 (WebCore::HTMLElement::insertAdjacentHTML): 81969 * html/HTMLTreeBuilder.cpp: 81970 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 81971 81972 2010-08-10 Yoshiki Hayashi <yhayashi (a] google.com> 81973 81974 Reviewed by Kent Tamura. 81975 81976 Iterate over :first-letter so that it will be included in innerText. 81977 https://bugs.webkit.org/show_bug.cgi?id=39863 81978 81979 Test: fast/dom/inner-text-first-letter.html 81980 81981 * editing/TextIterator.cpp: 81982 (WebCore::TextIterator::TextIterator): 81983 (WebCore::TextIterator::advance): 81984 (WebCore::TextIterator::handleTextNode): 81985 (WebCore::TextIterator::handleTextBox): 81986 (WebCore::TextIterator::emitText): 81987 * editing/TextIterator.h: 81988 81989 2010-08-10 Kent Tamura <tkent (a] chromium.org> 81990 81991 Reviewed by Darin Adler. 81992 81993 Fix crashes by SelectionController::modify(). 81994 https://bugs.webkit.org/show_bug.cgi?id=43032 81995 81996 Test: editing/selection/selection-modify-crash.html 81997 81998 * editing/visible_units.cpp: 81999 (WebCore::endOfDocument): Add NULL-check for document()->documentElement(). 82000 82001 2010-08-10 Dirk Schulze <krit (a] webkit.org> 82002 82003 Reviewed by Nikolas Zimmermann. 82004 82005 Add missing SVGPathSegList source for SVGPathParser 82006 https://bugs.webkit.org/show_bug.cgi?id=43691 82007 82008 Added SVGPathSegListSource to parse normalized or unaltered SVGPathSegLists and transform 82009 them to either a SVG path string, or a SVGPathByteStream. This will be needed to synchronize 82010 all SVGPathSegLists and the SVG path string of the 'd' attribute. 82011 Refactored SVGPathSource code, to read concrete path segments instead of type/flag/coordinates 82012 from the data sources. This is a further abstraction and seperates the reading of content from 82013 the parsing and interpreting. 82014 82015 Doesn't affect any tests. 82016 82017 * Android.mk: 82018 * CMakeLists.txt: 82019 * GNUmakefile.am: 82020 * WebCore.gypi: 82021 * WebCore.pro: 82022 * WebCore.vcproj/WebCore.vcproj: 82023 * WebCore.xcodeproj/project.pbxproj: 82024 * svg/SVGAllInOne.cpp: 82025 * svg/SVGPathByteStreamSource.cpp: 82026 (WebCore::SVGPathByteStreamSource::parseSVGSegmentType): 82027 (WebCore::SVGPathByteStreamSource::nextCommand): 82028 (WebCore::SVGPathByteStreamSource::parseMoveToSegment): 82029 (WebCore::SVGPathByteStreamSource::parseLineToSegment): 82030 (WebCore::SVGPathByteStreamSource::parseLineToHorizontalSegment): 82031 (WebCore::SVGPathByteStreamSource::parseLineToVerticalSegment): 82032 (WebCore::SVGPathByteStreamSource::parseCurveToCubicSegment): 82033 (WebCore::SVGPathByteStreamSource::parseCurveToCubicSmoothSegment): 82034 (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSegment): 82035 (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSmoothSegment): 82036 (WebCore::SVGPathByteStreamSource::parseArcToSegment): 82037 * svg/SVGPathByteStreamSource.h: 82038 (WebCore::SVGPathByteStreamSource::moveToNextToken): 82039 * svg/SVGPathParser.cpp: 82040 (WebCore::SVGPathParser::parseMoveToSegment): 82041 (WebCore::SVGPathParser::parseLineToSegment): 82042 (WebCore::SVGPathParser::parseLineToHorizontalSegment): 82043 (WebCore::SVGPathParser::parseLineToVerticalSegment): 82044 (WebCore::SVGPathParser::parseCurveToCubicSegment): 82045 (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment): 82046 (WebCore::SVGPathParser::parseCurveToQuadraticSegment): 82047 (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment): 82048 (WebCore::SVGPathParser::parseArcToSegment): 82049 * svg/SVGPathSegListSource.cpp: Added. 82050 (WebCore::SVGPathSegListSource::SVGPathSegListSource): 82051 (WebCore::SVGPathSegListSource::~SVGPathSegListSource): 82052 (WebCore::SVGPathSegListSource::hasMoreData): 82053 (WebCore::SVGPathSegListSource::parseSVGSegmentType): 82054 (WebCore::SVGPathSegListSource::nextCommand): 82055 (WebCore::SVGPathSegListSource::parseMoveToSegment): 82056 (WebCore::SVGPathSegListSource::parseLineToSegment): 82057 (WebCore::SVGPathSegListSource::parseLineToHorizontalSegment): 82058 (WebCore::SVGPathSegListSource::parseLineToVerticalSegment): 82059 (WebCore::SVGPathSegListSource::parseCurveToCubicSegment): 82060 (WebCore::SVGPathSegListSource::parseCurveToCubicSmoothSegment): 82061 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSegment): 82062 (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment): 82063 (WebCore::SVGPathSegListSource::parseArcToSegment): 82064 * svg/SVGPathSegListSource.h: Added. 82065 (WebCore::SVGPathSegListSource::create): 82066 (WebCore::SVGPathSegListSource::moveToNextToken): 82067 * svg/SVGPathSource.h: 82068 * svg/SVGPathStringSource.cpp: 82069 (WebCore::SVGPathStringSource::parseMoveToSegment): 82070 (WebCore::SVGPathStringSource::parseLineToSegment): 82071 (WebCore::SVGPathStringSource::parseLineToHorizontalSegment): 82072 (WebCore::SVGPathStringSource::parseLineToVerticalSegment): 82073 (WebCore::SVGPathStringSource::parseCurveToCubicSegment): 82074 (WebCore::SVGPathStringSource::parseCurveToCubicSmoothSegment): 82075 (WebCore::SVGPathStringSource::parseCurveToQuadraticSegment): 82076 (WebCore::SVGPathStringSource::parseCurveToQuadraticSmoothSegment): 82077 (WebCore::SVGPathStringSource::parseArcToSegment): 82078 * svg/SVGPathStringSource.h: 82079 82080 2010-08-09 Ilya Tikhonovsky <loislo (a] chromium.org> 82081 82082 Reviewed by Yury Semikhatsky. 82083 82084 Web Inspector: small refactoring for CodeGeneratorInspector. 82085 A number of push calls were replaced by embedded text. 82086 Just for improve code readability. 82087 https://bugs.webkit.org/show_bug.cgi?id=43770 82088 82089 * inspector/CodeGeneratorInspector.pm: 82090 82091 2010-08-09 Eric Seidel <eric (a] webkit.org> 82092 82093 Reviewed by Adam Barth. 82094 82095 Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode 82096 https://bugs.webkit.org/show_bug.cgi?id=43762 82097 82098 In fixing the insertAdjacentHTML I had to make small changes to 82099 the error logic, which ended up bringing us closer to HTML5. 82100 82101 Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html 82102 82103 * html/HTMLConstructionSite.cpp: 82104 (WebCore::HTMLConstructionSite::attach): 82105 - This ASSERT was just wrong, the child should not be attached 82106 in the case the parent is not attached. 82107 * html/HTMLElement.cpp: 82108 (WebCore::contextElementForInsertion): 82109 - This is part of HTML5, needed to know what to call the 82110 HTML or XML parsers with. The previous code always passed 82111 "this" which is wrong in the case of beforeBegin or afterEnd insertion. 82112 (WebCore::HTMLElement::insertAdjacentHTML): 82113 - Use the right contextElement now that we know how to compute it. 82114 * html/HTMLTreeBuilder.cpp: 82115 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 82116 - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug. 82117 82118 2010-08-09 Yury Semikhatsky <yurys (a] chromium.org> 82119 82120 Reviewed by Pavel Feldman. 82121 82122 Web Inspector: remove InspectorFrontend class and use RemoteInspectorFrontend instead. 82123 https://bugs.webkit.org/show_bug.cgi?id=43726 82124 82125 * CMakeLists.txt: 82126 * GNUmakefile.am: 82127 * WebCore.gypi: 82128 * WebCore.pro: 82129 * WebCore.vcproj/WebCore.vcproj: 82130 * WebCore.xcodeproj/project.pbxproj: 82131 * inspector/InspectorController.cpp: 82132 (WebCore::InspectorController::connectFrontend): 82133 (WebCore::InspectorController::close): 82134 (WebCore::InspectorController::disconnectFrontend): 82135 * inspector/InspectorController.h: 82136 * inspector/InspectorFrontend.cpp: Removed. 82137 * inspector/InspectorFrontend.h: Removed. 82138 82139 2010-08-09 Ilya Tikhonovsky <loislo (a] chromium.org> 82140 82141 Reviewed by Pavel Feldman. 82142 82143 Web Inspector: Remove obsolete JS wrappers for did* methods. 82144 https://bugs.webkit.org/show_bug.cgi?id=43738 82145 82146 * inspector/CodeGeneratorInspector.pm: 82147 * inspector/Inspector.idl: 82148 * inspector/front-end/BreakpointManager.js: 82149 * inspector/front-end/Callback.js: 82150 * inspector/front-end/ConsoleView.js: 82151 * inspector/front-end/DOMAgent.js: 82152 * inspector/front-end/DOMStorage.js: 82153 * inspector/front-end/Database.js: 82154 * inspector/front-end/InjectedScriptAccess.js: 82155 * inspector/front-end/ProfilesPanel.js: 82156 * inspector/front-end/ResourcesPanel.js: 82157 * inspector/front-end/ScriptView.js: 82158 * inspector/front-end/ScriptsPanel.js: 82159 * inspector/front-end/inspector.js: 82160 (WebInspector.reportProtocolError): 82161 82162 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82163 82164 Qt build fix attempt VIII. 82165 82166 * dom/QualifiedName.cpp: 82167 (WebCore::QualifiedName::toString): 82168 * dom/XMLDocumentParserQt.cpp: 82169 (WebCore::handleElementNamespaces): 82170 82171 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82172 82173 Qt build fix attempt VII. 82174 82175 * dom/QualifiedName.cpp: 82176 (WebCore::QualifiedName::toString): 82177 * dom/XMLDocumentParserQt.cpp: 82178 (WebCore::handleElementNamespaces): 82179 82180 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82181 82182 Qt build fix attempt VI. 82183 82184 * dom/QualifiedName.cpp: 82185 (WebCore::QualifiedName::toString): 82186 * dom/XMLDocumentParserQt.cpp: 82187 (WebCore::handleElementNamespaces): 82188 82189 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82190 82191 Qt build fix attempt V. 82192 82193 * dom/QualifiedName.cpp: 82194 (WebCore::QualifiedName::toString): 82195 * dom/XMLDocumentParserQt.cpp: 82196 (WebCore::handleElementNamespaces): 82197 82198 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82199 82200 Qt build fix attempt IV. 82201 82202 * css/CSSSelector.cpp: 82203 (WebCore::CSSSelector::selectorText): 82204 * dom/QualifiedName.cpp: 82205 (WebCore::QualifiedName::toString): 82206 * dom/XMLDocumentParserQt.cpp: 82207 (WebCore::handleElementNamespaces): 82208 82209 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82210 82211 Speculative chromium build fix. 82212 82213 * platform/graphics/chromium/FontCacheChromiumWin.cpp: 82214 (WebCore::charactersAreAllASCII): 82215 82216 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82217 82218 Qt build fix III. 82219 82220 * css/CSSSelector.cpp: 82221 82222 2010-08-09 Adam Barth <abarth (a] webkit.org> 82223 82224 Reviewed by Eric Seidel. 82225 82226 Remove error-prone external SegementedSubstring contructor 82227 https://bugs.webkit.org/show_bug.cgi?id=43752 82228 82229 There's a lot of code that assumes that SegmentedString takes ownership 82230 of its substrings. For example, when the HTML parser pauses and 82231 resumes asynchronously, it could explode if SegmentedString didn't own 82232 its substrings. 82233 82234 Prior to this patch, there was a constructor that let 82235 SegmentedSubstring use an external string buffer. It turns out it was 82236 only used in a handful of places, but I'd rather pay the memcpy of 82237 these small strings than risk having them used after free. 82238 82239 * bindings/js/JSHTMLDocumentCustom.cpp: 82240 (WebCore::documentWrite): 82241 * html/LegacyHTMLDocumentParser.cpp: 82242 (WebCore::LegacyHTMLDocumentParser::parseNonHTMLText): 82243 (WebCore::LegacyHTMLDocumentParser::scriptHandler): 82244 (WebCore::LegacyHTMLDocumentParser::parseComment): 82245 * platform/text/SegmentedString.h: 82246 (WebCore::SegmentedString::SegmentedString): 82247 82248 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82249 82250 Speculative Qt build fix. 82251 82252 * css/CSSSelector.cpp: 82253 82254 2010-08-09 Gavin Barraclough <barraclough (a] apple.com> 82255 82256 Speculative gtk build fix. 82257 82258 * plugins/gtk/PluginViewGtk.cpp: 82259 (WebCore::PluginView::handlePostReadFile): 82260 82261 2010-08-06 Gavin Barraclough <barraclough (a] apple.com> 82262 82263 Rubber stamped by Sam Weinig 82264 82265 Bug 43594 - Add string forwards to Forward.h 82266 This allows us to remove forward declarations for these classes from 82267 WebCore/WebKit (a step in moving these class from WebCore:: to WTF::). 82268 82269 * WebCore.xcodeproj/project.pbxproj: 82270 * accessibility/AXObjectCache.h: 82271 * accessibility/AccessibilityARIAGrid.h: 82272 * accessibility/AccessibilityListBoxOption.h: 82273 * accessibility/AccessibilityObject.h: 82274 * accessibility/AccessibilityRenderObject.h: 82275 * accessibility/AccessibilityTable.h: 82276 * bindings/cpp/WebDOMCString.h: 82277 * bindings/cpp/WebDOMString.h: 82278 * bindings/gobject/ConvertToUTF8String.h: 82279 * bindings/js/DOMWrapperWorld.h: 82280 * bindings/js/JSDOMBinding.h: 82281 * bindings/js/JSDOMWindowBase.h: 82282 * bindings/js/JSMessagePortCustom.h: 82283 * bindings/js/JavaScriptCallFrame.h: 82284 * bindings/js/ScriptController.h: 82285 * bindings/js/ScriptProfile.h: 82286 * bindings/js/ScriptSourceProvider.h: 82287 * bindings/js/ScriptString.h: 82288 * bindings/js/WorkerScriptController.h: 82289 * bindings/objc/DOMImplementationFront.h: 82290 * bindings/v8/ScheduledAction.h: 82291 * bindings/v8/ScriptController.h: 82292 * bindings/v8/V8DOMWindowShell.h: 82293 * bindings/v8/V8Proxy.h: 82294 * bindings/v8/V8Utilities.h: 82295 * bindings/v8/custom/V8CustomXPathNSResolver.h: 82296 * bridge/c/c_utility.h: 82297 * css/CSSFontSelector.h: 82298 * css/CSSHelper.h: 82299 * css/CSSOMUtils.h: 82300 * css/CSSPrimitiveValue.h: 82301 * css/MediaList.h: 82302 * css/StyleBase.h: 82303 * css/StyleSheetList.h: 82304 * css/WebKitCSSKeyframesRule.h: 82305 * dom/CheckedRadioButtons.h: 82306 * dom/DOMImplementation.h: 82307 * dom/DocumentMarker.h: 82308 * dom/DynamicNodeList.h: 82309 * dom/EventTarget.h: 82310 * dom/MessagePort.h: 82311 * dom/MessagePortChannel.h: 82312 * dom/NameNodeList.h: 82313 * dom/Node.h: 82314 * dom/NodeList.h: 82315 * dom/OptionGroupElement.h: 82316 * dom/ScriptExecutionContext.h: 82317 * dom/SelectElement.h: 82318 * dom/ViewportArguments.h: 82319 * dom/make_names.pl: 82320 * editing/HTMLInterchange.h: 82321 * editing/htmlediting.h: 82322 * editing/markup.h: 82323 * html/CollectionCache.h: 82324 * html/DOMFormData.h: 82325 * html/DataGridColumnList.h: 82326 * html/DateComponents.h: 82327 * html/FileStream.h: 82328 * html/FileStreamProxy.h: 82329 * html/FormDataList.h: 82330 (WebCore::FormDataList::appendData): 82331 * html/HTMLCollection.h: 82332 * html/HTMLElementStack.h: 82333 * html/HTMLFormattingElementList.h: 82334 * html/HTMLParserQuirks.h: 82335 * html/HTMLQuoteElement.h: 82336 * html/HTMLScriptRunnerHost.h: 82337 * html/StepRange.h: 82338 * html/canvas/CanvasGradient.h: 82339 * html/canvas/CanvasNumberArray.h: 82340 * html/canvas/CanvasPattern.h: 82341 * inspector/InjectedScript.h: 82342 * inspector/InspectorCSSStore.h: 82343 * inspector/InspectorClient.h: 82344 * inspector/InspectorFrontendClient.h: 82345 * inspector/InspectorValues.h: 82346 * inspector/ScriptDebugListener.h: 82347 * loader/CachedResourceClient.h: 82348 * loader/CrossOriginAccessControl.h: 82349 * loader/DocumentThreadableLoader.h: 82350 * loader/FrameLoaderClient.h: 82351 * loader/RedirectScheduler.h: 82352 * loader/SubframeLoader.h: 82353 * loader/appcache/DOMApplicationCache.h: 82354 * loader/archive/ArchiveFactory.h: 82355 * loader/icon/IconDatabaseClient.h: 82356 * notifications/NotificationPresenter.h: 82357 * page/Chrome.h: 82358 * page/ChromeClient.h: 82359 * page/Console.h: 82360 * page/ContextMenuClient.h: 82361 * page/DOMSelection.h: 82362 * page/EditorClient.h: 82363 * page/EventHandler.h: 82364 * page/FrameView.h: 82365 * page/GeolocationPositionCache.h: 82366 * page/History.h: 82367 * page/Location.h: 82368 * page/Navigator.h: 82369 * page/NavigatorBase.h: 82370 * page/PluginHalterClient.h: 82371 * page/PrintContext.h: 82372 * page/SpeechInput.h: 82373 * page/SpeechInputListener.h: 82374 * page/animation/AnimationController.h: 82375 * platform/CookieJar.h: 82376 * platform/CrossThreadCopier.h: 82377 * platform/DragImage.h: 82378 * platform/FileSystem.h: 82379 * platform/Language.h: 82380 * platform/Length.h: 82381 * platform/LinkHash.h: 82382 * platform/LocalizationStrategy.h: 82383 * platform/LocalizedStrings.h: 82384 * platform/Logging.h: 82385 * platform/Pasteboard.h: 82386 * platform/PopupMenuClient.h: 82387 * platform/SearchPopupMenu.h: 82388 * platform/Widget.h: 82389 * platform/cf/BinaryPropertyList.h: 82390 * platform/chromium/ChromiumBridge.h: 82391 * platform/chromium/ClipboardUtilitiesChromium.h: 82392 * platform/cocoa/KeyEventCocoa.h: 82393 * platform/graphics/Color.h: 82394 * platform/graphics/FontCache.h: 82395 * platform/graphics/FontData.h: 82396 * platform/graphics/FontSelector.h: 82397 * platform/graphics/GraphicsTypes.h: 82398 * platform/graphics/Icon.h: 82399 * platform/graphics/ImageBuffer.h: 82400 * platform/graphics/ImageSource.h: 82401 * platform/graphics/MediaPlayer.h: 82402 * platform/graphics/MediaPlayerPrivate.h: 82403 * platform/graphics/Path.h: 82404 * platform/graphics/StringTruncator.h: 82405 * platform/graphics/cairo/FontCustomPlatformData.h: 82406 * platform/graphics/cairo/FontPlatformData.h: 82407 * platform/graphics/cg/FontPlatformData.h: 82408 * platform/graphics/cg/ImageSourceCG.h: 82409 * platform/graphics/chromium/FontCustomPlatformData.h: 82410 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 82411 * platform/graphics/chromium/FontPlatformDataLinux.h: 82412 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 82413 * platform/graphics/haiku/FontCustomPlatformData.h: 82414 * platform/graphics/mac/FontCustomPlatformData.h: 82415 * platform/graphics/mac/FontPlatformData.h: 82416 * platform/graphics/qt/FontCustomPlatformData.h: 82417 * platform/graphics/qt/FontPlatformData.h: 82418 * platform/graphics/win/FontCustomPlatformData.h: 82419 * platform/graphics/win/FontCustomPlatformDataCairo.h: 82420 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 82421 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: 82422 * platform/graphics/wince/FontPlatformData.h: 82423 * platform/graphics/wince/MediaPlayerPrivateWince.h: 82424 * platform/graphics/wince/MediaPlayerProxy.h: 82425 * platform/graphics/wx/FontCustomPlatformData.h: 82426 * platform/graphics/wx/FontPlatformData.h: 82427 * platform/mac/PasteboardHelper.h: 82428 * platform/network/DNS.h: 82429 * platform/network/FormData.h: 82430 * platform/network/FormDataBuilder.h: 82431 * platform/network/HTTPParsers.h: 82432 * platform/text/Hyphenation.h: 82433 * platform/text/LineEnding.h: 82434 * platform/text/TextCodec.h: 82435 * platform/text/TextEncoding.h: 82436 * platform/text/TextStream.h: 82437 * platform/win/BString.h: 82438 * platform/win/ClipboardUtilitiesWin.h: 82439 * platform/win/WCDataObject.h: 82440 * platform/win/WebCoreTextRenderer.h: 82441 * plugins/DOMMimeType.h: 82442 * plugins/DOMMimeTypeArray.h: 82443 * plugins/DOMPlugin.h: 82444 * plugins/DOMPluginArray.h: 82445 * rendering/CounterNode.h: 82446 * rendering/HitTestResult.h: 82447 * rendering/RenderObjectChildList.h: 82448 * rendering/RenderText.h: 82449 * rendering/RenderTreeAsText.h: 82450 * rendering/TextControlInnerElements.h: 82451 * rendering/style/ContentData.h: 82452 * rendering/style/RenderStyle.h: 82453 * storage/DatabaseAuthorizer.h: 82454 * storage/DatabaseTrackerClient.h: 82455 * storage/SQLTransaction.h: 82456 * storage/SQLTransactionSync.h: 82457 * storage/Storage.h: 82458 * storage/chromium/DatabaseObserver.h: 82459 * svg/SVGAnimatedTemplate.h: 82460 * svg/SVGDocumentExtensions.h: 82461 * svg/SVGGlyphElement.h: 82462 * svg/SVGHKernElement.h: 82463 * svg/SVGNumberList.h: 82464 * svg/SVGPointList.h: 82465 * svg/SVGPreserveAspectRatio.h: 82466 * svg/SVGStylable.h: 82467 * svg/SVGTests.h: 82468 * svg/SVGTransformList.h: 82469 * svg/SVGTransformable.h: 82470 * svg/SVGVKernElement.h: 82471 * websockets/ThreadableWebSocketChannel.h: 82472 * websockets/ThreadableWebSocketChannelClientWrapper.h: 82473 * websockets/WebSocket.h: 82474 * websockets/WebSocketChannel.h: 82475 * websockets/WebSocketHandshakeResponse.h: 82476 * wml/WMLErrorHandling.h: 82477 * wml/WMLPageState.h: 82478 * wml/WMLVariables.h: 82479 * workers/DefaultSharedWorkerRepository.h: 82480 * workers/SharedWorkerRepository.h: 82481 * workers/Worker.h: 82482 * workers/WorkerContextProxy.h: 82483 * workers/WorkerLoaderProxy.h: 82484 * workers/WorkerLocation.h: 82485 * workers/WorkerMessagingProxy.h: 82486 * workers/WorkerReportingProxy.h: 82487 * workers/WorkerThread.h: 82488 * xml/DOMParser.h: 82489 * xml/XMLHttpRequestUpload.h: 82490 * xml/XPathEvaluator.h: 82491 * xml/XPathExpression.h: 82492 * xml/XPathNSResolver.h: 82493 * xml/XPathResult.h: 82494 * xml/XPathUtil.h: 82495 82496 2010-08-09 Nat Duca <nduca (a] chromium.org> 82497 82498 Reviewed by Dimitri Glazkov. 82499 82500 [chromium] Blue line visible at the right hand side of the window with accelerated compositor 82501 https://bugs.webkit.org/show_bug.cgi?id=43748 82502 82503 Correct the ortho projection matrix for the root layer, which was 82504 too large by 0.5px in both width and height. For even view sizes, 82505 this would cause the viewport to appear 1 pixel too small. 82506 82507 Fixing this requires removal of several 0.5 correction factors 82508 that were previously added to compensate for the too-large viewport. 82509 82510 Finally, compute the translation for the root layer quad using 82511 floating point rather than integer arithmetic. This avoids us losing 82512 a key half-pixel of translation when the width of the window is odd. 82513 82514 To test, size window to even/odd dimensions. No blue line should be visible. 82515 82516 * platform/graphics/chromium/LayerRendererChromium.cpp: 82517 (WebCore::LayerRendererChromium::drawLayers): 82518 82519 2010-08-09 Ryosuke Niwa <rniwa (a] webkit.org> 82520 82521 Reviewed by Justin Garcia. 82522 82523 fontColorChangesComputedStyle, fontSizeChangesComputedStyle, and fontFaceChangesComputedStyle should be removed 82524 https://bugs.webkit.org/show_bug.cgi?id=43465 82525 82526 Removed fontColorChangesComputedStyle, fontSizeChangesComputedStyle, and fontFaceChangesComputedStyle 82527 because StyleChange's applyFontColor, applyFontFace, and applyFontSize all return false 82528 if there was no difference between the new font color, font size, font face and that of the computed style. 82529 82530 Also added a work-around for the bug 28282 in getPropertiesNotInComputedStyle with a test so that 82531 the above change will not add a redundant font or span element. 82532 82533 Test: editing/style/fore-color-by-name.html 82534 82535 * editing/ApplyStyleCommand.cpp: 82536 (WebCore::getRGBAFontColor): Added. 82537 (WebCore::StyleChange::extractTextStyles): Calls getRGBAFontColor. 82538 (WebCore::getPropertiesNotInComputedStyle): Removes color property manually by checking the RGBA values. 82539 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): See above. 82540 82541 2010-08-09 Kenneth Russell <kbr (a] google.com> 82542 82543 Reviewed by David Levin. 82544 82545 Fix compilation of VideoLayerChromium on Mac OS X with compositor 82546 https://bugs.webkit.org/show_bug.cgi?id=43757 82547 82548 No new tests; build fix only (associated functionality not implemented yet). 82549 82550 * platform/graphics/chromium/VideoLayerChromium.cpp: 82551 (WebCore::VideoLayerChromium::VideoLayerChromium): 82552 (WebCore::VideoLayerChromium::updateTextureContents): 82553 (WebCore::VideoLayerChromium::createTextureRect): 82554 (WebCore::VideoLayerChromium::updateTextureRect): 82555 * platform/graphics/chromium/VideoLayerChromium.h: 82556 82557 2010-08-09 Ariya Hidayat <ariya (a] sencha.com> 82558 82559 Reviewed by Kenneth Rohde Christiansen. 82560 82561 [Qt] Need to implement GraphicsContextQt::clipConvexPolygon() 82562 https://bugs.webkit.org/show_bug.cgi?id=41310 82563 82564 Based on the prototype code by Simon Hausmann. 82565 82566 * platform/graphics/qt/GraphicsContextQt.cpp: 82567 (WebCore::GraphicsContext::clipConvexPolygon): 82568 * rendering/RenderObject.h: 82569 82570 2010-08-09 Chris Fleizach <cfleizach (a] apple.com> 82571 82572 Reviewed by David Kilzer. 82573 82574 AX: Placeholder value for text fields not exposed like it should be 82575 https://bugs.webkit.org/show_bug.cgi?id=43598 82576 82577 * accessibility/AccessibilityObject.cpp: 82578 (WebCore::AccessibilityObject::placeholderValue): 82579 * accessibility/AccessibilityObject.h: 82580 * accessibility/AccessibilityRenderObject.cpp: 82581 (WebCore::AccessibilityRenderObject::title): 82582 * accessibility/mac/AccessibilityObjectWrapper.mm: 82583 (-[AccessibilityObjectWrapper accessibilityAttributeNames]): 82584 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 82585 82586 2010-08-09 Ryosuke Niwa <rniwa (a] webkit.org> 82587 82588 Reviewed by Justin Garcia. 82589 82590 Undo fails in RemoveCSSPropertyCommand when the corresponding style attribute is removed 82591 https://bugs.webkit.org/show_bug.cgi?id=43639 82592 82593 The bug was caused when RemoveCSSPropertyCommand is called with CSSMutableStyleDeclaration of some styled element, 82594 and the style attribute of the element is removed subsequently. When the attribute removal is undone, new instance of 82595 CSSMutableStyleDeclaration is created and RemoveCSSPropertyCommand's m_style became detached from the element. 82596 82597 Modified RemoveCSSPropertyCommand to store the styled element directly instead of its CSSMutableStyleDeclaration. 82598 82599 Test: editing/undo/remove-css-property-and-remove-style.html 82600 82601 * WebCore.order: 82602 * editing/ApplyStyleCommand.cpp: 82603 (WebCore::ApplyStyleCommand::removeCSSStyle): Calls removeCSSProperty. 82604 (WebCore::ApplyStyleCommand::extractTextDecorationStyle): Calls removeCSSProperty. 82605 * editing/CompositeEditCommand.cpp: 82606 (WebCore::CompositeEditCommand::removeCSSProperty): Takes StyledElement instead of CSSMutableStyleDeclaration. 82607 * editing/CompositeEditCommand.h: 82608 * editing/RemoveCSSPropertyCommand.cpp: 82609 (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand): Takes StyledElement instead of CSSMutableStyleDeclaration. 82610 (WebCore::RemoveCSSPropertyCommand::doApply): See above. 82611 (WebCore::RemoveCSSPropertyCommand::doUnapply): See above. 82612 * editing/RemoveCSSPropertyCommand.h: 82613 (WebCore::RemoveCSSPropertyCommand::create): See above. 82614 82615 2010-08-09 Ryosuke Niwa <rniwa (a] webkit.org> 82616 82617 Reviewed by Tony Chang. 82618 82619 Use getIdentifierValue to obtain direction and unicode-bidi properties in ApplyStyleCommand 82620 https://bugs.webkit.org/show_bug.cgi?id=43699 82621 82622 Deployed getIdentifierValue in various parts of ApplyStyleCommand where 82623 direction and unicode-bidi properties were obtained manually. 82624 82625 No new tests since this is a cleanup. 82626 82627 * editing/ApplyStyleCommand.cpp: 82628 (WebCore::getIdentifierValue): Takes CSSStyleDeclaration instead of CSSMutableStyleDeclaration. 82629 (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Calls getIdentifierValue. 82630 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Calls getIdentifierValue. 82631 (WebCore::ApplyStyleCommand::applyInlineStyle): Calls getIdentifierValue. 82632 * editing/ApplyStyleCommand.h: 82633 82634 2010-08-09 Adam Barth <abarth (a] webkit.org> 82635 82636 Reviewed by Eric Seidel. 82637 82638 Remove trailing whitespace in HTMLViewSourceDocument.cpp 82639 https://bugs.webkit.org/show_bug.cgi?id=43741 82640 82641 No behavior change. The whitespace was distracting me while porting 82642 this class to the new parser. 82643 82644 * html/HTMLViewSourceDocument.cpp: 82645 (WebCore::HTMLViewSourceDocument::createContainingTable): 82646 (WebCore::HTMLViewSourceDocument::addViewSourceToken): 82647 (WebCore::HTMLViewSourceDocument::addLine): 82648 (WebCore::HTMLViewSourceDocument::addText): 82649 (WebCore::HTMLViewSourceDocument::addLink): 82650 82651 2010-08-09 Eric Seidel <eric (a] webkit.org> 82652 82653 Reviewed by Adam Barth. 82654 82655 Use the HTML5 TreeBuilder for Fragment Parsing 82656 https://bugs.webkit.org/show_bug.cgi?id=43586 82657 82658 The bulk of this change is just a transcription of the HTML5 spec: 82659 http://www.whatwg.org/specs/web-apps/current-work/multipage/the-end.html#fragment-case 82660 82661 DocumentParser() now sets the right tokenizer state before handling 82662 fragments. Since default code path uses the HTML5 tokenizer with the 82663 legacy tree builder, this fixes 2 tokenizer-state tests for the html5lib. 82664 This fixes 2 more tree-builder tests when the html5 treebuilder is enabled too. 82665 82666 * dom/DocumentFragment.cpp: 82667 (WebCore::DocumentFragment::parseHTML): 82668 - HTML5 implementation of fragment parsing requires the context element (parent) 82669 pointer. The legacy implementation handles all parsing branches which require 82670 the context element outside of the parser itself, which likely produces "wrong" 82671 results. We'll remove those branches when we turn on the HMTL5 fragment parser. 82672 (WebCore::DocumentFragment::parseXML): 82673 - Rename "parent" to "contextElement" to match the HTML path (and the HTML5 spec). 82674 * dom/DocumentFragment.h: 82675 * dom/Element.cpp: 82676 (WebCore::Element::createContextualFragment): 82677 - Pass the contextElement (this). 82678 * html/HTMLConstructionSite.cpp: 82679 (WebCore::HTMLConstructionSite::setForm): 82680 - Needed by for the fragment case. 82681 (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody): 82682 - I'm not sure this method should exist, it only has one caller. 82683 but for now, I've moved the fragment case FIXME out to the 82684 one caller and implemented it. 82685 * html/HTMLConstructionSite.h: 82686 * html/HTMLDocumentParser.cpp: 82687 (WebCore::HTMLNames::tokenizerStateForContextElement): 82688 - Part of the fragment case handling for the HTML5 parser. 82689 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 82690 - Set the Tokenizer state based on the contextElement. 82691 (WebCore::HTMLDocumentParser::parseDocumentFragment): 82692 - Take a contextElement argument. 82693 * html/HTMLDocumentParser.h: 82694 * html/HTMLElement.cpp: 82695 (WebCore::HTMLElement::setInnerHTML): 82696 - Added a FIXME before the branches the old parser used to avoid ever needing 82697 to pass a context element when parsing HTML fragments. 82698 (WebCore::HTMLElement::insertAdjacentHTML): 82699 - Pass the context element. 82700 * html/HTMLTokenizer.h: 82701 * html/HTMLTreeBuilder.cpp: 82702 - I added a new helper class FragmentParsingContext to simplify the two 82703 HTMLTreeBuilder constructors and hide the existence of m_dummyDocumentForFragmentParse. 82704 - I also removed m_isParsingFragment and replaced it with an isParsingFragment() function. 82705 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 82706 (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): 82707 (WebCore::HTMLTreeBuilder::FragmentParsingContext::document): 82708 (WebCore::HTMLTreeBuilder::FragmentParsingContext::~FragmentParsingContext): 82709 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 82710 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 82711 - I had to implement two notImplemented() states in order to get most of the 82712 layout tests to pass when using the HTML5 parser fragment case. 82713 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): 82714 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 82715 (WebCore::HTMLTreeBuilder::processStartTag): 82716 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 82717 (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): 82718 (WebCore::HTMLTreeBuilder::processEndTagForInRow): 82719 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 82720 (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): 82721 (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): 82722 (WebCore::HTMLTreeBuilder::processTableEndTagForInTable): 82723 (WebCore::HTMLTreeBuilder::processEndTag): 82724 (WebCore::HTMLTreeBuilder::processCharacterBuffer): 82725 (WebCore::HTMLTreeBuilder::processEndOfFile): 82726 (WebCore::HTMLTreeBuilder::finished): 82727 - The HTML5 parsing algorithm fragment case uses a dummy document to handle all the parsing 82728 and then moves all the children from the dummy document over into a DocumentFragment 82729 when the parse is done. We could avoid this adopt step by making the TreeBuilder a bit 82730 more complicated, but I'm not sure that's necessary (yet). 82731 * html/HTMLTreeBuilder.h: 82732 (WebCore::HTMLTreeBuilder::isParsingFragment): 82733 (WebCore::HTMLTreeBuilder::FragmentParsingContext::fragment): 82734 (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): 82735 (WebCore::HTMLTreeBuilder::FragmentParsingContext::scriptingPermission): 82736 * xml/XSLTProcessor.cpp: 82737 (WebCore::createFragmentFromSource): 82738 82739 2010-08-09 Dumitru Daniliuc <dumi (a] chromium.org> 82740 82741 Reviewed by Adam Barth. 82742 82743 Auto-generate most HTML5 DB bindings. 82744 https://bugs.webkit.org/show_bug.cgi?id=43382 82745 82746 * Android.jscbindings.mk: Remove {JS|V8}Database{Sync}Custom.cpp 82747 and the custom implementations of openDatabase{Sync}(). 82748 * Android.v8bindings.mk: 82749 * CMakeLists.txt: 82750 * GNUmakefile.am: 82751 * WebCore.gypi: 82752 * WebCore.pro: 82753 * WebCore.vcproj/WebCore.vcproj: 82754 * WebCore.xcodeproj/project.pbxproj: 82755 * bindings/js/JSBindingsAllInOne.cpp: 82756 * bindings/js/JSDOMWindowCustom.cpp: 82757 * bindings/js/JSDatabaseCustom.cpp: Removed. 82758 * bindings/js/JSDatabaseSyncCustom.cpp: Removed. 82759 * bindings/js/JSWorkerContextCustom.cpp: 82760 * bindings/v8/custom/V8DOMWindowCustom.cpp: 82761 * bindings/v8/custom/V8DatabaseCustom.cpp: Removed. 82762 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Removed. 82763 * bindings/v8/custom/V8WorkerContextCustom.cpp: 82764 82765 * bindings/scripts/CodeGeneratorGObject.pm: Change the code generators 82766 to check that each value can be converted to the respective 82767 argument type. 82768 * bindings/scripts/CodeGeneratorJS.pm: 82769 * bindings/scripts/CodeGeneratorV8.pm: 82770 * bindings/scripts/test/JS/JSTestCallback.cpp: 82771 (WebCore::JSTestCallback::~JSTestCallback): 82772 * bindings/scripts/test/JS/JSTestObj.cpp: 82773 (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs): 82774 (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs): 82775 (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs): 82776 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs): 82777 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows): 82778 (WebCore::jsTestObjPrototypeFunctionSerializedValue): 82779 (WebCore::jsTestObjPrototypeFunctionIdbKey): 82780 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 82781 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg): 82782 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg): 82783 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 82784 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 82785 (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg): 82786 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg): 82787 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs): 82788 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg): 82789 (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg): 82790 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg): 82791 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1): 82792 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2): 82793 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3): 82794 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4): 82795 * bindings/scripts/test/V8/V8TestObj.cpp: 82796 (WebCore::TestObjInternal::voidMethodWithArgsCallback): 82797 (WebCore::TestObjInternal::intMethodWithArgsCallback): 82798 (WebCore::TestObjInternal::objMethodWithArgsCallback): 82799 (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback): 82800 (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback): 82801 (WebCore::TestObjInternal::idbKeyCallback): 82802 (WebCore::TestObjInternal::customArgsAndExceptionCallback): 82803 (WebCore::TestObjInternal::withDynamicFrameAndArgCallback): 82804 (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback): 82805 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback): 82806 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback): 82807 (WebCore::TestObjInternal::methodWithOptionalArgCallback): 82808 (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback): 82809 (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback): 82810 (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): 82811 (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): 82812 (WebCore::TestObjInternal::overloadedMethod1Callback): 82813 (WebCore::TestObjInternal::overloadedMethod2Callback): 82814 (WebCore::TestObjInternal::overloadedMethod3Callback): 82815 (WebCore::TestObjInternal::overloadedMethod4Callback): 82816 (WebCore::): 82817 (WebCore::ConfigureV8TestObjTemplate): 82818 * bindings/v8/custom/V8BindingMacros.h: 82819 82820 * bindings/v8/V8Binding.h: Minor changes required to support the 82821 auto-generated bindings. 82822 (WebCore::V8Parameter::V8Parameter): 82823 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 82824 (WebCore::V8SQLTransaction::executeSqlCallback): 82825 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: 82826 (WebCore::V8SQLTransactionSync::executeSqlCallback): 82827 * page/DOMWindow.idl: 82828 * storage/Database.cpp: 82829 (WebCore::Database::transaction): 82830 (WebCore::Database::readTransaction): 82831 (WebCore::Database::runTransaction): 82832 * storage/Database.h: 82833 * storage/Database.idl: 82834 * storage/DatabaseSync.cpp: 82835 (WebCore::DatabaseSync::transaction): 82836 (WebCore::DatabaseSync::readTransaction): 82837 (WebCore::DatabaseSync::runTransaction): 82838 * storage/DatabaseSync.h: 82839 * storage/DatabaseSync.idl: 82840 * workers/WorkerContext.idl: 82841 82842 2010-08-09 Adam Barth <abarth (a] webkit.org> 82843 82844 Reviewed by Eric Seidel. 82845 82846 Move HTMLViewSourceDocument from legacyParserAddChild to parserAddChild 82847 https://bugs.webkit.org/show_bug.cgi?id=43740 82848 82849 This removes the DTD checks, which aren't needed for view source 82850 documents. 82851 82852 * html/HTMLViewSourceDocument.cpp: 82853 (WebCore::HTMLViewSourceDocument::createContainingTable): 82854 (WebCore::HTMLViewSourceDocument::addSpanWithClassName): 82855 (WebCore::HTMLViewSourceDocument::addLine): 82856 (WebCore::HTMLViewSourceDocument::addText): 82857 (WebCore::HTMLViewSourceDocument::addLink): 82858 82859 2010-08-09 Dan Bernstein <mitz (a] apple.com> 82860 82861 Reviewed by Simon Fraser. 82862 82863 Fixed an uninitialized member variable in the Color(CGColorRef) constructor. 82864 82865 * platform/graphics/cg/ColorCG.cpp: 82866 (WebCore::Color::Color): Initialize m_valid to true if the color is not 0. 82867 82868 2010-08-09 James Robinson <jamesr (a] chromium.org> 82869 82870 Chromium compile fix, unreviewed. 82871 82872 * platform/graphics/skia/PlatformContextSkia.cpp: 82873 (WebCore::PlatformContextSkia::~PlatformContextSkia): 82874 (WebCore::PlatformContextSkia::setGraphicsContext3D): 82875 82876 2010-08-09 James Robinson <jamesr (a] chromium.org> 82877 82878 Reviewed by Dimitri Glazkov. 82879 82880 [chromium] Add a PrepareTextureCallback to the chromium canvas layer compositor to upload mixed-mode results before compositing 82881 https://bugs.webkit.org/show_bug.cgi?id=43656 82882 82883 When compositing an accelerated canvas that is using both hardware and software drawing, 82884 we need a callback before compositing the layer to make sure that we upload any software 82885 drawn results to the texture. This will go away as soon as implement all draw calls 82886 in hardware. 82887 82888 To test, run any canvas demo that runs in mixed mode and verifies that the software results 82889 always show up. 82890 82891 * platform/graphics/chromium/CanvasLayerChromium.cpp: 82892 (WebCore::CanvasLayerChromium::updateTextureContents): 82893 * platform/graphics/chromium/CanvasLayerChromium.h: 82894 (WebCore::CanvasLayerChromium::setPrepareTextureCallback): 82895 * platform/graphics/skia/PlatformContextSkia.cpp: 82896 (WebCore::PrepareTextureCallbackImpl::create): 82897 (WebCore::PrepareTextureCallbackImpl::willPrepareTexture): 82898 (WebCore::PrepareTextureCallbackImpl::PrepareTextureCallbackImpl): 82899 (WebCore::PlatformContextSkia::setGraphicsContext3D): 82900 82901 2010-08-09 Zhenyao Mo <zmo (a] google.com> 82902 82903 Reviewed by David Levin. 82904 82905 sizeInBytes should be removed 82906 https://bugs.webkit.org/show_bug.cgi?id=43693 82907 82908 * html/canvas/WebGLRenderingContext.cpp: 82909 (WebCore::WebGLRenderingContext::sizeInBytes): Don't generate GL errors. Generate them in the callers instead. 82910 (WebCore::WebGLRenderingContext::vertexAttribPointer): Generate GL error if sizeInBytes fails. 82911 * html/canvas/WebGLRenderingContext.h: Make sizeInBytes private helper. 82912 * html/canvas/WebGLRenderingContext.idl: Remove sizeInBytes. 82913 82914 2010-08-09 Eric Carlson <eric.carlson (a] apple.com> 82915 82916 Reviewed by Darin Adler. 82917 82918 https://bugs.webkit.org/show_bug.cgi?id=43702 82919 <video> element does not resize correctly 82920 82921 * html/HTMLMediaElement.cpp: 82922 (WebCore::HTMLMediaElement::setReadyState): RenderVideo::videoSizeChanged is gone, just use 82923 updateFromElement instead. 82924 (WebCore::HTMLMediaElement::mediaPlayerDurationChanged): Ditto. 82925 (WebCore::HTMLMediaElement::mediaPlayerSizeChanged): Ditto. 82926 82927 * html/HTMLVideoElement.cpp: 82928 (WebCore::HTMLVideoElement::parseMappedAttribute): Clear the image loader and cached image when 82929 the 'poster' attribute is changed and we aren't displaying a poster. 82930 82931 * rendering/RenderVideo.cpp: 82932 (WebCore::RenderVideo::RenderVideo): 82933 (WebCore::RenderVideo::intrinsicSizeChanged): videoSizeChanged -> updateIntrinsicSize. 82934 (WebCore::RenderVideo::updateIntrinsicSize): Renamed from videoSizeChanged, calculate initial 82935 intrinsic size with calculateIntrinsicSize 82936 (WebCore::RenderVideo::calculateIntrinsicSize): New, calculate size according to current spec. 82937 (WebCore::RenderVideo::imageChanged): Reset intrinsic size to default when poster fails to load. 82938 (WebCore::RenderVideo::updatePlayer): Call updateIntrinsicSize. 82939 * rendering/RenderVideo.h: Renamed videoSizeChanged to updateIntrinsicSize and make private. 82940 82941 2010-08-09 Marcus Bulach <bulach (a] chromium.org> 82942 82943 Reviewed by Jeremy Orlow. 82944 82945 Fixes custom JS bindings for IDBCursor after r64828. 82946 https://bugs.webkit.org/show_bug.cgi?id=43729 82947 82948 Build fix, no tests. 82949 82950 * WebCore.xcodeproj/project.pbxproj: 82951 * bindings/js/JSIDBAnyCustom.cpp: 82952 (WebCore::toJS): 82953 * storage/IDBObjectStore.h: 82954 82955 2010-08-09 Sheriff Bot <webkit.review.bot (a] gmail.com> 82956 82957 Unreviewed, rolling out r64993. 82958 http://trac.webkit.org/changeset/64993 82959 https://bugs.webkit.org/show_bug.cgi?id=43734 82960 82961 broke chromium compile (Requested by jamesr on #webkit). 82962 82963 * platform/graphics/chromium/CanvasLayerChromium.cpp: 82964 (WebCore::CanvasLayerChromium::updateTextureContents): 82965 * platform/graphics/chromium/CanvasLayerChromium.h: 82966 * platform/graphics/skia/PlatformContextSkia.cpp: 82967 (WebCore::PlatformContextSkia::~PlatformContextSkia): 82968 (WebCore::PlatformContextSkia::setGraphicsContext3D): 82969 82970 2010-08-09 James Robinson <jamesr (a] chromium.org> 82971 82972 Reviewed by Dimitri Glazkov. 82973 82974 [chromium] Add a PrepareTextureCallback to the chromium canvas layer compositor to upload mixed-mode results before compositing 82975 https://bugs.webkit.org/show_bug.cgi?id=43656 82976 82977 When compositing an accelerated canvas that is using both hardware and software drawing, 82978 we need a callback before compositing the layer to make sure that we upload any software 82979 drawn results to the texture. This will go away as soon as implement all draw calls 82980 in hardware. 82981 82982 To test, run any canvas demo that runs in mixed mode and verifies that the software results 82983 always show up. 82984 82985 * platform/graphics/chromium/CanvasLayerChromium.cpp: 82986 (WebCore::CanvasLayerChromium::updateTextureContents): 82987 * platform/graphics/chromium/CanvasLayerChromium.h: 82988 (WebCore::CanvasLayerChromium::setPrepareTextureCallback): 82989 * platform/graphics/skia/PlatformContextSkia.cpp: 82990 (WebCore::PrepareTextureCallbackImpl::create): 82991 (WebCore::PrepareTextureCallbackImpl::willPrepareTexture): 82992 (WebCore::PrepareTextureCallbackImpl::PrepareTextureCallbackImpl): 82993 (WebCore::PlatformContextSkia::setGraphicsContext3D): 82994 82995 2010-08-09 Dominic Cooney <dominicc (a] google.com> 82996 82997 Reviewed by Adam Barth. 82998 82999 Moves window.open logic into the generic bindings. 83000 83001 This patch moves window.open logic from V8 into the generic 83002 bindings so it could be shared with JSC. JSC sharing is not in 83003 this patch. This patch is of the same flavor/intent as 33201. 83004 83005 https://bugs.webkit.org/show_bug.cgi?id=41392 83006 83007 * bindings/generic/BindingDOMWindow.h: 83008 (WebCore::::createWindow): 83009 (WebCore::::open): 83010 (WebCore::::completeURL): 83011 * bindings/generic/BindingSecurity.h: 83012 (WebCore::::allowPopUp): 83013 (WebCore::::shouldAllowNavigation): 83014 * bindings/v8/V8Binding.h: 83015 (WebCore::V8Binding::emptyScriptValue): 83016 * bindings/v8/V8Utilities.cpp: 83017 (WebCore::transferHiddenDependency): 83018 (WebCore::processingUserGesture): 83019 (WebCore::shouldAllowNavigation): 83020 (WebCore::completeURL): 83021 * bindings/v8/custom/V8ArrayBufferCustom.cpp: 83022 * bindings/v8/custom/V8DOMWindowCustom.cpp: 83023 (WebCore::V8DOMWindow::showModalDialogCallback): 83024 (WebCore::V8DOMWindow::openCallback): 83025 * bindings/v8/specialization/V8BindingState.cpp: 83026 (WebCore::::getActiveFrame): 83027 (WebCore::::getFirstFrame): 83028 (WebCore::::processingUserGesture): 83029 * bindings/v8/specialization/V8BindingState.h: 83030 (WebCore::): 83031 83032 2010-08-09 Marcus Bulach <bulach (a] chromium.org> 83033 83034 Reviewed by Darin Adler. 83035 83036 Fixes xcode project issues after r64828: 83037 https://bugs.webkit.org/show_bug.cgi?id=43638 83038 83039 Build fix, no tests (sort-Xcode-project-file should not throw any warnings). 83040 83041 * WebCore.xcodeproj/project.pbxproj: fixed IDBCursor and related IndexedDB files, and re-ran sort-Xcode-project-file. 83042 83043 2010-08-09 Ilya Tikhonovsky <loislo (a] chromium.org> 83044 83045 Reviewed by Pavel Feldman. 83046 83047 Web Inspector: Remove callId argument from all backend agents' methods. 83048 https://bugs.webkit.org/show_bug.cgi?id=43723 83049 83050 * inspector/CodeGeneratorInspector.pm: 83051 * inspector/InspectorApplicationCacheAgent.cpp: 83052 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): 83053 * inspector/InspectorApplicationCacheAgent.h: 83054 * inspector/InspectorBackend.cpp: 83055 (WebCore::InspectorBackend::getProfilerLogLines): 83056 (WebCore::InspectorBackend::clearConsoleMessages): 83057 (WebCore::InspectorBackend::getDatabaseTableNames): 83058 * inspector/InspectorBackend.h: 83059 * inspector/InspectorController.cpp: 83060 (WebCore::InspectorController::getCookies): 83061 (WebCore::InspectorController::getDOMStorageEntries): 83062 (WebCore::InspectorController::setDOMStorageItem): 83063 (WebCore::InspectorController::removeDOMStorageItem): 83064 (WebCore::InspectorController::getProfileHeaders): 83065 (WebCore::InspectorController::getProfile): 83066 (WebCore::InspectorController::getResourceContent): 83067 * inspector/InspectorController.h: 83068 * inspector/InspectorDOMAgent.cpp: 83069 (WebCore::InspectorDOMAgent::getChildNodes): 83070 (WebCore::InspectorDOMAgent::setAttribute): 83071 (WebCore::InspectorDOMAgent::removeAttribute): 83072 (WebCore::InspectorDOMAgent::removeNode): 83073 (WebCore::InspectorDOMAgent::changeTagName): 83074 (WebCore::InspectorDOMAgent::getOuterHTML): 83075 (WebCore::InspectorDOMAgent::setOuterHTML): 83076 (WebCore::InspectorDOMAgent::setTextNodeValue): 83077 (WebCore::InspectorDOMAgent::getEventListenersForNode): 83078 (WebCore::InspectorDOMAgent::getStyles): 83079 (WebCore::InspectorDOMAgent::getAllStyles): 83080 (WebCore::InspectorDOMAgent::getStyleSheet): 83081 (WebCore::InspectorDOMAgent::getRuleRanges): 83082 (WebCore::InspectorDOMAgent::getInlineStyle): 83083 (WebCore::InspectorDOMAgent::getComputedStyle): 83084 (WebCore::InspectorDOMAgent::applyStyleText): 83085 (WebCore::InspectorDOMAgent::setStyleText): 83086 (WebCore::InspectorDOMAgent::setStyleProperty): 83087 (WebCore::InspectorDOMAgent::toggleStyleEnabled): 83088 (WebCore::InspectorDOMAgent::setRuleSelector): 83089 (WebCore::InspectorDOMAgent::addRule): 83090 (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend): 83091 * inspector/InspectorDOMAgent.h: 83092 * inspector/InspectorDebuggerAgent.cpp: 83093 (WebCore::InspectorDebuggerAgent::setBreakpoint): 83094 (WebCore::InspectorDebuggerAgent::editScriptSource): 83095 (WebCore::InspectorDebuggerAgent::getScriptSource): 83096 * inspector/InspectorDebuggerAgent.h: 83097 83098 2010-08-09 Franois Sausset <sausset (a] gmail.com> 83099 83100 Reviewed by Kenneth Rohde Christiansen. 83101 83102 Take into account style color to draw MathML mroot radical. 83103 https://bugs.webkit.org/show_bug.cgi?id=43628 83104 83105 Test: mathml/presentation/roots.xhtml 83106 83107 * mathml/RenderMathMLRoot.cpp: 83108 (WebCore::RenderMathMLRoot::paint): 83109 83110 2010-08-09 Franois Sausset <sausset (a] gmail.com> 83111 83112 Reviewed by Kenneth Rohde Christiansen. 83113 83114 Implement MathML deprecated style attributes 83115 https://bugs.webkit.org/show_bug.cgi?id=43503 83116 83117 Test: mathml/presentation/attributes.xhtml 83118 83119 * mathml/MathMLElement.cpp: 83120 (WebCore::MathMLElement::mapToEntry): 83121 (WebCore::MathMLElement::parseMappedAttribute): 83122 * mathml/mathattrs.in: 83123 83124 2010-08-09 Ilya Tikhonovsky <loislo (a] chromium.org> 83125 83126 Reviewed by Yury Semikhatsky. 83127 83128 Web Inspector: remove unnecessary did* methods from RemoteInspectorFrontend. 83129 https://bugs.webkit.org/show_bug.cgi?id=43721 83130 83131 * inspector/CodeGeneratorInspector.pm: 83132 83133 2010-08-09 Andreas Kling <andreas.kling (a] nokia.com> 83134 83135 Reviewed by Antonio Gomes. 83136 83137 Canvas: Fast-path for setting the already set color with setStrokeColor() and setFillColor() 83138 https://bugs.webkit.org/show_bug.cgi?id=43718 83139 83140 Avoid creating CanvasStyle objects when setting the same fill or stroke color using 83141 the WebKit-specific setters of CanvasRenderingContext2D. 83142 83143 * html/canvas/CanvasRenderingContext2D.cpp: 83144 (WebCore::CanvasRenderingContext2D::setStrokeColor): 83145 (WebCore::CanvasRenderingContext2D::setFillColor): 83146 * html/canvas/CanvasStyle.cpp: 83147 (WebCore::CanvasStyle::isEquivalentColor): 83148 * html/canvas/CanvasStyle.h: Added CanvasStyle::isEquivalentColor() overloads 83149 for RGBA and CMYKA channel values. 83150 83151 2010-08-09 Pavel Feldman <pfeldman (a] chromium.org> 83152 83153 Reviewed by Yury Semikhatsky. 83154 83155 Web Inspector: restore original last panel restore logic. 83156 83157 https://bugs.webkit.org/show_bug.cgi?id=43719 83158 83159 * inspector/front-end/inspector.js: 83160 (WebInspector.showPanel): 83161 83162 2010-08-09 Dumitru Daniliuc <dumi (a] chromium.org> 83163 83164 Unreviewed, fixing the builds after r64967. 83165 83166 * CMakeLists.txt: 83167 * GNUmakefile.am: 83168 * WebCore.pro: 83169 * WebCore.vcproj/WebCore.vcproj: 83170 83171 2010-05-27 MORITA Hajime <morrita (a] google.com> 83172 83173 Reviewed by Ojan Vafai. 83174 83175 <http://webkit.org/b/36359> 83176 Double clicking page's last editable inline element causes assertion failure. 83177 <http://webkit.org/b/36360> 83178 Double clicking page's first editable inline element cannot select a word. 83179 83180 nextBoundary() and previousBoundary() assumed that editable 83181 boundaries are on block-level elements, But it can appear on 83182 inline-level elements. So we start boundary look-up from the given 83183 node, instead of the containingBlock of the given node. 83184 Also, added TextIteratorEndsAtEditingBoundary to 83185 BackwardsCharacterIterator, otherwise, the VisiblePosition 83186 returned by BackwardsCharacterIterator might cross an editing 83187 boundary. 83188 83189 Test: editing/selection/doubleclick-inline-first-last-contenteditable.html 83190 83191 * dom/Position.cpp: 83192 (WebCore::Position::parentEditingBoundary): Added. 83193 * dom/Position.h: 83194 * editing/TextIterator.cpp: 83195 (WebCore::TextIterator::TextIterator): 83196 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): 83197 (WebCore::SimplifiedBackwardsTextIterator::advance): 83198 (WebCore::SimplifiedBackwardsTextIterator::crossesEditingBoundary): Added. 83199 (WebCore::SimplifiedBackwardsTextIterator::setCurrentNode): Added. 83200 (WebCore::SimplifiedBackwardsTextIterator::clearCurrentNode): Added. 83201 (WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator): 83202 * editing/TextIterator.h: 83203 (WebCore::): 83204 * editing/visible_units.cpp: 83205 (WebCore::previousBoundary): 83206 (WebCore::nextBoundary): 83207 83208 2010-08-09 Ilya Tikhonovsky <loislo (a] chromium.org> 83209 83210 Reviewed by Yury Semikhatsky. 83211 83212 WebInspector: Current implementation of showPanel is a bit complicated. 83213 It is using internal enum for all the panels and this is the problem because 83214 we should change a lot of code for a new panel. 83215 https://bugs.webkit.org/show_bug.cgi?id=43711 83216 83217 * WebCore.exp.in: 83218 * inspector/Inspector.idl: 83219 * inspector/InspectorController.cpp: 83220 (WebCore::InspectorController::InspectorController): 83221 (WebCore::InspectorController::storeLastActivePanel): 83222 (WebCore::InspectorController::connectFrontend): 83223 (WebCore::InspectorController::showPanel): 83224 (WebCore::InspectorController::disconnectFrontend): 83225 * inspector/InspectorController.h: 83226 * inspector/InspectorFrontend.cpp: 83227 * inspector/InspectorFrontend.h: 83228 * inspector/front-end/ElementsTreeOutline.js: 83229 (WebInspector.ElementsTreeElement.prototype.selectOnMouseDown): 83230 * inspector/front-end/ExtensionServer.js: 83231 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 83232 * inspector/front-end/inspector.js: 83233 (WebInspector.documentClick.followLink): 83234 (WebInspector.documentClick): 83235 (WebInspector.toggleSearchingForNode): 83236 (WebInspector.showPanel): 83237 (WebInspector.selectDatabase): 83238 (WebInspector.selectDOMStorage): 83239 (WebInspector.showProfileForURL): 83240 83241 2010-08-09 Ariya Hidayat <ariya (a] sencha.com> 83242 83243 Reviewed by Kenneth Rohde Christiansen. 83244 83245 [Qt] GraphicsContext::clipOut(IntRect) ignores the transformation matrix. 83246 https://bugs.webkit.org/show_bug.cgi?id=43705 83247 83248 Just like clipOut(Path), which is taken care in r60796 already, 83249 clipOut(IntRect) must transform the window bounding box properly. 83250 83251 * platform/graphics/qt/GraphicsContextQt.cpp: 83252 (WebCore::GraphicsContext::clipOut): 83253 83254 2010-08-09 Franois Sausset <sausset (a] gmail.com> 83255 83256 Reviewed by Kenneth Rohde Christiansen. 83257 83258 Implement mfenced MathML element 83259 Update stretchy operator code to take into account new brackets and to tune layout parameters 83260 https://bugs.webkit.org/show_bug.cgi?id=42472 83261 83262 Test: mathml/presentation/fenced.xhtml 83263 83264 * WebCore.xcodeproj/project.pbxproj: 83265 * mathml/MathMLInlineContainerElement.cpp: 83266 (WebCore::MathMLInlineContainerElement::MathMLInlineContainerElement): 83267 (WebCore::MathMLInlineContainerElement::createRenderer): 83268 * mathml/RenderMathMLFenced.cpp: Added. 83269 (WebCore::RenderMathMLFenced::RenderMathMLFenced): 83270 (WebCore::RenderMathMLFenced::updateFromElement): 83271 (WebCore::RenderMathMLFenced::makeOperatorStyle): 83272 (WebCore::RenderMathMLFenced::makeFences): 83273 (WebCore::RenderMathMLFenced::addChild): 83274 (WebCore::RenderMathMLFenced::layout): 83275 * mathml/RenderMathMLFenced.h: Added. 83276 * mathml/RenderMathMLOperator.cpp: 83277 (WebCore::RenderMathMLOperator::RenderMathMLOperator): 83278 (WebCore::RenderMathMLOperator::stretchToHeight): 83279 (WebCore::): 83280 (WebCore::RenderMathMLOperator::updateFromElement): 83281 (WebCore::RenderMathMLOperator::createStackableStyle): 83282 (WebCore::RenderMathMLOperator::createGlyph): 83283 83284 2010-08-08 ryuan choi <ryuan.choi (a] samsung.com> 83285 83286 Reviewed by Darin Adler. 83287 83288 REGRESSION(64898,64949) build break because of wrong filename 83289 https://bugs.webkit.org/show_bug.cgi?id=43701 83290 83291 add SVGPathStringSource.cpp and modify SVGPathSourceString.cpp to 83292 SVGPathStringSource.cpp 83293 83294 simple fixing build break, so No new tests. 83295 83296 * CMakeLists.txt: 83297 83298 2010-08-08 Ariya Hidayat <ariya (a] sencha.com> 83299 83300 Reviewed by Antonio Gomes. 83301 83302 Inconsistent Qt version checks 83303 https://bugs.webkit.org/show_bug.cgi?id=43695 83304 83305 Use QT_VERSION_CHECK macro instead of encoded hex. 83306 83307 * platform/graphics/qt/ImageBufferQt.cpp: 83308 (WebCore::getImageData): 83309 * platform/network/qt/NetworkStateNotifierPrivate.h: 83310 * platform/network/qt/NetworkStateNotifierQt.cpp: 83311 * platform/network/qt/QNetworkReplyHandler.cpp: 83312 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): 83313 (WebCore::QNetworkReplyHandler::start): 83314 * platform/qt/RenderThemeQt.cpp: 83315 (WebCore::RenderThemeQt::paintMediaSliderTrack): 83316 83317 2010-08-08 Csaba Osztrogonc <ossy (a] webkit.org> 83318 83319 Reviewed by Antonio Gomes. 83320 83321 Web Inspector: Fix warning in WebCore/inspector/InspectorDebuggerAgent.cpp 83322 https://bugs.webkit.org/show_bug.cgi?id=43698 83323 83324 * inspector/InspectorDebuggerAgent.cpp: 83325 (WebCore::InspectorDebuggerAgent::editScriptSource): Add suggested parentheses. 83326 83327 2010-08-05 MORITA Hajime <morrita (a] google.com> 83328 83329 Reviewed by Tony Chang. 83330 83331 Pasting should fire textInput event. 83332 https://bugs.webkit.org/show_bug.cgi?id=42958 83333 83334 - Extended TextEvents to hold paste-specific parameters 83335 - Did fire TextEvents at where we originally did immediate pastes. 83336 - Factored out TextEvent handling from EventHandler::defaultTextInputEventHandler() 83337 to Editor::handleTextEvent() because it's solely done by the editor. 83338 - move actual pasting logic to Editor::handleTextEvent() 83339 83340 Test: editing/pasteboard/paste-text-events.html 83341 83342 * WebCore.exp.in: 83343 * dom/TextEvent.cpp: 83344 (WebCore::TextEvent::create): 83345 (WebCore::TextEvent::createForPlainTextPaste): 83346 (WebCore::TextEvent::createForFragmentPaste): 83347 (WebCore::TextEvent::TextEvent): 83348 * dom/TextEvent.h: 83349 (WebCore::TextEvent::isPaste): 83350 (WebCore::TextEvent::shouldSmartReplace): 83351 (WebCore::TextEvent::shouldMatchStyle): 83352 (WebCore::TextEvent::pastingFragment): 83353 * editing/Editor.cpp: 83354 (WebCore::Editor::handleTextEvent): 83355 (WebCore::Editor::pasteAsPlainText): 83356 (WebCore::Editor::pasteAsFragment): 83357 (WebCore::Editor::pasteAsPlainTextWithPasteboard): 83358 (WebCore::Editor::pasteWithPasteboard): 83359 (WebCore::Editor::dispatchCPPEvent): 83360 (WebCore::Editor::findEventTargetFromSelection): 83361 * editing/Editor.h: 83362 * page/EventHandler.cpp: 83363 (WebCore::EventHandler::defaultTextInputEventHandler): 83364 83365 2010-08-08 Kevin Ollivier <kevino (a] theolliviers.com> 83366 83367 [wx] Build fix, add member needed to compile Mac-specific font code. 83368 83369 * platform/graphics/wx/FontPlatformData.h: 83370 (WebCore::FontPlatformData::ctFont): 83371 83372 2010-08-08 Csaba Osztrogonc <ossy (a] webkit.org> 83373 83374 Reviewed by Eric Seidel. 83375 83376 [Qt] Fix warnings in WebCore/platform/WindowsKeyboardCodes.h 83377 https://bugs.webkit.org/show_bug.cgi?id=43360 83378 83379 * platform/WindowsKeyboardCodes.h: Undef macros which are also defined in MinGW/include/winuser.h to aviod gcc redefinition warning 83380 83381 2010-08-08 James Robinson <jamesr (a] chromium.org> 83382 83383 Reviewed by Adam Barth. 83384 83385 Set the shouldLazyAttach flag to true in the tree builder's adoption agency algorithm 83386 https://bugs.webkit.org/show_bug.cgi?id=43610 83387 83388 Sets the shouldLazyAttach flag to true for appendChild() calls inside the HTML tree 83389 builder's adoption agency flag. This is a speedup assuming that nodes subjected 83390 to the adoption agency are likely to be frequently reparented, and thus it is better 83391 to delay creating the render tree until later (when hopefully the DOM is finalized). 83392 83393 On my mac pro this speeds up fast/parser/residual-style-hang.html by 2.6X. 83394 83395 * html/HTMLTreeBuilder.cpp: 83396 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 83397 83398 2010-08-08 Nikita Vasilyev <me (a] elv1s.ru> 83399 83400 Reviewed by Pavel Feldman. 83401 83402 Web Inspector: speed-up Element.prototype.removeChildren 83403 https://bugs.webkit.org/show_bug.cgi?id=43687 83404 83405 * inspector/front-end/utilities.js: 83406 (Element.prototype.removeChildren): 83407 83408 2010-08-08 Ilya Tikhonovsky <loislo (a] chromium.org> 83409 83410 Reviewed by Pavel Feldman. 83411 83412 WebInspector: remove hand written InspectorFrontend from almost all places. 83413 https://bugs.webkit.org/show_bug.cgi?id=43630 83414 83415 * inspector/ConsoleMessage.cpp: 83416 * inspector/InjectedScriptHost.cpp: 83417 (WebCore::InjectedScriptHost::pushNodePathToFrontend): 83418 * inspector/InjectedScriptHost.h: 83419 * inspector/Inspector.idl: 83420 * inspector/InspectorBackend.cpp: 83421 * inspector/InspectorController.cpp: 83422 (WebCore::InspectorController::inspectedPageDestroyed): 83423 (WebCore::InspectorController::inspect): 83424 (WebCore::InspectorController::focusNode): 83425 (WebCore::InspectorController::windowVisible): 83426 (WebCore::InspectorController::addConsoleMessage): 83427 (WebCore::InspectorController::inspectedWindowScriptObjectCleared): 83428 (WebCore::InspectorController::setSearchingForNode): 83429 (WebCore::InspectorController::setMonitoringXHR): 83430 (WebCore::InspectorController::connectFrontend): 83431 (WebCore::InspectorController::show): 83432 (WebCore::InspectorController::showPanel): 83433 (WebCore::InspectorController::close): 83434 (WebCore::InspectorController::disconnectFrontend): 83435 (WebCore::InspectorController::populateScriptObjects): 83436 (WebCore::InspectorController::didCommitLoad): 83437 (WebCore::InspectorController::enableResourceTracking): 83438 (WebCore::InspectorController::disableResourceTracking): 83439 (WebCore::InspectorController::startTimelineProfiler): 83440 (WebCore::InspectorController::stopTimelineProfiler): 83441 (WebCore::InspectorController::postWorkerNotificationToFrontend): 83442 (WebCore::InspectorController::didCreateWorker): 83443 (WebCore::InspectorController::didDestroyWorker): 83444 (WebCore::InspectorController::toggleRecordButton): 83445 (WebCore::InspectorController::enableProfiler): 83446 (WebCore::InspectorController::disableProfiler): 83447 (WebCore::InspectorController::enableDebuggerFromFrontend): 83448 (WebCore::InspectorController::enableDebugger): 83449 (WebCore::InspectorController::disableDebugger): 83450 (WebCore::InspectorController::evaluateForTestInFrontend): 83451 * inspector/InspectorFrontend.cpp: 83452 * inspector/InspectorFrontend.h: 83453 * inspector/InspectorFrontendClientLocal.cpp: 83454 * inspector/TimelineRecordFactory.cpp: 83455 83456 2010-08-08 Dan Bernstein <mitz (a] apple.com> 83457 83458 Try to fix the Chromium Mac build after r64915. 83459 83460 * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: 83461 (WebCore::FontPlatformData::ctFont): Copied from mac/FontPlatformDataMac.mm. 83462 83463 2010-08-08 Dirk Schulze <krit (a] webkit.org> 83464 83465 Reviewed by Nikolas Zimmermann. 83466 83467 Add missing String builder for SVGPathParser 83468 https://bugs.webkit.org/show_bug.cgi?id=43682 83469 83470 Introduces SVGPathStringBuilder. SVGPathParser clients, like normalized and unaltered 83471 SVGPathSegLists or SVGPathByteStreams, can be parsed and transformed to a string. 83472 StringBuilder can create a string of individual strings, seperated by spaces now. 83473 Share more code in SVGPathParserFactory and use a common general concept to manage SVG path 83474 data parsing. 83475 83476 Doesn't affect any tests. 83477 83478 * Android.mk: 83479 * GNUmakefile.am: 83480 * WebCore.gypi: 83481 * WebCore.pro: 83482 * WebCore.vcproj/WebCore.vcproj: 83483 * WebCore.xcodeproj/project.pbxproj: 83484 * platform/text/StringBuilder.cpp: 83485 (WebCore::StringBuilder::toString): Added possibility to use a space between individual strings. 83486 * platform/text/StringBuilder.h: Cleanup according to WebKit style. 83487 (WebCore::): 83488 (WebCore::StringBuilder::StringBuilder): 83489 (WebCore::StringBuilder::setNonNull): 83490 (WebCore::StringBuilder::isNull): 83491 * svg/SVGAllInOne.cpp: 83492 * svg/SVGPathBuilder.h: 83493 (WebCore::SVGPathBuilder::cleanup): Clear all references. 83494 * svg/SVGPathByteStreamBuilder.h: 83495 (WebCore::SVGPathByteStreamBuilder::cleanup): dito. 83496 * svg/SVGPathConsumer.h: 83497 * svg/SVGPathParser.cpp: 83498 (WebCore::SVGPathParser::cleanup): dito. 83499 * svg/SVGPathParser.h: 83500 * svg/SVGPathParserFactory.cpp: Cleanup of factory. More code get shared. 83501 (WebCore::globalSVGPathBuilder): 83502 (WebCore::globalSVGPathSegListBuilder): 83503 (WebCore::globalSVGPathByteStreamBuilder): 83504 (WebCore::globalSVGPathStringBuilder): 83505 (WebCore::globalSVGPathParser): 83506 (WebCore::SVGPathParserFactory::buildPathFromString): 83507 (WebCore::SVGPathParserFactory::buildPathFromByteStream): 83508 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString): 83509 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 83510 (WebCore::SVGPathParserFactory::buildStringFromByteStream): 83511 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString): 83512 * svg/SVGPathParserFactory.h: 83513 * svg/SVGPathSegListBuilder.h: 83514 (WebCore::SVGPathSegListBuilder::cleanup): 83515 * svg/SVGPathStringBuilder.cpp: Added. Build string from parsed SVG data. 83516 (WebCore::SVGPathStringBuilder::SVGPathStringBuilder): 83517 (WebCore::SVGPathStringBuilder::moveTo): 83518 (WebCore::SVGPathStringBuilder::lineTo): 83519 (WebCore::SVGPathStringBuilder::lineToHorizontal): 83520 (WebCore::SVGPathStringBuilder::lineToVertical): 83521 (WebCore::SVGPathStringBuilder::curveToCubic): 83522 (WebCore::SVGPathStringBuilder::curveToCubicSmooth): 83523 (WebCore::SVGPathStringBuilder::curveToQuadratic): 83524 (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth): 83525 (WebCore::SVGPathStringBuilder::arcTo): 83526 (WebCore::SVGPathStringBuilder::closePath): 83527 * svg/SVGPathStringBuilder.h: Added. 83528 (WebCore::SVGPathStringBuilder::cleanup): 83529 (WebCore::SVGPathStringBuilder::result): 83530 83531 2010-08-08 Adam Barth <abarth (a] webkit.org> 83532 83533 Reviewed by Eric Seidel. 83534 83535 cross_fuzz WebCore::SelectionController::isFocusedAndActive ReadAV@NULL (9e865de49b1800ec790dcc35d8ebd069) 83536 https://bugs.webkit.org/show_bug.cgi?id=43040 83537 83538 The pointer from Document to Frame can be null. See http://webkit.org/coding/major-objects.html. 83539 83540 * css/CSSStyleSelector.cpp: 83541 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 83542 83543 2010-08-08 Adam Barth <abarth (a] webkit.org> 83544 83545 Reviewed by Dimitri Glazkov. 83546 83547 frame()->selection() can't be null 83548 https://bugs.webkit.org/show_bug.cgi?id=43681 83549 83550 SelectionController is a component of Frame. If frame is non-null, it 83551 can't possibly be null. 83552 83553 * html/HTMLAnchorElement.cpp: 83554 (WebCore::HTMLAnchorElement::setActive): 83555 83556 2010-08-08 Adam Barth <abarth (a] webkit.org> 83557 83558 Reviewed by Dimitri Glazkov. 83559 83560 SVGLength uses ASSERTs to validate user input 83561 https://bugs.webkit.org/show_bug.cgi?id=43680 83562 83563 ASSERTs aren't in release builds, so we can't use them to validate user 83564 input! We've seen a bunch of examples of this in SVG code. It might 83565 be worth auditing all the code to remove this misguided pattern. 83566 83567 Test: svg/dom/svg-length-units.html 83568 83569 * svg/SVGLength.cpp: 83570 (WebCore::SVGLength::newValueSpecifiedUnits): 83571 (WebCore::SVGLength::convertToSpecifiedUnits): 83572 83573 2010-08-07 Adam Barth <abarth (a] webkit.org> 83574 83575 Reviewed by Sam Weinig. 83576 83577 Empty strings can have more than one ref 83578 https://bugs.webkit.org/show_bug.cgi?id=43666 83579 83580 These asserts are trying to say that we have a thread-safe copy of the 83581 string, but they're not accurate for empty strings because we use a 83582 special static empty string that magically has infinite refs. 83583 83584 * storage/OriginUsageRecord.cpp: 83585 (WebCore::OriginUsageRecord::addDatabase): 83586 (WebCore::OriginUsageRecord::markDatabase): 83587 83588 2010-08-07 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 83589 Reviewed by Eric Seidel. 83590 83591 [WML] Add KURL parameter to WMLDocument::create() 83592 https://bugs.webkit.org/show_bug.cgi?id=43173 83593 83594 To fix build break in WML, url parameter is added. Because, 83595 Document class has url parameter. 83596 83597 * wml/WMLDocument.cpp: 83598 (WebCore::WMLDocument::WMLDocument): 83599 * wml/WMLDocument.h: 83600 (WebCore::WMLDocument::create): Add an url parameter to create() method 83601 83602 2010-08-07 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 83603 83604 Reviewed by Eric Seidel. 83605 83606 [WML] Change getIDAttribute() with getIdAttribute() 83607 https://bugs.webkit.org/show_bug.cgi?id=43175 83608 83609 Change getIDAttribute() with getIdAttribute() because function 83610 name was changed. 83611 83612 * wml/WMLCardElement.cpp: 83613 (WebCore::WMLCardElement::findNamedCardInDocument): Change getIDAttribute() with getIdAttribute(). 83614 83615 2010-08-07 Mihai Parparita <mihaip (a] chromium.org> 83616 83617 Reviewed by Adam Barth. 83618 83619 WebTiming does not take page cache into account 83620 https://bugs.webkit.org/show_bug.cgi?id=42772 83621 83622 When restoring a page from the page cache, reset its DocumentLoadTiming 83623 struct and record navigationStart. 83624 83625 Test: fast/events/onunload-back-to-page-cache.html 83626 83627 * loader/DocumentLoadTiming.h: removed Noncopyable, since it's just a simple struct. 83628 * loader/DocumentLoader.h: 83629 (WebCore::DocumentLoader::resetTiming): Added method. 83630 * loader/FrameLoader.cpp: 83631 (WebCore::FrameLoader::stopLoading): Uncommented assert. 83632 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): Added resetTiming() call. 83633 83634 2010-08-07 Zoltan Horvath <zoltan (a] webkit.org> 83635 83636 Reviewed by Eric Seidel. 83637 83638 Allow custom memory allocation control for EventHandlingState struct 83639 https://bugs.webkit.org/show_bug.cgi?id=43548 83640 83641 Inherits the following class from FastAllocBase because it is 83642 instantiated by 'new': 83643 83644 struct name - instantiated at: WebCore/ 83645 EventHandlingState - html/HTMLInputElement.cpp:2051 83646 83647 * html/HTMLInputElement.cpp: 83648 83649 2010-08-07 Jay Civelli <jcivelli (a] chromium.org> 83650 83651 Reviewed by Eric Seidel. 83652 83653 [Chromium] Remove unecessary focus code. 83654 https://bugs.webkit.org/show_bug.cgi?id=43542 83655 83656 * platform/chromium/ChromiumBridge.h: 83657 * platform/chromium/WidgetChromium.cpp: 83658 (WebCore::Widget::setFocus): 83659 83660 2010-08-07 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 83661 83662 Reviewed by Eric Seidel. 83663 83664 [WML] Include FormDataBuilder.h in WMLGoElement.h 83665 https://bugs.webkit.org/show_bug.cgi?id=43177 83666 83667 To fix build breaks in WMLGoElement.cpp, FormDataBuilder.h needs to be included. 83668 83669 * wml/WMLGoElement.cpp: Include FormDataBuilder.h 83670 83671 2010-08-07 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 83672 83673 Reviewed by Eric Seidel. 83674 83675 [WML] Add dummy argument to SelectElement::defaultEventHandler() in WMLSelectElement 83676 https://bugs.webkit.org/show_bug.cgi?id=43176 83677 83678 * wml/WMLSelectElement.cpp: 83679 (WebCore::WMLSelectElement::defaultEventHandler): Sets NULL parameter to SelectElement::defaultEventHandler. 83680 83681 2010-08-07 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 83682 83683 Reviewed by Eric Seidel. 83684 83685 [WML] Change DocumentParser with ScriptableDocumentParser in WMLDocument 83686 https://bugs.webkit.org/show_bug.cgi?id=43174 83687 83688 * wml/WMLDocument.cpp: 83689 (WebCore::WMLDocument::finishedParsing): Change DocumentParser with ScriptableDocumentParser. 83690 83691 2010-08-07 Dan Bernstein <mitz (a] apple.com> 83692 83693 Reviewed by Sam Weinig. 83694 83695 Use ctFont() to get the CTFont. 83696 83697 * platform/graphics/mac/FontMac.mm: 83698 (WebCore::showGlyphsWithAdvances): 83699 83700 2010-08-07 Adam Barth <abarth (a] webkit.org> 83701 83702 Reviewed by Sam Weinig. 83703 83704 document->documentElement can always be null 83705 https://bugs.webkit.org/show_bug.cgi?id=43677 83706 83707 This ASSERT is bogus. 83708 83709 * css/StyleMedia.cpp: 83710 (WebCore::StyleMedia::matchMedium): 83711 83712 2010-08-07 Dan Bernstein <mitz (a] apple.com> 83713 83714 Reviewed by Anders Carlsson. 83715 83716 <rdar://problem/8285090> First word on a line doesnt hyphenate properly 83717 https://bugs.webkit.org/show_bug.cgi?id=43679 83718 83719 Test: fast/text/hyphenate-first-word.html 83720 83721 * rendering/RenderBlockLineLayout.cpp: 83722 (WebCore::tryHyphenating): The character at lastSpace is not necessarily a whitespace character 83723 before the current word. It can also be part of the word, such as when the word is the first 83724 one on the line. Include the charcater at lastSpace in the string passed to lastHyphenLocation(). 83725 83726 2010-08-07 Dan Bernstein <mitz (a] apple.com> 83727 83728 Build fix 83729 83730 * platform/graphics/SimpleFontData.h: 83731 83732 2010-08-07 Dan Bernstein <mitz (a] apple.com> 83733 83734 Reviewed by Anders Carlsson. 83735 83736 Created a separate SimpleFontData constructor exclusively for SVG fonts and moved the CTFontRef 83737 from SimpleFontData to FontPlatformData. 83738 https://bugs.webkit.org/show_bug.cgi?id=43674 83739 83740 * config.h: Moved definitions of WTF_USE_CORE_TEXT and WTF_USE_ATSUI from here to wtf/Platform.h. 83741 * css/CSSFontFaceSource.cpp: 83742 (WebCore::CSSFontFaceSource::getFontData): Use new SimpleFontData constructor for SVG fonts. 83743 * platform/graphics/SimpleFontData.cpp: 83744 (WebCore::SimpleFontData::SimpleFontData): Separated into two constructors, one for 83745 PlatformFontData-based fonts and one for SVG fonts. 83746 * platform/graphics/SimpleFontData.h: Moved the m_CTFont member variable and the getCTFont() 83747 accessor from here 83748 * platform/graphics/mac/FontPlatformData.h: to here, renaming the latter ctFont(). 83749 * platform/graphics/mac/FontPlatformDataMac.mm: 83750 (WebCore::FontPlatformData::FontPlatformData): Copy m_CTFont. 83751 (WebCore::FontPlatformData::operator=): Copy m_CTFont. 83752 (WebCore::FontPlatformData::setFont): Clear m_CTFont. 83753 (WebCore::FontPlatformData::ctFont): Moved here from SimpleFontDataCoreText.cpp and renamed. 83754 * platform/graphics/mac/SimpleFontDataCoreText.cpp: 83755 (WebCore::SimpleFontData::getCFStringAttributes): Updated to use FontPlatformData::ctFont(). 83756 * svg/SVGFontData.cpp: 83757 (WebCore::SVGFontData::SVGFontData): Added an assertion. 83758 83759 2010-08-07 Adam Barth <abarth (a] webkit.org> 83760 83761 Reviewed by Dimitri Glazkov. 83762 83763 Regression: Memory corruption in tree builder 83764 https://bugs.webkit.org/show_bug.cgi?id=43672 83765 83766 Turns out this ASSERT was wrong and we need the branch. Yay for 83767 test-driven development. 83768 83769 * html/HTMLTreeBuilder.cpp: 83770 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 83771 83772 2010-08-07 Dirk Schulze <krit (a] webkit.org> 83773 83774 Unreviewed build-fix. 83775 83776 Come up with a more efficient way to represent Path segments 83777 https://bugs.webkit.org/show_bug.cgi?id=41159 83778 83779 Landed wrong version of the patch. 83780 83781 * svg/SVGPathByteStreamSource.cpp: 83782 (WebCore::SVGPathByteStreamSource::SVGPathByteStreamSource): 83783 (WebCore::SVGPathByteStreamSource::hasMoreData): 83784 * svg/SVGPathByteStreamSource.h: 83785 (WebCore::SVGPathByteStreamSource::moveToNextToken): 83786 * svg/SVGPathParserFactory.cpp: 83787 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 83788 (WebCore::SVGPathParserFactory::createSVGPathByteStreamFromString): 83789 * svg/SVGPathParserFactory.h: 83790 83791 2010-08-07 Dirk Schulze <krit (a] webkit.org> 83792 83793 Reviewed by Nikolas Zimmermann. 83794 83795 Come up with a more efficient way to represent Path segments 83796 https://bugs.webkit.org/show_bug.cgi?id=41159 83797 83798 Introduce SVGPathByteStream as a fast and efficient way to organize the synchronization 83799 of Path, SVG path data string and SVGPathSegList in normalized and unaltered modes. 83800 Extended SVGPathParserFactory to accept SVGPathByteStreams as input source and to create 83801 a SVGPathByteStream from a SVG path data string. 83802 83803 Doesn't affect any tests. 83804 83805 * Android.mk: 83806 * CMakeLists.txt: 83807 * GNUmakefile.am: 83808 * WebCore.gypi: 83809 * WebCore.pro: 83810 * WebCore.vcproj/WebCore.vcproj: 83811 * svg/SVGAllInOne.cpp: 83812 * svg/SVGPathByteStream.h: Added. 83813 (WebCore::): 83814 (WebCore::SVGPathByteStream::create): 83815 (WebCore::SVGPathByteStream::data): 83816 (WebCore::SVGPathByteStream::begin): 83817 (WebCore::SVGPathByteStream::end): 83818 (WebCore::SVGPathByteStream::append): 83819 (WebCore::SVGPathByteStream::clear): 83820 (WebCore::SVGPathByteStream::isEmpty): 83821 (WebCore::SVGPathByteStream::SVGPathByteStream): 83822 * svg/SVGPathByteStreamBuilder.cpp: Added. 83823 (WebCore::SVGPathByteStreamBuilder::SVGPathByteStreamBuilder): 83824 (WebCore::SVGPathByteStreamBuilder::moveTo): 83825 (WebCore::SVGPathByteStreamBuilder::lineTo): 83826 (WebCore::SVGPathByteStreamBuilder::lineToHorizontal): 83827 (WebCore::SVGPathByteStreamBuilder::lineToVertical): 83828 (WebCore::SVGPathByteStreamBuilder::curveToCubic): 83829 (WebCore::SVGPathByteStreamBuilder::curveToCubicSmooth): 83830 (WebCore::SVGPathByteStreamBuilder::curveToQuadratic): 83831 (WebCore::SVGPathByteStreamBuilder::curveToQuadraticSmooth): 83832 (WebCore::SVGPathByteStreamBuilder::arcTo): 83833 (WebCore::SVGPathByteStreamBuilder::closePath): 83834 * svg/SVGPathByteStreamBuilder.h: Added. 83835 (WebCore::SVGPathByteStreamBuilder::setCurrentByteStream): 83836 (WebCore::SVGPathByteStreamBuilder::writeType): 83837 (WebCore::SVGPathByteStreamBuilder::writeFlag): 83838 (WebCore::SVGPathByteStreamBuilder::writeFloat): 83839 (WebCore::SVGPathByteStreamBuilder::writeFloatPoint): 83840 (WebCore::SVGPathByteStreamBuilder::writeSegmentType): 83841 * svg/SVGPathByteStreamSource.cpp: Added. 83842 (WebCore::SVGPathByteStreamSource::SVGPathByteStreamSource): 83843 (WebCore::SVGPathByteStreamSource::~SVGPathByteStreamSource): 83844 (WebCore::SVGPathByteStreamSource::hasMoreData): 83845 (WebCore::SVGPathByteStreamSource::parseFloat): 83846 (WebCore::SVGPathByteStreamSource::parseFlag): 83847 (WebCore::SVGPathByteStreamSource::parseSVGSegmentType): 83848 (WebCore::SVGPathByteStreamSource::nextCommand): 83849 * svg/SVGPathByteStreamSource.h: Added. 83850 (WebCore::SVGPathByteStreamSource::create): 83851 (WebCore::SVGPathByteStreamSource::readType): 83852 (WebCore::SVGPathByteStreamSource::readFlag): 83853 (WebCore::SVGPathByteStreamSource::readFloat): 83854 (WebCore::SVGPathByteStreamSource::readSVGSegmentType): 83855 (WebCore::SVGPathByteStreamSource::readFloatPoint): 83856 * svg/SVGPathParserFactory.cpp: 83857 (WebCore::globalSVGPathByteStreamBuilder): 83858 (WebCore::SVGPathParserFactory::buildPathFromByteStream): 83859 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromByteStream): 83860 (WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString): 83861 * svg/SVGPathParserFactory.h: 83862 83863 2010-08-07 Dirk Schulze <krit (a] webkit.org> 83864 83865 Not reviewed. Sort Xcode project file. 83866 83867 * WebCore.xcodeproj/project.pbxproj: 83868 83869 2010-08-07 Sheriff Bot <webkit.review.bot (a] gmail.com> 83870 83871 Unreviewed, rolling out r64904. 83872 http://trac.webkit.org/changeset/64904 83873 https://bugs.webkit.org/show_bug.cgi?id=43671 83874 83875 Broke the Qt Windows builders. (Requested by bbandix on 83876 #webkit). 83877 83878 * WebCore.pri: 83879 * WebCore.pro: 83880 * features.pri: Removed. 83881 83882 2010-08-07 Balazs Kelemen <kb (a] inf.u-szeged.hu> 83883 83884 Reviewed by Eric Seidel. 83885 83886 [Qt] Build WebKit2 into a static lib 83887 83888 https://bugs.webkit.org/show_bug.cgi?id=43621 83889 83890 Just build changes so no new tests. 83891 83892 * WebCore.pri: Moved feature detection logic into features.pri since we need this in WebKit2.pro as well. 83893 * WebCore.pro: Moved the specification of the WebKit2 build to WebKit2.pro. Link against the static lib. 83894 * features.pri: Added. 83895 83896 2010-08-07 Nikolas Zimmermann <nzimmermann (a] rim.com> 83897 83898 Reviewed by Daniel Bates. 83899 83900 Pattern fill with image not rendered after reload 83901 https://bugs.webkit.org/show_bug.cgi?id=41596 83902 83903 Fixed by a one-liner. Instead of just invalidating it's own resources, images also have to update 83904 resources in the ancestor chain, if imageChanged() has been called (for example, a slow loading image) 83905 83906 Test: http/tests/misc/slow-loading-image-in-pattern.html 83907 83908 * rendering/RenderSVGImage.cpp: 83909 (WebCore::RenderSVGImage::imageChanged): 83910 83911 2010-08-06 Dirk Schulze <krit (a] webkit.org> 83912 83913 Reviewed by Nikolas Zimmermann. 83914 83915 Generalize SVGPathParser to allow more than just strings as input source 83916 https://bugs.webkit.org/show_bug.cgi?id=43618 83917 83918 Generalize SVGPathParser, by allowing different parsing sources than just strings. 83919 For now only a SVGPathStringSource is available, parsing from bytestreams follows soon. 83920 Each client that wants to parse strings, like Path or SVGPathSegList objects, only 83921 needs to use the new central SVGPathParserFactory, which glues consumer and sources together. 83922 Moved the SVGPathSegType enum from SVGPathSeg class in WebCore namespace, for 83923 easier access throughout the SVG code. 83924 83925 Doesn't affect any tests. 83926 83927 * Android.mk: 83928 * CMakeLists.txt 83929 * GNUmakefile.am: 83930 * WebCore.gypi: 83931 * WebCore.pro: 83932 * WebCore.vcproj/WebCore.vcproj: 83933 * WebCore.xcodeproj/project.pbxproj 83934 * svg/SVGAllInOne.cpp: 83935 * svg/SVGAnimateElement.cpp: 83936 (WebCore::SVGAnimateElement::calculateFromAndToValues): 83937 * svg/SVGAnimateMotionElement.cpp: 83938 (WebCore::SVGAnimateMotionElement::parseMappedAttribute): 83939 * svg/SVGGlyphElement.cpp: 83940 (WebCore::parsePathData): 83941 * svg/SVGPathBuilder.cpp: 83942 (WebCore::SVGPathBuilder::SVGPathBuilder): 83943 (WebCore::SVGPathBuilder::moveTo): 83944 (WebCore::SVGPathBuilder::lineTo): 83945 (WebCore::SVGPathBuilder::curveToCubic): 83946 (WebCore::SVGPathBuilder::closePath): 83947 * svg/SVGPathBuilder.h: 83948 (WebCore::SVGPathBuilder::setCurrentPath): 83949 (WebCore::SVGPathBuilder::arcTo): 83950 * svg/SVGPathConsumer.h: 83951 * svg/SVGPathElement.cpp: 83952 (WebCore::SVGPathElement::parseMappedAttribute): 83953 * svg/SVGPathParser.cpp: 83954 (WebCore::SVGPathParser::SVGPathParser): 83955 (WebCore::SVGPathParser::parseClosePathSegment): 83956 (WebCore::SVGPathParser::parseMoveToSegment): 83957 (WebCore::SVGPathParser::parseLineToSegment): 83958 (WebCore::SVGPathParser::parseLineToHorizontalSegment): 83959 (WebCore::SVGPathParser::parseLineToVerticalSegment): 83960 (WebCore::SVGPathParser::parseCurveToCubicSegment): 83961 (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment): 83962 (WebCore::SVGPathParser::parseCurveToQuadraticSegment): 83963 (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment): 83964 (WebCore::SVGPathParser::parseArcToSegment): 83965 (WebCore::SVGPathParser::parsePathDataFromSource): 83966 (WebCore::SVGPathParser::decomposeArcToCubic): 83967 * svg/SVGPathParser.h: 83968 (WebCore::SVGPathParser::setCurrentConsumer): 83969 * svg/SVGPathParserFactory.cpp: Added. 83970 (WebCore::globalSVGPathBuilder): 83971 (WebCore::globalSVGPathSegListBuilder): 83972 (WebCore::globalSVGPathParser): 83973 (WebCore::SVGPathParserFactory::self): 83974 (WebCore::SVGPathParserFactory::SVGPathParserFactory): 83975 (WebCore::SVGPathParserFactory::~SVGPathParserFactory): 83976 (WebCore::SVGPathParserFactory::buildPathFromString): 83977 (WebCore::SVGPathParserFactory::buildSVGPathSegListFromString): 83978 * svg/SVGPathParserFactory.h: Added. 83979 * svg/SVGPathSeg.h: 83980 (WebCore::): 83981 (WebCore::SVGPathSeg::~SVGPathSeg): 83982 (WebCore::SVGPathSeg::): 83983 (WebCore::SVGPathSeg::pathSegType): 83984 (WebCore::SVGPathSeg::pathSegTypeAsLetter): 83985 (WebCore::SVGPathSeg::toString): 83986 (WebCore::SVGPathSeg::associatedAttributeName): 83987 (WebCore::SVGPathSeg::SVGPathSeg): 83988 (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord): 83989 (WebCore::SVGPathSegSingleCoord::setX): 83990 (WebCore::SVGPathSegSingleCoord::x): 83991 (WebCore::SVGPathSegSingleCoord::setY): 83992 (WebCore::SVGPathSegSingleCoord::y): 83993 (WebCore::SVGPathSegSingleCoord::toString): 83994 * svg/SVGPathSegList.cpp: 83995 (WebCore::SVGPathSegList::getPathSegAtLength): 83996 (WebCore::SVGPathSegList::toPathData): 83997 (WebCore::SVGPathSegList::createAnimated): 83998 * svg/SVGPathSegListBuilder.cpp: 83999 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder): 84000 (WebCore::SVGPathSegListBuilder::moveTo): 84001 (WebCore::SVGPathSegListBuilder::lineTo): 84002 (WebCore::SVGPathSegListBuilder::curveToCubic): 84003 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth): 84004 (WebCore::SVGPathSegListBuilder::curveToQuadratic): 84005 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth): 84006 (WebCore::SVGPathSegListBuilder::arcTo): 84007 * svg/SVGPathSegListBuilder.h: 84008 (WebCore::SVGPathSegListBuilder::setCurrentSVGPathSegList): 84009 * svg/SVGPathSource.h: Added. 84010 (WebCore::SVGPathSource::~SVGPathSource): 84011 (WebCore::SVGPathSource::SVGPathSource): 84012 * svg/SVGPathStringSource.cpp: Added. 84013 (WebCore::SVGPathStringSource::SVGPathStringSource): 84014 (WebCore::SVGPathStringSource::~SVGPathStringSource): 84015 (WebCore::SVGPathStringSource::endOfStream): 84016 (WebCore::SVGPathStringSource::parseFloat): 84017 (WebCore::SVGPathStringSource::parseFlag): 84018 (WebCore::SVGPathStringSource::skipSpaces): 84019 (WebCore::SVGPathStringSource::parseSVGSegmentType): 84020 (WebCore::SVGPathStringSource::hasRemainingCoordinatesInCurrentCommand): 84021 * svg/SVGPathStringSource.h: Added. 84022 (WebCore::SVGPathStringSource::create): 84023 84024 2010-08-06 Robert Hogan <robert (a] webkit.org> 84025 84026 Reviewed by Adam Barth. 84027 84028 Define setPrivateBrowsingEnabled() 84029 https://bugs.webkit.org/show_bug.cgi?id=42283 84030 84031 Define the scope of 'private browsing' in WebKit 84032 See also https://bugs.webkit.org/show_bug.cgi?id=41801 84033 84034 * page/Settings.h: 84035 84036 2010-08-06 Adam Barth <abarth (a] webkit.org> 84037 84038 Reviewed by Eric Seidel. 84039 84040 REGRESSION (r64712): YouTube video pages have contents of <noembed> elements overlapping the video description 84041 https://bugs.webkit.org/show_bug.cgi?id=43605 84042 84043 The old parser used to drop <noembed> on the floor. We're supposed to 84044 add it to the DOM, but we don't want to create a renderer for it. 84045 84046 * html/HTMLElement.cpp: 84047 (WebCore::HTMLElement::rendererIsNeeded): 84048 84049 2010-08-06 Tony Gentilcore <tonyg (a] chromium.org> 84050 84051 Reviewed by Adam Barth. 84052 84053 Fix style violations in Document 84054 https://bugs.webkit.org/show_bug.cgi?id=43657 84055 84056 No new tests because no new functionality. 84057 84058 * dom/Document.cpp: 84059 (WebCore::acceptsEditingFocus): 84060 (WebCore::Document::Document): 84061 (WebCore::Document::importNode): 84062 (WebCore::Document::adoptNode): 84063 (WebCore::Document::getElementById): 84064 (WebCore::Document::readyState): 84065 (WebCore::Document::createTreeWalker): 84066 (WebCore::Document::shouldScheduleLayout): 84067 (WebCore::Document::nextFocusableNode): 84068 (WebCore::Document::previousFocusableNode): 84069 (WebCore::Document::nodeAbsIndex): 84070 (WebCore::Document::nodeWithAbsIndex): 84071 (WebCore::Document::childTypeAllowed): 84072 (WebCore::Document::canReplaceChild): 84073 (WebCore::Document::recalcStyleSelector): 84074 (WebCore::Document::setFocusedNode): 84075 (WebCore::Document::attachNodeIterator): 84076 (WebCore::Document::detachNodeIterator): 84077 (WebCore::Document::parseQualifiedName): 84078 (WebCore::Document::getImageMap): 84079 (WebCore::Document::setInPageCache): 84080 (WebCore::Document::addMarker): 84081 (WebCore::Document::copyMarkers): 84082 (WebCore::Document::shiftMarkers): 84083 (WebCore::Document::setMarkersActive): 84084 (WebCore::Document::parentDocument): 84085 (WebCore::Document::topDocument): 84086 (WebCore::FormElementKeyHash::hash): 84087 (WebCore::Document::initSecurityContext): 84088 * dom/Document.h: 84089 (WebCore::Document::incDOMTreeVersion): 84090 (WebCore::Document::domTreeVersion): 84091 84092 2010-08-06 Eric Carlson <eric.carlson (a] apple.com> 84093 84094 Unreviewed, release Qt build fix. 84095 84096 * rendering/RenderLayerBacking.cpp: 84097 (WebCore::RenderLayerBacking::containsPaintedContent): Guard call to toRenderVideo() 84098 with #if ENABLE(VIDEO). 84099 84100 2010-08-06 Eric Carlson <eric.carlson (a] apple.com> 84101 84102 Reviewed by Simon Fraser. 84103 84104 HTML5 "video" tag with poster frame defined "flashes" right before movie displays 84105 https://bugs.webkit.org/show_bug.cgi?id=37591 84106 <rdar://problem/5650561> 84107 84108 If a video element has a poster frame, display it until the playback is requested or the movie's 84109 time is changed. 84110 84111 Test: compositing/video/video-poster.html 84112 84113 * html/HTMLMediaElement.cpp: 84114 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_displayMode. 84115 (WebCore::HTMLMediaElement::prepareForLoad): Set m_displayMode to Unknown. 84116 (WebCore::HTMLMediaElement::loadResource): Call updateDisplayState to let it set configure 84117 the poster, if necessary. 84118 (WebCore::HTMLMediaElement::noneSupported): updatePosterImage -> updateDisplayState. 84119 (WebCore::HTMLMediaElement::setNetworkState): Ditto. 84120 (WebCore::HTMLMediaElement::setReadyState): Ditto. 84121 (WebCore::HTMLMediaElement::finishSeek): Set display mode to Video so a video frame will be 84122 displayed if a poster is currently visible. 84123 (WebCore::HTMLMediaElement::mediaPlayerRepaint): updatePosterImage -> updateDisplayState. 84124 (WebCore::HTMLMediaElement::updatePlayState): Set display mode to Video. 84125 * html/HTMLMediaElement.h: 84126 (WebCore::HTMLMediaElement::displayMode): New. 84127 (WebCore::HTMLMediaElement::setDisplayMode): Ditto. 84128 (WebCore::HTMLMediaElement::updateDisplayState): Ditto. 84129 84130 * html/HTMLVideoElement.cpp: 84131 (WebCore::HTMLVideoElement::HTMLVideoElement): Remove m_shouldDisplayPosterImage. 84132 (WebCore::HTMLVideoElement::attach): Call shouldDisplayPosterImage instead of checking 84133 m_shouldDisplayPosterImage directly. 84134 (WebCore::HTMLVideoElement::detach): Ditto. 84135 (WebCore::HTMLVideoElement::parseMappedAttribute): Set m_displayMode to Unknown before calling 84136 updateDisplayState so shouldDisplayPosterImage() will return the correct result. Remove the 84137 PLUGIN_PROXY_FOR_VIDEO code, it is now in updateDisplayState. 84138 (WebCore::HTMLVideoElement::setDisplayMode): Renamed from updatePosterImage and rework logic 84139 so we tell the media engine it is OK to display video frames when there is no poster, or 84140 once the media engine has something to display and the movie has started or seeked. 84141 (WebCore::HTMLVideoElement::updateDisplayState): New, manage display mode based on poster 84142 attribute. 84143 * html/HTMLVideoElement.h: 84144 (WebCore::HTMLVideoElement::shouldDisplayPosterImage): 84145 84146 * platform/graphics/MediaPlayer.cpp: 84147 (WebCore::MediaPlayer::prepareForRendering): New, call media engine's prepareForRendering. 84148 * platform/graphics/MediaPlayer.h: 84149 * platform/graphics/MediaPlayerPrivate.h: 84150 (WebCore::MediaPlayerPrivateInterface::prepareForRendering): 84151 84152 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: 84153 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 84154 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_isAllowedToRender. 84155 (WebCore::MediaPlayerPrivate::setUpVideoRendering): 84156 (WebCore::MediaPlayerPrivate::isReadyForVideoSetup): Renamed from isReadyForRendering. 84157 (WebCore::MediaPlayerPrivate::prepareForRendering): New, set m_isAllowedToRender and 84158 inform the client that render tree should be updated so we correctly switch from showing 84159 the poster, which often doens't use a layer, to showing video frames, which do. 84160 (WebCore::MediaPlayerPrivate::updateStates): Don't call setUpVideoRendering until 84161 isReadyForVideoSetup() returns true. 84162 (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering): isReadyForRendering -> isReadyForVideoSetup 84163 84164 * rendering/RenderLayerBacking.cpp: 84165 (WebCore::RenderLayerBacking::containsPaintedContent): Only consider video when displaying 84166 video frames so a poster won't force compositing mode. 84167 84168 * rendering/RenderLayerCompositor.cpp: 84169 (WebCore::RenderLayerCompositor::requiresCompositingForVideo): Ditto. 84170 84171 * rendering/RenderVideo.cpp: 84172 (WebCore::RenderVideo::shouldDisplayVideo): New, return true when not displaying a poster. 84173 * rendering/RenderVideo.h: 84174 84175 2010-08-06 James Robinson <jamesr (a] chromium.org> 84176 84177 Reviewed by Simon Fraser. 84178 84179 Accelerated 2d canvases should get compositing layers 84180 https://bugs.webkit.org/show_bug.cgi?id=43362 84181 84182 Allows for 2d canvas rendering contexts to use a GraphicsContext3D for 84183 accelerated rendering. The rendering context holds the GraphicsContext3D 84184 alive and exposes it to the compositor. The 3d context itself is passed 84185 down through the GraphicsContext to use for actual rendering: 84186 https://bug-43362-attachments.webkit.org/attachment.cgi?id=63557 84187 84188 This approach will let us simultaneously prototype accelerated techniques 84189 for canvas 2d and revise the design of canvas elements without destabilizing 84190 all ports. 84191 84192 * html/HTMLCanvasElement.cpp: 84193 (WebCore::HTMLCanvasElement::getContext): 84194 (WebCore::HTMLCanvasElement::willDraw): 84195 (WebCore::HTMLCanvasElement::makeRenderingResultsAvailable): 84196 * html/canvas/CanvasRenderingContext.h: 84197 (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas): 84198 * html/canvas/CanvasRenderingContext2D.cpp: 84199 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 84200 (WebCore::CanvasRenderingContext2D::isAccelerated): 84201 (WebCore::CanvasRenderingContext2D::reset): 84202 (WebCore::CanvasRenderingContext2D::willDraw): 84203 (WebCore::CanvasRenderingContext2D::paintRenderingResultsToCanvas): 84204 * html/canvas/CanvasRenderingContext2D.h: 84205 (WebCore::CanvasRenderingContext2D::graphicsContext3D): 84206 * html/canvas/WebGLRenderingContext.cpp: 84207 (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): 84208 * html/canvas/WebGLRenderingContext.h: 84209 * platform/graphics/GraphicsContext.h: 84210 * platform/graphics/skia/GraphicsContextSkia.cpp: 84211 (WebCore::GraphicsContext::syncSoftwareCanvas): 84212 84213 2010-08-06 Eric Seidel <eric (a] webkit.org> 84214 84215 Reviewed by Chris Fleizach. 84216 84217 Make AX Code use more specific RenderObject subclass types 84218 https://bugs.webkit.org/show_bug.cgi?id=43632 84219 84220 No functional change, thus no tests. 84221 84222 * accessibility/AXObjectCache.cpp: 84223 (WebCore::nodeHasRole): 84224 - Make this take a String instead of AtomicString, to avoid 84225 thrashing the atomic string hash. 84226 It would be better to take a const char* here, except 84227 one caller passes nullAtom. 84228 (WebCore::createFromRenderer): 84229 - Split this out from getOrCreate to make it simpler. 84230 - No longer needs to deal with setting a "result" 84231 pointer and can instead just return. 84232 - I've also made this function use RenderBoxModelObject* 84233 where appropriate. 84234 (WebCore::AXObjectCache::getOrCreate): 84235 * accessibility/AXObjectCache.h: 84236 * accessibility/AccessibilityImageMapLink.cpp: 84237 (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink): 84238 - Fix style. 84239 * accessibility/AccessibilityMenuList.cpp: 84240 (WebCore::AccessibilityMenuList::AccessibilityMenuList): 84241 - Use a more specific type. 84242 (WebCore::AccessibilityMenuList::renderer): 84243 * accessibility/AccessibilityMenuList.h: 84244 (WebCore::AccessibilityMenuList::create): 84245 * accessibility/AccessibilityMenuListPopup.cpp: 84246 - Need RenderMenuList.h since renderer() is a RenderMenuList* 84247 * accessibility/AccessibilityObject.cpp: 84248 (WebCore::renderListItemContainerForNode): 84249 * accessibility/AccessibilityRenderObject.cpp: 84250 (WebCore::AccessibilityRenderObject::renderBoxModelObject): 84251 - New helper function, similar to Node::renderBoxModelObject() 84252 (WebCore::isInlineWithContinuation): 84253 (WebCore::AccessibilityRenderObject::isNativeImage): 84254 (WebCore::AccessibilityRenderObject::isAttachment): 84255 (WebCore::AccessibilityRenderObject::isMultiSelectable): 84256 (WebCore::AccessibilityRenderObject::isReadOnly): 84257 (WebCore::AccessibilityRenderObject::isFieldset): 84258 (WebCore::AccessibilityRenderObject::actionElement): 84259 (WebCore::AccessibilityRenderObject::stringValue): 84260 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 84261 (WebCore::AccessibilityRenderObject::setValue): 84262 (WebCore::AccessibilityRenderObject::widget): 84263 (WebCore::AccessibilityRenderObject::visiblePositionForPoint): 84264 (WebCore::AccessibilityRenderObject::doAccessibilityHitTest): 84265 (WebCore::AccessibilityRenderObject::renderObjectIsObservable): 84266 (WebCore::AccessibilityRenderObject::determineAccessibilityRole): 84267 (WebCore::AccessibilityRenderObject::addChildren): 84268 (WebCore::msaaRoleForRenderer): 84269 * accessibility/AccessibilityRenderObject.h: 84270 * accessibility/AccessibilityTable.cpp: 84271 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): 84272 * accessibility/AccessibilityTable.h: 84273 - Remove unneeded "using namespace std". 84274 84275 2010-08-06 Tony Gentilcore <tonyg (a] chromium.org> 84276 84277 Reviewed by Eric Seidel. 84278 84279 Factor an AsyncScriptRunner out of Document 84280 https://bugs.webkit.org/show_bug.cgi?id=43633 84281 84282 This copies the existing implementation exactly. In the future 84283 this will use PendingScript which handles ref counting without 84284 the need for those manual ref()/deref()s. This is also currently 84285 a trivial class, but a little more logic will be added to it to 84286 support <script async>. 84287 84288 No new tests because no new functionality. 84289 84290 * Android.mk: 84291 * CMakeLists.txt: 84292 * GNUmakefile.am: 84293 * WebCore.gypi: 84294 * WebCore.pro: 84295 * WebCore.vcproj/WebCore.vcproj: 84296 * WebCore.xcodeproj/project.pbxproj: 84297 * dom/AsyncScriptRunner.cpp: Added. 84298 (WebCore::AsyncScriptRunner::AsyncScriptRunner): 84299 (WebCore::AsyncScriptRunner::~AsyncScriptRunner): 84300 (WebCore::AsyncScriptRunner::executeScriptSoon): 84301 (WebCore::AsyncScriptRunner::suspend): 84302 (WebCore::AsyncScriptRunner::resume): 84303 (WebCore::AsyncScriptRunner::timerFired): 84304 * dom/AsyncScriptRunner.h: Added. 84305 (WebCore::AsyncScriptRunner::create): 84306 (WebCore::AsyncScriptRunner::hasPendingScripts): 84307 * dom/Document.cpp: 84308 (WebCore::Document::Document): 84309 (WebCore::Document::~Document): 84310 * dom/Document.h: 84311 (WebCore::Document::asyncScriptRunner): 84312 * dom/ScriptElement.cpp: 84313 (WebCore::ScriptElementData::notifyFinished): 84314 * page/PageGroupLoadDeferrer.cpp: 84315 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): 84316 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer): 84317 84318 2010-08-06 James Robinson <jamesr (a] chromium.org> 84319 84320 Reviewed by Dimitri Glazkov. 84321 84322 [chromium] Implement GLES2Canvas/Texture in terms of GraphicsContext3D instead of direct OpenGL calls 84323 https://bugs.webkit.org/show_bug.cgi?id=43608 84324 84325 This converts all OpenGL calls in GLES2(Canvas|Texture) to calls on the corresponding GraphicsContext3D 84326 API, due to feedback on https://bugs.webkit.org/show_bug.cgi?id=43362. Nearly all the changes are 84327 applying the regex s/gl([A-Z])/m_context->%1</ and removing unnecessary makeCurrent() calls. 84328 Other changes hilighted below. 84329 84330 * platform/graphics/chromium/GLES2Canvas.cpp: 84331 (WebCore::affineTo3x3): 84332 (WebCore::GLES2Canvas::GLES2Canvas): 84333 (WebCore::GLES2Canvas::~GLES2Canvas): 84334 (WebCore::GLES2Canvas::clearRect): 84335 (WebCore::GLES2Canvas::fillRect): 84336 (WebCore::GLES2Canvas::drawTexturedRect): 84337 (WebCore::GLES2Canvas::applyCompositeOperator): 84338 (WebCore::GLES2Canvas::getQuadVertices): 84339 (WebCore::GLES2Canvas::getQuadIndices): 84340 - use new typed XXArray classes for buffer uploads 84341 (WebCore::loadShader): 84342 (WebCore::GLES2Canvas::getSimpleProgram): 84343 (WebCore::GLES2Canvas::getTexProgram): 84344 (WebCore::GLES2Canvas::createTexture): 84345 (WebCore::GLES2Canvas::checkGLError): 84346 * platform/graphics/chromium/GLES2Canvas.h: 84347 (WebCore::GLES2Canvas::context): 84348 * platform/graphics/chromium/GLES2Texture.cpp: 84349 (WebCore::GLES2Texture::GLES2Texture): 84350 (WebCore::GLES2Texture::~GLES2Texture): 84351 (WebCore::GLES2Texture::create): 84352 (WebCore::convertFormat): 84353 (WebCore::GLES2Texture::load): 84354 (WebCore::GLES2Texture::bind): 84355 * platform/graphics/chromium/GLES2Texture.h: 84356 * platform/graphics/skia/GraphicsContextSkia.cpp: 84357 (WebCore::GraphicsContext::fillRect): 84358 - add a missing restore() call to the H/W path 84359 * platform/graphics/skia/ImageSkia.cpp: 84360 (WebCore::drawBitmapGLES2): 84361 * platform/graphics/skia/PlatformContextSkia.cpp: 84362 (WebCore::PlatformContextSkia::setGraphicsContext3D): 84363 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 84364 - avoid applying CTM to uploads 84365 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): 84366 * platform/graphics/skia/PlatformContextSkia.h: 84367 84368 2010-08-06 James Robinson <jamesr (a] chromium.org> 84369 84370 Reviewed by Simon Fraser. 84371 84372 Composited canvas should be treated the same by the compositor and not be WebGL specific 84373 https://bugs.webkit.org/show_bug.cgi?id=43589 84374 84375 This treats all GraphicsContext3D-backed layers the same instead of special casing WebGL. 84376 The cross-platform change is to rename GraphicsLayer::setContentsToWebGL() to 84377 GraphicsLayer::setContentsToCanvas() and to rename all implementations. 84378 84379 This patch also renames the chromium class used for accelerating these layers. 84380 84381 Cross platform changes: 84382 * WebCore.gypi: 84383 * platform/graphics/GraphicsLayer.h: 84384 (WebCore::GraphicsLayer::setContentsToCanvas): 84385 Rename the function on the base class. GraphicsLayerCA and GraphicsLayerChromium implement this. 84386 * rendering/RenderLayerBacking.cpp: 84387 (WebCore::isAcceleratedCanvas): 84388 Helper function to see if a renderer is associated with an accelerated compositing layer. 84389 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): 84390 (WebCore::RenderLayerBacking::containsPaintedContent): 84391 (WebCore::RenderLayerBacking::rendererContentChanged): 84392 Chromium specific changes: 84393 * platform/graphics/chromium/CanvasLayerChromium.cpp: Added. 84394 (WebCore::CanvasLayerChromium::create): 84395 (WebCore::CanvasLayerChromium::CanvasLayerChromium): 84396 (WebCore::CanvasLayerChromium::textureId): 84397 (WebCore::CanvasLayerChromium::updateTextureContents): 84398 (WebCore::CanvasLayerChromium::setContext): 84399 * platform/graphics/chromium/CanvasLayerChromium.h: Added. 84400 (WebCore::CanvasLayerChromium::drawsContent): 84401 (WebCore::CanvasLayerChromium::ownsTexture): 84402 (WebCore::CanvasLayerChromium::shaderProgramId): 84403 (WebCore::CanvasLayerChromium::setShaderProgramId): 84404 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 84405 (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay): 84406 (WebCore::GraphicsLayerChromium::setContentsToCanvas): 84407 * platform/graphics/chromium/GraphicsLayerChromium.h: 84408 (WebCore::GraphicsLayerChromium::): 84409 * platform/graphics/chromium/LayerRendererChromium.cpp: 84410 (WebCore::LayerRendererChromium::drawLayer): 84411 (WebCore::LayerRendererChromium::initializeSharedGLObjects): 84412 * platform/graphics/chromium/LayerRendererChromium.h: 84413 (WebCore::LayerRendererChromium::): 84414 * platform/graphics/chromium/WebGLLayerChromium.cpp: Removed. 84415 * platform/graphics/chromium/WebGLLayerChromium.h: Removed. 84416 Mac specific changes: 84417 * platform/graphics/mac/GraphicsLayerCA.h: 84418 (WebCore::GraphicsLayerCA::): 84419 * platform/graphics/mac/GraphicsLayerCA.mm: 84420 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): 84421 (WebCore::GraphicsLayerCA::updateContentsCanvasLayer): 84422 (WebCore::GraphicsLayerCA::setContentsToCanvas): 84423 84424 2010-08-06 Patrick Gansterer <paroga (a] paroga.com> 84425 84426 Reviewed by Eric Seidel. 84427 84428 Add PluginView::bindingInstance() to PluginViewNone 84429 https://bugs.webkit.org/show_bug.cgi?id=42936 84430 84431 * bindings/js/ScriptControllerEfl.cpp: 84432 (WebCore::ScriptController::createScriptInstanceForWidget): Removed workaround. 84433 * plugins/PluginViewNone.cpp: Added property svn:eol-style. 84434 (WebCore::PluginView::bindingInstance): Added missing method and use it on WinCE. 84435 84436 2010-08-06 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 84437 84438 Reviewed by Xan Lopez. 84439 84440 Use new "package" name also for the directory where the inspector 84441 support files are installed. 84442 84443 * GNUmakefile.am: 84444 84445 2010-08-06 Jian Li <jianli (a] chromium.org> 84446 84447 Fix chromium build break. 84448 84449 * inspector/InspectorDebuggerAgent.h: 84450 84451 2010-08-06 Dirk Schulze <krit (a] webkit.org> 84452 84453 Not reviewed. Sort Xcode project file. 84454 84455 * WebCore.xcodeproj/project.pbxproj: 84456 84457 2010-08-06 Jessie Berlin <jberlin (a] apple.com> 84458 84459 Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build. 84460 Unreviewed. 84461 84462 * accessibility/AXObjectCache.h: 84463 * accessibility/AccessibilityARIAGrid.h: 84464 * accessibility/AccessibilityListBoxOption.h: 84465 * accessibility/AccessibilityObject.h: 84466 * accessibility/AccessibilityRenderObject.h: 84467 * accessibility/AccessibilityTable.h: 84468 * bindings/cpp/WebDOMCString.h: 84469 * bindings/cpp/WebDOMString.h: 84470 * bindings/gobject/ConvertToUTF8String.h: 84471 * bindings/js/DOMWrapperWorld.h: 84472 * bindings/js/JSDOMBinding.h: 84473 * bindings/js/JSDOMWindowBase.h: 84474 * bindings/js/JSMessagePortCustom.h: 84475 * bindings/js/JavaScriptCallFrame.h: 84476 * bindings/js/ScriptController.h: 84477 * bindings/js/ScriptProfile.h: 84478 * bindings/js/ScriptSourceProvider.h: 84479 * bindings/js/ScriptString.h: 84480 * bindings/js/WorkerScriptController.h: 84481 * bindings/objc/DOMImplementationFront.h: 84482 * bindings/v8/ScheduledAction.h: 84483 * bindings/v8/ScriptController.h: 84484 * bindings/v8/V8DOMWindowShell.h: 84485 * bindings/v8/V8Proxy.h: 84486 * bindings/v8/V8Utilities.h: 84487 * bindings/v8/custom/V8CustomXPathNSResolver.h: 84488 * bridge/c/c_utility.h: 84489 * css/CSSFontSelector.h: 84490 * css/CSSHelper.h: 84491 * css/CSSOMUtils.h: 84492 * css/CSSPrimitiveValue.h: 84493 * css/MediaList.h: 84494 * css/StyleBase.h: 84495 * css/StyleSheetList.h: 84496 * css/WebKitCSSKeyframesRule.h: 84497 * dom/CheckedRadioButtons.h: 84498 * dom/DOMImplementation.h: 84499 * dom/DocumentMarker.h: 84500 * dom/DynamicNodeList.h: 84501 * dom/EventTarget.h: 84502 * dom/MessagePort.h: 84503 * dom/MessagePortChannel.h: 84504 * dom/NameNodeList.h: 84505 * dom/Node.h: 84506 * dom/NodeList.h: 84507 * dom/OptionGroupElement.h: 84508 * dom/ScriptExecutionContext.h: 84509 * dom/SelectElement.h: 84510 * dom/ViewportArguments.h: 84511 * dom/make_names.pl: 84512 * editing/HTMLInterchange.h: 84513 * editing/htmlediting.h: 84514 * editing/markup.h: 84515 * html/CollectionCache.h: 84516 * html/DOMFormData.h: 84517 * html/DataGridColumnList.h: 84518 * html/DateComponents.h: 84519 * html/FileStream.h: 84520 * html/FileStreamProxy.h: 84521 * html/FormDataList.h: 84522 (WebCore::FormDataList::appendData): 84523 * html/HTMLCollection.h: 84524 * html/HTMLElementStack.h: 84525 * html/HTMLFormattingElementList.h: 84526 * html/HTMLParserQuirks.h: 84527 * html/HTMLQuoteElement.h: 84528 * html/HTMLScriptRunnerHost.h: 84529 * html/StepRange.h: 84530 * html/canvas/CanvasGradient.h: 84531 * html/canvas/CanvasNumberArray.h: 84532 * html/canvas/CanvasPattern.h: 84533 * inspector/InjectedScript.h: 84534 * inspector/InspectorCSSStore.h: 84535 * inspector/InspectorClient.h: 84536 * inspector/InspectorFrontendClient.h: 84537 * inspector/InspectorValues.h: 84538 * inspector/ScriptDebugListener.h: 84539 * loader/CachedResourceClient.h: 84540 * loader/CrossOriginAccessControl.h: 84541 * loader/DocumentThreadableLoader.h: 84542 * loader/FrameLoaderClient.h: 84543 * loader/RedirectScheduler.h: 84544 * loader/SubframeLoader.h: 84545 * loader/appcache/DOMApplicationCache.h: 84546 * loader/archive/ArchiveFactory.h: 84547 * loader/icon/IconDatabaseClient.h: 84548 * notifications/NotificationPresenter.h: 84549 * page/Chrome.h: 84550 * page/ChromeClient.h: 84551 * page/Console.h: 84552 * page/ContextMenuClient.h: 84553 * page/DOMSelection.h: 84554 * page/EditorClient.h: 84555 * page/EventHandler.h: 84556 * page/FrameView.h: 84557 * page/GeolocationPositionCache.h: 84558 * page/History.h: 84559 * page/Location.h: 84560 * page/Navigator.h: 84561 * page/NavigatorBase.h: 84562 * page/PluginHalterClient.h: 84563 * page/PrintContext.h: 84564 * page/SpeechInput.h: 84565 * page/SpeechInputListener.h: 84566 * page/animation/AnimationController.h: 84567 * platform/CookieJar.h: 84568 * platform/CrossThreadCopier.h: 84569 * platform/DragImage.h: 84570 * platform/FileSystem.h: 84571 * platform/Language.h: 84572 * platform/Length.h: 84573 * platform/LinkHash.h: 84574 * platform/LocalizationStrategy.h: 84575 * platform/LocalizedStrings.h: 84576 * platform/Logging.h: 84577 * platform/Pasteboard.h: 84578 * platform/PopupMenuClient.h: 84579 * platform/SearchPopupMenu.h: 84580 * platform/Widget.h: 84581 * platform/cf/BinaryPropertyList.h: 84582 * platform/chromium/ChromiumBridge.h: 84583 * platform/chromium/ClipboardUtilitiesChromium.h: 84584 * platform/cocoa/KeyEventCocoa.h: 84585 * platform/graphics/Color.h: 84586 * platform/graphics/FontCache.h: 84587 * platform/graphics/FontData.h: 84588 * platform/graphics/FontSelector.h: 84589 * platform/graphics/GraphicsTypes.h: 84590 * platform/graphics/Icon.h: 84591 * platform/graphics/ImageBuffer.h: 84592 * platform/graphics/ImageSource.h: 84593 * platform/graphics/MediaPlayer.h: 84594 * platform/graphics/MediaPlayerPrivate.h: 84595 * platform/graphics/Path.h: 84596 * platform/graphics/StringTruncator.h: 84597 * platform/graphics/cairo/FontCustomPlatformData.h: 84598 * platform/graphics/cairo/FontPlatformData.h: 84599 * platform/graphics/cg/FontPlatformData.h: 84600 * platform/graphics/cg/ImageSourceCG.h: 84601 * platform/graphics/chromium/FontCustomPlatformData.h: 84602 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 84603 * platform/graphics/chromium/FontPlatformDataLinux.h: 84604 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 84605 * platform/graphics/haiku/FontCustomPlatformData.h: 84606 * platform/graphics/mac/FontCustomPlatformData.h: 84607 * platform/graphics/mac/FontPlatformData.h: 84608 * platform/graphics/qt/FontCustomPlatformData.h: 84609 * platform/graphics/qt/FontPlatformData.h: 84610 * platform/graphics/win/FontCustomPlatformData.h: 84611 * platform/graphics/win/FontCustomPlatformDataCairo.h: 84612 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 84613 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: 84614 * platform/graphics/wince/FontPlatformData.h: 84615 * platform/graphics/wince/MediaPlayerPrivateWince.h: 84616 * platform/graphics/wince/MediaPlayerProxy.h: 84617 * platform/graphics/wx/FontCustomPlatformData.h: 84618 * platform/graphics/wx/FontPlatformData.h: 84619 * platform/mac/PasteboardHelper.h: 84620 * platform/network/DNS.h: 84621 * platform/network/FormData.h: 84622 * platform/network/FormDataBuilder.h: 84623 * platform/network/HTTPParsers.h: 84624 * platform/text/Hyphenation.h: 84625 * platform/text/LineEnding.h: 84626 * platform/text/TextCodec.h: 84627 * platform/text/TextEncoding.h: 84628 * platform/text/TextStream.h: 84629 * platform/win/BString.h: 84630 * platform/win/ClipboardUtilitiesWin.h: 84631 * platform/win/WCDataObject.h: 84632 * platform/win/WebCoreTextRenderer.h: 84633 * plugins/DOMMimeType.h: 84634 * plugins/DOMMimeTypeArray.h: 84635 * plugins/DOMPlugin.h: 84636 * plugins/DOMPluginArray.h: 84637 * rendering/CounterNode.h: 84638 * rendering/HitTestResult.h: 84639 * rendering/RenderObjectChildList.h: 84640 * rendering/RenderText.h: 84641 * rendering/RenderTreeAsText.h: 84642 * rendering/TextControlInnerElements.h: 84643 * rendering/style/ContentData.h: 84644 * rendering/style/RenderStyle.h: 84645 * storage/DatabaseAuthorizer.h: 84646 * storage/DatabaseTrackerClient.h: 84647 * storage/SQLTransaction.h: 84648 * storage/SQLTransactionSync.h: 84649 * storage/Storage.h: 84650 * storage/chromium/DatabaseObserver.h: 84651 * svg/SVGAnimatedTemplate.h: 84652 * svg/SVGDocumentExtensions.h: 84653 * svg/SVGGlyphElement.h: 84654 * svg/SVGHKernElement.h: 84655 * svg/SVGNumberList.h: 84656 * svg/SVGPointList.h: 84657 * svg/SVGPreserveAspectRatio.h: 84658 * svg/SVGStylable.h: 84659 * svg/SVGTests.h: 84660 * svg/SVGTransformList.h: 84661 * svg/SVGTransformable.h: 84662 * svg/SVGVKernElement.h: 84663 * websockets/ThreadableWebSocketChannel.h: 84664 * websockets/ThreadableWebSocketChannelClientWrapper.h: 84665 * websockets/WebSocket.h: 84666 * websockets/WebSocketChannel.h: 84667 * websockets/WebSocketHandshakeResponse.h: 84668 * wml/WMLErrorHandling.h: 84669 * wml/WMLPageState.h: 84670 * wml/WMLVariables.h: 84671 * workers/DefaultSharedWorkerRepository.h: 84672 * workers/SharedWorkerRepository.h: 84673 * workers/Worker.h: 84674 * workers/WorkerContextProxy.h: 84675 * workers/WorkerLoaderProxy.h: 84676 * workers/WorkerLocation.h: 84677 * workers/WorkerMessagingProxy.h: 84678 * workers/WorkerReportingProxy.h: 84679 * workers/WorkerThread.h: 84680 * xml/DOMParser.h: 84681 * xml/XMLHttpRequestUpload.h: 84682 * xml/XPathEvaluator.h: 84683 * xml/XPathExpression.h: 84684 * xml/XPathNSResolver.h: 84685 * xml/XPathResult.h: 84686 * xml/XPathUtil.h: 84687 84688 2010-08-04 Zhenyao Mo <zmo (a] google.com> 84689 84690 Reviewed by Dimitri Glazkov. 84691 84692 WebGLBuffer::associateBufferData(ArrayBufferView* array) copies incorrect data for sliced views 84693 https://bugs.webkit.org/show_bug.cgi?id=42124 84694 84695 * html/canvas/WebGLBuffer.cpp: 84696 (WebCore::WebGLBuffer::associateBufferDataImpl): Helper function that's called by all associateBufferData(). 84697 (WebCore::WebGLBuffer::associateBufferData): Call associateBufferDataImpl(). 84698 (WebCore::WebGLBuffer::associateBufferSubDataImpl): Helper function that's called by all associateBufferSubData(). 84699 (WebCore::WebGLBuffer::associateBufferSubData): Call associateBufferSubDataImpl(). 84700 * html/canvas/WebGLBuffer.h: Declare helper functions. 84701 84702 2010-08-06 Adam Barth <abarth (a] webkit.org> 84703 84704 Reviewed by Eric Seidel. 84705 84706 noembed should respect whether plugins are enabled 84707 https://bugs.webkit.org/show_bug.cgi?id=43611 84708 84709 This instruction isn't in the HTML5 spec, but it seems like the right 84710 thing to do. I suspect this is because the spec doesn't understand 84711 that plugins can be disabled. 84712 84713 I'm not sure how we can test this in DumpRenderTree, but I'm open to 84714 suggestions. 84715 84716 * html/HTMLTreeBuilder.cpp: 84717 (WebCore::HTMLTreeBuilder::adjustedLexerState): 84718 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 84719 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 84720 (WebCore::HTMLTreeBuilder::scriptEnabled): 84721 (WebCore::HTMLTreeBuilder::pluginsEnabled): 84722 * html/HTMLTreeBuilder.h: 84723 84724 2010-08-06 Tony Gentilcore <tonyg (a] chromium.org> 84725 84726 Reviewed by Adam Barth. 84727 84728 Factor out PendingScript and protect its members 84729 https://bugs.webkit.org/show_bug.cgi?id=43391 84730 84731 This will be shared by AsyncScriptRunner. 84732 84733 No new tests because no new functionality. 84734 84735 * Android.mk: 84736 * CMakeLists.txt: 84737 * GNUmakefile.am: 84738 * WebCore.gypi: 84739 * WebCore.pro: 84740 * WebCore.vcproj/WebCore.vcproj: 84741 * WebCore.xcodeproj/project.pbxproj: 84742 * dom/PendingScript.cpp: Added. 84743 (WebCore::PendingScript::~PendingScript): 84744 (WebCore::PendingScript::element): 84745 (WebCore::PendingScript::releaseElementAndClear): 84746 (WebCore::PendingScript::setCachedScript): 84747 (WebCore::PendingScript::cachedScript): 84748 * dom/PendingScript.h: Added. 84749 (WebCore::PendingScript::PendingScript): 84750 (WebCore::PendingScript::startingLineNumber): 84751 (WebCore::PendingScript::watchingForLoad): 84752 (WebCore::PendingScript::setWatchingForLoad): 84753 (WebCore::PendingScript::hasElement): 84754 (WebCore::PendingScript::adoptElement): 84755 (WebCore::PendingScript::notifyFinished): 84756 * html/HTMLScriptRunner.cpp: 84757 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 84758 (WebCore::HTMLScriptRunner::haveParsingBlockingScript): 84759 (WebCore::HTMLScriptRunner::requestScript): 84760 * html/HTMLScriptRunner.h: 84761 84762 2010-08-06 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 84763 84764 Reviewed by Darin Adler. 84765 84766 Change permission to access methods in XMLDocumentParser.h 84767 https://bugs.webkit.org/show_bug.cgi?id=43180 84768 84769 Change permission to access wellFormed(), lineNumber() and columnNumber() 84770 in XMLDocumentParser.h. Because, the methods are used by WML. 84771 84772 * dom/XMLDocumentParser.h: 84773 (WebCore::XMLDocumentParser::wellFormed): Change accebility permission. 84774 84775 2010-08-06 Martin Robinson <mrobinson (a] igalia.com> 84776 84777 Reviewed by Gustavo Noronha Silva. 84778 84779 [GTK] Support for image drags 84780 https://bugs.webkit.org/show_bug.cgi?id=40788 84781 84782 Add image drag-and-drop support for WebKit GTK+. 84783 84784 * platform/gtk/ClipboardGtk.cpp: 84785 (WebCore::ClipboardGtk::setDragImage): Filled this stub. 84786 (WebCore::ClipboardGtk::setDragImageElement): Filled this stub. 84787 (WebCore::ClipboardGtk::createDragImage): Filled this stub. 84788 (WebCore::ClipboardGtk::declareAndWriteDragImage): Write the image URL, markup, and image itself to the data object member. 84789 * platform/gtk/ClipboardGtk.h: Brought method declarations into line with the parent class. 84790 84791 2010-08-06 Yury Semikhatsky <yurys (a] chromium.org> 84792 84793 Reviewed by Pavel Feldman. 84794 84795 Web Inspector: extract debugger implementation into InspectorDebuggerAgent 84796 https://bugs.webkit.org/show_bug.cgi?id=42340 84797 84798 * CMakeLists.txt: 84799 * GNUmakefile.am: 84800 * WebCore.gypi: 84801 * WebCore.pro: 84802 * WebCore.vcproj/WebCore.vcproj: 84803 * WebCore.xcodeproj/project.pbxproj: 84804 * inspector/CodeGeneratorInspector.pm: 84805 * inspector/Inspector.idl: 84806 * inspector/InspectorController.cpp: 84807 (WebCore::InspectorController::InspectorController): 84808 (WebCore::InspectorController::connectFrontend): 84809 (WebCore::InspectorController::didCommitLoad): 84810 (WebCore::InspectorController::enableDebuggerFromFrontend): 84811 (WebCore::InspectorController::disableDebugger): 84812 (WebCore::InspectorController::resume): 84813 (WebCore::InspectorController::loadBreakpoints): 84814 (WebCore::InspectorController::saveBreakpoints): 84815 * inspector/InspectorController.h: 84816 (WebCore::InspectorController::debuggerAgent): 84817 * inspector/InspectorDebuggerAgent.cpp: Added. 84818 (WebCore::md5Base16): 84819 (WebCore::formatBreakpointId): 84820 (WebCore::InspectorDebuggerAgent::create): 84821 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 84822 (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent): 84823 (WebCore::InspectorDebuggerAgent::isDebuggerAlwaysEnabled): 84824 (WebCore::InspectorDebuggerAgent::activateBreakpoints): 84825 (WebCore::InspectorDebuggerAgent::deactivateBreakpoints): 84826 (WebCore::InspectorDebuggerAgent::setBreakpoint): 84827 (WebCore::InspectorDebuggerAgent::removeBreakpoint): 84828 (WebCore::InspectorDebuggerAgent::editScriptSource): 84829 (WebCore::InspectorDebuggerAgent::getScriptSource): 84830 (WebCore::InspectorDebuggerAgent::pause): 84831 (WebCore::InspectorDebuggerAgent::resume): 84832 (WebCore::InspectorDebuggerAgent::stepOverStatement): 84833 (WebCore::InspectorDebuggerAgent::stepIntoStatement): 84834 (WebCore::InspectorDebuggerAgent::stepOutOfFunction): 84835 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): 84836 (WebCore::InspectorDebuggerAgent::clearForPageNavigation): 84837 (WebCore::InspectorDebuggerAgent::currentCallFrames): 84838 (WebCore::InspectorDebuggerAgent::loadBreakpoints): 84839 (WebCore::InspectorDebuggerAgent::saveBreakpoints): 84840 (WebCore::InspectorDebuggerAgent::didParseSource): 84841 (WebCore::InspectorDebuggerAgent::failedToParseSource): 84842 (WebCore::InspectorDebuggerAgent::didPause): 84843 (WebCore::InspectorDebuggerAgent::didContinue): 84844 (WebCore::InspectorDebuggerAgent::remoteFrontend): 84845 * inspector/InspectorDebuggerAgent.h: Added. 84846 * inspector/InspectorFrontend.cpp: 84847 * inspector/InspectorFrontend.h: 84848 * inspector/front-end/ScriptsPanel.js: 84849 (WebInspector.ScriptsPanel): 84850 84851 2010-08-06 Dean Jackson <dino (a] apple.com> 84852 84853 Reviewed by Simon Fraser and Steve Block. 84854 84855 https://bugs.webkit.org/show_bug.cgi?id=42865 84856 Implement DeviceMotionEvent 84857 84858 Implement the DeviceMotionEvent interface as defined 84859 in http://dev.w3.org/geo/api/spec-source-orientation.html 84860 This is currently an empty implementation, in that there is 84861 no motion client connected - the platform implementations 84862 will need to do that. 84863 84864 Tests: fast/dom/DeviceMotion/create-event.html 84865 fast/dom/DeviceMotion/optional-event-properties.html 84866 fast/dom/DeviceMotion/window-property.html 84867 84868 * Android.derived.jscbindings.mk: 84869 * Android.derived.v8bindings.mk: 84870 * Android.jscbindings.mk: 84871 * Android.mk: 84872 * Android.v8bindings.mk: 84873 * CMakeLists.txt: 84874 * Configurations/FeatureDefines.xcconfig: 84875 * DerivedSources.make: 84876 * GNUmakefile.am: 84877 * WebCore.gypi: 84878 * WebCore.pro: 84879 * WebCore.vcproj/WebCore.vcproj: 84880 * WebCore.xcodeproj/project.pbxproj: 84881 - Add new files for DeviceMotionEvent build support 84882 * bindings/generic/RuntimeEnabledFeatures.cpp: 84883 * bindings/generic/RuntimeEnabledFeatures.h: 84884 - new runtime flags for device motion 84885 * bindings/js/JSDeviceMotionEventCustom.cpp: Added. 84886 * bindings/v8/custom/V8DeviceMotionEventCustom.cpp: Added. 84887 - Custom JS binding to translate property access through 84888 to the DeviceMotionData object that the Event holds 84889 * bindings/js/JSEventCustom.cpp: 84890 - Include the custom code for DeviceMotionEvent 84891 * dom/DeviceMotionClient.h: Added. 84892 - Pure virtual client for DeviceMotion access 84893 * dom/DeviceMotionController.cpp: Added. 84894 * dom/DeviceMotionController.h: Added. 84895 - Controller class that manages event dispatch 84896 * dom/DeviceMotionData.cpp: Added. 84897 * dom/DeviceMotionData.h: Added. 84898 - Representation of the data that comes from a device motion 84899 client that is then used within the event. 84900 * dom/DeviceMotionEvent.cpp: Added. 84901 * dom/DeviceMotionEvent.h: Added. 84902 * dom/DeviceMotionEvent.idl: Added. 84903 - The actual event implementation 84904 * dom/Document.cpp: 84905 (WebCore::Document::createEvent): 84906 - Update createEvent to allow "devicemotion" events 84907 * dom/Event.cpp: 84908 * dom/Event.h: 84909 - isDeviceMotionEvent virtual method 84910 * dom/EventNames.h: 84911 - new "devicemotion" event type 84912 * page/DOMWindow.cpp: 84913 (WebCore::DOMWindow::addEventListener): 84914 * page/DOMWindow.h: 84915 * page/DOMWindow.idl: 84916 - allow creation of "devicemotion" events and pass registration 84917 through to the Page's deviceMotionController object 84918 * page/Page.cpp: 84919 * page/Page.h: 84920 - new PageClient for deviceMotionController 84921 84922 2010-08-06 Kavita Kanetkar <kkanetkar (a] chromium.org> 84923 84924 Reviewed by Joseph Pecoraro. 84925 84926 Web Inspector: Remove "Online/Offline" icon for Chrome's appcache devtools UI. 84927 https://bugs.webkit.org/show_bug.cgi?id=43450 84928 84929 * inspector/front-end/ApplicationCacheItemsView.js: 84930 (WebInspector.ApplicationCacheItemsView): 84931 (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems): 84932 (WebInspector.ApplicationCacheItemsView.prototype.updateNetworkState): 84933 * inspector/front-end/Settings.js: 84934 84935 2010-08-06 Pavel Feldman <pfeldman (a] chromium.org> 84936 84937 Not reviewed. Rolling out 64835, 64836 and 64839. 84938 84939 * Android.jscbindings.mk: 84940 * Android.v8bindings.mk: 84941 * CMakeLists.txt: 84942 * GNUmakefile.am: 84943 * WebCore.gypi: 84944 * WebCore.pro: 84945 * WebCore.vcproj/WebCore.vcproj: 84946 * WebCore.xcodeproj/project.pbxproj: 84947 * bindings/js/JSBindingsAllInOne.cpp: 84948 * bindings/js/JSDOMWindowCustom.cpp: 84949 (WebCore::JSDOMWindow::openDatabase): 84950 * bindings/js/JSDatabaseCustom.cpp: Added. 84951 (WebCore::JSDatabase::changeVersion): 84952 (WebCore::createTransaction): 84953 (WebCore::JSDatabase::transaction): 84954 (WebCore::JSDatabase::readTransaction): 84955 * bindings/js/JSDatabaseSyncCustom.cpp: Added. 84956 (WebCore::JSDatabaseSync::changeVersion): 84957 (WebCore::createTransaction): 84958 (WebCore::JSDatabaseSync::transaction): 84959 (WebCore::JSDatabaseSync::readTransaction): 84960 * bindings/js/JSWorkerContextCustom.cpp: 84961 (WebCore::JSWorkerContext::openDatabase): 84962 (WebCore::JSWorkerContext::openDatabaseSync): 84963 * bindings/scripts/CodeGeneratorGObject.pm: 84964 * bindings/scripts/CodeGeneratorJS.pm: 84965 * bindings/scripts/CodeGeneratorV8.pm: 84966 * bindings/scripts/test/JS/JSTestCallback.cpp: 84967 (WebCore::JSTestCallback::~JSTestCallback): 84968 * bindings/scripts/test/JS/JSTestObj.cpp: 84969 (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs): 84970 (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs): 84971 (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs): 84972 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs): 84973 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows): 84974 (WebCore::jsTestObjPrototypeFunctionSerializedValue): 84975 (WebCore::jsTestObjPrototypeFunctionIdbKey): 84976 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 84977 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg): 84978 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg): 84979 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 84980 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 84981 (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg): 84982 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg): 84983 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs): 84984 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg): 84985 (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg): 84986 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg): 84987 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1): 84988 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2): 84989 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3): 84990 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4): 84991 * bindings/scripts/test/TestObj.idl: 84992 * bindings/scripts/test/V8/V8TestObj.cpp: 84993 (WebCore::TestObjInternal::voidMethodWithArgsCallback): 84994 (WebCore::TestObjInternal::intMethodWithArgsCallback): 84995 (WebCore::TestObjInternal::objMethodWithArgsCallback): 84996 (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback): 84997 (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback): 84998 (WebCore::TestObjInternal::serializedValueCallback): 84999 (WebCore::TestObjInternal::idbKeyCallback): 85000 (WebCore::TestObjInternal::customArgsAndExceptionCallback): 85001 (WebCore::TestObjInternal::withDynamicFrameAndArgCallback): 85002 (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback): 85003 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback): 85004 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback): 85005 (WebCore::TestObjInternal::methodWithOptionalArgCallback): 85006 (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback): 85007 (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback): 85008 (WebCore::TestObjInternal::methodWithCallbackArgCallback): 85009 (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): 85010 (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): 85011 (WebCore::TestObjInternal::overloadedMethod1Callback): 85012 (WebCore::TestObjInternal::overloadedMethod2Callback): 85013 (WebCore::TestObjInternal::overloadedMethod3Callback): 85014 (WebCore::TestObjInternal::overloadedMethod4Callback): 85015 (WebCore::): 85016 (WebCore::ConfigureV8TestObjTemplate): 85017 * bindings/v8/V8Binding.h: 85018 (WebCore::String): 85019 (WebCore::AtomicString): 85020 * bindings/v8/custom/V8DOMWindowCustom.cpp: 85021 (WebCore::V8DOMWindow::openDatabaseCallback): 85022 * bindings/v8/custom/V8DatabaseCustom.cpp: Added. 85023 (WebCore::V8Database::changeVersionCallback): 85024 (WebCore::createTransaction): 85025 (WebCore::V8Database::transactionCallback): 85026 (WebCore::V8Database::readTransactionCallback): 85027 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Added. 85028 (WebCore::V8DatabaseSync::changeVersionCallback): 85029 (WebCore::createTransaction): 85030 (WebCore::V8DatabaseSync::transactionCallback): 85031 (WebCore::V8DatabaseSync::readTransactionCallback): 85032 * bindings/v8/custom/V8WorkerContextCustom.cpp: 85033 (WebCore::V8WorkerContext::openDatabaseCallback): 85034 (WebCore::V8WorkerContext::openDatabaseSyncCallback): 85035 * page/DOMWindow.idl: 85036 * storage/Database.cpp: 85037 (WebCore::Database::transaction): 85038 * storage/Database.h: 85039 * storage/Database.idl: 85040 * storage/DatabaseSync.cpp: 85041 (WebCore::DatabaseSync::transaction): 85042 * storage/DatabaseSync.h: 85043 * storage/DatabaseSync.idl: 85044 * workers/WorkerContext.idl: 85045 85046 2010-08-06 Dumitru Daniliuc <dumi (a] chromium.org> 85047 85048 Unreviewed, fix the "GTK Linux 64-bit Debug" bot. 85049 85050 CodeGeneratorGObject.pm doesn't know yet how to auto-generate 85051 callbacks, so we should not auto-generate functions that take 85052 callbacks as parameters. This shouldn't break anything, because 85053 all these functions were marked as ["Custom"] until now, and this 85054 code generator skipped those functions anyway. 85055 85056 * bindings/scripts/CodeGeneratorGObject.pm: 85057 85058 2010-08-06 Dumitru Daniliuc <dumi (a] chromium.org> 85059 85060 Unreviewed, "Qt Linux Realese minimal" build fix. 85061 85062 * bindings/scripts/CodeGeneratorJS.pm: 85063 85064 2010-08-06 Dumitru Daniliuc <dumi (a] chromium.org> 85065 85066 Reviewed by Adam Barth. 85067 85068 Auto-generate all HTML5 DB bindings. 85069 https://bugs.webkit.org/show_bug.cgi?id=43382 85070 85071 * Android.jscbindings.mk: Remove {JS|V8}Database{Sync}Custom.cpp 85072 and the custom implementations of openDatabas{Sync}(). 85073 * Android.v8bindings.mk: 85074 * CMakeLists.txt: 85075 * GNUmakefile.am: 85076 * WebCore.gypi: 85077 * WebCore.pro: 85078 * WebCore.vcproj/WebCore.vcproj: 85079 * WebCore.xcodeproj/project.pbxproj: 85080 * bindings/js/JSBindingsAllInOne.cpp: 85081 * bindings/js/JSDOMWindowCustom.cpp: 85082 * bindings/js/JSDatabaseCustom.cpp: Removed. 85083 * bindings/js/JSDatabaseSyncCustom.cpp: Removed. 85084 * bindings/js/JSWorkerContextCustom.cpp: 85085 * bindings/v8/custom/V8DOMWindowCustom.cpp: 85086 * bindings/v8/custom/V8DatabaseCustom.cpp: Removed. 85087 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Removed. 85088 * bindings/v8/custom/V8WorkerContextCustom.cpp: 85089 85090 * bindings/scripts/CodeGeneratorJS.pm: Change the code generators 85091 to check that a value was passed for each non-optional argument, 85092 and that the value can be converted to the argument type. 85093 * bindings/scripts/CodeGeneratorV8.pm: 85094 * bindings/scripts/test/JS/JSTestCallback.cpp: 85095 (WebCore::JSTestCallback::~JSTestCallback): 85096 * bindings/scripts/test/JS/JSTestObj.cpp: 85097 (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs): 85098 (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs): 85099 (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs): 85100 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs): 85101 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows): 85102 (WebCore::jsTestObjPrototypeFunctionSerializedValue): 85103 (WebCore::jsTestObjPrototypeFunctionIdbKey): 85104 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 85105 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg): 85106 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg): 85107 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 85108 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 85109 (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg): 85110 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg): 85111 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs): 85112 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg): 85113 (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg): 85114 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg): 85115 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1): 85116 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2): 85117 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3): 85118 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4): 85119 * bindings/scripts/test/TestObj.idl: 85120 * bindings/scripts/test/V8/V8TestObj.cpp: 85121 (WebCore::TestObjInternal::voidMethodWithArgsCallback): 85122 (WebCore::TestObjInternal::intMethodWithArgsCallback): 85123 (WebCore::TestObjInternal::objMethodWithArgsCallback): 85124 (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback): 85125 (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback): 85126 (WebCore::TestObjInternal::serializedValueCallback): 85127 (WebCore::TestObjInternal::idbKeyCallback): 85128 (WebCore::TestObjInternal::customArgsAndExceptionCallback): 85129 (WebCore::TestObjInternal::withDynamicFrameAndArgCallback): 85130 (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback): 85131 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback): 85132 (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback): 85133 (WebCore::TestObjInternal::methodWithOptionalArgCallback): 85134 (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback): 85135 (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback): 85136 (WebCore::TestObjInternal::methodWithCallbackArgCallback): 85137 (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): 85138 (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): 85139 (WebCore::TestObjInternal::overloadedMethod1Callback): 85140 (WebCore::TestObjInternal::overloadedMethod2Callback): 85141 (WebCore::TestObjInternal::overloadedMethod3Callback): 85142 (WebCore::TestObjInternal::overloadedMethod4Callback): 85143 (WebCore::): 85144 (WebCore::ConfigureV8TestObjTemplate): 85145 * bindings/v8/V8Binding.h: 85146 (WebCore::String): 85147 (WebCore::AtomicString): 85148 85149 * page/DOMWindow.idl: Minor changes required by the auto-generated 85150 bindings. 85151 * storage/Database.cpp: 85152 (WebCore::Database::transaction): 85153 (WebCore::Database::readTransaction): 85154 (WebCore::Database::runTransaction): 85155 * storage/Database.h: 85156 * storage/Database.idl: 85157 * storage/DatabaseSync.cpp: 85158 (WebCore::DatabaseSync::transaction): 85159 (WebCore::DatabaseSync::readTransaction): 85160 (WebCore::DatabaseSync::runTransaction): 85161 * storage/DatabaseSync.h: 85162 * storage/DatabaseSync.idl: 85163 * workers/WorkerContext.idl: 85164 85165 2010-08-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 85166 85167 Not reviewed. Sort Xcode project file. 85168 85169 * WebCore.xcodeproj/project.pbxproj: 85170 85171 2010-08-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 85172 85173 Not reviewed. Fix warning, breaking win build. 85174 85175 * svg/SVGLength.cpp: 85176 (WebCore::SVGLength::toCSSPrimitiveValue): 85177 85178 2010-08-06 Alexey Proskuryakov <ap (a] apple.com> 85179 85180 Fix crashing Leopard and Gtk bots. 85181 85182 * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): 85183 Don't register ISO8859-16, because older versions of ICU don't support ISO-8859-16, causing 85184 crashes when we try to register an alias. Also, we don't need it, because Firefox doesn't 85185 support this particular alias (it supports ISO8859-1 to ISO8859-15, but only supports the 85186 main name for ISO-8859-16). 85187 85188 2010-08-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 85189 85190 Reviewed by Dirk Schulze. 85191 85192 SVG - stroke-width:0 bug with stroke other than "none" 85193 https://bugs.webkit.org/show_bug.cgi?id=42387 85194 85195 Stop storing refcounted CSSValue/CSSValueList objects in SVGRenderStyle, replacing them with SVGLength types. 85196 Allows us to directly specify default values for stroke-dashoffset/width in the SVGRenderStyle, fixing a problem 85197 with stroke-width animations when resetting to the original stored baseVal, exposed in svg/W3C-1.1/animate-elem-40-t.svg 85198 Originally discovered by Fady Samuel. 85199 85200 Test: svg/custom/path-zero-strokewidth.svg 85201 85202 * css/SVGCSSComputedStyleDeclaration.cpp: 85203 (WebCore::strokeDashArrayToCSSValueList): New helper function converting from Vector<SVGLength> to CSSValueList. 85204 (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): Convert SVGLength values to CSSPrimitiveValues. 85205 * css/SVGCSSStyleSelector.cpp: 85206 (WebCore::CSSStyleSelector::applySVGProperty): Convert CSSPrimitiveValues to SVGLength objects, for SVGRenderStyle storage. 85207 * rendering/RenderPath.cpp: 85208 (WebCore::RenderPath::calculateMarkerBoundsIfNeeded): Just grab strokeWidth SVGLength value from SVGRenderSTyle, no need to call cssPrimitiveToLength anymore. 85209 * rendering/RenderSVGText.cpp: 85210 (WebCore::RenderSVGText::strokeBoundingBox): Ditto. 85211 * rendering/SVGCharacterLayoutInfo.cpp: 85212 (WebCore::calculateBaselineShift): Ditto (for baseline-shift). 85213 * rendering/SVGInlineTextBox.cpp: 85214 (WebCore::SVGInlineTextBox::buildLayoutInformation): Ditto (for kerning). 85215 * rendering/SVGRenderSupport.cpp: 85216 (WebCore::SVGRenderSupport::applyStrokeStyleToContext): Ditto (for stroke-width/stroke-dashoffset/stroke-dasharray). 85217 * rendering/SVGRenderSupport.h: 85218 * rendering/SVGRenderTreeAsText.cpp: 85219 (WebCore::writeStyle): Ditto. 85220 * rendering/SVGTextLayoutUtilities.cpp: 85221 (WebCore::calculateCSSKerning): Ditto. 85222 * rendering/SVGTextLayoutUtilities.h: 85223 * rendering/style/SVGRenderStyle.cpp: Remove no longer needed cssPrimitiveToLength function. 85224 * rendering/style/SVGRenderStyle.h: Stop storing RefPtr<CSSValue> / RefPtr<CSSValueList> but use SVGLength/Vector<SVGLength>. 85225 (WebCore::SVGRenderStyle::initialStrokeDashArray): Allows us to specify correct default values, instead of null pointers. 85226 (WebCore::SVGRenderStyle::initialBaselineShiftValue): Specify 0px default value. 85227 (WebCore::SVGRenderStyle::initialKerning): Ditto. 85228 (WebCore::SVGRenderStyle::initialStrokeDashOffset): Ditto. 85229 (WebCore::SVGRenderStyle::initialStrokeWidth): Specify 1px default value. 85230 (WebCore::SVGRenderStyle::setStrokeDashArray): Takes a Vector<SVGLength> now, not a PassRefPtr<CSSValueList>. 85231 (WebCore::SVGRenderStyle::setStrokeWidth): Takes a SVGLength now, not a PassRefPtr<CSSValue>. 85232 (WebCore::SVGRenderStyle::setStrokeDashOffset): Ditto. 85233 (WebCore::SVGRenderStyle::setKerning): Ditto. 85234 (WebCore::SVGRenderStyle::setStopColor): Pass Color as const-reference. 85235 (WebCore::SVGRenderStyle::setFloodColor): Ditto. 85236 (WebCore::SVGRenderStyle::setLightingColor): Ditto. 85237 (WebCore::SVGRenderStyle::setBaselineShiftValue): Takes a SVGLength now, not a PassRefPtr<CSSValue>. 85238 (WebCore::SVGRenderStyle::setShadow): Reformat, had wrong style. 85239 (WebCore::SVGRenderStyle::setClipperResource): Pass String as const-reference. 85240 (WebCore::SVGRenderStyle::setFilterResource): Ditto. 85241 (WebCore::SVGRenderStyle::setMaskerResource): Ditto. 85242 (WebCore::SVGRenderStyle::setMarkerStartResource): Ditto. 85243 (WebCore::SVGRenderStyle::setMarkerMidResource): Ditto. 85244 (WebCore::SVGRenderStyle::setMarkerEndResource): Ditto. 85245 (WebCore::SVGRenderStyle::strokeDashArray): Return Vector<SVGLength>. 85246 (WebCore::SVGRenderStyle::strokeWidth): Return SVGLength. 85247 (WebCore::SVGRenderStyle::strokeDashOffset): Ditto. 85248 (WebCore::SVGRenderStyle::kerning): Ditto. 85249 (WebCore::SVGRenderStyle::baselineShiftValue): Ditto. 85250 * rendering/style/SVGRenderStyleDefs.cpp: 85251 (WebCore::StyleStrokeData::StyleStrokeData): Changed initialization order, to group stroke properties. 85252 * rendering/style/SVGRenderStyleDefs.h: Store SVGLength values instead of reference counted CSS objects. 85253 * svg/SVGLength.cpp: 85254 (WebCore::SVGLength::SVGLength): Add copy constructor. 85255 (WebCore::SVGLength::operator==): Add comparision operator. 85256 (WebCore::SVGLength::operator!=): Ditto. 85257 (WebCore::SVGLength::fromCSSPrimitiveValue): New static helper function to convert from a CSSPrimitiveValue. 85258 (WebCore::SVGLength::toCSSPrimitiveValue): New static helper function to convert to a CSSPrimitiveValue. 85259 * svg/SVGLength.h: Reindent. 85260 85261 2010-08-06 Luiz Agostini <luiz.agostini (a] openbossa.org> 85262 85263 Reviewed by Kenneth Rohde Christiansen. 85264 85265 [Qt] Move Qt's popup menu implementation from WebCore to WebKit layer 85266 https://bugs.webkit.org/show_bug.cgi?id=43427 85267 85268 After PopupMenu changes in bug 42592 class QtAbstractWebPopup became unecessary and 85269 there is no need to keep any Qt specific code for popup menus in WebCore/platform/qt. 85270 85271 PopupMenuQt has been moved from WebCore/platform/qt to WebKit/qt/WebCoreSupport and 85272 assumed the responsibilities of QtAbstractWebPopup. SearchPopupMenuQt has been moved 85273 to WebKit/qt/WebCoreSupport as well. 85274 85275 All classes that previously inherited from QtAbstractWebPopup now inherit from 85276 QWebSelectMethod and QtPlatformPlugin's method createSelectInputMethod now returns an 85277 instance of class QWebSelectMethod instead of QtAbstractWebPopup. 85278 85279 * WebCore.pro: 85280 * platform/qt/PopupMenuQt.cpp: Removed. 85281 * platform/qt/PopupMenuQt.h: Removed. 85282 * platform/qt/QtAbstractWebPopup.cpp: Removed. 85283 * platform/qt/QtAbstractWebPopup.h: Removed. 85284 * platform/qt/SearchPopupMenuQt.cpp: Removed. 85285 * platform/qt/SearchPopupMenuQt.h: Removed. 85286 85287 2010-08-05 Marcus Bulach <bulach (a] chromium.org> 85288 85289 Reviewed by Jeremy Orlow. 85290 85291 Initial bindings and plumbing for IDBCursor. 85292 https://bugs.webkit.org/show_bug.cgi?id=41888 85293 85294 Test: storage/indexeddb/idb-opencursor.html 85295 85296 * Android.derived.jscbindings.mk: 85297 * Android.derived.v8bindings.mk: 85298 * Android.mk: 85299 * CMakeLists.txt: 85300 * DerivedSources.cpp: 85301 * DerivedSources.make: 85302 * GNUmakefile.am: 85303 * WebCore.gypi: 85304 * WebCore.pri: 85305 * WebCore.pro: 85306 * WebCore.vcproj/WebCore.vcproj: 85307 * WebCore.xcodeproj/project.pbxproj: 85308 * bindings/v8/custom/V8IDBAnyCustom.cpp: 85309 (WebCore::toV8): 85310 * storage/IDBAny.cpp: 85311 (WebCore::IDBAny::idbCursor): 85312 (WebCore::IDBAny::set): 85313 * storage/IDBAny.h: 85314 (WebCore::IDBAny::): 85315 * storage/IDBCallbacks.h: 85316 * storage/IDBCursor.cpp: Added. 85317 (WebCore::IDBCursor::IDBCursor): 85318 (WebCore::IDBCursor::~IDBCursor): 85319 (WebCore::IDBCursor::direction): 85320 (WebCore::IDBCursor::key): 85321 (WebCore::IDBCursor::value): 85322 (WebCore::IDBCursor::update): 85323 (WebCore::IDBCursor::continueFunction): 85324 (WebCore::IDBCursor::remove): 85325 * storage/IDBCursor.h: Added. 85326 (WebCore::IDBCursor::): 85327 (WebCore::IDBCursor::create): 85328 * storage/IDBCursor.idl: Added. 85329 * storage/IDBCursorBackendImpl.cpp: Added. 85330 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl): 85331 (WebCore::IDBCursorBackendImpl::~IDBCursorBackendImpl): 85332 (WebCore::IDBCursorBackendImpl::direction): 85333 (WebCore::IDBCursorBackendImpl::key): 85334 (WebCore::IDBCursorBackendImpl::value): 85335 (WebCore::IDBCursorBackendImpl::update): 85336 (WebCore::IDBCursorBackendImpl::continueFunction): 85337 (WebCore::IDBCursorBackendImpl::remove): 85338 * storage/IDBCursorBackendImpl.h: Added. 85339 (WebCore::IDBCursorBackendImpl::create): 85340 * storage/IDBCursorBackendInterface.h: Added. 85341 (WebCore::IDBCursorBackendInterface::~IDBCursorBackendInterface): 85342 * storage/IDBObjectStore.cpp: 85343 (WebCore::IDBObjectStore::openCursor): 85344 * storage/IDBObjectStore.h: 85345 * storage/IDBObjectStore.idl: 85346 * storage/IDBObjectStoreBackendImpl.cpp: 85347 (WebCore::IDBObjectStoreBackendImpl::openCursor): 85348 * storage/IDBObjectStoreBackendImpl.h: 85349 * storage/IDBObjectStoreBackendInterface.h: 85350 * storage/IDBRequest.cpp: 85351 (WebCore::IDBRequest::onSuccess): 85352 (WebCore::IDBRequest::timerFired): 85353 * storage/IDBRequest.h: 85354 85355 2010-08-06 Andrei Popescu <andreip (a] google.com> 85356 85357 Unreviewed, release build fix. 85358 85359 Leopard relase build is broken due to absolute path to JSIDBTransaction.cpp file present in Xcode project file. 85360 https://bugs.webkit.org/show_bug.cgi?id=43616 85361 85362 * WebCore.xcodeproj/project.pbxproj: 85363 85364 2010-08-05 Andrei Popescu <andreip (a] dhcp-172-16-14-12.lon.corp.google.com> 85365 85366 Reviewed by Jeremy Orlow. 85367 85368 [IndexedDB] IndexedDB is missing the Transaction interface. 85369 https://bugs.webkit.org/show_bug.cgi?id=42970 85370 85371 Add IDBTransaction boilerplate. 85372 85373 No new tests, not functional yet. 85374 85375 * Android.derived.jscbindings.mk: 85376 * Android.derived.v8bindings.mk: 85377 * Android.mk: 85378 * CMakeLists.txt: 85379 * DerivedSources.cpp: 85380 * DerivedSources.make: 85381 * GNUmakefile.am: 85382 * WebCore.gypi: 85383 * WebCore.pri: 85384 * WebCore.pro: 85385 * WebCore.vcproj/WebCore.vcproj: 85386 * WebCore.xcodeproj/project.pbxproj: 85387 * dom/EventNames.h: 85388 * storage/IDBDatabase.cpp: 85389 (WebCore::IDBDatabase::transaction): 85390 * storage/IDBDatabase.h: 85391 * storage/IDBDatabase.idl: 85392 * storage/IDBDatabaseBackendImpl.cpp: 85393 (WebCore::IDBDatabaseBackendImpl::transaction): 85394 * storage/IDBDatabaseBackendImpl.h: 85395 * storage/IDBDatabaseBackendInterface.h: 85396 * storage/IDBRequest.cpp: 85397 (WebCore::IDBRequest::IDBRequest): 85398 (WebCore::IDBRequest::canSuspend): 85399 (WebCore::IDBRequest::timerFired): 85400 (WebCore::IDBRequest::onEventCommon): 85401 * storage/IDBRequest.h: 85402 * storage/IDBTransaction.cpp: Added. 85403 (WebCore::IDBTransaction::IDBTransaction): 85404 (WebCore::IDBTransaction::~IDBTransaction): 85405 (WebCore::IDBTransaction::mode): 85406 (WebCore::IDBTransaction::db): 85407 (WebCore::IDBTransaction::objectStore): 85408 (WebCore::IDBTransaction::abort): 85409 (WebCore::IDBTransaction::scriptExecutionContext): 85410 (WebCore::IDBTransaction::canSuspend): 85411 (WebCore::IDBTransaction::eventTargetData): 85412 (WebCore::IDBTransaction::ensureEventTargetData): 85413 * storage/IDBTransaction.h: Added. 85414 (WebCore::IDBTransaction::create): 85415 (WebCore::IDBTransaction::): 85416 (WebCore::IDBTransaction::toIDBTransaction): 85417 (WebCore::IDBTransaction::refEventTarget): 85418 (WebCore::IDBTransaction::derefEventTarget): 85419 * storage/IDBTransaction.idl: Added. 85420 * storage/IDBTransactionBackendInterface.h: Added. 85421 (WebCore::IDBTransactionBackendInterface::~IDBTransactionBackendInterface): 85422 85423 2010-08-06 Rafael Antognolli <antognolli (a] profusion.mobi> 85424 85425 Unreviewed build fix. 85426 85427 [EFL] Regression (64735) build fix for efl. 85428 https://bugs.webkit.org/show_bug.cgi?id=43564 85429 85430 Removing bindings/js/ScriptArray.cpp from the WebCore_SOURCES. 85431 No new features, so no new tests. 85432 85433 * CMakeLists.txt: 85434 85435 2010-08-05 Alexey Proskuryakov <ap (a] apple.com> 85436 85437 Fix http/tests/webarchive/test-css-url-encoding-shift-jis.html 85438 85439 For some reason, I didn't see the failure locally, but bots complain. 85440 85441 * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): 85442 Register "shift-jis" (with dash instead of underscore). At least Firefox supports it. 85443 85444 2010-08-05 Ben Murdoch <benm (a] google.com> 85445 85446 Reviewed by Simon Fraser. 85447 85448 Form button input elements lacking text in some cases after switching from 85449 visibility:collapse to visibility:visible 85450 https://bugs.webkit.org/show_bug.cgi?id=38050 85451 85452 A relayout is required after toggling visibility from collapse to another value. 85453 85454 Test: fast/css/visibility-collapse-form-buttons.html 85455 85456 * rendering/style/RenderStyle.cpp: 85457 (WebCore::RenderStyle::diff): If we're toggling from visibility:collapse to another 85458 visibility value (or vice versa) then we need to trigger a relayout. 85459 85460 2010-08-05 Alexey Proskuryakov <ap (a] apple.com> 85461 85462 Reviewed by Darin Adler. 85463 85464 https://bugs.webkit.org/show_bug.cgi?id=43554 85465 Way too many encoding aliases are treated as valid 85466 85467 <rdar://problem/7863399> Garbage characters displayed in some yesky.com pages. 85468 85469 <rdar://problem/7859068> Garbage characters displayed for most text at ceping.zhaopin.com 85470 85471 Test: http/tests/misc/bad-charset-alias.html 85472 85473 * loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForCSSCharset): 85474 Fix encoding name length computation. Previously, a trailing quote was ignored by 85475 TextEncodingRegistry. 85476 85477 * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): 85478 Added dashes to alias names that didn't have them. Added aliases prompted by regression tests. 85479 85480 * platform/text/TextCodecLatin1.cpp: (WebCore::TextCodecLatin1::registerEncodingNames): 85481 Don't register 8859-1, other browsers do not support this encoding name. 85482 85483 * platform/text/TextEncoding.cpp: (WebCore::Latin1Encoding): 85484 "Latin-1" is not a real encoding name, it's not known to Firefox or IE. 85485 85486 * platform/text/TextEncodingRegistry.cpp: 85487 (WebCore::TextEncodingNameHash::equal): Changed to no longer ignore non-alphanumeric characters. 85488 There is a good chance that we'll be missing support for some necessary alias names, but other 85489 browsers don't ignore any characters when matching names. 85490 (WebCore::TextEncodingNameHash::hash): Ditto. 85491 (WebCore::checkExistingName): Re-formatted a line. 85492 (WebCore::isUndesiredAlias): Added a filter to reject "8859_1" and any names containing commas. 85493 (WebCore::addToTextEncodingNameMap): Used it. 85494 (WebCore::atomicCanonicalTextEncodingName): Changed to no longer ignore non-alphanumeric characters. 85495 85496 2010-08-05 Simon Hausmann <simon.hausmann (a] nokia.com> 85497 85498 Reviewed by Laszlo Gombos. 85499 85500 [Qt] Temporary files should not be created in the current directory 85501 https://bugs.webkit.org/show_bug.cgi?id=43562 85502 85503 Don't create temporary files in the current directory, use QDir::tempPath() 85504 instead, as suggested by the QTemporaryFile documentation. 85505 85506 * platform/qt/FileSystemQt.cpp: 85507 (WebCore::openTemporaryFile): 85508 85509 2010-08-05 Franois Sausset <sausset (a] gmail.com> 85510 85511 Reviewed by Kenneth Rohde Christiansen. 85512 85513 Make STIX font the default one to render MathML 85514 https://bugs.webkit.org/show_bug.cgi?id=41961 85515 85516 * css/mathml.css: 85517 (math): 85518 85519 2010-08-05 Cosmin Truta <ctruta (a] chromium.org> 85520 85521 Reviewed by Eric Seidel. 85522 85523 Apply a stylistic fix to the patch 62640. 85524 https://bug-41175-attachments.webkit.org/attachment.cgi?id=62640 85525 https://bugs.webkit.org/show_bug.cgi?id=41175 85526 85527 * WebCore/platform/graphics/skia/ImageBufferSkia.cpp: 85528 (getImageData): 85529 85530 2010-08-05 Patrick Gansterer <paroga (a] paroga.com> 85531 85532 Reviewed by Adam Roben. 85533 85534 Make SearchPopupMenuWin more portable 85535 https://bugs.webkit.org/show_bug.cgi?id=43527 85536 85537 Add #if PLATFORM(CF) around CoreFoundation code. 85538 85539 * platform/win/SearchPopupMenuWin.cpp: 85540 (WebCore::SearchPopupMenuWin::enabled): 85541 (WebCore::SearchPopupMenuWin::saveRecentSearches): 85542 (WebCore::SearchPopupMenuWin::loadRecentSearches): 85543 85544 2010-08-05 Sheriff Bot <webkit.review.bot (a] gmail.com> 85545 85546 Unreviewed, rolling out r63653. 85547 http://trac.webkit.org/changeset/63653 85548 https://bugs.webkit.org/show_bug.cgi?id=43592 85549 85550 regressed multiple background-images (Requested by smfr on 85551 #webkit). 85552 85553 * manual-tests/css3-background-layer-count.html: Removed. 85554 * rendering/style/FillLayer.cpp: 85555 (WebCore::FillLayer::fillUnsetProperties): 85556 (WebCore::FillLayer::cullEmptyLayers): 85557 * rendering/style/RenderStyle.h: 85558 (WebCore::InheritedFlags::adjustBackgroundLayers): 85559 (WebCore::InheritedFlags::adjustMaskLayers): 85560 85561 2010-08-05 Mark Rowe <mrowe (a] apple.com> 85562 85563 Reviewed by Jon Honeycutt. 85564 85565 Fix some leaks seen on the buildbot. 85566 85567 * platform/graphics/cg/GraphicsContext3DCG.cpp: 85568 (WebCore::GraphicsContext3D::paintToCanvas): Adopt the newly-created CoreGraphics objects rather than sharing ownership 85569 and over-incrementing their reference count. Also cleaned up the bizarre wrapping used for function arguments while I was 85570 touching this code. 85571 85572 2010-08-05 James Robinson <jamesr (a] chromium.org> 85573 85574 Rubber stamped by Eric Seidel. 85575 85576 [SVG] SVGPathSeg.cpp needs an #if ENABLE(SVG) guard 85577 https://bugs.webkit.org/show_bug.cgi?id=43599 85578 85579 Matches the rest of the .cpp files in this directory. 85580 85581 * svg/SVGPathSeg.cpp: 85582 85583 2010-08-05 Erik Arvidsson <arv (a] chromium.org> 85584 85585 Reviewed by Kent Tamura. 85586 85587 Calling setCustomValidity should trigger a layout 85588 https://bugs.webkit.org/show_bug.cgi?id=43582 85589 85590 Test: fast/forms/setCustomValidity.html 85591 85592 * html/ValidityState.cpp: 85593 (WebCore::ValidityState::setCustomErrorMessage): Call setNeedsValidityCheck to tell the system that the validity might have changed. 85594 * html/ValidityState.h: 85595 85596 2010-08-05 Sam Weinig <sam (a] webkit.org> 85597 85598 Reviewed by Anders Carlsson. 85599 85600 Add ability to get a JSValueRef for a node handle and a world 85601 https://bugs.webkit.org/show_bug.cgi?id=43591 85602 85603 * WebCore.exp.in: Add exports. 85604 85605 2010-08-05 Gavin Barraclough <barraclough (a] apple.com> 85606 85607 Rubber stamped by Sam Weinig 85608 85609 Bug 43594 - Add string forwards to Forward.h 85610 This allows us to remove forward declarations for these classes from 85611 WebCore/WebKit (a step in moving these class from WebCore:: to WTF::). 85612 85613 * WebCore.xcodeproj/project.pbxproj: 85614 * accessibility/AXObjectCache.h: 85615 * accessibility/AccessibilityARIAGrid.h: 85616 * accessibility/AccessibilityListBoxOption.h: 85617 * accessibility/AccessibilityObject.h: 85618 * accessibility/AccessibilityRenderObject.h: 85619 * accessibility/AccessibilityTable.h: 85620 * bindings/cpp/WebDOMCString.h: 85621 * bindings/cpp/WebDOMString.h: 85622 * bindings/gobject/ConvertToUTF8String.h: 85623 * bindings/js/DOMWrapperWorld.h: 85624 * bindings/js/JSDOMBinding.h: 85625 * bindings/js/JSDOMWindowBase.h: 85626 * bindings/js/JSMessagePortCustom.h: 85627 * bindings/js/JavaScriptCallFrame.h: 85628 * bindings/js/ScriptController.h: 85629 * bindings/js/ScriptProfile.h: 85630 * bindings/js/ScriptSourceProvider.h: 85631 * bindings/js/ScriptString.h: 85632 * bindings/js/WorkerScriptController.h: 85633 * bindings/objc/DOMImplementationFront.h: 85634 * bindings/v8/ScheduledAction.h: 85635 * bindings/v8/ScriptController.h: 85636 * bindings/v8/V8DOMWindowShell.h: 85637 * bindings/v8/V8Proxy.h: 85638 * bindings/v8/V8Utilities.h: 85639 * bindings/v8/custom/V8CustomXPathNSResolver.h: 85640 * bridge/c/c_utility.h: 85641 * css/CSSFontSelector.h: 85642 * css/CSSHelper.h: 85643 * css/CSSOMUtils.h: 85644 * css/CSSPrimitiveValue.h: 85645 * css/MediaList.h: 85646 * css/StyleBase.h: 85647 * css/StyleSheetList.h: 85648 * css/WebKitCSSKeyframesRule.h: 85649 * dom/CheckedRadioButtons.h: 85650 * dom/DOMImplementation.h: 85651 * dom/DocumentMarker.h: 85652 * dom/DynamicNodeList.h: 85653 * dom/EventTarget.h: 85654 * dom/MessagePort.h: 85655 * dom/MessagePortChannel.h: 85656 * dom/NameNodeList.h: 85657 * dom/Node.h: 85658 * dom/NodeList.h: 85659 * dom/OptionGroupElement.h: 85660 * dom/ScriptExecutionContext.h: 85661 * dom/SelectElement.h: 85662 * dom/ViewportArguments.h: 85663 * dom/make_names.pl: 85664 * editing/HTMLInterchange.h: 85665 * editing/htmlediting.h: 85666 * editing/markup.h: 85667 * html/CollectionCache.h: 85668 * html/DOMFormData.h: 85669 * html/DataGridColumnList.h: 85670 * html/DateComponents.h: 85671 * html/FileStream.h: 85672 * html/FileStreamProxy.h: 85673 * html/FormDataList.h: 85674 (WebCore::FormDataList::appendData): 85675 * html/HTMLCollection.h: 85676 * html/HTMLElementStack.h: 85677 * html/HTMLFormattingElementList.h: 85678 * html/HTMLParserQuirks.h: 85679 * html/HTMLQuoteElement.h: 85680 * html/HTMLScriptRunnerHost.h: 85681 * html/StepRange.h: 85682 * html/canvas/CanvasGradient.h: 85683 * html/canvas/CanvasNumberArray.h: 85684 * html/canvas/CanvasPattern.h: 85685 * inspector/InjectedScript.h: 85686 * inspector/InspectorCSSStore.h: 85687 * inspector/InspectorClient.h: 85688 * inspector/InspectorFrontendClient.h: 85689 * inspector/InspectorValues.h: 85690 * inspector/ScriptDebugListener.h: 85691 * loader/CachedResourceClient.h: 85692 * loader/CrossOriginAccessControl.h: 85693 * loader/DocumentThreadableLoader.h: 85694 * loader/FrameLoaderClient.h: 85695 * loader/RedirectScheduler.h: 85696 * loader/SubframeLoader.h: 85697 * loader/appcache/DOMApplicationCache.h: 85698 * loader/archive/ArchiveFactory.h: 85699 * loader/icon/IconDatabaseClient.h: 85700 * notifications/NotificationPresenter.h: 85701 * page/Chrome.h: 85702 * page/ChromeClient.h: 85703 * page/Console.h: 85704 * page/ContextMenuClient.h: 85705 * page/DOMSelection.h: 85706 * page/EditorClient.h: 85707 * page/EventHandler.h: 85708 * page/FrameView.h: 85709 * page/GeolocationPositionCache.h: 85710 * page/History.h: 85711 * page/Location.h: 85712 * page/Navigator.h: 85713 * page/NavigatorBase.h: 85714 * page/PluginHalterClient.h: 85715 * page/PrintContext.h: 85716 * page/SpeechInput.h: 85717 * page/SpeechInputListener.h: 85718 * page/animation/AnimationController.h: 85719 * platform/CookieJar.h: 85720 * platform/CrossThreadCopier.h: 85721 * platform/DragImage.h: 85722 * platform/FileSystem.h: 85723 * platform/Language.h: 85724 * platform/Length.h: 85725 * platform/LinkHash.h: 85726 * platform/LocalizationStrategy.h: 85727 * platform/LocalizedStrings.h: 85728 * platform/Logging.h: 85729 * platform/Pasteboard.h: 85730 * platform/PopupMenuClient.h: 85731 * platform/SearchPopupMenu.h: 85732 * platform/Widget.h: 85733 * platform/cf/BinaryPropertyList.h: 85734 * platform/chromium/ChromiumBridge.h: 85735 * platform/chromium/ClipboardUtilitiesChromium.h: 85736 * platform/cocoa/KeyEventCocoa.h: 85737 * platform/graphics/Color.h: 85738 * platform/graphics/FontCache.h: 85739 * platform/graphics/FontData.h: 85740 * platform/graphics/FontSelector.h: 85741 * platform/graphics/GraphicsTypes.h: 85742 * platform/graphics/Icon.h: 85743 * platform/graphics/ImageBuffer.h: 85744 * platform/graphics/ImageSource.h: 85745 * platform/graphics/MediaPlayer.h: 85746 * platform/graphics/MediaPlayerPrivate.h: 85747 * platform/graphics/Path.h: 85748 * platform/graphics/StringTruncator.h: 85749 * platform/graphics/cairo/FontCustomPlatformData.h: 85750 * platform/graphics/cairo/FontPlatformData.h: 85751 * platform/graphics/cg/FontPlatformData.h: 85752 * platform/graphics/cg/ImageSourceCG.h: 85753 * platform/graphics/chromium/FontCustomPlatformData.h: 85754 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 85755 * platform/graphics/chromium/FontPlatformDataLinux.h: 85756 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 85757 * platform/graphics/haiku/FontCustomPlatformData.h: 85758 * platform/graphics/mac/FontCustomPlatformData.h: 85759 * platform/graphics/mac/FontPlatformData.h: 85760 * platform/graphics/qt/FontCustomPlatformData.h: 85761 * platform/graphics/qt/FontPlatformData.h: 85762 * platform/graphics/win/FontCustomPlatformData.h: 85763 * platform/graphics/win/FontCustomPlatformDataCairo.h: 85764 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 85765 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: 85766 * platform/graphics/wince/FontPlatformData.h: 85767 * platform/graphics/wince/MediaPlayerPrivateWince.h: 85768 * platform/graphics/wince/MediaPlayerProxy.h: 85769 * platform/graphics/wx/FontCustomPlatformData.h: 85770 * platform/graphics/wx/FontPlatformData.h: 85771 * platform/mac/PasteboardHelper.h: 85772 * platform/network/DNS.h: 85773 * platform/network/FormData.h: 85774 * platform/network/FormDataBuilder.h: 85775 * platform/network/HTTPParsers.h: 85776 * platform/text/Hyphenation.h: 85777 * platform/text/LineEnding.h: 85778 * platform/text/TextCodec.h: 85779 * platform/text/TextEncoding.h: 85780 * platform/text/TextStream.h: 85781 * platform/win/BString.h: 85782 * platform/win/ClipboardUtilitiesWin.h: 85783 * platform/win/WCDataObject.h: 85784 * platform/win/WebCoreTextRenderer.h: 85785 * plugins/DOMMimeType.h: 85786 * plugins/DOMMimeTypeArray.h: 85787 * plugins/DOMPlugin.h: 85788 * plugins/DOMPluginArray.h: 85789 * rendering/CounterNode.h: 85790 * rendering/HitTestResult.h: 85791 * rendering/RenderObjectChildList.h: 85792 * rendering/RenderText.h: 85793 * rendering/RenderTreeAsText.h: 85794 * rendering/TextControlInnerElements.h: 85795 * rendering/style/ContentData.h: 85796 * rendering/style/RenderStyle.h: 85797 * storage/DatabaseAuthorizer.h: 85798 * storage/DatabaseTrackerClient.h: 85799 * storage/SQLTransaction.h: 85800 * storage/SQLTransactionSync.h: 85801 * storage/Storage.h: 85802 * storage/chromium/DatabaseObserver.h: 85803 * svg/SVGAnimatedTemplate.h: 85804 * svg/SVGDocumentExtensions.h: 85805 * svg/SVGGlyphElement.h: 85806 * svg/SVGHKernElement.h: 85807 * svg/SVGNumberList.h: 85808 * svg/SVGPointList.h: 85809 * svg/SVGPreserveAspectRatio.h: 85810 * svg/SVGStylable.h: 85811 * svg/SVGTests.h: 85812 * svg/SVGTransformList.h: 85813 * svg/SVGTransformable.h: 85814 * svg/SVGVKernElement.h: 85815 * websockets/ThreadableWebSocketChannel.h: 85816 * websockets/ThreadableWebSocketChannelClientWrapper.h: 85817 * websockets/WebSocket.h: 85818 * websockets/WebSocketChannel.h: 85819 * websockets/WebSocketHandshakeResponse.h: 85820 * wml/WMLErrorHandling.h: 85821 * wml/WMLPageState.h: 85822 * wml/WMLVariables.h: 85823 * workers/DefaultSharedWorkerRepository.h: 85824 * workers/SharedWorkerRepository.h: 85825 * workers/Worker.h: 85826 * workers/WorkerContextProxy.h: 85827 * workers/WorkerLoaderProxy.h: 85828 * workers/WorkerLocation.h: 85829 * workers/WorkerMessagingProxy.h: 85830 * workers/WorkerReportingProxy.h: 85831 * workers/WorkerThread.h: 85832 * xml/DOMParser.h: 85833 * xml/XMLHttpRequestUpload.h: 85834 * xml/XPathEvaluator.h: 85835 * xml/XPathExpression.h: 85836 * xml/XPathNSResolver.h: 85837 * xml/XPathResult.h: 85838 * xml/XPathUtil.h: 85839 85840 2010-08-05 Adam Barth <abarth (a] webkit.org> 85841 85842 Reviewed by Eric Seidel. 85843 85844 U+0000 is turned to U+FFFD (replacement character) 85845 https://bugs.webkit.org/show_bug.cgi?id=42112 85846 85847 This patch introduces an intentional parsing difference from the HTML5 85848 parsing specificiation. The spec requires us to convert NULL 85849 characters to U+FFFD, but doing so causes compatibility issues with a 85850 number of sites, including US Bank. 85851 85852 In this patch, we strip the null characters instead in certain cases. 85853 Firefox has made a corresponding change. After gathering compatability 85854 data, we hope to convince the HTML WG to adopt this change. 85855 85856 Tests: fast/tokenizer/null-in-text.html 85857 fast/tokenizer/null-xss.html 85858 85859 * html/HTMLTokenizer.cpp: 85860 (WebCore::HTMLTokenizer::HTMLTokenizer): 85861 (WebCore::HTMLTokenizer::reset): 85862 * html/HTMLTokenizer.h: 85863 (WebCore::HTMLTokenizer::setSkipLeadingNewLineForListing): 85864 (WebCore::HTMLTokenizer::forceNullCharacterReplacement): 85865 (WebCore::HTMLTokenizer::setForceNullCharacterReplacement): 85866 (WebCore::HTMLTokenizer::shouldSkipNullCharacters): 85867 (WebCore::HTMLTokenizer::InputStreamPreprocessor::InputStreamPreprocessor): 85868 (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek): 85869 * html/HTMLTreeBuilder.cpp: 85870 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 85871 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 85872 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 85873 85874 2010-08-05 Andy Estes <aestes (a] apple.com> 85875 85876 Reviewed by David Kilzer. 85877 85878 Rename iOS-related OS and PLATFORM macros. 85879 https://bugs.webkit.org/show_bug.cgi?id=43493 85880 85881 Rename WTF_OS_IPHONE_OS to WTF_OS_IOS, WTF_PLATFORM_IPHONE to 85882 WTF_PLATFORM_IOS, and WTF_PLATFORM_IPHONE_SIMULATOR to 85883 WTF_PLATFORM_IOS_SIMULATOR. 85884 85885 * platform/cocoa/KeyEventCocoa.mm: 85886 * platform/iphone/KeyEventIPhone.mm: 85887 * platform/network/Credential.h: 85888 85889 2010-08-05 Anders Carlsson <andersca (a] apple.com> 85890 85891 Reviewed by Sam Weinig. 85892 85893 Use the visited link provider for visited links 85894 https://bugs.webkit.org/show_bug.cgi?id=43583 85895 85896 Export Page::visitedStateChanged and Page::allvisitedStateChanged. 85897 85898 * WebCore.exp.in: 85899 85900 2010-08-05 Eric Seidel <eric (a] webkit.org> 85901 85902 Reviewed by Nikolas Zimmermann. 85903 85904 Touching SVGNames should only rebuild hundreds of files, not thousands 85905 https://bugs.webkit.org/show_bug.cgi?id=43308 85906 85907 Remove SVGNames.h include from several core SVG header files 85908 which do not need to include it. 85909 85910 One of them, SVGPathSeg.h, required creation of an SVGPathSeg.cpp. 85911 A bunch of SVGPathSeg* could remove PlatformString.h includes if 85912 we moved their toString() methods into the .cpp files. 85913 85914 I re-indented on header to stop check-webkit-style from complaining. 85915 I removed a couple mode lines I saw, since my understanding from 85916 previous webkit-dev threads is that we plan to remove those all. 85917 85918 No functional change, thus no tests. 85919 85920 * Android.mk: 85921 * CMakeLists.txt: 85922 * GNUmakefile.am: 85923 * WebCore.gypi: 85924 * WebCore.pro: 85925 * WebCore.xcodeproj/project.pbxproj: 85926 * svg/SVGAllInOne.cpp: 85927 * svg/SVGAngle.h: 85928 * svg/SVGPathSeg.cpp: Added. 85929 (WebCore::SVGPathSeg::~SVGPathSeg): 85930 (WebCore::SVGPathSeg::pathSegType): 85931 (WebCore::SVGPathSeg::pathSegTypeAsLetter): 85932 (WebCore::SVGPathSeg::toString): 85933 (WebCore::SVGPathSeg::associatedAttributeName): 85934 (WebCore::SVGPathSegSingleCoord::toString): 85935 * svg/SVGPathSeg.h: 85936 (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord): 85937 * svg/SVGPathSegArc.cpp: 85938 (WebCore::SVGPathSegArc::toString): 85939 * svg/SVGPathSegArc.h: 85940 (WebCore::SVGPathSegArc::SVGPathSegArc): 85941 * svg/SVGPathSegClosePath.h: 85942 (WebCore::SVGPathSegClosePath::create): 85943 (WebCore::SVGPathSegClosePath::pathSegType): 85944 (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter): 85945 (WebCore::SVGPathSegClosePath::toString): 85946 * svg/SVGPathSegCurvetoCubic.h: 85947 * svg/SVGPathSegCurvetoCubicSmooth.h: 85948 * svg/SVGPathSegCurvetoQuadratic.h: 85949 * svg/SVGPathSegCurvetoQuadraticSmooth.h: 85950 * svg/SVGPathSegLineto.h: 85951 * svg/SVGPathSegLinetoHorizontal.h: 85952 * svg/SVGPathSegLinetoVertical.h: 85953 * svg/SVGPathSegMoveto.h: 85954 * svg/SVGTransform.h: 85955 85956 2010-08-05 Dirk Schulze <krit (a] webkit.org> 85957 85958 Unreviewed sort of Xcode project file. 85959 85960 * WebCore.xcodeproj/project.pbxproj: 85961 85962 2010-08-05 Adam Barth <abarth (a] webkit.org> 85963 85964 Actually make HTMLEntityNames.json valid JSON. 85965 85966 * html/HTMLEntityNames.json: 85967 85968 2010-08-05 Beth Dakin <bdakin (a] apple.com> 85969 85970 Reviewed by Kenneth Rohde Christiansen. 85971 85972 Fix for https://bugs.webkit.org/show_bug.cgi?id=43516 REGRESSION: 85973 Huge number of memory leaks after enabling MathML 85974 -and corresponding- 85975 <rdar://problem/8274123> 85976 85977 Destroy the old children in 85978 RenderMathMLOperator::updateFromElement() instead of just removing 85979 them since just removing them will cause them to leak. 85980 * mathml/RenderMathMLOperator.cpp: 85981 (WebCore::RenderMathMLOperator::updateFromElement): 85982 85983 2010-08-05 Tony Chang <tony (a] chromium.org> 85984 85985 Reviewed by David Hyatt. 85986 85987 Fix a crash when a hidden iframe with a custom scrollbar finishes loading an image. 85988 https://bugs.webkit.org/show_bug.cgi?id=42724 85989 85990 Test: scrollbars/hidden-iframe-scrollbar-crash2.html 85991 85992 * page/FrameView.cpp: 85993 (WebCore::FrameView::createScrollbar): 85994 * rendering/RenderScrollbar.cpp: 85995 (WebCore::RenderScrollbar::createCustomScrollbar): Pass in Frame 85996 (WebCore::RenderScrollbar::RenderScrollbar): Pass in Frame 85997 (WebCore::RenderScrollbar::owningRenderer): Use the frame to get the RenderBox 85998 (WebCore::RenderScrollbar::getScrollbarPseudoStyle): 85999 (WebCore::RenderScrollbar::updateScrollbarParts): 86000 (WebCore::RenderScrollbar::updateScrollbarPart): 86001 * rendering/RenderScrollbar.h: 86002 * rendering/RenderScrollbarPart.cpp: 86003 (WebCore::RenderScrollbarPart::computeScrollbarWidth): null check 86004 (WebCore::RenderScrollbarPart::computeScrollbarHeight): null check 86005 86006 2010-08-05 Yong Li <yoli (a] rim.com> 86007 86008 Reviewed by Adam Treat. 86009 86010 Fix the problem that down-sampling code doesn't work 86011 for some GIF's. GIF reader can call setSize() multiple times. 86012 We should clear the scaling maps before adding new entries. 86013 Also add a fast path to check if the size has changed since last time. 86014 86015 https://bugs.webkit.org/show_bug.cgi?id=43501 86016 86017 * platform/image-decoders/ImageDecoder.cpp: 86018 (WebCore::ImageDecoder::prepareScaleDataIfNecessary): 86019 * platform/image-decoders/gif/GIFImageDecoder.cpp: 86020 (WebCore::GIFImageDecoder::setSize): 86021 86022 2010-08-05 Ilya Tikhonovsky <loislo (a] chromium.org> 86023 86024 Reviewed by Yury Semikhatsky. 86025 86026 WebInspector: In the current implementation of inspector agents we're calling 86027 did methods manually. That is error prone and is bad from protocol point of view. 86028 It would be better to call did methods automatically from the corresponding methods 86029 of InspectorBackendDispatcher and report the results. As far as our protocol is 86030 statefull this trick will keep it in the consistent state. 86031 https://bugs.webkit.org/show_bug.cgi?id=43489 86032 86033 * inspector/CodeGeneratorInspector.pm: 86034 * inspector/Inspector.idl: 86035 * inspector/InspectorApplicationCacheAgent.cpp: 86036 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): 86037 * inspector/InspectorApplicationCacheAgent.h: 86038 * inspector/InspectorBackend.cpp: 86039 (WebCore::InspectorBackend::getProfilerLogLines): 86040 (WebCore::InspectorBackend::setInjectedScriptSource): 86041 (WebCore::InspectorBackend::dispatchOnInjectedScript): 86042 (WebCore::InspectorBackend::clearConsoleMessages): 86043 (WebCore::InspectorBackend::releaseWrapperObjectGroup): 86044 (WebCore::InspectorBackend::getDatabaseTableNames): 86045 * inspector/InspectorBackend.h: 86046 * inspector/InspectorCSSStore.cpp: 86047 (WebCore::InspectorCSSStore::inspectorStyleSheet): 86048 * inspector/InspectorCSSStore.h: 86049 * inspector/InspectorController.cpp: 86050 (WebCore::InspectorController::InspectorController): 86051 (WebCore::InspectorController::getCookies): 86052 (WebCore::InspectorController::getDOMStorageEntries): 86053 (WebCore::InspectorController::setDOMStorageItem): 86054 (WebCore::InspectorController::removeDOMStorageItem): 86055 (WebCore::InspectorController::getProfileHeaders): 86056 (WebCore::InspectorController::getProfile): 86057 (WebCore::InspectorController::editScriptSource): 86058 (WebCore::InspectorController::getScriptSource): 86059 (WebCore::InspectorController::setBreakpoint): 86060 (WebCore::InspectorController::getResourceContent): 86061 * inspector/InspectorController.h: 86062 (WebCore::InspectorController::inspectorClient): 86063 * inspector/InspectorDOMAgent.cpp: 86064 (WebCore::InspectorDOMAgent::getChildNodes): 86065 (WebCore::InspectorDOMAgent::setAttribute): 86066 (WebCore::InspectorDOMAgent::removeAttribute): 86067 (WebCore::InspectorDOMAgent::removeNode): 86068 (WebCore::InspectorDOMAgent::changeTagName): 86069 (WebCore::InspectorDOMAgent::getOuterHTML): 86070 (WebCore::InspectorDOMAgent::setOuterHTML): 86071 (WebCore::InspectorDOMAgent::setTextNodeValue): 86072 (WebCore::InspectorDOMAgent::getEventListenersForNode): 86073 (WebCore::InspectorDOMAgent::getStyles): 86074 (WebCore::InspectorDOMAgent::getAllStyles): 86075 (WebCore::InspectorDOMAgent::getStyleSheet): 86076 (WebCore::InspectorDOMAgent::getRuleRanges): 86077 (WebCore::InspectorDOMAgent::getInlineStyle): 86078 (WebCore::InspectorDOMAgent::getComputedStyle): 86079 (WebCore::InspectorDOMAgent::applyStyleText): 86080 (WebCore::InspectorDOMAgent::setStyleText): 86081 (WebCore::InspectorDOMAgent::setStyleProperty): 86082 (WebCore::InspectorDOMAgent::toggleStyleEnabled): 86083 (WebCore::InspectorDOMAgent::setRuleSelector): 86084 (WebCore::InspectorDOMAgent::addRule): 86085 (WebCore::InspectorDOMAgent::buildObjectForRule): 86086 (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend): 86087 * inspector/InspectorDOMAgent.h: 86088 * inspector/InspectorValues.cpp: 86089 (WebCore::InspectorValue::asNumber): 86090 (WebCore::InspectorBasicValue::asNumber): 86091 * inspector/InspectorValues.h: 86092 * inspector/front-end/Callback.js: 86093 (WebInspector.Callback.prototype.processCallback): 86094 (WebInspector.Callback.prototype.removeCallbackEntry): 86095 * inspector/front-end/ElementsPanel.js: 86096 (WebInspector.ElementsPanel.prototype.reset): 86097 * inspector/front-end/inspector.js: 86098 (WebInspector.reportProtocolError): 86099 86100 2010-08-04 Kenneth Russell <kbr (a] google.com> 86101 86102 Reviewed by Dimitri Glazkov. 86103 86104 Style cleanups in WebGL 86105 https://bugs.webkit.org/show_bug.cgi?id=38761 86106 86107 Cleaned up all style violations in WebGL-related files reported by 86108 check-webkit-style. No logic or other changes. Built WebKit and 86109 Chromium and ran WebGL layout tests. 86110 86111 * html/canvas/ArrayBuffer.cpp: 86112 (WebCore::ArrayBuffer::ArrayBuffer): 86113 (WebCore::ArrayBuffer::data): 86114 (WebCore::ArrayBuffer::byteLength): 86115 (WebCore::ArrayBuffer::~ArrayBuffer): 86116 (WebCore::ArrayBuffer::tryAllocate): 86117 * html/canvas/ArrayBufferView.cpp: 86118 (WebCore::ArrayBufferView::setImpl): 86119 * html/canvas/ArrayBufferView.h: 86120 * html/canvas/TypedArrayBase.h: 86121 * html/canvas/WebGLBuffer.cpp: 86122 (WebCore::WebGLBuffer::deleteObjectImpl): 86123 (WebCore::WebGLBuffer::associateBufferData): 86124 * html/canvas/WebGLBuffer.h: 86125 (WebCore::WebGLBuffer::~WebGLBuffer): 86126 (WebCore::WebGLBuffer::elementArrayBuffer): 86127 (WebCore::WebGLBuffer::getTarget): 86128 (WebCore::WebGLBuffer::isBuffer): 86129 * html/canvas/WebGLFramebuffer.cpp: 86130 (WebCore::WebGLFramebuffer::deleteObjectImpl): 86131 * html/canvas/WebGLFramebuffer.h: 86132 (WebCore::WebGLFramebuffer::~WebGLFramebuffer): 86133 (WebCore::WebGLFramebuffer::isDepthAttached): 86134 (WebCore::WebGLFramebuffer::isStencilAttached): 86135 (WebCore::WebGLFramebuffer::isDepthStencilAttached): 86136 (WebCore::WebGLFramebuffer::isFramebuffer): 86137 * html/canvas/WebGLGetInfo.cpp: 86138 * html/canvas/WebGLGetInfo.h: 86139 * html/canvas/WebGLObject.cpp: 86140 (WebCore::WebGLObject::deleteObject): 86141 * html/canvas/WebGLObject.h: 86142 (WebCore::WebGLObject::object): 86143 (WebCore::WebGLObject::detachContext): 86144 (WebCore::WebGLObject::context): 86145 (WebCore::WebGLObject::isBuffer): 86146 (WebCore::WebGLObject::isFramebuffer): 86147 (WebCore::WebGLObject::isProgram): 86148 (WebCore::WebGLObject::isRenderbuffer): 86149 (WebCore::WebGLObject::isShader): 86150 (WebCore::WebGLObject::isTexture): 86151 * html/canvas/WebGLProgram.cpp: 86152 (WebCore::WebGLProgram::deleteObjectImpl): 86153 * html/canvas/WebGLProgram.h: 86154 (WebCore::WebGLProgram::~WebGLProgram): 86155 (WebCore::WebGLProgram::isLinkFailureFlagSet): 86156 (WebCore::WebGLProgram::setLinkFailureFlag): 86157 (WebCore::WebGLProgram::isProgram): 86158 * html/canvas/WebGLRenderbuffer.cpp: 86159 (WebCore::WebGLRenderbuffer::deleteObjectImpl): 86160 * html/canvas/WebGLRenderbuffer.h: 86161 (WebCore::WebGLRenderbuffer::~WebGLRenderbuffer): 86162 (WebCore::WebGLRenderbuffer::setInternalFormat): 86163 (WebCore::WebGLRenderbuffer::getInternalFormat): 86164 (WebCore::WebGLRenderbuffer::isInitialized): 86165 (WebCore::WebGLRenderbuffer::setInitialized): 86166 (WebCore::WebGLRenderbuffer::isRenderbuffer): 86167 * html/canvas/WebGLRenderingContext.cpp: 86168 (WebCore::WebGLRenderingContext::beginPaint): 86169 (WebCore::WebGLRenderingContext::blendEquation): 86170 (WebCore::WebGLRenderingContext::getActiveAttrib): 86171 (WebCore::WebGLRenderingContext::getActiveUniform): 86172 (WebCore::WebGLRenderingContext::getBufferParameter): 86173 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): 86174 (WebCore::WebGLRenderingContext::vertexAttribPointer): 86175 * html/canvas/WebGLRenderingContext.h: 86176 (WebCore::WebGLRenderingContext::is3d): 86177 (WebCore::WebGLRenderingContext::isAccelerated): 86178 (WebCore::WebGLRenderingContext::graphicsContext3D): 86179 (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall): 86180 (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState): 86181 (WebCore::WebGLRenderingContext::VertexAttribState::initValue): 86182 * html/canvas/WebGLShader.cpp: 86183 (WebCore::WebGLShader::deleteObjectImpl): 86184 * html/canvas/WebGLShader.h: 86185 (WebCore::WebGLShader::~WebGLShader): 86186 (WebCore::WebGLShader::getType): 86187 (WebCore::WebGLShader::isShader): 86188 * html/canvas/WebGLTexture.cpp: 86189 (WebCore::WebGLTexture::deleteObjectImpl): 86190 * html/canvas/WebGLTexture.h: 86191 (WebCore::WebGLTexture::~WebGLTexture): 86192 (WebCore::WebGLTexture::isCubeMapRWrapModeInitialized): 86193 (WebCore::WebGLTexture::setCubeMapRWrapModeInitialized): 86194 (WebCore::WebGLTexture::isTexture): 86195 (WebCore::WebGLTexture::LevelInfo::LevelInfo): 86196 (WebCore::WebGLTexture::LevelInfo::setInfo): 86197 * platform/graphics/GraphicsContext3D.h: 86198 (WebCore::GraphicsContext3D::): 86199 (WebCore::GraphicsContext3D::Attributes::Attributes): 86200 (WebCore::GraphicsContext3D::platformGraphicsContext3D): 86201 (WebCore::GraphicsContext3D::platformTexture): 86202 (WebCore::GraphicsContext3D::platformLayer): 86203 86204 2010-08-05 Kenneth Rohde Christiansen <kenneth.christiansen (a] openbossa.org> 86205 86206 Reviewed by Simon Hausmann. 86207 86208 Make the viewport meta tag parser support the Android 86209 target-densitydpi extension. 86210 http://webkit.org/b/43492 86211 86212 http://developer.android.com/reference/android/webkit/WebView.html 86213 Section 'Building web pages to support different screen densities' 86214 86215 * dom/ViewportArguments.cpp: 86216 (WebCore::setViewportFeature): 86217 (WebCore::viewportErrorMessageTemplate): 86218 * dom/ViewportArguments.h: 86219 (WebCore::): 86220 (WebCore::ViewportArguments::ViewportArguments): 86221 (WebCore::ViewportArguments::hasCustomArgument): 86222 86223 2010-08-05 Jian Li <jianli (a] chromium.org> 86224 86225 Reviewed by David Levin. 86226 86227 Unify blob related feature defines to ENABLE(BLOB). 86228 https://bugs.webkit.org/show_bug.cgi?id=43081 86229 86230 * Configurations/FeatureDefines.xcconfig: 86231 * GNUmakefile.am: 86232 * WebCore.pri: 86233 * bindings/js/JSEventTarget.cpp: 86234 (WebCore::toJS): 86235 * bindings/v8/V8DOMWrapper.cpp: 86236 (WebCore::V8DOMWrapper::convertEventTargetToV8Object): 86237 * dom/EventTarget.cpp: 86238 * dom/EventTarget.h: 86239 * dom/ExceptionCode.h: 86240 (WebCore::): 86241 * dom/ScriptExecutionContext.cpp: 86242 (WebCore::ScriptExecutionContext::~ScriptExecutionContext): 86243 * dom/ScriptExecutionContext.h: 86244 * html/Blob.cpp: 86245 * html/Blob.h: 86246 * html/Blob.idl: 86247 * html/FileError.h: 86248 * html/FileError.idl: 86249 * html/FileReader.cpp: 86250 * html/FileReader.h: 86251 * html/FileReader.idl: 86252 * html/FileStream.cpp: 86253 (WebCore::FileStream::openForRead): 86254 * html/FileStream.h: 86255 * html/FileStreamClient.h: 86256 * html/FileStreamProxy.cpp: 86257 * html/FileStreamProxy.h: 86258 * html/FileThread.cpp: 86259 * html/FileThread.h: 86260 * page/DOMWindow.idl: 86261 * platform/BlobItem.cpp: 86262 (WebCore::getFileSnapshotModificationTime): 86263 (WebCore::DataBlobItem::slice): 86264 (WebCore::FileBlobItem::slice): 86265 * platform/BlobItem.h: 86266 * platform/network/FormData.cpp: 86267 (WebCore::FormData::deepCopy): 86268 (WebCore::FormData::appendFile): 86269 (WebCore::FormData::appendItem): 86270 (WebCore::FormData::appendKeyValuePairItems): 86271 * platform/network/FormData.h: 86272 (WebCore::operator==): 86273 * platform/network/mac/FormDataStreamMac.mm: 86274 (WebCore::closeCurrentStream): 86275 (WebCore::advanceCurrentStream): 86276 (WebCore::formCreate): 86277 (WebCore::formRead): 86278 (WebCore::setHTTPBody): 86279 86280 2010-08-05 Xan Lopez <xlopez (a] igalia.com> 86281 86282 Reviewed by Gustavo Noronha. 86283 86284 When trying to wrap a Node we know is an Element fallback to a 86285 simple Element wrapper in the worst case, not to Node. 86286 86287 * bindings/gobject/WebKitDOMBinding.cpp: 86288 (WebKit::createWrapper): 86289 86290 2010-08-05 Franois Sausset <sausset (a] gmail.com> 86291 86292 Reviewed by Kenneth Rohde Christiansen. 86293 86294 Implement basic values of MathML mathvariant attribute 86295 https://bugs.webkit.org/show_bug.cgi?id=43481 86296 86297 Test: mathml/presentation/attributes.xhtml 86298 86299 * css/mathml.css: 86300 (math[mathvariant="normal"], mstyle[mathvariant="normal"], mo[mathvariant="normal"], mn[mathvariant="normal"], mi[mathvariant="normal"], mtext[mathvariant="normal"], mspace[mathvariant="normal"], ms[mathvariant="normal"]): 86301 (math[mathvariant="bold"], mstyle[mathvariant="bold"], mo[mathvariant="bold"], mn[mathvariant="bold"], mi[mathvariant="bold"], mtext[mathvariant="bold"], mspace[mathvariant="bold"], ms[mathvariant="bold"]): 86302 (math[mathvariant="italic"], mstyle[mathvariant="italic"], mo[mathvariant="italic"], mn[mathvariant="italic"], mi[mathvariant="italic"], mtext[mathvariant="italic"], mspace[mathvariant="italic"], ms[mathvariant="italic"]): 86303 (math[mathvariant="bold-italic"], mstyle[mathvariant="bold-italic"], mo[mathvariant="bold-italic"], mn[mathvariant="bold-italic"], mi[mathvariant="bold-italic"], mtext[mathvariant="bold-italic"], mspace[mathvariant="bold-italic"], ms[mathvariant="bold-italic"]): 86304 * mathml/mathattrs.in: 86305 86306 2010-08-05 Yury Semikhatsky <yurys (a] chromium.org> 86307 86308 Reviewed by Pavel Feldman. 86309 86310 Web Inspector: inspected page crashes when there is a cyclic reference in Object prototype 86311 https://bugs.webkit.org/show_bug.cgi?id=43558 86312 86313 Test: inspector/debugger-cyclic-ref.html 86314 86315 * bindings/v8/ScriptValue.cpp: 86316 (WebCore::v8ToInspectorValue): 86317 86318 2010-08-05 Satish Sampath <satish (a] chromium.org> 86319 86320 Reviewed by Jeremy Orlow. 86321 86322 Fix rendering of speech button and enable layout tests 86323 https://bugs.webkit.org/show_bug.cgi?id=43425 86324 86325 Rewrote the speech button rendering code to match how the spin buttons (for input type=number) 86326 are implemented as the previous implementation did not work well on many platforms. 86327 86328 * rendering/RenderTextControlSingleLine.cpp: 86329 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 86330 (WebCore::RenderTextControlSingleLine::layout): 86331 (WebCore::RenderTextControlSingleLine::nodeAtPoint): 86332 (WebCore::RenderTextControlSingleLine::styleDidChange): 86333 (WebCore::RenderTextControlSingleLine::hasControlClip): 86334 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): 86335 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): 86336 (WebCore::RenderTextControlSingleLine::createInnerTextStyle): 86337 (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle): 86338 (WebCore::RenderTextControlSingleLine::clientPaddingRight): 86339 * rendering/RenderTextControlSingleLine.h: 86340 * rendering/TextControlInnerElements.cpp: 86341 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 86342 (WebCore::InputFieldSpeechButtonElement::create): 86343 * rendering/TextControlInnerElements.h: 86344 86345 2010-08-05 Andrey Kosyakov <caseq (a] chromium.org> 86346 86347 Reviewed by Pavel Feldman. 86348 86349 Web Inspector: Separated WebInspector extension API injection logic from other scripts that inspector injects. 86350 Enabled injection of the API scripts even if inspector is disabled for inspector front-end page. 86351 https://bugs.webkit.org/show_bug.cgi?id=43344 86352 86353 * inspector/InspectorController.cpp: 86354 (WebCore::InspectorController::inspectedWindowScriptObjectCleared): 86355 (WebCore::InspectorController::setInspectorExtensionAPI): 86356 * inspector/InspectorController.h: 86357 * inspector/InspectorFrontendHost.cpp: 86358 (WebCore::InspectorFrontendHost::setExtensionAPI): 86359 86360 2010-08-05 Charles Wei <charles.wei (a] torchmobile.com.cn> 86361 86362 Reviewed by George Staikos. 86363 86364 <noscript> is working the other way around in some cases with xhtmlmp enabled 86365 https://bugs.webkit.org/show_bug.cgi?id=43469 86366 86367 Test: fast/xhtmlmp/noscript-basic.xhtml 86368 86369 * dom/Document.cpp: 86370 (WebCore::Document::Document): 86371 86372 2010-08-05 Yury Semikhatsky <yurys (a] chromium.org> 86373 86374 Unreviewed. Fix Win compilation. 86375 86376 * bindings/js/JSBindingsAllInOne.cpp: 86377 86378 2010-08-05 Simon Hausmann <simon.hausmann (a] nokia.com> 86379 86380 Reviewed by Tor Arne Vestb. 86381 86382 [Qt] Clean up the input method handling 86383 https://bugs.webkit.org/show_bug.cgi?id=43545 86384 86385 Changed input method hint interface to be more efficient by setting 86386 all hints in one shot, like in QWidget. 86387 86388 * platform/qt/QWebPageClient.h: 86389 86390 2010-08-05 Yury Semikhatsky <yurys (a] chromium.org> 86391 86392 Reviewed by Pavel Feldman. 86393 86394 Web Inspector: remove mutator methods from ScriptObject and remove ScriptArray. 86395 We shouldn't modify JS objects from InspectorController, InspectorValues 86396 should be used instead. 86397 https://bugs.webkit.org/show_bug.cgi?id=43546 86398 86399 * GNUmakefile.am: 86400 * WebCore.gypi: 86401 * WebCore.pro: 86402 * WebCore.vcproj/WebCore.vcproj: 86403 * WebCore.xcodeproj/project.pbxproj: 86404 * bindings/js/ScriptArray.cpp: Removed. 86405 * bindings/js/ScriptArray.h: Removed. 86406 * bindings/js/ScriptCallStack.h: 86407 * bindings/js/ScriptObject.cpp: 86408 * bindings/js/ScriptObject.h: 86409 * bindings/v8/ScriptArray.cpp: Removed. 86410 * bindings/v8/ScriptArray.h: Removed. 86411 * bindings/v8/ScriptCallStack.h: 86412 * bindings/v8/ScriptObject.cpp: 86413 * bindings/v8/ScriptObject.h: 86414 86415 2010-08-05 Ned Holbrook <nholbrook (a] apple.com> 86416 86417 Reviewed by Darin Adler. 86418 86419 ~5% complex layout performance improvement. 86420 https://bugs.webkit.org/show_bug.cgi?id=43436 86421 86422 * platform/graphics/mac/ComplexTextController.h: 86423 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 86424 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Use Vector rather than CFMutableData. 86425 (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataCoreText): Ditto. 86426 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Avoid typesetter allocation unless using typesetter options. 86427 86428 2010-08-05 Steve Block <steveblock (a] google.com> 86429 86430 Reviewed by Jeremy Orlow. 86431 86432 targetReferenceFromResource() in SVGResources.cpp is missing an ENABLE(FILTERS) guard 86433 https://bugs.webkit.org/show_bug.cgi?id=43550 86434 86435 Also updates an existing ENABLE(FILTERS) guard to avoid a compiler 86436 warning 'case FilterResourceType not handled in switch' when FILTERS 86437 is not enabled. 86438 86439 No new tests, build fix only. 86440 86441 * rendering/SVGResources.cpp: 86442 (WebCore::targetReferenceFromResource): 86443 (WebCore::SVGResources::resourceDestroyed): 86444 86445 2010-08-05 Victoria Kirst <vrk (a] google.com> 86446 86447 Reviewed by David Levin. 86448 86449 Added logic to use glMapTexSubImage2D to write video layer to GPU 86450 texture. Also fixes CPU usage problem from previous patch. 86451 https://bugs.webkit.org/show_bug.cgi?id=43101 86452 86453 No change in user-visible functionality (since it isn't turned on), 86454 so no new tests. 86455 86456 * platform/graphics/chromium/VideoLayerChromium.cpp: 86457 (WebCore::VideoLayerChromium::VideoLayerChromium): 86458 (WebCore::VideoLayerChromium::updateTextureContents): 86459 (WebCore::VideoLayerChromium::createTextureRect): 86460 (WebCore::VideoLayerChromium::updateTextureRect): 86461 (WebCore::VideoLayerChromium::updateCompleted): 86462 * platform/graphics/chromium/VideoLayerChromium.h: 86463 86464 2010-08-05 Zoltan Horvath <zoltan (a] webkit.org> 86465 86466 Reviewed by Simon Hausmann. 86467 86468 Allow custom memory allocation control for ClipperData struct 86469 https://bugs.webkit.org/show_bug.cgi?id=43337 86470 86471 Inherits the following class from FastAllocBase because it is 86472 instantiated by 'new': 86473 86474 class name - instantiated at: WebCore/'location' 86475 RenderLayerBacking - rendering/RenderSVGResourceClipper.cpp:165 86476 86477 * rendering/RenderSVGResourceClipper.h: 86478 86479 2010-08-05 Zoltan Horvath <zoltan (a] webkit.org> 86480 86481 Reviewed by Simon Hausmann. 86482 86483 Allow custom memory allocation control for DoctypeData class 86484 https://bugs.webkit.org/show_bug.cgi?id=43343 86485 86486 Inherits the following class from Noncopyable because it is 86487 instantiated by 'new' and no need to be copyable: 86488 86489 class name - instantiated at: WebCore/'location' 86490 DoctypeData - html/HTMLToken.h:113 86491 86492 * html/HTMLToken.h: 86493 86494 2010-08-05 Franois Sausset <sausset (a] gmail.com> 86495 86496 Reviewed by Darin Adler. 86497 86498 Small style adjustments for MathML merror element. 86499 https://bugs.webkit.org/show_bug.cgi?id=43432 86500 86501 * css/mathml.css: 86502 (merror): 86503 86504 2010-08-05 Yury Semikhatsky <yurys (a] chromium.org> 86505 86506 Reviewed by Pavel Feldman. 86507 86508 Web Inspector: forbid InspectorController to create script objects directly in the frontend 86509 https://bugs.webkit.org/show_bug.cgi?id=43541 86510 86511 Cookie and AppCache data are now serialized into InspectorValues instead of 86512 ScriptObjects. These were last usages of InspectorFrontend::newScript{Object,Array} 86513 so we can remove them now and use only InspectorValues to pass data to the inspector 86514 frontend. 86515 86516 * inspector/Inspector.idl: 86517 * inspector/InspectorApplicationCacheAgent.cpp: 86518 (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent): 86519 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): 86520 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): 86521 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): 86522 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource): 86523 * inspector/InspectorApplicationCacheAgent.h: 86524 * inspector/InspectorController.cpp: 86525 (WebCore::InspectorController::connectFrontend): 86526 (WebCore::InspectorController::getCookies): 86527 (WebCore::InspectorController::buildArrayForCookies): 86528 (WebCore::InspectorController::buildObjectForCookie): 86529 * inspector/InspectorController.h: 86530 * inspector/InspectorFrontend.cpp: 86531 (WebCore::InspectorFrontend::setRecordingProfile): 86532 * inspector/InspectorFrontend.h: 86533 86534 2010-08-05 Mario Sanchez Prada <msanchez (a] igalia.com> 86535 86536 Reviewed by Xan Lopez. 86537 86538 [GTK] Extra check needed at AccessibilityObject::visiblePositionRangeForRange 86539 https://bugs.webkit.org/show_bug.cgi?id=43418 86540 86541 Ensure the renderer is a RenderText before calling toRenderText() 86542 86543 Also, simplified code a bit to avoid so many nested if's in that 86544 part of the code, while keeping the same logic. 86545 86546 * accessibility/AccessibilityObject.cpp: 86547 (WebCore::AccessibilityObject::visiblePositionRangeForRange): 86548 86549 2010-08-05 Kwang Yul Seo <skyul (a] company100.net> 86550 86551 Reviewed by Kent Tamura. 86552 86553 [BREWMP] Define htonl, htons, ntohl and ntohs 86554 https://bugs.webkit.org/show_bug.cgi?id=43397 86555 86556 In BREWMP, AEEStdLib.h provides macros for byte order conversion: HTONL, HTONS, NTOHL and NTOHS. 86557 Use these macros to define htonl, htons, ntohl and ntohs used by WOFFFileFormat.cpp. 86558 86559 * platform/graphics/WOFFFileFormat.cpp: 86560 86561 2010-08-04 Zoltan Herczeg <zherczeg (a] webkit.org> 86562 86563 Reviewed by Nikolas Zimmermann. 86564 86565 SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change 86566 https://bugs.webkit.org/show_bug.cgi?id=42244 86567 86568 Implementing svgAttributeChanged for SVGFESpotLightElement object. 86569 Furthermore, invalidateFilter has been moved to SVGFilterElement, and 86570 it is a static function now. 86571 86572 Tests: svg/dynamic-updates/SVGFESpotLightElement-dom-limitingConeAngle-attr.html 86573 svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtX-attr.html 86574 svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtY-attr.html 86575 svg/dynamic-updates/SVGFESpotLightElement-dom-pointsAtZ-attr.html 86576 svg/dynamic-updates/SVGFESpotLightElement-dom-specularExponent-attr.html 86577 svg/dynamic-updates/SVGFESpotLightElement-dom-x-attr.html 86578 svg/dynamic-updates/SVGFESpotLightElement-dom-y-attr.html 86579 svg/dynamic-updates/SVGFESpotLightElement-dom-z-attr.html 86580 svg/dynamic-updates/SVGFESpotLightElement-svgdom-limitingConeAngle-prop.html 86581 svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtX-prop.html 86582 svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtY-prop.html 86583 svg/dynamic-updates/SVGFESpotLightElement-svgdom-pointsAtZ-prop.html 86584 svg/dynamic-updates/SVGFESpotLightElement-svgdom-specularExponent-prop.html 86585 svg/dynamic-updates/SVGFESpotLightElement-svgdom-x-prop.html 86586 svg/dynamic-updates/SVGFESpotLightElement-svgdom-y-prop.html 86587 svg/dynamic-updates/SVGFESpotLightElement-svgdom-z-prop.html 86588 86589 * svg/SVGFEDiffuseLightingElement.cpp: 86590 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): 86591 * svg/SVGFELightElement.cpp: 86592 (WebCore::SVGFELightElement::svgAttributeChanged): 86593 (WebCore::SVGFELightElement::childrenChanged): 86594 * svg/SVGFELightElement.h: 86595 * svg/SVGFEOffsetElement.cpp: 86596 (WebCore::SVGFEOffsetElement::svgAttributeChanged): 86597 * svg/SVGFESpecularLightingElement.cpp: 86598 * svg/SVGFilterElement.h: 86599 (WebCore::SVGFilterElement::invalidateFilter): 86600 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 86601 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 86602 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 86603 * svg/SVGFilterPrimitiveStandardAttributes.h: 86604 86605 2010-08-05 Yury Semikhatsky <yurys (a] chromium.org> 86606 86607 Reviewed by Pavel Feldman. 86608 86609 Web Inspector: serialize DOM storage items to InspectorValues 86610 https://bugs.webkit.org/show_bug.cgi?id=43486 86611 86612 * inspector/Inspector.idl: 86613 * inspector/InspectorController.cpp: 86614 (WebCore::InspectorController::populateScriptObjects): 86615 (WebCore::InspectorController::didUseDOMStorage): 86616 (WebCore::InspectorController::selectDOMStorage): 86617 (WebCore::InspectorController::getDOMStorageEntries): 86618 (WebCore::InspectorController::setDOMStorageItem): 86619 (WebCore::InspectorController::removeDOMStorageItem): 86620 * inspector/InspectorDOMStorageResource.cpp: 86621 (WebCore::InspectorDOMStorageResource::bind): 86622 * inspector/InspectorDOMStorageResource.h: 86623 * inspector/InspectorFrontend.cpp: 86624 * inspector/InspectorFrontend.h: 86625 86626 2010-08-04 Eric Seidel <eric (a] webkit.org> 86627 86628 Reviewed by Adam Barth. 86629 86630 Enable HTML5 tree builder 86631 https://bugs.webkit.org/show_bug.cgi?id=42804 86632 86633 Months of work into a single line code change. 86634 Geez. Should have thought of this sooner. 86635 86636 * html/HTMLTreeBuilder.cpp: 86637 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 86638 86639 2010-08-04 Kent Tamura <tkent (a] chromium.org> 86640 86641 Reviewed by Darin Adler. 86642 86643 Spin-button behavior improvement for out-of-range values 86644 https://bugs.webkit.org/show_bug.cgi?id=43463 86645 86646 If the current value is smaller than the minimum value, the up 86647 button should change the value to the minimum value. If the 86648 current value is larger than the maximum value, the down button 86649 should change the value to the maximum value. 86650 86651 Test: fast/forms/input-number-outofrange.html 86652 86653 * html/HTMLInputElement.cpp: 86654 (WebCore::HTMLInputElement::stepUpFromRenderer): 86655 86656 2010-08-04 Antonio Gomes <tonikitoo (a] webkit.org> 86657 86658 Reviewed by Daniel Bates. 86659 86660 Remove superfluous non-negative checks in HitTestResult:padding{Width|Height} 86661 https://bugs.webkit.org/show_bug.cgi?id=43534 86662 86663 As pointed out by Steve Block in https://bugs.webkit.org/show_bug.cgi?id=40197#c54 , 86664 the non-negative checks present in both paddingWidth and paddingHeight methods of 86665 HitTestResults class are superflous, after we changed the rect based hit testing logic 86666 of invalid padding from IntSize(-1, -1) to IntSize(0, 0). Patch addresses this issue. 86667 86668 No new tests needed. 86669 86670 * rendering/HitTestResult.h: 86671 (WebCore::HitTestResult::paddingWidth): 86672 (WebCore::HitTestResult::paddingHeight): 86673 86674 2010-08-04 Sheriff Bot <webkit.review.bot (a] gmail.com> 86675 86676 Unreviewed, rolling out r64674. 86677 http://trac.webkit.org/changeset/64674 86678 https://bugs.webkit.org/show_bug.cgi?id=43532 86679 86680 Doesn't work with HTML5 tree builder (Requested by tonyg-cr on 86681 #webkit). 86682 86683 * html/HTMLDocumentParser.cpp: 86684 (WebCore::HTMLDocumentParser::attemptToEnd): 86685 (WebCore::HTMLDocumentParser::endIfDelayed): 86686 * html/HTMLDocumentParser.h: 86687 * html/HTMLScriptRunner.cpp: 86688 (WebCore::HTMLScriptRunner::requestScript): 86689 (WebCore::HTMLScriptRunner::runScript): 86690 * html/HTMLScriptRunner.h: 86691 86692 2010-08-04 Adam Barth <abarth (a] webkit.org> 86693 86694 Reviewed by Eric Seidel. 86695 86696 fast/parser/residual-style-hang.html hangs 86697 https://bugs.webkit.org/show_bug.cgi?id=42950 86698 86699 We need to cap the iteration of the adoption agency algorithm to 86700 prevent this hang. The legacy tree builder does this as well. 86701 86702 * html/HTMLTreeBuilder.cpp: 86703 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 86704 86705 2010-08-04 Adam Barth <abarth (a] webkit.org> 86706 86707 Reviewed by Eric Seidel. 86708 86709 Pick up spec change w.r.t. figcaption and summary 86710 https://bugs.webkit.org/show_bug.cgi?id=43075 86711 86712 * html/HTMLTreeBuilder.cpp: 86713 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 86714 86715 2010-08-04 Adam Barth <abarth (a] webkit.org> 86716 86717 Reviewed by Eric Seidel. 86718 86719 Pick up spec change w.r.t. replacement character and <frameset> 86720 https://bugs.webkit.org/show_bug.cgi?id=43073 86721 86722 Apparently this fixes parsing for some home router configuration pages. 86723 86724 * html/HTMLTreeBuilder.cpp: 86725 (WebCore::HTMLTreeBuilder::processCharacterBuffer): 86726 86727 2010-08-04 Gavin Barraclough <barraclough (a] apple.com> 86728 86729 Reviewed by Sam Weinig. 86730 86731 Bug 43515 - Fix small design issues with PageAllocation, split out PageReservation. 86732 (add forwarding headers) 86733 86734 * ForwardingHeaders/wtf/Bitmap.h: Added. 86735 * ForwardingHeaders/wtf/PageReservation.h: Added. 86736 86737 2010-08-04 Zhenyao Mo <zmo (a] google.com> 86738 86739 Reviewed by Adam Barth. 86740 86741 getAttachedShaders takes wrong parameter type in WebGLRenderingContext.idl 86742 https://bugs.webkit.org/show_bug.cgi?id=43517 86743 86744 * html/canvas/WebGLRenderingContext.idl: Fix the wrong parameter type in getAttachedShaders(). 86745 86746 2010-08-04 Kenneth Russell <kbr (a] google.com> 86747 86748 Reviewed by Dimitri Glazkov. 86749 86750 Rename CanvasObject to WebGLObject 86751 https://bugs.webkit.org/show_bug.cgi?id=31564 86752 86753 Renamed CanvasObject to WebGLObject using do-webcore-rename script. 86754 Because it seems the new convention is to not check in the changes 86755 made to this script, only checking in its effects. No new tests; 86756 built and ran WebGL in Safari and Chromium to test. 86757 86758 * Android.mk: 86759 * WebCore.gypi: 86760 * WebCore.pro: 86761 * WebCore.xcodeproj/project.pbxproj: 86762 * html/canvas/CanvasObject.cpp: Removed. 86763 * html/canvas/CanvasObject.h: Removed. 86764 * html/canvas/CanvasRenderingContext.h: 86765 * html/canvas/WebGLBuffer.cpp: 86766 (WebCore::WebGLBuffer::WebGLBuffer): 86767 * html/canvas/WebGLBuffer.h: 86768 * html/canvas/WebGLFramebuffer.cpp: 86769 (WebCore::WebGLFramebuffer::WebGLFramebuffer): 86770 (WebCore::WebGLFramebuffer::setAttachment): 86771 (WebCore::WebGLFramebuffer::onAttachedObjectChange): 86772 (WebCore::WebGLFramebuffer::isUninitialized): 86773 (WebCore::WebGLFramebuffer::setInitialized): 86774 * html/canvas/WebGLFramebuffer.h: 86775 * html/canvas/WebGLObject.cpp: Copied from WebCore/html/canvas/CanvasObject.cpp. 86776 (WebCore::WebGLObject::WebGLObject): 86777 (WebCore::WebGLObject::~WebGLObject): 86778 (WebCore::WebGLObject::setObject): 86779 (WebCore::WebGLObject::deleteObject): 86780 * html/canvas/WebGLObject.h: Copied from WebCore/html/canvas/CanvasObject.h. 86781 * html/canvas/WebGLProgram.cpp: 86782 (WebCore::WebGLProgram::WebGLProgram): 86783 * html/canvas/WebGLProgram.h: 86784 * html/canvas/WebGLRenderbuffer.cpp: 86785 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): 86786 * html/canvas/WebGLRenderbuffer.h: 86787 * html/canvas/WebGLRenderingContext.cpp: 86788 (WebCore::objectOrZero): 86789 (WebCore::WebGLRenderingContext::validateWebGLObject): 86790 (WebCore::WebGLRenderingContext::removeObject): 86791 (WebCore::WebGLRenderingContext::addObject): 86792 (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): 86793 (WebCore::WebGLRenderingContext::findTexture): 86794 (WebCore::WebGLRenderingContext::findRenderbuffer): 86795 (WebCore::WebGLRenderingContext::findBuffer): 86796 (WebCore::WebGLRenderingContext::findShader): 86797 * html/canvas/WebGLRenderingContext.h: 86798 * html/canvas/WebGLShader.cpp: 86799 (WebCore::WebGLShader::WebGLShader): 86800 * html/canvas/WebGLShader.h: 86801 * html/canvas/WebGLTexture.cpp: 86802 (WebCore::WebGLTexture::WebGLTexture): 86803 * html/canvas/WebGLTexture.h: 86804 * html/canvas/WebGLUniformLocation.h: 86805 * platform/graphics/mac/GraphicsContext3DMac.mm: 86806 * platform/graphics/qt/GraphicsContext3DQt.cpp: 86807 86808 2010-08-04 Dan Bernstein <mitz (a] apple.com> 86809 86810 Build fix. 86811 86812 * platform/text/mac/HyphenationMac.mm: 86813 (WebCore::lastHyphenLocation): 86814 86815 2010-08-04 Dan Bernstein <mitz (a] apple.com> 86816 86817 Release build fix. 86818 86819 * platform/text/mac/HyphenationMac.mm: 86820 (WebCore::lastHyphenLocation): 86821 86822 2010-08-04 Mark Rowe <mrowe (a] apple.com> 86823 86824 Reviewed by Sam Weinig. 86825 86826 Don't leak FontDescription objects inside MathML. 86827 86828 * mathml/RenderMathMLOperator.cpp: 86829 (WebCore::RenderMathMLOperator::updateFromElement): Don't unnecessarily allocate the FontDescription on the heap. 86830 (WebCore::RenderMathMLOperator::createStackableStyle): Ditto. 86831 86832 2010-08-04 Kenneth Russell <kbr (a] google.com> 86833 86834 Reviewed by Dimitri Glazkov. 86835 86836 Add ANGLE dependency for Chromium WebCore build 86837 https://bugs.webkit.org/show_bug.cgi?id=43508 86838 86839 No new tests. Built modified version of patch from bug 42405 in 86840 Chromium to test. 86841 86842 * WebCore.gyp/WebCore.gyp: 86843 86844 2010-08-04 Dan Bernstein <mitz (a] apple.com> 86845 86846 Allow the language for hyphenation to be specified 86847 https://bugs.webkit.org/show_bug.cgi?id=43467 86848 86849 Test: fast/text/hyphenate-locale.html 86850 86851 Added a -webkit-hyphenate-locale property whose value can be either auto or a locale identifier 86852 string. The initial value is auto and the property is inherited. When the value is a locale 86853 identifier, hyphenation should follow the rules for the specified locale. 86854 86855 * WebCore.xcodeproj/project.pbxproj: Added AtomicStringKeyedMRUCache.h. 86856 * css/CSSComputedStyleDeclaration.cpp: 86857 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle -webkit-hyphenate-locale. 86858 Updated for the renaming of RenderStyle::hyphenateCharacter() to hyphenationString(). 86859 * css/CSSParser.cpp: 86860 (WebCore::CSSParser::parseValue): Parse -webkit-hyphenate-locale. 86861 * css/CSSPropertyNames.in: Added -webkit-hyphenate-locale. 86862 * css/CSSStyleSelector.cpp: 86863 (WebCore::CSSStyleSelector::applyProperty): Apply the -webkit-hyphenate-locale property to the 86864 RenderStyle. Updated for the renaming of RenderStyle::hyphenateCharacter() to hyphenationString(). 86865 * platform/text/AtomicStringKeyedMRUCache.h: Added. 86866 (WebCore::AtomicStringKeyedMRUCache::get): 86867 * platform/text/Hyphenation.cpp: 86868 (WebCore::canHyphenate): Added an implementation that returns false. 86869 (WebCore::lastHyphenLocation): Now asserts that it is not called, because it is an error to call 86870 this function if canHyphenate() returned false. 86871 * platform/text/Hyphenation.h: 86872 Added canHyphenate(). Returns true if hyphenation is possible for the given locale identifier. 86873 * platform/text/android/HyphenationAndroid.cpp: 86874 (WebCore::canHyphenate): Added an implementation that returns true and a FIXME. 86875 (WebCore::lastHyphenLocation): Added unused localeIdentifier parameter. 86876 * platform/text/cf/HyphenationCF.cpp: 86877 (WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef> >::createValueForNullKey): Returns 86878 the CFLocaleRef for the current search locale. 86879 (WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef> >::createValueForKey): Returns a 86880 CFLocaleRef for the locale identifier. 86881 (WebCore::canHyphenate): Added. Returns true. 86882 (WebCore::lastHyphenLocation): Added localeIdentifier parameter, used to pass a CFLocaleRef to 86883 the hyphenation function. 86884 * platform/text/mac/HyphenationMac.mm: 86885 (WebCore::AtomicStringKeyedMRUCache<bool>::createValueForNullKey): Returns whether the current 86886 search locale is english. 86887 (WebCore::AtomicStringKeyedMRUCache<bool>::createValueForKey): Returns whether the locale identifier 86888 string identifies locale with the English language. 86889 (WebCore::canHyphenate): Added. Returns true if the locale language is English. 86890 (WebCore::lastHyphenLocation): Added localeIdentifier parameter and an assertion that its language 86891 is English. 86892 * rendering/RenderBlockLineLayout.cpp: 86893 (WebCore::tryHyphenating): Added a locale identifier parameter, which is passed down to 86894 lastHyphenLocation(). Added 1 to the value passed for the beforeIndex parameter to lastHyphenLocation(), 86895 because the latter only returns values smaller than that index. The Mac implementation could 86896 return a value equal to beforeIndex, but that is fixed in the WebKitSystemInterface part of this patch. 86897 (WebCore::RenderBlock::findNextLineBreak): Only set canHyphenate to true if hyphenation is possible 86898 for the specified hyphenation locale. Pass the hyphenation locale to tryHyphenating(). 86899 * rendering/style/RenderStyle.cpp: 86900 (WebCore::RenderStyle::diff): Compare hyphenation locales. 86901 (WebCore::RenderStyle::hyphenString): Updated for the renaming of hyphenateCharacter() to 86902 hyphenationString(). 86903 * rendering/style/RenderStyle.h: 86904 (WebCore::InheritedFlags::hyphenationString): Renamed hyphenateCharacter() to this. 86905 (WebCore::InheritedFlags::hyphenationLocale): Added this accessor. 86906 (WebCore::InheritedFlags::setHyphenationString): Renamed setHyphenateCharacter() to this. 86907 (WebCore::InheritedFlags::setHyphenationLocale): Added this accessor. 86908 (WebCore::InheritedFlags::initialHyphenationString): Renamed initialHyphenateCharacter() to this. 86909 (WebCore::InheritedFlags::initialHyphenateLocale): Added. Returns the null atom, which represents a 86910 value of auto. 86911 * rendering/style/StyleRareInheritedData.cpp: 86912 (WebCore::StyleRareInheritedData::StyleRareInheritedData): Copy the hyphenation locale. Updated for 86913 rename. 86914 (WebCore::StyleRareInheritedData::operator==): Compare the hyphenation locales. Updated for rename. 86915 * rendering/style/StyleRareInheritedData.h: 86916 86917 2010-08-04 Tony Gentilcore <tonyg (a] chromium.org> 86918 86919 Reviewed by Eric Seidel. 86920 86921 Support <script defer> as specified by HTML5 86922 https://bugs.webkit.org/show_bug.cgi?id=40934 86923 86924 See: http://dev.w3.org/html5/spec/Overview.html#the-end 86925 86926 Tests: fast/dom/HTMLScriptElement/defer-double-defer-write.html 86927 fast/dom/HTMLScriptElement/defer-double-write.html 86928 fast/dom/HTMLScriptElement/defer-inline-script.html 86929 fast/dom/HTMLScriptElement/defer-onbeforeload.html 86930 fast/dom/HTMLScriptElement/defer-script-invalid-url.html 86931 http/tests/misc/script-defer-after-slow-stylesheet.html 86932 http/tests/misc/script-defer-write-slow-stylesheet.html 86933 http/tests/misc/script-defer.html 86934 86935 * html/HTMLDocumentParser.cpp: 86936 (WebCore::HTMLDocumentParser::attemptToEnd): 86937 (WebCore::HTMLDocumentParser::endIfDelayed): 86938 (WebCore::HTMLDocumentParser::executeScriptsWaitingForParsingAndEnd): 86939 * html/HTMLDocumentParser.h: 86940 * html/HTMLScriptRunner.cpp: 86941 (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing): 86942 (WebCore::HTMLScriptRunner::requestScript): 86943 (WebCore::HTMLScriptRunner::requestParsingBlockingScript): 86944 (WebCore::HTMLScriptRunner::requestDeferredScript): 86945 (WebCore::HTMLScriptRunner::runScript): 86946 * html/HTMLScriptRunner.h: 86947 (WebCore::HTMLScriptRunner::PendingScript::PendingScript): 86948 (WebCore::HTMLScriptRunner::PendingScript::operator=): 86949 86950 2010-08-04 Kevin Ollivier <kevino (a] theolliviers.com> 86951 86952 [wx] Build fix for gcc not importing all symbols from convenience libraries. 86953 Works on 10.6 only for Mac until the build system is reworked. 86954 86955 * bindings/scripts/CodeGeneratorCPP.pm: Add conditionals in impl. to header as well. 86956 * wscript: 86957 86958 2010-08-04 Kevin Ollivier <kevino (a] theolliviers.com> 86959 86960 [wx] Build fix. Enclose PlatformStrategy methods in USE(PLATFORM_STRATEGIES). 86961 86962 * platform/LocalizedStrings.cpp: 86963 86964 2010-08-04 Franois Sausset <sausset (a] gmail.com> 86965 86966 Reviewed by Kenneth Rohde Christiansen. 86967 86968 Remove unnecessary calls to setStyle() in MathML code that made RenderLayer crash. 86969 https://bugs.webkit.org/show_bug.cgi?id=42894 86970 86971 Test: mathml/presentation/style.xhtml 86972 86973 * mathml/MathMLInlineContainerElement.cpp: 86974 (WebCore::MathMLInlineContainerElement::createRenderer): 86975 * mathml/MathMLMathElement.cpp: 86976 (WebCore::MathMLMathElement::createRenderer): 86977 * mathml/MathMLTextElement.cpp: 86978 (WebCore::MathMLTextElement::createRenderer): 86979 86980 2010-08-03 Kenneth Russell <kbr (a] google.com> 86981 86982 Reviewed by Nate Chapin. 86983 86984 Move WebGL-specific code out of GraphicsContext3D so that G3D can be used as a generic accelerated drawing API 86985 https://bugs.webkit.org/show_bug.cgi?id=43221 86986 86987 Added a helper function to extract the contents of WebGL objects 86988 to reduce duplicated code and fix a couple of potential crashes 86989 introduced in the previous refactoring. 86990 86991 No new tests; ran existing WebGL tests. 86992 86993 * html/canvas/WebGLRenderingContext.cpp: 86994 (WebCore::WebGLRenderingContext::attachShader): 86995 (WebCore::WebGLRenderingContext::bindAttribLocation): 86996 (WebCore::WebGLRenderingContext::bindBuffer): 86997 (WebCore::WebGLRenderingContext::bindFramebuffer): 86998 (WebCore::WebGLRenderingContext::bindRenderbuffer): 86999 (WebCore::WebGLRenderingContext::bindTexture): 87000 (WebCore::WebGLRenderingContext::compileShader): 87001 (WebCore::WebGLRenderingContext::detachShader): 87002 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): 87003 (WebCore::WebGLRenderingContext::framebufferTexture2D): 87004 (WebCore::WebGLRenderingContext::getActiveAttrib): 87005 (WebCore::WebGLRenderingContext::getActiveUniform): 87006 (WebCore::WebGLRenderingContext::getAttachedShaders): 87007 (WebCore::WebGLRenderingContext::getAttribLocation): 87008 (WebCore::WebGLRenderingContext::getProgramParameter): 87009 (WebCore::WebGLRenderingContext::getProgramInfoLog): 87010 (WebCore::WebGLRenderingContext::getShaderParameter): 87011 (WebCore::WebGLRenderingContext::getShaderInfoLog): 87012 (WebCore::WebGLRenderingContext::getShaderSource): 87013 (WebCore::WebGLRenderingContext::getUniform): 87014 (WebCore::WebGLRenderingContext::getUniformLocation): 87015 (WebCore::WebGLRenderingContext::linkProgram): 87016 (WebCore::WebGLRenderingContext::shaderSource): 87017 (WebCore::WebGLRenderingContext::useProgram): 87018 (WebCore::WebGLRenderingContext::validateProgram): 87019 (WebCore::WebGLRenderingContext::handleNPOTTextures): 87020 (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation): 87021 87022 2010-08-04 Mario Sanchez Prada <msanchez (a] igalia.com> 87023 87024 Reviewed by Jeremy Orlow. 87025 87026 [Gtk] Make sure DRT return the right AXTitle for controls 87027 https://bugs.webkit.org/show_bug.cgi?id=39997 87028 87029 Fallback to the text under the given element as its name in case 87030 it's a control element and has no associated label for it. 87031 87032 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 87033 (webkit_accessible_get_name): 87034 87035 2010-08-02 Kenneth Russell <kbr (a] google.com> 87036 87037 Reviewed by Dimitri Glazkov. 87038 87039 Port Chromium's accelerated compositing to Mac OS X 87040 https://bugs.webkit.org/show_bug.cgi?id=43398 87041 87042 No new tests. Tested manually with CSS 3D and WebGL tests. 87043 87044 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 87045 (WebCore::clearBorderColor): 87046 (WebCore::clearLayerBackgroundColor): 87047 - Fixed compilation problems with gcc. 87048 * platform/graphics/chromium/ImageLayerChromium.cpp: 87049 (WebCore::ImageLayerChromium::updateTextureContents): 87050 - Added Core Graphics port. 87051 * platform/graphics/chromium/LayerChromium.cpp: 87052 (WebCore::LayerChromium::LayerChromium): 87053 - Fixed compilation problems with gcc related to initialization 87054 order of members. 87055 (WebCore::LayerChromium::updateTextureContents): 87056 (WebCore::LayerChromium::updateTextureRect): 87057 - Ported to Core Graphics, adjusting for lower-left coordinate 87058 system origin. 87059 * platform/graphics/chromium/LayerRendererChromium.cpp: 87060 (WebCore::LayerRendererChromium::LayerRendererChromium): 87061 - Fixed compilation problems with gcc related to initialization 87062 order of members. 87063 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 87064 - Ported to Core Graphics. 87065 (WebCore::LayerRendererChromium::drawLayers): 87066 - Added more debug-only error calls during drawing phase. 87067 Adjusted scrolling and incremental updating code for Core 87068 Graphics' lower-left coordinate system origin. 87069 (WebCore::LayerRendererChromium::initializeSharedGLObjects): 87070 - Removed color channel swizzling in Core Graphics port. Fixed 87071 preexisting bug in initialization check of m_rootLayerTextureId. 87072 * platform/graphics/chromium/LayerRendererChromium.h: 87073 - Added needed data members for Core Graphics port. 87074 87075 2010-08-04 Yury Semikhatsky <yurys (a] chromium.org> 87076 87077 Reviewed by Pavel Feldman. 87078 87079 Web Inspector: use InspectorValue to push dispatch results from the injected script 87080 https://bugs.webkit.org/show_bug.cgi?id=43483 87081 87082 * bindings/js/JSInjectedScriptHostCustom.cpp: 87083 (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript): 87084 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: 87085 (WebCore::V8InjectedScriptHost::reportDidDispatchOnInjectedScriptCallback): 87086 * inspector/InjectedScript.cpp: 87087 (WebCore::InjectedScript::dispatch): 87088 * inspector/InjectedScript.h: 87089 * inspector/InjectedScriptHost.cpp: 87090 (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript): 87091 (WebCore::InjectedScriptHost::remoteFrontend): 87092 * inspector/InjectedScriptHost.h: 87093 * inspector/Inspector.idl: 87094 * inspector/InspectorBackend.cpp: 87095 (WebCore::InspectorBackend::dispatchOnInjectedScript): 87096 * inspector/InspectorController.cpp: 87097 (WebCore::InspectorController::didContinue): 87098 * inspector/InspectorFrontend.cpp: 87099 * inspector/InspectorFrontend.h: 87100 87101 2010-08-04 Abhishek Arya <inferno (a] chromium.org> 87102 87103 Unreviewed. Put missing equivalent js bindings check. 87104 87105 Forgot putting js bindings check in http://trac.webkit.org/changeset/64647. This fixes the qt crash. 87106 87107 * bindings/js/JSDesktopNotificationsCustom.cpp: 87108 (WebCore::JSNotificationCenter::requestPermission): 87109 87110 2010-08-04 Yury Semikhatsky <yurys (a] chromium.org> 87111 87112 Reviewed by Pavel Feldman. 87113 87114 Web Inspector: serialize database resources to InspectorValues 87115 https://bugs.webkit.org/show_bug.cgi?id=43482 87116 87117 * inspector/Inspector.idl: 87118 * inspector/InspectorBackend.cpp: 87119 (WebCore::InspectorBackend::getDatabaseTableNames): 87120 * inspector/InspectorController.cpp: 87121 (WebCore::InspectorController::populateScriptObjects): 87122 (WebCore::InspectorController::selectDatabase): 87123 (WebCore::InspectorController::didOpenDatabase): 87124 * inspector/InspectorController.h: 87125 * inspector/InspectorDatabaseResource.cpp: 87126 (WebCore::InspectorDatabaseResource::create): 87127 (WebCore::InspectorDatabaseResource::InspectorDatabaseResource): 87128 (WebCore::InspectorDatabaseResource::bind): 87129 * inspector/InspectorDatabaseResource.h: 87130 * inspector/InspectorFrontend.cpp: 87131 * inspector/InspectorFrontend.h: 87132 * storage/Database.cpp: 87133 (WebCore::Database::openDatabase): 87134 87135 2010-08-03 Abhishek Arya <inferno (a] chromium.org> 87136 87137 Reviewed by Alexey Proskuryakov. 87138 87139 Null the script execution context when disconnecting frame in notifications. 87140 Make sure that script execution context is valid in notification requestPermission. 87141 https://bugs.webkit.org/show_bug.cgi?id=43295 87142 87143 Tests: fast/notifications/notifications-document-close-crash.html 87144 87145 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 87146 (WebCore::V8NotificationCenter::requestPermissionCallback): 87147 * notifications/NotificationCenter.cpp: 87148 (WebCore::NotificationCenter::disconnectFrame): 87149 87150 2010-08-03 Adam Roben <aroben (a] apple.com> 87151 87152 Turn on PLATFORM_STRATEGIES on Windows 87153 87154 Fixes <http://webkit.org/b/43431>. 87155 87156 Reviewed by Anders Carlsson. 87157 87158 * WebCore.vcproj/WebCore.vcproj: Added LocalizedStrings.cpp, 87159 PlatformStrategies.h, LocalizationStrategy.h, PluginStrategy.h, and 87160 VisitedLinkStrategy.h. Removed PluginDataWin.cpp 87161 87162 * platform/LocalizedStrings.cpp: Wrapped Mac-only functions in 87163 PLATFORM(MAC) guards. 87164 87165 (WebCore::uploadFileText): 87166 (WebCore::allFilesText): 87167 Added these Windows-only functions. 87168 87169 * plugins/win/PluginDataWin.cpp: Removed. 87170 87171 2010-08-04 Yury Semikhatsky <yurys (a] chromium.org> 87172 87173 Reviewed by Pavel Feldman. 87174 87175 Web Inspector: serialize CPU profiles to InspectorValues instead of 87176 using JS wrappers. 87177 https://bugs.webkit.org/show_bug.cgi?id=43475 87178 87179 * Android.jscbindings.mk: 87180 * CMakeLists.txt: 87181 * GNUmakefile.am: 87182 * WebCore.pro: 87183 * WebCore.vcproj/WebCore.vcproj: 87184 * WebCore.xcodeproj/project.pbxproj: 87185 * bindings/js/ScriptProfile.h: 87186 * bindings/js/ScriptProfiler.cpp: 87187 (WebCore::ScriptProfiler::stop): 87188 * bindings/scripts/CodeGeneratorJS.pm: 87189 * bindings/v8/ScriptProfile.cpp: 87190 (WebCore::buildInspectorObjectFor): 87191 (WebCore::ScriptProfile::buildInspectorObjectForHead): 87192 * bindings/v8/ScriptProfile.h: 87193 * inspector/Inspector.idl: 87194 * inspector/InspectorController.cpp: 87195 (WebCore::InspectorController::addProfile): 87196 (WebCore::InspectorController::addProfileFinishedMessageToConsole): 87197 (WebCore::InspectorController::getProfileHeaders): 87198 (WebCore::InspectorController::getProfile): 87199 (WebCore::InspectorController::createProfileHeader): 87200 * inspector/InspectorController.h: 87201 * inspector/InspectorFrontend.cpp: 87202 * inspector/InspectorFrontend.h: 87203 87204 2010-08-04 Andreas Kling <andreas.kling (a] nokia.com> 87205 87206 Reviewed by Simon Hausmann. 87207 87208 [Qt] Use a QImage for the stroke applier scratch context 87209 87210 This avoids leaking a server-side resource on some graphics systems. 87211 87212 * platform/graphics/qt/PathQt.cpp: 87213 (WebCore::scratchContext): 87214 87215 2010-08-03 Ben Murdoch <benm (a] google.com> 87216 87217 Reviewed by Darin Adler. 87218 87219 HTML5 parser may cause onload not to fire 87220 https://bugs.webkit.org/show_bug.cgi?id=43423 87221 87222 If a complex page causes the HTML parser to yield, 87223 then when parsing continues again and eventually 87224 finishes, we are missing a call to endIfDelayed(). This 87225 results in onload never being called. 87226 87227 Not for lack of trying, but it seems almost 87228 impossible to write a reliable test for this bug, 87229 due to the highly timing-dependent nature of the 87230 bug. The link above contains further discussion and 87231 attempts at writing a test. 87232 87233 * html/HTMLDocumentParser.cpp: 87234 (WebCore::HTMLDocumentParser::resumeParsingAfterYield): 87235 Add a call to endIfDelayed() after pumping the tokenizer 87236 post the parser yielding to ensure that the parsing step 87237 is completed properly and the onload event fires. 87238 87239 2010-08-04 Dirk Schulze <krit (a] webkit.org> 87240 87241 Unreviewed sort of Xcode project file. 87242 87243 * WebCore.xcodeproj/project.pbxproj: 87244 87245 2010-08-03 Darin Adler <darin (a] apple.com> 87246 87247 Reviewed by Dan Bernstein. 87248 87249 System color changes are not applied properly 87250 https://bugs.webkit.org/show_bug.cgi?id=43468 87251 87252 * manual-tests/system-color-change.html: Added. 87253 87254 * rendering/RenderTheme.cpp: 87255 (WebCore::RenderTheme::platformColorsDidChange): Added a call to 87256 Page::setNeedsReapplyStyles, so all frames of all pages will recompute 87257 in case they use system colors. It's rare for these colors to change, 87258 so OK to do a little extra style computation. 87259 87260 2010-08-04 Nikolas Zimmermann <nzimmermann (a] rim.com> 87261 87262 Not reviewed. Revert changed license in SVGFEOffsetElement.h, thanks Gabor for noticing. 87263 87264 * svg/SVGFEOffsetElement.h: 87265 87266 2010-08-03 Alexey Proskuryakov <ap (a] apple.com> 87267 87268 Reviewed by Sam Weinig. 87269 87270 https://bugs.webkit.org/show_bug.cgi?id=42939 87271 WebEditorClient::didBeginEditing is never called in WebKit2 87272 87273 * page/FocusController.cpp: (WebCore::FocusController::setFocused): Focusing a page without 87274 a focused frame makes little sense, so WebKit used to focus a frame first when its view 87275 became first responder. For viewless frames, WebKit cannot know what to focus. The assumption 87276 here is that in all cases with null m_focusedFrame, it's the main frame that needs to be focused. 87277 87278 2010-08-03 Gavin Barraclough <barraclough (a] apple.com> 87279 87280 Build fix following r64624. 87281 87282 * ForwardingHeaders/wtf/BitMap.h: Added. 87283 87284 2010-08-03 Kent Tamura <tkent (a] chromium.org> 87285 87286 Reviewed by Ojan Vafai. 87287 87288 <input type=number> UI: Support wheel events 87289 https://bugs.webkit.org/show_bug.cgi?id=42441 87290 87291 Test: fast/forms/input-number-wheel.html 87292 87293 * html/HTMLInputElement.cpp: 87294 (WebCore::HTMLInputElement::defaultEventHandler): 87295 Call stepUpFromRenderer() for wheelDeltaY. 87296 87297 2010-08-03 Joseph Pecoraro <joepeck (a] webkit.org> 87298 87299 Reviewed by David Kilzer. 87300 87301 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 87302 https://bugs.webkit.org/show_bug.cgi?id=40627 87303 87304 Part 6 - LayoutTest and Cleanup 87305 87306 Test: http/tests/appcache/origin-quota.html 87307 87308 * loader/appcache/ApplicationCacheGroup.cpp: 87309 (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback): made synchronous, as asynchronously the cache group was deleted too soon. 87310 * loader/appcache/ApplicationCacheStorage.cpp: 87311 (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): all storing operations should force the database to be created if needed. 87312 87313 2010-08-03 Ryosuke Niwa <rniwa (a] webkit.org> 87314 87315 Reviewed by Eric Seidel. 87316 87317 extractAndNegateTextDecorationStyle and maxRangeOffset in ApplyStyleCommand.cpp should be deleted 87318 https://bugs.webkit.org/show_bug.cgi?id=43437 87319 87320 Removed extractAndNegateTextDecorationStyle because we never push down text decorations added by CSS rules 87321 as discussed on the bug 27809. Also removed pushDownTextDecorationStyleAtBoundaries because it only existed 87322 to encapsulate the complexity of calling pushDownTextDecorationStyleAroundNode first with forceNegate = false 87323 (calling pushDownTextDecorationStyleAroundNode) and again with forceNegate = true (calling extractAndNegateTextDecorationStyle) 87324 after updating layout but neither the layout update nor the second call to pushDownTextDecorationStyleAroundNode 87325 is needed after the removal of extractAndNegateTextDecorationStyle. 87326 87327 Also replaced maxRangeOffset by lastOffsetForEditing as FIXME (added by r48235) indicated. 87328 87329 No new tests added since this is a clean up. 87330 87331 * editing/ApplyStyleCommand.cpp: 87332 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): No longer takes forceNegate as an argument. 87333 (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode directly. 87334 * editing/ApplyStyleCommand.h: 87335 87336 2010-08-03 Ryosuke Niwa <rniwa (a] webkit.org> 87337 87338 Reviewed by Ojan Vafai. 87339 87340 Extract a function that serializes nodes from the range version of createMarkup 87341 https://bugs.webkit.org/show_bug.cgi?id=43405 87342 87343 Extracted serializeNodes that serializes nodes from createMarkup. 87344 No new tests added since this is a clean up. 87345 87346 * editing/markup.cpp: 87347 (WebCore::serializeNodes): Added. 87348 (WebCore::createMarkup): Calls serializeNodes. 87349 87350 2010-08-03 Brian Weinstein <bweinstein (a] apple.com> 87351 87352 Fix the build by adding the needed MathML source files to WebCore's vcproj. 87353 Also, Visual Studio did some drive-by resorting of the vcproj, the added 87354 MathML files are the only important change. 87355 87356 * WebCore.vcproj/WebCore.vcproj: 87357 87358 2010-08-03 Joseph Pecoraro <joepeck (a] webkit.org> 87359 87360 Reviewed by Nate Chapin. 87361 87362 Web Inspector: Missing ApplicationCache InspectorBackend Stub 87363 https://bugs.webkit.org/show_bug.cgi?id=43265 87364 87365 Registered "getApplicationCaches". 87366 87367 * inspector/front-end/InspectorBackendStub.js: 87368 (WebInspector.InspectorBackendStub): 87369 87370 2010-08-03 Brian Weinstein <bweinstein (a] apple.com> 87371 87372 Fix the Windows build by adding WebCore/mathml to the list of paths to look for header 87373 files. 87374 87375 * WebCore.vcproj/WebCoreCommon.vsprops: 87376 87377 2010-08-03 Mark Rowe <mrowe (a] apple.com> 87378 87379 Fix the i386 build with a static_cast hammer. 87380 87381 * mathml/RenderMathMLFraction.cpp: 87382 (WebCore::RenderMathMLFraction::layout): 87383 87384 2010-08-03 Beth Dakin <bdakin (a] apple.com> 87385 87386 Speculative build fix for Leopard. 87387 87388 * mathml/RenderMathMLOperator.cpp: 87389 * mathml/RenderMathMLRoot.cpp: 87390 (WebCore::RenderMathMLRoot::paint): 87391 (WebCore::RenderMathMLRoot::layout): 87392 * mathml/RenderMathMLSquareRoot.cpp: 87393 (WebCore::RenderMathMLSquareRoot::paint): 87394 * mathml/RenderMathMLSubSup.cpp: 87395 87396 2010-08-03 Beth Dakin <bdakin (a] apple.com> 87397 87398 Speculative build fix. 87399 87400 * css/mathml.css: 87401 (mi): 87402 (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]): 87403 (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]): 87404 (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]): 87405 87406 2010-08-03 Geoffrey Garen <ggaren (a] apple.com> 87407 87408 Reviewed by Mark Rowe. 87409 87410 https://bugs.webkit.org/show_bug.cgi?id=43444 87411 PLATFORM(CF) is false on Windows in JavaScriptCore 87412 87413 Moved some PLATFORM(WIN) #defines down into JavaScriptCore. 87414 87415 * config.h: Moved WTF_PLATFORM_CF 1 and WTF_USE_PTHREADS 0 to wtf/Platform.h. 87416 Removed #undef WTF_USE_WININET because wtf/Platform.h no longer #defines it. 87417 87418 2010-08-03 Alex Milowski <alex (a] milowski.com> 87419 87420 Reviewed by Beth Dakin. 87421 87422 Changed the ENABLE_MATHML value to enable MathML by default. 87423 87424 * Configurations/FeatureDefines.xcconfig: 87425 87426 2010-07-30 Stephen White <senorblanco (a] chromium.org> 87427 87428 Reviewed by Ojan Vafai. 87429 87430 Move PlatformContextSkia and NativeImageSkia into the WebCore namespace. 87431 https://bugs.webkit.org/show_bug.cgi?id=43272 87432 87433 One wrinkle is that PlatformContext and NativeImagePtr are 87434 typedef'ed outside outside the WebCore namespace block, so the 87435 PlatformContextSkia and NativeImageSkia have to be forward-declared 87436 explicitly within that namespace. Another solution might be to move 87437 those declarations into the WebCore namespace block below, but that 87438 would affect platforms other than Skia, so I leave it to the reviewer 87439 to decide. 87440 87441 Test: if it compiles, you're happy. 87442 87443 * platform/graphics/GraphicsContext.h: 87444 * platform/graphics/Image.h: 87445 * platform/graphics/ImageSource.h: 87446 * platform/graphics/skia/NativeImageSkia.cpp: 87447 (WebCore::NativeImageSkia::hasResizedBitmap): 87448 (WebCore::NativeImageSkia::shouldCacheResampling): 87449 * platform/graphics/skia/NativeImageSkia.h: 87450 * platform/graphics/skia/PlatformContextSkia.cpp: 87451 (WebCore::PlatformContextSkia::State::State): 87452 (WebCore::PlatformContextSkia::beginLayerClippedToImage): 87453 (WebCore::PlatformContextSkia::drawRect): 87454 (WebCore::PlatformContextSkia::setupPaintForStroking): 87455 (WebCore::PlatformContextSkia::getStrokeStyle): 87456 (WebCore::PlatformContextSkia::setStrokeStyle): 87457 (WebCore::PlatformContextSkia::setTextDrawingMode): 87458 (WebCore::PlatformContextSkia::interpolationQuality): 87459 (WebCore::PlatformContextSkia::setInterpolationQuality): 87460 (WebCore::PlatformContextSkia::getImageResamplingHint): 87461 (WebCore::PlatformContextSkia::setImageResamplingHint): 87462 (WebCore::PlatformContextSkia::clearImageResamplingHint): 87463 (WebCore::PlatformContextSkia::applyClipFromImage): 87464 (WebCore::PlatformContextSkia::setGLES2Context): 87465 (WebCore::PlatformContextSkia::prepareForSoftwareDraw): 87466 (WebCore::PlatformContextSkia::prepareForHardwareDraw): 87467 (WebCore::PlatformContextSkia::syncSoftwareCanvas): 87468 (WebCore::PlatformContextSkia::uploadSoftwareToHardware): 87469 * platform/graphics/skia/PlatformContextSkia.h: 87470 (WebCore::PlatformContextSkia::gpuCanvas): 87471 * platform/graphics/skia/SkiaFontWin.cpp: 87472 (WebCore::windowsCanHandleDrawTextShadow): 87473 (WebCore::paintSkiaText): 87474 * platform/graphics/skia/SkiaFontWin.h: 87475 87476 2010-08-03 Adam Roben <aroben (a] apple.com> 87477 87478 Rename LocalizedStringsMac.mm to LocalizedStrings.cpp 87479 87480 LocalizedStringsMac.mm should be usable by other ports 87481 https://bugs.webkit.org/show_bug.cgi?id=43441 87482 87483 Reviewed by Anders Carlsson. 87484 87485 * WebCore.xcodeproj/project.pbxproj: Updated the file's name and path. 87486 87487 * platform/LocalizedStrings.cpp: Renamed from 87488 WebCore/platform/mac/LocalizedStringsMac.mm. Changed #imports to 87489 #includes. 87490 87491 2010-08-03 James Robinson <jamesr (a] chromium.org> 87492 87493 Reviewed by Darin Fisher. 87494 87495 Move WebGL-specific code out of GraphicsContext3D so that G3D can be used as a generic accelerated drawing API 87496 https://bugs.webkit.org/show_bug.cgi?id=43221 87497 87498 Changes the GraphicsContext3D API to use Platform3DObjects instead of WebGLFoo* types like WebGLTexture. 87499 WebGLRenderingContext still uses WebGLFoo types and converts to Platform3DObjects internally. Other 87500 consumers of the GraphicsContext3D can use the Platform3DObject APIs directly without any ties to WebGL. 87501 87502 The majority of this change is purely mechanical. The less obvious changes are: 87503 - move all null checking on WebGLFoo types to WebGLRenderingContext, instead of mixing them 87504 between WebGLRenderingContext and the various port-specific implementations of GraphicsContext3D 87505 - add a GraphicsContext3D getter to CanvasRenderingContext. This is needed for the readback 87506 path on Chromium/mac. It may be possible to remove this, but I would prefer to do that 87507 in a follow-up patch to minimize churn. 87508 - move some texture cube map logic that existed only in the Chromium port of GC3D to 87509 WebGLRenderingContext behind #if PLATFORM(CHROMIUM). I think this logic should either 87510 exist for all ports or exist for none, but again I would rather change the behavior 87511 in a different patch from this one. 87512 87513 * html/canvas/CanvasRenderingContext.h: 87514 (WebCore::CanvasRenderingContext::graphicsContext3D): 87515 * html/canvas/WebGLProgram.cpp: 87516 (WebCore::WebGLProgram::cacheActiveAttribLocations): 87517 * html/canvas/WebGLRenderingContext.cpp: 87518 (WebCore::WebGLRenderingContext::attachShader): 87519 (WebCore::WebGLRenderingContext::bindAttribLocation): 87520 (WebCore::WebGLRenderingContext::bindBuffer): 87521 (WebCore::WebGLRenderingContext::bindFramebuffer): 87522 (WebCore::WebGLRenderingContext::bindRenderbuffer): 87523 (WebCore::WebGLRenderingContext::bindTexture): 87524 (WebCore::WebGLRenderingContext::compileShader): 87525 (WebCore::WebGLRenderingContext::detachShader): 87526 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): 87527 (WebCore::WebGLRenderingContext::framebufferTexture2D): 87528 (WebCore::WebGLRenderingContext::getActiveAttrib): 87529 (WebCore::WebGLRenderingContext::getActiveUniform): 87530 (WebCore::WebGLRenderingContext::getAttachedShaders): 87531 (WebCore::WebGLRenderingContext::getAttribLocation): 87532 (WebCore::WebGLRenderingContext::getProgramParameter): 87533 (WebCore::WebGLRenderingContext::getProgramInfoLog): 87534 (WebCore::WebGLRenderingContext::getShaderParameter): 87535 (WebCore::WebGLRenderingContext::getShaderInfoLog): 87536 (WebCore::WebGLRenderingContext::getShaderSource): 87537 (WebCore::WebGLRenderingContext::getUniform): 87538 (WebCore::WebGLRenderingContext::getUniformLocation): 87539 (WebCore::WebGLRenderingContext::isBuffer): 87540 (WebCore::WebGLRenderingContext::isFramebuffer): 87541 (WebCore::WebGLRenderingContext::isProgram): 87542 (WebCore::WebGLRenderingContext::isRenderbuffer): 87543 (WebCore::WebGLRenderingContext::isShader): 87544 (WebCore::WebGLRenderingContext::isTexture): 87545 (WebCore::WebGLRenderingContext::linkProgram): 87546 (WebCore::WebGLRenderingContext::shaderSource): 87547 (WebCore::WebGLRenderingContext::useProgram): 87548 (WebCore::WebGLRenderingContext::validateProgram): 87549 (WebCore::WebGLRenderingContext::handleNPOTTextures): 87550 (WebCore::WebGLRenderingContext::createFallbackBlackTextures1x1): 87551 (WebCore::WebGLRenderingContext::initVertexAttrib0): 87552 (WebCore::WebGLRenderingContext::simulateVertexAttrib0): 87553 (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation): 87554 * html/canvas/WebGLRenderingContext.h: 87555 (WebCore::WebGLRenderingContext::graphicsContext3D): 87556 * platform/graphics/GraphicsContext3D.h: 87557 * platform/graphics/mac/GraphicsContext3DMac.mm: 87558 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): 87559 (WebCore::GraphicsContext3D::beginPaint): 87560 (WebCore::GraphicsContext3D::attachShader): 87561 (WebCore::GraphicsContext3D::bindAttribLocation): 87562 (WebCore::GraphicsContext3D::bindBuffer): 87563 (WebCore::GraphicsContext3D::bindFramebuffer): 87564 (WebCore::GraphicsContext3D::bindRenderbuffer): 87565 (WebCore::GraphicsContext3D::bindTexture): 87566 (WebCore::GraphicsContext3D::compileShader): 87567 (WebCore::GraphicsContext3D::detachShader): 87568 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 87569 (WebCore::GraphicsContext3D::framebufferTexture2D): 87570 (WebCore::GraphicsContext3D::getActiveAttrib): 87571 (WebCore::GraphicsContext3D::getActiveUniform): 87572 (WebCore::GraphicsContext3D::getAttachedShaders): 87573 (WebCore::GraphicsContext3D::getAttribLocation): 87574 (WebCore::GraphicsContext3D::isBuffer): 87575 (WebCore::GraphicsContext3D::isFramebuffer): 87576 (WebCore::GraphicsContext3D::isProgram): 87577 (WebCore::GraphicsContext3D::isRenderbuffer): 87578 (WebCore::GraphicsContext3D::isShader): 87579 (WebCore::GraphicsContext3D::isTexture): 87580 (WebCore::GraphicsContext3D::linkProgram): 87581 (WebCore::GraphicsContext3D::shaderSource): 87582 (WebCore::GraphicsContext3D::useProgram): 87583 (WebCore::GraphicsContext3D::validateProgram): 87584 (WebCore::GraphicsContext3D::getProgramiv): 87585 (WebCore::GraphicsContext3D::getProgramInfoLog): 87586 (WebCore::GraphicsContext3D::getShaderiv): 87587 (WebCore::GraphicsContext3D::getShaderInfoLog): 87588 (WebCore::GraphicsContext3D::getShaderSource): 87589 (WebCore::GraphicsContext3D::getUniformfv): 87590 (WebCore::GraphicsContext3D::getUniformiv): 87591 (WebCore::GraphicsContext3D::getUniformLocation): 87592 * platform/graphics/qt/GraphicsContext3DQt.cpp: 87593 (WebCore::GraphicsContext3D::beginPaint): 87594 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): 87595 (WebCore::GraphicsContext3D::attachShader): 87596 (WebCore::GraphicsContext3D::bindAttribLocation): 87597 (WebCore::GraphicsContext3D::bindBuffer): 87598 (WebCore::GraphicsContext3D::bindFramebuffer): 87599 (WebCore::GraphicsContext3D::bindRenderbuffer): 87600 (WebCore::GraphicsContext3D::bindTexture): 87601 (WebCore::GraphicsContext3D::compileShader): 87602 (WebCore::GraphicsContext3D::detachShader): 87603 (WebCore::GraphicsContext3D::framebufferRenderbuffer): 87604 (WebCore::GraphicsContext3D::framebufferTexture2D): 87605 (WebCore::GraphicsContext3D::getActiveAttrib): 87606 (WebCore::GraphicsContext3D::getActiveUniform): 87607 (WebCore::GraphicsContext3D::getAttribLocation): 87608 (WebCore::GraphicsContext3D::isBuffer): 87609 (WebCore::GraphicsContext3D::isFramebuffer): 87610 (WebCore::GraphicsContext3D::isProgram): 87611 (WebCore::GraphicsContext3D::isRenderbuffer): 87612 (WebCore::GraphicsContext3D::isShader): 87613 (WebCore::GraphicsContext3D::isTexture): 87614 (WebCore::GraphicsContext3D::linkProgram): 87615 (WebCore::GraphicsContext3D::shaderSource): 87616 (WebCore::GraphicsContext3D::useProgram): 87617 (WebCore::GraphicsContext3D::validateProgram): 87618 (WebCore::GraphicsContext3D::getProgramiv): 87619 (WebCore::GraphicsContext3D::getProgramInfoLog): 87620 (WebCore::GraphicsContext3D::getShaderiv): 87621 (WebCore::GraphicsContext3D::getShaderInfoLog): 87622 (WebCore::GraphicsContext3D::getShaderSource): 87623 (WebCore::GraphicsContext3D::getUniformfv): 87624 (WebCore::GraphicsContext3D::getUniformiv): 87625 (WebCore::GraphicsContext3D::getUniformLocation): 87626 87627 2010-08-03 Xan Lopez <xlopez (a] igalia.com> 87628 87629 Reviewed by Gustavo Noronha. 87630 87631 [GTK] Fix DOM event dispatch 87632 https://bugs.webkit.org/show_bug.cgi?id=40847 87633 87634 Bind UI and Mouse events and add ad-hoc kit method for WebCore 87635 Events. 87636 87637 * GNUmakefile.am: 87638 * bindings/gobject/WebKitDOMBinding.cpp: 87639 (WebKit::kit): 87640 * bindings/gobject/WebKitDOMBinding.h: 87641 * bindings/gobject/WebKitDOMEventTarget.cpp: 87642 (WebKit::core): 87643 * bindings/gobject/WebKitDOMEventTargetPrivate.h: Added. 87644 * bindings/scripts/CodeGeneratorGObject.pm: 87645 87646 2010-08-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 87647 87648 Reviewed by Eric Seidel. 87649 87650 Cleanup all of svg/ code 87651 https://bugs.webkit.org/show_bug.cgi?id=43311 87652 87653 Unify the license header in all files in svg/, to use the same template as most WebCore files use. 87654 Unified email adress style, etc. all generated with a perl script attached to bug 43311. 87655 87656 * svg/...: Updated header template in all files, in the svg/ subdirectory. 87657 87658 2010-08-03 Andrei Popescu <andreip (a] google.com> 87659 87660 Reviewed by Jeremy Orlow. 87661 87662 [IndexedDB] IDBObjectStoreRequest should be called IDBObjectStore 87663 https://bugs.webkit.org/show_bug.cgi?id=43420 87664 87665 Renaming IDBObjectStoreRequest to IDBObjectStore. 87666 87667 No new tests needed, just refactoring. 87668 87669 * Android.derived.jscbindings.mk: 87670 * Android.derived.v8bindings.mk: 87671 * Android.mk: 87672 * CMakeLists.txt: 87673 * DerivedSources.cpp: 87674 * DerivedSources.make: 87675 * GNUmakefile.am: 87676 * WebCore.gypi: 87677 * WebCore.pri: 87678 * WebCore.pro: 87679 * WebCore.vcproj/WebCore.vcproj: 87680 * WebCore.xcodeproj/project.pbxproj: 87681 * bindings/js/JSIDBAnyCustom.cpp: 87682 (WebCore::toJS): 87683 * bindings/v8/custom/V8IDBAnyCustom.cpp: 87684 (WebCore::toV8): 87685 * storage/IDBAny.cpp: 87686 (WebCore::IDBAny::idbObjectStore): 87687 (WebCore::IDBAny::set): 87688 * storage/IDBAny.h: 87689 (WebCore::IDBAny::): 87690 * storage/IDBCallbacks.h: 87691 * storage/IDBDatabase.cpp: 87692 (WebCore::IDBDatabase::objectStore): 87693 * storage/IDBDatabase.h: 87694 * storage/IDBDatabaseBackendImpl.cpp: 87695 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 87696 (WebCore::IDBDatabaseBackendImpl::objectStore): 87697 * storage/IDBDatabaseBackendImpl.h: 87698 * storage/IDBDatabaseBackendInterface.h: 87699 * storage/IDBObjectStore.cpp: Added. 87700 (WebCore::IDBObjectStore::IDBObjectStore): 87701 (WebCore::IDBObjectStore::name): 87702 (WebCore::IDBObjectStore::keyPath): 87703 (WebCore::IDBObjectStore::indexNames): 87704 (WebCore::IDBObjectStore::get): 87705 (WebCore::IDBObjectStore::add): 87706 (WebCore::IDBObjectStore::put): 87707 (WebCore::IDBObjectStore::remove): 87708 (WebCore::IDBObjectStore::createIndex): 87709 (WebCore::IDBObjectStore::index): 87710 (WebCore::IDBObjectStore::removeIndex): 87711 * storage/IDBObjectStore.h: 87712 (WebCore::IDBObjectStore::create): 87713 (WebCore::IDBObjectStore::~IDBObjectStore): 87714 * storage/IDBObjectStore.idl: Added. 87715 * storage/IDBObjectStoreBackendImpl.cpp: Added. 87716 (WebCore::IDBObjectStoreBackendImpl::~IDBObjectStoreBackendImpl): 87717 (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): 87718 (WebCore::IDBObjectStoreBackendImpl::indexNames): 87719 (WebCore::IDBObjectStoreBackendImpl::get): 87720 (WebCore::IDBObjectStoreBackendImpl::put): 87721 (WebCore::IDBObjectStoreBackendImpl::remove): 87722 (WebCore::IDBObjectStoreBackendImpl::createIndex): 87723 (WebCore::IDBObjectStoreBackendImpl::index): 87724 (WebCore::IDBObjectStoreBackendImpl::removeIndex): 87725 * storage/IDBObjectStoreBackendImpl.h: Added. 87726 (WebCore::IDBObjectStoreBackendImpl::create): 87727 (WebCore::IDBObjectStoreBackendImpl::name): 87728 (WebCore::IDBObjectStoreBackendImpl::keyPath): 87729 * storage/IDBObjectStoreBackendInterface.h: Added. 87730 (WebCore::IDBObjectStoreBackendInterface::~IDBObjectStoreBackendInterface): 87731 * storage/IDBObjectStoreImpl.cpp: Removed. 87732 * storage/IDBObjectStoreImpl.h: Removed. 87733 * storage/IDBObjectStoreRequest.cpp: Removed. 87734 * storage/IDBObjectStoreRequest.h: Removed. 87735 * storage/IDBObjectStoreRequest.idl: Removed. 87736 * storage/IDBRequest.cpp: 87737 (WebCore::IDBRequest::onSuccess): 87738 * storage/IDBRequest.h: 87739 87740 2010-08-03 Martin Robinson <mrobinson (a] igalia.com> 87741 87742 Reviewed by Ojan Vafai. 87743 87744 [GTK] Incorrect keyIdentifier for print screen key events 87745 https://bugs.webkit.org/show_bug.cgi?id=43422 87746 87747 Produce the correct keyIdentifier for GDK_Print (print screen). 87748 87749 * platform/gtk/KeyEventGtk.cpp: 87750 (WebCore::keyIdentifierForGdkKeyCode): 87751 87752 2010-08-03 Anton Muhin <antonm (a] chromium.org> 87753 87754 Reviewed by David Levin. 87755 87756 [v8] Get current memory usage and make it available on stack before crashing due to out of memory 87757 https://bugs.webkit.org/show_bug.cgi?id=43426 87758 87759 That should allow us to diagnose the cases when the process just ran out of memory 87760 and hence V8 failed to allocate more OS pages. 87761 87762 * bindings/v8/V8DOMWindowShell.cpp: 87763 (WebCore::reportFatalErrorInV8): 87764 87765 2010-08-03 Leandro Pereira <leandro (a] profusion.mobi> 87766 87767 Reviewed by Kenneth Rohde Christiansen. 87768 87769 [EFL] Implement HTML5 slider theme (using the scrollbar theme as base). 87770 https://bugs.webkit.org/show_bug.cgi?id=43430 87771 87772 EFL port does not yet support automated tests. 87773 87774 * platform/efl/RenderThemeEfl.cpp: 87775 (WebCore::RenderThemeEfl::paintThemePart): 87776 (WebCore::RenderThemeEfl::edjeGroupFromFormType): Add Edje groups 87777 for both vertical and horizontal sliders. 87778 (WebCore::supportsFocus): Add sliders as focusable elements. 87779 (WebCore::RenderThemeEfl::paintSliderTrack): Implement. 87780 (WebCore::RenderThemeEfl::adjustSliderTrackStyle): Implement. 87781 (WebCore::RenderThemeEfl::adjustSliderThumbStyle): Use 87782 adjustSliderTrackStyle() implementation. 87783 (WebCore::RenderThemeEfl::paintSliderThumb): Use paintSliderTrack() 87784 implementation(). 87785 * platform/efl/RenderThemeEfl.h: Add SliderVertical and 87786 * SliderHorizontal. 87787 (WebCore::): Added prototypes for adjustSlider*/paintSlider*. 87788 87789 2010-08-03 Alexander Pavlov <apavlov (a] chromium.org> 87790 87791 Reviewed by Joseph Pecoraro. 87792 87793 Web Inspector: incorrect absolute protocol-less URLs in tooltips of links in the ElementsTreeOutline 87794 https://bugs.webkit.org/show_bug.cgi?id=43246 87795 87796 * inspector/front-end/inspector.js: 87797 (WebInspector.completeURL): 87798 87799 2010-08-03 Adam Roben <aroben (a] apple.com> 87800 87801 Compile out two Mac-only localized strings on non-Mac platforms 87802 87803 Fixes <http://webkit.org/b/43433> copyImageUnknownFileLabel and 87804 AXARIAContentGroupText should only be compiled on Mac 87805 87806 Reviewed by Anders Carlsson. 87807 87808 * platform/LocalizationStrategy.h: 87809 * platform/LocalizedStrings.h: 87810 Wrapped copyImageUnknownFileLabel and AXARIAContentGroupText in 87811 PLATFORM(MAC). 87812 87813 2010-08-03 Kevin Ollivier <kevino (a] theolliviers.com> 87814 87815 [wx] Build fix, don't build some DOM bindings we don't use. 87816 87817 * wscript: 87818 87819 2010-08-03 Martin Robinson <mrobinson (a] igalia.com> 87820 87821 Reviewed by Gustavo Noronha Silva. 87822 87823 [GTK] Remove a memory leak from CusorGtk.cpp 87824 https://bugs.webkit.org/show_bug.cgi?id=43424 87825 87826 * platform/gtk/CursorGtk.cpp: 87827 (WebCore::createNamedCursor): 87828 (WebCore::createCustomCursor): 87829 (WebCore::Cursor::ensurePlatformCursor): 87830 * platform/gtk/KeyEventGtk.cpp: 87831 (WebCore::keyIdentifierForGdkKeyCode): 87832 87833 2010-08-03 Pavel Feldman <pfeldman (a] chromium.org> 87834 87835 Not reviewed: speculative chromium tests fix. 87836 87837 * inspector/front-end/ExtensionServer.js: 87838 * inspector/front-end/inspector.js: 87839 (WebInspector.loaded): 87840 87841 2010-08-03 Csaba Osztrogonc <ossy (a] webkit.org> 87842 87843 Reviewed by Antonio Gomes. 87844 87845 Fix warning in WebCore/rendering/RenderBoxModelObject.cpp 87846 https://bugs.webkit.org/show_bug.cgi?id=43412 87847 87848 * rendering/RenderBoxModelObject.cpp: 87849 (WebCore::RenderBoxModelObject::clipBorderSidePolygon): Remove useless assignment. 87850 87851 2010-08-03 Xan Lopez <xlopez (a] igalia.com> 87852 87853 Reviewed by Gustavo Noronha. 87854 87855 Make string parameters be 'const char*' instead of just 'char*'. 87856 87857 * bindings/scripts/CodeGeneratorGObject.pm: 87858 87859 2010-08-03 Xan Lopez <xlopez (a] igalia.com> 87860 87861 Reviewed by Gustavo Noronha. 87862 87863 Get rid of extra spaces in the type strings. 87864 87865 * bindings/scripts/CodeGeneratorGObject.pm: 87866 87867 2010-08-03 Csaba Osztrogonc <ossy (a] webkit.org> 87868 87869 Reviewed by Adam Roben. 87870 87871 Fix warning in WebCore/plugins/win/PluginMessageThrottlerWin.cpp 87872 https://bugs.webkit.org/show_bug.cgi?id=43413 87873 87874 * plugins/win/PluginMessageThrottlerWin.cpp: 87875 (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin): Modify initialization order. 87876 87877 2010-08-03 Yury Semikhatsky <yurys (a] chromium.org> 87878 87879 Reviewed by Pavel Feldman. 87880 87881 Web Inspector: use InspectorValue to push resource data to the frontend 87882 https://bugs.webkit.org/show_bug.cgi?id=43414 87883 87884 * inspector/Inspector.idl: 87885 * inspector/InspectorController.cpp: 87886 (WebCore::InspectorController::disconnectFrontend): destroy remote frontend object along with the old inspector frontend 87887 (WebCore::InspectorController::populateScriptObjects): 87888 (WebCore::InspectorController::didCommitLoad): 87889 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 87890 (WebCore::InspectorController::identifierForInitialRequest): 87891 (WebCore::InspectorController::mainResourceFiredDOMContentEvent): 87892 (WebCore::InspectorController::mainResourceFiredLoadEvent): 87893 (WebCore::InspectorController::willSendRequest): 87894 (WebCore::InspectorController::didReceiveResponse): 87895 (WebCore::InspectorController::didReceiveContentLength): 87896 (WebCore::InspectorController::didFinishLoading): 87897 (WebCore::InspectorController::didFailLoading): 87898 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 87899 (WebCore::InspectorController::scriptImported): 87900 * inspector/InspectorFrontend.cpp: 87901 * inspector/InspectorFrontend.h: 87902 * inspector/InspectorResource.cpp: 87903 (WebCore::buildHeadersObject): 87904 (WebCore::buildObjectForTiming): 87905 (WebCore::InspectorResource::updateScriptObject): 87906 * inspector/InspectorResource.h: 87907 * inspector/front-end/inspector.js: 87908 (WebInspector.updateResource): 87909 87910 2010-08-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 87911 87912 Unreviewed, rolling out r64539. 87913 http://trac.webkit.org/changeset/64539 87914 https://bugs.webkit.org/show_bug.cgi?id=43409 87915 87916 Accidently changed licenses in some files (Requested by 87917 WildFox on #webkit). 87918 87919 * svg/...: 87920 87921 2010-08-03 Andrei Popescu <andreip (a] google.com> 87922 87923 Unreviewed, build fix. 87924 87925 [IndexedDB] Chromium build is broken due to typo in WebCore.gypi:3501 87926 https://bugs.webkit.org/show_bug.cgi?id=43408 87927 87928 Add missing ' in WebCore.gypi:3501. 87929 87930 * WebCore.gypi: 87931 87932 2010-07-30 Andrei Popescu <andreip (a] dhcp-172-16-14-12.lon.corp.google.com> 87933 87934 Reviewed by Jeremy Orlow. 87935 87936 Rename IDBDatabaseRequest to IDBDatabase 87937 https://bugs.webkit.org/show_bug.cgi?id=43250 87938 87939 No new tests, just refactoring. 87940 87941 * Android.derived.jscbindings.mk: 87942 * Android.derived.v8bindings.mk: 87943 * Android.mk: 87944 * CMakeLists.txt: 87945 * DerivedSources.cpp: 87946 * DerivedSources.make: 87947 * GNUmakefile.am: 87948 * WebCore.gypi: 87949 * WebCore.pri: 87950 * WebCore.pro: 87951 * WebCore.vcproj/WebCore.vcproj: 87952 * WebCore.vcproj/WebCore.vcproj~: Added. 87953 * WebCore.xcodeproj/project.pbxproj: 87954 * WebCore.xcodeproj/project.pbxproj~: Added. 87955 * bindings/js/JSIDBAnyCustom.cpp: 87956 (WebCore::toJS): 87957 * bindings/v8/custom/V8IDBAnyCustom.cpp: 87958 (WebCore::toV8): 87959 * storage/IDBAny.cpp: 87960 (WebCore::IDBAny::idbDatabase): 87961 (WebCore::IDBAny::set): 87962 * storage/IDBAny.h: 87963 (WebCore::IDBAny::): 87964 * storage/IDBCallbacks.h: 87965 * storage/IDBDatabase.cpp: Added. 87966 (WebCore::IDBDatabase::IDBDatabase): 87967 (WebCore::IDBDatabase::~IDBDatabase): 87968 (WebCore::IDBDatabase::createObjectStore): 87969 (WebCore::IDBDatabase::objectStore): 87970 (WebCore::IDBDatabase::removeObjectStore): 87971 * storage/IDBDatabase.h: 87972 (WebCore::IDBDatabase::create): 87973 (WebCore::IDBDatabase::name): 87974 (WebCore::IDBDatabase::description): 87975 (WebCore::IDBDatabase::version): 87976 (WebCore::IDBDatabase::objectStores): 87977 * storage/IDBDatabase.idl: Added. 87978 * storage/IDBDatabaseBackendImpl.cpp: Added. 87979 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): 87980 (WebCore::IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl): 87981 (WebCore::IDBDatabaseBackendImpl::objectStores): 87982 (WebCore::IDBDatabaseBackendImpl::createObjectStore): 87983 (WebCore::IDBDatabaseBackendImpl::objectStore): 87984 (WebCore::IDBDatabaseBackendImpl::removeObjectStore): 87985 * storage/IDBDatabaseBackendImpl.h: Added. 87986 (WebCore::IDBDatabaseBackendImpl::create): 87987 (WebCore::IDBDatabaseBackendImpl::name): 87988 (WebCore::IDBDatabaseBackendImpl::description): 87989 (WebCore::IDBDatabaseBackendImpl::version): 87990 * storage/IDBDatabaseBackendInterface.h: Added. 87991 (WebCore::IDBDatabaseBackendInterface::~IDBDatabaseBackendInterface): 87992 * storage/IDBDatabaseImpl.cpp: Removed. 87993 * storage/IDBDatabaseImpl.h: Removed. 87994 * storage/IDBDatabaseRequest.cpp: Removed. 87995 * storage/IDBDatabaseRequest.h: Removed. 87996 * storage/IDBDatabaseRequest.idl: Removed. 87997 * storage/IDBFactoryBackendImpl.cpp: 87998 (WebCore::IDBFactoryBackendImpl::open): 87999 * storage/IDBFactoryBackendImpl.h: 88000 * storage/IDBRequest.cpp: 88001 (WebCore::IDBRequest::onSuccess): 88002 * storage/IDBRequest.h: 88003 88004 2010-08-03 Satish Sampath <satish (a] chromium.org> 88005 88006 Reviewed by Kent Tamura. 88007 88008 Initiate speech input requests on click event 88009 https://bugs.webkit.org/show_bug.cgi?id=43352 88010 88011 * rendering/TextControlInnerElements.cpp: 88012 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 88013 88014 2010-08-02 Yury Semikhatsky <yurys (a] chromium.org> 88015 88016 Reviewed by Pavel Feldman. 88017 88018 Web Inspector: debugger code should serialize call frames to InspectorObjects instead of SerializedScriptValues. 88019 https://bugs.webkit.org/show_bug.cgi?id=43339 88020 88021 No new tests. Refactoring. 88022 88023 * inspector/InjectedScript.cpp: 88024 (WebCore::InjectedScript::callFrames): 88025 * inspector/InjectedScript.h: 88026 * inspector/Inspector.idl: 88027 * inspector/InspectorController.cpp: 88028 (WebCore::InspectorController::editScriptSource): 88029 (WebCore::InspectorController::getScriptSource): 88030 (WebCore::InspectorController::currentCallFrames): 88031 (WebCore::InspectorController::didPause): 88032 * inspector/InspectorController.h: 88033 * inspector/front-end/InspectorBackendStub.js: 88034 (WebInspector.InspectorBackendStub): 88035 88036 2010-08-03 Nikolas Zimmermann <nzimmermann (a] rim.com> 88037 88038 Reviewed by Dirk Schulze. 88039 88040 Cleanup all of svg/ code 88041 https://bugs.webkit.org/show_bug.cgi?id=43311 88042 88043 Unify the license header in all files in svg/, to use the same template as most WebCore files use. 88044 Unified email adress style, etc. all generated with a perl script attached to bug 43311.i 88045 88046 * svg/...: Updated header template in all files, in the svg/ subdirectory. 88047 88048 2010-08-03 Dumitru Daniliuc <dumi (a] chromium.org> 88049 88050 Reviewed by Adam Barth. 88051 88052 Turn all callbacks into ActiveDOMObjects and create callbacks in the correct context. 88053 https://bugs.webkit.org/show_bug.cgi?id=40112 88054 88055 Test: http/tests/storage/callbacks-are-called-in-correct-context.html 88056 88057 * CMakeLists.txt: Added new files. 88058 * DerivedSources.make: 88059 * GNUmakefile.am: 88060 * WebCore.gypi: 88061 * WebCore.pro: 88062 * WebCore.vcproj/WebCore.vcproj: 88063 * WebCore.xcodeproj/project.pbxproj: 88064 88065 * bindings/generic/ActiveDOMCallback.cpp: Added. The base class 88066 for all callbacks, that behaves like an ActiveDOMObject. 88067 (WebCore::DestroyOnContextThreadTask::create): 88068 (WebCore::DestroyOnContextThreadTask::performTask): 88069 (WebCore::DestroyOnContextThreadTask::DestroyOnContextThreadTask): 88070 (WebCore::ActiveDOMObjectCallbackImpl::ActiveDOMObjectCallbackImpl): 88071 (WebCore::ActiveDOMObjectCallbackImpl::contextDestroyed): 88072 (WebCore::ActiveDOMObjectCallbackImpl::canSuspend): 88073 (WebCore::ActiveDOMObjectCallbackImpl::suspend): 88074 (WebCore::ActiveDOMObjectCallbackImpl::resume): 88075 (WebCore::ActiveDOMObjectCallbackImpl::stop): 88076 (WebCore::ActiveDOMObjectCallbackImpl::canInvokeCallback): 88077 (WebCore::ActiveDOMObjectCallbackImpl::scriptExecutionContext): 88078 (WebCore::ActiveDOMObjectCallbackImpl::mutex): 88079 (WebCore::destroyOnContextThread): 88080 (WebCore::ActiveDOMCallback::ActiveDOMCallback): 88081 (WebCore::ActiveDOMCallback::~ActiveDOMCallback): 88082 (WebCore::ActiveDOMCallback::canInvokeCallback): 88083 (WebCore::ActiveDOMCallback::scriptExecutionContext): 88084 * bindings/generic/ActiveDOMCallback.h: Added. 88085 88086 * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Pass the 88087 right ScriptExecutionContext to the JSC callbacks. 88088 (WebCore::JSSQLStatementErrorCallback::handleEvent): 88089 * bindings/js/JSSQLTransactionCustom.cpp: 88090 (WebCore::JSSQLTransaction::executeSql): 88091 88092 * bindings/scripts/CodeGeneratorJS.pm: Make all callbacks inherit 88093 from ActiveDOMCallback, and make them use the right 88094 ScriptExecutionContext. 88095 * bindings/scripts/CodeGeneratorV8.pm: 88096 88097 * bindings/scripts/test/JS/JSTestCallback.cpp: Update the 88098 expectations for the code generated by CodeGenerator{JS|V8}.pm. 88099 (WebCore::JSTestCallback::JSTestCallback): 88100 (WebCore::JSTestCallback::~JSTestCallback): 88101 (WebCore::JSTestCallback::callbackWithClass1Param): 88102 (WebCore::JSTestCallback::callbackWithClass2Param): 88103 * bindings/scripts/test/JS/JSTestCallback.h: 88104 * bindings/scripts/test/V8/V8TestCallback.cpp: 88105 (WebCore::V8TestCallback::V8TestCallback): 88106 (WebCore::V8TestCallback::callbackWithClass1Param): 88107 (WebCore::V8TestCallback::callbackWithClass2Param): 88108 * bindings/scripts/test/V8/V8TestCallback.h: 88109 (WebCore::V8TestCallback::create): 88110 * bindings/scripts/test/V8/V8TestObj.cpp: 88111 (WebCore::TestObjInternal::methodWithCallbackArgCallback): 88112 (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): 88113 (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): 88114 88115 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: Pass 88116 the right ScriptExecutionContext to the V8 callbacks. 88117 (WebCore::V8SQLStatementErrorCallback::handleEvent): 88118 * bindings/v8/custom/V8DOMWindowCustom.cpp: 88119 (WebCore::V8DOMWindow::openDatabaseCallback): 88120 * bindings/v8/custom/V8DatabaseCustom.cpp: 88121 (WebCore::V8Database::changeVersionCallback): 88122 (WebCore::createTransaction): 88123 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: 88124 (WebCore::V8DatabaseSync::changeVersionCallback): 88125 (WebCore::createTransaction): 88126 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 88127 (WebCore::V8SQLTransaction::executeSqlCallback): 88128 * bindings/v8/custom/V8WorkerContextCustom.cpp: 88129 (WebCore::V8WorkerContext::openDatabaseCallback): 88130 (WebCore::V8WorkerContext::openDatabaseSyncCallback): 88131 88132 * dom/ActiveDOMObject.cpp: Simplify the code. 88133 (WebCore::ActiveDOMObject::ActiveDOMObject): 88134 (WebCore::ActiveDOMObject::~ActiveDOMObject): 88135 88136 * storage/Database.cpp: CallbackClass::handleEvent() doesn't take 88137 a ScriptExecutionContext anymore. 88138 (WebCore::DatabaseCreationCallbackTask::performTask): 88139 * storage/DatabaseCallback.h: 88140 * storage/DatabaseSync.cpp: 88141 (WebCore::DatabaseSync::openDatabaseSync): 88142 * storage/EntryCallback.h: 88143 * storage/ErrorCallback.h: 88144 * storage/FileSystemCallback.h: 88145 * storage/MetadataCallback.h: 88146 * storage/SQLStatement.cpp: 88147 (WebCore::SQLStatement::performCallback): 88148 * storage/SQLStatementCallback.h: 88149 * storage/SQLStatementErrorCallback.h: 88150 * storage/SQLTransaction.cpp: 88151 (WebCore::SQLTransaction::deliverTransactionCallback): 88152 (WebCore::SQLTransaction::deliverTransactionErrorCallback): 88153 * storage/SQLTransactionCallback.h: 88154 * storage/SQLTransactionErrorCallback.h: 88155 * storage/SQLTransactionSync.cpp: 88156 (WebCore::SQLTransactionSync::execute): 88157 * storage/SQLTransactionSyncCallback.h: 88158 88159 2010-08-02 Ilya Tikhonovsky <loislo (a] chromium.org> 88160 88161 Reviewed by Yury Semikhatsky. 88162 88163 WebInspector: Trivial InspectorBackend functions were removed. 88164 And now it is bit simpler to change Inspector API because we have 88165 less number of abstraction layers. 88166 https://bugs.webkit.org/show_bug.cgi?id=43402 88167 88168 * inspector/CodeGeneratorInspector.pm: 88169 * inspector/Inspector.idl: 88170 * inspector/InspectorBackend.cpp: 88171 (WebCore::InspectorBackend::clearConsoleMessages): 88172 (WebCore::InspectorBackend::releaseWrapperObjectGroup): 88173 (WebCore::InspectorBackend::inspectorFrontend): 88174 (WebCore::InspectorBackend::remoteFrontend): 88175 * inspector/InspectorBackend.h: 88176 (WebCore::InspectorBackend::inspectorDOMAgent): 88177 (WebCore::InspectorBackend::inspectorApplicationCacheAgent): 88178 * inspector/InspectorController.h: 88179 88180 2010-08-03 Alexey Proskuryakov <ap (a] apple.com> 88181 88182 Unreviewed (emergency test fix). 88183 88184 REGRESSION (r64518): Most regression tests fail on ASSERT(shouldTrackVisitedLinks) 88185 on Snow Leopard. 88186 88187 Platforms that use strategies now use a different code path than others, and that code path 88188 lacks necessary checks. We don't have a Snow Leopard debug buildbot. 88189 88190 * page/PageGroup.cpp: (WebCore::PageGroup::addVisitedLinkHash): The private version of 88191 addVisitedLink() must not be called when we're not tracking visited links. 88192 88193 2010-08-02 Pavel Feldman <pfeldman (a] chromium.org> 88194 88195 Reviewed by Yury Semikhatsky. 88196 88197 Chromium DevTools: Get rid of DevTools RPC. 88198 88199 https://bugs.webkit.org/show_bug.cgi?id=43335 88200 88201 * bindings/js/ScriptProfiler.h: 88202 (WebCore::ScriptProfiler::getProfilerLogLines): 88203 * bindings/v8/ScriptProfiler.cpp: 88204 (WebCore::ScriptProfiler::getProfilerLogLines): 88205 * bindings/v8/ScriptProfiler.h: 88206 * inspector/Inspector.idl: 88207 * inspector/InspectorBackend.cpp: 88208 (WebCore::InspectorBackend::takeHeapSnapshot): 88209 (WebCore::InspectorBackend::getProfilerLogLines): 88210 * inspector/InspectorBackend.h: 88211 * inspector/InspectorController.cpp: 88212 (WebCore::InspectorController::disableProfiler): 88213 * inspector/InspectorController.h: 88214 * inspector/InspectorFrontend.h: 88215 * inspector/front-end/InspectorBackendStub.js: 88216 (WebInspector.InspectorBackendStub): 88217 88218 2010-08-02 Dan Bernstein <mitz (a] apple.com> 88219 88220 Rubber-stamped by Sam Weinig. 88221 88222 Removed temporary build rule introduced in r62594. 88223 88224 * DerivedSources.make: 88225 88226 2010-08-02 Pavel Feldman <pfeldman (a] chromium.org> 88227 88228 Not reviewed. Rolling out r64525 for breaking chromium tests. 88229 88230 * bindings/v8/V8Proxy.cpp: 88231 (WebCore::V8Proxy::retrieve): 88232 88233 2010-08-02 Kevin Ollivier <kevino (a] theolliviers.com> 88234 88235 [wx] Build fix, add stubs for FontCustomPlatformData to compile code that uses them. 88236 88237 * css/CSSFontFaceSource.cpp: 88238 * platform/graphics/wx/FontCustomPlatformData.cpp: Added. 88239 (WebCore::FontCustomPlatformData::~FontCustomPlatformData): 88240 (WebCore::FontCustomPlatformData::fontPlatformData): 88241 (WebCore::createFontCustomPlatformData): 88242 (WebCore::FontCustomPlatformData::supportsFormat): 88243 * platform/graphics/wx/FontCustomPlatformData.h: Added. 88244 (WebCore::FontCustomPlatformData::FontCustomPlatformData): 88245 * wscript: 88246 88247 2010-08-02 Brady Eidson <beidson (a] apple.com> 88248 88249 Reviewed by NOBODY (Build fix, forgot to svn add this file) 88250 88251 * platform/VisitedLinkStrategy.h: Added. 88252 (WebCore::VisitedLinkStrategy::~VisitedLinkStrategy): 88253 88254 2010-08-02 Martin Robinson <mrobinson (a] igalia.com> 88255 88256 Reviewed by Gustavo Noronha Silva. 88257 88258 [GTK] WebKit2 requires lazy cursor support 88259 https://bugs.webkit.org/show_bug.cgi?id=43053 88260 88261 Add lazy cursor support for GTK+. Lazy cursor support is used on some 88262 WebKit2 ports to support changing the cursor. 88263 88264 No new tests, as this should not change functionality. 88265 88266 * platform/Cursor.h: Changed the m_platformCursor member to be a GRefPtr. 88267 This simplifies the logic a great deal. 88268 * platform/gtk/CursorGtk.cpp: 88269 (WebCore::createNamedCursor): Added, adapted from existing code. 88270 (WebCore::createCustomCursor): Added, adapted from existing code. 88271 (WebCore::Cursor::ensurePlatformCursor): Added. 88272 (WebCore::Cursor::Cursor): Added. 88273 (WebCore::Cursor::operator=): Added. 88274 (WebCore::Cursor::~Cursor): Added. 88275 * platform/gtk/WidgetGtk.cpp: 88276 (WebCore::Widget::setCursor): Call platformCusor now to get the actual GdkCursor. 88277 88278 2010-08-02 Rajiv Makhijani <rajivmakhijani (a] chromium.org> 88279 88280 Reviewed by Adam Barth. 88281 88282 Committed by Dirk Pranke. 88283 88284 Bug 38705 - [v8] chromium fails http/tests/sandbox-inherit-to-initial-document-2 88285 https://bugs.webkit.org/show_bug.cgi?id=38705 88286 88287 WebCore::V8Proxy::retrieve(Frame* frame) calls WebCore::ScriptController::canExecuteScripts 88288 and returns 0 if canExecuteScripts is false. It should return the proxy regardless 88289 of whether the frame can execute scripts. 88290 88291 * bindings/v8/V8Proxy.cpp: 88292 (WebCore::V8Proxy::retrieve): Removed canExecuteScripts check. 88293 88294 2010-08-02 Brady Eidson <beidson (a] apple.com> 88295 88296 Reviewed by Anders Carlsson. 88297 88298 Add VisitedLinkStrategy for each platform to implement 88299 https://bugs.webkit.org/show_bug.cgi?id=43393 88300 88301 No new tests. (No change in behavior) 88302 88303 * WebCore.exp.in: 88304 * WebCore.xcodeproj/project.pbxproj: 88305 88306 * css/CSSStyleSelector.cpp: 88307 (WebCore::CSSStyleSelector::SelectorChecker::determineLinkStateSlowCase): Use VisitedLinkStrategy if it's enabled. 88308 88309 * loader/HistoryController.cpp: 88310 (WebCore::addVisitedLink): Choose VisitedLinkStrategy if it's enabled, else fallback to PageGroup. 88311 (WebCore::HistoryController::updateForStandardLoad): Use addVisitedLink helper. 88312 (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList): Ditto. 88313 (WebCore::HistoryController::updateForClientRedirect): Ditto. 88314 (WebCore::HistoryController::updateForSameDocumentNavigation): Ditto. 88315 88316 * platform/PlatformStrategies.h: 88317 (WebCore::PlatformStrategies::visitedLinkStrategy): 88318 (WebCore::PlatformStrategies::PlatformStrategies): 88319 88320 2010-08-02 Chris Fleizach <cfleizach (a] apple.com> 88321 88322 Unreviewed, rolling out r64471. 88323 http://trac.webkit.org/changeset/64471 88324 https://bugs.webkit.org/show_bug.cgi?id=43005 88325 88326 Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005 88327 until further discussion 88328 88329 * Android.derived.v8bindings.mk: 88330 * Android.jscbindings.mk: 88331 * DerivedSources.cpp: 88332 * DerivedSources.make: 88333 * GNUmakefile.am: 88334 * WebCore.gypi: 88335 * WebCore.pri: 88336 * WebCore.pro: 88337 * WebCore.vcproj/WebCore.vcproj: 88338 * WebCore.xcodeproj/project.pbxproj: 88339 * accessibility/AXObjectCache.h: 88340 (WebCore::AXObjectCache::): 88341 * accessibility/Accessibility.cpp: Removed. 88342 * accessibility/Accessibility.h: Removed. 88343 * accessibility/Accessibility.idl: Removed. 88344 * accessibility/AccessibilityObject.h: 88345 * accessibility/ScreenReader.cpp: Removed. 88346 * accessibility/ScreenReader.h: Removed. 88347 * accessibility/ScreenReader.idl: Removed. 88348 * accessibility/mac/AXObjectCacheMac.mm: 88349 (WebCore::AXObjectCache::postPlatformNotification): 88350 * accessibility/mac/AccessibilityObjectMac.mm: 88351 * page/Navigator.cpp: 88352 (WebCore::Navigator::disconnectFrame): 88353 (WebCore::Navigator::mimeTypes): 88354 * page/Navigator.h: 88355 * page/Navigator.idl: 88356 88357 2010-08-02 Ryosuke Niwa <rniwa (a] webkit.org> 88358 88359 Reviewed by Eric Seidel. 88360 88361 Range::create should not be calling deprecatedEditingOffset and node on start and end 88362 https://bugs.webkit.org/show_bug.cgi?id=43385 88363 88364 Replaced node() and deprecatedEditingOffset() by containerNode() and computeOffsetInContainerNode(). 88365 88366 No new tests added since this does not change the behavior. 88367 88368 * dom/Range.cpp: 88369 (WebCore::Range::create): 88370 88371 2010-08-02 Chris Fleizach <cfleizach (a] apple.com> 88372 88373 Unreviewed, rolling out r64472. 88374 http://trac.webkit.org/changeset/64472 88375 https://bugs.webkit.org/show_bug.cgi?id=43005 88376 88377 Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005 88378 until further discussion 88379 88380 * WebCore.vcproj/WebCore.vcproj: 88381 88382 2010-08-02 Chris Fleizach <cfleizach (a] apple.com> 88383 88384 Unreviewed, rolling out r64476. 88385 http://trac.webkit.org/changeset/64476 88386 88387 Rolling out https://bugs.webkit.org/show_bug.cgi?id=43005 88388 until further discussion 88389 88390 * WebCore.vcproj/WebCore.vcproj: 88391 88392 2010-07-27 Luiz Agostini <luiz.agostini (a] openbossa.org> 88393 88394 Reviewed by Darin Fisher. 88395 88396 PopupMenu refactoring in preparation to WebKit2 88397 https://bugs.webkit.org/show_bug.cgi?id=42592 88398 88399 Classes PopupMenu and SearchPopupMenu have been made pure virtual. 88400 88401 * platform/PopupMenu.h: 88402 (WebCore::PopupMenu::~PopupMenu): 88403 * platform/SearchPopupMenu.h: 88404 (WebCore::SearchPopupMenu::~SearchPopupMenu): 88405 88406 Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use 88407 the new pure virtual PopupMenu and SearchPopupMenu. 88408 88409 * rendering/RenderMenuList.cpp: 88410 (WebCore::RenderMenuList::adjustInnerStyle): 88411 (WebCore::RenderMenuList::showPopup): 88412 * rendering/RenderMenuList.h: 88413 * rendering/RenderTextControlSingleLine.cpp: 88414 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 88415 (WebCore::RenderTextControlSingleLine::addSearchResult): 88416 (WebCore::RenderTextControlSingleLine::showPopup): 88417 (WebCore::RenderTextControlSingleLine::hidePopup): 88418 (WebCore::RenderTextControlSingleLine::updateFromElement): 88419 (WebCore::RenderTextControlSingleLine::valueChanged): 88420 * rendering/RenderTextControlSingleLine.h: 88421 88422 Chrome and ChromeClient were made responsible for providing instances of classes 88423 PopupMenu and SearchPopupMenu to its users. 88424 88425 * loader/EmptyClients.h: 88426 (WebCore::EmptyPopupMenu::show): 88427 (WebCore::EmptyPopupMenu::hide): 88428 (WebCore::EmptyPopupMenu::updateFromElement): 88429 (WebCore::EmptyPopupMenu::disconnectClient): 88430 (WebCore::EmptySearchPopupMenu::popupMenu): 88431 (WebCore::EmptySearchPopupMenu::saveRecentSearches): 88432 (WebCore::EmptySearchPopupMenu::loadRecentSearches): 88433 (WebCore::EmptySearchPopupMenu::enabled): 88434 (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural): 88435 (WebCore::EmptyChromeClient::createPopupMenu): 88436 (WebCore::EmptyChromeClient::createSearchPopupMenu): 88437 * page/Chrome.cpp: 88438 (WebCore::Chrome::selectItemWritingDirectionIsNatural): 88439 (WebCore::Chrome::createPopupMenu): 88440 (WebCore::Chrome::createSearchPopupMenu): 88441 * page/Chrome.h: 88442 * page/ChromeClient.h: 88443 88444 Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited 88445 in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h). 88446 Each of new the files contain the concrete classes that inherit form PopupMenu or 88447 SearchPopupMenu and are specific for the corresponding platform. 88448 88449 brew: 88450 88451 * platform/brew/PopupMenuBrew.cpp: 88452 (WebCore::PopupMenuBrew::PopupMenuBrew): 88453 (WebCore::PopupMenuBrew::~PopupMenuBrew): 88454 (WebCore::PopupMenuBrew::disconnectClient): 88455 (WebCore::PopupMenuBrew::show): 88456 (WebCore::PopupMenuBrew::hide): 88457 (WebCore::PopupMenuBrew::updateFromElement): 88458 * platform/brew/PopupMenuBrew.h: Added. 88459 (WebCore::PopupMenuBrew::client): 88460 * platform/brew/SearchPopupMenuBrew.cpp: 88461 (WebCore::SearchPopupMenuBrew::saveRecentSearches): 88462 (WebCore::SearchPopupMenuBrew::loadRecentSearches): 88463 (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew): 88464 (WebCore::SearchPopupMenuBrew::enabled): 88465 (WebCore::SearchPopupMenuBrew::popupMenu): 88466 * platform/brew/SearchPopupMenuBrew.h: Added. 88467 88468 chromium: 88469 88470 * WebCore.gypi: 88471 * platform/chromium/PopupMenuChromium.cpp: 88472 (WebCore::PopupMenuChromium::PopupMenuChromium): 88473 (WebCore::PopupMenuChromium::~PopupMenuChromium): 88474 (WebCore::PopupMenuChromium::show): 88475 (WebCore::PopupMenuChromium::hide): 88476 (WebCore::PopupMenuChromium::updateFromElement): 88477 (WebCore::PopupMenuChromium::disconnectClient): 88478 * platform/chromium/PopupMenuChromium.h: 88479 (WebCore::PopupMenuChromium::client): 88480 * platform/chromium/SearchPopupMenuChromium.cpp: 88481 (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium): 88482 (WebCore::SearchPopupMenuChromium::popupMenu): 88483 (WebCore::SearchPopupMenuChromium::enabled): 88484 (WebCore::SearchPopupMenuChromium::saveRecentSearches): 88485 (WebCore::SearchPopupMenuChromium::loadRecentSearches): 88486 * platform/chromium/SearchPopupMenuChromium.h: Added. 88487 88488 efl: 88489 88490 * platform/efl/PopupMenuEfl.cpp: 88491 (WebCore::PopupMenuEfl::PopupMenuEfl): 88492 (WebCore::PopupMenuEfl::~PopupMenuEfl): 88493 (WebCore::PopupMenuEfl::show): 88494 (WebCore::PopupMenuEfl::hide): 88495 (WebCore::PopupMenuEfl::updateFromElement): 88496 (WebCore::PopupMenuEfl::disconnectClient): 88497 * platform/efl/PopupMenuEfl.h: Added. 88498 (WebCore::PopupMenuEfl::client): 88499 * platform/efl/SearchPopupMenuEfl.cpp: 88500 (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl): 88501 (WebCore::SearchPopupMenuEfl::popupMenu): 88502 (WebCore::SearchPopupMenuEfl::saveRecentSearches): 88503 (WebCore::SearchPopupMenuEfl::loadRecentSearches): 88504 (WebCore::SearchPopupMenuEfl::enabled): 88505 * platform/efl/SearchPopupMenuEfl.h: Added. 88506 88507 gtk: 88508 88509 * GNUmakefile.am: 88510 * platform/gtk/PopupMenuGtk.cpp: 88511 (WebCore::PopupMenuGtk::PopupMenuGtk): 88512 (WebCore::PopupMenuGtk::~PopupMenuGtk): 88513 (WebCore::PopupMenuGtk::show): 88514 (WebCore::PopupMenuGtk::hide): 88515 (WebCore::PopupMenuGtk::updateFromElement): 88516 (WebCore::PopupMenuGtk::disconnectClient): 88517 (WebCore::PopupMenuGtk::menuItemActivated): 88518 (WebCore::PopupMenuGtk::menuUnmapped): 88519 (WebCore::PopupMenuGtk::menuPositionFunction): 88520 (WebCore::PopupMenuGtk::menuRemoveItem): 88521 * platform/gtk/PopupMenuGtk.h: Added. 88522 (WebCore::PopupMenuGtk::client): 88523 * platform/gtk/SearchPopupMenuGtk.cpp: 88524 (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk): 88525 (WebCore::SearchPopupMenuGtk::popupMenu): 88526 (WebCore::SearchPopupMenuGtk::saveRecentSearches): 88527 (WebCore::SearchPopupMenuGtk::loadRecentSearches): 88528 (WebCore::SearchPopupMenuGtk::enabled): 88529 * platform/gtk/SearchPopupMenuGtk.h: Added. 88530 88531 haiku: 88532 88533 * platform/haiku/PopupMenuHaiku.cpp: 88534 (WebCore::HaikuPopup::HaikuPopup): 88535 (WebCore::HaikuPopup::~HaikuPopup): 88536 (WebCore::PopupMenuHaiku::PopupMenuHaiku): 88537 (WebCore::PopupMenuHaiku::~PopupMenuHaiku): 88538 (WebCore::PopupMenuHaiku::disconnectClient): 88539 (WebCore::PopupMenuHaiku::show): 88540 (WebCore::PopupMenuHaiku::hide): 88541 (WebCore::PopupMenuHaiku::updateFromElement): 88542 * platform/haiku/PopupMenuHaiku.h: Added. 88543 (WebCore::PopupMenuHaiku::disconnectClient): 88544 (WebCore::PopupMenuHaiku::client): 88545 * platform/haiku/SearchPopupMenuHaiku.cpp: 88546 (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku): 88547 (WebCore::SearchPopupMenuHaiku::saveRecentSearches): 88548 (WebCore::SearchPopupMenuHaiku::loadRecentSearches): 88549 (WebCore::SearchPopupMenuHaiku::enabled): 88550 (WebCore::SearchPopupMenuHaiku::popupMenu): 88551 * platform/haiku/SearchPopupMenuHaiku.h: Added. 88552 88553 mac: 88554 88555 * WebCore.exp.in: 88556 * WebCore.xcodeproj/project.pbxproj: 88557 * platform/mac/PopupMenuMac.h: Added. 88558 (WebCore::PopupMenuMac::disconnectClient): 88559 (WebCore::PopupMenuMac::client): 88560 * platform/mac/PopupMenuMac.mm: 88561 (WebCore::PopupMenuMac::PopupMenuMac): 88562 (WebCore::PopupMenuMac::~PopupMenuMac): 88563 (WebCore::PopupMenuMac::clear): 88564 (WebCore::PopupMenuMac::populate): 88565 (WebCore::PopupMenuMac::show): 88566 (WebCore::PopupMenuMac::hide): 88567 (WebCore::PopupMenuMac::updateFromElement): 88568 (WebCore::PopupMenuMac::itemWritingDirectionIsNatural): 88569 * platform/mac/SearchPopupMenuMac.h: Added. 88570 * platform/mac/SearchPopupMenuMac.mm: 88571 (WebCore::SearchPopupMenuMac::SearchPopupMenuMac): 88572 (WebCore::SearchPopupMenuMac::popupMenu): 88573 (WebCore::SearchPopupMenuMac::enabled): 88574 (WebCore::SearchPopupMenuMac::saveRecentSearches): 88575 (WebCore::SearchPopupMenuMac::loadRecentSearches): 88576 88577 qt: 88578 88579 * WebCore.pro: 88580 * platform/qt/PopupMenuQt.cpp: 88581 (WebCore::PopupMenuQt::PopupMenuQt): 88582 (WebCore::PopupMenuQt::~PopupMenuQt): 88583 (WebCore::PopupMenuQt::disconnectClient): 88584 (WebCore::PopupMenuQt::show): 88585 (WebCore::PopupMenuQt::hide): 88586 (WebCore::PopupMenuQt::updateFromElement): 88587 * platform/qt/PopupMenuQt.h: Added. 88588 * platform/qt/QtAbstractWebPopup.h: 88589 * platform/qt/SearchPopupMenuQt.cpp: 88590 (WebCore::SearchPopupMenuQt::SearchPopupMenuQt): 88591 (WebCore::SearchPopupMenuQt::popupMenu): 88592 (WebCore::SearchPopupMenuQt::saveRecentSearches): 88593 (WebCore::SearchPopupMenuQt::loadRecentSearches): 88594 (WebCore::SearchPopupMenuQt::enabled): 88595 * platform/qt/SearchPopupMenuQt.h: Added. 88596 88597 win: 88598 88599 * WebCore.vcproj/WebCore.vcproj: 88600 * platform/win/PopupMenuWin.cpp: 88601 (WebCore::PopupMenuWin::PopupMenuWin): 88602 (WebCore::PopupMenuWin::~PopupMenuWin): 88603 (WebCore::PopupMenuWin::disconnectClient): 88604 (WebCore::PopupMenuWin::popupClassName): 88605 (WebCore::PopupMenuWin::show): 88606 (WebCore::PopupMenuWin::hide): 88607 (WebCore::PopupMenuWin::calculatePositionAndSize): 88608 (WebCore::PopupMenuWin::setFocusedIndex): 88609 (WebCore::PopupMenuWin::visibleItems): 88610 (WebCore::PopupMenuWin::listIndexAtPoint): 88611 (WebCore::PopupMenuWin::focusedIndex): 88612 (WebCore::PopupMenuWin::focusFirst): 88613 (WebCore::PopupMenuWin::focusLast): 88614 (WebCore::PopupMenuWin::down): 88615 (WebCore::PopupMenuWin::up): 88616 (WebCore::PopupMenuWin::invalidateItem): 88617 (WebCore::PopupMenuWin::clientRect): 88618 (WebCore::PopupMenuWin::incrementWheelDelta): 88619 (WebCore::PopupMenuWin::reduceWheelDelta): 88620 (WebCore::PopupMenuWin::scrollToRevealSelection): 88621 (WebCore::PopupMenuWin::updateFromElement): 88622 (WebCore::PopupMenuWin::paint): 88623 (WebCore::PopupMenuWin::valueChanged): 88624 (WebCore::PopupMenuWin::invalidateScrollbarRect): 88625 (WebCore::PopupMenuWin::registerClass): 88626 (WebCore::PopupMenuWin::PopupMenuWndProc): 88627 (WebCore::PopupMenuWin::wndProc): 88628 * platform/win/PopupMenuWin.h: Added. 88629 (WebCore::PopupMenuWin::client): 88630 (WebCore::PopupMenuWin::scrollbar): 88631 (WebCore::PopupMenuWin::itemHeight): 88632 (WebCore::PopupMenuWin::windowRect): 88633 (WebCore::PopupMenuWin::popupHandle): 88634 (WebCore::PopupMenuWin::setWasClicked): 88635 (WebCore::PopupMenuWin::wasClicked): 88636 (WebCore::PopupMenuWin::setScrollOffset): 88637 (WebCore::PopupMenuWin::scrollOffset): 88638 (WebCore::PopupMenuWin::wheelDelta): 88639 (WebCore::PopupMenuWin::scrollbarCapturingMouse): 88640 (WebCore::PopupMenuWin::setScrollbarCapturingMouse): 88641 * platform/win/SearchPopupMenuWin.cpp: 88642 (WebCore::SearchPopupMenuWin::SearchPopupMenuWin): 88643 (WebCore::SearchPopupMenuWin::popupMenu): 88644 (WebCore::SearchPopupMenuWin::enabled): 88645 (WebCore::SearchPopupMenuWin::saveRecentSearches): 88646 (WebCore::SearchPopupMenuWin::loadRecentSearches): 88647 * platform/win/SearchPopupMenuWin.h: Added. 88648 88649 wx: 88650 88651 * platform/wx/PopupMenuWx.cpp: 88652 (WebCore::PopupMenuWx::PopupMenuWx): 88653 (WebCore::PopupMenuWx::~PopupMenuWx): 88654 (WebCore::PopupMenuWx::disconnectClient): 88655 (WebCore::PopupMenuWx::show): 88656 (WebCore::PopupMenuWx::OnMenuItemSelected): 88657 (WebCore::PopupMenuWx::hide): 88658 (WebCore::PopupMenuWx::updateFromElement): 88659 * platform/wx/PopupMenuWx.h: Added. 88660 (WebCore::PopupMenuWx::client): 88661 * platform/wx/SearchPopupMenuWx.cpp: 88662 (WebCore::SearchPopupMenuWx::SearchPopupMenuWx): 88663 (WebCore::SearchPopupMenuWx::saveRecentSearches): 88664 (WebCore::SearchPopupMenuWx::loadRecentSearches): 88665 (WebCore::SearchPopupMenuWx::enabled): 88666 (WebCore::SearchPopupMenuWx::popupMenu): 88667 * platform/wx/SearchPopupMenuWx.h: Added. 88668 88669 88670 88671 2010-08-02 Martin Robinson <mrobinson (a] igalia.com> 88672 88673 Reviewed by Xan Lopez. 88674 88675 [GTK] Use GdkPixbuf for ImageBuffer::toDataURL 88676 https://bugs.webkit.org/show_bug.cgi?id=43088 88677 88678 Implement ImageBuffer::toDataURL with GdkPixbuf instead of Cairo. This 88679 allows the method to support a larger variety of image types. 88680 88681 * GNUmakefile.am: Add new files to the source list. 88682 * platform/MIMETypeRegistry.cpp: 88683 (WebCore::initializeSupportedImageMIMETypesForEncoding): 88684 Add the list of image types supported by GTK. 88685 * platform/graphics/cairo/ImageBufferCairo.cpp: 88686 * platform/graphics/gtk/CairoUtilities.cpp: Added. 88687 (getCairoSurfacePixel): Move this method from ImageGtk.cpp. 88688 (getGdkPixbufPixel): Move this method from ImageGtk.cpp. 88689 (cairoImageSurfaceToGdkPixbuf): Move this method from ImageGtk.cpp. 88690 * platform/graphics/gtk/CairoUtilities.h: Added. 88691 * platform/graphics/gtk/ImageBufferGtk.cpp: Added. 88692 (WebCore::ImageBuffer::toDataURL): Use GdkPixbuf to do the conversion to a data url. 88693 * platform/graphics/gtk/ImageGtk.cpp: 88694 (WebCore::BitmapImage::getGdkPixbuf): Use the new helper method in CairoUtilities.h. 88695 88696 2010-08-02 Xan Lopez <xlopez (a] igalia.com> 88697 88698 Reviewed by Gustavo Noronha. 88699 88700 [GTK] Add support for the Audio element in the DOM bindings 88701 https://bugs.webkit.org/show_bug.cgi?id=43313 88702 88703 The IDL definition of some HTMLMediaElement methods does not match 88704 the C++ implementation API, take this fact into account when 88705 generating the bindings. 88706 88707 * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: 88708 (WebKit::createAudioWrapper): 88709 (WebKit::createHTMLElementWrapper): 88710 * bindings/scripts/CodeGeneratorGObject.pm: 88711 88712 2010-08-02 Anders Carlsson <andersca (a] apple.com> 88713 88714 Reviewed by Sam Weinig. 88715 88716 Fix plug-in test failures and remove tests from the Skipped list 88717 https://bugs.webkit.org/show_bug.cgi?id=43389 88718 88719 * WebCore.exp.in: 88720 Export FrameLoader::cancelledError. 88721 88722 2010-08-02 Brady Eidson <beidson (a] apple.com> 88723 88724 Reviewed by Anders Carlsson. 88725 88726 Basic WK2 visited link coloring 88727 https://bugs.webkit.org/show_bug.cgi?id=43377 88728 88729 No new tests. (No change in behavior) 88730 88731 * WebCore.exp.in: 88732 88733 * page/PageGroup.cpp: 88734 (WebCore::PageGroup::addVisitedLinkHash): 88735 * page/PageGroup.h: 88736 88737 2010-08-02 Martin Robinson <mrobinson (a] igalia.com> 88738 88739 Reviewed by Xan Lopez. 88740 88741 [GTK] Style cleanup for CairoPath.h 88742 https://bugs.webkit.org/show_bug.cgi?id=43133 88743 88744 Turn CairoPath into a class, as it has a constructor and destructor. 88745 Change raw member access to use the new accessor. 88746 88747 No new tests as functionality has not changed. 88748 88749 * platform/graphics/cairo/CairoPath.h: Cleanup and indentation fix. 88750 (WebCore::CairoPath::CairoPath): 88751 (WebCore::CairoPath::~CairoPath): 88752 (WebCore::CairoPath::context): 88753 * platform/graphics/cairo/GraphicsContextCairo.cpp: 88754 (WebCore::GraphicsContext::addPath): Convert raw member access to accessor access. 88755 (WebCore::GraphicsContext::clip): Ditto. 88756 * platform/graphics/cairo/PathCairo.cpp: 88757 (WebCore::Path::Path): Ditto. 88758 (WebCore::Path::operator=): Ditto. 88759 (WebCore::Path::clear): Ditto. 88760 (WebCore::Path::isEmpty): Ditto. 88761 (WebCore::Path::currentPoint): Ditto. 88762 (WebCore::Path::translate): Ditto. 88763 (WebCore::Path::moveTo): Ditto. 88764 (WebCore::Path::addLineTo): Ditto. 88765 (WebCore::Path::addRect): Ditto. 88766 (WebCore::Path::addQuadCurveTo): Ditto. 88767 (WebCore::Path::addBezierCurveTo): Ditto. 88768 (WebCore::Path::addArc): Ditto. 88769 (WebCore::Path::addArcTo): Ditto. 88770 (WebCore::Path::addEllipse): Ditto. 88771 (WebCore::Path::closeSubpath): Ditto. 88772 (WebCore::Path::boundingRect): Ditto. 88773 (WebCore::Path::strokeBoundingRect): Ditto. 88774 (WebCore::Path::contains): Ditto. 88775 (WebCore::Path::strokeContains): Ditto. 88776 (WebCore::Path::apply): Ditto. 88777 (WebCore::Path::transform): Ditto. 88778 (WebCore::Path::debugString): Ditto. 88779 88780 2010-07-20 Ojan Vafai <ojan (a] chromium.org> 88781 88782 Reviewed by Eric Seidel. 88783 88784 focusing the body of a contentEditable iframe resets the selection 88785 https://bugs.webkit.org/show_bug.cgi?id=42645 88786 88787 The selection shouldn't be reset to the beginning of the rootEditableElement 88788 if it is already inside the rootEditableElement. 88789 88790 Test: editing/selection/focus-contenteditable-iframe.html 88791 88792 * dom/Element.cpp: 88793 (WebCore::Element::updateFocusAppearance): 88794 88795 2010-07-20 Ojan Vafai <ojan (a] chromium.org> 88796 88797 Reviewed by Eric Seidel. 88798 88799 focusing an unfocused contentEditable element should place the cursor at the beginning 88800 https://bugs.webkit.org/show_bug.cgi?id=42646 88801 88802 r14666 made this change for the body and html elements, but not for all contentEditable 88803 elements. Doing this for all contentEditable elements matches all other browsers. 88804 88805 * dom/Element.cpp: 88806 (WebCore::Element::updateFocusAppearance): 88807 88808 2010-08-02 Ryosuke Niwa <rniwa (a] webkit.org> 88809 88810 Reviewed by Kent Tamura. 88811 88812 Group functions used in createMarkup (range version) into a class so they are easier to understand 88813 https://bugs.webkit.org/show_bug.cgi?id=43227 88814 88815 Added MarkupAccumulatorWrapper to group getStartMarkup, getEndMarkup, joinMarkups, and addStyleMarkup. 88816 MarkupAccumulatorWrapper is intended to be merged with MarkupAccumulator in the future. 88817 88818 No new tests added since this is a clean up. 88819 88820 * editing/markup.cpp: 88821 (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Added. 88822 (WebCore::MarkupAccumulatorWrapper::insertString): Added. 88823 (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Added. 88824 (WebCore::MarkupAccumulatorWrapper::insertEndTag): Added. 88825 (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Added. 88826 (WebCore::MarkupAccumulatorWrapper::wrapWithStyleNode): Added. 88827 (WebCore::MarkupAccumulatorWrapper::takeResults): Added. 88828 (WebCore::createMarkup): Uses MarkupAccumulatorWrapper. 88829 88830 2010-08-02 Brian Weinstein <bweinstein (a] apple.com> 88831 88832 Add a missing </File> tag to WebCore.vcproj. 88833 88834 * WebCore.vcproj/WebCore.vcproj: 88835 88836 2010-08-02 Mario Sanchez Prada <msanchez (a] igalia.com> 88837 88838 Reviewed by Chris Fleizach. 88839 88840 [GTK] Implement support for get_character_extents and get_range_extents 88841 https://bugs.webkit.org/show_bug.cgi?id=25677 88842 88843 Implement get_range_extents() and modify get_character_extents() 88844 to properly work after "The Great Flattening" occurred in the ATK 88845 objects hierarchy, some months ago. 88846 88847 In the case of the GTK port, not just the text controls should be 88848 considered when it comes to these functions but also those 88849 composite objects that would also allow to work with text ranges, 88850 such as headings and links. To take care of this, a new function 88851 AccessibilityObject::allowsTextRanges() was defined with a default 88852 implementation in the header file and an specific one for GTK in 88853 AccessibilityObjectAtk.cpp. 88854 88855 Based on a previous patch by Joanmarie Diggs. 88856 88857 * accessibility/AccessibilityObject.cpp: 88858 (WebCore::AccessibilityObject::visiblePositionRangeForRange): 88859 * accessibility/AccessibilityObject.h: 88860 (WebCore::AccessibilityObject::allowsTextRanges): New 88861 * accessibility/AccessibilityRenderObject.cpp: 88862 (WebCore::AccessibilityRenderObject::visiblePositionForIndex): 88863 (WebCore::AccessibilityRenderObject::doAXBoundsForRange): 88864 * accessibility/gtk/AccessibilityObjectAtk.cpp: 88865 (WebCore::AccessibilityObject::allowsTextRanges): New 88866 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 88867 (textExtents): 88868 (webkit_accessible_text_get_character_extents): 88869 (webkit_accessible_text_get_range_extents): 88870 (atk_text_interface_init): 88871 88872 2010-08-02 Chris Fleizach <cfleizach (a] apple.com> 88873 88874 AX: Support methods for web apps to interact with the native accessibility APIs 88875 https://bugs.webkit.org/show_bug.cgi?id=43005 88876 88877 Fix for windows build. No review. 88878 88879 * WebCore.vcproj/WebCore.vcproj: 88880 88881 2010-08-02 Chris Fleizach <cfleizach (a] apple.com> 88882 88883 Reviewed by David Kilzer. 88884 88885 AX: Support methods for web apps to interact with the native accessibility APIs 88886 https://bugs.webkit.org/show_bug.cgi?id=43005 88887 88888 Adds a new "accessibility" object that hangs off of "window.navigator". 88889 This accessibility object will allow web apps to interact with native accessibility APIs 88890 to provide a richer experience (for screen reader users primarily). 88891 88892 Test: platform/mac/accessibility/js-accessibility.html 88893 88894 * Android.derived.v8bindings.mk: 88895 * Android.jscbindings.mk: 88896 * DerivedSources.cpp: 88897 * DerivedSources.make: 88898 * GNUmakefile.am: 88899 * WebCore.gypi: 88900 * WebCore.pri: 88901 * WebCore.pro: 88902 * WebCore.vcproj/WebCore.vcproj: 88903 * WebCore.xcodeproj/project.pbxproj: 88904 * accessibility/AXObjectCache.h: 88905 (WebCore::AXObjectCache::): 88906 * accessibility/Accessibility.cpp: Added. 88907 (WebCore::Accessibility::Accessibility): 88908 (WebCore::Accessibility::~Accessibility): 88909 (WebCore::Accessibility::disconnectFrame): 88910 (WebCore::Accessibility::screenChanged): 88911 (WebCore::Accessibility::elementsChanged): 88912 (WebCore::Accessibility::screenReader): 88913 * accessibility/Accessibility.h: Added. 88914 (WebCore::Accessibility::create): 88915 * accessibility/Accessibility.idl: Added. 88916 * accessibility/AccessibilityObject.h: 88917 (WebCore::AccessibilityObject::isScreenReaderRunning): 88918 (WebCore::AccessibilityObject::screenReaderFocusedElement): 88919 (WebCore::AccessibilityObject::screenReaderVersion): 88920 * accessibility/ScreenReader.cpp: Added. 88921 (WebCore::ScreenReader::ScreenReader): 88922 (WebCore::ScreenReader::~ScreenReader): 88923 (WebCore::ScreenReader::disconnectFrame): 88924 (WebCore::ScreenReader::active): 88925 (WebCore::ScreenReader::activeElement): 88926 (WebCore::ScreenReader::version): 88927 * accessibility/ScreenReader.h: Added. 88928 (WebCore::ScreenReader::create): 88929 * accessibility/ScreenReader.idl: Added. 88930 * accessibility/mac/AXObjectCacheMac.mm: 88931 (WebCore::AXObjectCache::postPlatformNotification): 88932 * accessibility/mac/AccessibilityObjectMac.mm: 88933 (WebCore::AccessibilityObject::isScreenReaderRunning): 88934 (WebCore::AccessibilityObject::screenReaderFocusedElement): 88935 (WebCore::AccessibilityObject::screenReaderVersion): 88936 * page/Navigator.cpp: 88937 (WebCore::Navigator::disconnectFrame): 88938 (WebCore::Navigator::accessibility): 88939 * page/Navigator.h: 88940 * page/Navigator.idl: 88941 88942 2010-08-02 Martin Robinson <mrobinson (a] igalia.com> 88943 88944 Reviewed by Xan Lopez. 88945 88946 [Gtk] DOM listeners get wrong keycodes for some keys 88947 https://bugs.webkit.org/show_bug.cgi?id=35170 88948 88949 Emit the proper DOM keyCode for the print screen, keypad insert, 88950 and keypad delete keys. 88951 88952 * platform/gtk/KeyEventGtk.cpp: 88953 (WebCore::windowsKeyCodeForKeyEvent): Fix mapping between GDK key codes 88954 and Windows key codes. 88955 88956 2010-08-02 Dirk Schulze <krit (a] webkit.org> 88957 88958 Unreviewed sort of Xcode project file. 88959 88960 * WebCore.xcodeproj/project.pbxproj: 88961 88962 2010-08-02 Kristian Monsen <kristianm (a] google.com> 88963 88964 Reviewed by Steve Block. 88965 88966 Compile fix for Android, adding guards around filter specific code. 88967 https://bugs.webkit.org/show_bug.cgi?id=43338 88968 This CL introduced the code: 88969 http://trac.webkit.org/changeset/64196 88970 88971 Compile fix only, no new tests. 88972 88973 * rendering/SVGResourcesCycleSolver.cpp: 88974 (WebCore::SVGResourcesCycleSolver::breakCycle): 88975 88976 2010-08-02 Kristian Monsen <kristianm (a] google.com> 88977 88978 Reviewed by Steve Block. 88979 88980 Compile fix for Android, guard inspector code with ENABLE(INSPECTOR). 88981 https://bugs.webkit.org/show_bug.cgi?id=43345 88982 Code introduced in this CL: 88983 http://trac.webkit.org/changeset/63891 88984 88985 No new tests, just a compile fix. 88986 88987 * bindings/v8/ScriptValue.cpp: 88988 88989 2010-08-02 Jeremy Orlow <jorlow (a] chromium.org> 88990 88991 Speculative revert of 64425 due to Chromium instability 88992 https://bugs.webkit.org/show_bug.cgi?id=43347 88993 88994 * GNUmakefile.am: 88995 * WebCore.exp.in: 88996 * WebCore.gypi: 88997 * WebCore.pro: 88998 * WebCore.vcproj/WebCore.vcproj: 88999 * WebCore.xcodeproj/project.pbxproj: 89000 * loader/EmptyClients.h: 89001 * page/Chrome.cpp: 89002 * page/Chrome.h: 89003 * page/ChromeClient.h: 89004 * platform/PopupMenu.h: 89005 (WebCore::PopupMenu::create): 89006 (WebCore::PopupMenu::disconnectClient): 89007 (WebCore::PopupMenu::client): 89008 (WebCore::PopupMenu::scrollbar): 89009 (WebCore::PopupMenu::itemHeight): 89010 (WebCore::PopupMenu::windowRect): 89011 (WebCore::PopupMenu::popupHandle): 89012 (WebCore::PopupMenu::setWasClicked): 89013 (WebCore::PopupMenu::wasClicked): 89014 (WebCore::PopupMenu::setScrollOffset): 89015 (WebCore::PopupMenu::scrollOffset): 89016 (WebCore::PopupMenu::wheelDelta): 89017 (WebCore::PopupMenu::scrollbarCapturingMouse): 89018 (WebCore::PopupMenu::setScrollbarCapturingMouse): 89019 (WebCore::PopupMenu::isActive): 89020 (WebCore::PopupMenu::scrollbarCornerPresent): 89021 * platform/SearchPopupMenu.h: 89022 (WebCore::SearchPopupMenu::create): 89023 * platform/brew/PopupMenuBrew.cpp: 89024 (WebCore::PopupMenu::PopupMenu): 89025 (WebCore::PopupMenu::~PopupMenu): 89026 (WebCore::PopupMenu::show): 89027 (WebCore::PopupMenu::hide): 89028 (WebCore::PopupMenu::updateFromElement): 89029 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89030 * platform/brew/PopupMenuBrew.h: Removed. 89031 * platform/brew/SearchPopupMenuBrew.cpp: 89032 (WebCore::SearchPopupMenu::saveRecentSearches): 89033 (WebCore::SearchPopupMenu::loadRecentSearches): 89034 (WebCore::SearchPopupMenu::SearchPopupMenu): 89035 (WebCore::SearchPopupMenu::enabled): 89036 * platform/brew/SearchPopupMenuBrew.h: Removed. 89037 * platform/chromium/PopupMenuChromium.cpp: 89038 (WebCore::PopupMenu::PopupMenu): 89039 (WebCore::PopupMenu::~PopupMenu): 89040 (WebCore::PopupMenu::show): 89041 (WebCore::PopupMenu::hide): 89042 (WebCore::PopupMenu::updateFromElement): 89043 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89044 * platform/chromium/PopupMenuChromium.h: 89045 * platform/chromium/SearchPopupMenuChromium.cpp: 89046 (WebCore::SearchPopupMenu::SearchPopupMenu): 89047 (WebCore::SearchPopupMenu::enabled): 89048 (WebCore::SearchPopupMenu::saveRecentSearches): 89049 (WebCore::SearchPopupMenu::loadRecentSearches): 89050 * platform/chromium/SearchPopupMenuChromium.h: Removed. 89051 * platform/efl/PopupMenuEfl.cpp: 89052 (WebCore::PopupMenu::PopupMenu): 89053 (WebCore::PopupMenu::~PopupMenu): 89054 (WebCore::PopupMenu::show): 89055 (WebCore::PopupMenu::hide): 89056 (WebCore::PopupMenu::updateFromElement): 89057 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89058 * platform/efl/PopupMenuEfl.h: Removed. 89059 * platform/efl/SearchPopupMenuEfl.cpp: 89060 (WebCore::SearchPopupMenu::SearchPopupMenu): 89061 (WebCore::SearchPopupMenu::saveRecentSearches): 89062 (WebCore::SearchPopupMenu::loadRecentSearches): 89063 (WebCore::SearchPopupMenu::enabled): 89064 * platform/efl/SearchPopupMenuEfl.h: Removed. 89065 * platform/gtk/PopupMenuGtk.cpp: 89066 (WebCore::PopupMenu::PopupMenu): 89067 (WebCore::PopupMenu::~PopupMenu): 89068 (WebCore::PopupMenu::show): 89069 (WebCore::PopupMenu::hide): 89070 (WebCore::PopupMenu::updateFromElement): 89071 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89072 (WebCore::PopupMenu::menuItemActivated): 89073 (WebCore::PopupMenu::menuUnmapped): 89074 (WebCore::PopupMenu::menuPositionFunction): 89075 (WebCore::PopupMenu::menuRemoveItem): 89076 * platform/gtk/PopupMenuGtk.h: Removed. 89077 * platform/gtk/SearchPopupMenuGtk.cpp: 89078 (WebCore::SearchPopupMenu::SearchPopupMenu): 89079 (WebCore::SearchPopupMenu::saveRecentSearches): 89080 (WebCore::SearchPopupMenu::loadRecentSearches): 89081 (WebCore::SearchPopupMenu::enabled): 89082 * platform/gtk/SearchPopupMenuGtk.h: Removed. 89083 * platform/haiku/PopupMenuHaiku.cpp: 89084 (WebCore::PopupMenuHaiku::PopupMenuHaiku): 89085 (WebCore::PopupMenuHaiku::~PopupMenuHaiku): 89086 (WebCore::PopupMenu::PopupMenu): 89087 (WebCore::PopupMenu::~PopupMenu): 89088 (WebCore::PopupMenu::show): 89089 (WebCore::PopupMenu::hide): 89090 (WebCore::PopupMenu::updateFromElement): 89091 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89092 * platform/haiku/PopupMenuHaiku.h: Removed. 89093 * platform/haiku/SearchPopupMenuHaiku.cpp: 89094 (WebCore::SearchPopupMenu::SearchPopupMenu): 89095 (WebCore::SearchPopupMenu::saveRecentSearches): 89096 (WebCore::SearchPopupMenu::loadRecentSearches): 89097 (WebCore::SearchPopupMenu::enabled): 89098 * platform/haiku/SearchPopupMenuHaiku.h: Removed. 89099 * platform/mac/PopupMenuMac.h: Removed. 89100 * platform/mac/PopupMenuMac.mm: 89101 (WebCore::PopupMenu::PopupMenu): 89102 (WebCore::PopupMenu::~PopupMenu): 89103 (WebCore::PopupMenu::clear): 89104 (WebCore::PopupMenu::populate): 89105 (WebCore::PopupMenu::show): 89106 (WebCore::PopupMenu::hide): 89107 (WebCore::PopupMenu::updateFromElement): 89108 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89109 * platform/mac/SearchPopupMenuMac.h: Removed. 89110 * platform/mac/SearchPopupMenuMac.mm: 89111 (WebCore::SearchPopupMenu::SearchPopupMenu): 89112 (WebCore::SearchPopupMenu::enabled): 89113 (WebCore::SearchPopupMenu::saveRecentSearches): 89114 (WebCore::SearchPopupMenu::loadRecentSearches): 89115 * platform/qt/PopupMenuQt.cpp: 89116 (WebCore::PopupMenu::PopupMenu): 89117 (WebCore::PopupMenu::~PopupMenu): 89118 (WebCore::PopupMenu::show): 89119 (WebCore::PopupMenu::hide): 89120 (WebCore::PopupMenu::updateFromElement): 89121 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89122 * platform/qt/PopupMenuQt.h: Removed. 89123 * platform/qt/QtAbstractWebPopup.h: 89124 * platform/qt/SearchPopupMenuQt.cpp: 89125 (WebCore::SearchPopupMenu::SearchPopupMenu): 89126 (WebCore::SearchPopupMenu::saveRecentSearches): 89127 (WebCore::SearchPopupMenu::loadRecentSearches): 89128 (WebCore::SearchPopupMenu::enabled): 89129 * platform/qt/SearchPopupMenuQt.h: Removed. 89130 * platform/win/PopupMenuWin.cpp: 89131 (WebCore::PopupMenu::PopupMenu): 89132 (WebCore::PopupMenu::~PopupMenu): 89133 (WebCore::PopupMenu::popupClassName): 89134 (WebCore::PopupMenu::show): 89135 (WebCore::PopupMenu::hide): 89136 (WebCore::PopupMenu::calculatePositionAndSize): 89137 (WebCore::PopupMenu::setFocusedIndex): 89138 (WebCore::PopupMenu::visibleItems): 89139 (WebCore::PopupMenu::listIndexAtPoint): 89140 (WebCore::PopupMenu::focusedIndex): 89141 (WebCore::PopupMenu::focusFirst): 89142 (WebCore::PopupMenu::focusLast): 89143 (WebCore::PopupMenu::down): 89144 (WebCore::PopupMenu::up): 89145 (WebCore::PopupMenu::invalidateItem): 89146 (WebCore::PopupMenu::clientRect): 89147 (WebCore::PopupMenu::incrementWheelDelta): 89148 (WebCore::PopupMenu::reduceWheelDelta): 89149 (WebCore::PopupMenu::scrollToRevealSelection): 89150 (WebCore::PopupMenu::updateFromElement): 89151 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89152 (WebCore::PopupMenu::paint): 89153 (WebCore::PopupMenu::valueChanged): 89154 (WebCore::PopupMenu::invalidateScrollbarRect): 89155 (WebCore::PopupMenu::registerClass): 89156 (WebCore::PopupMenu::PopupMenuWndProc): 89157 (WebCore::PopupMenu::wndProc): 89158 * platform/win/PopupMenuWin.h: Removed. 89159 * platform/win/SearchPopupMenuWin.cpp: 89160 (WebCore::SearchPopupMenu::SearchPopupMenu): 89161 (WebCore::SearchPopupMenu::enabled): 89162 (WebCore::SearchPopupMenu::saveRecentSearches): 89163 (WebCore::SearchPopupMenu::loadRecentSearches): 89164 * platform/win/SearchPopupMenuWin.h: Removed. 89165 * platform/wx/PopupMenuWx.cpp: 89166 (WebCore::PopupMenu::PopupMenu): 89167 (WebCore::PopupMenu::~PopupMenu): 89168 (WebCore::PopupMenu::show): 89169 (WebCore::PopupMenu::OnMenuItemSelected): 89170 (WebCore::PopupMenu::hide): 89171 (WebCore::PopupMenu::updateFromElement): 89172 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89173 * platform/wx/PopupMenuWx.h: Removed. 89174 * platform/wx/SearchPopupMenuWx.cpp: 89175 (WebCore::SearchPopupMenu::SearchPopupMenu): 89176 (WebCore::SearchPopupMenu::saveRecentSearches): 89177 (WebCore::SearchPopupMenu::loadRecentSearches): 89178 (WebCore::SearchPopupMenu::enabled): 89179 * platform/wx/SearchPopupMenuWx.h: Removed. 89180 * rendering/RenderMenuList.cpp: 89181 (WebCore::RenderMenuList::adjustInnerStyle): 89182 (WebCore::RenderMenuList::showPopup): 89183 * rendering/RenderMenuList.h: 89184 * rendering/RenderTextControlSingleLine.cpp: 89185 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 89186 (WebCore::RenderTextControlSingleLine::addSearchResult): 89187 (WebCore::RenderTextControlSingleLine::showPopup): 89188 (WebCore::RenderTextControlSingleLine::hidePopup): 89189 (WebCore::RenderTextControlSingleLine::updateFromElement): 89190 (WebCore::RenderTextControlSingleLine::valueChanged): 89191 * rendering/RenderTextControlSingleLine.h: 89192 89193 2010-08-02 Markus Goetz <Markus.Goetz (a] nokia.com> 89194 89195 Reviewed by Kenneth Rohde Christiansen. 89196 89197 [Qt] Do not link to SharedBufferCF.cpp 89198 The Qt port does not need this file. 89199 We plan to implement the platformData() 89200 for SharedBuffer at some point soon. 89201 https://bugs.webkit.org/show_bug.cgi?id=43242 89202 89203 * WebCore.pro: 89204 * platform/SharedBuffer.cpp: 89205 89206 2010-08-02 Balazs Kelemen <kb (a] inf.u-szeged.hu> 89207 89208 Reviewed by Simon Hausmann. 89209 89210 [Qt] Generate forwarding headers for WebKit2 89211 89212 https://bugs.webkit.org/show_bug.cgi?id=43336 89213 89214 * WebCore.pri: Removed header copying logic. 89215 * WebCore.pro: Add include paths for WebKit2. 89216 89217 2010-08-02 Andrey Kosyakov <caseq (a] chromium.org> 89218 89219 Reviewed by Pavel Feldman. 89220 89221 Web Inspector: adding experimental support for WebInspector extensions API. 89222 https://bugs.webkit.org/show_bug.cgi?id=40425 89223 89224 Tests: inspector/extensions-api.html 89225 inspector/extensions.html 89226 89227 * WebCore.gypi: 89228 * WebCore.vcproj/WebCore.vcproj: 89229 * inspector/InspectorController.cpp: 89230 (WebCore::InspectorController::inspectedWindowScriptObjectCleared): 89231 (WebCore::InspectorController::didCommitLoad): 89232 * inspector/InspectorFrontendHost.cpp: 89233 (WebCore::InspectorFrontendHost::setExtensionAPI): 89234 * inspector/InspectorFrontendHost.h: 89235 * inspector/InspectorFrontendHost.idl: 89236 * inspector/front-end/ElementsPanel.js: 89237 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): 89238 (WebInspector.ElementsPanel): 89239 * inspector/front-end/ExtensionAPI.js: Added. An API implementation that gets injected into the extension context. 89240 (injectedExtensionAPI): 89241 (injectedExtensionAPI.EventSinkImpl.prototype.addListener): 89242 (injectedExtensionAPI.EventSinkImpl.prototype.removeListener): 89243 (injectedExtensionAPI.EventSinkImpl.prototype._fire): 89244 (injectedExtensionAPI.EventSink): 89245 (injectedExtensionAPI.InspectorExtensionAPI): 89246 (injectedExtensionAPI.InspectorExtensionAPI.prototype.log): 89247 (injectedExtensionAPI.Resources.prototype.getAll): 89248 (injectedExtensionAPI.Resources.prototype.get return): 89249 (injectedExtensionAPI.Resources.prototype): 89250 (injectedExtensionAPI.Panels): 89251 (injectedExtensionAPI.Panels.prototype.create.callbackWrapper): 89252 (injectedExtensionAPI.Panels.prototype.create): 89253 (injectedExtensionAPI.PanelImpl): 89254 (injectedExtensionAPI.PanelImpl.prototype.createSidebarPane.callbackWrapper): 89255 (injectedExtensionAPI.PanelImpl.prototype.createSidebarPane): 89256 (injectedExtensionAPI.ExtensionPanel): 89257 (injectedExtensionAPI.ExtensionSidebarPaneImpl): 89258 (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight): 89259 (injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpanded): 89260 (injectedExtensionAPI.InspectedWindow): 89261 (injectedExtensionAPI.InspectedWindow.prototype.reload): 89262 (injectedExtensionAPI.InspectedWindow.prototype.evaluate): 89263 (injectedExtensionAPI.ExtensionServerClient.prototype.sendRequest): 89264 (injectedExtensionAPI.ExtensionServerClient.prototype.registerHandler): 89265 (injectedExtensionAPI.ExtensionServerClient.prototype.nextObjectId): 89266 (injectedExtensionAPI.ExtensionServerClient.prototype._registerCallback): 89267 (injectedExtensionAPI.ExtensionServerClient.prototype._onCallback): 89268 (injectedExtensionAPI.ExtensionServerClient.prototype._onMessage): 89269 (injectedExtensionAPI.expandURL): 89270 (injectedExtensionAPI.): 89271 * inspector/front-end/ExtensionPanel.js: Added. A class that provides WebInspector's Panel interface to the inspector, hosts extension panel within an IFrame and proxies Panel callbacks to the extension. 89272 (WebInspector.ExtensionPanel): 89273 (WebInspector.ExtensionPanel.prototype.get defaultFocusedElement): 89274 (WebInspector.ExtensionPanel.prototype.updateMainViewWidth): 89275 (WebInspector.ExtensionPanel.prototype.searchCanceled): 89276 (WebInspector.ExtensionPanel.prototype.performSearch): 89277 (WebInspector.ExtensionPanel.prototype.jumpToNextSearchResult): 89278 (WebInspector.ExtensionPanel.prototype.jumpToPreviousSearchResult): 89279 (WebInspector.ExtensionPanel.prototype._addStyleRule): 89280 * inspector/front-end/ExtensionRegistryStub.js: Added. A stub for ExtensionRegistry class that is meant to provide a list of extensions. Actual implementations may be browser-specfic. 89281 (.WebInspector.InspectorExtensionRegistryStub): 89282 (.WebInspector.InspectorExtensionRegistryStub.prototype.getExtensionsAsync): 89283 * inspector/front-end/ExtensionServer.js: Added. Communicates with ExtensionAPI via DOM messaging and proxies requests to WebInspector classes. 89284 (WebInspector.ExtensionServer): 89285 (WebInspector.ExtensionServer.prototype.notifyPanelShown): 89286 (WebInspector.ExtensionServer.prototype.notifyObjectSelected): 89287 (WebInspector.ExtensionServer.prototype.notifyResourceFinished): 89288 (WebInspector.ExtensionServer.prototype.notifySearchAction): 89289 (WebInspector.ExtensionServer.prototype.notifyInspectedPageLoaded): 89290 (WebInspector.ExtensionServer.prototype.notifyInspectedURLChanged): 89291 (WebInspector.ExtensionServer.prototype.notifyInspectorReset): 89292 (WebInspector.ExtensionServer.prototype._convertResource): 89293 (WebInspector.ExtensionServer.prototype._postNotification): 89294 (WebInspector.ExtensionServer.prototype._onSubscribe): 89295 (WebInspector.ExtensionServer.prototype._onUnsubscribe): 89296 (WebInspector.ExtensionServer.prototype._onCreatePanel): 89297 (WebInspector.ExtensionServer.prototype._onCreateSidebar): 89298 (WebInspector.ExtensionServer.prototype._createClientIframe): 89299 (WebInspector.ExtensionServer.prototype._onSetSidebarHeight): 89300 (WebInspector.ExtensionServer.prototype._onSetSidebarExpansion): 89301 (WebInspector.ExtensionServer.prototype._onLog): 89302 (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage): 89303 (WebInspector.ExtensionServer.prototype._onRevealAndSelect): 89304 (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource): 89305 (WebInspector.ExtensionServer.prototype._dispatchCallback): 89306 (WebInspector.ExtensionServer.prototype._onGetResources): 89307 (WebInspector.ExtensionServer.prototype.initExtensions): 89308 (WebInspector.ExtensionServer.prototype._addExtensions): 89309 (WebInspector.ExtensionServer.prototype._onWindowMessage): 89310 (WebInspector.ExtensionServer.prototype._onmessage): 89311 (WebInspector.ExtensionServer.prototype._registerHandler): 89312 (WebInspector.ExtensionStatus): 89313 (WebInspector.addExtensions): 89314 * inspector/front-end/InjectedScript.js: 89315 (injectedScriptConstructor): 89316 * inspector/front-end/InjectedScriptAccess.js: 89317 * inspector/front-end/InspectorFrontendHostStub.js: 89318 (.WebInspector.InspectorFrontendHostStub.prototype.setExtensionAPI): 89319 (.WebInspector.InspectorFrontendHostStub.prototype.canAttachWindow): 89320 * inspector/front-end/WebKit.qrc: 89321 * inspector/front-end/inspector.html: 89322 * inspector/front-end/inspector.js: 89323 (WebInspector.loaded): 89324 (WebInspector.updateResource): 89325 (WebInspector.reset): 89326 (WebInspector.inspectedURLChanged): 89327 (WebInspector.didCommitLoad): 89328 89329 2010-08-02 Ilya Tikhonovsky <loislo (a] chromium.org> 89330 89331 Reviewed by Yury Semikhatsky. 89332 89333 WebInspector: Inspector is not working when it is loaded as html page. 89334 https://bugs.webkit.org/show_bug.cgi?id=43334 89335 89336 * inspector/front-end/InspectorFrontendHostStub.js: 89337 (.WebInspector.InspectorFrontendHostStub.prototype.canAttachWindow): 89338 (.WebInspector.InspectorFrontendHostStub.prototype.sendMessageToBackend): 89339 89340 2010-08-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 89341 89342 Reviewed by Dirk Schulze. 89343 89344 SVG gradients do not update when scripted via xlink 89345 https://bugs.webkit.org/show_bug.cgi?id=42953 89346 89347 Unify cycle detection logic for chainable (through xlink:href) and ordinary resources. 89348 All operate on the render tree now, instead of falling back to the DOM tree for xlink:href queries. 89349 89350 When linking resources, register as regular client, so the regular update mechanisms work as expected. 89351 <linearGradient id="foo"><stop../> </linearGradient> 89352 <linearGradient id="bar" xlink:href="#foo"/> 89353 <rect fill="url(#bar)"/> 89354 89355 Without that the rect won't receive invalidation notifications, as foo <-> bar had no connection. 89356 Fixes the last outstanding class of invalidations. Also speeds up the cycle detetion, when using chained resources, 89357 as no SVG DOM queries have to be executed anymore. 89358 89359 Test: svg/custom/js-update-stop-linked-gradient.svg 89360 89361 * rendering/RenderSVGResourceContainer.cpp: 89362 (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): 89363 (WebCore::linkedResourceForContainer): 89364 * rendering/SVGResources.cpp: 89365 (WebCore::SVGResources::SVGResources): 89366 (WebCore::chainableResourceTags): 89367 (WebCore::targetReferenceFromResource): 89368 (WebCore::registerPendingResource): 89369 (WebCore::SVGResources::buildCachedResources): 89370 (WebCore::SVGResources::invalidateClient): 89371 (WebCore::SVGResources::resourceDestroyed): 89372 (WebCore::SVGResources::buildSetOfResources): 89373 (WebCore::SVGResources::setLinkedResource): 89374 (WebCore::SVGResources::resetLinkedResource): 89375 (WebCore::SVGResources::dump): 89376 * rendering/SVGResources.h: 89377 (WebCore::SVGResources::linkedResource): 89378 * rendering/SVGResourcesCycleSolver.cpp: 89379 (WebCore::SVGResourcesCycleSolver::resolveCycles): 89380 (WebCore::SVGResourcesCycleSolver::breakCycle): 89381 * rendering/SVGResourcesCycleSolver.h: 89382 * svg/SVGFilterElement.cpp: 89383 (WebCore::SVGFilterElement::SVGFilterElement): 89384 * svg/SVGFilterElement.h: 89385 * svg/SVGGradientElement.cpp: 89386 (WebCore::SVGGradientElement::SVGGradientElement): 89387 * svg/SVGGradientElement.h: 89388 * svg/SVGLinearGradientElement.cpp: 89389 (WebCore::SVGLinearGradientElement::collectGradientProperties): 89390 * svg/SVGPatternElement.cpp: 89391 (WebCore::SVGPatternElement::SVGPatternElement): 89392 (WebCore::SVGPatternElement::collectPatternProperties): 89393 * svg/SVGPatternElement.h: 89394 * svg/SVGRadialGradientElement.cpp: 89395 (WebCore::SVGRadialGradientElement::collectGradientProperties): 89396 89397 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89398 89399 Try to fix the Windows build when zlib is not available. 89400 89401 * platform/graphics/WOFFFileFormat.cpp: 89402 89403 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89404 89405 Try to fix the Windows build when zlib is not available. 89406 89407 * platform/graphics/WOFFFileFormat.cpp: 89408 89409 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89410 89411 Try to fix the Windows build when zlib is not available. 89412 89413 * platform/graphics/WOFFFileFormat.cpp: 89414 89415 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89416 89417 Fix typo in attempted build fix. 89418 89419 * platform/graphics/WOFFFileFormat.cpp: 89420 89421 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89422 89423 Try to fix the Windows build when zlib is not available. 89424 89425 * platform/graphics/WOFFFileFormat.cpp: 89426 89427 2010-07-31 Dan Bernstein <mitz (a] apple.com> 89428 89429 Reviewed by Darin Adler. 89430 89431 <rdar://problem/8234766> Add WOFF support for @font-face 89432 https://bugs.webkit.org/show_bug.cgi?id=31302 89433 89434 * WebCore.vcproj/WebCore.vcproj: Added WOFFFileFormat.{cpp,h}. 89435 * WebCore.vcproj/WebCoreCommon.vsprops: Added $(WebKitLibraries)\include\zlib to the header search path. 89436 * WebCore.xcodeproj/project.pbxproj: Added WOFFFileFormat.{cpp,h} and linking against libz. 89437 * css/CSSFontFaceSrcValue.cpp: 89438 (WebCore::CSSFontFaceSrcValue::isSupportedFormat): Replaced hard-coded list of supported formats with 89439 call to FontCustomPlatformData::supportsFormat(). 89440 * platform/graphics/WOFFFileFormat.cpp: Added. 89441 (WebCore::isWOFF): Checks if the buffer has the WOFF signature. 89442 (WebCore::convertWOFFToSfnt): Extracts the sfnt payload of a WOFF package. 89443 * platform/graphics/WOFFFileFormat.h: Added. 89444 * platform/graphics/cairo/FontCustomPlatformData.cpp: 89445 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype. 89446 * platform/graphics/cairo/FontCustomPlatformData.h: 89447 * platform/graphics/chromium/FontCustomPlatformData.cpp: 89448 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype, 89449 and also for woff if the OpenType sanitizer is enabled. 89450 * platform/graphics/chromium/FontCustomPlatformData.h: 89451 * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: 89452 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns false. 89453 * platform/graphics/haiku/FontCustomPlatformData.cpp: 89454 (WebCore::FontCustomPlatformData::supportsFormat): Ditto. 89455 * platform/graphics/haiku/FontCustomPlatformData.h: 89456 * platform/graphics/mac/FontCustomPlatformData.cpp: 89457 (WebCore::freeSfntData): 89458 (WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt(). 89459 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff. 89460 * platform/graphics/mac/FontCustomPlatformData.h: 89461 * platform/graphics/qt/FontCustomPlatformData.h: 89462 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: 89463 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype. 89464 * platform/graphics/win/FontCustomPlatformData.cpp: 89465 (WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt(). 89466 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff. 89467 * platform/graphics/win/FontCustomPlatformData.h: 89468 * platform/graphics/win/FontCustomPlatformDataCairo.cpp: 89469 (WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype. 89470 * platform/graphics/win/FontCustomPlatformDataCairo.h: 89471 * platform/graphics/wince/FontCustomPlatformData.cpp: 89472 (WebCore::FontCustomPlatformData::supportsFormat): Ditto. 89473 * platform/graphics/wince/FontCustomPlatformData.h: 89474 89475 2010-07-31 Ryosuke Niwa <rniwa (a] webkit.org> 89476 89477 Reviewed by Ojan Vafai. 89478 89479 SplitElementCommand shouldn't be duplicating id attribute 89480 https://bugs.webkit.org/show_bug.cgi?id=27156 89481 89482 Modified SplitElementCommand to delete the id attribute from the second element when splitting an element. 89483 Since this causes WebKit not to merge split elements, added shouldSplitElement to ApplyStyleCommand which 89484 determines the necessity of splitting the element. 89485 89486 To share code between shouldSplitElement and removeInlineStyleFromElement (extracted from applyInlineStyle) 89487 dontRemove was added as the 3rd argument to removeHTMLFontStyle, removeHTMLBidiEmbeddingStyle, and removeCSSStyle. 89488 89489 Test: editing/style/split-element-id-duplication.html 89490 89491 * editing/ApplyStyleCommand.cpp: 89492 (WebCore::ApplyStyleCommand::applyBlockStyle): Added 3rd argument for removeCSSStyle. 89493 (WebCore::ApplyStyleCommand::applyInlineStyle): Calls shouldSplitElement. 89494 (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Extracted from removeInlineStyle. 89495 (WebCore::ApplyStyleCommand::shouldRemoveInlineStyleFromElement): Inline helper for removeInlineStyleFromElement. 89496 (WebCore::ApplyStyleCommand::removeHTMLFontStyle): Added dontRemove. 89497 (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): Added dontRemove. 89498 (WebCore::ApplyStyleCommand::removeCSSStyle): Added dontRemove. 89499 (WebCore::ApplyStyleCommand::removeInlineStyle): Calls removeInlineStyleFromElement. 89500 (WebCore::ApplyStyleCommand::splitTextElementAtStart): Removed the call to splitTextAtStart. 89501 Branching is now done in applyInlineStyle. 89502 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto for splitTextAtEnd. 89503 (WebCore::ApplyStyleCommand::shouldSplitElement): Added. 89504 * editing/ApplyStyleCommand.h: 89505 * editing/SplitElementCommand.cpp: 89506 (WebCore::SplitElementCommand::executeApply): Deletes the id attribute from the second element. 89507 (WebCore::SplitElementCommand::doUnapply): Recovers the id attribute of the second element. 89508 89509 2010-07-31 Luiz Agostini <luiz.agostini (a] openbossa.org> 89510 89511 Build fix: Windows. 89512 89513 * platform/win/PopupMenuWin.h: 89514 89515 2010-07-31 Luiz Agostini <luiz.agostini (a] openbossa.org> 89516 89517 Windows build fix. 89518 89519 * platform/win/PopupMenuWin.cpp: 89520 (WebCore::PopupMenuWin::PopupMenuWndProc): 89521 89522 2010-07-27 Luiz Agostini <luiz.agostini (a] openbossa.org> 89523 89524 Reviewed by Darin Fisher. 89525 89526 PopupMenu refactoring in preparation to WebKit2 89527 https://bugs.webkit.org/show_bug.cgi?id=42592 89528 89529 Classes PopupMenu and SearchPopupMenu have been made pure virtual. 89530 89531 * platform/PopupMenu.h: 89532 (WebCore::PopupMenu::~PopupMenu): 89533 * platform/SearchPopupMenu.h: 89534 (WebCore::SearchPopupMenu::~SearchPopupMenu): 89535 89536 Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use 89537 the new pure virtual PopupMenu and SearchPopupMenu. 89538 89539 * rendering/RenderMenuList.cpp: 89540 (WebCore::RenderMenuList::adjustInnerStyle): 89541 (WebCore::RenderMenuList::showPopup): 89542 * rendering/RenderMenuList.h: 89543 * rendering/RenderTextControlSingleLine.cpp: 89544 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 89545 (WebCore::RenderTextControlSingleLine::addSearchResult): 89546 (WebCore::RenderTextControlSingleLine::showPopup): 89547 (WebCore::RenderTextControlSingleLine::hidePopup): 89548 (WebCore::RenderTextControlSingleLine::updateFromElement): 89549 (WebCore::RenderTextControlSingleLine::valueChanged): 89550 * rendering/RenderTextControlSingleLine.h: 89551 89552 Chrome and ChromeClient were made responsible for providing instances of classes 89553 PopupMenu and SearchPopupMenu to its users. 89554 89555 * loader/EmptyClients.h: 89556 (WebCore::EmptyPopupMenu::show): 89557 (WebCore::EmptyPopupMenu::hide): 89558 (WebCore::EmptyPopupMenu::updateFromElement): 89559 (WebCore::EmptyPopupMenu::disconnectClient): 89560 (WebCore::EmptySearchPopupMenu::popupMenu): 89561 (WebCore::EmptySearchPopupMenu::saveRecentSearches): 89562 (WebCore::EmptySearchPopupMenu::loadRecentSearches): 89563 (WebCore::EmptySearchPopupMenu::enabled): 89564 (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural): 89565 (WebCore::EmptyChromeClient::createPopupMenu): 89566 (WebCore::EmptyChromeClient::createSearchPopupMenu): 89567 * page/Chrome.cpp: 89568 (WebCore::Chrome::selectItemWritingDirectionIsNatural): 89569 (WebCore::Chrome::createPopupMenu): 89570 (WebCore::Chrome::createSearchPopupMenu): 89571 * page/Chrome.h: 89572 * page/ChromeClient.h: 89573 89574 Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited 89575 in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h). 89576 Each of new the files contain the concrete classes that inherit form PopupMenu or 89577 SearchPopupMenu and are specific for the corresponding platform. 89578 89579 brew: 89580 89581 * platform/brew/PopupMenuBrew.cpp: 89582 (WebCore::PopupMenuBrew::PopupMenuBrew): 89583 (WebCore::PopupMenuBrew::~PopupMenuBrew): 89584 (WebCore::PopupMenuBrew::disconnectClient): 89585 (WebCore::PopupMenuBrew::show): 89586 (WebCore::PopupMenuBrew::hide): 89587 (WebCore::PopupMenuBrew::updateFromElement): 89588 * platform/brew/PopupMenuBrew.h: Added. 89589 (WebCore::PopupMenuBrew::client): 89590 * platform/brew/SearchPopupMenuBrew.cpp: 89591 (WebCore::SearchPopupMenuBrew::saveRecentSearches): 89592 (WebCore::SearchPopupMenuBrew::loadRecentSearches): 89593 (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew): 89594 (WebCore::SearchPopupMenuBrew::enabled): 89595 (WebCore::SearchPopupMenuBrew::popupMenu): 89596 * platform/brew/SearchPopupMenuBrew.h: Added. 89597 89598 chromium: 89599 89600 * WebCore.gypi: 89601 * platform/chromium/PopupMenuChromium.cpp: 89602 (WebCore::PopupMenuChromium::PopupMenuChromium): 89603 (WebCore::PopupMenuChromium::~PopupMenuChromium): 89604 (WebCore::PopupMenuChromium::show): 89605 (WebCore::PopupMenuChromium::hide): 89606 (WebCore::PopupMenuChromium::updateFromElement): 89607 (WebCore::PopupMenuChromium::disconnectClient): 89608 * platform/chromium/PopupMenuChromium.h: 89609 (WebCore::PopupMenuChromium::client): 89610 * platform/chromium/SearchPopupMenuChromium.cpp: 89611 (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium): 89612 (WebCore::SearchPopupMenuChromium::popupMenu): 89613 (WebCore::SearchPopupMenuChromium::enabled): 89614 (WebCore::SearchPopupMenuChromium::saveRecentSearches): 89615 (WebCore::SearchPopupMenuChromium::loadRecentSearches): 89616 * platform/chromium/SearchPopupMenuChromium.h: Added. 89617 89618 efl: 89619 89620 * platform/efl/PopupMenuEfl.cpp: 89621 (WebCore::PopupMenuEfl::PopupMenuEfl): 89622 (WebCore::PopupMenuEfl::~PopupMenuEfl): 89623 (WebCore::PopupMenuEfl::show): 89624 (WebCore::PopupMenuEfl::hide): 89625 (WebCore::PopupMenuEfl::updateFromElement): 89626 (WebCore::PopupMenuEfl::disconnectClient): 89627 * platform/efl/PopupMenuEfl.h: Added. 89628 (WebCore::PopupMenuEfl::client): 89629 * platform/efl/SearchPopupMenuEfl.cpp: 89630 (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl): 89631 (WebCore::SearchPopupMenuEfl::popupMenu): 89632 (WebCore::SearchPopupMenuEfl::saveRecentSearches): 89633 (WebCore::SearchPopupMenuEfl::loadRecentSearches): 89634 (WebCore::SearchPopupMenuEfl::enabled): 89635 * platform/efl/SearchPopupMenuEfl.h: Added. 89636 89637 gtk: 89638 89639 * GNUmakefile.am: 89640 * platform/gtk/PopupMenuGtk.cpp: 89641 (WebCore::PopupMenuGtk::PopupMenuGtk): 89642 (WebCore::PopupMenuGtk::~PopupMenuGtk): 89643 (WebCore::PopupMenuGtk::show): 89644 (WebCore::PopupMenuGtk::hide): 89645 (WebCore::PopupMenuGtk::updateFromElement): 89646 (WebCore::PopupMenuGtk::disconnectClient): 89647 (WebCore::PopupMenuGtk::menuItemActivated): 89648 (WebCore::PopupMenuGtk::menuUnmapped): 89649 (WebCore::PopupMenuGtk::menuPositionFunction): 89650 (WebCore::PopupMenuGtk::menuRemoveItem): 89651 * platform/gtk/PopupMenuGtk.h: Added. 89652 (WebCore::PopupMenuGtk::client): 89653 * platform/gtk/SearchPopupMenuGtk.cpp: 89654 (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk): 89655 (WebCore::SearchPopupMenuGtk::popupMenu): 89656 (WebCore::SearchPopupMenuGtk::saveRecentSearches): 89657 (WebCore::SearchPopupMenuGtk::loadRecentSearches): 89658 (WebCore::SearchPopupMenuGtk::enabled): 89659 * platform/gtk/SearchPopupMenuGtk.h: Added. 89660 89661 haiku: 89662 89663 * platform/haiku/PopupMenuHaiku.cpp: 89664 (WebCore::HaikuPopup::HaikuPopup): 89665 (WebCore::HaikuPopup::~HaikuPopup): 89666 (WebCore::PopupMenuHaiku::PopupMenuHaiku): 89667 (WebCore::PopupMenuHaiku::~PopupMenuHaiku): 89668 (WebCore::PopupMenuHaiku::disconnectClient): 89669 (WebCore::PopupMenuHaiku::show): 89670 (WebCore::PopupMenuHaiku::hide): 89671 (WebCore::PopupMenuHaiku::updateFromElement): 89672 * platform/haiku/PopupMenuHaiku.h: Added. 89673 (WebCore::PopupMenuHaiku::disconnectClient): 89674 (WebCore::PopupMenuHaiku::client): 89675 * platform/haiku/SearchPopupMenuHaiku.cpp: 89676 (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku): 89677 (WebCore::SearchPopupMenuHaiku::saveRecentSearches): 89678 (WebCore::SearchPopupMenuHaiku::loadRecentSearches): 89679 (WebCore::SearchPopupMenuHaiku::enabled): 89680 (WebCore::SearchPopupMenuHaiku::popupMenu): 89681 * platform/haiku/SearchPopupMenuHaiku.h: Added. 89682 89683 mac: 89684 89685 * WebCore.exp.in: 89686 * WebCore.xcodeproj/project.pbxproj: 89687 * platform/mac/PopupMenuMac.h: Added. 89688 (WebCore::PopupMenuMac::disconnectClient): 89689 (WebCore::PopupMenuMac::client): 89690 * platform/mac/PopupMenuMac.mm: 89691 (WebCore::PopupMenuMac::PopupMenuMac): 89692 (WebCore::PopupMenuMac::~PopupMenuMac): 89693 (WebCore::PopupMenuMac::clear): 89694 (WebCore::PopupMenuMac::populate): 89695 (WebCore::PopupMenuMac::show): 89696 (WebCore::PopupMenuMac::hide): 89697 (WebCore::PopupMenuMac::updateFromElement): 89698 (WebCore::PopupMenuMac::itemWritingDirectionIsNatural): 89699 * platform/mac/SearchPopupMenuMac.h: Added. 89700 * platform/mac/SearchPopupMenuMac.mm: 89701 (WebCore::SearchPopupMenuMac::SearchPopupMenuMac): 89702 (WebCore::SearchPopupMenuMac::popupMenu): 89703 (WebCore::SearchPopupMenuMac::enabled): 89704 (WebCore::SearchPopupMenuMac::saveRecentSearches): 89705 (WebCore::SearchPopupMenuMac::loadRecentSearches): 89706 89707 qt: 89708 89709 * WebCore.pro: 89710 * platform/qt/PopupMenuQt.cpp: 89711 (WebCore::PopupMenuQt::PopupMenuQt): 89712 (WebCore::PopupMenuQt::~PopupMenuQt): 89713 (WebCore::PopupMenuQt::disconnectClient): 89714 (WebCore::PopupMenuQt::show): 89715 (WebCore::PopupMenuQt::hide): 89716 (WebCore::PopupMenuQt::updateFromElement): 89717 * platform/qt/PopupMenuQt.h: Added. 89718 * platform/qt/QtAbstractWebPopup.h: 89719 * platform/qt/SearchPopupMenuQt.cpp: 89720 (WebCore::SearchPopupMenuQt::SearchPopupMenuQt): 89721 (WebCore::SearchPopupMenuQt::popupMenu): 89722 (WebCore::SearchPopupMenuQt::saveRecentSearches): 89723 (WebCore::SearchPopupMenuQt::loadRecentSearches): 89724 (WebCore::SearchPopupMenuQt::enabled): 89725 * platform/qt/SearchPopupMenuQt.h: Added. 89726 89727 win: 89728 89729 * WebCore.vcproj/WebCore.vcproj: 89730 * platform/win/PopupMenuWin.cpp: 89731 (WebCore::PopupMenuWin::PopupMenuWin): 89732 (WebCore::PopupMenuWin::~PopupMenuWin): 89733 (WebCore::PopupMenuWin::disconnectClient): 89734 (WebCore::PopupMenuWin::popupClassName): 89735 (WebCore::PopupMenuWin::show): 89736 (WebCore::PopupMenuWin::hide): 89737 (WebCore::PopupMenuWin::calculatePositionAndSize): 89738 (WebCore::PopupMenuWin::setFocusedIndex): 89739 (WebCore::PopupMenuWin::visibleItems): 89740 (WebCore::PopupMenuWin::listIndexAtPoint): 89741 (WebCore::PopupMenuWin::focusedIndex): 89742 (WebCore::PopupMenuWin::focusFirst): 89743 (WebCore::PopupMenuWin::focusLast): 89744 (WebCore::PopupMenuWin::down): 89745 (WebCore::PopupMenuWin::up): 89746 (WebCore::PopupMenuWin::invalidateItem): 89747 (WebCore::PopupMenuWin::clientRect): 89748 (WebCore::PopupMenuWin::incrementWheelDelta): 89749 (WebCore::PopupMenuWin::reduceWheelDelta): 89750 (WebCore::PopupMenuWin::scrollToRevealSelection): 89751 (WebCore::PopupMenuWin::updateFromElement): 89752 (WebCore::PopupMenuWin::paint): 89753 (WebCore::PopupMenuWin::valueChanged): 89754 (WebCore::PopupMenuWin::invalidateScrollbarRect): 89755 (WebCore::PopupMenuWin::registerClass): 89756 (WebCore::PopupMenuWin::PopupMenuWndProc): 89757 (WebCore::PopupMenuWin::wndProc): 89758 * platform/win/PopupMenuWin.h: Added. 89759 (WebCore::PopupMenuWin::client): 89760 (WebCore::PopupMenuWin::scrollbar): 89761 (WebCore::PopupMenuWin::itemHeight): 89762 (WebCore::PopupMenuWin::windowRect): 89763 (WebCore::PopupMenuWin::popupHandle): 89764 (WebCore::PopupMenuWin::setWasClicked): 89765 (WebCore::PopupMenuWin::wasClicked): 89766 (WebCore::PopupMenuWin::setScrollOffset): 89767 (WebCore::PopupMenuWin::scrollOffset): 89768 (WebCore::PopupMenuWin::wheelDelta): 89769 (WebCore::PopupMenuWin::scrollbarCapturingMouse): 89770 (WebCore::PopupMenuWin::setScrollbarCapturingMouse): 89771 * platform/win/SearchPopupMenuWin.cpp: 89772 (WebCore::SearchPopupMenuWin::SearchPopupMenuWin): 89773 (WebCore::SearchPopupMenuWin::popupMenu): 89774 (WebCore::SearchPopupMenuWin::enabled): 89775 (WebCore::SearchPopupMenuWin::saveRecentSearches): 89776 (WebCore::SearchPopupMenuWin::loadRecentSearches): 89777 * platform/win/SearchPopupMenuWin.h: Added. 89778 89779 wx: 89780 89781 * platform/wx/PopupMenuWx.cpp: 89782 (WebCore::PopupMenuWx::PopupMenuWx): 89783 (WebCore::PopupMenuWx::~PopupMenuWx): 89784 (WebCore::PopupMenuWx::disconnectClient): 89785 (WebCore::PopupMenuWx::show): 89786 (WebCore::PopupMenuWx::OnMenuItemSelected): 89787 (WebCore::PopupMenuWx::hide): 89788 (WebCore::PopupMenuWx::updateFromElement): 89789 * platform/wx/PopupMenuWx.h: Added. 89790 (WebCore::PopupMenuWx::client): 89791 * platform/wx/SearchPopupMenuWx.cpp: 89792 (WebCore::SearchPopupMenuWx::SearchPopupMenuWx): 89793 (WebCore::SearchPopupMenuWx::saveRecentSearches): 89794 (WebCore::SearchPopupMenuWx::loadRecentSearches): 89795 (WebCore::SearchPopupMenuWx::enabled): 89796 (WebCore::SearchPopupMenuWx::popupMenu): 89797 * platform/wx/SearchPopupMenuWx.h: Added. 89798 89799 89800 89801 2010-07-31 Sheriff Bot <webkit.review.bot (a] gmail.com> 89802 89803 Unreviewed, rolling out r64422. 89804 http://trac.webkit.org/changeset/64422 89805 https://bugs.webkit.org/show_bug.cgi?id=43304 89806 89807 Build fixes are needed for Snow Leopard and Windows. 89808 (Requested by lca on #webkit). 89809 89810 * GNUmakefile.am: 89811 * WebCore.exp.in: 89812 * WebCore.gypi: 89813 * WebCore.pro: 89814 * WebCore.vcproj/WebCore.vcproj: 89815 * WebCore.xcodeproj/project.pbxproj: 89816 * loader/EmptyClients.h: 89817 * page/Chrome.cpp: 89818 * page/Chrome.h: 89819 * page/ChromeClient.h: 89820 * platform/PopupMenu.h: 89821 (WebCore::PopupMenu::create): 89822 (WebCore::PopupMenu::disconnectClient): 89823 (WebCore::PopupMenu::client): 89824 (WebCore::PopupMenu::scrollbar): 89825 (WebCore::PopupMenu::itemHeight): 89826 (WebCore::PopupMenu::windowRect): 89827 (WebCore::PopupMenu::popupHandle): 89828 (WebCore::PopupMenu::setWasClicked): 89829 (WebCore::PopupMenu::wasClicked): 89830 (WebCore::PopupMenu::setScrollOffset): 89831 (WebCore::PopupMenu::scrollOffset): 89832 (WebCore::PopupMenu::wheelDelta): 89833 (WebCore::PopupMenu::scrollbarCapturingMouse): 89834 (WebCore::PopupMenu::setScrollbarCapturingMouse): 89835 (WebCore::PopupMenu::isActive): 89836 (WebCore::PopupMenu::scrollbarCornerPresent): 89837 * platform/SearchPopupMenu.h: 89838 (WebCore::SearchPopupMenu::create): 89839 * platform/brew/PopupMenuBrew.cpp: 89840 (WebCore::PopupMenu::PopupMenu): 89841 (WebCore::PopupMenu::~PopupMenu): 89842 (WebCore::PopupMenu::show): 89843 (WebCore::PopupMenu::hide): 89844 (WebCore::PopupMenu::updateFromElement): 89845 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89846 * platform/brew/PopupMenuBrew.h: Removed. 89847 * platform/brew/SearchPopupMenuBrew.cpp: 89848 (WebCore::SearchPopupMenu::saveRecentSearches): 89849 (WebCore::SearchPopupMenu::loadRecentSearches): 89850 (WebCore::SearchPopupMenu::SearchPopupMenu): 89851 (WebCore::SearchPopupMenu::enabled): 89852 * platform/brew/SearchPopupMenuBrew.h: Removed. 89853 * platform/chromium/PopupMenuChromium.cpp: 89854 (WebCore::PopupMenu::PopupMenu): 89855 (WebCore::PopupMenu::~PopupMenu): 89856 (WebCore::PopupMenu::show): 89857 (WebCore::PopupMenu::hide): 89858 (WebCore::PopupMenu::updateFromElement): 89859 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89860 * platform/chromium/PopupMenuChromium.h: 89861 * platform/chromium/SearchPopupMenuChromium.cpp: 89862 (WebCore::SearchPopupMenu::SearchPopupMenu): 89863 (WebCore::SearchPopupMenu::enabled): 89864 (WebCore::SearchPopupMenu::saveRecentSearches): 89865 (WebCore::SearchPopupMenu::loadRecentSearches): 89866 * platform/chromium/SearchPopupMenuChromium.h: Removed. 89867 * platform/efl/PopupMenuEfl.cpp: 89868 (WebCore::PopupMenu::PopupMenu): 89869 (WebCore::PopupMenu::~PopupMenu): 89870 (WebCore::PopupMenu::show): 89871 (WebCore::PopupMenu::hide): 89872 (WebCore::PopupMenu::updateFromElement): 89873 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89874 * platform/efl/PopupMenuEfl.h: Removed. 89875 * platform/efl/SearchPopupMenuEfl.cpp: 89876 (WebCore::SearchPopupMenu::SearchPopupMenu): 89877 (WebCore::SearchPopupMenu::saveRecentSearches): 89878 (WebCore::SearchPopupMenu::loadRecentSearches): 89879 (WebCore::SearchPopupMenu::enabled): 89880 * platform/efl/SearchPopupMenuEfl.h: Removed. 89881 * platform/gtk/PopupMenuGtk.cpp: 89882 (WebCore::PopupMenu::PopupMenu): 89883 (WebCore::PopupMenu::~PopupMenu): 89884 (WebCore::PopupMenu::show): 89885 (WebCore::PopupMenu::hide): 89886 (WebCore::PopupMenu::updateFromElement): 89887 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89888 (WebCore::PopupMenu::menuItemActivated): 89889 (WebCore::PopupMenu::menuUnmapped): 89890 (WebCore::PopupMenu::menuPositionFunction): 89891 (WebCore::PopupMenu::menuRemoveItem): 89892 * platform/gtk/PopupMenuGtk.h: Removed. 89893 * platform/gtk/SearchPopupMenuGtk.cpp: 89894 (WebCore::SearchPopupMenu::SearchPopupMenu): 89895 (WebCore::SearchPopupMenu::saveRecentSearches): 89896 (WebCore::SearchPopupMenu::loadRecentSearches): 89897 (WebCore::SearchPopupMenu::enabled): 89898 * platform/gtk/SearchPopupMenuGtk.h: Removed. 89899 * platform/haiku/PopupMenuHaiku.cpp: 89900 (WebCore::PopupMenuHaiku::PopupMenuHaiku): 89901 (WebCore::PopupMenuHaiku::~PopupMenuHaiku): 89902 (WebCore::PopupMenu::PopupMenu): 89903 (WebCore::PopupMenu::~PopupMenu): 89904 (WebCore::PopupMenu::show): 89905 (WebCore::PopupMenu::hide): 89906 (WebCore::PopupMenu::updateFromElement): 89907 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89908 * platform/haiku/PopupMenuHaiku.h: Removed. 89909 * platform/haiku/SearchPopupMenuHaiku.cpp: 89910 (WebCore::SearchPopupMenu::SearchPopupMenu): 89911 (WebCore::SearchPopupMenu::saveRecentSearches): 89912 (WebCore::SearchPopupMenu::loadRecentSearches): 89913 (WebCore::SearchPopupMenu::enabled): 89914 * platform/haiku/SearchPopupMenuHaiku.h: Removed. 89915 * platform/mac/PopupMenuMac.h: Removed. 89916 * platform/mac/PopupMenuMac.mm: 89917 (WebCore::PopupMenu::PopupMenu): 89918 (WebCore::PopupMenu::~PopupMenu): 89919 (WebCore::PopupMenu::clear): 89920 (WebCore::PopupMenu::populate): 89921 (WebCore::PopupMenu::show): 89922 (WebCore::PopupMenu::hide): 89923 (WebCore::PopupMenu::updateFromElement): 89924 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89925 * platform/mac/SearchPopupMenuMac.h: Removed. 89926 * platform/mac/SearchPopupMenuMac.mm: 89927 (WebCore::SearchPopupMenu::SearchPopupMenu): 89928 (WebCore::SearchPopupMenu::enabled): 89929 (WebCore::SearchPopupMenu::saveRecentSearches): 89930 (WebCore::SearchPopupMenu::loadRecentSearches): 89931 * platform/qt/PopupMenuQt.cpp: 89932 (WebCore::PopupMenu::PopupMenu): 89933 (WebCore::PopupMenu::~PopupMenu): 89934 (WebCore::PopupMenu::show): 89935 (WebCore::PopupMenu::hide): 89936 (WebCore::PopupMenu::updateFromElement): 89937 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89938 * platform/qt/PopupMenuQt.h: Removed. 89939 * platform/qt/QtAbstractWebPopup.h: 89940 * platform/qt/SearchPopupMenuQt.cpp: 89941 (WebCore::SearchPopupMenu::SearchPopupMenu): 89942 (WebCore::SearchPopupMenu::saveRecentSearches): 89943 (WebCore::SearchPopupMenu::loadRecentSearches): 89944 (WebCore::SearchPopupMenu::enabled): 89945 * platform/qt/SearchPopupMenuQt.h: Removed. 89946 * platform/win/PopupMenuWin.cpp: 89947 (WebCore::PopupMenu::PopupMenu): 89948 (WebCore::PopupMenu::~PopupMenu): 89949 (WebCore::PopupMenu::popupClassName): 89950 (WebCore::PopupMenu::show): 89951 (WebCore::PopupMenu::hide): 89952 (WebCore::PopupMenu::calculatePositionAndSize): 89953 (WebCore::PopupMenu::setFocusedIndex): 89954 (WebCore::PopupMenu::visibleItems): 89955 (WebCore::PopupMenu::listIndexAtPoint): 89956 (WebCore::PopupMenu::focusedIndex): 89957 (WebCore::PopupMenu::focusFirst): 89958 (WebCore::PopupMenu::focusLast): 89959 (WebCore::PopupMenu::down): 89960 (WebCore::PopupMenu::up): 89961 (WebCore::PopupMenu::invalidateItem): 89962 (WebCore::PopupMenu::clientRect): 89963 (WebCore::PopupMenu::incrementWheelDelta): 89964 (WebCore::PopupMenu::reduceWheelDelta): 89965 (WebCore::PopupMenu::scrollToRevealSelection): 89966 (WebCore::PopupMenu::updateFromElement): 89967 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89968 (WebCore::PopupMenu::paint): 89969 (WebCore::PopupMenu::valueChanged): 89970 (WebCore::PopupMenu::invalidateScrollbarRect): 89971 (WebCore::PopupMenu::registerClass): 89972 (WebCore::PopupMenu::PopupMenuWndProc): 89973 (WebCore::PopupMenu::wndProc): 89974 * platform/win/PopupMenuWin.h: Removed. 89975 * platform/win/SearchPopupMenuWin.cpp: 89976 (WebCore::SearchPopupMenu::SearchPopupMenu): 89977 (WebCore::SearchPopupMenu::enabled): 89978 (WebCore::SearchPopupMenu::saveRecentSearches): 89979 (WebCore::SearchPopupMenu::loadRecentSearches): 89980 * platform/win/SearchPopupMenuWin.h: Removed. 89981 * platform/wx/PopupMenuWx.cpp: 89982 (WebCore::PopupMenu::PopupMenu): 89983 (WebCore::PopupMenu::~PopupMenu): 89984 (WebCore::PopupMenu::show): 89985 (WebCore::PopupMenu::OnMenuItemSelected): 89986 (WebCore::PopupMenu::hide): 89987 (WebCore::PopupMenu::updateFromElement): 89988 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 89989 * platform/wx/PopupMenuWx.h: Removed. 89990 * platform/wx/SearchPopupMenuWx.cpp: 89991 (WebCore::SearchPopupMenu::SearchPopupMenu): 89992 (WebCore::SearchPopupMenu::saveRecentSearches): 89993 (WebCore::SearchPopupMenu::loadRecentSearches): 89994 (WebCore::SearchPopupMenu::enabled): 89995 * platform/wx/SearchPopupMenuWx.h: Removed. 89996 * rendering/RenderMenuList.cpp: 89997 (WebCore::RenderMenuList::adjustInnerStyle): 89998 (WebCore::RenderMenuList::showPopup): 89999 * rendering/RenderMenuList.h: 90000 * rendering/RenderTextControlSingleLine.cpp: 90001 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 90002 (WebCore::RenderTextControlSingleLine::addSearchResult): 90003 (WebCore::RenderTextControlSingleLine::showPopup): 90004 (WebCore::RenderTextControlSingleLine::hidePopup): 90005 (WebCore::RenderTextControlSingleLine::updateFromElement): 90006 (WebCore::RenderTextControlSingleLine::valueChanged): 90007 * rendering/RenderTextControlSingleLine.h: 90008 90009 2010-07-27 Luiz Agostini <luiz.agostini (a] openbossa.org> 90010 90011 Reviewed by Darin Fisher. 90012 90013 PopupMenu refactoring in preparation to WebKit2 90014 https://bugs.webkit.org/show_bug.cgi?id=42592 90015 90016 Classes PopupMenu and SearchPopupMenu have been made pure virtual. 90017 90018 * platform/PopupMenu.h: 90019 (WebCore::PopupMenu::~PopupMenu): 90020 * platform/SearchPopupMenu.h: 90021 (WebCore::SearchPopupMenu::~SearchPopupMenu): 90022 90023 Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use 90024 the new pure virtual PopupMenu and SearchPopupMenu. 90025 90026 * rendering/RenderMenuList.cpp: 90027 (WebCore::RenderMenuList::adjustInnerStyle): 90028 (WebCore::RenderMenuList::showPopup): 90029 * rendering/RenderMenuList.h: 90030 * rendering/RenderTextControlSingleLine.cpp: 90031 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 90032 (WebCore::RenderTextControlSingleLine::addSearchResult): 90033 (WebCore::RenderTextControlSingleLine::showPopup): 90034 (WebCore::RenderTextControlSingleLine::hidePopup): 90035 (WebCore::RenderTextControlSingleLine::updateFromElement): 90036 (WebCore::RenderTextControlSingleLine::valueChanged): 90037 * rendering/RenderTextControlSingleLine.h: 90038 90039 Chrome and ChromeClient were made responsible for providing instances of classes 90040 PopupMenu and SearchPopupMenu to its users. 90041 90042 * loader/EmptyClients.h: 90043 (WebCore::EmptyPopupMenu::show): 90044 (WebCore::EmptyPopupMenu::hide): 90045 (WebCore::EmptyPopupMenu::updateFromElement): 90046 (WebCore::EmptyPopupMenu::disconnectClient): 90047 (WebCore::EmptySearchPopupMenu::popupMenu): 90048 (WebCore::EmptySearchPopupMenu::saveRecentSearches): 90049 (WebCore::EmptySearchPopupMenu::loadRecentSearches): 90050 (WebCore::EmptySearchPopupMenu::enabled): 90051 (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural): 90052 (WebCore::EmptyChromeClient::createPopupMenu): 90053 (WebCore::EmptyChromeClient::createSearchPopupMenu): 90054 * page/Chrome.cpp: 90055 (WebCore::Chrome::selectItemWritingDirectionIsNatural): 90056 (WebCore::Chrome::createPopupMenu): 90057 (WebCore::Chrome::createSearchPopupMenu): 90058 * page/Chrome.h: 90059 * page/ChromeClient.h: 90060 90061 Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited 90062 in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h). 90063 Each of new the files contain the concrete classes that inherit form PopupMenu or 90064 SearchPopupMenu and are specific for the corresponding platform. 90065 90066 brew: 90067 90068 * platform/brew/PopupMenuBrew.cpp: 90069 (WebCore::PopupMenuBrew::PopupMenuBrew): 90070 (WebCore::PopupMenuBrew::~PopupMenuBrew): 90071 (WebCore::PopupMenuBrew::disconnectClient): 90072 (WebCore::PopupMenuBrew::show): 90073 (WebCore::PopupMenuBrew::hide): 90074 (WebCore::PopupMenuBrew::updateFromElement): 90075 * platform/brew/PopupMenuBrew.h: Added. 90076 (WebCore::PopupMenuBrew::client): 90077 * platform/brew/SearchPopupMenuBrew.cpp: 90078 (WebCore::SearchPopupMenuBrew::saveRecentSearches): 90079 (WebCore::SearchPopupMenuBrew::loadRecentSearches): 90080 (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew): 90081 (WebCore::SearchPopupMenuBrew::enabled): 90082 (WebCore::SearchPopupMenuBrew::popupMenu): 90083 * platform/brew/SearchPopupMenuBrew.h: Added. 90084 90085 chromium: 90086 90087 * WebCore.gypi: 90088 * platform/chromium/PopupMenuChromium.cpp: 90089 (WebCore::PopupMenuChromium::PopupMenuChromium): 90090 (WebCore::PopupMenuChromium::~PopupMenuChromium): 90091 (WebCore::PopupMenuChromium::show): 90092 (WebCore::PopupMenuChromium::hide): 90093 (WebCore::PopupMenuChromium::updateFromElement): 90094 (WebCore::PopupMenuChromium::disconnectClient): 90095 * platform/chromium/PopupMenuChromium.h: 90096 (WebCore::PopupMenuChromium::client): 90097 * platform/chromium/SearchPopupMenuChromium.cpp: 90098 (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium): 90099 (WebCore::SearchPopupMenuChromium::popupMenu): 90100 (WebCore::SearchPopupMenuChromium::enabled): 90101 (WebCore::SearchPopupMenuChromium::saveRecentSearches): 90102 (WebCore::SearchPopupMenuChromium::loadRecentSearches): 90103 * platform/chromium/SearchPopupMenuChromium.h: Added. 90104 90105 efl: 90106 90107 * platform/efl/PopupMenuEfl.cpp: 90108 (WebCore::PopupMenuEfl::PopupMenuEfl): 90109 (WebCore::PopupMenuEfl::~PopupMenuEfl): 90110 (WebCore::PopupMenuEfl::show): 90111 (WebCore::PopupMenuEfl::hide): 90112 (WebCore::PopupMenuEfl::updateFromElement): 90113 (WebCore::PopupMenuEfl::disconnectClient): 90114 * platform/efl/PopupMenuEfl.h: Added. 90115 (WebCore::PopupMenuEfl::client): 90116 * platform/efl/SearchPopupMenuEfl.cpp: 90117 (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl): 90118 (WebCore::SearchPopupMenuEfl::popupMenu): 90119 (WebCore::SearchPopupMenuEfl::saveRecentSearches): 90120 (WebCore::SearchPopupMenuEfl::loadRecentSearches): 90121 (WebCore::SearchPopupMenuEfl::enabled): 90122 * platform/efl/SearchPopupMenuEfl.h: Added. 90123 90124 gtk: 90125 90126 * GNUmakefile.am: 90127 * platform/gtk/PopupMenuGtk.cpp: 90128 (WebCore::PopupMenuGtk::PopupMenuGtk): 90129 (WebCore::PopupMenuGtk::~PopupMenuGtk): 90130 (WebCore::PopupMenuGtk::show): 90131 (WebCore::PopupMenuGtk::hide): 90132 (WebCore::PopupMenuGtk::updateFromElement): 90133 (WebCore::PopupMenuGtk::disconnectClient): 90134 (WebCore::PopupMenuGtk::menuItemActivated): 90135 (WebCore::PopupMenuGtk::menuUnmapped): 90136 (WebCore::PopupMenuGtk::menuPositionFunction): 90137 (WebCore::PopupMenuGtk::menuRemoveItem): 90138 * platform/gtk/PopupMenuGtk.h: Added. 90139 (WebCore::PopupMenuGtk::client): 90140 * platform/gtk/SearchPopupMenuGtk.cpp: 90141 (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk): 90142 (WebCore::SearchPopupMenuGtk::popupMenu): 90143 (WebCore::SearchPopupMenuGtk::saveRecentSearches): 90144 (WebCore::SearchPopupMenuGtk::loadRecentSearches): 90145 (WebCore::SearchPopupMenuGtk::enabled): 90146 * platform/gtk/SearchPopupMenuGtk.h: Added. 90147 90148 haiku: 90149 90150 * platform/haiku/PopupMenuHaiku.cpp: 90151 (WebCore::HaikuPopup::HaikuPopup): 90152 (WebCore::HaikuPopup::~HaikuPopup): 90153 (WebCore::PopupMenuHaiku::PopupMenuHaiku): 90154 (WebCore::PopupMenuHaiku::~PopupMenuHaiku): 90155 (WebCore::PopupMenuHaiku::disconnectClient): 90156 (WebCore::PopupMenuHaiku::show): 90157 (WebCore::PopupMenuHaiku::hide): 90158 (WebCore::PopupMenuHaiku::updateFromElement): 90159 * platform/haiku/PopupMenuHaiku.h: Added. 90160 (WebCore::PopupMenuHaiku::disconnectClient): 90161 (WebCore::PopupMenuHaiku::client): 90162 * platform/haiku/SearchPopupMenuHaiku.cpp: 90163 (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku): 90164 (WebCore::SearchPopupMenuHaiku::saveRecentSearches): 90165 (WebCore::SearchPopupMenuHaiku::loadRecentSearches): 90166 (WebCore::SearchPopupMenuHaiku::enabled): 90167 (WebCore::SearchPopupMenuHaiku::popupMenu): 90168 * platform/haiku/SearchPopupMenuHaiku.h: Added. 90169 90170 mac: 90171 90172 * WebCore.exp.in: 90173 * WebCore.xcodeproj/project.pbxproj: 90174 * platform/mac/PopupMenuMac.h: Added. 90175 (WebCore::PopupMenuMac::disconnectClient): 90176 (WebCore::PopupMenuMac::client): 90177 * platform/mac/PopupMenuMac.mm: 90178 (WebCore::PopupMenuMac::PopupMenuMac): 90179 (WebCore::PopupMenuMac::~PopupMenuMac): 90180 (WebCore::PopupMenuMac::clear): 90181 (WebCore::PopupMenuMac::populate): 90182 (WebCore::PopupMenuMac::show): 90183 (WebCore::PopupMenuMac::hide): 90184 (WebCore::PopupMenuMac::updateFromElement): 90185 (WebCore::PopupMenuMac::itemWritingDirectionIsNatural): 90186 * platform/mac/SearchPopupMenuMac.h: Added. 90187 * platform/mac/SearchPopupMenuMac.mm: 90188 (WebCore::SearchPopupMenuMac::SearchPopupMenuMac): 90189 (WebCore::SearchPopupMenuMac::popupMenu): 90190 (WebCore::SearchPopupMenuMac::enabled): 90191 (WebCore::SearchPopupMenuMac::saveRecentSearches): 90192 (WebCore::SearchPopupMenuMac::loadRecentSearches): 90193 90194 qt: 90195 90196 * WebCore.pro: 90197 * platform/qt/PopupMenuQt.cpp: 90198 (WebCore::PopupMenuQt::PopupMenuQt): 90199 (WebCore::PopupMenuQt::~PopupMenuQt): 90200 (WebCore::PopupMenuQt::disconnectClient): 90201 (WebCore::PopupMenuQt::show): 90202 (WebCore::PopupMenuQt::hide): 90203 (WebCore::PopupMenuQt::updateFromElement): 90204 * platform/qt/PopupMenuQt.h: Added. 90205 * platform/qt/QtAbstractWebPopup.h: 90206 * platform/qt/SearchPopupMenuQt.cpp: 90207 (WebCore::SearchPopupMenuQt::SearchPopupMenuQt): 90208 (WebCore::SearchPopupMenuQt::popupMenu): 90209 (WebCore::SearchPopupMenuQt::saveRecentSearches): 90210 (WebCore::SearchPopupMenuQt::loadRecentSearches): 90211 (WebCore::SearchPopupMenuQt::enabled): 90212 * platform/qt/SearchPopupMenuQt.h: Added. 90213 90214 win: 90215 90216 * WebCore.vcproj/WebCore.vcproj: 90217 * platform/win/PopupMenuWin.cpp: 90218 (WebCore::PopupMenuWin::PopupMenuWin): 90219 (WebCore::PopupMenuWin::~PopupMenuWin): 90220 (WebCore::PopupMenuWin::disconnectClient): 90221 (WebCore::PopupMenuWin::popupClassName): 90222 (WebCore::PopupMenuWin::show): 90223 (WebCore::PopupMenuWin::hide): 90224 (WebCore::PopupMenuWin::calculatePositionAndSize): 90225 (WebCore::PopupMenuWin::setFocusedIndex): 90226 (WebCore::PopupMenuWin::visibleItems): 90227 (WebCore::PopupMenuWin::listIndexAtPoint): 90228 (WebCore::PopupMenuWin::focusedIndex): 90229 (WebCore::PopupMenuWin::focusFirst): 90230 (WebCore::PopupMenuWin::focusLast): 90231 (WebCore::PopupMenuWin::down): 90232 (WebCore::PopupMenuWin::up): 90233 (WebCore::PopupMenuWin::invalidateItem): 90234 (WebCore::PopupMenuWin::clientRect): 90235 (WebCore::PopupMenuWin::incrementWheelDelta): 90236 (WebCore::PopupMenuWin::reduceWheelDelta): 90237 (WebCore::PopupMenuWin::scrollToRevealSelection): 90238 (WebCore::PopupMenuWin::updateFromElement): 90239 (WebCore::PopupMenuWin::paint): 90240 (WebCore::PopupMenuWin::valueChanged): 90241 (WebCore::PopupMenuWin::invalidateScrollbarRect): 90242 (WebCore::PopupMenuWin::registerClass): 90243 (WebCore::PopupMenuWin::PopupMenuWndProc): 90244 (WebCore::PopupMenuWin::wndProc): 90245 * platform/win/PopupMenuWin.h: Added. 90246 (WebCore::PopupMenuWin::client): 90247 (WebCore::PopupMenuWin::scrollbar): 90248 (WebCore::PopupMenuWin::itemHeight): 90249 (WebCore::PopupMenuWin::windowRect): 90250 (WebCore::PopupMenuWin::popupHandle): 90251 (WebCore::PopupMenuWin::setWasClicked): 90252 (WebCore::PopupMenuWin::wasClicked): 90253 (WebCore::PopupMenuWin::setScrollOffset): 90254 (WebCore::PopupMenuWin::scrollOffset): 90255 (WebCore::PopupMenuWin::wheelDelta): 90256 (WebCore::PopupMenuWin::scrollbarCapturingMouse): 90257 (WebCore::PopupMenuWin::setScrollbarCapturingMouse): 90258 * platform/win/SearchPopupMenuWin.cpp: 90259 (WebCore::SearchPopupMenuWin::SearchPopupMenuWin): 90260 (WebCore::SearchPopupMenuWin::popupMenu): 90261 (WebCore::SearchPopupMenuWin::enabled): 90262 (WebCore::SearchPopupMenuWin::saveRecentSearches): 90263 (WebCore::SearchPopupMenuWin::loadRecentSearches): 90264 * platform/win/SearchPopupMenuWin.h: Added. 90265 90266 wx: 90267 90268 * platform/wx/PopupMenuWx.cpp: 90269 (WebCore::PopupMenuWx::PopupMenuWx): 90270 (WebCore::PopupMenuWx::~PopupMenuWx): 90271 (WebCore::PopupMenuWx::disconnectClient): 90272 (WebCore::PopupMenuWx::show): 90273 (WebCore::PopupMenuWx::OnMenuItemSelected): 90274 (WebCore::PopupMenuWx::hide): 90275 (WebCore::PopupMenuWx::updateFromElement): 90276 * platform/wx/PopupMenuWx.h: Added. 90277 (WebCore::PopupMenuWx::client): 90278 * platform/wx/SearchPopupMenuWx.cpp: 90279 (WebCore::SearchPopupMenuWx::SearchPopupMenuWx): 90280 (WebCore::SearchPopupMenuWx::saveRecentSearches): 90281 (WebCore::SearchPopupMenuWx::loadRecentSearches): 90282 (WebCore::SearchPopupMenuWx::enabled): 90283 (WebCore::SearchPopupMenuWx::popupMenu): 90284 * platform/wx/SearchPopupMenuWx.h: Added. 90285 90286 90287 90288 2010-07-31 David Kilzer <ddkilzer (a] apple.com> 90289 90290 <http://webkit.org/b/43300> Simplify variables in *.xcconfig files after adding iOS support 90291 90292 Reviewed by Darin Adler. 90293 90294 * Configurations/WebCore.xcconfig: Extracted 90295 PRODUCTION_FRAMEWORKS_DIR variable. 90296 90297 2010-07-31 Nikolas Zimmermann <nzimmermann (a] rim.com> 90298 90299 Reviewed by Dirk Schulze. 90300 90301 HTMLStyleElement/SVGStyleElement need to share more code 90302 https://bugs.webkit.org/show_bug.cgi?id=43293 90303 90304 Simplify HTMLStyleElement/SVGStyleElement. They look identically now, as all code is shared in StyleElement. 90305 Doesn't affect any tests. 90306 90307 * dom/StyleElement.cpp: 90308 (WebCore::StyleElement::StyleElement): Take createdByParser & Document arguments, to share the line number extraction logic. Store it in m_lineNumber. 90309 (WebCore::StyleElement::insertedIntoDocument): Moved addStyleSheetCandidateNode here, to share code between HTML/SVGStyleElement. 90310 (WebCore::StyleElement::removedFromDocument): Same for removeStyleSheetCandidateNode. 90311 (WebCore::StyleElement::childrenChanged): Introduced new helper function. 90312 (WebCore::StyleElement::finishParsingChildren): Ditto. 90313 (WebCore::StyleElement::process): Use stored m_lineNumber, avoids a parameter. 90314 (WebCore::StyleElement::createSheet): No need to call the virtual setLoading() function, just store m_loading in StyleElement, and set it from here. 90315 (WebCore::StyleElement::isLoading): Introduced new helper function. 90316 (WebCore::StyleElement::sheetLoaded): Ditto. 90317 * dom/StyleElement.h: 90318 * html/HTMLStyleElement.cpp: 90319 (WebCore::HTMLStyleElement::HTMLStyleElement): Pass Document & createdByParser arguments to StyleElement. 90320 (WebCore::HTMLStyleElement::finishParsingChildren): Delegate work to StyleElement. 90321 (WebCore::HTMLStyleElement::insertedIntoDocument): Ditto. 90322 (WebCore::HTMLStyleElement::removedFromDocument): Ditto. 90323 (WebCore::HTMLStyleElement::childrenChanged): Ditto. 90324 * html/HTMLStyleElement.h: 90325 (WebCore::HTMLStyleElement::isLoading): Ditto. 90326 (WebCore::HTMLStyleElement::sheetLoaded): Ditto. 90327 * svg/SVGStyleElement.cpp: 90328 (WebCore::SVGStyleElement::SVGStyleElement): Pass Document & createdByParser arguments to StyleElement. 90329 (WebCore::SVGStyleElement::finishParsingChildren): Delegate work to StyleElement. 90330 (WebCore::SVGStyleElement::insertedIntoDocument): Ditto. 90331 (WebCore::SVGStyleElement::removedFromDocument): Ditto. 90332 (WebCore::SVGStyleElement::childrenChanged): Ditto. 90333 * svg/SVGStyleElement.h: 90334 (WebCore::SVGStyleElement::isLoading): Ditto. 90335 (WebCore::SVGStyleElement::sheetLoaded): Ditto. 90336 90337 2010-07-31 Kinuko Yasuda <kinuko (a] chromium.org> 90338 90339 Unreviewed. Attempt to fix release build failure. 90340 90341 Having 'fail:' label without goto statement generates a compiler 90342 warning that causes a build failure in release build. 90343 90344 * bindings/scripts/CodeGeneratorV8.pm: 90345 90346 2010-07-31 Kinuko Yasuda <kinuko (a] chromium.org> 90347 90348 Reviewed by Nikolas Zimmermann. 90349 90350 Fix 'bool' in bindings/scripts/test/TestObj. 90351 90352 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 90353 (WebDOMTestObj::CREATE): 90354 (WebDOMTestObj::setCREATE): 90355 * bindings/scripts/test/CPP/WebDOMTestObj.h: 90356 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 90357 (webkit_dom_test_obj_get_create): 90358 (webkit_dom_test_obj_set_create): 90359 (webkit_dom_test_obj_set_property): 90360 (webkit_dom_test_obj_get_property): 90361 (webkit_dom_test_obj_class_init): 90362 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 90363 * bindings/scripts/test/JS/JSTestObj.cpp: 90364 (WebCore::jsTestObjCreate): 90365 (WebCore::setJSTestObjCreate): 90366 * bindings/scripts/test/ObjC/DOMTestObj.h: 90367 * bindings/scripts/test/ObjC/DOMTestObj.mm: 90368 (-[DOMTestObj CREATE]): 90369 (-[DOMTestObj setCREATE:]): 90370 * bindings/scripts/test/TestObj.idl: 90371 * bindings/scripts/test/V8/V8TestObj.cpp: 90372 (WebCore::TestObjInternal::CREATEAttrGetter): 90373 (WebCore::TestObjInternal::CREATEAttrSetter): 90374 90375 2010-07-30 Kinuko Yasuda <kinuko (a] chromium.org> 90376 90377 Reviewed by Dumitru Daniliuc. 90378 90379 Add idl and mock implementation for HTML5 FileSystem API 90380 https://bugs.webkit.org/show_bug.cgi?id=43134 90381 90382 Add idl for: FileSystem (as DOMFileSystem), Entry, Flags, Metadata, 90383 FileSystemCallback, EntryCallback and ErrorCallback. 90384 http://dev.w3.org/2009/dap/file-system/file-dir-sys.html 90385 90386 They are added only for Mac and chromium. 90387 90388 Tests will be added when we expose the entry point and add implementation. 90389 90390 * DerivedSources.make: 90391 * WebCore.gypi: 90392 * WebCore.xcodeproj/project.pbxproj: 90393 90394 * storage/DOMFileSystem.cpp: Added. 90395 * storage/DOMFileSystem.h: Added. 90396 * storage/DOMFileSystem.idl: Added. 90397 * storage/Entry.cpp: Added. 90398 * storage/Entry.h: Added. 90399 * storage/Entry.idl: Added. 90400 * storage/EntryCallback.h: Added. 90401 * storage/EntryCallback.idl: Added. 90402 * storage/ErrorCallback.h: Added. 90403 * storage/ErrorCallback.idl: Added. 90404 * storage/FileSystemCallback.h: Added. 90405 * storage/FileSystemCallback.idl: Added. 90406 * storage/Flags.h: Added. 90407 * storage/Flags.idl: Added. 90408 * storage/Metadata.h: Added. 90409 * storage/Metadata.idl: Added. 90410 * storage/MetadataCallback.h: Added. 90411 * storage/MetadataCallback.idl: Added. 90412 90413 * bindings/scripts/CodeGenerator.pm: Added special case handlings for generating setter/getter names for CREATE/EXCLUSIVE attributes in Flags.idl. 90414 90415 * bindings/scripts/test/TestObj.idl: Updated. 90416 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated. 90417 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated. 90418 * bindings/scripts/test/CPP/WebDOMTestObj.h: Updated. 90419 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Updated. 90420 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Updated. 90421 * bindings/scripts/test/JS/JSTestObj.cpp: Updated. 90422 * bindings/scripts/test/JS/JSTestObj.h: Updated. 90423 * bindings/scripts/test/ObjC/DOMTestObj.h: Updated. 90424 * bindings/scripts/test/ObjC/DOMTestObj.mm: Updated. 90425 90426 2010-07-30 Sheriff Bot <webkit.review.bot (a] gmail.com> 90427 90428 Unreviewed, rolling out r64408. 90429 http://trac.webkit.org/changeset/64408 90430 https://bugs.webkit.org/show_bug.cgi?id=43292 90431 90432 Causing failed tests on Chromium canaries due to wrong history 90433 item counts (Requested by atwilson on #webkit). 90434 90435 * loader/RedirectScheduler.cpp: 90436 (WebCore::RedirectScheduler::scheduleRedirect): 90437 (WebCore::RedirectScheduler::mustLockBackForwardList): 90438 (WebCore::RedirectScheduler::scheduleLocationChange): 90439 (WebCore::RedirectScheduler::scheduleFormSubmission): 90440 * loader/RedirectScheduler.h: 90441 90442 2010-07-30 Dan Bernstein <mitz (a] apple.com> 90443 90444 Reviewed by Darin Adler. 90445 90446 <rdar://problem/8257783> Short documents may print a second blank page 90447 https://bugs.webkit.org/show_bug.cgi?id=43271 90448 90449 Test: printing/stretch-to-view-height.html 90450 90451 * WebCore.exp.in: Export Frame::forceLayoutForPagination(), replacing forceLayoutWithPageWidthRange(). 90452 * page/Frame.cpp: 90453 (WebCore::Frame::setPrinting): Now takes a page width and height and a maximum shrink factor and passes 90454 them down to forceLayoutForPagination(). 90455 * page/Frame.h: 90456 (WebCore::Frame::): 90457 * page/FrameView.cpp: 90458 (WebCore::FrameView::reset): Initialize m_pageHeight. 90459 (WebCore::FrameView::forceLayoutForPagination): Renamed forceLayoutWithPageWidthRange() to this and 90460 changed it to take a page width and height and a maximum shrink factor. Sets m_pageHeight, which is 90461 queried by RenderBox::calcHeight() during layout. If the given pageHeight is 0, m_pageHeight is set 90462 to the visible height, retaining the behavior before this change. 90463 * page/FrameView.h: 90464 (WebCore::FrameView::pageHeight): Added this accessor. 90465 * page/PrintContext.cpp: 90466 (WebCore::PrintContext::begin): Added a height parameter, used when calling setPrinting(). 90467 (WebCore::PrintContext::end): Updated for setPrinting() changes. 90468 (WebCore::PrintContext::pageNumberForElement): Account for shrink-to-fit. 90469 (WebCore::PrintContext::pageProperty): Pass 0 for the height, retaining current behavior. 90470 (WebCore::PrintContext::numberOfPages): Account for shrink-to-fit. 90471 (WebCore::PrintContext::spoolAllPagesWithBoundaries): Pass the page width to begin(). 90472 * page/PrintContext.h: 90473 * rendering/RenderBox.cpp: 90474 (WebCore::RenderBox::calcHeight): When printing, use FrameView::pageHeight() as the basis for 90475 viewport-relative heights. 90476 90477 2010-07-30 Mihai Parparita <mihaip (a] chromium.org> 90478 90479 Reviewed by Darin Fisher. 90480 90481 Session history should skip over JS redirects 90482 https://bugs.webkit.org/show_bug.cgi?id=42861 90483 90484 Lock the back/forward list for location changes that happen before the 90485 onload event fires that are not the result of user gestures. 90486 90487 Test: fast/history/gesture-before-onload.html and updated expectations 90488 for http/tests/history tests that used to fail. 90489 90490 * loader/RedirectScheduler.cpp: 90491 (WebCore::RedirectScheduler::scheduleRedirect): 90492 (WebCore::RedirectScheduler::mustLockBackForwardList): 90493 (WebCore::RedirectScheduler::scheduleLocationChange): 90494 (WebCore::RedirectScheduler::scheduleFormSubmission): 90495 * loader/RedirectScheduler.h: 90496 90497 2010-07-30 Matthew Delaney <mdelaney (a] apple.com> 90498 90499 Reviewed by Darin Adler. 90500 90501 ctx.clearRect improperly clears shadow 90502 https://bugs.webkit.org/show_bug.cgi?id=43213 90503 90504 Tests: canvas/philip/tests/2d.clearRect+fillRect.alpha0.5.html 90505 canvas/philip/tests/2d.clearRect+fillRect.alpha0.html 90506 canvas/philip/tests/2d.clearRect+fillRect.basic.html 90507 90508 * html/canvas/CanvasRenderingContext2D.cpp: 90509 (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault): 90510 Added a new method to wipe out all context attributes to their defaults. 90511 (WebCore::CanvasRenderingContext2D::clearRect): 90512 Updated clearRect to ignore shadow, alpha, and global composite attributes 90513 when clearing the input rect to match the canvas spec. 90514 * html/canvas/CanvasRenderingContext2D.h: 90515 90516 2010-07-30 Kinuko Yasuda <kinuko (a] chromium.org> 90517 90518 Reviewed by Jian Li. 90519 90520 Decouple FileThread from FileStream to support generic file-related async tasks 90521 https://bugs.webkit.org/show_bug.cgi?id=43135 90522 90523 No new tests as this doesn't change any functionality. 90524 90525 * html/FileThread.cpp: 90526 (WebCore::FileThread::stop): 90527 (WebCore::SameInstancePredicate::SameFilePredicate): 90528 (WebCore::SameInstancePredicate::operator()): 90529 (WebCore::FileThread::unscheduleTasksInternal): 90530 * html/FileThread.h: 90531 (WebCore::FileThread::create): 90532 (WebCore::FileThread::Task::instance): 90533 (WebCore::FileThread::Task::Task): 90534 * html/FileThreadTask.h: Changed all templates to take any type as a callee instance. 90535 (WebCore::createFileThreadTask): 90536 90537 2010-07-30 Darin Fisher <darin (a] chromium.org> 90538 90539 Reviewed by Darin Adler. 90540 90541 Eliminate BackForwardList::pushStateItem 90542 https://bugs.webkit.org/show_bug.cgi?id=43282 90543 90544 The layout test was previously disabled because of the assertion being 90545 hit in BackForwardList::pushStateItem. That assertion revealed the need 90546 for this patch. 90547 90548 Test: fast/loader/stateobjects/pushstate-in-iframe.html 90549 90550 * history/BackForwardList.h: 90551 * history/BackForwardListChromium.cpp: 90552 * history/BackForwardListImpl.cpp: 90553 * history/BackForwardListImpl.h: 90554 90555 * loader/HistoryController.cpp: Move the logic, of adding a null state 90556 object to the HistoryItem that was previously the current HistoryItem, to 90557 HistoryController::pushState from BackForwardList::pushStateItem. The 90558 BackForwardList was the wrong place for that logic since it lacked convenient 90559 access to the target HistoryItem. It is just given the top-most HistoryItem 90560 corresponding to the new navigation. 90561 90562 (WebCore::HistoryController::updateBackForwardListClippedAtTarget): 90563 (WebCore::HistoryController::pushState): 90564 90565 2010-07-30 Luiz Agostini <luiz.agostini (a] openbossa.org> 90566 90567 Reviewed by Simon Fraser. 90568 90569 Enabling view modes to all platforms 90570 https://bugs.webkit.org/show_bug.cgi?id=37505 90571 90572 View mode media feature implementation as specified in http://www.w3.org/TR/view-mode. 90573 90574 The view mode media feature layout tests are stil skipped for all platforms except Qt 90575 because of the lack of support of LayoutTestController in those platforms. 90576 90577 Test: fast/media/view-mode-media-feature.html 90578 90579 * css/MediaFeatureNames.h: 90580 * css/MediaQueryEvaluator.cpp: 90581 (WebCore::view_modeMediaFeatureEval): 90582 * page/ChromeClient.h: 90583 * page/Page.cpp: 90584 (WebCore::Page::Page): 90585 (WebCore::createViewModesSet): 90586 (WebCore::Page::setViewMode): 90587 * page/Page.h: 90588 (WebCore::Page::viewMode): 90589 90590 2010-07-30 Joseph Pecoraro <joepeck (a] webkit.org> 90591 90592 Reviewed by David Kilzer. 90593 90594 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 90595 https://bugs.webkit.org/show_bug.cgi?id=40627 90596 90597 Part 4 - Client Notification when the Quota is Reached 90598 90599 Notify the WebKit client when the per-origin quota is reached 90600 via a delegate method reachedApplicationCacheOriginQuota. 90601 90602 Call the delegate method when the quota is reached. 90603 90604 * loader/appcache/ApplicationCacheGroup.cpp: 90605 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): 90606 (WebCore::ApplicationCacheGroup::didFinishLoading): 90607 (WebCore::ApplicationCacheGroup::didReachOriginQuota): 90608 (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota): 90609 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): 90610 (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback): 90611 * loader/appcache/ApplicationCacheGroup.h: 90612 90613 Some minor refactoring to access more quota information 90614 without repeating code. Such as origin usage, and creating 90615 an origin record. 90616 90617 * loader/appcache/ApplicationCacheStorage.cpp: 90618 (WebCore::ApplicationCacheStorage::usageForOrigin): 90619 (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): 90620 (WebCore::ApplicationCacheStorage::store): 90621 (WebCore::ApplicationCacheStorage::ensureOriginRecord): 90622 * loader/appcache/ApplicationCacheStorage.h: 90623 90624 Boilerplate. Exports and definition of the delegate method. 90625 90626 * WebCore.OfflineWebApplications.exp: 90627 * loader/EmptyClients.h: 90628 (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota): 90629 * page/ChromeClient.h: 90630 90631 2010-07-30 Joseph Pecoraro <joepeck (a] webkit.org> 90632 90633 Reviewed by David Kilzer. 90634 90635 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 90636 https://bugs.webkit.org/show_bug.cgi?id=40627 90637 90638 Part 3 - Refactor storeNewestCache to allow Failure Reason Output 90639 90640 Storing can result in an error in a number of reasons. Previously 90641 the reasons were global and binary and could be determined by 90642 checking ApplicationCacheStorage state. Now, with per-origin quotas 90643 a per-origin quota can cause a failure that is not in global state. 90644 Current failure reasons are: 90645 90646 OriginQuotaReached = per-origin quota reached, no storage is allowed. 90647 TotalQuotaReached = database quota reached, no storage is allowed. 90648 DiskOrOperationFailure = SQL error such as failed prepare or query. Not expected to happen. 90649 90650 This part provides an implementation of storeNewestCache for those 90651 that care about the failure reason, and not just if it succeeded 90652 or not. This moves the final origin quota check into the transaction. 90653 90654 * loader/appcache/ApplicationCache.h: style fix for forwarding headers. 90655 * loader/appcache/ApplicationCacheGroup.cpp: 90656 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): move origin quota check into storeNewestCache's SQL transaction. 90657 * loader/appcache/ApplicationCacheStorage.cpp: 90658 (WebCore::ApplicationCacheStorage::storeNewestCache): old implementation calls the new implementation ignoring failure reason. 90659 (WebCore::ApplicationCacheStorage::storeNewestCache): new implementation provides a failure reason in case of failure. 90660 * loader/appcache/ApplicationCacheStorage.h: 90661 (WebCore::ApplicationCacheStorage::): added FailureReason enum and storeNewestCache allowing it. 90662 90663 2010-07-30 Joseph Pecoraro <joepeck (a] webkit.org> 90664 90665 Reviewed by David Kilzer. 90666 90667 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 90668 https://bugs.webkit.org/show_bug.cgi?id=40627 90669 90670 Part 2 - Update Schema and enforce Per-Origin Quotas 90671 90672 Added an "Origins" table to the application cache databases. 90673 This, like the Database's Origins table, is a list of origin 90674 and quota pairs. Origins records are added as soon as they are 90675 needed, and deleted only when the ApplicationCacheStorage is 90676 emptied. This means Origins records persist even after all 90677 caches for that origin may be deleted. The "CacheGroups" table 90678 now has a foreign key column "origin" which relates to the 90679 "Origins" table. 90680 90681 To enforce the quotas, remaining quota space is checked at 90682 the start of update as an estimate and at the end before 90683 inserting. Currently, reaching the quota limit will simply 90684 cause an update error. A later part will provide a 90685 notification to the client to allow an action, and refactor 90686 the final quota limit check into a transaction. 90687 90688 Respect the quota during the update process. And cause 90689 the update process to fail when the quota is reached. 90690 90691 * loader/appcache/ApplicationCacheGroup.cpp: added loading counter, counts bytes as they load 90692 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): 90693 (WebCore::ApplicationCacheGroup::didReceiveData): 90694 (WebCore::ApplicationCacheGroup::didFinishLoading): 90695 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): 90696 * loader/appcache/ApplicationCacheGroup.h: added security origin, based on the manifest URL 90697 (WebCore::ApplicationCacheGroup::origin): accessor 90698 90699 Updates the schema of the database tables as described 90700 above. Handle other SQL operations such as checking the 90701 remaining space and inserting and deleting Origins records. 90702 90703 * loader/appcache/ApplicationCacheStorage.cpp: 90704 (WebCore::ApplicationCacheStorage::quotaForOrigin): query for the quota of an origin, may return the default origin quota if it didn't exist. 90705 (WebCore::ApplicationCacheStorage::remainingSizeForOriginExcludingCache): calculate the remaining size in a quota for an origin, possibly excluding a cache. 90706 (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): persistent update. 90707 (WebCore::ApplicationCacheStorage::openDatabase): updated schema for CachesGroups, added new table Origins. 90708 (WebCore::ApplicationCacheStorage::empty): wipe Origins table as well. 90709 (WebCore::ApplicationCacheStorage::unknownQuota): constant to mean unknown quota 90710 90711 2010-07-30 Joseph Pecoraro <joepeck (a] webkit.org> 90712 90713 Reviewed by David Kilzer. 90714 90715 Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas) 90716 https://bugs.webkit.org/show_bug.cgi?id=40627 90717 90718 Part 1 - Add Total and Per-Origin Quota Preferences. 90719 90720 Allow the application cache total size to be a preference, and 90721 add a new preference for the default per-origin quota. 90722 90723 Handle the per-origin quota in the global cacheStorage() object. 90724 The per-origin quota will be used in a later part, this just 90725 handles interaction with it from a client. 90726 90727 * loader/appcache/ApplicationCacheStorage.cpp: 90728 (WebCore::ApplicationCacheStorage::setDefaultOriginQuota): setter 90729 (WebCore::ApplicationCacheStorage::ApplicationCacheStorage): default to "noQuota" on construction 90730 * loader/appcache/ApplicationCacheStorage.h: 90731 (WebCore::ApplicationCacheStorage::noQuota): constant to mean unlimited storage 90732 (WebCore::ApplicationCacheStorage::defaultOriginQuota): accessor 90733 90734 Move around some exports around for Offline Web Applications. 90735 90736 * WebCore.exp.in: Added OFFLINE_WEB_APPLICATIONS exports. 90737 90738 2010-07-30 Andy Estes <aestes (a] apple.com> 90739 90740 Reviewed by David Kilzer. 90741 90742 Add Xcode support for compiling WebKit against iOS SDKs. 90743 https://bugs.webkit.org/show_bug.cgi?id=42796 90744 90745 * Configurations/Base.xcconfig: 90746 * Configurations/DebugRelease.xcconfig: 90747 * Configurations/FeatureDefines.xcconfig: 90748 * Configurations/Version.xcconfig: 90749 * Configurations/WebCore.xcconfig: 90750 90751 2010-07-30 James Robinson <jamesr (a] chromium.org> 90752 90753 Compile fix: fix a typo in forward declaration, add EmptyClients impl. 90754 90755 * loader/EmptyClients.h: 90756 (WebCore::EmptyChromeClient::getOnscreenGLES2Context): 90757 (WebCore::EmptyChromeClient::getOffscreenGLES2Context): 90758 * page/ChromeClient.h: 90759 90760 2010-07-30 James Robinson <jamesr (a] chromium.org> 90761 90762 Reviewed by Darin Fisher. 90763 90764 Move GLES2 context manipulation to ChromeClient.h and put it behind the right #if guard 90765 https://bugs.webkit.org/show_bug.cgi?id=43281 90766 90767 These calls were initially put in ChromeClientChromium, but they aren't chromium specific. 90768 In theory any port that could create the proper OpenGL ES 2 contexts could implement 90769 these functions. Also moves the calls to be behind the correct #if guard. 90770 90771 * page/ChromeClient.h: 90772 * page/chromium/ChromeClientChromium.h: 90773 90774 2010-07-30 Dumitru Daniliuc <dumi (a] chromium.org> 90775 90776 Reviewed by David Levin. 90777 90778 Interrupt all DB operations when the worker is terminating. 90779 https://bugs.webkit.org/show_bug.cgi?id=42843 90780 90781 Tests: fast/workers/storage/interrupt-database-sync.html 90782 fast/workers/storage/interrupt-database.html 90783 90784 * bindings/js/JSCustomVoidCallback.cpp: 90785 (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the 90786 destructor is called on the context thread, delete m_data directly 90787 instead of posting a task to do that. We need to do that to make 90788 sure that all JS objects are destroyed before 90789 WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls 90790 WorkerContext::clearScript(). 90791 90792 * bindings/scripts/CodeGeneratorJS.pm: Same change as above, for 90793 all auto-generated callbacks. 90794 90795 * bindings/scripts/test/JS/JSTestCallback.cpp: 90796 (WebCore::JSTestCallback::~JSTestCallback): Updated the 90797 expectations for run-bindings-tests. 90798 90799 * platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt 90800 all DB operations in progress, unless the database was closed or 90801 is being closed. Unlike sqlite3_interrupt(), 90802 SQLiteDatabase::interrupt() is sticky: once it's called, trying to 90803 run any statement on that database will fail with a 90804 SQLITE_INTERRUPT error code. 90805 (WebCore::SQLiteDatabase::SQLiteDatabase): 90806 (WebCore::SQLiteDatabase::close): 90807 (WebCore::SQLiteDatabase::interrupt): 90808 (WebCore::SQLiteDatabase::isInterrupted): 90809 90810 * platform/sql/SQLiteDatabase.h: Added a mutex that can used by 90811 SQLiteStatement to check if the database was interrupted. 90812 (WebCore::SQLiteDatabase::databaseMutex): 90813 90814 * platform/sql/SQLiteStatement.cpp: Changed prepare() and step() 90815 to check if the database was interrupted, before trying to prepare 90816 or run the statement. The other methods don't need to hold on to 90817 the DB lock while running, because they're fast, so we don't need 90818 to interrupt them. 90819 (WebCore::SQLiteStatement::prepare): 90820 (WebCore::SQLiteStatement::step): 90821 90822 * storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt() 90823 and isInterrupted() visible to WebSQLDatabases classes. 90824 (WebCore::AbstractDatabase::interrupt): 90825 (WebCore::AbstractDatabase::isInterrupted): 90826 * storage/AbstractDatabase.h: 90827 90828 * storage/DatabaseTracker.cpp: Added a method to interrupt all 90829 databases in a given context. 90830 (WebCore::DatabaseTracker::interruptAllDatabasesForContext): 90831 * storage/DatabaseTracker.h: 90832 90833 * storage/SQLStatement.cpp: Changed the exception/error reported 90834 when a statement is interrupted. 90835 (WebCore::SQLStatement::execute): 90836 * storage/SQLStatementSync.cpp: 90837 (WebCore::SQLStatementSync::execute): 90838 90839 * storage/SQLTransaction.cpp: Changed the code to release the 90840 callback objects as soon as they're not needed. 90841 (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase): 90842 Changed this method to not schedule the next transaction step when 90843 the database is interrupted. 90844 (WebCore::SQLTransaction::performNextStep): 90845 (WebCore::SQLTransaction::performPendingCallback): 90846 (WebCore::SQLTransaction::deliverTransactionCallback): 90847 (WebCore::SQLTransaction::postflightAndCommit): 90848 (WebCore::SQLTransaction::deliverTransactionErrorCallback): 90849 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): 90850 * storage/SQLTransaction.h: 90851 90852 * storage/chromium/DatabaseTrackerChromium.cpp: Added a method to 90853 interrupt all databases in a given context. 90854 (WebCore::DatabaseTracker::interruptAllDatabasesForContext): 90855 90856 * workers/WorkerThread.cpp: 90857 (WebCore::WorkerThread::stop): Added a call to 90858 DatabaseTracker::interruptAllDatabasesForContext(). 90859 90860 2010-07-30 Simon Fraser <simon.fraser (a] apple.com> 90861 90862 Reviewed by Darin Adler. 90863 90864 connect-compositing-iframe2.html test sometimes shows blank iframe content 90865 https://bugs.webkit.org/show_bug.cgi?id=42046 90866 90867 Hooking up compositing iframes requires setNeedsStyleRecalc(SyntheticStyleChange) to 90868 always result in a call to RenderLayer::styleChanged(). However, the semantics of 90869 setNeedsStyleRecalc() was that each call would overwrite the existing styleChangeType, 90870 allowing a "lesser" style change to override a "greater" one. In the test content, 90871 SyntheticStyleChange was being replaced by FullStyleChange when the classname changed. 90872 This resulted in RenderLayer::styleChanged() not being called. 90873 90874 Fix by changing the behavior of setNeedsStyleRecalc() to only touch the style change 90875 type if a "lesser" change is being replaced with a "greater" one. This required adding 90876 a new clearNeedsStyleRecalc() method to reset the style change type to NoStyleChange. 90877 90878 In addition, in Node::setNeedsStyleRecalc(), only propagate the childNeedsStyleRecalc 90879 up the parent change if the node was not already needing recalc. In order to fix issues 90880 with attaching, this required new call to clearNeedsStyleRecalc() at the end of attach(). 90881 90882 * manual-tests/compositing/missing-iframe-contents.html: Added. 90883 * manual-tests/compositing/resources/composited-subframe.html: Copied from LayoutTests/compositing/iframes/resources/composited-subframe.html. 90884 90885 * dom/Document.cpp: 90886 (WebCore::Document::recalcStyle): Call clearNeedsStyleRecalc(). 90887 * dom/Element.cpp: 90888 (WebCore::Element::recalcStyle): Call clearNeedsStyleRecalc(). 90889 90890 * dom/Node.h: 90891 (WebCore::Node::clearNeedsStyleRecalc): New method. 90892 * dom/Node.cpp: 90893 (WebCore::Node::setNeedsStyleRecalc): Only call setStyleChange() if the change type 90894 is greater than the current change type. 90895 (WebCore::Node::attach): After attaching, we can call clearNeedsStyleRecalc(). 90896 90897 * dom/Text.cpp: 90898 (WebCore::Text::recalcStyle): Call clearNeedsStyleRecalc(). 90899 * html/HTMLFrameSetElement.cpp: 90900 (WebCore::HTMLFrameSetElement::recalcStyle): Call clearNeedsStyleRecalc(). 90901 90902 2010-07-30 W. James MacLean <wjmaclean (a] google.com> 90903 90904 Reviewed by Nikolas Zimmermann. 90905 90906 SVG - numeric overflow for very large elements 90907 https://bugs.webkit.org/show_bug.cgi?id=25645 90908 90909 Two of the expected test outputs were incorrect now that parsing of large values 90910 is handled correctly. 90911 - Revised FloatRect to remove bad float-to-int conversions in enclosingIntRect() 90912 - Revised _parseNumber to do right-to-left float-based parsing of input value 90913 90914 Test: svg/custom/massive-coordinates.svg 90915 90916 * platform/graphics/FloatRect.cpp: 90917 (WebCore::safeFloatToInt): 90918 (WebCore::enclosingIntRect): 90919 * svg/SVGParserUtilities.cpp: 90920 (WebCore::_parseNumber): 90921 90922 2010-07-30 James Robinson <jamesr (a] chromium.org> 90923 90924 Reviewed by Darin Fisher. 90925 90926 [chromium] Make the GLES2 texture map generic and teach ImageSkia and ImageBufferSkia about GLES2 90927 https://bugs.webkit.org/show_bug.cgi?id=43218 90928 90929 This makes the GLES2Canvas' TextureHashMap key on void* instead of NativeImagePtr 90930 to make it easier to use with other backends. It also teaches ImageSkia how 90931 to draw to a GLES2Canvas instead of a skia buffer. 90932 90933 No change in functionality (yet), no new tests. 90934 90935 * platform/graphics/chromium/GLES2Canvas.cpp: 90936 (WebCore::GLES2Canvas::GLES2Canvas): 90937 (WebCore::GLES2Canvas::createTexture): 90938 (WebCore::GLES2Canvas::getTexture): 90939 * platform/graphics/chromium/GLES2Canvas.h: 90940 * platform/graphics/skia/ImageBufferSkia.cpp: 90941 (WebCore::ImageBuffer::getUnmultipliedImageData): 90942 (WebCore::ImageBuffer::getPremultipliedImageData): 90943 * platform/graphics/skia/ImageSkia.cpp: 90944 (WebCore::drawBitmapGLES2): 90945 (WebCore::BitmapImage::draw): 90946 (WebCore::BitmapImageSingleFrameSkia::draw): 90947 90948 2010-07-30 Yong Li <yoli (a] rim.com> 90949 90950 Reviewed by Darin Adler. 90951 90952 Implement SVGScriptElement::shouldExecuteAsJavaScript() otherwise 90953 SVGScriptElement cannot run when XHTMLMP is enabled. 90954 https://bugs.webkit.org/show_bug.cgi?id=43267 90955 90956 No test needed, because it fails all SVG <script> tests when XHTMLMP is on. 90957 90958 * svg/SVGScriptElement.cpp: 90959 (WebCore::SVGScriptElement::shouldExecuteAsJavaScript): 90960 * svg/SVGScriptElement.h: 90961 90962 2010-07-30 Chris Fleizach <cfleizach (a] apple.com> 90963 90964 Reviewed by Darin Adler. 90965 90966 Style errors in Navigator.h 90967 https://bugs.webkit.org/show_bug.cgi?id=43262 90968 90969 Fixing style changes. No new tests. 90970 90971 * page/Navigator.h: 90972 (WebCore::Navigator::create): 90973 (WebCore::Navigator::frame): 90974 (WebCore::Navigator::optionalGeolocation): 90975 90976 2010-07-27 Darin Fisher <darin (a] chromium.org> 90977 90978 Reviewed by Brady Eidson. 90979 90980 History.pushState() + navigation operates on top frame when called from 90981 nested context 90982 https://bugs.webkit.org/show_bug.cgi?id=43080 90983 90984 Test: fast/loader/stateobjects/pushstate-in-iframe.html 90985 90986 * loader/HistoryController.cpp: 90987 (WebCore::HistoryController::pushState): createTreeItem should be 90988 called on the top-most HistoryController so that we properly clone 90989 the HistoryItem tree starting at the root node. 90990 90991 2010-07-30 fsamuel (a] chromium.org <fsamuel (a] chromium.org> 90992 90993 Reviewed by Dimitri Glazkov. 90994 90995 Expand SVG Attribute Macros 90996 https://bugs.webkit.org/show_bug.cgi?id=43254 90997 90998 Expanded SVG Attribute Macros to reduce debugging headache. 90999 91000 No change in behavior, so no new tests. 91001 91002 * rendering/style/SVGRenderStyle.h: Expanded and removed references to SVG_RS_DEFINE_ATTRIBUTE* macros. 91003 * rendering/style/SVGRenderStyleDefs.h: Removed definitons for expanded macros. 91004 91005 2010-07-30 Kinuko Yasuda <kinuko (a] chromium.org> 91006 91007 Reviewed by Dumitru Daniliuc. 91008 91009 Add callback arguments support to binding code generator scripts 91010 https://bugs.webkit.org/show_bug.cgi?id=43130 91011 91012 Tests: bindings/scripts/test/TestObj.idl 91013 91014 * bindings/scripts/CodeGeneratorJS.pm: 91015 * bindings/scripts/CodeGeneratorV8.pm: 91016 91017 * bindings/scripts/test/JS/JSTestObj.cpp: 91018 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg): 91019 (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg): 91020 (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg): 91021 * bindings/scripts/test/JS/JSTestObj.h: 91022 * bindings/scripts/test/TestObj.idl: 91023 * bindings/scripts/test/V8/V8TestObj.cpp: 91024 (WebCore::TestObjInternal::methodWithCallbackArgCallback): 91025 (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): 91026 (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): 91027 (WebCore::ConfigureV8TestObjTemplate): 91028 91029 2010-07-30 Anders Carlsson <andersca (a] apple.com> 91030 91031 Reviewed by Sam Weinig. 91032 91033 Implement NPN_InvokeDefault 91034 https://bugs.webkit.org/show_bug.cgi?id=43266 91035 91036 * bindings/js/JSPluginElementFunctions.cpp: 91037 (WebCore::isPluginElement): 91038 Add convenience function. 91039 91040 (WebCore::pluginInstance): 91041 Call isPluginElement. 91042 91043 (WebCore::pluginScriptObjectFromPluginViewBase): 91044 Given an JSHTMLElement, ask the PluginViewBase for the scriptable object. 91045 91046 (WebCore::pluginScriptObject): 91047 Call isPluginElement. Call pluginScriptObjectFromPluginViewBase. 91048 91049 (WebCore::callPlugin): 91050 Get the script object, assemble the arguments and call "call" directly. 91051 91052 (WebCore::runtimeObjectGetCallData): 91053 Try to get the script object from the PluginViewBase first. 91054 91055 * plugins/PluginViewBase.h: 91056 (WebCore::PluginViewBase::scriptObject): 91057 Remove ExecState parameter. 91058 91059 2010-07-30 Adam Roben <aroben (a] apple.com> 91060 91061 Roll our r64361 and r64363 91062 91063 We can't make these changes until QuartzCore.lib is included in 91064 WebKitSupportLibrary. 91065 91066 2010-07-30 Adam Roben <aroben (a] apple.com> 91067 91068 Remove uses of CACFContextRef and CARender* from WebCore 91069 91070 These types are now wrapped in a WKCACFContext type exported by 91071 WebKitSystemInterface. 91072 91073 Fixes <http://webkit.org/b/43244>. 91074 91075 Reviewed by Sam Weinig. 91076 91077 * platform/graphics/win/WKCACFContextFlusher.cpp: 91078 (WebCore::WKCACFContextFlusher::addContext): 91079 (WebCore::WKCACFContextFlusher::removeContext): 91080 (WebCore::WKCACFContextFlusher::flushAllContexts): 91081 * platform/graphics/win/WKCACFContextFlusher.h: 91082 Changed to use WKCACFContext. We don't retain/release the context when 91083 putting it into/taking it out of the set. WKCACFContext is not a 91084 ref-counted type, so we can't retain/release it, but the 91085 retain/release was also unnecessary as WKCACFLayerRenderer calls 91086 removeContext before the context is destroyed. 91087 91088 * platform/graphics/win/WKCACFLayer.cpp: 91089 (WebCore::WKCACFLayer::becomeRootLayerForContext): 91090 * platform/graphics/win/WKCACFLayer.h: 91091 Changed to use WKCACFContext. 91092 91093 * platform/graphics/win/WKCACFLayerRenderer.cpp: 91094 (WebCore::WKCACFLayerRenderer::didFlushContext): 91095 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): 91096 (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer): 91097 (WebCore::WKCACFLayerRenderer::layerTreeDidChange): 91098 (WebCore::WKCACFLayerRenderer::createRenderer): 91099 (WebCore::WKCACFLayerRenderer::destroyRenderer): 91100 (WebCore::WKCACFLayerRenderer::render): Also replaced uses of 91101 CGSRegion with WebKitSystemInterface functions/types. 91102 (WebCore::WKCACFLayerRenderer::resetDevice): 91103 * platform/graphics/win/WKCACFLayerRenderer.h: 91104 Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext 91105 with a single WKCACFContext, which wraps all three. We hold a bare 91106 pointer to it and destroy it in our destructor. 91107 91108 2010-07-30 Adam Roben <aroben (a] apple.com> 91109 91110 Remove knowledge of WKCACFContextFlusher from WKCACFLayer 91111 91112 Fixes <http://webkit.org/b/43248> WKCACFLayer shouldn't know about 91113 WKCACFContextFlusher 91114 91115 Reviewed by Sam Weinig. 91116 91117 * platform/graphics/win/WKCACFLayer.cpp: 91118 (WebCore::WKCACFLayer::setNeedsCommit): Don't bother calling to 91119 WKCACFContextFlusher. Our root layer will do this for us. 91120 91121 * platform/graphics/win/WKCACFLayerRenderer.cpp: 91122 (WebCore::WKCACFRootLayer::setNeedsRender): Changed to call the new 91123 layerTreeDidChange function. 91124 (WebCore::WKCACFLayerRenderer::layerTreeDidChange): Added. Tells 91125 WKCACFContextFlusher that the context has changed, and schedules a 91126 render. 91127 91128 * platform/graphics/win/WKCACFLayerRenderer.h: Added 91129 layerTreeDidChange. 91130 91131 2010-07-29 Jeremy Orlow <jorlow (a] chromium.org> 91132 91133 Reviewed by Steve Block. 91134 91135 Rename all the IDBIndex classses to match the latest conventions 91136 https://bugs.webkit.org/show_bug.cgi?id=43190 91137 91138 No functionality has changed. 91139 91140 IDBIndexRequest -> IDBIndex in the spec. So that's the first change. 91141 IDBIndex was the name of our interface class though, so we need to rename 91142 it to get it out of the way. While we're at it, we might as well clean 91143 up the naming in general to make things more clear. In the future, we're 91144 going to need another layer (yes, yuck) which will be shared by the async 91145 and sync classes which will do caching and other optimizations. That will 91146 then connect to the backend. We also added "Interface" to make it more 91147 clear that's what the file/class is. 91148 91149 Existing layout tests are enough since nothing should change as far as JavaScript can see. 91150 91151 * Android.derived.jscbindings.mk: 91152 * Android.derived.v8bindings.mk: 91153 * Android.mk: 91154 * CMakeLists.txt: 91155 * DerivedSources.cpp: 91156 * DerivedSources.make: 91157 * GNUmakefile.am: 91158 * WebCore.gypi: 91159 * WebCore.pri: 91160 * WebCore.pro: 91161 * WebCore.xcodeproj/project.pbxproj: 91162 * bindings/js/JSIDBAnyCustom.cpp: 91163 (WebCore::toJS): 91164 * bindings/v8/custom/V8IDBAnyCustom.cpp: 91165 (WebCore::toV8): 91166 * storage/IDBAny.cpp: 91167 (WebCore::IDBAny::idbIndex): 91168 (WebCore::IDBAny::set): 91169 * storage/IDBAny.h: 91170 (WebCore::IDBAny::): 91171 * storage/IDBCallbacks.h: 91172 * storage/IDBIndex.cpp: Added. 91173 (WebCore::IDBIndex::IDBIndex): 91174 (WebCore::IDBIndex::~IDBIndex): 91175 * storage/IDBIndex.h: 91176 (WebCore::IDBIndex::create): 91177 (WebCore::IDBIndex::name): 91178 (WebCore::IDBIndex::keyPath): 91179 (WebCore::IDBIndex::unique): 91180 * storage/IDBIndex.idl: Added. 91181 * storage/IDBIndexBackendImpl.cpp: Added. 91182 (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): 91183 (WebCore::IDBIndexBackendImpl::~IDBIndexBackendImpl): 91184 * storage/IDBIndexBackendImpl.h: Added. 91185 (WebCore::IDBIndexBackendImpl::create): 91186 (WebCore::IDBIndexBackendImpl::name): 91187 (WebCore::IDBIndexBackendImpl::keyPath): 91188 (WebCore::IDBIndexBackendImpl::unique): 91189 * storage/IDBIndexBackendInterface.h: Added. 91190 (WebCore::IDBIndexBackendInterface::~IDBIndexBackendInterface): 91191 * storage/IDBIndexImpl.cpp: Removed. 91192 * storage/IDBIndexImpl.h: Removed. 91193 * storage/IDBIndexRequest.cpp: Removed. 91194 * storage/IDBIndexRequest.h: Removed. 91195 * storage/IDBIndexRequest.idl: Removed. 91196 * storage/IDBObjectStore.h: 91197 * storage/IDBObjectStoreImpl.cpp: 91198 (WebCore::IDBObjectStoreImpl::createIndex): 91199 (WebCore::IDBObjectStoreImpl::index): 91200 * storage/IDBObjectStoreImpl.h: 91201 * storage/IDBObjectStoreRequest.cpp: 91202 (WebCore::IDBObjectStoreRequest::index): 91203 * storage/IDBObjectStoreRequest.h: 91204 * storage/IDBObjectStoreRequest.idl: 91205 * storage/IDBRequest.cpp: 91206 (WebCore::IDBRequest::onSuccess): 91207 * storage/IDBRequest.h: 91208 91209 2010-07-30 Rafael Antognolli <antognolli (a] profusion.mobi> 91210 91211 Reviewed by Antonio Gomes. 91212 91213 [EFL] Add library version and soname to EFL generated libraries and binary. 91214 https://bugs.webkit.org/show_bug.cgi?id=43212 91215 91216 Add version and soname to libwebcore.so in case of linking as shared 91217 library. 91218 91219 No new feature, so no new tests. 91220 91221 * CMakeLists.txt: 91222 91223 2010-07-30 Steve Block <steveblock (a] google.com> 91224 91225 Reviewed by Steve Block. 91226 91227 Add LayoutTestController methods to test DeviceOrientation 91228 https://bugs.webkit.org/show_bug.cgi?id=39589 91229 91230 This patch does not hook up the new LayoutTestController method to WebKit 91231 for any platform. This will be done in later patches. 91232 https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac. 91233 91234 Test: fast/dom/DeviceOrientation/basic-operation.html 91235 91236 * Android.mk: 91237 * CMakeLists.txt: 91238 * GNUmakefile.am: 91239 * WebCore.exp.in: 91240 * WebCore.gypi: 91241 * WebCore.pro: 91242 * WebCore.vcproj/WebCore.vcproj: 91243 * WebCore.xcodeproj/project.pbxproj: 91244 * dom/DeviceOrientationClient.h: 91245 (WebCore::DeviceOrientationClient::~DeviceOrientationClient): 91246 * dom/DeviceOrientationController.cpp: 91247 (WebCore::DeviceOrientationController::DeviceOrientationController): 91248 * dom/DeviceOrientationEvent.cpp: 91249 * platform/mock/DeviceOrientationClientMock.cpp: Added. 91250 (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock): 91251 (WebCore::DeviceOrientationClientMock::setController): 91252 (WebCore::DeviceOrientationClientMock::startUpdating): 91253 (WebCore::DeviceOrientationClientMock::stopUpdating): 91254 (WebCore::DeviceOrientationClientMock::setOrientation): 91255 (WebCore::DeviceOrientationClientMock::timerFired): 91256 * platform/mock/DeviceOrientationClientMock.h: Added. 91257 (WebCore::DeviceOrientationClientMock::lastOrientation): 91258 91259 2010-07-30 Satish Sampath <satish (a] chromium.org> 91260 91261 Reviewed by Jeremy Orlow. 91262 91263 Add a mock in WebCore for testing speech input 91264 https://bugs.webkit.org/show_bug.cgi?id=42603 91265 91266 Layout tests will be added in a subsequent patch using this mock. 91267 91268 * Android.mk: 91269 * GNUmakefile.am: 91270 * WebCore.gypi: 91271 * WebCore.pro: 91272 * WebCore.vcproj/WebCore.vcproj: 91273 * WebCore.xcodeproj/project.pbxproj: 91274 * platform/mock/SpeechInputClientMock.cpp: Added. 91275 (WebCore::SpeechInputClientMock::SpeechInputClientMock): 91276 (WebCore::SpeechInputClientMock::startRecognition): 91277 (WebCore::SpeechInputClientMock::stopRecording): 91278 (WebCore::SpeechInputClientMock::cancelRecognition): 91279 (WebCore::SpeechInputClientMock::setRecognitionResult): 91280 (WebCore::SpeechInputClientMock::timerFired): 91281 * platform/mock/SpeechInputClientMock.h: Added. 91282 91283 2010-07-30 Nikolas Zimmermann <nzimmermann (a] rim.com> 91284 91285 Reviewed by Dirk Schulze. 91286 91287 Optimize SVGResources memory usage 91288 https://bugs.webkit.org/show_bug.cgi?id=43236 91289 91290 Instead of storing pointers to all possible resources that could be applied to an element, group them in three categories: 91291 clipper/filter/masker, marker-start/marker-mid/marker-end, and fill/stroke. 91292 91293 Only build the cached resources data for elements where the properties can be applied to. Maintain a static list of tagnames 91294 for each of the three categories, to avoid doing unncessary work. 91295 91296 Doesn't affect any tests. 91297 91298 * rendering/SVGResources.cpp: 91299 (WebCore::SVGResources::SVGResources): 91300 (WebCore::clipperFilterMaskerTags): 91301 (WebCore::markerTags): 91302 (WebCore::fillAndStrokeTags): 91303 (WebCore::SVGResources::buildCachedResources): 91304 (WebCore::SVGResources::invalidateClient): 91305 (WebCore::SVGResources::resourceDestroyed): 91306 (WebCore::SVGResources::buildSetOfResources): 91307 (WebCore::SVGResources::setClipper): 91308 (WebCore::SVGResources::resetClipper): 91309 (WebCore::SVGResources::setFilter): 91310 (WebCore::SVGResources::resetFilter): 91311 (WebCore::SVGResources::setMarkerStart): 91312 (WebCore::SVGResources::resetMarkerStart): 91313 (WebCore::SVGResources::setMarkerMid): 91314 (WebCore::SVGResources::resetMarkerMid): 91315 (WebCore::SVGResources::setMarkerEnd): 91316 (WebCore::SVGResources::resetMarkerEnd): 91317 (WebCore::SVGResources::setMasker): 91318 (WebCore::SVGResources::resetMasker): 91319 (WebCore::SVGResources::setFill): 91320 (WebCore::SVGResources::resetFill): 91321 (WebCore::SVGResources::setStroke): 91322 (WebCore::SVGResources::resetStroke): 91323 (WebCore::SVGResources::dump): 91324 * rendering/SVGResources.h: 91325 (WebCore::SVGResources::clipper): 91326 (WebCore::SVGResources::filter): 91327 (WebCore::SVGResources::markerStart): 91328 (WebCore::SVGResources::markerMid): 91329 (WebCore::SVGResources::markerEnd): 91330 (WebCore::SVGResources::masker): 91331 (WebCore::SVGResources::fill): 91332 (WebCore::SVGResources::stroke): 91333 (WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData): 91334 (WebCore::SVGResources::ClipperFilterMaskerData::create): 91335 (WebCore::SVGResources::MarkerData::MarkerData): 91336 (WebCore::SVGResources::MarkerData::create): 91337 (WebCore::SVGResources::FillStrokeData::FillStrokeData): 91338 (WebCore::SVGResources::FillStrokeData::create): 91339 91340 2010-07-26 Andrei Popescu <andreip (a] google.com> 91341 91342 Reviewed by Jeremy Orlow. 91343 91344 [IndexedDB] IndexedDatabase should be called IDBFactory. 91345 https://bugs.webkit.org/show_bug.cgi?id=42967 91346 91347 Rename IndexedDatabase to IDBFactory to match the specification. 91348 91349 Also implement the following new naming convention: 91350 IDBFoo IDL interfaces are implemented using IDBFoo C++ classes. 91351 IDBFoo objects have pointers to IDBFooBackendInterface objects. 91352 IDBFooBackendInterface is implemented by IDBFooBackendImpl and 91353 IDBFooBackendProxy (for Chromium). 91354 91355 No new tests needed, just renaming. 91356 91357 * Android.derived.jscbindings.mk: 91358 * Android.derived.v8bindings.mk: 91359 * Android.mk: 91360 * CMakeLists.txt: 91361 * DerivedSources.cpp: 91362 * DerivedSources.make: 91363 * GNUmakefile.am: 91364 * WebCore.gyp/WebCore.gyp: 91365 * WebCore.gypi: 91366 * WebCore.pri: 91367 * WebCore.pro: 91368 * WebCore.xcodeproj/project.pbxproj: 91369 * bindings/js/JSIDBAnyCustom.cpp: 91370 (WebCore::toJS): 91371 * bindings/v8/custom/V8IDBAnyCustom.cpp: 91372 (WebCore::toV8): 91373 * page/DOMWindow.cpp: 91374 (WebCore::DOMWindow::clear): 91375 (WebCore::DOMWindow::indexedDB): 91376 * page/DOMWindow.h: 91377 * page/DOMWindow.idl: 91378 * page/PageGroup.cpp: 91379 (WebCore::PageGroup::idbFactory): 91380 * page/PageGroup.h: 91381 * platform/chromium/ChromiumBridge.h: 91382 * storage/IDBAny.cpp: 91383 (WebCore::IDBAny::idbFactory): 91384 (WebCore::IDBAny::set): 91385 * storage/IDBAny.h: 91386 (WebCore::IDBAny::): 91387 * storage/IDBDatabaseRequest.cpp: 91388 * storage/IDBFactory.cpp: Added. 91389 (WebCore::IDBFactory::IDBFactory): 91390 (WebCore::IDBFactory::~IDBFactory): 91391 (WebCore::IDBFactory::open): 91392 * storage/IDBFactory.h: Added. 91393 (WebCore::IDBFactory::create): 91394 * storage/IDBFactory.idl: Added. 91395 * storage/IDBFactoryBackendInterface.cpp: Added. 91396 (WebCore::IDBFactoryBackendInterface::create): 91397 * storage/IDBFactoryBackendInterface.h: Added. 91398 (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface): 91399 * storage/IDBFactoryBackendImpl.cpp: Added. 91400 (WebCore::IDBFactoryBackendImpl::create): 91401 (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): 91402 (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl): 91403 (WebCore::IDBFactoryBackendImpl::open): 91404 * storage/IDBFactoryBackendImpl.h: Added. 91405 * storage/IDBKeyRange.cpp: 91406 (WebCore::IDBKeyRange::only): 91407 (WebCore::IDBKeyRange::leftBound): 91408 (WebCore::IDBKeyRange::rightBound): 91409 (WebCore::IDBKeyRange::bound): 91410 * storage/IDBKeyRange.h: 91411 * storage/IDBKeyRange.idl: 91412 * storage/IndexedDatabase.cpp: Removed. 91413 * storage/IndexedDatabase.h: Removed. 91414 * storage/IndexedDatabaseImpl.cpp: Removed. 91415 * storage/IndexedDatabaseImpl.h: Removed. 91416 * storage/IndexedDatabaseRequest.cpp: Removed. 91417 * storage/IndexedDatabaseRequest.h: Removed. 91418 * storage/IndexedDatabaseRequest.idl: Removed. 91419 * storage/chromium/IDBFactoryBackendInterface.cpp: Added. 91420 (WebCore::IDBFactoryBackendInterface::create): 91421 * storage/chromium/IndexedDatabase.cpp: Removed. 91422 91423 2010-07-29 Alexander Pavlov <apavlov (a] chromium.org> 91424 91425 Reviewed by Pavel Feldman. 91426 91427 Web Inspector: Crash on refresh with a comment selected in the Elements panel 91428 https://bugs.webkit.org/show_bug.cgi?id=43183 91429 91430 * inspector/InspectorDOMAgent.cpp: 91431 (WebCore::InspectorDOMAgent::nodeForPath): 91432 * inspector/front-end/ElementsPanel.js: 91433 (WebInspector.ElementsPanel.prototype.reset): 91434 91435 2010-07-30 Renata Hodovan <reni (a] inf.u-szeged.hu> 91436 91437 Reviewed by Nikolas Zimmermann. 91438 91439 feTurbulence is not implemented. 91440 https://bugs.webkit.org/show_bug.cgi?id=5864 91441 91442 This code is based on the previous implementation of 91443 Dirk Schulze, extended with some modification and optimization. 91444 91445 LayoutTests: Updating expected values for turbulence filter. 91446 svg/W3C-SVG-1.1/filters-turb-01-f.svg 91447 91448 * svg/SVGFETurbulenceElement.cpp: 91449 (WebCore::SVGFETurbulenceElement::build): 91450 * svg/graphics/filters/SVGFETurbulence.cpp: 91451 (WebCore::FETurbulence::FETurbulence): 91452 (WebCore::FETurbulence::create): 91453 (WebCore::FETurbulence::PaintingData::PaintingData): 91454 (WebCore::FETurbulence::PaintingData::random): 91455 (WebCore::smoothCurve): 91456 (WebCore::linearInterpolation): 91457 (WebCore::FETurbulence::initPaint): 91458 (WebCore::checkNoise): 91459 (WebCore::FETurbulence::noise2D): 91460 (WebCore::Noise::if): 91461 (WebCore::FETurbulence::calculateTurbulenceValueForPoint): 91462 (WebCore::FETurbulence::apply): 91463 * svg/graphics/filters/SVGFETurbulence.h: 91464 (WebCore::): 91465 91466 2010-07-29 Martin Robinson <mrobinson (a] igalia.com> 91467 91468 Reviewed by Dirk Schulze. 91469 91470 Cairo: Need to implement GraphicsContext::clipConvexPolygon() 91471 https://bugs.webkit.org/show_bug.cgi?id=41308 91472 91473 Implement clipConvexPolygon for Cairo ports and enable new path based 91474 borders for that port as well. 91475 91476 * platform/graphics/cairo/GraphicsContextCairo.cpp: 91477 (WebCore::addConvexPolygonToContext): Add this helper method. 91478 (WebCore::GraphicsContext::drawConvexPolygon): Use the new addConvexPolygonToContext helper. 91479 (WebCore::GraphicsContext::clipConvexPolygon): Implement this method. 91480 * rendering/RenderObject.h: Enable path based borders for Cairo. 91481 91482 2010-07-29 Ryosuke Niwa <rniwa (a] webkit.org> 91483 91484 Reviewed by Darin Adler. 91485 91486 InsertOrderedList does not switch the list type properly when it has an inner list. 91487 https://bugs.webkit.org/show_bug.cgi?id=43166 91488 91489 The bug was caused by forcedCreateList was not set to true when the start and the end 91490 of the selection lies in the same list. Added selectionHasListOfType to fix this problem. 91491 91492 WebKit used not to convert the outer lists even when the list is fully selected. 91493 Corrected this behavior by converting the entire list at once when the list is fully selected. 91494 To decide whether or not a list is fully selected, added currentSelection argument to doApplyForSingleParagraph. 91495 91496 Tests: editing/execCommand/switch-list-type-with-inner-list.html 91497 editing/execCommand/switch-list-type-with-orphaned-li.html 91498 91499 * editing/InsertListCommand.cpp: 91500 (WebCore::InsertListCommand::mergeWithNeighboringLists): Extracted the code to merge lists. 91501 (WebCore::InsertListCommand::selectionHasListOfType): attachment.cgi 91502 (WebCore::InsertListCommand::doApply): Calls selectionHasListOfType. 91503 (WebCore::InsertListCommand::doApplyForSingleParagraph): See above. 91504 (WebCore::InsertListCommand::listifyParagraph): Calls mergeWithNeighboringLists. 91505 * editing/InsertListCommand.h: 91506 * editing/htmlediting.cpp: 91507 (WebCore::canMergeLists): Ensures lists being merged are instances of HTMLElement. 91508 (WebCore::isNodeVisiblyContainedWithin): Works properly when one end is inside the range. 91509 91510 2010-07-29 Martin Robinson <mrobinson (a] igalia.com> 91511 91512 Reviewed by Dirk Schulze. 91513 91514 [Cairo] Bring behavior of paths on the Cairo GraphicsContext into line with the CoreGraphics port 91515 https://bugs.webkit.org/show_bug.cgi?id=41732 91516 91517 Do not apply paths added to the Cairo GraphicsContext, until they are used. 91518 This prevents drawing routines such as fillRect from interacting with any 91519 path which callers are constructing on the GraphicsContext. 91520 91521 This behavior is necessary to close bug https://bugs.webkit.org/show_bug.cgi?id=41308 91522 so tests for that issue will test this fix. 91523 91524 * platform/graphics/cairo/GraphicsContextCairo.cpp: 91525 (WebCore::appendPathToCairoContext): Added. A helper method which adds a path 91526 to a native Cairo context. 91527 (WebCore::setPathOnCairoContext): Added. Like appendPathToCairoContext, but clears the 91528 existing path first. 91529 (WebCore::appendWebCorePathToCairoContext): Added. Like appendPathToCairoContext, but 91530 operates on a WebCore path. 91531 (WebCore::fillCurrentCairoPath): Added. Helper which fills the current cairo context path. 91532 (WebCore::strokeCurrentCairoPath): Added. Helper which strokes the current cairo context path. 91533 (WebCore::GraphicsContext::drawEllipse): Only clear the Cairo path if cairo_stroke 91534 was not called, because cairo_stroke implicitly clears the path. 91535 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 91536 (WebCore::GraphicsContext::fillPath): Copy the path from m_pendingPath to the context 91537 and clear m_pendingPath, instead of relying on the pre-existing context path. Do the 91538 actual fill via the new helper. 91539 (WebCore::GraphicsContext::strokePath): Ditto. 91540 (WebCore::GraphicsContext::drawPath): Ditto. 91541 (WebCore::GraphicsContext::fillRect): Use the new fillCurrentCairoPath helper. 91542 (WebCore::GraphicsContext::drawFocusRing): Use the new appendWebCorePathToCairoContext helper instead 91543 of addPath (which will blow away any path callers are building). 91544 (WebCore::GraphicsContext::addInnerRoundedRectClip): Use the new appendWebCorePathToCairoContext helper instead 91545 of addPath (which will blow away any path callers are building). 91546 (WebCore::GraphicsContext::strokeRect): Use the new strokeCurrentCairoPath helper. 91547 (WebCore::GraphicsContext::beginPath): Clear out m_pendingPath here instead of the main native context. 91548 (WebCore::GraphicsContext::addPath): Add the path to m_pendingPath instead of the main native context. 91549 Also ensure that the transformation matrix of the m_pendingPath is equal to that of the main 91550 cairo context. 91551 (WebCore::GraphicsContext::clipOut): Use the appendWebCorePathToCairoContext helper here. 91552 (WebCore::GraphicsContext::fillRoundedRect): Ditto and remove an unnecessary beginPath call. 91553 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Add a new m_pendingPath member. 91554 91555 2010-07-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 91556 91557 Unreviewed, rolling out r64313. 91558 http://trac.webkit.org/changeset/64313 91559 https://bugs.webkit.org/show_bug.cgi?id=43233 91560 91561 Some Chromium bots are not happy with it for some unknown 91562 reason. (Requested by dumi on #webkit). 91563 91564 * bindings/js/JSCustomVoidCallback.cpp: 91565 (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): 91566 * bindings/scripts/CodeGeneratorJS.pm: 91567 * bindings/scripts/test/JS/JSTestCallback.cpp: 91568 (WebCore::JSTestCallback::~JSTestCallback): 91569 * platform/sql/SQLiteDatabase.cpp: 91570 (WebCore::SQLiteDatabase::SQLiteDatabase): 91571 (WebCore::SQLiteDatabase::close): 91572 (WebCore::SQLiteDatabase::lock): 91573 (WebCore::SQLiteDatabase::unlock): 91574 * platform/sql/SQLiteDatabase.h: 91575 * platform/sql/SQLiteStatement.cpp: 91576 (WebCore::SQLiteStatement::prepare): 91577 (WebCore::SQLiteStatement::step): 91578 * storage/AbstractDatabase.cpp: 91579 * storage/AbstractDatabase.h: 91580 * storage/DatabaseTracker.cpp: 91581 * storage/DatabaseTracker.h: 91582 * storage/SQLStatement.cpp: 91583 (WebCore::SQLStatement::execute): 91584 * storage/SQLStatementSync.cpp: 91585 (WebCore::SQLStatementSync::execute): 91586 * storage/SQLTransaction.cpp: 91587 (WebCore::SQLTransaction::checkAndHandleClosedDatabase): 91588 (WebCore::SQLTransaction::performNextStep): 91589 (WebCore::SQLTransaction::performPendingCallback): 91590 (WebCore::SQLTransaction::deliverTransactionCallback): 91591 (WebCore::SQLTransaction::postflightAndCommit): 91592 (WebCore::SQLTransaction::deliverTransactionErrorCallback): 91593 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): 91594 * storage/SQLTransaction.h: 91595 * storage/chromium/DatabaseTrackerChromium.cpp: 91596 * workers/WorkerThread.cpp: 91597 (WebCore::WorkerThread::stop): 91598 91599 2010-07-29 Martin Robinson <mrobinson (a] igalia.com> 91600 91601 Unreviewed, rolling out r64318. 91602 http://trac.webkit.org/changeset/64318 91603 https://bugs.webkit.org/show_bug.cgi?id=41732 91604 91605 This change broke many tests. 91606 91607 * platform/graphics/cairo/GraphicsContextCairo.cpp: 91608 (WebCore::GraphicsContext::drawEllipse): 91609 (WebCore::GraphicsContext::drawConvexPolygon): 91610 (WebCore::GraphicsContext::fillPath): 91611 (WebCore::GraphicsContext::strokePath): 91612 (WebCore::GraphicsContext::drawPath): 91613 (WebCore::GraphicsContext::drawFocusRing): 91614 (WebCore::GraphicsContext::addInnerRoundedRectClip): 91615 (WebCore::GraphicsContext::beginPath): 91616 (WebCore::GraphicsContext::addPath): 91617 (WebCore::GraphicsContext::clipOut): 91618 (WebCore::GraphicsContext::fillRoundedRect): 91619 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: 91620 91621 2010-07-29 Martin Robinson <mrobinson (a] igalia.com> 91622 91623 Reviewed by Dirk Schulze. 91624 91625 [Cairo] Bring behavior of paths on the Cairo GraphicsContext into line with the CoreGraphics port 91626 https://bugs.webkit.org/show_bug.cgi?id=41732 91627 91628 Do not apply paths added to the Cairo GraphicsContext, until they are used. 91629 This prevents drawing routines such as fillRect from interacting with any 91630 path which callers are constructing on the GraphicsContext. 91631 91632 This behavior is necessary to close bug https://bugs.webkit.org/show_bug.cgi?id=41308 91633 so tests for that issue will test this fix. 91634 91635 * platform/graphics/cairo/GraphicsContextCairo.cpp: 91636 (WebCore::appendPathToCairoContext): Added. A helper method which adds a path 91637 to a native Cairo context. 91638 (WebCore::setPathOnCairoContext): Added. Like appendPathToCairoContext, but clears the 91639 existing path first. 91640 (WebCore::appendWebCorePathToCairoContext): Added. Like appendPathToCairoContext, but 91641 operates on a WebCore path. 91642 (WebCore::GraphicsContext::drawEllipse): Only clear the Cairo path if cairo_stroke 91643 was not called, because cairo_stroke implicitly clears the path. 91644 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 91645 (WebCore::GraphicsContext::fillPath): Copy the path from m_pendingPath to the context 91646 and clear m_pendingPath, instead of relying on the pre-existing context path. 91647 (WebCore::GraphicsContext::strokePath): Ditto. 91648 (WebCore::GraphicsContext::drawPath): Ditto. 91649 (WebCore::GraphicsContext::drawFocusRing): Use the new appendWebCorePathToCairoContext helper instead 91650 of addPath (which will blow away any path callers are building). 91651 (WebCore::GraphicsContext::addInnerRoundedRectClip): Use the new appendWebCorePathToCairoContext helper instead 91652 of addPath (which will blow away any path callers are building). 91653 (WebCore::GraphicsContext::beginPath): Clear out m_pendingPath here instead of the main native context. 91654 (WebCore::GraphicsContext::addPath): Add the path to m_pendingPath instead of the main native context. 91655 Also ensure that the transformation matrix of the m_pendingPath is equal to that of the main 91656 cairo context. 91657 (WebCore::GraphicsContext::clipOut): Use the appendWebCorePathToCairoContext helper here. 91658 (WebCore::GraphicsContext::fillRoundedRect): Ditto and remove an unnecessary beginPath call. 91659 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Add a new m_pendingPath member. 91660 91661 2010-07-29 Martin Robinson <mrobinson (a] igalia.com> 91662 91663 Reviewed by Dirk Schulze. 91664 91665 [Cairo] Remove setStrokeStyle workaround for InlineTextBoxes 91666 https://bugs.webkit.org/show_bug.cgi?id=43136 91667 91668 Remove workaround added in https://bugs.webkit.org/show_bug.cgi?id=15659 91669 to fix stroke style for InlineTextBox underlines. 91670 91671 No new tests as this should not change functionality. 91672 91673 * platform/graphics/cairo/GraphicsContextCairo.cpp: 91674 (WebCore::GraphicsContext::drawLineForText): Remove old workaround. 91675 91676 2010-07-28 Dumitru Daniliuc <dumi (a] chromium.org> 91677 91678 Reviewed by David Levin. 91679 91680 Interrupt all DB operations when the worker is terminating. 91681 https://bugs.webkit.org/show_bug.cgi?id=42843 91682 91683 Tests: fast/workers/storage/interrupt-database-sync.html 91684 fast/workers/storage/interrupt-database.html 91685 91686 * bindings/js/JSCustomVoidCallback.cpp: 91687 (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the 91688 destructor is called on the context thread, delete m_data directly 91689 instead of posting a task to do that. We need to do that to make 91690 sure that all JS objects are destroyed before 91691 WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls 91692 WorkerContext::clearScript(). 91693 91694 * bindings/scripts/CodeGeneratorJS.pm: Same change as above, for 91695 all auto-generated callbacks. 91696 91697 * bindings/scripts/test/JS/JSTestCallback.cpp: 91698 (WebCore::JSTestCallback::~JSTestCallback): Updated the 91699 expectations for run-bindings-tests. 91700 91701 * platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt 91702 all DB operations in progress, unless the database was closed or 91703 is being closed. Unlike sqlite3_interrupt(), 91704 SQLiteDatabase::interrupt() is sticky: once it's called, trying to 91705 run any statement on that database will fail with a 91706 SQLITE_INTERRUPT error code. 91707 (WebCore::SQLiteDatabase::SQLiteDatabase): 91708 (WebCore::SQLiteDatabase::close): 91709 (WebCore::SQLiteDatabase::interrupt): 91710 (WebCore::SQLiteDatabase::isInterrupted): 91711 91712 * platform/sql/SQLiteDatabase.h: Added a mutex that can used by 91713 SQLiteStatement to check if the database was interrupted. 91714 (WebCore::SQLiteDatabase::databaseMutex): 91715 91716 * platform/sql/SQLiteStatement.cpp: Changed prepare() and step() 91717 to check if the database was interrupted, before trying to prepare 91718 or run the statement. The other methods don't need to hold on to 91719 the DB lock while running, because they're fast, so we don't need 91720 to interrupt them. 91721 (WebCore::SQLiteStatement::prepare): 91722 (WebCore::SQLiteStatement::step): 91723 91724 * storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt() 91725 and isInterrupted() visible to WebSQLDatabases classes. 91726 (WebCore::AbstractDatabase::interrupt): 91727 (WebCore::AbstractDatabase::isInterrupted): 91728 * storage/AbstractDatabase.h: 91729 91730 * storage/DatabaseTracker.cpp: Added a method to interrupt all 91731 databases in a given context. 91732 (WebCore::DatabaseTracker::interruptAllDatabasesForContext): 91733 * storage/DatabaseTracker.h: 91734 91735 * storage/SQLStatement.cpp: Changed the exception/error reported 91736 when a statement is interrupted. 91737 (WebCore::SQLStatement::execute): 91738 * storage/SQLStatementSync.cpp: 91739 (WebCore::SQLStatementSync::execute): 91740 91741 * storage/SQLTransaction.cpp: Changed the code to release the 91742 callback objects as soon as they're not needed. 91743 (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase): 91744 Changed this method to not schedule the next transaction step when 91745 the database is interrupted. 91746 (WebCore::SQLTransaction::performNextStep): 91747 (WebCore::SQLTransaction::performPendingCallback): 91748 (WebCore::SQLTransaction::deliverTransactionCallback): 91749 (WebCore::SQLTransaction::postflightAndCommit): 91750 (WebCore::SQLTransaction::deliverTransactionErrorCallback): 91751 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): 91752 * storage/SQLTransaction.h: 91753 91754 * storage/chromium/DatabaseTrackerChromium.cpp: Added a method to 91755 interrupt all databases in a given context. 91756 (WebCore::DatabaseTracker::interruptAllDatabasesForContext): 91757 91758 * workers/WorkerThread.cpp: 91759 (WebCore::WorkerThread::stop): Added a call to 91760 DatabaseTracker::interruptAllDatabasesForContext(). 91761 91762 2010-07-29 Bernhard Bauer <bauerb (a] chromium.org> 91763 91764 Reviewed by Darin Fisher. 91765 91766 Check if plugins are allowed before creating a Java applet. 91767 https://bugs.webkit.org/show_bug.cgi?id=43196 91768 91769 * loader/SubframeLoader.cpp: 91770 (WebCore::SubframeLoader::createJavaAppletWidget): 91771 91772 2010-07-29 James Robinson <jamesr (a] chromium.org> 91773 91774 Reviewed by Simon Fraser. 91775 91776 Ask a canvas' rendering context if it is accelerated instead tying it directly to webgl 91777 https://bugs.webkit.org/show_bug.cgi?id=43206 91778 91779 This unifies the logic for whether a canvas is accelerated or not into one place 91780 and makes it easier to expand the logic in the future to, for example, cover some 91781 2d canvases. 91782 91783 Just a refactoring, no change in behavior so no new tests. 91784 91785 * html/canvas/CanvasRenderingContext.h: 91786 (WebCore::CanvasRenderingContext::isAccelerated): 91787 * html/canvas/WebGLRenderingContext.h: 91788 (WebCore::WebGLRenderingContext::isAccelerated): 91789 * rendering/RenderHTMLCanvas.cpp: 91790 (WebCore::RenderHTMLCanvas::requiresLayer): 91791 * rendering/RenderLayerCompositor.cpp: 91792 (WebCore::RenderLayerCompositor::requiresCompositingForCanvas): 91793 91794 2010-07-29 Anders Carlsson <andersca (a] apple.com> 91795 91796 Reviewed by Sam Weinig. 91797 91798 Implement NPN_Status 91799 https://bugs.webkit.org/show_bug.cgi?id=43205 91800 91801 * WebCore.exp.in: 91802 Export Chrome::setStatusText. 91803 91804 2010-07-29 Victor Wang <victorw (a] chromium.org> 91805 91806 Unreviewed, rolling out r64270. 91807 http://trac.webkit.org/changeset/64270 91808 https://bugs.webkit.org/show_bug.cgi?id=39589 91809 91810 The patch breaks chromium webkit unittest 91811 91812 * WebCore.exp.in: 91813 * WebCore.xcodeproj/project.pbxproj: 91814 * dom/DeviceOrientationClient.h: 91815 (WebCore::DeviceOrientationClient::~DeviceOrientationClient): 91816 * dom/DeviceOrientationController.cpp: 91817 (WebCore::DeviceOrientationController::DeviceOrientationController): 91818 * dom/DeviceOrientationEvent.cpp: 91819 * platform/mock/DeviceOrientationClientMock.cpp: Removed. 91820 * platform/mock/DeviceOrientationClientMock.h: Removed. 91821 91822 2010-07-29 Simon Fraser <simon.fraser (a] apple.com> 91823 91824 Reviewed by Darin Adler. 91825 91826 Resizer control does not paint in otherwise empty compositing layer 91827 https://bugs.webkit.org/show_bug.cgi?id=42306 91828 91829 Ensure that we create backing store for an empty element with resize: both, 91830 in order to render the resizer control. 91831 91832 Test: compositing/overflow/resize-painting.html 91833 91834 * rendering/RenderLayerBacking.h: 91835 * rendering/RenderLayerBacking.cpp: 91836 (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Check for hasOverflowControls() 91837 earlier, before any child checks. 91838 (WebCore::RenderLayerBacking::hasNonCompositingDescendants): Renamed from hasNonCompositingContent() 91839 to clarify its purpose. 91840 91841 2010-07-29 Adam Roben <aroben (a] apple.com> 91842 91843 Remove WKCACFLayer::Lanczos 91844 91845 This member is also unused. 91846 91847 Rubber-stamped in advance by John Sullivan. 91848 91849 * platform/graphics/win/WKCACFLayer.cpp: 91850 (WebCore::toCACFFilterType): 91851 (WebCore::fromCACFFilterType): 91852 * platform/graphics/win/WKCACFLayer.h: 91853 (WebCore::WKCACFLayer::): 91854 91855 2010-07-29 Adam Roben <aroben (a] apple.com> 91856 91857 Remove some unused WKCACFLayer members 91858 91859 Fixes <http://webkit.org/b/43200> WKCACFLayer has some unused members 91860 91861 Reviewed by John Sullivan. 91862 91863 * platform/graphics/win/WKCACFLayer.h: Removed [set]ClearsContext, 91864 [set]Filters, and [set]SortsSublayers. 91865 91866 2010-07-28 Justin Schuh <jschuh (a] chromium.org> 91867 91868 Reviewed by Nate Chapin. 91869 91870 Clear PluginData's page pointer on Page destruction 91871 https://bugs.webkit.org/show_bug.cgi?id=43147 91872 91873 Test: plugins/access-after-page-destroyed.html 91874 91875 * page/Page.cpp: 91876 (WebCore::Page::~Page): 91877 91878 2010-07-29 Simon Fraser <simon.fraser (a] apple.com> 91879 91880 Reviewed by Darin Adler. 91881 91882 SHOULD NEVER BE REACHED assertion when switching tabs with composited content 91883 https://bugs.webkit.org/show_bug.cgi?id=43167 91884 91885 When the root layer becomes unattached (e.g. when switching tabs), don't return 91886 'false' from paintingGoesToWindow() because that will cause a -setNeedsDispay, which 91887 both allocates wasteful backing store, and causes an assertion when we try to 91888 paint the layer. 91889 91890 Test: manual-tests/compositing/assert-on-tab-switch.html: Added. 91891 91892 * rendering/RenderLayerBacking.cpp: 91893 (WebCore::RenderLayerBacking::paintingGoesToWindow): 91894 91895 2010-07-29 Simon Fraser <simon.fraser (a] apple.com> 91896 91897 Reviewed by Pavel Feldman. 91898 91899 Crash when computing pseudo-style of a vanished scrollbar in inspector 91900 https://bugs.webkit.org/show_bug.cgi?id=42561 91901 91902 When a styled overflow:scroll scrollbar gets destroyed, we need to clear out the m_owner pointer, 91903 otherwise the event handling code (which keeps the Scrollbar alive) later causes the scrollbar 91904 to try to use m_owner to get pseudo style. 91905 91906 Test: scrollbars/overflow-custom-scrollbar-crash.html 91907 91908 * rendering/RenderLayer.cpp: 91909 (WebCore::RenderLayer::destroyScrollbar): If this is a custom scrollbar, clear the owning renderer. 91910 * rendering/RenderScrollbar.cpp: 91911 (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Bail if m_owner is 0. 91912 * rendering/RenderScrollbar.h: 91913 (WebCore::RenderScrollbar::clearOwningRenderer): New method. 91914 91915 2010-07-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 91916 91917 Not reviewed. Fix release builds, by removing unused variables, that only served for ASSERTs that are no longer needed. 91918 91919 * rendering/SVGRenderSupport.cpp: 91920 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): 91921 (WebCore::SVGRenderSupport::pointInClippingArea): 91922 91923 2010-07-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 91924 91925 Not reviewed. Fix build warning about unreachable code, seen on the windows slave. 91926 91927 * rendering/RenderSVGContainer.cpp: 91928 (WebCore::RenderSVGContainer::selfWillPaint): 91929 * rendering/RenderSVGRoot.cpp: 91930 (WebCore::RenderSVGRoot::selfWillPaint): 91931 91932 2010-07-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 91933 91934 Reviewed by Dirk Schulze. 91935 91936 WebKit shouldn't ignore resource cycles, but break them as Opera does 91937 https://bugs.webkit.org/show_bug.cgi?id=43031 91938 91939 mask images are not updated when render objects' bounds change 91940 https://bugs.webkit.org/show_bug.cgi?id=15124 91941 91942 SVG Gradients do not resize correctly 91943 https://bugs.webkit.org/show_bug.cgi?id=41902 91944 91945 svg/dynamic-updates: SVGMarkerElement markerHeight/Width tests are broken 91946 https://bugs.webkit.org/show_bug.cgi?id=42616 91947 91948 svg/dynamic-updates: SVGMaskElement tests are all broken 91949 https://bugs.webkit.org/show_bug.cgi?id=42617 91950 91951 Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that. 91952 91953 We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the 91954 node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have 91955 to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.). 91956 91957 Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker). 91958 Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references 91959 from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic, 91960 which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources 91961 objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint 91962 phase begins. 91963 91964 Add destroy/styleDidChange/updateFromElement methods to all SVG renderers, in order to keep track of resource/client changes in the SVGResourcesCache. 91965 As side-effect the SVGResourcesCache now knows which RenderObject references which resource, and thus can handle client registration for a RenderSVGResourceContainer. 91966 The RenderSVGResourceContainer now holds a HashSet of RenderObjects, that's always up2date, and not related to the fact wheter a resources has already been used 91967 for painting. The old logic missed to register clients for a resource, when the resource was in an invalid state. Fixing that fixes the svg/dynamic-updates/SVGMaskElement* tests. 91968 91969 Rewrite all svg/custom/recursive-(filter|gradient|mask|pattern).svg tests to contain a reference image how it should be renderered. All 1:1 compatible with Opera now. 91970 91971 * rendering/RenderForeignObject.cpp: 91972 (WebCore::RenderForeignObject::layout): Grab selfNeedsLayout() before calling RenderBlock::layout(), otherwhise it's always false. 91973 * rendering/RenderPath.cpp: Don't look up resources manually, use SVGResourcesCache. 91974 (WebCore::RenderPath::fillContains): Remove constness, to avoid the need to pass around const RenderObjects* to the SVGResourcesCache. 91975 (WebCore::RenderPath::strokeContains): Ditto. 91976 (WebCore::RenderPath::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. 91977 (WebCore::RenderPath::calculateMarkerBoundsIfNeeded): Remove special client handling for markers, it's all unified now. 91978 (WebCore::RenderPath::styleWillChange): Only call setNeedsBoundariesUpdate when handling StyleDifferenceRepaint/Layout. 91979 * rendering/RenderPath.h: 91980 * rendering/RenderSVGBlock.cpp: 91981 (WebCore::RenderSVGBlock::destroy): Forward to SVGResourcesCache::clientDestroyed. 91982 (WebCore::RenderSVGBlock::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. 91983 (WebCore::RenderSVGBlock::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. 91984 * rendering/RenderSVGBlock.h: 91985 * rendering/RenderSVGContainer.cpp: 91986 (WebCore::RenderSVGContainer::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. 91987 (WebCore::RenderSVGContainer::selfWillPaint): Don't look up resources manually, use SVGResourcesCache. 91988 * rendering/RenderSVGContainer.h: 91989 * rendering/RenderSVGGradientStop.cpp: 91990 (WebCore::RenderSVGGradientStop::styleDidChange): Rewrite, as invalidateResourceClients() is gone. 91991 * rendering/RenderSVGHiddenContainer.h: Make layout() protected, as RenderSVGResourceContainer overrides it. 91992 * rendering/RenderSVGImage.cpp: 91993 (WebCore::RenderSVGImage::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. 91994 (WebCore::RenderSVGImage::destroy): Forward to SVGResourcesCache::clientDestroyed. 91995 (WebCore::RenderSVGImage::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. 91996 (WebCore::RenderSVGImage::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. 91997 (WebCore::RenderSVGImage::imageChanged): Don't look up resources manually, use SVGResourcesCache. 91998 * rendering/RenderSVGImage.h: 91999 * rendering/RenderSVGInline.cpp: 92000 (WebCore::RenderSVGInline::destroy): Forward to SVGResourcesCache::clientDestroyed. 92001 (WebCore::RenderSVGInline::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. 92002 (WebCore::RenderSVGInline::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. 92003 * rendering/RenderSVGInline.h: 92004 * rendering/RenderSVGModelObject.cpp: 92005 (WebCore::RenderSVGModelObject::destroy): Forward to SVGResourcesCache::clientDestroyed. 92006 (WebCore::RenderSVGModelObject::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. 92007 (WebCore::RenderSVGModelObject::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. 92008 * rendering/RenderSVGModelObject.h: 92009 * rendering/RenderSVGResource.cpp: 92010 (WebCore::RenderSVGResource::fillPaintingResource): Remove const from RenderObject parameter. 92011 (WebCore::RenderSVGResource::strokePaintingResource): Ditto. 92012 (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): Early exit if we found the first parent resource. 92013 * rendering/RenderSVGResource.h: 92014 * rendering/RenderSVGResourceClipper.cpp: 92015 (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper): Early exit if m_clipper is empty. 92016 (WebCore::RenderSVGResourceClipper::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92017 (WebCore::RenderSVGResourceClipper::invalidateClient): Ditto. 92018 (WebCore::RenderSVGResourceClipper::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore. 92019 (WebCore::RenderSVGResourceClipper::createClipData): Don't look up resources manually, use SVGResourcesCache. 92020 (WebCore::RenderSVGResourceClipper::hitTestClipContent): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore. 92021 * rendering/RenderSVGResourceClipper.h: 92022 * rendering/RenderSVGResourceContainer.cpp: 92023 (WebCore::svgExtensionsFromNode): 92024 (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop registering resource from the constructor, delegate to styleDidChange. 92025 (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer): Only deregister resource if it was ever registered. 92026 (WebCore::RenderSVGResourceContainer::layout): invalidateClients() here, to avoid the need for invalidateResourceClients() in the SVG DOM. Just call setNeedsLayout() from the SVG DOM. 92027 (WebCore::RenderSVGResourceContainer::destroy): Forward to SVGResourcesCache::resourceDestroyed. 92028 (WebCore::RenderSVGResourceContainer::styleDidChange): Register resource not in the constructor but when it first receives style. 92029 (WebCore::RenderSVGResourceContainer::idChanged): Don't duplicate code, use existing methods from SVGResourcesCache. 92030 (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): Add new helper function, to share code between all resources. 92031 (WebCore::RenderSVGResourceContainer::markClientForInvalidation): Ditto. 92032 (WebCore::RenderSVGResourceContainer::addClient): SVGResourcesCache now manages the list of clients. It calls addClient() for each RenderObject that uses this resource. 92033 (WebCore::RenderSVGResourceContainer::removeClient): SVGResourcesCache now manages the list of clients. 92034 (WebCore::RenderSVGResourceContainer::registerResource): New helper function sharing code between idChanged / styleDidChange. 92035 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): Add FIXME that the function is misplaced. 92036 * rendering/RenderSVGResourceContainer.h: Move most functions to the new RenderSVGResourceContainer.cpp file. 92037 * rendering/RenderSVGResourceFilter.cpp: 92038 (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter): Early exit if m_filter is empty. 92039 (WebCore::RenderSVGResourceFilter::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92040 (WebCore::RenderSVGResourceFilter::invalidateClient): Ditto. 92041 * rendering/RenderSVGResourceGradient.cpp: 92042 (WebCore::RenderSVGResourceGradient::~RenderSVGResourceGradient): Early exit if m_gradient is empty. 92043 (WebCore::RenderSVGResourceGradient::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92044 (WebCore::RenderSVGResourceGradient::invalidateClient): Ditto. 92045 * rendering/RenderSVGResourceMarker.cpp: 92046 (WebCore::RenderSVGResourceMarker::~RenderSVGResourceMarker): Now a no-op, markers are unified within the new client handling concept, no more special code needed. 92047 (WebCore::RenderSVGResourceMarker::layout): As RenderSVGResourceMarker skips the RenderSVGResourceContainer::layout() method, we also need to call invalidateClients() here. 92048 (WebCore::RenderSVGResourceMarker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92049 (WebCore::RenderSVGResourceMarker::invalidateClient): Ditto. 92050 (WebCore::RenderSVGResourceMarker::draw): Remove marker specific logic to catch circular references. 92051 * rendering/RenderSVGResourceMarker.h: 92052 * rendering/RenderSVGResourceMasker.cpp: 92053 (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker): Early exit if m_masker is empty. 92054 (WebCore::RenderSVGResourceMasker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92055 (WebCore::RenderSVGResourceMasker::invalidateClient): Ditto. 92056 (WebCore::RenderSVGResourceMasker::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore. 92057 * rendering/RenderSVGResourceMasker.h: 92058 * rendering/RenderSVGResourcePattern.cpp: 92059 (WebCore::RenderSVGResourcePattern::~RenderSVGResourcePattern): Early exit if m_pattern is empty. 92060 (WebCore::RenderSVGResourcePattern::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. 92061 (WebCore::RenderSVGResourcePattern::invalidateClient): Ditto. 92062 (WebCore::RenderSVGResourcePattern::createTileImage): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore. 92063 * rendering/RenderSVGResourcePattern.h: 92064 * rendering/RenderSVGRoot.cpp: 92065 (WebCore::RenderSVGRoot::selfWillPaint): Don't look up resources manually, use SVGResourcesCache. 92066 (WebCore::RenderSVGRoot::destroy): Forward to SVGResourcesCache::clientDestroyed. 92067 (WebCore::RenderSVGRoot::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. 92068 (WebCore::RenderSVGRoot::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. 92069 * rendering/RenderSVGRoot.h: 92070 * rendering/RenderSVGText.cpp: 92071 (WebCore::RenderSVGText::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. 92072 * rendering/RenderSVGText.h: 92073 * rendering/SVGInlineTextBox.cpp: 92074 (WebCore::SVGInlineTextBox::acquirePaintingResource): Add RenderObject* parameter, don't assume the style comes from the InlineTextBox parent renderer. 92075 (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting): Pass the parent()->renderer() to acquirePaintingResource. 92076 (WebCore::SVGInlineTextBox::paintDecoration): Pass the decoration renderer to acquirePaintingResource. 92077 (WebCore::SVGInlineTextBox::paintDecorationWithStyle): Ditto. 92078 (WebCore::SVGInlineTextBox::paintText): When a selection pseudo style is used to paint the selection, swap styles in the SVGResourcesCache, to take the right resources when painting. 92079 * rendering/SVGInlineTextBox.h: 92080 * rendering/SVGRenderSupport.cpp: 92081 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Don't look up resources manually, use SVGResourcesCache. 92082 (WebCore::SVGRenderSupport::finishRenderSVGContent): Ditto. 92083 (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Ditto. 92084 (WebCore::SVGRenderSupport::pointInClippingArea): Remove const from RenderObject parameter. 92085 * rendering/SVGRenderSupport.h: 92086 * rendering/SVGRenderTreeAsText.cpp: 92087 (WebCore::writeStyle): Add two const_cast now that fill/strokePaintingResource take RenderObject* parameters. This was the less intrusive approach, otherwhise more const_casts would be needed. 92088 (WebCore::writeResources): Add FIXME that we should dump the resources present in the SVGResourcesCache instead of manually looking them up from the SVGRenderStyle, to avoid dumping cycles. 92089 * rendering/SVGResourcesCache.cpp: 92090 (WebCore::SVGResourcesCache::clientStyleChanged): Use markForLayoutAndParentResourceInvalidation() instead of duplicating code. 92091 * rendering/SVGResourcesCycleSolver.cpp: 92092 (WebCore::setFollowLinkForChainableResource): Implemented stub method. 92093 * rendering/style/SVGRenderStyle.cpp: 92094 (WebCore::SVGRenderStyle::diff): Return StyleDifferenceLayout, not Repaint for stroke paint changes, otherwhise the cached boundaries are not correctly updated. 92095 * svg/SVGClipPathElement.cpp: 92096 (WebCore::SVGClipPathElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92097 (WebCore::SVGClipPathElement::childrenChanged): Ditto. 92098 * svg/SVGClipPathElement.h: 92099 (WebCore::SVGClipPathElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92100 * svg/SVGElement.cpp: 92101 (WebCore::SVGElement::insertedIntoDocument): Only execute buildPendingResource() logic, if needsPendingResourceHandling() returns true. Cleaned up code a bit, to deploy early returns. 92102 * svg/SVGElement.h: 92103 (WebCore::SVGElement::needsPendingResourceHandling): Return true (default). Only needed by SVGTextPathElement/SVGUseElement, and should be removed in future. 92104 * svg/SVGFilterElement.cpp: 92105 (WebCore::SVGFilterElement::SVGFilterElement): Initialize m_followLink=true. 92106 (WebCore::SVGFilterElement::setFilterRes): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92107 (WebCore::SVGFilterElement::svgAttributeChanged): Ditto. 92108 (WebCore::SVGFilterElement::childrenChanged): Ditto. 92109 * svg/SVGFilterElement.h: 92110 (WebCore::SVGFilterElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92111 (WebCore::SVGFilterElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references. 92112 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 92113 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): Don't use invalidateResourceClients(), it's a no-op as effects don't have a renderer -> use invalidateFilter(). 92114 * svg/SVGFilterPrimitiveStandardAttributes.h: 92115 (WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilter): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92116 * svg/SVGGradientElement.cpp: 92117 (WebCore::SVGGradientElement::SVGGradientElement): Initialize m_followLink=true. 92118 (WebCore::SVGGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92119 (WebCore::SVGGradientElement::childrenChanged): Ditto. 92120 * svg/SVGGradientElement.h: 92121 (WebCore::SVGGradientElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92122 (WebCore::SVGGradientElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references. 92123 * svg/SVGLinearGradientElement.cpp: 92124 (WebCore::SVGLinearGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92125 (WebCore::SVGLinearGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true. 92126 * svg/SVGMarkerElement.cpp: 92127 (WebCore::SVGMarkerElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92128 (WebCore::SVGMarkerElement::childrenChanged): Ditto. 92129 (WebCore::SVGMarkerElement::setOrientToAuto): Ditto. 92130 (WebCore::SVGMarkerElement::setOrientToAngle): Ditto. 92131 * svg/SVGMarkerElement.h: 92132 (WebCore::SVGMarkerElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92133 * svg/SVGMaskElement.cpp: 92134 (WebCore::SVGMaskElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92135 (WebCore::SVGMaskElement::childrenChanged): Ditto. 92136 * svg/SVGMaskElement.h: 92137 (WebCore::SVGMaskElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92138 * svg/SVGPatternElement.cpp: 92139 (WebCore::SVGPatternElement::SVGPatternElement): Initialize m_followLink=true. 92140 (WebCore::SVGPatternElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92141 (WebCore::SVGPatternElement::childrenChanged): Ditto. 92142 (WebCore::SVGPatternElement::collectPatternProperties): Only follow xlink:href links if m_followLinks == true. 92143 * svg/SVGPatternElement.h: 92144 (WebCore::SVGPatternElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. 92145 (WebCore::SVGPatternElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references. 92146 * svg/SVGRadialGradientElement.cpp: 92147 (WebCore::SVGRadialGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. 92148 (WebCore::SVGRadialGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true. 92149 * svg/SVGStyledElement.cpp: 92150 (WebCore::SVGStyledElement::attach): Call updateFromElement upon attach(), needed by all resource renderers. Defaults to a no-op in RenderObject.h 92151 * svg/SVGStyledElement.h: Remove invalidateResourceClients(), it's not needed anymore. 92152 92153 2010-07-29 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 92154 92155 Reviewed by Kenneth Rohde Christiansen. 92156 92157 [EFL] Support to enable WML in WebKit EFL 92158 https://bugs.webkit.org/show_bug.cgi?id=43178 92159 92160 WebKit EFL cannot enable WML. WML files are added to CMakeLists.txt 92161 to enable WML in WebKit EFL. 92162 92163 * CMakeLists.txt: Support to enable WML. 92164 92165 2010-07-21 Grace Kloba <klobag (a] gmail.com> , Antonio Gomes <tonikitoo (a] webkit.org> 92166 92167 Reviewed by David Hyatt. 92168 92169 Enhance the hit testing to take a rectangle instead of a point 92170 https://bugs.webkit.org/show_bug.cgi?id=40197 92171 92172 The primary goal of this change is to provide mechanisms for more precise tap 92173 actions by the users on mobile devices. 92174 92175 Patch extends the hit testing system to work considering a rectangular area 92176 as input instead of a point, when applicable. For that, the HitTestResult class 92177 was modified to take a padding (IntSize). The padding specifies a fuzzy range for 92178 accepting input events in pixels coordinates for both vertical and horizontal 92179 orientations. In other words, it tells how much to expand the search rect 92180 around a supposed touch point. 92181 92182 If it is non-positive padding (e.g. (-1, -1), (5, -1), (0, 0)), hit testing will behavior 92183 as the current point based hit testing: methods are no-op'ed to not regress it performance-wise 92184 since it is the common behavior. When positive padding is provided, the HitTestResult class will 92185 keep record of all nodes that intersect the built up test area. The logic will continue searching 92186 when it finds a candidate until the hit test area is fully enclosed by the boundaries of a candidate. 92187 The result will be a list of nodes in the z-order they are hit-tested. Caller will decide how 92188 to process them. 92189 92190 In order to expose the functionality, the patch: 92191 92192 - Adds a nodesFromRect method to the Document class, exposing the funcionality 92193 to the DOM. Method returns a NodeList with all nodes that intersect the given 92194 hit-tested area. 92195 - Extends hitTestResultAtPoint method of the EventHandler with an extra 'padding' 92196 parameter, defaulting to IntSize(-1, -1). The rect-based hit test is performed when a 92197 non-negative padding is passed in. 92198 92199 Test: fast/dom/nodesFromRect-basic.html 92200 92201 * WebCore.base.exp: 92202 * dom/Document.cpp: 92203 (WebCore::Document::nodesFromRect): This method exposes the rect based funcionality to 92204 the DOM. It works similarly to elementFromPoint, however receiving a rectangular area 92205 as input instead of a point, and returning a z-index ordered list of nodes (not elements) 92206 whose area intersect the hit test rect. 92207 * dom/Document.h: Ditto. 92208 * dom/Document.idl: Ditto. 92209 * page/EventHandler.cpp: 92210 (WebCore::EventHandler::hitTestResultAtPoint): The funcionality is also exposed through this 92211 method. Patch adds a additional IntSize parameter to work as the padding area, building up 92212 the hit test rect. 92213 * page/EventHandler.h: Ditto. 92214 * rendering/HitTestResult.cpp: 92215 (WebCore::HitTestResult::HitTestResult): Rect based hit test constructor. Receives a 92216 padding IntSize as parameter. It can be (0,0). 92217 (WebCore::HitTestResult::operator=): Modified to assign the m_rectBasedTestResult as well. 92218 (WebCore::HitTestResult::append): Merge to HitTestResult objects in a way that the 92219 list node's of both objects get amended. 92220 (WebCore::HitTestResult::addNodeToRectBasedTestResult): Adds a given Node to the list of 92221 hit nodes. 92222 * rendering/HitTestResult.h: 92223 (WebCore::HitTestResult::padding): Returns the padding as an IntSize. 92224 (WebCore::HitTestResult::isRectBasedTest): Returns if the HitTestResult is rect based or not. 92225 (WebCore::HitTestResult::.rectBasedTestResult): Returns the list nodes hit. 92226 (WebCore::HitTestResult::rectFromPoint): Returns the hit test rect given the hit test point 92227 and padding. 92228 * rendering/RenderLayer.cpp: 92229 (WebCore::RenderLayer::hitTestLayer): 92230 (WebCore::RenderLayer::hitTestList): 92231 (WebCore::RenderLayer::hitTestChildLayerColumns): 92232 * rendering/EllipsisBox.cpp: 92233 (WebCore::EllipsisBox::nodeAtPoint): Method is modified to support rect based hit test extension. 92234 Now it not just checks if the boundary of the node being hit-tested contains a hit test point, but 92235 instead it checks if the boundary of the node intersects a hit test rect. It is implemented so 92236 that the common case (point based hit test) works as previously. 92237 * rendering/InlineFlowBox.cpp: 92238 (WebCore::InlineFlowBox::nodeAtPoint): Ditto. 92239 * rendering/InlineTextBox.cpp: 92240 (WebCore::InlineTextBox::nodeAtPoint): Ditto. 92241 * rendering/RenderBlock.cpp: 92242 (WebCore::RenderBlock::nodeAtPoint): Ditto. 92243 (WebCore::RenderBlock::hitTestColumns): Ditto. 92244 * rendering/RenderBox.cpp: 92245 (WebCore::RenderBox::nodeAtPoint): Ditto. 92246 * rendering/RenderImage.cpp: 92247 (WebCore::RenderImage::nodeAtPoint): Ditto. 92248 * rendering/RenderLineBoxList.cpp: 92249 (WebCore::RenderLineBoxList::hitTest): 92250 * rendering/RenderSVGRoot.cpp: 92251 (WebCore::RenderSVGRoot::nodeAtPoint): Ditto. 92252 * rendering/RenderTable.cpp: 92253 (WebCore::RenderTable::nodeAtPoint): Ditto. 92254 * rendering/RenderTableSection.cpp: 92255 (WebCore::RenderTableSection::nodeAtPoint): Ditto. 92256 * rendering/RenderWidget.cpp: 92257 (WebCore::RenderWidget::nodeAtPoint): Ditto. 92258 92259 2010-07-29 Steve Block <steveblock (a] google.com> 92260 92261 Reviewed by Jeremy Orlow. 92262 92263 Add LayoutTestController methods to test DeviceOrientation 92264 https://bugs.webkit.org/show_bug.cgi?id=39589 92265 92266 This patch does not hook up the new LayoutTestController method to WebKit 92267 for any platform. This will be done in later patches. 92268 https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac. 92269 92270 Test: fast/dom/DeviceOrientation/basic-operation.html 92271 92272 * WebCore/WebCore.exp.in: 92273 * WebCore.xcodeproj/project.pbxproj: 92274 * dom/DeviceOrientationClient.h: 92275 (WebCore::DeviceOrientationClient::~DeviceOrientationClient): 92276 * dom/DeviceOrientationController.cpp: 92277 (WebCore::DeviceOrientationController::DeviceOrientationController): 92278 * dom/DeviceOrientationEvent.cpp: 92279 * platform/mock/DeviceOrientationClientMock.cpp: Added. 92280 (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock): 92281 (WebCore::DeviceOrientationClientMock::setController): 92282 (WebCore::DeviceOrientationClientMock::startUpdating): 92283 (WebCore::DeviceOrientationClientMock::stopUpdating): 92284 (WebCore::DeviceOrientationClientMock::setOrientation): 92285 (WebCore::DeviceOrientationClientMock::timerFired): 92286 * platform/mock/DeviceOrientationClientMock.h: Added. 92287 (WebCore::DeviceOrientationClientMock::lastOrientation): 92288 92289 2010-07-29 Satish Sampath <satish (a] chromium.org> 92290 92291 Reviewed by Steve Block. 92292 92293 Runtime feature switch for speech input. 92294 https://bugs.webkit.org/show_bug.cgi?id=43146 92295 92296 Add a runtime feature switch that decides whether speech input attributes are available or not. 92297 Defaults to true. 92298 92299 * bindings/generic/RuntimeEnabledFeatures.cpp: 92300 * bindings/generic/RuntimeEnabledFeatures.h: 92301 (WebCore::RuntimeEnabledFeatures::setSpeechInputEnabled): 92302 (WebCore::RuntimeEnabledFeatures::speechInputEnabled): 92303 (WebCore::RuntimeEnabledFeatures::speechEnabled): 92304 * html/HTMLInputElement.idl: 92305 92306 2010-07-27 Alexander Pavlov <apavlov (a] chromium.org> 92307 92308 Reviewed by Pavel Feldman. 92309 92310 Inspector should display CDATA section data 92311 https://bugs.webkit.org/show_bug.cgi?id=16259 92312 92313 * inspector/InspectorDOMAgent.cpp: 92314 (WebCore::InspectorDOMAgent::buildObjectForNode): 92315 * inspector/front-end/ElementsTreeOutline.js: 92316 (): 92317 92318 2010-07-28 Kavita Kanetkar <kkanetkar (a] chromium.org> 92319 92320 Reviewed by Pavel Feldman. 92321 92322 Web Inspector: Enable UI for chromium's appcache inspection. 92323 https://bugs.webkit.org/show_bug.cgi?id=43098 92324 92325 * inspector/front-end/Settings.js: Removed appCacheEnabled. 92326 * inspector/front-end/StoragePanel.js: Removed appCacheEnabled condition. 92327 (WebInspector.StoragePanel): 92328 (WebInspector.StoragePanel.prototype.reset): 92329 (WebInspector.StoragePanel.prototype.addApplicationCache): 92330 92331 2010-07-28 Bryan Gislason <bgislason (a] rim.com> 92332 92333 Reviewed by Nate Chapin. 92334 92335 Minor compile errors in loadMediaPlayerProxyPlugin 92336 https://bugs.webkit.org/show_bug.cgi?id=43141 92337 92338 * WebCore/loader/SubframeLoader.cpp: 92339 92340 2010-07-28 Dominic Mazzoni <dmazzoni (a] google.com> 92341 92342 Reviewed by Dimitri Glazkov. 92343 92344 Add a missing dependency. 92345 https://bugs.webkit.org/show_bug.cgi?id=43044 92346 92347 * css/CSSPrimitiveValueMappings.h: 92348 92349 2010-07-28 Alex Nicolaou <anicolao (a] chromium.org> 92350 92351 Reviewed by Ojan Vafai. 92352 92353 Set incorrect but close expectations for mask-colorspace.svg on mac 92354 https://bugs.webkit.org/show_bug.cgi?id=43102 92355 92356 Blocks: 92357 [chromium] r63450 caused some svg mask tests to fail pixel tests 92358 https://bugs.webkit.org/show_bug.cgi?id=42403 92359 92360 ImageBufferCG.cpp uses CoreGraphics to do the transform of SVG masks 92361 into LinearRGB, but only for MAC which means not for CHROMIUM, so I 92362 have changed the #if to account for both platforms. I am assuming this 92363 isn't in for windows because it's missing in CG itself, but I didn't 92364 verify that. 92365 92366 * platform/graphics/cg/ImageBufferCG.cpp: 92367 (WebCore::ImageBuffer::ImageBuffer): 92368 92369 2010-07-28 Kent Tamura <tkent (a] chromium.org> 92370 92371 Reviewed by Darin Fisher. 92372 92373 [Chromium] Improve read-only arrow button appearance 92374 https://bugs.webkit.org/show_bug.cgi?id=43108 92375 92376 No new tests. This is a fix for fast/forms/ 92377 input-appearance-spinbutton-disabled-readonly.html 92378 92379 * platform/chromium/PlatformThemeChromiumGtk.cpp: 92380 (WebCore::PlatformThemeChromiumGtk::paintArrowButton): 92381 If the button has ReadOnlyState, paint the button as same as it is disabled. 92382 92383 2010-07-28 Tony Chang <tony (a] chromium.org> 92384 92385 Reviewed by Ojan Vafai. 92386 92387 implement getData('text/html') for webkit win 92388 https://bugs.webkit.org/show_bug.cgi?id=37981 92389 92390 * platform/win/ClipboardUtilitiesWin.cpp: 92391 (WebCore::extractMarkupFromCFHTML): 92392 (WebCore::getCFHTML): 92393 (WebCore::fragmentFromCFHTML): 92394 (WebCore::fragmentFromHTML): 92395 * platform/win/ClipboardUtilitiesWin.h: 92396 * platform/win/ClipboardWin.cpp: 92397 (WebCore::): 92398 (WebCore::clipboardTypeFromMIMEType): 92399 (WebCore::ClipboardWin::getData): 92400 92401 2010-07-28 Adam Barth <abarth (a] webkit.org> 92402 92403 Reviewed by Eric Seidel. 92404 92405 Update numbered header element closing to match recent spec change 92406 https://bugs.webkit.org/show_bug.cgi?id=43072 92407 92408 Pretty straightforward transcription of the spec change. 92409 92410 * html/HTMLElementStack.cpp: 92411 (WebCore::HTMLNames::isNumberedHeaderElement): 92412 (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped): 92413 (WebCore::HTMLElementStack::hasOnlyHTMLElementsInScope): 92414 (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope): 92415 * html/HTMLElementStack.h: 92416 * html/HTMLTreeBuilder.cpp: 92417 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 92418 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 92419 92420 2010-07-28 Anders Carlsson <andersca (a] apple.com> 92421 92422 Reviewed by Sam Weinig. 92423 92424 Add support for calling NPObject methods 92425 https://bugs.webkit.org/show_bug.cgi?id=43145 92426 92427 * WebCore.exp.in: 92428 Export JSHTMLElement::s_info and pluginScriptObject. 92429 92430 * WebCore.xcodeproj/project.pbxproj: 92431 Make JSHTMLElement.h and JSPluginElementFunctions.h private headers. 92432 92433 * bindings/js/JSPluginElementFunctions.cpp: 92434 (WebCore::pluginScriptObject): 92435 * bindings/js/JSPluginElementFunctions.h: 92436 Make pluginScriptObject a public function. 92437 92438 2010-07-28 James Robinson <jamesr (a] chromium.org> 92439 92440 Reviewed by Darin Fisher. 92441 92442 [chromium] Add a bool to Settings to control accelerated 2d canvas 92443 https://bugs.webkit.org/show_bug.cgi?id=43094 92444 92445 Currently this doesn't control anything, but it will soon. 92446 92447 * page/Settings.cpp: 92448 (WebCore::Settings::Settings): 92449 (WebCore::Settings::setAccelerated2dCanvasEnabled): 92450 * page/Settings.h: 92451 (WebCore::Settings::accelerated2dCanvasEnabled): 92452 92453 2010-07-28 Robin Dunn <robin (a] alldunn.com> 92454 92455 Reviewed by Kevin Ollivier. 92456 92457 Add DOM bindings support for wx port. 92458 92459 * DerivedSources.make: 92460 * bindings/scripts/CodeGeneratorCPP.pm: 92461 * platform/graphics/wx/FontPlatformDataWx.cpp: 92462 (WebCore::FontPlatformData::FontPlatformData): 92463 * platform/wx/MouseEventWx.cpp: 92464 (WebCore::PlatformMouseEvent::PlatformMouseEvent): 92465 * wscript: 92466 92467 2010-07-28 Stephen White <senorblanco (a] chromium.org> 92468 92469 Reviewed by Darin Fisher. 92470 92471 Hook the GLES2 rendering path up to GraphicsContextSkia. 92472 https://bugs.webkit.org/show_bug.cgi?id=43119 92473 92474 This connects the state-setting and drawing calls implemented in 92475 so far in GLES2Canvas, and calls PlatformContextSkia's 92476 prepareForSoftwareDraw() for all the non-accelerated paths. 92477 92478 * platform/graphics/skia/GraphicsContextSkia.cpp: 92479 (WebCore::GraphicsContext::addInnerRoundedRectClip): 92480 (WebCore::GraphicsContext::addPath): 92481 (WebCore::GraphicsContext::beginPath): 92482 (WebCore::GraphicsContext::clip): 92483 (WebCore::GraphicsContext::drawConvexPolygon): 92484 (WebCore::GraphicsContext::drawEllipse): 92485 (WebCore::GraphicsContext::drawFocusRing): 92486 (WebCore::GraphicsContext::drawLine): 92487 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): 92488 (WebCore::GraphicsContext::drawLineForText): 92489 (WebCore::GraphicsContext::drawRect): 92490 (WebCore::GraphicsContext::fillPath): 92491 (WebCore::GraphicsContext::fillRoundedRect): 92492 (WebCore::GraphicsContext::strokeArc): 92493 (WebCore::GraphicsContext::strokePath): 92494 (WebCore::GraphicsContext::strokeRect): 92495 These calls are software-only; call preSoftwareDraw() for these. 92496 (WebCore::GraphicsContext::savePlatformState): 92497 (WebCore::GraphicsContext::restorePlatformState): 92498 (WebCore::GraphicsContext::setAlpha): 92499 (WebCore::GraphicsContext::setCompositeOperation): 92500 (WebCore::GraphicsContext::setPlatformFillColor): 92501 (WebCore::GraphicsContext::scale): 92502 (WebCore::GraphicsContext::rotate): 92503 (WebCore::GraphicsContext::translate): 92504 (WebCore::GraphicsContext::concatCTM): 92505 These ones set state on both Skia and GLES2Canvas. 92506 (WebCore::GraphicsContext::clearRect): 92507 (WebCore::GraphicsContext::fillRect): 92508 These ones have a GLES2 implementation; call through to it if PlatformContextSkia's useGPU() flag is set and the state permits. 92509 * platform/graphics/skia/PlatformContextSkia.cpp: 92510 (PlatformContextSkia::prepareForSoftwareDraw): 92511 (PlatformContextSkia::prepareForHardwareDraw): 92512 Rename preXXXDraw() -> prepareForXXXDraw(). 92513 * platform/graphics/skia/PlatformContextSkia.h: 92514 (PlatformContextSkia::prepareForSoftwareDraw): 92515 (PlatformContextSkia::prepareForHardwareDraw): 92516 Rename preXXXDraw() -> prepareForXXXDraw(). 92517 92518 2010-07-28 fsamuel (a] chromium.org <fsamuel (a] chromium.org> 92519 92520 Reviewed by David Hyatt. 92521 92522 REGRESSION (r63994): Bank of America's home page is horribly mis-rendered 92523 https://bugs.webkit.org/show_bug.cgi?id=42993 92524 92525 Fixed bug introduced by patch for bug 40775. 92526 92527 The new table rendering code did not take into account table layouts starting 92528 during a partial construction of the table render tree. As such, 92529 multiple layouts on the same table resulted in more columns being generated. 92530 This patch solves this issue. 92531 92532 * rendering/AutoTableLayout.cpp: 92533 (WebCore::AutoTableLayout::recalcColumn): 92534 * rendering/RenderTable.cpp: 92535 (WebCore::RenderTable::cellAbove): 92536 (WebCore::RenderTable::cellBelow): 92537 (WebCore::RenderTable::cellBefore): 92538 * rendering/RenderTableSection.cpp: 92539 (WebCore::RenderTableSection::ensureRows): 92540 (WebCore::RenderTableSection::addCell): 92541 (WebCore::RenderTableSection::setCellWidths): 92542 (WebCore::RenderTableSection::calcRowHeight): 92543 (WebCore::RenderTableSection::layoutRows): 92544 (WebCore::RenderTableSection::paintObject): 92545 (WebCore::RenderTableSection::appendColumn): 92546 (WebCore::RenderTableSection::splitColumn): 92547 * rendering/RenderTableSection.h: 92548 (WebCore::RenderTableSection::CellStruct::CellStruct): 92549 92550 2010-07-28 Tony Gentilcore <tonyg (a] chromium.org> 92551 92552 Reviewed by Pavel Feldman. 92553 92554 Exclude DNS and SSL time from connect time 92555 https://bugs.webkit.org/show_bug.cgi?id=43083 92556 92557 The ResourceLoadTiming API's definition of the connect phase includes 92558 DNS and SSL time. However, the Web Timing spec wants just the TCP time. 92559 So this patch subtracts those phases out. 92560 92561 No new tests because ResourceLoadTiming fields are not populated by 92562 TestShell yet. 92563 92564 * page/Timing.cpp: 92565 (WebCore::Timing::connectStart): 92566 (WebCore::Timing::connectEnd): 92567 92568 2010-07-26 Steve Block <steveblock (a] google.com> 92569 92570 Reviewed by Jeremy Orlow. 92571 92572 Page clients should be passed to Page constructor via structure of pointers 92573 https://bugs.webkit.org/show_bug.cgi?id=42834 92574 92575 No new tests, refactoring only. 92576 92577 * WebCore.exp.in: 92578 * page/Page.cpp: 92579 (WebCore::Page::Page): 92580 * page/Page.h: 92581 (WebCore::Page::PageClients::PageClients): 92582 * svg/graphics/SVGImage.cpp: 92583 (WebCore::SVGImage::dataChanged): 92584 92585 2010-07-28 Xianzhu Wang <phnixwxz (a] gmail.com> 92586 92587 Reviewed by Dan Bernstein. 92588 92589 Line not wrapped at certain punctuations 92590 https://bugs.webkit.org/show_bug.cgi?id=37698 92591 Added a line breaking table for all printable ASCII chars to replace 92592 the original line breaking table for only '?'. 92593 92594 Test: fast/text/line-breaks-after-closing-punctuations.html 92595 92596 * rendering/break_lines.cpp: 92597 (WebCore::isBreakableSpace): 92598 (WebCore::): 92599 (WebCore::shouldBreakAfter): 92600 (WebCore::needsLineBreakIterator): 92601 92602 2010-07-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 92603 92604 Unreviewed build fix. 92605 92606 Fix EFL build with SHARED_CORE=ON after r64124. 92607 92608 * CMakeLists.txt: 92609 92610 2010-07-28 Jay Civelli <jcivelli (a] chromium.org> 92611 92612 Reviewed by Kent Tamura. 92613 92614 [Chromium] The popup now layouts properly its rows by 92615 taking into account the label width. 92616 https://bugs.webkit.org/show_bug.cgi?id=42910 92617 92618 * platform/chromium/PopupMenuChromium.cpp: 92619 (WebCore::PopupListBox::layout): 92620 92621 2010-07-28 Pavel Feldman <pfeldman (a] chromium.org> 92622 92623 Not reviewed: chromium tests fix. 92624 Chromium Dev Tools: [REGRESSION] Pause is not working. 92625 92626 https://bugs.webkit.org/show_bug.cgi?id=43118 92627 92628 * inspector/front-end/InspectorBackendStub.js: 92629 92630 2010-07-28 Ilya Tikhonovsky <loislo (a] chromium.org> 92631 92632 Reviewed by Pavel Feldman. 92633 92634 WebInspector: Navigating to anchor prior to opening WebInspector 92635 makes resource have 'other' type. 92636 https://bugs.webkit.org/show_bug.cgi?id=43110 92637 92638 * inspector/InspectorResource.cpp: 92639 (WebCore::InspectorResource::type): 92640 (WebCore::InspectorResource::resourceData): 92641 * inspector/front-end/ResourceView.js: 92642 (WebInspector.ResourceView.prototype._innerSelectContentTab): 92643 92644 2010-07-28 Andreas Kling <andreas.kling (a] nokia.com> 92645 92646 Reviewed by Kenneth Rohde Christiansen. 92647 92648 [Qt] putImageData(): Combine premultiplication and BGR->RGB 92649 https://bugs.webkit.org/show_bug.cgi?id=43114 92650 92651 Further optimized putImageData() by doing BGR->RGB inside the 92652 premultiplication routine. 92653 92654 * platform/graphics/qt/ImageBufferQt.cpp: 92655 (WebCore::premultiplyABGRtoARGB): Renamed from premultiply. 92656 (WebCore::putImageData): 92657 92658 2010-07-28 Andrei Popescu <andreip (a] google.com> 92659 92660 Reviewed by Jeremy Orlow. 92661 92662 [IndexedDB] IDBKeyRange should be a runtime-enabled feature. 92663 https://bugs.webkit.org/show_bug.cgi?id=43116 92664 92665 IDBKeyRange should be enabled at runtime only when IndexedDB is also 92666 enabled. 92667 92668 No new tests needed, functionality not changed. 92669 92670 * bindings/generic/RuntimeEnabledFeatures.h: 92671 (WebCore::RuntimeEnabledFeatures::iDBKeyRangeEnabled): 92672 * page/DOMWindow.idl: 92673 92674 2010-07-28 Nikolas Zimmermann <nzimmermann (a] rim.com> 92675 92676 Not reviewed. Forgot to land GNUmakefile.am changes, broke build in r64196. 92677 92678 * GNUmakefile.am: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build. 92679 92680 2010-07-28 Nikolas Zimmermann <nzimmermann (a] rim.com> 92681 92682 Reviewed by Dirk Schulze. 92683 92684 SVGMaskElement/SVGForeignObjectElement should not inherit from SVGURIReference 92685 https://bugs.webkit.org/show_bug.cgi?id=43113 92686 92687 Remove wrong SVGURIReference inheritance for SVGMaskElement/SVGForeignObjectElement. Old copy/paste bug. 92688 92689 * svg/SVGForeignObjectElement.cpp: 92690 (WebCore::SVGForeignObjectElement::synchronizeProperty): 92691 * svg/SVGForeignObjectElement.h: 92692 * svg/SVGMaskElement.cpp: 92693 (WebCore::SVGMaskElement::SVGMaskElement): 92694 (WebCore::SVGMaskElement::parseMappedAttribute): 92695 (WebCore::SVGMaskElement::svgAttributeChanged): 92696 (WebCore::SVGMaskElement::synchronizeProperty): 92697 * svg/SVGMaskElement.h: 92698 92699 2010-07-28 Nikolas Zimmermann <nzimmermann (a] rim.com> 92700 92701 Reviewed by Dirk Schulze. 92702 92703 WebKit shouldn't ignore resource cycles, but break them as Opera does 92704 https://bugs.webkit.org/show_bug.cgi?id=43031 92705 92706 Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that. 92707 92708 We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the 92709 node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have 92710 to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.). 92711 92712 Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker). 92713 Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references 92714 from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic, 92715 which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources 92716 objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint 92717 phase begins. 92718 92719 This is the first chunk, which just adds the new SVGResources/SVGResourcesCache/SVGResourcesCycleSolver files, and does minor cleanups. 92720 It's not yet glued in and doesn't affect any tests. 92721 92722 * Android.mk: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build. 92723 * CMakeLists.txt: Ditto. 92724 * WebCore.gypi: Ditto. 92725 * WebCore.pro: Ditto. 92726 * WebCore.vcproj/WebCore.vcproj: Ditto. 92727 * WebCore.xcodeproj/project.pbxproj: Ditto. 92728 * rendering/RenderInline.h: Make styleDidChange protected, RenderSVGInline wants to override it. 92729 * rendering/RenderSVGAllInOne.cpp: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build. 92730 * rendering/RenderSVGHiddenContainer.h: 92731 (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer): Make isSVGHiddenContainer() private and renderName() public. 92732 * rendering/RenderSVGResourceContainer.cpp: Added. Moved most methods from the header in the implementation file. 92733 (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): 92734 (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer): 92735 (WebCore::RenderSVGResourceContainer::idChanged): 92736 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): 92737 (WebCore::RenderSVGResourceContainer::containsCyclicReference): 92738 * rendering/RenderSVGResourceContainer.h: Add stubs, that SVGResourcesCache uses - a follow-up patch will add the logic. 92739 (WebCore::RenderSVGResourceContainer::addClient): 92740 (WebCore::RenderSVGResourceContainer::removeClient): 92741 * rendering/SVGResources.cpp: Added. Holds a list of resources applyable to a RenderObject (fill/stroke, mask/markers/clipper/filter) 92742 (WebCore::paintingResourceFromSVGPaint): Helper function looking up a RenderSVGResource for a SVGPaint object. 92743 (WebCore::registerPendingResource): Helper function that register a RenderSVGResource as pending in the SVGDocumentExtensions. 92744 (WebCore::SVGResources::buildCachedResources): Build a list of resources for a RenderObject/RenderStyle pair, handles pending resources, if needed. 92745 (WebCore::SVGResources::invalidateClient): Helper function that calls invalidateClient() on all resources. 92746 (WebCore::SVGResources::resourceDestroyed): Helper function that calls invalidateClients() on a certain resource, and nulls it. 92747 (WebCore::SVGResources::buildSetOfResources): Helper function that stashes all resources present in the SVGResources members in a HashSet, used in SVGResourcesCycleSolver. 92748 (WebCore::SVGResources::resetClipper): Helper methods nulling a resource. 92749 (WebCore::SVGResources::resetFilter): Ditto. 92750 (WebCore::SVGResources::resetMarkerStart): Ditto. 92751 (WebCore::SVGResources::resetMarkerMid): Ditto. 92752 (WebCore::SVGResources::resetMarkerEnd): Ditto. 92753 (WebCore::SVGResources::resetMasker): Ditto. 92754 (WebCore::SVGResources::resetFill): Ditto. 92755 (WebCore::SVGResources::resetStroke): Ditto. 92756 (WebCore::SVGResources::dump): 92757 * rendering/SVGResources.h: Added. 92758 (WebCore::SVGResources::clipper): Accesor of the cached m_foo variable. 92759 (WebCore::SVGResources::filter): Ditto. 92760 (WebCore::SVGResources::markerStart): Ditto. 92761 (WebCore::SVGResources::markerMid): Ditto. 92762 (WebCore::SVGResources::markerEnd): Ditto. 92763 (WebCore::SVGResources::masker): Ditto. 92764 (WebCore::SVGResources::fill): Ditto. 92765 (WebCore::SVGResources::stroke): Ditto. 92766 * rendering/SVGResourcesCache.cpp: Added. Holds a HashMap<RenderObject*, SVGResources*> and utility functions that update/invalidate the cache. 92767 (WebCore::SVGResourcesCache::SVGResourcesCache): 92768 (WebCore::SVGResourcesCache::~SVGResourcesCache): 92769 (WebCore::SVGResourcesCache::addResourcesFromRenderObject): Build a SVGResources object for a RenderObject and adds it to the cache, then detects & breaks cycles using SVGResourcesCycleSolver. 92770 (WebCore::SVGResourcesCache::removeResourcesFromRenderObject): Remove a SVGResources object from the cache. 92771 (WebCore::resourcesCacheFromRenderObject): Helper function, retrieving a SVGResourcesCache method from a RenderObject. 92772 (WebCore::SVGResourcesCache::cachedResourcesForRenderObject): Returns a SVGResources object from the cache. 92773 (WebCore::SVGResourcesCache::clientLayoutChanged): (static) Calls invalidateClient() on all resources that are used by the passed RenderObject. 92774 (WebCore::SVGResourcesCache::clientStyleChanged): (static) Updates the cache (calling removeResourceFromRenderObject/addResourcesFrom...) and invalidates resources in the ancestor chain. 92775 (WebCore::SVGResourcesCache::clientUpdatedFromElement): (static) Does the same, without invalidating the ancestor chain. 92776 (WebCore::SVGResourcesCache::clientDestroyed): (static) Calls removeResourcesFromRenderObject() on the SVGResourcesCache, for the given renderer. 92777 (WebCore::SVGResourcesCache::resourceDestroyed): (static) Updates all SVGResources objects in the cache, that refer to the given resource. 92778 * rendering/SVGResourcesCache.h: Added. 92779 * rendering/SVGResourcesCycleSolver.cpp: Added. Detects and breaks cyclic references, just the way Opera handles it. Break cycles as they are detected. 92780 (WebCore::SVGResourcesCycleSolver::SVGResourcesCycleSolver): 92781 (WebCore::SVGResourcesCycleSolver::~SVGResourcesCycleSolver): 92782 (WebCore::SVGResourcesCycleSolver::resourceContainsCycles): Operates only on the render tree 92783 (WebCore::targetReferenceFromResource): Helper method for chainableResourceContainsCycles(). 92784 (WebCore::setFollowLinkForChainableResource): Ditto. 92785 (WebCore::SVGResourcesCycleSolver::chainableResourceContainsCycles): Handles cycles for resources that are chainable through xlink:href (filter/gradient/pattern). 92786 (WebCore::SVGResourcesCycleSolver::resolveCycles): Main method executing the cycle breaking logic, utilizing (chainableResource)resourceContainsCycles. 92787 (WebCore::SVGResourcesCycleSolver::breakCycle): Nulls a resource in the given SVGResources* object, to avoid using an invalid resource while rendering/layouting. 92788 * rendering/SVGResourcesCycleSolver.h: Added. 92789 * svg/SVGDocumentExtensions.cpp: 92790 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): Create SVGResourcesCache object once per SVGDocumentExtensions. 92791 * svg/SVGDocumentExtensions.h: 92792 (WebCore::SVGDocumentExtensions::resourcesCache): Expose accesor method for the SVGResourcesCache. 92793 92794 2010-07-28 Zoltan Herczeg <zherczeg (a] webkit.org> 92795 92796 Reviewed by Nikolas Zimmermann. 92797 92798 SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change 92799 https://bugs.webkit.org/show_bug.cgi?id=42244 92800 92801 Implementing svgAttributeChanged for SVGFEOffsetElement object. 92802 92803 Tests: svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr.html 92804 svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr.html 92805 svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr.html 92806 svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop.html 92807 svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop.html 92808 svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop.html 92809 92810 * svg/SVGFEOffsetElement.cpp: 92811 (WebCore::SVGFEOffsetElement::svgAttributeChanged): 92812 * svg/SVGFEOffsetElement.h: 92813 92814 2010-07-28 Zoltan Herczeg <zherczeg (a] webkit.org> 92815 92816 Reviewed by Nikolas Zimmermann. 92817 92818 SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change 92819 https://bugs.webkit.org/show_bug.cgi?id=42244 92820 92821 Implementing svgAttributeChanged for SVGFEDiffuseLightingElement object. 92822 92823 Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.html 92824 svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr.html 92825 svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr.html 92826 svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.html 92827 svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop.html 92828 svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.html 92829 svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop.html 92830 svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.html 92831 92832 * svg/SVGFEDiffuseLightingElement.cpp: 92833 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): 92834 * svg/SVGFEDiffuseLightingElement.h: 92835 92836 2010-07-27 Kinuko Yasuda <kinuko (a] chromium.org> 92837 92838 Reviewed by Ojan Vafai. 92839 92840 Add FILE_SYSTEM build flag for FileSystem API 92841 https://bugs.webkit.org/show_bug.cgi?id=42915 92842 92843 * Configurations/FeatureDefines.xcconfig: 92844 * GNUmakefile.am: 92845 * WebCore.pri: 92846 92847 2010-07-26 Yuzo Fujishima <yuzo (a] google.com> 92848 92849 Reviewed by Shinichiro Hamaji. 92850 92851 @page rules in media queries should be tested. 92852 https://bugs.webkit.org/show_bug.cgi?id=42971 92853 92854 * page/PrintContext.cpp: 92855 (WebCore::PrintContext::pageProperty): Fixed to properly begin 92856 printing. Added support for size property. 92857 92858 2010-07-27 James Hawkins <jhawkins (a] chromium.org> 92859 92860 Reviewed by Darin Fisher. 92861 92862 Add itemIcon() method to the PopupMenuClient, used by Chrome AutoFill 92863 to display right-aligned credit card icons in the suggestions popup. 92864 https://bugs.webkit.org/show_bug.cgi?id=43076 92865 92866 No new tests as this is only used by the Chromium WebKit API. 92867 92868 * platform/PopupMenuClient.h: 92869 * platform/chromium/PopupMenuChromium.cpp: 92870 (WebCore::PopupListBox::paintRow): 92871 * rendering/RenderMenuList.cpp: 92872 (WebCore::RenderMenuList::itemIcon): 92873 * rendering/RenderMenuList.h: 92874 * rendering/RenderTextControlSingleLine.cpp: 92875 (WebCore::RenderTextControlSingleLine::itemIcon): 92876 * rendering/RenderTextControlSingleLine.h: 92877 92878 2010-07-27 Andreas Kling <andreas.kling (a] nokia.com> 92879 92880 Reviewed by Kenneth Rohde Christiansen. 92881 92882 [Qt] putImageData(): Fast premultiply() if alpha == 255 92883 92884 * platform/graphics/qt/ImageBufferQt.cpp: 92885 (WebCore::premultiply): Do nothing for opaque pixels. 92886 92887 2010-07-27 Jian Li <jianli (a] chromium.org> 92888 92889 Reviewed by David Levin. 92890 92891 Enhance FileThreadTask to support return type. 92892 https://bugs.webkit.org/show_bug.cgi?id=43078 92893 92894 This is needed to support synchronous calls of FileStream methods in 92895 addition to asynchronous calls via FileThreadTask. 92896 92897 * html/FileThreadTask.h: 92898 (WebCore::createFileThreadTask): 92899 92900 2010-07-27 James Robinson <jamesr (a] chromium.org> 92901 92902 Reviewed by Darin Fisher. 92903 92904 [chromium] Let PlatformContextSkia draw to a GLES2Canvas in addition to an SkCanvas 92905 https://bugs.webkit.org/show_bug.cgi?id=43070 92906 92907 This adds a GLES2Canvas as drawing surface to PlatformContextSkia and lets callers 92908 issue draw commands to either. The PlatformContextSkia keeps track of where 92909 rendering results are being accumulated and can blend the hardware and software 92910 backing stores into each other when necessary. 92911 92912 Still just plumbing, no functionality change. 92913 92914 * platform/graphics/chromium/GLES2Canvas.cpp: 92915 (WebCore::GLES2Canvas::GLES2Canvas): 92916 * platform/graphics/chromium/GLES2Canvas.h: 92917 * platform/graphics/skia/PlatformContextSkia.cpp: 92918 (PlatformContextSkia::PlatformContextSkia): 92919 (PlatformContextSkia::setGLES2Context): 92920 (PlatformContextSkia::preSoftwareDraw): 92921 (PlatformContextSkia::preHardwareDraw): 92922 (PlatformContextSkia::forceToSoftware): 92923 (PlatformContextSkia::uploadSoftwareToHardware): 92924 (PlatformContextSkia::readbackHardwareToSoftware): 92925 * platform/graphics/skia/PlatformContextSkia.h: 92926 (PlatformContextSkia::useGPU): 92927 (PlatformContextSkia::gpuCanvas): 92928 (PlatformContextSkia::preSoftwareDraw): 92929 (PlatformContextSkia::preHardwareDraw): 92930 (PlatformContextSkia::forceToSoftware): 92931 (PlatformContextSkia::): 92932 92933 2010-07-27 Simon Fraser <simon.fraser (a] apple.com> 92934 92935 Reviewed by Darin Adler. 92936 92937 Incomplete repaint of some Safari extension content which falls into a composited iframe 92938 <rdar://problem/8235044> 92939 92940 syncCompositingStateRecursive() bails if it thinks that a layout is pending, because 92941 the layout may update layers and make this sync obsolete. However, it only checked for an 92942 active layout timer. This ignores other sources of pending style changes and layouts, like 92943 the document's style recalc timer. So use needsLayout(), which does check this. 92944 92945 Unable to create a test because it depends on Safari extension behavior. 92946 92947 * page/FrameView.cpp: 92948 (WebCore::FrameView::syncCompositingStateRecursive): 92949 92950 2010-07-27 Andreas Kling <andreas.kling (a] nokia.com> 92951 92952 Reviewed by Kenneth Rohde Christiansen. 92953 92954 [Qt] putImageData() optimizations 92955 https://bugs.webkit.org/show_bug.cgi?id=43059 92956 92957 - Single-pass premultiplication and BGR->RGB conversion 92958 - Use ARGB32PM for the temporary image so Qt calls the 92959 fast Source composition function 92960 92961 * platform/graphics/qt/ImageBufferQt.cpp: 92962 (WebCore::premultiply): Added (static inline) 92963 (WebCore::putImageData): 92964 92965 2010-07-27 Anders Carlsson <andersca (a] apple.com> 92966 92967 Reviewed by Sam Weinig. 92968 92969 Expose interface for returning the plug-in script JSObject 92970 https://bugs.webkit.org/show_bug.cgi?id=43074 92971 92972 PluginViewBase::scriptObject should be a virtual function. 92973 92974 * plugins/PluginViewBase.h: 92975 (WebCore::PluginViewBase::scriptObject): 92976 92977 2010-07-27 Jian Li <jianli (a] chromium.org> 92978 92979 Reviewed by David Levin. 92980 92981 Add ScriptExecutionContext argument to File/Blob constructors. 92982 https://bugs.webkit.org/show_bug.cgi?id=40587 92983 92984 Remove DragData::createClipboard and add Clipboard::create for it to be 92985 called directly in DragController. This is because we need to pass 92986 Frame pointer to Clipboard class and use it to get ScriptExecutionContext 92987 in order to construct File objects in Clipboard::files(). 92988 92989 * bindings/js/SerializedScriptValue.cpp: 92990 (WebCore::DeserializingTreeWalker::convertIfTerminal): 92991 * bindings/v8/SerializedScriptValue.cpp: 92992 (WebCore::ZigZag::Reader::readBlob): 92993 (WebCore::ZigZag::Reader::readFile): 92994 (WebCore::ZigZag::Reader::readFileList): 92995 * dom/Clipboard.h: 92996 * editing/Editor.cpp: 92997 (WebCore::Editor::dispatchCPPEvent): 92998 * editing/Editor.h: 92999 * editing/android/EditorAndroid.cpp: 93000 (WebCore::Editor::newGeneralClipboard): 93001 * editing/brew/EditorBrew.cpp: 93002 (WebCore::Editor::newGeneralClipboard): 93003 * editing/chromium/EditorChromium.cpp: 93004 (WebCore::Editor::newGeneralClipboard): 93005 * editing/haiku/EditorHaiku.cpp: 93006 (WebCore::Editor::newGeneralClipboard): 93007 * editing/mac/EditorMac.mm: 93008 (WebCore::Editor::newGeneralClipboard): 93009 * editing/qt/EditorQt.cpp: 93010 (WebCore::Editor::newGeneralClipboard): 93011 * editing/wx/EditorWx.cpp: 93012 (WebCore::Editor::newGeneralClipboard): 93013 * html/Blob.cpp: 93014 (WebCore::Blob::Blob): 93015 (WebCore::Blob::slice): 93016 * html/Blob.h: 93017 (WebCore::Blob::create): 93018 * html/Blob.idl: 93019 * html/BlobBuilder.cpp: 93020 (WebCore::BlobBuilder::getBlob): 93021 * html/BlobBuilder.h: 93022 * html/BlobBuilder.idl: 93023 * html/File.cpp: 93024 (WebCore::File::File): 93025 * html/File.h: 93026 (WebCore::File::create): 93027 * html/HTMLInputElement.cpp: 93028 (WebCore::HTMLInputElement::appendFormData): 93029 (WebCore::HTMLInputElement::setFileListFromRenderer): 93030 * page/DragController.cpp: 93031 (WebCore::DragController::dragExited): 93032 (WebCore::DragController::performDrag): 93033 (WebCore::DragController::tryDHTMLDrag): 93034 * page/chromium/EventHandlerChromium.cpp: 93035 (WebCore::EventHandler::createDraggingClipboard): 93036 * page/gtk/EventHandlerGtk.cpp: 93037 (WebCore::EventHandler::createDraggingClipboard): 93038 * page/win/EventHandlerWin.cpp: 93039 (WebCore::EventHandler::createDraggingClipboard): 93040 * platform/DragData.h: 93041 * platform/android/ClipboardAndroid.cpp: 93042 (WebCore::Clipboard::create): 93043 * platform/android/DragDataAndroid.cpp: 93044 * platform/brew/ClipboardBrew.cpp: 93045 (WebCore::Clipboard::create): 93046 * platform/brew/DragDataBrew.cpp: 93047 * platform/chromium/ClipboardChromium.cpp: 93048 (WebCore::Clipboard::create): 93049 (WebCore::ClipboardChromium::ClipboardChromium): 93050 (WebCore::ClipboardChromium::create): 93051 (WebCore::ClipboardChromium::files): 93052 * platform/chromium/ClipboardChromium.h: 93053 * platform/chromium/DragDataChromium.cpp: 93054 * platform/efl/ClipboardEfl.cpp: 93055 (WebCore::Editor::newGeneralClipboard): 93056 (WebCore::Clipboard::create): 93057 * platform/efl/DragDataEfl.cpp: 93058 * platform/gtk/ClipboardGtk.cpp: 93059 (WebCore::Editor::newGeneralClipboard): 93060 (WebCore::Clipboard::create): 93061 (WebCore::ClipboardGtk::ClipboardGtk): 93062 (WebCore::ClipboardGtk::files): 93063 * platform/gtk/ClipboardGtk.h: 93064 (WebCore::ClipboardGtk::create): 93065 * platform/gtk/DragDataGtk.cpp: 93066 * platform/haiku/ClipboardHaiku.cpp: 93067 (WebCore::Clipboard::create): 93068 * platform/haiku/DragDataHaiku.cpp: 93069 * platform/mac/ClipboardMac.mm: 93070 (WebCore::Clipboard::create): 93071 (WebCore::ClipboardMac::files): 93072 * platform/mac/DragDataMac.mm: 93073 * platform/qt/ClipboardQt.cpp: 93074 (WebCore::Clipboard::create): 93075 * platform/qt/DragDataQt.cpp: 93076 * platform/win/ClipboardWin.cpp: 93077 (WebCore::Clipboard::create): 93078 (WebCore::ClipboardWin::ClipboardWin): 93079 (WebCore::ClipboardWin::files): 93080 * platform/win/ClipboardWin.h: 93081 (WebCore::ClipboardWin::create): 93082 * platform/win/DragDataWin.cpp: 93083 * platform/win/EditorWin.cpp: 93084 (WebCore::Editor::newGeneralClipboard): 93085 * platform/wince/DragDataWince.cpp: 93086 * platform/wince/EditorWince.cpp: 93087 (WebCore::Editor::newGeneralClipboard): 93088 * platform/wx/ClipboardWx.cpp: 93089 (WebCore::Clipboard::create): 93090 * platform/wx/DragDataWx.cpp: 93091 93092 2010-07-27 Dumitru Daniliuc <dumi (a] chromium.org> 93093 93094 Reviewed by David Levin. 93095 93096 Move all WebSQLDatabases-specific code behind #if ENABLE(DATABASE). 93097 https://bugs.webkit.org/show_bug.cgi?id=43035 93098 93099 Make Chromium compile with ENABLE_DATABASE=0. The #ifdefs in 93100 DatabaseAuthorizer and ChromiumBridge are removed, because they're 93101 used by non-HTML5 DBs too (the classes in WebCore/platform/sql/), 93102 which are used by other features too. So they need to be compiled 93103 in even if HTML5 DBs are disabled. 93104 93105 * bindings/v8/custom/V8DOMWindowCustom.cpp: 93106 * page/DOMWindow.idl: 93107 * platform/chromium/ChromiumBridge.h: 93108 * storage/DatabaseAuthorizer.cpp: 93109 * storage/chromium/DatabaseObserver.h: 93110 * storage/chromium/DatabaseTrackerChromium.cpp: 93111 * storage/chromium/QuotaTracker.cpp: 93112 * storage/chromium/QuotaTracker.h: 93113 * storage/chromium/SQLTransactionClientChromium.cpp: 93114 93115 2010-07-27 Chris Fleizach <cfleizach (a] apple.com> 93116 93117 Reviewed by David Kilzer. 93118 93119 AX: Misspellings not shown in AXAttributedStringForTextMarkerRange when selection is on word 93120 https://bugs.webkit.org/show_bug.cgi?id=41817 93121 93122 Change how misspelled words are identified for accessibility. No longer rely on the 93123 cached markers in Document. Calculate on the fly, which is more accurate in a variety of 93124 circumstances (like when selection has not moved across words, of if the cursor is in the middle 93125 of a misspelled word). 93126 93127 Test: platform/mac/accessibility/attributed-string-includes-misspelled-with-selection.html 93128 93129 * accessibility/mac/AccessibilityObjectWrapper.mm: 93130 (AXAttributeStringSetSpelling): 93131 (AXAttributedStringAppendText): 93132 (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): 93133 93134 2010-07-27 Gavin Barraclough <barraclough (a] apple.com> 93135 93136 Reviewed by Oliver Hunt. 93137 93138 Bug 42621 - Add a bump allocator for the YARR interpreter 93139 93140 The regex engine requires lifo allocation, however currently uses the general purpose 93141 malloc/free memory allocation. A simple bump pointer allocator should provide a lower 93142 overhead allocation solution. 93143 93144 * ForwardingHeaders/wtf/BumpPointerAllocator.h: Added. 93145 93146 2010-07-27 Pavel Feldman <pfeldman (a] chromium.org> 93147 93148 Reviewed by Joseph Pecoraro. 93149 93150 Web Inspector: render network timing as gant chart in popover. 93151 93152 https://bugs.webkit.org/show_bug.cgi?id=43051 93153 93154 * inspector/InspectorResource.cpp: 93155 (WebCore::InspectorResource::buildObjectForTiming): 93156 * inspector/front-end/ResourcesPanel.js: 93157 (WebInspector.ResourcesPanel.prototype._showPopover): 93158 * inspector/front-end/inspector.css: 93159 (.resource-timing-row): 93160 (.resource-timing-bar): 93161 (.resource-timing-bar-title): 93162 * inspector/front-end/utilities.js: 93163 93164 2010-07-27 Victor Wang <victorw (a] chromium.org> 93165 93166 Unreviewed, rolling out r64104. 93167 http://trac.webkit.org/changeset/64104 93168 https://bugs.webkit.org/show_bug.cgi?id=40768 93169 93170 The patch causes chromium webkit socket laytest crashes on 93171 windows randomly 93172 93173 * inspector/InspectorController.cpp: 93174 (WebCore::InspectorController::addResource): 93175 (WebCore::InspectorController::removeResource): 93176 * inspector/InspectorController.h: 93177 * inspector/InspectorResource.cpp: 93178 (WebCore::InspectorResource::InspectorResource): 93179 (WebCore::InspectorResource::updateScriptObject): 93180 (WebCore::InspectorResource::cachedResource): 93181 (WebCore::InspectorResource::type): 93182 (WebCore::InspectorResource::resourceData): 93183 * inspector/InspectorResource.h: 93184 (WebCore::InspectorResource::): 93185 (WebCore::InspectorResource::create): 93186 * inspector/front-end/Resource.js: 93187 (WebInspector.Resource.Type.toString): 93188 (WebInspector.Resource.prototype.set type): 93189 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 93190 * inspector/front-end/ResourceView.js: 93191 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 93192 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 93193 (WebInspector.ResourceView.prototype._refreshHeaders): 93194 * inspector/front-end/inspector.css: 93195 (.resources-category-scripts, .resources-category-xhr, .resources-category-fonts, .resources-category-other): 93196 * inspector/front-end/inspector.js: 93197 (WebInspector.loaded): 93198 (WebInspector.updateResource): 93199 * websockets/WebSocketChannel.cpp: 93200 (WebCore::WebSocketChannel::WebSocketChannel): 93201 (WebCore::WebSocketChannel::disconnect): 93202 (WebCore::WebSocketChannel::didOpen): 93203 (WebCore::WebSocketChannel::didClose): 93204 (WebCore::WebSocketChannel::processBuffer): 93205 * websockets/WebSocketChannel.h: 93206 93207 2010-07-27 Andrei Popescu <andreip (a] google.com> 93208 93209 Reviewed by Jeremy Orlow. 93210 93211 [IndexedDB] Key range methods belong to the IDBKeyRange interface 93212 https://bugs.webkit.org/show_bug.cgi?id=43052 93213 93214 Move the key range methods from the IndexedDatabaseRequest interface 93215 to the IDBKeyRange interface. Also add a global IDBKeyRange object 93216 that can be used to access the IDBKeyRange constants and factory methods. 93217 93218 * page/DOMWindow.cpp: 93219 (WebCore::DOMWindow::clear): 93220 (WebCore::DOMWindow::iDBKeyRange): 93221 * page/DOMWindow.h: 93222 * page/DOMWindow.idl: 93223 * storage/IDBKeyRange.cpp: 93224 (WebCore::IDBKeyRange::only): 93225 (WebCore::IDBKeyRange::leftBound): 93226 (WebCore::IDBKeyRange::rightBound): 93227 (WebCore::IDBKeyRange::bound): 93228 * storage/IDBKeyRange.h: 93229 * storage/IDBKeyRange.idl: 93230 * storage/IndexedDatabaseRequest.cpp: 93231 * storage/IndexedDatabaseRequest.h: 93232 * storage/IndexedDatabaseRequest.idl: 93233 93234 2010-07-27 Chris Fleizach <cfleizach (a] apple.com> 93235 93236 Reviewed by Darin Adler. 93237 93238 AX: consolidate parentObjectIfExists() and parentObject() code 93239 https://bugs.webkit.org/show_bug.cgi?id=42981 93240 93241 Consolidate duplicate code in parentObject and parentObjectIfExists 93242 93243 No tests. No functionality changed. 93244 93245 * accessibility/AccessibilityRenderObject.cpp: 93246 (WebCore::AccessibilityRenderObject::renderParentObject): 93247 (WebCore::AccessibilityRenderObject::parentObjectIfExists): 93248 (WebCore::AccessibilityRenderObject::parentObject): 93249 * accessibility/AccessibilityRenderObject.h: 93250 93251 2010-07-27 Chris Fleizach <cfleizach (a] apple.com> 93252 93253 Reviewed by Adam Barth. 93254 93255 AX: replace m_renderer->document->axObjectCache() with just axObjectCache() 93256 https://bugs.webkit.org/show_bug.cgi?id=42979 93257 93258 No new tests. Code cleanup only. 93259 93260 * accessibility/AccessibilityRenderObject.cpp: 93261 (WebCore::AccessibilityRenderObject::firstChild): 93262 (WebCore::AccessibilityRenderObject::lastChild): 93263 (WebCore::AccessibilityRenderObject::previousSibling): 93264 (WebCore::AccessibilityRenderObject::nextSibling): 93265 (WebCore::AccessibilityRenderObject::parentObjectIfExists): 93266 (WebCore::AccessibilityRenderObject::parentObject): 93267 (WebCore::AccessibilityRenderObject::menuForMenuButton): 93268 (WebCore::AccessibilityRenderObject::menuButtonForMenu): 93269 (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers): 93270 (WebCore::AccessibilityRenderObject::axObjectCache): 93271 (WebCore::AccessibilityRenderObject::contentChanged): 93272 (WebCore::AccessibilityRenderObject::addChildren): 93273 93274 2010-07-27 Pavel Podivilov <podivilov (a] chromium.org> 93275 93276 Reviewed by Pavel Feldman. 93277 93278 Web Inspector: do not activate all breakpoints on page reload 93279 https://bugs.webkit.org/show_bug.cgi?id=41461 93280 93281 Test: inspector/debugger-breakpoints-not-activated-on-reload.html 93282 93283 * inspector/front-end/ScriptView.js: 93284 (WebInspector.ScriptView.prototype._addBreakpoint): 93285 * inspector/front-end/ScriptsPanel.js: 93286 (WebInspector.ScriptsPanel): 93287 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 93288 (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked): 93289 * inspector/front-end/SourceView.js: 93290 (WebInspector.SourceView.prototype._addBreakpoint): 93291 93292 2010-07-27 Pranav Kedia <pranavk (a] chromium.org> 93293 93294 Reviewed by Adam Barth. 93295 93296 Chrome browser Bug: Pause button stays when <audio> hits end 93297 https://bugs.webkit.org/show_bug.cgi?id=42677 93298 93299 The change is just in chromium media. Tested using media part of 93300 WebKit layout tests. The following test that was failing is passing. 93301 media/video-duration-known-after-eos.html -> unexpected pass 93302 93303 * rendering/RenderMediaControlsChromium.cpp: 93304 (WebCore::paintMediaPlayButton): 93305 Using mediaElement->canPlay() instead of mediaElement->paused() to 93306 paint the play/pause button. 93307 93308 2010-07-27 Steve Block <steveblock (a] google.com> 93309 93310 Reviewed by Jeremy Orlow. 93311 93312 Client-based Geolocation does not pass enableHighAccuracy option to controller and client 93313 https://bugs.webkit.org/show_bug.cgi?id=40374 93314 93315 This change passes the enableHighAccuracy request option to the GeolocationController. 93316 The GeolocationController tracks whether this should be used by the client. 93317 93318 No new tests possible as the mock provider doesn't support this feature. 93319 93320 * page/Geolocation.cpp: 93321 (WebCore::Geolocation::setIsAllowed): 93322 (WebCore::Geolocation::startUpdating): 93323 * page/GeolocationController.cpp: 93324 (WebCore::GeolocationController::addObserver): 93325 (WebCore::GeolocationController::removeObserver): 93326 * page/GeolocationController.h: 93327 * page/GeolocationControllerClient.h: 93328 93329 2010-07-27 Ilya Tikhonovsky <loislo (a] chromium.org> 93330 93331 Reviewed by Pavel Feldman. 93332 93333 WebInspector: Current implementation of message based inspector 93334 transport generated by CodeGeneratorInspector should be upstreamed 93335 from WebKit/chromium to WebCore. 93336 https://bugs.webkit.org/show_bug.cgi?id=42983 93337 93338 * Android.derived.v8bindings.mk: 93339 * CMakeLists.txt: 93340 * DerivedSources.cpp: 93341 * DerivedSources.make: 93342 * GNUmakefile.am: 93343 * WebCore.exp.in: 93344 * WebCore.gypi: 93345 * WebCore.pri: 93346 * WebCore.vcproj/WebCore.vcproj: 93347 * WebCore.xcodeproj/project.pbxproj: 93348 * bindings/js/ScriptObject.cpp: 93349 * bindings/js/ScriptObject.h: 93350 * bindings/v8/ScriptObject.cpp: 93351 * bindings/v8/ScriptObject.h: 93352 * inspector/CodeGeneratorInspector.pm: 93353 * inspector/InspectorBackend.idl: Removed. 93354 * inspector/InspectorFrontendClient.h: 93355 * inspector/InspectorFrontendClientLocal.cpp: 93356 (WebCore::InspectorFrontendClientLocal::windowObjectCleared): 93357 (WebCore::InspectorFrontendClientLocal::sendMessageToBackend): 93358 * inspector/InspectorFrontendClientLocal.h: 93359 * inspector/InspectorFrontendHost.cpp: 93360 (WebCore::InspectorFrontendHost::sendMessageToBackend): 93361 * inspector/InspectorFrontendHost.h: 93362 * inspector/InspectorFrontendHost.idl: 93363 * inspector/front-end/InspectorBackendStub.js: 93364 (.WebInspector.InspectorBackendStub): 93365 (.WebInspector.InspectorBackendStub.prototype._registerDelegate): 93366 (.WebInspector.InspectorBackendStub.prototype.sendMessageToBackend): 93367 93368 2010-07-27 Satish Sampath <satish (a] chromium.org> 93369 93370 Reviewed by Kent Tamura. 93371 93372 Simplify speech input plumbing in webcore and webkit 93373 https://bugs.webkit.org/show_bug.cgi?id=43008 93374 93375 No new tests as functionality is not changed. 93376 93377 * GNUmakefile.am: Removed a header file. 93378 * WebCore.gypi: 93379 * WebCore.pro: 93380 * WebCore.vcproj/WebCore.vcproj: 93381 * WebCore.xcodeproj/project.pbxproj: 93382 * page/Page.cpp: 93383 (WebCore::Page::speechInput): Creates and returns SpeechInput when needed. 93384 * page/Page.h: 93385 * page/SpeechInput.cpp: Added methods to proxy and callbacks between input elements and WebKit 93386 (WebCore::SpeechInput::SpeechInput): 93387 (WebCore::SpeechInput::didCompleteRecording): 93388 (WebCore::SpeechInput::didCompleteRecognition): 93389 (WebCore::SpeechInput::setRecognitionResult): 93390 (WebCore::SpeechInput::startRecognition): 93391 (WebCore::SpeechInput::stopRecording): 93392 * page/SpeechInput.h: 93393 * page/SpeechInputClient.h: 93394 * page/SpeechInputClientListener.h: Removed. 93395 * page/SpeechInputListener.h: 93396 * rendering/TextControlInnerElements.cpp: Added one more callback. 93397 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 93398 (WebCore::InputFieldSpeechButtonElement::speechInput): 93399 (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition): 93400 * rendering/TextControlInnerElements.h: 93401 93402 2010-07-27 Kent Tamura <tkent (a] chromium.org> 93403 93404 Reviewed by Ojan Vafai. 93405 93406 Add a runtime setting for interactive form validation. 93407 https://bugs.webkit.org/show_bug.cgi?id=40520 93408 93409 The interactive validation feature was disabled for non-strict 93410 modes by r61059 to avoid a compatibility issue. This removes the 93411 mode checking and introduce a runtime setting to enable/disable 93412 the feature instead. 93413 The default value is 'disable' and we'll remove the setting when 93414 the compatibility issue is resolved and interactive validation 93415 implementation is completed. 93416 93417 * html/HTMLFormElement.cpp: 93418 (WebCore::HTMLFormElement::validateInteractively): 93419 * page/Settings.cpp: 93420 (WebCore::Settings::Settings): 93421 * page/Settings.h: 93422 (WebCore::Settings::setInteractiveFormValidationEnabled): 93423 (WebCore::Settings::interactiveFormValidationEnabled): 93424 93425 2010-07-26 Gavin Barraclough <barraclough (a] apple.com> 93426 93427 Reviewed by Oliver Hunt. 93428 93429 Bug 43009 - Abstract out page allocation from executable allocators 93430 93431 * ForwardingHeaders/wtf/PageAllocation.h: Added. 93432 93433 2010-07-26 Yuta Kitamura <yutak (a] chromium.org> 93434 93435 Reviewed by Pavel Feldman. 93436 93437 Add WebSocket resource type to Web Inspector. 93438 93439 When a new WebSocket connection is established, a line for that connection 93440 will appear in Web Inspector's Resources tab. If the resource name is 93441 clicked, the details of handshake request and response will be shown. 93442 93443 Web Inspector: WebSocket in Resources tab 93444 https://bugs.webkit.org/show_bug.cgi?id=40768 93445 93446 * inspector/InspectorController.cpp: 93447 (WebCore::InspectorController::addResource): WebSocket resource does not 93448 have an associated loader, thus frame might be null. Need to check it. 93449 (WebCore::InspectorController::removeResource): Ditto. 93450 (WebCore::InspectorController::didCreateWebSocket): 93451 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 93452 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 93453 (WebCore::InspectorController::didCloseWebSocket): 93454 * inspector/InspectorController.h: 93455 * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame, 93456 because WebSocket does not have a loader and we need to allow null for 93457 these variables. 93458 (WebCore::createReadableStringFromBinary): 93459 (WebCore::InspectorResource::InspectorResource): 93460 (WebCore::InspectorResource::create): Factory function of 93461 regular (non-WebSocket) resources. 93462 (WebCore::InspectorResource::createWebSocket): Factory function of 93463 WebSocket resources. 93464 (WebCore::InspectorResource::updateWebSocketRequest): 93465 (WebCore::InspectorResource::updateWebSocketResponse): 93466 (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes 93467 available when Frame::setDocument() is called. We cannot obtain documentURL 93468 during the constructor or updateRequest() function, because m_frame->document() 93469 is not available yet at that point and documentURL will contain a wrong URL. 93470 As far as I know, updateScriptObject() is the only place where we can safely 93471 obtain documentURL. 93472 (WebCore::InspectorResource::cachedResource): 93473 (WebCore::InspectorResource::type): 93474 (WebCore::InspectorResource::resourceData): 93475 * inspector/InspectorResource.h: 93476 (WebCore::InspectorResource::): 93477 (WebCore::InspectorResource::markWebSocket): 93478 * inspector/front-end/Resource.js: 93479 (WebInspector.Resource.Type.toString): 93480 (WebInspector.Resource.prototype.set type): 93481 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 93482 * inspector/front-end/ResourceView.js: 93483 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 93484 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 93485 (WebInspector.ResourceView.prototype._refreshHeaders): 93486 * inspector/front-end/inspector.css: 93487 (.resources-category-websockets, .resources-category-other): 93488 (.resources-category-websockets .resources-graph-bar): 93489 (.resources-category-websockets.resource-cached .resources-graph-bar): 93490 * inspector/front-end/inspector.js: 93491 (WebInspector.loaded): 93492 (WebInspector.updateResource): 93493 * websockets/WebSocketChannel.cpp: 93494 (WebCore::WebSocketChannel::WebSocketChannel): 93495 (WebCore::WebSocketChannel::disconnect): 93496 (WebCore::WebSocketChannel::didOpen): 93497 (WebCore::WebSocketChannel::didClose): 93498 (WebCore::WebSocketChannel::processBuffer): 93499 (WebCore::WebSocketChannel::identifier): 93500 * websockets/WebSocketChannel.h: 93501 93502 2010-07-26 Cosmin Truta <ctruta (a] chromium.org> 93503 93504 Reviewed by Eric Seidel. 93505 93506 Some SVGs with empty <g> elements crash Chromium on Linux 93507 https://bugs.webkit.org/show_bug.cgi?id=41175 93508 93509 Redo the old fix using a different approach, to avoid regressing 93510 svg/batik/filters/filterRegions.svg with Chromium on Linux. 93511 Specifically, handle empty SkBitmap objects by exiting early upon 93512 encountering unconfigured (i.e. empty) bitmaps. 93513 93514 No new tests. This bug's old test (svg/filters/filter-empty-g.svg) 93515 and the above-mentioned regressed test are expected to pass. 93516 93517 * WebCore/platform/graphics/skia/ImageBufferSkia.cpp: 93518 (ImageBuffer::ImageBuffer): Undo the old fix. 93519 (getImageData): The new fix. 93520 93521 2010-07-26 Simon Fraser <simon.fraser (a] apple.com> 93522 93523 Reviewed by Dan Bernstein. 93524 93525 Google image search results broken on pages with Flash 93526 https://bugs.webkit.org/show_bug.cgi?id=43014 93527 93528 The test for overflow added in r63452 is wrong in that it ignores the effects 93529 of positioning on overflow. 93530 93531 The correct approach is to start by using RenderView's layoutOverflowRect as the largest bounds, 93532 then getting the oveflow rect via backgroundClipRect() relative to the root layer. 93533 93534 Test: compositing/geometry/limit-layer-bounds-overflow-root.html 93535 93536 * rendering/RenderLayerBacking.cpp: 93537 (WebCore::layerOrAncestorIsTransformed): 93538 (WebCore::RenderLayerBacking::updateCompositedBounds): 93539 93540 2010-07-26 Anders Carlsson <andersca (a] apple.com> 93541 93542 Reviewed by Sam Weinig. 93543 93544 Plug-in views should be able to return JSObjects directly 93545 https://bugs.webkit.org/show_bug.cgi?id=43019 93546 93547 * bindings/js/JSHTMLAppletElementCustom.cpp: 93548 (WebCore::JSHTMLAppletElement::putDelegate): 93549 (WebCore::JSHTMLAppletElement::getCallData): 93550 * bindings/js/JSHTMLEmbedElementCustom.cpp: 93551 (WebCore::JSHTMLEmbedElement::putDelegate): 93552 (WebCore::JSHTMLEmbedElement::getCallData): 93553 * bindings/js/JSHTMLObjectElementCustom.cpp: 93554 (WebCore::JSHTMLObjectElement::putDelegate): 93555 (WebCore::JSHTMLObjectElement::getCallData): 93556 runtimeObjectCustomPut and runtimeObjectGetCallData now take a JSHTMLElement instead of a HTMLElement. 93557 93558 * bindings/js/JSPluginElementFunctions.cpp: 93559 (WebCore::pluginScriptObject): 93560 First, ask the PluginViewBase for a JSObject and fall back to getting the JSObject from the instance. 93561 93562 (WebCore::runtimeObjectPropertyGetter): 93563 (WebCore::runtimeObjectCustomGetOwnPropertySlot): 93564 (WebCore::runtimeObjectCustomGetOwnPropertyDescriptor): 93565 Call pluginScriptObject. 93566 93567 (WebCore::runtimeObjectCustomPut): 93568 Change to take a JSHTMLElement. Call pluginScriptObject. 93569 93570 (WebCore::runtimeObjectGetCallData): 93571 Change to take a JSHTMLElement. 93572 93573 * bridge/jsc/BridgeJSC.cpp: 93574 * bridge/jsc/BridgeJSC.h: 93575 (JSC::Bindings::Instance::createRuntimeObject): 93576 Change this to return a JSObject. 93577 93578 * html/HTMLPlugInElement.cpp: 93579 (WebCore::HTMLPlugInElement::getInstance): 93580 Call pluginWidget. 93581 93582 (WebCore::HTMLPlugInElement::pluginWidget): 93583 Return the plug-in widget for this element. 93584 93585 * html/HTMLPlugInElement.h: 93586 * plugins/PluginViewBase.h: 93587 (WebCore::PluginViewBase::scriptObject): 93588 Add default implementation of scriptObject. 93589 93590 2010-07-26 Chris Fleizach <cfleizach (a] apple.com> 93591 93592 Reviewed by Darin Adler. 93593 93594 AX: Safari does not support ARIA mixed checkboxes 93595 https://bugs.webkit.org/show_bug.cgi?id=43016 93596 93597 Test: platform/mac/accessibility/mixed-checkbox.html 93598 93599 * accessibility/AccessibilityObject.cpp: 93600 (WebCore::AccessibilityObject::checkboxOrRadioValue): 93601 * accessibility/AccessibilityObject.h: 93602 * accessibility/AccessibilityRenderObject.cpp: 93603 (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): 93604 (WebCore::AccessibilityRenderObject::checkboxOrRadioValue): 93605 * accessibility/AccessibilityRenderObject.h: 93606 * accessibility/mac/AccessibilityObjectWrapper.mm: 93607 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 93608 93609 2010-07-26 Shimeng (Simon) Wang <swang (a] google.com> 93610 93611 Reviewed by Darin Adler. 93612 93613 Add auto hyphenation support for Android. 93614 https://bugs.webkit.org/show_bug.cgi?id=42800 93615 93616 * platform/text/android/HyphenationAndroid.cpp: Added. 93617 (WebCore::loadHyphenationDictionary): 93618 (WebCore::lastHyphenLocation): 93619 93620 2010-07-26 Sam Weinig <sam (a] webkit.org> 93621 93622 Reviewed by Anders Carlsson. 93623 93624 Patch for https://bugs.webkit.org/show_bug.cgi?id=43013 93625 Part of <rdar://problem/8152434> 93626 Add support for scrolling using the keyboard in WebKit2 93627 93628 Add a new export and make WindowsKeyboardCodes private. 93629 93630 * WebCore.exp.in: 93631 * WebCore.xcodeproj/project.pbxproj: 93632 93633 2010-07-26 Darin Adler <darin (a] apple.com> 93634 93635 Reviewed by Eric Carlson. 93636 93637 Don't handle empty URL attributes specially in reflection, even in cases such as <img src=""> 93638 https://bugs.webkit.org/show_bug.cgi?id=42087 93639 93640 * html/HTMLMediaElement.cpp: 93641 (WebCore::HTMLMediaElement::insertedIntoDocument): Check if the src attribute is empty 93642 by calling getAttribute instead of calling the src function. This keeps the behavior 93643 correct with the reflection change, and has a side benefit of being more efficient as 93644 well since there is no reason to resolve the URL. 93645 (WebCore::HTMLMediaElement::loadResource): Call getNonEmptyURLAttribute directly here 93646 instead of using the poster function. 93647 (WebCore::HTMLMediaElement::getPluginProxyParams): Ditto. 93648 93649 * html/HTMLMediaElement.h: Removed the poster virtual function. The code that gets the 93650 poster attribute is already video-specific and uses generic attribute fetching code, so 93651 we no longer need a virtual function. Removed the src function. Since this would give 93652 a different result from the JavaScript reflected src attribute, it's safer not to have 93653 it, and it was easy to convert all the callers. 93654 93655 * html/HTMLMediaElement.idl: Removed the NonEmpty extended attribute from the src 93656 attribute. 93657 93658 * html/HTMLSourceElement.cpp: Removed the src function for the same reason as above. 93659 * html/HTMLSourceElement.h: Ditto. 93660 93661 * html/HTMLSourceElement.idl: Removed the NonEmpty extended attribute from the src 93662 attribute. 93663 93664 * html/HTMLVideoElement.cpp: 93665 (WebCore::HTMLVideoElement::parseMappedAttribute): Removed code to update m_posterURL, 93666 which is no longer needed. Changed call site that used the poster() function to instead 93667 use getNonEmptyURLAttribute. 93668 (WebCore::HTMLVideoElement::updatePosterImage): Check if the poster attribute is empty 93669 by calling getAttribute instead of calling the poster function. This keeps the behavior 93670 correct with the reflection change, and has a side benefit of being more efficient as 93671 well since there is no reason to resolve the URL. 93672 93673 * html/HTMLVideoElement.h: Removed the poster function for the same reason we removed 93674 the src function above. Also removed now-unneeded m_posterURL data member. 93675 93676 * html/HTMLVideoElement.idl: Removed the NonEmpty extended attribute from the poster 93677 attribute. 93678 93679 2010-07-26 Chris Fleizach <cfleizach (a] apple.com> 93680 93681 Reviewed by Darin Adler. 93682 93683 AX: remove intValue() hasIntValue() from AccessibilityObject 93684 https://bugs.webkit.org/show_bug.cgi?id=43006 93685 93686 These methods are very Mac centric. The mac centric code should be moved into the Mac wrapper. 93687 93688 No new tests, existing tests cover changes to logic. 93689 93690 * accessibility/AccessibilityObject.cpp: 93691 (WebCore::AccessibilityObject::checkboxOrRadioValue): 93692 * accessibility/AccessibilityObject.h: 93693 (WebCore::): 93694 * accessibility/AccessibilityRenderObject.cpp: 93695 (WebCore::AccessibilityRenderObject::selectedRadioButton): 93696 (WebCore::AccessibilityRenderObject::selectedTabItem): 93697 (WebCore::AccessibilityRenderObject::checkboxOrRadioValue): 93698 * accessibility/AccessibilityRenderObject.h: 93699 * accessibility/mac/AccessibilityObjectWrapper.mm: 93700 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 93701 93702 2010-07-26 Ryosuke Niwa <rniwa (a] webkit.org> 93703 93704 Reviewed by Darin Adler. 93705 93706 Applying inline style to a text node whose parent is an inline editable root causes crash 93707 https://bugs.webkit.org/show_bug.cgi?id=39989 93708 93709 The crash was caused by splitTextElementAtStart and splitTextElementAtEnd assuming that the parent 93710 and the grandparent of the specified text node is editable. 93711 93712 Modified splitTextElementAtStart and splitTextElementAtEnd so that they call splitTextAtStart 93713 and splitTextAtEnd respectively when the grandparent is not editable. 93714 93715 Also modified SplitTextNodeContainingElement to exit early if the grandparent of m_text is not editable. 93716 93717 Test: editing/style/style-text-node-without-editable-parent.html 93718 93719 * editing/ApplyStyleCommand.cpp: 93720 (WebCore::ApplyStyleCommand::splitTextElementAtStart): 93721 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): 93722 * editing/SplitTextNodeContainingElementCommand.cpp: 93723 (WebCore::SplitTextNodeContainingElementCommand::doApply): 93724 93725 2010-07-26 Simon Fraser <simon.fraser (a] apple.com> 93726 93727 Reviewed by Anders Carlsson. 93728 93729 Gmail compose is upside-down after r64054 93730 https://bugs.webkit.org/show_bug.cgi?id=43000 93731 93732 We need to call setGeometryOrientation() whenever the iframe compositing layer attachment changes, 93733 not just when requiresScrollLayer() returns false. This ensures that the orientation is updated 93734 correctly. 93735 93736 Test: compositing/iframes/iframe-content-flipping.html 93737 93738 * rendering/RenderLayerCompositor.cpp: 93739 (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): 93740 93741 2010-07-26 Justin Schuh <jschuh (a] chromium.org> 93742 93743 Reviewed by Darin Fisher. 93744 93745 Check history state against origin before setting 93746 https://bugs.webkit.org/show_bug.cgi?id=42858 93747 93748 Tests: fast/loader/stateobjects/replacestate-base-illegal.html 93749 fast/loader/stateobjects/replacestate-base-legal.html 93750 93751 * page/History.cpp: 93752 (WebCore::History::urlForState): 93753 (WebCore::History::stateObjectAdded): 93754 93755 2010-07-26 Martin Robinson <mrobinson (a] igalia.com> 93756 93757 Reviewed by Xan Lopez. 93758 93759 [GTK] Get rid of libgdom 93760 https://bugs.webkit.org/show_bug.cgi?id=42378 93761 93762 Remove all build steps for building GObject DOM bindings. 93763 93764 * GNUmakefile.am: Remove GObject DOM bindings build. 93765 93766 2010-07-26 Mark Rowe <mrowe (a] apple.com> 93767 93768 Reviewed by Dan Bernstein. 93769 93770 <http://webkit.org/b/42990> REGRESSION (r63854): Safari RSS layout is broken due to changes in vendor prefix handling 93771 93772 In r63854 support for properties with the -khtml vendor prefix was removed. This breaks the layout of 93773 Safari's RSS interface, several Dashboard widgets that are included with Mac OS X, and at least one 93774 popular third-party Mac OS X application. This change will need to be revisited in a manner that has 93775 a clearer backwards-compatibility strategy. <http://webkit.org/b/42093> will be reopened to track that. 93776 93777 * css/CSSParser.cpp: 93778 (WebCore::cssPropertyID): Revert the WebCore change from r63854. 93779 93780 2010-07-26 Brady Eidson <beidson (a] apple.com> 93781 93782 Reviewed by Sam Weinig. 93783 93784 Add ability for WK2 to register a scheme to always be displayed as an empty document 93785 https://bugs.webkit.org/show_bug.cgi?id=42995 93786 93787 No new tests. (Currently not possible to test in WebKit1 DRT, can be testing in future WK2 tester) 93788 93789 * WebCore.exp.in: 93790 93791 * loader/MainResourceLoader.cpp: 93792 (WebCore::shouldLoadAsEmptyDocument): 93793 93794 * platform/SchemeRegistry.cpp: 93795 (WebCore::emptyDocumentSchemes): 93796 (WebCore::SchemeRegistry::registerURLSchemeAsEmptyDocument): 93797 (WebCore::SchemeRegistry::shouldLoadURLSchemeAsEmptyDocument): 93798 * platform/SchemeRegistry.h: 93799 93800 2010-07-26 Patrick Gansterer <paroga (a] paroga.com> 93801 93802 Reviewed by Kent Tamura. 93803 93804 [WINCE] Port ClipboardUtilities to WinCE 93805 https://bugs.webkit.org/show_bug.cgi?id=42929 93806 93807 Make ClipboardUtilitiesWin more portable and remove the global namespace prefix 93808 from GlobalLock/GlobalUnlock, since they are only macros on WinCE. 93809 93810 * platform/win/ClipboardUtilitiesWin.cpp: 93811 (WebCore::urlFromPath): 93812 (WebCore::getWebLocData): 93813 (WebCore::createGlobalData): 93814 (WebCore::getURL): 93815 (WebCore::getPlainText): 93816 (WebCore::fragmentFromHTML): 93817 93818 2010-07-26 Patrick Gansterer <paroga (a] paroga.com> 93819 93820 Reviewed by Adam Roben. 93821 93822 [WINCE] Buildfix for BitmapImage.h 93823 https://bugs.webkit.org/show_bug.cgi?id=42931 93824 93825 Use AffineTransform insted of TransformationMatrix. 93826 93827 * platform/graphics/BitmapImage.h: 93828 93829 2010-07-26 Dirk Schulze <krit (a] webkit.org> 93830 93831 Unreviewed sort of Xcode project file. 93832 93833 * WebCore.xcodeproj/project.pbxproj: 93834 93835 2010-07-26 David Kilzer <ddkilzer (a] apple.com> 93836 93837 <http://webkit.org/b/42982> Streamline Inspector Source build phase script should use CONFIGURATION not BUILD_STYLE 93838 <rdar://problem/6341764> 93839 93840 Reviewed by Mark Rowe. 93841 93842 * WebCore.xcodeproj/project.pbxproj: Switched Streamline 93843 Inspector Source build phase script to use CONFIGURATION instead 93844 of BUILD_STYLE. 93845 93846 2010-07-23 Ojan Vafai <ojan (a] chromium.org> 93847 93848 Reviewed by Darin Adler. 93849 93850 crash in insertParagraph in a contentEditable list 93851 https://bugs.webkit.org/show_bug.cgi?id=42919 93852 93853 Don't try to break out of a list item if the list it's in 93854 is the rootEditableElement. 93855 93856 * editing/CompositeEditCommand.cpp: 93857 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): 93858 93859 2010-07-26 Marcus Bulach <bulach (a] chromium.org> 93860 93861 Reviewed by Jeremy Orlow. 93862 93863 Moves IDBKeyRange to use IDBKey rather than SerializedScriptValue / IDBAny. 93864 https://bugs.webkit.org/show_bug.cgi?id=42583 93865 93866 Tests: existing storage/indexeddb/idb-keyrange.html must pass. 93867 93868 * storage/IDBKeyRange.cpp: 93869 (WebCore::IDBKeyRange::IDBKeyRange): 93870 * storage/IDBKeyRange.h: 93871 (WebCore::IDBKeyRange::create): 93872 (WebCore::IDBKeyRange::left): 93873 (WebCore::IDBKeyRange::right): 93874 * storage/IDBKeyRange.idl: 93875 * storage/IndexedDatabaseRequest.cpp: 93876 (WebCore::IndexedDatabaseRequest::makeSingleKeyRange): 93877 (WebCore::IndexedDatabaseRequest::makeLeftBoundKeyRange): 93878 (WebCore::IndexedDatabaseRequest::makeRightBoundKeyRange): 93879 (WebCore::IndexedDatabaseRequest::makeBoundKeyRange): 93880 * storage/IndexedDatabaseRequest.h: 93881 * storage/IndexedDatabaseRequest.idl: 93882 93883 2010-07-26 Simon Fraser <simon.fraser (a] apple.com> 93884 93885 Reviewed by Anders Carlsson. 93886 93887 Composited layers don't scroll in WebKit2 93888 https://bugs.webkit.org/show_bug.cgi?id=42771 93889 93890 Rename two methods on RenderLayerCompositor to make their use more clear, and call them 93891 when the FrameView gets resized and scrolled. 93892 93893 * page/FrameView.h: 93894 * page/FrameView.cpp: 93895 (WebCore::FrameView::setFrameRect): override so we know when the size of the FrameView changes, so that the 93896 RenderLayerCompositor can update its clipping layer. 93897 (WebCore::FrameView::scrollPositionChanged): Call compositor()->frameViewDidScroll(). 93898 93899 * rendering/RenderLayerBacking.cpp: 93900 (WebCore::RenderLayerBacking::updateAfterWidgetResize): updateContentLayerOffset() was renamed. 93901 93902 * rendering/RenderLayerCompositor.h: 93903 * rendering/RenderLayerCompositor.cpp: 93904 (WebCore::RenderLayerCompositor::frameViewDidChangeSize): Renamed from updateContentLayerOffset(). 93905 (WebCore::RenderLayerCompositor::frameViewDidScroll): Renamed from updateContentLayerScrollPosition(). 93906 (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Propagate compositing on Mac 93907 for any FrameView that doesn't have a native widget, which is the case with WebKit2. 93908 (WebCore::RenderLayerCompositor::requiresScrollLayer): New method to tell us whether we need to handle 93909 scrolling (and clipping) ourselves. 93910 (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Do geometry flipping on the root platform 93911 layer only if we're not doing our own scrolling, and use the new requiresScrollLayer() method. 93912 (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Send out the rootPlatformLayer(), 93913 so that it returns the clipping layer if we have one. 93914 93915 2010-07-26 Tony Gentilcore <tonyg (a] chromium.org> 93916 93917 Reviewed by Darin Fisher. 93918 93919 Move DocumentLoadTiming struct to a new file 93920 https://bugs.webkit.org/show_bug.cgi?id=42917 93921 93922 Also makes DocumentLoadTiming Noncopyable. 93923 93924 No new tests because no new functionality. 93925 93926 * GNUmakefile.am: 93927 * WebCore.gypi: 93928 * WebCore.vcproj/WebCore.vcproj: 93929 * WebCore.xcodeproj/project.pbxproj: 93930 * loader/DocumentLoadTiming.h: Added. 93931 (WebCore::DocumentLoadTiming::DocumentLoadTiming): 93932 * loader/DocumentLoader.h: 93933 * loader/FrameLoader.cpp: 93934 * loader/FrameLoaderTypes.h: 93935 * loader/MainResourceLoader.cpp: 93936 * page/Timing.cpp: 93937 93938 2010-07-26 Mark Rowe <mrowe (a] apple.com> 93939 93940 Fix an #if in WebCore.exp.in to correctly detect whether SVG filters are enabled. 93941 93942 * WebCore.exp.in: 93943 93944 2010-07-26 Steve Block <steveblock (a] google.com> 93945 93946 Reviewed by Jeremy Orlow. 93947 93948 DeviceOrientation event listeners should never be called synchronously from addEventListener() 93949 https://bugs.webkit.org/show_bug.cgi?id=42304 93950 93951 No new tests as there are currently no implementations to test. Tests will be 93952 added once LayoutTestController methods for providing a mock implementation are 93953 in place, see Bug 39589. 93954 93955 * dom/DeviceOrientationController.cpp: 93956 (WebCore::DeviceOrientationController::DeviceOrientationController): 93957 (WebCore::DeviceOrientationController::timerFired): 93958 (WebCore::DeviceOrientationController::addListener): 93959 (WebCore::DeviceOrientationController::removeListener): 93960 (WebCore::DeviceOrientationController::removeAllListeners): 93961 * dom/DeviceOrientationController.h: 93962 93963 2010-07-26 Andreas Kling <andreas.kling (a] nokia.com> 93964 93965 Reviewed by Tor Arne Vestb. 93966 93967 [Qt] Canvas: Optimize GraphicsContext::addPath() 93968 93969 Avoid "deep concatenating" the canvas path onto the GC path 93970 if the GC path has no elements. 93971 93972 * platform/graphics/qt/GraphicsContextQt.cpp: 93973 (WebCore::GraphicsContext::addPath): 93974 93975 2010-07-23 Stephen White <senorblanco (a] chromium.org> 93976 93977 Reviewed by Darin Fisher. 93978 93979 Implement OpenGLES2 helper classes. 93980 https://bugs.webkit.org/show_bug.cgi?id=42905 93981 93982 GLES2Canvas and GLES2Texture are some simple OpenGLES2 helper classes 93983 for managing state, samplers and textures. 93984 93985 When this is hooked up, it will be covered by many layout tests. 93986 93987 * WebCore.gypi: 93988 Add new files to chromium build (contents are protected by #if's for now). 93989 * platform/graphics/chromium/GLES2Canvas.cpp: Added. 93990 (WebCore::affineTo3x3): 93991 (WebCore::GLES2Canvas::State::State): 93992 (WebCore::GLES2Canvas::GLES2Canvas): 93993 (WebCore::GLES2Canvas::~GLES2Canvas): 93994 (WebCore::GLES2Canvas::clearRect): 93995 (WebCore::GLES2Canvas::fillRect): 93996 (WebCore::GLES2Canvas::setFillColor): 93997 (WebCore::GLES2Canvas::setAlpha): 93998 (WebCore::GLES2Canvas::translate): 93999 (WebCore::GLES2Canvas::rotate): 94000 (WebCore::GLES2Canvas::scale): 94001 (WebCore::GLES2Canvas::concatCTM): 94002 (WebCore::GLES2Canvas::save): 94003 (WebCore::GLES2Canvas::restore): 94004 (WebCore::GLES2Canvas::drawTexturedRect): 94005 (WebCore::GLES2Canvas::setCompositeOperation): 94006 (WebCore::GLES2Canvas::applyCompositeOperator): 94007 (WebCore::GLES2Canvas::getQuadVertices): 94008 (WebCore::GLES2Canvas::getQuadIndices): 94009 (WebCore::loadShader): 94010 (WebCore::GLES2Canvas::getSimpleProgram): 94011 (WebCore::GLES2Canvas::getTexProgram): 94012 (WebCore::GLES2Canvas::createTexture): 94013 (WebCore::GLES2Canvas::getTexture): 94014 (WebCore::GLES2Canvas::checkGLError): 94015 * platform/graphics/chromium/GLES2Canvas.h: Added. 94016 (WebCore::GLES2Canvas::gles2Context): 94017 * platform/graphics/chromium/GLES2Texture.cpp: Added. 94018 (WebCore::GLES2Texture::GLES2Texture): 94019 (WebCore::GLES2Texture::~GLES2Texture): 94020 (WebCore::GLES2Texture::create): 94021 (WebCore::convertFormat): 94022 (WebCore::GLES2Texture::load): 94023 (WebCore::GLES2Texture::bind): 94024 * platform/graphics/chromium/GLES2Texture.h: Added. 94025 (WebCore::GLES2Texture::): 94026 (WebCore::GLES2Texture::format): 94027 (WebCore::GLES2Texture::width): 94028 (WebCore::GLES2Texture::height): 94029 94030 94031 2010-07-26 Jeremy Orlow <jorlow (a] chromium.org> 94032 94033 Reviewed by Steve Block. 94034 94035 Fix IndexedDB release build on mac 94036 https://bugs.webkit.org/show_bug.cgi?id=42377 94037 94038 * storage/IDBDatabaseImpl.cpp: 94039 (WebCore::IDBDatabaseImpl::objectStore): 94040 94041 2010-07-26 Satish Sampath <satish (a] chromium.org> 94042 94043 Reviewed by Steve Block. 94044 94045 Add WebKit plumbing to connect speech requests and callbacks between WebCore and the embedder. 94046 https://bugs.webkit.org/show_bug.cgi?id=42367 94047 94048 No new tests, the relevant LayoutTestController bindings will be added in the next patch. 94049 94050 * page/SpeechInput.cpp: renamed a method. 94051 * page/SpeechInput.h: renamed a method. 94052 * page/SpeechInputClient.h: added an extra method to optionally let users stop recording once they have spoken. 94053 * page/SpeechInputClientListener.h: renamed a method. 94054 * page/SpeechInputListener.h: renamed a method. 94055 94056 2010-07-26 Andreas Kling <andreas.kling (a] nokia.com> 94057 94058 Reviewed by Kenneth Rohde Christiansen. 94059 94060 [Qt] getImageData(): Single-pass RGB->BGR and un-premultiplication 94061 https://bugs.webkit.org/show_bug.cgi?id=42945 94062 94063 Combine the two operations into a single loop over the pixel data. 94064 Yields a considerable FPS gain on http://www.semantix.gr/statue.html 94065 94066 * platform/graphics/qt/ImageBufferQt.cpp: 94067 (WebCore::getImageData): 94068 94069 2010-07-26 Pavel Feldman <pfeldman (a] chromium.org> 94070 94071 Reviewed by Shinichiro Hamaji. 94072 94073 Web Inspector: make sure proxy objects are JSON-stringifiable. 94074 94075 https://bugs.webkit.org/show_bug.cgi?id=42961 94076 94077 * inspector/front-end/InjectedScript.js: 94078 (injectedScriptConstructor): 94079 94080 2010-07-26 Alexander Pavlov <apavlov (a] chromium.org> 94081 94082 Reviewed by Joseph Pecoraro. 94083 94084 Inspector should remember resources sorting set by the user 94085 https://bugs.webkit.org/show_bug.cgi?id=19208 94086 94087 Sorting options both for time and size graphs are memorized in a single property, 94088 which makes them possible to retrieve in a single message (e.g. useful for remote debugging). 94089 94090 * inspector/front-end/ResourcesPanel.js: 94091 (WebInspector.ResourcesPanel.prototype.populateSidebar): 94092 (WebInspector.ResourcesPanel.prototype._settingsLoaded): 94093 (WebInspector.ResourcesPanel.prototype._loadSortOptions): 94094 (WebInspector.ResourcesPanel.prototype._loadSortOptionForGraph): 94095 (WebInspector.ResourcesPanel.prototype._graphSelected): 94096 (WebInspector.ResourcesPanel.prototype._changeSortingFunction): 94097 (WebInspector.ResourcesPanel.prototype._selectedOptionNameForGraph): 94098 (WebInspector.ResourcesPanel.prototype._doChangeSortingFunction): 94099 * inspector/front-end/Settings.js: 94100 (WebInspector.populateApplicationSettings): 94101 94102 2010-07-25 Ryosuke Niwa <rniwa (a] webkit.org> 94103 94104 Reviewed by Darin Adler. 94105 94106 Redo fails after text node is split by SplitTextNodeCommand 94107 https://bugs.webkit.org/show_bug.cgi?id=42941 94108 94109 The bug was caused by SplitTextNodeCommand not implementing doReapply. 94110 Implemented doReapply and added insertText1AndTrimText2 to share the code between doApply and doReapply. 94111 94112 Test: editing/undo/redo-split-text-node.html 94113 editing/undo/redo-split-text-node-with-removal.html 94114 94115 * editing/SplitTextNodeCommand.cpp: 94116 (WebCore::SplitTextNodeCommand::doApply): Calls executeApply. 94117 (WebCore::SplitTextNodeCommand::doUnapply): Don't delete m_text1, which is later used in doReapply. 94118 (WebCore::SplitTextNodeCommand::doReapply): Added. 94119 (WebCore::SplitTextNodeCommand::insertText1AndTrimText2): Added. 94120 * editing/SplitTextNodeCommand.h: 94121 94122 2010-07-23 Philippe Normand <pnormand (a] igalia.com> 94123 94124 Reviewed by Eric Carlson. 94125 94126 [GTK] media/media-can-play-mpeg-audio.html fails 94127 https://bugs.webkit.org/show_bug.cgi?id=42895 94128 94129 Fixed advertizing of mp3, mpeg and mp4 mime-types in the player. 94130 94131 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 94132 (WebCore::mimeTypeCache): 94133 94134 2010-07-23 Philippe Normand <pnormand (a] igalia.com> 94135 94136 Reviewed by Eric Carlson. 94137 94138 LayoutTests/media/media-document-audio-size.html failure 94139 https://bugs.webkit.org/show_bug.cgi?id=38376 94140 94141 Advertize audio/x-wav along with audio/wav when appropriate, 94142 otherwise WebKit attempts to use a plugin to play the media. 94143 94144 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 94145 (WebCore::mimeTypeCache): 94146 94147 2010-07-25 Ryosuke Niwa <rniwa (a] webkit.org> 94148 94149 Reviewed by Kent Tamura. 94150 94151 splitTextAt*IfNeed and splitTextElementAt*IfNeed need to be cleaned up 94152 https://bugs.webkit.org/show_bug.cgi?id=42937 94153 94154 Isolated the code to decide whether or not text node should be split into isValidCaretPositionInTextNode. 94155 Moved the condition check out of *IfNeeded methods to applyRelativeFontStyleChange and applyInlineStyle. 94156 94157 No new tests added since this is a clean up. 94158 94159 * editing/ApplyStyleCommand.cpp: 94160 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Uses isValidCaretPositionInTextNode. 94161 (WebCore::ApplyStyleCommand::applyInlineStyle): Uses isValidCaretPositionInTextNode. 94162 (WebCore::ApplyStyleCommand::splitTextAtStart): Renamed from splitTextAtStartIfNeeded. 94163 (WebCore::ApplyStyleCommand::splitTextAtEnd): Renamed from splitTextAtEndIfNeeded. 94164 (WebCore::ApplyStyleCommand::splitTextElementAtStart): Renamed from splitTextElementAtStartIfNeeded. 94165 (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Renamed from splitTextElementAtEndIfNeeded. 94166 (WebCore::ApplyStyleCommand::isValidCaretPositionInTextNode): Returns true if the position lies within a text node. 94167 * editing/ApplyStyleCommand.h: 94168 94169 2010-07-25 Patrick Gansterer <paroga (a] paroga.com> 94170 94171 Reviewed by Kent Tamura. 94172 94173 [WINCE] Buildfix for ImageBufferWince 94174 https://bugs.webkit.org/show_bug.cgi?id=42928 94175 94176 * platform/graphics/wince/ImageBufferWince.cpp: 94177 (WebCore::): 94178 (WebCore::BufferedImage::draw): Pass through ColorSpace parameter. 94179 (WebCore::BufferedImage::drawPattern): Ditto. 94180 (WebCore::ImageBuffer::platformTransformColorSpace): Added. 94181 94182 2010-07-25 Patrick Gansterer <paroga (a] paroga.com> 94183 94184 Reviewed by Kent Tamura. 94185 94186 [WINCE] Buildfix for PopupMenuWin.cpp 94187 https://bugs.webkit.org/show_bug.cgi?id=42932 94188 94189 Add #if !OS(WINCE) around unsupported window messages. 94190 94191 * platform/win/PopupMenuWin.cpp: 94192 (WebCore::PopupMenu::show): 94193 (WebCore::PopupMenu::wndProc): 94194 94195 2010-07-25 Adam Barth <abarth (a] webkit.org> 94196 94197 Reviewed by Eric Seidel. 94198 94199 Implement adjustMathMLAttributes 94200 https://bugs.webkit.org/show_bug.cgi?id=42952 94201 94202 This is kind of mechanical overkill for adjusting one attribute name, 94203 but it's nice to use the same machinery as SVG. 94204 94205 * html/HTMLTreeBuilder.cpp: 94206 * mathml/mathattrs.in: 94207 94208 2010-07-25 Adam Barth <abarth (a] webkit.org> 94209 94210 Reviewed by Eric Seidel. 94211 94212 Functions supporting the legacy tree builder are confusing 94213 https://bugs.webkit.org/show_bug.cgi?id=42951 94214 94215 This patch just inlines these functions into their one call site and 94216 removes the notImplemented() calls. We thought we were going to grow 94217 these to support the new tree builder, but we took a different path. 94218 Previous to this patch, these functions were confusing because they 94219 looked like part of the new tree builder. 94220 94221 * html/HTMLTreeBuilder.cpp: 94222 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 94223 * html/HTMLTreeBuilder.h: 94224 94225 2010-07-25 Adam Barth <abarth (a] webkit.org> 94226 94227 Reviewed by Eric Seidel. 94228 94229 Recent HTML5 TreeBuilder Regression? All canvas tests ASSERT 94230 https://bugs.webkit.org/show_bug.cgi?id=42948 94231 94232 Remove ASSERT and replace with correct branch. I put this ASSERT in 94233 to make sure we had test coverage for this branch. I guess we do. :) 94234 94235 * html/HTMLConstructionSite.cpp: 94236 (WebCore::HTMLConstructionSite::attach): 94237 94238 2010-07-25 Pavel Feldman <pfeldman (a] chromium.org> 94239 94240 Reviewed by Timothy Hatcher. 94241 94242 Web Inspector: check of jQuery object type prior to treating it as an array. 94243 94244 https://bugs.webkit.org/show_bug.cgi?id=42946 94245 94246 * inspector/front-end/InjectedScript.js: 94247 (injectedScriptConstructor): 94248 94249 2010-07-24 Daniel Bates <dbates (a] rim.com> 94250 94251 Unreviewed, build fix when building with WML support. 94252 94253 PageCache.cpp compile error when WML is enabled 94254 https://bugs.webkit.org/show_bug.cgi?id=40765 94255 94256 Remove extraneous semicolon. 94257 94258 Note, building with WML support enabled is broken 94259 even with this fix. See Bug #42943 for more details. 94260 94261 * history/PageCache.cpp: 94262 (WebCore::PageCache::canCachePageContainingThisFrame): 94263 94264 2010-07-24 Adam Barth <abarth (a] webkit.org> 94265 94266 Reviewed by Eric Seidel. 94267 94268 Atomize strings used by the HTML5 tree builder 94269 https://bugs.webkit.org/show_bug.cgi?id=42875 94270 94271 This is about a 1% improvement to the parsing benchmark. 94272 94273 * html/HTMLTagNames.in: 94274 * html/HTMLTreeBuilder.cpp: 94275 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 94276 (WebCore::HTMLTreeBuilder::processStartTag): 94277 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 94278 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 94279 94280 2010-07-24 Patrick Gansterer <paroga (a] paroga.com> 94281 94282 Reviewed by Darin Adler. 94283 94284 Buildfix for !ENABLE(INSPECTOR) after r63891. 94285 https://bugs.webkit.org/show_bug.cgi?id=42925 94286 94287 * bindings/js/ScriptValue.cpp: Added property svn:eol-style. 94288 * bindings/js/ScriptValue.h: Added property svn:eol-style. 94289 * inspector/ConsoleMessage.cpp: Added property svn:eol-style. 94290 * inspector/ConsoleMessage.h: Added property svn:eol-style. 94291 94292 2010-07-24 Adam Barth <abarth (a] webkit.org> 94293 94294 Reviewed by Eric Seidel. 94295 94296 Re-order whitespace checks in the tokenizer 94297 https://bugs.webkit.org/show_bug.cgi?id=42923 94298 94299 This saves about 0.5% on the parsing benchmark. 94300 94301 * html/HTMLTokenizer.cpp: 94302 94303 2010-07-24 Andreas Kling <andreas.kling (a] nokia.com> 94304 94305 Reviewed by Simon Hausmann. 94306 94307 [Qt] tst_QWebFrame::callQtInvokable() fails 94308 https://bugs.webkit.org/show_bug.cgi?id=41065 94309 94310 Converting JS objects to QVariantMaps was broken. 94311 This is a partial revert of <http://trac.webkit.org/changeset/61478> 94312 94313 * bridge/qt/qt_runtime.cpp: 94314 (JSC::Bindings::convertValueToQVariant): Remove erroneous crash guard 94315 around JSObject::getPropertyNames() 94316 94317 2010-07-24 Adam Barth <abarth (a] webkit.org> 94318 94319 Reviewed by Eric Seidel. 94320 94321 Save a per-character branch in the HTML parser 94322 https://bugs.webkit.org/show_bug.cgi?id=42921 94323 94324 The parsing benchmark claims this is a wash, but it makes me feel 94325 better. 94326 94327 * html/HTMLToken.h: 94328 (WebCore::HTMLToken::clear): 94329 (WebCore::HTMLToken::beginStartTag): 94330 (WebCore::HTMLToken::beginEndTag): 94331 (WebCore::HTMLToken::ensureIsCharacterToken): 94332 (WebCore::HTMLToken::beginComment): 94333 (WebCore::HTMLToken::beginDOCTYPE): 94334 * html/HTMLTokenizer.cpp: 94335 (WebCore::HTMLTokenizer::bufferCharacter): 94336 94337 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94338 94339 Reviewed by Darin Adler. 94340 94341 Buildfix for !ENABLE(FILTERS) after r63531. 94342 https://bugs.webkit.org/show_bug.cgi?id=42914 94343 94344 * rendering/RenderSVGContainer.cpp: Add missing header. 94345 94346 2010-07-23 Kavita Kanetkar <kkanetkar (a] chromium.org> 94347 94348 Reviewed by Joseph Pecoraro. 94349 94350 Implement remaining Inspector support for chrome's appcache 94351 https://bugs.webkit.org/show_bug.cgi?id=42426 94352 94353 * inspector/InspectorApplicationCacheAgent.cpp: 94354 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): 94355 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): 94356 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): 94357 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource): 94358 * inspector/InspectorApplicationCacheAgent.h: 94359 (WebCore::InspectorController::connectFrontend): 94360 * loader/appcache/ApplicationCacheHost.cpp: 94361 (WebCore::ApplicationCacheHost::fillResourceList): 94362 (WebCore::ApplicationCacheHost::applicationCacheInfo): 94363 * loader/appcache/ApplicationCacheHost.h: Changed creation + update times to double and moved appcache info here from InspectorApplicationCacheAgent.h 94364 (WebCore::ApplicationCacheHost::CacheInfo::CacheInfo): 94365 (WebCore::ApplicationCacheHost::ResourceInfo::ResourceInfo): 94366 94367 2010-07-23 Rafael Antognolli <antognolli (a] profusion.mobi> 94368 94369 Reviewed by Antonio Gomes. 94370 94371 [EFL] Cleanup glib support (make it optional) 94372 https://bugs.webkit.org/show_bug.cgi?id=42480 94373 94374 No new tests, no new features added. 94375 Just add flags and directories for glib if necessary. 94376 Put some ifdefs on glib calls. 94377 94378 * CMakeListsEfl.txt: 94379 * platform/graphics/cairo/FontPlatformDataCairo.cpp: 94380 (WebCore::FontPlatformData::FontPlatformData): 94381 94382 2010-07-23 James Robinson <jamesr (a] chromium.org> 94383 94384 Reviewed by Dimitri Glazkov. 94385 94386 CanvasRenderingContext2D has lots of style errors 94387 https://bugs.webkit.org/show_bug.cgi?id=42918 94388 94389 CanvasRenderingContext2D.h and .cpp have lots of style errors. I'm planning to post patches 94390 to both of these files soon, so to minimize merge conflicts and additional style violations 94391 it seems best to fix all of these errors in bulk before posting any functional changes. In 94392 particular the header file is incorrectly indented so any correctly formatted addition will 94393 be out of place. 94394 94395 * html/canvas/CanvasRenderingContext2D.cpp: 94396 (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): 94397 (WebCore::CanvasRenderingContext2D::setFillStyle): 94398 (WebCore::CanvasRenderingContext2D::transform): 94399 (WebCore::CanvasRenderingContext2D::setTransform): 94400 (WebCore::CanvasRenderingContext2D::arcTo): 94401 (WebCore::CanvasRenderingContext2D::arc): 94402 (WebCore::validateRectForCanvas): 94403 (WebCore::CanvasRenderingContext2D::strokeRect): 94404 (WebCore::CanvasRenderingContext2D::drawImage): 94405 (WebCore::CanvasRenderingContext2D::createRadialGradient): 94406 (WebCore::CanvasRenderingContext2D::createPattern): 94407 (WebCore::CanvasRenderingContext2D::willDraw): 94408 (WebCore::CanvasRenderingContext2D::createImageData): 94409 (WebCore::CanvasRenderingContext2D::putImageData): 94410 (WebCore::CanvasRenderingContext2D::setFont): 94411 (WebCore::CanvasRenderingContext2D::drawTextInternal): 94412 * html/canvas/CanvasRenderingContext2D.h: 94413 (WebCore::CanvasRenderingContext2D::is2d): 94414 (WebCore::CanvasRenderingContext2D::getLineCap): 94415 (WebCore::CanvasRenderingContext2D::getLineJoin): 94416 (WebCore::CanvasRenderingContext2D::state): 94417 (WebCore::CanvasRenderingContext2D::): 94418 94419 2010-07-23 Adam Barth <abarth (a] webkit.org> 94420 94421 Remove FIXME that we already fixed. 94422 94423 * html/HTMLTreeBuilder.cpp: 94424 (WebCore::HTMLTreeBuilder::processCharacter): 94425 94426 2010-06-24 Dimitri Glazkov <dglazkov (a] chromium.org> 94427 94428 Reviewed by Kent Tamura. 94429 94430 Move more form submission logic into FormSubmission. 94431 https://bugs.webkit.org/show_bug.cgi?id=41110 94432 94433 Two major moves: 94434 * Fold HTMLFormElement::prepareFormSubmission into FormSubmission::create 94435 * Move non-static (non-FormData-building) methods of FormDataBuilder 94436 to FormSubmission::Attributes. 94437 94438 Mechanical moving, no change in behavior, so no new tests. 94439 94440 * WebCore.xcodeproj/project.pbxproj: Gave FormDataBuilder.h "project" and 94441 FormSubmission.h "private" visibility. 94442 * html/HTMLFormElement.cpp: 94443 (WebCore::HTMLFormElement::submit): Changed to use FormSubmission::create. 94444 (WebCore::HTMLFormElement::parseMappedAttribute): Changed to use m_attributes. 94445 * html/HTMLFormElement.h: 94446 (WebCore::HTMLFormElement::enctype): Ditto. 94447 (WebCore::HTMLFormElement::encoding): Ditto. 94448 (WebCore::HTMLFormElement::acceptCharset): Ditto. 94449 * loader/FormSubmission.cpp: 94450 (WebCore::generateFormDataIdentifier): Moved from HTMLFormElement. 94451 (WebCore::appendMailtoPostFormDataToURL): Ditto. 94452 (WebCore::FormSubmission::Attributes::parseAction): Moved from FormDataBuilder. 94453 (WebCore::FormSubmission::Attributes::parseEncodingType): Ditto. 94454 (WebCore::FormSubmission::Attributes::parseMethodType): Ditto. 94455 (WebCore::FormSubmission::FormSubmission): Made inline. 94456 (WebCore::FormSubmission::create): Added logic that used to be in 94457 HTMLFormElement::prepareFormSubmission. 94458 * loader/FormSubmission.h: 94459 (WebCore::FormSubmission::): 94460 (WebCore::FormSubmission::Attributes::Attributes): Added new class. 94461 (WebCore::FormSubmission::Attributes::method): Moved from FormDataBuilder. 94462 (WebCore::FormSubmission::Attributes::isMultiPartForm): Ditto. 94463 (WebCore::FormSubmission::Attributes::action): Ditto. 94464 (WebCore::FormSubmission::Attributes::target): Ditto. 94465 (WebCore::FormSubmission::Attributes::setTarget): Ditto. 94466 (WebCore::FormSubmission::Attributes::encodingType): Ditto. 94467 (WebCore::FormSubmission::Attributes::acceptCharset): Ditto. 94468 (WebCore::FormSubmission::Attributes::setAcceptCharset): Ditto. 94469 (WebCore::FormSubmission::target): Ditto. 94470 (WebCore::FormSubmission::contentType): Const-ified return type. 94471 (WebCore::FormSubmission::boundary): Ditto. 94472 * platform/network/FormDataBuilder.cpp: 94473 (WebCore::FormDataBuilder::encodingFromAcceptCharset): Renamed method for clarity, 94474 made it use param instead of a class member. 94475 * platform/network/FormDataBuilder.h: 94476 (WebCore::FormDataBuilder::FormDataBuilder): Made constructor private. 94477 * wml/WMLGoElement.cpp: Changed to use FormSubmision::Attributes. 94478 * wml/WMLGoElement.h: Ditto. 94479 94480 2010-07-23 Adam Barth <abarth (a] webkit.org> 94481 94482 Reviewed by Eric Seidel. 94483 94484 HTML5 Parser: document.write in a asynchronous script which is specified to load before page finish blows away document 94485 https://bugs.webkit.org/show_bug.cgi?id=42365 94486 94487 This patch implements the changes Ian made to HTML5 to address these 94488 issues. Let's try it and see how well it works. 94489 94490 Test: http/tests/misc/write-from-dom-script.html 94491 94492 * dom/Document.cpp: 94493 (WebCore::Document::Document): 94494 (WebCore::Document::write): 94495 * dom/Document.h: 94496 (WebCore::Document::writeDisabled): 94497 (WebCore::Document::setWriteDisabled): 94498 * dom/DocumentParser.h: 94499 (WebCore::DocumentParser::hasInsertionPoint): 94500 * dom/ScriptElement.cpp: 94501 (WebCore::ScriptElement::insertedIntoDocument): 94502 (WebCore::ScriptElementData::ScriptElementData): 94503 (WebCore::ScriptElementData::evaluateScript): 94504 * dom/ScriptElement.h: 94505 (WebCore::ScriptElementData::writeDisabled): 94506 (WebCore::ScriptElementData::setWriteDisabled): 94507 * html/HTMLDocumentParser.cpp: 94508 (WebCore::HTMLDocumentParser::hasInsertionPoint): 94509 (WebCore::HTMLDocumentParser::insert): 94510 * html/HTMLDocumentParser.h: 94511 94512 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94513 94514 Reviewed by Adam Roben. 94515 94516 [WINCE] Buildfix for PopupMenuWin.cpp 94517 https://bugs.webkit.org/show_bug.cgi?id=42906 94518 94519 Use correct API for BitmapInfo landed in r63944. 94520 94521 * platform/win/PopupMenuWin.cpp: 94522 (WebCore::PopupMenu::paint): 94523 94524 2010-07-23 fsamuel (a] chromium.org <fsamuel (a] chromium.org> 94525 94526 Reviewed by David Hyatt. 94527 94528 Updated table painting to draw cell layers in the correct order. 94529 94530 Table Cell Layering 94531 https://bugs.webkit.org/show_bug.cgi?id=40775 94532 94533 Tests: tables/layering/paint-test-layering-1.html 94534 tables/layering/paint-test-layering-2.html 94535 94536 * accessibility/AccessibilityTable.cpp: 94537 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): 94538 (WebCore::AccessibilityTable::addChildren): 94539 (WebCore::AccessibilityTable::cellForColumnAndRow): 94540 * accessibility/AccessibilityTableCell.cpp: 94541 (WebCore::AccessibilityTableCell::titleUIElement): 94542 * accessibility/AccessibilityTableColumn.cpp: 94543 (WebCore::AccessibilityTableColumn::headerObjectForSection): 94544 * rendering/AutoTableLayout.cpp: 94545 (WebCore::AutoTableLayout::recalcColumn): 94546 * rendering/RenderTable.cpp: 94547 (WebCore::RenderTable::splitColumn): 94548 (WebCore::RenderTable::calcBorderLeft): 94549 (WebCore::RenderTable::calcBorderRight): 94550 (WebCore::RenderTable::cellAbove): 94551 (WebCore::RenderTable::cellBelow): 94552 (WebCore::RenderTable::cellBefore): 94553 (WebCore::RenderTable::cellAfter): 94554 * rendering/RenderTableSection.cpp: 94555 (WebCore::RenderTableSection::RenderTableSection): 94556 (WebCore::RenderTableSection::ensureRows): 94557 (WebCore::RenderTableSection::addCell): 94558 (WebCore::RenderTableSection::setCellWidths): 94559 (WebCore::RenderTableSection::calcRowHeight): 94560 (WebCore::RenderTableSection::layoutRows): 94561 (WebCore::RenderTableSection::calcOuterBorderTop): 94562 (WebCore::RenderTableSection::calcOuterBorderBottom): 94563 (WebCore::RenderTableSection::calcOuterBorderLeft): 94564 (WebCore::RenderTableSection::calcOuterBorderRight): 94565 (WebCore::RenderTableSection::firstLineBoxBaseline): 94566 (WebCore::compareCellPositions): 94567 (WebCore::RenderTableSection::paintCell): 94568 (WebCore::RenderTableSection::paintObject): 94569 (WebCore::RenderTableSection::numColumns): 94570 (WebCore::RenderTableSection::appendColumn): 94571 (WebCore::RenderTableSection::splitColumn): 94572 (WebCore::RenderTableSection::nodeAtPoint): 94573 * rendering/RenderTableSection.h: 94574 (WebCore::RenderTableSection::CellStruct::CellStruct): 94575 (WebCore::RenderTableSection::CellStruct::primaryCell): 94576 (WebCore::RenderTableSection::CellStruct::hasCells): 94577 (WebCore::RenderTableSection::primaryCellAt): 94578 94579 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94580 94581 Reviewed by Adam Roben. 94582 94583 [WINCE] Buildfix for Path.h 94584 https://bugs.webkit.org/show_bug.cgi?id=42904 94585 94586 * platform/graphics/Path.h: Add missing typedef PlatformPath. 94587 94588 2010-07-23 Adam Barth <abarth (a] webkit.org> 94589 94590 Reviewed by Eric Seidel. 94591 94592 Reserve capacity for attributes 94593 https://bugs.webkit.org/show_bug.cgi?id=42877 94594 94595 This is about a 1.7% improvement to the parsing benchmark. 94596 94597 * html/HTMLToken.h: 94598 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 94599 94600 2010-07-23 Adam Barth <abarth (a] webkit.org> 94601 94602 Reviewed by Eric Seidel. 94603 94604 Inline HTMLElementStack::top 94605 https://bugs.webkit.org/show_bug.cgi?id=42879 94606 94607 According to sampling, HTMLElementStack::top is the hotest function in 94608 the treebuilder. Inlining it is about a 0.3% improvement to the 94609 parsing benchmark. This squares with how often it occurs in samples. 94610 94611 * html/HTMLElementStack.cpp: 94612 * html/HTMLElementStack.h: 94613 (WebCore::HTMLElementStack::top): 94614 94615 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94616 94617 Reviewed by Adam Roben. 94618 94619 [WINCE] Buildfix for GraphicsContext 94620 https://bugs.webkit.org/show_bug.cgi?id=42888 94621 94622 Use AffineTransform insted of TransformationMatrix and 94623 add ColorSpace parameter to the drawBitmap methods. 94624 94625 * platform/graphics/GraphicsContext.h: 94626 * platform/graphics/wince/GraphicsContextWince.cpp: 94627 (WebCore::GraphicsContext::affineTransform): 94628 (WebCore::GraphicsContext::fillRoundedRect): 94629 (WebCore::GraphicsContext::drawBitmap): 94630 (WebCore::GraphicsContext::drawBitmapPattern): 94631 94632 2010-07-23 Rafael Antognolli <antognolli (a] profusion.mobi> 94633 94634 Reviewed by Antonio Gomes. 94635 94636 [EFL] Add support for using libcurl network backend. 94637 https://bugs.webkit.org/show_bug.cgi?id=42286 94638 94639 Add files and flags for soup/curl specific backend being 94640 used. 94641 Put some ifdefs around soup/glib calls. 94642 94643 No new tests, no new features implemented. 94644 94645 * CMakeListsEfl.txt: 94646 * platform/efl/FileSystemEfl.cpp: 94647 (WebCore::fileSystemRepresentation): 94648 94649 2010-07-23 Adam Barth <abarth (a] webkit.org> 94650 94651 Reviewed by Eric Seidel. 94652 94653 Add fast-reject path for InputStreamPreprocessor::peek 94654 https://bugs.webkit.org/show_bug.cgi?id=42881 94655 94656 This is about a 2.5% speedup on the parsing benchmark. 94657 94658 * html/HTMLTokenizer.h: 94659 (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek): 94660 94661 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94662 94663 Reviewed by Adam Roben. 94664 94665 [WINCE] Merge PasteboardWince.cpp into PasteboardWin.cpp 94666 https://bugs.webkit.org/show_bug.cgi?id=42885 94667 94668 Make PasteboardWin more portable and remove the global namespace prefix 94669 from GlobalLock/GlobalUnlock, since they are only macros on WinCE. 94670 94671 * platform/win/PasteboardWin.cpp: 94672 (WebCore::PasteboardOwnerWndProc): 94673 (WebCore::Pasteboard::Pasteboard): 94674 (WebCore::Pasteboard::plainText): 94675 (WebCore::Pasteboard::documentFragment): 94676 94677 2010-07-23 Justin Schuh <jschuh (a] chromium.org> 94678 94679 Unreviewed, rolling out r63925. 94680 http://trac.webkit.org/changeset/63925 94681 https://bugs.webkit.org/show_bug.cgi?id=42858 94682 94683 Introduced a regression in history state. 94684 94685 * page/History.cpp: 94686 (WebCore::History::urlForState): 94687 94688 2010-07-23 Martin Robinson <mrobinson (a] igalia.com> 94689 94690 Unreviewed build fix. 94691 94692 Fix make dist by aligning the source list with currently used headers. 94693 94694 * GNUmakefile.am: 94695 94696 2010-07-23 Alex Milowski <alex (a] milowski.com> 94697 94698 Reviewed by Darin Adler. 94699 94700 Moved the 'mathml' group back to where it belongs as 94701 siblings of the other major folders. 94702 94703 * WebCore.xcodeproj/project.pbxproj: 94704 94705 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94706 94707 Reviewed by Adam Roben. 94708 94709 Buildfix for WinCE graphics after r56015. 94710 https://bugs.webkit.org/show_bug.cgi?id=41354 94711 94712 Use fabs() insetead of abs(). 94713 94714 * platform/graphics/wince/GraphicsContextWince.cpp: 94715 (WebCore::GraphicsContext::fillRect): 94716 * platform/graphics/wince/PlatformPathWince.cpp: 94717 (WebCore::PlatformPath::addArcTo): 94718 94719 2010-07-23 ryuan choi <ryuan.choi (a] samsung.com> 94720 94721 Reviewed by Antonio Gomes. 94722 94723 [EFL]build break because of r63927 94724 https://bugs.webkit.org/show_bug.cgi?id=42864 94725 94726 * CMakeLists.txt: 94727 94728 2010-07-23 Adam Barth <abarth (a] webkit.org> 94729 94730 Reviewed by Eric Seidel. 94731 94732 Inline HTMLTokenizer::InputStreamPreprocessor::peek 94733 https://bugs.webkit.org/show_bug.cgi?id=42880 94734 94735 According to sampling HTMLTokenizer::InputStreamPreprocessor::peek is 94736 the hotest function in the tokenizer. Inlining this function is about 94737 a 2.2% speedup on the parser benchmark. Turns out the tokenizer is 94738 much hotter than the tree builder. :) 94739 94740 * html/HTMLTokenizer.h: 94741 (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek): 94742 94743 2010-07-23 Andras Becsi <abecsi (a] webkit.org> 94744 94745 Unreviewed build fix. 94746 94747 [Qt] Fix WebKit2 linkage. 94748 94749 No new tests needed. 94750 94751 * WebCore.pro: add InjectedBundlePageEditorClient.cpp to WK2 sources 94752 94753 2010-07-23 Balazs Kelemen <kb (a] inf.u-szeged.hu> 94754 94755 Reviewed by Kenneth Rohde Christiansen. 94756 94757 [Qt] Setup the QtWebProcess 94758 94759 https://bugs.webkit.org/show_bug.cgi?id=42623 94760 94761 * WebCore.pro: Added WebProcessMainQt.cpp to SOURCES. 94762 94763 2010-07-23 Pavel Feldman <pfeldman (a] chromium.org> 94764 94765 Not reviewed: Chromium tests fix. 94766 94767 * inspector/CodeGeneratorInspector.pm: 94768 94769 2010-07-23 Patrick Gansterer <paroga (a] paroga.com> 94770 94771 Reviewed by Adam Roben. 94772 94773 [WINCE] Buildfix for PluginDatabaseWin.cpp 94774 https://bugs.webkit.org/show_bug.cgi?id=41887 94775 94776 Define KEY_ENUMERATE_SUB_KEYS only if not defined. 94777 94778 * plugins/win/PluginDatabaseWin.cpp: 94779 94780 2010-07-23 Pavel Feldman <pfeldman (a] chromium.org> 94781 94782 Reviewed by Yury Semikhatsky. 94783 94784 Chromium DevTools: migrate from utility context-based injected 94785 script dispatch to upstream schema. 94786 94787 https://bugs.webkit.org/show_bug.cgi?id=42883 94788 94789 * bindings/v8/ScriptProfile.cpp: 94790 (WebCore::ScriptProfile::title): 94791 * inspector/InspectorController.cpp: 94792 (WebCore::InspectorController::getProfile): 94793 * inspector/front-end/InjectedScriptAccess.js: 94794 94795 2010-07-23 Pavel Feldman <pfeldman (a] chromium.org> 94796 94797 Not reviewed: rolling out r63963. 94798 94799 * bindings/v8/ScriptProfile.cpp: 94800 (WebCore::ScriptProfile::title): 94801 * inspector/InspectorController.cpp: 94802 (WebCore::InspectorController::getProfile): 94803 * inspector/front-end/InjectedScriptAccess.js: 94804 94805 2010-07-23 Pavel Feldman <pfeldman (a] chromium.org> 94806 94807 Reviewed by Yury Semikhatsky. 94808 94809 Chromium DevTools: migrate from utility context-based injected 94810 script dispatch to upstream schema. 94811 94812 https://bugs.webkit.org/show_bug.cgi?id=42883 94813 94814 * bindings/v8/ScriptProfile.cpp: 94815 (WebCore::ScriptProfile::title): 94816 * inspector/InspectorController.cpp: 94817 (WebCore::InspectorController::getProfile): 94818 * inspector/front-end/InjectedScriptAccess.js: 94819 (InjectedScriptAccess.get if): 94820 (InjectedScriptAccess): 94821 94822 2010-07-23 Yury Semikhatsky <yurys (a] chromium.org> 94823 94824 Reviewed by Pavel Feldman. 94825 94826 Web Inspector: error info propagation in InspectorBackendDispatch should be improved 94827 https://bugs.webkit.org/show_bug.cgi?id=42873 94828 94829 * inspector/CodeGeneratorInspector.pm: report wrong parameter count and wrong 94830 parametere type errror to the dispatch method caller 94831 94832 2010-07-23 Pavel Feldman <pfeldman (a] chromium.org> 94833 94834 Reviewed by Yury Semikhatsky. 94835 94836 Web Inspector: injectedScriptId is missing in the stack frame wrappers. 94837 94838 https://bugs.webkit.org/show_bug.cgi?id=42889 94839 94840 * inspector/front-end/InjectedScript.js: 94841 (injectedScriptConstructor): 94842 94843 2010-07-23 Shinichiro Hamaji <hamaji (a] chromium.org> 94844 94845 Reviewed by Kent Tamura. 94846 94847 Backslash isn't transcoded in <input> 94848 https://bugs.webkit.org/show_bug.cgi?id=42878 94849 94850 * css/CSSStyleSelector.cpp: 94851 (WebCore::CSSStyleSelector::applyProperty): 94852 94853 2010-07-22 Ilya Tikhonovsky <loislo (a] chromium.org> 94854 94855 Reviewed by Yury Semikhatsky. 94856 94857 WebInspector: CodeGeneratorInspector was extended and now it can 94858 generate InspectorBackedDispatcher's code. This dispatcher will 94859 validate and dispatch incoming inspector commands only by native 94860 code without using javaScript. That is necessary step for 94861 RemoteDebugging support. 94862 https://bugs.webkit.org/show_bug.cgi?id=42588 94863 94864 * GNUmakefile.am: 94865 * WebCore.gyp/WebCore.gyp: 94866 * WebCore.gypi: 94867 * WebCore.pri: 94868 * WebCore.vcproj/WebCore.vcproj: 94869 * WebCore.xcodeproj/project.pbxproj: 94870 * inspector/CodeGeneratorInspector.pm: 94871 * inspector/InspectorController.cpp: 94872 (WebCore::InspectorController::InspectorController): 94873 * inspector/InspectorController.h: 94874 (WebCore::InspectorController::inspectorBackendDispatcher): 94875 * inspector/front-end/ElementsPanel.js: 94876 (WebInspector.ElementsPanel.prototype.setDocument): 94877 94878 2010-07-22 Shinichiro Hamaji <hamaji (a] chromium.org> 94879 94880 Reviewed by Kent Tamura. 94881 94882 Backslash is transcoded into yen sign even when non japanese font is specified 94883 https://bugs.webkit.org/show_bug.cgi?id=39654 94884 94885 Test: fast/text/backslash-to-yen-sign-euc.html 94886 94887 * css/CSSStyleSelector.cpp: 94888 (WebCore::CSSStyleSelector::applyProperty): Call FontDescriptor::setIsSpecifiedFont. 94889 * platform/graphics/Font.cpp: 94890 (WebCore::Font::Font): 94891 * platform/graphics/FontDescription.h: Added m_isSpecifiedFont and its accessors. 94892 (WebCore::FontDescription::FontDescription): 94893 (WebCore::FontDescription::isSpecifiedFont): 94894 (WebCore::FontDescription::setIsSpecifiedFont): 94895 (WebCore::FontDescription::operator==): 94896 * platform/text/transcoder/FontTranscoder.cpp: 94897 (WebCore::FontTranscoder::converterType): Don't transcode backslashes if a font family is explicitly specified. 94898 (WebCore::FontTranscoder::convert): 94899 (WebCore::FontTranscoder::needsTranscoding): 94900 * platform/text/transcoder/FontTranscoder.h: Change the arguments from AtomicString fontFamily to Font. 94901 * rendering/RenderText.cpp: 94902 (WebCore::RenderText::updateNeedsTranscoding): 94903 (WebCore::RenderText::setTextInternal): 94904 94905 2010-07-22 Jon Honeycutt <jhoneycutt (a] apple.com> 94906 94907 Windows build fix. 94908 94909 Commit some changes missed by the commit-queue in r63944. 94910 94911 * platform/win/BitmapInfo.h: 94912 (WebCore::BitmapInfo::is16bit): 94913 (WebCore::BitmapInfo::is32bit): 94914 (WebCore::BitmapInfo::width): 94915 (WebCore::BitmapInfo::height): 94916 (WebCore::BitmapInfo::size): 94917 (WebCore::BitmapInfo::paddedWidth): 94918 (WebCore::BitmapInfo::numPixels): 94919 (WebCore::BitmapInfo::paddedBytesPerLine): 94920 (WebCore::BitmapInfo::bytesPerLine): 94921 94922 2010-07-22 Patrick Gansterer <paroga (a] paroga.com> 94923 94924 Reviewed by Adam Roben. 94925 94926 [WINCE] Add additonal methods to BitmapInfo. 94927 https://bugs.webkit.org/show_bug.cgi?id=42071 94928 94929 Added a parameter to create 16bit BitmapInfo and 94930 some additional accessors for the WinCE port. 94931 94932 Set bmiHeader.biSize only at constructor. 94933 94934 * platform/win/BitmapInfo.cpp: 94935 (WebCore::bitmapInfoForSize): 94936 (WebCore::BitmapInfo::create): 94937 (WebCore::BitmapInfo::createBottomUp): 94938 * platform/win/BitmapInfo.h: 94939 (WebCore::BitmapInfo::is16bit): 94940 (WebCore::BitmapInfo::is32bit): 94941 (WebCore::BitmapInfo::width): 94942 (WebCore::BitmapInfo::height): 94943 (WebCore::BitmapInfo::size): 94944 (WebCore::BitmapInfo::paddedWidth): 94945 (WebCore::BitmapInfo::numPixels): 94946 (WebCore::BitmapInfo::paddedBytesPerLine): 94947 (WebCore::BitmapInfo::bytesPerLine): 94948 94949 2010-07-22 MORITA Hajime <morrita (a] google.com> 94950 94951 Reviewed by Ojan Vafai. 94952 94953 Autoscroll on selection should take scrollbars into account as outside of the content. 94954 https://bugs.webkit.org/show_bug.cgi?id=40403 94955 94956 ScrollView's scroll-bar was considered as a part of content rect, 94957 that prevents autoscroll to happen when the pointer is over the 94958 scroll-bar. This change excluded scroll-bar region from scrolling 94959 delta calculation. 94960 94961 Test: WebCore/manual-tests/autoscroll-over-scrollbar.html 94962 94963 * rendering/RenderLayer.cpp: 94964 (WebCore::RenderLayer::scrollRectToVisible): 94965 94966 2010-07-22 Kent Tamura <tkent (a] chromium.org> 94967 94968 Reviewed by Darin Adler. 94969 94970 maxLength should not be applied to non-text types 94971 https://bugs.webkit.org/show_bug.cgi?id=42814 94972 94973 According to the HTML5 specification, maxLength attribute should 94974 be applied to text, search, url, tel, email, and password types. 94975 94976 Test: fast/forms/input-maxlength-unsupported.html 94977 94978 * dom/InputElement.cpp: 94979 (WebCore::InputElement::handleBeforeTextInsertedEvent): 94980 Apply maxLength() only if supportsMaxLength() is true. 94981 * dom/InputElement.h: 94982 * html/HTMLInputElement.cpp: 94983 (WebCore::HTMLInputElement::patternMismatch): 94984 Code cleanup by isTextType(). 94985 (WebCore::HTMLInputElement::tooLong): 94986 ditto. 94987 (WebCore::HTMLInputElement::isTextType): 94988 Added. This returns true for types with maxLength/pattern/placeholder. 94989 * html/HTMLInputElement.h: 94990 (WebCore::HTMLInputElement::supportsMaxLength): 94991 Added. Just calls isTextType(). 94992 (WebCore::HTMLInputElement::supportsPlaceholder): 94993 Code cleanup by isTextType(). 94994 * wml/WMLInputElement.h: 94995 (WebCore::WMLInputElement::supportsMaxLength): 94996 Added. Always returns true. 94997 94998 2010-07-22 Ryosuke Niwa <rniwa (a] webkit.org> 94999 95000 Reviewed by Kent Tamura. 95001 95002 [cleanup] logic to extract adjacent lists and list children in listifyParagraph and unlistifyParagraph should be isolated 95003 https://bugs.webkit.org/show_bug.cgi?id=42841 95004 95005 Added enclosingListChild that takes the list node containing the node for the second argument 95006 to ensure that it only returns the enclosing list child of the specified list node. 95007 95008 Added adjacentEnclosingList that finds adjacent lists of the specified position. 95009 It takes the current position, the adjacent position that may or may not have a list, and the list type, 95010 and avoids a list that belongs to a different table cell or an outer list that contains the current position. 95011 95012 No new tests needed. 95013 95014 * editing/InsertListCommand.cpp: 95015 (WebCore::enclosingListChild): Added. See above. 95016 (WebCore::InsertListCommand::unlistifyParagraph): Uses enclosingListChild. 95017 (WebCore::adjacentEnclosingList): Added. See above. 95018 (WebCore::InsertListCommand::listifyParagraph): Uses adjacentEnclosingList. 95019 95020 2010-07-22 Patrick Gansterer <paroga (a] paroga.com> 95021 95022 Reviewed by Adam Roben. 95023 95024 [WIN] Correct DeleteObject usage in PasteboardWin 95025 https://bugs.webkit.org/show_bug.cgi?id=41956 95026 95027 Call DeleteObject() if OpenClipboard() fails and don't 95028 call DeleteObject() on objects returned from SelectObject(). 95029 95030 * platform/win/PasteboardWin.cpp: 95031 (WebCore::Pasteboard::writeImage): 95032 95033 2010-07-22 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 95034 95035 Reviewed by Antonio Gomes. 95036 95037 [EFL] Log function is incorrectly used. 95038 r63804 used LOG function, but it should receive one more parameter. 95039 Used LOG_ERROR instead, since this is an error message. 95040 https://bugs.webkit.org/show_bug.cgi?id=42842 95041 95042 * platform/efl/WidgetEfl.cpp: 95043 (WebCore::Widget::applyFallbackCursor): use LOG_ERROR in place of LOG 95044 95045 2010-07-22 Kent Tamura <tkent (a] chromium.org> 95046 95047 Reviewed by Ojan Vafai. 95048 95049 Cancel button of search input field should fire input/change events 95050 https://bugs.webkit.org/show_bug.cgi?id=34393 95051 95052 Test: fast/forms/search-cancel-button-events.html 95053 95054 * rendering/TextControlInnerElements.cpp: 95055 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler): 95056 95057 2010-07-22 Sam Weinig <sam (a] webkit.org> 95058 95059 Reviewed by Maciej Stachowiak. 95060 95061 Fix for <rdar://problem/8222626> 95062 Send textDidChangeInTextField delegate callback only in response to typing or other forms of user text input. 95063 95064 * GNUmakefile.am: 95065 * WebCore.gypi: 95066 * WebCore.pro: 95067 * WebCore.vcproj/WebCore.vcproj: 95068 * WebCore.xcodeproj/project.pbxproj: 95069 Update project files. 95070 95071 * dom/UserTypingGestureIndicator.cpp: Copied from dom/UserGestureIndicator.cpp. 95072 (WebCore::UserTypingGestureIndicator::processingUserTypingGesture): 95073 (WebCore::focusedNode): 95074 (WebCore::UserTypingGestureIndicator::focusedElementAtGestureStart): 95075 (WebCore::UserTypingGestureIndicator::UserTypingGestureIndicator): 95076 (WebCore::UserTypingGestureIndicator::~UserTypingGestureIndicator): 95077 * dom/UserTypingGestureIndicator.h: Copied from dom/UserGestureIndicator.h. 95078 Version of UserGestureIndicator that just tracks keyboard gestures and the focused 95079 node they were targeting. 95080 95081 * editing/Editor.cpp: 95082 (WebCore::Editor::confirmComposition): 95083 (WebCore::Editor::setComposition): 95084 * page/EventHandler.cpp: 95085 (WebCore::EventHandler::keyEvent): 95086 Put UserTypingGestureIndicator on the stack for user generated keyboard events. 95087 95088 2010-07-22 Kent Tamura <tkent (a] chromium.org> 95089 95090 Reviewed by Ojan Vafai. 95091 95092 <input type=number> stepper buttons should dispatch input/change events 95093 https://bugs.webkit.org/show_bug.cgi?id=42440 95094 95095 Test: fast/forms/input-number-events.html 95096 95097 * html/HTMLInputElement.cpp: 95098 (WebCore::HTMLInputElement::stepUpFromRenderer): 95099 Sets a flag to dispatch 'change' event and dispatches 'input' event 95100 if the value is changed. 95101 95102 2010-07-22 Justin Schuh <jschuh (a] chromium.org> 95103 95104 Reviewed by Adam Barth. 95105 95106 Make history state methods validate against document URL 95107 https://bugs.webkit.org/show_bug.cgi?id=42858 95108 95109 Test: fast/history/history-replace-illegal.html 95110 95111 * page/History.cpp: 95112 (WebCore::History::urlForState): 95113 95114 2010-07-22 Andy Estes <aestes (a] apple.com> 95115 95116 Reviewed by Maciej Stachowiak. 95117 95118 When there are no beforeload listeners on a document, 95119 HTMLLinkElement::process() should be called immediately when the node is 95120 inserted into the document, rather than waiting until after attach is 95121 performed. 95122 <https://bugs.webkit.org/show_bug.cgi?id=42859> 95123 <rdar://problem/8194528> 95124 95125 No new tests. 95126 95127 * html/HTMLLinkElement.cpp: 95128 (WebCore::HTMLLinkElement::insertedIntoDocument): If there are no 95129 beforeload listeners, call process() immediately. Otherwise, add it as 95130 a post-attach callback. 95131 95132 2010-07-22 James Robinson <jamesr (a] chromium.org> 95133 95134 Reviewed by Simon Fraser. 95135 95136 REGRESSION: box shadows on WebGL canvas elements repainted every frame 95137 https://bugs.webkit.org/show_bug.cgi?id=42852 95138 95139 Avoid calling HTMLCanvasElement::willDraw() every time a WebGL canvas' 95140 contents update. This call is only needed in the non-compositing 95141 rendering path. 95142 95143 Covered by fast/canvas/webgl/canvas-test.html 95144 95145 * html/canvas/WebGLRenderingContext.cpp: 95146 (WebCore::WebGLRenderingContext::markContextChanged): 95147 (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): 95148 95149 2010-07-22 Patrick Gansterer <paroga (a] paroga.com> 95150 95151 Reviewed by Ojan Vafai. 95152 95153 Remove useless PlatformScrollBar 95154 https://bugs.webkit.org/show_bug.cgi?id=41911 95155 95156 * WebCore.gypi: 95157 * platform/win/PlatformScrollBar.h: Removed. 95158 * platform/win/PlatformScrollBarWin.cpp: Removed. 95159 95160 2010-07-22 Ryosuke Niwa <rniwa (a] webkit.org> 95161 95162 Reviewed by Ojan Vafai. 95163 95164 [Windows] Home hey doesn't work in first DIV inside a TABLE 95165 https://bugs.webkit.org/show_bug.cgi?id=42767 95166 95167 The bug was caused by positionAvoidingFirstPositionInTable moving outside of the editing region. 95168 Added a check so that it avoids the first position in the table only if the table is editable. 95169 95170 Test: editing/selection/home-inside-noneditable-table.html 95171 95172 * editing/visible_units.cpp: 95173 (WebCore::positionAvoidingFirstPositionInTable): 95174 95175 2010-07-22 Antonio Gomes <tonikitoo (a] webkit.org> 95176 95177 Reviewed by Laszlo Gombos. 95178 95179 Fix build warning for missing parentheses. 95180 95181 WebCore/html/HTMLInputElement.cpp:113: warning: suggest parentheses around '&&' within '||' 95182 95183 * html/HTMLInputElement.cpp: 95184 (WebCore::isNumberCharacter): 95185 95186 2010-07-22 John Gregg <johnnyg (a] google.com> 95187 95188 Reviewed by Kent Tamura. 95189 95190 [chromium] fast/forms/input-file-directory-upload.html fails on win after r63454 95191 https://bugs.webkit.org/show_bug.cgi?id=42768 95192 95193 Normalize path separators for the script API by convering \'s to /'s. 95194 95195 Covered by input-file-directory-upload.html 95196 95197 * html/HTMLInputElement.cpp: 95198 (WebCore::HTMLInputElement::setFileListFromRenderer): 95199 95200 2010-07-22 Dmitry Titov <dimich (a] chromium.org> 95201 95202 Rubberstamped by Simon Fraser. 95203 95204 * platform/PlatformStrategies.h: 95205 (WebCore::PlatformStrategies::PlatformStrategies): Add initialization of m_localizationStrategy. 95206 95207 2010-07-22 Dumitru Daniliuc <dumi (a] chromium.org> 95208 95209 Reviewed by Ojan Vafai. 95210 95211 Make db.changeVersion()'s third parameter optional, as required by the spec. 95212 https://bugs.webkit.org/show_bug.cgi?id=42787 95213 95214 * bindings/js/JSDatabaseCustom.cpp: 95215 (WebCore::JSDatabase::changeVersion): 95216 * bindings/js/JSDatabaseSyncCustom.cpp: 95217 (WebCore::JSDatabaseSync::changeVersion): 95218 * bindings/v8/custom/V8DatabaseCustom.cpp: 95219 (WebCore::V8Database::changeVersionCallback): 95220 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: 95221 (WebCore::V8DatabaseSync::changeVersionCallback): 95222 * storage/SQLTransaction.cpp: 95223 (WebCore::SQLTransaction::deliverTransactionCallback): 95224 * storage/SQLTransactionSync.cpp: 95225 (WebCore::SQLTransactionSync::execute): 95226 95227 2010-07-20 Jessie Berlin <jberlin (a] apple.com> 95228 95229 Reviewed by Darin Adler. 95230 95231 Code Generator: Allow negative and string constants. 95232 Also add tests for hexadecimal numbers. 95233 95234 * bindings/scripts/CodeGeneratorJS.pm: 95235 If it is a string, do not try to cast it to an int. 95236 95237 * bindings/scripts/IDLStructure.pm: 95238 Add a regex just for constant values that allows strings, hexadecimal numbers, and integral numbers. 95239 95240 * bindings/scripts/test/CPP/WebDOMTestObj.h: 95241 Update the tests. 95242 95243 * bindings/scripts/test/JS/JSTestObj.cpp: 95244 Ditto. 95245 95246 * bindings/scripts/test/JS/JSTestObj.h: 95247 Ditto. 95248 95249 * bindings/scripts/test/ObjC/DOMTestObj.h: 95250 Ditto. 95251 95252 * bindings/scripts/test/TestObj.idl: 95253 Add tests for negative numbers, strings, and hexadecimal numbers. 95254 95255 * bindings/scripts/test/V8/V8TestObj.cpp: 95256 Update the tests. 95257 95258 2010-07-22 Simon Fraser <simon.fraser (a] apple.com> 95259 95260 Reviewed by Darin Adler. 95261 95262 Composited layers don't scroll in WebKit2 95263 https://bugs.webkit.org/show_bug.cgi?id=42771 95264 95265 More prep work: make a single scrollPositionChanged() bottleneck method, and use it to 95266 send the scroll event, repaint fixed elements, and update compositing layers. 95267 95268 * page/FrameView.cpp: 95269 (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): 95270 (WebCore::FrameView::scrollPositionChanged): 95271 (WebCore::FrameView::repaintFixedElementsAfterScrolling): 95272 (WebCore::FrameView::valueChanged): 95273 * page/FrameView.h: 95274 * platform/ScrollView.cpp: 95275 (WebCore::ScrollView::valueChanged): 95276 95277 2010-07-22 Sam Weinig <sam (a] webkit.org> 95278 95279 Reviewed by Anders Carlsson. 95280 95281 Patch for https://bugs.webkit.org/show_bug.cgi?id=42836 95282 Add localized strings stubs for WebKit2. 95283 95284 - Convert WebKit (mac) to use a LocalizationStrategy rather than the WebCoreViewFactory 95285 for localized strings. 95286 95287 Gets us below 200 tests failing in WebKitTestRunner. 95288 95289 * WebCore.exp.in: 95290 * WebCore.xcodeproj/project.pbxproj: 95291 * page/mac/WebCoreViewFactory.h: 95292 * platform/LocalizationStrategy.h: Added. 95293 (WebCore::LocalizationStrategy::~LocalizationStrategy): 95294 * platform/PlatformStrategies.h: 95295 (WebCore::PlatformStrategies::pluginStrategy): 95296 (WebCore::PlatformStrategies::localizationStrategy): 95297 (WebCore::PlatformStrategies::PlatformStrategies): 95298 (WebCore::PlatformStrategies::~PlatformStrategies): 95299 * platform/mac/LocalizedStringsMac.mm: 95300 95301 2010-07-22 Andras Becsi <abecsi (a] webkit.org> 95302 95303 Reviewed by Antonio Gomes. 95304 95305 [Qt] Implement WebContext::applicationCacheDirectory() for the Qt port of WebKit2. 95306 https://bugs.webkit.org/show_bug.cgi?id=42830 95307 95308 No new tests needed. 95309 95310 * WebCore.pri: add ApplicationCacheStorage.h to wk2 headers 95311 * WebCore.pro: add WebContextQt.cpp to sources 95312 95313 2010-07-22 Joone Hur <joone.hur (a] samsung.com> 95314 95315 Reviewed by Antonio Gomes. 95316 95317 [EFL] add support for logging 95318 https://bugs.webkit.org/show_bug.cgi?id=40807 95319 95320 Enable to turn log channels on for EFL port 95321 95322 * platform/efl/LoggingEfl.cpp: 95323 (WebCore::InitializeLoggingChannelsIfNecessary): 95324 95325 2010-07-22 Balazs Kelemen <kb (a] inf.u-szeged.hu> 95326 95327 Ureviewed build fix. 95328 95329 [Qt] Fix WebKit2 build 95330 95331 https://bugs.webkit.org/show_bug.cgi?id=42638 95332 95333 * WebCore.pri: 95334 * WebCore.pro: 95335 95336 2010-07-22 Andrey Kosyakov <caseq (a] chromium.org> 95337 95338 Reviewed by Yury Semikhatsky. 95339 95340 Web Inspector: Stop granting universal access to inspector front-end page. 95341 https://bugs.webkit.org/show_bug.cgi?id=42817 95342 95343 * inspector/InspectorFrontendClientLocal.cpp: 95344 (WebCore::InspectorFrontendClientLocal::windowObjectCleared): 95345 95346 2010-07-22 Yury Semikhatsky <yurys (a] chromium.org> 95347 95348 Unreviewed. Fix inspector console tests crashes. 95349 95350 * bindings/v8/ScriptValue.cpp: 95351 (WebCore::v8ToInspectorValue): 95352 (WebCore::ScriptValue::toInspectorValue): enter v8 context before calling GetPropertyNames 95353 95354 2010-07-22 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 95355 95356 Unreviewed build fix. 95357 95358 [EFL] Build break for SVN r63881 95359 https://bugs.webkit.org/show_bug.cgi?id=42813 95360 95361 * CMakeLists.txt: Add platform/SchemeRegistry.cpp 95362 95363 2010-07-22 Hayato Ito <hayato (a] chromium.org> 95364 95365 Reviewed by Darin Adler. 95366 95367 Refactor CSSSelector's destructor and make it inline. 95368 95369 https://bugs.webkit.org/show_bug.cgi?id=42726 95370 95371 Refactor with no behavior change, thus no new tests. 95372 95373 * css/CSSSelector.cpp: 95374 (WebCore::CSSSelectorBag::~CSSSelectorBag): Make sure the bag is empty. 95375 (WebCore::CSSSelectorBag::add): Renamed from append(). 95376 (WebCore::CSSSelector::releaseOwnedSelectorsToBag): 95377 (WebCore::CSSSelector::deleteReachableSelectors): 95378 * css/CSSSelector.h: 95379 (WebCore::CSSSelector::~CSSSelector): 95380 95381 2010-07-22 Yury Semikhatsky <yurys (a] chromium.org> 95382 95383 Reviewed by Pavel Feldman. 95384 95385 Web Inspector: should be possible to convert console message arguments to InspectorValues 95386 https://bugs.webkit.org/show_bug.cgi?id=42457 95387 95388 Now it is possible to convert simple JavaScript objects to 95389 InspectorValues. 95390 95391 * bindings/js/ScriptValue.cpp: 95392 (WebCore::jsToInspectorValue): 95393 (WebCore::ScriptValue::toInspectorValue): 95394 * bindings/js/ScriptValue.h: 95395 * bindings/v8/ScriptValue.cpp: 95396 (WebCore::v8ToInspectorValue): 95397 (WebCore::ScriptValue::toInspectorValue): 95398 * bindings/v8/ScriptValue.h: 95399 * inspector/ConsoleMessage.cpp: console notifications are pushed to RemoteInspectorFrontend instead of InspectorFrontend. 95400 (WebCore::ConsoleMessage::CallFrame::buildInspectorObject): 95401 (WebCore::ConsoleMessage::addToFrontend): 95402 (WebCore::ConsoleMessage::updateRepeatCountInConsole): 95403 * inspector/ConsoleMessage.h: 95404 * inspector/InjectedScript.cpp: 95405 (WebCore::InjectedScript::wrapForConsole): return InspectorValue instead of SerializedScriptValue 95406 * inspector/InjectedScript.h: 95407 * inspector/Inspector.idl: 95408 * inspector/InspectorBackend.cpp: 95409 (WebCore::InspectorBackend::clearConsoleMessages): send response directly from the backend 95410 (WebCore::InspectorBackend::remoteFrontend): 95411 * inspector/InspectorBackend.h: 95412 * inspector/InspectorController.cpp: 95413 (WebCore::InspectorController::addConsoleMessage): 95414 (WebCore::InspectorController::clearConsoleMessages): don't send notification to the front end, 95415 it will be send either from InspectorBackend.cpp if it was a user request or reset message will 95416 be send to the front end if the messages are cleared due to page navigation. 95417 (WebCore::InspectorController::populateScriptObjects): 95418 * inspector/front-end/ConsoleView.js: 95419 * inspector/front-end/inspector.js: 95420 95421 2010-07-22 Alexander Pavlov <apavlov (a] chromium.org> 95422 95423 Reviewed by Pavel Feldman. 95424 95425 Web Inspector: Modifying settings actually modifies defaultValues 95426 https://bugs.webkit.org/show_bug.cgi?id=42816 95427 95428 Avoid using live modifiable objects as property default values. 95429 95430 * inspector/front-end/Settings.js: 95431 (WebInspector.Settings): 95432 (WebInspector.Settings.prototype.reset): 95433 (WebInspector.Settings.prototype._load): 95434 (WebInspector.Settings.prototype.installSetting): 95435 (WebInspector.Settings.prototype._get): 95436 95437 2010-07-22 Ben Murdoch <benm (a] google.com> 95438 95439 Reviewed by Simon Fraser. 95440 95441 Touch events do not affect the :active CSS state 95442 https://bugs.webkit.org/show_bug.cgi?id=39493 95443 95444 Clean the code up by using a typedef based on comments 95445 post landing of the original patch. 95446 95447 No change in functionality so no new tests. 95448 95449 * rendering/HitTestRequest.h: Typedef the HitTestRequestType to unsigned. 95450 * WebCore.exp.in: Update export signature. 95451 * WebCore.order: Ditto. 95452 * page/EventHandler.cpp: use the new typedef. 95453 * page/EventHandler.h: ditto. 95454 95455 95456 2010-07-22 Alexander Pavlov <apavlov (a] chromium.org> 95457 95458 Reviewed by Pavel Feldman. 95459 95460 Web Inspector: Rename method for CSS rule source range retrieval and fix return object format 95461 https://bugs.webkit.org/show_bug.cgi?id=42379 95462 95463 * inspector/Inspector.idl: 95464 * inspector/InspectorBackend.cpp: 95465 (WebCore::InspectorBackend::getRuleRanges): 95466 * inspector/InspectorBackend.h: 95467 * inspector/InspectorBackend.idl: 95468 * inspector/InspectorCSSStore.cpp: 95469 (WebCore::InspectorCSSStore::getRuleRanges): 95470 * inspector/InspectorCSSStore.h: 95471 * inspector/InspectorDOMAgent.cpp: 95472 (WebCore::InspectorDOMAgent::getRuleRanges): 95473 * inspector/InspectorDOMAgent.h: 95474 * inspector/front-end/DOMAgent.js: 95475 95476 2010-07-21 Pavel Feldman <pfeldman (a] chromium.org> 95477 95478 Reviewed by Yury Semikhatsky. 95479 95480 Chromium Dev Tools: Separators are missing in the context menu. 95481 95482 https://bugs.webkit.org/show_bug.cgi?id=42761 95483 95484 * bindings/js/JSInspectorFrontendHostCustom.cpp: 95485 (WebCore::JSInspectorFrontendHost::showContextMenu): 95486 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: 95487 (WebCore::V8InspectorFrontendHost::showContextMenuCallback): 95488 * platform/ContextMenuItem.h: 95489 (WebCore::): 95490 95491 2010-07-22 Zoltan Herczeg <zherczeg (a] webkit.org> 95492 95493 Reviewed by Nikolas Zimmermann. 95494 95495 SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change 95496 https://bugs.webkit.org/show_bug.cgi?id=42244 95497 95498 Implementing svgAttributeChanged and childrenChanged for the base class of all filters, 95499 called SVGFilterPrimitiveStandardAttributes. 95500 95501 Tests: svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-height-attr.html 95502 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-result-attr.html 95503 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-width-attr.html 95504 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-x-attr.html 95505 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-dom-y-attr.html 95506 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-height-prop.html 95507 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-result-prop.html 95508 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-width-prop.html 95509 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-x-prop.html 95510 svg/dynamic-updates/SVGFilterPrimitiveStandardAttributes-svgdom-y-prop.html 95511 95512 * svg/SVGFilterPrimitiveStandardAttributes.cpp: 95513 (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): 95514 (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): 95515 * svg/SVGFilterPrimitiveStandardAttributes.h: 95516 (WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilter): 95517 95518 2010-07-22 Kent Tamura <tkent (a] chromium.org> 95519 95520 Reviewed by Darin Adler. 95521 95522 Small refactoring for input value sanitization 95523 https://bugs.webkit.org/show_bug.cgi?id=42807 95524 95525 Rename some functions to clarify their roles. 95526 95527 * dom/InputElement.cpp: 95528 (WebCore::replaceEOLAndLimitLength): 95529 Renamed from sanitizeUserInputValue(). 95530 (WebCore::InputElement::sanitizeValueForTextField): 95531 Renamed from sanitizeValue(), and call replaceEOLAndLimitLength() 95532 instead of sanitizeUserInputValue(). 95533 (WebCore::InputElement::sanitizeUserInputValue): 95534 Just call replaceEOLAndLimitLength(). 95535 (WebCore::InputElement::updateValueIfNeeded): 95536 Use non-static sanitizeValue() for consistency. 95537 * dom/InputElement.h: 95538 * html/HTMLInputElement.cpp: 95539 (WebCore::HTMLInputElement::setInputType): 95540 Revert the change of r63876. It is not needed because of the 95541 updateValueIfNeeded() change. 95542 (WebCore::HTMLInputElement::sanitizeValue): 95543 Apply the sanitizeValue() renaming. 95544 95545 2010-07-22 Tony Gentilcore <tonyg (a] chromium.org> 95546 95547 Reviewed by Darin Fisher. 95548 95549 webkitPerformance.timing.responseEnd should not include document parse time 95550 https://bugs.webkit.org/show_bug.cgi?id=42797 95551 95552 No new tests because timing based test would be flaky. 95553 95554 * loader/FrameLoader.cpp: 95555 (WebCore::FrameLoader::finishedLoading): finishedLoading() is called by the platform at the right time, but didReceiveData() synchronously invokes parsing without returning to the event loop prior to this. So by the time the didFinishLoading() method is executed, parsing is finished. The solution is to move this time to didReceiveData() prior to parsing. 95556 * loader/MainResourceLoader.cpp: 95557 (WebCore::MainResourceLoader::didReceiveData): Update the time each time didReceiveData() is called. 95558 (WebCore::MainResourceLoader::didFinishLoading): When finished, and after parsing, set responseEnd appropriately. 95559 * loader/MainResourceLoader.h: 95560 * page/Timing.cpp: 95561 (WebCore::Timing::resourceLoadTimeRelativeToAbsolute): Now that responseEnd is set correctly, it can be much shorter for very fast loads (like local files). This exposed the fact that this skew check was not tight enough. We need to make sure that the whole range of values from the ResourceLoadTiming API fit within fetchStart-responseEnd, not just that requestTime fits in this range. 95562 95563 2010-07-21 Kent Tamura <tkent (a] chromium.org> 95564 95565 Reviewed by Darin Adler. 95566 95567 Assertion failure by changing the type of an input element with a 95568 non-number value to 'range'. 95569 https://bugs.webkit.org/show_bug.cgi?id=42643 95570 95571 Test: fast/forms/input-value-sanitization.html 95572 95573 * html/HTMLInputElement.cpp: 95574 (WebCore::HTMLInputElement::setInputType): 95575 Update the value by HTMLInputElement::sanitizeValue() in a case that 95576 storesValueSeparateFromAttribute() state is not changed. 95577 95578 2010-07-21 Adam Barth <abarth (a] webkit.org> 95579 95580 Reviewed by Eric Seidel. 95581 95582 Implement spec changes for basefont and bgsound 95583 https://bugs.webkit.org/show_bug.cgi?id=42792 95584 95585 * html/HTMLTreeBuilder.cpp: 95586 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 95587 (WebCore::HTMLTreeBuilder::processStartTag): 95588 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 95589 95590 2010-07-21 Adam Barth <abarth (a] webkit.org> 95591 95592 Reviewed by Eric Seidel. 95593 95594 Update a list of tags to match changes in the HTML5 spec 95595 https://bugs.webkit.org/show_bug.cgi?id=42791 95596 95597 We need to atomize these strings at some point. 95598 95599 * html/HTMLTreeBuilder.cpp: 95600 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 95601 95602 2010-07-21 Adam Barth <abarth (a] webkit.org> 95603 95604 Reviewed by Eric Seidel. 95605 95606 HTMLTreeBuilder needs to update to match new spec behavior for <button> 95607 https://bugs.webkit.org/show_bug.cgi?id=42233 95608 95609 The spec has some typos in this area, but this is my best guess for 95610 what Ian means. I've filed bugs against the spec for each typo. 95611 95612 * html/HTMLElementStack.cpp: 95613 (WebCore::HTMLNames::isScopeMarker): 95614 (WebCore::HTMLNames::isButtonScopeMarker): 95615 (WebCore::HTMLElementStack::inButtonScope): 95616 * html/HTMLElementStack.h: 95617 * html/HTMLTreeBuilder.cpp: 95618 (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope): 95619 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): 95620 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 95621 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 95622 * html/HTMLTreeBuilder.h: 95623 95624 2010-07-21 Justin Schuh <jschuh (a] chromium.org> 95625 95626 Reviewed by Oliver Hunt. 95627 95628 Prevent DeleteButtonController enable state from changing when not editing 95629 https://bugs.webkit.org/show_bug.cgi?id=42659 95630 95631 Test: svg/custom/use-invalid-html.xhtml 95632 95633 * dom/ContainerNode.cpp: 95634 (WebCore::ContainerNode::cloneChildNodes): 95635 95636 2010-07-21 Beth Dakin <bdakin (a] apple.com> 95637 95638 Reviewed by Dan Bernstein. 95639 95640 Fix for https://bugs.webkit.org/show_bug.cgi?id=42605 New border- 95641 radius path-based drawing code has some issues with corner-joins 95642 95643 GraphicsContext::clipConvexPolygon() now takes a boolean parameter 95644 indicating whether or not the clip should be antialiased. 95645 * platform/graphics/GraphicsContext.h: 95646 * platform/graphics/cairo/GraphicsContextCairo.cpp: 95647 (WebCore::GraphicsContext::clipConvexPolygon): 95648 * platform/graphics/cg/GraphicsContextCG.cpp: 95649 (WebCore::GraphicsContext::clipConvexPolygon): 95650 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 95651 (WebCore::GraphicsContext::clipConvexPolygon): 95652 * platform/graphics/qt/GraphicsContextQt.cpp: 95653 (WebCore::GraphicsContext::clipConvexPolygon): 95654 * platform/graphics/skia/GraphicsContextSkia.cpp: 95655 (WebCore::GraphicsContext::clipConvexPolygon): 95656 * platform/graphics/wince/GraphicsContextWince.cpp: 95657 (WebCore::GraphicsContext::clipConvexPolygon): 95658 * platform/graphics/wx/GraphicsContextWx.cpp: 95659 (WebCore::GraphicsContext::clipConvexPolygon): 95660 95661 Compute 4 booleans determining if each edge is a "matching" edge of 95662 not. Send the two appropriate values to clipBorderSidePolygon() so 95663 we can decide there whether or not to antialias the clip based on 95664 matchy-ness. 95665 * rendering/RenderBoxModelObject.cpp: 95666 (WebCore::RenderBoxModelObject::paintBorder): 95667 95668 If both edges are matching, don't antialias. If neither edge 95669 matches, never antialias. If one edge matches and one does not, 95670 apply two clips to get the appropriate antialiasing in each corner. 95671 (WebCore::RenderBoxModelObject::clipBorderSidePolygon): 95672 * rendering/RenderBoxModelObject.h: 95673 95674 2010-07-21 Brady Eidson <beidson (a] apple.com> 95675 95676 Reviewed by Geoffrey Garen. 95677 95678 Break out "scheme registration" functionality from SecurityOrigin to a SchemeRegistry 95679 https://bugs.webkit.org/show_bug.cgi?id=42783 95680 95681 No new tests. (No change in behavior) 95682 95683 * GNUmakefile.am: 95684 * WebCore.exp.in: 95685 * WebCore.gypi: 95686 * WebCore.pro: 95687 * WebCore.vcproj/WebCore.vcproj: 95688 * WebCore.xcodeproj/project.pbxproj: 95689 95690 * loader/FrameLoader.cpp: 95691 (WebCore::FrameLoader::isMixedContent): 95692 (WebCore::FrameLoader::loadFrameRequest): 95693 95694 * page/SecurityOrigin.cpp: 95695 (WebCore::SecurityOrigin::SecurityOrigin): 95696 (WebCore::SecurityOrigin::canLoad): 95697 (WebCore::SecurityOrigin::isLocal): 95698 * page/SecurityOrigin.h: 95699 95700 * platform/SchemeRegistry.cpp: Added. 95701 (WebCore::localSchemes): 95702 (WebCore::secureSchemes): 95703 (WebCore::schemesWithUniqueOrigins): 95704 (WebCore::SchemeRegistry::registerURLSchemeAsLocal): 95705 (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal): 95706 (WebCore::SchemeRegistry::localURLSchemes): 95707 (WebCore::SchemeRegistry::shouldTreatURLAsLocal): 95708 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal): 95709 (WebCore::SchemeRegistry::registerURLSchemeAsNoAccess): 95710 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsNoAccess): 95711 (WebCore::SchemeRegistry::registerURLSchemeAsSecure): 95712 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsSecure): 95713 * platform/SchemeRegistry.h: Added. 95714 95715 2010-07-21 Chris Marrin <cmarrin (a] apple.com> 95716 95717 Reviewed by Simon Fraser. 95718 95719 Assertion failure in AnimationBase::updateStateMachine() coming out of paused state 95720 https://bugs.webkit.org/show_bug.cgi?id=37993 95721 95722 Added logic to properly handle pausing and resuming when in the 95723 AnimationStateStartWaitStyleAvailable state. This was causing an 95724 assert when going out of the pause state because the paused flag 95725 was not set. 95726 95727 The fix is a straightforward implementation, going into a new 95728 AnimationStatePausedWaitStyleAvailable state and setting the paused 95729 flag (actually setting the m_pauseTime variable to something other 95730 than -1). Also added handling of the new state, both when the 95731 "style available" callback comes in while in this state and when 95732 unpausing while in this state. 95733 95734 For now a LayoutTest is not possible since there's no way to go in 95735 and out of the pause state. I've opened https://bugs.webkit.org/show_bug.cgi?id=42790 95736 to track this. 95737 95738 * page/animation/AnimationBase.cpp: 95739 (WebCore::AnimationBase::updateStateMachine): 95740 * page/animation/AnimationBase.h: 95741 (WebCore::AnimationBase::): 95742 95743 2010-07-21 Bo Liu <boliu (a] chromium.org> 95744 95745 Reviewed by Darin Fisher. 95746 95747 [Chromium] Add chromium WebMediaPlayer to PlatformMedia 95748 https://bugs.webkit.org/show_bug.cgi?id=41295 95749 95750 * platform/graphics/MediaPlayer.h: 95751 (WebCore::PlatformMedia::): 95752 95753 2010-07-21 Simon Fraser <simon.fraser (a] apple.com> 95754 95755 Reviewed by Anders Carlsson. 95756 95757 Composited layers don't scroll in WebKit2 95758 https://bugs.webkit.org/show_bug.cgi?id=42771 95759 95760 Prep work: FrameView::scrollPositionChanged() sounds like a generic "did scroll" bottleneck, 95761 but this is deceiving. It's only every called on one platform (Mac) when the NSScrollView gets 95762 scrolled, so rename it to FrameView::scrollPositionChangedViaPlatformWidget(). 95763 95764 * WebCore.exp.in: 95765 * page/FrameView.cpp: 95766 (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): 95767 * page/FrameView.h: 95768 95769 2010-07-21 Peter Beverloo <peter (a] lvp-media.com> 95770 95771 Reviewed by Eric Carlson. 95772 95773 Removed support for the -khtml CSS vendor prefix and limit the 95774 -apple prefix to two properties (dashboard-region and line-clamp). 95775 95776 Test: fast/css/limited-vendor-prefix-behavior.html 95777 95778 * css/CSSParser.cpp: 95779 (WebCore::cssPropertyID): 95780 95781 2010-07-21 Adam Barth <abarth (a] webkit.org> 95782 95783 Reviewed by Eric Seidel. 95784 95785 Fix the last tree HTML5 tree builder crashes 95786 https://bugs.webkit.org/show_bug.cgi?id=42773 95787 95788 This patch changes the internal representation of a bookmark to handle 95789 the case where one of the adjecent entries in the list of active 95790 formatting elements is actually a marker. 95791 95792 After this patch, the bookmarking mechanism isn't as general, but it 95793 works for the cases we need in the adoption agency. 95794 95795 Also, after this patch, there aren't any more known crashers in the 95796 HTML5 tree builder. :) 95797 95798 * html/HTMLFormattingElementList.cpp: 95799 (WebCore::HTMLFormattingElementList::bookmarkFor): 95800 (WebCore::HTMLFormattingElementList::swapTo): 95801 * html/HTMLFormattingElementList.h: 95802 (WebCore::HTMLFormattingElementList::Bookmark::Bookmark): 95803 (WebCore::HTMLFormattingElementList::Bookmark::moveToAfter): 95804 (WebCore::HTMLFormattingElementList::Bookmark::hasBeenMoved): 95805 (WebCore::HTMLFormattingElementList::Bookmark::mark): 95806 (WebCore::HTMLFormattingElementList::first): 95807 * html/HTMLTreeBuilder.cpp: 95808 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 95809 95810 2010-07-21 Tony Gentilcore <tonyg (a] chromium.org> 95811 95812 Unreviewed build fix. 95813 95814 Disable overzealous ASSERT 95815 https://bugs.webkit.org/show_bug.cgi?id=42775 95816 95817 No new tests because no changed functionality. 95818 95819 * loader/FrameLoader.cpp: 95820 (WebCore::FrameLoader::stopLoading): 95821 95822 2010-07-21 Yael Aharon <yael.aharon (a] nokia.com> 95823 95824 Reviewed by Darin Adler. 95825 95826 Crash in Notification::disconnectFrame() triggered by Frame::lifeSupportTimerFired() 95827 https://bugs.webkit.org/show_bug.cgi?id=42534 95828 95829 Call NotificationsCenter::disconnectFrame() when the frame is disconnected from the page. 95830 Calling it from the destructor of Frame is too late and sometimes causes access violation. 95831 I was not able to reproduce this crash, so did not add new tests. 95832 This patch is based on the error reported in 95833 http://code.google.com/p/chromium/issues/detail?id=49323. 95834 95835 * page/DOMWindow.cpp: 95836 (WebCore::DOMWindow::pageDestroyed): 95837 * page/DOMWindow.h: 95838 * page/Frame.cpp: 95839 (WebCore::Frame::pageDestroyed): 95840 95841 2010-07-21 Anders Carlsson <andersca (a] apple.com> 95842 95843 Reviewed by Sam Weinig. 95844 95845 Don't assert when clicking on a plug-in in WebKit2 95846 https://bugs.webkit.org/show_bug.cgi?id=42762 95847 95848 Remove a now invalid assert and return false instead. 95849 95850 * page/mac/EventHandlerMac.mm: 95851 (WebCore::EventHandler::passMouseDownEventToWidget): 95852 95853 2010-07-21 Anton Muhin <antonm (a] chromium.org> 95854 95855 Reviewed by Adam Barth. 95856 95857 [v8] Revert r60670 as it introduced a regression: in some cases named children couldn't be retrieved. 95858 https://bugs.webkit.org/show_bug.cgi?id=42766 95859 95860 See http://code.google.com/p/chromium/issues/detail?id=48804 for more details. 95861 95862 * bindings/scripts/CodeGeneratorV8.pm: 95863 * bindings/v8/ScriptController.cpp: 95864 (WebCore::ScriptController::namedItemAdded): 95865 (WebCore::ScriptController::namedItemRemoved): 95866 * bindings/v8/V8DOMWindowShell.cpp: 95867 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 95868 * bindings/v8/V8DOMWindowShell.h: 95869 * bindings/v8/V8DOMWrapper.cpp: 95870 (WebCore::V8DOMWrapper::instantiateV8Object): 95871 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 95872 (WebCore::V8HTMLDocument::namedPropertyDeleter): 95873 (WebCore::V8HTMLDocument::namedPropertyGetter): 95874 (WebCore::V8HTMLDocument::indexedPropertyGetter): 95875 (WebCore::V8HTMLDocument::allAccessorSetter): 95876 (WebCore::toV8): 95877 95878 2010-07-21 Eric Carlson <eric.carlson (a] apple.com> 95879 95880 Reviewed by Simon Fraser. 95881 95882 Update plug-in proxy backed <video> and <audio> elements. 95883 https://bugs.webkit.org/show_bug.cgi?id=42770 95884 <rdar://problem/7963467> 95885 95886 * html/HTMLMediaElement.cpp: 95887 (WebCore::HTMLMediaElement::attributeChanged): Only call m_player->setControls when 95888 the 'controls' attribute changes. 95889 (WebCore::HTMLMediaElement::createRenderer): 95890 (WebCore::HTMLMediaElement::attach): If we have a proxy widget, call the WebFrameLoaderClient's 95891 'hide' and 'show' methods for the media proxy plug-in to make sure we remove and re-add the 95892 plug-in's view to the global list of plugin views. 95893 (WebCore::HTMLMediaElement::createMediaPlayerProxy): Bail if m_proxyWidget is non-NULL 95894 95895 * loader/EmptyClients.h: 95896 (WebCore::EmptyFrameLoaderClient::hideMediaPlayerProxyPlugin): Empty stub method. 95897 (WebCore::EmptyFrameLoaderClient::showMediaPlayerProxyPlugin): Ditto. 95898 95899 * loader/FrameLoader.cpp: 95900 * loader/FrameLoaderClient.h: 95901 * loader/SubframeLoader.cpp: 95902 (WebCore::FrameLoader::loadMediaPlayerProxyPlugin): Always set m_containsPlugIns in loadMediaPlayerProxyPlugin(), 95903 even when we don't have a renderer. 95904 (WebCore::FrameLoader::hideMediaPlayerProxyPlugin): New, call hideMediaPlayerProxyPlugin. 95905 (WebCore::FrameLoader::showMediaPlayerProxyPlugin): New, call showMediaPlayerProxyPlugin. 95906 95907 * platform/graphics/MediaPlayer.cpp: 95908 (WebCore::NullMediaPlayerPrivate::setControls): 95909 (WebCore::MediaPlayer::setControls): New, pass through to media engine. 95910 (WebCore::MediaPlayer::enterFullscreen): Ditto. 95911 (WebCore::MediaPlayer::exitFullscreen): Ditto. 95912 * platform/graphics/MediaPlayer.h: 95913 * platform/graphics/MediaPlayerPrivate.h: 95914 (WebCore::MediaPlayerPrivateInterface::setControls): 95915 (WebCore::MediaPlayerPrivateInterface::enterFullscreen): 95916 (WebCore::MediaPlayerPrivateInterface::exitFullscreen): 95917 95918 2010-07-21 Dimitri Glazkov <dglazkov (a] chromium.org> 95919 95920 Reviewed by Darin Adler. 95921 95922 Make more members of CSSStyleSelector private. 95923 https://bugs.webkit.org/show_bug.cgi?id=42757 95924 95925 No change in behavior, so no new tests. 95926 95927 * css/CSSStyleSelector.h: Made a publicly-unused methods private. 95928 95929 2010-07-21 Pavel Feldman <pfeldman (a] chromium.org> 95930 95931 Reviewed by Timothy Hatcher. 95932 95933 Web Inspector: consider jQuery object to be of array nature. 95934 95935 https://bugs.webkit.org/show_bug.cgi?id=42758 95936 95937 * inspector/front-end/InjectedScript.js: 95938 (injectedScriptConstructor): 95939 95940 2010-07-21 Alexey Proskuryakov <ap (a] apple.com> 95941 95942 Unreviewed Windows build fix. 95943 95944 https://bugs.webkit.org/show_bug.cgi?id=42717 95945 <rdar://problem/7062824> A wrong password entered for site or proxy auth remains in WebCore 95946 credential storage, and is sent with subsequent requests 95947 95948 * platform/network/cf/ResourceHandleCFNet.cpp: 95949 (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Don't use that direct a 95950 copy/paste, oops! 95951 95952 2010-07-21 Simon Fraser <simon.fraser (a] apple.com> 95953 95954 Reviewed by Darin Adler. 95955 95956 When GraphicsLayer::contentsOrientation() is CompositingCoordinatesBottomUp, need to flip repaint rects 95957 https://bugs.webkit.org/show_bug.cgi?id=42662 95958 95959 If the contentsOrientation() on a GraphicsLayer is CompositingCoordinatesBottomUp, then we 95960 need to flip the rects passed to setNeedsDisplayInRect:. 95961 95962 Avoid writing this code twice by making a bare function to share code 95963 between WebLayer and WebTiledLayer. Convert the existing +drawContents:ofLayer:intoContext: 95964 class method into a bare function, because the Obj-C calling overhead doesn't buy us anything. 95965 95966 Take out an assertion in GraphicsLayerCA::updateContentsTransform() that is not 95967 correct. 95968 95969 No new tests because no layers use bottom-up contents at present. 95970 95971 * platform/graphics/mac/GraphicsLayerCA.mm: 95972 (WebCore::GraphicsLayerCA::updateContentsTransform): 95973 * platform/graphics/mac/WebLayer.h: 95974 * platform/graphics/mac/WebLayer.mm: 95975 (drawLayerContents): 95976 (setLayerNeedsDisplayInRect): 95977 (-[WebLayer setNeedsDisplayInRect:]): 95978 (-[WebLayer drawInContext:]): 95979 * platform/graphics/mac/WebTiledLayer.mm: 95980 (-[WebTiledLayer setNeedsDisplayInRect:]): 95981 (-[WebTiledLayer drawInContext:]): 95982 95983 2010-07-20 Alexey Proskuryakov <ap (a] apple.com> 95984 95985 Reviewed by Darin Adler. 95986 95987 https://bugs.webkit.org/show_bug.cgi?id=42717 95988 <rdar://problem/7062824> A wrong password entered for site or proxy auth remains in WebCore 95989 credential storage, and is sent with subsequent requests 95990 95991 Tests: http/tests/security/401-logout/401-logout.php 95992 http/tests/xmlhttprequest/remember-bad-password.html 95993 95994 * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::remove): 95995 * platform/network/CredentialStorage.h: 95996 Added a way to remove stored credentials for a given protection space. 95997 95998 * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): 95999 * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): 96000 Remove stored credentials if they didn't work the first time. 96001 96002 2010-07-20 Steve Falkenburg <sfalken (a] apple.com> 96003 96004 Reviewed by Adam Roben. 96005 96006 WebKit on Windows should build optionally with an unversioned ICU DLL 96007 https://bugs.webkit.org/show_bug.cgi?id=42722 96008 <rdar://problem/8211767> WebKit needs to link against unversioned ICU 96009 96010 To get the proper value for U_DISABLE_RENAMING into all source files, we force 96011 the include of ICUVersion.h (our generated header) via the compiler options. 96012 96013 * WebCore.vcproj/WebCore.vcproj: 96014 Add forced include of ICUVersion.h. 96015 * WebCore.vcproj/WebCoreCommon.vsprops: Add forced include of ICUVersion.h. 96016 96017 2010-07-21 Ilya Tikhonovsky <loislo (a] chromium.org> 96018 96019 Reviewed by Pavel Feldman. 96020 96021 WebInspector: Serialization to JSON in InspectorValue works incorrect 96022 if comma is assigned as decimal separator. Windows with Russian locale. 96023 https://bugs.webkit.org/show_bug.cgi?id=42755 96024 96025 * inspector/InspectorValues.cpp: 96026 (WebCore::InspectorBasicValue::writeJSON): 96027 96028 2010-07-20 Simon Fraser <simon.fraser (a] apple.com> 96029 96030 Reviewed by Dan Bernstein. 96031 96032 CSS rotation transform can cause elements with certain styles to vanish during rotation. 96033 https://bugs.webkit.org/show_bug.cgi?id=42579 96034 96035 Remove some untested, broken code that, as far as I can tell, could never get hit. 96036 Use the correct rect for the PaintInfo so that zero-sized elements with overflow:hidden 96037 but a border paint correctly. 96038 96039 Test: compositing/overflow/zero-size-overflow.html 96040 96041 * rendering/RenderLayerBacking.cpp: 96042 (WebCore::RenderLayerBacking::paintIntoLayer): 96043 96044 2010-07-21 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 96045 96046 Reviewed by Laszlo Gombos. 96047 96048 [QT] Leak and few more fixes to qt port of geolocation 96049 https://bugs.webkit.org/show_bug.cgi?id=42753 96050 96051 Fixes memory leak and default values set to attributes. 96052 96053 Memory leak fix no new test case added. 96054 96055 * platform/qt/GeolocationServiceQt.cpp: Added. 96056 (WebCore::GeolocationServiceQt::~GeolocationServiceQt): 96057 (WebCore::GeolocationServiceQt::positionUpdated): 96058 96059 2010-07-21 Kristian Amlie <kristian.amlie (a] nokia.com> 96060 96061 Reviewed by Kenneth Rohde Christiansen. 96062 96063 Added automatic sqlite extraction for Symbian to QtWebKit. 96064 96065 Also added sqlite detection in case sqlite is not present in the SDK. 96066 This is possible if WebKit is compiled standalone. 96067 96068 The inclusion part is a consequence of commit c578c6c1d6d in the Qt 96069 repository. It will not work on Qt versions < 4.7.1, but that is ok, 96070 since the only build system it will affect is marked as experimental 96071 in the whole 4.7 series. 96072 96073 * WebCore.pro: 96074 96075 2010-07-21 Adam Barth <abarth (a] webkit.org> 96076 96077 Reviewed by Eric Seidel. 96078 96079 Associate elements with the active form 96080 https://bugs.webkit.org/show_bug.cgi?id=42728 96081 96082 This patch fixes fast/forms/formmove3.html. The test still doesn't 96083 pass due to some render tree differences, but it works as intended now. 96084 96085 To fix this test, I needed to deviate from the spec slight. Minefield 96086 seems to have the same deviation: 96087 - http://www.w3.org/Bugs/Public/show_bug.cgi?id=10216 96088 96089 * html/HTMLConstructionSite.cpp: 96090 (WebCore::HTMLConstructionSite::takeForm): 96091 (WebCore::HTMLConstructionSite::setForm): 96092 (WebCore::HTMLConstructionSite::createHTMLElement): 96093 * html/HTMLConstructionSite.h: 96094 (WebCore::HTMLConstructionSite::form): 96095 * html/HTMLTreeBuilder.cpp: 96096 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 96097 96098 2010-07-21 Adam Barth <abarth (a] webkit.org> 96099 96100 Reviewed by Eric Seidel. 96101 96102 The adoption agency doesn't properly attach() 96103 https://bugs.webkit.org/show_bug.cgi?id=42727 96104 96105 The adoption agency is transliterated rather directly from the spec, 96106 but it misses some of the WebKit-specific machinations, such as 96107 attaching to the render tree. 96108 96109 The algorithm, as written, is a minor layer violation. I've added to 96110 the problem by calling attach() from HTMLTreeBuilder (even though 96111 that's the job of the HTMLConstructionSite). We'll need to clean up 96112 the layering a bit at some point. 96113 96114 This patch half fixes fast/forms/formmove3.html. Hopefully I'll finish 96115 fixing it in the next patch. 96116 96117 * html/HTMLConstructionSite.cpp: 96118 (WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement): 96119 * html/HTMLTreeBuilder.cpp: 96120 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 96121 96122 2010-07-21 Adam Barth <abarth (a] webkit.org> 96123 96124 Reviewed by Eric Seidel. 96125 96126 <input> elements with no type attribute should be foster parented 96127 https://bugs.webkit.org/show_bug.cgi?id=42725 96128 96129 Fix spec transcription error. 96130 96131 * html/HTMLTreeBuilder.cpp: 96132 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 96133 96134 2010-07-21 Adam Barth <abarth (a] webkit.org> 96135 96136 Reviewed by Eric Seidel. 96137 96138 Fix fast/css/last-child-style-sharing.html 96139 https://bugs.webkit.org/show_bug.cgi?id=42731 96140 96141 Prior to this patch, we weren't calling finishParsingChildren on the 96142 body element. We need a more systematic way of catching these bugs. 96143 96144 * html/HTMLElementStack.cpp: 96145 (WebCore::HTMLElementStack::popAll): 96146 * html/HTMLElementStack.h: 96147 * html/HTMLTreeBuilder.cpp: 96148 (WebCore::HTMLTreeBuilder::processEndOfFile): 96149 96150 2010-07-21 Hans Wennborg <hans (a] chromium.org> 96151 96152 Reviewed by Steve Block. 96153 96154 Runtime feature switch for device orientation 96155 https://bugs.webkit.org/show_bug.cgi?id=42265 96156 96157 Add a runtime feature switch that decides whether device orientation 96158 events are available or not. Defaults to true. 96159 96160 * WebCore.vcproj/WebCoreCommon.vsprops: Add bindings/generic to include path. 96161 * bindings/generic/RuntimeEnabledFeatures.cpp: 96162 * bindings/generic/RuntimeEnabledFeatures.h: 96163 (WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled): 96164 (WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled): 96165 (WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled): 96166 (WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled): 96167 * page/DOMWindow.cpp: 96168 (WebCore::DOMWindow::addEventListener): 96169 (WebCore::DOMWindow::removeEventListener): 96170 (WebCore::DOMWindow::removeAllEventListeners): 96171 * page/DOMWindow.idl: 96172 * page/Page.cpp: 96173 (WebCore::Page::Page): 96174 96175 2010-07-21 Zoltan Herczeg <zherczeg (a] webkit.org> 96176 96177 Reviewed Nikolas Zimmermann. 96178 96179 SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change 96180 https://bugs.webkit.org/show_bug.cgi?id=42244 96181 96182 The implementation was done by Nikolas Zimmermann before, but 96183 there was no tests for it. The patch also implements the simple 96184 setFilterRes method. 96185 96186 Tests: svg/dynamic-updates/SVGFilterElement-dom-filterRes-attr.html 96187 svg/dynamic-updates/SVGFilterElement-dom-filterUnits-attr.html 96188 svg/dynamic-updates/SVGFilterElement-dom-height-attr.html 96189 svg/dynamic-updates/SVGFilterElement-dom-primitiveUnits-attr.html 96190 svg/dynamic-updates/SVGFilterElement-dom-width-attr.html 96191 svg/dynamic-updates/SVGFilterElement-dom-x-attr.html 96192 svg/dynamic-updates/SVGFilterElement-dom-y-attr.html 96193 svg/dynamic-updates/SVGFilterElement-svgdom-filterRes-call.html 96194 svg/dynamic-updates/SVGFilterElement-svgdom-filterResX-prop.html 96195 svg/dynamic-updates/SVGFilterElement-svgdom-filterResY-prop.html 96196 svg/dynamic-updates/SVGFilterElement-svgdom-filterUnits-prop.html 96197 svg/dynamic-updates/SVGFilterElement-svgdom-height-prop.html 96198 svg/dynamic-updates/SVGFilterElement-svgdom-primitiveUnits-prop.html 96199 svg/dynamic-updates/SVGFilterElement-svgdom-width-prop.html 96200 svg/dynamic-updates/SVGFilterElement-svgdom-x-prop.html 96201 svg/dynamic-updates/SVGFilterElement-svgdom-y-prop.html 96202 96203 * svg/SVGFilterElement.cpp: 96204 (WebCore::SVGFilterElement::setFilterRes): 96205 (WebCore::SVGFilterElement::svgAttributeChanged): 96206 (WebCore::SVGFilterElement::childrenChanged): 96207 * svg/SVGFilterElement.h: 96208 96209 2010-07-21 Ben Murdoch <benm (a] google.com> 96210 96211 Unreviewed, build fix. 96212 96213 Forgot to update the role of HitTestRequest.h in 96214 the Xcode project after landing patch from 96215 https://bugs.webkit.org/show_bug.cgi?id=39493 96216 96217 * WebCore.xcodeproj/project.pbxproj: Make HitTestRequest.h 96218 private so it can be included in WebKit by EventHandler.h 96219 which is already private.. 96220 96221 2010-07-20 Ben Murdoch <benm (a] google.com> 96222 96223 Reviewed by Steve Block. 96224 96225 Touch events do not affect the :active CSS state 96226 https://bugs.webkit.org/show_bug.cgi?id=39493 96227 96228 Test: fast/events/touch/touch-active-state.html 96229 96230 * WebCore.exp.in: Update exports for new signature of 96231 hitTestResultAtPoint. 96232 * WebCore.order: ditto. 96233 * page/EventHandler.cpp: 96234 (WebCore::EventHandler::EventHandler): 96235 (WebCore::EventHandler::hitTestResultAtPoint): Pass the type 96236 of the hit test to perform as a parameter with a default 96237 value rather than harcoding it in the function body. 96238 (WebCore::EventHandler::handleMouseMoveEvent): Do not modiify 96239 the active element during a mouse move if the user is 96240 touching the screen. 96241 (WebCore::EventHandler::handleTouchEvent): Set the correct 96242 type of hit test to perform depending on the type of the 96243 touch event we are handling. 96244 * page/EventHandler.h: Update the signature of hitTestResultAtPoint. 96245 96246 2010-07-20 Yury Semikhatsky <yurys (a] chromium.org> 96247 96248 Reviewed by Pavel Feldman. 96249 96250 console.assert should include stack trace with line numbers. 96251 https://bugs.webkit.org/show_bug.cgi?id=22556 96252 96253 Test: inspector/console-assert.html 96254 96255 * bindings/v8/ScriptCallStack.cpp: 96256 (WebCore::getTopFrameLocation): 96257 (WebCore::toScriptCallFramesVector): 96258 (WebCore::ScriptCallStack::create): 96259 (WebCore::ScriptCallStack::ScriptCallStack): 96260 * bindings/v8/ScriptCallStack.h: 96261 * bindings/v8/ScriptController.cpp: 96262 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 96263 * bindings/v8/custom/V8ConsoleCustom.cpp: 96264 (WebCore::V8Console::traceCallback): 96265 (WebCore::V8Console::assertCallback): 96266 * inspector/ConsoleMessage.cpp: 96267 (WebCore::ConsoleMessage::ConsoleMessage): 96268 * inspector/InspectorController.cpp: 96269 (WebCore::InspectorController::addMessageToConsole): 96270 * inspector/front-end/ConsoleView.js: 96271 (WebInspector.ConsoleMessage.prototype._formatMessage): 96272 (WebInspector.ConsoleMessage.prototype.toMessageElement): 96273 * page/Console.cpp: 96274 (WebCore::Console::lastWMLErrorMessage): 96275 * page/Console.idl: 96276 96277 2010-07-20 Rafael Antognolli <antognolli (a] profusion.mobi> 96278 96279 Reviewed by Kent Tamura. 96280 96281 [EFL] Use log functions instead of fprintf 96282 https://bugs.webkit.org/show_bug.cgi?id=42576 96283 96284 Use LOG and LOG_ERROR instead of fprintf. 96285 96286 No new tests, no new functionality. 96287 96288 * platform/efl/WidgetEfl.cpp: 96289 (WebCore::Widget::applyFallbackCursor): 96290 96291 2010-07-20 Ilya Tikhonovsky <loislo (a] chromium.org> 96292 96293 Reviewed by Yury Semikhatsky. 96294 96295 WebInspector: the bindings generation helper script can be 96296 simplified a bit. Chromium. 96297 https://bugs.webkit.org/show_bug.cgi?id=42523 96298 96299 * WebCore.gyp/WebCore.gyp: 96300 * WebCore.gyp/scripts/rule_binding.py: 96301 * bindings/scripts/CodeGenerator.pm: 96302 * bindings/scripts/CodeGeneratorCPP.pm: 96303 * bindings/scripts/CodeGeneratorJS.pm: 96304 * bindings/scripts/CodeGeneratorObjC.pm: 96305 * bindings/scripts/CodeGeneratorV8.pm: 96306 * bindings/scripts/generate-bindings.pl: 96307 * inspector/CodeGeneratorInspector.pm: 96308 96309 2010-07-20 Steve Falkenburg <sfalken (a] apple.com> 96310 96311 Re-save vsprops file after no-op edit in Visual Studio 96312 to fix manual edit issues. 96313 96314 * WebCore.vcproj/WebCoreCommon.vsprops: 96315 96316 2010-07-20 Steve Falkenburg <sfalken (a] apple.com> 96317 96318 Re-save vcproj file after no-op edit in Visual Studio 96319 to fix manual edit issues. 96320 96321 * WebCore.vcproj/WebCore.vcproj: 96322 96323 2010-07-20 Adam Barth <abarth (a] webkit.org> 96324 96325 Reviewed by Eric Seidel. 96326 96327 Include attributes when reconstructing elements in HTML5 tree builder 96328 https://bugs.webkit.org/show_bug.cgi?id=42594 96329 96330 Remove FIXME now that we have a test. 96331 96332 * html/HTMLConstructionSite.cpp: 96333 (WebCore::HTMLConstructionSite::createHTMLElementFromElementRecord): 96334 96335 2010-07-20 Sam Weinig <sam (a] webkit.org> 96336 96337 Reviewed by Brady Eidson. 96338 96339 Patch for https://bugs.webkit.org/show_bug.cgi?id=42719 96340 Make Acid2 pass in WebKit2 96341 96342 * WebCore.exp.in: Update exported functions. 96343 96344 2010-07-20 Gavin Peters <gavinp (a] chromium.org> 96345 96346 Reviewed by Adam Barth. 96347 96348 prefetch categorization is exactly wrong 96349 https://bugs.webkit.org/show_bug.cgi?id=42651 96350 96351 While I was in the area, I saw that CachedResource::schedule() was dead, so I have removed it. 96352 96353 Test: fast/dom/HTMLLinkElement/onload-completion-test.html 96354 96355 * loader/CachedCSSStyleSheet.h: 96356 * loader/CachedFont.h: 96357 * loader/CachedImage.h: 96358 * loader/CachedResource.cpp: 96359 * loader/CachedResource.h: 96360 (WebCore::CachedResource::isPrefetch): 96361 * loader/CachedScript.h: 96362 * loader/CachedXBLDocument.h: 96363 * loader/CachedXSLStyleSheet.h: 96364 96365 2010-07-20 James Hawkins <jhawkins (a] chromium.org> 96366 96367 Reviewed by Darin Fisher. 96368 96369 Expose the form submission trigger on the HTMLFormElement object. This 96370 is used to verify that the user submitted the form instead of JS when 96371 saving form data in Chrome AutoFill. 96372 https://bugs.webkit.org/show_bug.cgi?id=42479 96373 96374 No new tests as this is only used by the Chromium WebKit API. 96375 96376 * html/HTMLFormElement.cpp: 96377 (WebCore::HTMLFormElement::HTMLFormElement): 96378 (WebCore::HTMLFormElement::submit): 96379 (WebCore::HTMLFormElement::reset): 96380 (WebCore::HTMLFormElement::submissionTrigger): 96381 * html/HTMLFormElement.h: 96382 96383 2010-07-20 Adam Barth <abarth (a] webkit.org> 96384 96385 Unreviewed. 96386 96387 Fix fast/dom/title-content-write-set.html for HTML5 tree builder 96388 https://bugs.webkit.org/show_bug.cgi?id=42668 96389 96390 Address some late-breaking review comments. 96391 96392 * dom/CharacterData.cpp: 96393 (WebCore::CharacterData::appendDataCommon): 96394 (WebCore::CharacterData::parserAppendData): 96395 (WebCore::CharacterData::appendData): 96396 (WebCore::CharacterData::insertData): 96397 (WebCore::CharacterData::replaceData): 96398 * dom/CharacterData.h: 96399 96400 2010-07-20 Daniel Erat <derat (a] chromium.org> 96401 96402 Reviewed by Ojan Vafai. 96403 96404 Subpixel rendering always disabled for Chromium Linux 96405 https://bugs.webkit.org/show_bug.cgi?id=42220 96406 96407 Explicitly initialize global Chromium Linux isSkiaSubpixelGlyphs 96408 flag to false for clarity. 96409 96410 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 96411 96412 2010-07-20 Adam Barth <abarth (a] webkit.org> 96413 96414 Reviewed by Darin Adler. 96415 96416 Fix fast/dom/title-content-write-set.html for HTML5 tree builder 96417 https://bugs.webkit.org/show_bug.cgi?id=42668 96418 96419 When I split parserAppendData from appendData, it was tempting to cut 96420 the function at dispatchModifiedEvent, but that's not quite right. We 96421 still need to notify the parent that it's children have changed. 96422 96423 * dom/CharacterData.cpp: 96424 (WebCore::CharacterData::appendDataCommon): 96425 (WebCore::CharacterData::parserAppendData): 96426 (WebCore::CharacterData::appendData): 96427 * dom/CharacterData.h: 96428 96429 2010-07-20 Chris Fleizach <cfleizach (a] apple.com> 96430 96431 Reviewed by Beth Dakin. 96432 96433 CrashTracer: [USER] 300 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 573 96434 https://bugs.webkit.org/show_bug.cgi?id=42652 96435 96436 When a table cell accesses its parent table, we should not use getOrCreate, because creating an AXTable inspects its render tree state 96437 which may be out of date, leading to a crash. 96438 By using only get(), it implies that the AXTable must be created before AXTableCells. This should 96439 always be the case when AT clients access a table. 96440 96441 Test: accessibility/updating-attribute-in-table-causes-crash.html 96442 96443 * accessibility/AccessibilityTableCell.cpp: 96444 (WebCore::AccessibilityTableCell::parentTable): 96445 96446 2010-07-20 Abhishek Arya <inferno (a] chromium.org> 96447 96448 Reviewed by David Hyatt. 96449 96450 Check the node is a text node before doing the static cast 96451 for editing commands. 96452 https://bugs.webkit.org/show_bug.cgi?id=42655 96453 96454 Test: editing/execCommand/editing-nontext-node-crash.xhtml 96455 96456 * editing/DeleteSelectionCommand.cpp: 96457 (WebCore::DeleteSelectionCommand::fixupWhitespace): 96458 * editing/InsertLineBreakCommand.cpp: 96459 (WebCore::InsertLineBreakCommand::doApply): 96460 * editing/InsertParagraphSeparatorCommand.cpp: 96461 (WebCore::InsertParagraphSeparatorCommand::doApply): 96462 96463 2010-07-20 Leo Yang <leo.yang (a] torchmobile.com.cn> 96464 96465 Reviewed by David Hyatt. 96466 96467 Don't merge Anonymous block whose first child is inline run-in. 96468 Make run-in recalculate its style after its renderer is destroyed. 96469 https://bugs.webkit.org/show_bug.cgi?id=41375. 96470 96471 Test: fast/runin/crash-when-reparent-sibling.html 96472 96473 * rendering/RenderBlock.cpp: 96474 (WebCore::canMergeContiguousAnonymousBlocks): 96475 * rendering/RenderObjectChildList.cpp: 96476 (WebCore::RenderObjectChildList::destroyLeftoverChildren): 96477 96478 2010-07-20 Steve Block <steveblock (a] google.com> 96479 96480 Unreviewed Qt test fix. 96481 96482 Qt should not use PREEMPT_GEOLOCATION_PERMISSION until Bug 42027 is fixed. 96483 https://bugs.webkit.org/show_bug.cgi?id=42068 96484 96485 No new tests, test fix only. 96486 96487 * WebCore.pro: 96488 96489 2010-07-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 96490 96491 Unreviewed, rolling out r63764. 96492 http://trac.webkit.org/changeset/63764 96493 https://bugs.webkit.org/show_bug.cgi?id=42658 96494 96495 have broken Chromium linux build (Requested by loislo on 96496 #webkit). 96497 96498 * WebCore.gyp/WebCore.gyp: 96499 * WebCore.gyp/scripts/rule_binding.py: 96500 * bindings/scripts/CodeGenerator.pm: 96501 * bindings/scripts/CodeGeneratorCPP.pm: 96502 * bindings/scripts/CodeGeneratorJS.pm: 96503 * bindings/scripts/CodeGeneratorObjC.pm: 96504 * bindings/scripts/CodeGeneratorV8.pm: 96505 * bindings/scripts/generate-bindings.pl: 96506 * inspector/CodeGeneratorInspector.pm: 96507 96508 2010-07-20 Alexey Proskuryakov <ap (a] apple.com> 96509 96510 Reviewed by Brady Eidson. 96511 96512 https://bugs.webkit.org/show_bug.cgi?id=41531 96513 Asynchronous cross origin XMLHttpRequest doesn't expose 401 response when withCredentials is false 96514 96515 This doesn't match Firefox, but it matches our sync case, XHR2 spec and common sense. 96516 96517 Test: http/tests/xmlhttprequest/cross-origin-no-authorization.html (updated results). 96518 96519 * loader/DocumentThreadableLoader.cpp: 96520 (WebCore::DocumentThreadableLoader::didReceiveAuthenticationChallenge): Instead of canceling 96521 the request, continue without credentials - if the platform has a necessary method on 96522 ResourceHandle. 96523 96524 * loader/SubresourceLoader.cpp: 96525 (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge): Don't ask resource loader 96526 client for credentials if subresource loader client already took care of those. 96527 96528 * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::hasAuthenticationChallenge): 96529 * platform/network/ResourceHandle.h: 96530 Added an accessor to check whether ResourceHandle is currently waiting for credentials. 96531 96532 2010-07-20 Leandro Pereira <leandro (a] profusion.mobi> 96533 96534 [EFL] Unreviewed build fix. 96535 96536 Build SVGPathBuilder, SVGPathParser and SVGPathSegListBuilder. 96537 Add websockets include directory. 96538 96539 The EFL port doesn't yet support automated tests. 96540 96541 * CMakeLists.txt: 96542 96543 2010-07-20 Ilya Tikhonovsky <loislo (a] chromium.org> 96544 96545 Reviewed by Yury Semikhatsky. 96546 96547 WebInspector: the bindings generation helper script can be 96548 simplified a bit. Chromium. 96549 https://bugs.webkit.org/show_bug.cgi?id=42523 96550 96551 * WebCore.gyp/WebCore.gyp: 96552 * WebCore.gyp/scripts/rule_binding.py: 96553 * bindings/scripts/CodeGenerator.pm: 96554 * bindings/scripts/CodeGeneratorCPP.pm: 96555 * bindings/scripts/CodeGeneratorJS.pm: 96556 * bindings/scripts/CodeGeneratorObjC.pm: 96557 * bindings/scripts/CodeGeneratorV8.pm: 96558 * bindings/scripts/generate-bindings.pl: 96559 * inspector/CodeGeneratorInspector.pm: 96560 96561 2010-07-20 Joseph Pecoraro <joepeck (a] webkit.org> 96562 96563 Reviewed by Geoffrey Garen. 96564 96565 WebScriptObject Should Allow Safely Checking For Key Existence 96566 https://bugs.webkit.org/show_bug.cgi?id=42613 96567 96568 Test: platform/mac/fast/objc/webScriptObject-hasWebScriptKey.html 96569 96570 Add private API "hasWebScriptKey" to check for key existence in 96571 a WebScriptObject. Like JavaScript's `in` syntax. This is intended 96572 to be made public eventually. 96573 96574 * bindings/objc/WebScriptObject.mm: 96575 (-[WebScriptObject hasWebScriptKey:]): 96576 * bindings/objc/WebScriptObjectPrivate.h: 96577 96578 2010-07-20 Adam Barth <abarth (a] webkit.org> 96579 96580 Reviewed by Eric Seidel. 96581 96582 HTML5 tree builder needs to call dispatchDocumentElementAvailable 96583 https://bugs.webkit.org/show_bug.cgi?id=42654 96584 96585 This patch fixes the follout LayoutTests with --html5-treebuilder: 96586 - userscripts/script-not-run-for-fragments.html 96587 - userscripts/script-run-at-start.html 96588 96589 * html/HTMLConstructionSite.cpp: 96590 (WebCore::HTMLConstructionSite::HTMLConstructionSite): 96591 (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded): 96592 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML): 96593 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 96594 * html/HTMLConstructionSite.h: 96595 * html/HTMLTreeBuilder.cpp: 96596 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 96597 96598 2010-07-20 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 96599 96600 Reviewed by Steve Block. 96601 96602 Need to be able to configure Geolocation policy regarding user permissions 96603 https://bugs.webkit.org/show_bug.cgi?id=42068 96604 96605 Introducing new USE() flag PREEMPT_GEOLOCATION_PREMISSION using which 96606 acquires user permission first before starting location service 96607 96608 This change does not introduce any change in behavior for any platform. So there are no new tests 96609 added. 96610 96611 * WebCore.pro: 96612 * page/Geolocation.cpp: 96613 (WebCore::Geolocation::startRequest): 96614 (WebCore::Geolocation::setIsAllowed): 96615 (WebCore::Geolocation::startUpdating): 96616 * page/Geolocation.h: 96617 96618 2010-07-20 Adam Barth <abarth (a] webkit.org> 96619 96620 Reviewed by Darin Adler. 96621 96622 HTML5 tree builder should restore form state 96623 https://bugs.webkit.org/show_bug.cgi?id=42644 96624 96625 We need to tell self-closing tags that we're done parsing their 96626 children. This patch fixes the following LayoutTests when run with 96627 --html5-treebuilder: 96628 96629 fast/forms/button-state-restore.html 96630 fast/forms/state-restore-to-non-autocomplete-form.html 96631 fast/forms/state-restore-to-non-edited-controls.html 96632 fast/history/saves-state-after-fragment-nav.html 96633 http/tests/navigation/restore-form-state-https.html 96634 96635 * html/HTMLConstructionSite.cpp: 96636 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): 96637 96638 2010-07-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 96639 96640 Unreviewed, rolling out r63750. 96641 http://trac.webkit.org/changeset/63750 96642 https://bugs.webkit.org/show_bug.cgi?id=42648 96643 96644 This revision breaks the windows builds (Requested by 96645 hwennborg on #webkit). 96646 96647 * bindings/generic/RuntimeEnabledFeatures.cpp: 96648 * bindings/generic/RuntimeEnabledFeatures.h: 96649 * page/DOMWindow.cpp: 96650 (WebCore::DOMWindow::addEventListener): 96651 (WebCore::DOMWindow::removeEventListener): 96652 (WebCore::DOMWindow::removeAllEventListeners): 96653 * page/DOMWindow.idl: 96654 * page/Page.cpp: 96655 (WebCore::Page::Page): 96656 96657 2010-07-20 Ilya Tikhonovsky <loislo (a] chromium.org> 96658 96659 Reviewed by Pavel Feldman. 96660 96661 WebInspector: It is possible to show full call stack instead of top frame for Caller 96662 and Call Site properties in Timeline panel. 96663 https://bugs.webkit.org/show_bug.cgi?id=42620 96664 96665 * English.lproj/localizedStrings.js: 96666 * inspector/front-end/TimelinePanel.js: 96667 (WebInspector.TimelinePanel.FormattedRecord): 96668 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): 96669 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): 96670 (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendElementRow): 96671 (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendLinkRow): 96672 (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace): 96673 * inspector/front-end/inspector.css: 96674 (.timeline-details): 96675 (.timeline-function-name): 96676 (.timeline-stacktrace-title): 96677 96678 2010-07-20 Leon Clarke <leonclarke (a] google.com> 96679 96680 Reviewed by Pavel Feldman. 96681 96682 Make things compile again when the inspector is disabled, following 96683 recent inspector improvements. 96684 https://bugs.webkit.org/show_bug.cgi?id=42632 96685 96686 No new tests. Fixing a build break. 96687 96688 96689 * bindings/v8/ScriptCallStack.cpp: 96690 (WebCore::ScriptCallStack::stackTrace): 96691 * inspector/InspectorController.h: 96692 (WebCore::InspectorController::didInsertDOMNode): 96693 (WebCore::InspectorController::didRemoveDOMNode): 96694 (WebCore::InspectorController::didModifyDOMAttr): 96695 * inspector/InspectorDOMAgent.h: 96696 * loader/appcache/ApplicationCacheGroup.cpp: 96697 96698 2010-07-20 Anton Muhin <antonm (a] chromium.org> 96699 96700 Reviewed by Adam Barth. 96701 96702 [v8] Allow handles to be disposed and WebKit objects to be dereferenced even if their map is already destroyed. 96703 https://bugs.webkit.org/show_bug.cgi?id=42634 96704 96705 Currently DOMDataStore could be destroyed even if it has some mappings (it gets destroyed 96706 when its isolated context gets GCed). However in this case, handles allocated for 96707 such objects would never be disposed as we require presence of mapping from wrapped 96708 WebKit object to handle being collected in the map and now map is gone. That leads to 96709 zombie objects in both WebKit (wrapped WebKit object doesn't get dereferenced) and V8 96710 (both handle and V8 wrapper object could not be destroyed). 96711 96712 See http://code.google.com/p/chromium/issues/detail?id=47125 for further discussion. 96713 96714 * bindings/v8/DOMData.h: 96715 (WebCore::DOMData::handleWeakObject): 96716 * bindings/v8/DOMDataStore.cpp: 96717 (WebCore::DOMDataStore::weakNodeCallback): 96718 * bindings/v8/V8DOMMap.h: 96719 (WebCore::WeakReferenceMap::~WeakReferenceMap): 96720 96721 2010-07-20 Hans Wennborg <hans (a] chromium.org> 96722 96723 Reviewed by Steve Block. 96724 96725 Runtime feature switch for device orientation 96726 https://bugs.webkit.org/show_bug.cgi?id=42265 96727 96728 Add a runtime feature switch that decides whether device orientation 96729 events are available or not. Defaults to true. 96730 96731 * bindings/generic/RuntimeEnabledFeatures.cpp: 96732 * bindings/generic/RuntimeEnabledFeatures.h: 96733 (WebCore::RuntimeEnabledFeatures::setDeviceOrientationEnabled): 96734 (WebCore::RuntimeEnabledFeatures::deviceOrientationEnabled): 96735 (WebCore::RuntimeEnabledFeatures::deviceOrientationEventEnabled): 96736 (WebCore::RuntimeEnabledFeatures::ondeviceorientationEnabled): 96737 * page/DOMWindow.cpp: 96738 (WebCore::DOMWindow::addEventListener): 96739 (WebCore::DOMWindow::removeEventListener): 96740 (WebCore::DOMWindow::removeAllEventListeners): 96741 * page/DOMWindow.idl: 96742 * page/Page.cpp: 96743 (WebCore::Page::Page): 96744 96745 2010-07-20 Hayato Ito <hayato (a] chromium.org> 96746 96747 Reviewed by Darin Adler. 96748 96749 Fixed a crash when deeply nested CSS selector is used. 96750 https://bugs.webkit.org/show_bug.cgi?id=41129 96751 96752 This patch deletes CSSSelectors iteratively so that it doesn't cause stack overflow. 96753 96754 Test: fast/css/css-selector-deeply-nested.html 96755 96756 * css/CSSSelector.cpp: 96757 (WebCore::CSSSelectorBag::~CSSSelectorBag): 96758 (WebCore::CSSSelectorBag::isEmpty): 96759 (WebCore::CSSSelectorBag::append): 96760 (WebCore::CSSSelectorBag::takeAny): 96761 (WebCore::CSSSelector::~CSSSelector): 96762 (WebCore::CSSSelector::specificity): 96763 * css/CSSSelector.h: 96764 96765 2010-07-20 Yury Semikhatsky <yurys (a] chromium.org> 96766 96767 Reviewed by Pavel Feldman. 96768 96769 [v8] Web Inspector: inspected page renderer crashes when inspected page has JS syntax error 96770 https://bugs.webkit.org/show_bug.cgi?id=42642 96771 96772 * bindings/v8/V8ConsoleMessage.cpp: 96773 (WebCore::V8ConsoleMessage::handler): 96774 96775 2010-07-20 Sheriff Bot <webkit.review.bot (a] gmail.com> 96776 96777 Unreviewed, rolling out r63742. 96778 http://trac.webkit.org/changeset/63742 96779 https://bugs.webkit.org/show_bug.cgi?id=42641 96780 96781 Broke Leopard Intel build. (Requested by bbandix on #webkit). 96782 96783 * WebCore.pro: 96784 * page/Geolocation.cpp: 96785 (WebCore::Geolocation::startRequest): 96786 (WebCore::Geolocation::setIsAllowed): 96787 (WebCore::Geolocation::startUpdating): 96788 * page/Geolocation.h: 96789 96790 2010-07-20 Adam Roben <aroben (a] apple.com> 96791 96792 Windows build fix 96793 96794 * WebCore.vcproj/WebCore.vcproj: Fixed case of "Name" attribute. 96795 96796 2010-07-20 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 96797 96798 Reviewed by Steve Block. 96799 96800 Need to be able to configure Geolocation policy regarding user permissions 96801 https://bugs.webkit.org/show_bug.cgi?id=42068 96802 96803 Introducing new USE() flag PREEMPT_GEOLOCATION_PREMISSION using which 96804 acquires user permission first before starting location service 96805 96806 This change does not introduce any change in behavior for any platform. So there are no new tests 96807 added. 96808 96809 * WebCore.pro: 96810 * page/Geolocation.cpp: 96811 (WebCore::Geolocation::startRequest): 96812 (WebCore::Geolocation::setIsAllowed): 96813 (WebCore::Geolocation::startUpdating): 96814 * page/Geolocation.h: 96815 96816 2010-07-20 Alexander Pavlov <apavlov (a] chromium.org> 96817 96818 Reviewed by Pavel Feldman. 96819 96820 Inspector: Resources Search Should Search Only Filtered Resources 96821 https://bugs.webkit.org/show_bug.cgi?id=28290 96822 96823 * inspector/front-end/AbstractTimelinePanel.js: 96824 (WebInspector.AbstractTimelinePanel.prototype._updateFilter): 96825 * inspector/front-end/ResourcesPanel.js: 96826 (WebInspector.ResourcesPanel.prototype.get searchableViews): 96827 * inspector/front-end/inspector.js: 96828 (WebInspector.performSearch): 96829 (WebInspector.doPerformSearch): 96830 96831 2010-07-20 Alexander Pavlov <apavlov (a] chromium.org> 96832 96833 Reviewed by Pavel Feldman. 96834 96835 Web Inspector: Incorrect absolute URLs in tooltips of links in the ElementsTreeOutline 96836 https://bugs.webkit.org/show_bug.cgi?id=42626 96837 96838 * inspector/front-end/ElementsTreeOutline.js: 96839 (WebInspector.ElementsTreeElement.prototype._attributeHTML): 96840 96841 2010-07-20 Shinichiro Hamaji <hamaji (a] chromium.org> 96842 96843 Unreviewed comment fix. The comment in IDL should be //, not # . 96844 96845 Code generator: ensure generated constants match their corresponding enums. 96846 https://bugs.webkit.org/show_bug.cgi?id=42250 96847 96848 * dom/OverflowEvent.idl: 96849 96850 2010-07-20 Hans Wennborg <hans (a] chromium.org> 96851 96852 Reviewed by Steve Block. 96853 96854 Add WebCore/bindings/generic/RuntimeEnabledFeatures.cpp to build files 96855 https://bugs.webkit.org/show_bug.cgi?id=42380 96856 96857 RuntimeEnabledFeatures.cpp and .h were moved from bindings/v8 to 96858 bindings/generic a while a go (in r54593), but need to 96859 be added to the build in order to be used. 96860 96861 No new functionality so no new tests. 96862 96863 * Android.mk: 96864 * CMakeLists.txt: 96865 * GNUmakefile.am: 96866 * WebCore.pro: 96867 * WebCore.vcproj/WebCore.vcproj: 96868 * WebCore.xcodeproj/project.pbxproj: 96869 * websockets/WebSocket.cpp: Remove #if USE(V8), as RuntimeEnabledFeatures.cpp is no longer V8-only. 96870 * websockets/WebSocket.h: Ditto. 96871 96872 2010-07-20 Tony Chang <tony (a] chromium.org> 96873 96874 Reviewed by Kent Tamura. 96875 96876 clean up style in ClipboardWin and PasteboardWin 96877 https://bugs.webkit.org/show_bug.cgi?id=42609 96878 96879 No new tests since this is just a style cleanup. 96880 96881 * platform/win/ClipboardUtilitiesWin.cpp: 96882 (WebCore::createGlobalData): 96883 (WebCore::markupToCFHTML): 96884 (WebCore::getURL): 96885 (WebCore::getPlainText): 96886 (WebCore::getTextHTML): 96887 (WebCore::fragmentFromFilenames): 96888 (WebCore::containsFilenames): 96889 (WebCore::fragmentFromCFHTML): 96890 (WebCore::fragmentFromHTML): 96891 * platform/win/ClipboardUtilitiesWin.h: 96892 * platform/win/ClipboardWin.cpp: 96893 (WebCore::pathRemoveBadFSCharacters): 96894 (WebCore::createGlobalHDropContent): 96895 (WebCore::createGlobalUrlFileDescriptor): 96896 (WebCore::writeURL): 96897 (WebCore::ClipboardWin::clearData): 96898 (WebCore::ClipboardWin::clearAllData): 96899 (WebCore::ClipboardWin::getData): 96900 (WebCore::ClipboardWin::types): 96901 (WebCore::ClipboardWin::declareAndWriteDragImage): 96902 (WebCore::ClipboardWin::writeRange): 96903 * platform/win/ClipboardWin.h: 96904 (WebCore::ClipboardWin::create): 96905 (WebCore::ClipboardWin::dataObject): 96906 * platform/win/PasteboardWin.cpp: 96907 (WebCore::PasteboardOwnerWndProc): 96908 (WebCore::Pasteboard::writeSelection): 96909 (WebCore::Pasteboard::writeURL): 96910 (WebCore::Pasteboard::plainText): 96911 (WebCore::Pasteboard::documentFragment): 96912 96913 2010-07-20 Yury Semikhatsky <yurys (a] chromium.org> 96914 96915 Reviewed by Pavel Feldman. 96916 96917 Web Inspector: jump to source is broken for call frames logged by console.trace 96918 https://bugs.webkit.org/show_bug.cgi?id=42619 96919 96920 * inspector/front-end/ConsoleView.js: 96921 (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 96922 * inspector/front-end/treeoutline.js: allow passing HTML element as a title. 96923 (TreeElement.prototype.set title): 96924 (TreeElement.prototype.set shouldRefreshChildren): 96925 (TreeElement.prototype._setListItemNodeContent): 96926 (TreeElement.prototype._attach): 96927 96928 2010-07-20 Tony Chang <tony (a] chromium.org> 96929 96930 Reviewed by Dan Bernstein. 96931 96932 [chromium] crash in Position::getInlineBoxAndOffset 96933 https://bugs.webkit.org/show_bug.cgi?id=42202 96934 96935 Test: editing/selection/firstRect-crash.html 96936 Manual test: win/contextmenu-key2.html 96937 96938 * page/EventHandler.cpp: Code no longer needed 96939 * page/Frame.cpp: 96940 (WebCore::Frame::firstRectForRange): Normalize Positions to VisiblePositions because 96941 Positions may be pointing to nodes that have no renderer. If there's no renderer, 96942 getInlineBoxAndOffset will crash. 96943 96944 2010-07-20 Adam Barth <abarth (a] webkit.org> 96945 96946 Reviewed by Darin Adler. 96947 96948 Foster parenting depends on the current element at insertion time 96949 https://bugs.webkit.org/show_bug.cgi?id=42599 96950 96951 We need to consider the current element at insertion-time when deciding 96952 whether to redirect insertion to the foster parent. Previously, we 96953 were considering the current element *both* at insertion-time and at 96954 the time we created the guard. 96955 96956 * html/HTMLConstructionSite.h: 96957 (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard): 96958 * html/HTMLTreeBuilder.cpp: 96959 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 96960 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 96961 (WebCore::HTMLTreeBuilder::defaultForInTableText): 96962 96963 2010-07-20 Matthew Delaney <mdelaney (a] apple.com> 96964 96965 Reviewed by Kenneth Rohde Christiansen. 96966 96967 Failing 2d.path.stroke.prune.curve philip canvas test 96968 https://bugs.webkit.org/show_bug.cgi?id=42190 96969 96970 * html/canvas/CanvasRenderingContext2D.cpp: 96971 (WebCore::CanvasRenderingContext2D::closePath): Added check to make sure there's a non-trivial path to close. Since there is currently no way to check if the current point is the start point, or similarly if there is only 1 point in the current subpath (since these are both sufficient conditions for a trivial subpath), then checking that the bounding rectangle has both zero width and height proves also to be a sufficient condition for a trivial path. 96972 (WebCore::CanvasRenderingContext2D::quadraticCurveTo): Added in simple bounds as per the spec. 96973 (WebCore::CanvasRenderingContext2D::bezierCurveTo): Added in simple bounds as per the spec. 96974 * platform/graphics/cg/PathCG.cpp: 96975 (WebCore::Path::closeSubpath): Moved the check for an empty path up on level to make it platform independent and remove redundancy. 96976 96977 2010-07-19 Victoria Kirst <vrk (a] google.com> 96978 96979 Reviewed by David Levin. 96980 96981 Added a simple implementation of VideoLayerChromium. Uses the 96982 LayerChromium::updateTextureRect() to send video frames to the 96983 GPU. 96984 https://bugs.webkit.org/show_bug.cgi?id=42234 96985 96986 * WebCore.gypi: Added include for VideoLayerChromium. 96987 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 96988 (WebCore::GraphicsLayerChromium::setContentsToMedia): Implemented 96989 setContentsToMedia, though it does not seem to trigger a repaint 96990 correctly. 96991 * platform/graphics/chromium/GraphicsLayerChromium.h: 96992 * platform/graphics/chromium/VideoLayerChromium.cpp: Added. 96993 (WebCore::VideoLayerChromium::create): 96994 (WebCore::VideoLayerChromium::VideoLayerChromium): 96995 (WebCore::VideoLayerChromium::updateTextureContents): 96996 * platform/graphics/chromium/VideoLayerChromium.h: Added. 96997 (WebCore::VideoLayerChromium::drawsContent): 96998 96999 2010-07-19 Dirk Schulze <krit (a] webkit.org> 97000 97001 Reviewed by Nikolas Zimmermann. 97002 97003 SVG CleanUp of SVGPathData parsing 97004 https://bugs.webkit.org/show_bug.cgi?id=41410 97005 97006 Cleanup the parsing code for SVG Paths. Move classes out of the convoluted SVGParserUtilities.cpp 97007 in their own files. Make use of WebCore specific objects in parsing code like FloatPoint, AffineTransform, 97008 etc. instead of using home-brewn solutions. 97009 The SVGPathParser parses a path data string and delivers the parsed segments and values to the SVGPathConsumer. 97010 SVGPathConsumer is the base class for SVGPathBuilder and SVGPathSegListBuilder, that either build the platform 97011 Path object or a SVGPathSegList out of the segments. 97012 We're now directly parsing floats instead of truncating precision to float afterwards. 97013 97014 SVG Path with an arc with radius of 0 does not render 97015 https://bugs.webkit.org/show_bug.cgi?id=40448 97016 97017 If one of the radii on the elliptic arc are zero, we should draw a line from the starting point to 97018 the end point according to the spec. Fixed this bug with this patch, because an is zero check and 97019 an DRT check was neccessary with the current clean-up. 97020 Extended svg/dom/path-parser.xhml to check the correct behavior. 97021 97022 * Android.mk: 97023 * GNUmakefile.am: 97024 * WebCore.gypi: 97025 * WebCore.pro: 97026 * WebCore.vcproj/WebCore.vcproj: 97027 * WebCore.xcodeproj/project.pbxproj: 97028 * platform/graphics/FloatPoint.h: 97029 (WebCore::FloatPoint::move): Follow WebKit style and use multiple lines for the function. 97030 (WebCore::FloatPoint::scale): Scale FloatPoint. 97031 (WebCore::operator+=): 97032 (WebCore::operator+): Add two FloatPoints and give back the sum as FloatPoint. 97033 * svg/SVGAllInOne.cpp: Added new created files. 97034 * svg/SVGAnimateElement.cpp: 97035 (WebCore::SVGAnimateElement::calculateFromAndToValues): Use new PathParser to create a PathSegList. 97036 * svg/SVGAnimateMotionElement.cpp: 97037 (WebCore::SVGAnimateMotionElement::parseMappedAttribute): Use new PathParser to create a Path. 97038 * svg/SVGGlyphElement.cpp: 97039 (WebCore::parsePathData): Use new PathParser to create a Path. 97040 * svg/SVGParserUtilities.cpp: 97041 (WebCore::parseArcFlag): Removed parseArcFlag(double&), we parse in float now. 97042 * svg/SVGParserUtilities.h: Removed path parsing code and a lot of unneccessary includes. 97043 * svg/SVGPathBuilder.cpp: Added. 97044 (WebCore::SVGPathBuilder::SVGPathBuilder): 97045 (WebCore::SVGPathBuilder::build): Builds a normalized Path. 97046 (WebCore::SVGPathBuilder::moveTo): 97047 (WebCore::SVGPathBuilder::lineTo): 97048 (WebCore::SVGPathBuilder::curveToCubic): 97049 (WebCore::SVGPathBuilder::closePath): 97050 * svg/SVGPathBuilder.h: Added. We just create normalized Paths, so this functions should never be reached. 97051 (WebCore::SVGPathBuilder::lineToHorizontal): 97052 (WebCore::SVGPathBuilder::lineToVertical): 97053 (WebCore::SVGPathBuilder::curveToCubicSmooth): 97054 (WebCore::SVGPathBuilder::curveToQuadratic): 97055 (WebCore::SVGPathBuilder::curveToQuadraticSmooth): 97056 (WebCore::SVGPathBuilder::arcTo): 97057 * svg/SVGPathConsumer.h: Added. Base class of SVGPathBuilder and SVGPathSegListBuilder. 97058 (WebCore::): 97059 (WebCore::SVGPathConsumer::SVGPathConsumer): 97060 (WebCore::SVGPathConsumer::~SVGPathConsumer): 97061 * svg/SVGPathElement.cpp: 97062 (WebCore::SVGPathElement::parseMappedAttribute): Use new PathParser to create a PathSegList. 97063 * svg/SVGPathParser.cpp: Added. 97064 (WebCore::SVGPathParser::SVGPathParser): 97065 (WebCore::SVGPathParser::~SVGPathParser): 97066 (WebCore::SVGPathParser::parseClosePathSegment): 97067 (WebCore::SVGPathParser::parseMoveToSegment): 97068 (WebCore::SVGPathParser::parseLineToSegment): 97069 (WebCore::SVGPathParser::parseLineToHorizontalSegment): 97070 (WebCore::SVGPathParser::parseLineToVerticalSegment): 97071 (WebCore::SVGPathParser::parseCurveToCubicSegment): 97072 (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment): 97073 (WebCore::SVGPathParser::parseCurveToQuadraticSegment): 97074 (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment): 97075 (WebCore::SVGPathParser::parseArcToSegment): 97076 (WebCore::SVGPathParser::parsePathDataString): 97077 (WebCore::SVGPathParser::decomposeArcToCubic): Normalizes an arc to multiple cubic curves. 97078 * svg/SVGPathParser.h: Added. 97079 * svg/SVGPathSegListBuilder.cpp: Added. 97080 (WebCore::SVGPathSegListBuilder::SVGPathSegListBuilder): 97081 (WebCore::SVGPathSegListBuilder::build): 97082 (WebCore::SVGPathSegListBuilder::moveTo): 97083 (WebCore::SVGPathSegListBuilder::lineTo): 97084 (WebCore::SVGPathSegListBuilder::lineToHorizontal): 97085 (WebCore::SVGPathSegListBuilder::lineToVertical): 97086 (WebCore::SVGPathSegListBuilder::curveToCubic): 97087 (WebCore::SVGPathSegListBuilder::curveToCubicSmooth): 97088 (WebCore::SVGPathSegListBuilder::curveToQuadratic): 97089 (WebCore::SVGPathSegListBuilder::curveToQuadraticSmooth): 97090 (WebCore::SVGPathSegListBuilder::arcTo): 97091 (WebCore::SVGPathSegListBuilder::closePath): 97092 * svg/SVGPathSegListBuilder.h: Added. 97093 97094 2010-07-15 Yuzo Fujishima <yuzo (a] google.com> 97095 97096 Reviewed by Dan Bernstein. 97097 97098 Fix for Bug 42342 - Font download error for an @font-face rule invalidates other @font-face rules for the same font-family 97099 https://bugs.webkit.org/show_bug.cgi?id=42342 97100 97101 Test: fast/css/font-face-download-error.html 97102 97103 * css/CSSSegmentedFontFace.cpp: 97104 (WebCore::CSSSegmentedFontFace::isValid): Valid if at least one font 97105 face is valid. 97106 (WebCore::CSSSegmentedFontFace::getFontData): Check validity for each 97107 font face. 97108 * css/CSSSegmentedFontFace.h: Make isValid private. 97109 97110 2010-07-19 Kent Tamura <tkent (a] chromium.org> 97111 97112 Reviewed by Shinichiro Hamaji. 97113 97114 [Chromium] Fix style errors of RenderThemeChromiumWin.cpp 97115 https://bugs.webkit.org/show_bug.cgi?id=42568 97116 97117 * rendering/RenderThemeChromiumWin.cpp: 97118 (WebCore::): 97119 (WebCore::getNonClientMetrics): 97120 (WebCore::systemFontSize): 97121 (WebCore::pointsToPixels): 97122 (WebCore::querySystemBlinkInterval): 97123 (WebCore::RenderThemeChromiumWin::platformActiveSelectionBackgroundColor): 97124 (WebCore::RenderThemeChromiumWin::platformInactiveSelectionBackgroundColor): 97125 (WebCore::RenderThemeChromiumWin::platformActiveSelectionForegroundColor): 97126 (WebCore::RenderThemeChromiumWin::platformActiveTextSearchHighlightColor): 97127 (WebCore::RenderThemeChromiumWin::paintButton): 97128 (WebCore::RenderThemeChromiumWin::paintSliderTrack): 97129 (WebCore::RenderThemeChromiumWin::paintMenuList): 97130 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal): 97131 (WebCore::RenderThemeChromiumWin::paintInnerSpinButton): 97132 97133 2010-07-19 Steve Falkenburg <sfalken (a] apple.com> 97134 97135 (Hopefully the last) Windows build fix. 97136 97137 Version of CoreServices.h in WebKit Support Libraries uses 97138 pragma once, unlike the version I have locally. Switch based 97139 on __COLORSYNCDEPRECATED__ instead. 97140 97141 * WebCorePrefix.h: 97142 97143 2010-07-19 Steve Falkenburg <sfalken (a] apple.com> 97144 97145 Windows build fix. 97146 97147 * WebCorePrefix.h: 97148 97149 2010-07-19 Steve Falkenburg <sfalken (a] apple.com> 97150 97151 Build fix. 97152 97153 * WebCorePrefix.h: 97154 97155 2010-07-19 Steve Falkenburg <sfalken (a] apple.com> 97156 97157 Build fix. 97158 97159 * WebCorePrefix.h: 97160 97161 2010-07-19 Steve Falkenburg <sfalken (a] apple.com> 97162 97163 Windows Build fixes for new ColorSync API. 97164 We support both new and old APIs, since the newer headers aren't in the tree yet. 97165 97166 * WebCorePrefix.h: Removed include of CoreServices.h. Included via ColorSyncPriv.h instead, since header may not be present. 97167 * platform/graphics/cg/ColorCG.cpp: 97168 (WebCore::createCGColor): Conditionally use new ColorSync API. 97169 * platform/graphics/opentype/OpenTypeUtilities.cpp: Define Fixed if CoreServices.h doesn't. 97170 * platform/graphics/win/GraphicsLayerCACF.cpp: 97171 (WebCore::GraphicsLayerCACF::updateLayerDrawsContent): Use 0 instead of nil, since nil is no longer present via CoreServices.h. 97172 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Include AssertMacros.h. 97173 * platform/network/cf/ResourceErrorCF.cpp: 97174 (WebCore::ResourceError::operator CFErrorRef): Use 0 instead of nil, since nil is no longer present via CoreServices.h. 97175 97176 2010-07-19 Tony Gentilcore <tonyg (a] chromium.org> 97177 97178 Reviewed by Dimitri Glazkov. 97179 97180 Only set unloadEventEnd when the unload event is actually fired 97181 https://bugs.webkit.org/show_bug.cgi?id=42607 97182 97183 r63689 introduced this ASSERT and it began failing on Qt and Mac debug. 97184 For some reason, it did not fail on Windows (which is where I was 97185 testing). The ASSERT was disabled in r63699. 97186 97187 Test: page-cache related layout tests don't crash in debug mode on Mac. 97188 97189 * loader/FrameLoader.cpp: 97190 (WebCore::FrameLoader::stopLoading): 97191 97192 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97193 97194 Reviewed by Kenneth Rohde Christiansen. 97195 97196 [Qt] Don't unnecessarily copy QPainterPath in fillPath() and strokePath() 97197 https://bugs.webkit.org/show_bug.cgi?id=42513 97198 97199 Avoid making unnecessary deep-copies of QPainterPaths that will 97200 be discarded after use. 97201 97202 * platform/graphics/qt/GraphicsContextQt.cpp: 97203 (WebCore::GraphicsContext::fillPath): 97204 (WebCore::GraphicsContext::strokePath): 97205 97206 2010-07-19 Kenneth Russell <kbr (a] google.com> 97207 97208 Reviewed by Nate Chapin. 97209 97210 WebGL rendering results must be made available to Canvas.toDataURL and 2D drawImage 97211 https://bugs.webkit.org/show_bug.cgi?id=34719 97212 97213 Fixed compiler warning introduced by original patch. No new tests; 97214 covered by existing tests. 97215 97216 * platform/graphics/mac/GraphicsContext3DMac.mm: 97217 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): 97218 97219 2010-07-19 Anders Carlsson <andersca (a] apple.com> 97220 97221 Reviewed by Darin Adler, Adam Roben, Dan Bernstein and Sam Weinig. 97222 97223 Handle NP_ASFILE and NP_ASFILEONLY transfer modes 97224 https://bugs.webkit.org/show_bug.cgi?id=42587 97225 97226 * WebCore.exp.in: 97227 Export functions from FileSystem.h 97228 97229 * platform/mac/FileSystemMac.mm: 97230 (WebCore::openTemporaryFile): 97231 Try to create a temporary file using mkstemp. 97232 97233 2010-07-19 Anders Carlsson <andersca (a] apple.com> 97234 97235 Reviewed by Sam Weinig. 97236 97237 Implement NPN_PostURLNotify 97238 https://bugs.webkit.org/show_bug.cgi?id=42602 97239 97240 Export symbols needed by WebKit2. 97241 97242 * WebCore.exp.in: 97243 97244 2010-07-19 Tony Gentilcore <tonyg (a] chromium.org> 97245 97246 Unreviewed build fix. 97247 97248 Remove overzealous ASSERT from r63689 97249 https://bugs.webkit.org/show_bug.cgi?id=42606 97250 97251 No new tests because no new functionality. 97252 97253 * loader/FrameLoader.cpp: 97254 (WebCore::FrameLoader::stopLoading): 97255 97256 2010-07-19 Joseph Pecoraro <joepeck (a] webkit.org> 97257 97258 Reviewed by Mark Rowe. 97259 97260 Web Inspector: Do Not Copy *.re2js Inspector Resources in Xcode Build Phase 97261 https://bugs.webkit.org/show_bug.cgi?id=42601 97262 97263 Remove *.re2js files after copying them over in the Build Phase. We do 97264 the same to remove the WebKit.qrc file. 97265 97266 * WebCore.xcodeproj/project.pbxproj: 97267 97268 2010-07-17 Tony Gentilcore <tonyg (a] chromium.org> 97269 97270 Reviewed by Darin Fisher. 97271 97272 [Web Timing] Move times to DocumentLoader and fix bugs in mark points 97273 https://bugs.webkit.org/show_bug.cgi?id=42512 97274 97275 Test: fast/dom/webtiming-navigate-within-document.html 97276 97277 * loader/DocumentLoader.h: Move the FrameLoadTimeline (now call DocumentLoadTiming) to the DocumentLoader. 97278 (WebCore::DocumentLoader::documentLoadTiming): 97279 * loader/FrameLoader.cpp: 97280 (WebCore::FrameLoader::stopLoading): Set unloadEventEnd on the provisional DocumentLoader. Add some ASSERTs to tighten things up. 97281 (WebCore::FrameLoader::loadWithDocumentLoader): This was not the right place to set navigationStart. Setting it here caused it to be set before the unload form prompt and caused it to be reset when navigating within the document. 97282 (WebCore::FrameLoader::finishedLoading): Set responseEnd on the active DocumentLoader. 97283 (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): This is the right place for navigationStart as defined by the spec. 97284 * loader/FrameLoader.h: Get rid of FrameLoadTimeline. 97285 * loader/FrameLoaderTypes.h: Rename FrameLoadTimeline to DocumentLoadTiming. It is even more apparent this doesn't belong in this file now. I am planning to submit a patch moving it out ASAP, but didn't want to muddy this patch with all those build files. 97286 (WebCore::DocumentLoadTiming::DocumentLoadTiming): 97287 * loader/MainResourceLoader.cpp: 97288 (WebCore::MainResourceLoader::willSendRequest): Move fetchStart out of this method to load(), and rewrite setting of redirectStart, redirectEnd, and redirectCount to be more readable. 97289 (WebCore::MainResourceLoader::load): Set fetchStart slightly earlier here and tighten it up with some ASSERTs. 97290 * page/DOMWindow.cpp: 97291 (WebCore::DOMWindow::dispatchLoadEvent): Set loadEventStart and loadEventEnd on the DocumentLoader. 97292 * page/Navigation.cpp: 97293 (WebCore::Navigation::redirectCount): Retrieve redirectCount from the DocumentLoader. 97294 * page/Timing.cpp: 97295 (WebCore::getPossiblySkewedTimeInKnownRange): The skew problem turned out to be due to the fact that chromium's currentTime() implementation only syncs to the system time every 60 seconds. So absolute times across threads may be skewed slightly. I resolved this temporarily by clipping the time from another thread into a known bound. A better long term solution is probably to add a currentTimeFromSystemTime() method and call that for web timing marks. 97296 (WebCore::Timing::navigationStart): 97297 (WebCore::Timing::unloadEventEnd): 97298 (WebCore::Timing::redirectStart): 97299 (WebCore::Timing::redirectEnd): 97300 (WebCore::Timing::fetchStart): 97301 (WebCore::Timing::domainLookupStart): 97302 (WebCore::Timing::domainLookupEnd): 97303 (WebCore::Timing::connectStart): 97304 (WebCore::Timing::connectEnd): 97305 (WebCore::Timing::requestStart): 97306 (WebCore::Timing::requestEnd): 97307 (WebCore::Timing::responseStart): 97308 (WebCore::Timing::responseEnd): 97309 (WebCore::Timing::loadEventStart): 97310 (WebCore::Timing::loadEventEnd): 97311 (WebCore::Timing::documentLoader): 97312 (WebCore::Timing::documentLoadTiming): 97313 (WebCore::Timing::resourceLoadTiming): 97314 (WebCore::Timing::resourceLoadTimeRelativeToAbsolute): Ensure requestTime is in the range of fetchStart to responseEnd. 97315 * page/Timing.h: 97316 97317 2010-07-19 Chris Marrin <cmarrin (a] apple.com> 97318 97319 Reviewed by Darin Adler. 97320 97321 https://bugs.webkit.org/show_bug.cgi?id=42118 97322 Disable WebGL on Leopard for now. 97323 97324 LayoutTests fail on some graphics hardware on Leopard because one of the features we use, 97325 GL_ARB_framebuffer_object, is not universally available in Leopard like it is in 97326 SnowLeopard. This will allow LayoutTests to pass on Leopard until we add logic to use a 97327 software OpenGL driver on machines without this support. 97328 97329 * Configurations/FeatureDefines.xcconfig: 97330 97331 2010-07-19 Eric Carlson <eric.carlson (a] apple.com> 97332 97333 Reviewed by Sam Weinig. 97334 97335 Remove HTML5 media element 'load' event 97336 https://bugs.webkit.org/show_bug.cgi?id=30464 97337 <rdar://problem/5650561> 97338 97339 * html/HTMLMediaElement.cpp: 97340 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_completelyLoaded. 97341 (WebCore::HTMLMediaElement::parseMappedAttribute): Don't deal with 'load' event. 97342 (WebCore::HTMLMediaElement::prepareForLoad): Set m_completelyLoaded to false. 97343 (WebCore::HTMLMediaElement::setNetworkState): Don't post 'load' event. 97344 (WebCore::HTMLMediaElement::progressEventTimerFired): Bail if m_networkState != NETWORK_LOADING. 97345 (WebCore::HTMLMediaElement::userCancelledLoad): No more NETWORK_LOADED state. 97346 * html/HTMLMediaElement.h: 97347 (WebCore::HTMLMediaElement::): 97348 * html/HTMLMediaElement.idl: Remove NETWORK_LOADING. 97349 97350 2010-07-19 Alexey Proskuryakov <ap (a] apple.com> 97351 97352 Reviewed by Darin Adler. 97353 97354 https://bugs.webkit.org/show_bug.cgi?id=40996 97355 Progress event should not be fired during synchronous XMLHttpRequest 97356 97357 https://bugs.webkit.org/show_bug.cgi?id=17502 97358 Assertion failure when trying to restart a sync XMLHttpRequest as an async one from onreadystatechange 97359 97360 Tests: http/tests/xmlhttprequest/xmlhttprequest-sync-no-progress-events.html 97361 http/tests/xmlhttprequest/xmlhttprequest-sync-vs-async-assertion-failure.html 97362 97363 * xml/XMLHttpRequest.cpp: 97364 (WebCore::XMLHttpRequest::callReadyStateChangeListener): We now only dispatch readystatechange 97365 event for synchronous requests in states UNSENT, OPENED and DONE. I'm not sure what exactly 97366 the spec draft says about readystatechange for sync requests, but this seems to be the most 97367 logical and backwards compatible behavior. 97368 (WebCore::XMLHttpRequest::didReceiveData): Don't dispatch progress events for sync requests. 97369 Note that we already don't dispatch upload progress events for those. 97370 97371 2010-07-19 Dan Bernstein <mitz (a] apple.com> 97372 97373 Reviewed by Simon Fraser. 97374 97375 <rdar://problem/7232109> Unpainted white area appears at the edge of the page when body has bg color 97376 https://bugs.webkit.org/show_bug.cgi?id=34913 97377 97378 Tests: fast/repaint/view-background-from-body-1.html 97379 fast/repaint/view-background-from-body-2.html 97380 97381 * rendering/RenderBox.cpp: 97382 (WebCore::RenderBox::styleWillChange): If this is the body renderer and its current style is 97383 null, repaint the view, similarly to how the view is repainted for any repaint-or-higher 97384 style changes. 97385 * rendering/RenderObjectChildList.cpp: 97386 (WebCore::RenderObjectChildList::removeChildNode): If the removed child is the body renderer, 97387 repaint the view, in case the bodys background was propagated to the view. 97388 97389 2010-07-19 Adam Roben <aroben (a] apple.com> 97390 97391 Fix an assertion when a plugin returns -1 from NPP_Write 97392 97393 We were forgetting to call setDefersLoading(false) before destroying 97394 the PluginStream. In the process of destroying the stream, someone 97395 would call setDefersLoading(true), and we would assert because we were 97396 already deferring loads. 97397 97398 Fixes <http://webkit.org/b/42563> Assertion failure in 97399 ResourceHandle::setDefersLoading when running 97400 plugins/return-negative-one-from-write.html on Windows 97401 97402 Reviewed by Anders Carlsson. 97403 97404 * plugins/PluginStream.cpp: 97405 (WebCore::PluginStream::deliverData): Call setDefersLoading(false) 97406 before destroying the stream, to match the setDefersLoading(true) call 97407 earlier in this function. (We already call setDefersLoading(false) in 97408 the non-error case later on.) 97409 97410 2010-07-19 Rafael Antognolli <antognolli (a] profusion.mobi> 97411 97412 Reviewed by Antonio Gomes. 97413 97414 [EFL] Fix some EFL theme issues 97415 https://bugs.webkit.org/show_bug.cgi?id=42569 97416 97417 Keep a pointer to theme filename and check for it correctly. 97418 Reduce the scope of some variables. 97419 Don't test for platformWidget() since we are not using it. 97420 97421 No new tests, no new functionality. 97422 97423 * platform/efl/WidgetEfl.cpp: 97424 (WebCore::Widget::applyCursor): 97425 (WebCore::Widget::setCursor): 97426 97427 2010-07-19 Rafael Antognolli <antognolli (a] profusion.mobi> 97428 97429 Reviewed by Antonio Gomes. 97430 97431 [EFL] Add ifdef to compile code just on presence of Ecore_X 97432 https://bugs.webkit.org/show_bug.cgi?id=42567 97433 97434 No new tests since there's no new functionality. 97435 97436 * platform/efl/WidgetEfl.cpp: 97437 (WebCore::Widget::setEvasObject): 97438 Add #ifdef HAVE_ECORE_X to it. 97439 97440 2010-07-19 Yury Semikhatsky <yurys (a] chromium.org> 97441 97442 Reviewed by Pavel Feldman. 97443 97444 Web Inspector: add/removeStyleClass shouldn't increase number of spaces between class names. 97445 https://bugs.webkit.org/show_bug.cgi?id=42485 97446 97447 * inspector/front-end/utilities.js: 97448 (Element.prototype.removeStyleClass): 97449 97450 2010-07-19 Yury Semikhatsky <yurys (a] chromium.org> 97451 97452 Reviewed by Pavel Feldman. 97453 97454 Web Inspector: show stack trace for uncaught exceptions when Web Inspector is open. 97455 https://bugs.webkit.org/show_bug.cgi?id=42560 97456 97457 * bindings/js/ScriptController.cpp: 97458 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 97459 * bindings/js/ScriptController.h: 97460 * bindings/v8/ScriptController.cpp: 97461 (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions): 97462 * bindings/v8/ScriptController.h: 97463 * bindings/v8/V8ConsoleMessage.cpp: 97464 (WebCore::V8ConsoleMessage::dispatchNow): 97465 (WebCore::V8ConsoleMessage::handler): 97466 * bindings/v8/V8ConsoleMessage.h: 97467 * inspector/ConsoleMessage.cpp: 97468 (WebCore::ConsoleMessage::ConsoleMessage): 97469 * inspector/ConsoleMessage.h: 97470 * inspector/InspectorController.cpp: 97471 (WebCore::InspectorController::addMessageToConsole): 97472 (WebCore::InspectorController::startGroup): 97473 (WebCore::InspectorController::connectFrontend): 97474 (WebCore::InspectorController::disconnectFrontend): 97475 * inspector/InspectorController.h: 97476 * inspector/front-end/ConsoleView.js: 97477 (WebInspector.ConsoleMessage.prototype._formatMessage): 97478 (WebInspector.ConsoleMessage.prototype.toMessageElement): 97479 (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement): 97480 (WebInspector.ConsoleMessage.prototype._addMessageHeader): 97481 (WebInspector.ConsoleMessage.prototype.toString): 97482 * inspector/front-end/inspector.css: 97483 (.console-message.repeated-message > ol.stack-trace): 97484 (.section .properties ol, .event-properties ol, .stack-trace ol, ol.stack-trace): 97485 (ol.stack-trace): 97486 (.section .properties ol.expanded, .event-properties ol.expanded, .stack-trace ol, ol.stack-trace): 97487 * page/Console.cpp: 97488 (WebCore::Console::addMessage): 97489 * page/Console.h: 97490 (WebCore::): 97491 97492 2010-07-19 Robin Burchell <robin.burchell (a] collabora.co.uk> 97493 97494 Reviewed by Antonio Gomes 97495 97496 [Qt] Use memcpy() instead of qMemCopy() 97497 This is supposed to be more efficient, as the compiler is able to 97498 optimise more. 97499 97500 Additionally, qMemCopy() is only strictly supposed to be used in 97501 headers (see Qt's src/corelib/qglobal.h for reference) 97502 See: https://bugs.webkit.org/show_bug.cgi?id=42392 97503 97504 * bridge/qt/qt_runtime.cpp: 97505 (JSC::Bindings::convertQVariantToValue): 97506 97507 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 97508 97509 Reviewed by Kenneth Rohde Christiansen. 97510 97511 Canvas: Rename operator==(CanvasStyle,CanvasStyle) since it isn't a proper equality check 97512 https://bugs.webkit.org/show_bug.cgi?id=42284 97513 97514 New name is isEquivalentColor(CanvasStyle). 97515 97516 * html/canvas/CanvasRenderingContext2D.cpp: 97517 (WebCore::CanvasRenderingContext2D::setStrokeStyle): 97518 (WebCore::CanvasRenderingContext2D::setFillStyle): 97519 * html/canvas/CanvasStyle.cpp: 97520 (WebCore::CanvasStyle::isEquivalentColor): 97521 * html/canvas/CanvasStyle.h: 97522 97523 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97524 97525 Reviewed by Kenneth Rohde Christiansen. 97526 97527 [Qt] Canvas: Wrong internal positioning of drawImage() shadows 97528 https://bugs.webkit.org/show_bug.cgi?id=42510 97529 97530 * platform/graphics/qt/ImageQt.cpp: 97531 (WebCore::BitmapImage::draw): 97532 * platform/graphics/qt/StillImageQt.cpp: 97533 (WebCore::StillImage::draw): 97534 97535 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97536 97537 Reviewed by Kenneth Rohde Christiansen. 97538 97539 [Qt] Render shadow when drawing one canvas onto another 97540 https://bugs.webkit.org/show_bug.cgi?id=42508 97541 97542 * platform/graphics/qt/StillImageQt.cpp: 97543 (WebCore::StillImage::draw): 97544 97545 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97546 97547 Reviewed by Kenneth Rohde Christiansen. 97548 97549 [Qt] Some composition modes fail when color has alpha zero 97550 https://bugs.webkit.org/show_bug.cgi?id=36973 97551 97552 Remove erroneous optimization that ignored painting calls when 97553 the stroke/fill color had an alpha value of zero. 97554 97555 * platform/graphics/qt/GraphicsContextQt.cpp: 97556 (WebCore::GraphicsContext::drawLine): 97557 (WebCore::GraphicsContext::strokeArc): 97558 (WebCore::GraphicsContext::fillPath): 97559 (WebCore::GraphicsContext::strokePath): 97560 (WebCore::GraphicsContext::fillRect): 97561 (WebCore::GraphicsContext::fillRoundedRect): 97562 97563 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97564 97565 Reviewed by Kenneth Rohde Christiansen. 97566 97567 CSS3 background: Number of layers should be determined by background-image element count 97568 https://bugs.webkit.org/show_bug.cgi?id=41201 97569 97570 Manual test: css3-background-layer-count.html 97571 97572 Spec link: 97573 http://www.w3.org/TR/css3-background/#layering 97574 97575 * manual-tests/css3-background-layer-count.html: Added. 97576 * rendering/style/FillLayer.cpp: 97577 (WebCore::FillLayer::fillUnsetProperties): Don't repeat 97578 image properties, they determine the total number of layers. 97579 (WebCore::FillLayer::cullEmptyLayers): Change culling logic 97580 to discard all layers after the first one without an image set. 97581 * rendering/style/RenderStyle.h: 97582 (WebCore::InheritedFlags::adjustBackgroundLayers): Call 97583 fillUnsetProperties() before cullEmptyLayers() 97584 (WebCore::InheritedFlags::adjustMaskLayers): Ditto. 97585 97586 2010-07-19 Andreas Kling <andreas.kling (a] nokia.com> 97587 97588 Reviewed by Kenneth Rohde Christiansen. 97589 97590 [Qt] Avoid QImage::pixel() in getImageData() 97591 https://bugs.webkit.org/show_bug.cgi?id=42463 97592 97593 * platform/graphics/qt/ImageBufferQt.cpp: 97594 (WebCore::getImageData): Use QImage::scanLine() instead 97595 of fetching data pixel-by-pixel. 97596 97597 2010-07-19 Yury Semikhatsky <yurys (a] chromium.org> 97598 97599 Reviewed by Pavel Feldman. 97600 97601 Web Inspector: hide "toggle debugger" button when debugger is always enabled 97602 https://bugs.webkit.org/show_bug.cgi?id=42558 97603 97604 * inspector/front-end/ScriptsPanel.js: 97605 (WebInspector.ScriptsPanel): 97606 97607 2010-07-19 Hans Wennborg <hans (a] chromium.org> 97608 97609 Reviewed by Steve Block. 97610 97611 Explicitly declare DeviceOrientationEvent destructor and define it in the .cpp file 97612 https://bugs.webkit.org/show_bug.cgi?id=42466 97613 97614 (Original problem at https://bugs.webkit.org/show_bug.cgi?id=42447) 97615 97616 No new functionality so no new tests. 97617 97618 * dom/DeviceOrientationEvent.cpp: 97619 (WebCore::DeviceOrientationEvent::~DeviceOrientationEvent): 97620 Move here to avoid needing to have the full declaration of 97621 DeviceOrientation in DeviceOrientationEvent.h. 97622 * dom/DeviceOrientationEvent.h: 97623 97624 2010-07-18 Anders Carlsson <andersca (a] apple.com> 97625 97626 Fix Build. 97627 97628 * rendering/RenderThemeMac.mm: 97629 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): 97630 97631 2010-07-18 Anders Carlsson <andersca (a] apple.com> 97632 97633 Reviewed by Dan Bernstein. 97634 97635 Always set the current NSGraphicsContext before calling drawWithFrame 97636 https://bugs.webkit.org/show_bug.cgi?id=42542 97637 97638 * rendering/RenderThemeMac.mm: 97639 (WebCore::RenderThemeMac::paintMeter): 97640 (WebCore::RenderThemeMac::paintSearchField): 97641 (WebCore::RenderThemeMac::paintSearchFieldCancelButton): 97642 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): 97643 (WebCore::RenderThemeMac::paintSearchFieldResultsButton): 97644 97645 2010-07-18 Anders Carlsson <andersca (a] apple.com> 97646 97647 Reviewed by Sam Weinig. 97648 97649 Move PluginWidget to WebKit 97650 https://bugs.webkit.org/show_bug.cgi?id=42530 97651 97652 Rename the PluginWidget class to PluginViewBase and make it an abstract base class. 97653 97654 This is a stopgap measure until we have a single PluginView class that we can use everywhere. 97655 97656 * WebCore.exp.in: 97657 Remove PluginWidget symbols. 97658 97659 * WebCore.xcodeproj/project.pbxproj: 97660 Update. 97661 97662 * platform/Widget.h: 97663 (WebCore::Widget::isPluginViewBase): 97664 Return false. 97665 97666 * plugins/PluginViewBase.h: Added. 97667 (WebCore::PluginViewBase::platformLayer): 97668 Always return 0 here now. 97669 97670 (WebCore::PluginViewBase::isPluginViewBase): 97671 Return true. 97672 97673 * plugins/PluginWidget.h: Removed. 97674 * plugins/mac/PluginWidgetMac.mm: Removed. 97675 * rendering/RenderEmbeddedObject.cpp: 97676 (WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing): 97677 Cast to PluginWidgetBase instead. 97678 97679 * rendering/RenderLayerBacking.cpp: 97680 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): 97681 Cast to PluginWidgetBase instead. 97682 97683 2010-07-18 Dean Jackson <dino (a] apple.com> 97684 97685 Unreviewed. 97686 97687 Remove the unwanted extra line that Xcode 97688 added in my last commit. 97689 97690 * WebCore.xcodeproj/project.pbxproj: 97691 97692 2010-07-18 Dean Jackson <dino (a] apple.com> 97693 97694 Reviewed by Simon Fraser. 97695 97696 https://bugs.webkit.org/show_bug.cgi?id=41259 97697 Interacting with a <select> element within a transformed and clipped 97698 container scrolls the container 97699 97700 The Node::getRect and ContainerNode::getRect functions were not 97701 transform-aware. This fixes both, and has a test to make sure 97702 we're not breaking any existing scrollToView code. This means 97703 that a <select> popup will appear in the correct place if it 97704 is within a transformed and scrolled container. 97705 97706 Test: fast/transforms/scrollIntoView-transformed.html 97707 97708 * dom/ContainerNode.cpp: 97709 (WebCore::ContainerNode::getUpperLeftCorner): 97710 (WebCore::ContainerNode::getLowerRightCorner): 97711 - make sure we call localToAbsolute in the right order 97712 (after we've done a local move) and pass in the flags to 97713 indicate it should look for transforms. 97714 * dom/Node.cpp: 97715 (WebCore::Node::getRect): 97716 - make sure localToAbsolute gets told to look for transforms. 97717 97718 2010-07-18 Anders Carlsson <andersca (a] apple.com> 97719 97720 Reviewed by Sam Weinig. 97721 97722 Add NPJSObjectMap class 97723 https://bugs.webkit.org/show_bug.cgi?id=42524 97724 97725 Export ScriptController functions. 97726 97727 * WebCore.exp.in: 97728 97729 2010-07-18 Anders Carlsson <andersca (a] apple.com> 97730 97731 Reviewed by Dan Bernstein. 97732 97733 Implement some NPRuntime related NPN_ functions 97734 https://bugs.webkit.org/show_bug.cgi?id=42518 97735 97736 * WebCore.exp.in: 97737 Export IdentifierRep functions. 97738 97739 2010-07-17 TJ Lee <tjlee0909 (a] gmail.com> 97740 97741 Reviewed by Timothy Hatcher. 97742 97743 HTMLLinkElement ignores dnsPrefetchingEnabled setting 97744 https://bugs.webkit.org/show_bug.cgi?id=42500 97745 97746 Changed the HTML Link tag to check that the browser 97747 has DNS-prefetching enabled before calling ResourceHandle::prepareForURL. 97748 97749 There are no test cases for this patch because it was unclear how to test 97750 this using a layout test. A possible test case would be to 97751 clear the DNS cache on the client's machine before loading a page with 97752 <link rel="dns-prefetch" href="SomeSiteThatsNotTheCurrentOne.com"> and 97753 then check the number of DNS cache entries. 97754 97755 * html/HTMLLinkElement.cpp: 97756 (WebCore::HTMLLinkElement::process): 97757 97758 2010-07-16 Maciej Stachowiak <mjs (a] apple.com> 97759 97760 Reviewed by Sam Weinig. 97761 97762 Asynchronous policy checks make FrameLoader think it is done loading prematurely 97763 https://bugs.webkit.org/show_bug.cgi?id=42489 97764 97765 This caused many (~100) layout tsts to fail under WebKit2. 97766 97767 * loader/SubframeLoader.cpp: 97768 (WebCore::SubframeLoader::loadSubframe): Right after loading a new subframe, 97769 if m_complete is true, do not consider it done if it has a provisional loader. 97770 This will happen in the case where the policy check is asynchronous. 97771 * loader/FrameLoader.cpp: 97772 (WebCore::FrameLoader::subframeIsLoading): For similar reasons, 97773 consider a subframe to be loading if it has a policy decision pending. 97774 97775 2010-07-15 Qi Zhang <qi.2.zhang (a] nokia.com> 97776 97777 Reviewed by Kenneth Rohde Christiansen. 97778 97779 [Qt] Failure on http://philip.html5.org/tests/canvas/suite/tests/2d.shadow.alpha.5.html 97780 https://bugs.webkit.org/show_bug.cgi?id=38400 97781 97782 FillRect with shadow need take alpha information from fillstyle 97783 97784 * platform/graphics/qt/GraphicsContextQt.cpp: 97785 (WebCore::GraphicsContext::fillRect): 97786 97787 2010-07-17 Nikita Vasilyev <me (a] elv1s.ru> 97788 97789 Reviewed by Pavel Feldman. 97790 97791 Web Inspector: [REGRESSION] Edit long CSS attributes works incorrect 97792 https://bugs.webkit.org/show_bug.cgi?id=42476 97793 97794 * inspector/front-end/inspector.css: 97795 (.editing): 97796 97797 2010-07-16 Andreas Kling <andreas.kling (a] nokia.com> 97798 97799 Reviewed by Sam Weinig. 97800 97801 Failing 2d.path.arcTo.ensuresubpath.* philip canvas tests 97802 https://bugs.webkit.org/show_bug.cgi?id=42186 97803 97804 Move code from Qt's Path::addArcTo() up to CanvasRenderingContext2D. 97805 97806 * html/canvas/CanvasRenderingContext2D.cpp: 97807 (WebCore::CanvasRenderingContext2D::arcTo): Behave as moveTo(x1,y1) 97808 if the current path is empty. 97809 * platform/graphics/qt/PathQt.cpp: 97810 (WebCore::Path::addArcTo): Remove now-redundant code. 97811 97812 2010-07-16 Andreas Kling <andreas.kling (a] nokia.com> 97813 97814 Reviewed by Oliver Hunt. 97815 97816 QtWebkit creates an unnecessary deep copy of images when canvas drawing is done 97817 A https://bugs.webkit.org/show_bug.cgi?id=32530 97818 97819 Solve this by adding ImageBuffer::imageForRendering() which returns an image 97820 that can be used for rendering now, but isn't a copy to be kept around. 97821 97822 * platform/graphics/ImageBuffer.h: 97823 (WebCore::ImageBuffer::imageForRendering): 97824 * platform/graphics/qt/ImageBufferQt.cpp: 97825 (WebCore::ImageBuffer::imageForRendering): Added to provide an image that can 97826 be used for rendering now, but may change in the future. 97827 * platform/graphics/qt/StillImageQt.cpp: 97828 (WebCore::StillImage::StillImage): 97829 (WebCore::StillImage::~StillImage): 97830 (WebCore::StillImage::size): 97831 (WebCore::StillImage::nativeImageForCurrentFrame): 97832 (WebCore::StillImage::draw): 97833 * platform/graphics/qt/StillImageQt.h: 97834 (WebCore::StillImage::createForRendering): Added for use in 97835 ImageBuffer::imageForRendering(), provides a thin wrapper around a QPixmap*. 97836 * html/HTMLCanvasElement.cpp: 97837 (WebCore::HTMLCanvasElement::paint): Paint with ImageBuffer::imageForRendering() 97838 97839 2010-07-16 Andreas Kling <andreas.kling (a] nokia.com> 97840 97841 Reviewed by Oliver Hunt. 97842 97843 [Qt] Remove redundant logic in Path::addArcTo() 97844 https://bugs.webkit.org/show_bug.cgi?id=42494 97845 97846 Bounds checking for arcTo() is now done in cross-platform code 97847 thanks to <http://trac.webkit.org/changeset/63599> 97848 97849 * platform/graphics/qt/PathQt.cpp: 97850 (WebCore::Path::addArcTo): 97851 97852 2010-07-16 Zhe Su <suzhe (a] chromium.org> 97853 97854 Reviewed by Darin Adler. 97855 97856 REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms 97857 https://bugs.webkit.org/show_bug.cgi?id=42253 97858 97859 This patch just reverts the change to WebCore/page/FocusController.cpp 97860 made in changeset 61484, and add a new method named 97861 willSetInputMethodState in EditorClient interface, which gets called 97862 in FocusController just before changing the focused node. 97863 97864 No new tests, because no new functionality. 97865 97866 * loader/EmptyClients.h: 97867 (WebCore::EmptyEditorClient::willSetInputMethodState): 97868 * page/EditorClient.h: 97869 * page/FocusController.cpp: 97870 (WebCore::FocusController::setFocusedNode): 97871 97872 2010-07-16 Matthew Delaney <mdelaney (a] apple.com> 97873 97874 Reviewed by Sam Weinig. 97875 97876 Failing 2d.path.stroke.prune.arc philip canvas test 97877 https://bugs.webkit.org/show_bug.cgi?id=42188 97878 97879 * html/canvas/CanvasRenderingContext2D.cpp: 97880 Note, updated parameter names to match spec. 97881 (WebCore::CanvasRenderingContext2D::lineTo): Pulled bound checking code out of lower code to have checks for all platforms. 97882 (WebCore::CanvasRenderingContext2D::arcTo): Bound checking per the spec for arcTo parameters. Updated parameter names to match spec. 97883 * platform/graphics/Path.h: Added in new method to expose the current position. 97884 * platform/graphics/cairo/PathCairo.cpp: 97885 (WebCore::Path::currentPoint): Added in likely correct implementation for this call with a FIXME just in case. 97886 * platform/graphics/cg/PathCG.cpp: 97887 (WebCore::Path::currentPoint): Added in support for this call. 97888 * platform/graphics/haiku/PathHaiku.cpp: 97889 (WebCore::Path::currentPoint): Added in stub for this call. 97890 * platform/graphics/openvg/PathOpenVG.cpp: 97891 (WebCore::Path::currentPoint): Added in likely implementation for this call with a FIXME just in case. 97892 * platform/graphics/qt/PathQt.cpp: 97893 (WebCore::Path::currentPoint): Added in implementation for this call courtesy of Andrea Kling. 97894 * platform/graphics/skia/PathSkia.cpp: 97895 (WebCore::Path::currentPoint): Added in stub for this call. 97896 * platform/graphics/wince/PathWince.cpp: 97897 (WebCore::Path::currentPoint): Added in stub for this call. 97898 * platform/graphics/wx/PathWx.cpp: 97899 (WebCore::Path::currentPoint): Added in stub for this call. 97900 97901 2010-07-16 Sheriff Bot <webkit.review.bot (a] gmail.com> 97902 97903 Unreviewed, rolling out r63593. 97904 http://trac.webkit.org/changeset/63593 97905 https://bugs.webkit.org/show_bug.cgi?id=42487 97906 97907 Broke a few chromium pixel tests (Requested by tony^work on 97908 #webkit). 97909 97910 * platform/graphics/skia/GraphicsContextSkia.cpp: 97911 (WebCore::GraphicsContext::drawConvexPolygon): 97912 (WebCore::GraphicsContext::drawEllipse): 97913 (WebCore::GraphicsContext::drawLine): 97914 (WebCore::GraphicsContext::strokeArc): 97915 (WebCore::GraphicsContext::strokePath): 97916 (WebCore::GraphicsContext::strokeRect): 97917 97918 2010-07-16 Dan Bernstein <mitz (a] apple.com> 97919 97920 Reviewed by Sam Weinig. 97921 97922 Part of <rdar://problem/7233974> Deprecate +[WebView _setShouldUseFontSmoothing:] 97923 https://bugs.webkit.org/show_bug.cgi?id=29355 97924 97925 * WebCore.exp.in: Updated. 97926 * platform/graphics/Font.cpp: 97927 (WebCore::Font::Font): Added a font smoothing mode parameter to the constructor. 97928 Set the font smoothing mode in the font description. 97929 * platform/graphics/Font.h: 97930 97931 2010-07-16 Satish Sampath <satish (a] chromium.org> 97932 97933 Reviewed by Anders Carlsson. 97934 97935 Add speech attribute to IDL for enabling access from JS. 97936 https://bugs.webkit.org/show_bug.cgi?id=42483 97937 97938 No tests added, this change is a pre-requisite for future layout tests. 97939 97940 * html/HTMLInputElement.cpp: 97941 (WebCore::HTMLInputElement::parseMappedAttribute): Update the renderer when speech attribute changes. 97942 * html/HTMLInputElement.idl: Added the speech attribute to IDL. 97943 97944 2010-07-16 Fady Samuel <fsamuel (a] chromium.org> 97945 97946 Reviewed by David Levin. 97947 97948 Avoids adding stroke when stroke-width is zero. 97949 97950 SVG - stroke-width:0 bug with stroke other than "none" 97951 https://bugs.webkit.org/show_bug.cgi?id=42387 97952 97953 Test: svg/stroke/path-zero-strokewidth-test.svg 97954 97955 * platform/graphics/skia/GraphicsContextSkia.cpp: 97956 (WebCore::GraphicsContext::drawConvexPolygon): 97957 (WebCore::GraphicsContext::drawEllipse): 97958 (WebCore::GraphicsContext::drawLine): 97959 (WebCore::GraphicsContext::strokeArc): 97960 (WebCore::GraphicsContext::strokePath): 97961 (WebCore::GraphicsContext::strokeRect): 97962 97963 2010-07-16 Kent Tamura <tkent (a] chromium.org> 97964 97965 Unreviewed, build fix. 97966 97967 * rendering/RenderThemeChromiumWin.cpp: 97968 (WebCore::RenderThemeChromiumWin::getThemeData): Fix a typo. 97969 97970 2010-07-16 Kent Tamura <tkent (a] chromium.org> 97971 97972 Reviewed by Darin Fisher. 97973 97974 [Chromium] <input type=number> UI implementation for Windows 97975 https://bugs.webkit.org/show_bug.cgi?id=42259 97976 97977 No additional tests. Existing tests cover this change and we'll 97978 update expectations. 97979 97980 * platform/chromium/ChromiumBridge.h: Add paintSpinButton(). 97981 * rendering/RenderThemeChromiumWin.cpp: 97982 (WebCore::RenderThemeChromiumWin::determineState): 97983 Add ControlSubPart parameter and add support for spin buttons. 97984 (WebCore::RenderThemeChromiumWin::determineClassicState): ditto. 97985 (WebCore::RenderThemeChromiumWin::getThemeData): ditto. 97986 (WebCore::RenderThemeChromiumWin::adjustInnerSpinButtonStyle): Added. 97987 (WebCore::RenderThemeChromiumWin::paintInnerSpinButton): Added. 97988 * rendering/RenderThemeChromiumWin.h: 97989 Declare ControlSubpart, and add it to some functions. 97990 97991 2010-07-16 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 97992 97993 Reviewed by Antonio Gomes. 97994 97995 [EFL] Use function provided by EFL for system beep 97996 https://bugs.webkit.org/show_bug.cgi?id=42481 97997 97998 EFL port does not support automated tests, yet. 97999 98000 * platform/efl/SoundEfl.cpp: 98001 (WebCore::systemBeep): 98002 98003 2010-07-16 Sarah Strong <sarah.e.strong (a] gmail.com> 98004 98005 Reviewed by Gustavo Noronha Silva. 98006 98007 [GTK] Clipboard data is lost on exit 98008 https://bugs.webkit.org/show_bug.cgi?id=27411 98009 98010 No new tests. To manually test the bug fixed by this patch: 98011 1) Open an application that uses a webkit webview on a GNOME-based system 98012 2) Copy some text from that application 98013 3) Optional: paste it to another application. This should work properly with and without this patch. 98014 4) Exit the application completely. 98015 5) Paste: 98016 Without this patch, you cannot because your clipboard is empty. 98017 With this patch, pasting succeeds. 98018 I have not included an automated test because of the difficulty of testing behaviour after application exit. 98019 98020 2010-07-16 Kent Tamura <tkent (a] chromium.org> 98021 98022 Reviewed by Darin Fisher. 98023 98024 Keyboard operations for <input type=number> 98025 https://bugs.webkit.org/show_bug.cgi?id=42076 98026 98027 - The up arrow key works as stepUp(). 98028 - The down arrow key works as stepDown(). 98029 - Reject characters other than + - 0-9 . e E 98030 98031 Test: fast/forms/input-number-keyoperation.html 98032 98033 * html/HTMLInputElement.cpp: 98034 (WebCore::HTMLInputElement::defaultEventHandler): 98035 Add up/down arrow keys support, and call handleBeforeTextInsertedEvent(). 98036 (WebCore::isNumberCharacter): 98037 (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): 98038 For type=number, remove unacceptable characters. 98039 * html/HTMLInputElement.h: 98040 98041 2010-07-16 Kent Tamura <tkent (a] chromium.org> 98042 98043 Reviewed by Darin Fisher. 98044 98045 Improve hover state handling for spin buttons 98046 https://bugs.webkit.org/show_bug.cgi?id=42260 98047 98048 Background: 98049 When we move the mouse cursor to a node from the outside of the node, 98050 the following steps are executed. 98051 1. setHovered(true) is called. 98052 2. The node is repainted for the hover state. 98053 3. 'mousemove' event is dispatched for the node. 98054 For a spin-button, RenderTheme::paint{Inner,Outer}SpinButton() is 98055 called before the event handler of the spin-button. So we can't 98056 detect which of the up part or the down part is hovered correctly. 98057 98058 Solution: 98059 The hover state of a spin-button is one of three states; 98060 Indeterminate, Up, and Down. The state is Indeterminate since 98061 setHovered(true) is called and until 'mousemove' event is 98062 dispatched. 98063 98064 No new tests because there are no implementation of spin-buttons 98065 with hovered state yet. 98066 98067 * rendering/RenderTheme.cpp: 98068 (WebCore::RenderTheme::isSpinUpButtonPartPressed): 98069 (WebCore::RenderTheme::isHovered): 98070 Return false if the node is a spin-button and the state is Indeterminate. 98071 (WebCore::RenderTheme::isSpinUpButtonPartHovered): 98072 * rendering/TextControlInnerElements.cpp: 98073 (WebCore::SpinButtonElement::SpinButtonElement): 98074 Initialize m_upDownState. 98075 (WebCore::SpinButtonElement::defaultEventHandler): 98076 (WebCore::SpinButtonElement::setHovered): 98077 Set the state to Indeterminate. 98078 * rendering/TextControlInnerElements.h: 98079 (WebCore::SpinButtonElement::upDownState): 98080 98081 2010-07-16 Dan Bernstein <mitz (a] apple.com> 98082 98083 Reviewed by Simon Fraser. 98084 98085 <rdar://problem/7527532> Crash beneath setSelection() during detach() 98086 https://bugs.webkit.org/show_bug.cgi?id=42020 98087 98088 No test because I am unable to reproduce the crash. 98089 98090 * rendering/RenderView.cpp: 98091 (WebCore::RenderView::setSelection): In the clearSelection() case, where the repaint mode is 98092 RepaintNewMinusOld, avoid making RenderBlockSelectionInfo instances, and thereby avoid calling 98093 localToAbsolute() during detach(). 98094 98095 2010-07-16 Anders Carlsson <andersca (a] apple.com> 98096 98097 Fix release build. 98098 98099 * storage/Database.cpp: 98100 (WebCore::DerefContextTask::performTask): 98101 98102 2010-07-16 Simon Fraser <simon.fraser (a] apple.com> 98103 98104 Reviewed by Sam Weinig. 98105 98106 Safari pegs CPU and drops frames on http://neography.com/experiment/circles/solarsystem/ (CSS animations) 98107 https://bugs.webkit.org/show_bug.cgi?id=41409 98108 98109 AnimationController::isAnimatingPropertyOnRenderer() really asked whether an accelerated animation 98110 or transition was running. This prevented us from falling into compositing layers for animation 98111 on platforms, like Windows, that don't have accelerated animations. 98112 98113 Fix by making things more explicit: we now have two methods, isRunningAnimationOnRenderer() 98114 and isRunningAcceleratedAnimationOnRenderer(). 98115 98116 Changes are more extensive because I flipped the sense of 'm_fallbackAnimating', which is 98117 now 'm_isAccelerated', for clarity. 98118 98119 Test: compositing/animation/animation-compositing.html 98120 98121 * page/animation/AnimationBase.cpp: 98122 (WebCore::AnimationBase::AnimationBase): m_fallbackAnimating -> m_isAccelerated 98123 (WebCore::AnimationBase::blendProperties): Ditto. 98124 (WebCore::AnimationBase::updateStateMachine): Ditto. 98125 * page/animation/AnimationBase.h: 98126 (WebCore::AnimationBase::isAnimatingProperty): Takes new acceleratedOnly parameter 98127 which causes the method to only return true if the animation is accelerated. 98128 (WebCore::AnimationBase::isAccelerated): Changed from isFallbackAnimating. 98129 98130 * page/animation/AnimationController.cpp: 98131 (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer): 98132 (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer): 98133 (WebCore::AnimationController::isRunningAnimationOnRenderer): 98134 (WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer): 98135 98136 * page/animation/CompositeAnimation.h: 98137 * page/animation/AnimationController.h: Rename isAnimatingPropertyOnRenderer(), add 98138 isRunningAcceleratedAnimationOnRenderer(). 98139 * page/animation/AnimationControllerPrivate.h: Ditto. 98140 * page/animation/CompositeAnimation.cpp: 98141 (WebCore::CompositeAnimation::updateTransitions): !isFallbackAnimating() -> isAccelerated(). 98142 (WebCore::CompositeAnimation::isAnimatingProperty): Pass acceleratedOnly down. 98143 98144 * page/animation/ImplicitAnimation.cpp: 98145 (WebCore::ImplicitAnimation::timeToNextService): !isFallbackAnimating() -> isAccelerated(). 98146 98147 * page/animation/KeyframeAnimation.cpp: 98148 (WebCore::KeyframeAnimation::timeToNextService): isFallbackAnimating() -> !isAccelerated(). 98149 98150 * rendering/RenderLayerBacking.cpp: 98151 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Avoid touching the transform or 98152 opacity if an accelerated animation is running. 98153 98154 * rendering/RenderLayerCompositor.cpp: 98155 (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): Make compositing layers 98156 if an animation of transform or opacity is running. 98157 98158 2010-07-16 Simon Fraser <simon.fraser (a] apple.com> 98159 98160 Reviewed by Sam Weinig. 98161 98162 Assertion when turning Accelerated Compositing off on a composited page 98163 https://bugs.webkit.org/show_bug.cgi?id=42408 98164 98165 When accelerated compositing is turned off, check m_hasAcceleratedCompositing 98166 before saying that the root layer will be composited. Fixes an assertion. 98167 98168 * rendering/RenderLayerCompositor.cpp: 98169 (WebCore::RenderLayerCompositor::computeCompositingRequirements): 98170 98171 2010-07-16 Antonio Gomes <tonikitoo (a] webkit.org> 98172 98173 Reviewed by Simon Fraser. 98174 98175 Spatial navigation: do not consider outline for focusable element boundaries 98176 https://bugs.webkit.org/show_bug.cgi?id=42474 98177 98178 Test: fast/events/spatial-navigation/snav-zero-margin-content.html 98179 98180 Currently in WebCore::renderRectRelativeToRootDocument function, we are calling 98181 RenderObject::absoluteClippedOverflowRect to obtain the rect boundary of a given 98182 renderer/element. This method deals with outline, which is out of elements boundary. 98183 It makes spatial navigation to fail on common sites like google.gom: "Web, Images, Map, etc" 98184 are inaccessible. 98185 98186 Patch replaces RenderObject::absoluteClippedOverflowRect by Node::getRect, 98187 which returns only the absolute bounding box rect of the Element. 98188 98189 * page/SpatialNavigation.cpp: 98190 (WebCore::renderRectRelativeToRootDocument): 98191 (WebCore::checkNegativeCoordsForNode): 98192 98193 2010-07-15 Antonio Gomes <tonikitoo (a] webkit.org> 98194 98195 Reviewed by Gustavo Noronha. 98196 98197 [Qt] Remove unnecessary WebKit headers inclusion from WebCore files 98198 https://bugs.webkit.org/show_bug.cgi?id=42416 98199 98200 There are some places in WebCore unnecessarily including WebKit headers. 98201 98202 Cleaning up only, no testing needed. 98203 98204 * platform/network/qt/ResourceHandleQt.cpp: 98205 * platform/qt/RenderThemeQt.cpp: 98206 * platform/qt/WidgetQt.cpp: 98207 98208 2010-07-16 Dan Bernstein <mitz (a] apple.com> 98209 98210 Reviewed by Anders Carlsson. 98211 98212 Refinement of r63556: moved the tab width computation back to Font, but added a 98213 SimpleFontData parameter. 98214 98215 * platform/graphics/Font.h: 98216 (WebCore::Font::tabWidth): 98217 * platform/graphics/WidthIterator.cpp: 98218 (WebCore::WidthIterator::advance): 98219 * platform/graphics/mac/ComplexTextController.cpp: 98220 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 98221 98222 2010-07-16 Tony Gentilcore <tonyg (a] chromium.org> 98223 98224 Reviewed by Pavel Feldman. 98225 98226 Fix unit error in calculating timings from ResourceLoadTiming API 98227 https://bugs.webkit.org/show_bug.cgi?id=42473 98228 98229 The start and end offsets are already in milliseconds so they should not be multiplied by 1000.0 like requestTime. 98230 98231 No new tests because, for a yet unknown reason, the ResourceLoadTiming API is not populated in the chromium test shell like it is in full chromium. This means the test that would have caught this bug (fast/dom/webtiming.html) currently has its expectation set to FAIL. 98232 98233 * page/Timing.cpp: 98234 (WebCore::Timing::domainLookupStart): 98235 (WebCore::Timing::domainLookupEnd): 98236 (WebCore::Timing::connectStart): 98237 (WebCore::Timing::connectEnd): 98238 (WebCore::Timing::requestStart): 98239 (WebCore::Timing::requestEnd): 98240 (WebCore::Timing::responseStart): 98241 98242 2010-07-16 Anders Carlsson <andersca (a] apple.com> 98243 98244 Reviewed by Sam Weinig. 98245 98246 clang++ build fixes for JavaScriptCore and WebCore 98247 https://bugs.webkit.org/show_bug.cgi?id=42478 98248 98249 * platform/network/Credential.cpp: 98250 (WebCore::Credential::type): 98251 * platform/network/Credential.h: 98252 Remove const qualifier on Credential::type since it doesn't have an effect on the type. 98253 98254 2010-07-16 Anders Carlsson <andersca (a] apple.com> 98255 98256 Reviewed by David Levin. 98257 98258 Really add WARN_UNUSED_RESULT to leakRef 98259 https://bugs.webkit.org/show_bug.cgi?id=42464 98260 98261 Get rid of a call to releaseRef here by passing the ScriptExecutionContext 98262 reference through to the DerefContextTask. 98263 98264 * storage/Database.cpp: 98265 (WebCore::DerefContextTask::create): 98266 (WebCore::DerefContextTask::performTask): 98267 (WebCore::DerefContextTask::DerefContextTask): 98268 (WebCore::Database::~Database): 98269 98270 2010-07-16 Ilya Tikhonovsky <loislo (a] chromium.org> 98271 98272 Reviewed by Yury Semikhatsky. 98273 98274 WebInspector: The current implementation of generator is not ready 98275 for generation Backend part of Inspector interface. The full patch 98276 with Backend is quite big and I've split it. 98277 https://bugs.webkit.org/show_bug.cgi?id=42462 98278 98279 * inspector/CodeGeneratorInspector.pm: 98280 * inspector/Inspector.idl: 98281 * inspector/InspectorValues.cpp: 98282 (WebCore::InspectorArray::get): 98283 * inspector/InspectorValues.h: 98284 (WebCore::InspectorArray::length): 98285 98286 2010-07-15 Rob Buis <rwlbuis (a] gmail.com> 98287 98288 Reviewed by Darin Adler. 98289 98290 An empty value for xml:lang isn't considered 98291 https://bugs.webkit.org/show_bug.cgi?id=42042 98292 98293 Allow :lang selector to match empty values for xml:lang and 98294 lang attributes. 98295 98296 Test: fast/css/lang-selector-empty-attribute.xhtml 98297 98298 * css/CSSStyleSelector.cpp: 98299 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): 98300 98301 2010-07-16 Alexander Pavlov <apavlov (a] chromium.org> 98302 98303 Reviewed by Pavel Feldman. 98304 98305 Web Inspector: Shift-Enter does not do a reverse search. It searches forward. 98306 https://bugs.webkit.org/show_bug.cgi?id=42459 98307 98308 * inspector/front-end/inspector.js: 98309 (WebInspector.performSearch): 98310 98311 2010-07-16 Pavel Feldman <pfeldman (a] chromium.org> 98312 98313 Reviewed by Yury Semikhatsky. 98314 98315 Web Inspector: do not include SSL time into Waiting time. 98316 98317 https://bugs.webkit.org/show_bug.cgi?id=42458 98318 98319 * inspector/front-end/ResourcesPanel.js: 98320 (WebInspector.ResourcesPanel.prototype._showPopover): 98321 98322 2010-07-16 Dan Bernstein <mitz (a] apple.com> 98323 98324 Reviewed by Anders Carlsson. 98325 98326 <rdar://problem/8198266> white-space: pre text containing tabs is not laid out correctly when the font lacks a space glyph 98327 https://bugs.webkit.org/show_bug.cgi?id=42437 98328 98329 No test because none of the fonts available to DumpRenderTree are missing a space glyph. 98330 98331 Changed the tab width computation to use the width of the space glyph from the font that has 98332 a space glyph, which may be a fallback font if the primary font lacks a space glyph. 98333 98334 * platform/graphics/Font.h: Removed Font::tabWidth(). 98335 * platform/graphics/WidthIterator.cpp: 98336 (WebCore::WidthIterator::advance): 98337 * platform/graphics/mac/ComplexTextController.cpp: 98338 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 98339 98340 2010-07-16 Yury Semikhatsky <yurys (a] chromium.org> 98341 98342 Unreviewed. Chromium build fix. Add missing include. 98343 98344 * inspector/ConsoleMessage.h: 98345 98346 2010-07-16 Andreas Kling <andreas.kling (a] nokia.com> 98347 98348 Reviewed by Antonio Gomes. 98349 98350 [Qt] Path: Avoid creating a new GraphicsContext in strokeContains() and strokeBoundingRect() 98351 https://bugs.webkit.org/show_bug.cgi?id=42456 98352 98353 * platform/graphics/qt/PathQt.cpp: 98354 (WebCore::scratchContext): Added, provides a scratch GraphicsContext. 98355 (WebCore::Path::strokeContains): Use the scratch context instead 98356 of creating a new GraphicsContext. 98357 (WebCore::Path::strokeBoundingRect): Ditto. 98358 98359 2010-07-16 Pavel Podivilov <podivilov (a] chromium.org> 98360 98361 Reviewed by Yury Semikhatsky. 98362 98363 [V8] V8Proxy::retrieve may return null if javascript is disabled. Add a check 98364 to avoid crashes in inspected page. 98365 https://bugs.webkit.org/show_bug.cgi?id=42065 98366 98367 * bindings/v8/ScriptDebugServer.cpp: 98368 (WebCore::ScriptDebugServer::addListener): 98369 98370 2010-07-16 Pavel Feldman <pfeldman (a] chromium.org> 98371 98372 Reviewed by Yury Semikhatsky. 98373 98374 Web Inspector: add SSL time label into the resources popover. 98375 98376 https://bugs.webkit.org/show_bug.cgi?id=42458 98377 98378 * English.lproj/localizedStrings.js: 98379 * inspector/InspectorResource.cpp: 98380 (WebCore::InspectorResource::buildObjectForTiming): 98381 * inspector/front-end/ResourcesPanel.js: 98382 (WebInspector.ResourcesPanel.prototype._showPopover): 98383 98384 2010-07-16 Pavel Feldman <pfeldman (a] chromium.org> 98385 98386 Reviewed by Yury Semikhatsky. 98387 98388 Web Inspector: disable AppCache in chromium. 98389 98390 https://bugs.webkit.org/show_bug.cgi?id=41858 98391 98392 * inspector/front-end/Settings.js: 98393 * inspector/front-end/StoragePanel.js: 98394 (WebInspector.StoragePanel): 98395 (WebInspector.StoragePanel.prototype.reset): 98396 (WebInspector.StoragePanel.prototype.addApplicationCache): 98397 98398 2010-07-16 Yury Semikhatsky <yurys (a] chromium.org> 98399 98400 Reviewed by Pavel Feldman. 98401 98402 console.trace should show file and line number for each function in the stack 98403 https://bugs.webkit.org/show_bug.cgi?id=21180 98404 98405 Test: inspector/console-trace.html 98406 98407 * bindings/js/ScriptCallStack.cpp: 98408 (WebCore::ScriptCallStack::initialize): 98409 * bindings/v8/ScriptCallFrame.cpp: 98410 (WebCore::ScriptCallFrame::ScriptCallFrame): 98411 * bindings/v8/ScriptCallFrame.h: 98412 * bindings/v8/ScriptCallStack.cpp: 98413 (WebCore::getFrameLocation): 98414 (WebCore::toScriptCallFrame): 98415 (WebCore::ScriptCallStack::create): 98416 (WebCore::ScriptCallStack::ScriptCallStack): 98417 (WebCore::ScriptCallStack::at): 98418 (WebCore::ScriptCallStack::size): 98419 * bindings/v8/ScriptCallStack.h: 98420 * bindings/v8/custom/V8ConsoleCustom.cpp: 98421 (WebCore::V8Console::traceCallback): 98422 * inspector/ConsoleMessage.cpp: 98423 (WebCore::ConsoleMessage::CallFrame::CallFrame): 98424 (WebCore::ConsoleMessage::CallFrame::isEqual): 98425 (WebCore::ConsoleMessage::CallFrame::createFrontendObject): 98426 (WebCore::ConsoleMessage::ConsoleMessage): 98427 (WebCore::ConsoleMessage::addToFrontend): 98428 (WebCore::ConsoleMessage::isEqual): 98429 * inspector/ConsoleMessage.h: 98430 * inspector/front-end/ConsoleView.js: 98431 (WebInspector.ConsoleMessage.prototype._formatMessage): 98432 (WebInspector.ConsoleMessage.prototype._createStackTraceElement): 98433 (WebInspector.ConsoleMessage.prototype._createSourceUrlLink): 98434 * inspector/front-end/inspector.css: 98435 (.console-message.expandable > .console-message-text::before): 98436 (.console-message.expandable.collapsed > .console-message-text::before): 98437 (.console-message.expandable.collapsed > ol.stack-trace): 98438 (.console-message > ol.stack-trace): 98439 (.console-message.repeated-message > ol.stack-trace): 98440 (.console-message.repeated-message > ol.stack-trace.trace-message): 98441 * page/Console.idl: 98442 98443 2010-07-16 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 98444 98445 Reviewed by Antonio Gomes. 98446 98447 [EFL] Build with MathML enabled. Fix build when MathML is enabled and 98448 make it the default. 98449 https://bugs.webkit.org/show_bug.cgi?id=42453 98450 98451 EFL port does not support automated tests, yet. 98452 98453 * CMakeLists.txt: add missing source file and sort. 98454 98455 2010-07-16 Hans Wennborg <hans (a] chromium.org> 98456 98457 Reviewed by Steve Block. 98458 98459 DeviceOrientationEvent.h should not forward-declare DeviceOrientation 98460 https://bugs.webkit.org/show_bug.cgi?id=42447 98461 98462 When destructing m_orientation, DeviceOrientation cannot be an incomplete type. 98463 98464 * dom/DeviceOrientationEvent.h: 98465 98466 2010-07-16 Nikolas Zimmermann <nzimmermann (a] rim.com> 98467 98468 Reviewed by Dirk Schulze. 98469 98470 gradientTransform + objectBoundingBox is wrong 98471 https://bugs.webkit.org/show_bug.cgi?id=42446 98472 98473 gradientTransform + gradientUnits="objectBoundingBox" is wrong. Reverse multiplication order of both transforms. 98474 98475 * rendering/RenderSVGResourceGradient.cpp: s/multiply/multLeft/ 98476 98477 2010-07-16 Mikhail Naganov <mnaganov (a] chromium.org> 98478 98479 Reviewed by Pavel Feldman. 98480 98481 Make JS memory stats available via 'Performance' object (Web Timing). 98482 This statistics is populated only if 'WebKitMemoryInfoEnabled' 98483 preference is set. 98484 98485 'console.memory' is kept until Web Timing object becomes visible by 98486 default (currently it is hidden under compile-time flag). These stats 98487 are guarded with the same preference. 98488 98489 https://bugs.webkit.org/show_bug.cgi?id=41617 98490 98491 * bindings/js/JSConsoleCustom.cpp: 98492 * bindings/v8/custom/V8ConsoleCustom.cpp: 98493 * page/Console.cpp: 98494 (WebCore::Console::disconnectFrame): 98495 (WebCore::Console::memory): 98496 * page/Console.h: 98497 * page/Console.idl: 98498 * page/MemoryInfo.cpp: 98499 (WebCore::MemoryInfo::MemoryInfo): 98500 * page/MemoryInfo.h: 98501 (WebCore::MemoryInfo::create): 98502 * page/Performance.cpp: 98503 (WebCore::Performance::disconnectFrame): 98504 (WebCore::Performance::memory): 98505 * page/Performance.h: 98506 * page/Performance.idl: 98507 * page/Settings.cpp: 98508 (WebCore::Settings::Settings): 98509 * page/Settings.h: 98510 (WebCore::Settings::setMemoryInfoEnabled): 98511 (WebCore::Settings::memoryInfoEnabled): 98512 98513 2010-07-16 Nikolas Zimmermann <nzimmermann (a] rim.com> 98514 98515 Reviewed by Dirk Schulze. 98516 98517 Convolution computation causes bad alpha channel values 98518 https://bugs.webkit.org/show_bug.cgi?id=42273 98519 98520 Unbreak the convolve matrix filter, fixing svg/W3C-SVG-1.1/filters-conv-01-f.svg. 98521 98522 1) Fix clamping the rgb values: 98523 "image->set(pixel++, clampRGBAValue(totals[0], maxAlpha));" totals[0] -> totals[i]. 98524 98525 2) Don't apply the divisior divison and bias addition multiple times, accumulated! 98526 98527 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: 98528 (WebCore::setDestinationPixels): Fix two evil bugs, breaking feConvolveMatrix. 98529 98530 2010-07-16 Nikolas Zimmermann <nzimmermann (a] rim.com> 98531 98532 Reviewed by Dirk Schulze. 98533 98534 relative positioning does not work for radialGradient after window resize 98535 https://bugs.webkit.org/show_bug.cgi?id=41249 98536 98537 Redesign the way resources are invalidated. No longer utilize the DOM tree, specifically SVGStyledElement::svgAttributeChanged(), to invalidate 98538 all resources in the ancestor chain (including itself) when any attribute changes. rect.setAttribute("foo", "bar") should never invalidate the 98539 resources. Also the old approach didn't work correctly if the root layout changed (eg. window size change) - we failed to invalidate the resources, 98540 thus leading to wrong renderings. 98541 98542 Instead of calling setNeedsLayout(true) from the SVG*Element classes, call RenderSVGResource::markForLayoutAndParentResourceInvalidation(), which 98543 does the same thing and invalidates all resources in the ancestor chain (removing the cached results from the HashMaps). This only happens from 98544 the various svgAttributeChanged() methods, if we know which attribute changed, and what action has to be taken. 98545 98546 All SVG renderers now invalidate their own resources on layout() if the layout changed (selfNeedsLayout()=true). The resources will be recreated 98547 and cached during the following paint() call. 98548 98549 Tests: svg/custom/marker-child-changes-css.svg 98550 svg/custom/relative-sized-content-with-resources.xhtml 98551 98552 * rendering/RenderForeignObject.cpp: 98553 (WebCore::RenderForeignObject::layout): If our layout changed, invalidate our resources, by calling RenderSVGResource::invalidateAllResourcesOfRenderer(). 98554 * rendering/RenderPath.cpp: 98555 (WebCore::RenderPath::layout): Ditto. 98556 * rendering/RenderSVGContainer.cpp: 98557 (WebCore::RenderSVGContainer::layout): Ditto. 98558 * rendering/RenderSVGImage.cpp: 98559 (WebCore::RenderSVGImage::layout): Ditto. 98560 * rendering/RenderSVGModelObject.cpp: 98561 (WebCore::RenderSVGModelObject::styleDidChange): Added, to invalidate resources on CSS changes, covered by new svg/custom/marker-child-changes-css.svg test. 98562 * rendering/RenderSVGModelObject.h: 98563 * rendering/RenderSVGResource.cpp: 98564 (WebCore::RenderSVGResource::markForLayoutAndResourceInvalidation): Add new "needsBoundaries" parameter, calling setNeedsBoundaries() on the target render object, 98565 simplifying all RenderSVGResource* code. 98566 (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): New static method used from DOM tree to invalidate all cached resources in the ancestor chain 98567 for a render object. Also marks the renderer for layout, if needed. 98568 * rendering/RenderSVGResource.h: 98569 * rendering/RenderSVGResourceClipper.cpp: Simplify code, remove no longer needed hacks, as invalidation is now carried out by render tree. 98570 (WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper): Add m_invalidationBlocked hack, to avoid invalidations, while we're mutating the render styles (which is a hack!). 98571 (WebCore::RenderSVGResourceClipper::invalidateClients): Don't do anything if m_invalidationBlocked=true. 98572 (WebCore::RenderSVGResourceClipper::invalidateClient): Ditto. 98573 (WebCore::RenderSVGResourceClipper::createClipData): Set m_invalidationBlocked before mutating render styles, as they are restored immediately after creating the clip image. 98574 (WebCore::RenderSVGResourceClipper::resourceBoundingBox): Remove no longer needed hack to initialize ClipperData earlier than applyResource() would do. 98575 * rendering/RenderSVGResourceClipper.h: 98576 * rendering/RenderSVGResourceFilter.cpp: 98577 (WebCore::RenderSVGResourceFilter::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation. 98578 (WebCore::RenderSVGResourceFilter::invalidateClient): Remove wrong assertion. 98579 * rendering/RenderSVGResourceGradient.cpp: 98580 (WebCore::RenderSVGResourceGradient::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation. 98581 (WebCore::RenderSVGResourceGradient::invalidateClient): Remove wrong assertion. 98582 * rendering/RenderSVGResourceMarker.cpp: 98583 (WebCore::RenderSVGResourceMarker::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation. 98584 (WebCore::RenderSVGResourceMarker::invalidateClient): Remove wrong assertion. 98585 * rendering/RenderSVGResourceMasker.cpp: 98586 (WebCore::RenderSVGResourceMasker::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation. 98587 (WebCore::RenderSVGResourceMasker::invalidateClient): Remove wrong assertion. 98588 (WebCore::RenderSVGResourceMasker::resourceBoundingBox): Remove no longer needed hack to initializer MaskerData earlier than applyResource() would do. 98589 * rendering/RenderSVGResourcePattern.cpp: 98590 (WebCore::RenderSVGResourcePattern::invalidateClients): Simplify code using markForLayoutAndResourceInvalidation. 98591 (WebCore::RenderSVGResourcePattern::invalidateClient): Remove wrong assertion. 98592 * rendering/RenderSVGText.cpp: 98593 (WebCore::RenderSVGText::layout): If our layout changed, invalidate our resources, by calling RenderSVGResource::invalidateAllResourcesOfRenderer(). 98594 * svg/SVGAnimateMotionElement.cpp: 98595 (WebCore::SVGAnimateMotionElement::applyResultsToTarget): Call RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) instead of renderer->setNeedsLayout(true). 98596 * svg/SVGAnimateTransformElement.cpp: 98597 (WebCore::SVGAnimateTransformElement::applyResultsToTarget): Ditto. 98598 * svg/SVGCircleElement.cpp: 98599 (WebCore::SVGCircleElement::svgAttributeChanged): Ditto. 98600 * svg/SVGEllipseElement.cpp: 98601 (WebCore::SVGEllipseElement::svgAttributeChanged): Ditto. 98602 * svg/SVGFEImageElement.cpp: 98603 (WebCore::SVGFEImageElement::notifyFinished): Ditto. 98604 * svg/SVGForeignObjectElement.cpp: 98605 (WebCore::SVGForeignObjectElement::svgAttributeChanged): Ditto. 98606 * svg/SVGGElement.cpp: 98607 (WebCore::SVGGElement::svgAttributeChanged): Ditto. 98608 * svg/SVGImageElement.cpp: 98609 (WebCore::SVGImageElement::svgAttributeChanged): Ditto. 98610 * svg/SVGLineElement.cpp: 98611 (WebCore::SVGLineElement::svgAttributeChanged): Ditto. 98612 * svg/SVGPathElement.cpp: 98613 (WebCore::SVGPathElement::svgAttributeChanged): Ditto. 98614 * svg/SVGPolyElement.cpp: 98615 (WebCore::SVGPolyElement::svgAttributeChanged): Ditto. 98616 * svg/SVGRectElement.cpp: 98617 (WebCore::SVGRectElement::svgAttributeChanged): Ditto. 98618 * svg/SVGSVGElement.cpp: 98619 (WebCore::SVGSVGElement::setCurrentScale): Ditto. 98620 (WebCore::SVGSVGElement::svgAttributeChanged): Ditto. 98621 (WebCore::SVGSVGElement::inheritViewAttributes): Ditto. 98622 * svg/SVGStopElement.cpp: 98623 (WebCore::SVGStopElement::SVGStopElement): Changed m_offset initialization from 0.0f to 0. 98624 (WebCore::SVGStopElement::svgAttributeChanged): Add missing implementation, calling RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) on offsetAttr changes. 98625 * svg/SVGStopElement.h: 98626 * svg/SVGStyledElement.cpp: 98627 (WebCore::SVGStyledElement::svgAttributeChanged): Don't call invalidateResourceInAncestorChain() on every attribute change, do it in all classes inheriting from us, 98628 for specific attributes. Also stop calling RenderSVGResource::invalidateAllResourcesOfRenderer(), all handled in the render tree now. 98629 (WebCore::SVGStyledElement::invalidateResourceClients): Early exit, if document is still parsing. 98630 * svg/SVGStyledElement.h: 98631 * svg/SVGTRefElement.cpp: 98632 (WebCore::SVGTRefElement::svgAttributeChanged): Call RenderSVGResource::markForLayoutAndParentResourceInvalidation(renderer) instead of renderer->setNeedsLayout(true). 98633 * svg/SVGTextElement.cpp: 98634 (WebCore::SVGTextElement::svgAttributeChanged): Ditto. 98635 * svg/SVGTextPathElement.cpp: 98636 (WebCore::SVGTextPathElement::svgAttributeChanged): Ditto. 98637 * svg/SVGTextPositioningElement.cpp: 98638 (WebCore::SVGTextPositioningElement::svgAttributeChanged): Ditto. 98639 * svg/SVGUseElement.cpp: 98640 (WebCore::SVGUseElement::svgAttributeChanged): Ditto. 98641 (WebCore::SVGUseElement::updateContainerSizes): Ditto. 98642 (WebCore::SVGUseElement::updateContainerOffsets): Ditto. 98643 98644 2010-07-16 Cosmin Truta <ctruta (a] chromium.org> 98645 98646 Reviewed by Eric Seidel. 98647 98648 Some SVGs with empty <g> elements crash Chromium on Linux 98649 https://bugs.webkit.org/show_bug.cgi?id=41175 98650 98651 Avoid painting of zero-sized image buffers. Skia can't handle it. 98652 98653 Test: svg/filters/filter-empty-g.svg 98654 98655 * WebCore/platform/graphics/skia/ImageBufferSkia.cpp: 98656 (ImageBuffer::ImageBuffer): 98657 98658 2010-07-16 Nate Chapin <japhet (a] chromium.org> 98659 98660 Reviewed by Darin Fisher. 98661 98662 Regression in r63100: Don't clear m_loadType in 98663 FrameLoader::handledOnloadEvents, as it is used 98664 to make some decisions after the load has actually 98665 completed. 98666 98667 Tickling this bug requires manipulation 98668 via the API (layout tests don't appear to traverse 98669 the correct codepath), so no layout test. 98670 98671 https://bugs.webkit.org/show_bug.cgi?id=42298 98672 98673 * loader/FrameLoader.cpp: 98674 (WebCore::FrameLoader::handledOnloadEvents): Don't reset m_loadType. 98675 (WebCore::FrameLoader::addExtraFieldsToRequest): Set subresource cache 98676 policy in one place and don't depend on m_loadType. 98677 98678 2010-07-15 Shinichiro Hamaji <hamaji (a] chromium.org> 98679 98680 Reviewed by Darin Adler. 98681 98682 Printing test results differ between machines, we should use ImageDiff instead 98683 https://bugs.webkit.org/show_bug.cgi?id=20011 98684 98685 Added spoolAllPagesWithBoundaries into PrintContext. 98686 98687 Test: printing/setPrinting.html 98688 98689 * WebCore.base.exp: 98690 * page/PrintContext.cpp: 98691 (WebCore::PrintContext::spoolAllPagesWithBoundaries): 98692 * page/PrintContext.h: 98693 98694 2010-07-15 Kent Tamura <tkent (a] chromium.org> 98695 98696 Unreviewed, small style fixes. 98697 98698 * platform/chromium/ThemeChromiumMac.mm: 98699 (WebCore::ThemeChromiumMac::inflateControlPaintRect): 98700 * platform/mac/ThemeMac.mm: 98701 (WebCore::ThemeMac::inflateControlPaintRect): 98702 98703 2010-07-15 Adam Barth <abarth (a] webkit.org> 98704 98705 Reviewed by Eric Seidel. 98706 98707 Update LegacyHTMLTreeBuilder to insert whitespace between </head> and <body> 98708 https://bugs.webkit.org/show_bug.cgi?id=42431 98709 98710 Insert these whitespace text nodes into the HTML element between <head> 98711 and <body>, as required by HTML5. Previously, we just dropped them on 98712 the floor. 98713 98714 * html/LegacyHTMLTreeBuilder.cpp: 98715 (WebCore::LegacyHTMLTreeBuilder::handleError): 98716 98717 2010-07-15 Victor Wang <victorw (a] chromium.org> 98718 98719 Reviewed by David Levin. 98720 98721 [chromium] update KURLGoogle decodeURLEscapeSequences to 98722 use googleurl public api so it does not access functions in 98723 url_canon_internal. This is for chromium multi-dll build. 98724 98725 https://bugs.webkit.org/show_bug.cgi?id=42177 98726 98727 Test: (unittest) WebKit\chromium\tests\KURLTest.cpp 98728 98729 * platform/KURLGoogle.cpp: 98730 (WebCore::decodeURLEscapeSequences): 98731 98732 2010-07-15 Kent Tamura <tkent (a] chromium.org> 98733 98734 Reviewed by Eric Seidel. 98735 98736 [Chromium] Update ThemeChromiumMac.mm for the recent changes of ThemeMac.mm 98737 https://bugs.webkit.org/show_bug.cgi?id=41932 98738 98739 Sync with ThemeMac.mm r61760. 98740 This change doesn't contain r54299, r57603, r57734, r57741, and 98741 r58533 because they conflict with Chromium change for 98742 FlippedView(). 98743 98744 * platform/chromium/ThemeChromiumMac.mm: 98745 (WebCore::sizeFromNSControlSize): 98746 (WebCore::sizeFromFont): 98747 (WebCore::controlSizeFromPixelSize): 98748 (WebCore::setControlSize): 98749 (WebCore::convertControlStatesToThemeDrawState): 98750 (WebCore::stepperSizes): 98751 (WebCore::stepperControlSizeForFont): 98752 (WebCore::paintStepper): 98753 (WebCore::ThemeChromiumMac::controlSize): 98754 (WebCore::ThemeChromiumMac::minimumControlSize): 98755 (WebCore::ThemeChromiumMac::inflateControlPaintRect): 98756 (WebCore::ThemeChromiumMac::paint): 98757 98758 2010-07-15 MORITA Hajime <morrita (a] google.com> 98759 98760 Reviewed by David Levin. 98761 98762 [Chromium][Win] Crashes with <keygen> with huge padding. 98763 https://bugs.webkit.org/show_bug.cgi?id=41737 98764 98765 When we try to draw a large region, TransparencyWin can fail to 98766 allocate a temporal buffer for composition. This change adds a 98767 fallback path to ThemePainter to handle the buffer allocation 98768 failure. 98769 98770 ThemePainter is no longer a subclass of TransparencyWin. It has 98771 a TransparencyWin as a member. 98772 98773 Test: fast/forms/large-parts.html 98774 98775 * rendering/RenderThemeChromiumWin.cpp: 98776 (WebCore::ThemePainter): Added a fallback path. 98777 98778 2010-07-15 Yuzo Fujishima <yuzo (a] google.com> 98779 98780 Reviewed by Darin Adler. 98781 98782 Fix for Bug 42362 - CSSSegmentedFontFace::isLoaded() const is not used anywhere 98783 Remove the method. 98784 https://bugs.webkit.org/show_bug.cgi?id=42362 98785 98786 No new tests because of no behavior changes. 98787 98788 * css/CSSSegmentedFontFace.cpp: 98789 * css/CSSSegmentedFontFace.h: 98790 98791 2010-07-15 Erik Arvidsson <arv (a] chromium.org> 98792 98793 Reviewed by David Levin. 98794 98795 Add directional property enums to the switch in applyProperty 98796 https://bugs.webkit.org/show_bug.cgi?id=42438 98797 98798 Build fix for chromium mac. 98799 98800 * css/CSSStyleSelector.cpp: 98801 (WebCore::CSSStyleSelector::applyProperty): 98802 98803 2010-07-13 Zhenyao Mo <zmo (a] google.com> 98804 98805 Reviewed by Nate Chapin. 98806 98807 bufferData and bufferSubData generate wrong error when null buffer is bound 98808 https://bugs.webkit.org/show_bug.cgi?id=42125 98809 98810 * html/canvas/WebGLRenderingContext.cpp: 98811 (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataParameters(). 98812 (WebCore::WebGLRenderingContext::bufferSubData): Ditto. 98813 (WebCore::WebGLRenderingContext::validateBufferDataParameters): Parameters validation for buffer{Sub}Data(). 98814 * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataParameters(). 98815 98816 2010-07-15 Jay Civelli <jcivelli (a] chromium.org> 98817 98818 Reviewed by David Levin. 98819 98820 [chromium] Making the popup label color visible when the item is 98821 selected. 98822 https://bugs.webkit.org/show_bug.cgi?id=42271 98823 98824 * platform/chromium/PopupMenuChromium.cpp: 98825 (WebCore::PopupListBox::paintRow): paint the label text with a 98826 different color when it is selected. 98827 98828 2010-07-13 Zhenyao Mo <zmo (a] google.com> 98829 98830 Reviewed by Nate Chapin. 98831 98832 WebGL rendering results must be made available to Canvas.toDataURL and 2D drawImage 98833 https://bugs.webkit.org/show_bug.cgi?id=34719 98834 98835 Tests: fast/canvas/webgl/canvas-test.html 98836 fast/canvas/webgl/gl-pixelstorei.html 98837 98838 * html/HTMLCanvasElement.cpp: 98839 (WebCore::HTMLCanvasElement::makeRenderingResultsAvailable): Paint the WebGL rendering results to canvas if it's 3d. 98840 (WebCore::HTMLCanvasElement::toDataURL): Paint the WebGL rendering results to canvas if it's 3d. 98841 * html/canvas/CanvasRenderingContext2D.cpp: 98842 (WebCore::CanvasRenderingContext2D::drawImage): Paint the WebGL rendering results to canvas if it's 3d before drawing. 98843 * html/canvas/WebGLRenderingContext.cpp: 98844 (WebCore::WebGLRenderingContext::markContextChanged): Mark it always for canvas2d.drawImage purpose. 98845 (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): Paint the WebGL rendering results to canvas if it's dirty. 98846 * html/canvas/WebGLRenderingContext.h: Declare paintRenderingResultsToCanvas(). 98847 * platform/graphics/GraphicsContext3D.h: Declare paintRenderingResultsToCanvas() & paintToCanvas(). 98848 * platform/graphics/cg/GraphicsContext3DCG.cpp: 98849 (WebCore::GraphicsContext3D::paintToCanvas): Paint the rendered image pixels to the canvas. 98850 * platform/graphics/mac/GraphicsContext3DMac.mm: 98851 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Implement paintRenderingResultsToCanvas(). 98852 * platform/graphics/qt/GraphicsContext3DQt.cpp: 98853 (WebCore::GraphicsContext3D::beginPaint): Just call paintRenderingResultsToCanvas(). 98854 (WebCore::GraphicsContext3D::endPaint): 98855 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Implement paintRenderingResultsToCanvas(). 98856 98857 2010-07-15 Nico Weber <thakis (a] chromium.org> 98858 98859 Reviewed by Ojan Vafai. 98860 98861 chromium/skia: Fix canvas.toDataURL in the presence of transparency 98862 https://bugs.webkit.org/show_bug.cgi?id=42214 98863 98864 The problem was that SkBitmaps contain premultiplied data, but pnglib 98865 doesn't expect premultiplied data. Now, the encoder unpremultiplies 98866 data before sending it to pnglib. 98867 98868 Patch partially by deanm. 98869 98870 Covered by fast/canvas/toDataURL-alpha.html. 98871 98872 * platform/image-encoders/skia/PNGImageEncoder.cpp: 98873 (WebCore::preMultipliedBGRAtoRGBA): 98874 (WebCore::encodeImpl): 98875 (WebCore::PNGImageEncoder::encode): 98876 98877 2010-07-15 Alex Nicolaou <anicolao (a] chromium.org> 98878 98879 Reviewed by Eric Seidel. 98880 98881 Convolution computation causes bad alpha channel values 98882 https://bugs.webkit.org/show_bug.cgi?id=42273 98883 98884 Fixed by clamping colour channel values to the alpha value so that 98885 r <= a, g <= a, and b <= a after the convolution is applied. See 98886 the bug for why I believe the SVG specification needs to be updated. 98887 Test must be drawn to crash. 100x100 green rectangle is used to 98888 indicate pass to minimize the chance of regression. 98889 98890 Test: svg/custom/convolution-crash.svg 98891 98892 * platform/graphics/skia/SkiaUtils.cpp: 98893 (WebCore::SkPMColorToColor): 98894 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: 98895 (WebCore::clampRGBAValue): 98896 (WebCore::setDestinationPixels): 98897 (WebCore::FEConvolveMatrix::fastSetInteriorPixels): 98898 (WebCore::FEConvolveMatrix::fastSetOuterPixels): 98899 98900 2010-07-15 Dumitru Daniliuc <dumi (a] chromium.org> 98901 98902 Unreviewed, Chromium-specific changes that I forgot to make in r63278. 98903 98904 1. DatabaseTrackerChromium::getMaxSizeForDatabase() is called on 98905 the context thread by sync DBs. 98906 2. Forgot to change V8SQLTransactionSyncCustom to return the 98907 result set when executeSql() is called. 98908 98909 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: 98910 (WebCore::V8SQLTransactionSync::executeSqlCallback): 98911 * storage/chromium/DatabaseTrackerChromium.cpp: 98912 (WebCore::DatabaseTracker::getMaxSizeForDatabase): 98913 98914 2010-07-15 Martin Robinson <mrobinson (a] igalia.com> 98915 98916 Reviewed by Oliver Hunt. 98917 98918 [GTK] Simplify the distribution step 98919 https://bugs.webkit.org/show_bug.cgi?id=42414 98920 98921 No new tests as this is just a build change. 98922 98923 * GNUmakefile.am: Modify EXTRA_DIST directly and make sure the list 98924 of files is sorted. Also handle distributing the IDL files from the 98925 WebCore source tree. 98926 98927 2010-07-15 Eric Seidel <eric (a] webkit.org> 98928 98929 Reviewed by Adam Barth. 98930 98931 LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5 98932 https://bugs.webkit.org/show_bug.cgi?id=42346 98933 98934 This turned out to be an easy fix. 98935 98936 This is covered by lots of layout tests. I believe 98937 all of the changed results to be progressions. 98938 98939 This change had no measurable effect on the parser benchmark. 98940 98941 * html/LegacyHTMLTreeBuilder.cpp: 98942 (WebCore::LegacyHTMLTreeBuilder::colCreateErrorCheck): 98943 (WebCore::LegacyHTMLTreeBuilder::getNode): 98944 * html/LegacyHTMLTreeBuilder.h: 98945 98946 2010-07-15 Sam Weinig <sam (a] webkit.org> 98947 98948 Reviewed by Oliver Hunt. 98949 98950 Patch for https://bugs.webkit.org/show_bug.cgi?id=42410 98951 Many leaking DatasetDOMStringMaps seen on buildbot 98952 98953 * dom/NodeRareData.h: 98954 (WebCore::NodeRareData::~NodeRareData): Add a virtual destructor so 98955 that the ElementRareData's destructor will be called when this is deleted 98956 from the Node's destructor. 98957 98958 2010-07-15 Chris Fleizach <cfleizach (a] apple.com> 98959 98960 Reviewed by Darin Adler. 98961 98962 AX: Crash when table has empty thead tag 98963 https://bugs.webkit.org/show_bug.cgi?id=42391 98964 98965 Test: accessibility/table-with-empty-thead-causes-crash.html 98966 98967 * accessibility/AccessibilityTableColumn.cpp: 98968 (WebCore::AccessibilityTableColumn::headerObjectForSection): 98969 98970 2010-07-15 Anders Carlsson <andersca (a] apple.com> 98971 98972 Reviewed by Sam Weinig. 98973 98974 Start loading plug-in streams 98975 https://bugs.webkit.org/show_bug.cgi?id=42407 98976 98977 Export some ResourceRequestBase getters. 98978 98979 * WebCore.exp.in: 98980 98981 2010-07-15 Kenneth Russell <kbr (a] google.com> 98982 98983 Reviewed by Nate Chapin. 98984 98985 Query of NUM_COMPRESSED_TEXTURE_FORMATS must be handled by WebGL 98986 https://bugs.webkit.org/show_bug.cgi?id=42401 98987 98988 No new tests; covered by gl-get-calls.html. 98989 98990 * html/canvas/WebGLRenderingContext.cpp: 98991 (WebCore::WebGLRenderingContext::getParameter): 98992 - Return 0 for getParameter(NUM_COMPRESSED_TEXTURE_FORMATS). 98993 98994 2010-07-07 John Gregg <johnnyg (a] google.com> 98995 98996 Reviewed by Jian Li. 98997 98998 Experimental directory upload feature. 98999 https://bugs.webkit.org/show_bug.cgi?id=40872 99000 99001 This patch adds a new HTML attribute webkitdirectory which applies to 99002 <input type="file"> tags and allows the user to specify a folder 99003 which is recursively enumerated so that all the files in that folder 99004 are added to the file list. 99005 99006 The files chosen in that way have a .webkitRelativePath attribute which contains 99007 the relative path starting from the chosen folder. The relative path is 99008 also appended to each item in the FormData when uploaded. 99009 99010 All the code is behind an ENABLE_DIRECTORY_UPLOAD flag. 99011 99012 Test: fast/forms/input-file-directory-upload.html 99013 99014 * html/Blob.cpp: 99015 (WebCore::Blob::Blob): 99016 * html/Blob.h: 99017 * html/File.cpp: 99018 (WebCore::File::File): 99019 (WebCore::File::Init): 99020 (WebCore::File::webkitRelativePath): 99021 * html/File.h: 99022 (WebCore::File::create): 99023 * html/File.idl: 99024 * html/HTMLAttributeNames.in: add webkitdirectory attribute 99025 * html/HTMLInputElement.cpp: 99026 (WebCore::HTMLInputElement::setFileListFromRenderer): 99027 (WebCore::HTMLInputElement::webkitdirectory): 99028 * html/HTMLInputElement.h: 99029 * html/HTMLInputElement.idl: 99030 * platform/BlobItem.cpp: 99031 (WebCore::FileBlobItem::create): 99032 (WebCore::FileBlobItem::FileBlobItem): 99033 * platform/BlobItem.h: 99034 (WebCore::FileBlobItem::relativePath): 99035 * platform/FileChooser.h: 99036 (WebCore::FileChooser::allowsDirectoryUpload): 99037 * platform/network/FormData.cpp: 99038 (WebCore::FormData::appendKeyValuePairItems): 99039 * rendering/RenderFileUploadControl.cpp: 99040 (WebCore::RenderFileUploadControl::allowsMultipleFiles): 99041 (WebCore::RenderFileUploadControl::allowsDirectoryUpload): 99042 * rendering/RenderFileUploadControl.h: 99043 99044 2010-07-15 Simon Fraser <simon.fraser (a] apple.com> 99045 99046 Reviewed by Dan Bernstein. 99047 99048 Avoid creating huge compositing layers for elements that project outside the viewport 99049 https://bugs.webkit.org/show_bug.cgi?id=42338 99050 99051 The logic that computed the bounds of compositing layers naively used the 99052 union of the bounds of descendant, non-composited RenderLayers, without regard 99053 to what is actually visible. This could result in huge layers for page with 99054 elements are large negative offsets, or with large negative text-indent (both 99055 common). 99056 99057 For elements without transforms on them or in their ancestor chain, and when 99058 no 3d transforms or hardware-accelerated animations are used, can clip compositing 99059 layers to the size of the document, or based on CSS overflow and clip. 99060 99061 Tests: compositing/geometry/limit-layer-bounds-clipping-ancestor.html 99062 compositing/geometry/limit-layer-bounds-fixed-positioned.html 99063 compositing/geometry/limit-layer-bounds-overflow-repaint.html 99064 compositing/geometry/limit-layer-bounds-positioned-transition.html 99065 compositing/geometry/limit-layer-bounds-positioned.html 99066 compositing/geometry/limit-layer-bounds-transformed-overflow.html 99067 compositing/geometry/limit-layer-bounds-transformed.html 99068 99069 * rendering/RenderLayerBacking.cpp: 99070 (WebCore::enclosingOverflowClipAncestor): Walk up the RenderLayer tree 99071 looking for an ancestor that has overflow, or to the root. Along the way, check for 99072 transformed elements. 99073 (WebCore::RenderLayerBacking::updateCompositedBounds): If we're in "consult 99074 overlap" mode, and we don't have transforms, then constrain the bounds 99075 of composited layers by the RenderView's layoutOverflowRect(), or by the 99076 enclosing layer with overflow. 99077 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): If the offset from the renderer changes, 99078 we need to repaint the layer. 99079 99080 2010-07-15 Alex Nicolaou <anicolao (a] chromium.org> 99081 99082 Reviewed by Dirk Schulze. 99083 99084 https://bugs.webkit.org/show_bug.cgi?id=42228 99085 99086 SVG Masks were in the wrong colour space for non-CG graphics layers, 99087 because for those cases ImageBuffer needs to be explicitly told to 99088 convert the pixels. This change adds a test that demonstrates the 99089 problem and the conversion call to make the mask LinearRGB. 99090 99091 Test: svg/custom/mask-colorspace.svg 99092 99093 * rendering/RenderSVGResourceMasker.cpp: 99094 (WebCore::RenderSVGResourceMasker::createMaskImage): 99095 99096 2010-07-15 Daniel Bates <dbates (a] rim.com> 99097 99098 Reviewed by Darin Adler. 99099 99100 [Mac] Implement LayoutTestController::markerTextForListItem() 99101 https://bugs.webkit.org/show_bug.cgi?id=37929 99102 99103 Export symbols for WebCore::markerTextForListItem() and WebCore::toElement(). 99104 99105 * WebCore.exp.in: 99106 99107 2010-07-15 Andreas Kling <andreas.kling (a] nokia.com> 99108 99109 Rubber-stamped by Kenneth Rohde Christiansen. 99110 99111 [Qt] Remove an unused variable in BitmapImage::draw() 99112 99113 * platform/graphics/qt/ImageQt.cpp: 99114 (WebCore::BitmapImage::draw): Remove selfSize. 99115 99116 2010-07-15 Yury Semikhatsky <yurys (a] chromium.org> 99117 99118 Reviewed by Pavel Feldman. 99119 99120 Web Inspector: pass all parameters to WebInspector.addConsoleMessage as a single payload object 99121 https://bugs.webkit.org/show_bug.cgi?id=42345 99122 99123 This refactoring is covered by existing console tests. 99124 99125 * bindings/js/ScriptArray.cpp: 99126 (WebCore::ScriptArray::set): 99127 * bindings/js/ScriptArray.h: 99128 (WebCore::ScriptArray::ScriptArray): 99129 (WebCore::ScriptArray::jsArray): 99130 * bindings/v8/ScriptArray.cpp: 99131 (WebCore::ScriptArray::set): 99132 * bindings/v8/ScriptArray.h: 99133 (WebCore::ScriptArray::ScriptArray): 99134 (WebCore::ScriptArray::~ScriptArray): 99135 * inspector/ConsoleMessage.cpp: 99136 (WebCore::ConsoleMessage::addToFrontend): 99137 * inspector/InspectorFrontend.cpp: 99138 (WebCore::InspectorFrontend::addConsoleMessage): 99139 * inspector/InspectorFrontend.h: 99140 * inspector/front-end/ConsoleView.js: 99141 (WebInspector.ConsoleView.prototype.updateMessageRepeatCount): 99142 (WebInspector.ConsoleMessage): 99143 (WebInspector.ConsoleMessage.createTextMessage): 99144 (WebInspector.ConsoleCommandResult): 99145 * inspector/front-end/ElementsPanel.js: 99146 (WebInspector.ElementsPanel.prototype.generateStylesheet): 99147 * inspector/front-end/InjectedScriptAccess.js: 99148 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName.myCallback): 99149 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): 99150 (InjectedScriptAccess._installHandler): 99151 * inspector/front-end/Resource.js: 99152 (WebInspector.Resource.prototype._checkWarning): 99153 * inspector/front-end/inspector.js: 99154 (WebInspector.updateConsoleMessageExpiredCount): 99155 (WebInspector.addConsoleMessage): 99156 (WebInspector.log.logMessage): 99157 (WebInspector.log): 99158 99159 2010-07-14 Tony Gentilcore <tonyg (a] chromium.org> 99160 99161 Reviewed by Darin Fisher. 99162 99163 Backfill DNS and connect times rather than exposing hard zeros 99164 https://bugs.webkit.org/show_bug.cgi?id=42303 99165 99166 There are several cases where domain lookup is not performed and/or a new connection is not established. Previously in these cases, we exposed a "0" to the API. Now, we instead "backfill" with the most recent mark's time. 99167 99168 Also, previously, I was using the ResourceLoadTiming API incorrectly. Each mark is an integer representing offset in milliseconds from requestTime. So all values need to be added to requestTime. 99169 99170 No new test because existing test expectations are set to FAIL because disable disabled by default. The expected results of existings tests change as expected when enabled. 99171 99172 * page/Timing.cpp: 99173 (WebCore::toIntegerMilliseconds): Move to file static instead of class static because it might generate more optimal code. Also, instead of converting negative doubles to zero, ASSERT that they are >= 0. This is because we no longer expose hard zeros for DNS and connect, so we want to be sure that the -1s returned by the API are properly handled. 99174 (WebCore::Timing::domainLookupStart): 99175 (WebCore::Timing::domainLookupEnd): 99176 (WebCore::Timing::connectStart): 99177 (WebCore::Timing::connectEnd): 99178 (WebCore::Timing::requestStart): 99179 (WebCore::Timing::requestEnd): 99180 (WebCore::Timing::responseStart): 99181 * page/Timing.h: 99182 99183 2010-07-15 Pavel Feldman <pfeldman (a] chromium.org> 99184 99185 Reviewed by Yury Semikhatsky. 99186 99187 Web Inspector: differentiate between blocking and connecting timers. 99188 99189 https://bugs.webkit.org/show_bug.cgi?id=42372 99190 99191 * inspector/InspectorResource.cpp: 99192 (WebCore::InspectorResource::InspectorResource): 99193 (WebCore::InspectorResource::updateResponse): 99194 (WebCore::InspectorResource::updateScriptObject): 99195 (WebCore::InspectorResource::buildObjectForTiming): 99196 * inspector/InspectorResource.h: 99197 * inspector/front-end/Resource.js: 99198 (WebInspector.Resource.prototype.get cached): 99199 (WebInspector.Resource.prototype.set cached): 99200 * inspector/front-end/ResourcesPanel.js: 99201 (WebInspector.ResourcesPanel.prototype._showPopover): 99202 (WebInspector.ResourceGraph): 99203 (WebInspector.ResourceGraph.prototype.refresh): 99204 (WebInspector.ResourceGraph.prototype._cachedChanged): 99205 * inspector/front-end/inspector.js: 99206 (WebInspector.updateResource): 99207 * loader/FrameLoader.cpp: 99208 (WebCore::FrameLoader::loadedResourceFromMemoryCache): 99209 * loader/FrameLoader.h: 99210 * platform/network/ResourceResponseBase.cpp: 99211 (WebCore::ResourceResponseBase::ResourceResponseBase): 99212 (WebCore::ResourceResponseBase::connectionReused): 99213 (WebCore::ResourceResponseBase::setConnectionID): 99214 * platform/network/ResourceResponseBase.h: 99215 99216 2010-07-15 MORITA Hajime <morrita (a] google.com> 99217 99218 Text layout is wrong with a SVG Font that lacks <missing-glyph> element 99219 https://bugs.webkit.org/show_bug.cgi?id=42352 99220 99221 floatWidthOfSubStringUsingSVGFont() calculated a wrong value for a 99222 sub-run, and a fallback to system font triggers such a computation. 99223 This change made floatWidthOfSubStringUsingSVGFont() to deal with 99224 sub-runs. 99225 99226 Test: svg/custom/svg-fonts-without-missing-glyph.xhtml 99227 99228 * svg/SVGFont.cpp: 99229 (WebCore::floatWidthOfSubStringUsingSVGFont): 99230 99231 2010-07-15 Nikolas Zimmermann <nzimmermann (a] rim.com> 99232 99233 Reviewed by Dirk Schulze. 99234 99235 Cycle detection needs to include shadow tree 99236 https://bugs.webkit.org/show_bug.cgi?id=42360 99237 99238 Search for cycles in shadow tree fragments as well. Extended the svg/custom/recursion-* tests. No more crashes in any of them. 99239 99240 * rendering/RenderSVGResourceContainer.h: 99241 (WebCore::RenderSVGResourceContainer::containsCyclicReference): 99242 * rendering/RenderSVGShadowTreeRootContainer.cpp: Implemented here, not inline, so that clients don't need to include SVGShadowTreeElements.h 99243 (WebCore::RenderSVGShadowTreeRootContainer::rootElement): Expose helper function, that returns the shadow tree root element as Node*. 99244 * rendering/RenderSVGShadowTreeRootContainer.h: 99245 99246 2010-07-15 Nikolas Zimmermann <nzimmermann (a] rim.com> 99247 99248 Reviewed by Dirk Schulze. 99249 99250 clipPath is missing cycle detection 99251 https://bugs.webkit.org/show_bug.cgi?id=42350 99252 99253 Detect cyclic clipper resources, and ignore them on rendering. Early exit in applyResource just like the pattern/mask resources do. 99254 99255 * rendering/RenderSVGResourceClipper.cpp: 99256 (WebCore::RenderSVGResourceClipper::applyResource): 99257 (WebCore::RenderSVGResourceClipper::hitTestClipContent): 99258 (WebCore::RenderSVGResourceClipper::childElementReferencesResource): 99259 * rendering/RenderSVGResourceClipper.h: 99260 99261 2010-07-15 Mark Rowe <mrowe (a] apple.com> 99262 99263 Reviewed by Maciej Stachowiak. 99264 99265 Fix a leak of Vector instances seen on the build bot. 99266 99267 * rendering/RenderObject.cpp: 99268 (WebCore::RenderObject::drawBoxSideFromPath): Don't unnecessarily heap allocate then leak the DashArray. 99269 99270 2010-07-15 Mark Rowe <mrowe (a] apple.com> 99271 99272 Update the sorting in the Xcode project files. 99273 99274 * WebCore.xcodeproj/project.pbxproj: 99275 99276 2010-07-15 Nikolas Zimmermann <nzimmermann (a] rim.com> 99277 99278 Reviewed by Eric Seidel. 99279 99280 SVG patterns and masks should not be able to reference themselves 99281 https://bugs.webkit.org/show_bug.cgi?id=32171 99282 99283 Pattern still had an issue, when using constructs like: 99284 <pattern id="pattern1" xlink:href="#pattern2"/> 99285 <pattern id="pattern2"><rect fill="url(#pattern1)"/></pattern> 99286 99287 Extended test svg/custom/recursive-pattern.svg to cover this situation. 99288 99289 * rendering/RenderSVGResourcePattern.cpp: 99290 (WebCore::RenderSVGResourcePattern::applyResource): Don't perform the cycle check against node()... 99291 (WebCore::RenderSVGResourcePattern::createTileImage): .. but against the "patternContentElement" which respect the xlink:href chaining. 99292 99293 2010-07-15 Nikolas Zimmermann <nzimmermann (a] rim.com> 99294 99295 Reviewed by Adam Barth. 99296 99297 Pixel test failure in moving-shadow-on-path.html and moving-shadow-on-container.html 99298 https://bugs.webkit.org/show_bug.cgi?id=42249 99299 99300 Partly revert <http://trac.webkit.org/changeset/63307>. The RenderSVGRoot change caused a pixel test regression in two fast/repaint tests. 99301 99302 * rendering/RenderSVGRoot.cpp: 99303 (WebCore::RenderSVGRoot::layout): Include selfNeedsLayout() check in LayoutStateRepainter argument. 99304 99305 2010-07-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 99306 99307 Unreviewed, rolling out r63352. 99308 http://trac.webkit.org/changeset/63352 99309 https://bugs.webkit.org/show_bug.cgi?id=42341 99310 99311 Broke plugin-initiate-popup-window.html and plugin-javascript- 99312 access.html on snow leopard (Requested by abarth on #webkit). 99313 99314 * bindings/v8/NPV8Object.cpp: 99315 (_NPN_EvaluateHelper): 99316 99317 2010-07-14 Eric Seidel <eric (a] webkit.org> 99318 99319 Reviewed by Adam Barth. 99320 99321 Make the LegacyHTMLTreeBuilder coalesce text nodes 99322 https://bugs.webkit.org/show_bug.cgi?id=42314 99323 99324 This is slightly tricky as we're side-stepping the old 99325 parsers insertion logic in the cases where we know we can 99326 safely merge text into an existing text node instead of 99327 inserting a new one. 99328 99329 This affects lots of tests (which will need to change for 99330 the HTML5 TreeBuilder anyway) and causes the LegacyHTMLTreeBuilder 99331 to now pass a bunch more subtests in html5lib/runner.html. 99332 99333 The parser benchmark thinks that this is a small speedup. 99334 I think I happen to have been lucky enough to get the right 99335 cache alignment, and that this is likely a wash. 99336 99337 * html/LegacyHTMLTreeBuilder.cpp: 99338 (WebCore::LegacyHTMLTreeBuilder::parseToken): 99339 99340 2010-07-14 Evan Stade <estade (a] chromium.org> 99341 99342 Reviewed by Kent Tamura. 99343 99344 [chromium] Linux scrollbar steppers are "clickable" even when disabled 99345 https://bugs.webkit.org/show_bug.cgi?id=42231 99346 99347 Not tested by layout tests. 99348 99349 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 99350 (WebCore::ScrollbarThemeChromiumLinux::paintButton): 99351 99352 2010-07-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 99353 99354 Unreviewed, rolling out r63389. 99355 http://trac.webkit.org/changeset/63389 99356 https://bugs.webkit.org/show_bug.cgi?id=42311 99357 99358 It broke the Chromium Linux build. (Requested by dave_levin on 99359 #webkit). 99360 99361 * platform/KURLGoogle.cpp: 99362 (WebCore::decodeURLEscapeSequences): 99363 99364 2010-07-13 Mirko Damiani <mirko (a] develer.com> 99365 99366 Reviewed by Simon Hausmann. 99367 99368 [Qt] CSS border style not cleared for SVG object 99369 https://bugs.webkit.org/show_bug.cgi?id=42150 99370 99371 For tests and description see: 99372 https://bugs.webkit.org/show_bug.cgi?id=25738 99373 99374 * platform/graphics/qt/GraphicsContextQt.cpp: 99375 (WebCore::GraphicsContext::setLineDash): 99376 99377 2010-07-14 Adam Barth <abarth (a] webkit.org> 99378 99379 Reviewed by Eric Seidel. 99380 99381 HTMLTreeBuilder shouldn't crash during fast/parser/remove-parser-current-node.html 99382 https://bugs.webkit.org/show_bug.cgi?id=42312 99383 99384 We were crashing because of an ASSERT I added to the attach logic in 99385 the HTMLConstructionSite. I knew this ASSERT was wrong when I added 99386 it, I just wanted to make sure we had test coverage of those cases. 99387 Turns out we do! :) 99388 99389 * html/HTMLConstructionSite.cpp: 99390 (WebCore::HTMLConstructionSite::attach): 99391 (WebCore::HTMLConstructionSite::attachAtSite): 99392 99393 2010-07-14 Victor Wang <victorw (a] chromium.org> 99394 99395 Reviewed by Darin Fisher. 99396 99397 [chromium] update KURLGoogle decodeURLEscapeSequences to 99398 use googleurl public api so it does not access functions in 99399 url_canon_internal. This is for chromium multi-dll build. 99400 99401 https://bugs.webkit.org/show_bug.cgi?id=42177 99402 99403 Test: (unittest) WebKit\chromium\tests\KURLTest.cpp 99404 99405 * platform/KURLGoogle.cpp: 99406 (WebCore::decodeURLEscapeSequences): 99407 99408 2010-07-14 Adam Barth <abarth (a] webkit.org> 99409 99410 Reviewed by Eric Seidel. 99411 99412 Avoid extra memcpy of character tokens 99413 https://bugs.webkit.org/show_bug.cgi?id=42002 99414 99415 Eric tells me this patch makes the new tree builder 1% faster than the 99416 old tree builder on our parser benchmark. 99417 99418 * html/HTMLToken.h: 99419 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 99420 (WebCore::AtomicHTMLToken::characters): 99421 * html/HTMLTreeBuilder.cpp: 99422 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer): 99423 (WebCore::convertToOldStyle): 99424 (WebCore::HTMLTreeBuilder::processFakeCharacters): 99425 99426 2010-07-14 Eric Seidel <eric (a] webkit.org> 99427 99428 Reviewed by Adam Barth. 99429 99430 HTMLTreeBuilder foster parents when it should not 99431 https://bugs.webkit.org/show_bug.cgi?id=42235 99432 99433 Regarding foster parenting of nodes inside tables: 99434 "Process the token using the rules for the "in body" insertion mode, 99435 except that if the current node is a table, tbody, tfoot, thead, or 99436 tr element, then, whenever a node would be inserted into the current 99437 node, it must instead be foster parented." 99438 99439 We were forgetting the "when the current node is" part of that check 99440 and always foster parenting, even if we had just inserted another 99441 element (which would have just changed the current node). 99442 99443 This was covered by multiple tests in html5lib/runner.html 99444 but I wrote a reduction (one which I included) as it makes it 99445 easier to see what's going on. 99446 99447 * html/HTMLConstructionSite.cpp: 99448 (WebCore::HTMLNames::causesFosterParenting): 99449 (WebCore::HTMLConstructionSite::attach): 99450 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 99451 (WebCore::HTMLConstructionSite::insertHTMLHeadElement): 99452 (WebCore::HTMLConstructionSite::insertHTMLBodyElement): 99453 (WebCore::HTMLConstructionSite::insertTextNode): 99454 (WebCore::HTMLConstructionSite::shouldFosterParent): 99455 * html/HTMLConstructionSite.h: 99456 * html/HTMLTreeBuilder.cpp: 99457 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 99458 99459 2010-07-14 Brady Eidson <beidson (a] apple.com> 99460 99461 Reviewed by Mark Rowe. 99462 99463 <rdar://problem/8131355> Apps load stale versions of pages when initial load happens via back/forward navigation. 99464 99465 No test case is added because DumpRenderTree is not able to test the scenario where the initial load in a WebView 99466 occurs via a back/forward navigation. 99467 99468 * loader/FrameLoader.cpp: 99469 (WebCore::FrameLoader::navigateToDifferentDocument): When the first load in a page is a back/forward navigation, we 99470 shouldn't try to prefer cached data but should do revalidation by default. 99471 (WebCore::FrameLoader::addExtraFieldsToRequest): Ditto. 99472 99473 2010-07-14 James Robinson <jamesr (a] chromium.org> 99474 99475 Reviewed by Darin Fisher. 99476 99477 Breaks all dependencies on Page from platform/ and cleans up GLES2Context lifetime 99478 https://bugs.webkit.org/show_bug.cgi?id=42203 99479 99480 Rather than constructing a GLES2Context from a Page, pass the LayerRendererChromium 99481 a GLES2Context in from the constructor. This way the platform/ directory can remain 99482 ignorant of Page and friends. Also adds functions on ChromeClientChromium to request 99483 onscreen and offscreen GLES2Contexts for callers in WebCore that need them. 99484 99485 * page/chromium/ChromeClientChromium.h: 99486 * platform/chromium/GLES2Context.h: 99487 * platform/graphics/chromium/LayerRendererChromium.cpp: 99488 (WebCore::LayerRendererChromium::create): 99489 (WebCore::LayerRendererChromium::LayerRendererChromium): 99490 * platform/graphics/chromium/LayerRendererChromium.h: 99491 99492 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 99493 99494 Reviewed by Darin Adler. 99495 99496 Add functions to extract individual RGBA32 components 99497 https://bugs.webkit.org/show_bug.cgi?id=42305 99498 99499 * html/canvas/CanvasRenderingContext2D.cpp: 99500 (WebCore::CanvasRenderingContext2D::willDraw): Use alphaChannel() 99501 * platform/graphics/Color.h: 99502 (WebCore::redChannel): 99503 (WebCore::greenChannel): 99504 (WebCore::blueChannel): 99505 (WebCore::alphaChannel): 99506 (WebCore::Color::red): 99507 (WebCore::Color::green): 99508 (WebCore::Color::blue): 99509 (WebCore::Color::alpha): 99510 99511 2010-07-14 Alexey Proskuryakov <ap (a] apple.com> 99512 99513 Not reviewed. 99514 99515 https://bugs.webkit.org/show_bug.cgi?id=42201 99516 Use ResourceHandle object for synchronous loading 99517 99518 * platform/network/mac/ResourceHandleMac.mm: 99519 (WebCore::ResourceHandle::loadResourceSynchronously): Fix an obvious typo. 99520 99521 2010-07-14 Alexey Proskuryakov <ap (a] apple.com> 99522 99523 Reviewed by Brady Eidson. 99524 99525 https://bugs.webkit.org/show_bug.cgi?id=42201 99526 Use ResourceHandle object for synchronous loading 99527 99528 Fix a Tiger test failure. 99529 99530 Setting NSURLRequest properties has been moved to createNSURLConnection to share code between 99531 sync and async cases, but on Tiger, we don't call this function. 99532 99533 There is more refactoring needed to make this nice, and we need to figure out if some of 99534 request-tweaking code in createNSURLConnection needs to run on every redirect, as it happens 99535 with CFNetwork version. 99536 99537 * platform/network/mac/ResourceHandleMac.mm: 99538 (WebCore::ResourceHandle::loadResourceSynchronously): Set main document for cookies, which is 99539 the only thing we've been missing. 99540 99541 2010-07-14 Mark Rowe <mrowe (a] apple.com> 99542 99543 Rubber-stamped by Dan Bernstein. 99544 99545 * WebCore.xcodeproj/project.pbxproj: Silence rsync. 99546 99547 2010-07-14 Darin Adler <darin (a] apple.com> 99548 99549 Reviewed by Gavin Barraclough. 99550 99551 Fix warning seen with newer gcc (on Qt buildbot). 99552 99553 * html/HTMLTreeBuilder.cpp: 99554 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 99555 Add parentheses around && expression. 99556 99557 2010-07-14 Adam Barth <abarth (a] webkit.org> 99558 99559 Reviewed by Eric Seidel. 99560 99561 Avoid extra memcpy of character tokens 99562 https://bugs.webkit.org/show_bug.cgi?id=42002 99563 99564 This patch is just some cleanup to make fixing this bug easier. 99565 99566 * html/HTMLTreeBuilder.cpp: 99567 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer): 99568 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::~ExternalCharacterTokenBuffer): 99569 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::isEmpty): 99570 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace): 99571 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace): 99572 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemaining): 99573 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::giveRemainingTo): 99574 (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace): 99575 (WebCore::HTMLTreeBuilder::processDoctypeToken): 99576 (WebCore::HTMLTreeBuilder::processStartTag): 99577 (WebCore::HTMLTreeBuilder::processEndTag): 99578 (WebCore::HTMLTreeBuilder::processComment): 99579 (WebCore::HTMLTreeBuilder::processCharacter): 99580 (WebCore::HTMLTreeBuilder::processCharacterBuffer): 99581 (WebCore::HTMLTreeBuilder::processEndOfFile): 99582 (WebCore::HTMLTreeBuilder::defaultForInitial): 99583 (WebCore::HTMLTreeBuilder::defaultForBeforeHTML): 99584 (WebCore::HTMLTreeBuilder::defaultForBeforeHead): 99585 (WebCore::HTMLTreeBuilder::defaultForInHead): 99586 (WebCore::HTMLTreeBuilder::defaultForInHeadNoscript): 99587 (WebCore::HTMLTreeBuilder::defaultForAfterHead): 99588 (WebCore::HTMLTreeBuilder::defaultForInTableText): 99589 * html/HTMLTreeBuilder.h: 99590 99591 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 99592 99593 Reviewed by Darin Adler. 99594 99595 Canvas: Don't add shadow rect to dirty region when shadow alpha is 0 99596 https://bugs.webkit.org/show_bug.cgi?id=42300 99597 99598 * html/canvas/CanvasRenderingContext2D.cpp: 99599 (WebCore::CanvasRenderingContext2D::willDraw): 99600 99601 2010-07-14 Kevin Ollivier <kevino (a] theolliviers.com> 99602 99603 [CURL] Build fix after request -> firstRequest rename. 99604 99605 * platform/network/curl/FormDataStreamCurl.cpp: 99606 (WebCore::FormDataStream::read): 99607 (WebCore::FormDataStream::hasMoreElements): 99608 * platform/network/curl/ResourceHandleManager.cpp: 99609 (WebCore::headerCallback): 99610 (WebCore::ResourceHandleManager::setupPOST): 99611 (WebCore::parseDataUrl): 99612 (WebCore::ResourceHandleManager::dispatchSynchronousJob): 99613 (WebCore::ResourceHandleManager::startJob): 99614 (WebCore::ResourceHandleManager::initializeHandle): 99615 99616 2010-07-14 Simon Fraser <simon.fraser (a] apple.com> 99617 99618 Reviewed by John Sullivan. 99619 99620 <rdar://problem/8186963> Expose information about compositing layers. 99621 99622 Expose information about the types of compositing layers via RenderLayerBacking::compositingLayerType(). 99623 99624 * WebCore.exp.in: Export WebCore::SpaceSplitStringData::createVector(). 99625 * WebCore.xcodeproj/project.pbxproj: Make RenderLayerBacking.h a Private header for use by WebKit. 99626 * platform/graphics/GraphicsLayer.h: Add hasContentsLayer() and usingTiledLayer() methods. 99627 (WebCore::GraphicsLayer::hasContentsLayer): 99628 (WebCore::GraphicsLayer::usingTiledLayer): 99629 * platform/graphics/mac/GraphicsLayerCA.h: 99630 (WebCore::GraphicsLayerCA::hasContentsLayer): Return true if we have a contents layer. 99631 * rendering/RenderLayerBacking.cpp: 99632 (WebCore::RenderLayerBacking::compositingLayerType): Return information about the type of composited layer. 99633 * rendering/RenderLayerBacking.h: 99634 99635 2010-07-14 Darin Adler <darin (a] apple.com> 99636 99637 Reviewed by Sam Weinig. 99638 99639 TreeWalker::previousSibling calls firstChild instead of lastChild when handling FILTER_SKIP 99640 https://bugs.webkit.org/show_bug.cgi?id=42008 99641 99642 TreeWalker::previousNode does not handle FILTER_REJECT when processing lastChild 99643 https://bugs.webkit.org/show_bug.cgi?id=42010 99644 99645 Tests: fast/dom/TreeWalker/previousNodeLastChildReject.html 99646 fast/dom/TreeWalker/previousSiblingLastChildSkip.html 99647 99648 * dom/TreeWalker.cpp: 99649 (WebCore::TreeWalker::previousSibling): Call lastChild instead of firstChild. 99650 (WebCore::TreeWalker::previousNode): Fix handling of FILTER_REJECT by exiting 99651 the lastChild loop when we encounter it. 99652 99653 2010-07-14 Sam Weinig <sam (a] webkit.org> 99654 99655 Reviewed by Brady Eidson. 99656 99657 Fix crashing layout test on snowleopard. 99658 99659 * platform/mac/CursorMac.mm: 99660 (WebCore::Cursor::ensurePlatformCursor): Make sure to retain the cursor. 99661 99662 2010-07-14 Chris Fleizach <cfleizach (a] apple.com> 99663 99664 Reviewed by Darin Adler. 99665 99666 AX: aria-checked not recognized on image map radio buttons 99667 https://bugs.webkit.org/show_bug.cgi?id=42055 99668 99669 Moves some code from AccessibilityRenderObject to AccessibilityObject so that 99670 elements that do not have render objects, but do have Nodes (like image map links 99671 and list box options) can still make use of certain aria attributes. 99672 99673 Test: platform/mac/accessibility/image-map-link-used-as-radiobutton.html 99674 99675 * accessibility/AccessibilityImageMapLink.cpp: 99676 (WebCore::AccessibilityImageMapLink::roleValue): 99677 (WebCore::AccessibilityImageMapLink::accessibilityDescription): 99678 (WebCore::AccessibilityImageMapLink::title): 99679 Make imageMap use standard AccessibilityObject methods for getAttribute() 99680 * accessibility/AccessibilityImageMapLink.h: 99681 (WebCore::AccessibilityImageMapLink::node): 99682 * accessibility/AccessibilityListBoxOption.cpp: 99683 (WebCore::AccessibilityListBoxOption::accessibilityIsIgnored): 99684 (WebCore::AccessibilityListBoxOption::stringValue): 99685 * accessibility/AccessibilityListBoxOption.h: 99686 (WebCore::AccessibilityListBoxOption::node): 99687 * accessibility/AccessibilityObject.cpp: 99688 (WebCore::AccessibilityObject::language): 99689 Language method doesn't need a node() anymore, it can use the node from AccessibilityObject. 99690 (WebCore::renderListItemContainerForNode): 99691 (WebCore::AccessibilityObject::getAttribute): 99692 (WebCore::AccessibilityObject::intValue): 99693 Move intValue into AccessibilityObject. 99694 (WebCore::AccessibilityObject::hasIntValue): 99695 * accessibility/AccessibilityObject.h: 99696 (WebCore::AccessibilityObject::isCheckbox): 99697 (WebCore::AccessibilityObject::isRadioButton): 99698 (WebCore::AccessibilityObject::isCheckboxOrRadio): 99699 Consolidate what defines a checkbox and radio button into AccessibilityObject. 99700 (WebCore::AccessibilityObject::node): 99701 (WebCore::AccessibilityObject::headingLevel): 99702 (WebCore::AccessibilityObject::isDetached): 99703 * accessibility/AccessibilityRenderObject.cpp: 99704 (WebCore::AccessibilityRenderObject::isPasswordField): 99705 (WebCore::AccessibilityRenderObject::headingLevel): 99706 (WebCore::AccessibilityRenderObject::selectedTabItem): 99707 (WebCore::AccessibilityRenderObject::hierarchicalLevel): 99708 (WebCore::AccessibilityRenderObject::node): 99709 (WebCore::AccessibilityRenderObject::intValue): 99710 * accessibility/AccessibilityRenderObject.h: 99711 * rendering/RenderMenuList.cpp: 99712 (WebCore::RenderMenuList::itemAccessibilityText): 99713 Stop using AccessibilityObjects getAttribute (no reason to use it really). 99714 99715 2010-07-14 Dan Bernstein <mitz (a] apple.com> 99716 99717 Reviewed by Simon Fraser. 99718 99719 <rdar://problem/7759909> Certain text runs measure 1 pixel wider when measured as a whole than when measured piecewise 99720 https://bugs.webkit.org/show_bug.cgi?id=42279 99721 99722 No test because the issue cannot be reproduced with standard fonts. 99723 99724 Word- and run-rounding works by advancing ahead to the nearest integral width. As the total 99725 width accumulated becomes large, the float types low precision results in accumulated rounding 99726 error, sometimes crossing an integer. Consequently, word-rounding makes different decisions when 99727 measuring a multi-word run than when measuring its words individually. To work around this, 99728 word- and run-rounding are applied only to the width accumulated since the last rounding 99729 character. 99730 99731 * platform/graphics/WidthIterator.cpp: 99732 (WebCore::WidthIterator::advance): 99733 * platform/graphics/mac/ComplexTextController.cpp: 99734 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 99735 99736 2010-07-14 Tony Gentilcore <tonyg (a] chromium.org> 99737 99738 Reviewed by Darin Adler. 99739 99740 Fix enum value names for Navigation.{idl|h} 99741 https://bugs.webkit.org/show_bug.cgi?id=42282 99742 99743 This is necessary after https://bugs.webkit.org/show_bug.cgi?id=42250. 99744 99745 No new tests because no new functionality. 99746 99747 * page/Navigation.cpp: 99748 (WebCore::Navigation::type): 99749 * page/Navigation.h: 99750 (WebCore::Navigation::): 99751 99752 2010-07-14 Johnny Ding <jnd (a] chromium.org> 99753 99754 Reviewed by Adam Barth. 99755 99756 https://bugs.webkit.org/show_bug.cgi?id=41292 99757 Set right UserGestureIndicator to indicate whether the NPN_Evaluate allows popup window or not. 99758 99759 Test: plugins/plugin-initiate-popup-window.html 99760 99761 * bindings/v8/NPV8Object.cpp: 99762 (_NPN_EvaluateHelper): 99763 99764 2010-07-14 Chris Fleizach <cfleizach (a] apple.com> 99765 99766 Reviewed by Darin Adler. 99767 99768 Bug 42117 - AX: Data table heuristics: consider assuming data table for 'zebra-striped' rows 99769 https://bugs.webkit.org/show_bug.cgi?id=42117 99770 99771 Test: platform/mac/accessibility/table-with-zebra-rows.html 99772 99773 * accessibility/AccessibilityTable.cpp: 99774 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): 99775 99776 2010-07-14 Chris Fleizach <cfleizach (a] apple.com> 99777 99778 Reviewed by Darin Adler. 99779 99780 AX: VoiceOver cannot navigate this page because Safari is taking too long 99781 https://bugs.webkit.org/show_bug.cgi?id=42219 99782 99783 No tests. Existing tests cover change. 99784 99785 * accessibility/AccessibilityRenderObject.cpp: 99786 (WebCore::AccessibilityRenderObject::boundingBoxRect): 99787 99788 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 99789 99790 Reviewed by Darin Adler. 99791 99792 Canvas: Fast-path for assigning the same color string as before to fillStyle or strokeStyle 99793 https://bugs.webkit.org/show_bug.cgi?id=42272 99794 99795 Always route assignment of color strings via setFillColor() or setStrokeColor() 99796 where we can check it against the previous value and return early if it's the same. 99797 99798 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 99799 (WebCore::toHTMLCanvasStyle): 99800 (WebCore::JSCanvasRenderingContext2D::strokeStyle): 99801 (WebCore::JSCanvasRenderingContext2D::setStrokeStyle): 99802 (WebCore::JSCanvasRenderingContext2D::setFillStyle): 99803 * html/canvas/CanvasRenderingContext2D.cpp: 99804 (WebCore::CanvasRenderingContext2D::setStrokeStyle): 99805 (WebCore::CanvasRenderingContext2D::setFillStyle): 99806 (WebCore::CanvasRenderingContext2D::setStrokeColor): 99807 (WebCore::CanvasRenderingContext2D::setFillColor): 99808 * html/canvas/CanvasRenderingContext2D.h: 99809 99810 2010-07-14 Kinuko Yasuda <kinuko (a] chromium.org> 99811 99812 Reviewed by Jian Li. 99813 99814 Separate line-ending conversion code from BlobItem 99815 https://bugs.webkit.org/show_bug.cgi?id=40932 99816 99817 Add common line-ending normalization code under platform/text. 99818 No new tests as it doesn't change any functionality. 99819 99820 * CMakeLists.txt: 99821 * GNUmakefile.am: 99822 * WebCore.gypi: 99823 * WebCore.pro: 99824 * WebCore.vcproj/WebCore.vcproj: 99825 * WebCore.xcodeproj/project.pbxproj: 99826 * html/BlobBuilder.cpp: 99827 (WebCore::BlobBuilder::appendString): 99828 * html/FormDataList.cpp: 99829 (WebCore::FormDataList::appendString): 99830 * platform/BlobItem.cpp: 99831 * platform/BlobItem.h: 99832 * platform/text/LineEnding.cpp: Added. 99833 * platform/text/LineEnding.h: Added. 99834 99835 2010-07-14 Erik Arvidsson <arv (a] chromium.org> 99836 99837 Reviewed by Darin Adler. 99838 99839 Implement border-start and border-end properties 99840 https://bugs.webkit.org/show_bug.cgi?id=41782 99841 99842 Test: fast/css/border-start-end.html 99843 99844 * css/CSSComputedStyleDeclaration.cpp: 99845 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 99846 * css/CSSParser.cpp: 99847 (WebCore::CSSParser::parseValue): 99848 * css/CSSProperty.cpp: 99849 (WebCore::CSSProperty::resolveDirectionAwareProperty): 99850 * css/CSSPropertyNames.in: 99851 * inspector/front-end/SourceCSSTokenizer.js: 99852 (WebInspector.SourceCSSTokenizer): 99853 99854 2010-07-14 Alexey Proskuryakov <ap (a] apple.com> 99855 99856 Tiger and Gtk build fixes. 99857 99858 https://bugs.webkit.org/show_bug.cgi?id=42201 99859 Use ResourceHandle object for synchronous loading 99860 99861 * platform/network/mac/ResourceHandleMac.mm: 99862 (WebCore::ResourceHandle::createNSURLConnection): 99863 (WebCore::ResourceHandle::loadResourceSynchronously): 99864 * platform/network/soup/ResourceHandleSoup.cpp: 99865 (WebCore::startHttp): 99866 99867 2010-07-14 Sam Weinig <sam (a] webkit.org> 99868 99869 Reviewed by Darin Adler. 99870 99871 Patch for https://bugs.webkit.org/show_bug.cgi?id=42232 99872 Make changing Cursors work in WebKit2. 99873 99874 - Converted Mac and Windows Cursor implementations to lazily 99875 create the platform cursor. 99876 - Add HostWindow function to set the cursor and use it from Widget::setCursor. 99877 - Rework Windows cursor code to use fewer global variables. 99878 99879 * WebCore.exp.in: Updated 99880 * loader/EmptyClients.h: 99881 (WebCore::EmptyChromeClient::setCursor): 99882 (WebCore::EmptyChromeClient::setLastSetCursorToCurrentCursor): 99883 Added empty implementations. 99884 99885 * page/Chrome.cpp: 99886 (WebCore::Chrome::setCursor): 99887 * page/Chrome.h: 99888 * page/ChromeClient.h: 99889 Change existing setCursor() function to take a Cursor instead of a 99890 PlatformCursorHandle. Added setLastSetCursorToCurrentCursor. 99891 99892 * platform/Cursor.cpp: 99893 * platform/Cursor.h: 99894 Added Cursor Type and the option of lazily creating the native cursor 99895 (used on Mac and Windows for now). 99896 99897 * platform/HostWindow.h: 99898 Add setCursor. 99899 99900 * platform/mac/CursorMac.mm: 99901 (WebCore::createCustomCursor): This no longer needs to call determineHotSpot 99902 as that is done when on construction of the cursor now and the hotSpot passed 99903 in is correct. 99904 (WebCore::Cursor::ensurePlatformCursor): 99905 (WebCore::Cursor::Cursor): 99906 (WebCore::Cursor::~Cursor): 99907 (WebCore::Cursor::operator=): 99908 (WebCore::Cursor::platformCursor): 99909 Convert to lazily creating the native cursor on the first request and 99910 storing the type. 99911 99912 * platform/mac/WidgetMac.mm: 99913 (WebCore::Widget::setCursor): 99914 Use HostWindow::setCursor to set the cursor. This in turn will call the 99915 ChromeClient. 99916 99917 * platform/win/CursorWin.cpp: 99918 (WebCore::createSharedCursor): 99919 (WebCore::loadSharedCursor): 99920 (WebCore::loadCursorByName): 99921 (WebCore::Cursor::ensurePlatformCursor): 99922 (WebCore::SharedCursor::~SharedCursor): 99923 (WebCore::Cursor::Cursor): 99924 (WebCore::Cursor::~Cursor): 99925 (WebCore::Cursor::operator=): 99926 (WebCore::Cursor::platformCursor): 99927 Convert to lazily creating the native cursor on the first request and 99928 storing the type. 99929 99930 * platform/win/WidgetWin.cpp: 99931 (WebCore::Widget::setCursor): 99932 Use HostWindow::setCursor to set the cursor. This in turn will call the 99933 ChromeClient. 99934 99935 * plugins/win/PluginViewWin.cpp: 99936 (WebCore::PluginView::handleMouseEvent): 99937 Use the new setLastSetCursorToCurrentCursor client function to ensure 99938 the cursor is properly updated when over a plugin. 99939 99940 * platform/chromium/CursorChromium.cpp: 99941 * platform/efl/CursorEfl.cpp: 99942 * platform/gtk/CursorGtk.cpp: 99943 * platform/haiku/CursorHaiku.cpp: 99944 * platform/wince/CursorWince.cpp: 99945 * platform/wx/CursorWx.cpp: 99946 * platform/qt/CursorQt.cpp: 99947 Change m_impl -> m_platformCursor. 99948 99949 2010-07-13 Eric Seidel <eric (a] webkit.org> 99950 99951 Reviewed by Adam Barth. 99952 99953 reconstructActiveFormElements should reconstruct attributes as well 99954 https://bugs.webkit.org/show_bug.cgi?id=42222 99955 99956 The case in question is "<p><b foo='bar'></p>text</b>". 99957 When the "b" is re-opened to wrap the text it should include 99958 any attributes from the original (now closed) tag name. 99959 99960 There are also similar cases for the Adoption Agency algorithm, but since 99961 the html5lib test suite did not cover those (and it wasn't immediately 99962 obvious to me how to test those) I've saved fixing that bug for a 99963 later patch. For now I've just made the adoption agency use 99964 HTMLConstructionSite::createHTMLElementFromElementRecord so the 99965 FIXME can be in one place instead of two. 99966 99967 In order to cleanly support createHTMLElementFromSavedElement 99968 I re-factored "attachToCurrent" out from createHTMLElementAndAttachToCurrent 99969 and changed all callers to use attachToCurrent(createHTMLElement(token)). 99970 99971 This is covered by two existing tests in html5lib/runner.html 99972 and I wrote two more. One to cover the basic case that we now pass 99973 and a second to cover an evil edge case which we do not. 99974 99975 * html/HTMLConstructionSite.cpp: 99976 (WebCore::HTMLConstructionSite::attachToCurrent): 99977 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 99978 (WebCore::HTMLConstructionSite::insertHTMLHeadElement): 99979 (WebCore::HTMLConstructionSite::insertHTMLBodyElement): 99980 (WebCore::HTMLConstructionSite::insertHTMLElement): 99981 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): 99982 (WebCore::HTMLConstructionSite::insertScriptElement): 99983 (WebCore::HTMLConstructionSite::insertForeignElement): 99984 (WebCore::HTMLConstructionSite::createHTMLElementFromElementRecord): 99985 (WebCore::HTMLConstructionSite::createHTMLElementFromSavedElement): 99986 (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements): 99987 * html/HTMLConstructionSite.h: 99988 * html/HTMLTreeBuilder.cpp: 99989 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 99990 99991 2010-07-13 Alexey Proskuryakov <ap (a] apple.com> 99992 99993 Reviewed by Darin Adler. 99994 99995 https://bugs.webkit.org/show_bug.cgi?id=42201 99996 Use ResourceHandle object for synchronous loading 99997 99998 * platform/network/ResourceHandle.cpp: 99999 (WebCore::ResourceHandle::ResourceHandle): Moved common tasks from create() to constructor. 100000 (WebCore::ResourceHandle::firstRequest): Renamed from request(). This is not changed with 100001 redirect, so the old name was quite confusing. 100002 100003 * platform/network/ResourceHandle.h: Made createNSURLConnection() a member function, since 100004 it now needs access to both ResourceHandle and ResourceHandleInternal. Added createCFURLConnection(). 100005 100006 * platform/network/ResourceHandleInternal.h: 100007 (WebCore::ResourceHandleInternal::ResourceHandleInternal): Renamed m_request to m_firstRequest. 100008 100009 * platform/network/mac/ResourceHandleMac.mm: 100010 (WebCoreSynchronousLoaderClient): Replaced an Objective C delegate class with a ResourceHandleClient 100011 subclass. This allows for much better code sharing, with common logic is in ResourceHandle. 100012 (WebCore::ResourceHandle::createNSURLConnection): Factored out more code that is common 100013 between sync and async parts. 100014 (WebCore::ResourceHandle::start): Ditto. 100015 (WebCore::ResourceHandle::cancel): Updated for firstRequest() renaming. 100016 (WebCore::ResourceHandle::loadResourceSynchronously): Use ResourceHandle and ResourceHandleClient, 100017 like a good loader. 100018 (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Updated for firstRequest() renaming. 100019 (WebCore::ResourceHandle::receivedCredential): Ditto. 100020 (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Ditto. 100021 (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Ditto. 100022 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): Ditto. 100023 (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]): Ditto. 100024 100025 * platform/network/cf/ResourceHandleCFNet.cpp: 100026 (WebCore::WebCoreSynchronousLoaderClient::create): 100027 (WebCore::WebCoreSynchronousLoaderClient::setAllowStoredCredentials): 100028 (WebCore::WebCoreSynchronousLoaderClient::isDone): 100029 (WebCore::WebCoreSynchronousLoaderClient::data): 100030 (WebCore::WebCoreSynchronousLoaderClient::WebCoreSynchronousLoaderClient): 100031 (WebCore::willSendRequest): 100032 (WebCore::didReceiveResponse): 100033 (WebCore::didReceiveData): 100034 (WebCore::shouldUseCredentialStorageCallback): 100035 (WebCore::didFinishLoading): 100036 (WebCore::didFail): 100037 (WebCore::didReceiveChallenge): 100038 (WebCore::ResourceHandleInternal::~ResourceHandleInternal): 100039 (WebCore::ResourceHandle::~ResourceHandle): 100040 (WebCore::ResourceHandle::createCFURLConnection): 100041 (WebCore::ResourceHandle::start): 100042 (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): 100043 (WebCore::ResourceHandle::receivedCredential): 100044 (WebCore::ResourceHandle::loadResourceSynchronously): 100045 (WebCore::WebCoreSynchronousLoaderClient::willSendRequest): 100046 (WebCore::WebCoreSynchronousLoaderClient::didReceiveResponse): 100047 (WebCore::WebCoreSynchronousLoaderClient::didReceiveData): 100048 (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading): 100049 (WebCore::WebCoreSynchronousLoaderClient::didFail): 100050 (WebCore::WebCoreSynchronousLoaderClient::didReceiveAuthenticationChallenge): 100051 (WebCore::WebCoreSynchronousLoaderClient::shouldUseCredentialStorage): 100052 Same changes for CFNetwork version. Now it's a more direct copy/paste than before, some 100053 day we'll share the code. 100054 100055 * loader/MainResourceLoader.cpp: 100056 (WebCore::MainResourceLoader::continueAfterContentPolicy): 100057 * loader/appcache/ApplicationCacheGroup.cpp: 100058 (WebCore::ApplicationCacheGroup::createResourceHandle): 100059 (WebCore::ApplicationCacheGroup::didReceiveResponse): 100060 (WebCore::ApplicationCacheGroup::didFinishLoading): 100061 (WebCore::ApplicationCacheGroup::didFail): 100062 (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): 100063 * loader/icon/IconLoader.cpp: 100064 (WebCore::IconLoader::didReceiveResponse): 100065 (WebCore::IconLoader::didFail): 100066 (WebCore::IconLoader::didFinishLoading): 100067 * platform/network/curl/ResourceHandleManager.cpp: 100068 (WebCore::headerCallback): 100069 * platform/network/qt/QNetworkReplyHandler.cpp: 100070 (WebCore::QNetworkReplyHandler::start): 100071 * platform/network/qt/ResourceHandleQt.cpp: 100072 (WebCore::ResourceHandle::start): 100073 (WebCore::ResourceHandle::loadResourceSynchronously): 100074 * platform/network/soup/ResourceHandleSoup.cpp: 100075 (WebCore::startHttp): 100076 Updated for request() -> firstRequest renaming. 100077 100078 2010-07-14 Marcus Bulach <bulach (a] chromium.org> 100079 100080 Reviewed by Jeremy Orlow. 100081 100082 Code generator: ensure generated constants match their corresponding enums. 100083 https://bugs.webkit.org/show_bug.cgi?id=42250 100084 100085 Specific interfaces can use DontCheckEnums attribute to avoid generating the compile-time check. 100086 100087 Tests: updated bindings tests. Generated code should compile. 100088 100089 * bindings/scripts/CodeGenerator.pm: 100090 * bindings/scripts/CodeGeneratorJS.pm: 100091 * bindings/scripts/CodeGeneratorV8.pm: 100092 * bindings/scripts/test/CPP/WebDOMTestObj.h: 100093 (WebDOMTestObj::): 100094 * bindings/scripts/test/JS/JSTestObj.cpp: 100095 (WebCore::): 100096 (WebCore::JSTestObjPrototype::getOwnPropertySlot): 100097 (WebCore::JSTestObjPrototype::getOwnPropertyDescriptor): 100098 (WebCore::jsTestObjCONST_VALUE_0): 100099 (WebCore::jsTestObjCONST_VALUE_1): 100100 (WebCore::jsTestObjCONST_VALUE_2): 100101 (WebCore::jsTestObjCONST_VALUE_4): 100102 (WebCore::jsTestObjCONST_VALUE_8): 100103 * bindings/scripts/test/JS/JSTestObj.h: 100104 * bindings/scripts/test/ObjC/DOMTestObj.h: 100105 * bindings/scripts/test/TestObj.idl: 100106 * bindings/scripts/test/V8/V8TestObj.cpp: 100107 (WebCore::): 100108 (WebCore::ConfigureV8TestObjTemplate): 100109 * css/WebKitCSSTransformValue.idl: 100110 * dom/DOMCoreException.idl: 100111 * dom/EventException.idl: 100112 * dom/Node.idl: 100113 * dom/OverflowEvent.idl: 100114 * dom/RangeException.idl: 100115 * html/FileError.idl: 100116 * html/FileReader.idl: 100117 * html/canvas/Float32Array.idl: 100118 * html/canvas/Int16Array.idl: 100119 * html/canvas/Int32Array.idl: 100120 * html/canvas/Int8Array.idl: 100121 * html/canvas/Uint16Array.idl: 100122 * html/canvas/Uint32Array.idl: 100123 * html/canvas/Uint8Array.idl: 100124 * html/canvas/WebGLRenderingContext.idl: 100125 * inspector/JavaScriptCallFrame.idl: 100126 * loader/appcache/DOMApplicationCache.idl: 100127 * storage/SQLException.idl: 100128 * svg/SVGComponentTransferFunctionElement.idl: 100129 * svg/SVGException.idl: 100130 * svg/SVGFEBlendElement.idl: 100131 * svg/SVGFEColorMatrixElement.idl: 100132 * svg/SVGFECompositeElement.idl: 100133 * svg/SVGFEConvolveMatrixElement.idl: 100134 * svg/SVGFEDisplacementMapElement.idl: 100135 * svg/SVGFEMorphologyElement.idl: 100136 * svg/SVGFETurbulenceElement.idl: 100137 * svg/SVGGradientElement.idl: 100138 * xml/XMLHttpRequestException.idl: 100139 * xml/XPathException.idl: 100140 100141 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 100142 100143 Reviewed by Ojan Vafai. 100144 100145 Unbreak fast/canvas/gradient-add-second-start-end-stop.html 100146 100147 Assigning the same CanvasGradient or CanvasPattern to fillStyle 100148 or strokeStyle may not be a no-op since the object could have been 100149 modified since it was last set. 100150 100151 Regressed with <http://trac.webkit.org/changeset/63327> 100152 100153 * html/canvas/CanvasStyle.cpp: 100154 (WebCore::operator==): 100155 100156 2010-07-14 Andreas Kling <andreas.kling (a] nokia.com> 100157 100158 Reviewed by Darin Adler. 100159 100160 Canvas: Make assigning the same fillStyle or strokeStyle a fast no-op 100161 https://bugs.webkit.org/show_bug.cgi?id=42267 100162 100163 Avoid calling into GraphicsContext when setting a style to its current value. 100164 100165 * html/canvas/CanvasRenderingContext2D.cpp: 100166 (WebCore::CanvasRenderingContext2D::setStrokeStyle): Return early if the 100167 new style is the same as the current one. 100168 (WebCore::CanvasRenderingContext2D::setFillStyle): Same. 100169 * html/canvas/CanvasStyle.cpp: 100170 (WebCore::operator==): Added operator==(CanvasStyle, CanvasStyle) 100171 * html/canvas/CanvasStyle.h: 100172 100173 2010-07-14 Tony Gentilcore <tonyg (a] chromium.org> 100174 100175 Reviewed by Darin Fisher. 100176 100177 Implement Web Timing redirectStart, redirectEnd, redirectCount 100178 https://bugs.webkit.org/show_bug.cgi?id=42018 100179 100180 Tests: http/tests/misc/webtiming-one-redirect.php 100181 http/tests/misc/webtiming-two-redirects.php 100182 100183 * loader/FrameLoaderTypes.h: 100184 (WebCore::FrameLoadTimeline::FrameLoadTimeline): 100185 * loader/MainResourceLoader.cpp: 100186 (WebCore::MainResourceLoader::willSendRequest): This method is called for each request (including server redirects). fetchStart is updated to the current time on each invocation so that it represents fetching of the final document and doesn't include redirect time. For each redirect, redirectCount is incremented and redirectStart to redirectEnd measures the cumulative fetch time for all redirects. 100187 * page/Navigation.cpp: 100188 (WebCore::Navigation::redirectCount): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-count 100189 * page/Timing.cpp: 100190 (WebCore::Timing::redirectStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-start 100191 (WebCore::Timing::redirectEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-redirect-end 100192 * page/Timing.h: 100193 * page/Timing.idl: 100194 100195 2010-07-14 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 100196 100197 Reviewed by Antonio Gomes. 100198 100199 Generate MathML files with CMake even if MathML is disabled. This 100200 fixes EFL build after r63274. 100201 https://bugs.webkit.org/show_bug.cgi?id=42263 100202 100203 No new functionality, so no new tests. 100204 100205 * CMakeLists.txt: 100206 100207 2010-07-14 Martin Robinson <mrobinson (a] igalia.com> 100208 100209 Reviewed by Xan Lopez. 100210 100211 [GTK] Get rid of libWebCoreJS 100212 https://bugs.webkit.org/show_bug.cgi?id=42083 100213 100214 Remove the need to build libWebCoreJS. 100215 100216 * GNUmakefile.am: List all auto-generated source files for libWebCoreJS 100217 instead of relying on make to build libWebCoreJS. This is a more autotools- 100218 -friendly approach. 100219 100220 2010-07-14 Eric Carlson <eric.carlson (a] apple.com> 100221 100222 One more unreviewed build fix for r63319. 100223 100224 * html/TimeRanges.cpp: 100225 (TimeRanges::nearest): 100226 100227 2010-07-14 Alexander Pavlov <apavlov (a] chromium.org> 100228 100229 Reviewed by Pavel Feldman. 100230 100231 Web Inspector: Enable toggling of the "Inspect Element" mode from the browser 100232 https://bugs.webkit.org/show_bug.cgi?id=42169 100233 100234 * inspector/front-end/ElementsPanel.js: 100235 (WebInspector.ElementsPanel): 100236 (WebInspector.ElementsPanel.prototype.handleShortcut): 100237 (WebInspector.ElementsPanel.prototype.toggleSearchingForNode): 100238 * inspector/front-end/inspector.js: 100239 (WebInspector.toggleSearchingForNode): 100240 100241 2010-07-14 Eric Carlson <eric.carlson (a] apple.com> 100242 100243 Unreviewed, build fix for r63319. 100244 100245 * html/TimeRanges.cpp: 100246 (TimeRanges::nearest): Include math.h and use narrowPrecisionToFloat. 100247 100248 2010-07-14 Eric Carlson <eric.carlson (a] apple.com> 100249 100250 Reviewed by Darin Adler. 100251 100252 Update media element's seeking logic 100253 https://bugs.webkit.org/show_bug.cgi?id=42178 100254 <rdar://problem/8185817> 100255 100256 * html/HTMLMediaElement.cpp: 100257 (WebCore::HTMLMediaElement::seek): When asked to seek to an unbuffered time, seek to the 100258 nearest time instead of generating an exception. Re-order the logic to match spec text. 100259 100260 * html/TimeRanges.cpp: 100261 (TimeRanges::nearest): New, return the value closest to the specified time. 100262 * html/TimeRanges.h: 100263 100264 2010-07-14 Hans Wennborg <hans (a] chromium.org> 100265 100266 Reviewed by Steve Block. 100267 100268 Rename DeviceOrientationController::onOrientationChange to didChangeDeviceOrientation 100269 https://bugs.webkit.org/show_bug.cgi?id=42257 100270 100271 According to convention, we should avoid "on" in favor of "did" in function names. 100272 100273 * dom/DeviceOrientationController.cpp: 100274 (WebCore::DeviceOrientationController::didChangeDeviceOrientation): 100275 * dom/DeviceOrientationController.h: 100276 100277 2010-07-14 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 100278 100279 Reviewed by Kent Tamura. 100280 100281 Notify browser about popup being deleted. In EFL and BREW ports, the 100282 WebCore::Popup object was being deleted leaving the popup in browser 100283 alive. Popups can be deleted in two ways: either from browser to webcore or 100284 from webcore to browser. The first path was ok. The problem was when the 100285 user changed the page with a popup still opened. This would trigger the 100286 second path and would cause WebCore::Popup to be deleted without 100287 notifying browser. 100288 https://bugs.webkit.org/show_bug.cgi?id=41877 100289 100290 No new functionality so no new tests. 100291 100292 * platform/brew/PopupMenuBrew.cpp: 100293 (WebCore::PopupMenu::~PopupMenu): call hide() when object is 100294 destroyed. 100295 * platform/efl/PopupMenuEfl.cpp: 100296 (WebCore::PopupMenu::~PopupMenu): ditto. 100297 100298 2010-07-14 Satish Sampath <satish (a] chromium.org> 100299 100300 Reviewed by Kent Tamura. 100301 100302 Invoke speech recognition when user clicks on the speech button of input elements. 100303 http://bugs.webkit.org/show_bug.cgi?id=42047 100304 100305 No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch. 100306 100307 * rendering/TextControlInnerElements.cpp: 100308 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 100309 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Added click handling. 100310 (WebCore::InputFieldSpeechButtonElement::speechInput): 100311 (WebCore::InputFieldSpeechButtonElement::recordingComplete): Callback to indicate recording progress. 100312 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Callback to receive recognized text. 100313 (WebCore::InputFieldSpeechButtonElement::detach): 100314 * rendering/TextControlInnerElements.h: 100315 100316 2010-07-14 Sheriff Bot <webkit.review.bot (a] gmail.com> 100317 100318 Unreviewed, rolling out r63305. 100319 http://trac.webkit.org/changeset/63305 100320 https://bugs.webkit.org/show_bug.cgi?id=42256 100321 100322 "debugger-breakpoints-not-activated-on-reload.html fails on 100323 GTK" (Requested by yurys on #webkit). 100324 100325 * inspector/front-end/ScriptView.js: 100326 (WebInspector.ScriptView.prototype._addBreakpoint): 100327 * inspector/front-end/ScriptsPanel.js: 100328 (WebInspector.ScriptsPanel): 100329 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 100330 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 100331 (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine): 100332 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 100333 (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked): 100334 * inspector/front-end/SourceView.js: 100335 (WebInspector.SourceView.prototype._addBreakpoint): 100336 100337 2010-07-14 Steve Block <steveblock (a] google.com> 100338 100339 Reviewed by Jeremy Orlow. 100340 100341 Provide implementation of DeviceOrientationController and hook into DOMWindow 100342 https://bugs.webkit.org/show_bug.cgi?id=39588 100343 100344 Added DeviceOrientationController::addListener() and removeListener() 100345 to start and stop the client and added calls from DomWindow. Implemented 100346 DeviceOrientationController::onDeviceOrientationChange() to fire a 100347 DeviceOrientationEvent on the window object. 100348 100349 No new tests yet, pending LayoutTestController methods for mock DeviceOrientation. 100350 100351 * dom/DeviceOrientationClient.h: 100352 * dom/DeviceOrientationController.cpp: 100353 (WebCore::DeviceOrientation::addListener): 100354 (WebCore::DeviceOrientation::removeListener): 100355 (WebCore::DeviceOrientation::removeAllListeners): 100356 (WebCore::DeviceOrientationController::onDeviceOrientationChange): 100357 * dom/DeviceOrientationController.h: 100358 * page/DOMWindow.cpp: 100359 (WebCore::DOMWindow::addEventListener): 100360 (WebCore::DOMWindow::removeEventListener): 100361 (WebCore::DOMWindow::removeAllEventListeners): 100362 100363 2010-07-14 Yury Semikhatsky <yurys (a] chromium.org> 100364 100365 Reviewed by Pavel Feldman. 100366 100367 Web Inspector: remove v8 debugger code that doesn't use ScriptDebugServer 100368 https://bugs.webkit.org/show_bug.cgi?id=42164 100369 100370 * bindings/v8/ScriptDebugServer.cpp: 100371 (WebCore::retrieveFrame): 100372 (WebCore::ScriptDebugServer::addListener): 100373 (WebCore::ScriptDebugServer::setBreakpoint): 100374 (WebCore::ScriptDebugServer::removeBreakpoint): 100375 (WebCore::ScriptDebugServer::clearBreakpoints): 100376 (WebCore::ScriptDebugServer::setBreakpointsActivated): 100377 (WebCore::ScriptDebugServer::pauseOnExceptionsState): 100378 (WebCore::ScriptDebugServer::setPauseOnExceptionsState): 100379 (WebCore::ScriptDebugServer::continueProgram): 100380 (WebCore::ScriptDebugServer::stepIntoStatement): 100381 (WebCore::ScriptDebugServer::stepOverStatement): 100382 (WebCore::ScriptDebugServer::stepOutOfFunction): 100383 (WebCore::ScriptDebugServer::editScriptSource): 100384 (WebCore::ScriptDebugServer::handleV8DebugEvent): 100385 * bindings/v8/ScriptDebugServer.h: 100386 100387 2010-07-14 Ilya Tikhonovsky <loislo (a] chromium.org> 100388 100389 Reviewed by Yury Semikhatsky. 100390 100391 WebInspector: Clean-up InspectorBackend code. In the next changes 100392 InspectorBackend content will be generated by scripts. As far as 100393 generator is very simple thing all nontrivial function should be 100394 moved to InspectorController and DOMAgent. 100395 https://bugs.webkit.org/show_bug.cgi?id=42171 100396 100397 * bindings/js/ScriptDebugServer.cpp: 100398 (WebCore::ScriptDebugServer::pause): 100399 * bindings/js/ScriptDebugServer.h: 100400 (WebCore::ScriptDebugServer::activateBreakpoints): 100401 (WebCore::ScriptDebugServer::deactivateBreakpoints): 100402 * bindings/v8/ScriptDebugServer.h: 100403 (WebCore::ScriptDebugServer::activateBreakpoints): 100404 (WebCore::ScriptDebugServer::deactivateBreakpoints): 100405 (WebCore::ScriptDebugServer::pause): 100406 * inspector/Inspector.idl: 100407 * inspector/InspectorBackend.cpp: 100408 (WebCore::InspectorBackend::saveApplicationSettings): 100409 (WebCore::InspectorBackend::saveSessionSettings): 100410 (WebCore::InspectorBackend::enableSearchingForNode): 100411 (WebCore::InspectorBackend::disableSearchingForNode): 100412 (WebCore::InspectorBackend::enableMonitoringXHR): 100413 (WebCore::InspectorBackend::disableMonitoringXHR): 100414 (WebCore::InspectorBackend::getResourceContent): 100415 (WebCore::InspectorBackend::reloadPage): 100416 (WebCore::InspectorBackend::activateBreakpoints): 100417 (WebCore::InspectorBackend::deactivateBreakpoints): 100418 (WebCore::InspectorBackend::pause): 100419 (WebCore::InspectorBackend::resume): 100420 (WebCore::InspectorBackend::stepOverStatement): 100421 (WebCore::InspectorBackend::stepIntoStatement): 100422 (WebCore::InspectorBackend::stepOutOfFunction): 100423 (WebCore::InspectorBackend::setPauseOnExceptionsState): 100424 (WebCore::InspectorBackend::copyNode): 100425 (WebCore::InspectorBackend::pushNodeByPathToFrontend): 100426 (WebCore::InspectorBackend::highlightDOMNode): 100427 (WebCore::InspectorBackend::hideDOMNodeHighlight): 100428 * inspector/InspectorBackend.h: 100429 * inspector/InspectorBackend.idl: 100430 * inspector/InspectorController.cpp: 100431 (WebCore::InspectorController::saveApplicationSettings): 100432 (WebCore::InspectorController::saveSessionSettings): 100433 (WebCore::InspectorController::highlightDOMNode): 100434 (WebCore::InspectorController::resume): 100435 (WebCore::InspectorController::setPauseOnExceptionsState): 100436 (WebCore::InspectorController::getResourceContent): 100437 (WebCore::InspectorController::reloadPage): 100438 * inspector/InspectorController.h: 100439 (WebCore::InspectorController::hideDOMNodeHighlight): 100440 (WebCore::InspectorController::startProfiling): 100441 (WebCore::InspectorController::stopProfiling): 100442 (WebCore::InspectorController::enableSearchingForNode): 100443 (WebCore::InspectorController::disableSearchingForNode): 100444 (WebCore::InspectorController::enableMonitoringXHR): 100445 (WebCore::InspectorController::disableMonitoringXHR): 100446 * inspector/InspectorDOMAgent.cpp: 100447 (WebCore::InspectorDOMAgent::copyNode): 100448 (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend): 100449 * inspector/InspectorDOMAgent.h: 100450 * inspector/front-end/InspectorBackendStub.js: 100451 (.WebInspector.InspectorBackendStub.prototype.pause): 100452 (.WebInspector.InspectorBackendStub.prototype.resume): 100453 (.WebInspector.InspectorBackendStub.prototype.stepIntoStatement): 100454 (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunction): 100455 (.WebInspector.InspectorBackendStub.prototype.stepOverStatement): 100456 * inspector/front-end/ScriptsPanel.js: 100457 (WebInspector.ScriptsPanel.prototype._togglePause): 100458 (WebInspector.ScriptsPanel.prototype._stepOverClicked): 100459 (WebInspector.ScriptsPanel.prototype._stepIntoClicked): 100460 (WebInspector.ScriptsPanel.prototype._stepOutClicked): 100461 * loader/FrameLoader.cpp: 100462 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): 100463 100464 2010-07-14 Joone Hur <joone (a] kldp.org> 100465 100466 Reviewed by Jian Li. 100467 100468 [GTK] Enabling File Reader/Writer APIs 100469 https://bugs.webkit.org/show_bug.cgi?id=40209 100470 100471 The layout test fast/files will be enabled after eventSender.beginDragWithFiles is implemented for GTK. 100472 100473 * platform/gtk/FileSystemGtk.cpp: 100474 (WebCore::openFile): Added. 100475 (WebCore::readFromFile): Added. 100476 100477 2010-07-14 Nikolas Zimmermann <nzimmermann (a] rim.com> 100478 100479 Reviewed by Dirk Schulze. 100480 100481 Inconsistent LayoutRepainter usage in the SVG renderers 100482 https://bugs.webkit.org/show_bug.cgi?id=42245 100483 100484 Unify LayoutRepainter usage in the SVG renders, as RenderBlock does it, always use: 100485 LayoutRepainter repainter(*this, m_everHadLayout && checkForRepaintDuringLayout()); 100486 instead of including selfWillPaint / selfNeedsLayout checks. This improves layout test 100487 performance by 8s on my machine with a debug build (from 76.72s -> 68.59s, averaged over 5 runs) 100488 100489 * rendering/RenderForeignObject.cpp: 100490 (WebCore::RenderForeignObject::layout): 100491 * rendering/RenderPath.cpp: 100492 (WebCore::RenderPath::layout): 100493 * rendering/RenderSVGContainer.cpp: 100494 (WebCore::RenderSVGContainer::layout): 100495 * rendering/RenderSVGImage.cpp: 100496 (WebCore::RenderSVGImage::layout): 100497 * rendering/RenderSVGRoot.cpp: 100498 (WebCore::RenderSVGRoot::layout): 100499 * rendering/RenderSVGText.cpp: 100500 (WebCore::RenderSVGText::layout): 100501 100502 2010-07-14 Kent Tamura <tkent (a] chromium.org> 100503 100504 Unreviewed, build fix for r63300. 100505 100506 * rendering/RenderSVGResourceContainer.h: 100507 (WebCore::RenderSVGResourceContainer::containsCyclicReference): 100508 100509 2010-07-14 Pavel Podivilov <podivilov (a] chromium.org> 100510 100511 Reviewed by Yury Semikhatsky. 100512 100513 Web Inspector: do not activate all breakpoints on page reload 100514 https://bugs.webkit.org/show_bug.cgi?id=41461 100515 100516 Test: inspector/debugger-breakpoints-not-activated-on-reload.html 100517 100518 * inspector/front-end/ScriptView.js: 100519 (WebInspector.ScriptView.prototype._addBreakpoint): 100520 * inspector/front-end/ScriptsPanel.js: 100521 (WebInspector.ScriptsPanel): 100522 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 100523 (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked): 100524 * inspector/front-end/SourceView.js: 100525 (WebInspector.SourceView.prototype._addBreakpoint): 100526 100527 2010-07-14 Yury Semikhatsky <yurys (a] chromium.org> 100528 100529 Reviewed by Pavel Feldman. 100530 100531 Web Inspector: use OwnPtr to manage ConsoleMessages in InspectorController 100532 https://bugs.webkit.org/show_bug.cgi?id=42243 100533 100534 * inspector/InspectorController.cpp: 100535 (WebCore::InspectorController::~InspectorController): 100536 (WebCore::InspectorController::addConsoleMessage): 100537 (WebCore::InspectorController::clearConsoleMessages): 100538 * inspector/InspectorController.h: 100539 (WebCore::InspectorController::consoleMessages): 100540 100541 2010-07-14 Nikolas Zimmermann <nzimmermann (a] rim.com> 100542 100543 Reviewed by Eric Seidel. 100544 100545 SVG patterns and masks should not be able to reference themselves 100546 https://bugs.webkit.org/show_bug.cgi?id=32171 100547 100548 Don't apply pattern/mask resources, if they contain cyclic references. Gradients/Filters are not affected. 100549 Clippers are already correcly handling this on their own, as well as markers (all which require subtle quirks, covered by existing tests). 100550 100551 Tests: svg/custom/recursive-filter.svg 100552 svg/custom/recursive-gradient.svg 100553 svg/custom/recursive-mask.svg 100554 svg/custom/recursive-pattern.svg 100555 100556 * rendering/RenderSVGResourceContainer.h: 100557 (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop using idForStyleResolution(), but use getIdAttribute(), no functional change though. 100558 (WebCore::RenderSVGResourceContainer::idChanged): Ditto. 100559 (WebCore::RenderSVGResourceContainer::childElementReferencesResource): To be implemented by classes inheriting from us. Defaults to false. 100560 (WebCore::RenderSVGResourceContainer::containsCyclicReference): Check whether this resource contains contains a child which references ourselves. 100561 * rendering/RenderSVGResourceMasker.cpp: 100562 (WebCore::RenderSVGResourceMasker::childElementReferencesResource): Check whether the masker child specifies mask=".." with the same URI than ourselves. 100563 (WebCore::RenderSVGResourceMasker::applyResource): Early exit if we contain a cylic reference. 100564 * rendering/RenderSVGResourceMasker.h: 100565 * rendering/RenderSVGResourcePattern.cpp: 100566 (WebCore::RenderSVGResourcePattern::childElementReferencesResource): Check whether the masker child specifies fill=".." with the same URI than ourselves. 100567 (WebCore::RenderSVGResourcePattern::applyResource): Early exit if we contain a cylic reference. 100568 * rendering/RenderSVGResourcePattern.h: 100569 * svg/SVGPaint.cpp: 100570 (WebCore::SVGPaint::matchesTargetURI): Add new helper function comparing a SVGPaint URI with a given reference id. 100571 * svg/SVGPaint.h: 100572 100573 2010-07-14 Eric Seidel <eric (a] webkit.org> 100574 100575 Reviewed by Nikolas Zimmermann. 100576 100577 Selection dumping code should not dump body's offset in the document 100578 https://bugs.webkit.org/show_bug.cgi?id=42238 100579 100580 This requires updating the results of many layout tests, 100581 but has no functional change. 100582 100583 * rendering/RenderTreeAsText.cpp: 100584 (WebCore::nodePosition): 100585 100586 2010-07-14 Kent Tamura <tkent (a] chromium.org> 100587 100588 Reviewed by Darin Fisher. 100589 100590 <input type=number> UI: inner spin button layout 100591 https://bugs.webkit.org/show_bug.cgi?id=41924 100592 100593 Add layout/event/style code for the inner spin button, which is 100594 going to be used for Windows implementation. 100595 No new tests because no ports implement the inner spin button yet. 100596 100597 * rendering/RenderTextControlSingleLine.cpp: 100598 Introduce m_innerSpinButton. 100599 (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): 100600 Detach m_innerSpinButton. 100601 (WebCore::RenderTextControlSingleLine::layout): 100602 Set position and size of m_innerSpinButton. 100603 (WebCore::RenderTextControlSingleLine::nodeAtPoint): 100604 Handle m_innerSpinButton. 100605 (WebCore::RenderTextControlSingleLine::forwardEvent): 100606 Handle m_innerSpinButton. 100607 (WebCore::RenderTextControlSingleLine::textBlockWidth): 100608 Shorten the text block width by m_innerSpinButton width. 100609 (WebCore::RenderTextControlSingleLine::preferredContentWidth): 100610 Add m_innerSpinButton width. 100611 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): 100612 Handle m_innerSpinButton. 100613 (WebCore::RenderTextControlSingleLine::createInnerSpinButtonStyle): 100614 Make style for m_innerSpinButton with INNER_SPIN_BUTTON pseudo class. 100615 * rendering/RenderTextControlSingleLine.h: 100616 100617 2010-07-14 Kent Tamura <tkent (a] chromium.org> 100618 100619 Reviewed by Darin Fisher. 100620 100621 <input type=number> UI: Support disabled/readonly states 100622 https://bugs.webkit.org/show_bug.cgi?id=38568 100623 100624 Implement isEnabledFormControl() and isReadOnlyFormControl() of 100625 SpinButtonElement. They returns the states of the parent <input> element. 100626 The existing isEnabledFormControl() had a bug. It didn't have 'const' 100627 modifier. 100628 100629 Test: fast/forms/input-appearance-spinbutton-disabled-readonly.html 100630 100631 * rendering/TextControlInnerElements.cpp: 100632 (WebCore::SpinButtonElement::defaultEventHandler): 100633 - If the input element is disabled or read-only, don't process events. 100634 - Protect 'input' object from destruction during focus(). 100635 - Fix a hit-test issue. We don't need to add renderBox()->y() because 100636 'local' is relative to the RenderBox. 100637 - Some code cleanup 100638 * rendering/TextControlInnerElements.h: 100639 (WebCore::SpinButtonElement::isEnabledFormControl): 100640 (WebCore::SpinButtonElement::isReadOnlyFormControl): 100641 100642 2010-07-13 Simon Fraser <simon.fraser (a] apple.com> 100643 100644 Reviewed by Dan Bernstein. 100645 100646 Page flashes to mostly white towards the end of loading 100647 https://bugs.webkit.org/show_bug.cgi?id=42230 100648 100649 We constrain the size of huge composited layers. When doing so, we 100650 need to use the constained size to set the position as well 100651 as the dimensions, to ensure the layer appears in the correct place. 100652 100653 Test: compositing/tiling/constrained-layer-size.html 100654 100655 * platform/graphics/mac/GraphicsLayerCA.mm: 100656 (WebCore::GraphicsLayerCA::updateLayerPosition): 100657 100658 2010-07-13 Kent Tamura <tkent (a] chromium.org> 100659 100660 Reviewed by Darin Fisher. 100661 100662 [Chromium] Linux implementation of <input type=number> UI 100663 https://bugs.webkit.org/show_bug.cgi?id=41925 100664 100665 - Move the code for scrollbar steppers from ScrollbarThemeChromiumLinux 100666 to PlatformThemeChromiumGtk. 100667 - Move the code for scrollbar colors from RenderThemeChromiumLinux 100668 to PlatformThemeChromiumGtk. 100669 100670 * WebCore.gypi: 100671 * platform/chromium/PlatformThemeChromiumGtk.cpp: Added. 100672 (WebCore::PlatformThemeChromiumGtk::setScrollbarColors): Moved from RenderThemeChromiumLinux. 100673 (WebCore::clamp): Moved from ScrollbarThemeChromiumLinux. 100674 (WebCore::PlatformThemeChromiumGtk::saturateAndBrighten): ditto. 100675 (WebCore::PlatformThemeChromiumGtk::outlineColor): ditto. 100676 (WebCore::PlatformThemeChromiumGtk::paintArrowButton): ditto. 100677 * platform/chromium/PlatformThemeChromiumGtk.h: Added. 100678 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 100679 (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece): 100680 (WebCore::ScrollbarThemeChromiumLinux::paintButton): 100681 Move the main part of the code to PlatformThemeChromiumGtk. 100682 (WebCore::ScrollbarThemeChromiumLinux::paintThumb): 100683 * rendering/RenderThemeChromiumLinux.cpp: 100684 (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle): Added. 100685 (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton): Added. 100686 * rendering/RenderThemeChromiumLinux.h: 100687 100688 2010-07-13 Dumitru Daniliuc <dumi (a] chromium.org> 100689 100690 Reviewed by Darin Fisher 100691 100692 Implementing DatabaseSync::transaction() and DatabaseSync::changeVersion(). 100693 https://bugs.webkit.org/show_bug.cgi?id=40607 100694 100695 Tests: fast/workers/storage/change-version-handle-reuse-sync.html 100696 fast/workers/storage/change-version-sync.html 100697 fast/workers/storage/empty-statement-sync.html 100698 fast/workers/storage/execute-sql-args-sync.html 100699 fast/workers/storage/executesql-accepts-only-one-statement-sync.html 100700 fast/workers/storage/multiple-transactions-on-different-handles-sync.html 100701 fast/workers/storage/open-database-creation-callback-sync.html 100702 fast/workers/storage/open-database-empty-version-sync.html 100703 fast/workers/storage/open-database-inputs-sync.html 100704 fast/workers/storage/open-database-set-empty-version-sync.html 100705 fast/workers/storage/open-database-while-transaction-in-progress-sync.html 100706 fast/workers/storage/sql-data-types-sync.html 100707 fast/workers/storage/sql-exception-codes-sync.html 100708 fast/workers/storage/test-authorizer-sync.html 100709 fast/workers/storage/transaction-in-transaction-sync.html 100710 100711 * CMakeLists.txt: 100712 * GNUmakefile.am: 100713 * WebCore.gypi: 100714 * WebCore.pro: 100715 * WebCore.vcproj/WebCore.vcproj: 100716 * WebCore.xcodeproj/project.pbxproj: 100717 * storage/AbstractDatabase.cpp: 100718 (WebCore::AbstractDatabase::maximumSize): 100719 (WebCore::AbstractDatabase::incrementalVacuumIfNeeded): 100720 * storage/AbstractDatabase.h: 100721 (WebCore::AbstractDatabase::sqliteDatabase): 100722 * storage/ChangeVersionWrapper.cpp: 100723 (WebCore::ChangeVersionWrapper::performPreflight): 100724 (WebCore::ChangeVersionWrapper::performPostflight): 100725 * storage/Database.cpp: 100726 (WebCore::Database::performGetTableNames): 100727 * storage/Database.h: 100728 * storage/DatabaseAuthorizer.cpp: 100729 (WebCore::DatabaseAuthorizer::createVTable): 100730 (WebCore::DatabaseAuthorizer::dropVTable): 100731 * storage/DatabaseCallback.h: 100732 * storage/DatabaseSync.cpp: 100733 (WebCore::ChangeVersionPreflightStep::create): 100734 (WebCore::ChangeVersionPreflightStep::performStep): 100735 (WebCore::ChangeVersionPreflightStep::ChangeVersionPreflightStep): 100736 (WebCore::ChangeVersionPostflightStep::create): 100737 (WebCore::ChangeVersionPostflightStep::performStep): 100738 (WebCore::ChangeVersionPostflightStep::ChangeVersionPostflightStep): 100739 (WebCore::DatabaseSync::changeVersion): 100740 (WebCore::DatabaseSync::transaction): 100741 (WebCore::DatabaseSync::runTransaction): 100742 * storage/DatabaseSync.h: 100743 * storage/DatabaseTracker.cpp: 100744 (WebCore::DatabaseTracker::getMaxSizeForDatabase): 100745 * storage/SQLError.h: 100746 * storage/SQLResultSet.cpp: 100747 * storage/SQLResultSet.h: 100748 * storage/SQLStatementCallback.h: 100749 * storage/SQLStatementErrorCallback.h: 100750 * storage/SQLStatementSync.cpp: Copied from WebCore/storage/SQLStatement.cpp. 100751 (WebCore::SQLStatementSync::SQLStatementSync): 100752 (WebCore::SQLStatementSync::execute): 100753 * storage/SQLStatementSync.h: Added. 100754 * storage/SQLTransaction.cpp: 100755 (WebCore::SQLTransaction::runCurrentStatement): 100756 (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): 100757 (WebCore::SQLTransaction::postflightAndCommit): 100758 * storage/SQLTransaction.h: 100759 * storage/SQLTransactionCallback.h: 100760 * storage/SQLTransactionClient.cpp: 100761 (WebCore::SQLTransactionClient::didCommitWriteTransaction): 100762 (WebCore::SQLTransactionClient::didExecuteStatement): 100763 (WebCore::SQLTransactionClient::didExceedQuota): 100764 * storage/SQLTransactionClient.h: 100765 * storage/SQLTransactionErrorCallback.h: 100766 * storage/SQLTransactionSync.cpp: 100767 (WebCore::transactionClient): 100768 (WebCore::SQLTransactionSync::create): 100769 (WebCore::SQLTransactionSync::SQLTransactionSync): 100770 (WebCore::SQLTransactionSync::~SQLTransactionSync): 100771 (WebCore::SQLTransactionSync::executeSQL): 100772 (WebCore::SQLTransactionSync::begin): 100773 (WebCore::SQLTransactionSync::execute): 100774 (WebCore::SQLTransactionSync::commit): 100775 (WebCore::SQLTransactionSync::rollback): 100776 * storage/SQLTransactionSync.h: 100777 (WebCore::SQLTransactionSync::SQLTransactionSyncOptionalStep::~SQLTransactionSyncOptionalStep): 100778 * storage/SQLTransactionSyncCallback.h: 100779 * storage/chromium/SQLTransactionClientChromium.cpp: 100780 (WebCore::SQLTransactionClient::didCommitWriteTransaction): 100781 (WebCore::SQLTransactionClient::didExecuteStatement): 100782 (WebCore::SQLTransactionClient::didExceedQuota): 100783 100784 2010-07-13 Sheriff Bot <webkit.review.bot (a] gmail.com> 100785 100786 Unreviewed, rolling out r63162. 100787 http://trac.webkit.org/changeset/63162 100788 https://bugs.webkit.org/show_bug.cgi?id=42224 100789 100790 This is no longer needed (Requested by olliej_ on #webkit). 100791 100792 * bindings/v8/ScriptSourceCode.h: 100793 (WebCore::ScriptSourceCode::ScriptSourceCode): 100794 100795 2010-07-13 Eric Seidel <eric (a] webkit.org> 100796 100797 Reviewed by Adam Barth. 100798 100799 Fix my misreading of "clear to the last marker" in the HTML5 spec 100800 https://bugs.webkit.org/show_bug.cgi?id=42199 100801 100802 * html/HTMLFormattingElementList.cpp: 100803 (WebCore::HTMLFormattingElementList::clearToLastMarker): 100804 * html/HTMLFormattingElementList.h: 100805 * html/HTMLTreeBuilder.cpp: 100806 (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): 100807 (WebCore::HTMLTreeBuilder::processEndOfFile): 100808 100809 2010-07-13 Oliver Hunt <oliver (a] apple.com> 100810 100811 Reviewed by Gavin Barraclough. 100812 100813 ES5 requires BOMs to be treated as whitespace 100814 https://bugs.webkit.org/show_bug.cgi?id=42218 100815 100816 Remove BOM handling logic from WebCore Script objects. 100817 100818 * bindings/js/StringSourceProvider.h: 100819 (WebCore::StringSourceProvider::StringSourceProvider): 100820 * loader/CachedScript.cpp: 100821 (WebCore::CachedScript::CachedScript): 100822 (WebCore::CachedScript::script): 100823 * loader/CachedScript.h: 100824 100825 2010-07-13 Andreas Kling <andreas.kling (a] nokia.com> 100826 100827 Reviewed by Darin Adler. 100828 100829 Canvas: rect(x,y,w,h) should move to (x,y) even if w=0 and h=0 100830 https://bugs.webkit.org/show_bug.cgi?id=42211 100831 100832 * html/canvas/CanvasRenderingContext2D.cpp: 100833 (WebCore::CanvasRenderingContext2D::rect): 100834 100835 2010-07-13 Simon Fraser <simon.fraser (a] apple.com> 100836 100837 Reviewed by Dan Bernstein. 100838 100839 Show IDs and classnames in layer tree dumps 100840 https://bugs.webkit.org/show_bug.cgi?id=42213 100841 100842 When dumping the layer tree via showLayerTree(), include id and class attributes for 100843 ease of debugging. 100844 100845 No tests, since this is debug-only code. 100846 100847 * rendering/RenderLayer.cpp: 100848 (showLayerTree): 100849 * rendering/RenderTreeAsText.cpp: 100850 (WebCore::RenderTreeAsText::writeRenderObject): 100851 * rendering/RenderTreeAsText.h: 100852 (WebCore::): 100853 100854 2010-07-13 Simon Fraser <simon.fraser (a] apple.com> 100855 100856 Build fix: fix WebCore exports by editing the .in file, rather than the generated file. 100857 100858 * WebCore.exp.in: 100859 100860 2010-07-13 Alexey Proskuryakov <ap (a] apple.com> 100861 100862 Reviewed by Darin Adler. 100863 100864 https://bugs.webkit.org/show_bug.cgi?id=42216 100865 ResourceRequest::doUpdateResourceRequest() crashes if client denied request 100866 100867 This is covered by many regression tests with patch for bug 42201 applied (because it makes 100868 us also use this code path for sync requests, and those currently have more strict limitations). 100869 100870 * platform/network/cf/ResourceRequestCFNet.cpp: 100871 (WebCore::ResourceRequest::doUpdateResourceRequest): Added a null check. 100872 100873 2010-07-13 Eric Seidel <eric (a] webkit.org> 100874 100875 Reviewed by Adam Barth. 100876 100877 Make our end tag in-foreign-content mode spec bug workarounds more closely match minefield 100878 https://bugs.webkit.org/show_bug.cgi?id=42187 100879 100880 I do not expect these work-arounds to be permanent. Hixie has promised to 100881 addresses the feedback to the parser sections of HTML5 soon. 100882 I added these hacks to make our hacks more-closely match Minefield's hacks 100883 and thus have us "pass" a few more html5lib runner tests. 100884 100885 We now pass all of the html5lib foreign content tests 100886 (thus we'll likely need to write more). 100887 100888 Tested by html5lib/runner.html 100889 100890 * html/HTMLElementStack.cpp: 100891 (WebCore::HTMLElementStack::contains): 100892 * html/HTMLElementStack.h: 100893 * html/HTMLTreeBuilder.cpp: 100894 (WebCore::HTMLTreeBuilder::processEndTag): 100895 100896 2010-07-12 Tony Gentilcore <tonyg (a] chromium.org> 100897 100898 Reviewed by Darin Fisher. 100899 100900 Wire network times from ResourceLoadTiming to performance.timing 100901 https://bugs.webkit.org/show_bug.cgi?id=41824 100902 100903 * page/Timing.cpp: 100904 (WebCore::Timing::domainLookupStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupstart 100905 (WebCore::Timing::domainLookupEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-domain-lookupend 100906 (WebCore::Timing::connectStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-start 100907 (WebCore::Timing::connectEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-connect-end 100908 (WebCore::Timing::requestStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-start 100909 (WebCore::Timing::requestEnd): http://dev.w3.org/2006/webapi/WebTiming/#nt-request-end 100910 (WebCore::Timing::responseStart): http://dev.w3.org/2006/webapi/WebTiming/#nt-response-start 100911 (WebCore::Timing::resourceLoadTiming): 100912 * page/Timing.h: 100913 * page/Timing.idl: 100914 100915 2010-07-13 Anders Carlsson <andersca (a] apple.com> 100916 100917 Reviewed by Sam Weinig. 100918 100919 Add support for loading javascript: URLs 100920 https://bugs.webkit.org/show_bug.cgi?id=42221 100921 100922 * WebCore.exp.in: 100923 Export protocolIsJavaScript and ScriptValue::getString. 100924 100925 2010-07-13 Anders Carlsson <andersca (a] apple.com> 100926 100927 Reviewed by Sam Weinig. 100928 100929 Add support for URL frame loading using NPN_GetURLNotify 100930 https://bugs.webkit.org/show_bug.cgi?id=42192 100931 100932 * WebCore.exp.in: 100933 Export ResourceRequestBase::setHTTPMethod and ResourceRequestBase::setURL. 100934 100935 2010-07-04 Zhenyao Mo <zmo (a] google.com> 100936 100937 Reviewed by Darin Fisher. 100938 100939 Need to track texture completeness 100940 https://bugs.webkit.org/show_bug.cgi?id=41381 100941 100942 Test: fast/canvas/webgl/texture-complete.html 100943 100944 * html/canvas/WebGLRenderingContext.cpp: 100945 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Init max texture level. 100946 (WebCore::WebGLRenderingContext::bindTexture): Pass max texture level to setTarget(). 100947 (WebCore::WebGLRenderingContext::copyTexImage2D): Cache full texture info rather than partial. 100948 (WebCore::WebGLRenderingContext::generateMipmap): Ditto. 100949 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. 100950 (WebCore::WebGLRenderingContext::validateTexFuncParameters): Also validate level. 100951 * html/canvas/WebGLRenderingContext.h: Add max texture level. 100952 * html/canvas/WebGLTexture.cpp: Update the class to fully cache texture information and track NPOT and COMPLETE states. 100953 (WebCore::WebGLTexture::WebGLTexture): 100954 (WebCore::WebGLTexture::setTarget): Check whether the texture is initialized or has been deleted. 100955 (WebCore::WebGLTexture::setParameteri): Ditto. 100956 (WebCore::WebGLTexture::setParameterf): Ditto. 100957 (WebCore::WebGLTexture::setLevelInfo): Set texture info. 100958 (WebCore::WebGLTexture::generateMipmapLevelInfo): Generate texture info for all levels after generateMipmaps() is called. 100959 (WebCore::WebGLTexture::getInternalFormat): Return internal format on texture face 0 level 0. 100960 (WebCore::WebGLTexture::isNPOT): Check whether the texture is initialized or has been deleted. 100961 (WebCore::WebGLTexture::needToUseBlackTexture): Ditto. 100962 (WebCore::WebGLTexture::_deleteObject): 100963 (WebCore::WebGLTexture::mapTargetToIndex): Map target to index. 100964 (WebCore::WebGLTexture::canGenerateMipmaps): Check whether Mipmaps can be generated. 100965 (WebCore::WebGLTexture::computeLevelCount): Compute texture level count from width/height. 100966 (WebCore::WebGLTexture::update): Update NPOT/COMPLETE states. 100967 * html/canvas/WebGLTexture.h: Ditto. 100968 (WebCore::WebGLTexture::LevelInfo::LevelInfo): Add data structure to fully cache texture info. 100969 (WebCore::WebGLTexture::LevelInfo::setInfo): Set information. 100970 100971 2010-07-13 Andreas Kling <andreas.kling (a] nokia.com> 100972 100973 Reviewed by Darin Adler. 100974 100975 Canvas: drawImage() with wrong 'image' argument type should always throw TypeError 100976 https://bugs.webkit.org/show_bug.cgi?id=42160 100977 100978 Test: canvas/philip/tests/2d.drawImage.wrongtype.html 100979 100980 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 100981 (WebCore::JSCanvasRenderingContext2D::drawImage): Throw TypeError instead of 100982 TYPE_MISMATCH_ERR if 'image' argument is not an image, canvas or video element. 100983 100984 2010-07-13 Aaron Boodman <aa (a] chromium.org> 100985 100986 Reviewed by Timothy Hatcher. 100987 100988 Don't reset per-document user style caches when user styles are updated in 100989 Chromium. 100990 100991 https://bugs.webkit.org/show_bug.cgi?id=42003 100992 100993 * page/PageGroup.cpp: 100994 (WebCore::PageGroup::addUserStyleSheetToWorld): 100995 (WebCore::PageGroup::removeUserStyleSheetFromWorld): 100996 (WebCore::PageGroup::removeUserStyleSheetsFromWorld): 100997 (WebCore::PageGroup::removeAllUserContent): 100998 (WebCore::PageGroup::resetUserStyleCacheInAllFrames): 100999 * page/PageGroup.h: 101000 101001 2010-07-13 Eric Carlson <eric.carlson (a] apple.com> 101002 101003 Reviewed by Dan Bernstein. 101004 101005 On Leopard, media element can't handle audio/mp4 MIME type in source tag 101006 https://bugs.webkit.org/show_bug.cgi?id=29326 101007 101008 Test: media/media-can-play-mpeg-audio.html 101009 101010 * platform/MIMETypeRegistry.cpp: 101011 (WebCore::TypeExtensionPair::): Add "audio/mp4", "m4a" to mappings table. 101012 101013 2010-07-13 Tony Gentilcore <tonyg (a] chromium.org> 101014 101015 Reviewed by Darin Fisher. 101016 101017 Implement performance.timing.fetchStart 101018 https://bugs.webkit.org/show_bug.cgi?id=41816 101019 101020 See: http://dev.w3.org/2006/webapi/WebTiming/#nt-fetch-start 101021 101022 * loader/MainResourceLoader.cpp: 101023 (WebCore::MainResourceLoader::willSendRequest): Record the fetchStart time for each request for the main resource. This means it is called for each server redirect, overwritting the previous value. In https://bugs.webkit.org/show_bug.cgi?id=42018, this will be modified such that if a previous value exists, it is stored as the redirect time. 101024 * loader/FrameLoaderTypes.h: 101025 (WebCore::FrameLoadTimeline::FrameLoadTimeline): 101026 * page/Timing.cpp: 101027 (WebCore::Timing::fetchStart): 101028 * page/Timing.h: 101029 * page/Timing.idl: 101030 101031 2010-07-13 Satish Sampath <satish (a] chromium.org> 101032 101033 Reviewed by Steve Block. 101034 101035 Speech input plumbing in webcore 101036 https://bugs.webkit.org/show_bug.cgi?id=41518 101037 101038 Adds the following: 101039 - a SpeechInput class to be used by the speech enabled HTML elements 101040 - a SpeechInputListener interface to be implemented by the speech enabled HTML elements 101041 - a SpeechInputClient interface (defined in WebCore, implemented by WebKit) for WebCore to call into WebKit. 101042 This is available as a member of WebCore::Page, set by the platforms which support speech input. 101043 - a SpeechInputClientListener interface for WebCore to receive events from WebKit 101044 101045 No new tests, the relevant LayoutTestController bindings will be added in a subsequent patch. 101046 101047 * Android.mk: 101048 * GNUmakefile.am: 101049 * WebCore.gypi: 101050 * WebCore.pro: 101051 * WebCore.vcproj/WebCore.vcproj: 101052 * WebCore.xcodeproj/project.pbxproj: 101053 * page/Page.cpp: 101054 (WebCore::Page::Page): 101055 * page/Page.h: Added SpeechInputClient member variable and associated methods. 101056 (WebCore::Page::setSpeechInputClient): 101057 (WebCore::Page::speechInputClient): 101058 * page/SpeechInput.cpp: Added new class to provide speech API services to HTML elements. 101059 (WebCore::SpeechInput::SpeechInput): 101060 (WebCore::SpeechInput::recordingComplete): 101061 (WebCore::SpeechInput::setRecognitionResult): 101062 (WebCore::SpeechInput::startRecognition): 101063 * page/SpeechInput.h: Added. 101064 (WebCore::SpeechInput::~SpeechInput): 101065 (WebCore::SpeechInput::client): 101066 * page/SpeechInputListener.h: Added. 101067 (WebCore::SpeechInputListener::~SpeechInputListener): 101068 * page/SpeechInputClient.h: Added new interface implemented by WebKit to bubble up speech API requests to the embedder. 101069 (WebCore::SpeechInputClient::~SpeechInputClient): 101070 * page/SpeechInputClientListener.h: Added. 101071 (WebCore::SpeechInputClientListener::~SpeechInputClientListener): 101072 101073 2010-07-13 Richard Moore <rich (a] kde.org>, Robert Hogan <robert (a] webkit.org> 101074 101075 Reviewed by Simon Hausmann. 101076 101077 [Qt] MIME handling in qtwebkit network layer case-sensitivity 101078 101079 https://bugs.webkit.org/show_bug.cgi?id=28654 101080 101081 Like other platforms, Qt needs to convert MIME types to lower case 101082 so they will be handled by WebCore. 101083 101084 * platform/network/qt/QNetworkReplyHandler.cpp: 101085 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 101086 101087 2010-07-13 James Robinson <jamesr (a] chromium.org> 101088 101089 Reviewed by Simon Fraser. 101090 101091 REGRESSION(55056) debug builds ASSERT falsely on pages with animations 101092 https://bugs.webkit.org/show_bug.cgi?id=42175 101093 101094 Revision 55065 added some repaint box precomputation and some debug ASSERT()ions 101095 to ensure the precomputed values were valid. However, if animations are enabled and 101096 not hardware accelerated, the repaint box dimensions become time-dependent and the 101097 ASSERT()s can trigger. This can make it impossible to interactively debug pages 101098 like google maps. 101099 101100 https://bugs.webkit.org/show_bug.cgi?id=37048 is another example of an assertion 101101 failing due to time dependent animation values. 101102 101103 * rendering/RenderObject.cpp: 101104 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): 101105 101106 2010-07-13 Zhenyao Mo <zmo (a] google.com> 101107 101108 Reviewed by Darin Fisher. 101109 101110 Implement bufferData and bufferSubData with ArrayBuffer as input 101111 https://bugs.webkit.org/show_bug.cgi?id=41884 101112 101113 Test: fast/canvas/webgl/buffer-data-array-buffer.html 101114 101115 * html/canvas/WebGLBuffer.cpp: Implement associateBufferData & associateBufferSubData with ArrayBuffer as input. 101116 (WebCore::WebGLBuffer::associateBufferData): 101117 (WebCore::WebGLBuffer::associateBufferSubData): 101118 * html/canvas/WebGLBuffer.h: Ditto. 101119 * html/canvas/WebGLRenderingContext.cpp: Implement bufferData and bufferSubData with ArrayBuffer as input. 101120 (WebCore::WebGLRenderingContext::bufferData): 101121 (WebCore::WebGLRenderingContext::bufferSubData): 101122 * html/canvas/WebGLRenderingContext.h: Ditto. 101123 * html/canvas/WebGLRenderingContext.idl: Ditto. 101124 * platform/graphics/GraphicsContext3D.h: Ditto. 101125 * platform/graphics/mac/GraphicsContext3DMac.mm: Ditto. 101126 (WebCore::GraphicsContext3D::bufferData): 101127 (WebCore::GraphicsContext3D::bufferSubData): 101128 101129 2010-07-13 Tony Gentilcore <tonyg (a] chromium.org> 101130 101131 Reviewed by Darin Fisher. 101132 101133 Implement performance.timing.responseEnd 101134 https://bugs.webkit.org/show_bug.cgi?id=42006 101135 101136 See: http://dev.w3.org/2006/webapi/WebTiming/#nt-response-end 101137 101138 * loader/FrameLoader.cpp: 101139 (WebCore::FrameLoader::finishedLoading): 101140 * loader/FrameLoaderTypes.h: 101141 (WebCore::FrameLoadTimeline::FrameLoadTimeline): 101142 * page/Timing.cpp: 101143 (WebCore::Timing::responseEnd): 101144 * page/Timing.h: 101145 * page/Timing.idl: 101146 101147 2010-07-13 W. James MacLean <wjmaclean (a] chromium.org> 101148 101149 Reviewed by Darin Fisher 101150 101151 Bug 41962 Limit html canvas element dimensions to 32767 for Skia platform 101152 https://bugs.webkit.org/show_bug.cgi?id=41962 101153 101154 Test: fast/canvas/canvas-skia-excessive-size.html 101155 101156 * WebCore/html/HTMLCanvasElement.cpp 101157 (WebCore::HTMLCanvasElement::convertLogicalToDevice): 101158 101159 2010-07-10 Zhenyao Mo <zmo (a] google.com> 101160 101161 Reviewed by Darin Fisher. 101162 101163 Need to emulate MAX_VARYING_VECTORS/MAX_FRAGMENT_UNIFORM_VECTORs/MAX_VERTEX_UNIFORM_VECTORS for glGet 101164 https://bugs.webkit.org/show_bug.cgi?id=42032 101165 101166 * platform/graphics/mac/GraphicsContext3DMac.mm: 101167 (WebCore::GraphicsContext3D::getIntegerv): Emulate the enums. 101168 101169 2010-07-13 Philippe Normand <pnormand (a] igalia.com> 101170 101171 Reviewed by Eric Carlson. 101172 101173 [GTK] video playback position query flood when mouse over the video element 101174 https://bugs.webkit.org/show_bug.cgi?id=35333 101175 101176 Don't trigger a position query only to know which play/pause 101177 button to display. Instead use the media-control button display 101178 type to select the image to paint. 101179 101180 * platform/gtk/RenderThemeGtk.cpp: 101181 (WebCore::RenderThemeGtk::paintMediaPlayButton): 101182 101183 2010-07-13 Sheriff Bot <webkit.review.bot (a] gmail.com> 101184 101185 Unreviewed, rolling out r63192. 101186 http://trac.webkit.org/changeset/63192 101187 https://bugs.webkit.org/show_bug.cgi?id=42173 101188 101189 Broke fast/backgrounds/size/contain-and-cover.html (Requested 101190 by kling on #webkit). 101191 101192 * manual-tests/css3-background-layer-count.html: Removed. 101193 * rendering/style/FillLayer.cpp: 101194 (WebCore::FillLayer::cullEmptyLayers): 101195 101196 2010-07-13 Marcus Bulach <bulach (a] chromium.org> 101197 101198 Reviewed by Jeremy Orlow. 101199 101200 Removes cycles caused by "m_this" members in a few IndexedDB classes. 101201 https://bugs.webkit.org/show_bug.cgi?id=42161 101202 101203 Adds IDBAny::create for the various types. 101204 No functionality change, just cleaning up. 101205 101206 * storage/IDBAny.cpp: 101207 (WebCore::createIDBAny): 101208 (WebCore::IDBAny::create): 101209 * storage/IDBAny.h: 101210 * storage/IDBDatabaseRequest.cpp: 101211 (WebCore::IDBDatabaseRequest::IDBDatabaseRequest): 101212 (WebCore::IDBDatabaseRequest::createObjectStore): 101213 (WebCore::IDBDatabaseRequest::removeObjectStore): 101214 * storage/IDBDatabaseRequest.h: 101215 * storage/IDBKeyRange.cpp: 101216 (WebCore::IDBKeyRange::IDBKeyRange): 101217 * storage/IDBKeyRange.h: 101218 (WebCore::IDBKeyRange::left): 101219 (WebCore::IDBKeyRange::right): 101220 * storage/IDBObjectStoreRequest.cpp: 101221 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest): 101222 (WebCore::IDBObjectStoreRequest::get): 101223 (WebCore::IDBObjectStoreRequest::add): 101224 (WebCore::IDBObjectStoreRequest::put): 101225 (WebCore::IDBObjectStoreRequest::remove): 101226 (WebCore::IDBObjectStoreRequest::createIndex): 101227 (WebCore::IDBObjectStoreRequest::removeIndex): 101228 * storage/IDBObjectStoreRequest.h: 101229 * storage/IndexedDatabaseRequest.cpp: 101230 (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest): 101231 (WebCore::IndexedDatabaseRequest::open): 101232 * storage/IndexedDatabaseRequest.h: 101233 101234 2010-07-13 Antti Koivisto <koivisto (a] iki.fi> 101235 101236 Reviewed by Kenneth Rohde Christiansen. 101237 101238 [Qt] Land the initial build system for WebKit2 101239 https://bugs.webkit.org/show_bug.cgi?id=41604 101240 101241 The build is enabled by passing --qmakearg="CONFIG+=webkit2" to build-webkit 101242 101243 * WebCore.pri: 101244 * WebCore.pro: 101245 101246 2010-07-13 Leon Clarke <leonclarke (a] google.com> 101247 101248 Reviewed by Pavel Feldman. 101249 101250 Don't access objects after deleting them, following 101251 the addition of link prefetching. Also remove a forward declaration 101252 of the now-nonexistent CachedLinkPrefetch class. 101253 https://bugs.webkit.org/show_bug.cgi?id=3652 101254 101255 No new tests. Correcting aspects of the prefetch change that shouldn't 101256 have affected functionality. 101257 101258 * html/HTMLLinkElement.h: 101259 * loader/loader.cpp: 101260 (WebCore::Loader::Host::cancelPendingRequests): 101261 101262 2010-07-13 Andras Becsi <abecsi (a] webkit.org> 101263 101264 Reviewed by Simon Hausmann. 101265 101266 [Qt] Fix the case of a linker option to lowercase to be able to 101267 cross compile QtWebKit for Windows on Linux. 101268 101269 No new tests needed. 101270 101271 * WebCore.pro: 101272 101273 2010-07-12 Ilya Tikhonovsky <loislo (a] chromium.org> 101274 101275 Reviewed by Yury Semikhatsky. 101276 101277 WebInspector: Next iteration of Inspector code generator. 101278 The InspectorFrontend2 was replaced by slightly modified version of 101279 InspectorBackend file (Inspector.idl). At the end all the interface 101280 between WebInspector and inspected page will be specified by this file 101281 and generated by CodeGeneratorInspector (InspectorFrontend.cpp, 101282 InspectorBackend.cpp and InspectorBackend.js). 101283 https://bugs.webkit.org/show_bug.cgi?id=42104 101284 101285 * DerivedSources.make: 101286 * GNUmakefile.am: 101287 * WebCore.gyp/WebCore.gyp: 101288 * WebCore.gyp/scripts/rule_binding.py: 101289 * WebCore.gypi: 101290 * WebCore.pri: 101291 * WebCore.xcodeproj/project.pbxproj: 101292 * bindings/scripts/IDLParser.pm: 101293 * bindings/scripts/IDLStructure.pm: 101294 * bindings/scripts/generate-bindings.pl: 101295 * inspector/CodeGeneratorInspector.pm: 101296 * inspector/Inspector.idl: Added. 101297 * inspector/InspectorCSSStore.cpp: 101298 (WebCore::InspectorCSSStore::inspectorStyleSheet): 101299 * inspector/InspectorController.cpp: 101300 (WebCore::InspectorController::connectFrontend): 101301 (WebCore::InspectorController::startTimelineProfiler): 101302 * inspector/InspectorController.h: 101303 (WebCore::InspectorController::remoteInspectorFrontend): 101304 * inspector/InspectorDOMAgent.cpp: 101305 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 101306 * inspector/InspectorDOMAgent.h: 101307 (WebCore::InspectorDOMAgent::create): 101308 * inspector/InspectorFrontend2.idl: Removed. 101309 * inspector/InspectorTimelineAgent.cpp: 101310 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 101311 (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): 101312 * inspector/InspectorTimelineAgent.h: 101313 101314 2010-07-12 Steve Block <steveblock (a] google.com> 101315 101316 Reviewed by Jeremy Orlow. 101317 101318 DeviceOrientationEvent should use optional properties 101319 https://bugs.webkit.org/show_bug.cgi?id=41607 101320 101321 This change adds a new DeviceOrientation class which takes care of which of the 101322 optional properties are present. DeviceOrientationEvent owns an instance of 101323 DeviceOrientation, rather than owning the properties directly. 101324 DeviceOrientationEvent now requires custom bindings. 101325 101326 Test: fast/dom/DeviceOrientation/optional-event-properties.html 101327 101328 * Android.mk: 101329 * Android.jscbindings.mk: 101330 * Android.v8bindings.mk: 101331 * CMakeLists.txt: 101332 * GNUmakefile.am: 101333 * WebCore.gypi: 101334 * WebCore.pro: 101335 * WebCore.vcproj/WebCore.vcproj: 101336 * WebCore.xcodeproj/project.pbxproj: 101337 * bindings/js/JSBindingsAllInOne.cpp: 101338 * bindings/js/JSDeviceOrientationEventCustom.cpp: Added. 101339 (WebCore::JSDeviceOrientationEvent::alpha): 101340 (WebCore::JSDeviceOrientationEvent::beta): 101341 (WebCore::JSDeviceOrientationEvent::gamma): 101342 (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent): 101343 * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp: Added. 101344 (WebCore::V8DeviceOrientationEvent::alphaAccessorGetter): 101345 (WebCore::V8DeviceOrientationEvent::betaAccessorGetter): 101346 (WebCore::V8DeviceOrientationEvent::gammaAccessorGetter): 101347 (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback): 101348 * dom/DeviceOrientation.cpp: Added. 101349 * dom/DeviceOrientation.h: Added. 101350 (WebCore::DeviceOrientation::create): 101351 (WebCore::DeviceOrientation::canProvideAlpha): 101352 (WebCore::DeviceOrientation::alpha): 101353 (WebCore::DeviceOrientation::canProvideBeta): 101354 (WebCore::DeviceOrientation::beta): 101355 (WebCore::DeviceOrientation::canProvideGamma): 101356 (WebCore::DeviceOrientation::gamma): 101357 (WebCore::DeviceOrientation::DeviceOrientation): 101358 * dom/DeviceOrientationEvent.cpp: 101359 (WebCore::DeviceOrientationEvent::DeviceOrientationEvent): 101360 (WebCore::DeviceOrientationEvent::initDeviceOrientationEvent): 101361 * dom/DeviceOrientationEvent.h: 101362 (WebCore::DeviceOrientationEvent::create): 101363 (WebCore::DeviceOrientationEvent::orientation): 101364 * dom/DeviceOrientationEvent.idl: 101365 101366 2010-07-13 Andreas Kling <andreas.kling (a] nokia.com> 101367 101368 Reviewed by Antti Koivisto. 101369 101370 CSS3 background: Number of layers should be determined by background-image element count 101371 https://bugs.webkit.org/show_bug.cgi?id=41201 101372 101373 Change FillLayer culling logic to discard all layers 101374 after the first one without an image set. 101375 101376 Manual test: css3-background-layer-count.html 101377 101378 * manual-tests/css3-background-layer-count.html: Added. 101379 * rendering/style/FillLayer.cpp: 101380 (WebCore::FillLayer::cullEmptyLayers): 101381 101382 2010-07-07 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 101383 101384 Reviewed by Darin Adler. 101385 101386 Prevent assertion/duplicate loads for non-deferred subtitute-data loads 101387 101388 https://bugs.webkit.org/show_bug.cgi?id=30879 101389 101390 MainResourceLoader uses the member m_initialRequest to store requests for future 101391 deferred loads. When doing the actual load in handleDataLoadNow(), we therefore 101392 have to clear this request so that subsequent entries into the loader will not 101393 start yet another load. 101394 101395 This can happen as a result of a PageGroupLoadDeferrer going out of scope when 101396 returning from Chrome::runJavaScriptAlert(), which calls setDeferredLoading(false), 101397 but only in the case of using both substitute-data and non-deferred main resource 101398 load together. That's why two new DRT functions were added: 101399 101400 * queueLoadHTMLString() 101401 * setDeferMainResourceLoad() 101402 101403 The change adds DRT hooks for Mac, Win and Qt for these two functions. For Mac 101404 and Win the hook uses new SPI in WebDataSource. For Qt a new static member was 101405 added to the FrameLoaderClientQt and accessed though DumpRenderTreeSupportQt. 101406 101407 Test: fast/loader/non-deferred-substitute-load.html 101408 101409 * loader/MainResourceLoader.cpp: 101410 (WebCore::MainResourceLoader::handleDataLoadNow): 101411 101412 2010-07-13 Yoshiki Hayashi <yhayashi (a] google.com> 101413 101414 Reviewed by Kent Tamura. 101415 101416 Make sure correct Nodes are passed to childrenChanged so that 101417 :last-child gets properly applied when fragment is inserted. 101418 https://bugs.webkit.org/show_bug.cgi?id=37944 101419 101420 Test: fast/css/last-child-innerhtml.html 101421 101422 * dom/ContainerNode.cpp: 101423 (WebCore::ContainerNode::replaceChild): 101424 (WebCore::ContainerNode::appendChild): 101425 101426 2010-07-13 Ryosuke Niwa <rniwa (a] webkit.org> 101427 101428 Reviewed by Kent Tamura. 101429 101430 InsertListCommand's modifyRange and doApply should be merged 101431 https://bugs.webkit.org/show_bug.cgi?id=41403 101432 101433 Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph. 101434 Merged the code in modifyRange into doApply and cleaned up. 101435 101436 No test is added since this is a clean up. 101437 101438 * editing/InsertListCommand.cpp: 101439 (WebCore::InsertListCommand::InsertListCommand): m_forceCreateList is no longer initialized 101440 (WebCore::InsertListCommand::doApply): Isolated the code to insert/remove lists in doApplyForSingleParagraph 101441 (WebCore::InsertListCommand::doApplyForSingleParagraph): Insert/remove lists for single paragraph 101442 * editing/InsertListCommand.h: Added doApplyForSingleParagraph and removed m_forceCreateList 101443 101444 2010-07-12 Eric Seidel <eric (a] webkit.org> 101445 101446 Reviewed by Adam Barth. 101447 101448 Fix typo in "close the cell" which caused assertion 101449 https://bugs.webkit.org/show_bug.cgi?id=42138 101450 101451 * html/HTMLTreeBuilder.cpp: 101452 (WebCore::HTMLTreeBuilder::closeTheCell): 101453 101454 2010-07-12 Eric Seidel <eric (a] webkit.org> 101455 101456 Reviewed by Adam Barth. 101457 101458 Fix line number handling in HTMLTreeBuilder to fix a zillion layout tests 101459 https://bugs.webkit.org/show_bug.cgi?id=42143 101460 101461 Covered by a zillion layout tests. 101462 101463 * html/HTMLTreeBuilder.cpp: 101464 (WebCore::HTMLTreeBuilder::processEndTag): 101465 (WebCore::HTMLTreeBuilder::processScriptStartTag): 101466 101467 2010-07-12 Jay Civelli <jcivelli (a] chromium.org> 101468 101469 Reviewed by Kent Tamura. 101470 101471 Adding right aligned text called labels to PopupMenus. 101472 https://bugs.webkit.org/show_bug.cgi?id=41964 101473 101474 * platform/PopupMenuClient.h: 101475 * platform/chromium/PopupMenuChromium.cpp: 101476 (WebCore::PopupListBox::paintRow): 101477 * rendering/RenderMenuList.cpp: 101478 (WebCore::RenderMenuList::itemLabel): 101479 * rendering/RenderMenuList.h: 101480 * rendering/RenderTextControlSingleLine.cpp: 101481 (WebCore::RenderTextControlSingleLine::itemLabel): 101482 * rendering/RenderTextControlSingleLine.h: 101483 101484 2010-07-12 Mihnea Ovidenea <mihnea (a] adobe.com> 101485 101486 Reviewed by Dirk Schulze. 101487 101488 [Cairo] Incorrect Test for Text Fill 101489 https://bugs.webkit.org/show_bug.cgi?id=42123 101490 101491 Correct test used for text shadow. It currently checks for 101492 equality with cTextFill. However, this test fails if the 101493 text drawing mode is set to 'cTextFill | cTextStroke'. Fix 101494 is to modify the test to be like other Cairo uses of the 101495 text drawing mode, and check for the cTextFill bit being 101496 set, not for equality with the bit. 101497 101498 * platform/graphics/cairo/FontCairo.cpp: 101499 (WebCore::Font::drawGlyphs): 101500 101501 2010-07-12 Eric Seidel <eric (a] webkit.org> 101502 101503 Reviewed by Sam Weinig. 101504 101505 Fix a typo in the adoption agency causing test failures 101506 https://bugs.webkit.org/show_bug.cgi?id=42133 101507 101508 The new behavior actually differs from old webkit. 101509 <p><b><p>TEST 101510 was not bold in the old parser, but is bold now. 101511 This matches Minefield and the HTML5 spec. 101512 101513 Covered by two tests in html5lib/runner.html. 101514 101515 * html/HTMLTreeBuilder.cpp: 101516 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 101517 101518 2010-07-12 Pavel Feldman <pfeldman (a] chromium.org> 101519 101520 Reviewed by Joseph Pecoraro. 101521 101522 Web Inspector: provide starts and ends for network phases instead of duration. 101523 101524 https://bugs.webkit.org/show_bug.cgi?id=42091 101525 101526 * inspector/InspectorResource.cpp: 101527 (WebCore::InspectorResource::updateResponse): 101528 (WebCore::InspectorResource::updateScriptObject): 101529 (WebCore::InspectorResource::buildObjectForTiming): 101530 * platform/network/ResourceLoadTiming.h: 101531 (WebCore::ResourceLoadTiming::deepCopy): 101532 (WebCore::ResourceLoadTiming::operator==): 101533 (WebCore::ResourceLoadTiming::ResourceLoadTiming): 101534 * platform/network/ResourceResponseBase.cpp: 101535 (WebCore::ResourceResponseBase::ResourceResponseBase): 101536 (WebCore::ResourceResponseBase::wasCached): 101537 (WebCore::ResourceResponseBase::setWasCached): 101538 * platform/network/ResourceResponseBase.h: 101539 101540 2010-07-12 Adam Barth <abarth (a] webkit.org> 101541 101542 Reviewed by Eric Seidel. 101543 101544 HTML5 Parser: document.write after onload blows away document 101545 https://bugs.webkit.org/show_bug.cgi?id=40745 101546 101547 Rather than blowing away the document when we get a document.write call 101548 after the document is closed, we new ignore the write. This 101549 technically violates the spec (which requires us to blow away the 101550 document), but blowing away the document breaks too many web sites. 101551 101552 Rather than this patch, we could go back to our old behavior (which was 101553 to append the bytes just before EOF), but implementing this approach 101554 (suggested by Henri) will let us gather data about whether his approach 101555 is workable. 101556 101557 See also: http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767 101558 101559 * dom/Document.cpp: 101560 (WebCore::Document::write): 101561 * html/HTMLDocumentParser.cpp: 101562 (WebCore::HTMLDocumentParser::insert): 101563 101564 2010-07-12 Tony Gentilcore <tonyg (a] chromium.org> 101565 101566 Reviewed by Oliver Hunt. 101567 101568 Strip BOMs from source before passing to V8 101569 https://bugs.webkit.org/show_bug.cgi?id=42102 101570 101571 This extra copy may carry a performance penalty. We should investigate 101572 whether this allows any simplification in v8/scanner.cc:SkipJavaScriptWhiteSpace(). 101573 101574 No new tests because no new functionality. 101575 101576 * bindings/v8/ScriptSourceCode.h: 101577 (WebCore::ScriptSourceCode::ScriptSourceCode): 101578 101579 2010-07-12 Gustavo Noronha Silva <gns (a] gnome.org> 101580 101581 Unreviewed. make distcheck fix. 101582 101583 * GNUmakefile.am: 101584 101585 2010-07-12 Yuta Kitamura <yutak (a] chromium.org> 101586 101587 Reviewed by Alexey Proskuryakov. 101588 101589 Fix crash caused by unintentional deletion of worker bridge and channel. 101590 101591 WebSocket: Crash caused by calling close() within onmessage handler 101592 https://bugs.webkit.org/show_bug.cgi?id=41507 101593 101594 Test: websocket/tests/workers/close-in-onmessage-crash.html 101595 101596 * websockets/WebSocket.cpp: 101597 (WebCore::WebSocket::close): bufferedAmount() may call WebSocket::didClose(), 101598 which causes m_channel to get freed. 101599 * websockets/WorkerThreadableWebSocketChannel.cpp: 101600 (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Add reference to 101601 the bridge because waitForMethodCompletion() may dereference the bridge. 101602 (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount): Ditto. 101603 (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion): 101604 The root cause is a call to WorkerRunLoop::runInMode in this function. 101605 It may call WebSocket::didClose() even inside WebSocket::close(), which frees 101606 everything including the worker bridge and the channel. 101607 101608 2010-07-12 Adam Barth <abarth (a] webkit.org> 101609 101610 Reviewed by Eric Seidel. 101611 101612 REGRESSION (HTML5 parser?): Impossible to get past the CAPTCHA on postcode.royalmail.com 101613 https://bugs.webkit.org/show_bug.cgi?id=41797 101614 101615 Once we resume parsing after script execution, we want to clear the 101616 preload scanner so we don't scan any bytes it might have accumulated. 101617 101618 Test: http/tests/loading/preload-slow-loading.php 101619 101620 * html/HTMLDocumentParser.cpp: 101621 (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution): 101622 101623 2010-07-12 Albert J. Wong <ajwong (a] chromium.org> 101624 101625 Reviewed by Jian Li. 101626 101627 Adding directional property enums back into 101628 CSSComputedStyleDeclaration::getPropertyCSSValue(). 101629 101630 https://bugs.webkit.org/show_bug.cgi?id=42122 101631 101632 The four directional -webkit- properties -- CSSPropertyWebkitMarginEnd, 101633 CSSPropertyWebkitMarginStart, CSSPropertyWebkitPaddingEnd, and 101634 CSSPropertyWebkitPaddingStart -- are resolved into other css 101635 properties before the swtich statement via a call to 101636 CSSProperty::resolveDirectionAwareProperty(). Thus, they are never 101637 seen by the switch statement. However, if you leave out a potential 101638 enum value from the switch, gcc will generate a warning if -Wall is 101639 specified. This warning breaks the Chromium build. To avoid this, 101640 we add in the enum values and ASSERT_NOT_REACHED() if they are hit. 101641 101642 101643 * css/CSSComputedStyleDeclaration.cpp: 101644 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 101645 101646 2010-07-12 Chris Fleizach <cfleizach (a] apple.com> 101647 101648 Reviewed by Darin Adler. 101649 101650 AX converts AtomicStrings to .string() more than needed 101651 https://bugs.webkit.org/show_bug.cgi?id=42056 101652 101653 No behavior change. No new tests. 101654 101655 * accessibility/AccessibilityRenderObject.cpp: 101656 (WebCore::AccessibilityRenderObject::isPressed): 101657 (WebCore::siblingWithAriaRole): 101658 (WebCore::AccessibilityRenderObject::intValue): 101659 (WebCore::AccessibilityRenderObject::accessibilityDescription): 101660 (WebCore::AccessibilityRenderObject::hasTextAlternative): 101661 (WebCore::AccessibilityRenderObject::supportsARIAFlowTo): 101662 (WebCore::AccessibilityRenderObject::supportsARIADropping): 101663 (WebCore::AccessibilityRenderObject::supportsARIADragging): 101664 (WebCore::AccessibilityRenderObject::determineARIADropEffects): 101665 (WebCore::AccessibilityRenderObject::isExpanded): 101666 (WebCore::AccessibilityRenderObject::isRequired): 101667 (WebCore::AccessibilityRenderObject::isSelected): 101668 (WebCore::AccessibilityRenderObject::supportsARIAOwns): 101669 (WebCore::AccessibilityRenderObject::isEnabled): 101670 (WebCore::AccessibilityRenderObject::activeDescendant): 101671 (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute): 101672 (WebCore::AccessibilityRenderObject::orientation): 101673 (WebCore::AccessibilityRenderObject::canSetExpandedAttribute): 101674 (WebCore::AccessibilityRenderObject::canSetValueAttribute): 101675 101676 2010-07-12 Tony Chang <tony (a] chromium.org> 101677 101678 Reviewed by David Hyatt. 101679 101680 crash in FrameView::detachCustomScrollbars 101681 https://bugs.webkit.org/show_bug.cgi?id=41196 101682 101683 Test: scrollbars/hidden-iframe-scrollbar-crash.html 101684 101685 * page/FrameView.cpp: 101686 (WebCore::FrameView::detachCustomScrollbars): 101687 101688 2010-07-12 Eric Seidel <eric (a] webkit.org> 101689 101690 Reviewed by Adam Barth. 101691 101692 HTML tags should break out of foreign content 101693 https://bugs.webkit.org/show_bug.cgi?id=42106 101694 101695 Implement another paragraph of the spec to pass another 101696 bunch of foreign content tests. 101697 101698 This fixes a bunch of tests in html5lib/runner.html. 101699 After this change we only have 4 remaining foreign content failures. 101700 101701 * html/HTMLTreeBuilder.cpp: 101702 (WebCore::HTMLTreeBuilder::processStartTag): 101703 101704 2010-07-12 Zhenyao Mo <zmo (a] google.com> 101705 101706 Reviewed by Darin Fisher. 101707 101708 Bring bufferData and clear to GLES2 compliant 101709 https://bugs.webkit.org/show_bug.cgi?id=41574 101710 101711 * html/canvas/WebGLRenderingContext.cpp: 101712 (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataUsage(). 101713 (WebCore::WebGLRenderingContext::clear): Check mask. 101714 (WebCore::WebGLRenderingContext::validateBufferDataUsage): Check usage. 101715 * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataUsage. 101716 101717 2010-07-12 Eric Seidel <eric (a] webkit.org> 101718 101719 Unreviewed. Attempt to fix Chromium Windows build. 101720 101721 Always generate SVGNames and MathMLNames for all ports (to support HTML5) 101722 https://bugs.webkit.org/show_bug.cgi?id=42050 101723 101724 Another way to fix this might be to mark all the .in files with 101725 svn:eol=native. But fixing the perl to be more robust against 101726 stray whitespace seems to be a better long-term fix. 101727 101728 No functional change, thus no tests. 101729 101730 * bindings/scripts/InFilesParser.pm: 101731 101732 2010-07-12 Andreas Kling <andreas.kling (a] nokia.com> 101733 101734 Reviewed by Kenneth Rohde Christiansen. 101735 101736 Remove dependency on PlatformString.h in Color.h 101737 https://bugs.webkit.org/show_bug.cgi?id=42109 101738 101739 * platform/graphics/Color.cpp: 101740 * platform/graphics/Color.h: 101741 101742 2010-07-12 Eric Seidel <eric (a] webkit.org> 101743 101744 Unreviewed, build fix. 101745 101746 Update HTMLTreeBuilder now that MathMLNames is always generated 101747 https://bugs.webkit.org/show_bug.cgi?id=42059 101748 101749 Fix the Windows project file to build MathMLNames.*. 101750 Also added MathMLElementFactory.* which is a NOOP now, but will 101751 prevent folks from breaking the build when they turn MathML on. 101752 101753 * WebCore.vcproj/WebCore.vcproj: 101754 101755 2010-07-12 Eric Carlson <eric.carlson (a] apple.com> 101756 101757 Reviewed by Darin Adler. 101758 101759 Update media element's handling of empty 'src' attribute 101760 https://bugs.webkit.org/show_bug.cgi?id=42001 101761 101762 * html/HTMLMediaElement.cpp: 101763 (WebCore::HTMLMediaElement::src): Return getNonEmptyURLAttribute(). 101764 (WebCore::HTMLMediaElement::selectMediaResource): Call noneSupported() for empty 'src'. 101765 (WebCore::HTMLMediaElement::selectNextSourceChild): Use getNonEmptyURLAttribute() to convert 101766 'src' to URL instead of document()->completeURL(). Don't consider a <source> with an empty 'src'. 101767 101768 * html/HTMLMediaElement.idl: Add 'NonEmpty' option to 'src' attribute. 101769 101770 * html/HTMLSourceElement.cpp: 101771 (WebCore::HTMLSourceElement::src): Return getNonEmptyURLAttribute(). 101772 (WebCore::HTMLSourceElement::isURLAttribute): New, 'src' is a URL attribute. 101773 * html/HTMLSourceElement.h: 101774 101775 * html/HTMLSourceElement.idl: Add 'NonEmpty' option to 'src' attribute. 101776 101777 * html/HTMLVideoElement.cpp: 101778 (WebCore::HTMLVideoElement::parseMappedAttribute): Use getNonEmptyURLAttribute() to convert 101779 'poster' to URL instead of document()->completeURL(). 101780 101781 * html/HTMLVideoElement.idl: Add 'NonEmpty' option to 'poster' attribute. 101782 101783 2010-07-12 Martin Robinson <mrobinson (a] igalia.com> 101784 101785 Reviewed by Xan Lopez. 101786 101787 [GTK] make dist is broken because of missing headers and other miscellaneous reasons 101788 https://bugs.webkit.org/show_bug.cgi?id=42107 101789 101790 * GNUmakefile.am: Remove InspectorFrontend2.idl from the list of IDL files, so 101791 that it is not built into libWebCoreJS. Add missing header to the source list. 101792 Make sure to distribute the new file: WebCore/inspector/CodeGeneratorInspector.pm. 101793 101794 2010-07-12 Eric Seidel <eric (a] webkit.org> 101795 101796 Reviewed by Adam Barth. 101797 101798 HTMLTreeBuilder needs to support mixing SVG and MathML content 101799 https://bugs.webkit.org/show_bug.cgi?id=42096 101800 101801 This is just a direct transcription of another paragraph of the 101802 HTML5 spec. 101803 101804 This improved a couple results in html5lib/runner.html, but more 101805 work to do yet to pass all the foreign content tests. 101806 101807 * html/HTMLTreeBuilder.cpp: 101808 (WebCore::HTMLTreeBuilder::processStartTag): 101809 (WebCore::HTMLTreeBuilder::processEndTag): 101810 (WebCore::HTMLTreeBuilder::processUsingSecondaryInsertionModeAndAdjustInsertionMode): 101811 * html/HTMLTreeBuilder.h: 101812 * mathml/mathtags.in: 101813 101814 2010-07-12 Eric Seidel <eric (a] webkit.org> 101815 101816 Reviewed by Adam Barth. 101817 101818 Update HTMLTreeBuilder now that MathMLNames is always generated 101819 https://bugs.webkit.org/show_bug.cgi?id=42059 101820 101821 Fix the HTMLTreeBuilder MathML code path to compile and remove 101822 the MathML and SVG guards now that SVGNames and MathMLNames are 101823 always compiled into ever port after: 101824 https://bugs.webkit.org/show_bug.cgi?id=42050 101825 101826 This fixed a whole bunch of libhtml5 tests now that we have the 101827 mathml code paths enabled. 101828 101829 * html/HTMLTreeBuilder.cpp: 101830 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 101831 (WebCore::HTMLTreeBuilder::processStartTag): 101832 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 101833 (WebCore::HTMLTreeBuilder::processEndTag): 101834 * page/Frame.cpp: 101835 (WebCore::Frame::Frame): 101836 - Always init SVGNames and MathML names. 101837 101838 2010-07-12 Simon Fraser <simon.fraser (a] apple.com> 101839 101840 Reviewed by Dan Bernstein. 101841 101842 Don't go into compositing mode for 0x0 plugins 101843 https://bugs.webkit.org/show_bug.cgi?id=34009 101844 101845 Don't use compositing for small (0-height or width, or 1x1) plugins, or iframes whose 101846 height or width is zero. 101847 101848 Previously we made all compositing decisions inside styleChanged(). However, 101849 now that plugin and iframe compositing behavior depends on renderer size, we have 101850 to wait until layout before deciding whether to composite these. This behavior 101851 change is controlled by the m_compositingDependsOnGeometry flag. When set, 101852 updateCompositingLayers() always does a hierarchy update. 101853 101854 Tests: compositing/iframes/iframe-size-from-zero.html 101855 compositing/iframes/iframe-size-to-zero.html 101856 compositing/plugins/1x1-composited-plugin.html 101857 compositing/plugins/large-to-small-composited-plugin.html 101858 compositing/plugins/small-to-large-composited-plugin.html 101859 101860 * page/FrameView.cpp: 101861 (WebCore::FrameView::updateCompositingLayers): No longer bail if usesCompositing() is false; we 101862 have to always enter updateCompositingLayers(). 101863 (WebCore::FrameView::repaintFixedElementsAfterScrolling): Ditto 101864 (WebCore::FrameView::enterCompositingMode): Remove bogus return of a void. 101865 101866 * rendering/RenderLayerCompositor.h: Add m_compositingDependsOnGeometry. 101867 * rendering/RenderLayerCompositor.cpp: 101868 (WebCore::RenderLayerCompositor::RenderLayerCompositor): Initialize m_compositingDependsOnGeometry to false. 101869 (WebCore::RenderLayerCompositor::updateCompositingLayers): If m_compositingDependsOnGeometry is true, 101870 we always need to run through the layer hierarchy looking for things which need to be composited, even if 101871 we're not (yet) in compositing mode. 101872 101873 (WebCore::RenderLayerCompositor::computeCompositingRequirements): Because we can enter compositing mode 101874 on the fly inside updateCompositingLayers() now, the state of willBeComposited needs to be updated 101875 when processing the root layer, for the case where the compositing mode changes. 101876 101877 (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Set the m_compositingDependsOnGeometry 101878 flag if we see a potentially-composited plugin. Once we have layout information, only composite the plugin 101879 if height * width > 1. 101880 101881 (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): Set the m_compositingDependsOnGeometry 101882 flag if we see a potentially-composited iframe. Once we have layout information, only composite the plugin 101883 if height or width is greater than zero. 101884 101885 2010-07-12 Simon Fraser <simon.fraser (a] apple.com> 101886 101887 Reviewed by Dan Bernstein. 101888 101889 Need to do a layout when RenderLayers come and go because of compositing 101890 https://bugs.webkit.org/show_bug.cgi?id=42108 101891 101892 If we create or destroy RenderLayers for reasons other than style changes 101893 (e.g. because of composited iframes or plugins), then we need to ensure 101894 that we do a layout. 101895 101896 Test: compositing/iframes/layout-on-compositing-change.html 101897 101898 * rendering/RenderObject.cpp: 101899 (WebCore::RenderObject::adjustStyleDifference): 101900 101901 2010-07-11 Eric Seidel <eric (a] webkit.org> 101902 101903 Reviewed by Darin Adler. 101904 101905 Always generate SVGNames and MathMLNames for all ports (to support HTML5) 101906 https://bugs.webkit.org/show_bug.cgi?id=42050 101907 101908 Historically, FOONames has only been generate when ENABLE(FOO) is defined. 101909 However, for HTML5 parser support, we need to have access to the SVG 101910 and MathML tag names regardless of whether we the engine is configured 101911 to render SVG or MathML content. 101912 101913 This change enables generation of SVGNames and MathMLNames on all ports and 101914 makes it so that ports can include FOOElementFactory.* regardless of whether 101915 ENABLE(FOO) is defined (and have it do the right thing). 101916 101917 No functional change (yet) so no tests. 101918 101919 * DerivedSources.make: 101920 * GNUmakefile.am: 101921 * WebCore.gyp/WebCore.gyp: 101922 * WebCore.pri: 101923 * dom/make_names.pl: 101924 101925 2010-07-10 Eric Seidel <eric (a] webkit.org> 101926 101927 Reviewed by Adam Barth. 101928 101929 make_names.pl should always generate all names in Names.* files 101930 https://bugs.webkit.org/show_bug.cgi?id=42023 101931 101932 Only the *ElementFactory files need to have conditional contents 101933 based on enabled features. WebCore should always have all known 101934 names for SVG, MathML, XML, XLink, HTML, etc. generated in the 101935 various *Names files, even if features are disabled. 101936 101937 make_names.pl is kinda a big hack at this point. I tried to clean 101938 up a little as I went. The way I made *Names include all names was to 101939 read the .in files twice, once using the preprocessor and once without. 101940 101941 * dom/make_names.pl: 101942 101943 2010-07-12 Andreas Kling <andreas.kling (a] nokia.com> 101944 101945 Reviewed by Oliver Hunt. 101946 101947 Canvas: Move fillRect() save/restore into GraphicsContext implementations 101948 https://bugs.webkit.org/show_bug.cgi?id=42088 101949 101950 Saving the platform painter state is an expensive operation, 101951 so don't do it in fillRect() for platforms that don't need it. (CG, Qt) 101952 101953 * html/canvas/CanvasRenderingContext2D.cpp: 101954 (WebCore::CanvasRenderingContext2D::fillRect): 101955 * platform/graphics/cairo/GraphicsContextCairo.cpp: 101956 (WebCore::GraphicsContext::fillRect): 101957 * platform/graphics/skia/GraphicsContextSkia.cpp: 101958 (WebCore::GraphicsContext::fillRect): 101959 * platform/graphics/wince/GraphicsContextWince.cpp: 101960 (WebCore::GraphicsContext::fillRect): 101961 * platform/graphics/wx/GraphicsContextWx.cpp: 101962 (WebCore::GraphicsContext::fillRect): 101963 101964 2010-07-12 Nate Chapin <japhet (a] chromium.org> 101965 101966 Reviewed by Darin Fisher. 101967 101968 Ensure that a cache policy that forces validation is cleared once 101969 the load event is fired, rather than only doing so at the next 101970 navigation. This leads to a lot of unnecessary load on AJAX-y 101971 websites. 101972 101973 https://bugs.webkit.org/show_bug.cgi?id=41813 101974 101975 Test: http/tests/xmlhttprequest/cache-headers-after-reload.html 101976 101977 * loader/FrameLoader.cpp: 101978 (WebCore::FrameLoader::handledOnloadEvents): Reset m_loadType to FrameLoadTypeStandard. 101979 (WebCore::FrameLoader::addExtraFieldsToRequest): Only respect the original request's cache policy if the 101980 DocumentLoader is still loading, and handle the other cache policy settings that were scattered around the loader. 101981 (WebCore::FrameLoader::loadResourceSynchronously): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest. 101982 * loader/SubresourceLoader.cpp: 101983 (WebCore::SubresourceLoader::create): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest. 101984 101985 2010-07-12 Andreas Kling <andreas.kling (a] nokia.com> 101986 101987 Reviewed by Oliver Hunt. 101988 101989 CSS color parsing optimizations 101990 https://bugs.webkit.org/show_bug.cgi?id=42073 101991 101992 - Avoid instantiating a CSSParser in parseColor() unless necessary. 101993 - Fixed hex color fast-path to support strings starting with '#'. 101994 - Avoid allocating a new string for the value part of a '#' color. 101995 101996 * css/CSSParser.cpp: 101997 (WebCore::CSSParser::parseColor): 101998 * platform/graphics/Color.cpp: 101999 (WebCore::Color::parseHexColor): 102000 (WebCore::Color::Color): 102001 * platform/graphics/Color.h: 102002 102003 2010-07-09 Alexey Proskuryakov <ap (a] apple.com> 102004 102005 Reviewed by Darin Adler. 102006 102007 https://bugs.webkit.org/show_bug.cgi?id=13075 102008 XMLHttpRequest with failed authentication should set status to 401 102009 102010 https://bugs.webkit.org/show_bug.cgi?id=6871 102011 <rdar://problem/3363403> 401 error page is never shown 102012 102013 * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::receivedCredential): 102014 Added a comment explaining why we handle empty credentials differently here. 102015 102016 * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::receivedCredential): 102017 Bring this code in sync with Mac. 102018 102019 2010-07-12 Anders Carlsson <andersca (a] apple.com> 102020 102021 Reviewed by Adam Roben. 102022 102023 Add a PluginController class, use it for invalidation and getting the user agent 102024 https://bugs.webkit.org/show_bug.cgi?id=42084 102025 102026 * WebCore.exp.in: 102027 Export Widget::convertToContainingWindow. 102028 102029 2010-07-12 Andreas Kling <andreas.kling (a] nokia.com> 102030 102031 Reviewed by Simon Hausmann. 102032 102033 [Qt] Dragging within webkit with a drag created via Javascript ends up misinterpreting the data 102034 https://bugs.webkit.org/show_bug.cgi?id=41457 102035 102036 Treat non-special-cased mime-types as Unicode strings in ClipboardQt's getData() 102037 Fixes corruption when retrieving data that was set with anything other than text/plain 102038 102039 Also use QMimeData::setHtml() when applicable to be consistent with PasteboardQt. 102040 102041 * platform/qt/ClipboardQt.cpp: 102042 (WebCore::isHtmlMimeType): 102043 (WebCore::ClipboardQt::getData): 102044 (WebCore::ClipboardQt::setData): 102045 102046 2010-07-12 Steve Block <steveblock (a] google.com> 102047 102048 Reviewed by Jeremy Orlow. 102049 102050 add ANDROID to STORE_FONT_CUSTOM_PLATFORM_DATA 102051 https://bugs.webkit.org/show_bug.cgi?id=32273 102052 102053 Tested by existing tests, just adding ANDROID to the list of platforms that use this feature. 102054 102055 * loader/CachedFont.cpp: 102056 102057 2010-07-12 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 102058 102059 Unreviewed. 102060 102061 [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to 102062 CMakeListsEfl.txt. 102063 102064 * CMakeLists.txt: 102065 * CMakeListsEfl.txt: 102066 102067 2010-07-12 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 102068 102069 Unreviewed build fix after r60050. 102070 102071 * CMakeLists.txt: Add WebCore/bindings to the include path. 102072 102073 2010-07-09 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 102074 102075 Reviewed by Xan Lopez. 102076 102077 [GTK] Crashes when going back with page cache in unknown circunstances 102078 https://bugs.webkit.org/show_bug.cgi?id=41710 102079 102080 Could not yet find a way to reproduce this in a layout test. The 102081 issue is document being NULL, so this NULL-check should be enough 102082 to get rid of the crash. We are working on trying to find a better 102083 solution for these null cases, like attaching the document earlier 102084 when openning a cached page. 102085 102086 * page/EventHandler.cpp: 102087 (WebCore::EventHandler::sendScrollEvent): 102088 102089 2010-07-12 Alexander Pavlov <apavlov (a] chromium.org> 102090 102091 Reviewed by Yury Semikhatsky. 102092 102093 [Chromium] Crash when stepping on a breakpoint while debugging Web Inspector 102094 https://bugs.webkit.org/show_bug.cgi?id=41958 102095 102096 * page/PageGroupLoadDeferrer.cpp: 102097 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): 102098 * page/PageGroupLoadDeferrer.h: 102099 102100 2010-07-12 Franois Sausset <sausset (a] gmail.com> 102101 102102 Reviewed by Kenneth Rohde Christiansen. 102103 102104 Make the mathsize MathML attribute handle values in em, px, pt,... 102105 https://bugs.webkit.org/show_bug.cgi?id=42067 102106 102107 Test: mathml/presentation/attributes.xhtml 102108 102109 * css/mathml.css: 102110 (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]): 102111 (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]): 102112 (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]): 102113 * mathml/MathMLElement.cpp: 102114 (WebCore::MathMLElement::parseMappedAttribute): 102115 102116 2010-07-12 Xan Lopez <xlopez (a] igalia.com> 102117 102118 Reviewed by Gustavo Noronha. 102119 102120 Fix compilation with sealed GTK+. 102121 102122 * platform/gtk/GtkVersioning.h: 102123 * platform/gtk/PasteboardHelper.cpp: 102124 (WebCore::PasteboardHelper::fillDataObjectFromDropData): 102125 102126 2010-07-12 Franois Sausset <sausset (a] gmail.com> 102127 102128 Reviewed by Kenneth Rohde Christiansen. 102129 102130 Fix a bug preventing msqrt and mfrac to use style color to draw themselves. 102131 In mfrac, the fraction bar is now using the color defined by the element style instead of black. 102132 In msqrt, the radical was always drawn in black due to a colorSpace problem. 102133 https://bugs.webkit.org/show_bug.cgi?id=41889 102134 102135 Test: mathml/presentation/roots.xhtml 102136 Test: mathml/presentation/fractions.xhtml 102137 102138 * mathml/RenderMathMLFraction.cpp: 102139 (WebCore::RenderMathMLFraction::paint): 102140 * mathml/RenderMathMLSquareRoot.cpp: 102141 (WebCore::RenderMathMLSquareRoot::paint): 102142 102143 2010-07-12 Andreas Kling <andreas.kling (a] nokia.com> 102144 102145 Reviewed by Antti Koivisto. 102146 102147 Canvas: arc() with startAngle == endAngle shouldn't add to the path 102148 https://bugs.webkit.org/show_bug.cgi?id=41420 102149 102150 Spec link: 102151 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-stroke 102152 102153 * html/canvas/CanvasRenderingContext2D.cpp: 102154 (WebCore::CanvasRenderingContext2D::arc): 102155 102156 2010-07-12 Shinichiro Hamaji <hamaji (a] chromium.org> 102157 102158 Reviewed by Ojan Vafai. 102159 102160 Update padding on Windows? 102161 https://bugs.webkit.org/show_bug.cgi?id=38016 102162 102163 Remove internal padding and add 1px vertical padding for Windows. 102164 102165 * css/themeWin.css: 102166 (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button): 102167 * rendering/RenderButton.cpp: 102168 (WebCore::RenderButton::setupInnerStyle): 102169 * rendering/RenderTheme.h: 102170 * rendering/RenderThemeWin.cpp: 102171 * rendering/RenderThemeWin.h: 102172 * rendering/RenderThemeWince.cpp: 102173 * rendering/RenderThemeWince.h: 102174 102175 2010-07-12 Pavel Feldman <pfeldman (a] chromium.org> 102176 102177 Not reviewed. Chromium tests fix. 102178 102179 [Chromium, V8] r63057 regressed url tests. 102180 102181 https://bugs.webkit.org/show_bug.cgi?id=42063 102182 102183 * bindings/scripts/CodeGeneratorV8.pm: 102184 102185 2010-07-12 Steve Block <steveblock (a] google.com> 102186 102187 Reviewed by Alexey Proskuryakov. 102188 102189 XPath substring function does not correctly handle non-positive values for the position argument 102190 https://bugs.webkit.org/show_bug.cgi?id=41913 102191 102192 This patch changes the behavior of the XPath evaluate function when a non-positive 102193 position argument is supplied and no length argument is supplied. In this case, 102194 we reset the position to 1. This follows the spec and matches the current behaviour 102195 when a length argument is supplied. 102196 102197 Test: fast/xpath/substring-non-positive-postion.html 102198 102199 * xml/XPathFunctions.cpp: 102200 (WebCore::XPath::FunSubstring::evaluate): 102201 102202 2010-06-27 Jeremy Orlow <jorlow (a] chromium.org> 102203 102204 Reviewed by Dumitru Daniliuc. 102205 102206 Implement IDBObjectStore.get/set/remove 102207 https://bugs.webkit.org/show_bug.cgi?id=41250 102208 102209 Implement these functions in IDBObjectStore, 102210 add plumbing, teach IDBAny/Callbacks how to deal 102211 with IDBKey, and a few small bits of cleanup. 102212 102213 Test: Modified existing test to provide basic coverage. 102214 Will add much more extensive layout test coverage 102215 in future patches. 102216 102217 * Android.derived.jscbindings.mk: 102218 * Android.derived.v8bindings.mk: 102219 * Android.jscbindings.mk: 102220 * Android.mk: 102221 * Android.v8bindings.mk: 102222 * CMakeLists.txt: 102223 * WebCore.gypi: 102224 * WebCore.pri: 102225 * WebCore.pro: 102226 * WebCore.vcproj/WebCore.vcproj: 102227 * WebCore.xcodeproj/project.pbxproj: 102228 * bindings/js/JSIDBAnyCustom.cpp: 102229 (WebCore::toJS): 102230 * bindings/v8/custom/V8IDBAnyCustom.cpp: 102231 (WebCore::toV8): 102232 * storage/IDBAny.cpp: 102233 (WebCore::IDBAny::idbKey): 102234 (WebCore::IDBAny::set): 102235 * storage/IDBAny.h: 102236 (WebCore::IDBAny::): 102237 * storage/IDBAny.idl: 102238 * storage/IDBCallbacks.h: 102239 * storage/IDBDatabaseRequest.h: 102240 * storage/IDBDatabaseRequest.idl: 102241 * storage/IDBKeyRange.h: 102242 * storage/IDBObjectStore.h: 102243 (WebCore::IDBObjectStore::): 102244 * storage/IDBObjectStoreImpl.cpp: 102245 (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl): 102246 (WebCore::IDBObjectStoreImpl::get): 102247 (WebCore::IDBObjectStoreImpl::set): 102248 (WebCore::IDBObjectStoreImpl::remove): 102249 * storage/IDBObjectStoreImpl.h: 102250 * storage/IDBObjectStoreRequest.cpp: 102251 (WebCore::IDBObjectStoreRequest::get): 102252 (WebCore::IDBObjectStoreRequest::add): 102253 (WebCore::IDBObjectStoreRequest::modify): 102254 (WebCore::IDBObjectStoreRequest::addOrModify): 102255 (WebCore::IDBObjectStoreRequest::remove): 102256 * storage/IDBObjectStoreRequest.h: 102257 * storage/IDBObjectStoreRequest.idl: 102258 * storage/IDBRequest.cpp: 102259 (WebCore::IDBRequest::onSuccess): 102260 * storage/IDBRequest.h: 102261 102262 2010-07-11 Maciej Stachowiak <mjs (a] apple.com> 102263 102264 Reviewed by Dan Bernstein. 102265 102266 Implement animation-related methods for WebKitTestRunner 102267 https://bugs.webkit.org/show_bug.cgi?id=42053 102268 102269 * WebCore.exp.in: Export Document::getElementById for WebKit2's benefit. 102270 102271 2010-07-11 Adam Barth <abarth (a] webkit.org> 102272 102273 Rubber-stamped by Eric Seidel 102274 102275 Add a complete list of the HTML5 entities in JSON format. 102276 102277 * html/HTMLEntityNames.json: Added. 102278 102279 2010-07-11 Martin Robinson <mrobinson (a] igalia.com> 102280 102281 Reviewed by Xan Lopez. 102282 102283 [GTK] WebKitWebView should support drops 102284 https://bugs.webkit.org/show_bug.cgi?id=39843 102285 102286 Add support for dropping content onto GTK+ WebViews. 102287 102288 No new tests, as the DRT does not support simulating drops yet. 102289 102290 * platform/gtk/ClipboardUtilitiesGtk.cpp: 102291 (WebCore::dragOperationToGdkDragAction): Added. 102292 (WebCore::gdkDragActionToDragOperation): Properly detect DragOperationEvery. 102293 * platform/gtk/ClipboardUtilitiesGtk.h: Add declaration for dragOperationToGdkDragAction. 102294 * platform/gtk/PasteboardHelper.cpp: 102295 Add new target atom and rename the markup target type to match the others. 102296 Add a method which fills a data object from drop data. 102297 (WebCore::PasteboardHelper::initializeTargetList): Add support for new atoms. 102298 (WebCore::selectionDataToUTF8String): Added this helper. 102299 (WebCore::PasteboardHelper::getClipboardContents): Use the selectionDataToUTF8String helper. 102300 (WebCore::PasteboardHelper::targetListForDataObject): Change to reflect markup atom rename. 102301 (WebCore::PasteboardHelper::fillDataObjectFromDropData): Added. 102302 (WebCore::PasteboardHelper::dropAtoms): Added. 102303 * platform/gtk/PasteboardHelper.h: Add declarations of new methods. 102304 102305 2010-07-10 Darin Adler <darin (a] apple.com> 102306 102307 Reviewed by Anders Carlsson. 102308 102309 Enhance content attribute reflection for URL attributes, including adding a non-empty option 102310 https://bugs.webkit.org/show_bug.cgi?id=42040 102311 102312 Test: fast/dom/URL-attribute-reflection.html 102313 102314 Changed syntax from [ReflectURL] to [Reflect,URL] and also added support for 102315 a new option, NonEmpty, which implements the non-empty URL concept from the 102316 HTML5 specification. 102317 102318 * bindings/scripts/CodeGenerator.pm: Changed code to expect the Reflect and URL 102319 extended attributes to come in separately. The URL one simply means "the string 102320 of this attribute is a URL", since we don't have a distinct type for URL. Also 102321 added a new NonEmpty extended attribute. 102322 102323 * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded code to handle ReflectURL. 102324 * bindings/scripts/CodeGeneratorV8.pm: Ditto. 102325 102326 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated for new added test cases 102327 and the fix I made to the reflectedCustomURLAttr test. 102328 * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto. 102329 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto. 102330 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto. 102331 * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. 102332 * bindings/scripts/test/JS/JSTestObj.h: Ditto. 102333 * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto. 102334 * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto. 102335 * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. Also, for some reason the V8 102336 bindig writes out the keywords into the generated file as comments, so the keyword 102337 change had a direct efffect on the output file. 102338 102339 * bindings/scripts/test/TestObj.idl: Changed the test cases for ReflectURL to use 102340 the new syntax. Added test cases for NonEmpty. Fixed the name of 102341 reflectedNonEmptyURLAttr, which accidentally was repeating reflectedURLAttr 102342 instead; never noticed because we never compile the test output. 102343 102344 * dom/Element.cpp: 102345 (WebCore::Element::getNonEmptyURLAttribute): Added. For use by NonEmpty and also 102346 by any code that wants to implement the non-empty URL content attribute semantic. 102347 * dom/Element.h: Ditto. 102348 102349 * html/HTMLAnchorElement.idl: Use Reflect,URL instead of ReflectURL. 102350 * html/HTMLAreaElement.idl: Ditto. 102351 * html/HTMLFrameElement.idl: Ditto. 102352 * html/HTMLImageElement.idl: Ditto. 102353 * html/HTMLInputElement.idl: Ditto. 102354 * html/HTMLLinkElement.idl: Ditto. 102355 * html/HTMLMediaElement.idl: Ditto. 102356 * html/HTMLObjectElement.idl: Ditto. 102357 * html/HTMLScriptElement.idl: Ditto. 102358 * html/HTMLVideoElement.idl: Ditto. 102359 102360 2010-07-10 Tony Gentilcore <tonyg (a] chromium.org> 102361 102362 Reviewed by Darin Adler. 102363 102364 Add missing derrived sources to Xcode project 102365 https://bugs.webkit.org/show_bug.cgi?id=42034 102366 102367 This allows --web-timing to work with build-webkit on OSX with JSC. 102368 This should have been done in bug 41442. 102369 102370 No new tests because no new functionality. 102371 102372 * WebCore.xcodeproj/project.pbxproj: 102373 102374 2010-07-10 Anders Carlsson <andersca (a] apple.com> 102375 102376 Reviewed by Sam Weinig. 102377 102378 Don't initialize plug-ins until allowed by the page 102379 https://bugs.webkit.org/show_bug.cgi?id=42033 102380 102381 * WebCore.exp.in: 102382 Export Document::addMediaCanStartListener and Document::removeMediaCanStartListener. 102383 102384 2010-07-10 Sam Weinig <sam (a] webkit.org> 102385 102386 Reviewed by Anders Carlsson. 102387 102388 Patch for https://bugs.webkit.org/show_bug.cgi?id=42021 102389 isEqualNode should work for DocumentType nodes 102390 102391 Test: fast/dom/Node/isEqualNode.html 102392 102393 * dom/Node.cpp: 102394 (WebCore::Node::isEqualNode): Add DocumentType logic from the DOM3 spec. 102395 102396 2010-07-10 Daniel Bates <dbates (a] rim.com> 102397 102398 Reviewed by Adam Barth. 102399 102400 Move enum ReasonForCallingCanExecuteScripts to header ScriptControllerBase.h 102401 https://bugs.webkit.org/show_bug.cgi?id=39339 102402 102403 Moved the enum ReasonForCallingCanExecuteScripts, which was 102404 defined in both the JSC and V8 ScriptController.h file, into 102405 a shared file called ScriptControllerBase.h. 102406 102407 No functionality was changed, so no new tests. 102408 102409 * GNUmakefile.am: Added file bindings/ScriptControllerBase.h. 102410 * WebCore.gypi: Ditto. 102411 * WebCore.pro: Ditto. 102412 * WebCore.vcproj/WebCore.vcproj: Ditto. 102413 * WebCore.vcproj/WebCoreCommon.vsprops: Ditto. 102414 * WebCore.xcodeproj/project.pbxproj: Ditto. 102415 * bindings/ScriptControllerBase.h: Added. 102416 (WebCore::): 102417 * bindings/js/ScriptController.h: #include ScriptControllerBase.h 102418 * bindings/v8/ScriptController.h: Ditto. 102419 102420 2010-07-10 Dan Bernstein <mitz (a] apple.com> 102421 102422 Reviewed by Anders Carlsson. 102423 102424 <rdar://problem/8153214> Continuation outlines in layers do not paint correctly 102425 102426 Test: fast/inline/continuation-outlines-with-layers-2.html 102427 102428 Continuation outlines are normally painted by the containing block. However, when the 102429 block and the inline are not enclosed by the same self-painting layer, the inline has to 102430 paint its own outlines. This was handled correctly only for the case where the inline had 102431 its own self-painting layer, but not when an ancestor inline had the self-painting layer. 102432 102433 * rendering/InlineFlowBox.cpp: 102434 (WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test 102435 whether any intermediate box between the inline and the containing block has a self-painting 102436 layer. 102437 * rendering/RenderBlock.cpp: 102438 (WebCore::RenderBlock::paintObject): Ditto. 102439 * rendering/RenderObject.cpp: 102440 (WebCore::RenderObject::enclosingBoxModelObject): Added this utility method. 102441 * rendering/RenderObject.h: 102442 102443 2010-07-10 Franois Sausset <sausset (a] gmail.com> 102444 102445 Reviewed by Kenneth Rohde Christiansen. 102446 102447 Build fix: syntax and typo issues 102448 https://bugs.webkit.org/show_bug.cgi?id=41859 102449 102450 * html/HTMLTreeBuilder.cpp: 102451 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 102452 (WebCore::HTMLTreeBuilder::processStartTag): 102453 102454 2010-07-10 Eric Seidel <eric (a] webkit.org> 102455 102456 Reviewed by Adam Barth. 102457 102458 HTMLTreeBuilder needs adjustForeignAttributes support 102459 https://bugs.webkit.org/show_bug.cgi?id=42022 102460 102461 To add adjust foreign attributes support I had to add an 102462 AtomicString (prefixed name) to QualifiedName hash. Once I had 102463 done that, I decided it would be best for the other "adjust" functions 102464 to share the same hash logic, so I moved them to using the same 102465 AtomicString -> QualifiedName hash as well. 102466 102467 Tested by html5lib/runner.html 102468 102469 * dom/Attribute.h: 102470 (WebCore::Attribute::parserSetName): 102471 * html/HTMLTreeBuilder.cpp: 102472 102473 2010-07-10 Rob Buis <rwlbuis (a] gmail.com> 102474 102475 Reviewed by Darin Adler. 102476 102477 https://bugs.webkit.org/show_bug.cgi?id=41978 102478 Remove namespace prefixes from idl files 102479 102480 No new tests, idl syntax fixes. 102481 102482 * css/CSSImportRule.idl: 102483 * css/CSSMediaRule.idl: 102484 * css/CSSStyleSheet.idl: 102485 * css/CSSVariablesRule.idl: 102486 * svg/SVGAnimatedString.idl: 102487 * svg/SVGColor.idl: 102488 * svg/SVGDocument.idl: 102489 * svg/SVGLangSpace.idl: 102490 * svg/SVGSVGElement.idl: 102491 * svg/SVGStringList.idl: 102492 * svg/SVGStylable.idl: 102493 * svg/SVGStyleElement.idl: 102494 * svg/SVGTests.idl: 102495 * svg/SVGZoomEvent.idl: 102496 * xml/XPathEvaluator.idl: 102497 102498 2010-07-10 Dumitru Daniliuc <dumi (a] chromium.org> 102499 102500 Unreviewed, GTK build fix. 102501 102502 * bindings/gobject/GObjectEventListener.h: 102503 102504 2010-07-10 Dumitru Daniliuc <dumi (a] chromium.org> 102505 102506 Reviewed by Darin Adler. 102507 102508 Remove unnecessary includes in header files in WebCore/dom. 102509 https://bugs.webkit.org/show_bug.cgi?id=41941 102510 102511 * css/StyleMedia.h: 102512 * dom/BeforeLoadEvent.h: 102513 * dom/CustomEvent.h: 102514 * dom/DOMStringMap.h: 102515 * dom/DeviceOrientationEvent.h: 102516 * dom/EventListener.h: 102517 * dom/MessagePort.h: 102518 * dom/Node.cpp: 102519 * dom/NodeFilter.h: 102520 * dom/NodeRareData.h: 102521 * dom/RegisteredEventListener.h: 102522 * dom/SelectorNodeList.cpp: 102523 * dom/SelectorNodeList.h: 102524 * dom/StyleElement.h: 102525 * dom/Traversal.h: 102526 102527 2010-07-09 Tony Chang <tony (a] chromium.org> 102528 102529 Reviewed by Ojan Vafai. 102530 102531 crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting pre 102532 https://bugs.webkit.org/show_bug.cgi?id=38231 102533 102534 Test: editing/execCommand/indent-pre.html 102535 102536 * editing/IndentOutdentCommand.cpp: 102537 (WebCore::countParagraphs): 102538 (WebCore::IndentOutdentCommand::indentRegion): Split text nodes into one node per paragraph 102539 so moveParagraph doesn't get confused. 102540 (WebCore::IndentOutdentCommand::splitTextNodes): 102541 * editing/IndentOutdentCommand.h: 102542 102543 2010-07-09 Erik Arvidsson <arv (a] chromium.org> 102544 102545 Reviewed by Darin Adler. 102546 102547 Computed style is not implemented for padding-start, padding-end, margin-start, margin-end 102548 https://bugs.webkit.org/show_bug.cgi?id=41496 102549 102550 * css/CSSComputedStyleDeclaration.cpp: 102551 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 102552 * css/CSSProperty.cpp: 102553 (WebCore::CSSProperty::resolveDirectionAwareProperty): This function resolves the property ID for a direction aware property. 102554 * css/CSSProperty.h: 102555 * css/CSSStyleSelector.cpp: Use helper function. 102556 (WebCore::CSSStyleSelector::applyProperty): 102557 102558 2010-07-09 Adam Barth <abarth (a] webkit.org> 102559 102560 Reviewed by Eric Seidel. 102561 102562 HTML5 tree builder should pass some LayoutTests 102563 https://bugs.webkit.org/show_bug.cgi?id=41991 102564 102565 Before this patch, we weren't attaching text nodes to the render tree, 102566 which turns out to be important. :) 102567 102568 This patch fixes more than 10,000 LayoutTests. 102569 102570 * html/HTMLConstructionSite.cpp: 102571 (WebCore::HTMLConstructionSite::attach): 102572 (WebCore::HTMLConstructionSite::attachAtSite): 102573 102574 2010-07-09 Patrick Gansterer <paroga (a] paroga.com> 102575 102576 Reviewed by Darin Adler. 102577 102578 [WINCE] Buildfix for TextEncodingRegistry 102579 https://bugs.webkit.org/show_bug.cgi?id=41992 102580 102581 Renamed TextCodecWince to TextCodecWinCE. 102582 102583 * platform/text/TextEncodingRegistry.cpp: 102584 (WebCore::buildBaseTextCodecMaps): 102585 (WebCore::extendTextCodecMaps): 102586 102587 2010-07-09 Leon Clarke <leonclarke (a] google.com> 102588 102589 Reviewed by Adam Barth. 102590 102591 add support for link prefetching 102592 https://bugs.webkit.org/show_bug.cgi?id=3652 102593 102594 Test: fast/dom/HTMLLinkElement/prefetch.html 102595 102596 * Configurations/FeatureDefines.xcconfig: 102597 * html/HTMLLinkElement.cpp: 102598 (WebCore::HTMLLinkElement::tokenizeRelAttribute): 102599 (WebCore::HTMLLinkElement::process): 102600 * html/HTMLLinkElement.h: 102601 (WebCore::HTMLLinkElement::RelAttribute::RelAttribute): 102602 * loader/Cache.cpp: 102603 (WebCore::createResource): 102604 * loader/CachedResource.cpp: 102605 (WebCore::CachedResource::data): 102606 (WebCore::CachedResource::didAddClient): 102607 * loader/CachedResource.h: 102608 (WebCore::CachedResource::): 102609 (WebCore::CachedResource::error): 102610 (WebCore::CachedResource::isPrefetch): 102611 (WebCore::CachedResource::schedule): 102612 * loader/CachedScript.cpp: 102613 * loader/CachedScript.h: 102614 * loader/DocLoader.cpp: 102615 (WebCore::DocLoader::requestLinkPrefetch): 102616 (WebCore::DocLoader::canRequest): 102617 (WebCore::DocLoader::incrementRequestCount): 102618 (WebCore::DocLoader::decrementRequestCount): 102619 * loader/DocLoader.h: 102620 * loader/loader.cpp: 102621 (WebCore::cachedResourceTypeToTargetType): 102622 (WebCore::Loader::determinePriority): 102623 (WebCore::Loader::load): 102624 (WebCore::Loader::Host::servePendingRequests): 102625 (WebCore::Loader::Host::didFinishLoading): 102626 (WebCore::Loader::Host::didFail): 102627 (WebCore::Loader::Host::didReceiveResponse): 102628 (WebCore::Loader::Host::cancelPendingRequests): 102629 * loader/loader.h: 102630 (WebCore::Loader::): 102631 * platform/network/ResourceRequestBase.h: 102632 (WebCore::ResourceRequestBase::): 102633 102634 2010-07-09 James Robinson <jamesr (a] chromium.org> 102635 102636 Unreviewed build fix. Add #include to pick up ExceptionCode values for config (like Qt) where it's not picked up indirectly. 102637 102638 * html/HTMLCanvasElement.cpp: 102639 102640 2010-07-09 James Robinson <jamesr (a] chromium.org> 102641 102642 Reviewed by Darin Adler. 102643 102644 Removes CanvasSurface and moves all of its functionality to HTMLCanvasElement. 102645 https://bugs.webkit.org/show_bug.cgi?id=42005 102646 102647 http://trac.webkit.org/changeset/55201 introduced a new base class for HTMLCanvasElement called CanvasSurface. 102648 The intention was that this would allow for code sharing with the then-proposed OffscreenCanvas. However, 102649 there is no OffscreenCanvas and there's unlikely to be one soon. Additionally CanvasSurface breaks 102650 encapsulation pretty badly by doing "static_cast<HTMLCanvasElement* const>(this)". Until an abstraction is 102651 really needed we should just use HTMLCanvasElement when we want to talk about a canvas. 102652 102653 This patch moves all of CanvasSurface's functionality back up to HTMLCanvasElement and reorders the header 102654 to be a bit more logical. 102655 102656 Refactor with no behavior change, thus no new tests. 102657 102658 * CMakeLists.txt: 102659 * GNUmakefile.am: 102660 * WebCore.gypi: 102661 * WebCore.pro: 102662 * WebCore.vcproj/WebCore.vcproj: 102663 * WebCore.xcodeproj/project.pbxproj: 102664 * dom/CanvasSurface.cpp: Removed. 102665 * dom/CanvasSurface.h: Removed. 102666 * html/HTMLCanvasElement.cpp: 102667 (WebCore::HTMLCanvasElement::HTMLCanvasElement): 102668 (WebCore::HTMLCanvasElement::willDraw): 102669 (WebCore::HTMLCanvasElement::setSurfaceSize): 102670 (WebCore::HTMLCanvasElement::toDataURL): 102671 (WebCore::HTMLCanvasElement::convertLogicalToDevice): 102672 (WebCore::HTMLCanvasElement::securityOrigin): 102673 (WebCore::HTMLCanvasElement::styleSelector): 102674 (WebCore::HTMLCanvasElement::createImageBuffer): 102675 (WebCore::HTMLCanvasElement::drawingContext): 102676 (WebCore::HTMLCanvasElement::buffer): 102677 (WebCore::HTMLCanvasElement::baseTransform): 102678 * html/HTMLCanvasElement.h: 102679 (WebCore::HTMLCanvasElement::setObserver): 102680 (WebCore::HTMLCanvasElement::width): 102681 (WebCore::HTMLCanvasElement::height): 102682 (WebCore::HTMLCanvasElement::size): 102683 (WebCore::HTMLCanvasElement::toDataURL): 102684 (WebCore::HTMLCanvasElement::setOriginTainted): 102685 (WebCore::HTMLCanvasElement::originClean): 102686 (WebCore::HTMLCanvasElement::hasCreatedImageBuffer): 102687 102688 2010-07-09 Simon Fraser <simon.fraser (a] apple.com> 102689 102690 Reviewed by Darin Adler. 102691 102692 Calling layoutTestController.layerTreeAsText() should update layout 102693 https://bugs.webkit.org/show_bug.cgi?id=41818 102694 102695 Need to call updateLayout() before we check for any layers, not after, 102696 since layout will update compositing, and may create layers. 102697 102698 * page/Frame.cpp: 102699 (WebCore::Frame::layerTreeAsText): 102700 102701 2010-07-09 Kenneth Russell <kbr (a] google.com> 102702 102703 Reviewed by Nate Chapin. 102704 102705 bufferSubData causes crash in WebGLBuffer::associateBufferSubData 102706 https://bugs.webkit.org/show_bug.cgi?id=42004 102707 102708 Test: fast/canvas/webgl/index-validation-crash-with-buffer-sub-data.html 102709 102710 * html/canvas/WebGLBuffer.cpp: 102711 (WebCore::WebGLBuffer::associateBufferData): 102712 - Allocate m_elementArrayBuffer for entry point taking only size. 102713 Guard against allocation failures of m_elementArrayBuffer. 102714 (WebCore::WebGLBuffer::associateBufferSubData): 102715 - Guard against any possibility of crashes due to m_elementArrayBuffer being NULL. 102716 102717 2010-07-09 Dumitru Daniliuc <dumi (a] chromium.org> 102718 102719 Unreviewed, but pre-approved by Eric Seidel. 102720 102721 Remove unnecessary includes in header files in WebCore/css. 102722 https://bugs.webkit.org/show_bug.cgi?id=41941 102723 102724 * css/CSSComputedStyleDeclaration.h: 102725 * css/CSSFontFaceSource.cpp: 102726 (WebCore::CSSFontFaceSource::getFontData): 102727 * css/CSSFontFaceSource.h: 102728 * css/CSSPrimitiveValueMappings.h: 102729 * css/StyleMedia.h: 102730 102731 2010-07-09 Eric Seidel <eric (a] webkit.org> 102732 102733 Reviewed by Adam Barth. 102734 102735 Get rid of manual case maps in HTMLTreeBuilder 102736 https://bugs.webkit.org/show_bug.cgi?id=42000 102737 102738 No functional change, thus no tests. 102739 102740 * html/HTMLTreeBuilder.cpp: 102741 102742 2010-07-09 Tony Gentilcore <tonyg (a] chromium.org> 102743 102744 Reviewed by Dimitri Glazkov. 102745 102746 Implement performance.timing.navigationStart 102747 https://bugs.webkit.org/show_bug.cgi?id=41815 102748 102749 See: http://dev.w3.org/2006/webapi/WebTiming/#nt-navigation-start 102750 102751 * loader/FrameLoader.cpp: 102752 (WebCore::FrameLoader::loadWithDocumentLoader): 102753 * loader/FrameLoaderTypes.h: 102754 (WebCore::FrameLoadTimeline::FrameLoadTimeline): 102755 * page/Timing.cpp: 102756 (WebCore::Timing::navigationStart): 102757 102758 2010-07-09 Jesus Sanchez-Palencia <jesus.palencia (a] openbossa.org> 102759 102760 Reviewed by Kenneth Rohde Christiansen. 102761 102762 [Qt] GraphicsLayerQt must have syncCompositingStateForThisLayerOnly() implemented 102763 https://bugs.webkit.org/show_bug.cgi?id=41954 102764 102765 Add GraphicsLayerQt::syncCompositingStateForThisLayerOnly, a non-recursive 102766 implementation of GraphicsLayerQt::syncCompositingState and which targets 102767 the current layer only. 102768 102769 * platform/graphics/qt/GraphicsLayerQt.cpp: 102770 (WebCore::GraphicsLayerQt::syncCompositingStateForThisLayerOnly): 102771 * platform/graphics/qt/GraphicsLayerQt.h: 102772 102773 2010-07-09 David Kozub <zub (a] linux.fjfi.cvut.cz> 102774 102775 Reviewed by Darin Adler. 102776 102777 Fix build by adding missing html/TimeRanges.idl to CMakeLists.txt. 102778 102779 https://bugs.webkit.org/show_bug.cgi?id=41945 102780 102781 No functional changes, thus no tests. 102782 102783 * CMakeLists.txt: 102784 102785 2010-07-09 Eric Seidel <eric (a] webkit.org> 102786 102787 Reviewed by Adam Barth. 102788 102789 Fix SVG tag name casing for HTMLTreeBuilder 102790 https://bugs.webkit.org/show_bug.cgi?id=41998 102791 102792 Tested by html5lib/runner.html 102793 102794 * html/HTMLTreeBuilder.cpp: 102795 (WebCore::): 102796 102797 2010-07-09 Eric Seidel <eric (a] webkit.org> 102798 102799 Reviewed by Adam Barth. 102800 102801 Implement SVG attribute case mapping for HTMLTreeBuilder 102802 https://bugs.webkit.org/show_bug.cgi?id=41949 102803 102804 Tested by html5lib/runner.html. 102805 102806 * html/HTMLTreeBuilder.cpp: 102807 102808 2010-07-09 Andy Estes <aestes (a] apple.com> 102809 102810 Reviewed by Adele Peterson. 102811 102812 Remove the workaround for a Core Animation bug on platforms where the 102813 bug has been fixed. 102814 https://bugs.webkit.org/show_bug.cgi?id=41927 102815 <rdar://problem/7920153> 102816 102817 * platform/graphics/mac/GraphicsLayerCA.mm: 102818 (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Add 102819 a compile-time check for platforms that have a Core Animation bug that 102820 needs working around. 102821 102822 2010-07-08 Tony Gentilcore <tonyg (a] chromium.org> 102823 102824 Reviewed by Nate Chapin. 102825 102826 Implement unloadEventEnd, loadEventStart, and loadEventEnd for Web Timing 102827 https://bugs.webkit.org/show_bug.cgi?id=41332 102828 102829 Test: fast/dom/webtiming.html 102830 102831 * loader/FrameLoader.cpp: 102832 (WebCore::FrameLoader::stopLoading): 102833 (WebCore::FrameLoader::loadWithDocumentLoader): 102834 * loader/FrameLoader.h: 102835 (WebCore::FrameLoader::frameLoadTimeline): 102836 * loader/FrameLoaderTypes.h: 102837 (WebCore::FrameLoadTimeline::FrameLoadTimeline): 102838 * page/DOMWindow.cpp: 102839 (WebCore::DOMWindow::dispatchLoadEvent): 102840 * page/Timing.cpp: 102841 (WebCore::Timing::navigationStart): 102842 (WebCore::Timing::unloadEventEnd): 102843 (WebCore::Timing::loadEventStart): 102844 (WebCore::Timing::loadEventEnd): 102845 * page/Timing.h: 102846 * page/Timing.idl: 102847 102848 2010-07-09 Dumitru Daniliuc <dumi (a] chromium.org> 102849 102850 Unreviewed, but pre-approved by Eric Seidel. 102851 102852 Remove all unnecessary includes from the header files in WebCore/accessibility/. 102853 https://bugs.webkit.org/show_bug.cgi?id=41941 102854 102855 * accessibility/AXObjectCache.h: 102856 * accessibility/AccessibilityListBox.cpp: 102857 * accessibility/AccessibilityListBox.h: 102858 * accessibility/AccessibilityMenuList.h: 102859 * accessibility/mac/AccessibilityObjectWrapper.h: 102860 102861 2010-07-09 Patrick Gansterer <paroga (a] paroga.com> 102862 102863 Reviewed by Kent Tamura. 102864 102865 [WINCE] Buildfix for EventHandlerWin 102866 https://bugs.webkit.org/show_bug.cgi?id=41909 102867 102868 Use Clipboard.h instead of ClipboardWin.h on WinCE. 102869 102870 * page/win/EventHandlerWin.cpp: 102871 102872 2010-07-09 Sheriff Bot <webkit.review.bot (a] gmail.com> 102873 102874 Unreviewed, rolling out r62946. 102875 http://trac.webkit.org/changeset/62946 102876 https://bugs.webkit.org/show_bug.cgi?id=41965 102877 102878 AppCache inspector support should be enabled in WebKit ToT. 102879 (Requested by pfeldman_ on #webkit). 102880 102881 * inspector/front-end/StoragePanel.js: 102882 (WebInspector.StoragePanel): 102883 (WebInspector.StoragePanel.prototype.reset): 102884 (WebInspector.StoragePanel.prototype.addApplicationCache): 102885 102886 2010-07-09 Franois Sausset <sausset (a] gmail.com> 102887 102888 Reviewed by Kenneth Rohde Christiansen. 102889 102890 Implement MathML mathcolor & mathbackground attributes 102891 https://bugs.webkit.org/show_bug.cgi?id=41895 102892 102893 Test: mathml/presentation/attributes.xhtml 102894 102895 * dom/MappedAttributeEntry.h: 102896 (WebCore::): 102897 * mathml/MathMLElement.cpp: 102898 (WebCore::MathMLElement::MathMLElement): 102899 (WebCore::MathMLElement::mapToEntry): 102900 (WebCore::MathMLElement::parseMappedAttribute): 102901 * mathml/MathMLElement.h: 102902 * mathml/mathattrs.in: 102903 102904 2010-07-09 Xiaomei Ji <xji (a] chromium.org> 102905 102906 Reviewed by David Levin. 102907 102908 Fix characters with unicode-bidi-mirror property are not correctly 102909 mirrored in Linux. 102910 https://bugs.webkit.org/show_bug.cgi?id=41305 102911 102912 Since harfbuzz does not do mirroring, chromium should iterate each 102913 character in the string and mirror it if needed before passing the 102914 string to harfbuzz for shaping. 102915 102916 Test: fast/text/international/bidi-mirror-he-ar.html 102917 102918 * platform/graphics/chromium/FontLinux.cpp: 102919 (WebCore::TextRunWalker::TextRunWalker): 102920 (WebCore::TextRunWalker::~TextRunWalker): 102921 (WebCore::TextRunWalker::mirrorCharacters): 102922 102923 102924 2010-07-09 Anders Carlsson <andersca (a] apple.com> 102925 102926 Reviewed by Simon Fraser. 102927 102928 Instantiate Netscape plug-ins, pass geometry information to Plugin 102929 https://bugs.webkit.org/show_bug.cgi?id=41960 102930 102931 * WebCore.exp.in: 102932 Export ScrollView::contentsToWindow. 102933 102934 2010-07-09 Patrick Gansterer <paroga (a] paroga.com> 102935 102936 Reviewed by Kent Tamura. 102937 102938 [WINCE] Buildfix for FrameWince after r47440 102939 https://bugs.webkit.org/show_bug.cgi?id=41904 102940 102941 * page/wince/FrameWince.cpp: Added property svn:eol-style. 102942 (WebCore::computePageRectsForFrame): 102943 (WebCore::imageFromSelection): 102944 102945 2010-07-09 Vitaly Repeshko <vitalyr (a] chromium.org> 102946 102947 Reviewed by Pavel Feldman. 102948 102949 [v8] Call JS gc in a fresh context to avoid retaining the current one. 102950 https://bugs.webkit.org/show_bug.cgi?id=41963 102951 http://crbug.com/46571 102952 102953 * bindings/v8/ScriptController.cpp: 102954 (WebCore::ScriptController::collectGarbage): 102955 102956 2010-07-09 Kenneth Russell <kbr (a] google.com> 102957 102958 Reviewed by Dimitri Glazkov. 102959 102960 Crash with uniform array test 102961 https://bugs.webkit.org/show_bug.cgi?id=36028 102962 102963 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 102964 (WebCore::vertexAttribAndUniformHelperf): 102965 (WebCore::uniformHelperi): 102966 (WebCore::uniformMatrixHelper): 102967 - Fixed type tests and casting of incoming arrays. 102968 * html/canvas/WebGLRenderingContext.cpp: 102969 (WebCore::WebGLRenderingContext::getUniform): 102970 - Fixed crash when null WebGLUniform is passed to getUniform. 102971 102972 2010-07-09 Chris Fleizach <cfleizach (a] apple.com> 102973 102974 Reviewed by Darin Adler. 102975 102976 AX: text editing not spoken by VO on web view contenteditable textbox 102977 https://bugs.webkit.org/show_bug.cgi?id=41912 102978 102979 Test: platform/mac/accessibility/selection-value-changes-for-aria-textbox.html 102980 102981 * accessibility/AccessibilityRenderObject.cpp: 102982 (WebCore::AccessibilityRenderObject::renderObjectIsObservable): 102983 102984 2010-07-09 Michael Nordman <michaeln (a] google.com> 102985 102986 Reviewed by Dumitru Daniliuc. 102987 102988 Use class ProgressEvent when raising appcache related progress events and 102989 set the 'total', 'loaded', and 'lengthComputable' attributes. 102990 Also raise the final progress event with the 'total' and 'loaded' attribute 102991 values are equal to one another to keep pace with the spec for this feature. 102992 https://bugs.webkit.org/show_bug.cgi?id=37602 102993 102994 Test: http/tests/appcache/progress-counter.html 102995 102996 * loader/appcache/ApplicationCacheGroup.cpp: 102997 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): 102998 (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): 102999 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): 103000 (WebCore::ApplicationCacheGroup::startLoadingEntry): 103001 (WebCore::CallCacheListenerTask::create): 103002 (WebCore::CallCacheListenerTask::performTask): 103003 (WebCore::CallCacheListenerTask::CallCacheListenerTask): 103004 (WebCore::ApplicationCacheGroup::postListenerTask): 103005 * loader/appcache/ApplicationCacheGroup.h: 103006 (WebCore::ApplicationCacheGroup::postListenerTask): 103007 * loader/appcache/ApplicationCacheHost.cpp: 103008 (WebCore::ApplicationCacheHost::notifyDOMApplicationCache): 103009 (WebCore::ApplicationCacheHost::stopDeferringEvents): 103010 (WebCore::ApplicationCacheHost::dispatchDOMEvent): 103011 * loader/appcache/ApplicationCacheHost.h: 103012 (WebCore::ApplicationCacheHost::DeferredEvent::DeferredEvent): 103013 103014 2010-07-09 Sebastian Drge <sebastian.droege (a] collabora.co.uk> 103015 103016 Reviewed by Gustavo Noronha Silva. 103017 103018 Bug 41340 - [GStreamer] Subtle race condition during seeks 103019 https://bugs.webkit.org/show_bug.cgi?id=41340 103020 103021 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 103022 (webKitWebSrcStop): 103023 (webKitWebSrcNeedDataMainCb): 103024 (webKitWebSrcNeedDataCb): 103025 (webKitWebSrcEnoughDataMainCb): 103026 (webKitWebSrcEnoughDataCb): 103027 (webKitWebSrcSeekDataCb): 103028 (StreamingClient::didFinishLoading): 103029 Fix two subtle race conditions that can happen during seeks: 103030 - The timeout callback could be called before the callback ID is 103031 assigned to the instance private data. This causes the ID to 103032 be set after the callback has finished and breaks all future 103033 processing. 103034 - The source must not go EOS while a seek is pending because 103035 this confuses appsrc due to the different threads involved here. 103036 103037 2010-07-09 Simon Hausmann <simon.hausmann (a] nokia.com> 103038 103039 Reviewed by Tor Arne Vestb. 103040 103041 [Qt] Removed hard-coded enabled default of video support 103042 103043 Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true. 103044 103045 * WebCore.pri: 103046 103047 2010-07-09 Ben Murdoch <benm (a] google.com> 103048 103049 Reviewed by Steve Block. 103050 103051 [Arm] Missing NaN check in XPath substring function 103052 https://bugs.webkit.org/show_bug.cgi?id=41862 103053 103054 Test: fast/xpath/substring-nan-position.html 103055 103056 * xml/XPathFunctions.cpp: 103057 (WebCore::XPath::FunSubstring::evaluate): Add an isnan() 103058 to the value returned from evaluating the position 103059 argument and early out and return the empty string. 103060 103061 2010-07-09 Simon Hausmann <simon.hausmann (a] nokia.com> 103062 103063 Reviewed by Tor Arne Vestb. 103064 103065 [Qt] Prospective build fix. 103066 103067 Moved the media element detection from WebCore.pro into WebCore.pri, where 103068 all the features are detected. This is also used by build-webkit to determine 103069 the defaults, which may be the reason for the build breakage. 103070 103071 * WebCore.pri: 103072 * WebCore.pro: 103073 103074 2010-07-09 Simon Hausmann <simon.hausmann (a] nokia.com> 103075 103076 Reviewed by Tor Arne Vestb. 103077 103078 [Qt] Re-enable support for QtMultimediaKit as backend for the media elements 103079 103080 Experimental support is re-enabled if QtMobility is available and the Qt 103081 version is 4.7 or above. 103082 103083 * WebCore.pro: 103084 * platform/graphics/MediaPlayer.cpp: 103085 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: 103086 (WebCore::MediaPlayerPrivate::supportsType): Adapt to latest QtMultimediaKit API changes. 103087 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): 103088 (WebCore::MediaPlayerPrivate::totalBytes): 103089 103090 2010-07-09 Pavel Feldman <pfeldman (a] chromium.org> 103091 103092 Reviewed by Yury Semikhatsky. 103093 103094 Web Inspector: do not show default tooltip when detailed network info is available. 103095 103096 https://bugs.webkit.org/show_bug.cgi?id=41957 103097 103098 * English.lproj/localizedStrings.js: 103099 * inspector/front-end/ResourcesPanel.js: 103100 (WebInspector.ResourcesPanel): 103101 (WebInspector.ResourcesPanel.prototype.reset): 103102 (WebInspector.ResourcesPanel.prototype.showResource): 103103 (WebInspector.ResourcesPanel.prototype._getPopoverAnchor): 103104 (WebInspector.ResourcesPanel.prototype._showPopover): 103105 (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): 103106 103107 2010-07-09 Franois Sausset <sausset (a] gmail.com> 103108 103109 Reviewed by Beth Dakin. 103110 103111 Correct the default font variant of mtext (regular instead of italic). 103112 https://bugs.webkit.org/show_bug.cgi?id=41626 103113 103114 Add test to be sure that only <mi> elements use italic fonts by default. 103115 Update test with fractions to take into account the correct behaviour of mtext (regular instead of italic). 103116 103117 * css/mathml.css: 103118 (mi): 103119 103120 2010-07-09 Tony Gentilcore <tonyg (a] chromium.org> 103121 103122 Reviewed by Dimitri Glazkov. 103123 103124 Implement performance.navigation.type 103125 https://bugs.webkit.org/show_bug.cgi?id=41564 103126 103127 Tests: fast/dom/navigation-type-back-forward.html 103128 fast/dom/navigation-type-navigate.html 103129 fast/dom/navigation-type-reload.html 103130 103131 * page/Navigation.cpp: 103132 (WebCore::Navigation::type): 103133 * page/Navigation.h: 103134 (WebCore::Navigation::): 103135 * page/Navigation.idl: 103136 103137 2010-07-09 Pavel Feldman <pfeldman (a] chromium.org> 103138 103139 Reviewed by Yury Semikhatsky. 103140 103141 Web Inspector: hide AppCache until implemented. 103142 103143 https://bugs.webkit.org/show_bug.cgi?id=41858 103144 103145 * inspector/front-end/StoragePanel.js: 103146 (WebInspector.StoragePanel): 103147 (WebInspector.StoragePanel.prototype.reset): 103148 (WebInspector.StoragePanel.prototype.addApplicationCache): 103149 103150 2010-07-09 Franois Sausset <sausset (a] gmail.com> 103151 103152 Reviewed by Kenneth Rohde Christiansen. 103153 103154 Set the good default behaviour for the columalign attribute on MathML mtable element 103155 https://bugs.webkit.org/show_bug.cgi?id=41631 103156 103157 Test update: mathml/tables.xhtml 103158 103159 * css/mathml.css: 103160 (math): 103161 103162 2010-07-09 Sheriff Bot <webkit.review.bot (a] gmail.com> 103163 103164 Unreviewed, rolling out r62937. 103165 http://trac.webkit.org/changeset/62937 103166 https://bugs.webkit.org/show_bug.cgi?id=41955 103167 103168 Crashes SnowLeopard leaks and Windows debug bot in fast/xsl 103169 /xslt-relative-path.xml, with assertion in 103170 XSLTProcessorLibxslt.cpp:264 (Requested by WildFox on 103171 #webkit). 103172 103173 * xml/XSLTProcessor.h: 103174 (WebCore::XSLTProcessor::XSLTProcessor): 103175 * xml/XSLTProcessorLibxslt.cpp: 103176 (WebCore::docLoaderFunc): 103177 (WebCore::setXSLTLoadCallBack): 103178 (WebCore::xsltStylesheetPointer): 103179 (WebCore::XSLTProcessor::transformToString): 103180 103181 2010-07-09 Yael Aharon <yael.aharon (a] nokia.com> 103182 103183 Reviewed by Laszlo Gombos. 103184 103185 NotificationPresenter needs a cancelRequestPermission API 103186 https://bugs.webkit.org/show_bug.cgi?id=41783 103187 103188 Updated NotificationPresenter API, to use ScriptExecutionContext instead of origin. 103189 Added new API NotificationPresenter::cancelRequestsForPermision 103190 The new API will be implemented and a test will be added in a followup patch. 103191 103192 * notifications/Notification.cpp: 103193 (WebCore::Notification::Notification): 103194 * notifications/NotificationCenter.cpp: 103195 (WebCore::NotificationCenter::checkPermission): 103196 (WebCore::NotificationCenter::requestPermission): 103197 (WebCore::NotificationCenter::disconnectFrame): 103198 * notifications/NotificationCenter.h: 103199 * notifications/NotificationPresenter.h: 103200 103201 2010-07-09 Andreas Wictor <andreas.wictor (a] xcerion.com> 103202 103203 Reviewed by Alexey Proskuryakov. 103204 103205 Remove global variables from XSLTProcessorLibxslt.cpp 103206 https://bugs.webkit.org/show_bug.cgi?id=41348 103207 103208 Remove the globalProcessor and globalDocLoader global variables 103209 by using the _private field that exists on most libxml structs. 103210 103211 No new tests, existing tests covers this. 103212 103213 * xml/XSLTProcessor.h: 103214 (WebCore::XSLTProcessor::sourceNode): 103215 (WebCore::XSLTProcessor::XSLTProcessor): 103216 * xml/XSLTProcessorLibxslt.cpp: 103217 (WebCore::registeredXSLTProcessors): 103218 (WebCore::registeredXSLStyleSheets): 103219 (WebCore::docLoaderFunc): 103220 (WebCore::clearSavedStyleSheetPointers): 103221 (WebCore::xsltStylesheetPointer): 103222 (WebCore::XSLTProcessor::transformToString): 103223 103224 2010-07-09 Adam Barth <abarth (a] webkit.org> 103225 103226 Unreviewed build fix. 103227 103228 We recently taught the HTMLTokenizer to recognize self-closing tags, 103229 <http://trac.webkit.org/changeset/62926>, but that confused the 103230 LegacyHTMLTreeBuilder. It turns out that it's much happier if we never 103231 say a tag is self-closing. 103232 103233 * html/HTMLTreeBuilder.cpp: 103234 (WebCore::convertToOldStyle): 103235 103236 2010-07-09 Nikolas Zimmermann <nzimmermann (a] rim.com> 103237 103238 Reviewed by Rob Buis. 103239 103240 svg/custom/use-instanceRoot-event-bubbling.xhtml test crashes 103241 https://bugs.webkit.org/show_bug.cgi?id=41931 103242 103243 Be careful to not mutate (marking it for recreation) the shadow tree, while building it. 103244 The recent change that cloneNode() properly synchronizes the style/SVG attributes caused this problem. 103245 103246 Fixes crash seen on the buildbots in svg/custom/use-instanceRoot-event-bubbling.xhtml. 103247 103248 * svg/SVGUseElement.cpp: 103249 (WebCore::SVGUseElement::SVGUseElement): 103250 (WebCore::SVGUseElement::recalcStyle): 103251 (WebCore::SVGUseElement::buildShadowAndInstanceTree): 103252 (WebCore::SVGUseElement::invalidateShadowTree): 103253 * svg/SVGUseElement.h: 103254 (WebCore::SVGUseElement::setUpdatesBlocked): 103255 103256 2010-07-09 Adam Barth <abarth (a] webkit.org> 103257 103258 Reviewed by Eric Seidel. 103259 103260 Skip leading newlines in <textarea> 103261 https://bugs.webkit.org/show_bug.cgi?id=41947 103262 103263 We would have caught this earlier with the ASSERT. 103264 103265 * html/HTMLTokenizer.cpp: 103266 (WebCore::HTMLTokenizer::nextToken): 103267 103268 2010-07-08 Pavel Feldman <pfeldman (a] chromium.org> 103269 103270 Reviewed by Yury Semikhatsky. 103271 103272 Web Inspector: Provide detailed network info in the resources panel. 103273 103274 https://bugs.webkit.org/show_bug.cgi?id=40227 103275 103276 * English.lproj/localizedStrings.js: 103277 * inspector/InspectorController.cpp: 103278 (WebCore::InspectorController::willSendRequest): 103279 (WebCore::InspectorController::didReceiveResponse): 103280 * inspector/InspectorController.h: 103281 * inspector/InspectorResource.cpp: 103282 (WebCore::InspectorResource::InspectorResource): 103283 (WebCore::InspectorResource::updateResponse): 103284 (WebCore::InspectorResource::updateScriptObject): 103285 (WebCore::InspectorResource::buildObjectForTiming): 103286 * inspector/InspectorResource.h: 103287 * inspector/front-end/ResourcesPanel.js: 103288 (WebInspector.ResourcesPanel): 103289 (WebInspector.ResourcesPanel.prototype.elementsToRestoreScrollPositionsFor): 103290 (WebInspector.ResourcesPanel.prototype._getPopoverAnchor): 103291 (WebInspector.ResourcesPanel.prototype._showPopover): 103292 (WebInspector.ResourcesPanel.prototype.hide): 103293 (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): 103294 (WebInspector.ResourceGraph): 103295 * inspector/front-end/inspector.js: 103296 (WebInspector.updateResource): 103297 * platform/network/ResourceLoadTiming.h: 103298 (WebCore::ResourceLoadTiming::create): 103299 (WebCore::ResourceLoadTiming::deepCopy): 103300 (WebCore::ResourceLoadTiming::operator==): 103301 (WebCore::ResourceLoadTiming::ResourceLoadTiming): 103302 * platform/network/ResourceRequestBase.h: 103303 (WebCore::ResourceRequestBase::reportLoadTiming): 103304 (WebCore::ResourceRequestBase::setReportLoadTiming): 103305 (WebCore::ResourceRequestBase::ResourceRequestBase): 103306 * platform/network/ResourceResponseBase.cpp: 103307 (WebCore::ResourceResponseBase::connectionID): 103308 (WebCore::ResourceResponseBase::setConnectionID): 103309 * platform/network/ResourceResponseBase.h: 103310 103311 2010-07-09 Eric Seidel <eric (a] webkit.org> 103312 103313 Reviewed by Adam Barth. 103314 103315 Implement self closing start tag state in the tokenizer 103316 https://bugs.webkit.org/show_bug.cgi?id=41946 103317 103318 Amazingly we got this far w/o needing self closing. 103319 The LegacyHTMLTreeBuilder clearly uses the self-closing 103320 state, but the fact that we never exposed it seems to 103321 not have caused any test failures. Sad. 103322 103323 The new HTMLTreeBuilder only needs the self closing state 103324 for foreign content mode (and a few parse error cases). 103325 103326 * html/HTMLToken.h: 103327 (WebCore::HTMLToken::setSelfClosing): 103328 * html/HTMLTokenizer.cpp: 103329 (WebCore::HTMLTokenizer::nextToken): 103330 * html/HTMLTreeBuilder.cpp: 103331 (WebCore::): 103332 103333 2010-07-09 Eric Seidel <eric (a] webkit.org> 103334 103335 Reviewed by Adam Barth. 103336 103337 Add basic "in foreign content" support to the TreeBuilder 103338 https://bugs.webkit.org/show_bug.cgi?id=41943 103339 103340 This is covered by numerous tests in html5lib/runner.html. 103341 103342 "in foreign content" mode requires us to be able to process 103343 tokens using the "secondary insertion mode". We have to set 103344 a fake insertion mode to do that, so much of this code is enabling 103345 setting of fake insertion modes, and then later restoration of the 103346 insertion mode after execution. 103347 103348 There is a lot more of foreign content mode to implement, but this is 103349 a good start resulting in huge test progressions. 103350 103351 * html/HTMLConstructionSite.cpp: 103352 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): 103353 - Use createHTMLElementAndAttachToCurrent instead of copy/paste code. 103354 - No need to include HTMLElementFactory in this file. 103355 * html/HTMLConstructionSite.h: 103356 - RedirectToFosterParentGuard does not need to be a friend class. 103357 * html/HTMLElementStack.cpp: 103358 (WebCore::HTMLElementStack::isOnlyHTMLElementsInScope): 103359 * html/HTMLElementStack.h: 103360 * html/HTMLTreeBuilder.cpp: 103361 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 103362 (WebCore::): 103363 * html/HTMLTreeBuilder.h: 103364 (WebCore::HTMLTreeBuilder::setInsertionMode): 103365 (WebCore::HTMLTreeBuilder::isFakeInsertionMode): 103366 (WebCore::HTMLTreeBuilder::setFakeInsertionMode): 103367 103368 2010-07-09 Adam Barth <abarth (a] webkit.org> 103369 103370 Reviewed by Eric Seidel. 103371 103372 Coalesce text nodes when foster parenting 103373 https://bugs.webkit.org/show_bug.cgi?id=41921 103374 103375 Introduces the notion of an AttachmentSite to the overall 103376 HTMLConstructionSite. Maybe we should rename HTMLConstructionSite to 103377 HTMLConstructionArea since we construct things all over the tree? :) 103378 103379 There's something wrong in the internal layering in this class, but I 103380 can't quite see what it is. I added a FIXME for the some of the 103381 symptoms. 103382 103383 * html/HTMLConstructionSite.cpp: 103384 (WebCore::HTMLConstructionSite::attach): 103385 (WebCore::HTMLConstructionSite::attachAtSite): 103386 (WebCore::HTMLConstructionSite::insertTextNode): 103387 (WebCore::HTMLConstructionSite::findFosterSite): 103388 (WebCore::HTMLConstructionSite::fosterParent): 103389 * html/HTMLConstructionSite.h: 103390 103391 2010-07-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 103392 103393 Reviewed by Dirk Schulze. 103394 103395 RenderSVGRoot does not include border/padding while repainting 103396 https://bugs.webkit.org/show_bug.cgi?id=41854 103397 103398 RenderSVGRoot does not include border/padding in the repaint rect. 103399 clippedOverflowRectForRepaint() was missing. Affects all DRT results, 103400 as <svg> now gets properly sized. 103401 103402 Test: svg/custom/repaint-moving-svg-and-div.xhtml 103403 103404 * rendering/RenderSVGRoot.cpp: 103405 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 103406 (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint): 103407 * rendering/RenderSVGRoot.h: 103408 103409 2010-07-09 Albert J. Wong <ajwong (a] chromium.org> 103410 103411 Reviewed by Nikolas Zimmermann. 103412 103413 Add RuntimeEnabledFeatures::timeRangesEnabled() required by r62880 103414 103415 https://bugs.webkit.org/show_bug.cgi?id=41935 103416 103417 * bindings/generic/RuntimeEnabledFeatures.cpp: 103418 (WebCore::RuntimeEnabledFeatures::timeRangesEnabled): 103419 Add in timeRangesEnabled() implementation. 103420 * bindings/generic/RuntimeEnabledFeatures.h: 103421 Add in timeRangesEnabled() declaration. 103422 103423 103424 2010-07-09 Eric Seidel <eric (a] webkit.org> 103425 103426 Reviewed by Adam Barth. 103427 103428 Add setInsertionMode setter in preparation for "in foreign content" mode 103429 https://bugs.webkit.org/show_bug.cgi?id=41942 103430 103431 "in foreign content" mode needs to be able to use a fake 103432 insertion mode for processing. We need to be able to save the 103433 original insertion mode, set a fake one, and then restore the original 103434 if it wasn't changed. To detect changes, we need all callsites to 103435 use a setInsertionMode accessor instead of m_insertionMode = 103436 103437 No functional changes, thus no tests. 103438 103439 * html/HTMLTreeBuilder.cpp: 103440 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 103441 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): 103442 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 103443 (WebCore::HTMLTreeBuilder::processStartTag): 103444 (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): 103445 (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd): 103446 (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): 103447 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 103448 (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): 103449 (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): 103450 (WebCore::HTMLTreeBuilder::processEndTag): 103451 (WebCore::HTMLTreeBuilder::processCharacter): 103452 (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode): 103453 (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag): 103454 (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag): 103455 (WebCore::HTMLTreeBuilder::processScriptStartTag): 103456 103457 2010-07-09 Eric Seidel <eric (a] webkit.org> 103458 103459 Reviewed by Adam Barth. 103460 103461 Add insertForeignElement in preparation for adding "in foreign content" support 103462 https://bugs.webkit.org/show_bug.cgi?id=41940 103463 103464 No functional changes, thus no tests. 103465 103466 * html/HTMLConstructionSite.cpp: 103467 (WebCore::HTMLConstructionSite::insertForeignElement): 103468 (WebCore::HTMLConstructionSite::createElement): 103469 (WebCore::HTMLConstructionSite::createHTMLElement): 103470 * html/HTMLConstructionSite.h: 103471 103472 2010-07-09 Adam Barth <abarth (a] webkit.org> 103473 103474 Reviewed by Eric Seidel. 103475 103476 Implementing pending table characters 103477 https://bugs.webkit.org/show_bug.cgi?id=41916 103478 103479 This turned out to not be as scary as I thought it would be. 103480 103481 * html/HTMLTreeBuilder.cpp: 103482 (WebCore::HTMLTreeBuilder::processDoctypeToken): 103483 (WebCore::HTMLTreeBuilder::processStartTag): 103484 (WebCore::HTMLTreeBuilder::processEndTag): 103485 (WebCore::HTMLTreeBuilder::processComment): 103486 (WebCore::HTMLTreeBuilder::processCharacter): 103487 (WebCore::HTMLTreeBuilder::processEndOfFile): 103488 (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode): 103489 * html/HTMLTreeBuilder.h: 103490 103491 2010-07-08 Adam Barth <abarth (a] webkit.org> 103492 103493 Reviewed by Eric Seidel. 103494 103495 Handle whitespace correctly 103496 https://bugs.webkit.org/show_bug.cgi?id=41907 103497 103498 This patch introduces an extra memcpy in the character token pipeline. 103499 I'll remove the memcpy in a future patch. 103500 103501 * html/HTMLConstructionSite.cpp: 103502 (WebCore::HTMLConstructionSite::insertTextNode): 103503 * html/HTMLConstructionSite.h: 103504 * html/HTMLTreeBuilder.cpp: 103505 (WebCore::HTMLTreeBuilder::processCharacter): 103506 * html/HTMLTreeBuilder.h: 103507 103508 2010-07-09 Eric Seidel <eric (a] webkit.org> 103509 103510 Reviewed by Adam Barth. 103511 103512 Move more mode handling into functions for later re-use 103513 https://bugs.webkit.org/show_bug.cgi?id=41939 103514 103515 No functional changes, thus no tests. 103516 103517 * html/HTMLTreeBuilder.cpp: 103518 (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): 103519 (WebCore::HTMLTreeBuilder::processEndTagForInRow): 103520 (WebCore::HTMLTreeBuilder::processEndTagForInCell): 103521 (WebCore::HTMLTreeBuilder::processEndTag): 103522 * html/HTMLTreeBuilder.h: 103523 103524 2010-07-09 Eric Seidel <eric (a] webkit.org> 103525 103526 Reviewed by Adam Barth. 103527 103528 Add new popUntilPopped functions to clean up code 103529 https://bugs.webkit.org/show_bug.cgi?id=41936 103530 103531 Pretty self explanatory. Much awesome code reduction. 103532 103533 No functional changes, thus no tests. 103534 103535 * html/HTMLElementStack.cpp: 103536 (WebCore::HTMLElementStack::popUntilPopped): 103537 * html/HTMLElementStack.h: 103538 * html/HTMLTreeBuilder.cpp: 103539 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 103540 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 103541 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 103542 (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): 103543 (WebCore::HTMLTreeBuilder::processTableEndTagForInTable): 103544 (WebCore::HTMLTreeBuilder::processEndTag): 103545 103546 2010-07-09 Eric Seidel <eric (a] webkit.org> 103547 103548 Unreviewed. Just renaming (discussed with Adam Barth). 103549 103550 Rename createElement* to createHTMLElement* to better reflect 103551 behavior. This is in preparation for adding foreign content support. 103552 103553 * html/HTMLConstructionSite.cpp: 103554 (WebCore::HTMLConstructionSite::createHTMLElementAndAttachToCurrent): 103555 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 103556 (WebCore::HTMLConstructionSite::insertHTMLHeadElement): 103557 (WebCore::HTMLConstructionSite::insertHTMLBodyElement): 103558 (WebCore::HTMLConstructionSite::insertHTMLElement): 103559 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): 103560 (WebCore::HTMLConstructionSite::createHTMLElement): 103561 * html/HTMLConstructionSite.h: 103562 * html/HTMLTreeBuilder.cpp: 103563 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 103564 103565 2010-07-09 Eric Seidel <eric (a] webkit.org> 103566 103567 Unreviewed. Just renaming (discussed with Adam Barth). 103568 103569 Rename insertElement to insertHTMLElement and 103570 insertSelfClosingElement to insertSelfClosingHTMLElement 103571 to better reflect what they actually do. This is in preparation 103572 for adding foreign content support. 103573 103574 * html/HTMLConstructionSite.cpp: 103575 (WebCore::HTMLConstructionSite::insertHTMLElement): 103576 (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement): 103577 (WebCore::HTMLConstructionSite::insertFormattingElement): 103578 (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements): 103579 (WebCore::HTMLConstructionSite::fosterParent): 103580 * html/HTMLConstructionSite.h: 103581 * html/HTMLTreeBuilder.cpp: 103582 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): 103583 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 103584 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 103585 (WebCore::HTMLTreeBuilder::processStartTag): 103586 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 103587 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 103588 (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag): 103589 (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag): 103590 103591 2010-07-08 Rob Buis <rwlbuis (a] gmail.com> 103592 103593 Reviewed by Eric Seidel. 103594 103595 Implement SVGSVGElement.getElementById 103596 https://bugs.webkit.org/show_bug.cgi?id=41655 103597 103598 Implement getElementById for SVGSVGElement by trying to 103599 reuse Document.getElementById. If that fails to find an 103600 SVG element in the document fragent do a subtree search. 103601 103602 Test: svg/custom/svg-getelementid.xhtml 103603 103604 * svg/SVGSVGElement.cpp: 103605 (WebCore::SVGSVGElement::getElementById): 103606 * svg/SVGSVGElement.h: 103607 * svg/SVGSVGElement.idl: 103608 103609 2010-07-08 Eric Seidel <eric (a] webkit.org> 103610 103611 Reviewed by Adam Barth. 103612 103613 Unwrap a few || blocks for easier readability 103614 https://bugs.webkit.org/show_bug.cgi?id=41838 103615 103616 No functional change, thus no tests. 103617 103618 * html/HTMLTreeBuilder.cpp: 103619 (WebCore::HTMLTreeBuilder::adjustedLexerState): 103620 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 103621 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 103622 (WebCore::HTMLTreeBuilder::processStartTag): 103623 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 103624 (WebCore::HTMLTreeBuilder::processEndTag): 103625 (WebCore::HTMLTreeBuilder::processComment): 103626 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 103627 103628 2010-07-08 Sam Magnuson <smagnuson (a] netflix.com> 103629 103630 Reviewed by Simon Hausmann. 103631 103632 [Qt] for debugging purposes nice I'm contributing back my FPS 103633 counter in the AnimationQtBase 103634 https://bugs.webkit.org/show_bug.cgi?id=40381 103635 103636 Simply start a timer and count frames in the AnimationQtBase and 103637 spit out the FPS count at the end of a single animation. 103638 103639 No new tests: this is a simple debugging aid. 103640 103641 * platform/graphics/qt/GraphicsLayerQt.cpp: 103642 (WebCore::AnimationQt::updateState): 103643 (WebCore::AnimationQt::updateCurrentTime): 103644 (WebCore::TransformAnimationQt::updateState): 103645 (WebCore::OpacityAnimationQt::updateState): 103646 103647 2010-07-08 Sam Magnuson <smagnuson (a] netflix.com> 103648 103649 Reviewed by Simon Hausmann. 103650 103651 [Qt] instance objects created for QObjects are somtimes GC'd 103652 https://bugs.webkit.org/show_bug.cgi?id=40352 103653 103654 In markAggregate loop over all the current fields and for any that 103655 still have a dynamic property or a child, mark them as 103656 well. Otherwise the proxy instance will go away and the JS that 103657 was bound to it will be lost. 103658 103659 * bridge/qt/qt_instance.cpp: 103660 (JSC::Bindings::QtInstance::getQtInstance): 103661 (JSC::Bindings::QtInstance::removeCachedMethod): 103662 (JSC::Bindings::QtInstance::markAggregate): 103663 (JSC::Bindings::QtInstance::getPropertyNames): 103664 103665 2010-07-08 Ilya Tikhonovsky <loislo (a] chromium.org> 103666 103667 Reviewed by Pavel Feldman. 103668 103669 WebInspector: migrate InspectorDOMAgent to the generated version of 103670 InspectorFrontend interface. This is the next step on the way to 103671 Remote Debugging. 103672 103673 * bindings/js/ScriptEventListener.cpp: 103674 (WebCore::eventListenerHandlerBody): 103675 (WebCore::eventListenerHandlerLocation): 103676 * bindings/js/ScriptEventListener.h: 103677 * bindings/v8/ScriptEventListener.cpp: 103678 (WebCore::eventListenerHandlerBody): 103679 (WebCore::eventListenerHandlerLocation): 103680 * bindings/v8/ScriptEventListener.h: 103681 * inspector/CodeGeneratorInspector.pm: 103682 * inspector/InspectorCSSStore.cpp: 103683 (WebCore::InspectorCSSStore::inspectorStyleSheet): 103684 * inspector/InspectorController.cpp: 103685 (WebCore::InspectorController::connectFrontend): 103686 * inspector/InspectorController.h: 103687 (WebCore::InspectorController::inspectorFrontend2): 103688 * inspector/InspectorDOMAgent.cpp: 103689 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 103690 (WebCore::InspectorDOMAgent::setDocument): 103691 (WebCore::InspectorDOMAgent::handleEvent): 103692 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): 103693 (WebCore::InspectorDOMAgent::getEventListenersForNode): 103694 (WebCore::InspectorDOMAgent::buildObjectForNode): 103695 (WebCore::InspectorDOMAgent::buildArrayForElementAttributes): 103696 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): 103697 (WebCore::InspectorDOMAgent::buildObjectForEventListener): 103698 (WebCore::InspectorDOMAgent::didInsertDOMNode): 103699 (WebCore::InspectorDOMAgent::getStyles): 103700 (WebCore::InspectorDOMAgent::getAllStyles): 103701 (WebCore::InspectorDOMAgent::getStyleSheet): 103702 (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId): 103703 (WebCore::InspectorDOMAgent::getInlineStyle): 103704 (WebCore::InspectorDOMAgent::getComputedStyle): 103705 (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles): 103706 (WebCore::InspectorDOMAgent::buildArrayForCSSRules): 103707 (WebCore::InspectorDOMAgent::buildArrayForPseudoElements): 103708 (WebCore::InspectorDOMAgent::applyStyleText): 103709 (WebCore::InspectorDOMAgent::toggleStyleEnabled): 103710 (WebCore::InspectorDOMAgent::setRuleSelector): 103711 (WebCore::InspectorDOMAgent::addRule): 103712 (WebCore::InspectorDOMAgent::buildObjectForStyle): 103713 (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): 103714 (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties): 103715 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 103716 (WebCore::InspectorDOMAgent::buildObjectForRule): 103717 (WebCore::InspectorDOMAgent::toArray): 103718 (WebCore::InspectorDOMAgent::reportNodesAsSearchResults): 103719 * inspector/InspectorDOMAgent.h: 103720 (WebCore::InspectorDOMAgent::create): 103721 * inspector/InspectorFrontend.cpp: 103722 * inspector/InspectorFrontend.h: 103723 * inspector/InspectorFrontend2.idl: 103724 * inspector/front-end/inspector.js: 103725 (WebInspector.dispatchMessageFromBackend): 103726 103727 2010-07-08 Simon Fraser <simon.fraser (a] apple.com> 103728 103729 Reviewed by Darin Adler. 103730 103731 compositing/iframes/iframe-resize.html displays incorrectly after the resize 103732 https://bugs.webkit.org/show_bug.cgi?id=41794 103733 103734 The clip and scroll layers of a composited iframe's RenderLayerCompositor are updated from 103735 from updateGraphicsLayerGeometry(), but this is too early to get the correct layoutWidth and 103736 layoutHeight from the FrameView which happen later in layout. So when a widget size changes, 103737 call updateAfterWidgetResize() directly on the RenderLayerBacking (if any). 103738 103739 * rendering/RenderLayerBacking.cpp: 103740 (WebCore::RenderLayerBacking::updateAfterWidgetResize): New method that updates the clip 103741 and scroll layers of the iframe's content RenderLayerCompositor. 103742 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call updateAfterWidgetResize() 103743 * rendering/RenderLayerBacking.h: Add updateAfterWidgetResize(). 103744 * rendering/RenderWidget.cpp: 103745 (WebCore::RenderWidget::setWidgetGeometry): Call updateAfterWidgetResize(). 103746 103747 2010-07-08 Simon Fraser <simon.fraser (a] apple.com> 103748 103749 Reviewed by Dan Bernstein. 103750 103751 Calling layoutTestController.layerTreeAsText() should update layout 103752 https://bugs.webkit.org/show_bug.cgi?id=41818 103753 103754 Call updateLayout() on the document before obtaining the layer tree. 103755 This will update compositing layers. 103756 103757 * page/Frame.cpp: 103758 (WebCore::Frame::layerTreeAsText): 103759 103760 2010-07-08 Adam Barth <abarth (a] webkit.org> 103761 103762 Reviewed by Eric Seidel. 103763 103764 Get my head wrapped around processCharacter 103765 https://bugs.webkit.org/show_bug.cgi?id=41812 103766 103767 The bulk of the patch is just stubbing out functions to document what 103768 the spec tells us to do. I'll implement these functions in subsequent 103769 patches. 103770 103771 * html/HTMLConstructionSite.h: 103772 (WebCore::HTMLConstructionSite::insertLeadingWhitespace): 103773 (WebCore::HTMLConstructionSite::insertLeadingWhitespaceWithActiveFormattingElements): 103774 * html/HTMLTreeBuilder.cpp: 103775 (WebCore::HTMLTreeBuilder::processCharacter): 103776 * html/HTMLTreeBuilder.h: 103777 (WebCore::HTMLTreeBuilder::skipLeadingWhitespace): 103778 103779 2010-07-08 Tony Chang <tony (a] chromium.org> 103780 103781 Reviewed by Ojan Vafai. 103782 103783 WebCore::InsertLineBreakCommand::shouldUseBreakElement ReadAV@NULL 103784 https://bugs.webkit.org/show_bug.cgi?id=30116 103785 Fixing the crash causes text insertions on hidden elements to get ignored 103786 (not a new bug). This is https://bugs.webkit.org/show_bug.cgi?id=40342 103787 103788 Test: editing/inserting/return-key-in-hidden-textarea.html 103789 103790 * editing/InsertLineBreakCommand.cpp: 103791 (WebCore::InsertLineBreakCommand::doApply): 103792 * editing/InsertParagraphSeparatorCommand.cpp: 103793 (WebCore::InsertParagraphSeparatorCommand::doApply): 103794 103795 2010-07-08 Sam Weinig <sam (a] webkit.org> 103796 103797 Reviewed by Oliver Hunt. 103798 103799 Fix for https://bugs.webkit.org/show_bug.cgi?id=41923 103800 TimeRanges should expose a JS constructor 103801 103802 * html/TimeRanges.idl: Remove [OmitConstructor]. 103803 * page/DOMWindow.idl: Add constructor. 103804 103805 2010-07-08 Erik Arvidsson <arv (a] chromium.org> 103806 103807 Reviewed by Ojan Vafai. 103808 103809 Add missing padding-end and margin-end CSS properties. 103810 https://bugs.webkit.org/show_bug.cgi?id=25761 103811 103812 Tests: fast/css/margin-start-end.html 103813 fast/css/padding-start-end.html 103814 103815 * css/CSSComputedStyleDeclaration.cpp: 103816 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 103817 * css/CSSParser.cpp: 103818 (WebCore::CSSParser::parseValue): 103819 * css/CSSPropertyNames.in: 103820 * css/CSSStyleSelector.cpp: 103821 (WebCore::CSSStyleSelector::applyProperty): 103822 * inspector/front-end/SourceCSSTokenizer.js: 103823 (WebInspector.SourceCSSTokenizer): 103824 103825 2010-07-08 Aaron Boodman <aa (a] chromium.org> 103826 103827 Reviewed by Timothy Hatcher. 103828 103829 Add the ability for user scripts and user styles to affect just the top frame. 103830 103831 https://bugs.webkit.org/show_bug.cgi?id=41529 103832 103833 Tests: userscripts/user-script-all-frames.html 103834 userscripts/user-script-top-frame-only.html 103835 userscripts/user-style-all-frames.html 103836 userscripts/user-style-top-frame-only.html 103837 103838 * WebCore.base.exp: Update PageGroup method signatures. 103839 * dom/Document.cpp: 103840 (WebCore::Document::pageGroupUserSheets): Check allFrames before injecting. 103841 * page/Frame.cpp: 103842 (WebCore::Frame::injectUserScriptsForWorld): Ditto. 103843 * page/PageGroup.cpp: 103844 (WebCore::PageGroup::addUserScriptToWorld): 103845 (WebCore::PageGroup::addUserStyleSheetToWorld): 103846 * page/PageGroup.h: 103847 * page/UserScript.h: 103848 (WebCore::UserScript::UserScript): 103849 (WebCore::UserScript::injectedFrames): 103850 * page/UserScriptTypes.h: 103851 (WebCore::): 103852 * page/UserStyleSheet.h: 103853 (WebCore::UserStyleSheet::UserStyleSheet): 103854 (WebCore::UserStyleSheet::injectedFrames): 103855 103856 2010-07-08 Adele Peterson <adele (a] apple.com> 103857 103858 Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler. 103859 103860 Fix for https://bugs.webkit.org/show_bug.cgi?id=41721 103861 <rdar://problem/8158561> Missing plug-in indicator should have a pressed state 103862 103863 Test: plugins/clicking-missing-plugin-fires-delegate.html 103864 103865 * html/HTMLPlugInElement.cpp: 103866 (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize m_isCapturingMouseEvents. 103867 (WebCore::HTMLPlugInElement::detach): If we're still capturing when getting detached, clear the capturing node on the EventHandler. 103868 (WebCore::HTMLPlugInElement::defaultEventHandler): Call handleMissingPluginIndicatorEvent when the missing plugin indicator is showing. 103869 * html/HTMLPlugInElement.h: 103870 (WebCore::HTMLPlugInElement::isCapturingMouseEvents): 103871 (WebCore::HTMLPlugInElement::setIsCapturingMouseEvents): 103872 * page/ChromeClient.h: 103873 (WebCore::ChromeClient::shouldMissingPluginMessageBeButton): Added default implementation. 103874 * rendering/RenderEmbeddedObject.cpp: 103875 (WebCore::replacementTextRoundedRectPressedColor): 103876 (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): 103877 (WebCore::RenderEmbeddedObject::setMissingPluginIndicatorIsPressed): Added. Causes a repaint when the state changes. 103878 (WebCore::RenderEmbeddedObject::paintReplaced): Call getReplacementTextGeometry. 103879 (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Factored this out so it can be used in paintReplaced and in isInMissingPluginIndicator. 103880 (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Hit test to see if the mouse event is in the missing plugin indicator. 103881 (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent): Capture mouse events as needed and track the pressed appearance. 103882 * rendering/RenderEmbeddedObject.h: 103883 103884 2010-07-08 James Robinson <jamesr (a] google.com> 103885 103886 Reviewed by Darin Fisher. 103887 103888 Allow resizing and getting the texture id from an offscreen GLES2Context 103889 https://bugs.webkit.org/show_bug.cgi?id=41828 103890 103891 When using an offscreen GLES2Context the caller needs to be able to resize the backing store 103892 managed by the embedder and get access to a texture id to pass to the compositor. WebGL 103893 does these actions in an indirect way, it will be refactored to use this path. 103894 103895 * platform/chromium/GLES2Context.h: 103896 103897 2010-07-02 Ojan Vafai <ojan (a] chromium.org> 103898 103899 Reviewed by Adam Barth. 103900 103901 Crash in RenderObject::containingBlock when clearing selection in a display:none node. 103902 https://bugs.webkit.org/show_bug.cgi?id=41523 103903 103904 updateStyleIfNeeded before clearing the selection in the RenderView. Otherwise, 103905 m_selectionStart and m_selectionEnd in RenderView point to garbage object. 103906 This fixes the crash because updateStyleIfNeeded clears the selection before 103907 clobbering nodes that contain the selection. 103908 103909 Test: editing/selection/crash-on-clear-selection.html 103910 103911 * editing/SelectionController.cpp: 103912 (WebCore::SelectionController::updateAppearance): 103913 103914 2010-07-08 Brent Fulgham <bfulgham (a] webkit.org> 103915 103916 Reviewed by Xan Lopez. 103917 103918 Correct a mistake in calculating squiggle extents. The entire 103919 quantity was being divided by two, rather than just the unitWidth. 103920 This error caused the squiggle to be about half the expected length. 103921 103922 * platform/graphics/cairo/DrawErrorUnderline.h: 103923 (drawErrorUnderline): 103924 103925 2010-07-08 John Abd-El-Malek <jam (a] chromium.org> 103926 103927 Reviewed by Darin Fisher. 103928 103929 [V8] Navigation policy doesn't play nicely with pepper plugins 103930 https://bugs.webkit.org/show_bug.cgi?id=41864 103931 103932 * bindings/v8/V8Utilities.cpp: 103933 (WebCore::callingOrEnteredFrame): 103934 (WebCore::shouldAllowNavigation): 103935 (WebCore::navigateIfAllowed): 103936 103937 2010-07-08 Jon Honeycutt <jhoneycutt (a] apple.com> 103938 103939 Missing plug-ins may cause an assertion failure. 103940 https://bugs.webkit.org/show_bug.cgi?id=41900 103941 103942 Reviewed by Adele Peterson. 103943 103944 Test: plugins/missing-plugin.html 103945 103946 * plugins/PluginView.cpp: 103947 (WebCore::PluginView::~PluginView): 103948 Check whether m_instance is null before trying to remove it from the 103949 map. Trying to remove a null instance results in an assertion failure. 103950 (WebCore::PluginView::PluginView): 103951 Initialize m_instance to 0, because there is an early return that may 103952 skip its being assigned its proper value. 103953 103954 2010-07-08 Darin Adler <darin (a] apple.com> 103955 103956 Reviewed by Oliver Hunt. 103957 103958 Fix a test failure seen only on the Leopard bot. 103959 103960 * bindings/js/JSSharedWorkerCustom.cpp: 103961 (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): 103962 If SharedWorker::create returns an exception, don't try to create a wrapper 103963 for its return value, which can be 0. 103964 103965 2010-07-08 Albert J. Wong <ajwong (a] chromium.org> 103966 103967 Not reviewed, build break fix for chromium. 103968 103969 A new MediaControlElementType enum was added which caused a warning in 103970 the Chromium build. 103971 103972 * rendering/RenderMediaControlsChromium.cpp: 103973 (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): 103974 Add MediaVolumeSliderMuteButton enumartion entry. 103975 103976 2010-07-08 Dmitry Titov <dimich (a] chromium.org> 103977 103978 Reviewed by David Levin. 103979 103980 Remove IDL declarations and stubs for navigator.registerProtocolHandler and navigator.registerContentHandler. 103981 https://bugs.webkit.org/show_bug.cgi?id=41878 103982 103983 This is practically a rollback of http://trac.webkit.org/changeset/50477. 103984 103985 * page/Chrome.cpp: 103986 * page/Chrome.h: 103987 * page/ChromeClient.h: 103988 * page/Navigator.cpp: 103989 * page/Navigator.h: 103990 * page/Navigator.idl: 103991 103992 2010-07-08 Xan Lopez <xlopez (a] igalia.com> 103993 103994 Reviewed by Darin Adler. 103995 103996 Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects 103997 https://bugs.webkit.org/show_bug.cgi?id=41823 103998 103999 Create the ResourceHandle manually for now instead of calling 104000 ::create, since that methods does a few extra checks that make us 104001 fail a couple of HTTP tests. 104002 104003 * platform/network/soup/ResourceHandleSoup.cpp: 104004 (WebCore::): 104005 104006 2010-07-08 Alexey Proskuryakov <ap (a] apple.com> 104007 104008 Reviewed by David Levin. 104009 104010 https://bugs.webkit.org/show_bug.cgi?id=41886 104011 Shorten access control failure explanation messages 104012 104013 * loader/CrossOriginAccessControl.cpp: 104014 (WebCore::passesAccessControlCheck): 104015 * loader/CrossOriginPreflightResultCache.cpp: 104016 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod): 104017 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): 104018 Removed "response header field" parts from error text - it's long, but doesn't add much 104019 to header field name. 104020 104021 * platform/network/ResourceErrorBase.cpp: 104022 * platform/network/ResourceErrorBase.h: 104023 * xml/XMLHttpRequest.cpp: 104024 (WebCore::XMLHttpRequest::didFail): 104025 * loader/DocumentThreadableLoader.cpp: 104026 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): 104027 (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): 104028 (WebCore::DocumentThreadableLoader::didReceiveResponse): 104029 (WebCore::DocumentThreadableLoader::preflightFailure): 104030 Renamed the constant for domain. WebCore shouldn't be creating errors observable by WebKit 104031 clients, because it can't create a platform error, and cannot load a localized string. 104032 We don't treat cross origin access check failures as true loading failures, so we don't tell 104033 clients about these. 104034 104035 2010-07-08 Eric Carlson <eric.carlson (a] apple.com> 104036 104037 Reviewed by Dan Bernstein. 104038 104039 Mac OS X media controls should have a way to adjust volume incrementally 104040 https://bugs.webkit.org/show_bug.cgi?id=41718 104041 <rdar://problem/5679472> 104042 104043 * css/CSSPrimitiveValueMappings.h: 104044 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Handle MediaVolumeSliderMuteButtonPart. 104045 104046 * css/CSSSelector.cpp: 104047 (WebCore::CSSSelector::pseudoId): Handle PseudoMediaControlsVolumeSliderMuteButton. 104048 (WebCore::nameToPseudoTypeMap): Define mediaControlsVolumeSliderMuteButton. 104049 (WebCore::CSSSelector::extractPseudoType): Handle PseudoMediaControlsVolumeSliderMuteButton. 104050 104051 * css/CSSSelector.h: 104052 (WebCore::CSSSelector::): Define PseudoMediaControlsVolumeSliderMuteButton. 104053 104054 * css/CSSValueKeywords.in: Define media-volume-slider-mute-button. 104055 104056 * css/mediaControls.css: 104057 (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): New. 104058 104059 * css/mediaControlsQuickTime.css: 104060 (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): Add "overflow: visible" 104061 so volume slider pop-up will be visible. 104062 104063 (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): Make 104064 mute button 14x12 instead of 15x14 so it matches the size in the volume slider. 104065 104066 (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container): 104067 (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider): 104068 (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): 104069 New. 104070 104071 * platform/ThemeTypes.h: Define MediaVolumeSliderMuteButtonPart. 104072 104073 * rendering/MediaControlElements.cpp: 104074 (WebCore::MediaControlInputElement::MediaControlInputElement): Handle MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON. 104075 (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Add ButtonLocation 104076 parameter both mute buttons can be created. 104077 (WebCore::MediaControlMuteButtonElement::create): Ditto. 104078 104079 * rendering/MediaControlElements.h: Define MediaVolumeSliderMuteButton and ButtonLocation. 104080 104081 * rendering/RenderMedia.cpp: 104082 (WebCore::RenderMedia::styleDidChange): Update volume slider mute button. 104083 (WebCore::RenderMedia::createMuteButton): Pass ButtonLocation parameter to MediaControlMuteButtonElement::create. 104084 (WebCore::RenderMedia::createVolumeSliderMuteButton): New. 104085 (WebCore::RenderMedia::updateControls): Deal with volume slider mute button. 104086 (WebCore::RenderMedia::updateVolumeSliderContainer): Don't assume all ports want to position 104087 the volume slider in the same place, call new volumeSliderOffsetFromMuteButton theme function. 104088 (WebCore::RenderMedia::forwardEvent): Handle volume slider mute button. 104089 * rendering/RenderMedia.h: 104090 104091 * rendering/RenderTheme.cpp: 104092 (WebCore::RenderTheme::paint): Handle MediaVolumeSliderMuteButtonPart. 104093 (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): New, return location previously hard 104094 coded in RenderMedia::updateVolumeSliderContainer. 104095 * rendering/RenderTheme.h: 104096 104097 * rendering/RenderThemeMac.h: 104098 * rendering/RenderThemeMac.mm: 104099 (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Deal with the volume slider thumb. 104100 (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): New, call the WKSI paint function 104101 for this button. 104102 (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto. 104103 (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto. 104104 (WebCore::RenderThemeMac::shouldRenderMediaControlPart): Draw the volume slider parts when 104105 using the new controller UI for a movie that has audio. 104106 (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): New, position the volume slider 104107 directly above the mute button. 104108 104109 * rendering/style/RenderStyleConstants.h: Define MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON. 104110 104111 2010-07-08 Antonio Gomes <tonikitoo (a] webkit.org> 104112 104113 Unreviewed complementary fix for r62815 104114 104115 One last time change made me blind to a "!" in a if statment. 104116 104117 * editing/EditorCommand.cpp: 104118 (WebCore::executeToggleStyle): 104119 104120 2010-07-07 Ojan Vafai <ojan (a] chromium.org> 104121 104122 Reviewed by Darin Adler. 104123 104124 Regression: Selection anchor + focus swap when arrow keys after setBaseAndExtent 104125 https://bugs.webkit.org/show_bug.cgi?id=32605 104126 104127 Only have selections be non-directional when they are set via the mouse. 104128 Otherwise, all selections are directional. 104129 104130 Test: editing/selection/extend-forward-after-set-base-and-extent.html 104131 104132 * WebCore.base.exp: 104133 * editing/SelectionController.cpp: 104134 (WebCore::SelectionController::setSelection): 104135 * editing/SelectionController.h: 104136 (WebCore::SelectionController::setSelection): 104137 * page/EventHandler.cpp: 104138 (WebCore::EventHandler::selectClosestWordFromMouseEvent): 104139 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): 104140 (WebCore::EventHandler::handleMousePressEventTripleClick): 104141 (WebCore::EventHandler::handleMousePressEventSingleClick): 104142 (WebCore::EventHandler::updateSelectionForMouseDrag): 104143 104144 2010-07-08 Antonio Gomes <tonikitoo (a] webkit.org> 104145 104146 Reviewed by Ojan Vafai. 104147 104148 Refactor platform dependent editing behavior code out of Settings (part II) 104149 https://bugs.webkit.org/show_bug.cgi?id=39854 104150 104151 Mac port is currently the only port relying on a style to be present on the start 104152 of a selection to consider the style as applied or not. All other ports 104153 have to have the style present in all text node of the selection for such. 104154 104155 Patch makes situations that depend on this check like this to be controlled by 104156 the EditingBehavior class. 104157 104158 Refactoring, so no new tests needed. 104159 104160 * editing/EditingBehavior.h: 104161 (WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection): 104162 * editing/EditorCommand.cpp: 104163 (WebCore::executeToggleStyle): 104164 104165 2010-07-08 Anders Carlsson <andersca (a] apple.com> 104166 104167 Reviewed by Sam Weinig. 104168 104169 Add stubbed out PluginView class 104170 https://bugs.webkit.org/show_bug.cgi?id=41879 104171 104172 Export functions needed by WebKit2. 104173 104174 * WebCore.exp.in: 104175 104176 2010-07-08 Ben Murdoch <benm (a] google.com> 104177 104178 Reviewed by Pavel Feldman. 104179 104180 Fix build break in V8ConsoleCustom.cpp 104181 https://bugs.webkit.org/show_bug.cgi?id=40825 104182 104183 No new tests as just fixing a build break. 104184 104185 * bindings/v8/custom/V8ConsoleCustom.cpp: Guard profilesAccessorGetter 104186 appropriately. 104187 104188 2010-07-08 Sam Weinig <sam (a] webkit.org> 104189 104190 Reviewed by Anders Carlsson. 104191 104192 Pass Page to BackForwardControllerClient::createBackForwardList since it 104193 may be called before implementations of BackForwardControllerClient have 104194 access to a Page. 104195 104196 * history/BackForwardController.cpp: 104197 (WebCore::BackForwardController::BackForwardController): 104198 * history/BackForwardControllerClient.h: 104199 104200 2010-07-08 Sheriff Bot <webkit.review.bot (a] gmail.com> 104201 104202 Unreviewed, rolling out r62778. 104203 http://trac.webkit.org/changeset/62778 104204 https://bugs.webkit.org/show_bug.cgi?id=41866 104205 104206 Broke svg/W3C-SVG-1.1/text-intro-05-t.svg in debug (Requested 104207 by pfeldman on #webkit). 104208 104209 * platform/graphics/chromium/FontLinux.cpp: 104210 (WebCore::TextRunWalker::TextRunWalker): 104211 (WebCore::TextRunWalker::~TextRunWalker): 104212 104213 2010-07-08 Vitaly Repeshko <vitalyr (a] chromium.org> 104214 104215 Reviewed by Pavel Feldman. 104216 104217 Fix adoptRef usage violation in IDBObjectStoreRequest 104218 https://bugs.webkit.org/show_bug.cgi?id=41869 104219 104220 * storage/IDBObjectStoreRequest.cpp: 104221 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest): 104222 104223 2010-07-08 Sam Weinig <sam (a] webkit.org> 104224 104225 Another chromium build fix. 104226 104227 * history/BackForwardListChromium.cpp: 104228 (WebCore::BackForwardListImpl::goBack): 104229 (WebCore::BackForwardListImpl::goForward): 104230 (WebCore::BackForwardListImpl::backListWithLimit): 104231 (WebCore::BackForwardListImpl::forwardListWithLimit): 104232 (WebCore::BackForwardListImpl::containsItem): 104233 (WebCore::BackForwardListImpl::removeItem): 104234 104235 2010-07-08 Sam Weinig <sam (a] webkit.org> 104236 104237 Fix Chromium build. 104238 104239 * WebCore.gyp/WebCore.gyp: 104240 104241 2010-07-08 Sam Weinig <sam (a] webkit.org> 104242 104243 Reviewed by Anders Carlsson. 104244 104245 Patch for https://bugs.webkit.org/show_bug.cgi?id=41826 104246 Convert BackForwardList to an abstract base class and add BackForwardListImpl 104247 as the concrete implementation of it. 104248 104249 * CMakeLists.txt: 104250 * GNUmakefile.am: 104251 * WebCore.exp.in: 104252 * WebCore.gypi: 104253 * WebCore.pro: 104254 * WebCore.vcproj/WebCore.vcproj: 104255 * WebCore.xcodeproj/project.pbxproj: 104256 * history/BackForwardController.cpp: 104257 (WebCore::BackForwardController::BackForwardController): 104258 * history/BackForwardController.h: 104259 * history/BackForwardList.cpp: Removed. 104260 * history/BackForwardList.h: 104261 (WebCore::BackForwardList::~BackForwardList): 104262 (WebCore::BackForwardList::isBackForwardListImpl): 104263 (WebCore::BackForwardList::BackForwardList): 104264 * history/BackForwardListChromium.cpp: 104265 * history/BackForwardListImpl.cpp: Copied from WebCore/history/BackForwardList.cpp. 104266 * history/BackForwardListImpl.h: Copied from WebCore/history/BackForwardList.h. 104267 (WebCore::BackForwardListImpl::isBackForwardListImpl): 104268 104269 2010-07-08 Vitaly Repeshko <vitalyr (a] chromium.org> 104270 104271 Reviewed by Pavel Feldman. 104272 104273 Fix adoptRef usage violations (mostly in chromium) 104274 https://bugs.webkit.org/show_bug.cgi?id=41863 104275 104276 * bindings/v8/V8DOMWrapper.cpp: 104277 (WebCore::V8DOMWrapper::wrapNativeNodeFilter): 104278 * bindings/v8/V8NodeFilterCondition.h: 104279 (WebCore::V8NodeFilterCondition::create): 104280 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: 104281 (WebCore::getNamedItems): 104282 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: 104283 (WebCore::getNamedItems): 104284 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: 104285 (WebCore::V8HTMLFormElement::namedPropertyGetter): 104286 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: 104287 (WebCore::V8HTMLSelectElement::namedPropertyGetter): 104288 * bindings/v8/custom/V8NamedNodesCollection.h: 104289 (WebCore::V8NamedNodesCollection::create): 104290 (WebCore::V8NamedNodesCollection::V8NamedNodesCollection): 104291 * storage/IDBDatabaseRequest.cpp: 104292 (WebCore::IDBDatabaseRequest::IDBDatabaseRequest): 104293 * storage/IndexedDatabaseRequest.cpp: 104294 (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest): 104295 104296 2010-07-08 Xan Lopez <xlopez (a] igalia.com> 104297 104298 Reviewed by Gustavo Noronha. 104299 104300 Silence a few noisy build rules. 104301 104302 * GNUmakefile.am: 104303 104304 2010-07-08 Andreas Kling <andreas.kling (a] nokia.com> 104305 104306 Reviewed by Simon Hausmann. 104307 104308 [Qt] Canvas putImageData() resets painter state 104309 https://bugs.webkit.org/show_bug.cgi?id=41827 104310 104311 Use drawImage() to copy pixels in putImageData() instead of QPixmap::operator= 104312 104313 Test: fast/canvas/canvas-state-intact-after-putImageData.html 104314 104315 * platform/graphics/qt/ImageBufferQt.cpp: 104316 (WebCore::putImageData): 104317 104318 2010-07-08 Andrey Kosyakov <caseq (a] chromium.org> 104319 104320 Reviewed by Pavel Feldman. 104321 104322 Web Inspector: Do not invoke shortcuts popup upon bare '?' if it's typed 104323 into an input field. 104324 https://bugs.webkit.org/show_bug.cgi?id=41760 104325 104326 * inspector/front-end/inspector.js: 104327 (WebInspector.documentKeyDown): 104328 104329 2010-07-08 Patrick Gansterer <paroga (a] paroga.com> 104330 104331 Reviewed by Kent Tamura. 104332 104333 [WINCE] Buildfix for EventHandler 104334 https://bugs.webkit.org/show_bug.cgi?id=41829 104335 104336 SM_MENUDROPALIGNMENT isn't supported on WinCE. 104337 104338 * page/EventHandler.cpp: 104339 (WebCore::EventHandler::sendContextMenuEventForKey): 104340 104341 2010-07-08 Xiaomei Ji <xji (a] chromium.org> 104342 104343 Reviewed by David Levin. 104344 104345 Fix characters with unicode-bidi-mirror property are not correctly 104346 mirrored in Linux. 104347 https://bugs.webkit.org/show_bug.cgi?id=41305 104348 104349 Since harfbuzz does not do mirroring, chromium should iterate each 104350 character in the string and mirror it if needed before passing the 104351 string to harfbuzz for shaping. 104352 104353 Test: fast/text/international/bidi-mirror-he-ar.html 104354 104355 * platform/graphics/chromium/FontLinux.cpp: 104356 (WebCore::TextRunWalker::TextRunWalker): 104357 (WebCore::TextRunWalker::~TextRunWalker): 104358 104359 2010-07-08 Nikolas Zimmermann <nzimmermann (a] rim.com> 104360 104361 Reviewed by Rob Buis & Dirk Schulze. 104362 104363 SVG text transformed incorrectly when a transform and gradient applied 104364 https://bugs.webkit.org/show_bug.cgi?id=41563 104365 104366 When rendering filled/stroked text with a gradient, RenderSVGResourceGradient creates a mask image, 104367 renders the text into the image, and then clips the current context against that image buffer, 104368 and filling a rect afterwards. This happened in the wrong coordinate space so far. Don't actually 104369 try to compute the right transformation matrix (which failed), but extract it directly from the 104370 GraphicsContext and apply this transformation to the mask image context. 104371 104372 Fixes pixellation in svg/batik/text/textEffect3.svg and makes the new test svg/custom/text-rotated-gradient.svg pass. 104373 Only affects CoreGraphics platforms. 104374 104375 Test: svg/custom/text-rotated-gradient.svg 104376 104377 * rendering/RenderSVGResourceGradient.cpp: 104378 (WebCore::absoluteTransformFromContext): 104379 (WebCore::createMaskAndSwapContextForTextGradient): 104380 (WebCore::clipToTextMask): 104381 104382 2010-07-07 Alexander Pavlov <apavlov (a] chromium.org> 104383 104384 Reviewed by Darin Fisher. 104385 104386 [Chromium] Crash when re-entering message loop 104387 https://bugs.webkit.org/show_bug.cgi?id=41697 104388 104389 A Chromium-specific test case will be submitted into Chromium shortly. 104390 104391 * page/PageGroupLoadDeferrer.cpp: 104392 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): 104393 * page/PageGroupLoadDeferrer.h: 104394 (WebCore::PageGroupLoadDeferrer::nextDeferrer): 104395 104396 2010-07-07 Yury Semikhatsky <yurys (a] chromium.org> 104397 104398 Reviewed by Pavel Feldman. 104399 104400 Web Inspector: skip breakpoints when script is already paused 104401 https://bugs.webkit.org/show_bug.cgi?id=41768 104402 104403 Test: inspector/debugger-no-nested-pause.html 104404 104405 * bindings/v8/ScriptDebugServer.cpp: 104406 (WebCore::ScriptDebugServer::handleV8DebugEvent): 104407 104408 2010-07-08 Eric Seidel <eric (a] webkit.org> 104409 104410 Reviewed by Adam Barth. 104411 104412 WebCore/benchmarks/parser/html-parser.html spends a lot of time in deprecatedParseURL 104413 https://bugs.webkit.org/show_bug.cgi?id=41807 104414 104415 Wow. This was an awful bug. We were always taking the slow case 104416 every time we parsed a URL. This is about a 10% speedup on our 104417 parsing benchmark, and might cause as much as a 1% speedup for Apple's 104418 PLT (even though I can't run that). 104419 104420 We still spend a lot of time in deprecatedParseURL. We might consider 104421 inlining it if its being kept around much longer. 104422 104423 No behavioral change, just fixing a broken optimization. 104424 104425 * css/CSSHelper.cpp: 104426 (WebCore::deprecatedParseURL): 104427 - We only need to strip characters <= '\r', not >. 104428 104429 2010-07-08 Yury Semikhatsky <yurys (a] chromium.org> 104430 104431 Reviewed by Pavel Feldman. 104432 104433 Web Inspector: factor out common part of debugger tests 104434 https://bugs.webkit.org/show_bug.cgi?id=41836 104435 104436 * bindings/js/ScriptDebugServer.cpp: 104437 (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty. 104438 104439 2010-07-08 Patrick Gansterer <paroga (a] paroga.com> 104440 104441 Reviewed by Kent Tamura. 104442 104443 Buildfix for !ENABLE(SVG_ANIMATION) after r51567. 104444 https://bugs.webkit.org/show_bug.cgi?id=41803 104445 104446 * svg/SVGDocumentExtensions.cpp: 104447 (WebCore::SVGDocumentExtensions::sampleAnimationAtTime): 104448 104449 2010-07-07 Pavel Podivilov <podivilov (a] chromium.org> 104450 104451 Reviewed by Nate Chapin. 104452 104453 [V8] Fix document wrapper memory leak in bindings. 104454 https://bugs.webkit.org/show_bug.cgi?id=41771 104455 104456 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 104457 (WebCore::V8HTMLDocument::WrapInShadowObject): Do not create static persistent handle 104458 to shadowConstructor because it keeps the first context alive forever. 104459 104460 2010-07-07 Andreas Kling <andreas.kling (a] nokia.com> 104461 104462 Reviewed by Tor Arne Vestb. 104463 104464 [Qt] Enable smooth pixmap transforms by default 104465 https://bugs.webkit.org/show_bug.cgi?id=41774 104466 104467 * platform/graphics/qt/GraphicsContextQt.cpp: 104468 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 104469 (WebCore::GraphicsContext::setImageInterpolationQuality): 104470 104471 2010-07-07 Jesus Sanchez-Palencia <jesus (a] webkit.org> 104472 104473 Reviewed by Antti Koivisto. 104474 104475 [Qt] Missing include to build QtWebKit with WebKit2 in MediaPlayerPrivatePhonon.cpp 104476 https://bugs.webkit.org/show_bug.cgi?id=41767 104477 104478 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Add Logging.h include 104479 104480 2010-07-07 Pavel Podivilov <podivilov (a] chromium.org> 104481 104482 Reviewed by Yury Semikhatsky. 104483 104484 Web Inspector: Move v8-related script offset conversion to DebuggerScript.js 104485 https://bugs.webkit.org/show_bug.cgi?id=41755 104486 104487 * bindings/v8/ScriptDebugServer.cpp: 104488 (WebCore::ScriptDebugServer::dispatchDidParseSource): 104489 104490 2010-07-07 Nicolas Weber <thakis (a] chromium.org> 104491 104492 Reviewed by Dimitri Glazkov. 104493 https://bugs.webkit.org/show_bug.cgi?id=41580 104494 104495 Fix rendering of radial gradients in skia if both points of the 104496 gradient are the same and r0 > 0. 104497 104498 Test: fast/gradients/radial-centered.html 104499 104500 * platform/graphics/skia/GradientSkia.cpp: 104501 (WebCore::Gradient::platformGradient): 104502 104503 2010-06-18 MORITA Hajime <morrita (a] google.com> 104504 104505 Reviewed by Ojan Vafai. 104506 104507 https://bugs.webkit.org/show_bug.cgi?id=26526 104508 Add support for input events (oninput) to contentEditable elements 104509 104510 Made a default event handler on the Node to dispatch an input event when 104511 webkitEditableContentChanged arrived. 104512 104513 Test: fast/events/event-input-contentEditable.html 104514 104515 * dom/Node.cpp: 104516 (WebCore::Node::defaultEventHandler): 104517 104518 2010-07-07 Darin Adler <darin (a] apple.com> 104519 104520 Reviewed by Anders Carlsson. 104521 104522 Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects 104523 https://bugs.webkit.org/show_bug.cgi?id=41823 104524 104525 * platform/network/android/ResourceHandleAndroid.cpp: 104526 (WebCore::ResourceHandle::loadResourceSynchronously): Use adoptRef and new instead 104527 of allocating an object on the stack. 104528 * platform/network/curl/ResourceHandleCurl.cpp: 104529 (WebCore::ResourceHandle::loadResourceSynchronously): Ditto. 104530 * platform/network/qt/ResourceHandleQt.cpp: 104531 (WebCore::ResourceHandle::loadResourceSynchronously): Ditto. 104532 104533 * platform/network/soup/ResourceHandleSoup.cpp: 104534 (WebCore::ResourceHandle::loadResourceSynchronously): Use create instead of 104535 allocating an object on the stack. 104536 104537 2010-07-07 Joseph Pecoraro <joepeck (a] webkit.org> 104538 104539 Rubber-stamped by Pavel Feldman. 104540 104541 Web Inspector: All RefPtr arguments and return values should be changed to PassRefPtr according to common practice. 104542 https://bugs.webkit.org/show_bug.cgi?id=41759 104543 104544 * inspector/CodeGeneratorInspector.pm: 104545 104546 2010-07-07 Chris Fleizach <cfleizach (a] apple.com> 104547 104548 Reviewed by Darin Adler. 104549 104550 AX: TextArea should return AXSelectedTextRange of 0,0 if the cursor is not in the text area 104551 https://bugs.webkit.org/show_bug.cgi?id=41810 104552 104553 Test: platform/mac/accessibility/selected-text-range-for-empty-textarea.html 104554 104555 * accessibility/mac/AccessibilityObjectWrapper.mm: 104556 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 104557 104558 2010-07-07 Chris Fleizach <cfleizach (a] apple.com> 104559 104560 Reviewed by Beth Dakin. 104561 104562 AX: Data table heuristics: assume data table if at least one row or column of TH cells exist 104563 https://bugs.webkit.org/show_bug.cgi?id=41806 104564 104565 Test: platform/mac/accessibility/table-with-row-col-of-headers.html 104566 104567 * accessibility/AccessibilityTable.cpp: 104568 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): 104569 104570 2010-07-07 Mark Rowe <mrowe (a] apple.com> 104571 104572 Fix the build. 104573 104574 Xcode decided to change the reference type from "Relative to Build Product" to "Relative to Group" 104575 when I moved the file between folders. That's incredibly confusing so I'll file a bug against Xcode. 104576 104577 * WebCore.xcodeproj/project.pbxproj: 104578 104579 2010-07-07 Mark Rowe <mrowe (a] apple.com> 104580 104581 Fix the MathML build. 104582 104583 * html/HTMLTreeBuilder.cpp: 104584 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Fix a typo in a variable name. 104585 104586 2010-07-07 James Hawkins <jhawkins (a] chromium.org> 104587 104588 Reviewed by Dimitri Glazkov. 104589 104590 Move setSuggestedValue() and suggestedValue() back to public as it's 104591 now used by WebInputElement. 104592 https://bugs.webkit.org/show_bug.cgi?id=41785 104593 104594 No new tests, as the method is only being used by Chromium's WebKit 104595 API. 104596 104597 * html/HTMLInputElement.h: 104598 104599 2010-07-07 Mark Rowe <mrowe (a] apple.com> 104600 104601 Rubber-stamped by Sam Weinig. 104602 104603 Clean up the project file slightly. 104604 104605 Remove obsolete .exp files, add the new .exp.in file, and move ExportFileGenerator.cpp in to the Exports collection. 104606 104607 * WebCore.xcodeproj/project.pbxproj: 104608 104609 2010-07-07 James Robinson <jamesr (a] chromium.org> and Vincent Scheib <schieb (a] chromium.org> 104610 104611 Reviewed by Dimitri Glazkov. 104612 104613 WebCore::GLES2Context should allow creating onscreen and offscreen contexts 104614 https://bugs.webkit.org/show_bug.cgi?id=41492 104615 104616 You should be able to create a GLES2Context for rendering both on screen 104617 and off screen (to a texture). Chromium's layer renderer (used for compositing) 104618 does the former. Currently WebGL does the latter by side stepping the 104619 WebCore::GLES2Context API completely. Longer term it should move over to using this. 104620 104621 * platform/chromium/GLES2Context.h: 104622 * platform/graphics/chromium/LayerRendererChromium.cpp: 104623 (WebCore::LayerRendererChromium::initGL): 104624 104625 2010-07-07 Simon Fraser <simon.fraser (a] apple.com> 104626 104627 Reviewed by Dan Bernstein. 104628 104629 Document::ownerElement() should return an HTMLFrameOwnerElement 104630 https://bugs.webkit.org/show_bug.cgi?id=41789 104631 104632 Change return type of RenderLayerCompositor::enclosingIFrameElement() to 104633 HTMLFrameOwnerElement*. No behavioral changes. 104634 104635 * rendering/RenderLayerCompositor.cpp: 104636 (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): 104637 (WebCore::RenderLayerCompositor::enclosingIFrameElement): 104638 * rendering/RenderLayerCompositor.h: 104639 104640 2010-07-07 Adam Barth <abarth (a] webkit.org> 104641 104642 Reviewed by Sam Weinig. 104643 104644 Add reverseFind to Vector and deploy in HTML5 parser 104645 https://bugs.webkit.org/show_bug.cgi?id=41778 104646 104647 This patch moves reverseFind from begin an 104648 HTMLFormattingElementList-specific concept to begin a general Vector 104649 concept. Also, instead of using Entry as the type for operator==, we 104650 now use elements directly. The old code compiled because the Entry 104651 constructor wasn't explicit, which means we were churning refs on every 104652 comparison! 104653 104654 * html/HTMLFormattingElementList.cpp: 104655 (WebCore::HTMLFormattingElementList::find): 104656 (WebCore::HTMLFormattingElementList::bookmarkFor): 104657 (WebCore::HTMLFormattingElementList::insertAt): 104658 (WebCore::HTMLFormattingElementList::remove): 104659 * html/HTMLFormattingElementList.h: 104660 (WebCore::HTMLFormattingElementList::Entry::operator==): 104661 (WebCore::HTMLFormattingElementList::Entry::operator!=): 104662 104663 2010-07-07 Darin Adler <darin (a] apple.com> 104664 104665 Reviewed by Adam Barth. 104666 104667 Turn on adoptRef assertion for RefCounted 104668 https://bugs.webkit.org/show_bug.cgi?id=41547 104669 104670 The WebCore part of this fixes all the assertions I saw in testing. 104671 104672 * html/FileReader.cpp: 104673 (WebCore::FileReader::readAsBinaryString): Added null checks. 104674 Callers from JavaScript can pass the wrong type, which becomes null. 104675 (WebCore::FileReader::readAsText): Ditto. 104676 (WebCore::FileReader::readAsDataURL): Ditto. 104677 104678 * html/FileStreamClient.h: Removed unneeded include. 104679 104680 * html/FileStreamProxy.cpp: 104681 (WebCore::FileStreamProxy::FileStreamProxy): Made inline and moved 104682 some of the code, including the ref, into the create function. 104683 (WebCore::FileStreamProxy::create): Moved some of the code from 104684 the constructor here. It's safe to ref once the object has been 104685 created and adopted. 104686 104687 * html/FileStreamProxy.h: Changed create function to no longer be 104688 inlined. Also removed an unneeded include. 104689 104690 * page/EventSource.cpp: 104691 (WebCore::EventSource::EventSource): Made inline, changed arguments 104692 and moved code that involves the need to ref this object into the 104693 create function. Also moved failure handling out there since it's 104694 cleaner to have a function that fails than a constructor. For 104695 example, the function can return 0. 104696 (WebCore::EventSource::create): Moved some of the code from the 104697 constructor here. 104698 104699 * page/EventSource.h: Removed unneeded includes. Made the 104700 creation function non-inline. Changed the arguments to the constructor. 104701 104702 * storage/StorageAreaSync.cpp: 104703 (WebCore::StorageAreaSync::StorageAreaSync): Made inline. Moved 104704 code that requires ref'ing this object out to the create function. 104705 (WebCore::StorageAreaSync::create): Moved some of the code from the 104706 constructor here. 104707 104708 * storage/StorageAreaSync.h: Removed unneeded includes. Changed 104709 the type of one of the constructor arguments from String to 104710 const String&. 104711 104712 * workers/SharedWorker.cpp: 104713 (WebCore::SharedWorker::SharedWorker): Made inline. Moved most of 104714 the setup code out of here into the create function. 104715 (WebCore::SharedWorker::create): Moved the code here. 104716 104717 * workers/SharedWorker.h: Removed unneeded includes. Made the 104718 create function non-inline. Marked the toSharedWorker override private 104719 to catch people doing an unnecessary virtual function call if they 104720 already have a SharedWorker*. 104721 104722 * workers/Worker.cpp: 104723 (WebCore::Worker::Worker): Made inline. Moved most of the setup code 104724 out of here into the create function. 104725 (WebCore::Worker::create): Moved the code here. 104726 104727 * workers/Worker.h: Made the create function non-inline. Changed 104728 the arguments to the constructor. 104729 104730 2010-07-07 Chris Fleizach <cfleizach (a] apple.com> 104731 104732 Reviewed by Beth Dakin. 104733 104734 AX: when a node's role changes, the AX tree might need to be updated 104735 https://bugs.webkit.org/show_bug.cgi?id=41784 104736 104737 Test: platform/mac/accessibility/update-children-when-aria-role-changes.html 104738 104739 * accessibility/AccessibilityRenderObject.cpp: 104740 (WebCore::AccessibilityRenderObject::AccessibilityRenderObject): 104741 (WebCore::AccessibilityRenderObject::updateAccessibilityRole): 104742 104743 2010-07-07 Chris Fleizach <cfleizach (a] apple.com> 104744 104745 Reviewed by Beth Dakin. 104746 104747 AX: when an element uses role="text" but no aria-label, it should default to textUnderElement() 104748 https://bugs.webkit.org/show_bug.cgi?id=41780 104749 104750 Test: platform/mac/accessibility/static-text-role-uses-text-under-element.html 104751 104752 * accessibility/AccessibilityRenderObject.cpp: 104753 (WebCore::AccessibilityRenderObject::stringValue): 104754 Fallback to textUnderElement() if text() does not return any explicitly set text. 104755 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 104756 Remove erroneous check to ignore text elements that didn't have a explicit text value. 104757 104758 2010-07-07 Simon Fraser <simon.fraser (a] apple.com> 104759 104760 Reviewed by Darin Adler. 104761 104762 Document::ownerElement() should return an HTMLFrameOwnerElement 104763 https://bugs.webkit.org/show_bug.cgi?id=41789 104764 104765 Change the return type of Document::ownerElement() to an HTMLFrameOwnerElement, for better 104766 type checking. No behavioral changes. 104767 104768 * accessibility/mac/AccessibilityObjectWrapper.mm: 104769 * dom/Document.cpp: 104770 (WebCore::Document::ownerElement): 104771 * dom/Document.h: 104772 * editing/SelectionController.cpp: 104773 * rendering/RenderBoxModelObject.cpp: 104774 * rendering/RenderLayer.cpp: 104775 * rendering/RenderView.cpp: 104776 104777 2010-07-07 Simon Fraser <simon.fraser (a] apple.com> 104778 104779 Reviewed by Dan Bernstein. 104780 104781 REGRESSION: GMail becomes blank after closing other tabs 104782 https://bugs.webkit.org/show_bug.cgi?id=40421 104783 104784 RenderLayerCompositor's attach/detachRootPlatformLayer methods use 104785 setNeedsStyleRecalc() in order to trigger acclerated compositing layers 104786 to be hooked together across iframe boundaries. However, it was possible 104787 for these to get called while inside of Document::recalcStyle(), which 104788 is bad because it can cause the recalc to fail to get processed. 104789 104790 Fix this by using the existing queuePostAttachCallback() functionality 104791 to delay the call to setNeedsStyleRecalc() if post-attach callbacks 104792 are suspended (indicating that we're inside recalcStyle()). 104793 104794 No new tests because I wasn't able to make a test that shows the problem. 104795 104796 * dom/ContainerNode.h: Make queuePostAttachCallback() public. 104797 * dom/ContainerNode.cpp: 104798 (WebCore::ContainerNode::postAttachCallbacksAreSuspended): Added; returns 104799 whether s_attachDepth is non-zero. 104800 104801 * rendering/RenderLayerCompositor.cpp: 104802 (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Call scheduleNeedsStyleRecalc() 104803 instead of setNeedsStyleRecalc(). 104804 (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Ditto. 104805 (WebCore::needsStyleRecalcCallback): Here we call setNeedsStyleRecalc(). 104806 (WebCore::RenderLayerCompositor::scheduleNeedsStyleRecalc): 104807 (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): 104808 * rendering/RenderLayerCompositor.h: Add scheduleNeedsStyleRecalc(). 104809 104810 2010-07-06 Simon Fraser <simon.fraser (a] apple.com> 104811 104812 Reviewed by Dan Bernstein. 104813 104814 Incorrect compositing order with negative z-index 104815 https://bugs.webkit.org/show_bug.cgi?id=38959 104816 104817 When painting the contents of compositing layers whose phase is "GraphicsLayerPaintBackground" 104818 (indicating that they are used for the background of elements with negative z-index children), 104819 we need to paint the non-composited negative-z-order descendants at the end of the background phase, so 104820 they appear behind composited negative-z-order descendants. 104821 104822 Test: compositing/z-order/negative-z-index.html 104823 104824 * rendering/RenderLayerBacking.cpp: 104825 (WebCore::RenderLayerBacking::paintIntoLayer): 104826 104827 2010-07-06 Simon Fraser <simon.fraser (a] apple.com> 104828 104829 Reviewed by Dan Bernstein. 104830 104831 Incorrect compositing order with negative z-index 104832 https://bugs.webkit.org/show_bug.cgi?id=38959 104833 104834 Prerequisite: adopt new paintList() method that was added when painting compositing layer contents. 104835 No behavioral changes. 104836 104837 * rendering/RenderLayerBacking.cpp: 104838 (WebCore::RenderLayerBacking::paintIntoLayer): 104839 104840 2010-07-07 Adam Barth <abarth (a] webkit.org> 104841 104842 Unreviewed. 104843 104844 Fix ASSERT in Eric's previous patch. I think he tested his patch in 104845 Release and not Debug. 104846 104847 * html/HTMLFormattingElementList.h: 104848 (WebCore::HTMLFormattingElementList::Entry::Entry): 104849 (WebCore::HTMLFormattingElementList::findIndex): 104850 104851 2010-07-07 Eric Seidel <eric (a] webkit.org> 104852 104853 Reviewed by Adam Barth. 104854 104855 Grease the TreeBuilder's lightning 104856 https://bugs.webkit.org/show_bug.cgi?id=41756 104857 104858 Brings the new TreeBuilder from 7s to 3s on the parser benchmark. 104859 This makes performance comparable to the old parser. 104860 104861 We have not begun to fight! There is so much fat left on these bones. 104862 104863 * html/HTMLFormattingElementList.cpp: 104864 (WebCore::HTMLFormattingElementList::find): 104865 (WebCore::HTMLFormattingElementList::bookmarkFor): 104866 (WebCore::HTMLFormattingElementList::insertAt): 104867 (WebCore::HTMLFormattingElementList::remove): 104868 * html/HTMLFormattingElementList.h: 104869 (WebCore::HTMLFormattingElementList::findIndex): 104870 104871 2010-07-07 Eric Seidel <eric (a] webkit.org> 104872 104873 Reviewed by Adam Barth. 104874 104875 HTMLTreeBuilder is way too slow 104876 https://bugs.webkit.org/show_bug.cgi?id=41754 104877 104878 This takes us from 14s to 7s on our parsing benchmark. 104879 That's still much slower than the old tree builder, but there 104880 is a huge amount of fat left to trim. 104881 104882 Vector<T> wasn't able to inline all the Entry functions when 104883 they were buried in the cpp. Turns out the active formatting elements 104884 list is very hot. 104885 104886 I'm not sure Vector<T> is going to be the right data structure for us 104887 in the end, but it has done alright for bring-up. 104888 104889 * html/HTMLFormattingElementList.cpp: 104890 * html/HTMLFormattingElementList.h: 104891 (WebCore::HTMLFormattingElementList::Entry::Entry): 104892 (WebCore::HTMLFormattingElementList::Entry::~Entry): 104893 (WebCore::HTMLFormattingElementList::Entry::isMarker): 104894 (WebCore::HTMLFormattingElementList::Entry::element): 104895 (WebCore::HTMLFormattingElementList::Entry::replaceElement): 104896 (WebCore::HTMLFormattingElementList::Entry::operator==): 104897 (WebCore::HTMLFormattingElementList::Entry::operator!=): 104898 104899 2010-07-06 Darin Adler <darin (a] apple.com> 104900 104901 Reviewed by Adam Barth. 104902 104903 More OwnPtr work, including making clear set the pointer to 0 before deletion 104904 https://bugs.webkit.org/show_bug.cgi?id=41727 104905 104906 * WebCore.exp.in: Updated. 104907 104908 * css/CSSSelector.h: 104909 (WebCore::CSSSelector::RareData::RareData): Use adoptPtr. 104910 (WebCore::CSSSelector::createRareData): Ditto. 104911 * dom/SpaceSplitString.h: 104912 (WebCore::SpaceSplitString::SpaceSplitString): Ditto. 104913 (WebCore::SpaceSplitString::set): Ditto. 104914 * history/CachedFrame.cpp: 104915 (WebCore::CachedFrame::CachedFrame): Ditto. 104916 (WebCore::CachedFrame::setCachedFramePlatformData): Ditto. 104917 104918 * history/CachedFrame.h: Use PassOwnPtr. 104919 104920 * loader/appcache/ApplicationCacheGroup.cpp: 104921 (WebCore::CallCacheListenerTask::create): Use adoptPtr. 104922 * loader/appcache/ApplicationCacheStorage.cpp: 104923 (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto. 104924 * platform/PurgeableBuffer.h: 104925 (WebCore::PurgeableBuffer::create): Ditto. 104926 * platform/graphics/GlyphMetricsMap.h: 104927 (WebCore::::locatePageSlowCase): Ditto. 104928 * platform/graphics/GraphicsLayer.h: 104929 (WebCore::AnimationValue::AnimationValue): Ditto. 104930 (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto. 104931 * platform/graphics/MediaPlayer.h: 104932 (WebCore::MediaPlayer::create): Ditto. 104933 * platform/graphics/SimpleFontData.h: 104934 (WebCore::SimpleFontData::boundsForGlyph): Ditto. 104935 * platform/mac/PurgeableBufferMac.cpp: 104936 (WebCore::PurgeableBuffer::create): Ditto. 104937 * rendering/InlineFlowBox.h: 104938 (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto. 104939 (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto. 104940 * rendering/RootInlineBox.h: 104941 (WebCore::RootInlineBox::floats): Ditto. 104942 * rendering/style/RenderStyle.h: 104943 (WebCore::InheritedFlags::inheritAnimations): Ditto. 104944 (WebCore::InheritedFlags::inheritTransitions): Ditto. 104945 104946 * rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr. 104947 104948 2010-07-07 Sam Weinig <sam (a] webkit.org> 104949 104950 Reviewed by Anders Carlsson. 104951 104952 Patch for https://bugs.webkit.org/show_bug.cgi?id=41772 104953 Add basic piping for BackForwardControllerClient. 104954 104955 * WebCore.exp.in: 104956 * WebCore.xcodeproj/project.pbxproj: 104957 * history/BackForwardController.cpp: 104958 (WebCore::BackForwardController::BackForwardController): 104959 * history/BackForwardControllerClient.h: 104960 * page/Page.cpp: 104961 (WebCore::Page::Page): 104962 * page/Page.h: 104963 * svg/graphics/SVGImage.cpp: 104964 (WebCore::SVGImage::dataChanged): 104965 104966 2010-07-07 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 104967 104968 Unreviewed build fix after r62577. 104969 104970 [EFL] build fix after r62577 104971 https://bugs.webkit.org/show_bug.cgi?id=41764 104972 104973 No new functionality so no new tests. 104974 104975 2010-07-07 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 104976 104977 Reviewed by Xan Lopez. 104978 104979 [GTK] Scrollbars sometimes go dead and stop scrolling the view 104980 https://bugs.webkit.org/show_bug.cgi?id=41711 104981 104982 Rework the setGtkAdjustment function slightly, make it have an 104983 early return, and be more readable. 104984 104985 * platform/gtk/ScrollViewGtk.cpp: 104986 (WebCore::ScrollView::setGtkAdjustments): 104987 104988 2010-07-07 Kristian Monsen <kristianm (a] google.com> 104989 104990 Reviewed by Steve Block. 104991 104992 Updating Android to use the UserGestureIndicator class instead of Android specific code. 104993 The rest of the changes are in parts of the Android port which are yet to be upstreamed. 104994 104995 No change in behavior, so no new test. 104996 104997 * platform/network/android/ResourceRequest.h: 104998 (WebCore::ResourceRequest::ResourceRequest): 104999 (WebCore::ResourceRequest::doUpdateResourceRequest): 105000 105001 2010-07-07 Andy Estes <aestes (a] apple.com> 105002 105003 Reviewed by Adam Barth. 105004 105005 Allow a beforeload listener to prevent loading of images in <object> tags. 105006 https://bugs.webkit.org/show_bug.cgi?id=41027 105007 <rdar://problem/8120596> 105008 105009 Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html 105010 fast/dom/beforeload/image-object-before-load.html 105011 105012 * html/HTMLObjectElement.cpp: 105013 (WebCore::HTMLObjectElement::attach): Do not call 105014 RenderImage::setCachedImage() at the end of attach(). Instead, allow 105015 this to happen conditionally after beforeload is dispatched. 105016 * loader/ImageLoader.cpp: 105017 (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback 105018 content if an object's load was cancelled. 105019 105020 2010-07-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 105021 105022 Reviewed by Dirk Schulze. 105023 105024 <use> on <font-face> causes crashes, if SVGUseElement gets detached 105025 https://bugs.webkit.org/show_bug.cgi?id=41621 105026 105027 Do not call removeFromMappedElementSheet() from the SVGFontFaceElement destructor, 105028 as that can potentially cause the element to be reattached while destructing. 105029 105030 In order to fix the crash in the testcase, the order of calling the base-class detach 105031 method in SVGUseElement and the instance/shadow tree destruction has to be reversed, 105032 matching the order in removedFromDocument(). 105033 105034 Test: svg/custom/use-font-face-crash.svg 105035 105036 * svg/SVGFontFaceElement.cpp: 105037 (WebCore::SVGFontFaceElement::~SVGFontFaceElement): Remove removeFromMappedElementSheet() call. 105038 * svg/SVGUseElement.cpp: 105039 (WebCore::SVGUseElement::detach): Reverse order of calling base-class detach method and instance/shadow tree destruction. 105040 105041 2010-07-07 Steve Block <steveblock (a] google.com> 105042 105043 Reviewed by Adam Barth. 105044 105045 document.createEvent() should support DeviceOrientationEvent 105046 https://bugs.webkit.org/show_bug.cgi?id=41618 105047 105048 Tests: fast/dom/DeviceOrientation/create-event.html 105049 105050 * dom/Document.cpp: 105051 (WebCore::Document::createEvent): 105052 105053 2010-07-07 Yury Semikhatsky <yurys (a] chromium.org> 105054 105055 Reviewed by Pavel Feldman. 105056 105057 Web Inspector: show functions from internal browser scripts on the call stack if they 105058 are there. 105059 https://bugs.webkit.org/show_bug.cgi?id=41762 105060 105061 * English.lproj/localizedStrings.js: 105062 * inspector/front-end/CallStackSidebarPane.js: 105063 (WebInspector.CallStackSidebarPane.prototype.update): 105064 105065 2010-07-07 Ilya Tikhonovsky <loislo (a] chromium.org> 105066 105067 Reviewed by Pavel Feldman. 105068 105069 Web Inspector: All RefPtr arguments and return values should be 105070 changed to PassRefPtr whenever it is possible according to common practice. 105071 https://bugs.webkit.org/show_bug.cgi?id=41759 105072 105073 * inspector/CodeGeneratorInspector.pm: 105074 * inspector/InspectorTimelineAgent.cpp: 105075 (WebCore::InspectorTimelineAgent::pushGCEventRecords): 105076 (WebCore::InspectorTimelineAgent::didInstallTimer): 105077 (WebCore::InspectorTimelineAgent::didRemoveTimer): 105078 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): 105079 (WebCore::InspectorTimelineAgent::willSendResourceRequest): 105080 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 105081 (WebCore::InspectorTimelineAgent::didMarkTimeline): 105082 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): 105083 (WebCore::InspectorTimelineAgent::didMarkLoadEvent): 105084 (WebCore::InspectorTimelineAgent::addRecordToTimeline): 105085 (WebCore::InspectorTimelineAgent::setHeapSizeStatistic): 105086 (WebCore::InspectorTimelineAgent::pushCurrentRecord): 105087 * inspector/InspectorTimelineAgent.h: 105088 (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry): 105089 * inspector/TimelineRecordFactory.cpp: 105090 (WebCore::TimelineRecordFactory::createGenericRecord): 105091 (WebCore::TimelineRecordFactory::createGCEventData): 105092 (WebCore::TimelineRecordFactory::createFunctionCallData): 105093 (WebCore::TimelineRecordFactory::createEventDispatchData): 105094 (WebCore::TimelineRecordFactory::createGenericTimerData): 105095 (WebCore::TimelineRecordFactory::createTimerInstallData): 105096 (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData): 105097 (WebCore::TimelineRecordFactory::createXHRLoadData): 105098 (WebCore::TimelineRecordFactory::createEvaluateScriptData): 105099 (WebCore::TimelineRecordFactory::createMarkTimelineData): 105100 (WebCore::TimelineRecordFactory::createScheduleResourceRequestData): 105101 (WebCore::TimelineRecordFactory::createResourceSendRequestData): 105102 (WebCore::TimelineRecordFactory::createResourceReceiveResponseData): 105103 (WebCore::TimelineRecordFactory::createResourceFinishData): 105104 (WebCore::TimelineRecordFactory::createReceiveResourceData): 105105 (WebCore::TimelineRecordFactory::createPaintData): 105106 (WebCore::TimelineRecordFactory::createParseHTMLData): 105107 * inspector/TimelineRecordFactory.h: 105108 105109 2010-07-07 Antti Koivisto <koivisto (a] iki.fi> 105110 105111 Reviewed by Kenneth Rohde Christiansen. 105112 105113 [Qt] Initial WebKit2 implementation 105114 https://bugs.webkit.org/show_bug.cgi?id=40233 105115 105116 Export some event conversion functions needed for WebKit2. 105117 105118 * platform/PlatformKeyboardEvent.h: 105119 * platform/qt/PlatformKeyboardEventQt.cpp: 105120 (WebCore::keyIdentifierForQtKeyCode): 105121 (WebCore::windowsKeyCodeForKeyEvent): 105122 105123 2010-07-06 Steve Block <steveblock (a] google.com> 105124 105125 Reviewed by Adam Barth. 105126 105127 DeviceOrientationEventConstructor should be exposed at window.DeviceOrientationEvent 105128 https://bugs.webkit.org/show_bug.cgi?id=41685 105129 105130 Test: fast/dom/Window/window-properties-device-orientation.html 105131 fast/dom/DeviceOrientation/window-property.txt 105132 105133 * page/DOMWindow.idl: 105134 105135 2010-07-07 Sheriff Bot <webkit.review.bot (a] gmail.com> 105136 105137 Unreviewed, rolling out r62645. 105138 http://trac.webkit.org/changeset/62645 105139 https://bugs.webkit.org/show_bug.cgi?id=41757 105140 105141 "Broken inspector tests on several platforms" (Requested by 105142 eseidel on #webkit). 105143 105144 * inspector/front-end/ScriptView.js: 105145 (WebInspector.ScriptView.prototype._addBreakpoint): 105146 * inspector/front-end/ScriptsPanel.js: 105147 (WebInspector.ScriptsPanel): 105148 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): 105149 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 105150 (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine): 105151 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 105152 (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked): 105153 * inspector/front-end/SourceView.js: 105154 (WebInspector.SourceView.prototype._addBreakpoint): 105155 105156 2010-07-07 Steve Block <steveblock (a] google.com> 105157 105158 Reviewed by Adam Barth. 105159 105160 JavaInstanceV8 needs to push a local reference frame to avoid table overflow. 105161 https://bugs.webkit.org/show_bug.cgi?id=41516 105162 105163 This change is required to help prevent the Java virtual machine from 105164 running out of local references. The Java virtual machine supports only 105165 a limited number of local references. Normally, local references are 105166 cleared when the native method returns. 105167 105168 This change adds calls to PushLocalFrame() and PopLocalFrame() around 105169 each invocation of a method on JavaInstance. These calls instruct the 105170 virtual machine to clear local references when the frame is popped. 105171 This means that in the case where many calls to JavaInstance methods 105172 are made within the same native call, local references are cleared as 105173 soon as they are no longer needed, thus conserving references. 105174 105175 This change mirrors exactly JavaInstanceJSC. 105176 105177 No new tests. 105178 105179 * bridge/jni/v8/JavaInstanceV8.cpp: 105180 (JavaInstance::virtualBegin): 105181 (JavaInstance::virtualEnd): 105182 * bridge/jni/v8/JavaInstanceV8.h: 105183 105184 2010-07-06 Yury Semikhatsky <yurys (a] chromium.org> 105185 105186 Reviewed by Pavel Feldman. 105187 105188 Inspector should remember the size of sidebars set by the user 105189 https://bugs.webkit.org/show_bug.cgi?id=19207 105190 105191 * inspector/front-end/AbstractTimelinePanel.js: 105192 (WebInspector.AbstractTimelinePanel): 105193 * inspector/front-end/AuditsPanel.js: 105194 (WebInspector.AuditsPanel): 105195 * inspector/front-end/ConsolePanel.js: 105196 (WebInspector.ConsolePanel): 105197 * inspector/front-end/ElementsPanel.js: 105198 (WebInspector.ElementsPanel.prototype.rightSidebarResizerDragEnd): 105199 * inspector/front-end/Panel.js: 105200 (WebInspector.Panel): 105201 (WebInspector.Panel.prototype.get toolbarItemClass): 105202 (WebInspector.Panel.prototype.show): 105203 (WebInspector.Panel.prototype.createSidebar): 105204 (WebInspector.Panel.prototype.get _sidebarWidthSettingName): 105205 (WebInspector.Panel.prototype._endSidebarDragging): 105206 (WebInspector.Panel.prototype.updateSidebarWidth): 105207 (WebInspector.Panel.prototype.restoreSidebarWidth): 105208 (WebInspector.Panel.prototype.saveSidebarWidth): 105209 * inspector/front-end/ProfilesPanel.js: 105210 (WebInspector.ProfilesPanel): 105211 * inspector/front-end/ResourcesPanel.js: 105212 (WebInspector.ResourcesPanel): 105213 (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled): 105214 * inspector/front-end/ScriptsPanel.js: 105215 (WebInspector.ScriptsPanel): 105216 (WebInspector.ScriptsPanel.prototype._endSidebarResizeDrag): 105217 (WebInspector.ScriptsPanel.prototype._sidebarResizeDrag): 105218 (WebInspector.ScriptsPanel.prototype.setSidebarWidth): 105219 * inspector/front-end/Settings.js: 105220 (WebInspector.populateApplicationSettings): 105221 * inspector/front-end/StoragePanel.js: 105222 (WebInspector.StoragePanel): 105223 * inspector/front-end/TimelinePanel.js: 105224 (WebInspector.TimelinePanel): 105225 105226 2010-07-05 Steve Block <steveblock (a] google.com> 105227 105228 Reviewed by Adam Barth. 105229 105230 DeviceOrientation should be renamed to DeviceOrientationController 105231 https://bugs.webkit.org/show_bug.cgi?id=41608 105232 105233 No new tests, renaming only. 105234 105235 * Android.mk: 105236 * CMakeLists.txt: 105237 * GNUmakefile.am: 105238 * WebCore.gypi: 105239 * WebCore.pro: 105240 * WebCore.vcproj/WebCore.vcproj: 105241 * WebCore.xcodeproj/project.pbxproj: 105242 * dom/DeviceOrientation.cpp: Removed. 105243 * dom/DeviceOrientation.h: Removed. 105244 * dom/DeviceOrientationController.cpp: Copied from WebCore/dom/DeviceOrientation.cpp. 105245 (WebCore::DeviceOrientationController::DeviceOrientationController): 105246 (WebCore::DeviceOrientationController::onDeviceOrientationChange): 105247 * dom/DeviceOrientationController.h: Copied from WebCore/dom/DeviceOrientation.h. 105248 * page/Page.cpp: 105249 (WebCore::Page::Page): 105250 * page/Page.h: 105251 (WebCore::Page::deviceOrientationController): 105252 105253 2010-07-07 Pavel Podivilov <podivilov (a] chromium.org> 105254 105255 Reviewed by Yury Semikhatsky. 105256 105257 Web Inspector: do not activate all breakpoints on page reload 105258 https://bugs.webkit.org/show_bug.cgi?id=41461 105259 105260 Test: inspector/debugger-breakpoints-not-activated-on-reload.html 105261 105262 * inspector/front-end/ScriptView.js: 105263 (WebInspector.ScriptView.prototype._addBreakpoint): 105264 * inspector/front-end/ScriptsPanel.js: 105265 (WebInspector.ScriptsPanel): 105266 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 105267 (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked): 105268 * inspector/front-end/SourceView.js: 105269 (WebInspector.SourceView.prototype._addBreakpoint): 105270 105271 2010-07-07 Nikolas Zimmermann <nzimmermann (a] rim.com> 105272 105273 Not reviewed. Rollout r62633 - test crashes after some last-minute modifications. 105274 105275 * svg/SVGFontFaceElement.cpp: 105276 (WebCore::SVGFontFaceElement::~SVGFontFaceElement): 105277 105278 2010-07-07 Eric Seidel <eric (a] webkit.org> 105279 105280 Reviewed by Adam Barth. 105281 105282 Fix </html> handling in before head mode 105283 https://bugs.webkit.org/show_bug.cgi?id=41752 105284 105285 Covered by html5lib/runner.html. 105286 105287 * html/HTMLTreeBuilder.cpp: 105288 (WebCore::HTMLTreeBuilder::processEndTag): 105289 105290 2010-07-07 Eric Seidel <eric (a] webkit.org> 105291 105292 Reviewed by Adam Barth. 105293 105294 </div> pops too many <div> elements in body 105295 https://bugs.webkit.org/show_bug.cgi?id=41751 105296 105297 Another missing return! 105298 105299 While tracking this down I added some debugging code to both the 105300 open elements stack and the active formatting elements list. 105301 105302 I also unwrapped a very long || chain to make it more readable. 105303 105304 * html/HTMLElementStack.cpp: 105305 (WebCore::HTMLElementStack::show): 105306 * html/HTMLElementStack.h: 105307 * html/HTMLFormattingElementList.cpp: 105308 (WebCore::HTMLFormattingElementList::show): 105309 * html/HTMLFormattingElementList.h: 105310 * html/HTMLTreeBuilder.cpp: 105311 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 105312 105313 2010-07-06 Eric Seidel <eric (a] webkit.org> 105314 105315 Reviewed by Adam Barth. 105316 105317 HTMLTreeBuilder needs to handle <table><input> 105318 https://bugs.webkit.org/show_bug.cgi?id=41744 105319 105320 * html/HTMLTreeBuilder.cpp: 105321 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 105322 105323 2010-07-06 Eric Seidel <eric (a] webkit.org> 105324 105325 Reviewed by Adam Barth. 105326 105327 Teach HTMLTreeBuilder how to handle <button><button> 105328 https://bugs.webkit.org/show_bug.cgi?id=41743 105329 105330 * html/HTMLTreeBuilder.cpp: 105331 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105332 105333 2010-07-06 Eric Seidel <eric (a] webkit.org> 105334 105335 Reviewed by Adam Barth. 105336 105337 Teach TreeBuilder how to handle <form><form> 105338 https://bugs.webkit.org/show_bug.cgi?id=41741 105339 105340 * html/HTMLTreeBuilder.cpp: 105341 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105342 105343 2010-07-06 Eric Seidel <eric (a] webkit.org> 105344 105345 Reviewed by Adam Barth. 105346 105347 <table> should auto-close <p> when not in quirks mode 105348 https://bugs.webkit.org/show_bug.cgi?id=41740 105349 105350 This is already covered by multiple tests in html5lib/runner.html 105351 105352 * html/HTMLTreeBuilder.cpp: 105353 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105354 105355 2010-07-06 Eric Seidel <eric (a] webkit.org> 105356 105357 Reviewed by Adam Barth. 105358 105359 Make "in body" character handling reconstruct active formatting elements 105360 https://bugs.webkit.org/show_bug.cgi?id=41739 105361 105362 This fixes a bunch of tests, and due to some other bug in our 105363 formatting code, regresses two. I'll fix that bug in a separate 105364 patch. 105365 105366 * html/HTMLTreeBuilder.cpp: 105367 (WebCore::HTMLTreeBuilder::processCharacter): 105368 105369 2010-07-06 Nikolas Zimmermann <nzimmermann (a] rim.com> 105370 105371 Reviewed by Darin Adler. 105372 105373 <use> on <font-face> causes crashes, if SVGUseElement gets detached 105374 https://bugs.webkit.org/show_bug.cgi?id=41621 105375 105376 Do not call removeFromMappedElementSheet() from the destructor, as the call to document()->updateStyleSelector() that can potentially 105377 cause the element to be reattached while destructing. It's not needed at all, because removedFromDocument() is called before destruction, 105378 which already calls removeFromMappedElementSheet() - at this point it's still safe to update the style selector. 105379 105380 The crash is reproducable when using <use> on <font-face>. 105381 105382 Test: svg/custom/use-font-face-crash.svg 105383 105384 * svg/SVGFontFaceElement.cpp: 105385 (WebCore::SVGFontFaceElement::~SVGFontFaceElement): 105386 105387 2010-07-07 Hayato Ito <hayato (a] chromium.org> 105388 105389 Reviewed by Darin Adler. 105390 105391 Rolling out 'page-break-inside:avoid' part of the r54929. 105392 Rebased the related layout tests, which are now expected to fail, as well. 105393 105394 https://bugs.webkit.org/show_bug.cgi?id=41532 105395 105396 * rendering/RenderBlock.cpp: 105397 (WebCore::RenderBlock::paintChildren): 105398 105399 2010-07-07 Mark Rowe <mrowe (a] apple.com> 105400 105401 Fix failures in a handful of Java-related tests. 105402 105403 * WebCore.exp.in: Remove an extraneous ENABLE_ from an #if so that the condition 105404 evalutes to true when we expect it to. 105405 105406 2010-07-06 Pavel Feldman <pfeldman (a] chromium.org> 105407 105408 Reviewed by Joseph Pecoraro. 105409 105410 Web Inspector: provide line numbers for inline styles. 105411 105412 https://bugs.webkit.org/show_bug.cgi?id=41691 105413 105414 Test: inspector/styles-source-lines-inline.html 105415 105416 * css/CSSParser.cpp: 105417 (WebCore::CSSParser::parseSheet): 105418 * css/CSSParser.h: 105419 * css/CSSStyleSheet.cpp: 105420 (WebCore::CSSStyleSheet::parseString): 105421 (WebCore::CSSStyleSheet::parseStringAtLine): 105422 * css/CSSStyleSheet.h: 105423 * dom/StyleElement.cpp: 105424 (WebCore::StyleElement::process): 105425 (WebCore::StyleElement::createSheet): 105426 * dom/StyleElement.h: 105427 * html/HTMLStyleElement.cpp: 105428 (WebCore::HTMLStyleElement::HTMLStyleElement): 105429 (WebCore::HTMLStyleElement::finishParsingChildren): 105430 * html/HTMLStyleElement.h: 105431 * inspector/InspectorCSSStore.cpp: 105432 (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet): 105433 * inspector/InspectorDOMAgent.cpp: 105434 (WebCore::InspectorDOMAgent::buildObjectForRule): 105435 * inspector/front-end/DOMAgent.js: 105436 (WebInspector.CSSStyleDeclaration.parseRule): 105437 * inspector/front-end/StylesSidebarPane.js: 105438 (WebInspector.StylePropertiesSection.else.linkifyUncopyable): 105439 (WebInspector.StylePropertiesSection): 105440 105441 2010-07-06 Dan Bernstein <mitz (a] apple.com> 105442 105443 Reviewed by Jon Honeycutt. 105444 105445 <rdar://problem/8163651> Wrong value type being supplied for kCTTypesetterOptionForcedEmbeddingLevel key 105446 105447 No change in behavior, so no new test. 105448 105449 * platform/graphics/mac/ComplexTextControllerCoreText.cpp: 105450 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Use CFNumber instances 105451 as the values of the kCTTypesetterOptionForcedEmbeddingLevel key, instead of CFBooleans. 105452 105453 2010-07-06 Mark Rowe <mrowe (a] apple.com> 105454 105455 Fix production builds on Mac OS X. 105456 105457 * DerivedSources.make: Don't try and generate the export file during the installhdrs build phase. 105458 It's not useful until much later in the build process, and it's not possible to generate it until 105459 after the tool has been compiled anyway. 105460 * WebCore.xcodeproj/project.pbxproj: Tweak how the ICU and forwarding headers are copied so that it 105461 works in production builds once more. 105462 105463 2010-07-06 Steve Falkenburg <sfalken (a] apple.com> 105464 105465 Reviewed by Simon Fraser. 105466 105467 Expose URL matching from WebUserContentURLPattern 105468 https://bugs.webkit.org/show_bug.cgi?id=41726 105469 <rdar://problem/7910144> 105470 105471 * WebCore.exp.in: Export UserContentURLPattern::matches for use in WebKit. 105472 105473 2010-07-06 Eric Seidel <eric (a] webkit.org> 105474 105475 Reviewed by Adam Barth. 105476 105477 Fix <nobr><nobr> case in HTMLTreeBuilder 105478 https://bugs.webkit.org/show_bug.cgi?id=41735 105479 105480 We were both not handling <nobr> correctly, as well as 105481 never hitting the <nobr> case because our formatting 105482 elements check was overzealous. 105483 105484 * html/HTMLTreeBuilder.cpp: 105485 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105486 105487 2010-07-06 Adam Barth <abarth (a] webkit.org> 105488 105489 Reviewed by Eric Seidel. 105490 105491 Implement start table tag in table mode 105492 https://bugs.webkit.org/show_bug.cgi?id=41736 105493 105494 * html/HTMLTreeBuilder.cpp: 105495 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 105496 (WebCore::HTMLTreeBuilder::processTableEndTagForInTable): 105497 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 105498 * html/HTMLTreeBuilder.h: 105499 105500 2010-07-06 Adam Barth <abarth (a] webkit.org> 105501 105502 Reviewed by Eric Seidel. 105503 105504 Implement "act as if the banana has been peeled" (for lack of a better term) 105505 https://bugs.webkit.org/show_bug.cgi?id=41734 105506 105507 The spec has a tricky passage that says "whenever a node would be 105508 inserted into the current node, it must instead be foster parented." 105509 This patch attempts to implement that requirement. 105510 105511 * html/HTMLConstructionSite.cpp: 105512 (WebCore::HTMLConstructionSite::attach): 105513 (WebCore::HTMLConstructionSite::HTMLConstructionSite): 105514 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 105515 (WebCore::HTMLConstructionSite::insertHTMLHeadElement): 105516 (WebCore::HTMLConstructionSite::insertHTMLBodyElement): 105517 (WebCore::HTMLConstructionSite::insertScriptElement): 105518 (WebCore::HTMLConstructionSite::fosterParent): 105519 * html/HTMLConstructionSite.h: 105520 (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard): 105521 (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::~RedirectToFosterParentGuard): 105522 * html/HTMLTreeBuilder.cpp: 105523 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 105524 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 105525 * html/HTMLTreeBuilder.h: 105526 105527 2010-07-06 Eric Seidel <eric (a] webkit.org> 105528 105529 Reviewed by Adam Barth. 105530 105531 Fix </optgroup> in "in select" mode 105532 https://bugs.webkit.org/show_bug.cgi?id=41733 105533 105534 I had to add a oneBelowTop() accessor. 105535 I added some ASSERTs after looking at the fragment case 105536 documentation. I'm now convinced that top() and oneBeforeTop() 105537 should never be NULL, so we just ASSERT they aren't. 105538 105539 This is a very obscure corner of the HTML spec, but at least 105540 we have a test for it. This makes one more html5lib test pass. 105541 105542 * html/HTMLConstructionSite.h: 105543 (WebCore::HTMLConstructionSite::oneBelowTop): 105544 * html/HTMLElementStack.cpp: 105545 (WebCore::HTMLElementStack::topRecord): 105546 (WebCore::HTMLElementStack::top): 105547 (WebCore::HTMLElementStack::oneBelowTop): 105548 * html/HTMLElementStack.h: 105549 * html/HTMLTreeBuilder.cpp: 105550 (WebCore::HTMLTreeBuilder::processEndTag): 105551 105552 2010-07-06 Eric Seidel <eric (a] webkit.org> 105553 105554 Reviewed by Adam Barth. 105555 105556 Fix "in row" "Anything else" handling of end tags 105557 https://bugs.webkit.org/show_bug.cgi?id=41731 105558 105559 I also fixed </br> handling to follow the spec more closely 105560 since it implementation was old and didn't use all our 105561 new processFake* hotness. 105562 105563 This is already covered by 3 tests, however we don't 105564 pass them yet, due to lack of table foster parenting 105565 code (which Adam is working on as we speak). 105566 105567 * html/HTMLTreeBuilder.cpp: 105568 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 105569 (WebCore::HTMLTreeBuilder::processEndTag): 105570 105571 2010-07-06 Mark Rowe <mrowe (a] apple.com> 105572 105573 Fix clean builds on Mac OS X. 105574 105575 Since "Copy Forwarding and ICU Headers" was split in to a separate target 105576 from the WebCore framework it no longer had automatica access to the 105577 PRIVATE_HEADERS_FOLDER_PATH variable. This caused it to copy the header 105578 files in to the wrong location. Fix that by giving PRIVATE_HEADERS_FOLDER_PATH 105579 its correct value and ensuring that the path exists. 105580 105581 * WebCore.xcodeproj/project.pbxproj: 105582 105583 2010-07-06 Sam Weinig <sam (a] webkit.org> 105584 105585 Fix Gtk build. 105586 105587 * GNUmakefile.am: 105588 105589 2010-07-06 Mark Rowe <mrowe (a] apple.com> 105590 105591 Tiger build fix. 105592 105593 Don't use WebCore's LDFLAGS when building WebCoreExportFileGenerator. 105594 105595 * WebCore.xcodeproj/project.pbxproj: 105596 105597 2010-07-06 Eric Seidel <eric (a] webkit.org> 105598 105599 Reviewed by Adam Barth. 105600 105601 "In cell" does not correctly handle <td><tr> or <td><td> 105602 https://bugs.webkit.org/show_bug.cgi?id=41729 105603 105604 This change is mostly cleanup to try and prevent forgetting 105605 tag name checks in the future by using inlines to reduce 105606 copy/paste code. 105607 105608 3 little bugs in InCellMode: 105609 - Missing trTag from the long or statement (reason for the cleanup) 105610 - Used || instead of && 105611 - Forgot to reprocess the tag after closeTheCell() 105612 105613 * html/HTMLTreeBuilder.cpp: 105614 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105615 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 105616 (WebCore::HTMLTreeBuilder::processStartTag): 105617 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 105618 (WebCore::HTMLTreeBuilder::processEndTag): 105619 105620 2010-07-06 Adam Barth <abarth (a] webkit.org> 105621 105622 Reviewed by Eric Seidel. 105623 105624 Move fosterParent to HTMLConstructionSite 105625 https://bugs.webkit.org/show_bug.cgi?id=41728 105626 105627 This paves the way for handling the default case of InTableMode 105628 properly. 105629 105630 * html/HTMLConstructionSite.cpp: 105631 (WebCore::HTMLConstructionSite::fosterParent): 105632 * html/HTMLConstructionSite.h: 105633 * html/HTMLTreeBuilder.cpp: 105634 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 105635 105636 2010-07-06 Adam Barth <abarth (a] webkit.org> 105637 105638 Rubber-stamped by Eric Seidel. 105639 105640 Move HTMLConstructionSite to its own file. No behavior change. 105641 105642 * Android.mk: 105643 * CMakeLists.txt: 105644 * GNUmakefile.am: 105645 * WebCore.gypi: 105646 * WebCore.pro: 105647 * WebCore.vcproj/WebCore.vcproj: 105648 * WebCore.xcodeproj/project.pbxproj: 105649 * html/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp. 105650 (WebCore::HTMLNames::hasImpliedEndTag): 105651 (WebCore::HTMLConstructionSite::attach): 105652 (WebCore::HTMLConstructionSite::HTMLConstructionSite): 105653 (WebCore::HTMLConstructionSite::~HTMLConstructionSite): 105654 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML): 105655 (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): 105656 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody): 105657 (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody): 105658 * html/HTMLConstructionSite.h: Copied from WebCore/html/HTMLTreeBuilder.h. 105659 * html/HTMLTreeBuilder.cpp: 105660 * html/HTMLTreeBuilder.h: 105661 105662 2010-07-06 Mark Rowe <mrowe (a] apple.com> 105663 105664 Build fix. 105665 105666 The path to the generated file needs to be relative to the built product directory, 105667 not to the project file. 105668 105669 * WebCore.xcodeproj/project.pbxproj: 105670 105671 2010-07-06 Mark Rowe <mrowe (a] apple.com> 105672 105673 Reviewed by Darin Adler. 105674 105675 <http://webkit.org/b/41725> REGRESSION(r62283): No longer possible to build for Tiger from SnowLeopard due to export file shenanigans 105676 105677 Change how the exports file is generated. Rather than having the logic for which symbols 105678 to include be encoded in a Makefile that concatenated separate files, the logic is now 105679 encoded as #if's in the base exports file. This ensures that the exact same preprocessor 105680 settings are used when determining which symbols to export as when compiling the code that 105681 defines the symbols. 105682 105683 * DerivedSources.make: Remove logic that determines which export files to concatenate. 105684 Replace with an invocation of WebCoreExportFileGenerator. 105685 * WebCore.3DRendering.exp: Removed. 105686 * WebCore.AcceleratedCompositing.exp: Removed. 105687 * WebCore.ClientBasedGeolocation.exp: Removed. 105688 * WebCore.ContextMenus.exp: Removed. 105689 * WebCore.DashboardSupport.exp: Removed. 105690 * WebCore.DragSupport.exp: Removed. 105691 * WebCore.Geolocation.exp: Removed. 105692 * WebCore.Inspector.exp: Removed. 105693 * WebCore.JNI.exp: Removed. 105694 * WebCore.NPAPI.exp: Removed. 105695 * WebCore.OrientationEvents.exp: Removed. 105696 * WebCore.PluginHostProcess.exp: Removed. 105697 * WebCore.ProtectionSpaceAuthCallback.exp: Removed. 105698 * WebCore.SVG.Animation.exp: Removed. 105699 * WebCore.SVG.Filters.exp: Removed. 105700 * WebCore.SVG.ForeignObject.exp: Removed. 105701 * WebCore.SVG.exp: Removed. 105702 * WebCore.Tiger.exp: Removed. 105703 * WebCore.Video.exp: Removed. 105704 * WebCore.VideoProxy.exp: Removed. 105705 * WebCore.exp.in: Renamed from WebCore/WebCore.base.exp. Merge the individual .exp 105706 files in, wrapping the appropriate parts with the necessary #if's. 105707 * WebCore.xcodeproj/project.pbxproj: 105708 * make-exports-file-generator: Added. 105709 105710 2010-07-06 Sam Weinig <sam (a] webkit.org> 105711 105712 Reviewed by Anders Carlsson. 105713 105714 Patch for https://bugs.webkit.org/show_bug.cgi?id=41723 105715 Add BackForwardController class 105716 105717 - Add BackForwardController which currently only forwards to the existing 105718 BackForwardList implementation. This is a first step toward allowing 105719 for a proxying BackForwardList implementation. 105720 105721 * CMakeLists.txt: 105722 * GNUmakefile.am: 105723 * WebCore.base.exp: 105724 * WebCore.gypi: 105725 * WebCore.pro: 105726 * WebCore.vcproj/WebCore.vcproj: 105727 * WebCore.xcodeproj/project.pbxproj: 105728 * history/BackForwardController.cpp: Added. 105729 (WebCore::BackForwardController::BackForwardController): 105730 (WebCore::BackForwardController::~BackForwardController): 105731 * history/BackForwardController.h: Added. 105732 (WebCore::BackForwardController::client): 105733 (WebCore::BackForwardController::list): 105734 * history/BackForwardControllerClient.h: Added. 105735 (WebCore::BackForwardControllerClient::~BackForwardControllerClient): 105736 * page/Page.cpp: 105737 (WebCore::Page::Page): 105738 (WebCore::Page::~Page): 105739 (WebCore::Page::backForwardList): 105740 (WebCore::Page::goBack): 105741 (WebCore::Page::goForward): 105742 (WebCore::Page::canGoBackOrForward): 105743 (WebCore::Page::goBackOrForward): 105744 (WebCore::Page::getHistoryLength): 105745 * page/Page.h: 105746 105747 2010-07-06 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 105748 105749 Unreviewed. 105750 105751 Fixes regression on API test by disabling the scrollbars before 105752 configuring the adjustments. 105753 105754 * platform/gtk/ScrollViewGtk.cpp: 105755 (WebCore::ScrollView::setGtkAdjustments): 105756 105757 2010-07-06 Eric Seidel <eric (a] webkit.org> 105758 105759 Reviewed by Adam Barth. 105760 105761 Add support for <li>, <dd> and <dt> nested tag closing 105762 https://bugs.webkit.org/show_bug.cgi?id=41720 105763 105764 li, dd, and dt have nearly identical logic in HTML5, so I 105765 attempted to make them share as much code as possible. 105766 105767 This fixes a bunch of subtests for html5lib/runner.html 105768 105769 * html/HTMLTreeBuilder.cpp: 105770 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag): 105771 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105772 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 105773 (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement): 105774 * html/HTMLTreeBuilder.h: 105775 105776 2010-07-06 Adam Barth <abarth (a] webkit.org> 105777 105778 Reviewed by Eric Seidel. 105779 105780 Factor HTMLConstructionSite out of HTMLTreeBuilder 105781 https://bugs.webkit.org/show_bug.cgi?id=41716 105782 105783 The HTMLContructionSite is the model object on which the 105784 HTMLTreeBuilder (a controller) acts. 105785 105786 No behavior change. I'll move this class into its own file in a 105787 followup patch. 105788 105789 * html/HTMLFormattingElementList.h: 105790 (WebCore::HTMLFormattingElementList::at): 105791 * html/HTMLTreeBuilder.cpp: 105792 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 105793 (WebCore::HTMLConstructionSite::HTMLConstructionSite): 105794 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 105795 (WebCore::HTMLTreeBuilder::processDoctypeToken): 105796 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML): 105797 (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement): 105798 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody): 105799 (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody): 105800 (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInScope): 105801 (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): 105802 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105803 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): 105804 (WebCore::HTMLTreeBuilder::closeTheCell): 105805 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 105806 (WebCore::HTMLTreeBuilder::processStartTag): 105807 (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): 105808 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 105809 (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement): 105810 (WebCore::HTMLTreeBuilder::findFosterParentFor): 105811 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 105812 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 105813 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 105814 (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): 105815 (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): 105816 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 105817 (WebCore::HTMLTreeBuilder::processEndTag): 105818 (WebCore::HTMLTreeBuilder::processComment): 105819 (WebCore::HTMLTreeBuilder::processCharacter): 105820 (WebCore::HTMLTreeBuilder::processEndOfFile): 105821 (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode): 105822 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 105823 (WebCore::HTMLConstructionSite::insertDoctype): 105824 (WebCore::HTMLConstructionSite::insertComment): 105825 (WebCore::HTMLConstructionSite::insertCommentOnDocument): 105826 (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement): 105827 (WebCore::HTMLConstructionSite::createElementAndAttachToCurrent): 105828 (WebCore::HTMLConstructionSite::insertHTMLHtmlElement): 105829 (WebCore::HTMLConstructionSite::insertHTMLHeadElement): 105830 (WebCore::HTMLConstructionSite::insertHTMLBodyElement): 105831 (WebCore::HTMLConstructionSite::insertElement): 105832 (WebCore::HTMLConstructionSite::insertSelfClosingElement): 105833 (WebCore::HTMLConstructionSite::insertFormattingElement): 105834 (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag): 105835 (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag): 105836 (WebCore::HTMLConstructionSite::insertScriptElement): 105837 (WebCore::HTMLTreeBuilder::processScriptStartTag): 105838 (WebCore::HTMLConstructionSite::insertTextNode): 105839 (WebCore::HTMLConstructionSite::createElement): 105840 (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement): 105841 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 105842 (WebCore::HTMLTreeBuilder::generateImpliedEndTagsWithExclusion): 105843 (WebCore::HTMLTreeBuilder::generateImpliedEndTags): 105844 * html/HTMLTreeBuilder.h: 105845 (WebCore::HTMLConstructionSite::currentElement): 105846 (WebCore::HTMLConstructionSite::openElements): 105847 (WebCore::HTMLConstructionSite::activeFormattingElements): 105848 (WebCore::HTMLConstructionSite::head): 105849 (WebCore::HTMLConstructionSite::form): 105850 (WebCore::HTMLConstructionSite::releaseForm): 105851 (WebCore::HTMLConstructionSite::setForm): 105852 (WebCore::HTMLConstructionSite::fragmentScriptingPermission): 105853 (WebCore::HTMLConstructionSite::attach): 105854 105855 2010-07-06 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 105856 105857 Reviewed by Xan Lopez. 105858 105859 [GTK] Scrollbars sometimes go dead and stop scrolling the view 105860 https://bugs.webkit.org/show_bug.cgi?id=41711 105861 105862 Fixes GtkScrolledWindow scrollbars not actually scrolling the page 105863 in certain conditions. No tests because it is hard to reproduce, 105864 and depends on interaction with a widget that is outside of the 105865 WebView, which is tricky. 105866 105867 * platform/gtk/ScrollViewGtk.cpp: 105868 (WebCore::ScrollView::setGtkAdjustments): 105869 105870 2010-07-06 Darin Adler <darin (a] apple.com> 105871 105872 Reviewed by Geoffrey Garen. 105873 105874 Simplify access to element attribute map, removing unneeded functions 105875 https://bugs.webkit.org/show_bug.cgi?id=41703 105876 105877 * css/CSSStyleSelector.cpp: 105878 (WebCore::CSSStyleSelector::canShareStyleWithElement): Use the 105879 attributeMap function instead of the mappedAttributes function. 105880 (WebCore::CSSStyleSelector::styleForElement): Ditto. 105881 105882 * dom/Element.cpp: 105883 (WebCore::Element::~Element): Renamed namedAttrMap to m_attributeMap. 105884 (WebCore::Element::removeAttribute): Ditto. 105885 (WebCore::Element::getAttribute): Ditto. 105886 (WebCore::Element::setAttribute): Ditto. 105887 (WebCore::Element::setAttributeMap): Ditto. 105888 (WebCore::Element::hasAttributes): Ditto. 105889 (WebCore::Element::createAttributeMap): Ditto. 105890 (WebCore::Element::insertedIntoDocument): Ditto. 105891 (WebCore::Element::removedFromDocument): Ditto. 105892 (WebCore::Element::getURLAttribute): Ditto. 105893 105894 * dom/Element.h: Removed unneeded virtual attributes function. 105895 Made read-only argument to attributes function default to false. 105896 (Later, we'll eliminate this.) Renamed namedAttrMap to m_attributeMap 105897 and made it private instead of protected. 105898 105899 * dom/StyledElement.cpp: 105900 (WebCore::StyledElement::attributeChanged): Use attributeMap function 105901 instead of namedAttrMap data member or mappedAttributes function. 105902 (WebCore::StyledElement::classAttributeChanged): Ditto. 105903 (WebCore::StyledElement::parseMappedAttribute): Ditto. 105904 105905 * dom/StyledElement.h: Removed mappedAttributes function and changed 105906 callers to use attributeMap function instead. 105907 105908 * html/HTMLInputElement.cpp: 105909 (WebCore::HTMLInputElement::setInputType): Use attributeMap instead of 105910 mappedAttributes. 105911 * svg/SVGStyledElement.cpp: 105912 (WebCore::SVGStyledElement::getPresentationAttribute): Ditto. 105913 105914 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105915 105916 Reviewed by Sam Weinig. 105917 105918 Add a build rule that removes the old generated Obj-C bindings for PluginArray and MimeTypeArray. 105919 105920 * DerivedSources.make: 105921 105922 2010-07-06 Adam Barth <abarth (a] webkit.org> 105923 105924 Unreviewed. 105925 105926 Make the remaining insertion modes explicit. 105927 105928 * html/HTMLTreeBuilder.cpp: 105929 (WebCore::HTMLTreeBuilder::processStartTag): 105930 (WebCore::HTMLTreeBuilder::processEndTag): 105931 (WebCore::HTMLTreeBuilder::processCharacter): 105932 (WebCore::HTMLTreeBuilder::processEndOfFile): 105933 105934 2010-07-06 Alexey Proskuryakov <ap (a] apple.com> 105935 105936 Not reviewed, fixing a simple copy/paste mistake. 105937 105938 https://bugs.webkit.org/show_bug.cgi?id=41156 105939 Cross origin XMLHttpRequest should log the reason why connection failed 105940 105941 Covered by xmlhttprequest/access-control-basic-non-simple-deny-cached.html 105942 105943 * loader/CrossOriginPreflightResultCache.cpp: 105944 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): Fix incorrectly 105945 copy/pasted header field name. 105946 105947 2010-07-06 Xan Lopez <xlopez (a] igalia.com> 105948 105949 GTK+ fixes for the DOM plug-in renaming Apocalypse. 105950 105951 * GNUmakefile.am: 105952 105953 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105954 105955 Yet another Windows build fix. 105956 105957 * DerivedSources.cpp: 105958 105959 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105960 105961 Fix Windows build. 105962 105963 * WebCore.vcproj/WebCore.vcproj: 105964 105965 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105966 105967 More build fixes. 105968 105969 * WebCore.gypi: 105970 * WebCore.pro: 105971 105972 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105973 105974 Try to fix Qt build. 105975 105976 * WebCore.pro: 105977 105978 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105979 105980 Attempt to fix GTK+ build. 105981 105982 * GNUmakefile.am: 105983 105984 2010-07-06 Adam Barth <abarth (a] webkit.org> 105985 105986 Address reviewer comments from https://bugs.webkit.org/show_bug.cgi?id=41671 105987 105988 Deploy isTableBodyContextTag where possible. No behavior change. 105989 105990 * html/HTMLTreeBuilder.cpp: 105991 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 105992 (WebCore::HTMLTreeBuilder::processStartTag): 105993 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 105994 (WebCore::HTMLTreeBuilder::processEndTag): 105995 105996 2010-07-06 Anders Carlsson <andersca (a] apple.com> 105997 105998 Build fixes. 105999 106000 * WebCore.gypi: 106001 * bindings/js/JSBindingsAllInOne.cpp: 106002 106003 2010-07-06 Anders Carlsson <andersca (a] apple.com> 106004 106005 Reviewed by Sam Weinig. 106006 106007 DOM plug-in related renames 106008 https://bugs.webkit.org/show_bug.cgi?id=41709 106009 106010 This is in preparation for using "Plugin" for something other than a DOM object. 106011 106012 MimeType => DOMMimeType 106013 MimeTypeArray => DOMMimeTypeArray 106014 Plugin => DOMPlugin 106015 PluginArray => DOMPluginArray 106016 106017 * CMakeLists.txt: 106018 * DerivedSources.make: 106019 * GNUmakefile.am: 106020 * WebCore.pri: 106021 * WebCore.vcproj/WebCore.vcproj: 106022 * WebCore.xcodeproj/project.pbxproj: 106023 * bindings/js/JSDOMMimeTypeArrayCustom.cpp: Added. 106024 (WebCore::JSDOMMimeTypeArray::canGetItemsForName): 106025 (WebCore::JSDOMMimeTypeArray::nameGetter): 106026 * bindings/js/JSDOMPluginArrayCustom.cpp: Added. 106027 (WebCore::JSDOMPluginArray::canGetItemsForName): 106028 (WebCore::JSDOMPluginArray::nameGetter): 106029 * bindings/js/JSDOMPluginCustom.cpp: Added. 106030 (WebCore::JSDOMPlugin::canGetItemsForName): 106031 (WebCore::JSDOMPlugin::nameGetter): 106032 * bindings/js/JSMimeTypeArrayCustom.cpp: Removed. 106033 * bindings/js/JSPluginArrayCustom.cpp: Removed. 106034 * bindings/js/JSPluginCustom.cpp: Removed. 106035 * bindings/scripts/CodeGeneratorJS.pm: 106036 * page/DOMWindow.idl: 106037 * page/Navigator.cpp: 106038 (WebCore::Navigator::plugins): 106039 (WebCore::Navigator::mimeTypes): 106040 * page/Navigator.h: 106041 * page/Navigator.idl: 106042 * plugins/DOMMimeType.cpp: Added. 106043 (WebCore::DOMMimeType::DOMMimeType): 106044 (WebCore::DOMMimeType::~DOMMimeType): 106045 (WebCore::DOMMimeType::type): 106046 (WebCore::DOMMimeType::suffixes): 106047 (WebCore::DOMMimeType::description): 106048 (WebCore::DOMMimeType::enabledPlugin): 106049 * plugins/DOMMimeType.h: Added. 106050 (WebCore::DOMMimeType::create): 106051 (WebCore::DOMMimeType::mimeClassInfo): 106052 * plugins/DOMMimeType.idl: Added. 106053 * plugins/DOMMimeTypeArray.cpp: Added. 106054 (WebCore::DOMMimeTypeArray::DOMMimeTypeArray): 106055 (WebCore::DOMMimeTypeArray::~DOMMimeTypeArray): 106056 (WebCore::DOMMimeTypeArray::length): 106057 (WebCore::DOMMimeTypeArray::item): 106058 (WebCore::DOMMimeTypeArray::canGetItemsForName): 106059 (WebCore::DOMMimeTypeArray::namedItem): 106060 (WebCore::DOMMimeTypeArray::getPluginData): 106061 * plugins/DOMMimeTypeArray.h: Added. 106062 (WebCore::DOMMimeTypeArray::create): 106063 (WebCore::DOMMimeTypeArray::disconnectFrame): 106064 * plugins/DOMMimeTypeArray.idl: Added. 106065 * plugins/DOMPlugin.cpp: Added. 106066 (WebCore::DOMPlugin::DOMPlugin): 106067 (WebCore::DOMPlugin::~DOMPlugin): 106068 (WebCore::DOMPlugin::name): 106069 (WebCore::DOMPlugin::filename): 106070 (WebCore::DOMPlugin::description): 106071 (WebCore::DOMPlugin::length): 106072 (WebCore::DOMPlugin::item): 106073 (WebCore::DOMPlugin::canGetItemsForName): 106074 (WebCore::DOMPlugin::namedItem): 106075 * plugins/DOMPlugin.h: Added. 106076 (WebCore::DOMPlugin::create): 106077 (WebCore::DOMPlugin::pluginInfo): 106078 * plugins/DOMPlugin.idl: Added. 106079 * plugins/DOMPluginArray.cpp: Added. 106080 (WebCore::DOMPluginArray::DOMPluginArray): 106081 (WebCore::DOMPluginArray::~DOMPluginArray): 106082 (WebCore::DOMPluginArray::length): 106083 (WebCore::DOMPluginArray::item): 106084 (WebCore::DOMPluginArray::canGetItemsForName): 106085 (WebCore::DOMPluginArray::namedItem): 106086 (WebCore::DOMPluginArray::refresh): 106087 (WebCore::DOMPluginArray::pluginData): 106088 * plugins/DOMPluginArray.h: Added. 106089 (WebCore::DOMPluginArray::create): 106090 (WebCore::DOMPluginArray::disconnectFrame): 106091 * plugins/DOMPluginArray.idl: Added. 106092 * plugins/MimeType.cpp: Removed. 106093 * plugins/MimeType.h: Removed. 106094 * plugins/MimeType.idl: Removed. 106095 * plugins/MimeTypeArray.cpp: Removed. 106096 * plugins/MimeTypeArray.h: Removed. 106097 * plugins/MimeTypeArray.idl: Removed. 106098 * plugins/Plugin.cpp: Removed. 106099 * plugins/Plugin.h: Removed. 106100 * plugins/Plugin.idl: Removed. 106101 * plugins/PluginArray.cpp: Removed. 106102 * plugins/PluginArray.h: Removed. 106103 * plugins/PluginArray.idl: Removed. 106104 106105 2010-07-06 Alexey Proskuryakov <ap (a] apple.com> 106106 106107 Reviewed by Darin Adler. 106108 106109 https://bugs.webkit.org/show_bug.cgi?id=41156 106110 Cross origin XMLHttpRequest should log the reason why connection failed 106111 106112 Covered by multiple existing tests. 106113 106114 * loader/CrossOriginAccessControl.cpp: 106115 (WebCore::passesAccessControlCheck): 106116 * loader/CrossOriginAccessControl.h: 106117 * loader/CrossOriginPreflightResultCache.cpp: 106118 (WebCore::CrossOriginPreflightResultCacheItem::parse): 106119 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod): 106120 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): 106121 (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest): 106122 * loader/CrossOriginPreflightResultCache.h: 106123 Functions that check requests now take a string argument for error explanation. 106124 106125 * loader/DocumentThreadableLoader.cpp: 106126 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Make an informative error 106127 if crossOriginRequestPolicy is DenyCrossOriginRequests. This doesn't currently go anywhere, 106128 since XMLHttpRequest is the only client that logs from didFail(), and it of course supports 106129 cross origin requests. 106130 (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Make an informative 106131 error when trying to e.g. send a cross origin XMLHttpRequest to ftp://. 106132 (WebCore::DocumentThreadableLoader::didReceiveResponse): Pass error explanation from cross 106133 origin access control code. 106134 (WebCore::DocumentThreadableLoader::preflightFailure): Ditto. 106135 106136 * loader/DocumentThreadableLoader.h: preflightFailure() now takes arguments. 106137 106138 * platform/network/ResourceErrorBase.cpp: 106139 * platform/network/ResourceErrorBase.h: 106140 Added a constant for WebKit error domain. 106141 106142 * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didFail): Report the error to console. 106143 One day we'll be able to also provide script file and line number here, so it's best to 106144 pass error all the way down to XHR for reporting. 106145 106146 2010-07-06 Pavel Podivilov <podivilov (a] chromium.org> 106147 106148 Reviewed by Pavel Feldman. 106149 106150 Web Inspector: convert script offset to webkit format in v8 ScriptDebugServer 106151 https://bugs.webkit.org/show_bug.cgi?id=41696 106152 106153 * bindings/v8/ScriptDebugServer.cpp: 106154 (WebCore::ScriptDebugServer::dispatchDidParseSource): 106155 106156 2010-07-06 Adam Barth <abarth (a] webkit.org> 106157 106158 Reviewed by Eric Seidel. 106159 106160 Implement InTableBodyMode 106161 https://bugs.webkit.org/show_bug.cgi?id=41671 106162 106163 In the process of implementing this patch, Eric and I discussed some of 106164 the high-level organization of the HTMLTreeBuilder class. We'd like to 106165 split it up into smaller pieces. In the meantime, I've reordered some 106166 of the declarations in the header to make the relations between the 106167 different kinds of functions clearer. 106168 106169 * html/HTMLElementStack.cpp: 106170 * html/HTMLTreeBuilder.cpp: 106171 (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): 106172 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 106173 (WebCore::HTMLTreeBuilder::processStartTagForInTable): 106174 (WebCore::HTMLTreeBuilder::processStartTag): 106175 (WebCore::HTMLTreeBuilder::processEndTagForInTable): 106176 (WebCore::HTMLTreeBuilder::processEndTag): 106177 (WebCore::HTMLTreeBuilder::processCharacter): 106178 (WebCore::HTMLTreeBuilder::processEndOfFile): 106179 * html/HTMLTreeBuilder.h: 106180 106181 2010-07-06 Leandro Pereira <leandro (a] profusion.mobi> 106182 106183 Unreviewed build fix. 106184 106185 [EFL] Generate code for RemoteInspector. 106186 106187 * CMakeLists.txt: 106188 106189 2010-07-06 Varun Jain <varunjain (a] chromium.org> 106190 106191 Reviewed by Oliver Hunt. 106192 106193 Implementing CURVE_TO_CUBIC specification for SVG Path Segments. Currently, 106194 curves specified in relative cordinates such as using createCurvetoCubicRel() 106195 javascript function are not displayed. 106196 106197 SVG CurvetoCubic Path not implemented for relative cordinates 106198 https://bugs.webkit.org/show_bug.cgi?id=41294 106199 106200 Test: svg/custom/svg-curve-with-relative-cordinates.html 106201 106202 * svg/SVGPathSegList.cpp: 106203 (WebCore::SVGPathSegList::toPathData): 106204 106205 2010-07-06 Alexey Proskuryakov <ap (a] apple.com> 106206 106207 Roll out patch for https://bugs.webkit.org/show_bug.cgi?id=41348 "Remove global variables 106208 from XSLTProcessorLibxslt.cpp", as it causes crashes on buildbot. 106209 106210 * xml/XSLTProcessor.h: 106211 (WebCore::XSLTProcessor::xslStylesheet): 106212 (WebCore::XSLTProcessor::XSLTProcessor): 106213 * xml/XSLTProcessorLibxslt.cpp: 106214 (WebCore::docLoaderFunc): 106215 (WebCore::setXSLTLoadCallBack): 106216 (WebCore::xsltStylesheetPointer): 106217 (WebCore::XSLTProcessor::transformToString): 106218 106219 2010-07-06 Eric Seidel <eric (a] webkit.org> 106220 106221 Reviewed by Adam Barth. 106222 106223 Add processing for "in cell" mode and end tag processing for "in row" 106224 https://bugs.webkit.org/show_bug.cgi?id=41688 106225 106226 I added several new table tests, not all of which pass yet. 106227 Remaining failures exist due to lack of full "in table body" mode 106228 support, which Adam has an outstanding patch for. 106229 I believe all of the various branches added by this change are 106230 covered now by our tests. 106231 106232 * html/HTMLElementStack.cpp: 106233 - Added QualifiedName versions of inScope functions. 106234 Using tagName.localName() is wrong for non-HTML elements, 106235 in preparation for supporting foreign content we should centralize 106236 our handling of QualifiedName in these functions instead of 106237 sprinkling more .localName() calls around the code. 106238 (WebCore::HTMLElementStack::inScope): 106239 (WebCore::HTMLElementStack::inListItemScope): 106240 (WebCore::HTMLElementStack::inTableScope): 106241 * html/HTMLElementStack.h: 106242 * html/HTMLFormattingElementList.cpp: 106243 (WebCore::HTMLFormattingElementList::Entry::operator==): 106244 (WebCore::HTMLFormattingElementList::Entry::operator!=): 106245 - Calling element() on markers will assert, so use m_element. 106246 * html/HTMLTreeBuilder.cpp: 106247 (WebCore::HTMLTreeBuilder::closeTheCell): 106248 - Implemented per the spec. 106249 (WebCore::HTMLTreeBuilder::processStartTag): 106250 - Use isTableBodyContextTag where possible. 106251 - Add InCellMode. 106252 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 106253 - Use isTableBodyContextTag where possible. 106254 (WebCore::HTMLTreeBuilder::processTrEndTagForInRow): 106255 - This code is needed from at least two callsites. 106256 (WebCore::HTMLTreeBuilder::processEndTag): 106257 - Add InCellMode and InRowMode 106258 (WebCore::HTMLTreeBuilder::processCharacter): 106259 (WebCore::HTMLTreeBuilder::processEndOfFile): 106260 * html/HTMLTreeBuilder.h: 106261 106262 2010-07-06 Eric Seidel <eric (a] webkit.org> 106263 106264 Reviewed by Adam Barth. 106265 106266 Make <a> auto-close any parent <a> tag 106267 https://bugs.webkit.org/show_bug.cgi?id=41684 106268 106269 I first fixed <a> to auto-close surrounding <a> tags. 106270 That caused about 3 more test passes and one new test failure. 106271 The test failure was due to <marque> not adding a marker 106272 to the active formatting elements. 106273 106274 So I made a one-line change to fix <marque>. However that hit an 106275 ASSERT due to a bug in indexOfFirstUnopenFormattingElement. 106276 Fixing indexOfFirstUnopenFormattingElement fixed another bunch of 106277 Adoption Agency related tests (clearly this was the second typo 106278 which was causing all the adoption agency failures). 106279 106280 However fixing <marque> and indexOfFirstUnopenFormattingElement, 106281 added yet another failure due to missing support for </p> 106282 automatically adding an implicit <p> tag. Fixing </p> finally 106283 got the tests to a stable (all improving) state. 106284 106285 In the end, these 4 minor (and very well tested) tweaks fixed a total 106286 of 9 subtests in html5lib/runner.html. 106287 Another subtest progressed, but did not fully pass due to missing 106288 <table> foster-parenting support. 106289 106290 * html/HTMLTreeBuilder.cpp: 106291 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 106292 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 106293 (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement): 106294 106295 2010-07-02 Philippe Normand <pnormand (a] igalia.com> 106296 106297 Reviewed by Xan Lopez 106298 106299 [GStreamer] can't seek past maxTimeLoaded value 106300 https://bugs.webkit.org/show_bug.cgi?id=40526 106301 106302 Extended the seekable range to the whole media. This allows video 106303 played with progressive download to be seeked past the current 106304 buffered position. 106305 106306 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 106307 (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable): 106308 (WebCore::MediaPlayerPrivateGStreamer::updateStates): 106309 106310 2010-07-06 Andreas Wictor <andreas.wictor (a] xcerion.com> 106311 106312 Reviewed by Alexey Proskuryakov. 106313 106314 Remove global variables from XSLTProcessorLibxslt.cpp 106315 https://bugs.webkit.org/show_bug.cgi?id=41348 106316 106317 Remove the globalProcessor and globalDocLoader global variables 106318 by using the _private field that exists on most libxml structs. 106319 106320 No new tests, existing tests covers this. 106321 106322 * xml/XSLTProcessor.h: 106323 (WebCore::XSLTProcessor::sourceNode): 106324 (WebCore::XSLTProcessor::XSLTProcessor): 106325 * xml/XSLTProcessorLibxslt.cpp: 106326 (WebCore::registredXSLTProcessors): 106327 (WebCore::registredXSLStyleSheets): 106328 (WebCore::docLoaderFunc): 106329 (WebCore::xsltStylesheetPointer): 106330 (WebCore::XSLTProcessor::transformToString): 106331 106332 2010-07-06 Darin Adler <darin (a] apple.com> 106333 106334 Fix Cairo build. 106335 106336 * platform/graphics/cairo/GraphicsContextCairo.cpp: 106337 (WebCore::GraphicsContext::createPlatformShadow): Removed unnneded release 106338 in code that passes a PassOwnPtr to another PassOwnPtr. 106339 106340 2010-07-06 Darin Adler <darin (a] apple.com> 106341 106342 Fix Chromium build. 106343 106344 * platform/graphics/skia/SkiaUtils.cpp: 106345 (WebCore::scratchContext): Use leakPtr instead of release. 106346 106347 2010-07-06 Martin Robinson <mrobinson (a] igalia.com> 106348 106349 Unreviewed. 106350 106351 Build fix after r62549. 106352 106353 * GNUmakefile.am: Generate RemoteInspector files by manually listing 106354 them instead of building them into libWebCoreJS.la. 106355 106356 2010-07-06 Darin Adler <darin (a] apple.com> 106357 106358 Reviewed by Adam Barth. 106359 106360 Add adoptPtr and leakPtr functions for OwnPtr and PassOwnPtr 106361 https://bugs.webkit.org/show_bug.cgi?id=41320 106362 106363 Made code changes required because of the change to the release function. 106364 The equivalent to the old release function is now named leakPtr and 106365 should be used sparingly. The new release function returns a PassOwnPtr. 106366 106367 * css/CSSFontFaceSource.cpp: 106368 (WebCore::CSSFontFaceSource::getFontData): Changed code to call 106369 leakPtr instead of release. 106370 * css/CSSParser.cpp: 106371 (WebCore::CSSParser::addProperty): Ditto. 106372 106373 * css/CSSSegmentedFontFace.cpp: 106374 (WebCore::CSSSegmentedFontFace::getFontData): Removed unneeded type 106375 casting. Not sure why this changed the type to FontData* and then 106376 casted back to SimpleFontData*. 106377 106378 * css/MediaQuery.cpp: 106379 (WebCore::MediaQuery::MediaQuery): Removed call to release on a 106380 PassOwnPtr, since the data member is now an OwnPtr. 106381 (WebCore::MediaQuery::~MediaQuery): Removed now-unneeded delete. 106382 * css/MediaQuery.h: Changed m_expressions to be an OwnPtr. 106383 106384 * html/HTMLToken.h: 106385 (WebCore::AtomicHTMLToken::AtomicHTMLToken): Use assignment instead 106386 of the set function since there are no raw pointers involved. 106387 * loader/CachedResource.cpp: 106388 (WebCore::CachedResource::makePurgeable): Ditto. 106389 106390 * loader/CrossOriginPreflightResultCache.cpp: 106391 (WebCore::CrossOriginPreflightResultCache::appendEntry): Use 106392 leakPtr instead of release, and also add FIXME about deleting the 106393 old value if the original and URL are already in the map. I 106394 believe dealing with this FIXME may fix a storage leak. 106395 106396 * loader/CrossOriginPreflightResultCache.h: Change the argument 106397 to be PassOwnPtr instead of a raw pointer, since this function 106398 does take ownership. 106399 106400 * loader/DocumentThreadableLoader.cpp: 106401 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): 106402 Use assignment instead of the set function since there are no raw 106403 pointers involved. 106404 * loader/FrameLoader.cpp: 106405 (WebCore::FrameLoader::startIconLoader): Ditto. 106406 * loader/TextResourceDecoder.cpp: 106407 (WebCore::TextResourceDecoder::decode): Ditto. 106408 (WebCore::TextResourceDecoder::flush): Ditto. 106409 106410 * page/DOMTimer.cpp: 106411 (WebCore::DOMTimer::fired): Use OwnPtr instead of an explicit 106412 delete. 106413 106414 * platform/CrossThreadCopier.h: Removed explicit code that tried 106415 to copy PassOwnPtr in a complicated way. It did nothing different 106416 from just returning the PassOwnPtr. This presumably was done because 106417 PassRefPtr has issues when copied cross-thread, but there are no 106418 similar issues for PassOwnPtr. Someone with more experience than I 106419 might be able to remove the specialization altogether, because 106420 CrossThreadCopierPassThrough does the right thing in this case. 106421 106422 * platform/SharedBuffer.cpp: 106423 (WebCore::SharedBuffer::adoptPurgeableBuffer): Changed argument to 106424 be a PassOwnPtr. 106425 (WebCore::SharedBuffer::releasePurgeableBuffer): Changed result to 106426 be a PassOwnPtr. 106427 * platform/SharedBuffer.h: Updated for changes above. 106428 106429 * rendering/RenderSVGResourceFilter.cpp: 106430 (WebCore::RenderSVGResourceFilter::applyResource): Changed one site 106431 to use assignment instead of the set function since there are no raw 106432 pointers involved. Changed another site to use leakPtr instead 106433 of release. 106434 106435 * rendering/RenderSVGResourceGradient.cpp: 106436 (WebCore::createMaskAndSwapContextForTextGradient): Use assignment 106437 instead of the set function since there are no raw pointers involved. 106438 106439 * rendering/style/RenderStyle.cpp: 106440 (WebCore::RenderStyle::setContent): Use leakPtr instead of release. 106441 (WebCore::RenderStyle::setBoxShadow): Ditto. 106442 106443 * workers/DefaultSharedWorkerRepository.cpp: 106444 (WebCore::DefaultSharedWorkerRepository::connectToWorker): 106445 Removed unneeded call to release function in a code path that passes 106446 a PassOwnPtr to a function that takes a PassOwnPtr. 106447 106448 * workers/WorkerContext.cpp: 106449 (WebCore::WorkerContext::setTimeout): Changed argument type to PassOwnPtr. 106450 (WebCore::WorkerContext::setInterval): Ditto. 106451 * workers/WorkerContext.h: Updated for changes above. 106452 106453 * workers/WorkerMessagingProxy.cpp: 106454 (WebCore::WorkerMessagingProxy::postMessageToWorkerObject): 106455 (WebCore::WorkerMessagingProxy::postMessageToWorkerContext): 106456 Removed unneeded call to release function in code paths that pass 106457 a PassOwnPtr to a function that takes a PassOwnPtr. 106458 106459 2010-07-06 Ilya Tikhonovsky <loislo (a] chromium.org> 106460 106461 Reviewed by Yury Semikhatsky. 106462 106463 WebInspector: generator part of the patch for bug 40675. 106464 On the way to Remote Debugging we want to support JSON serialization 106465 on both sides of WebInspector transport. 106466 As far as InspectorFrontend class is a simple proxy to WebInspector 106467 it would be better to generate it from an IDL file. 106468 We have generator infrastructure for binding and will reuse it for 106469 new generator. 106470 https://bugs.webkit.org/show_bug.cgi?id=41692 106471 106472 106473 * CMakeLists.txt: 106474 * DerivedSources.make: 106475 * GNUmakefile.am: 106476 * WebCore.gyp/WebCore.gyp: 106477 * WebCore.gyp/scripts/rule_binding.py: 106478 * WebCore.gypi: 106479 * WebCore.pri: 106480 * WebCore.vcproj/WebCore.vcproj: 106481 * WebCore.xcodeproj/project.pbxproj: 106482 * bindings/scripts/CodeGenerator.pm: 106483 * bindings/scripts/IDLParser.pm: 106484 * bindings/scripts/generate-bindings.pl: 106485 * inspector/CodeGeneratorInspector.pm: Added. 106486 * inspector/InspectorController.cpp: 106487 (WebCore::InspectorController::connectFrontend): 106488 (WebCore::InspectorController::startTimelineProfiler): 106489 * inspector/InspectorController.h: 106490 * inspector/InspectorFrontend.cpp: 106491 * inspector/InspectorFrontend.h: 106492 * inspector/InspectorFrontend2.idl: Added. 106493 * inspector/InspectorTimelineAgent.cpp: 106494 (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): 106495 (WebCore::InspectorTimelineAgent::resetFrontendProxyObject): 106496 (WebCore::InspectorTimelineAgent::addRecordToTimeline): 106497 * inspector/InspectorTimelineAgent.h: 106498 106499 2010-07-06 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 106500 106501 Rubber-stamped by Xan Lopez. 106502 106503 [GTK] Crashes when going back with page cache in unknown circunstances 106504 https://bugs.webkit.org/show_bug.cgi?id=41710 106505 106506 Also NULL-check document, in hopes of fixing this hard to 106507 reproduce crash that we are getting reported quite a bit. 106508 106509 * page/FrameView.cpp: 106510 (WebCore::FrameView::windowClipRect): 106511 106512 2010-07-05 Ilya Tikhonovsky <loislo (a] chromium.org> 106513 106514 Reviewed by Yury Semikhatsky. 106515 106516 Web Inspector: On the way to Remote Debuging we want to support JSON 106517 serialization on both sides of WebInspector transport. As far as 106518 InspectorFrontend class is a simple proxy to WebInspector it would 106519 be better to generate it from an IDL file. We have generator 106520 infostructure for binding and will reuse it for new generator. 106521 https://bugs.webkit.org/show_bug.cgi?id=40675 106522 106523 * bindings/js/ScriptCallStack.cpp: 106524 (WebCore::ScriptCallStack::stackTrace): 106525 * bindings/js/ScriptCallStack.h: 106526 * bindings/v8/ScriptCallStack.cpp: 106527 (WebCore::ScriptCallStack::stackTrace): 106528 * bindings/v8/ScriptCallStack.h: 106529 * inspector/InspectorFrontend.cpp: 106530 (WebCore::InspectorFrontend::addRecordToTimeline): 106531 * inspector/InspectorFrontend.h: 106532 * inspector/InspectorTimelineAgent.cpp: 106533 (WebCore::InspectorTimelineAgent::pushGCEventRecords): 106534 (WebCore::InspectorTimelineAgent::willCallFunction): 106535 (WebCore::InspectorTimelineAgent::willDispatchEvent): 106536 (WebCore::InspectorTimelineAgent::willLayout): 106537 (WebCore::InspectorTimelineAgent::willRecalculateStyle): 106538 (WebCore::InspectorTimelineAgent::willPaint): 106539 (WebCore::InspectorTimelineAgent::willWriteHTML): 106540 (WebCore::InspectorTimelineAgent::didWriteHTML): 106541 (WebCore::InspectorTimelineAgent::didInstallTimer): 106542 (WebCore::InspectorTimelineAgent::didRemoveTimer): 106543 (WebCore::InspectorTimelineAgent::willFireTimer): 106544 (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): 106545 (WebCore::InspectorTimelineAgent::willLoadXHR): 106546 (WebCore::InspectorTimelineAgent::willEvaluateScript): 106547 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): 106548 (WebCore::InspectorTimelineAgent::willSendResourceRequest): 106549 (WebCore::InspectorTimelineAgent::willReceiveResourceData): 106550 (WebCore::InspectorTimelineAgent::willReceiveResourceResponse): 106551 (WebCore::InspectorTimelineAgent::didFinishLoadingResource): 106552 (WebCore::InspectorTimelineAgent::didMarkTimeline): 106553 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent): 106554 (WebCore::InspectorTimelineAgent::didMarkLoadEvent): 106555 (WebCore::InspectorTimelineAgent::addRecordToTimeline): 106556 (WebCore::InspectorTimelineAgent::setHeapSizeStatistic): 106557 (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): 106558 (WebCore::InspectorTimelineAgent::pushCurrentRecord): 106559 * inspector/InspectorTimelineAgent.h: 106560 (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry): 106561 * inspector/TimelineRecordFactory.cpp: 106562 (WebCore::TimelineRecordFactory::createGenericRecord): 106563 (WebCore::TimelineRecordFactory::createGCEventData): 106564 (WebCore::TimelineRecordFactory::createFunctionCallData): 106565 (WebCore::TimelineRecordFactory::createEventDispatchData): 106566 (WebCore::TimelineRecordFactory::createGenericTimerData): 106567 (WebCore::TimelineRecordFactory::createTimerInstallData): 106568 (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData): 106569 (WebCore::TimelineRecordFactory::createXHRLoadData): 106570 (WebCore::TimelineRecordFactory::createEvaluateScriptData): 106571 (WebCore::TimelineRecordFactory::createMarkTimelineData): 106572 (WebCore::TimelineRecordFactory::createScheduleResourceRequestData): 106573 (WebCore::TimelineRecordFactory::createResourceSendRequestData): 106574 (WebCore::TimelineRecordFactory::createResourceReceiveResponseData): 106575 (WebCore::TimelineRecordFactory::createResourceFinishData): 106576 (WebCore::TimelineRecordFactory::createReceiveResourceData): 106577 (WebCore::TimelineRecordFactory::createPaintData): 106578 (WebCore::TimelineRecordFactory::createParseHTMLData): 106579 * inspector/TimelineRecordFactory.h: 106580 106581 2010-07-06 Adam Barth <abarth (a] webkit.org> 106582 106583 Reviewed by Eric Seidel. 106584 106585 Implement InColgroupMode 106586 https://bugs.webkit.org/show_bug.cgi?id=41663 106587 106588 * html/HTMLTreeBuilder.cpp: 106589 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup): 106590 (WebCore::HTMLTreeBuilder::processStartTag): 106591 (WebCore::HTMLTreeBuilder::processEndTag): 106592 (WebCore::HTMLTreeBuilder::processCharacter): 106593 (WebCore::HTMLTreeBuilder::processEndOfFile): 106594 * html/HTMLTreeBuilder.h: 106595 106596 2010-07-06 Eric Seidel <eric (a] webkit.org> 106597 106598 Reviewed by Adam Barth. 106599 106600 Implement bookmarking for HTML5 Adoption Agency algorithm 106601 https://bugs.webkit.org/show_bug.cgi?id=41659 106602 106603 Was easier than I expected it to be. 106604 Fixes a bunch of html5lib/runner.html tests. 106605 106606 * html/HTMLFormattingElementList.cpp: 106607 (WebCore::HTMLFormattingElementList::bookmarkFor): 106608 (WebCore::HTMLFormattingElementList::insertAt): 106609 * html/HTMLFormattingElementList.h: 106610 (WebCore::HTMLFormattingElementList::Bookmark::Bookmark): 106611 (WebCore::HTMLFormattingElementList::Bookmark::moveToAfter): 106612 (WebCore::HTMLFormattingElementList::Bookmark::elementBefore): 106613 (WebCore::HTMLFormattingElementList::Bookmark::elementAfter): 106614 * html/HTMLTreeBuilder.cpp: 106615 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 106616 106617 2010-07-06 Adam Barth <abarth (a] webkit.org> 106618 106619 Reviewed by Eric Seidel. 106620 106621 Implement more of InTableMode 106622 https://bugs.webkit.org/show_bug.cgi?id=41652 106623 106624 By the time we got around to landing this patch, it turns out to be 106625 just a bit of cleanup (the functional changes where landed already.) 106626 106627 * html/HTMLTreeBuilder.cpp: 106628 (WebCore::HTMLTreeBuilder::processCharacter): 106629 (WebCore::HTMLTreeBuilder::processEndOfFile): 106630 106631 2010-07-06 Sheriff Bot <webkit.review.bot (a] gmail.com> 106632 106633 Unreviewed, rolling out r62529. 106634 http://trac.webkit.org/changeset/62529 106635 https://bugs.webkit.org/show_bug.cgi?id=41661 106636 106637 http/tests/inspector/resource-har-conversion.html is broken 106638 (Requested by yutak on #webkit). 106639 106640 * inspector/InspectorController.cpp: 106641 (WebCore::InspectorController::addResource): 106642 (WebCore::InspectorController::removeResource): 106643 * inspector/InspectorController.h: 106644 * inspector/InspectorResource.cpp: 106645 (WebCore::InspectorResource::InspectorResource): 106646 (WebCore::InspectorResource::updateScriptObject): 106647 (WebCore::InspectorResource::cachedResource): 106648 (WebCore::InspectorResource::type): 106649 (WebCore::InspectorResource::resourceData): 106650 * inspector/InspectorResource.h: 106651 (WebCore::InspectorResource::): 106652 (WebCore::InspectorResource::create): 106653 * inspector/front-end/Resource.js: 106654 (WebInspector.Resource.Type.toString): 106655 (WebInspector.Resource.prototype.set type): 106656 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 106657 * inspector/front-end/ResourceView.js: 106658 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 106659 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 106660 (WebInspector.ResourceView.prototype._refreshHeaders): 106661 * inspector/front-end/inspector.css: 106662 (.resources-category-scripts, .resources-category-xhr, .resources-category-fonts, .resources-category-other): 106663 * inspector/front-end/inspector.js: 106664 (WebInspector.loaded): 106665 (WebInspector.updateResource): 106666 * websockets/WebSocketChannel.cpp: 106667 (WebCore::WebSocketChannel::WebSocketChannel): 106668 (WebCore::WebSocketChannel::disconnect): 106669 (WebCore::WebSocketChannel::didOpen): 106670 (WebCore::WebSocketChannel::didClose): 106671 (WebCore::WebSocketChannel::processBuffer): 106672 * websockets/WebSocketChannel.h: 106673 106674 2010-07-06 Adam Barth <abarth (a] webkit.org> 106675 106676 Reviewed by Eric Seidel. 106677 106678 Implement InCaptionMode 106679 https://bugs.webkit.org/show_bug.cgi?id=41660 106680 106681 Implementing this mode also turned up a subtle bug in the adoption 106682 agency code. 106683 106684 * html/HTMLTreeBuilder.cpp: 106685 (WebCore::HTMLTreeBuilder::processStartTag): 106686 (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption): 106687 (WebCore::HTMLTreeBuilder::processEndTag): 106688 (WebCore::HTMLTreeBuilder::processCharacter): 106689 (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement): 106690 - We're supposed to reutrn the first *unopened* formatting element. 106691 The old code returned the first *opened* formatting element. 106692 * html/HTMLTreeBuilder.h: 106693 106694 2010-07-06 Adam Barth <abarth (a] webkit.org> 106695 106696 Reviewed by Eric Seidel. 106697 106698 Implement defaut cases for InTableMode 106699 https://bugs.webkit.org/show_bug.cgi?id=41656 106700 106701 * html/HTMLTreeBuilder.cpp: 106702 (WebCore::HTMLTreeBuilder::processStartTag): 106703 (WebCore::HTMLTreeBuilder::processEndTagForInBody): 106704 (WebCore::HTMLTreeBuilder::processEndTag): 106705 * html/HTMLTreeBuilder.h: 106706 106707 2010-07-05 Nikolas Zimmermann <nzimmermann (a] rim.com> 106708 106709 Reviewed by Dirk Schulze. 106710 106711 SVGRenderContainer forces too many kids to relayout 106712 https://bugs.webkit.org/show_bug.cgi?id=15391 106713 106714 Fixing a long-standing performance issue. We should only ever need to relayout container children when the parent bounds change. 106715 The bounds of a container can only change, if the outermost RenderSVGRoot container uses relative length values and its size changes. 106716 This can either happen when the window resizes for standalone SVG documents, or if an enclosing RenderBox changes width/height values. 106717 106718 Only relayout container children if the container has selfNeedsLayout() true, or if the parent bounds change. 106719 Lively Kernel doesn't do any relayouts anymore, except if you change the Safari window size, this is a great progression. 106720 106721 * rendering/RenderPath.cpp: 106722 (WebCore::RenderPath::layout): No need to special case Path updates, if the element uses relative lengths. SVGRenderSupport now handles this case. 106723 * rendering/RenderSVGContainer.cpp: 106724 (WebCore::RenderSVGContainer::layout): Fix some style issues. 106725 * rendering/RenderSVGContainer.h: 106726 (WebCore::RenderSVGContainer::setDrawsContents): Inlined for speed. 106727 (WebCore::RenderSVGContainer::drawsContents): Ditto. 106728 * rendering/RenderSVGRoot.cpp: 106729 (WebCore::RenderSVGRoot::RenderSVGRoot): Initialize m_isLayoutSizeChanged to false. 106730 (WebCore::RenderSVGRoot::layout): Set m_isLayoutSizeChanged=true when the RenderSVGRoot size changes during layout. 106731 (WebCore::RenderSVGRoot::calcViewport): Remove hasRelativeLengths() special case. 106732 * rendering/RenderSVGRoot.h: 106733 (WebCore::RenderSVGRoot::isLayoutSizeChanged): New function, which returns true during layout() if the outermost <svg> size changes. 106734 * rendering/RenderSVGViewportContainer.cpp: 106735 (WebCore::RenderSVGViewportContainer::calcViewport): Cleanup code, and remove obsolete hasRelativeLengths() special case. 106736 * rendering/SVGRenderSupport.cpp: 106737 (WebCore::svgRootTreeObject): Added helper function, that returns the RenderSVGRoot for a given RenderObject. 106738 (WebCore::SVGRenderSupport::layoutChildren): Remove FIXME, only relayout container children, if the parent bounds change and the child uses relative lengths. 106739 * svg/SVGStyledElement.cpp: 106740 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Implemented this function. Keeps track of relative lengths elements, so that the 106741 hasRelativeLengths() information is always up2date. 106742 * svg/SVGStyledElement.h: 106743 (WebCore::SVGStyledElement::hasRelativeLengths): Don't call the virtual selfHasRelativeLengths() information, just return wheter m_elementsWithRelativeLengths is not empty. 106744 106745 2010-07-05 Yuzo Fujishima <yuzo (a] google.com> 106746 106747 Reviewed by Dan Bernstein. 106748 106749 Fix for Bug 41509 - Ranges for @font-face unicode-range must be separated by commas 106750 https://bugs.webkit.org/show_bug.cgi?id=41509 106751 106752 Test: fast/css/font-face-multiple-ranges-for-unicode-range.html 106753 106754 * css/CSSParser.cpp: 106755 (WebCore::CSSParser::parseFontFaceUnicodeRange): 106756 106757 2010-07-05 Yuta Kitamura <yutak (a] chromium.org> 106758 106759 Reviewed by Pavel Feldman. 106760 106761 Add WebSocket resource type to Web Inspector. 106762 106763 When a new WebSocket connection is established, a line for that connection 106764 will appear in Web Inspector's Resources tab. If the resource name is 106765 clicked, the details of handshake request and response will be shown. 106766 106767 Web Inspector: WebSocket in Resources tab 106768 https://bugs.webkit.org/show_bug.cgi?id=40768 106769 106770 * inspector/InspectorController.cpp: 106771 (WebCore::InspectorController::addResource): WebSocket resource does not 106772 have an associated loader, thus frame might be null. Need to check it. 106773 (WebCore::InspectorController::removeResource): Ditto. 106774 (WebCore::InspectorController::didCreateWebSocket): 106775 (WebCore::InspectorController::willSendWebSocketHandshakeRequest): 106776 (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse): 106777 (WebCore::InspectorController::didCloseWebSocket): 106778 * inspector/InspectorController.h: 106779 * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame, 106780 because WebSocket does not have a loader and we need to allow null for 106781 these variables. 106782 (WebCore::createReadableStringFromBinary): 106783 (WebCore::InspectorResource::InspectorResource): 106784 (WebCore::InspectorResource::create): Factory function of 106785 regular (non-WebSocket) resources. 106786 (WebCore::InspectorResource::createWebSocket): Factory function of 106787 WebSocket resources. 106788 (WebCore::InspectorResource::updateWebSocketRequest): 106789 (WebCore::InspectorResource::updateWebSocketResponse): 106790 (WebCore::InspectorResource::updateScriptObject): 106791 (WebCore::InspectorResource::cachedResource): 106792 (WebCore::InspectorResource::type): 106793 (WebCore::InspectorResource::resourceData): 106794 * inspector/InspectorResource.h: 106795 (WebCore::InspectorResource::): 106796 (WebCore::InspectorResource::markWebSocket): 106797 * inspector/front-end/Resource.js: 106798 (WebInspector.Resource.Type.toString): 106799 (WebInspector.Resource.prototype.set type): 106800 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): 106801 * inspector/front-end/ResourceView.js: 106802 (WebInspector.ResourceView.prototype._refreshRequestHeaders): 106803 (WebInspector.ResourceView.prototype._refreshResponseHeaders): 106804 (WebInspector.ResourceView.prototype._refreshHeaders): 106805 * inspector/front-end/inspector.css: 106806 (.resources-category-websockets, .resources-category-other): 106807 (.resources-category-websockets .resources-graph-bar): 106808 (.resources-category-websockets.resource-cached .resources-graph-bar): 106809 * inspector/front-end/inspector.js: 106810 (WebInspector.loaded): 106811 (WebInspector.updateResource): 106812 * websockets/WebSocketChannel.cpp: 106813 (WebCore::WebSocketChannel::WebSocketChannel): 106814 (WebCore::WebSocketChannel::disconnect): 106815 (WebCore::WebSocketChannel::didOpen): 106816 (WebCore::WebSocketChannel::didClose): 106817 (WebCore::WebSocketChannel::processBuffer): 106818 (WebCore::WebSocketChannel::identifier): 106819 * websockets/WebSocketChannel.h: 106820 106821 2010-07-05 Yury Semikhatsky <yurys (a] chromium.org> 106822 106823 Unreviewed. Fix Chromium build. 106824 106825 * inspector/InspectorApplicationCacheAgent.cpp: 106826 (WebCore::InspectorApplicationCacheAgent::fillResourceList): 106827 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): 106828 106829 2010-07-05 Adam Barth <abarth (a] webkit.org> 106830 106831 Unreviewed. 106832 106833 Move processStartTagForInBody to its own function. 106834 106835 * html/HTMLTreeBuilder.cpp: 106836 (WebCore::HTMLTreeBuilder::processStartTagForInBody): 106837 (WebCore::HTMLTreeBuilder::processStartTag): 106838 * html/HTMLTreeBuilder.cpp.orig: Added. 106839 * html/HTMLTreeBuilder.h: 106840 106841 2010-07-05 Eric Seidel <eric (a] webkit.org> 106842 106843 Reviewed by Adam Barth. 106844 106845 Fix one more notImplemented in h1-h6 start tag handling 106846 https://bugs.webkit.org/show_bug.cgi?id=41654 106847 106848 * html/HTMLTreeBuilder.cpp: 106849 (WebCore::HTMLTreeBuilder::processStartTag): 106850 106851 2010-07-05 Eric Seidel <eric (a] webkit.org> 106852 106853 Unreviewed. Just fixing proess to process. 106854 Clearly Adam and I can't spell. Thankfully MikeSmith can. 106855 106856 Add <isindex> support, per HTML5 106857 https://bugs.webkit.org/show_bug.cgi?id=41650 106858 106859 * html/HTMLTreeBuilder.cpp: 106860 (WebCore::HTMLTreeBuilder::processFakeStartTag): 106861 (WebCore::HTMLTreeBuilder::processFakeEndTag): 106862 (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody): 106863 (WebCore::HTMLTreeBuilder::processStartTag): 106864 * html/HTMLTreeBuilder.h: 106865 106866 2010-07-05 Eric Seidel <eric (a] webkit.org> 106867 106868 Reviewed by Adam Barth. 106869 106870 Add <isindex> support, per HTML5 106871 https://bugs.webkit.org/show_bug.cgi?id=41650 106872 106873 Covered by html5lib/runner.html including a new 106874 isindex.dat test suite. 106875 106876 * html/HTMLToken.h: 106877 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 106878 - Support passing attributes to the constructor. 106879 (WebCore::AtomicHTMLToken::name): 106880 (WebCore::AtomicHTMLToken::setName): 106881 (WebCore::AtomicHTMLToken::getAttributeItem): 106882 (WebCore::AtomicHTMLToken::attributes): 106883 (WebCore::AtomicHTMLToken::takeAtributes): 106884 - Reduces ref-churn, and makes it possible for callers 106885 to modify attributes w/o affecting future uses of the attributes. 106886 (WebCore::AtomicHTMLToken::usesName): 106887 - Used by ASSERTS. 106888 (WebCore::AtomicHTMLToken::usesAttributes): 106889 - Used by ASSERTS. 106890 * html/HTMLTreeBuilder.cpp: 106891 (WebCore::convertToOldStyle): 106892 - Can't be const, now that we use takeAttributes() 106893 (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML): 106894 (WebCore::HTMLTreeBuilder::proesssFakeStartTag): 106895 - New function. I'm not sure this is the perfect design 106896 (I'd kinda like AtomicHTMLToken to be copyable so we can 106897 have create functions for it), but this makes the callsites 106898 using fake tokens much more readable. 106899 (WebCore::HTMLTreeBuilder::proesssFakeEndTag): 106900 (WebCore::HTMLTreeBuilder::processFakeCharacters): 106901 (WebCore::HTMLTreeBuilder::attributesForIsindexInput): 106902 (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody): 106903 (WebCore::HTMLTreeBuilder::processStartTag): 106904 (WebCore::HTMLTreeBuilder::insertScriptElement): 106905 - Use takeAttributes() for less ref-churn. 106906 (WebCore::HTMLTreeBuilder::createElement): ditto 106907 (WebCore::HTMLTreeBuilder::finished): 106908 - Remove bogus use of AtomicHTMLToken constructor which 106909 wasn't even being used now that we support emitting EOF tokens 106910 from the Tokenizer directly. 106911 * html/HTMLTreeBuilder.h: 106912 106913 2010-07-05 Adam Barth <abarth (a] webkit.org> 106914 106915 Reviewed by Eric Seidel. 106916 106917 ASSERT that we're processing the correct type of token 106918 https://bugs.webkit.org/show_bug.cgi?id=41647 106919 106920 Making these asserts work required a small (non-observable) tweak to 106921 some old code. 106922 106923 * html/HTMLTreeBuilder.cpp: 106924 (WebCore::HTMLTreeBuilder::processDoctypeToken): 106925 (WebCore::HTMLTreeBuilder::processStartTag): 106926 (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): 106927 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 106928 (WebCore::HTMLTreeBuilder::processEndTag): 106929 (WebCore::HTMLTreeBuilder::processComment): 106930 (WebCore::HTMLTreeBuilder::processCharacter): 106931 (WebCore::HTMLTreeBuilder::processEndOfFile): 106932 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 106933 106934 2010-07-05 Adam Barth <abarth (a] webkit.org> 106935 106936 Reviewed by Eric Seidel. 106937 106938 Implement in select in table 106939 https://bugs.webkit.org/show_bug.cgi?id=41646 106940 106941 This mode is mostly a fall-through to the InSelectMode. 106942 106943 * html/HTMLTreeBuilder.cpp: 106944 (WebCore::HTMLTreeBuilder::processStartTag): 106945 (WebCore::HTMLTreeBuilder::processEndTag): 106946 (WebCore::HTMLTreeBuilder::processCharacter): 106947 (WebCore::HTMLTreeBuilder::processEndOfFile): 106948 106949 2010-07-05 Adam Barth <abarth (a] webkit.org> 106950 106951 Reviewed by Eric Seidel. 106952 106953 Implement basic text node coalescing 106954 https://bugs.webkit.org/show_bug.cgi?id=41623 106955 106956 This patch isn't the end-all, be-all of text node coalescing, but it's 106957 a good start. 106958 106959 * dom/CharacterData.cpp: 106960 (WebCore::CharacterData::parserAppendData): 106961 (WebCore::CharacterData::appendData): 106962 * dom/CharacterData.h: 106963 - Added a new method to dance around mutation events. 106964 * html/HTMLTreeBuilder.cpp: 106965 (WebCore::HTMLTreeBuilder::insertTextNode): 106966 106967 2010-07-05 Adam Barth <abarth (a] webkit.org> 106968 106969 Reviewed by Eric Seidel. 106970 106971 Implement InSelectMode 106972 https://bugs.webkit.org/show_bug.cgi?id=41627 106973 106974 * html/HTMLTreeBuilder.cpp: 106975 (WebCore::HTMLTreeBuilder::processStartTag): 106976 (WebCore::HTMLTreeBuilder::processEndTag): 106977 (WebCore::HTMLTreeBuilder::processCharacter): 106978 (WebCore::HTMLTreeBuilder::processEndOfFile): 106979 106980 2010-07-05 Fady Samuel <fsamuel (a] chromium.org> 106981 106982 Reviewed by Darin Adler. 106983 106984 Fixed a svg crash when setting class of an svg ellipse object. 106985 106986 Altering the CSS class of an attached SVG element causes WebKit to crash 106987 https://bugs.webkit.org/show_bug.cgi?id=40857 106988 106989 Test: svg/css/svg-ellipse-render-crash.html 106990 106991 * dom/StyledElement.cpp: 106992 (WebCore::StyledElement::classAttributeChanged): 106993 106994 2010-07-05 Dan Bernstein <mitz (a] apple.com> 106995 106996 Reviewed by Sam Weinig. 106997 106998 Reproducible crash with Optimize Legibility extension 106999 https://bugs.webkit.org/show_bug.cgi?id=41585 107000 107001 Test: fast/css/text-rendering-priority.html 107002 107003 Moved the text-rendering CSS property to the high priority group, because applying it 107004 during style selection invalidates the font. 107005 107006 * css/CSSPropertyNames.in: Moved text-rendering to the high priority section at the top. 107007 * css/CSSStyleSelector.cpp: 107008 (WebCore::CSSStyleSelector::applyDeclarations): Updated compile-time assertion. 107009 107010 2010-07-05 Dan Bernstein <mitz (a] apple.com> 107011 107012 Reviewed by Sam Weinig. 107013 107014 optimizeLegibility doesn't play nice with fonts that do not have a space glyph 107015 https://bugs.webkit.org/show_bug.cgi?id=41599 107016 107017 No test because none of the fonts available to DumpRenderTree are missing a space glyph. 107018 107019 * rendering/RenderBlockLineLayout.cpp: 107020 (WebCore::RenderBlock::findNextLineBreak): When the font does not map the space character 107021 to a glyph, a fallback font is used for space. Therefore, wordTrailingSpaceWidth must be 107022 initialized with the width of a space as measured by the Font rather than with the cached 107023 space width. 107024 107025 2010-07-05 Eric Seidel <eric (a] webkit.org> 107026 107027 Reviewed by Adam Barth. 107028 107029 Implement HTML5's "reset insertion mode appropriately" 107030 https://bugs.webkit.org/show_bug.cgi?id=41628 107031 107032 This has some minimal testing. One from my previous 107033 </table> patch, and a few from the main suite. 107034 107035 Mostly resetInsertionModeAppropriately isn't used yet 107036 but we're about to add a bunch of states which do use it 107037 and our test coverage will expand further as we do. 107038 107039 * html/HTMLTreeBuilder.cpp: 107040 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 107041 (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd): 107042 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 107043 * html/HTMLTreeBuilder.h: 107044 107045 2010-07-04 Eric Seidel <eric (a] webkit.org> 107046 107047 Reviewed by Adam Barth. 107048 107049 Add </table> support for "in table" insertion mode 107050 https://bugs.webkit.org/show_bug.cgi?id=41591 107051 107052 resetInsertionModeAppropriately isn't implemented yet, however 107053 I've added a test for the usage I added. 107054 107055 * html/HTMLTreeBuilder.cpp: 107056 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): 107057 (WebCore::HTMLTreeBuilder::processEndTag): 107058 * html/HTMLTreeBuilder.h: 107059 107060 2010-07-05 Joseph Pecoraro <joepeck (a] webkit.org> 107061 107062 Unreviewed build fix for r62503. 107063 107064 Chromium missing method. Filed bug 41632 to track. 107065 107066 * loader/appcache/ApplicationCacheHost.h: 107067 (WebCore::ApplicationCacheHost::applicationCache): 107068 107069 2010-07-05 Joseph Pecoraro <joepeck (a] webkit.org> 107070 107071 Unreviewed build fix for r62503. 107072 107073 Missed GTK's build file. 107074 107075 * GNUmakefile.am: 107076 107077 2010-07-05 Joseph Pecoraro <joepeck (a] webkit.org> 107078 107079 Unreviewed build fix for r62503. 107080 107081 Pass a blank ResourceResponse instead of passing 0. 107082 107083 * loader/appcache/ApplicationCacheGroup.cpp: 107084 (WebCore::ApplicationCacheGroup::createResourceHandle): 107085 107086 2010-07-05 Joseph Pecoraro <joepeck (a] webkit.org> 107087 107088 Unreviewed build fix for r62503. 107089 107090 Forward declare ApplicationCache for Chromium. 107091 107092 * loader/appcache/ApplicationCacheHost.h: 107093 107094 2010-07-05 Joseph Pecoraro <joepeck (a] webkit.org> 107095 107096 Reviewed by Pavel Feldman. 107097 107098 WebInspector: HTML5 Offline Web Applications Support (ApplicationCache) 107099 https://bugs.webkit.org/show_bug.cgi?id=24529 107100 107101 Parts of this patch were written by Kavita Kanetkar <kkanetkar (a] chromium.org>. 107102 107103 Part 2: Pulling ApplicationCache Resources to Display in the Inspector. 107104 107105 The InspectorApplicationCacheAgent gathers the information it 107106 needs and forwards it on to the inspector. 107107 107108 * inspector/InspectorApplicationCacheAgent.cpp: 107109 (WebCore::InspectorApplicationCacheAgent::fillResourceList): get information about the resources. 107110 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): gathers all the information from the ApplicationCacheHost. 107111 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): 107112 (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): 107113 (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource): 107114 * inspector/InspectorApplicationCacheAgent.h: defines structures to hold information about caches and resources. 107115 (WebCore::InspectorApplicationCacheAgent::ApplicationCacheInfo::ApplicationCacheInfo): 107116 (WebCore::InspectorApplicationCacheAgent::ResourceInfo::ResourceInfo): 107117 (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent): 107118 * loader/appcache/ApplicationCacheHost.h: 107119 (WebCore::ApplicationCacheHost::applicationCacheForInspector): new convention, public cache accessor for the inspector. 107120 (WebCore::ApplicationCacheHost::documentLoader): added const. 107121 107122 The User Interface uses a DataGrid, like Cookies. 107123 107124 * inspector/front-end/ApplicationCacheItemsView.js: 107125 (WebInspector.ApplicationCacheItemsView.prototype._update): 107126 (WebInspector.ApplicationCacheItemsView.prototype._updateCallback): 107127 (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid): 107128 (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.numberCompare): 107129 (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.localeCompare): 107130 (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid): 107131 107132 The usual frontend pull workflow, except this goes through 107133 InspectorApplicationCacheAgent instead of InspectorController. 107134 107135 * inspector/InspectorBackend.cpp: 107136 (WebCore::InspectorBackend::getApplicationCaches): 107137 (WebCore::InspectorBackend::inspectorApplicationCacheAgent): 107138 * inspector/InspectorBackend.h: 107139 * inspector/InspectorBackend.idl: 107140 * inspector/InspectorFrontend.cpp: 107141 (WebCore::InspectorFrontend::didGetApplicationCaches): 107142 * inspector/InspectorFrontend.h: 107143 * inspector/front-end/DOMAgent.js: 107144 (WebInspector.DOMNode.prototype.hasChildNodes): style fix. 107145 (WebInspector.DOMAgent.prototype.nodeForId): style fix. 107146 (WebInspector.ApplicationCache.getApplicationCachesAsync): pull. 107147 (WebInspector.Cookies.getCookiesAsync): 107148 * inspector/front-end/StoragePanel.js: 107149 (WebInspector.StoragePanel.prototype.updateManifest): 107150 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect): 107151 * inspector/front-end/inspector.js: 107152 (WebInspector.updateResource): 107153 (WebInspector._addAppCacheDomain): 107154 (WebInspector.reset): 107155 107156 Miscellaneous. Localized Strings and fixes. 107157 107158 * English.lproj/localizedStrings.js: "Type", "%s (%s)" 107159 * inspector/InspectorController.cpp: 107160 (WebCore::InspectorController::deleteCookie): 107161 * inspector/InspectorController.h: 107162 107163 2010-07-04 Joseph Pecoraro <joepeck (a] webkit.org> 107164 107165 Reviewed by Pavel Feldman. 107166 107167 WebInspector: HTML5 Offline Web Applications Support (ApplicationCache) 107168 https://bugs.webkit.org/show_bug.cgi?id=24529 107169 107170 Part 1: Backend -> Frontend Messages. ApplicationCache Status and Connectivity Status. 107171 107172 This patch adds an InspectorApplicationCacheAgent to monitor application 107173 cache changes, starts a UI in the Storage panel, handles the boilerplate 107174 of adding new files. 107175 107176 Added an agent to encapsulate and handle the application cache logic. 107177 This is similar to the timeline agent. 107178 107179 * inspector/InspectorApplicationCacheAgent.cpp: Added. 107180 (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent): 107181 (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent): 107182 (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse): 107183 (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus): 107184 (WebCore::InspectorApplicationCacheAgent::updateNetworkState): 107185 * inspector/InspectorApplicationCacheAgent.h: Added. 107186 107187 InspectorController owns an InspectorApplicationCacheAgent. This 107188 handles its lifetime management. 107189 107190 * inspector/InspectorController.cpp: 107191 (WebCore::InspectorController::~InspectorController): 107192 (WebCore::InspectorController::connectFrontend): create the agent with a frontend. 107193 (WebCore::InspectorController::disconnectFrontend): remove the agent when closing. 107194 (WebCore::InspectorController::releaseFrontendLifetimeAgents): 107195 * inspector/InspectorController.h: 107196 107197 User Interface for ApplicationCache in the StoragePanel. This follows 107198 very closely to Cookies, it will have a sortable table of items. The 107199 status bar contains connectivity and application cache status 107200 indicators which update when backend messages are received. There 107201 are some stubs which the next part will implement. 107202 107203 * inspector/front-end/ApplicationCacheItemsView.js: Added. 107204 (WebInspector.ApplicationCacheItemsView): 107205 (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems): refresh, delete, connectivity, application cache status. 107206 (WebInspector.ApplicationCacheItemsView.prototype.show): 107207 (WebInspector.ApplicationCacheItemsView.prototype.hide): 107208 (WebInspector.ApplicationCacheItemsView.prototype.updateStatus): this is the application cache status indicator. 107209 (WebInspector.ApplicationCacheItemsView.prototype.updateNetworkState): this is the online/offline connectivity indicator. 107210 (WebInspector.ApplicationCacheItemsView.prototype._update): 107211 (WebInspector.ApplicationCacheItemsView.prototype._updateCallback): 107212 (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid): 107213 (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid): 107214 (WebInspector.ApplicationCacheItemsView.prototype.resize): 107215 (WebInspector.ApplicationCacheItemsView.prototype._deleteButtonClicked): 107216 (WebInspector.ApplicationCacheItemsView.prototype._deleteCallback): 107217 (WebInspector.ApplicationCacheItemsView.prototype._refreshButtonClicked): 107218 107219 The usual dispatch flow from the backend, to the frontend, to the 107220 panel, and then to the visible view. Some slight refactoring to 107221 eliminate duplicated code. 107222 107223 * inspector/InspectorFrontend.cpp: 107224 (WebCore::InspectorFrontend::updateDOMStorage): 107225 (WebCore::InspectorFrontend::didGetApplicationCaches): 107226 (WebCore::InspectorFrontend::updateApplicationCacheStatus): 107227 * inspector/InspectorFrontend.h: 107228 * inspector/front-end/StoragePanel.js: 107229 (WebInspector.StoragePanel): 107230 (WebInspector.StoragePanel.prototype.reset): 107231 (WebInspector.StoragePanel.prototype.addApplicationCache): 107232 (WebInspector.StoragePanel.prototype.showDatabase): 107233 (WebInspector.StoragePanel.prototype.showDOMStorage): 107234 (WebInspector.StoragePanel.prototype.showCookies): 107235 (WebInspector.StoragePanel.prototype.showApplicationCache): 107236 (WebInspector.StoragePanel.prototype._genericViewSetup): 107237 (WebInspector.StoragePanel.prototype.updateApplicationCacheStatus): 107238 (WebInspector.StoragePanel.prototype.updateNetworkState): 107239 (WebInspector.CookieSidebarTreeElement.prototype.set subtitle): 107240 (WebInspector.ApplicationCacheSidebarTreeElement): 107241 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect): 107242 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get mainTitle): 107243 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set mainTitle): 107244 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get subtitle): 107245 (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set subtitle): 107246 * inspector/front-end/inspector.js: 107247 (WebInspector.dispatch.delayDispatch): 107248 (WebInspector.dispatch): 107249 (WebInspector._addAppCacheDomain): 107250 (WebInspector.addDOMStorage): 107251 (WebInspector.updateDOMStorage): 107252 107253 Notify the InspectorApplicationCacheAgent on application cache changes 107254 or specifics. Notify the InspectorController on generic resource events. 107255 That is because ApplicationCacheController is a ResourceClient and needs 107256 to trigger the resource events normally handled by ResourceLoader. 107257 107258 * loader/appcache/ApplicationCacheGroup.cpp: 107259 (WebCore::inspectorUpdateApplicationCacheStatus): helper method to prevent duplicated code. 107260 (WebCore::ApplicationCacheGroup::setNewestCache): status change. 107261 (WebCore::ApplicationCacheGroup::makeObsolete): status change. 107262 (WebCore::ApplicationCacheGroup::update): status change. 107263 (WebCore::ApplicationCacheGroup::createResourceHandle): resource event. 107264 (WebCore::ApplicationCacheGroup::willSendRequest): resource event. 107265 (WebCore::ApplicationCacheGroup::didReceiveResponse): resource event. 107266 (WebCore::ApplicationCacheGroup::didReceiveData): resource event. 107267 (WebCore::ApplicationCacheGroup::didFinishLoading): resource event. 107268 (WebCore::ApplicationCacheGroup::didFail): resource event. 107269 (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): resource event. 107270 (WebCore::ApplicationCacheGroup::manifestNotFound): status change. 107271 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): status change. 107272 (WebCore::ApplicationCacheGroup::setUpdateStatus): single access point for status changes. 107273 * loader/appcache/ApplicationCacheGroup.h: 107274 * page/Page.cpp: 107275 (WebCore::networkStateChanged): connectivity status change. 107276 107277 Final inspector details to add the new file, style new elements, 107278 images, and localized strings. 107279 107280 * inspector/front-end/inspector.css: 107281 (.application-cache-sidebar-tree-item .icon): 107282 (.timeline-records-counter, .storage-application-cache-status, .storage-application-cache-connectivity): 107283 (.storage-application-cache-status-icon, .storage-application-cache-connectivity-icon): 107284 (.status-bar-divider): 107285 (.storage-application-cache-status, .storage-application-cache-connectivity): 107286 * inspector/front-end/inspector.html: 107287 * inspector/front-end/Images/applicationCache.png: Added. 107288 * English.lproj/localizedStrings.js: "APPLICATION CACHE", "No Application Cache information available.", "Online", "Offline" 107289 107290 Updated build files. 107291 107292 * CMakeLists.txt: 107293 * WebCore.gypi: 107294 * WebCore.pro: 107295 * WebCore.vcproj/WebCore.vcproj: 107296 * WebCore.xcodeproj/project.pbxproj: 107297 * inspector/front-end/WebKit.qrc: 107298 107299 2010-07-05 Eric Seidel <eric (a] webkit.org> 107300 107301 Reviewed by Adam Barth. 107302 107303 Add basic <col> support to the treebuilder 107304 https://bugs.webkit.org/show_bug.cgi?id=41590 107305 107306 * html/HTMLTreeBuilder.cpp: 107307 (WebCore::HTMLTreeBuilder::processStartTag): 107308 107309 2010-07-05 Eric Seidel <eric (a] webkit.org> 107310 107311 Reviewed by Adam Barth. 107312 107313 Add basic "in row" mode to support <td> and <th> insertion 107314 https://bugs.webkit.org/show_bug.cgi?id=41588 107315 107316 Also fixed <td> or <th> as a direct child of <table>. 107317 107318 Most of this was covered by html5lib/runner.html tests, 107319 but I had to add a new tables01.dat to cover the <th> cases. 107320 107321 * html/HTMLElementStack.cpp: 107322 (WebCore::HTMLNames::isTableRowScopeMarker): 107323 (WebCore::HTMLElementStack::popUntilTableRowScopeMarker): 107324 * html/HTMLElementStack.h: 107325 * html/HTMLTreeBuilder.cpp: 107326 (WebCore::HTMLTreeBuilder::processStartTag): 107327 107328 2010-07-05 Eric Seidel <eric (a] webkit.org> 107329 107330 Reviewed by Adam Barth. 107331 107332 Finish implementing "any other end tag" for "in body" mode 107333 https://bugs.webkit.org/show_bug.cgi?id=41582 107334 107335 I believe I found a "bug" in the HTML5 spec when writing this: 107336 http://www.w3.org/Bugs/Public/show_bug.cgi?id=10080 107337 107338 * html/HTMLTreeBuilder.cpp: 107339 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody): 107340 (WebCore::HTMLTreeBuilder::processEndTag): 107341 * html/HTMLTreeBuilder.h: 107342 107343 2010-07-05 Martin Robinson <mrobinson (a] igalia.com> 107344 107345 Unreviewed. 107346 107347 Add a missing slash to the list of generated sources. This 107348 was missing from a previous build fix. 107349 107350 * GNUmakefile.am: 107351 107352 2010-07-05 Pavel Feldman <pfeldman (a] chromium.org> 107353 107354 Reviewed by Joseph Pecoraro. 107355 107356 Web Inspector: preserve scroll positions in source frame when switching between panes. 107357 107358 https://bugs.webkit.org/show_bug.cgi?id=41620 107359 107360 * inspector/front-end/ScriptsPanel.js: 107361 (WebInspector.ScriptsPanel.prototype.hide): 107362 * inspector/front-end/SourceFrame.js: 107363 (WebInspector.SourceFrame.prototype.set visible): 107364 * inspector/front-end/SourceView.js: 107365 (WebInspector.SourceView.prototype.hide): 107366 107367 2010-07-05 Rob Buis <rwlbuis (a] gmail.com> 107368 107369 Reviewed by Dirk Schulze. 107370 107371 IE SVG test fails 107372 https://bugs.webkit.org/show_bug.cgi?id=41619 107373 107374 Make SVGSVGElement.createSVGTransform create a SVGTransform with the 107375 right type, thereby fixing the IE test. 107376 107377 Test: svg/custom/svg-createsvgtransform-type.html 107378 107379 * svg/SVGSVGElement.cpp: 107380 (WebCore::SVGSVGElement::createSVGTransform): 107381 107382 2010-07-05 Pavel Feldman <pfeldman (a] chromium.org> 107383 107384 Reviewed by Yury Semikhatsky. 107385 107386 Web Inspector: computed style pane is not updated when styles pane is collapsed. 107387 107388 https://bugs.webkit.org/show_bug.cgi?id=41615 107389 107390 * inspector/front-end/ElementsPanel.js: 107391 (WebInspector.ElementsPanel.prototype.updateStyles): 107392 107393 2010-07-05 Nikolas Zimmermann <nzimmermann (a] rim.com> 107394 107395 Reviewed by Dirk Schulze. 107396 107397 Logic to track whether elements are using relative lengths is incomplete 107398 https://bugs.webkit.org/show_bug.cgi?id=41566 107399 107400 Add logic to all SVG elements which create renderes to expose a method 107401 "bool selfHasRelativeLengths()", that returns whether the element uses relative 107402 lengths (eg. <rect x="50%"...). This will be used soon to avoid relayouts of 107403 container children, when the bounds have not changed. 107404 107405 A new method SVGStyledElement::updateRelativeLengthsInformation() is added, 107406 which is called from the various svgAttributeChanged() methods and insertedIntoDocument/removedFromDocument. 107407 It will be implemented in a follow-up patch. This patch does not affect any test behaviour related 107408 to relayouting. As SVGFilterElement finally got a proper svgAttributeChanged() method, it now 107409 properly invalidates clients on attribute changes - covered by a new test. 107410 107411 Tests: svg/custom/relative-sized-inner-svg.xhtml 107412 svg/custom/relative-sized-use-without-attributes-on-symbol.xhtml 107413 svg/filters/filter-width-update.svg 107414 107415 * rendering/RenderPath.cpp: 107416 (WebCore::RenderPath::layout): Rename hasRelativeValues to hasRelativeLengths. 107417 * rendering/RenderSVGRoot.cpp: 107418 (WebCore::RenderSVGRoot::layout): Ditto. 107419 (WebCore::RenderSVGRoot::calcViewport): Ditto. 107420 * rendering/RenderSVGViewportContainer.cpp: 107421 (WebCore::RenderSVGViewportContainer::calcViewport): Ditto 107422 * rendering/SVGRenderSupport.cpp: 107423 (WebCore::SVGRenderSupport::layoutChildren): Ditto. 107424 * svg/SVGCircleElement.cpp: 107425 (WebCore::SVGCircleElement::svgAttributeChanged): Call updateRelativeLengthsInformation() if any attribute which may contain relative lengths changes. 107426 (WebCore::SVGCircleElement::selfHasRelativeLengths): Ditto. Same for all other SVG*Elements below. 107427 * svg/SVGCircleElement.h: 107428 * svg/SVGEllipseElement.cpp: 107429 (WebCore::SVGEllipseElement::svgAttributeChanged): 107430 (WebCore::SVGEllipseElement::selfHasRelativeLengths): 107431 * svg/SVGEllipseElement.h: 107432 * svg/SVGFilterElement.cpp: 107433 (WebCore::SVGFilterElement::svgAttributeChanged): 107434 (WebCore::SVGFilterElement::selfHasRelativeLengths): 107435 * svg/SVGFilterElement.h: 107436 * svg/SVGForeignObjectElement.cpp: 107437 (WebCore::SVGForeignObjectElement::svgAttributeChanged): 107438 (WebCore::SVGForeignObjectElement::selfHasRelativeLengths): 107439 * svg/SVGForeignObjectElement.h: 107440 * svg/SVGImageElement.cpp: 107441 (WebCore::SVGImageElement::svgAttributeChanged): 107442 (WebCore::SVGImageElement::selfHasRelativeLengths): 107443 * svg/SVGImageElement.h: 107444 * svg/SVGLineElement.cpp: 107445 (WebCore::SVGLineElement::svgAttributeChanged): 107446 (WebCore::SVGLineElement::selfHasRelativeLengths): 107447 * svg/SVGLineElement.h: 107448 * svg/SVGLinearGradientElement.cpp: 107449 (WebCore::SVGLinearGradientElement::svgAttributeChanged): 107450 (WebCore::SVGLinearGradientElement::selfHasRelativeLengths): 107451 * svg/SVGLinearGradientElement.h: 107452 * svg/SVGMarkerElement.cpp: 107453 (WebCore::SVGMarkerElement::svgAttributeChanged): 107454 (WebCore::SVGMarkerElement::selfHasRelativeLengths): 107455 * svg/SVGMarkerElement.h: 107456 * svg/SVGMaskElement.cpp: 107457 (WebCore::SVGMaskElement::svgAttributeChanged): 107458 (WebCore::SVGMaskElement::selfHasRelativeLengths): 107459 * svg/SVGMaskElement.h: 107460 * svg/SVGPatternElement.cpp: 107461 (WebCore::SVGPatternElement::svgAttributeChanged): 107462 (WebCore::SVGPatternElement::selfHasRelativeLengths): 107463 * svg/SVGPatternElement.h: 107464 * svg/SVGRadialGradientElement.cpp: 107465 (WebCore::SVGRadialGradientElement::svgAttributeChanged): 107466 (WebCore::SVGRadialGradientElement::selfHasRelativeLengths): 107467 * svg/SVGRadialGradientElement.h: 107468 * svg/SVGRectElement.cpp: 107469 (WebCore::SVGRectElement::svgAttributeChanged): 107470 (WebCore::SVGRectElement::selfHasRelativeLengths): 107471 * svg/SVGRectElement.h: 107472 * svg/SVGSVGElement.cpp: 107473 (WebCore::SVGSVGElement::svgAttributeChanged): 107474 (WebCore::SVGSVGElement::selfHasRelativeLengths): 107475 * svg/SVGSVGElement.h: 107476 * svg/SVGStyledElement.cpp: 107477 (WebCore::SVGStyledElement::insertedIntoDocument): Call updateRelativeLengthsInformation(). 107478 (WebCore::SVGStyledElement::removedFromDocument): Ditto. 107479 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Not implemented so far. Will land in a follow-up patch, together with the render tree changes. 107480 * svg/SVGStyledElement.h: 107481 (WebCore::SVGStyledElement::hasRelativeLengths): Devirtualized. For now, just call selfHasRelativeLengths() - this will change in a follow-up patch. 107482 (WebCore::SVGStyledElement::updateRelativeLengthsInformation): 107483 (WebCore::SVGStyledElement::selfHasRelativeLengths): Renamed from hasRelativeValues(). 107484 * svg/SVGSymbolElement.cpp: 107485 (WebCore::SVGSymbolElement::svgAttributeChanged): 107486 (WebCore::SVGSymbolElement::selfHasRelativeLengths): 107487 * svg/SVGSymbolElement.h: 107488 * svg/SVGTextContentElement.cpp: 107489 (WebCore::SVGTextContentElement::selfHasRelativeLengths): 107490 * svg/SVGTextContentElement.h: 107491 * svg/SVGTextPathElement.cpp: 107492 (WebCore::SVGTextPathElement::svgAttributeChanged): 107493 (WebCore::SVGTextPathElement::insertedIntoDocument): Call right base class' method. Skipped one in the hierachy before. 107494 (WebCore::SVGTextPathElement::selfHasRelativeLengths): 107495 * svg/SVGTextPathElement.h: 107496 * svg/SVGTextPositioningElement.cpp: 107497 (WebCore::SVGTextPositioningElement::svgAttributeChanged): 107498 (WebCore::listContainsRelativeValue): New helper funtion that checks wheter a SVGLengthList contains relative lengths. 107499 (WebCore::SVGTextPositioningElement::selfHasRelativeLengths): 107500 * svg/SVGTextPositioningElement.h: 107501 * svg/SVGUseElement.cpp: 107502 (WebCore::SVGUseElement::insertedIntoDocument): Call right base class' method. Skipped on in the hierachy before. 107503 (WebCore::SVGUseElement::removedFromDocument): Ditto. 107504 (WebCore::SVGUseElement::svgAttributeChanged): 107505 (WebCore::SVGUseElement::buildShadowAndInstanceTree): Call updateRelativeLengthsInformation() after building the shadow tree. 107506 (WebCore::SVGUseElement::selfHasRelativeLengths): Same as all other methods, except that it includes the shadow tree root element. 107507 * svg/SVGUseElement.h: 107508 107509 2010-07-05 Pavel Feldman <pfeldman (a] chromium.org> 107510 107511 Reviewed by Yury Semikhatsky. 107512 107513 Web Inspector: Problem with copying a code from Scripts panel. 107514 107515 https://bugs.webkit.org/show_bug.cgi?id=40432 107516 107517 * inspector/front-end/TextViewer.js: 107518 (WebInspector.TextViewer.prototype._getSelection): 107519 (WebInspector.TextViewer.prototype._selectionToPosition): 107520 107521 2010-07-05 Nikolas Zimmermann <nzimmermann (a] rim.com> 107522 107523 Reviewed by Dirk Schulze / Darin Adler. 107524 107525 Node.cloneNode does not work on SVG nodes 107526 https://bugs.webkit.org/show_bug.cgi?id=41421 107527 107528 Be sure to synchronize animated SVG properties before checking whether NamedNodeMap exists. 107529 When creating a SVG element from JS, and setting all attributes via SVG DOM, and not using setAttribute 107530 the NamedNodeMap does not exist. When cloning such an element, be sure to synchronize SVG <-> XML DOM 107531 attributes before attempting to clone, otherwhise the SVG animated properties are lost while cloning. 107532 107533 Test: svg/custom/clone-element-with-animated-svg-properties.html 107534 107535 * dom/Element.cpp: 107536 (WebCore::Element::cloneElementWithoutChildren): 107537 107538 2010-07-05 Antti Koivisto <koivisto (a] iki.fi> 107539 107540 Revert unplanned project file change. 107541 107542 * WebCore.pri: 107543 * WebCore.pro: 107544 107545 2010-07-05 Nikolas Zimmermann <nzimmermann (a] rim.com> 107546 107547 Reviewed by Darin Adler. 107548 107549 Memory corruption with SVG <use> element 107550 https://bugs.webkit.org/show_bug.cgi?id=40994 107551 107552 Fix race condition in svgAttributeChanged. Never call svgAttributeChanged() from attributeChanged() 107553 when we're synchronizing SVG attributes. It leads to either unnecessary extra work being done or 107554 crashes. Especially together with <polyline>/<polygon> which always synchronize the SVGAnimatedPoints 107555 datastructure with the points attribute, no matter if there are changes are not. This should be 107556 furhter optimized, but this fix is sane and fixes the root of the evil races. 107557 107558 Test: svg/custom/use-property-synchronization-crash.svg 107559 107560 * svg/SVGElement.cpp: 107561 (WebCore::SVGElement::attributeChanged): 107562 107563 2010-07-05 Yury Semikhatsky <yurys (a] chromium.org> 107564 107565 Reviewed by Pavel Feldman. 107566 107567 [v8] Web Inspector: remove v8-specific code dealing with getOwnPropertyNames from InjectedScript.js 107568 https://bugs.webkit.org/show_bug.cgi?id=41595 107569 107570 * inspector/front-end/InjectedScript.js: 107571 (injectedScriptConstructor): 107572 107573 2010-07-04 Rob Buis <rwlbuis (a] gmail.com> 107574 107575 Reviewed by Dirk Schulze. 107576 107577 SVG polygons should draw polygons up to the first parsing error 107578 https://bugs.webkit.org/show_bug.cgi?id=41140 107579 107580 Render polygons up until the first parsing error. 107581 107582 Test: svg/custom/poly-parsing-error.html 107583 107584 * svg/SVGPolyElement.cpp: 107585 (WebCore::SVGPolyElement::parseMappedAttribute): 107586 107587 2010-07-04 Alice Liu <alice.liu (a] apple.com> 107588 107589 Reviewed by Dan Bernstein. 107590 107591 Crash reading past end of block in UniscribeController::shapeAndPlaceItem 107592 https://bugs.webkit.org/show_bug.cgi?id=41554 107593 107594 Test: platform/win/fast/text/uniscribe-item-boundary-crash.html 107595 107596 * platform/graphics/win/UniscribeController.cpp: 107597 (WebCore::UniscribeController::shapeAndPlaceItem): 107598 Don't look one past the end of str. Instead look to the next item, if applicable. 107599 107600 2010-07-04 Eric Seidel <eric (a] webkit.org> 107601 107602 Reviewed by Adam Barth. 107603 107604 Add basic "in table body" mode to support <tr> insertion 107605 https://bugs.webkit.org/show_bug.cgi?id=41587 107606 107607 This also adds a (currently untestable?) 107608 popUntilTableBodyScopeMarker code path. 107609 Any tags which would be between a tbody a <tr> would end up 107610 foster parented outside the <table>. I think the spec was 107611 just being over-cautious with popUntilTableBodyScopeMarker. 107612 107613 * html/HTMLElementStack.cpp: 107614 (WebCore::HTMLNames::isTableScopeMarker): 107615 (WebCore::HTMLNames::isTableBodyScopeMarker): 107616 (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker): 107617 * html/HTMLElementStack.h: 107618 * html/HTMLTreeBuilder.cpp: 107619 (WebCore::HTMLTreeBuilder::processStartTag): 107620 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 107621 107622 2010-07-04 Anders Carlsson <andersca (a] apple.com> 107623 107624 Fix Windows build. 107625 107626 * WebCore.vcproj/WebCore.vcproj: 107627 107628 2010-07-04 Eric Seidel <eric (a] webkit.org> 107629 107630 Reviewed by Adam Barth. 107631 107632 HTMLTreeBuilder needs an adoption agency 107633 https://bugs.webkit.org/show_bug.cgi?id=41453 107634 107635 Fix Qt Minimal build. SVGNames.h should always 107636 be generated, even when SVG is off, however that's 107637 not how things currently work. 107638 107639 * html/HTMLTreeBuilder.cpp: 107640 107641 2010-07-04 Eric Seidel <eric (a] webkit.org> 107642 107643 Reviewed by Adam Barth. 107644 107645 Add a very basic InTable insertion mode 107646 https://bugs.webkit.org/show_bug.cgi?id=41581 107647 107648 There is still a bunch of low-hanging fruit left for this 107649 mode, but even this most-basic support lets us pass 6 more tests. :) 107650 107651 It's a progression, ship it! :) 107652 107653 * html/HTMLElementStack.cpp: 107654 (WebCore::HTMLNames::isScopeMarker): 107655 (WebCore::HTMLNames::isListItemScopeMarker): 107656 (WebCore::HTMLNames::isTableScopeMarker): 107657 (WebCore::HTMLElementStack::popUntilTableScopeMarker): 107658 * html/HTMLElementStack.h: 107659 * html/HTMLFormattingElementList.cpp: 107660 (WebCore::HTMLFormattingElementList::appendMarker): 107661 * html/HTMLFormattingElementList.h: 107662 * html/HTMLTreeBuilder.cpp: 107663 (WebCore::HTMLTreeBuilder::processStartTag): 107664 * html/HTMLTreeBuilder.h: 107665 107666 2010-07-01 Eric Seidel <eric (a] webkit.org> 107667 107668 Reviewed by Adam Barth. 107669 107670 HTMLTreeBuilder needs an adoption agency 107671 https://bugs.webkit.org/show_bug.cgi?id=41453 107672 107673 This changes some test results, but only makes the simplest 107674 adoption agency cases pass. I think the code is likely 107675 very close, but further iteration to make this change larger 107676 seems counter-productive. I recommend we check in this 107677 progression and work from here. 107678 107679 * dom/ContainerNode.cpp: 107680 (WebCore::ContainerNode::addChildCommon): 107681 - Make sure callers don't assume this will reparent. 107682 (WebCore::ContainerNode::parserAddChild): 107683 - Update comment to document lack of reparenting behavior. 107684 * html/HTMLElementStack.cpp: 107685 (WebCore::HTMLElementStack::ElementRecord::ElementRecord): 107686 (WebCore::HTMLElementStack::ElementRecord::~ElementRecord): 107687 (WebCore::HTMLElementStack::ElementRecord::replaceElement): 107688 (WebCore::HTMLElementStack::ElementRecord::isAbove): 107689 - Added for debugging. 107690 (WebCore::HTMLElementStack::pushHTMLHtmlElement): 107691 (WebCore::HTMLElementStack::insertAbove): 107692 - Needed for the adoption agency. 107693 (WebCore::HTMLElementStack::topRecord): 107694 (WebCore::HTMLElementStack::bottom): 107695 (WebCore::HTMLElementStack::removeHTMLHeadElement): 107696 (WebCore::HTMLElementStack::remove): 107697 (WebCore::HTMLElementStack::find): 107698 (WebCore::HTMLElementStack::topmost): 107699 (WebCore::HTMLElementStack::contains): 107700 (WebCore::HTMLElementStack::htmlElement): 107701 (WebCore::HTMLElementStack::headElement): 107702 (WebCore::HTMLElementStack::bodyElement): 107703 (WebCore::HTMLElementStack::pushCommon): 107704 (WebCore::HTMLElementStack::removeNonTopCommon): 107705 - Fix the name to match top/bottom. 107706 * html/HTMLElementStack.h: 107707 (WebCore::HTMLElementStack::ElementRecord::element): 107708 (WebCore::HTMLElementStack::ElementRecord::next): 107709 (WebCore::HTMLElementStack::ElementRecord::releaseNext): 107710 (WebCore::HTMLElementStack::ElementRecord::setNext): 107711 * html/HTMLFormattingElementList.cpp: 107712 (WebCore::HTMLFormattingElementList::closestElementInScopeWithName): 107713 (WebCore::HTMLFormattingElementList::contains): 107714 (WebCore::HTMLFormattingElementList::find): 107715 (WebCore::HTMLFormattingElementList::remove): 107716 * html/HTMLFormattingElementList.h: 107717 (WebCore::HTMLFormattingElementList::isEmpty): 107718 (WebCore::HTMLFormattingElementList::size): 107719 * html/HTMLTreeBuilder.cpp: 107720 (WebCore::HTMLTreeBuilder::processStartTag): 107721 (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement): 107722 - Part of the Adoption Agency algorithm. 107723 (WebCore::HTMLTreeBuilder::findFosterParentFor): 107724 - Used to move mis-nested content out of tables. 107725 This doesn't seem to work quite right yet. 107726 (WebCore::HTMLTreeBuilder::reparentChildren): 107727 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 107728 - The ridiculously long/complicated adoption agency algorithm from HTML5. 107729 (WebCore::HTMLTreeBuilder::processEndTag): 107730 * html/HTMLTreeBuilder.h: 107731 107732 2010-07-04 Justin Schuh <jschuh (a] chromium.org> 107733 107734 Reviewed by Darin Adler. 107735 107736 Remove custom src bindings for HTMLFrameElement and HTMLIFrameElement 107737 https://bugs.webkit.org/show_bug.cgi?id=41578 107738 107739 Remove bindings obsoleted by: http://trac.webkit.org/changeset/59866 107740 No new tests because behavior is not changed. 107741 107742 * Android.jscbindings.mk: 107743 * Android.v8bindings.mk: 107744 * CMakeLists.txt: 107745 * GNUmakefile.am: 107746 * WebCore.gypi: 107747 * WebCore.pro: 107748 * WebCore.vcproj/WebCore.vcproj: 107749 * WebCore.xcodeproj/project.pbxproj: 107750 * bindings/js/JSBindingsAllInOne.cpp: 107751 * bindings/js/JSHTMLFrameElementCustom.cpp: 107752 * bindings/js/JSHTMLIFrameElementCustom.cpp: Removed. 107753 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: 107754 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Removed. 107755 * html/HTMLFrameElement.idl: 107756 * html/HTMLIFrameElement.idl: 107757 107758 2010-07-03 Adam Barth <abarth (a] webkit.org> 107759 107760 Reviewed by Maciej Stachowiak. 107761 107762 Implement AfterAfterFramesetMode 107763 https://bugs.webkit.org/show_bug.cgi?id=41561 107764 107765 This mode is almost unobservable. The main way to observe it seems to 107766 be seeing where comment nodes get attached to the DOM. 107767 107768 * html/HTMLTreeBuilder.cpp: 107769 (WebCore::HTMLTreeBuilder::processStartTag): 107770 (WebCore::HTMLTreeBuilder::processEndTag): 107771 (WebCore::HTMLTreeBuilder::processComment): 107772 (WebCore::HTMLTreeBuilder::processCharacter): 107773 (WebCore::HTMLTreeBuilder::processEndOfFile): 107774 107775 2010-07-03 Zhenyao Mo <zmo (a] google.com> 107776 107777 Reviewed by Dimitri Glazkov. 107778 107779 WebGLRenderingContext::vertexAttrib* leads to possible out-of-range vector member visit 107780 https://bugs.webkit.org/show_bug.cgi?id=41572 107781 107782 * html/canvas/WebGLRenderingContext.cpp: Fix the out-of-range vector member visit, also refactor the code. 107783 (WebCore::WebGLRenderingContext::vertexAttrib1f): 107784 (WebCore::WebGLRenderingContext::vertexAttrib1fv): 107785 (WebCore::WebGLRenderingContext::vertexAttrib2f): 107786 (WebCore::WebGLRenderingContext::vertexAttrib2fv): 107787 (WebCore::WebGLRenderingContext::vertexAttrib3f): 107788 (WebCore::WebGLRenderingContext::vertexAttrib3fv): 107789 (WebCore::WebGLRenderingContext::vertexAttrib4f): 107790 (WebCore::WebGLRenderingContext::vertexAttrib4fv): 107791 (WebCore::WebGLRenderingContext::vertexAttribfImpl): 107792 (WebCore::WebGLRenderingContext::vertexAttribfvImpl): 107793 * html/canvas/WebGLRenderingContext.h: Helper function declaration. 107794 107795 2010-07-03 Jeremy Orlow <jorlow (a] chromium.org> 107796 107797 Ugh. Have to put the destructor in the .h file since the .ccp isn't compiled yet. 107798 107799 * storage/IDBKey.h: 107800 (WebCore::IDBKey::~IDBKey): 107801 107802 2010-07-03 Jeremy Orlow <jorlow (a] chromium.org> 107803 107804 Build fix. Forgot destructor. 107805 107806 * storage/IDBKey.cpp: 107807 (WebCore::IDBKey::~IDBKey): 107808 107809 2010-06-26 Jeremy Orlow <jorlow (a] chromium.org> 107810 107811 Reviewed by Dumitru Daniliuc. 107812 107813 Support for keys and in-memory storage for IndexedDB 107814 https://bugs.webkit.org/show_bug.cgi?id=41252 107815 107816 It'll take some time to get data persistence working for IndexedDB, 107817 so until then, we'll just store everything in an in memory tree. 107818 The tree uses WTF::AVLTree and is a template so that it can be used by 107819 object stores (IDBKey -> SerializedScriptValue) and indexes (IDBKey -> 107820 IDBKey). This class will be used in a subsequent patch. 107821 107822 Also add an IDBKey type that represents one of these keys. We use a 107823 custom toJS function in a way similar to IDBAny to convert from WebCore 107824 to a JS value. For converting the other way, we have to teach the code 107825 generators what to do (unfortunately). This is done in a way similar 107826 to serialized script value. Unlike serialized script value, IDBKey is 107827 in WebCore and only a helper function is JS engine specific. 107828 107829 This code is not accessable from layout tests. (Will fix in 107830 https://bugs.webkit.org/show_bug.cgi?id=41250) The bindings tests 107831 show us that the generated bindings are what we expect. 107832 107833 * ForwardingHeaders/wtf/AVLTree.h: Added. 107834 * bindings/js/IDBBindingUtilities.cpp: Added. 107835 (WebCore::createIDBKeyFromValue): 107836 * bindings/js/IDBBindingUtilities.h: Added. 107837 * bindings/js/JSIDBKeyCustom.cpp: Added. 107838 (WebCore::toJS): 107839 * bindings/scripts/CodeGeneratorJS.pm: 107840 * bindings/scripts/CodeGeneratorV8.pm: 107841 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 107842 (WebDOMTestObj::idbKey): 107843 * bindings/scripts/test/CPP/WebDOMTestObj.h: 107844 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 107845 (webkit_dom_test_obj_idb_key): 107846 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 107847 * bindings/scripts/test/JS/JSTestObj.cpp: 107848 (WebCore::): 107849 (WebCore::jsTestObjPrototypeFunctionIdbKey): 107850 * bindings/scripts/test/JS/JSTestObj.h: 107851 * bindings/scripts/test/ObjC/DOMTestObj.h: 107852 * bindings/scripts/test/ObjC/DOMTestObj.mm: 107853 (-[DOMTestObj idbKey:]): 107854 * bindings/scripts/test/TestObj.idl: 107855 * bindings/scripts/test/V8/V8TestObj.cpp: 107856 (WebCore::TestObjInternal::idbKeyCallback): 107857 (WebCore::): 107858 * bindings/v8/IDBBindingUtilities.cpp: Added. 107859 (WebCore::createIDBKeyFromValue): 107860 * bindings/v8/IDBBindingUtilities.h: Added. 107861 * bindings/v8/custom/V8IDBKeyCustom.cpp: Added. 107862 (WebCore::toV8): 107863 * storage/IDBCallbacks.h: 107864 * storage/IDBKey.cpp: Added. 107865 (WebCore::IDBKey::IDBKey): 107866 (WebCore::IDBKey::~IDBKey): 107867 * storage/IDBKey.h: Added. 107868 (WebCore::IDBKey::create): 107869 (WebCore::IDBKey::): 107870 (WebCore::IDBKey::type): 107871 (WebCore::IDBKey::string): 107872 (WebCore::IDBKey::number): 107873 * storage/IDBKey.idl: Added. 107874 * storage/IDBKeyTree.h: Added. 107875 (WebCore::IDBKeyTree::create): 107876 (WebCore::IDBKeyTree::AVLTreeAbstractor::get_less): 107877 (WebCore::IDBKeyTree::AVLTreeAbstractor::set_less): 107878 (WebCore::IDBKeyTree::AVLTreeAbstractor::get_greater): 107879 (WebCore::IDBKeyTree::AVLTreeAbstractor::set_greater): 107880 (WebCore::IDBKeyTree::AVLTreeAbstractor::get_balance_factor): 107881 (WebCore::IDBKeyTree::AVLTreeAbstractor::set_balance_factor): 107882 (WebCore::IDBKeyTree::AVLTreeAbstractor::null): 107883 (WebCore::IDBKeyTree::AVLTreeAbstractor::compare_key_node): 107884 (WebCore::IDBKeyTree::AVLTreeAbstractor::compare_node_node): 107885 (WebCore::::IDBKeyTree): 107886 (WebCore::::~IDBKeyTree): 107887 (WebCore::::AVLTreeAbstractor::compare_key_key): 107888 (WebCore::::get): 107889 (WebCore::::insert): 107890 (WebCore::::remove): 107891 107892 2010-07-03 Jon Honeycutt <jhoneycutt (a] apple.com> 107893 107894 The missing plug-in indicator should be clickable 107895 107896 https://bugs.webkit.org/show_bug.cgi?id=41550 107897 <rdar://problem/8132162> 107898 107899 From an original patch by Kevin Decker. 107900 107901 Reviewed by Darin Adler. 107902 107903 * html/HTMLPlugInElement.cpp: 107904 (WebCore::HTMLPlugInElement::defaultEventHandler): 107905 If the renderer is a RenderEmbeddedWidget showing the missing plug-in 107906 indicator, and the event is a click even, call the ChromeClient's 107907 missingPluginButtonClicked() function. 107908 107909 * page/ChromeClient.h: 107910 (WebCore::ChromeClient::missingPluginButtonClicked): 107911 Declare missingPluginButtonClicked(), and stub the default 107912 implementation. 107913 107914 * rendering/RenderEmbeddedObject.cpp: 107915 (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): 107916 Initialize m_showsMissingPluginIndicator. 107917 (WebCore::RenderEmbeddedObject::setShowsMissingPluginIndicator): 107918 Assert that we're not currently showing any replacement text. Set 107919 m_showsMissingPluginIndicator after setting the replacement text. 107920 (WebCore::RenderEmbeddedObject::setShowsCrashedPluginIndicator): 107921 Add the same assert as above. 107922 107923 * rendering/RenderEmbeddedObject.h: 107924 (WebCore::RenderEmbeddedObject::showsMissingPluginIndicator): 107925 Getter for m_showsMissingPluginIndicator. 107926 107927 2010-07-02 Oliver Hunt <oliver (a] apple.com> 107928 107929 Reviewed by Geoffrey Garen. 107930 107931 Move BOM handling out of the lexer and parser 107932 https://bugs.webkit.org/show_bug.cgi?id=41539 107933 107934 Update WebCore to ensure that SourceProviders don't 107935 produce strings with BOMs in them. 107936 107937 * bindings/js/ScriptSourceProvider.h: 107938 (WebCore::ScriptSourceProvider::ScriptSourceProvider): 107939 * bindings/js/StringSourceProvider.h: 107940 (WebCore::StringSourceProvider::StringSourceProvider): 107941 * loader/CachedScript.cpp: 107942 (WebCore::CachedScript::CachedScript): 107943 (WebCore::CachedScript::script): 107944 * loader/CachedScript.h: 107945 (WebCore::CachedScript::): 107946 CachedScript now stores decoded data with the BOMs stripped, 107947 and caches the presence of BOMs across memory purges. 107948 107949 2010-07-03 Xan Lopez <xlopez (a] igalia.com> 107950 107951 Include DerivedSources/WebCore before DerivedSources/ 107952 107953 Recently DerivedSources generation was changed, with some files no 107954 longer being generated in the toplevel DerivedSources 107955 directory. Since that directory is first in the -I flags the build 107956 can be broken in some cases by including old files unless a 'make 107957 clean' is done. Change the -I order to fix the build in the 32 bit 107958 Release bot. 107959 107960 * GNUmakefile.am: 107961 107962 2010-07-03 Erik Arvidsson <arv (a] chromium.org> 107963 107964 Reviewed by Ojan Vafai. 107965 107966 Fix issue where a contextmenu event was reporting the wrong target if 107967 the context menu was shown due to pressing the context menu key 107968 (or Shift+F10). 107969 107970 Split sendContextMenuForEvent into one case for keyboard events and use 107971 that when the contextmenu event should be dispatched due to a keypress. 107972 107973 For the keboard case we now use the focused node as the target for the 107974 event and use the clipped rect to determine the position of the menu. 107975 107976 https://bugs.webkit.org/show_bug.cgi?id=38129 107977 107978 Use manual test since DRT does not handle context menu keys. 107979 107980 * manual-tests/win/contextmenu-key.html: Added. 107981 * page/EventHandler.cpp: 107982 (WebCore::EventHandler::sendContextMenuEvent): 107983 (WebCore::EventHandler::sendContextMenuEventForKey): 107984 * page/EventHandler.h: 107985 107986 2010-07-03 Dirk Schulze <krit (a] webkit.org> 107987 107988 Unreviewed sort of Xcode project file. 107989 107990 * WebCore.xcodeproj/project.pbxproj: 107991 107992 2010-07-03 Kwang Yul Seo <skyul (a] company100.net> 107993 107994 Reviewed by Kent Tamura. 107995 107996 [BREWMP] Port Widget 107997 https://bugs.webkit.org/show_bug.cgi?id=41538 107998 107999 Make Widget a dummy class. WebKit Brew MP uses the full screen mode 108000 and does not use the window system introduced in Brew MP. 108001 108002 * platform/Widget.h: 108003 * platform/brew/WidgetBrew.cpp: Added. 108004 (WebCore::Widget::Widget): 108005 (WebCore::Widget::~Widget): 108006 (WebCore::Widget::frameRect): 108007 (WebCore::Widget::setFrameRect): 108008 (WebCore::Widget::setFocus): 108009 (WebCore::Widget::setCursor): 108010 (WebCore::Widget::show): 108011 (WebCore::Widget::hide): 108012 (WebCore::Widget::paint): 108013 (WebCore::Widget::setIsSelected): 108014 108015 2010-07-03 Adam Barth <abarth (a] webkit.org> 108016 108017 Reviewed by Eric Seidel. 108018 108019 Implement AfterFramesetMode 108020 https://bugs.webkit.org/show_bug.cgi?id=41560 108021 108022 * html/HTMLTreeBuilder.cpp: 108023 (WebCore::HTMLTreeBuilder::processStartTag): 108024 (WebCore::HTMLTreeBuilder::processEndTag): 108025 (WebCore::HTMLTreeBuilder::processCharacter): 108026 (WebCore::HTMLTreeBuilder::processEndOfFile): 108027 108028 2010-07-02 Adam Barth <abarth (a] webkit.org> 108029 108030 Reviewed by Eric Seidel. 108031 108032 Implement InFramesetMode 108033 https://bugs.webkit.org/show_bug.cgi?id=41559 108034 108035 Pretty straighforward. We still don't handle character tokens 108036 correctly. 108037 108038 * html/HTMLTreeBuilder.cpp: 108039 (WebCore::HTMLTreeBuilder::processStartTag): 108040 (WebCore::HTMLTreeBuilder::processEndTag): 108041 (WebCore::HTMLTreeBuilder::processCharacter): 108042 (WebCore::HTMLTreeBuilder::processEndOfFile): 108043 108044 2010-07-02 Adam Barth <abarth (a] webkit.org> 108045 108046 Reviewed by Eric Seidel. 108047 108048 Handle <frameset> InBody 108049 https://bugs.webkit.org/show_bug.cgi?id=41558 108050 108051 Handling the <frameset> tag in the InBody mode is somewhat delicate. 108052 108053 * html/HTMLElementStack.cpp: 108054 (WebCore::HTMLElementStack::popHTMLBodyElement): 108055 (WebCore::HTMLElementStack::popUntil): 108056 (WebCore::HTMLElementStack::popCommon): 108057 * html/HTMLElementStack.h: 108058 * html/HTMLTreeBuilder.cpp: 108059 (WebCore::HTMLTreeBuilder::processStartTag): 108060 108061 2010-07-02 Adam Barth <abarth (a] webkit.org> 108062 108063 Reviewed by Eric Seidel. 108064 108065 Special handling of <rp> and <rt> tags 108066 https://bugs.webkit.org/show_bug.cgi?id=41557 108067 108068 So sayeth the spec. 108069 108070 * html/HTMLTreeBuilder.cpp: 108071 (WebCore::HTMLTreeBuilder::processStartTag): 108072 108073 2010-07-02 Adam Barth <abarth (a] webkit.org> 108074 108075 Reviewed by Eric Seidel. 108076 108077 Implement special optgroup processing 108078 https://bugs.webkit.org/show_bug.cgi?id=41556 108079 108080 * html/HTMLTreeBuilder.cpp: 108081 (WebCore::HTMLTreeBuilder::processStartTag): 108082 108083 2010-07-02 Adam Barth <abarth (a] webkit.org> 108084 108085 Reviewed by Eric Seidel. 108086 108087 Handle <image> in new parser 108088 https://bugs.webkit.org/show_bug.cgi?id=41555 108089 108090 This patch is kind of goofy but apparently how the world works. 108091 108092 * html/HTMLToken.h: 108093 (WebCore::AtomicHTMLToken::setName): 108094 * html/HTMLTreeBuilder.cpp: 108095 (WebCore::HTMLTreeBuilder::processStartTag): 108096 108097 2010-07-02 Kwang Yul Seo <skyul (a] company100.net> 108098 108099 Reviewed by Alexey Proskuryakov. 108100 108101 Remove extra semicolon at the end of HTMLTreeBuilder::attach 108102 https://bugs.webkit.org/show_bug.cgi?id=41546 108103 108104 This is not critical, but the extra semicolon at the end of HTMLTreeBuilder::attach 108105 causes a warning in RVCT. 108106 108107 * html/HTMLTreeBuilder.h: 108108 (WebCore::HTMLTreeBuilder::attach): 108109 108110 2010-07-02 Tony Gentilcore <tonyg (a] chromium.org> 108111 108112 Reviewed by Darin Adler. 108113 108114 Performance::disconnectFrame() needs to disconnect its children 108115 https://bugs.webkit.org/show_bug.cgi?id=41533 108116 108117 No new tests because no new functionality. 108118 108119 * page/Performance.cpp: 108120 (WebCore::Performance::disconnectFrame): 108121 108122 2010-07-02 Luiz Agostini <luiz.agostini (a] openbossa.org> 108123 108124 Reviewed by Sam Weinig. 108125 108126 Checking if WTF_USE_JSC is defined before redefining it in config.h 108127 https://bugs.webkit.org/show_bug.cgi?id=41530 108128 108129 * config.h: 108130 108131 2010-07-02 Tony Gentilcore <tonyg (a] chromium.org> 108132 108133 Reviewed by Dimitri Glazkov. 108134 108135 Add vendor prefix to window.performance 108136 https://bugs.webkit.org/show_bug.cgi?id=41525 108137 108138 No new tests because window.performance tests not landed yet. 108139 108140 * page/DOMWindow.cpp: 108141 (WebCore::DOMWindow::webkitPerformance): 108142 * page/DOMWindow.h: 108143 (WebCore::DOMWindow::optionalWebkitPerformance): 108144 * page/DOMWindow.idl: 108145 108146 2010-07-02 Zoltan Herczeg <zherczeg (a] webkit.org> 108147 108148 Reviewed by Oliver Hunt. 108149 108150 Minor fix: Diffuse constant is float (not integer) 108151 https://bugs.webkit.org/show_bug.cgi?id=10412 108152 108153 * svg/SVGFEDiffuseLightingElement.cpp: 108154 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute): 108155 108156 2010-07-02 Martin Robinson <mrobinson (a] igalia.com> 108157 108158 Unreviewed. 108159 108160 Build fix for GTK+. Try to force a rebuild of the HTMLNames.h 108161 file first by touching HTMLTagNames.in. 108162 108163 * html/HTMLTagNames.in: 108164 108165 2010-07-02 Andreas Kling <andreas.kling (a] nokia.com> 108166 108167 Reviewed by Oliver Hunt. 108168 108169 RGB colors should be clamped to the 0-255 range 108170 https://bugs.webkit.org/show_bug.cgi?id=39482 108171 108172 Spec link: 108173 http://www.whatwg.org/specs/web-apps/current-work/#colors 108174 108175 Test: fast/canvas/canvas-color-clamping.html 108176 108177 * css/CSSParser.cpp: 108178 (WebCore::parseColorInt): 108179 (WebCore::CSSParser::parseColor): 108180 (WebCore::parseColorIntFromValue): 108181 (WebCore::CSSParser::parseColorParameters): 108182 108183 2010-07-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 108184 108185 Unreviewed, rolling out r62410. 108186 http://trac.webkit.org/changeset/62410 108187 https://bugs.webkit.org/show_bug.cgi?id=41549 108188 108189 accursed last minute changes (Requested by olliej on #webkit). 108190 108191 * bindings/js/ScriptSourceProvider.h: 108192 (WebCore::ScriptSourceProvider::ScriptSourceProvider): 108193 * bindings/js/StringSourceProvider.h: 108194 (WebCore::StringSourceProvider::StringSourceProvider): 108195 * loader/CachedScript.cpp: 108196 (WebCore::CachedScript::CachedScript): 108197 (WebCore::CachedScript::script): 108198 * loader/CachedScript.h: 108199 108200 2010-07-02 Martin Robinson <mrobinson (a] igalia.com> 108201 108202 Unreviewed. 108203 108204 Further Build fix for GTK+. Also include HTMLElementFactory.h in 108205 the list of dependencies. 108206 108207 * GNUmakefile.am: 108208 108209 2010-07-02 Martin Robinson <mrobinson (a] igalia.com> 108210 108211 Unreviewed. 108212 108213 Build fix for GTK+. *Names.{cpp,h} targets should now include the 108214 header files. Also adds the header files to the generated sources list. 108215 108216 * GNUmakefile.am: 108217 108218 2010-07-02 Dumitru Daniliuc <dumi (a] chromium.org> 108219 108220 Reviewed by Darin Fisher. 108221 108222 DB clean up. 108223 https://bugs.webkit.org/show_bug.cgi?id=41404 108224 108225 1. Made all DatabaseTasks internal classes of Database and made 108226 the Database methods called by those tasks private. 108227 2. Removed the Database::stop{ed}() methods. 108228 3. Removed the code that kept track of open databases from 108229 ScriptExecutionContext (no longer needed). 108230 4. Made minor changes to Database::closeImmediately() to make it 108231 possible for DatabaseThread to call that method instead of 108232 close(). 108233 5. Minor fix to DatabaseTracker: addOpenDatabase() should call 108234 OriginQuotaManager::addDatabase() if the origin quota manager 108235 is not tracking this origin. 108236 6. Removed Database::performPolicyChecks(). We already update the 108237 DB size after each transaction, and we enforce a max size for 108238 the DB at the beginning of each transaction. 108239 108240 * dom/ScriptExecutionContext.cpp: 108241 (WebCore::ScriptExecutionContext::stopDatabases): 108242 * dom/ScriptExecutionContext.h: 108243 (WebCore::ScriptExecutionContext::hasOpenDatabases): 108244 * storage/Database.cpp: 108245 (WebCore::Database::openDatabase): 108246 (WebCore::Database::Database): 108247 (WebCore::Database::markAsDeletedAndClose): 108248 (WebCore::Database::close): 108249 (WebCore::Database::closeImmediately): 108250 * storage/Database.h: 108251 * storage/DatabaseTask.cpp: 108252 (WebCore::DatabaseTask::performTask): 108253 (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask): 108254 (WebCore::Database::DatabaseOpenTask::doPerformTask): 108255 (WebCore::Database::DatabaseOpenTask::debugTaskName): 108256 (WebCore::Database::DatabaseCloseTask::DatabaseCloseTask): 108257 (WebCore::Database::DatabaseCloseTask::doPerformTask): 108258 (WebCore::Database::DatabaseCloseTask::debugTaskName): 108259 (WebCore::Database::DatabaseTransactionTask::DatabaseTransactionTask): 108260 (WebCore::Database::DatabaseTransactionTask::doPerformTask): 108261 (WebCore::Database::DatabaseTransactionTask::debugTaskName): 108262 (WebCore::Database::DatabaseTableNamesTask::DatabaseTableNamesTask): 108263 (WebCore::Database::DatabaseTableNamesTask::doPerformTask): 108264 (WebCore::Database::DatabaseTableNamesTask::debugTaskName): 108265 * storage/DatabaseTask.h: 108266 (WebCore::Database::DatabaseOpenTask::create): 108267 (WebCore::Database::DatabaseCloseTask::create): 108268 (WebCore::Database::DatabaseTransactionTask::create): 108269 (WebCore::Database::DatabaseTableNamesTask::create): 108270 * storage/DatabaseThread.cpp: 108271 (WebCore::DatabaseThread::databaseThread): 108272 * storage/DatabaseTracker.cpp: 108273 (WebCore::DatabaseTracker::addOpenDatabase): 108274 * storage/SQLTransaction.cpp: 108275 (WebCore::SQLTransaction::executeSQL): 108276 (WebCore::SQLTransaction::checkAndHandleClosedDatabase): 108277 108278 2010-07-02 Oliver Hunt <oliver (a] apple.com> 108279 108280 Reviewed by Geoffrey Garen. 108281 108282 Move BOM handling out of the lexer and parser 108283 https://bugs.webkit.org/show_bug.cgi?id=41539 108284 108285 Update WebCore to ensure that SourceProviders don't 108286 produce strings with BOMs in them. 108287 108288 * bindings/js/ScriptSourceProvider.h: 108289 (WebCore::ScriptSourceProvider::ScriptSourceProvider): 108290 * bindings/js/StringSourceProvider.h: 108291 (WebCore::StringSourceProvider::StringSourceProvider): 108292 * loader/CachedScript.cpp: 108293 (WebCore::CachedScript::CachedScript): 108294 (WebCore::CachedScript::script): 108295 * loader/CachedScript.h: 108296 (WebCore::CachedScript::): 108297 CachedScript now stores decoded data with the BOMs stripped, 108298 and caches the presence of BOMs across memory purges. 108299 108300 2010-07-02 Sam Weinig <sam (a] webkit.org> 108301 108302 Add missing symbol to exports file. 108303 108304 * WebCore.base.exp: 108305 108306 2010-07-02 Abhishek Arya <inferno (a] chromium.org> 108307 108308 Reviewed by Darin Fisher. 108309 108310 Remove the extra setFailed() call in JPEG decoder to prevent 108311 re-using an already freed object. 108312 https://bugs.webkit.org/show_bug.cgi?id=41487 108313 108314 Test: fast/images/large-size-image-crash.html 108315 108316 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 108317 (WebCore::JPEGImageReader::decode): 108318 108319 2010-07-02 Peter Beverloo <peter (a] lvp-media.com> 108320 108321 Reviewed by Maciej Stachowiak. 108322 108323 Add the HTML5 <mark> element. Text content of the element will have 108324 a yellow background color and black text. 108325 108326 Test: fast/html/mark-element.html 108327 Tests for <p> closing, phrasing child content and residual style. 108328 108329 * css/html.css: 108330 (mark): 108331 * html/HTMLElement.cpp: 108332 (WebCore::inlineTagList): 108333 * html/HTMLTagNames.in: 108334 * html/LegacyHTMLTreeBuilder.cpp: 108335 (WebCore::LegacyHTMLTreeBuilder::getNode): 108336 (WebCore::LegacyHTMLTreeBuilder::isInline): 108337 (WebCore::LegacyHTMLTreeBuilder::isResidualStyleTag): 108338 108339 2010-07-02 Zhenyao Mo <zmo (a] google.com> 108340 108341 Reviewed by Dimitri Glazkov. 108342 108343 Fix issues in boundary situations for WebGLRenderingContext::drawArrays/drawElements 108344 https://bugs.webkit.org/show_bug.cgi?id=41473 108345 108346 * WebCore.gypi: Add CheckedInt.h. 108347 * WebCore.xcodeproj/project.pbxproj: Add CheckedInt.h. 108348 * html/canvas/CheckedInt.h: Added support of safe integer operations. 108349 (mozilla::CheckedInt_internal::integer_type_manually_recorded_info::): 108350 (mozilla::CheckedInt_internal::is_unsupported_type::): 108351 (mozilla::CheckedInt_internal::): 108352 (mozilla::CheckedInt_internal::integer_traits::): 108353 (mozilla::CheckedInt_internal::integer_traits::min): 108354 (mozilla::CheckedInt_internal::integer_traits::max): 108355 (mozilla::CheckedInt_internal::has_sign_bit): 108356 (mozilla::CheckedInt_internal::binary_complement): 108357 (mozilla::CheckedInt_internal::is_in_range): 108358 (mozilla::CheckedInt_internal::is_add_valid): 108359 (mozilla::CheckedInt_internal::is_sub_valid): 108360 (mozilla::CheckedInt_internal::is_mul_valid): 108361 (mozilla::CheckedInt_internal::is_div_valid): 108362 (mozilla::CheckedInt::CheckedInt): 108363 (mozilla::CheckedInt::value): 108364 (mozilla::CheckedInt::valid): 108365 (mozilla::CheckedInt::operator -): 108366 (mozilla::CheckedInt::operator ==): 108367 (mozilla::CheckedInt::operator !=): 108368 (mozilla::operator /): 108369 (mozilla::cast_to_CheckedInt_impl::run): 108370 (mozilla::): 108371 (mozilla::cast_to_CheckedInt): 108372 (mozilla::operator ==): 108373 * html/canvas/WebGLRenderingContext.cpp: 108374 (WebCore::WebGLRenderingContext::validateIndexArrayConservative): Fix a bug against 0-size buffer situation. 108375 (WebCore::WebGLRenderingContext::drawArrays): Deal with overflows and count==0 situation. 108376 (WebCore::WebGLRenderingContext::drawElements): Deal with count==0 situation. 108377 108378 2010-07-02 Zhenyao Mo <zmo (a] google.com> 108379 108380 Reviewed by Dimitri Glazkov. 108381 108382 linkProgram should fail when vertex/fragment shaders are not both present 108383 https://bugs.webkit.org/show_bug.cgi?id=41380 108384 108385 Test: fast/canvas/webgl/program-test.html 108386 108387 * html/canvas/WebGLProgram.cpp: Add flag for link failure due to missing shaders. 108388 (WebCore::WebGLProgram::WebGLProgram): 108389 * html/canvas/WebGLProgram.h: Add interface for linkFailure flag. 108390 (WebCore::WebGLProgram::isLinkFailureFlagSet): 108391 (WebCore::WebGLProgram::setLinkFailureFlag): 108392 * html/canvas/WebGLRenderingContext.cpp: 108393 (WebCore::WebGLRenderingContext::getProgramParameter): Intercept when linkFailureFlag is set. 108394 (WebCore::WebGLRenderingContext::linkProgram): Check if there are missing shaders and don't link if yes. 108395 * html/canvas/WebGLShader.cpp: Cache shader type. 108396 (WebCore::WebGLShader::WebGLShader): 108397 * html/canvas/WebGLShader.h: Ditto. 108398 (WebCore::WebGLShader::getType): 108399 108400 2010-07-02 Qi Zhang <qi.2.zhang (a] nokia.com> 108401 108402 Reviewed by Laszlo Gombos. 108403 108404 [Qt] Failed on http://philip.html5.org/tests/canvas/suite/tests/2d.drawImage.negativesource.html 108405 108406 Support negative width and height in canvas image draw 108407 108408 * platform/graphics/FloatRect.h: 108409 * platform/graphics/qt/FloatRectQt.cpp: 108410 (WebCore::FloatRect::normalized): 108411 * platform/graphics/qt/ImageQt.cpp: 108412 (WebCore::BitmapImage::draw): 108413 108414 2010-06-24 Dimitri Glazkov <dglazkov (a] chromium.org> 108415 108416 Reviewed by Alexey Proskuryakov. 108417 108418 REGRESSION: Enter does not trigger submit of forms when focus is on select. 108419 https://bugs.webkit.org/show_bug.cgi?id=39532 108420 108421 Restore behavior where hitting "Enter" on a select element attempts to submit 108422 form implicitly. 108423 108424 * dom/SelectElement.cpp: 108425 (WebCore::SelectElement::menuListDefaultEventHandler): Added htmlForm argument, 108426 and attempting to submit implicitly. 108427 (WebCore::SelectElement::listBoxDefaultEventHandler): Ditto. 108428 (WebCore::SelectElement::defaultEventHandler): Plumbed through htmlForm argument. 108429 * dom/SelectElement.h: Added htmlForm argument to method declaration. 108430 * html/HTMLSelectElement.cpp: 108431 (WebCore::HTMLSelectElement::defaultEventHandler): Changed to provide submitting form 108432 as the argument. 108433 108434 2010-07-02 Kent Tamura <tkent (a] chromium.org> 108435 108436 Reviewed by Darin Fisher. 108437 108438 [Chromium] Support indeterminate checkbox for Linux, and a small fix for Windows 108439 https://bugs.webkit.org/show_bug.cgi?id=41508 108440 108441 * rendering/RenderThemeChromiumSkia.cpp: 108442 (WebCore::RenderThemeChromiumSkia::paintCheckbox): 108443 Use dedicated images for indeterminate states. 108444 * rendering/RenderThemeChromiumWin.cpp: 108445 (WebCore::RenderThemeChromiumWin::determineClassicState): 108446 Do not use DFCS_CHECKED in a case of indeterminate state in 108447 order to have consistent appearance of indeterminate checkbox. 108448 108449 2010-07-02 Brent Fulgham <bfulgham (a] webkit.org> 108450 108451 Reviewed by Gustavo Noronha Silva. 108452 108453 Fixes https://bugs.webkit.org/show_bug.cgi?id=41323. 108454 Provides an implementation of the 'squiggle' used for 108455 bad grammar or spelling, based on the Pango logic used 108456 by the GTK builds. 108457 108458 No new tests. Covered by LayoutTests/editing/spelling 108459 108460 * WebCore.vcproj/WebCore.vcproj: Add new file holding underline 108461 implementation, set to build only for WinCairo port. 108462 * platform/graphics/cairo/DrawErrorUnderline.cpp: Added. 108463 (drawErrorUnderline): New file containing the squiggle drawing 108464 logic based on the Pango implementation. Placed in its own file 108465 to isolate licenses. 108466 * platform/graphics/cairo/GraphicsContextCairo.cpp: 108467 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): 108468 Have WinCairo build call new 'drawErrorUnderline' implementation. 108469 108470 2010-07-02 Martin Robinson <mrobinson (a] igalia.com> 108471 108472 Reviewed by Gustavo Noronha Silva. 108473 108474 [GTK] Separate DerivedSources per-project 108475 https://bugs.webkit.org/show_bug.cgi?id=41109 108476 108477 Generate WebCore derived sources in <builddir>/DerivedSources/WebCore. 108478 108479 * GNUmakefile.am: 108480 108481 2010-07-02 Zhenyao Mo <zmo (a] google.com> 108482 108483 Reviewed by Dimitri Glazkov. 108484 108485 Implement OpenGL ES 2.0 semantics for vertex attribute 0 108486 https://bugs.webkit.org/show_bug.cgi?id=41300 108487 108488 Test: fast/canvas/webgl/gl-bind-attrib-location-test.html 108489 fast/canvas/webgl/gl-vertex-attrib.html 108490 108491 * html/canvas/WebGLProgram.cpp: 108492 (WebCore::WebGLProgram::numActiveAttribLocations): const. 108493 (WebCore::WebGLProgram::getActiveAttribLocation): const. 108494 (WebCore::WebGLProgram::isUsingVertexAttrib0): Determine whether vertex attrib 0 is used by the program. 108495 * html/canvas/WebGLProgram.h: Declare isUsingVertexAttrib0. 108496 * html/canvas/WebGLRenderingContext.cpp: 108497 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Deal with vertex attrib 0. 108498 (WebCore::WebGLRenderingContext::disableVertexAttribArray): Ditto. 108499 (WebCore::WebGLRenderingContext::drawArrays): Ditto. 108500 (WebCore::WebGLRenderingContext::drawElements): Ditto. 108501 (WebCore::WebGLRenderingContext::getVertexAttrib): Use cached value instead of calling glGetVertexAtrtrib. 108502 (WebCore::WebGLRenderingContext::vertexAttrib1f): Validate input, deal with vertex attrib 0. 108503 (WebCore::WebGLRenderingContext::vertexAttrib1fv): Ditto. 108504 (WebCore::WebGLRenderingContext::vertexAttrib2f): Ditto. 108505 (WebCore::WebGLRenderingContext::vertexAttrib2fv): Ditto. 108506 (WebCore::WebGLRenderingContext::vertexAttrib3f): Ditto. 108507 (WebCore::WebGLRenderingContext::vertexAttrib3fv): Ditto. 108508 (WebCore::WebGLRenderingContext::vertexAttrib4f): Ditto. 108509 (WebCore::WebGLRenderingContext::vertexAttrib4fv): Ditto. 108510 (WebCore::WebGLRenderingContext::vertexAttribPointer): Ditto. 108511 (WebCore::WebGLRenderingContext::handleNPOTTextures): Move isGLES2Compliant() to caller. 108512 (WebCore::WebGLRenderingContext::vertexAttribImpl): Helper for vertexAttribNfv. 108513 (WebCore::WebGLRenderingContext::initVertexAttrib0): Initialize vertex attrib 0. 108514 (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Simulate vertex attrib 0. 108515 (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation): Restore states after simulating vertex attrib 0. 108516 * html/canvas/WebGLRenderingContext.h: 108517 (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState): Tracking full vertex attrib states. 108518 (WebCore::WebGLRenderingContext::VertexAttribState::initValue): Init value to [0,0,0,1]. 108519 108520 2010-07-02 Zhenyao Mo <zmo (a] google.com> 108521 108522 Reviewed by Dimitri Glazkov. 108523 108524 Need to validate the size of the incoming arrays for uniform* functions 108525 https://bugs.webkit.org/show_bug.cgi?id=41383 108526 108527 * html/canvas/WebGLRenderingContext.cpp: Validate input array size. 108528 (WebCore::WebGLRenderingContext::uniform1fv): 108529 (WebCore::WebGLRenderingContext::uniform1iv): 108530 (WebCore::WebGLRenderingContext::uniform2fv): 108531 (WebCore::WebGLRenderingContext::uniform2iv): 108532 (WebCore::WebGLRenderingContext::uniform3fv): 108533 (WebCore::WebGLRenderingContext::uniform3iv): 108534 (WebCore::WebGLRenderingContext::uniform4fv): 108535 (WebCore::WebGLRenderingContext::uniform4iv): 108536 (WebCore::WebGLRenderingContext::uniformMatrix2fv): 108537 (WebCore::WebGLRenderingContext::uniformMatrix3fv): 108538 (WebCore::WebGLRenderingContext::uniformMatrix4fv): 108539 (WebCore::WebGLRenderingContext::validateUniformParameters): 108540 (WebCore::WebGLRenderingContext::validateUniformMatrixParameters): 108541 * html/canvas/WebGLRenderingContext.h: Add helper functions. 108542 108543 2010-07-02 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 108544 108545 Reviewed by Simon Hausmann. 108546 108547 [Qt] Canvas arcTo() should draw straight line to p1 if p0, p1 and p2 are collinear 108548 108549 The implementation of PathQt's addArcTo() was not float-safe and also had 108550 a case where it drew an 'infinite' line, which is not part of the spec. 108551 108552 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-arcto 108553 108554 We now use qFuzzyCompare() in both cases. The method isPointOnPathBorder() 108555 also had the same problem, and was refactored a bit in the process of fixing 108556 the bug. 108557 108558 Initial patch by Andreas Kling. 108559 108560 https://bugs.webkit.org/show_bug.cgi?id=41412 108561 108562 * platform/graphics/qt/PathQt.cpp: 108563 108564 2010-07-02 Yury Semikhatsky <yurys (a] chromium.org> 108565 108566 Reviewed by Pavel Feldman. 108567 108568 [v8] Web Inspector: inspected page crashes on attempt to change iframe's src attribute 108569 https://bugs.webkit.org/show_bug.cgi?id=41511 108570 108571 Tests: fast/events/popup-blocked-from-fake-user-gesture.html 108572 http/tests/inspector/change-iframe-src.html 108573 108574 * bindings/v8/ScriptController.cpp: 108575 (WebCore::ScriptController::processingUserGesture): use V8Proxy from the ScriptController instead of one 108576 from the call stack. Get event directly from hidden property to avoid unnecessary checks. 108577 * bindings/v8/V8AbstractEventListener.cpp: 108578 (WebCore::V8AbstractEventListener::invokeEventHandler): 108579 * bindings/v8/V8HiddenPropertyName.h: 108580 * bindings/v8/custom/V8DOMWindowCustom.cpp: 108581 (WebCore::V8DOMWindow::eventAccessorGetter): 108582 (WebCore::V8DOMWindow::eventAccessorSetter): 108583 108584 2010-07-02 Adam Barth <abarth (a] webkit.org> 108585 108586 Reviewed by Eric Seidel. 108587 108588 Fix tokenization of <!-----> 108589 https://bugs.webkit.org/show_bug.cgi?id=41505 108590 108591 I noticed this error when browsing through the HTML5lib failures. 108592 We're adding an extra character to the comment token, contrary to what 108593 the spec says to do. 108594 108595 * html/HTMLTokenizer.cpp: 108596 (WebCore::HTMLTokenizer::nextToken): 108597 108598 2010-07-02 Adam Barth <abarth (a] webkit.org> 108599 108600 Reviewed by Eric Seidel. 108601 108602 Implement processFakePEndTagIfPInScope 108603 https://bugs.webkit.org/show_bug.cgi?id=41503 108604 108605 This is a common idiom because <p> likes to close itself. 108606 108607 * html/HTMLTreeBuilder.cpp: 108608 (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInScope): 108609 (WebCore::HTMLTreeBuilder::processStartTag): 108610 * html/HTMLTreeBuilder.h: 108611 108612 2010-07-02 Adam Barth <abarth (a] webkit.org> 108613 108614 Reviewed by Eric Seidel. 108615 108616 Implement AfterAfterBodyMode 108617 https://bugs.webkit.org/show_bug.cgi?id=41501 108618 108619 In implementing this mode, I noticed a bug in the character processing 108620 of the AfterBodyMode, which I fixed by adding a break statement. Also, 108621 to get one of the new tests to pass, I needed to implement one 108622 notImplemented() in the InBody insertion mode. Yay for testing. 108623 108624 * html/HTMLTreeBuilder.cpp: 108625 (WebCore::HTMLTreeBuilder::processStartTag): 108626 (WebCore::HTMLTreeBuilder::processEndTag): 108627 (WebCore::HTMLTreeBuilder::processComment): 108628 (WebCore::HTMLTreeBuilder::processCharacter): 108629 (WebCore::HTMLTreeBuilder::processEndOfFile): 108630 108631 2010-07-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 108632 108633 Unreviewed, rolling out r62371. 108634 http://trac.webkit.org/changeset/62371 108635 https://bugs.webkit.org/show_bug.cgi?id=41515 108636 108637 "Breaks media/controls-drag-timebar.html on 32-Bit Release" 108638 (Requested by philn-tp on #webkit). 108639 108640 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 108641 (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable): 108642 (WebCore::MediaPlayerPrivateGStreamer::updateStates): 108643 108644 2010-06-28 Philippe Normand <pnormand (a] igalia.com> 108645 108646 Reviewed by Xan Lopez. 108647 108648 [GStreamer] can't seek past maxTimeLoaded value 108649 https://bugs.webkit.org/show_bug.cgi?id=40526 108650 108651 Extended the seekable range to the whole media. This allows video 108652 played with progressive download to be seeked past the current 108653 buffered position. 108654 108655 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 108656 (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable): 108657 (WebCore::MediaPlayerPrivateGStreamer::updateStates): 108658 108659 2010-07-02 Adam Barth <abarth (a] webkit.org> 108660 108661 Reviewed by Eric Seidel. 108662 108663 Implement AfterBodyMode for HTML5 tree builder 108664 https://bugs.webkit.org/show_bug.cgi?id=41500 108665 108666 In the coarse of implementing this state, I ran into an ASSERT in how 108667 </br> tags where handled, which I fixed. Technically, that could be a 108668 separate patch, but it seemed harmless to include it here (with tests). 108669 108670 * html/HTMLTreeBuilder.cpp: 108671 (WebCore::HTMLTreeBuilder::processStartTag): 108672 (WebCore::HTMLTreeBuilder::processEndTag): 108673 (WebCore::HTMLTreeBuilder::processComment): 108674 (WebCore::HTMLTreeBuilder::processCharacter): 108675 (WebCore::HTMLTreeBuilder::processEndOfFile): 108676 (WebCore::HTMLTreeBuilder::insertCommentOnHTMLHtmlElement): 108677 * html/HTMLTreeBuilder.h: 108678 108679 2010-07-02 Adam Barth <abarth (a] webkit.org> 108680 108681 Reviewed by Eric Seidel. 108682 108683 Handle <base> and friends in AfterHeadMode 108684 https://bugs.webkit.org/show_bug.cgi?id=41502 108685 108686 Implement notImplemented() per spec. 108687 108688 * html/HTMLTreeBuilder.cpp: 108689 (WebCore::HTMLTreeBuilder::processStartTag): 108690 108691 2010-07-01 Oliver Hunt <oliver (a] apple.com> 108692 108693 Build fix 108694 108695 * dom/Document.h: 108696 108697 2010-07-01 Oliver Hunt <oliver (a] apple.com> 108698 108699 Reviewed by Maciej Stachowiak. 108700 108701 Add a FixedArray template to encapsulate fixed length arrays 108702 https://bugs.webkit.org/show_bug.cgi?id=41506 108703 108704 Add forwarding header, and replace a few fixed length arrays 108705 with the new FixedArray type. 108706 108707 * ForwardingHeaders/wtf/FixedArray.h: Added. 108708 * dom/Document.h: 108709 * platform/graphics/GlyphMetricsMap.h: 108710 108711 2010-07-01 Simon Fraser <simon.fraser (a] apple.com> 108712 108713 No review. 108714 108715 Fix a link warning in 32-bit by not explicitly exporting WebCore::GraphicsLayer::syncCompositingStateForThisLayerOnly(). 108716 108717 * WebCore.AcceleratedCompositing.exp: 108718 108719 2010-07-01 Tony Gentilcore <tonyg (a] chromium.org> 108720 108721 Reviewed by Dimitri Glazkov. 108722 108723 Add window.performance.navigation namespace 108724 https://bugs.webkit.org/show_bug.cgi?id=41442 108725 108726 Adds window.performance.navigation namespace consisting of ".type" 108727 and ".redirectCount". As part of this change, I renmaed "NavigationTiming" 108728 to just "Timing" to avoid confusion. 108729 108730 No new tests because tests will be added in a subsequent patch when 108731 functionality is added. 108732 108733 * Android.mk: 108734 * CMakeLists.txt: 108735 * DerivedSources.cpp: 108736 * DerivedSources.make: 108737 * GNUmakefile.am: 108738 * WebCore.gypi: 108739 * WebCore.pri: 108740 * WebCore.pro: 108741 * WebCore.vcproj/WebCore.vcproj: 108742 * WebCore.xcodeproj/project.pbxproj: 108743 * page/Navigation.cpp: Added. 108744 (WebCore::Navigation::Navigation): 108745 (WebCore::Navigation::frame): 108746 (WebCore::Navigation::disconnectFrame): 108747 (WebCore::Navigation::type): 108748 (WebCore::Navigation::redirectCount): 108749 * page/Navigation.h: Added. 108750 (WebCore::Navigation::create): 108751 * page/Navigation.idl: Added. 108752 * page/NavigationTiming.cpp: Removed. 108753 * page/NavigationTiming.h: Removed. 108754 * page/NavigationTiming.idl: Removed. 108755 * page/Performance.cpp: 108756 (WebCore::Performance::navigation): 108757 (WebCore::Performance::timing): 108758 * page/Performance.h: 108759 * page/Performance.idl: 108760 * page/Timing.cpp: Added. 108761 (WebCore::Timing::Timing): 108762 (WebCore::Timing::frame): 108763 (WebCore::Timing::disconnectFrame): 108764 (WebCore::Timing::navigationStart): 108765 * page/Timing.h: Added. 108766 (WebCore::Timing::create): 108767 * page/Timing.idl: Added. 108768 108769 2010-07-01 Daniel Cheng <dcheng (a] chromium.org> 108770 108771 Reviewed by Jian Li. 108772 108773 [chromium] Dragging a link triggers an assert when accessing event.dataTransfer.types 108774 https://bugs.webkit.org/show_bug.cgi?id=41493 108775 108776 ClipboardChromium::writeURL violates ClipboardChromium's assumption that uriList will always 108777 be non-empty if url is valid. 108778 108779 No new tests. 108780 108781 * platform/chromium/ClipboardChromium.cpp: 108782 (WebCore::ClipboardChromium::writeURL): 108783 108784 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 108785 108786 Reviewed by Tor Arne Vestb. 108787 108788 [Qt] Clamp color stops passed to QGradient to 1.0 108789 [https://bugs.webkit.org/show_bug.cgi?id=41484 108790 108791 Fixes an issue where color stops would be silently dropped from radial gradients. 108792 108793 * platform/graphics/qt/GradientQt.cpp: 108794 (WebCore::Gradient::platformGradient): 108795 108796 2010-07-01 Eric Seidel <eric (a] webkit.org> 108797 108798 Reviewed by Adam Barth. 108799 108800 HTMLTokenizer should ASSERT that it never emits a null character 108801 https://bugs.webkit.org/show_bug.cgi?id=41448 108802 108803 No functional change, thus no tests. These ASSERTs would have 108804 caught the coding error which caused the trouble in bug 41436 108805 (which was fixed by bug 41439). 108806 108807 * html/HTMLToken.h: 108808 (WebCore::HTMLToken::beginStartTag): 108809 (WebCore::HTMLToken::beginCharacter): 108810 (WebCore::HTMLToken::beginDOCTYPE): 108811 (WebCore::HTMLToken::appendToName): 108812 (WebCore::HTMLToken::appendToComment): 108813 (WebCore::HTMLToken::appendToAttributeName): 108814 (WebCore::HTMLToken::appendToAttributeValue): 108815 (WebCore::HTMLToken::appendToPublicIdentifier): 108816 (WebCore::HTMLToken::appendToSystemIdentifier): 108817 108818 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 108819 108820 Reviewed by Tor Arne Vestb. 108821 108822 Canvas: Don't paint with empty radial gradients 108823 https://bugs.webkit.org/show_bug.cgi?id=41190 108824 108825 If a radial gradient has x0==x1 && y0==y1 && r0==r1, don't paint with it. 108826 108827 * html/canvas/CanvasRenderingContext2D.cpp: 108828 (WebCore::CanvasRenderingContext2D::fillRect): 108829 * platform/graphics/Gradient.h: 108830 (WebCore::Gradient::isZeroSize): 108831 108832 2010-07-01 Tony Gentilcore <tonyg (a] chromium.org> 108833 108834 Reviewed by Adam Barth. 108835 108836 Add interface for network platform to pass up timing information 108837 https://bugs.webkit.org/show_bug.cgi?id=41437 108838 108839 The Web Timing feature requires the network platform to expose detailed 108840 timing information for the main resource. This patch adds that data to 108841 the ResourceResponseBase. Since the 82 bytes of information is only 108842 needed for the main resource, it is a RefPtr to avoid using the memory 108843 for other resource types. 108844 108845 No new tests because no new functionality. 108846 108847 * GNUmakefile.am: 108848 * WebCore.gypi: 108849 * WebCore.pro: 108850 * WebCore.vcproj/WebCore.vcproj: 108851 * WebCore.xcodeproj/project.pbxproj: 108852 * platform/network/ResourceLoadTiming.h: Added. 108853 (WebCore::ResourceLoadTiming::create): 108854 (WebCore::ResourceLoadTiming::deepCopy): 108855 (WebCore::ResourceLoadTiming::operator==): 108856 (WebCore::ResourceLoadTiming::operator!=): 108857 (WebCore::ResourceLoadTiming::ResourceLoadTiming): 108858 * platform/network/ResourceResponseBase.cpp: 108859 (WebCore::ResourceResponseBase::adopt): 108860 (WebCore::ResourceResponseBase::copyData): 108861 (WebCore::ResourceResponseBase::resourceLoadTiming): 108862 (WebCore::ResourceResponseBase::setResourceLoadTiming): 108863 (WebCore::ResourceResponseBase::compare): 108864 * platform/network/ResourceResponseBase.h: 108865 108866 2010-07-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 108867 108868 Unreviewed, rolling out r62321. 108869 http://trac.webkit.org/changeset/62321 108870 https://bugs.webkit.org/show_bug.cgi?id=41494 108871 108872 Broke the non-win builds. (Requested by dumi on #webkit). 108873 108874 * dom/ScriptExecutionContext.cpp: 108875 (WebCore::ScriptExecutionContext::addOpenDatabase): 108876 (WebCore::ScriptExecutionContext::removeOpenDatabase): 108877 (WebCore::ScriptExecutionContext::stopDatabases): 108878 * dom/ScriptExecutionContext.h: 108879 * storage/Database.cpp: 108880 (WebCore::Database::openDatabase): 108881 (WebCore::Database::Database): 108882 (WebCore::Database::markAsDeletedAndClose): 108883 (WebCore::ContextRemoveOpenDatabaseTask::create): 108884 (WebCore::ContextRemoveOpenDatabaseTask::performTask): 108885 (WebCore::ContextRemoveOpenDatabaseTask::isCleanupTask): 108886 (WebCore::ContextRemoveOpenDatabaseTask::ContextRemoveOpenDatabaseTask): 108887 (WebCore::Database::close): 108888 (WebCore::Database::closeImmediately): 108889 (WebCore::Database::stop): 108890 (WebCore::Database::performPolicyChecks): 108891 * storage/Database.h: 108892 (WebCore::Database::): 108893 (WebCore::Database::stopped): 108894 * storage/DatabaseTask.cpp: 108895 (WebCore::DatabaseTask::performTask): 108896 (WebCore::DatabaseOpenTask::DatabaseOpenTask): 108897 (WebCore::DatabaseOpenTask::doPerformTask): 108898 (WebCore::DatabaseOpenTask::debugTaskName): 108899 (WebCore::DatabaseCloseTask::DatabaseCloseTask): 108900 (WebCore::DatabaseCloseTask::doPerformTask): 108901 (WebCore::DatabaseCloseTask::debugTaskName): 108902 (WebCore::DatabaseTransactionTask::DatabaseTransactionTask): 108903 (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask): 108904 (WebCore::DatabaseTransactionTask::doPerformTask): 108905 (WebCore::DatabaseTransactionTask::debugTaskName): 108906 (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask): 108907 (WebCore::DatabaseTableNamesTask::doPerformTask): 108908 (WebCore::DatabaseTableNamesTask::debugTaskName): 108909 * storage/DatabaseTask.h: 108910 (WebCore::DatabaseOpenTask::create): 108911 (WebCore::DatabaseCloseTask::create): 108912 (WebCore::DatabaseTransactionTask::create): 108913 (WebCore::DatabaseTableNamesTask::create): 108914 * storage/DatabaseThread.cpp: 108915 (WebCore::DatabaseThread::databaseThread): 108916 * storage/DatabaseTracker.cpp: 108917 (WebCore::DatabaseTracker::addOpenDatabase): 108918 * storage/SQLTransaction.cpp: 108919 (WebCore::SQLTransaction::executeSQL): 108920 (WebCore::SQLTransaction::checkAndHandleClosedDatabase): 108921 108922 2010-07-01 Xan Lopez <xlopez (a] igalia.com> 108923 108924 Reviewed by Gustavo Noronha. 108925 108926 [GTK] Stop using GdkRegion in 3.x mode 108927 https://bugs.webkit.org/show_bug.cgi?id=41463 108928 108929 Make us compile without using GdkRegion, since it's gone from GTK+ 108930 3.x. 108931 108932 * platform/graphics/IntRect.h: 108933 * platform/graphics/cairo/GraphicsContextCairo.cpp: 108934 (WebCore::GraphicsContext::drawFocusRing): 108935 * platform/graphics/gtk/FontGtk.cpp: 108936 (WebCore::cairo_region_shrink): 108937 (WebCore::Font::drawComplexText): 108938 * platform/gtk/GtkPluginWidget.cpp: 108939 (WebCore::GtkPluginWidget::paint): 108940 * platform/gtk/RenderThemeGtk.h: 108941 * platform/gtk/ScrollbarGtk.cpp: 108942 (ScrollbarGtk::paint): 108943 108944 2010-06-30 Dumitru Daniliuc <dumi (a] chromium.org> 108945 108946 Reviewed by Darin Fisher. 108947 108948 DB clean up. 108949 https://bugs.webkit.org/show_bug.cgi?id=41404 108950 108951 1. Made all DatabaseTasks internal classes of Database and made 108952 the Database methods called by those tasks private. 108953 2. Removed the Database::stop{ed}() methods. 108954 3. Removed the code that kept track of open databases from 108955 ScriptExecutionContext (no longer needed). 108956 4. Made minor changes to Database::closeImmediately() to make it 108957 possible for DatabaseThread to call that method instead of 108958 close(). 108959 5. Minor fix to DatabaseTracker: addOpenDatabase() should call 108960 OriginQuotaManager::addDatabase() if the origin quota manager 108961 is not tracking this origin. 108962 6. Removed Database::performPolicyChecks(). We already update the 108963 DB size after each transaction, and we enforce a max size for 108964 the DB at the beginning of each transaction. 108965 108966 * dom/ScriptExecutionContext.cpp: 108967 (WebCore::ScriptExecutionContext::stopDatabases): 108968 * dom/ScriptExecutionContext.h: 108969 (WebCore::ScriptExecutionContext::hasOpenDatabases): 108970 * storage/Database.cpp: 108971 (WebCore::Database::openDatabase): 108972 (WebCore::Database::Database): 108973 (WebCore::Database::markAsDeletedAndClose): 108974 (WebCore::Database::close): 108975 (WebCore::Database::closeImmediately): 108976 * storage/Database.h: 108977 * storage/DatabaseTask.cpp: 108978 (WebCore::DatabaseTask::performTask): 108979 (WebCore::Database::DatabaseOpenTask::DatabaseOpenTask): 108980 (WebCore::Database::DatabaseOpenTask::doPerformTask): 108981 (WebCore::Database::DatabaseOpenTask::debugTaskName): 108982 (WebCore::Database::DatabaseCloseTask::DatabaseCloseTask): 108983 (WebCore::Database::DatabaseCloseTask::doPerformTask): 108984 (WebCore::Database::DatabaseCloseTask::debugTaskName): 108985 (WebCore::Database::DatabaseTransactionTask::DatabaseTransactionTask): 108986 (WebCore::Database::DatabaseTransactionTask::doPerformTask): 108987 (WebCore::Database::DatabaseTransactionTask::debugTaskName): 108988 (WebCore::Database::DatabaseTableNamesTask::DatabaseTableNamesTask): 108989 (WebCore::Database::DatabaseTableNamesTask::doPerformTask): 108990 (WebCore::Database::DatabaseTableNamesTask::debugTaskName): 108991 * storage/DatabaseTask.h: 108992 (WebCore::Database::DatabaseOpenTask::create): 108993 (WebCore::Database::DatabaseCloseTask::create): 108994 (WebCore::Database::DatabaseTransactionTask::create): 108995 (WebCore::Database::DatabaseTableNamesTask::create): 108996 * storage/DatabaseThread.cpp: 108997 (WebCore::DatabaseThread::databaseThread): 108998 * storage/DatabaseTracker.cpp: 108999 (WebCore::DatabaseTracker::addOpenDatabase): 109000 * storage/SQLTransaction.cpp: 109001 (WebCore::SQLTransaction::executeSQL): 109002 (WebCore::SQLTransaction::checkAndHandleClosedDatabase): 109003 109004 2010-07-01 Kent Tamura <tkent (a] chromium.org> 109005 109006 Reviewed by Darin Fisher. 109007 109008 [Chromium] Support indeterminate checkbox for Windows 109009 https://bugs.webkit.org/show_bug.cgi?id=41444 109010 109011 * rendering/RenderThemeChromiumWin.cpp: 109012 (WebCore::RenderThemeChromiumWin::determineState): 109013 Check isIndeterminate() and set an appropriate flag value. 109014 109015 2010-07-01 Alexey Proskuryakov <ap (a] apple.com> 109016 109017 Reviewed by Dan Bernstein. 109018 109019 https://bugs.webkit.org/show_bug.cgi?id=41488 109020 <rdar://problem/7487420> Crash in SubresourceLoader::create when load is initiated from plug-in destructor 109021 109022 Test: plugins/js-from-destroy.html 109023 109024 * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::create): Null check active 109025 document loader. 109026 109027 2010-07-01 Andy Estes <aestes (a] apple.com> 109028 109029 Reviewed by Darin Adler. 109030 109031 <rdar://problem/8113003> Correctly fire beforeload events for images 109032 added to the DOM using .innerHTML. 109033 https://bugs.webkit.org/show_bug.cgi?id=40919 109034 109035 Test: fast/dom/beforeload/image-before-load-innerHTML.html 109036 109037 * html/LegacyHTMLDocumentParser.cpp: 109038 (WebCore::LegacyHTMLDocumentParser::write): Do not fire synchronous 109039 image beforeload events immediately after parsing a document fragment. 109040 Let the events fire later, giving the fragment time to potentially be 109041 inserted into the document. 109042 109043 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 109044 109045 Reviewed by Tor Arne Vestb. 109046 109047 Canvas: bezierCurveTo() and quadraticCurveTo() must ensure subpaths 109048 https://bugs.webkit.org/show_bug.cgi?id=41192 109049 109050 If the current path is empty, bezierCurveTo() and quadraticCurveTo() will now 109051 move to the (first) control point before adding the curve. 109052 109053 Spec links: 109054 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-beziercurveto 109055 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-quadraticcurveto 109056 109057 * html/canvas/CanvasRenderingContext2D.cpp: 109058 (WebCore::CanvasRenderingContext2D::quadraticCurveTo): 109059 (WebCore::CanvasRenderingContext2D::bezierCurveTo): 109060 109061 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 109062 109063 Reviewed by Darin Adler. 109064 109065 Canvas element cannot have negative width or height (HTML5 spec 4.8.11) 109066 https://bugs.webkit.org/show_bug.cgi?id=39149 109067 109068 If assigned a negative value, it should default to 300 for width and 150 for height. 109069 109070 Spec link: 109071 http://www.whatwg.org/specs/web-apps/current-work/#attr-canvas-width 109072 109073 Test: fast/canvas/canvas-negative-size.html 109074 109075 * html/HTMLCanvasElement.cpp: 109076 (WebCore::HTMLCanvasElement::reset): 109077 109078 2010-07-01 Darin Adler <darin (a] apple.com> 109079 109080 Reviewed by Steve Falkenburg. 109081 109082 Turn on adoptRef assertion for TreeShared. 109083 109084 * platform/TreeShared.h: Remove LOOSE_TREE_SHARED and all the ifdefs. 109085 Actually, I used LOOSE_REF_COUNTED by accident in a few places, but 109086 removing them all now. 109087 109088 * rendering/ShadowElement.cpp: 109089 (WebCore::ShadowBlockElement::create): Added adoptRef. This was a 109090 storage leak before, probably recently introduced r61324. 109091 (WebCore::ShadowInputElement::create): Ditto. 109092 109093 2010-07-01 Xan Lopez <xlopez (a] igalia.com> 109094 109095 Reviewed by Gustavo Noronha. 109096 109097 Only include the geolocation IDL in the GObject DOM bindings set 109098 if geolocation is enabled. 109099 109100 * GNUmakefile.am: 109101 109102 2010-07-01 Timothy Hatcher <timothy (a] apple.com> 109103 109104 Provide a WebView preference to disable DNS prefetching. 109105 109106 https://bugs.webkit.org/show_bug.cgi?id=28825 109107 rdar://problem/7181249 109108 109109 Reviewed by Darin Adler. 109110 109111 * WebCore.base.exp: Added Settings::setDNSPrefetchingEnabled. 109112 * dom/Document.cpp: 109113 (WebCore::Document::initDNSPrefetch): Check settings->dnsPrefetchingEnabled(). 109114 * page/Settings.cpp: 109115 (WebCore::Settings::Settings): Set m_dnsPrefetchingEnabled to true. 109116 (WebCore::Settings::setDNSPrefetchingEnabled): Added. Set m_dnsPrefetchingEnabled. 109117 * page/Settings.h: 109118 (WebCore::Settings::dnsPrefetchingEnabled): Added. Return m_dnsPrefetchingEnabled. 109119 109120 2010-07-01 Simon Fraser <simon.fraser (a] apple.com> 109121 109122 Reviewed by Darin Adler. 109123 109124 Get accelerated compositing working with webkit2 109125 https://bugs.webkit.org/show_bug.cgi?id=41084 109126 109127 Step 2: add a method, syncCompositingStateForThisLayerOnly(), to GraphicsLayer to commit 109128 batched changes non-recursively. This allows us to use GraphicsLayer in places where we 109129 don't want to kick off a recursive commit of the entire tree. 109130 109131 * platform/graphics/GraphicsLayer.h: 109132 (WebCore::GraphicsLayer::syncCompositingStateForThisLayerOnly): 109133 * platform/graphics/mac/GraphicsLayerCA.h: 109134 * platform/graphics/mac/GraphicsLayerCA.mm: 109135 (WebCore::GraphicsLayerCA::syncCompositingStateForThisLayerOnly): 109136 * WebCore.AcceleratedCompositing.exp: Export the new method for use in WebKit2. 109137 109138 2010-07-01 Simon Fraser <simon.fraser (a] apple.com> 109139 109140 Reviewed by Sam Weinig. 109141 109142 Get accelerated compositing working with webkit2 109143 https://bugs.webkit.org/show_bug.cgi?id=41084 109144 109145 Step 1: add a new .exp file for WebCore, which exports symbols only when USE(ACCELERATED_COMPOSITING) 109146 is defined. 109147 109148 Also export WebCore::FloatSize::FloatSize(WebCore::IntSize const&) from WebCore. 109149 109150 * DerivedSources.make: 109151 * WebCore.AcceleratedCompositing.exp: Added. 109152 * WebCore.base.exp: 109153 * WebCore.xcodeproj/project.pbxproj: 109154 109155 2010-07-01 Alexey Proskuryakov <ap (a] apple.com> 109156 109157 Reviewed by Darin Adler. 109158 109159 <rdar://problem/8148656> <https://bugs.webkit.org/show_bug.cgi?id=41431> 109160 REGRESSION (r49411): Various crashes due to JavaScript execution during plug-in destruction 109161 109162 Test: plugins/write-xssauditor-from-destroy.html 109163 109164 Fix specific known cases that also crash in same process case. I don't know if there is 109165 any rule for when documentLoader should be checked for being null, it looks like a mess. 109166 109167 * loader/FrameLoader.cpp: 109168 (WebCore::FrameLoader::referrer): 109169 * page/XSSAuditor.cpp: 109170 (WebCore::XSSAuditor::findInRequest): 109171 109172 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 109173 109174 Reviewed by Darin Adler. 109175 109176 The HTML5 canvas 2d.drawImage.zerocanvas test does not pass 109177 https://bugs.webkit.org/show_bug.cgi?id=40271 109178 109179 Throw INVALID_STATE_ERR when attempting to draw a canvas with zero width or height. 109180 109181 Spec link: 109182 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-drawimage 109183 109184 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 109185 (WebCore::JSCanvasRenderingContext2D::drawImage): Call setDOMException after drawImage(canvas, x, y) 109186 * html/canvas/CanvasRenderingContext2D.cpp: 109187 (WebCore::CanvasRenderingContext2D::drawImage): 109188 109189 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 109190 109191 Reviewed by Oliver Hunt. 109192 109193 [Qt] Canvas: clip() should use non-zero winding rule 109194 https://bugs.webkit.org/show_bug.cgi?id=41466 109195 109196 Use non-zero winding number rule when clipping a GraphicsContext from canvas. 109197 Fixes appearance of the "pill" in the web inspector. 109198 109199 * platform/graphics/qt/GraphicsContextQt.cpp: 109200 (WebCore::GraphicsContext::canvasClip): 109201 109202 2010-07-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 109203 109204 Unreviewed, rolling out r62246. 109205 http://trac.webkit.org/changeset/62246 109206 https://bugs.webkit.org/show_bug.cgi?id=41470 109207 109208 "Worker tests are broken in Chromium" (Requested by yurys on 109209 #webkit). 109210 109211 * bindings/v8/ScriptController.cpp: 109212 (WebCore::ScriptController::processingUserGesture): 109213 * bindings/v8/V8AbstractEventListener.cpp: 109214 (WebCore::V8AbstractEventListener::invokeEventHandler): 109215 * bindings/v8/V8HiddenPropertyName.h: 109216 * bindings/v8/custom/V8DOMWindowCustom.cpp: 109217 (WebCore::V8DOMWindow::eventAccessorGetter): 109218 (WebCore::V8DOMWindow::eventAccessorSetter): 109219 109220 2010-07-01 Andreas Kling <andreas.kling (a] nokia.com> 109221 109222 Reviewed by Tor Arne Vestb. 109223 109224 Canvas: Exception erroneously thrown for drawImage() when image.complete=false 109225 https://bugs.webkit.org/show_bug.cgi?id=33968 109226 109227 Do nothing in drawImage() if called with an image whose 'complete' 109228 attribute is false, or a video whose readyState is either HAVE_NOTHING 109229 or HAVE_METADATA. 109230 109231 Spec link: 109232 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-drawimage 109233 109234 Test: fast/canvas/canvas-drawImage-incomplete.html 109235 109236 * html/canvas/CanvasRenderingContext2D.cpp: 109237 (WebCore::CanvasRenderingContext2D::drawImage): 109238 109239 2010-07-01 Justin Schuh <jschuh (a] chromium.org> 109240 109241 Reviewed by Dan Bernstein. 109242 109243 Prevent crash on counter destruction 109244 https://bugs.webkit.org/show_bug.cgi?id=40032 109245 109246 Added counter destruction to RenderWidget::destroy() 109247 109248 Test: fast/css/counters/destroy-counter-crash.html 109249 109250 * rendering/RenderWidget.cpp: 109251 (WebCore::RenderWidget::destroy): 109252 109253 2010-07-01 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 109254 109255 Unreviewed build fix after r62215. 109256 109257 No new functionality, so no new tests. 109258 109259 * CMakeLists.txt: Add missing files and re-sort. 109260 109261 2010-07-01 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 109262 109263 Reviewed by Kenneth Rohde Christiansen. 109264 109265 [Qt] Remove an unneeded assert. 109266 109267 This assert is triggered for example while showing the falling leaves demo. 109268 GraphicsLayerQtImpl::toGraphicsLayerQtImpl asserts that its input 109269 pointer is null. Looking at the uses of this method it seems like 109270 it is expected to return null if a null pointer is given to it. 109271 109272 * platform/graphics/qt/GraphicsLayerQt.cpp: 109273 (WebCore::toGraphicsLayerQtImpl): 109274 109275 2010-06-16 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 109276 109277 Reviewed by Simon Hausmann. 109278 109279 [Qt] Fix qmake vcproj generation for QtWebKit. 109280 109281 qmake use TARGET=/LIBS+= -lTARGET to create dependencies 109282 between projects in a subdir template. 109283 109284 Since when compiling outside of Qt we hijack the target name of 109285 QtWebKit to add the configuration and version suffix to the binary 109286 filename, qmake can't establish the WebCore project as a dependency 109287 to QtTestBrowser. 109288 109289 This patch makes sure that the target is not hijacked on the 109290 first of the three passes where the dependencies are determined. 109291 109292 * WebCore.pro: 109293 109294 2010-07-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 109295 109296 Reviewed by Dirk Schulze. 109297 109298 SVGRenderStyle::diff() is missing 109299 https://bugs.webkit.org/show_bug.cgi?id=41455 109300 109301 Don't just return StyleDifferenceLayout when two SVGRenderStyle objects differ. 109302 Figure out when to repaint, and as last resort do a relayout. 109303 109304 Lively Kernel doesn't do any relayouts anymore, same for lots of demos in the IE9 testcenter. 109305 109306 * rendering/style/RenderStyle.cpp: 109307 (WebCore::RenderStyle::diff): 109308 * rendering/style/SVGRenderStyle.cpp: 109309 (WebCore::SVGRenderStyle::diff): 109310 * rendering/style/SVGRenderStyle.h: 109311 109312 2010-07-01 Antti Koivisto <koivisto (a] iki.fi> 109313 109314 Revert accidental commit. 109315 109316 * platform/network/qt/ResourceRequestQt.cpp: 109317 (WebCore::ResourceRequest::toNetworkRequest): 109318 109319 2010-07-01 Patrick Gansterer <paroga (a] paroga.com> 109320 109321 Reviewed by Nikolas Zimmermann. 109322 109323 Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r62196. 109324 https://bugs.webkit.org/show_bug.cgi?id=40984 109325 109326 * rendering/SVGRenderSupport.cpp: 109327 (WebCore::SVGRenderSupport::finishRenderSVGContent): 109328 109329 2010-07-04 Patrick Gansterer <paroga (a] paroga.com> 109330 109331 Reviewed by Dirk Schulze. 109332 109333 Buildfix for !ENABLE(FILTERS) after r62238. 109334 https://bugs.webkit.org/show_bug.cgi?id=41456 109335 109336 * rendering/SVGRenderSupport.cpp: 109337 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): 109338 109339 2010-07-01 MORITA Hajime <morrita (a] google.com> 109340 109341 Unreviewed build fix. 109342 109343 * rendering/RenderInputSpeech.cpp: 109344 (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): 109345 * rendering/RenderInputSpeech.h: 109346 * rendering/RenderTheme.cpp: 109347 (WebCore::RenderTheme::paintInputFieldSpeechButton): 109348 * rendering/RenderTheme.h: 109349 109350 2010-07-01 Satish Sampath <satish (a] chromium.org> 109351 109352 Reviewed by Kent Tamura. 109353 109354 Rendering the speech button in input elements. 109355 https://bugs.webkit.org/show_bug.cgi?id=40984 109356 109357 The button currently has only one state and rendered as an image on all platforms. Subsequent 109358 patches will add user input handling and more states + rendering code to the button. The 109359 button's appearance can be customized by individual ports in their RenderTheme implementation 109360 if required. 109361 109362 Tests: platform/mac/fast/forms/input-appearance-numberandspeech.html 109363 platform/mac/fast/forms/input-appearance-searchandspeech.html 109364 platform/mac/fast/forms/input-appearance-speechbutton.html 109365 109366 * GNUmakefile.am: 109367 * Resources/inputSpeech.png: Added. 109368 * Resources/inputSpeech.tiff: Added. Used by the Mac implementation. 109369 * WebCore.gypi: 109370 * WebCore.pro: 109371 * WebCore.qrc: 109372 * WebCore.xcodeproj/project.pbxproj: 109373 * platform/graphics/qt/ImageQt.cpp: 109374 (loadResourcePixmap): Load the speech button images for Qt port. 109375 * rendering/RenderInputSpeech.cpp: Added. 109376 (WebCore::RenderInputSpeech::adjustInputFieldSpeechButtonStyle): Sets the button's dimensions. 109377 (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): 109378 * rendering/RenderInputSpeech.h: Added. 109379 * rendering/RenderTextControlSingleLine.cpp: 109380 (WebCore::RenderTextControlSingleLine::layout): 109381 (WebCore::RenderTextControlSingleLine::forwardEvent): 109382 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): Create the speech button. 109383 (WebCore::RenderTextControlSingleLine::createInnerBlockStyle): 109384 * rendering/RenderTheme.cpp: 109385 (WebCore::RenderTheme::adjustStyle): 109386 (WebCore::RenderTheme::paint): 109387 (WebCore::RenderTheme::adjustInputFieldSpeechButtonStyle): 109388 (WebCore::RenderTheme::paintInputFieldSpeechButton): 109389 * rendering/RenderTheme.h: 109390 * rendering/RenderThemeMac.mm: 109391 (WebCore::RenderThemeMac::paintSearchFieldCancelButton): Get cancel button to render to the left of 109392 speech button when enabled. 109393 109394 2010-07-01 Mario Sanchez Prada <msanchez (a] igalia.com> 109395 109396 Reviewed by Xan Lopez. 109397 109398 [GTK] Extra nullcheck needed at SelectionControllerGtk.cpp 109399 https://bugs.webkit.org/show_bug.cgi?id=41447 109400 109401 Extra null check added. 109402 109403 * editing/gtk/SelectionControllerGtk.cpp: 109404 (WebCore::SelectionController::notifyAccessibilityForSelectionChange): 109405 109406 2010-07-01 Yury Semikhatsky <yurys (a] chromium.org> 109407 109408 Reviewed by Adam Barth. 109409 109410 [v8] Web Inspector: inspected page crashes on attempt to change iframe's src attribute 109411 https://bugs.webkit.org/show_bug.cgi?id=41350 109412 109413 Tests: fast/events/popup-blocked-from-fake-user-gesture.html 109414 http/tests/inspector/change-iframe-src.html 109415 109416 * bindings/v8/ScriptController.cpp: 109417 (WebCore::ScriptController::processingUserGesture): use V8Proxy from the ScriptController instead of one 109418 from the call stack. Get event directly from hidden property to avoid unnecessary checks. 109419 * bindings/v8/V8AbstractEventListener.cpp: 109420 (WebCore::V8AbstractEventListener::invokeEventHandler): 109421 * bindings/v8/V8HiddenPropertyName.h: 109422 * bindings/v8/custom/V8DOMWindowCustom.cpp: 109423 (WebCore::V8DOMWindow::eventAccessorGetter): 109424 (WebCore::V8DOMWindow::eventAccessorSetter): 109425 109426 2010-07-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 109427 109428 Reviewed by Dirk Schulze. 109429 109430 RenderSVGContainer/RenderSVGRoot report wrong strokeBoundingBox() 109431 https://bugs.webkit.org/show_bug.cgi?id=41450 109432 109433 strokeBoundingBox() was reporting the repaintRectInLocalCoordinates() for children of a container, 109434 instead of the actual strokeBoundingBox(). Only visible in WebInspector when looking at a container 109435 which has a resource applied and contains a children which also has a resource applied. 109436 109437 Doesn't affect any test results. 109438 109439 * rendering/RenderSVGContainer.cpp: 109440 (WebCore::RenderSVGContainer::objectBoundingBox): 109441 (WebCore::RenderSVGContainer::strokeBoundingBox): 109442 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 109443 * rendering/RenderSVGRoot.cpp: 109444 (WebCore::RenderSVGRoot::objectBoundingBox): Deinlined this functions, it's virtual so there's no gain. 109445 (WebCore::RenderSVGRoot::strokeBoundingBox): Ditto. 109446 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): 109447 * rendering/RenderSVGRoot.h: 109448 * rendering/SVGRenderSupport.cpp: 109449 (WebCore::SVGRenderSupport::computeContainerBoundingBox): 109450 * rendering/SVGRenderSupport.h: Add enum controlling the mode of container bounding box mode calculation. 109451 109452 2010-07-01 Zoltan Herczeg <zherczeg (a] webkit.org> 109453 109454 Reviewed by Nikolas Zimmermann. 109455 109456 Implementing feConvolveMatrix svg filter 109457 https://bugs.webkit.org/show_bug.cgi?id=5861 109458 109459 The implementation is optimized for speed, and uses 109460 multiple algorithms for different parts of the image. 109461 See SVGFEConvolveMatrixElement.cpp for a detailed 109462 description. 109463 109464 * svg/SVGFEConvolveMatrixElement.cpp: 109465 (WebCore::SVGFEConvolveMatrixElement::build): 109466 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: 109467 (WebCore::clampRGBAValue): 109468 (WebCore::FEConvolveMatrix::fastSetInteriorPixels): 109469 (WebCore::FEConvolveMatrix::getPixelValue): 109470 (WebCore::FEConvolveMatrix::fastSetOuterPixels): 109471 (WebCore::FEConvolveMatrix::setInteriorPixels): 109472 (WebCore::FEConvolveMatrix::setOuterPixels): 109473 (WebCore::FEConvolveMatrix::apply): 109474 * svg/graphics/filters/SVGFEConvolveMatrix.h: 109475 (WebCore::FEConvolveMatrix::uniteChildEffectSubregions): 109476 109477 2010-07-01 Adam Barth <abarth (a] webkit.org> 109478 109479 Reviewed by Eric Seidel. 109480 109481 Abstract 'a'-'z' checks into a function 109482 https://bugs.webkit.org/show_bug.cgi?id=41438 109483 109484 Hopefully this version is more readable. 109485 109486 * html/HTMLTokenizer.cpp: 109487 (WebCore::HTMLTokenizer::nextToken): 109488 109489 2010-07-01 Adam Barth <abarth (a] webkit.org> 109490 109491 Reviewed by Eric Seidel. 109492 109493 Parameter names in frame src URLs parsed incorrectly if resembles HTML entity code followed by underscore 109494 https://bugs.webkit.org/show_bug.cgi?id=41345 109495 109496 Apparently whether an HTML entity requires a trailing semicolon varies 109497 depending on the entity. The full table is in the spec: 109498 109499 http://www.whatwg.org/specs/web-apps/current-work/multipage/named-character-references.html#named-character-references 109500 109501 I believe branch added in this patch is accurate. At some point, I'll 109502 add a full test suite for all the named entities. 109503 109504 * html/HTMLEntityParser.cpp: 109505 (WebCore::consumeHTMLEntity): 109506 109507 2010-07-01 Eric Seidel <eric (a] webkit.org> 109508 109509 Unreviewed. Fix paste-o in Gtk build file. 109510 109511 Split out HTMLFormattingElementList into its own file 109512 https://bugs.webkit.org/show_bug.cgi?id=41440 109513 109514 * GNUmakefile.am: 109515 109516 2010-07-01 Nikolas Zimmermann <nzimmermann (a] rim.com> 109517 109518 Reviewed by Eric Seidel & Dirk Schulze. 109519 109520 Performance regression for setting content of <text> in SVG 109521 https://bugs.webkit.org/show_bug.cgi?id=36564 109522 109523 Dramatically reducing the number of repaintRectInLocalCoordinates() calls needed while painting. 109524 Do not pass the repaintRect to prepareToRenderSVGContent, only calculate it if opacity < 1 or -webkit-svg-shadow is set. 109525 Most noticeable is that RenderSVGRoot had to visit all children, before actually painting, just to calculate the repaint rect. 109526 And as RenderSVGRoot never carries shadow or opacity it was completly useless. 109527 109528 RenderSVGContainer also called repaintRectInLocalCoordinates, but the result is only needed when painting outlines, which is a rare case. 109529 These modifications fix the performance regression and the number of repaintRectInLocalCoordinate calls for the complex example in 109530 the bug report with 500 runs shrinks from 1.7 million calls to less than 105.000. 109531 109532 50 runs without the patch: ~ 520.8ms 109533 50 runs with the patch : ~ 501.8ms 109534 109535 The test calls setTimeout(0) 50 times, that already accounts for the 500ms. So setting the content of a <text> 109536 element withs clippers applied, is very cheap now. 109537 109538 Also remove the need to pass in a filter argument to prepareToRenderSVGContent/finishRenderSVGContent, it can easily be grabbed 109539 of the cache - just like all other resources are handled, simplifying the code. 109540 109541 * rendering/RenderPath.cpp: 109542 (WebCore::RenderPath::paint): 109543 * rendering/RenderSVGContainer.cpp: 109544 (WebCore::RenderSVGContainer::paint): 109545 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 109546 * rendering/RenderSVGImage.cpp: 109547 (WebCore::RenderSVGImage::paint): 109548 * rendering/RenderSVGRoot.cpp: 109549 (WebCore::RenderSVGRoot::paint): 109550 * rendering/SVGInlineFlowBox.cpp: 109551 (WebCore::SVGInlineFlowBox::paint): 109552 * rendering/SVGRenderSupport.cpp: 109553 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): 109554 (WebCore::SVGRenderSupport::finishRenderSVGContent): 109555 * rendering/SVGRenderSupport.h: 109556 * rendering/SVGRootInlineBox.cpp: 109557 (WebCore::SVGRootInlineBox::paint): 109558 109559 2010-07-01 Eric Seidel <eric (a] webkit.org> 109560 109561 Reviewed by Adam Barth. 109562 109563 Split out HTMLFormattingElementList into its own file 109564 https://bugs.webkit.org/show_bug.cgi?id=41440 109565 109566 No functional changes, thus no tests. 109567 109568 * Android.mk: 109569 * CMakeLists.txt: 109570 * GNUmakefile.am: 109571 * WebCore.gypi: 109572 * WebCore.pro: 109573 * WebCore.vcproj/WebCore.vcproj: 109574 * WebCore.xcodeproj/project.pbxproj: 109575 * html/HTMLTreeBuilder.cpp: 109576 (WebCore::HTMLTreeBuilder::processEndTag): 109577 (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement): 109578 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 109579 * html/HTMLTreeBuilder.h: 109580 109581 2010-07-01 Adam Barth <abarth (a] webkit.org> 109582 109583 Reviewed by Eric Seidel. 109584 109585 BogusCommentState should come in from the cold 109586 https://bugs.webkit.org/show_bug.cgi?id=41439 109587 109588 The BogusCommentState has always been wrong. The proximate issue is 109589 that it didn't handle resuming correctly when parsing a partial input 109590 stream. Now that we have EOF working properly, we can actually 109591 implement this state correctly. 109592 109593 We need to distinguish when we enter this state from when we continue 109594 in this state. We could do that with a branch for each character, but 109595 it seemed easier to split the state in two, even though that leaves us 109596 with one more state in our tokenizer than we have in the HTML5 spec. 109597 109598 * html/HTMLTokenizer.cpp: 109599 (WebCore::HTMLTokenizer::nextToken): 109600 * html/HTMLTokenizer.h: 109601 (WebCore::HTMLTokenizer::): 109602 109603 2010-06-30 Adam Barth <abarth (a] webkit.org> 109604 109605 Reviewed by Eric Seidel. 109606 109607 HTMLTokenizer's whitespace checks are very redundant 109608 https://bugs.webkit.org/show_bug.cgi?id=41434 109609 109610 This patch adds isTokenizerWhitespace, which replaces a lot of 109611 redundant logic in nextToken. 109612 109613 * html/HTMLTokenizer.cpp: 109614 (WebCore::HTMLTokenizer::nextToken): 109615 109616 2010-06-30 Andreas Kling <andreas.kling (a] nokia.com> 109617 109618 Reviewed by Kenneth Rohde Christiansen. 109619 109620 [Qt] Crash when uploading document to Google Docs 109621 https://bugs.webkit.org/show_bug.cgi?id=40795 109622 109623 Fix bug where the local file wasn't opened (for POSTing) 109624 if it were the first element in the form. 109625 109626 * platform/network/qt/QNetworkReplyHandler.cpp: 109627 (WebCore::FormDataIODevice::FormDataIODevice): 109628 (WebCore::FormDataIODevice::moveToNextElement): 109629 (WebCore::FormDataIODevice::openFileForCurrentElement): 109630 * platform/network/qt/QNetworkReplyHandler.h: 109631 109632 2010-06-30 Eric Seidel <eric (a] webkit.org> 109633 109634 Reviewed by Adam Barth. 109635 109636 Implement generateImpliedEndTags and deploy to steps which were blocked on it 109637 https://bugs.webkit.org/show_bug.cgi?id=41432 109638 109639 This fixes one subtest in html5lib/runner.html and positively 109640 effects a couple others. 109641 109642 More code sharing will be needed here. For the moment 109643 we're using copy/paste code, but that will soon be shared. 109644 109645 * html/HTMLTreeBuilder.cpp: 109646 (WebCore::HTMLTreeBuilder::processEndTag): 109647 (WebCore::HTMLTreeBuilder::generateImpliedEndTagsWithExclusion): 109648 (WebCore::HTMLTreeBuilder::generateImpliedEndTags): 109649 * html/HTMLTreeBuilder.h: 109650 109651 2010-06-30 Csaba Osztrogonc <ossy (a] webkit.org> 109652 109653 Unreviewed buildfix after r62196 and r62214. 109654 109655 * html/HTMLElementStack.cpp: Put !ENABLE(SVG) guard instead of 109656 !ENABLE(SVG_FOREIGN_OBJECT) around include of SVGNames.h. 109657 109658 2010-06-30 Sam Weinig <sam (a] webkit.org> 109659 109660 Really fix the windows build. 109661 109662 * bindings/js/JSBindingsAllInOne.cpp: 109663 109664 2010-06-30 Sam Weinig <sam (a] webkit.org> 109665 109666 Another Chromium build fix. 109667 109668 * page/DOMWindow.idl: 109669 109670 2010-06-30 Sam Weinig <sam (a] webkit.org> 109671 109672 Fix Chromium build. 109673 109674 * WebCore.gyp/WebCore.gyp: 109675 109676 2010-06-30 Sam Weinig <sam (a] webkit.org> 109677 109678 Fix Windows build. 109679 109680 * bindings/js/JSBindingsAllInOne.cpp: 109681 109682 2010-06-30 Sam Weinig <sam (a] webkit.org> 109683 109684 Fix Gtk build. 109685 109686 * GNUmakefile.am: 109687 109688 2010-06-29 Sam Weinig <sam (a] webkit.org> 109689 109690 Reviewed by Dan Bernstein. 109691 109692 Patch for https://bugs.webkit.org/show_bug.cgi?id=41146 109693 <rdar://problem/8126069> 109694 Implement the .dataset DOM property 109695 109696 Tests: fast/dom/dataset-xhtml.xhtml 109697 fast/dom/dataset.html 109698 109699 * DerivedSources.cpp: 109700 * DerivedSources.make: 109701 * GNUmakefile.am: 109702 * WebCore.gypi: 109703 * WebCore.pro: 109704 * WebCore.vcproj/WebCore.vcproj: 109705 * WebCore.xcodeproj/project.pbxproj: 109706 * bindings/js/JSDOMStringMapCustom.cpp: Added. 109707 (WebCore::JSDOMStringMap::canGetItemsForName): 109708 (WebCore::JSDOMStringMap::nameGetter): 109709 (WebCore::JSDOMStringMap::getOwnPropertyNames): 109710 (WebCore::JSDOMStringMap::deleteProperty): 109711 (WebCore::JSDOMStringMap::putDelegate): 109712 * bindings/js/JSDOMStringMapCustom.h: Added. 109713 * dom/DOMStringMap.cpp: Added. 109714 (WebCore::DOMStringMap::~DOMStringMap): 109715 * dom/DOMStringMap.h: Added. 109716 (WebCore::DOMStringMap::DOMStringMap): 109717 * dom/DOMStringMap.idl: Added. 109718 * dom/DatasetDOMStringMap.cpp: Added. 109719 (WebCore::isValidAttributeName): 109720 (WebCore::convertAttributeNameToPropertyName): 109721 (WebCore::propertyNameMatchesAttributeName): 109722 (WebCore::isValidPropertyName): 109723 (WebCore::convertPropertyNameToAttributeName): 109724 (WebCore::DatasetDOMStringMap::ref): 109725 (WebCore::DatasetDOMStringMap::deref): 109726 (WebCore::DatasetDOMStringMap::getNames): 109727 (WebCore::DatasetDOMStringMap::item): 109728 (WebCore::DatasetDOMStringMap::contains): 109729 (WebCore::DatasetDOMStringMap::setItem): 109730 (WebCore::DatasetDOMStringMap::deleteItem): 109731 * dom/DatasetDOMStringMap.h: Added. 109732 (WebCore::DatasetDOMStringMap::create): 109733 (WebCore::DatasetDOMStringMap::DatasetDOMStringMap): 109734 * dom/Element.cpp: 109735 (WebCore::Element::dataset): 109736 * dom/Element.h: 109737 * dom/Element.idl: 109738 * dom/ElementRareData.h: 109739 * page/DOMWindow.idl: 109740 109741 2010-06-30 Darin Adler <darin (a] apple.com> 109742 109743 More Qt build fix. 109744 109745 * html/HTMLElementStack.cpp: Put !ENABLE(SVG_FOREIGN_OBJECT) around 109746 include of SVGNames.h too. 109747 109748 2010-06-30 Darin Adler <darin (a] apple.com> 109749 109750 Reviewed by Adam Barth. 109751 109752 Add assertion, off by default, for when you forget to do adoptRef 109753 https://bugs.webkit.org/show_bug.cgi?id=41422 109754 109755 * platform/TreeShared.h: Added code to require adoption and assert if 109756 you don't call adoptRef. For now, it is turned off because of the 109757 LOOSE_TREE_SHARED define in this header. Later we can turn it on 109758 once we get everything working without asserting. Note also that it 109759 only works for objects with an initial reference count of 1. 109760 109761 2010-06-30 Patrick Gansterer <paroga (a] paroga.com> 109762 109763 Reviewed by Darin Adler. 109764 109765 Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r62196. 109766 https://bugs.webkit.org/show_bug.cgi?id=41429 109767 109768 * html/HTMLElementStack.cpp: 109769 109770 2010-06-30 Eric Seidel <eric (a] webkit.org> 109771 109772 Reviewed by Adam Barth. 109773 109774 Add new popUntil(tagName) function and deploy 109775 https://bugs.webkit.org/show_bug.cgi?id=41405 109776 109777 Add a new popUntil function to share some common code 109778 between states. There is more code to share here, but this 109779 is a start. 109780 109781 I also filled in a couple similar states to these with the 109782 hope of sharing more code, but decided to wait for a later 109783 patch. 109784 109785 No test changes, since this code doesn't do enough yet to 109786 pass any more subtests. Lack of generateImpliedEndTags is the main 109787 blocking issue. 109788 109789 * html/HTMLElementStack.cpp: 109790 (WebCore::HTMLElementStack::popUntil): 109791 * html/HTMLElementStack.h: 109792 * html/HTMLTreeBuilder.cpp: 109793 (WebCore::HTMLTreeBuilder::processEndTag): 109794 109795 2010-06-30 Xan Lopez <xlopez (a] igalia.com> 109796 109797 Reviewed by Gustavo Noronha. 109798 109799 [GTK] Unit test for DOM insertion methods 109800 https://bugs.webkit.org/show_bug.cgi?id=40495 109801 109802 Fix typo in custom function detection method. 109803 109804 * bindings/scripts/CodeGeneratorGObject.pm: 109805 109806 2010-06-30 Eric Seidel <eric (a] webkit.org> 109807 109808 Reviewed by Adam Barth. 109809 109810 Implement HTML5 "in scope" algorithm and attempt to use it 109811 https://bugs.webkit.org/show_bug.cgi?id=41402 109812 109813 Implemented the 4 needed "in scope" functions for HTML5. 109814 3 for the different sets of scope markers, and one for 109815 doing exact element comparisons instead of tag name searches. 109816 109817 I deployed inScope("body") for </body> and </html> in InBody. 109818 109819 Adds two new (expected) failures, since we're now 109820 switching out of InBody to AfterBody when seeing 109821 </html>. We don't implement AfterBody yet, so 109822 the rest of the content after </html> is ignored. 109823 109824 * html/HTMLElementStack.cpp: 109825 (WebCore::inScopeCommon): 109826 (WebCore::HTMLElementStack::inScope): 109827 (WebCore::HTMLElementStack::inListItemScope): 109828 (WebCore::HTMLElementStack::inTableScope): 109829 * html/HTMLElementStack.h: 109830 * html/HTMLTreeBuilder.cpp: 109831 (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody): 109832 (WebCore::HTMLTreeBuilder::processEndTag): 109833 * html/HTMLTreeBuilder.h: 109834 109835 2010-06-30 Eric Seidel <eric (a] webkit.org> 109836 109837 Reviewed by Adam Barth. 109838 109839 Split HTMLElementStack out into its own file 109840 https://bugs.webkit.org/show_bug.cgi?id=41399 109841 109842 No functional change, thus no tests. 109843 109844 * Android.mk: 109845 * CMakeLists.txt: 109846 * GNUmakefile.am: 109847 * WebCore.gypi: 109848 * WebCore.pro: 109849 * WebCore.vcproj/WebCore.vcproj: 109850 * WebCore.xcodeproj/project.pbxproj: 109851 * html/HTMLElementStack.cpp: Added. 109852 (WebCore::HTMLElementStack::ElementRecord::ElementRecord): 109853 (WebCore::HTMLElementStack::ElementRecord::element): 109854 (WebCore::HTMLElementStack::ElementRecord::next): 109855 (WebCore::HTMLElementStack::ElementRecord::releaseNext): 109856 (WebCore::HTMLElementStack::ElementRecord::setNext): 109857 (WebCore::HTMLElementStack::HTMLElementStack): 109858 (WebCore::HTMLElementStack::~HTMLElementStack): 109859 (WebCore::HTMLElementStack::popHTMLHeadElement): 109860 (WebCore::HTMLElementStack::pop): 109861 (WebCore::HTMLElementStack::pushHTMLHtmlElement): 109862 (WebCore::HTMLElementStack::pushHTMLHeadElement): 109863 (WebCore::HTMLElementStack::pushHTMLBodyElement): 109864 (WebCore::HTMLElementStack::push): 109865 (WebCore::HTMLElementStack::top): 109866 (WebCore::HTMLElementStack::removeHTMLHeadElement): 109867 (WebCore::HTMLElementStack::remove): 109868 (WebCore::HTMLElementStack::contains): 109869 (WebCore::HTMLElementStack::inScope): 109870 (WebCore::HTMLElementStack::htmlElement): 109871 (WebCore::HTMLElementStack::headElement): 109872 (WebCore::HTMLElementStack::bodyElement): 109873 (WebCore::HTMLElementStack::pushCommon): 109874 (WebCore::HTMLElementStack::popCommon): 109875 (WebCore::HTMLElementStack::removeNonFirstCommon): 109876 * html/HTMLElementStack.h: Added. 109877 * html/HTMLTreeBuilder.h: 109878 109879 2010-06-30 Kenneth Russell <kbr (a] google.com> 109880 109881 Reviewed by Oliver Hunt. 109882 109883 WebCore::WebGLArrayInternal::lengthAttrGetter ReadAV@NULL (b1a3e1a3e9d01f17fd493d68eeb2742f) 109884 https://bugs.webkit.org/show_bug.cgi?id=38040 109885 109886 Changed custom ArrayBufferView constructors to create a 109887 fully-initialized, zero-length array when called with zero 109888 arguments. This is the simplest fix which works identically in 109889 both the JSC and V8 bindings. 109890 109891 Test: fast/canvas/webgl/array-buffer-view-crash.html 109892 109893 * bindings/js/JSArrayBufferViewHelper.h: 109894 (WebCore::constructArrayBufferView): 109895 * bindings/v8/custom/V8ArrayBufferViewCustom.h: 109896 (WebCore::constructWebGLArray): 109897 109898 2010-06-30 Victor Wang <victorw (a] chromium.org> 109899 109900 Reviewed by Darin Fisher. 109901 109902 [chromium] update webcore gyp to use v8 dll for chromium multi dll build. 109903 109904 https://bugs.webkit.org/show_bug.cgi?id=41376 109905 109906 * WebCore.gyp/WebCore.gyp: 109907 109908 2010-06-30 Jeremy Moskovich <jeremy (a] chromium.org> 109909 109910 Reviewed by Dimitri Glazkov. 109911 109912 [Chromium] Add OOP font loading to FontPlatformDataChromiumMac. 109913 109914 On OS X, with font management software installed. Fonts 109915 can reside in an arbitrary path on disk which is blocked by 109916 Chromium's sandbox. 109917 109918 This change adds hooks to FontPlaformData which allow cross-process 109919 font loading in case of need. 109920 109921 https://bugs.webkit.org/show_bug.cgi?id=41148 109922 109923 Not possible to test - requires sandboxing which DRT doesn't support. 109924 109925 * WebCore.gypi: 109926 * platform/graphics/chromium/FontPlatformDataChromiumMac.mm: Added. 109927 (WebCore::FontPlatformData::FontPlatformData): 109928 (WebCore::FontPlatformData::~FontPlatformData): 109929 (WebCore::FontPlatformData::operator=): 109930 (WebCore::FontPlatformData::setFont): 109931 (WebCore::FontPlatformData::roundsGlyphAdvances): 109932 (WebCore::FontPlatformData::allowsLigatures): 109933 (WebCore::FontPlatformData::description): 109934 109935 2010-06-30 Jeremy Moskovich <jeremy (a] chromium.org> 109936 109937 Reviewed by Dan Bernstein. 109938 109939 Minor tweaks to FontPlatformDataMac & SimpleFontDataMac.mm 109940 109941 * Avoid an extra FontPlatformData copy in SimpleFontDataMac.mm 109942 * Fix a typo in FontPlatformDataMac.mm 109943 109944 https://bugs.webkit.org/show_bug.cgi?id=41152 109945 109946 No behavior changes so no new tests. 109947 109948 * platform/graphics/mac/FontPlatformDataMac.mm: 109949 (WebCore::FontPlatformData::description): 109950 * platform/graphics/mac/SimpleFontDataMac.mm: 109951 (WebCore::copyFontTableForTag): 109952 109953 2010-06-30 Andreas Kling <andreas.kling (a] nokia.com> 109954 109955 Reviewed by Kenneth Rohde Christiansen. 109956 109957 [Qt] Make "disallow multiple calls to SetWindow" on windowed plugins a quirk 109958 https://bugs.webkit.org/show_bug.cgi?id=41407 109959 109960 Only disallow calling SetWindow more than once if we're using Flash 9 or older. 109961 This fixes resizing of YouTube videos via the player's own button. 109962 109963 Removed copy-pasted logic in PluginViewGtk since the issue only exists 109964 when running Flash with a non-Gtk toolkit. 109965 109966 * plugins/PluginPackage.cpp: 109967 (WebCore::PluginPackage::determineQuirks): 109968 * plugins/PluginQuirkSet.h: 109969 (WebCore::): 109970 * plugins/gtk/PluginViewGtk.cpp: 109971 (WebCore::PluginView::setNPWindowIfNeeded): Remove unnecessary logic copy-pasted from PluginViewQt. 109972 * plugins/qt/PluginViewQt.cpp: 109973 (WebCore::PluginView::setNPWindowIfNeeded): 109974 109975 2010-06-30 Andreas Kling <andreas.kling (a] nokia.com> 109976 109977 Reviewed by Antti Koivisto. 109978 109979 [Qt, Gtk, Symbian] Mind the semantics of NPRect for windowed plugin clip rects 109980 https://bugs.webkit.org/show_bug.cgi?id=41406 109981 109982 NPRect has right/bottom instead of width/height. 109983 This was fixed in PluginViewMac with http://trac.webkit.org/changeset/45815 109984 109985 * plugins/gtk/PluginViewGtk.cpp: 109986 (WebCore::PluginView::setNPWindowIfNeeded): 109987 * plugins/qt/PluginViewQt.cpp: 109988 (WebCore::PluginView::setNPWindowIfNeeded): 109989 * plugins/symbian/PluginViewSymbian.cpp: 109990 (WebCore::PluginView::setNPWindowIfNeeded): 109991 109992 2010-06-30 Antonio Gomes <tonikitoo (a] webkit.org> 109993 109994 Reviewed by Simon Fraser. 109995 109996 Spatial Navigation: make elements in inner frames nested more than 1 level deep focusable 109997 https://bugs.webkit.org/show_bug.cgi?id=41160 109998 109999 Patch addresses the problem of spatial navigation not work properly with nested 110000 inner frames by adding the isNodeDeepDescendantOfDocument method. It recursively checks 110001 if a give node is descendant of a given document or any parent of it. 110002 110003 Test: fast/events/spatial-navigation/snav-iframe-nested.html 110004 110005 * page/FocusController.cpp: 110006 (WebCore::FocusController::deepFindFocusableNodeInDirection): 110007 * page/SpatialNavigation.cpp: 110008 (WebCore::isNodeDeepDescendantOfDocument): 110009 * page/SpatialNavigation.h: 110010 110011 2010-06-30 Adam Barth <abarth (a] webkit.org> 110012 110013 Reviewed by Eric Seidel. 110014 110015 HTMLTokenizer should use fewer macros 110016 https://bugs.webkit.org/show_bug.cgi?id=41397 110017 110018 Macros are sadness. Inline functions are the new hotness. 110019 110020 * html/HTMLTokenizer.cpp: 110021 (WebCore::HTMLTokenizer::processEntity): 110022 (WebCore::HTMLTokenizer::emitAndResumeIn): 110023 (WebCore::HTMLTokenizer::emitAndReconsumeIn): 110024 (WebCore::HTMLTokenizer::emitEndOfFile): 110025 (WebCore::HTMLTokenizer::flushBufferedEndTag): 110026 (WebCore::HTMLTokenizer::flushEmitAndResumeIn): 110027 (WebCore::HTMLTokenizer::nextToken): 110028 (WebCore::HTMLTokenizer::bufferCharacter): 110029 (WebCore::HTMLTokenizer::bufferCodePoint): 110030 (WebCore::HTMLTokenizer::bufferParseError): 110031 (WebCore::HTMLTokenizer::bufferCurrentToken): 110032 (WebCore::HTMLTokenizer::bufferEndOfFile): 110033 * html/HTMLTokenizer.h: 110034 110035 2010-06-30 Justin Schuh <jschuh (a] chromium.org> 110036 110037 Reviewed by Adam Barth. 110038 110039 Remove dead binding code 110040 https://bugs.webkit.org/show_bug.cgi?id=41388 110041 110042 Removed BindingElement because it was obsoleted by r59866. 110043 110044 * WebCore.gypi: 110045 * bindings/generic/BindingElement.h: Removed. 110046 * bindings/v8/SerializedScriptValue.cpp: 110047 * bindings/v8/V8Binding.h: 110048 * bindings/v8/custom/V8DatabaseCustom.cpp: 110049 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: 110050 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 110051 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: 110052 110053 2010-06-30 Eric Seidel <eric (a] webkit.org> 110054 110055 Reviewed by Adam Barth. 110056 110057 HTMLTokenizer needs EndOfFile support 110058 https://bugs.webkit.org/show_bug.cgi?id=41344 110059 110060 EndOfFile support uncovered a bug in our implementation of finish(). 110061 finish() may be called more than once if the first call does not 110062 result in end() being called (and parsing thus actually stopping). 110063 110064 SegmentedString::close() should have ASSERTed that it was not already 110065 closed when close() is called. I've added such an assert now. 110066 110067 * html/HTMLDocumentParser.cpp: 110068 (WebCore::HTMLDocumentParser::finish): 110069 * platform/text/SegmentedString.cpp: 110070 (WebCore::SegmentedString::close): 110071 * platform/text/SegmentedString.h: 110072 110073 2010-06-29 Eric Seidel <eric (a] webkit.org> 110074 110075 Reviewed by Adam Barth. 110076 110077 HTMLTokenizer needs EndOfFile support 110078 https://bugs.webkit.org/show_bug.cgi?id=41344 110079 110080 We're using \0 as the EndOfFile marker as HTML5 replaces 110081 all other \0 with \0xFFFD. Added some special case logic 110082 to InputStreamPreprocessor::peek not to replace \0 when 110083 its being used at the end of a stream. 110084 110085 This fixed 60 subtests in html5lib/runner.html. 110086 110087 There are still at least two states (BogusCommentState and 110088 CDATASectionState) which do not have proper EOF support. 110089 110090 * html/HTMLDocumentParser.cpp: 110091 (WebCore::HTMLDocumentParser::finish): 110092 (WebCore::HTMLDocumentParser::finishWasCalled): 110093 * html/HTMLInputStream.h: 110094 (WebCore::HTMLInputStream::markEndOfFile): 110095 (WebCore::HTMLInputStream::haveSeenEndOfFile): 110096 * html/HTMLToken.h: 110097 (WebCore::HTMLToken::makeEndOfFile): 110098 * html/HTMLTokenizer.cpp: 110099 (WebCore::HTMLTokenizer::nextToken): 110100 (WebCore::HTMLTokenizer::emitEndOfFile): 110101 * html/HTMLTokenizer.h: 110102 (WebCore::HTMLTokenizer::InputStreamPreprocessor::peek): 110103 (WebCore::HTMLTokenizer::InputStreamPreprocessor::shouldTreatNullAsEndOfFileMarker): 110104 * html/HTMLTreeBuilder.cpp: 110105 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 110106 110107 2010-06-28 Eric Seidel <eric (a] webkit.org> 110108 110109 Reviewed by Adam Barth. 110110 110111 Teach HTML5TreeBuilder how to merge attributes from extra html/body elements 110112 https://bugs.webkit.org/show_bug.cgi?id=41337 110113 110114 Had to teach ElementStack to store pointers to html, head, and body 110115 elements. 110116 110117 This fixed a few tests in LayoutTests/html5lib. 110118 110119 * html/HTMLTreeBuilder.cpp: 110120 (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML): 110121 (WebCore::HTMLTreeBuilder::mergeAttributesFromTokenIntoElement): 110122 (WebCore::HTMLTreeBuilder::insertHTMLStartTagInBody): 110123 (WebCore::HTMLTreeBuilder::processStartTag): 110124 (WebCore::HTMLTreeBuilder::processEndTag): 110125 (WebCore::HTMLTreeBuilder::createElementAndAttachToCurrent): 110126 (WebCore::HTMLTreeBuilder::insertHTMLHtmlElement): 110127 (WebCore::HTMLTreeBuilder::insertHTMLHeadElement): 110128 (WebCore::HTMLTreeBuilder::insertHTMLBodyElement): 110129 (WebCore::HTMLTreeBuilder::insertElement): 110130 (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement): 110131 (WebCore::HTMLTreeBuilder::insertGenericRawTextElement): 110132 * html/HTMLTreeBuilder.h: 110133 (WebCore::HTMLTreeBuilder::ElementStack::ElementStack): 110134 (WebCore::HTMLTreeBuilder::ElementStack::popHTMLHeadElement): 110135 (WebCore::HTMLTreeBuilder::ElementStack::pop): 110136 (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLHtmlElement): 110137 (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLHeadElement): 110138 (WebCore::HTMLTreeBuilder::ElementStack::pushHTMLBodyElement): 110139 (WebCore::HTMLTreeBuilder::ElementStack::push): 110140 (WebCore::HTMLTreeBuilder::ElementStack::removeHTMLHeadElement): 110141 (WebCore::HTMLTreeBuilder::ElementStack::remove): 110142 (WebCore::HTMLTreeBuilder::ElementStack::htmlElement): 110143 (WebCore::HTMLTreeBuilder::ElementStack::headElement): 110144 (WebCore::HTMLTreeBuilder::ElementStack::bodyElement): 110145 (WebCore::HTMLTreeBuilder::ElementStack::pushCommon): 110146 (WebCore::HTMLTreeBuilder::ElementStack::popCommon): 110147 (WebCore::HTMLTreeBuilder::ElementStack::removeNonFirstCommon): 110148 110149 2010-06-30 Jos Milln Soto <jmillan (a] igalia.com> 110150 110151 Reviewed by Xan Lopez. 110152 110153 [Gtk] Text attributes not exposed 110154 https://bugs.webkit.org/show_bug.cgi?id=25528 110155 110156 Implemented the get_run_attributes and get_default_attributes 110157 functions for the ATK_TEXT role. 110158 110159 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 110160 (getAttributeSetForAccessibilityObject): 110161 (compareAttribute): 110162 (attributeSetDifference): 110163 (accessibilityObjectLength): 110164 (getAccessibilityObjectForOffset): 110165 (getRunAttributesFromAccesibilityObject): 110166 (webkit_accessible_text_get_run_attributes): 110167 (webkit_accessible_text_get_default_attributes): 110168 110169 2010-06-30 Yuta Kitamura <yutak (a] chromium.org> 110170 110171 Reviewed by Alexey Proskuryakov. 110172 110173 Fix Sec-WebSocketKey{1,2} headers. 110174 110175 According to WebSocket specification, a value of Sec-WebSocketKey{1,2} header 110176 should not start or end with a space. 110177 110178 WebSocket: Malformed handshake headers in a worker due to rand_s failing 110179 https://bugs.webkit.org/show_bug.cgi?id=41327 110180 110181 No new tests. ASSERT should catch the problem. 110182 110183 * websockets/WebSocketHandshake.cpp: 110184 (WebCore::generateSecWebSocketKey): 110185 110186 2010-06-30 Yuzo Fujishima <yuzo (a] google.com> 110187 110188 Reviewed by Dan Bernstein. 110189 110190 Fix for Bug 41339 - unicode-range property only with a descending range 110191 causes a crash 110192 110193 https://bugs.webkit.org/show_bug.cgi?id=41339 110194 110195 Test: fast/css/font-face-descending-unicode-range.html 110196 110197 * css/CSSParser.cpp: 110198 (WebCore::CSSParser::parseFontFaceUnicodeRange): 110199 110200 2010-06-29 Abhinav Mithal <abhinav.mithal (a] nokia.com> 110201 110202 Reviewed by Laszlo Gombos. 110203 110204 [Qt] [Symbian] Fix doube-deallocation while destroying PluginContainerSymbian 110205 https://bugs.webkit.org/show_bug.cgi?id=37303 110206 110207 * plugins/symbian/PluginViewSymbian.cpp: 110208 (WebCore::PluginView::platformDestroy): 110209 110210 2010-06-29 Zhenyao Mo <zmo (a] google.com> 110211 110212 Reviewed by Dimitri Glazkov. 110213 110214 Implement getAttachedShaders 110215 https://bugs.webkit.org/show_bug.cgi?id=31172 110216 110217 * bindings/js/JSWebGLRenderingContextCustom.cpp: JS binding for getAttachedShaders(). 110218 (WebCore::JSWebGLRenderingContext::getAttachedShaders): 110219 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: V8 binding for getAttachedShaders(). 110220 (WebCore::V8WebGLRenderingContext::getAttachedShadersCallback): 110221 * html/canvas/WebGLRenderingContext.cpp: 110222 (WebCore::WebGLRenderingContext::getAttachedShaders): Implementation of getAttachedShaders(). 110223 (WebCore::WebGLRenderingContext::findShader): Helper function to find a shader object from its name. 110224 * html/canvas/WebGLRenderingContext.h: Declaration of getAttachedShaders(). 110225 * html/canvas/WebGLRenderingContext.idl: Ditto. 110226 * platform/graphics/GraphicsContext3D.h: Ditto. 110227 * platform/graphics/mac/GraphicsContext3DMac.mm: 110228 (WebCore::GraphicsContext3D::getAttachedShaders): Implementation of getAttachedShaders(). 110229 110230 2010-06-29 MORITA Hajime <morrita (a] google.com> 110231 110232 Reviewed by Kent Tamura. 110233 110234 REGRESSION: [Chromium] <progress> appearance on windows looks not good 110235 https://bugs.webkit.org/show_bug.cgi?id=41343 110236 110237 RenderThemeChromiumWin::paintProgressBar() should return false, 110238 which indicates the widget is painted. 110239 110240 Test: fast/dom/HTMLProgressElement/progress-element.html 110241 * rebaselined with a wrong expectation. 110242 110243 * rendering/RenderThemeChromiumWin.cpp: 110244 (WebCore::RenderThemeChromiumWin::paintProgressBar): 110245 110246 2010-06-29 Kinuko Yasuda <kinuko (a] chromium.org> 110247 110248 Reviewed by Jian Li. 110249 110250 Fix http/tests/local/blob/send-data-blob.html on Windows 110251 https://bugs.webkit.org/show_bug.cgi?id=41228 110252 110253 Fix a regression bug in the line-conversion code. 110254 Rewrite the line-conversion function with simpler functions to 110255 make it less error prone. 110256 110257 No new tests as this is for bug fixes. 110258 110259 * platform/BlobItem.cpp: 110260 (WebCore::StringBlobItem::convertToCString): 110261 110262 2010-06-29 Dumitru Daniliuc <dumi (a] chromium.org> 110263 110264 Reviewed by Darin Fisher. 110265 110266 Implementing DatabaseSync::openDatabaseSync(). 110267 https://bugs.webkit.org/show_bug.cgi?id=40607 110268 110269 1. Moved some common code from Database to AbstractDatabase. 110270 2. Made performOpenAndVerify() virtual, since DatabaseSync doesn't 110271 need to interact with DatabaseThread. 110272 3. Removed the m_creationCallback field, since it's only needed in 110273 the openDatabase{Sync} methods. 110274 110275 * storage/AbstractDatabase.cpp: 110276 (WebCore::retrieveTextResultFromDatabase): 110277 (WebCore::setTextValueInDatabase): 110278 (WebCore::guidMutex): 110279 (WebCore::guidToVersionMap): 110280 (WebCore::updateGuidVersionMap): 110281 (WebCore::guidToDatabaseMap): 110282 (WebCore::guidForOriginAndName): 110283 (WebCore::AbstractDatabase::databaseInfoTableName): 110284 (WebCore::AbstractDatabase::AbstractDatabase): 110285 (WebCore::AbstractDatabase::closeDatabase): 110286 (WebCore::AbstractDatabase::version): 110287 (WebCore::AbstractDatabase::performOpenAndVerify): 110288 (WebCore::AbstractDatabase::scriptExecutionContext): 110289 (WebCore::AbstractDatabase::securityOrigin): 110290 (WebCore::AbstractDatabase::stringIdentifier): 110291 (WebCore::AbstractDatabase::displayName): 110292 (WebCore::AbstractDatabase::estimatedSize): 110293 (WebCore::AbstractDatabase::fileName): 110294 (WebCore::AbstractDatabase::databaseVersionKey): 110295 (WebCore::AbstractDatabase::getVersionFromDatabase): 110296 (WebCore::AbstractDatabase::setVersionInDatabase): 110297 (WebCore::AbstractDatabase::versionMatchesExpected): 110298 (WebCore::AbstractDatabase::setExpectedVersion): 110299 (WebCore::AbstractDatabase::disableAuthorizer): 110300 (WebCore::AbstractDatabase::enableAuthorizer): 110301 (WebCore::AbstractDatabase::setAuthorizerReadOnly): 110302 (WebCore::AbstractDatabase::lastActionChangedDatabase): 110303 (WebCore::AbstractDatabase::lastActionWasInsert): 110304 (WebCore::AbstractDatabase::resetDeletes): 110305 (WebCore::AbstractDatabase::hadDeletes): 110306 (WebCore::AbstractDatabase::resetAuthorizer): 110307 * storage/AbstractDatabase.h: 110308 (WebCore::AbstractDatabase::opened): 110309 (WebCore::AbstractDatabase::isNew): 110310 (WebCore::AbstractDatabase::databaseDebugName): 110311 * storage/Database.cpp: 110312 (WebCore::DatabaseCreationCallbackTask::create): 110313 (WebCore::DatabaseCreationCallbackTask::performTask): 110314 (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask): 110315 (WebCore::Database::openDatabase): 110316 (WebCore::Database::Database): 110317 (WebCore::Database::version): 110318 (WebCore::Database::openAndVerifyVersion): 110319 (WebCore::Database::close): 110320 (WebCore::Database::stop): 110321 (WebCore::Database::performOpenAndVerify): 110322 * storage/Database.h: 110323 (WebCore::Database::sqliteDatabase): 110324 * storage/DatabaseAuthorizer.cpp: 110325 (WebCore::DatabaseAuthorizer::create): 110326 (WebCore::DatabaseAuthorizer::DatabaseAuthorizer): 110327 (WebCore::DatabaseAuthorizer::denyBasedOnTableName): 110328 * storage/DatabaseAuthorizer.h: 110329 * storage/DatabaseSync.cpp: 110330 (WebCore::DatabaseSync::openDatabaseSync): 110331 (WebCore::DatabaseSync::DatabaseSync): 110332 (WebCore::DatabaseSync::~DatabaseSync): 110333 (WebCore::DatabaseSync::markAsDeletedAndClose): 110334 (WebCore::CloseSyncDatabaseOnContextThreadTask::create): 110335 (WebCore::CloseSyncDatabaseOnContextThreadTask::performTask): 110336 (WebCore::CloseSyncDatabaseOnContextThreadTask::CloseSyncDatabaseOnContextThreadTask): 110337 (WebCore::DatabaseSync::closeImmediately): 110338 * storage/DatabaseSync.h: 110339 * storage/DatabaseTask.cpp: 110340 (WebCore::DatabaseOpenTask::DatabaseOpenTask): 110341 (WebCore::DatabaseOpenTask::doPerformTask): 110342 * storage/DatabaseTask.h: 110343 (WebCore::DatabaseOpenTask::create): 110344 110345 2010-06-29 Franois Sausset <sausset (a] gmail.com> 110346 110347 Reviewed by Darin Adler. 110348 110349 Fix a bug when a msubsup element is inside a mrow element 110350 https://bugs.webkit.org/show_bug.cgi?id=36525 110351 110352 Test: mathml/presentation/subsup.xhtml 110353 110354 * mathml/RenderMathMLSubSup.cpp: 110355 (WebCore::RenderMathMLSubSup::stretchToHeight): 110356 110357 2010-06-29 Zhenyao Mo <zmo (a] google.com> 110358 110359 Reviewed by Dimitri Glazkov. 110360 110361 uniformmatrix* should generate INVALID_VALUE with transpose = true 110362 https://bugs.webkit.org/show_bug.cgi?id=41235 110363 110364 Test: fast/canvas/webgl/gl-uniformmatrix4fv.html 110365 110366 * html/canvas/WebGLRenderingContext.cpp: 110367 (WebCore::WebGLRenderingContext::uniformMatrix2fv): Call validateUniformMatrixParameters instead. 110368 (WebCore::WebGLRenderingContext::uniformMatrix3fv): Ditto. 110369 (WebCore::WebGLRenderingContext::uniformMatrix4fv): Ditto. 110370 (WebCore::WebGLRenderingContext::validateUniformMatrixParameters): Validate input parameters for uniformMatrix*(). 110371 * html/canvas/WebGLRenderingContext.h: Declare validateUniformMatrixParameters(). 110372 110373 2010-06-29 Kenneth Russell <kbr (a] google.com> 110374 110375 Reviewed by Dimitri Glazkov. 110376 110377 Support UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL for texImage2D taking ArrayBufferView 110378 https://bugs.webkit.org/show_bug.cgi?id=40398 110379 110380 Added support for UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL pixel store 110381 parameters to texImage2D and texSubImage2D entry points taking ArrayBufferView. 110382 More cleanly separated the unpacking and packing phases of user-supplied pixel data 110383 in GraphicsContext3D, and added support for unpack alignment. Fixed bug in handling 110384 of unpackAlignment in GraphicsContext3D::flipVertically. Necessarily added 110385 validation of the amount of data passed to texImage2D and texSubImage2D. Modified 110386 fast/canvas/webgl/tex-image-with-format-and-type.html to include premultiplied alpha 110387 tests for relevant source formats; added new test which exercises all combinations 110388 of UNPACK_FLIP_Y_WEBGL, UNPACK_PREMULTIPLY_ALPHA_WEBGL, and UNPACK_ALIGNMENT pixel 110389 store parameters. 110390 110391 Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-array-buffer-view.html 110392 110393 * html/canvas/WebGLRenderingContext.cpp: 110394 (WebCore::WebGLRenderingContext::texImage2D): 110395 (WebCore::WebGLRenderingContext::texSubImage2D): 110396 (WebCore::WebGLRenderingContext::validateTexFuncData): 110397 * html/canvas/WebGLRenderingContext.h: 110398 * platform/graphics/GraphicsContext3D.cpp: 110399 (WebCore::GraphicsContext3D::extractImageData): 110400 (WebCore::GraphicsContext3D::extractTextureData): 110401 (WebCore::GraphicsContext3D::flipVertically): 110402 (WebCore::doUnpackingAndPacking): 110403 (WebCore::computeIncrementParameters): 110404 (WebCore::doPacking): 110405 (WebCore::GraphicsContext3D::packPixels): 110406 * platform/graphics/GraphicsContext3D.h: 110407 (WebCore::GraphicsContext3D::): 110408 * platform/graphics/cg/GraphicsContext3DCG.cpp: 110409 (WebCore::GraphicsContext3D::getImageData): 110410 * platform/graphics/qt/GraphicsContext3DQt.cpp: 110411 (WebCore::GraphicsContext3D::getImageData): 110412 * platform/graphics/skia/GraphicsContext3DSkia.cpp: 110413 (WebCore::GraphicsContext3D::getImageData): 110414 110415 2010-06-29 Patrick Gansterer <paroga (a] paroga.com> 110416 110417 Reviewed by Dirk Schulze. 110418 110419 Buildfix for !ENABLE(SVG_FOREIGN_OBJECT) after r61667. 110420 https://bugs.webkit.org/show_bug.cgi?id=41367 110421 110422 * svg/SVGSVGElement.cpp: 110423 (WebCore::SVGSVGElement::isOutermostSVG): Add missing ENABLE(SVG_FOREIGN_OBJECT). 110424 110425 2010-06-29 Patrick Gansterer <paroga (a] paroga.com> 110426 110427 Reviewed by Darin Adler. 110428 110429 Buildfix after r62118. 110430 https://bugs.webkit.org/show_bug.cgi?id=41365 110431 110432 * rendering/RenderSVGRoot.cpp: Inlude missing RenderSVGResource.h. 110433 110434 2010-06-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 110435 110436 Unreviewed, rolling out r62052. 110437 http://trac.webkit.org/changeset/62052 110438 https://bugs.webkit.org/show_bug.cgi?id=41357 110439 110440 Causes crashes in JSLazyEventListener::initializeFunction (see 110441 bug 41352) (Requested by aroben on #webkit). 110442 110443 * bindings/js/ScriptEventListener.cpp: 110444 (WebCore::createAttributeEventListener): 110445 * bindings/js/ScriptEventListener.h: 110446 * bindings/v8/ScriptEventListener.cpp: 110447 (WebCore::createAttributeEventListener): 110448 * bindings/v8/ScriptEventListener.h: 110449 * html/HTMLBodyElement.cpp: 110450 (WebCore::HTMLBodyElement::parseMappedAttribute): 110451 * html/HTMLFrameSetElement.cpp: 110452 (WebCore::HTMLFrameSetElement::parseMappedAttribute): 110453 * svg/SVGSVGElement.cpp: 110454 (WebCore::SVGSVGElement::parseMappedAttribute): 110455 110456 2010-06-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 110457 110458 Unreviewed, rolling out r62129. 110459 http://trac.webkit.org/changeset/62129 110460 https://bugs.webkit.org/show_bug.cgi?id=41362 110461 110462 Needed to roll out r62052 (see bug 41357) (Requested by aroben 110463 on #webkit). 110464 110465 * bindings/js/ScriptEventListener.cpp: 110466 (WebCore::createWindowAttributeEventListener): 110467 110468 2010-06-29 Beth Dakin <bdakin (a] apple.com> 110469 110470 Reviewed by Darin Adler. 110471 110472 Speculative fix for <rdar://problem/8071558> CrashTracer: [USER] 110473 2300+ crashes in Safari at com.apple.WebCore: 110474 WebCore::FrameView::scheduleRelayout + 352 110475 110476 Unfortunately, we don't have a reproducible case for this bug, and 110477 therefore, we do not have a layout test either. It is pretty clear 110478 from the logs that m_frame->settings() is null in 110479 FrameView::scheduleRelayout() in the crashing case. 110480 m_frame->settings() is null whenever page is null. Everywhere else 110481 in FrameView.cpp we null-check either page or settings before using 110482 settings. It seems plausible to me that scheduleRelayout could be 110483 called when page is null, so the fix is just to add null-checks. 110484 110485 * page/FrameView.cpp: 110486 (WebCore::FrameView::layout): 110487 (WebCore::FrameView::scheduleRelayout): 110488 110489 2010-06-29 Dan Bernstein <mitz (a] apple.com> 110490 110491 Reviewed by Darin Adler. 110492 110493 <rdar://problem/7975842> Certain text is repeated after using splitText() 110494 110495 Tests: fast/text/setData-dirty-lines.html 110496 fast/text/splitText-dirty-lines.html 110497 110498 * dom/CharacterData.cpp: 110499 (WebCore::CharacterData::setData): Call RenderText::setTextWithOffset() rather than 110500 setText(), because only the former correctly dirties line boxes. 110501 * dom/Text.cpp: 110502 (WebCore::Text::splitText): Ditto. 110503 110504 2010-06-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 110505 110506 Unreviewed, rolling out r62073. 110507 http://trac.webkit.org/changeset/62073 110508 https://bugs.webkit.org/show_bug.cgi?id=41359 110509 110510 Necessary to fix chromium build when r62052 is rolled out. 110511 (Requested by dave_levin on #webkit). 110512 110513 * bindings/v8/ScriptEventListener.h: 110514 110515 2010-06-29 Vangelis Kokkevis <vangelis (a] chromium.org> 110516 110517 Reviewed by Darin Fisher. 110518 110519 [Chromium] Hooking up WebGL layers to the gpu-compositor. Implement missing 110520 methods to set the contents of a GraphicsLayer with a platform specific WebGL 110521 Layer, and to update the contents of the WebGL Layer when needed. 110522 https://bugs.webkit.org/show_bug.cgi?id=41243 110523 110524 * platform/graphics/GraphicsContext3D.h: 110525 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 110526 (WebCore::GraphicsLayerChromium::setContentsToWebGL): 110527 * platform/graphics/chromium/GraphicsLayerChromium.h: 110528 * platform/graphics/chromium/LayerChromium.cpp: 110529 (WebCore::LayerChromium::removeAllSublayers): 110530 No need to call setNeedsCommit() from here as the previous call to 110531 layer->removeFromSuperlayer() will have that effect (and we only need 110532 to notify the owner if there were actually any sublayers removed). 110533 * platform/graphics/chromium/LayerChromium.h: 110534 * platform/graphics/chromium/LayerRendererChromium.cpp: 110535 (WebCore::LayerRendererChromium::drawLayer): 110536 * platform/graphics/chromium/WebGLLayerChromium.cpp: 110537 (WebCore::WebGLLayerChromium::create): 110538 (WebCore::WebGLLayerChromium::updateTextureContents): 110539 (WebCore::WebGLLayerChromium::setContext): 110540 110541 2010-06-29 Csaba Osztrogonc <ossy (a] webkit.org> 110542 110543 Reviewed by Nikolas Zimmermann. 110544 110545 Buildfix for --minimal build after r62052 110546 https://bugs.webkit.org/show_bug.cgi?id=41338 110547 110548 * bindings/js/ScriptEventListener.cpp: #if ENABLE(SVG) guards added. 110549 (WebCore::createWindowAttributeEventListener): 110550 110551 2010-06-29 Brent Fulgham <bfulgham (a] webkit.org> 110552 110553 Build fix. Not reviewd. 110554 110555 CGColor is only used for PLATFORM(CG). Conditionalize include 110556 to correct build failure for WinCairo. 110557 110558 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: 110559 Conditionalize use of CGColor. 110560 110561 2010-06-29 Martin Robinson <mrobinson (a] igalia.com> 110562 110563 Reviewed by Xan Lopez. 110564 110565 [GTK] Clean up the source lists in the GNUMakefile.am files 110566 https://bugs.webkit.org/show_bug.cgi?id=41229 110567 110568 Clean up the GNUMakefile.am a little bit. Alphabetize and conglomerate 110569 the source lists. 110570 110571 * GNUmakefile.am: 110572 110573 2010-06-29 Martin Robinson <mrobinson (a] igalia.com> 110574 110575 Reviewed by Xan Lopez. 110576 110577 [GTK] DragDataGtk should use DataObjectGtk as the platformDragData 110578 https://bugs.webkit.org/show_bug.cgi?id=40307 110579 110580 Use DataObjectGtk as the platformDragData for DragDataGtk. DataObjectGtk 110581 contains all the information necessary to keep track of drops in progress. 110582 110583 * platform/DragData.h: Use a DataObjectGtk* as the platform drag data. 110584 * platform/gtk/DragDataGtk.cpp: 110585 (WebCore::DragData::containsFiles): Retrieve information via platformDragData. 110586 (WebCore::DragData::asFilenames): Ditto. 110587 (WebCore::DragData::containsPlainText): Ditto. 110588 (WebCore::DragData::asPlainText): Ditto. 110589 (WebCore::DragData::createClipboard): Create the Clipboard with the platformDragData. 110590 (WebCore::DragData::containsCompatibleContent): Retrieve information via platformDragData. 110591 (WebCore::DragData::containsURL): Ditto. 110592 (WebCore::DragData::asURL): Ditto. 110593 (WebCore::DragData::asFragment): Ditto. 110594 110595 2010-06-29 Adam Langley <agl (a] chromium.org> 110596 110597 Build fix. Not reviewd. 110598 110599 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 110600 (WebCore::FontPlatformData::setupPaint): 110601 The name of the Skia function changed between writing this patch and 110602 commiting it. 110603 110604 2010-06-29 Adam Langley <agl (a] chromium.org> 110605 110606 Reviewed by Kent Tamura. 110607 110608 [chromium] Support forced autohinting. 110609 110610 https://bugs.webkit.org/show_bug.cgi?id=40493 110611 110612 Freetype (the typical font rendering on Linux) includes an 'autohinter': 110613 an algorithm for hinting glyph shapes without using the embedded hinting 110614 bytecode in a font. 110615 110616 Some people prefer the autohinter's results, so we support forcing its 110617 use. 110618 110619 This change also fixes a bug where two FontPlatformData structures would 110620 compare equal, even if their rendering styles were different. 110621 110622 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 110623 (WebCore::FontPlatformData::setupPaint): 110624 In order to compare FontPlatformData structures we need to make sure 110625 that they are initialised. 110626 (WebCore::FontPlatformData::operator==): 110627 * platform/graphics/chromium/FontRenderStyle.h: 110628 (WebCore::FontRenderStyle::FontRenderStyle): 110629 (WebCore::FontRenderStyle::operator==): 110630 This fixes the case where two FontPlatformData structures, differing 110631 only by rendering style, would compare equal. 110632 110633 2010-06-29 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 110634 110635 Unreviewed, Symbian build fix. 110636 110637 Add more directories to USERINCLUDE so that they get included 110638 before the Symbian system headers. 110639 110640 This is a workaround to some toolchain problems; bug 31273 is used to 110641 find a better solution. 110642 110643 No new tests as there is no new functionality. 110644 110645 * WebCore.pro: 110646 110647 2010-06-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 110648 110649 Reviewed by Dirk Schulze. 110650 110651 Cleanup SVGRenderSupport 110652 https://bugs.webkit.org/show_bug.cgi?id=41347 110653 110654 Remove SVGRenderBase base class from all SVG renderers. It was meant as temporary solution until all SVG renderers inherit from RenderSVGModelObject, 110655 though this is not going to happen. RenderSVGModelObject inherits from RenderObject, making it impossible to inherit eg. RenderSVGImage from it, as 110656 it already indirectly inherits from RenderObject, through RenderImage. Other examples are RenderForeignObject (RenderBlock inheritance), 110657 RenderSVGInlineText (RenderText inheritance) etc. 110658 110659 Rename SVGRenderBase to SVGRenderSupport, just like the file is named, remove all free functions, and make them all static functions in SVGRenderSupport. 110660 We can still share code between all SVG renderers, but don't need a special base class for all renderers -> shrink size of all SVG renderers. 110661 110662 Doesn't affect any test. 110663 110664 * rendering/RenderBox.cpp: Remove localTransform() override, not needed at all. 110665 * rendering/RenderBox.h: Ditto. 110666 * rendering/RenderForeignObject.cpp: s/SVGRenderBase/SVGRenderSupport/ 110667 (WebCore::RenderForeignObject::paint): 110668 (WebCore::RenderForeignObject::clippedOverflowRectForRepaint): 110669 (WebCore::RenderForeignObject::computeRectForRepaint): 110670 (WebCore::RenderForeignObject::nodeAtFloatPoint): 110671 (WebCore::RenderForeignObject::mapLocalToContainer): 110672 * rendering/RenderPath.cpp: 110673 (WebCore::BoundingRectStrokeStyleApplier::strokeStyle): applyStrokeStyleToContext is a static function in SVGRenderSupport now. 110674 (WebCore::RenderPath::paint): s/SVGRenderBase/SVGRenderSupport/ 110675 (WebCore::RenderPath::nodeAtFloatPoint): Ditto. 110676 (WebCore::RenderPath::updateCachedBoundaries): Ditto. 110677 * rendering/RenderSVGBlock.h: Remove SVGRenderBase inheritance. 110678 * rendering/RenderSVGContainer.cpp: 110679 (WebCore::RenderSVGContainer::layout): layoutChildren is a static function in SVGRenderSupport now. 110680 (WebCore::RenderSVGContainer::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport. 110681 (WebCore::RenderSVGContainer::objectBoundingBox): computeContainerBoundingBox is a static function in SVGRenderSupport now. 110682 (WebCore::RenderSVGContainer::strokeBoundingBox): Ditto. 110683 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): Remove call to computeContainerBoundingBox, use strokeBoundingBox instead, for consistency. 110684 (WebCore::RenderSVGContainer::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now. 110685 * rendering/RenderSVGHiddenContainer.cpp: 110686 (WebCore::RenderSVGHiddenContainer::layout): layoutChildren is a static function in SVGRenderSupport now. 110687 * rendering/RenderSVGImage.cpp: 110688 (WebCore::RenderSVGImage::paint): prepareToRenderSVGContent/finishRenderSVGContent are static functions in SVGRenderSupport now. 110689 (WebCore::RenderSVGImage::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport. 110690 (WebCore::RenderSVGImage::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now. 110691 (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): intersectRepaintRectWithResources is a static function in SVGRenderSupport now. 110692 (WebCore::RenderSVGImage::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/ 110693 (WebCore::RenderSVGImage::computeRectForRepaint): Ditto. 110694 (WebCore::RenderSVGImage::mapLocalToContainer): Ditto. 110695 * rendering/RenderSVGImage.h: Remove SVGRenderBase inheritance. 110696 * rendering/RenderSVGInline.cpp: 110697 (WebCore::RenderSVGInline::objectBoundingBox): findTextRootObject is a static function in SVGRenderSupport now. 110698 (WebCore::RenderSVGInline::strokeBoundingBox): Ditto. 110699 (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto. 110700 (WebCore::RenderSVGInline::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/ 110701 (WebCore::RenderSVGInline::computeRectForRepaint): Ditto,. 110702 (WebCore::RenderSVGInline::mapLocalToContainer): Ditto. 110703 (WebCore::RenderSVGInline::absoluteQuads): findTextRootObject is a static function in SVGRenderSupport now. 110704 * rendering/RenderSVGInline.h: Remove SVGRenderBase inheritance. 110705 * rendering/RenderSVGModelObject.cpp: 110706 (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/ 110707 (WebCore::RenderSVGModelObject::computeRectForRepaint): Ditto. 110708 (WebCore::RenderSVGModelObject::mapLocalToContainer): Ditto. 110709 (WebCore::RenderSVGModelObject::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport. 110710 * rendering/RenderSVGModelObject.h: Remove SVGRenderBase inheritance. 110711 * rendering/RenderSVGResource.cpp: 110712 (WebCore::invalidatePaintingResource): Moved here from SVGRenderSupport (static inline helper function). 110713 (WebCore::RenderSVGResource::invalidateAllResourcesOfRenderer): Moved here from SVGRenderSupport and renamed from deregisterFromResources. 110714 * rendering/RenderSVGResource.h: Expose invalidateAllResourcesOfRenderer function. 110715 * rendering/RenderSVGResourceClipper.cpp: 110716 (WebCore::RenderSVGResourceClipper::createClipData): renderSubtreeToImage is a static function in SVGRenderSupport now. 110717 (WebCore::RenderSVGResourceClipper::hitTestClipContent): Ditto. 110718 * rendering/RenderSVGResourceGradient.cpp: 110719 (WebCore::createMaskAndSwapContextForTextGradient): findTextRootObject is a static function in SVGRenderSupport now. 110720 (WebCore::clipToTextMask): Ditto. 110721 (WebCore::RenderSVGResourceGradient::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now. 110722 (WebCore::RenderSVGResourceGradient::postApplyResource): findTextRootObject is a static function in SVGRenderSupport now. 110723 * rendering/RenderSVGResourceMarker.cpp: 110724 (WebCore::RenderSVGResourceMarker::applyViewportClip): s/SVGRenderBase/SVGRenderSupport/ 110725 * rendering/RenderSVGResourceMasker.cpp: 110726 (WebCore::RenderSVGResourceMasker::createMaskImage): renderSubtreeToImage is a static function in SVGRenderSupport now. 110727 * rendering/RenderSVGResourcePattern.cpp: 110728 (WebCore::RenderSVGResourcePattern::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now. 110729 (WebCore::clampImageBufferSizeToViewport): Moved here from SVGRenderSupport. 110730 (WebCore::RenderSVGResourcePattern::createTileImage): renderSubtreeToImage is a static function in SVGRenderSupport now. 110731 * rendering/RenderSVGResourceSolidColor.cpp: 110732 (WebCore::RenderSVGResourceSolidColor::applyResource): applyStrokeStyleToContext is a static function in SVGRenderSupport now 110733 * rendering/RenderSVGRoot.cpp: 110734 (WebCore::RenderSVGRoot::layout): layoutChildren is a static function in SVGRenderSupport now. 110735 (WebCore::RenderSVGRoot::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport. 110736 (WebCore::RenderSVGRoot::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport. 110737 (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates): Remove call to computeContainerBoundingBox, use strokeBoundingBox instead, for consistency. 110738 * rendering/RenderSVGRoot.h: Remove localTransform() override, no longer needed. Remove SVGRenderBase inheritance. 110739 (WebCore::RenderSVGRoot::objectBoundingBox): Inlined for speeed. 110740 (WebCore::RenderSVGRoot::strokeBoundingBox): computeContainerBoundingBox is a static function in SVGRenderSupport now. 110741 * rendering/RenderSVGText.cpp: 110742 (WebCore::RenderSVGText::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/ 110743 (WebCore::RenderSVGText::computeRectForRepaint): Ditto. 110744 (WebCore::RenderSVGText::mapLocalToContainer): Ditto. 110745 (WebCore::RenderSVGText::nodeAtFloatPoint): pointInClippingArea is a static function in SVGRenderSupport now. 110746 (WebCore::RenderSVGText::destroy): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport. 110747 (WebCore::RenderSVGText::repaintRectInLocalCoordinates): intersectRepaintRectWithResources is a static function in SVGRenderSupport now. 110748 * rendering/RenderSVGViewportContainer.cpp: 110749 (WebCore::RenderSVGViewportContainer::applyViewportClip): s/SVGRenderBase/SVGRenderSupport/ 110750 (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip): pointInClippingArea is a static function in SVGRenderSupport now. 110751 * rendering/SVGInlineFlowBox.cpp: 110752 (WebCore::SVGInlineFlowBox::paint): prepareToRenderSVGContent/finishRenderSVGContent are now static functions in SVGRenderSupport. 110753 * rendering/SVGRenderSupport.cpp: Make it impossible to construct the class. Remove virtual destructor, made all methods static. 110754 (WebCore::SVGRenderSupport::clippedOverflowRectForRepaint): s/SVGRenderBase/SVGRenderSupport/ 110755 (WebCore::SVGRenderSupport::computeRectForRepaint): Ditto. 110756 (WebCore::SVGRenderSupport::mapLocalToContainer): Ditto. 110757 (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Ditto. 110758 (WebCore::SVGRenderSupport::finishRenderSVGContent): Ditto. 110759 (WebCore::SVGRenderSupport::renderSubtreeToImage): Made static. 110760 (WebCore::SVGRenderSupport::computeContainerBoundingBox): Ditto. 110761 (WebCore::SVGRenderSupport::layoutChildren): Ditto. 110762 (WebCore::SVGRenderSupport::isOverflowHidden): s/SVGRenderBase/SVGRenderSupport/ 110763 (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Ditto. 110764 (WebCore::SVGRenderSupport::pointInClippingArea): Made static. 110765 (WebCore::SVGRenderSupport::dashArrayFromRenderingStyle): Ditto. 110766 (WebCore::SVGRenderSupport::applyStrokeStyleToContext): Ditto. 110767 (WebCore::SVGRenderSupport::findTextRootObject): Ditto. 110768 * rendering/SVGRenderSupport.h: 110769 * rendering/SVGRenderTreeAsText.cpp: 110770 (WebCore::writeStyle): dashArrayFromRenderingStyle is a static function in SVGRenderSupport now. 110771 * rendering/SVGRootInlineBox.cpp: 110772 (WebCore::SVGRootInlineBox::paint): s/SVGRenderBase/SVGRenderSupport/ 110773 * rendering/SVGRootInlineBox.h: Remove SVGRenderBase inheritance. 110774 * svg/SVGFEImageElement.cpp: Add RenderObject.h include, otherwhise it won't build anymore. 110775 (WebCore::SVGFEImageElement::build): renderSubtreeToImage is a static function in SVGRenderSupport now. 110776 * svg/SVGStyledElement.cpp: 110777 (WebCore::SVGStyledElement::svgAttributeChanged): deregisterResource was renamed to invalidateAllResourcesOfRenderer and is a static function in SVGRenderSupport. 110778 110779 2010-06-21 Philippe Normand <pnormand (a] igalia.com> 110780 110781 Reviewed by Xan Lopez. 110782 110783 [PNG decoder] direct access to jmpbuf is deprecated in libpng >= 1.4.0beta103 110784 https://bugs.webkit.org/show_bug.cgi?id=40907 110785 110786 Define a JMPBUF macro to cope with deprecation of the jmpbuf 110787 attribute in libpng >= 1.4. 110788 110789 * platform/image-decoders/png/PNGImageDecoder.cpp: 110790 (WebCore::decodingFailed): 110791 (WebCore::PNGImageReader::decode): 110792 (WebCore::PNGImageDecoder::headerAvailable): 110793 (WebCore::PNGImageDecoder::rowAvailable): 110794 110795 2010-06-29 Kristian Amlie <kristian.amlie (a] nokia.com> 110796 110797 Reviewed by Simon Hausmann. 110798 110799 [Qt/Symbian] Fixed deployment paths for WebKit declarative plugin. 110800 110801 * WebCore.pro: 110802 110803 2010-06-29 Yury Semikhatsky <yurys (a] chromium.org> 110804 110805 Unreviewed: Chromium Win and Mac build fix. 110806 110807 * bindings/v8/ScriptDebugServer.cpp: 110808 (WebCore::ScriptDebugServer::setBreakpoint): 110809 110810 2010-06-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 110811 110812 Reviewed by Dirk Schulze. 110813 110814 Move PaintInfo/PaintPhase into their own headers, out of RenderObject 110815 https://bugs.webkit.org/show_bug.cgi?id=41342 110816 110817 1) Move enums PaintPhase/PaintBehaviorFlags and the PaintBehaviour typedef from RenderObject into PaintPhase.h. 110818 Move PaintInfo from RenderObject into PaintInfo.h. Replace s/RenderObject::PaintInfo/PaintInfo/ throughout WebCore/. 110819 Also move the OverlapTestRequestMap typedef into PaintInfo.h, and replace s/RenderObject::OverlapTestRequestMap/OverlapTestRequestMap/ everywhere. 110820 110821 2) Move "RenderObject* paintingRootForChildren(PaintInfo& paintInfo) const" from RenderObject to PaintInfo 110822 and modify it to take a renderer: "void updatePaintingRootForChildren(const RenderObject* renderer)". 110823 110824 This changes a common idiom: 110825 - info.paintingRoot = paintingRootForChildren(paintInfo); 110826 + info.updatePaintingRootForChildren(this); 110827 110828 We save resetting the paintingRoot to 0 if it was 0 already and thus do less work. 110829 110830 3) Move "bool shouldPaintWithinRoot(PaintInfo& paintInfo) const" from RenderObject to PaintInfo 110831 and modify it to take a renderer: "bool shouldPaintWithinRoot(const RenderObject* renderer) const". 110832 110833 This changes a common idiom: 110834 - if (!shouldPaintWithinRoot(paintInfo)) 110835 + if (!paintInfo.shouldPaintWithinRoot(this)) 110836 110837 4) Move "void applyTransformToPaintInfo(RenderObject::PaintInfo&, const AffineTransform& localToChildTransform)" 110838 from SVGRenderSupport to PaintInfo and rename it to "applyTransform", guarded with ENABLE(SVG) blocks. 110839 110840 This changes a common idiom: 110841 - applyTransformToPaintInfo(childPaintInfo, localToParentTransform()); 110842 + childPaintInfo.applyTransform(localToParentTransform()); 110843 110844 Add PaintInfo.h / PaintPhase.h to all build systems that list headers. 110845 110846 * GNUmakefile.am: 110847 * WebCore.gypi: 110848 * WebCore.pro: 110849 * WebCore.vcproj/WebCore.vcproj: 110850 * WebCore.xcodeproj/project.pbxproj: 110851 * platform/android/RenderThemeAndroid.cpp: 110852 (WebCore::getCanvasFromInfo): 110853 (WebCore::RenderThemeAndroid::paintCheckbox): 110854 (WebCore::RenderThemeAndroid::paintButton): 110855 (WebCore::RenderThemeAndroid::paintRadio): 110856 (WebCore::RenderThemeAndroid::paintTextField): 110857 (WebCore::RenderThemeAndroid::paintTextArea): 110858 (WebCore::RenderThemeAndroid::paintSearchField): 110859 (WebCore::RenderThemeAndroid::paintCombo): 110860 (WebCore::RenderThemeAndroid::paintMenuList): 110861 (WebCore::RenderThemeAndroid::paintMenuListButton): 110862 * platform/android/RenderThemeAndroid.h: 110863 * platform/efl/RenderThemeEfl.cpp: 110864 (WebCore::RenderThemeEfl::paintThemePart): 110865 (WebCore::RenderThemeEfl::paintCheckbox): 110866 (WebCore::RenderThemeEfl::paintRadio): 110867 (WebCore::RenderThemeEfl::paintButton): 110868 (WebCore::RenderThemeEfl::paintMenuList): 110869 (WebCore::RenderThemeEfl::paintTextField): 110870 (WebCore::RenderThemeEfl::paintTextArea): 110871 (WebCore::RenderThemeEfl::paintSearchFieldDecoration): 110872 (WebCore::RenderThemeEfl::paintSearchFieldResultsButton): 110873 (WebCore::RenderThemeEfl::paintSearchFieldResultsDecoration): 110874 (WebCore::RenderThemeEfl::paintSearchFieldCancelButton): 110875 (WebCore::RenderThemeEfl::paintSearchField): 110876 * platform/efl/RenderThemeEfl.h: 110877 * platform/gtk/RenderThemeGtk.cpp: 110878 (WebCore::paintMozillaGtkWidget): 110879 (WebCore::RenderThemeGtk::paintCheckbox): 110880 (WebCore::RenderThemeGtk::paintRadio): 110881 (WebCore::RenderThemeGtk::paintButton): 110882 (WebCore::RenderThemeGtk::paintMenuList): 110883 (WebCore::RenderThemeGtk::paintTextField): 110884 (WebCore::RenderThemeGtk::paintTextArea): 110885 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton): 110886 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): 110887 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): 110888 (WebCore::RenderThemeGtk::paintSearchField): 110889 (WebCore::RenderThemeGtk::paintSliderTrack): 110890 (WebCore::RenderThemeGtk::paintSliderThumb): 110891 (WebCore::RenderThemeGtk::paintMediaFullscreenButton): 110892 (WebCore::RenderThemeGtk::paintMediaMuteButton): 110893 (WebCore::RenderThemeGtk::paintMediaPlayButton): 110894 (WebCore::RenderThemeGtk::paintMediaSeekBackButton): 110895 (WebCore::RenderThemeGtk::paintMediaSeekForwardButton): 110896 (WebCore::RenderThemeGtk::paintMediaSliderTrack): 110897 (WebCore::RenderThemeGtk::paintMediaSliderThumb): 110898 (WebCore::RenderThemeGtk::paintProgressBar): 110899 * platform/gtk/RenderThemeGtk.h: 110900 * platform/haiku/RenderThemeHaiku.cpp: 110901 (WebCore::RenderThemeHaiku::paintCheckbox): 110902 (WebCore::RenderThemeHaiku::paintRadio): 110903 (WebCore::RenderThemeHaiku::paintMenuList): 110904 * platform/haiku/RenderThemeHaiku.h: 110905 * platform/qt/RenderThemeQt.cpp: 110906 (WebCore::StylePainter::StylePainter): 110907 (WebCore::RenderThemeQt::paintCheckbox): 110908 (WebCore::RenderThemeQt::paintRadio): 110909 (WebCore::RenderThemeQt::paintButton): 110910 (WebCore::RenderThemeQt::paintTextField): 110911 (WebCore::RenderThemeQt::paintTextArea): 110912 (WebCore::RenderThemeQt::paintMenuList): 110913 (WebCore::RenderThemeQt::paintMenuListButton): 110914 (WebCore::RenderThemeQt::paintProgressBar): 110915 (WebCore::RenderThemeQt::paintSliderTrack): 110916 (WebCore::RenderThemeQt::paintSliderThumb): 110917 (WebCore::RenderThemeQt::paintSearchField): 110918 (WebCore::RenderThemeQt::paintSearchFieldCancelButton): 110919 (WebCore::RenderThemeQt::paintSearchFieldDecoration): 110920 (WebCore::RenderThemeQt::paintSearchFieldResultsDecoration): 110921 (WebCore::RenderThemeQt::paintMediaFullscreenButton): 110922 (WebCore::RenderThemeQt::paintMediaMuteButton): 110923 (WebCore::RenderThemeQt::paintMediaPlayButton): 110924 (WebCore::RenderThemeQt::paintMediaSeekBackButton): 110925 (WebCore::RenderThemeQt::paintMediaSeekForwardButton): 110926 (WebCore::RenderThemeQt::paintMediaCurrentTime): 110927 (WebCore::RenderThemeQt::paintMediaVolumeSliderTrack): 110928 (WebCore::RenderThemeQt::paintMediaVolumeSliderThumb): 110929 (WebCore::RenderThemeQt::paintMediaSliderTrack): 110930 (WebCore::RenderThemeQt::paintMediaSliderThumb): 110931 * platform/qt/RenderThemeQt.h: 110932 * platform/wx/RenderThemeWx.cpp: 110933 (WebCore::RenderThemeWx::paintCheckbox): 110934 (WebCore::RenderThemeWx::paintRadio): 110935 (WebCore::RenderThemeWx::paintButton): 110936 (WebCore::RenderThemeWx::paintTextField): 110937 (WebCore::RenderThemeWx::paintMenuList): 110938 (WebCore::RenderThemeWx::paintMenuListButton): 110939 * rendering/EllipsisBox.cpp: 110940 (WebCore::EllipsisBox::paint): 110941 * rendering/EllipsisBox.h: 110942 * rendering/InlineBox.cpp: 110943 (WebCore::InlineBox::paint): 110944 * rendering/InlineBox.h: 110945 * rendering/InlineFlowBox.cpp: 110946 (WebCore::InlineFlowBox::paint): 110947 (WebCore::InlineFlowBox::paintFillLayers): 110948 (WebCore::InlineFlowBox::paintFillLayer): 110949 (WebCore::InlineFlowBox::paintBoxDecorations): 110950 (WebCore::InlineFlowBox::paintMask): 110951 (WebCore::InlineFlowBox::paintTextDecorations): 110952 * rendering/InlineFlowBox.h: 110953 * rendering/InlineTextBox.cpp: 110954 (WebCore::InlineTextBox::paint): 110955 * rendering/InlineTextBox.h: 110956 * rendering/PaintInfo.h: Added. 110957 (WebCore::PaintInfo::PaintInfo): 110958 (WebCore::PaintInfo::updatePaintingRootForChildren): 110959 (WebCore::PaintInfo::shouldPaintWithinRoot): 110960 (WebCore::PaintInfo::applyTransform): 110961 * rendering/PaintPhase.h: Added. 110962 (WebCore::): 110963 * rendering/RenderBlock.cpp: 110964 (WebCore::RenderBlock::paint): 110965 (WebCore::RenderBlock::paintChildren): 110966 (WebCore::RenderBlock::paintEllipsisBoxes): 110967 (WebCore::clipOutPositionedObjects): 110968 (WebCore::RenderBlock::layoutColumns): 110969 * rendering/RenderBox.cpp: 110970 (WebCore::RenderBox::paint): 110971 (WebCore::RenderBox::paintBoxDecorations): 110972 (WebCore::RenderBox::paintMask): 110973 * rendering/RenderFieldset.cpp: 110974 (WebCore::RenderFieldset::paintBoxDecorations): 110975 * rendering/RenderForeignObject.cpp: 110976 (WebCore::RenderForeignObject::paint): 110977 * rendering/RenderLayer.cpp: 110978 (WebCore::RenderLayer::paint): 110979 (WebCore::performOverlapTests): 110980 (WebCore::RenderLayer::paintLayer): 110981 (WebCore::RenderLayer::paintList): 110982 (WebCore::RenderLayer::paintPaginatedChildLayer): 110983 (WebCore::RenderLayer::paintChildLayerIntoColumns): 110984 * rendering/RenderLayer.h: 110985 * rendering/RenderLayerBacking.cpp: 110986 (WebCore::RenderLayerBacking::paintIntoLayer): 110987 * rendering/RenderLineBoxList.cpp: 110988 (WebCore::RenderLineBoxList::paint): 110989 * rendering/RenderLineBoxList.h: 110990 * rendering/RenderMediaControls.cpp: 110991 (WebCore::RenderMediaControls::paintMediaControlsPart): 110992 * rendering/RenderMediaControls.h: 110993 * rendering/RenderMediaControlsChromium.cpp: 110994 (WebCore::paintMediaMuteButton): 110995 (WebCore::paintMediaPlayButton): 110996 (WebCore::paintMediaSlider): 110997 (WebCore::paintMediaSliderThumb): 110998 (WebCore::paintMediaVolumeSlider): 110999 (WebCore::paintMediaVolumeSliderThumb): 111000 (WebCore::paintMediaTimelineContainer): 111001 (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): 111002 * rendering/RenderMediaControlsChromium.h: 111003 * rendering/RenderObject.h: 111004 * rendering/RenderPath.cpp: 111005 (WebCore::RenderPath::paint): 111006 * rendering/RenderReplaced.cpp: 111007 (WebCore::RenderReplaced::paint): 111008 (WebCore::RenderReplaced::shouldPaint): 111009 * rendering/RenderSVGContainer.cpp: 111010 (WebCore::RenderSVGContainer::paint): 111011 * rendering/RenderSVGResourceMarker.cpp: 111012 (WebCore::RenderSVGResourceMarker::draw): 111013 * rendering/RenderSVGResourceMarker.h: 111014 * rendering/RenderSVGRoot.cpp: 111015 (WebCore::RenderSVGRoot::paint): 111016 * rendering/RenderSVGText.cpp: 111017 (WebCore::RenderSVGText::paint): 111018 * rendering/RenderScrollbarPart.cpp: 111019 (WebCore::RenderScrollbarPart::paintIntoRect): 111020 * rendering/RenderTable.cpp: 111021 (WebCore::RenderTable::paintObject): 111022 (WebCore::RenderTable::paintBoxDecorations): 111023 * rendering/RenderTableCell.cpp: 111024 (WebCore::RenderTableCell::paint): 111025 (WebCore::RenderTableCell::paintBackgroundsBehindCell): 111026 (WebCore::RenderTableCell::paintBoxDecorations): 111027 * rendering/RenderTheme.cpp: 111028 (WebCore::RenderTheme::paint): 111029 (WebCore::RenderTheme::paintBorderOnly): 111030 (WebCore::RenderTheme::paintDecorations): 111031 (WebCore::RenderTheme::paintMeter): 111032 * rendering/RenderTheme.h: 111033 (WebCore::RenderTheme::paintCapsLockIndicator): 111034 (WebCore::RenderTheme::paintCheckbox): 111035 (WebCore::RenderTheme::paintRadio): 111036 (WebCore::RenderTheme::paintButton): 111037 (WebCore::RenderTheme::paintInnerSpinButton): 111038 (WebCore::RenderTheme::paintOuterSpinButton): 111039 (WebCore::RenderTheme::paintTextField): 111040 (WebCore::RenderTheme::paintTextArea): 111041 (WebCore::RenderTheme::paintMenuList): 111042 (WebCore::RenderTheme::paintMenuListButton): 111043 (WebCore::RenderTheme::paintProgressBar): 111044 (WebCore::RenderTheme::paintSliderTrack): 111045 (WebCore::RenderTheme::paintSliderThumb): 111046 (WebCore::RenderTheme::paintSearchField): 111047 (WebCore::RenderTheme::paintSearchFieldCancelButton): 111048 (WebCore::RenderTheme::paintSearchFieldDecoration): 111049 (WebCore::RenderTheme::paintSearchFieldResultsDecoration): 111050 (WebCore::RenderTheme::paintSearchFieldResultsButton): 111051 (WebCore::RenderTheme::paintMediaFullscreenButton): 111052 (WebCore::RenderTheme::paintMediaPlayButton): 111053 (WebCore::RenderTheme::paintMediaMuteButton): 111054 (WebCore::RenderTheme::paintMediaSeekBackButton): 111055 (WebCore::RenderTheme::paintMediaSeekForwardButton): 111056 (WebCore::RenderTheme::paintMediaSliderTrack): 111057 (WebCore::RenderTheme::paintMediaSliderThumb): 111058 (WebCore::RenderTheme::paintMediaVolumeSliderContainer): 111059 (WebCore::RenderTheme::paintMediaVolumeSliderTrack): 111060 (WebCore::RenderTheme::paintMediaVolumeSliderThumb): 111061 (WebCore::RenderTheme::paintMediaRewindButton): 111062 (WebCore::RenderTheme::paintMediaReturnToRealtimeButton): 111063 (WebCore::RenderTheme::paintMediaToggleClosedCaptionsButton): 111064 (WebCore::RenderTheme::paintMediaControlsBackground): 111065 (WebCore::RenderTheme::paintMediaCurrentTime): 111066 (WebCore::RenderTheme::paintMediaTimeRemaining): 111067 * rendering/RenderThemeChromiumMac.h: 111068 * rendering/RenderThemeChromiumMac.mm: 111069 (WebCore::RenderThemeChromiumMac::paintMediaPlayButton): 111070 (WebCore::RenderThemeChromiumMac::paintMediaMuteButton): 111071 (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack): 111072 (WebCore::RenderThemeChromiumMac::paintMediaControlsBackground): 111073 (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderTrack): 111074 (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderThumb): 111075 * rendering/RenderThemeChromiumSkia.cpp: 111076 (WebCore::RenderThemeChromiumSkia::paintCheckbox): 111077 (WebCore::RenderThemeChromiumSkia::paintRadio): 111078 (WebCore::paintButtonLike): 111079 (WebCore::RenderThemeChromiumSkia::paintButton): 111080 (WebCore::RenderThemeChromiumSkia::paintTextField): 111081 (WebCore::RenderThemeChromiumSkia::paintTextArea): 111082 (WebCore::RenderThemeChromiumSkia::paintSearchField): 111083 (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton): 111084 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration): 111085 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton): 111086 (WebCore::RenderThemeChromiumSkia::paintMediaControlsBackground): 111087 (WebCore::RenderThemeChromiumSkia::paintMediaSliderTrack): 111088 (WebCore::RenderThemeChromiumSkia::paintMediaVolumeSliderTrack): 111089 (WebCore::RenderThemeChromiumSkia::paintMediaSliderThumb): 111090 (WebCore::RenderThemeChromiumSkia::paintMediaVolumeSliderThumb): 111091 (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton): 111092 (WebCore::RenderThemeChromiumSkia::paintMediaMuteButton): 111093 (WebCore::RenderThemeChromiumSkia::paintMenuList): 111094 (WebCore::RenderThemeChromiumSkia::paintMenuListButton): 111095 (WebCore::RenderThemeChromiumSkia::paintSliderTrack): 111096 (WebCore::RenderThemeChromiumSkia::paintSliderThumb): 111097 (WebCore::RenderThemeChromiumSkia::paintProgressBar): 111098 * rendering/RenderThemeChromiumSkia.h: 111099 * rendering/RenderThemeChromiumWin.cpp: 111100 (WebCore::RenderThemeChromiumWin::paintCheckbox): 111101 (WebCore::RenderThemeChromiumWin::paintRadio): 111102 (WebCore::RenderThemeChromiumWin::paintButton): 111103 (WebCore::RenderThemeChromiumWin::paintTextField): 111104 (WebCore::RenderThemeChromiumWin::paintSliderTrack): 111105 (WebCore::RenderThemeChromiumWin::paintSliderThumb): 111106 (WebCore::RenderThemeChromiumWin::paintMenuList): 111107 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal): 111108 (WebCore::RenderThemeChromiumWin::paintProgressBar): 111109 * rendering/RenderThemeChromiumWin.h: 111110 * rendering/RenderThemeMac.h: 111111 * rendering/RenderThemeMac.mm: 111112 (WebCore::RenderThemeMac::paintTextField): 111113 (WebCore::RenderThemeMac::paintCapsLockIndicator): 111114 (WebCore::RenderThemeMac::paintTextArea): 111115 (WebCore::RenderThemeMac::paintMenuList): 111116 (WebCore::RenderThemeMac::paintMeter): 111117 (WebCore::RenderThemeMac::paintProgressBar): 111118 (WebCore::RenderThemeMac::paintMenuListButtonGradients): 111119 (WebCore::RenderThemeMac::paintMenuListButton): 111120 (WebCore::RenderThemeMac::paintSliderTrack): 111121 (WebCore::RenderThemeMac::paintSliderThumb): 111122 (WebCore::RenderThemeMac::paintSearchField): 111123 (WebCore::RenderThemeMac::paintSearchFieldCancelButton): 111124 (WebCore::RenderThemeMac::paintSearchFieldDecoration): 111125 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): 111126 (WebCore::RenderThemeMac::paintSearchFieldResultsButton): 111127 (WebCore::getUnzoomedRectAndAdjustCurrentContext): 111128 (WebCore::RenderThemeMac::paintMediaFullscreenButton): 111129 (WebCore::RenderThemeMac::paintMediaMuteButton): 111130 (WebCore::RenderThemeMac::paintMediaPlayButton): 111131 (WebCore::RenderThemeMac::paintMediaSeekBackButton): 111132 (WebCore::RenderThemeMac::paintMediaSeekForwardButton): 111133 (WebCore::RenderThemeMac::paintMediaSliderTrack): 111134 (WebCore::RenderThemeMac::paintMediaSliderThumb): 111135 (WebCore::RenderThemeMac::paintMediaRewindButton): 111136 (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton): 111137 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton): 111138 (WebCore::RenderThemeMac::paintMediaControlsBackground): 111139 (WebCore::RenderThemeMac::paintMediaCurrentTime): 111140 (WebCore::RenderThemeMac::paintMediaTimeRemaining): 111141 * rendering/RenderThemeSafari.cpp: 111142 (WebCore::RenderThemeSafari::paintCheckbox): 111143 (WebCore::RenderThemeSafari::paintRadio): 111144 (WebCore::RenderThemeSafari::paintButton): 111145 (WebCore::RenderThemeSafari::paintTextField): 111146 (WebCore::RenderThemeSafari::paintCapsLockIndicator): 111147 (WebCore::RenderThemeSafari::paintTextArea): 111148 (WebCore::RenderThemeSafari::paintMenuList): 111149 (WebCore::RenderThemeSafari::paintMenuListButtonGradients): 111150 (WebCore::RenderThemeSafari::paintMenuListButton): 111151 (WebCore::RenderThemeSafari::paintSliderTrack): 111152 (WebCore::RenderThemeSafari::paintSliderThumb): 111153 (WebCore::RenderThemeSafari::paintSearchField): 111154 (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): 111155 (WebCore::RenderThemeSafari::paintSearchFieldDecoration): 111156 (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): 111157 (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): 111158 (WebCore::RenderThemeSafari::paintMediaFullscreenButton): 111159 (WebCore::RenderThemeSafari::paintMediaMuteButton): 111160 (WebCore::RenderThemeSafari::paintMediaPlayButton): 111161 (WebCore::RenderThemeSafari::paintMediaSeekBackButton): 111162 (WebCore::RenderThemeSafari::paintMediaSeekForwardButton): 111163 (WebCore::RenderThemeSafari::paintMediaSliderTrack): 111164 (WebCore::RenderThemeSafari::paintMediaSliderThumb): 111165 * rendering/RenderThemeSafari.h: 111166 * rendering/RenderThemeWin.cpp: 111167 (WebCore::RenderThemeWin::paintButton): 111168 (WebCore::RenderThemeWin::paintTextField): 111169 (WebCore::RenderThemeWin::paintMenuList): 111170 (WebCore::RenderThemeWin::paintMenuListButton): 111171 (WebCore::RenderThemeWin::paintSliderTrack): 111172 (WebCore::RenderThemeWin::paintSliderThumb): 111173 (WebCore::RenderThemeWin::paintSearchField): 111174 (WebCore::RenderThemeWin::paintSearchFieldCancelButton): 111175 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration): 111176 (WebCore::RenderThemeWin::paintSearchFieldResultsButton): 111177 (WebCore::RenderThemeWin::paintMediaFullscreenButton): 111178 (WebCore::RenderThemeWin::paintMediaMuteButton): 111179 (WebCore::RenderThemeWin::paintMediaPlayButton): 111180 (WebCore::RenderThemeWin::paintMediaSeekBackButton): 111181 (WebCore::RenderThemeWin::paintMediaSeekForwardButton): 111182 (WebCore::RenderThemeWin::paintMediaSliderTrack): 111183 (WebCore::RenderThemeWin::paintMediaSliderThumb): 111184 (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton): 111185 * rendering/RenderThemeWin.h: 111186 (WebCore::RenderThemeWin::paintCheckbox): 111187 (WebCore::RenderThemeWin::paintRadio): 111188 (WebCore::RenderThemeWin::paintTextArea): 111189 (WebCore::RenderThemeWin::paintSearchFieldDecoration): 111190 * rendering/RenderThemeWince.cpp: 111191 (WebCore::RenderThemeWince::paintButton): 111192 (WebCore::RenderThemeWince::paintTextField): 111193 (WebCore::RenderThemeWince::paintMenuList): 111194 (WebCore::RenderThemeWince::paintMenuListButton): 111195 (WebCore::RenderThemeWince::paintSearchField): 111196 (WebCore::RenderThemeWince::paintSearchFieldCancelButton): 111197 (WebCore::RenderThemeWince::paintSearchFieldResultsDecoration): 111198 (WebCore::RenderThemeWince::paintSearchFieldResultsButton): 111199 (WebCore::RenderThemeWince::paintSliderTrack): 111200 (WebCore::RenderThemeWince::paintSliderThumb): 111201 (WebCore::RenderThemeWince::paintMediaFullscreenButton): 111202 (WebCore::RenderThemeWince::paintMediaMuteButton): 111203 (WebCore::RenderThemeWince::paintMediaPlayButton): 111204 (WebCore::RenderThemeWince::paintMediaSeekBackButton): 111205 (WebCore::RenderThemeWince::paintMediaSeekForwardButton): 111206 (WebCore::RenderThemeWince::paintMediaSliderTrack): 111207 (WebCore::RenderThemeWince::paintMediaSliderThumb): 111208 * rendering/RenderThemeWince.h: 111209 (WebCore::RenderThemeWince::paintCheckbox): 111210 (WebCore::RenderThemeWince::paintRadio): 111211 (WebCore::RenderThemeWince::paintTextArea): 111212 (WebCore::RenderThemeWince::paintSearchFieldDecoration): 111213 * rendering/RootInlineBox.cpp: 111214 (WebCore::RootInlineBox::paintEllipsisBox): 111215 (WebCore::RootInlineBox::paintCustomHighlight): 111216 (WebCore::RootInlineBox::paint): 111217 (WebCore::RootInlineBox::fillLineSelectionGap): 111218 * rendering/RootInlineBox.h: 111219 * rendering/SVGInlineFlowBox.cpp: 111220 (WebCore::SVGInlineFlowBox::paint): 111221 * rendering/SVGInlineFlowBox.h: 111222 * rendering/SVGInlineTextBox.cpp: 111223 (WebCore::SVGInlineTextBox::paint): 111224 * rendering/SVGInlineTextBox.h: 111225 * rendering/SVGMarkerLayoutInfo.cpp: 111226 (WebCore::SVGMarkerLayoutInfo::drawMarkers): 111227 * rendering/SVGMarkerLayoutInfo.h: 111228 * rendering/SVGRenderSupport.cpp: 111229 (WebCore::SVGRenderBase::prepareToRenderSVGContent): 111230 (WebCore::SVGRenderBase::finishRenderSVGContent): 111231 (WebCore::renderSubtreeToImage): 111232 * rendering/SVGRenderSupport.h: 111233 * rendering/SVGRootInlineBox.cpp: 111234 (WebCore::SVGRootInlineBox::paint): 111235 * rendering/SVGRootInlineBox.h: 111236 111237 2010-06-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 111238 111239 Not reviewed. Sort Xcode project file. 111240 111241 * WebCore.xcodeproj/project.pbxproj: 111242 111243 2010-06-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 111244 111245 Reviewed by Dirk Schulze. 111246 111247 Provide floating-point support for text selection framework 111248 https://bugs.webkit.org/show_bug.cgi?id=40665 111249 111250 Rename 'glyphScale' to 'horizontalGlyphStretch' upon Dans' request. 111251 Also guard the variables in ENABLE(SVG) blocks. Initialize variable to 1 instead of 1.0f, as that's the new style rule. 111252 111253 No functional changes, thus no new tests. 111254 111255 * platform/graphics/TextRun.h: 111256 (WebCore::TextRun::TextRun): 111257 (WebCore::TextRun::horizontalGlyphStretch): 111258 (WebCore::TextRun::setHorizontalGlyphStretch): 111259 (WebCore::TextRun::spacingDisabled): 111260 * platform/graphics/WidthIterator.cpp: 111261 (WebCore::WidthIterator::advance): 111262 * rendering/SVGInlineTextBox.cpp: 111263 (WebCore::SVGInlineTextBox::offsetForPosition): 111264 111265 2010-06-29 Nikolas Zimmermann <nzimmermann (a] rim.com> 111266 111267 Reviewed by Dirk Schulze. 111268 111269 REGRESSION: text-shadow CSS applied to SVG no longer works 111270 https://bugs.webkit.org/show_bug.cgi?id=40960 111271 111272 Readd text-shadow support, this time supporting multiple shadows. 111273 It's not exactly like HTML, because SVG draws fill/stroke phases seperated - the png shows the difference. 111274 111275 Tests: svg/css/text-shadow-multiple.xhtml 111276 111277 * rendering/InlineTextBox.cpp: 111278 (WebCore::InlineTextBox::applyShadowToGraphicsContext): Refactored from paintTextWithShadows(), so SVG can reuse. 111279 (WebCore::paintTextWithShadows): Use refactored applyShadowToGraphicsContext() function. 111280 * rendering/InlineTextBox.h: 111281 * rendering/SVGInlineTextBox.cpp: 111282 (WebCore::SVGInlineTextBox::paintTextWithShadows): Added. 111283 (WebCore::SVGInlineTextBox::paintText): Call paintTextWithShadows() instead of directly drawing the text. 111284 * rendering/SVGInlineTextBox.h: 111285 111286 2010-06-29 Pavel Podivilov <podivilov (a] chromium.org> 111287 111288 Reviewed by Yury Semikhatsky. 111289 111290 Web Inspector: show actual breakpoint position in UI. 111291 When user sets breakpoint from UI, javascript engine may actually set 111292 it on a different line. If so, move breakpoint to the correct position 111293 in frontend. 111294 https://bugs.webkit.org/show_bug.cgi?id=40781 111295 111296 * bindings/js/ScriptDebugServer.cpp: 111297 (WebCore::ScriptDebugServer::setBreakpoint): 111298 (WebCore::ScriptDebugServer::dispatchDidPause): 111299 * bindings/js/ScriptDebugServer.h: 111300 * bindings/v8/ScriptDebugServer.cpp: 111301 (WebCore::ScriptDebugServer::setBreakpoint): 111302 (WebCore::ScriptDebugServer::currentCallFrame): 111303 * bindings/v8/ScriptDebugServer.h: 111304 * inspector/InspectorBackend.cpp: 111305 (WebCore::InspectorBackend::setBreakpoint): 111306 * inspector/InspectorBackend.h: 111307 * inspector/InspectorBackend.idl: 111308 * inspector/InspectorController.cpp: 111309 (WebCore::InspectorController::didCommitLoad): 111310 (WebCore::InspectorController::setBreakpoint): 111311 (WebCore::InspectorController::removeBreakpoint): 111312 (WebCore::InspectorController::didParseSource): 111313 * inspector/InspectorController.h: 111314 * inspector/InspectorFrontend.cpp: 111315 (WebCore::InspectorFrontend::didSetBreakpoint): 111316 * inspector/InspectorFrontend.h: 111317 * inspector/front-end/BreakpointManager.js: 111318 (WebInspector.BreakpointManager.prototype.setOneTimeBreakpoint): 111319 (WebInspector.BreakpointManager.prototype.removeOneTimeBreakpoint): 111320 (WebInspector.BreakpointManager.prototype.setBreakpoint): 111321 (WebInspector.BreakpointManager.prototype.restoredBreakpoint): 111322 (WebInspector.BreakpointManager.prototype.removeBreakpoint): 111323 (WebInspector.BreakpointManager.prototype._setBreakpoint): 111324 (WebInspector.BreakpointManager.prototype._removeBreakpoint): 111325 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend.didSetBreakpoint): 111326 (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend): 111327 (WebInspector.Breakpoint.prototype.set enabled): 111328 (WebInspector.Breakpoint.prototype.set condition): 111329 * inspector/front-end/InspectorBackendStub.js: 111330 (.WebInspector.InspectorBackendStub.prototype.setBreakpoint): 111331 * inspector/front-end/ScriptView.js: 111332 (WebInspector.ScriptView.prototype._addBreakpoint): 111333 * inspector/front-end/SourceView.js: 111334 (WebInspector.SourceView.prototype._addBreakpoint): 111335 111336 2010-06-29 Dumitru Daniliuc <dumi (a] chromium.org> 111337 111338 Reviewed by Adam Barth. 111339 111340 Catch toString() exceptions in all DB-related code. 111341 https://bugs.webkit.org/show_bug.cgi?id=41297 111342 111343 * bindings/v8/custom/V8BindingMacros.h: 111344 * bindings/v8/custom/V8DOMWindowCustom.cpp: 111345 (WebCore::V8DOMWindow::openDatabaseCallback): 111346 * bindings/v8/custom/V8DatabaseCustom.cpp: 111347 (WebCore::V8Database::changeVersionCallback): 111348 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: 111349 (WebCore::V8DatabaseSync::changeVersionCallback): 111350 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 111351 (WebCore::V8SQLTransaction::executeSqlCallback): 111352 * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: 111353 (WebCore::V8SQLTransactionSync::executeSqlCallback): 111354 * bindings/v8/custom/V8WorkerContextCustom.cpp: 111355 (WebCore::V8WorkerContext::openDatabaseCallback): 111356 (WebCore::V8WorkerContext::openDatabaseSyncCallback): 111357 111358 2010-06-29 Herczeg Zoltan <zherczeg (a] webkit.org> 111359 111360 Rubber-stamped by Nikolas Zimmermann. 111361 111362 Windows build fix. 111363 https://bugs.webkit.org/show_bug.cgi?id=5861 111364 111365 * svg/SVGFEConvolveMatrixElement.cpp: 111366 (WebCore::SVGFEConvolveMatrixElement::build): 111367 111368 2010-06-29 Zoltan Herczeg <zherczeg (a] webkit.org> 111369 111370 Reviewed by Nikolas Zimmermann. 111371 111372 Add ConvolveMatrix SVG filter effect 111373 https://bugs.webkit.org/show_bug.cgi?id=5861 111374 111375 The patch was originally started by Dirk Schulze, 111376 and the .cpp and .h files are mostly his work. 111377 I updated the build systems and do some minor updates 111378 to the source files as well. The patch does not contain 111379 the implementation of the filter: this is intended, 111380 and will be landed in a follow-up patch. 111381 111382 * Android.derived.jscbindings.mk: 111383 * Android.derived.v8bindings.mk: 111384 * Android.mk: 111385 * CMakeLists.txt: 111386 * DerivedSources.cpp: 111387 * DerivedSources.make: 111388 * GNUmakefile.am: 111389 * WebCore.gypi: 111390 * WebCore.pri: 111391 * WebCore.pro: 111392 * WebCore.vcproj/WebCore.vcproj: 111393 * WebCore.xcodeproj/project.pbxproj: 111394 * bindings/objc/DOM.mm: 111395 (WebCore::createElementClassMap): 111396 * bindings/objc/DOMSVG.h: 111397 * page/DOMWindow.idl: 111398 * svg/SVGAllInOne.cpp: 111399 * svg/SVGFEConvolveMatrixElement.cpp: Added. 111400 (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement): 111401 (WebCore::SVGFEConvolveMatrixElement::~SVGFEConvolveMatrixElement): 111402 (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute): 111403 (WebCore::SVGFEConvolveMatrixElement::setOrder): 111404 (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength): 111405 (WebCore::SVGFEConvolveMatrixElement::build): 111406 * svg/SVGFEConvolveMatrixElement.h: Added. 111407 * svg/SVGFEConvolveMatrixElement.idl: Added. 111408 * svg/graphics/filters/SVGFEConvolveMatrix.cpp: 111409 (WebCore::FEConvolveMatrix::FEConvolveMatrix): 111410 (WebCore::FEConvolveMatrix::create): 111411 (WebCore::FEConvolveMatrix::kernelSize): 111412 (WebCore::FEConvolveMatrix::setKernelSize): 111413 (WebCore::FEConvolveMatrix::targetOffset): 111414 (WebCore::FEConvolveMatrix::setTargetOffset): 111415 (WebCore::operator<<): 111416 (WebCore::FEConvolveMatrix::externalRepresentation): 111417 * svg/graphics/filters/SVGFEConvolveMatrix.h: 111418 (WebCore::): 111419 * svg/svgattrs.in: 111420 * svg/svgtags.in: 111421 111422 2010-06-28 Adam Barth <abarth (a] webkit.org> 111423 111424 Reviewed by Eric Seidel. 111425 111426 HTML5 tree builder shouldn't ASSERT on HTML5lib test suite 111427 https://bugs.webkit.org/show_bug.cgi?id=41335 111428 111429 Sketch out the EndTag handling for InBodyMode. 111430 111431 * html/HTMLTreeBuilder.cpp: 111432 (WebCore::HTMLTreeBuilder::processEndTag): 111433 * html/HTMLTreeBuilder.h: 111434 (WebCore::HTMLTreeBuilder::ElementStack::inScope): 111435 (WebCore::HTMLTreeBuilder::clearActiveFormatingElementsUpToLastMarker): 111436 (WebCore::HTMLTreeBuilder::generateImpliedEndTags): 111437 111438 2010-06-28 David Levin <levin (a] chromium.org> 111439 111440 Reviewed by NOBODY (chromium build fix). 111441 111442 * rendering/RenderObject.h: Add missing forward declaration. 111443 111444 2010-06-28 Adam Barth <abarth (a] webkit.org> 111445 111446 Unreviewed. 111447 111448 I accidently gave up my ref and tried to dereference a null pointer. 111449 This code is keeping an extra ref that it doesn't need, but that fact 111450 was somewhat hidden before. 111451 111452 * dom/ContainerNode.cpp: 111453 (WebCore::ContainerNode::addChildCommon): 111454 (WebCore::ContainerNode::parserAddChild): 111455 (WebCore::ContainerNode::legacyParserAddChild): 111456 * dom/ContainerNode.h: 111457 111458 2010-06-28 Adam Barth <abarth (a] webkit.org> 111459 111460 Unreviewed. 111461 111462 Refactor common code into addChildCommon 111463 https://bugs.webkit.org/show_bug.cgi?id=41326 111464 111465 Eric asked that we share the common code between these codepaths. 111466 111467 * dom/ContainerNode.cpp: 111468 (WebCore::ContainerNode::addChildCommon): 111469 (WebCore::ContainerNode::parserAddChild): 111470 (WebCore::ContainerNode::addChild): 111471 * dom/ContainerNode.h: 111472 111473 2010-06-28 Eric Seidel <eric (a] webkit.org> 111474 111475 Reviewed by Adam Barth. 111476 111477 Implement HTMLTreeBuilder::reconstructTheActiveFormattingElements 111478 https://bugs.webkit.org/show_bug.cgi?id=41319 111479 111480 Restructure the code to not use in-band data, which is what 111481 got us in trouble with a signed/unsigned mismatch before. 111482 111483 * html/HTMLTreeBuilder.cpp: 111484 (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement): 111485 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 111486 * html/HTMLTreeBuilder.h: 111487 111488 2010-06-28 Daniel Bates <dbates (a] rim.com> 111489 111490 Unreviewed, attempt to fix Qt bots. 111491 111492 Attempt to fix the build after changeset 62079 <http://trac.webkit.org/changeset/62079> 111493 (https://bugs.webkit.org/show_bug.cgi?id=41324). 111494 111495 Rename some more call sites that were missed in the initial landing. 111496 111497 * dom/XMLDocumentParserQt.cpp: 111498 (WebCore::XMLDocumentParser::parseStartElement): 111499 (WebCore::XMLDocumentParser::parseProcessingInstruction): 111500 (WebCore::XMLDocumentParser::parseCdata): 111501 (WebCore::XMLDocumentParser::parseComment): 111502 (WebCore::XMLDocumentParser::parseDtd): 111503 111504 2010-06-28 Daniel Bates <dbates (a] rim.com> 111505 111506 Unreviewed, build fix. 111507 111508 Change return type of method HTMLTreeBuilder::reconstructTheActiveFormattingElements() 111509 from int to unsigned. 111510 111511 Attempt to fix the build after changeset 62077 <https://trac.webkit.org/changeset/62077> 111512 (https://bugs.webkit.org/show_bug.cgi?id=41319). 111513 111514 * html/HTMLTreeBuilder.cpp: 111515 (WebCore::HTMLTreeBuilder::indexOfLastOpenFormattingElementOrMarker): 111516 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 111517 * html/HTMLTreeBuilder.h: 111518 111519 2010-06-28 Eric Seidel <eric (a] webkit.org> 111520 111521 Reviewed by Adam Barth. 111522 111523 Rename ContainerNode::addChild to legacyParserAddChild to indicate its parser-only intended use 111524 https://bugs.webkit.org/show_bug.cgi?id=41324 111525 111526 A bunch of places in the code were calling ContainerNode::addChild. 111527 I don't think they actually want to be doing that, as it has special 111528 form-related handling which is part of LegacyHTMLTreeBuilder. 111529 111530 No functional changes, thus no tests. 111531 111532 * dom/ContainerNode.cpp: 111533 (WebCore::ContainerNode::legacyParserAddChild): 111534 * dom/ContainerNode.h: 111535 * dom/DOMImplementation.cpp: 111536 (WebCore::DOMImplementation::createDocument): 111537 * dom/Node.cpp: 111538 (WebCore::Node::legacyParserAddChild): 111539 * dom/Node.h: 111540 * html/HTMLKeygenElement.cpp: 111541 (WebCore::HTMLKeygenElement::HTMLKeygenElement): 111542 * html/HTMLTableElement.cpp: 111543 (WebCore::HTMLTableElement::legacyParserAddChild): 111544 * html/HTMLTableElement.h: 111545 * html/HTMLTableRowElement.cpp: 111546 (WebCore::HTMLTableRowElement::legacyParserAddChild): 111547 * html/HTMLTableRowElement.h: 111548 * html/HTMLTableSectionElement.cpp: 111549 (WebCore::HTMLTableSectionElement::legacyParserAddChild): 111550 * html/HTMLTableSectionElement.h: 111551 * html/HTMLViewSourceDocument.cpp: 111552 (WebCore::HTMLViewSourceDocument::createContainingTable): 111553 (WebCore::HTMLViewSourceDocument::addSpanWithClassName): 111554 (WebCore::HTMLViewSourceDocument::addLine): 111555 (WebCore::HTMLViewSourceDocument::addText): 111556 (WebCore::HTMLViewSourceDocument::addLink): 111557 111558 2010-06-28 Eric Seidel <eric (a] webkit.org> 111559 111560 Reviewed by Adam Barth. 111561 111562 Implement HTMLTreeBuilder::reconstructTheActiveFormattingElements 111563 https://bugs.webkit.org/show_bug.cgi?id=41319 111564 111565 This is basically a direct transcription of HTML5 TreeBuilder spec: 111566 http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#list-of-active-formatting-elements 111567 111568 This code is covered by various tests in html5lib/runner which we 111569 can't run yet due to other asserts. Adam and I are working on 111570 getting rid of those ASSERTS so that this (and other code) will 111571 be better tested shortly. 111572 111573 * html/HTMLTreeBuilder.cpp: 111574 (WebCore::HTMLTreeBuilder::insertFormatingElement): 111575 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 111576 * html/HTMLTreeBuilder.h: 111577 (WebCore::HTMLTreeBuilder::ElementStack::contains): 111578 (WebCore::HTMLTreeBuilder::FormatingElementEntry::FormatingElementEntry): 111579 (WebCore::HTMLTreeBuilder::FormatingElementEntry::): 111580 (WebCore::HTMLTreeBuilder::FormatingElementEntry::isMarker): 111581 (WebCore::HTMLTreeBuilder::FormatingElementEntry::element): 111582 (WebCore::HTMLTreeBuilder::FormatingElementEntry::replaceElement): 111583 111584 2010-06-28 Adam Barth <abarth (a] webkit.org> 111585 111586 Reviewed by Eric Seidel. 111587 111588 Fix ASSERT so we can run more HTML5lib tests 111589 https://bugs.webkit.org/show_bug.cgi?id=41325 111590 111591 We can't call Node::addChild because that function contains a bunch of 111592 logic from the old parser. Instead, this patch creates a new version 111593 of addChild that's does less validating (that's the tree builder's 111594 job). 111595 111596 * dom/ContainerNode.cpp: 111597 (WebCore::ContainerNode::parserAddChild): 111598 * dom/ContainerNode.h: 111599 * dom/Node.cpp: 111600 (WebCore::Node::parserAddChild): 111601 * dom/Node.h: 111602 * html/HTMLTreeBuilder.h: 111603 (WebCore::HTMLTreeBuilder::attach): 111604 111605 2010-06-28 David Levin <levin (a] chromium.org> 111606 111607 Reviewed by NOBODY (chromium build fix). 111608 111609 * bindings/v8/ScriptEventListener.h: Changed forward declaration 111610 to correspond to the code change doing in r62052. 111611 111612 2010-06-28 Brady Eidson <beidson (a] apple.com> 111613 111614 Reviewed by Alexey Proskuryakov. 111615 111616 Support for https://bugs.webkit.org/show_bug.cgi?id=40484 111617 111618 In working on adding beforeProcess, it becomes necessary for JSLazyEventListeners to always know what their 111619 original Node* was, even if it was a window event listener. 111620 111621 For HTMLFrameSet, HTMLBody, and SVGSVG elements, a second form of createAttributeEventListener was used that 111622 took a Frame* argument and didn't set the original Node* on the JSLazyEventListener. 111623 111624 This patch changes that form of the function to createWindowAttributeEventListener, and passes the Node* along 111625 for later use by the beforeProcess mechanism. 111626 111627 No new tests. (No change in behavior) 111628 111629 * bindings/js/ScriptEventListener.cpp: 111630 (WebCore::createWindowAttributeEventListener): Renamed from createAttributeEventListener, takes a Node* instead 111631 of a Frame*, and figures out the Frame* itself internally. 111632 * bindings/js/ScriptEventListener.h: 111633 111634 * bindings/v8/ScriptEventListener.cpp: 111635 (WebCore::createWindowAttributeEventListener): Renamed from createAttributeEventListener, takes a Node* instead 111636 of a Frame*, and figures out the Frame* itself internally. Note that V8LazyEventListener doesn't allow us to 111637 pass the Element* argument in so this beforeprocess feature won't fully work on V8 builds until this is changed. 111638 * bindings/v8/ScriptEventListener.h: 111639 111640 * html/HTMLBodyElement.cpp: 111641 (WebCore::HTMLBodyElement::parseMappedAttribute): Use createWindowAttributeEventListener instead. 111642 * html/HTMLFrameSetElement.cpp: 111643 (WebCore::HTMLFrameSetElement::parseMappedAttribute): Ditto. 111644 * svg/SVGSVGElement.cpp: 111645 (WebCore::SVGSVGElement::parseMappedAttribute): Ditto. Also add some missing copyright dates that `svn log` proves 111646 should be there. 111647 111648 2010-06-28 John Gregg <johnnyg (a] google.com> 111649 111650 Reviewed by Kent Tamura. 111651 111652 add ENABLE_DIRECTORY_UPLOAD build support 111653 https://bugs.webkit.org/show_bug.cgi?id=41100 111654 111655 * Configurations/FeatureDefines.xcconfig: 111656 * GNUmakefile.am: 111657 * WebCore.pri: 111658 111659 2010-06-28 Adam Barth <abarth (a] webkit.org> 111660 111661 Reviewed by Eric Seidel. 111662 111663 Don't use the new tree builder for fragments 111664 https://bugs.webkit.org/show_bug.cgi?id=41316 111665 111666 We need to walk before we can run. After this change, we can run the 111667 runner.html tests (with the ASSERT caveat). 111668 111669 * html/HTMLTreeBuilder.cpp: 111670 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 111671 111672 2010-06-28 Adam Barth <abarth (a] webkit.org> 111673 111674 Reviewed by Eric Seidel. 111675 111676 The new tree builder should actually finish building the tree 111677 https://bugs.webkit.org/show_bug.cgi?id=41314 111678 111679 Again, this patch makes progress on runner.html, but I haven't removed 111680 the ASSERT yet. 111681 111682 * html/HTMLTreeBuilder.cpp: 111683 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 111684 (WebCore::HTMLTreeBuilder::finished): 111685 * html/HTMLTreeBuilder.h: 111686 111687 2010-06-28 Dumitru Daniliuc <dumi (a] chromium.org> 111688 111689 Reviewed by Eric Seidel. 111690 111691 Fix a race condition that can happen when using DBs in workers. 111692 https://bugs.webkit.org/show_bug.cgi?id=41105 111693 111694 * storage/DatabaseTracker.cpp: 111695 (WebCore::DatabaseTracker::addOpenDatabase): 111696 * storage/DatabaseTracker.h: 111697 111698 2010-06-28 Adam Barth <abarth (a] webkit.org> 111699 111700 Reviewed by Eric Seidel. 111701 111702 Add text nodes to the DOM 111703 https://bugs.webkit.org/show_bug.cgi?id=41306 111704 111705 Actually add some text nodes to the DOM when parsing a document. We're 111706 going to need to do something fancier here eventually, but this gets us 111707 past the error we're seeing currently in runner.html. 111708 111709 Unfortunately, this patch "regresses" runner.html in the sense that we 111710 now hit an assert, but it's still an improvement... I'll update the 111711 HTML5 expectations once we get past the assert. 111712 111713 * html/HTMLTreeBuilder.cpp: 111714 (WebCore::HTMLTreeBuilder::processCharacter): 111715 (WebCore::HTMLTreeBuilder::insertTextNode): 111716 * html/HTMLTreeBuilder.h: 111717 111718 2010-06-28 Beth Dakin <bdakin (a] apple.com> 111719 111720 Build fix for non-PATH_BASED_BORDER_RADIUS_DRAWING platforms. 111721 111722 * rendering/RenderBoxModelObject.cpp: 111723 111724 2010-06-28 Andreas Kling <andreas.kling (a] nokia.com> 111725 111726 Reviewed by Kenneth Rohde Christiansen. 111727 111728 [Qt] Use HTML5-conformant gradient interpolation mode 111729 https://bugs.webkit.org/show_bug.cgi?id=41298 111730 111731 Change the Qt Gradient implementation to use ComponentInterpolation mode. 111732 111733 Spec link: 111734 http://www.whatwg.org/specs/web-apps/current-work/#colors-and-styles 111735 111736 * platform/graphics/qt/GradientQt.cpp: 111737 (WebCore::Gradient::platformGradient): 111738 111739 2010-06-28 Beth Dakin <bdakin (a] apple.com> 111740 111741 Reviewed by Sam Weinig. 111742 111743 Fix for https://bugs.webkit.org/show_bug.cgi?id=9197 CSS3: Borders 111744 with border-radius and double, groove, or ridge styles should look 111745 better 111746 111747 This patch re-works border radius painting to stroke paths instead 111748 of arcs. 111749 111750 Added new function clipConvexPolygon(). Added static 111751 addConvexPolygonToContext so that code can be shared between 111752 drawConvexPolygon() and clipConvexPolygon(). 111753 * platform/graphics/GraphicsContext.h: 111754 * platform/graphics/cg/GraphicsContextCG.cpp: 111755 (WebCore::addConvexPolygonToContext): 111756 (WebCore::GraphicsContext::drawConvexPolygon): 111757 (WebCore::GraphicsContext::clipConvexPolygon): 111758 111759 Shells of implementations on non-CG platforms. 111760 * platform/graphics/cairo/GraphicsContextCairo.cpp: 111761 (WebCore::GraphicsContext::clipConvexPolygon): 111762 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 111763 (WebCore::GraphicsContext::clipConvexPolygon): 111764 * platform/graphics/qt/GraphicsContextQt.cpp: 111765 (WebCore::GraphicsContext::clipConvexPolygon): 111766 * platform/graphics/skia/GraphicsContextSkia.cpp: 111767 (WebCore::GraphicsContext::clipConvexPolygon): 111768 * platform/graphics/wince/GraphicsContextWince.cpp: 111769 (WebCore::GraphicsContext::clipConvexPolygon): 111770 * platform/graphics/wx/GraphicsContextWx.cpp: 111771 (WebCore::GraphicsContext::clipConvexPolygon): 111772 111773 This new helper function determines if the inner corners of the 111774 border will arch in or meet at a right angle. 111775 * rendering/RenderBoxModelObject.cpp: 111776 (WebCore::borderWillArcInnerEdge): 111777 111778 This function is re-written so that, for each side of the border, 111779 if borderWillArcInnerEdge() is true, we go down a brand new code 111780 path of clipping to a convex polygon for the border side and then 111781 we paint the side using the new function drawBoxSideFromPath(). If 111782 borderWillArcInnerEdge() is false, then we call into the old 111783 familiar drawLineForBoxSide() which relies on the rounder clip 111784 rects we have set up to arch the outer edge of the border. 111785 (WebCore::RenderBoxModelObject::paintBorder): 111786 111787 This new function does the math to figure out the convex polygon 111788 to clip to in the case where we need to arch the inner edge of the 111789 border. This calls into a new GraphicsContext function that is only 111790 implemented on CG at this time. This is the reason we are keeping 111791 around an old version of paintBorder() for now. 111792 (WebCore::RenderBoxModelObject::clipBorderSidePolygon): 111793 * rendering/RenderBoxModelObject.h: 111794 111795 borderInnerRect() is a new convenience function called from 111796 RenderObject and RenderBoxModelObject to determine the rect of the 111797 inside edge of the border. 111798 * rendering/RenderObject.cpp: 111799 (WebCore::RenderObject::borderInnerRect): 111800 111801 This new function re-works drawArcForBoxSide to draw from Paths 111802 when appropriate instead of stroking arcs. 111803 (WebCore::RenderObject::drawBoxSideFromPath): 111804 111805 Keep this around for that do not HAVE(PATH_BASED_BORDER_RADIUS_DRAWING) until 111806 GraphicsContext::clipConvexPolygon() is implemented. 111807 (WebCore::RenderObject::drawArcForBoxSide): 111808 * rendering/RenderObject.h: 111809 111810 New function 111811 RenderStyle::getInnerBorderRadiiForRectWithBorderWidths() gets the 111812 inner radius values for a rect. It takes border widths a parameters 111813 rather than using the style's border widths so that it can be used 111814 in inner radius calculations for double and groove/ridge 111815 calculations. The W3C corner constraining rules were moved to a 111816 static function that can be called from both getBorderRadiiForRect 111817 () and getInnerBorderRadiiForRectWithBorderWidths(). 111818 * rendering/style/RenderStyle.cpp: 111819 (WebCore::constrainCornerRadiiForRect): 111820 (WebCore::RenderStyle::getBorderRadiiForRect): 111821 (WebCore::RenderStyle::getInnerBorderRadiiForRectWithBorderWidths): 111822 * rendering/style/RenderStyle.h: 111823 111824 2010-06-28 Martin Robinson <mrobinson (a] igalia.com> 111825 111826 Reviewed by Xan Lopez. 111827 111828 [GTK] Add support for the progress bar tag 111829 https://bugs.webkit.org/show_bug.cgi?id=41014 111830 111831 Add support for rendering the progress tag for WebKit GTK+. 111832 111833 * GNUmakefile.am: 111834 * platform/gtk/RenderThemeGtk.cpp: 111835 (WebCore::RenderThemeGtk::animationRepeatIntervalForProgressBar): 111836 Added. Currently progress bar animations are disabled. As it looks like 111837 there may not be a good way to support this with Mozilla's theme drawing code. 111838 (WebCore::RenderThemeGtk::animationDurationForProgressBar): Ditto. 111839 (WebCore::RenderThemeGtk::adjustProgressBarStyle): Added. 111840 (WebCore::RenderThemeGtk::paintProgressBar): Added. 111841 * platform/gtk/RenderThemeGtk.h: Add declarations for new methods. 111842 * platform/gtk/gtk2drawing.c: 111843 (moz_gtk_get_progress_widget): Expose the progress widget so that the chunk can be positioned properly. 111844 * platform/gtk/gtkdrawing.h: Added declaration for moz_gtk_get_progress_widget. 111845 111846 2010-06-28 Adam Barth <abarth (a] webkit.org> 111847 111848 Reviewed by Eric Seidel. 111849 111850 HTML5 Regression: Crash in insert() 111851 https://bugs.webkit.org/show_bug.cgi?id=41281 111852 111853 We need to call endIfDelayed() outside of the script nesting block 111854 because endIfDelayed() might call end(), which deletes the 111855 HTMLDocumentParser. If we try to exit the script nesting block after 111856 the HTMLDocumentParser has been deleted, we'll decrement unallocated 111857 memory, which is bad times. 111858 111859 Moving endIfDelayed outside of the script nesting block also lets us 111860 avoid ending if inWrite() is true. If we're inWrite(), then there's 111861 folks above us on the stack who will crash of the HTMLDocumentParser is 111862 deallocated. Adding this check matches the LegacyHTMLDocumentParser 111863 and the logic in attemptToEnd, facilitating a small refactoring of the 111864 common logic for improved readability. 111865 111866 I don't know of any test case that changes in behavior because of this 111867 patch, but this bug exists on the same line of code that the reliablity 111868 tests crashed. I'm not sure whether this patch will fix that crash, 111869 but removing bugs (even theoretical ones) seems like a good idea. 111870 111871 * html/HTMLDocumentParser.cpp: 111872 (WebCore::HTMLDocumentParser::insert): 111873 (WebCore::HTMLDocumentParser::append): 111874 (WebCore::HTMLDocumentParser::attemptToEnd): 111875 (WebCore::HTMLDocumentParser::endIfDelayed): 111876 (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution): 111877 * html/HTMLDocumentParser.h: 111878 (WebCore::HTMLDocumentParser::shouldDelayEnd): 111879 111880 2010-06-28 Eric Carlson <eric.carlson (a] apple.com> 111881 111882 Reviewed by Sam Weinig. 111883 111884 MediaPlayerPrivate::getSupportedTypes does not return "modern" MIME types 111885 https://bugs.webkit.org/show_bug.cgi?id=41287 111886 <rdar://problem/8137402> 111887 111888 No new test because getSupportedTypes is used privately by MediaPlayer. 111889 111890 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 111891 (WebCore::MediaPlayerPrivate::getSupportedTypes): Build hash set with both common and 111892 modern types. 111893 111894 2010-06-28 James Robinson <jamesr (a] chromium.org> 111895 111896 Reviewed by Darin Adler. 111897 111898 REGRESSION(53790): Neopets page with mismatched elements misrenders 111899 https://bugs.webkit.org/show_bug.cgi?id=41181 111900 111901 Misnested formatting tags require fixup in order to create a valid DOM. Because this takes 111902 O(N^2) time in some cases, http://trac.webkit.org/changeset/53790 added an iteration limit 111903 of 5 to this algorithm to avoid hangs. This limit is too low for neopets, but a limit of 111904 7 is sufficient. This raises the limit to 10 to have a bit of breathing room. HTML5 111905 defines the fixup algorithm http://www.whatwg.org/specs/web-apps/current-work/#adoptionAgency 111906 but doesn't specify any particular iteration limit. 111907 111908 * html/LegacyHTMLTreeBuilder.cpp: 111909 111910 2010-06-28 Adam Barth <abarth (a] webkit.org> 111911 111912 Reviewed by Eric Seidel. 111913 111914 The new tree builder needs to call attach() on elements it attaches to 111915 the DOM 111916 https://bugs.webkit.org/show_bug.cgi?id=41293 111917 111918 Apparently Nodes expect to have their attach() method called when they 111919 are attached to the DOM. The new tree builder is happy to oblige. 111920 Making this call requires some fancy footwork with RefPtr/PassRefPtr to 111921 avoid extra ref churn while keeping each function small. 111922 111923 * html/HTMLTreeBuilder.cpp: 111924 (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML): 111925 (WebCore::HTMLTreeBuilder::processCharacter): 111926 (WebCore::HTMLTreeBuilder::insertDoctype): 111927 (WebCore::HTMLTreeBuilder::insertComment): 111928 (WebCore::HTMLTreeBuilder::insertCommentOnDocument): 111929 (WebCore::HTMLTreeBuilder::insertElement): 111930 (WebCore::HTMLTreeBuilder::insertSelfClosingElement): 111931 (WebCore::HTMLTreeBuilder::insertScriptElement): 111932 * html/HTMLTreeBuilder.h: 111933 (WebCore::HTMLTreeBuilder::attach): 111934 111935 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 111936 111937 Fix distcheck. 111938 111939 * GNUmakefile.am: 111940 111941 2010-06-28 Kenneth Russell <kbr (a] google.com> 111942 111943 Reviewed by Dimitri Glazkov. 111944 111945 Index validation caches buffer size information too aggressively 111946 https://bugs.webkit.org/show_bug.cgi?id=41092 111947 111948 Test: fast/canvas/webgl/index-validation-with-resized-buffer.html 111949 111950 * html/canvas/WebGLRenderingContext.cpp: 111951 (WebCore::WebGLRenderingContext::validateRenderingState): 111952 - Compute the number of valid elements each time based on the latched buffer. 111953 (WebCore::WebGLRenderingContext::vertexAttribPointer): 111954 - Do not cache the buffer size, only the attributes used to 111955 compute the number of required elements. 111956 * html/canvas/WebGLRenderingContext.h: 111957 (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState): 111958 - Ditto. 111959 111960 2010-06-28 Andreas Kling <andreas.kling (a] nokia.com> 111961 111962 Reviewed by Simon Hausmann. 111963 111964 [Qt] Replace single treat-as-space characters with normal space 111965 https://bugs.webkit.org/show_bug.cgi?id=41278 111966 111967 This keeps Qt from attempting glyph substitution and loading a bunch 111968 of extra fonts when encountering entities. 111969 111970 * platform/graphics/qt/FontQt.cpp: 111971 (WebCore::Font::floatWidthForComplexText): 111972 111973 2010-06-28 Robin Cao <robin.cao (a] torchmobile.com.cn> 111974 111975 Reviewed by Dan Bernstein. 111976 111977 canvas fillText with @font-face crashes 111978 https://bugs.webkit.org/show_bug.cgi?id=35486 111979 111980 The font object in CanvasRenderingContext2D may become invalid at some point. 111981 Override recalcStyle() in HTMLCanvasElement, and update the font object from there if needed. 111982 111983 A test already exists: canvas/philip/tests/2d.text.draw.fontface.repeat.html 111984 111985 * html/HTMLCanvasElement.cpp: 111986 (WebCore::HTMLCanvasElement::recalcStyle): 111987 * html/HTMLCanvasElement.h: 111988 * html/canvas/CanvasRenderingContext2D.cpp: 111989 (WebCore::CanvasRenderingContext2D::updateFont): 111990 * html/canvas/CanvasRenderingContext2D.h: 111991 111992 2010-06-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 111993 111994 Unreviewed build fix. 111995 111996 [EFL] Build fix for latest version of Ecore library. 111997 Ecore recently changed return type of callbacks from int to Eina_Bool. 111998 111999 No new functionality, so no new tests. 112000 112001 * platform/efl/SharedTimerEfl.cpp: 112002 (WebCore::timerEvent): Return Eina_Bool instead of int. 112003 112004 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112005 112006 Fix build with GTK+ older than 2.18 112007 112008 * platform/gtk/ScrollViewGtk.cpp: 112009 (WebCore::ScrollView::visibleContentRect): 112010 112011 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112012 112013 Reviewed by Adam Barth. 112014 112015 [GTK] Push NULL context on every DOM bindings entry point 112016 https://bugs.webkit.org/show_bug.cgi?id=39967 112017 112018 Update GObject DOM bindings to push the NULL context on every API 112019 entry point, and update bindings test results. 112020 112021 * bindings/scripts/CodeGeneratorGObject.pm: 112022 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 112023 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 112024 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 112025 112026 2010-06-28 Martin Robinson <martin.james.robinson (a] gmail.com> 112027 112028 Reviewed by Adam Roben. 112029 112030 [WinCairo] Text box backgrounds do not render in partially opaque layers 112031 https://bugs.webkit.org/show_bug.cgi?id=41113 112032 112033 Tests: 112034 manual-tests/partially-opaque-text-input.html 112035 112036 * platform/graphics/win/GraphicsContextCairoWin.cpp: 112037 (WebCore::GraphicsContext::releaseWindowsContext): 112038 When restoring a context which does not support alpha blending, manually 112039 set the alpha channel of the HBITMAP to fully opaque. This will effectively 112040 ignore the alpha channel of the HBITMAP, which is necessary because GDI 112041 drawing functions set the alpha value to be fully transparent (0). 112042 112043 2010-06-28 Martin Robinson <martin.james.robinson (a] gmail.com> 112044 112045 Reviewed by Adam Roben. 112046 112047 [WinCairo] Rendering of themed elements on a layer with opacity produces nothing 112048 https://bugs.webkit.org/show_bug.cgi?id=41111 112049 112050 Tests: 112051 manual-tests/partially-opaque-form-elements.html 112052 112053 * platform/graphics/win/GraphicsContextCairoWin.cpp: 112054 (WebCore::GraphicsContext::releaseWindowsContext): 112055 Preform a cairo_save() and a cairo_restore() around code modifying the transformation 112056 matrix of the Cairo surface. Also set the destination coordinates before adjusting 112057 the transformation matrix scale, so that the destination coordinates are not scaled 112058 as well. 112059 112060 2010-06-28 Sam Magnuson <smagnuson (a] netflix.com> 112061 112062 Reviewed by Kenneth Rohde Christiansen. 112063 112064 [Qt] GraphicsLayerQt delay seems unnecessary. 112065 https://bugs.webkit.org/show_bug.cgi?id=40846 112066 112067 Test: compositing/animation/busy-indicator.html 112068 112069 * platform/graphics/qt/GraphicsLayerQt.cpp: 112070 (WebCore::GraphicsLayerQtImpl::recache): 112071 (WebCore::GraphicsLayerQtImpl::flushChanges): 112072 (WebCore::GraphicsLayerQt::setContentsToImage): 112073 (WebCore::GraphicsLayerQt::addAnimation): 112074 112075 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112076 112077 Reviewed by Gustavo Noronha. 112078 112079 Until now we were adding the event listeners for a given object in 112080 the wrap method, since that's the first moment we have accoss to 112081 the core WebCore object. The problem is that we only install the 112082 listeners that the topmost class in the class hierarchy needs (eg, 112083 HTMLParagrahElement for a P element), when most of the actual 112084 event attributes are defined in the base classes (Node, Element, 112085 ...). 112086 112087 To fix this set the core object as a construct/write-only property 112088 on the wrapper GObject, and set the eventlisteners in the cGObject 112089 'construct' method, chaining up through all the class hierarchy 112090 until the end. This way we'll get all the eventlisteners defined 112091 in all the superclasses of our object, which is what we want. 112092 112093 * bindings/gobject/WebKitDOMObject.cpp: 112094 (webkit_dom_object_get_property): 112095 (webkit_dom_object_set_property): 112096 (webkit_dom_object_class_init): 112097 * bindings/scripts/CodeGeneratorGObject.pm: 112098 * dom/Node.idl: 112099 112100 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112101 112102 Fix GTK+ build. 112103 112104 * platform/gtk/RenderThemeGtk.cpp: 112105 112106 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112107 112108 Reviewed by Gustavo Noronha. 112109 112110 [GTK] Does not compile with -DGSEAL_ENABLE 112111 https://bugs.webkit.org/show_bug.cgi?id=37851 112112 112113 Fix build with GSEAL enabled. 112114 112115 * GNUmakefile.am: 112116 * platform/gtk/GtkVersioning.h: 112117 * platform/gtk/RenderThemeGtk.cpp: 112118 (WebCore::paintMozillaGtkWidget): 112119 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): 112120 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): 112121 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): 112122 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): 112123 (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor): 112124 (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor): 112125 (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor): 112126 (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor): 112127 (WebCore::RenderThemeGtk::systemColor): 112128 * platform/gtk/ScrollViewGtk.cpp: 112129 (WebCore::ScrollView::platformRemoveChild): 112130 (WebCore::ScrollView::visibleContentRect): 112131 * platform/gtk/gtk2drawing.c: 112132 (ensure_toggle_button_widget): 112133 (ensure_combo_box_widgets): 112134 (ensure_combo_box_entry_widgets): 112135 (ensure_tree_header_cell_widget): 112136 (moz_gtk_button_paint): 112137 (moz_gtk_toggle_paint): 112138 (calculate_button_inner_rect): 112139 (calculate_arrow_rect): 112140 (moz_gtk_scrollbar_button_paint): 112141 (moz_gtk_scrollbar_trough_paint): 112142 (moz_gtk_scrollbar_thumb_paint): 112143 (moz_gtk_spin_paint): 112144 (moz_gtk_spin_updown_paint): 112145 (moz_gtk_scale_paint): 112146 (moz_gtk_scale_thumb_paint): 112147 (moz_gtk_gripper_paint): 112148 (moz_gtk_hpaned_paint): 112149 (moz_gtk_vpaned_paint): 112150 (moz_gtk_entry_paint): 112151 (moz_gtk_treeview_paint): 112152 (moz_gtk_tree_header_sort_arrow_paint): 112153 (moz_gtk_treeview_expander_paint): 112154 (moz_gtk_expander_paint): 112155 (moz_gtk_combo_box_paint): 112156 (moz_gtk_downarrow_paint): 112157 (moz_gtk_combo_box_entry_button_paint): 112158 (moz_gtk_container_paint): 112159 (moz_gtk_toggle_label_paint): 112160 (moz_gtk_toolbar_paint): 112161 (moz_gtk_toolbar_separator_paint): 112162 (moz_gtk_tooltip_paint): 112163 (moz_gtk_resizer_paint): 112164 (moz_gtk_frame_paint): 112165 (moz_gtk_progressbar_paint): 112166 (moz_gtk_progress_chunk_paint): 112167 (moz_gtk_get_tab_thickness): 112168 (moz_gtk_tab_paint): 112169 (moz_gtk_tabpanels_paint): 112170 (moz_gtk_tab_scroll_arrow_paint): 112171 (moz_gtk_menu_bar_paint): 112172 (moz_gtk_menu_popup_paint): 112173 (moz_gtk_menu_separator_paint): 112174 (moz_gtk_menu_item_paint): 112175 (moz_gtk_menu_arrow_paint): 112176 112177 2010-06-28 Xan Lopez <xlopez (a] igalia.com> 112178 112179 Reviewed by Gustavo Noronha. 112180 112181 [GTK] Add support for GTK+3 112182 https://bugs.webkit.org/show_bug.cgi?id=41253 112183 112184 Adapt build system for 3.x support. 112185 112186 * GNUmakefile.am: 112187 112188 2010-06-28 Yury Semikhatsky <yurys (a] chromium.org> 112189 112190 Reviewed by Pavel Feldman. 112191 112192 [v8] Web Inspector: properties of scope variables are flattened while on a breakpoint. 112193 https://bugs.webkit.org/show_bug.cgi?id=41214 112194 112195 Test: inspector/debugger-proto-property.html 112196 112197 * inspector/front-end/InjectedScript.js: 112198 (injectedScriptConstructor): object proxy with non-empty path cannot be scope proxy. 112199 112200 2010-06-28 MORITA Hajime <morrita (a] google.com> 112201 112202 Unreviewed attempt to fix windows build. 112203 112204 * page/DOMWindow.idl: 112205 112206 2010-06-22 MORITA Hajime <morrita (a] google.com> 112207 112208 Reviewed by Kent Tamura. 112209 112210 <progress> should be styled with -webkit-progress-bar-value 112211 https://bugs.webkit.org/show_bug.cgi?id=40823 112212 112213 Fixed to peek styles of the shadow node pseudo class to fallback 112214 to non-styled painting. 112215 112216 * css/html.css: 112217 (progress): Added defaul background-color. 112218 (progress::-webkit-progress-bar-value): Added defaul background-color. 112219 * rendering/RenderProgress.cpp: 112220 (WebCore::RenderProgress::shouldHaveParts): 112221 (WebCore::RenderProgress::updatePartsState): 112222 112223 Test: fast/dom/HTMLProgressElement/progress-bar-value-pseudo-element.html 112224 112225 2010-06-28 Csaba Osztrogonc <ossy (a] webkit.org> 112226 112227 Reviewed by Kent Tamura. 112228 112229 GCC suggest parentheses around && within || 112230 https://bugs.webkit.org/show_bug.cgi?id=41245 112231 112232 * rendering/RenderBlock.cpp: 112233 (WebCore::RenderBlock::paintChildren): 112234 112235 2010-06-28 Adam Barth <abarth (a] webkit.org> 112236 112237 Reviewed by Eric Seidel. 112238 112239 Don't dump contents of <script> elements in LayoutTests 112240 https://bugs.webkit.org/show_bug.cgi?id=41277 112241 112242 Apparently we need to tell each element when we start and stop parsing 112243 its children. If we don't do this, we see the contents of every script 112244 and style element in dumpAsText LayoutTests. (This patch is *well* 112245 covered by LayoutTests.) 112246 112247 * html/HTMLTreeBuilder.h: 112248 (WebCore::HTMLTreeBuilder::ElementStack::pop): 112249 (WebCore::HTMLTreeBuilder::ElementStack::push): 112250 112251 2010-06-28 Eric Seidel <eric (a] webkit.org> 112252 112253 Reviewed by Adam Barth. 112254 112255 Make it possible to test the new HTML5 TreeBuilder 112256 https://bugs.webkit.org/show_bug.cgi?id=41276 112257 112258 Adam was concerned that someone might make their port 112259 depend on this setting (I guess we had some trouble with that 112260 with the HTML5Parser setting), so I littered the code with warnings. 112261 112262 test-html5-parser now tests this code path. 112263 112264 * html/HTMLTreeBuilder.cpp: 112265 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 112266 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 112267 (WebCore::HTMLTreeBuilder::finished): 112268 * page/Settings.cpp: 112269 (WebCore::Settings::Settings): 112270 * page/Settings.h: 112271 (WebCore::Settings::setHTML5TreeBuilderEnabled_DO_NOT_USE): 112272 (WebCore::Settings::html5TreeBuilderEnabled): 112273 112274 2010-06-28 Adam Barth <abarth (a] webkit.org> 112275 112276 Reviewed by Eric Seidel. 112277 112278 Make the html5lib runner.html not assert 112279 https://bugs.webkit.org/show_bug.cgi?id=41273 112280 112281 This patch gets us closer to being able to run the parser tests. We 112282 still don't get parsing correct, but at least we don't assert. :) 112283 112284 * html/HTMLTreeBuilder.cpp: 112285 (WebCore::HTMLTreeBuilder::processStartTag): 112286 (WebCore::HTMLTreeBuilder::processComment): 112287 (WebCore::HTMLTreeBuilder::insertCommentOnDocument): 112288 * html/HTMLTreeBuilder.h: 112289 112290 2010-06-28 Eric Seidel <eric (a] webkit.org> 112291 112292 Unreviewed. Attempt to fix Chromium and Qt builders. 112293 112294 Add a new baseclass for XML, HTML and Text DocumentParsers to clean up DocumentParser call sites 112295 https://bugs.webkit.org/show_bug.cgi?id=41141 112296 112297 No functional changes, thus no tests. 112298 112299 * bindings/v8/ScriptController.cpp: 112300 (WebCore::ScriptController::eventHandlerLineNumber): 112301 (WebCore::ScriptController::eventHandlerColumnNumber): 112302 * dom/XMLDocumentParserQt.cpp: 112303 (WebCore::XMLDocumentParser::XMLDocumentParser): 112304 (WebCore::XMLDocumentParser::stopParsing): 112305 112306 2010-06-28 Adam Barth <abarth (a] webkit.org> 112307 112308 Reviewed by Eric Seidel. 112309 112310 Add support for parsing attributes 112311 https://bugs.webkit.org/show_bug.cgi?id=41272 112312 112313 This patch lets use parse the following document: 112314 112315 <script src="data:text/javascript,alert('PASS')"></script> 112316 112317 * html/HTMLTreeBuilder.cpp: 112318 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 112319 (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML): 112320 (WebCore::HTMLTreeBuilder::insertScriptElement): 112321 (WebCore::HTMLTreeBuilder::createElement): 112322 112323 2010-06-28 Eric Seidel <eric (a] webkit.org> 112324 112325 Reviewed by Darin Adler. 112326 112327 Add a new baseclass for XML, HTML and Text DocumentParsers to clean up DocumentParser call sites 112328 https://bugs.webkit.org/show_bug.cgi?id=41141 112329 112330 By splitting ScriptableDocumentParser and DecodedDataDocumentParser 112331 out from DocumentParser we've made the DocumentParser and 112332 RawDataDocumentParser classes simpler. 112333 112334 No functional change, thus no tests. 112335 112336 * Android.mk: 112337 * CMakeLists.txt: 112338 * GNUmakefile.am: 112339 * WebCore.gypi: 112340 * WebCore.pro: 112341 * WebCore.vcproj/WebCore.vcproj: 112342 * WebCore.xcodeproj/project.pbxproj: 112343 * bindings/js/ScriptController.cpp: 112344 (WebCore::ScriptController::eventHandlerLineNumber): 112345 * css/CSSStyleSheet.cpp: 112346 (WebCore::CSSStyleSheet::checkLoaded): 112347 * dom/Document.cpp: 112348 (WebCore::Document::scriptableDocumentParser): 112349 (WebCore::Document::open): 112350 (WebCore::Document::implicitOpen): 112351 (WebCore::Document::implicitClose): 112352 (WebCore::Document::removePendingSheet): 112353 * dom/Document.h: 112354 (WebCore::Document::parser): 112355 * dom/DocumentParser.cpp: 112356 (WebCore::DocumentParser::DocumentParser): 112357 * dom/DocumentParser.h: 112358 (WebCore::DocumentParser::asScriptableDocumentParser): 112359 * dom/RawDataDocumentParser.h: 112360 (WebCore::RawDataDocumentParser::finishWasCalled): 112361 * dom/ScriptableDocumentParser.cpp: Copied from WebCore/html/HTMLEntityParser.h. 112362 (WebCore::ScriptableDocumentParser::ScriptableDocumentParser): 112363 * dom/ScriptableDocumentParser.h: Added. 112364 (WebCore::ScriptableDocumentParser::isExecutingScript): 112365 (WebCore::ScriptableDocumentParser::executeScriptsWaitingForStylesheets): 112366 (WebCore::ScriptableDocumentParser::xssAuditor): 112367 (WebCore::ScriptableDocumentParser::setXSSAuditor): 112368 (WebCore::ScriptableDocumentParser::processingContentWrittenByScript): 112369 (WebCore::ScriptableDocumentParser::asScriptableDocumentParser): 112370 * dom/ViewportArguments.cpp: 112371 (WebCore::parserLineNumber): 112372 (WebCore::reportViewportWarning): 112373 * dom/XMLDocumentParser.h: 112374 * dom/XMLDocumentParserLibxml2.cpp: 112375 (WebCore::XMLDocumentParser::XMLDocumentParser): 112376 * html/HTMLDocumentParser.cpp: 112377 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 112378 (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc): 112379 * html/HTMLDocumentParser.h: 112380 * html/LegacyHTMLDocumentParser.cpp: 112381 (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser): 112382 (WebCore::LegacyHTMLDocumentParser::parseTag): 112383 * html/LegacyHTMLDocumentParser.h: 112384 (WebCore::LegacyHTMLDocumentParser::processingContentWrittenByScript): 112385 * html/LegacyHTMLTreeBuilder.cpp: 112386 (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole): 112387 * loader/DocumentLoader.cpp: 112388 * loader/DocumentWriter.cpp: 112389 * loader/TextDocument.cpp: 112390 (WebCore::TextDocumentParser::TextDocumentParser): 112391 (WebCore::TextDocumentParser::finish): 112392 * svg/SVGDocumentExtensions.cpp: 112393 (WebCore::parserLineNumber): 112394 (WebCore::reportMessage): 112395 (WebCore::SVGDocumentExtensions::reportWarning): 112396 (WebCore::SVGDocumentExtensions::reportError): 112397 112398 2010-06-27 Steve Falkenburg <sfalken (a] apple.com> 112399 112400 Reviewed by Mark Rowe. 112401 112402 WebKit2 build exceeds address space on 32-bit Windows builders 112403 https://bugs.webkit.org/show_bug.cgi?id=41270 112404 112405 Add all-in-one file for render-related SVG files. 112406 Clean up other all-in-one files by adding missing files, excluding matching files from the vcproj. 112407 Reduces release WebCore.lib size by 10% (160MB). 112408 112409 * DerivedSources.cpp: 112410 * WebCore.vcproj/WebCore.vcproj: 112411 * bindings/js/JSBindingsAllInOne.cpp: 112412 * html/HTMLElementsAllInOne.cpp: 112413 * rendering/RenderSVGAllInOne.cpp: Added. 112414 112415 2010-06-27 Adam Barth <abarth (a] webkit.org> 112416 112417 Reviewed by Eric Seidel. 112418 112419 Sketch out the InBodyMode for the tree builder 112420 https://bugs.webkit.org/show_bug.cgi?id=41271 112421 112422 This gives us some basic behavior for the InBodyMode. I've implemented 112423 some of the easier logic. The more complicated logic will be in 112424 subsequent patches. 112425 112426 * html/HTMLTreeBuilder.cpp: 112427 (WebCore::HTMLTreeBuilder::processStartTag): 112428 (WebCore::HTMLTreeBuilder::processEndTag): 112429 (WebCore::HTMLTreeBuilder::insertFormatingElement): 112430 (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements): 112431 * html/HTMLTreeBuilder.h: 112432 112433 2010-06-25 Yuzo Fujishima <yuzo (a] google.com> 112434 112435 Reviewed by Shinichiro Hamaji. 112436 112437 Improve default value handling for page format properties. 112438 112439 Default page size and orientation have been hard-coded. 112440 Instead, pass default page size and margins to 112441 WebCore::Document::pageSizeAndMarginsInPixels to handle auto page size 112442 and margins specified as percentages. 112443 Return margins instead of page rect. 112444 112445 https://bugs.webkit.org/show_bug.cgi?id=41150 112446 112447 * WebCore.base.exp: 112448 * css/CSSStyleSelector.cpp: 112449 (WebCore::CSSStyleSelector::applyPageSizeProperty): 112450 (WebCore::CSSStyleSelector::pageSizeFromName): 112451 * css/html.css: 112452 (@page): 112453 * dom/Document.cpp: 112454 (WebCore::Document::pageSizeAndMarginsInPixels): 112455 * dom/Document.h: 112456 * page/PrintContext.cpp: 112457 (WebCore::PrintContext::pageProperty): 112458 (WebCore::PrintContext::pageSizeAndMarginsInPixels): 112459 * page/PrintContext.h: 112460 * rendering/style/RenderStyle.h: 112461 (WebCore::InheritedFlags::pageSizeType): 112462 (WebCore::InheritedFlags::setPageSizeType): 112463 (WebCore::InheritedFlags::resetPageSizeType): 112464 * rendering/style/StyleRareNonInheritedData.cpp: 112465 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): 112466 (WebCore::StyleRareNonInheritedData::operator==): 112467 * rendering/style/StyleRareNonInheritedData.h: 112468 (WebCore::): 112469 112470 2010-06-27 Adam Barth <abarth (a] webkit.org> 112471 112472 Reviewed by Eric Seidel. 112473 112474 Clean up some loose ends in HTML5 tree builder 112475 https://bugs.webkit.org/show_bug.cgi?id=41265 112476 112477 This patch cleans up a few loose ends in HTML5 tree builder. 112478 Technically, we could do each of these as individual patches, but that 112479 didn't seem worth while. 112480 112481 * html/HTMLTreeBuilder.cpp: 112482 (WebCore::HTMLTreeBuilder::processStartTag): 112483 - Add missing break before default case statement. I don't think 112484 this change is observable. 112485 (WebCore::HTMLTreeBuilder::processComment): 112486 - Originally I thought that comments had special processing in the 112487 InHeadNoscriptMode, but it turns out that when you unwind the 112488 definitions, it amounts to exactly the same thing. 112489 (WebCore::HTMLTreeBuilder::processEndOfFile): 112490 - Add missing break before default case statement. I don't think 112491 this change is observable. 112492 (WebCore::HTMLTreeBuilder::insertComment): 112493 - Eliminate one unnecessary ref/deref pair. 112494 (WebCore::HTMLTreeBuilder::insertSelfClosingElement): 112495 - When we insert self-closing elements, there's no reason to push 112496 them onto the stack of open elements just to pop them off again. 112497 This change saves a malloc/free pair as well as a ref/deref pair. 112498 Go team. 112499 * html/HTMLTreeBuilder.h: 112500 - Remove unused function. 112501 112502 2010-06-27 Adam Barth <abarth (a] webkit.org> 112503 112504 Reviewed by Eric Seidel. 112505 112506 Implement remaining StartTag processing for InHeadNoscriptMode 112507 https://bugs.webkit.org/show_bug.cgi?id=41264 112508 112509 The InHeadNoscriptMode processes some start tags "as if" the tree 112510 builder were in the InHeadMode. This is an idiom we'll see more of 112511 later. My approach is this patch is to factor all the logic for 112512 processing start tags in the InHeadMode into a separate function that 112513 can be called from both locations. This seems cleaner than just 112514 splitting out the parts that are actually used by both modes. 112515 112516 * html/HTMLTreeBuilder.cpp: 112517 (WebCore::HTMLTreeBuilder::processStartTag): 112518 (WebCore::HTMLTreeBuilder::processStartTagForInHead): 112519 (WebCore::HTMLTreeBuilder::insertSelfClosingElement): 112520 * html/HTMLTreeBuilder.h: 112521 112522 2010-06-27 Adam Barth <abarth (a] webkit.org> 112523 112524 Reviewed by Eric Seidel. 112525 112526 Add support for <title> and <style> elements 112527 https://bugs.webkit.org/show_bug.cgi?id=41263 112528 112529 These elements use the generic RCDATA and RawText algorithms, 112530 respectively. 112531 112532 * html/HTMLTreeBuilder.cpp: 112533 (WebCore::HTMLTreeBuilder::processEndTag): 112534 (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement): 112535 (WebCore::HTMLTreeBuilder::insertGenericRawTextElement): 112536 112537 2010-06-27 Adam Barth <abarth (a] webkit.org> 112538 112539 Reviewed by Eric Seidel. 112540 112541 Actually insert Doctype elements 112542 https://bugs.webkit.org/show_bug.cgi?id=41262 112543 112544 This code is pretty much the same as in the old tree builder. 112545 112546 * html/HTMLToken.h: 112547 (WebCore::AtomicHTMLToken::publicIdentifier): 112548 (WebCore::AtomicHTMLToken::systemIdentifier): 112549 * html/HTMLTreeBuilder.cpp: 112550 (WebCore::HTMLTreeBuilder::insertDoctype): 112551 112552 2010-06-27 Andreas Kling <andreas.kling (a] nokia.com> 112553 112554 Reviewed by Darin Adler. 112555 112556 Canvas: Ignore calls to drawImage() with non-finite parameters 112557 https://bugs.webkit.org/show_bug.cgi?id=38929 112558 112559 This also fixes a Qt assert when using the raster graphics system. 112560 112561 Spec link: 112562 http://www.whatwg.org/specs/web-apps/current-work/#2dcontext 112563 112564 * html/canvas/CanvasRenderingContext2D.cpp: 112565 (WebCore::CanvasRenderingContext2D::drawImage): 112566 112567 2010-06-27 Andreas Kling <andreas.kling (a] nokia.com> 112568 112569 Reviewed by Kenneth Rohde Christiansen. 112570 112571 editing/execCommand/copy-without-selection.html fails on Qt after r61637 112572 https://bugs.webkit.org/show_bug.cgi?id=41025 112573 112574 The problem was that when getting data back via Clipboard::getData(), 112575 the String::String(const char*, int) constructor was called 112576 with UTF-16 data. 112577 112578 The solution is to use QMimeData's text() and setText() for "text/plain". 112579 112580 setText() which makes sure Qt passes the string in proper format to the 112581 system clipboard. (The previous implementation would convert it to UTF-8) 112582 112583 text() makes sure that the correct encoding is used (UTF-16) and that 112584 we get back whatever we originally put in there. 112585 112586 * platform/qt/ClipboardQt.cpp: 112587 (WebCore::isTextMimeType): 112588 (WebCore::ClipboardQt::getData): 112589 (WebCore::ClipboardQt::setData): 112590 112591 2010-06-27 Adam Barth <abarth (a] webkit.org> 112592 112593 Reviewed by Eric Seidel. 112594 112595 HTML5 tree builder should be able to execute inline scripts 112596 https://bugs.webkit.org/show_bug.cgi?id=41257 112597 112598 This patch implements enough machinery so that we can execute inline 112599 scripts in extremely simple documents such as the following: 112600 112601 <html> 112602 <script> 112603 alert(1); 112604 </script> 112605 112606 To get this to work, I had to flesh out a surprising amount of the data 112607 structures for processing the <head>. No tests because this is 112608 already covered by most LayoutTests. 112609 112610 * html/HTMLTreeBuilder.cpp: 112611 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 112612 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 112613 (WebCore::HTMLTreeBuilder::processStartTag): 112614 (WebCore::HTMLTreeBuilder::processEndTag): 112615 (WebCore::HTMLTreeBuilder::processCharacter): 112616 (WebCore::HTMLTreeBuilder::insertComment): 112617 (WebCore::HTMLTreeBuilder::insertElement): 112618 (WebCore::HTMLTreeBuilder::insertScriptElement): 112619 * html/HTMLTreeBuilder.h: 112620 (WebCore::HTMLTreeBuilder::ElementRecord::ElementRecord): 112621 (WebCore::HTMLTreeBuilder::ElementRecord::element): 112622 (WebCore::HTMLTreeBuilder::ElementRecord::next): 112623 (WebCore::HTMLTreeBuilder::ElementRecord::releaseNext): 112624 (WebCore::HTMLTreeBuilder::ElementRecord::setNext): 112625 (WebCore::HTMLTreeBuilder::ElementStack::pop): 112626 (WebCore::HTMLTreeBuilder::ElementStack::push): 112627 (WebCore::HTMLTreeBuilder::ElementStack::top): 112628 (WebCore::HTMLTreeBuilder::ElementStack::remove): 112629 (WebCore::HTMLTreeBuilder::currentElement): 112630 112631 2010-06-26 Brady Eidson <beidson (a] apple.com> 112632 112633 Reviewed by Darin Adler. 112634 112635 beforeProcess event needs to fire before inline scripts/stylesheets take effect 112636 <rdar://problem/8084335> and https://bugs.webkit.org/show_bug.cgi?id=40484 112637 112638 This patch adds the Event, the onBeforeProcess attribute, and hooks the attribute up in a few places. 112639 Besides that, no change in behavior. 112640 112641 Layout tests will come with the actual implementations as a followup to this patch. 112642 112643 Project file nonsense: 112644 * DerivedSources.make: 112645 * GNUmakefile.am: 112646 * WebCore.gypi: 112647 * WebCore.pri: 112648 * WebCore.pro: 112649 * WebCore.vcproj/WebCore.vcproj: 112650 * WebCore.xcodeproj/project.pbxproj: 112651 112652 Scaffolding for the event itself: 112653 * dom/BeforeProcessEvent.cpp: Added. 112654 (WebCore::BeforeProcessEvent::text): 112655 (WebCore::BeforeProcessEvent::setText): 112656 * dom/BeforeProcessEvent.h: Added. 112657 (WebCore::BeforeProcessEvent::create): 112658 (WebCore::BeforeProcessEvent::initBeforeProcessEvent): 112659 (WebCore::BeforeProcessEvent::BeforeProcessEvent): 112660 * dom/BeforeProcessEvent.idl: Added. 112661 112662 * dom/EventNames.h: 112663 112664 Respect the onBeforeProcess attribute: 112665 * dom/Document.cpp: 112666 (WebCore::Document::addListenerTypeIfNeeded): 112667 * dom/Document.h: 112668 (WebCore::Document::): 112669 112670 * html/HTMLAttributeNames.in: 112671 * html/HTMLScriptElement.cpp: 112672 (WebCore::HTMLScriptElement::parseMappedAttribute): 112673 * html/HTMLStyleElement.cpp: 112674 (WebCore::HTMLStyleElement::parseMappedAttribute): 112675 112676 2010-06-26 Darin Adler <darin (a] apple.com> 112677 112678 Try to fix Chromium build by adding back function used only by Chromium WebKit. 112679 112680 * html/HTMLInputElement.cpp: 112681 (WebCore::HTMLInputElement::defaultChecked): Added back. 112682 * html/HTMLInputElement.h: Added defaultChecked function. 112683 112684 * html/HTMLMetaElement.cpp: 112685 (WebCore::HTMLMetaElement::httpEquiv): Added back. 112686 * html/HTMLMetaElement.h: Added httpEquiv function. 112687 112688 * html/HTMLOptionElement.cpp: 112689 (WebCore::HTMLOptionElement::defaultSelected): Added back. 112690 * html/HTMLOptionElement.h: Added defaultSelected function. 112691 112692 * rendering/style/StyleRareNonInheritedData.h: Fixed incorrect struct vs. class 112693 here as seen in warnings on Chromium Windows bot. 112694 112695 2010-06-26 Darin Adler <darin (a] apple.com> 112696 112697 Try to fix Windows build by adding back function used only by Windows WebKit. 112698 112699 * html/HTMLOptionElement.cpp: 112700 (WebCore::HTMLOptionElement::label): Added back. 112701 * html/HTMLOptionElement.h: Added label function. 112702 112703 2010-06-26 Darin Adler <darin (a] apple.com> 112704 112705 Try to fix Qt build by adding back function used only by Qt WebKit. 112706 112707 * html/HTMLMetaElement.cpp: 112708 (WebCore::HTMLMetaElement::content): Added back. 112709 * html/HTMLMetaElement.h: Added content function. 112710 112711 2010-06-26 Darin Adler <darin (a] apple.com> 112712 112713 * html/HTMLFormElement.h: Removed stray character that got in here before landing. 112714 112715 2010-06-26 Darin Adler <darin (a] apple.com> 112716 112717 Reviewed by Sam Weinig. 112718 112719 Add more use of reflection, remove unused functions 112720 https://bugs.webkit.org/show_bug.cgi?id=41255 112721 112722 Also noticed that HTMLDirectoryElement was missing its create function 112723 and added that so the element will get the correct class. 112724 112725 * html/HTMLBaseFontElement.idl: Use reflection for the size attribute 112726 in the Objective-C code path too. 112727 112728 * html/HTMLSelectElement.idl: Use reflection for disabled and autofocus 112729 attributes. Also removed spaces and indenting to match other IDL files. 112730 112731 * html/HTMLStyleElement.idl: Use reflection for disabled attribute. 112732 112733 * html/HTMLTableCellElement.idl: Use reflection for noWrap attribute. 112734 112735 * html/HTMLTextAreaElement.idl: Use reflection for disabled, autofocus, 112736 readOnly, and required attributes. 112737 112738 * html/HTMLUListElement.idl: Use reflection for compact attribute. 112739 112740 * html/HTMLDirectoryElement.cpp: 112741 (WebCore::HTMLDirectoryElement::HTMLDirectoryElement): Made inline. 112742 (WebCore::HTMLDirectoryElement::create): Added. 112743 * html/HTMLDirectoryElement.h: 112744 Added create, made constructor private, removed unused functions. 112745 112746 * html/HTMLStyleElement.cpp: 112747 (WebCore::HTMLStyleElement::parseMappedAttribute): Removed code to 112748 set unused m_media data member. 112749 * html/HTMLStyleElement.h: 112750 Removed unused functions and m_media data member. Also made some 112751 functions private. 112752 112753 * html/HTMLAppletElement.cpp: 112754 * html/HTMLAppletElement.h: 112755 * html/HTMLAreaElement.cpp: 112756 * html/HTMLAreaElement.h: 112757 * html/HTMLBaseFontElement.cpp: 112758 * html/HTMLBaseFontElement.h: 112759 * html/HTMLButtonElement.cpp: 112760 * html/HTMLButtonElement.h: 112761 * html/HTMLDListElement.cpp: 112762 * html/HTMLDListElement.h: 112763 * html/HTMLDivElement.cpp: 112764 * html/HTMLDivElement.h: 112765 * html/HTMLFontElement.cpp: 112766 * html/HTMLFontElement.h: 112767 * html/HTMLFormControlElement.cpp: 112768 * html/HTMLFormControlElement.h: 112769 * html/HTMLFormElement.cpp: 112770 * html/HTMLFormElement.h: 112771 * html/HTMLFrameElement.cpp: Also removed an incorrect FIXME comment 112772 here after I did a little research to disprove it. 112773 * html/HTMLFrameElement.h: 112774 * html/HTMLFrameSetElement.cpp: 112775 * html/HTMLFrameSetElement.h: 112776 * html/HTMLHRElement.cpp: 112777 * html/HTMLHRElement.h: 112778 * html/HTMLHeadElement.cpp: 112779 * html/HTMLHeadElement.h: 112780 * html/HTMLHeadingElement.cpp: 112781 * html/HTMLHeadingElement.h: 112782 * html/HTMLHtmlElement.cpp: 112783 * html/HTMLHtmlElement.h: 112784 * html/HTMLImageElement.cpp: 112785 * html/HTMLImageElement.h: 112786 * html/HTMLInputElement.cpp: 112787 * html/HTMLInputElement.h: 112788 * html/HTMLIsIndexElement.cpp: 112789 * html/HTMLIsIndexElement.h: 112790 * html/HTMLLIElement.cpp: 112791 * html/HTMLLIElement.h: 112792 * html/HTMLLabelElement.cpp: 112793 * html/HTMLLabelElement.h: 112794 * html/HTMLLegendElement.cpp: 112795 * html/HTMLLegendElement.h: 112796 * html/HTMLLinkElement.cpp: 112797 * html/HTMLLinkElement.h: 112798 * html/HTMLMapElement.cpp: 112799 * html/HTMLMapElement.h: 112800 * html/HTMLMenuElement.cpp: 112801 * html/HTMLMenuElement.h: 112802 * html/HTMLMetaElement.cpp: 112803 * html/HTMLMetaElement.h: 112804 * html/HTMLModElement.cpp: 112805 * html/HTMLModElement.h: 112806 * html/HTMLOListElement.cpp: 112807 * html/HTMLOListElement.h: 112808 * html/HTMLObjectElement.cpp: 112809 * html/HTMLObjectElement.h: 112810 * html/HTMLOptGroupElement.cpp: 112811 * html/HTMLOptGroupElement.h: 112812 * html/HTMLOptionElement.cpp: 112813 * html/HTMLOptionElement.h: 112814 * html/HTMLParagraphElement.cpp: 112815 * html/HTMLParagraphElement.h: 112816 * html/HTMLParamElement.cpp: 112817 * html/HTMLParamElement.h: 112818 * html/HTMLPlugInElement.cpp: 112819 * html/HTMLPlugInElement.h: 112820 * html/HTMLPreElement.cpp: 112821 * html/HTMLPreElement.h: 112822 * html/HTMLQuoteElement.cpp: 112823 * html/HTMLQuoteElement.h: 112824 * html/HTMLScriptElement.cpp: 112825 * html/HTMLScriptElement.h: 112826 * html/HTMLTableCaptionElement.cpp: 112827 * html/HTMLTableCaptionElement.h: 112828 * html/HTMLTableCellElement.cpp: 112829 * html/HTMLTableCellElement.h: 112830 * html/HTMLTableColElement.cpp: 112831 * html/HTMLTableColElement.h: 112832 * html/HTMLTableElement.cpp: 112833 * html/HTMLTableElement.h: 112834 * html/HTMLTableRowElement.cpp: 112835 * html/HTMLTableRowElement.h: 112836 * html/HTMLTextAreaElement.cpp: 112837 * html/HTMLTextAreaElement.h: 112838 * html/HTMLUListElement.cpp: 112839 * html/HTMLUListElement.h: 112840 * html/HTMLVideoElement.cpp: 112841 * html/HTMLVideoElement.h: 112842 Removed unused functions. 112843 112844 2010-06-26 Tony Gentilcore <tonyg (a] chromium.org> 112845 112846 Reviewed by Adam Barth. 112847 112848 Exclude line numbers for sources which are not from the network. 112849 https://bugs.webkit.org/show_bug.cgi?id=41060 112850 112851 * html/HTMLDocumentParser.cpp: 112852 (WebCore::HTMLDocumentParser::write): 112853 112854 2010-06-25 Antonio Gomes <tonikitoo (a] webkit.org> 112855 112856 Unreviewed complementary fix for r61818. It added StaticHashSetListNode.cpp|h to the system, 112857 but did not added it to chromium build system. 112858 112859 * WebCore.gypi: 112860 112861 2010-06-26 Pavel Feldman <pfeldman (a] chromium.org> 112862 112863 Reviewed by Yury Semikhatsky. 112864 112865 Web Inspector: ScripsPanel.prototype.editScriptSource uses old addBreakpoint signature. 112866 112867 https://bugs.webkit.org/show_bug.cgi?id=41247 112868 112869 * inspector/front-end/BreakpointManager.js: 112870 (WebInspector.BreakpointManager.prototype.removeBreakpoint): 112871 (WebInspector.Breakpoint.prototype.set enabled): 112872 (WebInspector.Breakpoint.prototype.set condition): 112873 * inspector/front-end/Object.js: 112874 (WebInspector.Object.prototype.addEventListener): 112875 (WebInspector.Object.prototype.removeEventListener): 112876 (WebInspector.Object.prototype.removeAllListeners): 112877 * inspector/front-end/ScriptsPanel.js: 112878 (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback): 112879 (WebInspector.ScriptsPanel.prototype.editScriptSource): 112880 112881 2010-06-26 Tony Gentilcore <tonyg (a] chromium.org> 112882 112883 Reviewed by Dimitri Glazkov. 112884 112885 Add a guarded window.performance.timing binding which is disabled by default. 112886 https://bugs.webkit.org/show_bug.cgi?id=38924 112887 112888 This is where Web Timing support will be implemented. Web Timing is a 112889 draft spec for exposing load times to web pages. It will be enabled 112890 once the spec and implementaiton are solidified. See: 112891 http://dev.w3.org/2006/webapi/WebTiming/ 112892 112893 No new tests because guarded behind a #DEFINE. Will add tests as 112894 functionality is landed. 112895 112896 * Android.mk: 112897 * CMakeLists.txt: 112898 * Configurations/FeatureDefines.xcconfig: 112899 * DerivedSources.cpp: 112900 * DerivedSources.make: 112901 * GNUmakefile.am: 112902 * WebCore.gypi: 112903 * WebCore.pri: 112904 * WebCore.pro: 112905 * WebCore.vcproj/WebCore.vcproj: 112906 * WebCore.xcodeproj/project.pbxproj: 112907 * page/DOMWindow.cpp: 112908 (WebCore::DOMWindow::clear): 112909 (WebCore::DOMWindow::performance): 112910 * page/DOMWindow.h: 112911 (WebCore::DOMWindow::optionalPerformance): 112912 * page/DOMWindow.idl: 112913 * page/NavigationTiming.cpp: Added. 112914 (WebCore::NavigationTiming::NavigationTiming): 112915 (WebCore::NavigationTiming::frame): 112916 (WebCore::NavigationTiming::disconnectFrame): 112917 (WebCore::NavigationTiming::navigationStart): 112918 * page/NavigationTiming.h: Added. 112919 (WebCore::NavigationTiming::create): 112920 * page/NavigationTiming.idl: Added. 112921 * page/Performance.cpp: Added. 112922 (WebCore::Performance::Performance): 112923 (WebCore::Performance::frame): 112924 (WebCore::Performance::disconnectFrame): 112925 (WebCore::Performance::timing): 112926 * page/Performance.h: Added. 112927 (WebCore::Performance::create): 112928 * page/Performance.idl: Added. 112929 112930 2010-06-25 Zhenyao Mo <zmo (a] google.com> 112931 112932 Reviewed by Dimitri Glazkov. 112933 112934 activeTexture wrongly generates error with legal input. 112935 https://bugs.webkit.org/show_bug.cgi?id=41227 112936 112937 Test: fast/canvas/webgl/texture-active-bind.html 112938 112939 * html/canvas/WebGLRenderingContext.cpp: 112940 (WebCore::WebGLRenderingContext::activeTexture): Fix the upper limit test for test units. 112941 112942 2010-06-25 Johnny Ding <jnd (a] chromium.org> 112943 112944 Reviewed by Adam Barth. 112945 112946 https://bugs.webkit.org/show_bug.cgi?id=41061 112947 Make sure Chromium's ScriptController::processingUserGesture follows the JSC's behavior. 112948 Set right value in UserGestureIndicator when handling events in PopupMenuList in chromium. 112949 112950 Test: fast/events/popup-when-select-change.html 112951 112952 * bindings/v8/ScriptController.cpp: 112953 (WebCore::ScriptController::processingUserGesture): 112954 * platform/chromium/PopupMenuChromium.cpp: 112955 (WebCore::PopupContainer::handleMouseDownEvent): 112956 (WebCore::PopupContainer::handleMouseMoveEvent): 112957 (WebCore::PopupContainer::handleMouseReleaseEvent): 112958 (WebCore::PopupContainer::handleWheelEvent): 112959 (WebCore::PopupContainer::handleKeyEvent): 112960 112961 2010-06-25 Tony Gentilcore <tonyg (a] chromium.org> 112962 112963 Reviewed by Eric Seidel. 112964 112965 Make PendingScript hold a CachedResourceClient open for its lifetime 112966 https://bugs.webkit.org/show_bug.cgi?id=40968 112967 112968 This replaces the mechanism introduced in r61374 with a simpler 112969 appraoch for preventing unexpected purges: always keep a client open. 112970 This approach will allow deferred scripts to add a client after 112971 the resource may have already been loaded without having to worry about 112972 the buffer being purged in the meantime. 112973 112974 No new tests because making a CachedResource purse itself is not 112975 testable from a LayoutTest. 112976 112977 * html/HTMLDocumentParser.cpp: 112978 (WebCore::HTMLDocumentParser::watchForLoad): 112979 (WebCore::HTMLDocumentParser::notifyFinished): 112980 * html/HTMLScriptRunner.cpp: 112981 (WebCore::HTMLScriptRunner::~HTMLScriptRunner): 112982 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 112983 (WebCore::HTMLScriptRunner::isPendingScriptReady): 112984 (WebCore::HTMLScriptRunner::executePendingScript): 112985 (WebCore::HTMLScriptRunner::watchForLoad): 112986 (WebCore::HTMLScriptRunner::stopWatchingForLoad): 112987 (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad): 112988 (WebCore::HTMLScriptRunner::requestScript): 112989 (WebCore::HTMLScriptRunner::PendingScript::~PendingScript): 112990 (WebCore::HTMLScriptRunner::PendingScript::releaseElementAndClear): 112991 (WebCore::HTMLScriptRunner::PendingScript::setCachedScript): 112992 (WebCore::HTMLScriptRunner::PendingScript::cachedScript): 112993 * html/HTMLScriptRunner.h: 112994 (WebCore::HTMLScriptRunner::PendingScript::PendingScript): 112995 (WebCore::HTMLScriptRunner::PendingScript::watchingForLoad): 112996 (WebCore::HTMLScriptRunner::PendingScript::setWatchingForLoad): 112997 (WebCore::HTMLScriptRunner::PendingScript::notifyFinished): 112998 * html/HTMLScriptRunnerHost.h: 112999 113000 2010-06-25 Zhenyao Mo <zmo (a] google.com> 113001 113002 Reviewed by Dimitri Glazkov. 113003 113004 getUniform will not work for fetching uniform array elements 113005 https://bugs.webkit.org/show_bug.cgi?id=34508 113006 113007 Test: fast/canvas/webgl/gl-uniform-arrays.html 113008 113009 * html/canvas/WebGLRenderingContext.cpp: 113010 (WebCore::WebGLRenderingContext::attachShader): Generate correct errors. 113011 (WebCore::WebGLRenderingContext::getUniform): Dealing with array elements. 113012 (WebCore::WebGLRenderingContext::useProgram): Deal with program==null. 113013 (WebCore::WebGLRenderingContext::validateProgram): Generate correct errors. 113014 * platform/graphics/mac/GraphicsContext3DMac.mm: 113015 (WebCore::GraphicsContext3D::useProgram): Deal with program==null. 113016 113017 2010-06-25 Zhenyao Mo <zmo (a] google.com> 113018 113019 Reviewed by Dimitri Glazkov. 113020 113021 Bring set/get state functions to GLES2 conformance 113022 https://bugs.webkit.org/show_bug.cgi?id=41095 113023 113024 Tests: fast/canvas/webgl/gl-enable-enum-test.html 113025 fast/canvas/webgl/gl-enum-tests.html 113026 113027 * html/canvas/WebGLRenderingContext.cpp: Check input parameters according to GLES2 spec. 113028 (WebCore::WebGLRenderingContext::blendEquation): 113029 (WebCore::WebGLRenderingContext::blendEquationSeparate): 113030 (WebCore::WebGLRenderingContext::disable): 113031 (WebCore::WebGLRenderingContext::enable): 113032 (WebCore::WebGLRenderingContext::hint): 113033 (WebCore::WebGLRenderingContext::isEnabled): 113034 (WebCore::WebGLRenderingContext::pixelStorei): 113035 (WebCore::WebGLRenderingContext::validateBlendEquation): 113036 (WebCore::WebGLRenderingContext::validateCapability): 113037 * html/canvas/WebGLRenderingContext.h: Add helper function declaration. 113038 113039 2010-06-25 Sterling Swigart <sswigart (a] google.com> 113040 113041 Reviewed by David Levin. 113042 113043 Callback code generation fixed so that now string parameters are converted to JSString 113044 using the jsString method instead of the toJS method which would not compile. 113045 https://bugs.webkit.org/show_bug.cgi?id=41119 113046 113047 * bindings/scripts/CodeGeneratorJS.pm: Now generates jsString for String parameters in callbacks. 113048 * bindings/scripts/test/JS/JSTestCallback.cpp: Fixed test for above. 113049 (WebCore::JSTestCallback::callbackWithClass2Param): Ditto. 113050 113051 2010-06-25 Zhenyao Mo <zmo (a] google.com> 113052 113053 Reviewed by Dimitri Glazkov. 113054 113055 A buffer should be bound to one target in its lifetime 113056 https://bugs.webkit.org/show_bug.cgi?id=41108 113057 113058 Test: fast/canvas/webgl/buffer-bind-test.html 113059 113060 * html/canvas/WebGLBuffer.cpp: 113061 (WebCore::WebGLBuffer::WebGLBuffer): Init target to 0. 113062 (WebCore::WebGLBuffer::associateBufferData): Remove target parameter, use one byteLength member. 113063 (WebCore::WebGLBuffer::associateBufferSubData): Ditto. 113064 (WebCore::WebGLBuffer::byteLength): Ditto. 113065 (WebCore::WebGLBuffer::setTarget): Set target. 113066 * html/canvas/WebGLBuffer.h: Cache target in the WebGLBuffer object, use one byteLength member. 113067 (WebCore::WebGLBuffer::getTarget): 113068 * html/canvas/WebGLRenderingContext.cpp: 113069 (WebCore::WebGLRenderingContext::bindBuffer): Check if a buffer is bound to another target; set buffer object internal target. 113070 (WebCore::WebGLRenderingContext::bufferData): Remove target parameter and use the WebGLBuffer cached target instead. 113071 (WebCore::WebGLRenderingContext::bufferSubData): Ditto. 113072 (WebCore::WebGLRenderingContext::validateElementArraySize): Ditto. 113073 (WebCore::WebGLRenderingContext::validateIndexArrayConservative): Ditto. 113074 (WebCore::WebGLRenderingContext::vertexAttribPointer): Ditto. 113075 113076 2010-06-25 Dean Jackson <dino (a] apple.com> 113077 113078 Reviewed by Simon Fraser. 113079 113080 https://bugs.webkit.org/show_bug.cgi?id=41188 113081 Animations should not require 0% and 100% keyframes 113082 113083 When we are generating the animation lists in CSSStyleSelector, 113084 rather than bail if we notice that "from" or "to" are missing, we 113085 now generate synthetic keyframes for those cases. 113086 113087 Tests: animations/missing-from-to-transforms.html 113088 animations/missing-from-to.html 113089 WebCore/manual-tests/animation-with-transition.html 113090 113091 * css/CSSStyleSelector.cpp: 113092 (WebCore::CSSStyleSelector::styleForKeyframe): 113093 Moved individual keyframe generation into a new function. 113094 (WebCore::CSSStyleSelector::keyframeStylesForAnimation): 113095 Call the new function above for regular keyframes, and 113096 also check for missing keyframes and generate them if 113097 necessary. 113098 * css/CSSStyleSelector.h: 113099 113100 2010-06-25 Adam Barth <abarth (a] webkit.org> 113101 113102 Reviewed by Eric Seidel. 113103 113104 We should parse <html> 113105 https://bugs.webkit.org/show_bug.cgi?id=41239 113106 113107 This patch is hard to test, but I think this patch lets us parse a 113108 document consisting of only an <html> start tag. 113109 113110 * html/HTMLTreeBuilder.cpp: 113111 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 113112 (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML): 113113 (WebCore::HTMLTreeBuilder::insertHTMLStartTagInBody): 113114 (WebCore::HTMLTreeBuilder::processStartTag): 113115 (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode): 113116 * html/HTMLTreeBuilder.h: 113117 (WebCore::HTMLTreeBuilder::ElementStack::push): 113118 113119 2010-06-25 Dan Bernstein <mitz (a] apple.com> 113120 113121 Reviewed by Sam Weinig. 113122 113123 <rdar://problem/8000667> Certain text is repeated before and after a line break 113124 113125 Test: fast/text/bidi-explicit-embedding-past-end.html 113126 113127 * platform/text/BidiResolver.h: 113128 (WebCore::::createBidiRunsForLine): Committing explicit embedding past the end of the range 113129 creates BidiRuns up to the end of the range, so at that point, we can stop iterating. 113130 113131 2010-06-25 Eric Seidel <eric (a] webkit.org> 113132 113133 Reviewed by Adam Barth. 113134 113135 Move decoding into DocumentParser to further simplify RawDataDocumentParser and DocumentWriter 113136 https://bugs.webkit.org/show_bug.cgi?id=41202 113137 113138 Hit the Windoze with the compile bat. 113139 113140 * WebCore.vcproj/WebCore.vcproj: 113141 113142 2010-06-25 Adam Barth <abarth (a] webkit.org> 113143 113144 Reviewed by Eric Seidel. 113145 113146 HTMLTreeBuilder should branch first on token type and then on insertion mode 113147 https://bugs.webkit.org/show_bug.cgi?id=41232 113148 113149 This is different than how the spec is written, but it lets us remove a 113150 lot of redudancy in the algorithm. We might even want to pull some of 113151 the branches on token name outside the insertion mode branch, but I'll 113152 leave that for a future patch. 113153 113154 Although this looks like a big patch, it's mostly just a mechanical 113155 switch permutation. 113156 113157 * html/HTMLTreeBuilder.cpp: 113158 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 113159 (WebCore::HTMLTreeBuilder::processToken): 113160 (WebCore::HTMLTreeBuilder::processDoctypeToken): 113161 (WebCore::HTMLTreeBuilder::processStartTag): 113162 (WebCore::HTMLTreeBuilder::processEndTag): 113163 (WebCore::HTMLTreeBuilder::processComment): 113164 (WebCore::HTMLTreeBuilder::processCharacter): 113165 (WebCore::HTMLTreeBuilder::processEndOfFile): 113166 (WebCore::HTMLTreeBuilder::processDefaultForInitialMode): 113167 (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode): 113168 (WebCore::HTMLTreeBuilder::processDefaultForBeforeHeadMode): 113169 (WebCore::HTMLTreeBuilder::processDefaultForInHeadMode): 113170 (WebCore::HTMLTreeBuilder::processDefaultForInHeadNoscriptMode): 113171 (WebCore::HTMLTreeBuilder::processDefaultForAfterHeadMode): 113172 * html/HTMLTreeBuilder.h: 113173 113174 2010-06-25 Adam Barth <abarth (a] webkit.org> 113175 113176 Reviewed by Darin Adler. 113177 113178 Tree builder doesn't need to return a Node 113179 https://bugs.webkit.org/show_bug.cgi?id=41225 113180 113181 The old tree builder returned the newly inserted Node, but the new tree 113182 builder doesn't need to do that as far as I can tell. Removing the 113183 return value cuts down on a bunch of accounting. 113184 113185 * html/HTMLTreeBuilder.cpp: 113186 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 113187 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 113188 (WebCore::HTMLTreeBuilder::processToken): 113189 (WebCore::HTMLTreeBuilder::insertDoctype): 113190 (WebCore::HTMLTreeBuilder::insertComment): 113191 (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement): 113192 (WebCore::HTMLTreeBuilder::insertGenericRawTextElement): 113193 (WebCore::HTMLTreeBuilder::insertScriptElement): 113194 * html/HTMLTreeBuilder.h: 113195 113196 2010-06-25 Zhenyao Mo <zmo (a] google.com> 113197 113198 Reviewed by Dimitri Glazkov. 113199 113200 getParameter(COLOR_WRITEMASK) needs to return Array 113201 https://bugs.webkit.org/show_bug.cgi?id=40437 113202 113203 * bindings/js/JSWebGLRenderingContextCustom.cpp: Handling bool array. 113204 (WebCore::toJS): 113205 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: Handling bool array. 113206 (WebCore::toV8Object): 113207 * html/canvas/WebGLGetInfo.cpp: Handling bool array. 113208 (WebCore::WebGLGetInfo::WebGLGetInfo): 113209 (WebCore::WebGLGetInfo::getBoolArray): 113210 * html/canvas/WebGLGetInfo.h: Handling bool array. 113211 (WebCore::WebGLGetInfo::): 113212 * html/canvas/WebGLRenderingContext.cpp: Handling bool array. 113213 (WebCore::WebGLRenderingContext::getParameter): 113214 (WebCore::WebGLRenderingContext::getBooleanArrayParameter): 113215 * html/canvas/WebGLRenderingContext.h: Handling bool array. 113216 113217 2010-06-25 Evan Stade <estade (a] chromium.org> 113218 113219 Reviewed by Darin Fisher. 113220 113221 [chromium linux] Improve look of scrollbars 113222 https://bugs.webkit.org/show_bug.cgi?id=35775 113223 113224 This will affect layout pixel tests, which will need to be rebaselined. 113225 113226 * platform/Scrollbar.cpp: need the buttons to be invalidated when the 113227 thumb moves as they paint differently if the thumb is at the top or 113228 bottom 113229 (WebCore::Scrollbar::updateThumbPosition): 113230 (WebCore::Scrollbar::updateThumbProportion): 113231 * platform/chromium/ScrollbarThemeChromium.cpp: 113232 (WebCore::ScrollbarThemeChromium::trackRect): share code between 113233 linux/windows 113234 * platform/chromium/ScrollbarThemeChromiumLinux.cpp: 113235 (WebCore::ScrollbarThemeChromiumLinux::scrollbarThickness): 113236 (WebCore::outlineColor): up the contrast 113237 (WebCore::ScrollbarThemeChromiumLinux::paintButton): add custom button 113238 drawing implementation 113239 (WebCore::ScrollbarThemeChromiumLinux::buttonSize): add buttons 113240 * platform/chromium/ScrollbarThemeChromiumWin.cpp: share code between 113241 linux/windows 113242 * rendering/RenderThemeChromiumLinux.cpp: improve stock colors to get 113243 better contrast and integration with stock chrome theme 113244 113245 2010-06-25 Eric Seidel <eric (a] webkit.org> 113246 113247 Reviewed by Adam Barth. 113248 113249 Move decoding into DocumentParser to further simplify RawDataDocumentParser and DocumentWriter 113250 https://bugs.webkit.org/show_bug.cgi?id=41202 113251 113252 The silly thing about this patch is that none of the 113253 RawDataDocumentParser subclasses actually use any of the 113254 data passed to them via appendBytes. 113255 113256 This makes the relationship between DocumentWriter and 113257 DocumentParser slightly more confusing, however I think this 113258 DocumentParser API is slightly nicer. 113259 113260 Next step is to split DecodedDataDocumentParser out from 113261 DocumentParser, and then the base DocumentParser won't know 113262 anything about decoding or SegmentedString. 113263 113264 No functional change, thus no tests. 113265 113266 * WebCore.xcodeproj/project.pbxproj: 113267 * dom/DocumentParser.h: 113268 * dom/RawDataDocumentParser.h: 113269 * loader/DocumentWriter.cpp: 113270 (WebCore::DocumentWriter::replaceDocument): 113271 (WebCore::DocumentWriter::createDecoderIfNeeded): 113272 (WebCore::DocumentWriter::reportDataRecieved): 113273 (WebCore::DocumentWriter::addData): 113274 * loader/DocumentWriter.h: 113275 * loader/ImageDocument.cpp: 113276 (WebCore::ImageDocumentParser::appendBytes): 113277 * loader/MediaDocument.cpp: 113278 (WebCore::MediaDocumentParser::appendBytes): 113279 * loader/PluginDocument.cpp: 113280 (WebCore::PluginDocumentParser::appendBytes): 113281 * loader/SinkDocument.cpp: 113282 (WebCore::SinkDocumentParser::SinkDocumentParser): 113283 (WebCore::SinkDocumentParser::appendBytes): 113284 (WebCore::SinkDocument::createParser): 113285 113286 2010-06-25 Eric Seidel <eric (a] webkit.org> 113287 113288 Reviewed by Adam Barth. 113289 113290 Split DocumentParser::write into separate append and insert calls 113291 https://bugs.webkit.org/show_bug.cgi?id=41197 113292 113293 Unfortunately this is still somewhat confusing as 113294 "insert" means "insert this data at the current 113295 insertion point and run the parser synchronously 113296 unless we're in a nested write call" and "append" 113297 means "append this data to the end and run the 113298 parser if not in a nested call or until possibly yielding". 113299 113300 This at least makes clearer which document parsers implement 113301 which behavior, and paves the way for moving the decoding 113302 logic into DocumentParser from DocumentWriter. 113303 113304 No functional changes, thus no tests. 113305 113306 * dom/Document.cpp: 113307 (WebCore::Document::write): 113308 * dom/DocumentParser.h: 113309 * dom/RawDataDocumentParser.h: 113310 (WebCore::RawDataDocumentParser::insert): 113311 (WebCore::RawDataDocumentParser::append): 113312 * dom/XMLDocumentParser.cpp: 113313 (WebCore::XMLDocumentParser::insert): 113314 (WebCore::XMLDocumentParser::append): 113315 * dom/XMLDocumentParser.h: 113316 * dom/XMLDocumentParserLibxml2.cpp: 113317 (WebCore::XMLDocumentParser::resumeParsing): 113318 * html/HTMLDocumentParser.cpp: 113319 (WebCore::HTMLDocumentParser::insert): 113320 (WebCore::HTMLDocumentParser::append): 113321 (WebCore::HTMLDocumentParser::parseDocumentFragment): 113322 * html/HTMLDocumentParser.h: 113323 * html/LegacyHTMLDocumentParser.cpp: 113324 (WebCore::LegacyHTMLDocumentParser::insert): 113325 (WebCore::LegacyHTMLDocumentParser::append): 113326 * html/LegacyHTMLDocumentParser.h: 113327 * loader/DocumentWriter.cpp: 113328 (WebCore::DocumentWriter::replaceDocument): 113329 (WebCore::DocumentWriter::addData): 113330 * loader/FTPDirectoryDocument.cpp: 113331 (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser): 113332 (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): 113333 (WebCore::FTPDirectoryDocumentParser::append): 113334 * loader/TextDocument.cpp: 113335 (WebCore::TextDocumentParser::insert): 113336 (WebCore::TextDocumentParser::append): 113337 (WebCore::TextDocumentParser::finish): 113338 113339 2010-06-25 Daniel Cheng <dcheng (a] chromium.org> 113340 113341 Reviewed by Darin Fisher. 113342 113343 [chromium] Add new stubs for querying platform drag-and-drop and copy-and-paste data. 113344 113345 This change adds new stubs for querying for data in a clipboard or drag operation. This is 113346 so adding support for more data types in clipboard/drag operations doesn't become 113347 increasingly expensive, since we currently copy all the drag data we need every time a new 113348 web drop target is entered. It also adds a new mechanism to write back to the system 113349 clipboard that isn't tied to one data type. 113350 113351 https://bugs.webkit.org/show_bug.cgi?id=40540 113352 113353 No new tests since we're just adding new ChromiumBridge APIs. When we switch to it, it will 113354 be covered by the existing tests. 113355 113356 * platform/chromium/ChromiumBridge.h: 113357 * platform/chromium/PasteboardPrivate.h: 113358 (WebCore::PasteboardPrivate::): 113359 113360 2010-06-25 Mario Sanchez Prada <msanchez (a] igalia.com> 113361 113362 Reviewed by Xan Lopez. 113363 113364 [Gtk] Implement atk_table_get_column_header 113365 https://bugs.webkit.org/show_bug.cgi?id=30896 113366 113367 Implemented get_column_header and modified get_row_header 113368 accordingly to keep them both coherent among themselves. 113369 Based on a previous patch by Joanmarie Diggs. 113370 113371 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 113372 (webkit_accessible_table_get_column_header): 113373 (webkit_accessible_table_get_row_header): 113374 113375 2010-06-29 Martin Robinson <mrobinson (a] igalia.com> 113376 113377 Reviewed by Xan Lopez. 113378 113379 [GTK] Pasteboard code does not take into account the nil character when getting and setting markup/netscape-url data 113380 https://bugs.webkit.org/show_bug.cgi?id=41221 113381 113382 Take into account null-terminator when getting and setting markup and 113383 Netscape URL pasteboard types. This means that if the selection data 113384 contains the null terminator, it won't be included in the final String. 113385 When setting the pasteboard data the null terminator is now included to 113386 match the behavior of other applications. 113387 113388 * platform/gtk/PasteboardHelper.cpp: 113389 (WebCore::PasteboardHelper::getClipboardContents): 113390 Create the markup string after using g_strndup to protect against non-null-terminated 113391 strings. Use String::fromUTF8 here to ensure that the string is not longer than the 113392 first null-terminator. Also fix a small indentation issue. 113393 (WebCore::PasteboardHelper::fillSelectionData): 113394 Always include the null-terminator when setting pasteboard data manually. This matches 113395 the behavior of other browser applications. 113396 113397 2010-06-25 Sam Magnuson <smagnuson (a] netflix.com> 113398 113399 Reviewed by Kenneth Rohde Christiansen. 113400 113401 [Qt] When any geometry change happens to a node it will resize the 113402 backing cache 113403 https://bugs.webkit.org/show_bug.cgi?id=40378 113404 113405 Continue to grow the cache, but never toss it. When the pixmap 113406 cache gets too big it will be lost and created at the right size 113407 next time. 113408 113409 No new tests: this is an optimization. 113410 113411 * platform/graphics/qt/GraphicsLayerQt.cpp: 113412 (WebCore::GraphicsLayerQtImpl::recache): 113413 (WebCore::GraphicsLayerQtImpl::paint): 113414 (WebCore::GraphicsLayerQtImpl::flushChanges): 113415 113416 2010-06-25 Andreas Kling <andreas.kling (a] nokia.com> 113417 113418 Reviewed by Darin Adler. 113419 113420 https://bugs.webkit.org/show_bug.cgi?id=41019 113421 Canvas: Remember verified clean origins for drawImage() 113422 113423 Made CanvasRenderingContext2D cache the KURLs of clean origins 113424 for fast repeated lookup. 113425 113426 * html/canvas/CanvasRenderingContext2D.cpp: 113427 (WebCore::CanvasRenderingContext2D::checkOrigin): 113428 * html/canvas/CanvasRenderingContext2D.h: 113429 113430 2010-06-25 Robert Hogan <robert (a] webkit.org> 113431 113432 Reviewed by Kenneth Rohde Christiansen. 113433 113434 [Qt] HTTP 307 after a 303 after a POST re-sends POST data from the original request 113435 113436 https://bugs.webkit.org/show_bug.cgi?id=35301 113437 113438 Qt needs to use ResourceRequest::request()->httpMethod()) in order to determine 113439 the appropriate method for a 307 redirect request. 113440 113441 When deciding if it needs to override a POST method with a GET method during a 113442 redirect chain, QNetworkReplyHandler needs to check the HTTP method stored 113443 in ResourceRequest::request()->httpMethod(). This will always contain the 113444 original request method in a redirect chain and, more importantly, is the 113445 method that will be used for the request created from the redirect 113446 if it is not overridden. 113447 113448 * platform/network/qt/QNetworkReplyHandler.cpp: 113449 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 113450 113451 2010-06-25 Dan Bernstein <mitz (a] apple.com> 113452 113453 Reviewed by Anders Carlsson. 113454 113455 Removed a one-line method that only had one internal caller. 113456 113457 * rendering/RenderBlock.h: Removed bidiReorderLine() 113458 * rendering/RenderBlockLineLayout.cpp: 113459 (WebCore::RenderBlock::layoutInlineChildren): Moved the implementation of 113460 bidiReorderLine() inline here. 113461 113462 2010-06-25 Nate Chapin <japhet (a] chromium.org> 113463 113464 Reviewed by Adam Barth. 113465 113466 Take a KURL parameter in Document's constructor. 113467 This will remove the one case where Document::url() 113468 and FrameLoader::url() are not equal, allowing us to 113469 remove FrameLoader::url(). 113470 113471 https://bugs.webkit.org/show_bug.cgi?id=41166 113472 113473 Refactor only, no new tests. 113474 113475 * dom/DOMImplementation.cpp: 113476 (WebCore::DOMImplementation::createDocument): Take a KURL and pass it through to Document. 113477 (WebCore::DOMImplementation::createHTMLDocument): 113478 * dom/DOMImplementation.h: 113479 * dom/Document.cpp: 113480 (WebCore::Document::Document): Call setURL() if a frame or a non-empty KURL is specified. 113481 (WebCore::Document::initSecurityContext): m_url is now initialized, so use it instead 113482 of m_frame->loader()->url() for initializing the SecurityOrigin. 113483 * dom/Document.h: 113484 (WebCore::Document::create): 113485 (WebCore::Document::createXHTML): 113486 * html/HTMLDocument.cpp: 113487 * html/HTMLDocument.h: Add KURL parameter to create() and constructor. 113488 * html/HTMLViewSourceDocument.cpp: 113489 * html/HTMLViewSourceDocument.h: Add KURL parameter to create() and constructor. 113490 * loader/CachedFont.cpp: 113491 (WebCore::CachedFont::ensureSVGFontData): 113492 * loader/DocumentWriter.cpp: 113493 (WebCore::DocumentWriter::createDocument): Take a KURL and pass it through to Document. 113494 (WebCore::DocumentWriter::begin): Pass existing url parameter to constructors, and remove 113495 redundant Document::setURL() call. 113496 * loader/DocumentWriter.h: 113497 * loader/FTPDirectoryDocument.cpp: 113498 * loader/FTPDirectoryDocument.h: Add KURL parameter to create() and constructor. 113499 * loader/ImageDocument.cpp: 113500 * loader/ImageDocument.h: Add KURL parameter to create() and constructor. 113501 * loader/MediaDocument.cpp: 113502 * loader/MediaDocument.h: Add KURL parameter to create() and constructor. 113503 * loader/PlaceholderDocument.h: Add KURL parameter to create() and constructor. 113504 * loader/PluginDocument.cpp: 113505 * loader/PluginDocument.h: Add KURL parameter to create() and constructor. 113506 * loader/SinkDocument.cpp: 113507 * loader/SinkDocument.h: Add KURL parameter to create() and constructor. 113508 * loader/TextDocument.cpp: 113509 * loader/TextDocument.h: Add KURL parameter to create() and constructor. 113510 * svg/SVGDocument.cpp: 113511 * svg/SVGDocument.h: Add KURL parameter to create() and constructor. 113512 * xml/DOMParser.cpp: 113513 (WebCore::DOMParser::parseFromString): 113514 * xml/XMLHttpRequest.cpp: 113515 (WebCore::XMLHttpRequest::responseXML): 113516 * xml/XSLTProcessor.cpp: 113517 (WebCore::XSLTProcessor::createDocumentFromSource): 113518 113519 2010-06-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 113520 113521 Unreviewed, rolling out r61812. 113522 http://trac.webkit.org/changeset/61812 113523 https://bugs.webkit.org/show_bug.cgi?id=41216 113524 113525 breaks Chromium workers tests (Requested by mnaganov on 113526 #webkit). 113527 113528 * storage/AbstractDatabase.cpp: 113529 * storage/AbstractDatabase.h: 113530 * storage/Database.cpp: 113531 (WebCore::Database::databaseInfoTableName): 113532 (WebCore::guidMutex): 113533 (WebCore::guidToVersionMap): 113534 (WebCore::updateGuidVersionMap): 113535 (WebCore::guidToDatabaseMap): 113536 (WebCore::databaseVersionKey): 113537 (WebCore::DatabaseCreationCallbackTask::create): 113538 (WebCore::DatabaseCreationCallbackTask::performTask): 113539 (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask): 113540 (WebCore::Database::openDatabase): 113541 (WebCore::Database::Database): 113542 (WebCore::Database::openAndVerifyVersion): 113543 (WebCore::retrieveTextResultFromDatabase): 113544 (WebCore::Database::getVersionFromDatabase): 113545 (WebCore::setTextValueInDatabase): 113546 (WebCore::Database::setVersionInDatabase): 113547 (WebCore::Database::versionMatchesExpected): 113548 (WebCore::Database::close): 113549 (WebCore::Database::disableAuthorizer): 113550 (WebCore::Database::enableAuthorizer): 113551 (WebCore::Database::setAuthorizerReadOnly): 113552 (WebCore::Database::lastActionChangedDatabase): 113553 (WebCore::Database::lastActionWasInsert): 113554 (WebCore::Database::resetDeletes): 113555 (WebCore::Database::hadDeletes): 113556 (WebCore::guidForOriginAndName): 113557 (WebCore::Database::resetAuthorizer): 113558 (WebCore::Database::performOpenAndVerify): 113559 (WebCore::Database::performCreationCallback): 113560 (WebCore::Database::version): 113561 (WebCore::Database::setExpectedVersion): 113562 (WebCore::Database::stringIdentifier): 113563 (WebCore::Database::displayName): 113564 (WebCore::Database::estimatedSize): 113565 (WebCore::Database::fileName): 113566 * storage/Database.h: 113567 (WebCore::Database::scriptExecutionContext): 113568 (WebCore::Database::opened): 113569 (WebCore::Database::isNew): 113570 (WebCore::Database::databaseDebugName): 113571 * storage/DatabaseAuthorizer.cpp: 113572 (WebCore::DatabaseAuthorizer::DatabaseAuthorizer): 113573 (WebCore::DatabaseAuthorizer::denyBasedOnTableName): 113574 * storage/DatabaseAuthorizer.h: 113575 (WebCore::DatabaseAuthorizer::create): 113576 * storage/DatabaseSync.cpp: 113577 (WebCore::DatabaseSync::databaseInfoTableName): 113578 (WebCore::DatabaseSync::openDatabaseSync): 113579 (WebCore::DatabaseSync::DatabaseSync): 113580 (WebCore::DatabaseSync::~DatabaseSync): 113581 (WebCore::DatabaseSync::version): 113582 (WebCore::DatabaseSync::changeVersion): 113583 (WebCore::DatabaseSync::transaction): 113584 (WebCore::DatabaseSync::scriptExecutionContext): 113585 * storage/DatabaseSync.h: 113586 (WebCore::DatabaseSync::databaseDebugName): 113587 * storage/DatabaseTask.cpp: 113588 (WebCore::DatabaseOpenTask::DatabaseOpenTask): 113589 (WebCore::DatabaseOpenTask::doPerformTask): 113590 * storage/DatabaseTask.h: 113591 (WebCore::DatabaseOpenTask::create): 113592 113593 2010-06-25 Lei Zheng <lzheng (a] chromium.org> 113594 113595 Reviewed by Dimitri Glazkov. 113596 113597 Add a flag to the ResourceResponse for tracking if a request was fetched when 113598 Alternate-protocol is available. 113599 https://bugs.webkit.org/show_bug.cgi?id=41001 113600 113601 No new tests. (This is just a setter and getter.) 113602 113603 * platform/network/chromium/ResourceResponse.h: 113604 (WebCore::ResourceResponse::ResourceResponse): 113605 (WebCore::ResourceResponse::wasAlternateProtocolAvailable): 113606 (WebCore::ResourceResponse::setWasAlternateProtocolAvailable): 113607 113608 2010-06-25 Lyon Chen <liachen (a] rim.com> 113609 113610 Reviewed by Darin Adler. 113611 113612 InspectorCSSStore.cpp is not surrounded with ENABLE(INSPECTOR) 113613 https://bugs.webkit.org/show_bug.cgi?id=41004 113614 113615 Surround InspectorCSSStore.cpp code with ENABLE(INSPECTOR) so it will not 113616 break the build when INSPECTOR is disabled. 113617 113618 * inspector/InspectorCSSStore.cpp: 113619 113620 2010-06-25 No'am Rosenthal <noam.rosenthal (a] nokia.com> 113621 113622 Reviewed by Simon Hausmann. 113623 113624 [Qt] WebGL: missing file 113625 https://bugs.webkit.org/show_bug.cgi?id=40998 113626 113627 Added a missing file to WebCore.pro 113628 113629 No new tests; build fix 113630 113631 * WebCore.pro: 113632 113633 2010-06-25 Adam Roben <aroben (a] apple.com> 113634 113635 Windows build fix 113636 113637 * WebCore.vcproj/WebCore.vcproj: Added a missing </File> tag. 113638 113639 2010-06-25 Alex Milowski <alex (a] milowski.com> 113640 113641 Reviewed by Kenneth Rohde Christiansen. 113642 113643 This patch changes the vertical alignment to rely upon baseline 113644 alignment for all MathML rendering. This fixes a number of layout 113645 issues and the implementation is much more clean. 113646 113647 Also, this patch adds a horizontal green line in the debug layout 113648 so you can see the top padding of any RenderMathMLBlock instance. 113649 113650 Test: mathml/presentation/row-alignment.xhtml 113651 113652 * css/mathml.css: 113653 * mathml/RenderMathMLBlock.cpp: 113654 * mathml/RenderMathMLFraction.cpp: 113655 * mathml/RenderMathMLFraction.h: 113656 * mathml/RenderMathMLOperator.cpp: 113657 * mathml/RenderMathMLOperator.h: 113658 * mathml/RenderMathMLRoot.cpp: 113659 * mathml/RenderMathMLRow.cpp: 113660 * mathml/RenderMathMLRow.h: 113661 * mathml/RenderMathMLSquareRoot.cpp: 113662 * mathml/RenderMathMLSubSup.cpp: 113663 * mathml/RenderMathMLUnderOver.cpp: 113664 113665 2010-06-25 Yury Semikhatsky <yurys (a] chromium.org> 113666 113667 Reviewed by Pavel Feldman. 113668 113669 Can't see source when hitting debugger statement in evaled source 113670 https://bugs.webkit.org/show_bug.cgi?id=41058 113671 113672 Test: inspector/debugger-pause-in-eval-script.html 113673 113674 * bindings/js/ScriptDebugServer.cpp: 113675 (WebCore::ScriptDebugServer::sourceParsed): use lexical global object to figure out 113676 where the script is compiled. Otherwise scripts typed in Web Inspector console will 113677 be treated as ones evaluated in the context of Web Inspector and won't appear in the 113678 scripts list. 113679 * inspector/InspectorController.cpp: 113680 (WebCore::InspectorController::didParseSource): cache script sources for eval's too. 113681 113682 2010-06-25 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 113683 113684 Reviewed by Kenneth Rohde Christiansen. 113685 113686 [EFL] Use a descriptive string in FileChooser when multiple files can 113687 be selected. 113688 https://bugs.webkit.org/show_bug.cgi?id=40943 113689 113690 EFL port has no tests yet, so no new tests. 113691 113692 * platform/efl/FileChooserEfl.cpp: 113693 (WebCore::FileChooser::basenameForWidth): 113694 113695 2010-06-25 Nikolas Zimmermann <nzimmermann (a] rim.com> 113696 113697 Reviewed by Dirk Schulze. 113698 113699 SVG Text Highlighting not yet supported (in Safari) 113700 https://bugs.webkit.org/show_bug.cgi?id=41200 113701 113702 Add text match marker highlighting support for SVG text - searching for SVG text in Safari now paints the nice yellow highlighting rect, and the 113703 white rectangles for all text matches. Behaves exactly like HTML text, but respecting SVGs per-character/per-chunk transformations, 113704 allowing to highlight textPaths, tspans with absolute per-character positions etc.. 113705 113706 Only manually testable, thus no new tests. 113707 113708 * rendering/InlineBox.h: Expose calculateBoundaries() in non-SVG builds as well, now used by InlineTextBox too. 113709 * rendering/InlineTextBox.h: Add calculateBoundaries(), which will be used to refactor some code in RenderText, see below. 113710 (WebCore::InlineTextBox::calculateBoundaries): Just return a IntRect(x(), y(), width(), height()) here. 113711 (WebCore::RenderObject::isSVGInlineText): 113712 * rendering/RenderSVGInlineText.h: 113713 (WebCore::RenderSVGInlineText::isSVGInlineText): Return true for isSVGInlineText(), return false for isSVGText() (default in RenderObject.h) 113714 * rendering/RenderSVGRoot.cpp: 113715 (WebCore::RenderSVGRoot::paint): Only paint box decorations in PaintPhase(Child)BlockBackground, exit afterwards just like RenderBlock does. 113716 Otherwise the white text match marker rectangle gets drawn over the yellow highlight that Safari draws. 113717 * rendering/RenderSVGText.cpp: 113718 (WebCore::RenderSVGText::paint): Accept a new painting phase: PaintPhaseSelection, used by Safari when drawing the yellow highlight rect. 113719 * rendering/RenderText.cpp: 113720 (WebCore::RenderText::absoluteQuads): Use calculateBoundaries() instead of IntRect(x(), y(), width(), height()). SVG provides different boundaries here. 113721 (WebCore::RenderText::absoluteQuadsForRange): Ditto. This is the main change, leading to correct text highlight placement. 113722 * rendering/SVGInlineFlowBox.cpp: Add assertion that painting is not disabled, for consistency. Change paint phase assertion to include PaintPhaseSelection. 113723 (WebCore::SVGInlineFlowBox::paint): 113724 * rendering/SVGInlineTextBox.cpp: 113725 (WebCore::SVGInlineTextBox::selectionRectForTextChunkPart): Refactored from selectionRect(), to share code between selectionRect/computeTextMatchMarkerRect. 113726 (WebCore::SVGInlineTextBox::selectionRect): Use new helper function selectionRectForTextChunkPart(). 113727 (WebCore::SVGInlineTextBox::paint): Ditto. Call new computeTextMatchMarkerRect() function. 113728 (WebCore::SVGInlineTextBox::computeTextMatchMarkerRect): Implemented similar to HTML, but respecting SVGs concept of text chunk parts. 113729 (WebCore::SVGInlineTextBox::paintText): In PaintPhaseSelection, only paint selected text, not anything before/after the selection start/end. 113730 (WebCore::SVGInlineTextBox::calculateBoundaries): Early exit, if m_chunkTransformation is identity. 113731 * rendering/SVGInlineTextBox.h: Added "bool paintSelectedTextOnly" to paintText() and add new computeTextMatchMarkerRect(RenderStyle*) function. 113732 * rendering/SVGRootInlineBox.cpp: 113733 (WebCore::SVGRootInlineBox::paint): Change paint phase assertion to include PaintPhaseSelection. 113734 113735 2010-06-25 John Gregg <johnnyg (a] google.com> 113736 113737 Reviewed by Darin Fisher. 113738 113739 Notification should expose ltr/rtl as TextDirection, not String 113740 https://bugs.webkit.org/show_bug.cgi?id=40871 113741 113742 No new tests; existing test covers this, just renaming a method. 113743 113744 * notifications/Notification.h: 113745 (WebCore::Notification::direction): 113746 113747 2010-06-25 Sheriff Bot <webkit.review.bot (a] gmail.com> 113748 113749 Unreviewed, rolling out r61842. 113750 http://trac.webkit.org/changeset/61842 113751 https://bugs.webkit.org/show_bug.cgi?id=41208 113752 113753 It broke Windows build (Requested by Ossy_ on #webkit). 113754 113755 * ForwardingHeaders/wtf/win/OwnPtrWin.h: Removed. 113756 113757 2010-06-25 Patrick Gansterer <paroga (a] paroga.com> 113758 113759 Reviewed by Darin Adler. 113760 113761 Remove unneeded whitespace from svgtags.in. 113762 https://bugs.webkit.org/show_bug.cgi?id=40912 113763 113764 make_names.pl throws an error at non-empty lines 113765 when using cl.exe as preprocessor. 113766 113767 * svg/svgtags.in: 113768 113769 2010-06-25 Nikolas Zimmermann <nzimmermann (a] rim.com> 113770 113771 Reviewed by Rob Buis. 113772 113773 Split up isSVGText() in isSVGText() / isSVGInlineText() 113774 https://bugs.webkit.org/show_bug.cgi?id=41204 113775 113776 Introduce isSVGInlineText(), to provide a safe mechanism to differentiate between RenderSVGText / RenderSVGInlineText. 113777 No change in functionality, thus no new tests. 113778 113779 * rendering/RenderBlockLineLayout.cpp: 113780 (WebCore::shouldPreserveNewline): s/isSVGText/isSVGInlineText/ 113781 (WebCore::RenderBlock::findNextLineBreak): Ditto. 113782 * rendering/RenderObject.h: 113783 (WebCore::RenderObject::isSVGInlineText): Return false, by default. 113784 * rendering/RenderSVGInlineText.h: 113785 (WebCore::RenderSVGInlineText::isSVGInlineText): Return true here, don't return true anymore for isSVGText(). 113786 * rendering/RenderText.cpp: 113787 (WebCore::RenderText::setTextInternal): s/isSVGText/isSVGInlineText/ 113788 * rendering/RenderTreeAsText.cpp: Remove hack, now that we can properly differentiate between RenderSVGText / RenderSVGInlineText. 113789 (WebCore::write): 113790 113791 2010-06-25 Kwang Yul Seo <skyul (a] company100.net> 113792 113793 Reviewed by Adam Barth. 113794 113795 Change OwnPtrCommon to include platform-specific headers 113796 https://bugs.webkit.org/show_bug.cgi?id=40279 113797 113798 Adding new type to OwnPtrCommon needlessly causes all ports to do full rebuilds. 113799 Change OwnPtrCommon to include platform-specific headers to avoid all ports rebuilds. 113800 113801 * ForwardingHeaders/wtf/win: Added. 113802 * ForwardingHeaders/wtf/win/OwnPtrWin.h: Added. 113803 113804 2010-06-25 Patrick Gansterer <paroga (a] paroga.com> 113805 113806 Reviewed by Adam Barth. 113807 113808 Implement TextCodecs for WinCE port. 113809 https://bugs.webkit.org/show_bug.cgi?id=32169 113810 Originally written by Yong Li <yong.li (a] torchmobile.com> 113811 113812 * platform/graphics/FontCache.h: 113813 * platform/graphics/wince/FontCacheWince.cpp: 113814 (WebCore::FontCache::getMultiLanguageInterface): 113815 * platform/text/wince/TextCodecWinCE.cpp: Added. 113816 (WebCore::codePageCharsets): 113817 (WebCore::knownCharsets): 113818 (WebCore::supportedCharsets): 113819 (WebCore::languageManager): 113820 (WebCore::addCharset): 113821 (WebCore::LanguageManager::LanguageManager): 113822 (WebCore::getCodePage): 113823 (WebCore::newTextCodecWinCE): 113824 (WebCore::TextCodecWinCE::TextCodecWinCE): 113825 (WebCore::TextCodecWinCE::~TextCodecWinCE): 113826 (WebCore::TextCodecWinCE::registerBaseEncodingNames): 113827 (WebCore::TextCodecWinCE::registerBaseCodecs): 113828 (WebCore::TextCodecWinCE::registerExtendedEncodingNames): 113829 (WebCore::TextCodecWinCE::registerExtendedCodecs): 113830 (WebCore::getCodePageFlags): 113831 (WebCore::findFirstNonAsciiCharacter): 113832 (WebCore::decode): 113833 (WebCore::TextCodecWinCE::decode): 113834 (WebCore::TextCodecWinCE::encode): 113835 (WebCore::TextCodecWinCE::enumerateSupportedEncodings): 113836 * platform/text/wince/TextCodecWinCE.h: Added. 113837 113838 2010-06-24 Rob Buis <rwlbuis (a] gmail.com> 113839 113840 Reviewed by Dirk Schulze. 113841 113842 Bug 40880 - SVG properties fill and stroke do not accept system colors 113843 https://bugs.webkit.org/show_bug.cgi?id=40880 113844 113845 Handle css system colors in fill and stroke properties. 113846 113847 Test: svg/css/rect-system-color.xhtml 113848 113849 * css/CSSParser.cpp: Remove comment and unneeded if condition 113850 (WebCore::CSSParser::parseValue): 113851 * css/SVGCSSParser.cpp: Allow css system colors 113852 (WebCore::CSSParser::parseSVGValue): 113853 113854 2010-06-24 Eric Seidel <eric (a] webkit.org> 113855 113856 Reviewed by Adam Barth. 113857 113858 Make DocumentParser API private on subclasses to catch misuse bugs 113859 https://bugs.webkit.org/show_bug.cgi?id=41186 113860 113861 This already found one bug: 113862 https://bugs.webkit.org/show_bug.cgi?id=41187 113863 113864 Added a new HTMLDocumentParaser::parseDocumentFragment so that 113865 DocumentFragment.cpp does not need to use private methods. 113866 113867 * dom/DocumentFragment.cpp: 113868 (WebCore::DocumentFragment::parseHTML): 113869 * dom/XMLDocumentParser.h: 113870 (WebCore::XMLDocumentParser::setIsXHTMLDocument): 113871 (WebCore::XMLDocumentParser::isXHTMLDocument): 113872 (WebCore::XMLDocumentParser::setIsXHTMLMPDocument): 113873 (WebCore::XMLDocumentParser::isXHTMLMPDocument): 113874 * html/HTMLDocumentParser.cpp: 113875 (WebCore::HTMLDocumentParser::parseDocumentFragment): 113876 * html/HTMLDocumentParser.h: 113877 * html/LegacyHTMLDocumentParser.cpp: 113878 (WebCore::LegacyHTMLDocumentParser::parseDocumentFragment): 113879 * html/LegacyHTMLDocumentParser.h: 113880 (WebCore::LegacyHTMLDocumentParser::forceSynchronous): 113881 (WebCore::LegacyHTMLDocumentParser::processingContentWrittenByScript): 113882 * html/LegacyHTMLTreeBuilder.cpp: 113883 (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole): 113884 * loader/DocumentWriter.cpp: 113885 (WebCore::DocumentWriter::replaceDocument): 113886 * loader/TextDocument.cpp: 113887 113888 2010-05-28 Philippe Normand <pnormand (a] igalia.com> 113889 113890 Reviewed by Gustavo Noronha. 113891 113892 [GStreamer] multiple video sink support 113893 https://bugs.webkit.org/show_bug.cgi?id=39472 113894 113895 Playbin2 video-sink is now a bin containing a tee element capable 113896 of dispatching the buffers to multiple video sinks. By default 113897 only our webkit video sink is used. This will allow 113898 GStreamerGWorld to add support for autovideosink in the future. 113899 113900 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 113901 (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer): 113902 (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): 113903 (WebCore::MediaPlayerPrivateGStreamer::naturalSize): 113904 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): 113905 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: 113906 113907 2010-06-24 Adam Barth <abarth (a] webkit.org> 113908 113909 Reviewed by Eric Seidel. 113910 113911 Sketch out AfterHeadMode for tree builder 113912 https://bugs.webkit.org/show_bug.cgi?id=41191 113913 113914 This mode is fairly similar to the others. I needed to change some of 113915 the types around w.r.t. Nodes/Elements. 113916 113917 * html/HTMLTreeBuilder.cpp: 113918 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 113919 (WebCore::HTMLTreeBuilder::processToken): 113920 (WebCore::HTMLTreeBuilder::insertElement): 113921 * html/HTMLTreeBuilder.h: 113922 (WebCore::HTMLTreeBuilder::ElementStack::push): 113923 (WebCore::HTMLTreeBuilder::ElementStack::remove): 113924 113925 2010-06-24 Adam Barth <abarth (a] webkit.org> 113926 113927 Reviewed by Eric Seidel. 113928 113929 Sketch out InHeadNoscriptMode for tree builder 113930 https://bugs.webkit.org/show_bug.cgi?id=41189 113931 113932 Lots of notImplemented() calls in this state. I need to figure how to 113933 delegate handling of a token from one state to another. 113934 113935 * html/HTMLTreeBuilder.cpp: 113936 (WebCore::HTMLTreeBuilder::processToken): 113937 113938 2010-06-24 Adam Barth <abarth (a] webkit.org> 113939 113940 Reviewed by Eric Seidel. 113941 113942 Sketch out InHeadMode for tree builder 113943 https://bugs.webkit.org/show_bug.cgi?id=41184 113944 113945 This state is relatively straightforward. We introduce the stack of 113946 open elements to track that notion in the spec. The old tree builder 113947 has a nice data structure for that, which we'll probably steal, but I'd 113948 like to see what the full API is first. 113949 113950 * html/HTMLTreeBuilder.cpp: 113951 (WebCore::HTMLTreeBuilder::processToken): 113952 (WebCore::HTMLTreeBuilder::insertCharacter): 113953 (WebCore::HTMLTreeBuilder::insertGenericRCDATAElement): 113954 (WebCore::HTMLTreeBuilder::insertGenericRawTextElement): 113955 (WebCore::HTMLTreeBuilder::insertScriptElement): 113956 * html/HTMLTreeBuilder.h: 113957 (WebCore::HTMLTreeBuilder::ElementStack::pop): 113958 (WebCore::HTMLTreeBuilder::ElementStack::top): 113959 113960 2010-06-24 Adam Barth <abarth (a] webkit.org> 113961 113962 Reviewed by Eric Seidel. 113963 113964 Sketch out BeforeHeadMode tree builder state 113965 https://bugs.webkit.org/show_bug.cgi?id=41183 113966 113967 This makes procesToken recursive, which might not be the best idea. 113968 Also, we can now make fake AtomicHTMLTokens for use by the algorithm. 113969 113970 * html/HTMLToken.h: 113971 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 113972 * html/HTMLTreeBuilder.cpp: 113973 (WebCore::HTMLTreeBuilder::processToken): 113974 (WebCore::HTMLTreeBuilder::insertElement): 113975 * html/HTMLTreeBuilder.h: 113976 113977 2010-06-22 Antonio Gomes <tonikitoo (a] webkit.org> 113978 113979 Reviewed by David Hyatt. 113980 113981 Add a NodeList-derivated wrapper class for a ListHashSet. 113982 https://bugs.webkit.org/show_bug.cgi?id=41081 113983 113984 StaticHashSetList will work as a wrapper to ListHashSet objects that are 113985 aimed to be exposed to the DOM. 113986 113987 As a use case, the rect based HitTest (bug 40197) will store the retrieved nodes 113988 in a ListHashSet. It is going to be exposed to the DOM through are nodesFromRect 113989 of Document returning a NodeList (i.e. StatisHashSetList) wrapping a ListHashSet. 113990 113991 No new tests. 113992 113993 2010-06-24 Cris Neckar <cdn (a] chromium.org> 113994 113995 Reviewed by Darin Fisher. 113996 113997 [Chromium] Out of bounds write in WebCore::PNGImageDecoder::rowAvailable 113998 https://bugs.webkit.org/show_bug.cgi?id=40798 113999 114000 Catches error in row callback for libPNG when extra rows are returned. 114001 114002 Test: fast/images/png-extra-row-crash.html 114003 114004 * platform/image-decoders/png/PNGImageDecoder.cpp: 114005 (WebCore::PNGImageDecoder::rowAvailable): 114006 114007 2010-06-24 Eric Seidel <eric (a] webkit.org> 114008 114009 Reviewed by Adam Barth. 114010 114011 Clean up and document DocumentWriter::replaceDocument code path 114012 https://bugs.webkit.org/show_bug.cgi?id=41182 114013 114014 No functional changes, thus no tests. 114015 114016 * loader/DocumentWriter.cpp: 114017 (WebCore::DocumentWriter::replaceDocument): 114018 - Remove comment which could be misleading. 114019 114020 2010-06-23 Dumitru Daniliuc <dumi (a] chromium.org> 114021 114022 Reviewed by Adam Barth. 114023 114024 Implementing DatabaseSync::openDatabaseSync(). 114025 https://bugs.webkit.org/show_bug.cgi?id=40607 114026 114027 Moved some common code from Database to AbstractDatabase. Made 114028 performOpenAndVerify() virtual, since DatabaseSync doesn't need to 114029 interact with DatabaseThread. Removed the m_creationCallback 114030 field, since it's only needed in the openDatabase{Sync} methods. 114031 114032 * storage/AbstractDatabase.cpp: 114033 (WebCore::retrieveTextResultFromDatabase): 114034 (WebCore::setTextValueInDatabase): 114035 (WebCore::guidMutex): 114036 (WebCore::guidToVersionMap): 114037 (WebCore::updateGuidVersionMap): 114038 (WebCore::guidToDatabaseMap): 114039 (WebCore::guidForOriginAndName): 114040 (WebCore::AbstractDatabase::databaseInfoTableName): 114041 (WebCore::AbstractDatabase::AbstractDatabase): 114042 (WebCore::AbstractDatabase::closeDatabase): 114043 (WebCore::AbstractDatabase::version): 114044 (WebCore::AbstractDatabase::performOpenAndVerify): 114045 (WebCore::AbstractDatabase::scriptExecutionContext): 114046 (WebCore::AbstractDatabase::securityOrigin): 114047 (WebCore::AbstractDatabase::stringIdentifier): 114048 (WebCore::AbstractDatabase::displayName): 114049 (WebCore::AbstractDatabase::estimatedSize): 114050 (WebCore::AbstractDatabase::fileName): 114051 (WebCore::AbstractDatabase::databaseVersionKey): 114052 (WebCore::AbstractDatabase::getVersionFromDatabase): 114053 (WebCore::AbstractDatabase::setVersionInDatabase): 114054 (WebCore::AbstractDatabase::versionMatchesExpected): 114055 (WebCore::AbstractDatabase::setExpectedVersion): 114056 (WebCore::AbstractDatabase::disableAuthorizer): 114057 (WebCore::AbstractDatabase::enableAuthorizer): 114058 (WebCore::AbstractDatabase::setAuthorizerReadOnly): 114059 (WebCore::AbstractDatabase::lastActionChangedDatabase): 114060 (WebCore::AbstractDatabase::lastActionWasInsert): 114061 (WebCore::AbstractDatabase::resetDeletes): 114062 (WebCore::AbstractDatabase::hadDeletes): 114063 (WebCore::AbstractDatabase::resetAuthorizer): 114064 * storage/AbstractDatabase.h: 114065 (WebCore::AbstractDatabase::opened): 114066 (WebCore::AbstractDatabase::isNew): 114067 (WebCore::AbstractDatabase::databaseDebugName): 114068 * storage/Database.cpp: 114069 (WebCore::DatabaseCreationCallbackTask::create): 114070 (WebCore::DatabaseCreationCallbackTask::performTask): 114071 (WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask): 114072 (WebCore::Database::openDatabase): 114073 (WebCore::Database::Database): 114074 (WebCore::Database::version): 114075 (WebCore::Database::openAndVerifyVersion): 114076 (WebCore::Database::close): 114077 (WebCore::Database::stop): 114078 (WebCore::Database::performOpenAndVerify): 114079 * storage/Database.h: 114080 (WebCore::Database::sqliteDatabase): 114081 * storage/DatabaseAuthorizer.cpp: 114082 (WebCore::DatabaseAuthorizer::create): 114083 (WebCore::DatabaseAuthorizer::DatabaseAuthorizer): 114084 (WebCore::DatabaseAuthorizer::denyBasedOnTableName): 114085 * storage/DatabaseAuthorizer.h: 114086 * storage/DatabaseSync.cpp: 114087 (WebCore::DatabaseSync::openDatabaseSync): 114088 (WebCore::DatabaseSync::DatabaseSync): 114089 (WebCore::DatabaseSync::changeVersion): 114090 (WebCore::DatabaseSync::transaction): 114091 (WebCore::DatabaseSync::markAsDeletedAndClose): 114092 (WebCore::CloseSyncDatabaseOnContextThreadTask::create): 114093 (WebCore::CloseSyncDatabaseOnContextThreadTask::performTask): 114094 (WebCore::CloseSyncDatabaseOnContextThreadTask::CloseSyncDatabaseOnContextThreadTask): 114095 (WebCore::DatabaseSync::closeImmediately): 114096 * storage/DatabaseSync.h: 114097 * storage/DatabaseTask.cpp: 114098 (WebCore::DatabaseOpenTask::DatabaseOpenTask): 114099 (WebCore::DatabaseOpenTask::doPerformTask): 114100 * storage/DatabaseTask.h: 114101 (WebCore::DatabaseOpenTask::create): 114102 114103 2010-06-24 Steve Falkenburg <sfalken (a] apple.com> 114104 114105 Windows build fix. 114106 114107 * platform/network/cf/AuthenticationCF.h: 114108 114109 2010-06-24 Martin Robinson <mrobinson (a] igalia.com> 114110 114111 Unreviewed. Build fix. 114112 114113 Fix the build after r61798. 114114 114115 * platform/gtk/PasteboardHelper.cpp: 114116 (WebCore::PasteboardHelper::getClipboardContents): 114117 114118 2010-06-24 Alexey Proskuryakov <ap (a] apple.com> 114119 114120 Reviewed by Brady Eidson. 114121 114122 https://bugs.webkit.org/show_bug.cgi?id=41178 114123 Timed refresh in subframes isn't stopped when going into b/f cache 114124 114125 Test: fast/history/timed-refresh-in-cached-frame.html 114126 114127 * history/CachedFrame.cpp: (WebCore::CachedFrame::CachedFrame): Top frame's stopLoading() 114128 won't help cached subframes; stop loading from here. 114129 114130 * loader/FrameLoader.cpp: 114131 (WebCore::FrameLoader::stopLoading): Don't stop loading in child frames. This didn't work 114132 for cached frames due to frame tree having been already desonstructed, and it's not necessary 114133 in non-cached case because stopLoading() will be called for subframes via 114134 FrameLoader::detachFromParent() and closeURL(). 114135 (WebCore::FrameLoader::pageHidden): This was a second code path that dispatched pagehide 114136 event - it's no longer needed, because everything goes through FrameLoader::stopLoading(). 114137 (WebCore::FrameLoader::commitProvisionalLoad): Don't call pageHidden(), the code for adding 114138 frame to b/f cache will do everything. 114139 114140 * loader/FrameLoader.h: Removed pageHidden(). 114141 114142 2010-06-24 Eric Seidel <eric (a] webkit.org> 114143 114144 Unreviewed. Fix the build. I am a bad man. 114145 114146 * loader/DocumentWriter.cpp: 114147 (WebCore::DocumentWriter::replaceDocument): 114148 114149 2010-06-24 Martin Robinson <mrobinson (a] igalia.com> 114150 114151 Reviewed by Xan Lopez. 114152 114153 Build fix for building against GTK+ 3.x. 114154 114155 No new tests as functionality has not changed. 114156 114157 * platform/gtk/GtkVersioning.h: 114158 * platform/gtk/PasteboardHelper.cpp: 114159 (WebCore::PasteboardHelper::getClipboardContents): 114160 (WebCore::PasteboardHelper::fillSelectionData): 114161 114162 2010-06-24 Eric Seidel <eric (a] webkit.org> 114163 114164 Reviewed by Adam Barth. 114165 114166 Clean up and document DocumentWriter::replaceDocument code path 114167 https://bugs.webkit.org/show_bug.cgi?id=41182 114168 114169 No functional change, thus no test. 114170 114171 * loader/DocumentWriter.cpp: 114172 (WebCore::DocumentWriter::replaceDocument): 114173 * loader/DocumentWriter.h: 114174 114175 2010-06-24 Jer Noble <jer.noble (a] apple.com> 114176 114177 Reviewed by Eric Carlson. 114178 114179 Full-screened content doesn't keep the display on: Safari not grabbing a power assertion? 114180 https://bugs.webkit.org/show_bug.cgi?id=40939 114181 rdar://problem/7996172 114182 114183 Export -[MediaElement playbackRate]; 114184 114185 * WebCore.Video.exp: 114186 114187 2010-06-21 Evan Martin <evan (a] chromium.org> 114188 114189 Reviewed by Adam Barth. 114190 114191 [chromium] overlapping characters in complex text 114192 https://bugs.webkit.org/show_bug.cgi?id=40966 114193 114194 We need to clear all the buffers we hand to Harfbuzz before we use them. 114195 While I'm here, refactor the code slightly to make its behavior more 114196 clear and correct (previously, we would repeatedly double our buffer 114197 size when we could have just sized it correctly on the second try). 114198 114199 * platform/graphics/chromium/FontLinux.cpp: 114200 (WebCore::TextRunWalker::TextRunWalker): 114201 (WebCore::TextRunWalker::nextScriptRun): 114202 (WebCore::TextRunWalker::createGlyphArrays): 114203 (WebCore::TextRunWalker::shapeGlyphs): 114204 114205 2010-06-24 Adele Peterson <adele (a] apple.com> 114206 114207 Reviewed by Sam Weinig. 114208 114209 Updated fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events 114210 https://bugs.webkit.org/show_bug.cgi?id=41085 114211 114212 Covered by existing tests. 114213 114214 * editing/EditorCommand.cpp: 114215 (WebCore::executePasteAsPlainText): Added. 114216 (WebCore::createCommandMap): Added pasteAsPlainText command. 114217 114218 2010-06-24 Adam Barth <abarth (a] webkit.org> 114219 114220 Reviewed by Eric Seidel. 114221 114222 Sketch out BeforeHTMLMode state 114223 https://bugs.webkit.org/show_bug.cgi?id=41133 114224 114225 In this patch, we switch the TreeBuidler over to using AtomicHTMLTokens 114226 and sketch out another state. These states don't actually do anything 114227 yet, I'm still just getting the structure of the spec into the code so 114228 we can implement the details incrementally. 114229 114230 * html/HTMLTreeBuilder.cpp: 114231 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 114232 (WebCore::HTMLTreeBuilder::processToken): 114233 (WebCore::HTMLTreeBuilder::insertDoctype): 114234 (WebCore::HTMLTreeBuilder::insertComment): 114235 * html/HTMLTreeBuilder.h: 114236 (WebCore::HTMLTreeBuilder::parseError): 114237 114238 2010-06-24 Adam Barth <abarth (a] webkit.org> 114239 114240 Reviewed by Eric Seidel. 114241 114242 Add AtomicHTMLToken 114243 https://bugs.webkit.org/show_bug.cgi?id=41131 114244 114245 We need an atomized version of the token for use in the tree builder. 114246 Eventually, we should make the existing HTMLToken an internal detail of 114247 the HTMLTokenizer. This new AtomicHTMLToken should be also be more 114248 easily cached between the preload scanner and the tree builder. 114249 114250 * html/HTMLToken.h: 114251 (WebCore::AtomicHTMLToken::AtomicHTMLToken): 114252 (WebCore::AtomicHTMLToken::type): 114253 (WebCore::AtomicHTMLToken::name): 114254 (WebCore::AtomicHTMLToken::selfClosing): 114255 (WebCore::AtomicHTMLToken::attributes): 114256 (WebCore::AtomicHTMLToken::characters): 114257 (WebCore::AtomicHTMLToken::comment): 114258 (WebCore::AtomicHTMLToken::publicIdentifier): 114259 (WebCore::AtomicHTMLToken::systemIdentifier): 114260 (WebCore::AtomicHTMLToken::forceQuirks): 114261 * html/HTMLTreeBuilder.cpp: 114262 (WebCore::convertToOldStyle): 114263 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 114264 114265 2010-06-24 Eric Seidel <eric (a] webkit.org> 114266 114267 Reviewed by Adam Barth. 114268 114269 Add RawDataDocumentParser to get rid of a bunch of copy/paste code in DocumentParser subclasses 114270 https://bugs.webkit.org/show_bug.cgi?id=41136 114271 114272 I think this is likely far from the final design, 114273 however this is almost entirely minus lines which is a 114274 good thing. 114275 114276 The original authors of these DocumentParser subclasses 114277 seem to have just copied the files whole, as they all 114278 had the same includes, many of which were unnecessary for 114279 some of the files. 114280 114281 I think eventually the FrameLoader will call a virtual 114282 DocumentParser::appendData which will in turn decode 114283 and call another write/appendData call. In the case 114284 of these RawDataDocumentParsers, they will just override 114285 the low-level appendData call instead of needing 114286 DocumentWriter to have a special if based on 114287 DocumentParser::wantsRawData. 114288 114289 No functional change, thus no tests. 114290 114291 * GNUmakefile.am: 114292 * WebCore.gypi: 114293 * WebCore.pro: 114294 * WebCore.xcodeproj/project.pbxproj: 114295 * dom/DocumentParser.h: 114296 (WebCore::DocumentParser::writeRawData): 114297 * loader/ImageDocument.cpp: 114298 (WebCore::ImageDocumentParser::ImageDocumentParser): 114299 (WebCore::ImageDocumentParser::finish): 114300 * loader/MediaDocument.cpp: 114301 (WebCore::MediaDocumentParser::MediaDocumentParser): 114302 (WebCore::MediaDocumentParser::writeRawData): 114303 * loader/PluginDocument.cpp: 114304 (WebCore::PluginDocumentParser::PluginDocumentParser): 114305 * loader/SinkDocument.cpp: 114306 (WebCore::SinkDocument::createParser): 114307 114308 2010-06-23 Peter Kasting <pkasting (a] google.com> 114309 114310 Reviewed by Adam Barth. 114311 114312 REGRESSION (r61619): Memory corruption in open-source ICO decoder 114313 https://bugs.webkit.org/show_bug.cgi?id=41107 114314 114315 * platform/image-decoders/bmp/BMPImageReader.cpp: 114316 (WebCore::BMPImageReader::processInfoHeader): Fix memory corruption. 114317 * platform/image-decoders/ico/ICOImageDecoder.cpp: 114318 (WebCore::ICOImageDecoder::processDirectoryEntries): Handle sizing failure correctly (though failure should be impossible). 114319 114320 2010-06-24 Sheriff Bot <webkit.review.bot (a] gmail.com> 114321 114322 Unreviewed, rolling out r61783. 114323 http://trac.webkit.org/changeset/61783 114324 https://bugs.webkit.org/show_bug.cgi?id=41179 114325 114326 Caused a couple of test failures (Requested by japhet on 114327 #webkit). 114328 114329 * dom/DOMImplementation.cpp: 114330 (WebCore::DOMImplementation::createDocument): 114331 (WebCore::DOMImplementation::createHTMLDocument): 114332 * dom/DOMImplementation.h: 114333 * dom/Document.cpp: 114334 (WebCore::Document::Document): 114335 (WebCore::Document::initSecurityContext): 114336 * dom/Document.h: 114337 (WebCore::Document::create): 114338 (WebCore::Document::createXHTML): 114339 * html/HTMLDocument.cpp: 114340 (WebCore::HTMLDocument::HTMLDocument): 114341 * html/HTMLDocument.h: 114342 (WebCore::HTMLDocument::create): 114343 * html/HTMLViewSourceDocument.cpp: 114344 (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument): 114345 * html/HTMLViewSourceDocument.h: 114346 (WebCore::HTMLViewSourceDocument::create): 114347 * loader/CachedFont.cpp: 114348 (WebCore::CachedFont::ensureSVGFontData): 114349 * loader/DocumentWriter.cpp: 114350 (WebCore::DocumentWriter::createDocument): 114351 (WebCore::DocumentWriter::begin): 114352 * loader/DocumentWriter.h: 114353 * loader/FTPDirectoryDocument.cpp: 114354 (WebCore::FTPDirectoryDocument::FTPDirectoryDocument): 114355 * loader/FTPDirectoryDocument.h: 114356 (WebCore::FTPDirectoryDocument::create): 114357 * loader/ImageDocument.cpp: 114358 (WebCore::ImageDocument::ImageDocument): 114359 * loader/ImageDocument.h: 114360 (WebCore::ImageDocument::create): 114361 * loader/MediaDocument.cpp: 114362 (WebCore::MediaDocument::MediaDocument): 114363 * loader/MediaDocument.h: 114364 (WebCore::MediaDocument::create): 114365 * loader/PlaceholderDocument.h: 114366 (WebCore::PlaceholderDocument::create): 114367 (WebCore::PlaceholderDocument::PlaceholderDocument): 114368 * loader/PluginDocument.cpp: 114369 (WebCore::PluginDocument::PluginDocument): 114370 * loader/PluginDocument.h: 114371 (WebCore::PluginDocument::create): 114372 * loader/SinkDocument.cpp: 114373 (WebCore::SinkDocument::SinkDocument): 114374 * loader/SinkDocument.h: 114375 (WebCore::SinkDocument::create): 114376 * loader/TextDocument.cpp: 114377 (WebCore::TextDocument::TextDocument): 114378 * loader/TextDocument.h: 114379 (WebCore::TextDocument::create): 114380 * svg/SVGDocument.cpp: 114381 (WebCore::SVGDocument::SVGDocument): 114382 * svg/SVGDocument.h: 114383 (WebCore::SVGDocument::create): 114384 * xml/DOMParser.cpp: 114385 (WebCore::DOMParser::parseFromString): 114386 * xml/XMLHttpRequest.cpp: 114387 (WebCore::XMLHttpRequest::responseXML): 114388 * xml/XSLTProcessor.cpp: 114389 (WebCore::XSLTProcessor::createDocumentFromSource): 114390 114391 2010-06-24 Martin Robinson <mrobinson (a] igalia.com> 114392 114393 Reviewed by Xan Lopez. 114394 114395 [GTK] Small code cleanup in RenderThemeGtk 114396 https://bugs.webkit.org/show_bug.cgi?id=40989 114397 114398 Reduce the amount of duplicated code slightly and prepare this section for 114399 future improvements, such as sharing the clipping rectangle calculation with 114400 the slow path. 114401 114402 No new tests as functionality has not changed. 114403 114404 * platform/gtk/RenderThemeGtk.cpp: 114405 (WebCore::paintMozillaGtkWidget): Small code cleanup. 114406 114407 2010-06-24 Nate Chapin <japhet (a] chromium.org> 114408 114409 Reviewed by Adam Barth. 114410 114411 Take a KURL parameter in Document's constructor. 114412 This will remove the one case where Document::url() 114413 and FrameLoader::url() are not equal, allowing us to 114414 remove FrameLoader::url(). 114415 114416 https://bugs.webkit.org/show_bug.cgi?id=41166 114417 114418 Refactor only, no new tests. 114419 114420 * dom/DOMImplementation.cpp: 114421 (WebCore::DOMImplementation::createDocument): Take a KURL and pass it through to Document. 114422 (WebCore::DOMImplementation::createHTMLDocument): 114423 * dom/DOMImplementation.h: 114424 * dom/Document.cpp: 114425 (WebCore::Document::Document): Call setURL() for non-empty KURL input parameters. 114426 (WebCore::Document::initSecurityContext): m_url is now initialized, so use it instead 114427 of m_frame->loader()->url() for initializing the SecurityOrigin. 114428 * dom/Document.h: 114429 (WebCore::Document::create): 114430 (WebCore::Document::createXHTML): 114431 * html/HTMLDocument.cpp: 114432 * html/HTMLDocument.h: Add KURL parameter to create() and constructor. 114433 * html/HTMLViewSourceDocument.cpp: 114434 * html/HTMLViewSourceDocument.h: Add KURL parameter to create() and constructor. 114435 * loader/CachedFont.cpp: 114436 (WebCore::CachedFont::ensureSVGFontData): 114437 * loader/DocumentWriter.cpp: 114438 (WebCore::DocumentWriter::createDocument): Take a KURL and pass it through to Document. 114439 (WebCore::DocumentWriter::begin): Pass existing url parameter to constructors, and remove 114440 redundant Document::setURL() call. 114441 * loader/DocumentWriter.h: 114442 * loader/FTPDirectoryDocument.cpp: 114443 * loader/FTPDirectoryDocument.h: Add KURL parameter to create() and constructor. 114444 * loader/ImageDocument.cpp: 114445 * loader/ImageDocument.h: Add KURL parameter to create() and constructor. 114446 * loader/MediaDocument.cpp: 114447 * loader/MediaDocument.h: Add KURL parameter to create() and constructor. 114448 * loader/PlaceholderDocument.h: Add KURL parameter to create() and constructor. 114449 * loader/PluginDocument.cpp: 114450 * loader/PluginDocument.h: Add KURL parameter to create() and constructor. 114451 * loader/SinkDocument.cpp: 114452 * loader/SinkDocument.h: Add KURL parameter to create() and constructor. 114453 * loader/TextDocument.cpp: 114454 * loader/TextDocument.h: Add KURL parameter to create() and constructor. 114455 * svg/SVGDocument.cpp: 114456 * svg/SVGDocument.h: Add KURL parameter to create() and constructor. 114457 * xml/DOMParser.cpp: 114458 (WebCore::DOMParser::parseFromString): 114459 * xml/XMLHttpRequest.cpp: 114460 (WebCore::XMLHttpRequest::responseXML): 114461 * xml/XSLTProcessor.cpp: 114462 (WebCore::XSLTProcessor::createDocumentFromSource): 114463 114464 2010-06-24 Brady Eidson <beidson (a] apple.com> 114465 114466 Reviewed by Sam Weinig. 114467 114468 <rdar://problem/8044645> and https://bugs.webkit.org/show_bug.cgi?id=41082 114469 114470 Webarchives will null main resource cause a repro crash. 114471 114472 Test: webarchive/loading/mainresource-null-mimetype-crash.html 114473 114474 * loader/archive/cf/LegacyWebArchive.cpp: 114475 (WebCore::LegacyWebArchive::createResource): Fail to create the archive resource if the main resource's 114476 mime type is null. 114477 114478 2010-06-24 Damian Kaleta <dkaleta (a] apple.com> 114479 114480 Reviewed by Sam Weinig. 114481 114482 Provide a way to obtain the rendered rectangle for box elements. 114483 114484 * WebCore.base.exp: Export the symbol so we can see it in WebKit. 114485 * dom/Node.cpp: 114486 (WebCore::Node::renderRect): Added new ethod that will return a rendered rectangle for box elements. 114487 * dom/Node.h: Ditto. 114488 114489 2010-06-24 Vangelis Kokkevis <vangelis (a] chromium.org> 114490 114491 Reviewed by Darin Fisher. 114492 114493 [Chromium] Create specialized classes for Transform, 114494 Image and WebGL layers to replace the rather monolithic LayerChromium class. 114495 Layers can now own the GL texture they use for backing store and a different 114496 shading program can be used by the compositor for each layer type. WebGL layers 114497 are not yet hooked up to GraphicsContext3D. 114498 https://bugs.webkit.org/show_bug.cgi?id=41106 114499 114500 * WebCore.gypi: 114501 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 114502 (WebCore::GraphicsLayerChromium::GraphicsLayerChromium): 114503 (WebCore::GraphicsLayerChromium::setContentsToImage): 114504 (WebCore::GraphicsLayerChromium::updateLayerPreserves3D): 114505 * platform/graphics/chromium/GraphicsLayerChromium.h: 114506 (WebCore::GraphicsLayerChromium::): 114507 * platform/graphics/chromium/ImageLayerChromium.cpp: Added. 114508 (WebCore::ImageLayerChromium::create): 114509 (WebCore::ImageLayerChromium::ImageLayerChromium): 114510 (WebCore::ImageLayerChromium::setContents): 114511 (WebCore::ImageLayerChromium::updateTextureContents): 114512 * platform/graphics/chromium/ImageLayerChromium.h: Added. 114513 (WebCore::ImageLayerChromium::drawsContent): 114514 * platform/graphics/chromium/LayerChromium.cpp: 114515 (WebCore::LayerChromium::create): 114516 (WebCore::LayerChromium::LayerChromium): 114517 (WebCore::LayerChromium::updateTextureContents): 114518 (WebCore::LayerChromium::updateTextureRect): 114519 * platform/graphics/chromium/LayerChromium.h: 114520 (WebCore::LayerChromium::drawsContent): 114521 (WebCore::LayerChromium::ownsTexture): 114522 (WebCore::LayerChromium::textureId): 114523 (WebCore::LayerChromium::setShaderProgramId): 114524 (WebCore::LayerChromium::shaderProgramId): 114525 * platform/graphics/chromium/LayerRendererChromium.cpp: 114526 (WebCore::LayerRendererChromium::createLayerShader): 114527 (WebCore::ShaderProgram::ShaderProgram): 114528 (WebCore::LayerRendererChromium::LayerRendererChromium): 114529 (WebCore::LayerRendererChromium::~LayerRendererChromium): 114530 (WebCore::LayerRendererChromium::useShaderProgram): 114531 (WebCore::LayerRendererChromium::drawTexturedQuad): 114532 (WebCore::LayerRendererChromium::drawLayers): 114533 (WebCore::LayerRendererChromium::drawDebugBorder): 114534 (WebCore::LayerRendererChromium::updateLayersRecursive): 114535 (WebCore::LayerRendererChromium::drawLayer): 114536 (WebCore::LayerRendererChromium::bindCommonAttribLocations): 114537 (WebCore::LayerRendererChromium::initializeSharedGLObjects): 114538 * platform/graphics/chromium/LayerRendererChromium.h: 114539 (WebCore::LayerRendererChromium::): 114540 * platform/graphics/chromium/TransformLayerChromium.cpp: Added. 114541 (WebCore::TransformLayerChromium::create): 114542 (WebCore::TransformLayerChromium::TransformLayerChromium): 114543 * platform/graphics/chromium/TransformLayerChromium.h: Added. 114544 (WebCore::TransformLayerChromium::drawsContent): 114545 * platform/graphics/chromium/WebGLLayerChromium.cpp: Added. 114546 (WebCore::WebGLLayerChromium::WebGLLayerChromium): 114547 (WebCore::WebGLLayerChromium::textureId): 114548 (WebCore::WebGLLayerChromium::updateTextureContents): 114549 (WebCore::WebGLLayerChromium::setContext): 114550 * platform/graphics/chromium/WebGLLayerChromium.h: Added. 114551 (WebCore::WebGLLayerChromium::drawsContent): 114552 (WebCore::WebGLLayerChromium::ownsTexture): 114553 (WebCore::WebGLLayerChromium::shaderProgramId): 114554 (WebCore::WebGLLayerChromium::setShaderProgramId): 114555 114556 2010-06-24 Pavel Feldman <pfeldman (a] chromium.org> 114557 114558 Reviewed by Yury Semikhatsky. 114559 114560 Web Inspector: Inspector cleanup + better DevTools alignment with Inspector. 114561 114562 https://bugs.webkit.org/show_bug.cgi?id=41094 114563 114564 - Removed a bunch of unused methods from all over the place 114565 - Added client callbacks for states surviving navigation 114566 - Implemented more user-friendly stub for InspectorFrontendHost.platform 114567 114568 * inspector/InspectorClient.h: 114569 (WebCore::InspectorClient::resourceTrackingWasEnabled): 114570 (WebCore::InspectorClient::resourceTrackingWasDisabled): 114571 (WebCore::InspectorClient::timelineProfilerWasStarted): 114572 (WebCore::InspectorClient::timelineProfilerWasStopped): 114573 * inspector/InspectorController.cpp: 114574 (WebCore::InspectorController::enableResourceTracking): 114575 (WebCore::InspectorController::disableResourceTracking): 114576 (WebCore::InspectorController::ensureSettingsLoaded): 114577 (WebCore::InspectorController::startTimelineProfiler): 114578 (WebCore::InspectorController::stopTimelineProfiler): 114579 * inspector/InspectorFrontend.cpp: 114580 * inspector/InspectorFrontend.h: 114581 * inspector/front-end/InspectorBackendStub.js: 114582 * inspector/front-end/InspectorFrontendHostStub.js: 114583 (.WebInspector.InspectorFrontendHostStub.prototype.platform): 114584 114585 2010-06-23 Alexey Proskuryakov <ap (a] apple.com> 114586 114587 Reviewed by Darin Adler. 114588 114589 https://bugs.webkit.org/show_bug.cgi?id=41099 114590 Assertion failure: !m_suspended when XMLHttpRequest fails 114591 114592 This was a general problem with load failure timer not being deferred. 114593 114594 Test: manual-tests/xhr-failure-behind-alert.html 114595 114596 * manual-tests/xhr-failure-behind-alert.html: Added. 114597 114598 * platform/network/ResourceHandle.cpp: 114599 (WebCore::ResourceHandle::fireFailure): Added an empty case for NoFailure. Reset 114600 m_scheduledFailureType to NoFailure when firing. 114601 (WebCore::ResourceHandle::setDefersLoading): Stop failure timer when deferring, restart when 114602 un-deferring loads. 114603 114604 * platform/network/ResourceHandle.h: Renamed m_failureType to m_scheduledFailureType to 114605 make it clear that it is only set when a timer is scheduled. 114606 114607 * platform/network/ResourceHandleInternal.h: 114608 (WebCore::ResourceHandleInternal::ResourceHandleInternal): Initialize m_scheduledFailureType 114609 to NoFailure, so that we can look at it when un-deferring loads. 114610 114611 * platform/network/android/ResourceHandleAndroid.cpp: 114612 (WebCore::ResourceHandle::platformSetDefersLoading): 114613 * platform/network/cf/ResourceHandleCFNet.cpp: 114614 (WebCore::ResourceHandle::platformSetDefersLoading): 114615 * platform/network/curl/ResourceHandleCurl.cpp: 114616 (WebCore::ResourceHandle::platformSetDefersLoading): 114617 * platform/network/mac/ResourceHandleMac.mm: 114618 (WebCore::ResourceHandle::platformSetDefersLoading): 114619 * platform/network/qt/ResourceHandleQt.cpp: 114620 (WebCore::ResourceHandle::platformSetDefersLoading): 114621 * platform/network/soup/ResourceHandleSoup.cpp: 114622 Platform specific parts of setDefersLoading() are now in a separate function. 114623 114624 2010-06-24 Pavel Feldman <pfeldman (a] chromium.org> 114625 114626 Not reviewed: revert 61766. 114627 114628 * inspector/InspectorClient.h: 114629 * inspector/InspectorController.cpp: 114630 (WebCore::InspectorController::enableResourceTracking): 114631 (WebCore::InspectorController::disableResourceTracking): 114632 (WebCore::InspectorController::ensureSettingsLoaded): 114633 (WebCore::InspectorController::startTimelineProfiler): 114634 (WebCore::InspectorController::stopTimelineProfiler): 114635 * inspector/InspectorFrontend.cpp: 114636 (WebCore::InspectorFrontend::setAttachedWindow): 114637 * inspector/InspectorFrontend.h: 114638 * inspector/front-end/InspectorBackendStub.js: 114639 (.WebInspector.InspectorBackendStub.prototype.setAttachedWindowHeight): 114640 * inspector/front-end/InspectorFrontendHostStub.js: 114641 (.WebInspector.InspectorFrontendHostStub.prototype.platform): 114642 114643 2010-06-23 Pavel Feldman <pfeldman (a] chromium.org> 114644 114645 Reviewed by Yury Semikhatsky. 114646 114647 Web Inspector: Inspector cleanup + better DevTools alignment with Inspector. 114648 114649 https://bugs.webkit.org/show_bug.cgi?id=41094 114650 114651 - Removed a bunch of unused methods from all over the place 114652 - Added client callbacks for states surviving navigation 114653 - Implemented more user-friendly stub for InspectorFrontendHost.platform 114654 114655 * inspector/InspectorClient.h: 114656 (WebCore::InspectorClient::resourceTrackingWasEnabled): 114657 (WebCore::InspectorClient::resourceTrackingWasDisabled): 114658 (WebCore::InspectorClient::timelineProfilerWasStarted): 114659 (WebCore::InspectorClient::timelineProfilerWasStopped): 114660 * inspector/InspectorController.cpp: 114661 (WebCore::InspectorController::enableResourceTracking): 114662 (WebCore::InspectorController::disableResourceTracking): 114663 (WebCore::InspectorController::ensureSettingsLoaded): 114664 (WebCore::InspectorController::startTimelineProfiler): 114665 (WebCore::InspectorController::stopTimelineProfiler): 114666 * inspector/InspectorFrontend.cpp: 114667 * inspector/InspectorFrontend.h: 114668 * inspector/front-end/InspectorBackendStub.js: 114669 * inspector/front-end/InspectorFrontendHostStub.js: 114670 (.WebInspector.InspectorFrontendHostStub.prototype.platform): 114671 114672 2010-06-24 Nikolas Zimmermann <nzimmermann (a] rim.com> 114673 114674 Reviewed by Dirk Schulze. 114675 114676 Inspector & SVG Text have problems, kids of RenderSVGText are not properly placed. 114677 https://bugs.webkit.org/show_bug.cgi?id=41143 114678 114679 Simplify code path taken for SVG text in InspectorController, take the code path currently only used for RenderInline, 114680 that just calls absoluteQuads(), and displays the result. Refactored code that all SVG renderers (except RenderSVGRoot) 114681 take this code path -> highlighting now works as expected. 114682 114683 Don't use absoluteClippedOverlowRect() in the various RenderSVG*::absoluteQuads() methods, as we're loosing floating-point precision. 114684 Instead use localToAbsoluteQuad(strokeBoundingBox()) in order to highlight the unclipped, unfiltered, etc.. region that this renderer would paint. 114685 114686 No new tests, as this is only manual testable - at least I didn't find any Inspector-Highlighting tests, if someone knows please mail me. 114687 114688 * inspector/InspectorController.cpp: 114689 (WebCore::drawHighlightForLineBoxesOrSVGRenderer): 114690 (WebCore::InspectorController::drawNodeHighlight): 114691 * rendering/RenderSVGBlock.cpp: 114692 (WebCore::RenderSVGBlock::absoluteRects): ASSERT_NOT_REACHED() here. SVG should only be inspected through absoluteQuads(). 114693 * rendering/RenderSVGBlock.h: Add absoluteRects() in this base class for RenderForeignObject/RenderSVGText. 114694 * rendering/RenderSVGHiddenContainer.cpp: Remove absoluteRects() - RenderSVGModelObject already has it. 114695 * rendering/RenderSVGHiddenContainer.h: Ditto. 114696 * rendering/RenderSVGImage.cpp: 114697 (WebCore::RenderSVGImage::absoluteRects): ASSERT_NOT_REACHED() here. 114698 (WebCore::RenderSVGImage::absoluteQuads): Don't use absoluteClippedOverlowRect() but localToAbsoluteQuad(repaintRectInLocalCoordinates()). 114699 * rendering/RenderSVGImage.h: 114700 (WebCore::RenderSVGImage::objectBoundingBox): Inlined 114701 * rendering/RenderSVGInline.cpp: 114702 (WebCore::RenderSVGInline::absoluteQuads): Take RenderSVGText translation into account, allows inspecting <tspan>/<tref> etc. 114703 * rendering/RenderSVGInline.h: 114704 * rendering/RenderSVGModelObject.cpp: 114705 (WebCore::RenderSVGModelObject::absoluteRects): ASSERT_NOT_REACHED() here. 114706 (WebCore::RenderSVGModelObject::absoluteQuads): Don't use absoluteClippedOverlowRect() but localToAbsoluteQuad(repaintRectInLocalCoordinates()). 114707 * rendering/RenderSVGModelObject.h: 114708 * rendering/RenderSVGRoot.cpp: Fix typo in license s/aint/along. Need to touch this file in order to let Mac build. 114709 * rendering/RenderSVGText.cpp: 114710 (WebCore::RenderSVGText::mapLocalToContainer): Remove hack, which moved the transformState by x()/y(). Not needed anymore. 114711 (WebCore::RenderSVGText::absoluteQuads): Proper implementation, respecting x/y translation. 114712 * rendering/RenderSVGText.h: Reorder some functions. 114713 * rendering/SVGRenderSupport.h: Removed last virtual function strokeBoundingBox(). 114714 114715 2010-06-24 Kent Tamura <tkent (a] chromium.org> 114716 114717 Unreviewed. Build fix for Tiger. 114718 114719 * platform/mac/ThemeMac.mm: 114720 (WebCore::setControlSize): 114721 114722 2010-06-24 Kent Tamura <tkent (a] chromium.org> 114723 114724 Unreviewed. Build fix for Tiger. 114725 114726 * platform/mac/ThemeMac.mm: 114727 (WebCore::setControlSize): 114728 (WebCore::ThemeMac::inflateControlPaintRect): 114729 114730 2010-06-24 Kent Tamura <tkent (a] chromium.org> 114731 114732 Unreviewed. Build fix for Chromium Mac. 114733 114734 * html/HTMLInputElement.cpp: 114735 (WebCore::HTMLInputElement::isSpeechEnabled): 114736 114737 2010-06-24 Simon Hausmann <simon.hausmann (a] nokia.com> 114738 114739 Unreviewed Symbian build fix. 114740 114741 The QML WebKit integration needs to be part of QtWebKit.sis 114742 114743 * WebCore.pro: Deploy qmlwebkitplugin.dll. 114744 114745 2010-06-24 Satish Sampath <satish (a] chromium.org> 114746 114747 Reviewed by Kent Tamura. 114748 114749 Add a speech button to input elements, no rendering or actions yet. 114750 114751 Speech Input: Add a speech button to text input element (no rendering or actions yet) 114752 https://bugs.webkit.org/show_bug.cgi?id=40925 114753 114754 No new tests. Will create a layout test in a subsequent patch. 114755 114756 * css/CSSPrimitiveValueMappings.h: 114757 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 114758 * css/CSSSelector.cpp: 114759 (WebCore::CSSSelector::pseudoId): 114760 (WebCore::nameToPseudoTypeMap): 114761 (WebCore::CSSSelector::extractPseudoType): 114762 * css/CSSSelector.h: 114763 (WebCore::CSSSelector::): 114764 * css/CSSValueKeywords.in: 114765 * css/html.css: 114766 (input::-webkit-input-speech-button): 114767 * dom/InputElement.h: 114768 * html/HTMLAttributeNames.in: 114769 * html/HTMLInputElement.cpp: 114770 (WebCore::HTMLInputElement::isSpeechEnabled): 114771 * html/HTMLInputElement.h: 114772 * platform/ThemeTypes.h: 114773 (WebCore::): 114774 * rendering/RenderTextControlSingleLine.cpp: 114775 (WebCore::RenderTextControlSingleLine::nodeAtPoint): 114776 (WebCore::RenderTextControlSingleLine::forwardEvent): 114777 (WebCore::RenderTextControlSingleLine::styleDidChange): 114778 (WebCore::RenderTextControlSingleLine::hasControlClip): 114779 (WebCore::RenderTextControlSingleLine::controlClipRect): 114780 (WebCore::RenderTextControlSingleLine::textBlockWidth): 114781 (WebCore::RenderTextControlSingleLine::preferredContentWidth): 114782 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight): 114783 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): 114784 (WebCore::RenderTextControlSingleLine::createSpeechButtonStyle): 114785 (WebCore::RenderTextControlSingleLine::clientPaddingRight): 114786 * rendering/RenderTextControlSingleLine.h: 114787 * rendering/RenderTheme.cpp: 114788 (WebCore::RenderTheme::adjustStyle): 114789 (WebCore::RenderTheme::paint): 114790 (WebCore::RenderTheme::paintBorderOnly): 114791 (WebCore::RenderTheme::paintDecorations): 114792 * rendering/TextControlInnerElements.cpp: 114793 (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): 114794 (WebCore::InputFieldSpeechButtonElement::create): 114795 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): 114796 * rendering/TextControlInnerElements.h: 114797 * rendering/style/RenderStyleConstants.h: 114798 (WebCore::): 114799 114800 2010-06-24 Kent Tamura <tkent (a] chromium.org> 114801 114802 Reviewed by Adam Barth. 114803 114804 [Mac] The upper button of <input type=number> has no visual effect on click 114805 https://bugs.webkit.org/show_bug.cgi?id=38380 114806 114807 Because we have no ways to draw an NSStepperCell with its up button 114808 highlighted, use HIThemeDrawButton() instead. 114809 114810 Test: platform/mac/fast/forms/input-appearance-spinbutton-up.html 114811 114812 * platform/mac/ThemeMac.mm: 114813 (WebCore::controlSizeFromPixelSize): 114814 New function. Made from a part of setControlSize(). 114815 (WebCore::setControlSize): 114816 (WebCore::convertControlStatesToThemeDrawState): 114817 (WebCore::paintStepper): Use HITheme API instead of NSStepperCell. 114818 (WebCore::ThemeMac::inflateControlPaintRect): 114819 Use controlSizeFromPixelSize(). 114820 114821 2010-06-24 Yury Semikhatsky <yurys (a] chromium.org> 114822 114823 Reviewed by Pavel Feldman. 114824 114825 Web Inspector: implement layout tests for debugger 114826 https://bugs.webkit.org/show_bug.cgi?id=40774 114827 114828 Test: inspector/debugger-pause-on-debugger-statement.html 114829 114830 * bindings/js/ScriptDebugServer.cpp: remove unused obsolete code that deals with global listeners. 114831 (WebCore::ScriptDebugServer::ScriptDebugServer): 114832 (WebCore::ScriptDebugServer::removeListener): 114833 (WebCore::ScriptDebugServer::dispatchFunctionToListeners): 114834 (WebCore::ScriptDebugServer::pauseIfNeeded): 114835 (WebCore::ScriptDebugServer::didAddListener): 114836 (WebCore::ScriptDebugServer::didRemoveListener): 114837 * bindings/js/ScriptDebugServer.h: 114838 * platform/mac/EventLoopMac.mm: 114839 (WebCore::EventLoop::cycle): wait at most 10ms for new event, otherwise layout tests would 114840 hang because in their case there may be no events ever. 114841 114842 2010-06-24 Andrey Kosyakov <caseq (a] chromium.org> 114843 114844 Reviewed by Yury Semikhatsky. 114845 114846 Fixed evaluation & logging of null values in console. 114847 Changed handling of null and undefined in ScriptValue::toString() 114848 to match JSC bindings (i.e. "null" and "undefined" instead of ""). 114849 https://bugs.webkit.org/show_bug.cgi?id=40980 114850 114851 * bindings/v8/ScriptValue.cpp: 114852 (WebCore::ScriptValue::toString): 114853 * inspector/front-end/InjectedScript.js: 114854 (injectedScriptConstructor): 114855 114856 2010-06-24 Yury Semikhatsky <yurys (a] chromium.org> 114857 114858 Reviewed by Pavel Feldman. 114859 114860 Web Inspector: live edit doesn't work when resource tracking is off 114861 https://bugs.webkit.org/show_bug.cgi?id=41076 114862 114863 * inspector/front-end/ScriptView.js: 114864 (WebInspector.ScriptView.prototype._sourceIDForLine): implement this method for ScriptView, 114865 it's needed for editLine to work. 114866 114867 2010-06-23 Adam Barth <abarth (a] webkit.org> 114868 114869 Reviewed by Eric Seidel. 114870 114871 Sketch out InitialMode of HTML5 tree builder 114872 https://bugs.webkit.org/show_bug.cgi?id=41126 114873 114874 Transliterated from the spec. Currently doesn't do anything. Mostly 114875 an experiment to see where this goes. 114876 114877 * html/HTMLTreeBuilder.cpp: 114878 (WebCore::HTMLTreeBuilder::processToken): 114879 (WebCore::HTMLTreeBuilder::insertDoctype): 114880 (WebCore::HTMLTreeBuilder::insertComment): 114881 * html/HTMLTreeBuilder.h: 114882 114883 2010-06-23 Adam Barth <abarth (a] webkit.org> 114884 114885 Reviewed by Eric Seidel. 114886 114887 Add all the HTML5 tree builder insertion modes 114888 https://bugs.webkit.org/show_bug.cgi?id=41124 114889 114890 These are just copied verbatim from the spec. No tests because these 114891 don't do anything yet. 114892 114893 * html/HTMLTreeBuilder.cpp: 114894 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 114895 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 114896 * html/HTMLTreeBuilder.h: 114897 (WebCore::HTMLTreeBuilder::): 114898 114899 2010-06-23 Eric Seidel <eric (a] webkit.org> 114900 114901 Unreviewed. Fix namespace indent. Just whitespace changes. 114902 114903 * dom/DocumentParser.h: 114904 (WebCore::DocumentParser::~DocumentParser): 114905 (WebCore::DocumentParser::isExecutingScript): 114906 (WebCore::DocumentParser::stopParsing): 114907 (WebCore::DocumentParser::processingData): 114908 (WebCore::DocumentParser::wantsRawData): 114909 (WebCore::DocumentParser::writeRawData): 114910 (WebCore::DocumentParser::wellFormed): 114911 (WebCore::DocumentParser::lineNumber): 114912 (WebCore::DocumentParser::columnNumber): 114913 (WebCore::DocumentParser::executeScriptsWaitingForStylesheets): 114914 (WebCore::DocumentParser::htmlTreeBuilder): 114915 (WebCore::DocumentParser::asHTMLDocumentParser): 114916 (WebCore::DocumentParser::inViewSourceMode): 114917 (WebCore::DocumentParser::setInViewSourceMode): 114918 (WebCore::DocumentParser::document): 114919 (WebCore::DocumentParser::xssAuditor): 114920 (WebCore::DocumentParser::setXSSAuditor): 114921 (WebCore::DocumentParser::DocumentParser): 114922 114923 2010-06-23 Eric Seidel <eric (a] webkit.org> 114924 114925 Unreviewed. Speculative build fix for Qt. 114926 114927 Move Document* down onto DocumentParser, since every DocumentParser needs one. 114928 https://bugs.webkit.org/show_bug.cgi?id=41117 114929 114930 XMLDocumentParserQt is a huge pile of donkey barf. 114931 I can't believe I ever r+'d the creation of this pile of 114932 copy/paste code. 114933 114934 I clearly missed removing m_doc from this code as well and thus 114935 broke Qt. 114936 114937 We really need to fix both XMLDocumentParserLibxml2 and 114938 XMLDocumentParserQt not to be so poorly abstracted so 114939 that if we're going to have two of them they can at least 114940 share some code. 114941 114942 * dom/XMLDocumentParserQt.cpp: 114943 (WebCore::XMLDocumentParser::XMLDocumentParser): 114944 (WebCore::XMLDocumentParser::~XMLDocumentParser): 114945 (WebCore::XMLDocumentParser::doWrite): 114946 (WebCore::XMLDocumentParser::doEnd): 114947 (WebCore::XMLDocumentParser::parse): 114948 (WebCore::XMLDocumentParser::startDocument): 114949 (WebCore::XMLDocumentParser::parseStartElement): 114950 (WebCore::XMLDocumentParser::parseEndElement): 114951 (WebCore::XMLDocumentParser::parseProcessingInstruction): 114952 (WebCore::XMLDocumentParser::parseCdata): 114953 (WebCore::XMLDocumentParser::parseComment): 114954 (WebCore::XMLDocumentParser::parseDtd): 114955 114956 2010-06-23 Eric Seidel <eric (a] webkit.org> 114957 114958 Reviewed by Adam Barth. 114959 114960 Move Document* down onto DocumentParser, since every DocumentParser needs one. 114961 https://bugs.webkit.org/show_bug.cgi?id=41117 114962 114963 This eliminated the need for document() on HTMLDocumentParser. 114964 This paves the way for more code sharing between various 114965 DocumentParser subclasses. 114966 114967 * dom/DocumentParser.h: 114968 (WebCore::DocumentParser::inViewSourceMode): 114969 (WebCore::DocumentParser::setInViewSourceMode): 114970 (WebCore::DocumentParser::document): 114971 (WebCore::DocumentParser::DocumentParser): 114972 * dom/XMLDocumentParser.cpp: 114973 (WebCore::XMLDocumentParser::isWMLDocument): 114974 (WebCore::XMLDocumentParser::pushCurrentNode): 114975 (WebCore::XMLDocumentParser::popCurrentNode): 114976 (WebCore::XMLDocumentParser::clearCurrentNodeStack): 114977 (WebCore::XMLDocumentParser::enterText): 114978 (WebCore::XMLDocumentParser::end): 114979 (WebCore::XMLDocumentParser::insertErrorMessageBlock): 114980 * dom/XMLDocumentParser.h: 114981 * dom/XMLDocumentParserLibxml2.cpp: 114982 (WebCore::XMLDocumentParser::XMLDocumentParser): 114983 (WebCore::XMLDocumentParser::~XMLDocumentParser): 114984 (WebCore::XMLDocumentParser::doWrite): 114985 (WebCore::XMLDocumentParser::startElementNs): 114986 (WebCore::XMLDocumentParser::endElementNs): 114987 (WebCore::XMLDocumentParser::processingInstruction): 114988 (WebCore::XMLDocumentParser::cdataBlock): 114989 (WebCore::XMLDocumentParser::comment): 114990 (WebCore::XMLDocumentParser::startDocument): 114991 (WebCore::XMLDocumentParser::internalSubset): 114992 (WebCore::XMLDocumentParser::initializeParserContext): 114993 (WebCore::XMLDocumentParser::doEnd): 114994 * html/HTMLDocumentParser.cpp: 114995 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 114996 * html/HTMLDocumentParser.h: 114997 * html/LegacyHTMLDocumentParser.cpp: 114998 (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser): 114999 (WebCore::LegacyHTMLDocumentParser::begin): 115000 (WebCore::LegacyHTMLDocumentParser::scriptHandler): 115001 (WebCore::LegacyHTMLDocumentParser::scriptExecution): 115002 (WebCore::LegacyHTMLDocumentParser::parseTag): 115003 (WebCore::LegacyHTMLDocumentParser::continueProcessing): 115004 (WebCore::LegacyHTMLDocumentParser::willWriteHTML): 115005 (WebCore::LegacyHTMLDocumentParser::didWriteHTML): 115006 (WebCore::LegacyHTMLDocumentParser::write): 115007 (WebCore::LegacyHTMLDocumentParser::stopParsing): 115008 (WebCore::LegacyHTMLDocumentParser::timerFired): 115009 (WebCore::LegacyHTMLDocumentParser::end): 115010 (WebCore::LegacyHTMLDocumentParser::processToken): 115011 (WebCore::LegacyHTMLDocumentParser::processDoctypeToken): 115012 (WebCore::LegacyHTMLDocumentParser::executeScriptsWaitingForStylesheets): 115013 (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsIfReady): 115014 (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsTimerFired): 115015 * html/LegacyHTMLDocumentParser.h: 115016 * loader/ImageDocument.cpp: 115017 (WebCore::ImageDocumentParser::ImageDocumentParser): 115018 (WebCore::ImageDocumentParser::imageDocument): 115019 (WebCore::ImageDocumentParser::write): 115020 (WebCore::ImageDocumentParser::writeRawData): 115021 (WebCore::ImageDocumentParser::finish): 115022 (WebCore::ImageDocumentParser::finishWasCalled): 115023 (WebCore::ImageDocumentParser::isWaitingForScripts): 115024 (WebCore::ImageDocument::createParser): 115025 * loader/MediaDocument.cpp: 115026 (WebCore::MediaDocumentParser::MediaDocumentParser): 115027 (WebCore::MediaDocumentParser::createDocumentStructure): 115028 (WebCore::MediaDocumentParser::finish): 115029 (WebCore::MediaDocumentParser::finishWasCalled): 115030 * loader/PluginDocument.cpp: 115031 (WebCore::PluginDocumentParser::PluginDocumentParser): 115032 (WebCore::PluginDocumentParser::createDocumentStructure): 115033 (WebCore::PluginDocumentParser::writeRawData): 115034 (WebCore::PluginDocumentParser::finish): 115035 (WebCore::PluginDocumentParser::finishWasCalled): 115036 * loader/SinkDocument.cpp: 115037 (WebCore::SinkDocumentParser::SinkDocumentParser): 115038 * loader/TextDocument.cpp: 115039 (WebCore::TextDocumentParser::TextDocumentParser): 115040 (WebCore::TextDocumentParser::write): 115041 (WebCore::TextDocumentParser::finish): 115042 (WebCore::TextDocumentParser::finishWasCalled): 115043 115044 2010-06-23 Eric Seidel <eric (a] webkit.org> 115045 115046 Reviewed by Adam Barth. 115047 115048 Start to clean up DocumentParser interface 115049 https://bugs.webkit.org/show_bug.cgi?id=41114 115050 115051 The first of many cleanups needed to the DocumentParser 115052 interface. Rename executingScript() to isExecutingScript() 115053 and make it return a bool instead of an int. Also added a 115054 FIXME to XMLDocumentParser about implementing it and did 115055 some minor other cleanup to the XMLDocumentParser header. 115056 115057 No functional change, thus no tests. 115058 115059 * dom/Document.cpp: 115060 (WebCore::Document::open): 115061 * dom/DocumentParser.h: 115062 (WebCore::DocumentParser::isExecutingScript): 115063 * dom/XMLDocumentParser.h: 115064 (WebCore::XMLDocumentParser::wellFormed): 115065 * html/HTMLDocumentParser.cpp: 115066 (WebCore::HTMLDocumentParser::attemptToEnd): 115067 (WebCore::HTMLDocumentParser::endIfDelayed): 115068 (WebCore::HTMLDocumentParser::isExecutingScript): 115069 * html/HTMLDocumentParser.h: 115070 * html/LegacyHTMLDocumentParser.h: 115071 (WebCore::LegacyHTMLDocumentParser::isExecutingScript): 115072 115073 2010-06-22 Maciej Stachowiak <mjs (a] apple.com> 115074 115075 Reviewed by Simon Fraser. 115076 115077 Implement IDL attribute for HTML5 hidden 115078 https://bugs.webkit.org/show_bug.cgi?id=41039 115079 115080 Test: fast/html/hidden-attr-dom.html 115081 115082 * html/HTMLElement.idl: Just add to the IDL file. [Reflect] takes 115083 care of the rest. 115084 115085 2010-06-23 Joanmarie Diggs <joanmarie.diggs (a] gmail.com> 115086 115087 Reviewed by Chris Fleizach. 115088 115089 [Gtk] nameFromChildren is obsolete 115090 https://bugs.webkit.org/show_bug.cgi?id=36128 115091 115092 Look to the AtkText interface implemented by the objects in 115093 question. 115094 115095 Test: platform/gtk/accessibility/name-from-label.html 115096 115097 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 115098 (webkit_accessible_get_name): 115099 (webkit_accessible_table_get_column_description): 115100 (webkit_accessible_table_get_row_description): 115101 115102 2010-06-23 Kwang Yul Seo <skyul (a] company100.net> 115103 115104 Reviewed by Kent Tamura. 115105 115106 [BREWMP] Port FileSystem 115107 https://bugs.webkit.org/show_bug.cgi?id=34323 115108 115109 Port FileSystem with IFileMgr interface. 115110 115111 * platform/FileSystem.h: 115112 * platform/brew/FileSystemBrew.cpp: Added. 115113 (WebCore::getFileSize): 115114 (WebCore::getFileModificationTime): 115115 (WebCore::fileExists): 115116 (WebCore::deleteFile): 115117 (WebCore::deleteEmptyDirectory): 115118 (WebCore::pathByAppendingComponent): 115119 (WebCore::fileSystemRepresentation): 115120 (WebCore::canonicalPath): 115121 (WebCore::makeAllDirectories): 115122 (WebCore::homeDirectoryPath): 115123 (WebCore::pathGetFileName): 115124 (WebCore::directoryName): 115125 (WebCore::openTemporaryFile): 115126 (WebCore::closeFile): 115127 (WebCore::writeToFile): 115128 (WebCore::unloadModule): 115129 (WebCore::listDirectory): 115130 115131 2010-06-23 Alexendar Pavlov <apavlov (a] chromium.org> 115132 115133 Reviewed by David Hyatt. 115134 115135 Swap checks in Position::isCandidate so that the less expensive 115136 nodeIsUserSelectNode (node && node->renderer() && 115137 node->renderer()->style()->userSelect() == SELECT_NONE) came first. 115138 115139 (Was Web Inspector: Hangup when expanding elements with enormous 115140 text node content in Elements panel). 115141 115142 https://bugs.webkit.org/show_bug.cgi?id=35926 115143 115144 * dom/Position.cpp: 115145 (WebCore::Position::isCandidate): 115146 * dom/PositionIterator.cpp: 115147 (WebCore::PositionIterator::isCandidate): 115148 115149 2010-06-23 Kwang Yul Seo <skyul (a] company100.net> 115150 115151 Reviewed by Kent Tamura. 115152 115153 [BREWMP] Add PopupMenu implementation 115154 https://bugs.webkit.org/show_bug.cgi?id=40226 115155 115156 Delegate PopupMenu handling to ChromeClientBrew. 115157 115158 * page/brew/ChromeClientBrew.h: Added. 115159 * platform/PopupMenu.h: 115160 * platform/brew/PopupMenuBrew.cpp: Added. 115161 (WebCore::PopupMenu::PopupMenu): 115162 (WebCore::PopupMenu::~PopupMenu): 115163 (WebCore::PopupMenu::show): 115164 (WebCore::PopupMenu::hide): 115165 (WebCore::PopupMenu::updateFromElement): 115166 (WebCore::PopupMenu::itemWritingDirectionIsNatural): 115167 115168 2010-06-23 Kenneth Russell <kbr (a] google.com> 115169 115170 Reviewed by Dimitri Glazkov. 115171 115172 Implement format conversions in texImage2D and texSubImage2D taking HTML data 115173 https://bugs.webkit.org/show_bug.cgi?id=40319 115174 115175 Generalized code supporting premultiplication of alpha and 115176 vertical flip to pack texture data into requested format and type. 115177 Handled incoming image data of various formats, RGBA and BGRA in 115178 particular, both to reduce the number of temporary copies during 115179 texture upload and to support premultiplying alpha for the 115180 texImage2D and texSubImage2D entry points taking ArrayBufferView 115181 in a subsequent bug. Added test case exercising all combinations 115182 of format/type combinations, premultiplication of alpha, and 115183 Image/ImageData upload. (Incorporated pnglib.js under 115184 fast/canvas/webgl/resources/ to be able to generate Image elements 115185 programmatically.) Tested in Safari on Mac OS X and in Chromium on 115186 Mac OS X, Windows and Linux. 115187 115188 Test: fast/canvas/webgl/tex-image-with-format-and-type.html 115189 115190 * html/canvas/WebGLRenderingContext.cpp: 115191 (WebCore::WebGLRenderingContext::readPixels): 115192 (WebCore::WebGLRenderingContext::texImage2DImpl): 115193 (WebCore::WebGLRenderingContext::texImage2D): 115194 (WebCore::WebGLRenderingContext::texSubImage2DImpl): 115195 (WebCore::WebGLRenderingContext::texSubImage2D): 115196 (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType): 115197 (WebCore::WebGLRenderingContext::validateTexFuncParameters): 115198 * platform/graphics/GraphicsContext3D.cpp: 115199 (WebCore::GraphicsContext3D::computeFormatAndTypeParameters): 115200 (WebCore::GraphicsContext3D::extractImageData): 115201 (WebCore::GraphicsContext3D::flipVertically): 115202 (WebCore::doUnpackingAndPacking): 115203 (WebCore::doPacking): 115204 (WebCore::GraphicsContext3D::packPixels): 115205 * platform/graphics/GraphicsContext3D.h: 115206 (WebCore::GraphicsContext3D::): 115207 * platform/graphics/cg/GraphicsContext3DCG.cpp: 115208 (WebCore::GraphicsContext3D::getImageData): 115209 * platform/graphics/mac/GraphicsContext3DMac.mm: 115210 (WebCore::narrowInternalFormat): 115211 (WebCore::GraphicsContext3D::texImage2D): 115212 * platform/graphics/qt/GraphicsContext3DQt.cpp: 115213 (WebCore::GraphicsContext3D::getImageData): 115214 * platform/graphics/skia/GraphicsContext3DSkia.cpp: 115215 (WebCore::GraphicsContext3D::getImageData): 115216 115217 2010-06-23 Stephen White <senorblanco (a] chromium.org> 115218 115219 Unreviewed; correcting bad patch. 115220 115221 In my haste to land r61710, I mistakenly landed the wrong version, in 115222 which a chunk of code was moved. This patch moves that chunk of code 115223 to where it was in the patch that was reviewed. Mea culpa. 115224 115225 * rendering/RenderBoxModelObject.cpp: 115226 (WebCore::ImageQualityController::shouldPaintAtLowQuality): 115227 115228 2010-06-23 Stephen White <senorblanco (a] chromium.org> 115229 115230 Reviewed by David Hyatt. 115231 115232 This is a tweak to the resize algorithm introduced in r61341, and 115233 is a fix for the regression described in 115234 https://bugs.webkit.org/show_bug.cgi?id=41036 115235 115236 The goal is to bring back the some of old behaviour, without regressing 115237 too much of the performance gains in r61341. 115238 115239 The old algorithm was: 115240 - on first resize, draw in high quality and record the paint time 115241 - if we've already drawn at this size, use the same quality as last time 115242 - on subsequent resizes, if the resize occurs within X ms of the 115243 previous one, draw at low quality and set a timer (one timer per 115244 image). 115245 - when each timer expires, draw that image at high quality 115246 115247 The r61341 algorithm was: 115248 - on first resize, draw the image in low quality, add it to a list of 115249 resized images, and set a timer (one timer for all images) 115250 - when the timer expires, redraw all resized images in high quality 115251 115252 The new algorithm is: 115253 - on first resize, if no other animated resizes are outstanding, draw in 115254 high quality and set the timer (one timer for all images) 115255 - if any images have been resized to two different sizes in the last 115256 X ms, draw all resized images in low quality and kick the timer 115257 forward 115258 - when the timer expires, if any animated resizes occured, redraw all 115259 resized images in high quality, and reset the flag 115260 115261 This should cause GUIMark and the IE9 demos to have good performance 115262 after the first frame, while other pages with only static resizes 115263 should be unaffected. 115264 115265 * rendering/RenderBoxModelObject.cpp: 115266 Change the LastPaintTimeMap to a LastPaintSizeMap: we now record the 115267 last size an image was resized to, rather than the time it was painted 115268 (the time actually became redundant in r61341 when I added the 115269 check for m_timer.isActive(): we only care if anything is resizing 115270 while the timer is active). 115271 (WebCore::ImageQualityController::ImageQualityController): 115272 Add an initializer for the m_animatedResizeIsActive flag. 115273 (WebCore::ImageQualityController::objectDestroyed): 115274 Reset the m_animatedResizeIsActive flag if this was the last object 115275 in the list. 115276 (WebCore::ImageQualityController::highQualityRepaintTimerFired): 115277 Only repaint all the images if there was an animated resize (otherwise, 115278 everything is already high quality). 115279 (WebCore::ImageQualityController::shouldPaintAtLowQuality): 115280 Implement the above algorithm. 115281 115282 2010-06-23 Abhishek Arya <inferno (a] chromium.org> 115283 115284 Reviewed by Kenneth Rohde Christiansen. 115285 115286 Bad cast after DOM mutation in RenderMenuList 115287 https://bugs.webkit.org/show_bug.cgi?id=40828 115288 115289 Firing the onchange event on select which changes its size > 1 causes the select 115290 object to change from a menulist to a listbox. However, when propogating the events, 115291 we do a bad cast assuming the object will remain a menulist. Added proper checks to 115292 make sure we check the renderer after the onchange is fired and propogate the event 115293 based on correct object type. 115294 115295 Test: fast/events/select-onchange-crash.html 115296 115297 * dom/SelectElement.cpp: 115298 (WebCore::SelectElement::setSelectedIndex): 115299 115300 2010-06-23 Andy Estes <aestes (a] apple.com> 115301 115302 Reviewed by Alexey Proskuryakov. 115303 115304 <rdar://problem/8107855> Prevent a crash in WebCore when removing an 115305 object element with an invalid data URL in in a listener to its 115306 beforeload event. 115307 https://bugs.webkit.org/show_bug.cgi?id=41054 115308 115309 Tests: fast/dom/beforeload/remove-bad-object-in-beforeload-listener.html 115310 115311 * html/HTMLObjectElement.cpp: 115312 (WebCore::HTMLObjectElement::renderFallbackContent): Exit early if the 115313 object element is not in the document. 115314 * rendering/RenderEmbeddedObject.cpp: 115315 (WebCore::RenderEmbeddedObject::updateWidget): If RenderWidget::destroy() 115316 was called during processing of onbeforeload, do not proceed with loading 115317 the object. 115318 115319 2010-06-23 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 115320 115321 Reviewed by Xan Lopez. 115322 115323 [gtk] web fonts not loaded properly in scribd html5 reader 115324 https://bugs.webkit.org/show_bug.cgi?id=38758 115325 115326 Drop filling the pattern with default values, because this 115327 restricts the matching more than we want. 115328 115329 * platform/graphics/cairo/FontCacheCairo.cpp: 115330 (WebCore::FontCache::createFontPlatformData): 115331 115332 2010-06-23 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 115333 115334 Reviewed by Xan Lopez. 115335 115336 [gtk] web fonts not loaded properly in scribd html5 reader 115337 https://bugs.webkit.org/show_bug.cgi?id=38758 115338 115339 Also special-case `sans' amd `mono', which are aliases commonly 115340 used in GTK+ applications. 115341 115342 * platform/graphics/cairo/FontCacheCairo.cpp: 115343 (WebCore::isWellKnownFontName): 115344 115345 2010-06-23 Justin Schuh <jschuh (a] chromium.org> 115346 115347 Unreviewed, rolling out r61695. 115348 http://trac.webkit.org/changeset/61695 115349 https://bugs.webkit.org/show_bug.cgi?id=40798 115350 115351 61695 broke all the Linux builds. 115352 115353 * platform/image-decoders/png/PNGImageDecoder.cpp: 115354 (WebCore::PNGImageDecoder::rowAvailable): 115355 115356 2010-06-23 Kevin Ollivier <kevino (a] theolliviers.com> 115357 115358 Reviewed by Darin Adler. 115359 115360 Fix PluginViewNone.cpp compilation for ports that also compile PluginView.cpp 115361 https://bugs.webkit.org/show_bug.cgi?id=37939 115362 115363 * plugins/PluginViewNone.cpp: 115364 (WebCore::PluginView::handleFocusInEvent): 115365 (WebCore::PluginView::handleFocusOutEvent): 115366 (WebCore::PluginView::keepAlive): 115367 (WebCore::PluginView::privateBrowsingStateChanged): 115368 (WebCore::PluginView::setJavaScriptPaused): 115369 115370 2010-06-23 Cris Neckar <cdn (a] chromium.org> 115371 115372 Reviewed by Darin Fisher. 115373 115374 [Chromium] Out of bounds write in WebCore::PNGImageDecoder::rowAvailable 115375 https://bugs.webkit.org/show_bug.cgi?id=40798 115376 115377 Catches error in row callback for libPNG when extra rows are returned. 115378 115379 Test: fast/images/png-extra-row-crash.html 115380 115381 * platform/image-decoders/png/PNGImageDecoder.cpp: 115382 (WebCore::PNGImageDecoder::rowAvailable): 115383 115384 2010-06-23 James Robinson <jamesr (a] chromium.org> 115385 115386 Reviewed by Dan Bernstein. 115387 115388 Do not set needsLayout when the style attribute changes on an SVG element 115389 https://bugs.webkit.org/show_bug.cgi?id=40366 115390 115391 SVGSVGElement::svgAttributeChanged was incorrectly calling renderer()->setNeedsLayout(true) 115392 whenever the styleAttr changed on its element. This could happen during layout in some 115393 circumstances due to lazy style attribute synchronization. When it did, it could cause the 115394 layout flags to become inconsistent. See the test case for details. 115395 115396 Changes to an element's style attribute always mark an element as needing layout anyway so 115397 this call was redundant. 115398 115399 Test: fast/repaint/svg-layout-root-style-attr-update.html 115400 115401 * svg/SVGStyledElement.cpp: 115402 (WebCore::SVGStyledElement::isKnownAttribute): 115403 115404 2010-06-23 Simon Fraser <simon.fraser (a] apple.com> 115405 115406 Reviewed by Dan Bernstein. 115407 115408 r61215 broke Acid3 115409 https://bugs.webkit.org/show_bug.cgi?id=41034 115410 115411 The code added in r61215, which tests whether the root renderer will fill 115412 the entire viewport, should not run for subframes. So bail from 115413 RenderView::paintBoxDecorations() if document()->ownerElement() is not null. 115414 The old code was trying to do this by checking 'elt', but that ends up as 115415 null after the for loop above. 115416 115417 We can also bail early if the is no FrameView(). 115418 115419 Test: fast/frames/paint-iframe-background.html 115420 115421 * rendering/RenderView.cpp: 115422 (WebCore::RenderView::paintBoxDecorations): 115423 115424 2010-06-23 Pavel Feldman <pfeldman (a] chromium.org> 115425 115426 Reviewed by Yury Semikhatsky. 115427 115428 Web Inspector: do not reset profiles panel on navigation. 115429 115430 https://bugs.webkit.org/show_bug.cgi?id=41068 115431 115432 * inspector/InspectorController.cpp: 115433 (WebCore::InspectorController::didCommitLoad): 115434 * inspector/InspectorFrontend.cpp: 115435 (WebCore::InspectorFrontend::resetProfilesPanel): 115436 * inspector/InspectorFrontend.h: 115437 * inspector/front-end/ProfilesPanel.js: 115438 (WebInspector.ProfilesPanel): 115439 (WebInspector.ProfilesPanel.prototype.populateInterface): 115440 (WebInspector.ProfilesPanel.prototype.profilerWasDisabled): 115441 (WebInspector.ProfilesPanel.prototype._reset): 115442 (WebInspector.ProfilesPanel.prototype._clearProfiles): 115443 * inspector/front-end/inspector.js: 115444 (WebInspector.resetProfilesPanel): 115445 115446 2010-06-23 Yury Semikhatsky <yurys (a] chromium.org> 115447 115448 Reviewed by Pavel Feldman. 115449 115450 Web Inspector: InspectorController should be added only once as ScriptDebugListener to 115451 ScriptDebugServer. 115452 https://bugs.webkit.org/show_bug.cgi?id=41070 115453 115454 * inspector/InspectorController.cpp: 115455 (WebCore::InspectorController::connectFrontend): 115456 (WebCore::InspectorController::disconnectFrontend): 115457 (WebCore::InspectorController::enableDebuggerFromFrontend): 115458 * inspector/front-end/ScriptsPanel.js: 115459 (WebInspector.ScriptsPanel): don't call InspectorBackend.enableDebugger if debugger is always enabled, 115460 InspectorController will do this on its side when the front end is connected. 115461 115462 2010-06-23 Pavel Podivilov <podivilov (a] chromium.org> 115463 115464 Reviewed by Yury Semikhatsky. 115465 115466 Clear breakpoints before restoring them, not after. 115467 https://bugs.webkit.org/show_bug.cgi?id=41071 115468 115469 * inspector/InspectorController.cpp: 115470 (WebCore::InspectorController::enableDebuggerFromFrontend): 115471 115472 2010-06-23 Benjamin Poulain <benjamin.poulain (a] nokia.com> 115473 115474 Reviewed by Kenneth Rohde Christiansen. 115475 115476 Do not render the full frame when there is some elements with fixed positioning 115477 https://bugs.webkit.org/show_bug.cgi?id=33150 115478 115479 Do not render the full frame when there is some elements with fixed positioning 115480 https://bugs.webkit.org/show_bug.cgi?id=33150 115481 115482 The frame view take into acount the list of fixed object when scrolling 115483 the view. If the number of object is lower than a certain threshold, the pixel 115484 are blitted, and the invalidated area updated. 115485 115486 * page/FrameView.cpp: 115487 (WebCore::FrameView::addFixedObject): 115488 (WebCore::FrameView::removeFixedObject): 115489 (WebCore::FrameView::scrollContentsFastPath): 115490 * page/FrameView.h: 115491 * platform/ScrollView.cpp: 115492 (WebCore::ScrollView::scrollContents): 115493 (WebCore::ScrollView::scrollContentsFastPath): 115494 * platform/ScrollView.h: 115495 * rendering/RenderLayer.cpp: 115496 (WebCore::RenderLayer::repaintRectIncludingDescendants): 115497 * rendering/RenderLayer.h: 115498 * rendering/RenderObject.cpp: 115499 (WebCore::RenderObject::styleWillChange): 115500 115501 2010-06-23 Mikhail Naganov <mnaganov (a] chromium.org> 115502 115503 Reviewed by Pavel Feldman. 115504 115505 Web Inspector: Fix displaying of several CPU profiles with the same name. 115506 115507 https://bugs.webkit.org/show_bug.cgi?id=40992 115508 115509 * inspector/front-end/ProfilesPanel.js: 115510 (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect): 115511 115512 2010-06-23 Adam Barth <abarth (a] webkit.org> 115513 115514 Unreviewed. clean-header-guards that were made dirty by recent 115515 renames. 115516 115517 * html/HTMLDocumentParser.h: 115518 * html/HTMLPreloadScanner.h: 115519 * html/HTMLTokenizer.h: 115520 * html/HTMLTreeBuilder.h: 115521 * html/LegacyHTMLDocumentParser.h: 115522 * html/LegacyHTMLTreeBuilder.h: 115523 * html/LegacyPreloadScanner.h: 115524 115525 2010-06-23 Adam Barth <abarth (a] webkit.org> 115526 115527 Reviewed by Eric Seidel. 115528 115529 Rename LegacyHTMLTreeConstructor to LegacyHTMLTreeBuilder 115530 https://bugs.webkit.org/show_bug.cgi?id=41053 115531 115532 There was some debate about whether to call this class (and the 115533 non-legacy version) "tree builder" or "tree constructor". Maciej 115534 pointed out that other implementations (including Mozilla and HTML5Lib) 115535 call it a tree builder. The path of least resistance seems to be call 115536 it that for now. 115537 115538 * Android.mk: 115539 * CMakeLists.txt: 115540 * GNUmakefile.am: 115541 * WebCore.gypi: 115542 * WebCore.pro: 115543 * WebCore.vcproj/WebCore.vcproj: 115544 * WebCore.xcodeproj/project.pbxproj: 115545 * dom/Document.cpp: 115546 * dom/DocumentParser.h: 115547 (WebCore::DocumentParser::htmlTreeConstructor): 115548 * html/HTMLDocumentParser.cpp: 115549 (WebCore::HTMLDocumentParser::htmlTreeConstructor): 115550 * html/HTMLDocumentParser.h: 115551 * html/HTMLFormControlElement.cpp: 115552 (WebCore::HTMLFormControlElement::removedFromTree): 115553 * html/HTMLInputElement.cpp: 115554 * html/HTMLMeterElement.cpp: 115555 * html/HTMLProgressElement.cpp: 115556 * html/HTMLTreeBuilder.cpp: 115557 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 115558 * html/HTMLTreeBuilder.h: 115559 (WebCore::HTMLTreeBuilder::legacyTreeConstructor): 115560 * html/LegacyHTMLDocumentParser.cpp: 115561 (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser): 115562 * html/LegacyHTMLDocumentParser.h: 115563 (WebCore::LegacyHTMLDocumentParser::htmlTreeConstructor): 115564 * html/LegacyHTMLTreeBuilder.cpp: Copied from WebCore/html/LegacyHTMLTreeConstructor.cpp. 115565 (WebCore::LegacyHTMLTreeBuilder::LegacyHTMLTreeBuilder): 115566 (WebCore::LegacyHTMLTreeBuilder::~LegacyHTMLTreeBuilder): 115567 (WebCore::LegacyHTMLTreeBuilder::reset): 115568 (WebCore::LegacyHTMLTreeBuilder::setCurrent): 115569 (WebCore::LegacyHTMLTreeBuilder::limitDepth): 115570 (WebCore::LegacyHTMLTreeBuilder::insertNodeAfterLimitDepth): 115571 (WebCore::LegacyHTMLTreeBuilder::parseToken): 115572 (WebCore::LegacyHTMLTreeBuilder::parseDoctypeToken): 115573 (WebCore::LegacyHTMLTreeBuilder::insertNode): 115574 (WebCore::LegacyHTMLTreeBuilder::handleError): 115575 (WebCore::LegacyHTMLTreeBuilder::textCreateErrorCheck): 115576 (WebCore::LegacyHTMLTreeBuilder::commentCreateErrorCheck): 115577 (WebCore::LegacyHTMLTreeBuilder::headCreateErrorCheck): 115578 (WebCore::LegacyHTMLTreeBuilder::bodyCreateErrorCheck): 115579 (WebCore::LegacyHTMLTreeBuilder::framesetCreateErrorCheck): 115580 (WebCore::LegacyHTMLTreeBuilder::formCreateErrorCheck): 115581 (WebCore::LegacyHTMLTreeBuilder::isindexCreateErrorCheck): 115582 (WebCore::LegacyHTMLTreeBuilder::selectCreateErrorCheck): 115583 (WebCore::LegacyHTMLTreeBuilder::ddCreateErrorCheck): 115584 (WebCore::LegacyHTMLTreeBuilder::dtCreateErrorCheck): 115585 (WebCore::LegacyHTMLTreeBuilder::rpCreateErrorCheck): 115586 (WebCore::LegacyHTMLTreeBuilder::rtCreateErrorCheck): 115587 (WebCore::LegacyHTMLTreeBuilder::nestedCreateErrorCheck): 115588 (WebCore::LegacyHTMLTreeBuilder::nestedPCloserCreateErrorCheck): 115589 (WebCore::LegacyHTMLTreeBuilder::nestedStyleCreateErrorCheck): 115590 (WebCore::LegacyHTMLTreeBuilder::tableCellCreateErrorCheck): 115591 (WebCore::LegacyHTMLTreeBuilder::tableSectionCreateErrorCheck): 115592 (WebCore::LegacyHTMLTreeBuilder::noembedCreateErrorCheck): 115593 (WebCore::LegacyHTMLTreeBuilder::noframesCreateErrorCheck): 115594 (WebCore::LegacyHTMLTreeBuilder::noscriptCreateErrorCheck): 115595 (WebCore::LegacyHTMLTreeBuilder::pCloserCreateErrorCheck): 115596 (WebCore::LegacyHTMLTreeBuilder::pCloserStrictCreateErrorCheck): 115597 (WebCore::LegacyHTMLTreeBuilder::mapCreateErrorCheck): 115598 (WebCore::LegacyHTMLTreeBuilder::getNode): 115599 (WebCore::LegacyHTMLTreeBuilder::allowNestedRedundantTag): 115600 (WebCore::LegacyHTMLTreeBuilder::processCloseTag): 115601 (WebCore::LegacyHTMLTreeBuilder::isHeadingTag): 115602 (WebCore::LegacyHTMLTreeBuilder::isInline): 115603 (WebCore::LegacyHTMLTreeBuilder::isResidualStyleTag): 115604 (WebCore::LegacyHTMLTreeBuilder::isAffectedByResidualStyle): 115605 (WebCore::LegacyHTMLTreeBuilder::handleResidualStyleCloseTagAcrossBlocks): 115606 (WebCore::LegacyHTMLTreeBuilder::reopenResidualStyleTags): 115607 (WebCore::LegacyHTMLTreeBuilder::pushBlock): 115608 (WebCore::LegacyHTMLTreeBuilder::popBlock): 115609 (WebCore::LegacyHTMLTreeBuilder::popOneBlockCommon): 115610 (WebCore::LegacyHTMLTreeBuilder::popOneBlock): 115611 (WebCore::LegacyHTMLTreeBuilder::moveOneBlockToStack): 115612 (WebCore::LegacyHTMLTreeBuilder::checkIfHasPElementInScope): 115613 (WebCore::LegacyHTMLTreeBuilder::popInlineBlocks): 115614 (WebCore::LegacyHTMLTreeBuilder::freeBlock): 115615 (WebCore::LegacyHTMLTreeBuilder::createHead): 115616 (WebCore::LegacyHTMLTreeBuilder::handleIsindex): 115617 (WebCore::LegacyHTMLTreeBuilder::startBody): 115618 (WebCore::LegacyHTMLTreeBuilder::finished): 115619 (WebCore::LegacyHTMLTreeBuilder::reportErrorToConsole): 115620 * html/LegacyHTMLTreeBuilder.h: Copied from WebCore/html/LegacyHTMLTreeConstructor.h. 115621 * html/LegacyHTMLTreeConstructor.cpp: Removed. 115622 * html/LegacyHTMLTreeConstructor.h: Removed. 115623 * html/StepRange.cpp: 115624 * html/ValidityState.cpp: 115625 * rendering/RenderSlider.cpp: 115626 115627 2010-06-23 Adam Barth <abarth (a] webkit.org> 115628 115629 Reviewed by Eric Seidel. 115630 115631 Rename the preload scanners 115632 https://bugs.webkit.org/show_bug.cgi?id=41052 115633 115634 Renames PreloadScanner to LegacyPreloadScanner because this code is now 115635 off by default. Also, rename HTML5PreloadScanner to 115636 HTMLPreloadScanner. We're not calling it PreloadScanner because we've 115637 factored out the CSSPreloadScanner and the HTMLPreloadScanner from the 115638 original PreloadScanner. 115639 115640 * Android.mk: 115641 * CMakeLists.txt: 115642 * GNUmakefile.am: 115643 * WebCore.gypi: 115644 * WebCore.pro: 115645 * WebCore.vcproj/WebCore.vcproj: 115646 * WebCore.xcodeproj/project.pbxproj: 115647 * html/HTML5PreloadScanner.cpp: Removed. 115648 * html/HTML5PreloadScanner.h: Removed. 115649 * html/HTMLDocumentParser.cpp: 115650 (WebCore::HTMLDocumentParser::pumpTokenizer): 115651 * html/HTMLDocumentParser.h: 115652 * html/HTMLPreloadScanner.cpp: Copied from WebCore/html/HTML5PreloadScanner.cpp. 115653 (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): 115654 (WebCore::HTMLPreloadScanner::appendToEnd): 115655 (WebCore::HTMLPreloadScanner::scan): 115656 (WebCore::HTMLPreloadScanner::processToken): 115657 (WebCore::HTMLPreloadScanner::scanningBody): 115658 * html/HTMLPreloadScanner.h: Copied from WebCore/html/HTML5PreloadScanner.h. 115659 * html/LegacyHTMLDocumentParser.cpp: 115660 (WebCore::LegacyHTMLDocumentParser::scriptHandler): 115661 (WebCore::LegacyHTMLDocumentParser::scriptExecution): 115662 * html/LegacyHTMLDocumentParser.h: 115663 * html/LegacyPreloadScanner.cpp: Copied from WebCore/html/PreloadScanner.cpp. 115664 (WebCore::LegacyPreloadScanner::LegacyPreloadScanner): 115665 (WebCore::LegacyPreloadScanner::~LegacyPreloadScanner): 115666 (WebCore::LegacyPreloadScanner::begin): 115667 (WebCore::LegacyPreloadScanner::end): 115668 (WebCore::LegacyPreloadScanner::reset): 115669 (WebCore::LegacyPreloadScanner::scanningBody): 115670 (WebCore::LegacyPreloadScanner::write): 115671 (WebCore::LegacyPreloadScanner::clearLastCharacters): 115672 (WebCore::LegacyPreloadScanner::rememberCharacter): 115673 (WebCore::LegacyPreloadScanner::lastCharactersMatch): 115674 (WebCore::LegacyPreloadScanner::consumeEntity): 115675 (WebCore::LegacyPreloadScanner::tokenize): 115676 (WebCore::LegacyPreloadScanner::processAttribute): 115677 (WebCore::LegacyPreloadScanner::emitCharacter): 115678 (WebCore::LegacyPreloadScanner::tokenizeCSS): 115679 (WebCore::LegacyPreloadScanner::emitTag): 115680 (WebCore::LegacyPreloadScanner::emitCSSRule): 115681 * html/LegacyPreloadScanner.h: Copied from WebCore/html/PreloadScanner.h. 115682 * html/PreloadScanner.cpp: Removed. 115683 * html/PreloadScanner.h: Removed. 115684 * page/XSSAuditor.cpp: 115685 (WebCore::XSSAuditor::decodeHTMLEntities): 115686 115687 2010-06-23 Adam Barth <abarth (a] webkit.org> 115688 115689 Reviewed by Eric Seidel. 115690 115691 Yet more HTML5 => HTML renames 115692 https://bugs.webkit.org/show_bug.cgi?id=41051 115693 115694 This patch renames HTML5DocumentParser to HTMLDocumentParser and 115695 HTML5TreeBuilder to HTMLTreeBuilder. There was some discussion about 115696 whether to use the name HTMLTreeBuilder or HTMLTreeConstructor, but 115697 tree builder seems to be the dominate name in other implementations. 115698 115699 * Android.mk: 115700 * CMakeLists.txt: 115701 * GNUmakefile.am: 115702 * WebCore.gypi: 115703 * WebCore.pro: 115704 * WebCore.vcproj/WebCore.vcproj: 115705 * WebCore.xcodeproj/project.pbxproj: 115706 * dom/DocumentFragment.cpp: 115707 (WebCore::DocumentFragment::parseHTML): 115708 * html/HTML5DocumentParser.cpp: Removed. 115709 * html/HTML5DocumentParser.h: Removed. 115710 * html/HTML5PreloadScanner.cpp: 115711 (WebCore::HTML5PreloadScanner::scan): 115712 (WebCore::HTML5PreloadScanner::processToken): 115713 * html/HTML5TreeBuilder.cpp: Removed. 115714 * html/HTML5TreeBuilder.h: Removed. 115715 * html/HTMLDocument.cpp: 115716 (WebCore::HTMLDocument::createParser): 115717 * html/HTMLDocumentParser.cpp: Copied from WebCore/html/HTML5DocumentParser.cpp. 115718 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 115719 (WebCore::HTMLDocumentParser::~HTMLDocumentParser): 115720 (WebCore::HTMLDocumentParser::begin): 115721 (WebCore::HTMLDocumentParser::stopParsing): 115722 (WebCore::HTMLDocumentParser::processingData): 115723 (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible): 115724 (WebCore::HTMLDocumentParser::isScheduledForResume): 115725 (WebCore::HTMLDocumentParser::resumeParsingAfterYield): 115726 (WebCore::HTMLDocumentParser::runScriptsForPausedTreeConstructor): 115727 (WebCore::HTMLDocumentParser::pumpTokenizer): 115728 (WebCore::HTMLDocumentParser::willPumpLexer): 115729 (WebCore::HTMLDocumentParser::didPumpLexer): 115730 (WebCore::HTMLDocumentParser::write): 115731 (WebCore::HTMLDocumentParser::end): 115732 (WebCore::HTMLDocumentParser::attemptToEnd): 115733 (WebCore::HTMLDocumentParser::endIfDelayed): 115734 (WebCore::HTMLDocumentParser::finish): 115735 (WebCore::HTMLDocumentParser::finishWasCalled): 115736 (WebCore::HTMLDocumentParser::executingScript): 115737 (WebCore::HTMLDocumentParser::inScriptExecution): 115738 (WebCore::HTMLDocumentParser::lineNumber): 115739 (WebCore::HTMLDocumentParser::columnNumber): 115740 (WebCore::HTMLDocumentParser::htmlTreeConstructor): 115741 (WebCore::HTMLDocumentParser::isWaitingForScripts): 115742 (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution): 115743 (WebCore::HTMLDocumentParser::watchForLoad): 115744 (WebCore::HTMLDocumentParser::stopWatchingForLoad): 115745 (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc): 115746 (WebCore::HTMLDocumentParser::notifyFinished): 115747 (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets): 115748 (WebCore::HTMLDocumentParser::script): 115749 * html/HTMLDocumentParser.h: Copied from WebCore/html/HTML5DocumentParser.h. 115750 * html/HTMLParserScheduler.cpp: 115751 (WebCore::HTMLParserScheduler::HTMLParserScheduler): 115752 * html/HTMLParserScheduler.h: 115753 * html/HTMLTreeBuilder.cpp: Copied from WebCore/html/HTML5TreeBuilder.cpp. 115754 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): 115755 (WebCore::HTMLTreeBuilder::~HTMLTreeBuilder): 115756 (WebCore::HTMLTreeBuilder::handleScriptStartTag): 115757 (WebCore::HTMLTreeBuilder::handleScriptEndTag): 115758 (WebCore::HTMLTreeBuilder::takeScriptToProcess): 115759 (WebCore::HTMLTreeBuilder::adjustedLexerState): 115760 (WebCore::HTMLTreeBuilder::passTokenToLegacyParser): 115761 (WebCore::HTMLTreeBuilder::constructTreeFromToken): 115762 (WebCore::HTMLTreeBuilder::processToken): 115763 (WebCore::HTMLTreeBuilder::finished): 115764 (WebCore::HTMLTreeBuilder::isScriptingFlagEnabled): 115765 * html/HTMLTreeBuilder.h: Copied from WebCore/html/HTML5TreeBuilder.h. 115766 115767 2010-06-23 Adam Barth <abarth (a] webkit.org> 115768 115769 Reviewed by Eric Seidel. 115770 115771 More HTML5 => HTML renames 115772 https://bugs.webkit.org/show_bug.cgi?id=41049 115773 115774 This patch renames HTML5ScriptRunner, HTML5ScriptRunnerHost, and 115775 HTML5Token to remove the "5" from their names. These clases aren't 115776 specific to HTML5 and will be used going forward. 115777 115778 * Android.mk: 115779 * CMakeLists.txt: 115780 * GNUmakefile.am: 115781 * WebCore.gypi: 115782 * WebCore.pro: 115783 * WebCore.vcproj/WebCore.vcproj: 115784 * WebCore.xcodeproj/project.pbxproj: 115785 * html/CSSPreloadScanner.cpp: 115786 (WebCore::CSSPreloadScanner::scan): 115787 * html/CSSPreloadScanner.h: 115788 * html/HTML5DocumentParser.cpp: 115789 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 115790 (WebCore::HTML5DocumentParser::notifyFinished): 115791 * html/HTML5DocumentParser.h: 115792 * html/HTML5PreloadScanner.cpp: 115793 (WebCore::HTMLNames::PreloadTask::PreloadTask): 115794 (WebCore::HTMLNames::PreloadTask::processAttributes): 115795 (WebCore::HTML5PreloadScanner::processToken): 115796 * html/HTML5PreloadScanner.h: 115797 * html/HTML5ScriptRunner.cpp: Removed. 115798 * html/HTML5ScriptRunner.h: Removed. 115799 * html/HTML5ScriptRunnerHost.h: Removed. 115800 * html/HTML5Token.h: Removed. 115801 * html/HTML5TreeBuilder.cpp: 115802 (WebCore::convertToOldStyle): 115803 (WebCore::HTML5TreeBuilder::handleScriptEndTag): 115804 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 115805 (WebCore::HTML5TreeBuilder::constructTreeFromToken): 115806 (WebCore::HTML5TreeBuilder::processToken): 115807 * html/HTML5TreeBuilder.h: 115808 * html/HTMLScriptRunner.cpp: Copied from WebCore/html/HTML5ScriptRunner.cpp. 115809 (WebCore::HTMLScriptRunner::HTMLScriptRunner): 115810 (WebCore::HTMLScriptRunner::~HTMLScriptRunner): 115811 (WebCore::HTMLScriptRunner::sourceFromPendingScript): 115812 (WebCore::HTMLScriptRunner::isPendingScriptReady): 115813 (WebCore::HTMLScriptRunner::executePendingScript): 115814 (WebCore::HTMLScriptRunner::executeScript): 115815 (WebCore::HTMLScriptRunner::hasScriptsWaitingForLoad): 115816 (WebCore::HTMLScriptRunner::watchForLoad): 115817 (WebCore::HTMLScriptRunner::stopWatchingForLoad): 115818 (WebCore::HTMLScriptRunner::execute): 115819 (WebCore::HTMLScriptRunner::haveParsingBlockingScript): 115820 (WebCore::HTMLScriptRunner::executeParsingBlockingScripts): 115821 (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad): 115822 (WebCore::HTMLScriptRunner::executeScriptsWaitingForStylesheets): 115823 (WebCore::HTMLScriptRunner::requestScript): 115824 (WebCore::HTMLScriptRunner::runScript): 115825 * html/HTMLScriptRunner.h: Copied from WebCore/html/HTML5ScriptRunner.h. 115826 * html/HTMLScriptRunnerHost.h: Copied from WebCore/html/HTML5ScriptRunnerHost.h. 115827 (WebCore::HTMLScriptRunnerHost::~HTMLScriptRunnerHost): 115828 * html/HTMLToken.h: Copied from WebCore/html/HTML5Token.h. 115829 (WebCore::HTMLToken::HTMLToken): 115830 * html/HTMLTokenizer.cpp: 115831 (WebCore::HTMLTokenizer::nextToken): 115832 (WebCore::HTMLTokenizer::emitCharacter): 115833 (WebCore::HTMLTokenizer::emitCurrentToken): 115834 (WebCore::HTMLTokenizer::shouldEmitBufferedCharacterToken): 115835 * html/HTMLTokenizer.h: 115836 115837 2010-06-23 Adam Barth <abarth (a] webkit.org> 115838 115839 Reviewed by Eric Seidel. 115840 115841 Rename HTML5EntityParser to HTMLEntityParser 115842 https://bugs.webkit.org/show_bug.cgi?id=41048 115843 115844 Mostly the result of do-webcore-rename, but I tweaked the header guard 115845 and the name of the free function. 115846 115847 * Android.mk: 115848 * CMakeLists.txt: 115849 * GNUmakefile.am: 115850 * WebCore.gypi: 115851 * WebCore.pro: 115852 * WebCore.vcproj/WebCore.vcproj: 115853 * WebCore.xcodeproj/project.pbxproj: 115854 * html/HTML5EntityParser.cpp: Removed. 115855 * html/HTML5EntityParser.h: Removed. 115856 * html/HTMLEntityParser.cpp: Copied from WebCore/html/HTML5EntityParser.cpp. 115857 (WebCore::consumeHTMLEntity): 115858 * html/HTMLEntityParser.h: Copied from WebCore/html/HTML5EntityParser.h. 115859 * html/HTMLTokenizer.cpp: 115860 (WebCore::HTMLTokenizer::processEntity): 115861 (WebCore::HTMLTokenizer::nextToken): 115862 115863 2010-06-22 Yuta Kitamura <yutak (a] chromium.org> 115864 115865 Reviewed by Alexey Proskuryakov. 115866 115867 Add a new class that stores information about WebSocket handshake response. 115868 115869 In the future, instances of the new class will be passed to the Web Inspector 115870 so that it will be able to display information about WebSocket handshake 115871 response. 115872 115873 WebSocket: Add WebSocketHandshakeResponse 115874 https://bugs.webkit.org/show_bug.cgi?id=38728 115875 115876 Test: websocket/tests/handshake-fail-by-no-cr.html 115877 115878 * GNUmakefile.am: 115879 * WebCore.gypi: 115880 * WebCore.pro: 115881 * WebCore.vcproj/WebCore.vcproj: 115882 * WebCore.xcodeproj/project.pbxproj: 115883 * websockets/WebSocketHandshake.cpp: 115884 (WebCore::trimConsoleMessage): 115885 (WebCore::WebSocketHandshake::readServerHandshake): 115886 (WebCore::WebSocketHandshake::serverHandshakeResponse): 115887 (WebCore::WebSocketHandshake::readStatusLine): Moved from extractResponseCode. 115888 Add more error checks and make error messages more descriptive. 115889 (WebCore::WebSocketHandshake::readHTTPHeaders): 115890 (WebCore::WebSocketHandshake::processHeaders): 115891 * websockets/WebSocketHandshake.h: 115892 * websockets/WebSocketHandshakeResponse.cpp: Added. 115893 (WebCore::WebSocketHandshakeResponse::ChallengeResponse::ChallengeResponse): 115894 (WebCore::WebSocketHandshakeResponse::ChallengeResponse::set): 115895 (WebCore::WebSocketHandshakeResponse::WebSocketHandshakeResponse): 115896 (WebCore::WebSocketHandshakeResponse::~WebSocketHandshakeResponse): 115897 (WebCore::WebSocketHandshakeResponse::statusCode): 115898 (WebCore::WebSocketHandshakeResponse::setStatusCode): 115899 (WebCore::WebSocketHandshakeResponse::statusText): 115900 (WebCore::WebSocketHandshakeResponse::setStatusText): 115901 (WebCore::WebSocketHandshakeResponse::headerFields): 115902 (WebCore::WebSocketHandshakeResponse::addHeaderField): 115903 (WebCore::WebSocketHandshakeResponse::clearHeaderFields): 115904 (WebCore::WebSocketHandshakeResponse::challengeResponse): 115905 (WebCore::WebSocketHandshakeResponse::setChallengeResponse): 115906 * websockets/WebSocketHandshakeResponse.h: Added. 115907 115908 2010-06-23 Yuzo Fujishima <yuzo (a] google.com> 115909 115910 Reviewed by Shinichiro Hamaji. 115911 115912 Implement page format data programming interface. 115913 The final goal is to implement CSS Paged Media Module Level 3 (http://dev.w3.org/csswg/css3-page/). 115914 To begin with, this change adds methods to know: 115915 - if page box is visible, 115916 - the page area rectangle, and 115917 - preferred page size. 115918 115919 https://bugs.webkit.org/show_bug.cgi?id=37538 115920 115921 Test: printing/page-format-data.html 115922 115923 * WebCore.base.exp: 115924 * css/CSSParser.cpp: 115925 (WebCore::CSSParser::parseSizeParameter): 115926 * css/CSSStyleSelector.cpp: 115927 (WebCore::CSSStyleSelector::applyProperty): 115928 (WebCore::CSSStyleSelector::applyPageSizeProperty): 115929 (WebCore::CSSStyleSelector::pageSizeFromName): 115930 (WebCore::CSSStyleSelector::mmLength): 115931 (WebCore::CSSStyleSelector::inchLength): 115932 * css/CSSStyleSelector.h: 115933 * css/html.css: 115934 (@page): 115935 * dom/Document.cpp: 115936 (WebCore::Document::isPageBoxVisible): 115937 (WebCore::Document::pageAreaRectInPixels): 115938 (WebCore::Document::preferredPageSizeInPixels): 115939 * dom/Document.h: 115940 * page/PrintContext.cpp: 115941 (WebCore::PrintContext::isPageBoxVisible): 115942 (WebCore::PrintContext::pageAreaRectInPixels): 115943 (WebCore::PrintContext::preferredPageSizeInPixels): 115944 * page/PrintContext.h: 115945 * rendering/style/RenderStyle.h: 115946 (WebCore::InheritedFlags::pageSize): 115947 (WebCore::InheritedFlags::setPageSize): 115948 * rendering/style/StyleRareNonInheritedData.h: 115949 115950 2010-06-23 Adam Barth <abarth (a] webkit.org> 115951 115952 Reviewed by Eric Seidel. 115953 115954 Rename lexer and m_lexer to tokenizer and m_tokenizer, respectively 115955 https://bugs.webkit.org/show_bug.cgi?id=41046 115956 115957 This is a follow up to the recent HTML5Lexer => HTMLTokenizer rename. 115958 115959 * html/HTML5DocumentParser.cpp: 115960 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 115961 (WebCore::HTML5DocumentParser::begin): 115962 (WebCore::HTML5DocumentParser::pumpLexer): 115963 (WebCore::HTML5DocumentParser::willPumpLexer): 115964 (WebCore::HTML5DocumentParser::didPumpLexer): 115965 (WebCore::HTML5DocumentParser::lineNumber): 115966 (WebCore::HTML5DocumentParser::columnNumber): 115967 * html/HTML5DocumentParser.h: 115968 * html/HTML5PreloadScanner.cpp: 115969 (WebCore::HTML5PreloadScanner::scan): 115970 (WebCore::HTML5PreloadScanner::processToken): 115971 * html/HTML5PreloadScanner.h: 115972 * html/HTML5TreeBuilder.cpp: 115973 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 115974 (WebCore::HTML5TreeBuilder::handleScriptStartTag): 115975 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 115976 * html/HTML5TreeBuilder.h: 115977 * html/HTMLTokenizer.h: 115978 * html/LegacyHTMLDocumentParser.h: 115979 115980 2010-06-23 Nikolas Zimmermann <nzimmermann (a] rim.com> 115981 115982 Reviewed by Eric Seidel. 115983 115984 Reproducible crash in com.apple.WebCore 0x01ed3784 WebCore::RenderLineBoxList::appendLineBox(WebCore::InlineFlowBox*) + 36 115985 https://bugs.webkit.org/show_bug.cgi?id=40953 115986 115987 REGRESSION (r58209-58231): Memory corruption with invalid SVG 115988 https://bugs.webkit.org/show_bug.cgi?id=40173 115989 115990 Fix several crashes, all related to <foreignObject> and/or invalid SVG documents. 115991 - Only allow <svg> nodes, as direct children of a <foreignObject>, not any other "partial" SVG content. 115992 - Assure to create RenderSVGRoot objects for <svg> nodes in <foreignObject>, treat them as "outermost SVG elements". 115993 - Never allow any partial SVG content to appear in any document. Only <svg> elements are allowed. 115994 115995 Tests: svg/custom/bug45331.svg 115996 svg/foreignObject/disallowed-svg-nodes-as-direct-children.svg 115997 svg/foreignObject/no-crash-with-svg-content-in-html-document.svg 115998 svg/foreignObject/svg-document-as-direct-child.svg 115999 svg/foreignObject/svg-document-in-html-document.svg 116000 svg/foreignObject/text-tref-02-b.svg 116001 116002 * dom/Element.cpp: Added childShouldCreateRenderer, with ENABLE(SVG) guards. 116003 (WebCore::Element::childShouldCreateRenderer): Only create a renderer for a SVG child, if we're a SVG element, or if the child is a <svg> element. 116004 * dom/Element.h: Added childShouldCreateRenderer, with ENABLE(SVG) guards. 116005 * svg/SVGForeignObjectElement.cpp: 116006 (WebCore::SVGForeignObjectElement::childShouldCreateRenderer): Disallow arbitary SVG content, only <svg> elements are allowed as direct children of a <foreignObject> 116007 * svg/SVGSVGElement.cpp: 116008 (WebCore::SVGSVGElement::isOutermostSVG): Be sure to create RenderSVGRoot objects for <svg> elements inside <foreignObject> 116009 116010 2010-06-22 Adam Barth <abarth (a] webkit.org> 116011 116012 Reviewed by Eric Seidel. 116013 116014 Rename HTML5Lexer to HTMLTokenizer 116015 https://bugs.webkit.org/show_bug.cgi?id=41045 116016 116017 This might be slightly confusing given that the old class was called 116018 HTMLTokenizer, but it matches the terminology in the HTML5 spec. 116019 116020 * Android.mk: 116021 * CMakeLists.txt: 116022 * GNUmakefile.am: 116023 * WebCore.gypi: 116024 * WebCore.pro: 116025 * WebCore.vcproj/WebCore.vcproj: 116026 * WebCore.xcodeproj/project.pbxproj: 116027 * html/HTML5DocumentParser.cpp: 116028 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 116029 (WebCore::HTML5DocumentParser::pumpLexer): 116030 * html/HTML5DocumentParser.h: 116031 * html/HTML5Lexer.cpp: Removed. 116032 * html/HTML5Lexer.h: Removed. 116033 * html/HTML5PreloadScanner.cpp: 116034 (WebCore::HTML5PreloadScanner::processToken): 116035 * html/HTML5PreloadScanner.h: 116036 * html/HTML5TreeBuilder.cpp: 116037 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 116038 (WebCore::HTML5TreeBuilder::handleScriptStartTag): 116039 (WebCore::HTML5TreeBuilder::adjustedLexerState): 116040 * html/HTML5TreeBuilder.h: 116041 * html/HTMLTokenizer.cpp: Copied from WebCore/html/HTML5Lexer.cpp. 116042 (WebCore::HTMLNames::isEndTagBufferingState): 116043 (WebCore::HTMLTokenizer::HTMLTokenizer): 116044 (WebCore::HTMLTokenizer::~HTMLTokenizer): 116045 (WebCore::HTMLTokenizer::reset): 116046 (WebCore::HTMLTokenizer::processEntity): 116047 (WebCore::HTMLTokenizer::nextToken): 116048 (WebCore::HTMLTokenizer::temporaryBufferIs): 116049 (WebCore::HTMLTokenizer::addToPossibleEndTag): 116050 (WebCore::HTMLTokenizer::isAppropriateEndTag): 116051 (WebCore::HTMLTokenizer::emitCharacter): 116052 (WebCore::HTMLTokenizer::emitCodePoint): 116053 (WebCore::HTMLTokenizer::emitParseError): 116054 (WebCore::HTMLTokenizer::emitCurrentToken): 116055 (WebCore::HTMLTokenizer::shouldEmitBufferedCharacterToken): 116056 * html/HTMLTokenizer.h: Copied from WebCore/html/HTML5Lexer.h. 116057 116058 2010-06-22 Simon Hausmann <simon.hausmann (a] nokia.com> 116059 116060 Unreviewed Qt/Symbian build fix. 116061 116062 Fix "make clean" to not try to execute clean commands for 116063 the extra targets we use to simulate "make install". 116064 116065 * WebCore.pro: Use no_clean in CONFIG of extra compilers. 116066 116067 2010-06-22 Eric Seidel <eric (a] webkit.org> 116068 116069 Reviewed by Adam Barth. 116070 116071 Run clean-header-guards to fix some header guards 116072 https://bugs.webkit.org/show_bug.cgi?id=41044 116073 116074 No functional changes, thus no tests. 116075 116076 This entire change was generated by running 116077 clean-header-guards, and then reverting changes 116078 to files which shouldn't be changed. Those which 116079 are left all should be updated. 116080 116081 Some of these changes are just fixing 755 permissions 116082 to be 644, since it seems various files have the wrong 116083 execute bit which don't need it. clean-header-guards 116084 made those (welcome) permission fixes unintentionally. 116085 116086 * bindings/v8/custom/V8HTMLAudioElementConstructor.h: 116087 * bindings/v8/custom/V8HTMLImageElementConstructor.h: 116088 * bindings/v8/custom/V8HTMLOptionElementConstructor.h: 116089 * dom/Touch.h: 116090 * dom/TouchList.h: 116091 * dom/XMLDocumentParser.h: 116092 * dom/XMLDocumentParserScope.h: 116093 * html/HTML5DocumentParser.h: 116094 * html/LegacyHTMLTreeConstructor.h: 116095 * loader/CrossOriginPreflightResultCache.h: 116096 * page/OriginAccessEntry.h: 116097 * page/win/FrameWin.h: 116098 * platform/ThreadTimers.h: 116099 * platform/chromium/KeyboardCodes.h: 116100 * platform/graphics/chromium/FontPlatformDataChromiumWin.h: 116101 * platform/graphics/chromium/FontUtilsChromiumWin.h: 116102 * platform/graphics/filters/FEBlend.h: 116103 * platform/graphics/filters/FEColorMatrix.h: 116104 * platform/graphics/filters/FEComponentTransfer.h: 116105 * platform/graphics/filters/FEComposite.h: 116106 * platform/graphics/gstreamer/DataSourceGStreamer.h: 116107 * platform/graphics/gstreamer/VideoSinkGStreamer.h: 116108 - I checked, this crazy define was not referenced 116109 anywhere else. It's safe to change the name. :) 116110 * platform/graphics/haiku/FontPlatformData.h: 116111 * platform/graphics/qt/FontCustomPlatformData.h: 116112 * platform/graphics/skia/SkiaFontWin.h: 116113 * platform/graphics/win/GraphicsLayerCACF.h: 116114 * platform/graphics/win/QTMovieWinTimer.h: 116115 * platform/graphics/win/RefCountedGDIHandle.h: 116116 * platform/graphics/win/WebLayer.h: 116117 * platform/graphics/win/WebTiledLayer.h: 116118 * platform/graphics/wince/FontPlatformData.h: 116119 * platform/graphics/wx/FontPlatformData.h: 116120 * platform/network/CredentialStorage.h: 116121 * platform/network/cf/FormDataStreamCFNet.h: 116122 * platform/network/curl/FormDataStreamCurl.h: 116123 * platform/network/qt/DnsPrefetchHelper.h: 116124 * platform/network/qt/QNetworkReplyHandler.h: 116125 * platform/win/PlatformScrollBar.h: 116126 * plugins/PluginDatabase.h: 116127 * plugins/PluginPackage.h: 116128 * plugins/PluginStream.h: 116129 * plugins/qt/PluginContainerQt.h: 116130 * plugins/symbian/npinterface.h: 116131 * rendering/RenderSelectionInfo.h: 116132 * rendering/SVGRenderSupport.h: 116133 * storage/IDBObjectStoreImpl.h: 116134 * svg/animation/SMILTimeContainer.h: 116135 * wml/WMLErrorHandling.h: 116136 116137 2010-06-22 Adam Barth <abarth (a] webkit.org> 116138 116139 Reviewed by Eric Seidel. 116140 116141 Rename HTMLDocumentParser to LegacyHTMLDocumentParser 116142 https://bugs.webkit.org/show_bug.cgi?id=41043 116143 116144 As requested by Darin Adler. 116145 116146 * Android.mk: 116147 * CMakeLists.txt: 116148 * GNUmakefile.am: 116149 * WebCore.gypi: 116150 * WebCore.pro: 116151 * WebCore.vcproj/WebCore.vcproj: 116152 * WebCore.xcodeproj/project.pbxproj: 116153 * css/CSSStyleSheet.cpp: 116154 (WebCore::CSSStyleSheet::checkLoaded): 116155 * dom/Document.cpp: 116156 (WebCore::Document::write): 116157 * dom/DocumentFragment.cpp: 116158 * dom/DocumentParser.h: 116159 (WebCore::DocumentParser::asHTMLDocumentParser): 116160 * dom/XMLDocumentParserLibxml2.cpp: 116161 * dom/XMLDocumentParserQt.cpp: 116162 * html/HTML5Lexer.h: 116163 (WebCore::HTML5Lexer::columnNumber): 116164 * html/HTML5TreeBuilder.cpp: 116165 * html/HTMLDocument.cpp: 116166 (WebCore::HTMLDocument::createParser): 116167 * html/HTMLDocumentParser.cpp: Removed. 116168 * html/HTMLDocumentParser.h: Removed. 116169 * html/HTMLFormControlElement.cpp: 116170 * html/HTMLParserScheduler.cpp: 116171 (WebCore::parserChunkSize): 116172 * html/HTMLViewSourceDocument.cpp: 116173 (WebCore::HTMLViewSourceDocument::createParser): 116174 (WebCore::HTMLViewSourceDocument::addViewSourceToken): 116175 * html/HTMLViewSourceDocument.h: 116176 * html/LegacyHTMLDocumentParser.cpp: Copied from WebCore/html/HTMLDocumentParser.cpp. 116177 (WebCore::LegacyHTMLDocumentParser::LegacyHTMLDocumentParser): 116178 (WebCore::LegacyHTMLDocumentParser::reset): 116179 (WebCore::LegacyHTMLDocumentParser::begin): 116180 (WebCore::LegacyHTMLDocumentParser::setForceSynchronous): 116181 (WebCore::LegacyHTMLDocumentParser::processListing): 116182 (WebCore::LegacyHTMLDocumentParser::parseNonHTMLText): 116183 (WebCore::LegacyHTMLDocumentParser::scriptHandler): 116184 (WebCore::LegacyHTMLDocumentParser::scriptExecution): 116185 (WebCore::LegacyHTMLDocumentParser::parseComment): 116186 (WebCore::LegacyHTMLDocumentParser::parseServer): 116187 (WebCore::LegacyHTMLDocumentParser::parseProcessingInstruction): 116188 (WebCore::LegacyHTMLDocumentParser::parseText): 116189 (WebCore::LegacyHTMLDocumentParser::parseEntity): 116190 (WebCore::LegacyHTMLDocumentParser::parseDoctype): 116191 (WebCore::LegacyHTMLDocumentParser::parseTag): 116192 (WebCore::LegacyHTMLDocumentParser::continueProcessing): 116193 (WebCore::LegacyHTMLDocumentParser::advance): 116194 (WebCore::LegacyHTMLDocumentParser::willWriteHTML): 116195 (WebCore::LegacyHTMLDocumentParser::didWriteHTML): 116196 (WebCore::LegacyHTMLDocumentParser::write): 116197 (WebCore::LegacyHTMLDocumentParser::stopParsing): 116198 (WebCore::LegacyHTMLDocumentParser::processingData): 116199 (WebCore::LegacyHTMLDocumentParser::timerFired): 116200 (WebCore::LegacyHTMLDocumentParser::end): 116201 (WebCore::LegacyHTMLDocumentParser::finish): 116202 (WebCore::LegacyHTMLDocumentParser::finishWasCalled): 116203 (WebCore::LegacyHTMLDocumentParser::processToken): 116204 (WebCore::LegacyHTMLDocumentParser::processDoctypeToken): 116205 (WebCore::LegacyHTMLDocumentParser::~LegacyHTMLDocumentParser): 116206 (WebCore::LegacyHTMLDocumentParser::enlargeBuffer): 116207 (WebCore::LegacyHTMLDocumentParser::enlargeScriptBuffer): 116208 (WebCore::LegacyHTMLDocumentParser::executeScriptsWaitingForStylesheets): 116209 (WebCore::LegacyHTMLDocumentParser::notifyFinished): 116210 (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsIfReady): 116211 (WebCore::LegacyHTMLDocumentParser::executeExternalScriptsTimerFired): 116212 (WebCore::LegacyHTMLDocumentParser::continueExecutingExternalScripts): 116213 (WebCore::LegacyHTMLDocumentParser::isWaitingForScripts): 116214 (WebCore::LegacyHTMLDocumentParser::setSrc): 116215 (WebCore::parseLegacyHTMLDocumentFragment): 116216 * html/LegacyHTMLDocumentParser.h: Copied from WebCore/html/HTMLDocumentParser.h. 116217 (WebCore::LegacyHTMLDocumentParser::asHTMLDocumentParser): 116218 * html/LegacyHTMLTreeConstructor.cpp: 116219 (WebCore::LegacyHTMLTreeConstructor::reportErrorToConsole): 116220 * html/LegacyHTMLTreeConstructor.h: 116221 * loader/FTPDirectoryDocument.cpp: 116222 (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser): 116223 (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): 116224 (WebCore::FTPDirectoryDocumentParser::finish): 116225 * page/XSSAuditor.h: 116226 116227 2010-06-22 Shinichiro Hamaji <hamaji (a] chromium.org> 116228 116229 Unreviewed attempt to fix the windows build. 116230 116231 Split out HTML5DocumentParser yield/resume logic into a separate class 116232 https://bugs.webkit.org/show_bug.cgi?id=41018 116233 116234 * WebCore.vcproj/WebCore.vcproj: 116235 116236 2010-06-22 Eric Seidel <eric (a] webkit.org> 116237 116238 Reviewed by Adam Barth. 116239 116240 Split out HTML5DocumentParser yield/resume logic into a separate class 116241 https://bugs.webkit.org/show_bug.cgi?id=41018 116242 116243 The HTML5DocumentParser is just the coordinator, and shouldn't have 116244 any real parsing logic of his own. Continuing along that path, I'm 116245 moving the when-to-yield/resume logic out into a separate class. 116246 116247 I could have create a new HTMLParserSchedulerHost virtual interface 116248 to allow the HTMLParserScheduler to talk back to the 116249 HTML5DocumentParser, but instead I just exposed the one method it 116250 needs (resumeParsing()) as a public method. Since no code besides 116251 HTMLDocument (and DocumentFrament) ever should know about the 116252 HTML5DocumentParser DocumentParser subclass, no class should ever 116253 see the resumeParsing() method anyway. 116254 116255 Most of this change is just moving code from HTML5DocumentParser 116256 to the new HTMLParserScheduler. 116257 116258 Some of this change is wrapping previous direct access to 116259 m_continueNextChunkTimer.isActive() with isScheduledForResume(). 116260 116261 * Android.mk: 116262 * CMakeLists.txt: 116263 * GNUmakefile.am: 116264 * WebCore.gypi: 116265 * WebCore.pro: 116266 * WebCore.xcodeproj/project.pbxproj: 116267 * html/HTML5DocumentParser.cpp: 116268 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 116269 (WebCore::HTML5DocumentParser::stopParsing): 116270 (WebCore::HTML5DocumentParser::processingData): 116271 (WebCore::HTML5DocumentParser::pumpLexerIfPossible): 116272 (WebCore::HTML5DocumentParser::isScheduledForResume): 116273 (WebCore::HTML5DocumentParser::resumeParsing): 116274 (WebCore::HTML5DocumentParser::pumpLexer): 116275 (WebCore::HTML5DocumentParser::end): 116276 (WebCore::HTML5DocumentParser::attemptToEnd): 116277 (WebCore::HTML5DocumentParser::endIfDelayed): 116278 * html/HTML5DocumentParser.h: 116279 (WebCore::HTML5DocumentParser::document): 116280 - Exposed for HTMLParserScheduler. 116281 * html/HTMLParserScheduler.cpp: Added. 116282 (WebCore::parserTimeLimit): Moved from HTML5DocumentParser. 116283 (WebCore::parserChunkSize): ditto. 116284 (WebCore::HTMLParserScheduler::HTMLParserScheduler): 116285 (WebCore::HTMLParserScheduler::~HTMLParserScheduler): 116286 (WebCore::isLayoutTimerActive): 116287 (WebCore::HTMLParserScheduler::continueNextChunkTimerFired): 116288 - Moved from HTML5DocumentParser. 116289 * html/HTMLParserScheduler.h: Added. 116290 (WebCore::HTMLParserScheduler::PumpSession::PumpSession): 116291 - Moved from HTML5DocumentParser. 116292 (WebCore::HTMLParserScheduler::shouldContinueParsing): 116293 (WebCore::HTMLParserScheduler::isScheduledForResume): 116294 116295 2010-06-22 Pavel Feldman <pfeldman (a] chromium.org> 116296 116297 Reviewed by Yury Semikhatsky. 116298 116299 Web Inspector: move nodeByPath from InjectedScript to InspectorBackend. 116300 116301 https://bugs.webkit.org/show_bug.cgi?id=40988 116302 116303 * inspector/InjectedScriptHost.cpp: 116304 * inspector/InjectedScriptHost.h: 116305 * inspector/InjectedScriptHost.idl: 116306 * inspector/InspectorBackend.cpp: 116307 (WebCore::InspectorBackend::pushNodeByPathToFrontend): 116308 * inspector/InspectorBackend.h: 116309 * inspector/InspectorBackend.idl: 116310 * inspector/InspectorDOMAgent.cpp: 116311 (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend): 116312 (WebCore::InspectorDOMAgent::nodeForPath): 116313 * inspector/InspectorDOMAgent.h: 116314 * inspector/InspectorFrontend.cpp: 116315 (WebCore::InspectorFrontend::didPushNodeByPathToFrontend): 116316 * inspector/InspectorFrontend.h: 116317 * inspector/front-end/DOMAgent.js: 116318 * inspector/front-end/ElementsPanel.js: 116319 (WebInspector.ElementsPanel.prototype.setDocument): 116320 * inspector/front-end/InjectedScript.js: 116321 * inspector/front-end/InjectedScriptAccess.js: 116322 116323 2010-06-22 David Levin <levin (a] chromium.org> 116324 116325 Reviewed by Alexey Proskuryakov. 116326 116327 REGRESSION: (r47291): Upload progress events are not fired for simple cross-site XHR. 116328 https://bugs.webkit.org/show_bug.cgi?id=39029 116329 116330 Specifically, WebKit should fire upload events if one or more event listeners are 116331 registered on the XMLHttpRequestUpload object when send is called in an async manner. 116332 116333 * xml/XMLHttpRequest.cpp: 116334 (WebCore::XMLHttpRequest::createRequest): Allow upload events to be fired when there are 116335 handlers for them in the cross-origin simple request case. 116336 116337 2010-06-22 Kent Tamura <tkent (a] chromium.org> 116338 116339 Reviewed by Adam Barth. 116340 116341 Fix uninitialized SubframeLoader::m_containsPlugins 116342 https://bugs.webkit.org/show_bug.cgi?id=41035 116343 116344 * loader/SubframeLoader.cpp: 116345 (WebCore::SubframeLoader::SubframeLoader): 116346 Initialize m_containsPlugins with false. 116347 116348 2010-06-22 Kinuko Yasuda <kinuko (a] chromium.org> 116349 116350 Reviewed by Adam Barth. 116351 116352 Add BlobBuilder.idl to expose BlobBuilder interface 116353 https://bugs.webkit.org/show_bug.cgi?id=40593 116354 116355 (Resubmitting with the correct file set.) 116356 116357 BlobBuilder is defined in FileAPI's FileWriter spec. 116358 (http://dev.w3.org/2009/dap/file-system/file-writer.html) 116359 116360 Also removes the ENABLE_FILE_WRITER ifdef guard for BlobBuilder. 116361 116362 Tests: http/tests/local/blob/send-data-blob.html 116363 http/tests/local/blob/send-hybrid-blob.html 116364 http/tests/local/blob/send-sliced-data-blob.html 116365 116366 * Android.derived.jscbindings.mk: 116367 * Android.derived.v8bindings.mk: 116368 * CMakeLists.txt: 116369 * DerivedSources.cpp: 116370 * DerivedSources.make: 116371 * GNUmakefile.am: 116372 * WebCore.gypi: 116373 * WebCore.pri: 116374 * WebCore.pro: 116375 * WebCore.vcproj/WebCore.vcproj: 116376 * WebCore.xcodeproj/project.pbxproj: 116377 * html/BlobBuilder.cpp: 116378 (WebCore::BlobBuilder::append): 116379 * html/BlobBuilder.h: 116380 * html/BlobBuilder.idl: Added. 116381 * page/DOMWindow.idl: 116382 116383 2010-06-22 Kent Tamura <tkent (a] chromium.org> 116384 116385 Unreviewed, build fix for r61648. 116386 116387 * platform/graphics/GraphicsContext3D.h: 116388 116389 2010-06-22 Vangelis Kokkevis <vangelis (a] chromium.org> 116390 116391 Reviewed by Kent Tamura. 116392 116393 Define GraphicsContext3D::platformLayer() for all remaining (non PLATFORM(MAC)) 116394 ports to get RenderLayerBacking.cpp compiling again. 116395 https://bugs.webkit.org/show_bug.cgi?id=41026 116396 116397 * platform/graphics/GraphicsContext3D.h: 116398 (WebCore::GraphicsContext3D::platformLayer): 116399 116400 2010-06-22 Eric Seidel <eric (a] webkit.org> 116401 116402 Unreviewed. Rolling out http://trac.webkit.org/changeset/61638 116403 made a few tests crash. 116404 116405 Make PendingScript hold a CachedResourceClient open for its lifetime 116406 https://bugs.webkit.org/show_bug.cgi?id=40968 116407 116408 * html/HTML5DocumentParser.cpp: 116409 (WebCore::HTML5DocumentParser::watchForLoad): 116410 (WebCore::HTML5DocumentParser::notifyFinished): 116411 * html/HTML5ScriptRunner.cpp: 116412 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner): 116413 (WebCore::HTML5ScriptRunner::sourceFromPendingScript): 116414 (WebCore::HTML5ScriptRunner::isPendingScriptReady): 116415 (WebCore::HTML5ScriptRunner::executePendingScript): 116416 (WebCore::HTML5ScriptRunner::hasScriptsWaitingForLoad): 116417 (WebCore::HTML5ScriptRunner::watchForLoad): 116418 (WebCore::HTML5ScriptRunner::stopWatchingForLoad): 116419 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 116420 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets): 116421 (WebCore::HTML5ScriptRunner::requestScript): 116422 * html/HTML5ScriptRunner.h: 116423 (WebCore::HTML5ScriptRunner::PendingScript::): 116424 (WebCore::HTML5ScriptRunner::PendingScript::PendingScript): 116425 (WebCore::HTML5ScriptRunner::PendingScript::watchingForLoad): 116426 * html/HTML5ScriptRunnerHost.h: 116427 116428 2010-06-22 Adele Peterson <adele (a] apple.com> 116429 116430 Reviewed by Darin Adler. 116431 116432 Fix for Crash when the renderer for the button in <input type="number"> goes away during event handling 116433 https://bugs.webkit.org/show_bug.cgi?id=41013 116434 116435 Test: fast/forms/input-number-crash.html 116436 116437 * rendering/TextControlInnerElements.cpp: (WebCore::SpinButtonElement::defaultEventHandler): 116438 Nil check the RenderBox since its possible the renderer has gone away during event handling. 116439 116440 2010-06-22 Tony Gentilcore <tonyg (a] chromium.org> 116441 116442 Reviewed by Eric Seidel. 116443 116444 Pull script line number from DocumentParser instead of pushing it to ScriptController 116445 https://bugs.webkit.org/show_bug.cgi?id=40649 116446 116447 This approach is cleaner and improves WebCore/benchmarks/parser/html-parser.html by ~2%. 116448 116449 Tests: fast/js/script-line-number.html 116450 116451 * bindings/js/ScriptController.cpp: 116452 (WebCore::ScriptController::ScriptController): 116453 (WebCore::ScriptController::eventHandlerLineNumber): 116454 * bindings/js/ScriptController.h: 116455 * bindings/v8/ScriptController.cpp: 116456 (WebCore::ScriptController::eventHandlerLineNumber): 116457 (WebCore::ScriptController::eventHandlerColumnNumber): 116458 * bindings/v8/ScriptController.h: 116459 * bindings/v8/ScriptEventListener.cpp: 116460 (WebCore::createAttributeEventListener): 116461 * bindings/v8/V8Proxy.h: 116462 * dom/XMLDocumentParserLibxml2.cpp: 116463 (WebCore::XMLDocumentParser::startElementNs): 116464 * html/HTML5DocumentParser.cpp: 116465 (WebCore::HTML5DocumentParser::pumpLexer): 116466 * html/HTMLDocumentParser.cpp: 116467 (WebCore::HTMLDocumentParser::processToken): 116468 116469 2010-06-22 Tony Gentilcore <tonyg (a] chromium.org> 116470 116471 Reviewed by Eric Seidel. 116472 116473 Make PendingScript hold a CachedResourceClient open for its lifetime 116474 https://bugs.webkit.org/show_bug.cgi?id=40968 116475 116476 This replaces the mechanism introduced in r61374 with a simpler 116477 approach from preventing unexpected purges; always keep a client open. 116478 This will approach will allow deferred scripts to add a client after 116479 the resource may have already been loaded without having to worry about 116480 the buffer being purged in the meantime. 116481 116482 No new tests because making a CachedResource purge itself is not 116483 testable from a LayoutTest. 116484 116485 * html/HTML5DocumentParser.cpp: 116486 (WebCore::HTML5DocumentParser::watchForLoad): 116487 (WebCore::HTML5DocumentParser::notifyFinished): 116488 * html/HTML5ScriptRunner.cpp: 116489 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner): 116490 (WebCore::HTML5ScriptRunner::sourceFromPendingScript): 116491 (WebCore::HTML5ScriptRunner::isPendingScriptReady): 116492 (WebCore::HTML5ScriptRunner::executePendingScript): 116493 (WebCore::HTML5ScriptRunner::watchForLoad): 116494 (WebCore::HTML5ScriptRunner::stopWatchingForLoad): 116495 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 116496 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets): 116497 (WebCore::HTML5ScriptRunner::requestScript): 116498 * html/HTML5ScriptRunner.h: 116499 (WebCore::HTML5ScriptRunner::PendingScript::PendingScript): 116500 (WebCore::HTML5ScriptRunner::PendingScript::~PendingScript): 116501 (WebCore::HTML5ScriptRunner::PendingScript::setCachedScript): 116502 (WebCore::HTML5ScriptRunner::PendingScript::cachedScript): 116503 (WebCore::HTML5ScriptRunner::PendingScript::notifyFinished): 116504 * html/HTML5ScriptRunnerHost.h: 116505 116506 2010-06-22 Eric Seidel <eric (a] webkit.org> 116507 116508 Reviewed by Adam Barth. 116509 116510 Fragment parsing needs to go through the HTML5 Parser code path 116511 https://bugs.webkit.org/show_bug.cgi?id=40645 116512 116513 Added a new HTML5DocumentParser::parseHTMLDocumentFragment 116514 codepath which optionally calls through to the old fragment 116515 parsing path, now renamed parseLegacyHTMLDocumentFragment. 116516 116517 * dom/Element.cpp: 116518 (WebCore::Element::createContextualFragment): 116519 - Use document()->createDocumentFragment() instead 116520 of DocumentFragment::create() to match other callers 116521 (and not depend on DocumentFragment.h). 116522 - Update call to parseHTMLDocumentFragment to use the new 116523 HTML5 parser codepath. 116524 * dom/MappedAttributeEntry.h: 116525 - Add a FIXME about this horrible enum placement. 116526 Sadly this will cause a world-rebuild for everyone. 116527 * html/HTML5DocumentParser.cpp: 116528 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 116529 (WebCore::HTML5DocumentParser::runScriptsForPausedTreeConstructor): 116530 - The main pumpLexer function has gotten to large. Move the script 116531 running logic into this new function. 116532 - Handle the case where we have no m_scriptRunner (fragment case). 116533 (WebCore::HTML5DocumentParser::pumpLexer): 116534 - Use new runScriptsForPausedTreeConstructor(). 116535 (WebCore::HTML5DocumentParser::executingScript): 116536 (WebCore::HTML5DocumentParser::inScriptExecution): 116537 - New function to handle the case where m_scriptRunner is null. 116538 (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution): 116539 - Use inScriptExecution() instead of m_scriptRunner->inScriptExecution(). 116540 (WebCore::HTML5DocumentParser::executeScript): ditto. 116541 (WebCore::HTML5DocumentParser::notifyFinished): ditto. 116542 (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets): ditto. 116543 (WebCore::shouldUseLegacyParser): 116544 - Helper function to check the html5ParserEnabled() setting. 116545 (WebCore::HTML5DocumentParser::parseHTMLDocumentFragment): 116546 - Run HTML5DocumentParser in fragment mode, or optionally run 116547 the legacy parser if !html5ParserEnabled(). 116548 * html/HTML5DocumentParser.h: 116549 * html/HTML5TreeBuilder.cpp: 116550 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 116551 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 116552 - Implement the FragmentScriptingNotAllowed hack for platform/Pasteboard. 116553 * html/HTML5TreeBuilder.h: 116554 * html/HTMLDocumentParser.cpp: 116555 (WebCore::parseLegacyHTMLDocumentFragment): 116556 - Renamed from parseHTMLDocumentFragment 116557 * html/HTMLDocumentParser.h: 116558 * html/HTMLElement.cpp: 116559 (WebCore::HTMLElement::insertAdjacentHTML): 116560 - Call HTML5DocumentParser::parseHTMLDocumentFragment. 116561 * platform/mac/PasteboardMac.mm: 116562 (WebCore::Pasteboard::documentFragment): ditto. 116563 * xml/XSLTProcessor.cpp: 116564 (WebCore::createFragmentFromSource): ditto. 116565 116566 2010-06-22 Chris Marrin <cmarrin (a] apple.com> 116567 116568 Reviewed by Simon Fraser. 116569 116570 https://bugs.webkit.org/show_bug.cgi?id=40643 116571 116572 Final phase of moving ownership of WebGLLayer to GraphicsContext3D. 116573 As it turns out, I still have to have a separate CGLContextObj for 116574 rendering because Core Animation composites in a separate thread, 116575 so we need to disconnect WebGL rendering from CA compositing. But 116576 this change is still worthwhile because it reduces dependencies 116577 and makes it easier to port WebGL to other platforms. 116578 116579 No new tests since this is just restructuring and the current tests 116580 are all still valid and do a sufficient test of WebGL functionality. 116581 116582 * platform/graphics/GraphicsContext3D.h: 116583 (WebCore::GraphicsContext3D::platformLayer): 116584 * platform/graphics/GraphicsLayer.h: 116585 (WebCore::GraphicsLayer::setContentsToWebGL): 116586 (WebCore::GraphicsLayer::setWebGLNeedsDisplay): 116587 * platform/graphics/mac/GraphicsContext3DMac.mm: Add creation of WebGLLayer 116588 (WebCore::GraphicsContext3D::GraphicsContext3D): 116589 * platform/graphics/mac/GraphicsLayerCA.h: 116590 (WebCore::GraphicsLayerCA::): 116591 * platform/graphics/mac/GraphicsLayerCA.mm: Handle setting of WebGLLayer as content the same as for MediaLayer. Also changed WebGL related names for clarity 116592 (WebCore::GraphicsLayerCA::GraphicsLayerCA): 116593 (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): 116594 (WebCore::GraphicsLayerCA::updateContentsWebGLLayer): 116595 (WebCore::GraphicsLayerCA::setContentsToWebGL): 116596 (WebCore::GraphicsLayerCA::setWebGLNeedsDisplay): 116597 * platform/graphics/mac/WebGLLayer.h: 116598 * platform/graphics/mac/WebGLLayer.mm: Got rid of storage for context and texture, now just store GraphicsContext3D and get them from there when needed 116599 (-[WebGLLayer copyCGLPixelFormatForDisplayMask:]): 116600 (-[WebGLLayer copyCGLContextForPixelFormat:]): 116601 (-[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]): 116602 (-[WebGLLayer copyImageSnapshotWithColorSpace:]): 116603 * rendering/RenderLayerBacking.cpp: Changed init of WebGL contentsLayer to pass WebGLLayer rather than GraphicsContext3D 116604 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): 116605 (WebCore::RenderLayerBacking::rendererContentChanged): 116606 116607 2010-06-22 Darin Adler <darin (a] apple.com> 116608 116609 Reviewed by Dave Hyatt. 116610 116611 * html/HTMLTableCellElement.cpp: 116612 (WebCore::HTMLTableCellElement::parseMappedAttribute): Removed incorrect FIXME comments. 116613 116614 2010-06-22 Dan Bernstein <mitz (a] apple.com> 116615 116616 Reviewed by Anders Carlsson. 116617 116618 <rdar://problem/8119403> REGRESSION (r61548): PLT is almost 1.5% slower, Google page cycler slower 116619 https://bugs.webkit.org/show_bug.cgi?id=41012 116620 116621 * rendering/RenderBlockLineLayout.cpp: 116622 (WebCore::RenderBlock::computeHorizontalPositionsForLine): Removed a redundant statement that was 116623 left over in the original patch and resulted in double the calls to RenderText::width() here. 116624 (WebCore::RenderBlock::findNextLineBreak): Changed the order of evaluating conditions for a 116625 potential speedup. 116626 116627 2010-06-22 Darin Adler <darin (a] apple.com> 116628 116629 Reviewed by Alexey Proskuryakov. 116630 116631 Alexey asked me to take out the autorelease pools because he believes 116632 that there is no code that should be running using Objective-C 116633 autorelease. Most likely, the code that is triggering these stderr 116634 messages is incorrect, and that bug should be fixed instead. 116635 116636 * workers/WorkerRunLoop.cpp: 116637 (WebCore::WorkerRunLoop::run): Roll out use of AutodrainedPool. 116638 116639 2010-06-22 Darin Adler <darin (a] apple.com> 116640 116641 Reviewed by Brady Eidson. 116642 116643 Fix autorelease problem seen when running worker regression tests. 116644 We were seeing logs to stderr saying autorelease was used without 116645 an autorelease pool being set up. 116646 116647 * workers/WorkerRunLoop.cpp: 116648 (WebCore::WorkerRunLoop::run): Use an AutodrainedPool as the file 116649 thread, icon database, and database thread do. No effect on platforms 116650 other than Mac. 116651 116652 2010-06-22 Chris Fleizach <cfleizach (a] apple.com> 116653 116654 Reviewed by Darin Adler. 116655 116656 AX: If an element that is a continuation is removed, its parent tree is not notified appropriately that their children have changed 116657 https://bugs.webkit.org/show_bug.cgi?id=41000 116658 116659 Test: accessibility/removed-continuation-element-causes-crash.html 116660 116661 * accessibility/AccessibilityObject.h: 116662 (WebCore::AccessibilityObject::updateChildrenIfNecessary): 116663 * accessibility/AccessibilityRenderObject.cpp: 116664 (WebCore::AccessibilityRenderObject::childrenChanged): 116665 (WebCore::AccessibilityRenderObject::addChildren): 116666 * accessibility/AccessibilityRenderObject.h: 116667 116668 2010-06-22 Peter Kasting <pkasting (a] google.com> 116669 116670 Reviewed by Adam Barth. 116671 116672 Override setFailed() in each image decoder to clean up any temporary 116673 objects. 116674 https://bugs.webkit.org/show_bug.cgi?id=35411 116675 116676 In a few cases, we need to be careful to avoid deleting objects until 116677 after they're no longer needed. These cases usually mean some jumping 116678 through hoops, to the detriment of code simplicity. 116679 116680 No layout tests because this does not change the visible output of 116681 decoding in any way. 116682 116683 * platform/image-decoders/ImageDecoder.h: 116684 (WebCore::ImageDecoder::setData): 116685 * platform/image-decoders/bmp/BMPImageDecoder.cpp: 116686 (WebCore::BMPImageDecoder::setFailed): 116687 (WebCore::BMPImageDecoder::decode): 116688 * platform/image-decoders/bmp/BMPImageDecoder.h: 116689 * platform/image-decoders/bmp/BMPImageReader.cpp: 116690 (WebCore::BMPImageReader::decodeBMP): 116691 (WebCore::BMPImageReader::readInfoHeaderSize): 116692 (WebCore::BMPImageReader::processInfoHeader): 116693 (WebCore::BMPImageReader::readInfoHeader): 116694 (WebCore::BMPImageReader::processBitmasks): 116695 (WebCore::BMPImageReader::processColorTable): 116696 (WebCore::BMPImageReader::processRLEData): 116697 (WebCore::BMPImageReader::processNonRLEData): 116698 * platform/image-decoders/bmp/BMPImageReader.h: 116699 (WebCore::BMPImageReader::): 116700 * platform/image-decoders/gif/GIFImageDecoder.cpp: 116701 (WebCore::GIFImageDecoder::setFailed): 116702 (WebCore::GIFImageDecoder::decode): 116703 * platform/image-decoders/gif/GIFImageDecoder.h: 116704 * platform/image-decoders/ico/ICOImageDecoder.cpp: 116705 (WebCore::ICOImageDecoder::setFailed): 116706 (WebCore::ICOImageDecoder::decode): 116707 * platform/image-decoders/ico/ICOImageDecoder.h: 116708 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 116709 (WebCore::JPEGImageReader::decode): 116710 (WebCore::JPEGImageDecoder::setFailed): 116711 (WebCore::JPEGImageDecoder::decode): 116712 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 116713 * platform/image-decoders/png/PNGImageDecoder.cpp: 116714 (WebCore::PNGImageReader::decode): 116715 (WebCore::PNGImageDecoder::PNGImageDecoder): 116716 (WebCore::PNGImageDecoder::setFailed): 116717 (WebCore::PNGImageDecoder::headerAvailable): 116718 (WebCore::PNGImageDecoder::decode): 116719 * platform/image-decoders/png/PNGImageDecoder.h: 116720 116721 2010-06-04 Dimitri Glazkov <dglazkov (a] chromium.org> 116722 116723 Reviewed by Darin Adler. 116724 116725 Remove side effects of form submission and prepare FormDataBuilder for splitting up. 116726 https://bugs.webkit.org/show_bug.cgi?id=40184 116727 116728 Refactoring, covered by existing tests. 116729 116730 * html/HTMLFormElement.cpp: 116731 (WebCore::HTMLFormElement::prepareFormSubmission): 116732 * Changed to use new accessors on FormDataBuilder; 116733 * Simplified the logic around action URL; 116734 * Removed form submission side effect of element's enctype property being updated when 116735 submitting a mailto form; 116736 * Removed unnecessary updating of action URL for mailto forms. 116737 (WebCore::HTMLFormElement::submit): Moved action URL check into prepareFormSubmission. 116738 (WebCore::HTMLFormElement::parseMappedAttribute): Updated to use new methods on FormDataBuilder. 116739 * html/HTMLFormElement.h: Removed decls for isMailtoForm and dataEncoding methods; 116740 moved m_target and m_url to FormDataBuilder. 116741 * platform/network/FormData.cpp: 116742 (WebCore::FormData::appendDOMFormData): Removed unnecessary instantiation of FormDataBuilder. 116743 * platform/network/FormDataBuilder.cpp: 116744 (WebCore::FormDataBuilder::parseAction): Moved from HTMLFormControl. 116745 * platform/network/FormDataBuilder.h: 116746 (WebCore::FormDataBuilder::action): Ditto. 116747 (WebCore::FormDataBuilder::target): Ditto. 116748 (WebCore::FormDataBuilder::setTarget): Ditto. 116749 116750 2010-06-22 Yuta Kitamura <yutak (a] chromium.org> 116751 116752 Reviewed by Alexey Proskuryakov. 116753 116754 Fix WebSocketHandshakeRequest so that it fits the new handshake protocol. 116755 116756 The new WebSocket specification (draft 76 and later) allows a browser to 116757 send header fields in arbitrary order. Thus we can use a HTTPHeaderMap to 116758 store header fields instead of Vector of pairs of a field name and 116759 a field value. 116760 116761 This patch also does refactoring of WebSocketHandshakeRequest class 116762 to make it simpler and easier to use. 116763 116764 Fix WebSocketHandshakeRequest so that it fits the new handshake protocol 116765 https://bugs.webkit.org/show_bug.cgi?id=39864 116766 116767 No new tests, because there is no functional change. 116768 116769 * websockets/WebSocketHandshake.cpp: 116770 (WebCore::WebSocketHandshake::clientHandshakeRequest): 116771 * websockets/WebSocketHandshakeRequest.cpp: 116772 (WebCore::WebSocketHandshakeRequest::Key3::Key3): 116773 (WebCore::WebSocketHandshakeRequest::Key3::set): 116774 (WebCore::WebSocketHandshakeRequest::WebSocketHandshakeRequest): 116775 (WebCore::WebSocketHandshakeRequest::requestMethod): 116776 (WebCore::WebSocketHandshakeRequest::url): 116777 (WebCore::WebSocketHandshakeRequest::addHeaderField): 116778 (WebCore::WebSocketHandshakeRequest::headerFields): 116779 (WebCore::WebSocketHandshakeRequest::key3): 116780 (WebCore::WebSocketHandshakeRequest::setKey3): 116781 * websockets/WebSocketHandshakeRequest.h: 116782 116783 2010-06-20 MORITA Hajime <morrita (a] google.com> 116784 116785 Reviewed by Kent Tamura. 116786 116787 <meter> should be yellow when min < value < low < optimum 116788 https://bugs.webkit.org/show_bug.cgi?id=40824 116789 116790 Fixed a wrong conditional on HTMLMeterElement::gaugeRegion(). 116791 116792 * html/HTMLMeterElement.cpp: 116793 (WebCore::HTMLMeterElement::gaugeRegion): 116794 116795 Tests: fast/dom/HTMLMeterElement/meter-appearances-capacity.html 116796 fast/dom/HTMLMeterElement/meter-optimums.html 116797 116798 2010-06-22 Adam Barth <abarth (a] webkit.org> 116799 116800 Reviewed by Eric Seidel. 116801 116802 Follow the HTML5 spec more closely w.r.t. when to save the insertion point 116803 https://bugs.webkit.org/show_bug.cgi?id=40976 116804 116805 The spec always increments the nesting level and saves the insertion 116806 point at the same time. In this patch, we now do those operations 116807 packaged as a RAII. 116808 116809 As a side effect, the test case below no longer ASSERTs. (The output 116810 is wrong, but we'll get to that next.) 116811 116812 Test: fast/tokenizer/write-on-load.html 116813 116814 * html/HTML5ScriptRunner.cpp: 116815 (WebCore::NestScript::NestScript): 116816 (WebCore::NestScript::~NestScript): 116817 (WebCore::HTML5ScriptRunner::executePendingScript): 116818 (WebCore::HTML5ScriptRunner::executeScript): 116819 (WebCore::HTML5ScriptRunner::requestScript): 116820 (WebCore::HTML5ScriptRunner::runScript): 116821 * html/HTMLInputStream.h: 116822 116823 2010-06-22 Adam Barth <abarth (a] webkit.org> 116824 116825 Reviewed by Eric Seidel. 116826 116827 Expose HTMLInputStream to ScriptRunner so that ScriptRunner can save the insertion point itself 116828 https://bugs.webkit.org/show_bug.cgi?id=40975 116829 116830 This saves us having to call back into the HTML5DocumentParser each 116831 time we need to save the insertion point. This prepares us for another 116832 place we need to save the insertion point. 116833 116834 * html/HTML5DocumentParser.cpp: 116835 * html/HTML5DocumentParser.h: 116836 (WebCore::HTML5DocumentParser::inputStream): 116837 * html/HTML5ScriptRunner.cpp: 116838 (WebCore::HTML5ScriptRunner::executeScript): 116839 (WebCore::HTML5ScriptRunner::requestScript): 116840 * html/HTML5ScriptRunnerHost.h: 116841 116842 2010-06-22 Adam Barth <abarth (a] webkit.org> 116843 116844 Reviewed by Eric Seidel. 116845 116846 Move HTMLInputStream to its own file 116847 https://bugs.webkit.org/show_bug.cgi?id=40974 116848 116849 No new tests, just code motion. 116850 116851 * GNUmakefile.am: 116852 * WebCore.gypi: 116853 * WebCore.vcproj/WebCore.vcproj: 116854 * WebCore.xcodeproj/project.pbxproj: 116855 * html/HTML5DocumentParser.h: 116856 116857 2010-06-21 Adam Barth <abarth (a] webkit.org> 116858 116859 Reviewed by Eric Seidel. 116860 116861 Save the insertion point before beforeload events 116862 https://bugs.webkit.org/show_bug.cgi?id=40973 116863 116864 We need to save the insertion point before dispatching the beforeload 116865 event in case someone decides to document.write during beforeload. 116866 Prior to this patch, such writes would pump the lexer too much and 116867 tokenize the rest of the document before executing the script. 116868 116869 * html/HTML5DocumentParser.cpp: 116870 (WebCore::HTML5DocumentParser::dispatchBeforeLoad): 116871 * html/HTML5DocumentParser.h: 116872 * html/HTML5ScriptRunner.cpp: 116873 (WebCore::HTML5ScriptRunner::requestScript): 116874 * html/HTML5ScriptRunnerHost.h: 116875 116876 2010-06-21 Adam Barth <abarth (a] webkit.org> 116877 116878 Reviewed by Eric Seidel. 116879 116880 document.write from BeforeLoad should not assert 116881 https://bugs.webkit.org/show_bug.cgi?id=40971 116882 116883 We're setting the parse blocking script too early. It's not actually 116884 blocking parsing yet. 116885 116886 Test: fast/tokenizer/write-before-load.html 116887 116888 * html/HTML5ScriptRunner.cpp: 116889 (WebCore::HTML5ScriptRunner::requestScript): 116890 116891 2010-06-21 Chris Fleizach <cfleizach (a] apple.com> 116892 116893 No review. QT build fix again. 116894 116895 AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded 116896 https://bugs.webkit.org/show_bug.cgi?id=40927 116897 116898 * accessibility/AXObjectCache.h: 116899 (WebCore::AXObjectCache::postNotification): 116900 116901 2010-06-21 Chris Fleizach <cfleizach (a] apple.com> 116902 116903 No review. QT build fix. 116904 116905 AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded 116906 https://bugs.webkit.org/show_bug.cgi?id=40927 116907 116908 * accessibility/AXObjectCache.h: 116909 (WebCore::AXObjectCache::postNotification): 116910 116911 2010-06-21 Chris Fleizach <cfleizach (a] apple.com> 116912 116913 Reviewed by Beth Dakin. 116914 116915 AX: VoiceOver does not announce WAI-ARIA state change of aria-expanded 116916 https://bugs.webkit.org/show_bug.cgi?id=40927 116917 116918 Test: platform/mac/accessibility/aria-expanded-notifications.html 116919 116920 * accessibility/AXObjectCache.cpp: 116921 (WebCore::AXObjectCache::handleAriaExpandedChange): 116922 * accessibility/AXObjectCache.h: 116923 (WebCore::AXObjectCache::handleAriaExpandedChange): 116924 * accessibility/AccessibilityObject.h: 116925 (WebCore::AccessibilityObject::handleAriaExpandedChanged): 116926 * accessibility/AccessibilityRenderObject.cpp: 116927 (WebCore::AccessibilityRenderObject::handleAriaExpandedChanged): 116928 * accessibility/AccessibilityRenderObject.h: 116929 * accessibility/mac/AXObjectCacheMac.mm: 116930 (WebCore::AXObjectCache::postPlatformNotification): 116931 * dom/Element.cpp: 116932 (WebCore::Element::updateAfterAttributeChanged): 116933 116934 2010-06-21 Sheriff Bot <webkit.review.bot (a] gmail.com> 116935 116936 Unreviewed, rolling out r61585. 116937 http://trac.webkit.org/changeset/61585 116938 https://bugs.webkit.org/show_bug.cgi?id=40950 116939 116940 It broke builds (Requested by kinuko on #webkit). 116941 116942 * Android.derived.jscbindings.mk: 116943 * Android.derived.v8bindings.mk: 116944 * CMakeLists.txt: 116945 * DerivedSources.cpp: 116946 * DerivedSources.make: 116947 * GNUmakefile.am: 116948 * WebCore.gypi: 116949 * WebCore.pri: 116950 * WebCore.vcproj/WebCore.vcproj: 116951 * WebCore.xcodeproj/project.pbxproj: 116952 * html/BlobBuilder.cpp: 116953 (WebCore::BlobBuilder::appendString): 116954 (WebCore::BlobBuilder::appendBlob): 116955 * html/BlobBuilder.h: 116956 * page/DOMWindow.idl: 116957 116958 2010-06-21 Kinuko Yasuda <kinuko (a] chromium.org> 116959 116960 Reviewed by Adam Barth. 116961 116962 Add BlobBuilder.idl to expose BlobBuilder interface 116963 https://bugs.webkit.org/show_bug.cgi?id=40593 116964 116965 BlobBuilder is defined in FileAPI's FileWriter spec. 116966 (http://dev.w3.org/2009/dap/file-system/file-writer.html) 116967 116968 Also removes the ENABLE_FILE_WRITER ifdef guard for BlobBuilder. 116969 116970 Tests: http/tests/local/blob/send-data-blob.html 116971 http/tests/local/blob/send-hybrid-blob.html 116972 http/tests/local/blob/send-sliced-data-blob.html 116973 116974 * Android.derived.jscbindings.mk: 116975 * Android.derived.v8bindings.mk: 116976 * CMakeLists.txt: 116977 * DerivedSources.cpp: 116978 * DerivedSources.make: 116979 * GNUmakefile.am: 116980 * WebCore.gypi: 116981 * WebCore.pri: 116982 * WebCore.pro: 116983 * WebCore.vcproj/WebCore.vcproj: 116984 * WebCore.xcodeproj/project.pbxproj: 116985 * html/BlobBuilder.cpp: 116986 (WebCore::BlobBuilder::append): 116987 * html/BlobBuilder.h: 116988 * html/BlobBuilder.idl: Added. 116989 * page/DOMWindow.idl: 116990 116991 2010-06-21 Nate Chapin <japhet (a] chromium.org> 116992 116993 Reviewed by Adam Barth. 116994 116995 FrameLoader cleanup: Split high level subframe and plugin 116996 loading functions into a separate class. 116997 https://bugs.webkit.org/show_bug.cgi?id=40453 116998 116999 Refactor only, no new tests. 117000 117001 * Android.mk: 117002 * CMakeLists.txt: 117003 * GNUmakefile.am: 117004 * WebCore.base.exp: 117005 * WebCore.gypi: 117006 * WebCore.pro: 117007 * WebCore.vcproj/WebCore.vcproj: 117008 * WebCore.xcodeproj/project.pbxproj: 117009 * dom/DOMImplementation.cpp: 117010 * history/PageCache.cpp: 117011 * html/HTMLFrameElementBase.cpp: 117012 * html/HTMLMediaElement.cpp: 117013 * loader/FrameLoader.cpp: 117014 * loader/FrameLoader.h: 117015 (WebCore::FrameLoader::subframeLoader): 117016 * loader/PluginDocument.cpp: 117017 * loader/SubframeLoader.cpp: Added. 117018 (WebCore::SubframeLoader::SubframeLoader): 117019 (WebCore::toPlugInElement): 117020 (WebCore::SubframeLoader::clear): 117021 (WebCore::SubframeLoader::requestFrame): 117022 (WebCore::SubframeLoader::requestObject): 117023 (WebCore::FrameLoader::loadMediaPlayerProxyPlugin): 117024 (WebCore::SubframeLoader::createJavaAppletWidget): 117025 (WebCore::SubframeLoader::loadSubframe): 117026 (WebCore::SubframeLoader::allowPlugins): 117027 (WebCore::SubframeLoader::shouldUsePlugin): 117028 (WebCore::SubframeLoader::loadPlugin): 117029 (WebCore::SubframeLoader::completeURL): 117030 * loader/SubframeLoader.h: Added. 117031 (WebCore::SubframeLoader::containsPlugins): 117032 * page/Page.cpp: 117033 * page/XSSAuditor.h: 117034 * platform/graphics/wince/MediaPlayerProxy.cpp: 117035 * plugins/MimeType.cpp: 117036 * rendering/RenderApplet.cpp: 117037 * rendering/RenderEmbeddedObject.cpp: 117038 117039 2010-06-21 Nate Chapin <japhet (a] chromium.org> 117040 117041 Unreviewed, build fix. 117042 117043 Bad merge, left a reference to m_committedFirstRealDocumentLoad in 117044 http://trac.webkit.org/changeset/61568. 117045 117046 * loader/FrameLoader.cpp: 117047 (WebCore::FrameLoader::transitionToCommitted): 117048 117049 2010-06-21 Nate Chapin <japhet (a] chromium.org> 117050 117051 Reviewed by Adam Barth. 117052 117053 Remove a couple of FrameLoader's unused boolean members 117054 (m_receivedData, m_cancellingWithLoadInProcess) and merge 117055 several more into a single state machine called FrameLoaderStateMachine 117056 (m_firstLayoutDone, m_creatingInitialEmptyDocument, 117057 m_isDisplayingInitialEmptyDocument, m_committedFirstRealDocumentLoad). 117058 117059 https://bugs.webkit.org/show_bug.cgi?id=39695 117060 117061 Refactor only, so no new tests. 117062 117063 * WebCore.base.exp: 117064 * WebCore.xcodeproj/project.pbxproj: 117065 * loader/DocumentWriter.cpp: 117066 (WebCore::DocumentWriter::createDocument): 117067 (WebCore::DocumentWriter::begin): 117068 * loader/FrameLoader.cpp: 117069 (WebCore::FrameLoader::FrameLoader): 117070 (WebCore::FrameLoader::init): 117071 (WebCore::FrameLoader::stopLoading): 117072 (WebCore::FrameLoader::didOpenURL): 117073 (WebCore::FrameLoader::didExplicitOpen): 117074 (WebCore::FrameLoader::clear): 117075 (WebCore::FrameLoader::didBeginDocument): 117076 (WebCore::FrameLoader::finishedParsing): 117077 (WebCore::FrameLoader::provisionalLoadStarted): 117078 (WebCore::FrameLoader::logCanCachePageDecision): 117079 (WebCore::FrameLoader::logCanCacheFrameDecision): 117080 (WebCore::FrameLoader::frameHasLoaded): 117081 (WebCore::FrameLoader::commitProvisionalLoad): 117082 (WebCore::FrameLoader::transitionToCommitted): 117083 (WebCore::FrameLoader::finishedLoadingDocument): 117084 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): 117085 (WebCore::FrameLoader::didFirstLayout): 117086 (WebCore::FrameLoader::frameLoadCompleted): 117087 (WebCore::FrameLoader::dispatchDidCommitLoad): 117088 * loader/FrameLoader.h: 117089 (WebCore::FrameLoader::stateMachine): 117090 * loader/FrameLoaderStateMachine.cpp: Added. 117091 * loader/FrameLoaderStateMachine.h: Added. 117092 * loader/HistoryController.cpp: 117093 (WebCore::HistoryController::restoreScrollPositionAndViewState): 117094 (WebCore::HistoryController::saveDocumentState): 117095 * loader/ProgressTracker.cpp: 117096 (WebCore::ProgressTracker::incrementProgress): 117097 * loader/RedirectScheduler.cpp: 117098 (WebCore::RedirectScheduler::scheduleLocationChange): 117099 (WebCore::RedirectScheduler::scheduleFormSubmission): 117100 117101 2010-06-21 Kevin Ollivier <kevino (a] theolliviers.com> 117102 117103 [wx] Build fix. Fix header includes for ENABLE(DATABASE) 117104 117105 * bindings/js/JSExceptionBase.cpp: 117106 117107 2010-06-21 Anders Carlsson <andersca (a] apple.com> 117108 117109 Fix clang++ build. 117110 117111 * loader/FormSubmission.h: 117112 117113 2010-06-21 Dimitri Glazkov <dglazkov (a] chromium.org> 117114 117115 Unreviewed, build fix. 117116 117117 Add a missing include in AsyncImageResizer.h 117118 117119 * html/AsyncImageResizer.h: Added the IntSize include. 117120 117121 2010-06-21 Adam Roben <aroben (a] apple.com> 117122 117123 Call NotifyAddrChange again each time we are notified of a change 117124 117125 NotifyAddrChange only notifies you of a single change. If you want to 117126 listen for subsequent changes, you have to call it again. 117127 117128 Fixes <http://webkit.org/b/33004> NetworkStateNotifier ignores all 117129 state changes after the first. 117130 117131 No test possible, as we don't have a way to modify the system's 117132 network adapters when running tests. 117133 117134 Reviewed by Anders Carlsson. 117135 117136 * platform/network/win/NetworkStateNotifierWin.cpp: 117137 (WebCore::NetworkStateNotifier::addrChangeCallback): Call 117138 registerForAddressChange as soon as we're notified of an address 117139 change, so we'll also get notified of the *next* address change. I 117140 added the call here instead of in addressChanged (which is called 117141 later on the main thread) to minimize the time between the callback 117142 and registering again (so that we won't miss changes that happen in 117143 rapid succession). 117144 117145 2010-06-21 Dan Bernstein <mitz (a] apple.com> 117146 117147 Release build fix 117148 117149 * rendering/RenderBlockLineLayout.cpp: 117150 (WebCore::tryHyphenating): 117151 117152 2010-06-21 Dan Bernstein <mitz (a] apple.com> 117153 117154 Windows build fix 117155 117156 * WebCore.vcproj/WebCore.vcproj: Fixed a typo. 117157 117158 2010-06-21 Dan Bernstein <mitz (a] apple.com> 117159 117160 Reviewed by Darin Adler. 117161 117162 CSS3: Implement the 'hyphens' and 'hyphenate-character' properties 117163 https://bugs.webkit.org/show_bug.cgi?id=10228 117164 117165 Tests: fast/text/hyphenate-character.html 117166 fast/text/hyphens.html 117167 117168 Added -webkit-hyphens and -webkit-hyphenate-character as specified in 117169 <http://www.w3.org/TR/2010/WD-css3-gcpm-20100608/#hyphenation>. 117170 117171 * Android.mk: Added Hyphenation.cpp. 117172 * CMakeLists.txt: Ditto. 117173 * GNUmakefile.am: Added Hyphenation.{cpp,h}. 117174 * WebCore.base.exp: Exported wkGetHyphenationLocationBeforeIndex(). 117175 * WebCore.gypi: Added Hyphenation.{cpp,h}. 117176 * WebCore.pro: Added Hyphenation.{cpp,h}. 117177 * WebCore.vcproj/WebCore.vcproj: Added Hyphenation.{cpp,h}. 117178 * WebCore.xcodeproj/project.pbxproj: Added Hyphenation.{cpp,h}. 117179 * css/CSSComputedStyleDeclaration.cpp: 117180 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added the -webkit-hyphenate-character 117181 and -webkit-hyphens cases. 117182 * css/CSSParser.cpp: 117183 (WebCore::CSSParser::parseValue): Validate values for the new properties. 117184 * css/CSSPrimitiveValueMappings.h: 117185 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added. Maps from a Hyphens value to an identifier. 117186 (WebCore::CSSPrimitiveValue::operator Hyphens): Added. Maps from an identifier to a Hyphens value. 117187 * css/CSSPropertyNames.in: Added -webkit-hyphenate-character and -webkit-hyphens. 117188 * css/CSSStyleSelector.cpp: 117189 (WebCore::CSSStyleSelector::applyProperty): Apply the new properties to the RenderStyle. 117190 * css/CSSValueKeywords.in: 117191 * platform/mac/WebCoreSystemInterface.h: Added wkGetHyphenationLocationBeforeIndex. 117192 * platform/mac/WebCoreSystemInterface.mm: Ditto. 117193 * platform/text/CharacterNames.h: Added the hyphen character. 117194 * platform/text/Hyphenation.cpp: Added. 117195 (WebCore::lastHyphenLocation): Added this default implementation for platforms that do not implement 117196 hyphenation yet. It calls notImplemented() and returns 0. 117197 * platform/text/Hyphenation.h: Added. 117198 * platform/text/cf/HyphenationCF.cpp: Added. 117199 (WebCore::lastHyphenLocation): Returns the last hyphenation location occurring in the given string before 117200 the given index. Uses the current search locale (which is based on the top language preference of the user) 117201 for hyphenation. 117202 * platform/text/mac/HyphenationMac.mm: Added. 117203 (WebCore::lastHyphenLocation): Returns the last hyphenation location occurring in the given string before 117204 the given index. Returns 0 if the current search locale is not "en", because the platform only knows how to 117205 hyphenate English. 117206 * rendering/BidiRun.h: 117207 (WebCore::BidiRun::BidiRun): Added a boolean member, m_hasHyphen, and initialized it to false in the constructor. 117208 * rendering/InlineBox.h: 117209 (WebCore::InlineBox::InlineBox): Renamed m_hasEllipsisBox to m_hasEllipsisBoxOrHyphen, because this bit is now 117210 shared by two subclass: RootInlineBox uses it for hasEllipsisBox(), while InlineTextBox uses it for hasHyphen(). 117211 * rendering/InlineTextBox.cpp: 117212 (WebCore::adjustCharactersAndLengthForHyphen): Added this helper function to get the hyphen string from the style 117213 and return a UChar* and length for the concatenation of the given text with the hyphen string. 117214 (WebCore::InlineTextBox::selectionRect): If the selected range touches the end and the box has a hyphen, 117215 compute the width of the text with the hyphen string concatenated to it. 117216 (WebCore::InlineTextBox::paint): If the box has a hyphen, draw the text with the hyphen string concatenated to it. 117217 (WebCore::InlineTextBox::paintSelection): Similarly concatenate the hyphen string. 117218 * rendering/InlineTextBox.h: 117219 (WebCore::InlineTextBox::hasHyphen): Added this accessor. 117220 (WebCore::InlineTextBox::setHasHyphen): Ditto. 117221 * rendering/RenderBlock.h: 117222 * rendering/RenderBlockLineLayout.cpp: 117223 (WebCore::RenderBlock::constructLine): Copy the m_hasHyphen flag from the run to its text box. 117224 (WebCore::RenderBlock::computeHorizontalPositionsForLine): Add the width of the hyphen string when computing the 117225 width of a box that has a hyphen. 117226 (WebCore::RenderBlock::layoutInlineChildren): If the line was hyphenated, set the m_hasHyphen flag on the 117227 logically last run. 117228 (WebCore::tryHyphenating): Added this helper function which checks if a piece of text that does not fit on the 117229 line could be hyphenated such that the part before the hyphen, including the hyphen, would fit. Given the amount 117230 of space remaining on the line, it finds the longest prefix that can fit in the remaining space (which leaving room for 117231 the hyphen), and then checks for a hyphenation location within that prefix. 117232 (WebCore::RenderBlock::findNextLineBreak): In the 'hyphens: none' case, prevent line breaks at soft hyphens. 117233 In the 'hyphens: auto' case, try hyphenating when a word will not fit in the remaining space on the line. 117234 * rendering/RootInlineBox.cpp: 117235 (WebCore::RootInlineBox::detachEllipsisBox): Changed to use hasEllipsisBox() and setHasEllipsisBox(). 117236 (WebCore::RootInlineBox::clearTruncation): Ditto. 117237 (WebCore::RootInlineBox::placeEllipsis): Ditto. 117238 (WebCore::RootInlineBox::paintEllipsisBox): Ditto. 117239 (WebCore::RootInlineBox::nodeAtPoint): Ditto. 117240 (WebCore::RootInlineBox::ellipsisBox): Ditto. 117241 * rendering/RootInlineBox.h: 117242 (WebCore::RootInlineBox::hasEllipsisBox): Added this accessor. 117243 (WebCore::RootInlineBox::setHasEllipsisBox): Ditto. 117244 * rendering/style/RenderStyle.cpp: 117245 (WebCore::RenderStyle::diff): Return a layout hint if the hyphens setting or hyphenate-character differs. 117246 (WebCore::RenderStyle::hyphenString): Added. For hyphenate-character: auto, returns the hyphen character. 117247 * rendering/style/RenderStyle.h: 117248 (WebCore::InheritedFlags::hyphens): Added this accessor. 117249 (WebCore::InheritedFlags::hyphenateCharacter): Ditto. 117250 (WebCore::InheritedFlags::setHyphens): Ditto. 117251 (WebCore::InheritedFlags::setHyphenateCharacter): Ditto. 117252 (WebCore::InheritedFlags::initialHyphens): Added. Returns HyphensManual. 117253 (WebCore::InheritedFlags::initialHyphenateCharacter): Added. Returns the null string, corresponding to 117254 a value of 'auto'. 117255 * rendering/style/RenderStyleConstants.h: 117256 Added a Hyphens enum. 117257 * rendering/style/StyleRareInheritedData.cpp: 117258 (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize and copy the new members. 117259 (WebCore::StyleRareInheritedData::operator==): Compare the new members. 117260 * rendering/style/StyleRareInheritedData.h: Added two new members: hyphens and hyphenateCharacter. 117261 117262 2010-06-03 Dimitri Glazkov <dglazkov (a] chromium.org> 117263 117264 Reviewed by Darin Adler. 117265 117266 Plumb FormSubmission through to ScheduledFormSubmission. 117267 https://bugs.webkit.org/show_bug.cgi?id=40137 117268 117269 No behavior change, covered by existing tests. 117270 117271 * html/HTMLFormElement.cpp: 117272 (WebCore::HTMLFormElement::prepareFormSubmission): Moved creation of action URL 117273 instance here from FrameLoader::submit, because it makes more sense here, 117274 also added a FIXME to investigate existing code later. 117275 * loader/FormSubmission.cpp: 117276 (WebCore::FormSubmission::FormSubmission): Changed action to be a KURL, not a String. 117277 (WebCore::FormSubmission::create): Ditto. 117278 (WebCore::FormSubmission::populateFrameLoadRequest): Added, moving the logic from 117279 FrameLoader::submit closer to the data. 117280 * loader/FormSubmission.h: 117281 (WebCore::FormSubmission::action): Changed type to KURL. 117282 (WebCore::FormSubmission::clearTarget): Added. 117283 (WebCore::FormSubmission::referrer): Added. 117284 (WebCore::FormSubmission::setReferrer): Added. 117285 (WebCore::FormSubmission::origin): Added. 117286 (WebCore::FormSubmission::setOrigin): Added. 117287 * loader/FrameLoader.cpp: 117288 (WebCore::FrameLoader::submitForm): Cleaned up to make it more about decision-making, 117289 not data manipulation. 117290 * loader/RedirectScheduler.cpp: 117291 (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): Changed to accept FormSubmission as argument. 117292 (WebCore::ScheduledFormSubmission::fire): Changed to use FormSubmission. 117293 (WebCore::RedirectScheduler::scheduleFormSubmission): Removed assert that no longer makes sense, 117294 changed to use FormSubmission. 117295 * loader/RedirectScheduler.h: Updated ScheduledFormSubmission decl to hold FormSubmission ref. 117296 117297 2010-06-21 Satish Sampath <satish (a] chromium.org> 117298 117299 Reviewed by Steve Block. 117300 117301 Speech Input Patch 0: Added compilation argument to conditionally compile pending patches. 117302 https://bugs.webkit.org/show_bug.cgi?id=40878 117303 117304 No new tests are needed, because there is no new functionality. 117305 117306 * Configurations/FeatureDefines.xcconfig: 117307 * GNUmakefile.am: 117308 * WebCore.pri: 117309 117310 2010-06-21 Hans Wennborg <hans (a] chromium.org> 117311 117312 Reviewed by Jeremy Orlow. 117313 117314 Delete DOM storage databases when they are empty. 117315 https://bugs.webkit.org/show_bug.cgi?id=40767 117316 117317 Even if a page clears its local storage, the database file for it stays around, 117318 and there is currently no mechanism that deletes them. 117319 117320 After doing the "final sync" of a storage area, the StorageAreaSyncMaster should 117321 see if the database is empty, and in that case delete it. 117322 117323 Tests: 117324 manual-tests/localstorage-empty-database.html 117325 117326 * manual-tests/localstorage-empty-database.html: 117327 Added link to clear local storage for testing that the file is removed. 117328 * storage/LocalStorageTask.cpp: 117329 (WebCore::LocalStorageTask::LocalStorageTask): 117330 Added local storage task type DeleteEmptyDatabase. 117331 (WebCore::LocalStorageTask::performTask): 117332 Ditto. 117333 * storage/LocalStorageTask.h: 117334 (WebCore::LocalStorageTask::): 117335 Ditto. 117336 (WebCore::LocalStorageTask::createDeleteEmptyDatabase): 117337 Ditto. 117338 * storage/StorageAreaSync.cpp: 117339 (WebCore::StorageAreaSync::scheduleFinalSync): 117340 When scheduling final sync, also schedule DeleteEmptyDatabase. 117341 (WebCore::StorageAreaSync::sync): 117342 Return early if final sync has nothing to sync. 117343 (WebCore::StorageAreaSync::deleteEmptyDatabase): 117344 Added function to check if a database is empty and in that case delete it. 117345 * storage/StorageAreaSync.h: 117346 Ditto. 117347 * storage/StorageSyncManager.cpp: 117348 (WebCore::StorageSyncManager::scheduleDeleteEmptyDatabase): 117349 Added function for scheduling DeleteEmptyDatabase task. 117350 * storage/StorageSyncManager.h: 117351 Ditto. 117352 117353 2010-06-21 Balazs Kelemen <kb (a] inf.u-szeged.hu> 117354 117355 Reviewed by Simon Hausmann. 117356 117357 [Qt] Avoid unnecessary image conversion in RGBA32Buffer::zeroFill() 117358 https://bugs.webkit.org/show_bug.cgi?id=40910 117359 117360 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 117361 (WebCore::RGBA32Buffer::zeroFill): 117362 117363 2010-06-21 Benjamin Poulain <benjamin.poulain (a] nokia.com> 117364 117365 Reviewed by Kenneth Rohde Christiansen. 117366 117367 [Qt] Decode images directly to QPixmap 117368 https://bugs.webkit.org/show_bug.cgi?id=40797 117369 117370 Decode images to QPixmap directly instead of QImage when possible. 117371 RGBA32Buffer transforms the pixmap back to image if 117372 necessary. 117373 117374 This improve the performance with certain graphic system, and 117375 can reduce memory usage. 117376 117377 * platform/graphics/qt/ImageDecoderQt.cpp: 117378 (WebCore::ImageDecoderQt::setData): 117379 (WebCore::ImageDecoderQt::internalHandleCurrentImage): 117380 * platform/image-decoders/ImageDecoder.h: 117381 (WebCore::RGBA32Buffer::getAddr): 117382 * platform/image-decoders/qt/RGBA32BufferQt.cpp: 117383 (WebCore::RGBA32Buffer::clear): 117384 (WebCore::RGBA32Buffer::zeroFill): 117385 (WebCore::RGBA32Buffer::copyBitmapData): 117386 (WebCore::RGBA32Buffer::setSize): 117387 (WebCore::RGBA32Buffer::asNewNativeImage): 117388 (WebCore::RGBA32Buffer::setPixmap): 117389 117390 2010-06-20 Dumitru Daniliuc <dumi (a] chromium.org> 117391 117392 Reviewed by Adam Barth. 117393 117394 Adding the SQLException class which will be used to report sync DB errors. 117395 https://bugs.webkit.org/show_bug.cgi?id=40607 117396 117397 * Android.derived.jscbindings.mk: 117398 * Android.derived.v8bindings.mk: 117399 * CMakeLists.txt: 117400 * DerivedSources.cpp: 117401 * DerivedSources.make: 117402 * GNUmakefile.am: 117403 * WebCore.gypi: 117404 * WebCore.pri: 117405 * WebCore.vcproj/WebCore.vcproj: 117406 * WebCore.xcodeproj/project.pbxproj: 117407 * bindings/js/JSDOMBinding.cpp: 117408 (WebCore::setDOMException): 117409 * bindings/js/JSExceptionBase.cpp: 117410 (WebCore::toExceptionBase): 117411 * bindings/v8/V8Proxy.cpp: 117412 (WebCore::V8Proxy::setDOMException): 117413 * bindings/v8/V8Proxy.h: 117414 * dom/ExceptionCode.cpp: 117415 (WebCore::): 117416 (WebCore::getExceptionCodeDescription): 117417 * dom/ExceptionCode.h: 117418 (WebCore::): 117419 * page/DOMWindow.idl: 117420 * storage/SQLException.h: Added. 117421 (WebCore::SQLException::create): 117422 (WebCore::SQLException::): 117423 (WebCore::SQLException::SQLException): 117424 * storage/SQLException.idl: Added. 117425 117426 2010-06-20 Yury Semikhatsky <yurys (a] chromium.org> 117427 117428 Reviewed by Pavel Feldman. 117429 117430 [v8] Web Inspector: don't add ScriptDebugServer as v8 listener if browser exposes 117431 v8 debugging protocol. 117432 https://bugs.webkit.org/show_bug.cgi?id=40844 117433 117434 * bindings/v8/ScriptDebugServer.cpp: 117435 (WebCore::ScriptDebugServer::ScriptDebugServer): 117436 (WebCore::ScriptDebugServer::addListener): 117437 (WebCore::ScriptDebugServer::setEnabled): 117438 (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled): 117439 * bindings/v8/ScriptDebugServer.h: 117440 117441 2010-06-20 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 117442 117443 Unreviewed build fix. 117444 117445 [EFL] Build break for r61527 117446 https://bugs.webkit.org/post_bug.cgi 117447 117448 * CMakeLists.txt: Add loader/FormSubmission.cpp 117449 117450 2010-06-20 Anders Carlsson <andersca (a] apple.com> 117451 117452 Reviewed by Dan Bernstein. 117453 117454 Remove bogus const qualifiers. 117455 117456 * platform/mac/PasteboardHelper.h: 117457 117458 2010-06-20 Patrick Gansterer <paroga (a] paroga.com> 117459 117460 Reviewed by Kent Tamura. 117461 117462 Buildfix for NotificationCenter.h. 117463 https://bugs.webkit.org/show_bug.cgi?id=40890 117464 117465 ScriptExecutionContext::completeURL is used in header, 117466 but ScriptExecutionContext.h wasn't included. 117467 117468 * notifications/NotificationCenter.h: 117469 117470 2010-06-20 Tony Gentilcore <tonyg (a] chromium.org> 117471 117472 Reviewed by Eric Seidel. 117473 117474 Recognize async attribute on HTML script tags. 117475 https://bugs.webkit.org/show_bug.cgi?id=39026 117476 117477 This does not implement async behavior, it only parses the async 117478 attribute for HTML script tags. SVG script tags continue to not 117479 support the async attribute. 117480 117481 Tests: fast/dom/HTMLScriptElement/script-async-attr.html 117482 svg/dom/SVGScriptElement/script-async-attr.svg 117483 117484 * dom/ScriptElement.cpp: 117485 (WebCore::ScriptElementData::isAsynchronous): 117486 (WebCore::ScriptElementData::isDeferred): 117487 * dom/ScriptElement.h: 117488 * html/HTMLAttributeNames.in: 117489 * html/HTMLScriptElement.cpp: 117490 (WebCore::HTMLScriptElement::async): 117491 (WebCore::HTMLScriptElement::setAsync): 117492 (WebCore::HTMLScriptElement::defer): 117493 (WebCore::HTMLScriptElement::asyncAttributeValue): 117494 (WebCore::HTMLScriptElement::deferAttributeValue): 117495 * html/HTMLScriptElement.h: 117496 * html/HTMLScriptElement.idl: 117497 * svg/SVGScriptElement.cpp: 117498 (WebCore::SVGScriptElement::asyncAttributeValue): 117499 (WebCore::SVGScriptElement::deferAttributeValue): 117500 * svg/SVGScriptElement.h: 117501 117502 2010-06-20 Nikita Vasilyev <me (a] elv1s.ru> 117503 117504 Reviewed by Joseph Pecoraro. 117505 117506 Web Inspector: Auto-completion for CSS property names in Styles pane 117507 https://bugs.webkit.org/show_bug.cgi?id=17374 117508 117509 Added autocompletion for CSS properties. A suggestion for a property 117510 shows when you type. You can also cycle through known property names 117511 using the Up and Down arrow keys. 117512 117513 * WebCore.gypi: 117514 * inspector/front-end/CSSCompletions.js: Added. 117515 (WebInspector.CSSCompletions): 117516 (WebInspector.CSSCompletions.startsWith): 117517 (WebInspector.CSSCompletions.firstStartsWith): 117518 (WebInspector.CSSCompletions._firstIndexOfPrefix): 117519 (WebInspector.CSSCompletions.next): 117520 (WebInspector.CSSCompletions.previous): 117521 (WebInspector.CSSCompletions._closest): 117522 * inspector/front-end/StylesSidebarPane.js: 117523 (WebInspector.StylePropertyTreeElement.prototype): 117524 * inspector/front-end/WebKit.qrc: 117525 * inspector/front-end/inspector.html: 117526 * inspector/front-end/utilities.js: 117527 (Text.prototype.select): 117528 (): 117529 117530 2010-06-14 Dimitri Glazkov <dglazkov (a] chromium.org> 117531 117532 Reviewed by Darin Adler. 117533 117534 Introduce FormSubmission, the structure representing a form submission. 117535 https://bugs.webkit.org/show_bug.cgi?id=40084 117536 117537 No change in functionality, covered by existing tests. 117538 117539 * GNUmakefile.am: Added FormSubmission.h/cpp. 117540 * WebCore.gypi: Ditto. 117541 * WebCore.pro: Ditto. 117542 * WebCore.vcproj/WebCore.vcproj: Ditto. 117543 * WebCore.xcodeproj/project.pbxproj: Ditto. 117544 * html/HTMLFormElement.cpp: 117545 (WebCore::HTMLFormElement::prepareFormSubmission): Renamed prepareFormData to prepareFormSubmission, 117546 added code for populating a FormSubmission instance, moved the loop of accumulating text input 117547 values into this functions (it belongs here logically). 117548 (WebCore::HTMLFormElement::submit): Modified to use prepareFormSubmission. 117549 * html/HTMLFormElement.h: 117550 * loader/FormSubmission.cpp: Added. 117551 * loader/FormSubmission.h: Added. 117552 * loader/FrameLoader.cpp: 117553 (WebCore::FrameLoader::submitForm): Modified to use FormSubmission. Stopped plumbing further to keep 117554 the patch size down. 117555 * loader/FrameLoader.h: Modified submitForm signature. 117556 117557 2010-06-20 Joseph Pecoraro <joepeck (a] webkit.org> 117558 117559 Unreviewed rollout r61506, because it made 1 test crash. 117560 117561 Causes crash. Will approach the solution in a different way. 117562 117563 2010-06-20 Joseph Pecoraro <joepeck (a] webkit.org> 117564 117565 Reviewed by Timothy Hatcher. 117566 117567 Web Inspector: Should Autocomplete Style Properties 117568 https://bugs.webkit.org/show_bug.cgi?id=38448 117569 117570 This Autocompletes style properties when in the console. 117571 117572 * inspector/front-end/InjectedScript.js: 117573 (injectedScriptConstructor): 117574 117575 2010-06-20 Robert Hogan <robert (a] webkit.org> 117576 117577 Reviewed by Simon Hausmann. 117578 117579 [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved 117580 117581 https://bugs.webkit.org/show_bug.cgi?id=36702 117582 117583 setNPWindowIfNeeded() is called on paint() in PluginViewQt, which doesn't 117584 work for DRT. So call it if we are in DRT mode and the window geometry 117585 has changed. 117586 117587 Unskips plugins/reentrant-update-widget-positions.html 117588 117589 * plugins/qt/PluginViewQt.cpp: 117590 (WebCore::PluginView::updatePluginWidget): 117591 117592 2010-06-19 Tony Gentilcore <tonyg (a] chromium.org> 117593 117594 Reviewed by Adam Barth. 117595 117596 Persist V8's ScriptData to the memory cache. 117597 https://bugs.webkit.org/show_bug.cgi?id=38661 117598 117599 This stores V8's ScriptData in the memory cache and also causes the 117600 network platform layer to be notified of the available cacheable 117601 metadata. 117602 117603 Chromium's morejs benchmark showed a ~7% improvement when this was 117604 originally submitted (before it had to be rolled back). 117605 117606 Test: fast/js/parser-high-byte-character.html 117607 117608 * bindings/v8/ScriptSourceCode.h: 117609 (WebCore::ScriptSourceCode::ScriptSourceCode): 117610 (WebCore::ScriptSourceCode::cachedScript): 117611 * bindings/v8/V8Proxy.cpp: 117612 (WebCore::V8Proxy::compileScript): 117613 (WebCore::V8Proxy::precompileScript): 117614 (WebCore::V8Proxy::evaluate): 117615 * bindings/v8/V8Proxy.h: 117616 117617 2010-06-19 Kwang Yul Seo <skyul (a] company100.net> 117618 117619 Reviewed by Kent Tamura. 117620 117621 [BREWMP] Port SocketStream 117622 https://bugs.webkit.org/show_bug.cgi?id=39671 117623 117624 Port SocketStream with BREW MP's ISocket interface. 117625 117626 * platform/network/brew/SocketStreamError.h: Added. 117627 (WebCore::SocketStreamError::SocketStreamError): 117628 * platform/network/brew/SocketStreamHandle.h: Added. 117629 (WebCore::SocketStreamHandle::create): 117630 * platform/network/brew/SocketStreamHandleBrew.cpp: Added. 117631 (WebCore::socketStreamConnectCallback): 117632 (WebCore::getHostByNameCallback): 117633 (WebCore::socketReadableCallback): 117634 (WebCore::networkManager): 117635 (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate): 117636 (WebCore::SocketStreamHandlePrivate::~SocketStreamHandlePrivate): 117637 (WebCore::SocketStreamHandlePrivate::socketConnected): 117638 (WebCore::SocketStreamHandlePrivate::socketReadyRead): 117639 (WebCore::SocketStreamHandlePrivate::connect): 117640 (WebCore::SocketStreamHandlePrivate::send): 117641 (WebCore::SocketStreamHandlePrivate::close): 117642 (WebCore::SocketStreamHandlePrivate::socketClosed): 117643 (WebCore::SocketStreamHandlePrivate::socketError): 117644 (WebCore::SocketStreamHandle::SocketStreamHandle): 117645 (WebCore::SocketStreamHandle::~SocketStreamHandle): 117646 (WebCore::SocketStreamHandle::platformSend): 117647 (WebCore::SocketStreamHandle::platformClose): 117648 (WebCore::SocketStreamHandle::didReceiveAuthenticationChallenge): 117649 (WebCore::SocketStreamHandle::receivedCredential): 117650 (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential): 117651 (WebCore::SocketStreamHandle::receivedCancellation): 117652 * platform/network/brew/SocketStreamHandlePrivate.h: Added. 117653 117654 2010-06-19 Nikita Vasilyev <me (a] elv1s.ru> 117655 117656 Reviewed by Pavel Feldman. 117657 117658 Web Inspector: Prevent from copying "filename.css" in Styles pane 117659 https://bugs.webkit.org/show_bug.cgi?id=40420 117660 117661 * inspector/front-end/Section.js: 117662 (WebInspector.Section.prototype.set subtitle): 117663 (WebInspector.Section.prototype.get subtitleAsText): 117664 * inspector/front-end/StylesSidebarPane.js: 117665 (WebInspector.StylePropertiesSection): 117666 * inspector/front-end/inspector.css: 117667 (.styles-section .subtitle::before, .styles-section .subtitle a::before): 117668 117669 2010-06-19 Alex Milowski <alex (a] milowski.com> 117670 117671 Reviewed by Darin Adler. 117672 117673 A fix for a change in https://bugs.webkit.org/show_bug.cgi?id=39941 117674 that caused a compile error in MathML. 117675 https://bugs.webkit.org/show_bug.cgi?id=40827 117676 117677 * mathml/MathMLElement.cpp: 117678 (WebCore::MathMLElement::MathMLElement): 117679 117680 2010-06-19 Kartikaya Gupta <kagupta (a] rim.com> 117681 117682 Reviewed by Nikolas Zimmermann. 117683 117684 CPP bindings missing some APIs 117685 https://bugs.webkit.org/show_bug.cgi?id=40570 117686 117687 Add missing C++ DOM API bindings. Specifically: 117688 - NodeFilter callback support 117689 - Missing custom method implementations in HTMLCollection and HTMLOptionsCollection 117690 - Missing EventTarget static type-determination methods 117691 - Fix CPP binding generator to not generate d-ptrs for classes that extend EventTarget and just use the parent's d-ptr instead 117692 - Switch binding generator to use DOMWindow instead of AbstractView so that necessary W3C-defined methods (e.g. getComputedStyle) are accessible. 117693 117694 * bindings/cpp/WebDOMDOMWindowCustom.cpp: Added. 117695 (WebDOMDOMWindow::addEventListener): 117696 (WebDOMDOMWindow::removeEventListener): 117697 * bindings/cpp/WebDOMEventTarget.cpp: 117698 (toWebKit): 117699 * bindings/cpp/WebDOMEventTarget.h: 117700 * bindings/cpp/WebDOMHTMLCollectionCustom.cpp: Added. 117701 (WebDOMHTMLCollection::item): 117702 (WebDOMHTMLCollection::namedItem): 117703 * bindings/cpp/WebDOMHTMLOptionsCollectionCustom.cpp: Added. 117704 (WebDOMHTMLOptionsCollection::length): 117705 (WebDOMHTMLOptionsCollection::setLength): 117706 * bindings/cpp/WebDOMNodeFilterCustom.cpp: Added. 117707 (WebDOMNodeFilter::acceptNode): 117708 (toWebKit): 117709 * bindings/cpp/WebNativeNodeFilterCondition.cpp: Added. 117710 (WebNativeNodeFilterCondition::WebNativeNodeFilterCondition): 117711 (WebNativeNodeFilterCondition::~WebNativeNodeFilterCondition): 117712 (WebNativeNodeFilterCondition::acceptNode): 117713 * bindings/cpp/WebNativeNodeFilterCondition.h: Added. 117714 (WebNativeNodeFilterCondition::create): 117715 * bindings/scripts/CodeGeneratorCPP.pm: 117716 * dom/NodeFilter.idl: 117717 * page/DOMWindow.idl: 117718 117719 2010-06-19 Vangelis Kokkevis <vangelis (a] chromium.org> 117720 117721 Reviewed by Dimitri Glazkov. 117722 117723 [chromium] Adding a conditional gyp dependency for the WebCore target to 117724 the gles2_c_lib which is required by the gpu compositor. The dependency will 117725 only kick in if the accelerated_compositing path is enabled. 117726 https://bugs.webkit.org/show_bug.cgi?id=40801 117727 117728 * WebCore.gyp/WebCore.gyp: 117729 117730 2010-06-19 Yael Aharon <yael.aharon (a] nokia.com> 117731 117732 Reviewed by Kenneth Rohde Christiansen. 117733 117734 [Qt] Platform plugin's multi-select does not take OptGroup into account 117735 https://bugs.webkit.org/show_bug.cgi?id=40718 117736 117737 In multi-select elements, optgroup elements are counted in the index calculation, 117738 but in single-select they are not. Keep the same logic even when NO_LISTBOX_RENDERING 117739 is enabled. 117740 Added tests to the existing manual test, as testing this requires a special build, in which 117741 NO_LISTBOX_RENDERING is enabled. 117742 117743 * html/HTMLSelectElement.cpp: 117744 (WebCore::HTMLSelectElement::listBoxSelectItem): 117745 * manual-tests/no-listbox-rendering.html: 117746 * rendering/RenderMenuList.cpp: 117747 (WebCore::RenderMenuList::listBoxSelectItem): 117748 117749 2010-06-19 Thomas Van Lenten <thomasvl (a] chromium.org> 117750 117751 Reviewed by David Levin. 117752 117753 Warnings from -Wextra in a Chromium Mac build 117754 1. checks of unsigned >= 0 117755 2. enumeral and non-enumeral type in conditional expression 117756 3. copy ctors that don't call the super copy ctor or ctor 117757 No functionality change so no new tests. 117758 117759 https://bugs.webkit.org/show_bug.cgi?id=40791 117760 117761 * platform/chromium/ChromiumDataObject.cpp: 117762 (WebCore::ChromiumDataObject::ChromiumDataObject): 117763 * platform/chromium/ThemeChromiumMac.mm: 117764 (WebCore::updateStates): 117765 * rendering/RenderThemeChromiumMac.mm: 117766 (WebCore::RenderThemeChromiumMac::updateActiveState): 117767 117768 2010-06-19 Ben Murdoch <benm (a] google.com> 117769 117770 Reviewed by Pavel Feldman. 117771 117772 Fix build break with inspector disabled. 117773 https://bugs.webkit.org/show_bug.cgi?id=40790 117774 117775 Replace a #include with a forward declaration. 117776 117777 Fixing a build break so no new tests required. 117778 117779 * inspector/InspectorController.h: Forward declare InspectorValue 117780 rather than #including its header which has its content guarded 117781 out. 117782 117783 2010-06-19 Zhe Su <suzhe (a] chromium.org> 117784 117785 Reviewed by Darin Fisher. 117786 117787 [chromium]Refactor input method related APIs. 117788 https://bugs.webkit.org/show_bug.cgi?id=40608 117789 117790 No new tests are needed, because there is no new functionality. 117791 117792 * page/FocusController.cpp: 117793 (WebCore::FocusController::setFocusedNode): 117794 117795 2010-06-19 George Wright <gwright (a] rim.com> 117796 117797 Reviewed by George Staikos. 117798 117799 https://bugs.webkit.org/show_bug.cgi?id=40720 117800 117801 Make setWapInputFormat() public again as CSSStyleSelector.cpp calls this when WCSS is enabled. 117802 117803 * html/HTMLInputElement.h: 117804 (WebCore::HTMLInputElement::data): 117805 117806 2010-06-02 Robert Hogan <robert (a] webkit.org> 117807 117808 Reviewed by Adam Barth. 117809 117810 [Qt] Support evaluateScriptInIsolatedWorld() 117811 117812 https://bugs.webkit.org/show_bug.cgi?id=40079 117813 117814 getOwnPropertyNames() crashes if PropertyNameArray is size 0. This change allows 117815 http/tests/world-reuse.html and didClearWindowObject.html to fail instead of crash. 117816 117817 * WebCore.pro: Add qwebscriptworld.* 117818 * bridge/qt/qt_runtime.cpp: 117819 (JSC::Bindings::convertValueToQVariant): 117820 117821 2010-06-19 Tony Gentilcore <tonyg (a] chromium.org> 117822 117823 Reviewed by Eric Seidel. 117824 117825 Some very minor cleanups for HTML5 Parser 117826 https://bugs.webkit.org/show_bug.cgi?id=40638 117827 117828 No new tests because no new functionality. 117829 117830 * html/HTML5DocumentParser.cpp: 117831 (WebCore::): Make ctor explicit. 117832 * html/HTML5DocumentParser.h: 117833 (WebCore::HTML5DocumentParser::InsertionPointRecord::InsertionPointRecord): Make ctor explicit. 117834 * html/HTML5Lexer.cpp: 117835 (WebCore::HTMLNames::isEndTagBufferingState): Use switch to generate an efficient table with single branch. 117836 * html/HTML5Token.h: 117837 (WebCore::HTML5Token::forceQuirks): Add const. 117838 * html/HTML5TreeBuilder.h: 117839 (WebCore::HTML5TreeBuilder::isPaused): Add const. 117840 117841 2010-06-18 Aaron Boodman <aa (a] chromium.org> 117842 117843 Remove WebKit::WebDocument::isXHTMLDocument. 117844 https://bugs.webkit.org/show_bug.cgi?id=40815 117845 117846 * dom/Document.h: remove isXHTML() getter. 117847 117848 2010-06-19 Aaron Boodman <aa (a] chromium.org> 117849 117850 Unreviewed, rolling out r61466. 117851 http://trac.webkit.org/changeset/61466 117852 https://bugs.webkit.org/show_bug.cgi?id=40816 117853 117854 Landed wrong change 117855 117856 * bindings/v8/V8DOMWindowShell.cpp: 117857 (WebCore::V8DOMWindowShell::initContextIfNeeded): 117858 * bindings/v8/V8DOMWindowShell.h: 117859 117860 2010-06-18 Aaron Boodman <aa (a] chromium.org> 117861 117862 WebKit API: Undo static hooks into V8 when WebKit is shut down. 117863 https://bugs.webkit.org/show_bug.cgi?id=40816 117864 117865 * bindings/v8/V8DOMWindowShell.cpp: 117866 (WebCore::V8DOMWindowShell::initContextIfNeeded): 117867 (WebCore::V8DOMWindowShell::initializeV8IfNeeded): 117868 (WebCore::V8DOMWindowShell::uninitializeV8IfNeeded): 117869 * bindings/v8/V8DOMWindowShell.h: 117870 117871 2010-06-18 Jessie Berlin <jberlin (a] webkit.org> 117872 117873 Reviewed by Darin Adler. 117874 117875 Bug 19509 - Database Tables in the Inspector should be sortable 117876 https://bugs.webkit.org/show_bug.cgi?id=19509 117877 117878 * inspector/front-end/StoragePanel.js: 117879 (WebInspector.StoragePanel.prototype.dataGridForResult): 117880 Make each column in the DataGrid sortable. 117881 (WebInspector.StoragePanel.prototype._sortDataGrid.comparator): 117882 Make sure to sort numeric columns by their numeric values, instead of lexicographically. 117883 (WebInspector.StoragePanel.prototype._sortDataGrid): 117884 Sort the entries in the DataGrid based on the selected column. 117885 117886 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117887 117888 Reviewed by Oliver Hunt. 117889 117890 More clang++ warning fixes. 117891 117892 * inspector/InspectorFrontendClientLocal.cpp: 117893 (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight): 117894 * platform/graphics/mac/FontPlatformData.h: 117895 * platform/graphics/mac/WebLayer.mm: 117896 (-[CALayer _descriptionWithPrefix:]): 117897 117898 2010-06-18 Dimitri Glazkov <dglazkov (a] chromium.org> 117899 117900 Unreviewed, build fix. 117901 117902 * WebCore.gyp/WebCore.gyp: Modified inclusion rule in to actually add WebSystemInterface.mm. 117903 117904 2010-06-18 Dimitri Glazkov <dglazkov (a] chromium.org> 117905 117906 Unreviewed, build fix. 117907 117908 * WebCore.gyp/WebCore.gyp: Renamed WebSystemInterface.m to WebSystemInterface.mm. 117909 117910 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117911 117912 Reviewed by Sam Weinig. 117913 117914 Make WebCoreSystemInterface.h a C++ only header 117915 https://bugs.webkit.org/show_bug.cgi?id=40867 117916 117917 * platform/mac/WebCoreSystemInterface.h: 117918 117919 2010-06-18 Abhishek Arya <inferno (a] chromium.org> 117920 117921 Reviewed by Adam Barth. 117922 117923 Convert column span from an unsigned short type to an unsigned int 117924 type. Fixes a divide-by-zero crash arising from using a zero colspan 117925 value coming from a narrow cast of an int to an unsigned short. 117926 https://bugs.webkit.org/show_bug.cgi?id=40812 117927 117928 Test: fast/table/zero-colspan-crash.html 117929 117930 * rendering/RenderTable.h: Change span from unsigned short to unsigned int. 117931 * rendering/RenderTableSection.cpp: Fix a compiler warning with comparing 117932 unsigned int with signed int. Value of an unsigned int here cannot be 117933 greater than maximum positive value of a signed int. 117934 (WebCore::RenderTableSection::addCell): 117935 117936 2010-06-18 Ananth Jasty <ext-ananth.jasty (a] nokia.com> 117937 117938 Reviewed by Simon Hausmann. 117939 117940 [Qt] Text spacing miscalculation when using wordSpacing. 117941 https://bugs.webkit.org/show_bug.cgi?id=40483 117942 117943 Removed wordSpacing compensation in FontQt whitespace width 117944 calculation. The QFontMetrics::width() overload that takes 117945 a character does not take QFont's word spacing into account. 117946 117947 * platform/graphics/qt/FontQt.cpp: 117948 (WebCore::Font::floatWidthForComplexText): 117949 117950 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117951 117952 Reviewed by Darin Adler. 117953 117954 Get rid of PluginDataMac.mm and use the plug-in strategy instead 117955 https://bugs.webkit.org/show_bug.cgi?id=40860 117956 117957 * WebCore.xcodeproj/project.pbxproj: 117958 * page/mac/WebCoreViewFactory.h: 117959 * plugins/PluginData.cpp: 117960 (WebCore::PluginData::refresh): 117961 (WebCore::PluginData::initPlugins): 117962 * plugins/PluginStrategy.h: 117963 * plugins/mac/PluginDataMac.mm: Removed. 117964 117965 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117966 117967 Reviewed by Dan Bernstein. 117968 117969 Fix some (not all) clang++ warnings. 117970 117971 * dom/Position.h: 117972 (WebCore::lastOffsetInNode): 117973 * editing/CompositeEditCommand.cpp: 117974 (WebCore::CompositeEditCommand::deleteInsignificantText): 117975 * loader/appcache/ApplicationCache.cpp: 117976 (WebCore::ApplicationCache::resourceForRequest): 117977 * platform/graphics/mac/ComplexTextController.cpp: 117978 (WebCore::ComplexTextController::offsetForPosition): 117979 (WebCore::ComplexTextController::collectComplexTextRuns): 117980 * platform/network/CredentialStorage.cpp: 117981 (WebCore::protectionSpaceMapKeyFromURL): 117982 * rendering/style/StyleRareNonInheritedData.h: 117983 117984 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117985 117986 Reviewed by Dan Bernstein. 117987 117988 Add stubbed out WebPlatformStrategies class to WebKit. 117989 https://bugs.webkit.org/show_bug.cgi?id=40851 117990 117991 * WebCore.base.exp: 117992 * platform/PlatformStrategies.cpp: 117993 * platform/PlatformStrategies.h: 117994 (WebCore::PlatformStrategies::~PlatformStrategies): 117995 117996 2010-06-18 Anders Carlsson <andersca (a] apple.com> 117997 117998 Reviewed by Darin Adler. 117999 118000 Fix build errors when building with clang++. 118001 118002 * loader/archive/cf/LegacyWebArchiveMac.mm: 118003 Move the const qualifier to the right place. 118004 118005 * page/EditorClient.h: 118006 * platform/Pasteboard.h: 118007 Use @class when forward declaring Objective-C classes in Objective-C. 118008 118009 2010-06-18 Alexey Proskuryakov <ap (a] apple.com> 118010 118011 Reviewed by Geoff Garen. 118012 118013 https://bugs.webkit.org/show_bug.cgi?id=40852 118014 <rdar://problem/8105498> Limit simultaneous DNS prefetch request number (40852) 118015 118016 No change in functionality, so no tests. 118017 118018 We still queue up to 64 names, but only make up to 8 requests at once. If there are names 118019 remaining in queue, we retry after a short timeout (which is easier than posting 118020 notifications from client callback). 118021 118022 * platform/network/cf/DNSCFNet.cpp: 118023 (WebCore::DNSResolveQueue::add): 118024 (WebCore::DNSResolveQueue::fired): 118025 118026 2010-06-18 Zhenyao Mo <zmo (a] google.com> 118027 118028 Reviewed by Simon Fraser. 118029 118030 WebGL demos show bad flicker 118031 https://bugs.webkit.org/show_bug.cgi?id=38560 118032 118033 * platform/graphics/mac/GraphicsContext3DMac.mm: 118034 (WebCore::GraphicsContext3D::prepareTexture): Move ensureContext() out of if-block so it's always executed. 118035 118036 2010-06-18 Anders Carlsson <andersca (a] apple.com> 118037 118038 Reviewed by Sam Weinig. 118039 118040 Add PlatformStrategies and PluginStrategy classes. 118041 https://bugs.webkit.org/show_bug.cgi?id=40850 118042 118043 * WebCore.xcodeproj/project.pbxproj: 118044 * platform/PlatformStrategies.cpp: Added. 118045 (WebCore::PlatformStrategies::~PlatformStrategies): 118046 (WebCore::platformStrategies): 118047 (WebCore::setPlatformStrategies): 118048 * platform/PlatformStrategies.h: Added. 118049 (WebCore::PlatformStrategies::pluginStrategy): 118050 (WebCore::PlatformStrategies::PlatformStrategies): 118051 * plugins/PluginData.cpp: 118052 * plugins/PluginStrategy.h: Added. 118053 (WebCore::PluginStrategy::~PluginStrategy): 118054 118055 2010-06-18 Martin Robinson <mrobinson (a] igalia.com> 118056 118057 Unreviewed. 118058 118059 Fix the GTK+ build after r61413 and 61379. 118060 118061 * bindings/scripts/CodeGeneratorGObject.pm: 118062 Produce a g_value_set that uses getterExpressionPrefix instead of the raw getter. 118063 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 118064 (webkit_dom_test_obj_get_property): Update expected test results. 118065 118066 2010-06-18 Leandro Pereira <leandro (a] profusion.mobi> 118067 118068 [EFL] Unreviewed build fix. 118069 118070 * CMakeLists.txt: Add inspector/ScriptBreakpoint.cpp. 118071 118072 2010-06-18 Andy Estes <aestes (a] apple.com> 118073 118074 Rubber-stamped by Sam Weinig. 118075 118076 Update copyright header. 118077 118078 * html/HTMLLinkElement.h: 118079 118080 2010-06-17 Andy Estes <aestes (a] apple.com> 118081 118082 Reviewed by Dan Bernstein. 118083 118084 <rdar://problem/8091385> Prevent a crash in WebCore when removing a stylesheet link element in 118085 in a listener to its beforeload event. 118086 https://bugs.webkit.org/show_bug.cgi?id=40742 118087 118088 Postpone loading of link elements until after they have been inserted into the DOM and 118089 attached. This prevents DOM mutations triggered by beforeload handlers from firing in the 118090 midst of DOM insertion, which can lead to assertion failures and crashes. 118091 118092 Test: fast/dom/beforeload/remove-link-in-beforeload-listener.html 118093 118094 * html/HTMLLinkElement.cpp: 118095 (WebCore::HTMLLinkElement::HTMLLinkElement): Initialize m_shouldProcessAfterAttach to false. 118096 (WebCore::HTMLLinkElement::processCallback): Add a static callback function which calls 118097 HTMLLinkElement::process(). 118098 (WebCore::HTMLLinkElement::insertedIntoDocument): Instead of calling process() directly, set 118099 m_shouldProcessAfterAttach to true to indicate that process() should be called after attach(). 118100 (WebCore::HTMLLinkElement::removedFromDocument): Set m_shouldProcessAfterAttach to false. 118101 (WebCore::HTMLLinkElement::attach): If m_shouldProcessAfterAttach is true, register 118102 HTMLLinkElement::processCallback() as a post-attach callback. 118103 * html/HTMLLinkElement.h: Add m_shouldProcessAfterAttach. 118104 (WebCore::HTMLLinkElement::canLazyAttach): Override canLazyAttach() to return false to 118105 indicate that a full attach should be performed. This ensures the post-attach callbacks are 118106 fired. 118107 118108 2010-06-18 Chris Fleizach <cfleizach (a] apple.com> 118109 118110 Unreviewed. Windows build fix. 118111 118112 AX: presentational role needs to be inherited by required elements 118113 https://bugs.webkit.org/show_bug.cgi?id=40132 118114 118115 * accessibility/AccessibilityRenderObject.cpp: 118116 (WebCore::AccessibilityRenderObject::inheritsPresentationalRole): 118117 118118 2010-06-18 Chris Fleizach <cfleizach (a] apple.com> 118119 118120 Reviewed by David Kilzer. 118121 118122 AX: presentational role needs to be inherited by required elements 118123 https://bugs.webkit.org/show_bug.cgi?id=40132 118124 118125 Test: platform/mac/accessibility/inherited-presentational-lists.html 118126 118127 * accessibility/AccessibilityRenderObject.cpp: 118128 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 118129 (WebCore::AccessibilityRenderObject::inheritsPresentationalRole): 118130 * accessibility/AccessibilityRenderObject.h: 118131 (WebCore::AccessibilityRenderObject::node): 118132 118133 2010-06-18 Darin Adler <darin (a] apple.com> 118134 118135 Fix GTK build after reflection change. 118136 118137 * bindings/scripts/CodeGeneratorGObject.pm: Changed code 118138 that emits setters to convey the correct type of the attribute. 118139 The GObject code generator takes a different approach to attributes 118140 than the others, so it's hacked a bit to make it more like them. 118141 We should find a way to share more code between the different generators. 118142 118143 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 118144 Updated to expect correct results. 118145 118146 2010-06-18 Yury Semikhatsky <yurys (a] chromium.org> 118147 118148 Unreviewed: Qt build fix. 118149 118150 * inspector/InspectorController.cpp: 118151 118152 2010-06-18 Justin Garcia <justin.garcia (a] apple.com> 118153 118154 Reviewed by Ojan Vafai. 118155 118156 https://bugs.webkit.org/show_bug.cgi?id=39798 118157 No selection change notification for editing operation that doesn't change the selection's DOM position 118158 118159 Some editing operations change the selection visually without affecting its position within 118160 the DOM. This was previously known to occur for certain typing commands, but it can also 118161 occur for some Pastes and changes to block style. 118162 118163 * editing/Editor.cpp: 118164 (WebCore::Editor::appliedEditing): 118165 (WebCore::Editor::unappliedEditing): 118166 (WebCore::Editor::reappliedEditing): 118167 (WebCore::Editor::changeSelectionAfterCommand): 118168 * editing/Editor.h: 118169 118170 2010-06-18 Gyuyoung Kim <gyuyoung.kim (a] samsung.com> 118171 118172 Unreviewed build fix. 118173 118174 [EFL] Build break on Debug build. 118175 https://bugs.webkit.org/show_bug.cgi?id=40810 118176 118177 * CMakeLists.txt: Add CSSPreloadScanner.cpp 118178 118179 2010-06-18 Pavel Podivilov <podivilov (a] chromium.org> 118180 118181 Reviewed by Yury Semikhatsky. 118182 118183 Web Inspector: persist breakpoints in inspector settings. 118184 https://bugs.webkit.org/show_bug.cgi?id=14190 118185 118186 * GNUmakefile.am: 118187 * WebCore.gypi: 118188 * WebCore.pro: 118189 * WebCore.vcproj/WebCore.vcproj: 118190 * WebCore.xcodeproj/project.pbxproj: 118191 * inspector/InspectorController.cpp: 118192 (WebCore::InspectorController::InspectorController): 118193 (WebCore::InspectorController::setSessionSettings): 118194 (WebCore::InspectorController::didCommitLoad): 118195 (WebCore::InspectorController::setBreakpoint): 118196 (WebCore::InspectorController::removeBreakpoint): 118197 (WebCore::InspectorController::didParseSource): 118198 (WebCore::InspectorController::breakpointsSettingKey): 118199 (WebCore::InspectorController::loadBreakpoints): 118200 (WebCore::InspectorController::saveBreakpoints): 118201 * inspector/InspectorController.h: 118202 * inspector/InspectorValues.cpp: 118203 (WebCore::InspectorValue::parseJSON): 118204 * inspector/InspectorValues.h: 118205 * inspector/ScriptBreakpoint.cpp: Added. 118206 (WebCore::ScriptBreakpoint::sourceBreakpointsFromInspectorObject): 118207 (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints): 118208 * inspector/ScriptBreakpoint.h: 118209 * inspector/front-end/BreakpointManager.js: 118210 (WebInspector.BreakpointManager.prototype.addBreakpoint): 118211 (WebInspector.BreakpointManager.prototype.restoredBreakpoint): 118212 (WebInspector.BreakpointManager.prototype.breakpointsForSourceID): 118213 (WebInspector.BreakpointManager.prototype.breakpointsForURL): 118214 (WebInspector.BreakpointManager.prototype._addBreakpoint): 118215 * inspector/front-end/inspector.js: 118216 (WebInspector.restoredBreakpoint): 118217 118218 2010-06-18 Darin Adler <darin (a] apple.com> 118219 118220 Reviewed by Sam Weinig. 118221 118222 Implement additional DOM attribute reflection for bindings 118223 https://bugs.webkit.org/show_bug.cgi?id=39936 118224 118225 - Added support for [Reflect] for long, unsigned long, and boolean 118226 attributes. 118227 - Fixed code that set attributes like this: <video controls="controls"> 118228 to instead set them like this: <video controls>. 118229 - Added lots more uses of [Reflect]. 118230 - Removed now-unneeded [ConvertFromString]. 118231 - Made [Reflect] imply [ConvertNullToNullString] so we can get rid 118232 of most uses of the latter. 118233 - Made [Reflect] automatically lowercase the name of the reflected 118234 content attribute to minimize the need to specify a custom content 118235 attribute name. 118236 118237 One thing this patch does *not* do is remove the unneeded functions 118238 in the various DOM classes that are no longer used by the bindings. 118239 We should do that in a followup. 118240 118241 * bindings/scripts/CodeGenerator.pm: Added new functions so code 118242 can be shared across bindings, GetterExpressionPrefix and 118243 SetterExpressionPrefix. We can do a lot more refactoring like 118244 this in the future. 118245 118246 * bindings/scripts/CodeGeneratorCPP.pm: Removed unneeded 118247 ConvertFromString handling, changed to use the new 118248 GetterExpressionPrefix and SetterExpressionPrefix functions 118249 to better handle reflected DOM attributes. 118250 118251 * bindings/scripts/CodeGeneratorGObject.pm: Removed unneeded 118252 ConvertFromString handling, changed to use the new 118253 GetterExpressionPrefix and SetterExpressionPrefix functions 118254 to better handle reflected DOM attributes. Fixed a few things 118255 in the output so the .cpp file will have more WebKit style. 118256 The .h file should be GTK style, but the .cpp file can be the 118257 standard WebKit style eventually. 118258 118259 * bindings/scripts/CodeGeneratorJS.pm: Changed to use the new 118260 GetterExpressionPrefix and SetterExpressionPrefix functions 118261 and removed a now-unneeded IsSVGAnimatedType special case since 118262 the new functions take care of it. Made reflected attributes 118263 automatically convert null to the null string without a 118264 separate ConvertNullToNullString attribute. 118265 118266 * bindings/scripts/CodeGeneratorObjC.pm: Changed to use the new 118267 GetterExpressionPrefix and SetterExpressionPrefix functions 118268 and removed a now-unneeded IsSVGAnimatedType special case since 118269 the new functions take care of it. Redid the special cases for 118270 ownerDocument and for operator to fit better with the new code 118271 paths. Removed unneeded ConvertFromString handling. 118272 118273 * bindings/scripts/CodeGeneratorV8.pm: Changed to use the new 118274 GetterExpressionPrefix and SetterExpressionPrefix functions 118275 and removed a now-unneeded IsSVGAnimatedType special case since 118276 the new functions take care of it. Made reflected attributes 118277 automatically convert null to the null string without a 118278 separate ConvertNullToNullString attribute. 118279 118280 * bindings/scripts/test/TestObj.idl: Added some test cases for 118281 content attribute reflection and for exceptions in string-typed 118282 attributes. 118283 118284 * bindings/scripts/test/CPP/WebKitDOMTestObj.cpp: Updated. 118285 * bindings/scripts/test/CPP/WebKitDOMTestObj.h: Ditto. 118286 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto. 118287 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto. 118288 * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. 118289 * bindings/scripts/test/JS/JSTestObj.h: Ditto. 118290 * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto. 118291 * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto. 118292 * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. 118293 118294 * dom/Element.cpp: 118295 (WebCore::Element::getIntegralAttribute): Added. 118296 (WebCore::Element::setIntegralAttribute): Added. 118297 (WebCore::Element::getUnsignedIntegralAttribute): Added. 118298 (WebCore::Element::setUnsignedIntegralAttribute): Added. 118299 * dom/Element.h: Added new attribute get/set functions for bindings. 118300 118301 * html/HTMLMediaElement.cpp: 118302 (WebCore::HTMLMediaElement::isURLAttribute): Added. Returns true for 118303 srcAttr. 118304 * html/HTMLMediaElement.h: Added isURLAttribute. 118305 118306 * html/HTMLVideoElement.cpp: 118307 (WebCore::HTMLVideoElement::isURLAttribute): Changed to call 118308 HTMLMediaElement::isURLAttribute before checking for posterAttr. 118309 118310 * html/HTMLAnchorElement.idl: 118311 * html/HTMLAppletElement.idl: 118312 * html/HTMLAreaElement.idl: 118313 * html/HTMLBRElement.idl: 118314 * html/HTMLBaseElement.idl: 118315 * html/HTMLBaseFontElement.idl: 118316 * html/HTMLBlockquoteElement.idl: 118317 * html/HTMLBodyElement.idl: 118318 * html/HTMLButtonElement.idl: 118319 * html/HTMLDListElement.idl: 118320 * html/HTMLDirectoryElement.idl: 118321 * html/HTMLDivElement.idl: 118322 * html/HTMLElement.idl: 118323 * html/HTMLEmbedElement.idl: 118324 * html/HTMLFontElement.idl: 118325 * html/HTMLFormElement.idl: 118326 * html/HTMLFrameElement.idl: 118327 * html/HTMLFrameSetElement.idl: 118328 * html/HTMLHRElement.idl: 118329 * html/HTMLHeadElement.idl: 118330 * html/HTMLHeadingElement.idl: 118331 * html/HTMLHtmlElement.idl: 118332 * html/HTMLIFrameElement.idl: 118333 * html/HTMLImageElement.idl: 118334 * html/HTMLInputElement.idl: 118335 * html/HTMLIsIndexElement.idl: 118336 * html/HTMLLIElement.idl: 118337 * html/HTMLLabelElement.idl: 118338 * html/HTMLLegendElement.idl: 118339 * html/HTMLLinkElement.idl: 118340 * html/HTMLMapElement.idl: 118341 * html/HTMLMediaElement.idl: 118342 * html/HTMLMenuElement.idl: 118343 * html/HTMLMetaElement.idl: 118344 * html/HTMLModElement.idl: 118345 * html/HTMLOListElement.idl: 118346 * html/HTMLObjectElement.idl: 118347 * html/HTMLOptGroupElement.idl: 118348 * html/HTMLOptionElement.idl: 118349 * html/HTMLParagraphElement.idl: 118350 * html/HTMLParamElement.idl: 118351 * html/HTMLPreElement.idl: 118352 * html/HTMLQuoteElement.idl: 118353 * html/HTMLScriptElement.idl: 118354 * html/HTMLStyleElement.idl: 118355 * html/HTMLTableCaptionElement.idl: 118356 * html/HTMLTableCellElement.idl: 118357 * html/HTMLTableColElement.idl: 118358 * html/HTMLTableElement.idl: 118359 * html/HTMLTableRowElement.idl: 118360 * html/HTMLTableSectionElement.idl: 118361 * html/HTMLTextAreaElement.idl: 118362 * html/HTMLUListElement.idl: 118363 * html/HTMLVideoElement.idl: 118364 * svg/SVGElement.idl: 118365 Added more uses of [Reflect]. Got rid of uses of [ConvertNullToNullString] that 118366 are now unneeded since [Reflect] now implies that. Changed formatting to be 118367 simpler and consistent without all the lining up and multiple lines. 118368 118369 2010-06-17 Dumitru Daniliuc <dumi (a] chromium.org> 118370 118371 Reviewed by Dimitri Glazkov. 118372 118373 Remove some unnecessary checks that cause compiler warnings. 118374 https://bugs.webkit.org/show_bug.cgi?id=40772 118375 118376 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: 118377 (WebCore::V8SQLResultSetRowList::itemCallback): 118378 * bindings/v8/npruntime.cpp: 118379 118380 2010-06-18 Mikhail Naganov <mnaganov (a] chromium.org> 118381 118382 Reviewed by Yury Semikhatsky. 118383 118384 Implement 'takeHeapSnapshot' in InspectorController. 118385 118386 https://bugs.webkit.org/show_bug.cgi?id=40834 118387 118388 * bindings/js/ScriptProfiler.h: 118389 (WebCore::ScriptProfiler::takeHeapSnapshot): 118390 * bindings/v8/ScriptProfiler.cpp: 118391 (WebCore::ScriptProfiler::takeHeapSnapshot): 118392 * bindings/v8/ScriptProfiler.h: 118393 * inspector/InspectorBackend.cpp: 118394 (WebCore::InspectorBackend::takeHeapSnapshot): 118395 * inspector/InspectorBackend.h: 118396 * inspector/InspectorBackend.idl: 118397 * inspector/InspectorController.cpp: 118398 (WebCore::InspectorController::takeHeapSnapshot): 118399 * inspector/InspectorController.h: 118400 118401 2010-06-18 Dan Bernstein <mitz (a] apple.com> 118402 118403 Reviewed by Anders Carlsson. 118404 118405 REGRESSION (r61379?): Assertion failure in Element::getURLAttribute() when accessing the src attribute of a script element 118406 https://bugs.webkit.org/show_bug.cgi?id=40831 118407 118408 Test: fast/dom/HTMLScriptElement/isURLAttribute.html 118409 118410 * html/HTMLScriptElement.cpp: 118411 (WebCore::HTMLScriptElement::isURLAttribute): Check for the 'src' attribute. 118412 118413 2010-06-18 Sheriff Bot <webkit.review.bot (a] gmail.com> 118414 118415 Unreviewed, rolling out r61405. 118416 http://trac.webkit.org/changeset/61405 118417 https://bugs.webkit.org/show_bug.cgi?id=40838 118418 118419 broke chromium mac compile (Requested by tonyg-cr1 on 118420 #webkit). 118421 118422 * bindings/v8/ScriptSourceCode.h: 118423 (WebCore::ScriptSourceCode::ScriptSourceCode): 118424 * bindings/v8/V8Proxy.cpp: 118425 (WebCore::V8Proxy::compileScript): 118426 (WebCore::V8Proxy::evaluate): 118427 * bindings/v8/V8Proxy.h: 118428 118429 2010-06-18 Zhenyao Mo <zmo (a] google.com> 118430 118431 Reviewed by Dimitri Glazkov. 118432 118433 Fix WebGLRenderingContext helper functions find{Texture/Renderbuffer/Buffer} 118434 https://bugs.webkit.org/show_bug.cgi?id=40176 118435 118436 * html/canvas/WebGLBuffer.cpp: Remove constructor with existing name. 118437 * html/canvas/WebGLBuffer.h: Ditto. 118438 * html/canvas/WebGLRenderingContext.cpp: 118439 (WebCore::WebGLRenderingContext::getVertexAttrib): Use findBuffer instead of creating a new WebGLBuffer. 118440 (WebCore::WebGLRenderingContext::findTexture): Deal with name == 0 case and return raw pointer. 118441 (WebCore::WebGLRenderingContext::findRenderbuffer): Ditto. 118442 (WebCore::WebGLRenderingContext::findBuffer): Find WebGLBuffer object using given name. 118443 * html/canvas/WebGLRenderingContext.h: Add findBuffer function declaration, change return type to raw pointer. 118444 118445 2010-06-18 Tony Gentilcore <tonyg (a] chromium.org> 118446 118447 Reviewed by David Levin. 118448 118449 Persist V8's ScriptData to the memory cache. 118450 https://bugs.webkit.org/show_bug.cgi?id=38661 118451 118452 This stores V8's ScriptData in the memory cache and also causes the 118453 network platform layer to be notified of the available cacheable 118454 metadata. 118455 118456 Chromium's morejs benchmark showed a ~7% improvement when this was 118457 originally submitted (before it had to be rolled back). 118458 118459 Test: fast/js/parser-high-byte-character.html 118460 118461 * bindings/v8/ScriptSourceCode.h: 118462 (WebCore::ScriptSourceCode::ScriptSourceCode): 118463 (WebCore::ScriptSourceCode::cachedScript): 118464 * bindings/v8/V8Proxy.cpp: 118465 (WebCore::V8Proxy::compileScript): 118466 (WebCore::V8Proxy::precompileScript): 118467 (WebCore::V8Proxy::evaluate): 118468 * bindings/v8/V8Proxy.h: 118469 118470 2010-06-18 Anton Muhin <antonm (a] chromium.org> 118471 118472 Reviewed by Dimitri Glazkov. 118473 118474 [v8] Finish migration to new named property query API 118475 https://bugs.webkit.org/show_bug.cgi?id=40771 118476 Remove definition which allowed gradual transition to new API. 118477 See https://bugs.webkit.org/show_bug.cgi?id=40303 for first phase. 118478 118479 * config.h: 118480 118481 2010-06-17 Pavel Feldman <pfeldman (a] chromium.org> 118482 118483 Reviewed by Yury Semikhatsky. 118484 118485 Web Inspector: bring XHR console records back. 118486 - adds "Enable XHR Monitor" / "Disable XHR Monitor" actions to the console's context menu 118487 - make the chosen option persist in the settings. 118488 118489 https://bugs.webkit.org/show_bug.cgi?id=40799 118490 118491 * English.lproj/localizedStrings.js: 118492 * inspector/InspectorBackend.cpp: 118493 (WebCore::InspectorBackend::disableSearchingForNode): 118494 (WebCore::InspectorBackend::enableMonitoringXHR): 118495 (WebCore::InspectorBackend::disableMonitoringXHR): 118496 * inspector/InspectorBackend.h: 118497 * inspector/InspectorBackend.idl: 118498 * inspector/InspectorController.cpp: 118499 (WebCore::InspectorController::InspectorController): 118500 (WebCore::InspectorController::setMonitoringXHR): 118501 (WebCore::InspectorController::didLoadResourceFromMemoryCache): 118502 (WebCore::InspectorController::identifierForInitialRequest): 118503 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): 118504 (WebCore::InspectorController::ensureSettingsLoaded): 118505 * inspector/InspectorController.h: 118506 * inspector/InspectorFrontend.cpp: 118507 (WebCore::InspectorFrontend::monitoringXHRWasEnabled): 118508 (WebCore::InspectorFrontend::monitoringXHRWasDisabled): 118509 * inspector/InspectorFrontend.h: 118510 * inspector/front-end/ConsoleView.js: 118511 (WebInspector.ConsoleView.prototype._handleContextMenuEvent): 118512 (WebInspector.ConsoleView.prototype._registerShortcuts): 118513 * inspector/front-end/InjectedScript.js: 118514 (injectedScriptConstructor.): 118515 * inspector/front-end/InspectorBackendStub.js: 118516 (.WebInspector.InspectorBackendStub): 118517 (.WebInspector.InspectorBackendStub.prototype.enableMonitoringXHR): 118518 (.WebInspector.InspectorBackendStub.prototype.disableMonitoringXHR): 118519 * inspector/front-end/inspector.js: 118520 (WebInspector.monitoringXHRWasEnabled): 118521 (WebInspector.monitoringXHRWasDisabled): 118522 * xml/XMLHttpRequest.cpp: 118523 (WebCore::XMLHttpRequest::didFinishLoading): 118524 118525 2010-06-18 Nikolas Zimmermann <nzimmermann (a] rim.com> 118526 118527 Reviewed by Dirk Schulze. 118528 118529 Modernize SVG Text code, following the HTML design 118530 https://bugs.webkit.org/show_bug.cgi?id=40663 118531 118532 SVG Text does not support subpixel positioning 118533 https://bugs.webkit.org/show_bug.cgi?id=12172 118534 118535 RenderSVGText can't do partial repaints 118536 https://bugs.webkit.org/show_bug.cgi?id=15386 118537 118538 HTML and SVG need to share more text painting code 118539 https://bugs.webkit.org/show_bug.cgi?id=15644 118540 118541 Rewrite SVG Text rendering, only keeping the layout of the actual characters/chunks as it was. 118542 We're now drawing SVG Text very similar to HTML Text, utilizing the SVGInlineFlowBox/SVGInlineTextBox structure, 118543 instead of painting all text content of a <text> element from the SVGRootInlineBox, as it was the last years. 118544 118545 Rough overview of the changes: 118546 - Partial repainting support for text selections (startPos/endPos are respected), no more redrawing of the whole <text> content while selecting 118547 - Subpixel positioning (near pixel-perfect rendering for all W3C tests that contain text, finally!) 118548 -> much better textPath results, characters now align as expected, as all rounding hacks are disabled for SVG text runs, and subpixel precision is used while painting 118549 - No more custom handling of selection, the standard methods offsetFromPosition() / selectionRectForText() are used instead. 118550 - Selection works as expected on stretched/squeezed text (lengthAdjust="spacingAndGlyphs"), takes 'includePartialGlyphs' into account - just like HTML text 118551 - Correct text decoration drawing (proper with and positions and rendering-order, underline/overline before text, strike-through afterwards) 118552 - Proper sizing of all InlineBoxes, starting from the SVGRootInlineBox, down to every single flow & text box 118553 -> correct DRT results, no more weird negative offsets of text runs, etc. Looks exactly like the HTML text test results. 118554 - Rewritten SVGTextContentElement API to take per-character / per-chunk transformations into account. 118555 - Speeeeeed! Drawing is much faster now. 118556 118557 Add 24 new testcases covering basic selection features and the SVGTextContentElement API. Each test draws a half-opaque red rectangle, calculated using 118558 SVGTextContentElement API to highlight the area that is supposed to be selected. Then eventSender API is utilized to move the mouse to the calculated 118559 start origin, holding it down and moving it to the end position. 118560 118561 A detailed list of tests that show progression, can be found in the corresponding LayoutTests/ChangeLog. 118562 Note that this requires a rebaselining of all SVG tests containing text elements. 118563 118564 Tests: svg/hixie/text/001.xml (moved from svg/hixie/text/001-broken.xml) 118565 svg/text/lengthAdjust-text-metrics.html 118566 svg/text/select-textLength-spacing-squeeze-1.svg 118567 svg/text/select-textLength-spacing-squeeze-2.svg 118568 svg/text/select-textLength-spacing-squeeze-3.svg 118569 svg/text/select-textLength-spacing-squeeze-4.svg 118570 svg/text/select-textLength-spacing-stretch-1.svg 118571 svg/text/select-textLength-spacing-stretch-2.svg 118572 svg/text/select-textLength-spacing-stretch-3.svg 118573 svg/text/select-textLength-spacing-stretch-4.svg 118574 svg/text/select-textLength-spacingAndGlyphs-squeeze-1.svg 118575 svg/text/select-textLength-spacingAndGlyphs-squeeze-2.svg 118576 svg/text/select-textLength-spacingAndGlyphs-squeeze-3.svg 118577 svg/text/select-textLength-spacingAndGlyphs-squeeze-4.svg 118578 svg/text/select-textLength-spacingAndGlyphs-stretch-1.svg 118579 svg/text/select-textLength-spacingAndGlyphs-stretch-2.svg 118580 svg/text/select-textLength-spacingAndGlyphs-stretch-3.svg 118581 svg/text/select-textLength-spacingAndGlyphs-stretch-4.svg 118582 svg/text/select-x-list-1.svg 118583 svg/text/select-x-list-2.svg 118584 svg/text/select-x-list-3.svg 118585 svg/text/select-x-list-4.svg 118586 svg/text/select-x-list-with-tspans-1.svg 118587 svg/text/select-x-list-with-tspans-2.svg 118588 svg/text/select-x-list-with-tspans-3.svg 118589 svg/text/select-x-list-with-tspans-4.svg 118590 118591 * rendering/InlineBox.h: Remove not needed isInlineBox() method. 118592 (WebCore::InlineBox::isInlineTextBox): Constify this method. 118593 (WebCore::InlineBox::isSVGInlineTextBox): Added, with ENABLE(SVG) guards, just like the existing isSVGRootInlineBox(). 118594 (WebCore::InlineBox::isSVGRootInlineBox): Constify this method. 118595 (WebCore::InlineBox::calculateBoundaries): Added, with ENABLE(SVG) guards, used to calculate the whole boundaries of a InlineText/FlowBox, only used in SVG text. 118596 * rendering/InlineFlowBox.h: Devirtualize placeBoxesHorizontally(), SVG no more overrides it. 118597 * rendering/InlineTextBox.h: Virtualize selectionStartEnd() - SVGInlineTextBox needs to change start/endPositions based on the current text chunk part that it's rendering. 118598 SVGTextChunkLayoutInfo.h contains a detailed documentation what a SVGTextChunk/SVGTextChunkPart is, and why they are necessary. 118599 (WebCore::InlineTextBox::isInlineTextBox): Constify this method. 118600 * rendering/RenderBlock.h: 118601 (WebCore::RenderBlock::forceLayoutInlineChildren): Add helper method, used only by RenderSVGText, to use a simplified layout strategy, which is a big speed win. 118602 * rendering/RenderBlockLineLayout.cpp: 118603 (WebCore::RenderBlock::computeHorizontalPositionsForLine): Remove all isSVGText() special cases, as this function is not called anymore for SVG text. 118604 (WebCore::RenderBlock::layoutInlineChildren): Don't call computeHorizontalPositionsForLine() for SVG text. computePerCharacterLayoutInformation() overrides it anyway. 118605 * rendering/RenderSVGInline.cpp: Remove custom absoluteRects/absoluteQuads code, all shared with RenderInline now. 118606 (WebCore::RenderSVGInline::clippedOverflowRectForRepaint): Added, forward to SVGRenderBase, just like all other non-text SVG renderers do. 118607 (WebCore::RenderSVGInline::computeRectForRepaint): Ditto. 118608 (WebCore::RenderSVGInline::mapLocalToContainer): Ditto 118609 * rendering/RenderSVGInline.h: 118610 * rendering/RenderSVGInlineText.cpp: Remove destroy() hack, which called setNeedsLayoutAndPrefWidthsRecalc/repaint on destruction. 118611 As repaint rects work properly now, this hack is no longer necessary, it was only hiding the real problem. 118612 (WebCore::RenderSVGInlineText::styleDidChange): Don't skip RenderText::styleDidChange() anymore, which automatically schedules layout changes for us. 118613 (WebCore::RenderSVGInlineText::localCaretRect): Remove outdated comment, localCaretRect() is not yet needed in SVG text code. 118614 * rendering/RenderSVGInlineText.h: Remove custom absoluteRects/absoluteQuads/selectionRectForRepaint/positionForPoint/destroy/computeRectForRepaint* code, all shared with RenderText now. 118615 * rendering/RenderSVGText.cpp: 118616 (WebCore::RenderSVGText::mapLocalToContainer): Take x/y translation into account, but do NOT include in localToParentTransform(), as that would affect rendering. 118617 (WebCore::RenderSVGText::layout): Use super-simplified layout strategy, removing a lot of uncessary stuff done by RenderBlock, that SVG does not need. 118618 (WebCore::RenderSVGText::absoluteRects): Remove dead-code, retreving the RenderSVGRoot* object, not necessary since a longer time. 118619 (WebCore::RenderSVGText::absoluteQuads): Ditto. 118620 (WebCore::RenderSVGText::paint): Early exit if we're not in PaintPhaseForeground/PaintPhaseSelfOutline. We're not interessted in other phases. 118621 (WebCore::RenderSVGText::strokeBoundingBox): Fix stroke width calculation, no need to special case SVGFonts. 118622 * rendering/RenderSVGText.h: Remove updateFirstLineBlock/updateFirstLetter overrides, the new RenderSVGText::layout() code, doesn't use these methods at all. 118623 We asked RenderBlock to layout before, which was calling updateFirstLetter & co, this is gone now, as it was all not needed. 118624 (WebCore::RenderSVGText::objectBoundingBox): Directly return the frameRect here, inlined for speed. 118625 * rendering/RootInlineBox.cpp: 118626 (WebCore::RootInlineBox::verticallyAlignBoxes): Early-exit if we're a SVGRootInlineBox. SVG handles this on its own. 118627 * rendering/RootInlineBox.h: Devirtualize verticallyAlignBoxes(), SVG no longer overrides it. Remove virtual computePerCharacterLayoutInformation() method, only lives in SVGRootInlineBox now. 118628 * rendering/SVGCharacterData.h: Remove no longer needed SVGTextDecorationInfo. 118629 * rendering/SVGCharacterLayoutInfo.cpp: Don't pass a reference to a Vector<SVGChar> to SVGCharacterLayoutInfo, let it create it. 118630 (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo): 118631 * rendering/SVGCharacterLayoutInfo.h: 118632 * rendering/SVGInlineFlowBox.cpp: 118633 (WebCore::SVGInlineFlowBox::paint): Ask children to paint. 118634 (WebCore::SVGInlineFlowBox::calculateBoundaries): Calculate boundaries by uniting all direct children boundaries. 118635 * rendering/SVGInlineFlowBox.h: Remove placeBoxesHorizontally, which does not get called anymore, and does not need to be overriden. 118636 * rendering/SVGInlineTextBox.cpp: 118637 (WebCore::SVGInlineTextBox::SVGInlineTextBox): Don't use abbrevations for variable names, initialize new member variables. 118638 (WebCore::SVGInlineTextBox::measureCharacter): New helper function extracted from buildLayoutInformation, replacing calculateGlyphWidth/Height. 118639 (WebCore::SVGInlineTextBox::offsetForPosition): Implement this method by utilizing Font::offsetForPosition(), but respecting the text chunk parts. 118640 (WebCore::SVGInlineTextBox::positionForOffset): No change here, still not used. 118641 (WebCore::SVGInlineTextBox::selectionRect): Rewritten, utilizing Font::selectionRectForText(), taking text chunk parts into account, and the supplied startPos/endPos. 118642 (WebCore::SVGInlineTextBox::paint): Rewritten, to handle paint servers much more elegant, than the old solution. See code for details, too much to explain here. 118643 (WebCore::SVGInlineTextBox::acquirePaintingResource): Helper function, used from paint(). 118644 (WebCore::SVGInlineTextBox::releasePaintingResource): Ditto. 118645 (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting): Ditto. 118646 (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting): Ditto. 118647 (WebCore::SVGInlineTextBox::constructTextRun): Helper function centralizing the creation of a TextRun object, used to draw/measure SVG text. 118648 (WebCore::SVGInlineTextBox::mapStartEndPositionsIntoChunkPartCoordinates): Important helper function, mapping a startPos/endPos from InlineTextBox 118649 coordinate space to the SVGInlineTextBox, respecting the current text chunk part. 118650 (WebCore::SVGInlineTextBox::selectionStartEnd): Call InlineTextBox::selectionStartEnd(), and apply post fixes when m_currentChunkPart is set. (called when painting a selected chunk part) 118651 (WebCore::positionOffsetForDecoration): Refactored from old paintDecoration() code. 118652 (WebCore::thicknessForDecoration): Ditto. 118653 (WebCore::findRenderObjectDefininingTextDecoration): Ditto. 118654 (WebCore::SVGInlineTextBox::paintDecoration): Ditto. (Can not share the code with HTML, as we need floating point precision, and directly call fillRect, instead of drawHighlightForText.) 118655 (WebCore::SVGInlineTextBox::paintDecorationWithStyle): Ditto. 118656 (WebCore::SVGInlineTextBox::paintSelection): New method, painting text selections with floating-point precision. 118657 (WebCore::SVGInlineTextBox::paintText): New method, painting text with floating-point precision, correctly handling selected text, removing the need for special SVG text sub-paint phases. 118658 (GlyphFill/StrokeSelectionPhase, GlyphFill/StrokePhase) 118659 (WebCore::SVGInlineTextBox::buildLayoutInformation): Use new measureCharacter() helper function, renamed some variables, to avoid abbrevations. 118660 (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): Rewritten to use new measureCharacter() helper function. 118661 (WebCore::SVGInlineTextBox::calculateBoundaries): Rewritten to take text chunk parts into account, serves as central method used to layout InlineBoxes (see SVGRootInlineBox.) 118662 * rendering/SVGInlineTextBox.h: 118663 (WebCore::SVGInlineTextBox::isSVGInlineTextBox): Added. 118664 (WebCore::SVGInlineTextBox::setHeight): Rename variable, to avoid abbrevations. 118665 (WebCore::SVGInlineTextBox::chunkTransformation): New helper function, returning the transformation, that gets applied to the complete text chunk, if any. 118666 (WebCore::SVGInlineTextBox::setChunkTransformation): New helper function used by SVGRrootInlineBox, to set the chunk transformation, during text chunk part propagation phase. 118667 (WebCore::SVGInlineTextBox::addChunkPartInformation): Ditto. 118668 (WebCore::SVGInlineTextBox::svgTextChunkParts): Ditto. 118669 * rendering/SVGRootInlineBox.cpp: Virtually rewritten, to be designed more like HTMLs RootInlineBox, diving into children for painting. 118670 (WebCore::SVGRootInlineBox::paint): Ask children to paint, nothing more. No more traversing through the SVGTextChunks, figuring out which part to render, this is done in layout phase now. 118671 (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Completly redesigned, see SVGTextChunkLayoutInfo.h for a high-level overview. 118672 (WebCore::SVGRootInlineBox::buildLayoutInformation): Just small cleanups, nothing changed here. 118673 (WebCore::SVGRootInlineBox::layoutChildBoxes): New helper function, extracted from old layoutInlineBoxes(). 118674 (WebCore::SVGRootInlineBox::layoutRootBox): Ditto. 118675 (WebCore::SVGRootInlineBox::propagateTextChunkPartInformation): Key-concept of the new design, builds "text chunk parts" and propagates that knownledge to all child SVGInlineTextBoxes. 118676 * rendering/SVGRootInlineBox.h: 118677 (WebCore::SVGRootInlineBox::isSVGRootInlineBox): Constified method. 118678 (WebCore::SVGRootInlineBox::setHeight): Change variable name, to avoid abbrevations. 118679 * rendering/SVGTextChunkLayoutInfo.cpp: Remove if 0, enable compilation. 118680 * rendering/SVGTextChunkLayoutInfo.h: Add large comment explaining text chunk parts, the key concept of the new design. Remove SVGTextChunkWalker & friends, no longer used. 118681 (WebCore::SVGTextChunkPart::SVGTextChunkPart): 118682 (WebCore::SVGTextChunkPart::isValid): 118683 (WebCore::SVGTextChunk::SVGTextChunk): 118684 (WebCore::SVGTextChunkLayoutInfo::SVGTextChunkLayoutInfo): 118685 (WebCore::SVGTextChunkLayoutInfo::textChunks): 118686 * rendering/SVGTextLayoutUtilities.cpp: 118687 (WebCore::cummulatedWidthOfInlineBoxCharacterRange): 118688 (WebCore::cummulatedHeightOfInlineBoxCharacterRange): 118689 (WebCore::svgTextRunForInlineTextBox): Disable rounding hacks, explain parameters with comments, why they have which values. 118690 * rendering/SVGTextLayoutUtilities.h: Remove SVGTextPaintSubphase and SVGTextPaintInfo. 118691 * rendering/SVGTextQuery.cpp: Remove if 0, enable compilation. 118692 * rendering/SVGTextQuery.h: Ditto. 118693 * svg/SVGStyledElement.cpp: Very important change! Do not treat CSS attributes as recognized attributes, that would lead to setNeedsLayout() calls, reducing performance! 118694 This hack existed, as we were not dealing with text updates correctly, now that RenderSVGInlineText::styleDidChange is fixed, it's no longer necessary. 118695 (WebCore::SVGStyledElement::isKnownAttribute): 118696 * svg/SVGTextContentElement.cpp: Completely remove the SVGTextContentElement API, that manually traversed all text chunks, instead use the new SVGTextQuery API. 118697 (WebCore::SVGTextContentElement::getNumberOfChars): 118698 (WebCore::SVGTextContentElement::getComputedTextLength): 118699 (WebCore::SVGTextContentElement::getSubStringLength): 118700 (WebCore::SVGTextContentElement::getStartPositionOfChar): 118701 (WebCore::SVGTextContentElement::getEndPositionOfChar): 118702 (WebCore::SVGTextContentElement::getExtentOfChar): 118703 (WebCore::SVGTextContentElement::getRotationOfChar): 118704 (WebCore::SVGTextContentElement::getCharNumAtPosition): 118705 * svg/SVGTextElement.cpp: Very important change! Do not calls setNeedsLayout() on RenderSVGText, if childrenChanged() has been called. 118706 * svg/SVGTextElement.h: Completly remove childrenChanged() - no longer necessary, updates work as expected without it now. 118707 118708 2010-06-18 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 118709 118710 Reviewed by David Levin. 118711 118712 Fix compilation when filters are disabled. Revision r60689 118713 changed the signature of SVGRenderBase::prepareToRenderSVGContent() 118714 but didn't change the unsused parameters when filters are disabled. 118715 https://bugs.webkit.org/show_bug.cgi?id=40625 118716 118717 No new tests. Compilation fix. 118718 118719 * rendering/SVGRenderSupport.cpp: 118720 (WebCore::SVGRenderBase::prepareToRenderSVGContent): 118721 118722 2010-06-18 Adam Barth <abarth (a] webkit.org> 118723 118724 Reviewed by Darin Adler. 118725 118726 noAccess url schemes block access to inline stylesheets 118727 https://bugs.webkit.org/show_bug.cgi?id=32309 118728 118729 Instead of using baseURL() to grab the security context we should just 118730 use finalURL directly. When I wrote the original patch that added this 118731 security check, finalURL didn't exist yet. 118732 118733 If finalURL is an empty URL, that means we generated the style sheet 118734 from text that didn't have a URL. It would be slightly safer to store 118735 a bit on CSSStyleSheet indicating whether it came from an inline style 118736 sheet, but I think this check is fairly accurate. 118737 118738 Test: http/tests/security/data-url-inline.css.html 118739 118740 * css/CSSStyleSheet.cpp: 118741 (WebCore::CSSStyleSheet::cssRules): 118742 118743 2010-06-18 Adam Barth <abarth (a] webkit.org> 118744 118745 Reviewed by Darin Adler. 118746 118747 Remove unneeded custom code for WebSocket.send 118748 https://bugs.webkit.org/show_bug.cgi?id=38180 118749 118750 We don't appear to require a custom binding here. The old function was 118751 wacky in two ways: 118752 118753 1) It required all of its arguments. 118754 118755 2) If the toString of its argument threw, it would catch the exception 118756 and re-throw a different exception. 118757 118758 I've kept the first behavior but changed the second (and documented it 118759 with a test). 118760 118761 Test: websocket/tests/send-throw.html 118762 118763 * bindings/js/JSWebSocketCustom.cpp: 118764 * bindings/v8/custom/V8WebSocketCustom.cpp: 118765 * websockets/WebSocket.idl: 118766 118767 2010-06-15 Dumitru Daniliuc <dumi (a] chromium.org> 118768 118769 Reviewed by Adam Barth. 118770 118771 Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase. 118772 https://bugs.webkit.org/show_bug.cgi?id=39041 118773 118774 * WebCore.base.exp 118775 * bindings/generic/RuntimeEnabledFeatures.cpp: 118776 (WebCore::RuntimeEnabledFeatures::openDatabaseEnabled): 118777 (WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled): 118778 * page/DOMWindow.cpp: 118779 (WebCore::DOMWindow::openDatabase): 118780 * storage/AbstractDatabase.cpp: 118781 (WebCore::AbstractDatabase::isAvailable): 118782 (WebCore::AbstractDatabase::setIsAvailable): 118783 * storage/AbstractDatabase.h: 118784 * storage/Database.cpp: 118785 * storage/Database.h: 118786 * storage/DatabaseSync.cpp: 118787 * storage/DatabaseSync.h: 118788 * workers/WorkerContext.cpp: 118789 (WebCore::WorkerContext::openDatabase): 118790 (WebCore::WorkerContext::openDatabaseSync): 118791 * workers/WorkerContext.h: 118792 118793 2010-06-18 Adam Barth <abarth (a] webkit.org> 118794 118795 Rubber-stamped by Eric Seidel. 118796 118797 Fix the namespace indent for HTML5Lexer. This patch changes 118798 white-space only. 118799 118800 * html/HTML5Lexer.h: 118801 (WebCore::HTML5Lexer::): 118802 (WebCore::HTML5Lexer::lineNumber): 118803 (WebCore::HTML5Lexer::columnNumber): 118804 (WebCore::HTML5Lexer::state): 118805 (WebCore::HTML5Lexer::setState): 118806 (WebCore::HTML5Lexer::skipLeadingNewLineForListing): 118807 (WebCore::HTML5Lexer::InputStreamPreprocessor::InputStreamPreprocessor): 118808 (WebCore::HTML5Lexer::InputStreamPreprocessor::nextInputCharacter): 118809 (WebCore::HTML5Lexer::InputStreamPreprocessor::peek): 118810 (WebCore::HTML5Lexer::InputStreamPreprocessor::advance): 118811 118812 2010-06-18 Fumitoshi Ukai <ukai (a] chromium.org> 118813 118814 Unreviewed test breakage fix. 118815 118816 WebSocket: resume should not process buffer if already processing. 118817 https://bugs.webkit.org/show_bug.cgi?id=39340 118818 118819 MessageLoop runs in main thread, so we don't need to use timer in worker thread. 118820 Also, we should not use Timer in worker thread. 118821 118822 * websockets/ThreadableWebSocketChannelClientWrapper.h: 118823 (WebCore::ThreadableWebSocketChannelClientWrapper::resume): 118824 (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper): 118825 118826 2010-06-17 Sheriff Bot <webkit.review.bot (a] gmail.com> 118827 118828 Unreviewed, rolling out r61379. 118829 http://trac.webkit.org/changeset/61379 118830 https://bugs.webkit.org/show_bug.cgi?id=40813 118831 118832 Broke multiple tests on all platforms (Requested by tkent on 118833 #webkit). 118834 118835 * bindings/scripts/CodeGenerator.pm: 118836 * bindings/scripts/CodeGeneratorCPP.pm: 118837 * bindings/scripts/CodeGeneratorGObject.pm: 118838 * bindings/scripts/CodeGeneratorJS.pm: 118839 * bindings/scripts/CodeGeneratorObjC.pm: 118840 * bindings/scripts/CodeGeneratorV8.pm: 118841 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 118842 (WebDOMTestObj::attrWithException): 118843 (WebDOMTestObj::setAttrWithException): 118844 (WebDOMTestObj::attrWithSetterException): 118845 (WebDOMTestObj::attrWithGetterException): 118846 (WebDOMTestObj::setAttrWithGetterException): 118847 * bindings/scripts/test/CPP/WebDOMTestObj.h: 118848 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 118849 (webkit_dom_test_callback_callback_with_class1param): 118850 (webkit_dom_test_callback_callback_with_class2param): 118851 (webkit_dom_test_callback_callback_with_non_bool_return_type): 118852 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 118853 (webkit_dom_test_obj_void_method): 118854 (webkit_dom_test_obj_void_method_with_args): 118855 (webkit_dom_test_obj_int_method): 118856 (webkit_dom_test_obj_int_method_with_args): 118857 (webkit_dom_test_obj_obj_method): 118858 (webkit_dom_test_obj_obj_method_with_args): 118859 (webkit_dom_test_obj_method_that_requires_all_args): 118860 (webkit_dom_test_obj_method_that_requires_all_args_and_throws): 118861 (webkit_dom_test_obj_serialized_value): 118862 (webkit_dom_test_obj_method_with_exception): 118863 (webkit_dom_test_obj_with_dynamic_frame): 118864 (webkit_dom_test_obj_with_dynamic_frame_and_arg): 118865 (webkit_dom_test_obj_with_dynamic_frame_and_optional_arg): 118866 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture): 118867 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad): 118868 (webkit_dom_test_obj_with_script_state_void): 118869 (webkit_dom_test_obj_with_script_state_obj): 118870 (webkit_dom_test_obj_with_script_state_void_exception): 118871 (webkit_dom_test_obj_with_script_state_obj_exception): 118872 (webkit_dom_test_obj_with_script_execution_context): 118873 (webkit_dom_test_obj_method_with_optional_arg): 118874 (webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg): 118875 (webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args): 118876 (webkit_dom_test_obj_get_read_only_int_attr): 118877 (webkit_dom_test_obj_get_read_only_string_attr): 118878 (webkit_dom_test_obj_get_read_only_test_obj_attr): 118879 (webkit_dom_test_obj_get_int_attr): 118880 (webkit_dom_test_obj_set_int_attr): 118881 (webkit_dom_test_obj_get_long_long_attr): 118882 (webkit_dom_test_obj_set_long_long_attr): 118883 (webkit_dom_test_obj_get_unsigned_long_long_attr): 118884 (webkit_dom_test_obj_set_unsigned_long_long_attr): 118885 (webkit_dom_test_obj_get_string_attr): 118886 (webkit_dom_test_obj_set_string_attr): 118887 (webkit_dom_test_obj_get_test_obj_attr): 118888 (webkit_dom_test_obj_set_test_obj_attr): 118889 (webkit_dom_test_obj_get_attr_with_exception): 118890 (webkit_dom_test_obj_set_attr_with_exception): 118891 (webkit_dom_test_obj_get_attr_with_setter_exception): 118892 (webkit_dom_test_obj_set_attr_with_setter_exception): 118893 (webkit_dom_test_obj_get_attr_with_getter_exception): 118894 (webkit_dom_test_obj_set_attr_with_getter_exception): 118895 (webkit_dom_test_obj_get_script_string_attr): 118896 (webkit_dom_test_obj_get_conditional_attr1): 118897 (webkit_dom_test_obj_set_conditional_attr1): 118898 (webkit_dom_test_obj_get_conditional_attr2): 118899 (webkit_dom_test_obj_set_conditional_attr2): 118900 (webkit_dom_test_obj_get_conditional_attr3): 118901 (webkit_dom_test_obj_set_conditional_attr3): 118902 (webkit_dom_test_obj_get_description): 118903 (webkit_dom_test_obj_get_id): 118904 (webkit_dom_test_obj_set_id): 118905 (webkit_dom_test_obj_get_hash): 118906 (webkit_dom_test_obj_set_property): 118907 (webkit_dom_test_obj_get_property): 118908 (webkit_dom_test_obj_class_init): 118909 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 118910 * bindings/scripts/test/JS/JSTestObj.cpp: 118911 (WebCore::): 118912 (WebCore::jsTestObjAttrWithException): 118913 (WebCore::jsTestObjAttrWithSetterException): 118914 (WebCore::jsTestObjAttrWithGetterException): 118915 (WebCore::setJSTestObjAttrWithException): 118916 (WebCore::setJSTestObjAttrWithGetterException): 118917 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod): 118918 * bindings/scripts/test/JS/JSTestObj.h: 118919 * bindings/scripts/test/ObjC/DOMTestObj.h: 118920 * bindings/scripts/test/ObjC/DOMTestObj.mm: 118921 (-[DOMTestObj attrWithException]): 118922 (-[DOMTestObj setAttrWithException:]): 118923 (-[DOMTestObj attrWithSetterException]): 118924 (-[DOMTestObj attrWithGetterException]): 118925 (-[DOMTestObj setAttrWithGetterException:]): 118926 * bindings/scripts/test/TestObj.idl: 118927 * bindings/scripts/test/V8/V8TestObj.cpp: 118928 (WebCore::TestObjInternal::attrWithExceptionAttrGetter): 118929 (WebCore::TestObjInternal::attrWithExceptionAttrSetter): 118930 (WebCore::TestObjInternal::attrWithSetterExceptionAttrGetter): 118931 (WebCore::TestObjInternal::attrWithGetterExceptionAttrGetter): 118932 (WebCore::TestObjInternal::attrWithGetterExceptionAttrSetter): 118933 (WebCore::TestObjInternal::overloadedMethodCallback): 118934 (WebCore::): 118935 * dom/Element.cpp: 118936 * dom/Element.h: 118937 * html/HTMLAnchorElement.idl: 118938 * html/HTMLAppletElement.idl: 118939 * html/HTMLAreaElement.idl: 118940 * html/HTMLBRElement.idl: 118941 * html/HTMLBaseElement.idl: 118942 * html/HTMLBaseFontElement.idl: 118943 * html/HTMLBlockquoteElement.idl: 118944 * html/HTMLBodyElement.idl: 118945 * html/HTMLButtonElement.idl: 118946 * html/HTMLDListElement.idl: 118947 * html/HTMLDirectoryElement.idl: 118948 * html/HTMLDivElement.idl: 118949 * html/HTMLElement.idl: 118950 * html/HTMLEmbedElement.idl: 118951 * html/HTMLFontElement.idl: 118952 * html/HTMLFormElement.idl: 118953 * html/HTMLFrameElement.idl: 118954 * html/HTMLFrameSetElement.idl: 118955 * html/HTMLHRElement.idl: 118956 * html/HTMLHeadElement.idl: 118957 * html/HTMLHeadingElement.idl: 118958 * html/HTMLHtmlElement.idl: 118959 * html/HTMLIFrameElement.idl: 118960 * html/HTMLImageElement.idl: 118961 * html/HTMLInputElement.idl: 118962 * html/HTMLIsIndexElement.idl: 118963 * html/HTMLLIElement.idl: 118964 * html/HTMLLabelElement.idl: 118965 * html/HTMLLegendElement.idl: 118966 * html/HTMLLinkElement.idl: 118967 * html/HTMLMapElement.idl: 118968 * html/HTMLMediaElement.idl: 118969 * html/HTMLMenuElement.idl: 118970 * html/HTMLMetaElement.idl: 118971 * html/HTMLModElement.idl: 118972 * html/HTMLOListElement.idl: 118973 * html/HTMLObjectElement.idl: 118974 * html/HTMLOptGroupElement.idl: 118975 * html/HTMLOptionElement.idl: 118976 * html/HTMLParagraphElement.idl: 118977 * html/HTMLParamElement.idl: 118978 * html/HTMLPreElement.idl: 118979 * html/HTMLQuoteElement.idl: 118980 * html/HTMLScriptElement.idl: 118981 * html/HTMLStyleElement.idl: 118982 * html/HTMLTableCaptionElement.idl: 118983 * html/HTMLTableCellElement.idl: 118984 * html/HTMLTableColElement.idl: 118985 * html/HTMLTableElement.idl: 118986 * html/HTMLTableRowElement.idl: 118987 * html/HTMLTableSectionElement.idl: 118988 * html/HTMLTextAreaElement.idl: 118989 * html/HTMLUListElement.idl: 118990 * html/HTMLVideoElement.idl: 118991 * svg/SVGElement.idl: 118992 118993 2010-06-17 Rob Buis <rwlbuis (a] gmail.com> 118994 118995 Reviewed by Dave Hyatt. 118996 118997 CSS3 "Property is declared twice in rule" test fails 118998 https://bugs.webkit.org/show_bug.cgi?id=36282 118999 119000 Filter out duplicate properties in style declaration. 119001 119002 Test: fast/css/duplicate-property-in-rule.html 119003 119004 * css/CSSMutableStyleDeclaration.cpp: Filter out duplicate properties 119005 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration): 119006 * css/CSSParser.cpp: 119007 (WebCore::CSSParser::parseValue): Discard negative padding values 119008 * css/CSSStyleSelector.cpp: Remove negative padding check 119009 (WebCore::CSSStyleSelector::applyProperty): 119010 119011 2010-06-17 Darin Adler <darin (a] apple.com> 119012 119013 Reviewed by Sam Weinig. 119014 119015 Implement additional DOM attribute reflection for bindings 119016 https://bugs.webkit.org/show_bug.cgi?id=39936 119017 119018 - Added support for [Reflect] for long, unsigned long, and boolean 119019 attributes. 119020 - Fixed code that set attributes like this: <video controls="controls"> 119021 to instead set them like this: <video controls>. 119022 - Added lots more uses of [Reflect]. 119023 - Removed now-unneeded [ConvertFromString]. 119024 - Made [Reflect] imply [ConvertNullToNullString] so we can get rid 119025 of most uses of the latter. 119026 - Made [Reflect] automatically lowercase the name of the reflected 119027 content attribute to minimize the need to specify a custom content 119028 attribute name. 119029 119030 One thing this patch does *not* do is remove the unneeded functions 119031 in the various DOM classes that are no longer used by the bindings. 119032 We should do that in a followup. 119033 119034 * bindings/scripts/CodeGenerator.pm: Added new functions so code 119035 can be shared across bindings, GetterExpressionPrefix and 119036 SetterExpressionPrefix. We can do a lot more refactoring like 119037 this in the future. 119038 119039 * bindings/scripts/CodeGeneratorCPP.pm: Removed unneeded 119040 ConvertFromString handling, changed to use the new 119041 GetterExpressionPrefix and SetterExpressionPrefix functions 119042 to better handle reflected DOM attributes. 119043 119044 * bindings/scripts/CodeGeneratorGObject.pm: Removed unneeded 119045 ConvertFromString handling, changed to use the new 119046 GetterExpressionPrefix and SetterExpressionPrefix functions 119047 to better handle reflected DOM attributes. Fixed a few things 119048 in the output so the .cpp file will have more WebKit style. 119049 The .h file should be GTK style, but the .cpp file can be the 119050 standard WebKit style eventually. 119051 119052 * bindings/scripts/CodeGeneratorJS.pm: Changed to use the new 119053 GetterExpressionPrefix and SetterExpressionPrefix functions 119054 and removed a now-unneeded IsSVGAnimatedType special case since 119055 the new functions take care of it. Made reflected attributes 119056 automatically convert null to the null string without a 119057 separate ConvertNullToNullString attribute. 119058 119059 * bindings/scripts/CodeGeneratorObjC.pm: Changed to use the new 119060 GetterExpressionPrefix and SetterExpressionPrefix functions 119061 and removed a now-unneeded IsSVGAnimatedType special case since 119062 the new functions take care of it. Redid the special cases for 119063 ownerDocument and for operator to fit better with the new code 119064 paths. Removed unneeded ConvertFromString handling. 119065 119066 * bindings/scripts/CodeGeneratorV8.pm: Changed to use the new 119067 GetterExpressionPrefix and SetterExpressionPrefix functions 119068 and removed a now-unneeded IsSVGAnimatedType special case since 119069 the new functions take care of it. Made reflected attributes 119070 automatically convert null to the null string without a 119071 separate ConvertNullToNullString attribute. 119072 119073 * bindings/scripts/test/TestObj.idl: Added some test cases for 119074 content attribute reflection and for exceptions in string-typed 119075 attributes. 119076 119077 * bindings/scripts/test/CPP/WebKitDOMTestObj.cpp: Updated. 119078 * bindings/scripts/test/CPP/WebKitDOMTestObj.h: Ditto. 119079 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto. 119080 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto. 119081 * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. 119082 * bindings/scripts/test/JS/JSTestObj.h: Ditto. 119083 * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto. 119084 * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto. 119085 * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. 119086 119087 * dom/Element.cpp: 119088 (WebCore::Element::getIntegralAttribute): Added. 119089 (WebCore::Element::setIntegralAttribute): Added. 119090 (WebCore::Element::getUnsignedIntegralAttribute): Added. 119091 (WebCore::Element::setUnsignedIntegralAttribute): Added. 119092 * dom/Element.h: Added new attribute get/set functions for bindings. 119093 119094 * html/HTMLAnchorElement.idl: 119095 * html/HTMLAppletElement.idl: 119096 * html/HTMLAreaElement.idl: 119097 * html/HTMLBRElement.idl: 119098 * html/HTMLBaseElement.idl: 119099 * html/HTMLBaseFontElement.idl: 119100 * html/HTMLBlockquoteElement.idl: 119101 * html/HTMLBodyElement.idl: 119102 * html/HTMLButtonElement.idl: 119103 * html/HTMLDListElement.idl: 119104 * html/HTMLDirectoryElement.idl: 119105 * html/HTMLDivElement.idl: 119106 * html/HTMLElement.idl: 119107 * html/HTMLEmbedElement.idl: 119108 * html/HTMLFontElement.idl: 119109 * html/HTMLFormElement.idl: 119110 * html/HTMLFrameElement.idl: 119111 * html/HTMLFrameSetElement.idl: 119112 * html/HTMLHRElement.idl: 119113 * html/HTMLHeadElement.idl: 119114 * html/HTMLHeadingElement.idl: 119115 * html/HTMLHtmlElement.idl: 119116 * html/HTMLIFrameElement.idl: 119117 * html/HTMLImageElement.idl: 119118 * html/HTMLInputElement.idl: 119119 * html/HTMLIsIndexElement.idl: 119120 * html/HTMLLIElement.idl: 119121 * html/HTMLLabelElement.idl: 119122 * html/HTMLLegendElement.idl: 119123 * html/HTMLLinkElement.idl: 119124 * html/HTMLMapElement.idl: 119125 * html/HTMLMediaElement.idl: 119126 * html/HTMLMenuElement.idl: 119127 * html/HTMLMetaElement.idl: 119128 * html/HTMLModElement.idl: 119129 * html/HTMLOListElement.idl: 119130 * html/HTMLObjectElement.idl: 119131 * html/HTMLOptGroupElement.idl: 119132 * html/HTMLOptionElement.idl: 119133 * html/HTMLParagraphElement.idl: 119134 * html/HTMLParamElement.idl: 119135 * html/HTMLPreElement.idl: 119136 * html/HTMLQuoteElement.idl: 119137 * html/HTMLScriptElement.idl: 119138 * html/HTMLStyleElement.idl: 119139 * html/HTMLTableCaptionElement.idl: 119140 * html/HTMLTableCellElement.idl: 119141 * html/HTMLTableColElement.idl: 119142 * html/HTMLTableElement.idl: 119143 * html/HTMLTableRowElement.idl: 119144 * html/HTMLTableSectionElement.idl: 119145 * html/HTMLTextAreaElement.idl: 119146 * html/HTMLUListElement.idl: 119147 * html/HTMLVideoElement.idl: 119148 * svg/SVGElement.idl: 119149 Added more uses of [Reflect]. Got rid of uses of [ConvertNullToNullString] that 119150 are now unneeded since [Reflect] now implies that. Changed formatting to be 119151 simpler and consistent without all the lining up and multiple lines. 119152 119153 2010-06-17 MORITA Hajime <morrita (a] google.com> 119154 119155 Unreviewd, fixed a build break. 119156 119157 * css/CSSSelector.cpp: 119158 (WebCore::CSSSelector::pseudoId): 119159 119160 2010-06-16 MORITA Hajime <morrita (a] google.com> 119161 119162 Reviewed by Kent Tamura. 119163 119164 <meter> should allow styling for each gauge-level and component 119165 https://bugs.webkit.org/show_bug.cgi?id=40280 119166 119167 - Introduced following new pseudo classes for <meter> element. 119168 119169 - -webkit-meter-horizontal-bar 119170 - -webkit-meter-vertical-bar 119171 - -webkit-meter-horizontal-optimum-value 119172 - -webkit-meter-vertical-optimum-value 119173 - -webkit-meter-horizontal-suboptimal-value 119174 - -webkit-meter-vertical-suboptimal-value 119175 - -webkit-meter-horizontal-even-less-good-value 119176 - -webkit-meter-vertical-even-less-good-value 119177 119178 - Introduced 2 shadow nodes for RenderMeter to handle CSS styling. 119179 one for bar part and another for value part. 119180 - Removed RenderTheme::paintMeter() implementation because it can be 119181 handled by styled painting without RenderTheme. 119182 - Pulled RenderIndicator up to super class from RenderProgress, 119183 then make RenderMeter a subclass of it. 119184 - Moved shadow related methods from RenderProgress to ShadowBlockElement 119185 to share it with RenderMeter. 119186 - Added rules for html.css for new pseudo classes. 119187 119188 Tests: fast/dom/HTMLMeterElement/meter-styles-changing-pseudo.html 119189 fast/dom/HTMLMeterElement/meter-styles.html 119190 119191 * CMakeLists.txt: 119192 * GNUmakefile.am: 119193 * WebCore.gypi: 119194 * WebCore.pro: 119195 * WebCore.vcproj/WebCore.vcproj: 119196 * WebCore.xcodeproj/project.pbxproj: 119197 * css/CSSSelector.cpp: 119198 (WebCore::CSSSelector::pseudoId): 119199 (WebCore::nameToPseudoTypeMap): 119200 (WebCore::CSSSelector::extractPseudoType): 119201 * css/CSSSelector.h: 119202 (WebCore::CSSSelector::): 119203 * css/html.css: 119204 (meter::-webkit-meter-horizontal-bar): 119205 (meter::-webkit-meter-vertical-bar): 119206 (meter::-webkit-meter-horizontal-optimum-value): 119207 (meter::-webkit-meter-horizontal-suboptimal-value): 119208 (meter::-webkit-meter-horizontal-even-less-good-value): 119209 (meter::-webkit-meter-vertical-optimum-value): 119210 (meter::-webkit-meter-vertical-suboptimal-value): 119211 (meter::-webkit-meter-vertical-even-less-good-value): 119212 * rendering/RenderIndicator.cpp: Added. 119213 (WebCore::RenderIndicator::RenderIndicator): 119214 (WebCore::RenderIndicator::~RenderIndicator): 119215 (WebCore::RenderIndicator::layout): 119216 (WebCore::RenderIndicator::styleDidChange): 119217 (WebCore::RenderIndicator::updateFromElement): 119218 (WebCore::RenderIndicator::hasParts): 119219 (WebCore::RenderIndicator::requestLayoutForParts): 119220 * rendering/RenderIndicator.h: Added. 119221 (WebCore::RenderIndicator::requiresForcedStyleRecalcPropagation): 119222 * rendering/RenderMeter.cpp: 119223 (WebCore::RenderMeter::RenderMeter): 119224 (WebCore::RenderMeter::~RenderMeter): 119225 (WebCore::RenderMeter::layoutParts): Added. 119226 (WebCore::RenderMeter::shouldHaveParts): Added. 119227 (WebCore::RenderMeter::valueRatio): Added. 119228 (WebCore::RenderMeter::barPartRect): Added. 119229 (WebCore::RenderMeter::valuePartRect): Added. 119230 (WebCore::RenderMeter::isHorizontal): Added. 119231 (WebCore::RenderMeter::valuePseudoId): Added. 119232 (WebCore::RenderMeter::barPseudoId): Added. 119233 (WebCore::RenderMeter::updatePartsState): Added. 119234 * rendering/RenderMeter.h: 119235 * rendering/RenderProgress.cpp: 119236 (WebCore::RenderProgress::RenderProgress): 119237 (WebCore::RenderProgress::updateFromElement): 119238 (WebCore::RenderProgress::paint): 119239 (WebCore::RenderProgress::layoutParts): Added. 119240 (WebCore::RenderProgress::shouldHaveParts): Added. 119241 (WebCore::RenderProgress::updatePartsState): 119242 (WebCore::RenderProgress::valuePartRect): 119243 * rendering/RenderProgress.h: 119244 * rendering/RenderTheme.cpp: 119245 (WebCore::RenderTheme::isControlStyled): 119246 (WebCore::RenderTheme::paintMeter): 119247 * rendering/RenderTheme.h: 119248 (WebCore::RenderTheme::supportsMeter): Added. 119249 * rendering/RenderThemeMac.h: 119250 * rendering/RenderThemeMac.mm: 119251 (WebCore::RenderThemeMac::supportsMeter): Added. 119252 * rendering/ShadowElement.cpp: 119253 (WebCore::ShadowBlockElement::layoutAsPart): Added. 119254 (WebCore::ShadowBlockElement::updateStyleForPart): Added. 119255 (WebCore::ShadowBlockElement::createForPart): Added. 119256 (WebCore::ShadowBlockElement::createStyleForPart): Added. 119257 (WebCore::ShadowBlockElement::partShouldHaveStyle): Added. 119258 * rendering/ShadowElement.h: 119259 * rendering/style/RenderStyleConstants.h: 119260 (WebCore::): 119261 119262 2010-06-17 Fumitoshi Ukai <ukai (a] chromium.org> 119263 119264 Reviewed by Alexey Proskuryakov. 119265 119266 WebSocket: resume should not process buffer if already processing. 119267 https://bugs.webkit.org/show_bug.cgi?id=39340 119268 119269 Test: websocket/tests/alert-in-event-handler.html 119270 119271 While running an event handler of WebSocket object, it may be suspended 119272 and resumed in various reason. e.g. alert() will suspend/resume 119273 ActiveDOM objects. In chromium, sending IPC message would also 119274 suspend/resume ActiveDOM objects. 119275 If resume process pending buffer in this case, another event might 119276 be fired while running the initial event handler. 119277 Thus, resume should not process pending buffer immediately. 119278 Pending buffer would be processed after the current task has been 119279 finished. 119280 119281 * websockets/ThreadableWebSocketChannelClientWrapper.h: 119282 * websockets/WebSocketChannel.cpp: 119283 (WebCore::WebSocketChannel::WebSocketChannel): 119284 (WebCore::WebSocketChannel::resume): 119285 Just set one shot timer for resumeTimerFired() if not yet set. 119286 (WebCore::WebSocketChannel::resumeTimerFired): 119287 Process pending event after resume was called. 119288 * websockets/WebSocketChannel.h: 119289 119290 2010-06-17 Eric Seidel <eric (a] webkit.org> 119291 119292 Reviewed by Adam Barth. 119293 119294 REGRESSION(HTML5 parser): editing/selection/leave-requested-block.html can fail or crash 119295 https://bugs.webkit.org/show_bug.cgi?id=40764 119296 119297 HTML5ScriptRunner was careful to only call CachedResource::addClient 119298 for cases where the resource was not already loaded. This was to 119299 avoid getting synchronous notifyFinished callbacks from inside 119300 addClient. (The old HTMLDocumentParser also has hacks to work around 119301 addClient's synchronous notifyFinished behavior for already-loaded 119302 resources as well.) 119303 119304 It turns out that CachedResource will mark itself as purgeable if it 119305 has no clients, thus it could have its data cleared (but itself not 119306 deleted) in the case where we yield back to the runloop to wait for 119307 CSS to load before executing the loaded script. 119308 119309 The fix is to act more like the old parser and always call addClient 119310 on every CachedScript we load. But unlike the old parser, we're 119311 careful not to re-enter from addClient -> notifyFinished 119312 using guards in HTML5DocumentParser::watchForLoad. 119313 119314 I do not know how to make a CachedResource purge itself 119315 from a LayoutTest, so this is not currently testable. 119316 If anyone knows how I'm happy to make a test. 119317 119318 * html/HTML5DocumentParser.cpp: 119319 (WebCore::HTML5DocumentParser::watchForLoad): 119320 - It is now expected to call watchForLoad with a loaded script. 119321 (WebCore::HTML5DocumentParser::notifyFinished): 119322 - Now that watchForLoad is called with loaded scripts, notifyFinished 119323 may be be called from addClient, thus we may be in the middle of 119324 script execution when it's called. It's OK. We pass the call 119325 along to HTML5ScriptRunner::executeScriptsWaitingForLoad 119326 and it knows how to ignore the call in that case. 119327 * html/HTML5DocumentParser.h: 119328 - Document these member variables more. 119329 * html/HTML5ScriptRunner.cpp: 119330 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner): 119331 (WebCore::HTML5ScriptRunner::executePendingScript): 119332 (WebCore::HTML5ScriptRunner::hasScriptsWaitingForLoad): 119333 (WebCore::HTML5ScriptRunner::watchForLoad): 119334 - Set the pending script to RegisteringForWatch state before 119335 watching and WatchingForLoad after. 119336 (WebCore::HTML5ScriptRunner::stopWatchingForLoad): 119337 - Set the pending script to NotWatchingForLoad. 119338 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 119339 - Assert that callers checked hasScriptsWaitingForLoad() 119340 (WebCore::HTML5ScriptRunner::requestScript): 119341 * html/HTML5ScriptRunner.h: 119342 (WebCore::HTML5ScriptRunner::PendingScript::): 119343 (WebCore::HTML5ScriptRunner::PendingScript::PendingScript): 119344 (WebCore::HTML5ScriptRunner::PendingScript::watchingForLoad): 119345 * html/HTML5ScriptRunnerHost.h: 119346 - Document the new expectations of watchForLoad 119347 119348 2010-06-17 Tony Gentilcore <tonyg (a] chromium.org> 119349 119350 Reviewed by Eric Seidel. 119351 119352 Prevent HTML5PreloadScanner from loading resources in <noscript> tags. 119353 https://bugs.webkit.org/show_bug.cgi?id=40779 119354 119355 No new tests. Will create a layout test in a subsequent patch. 119356 119357 * html/HTML5PreloadScanner.cpp: 119358 (WebCore::HTML5PreloadScanner::processToken): 119359 * html/HTML5TreeBuilder.cpp: 119360 (WebCore::HTML5TreeBuilder::adjustedLexerState): 119361 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 119362 (WebCore::HTML5TreeBuilder::isScriptingFlagEnabled): 119363 * html/HTML5TreeBuilder.h: 119364 119365 2010-06-17 Adam Barth <abarth (a] webkit.org> 119366 119367 Reviewed by Eric Seidel. 119368 119369 HTML5PreloadScanner parses <script> in DataState 119370 https://bugs.webkit.org/show_bug.cgi?id=40804 119371 119372 The ScriptDataState is handled separately from the rest of the lexer 119373 state changes because it's more complicted in the tree builder. The 119374 easiest thing is to just handle it separately in the preloader too. 119375 119376 * html/HTML5PreloadScanner.cpp: 119377 (WebCore::HTML5PreloadScanner::processToken): 119378 119379 2010-06-17 Adam Barth <abarth (a] webkit.org> 119380 119381 Reviewed by Eric Seidel. 119382 119383 Add CSS scanning to HTML5PreloadScanner 119384 https://bugs.webkit.org/show_bug.cgi?id=40802 119385 119386 This patch just cribs the CSS preload scanning algorithm from the old 119387 preload scanner. We also invented a way of testing the preload 119388 scanner. 119389 119390 Tests: fast/preloader/image.html 119391 fast/preloader/link.html 119392 fast/preloader/script.html 119393 fast/preloader/style.html 119394 119395 * Android.mk: 119396 * GNUmakefile.am: 119397 * WebCore.gypi: 119398 * WebCore.pro: 119399 * WebCore.vcproj/WebCore.vcproj: 119400 * WebCore.xcodeproj/project.pbxproj: 119401 * html/CSSPreloadScanner.cpp: Added. 119402 (WebCore::isWhitespace): 119403 (WebCore::CSSPreloadScanner::CSSPreloadScanner): 119404 (WebCore::CSSPreloadScanner::reset): 119405 (WebCore::CSSPreloadScanner::scan): 119406 (WebCore::CSSPreloadScanner::tokenize): 119407 (WebCore::CSSPreloadScanner::emitRule): 119408 * html/CSSPreloadScanner.h: Added. 119409 (WebCore::CSSPreloadScanner::): 119410 * html/HTML5PreloadScanner.cpp: 119411 (WebCore::HTML5PreloadScanner::HTML5PreloadScanner): 119412 (WebCore::HTML5PreloadScanner::processToken): 119413 (WebCore::HTML5PreloadScanner::scanningBody): 119414 * html/HTML5PreloadScanner.h: 119415 119416 2010-06-17 Abhishek Arya <inferno (a] chromium.org> 119417 119418 Reviewed by David Kilzer. 119419 119420 (Landed by Dirk Pranke). 119421 119422 Check for a null frame before setting drag selection. 119423 https://bugs.webkit.org/show_bug.cgi?id=38893 119424 Same Layout test as https://bugs.webkit.org/show_bug.cgi?id=37168. 119425 119426 Test: editing/pasteboard/drag-drop-iframe-refresh-crash.html 119427 119428 Note that you need to run the test manually 20-30 times for the crash 119429 to reproduce. 119430 119431 * editing/SelectionController.cpp: 119432 (WebCore::SelectionController::setSelection): 119433 119434 2010-06-17 Benjamin Poulain <benjamin.poulain (a] nokia.com> 119435 119436 Reviewed by Simon Hausmann. 119437 119438 [Qt] Get rid of the the unused imageSize of ImageDecoderQt::internalHandleCurrentImage() 119439 https://bugs.webkit.org/show_bug.cgi?id=40620 119440 119441 Remove an unused variable. 119442 119443 * platform/graphics/qt/ImageDecoderQt.cpp: 119444 (WebCore::ImageDecoderQt::internalHandleCurrentImage): 119445 119446 2010-06-17 Jeremy Moskovich <jeremy (a] chromium.org> 119447 119448 Reviewed by Darin Fisher. 119449 119450 [Chromium API] Implement WebSandboxSupport on OS X and add stubs to allow 119451 OOP loading of fonts. 119452 119453 https://bugs.webkit.org/show_bug.cgi?id=40544 119454 119455 * platform/chromium/ChromiumBridge.h: Add prototype for loadFont() 119456 119457 2010-06-17 Nicolas Weber <thakis (a] chromium.org> 119458 119459 Reviewed by Eric Seidel. 119460 119461 Fix various warnings that are reported when building with clang 119462 https://bugs.webkit.org/show_bug.cgi?id=40503 119463 119464 * accessibility/AccessibilityRenderObject.cpp: 119465 (WebCore::AccessibilityRenderObject::labelElementContainer): 119466 * accessibility/AccessibilityTableCell.cpp: 119467 (WebCore::AccessibilityTableCell::parentTable): 119468 * bindings/v8/NPV8Object.cpp: 119469 (WebCore::npObjectTypeInfo): 119470 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: 119471 (WebCore::): 119472 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: 119473 (WebCore::): 119474 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: 119475 (WebCore::): 119476 * css/CSSStyleSheet.h: 119477 * html/HTMLFormElement.cpp: 119478 (WebCore::HTMLFormElement::getNamedElements): 119479 * inspector/InspectorValues.cpp: 119480 (WebCore::InspectorObject::getObject): 119481 (WebCore::InspectorObject::getArray): 119482 * page/animation/AnimationBase.h: 119483 * platform/graphics/BitmapImage.h: 119484 (WTF::): 119485 * platform/graphics/mac/FontPlatformData.h: 119486 * rendering/RenderBlock.h: 119487 * rendering/RootInlineBox.cpp: 119488 (WebCore::RootInlineBox::ellipsisBox): 119489 * storage/StorageNamespaceImpl.cpp: 119490 (WebCore::StorageNamespaceImpl::storageArea): 119491 119492 2010-06-17 Kwang Yul Seo <skyul (a] company100.net> 119493 119494 Reviewed by Pavel Feldman. 119495 119496 Add ENABLE(INSPECTOR) guard for m_sessionSettings 119497 https://bugs.webkit.org/show_bug.cgi?id=40611 119498 119499 Build fix. 119500 119501 * inspector/InspectorController.h: 119502 119503 2010-06-17 Eric Seidel <eric (a] webkit.org> 119504 119505 Reviewed by Adam Barth. 119506 119507 Add FIXME to explain HTMLDocumentParser's forceSynchronous bool 119508 https://bugs.webkit.org/show_bug.cgi?id=40609 119509 119510 No functional change, just adding comment. 119511 119512 * dom/Document.cpp: 119513 (WebCore::Document::write): 119514 119515 2010-06-13 Robert Hogan <robert (a] webkit.org> 119516 119517 Reviewed by Kenneth Rohde Christiansen. 119518 119519 WebCore EventHandler needs to take account of onLoad events 119520 fired before layout() complete 119521 119522 https://bugs.webkit.org/show_bug.cgi?id=40102 119523 119524 WebCore 'cheats' by firing onLoad events before the frame's layout 119525 has been performed. This can result in event listeners performing 119526 operations that depend on the document's final layout, such as 119527 scrolling operations. 119528 119529 When scrolling a frameview in eventhandler ensure the layout is complete. 119530 119531 * page/EventHandler.cpp: 119532 (WebCore::EventHandler::scrollRecursively): 119533 119534 2010-06-16 Dumitru Daniliuc <dumi (a] chromium.org> 119535 119536 Reviewed by Dimitri Glazkov. 119537 119538 Add the error codes defined in the async DB spec to SQLError.idl and SQLError.h. 119539 https://bugs.webkit.org/show_bug.cgi?id=40748 119540 119541 Test: storage/sql-error-codes.html 119542 119543 * storage/SQLError.h: 119544 (WebCore::SQLError::): 119545 * storage/SQLError.idl: 119546 * storage/SQLStatement.cpp: 119547 (WebCore::SQLStatement::execute): 119548 (WebCore::SQLStatement::setDatabaseDeletedError): 119549 (WebCore::SQLStatement::setVersionMismatchedError): 119550 (WebCore::SQLStatement::setFailureDueToQuota): 119551 (WebCore::SQLStatement::lastExecutionFailedDueToQuota): 119552 * storage/SQLTransaction.cpp: 119553 (WebCore::SQLTransaction::openTransactionAndPreflight): 119554 (WebCore::SQLTransaction::deliverTransactionCallback): 119555 (WebCore::SQLTransaction::handleCurrentStatementError): 119556 (WebCore::SQLTransaction::deliverStatementCallback): 119557 (WebCore::SQLTransaction::postflightAndCommit): 119558 119559 2010-06-17 Kinuko Yasuda <kinuko (a] chromium.org> 119560 119561 Reviewed by Jian Li. 119562 119563 Fix CRLF ending conversion in StringBlobItem. 119564 https://bugs.webkit.org/show_bug.cgi?id=40736 119565 Also: fix referencing uninitialized member bug and slice length bug 119566 in hybrid blob case. 119567 119568 Tests will be added when we add BlobBuilder jsc bindings. 119569 119570 * platform/BlobItem.cpp: 119571 (WebCore::StringBlobItem::convertToCString): 119572 (WebCore::DataRangeBlobItem::DataRangeBlobItem): 119573 119574 2010-06-17 Dimitri Glazkov <dglazkov (a] chromium.org> 119575 119576 Unreviewed, rolling out r61340. 119577 http://trac.webkit.org/changeset/61340 119578 https://bugs.webkit.org/show_bug.cgi?id=36282 119579 119580 Broke several editing tests. 119581 119582 * css/CSSMutableStyleDeclaration.cpp: 119583 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration): 119584 * css/CSSParser.cpp: 119585 (WebCore::CSSParser::parseValue): 119586 * css/CSSStyleSelector.cpp: 119587 (WebCore::CSSStyleSelector::applyProperty): 119588 119589 2010-06-17 Jian Li <jianli (a] chromium.org> 119590 119591 Reviewed by David Levin. 119592 119593 Add optional contentType parameter to Blob.slice per latest File API spec. 119594 https://bugs.webkit.org/show_bug.cgi?id=40647 119595 119596 Tested by http/tests/local/resources/send-sliced-dragged-file.html. 119597 119598 * html/Blob.cpp: 119599 (WebCore::Blob::slice): 119600 * html/Blob.h: 119601 * html/Blob.idl: 119602 119603 2010-06-17 Jesus Sanchez-Palencia <jesus (a] webkit.org>, Kenneth Rohde Christiansen <kenneth (a] webkit.org> 119604 119605 Reviewed by Simon Hausmann. 119606 119607 [Qt] QtWebKit does not support viewport meta tag 119608 https://bugs.webkit.org/show_bug.cgi?id=39902 119609 119610 Add windowRect() to page client. 119611 119612 * platform/qt/QWebPageClient.h: 119613 119614 2010-06-17 Stephen White <senorblanco (a] chromium.org> 119615 119616 Reviewed by David Levin. 119617 119618 Fix for slow multiple animated resize issue. 119619 https://bugs.webkit.org/show_bug.cgi?id=38233 119620 119621 The timer-based resize quality approach implemented in 119622 http://trac.webkit.org/changeset/34210 is a good idea, but doesn't 119623 scale to multiple images with animated resizes. This fix unifies all 119624 outstanding resize timers into a single timer, and removes the "use 119625 last quality" check (which doesn't work when images are overlapping). 119626 It also refactors the copy of this code implemented in 119627 RenderBoxModelObject in http://trac.webkit.org/changeset/53949. 119628 119629 This improves Safari performance for the following IE9 platform demos on my C2D MacPro (10.5): 119630 http://ie.microsoft.com/testdrive/Performance/01FlyingImages/Default.html (4->60fps) 119631 http://ie.microsoft.com/testdrive/Performance/10FlickrExplorer/Default.html (3->16fps) 119632 http://ie.microsoft.com/testdrive/Performance/11BrowserFlip/Default.html (9->60fps) 119633 119634 * rendering/RenderBoxModelObject.cpp: 119635 (WebCore::ImageQualityController::ImageQualityController): 119636 Unify all timers into a single timer, rename RenderBoxModelScaleObserver 119637 to ImageQualityController, and remove the resize quality "stickness", 119638 since it doesn't work with multiple outstanding resizes. 119639 (WebCore::ImageQualityController::objectDestroyed): 119640 gImages global is now m_lastPaintTimeMap member. 119641 (WebCore::ImageQualityController::highQualityRepaintTimerFired): 119642 Function made non-static; repaint all pending resizes (not just one). 119643 (WebCore::ImageQualityController::restartTimer): 119644 Added function to restart timer at 1.05x threshold. 119645 (WebCore::imageQualityController): 119646 Static function to return singleton. 119647 (WebCore::ImageQualityController::shouldPaintAtLowQuality): 119648 Use m_lastPaintTimeMap, not gImages global. Implement new timer 119649 algorithm. Remove resize "stickiness". 119650 (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality): 119651 Implement shouldPaintAtLowQuality, which pulls out "this" and passes 119652 the call to the ImageQualityController. 119653 (WebCore::RenderBoxModelObject::~RenderBoxModelObject): 119654 Call ImageQualityController singleton's objectDestroyed() instead of 119655 old static function. 119656 (WebCore::RenderBoxModelObject::paintFillLayerExtended): 119657 Modify shouldPaintAtLowQuality() call to match new class name and 119658 function signature. 119659 * rendering/RenderBoxModelObject.h: 119660 Expose shouldPaintAtLowQuality as a member function. 119661 * rendering/RenderImage.cpp: 119662 (WebCore::RenderImage::~RenderImage): 119663 No need to call objectDestroyed() here anymore, since the 119664 RenderBoxModelObject destructor will do this for us. 119665 (WebCore::RenderImage::paintIntoRect): 119666 Rip out RenderImageScaleObserver, and call 119667 RenderBoxModelObject::shouldPaintAtLowQuality() instead. 119668 119669 2010-06-17 Rob Buis <rwlbuis (a] gmail.com> 119670 119671 Reviewed by Dave Hyatt. 119672 119673 CSS3 "Property is declared twice in rule" test fails 119674 https://bugs.webkit.org/show_bug.cgi?id=36282 119675 119676 Filter out duplicate properties in style declaration. 119677 119678 Test: fast/css/duplicate-property-in-rule.html 119679 119680 * css/CSSMutableStyleDeclaration.cpp: Filter out duplicate properties 119681 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration): 119682 * css/CSSParser.cpp: 119683 (WebCore::CSSParser::parseValue): Discard negative padding values 119684 * css/CSSStyleSelector.cpp: Remove negative padding check 119685 (WebCore::CSSStyleSelector::applyProperty): 119686 119687 2010-06-17 Kenneth Russell <kbr (a] google.com> 119688 119689 Reviewed by Dimitri Glazkov. 119690 119691 Clean up error conditions for Typed Arrays 119692 https://bugs.webkit.org/show_bug.cgi?id=40755 119693 119694 * bindings/js/JSArrayBufferCustom.cpp: 119695 (WebCore::JSArrayBufferConstructor::constructJSArrayBuffer): 119696 - Fixed handling of NaN/+inf/-inf lengths. Throw RangeError for too-large or negative lengths. 119697 * bindings/js/JSArrayBufferViewHelper.h: 119698 (WebCore::constructArrayBufferView): 119699 - Changed all error code paths to throw exceptions. Clarified exception types. 119700 * bindings/js/JSFloat32ArrayCustom.cpp: 119701 (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array): 119702 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119703 * bindings/js/JSInt16ArrayCustom.cpp: 119704 (WebCore::JSInt16ArrayConstructor::constructJSInt16Array): 119705 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119706 * bindings/js/JSInt32ArrayCustom.cpp: 119707 (WebCore::JSInt32ArrayConstructor::constructJSInt32Array): 119708 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119709 * bindings/js/JSInt8ArrayCustom.cpp: 119710 (WebCore::JSInt8ArrayConstructor::constructJSInt8Array): 119711 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119712 * bindings/js/JSUint16ArrayCustom.cpp: 119713 (WebCore::JSUint16ArrayConstructor::constructJSUint16Array): 119714 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119715 * bindings/js/JSUint32ArrayCustom.cpp: 119716 (WebCore::JSUint32ArrayConstructor::constructJSUint32Array): 119717 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119718 * bindings/js/JSUint8ArrayCustom.cpp: 119719 (WebCore::JSUint8ArrayConstructor::constructJSUint8Array): 119720 - Removed throwing of INDEX_SIZE_ERROR, delegating responsibility to constructArrayBufferView. 119721 * bindings/v8/custom/V8ArrayBufferCustom.cpp: 119722 (WebCore::V8ArrayBuffer::constructorCallback): 119723 - Fixed handling of NaN/+inf/-inf lengths. Throw RangeError for too-large or negative lengths. 119724 Clarified exception types. 119725 * bindings/v8/custom/V8ArrayBufferViewCustom.h: 119726 (WebCore::constructWebGLArray): 119727 - Clarified exception types and throwing of exceptions along all error code paths. 119728 * html/canvas/TypedArrayBase.h: 119729 (WebCore::TypedArrayBase::create): 119730 - Added necessary null checks during allocation. 119731 119732 2010-06-17 Shu Chang <chang.shu (a] nokia.com> 119733 119734 Reviewed by Kenneth Rohde Christiansen. 119735 119736 [Qt] Fix the link error on symbian with ENABLE_JIT=0. 119737 1. Add "#if ENABLE(JIT)" in the header file; 119738 2. Put feature enable/disable logic to a common.pri so 119739 that both JavaScriptCore.pri and WebCore.pri can share. 119740 119741 https://bugs.webkit.org/show_bug.cgi?id=40780 119742 119743 * WebCore.pri: 119744 119745 2010-06-17 Kenneth Russell <kbr (a] google.com> 119746 119747 Reviewed by Oliver Hunt. 119748 119749 Differences in error reporting for overloaded methods causing fast/canvas/webgl/texImageTest.html to fail 119750 https://bugs.webkit.org/show_bug.cgi?id=40750 119751 119752 Added V8Proxy::throwTypeError() and throwSyntaxError for parity 119753 with JSC::throwTypeError() and throwSyntaxError. Changed 119754 CodeGeneratorV8.pm to use throwTypeError for overload resolution 119755 failures. Revised CodeGeneratorJS.pm to use throwVMTypeError 119756 instead of manual call to JSValue::encode. Deleted now-unnecessary 119757 Chromium expectations for fast/canvas/webgl/texImageTest.html. 119758 119759 * bindings/scripts/CodeGeneratorJS.pm: 119760 * bindings/scripts/CodeGeneratorV8.pm: 119761 * bindings/v8/V8Proxy.cpp: 119762 (WebCore::V8Proxy::throwTypeError): 119763 (WebCore::V8Proxy::throwSyntaxError): 119764 * bindings/v8/V8Proxy.h: 119765 119766 2010-06-17 Darin Fisher <darin (a] chromium.org> 119767 119768 Reviewed by Brady Eidson. 119769 119770 If Page::goToItem is passed a HistoryItem that is the current item, 119771 then the page should be loaded again. 119772 119773 https://bugs.webkit.org/show_bug.cgi?id=40660 119774 119775 * loader/HistoryController.cpp: 119776 (WebCore::HistoryController::recursiveGoToItem): Add a check to 119777 recursiveGoToItem that matches the one in FrameLoader::loadItem. 119778 119779 2010-06-17 Kwang Yul Seo <skyul (a] company100.net> 119780 119781 Reviewed by Kent Tamura. 119782 119783 [BREWMP] Build fix for DragDataBrew 119784 https://bugs.webkit.org/show_bug.cgi?id=40610 119785 119786 http://trac.webkit.org/changeset/60957 was not applied to DragDataBrew.cpp. 119787 Add FilenameConversionPolicy argument to DragData::containsURL and DragData::asURL. 119788 119789 * platform/brew/DragDataBrew.cpp: 119790 (WebCore::DragData::containsURL): 119791 (WebCore::DragData::asURL): 119792 119793 2010-06-17 Zhenyao Mo <zmo (a] google.com> 119794 119795 Reviewed by David Levin. 119796 119797 Rename internalformat to internalFormat 119798 https://bugs.webkit.org/show_bug.cgi?id=40149 119799 119800 * html/canvas/WebGLFramebuffer.cpp: Rename internalformat to internalFormat. 119801 (WebCore::WebGLFramebuffer::getColorBufferFormat): 119802 * html/canvas/WebGLRenderbuffer.cpp: Ditto. 119803 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): 119804 * html/canvas/WebGLRenderbuffer.h: Ditto. 119805 (WebCore::WebGLRenderbuffer::setInternalFormat): 119806 (WebCore::WebGLRenderbuffer::getInternalFormat): 119807 * html/canvas/WebGLRenderingContext.cpp: Ditto. 119808 (WebCore::WebGLRenderingContext::copyTexImage2D): 119809 (WebCore::WebGLRenderingContext::copyTexSubImage2D): 119810 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): 119811 (WebCore::WebGLRenderingContext::getRenderbufferParameter): 119812 (WebCore::WebGLRenderingContext::renderbufferStorage): 119813 (WebCore::WebGLRenderingContext::texImage2DBase): 119814 (WebCore::WebGLRenderingContext::isTexInternalFormatColorBufferCombinationValid): 119815 * html/canvas/WebGLRenderingContext.h: Ditto. 119816 * html/canvas/WebGLTexture.cpp: Ditto. 119817 (WebCore::WebGLTexture::WebGLTexture): 119818 * html/canvas/WebGLTexture.h: Ditto. 119819 (WebCore::WebGLTexture::setInternalFormat): 119820 (WebCore::WebGLTexture::getInternalFormat): 119821 119822 2010-06-17 Zhenyao Mo <zmo (a] google.com> 119823 119824 Reviewed by David Levin. 119825 119826 Remove input parameter validation for "level" upper limit in *tex* functions 119827 https://bugs.webkit.org/show_bug.cgi?id=40603 119828 119829 * html/canvas/WebGLRenderingContext.cpp: 119830 (WebCore::WebGLRenderingContext::validateTexFuncParameters): Don't check for "level" upper limit. 119831 119832 2010-06-17 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 119833 119834 Reviewed by Eric Seidel. 119835 119836 Clean EFL header files in order to diminish the compilation time with 119837 EFL from subversion. We remove the EFL includes from header files and use 119838 forward declarations, including the headers in correspondent source 119839 files when needed. This causes only the needed source files to be 119840 recompiled in case a new version of EFL is installed instead of 119841 triggering a recompilation of almost all WebCore/WebKit. 119842 https://bugs.webkit.org/show_bug.cgi?id=40575 119843 119844 No new functionalities, so no new tests. 119845 119846 * CMakeListsEfl.txt: 119847 * platform/PlatformKeyboardEvent.h: forward declaration. 119848 * platform/PlatformMouseEvent.h: forward declaration and change method 119849 signature to not require enum. 119850 * platform/PlatformWheelEvent.h: forward declaration. 119851 * platform/Widget.h: forward declaration. 119852 * platform/efl/PlatformKeyboardEventEfl.cpp: include needed header. 119853 * platform/efl/PlatformMouseEventEfl.cpp: 119854 (WebCore::PlatformMouseEvent::setClickCount): change method signature 119855 as mentioned above. 119856 * platform/efl/PlatformWheelEventEfl.cpp: include needed header. 119857 * platform/efl/RenderThemeEfl.cpp: include needed header 119858 * platform/efl/RenderThemeEfl.h: forward declaration. 119859 * platform/efl/ScrollbarEfl.cpp: include needed header. 119860 * platform/efl/ScrollbarEfl.h: forward declaration. 119861 * platform/efl/WidgetEfl.cpp: include needed header. 119862 * platform/graphics/FloatRect.h: remove unused method. 119863 * platform/graphics/Icon.h: forward declaration. 119864 * platform/graphics/IntRect.h: remove unused method. 119865 * platform/graphics/efl/FloatRectEfl.cpp: Removed. This file was 119866 implementing an unused method. 119867 * platform/graphics/efl/IntRectEfl.cpp: Removed. This file was 119868 implementing an unused method. 119869 119870 2010-06-17 Alex Milowski <alex (a] milowski.com> 119871 119872 Reviewed by Darin Adler. 119873 119874 Fixed a compile error in the paint() methods by making them use the 119875 new visitedDependentColor() method. 119876 https://bugs.webkit.org/show_bug.cgi?id=40327 119877 119878 * mathml/RenderMathMLRoot.cpp: 119879 (WebCore::RenderMathMLRoot::paint): 119880 (WebCore::RenderMathMLRoot::layout): Fixed a crash where every child 119881 was assumed to be a RenderMathMLBlock instance when that isn't the 119882 case. Also, layout() needed to mark the index for layout before 119883 calling layout() on the index. 119884 * mathml/RenderMathMLSquareRoot.cpp: 119885 (WebCore::RenderMathMLSquareRoot::paint): 119886 119887 2010-06-17 Darin Adler <darin (a] apple.com> 119888 119889 Reviewed by Sam Weinig. 119890 119891 Use adoptRef and create functions in more code paths 119892 https://bugs.webkit.org/show_bug.cgi?id=40760 119893 119894 This helps prepare for an assertion that fires if you ref or destroy an 119895 object before calling adoptRef on it. That will help us catch mistakes 119896 that can lead to storage leaks. 119897 119898 * WebCore.base.exp: Updated export now that Frame::create is not an 119899 inline function. 119900 119901 * css/CSSInitialValue.h: 119902 (WebCore::CSSInitialValue::createExplicit): Use create. 119903 (WebCore::CSSInitialValue::createImplicit): Ditto. 119904 (WebCore::CSSInitialValue::create): Added. 119905 119906 * css/CSSPrimitiveValue.cpp: 119907 (WebCore::CSSPrimitiveValue::createUncachedIdentifier): Added. 119908 (WebCore::CSSPrimitiveValue::createUncachedColor): Added. 119909 (WebCore::CSSPrimitiveValue::createUncached): Added. 119910 (WebCore::CSSPrimitiveValue::createIdentifier): Use createUncachedIdentifier 119911 instead of using new directly. 119912 (WebCore::CSSPrimitiveValue::createColor): Use createUncachedColor instead 119913 of using new directly. 119914 (WebCore::CSSPrimitiveValue::create): Use createdUncached instead of using 119915 new directly. 119916 * css/CSSPrimitiveValue.h: Declare the new functions above. 119917 119918 * css/CSSStyleSelector.cpp: 119919 (WebCore::loadFullDefaultStyle): Deref simpleDefaultStyleSheet instead of 119920 explicitly deleting it. 119921 119922 * loader/SubresourceLoader.cpp: 119923 (WebCore::SubresourceLoader::SubresourceLoader): Move the call to 119924 addSubresourceLoader out of here. 119925 (WebCore::SubresourceLoader::create): Move it in here. This makes it so 119926 we don't ref the loader before finishing its creation and calling adoptRef. 119927 119928 * page/Frame.cpp: 119929 (WebCore::Frame::Frame): Move the call to setMainFrame out of here. 119930 Also refactor the code so an assertion is easier to read. 119931 (WebCore::Frame::create): Move the call to setMainFrame in here. 119932 This makes it so we don't ref the frame before finishing its creation 119933 and calling adoptRef. 119934 * page/Frame.h: Made the create function non-inline. 119935 119936 * platform/text/BidiContext.cpp: 119937 (WebCore::BidiContext::createUncached): Added. 119938 (WebCore::BidiContext::create): Call createUncached instead of callling 119939 new directly. 119940 * platform/text/BidiContext.h: Declare createUncached. 119941 119942 * rendering/RenderSVGResourceFilter.cpp: 119943 (WebCore::RenderSVGResourceFilter::buildPrimitives): Use PassRefPtr and 119944 RefPtr instead of OwnPtr. And use the create function instead of new. 119945 * rendering/RenderSVGResourceFilter.h: Ditto. 119946 * rendering/SVGRenderTreeAsText.cpp: 119947 (WebCore::writeSVGResourceContainer): Ditto. 119948 119949 * storage/StorageAreaImpl.cpp: 119950 (WebCore::StorageAreaImpl::StorageAreaImpl): Move the code that calls 119951 StorageAreaSync::create out of here. 119952 (WebCore::StorageAreaImpl::create): Move it in here. This makes it so we 119953 don't ref the storage area before finishing its creation and calling adoptRef. 119954 119955 * svg/SVGPaint.cpp: 119956 (WebCore::SVGPaint::defaultFill): Use create instead of new. 119957 (WebCore::SVGPaint::defaultStroke): Ditto. 119958 119959 * svg/graphics/filters/SVGFilterBuilder.h: Made the constructor private 119960 and added a create function since this is a reference counted object and 119961 should not be constructed directly. 119962 119963 2010-06-17 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 119964 119965 Reviewed by Gustavo Noronha. 119966 119967 Update CMake build system to use new script for generating source files 119968 with gperf (r61091). 119969 This updates also the build system to cope with recent changes to 119970 source files list. 119971 https://bugs.webkit.org/show_bug.cgi?id=40628 119972 119973 No new tests since it's just compilation fixes. 119974 119975 * CMakeLists.txt: 119976 119977 2010-06-17 Darin Adler <darin (a] apple.com> 119978 119979 Reviewed by Sam Weinig. 119980 119981 Fix boolean reflected attributes to use empty string consistently for the content attribute value 119982 https://bugs.webkit.org/show_bug.cgi?id=40758 119983 119984 Test: fast/dom/boolean-attribute-reflection.html 119985 119986 The HTML5 specification and other browsers are all consistent: 119987 When setting a boolean IDL attribute to true, the attribute value 119988 gets set to the empty string. The guidelines for authors allow either 119989 the empty string or the name of the attribute, but for implementers 119990 of the DOM, the reflected attribute gets empty string. 119991 119992 * dom/Element.cpp: 119993 (WebCore::Element::setBooleanAttribute): Use emptyAtom to set the 119994 attribute to the empty string. 119995 119996 * html/HTMLFormControlElement.cpp: 119997 (WebCore::HTMLFormControlElement::setAutofocus): Use the empty string, 119998 not "autofocus". 119999 (WebCore::HTMLFormControlElement::setRequired): Use the empty string, 120000 not "required". 120001 120002 2010-06-17 Pavel Feldman <pfeldman (a] chromium.org> 120003 120004 Unreviewed: chromium tests fix. Added InspectorBackend delegates for new inspector methods. 120005 120006 * inspector/front-end/InspectorBackendStub.js: 120007 (.WebInspector.InspectorBackendStub.prototype.clearConsoleMessages): 120008 (.WebInspector.InspectorBackendStub.prototype.getOuterHTML): 120009 (.WebInspector.InspectorBackendStub.prototype.setOuterHTML): 120010 (.WebInspector.InspectorBackendStub.prototype.addInspectedNode): 120011 120012 2010-06-17 Mark Brand <mabrand (a] mabrand.nl> 120013 120014 Reviewed by Simon Hausmann. 120015 120016 [Qt] use "win32-g++*" scope to match all MinGW makespecs 120017 120018 The scope "win32-g++" comes from the name of the makespec. However, it 120019 is frequently used to check for MinGW. This works fine as long as 120020 win32-g++ is the only makespec for MinGW. Now we need the wildcard 120021 to cover "win32-g++-cross" as well. 120022 120023 * WebCore.pro: 120024 120025 2010-06-16 Pavel Feldman <pfeldman (a] chromium.org> 120026 120027 Reviewed by Joe Pecoraro. 120028 120029 Web Inspector: move get/setOuterHTML, addInspectedNode and 120030 clearConsole to native InspectorDOMAgent. This is done to allow 120031 inspected nodes array to store nodes from different domains, 120032 also moves outerhtml manipulation closer to the rest of the DOM 120033 operations. In addition to that, we are slowly getting rid of 120034 InjectedScriptAccess in favor of IDL-defined InspectorBackend 120035 interface for clearer remote debugging API. 120036 120037 https://bugs.webkit.org/show_bug.cgi?id=40733 120038 120039 * inspector/InjectedScriptHost.cpp: 120040 (WebCore::InjectedScriptHost::inspectedNode): 120041 * inspector/InjectedScriptHost.h: 120042 * inspector/InspectorBackend.cpp: 120043 (WebCore::InspectorBackend::changeTagName): 120044 (WebCore::InspectorBackend::getOuterHTML): 120045 (WebCore::InspectorBackend::setOuterHTML): 120046 (WebCore::InspectorBackend::addInspectedNode): 120047 (WebCore::InspectorBackend::clearConsoleMessages): 120048 * inspector/InspectorBackend.h: 120049 * inspector/InspectorBackend.idl: 120050 * inspector/InspectorDOMAgent.cpp: 120051 (WebCore::InspectorDOMAgent::inspectedNode): 120052 (WebCore::InspectorDOMAgent::changeTagName): 120053 (WebCore::InspectorDOMAgent::getOuterHTML): 120054 (WebCore::InspectorDOMAgent::setOuterHTML): 120055 (WebCore::InspectorDOMAgent::addInspectedNode): 120056 * inspector/InspectorDOMAgent.h: 120057 * inspector/InspectorFrontend.cpp: 120058 (WebCore::InspectorFrontend::didGetOuterHTML): 120059 (WebCore::InspectorFrontend::didSetOuterHTML): 120060 * inspector/InspectorFrontend.h: 120061 * inspector/front-end/ConsoleView.js: 120062 (WebInspector.ConsoleView.prototype.requestClearMessages): 120063 * inspector/front-end/DOMAgent.js: 120064 * inspector/front-end/ElementsPanel.js: 120065 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): 120066 (WebInspector.ElementsPanel): 120067 * inspector/front-end/ElementsTreeOutline.js: 120068 (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback): 120069 (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted): 120070 (): 120071 * inspector/front-end/InjectedScript.js: 120072 (injectedScriptConstructor): 120073 * inspector/front-end/InjectedScriptAccess.js: 120074 120075 2010-06-17 John Gregg <johnnyg (a] google.com> 120076 120077 Reviewed by David Levin. 120078 120079 Move the call to the notification presenter that a Notification is being 120080 destroyed from the destructor (not safe) to the ActiveDOMObject::contextDestroyed 120081 method. 120082 120083 Also fix up an incorrect reference loss in the V8 bindings code for Notifications. 120084 https://bugs.webkit.org/show_bug.cgi?id=40097 120085 120086 No new tests; code paths are well-covered by existing tests. 120087 120088 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 120089 (WebCore::V8NotificationCenter::createHTMLNotificationCallback): 120090 (WebCore::V8NotificationCenter::createNotificationCallback): 120091 * notifications/Notification.cpp: 120092 (WebCore::Notification::~Notification): 120093 (WebCore::Notification::contextDestroyed): 120094 * notifications/Notification.h: 120095 120096 2010-06-17 Csaba Osztrogonc <ossy (a] webkit.org> 120097 120098 Unreviewed rollout r61311, because it made 2 tests fail on Qt bot. 120099 120100 [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved 120101 https://bugs.webkit.org/show_bug.cgi?id=36702 120102 120103 * plugins/qt/PluginViewQt.cpp: 120104 (WebCore::PluginView::updatePluginWidget): 120105 120106 2010-05-28 Viatcheslav Ostapenko <ostapenko.viatcheslav (a] nokia.com> 120107 120108 Reviewed by Simon Hausmann, Antti Koivisto 120109 120110 Make repaint throttling parameters runtime configurable. 120111 https://bugs.webkit.org/show_bug.cgi?id=38401 120112 120113 REPAINT_THROTTLING now chooses default values for throttling parameters. 120114 Should be removed when applications start using runtime configuration. 120115 120116 * page/FrameView.cpp: 120117 (WebCore::FrameView::reset): 120118 (WebCore::FrameView::updateDeferredRepaintDelay): 120119 (WebCore::FrameView::setRepaintThrottlingDeferredRepaintDelay): 120120 (WebCore::FrameView::setRepaintThrottlingnInitialDeferredRepaintDelayDuringLoading): 120121 (WebCore::FrameView::setRepaintThrottlingMaxDeferredRepaintDelayDuringLoading): 120122 (WebCore::FrameView::setRepaintThrottlingDeferredRepaintDelayIncrementDuringLoading): 120123 * page/FrameView.h: 120124 120125 2010-06-17 Robert Hogan <robert (a] webkit.org> 120126 120127 Reviewed by Kenneth Rohde Christiansen. 120128 120129 [Qt] NPP_SetWindow seems to not be called when TestNetscapePlugin is moved 120130 120131 https://bugs.webkit.org/show_bug.cgi?id=36702 120132 120133 setNPWindowIfNeeded() is called on paint() in PluginViewQt, which doesn't 120134 work for DRT. So call it if we are in DRT mode and the window geometry 120135 has changed. 120136 120137 Unskips plugins/reentrant-update-widget-positions.html 120138 120139 * plugins/qt/PluginViewQt.cpp: 120140 (WebCore::PluginView::updatePluginWidget): 120141 120142 2010-06-17 Simon Hausmann <simon.hausmann (a] nokia.com> 120143 120144 Reviewed by Kenneth Christiansen. 120145 120146 [Qt] Avoid unnecessary calls to save() and restore() when drawing images 120147 120148 Avoid calling the expensive save() and restore() on the GraphicsContext just 120149 for changing the composition mode. Instead save and restore it manually 120150 on QPainter. 120151 120152 Change fac227f609e544f8f55aca8447b4328d6534407a in Qt makes sure that the 120153 call to QPainter::setCompositionMode doesn't do anything if the mode hasn't 120154 changed. 120155 120156 * platform/graphics/GraphicsContext.h: 120157 * platform/graphics/qt/GraphicsContextQt.cpp: 120158 (WebCore::GraphicsContext::toQtCompositionMode): 120159 * platform/graphics/qt/ImageQt.cpp: 120160 (WebCore::BitmapImage::draw): 120161 120162 2010-06-16 Dawit Alemayehu <adawit (a] kde.org> 120163 120164 Reviewed by Simon Hausmann. 120165 120166 [Qt] QtWebKit crashes while initializing flash plugin 10.1.53.64. 120167 https://bugs.webkit.org/show_bug.cgi?id=40567 120168 120169 Avoid preventable crashes by ensuring gtk_init() is called in the 120170 flash viewer plugins before calling NP_Initialize. 120171 120172 * plugins/qt/PluginPackageQt.cpp: 120173 (WebCore::PluginPackage::load): 120174 120175 2010-06-16 Tony Gentilcore <tonyg (a] chromium.org> 120176 120177 Reviewed by David Levin. 120178 120179 Guarantee that references are held for CachedScripts in HTMLDocumentParser. 120180 https://bugs.webkit.org/show_bug.cgi?id=40177 120181 120182 No new tests because no new functionality. 120183 120184 * html/HTMLDocumentParser.cpp: 120185 (WebCore::HTMLDocumentParser::reset): 120186 (WebCore::HTMLDocumentParser::executeExternalScriptsIfReady): 120187 120188 2010-06-16 Qi Zhang <qi.2.zhang (a] nokia.com> 120189 120190 Reviewed by Laszlo Gombos. 120191 120192 [Qt] Repeat pattern should start from origin 120193 https://bugs.webkit.org/show_bug.cgi?id=39225 120194 120195 Patterns must be painted so that the top left of the first image 120196 is anchored at the origin of the coordinate space. 120197 120198 * platform/graphics/qt/GraphicsContextQt.cpp: 120199 (WebCore::drawRepeatPattern): 120200 (WebCore::GraphicsContext::fillRect): 120201 120202 2010-06-16 Jarkko Sakkinen <jarkko.j.sakkinen (a] gmail.com> 120203 120204 Reviewed by Simon Hausmann. 120205 120206 [Qt] WebGL viewport does not show up on N900 120207 https://bugs.webkit.org/show_bug.cgi?id=38528 120208 120209 With OGLES2 add default precision to the shader code. 120210 Use GLsizeiptr and GLintptr with OGLES2. 120211 Call paint() in beginPaint() so that drawTexture() is used 120212 whenever possible. 120213 120214 * platform/graphics/qt/GraphicsContext3DQt.cpp: 120215 (WebCore::GraphicsContext3D::beginPaint): 120216 (WebCore::GraphicsContext3D::paint): 120217 (WebCore::GraphicsContext3D::shaderSource): 120218 120219 2010-06-16 Antonio Gomes <tonikitoo (a] webkit.org> 120220 120221 Reviewed by Simon Fraser. 120222 120223 Spatial Navigation: refactor scrollInDirection to work with scrollable content 120224 https://bugs.webkit.org/show_bug.cgi?id=39195 120225 120226 scrollInDirection now receives as parameter the node that the Spatial Navigation 120227 found as the more appropriated to move focus to. If it is in a scrollable container 120228 (e.g. <div> with clipped overflow content), it scrolls recursively starting from 120229 the container, not the current focused node. 120230 120231 Test: fast/events/spatial-navigation/snav-only-clipped-overflow-content.html 120232 120233 * page/FocusController.cpp: 120234 (WebCore::FocusController::advanceFocusDirectionally): 120235 * page/SpatialNavigation.cpp: 120236 (WebCore::scrollInDirection): 120237 * page/SpatialNavigation.h: 120238 120239 2010-06-16 Brady Eidson <beidson (a] apple.com> 120240 120241 Reviewed by Eric Carlson 120242 120243 <rdar://problem/7249553> and https://bugs.webkit.org/show_bug.cgi?id=40749 120244 ResourceLoader::willCacheResponse() needs to null-check Frame::Settings() 120245 120246 No new tests. (Discovered via crash reports, no reproducible cases noted) 120247 120248 * loader/ResourceLoader.cpp: 120249 (WebCore::ResourceLoader::willCacheResponse): Null check m_frame->settings(), 120250 but also add an ASSERT so debug-build developers can learn more about why 120251 this might be happening. 120252 120253 2010-06-16 Darin Adler <darin (a] apple.com> 120254 120255 Try to fix the MathML build. 120256 120257 * mathml/MathMLMathElement.h: Added missing return type. 120258 120259 2010-06-16 Darin Adler <darin (a] apple.com> 120260 120261 Reviewed by David Levin. 120262 120263 Deploy adoptRef in more places, including all HTML and MathML elements 120264 https://bugs.webkit.org/show_bug.cgi?id=39941 120265 120266 * dom/Element.cpp: 120267 (WebCore::Element::dispatchAttrRemovalEvent): Use create instead of new 120268 in commented-out code. 120269 (WebCore::Element::dispatchAttrAdditionEvent): Ditto. 120270 120271 * dom/Node.h: Removed now-unused CreateElementZeroRefCount and 120272 CreateHTMLElementZeroRefCount. 120273 120274 * editing/InsertListCommand.cpp: 120275 (WebCore::InsertListCommand::insertList): Use create instead of new, fixing 120276 a storage leak. 120277 120278 * editing/ModifySelectionListLevel.cpp: 120279 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel): 120280 Removed "WithType" from function name. Use create instead of new, fixing a 120281 storage leak. 120282 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Use 120283 create instead of new, fixing a storage leak. 120284 120285 * storage/IndexedDatabaseImpl.cpp: 120286 (WebCore::IndexedDatabaseImpl::create): Use adoptRef, fixing a storage leak. 120287 120288 * editing/ModifySelectionListLevel.h: Added create functions. 120289 120290 * html/HTMLAnchorElement.cpp: 120291 (WebCore::HTMLAnchorElement::HTMLAnchorElement): 120292 * html/HTMLFrameOwnerElement.cpp: 120293 (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement): 120294 * html/HTMLMeterElement.cpp: 120295 (WebCore::HTMLMeterElement::HTMLMeterElement): 120296 * html/HTMLProgressElement.cpp: 120297 (WebCore::HTMLProgressElement::HTMLProgressElement): 120298 Removed code to explicitly pass CreateHTMLElement construction type since that's 120299 now the type used for all HTML elements. 120300 120301 * html/HTMLFormControlElement.cpp: 120302 (WebCore::HTMLFormControlElement::HTMLFormControlElement): 120303 * html/HTMLFormControlElement.h: 120304 Removed construction type argument, since CreateHTMLElement is now the type used 120305 for all HTML elements. 120306 120307 * mathml/MathMLElement.cpp: 120308 (WebCore::MathMLElement::MathMLElement): Removed construction type of 120309 CreateStyledElementZeroRefCount so we'll use the default construction 120310 type, CreateStyledElement. 120311 (WebCore::MathMLElement::create): Use adoptRef. 120312 120313 * mathml/MathMLElement.h: Made isMathMLElement function private and 120314 removed unneeded override of createRenderer, because it did the 120315 same thing as the base class's createRenderer function. 120316 120317 * mathml/MathMLInlineContainerElement.cpp: 120318 (WebCore::MathMLInlineContainerElement::create): Use adoptRef. 120319 (WebCore::MathMLInlineContainerElement::createRenderer): 120320 Removed unnecessarily initialization of local variable and removed the 120321 case for mathTag, since that uses a different derived class. 120322 120323 * mathml/MathMLInlineContainerElement.h: Made createRenderrer override 120324 private. 120325 120326 * mathml/MathMLMathElement.cpp: 120327 (WebCore::MathMLMathElement::MathMLMathElement): Marked inline since 120328 it is called in only one place. 120329 (WebCore::MathMLMathElement::create): Use adoptRef. 120330 (WebCore::MathMLMathElement::createRenderer): Added. Creates a 120331 RenderMathMLMath object. 120332 120333 * mathml/MathMLMathElement.h: Made constructor private and added a 120334 private override of createRenderer. 120335 120336 * mathml/MathMLTextElement.cpp: 120337 (WebCore::MathMLTextElement::MathMLTextElement): Marked inline since 120338 it is called in only one place. 120339 (WebCore::MathMLTextElement::create): Use adoptRef. 120340 (WebCore::MathMLTextElement::createRenderer): Changed to call through 120341 to the base class instead of calling RenderObject::createObject directly. 120342 120343 * mathml/MathMLTextElement.h: Made the constructor and createRenderer 120344 function private. 120345 120346 * rendering/RenderFileUploadControl.cpp: 120347 (WebCore::RenderFileUploadControl::RenderFileUploadControl): 120348 Removed an unneeded initializer. 120349 120350 * rendering/RenderProgress.cpp: Tweaked includes. 120351 120352 * rendering/ShadowElement.cpp: Added a "using namespace" directive. 120353 * rendering/ShadowElement.h: Tweaked formatting. Made more functions 120354 private. 120355 120356 * editing/DeleteButton.cpp: 120357 (WebCore::DeleteButton::create): 120358 * html/HTMLAudioElement.cpp: 120359 (WebCore::HTMLAudioElement::create): 120360 (WebCore::HTMLAudioElement::createForJSConstructor): 120361 * html/HTMLBRElement.cpp: 120362 (WebCore::HTMLBRElement::create): 120363 * html/HTMLBaseElement.cpp: 120364 (WebCore::HTMLBaseElement::create): 120365 * html/HTMLBaseFontElement.cpp: 120366 (WebCore::HTMLBaseFontElement::create): 120367 * html/HTMLBlockquoteElement.cpp: 120368 (WebCore::HTMLBlockquoteElement::create): 120369 * html/HTMLBodyElement.cpp: 120370 (WebCore::HTMLBodyElement::create): 120371 * html/HTMLButtonElement.cpp: 120372 (WebCore::HTMLButtonElement::create): 120373 * html/HTMLCanvasElement.cpp: 120374 (WebCore::HTMLCanvasElement::create): 120375 * html/HTMLDListElement.cpp: 120376 (WebCore::HTMLDListElement::create): 120377 * html/HTMLDataGridCellElement.cpp: 120378 (WebCore::HTMLDataGridCellElement::create): 120379 * html/HTMLDataGridColElement.cpp: 120380 (WebCore::HTMLDataGridColElement::create): 120381 * html/HTMLDataGridElement.cpp: 120382 (WebCore::HTMLDataGridElement::create): 120383 * html/HTMLDataGridRowElement.cpp: 120384 (WebCore::HTMLDataGridRowElement::create): 120385 * html/HTMLDataListElement.cpp: 120386 (WebCore::HTMLDataListElement::create): 120387 * html/HTMLDivElement.cpp: 120388 (WebCore::HTMLDivElement::create): 120389 * html/HTMLElement.cpp: 120390 (WebCore::HTMLElement::create): 120391 * html/HTMLElement.h: 120392 (WebCore::HTMLElement::HTMLElement): 120393 * html/HTMLFieldSetElement.cpp: 120394 (WebCore::HTMLFieldSetElement::create): 120395 * html/HTMLFontElement.cpp: 120396 (WebCore::HTMLFontElement::create): 120397 * html/HTMLFormElement.cpp: 120398 (WebCore::HTMLFormElement::create): 120399 * html/HTMLFrameSetElement.cpp: 120400 (WebCore::HTMLFrameSetElement::create): 120401 * html/HTMLHRElement.cpp: 120402 (WebCore::HTMLHRElement::create): 120403 * html/HTMLHeadElement.cpp: 120404 (WebCore::HTMLHeadElement::create): 120405 * html/HTMLHeadingElement.cpp: 120406 (WebCore::HTMLHeadingElement::create): 120407 * html/HTMLHtmlElement.cpp: 120408 (WebCore::HTMLHtmlElement::create): 120409 * html/HTMLImageElement.cpp: 120410 (WebCore::HTMLImageElement::create): 120411 (WebCore::HTMLImageElement::createForJSConstructor): 120412 * html/HTMLInputElement.cpp: 120413 (WebCore::HTMLInputElement::create): 120414 * html/HTMLIsIndexElement.cpp: 120415 (WebCore::HTMLIsIndexElement::create): 120416 * html/HTMLKeygenElement.cpp: 120417 (WebCore::HTMLKeygenElement::create): 120418 * html/HTMLLIElement.cpp: 120419 (WebCore::HTMLLIElement::create): 120420 * html/HTMLLabelElement.cpp: 120421 (WebCore::HTMLLabelElement::create): 120422 * html/HTMLLegendElement.cpp: 120423 (WebCore::HTMLLegendElement::create): 120424 * html/HTMLLinkElement.cpp: 120425 (WebCore::HTMLLinkElement::create): 120426 * html/HTMLMapElement.cpp: 120427 (WebCore::HTMLMapElement::create): 120428 * html/HTMLMarqueeElement.cpp: 120429 (WebCore::HTMLMarqueeElement::create): 120430 * html/HTMLMenuElement.cpp: 120431 (WebCore::HTMLMenuElement::create): 120432 * html/HTMLMetaElement.cpp: 120433 (WebCore::HTMLMetaElement::create): 120434 * html/HTMLModElement.cpp: 120435 (WebCore::HTMLModElement::create): 120436 * html/HTMLNoScriptElement.cpp: 120437 (WebCore::HTMLNoScriptElement::create): 120438 * html/HTMLOListElement.cpp: 120439 (WebCore::HTMLOListElement::create): 120440 * html/HTMLOptGroupElement.cpp: 120441 (WebCore::HTMLOptGroupElement::create): 120442 * html/HTMLOptionElement.cpp: 120443 (WebCore::HTMLOptionElement::create): 120444 (WebCore::HTMLOptionElement::createForJSConstructor): 120445 * html/HTMLParagraphElement.cpp: 120446 (WebCore::HTMLParagraphElement::create): 120447 * html/HTMLParamElement.cpp: 120448 (WebCore::HTMLParamElement::create): 120449 * html/HTMLPreElement.cpp: 120450 (WebCore::HTMLPreElement::create): 120451 * html/HTMLQuoteElement.cpp: 120452 (WebCore::HTMLQuoteElement::create): 120453 * html/HTMLScriptElement.cpp: 120454 (WebCore::HTMLScriptElement::create): 120455 * html/HTMLSelectElement.cpp: 120456 (WebCore::HTMLSelectElement::create): 120457 * html/HTMLSourceElement.cpp: 120458 (WebCore::HTMLSourceElement::create): 120459 * html/HTMLStyleElement.cpp: 120460 (WebCore::HTMLStyleElement::create): 120461 * html/HTMLTableCaptionElement.cpp: 120462 (WebCore::HTMLTableCaptionElement::create): 120463 * html/HTMLTableCellElement.cpp: 120464 (WebCore::HTMLTableCellElement::create): 120465 * html/HTMLTableColElement.cpp: 120466 (WebCore::HTMLTableColElement::create): 120467 * html/HTMLTableElement.cpp: 120468 (WebCore::HTMLTableElement::create): 120469 * html/HTMLTableRowElement.cpp: 120470 (WebCore::HTMLTableRowElement::create): 120471 * html/HTMLTableSectionElement.cpp: 120472 (WebCore::HTMLTableSectionElement::create): 120473 * html/HTMLTextAreaElement.cpp: 120474 (WebCore::HTMLTextAreaElement::create): 120475 * html/HTMLTitleElement.cpp: 120476 (WebCore::HTMLTitleElement::create): 120477 * html/HTMLUListElement.cpp: 120478 (WebCore::HTMLUListElement::create): 120479 * html/HTMLVideoElement.cpp: 120480 (WebCore::HTMLVideoElement::create): 120481 * loader/ImageDocument.cpp: 120482 (WebCore::ImageDocumentElement::create): 120483 * rendering/MediaControlElements.cpp: 120484 (WebCore::MediaControlShadowRootElement::create): 120485 (WebCore::MediaControlElement::create): 120486 (WebCore::MediaControlTimelineContainerElement::create): 120487 (WebCore::MediaControlVolumeSliderContainerElement::create): 120488 (WebCore::MediaControlStatusDisplayElement::create): 120489 (WebCore::MediaControlMuteButtonElement::create): 120490 (WebCore::MediaControlPlayButtonElement::create): 120491 (WebCore::MediaControlSeekButtonElement::create): 120492 (WebCore::MediaControlRewindButtonElement::create): 120493 (WebCore::MediaControlReturnToRealtimeButtonElement::create): 120494 (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): 120495 (WebCore::MediaControlTimelineElement::create): 120496 (WebCore::MediaControlVolumeSliderElement::create): 120497 (WebCore::MediaControlFullscreenButtonElement::create): 120498 (WebCore::MediaControlTimeDisplayElement::create): 120499 * rendering/RenderSlider.cpp: 120500 (WebCore::SliderThumbElement::create): 120501 * rendering/TextControlInnerElements.cpp: 120502 (WebCore::TextControlInnerElement::create): 120503 (WebCore::TextControlInnerTextElement::create): 120504 (WebCore::SearchFieldResultsButtonElement::create): 120505 (WebCore::SearchFieldCancelButtonElement::create): 120506 (WebCore::SpinButtonElement::create): 120507 Use adoptRef. 120508 120509 2010-06-16 Adam Barth <abarth (a] webkit.org> 120510 120511 Reviewed by Eric Seidel. 120512 120513 HTML5 parser crash when setTimeout document.write after slow script 120514 https://bugs.webkit.org/show_bug.cgi?id=40726 120515 120516 According to the HTML5 spec, we're supposed to open() a new document if 120517 we receive a document.write() after we've received EOF for the network. 120518 The old parser just dumped those bytes onto the end of the network 120519 stream. After this patch, our behavior matches Minefield. 120520 120521 Test: http/tests/misc/write-while-waiting.html 120522 120523 * WebCore.xcodeproj/project.pbxproj: 120524 * dom/Document.cpp: 120525 (WebCore::Document::write): 120526 * dom/DocumentParser.h: 120527 * dom/XMLDocumentParser.cpp: 120528 (WebCore::XMLDocumentParser::finishWasCalled): 120529 * dom/XMLDocumentParser.h: 120530 * html/HTML5DocumentParser.cpp: 120531 (WebCore::HTML5DocumentParser::finishWasCalled): 120532 * html/HTML5DocumentParser.h: 120533 (WebCore::HTML5DocumentParser::InputStream::isClosed): 120534 * html/HTMLDocumentParser.cpp: 120535 (WebCore::HTMLDocumentParser::finishWasCalled): 120536 * html/HTMLDocumentParser.h: 120537 * loader/ImageDocument.cpp: 120538 (WebCore::ImageTokenizer::finishWasCalled): 120539 * loader/MediaDocument.cpp: 120540 (WebCore::MediaDocumentParser::finishWasCalled): 120541 * loader/PluginDocument.cpp: 120542 (WebCore::PluginDocumentParser::finishWasCalled): 120543 * loader/SinkDocument.cpp: 120544 (WebCore::SinkDocumentParser::finishWasCalled): 120545 * loader/TextDocument.cpp: 120546 (WebCore::TextDocumentParser::finishWasCalled): 120547 120548 2010-06-16 Martin Robinson <mrobinson (a] igalia.com> 120549 120550 Reviewed by Gustavo Noronha Silva. 120551 120552 [GTK] ClipboardGtk::setURL does not match the behavior of other platforms 120553 https://bugs.webkit.org/show_bug.cgi?id=40640 120554 120555 Instead of writing URL labels to the text portion of the clipboard or 120556 drag-and-drop data, write the URL itself. Also escape the label text 120557 of URLs. Abstracts logic into DataObjectGtk, so ClipboardGtk and 120558 PasteboardGtk can share it. 120559 120560 Tests for this issue will be activated when dropping support has been 120561 added to the GTK+ EventSender. 120562 120563 * platform/gtk/ClipboardGtk.cpp: 120564 (WebCore::ClipboardGtk::writeURL): Use DataObjectGtk::setURL. 120565 * platform/gtk/DataObjectGtk.cpp: 120566 (WebCore::DataObjectGtk::setURL): 120567 Added. Write URL to the text portion and remember to escape the 120568 label when creating the markup portion. 120569 * platform/gtk/DataObjectGtk.h: Add declaration of new method. 120570 * platform/gtk/PasteboardGtk.cpp: 120571 (WebCore::Pasteboard::writeURL): Use DataObjectGtk::setURL. 120572 120573 2010-06-16 Adam Barth <abarth (a] webkit.org> 120574 120575 Reviewed by Eric Seidel. 120576 120577 Hit assertion in WebCore::HTML5Token::appendToSystemIdentifier 120578 https://bugs.webkit.org/show_bug.cgi?id=40729 120579 120580 This was a copy/paste error. Yay for ASSERTs. 120581 120582 * html/HTML5Lexer.cpp: 120583 (WebCore::HTML5Lexer::nextToken): 120584 120585 2010-06-16 Stuart Morgan <stuartmorgan (a] chromium.org> 120586 120587 Reviewed by Anders Carlsson. 120588 120589 Bring npapi.h more in line with upstream npapi-headers version: 120590 - Remove obsolete XP_MAC sections. 120591 - Remove Metrowerks defines. 120592 - Add OS/2 defines. 120593 - Add Maemo defines. 120594 - Add new version of the custom Carbon event definitions. 120595 - Sync platform define style/details 120596 120597 https://bugs.webkit.org/show_bug.cgi?id=38666 120598 120599 * bridge/npapi.h: 120600 120601 2010-06-16 Simon Fraser <simon.fraser (a] apple.com> 120602 120603 Reviewed by Sam Weinig. 120604 120605 Allow transitions and animations of clip: rect 120606 https://bugs.webkit.org/show_bug.cgi?id=38130 120607 120608 Make the CSS clip property animatable. 120609 120610 Test: transitions/clip-transition.html 120611 120612 * page/animation/AnimationBase.cpp: 120613 (WebCore::blendFunc): New blend function for LengthBox 120614 (WebCore::AnimationBase::ensurePropertyMap): Create a PropertyWrapper for LengthBoxes. 120615 120616 * platform/LengthBox.h: 120617 (WebCore::LengthBox::LengthBox): New ctor that takes 4 length values. 120618 * rendering/style/RenderStyle.h: 120619 (WebCore::InheritedFlags::setClip): New method that takes a LengthBox. 120620 120621 2010-06-16 Simon Fraser <simon.fraser (a] apple.com> 120622 120623 Reviewed by Dan Bernstein. 120624 120625 Fix clipping via CSS clip: with composited descendants 120626 https://bugs.webkit.org/show_bug.cgi?id=40579 120627 120628 Consult the 'clip' style, as well as overflow, when creating clipping 120629 compositing layers. 120630 120631 Tests: compositing/geometry/clip.html 120632 compositing/overflow/clip-descendents.html 120633 120634 * rendering/RenderLayerBacking.cpp: 120635 (WebCore::clipBox): Utility function that returns the union of the clip and overflow 120636 boxes. 120637 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Use clipBox() to 120638 get the correct clipping rectangle. 120639 * rendering/RenderLayerCompositor.cpp: 120640 (WebCore::RenderLayerCompositor::enclosingNonStackingClippingLayer): Look for 120641 clip as well as overflow. 120642 (WebCore::RenderLayerCompositor::clipsCompositingDescendants): Ditto. 120643 120644 2010-06-16 Simon Fraser <simon.fraser (a] apple.com> 120645 120646 Reviewed by Darin Adler. 120647 120648 REGRESSION: Undocked inspector toolbar is white 120649 https://bugs.webkit.org/show_bug.cgi?id=40644 120650 120651 Make the html element 100% height so that we don't erase the background to white, after r61215. 120652 120653 * inspector/front-end/inspector.css: 120654 (html): 120655 120656 2010-06-16 Brian Weinstein <bweinstein (a] apple.com> 120657 120658 Reviewed by Darin Adler. 120659 120660 User scripts injected on start are not run on image documents. 120661 https://bugs.webkit.org/show_bug.cgi?id=40722 120662 <rdar://8087394> 120663 120664 User scripts that are injected on start are run from FrameLoader::dispatchDocumentElementAvailable, 120665 but this is never called from ImageDocument, so call it when we create a document element for 120666 our image document. 120667 120668 * loader/ImageDocument.cpp: 120669 (WebCore::ImageDocument::createDocumentStructure): Call FrameLoader::dispatchDocumentElementAvailable 120670 after creating our document element. 120671 120672 2010-06-16 Brady Eidson <beidson (a] apple.com> 120673 120674 Reviewed by NOBODY (Build fix for Mac) 120675 120676 * WebCore.xcodeproj/project.pbxproj: Make paths relative to the project root. 120677 120678 2010-06-16 Chris Marrin <cmarrin (a] apple.com> 120679 120680 Reviewed by Eric Carlson. 120681 120682 https://bugs.webkit.org/show_bug.cgi?id=40643 120683 120684 Second of three steps - rename Canvas3DLayer to WebGLLayer 120685 120686 * WebCore.xcodeproj/project.pbxproj: 120687 * platform/graphics/mac/Canvas3DLayer.h: Removed. 120688 * platform/graphics/mac/Canvas3DLayer.mm: Removed. 120689 * platform/graphics/mac/GraphicsLayerCA.mm: 120690 (WebCore::GraphicsLayerCA::setContentsToGraphicsContext3D): 120691 * platform/graphics/mac/WebGLLayer.h: Copied from WebCore/platform/graphics/mac/Canvas3DLayer.h. 120692 * platform/graphics/mac/WebGLLayer.mm: Copied from WebCore/platform/graphics/mac/Canvas3DLayer.mm. 120693 120694 2010-06-16 Chris Marrin <cmarrin (a] apple.com> 120695 120696 Reviewed by Simon Fraser. 120697 120698 https://bugs.webkit.org/show_bug.cgi?id=40643 120699 120700 Rename GraphicsContext3DMac.cpp so it can interact with CALayer 120701 120702 * platform/graphics/mac/GraphicsContext3DMac.cpp: Removed. 120703 * platform/graphics/mac/GraphicsContext3DMac.mm: Copied from WebCore/platform/graphics/mac/GraphicsContext3DMac.cpp. 120704 * WebCore.xcodeproj/project.pbxproj 120705 120706 2010-06-16 Nikolas Zimmermann <nzimmermann (a] rim.com> 120707 120708 Reviewed by Dirk Schulze. 120709 120710 Add new files, needed in SVG Text rewrite 120711 https://bugs.webkit.org/show_bug.cgi?id=40676 120712 120713 Land SVGTextChunkLayoutInfo.cpp and SVGTextQuery.(cpp|h), both with an "#if 0" on top, as they will be needed 120714 in a later patch, completing the SVG Text rewrite, that will enable them. 120715 120716 Doesn't affect any code for now, it should just reduce the review amount. 120717 120718 * Android.mk: 120719 * CMakeLists.txt: 120720 * GNUmakefile.am: 120721 * WebCore.gypi: 120722 * WebCore.pro: 120723 * WebCore.vcproj/WebCore.vcproj: 120724 * WebCore.xcodeproj/project.pbxproj: 120725 * rendering/SVGTextChunkLayoutInfo.cpp: Added. 120726 (WebCore::cummulatedWidthOrHeightOfTextChunk): 120727 (WebCore::cummulatedWidthOfTextChunk): 120728 (WebCore::cummulatedHeightOfTextChunk): 120729 (WebCore::calculateTextAnchorShiftForTextChunk): 120730 (WebCore::applyTextAnchorToTextChunk): 120731 (WebCore::calculateTextLengthCorrectionForTextChunk): 120732 (WebCore::applyTextLengthCorrectionToTextChunk): 120733 (WebCore::SVGTextChunkLayoutInfo::startTextChunk): 120734 (WebCore::SVGTextChunkLayoutInfo::closeTextChunk): 120735 (WebCore::SVGTextChunkLayoutInfo::buildTextChunks): 120736 (WebCore::SVGTextChunkLayoutInfo::recursiveBuildTextChunks): 120737 (WebCore::SVGTextChunkLayoutInfo::layoutTextChunks): 120738 * rendering/SVGTextChunkLayoutInfo.h: Add missing include, otherwhise compiling SVGTextChunkLayoutInfo.cpp will fail. 120739 * rendering/SVGTextQuery.cpp: Added. 120740 (WebCore::SVGTextQuery::Data::Data): 120741 (WebCore::flowBoxForRenderer): 120742 (WebCore::mapLengthThroughChunkTransformation): 120743 (WebCore::SVGTextQuery::SVGTextQuery): 120744 (WebCore::SVGTextQuery::collectTextBoxesInFlowBox): 120745 (WebCore::SVGTextQuery::executeQuery): 120746 (WebCore::SVGTextQuery::mapStartAndLengthIntoChunkPartCoordinates): 120747 (WebCore::SVGTextQuery::measureCharacterRange): 120748 (WebCore::NumberOfCharactersData::NumberOfCharactersData): 120749 (WebCore::SVGTextQuery::numberOfCharactersCallback): 120750 (WebCore::SVGTextQuery::numberOfCharacters): 120751 (WebCore::TextLengthData::TextLengthData): 120752 (WebCore::SVGTextQuery::textLengthCallback): 120753 (WebCore::SVGTextQuery::textLength): 120754 (WebCore::SubStringLengthData::SubStringLengthData): 120755 (WebCore::SVGTextQuery::subStringLengthCallback): 120756 (WebCore::SVGTextQuery::subStringLength): 120757 (WebCore::StartPositionOfCharacterData::StartPositionOfCharacterData): 120758 (WebCore::SVGTextQuery::startPositionOfCharacterCallback): 120759 (WebCore::SVGTextQuery::startPositionOfCharacter): 120760 (WebCore::EndPositionOfCharacterData::EndPositionOfCharacterData): 120761 (WebCore::SVGTextQuery::endPositionOfCharacterCallback): 120762 (WebCore::SVGTextQuery::endPositionOfCharacter): 120763 (WebCore::RotationOfCharacterData::RotationOfCharacterData): 120764 (WebCore::SVGTextQuery::rotationOfCharacterCallback): 120765 (WebCore::SVGTextQuery::rotationOfCharacter): 120766 (WebCore::ExtentOfCharacterData::ExtentOfCharacterData): 120767 (WebCore::SVGTextQuery::extentOfCharacterCallback): 120768 (WebCore::SVGTextQuery::extentOfCharacter): 120769 (WebCore::CharacterNumberAtPositionData::CharacterNumberAtPositionData): 120770 (WebCore::SVGTextQuery::characterNumberAtPositionCallback): 120771 (WebCore::SVGTextQuery::characterNumberAtPosition): 120772 * rendering/SVGTextQuery.h: Added. 120773 120774 2010-06-16 Nikolas Zimmermann <nzimmermann (a] rim.com> 120775 120776 Reviewed by Dirk Schulze. 120777 120778 Provide floating-point support for text selection framework 120779 https://bugs.webkit.org/show_bug.cgi?id=40665 120780 120781 This is the first chunk of the SVG Text rewrite patches. 120782 offsetForPosition() / selectionRectForText() should accept float/FloatPoint arguments instead 120783 of int/IntPoint. offsetForPosition() already worked with floats internally in Qt and Mac. 120784 selectionRectForText() was already returning a FloatRect, but the passed in origin was an integer. 120785 Fixing these problems in order to support sub-pixel positioning in the upcoming SVG Text rewrite patch. 120786 120787 Add a glyphScale parameter to TextRun, that will be used to support text selection 120788 in lengthAdjust/textLength scenarios in SVG text, soon. 120789 120790 Doesn't affect any testcases so far. HTML is not affected in any way, 120791 as it only ever passes integers to these functions. 120792 120793 * platform/graphics/Font.cpp: 120794 (WebCore::Font::selectionRectForText): 120795 (WebCore::Font::offsetForPosition): 120796 * platform/graphics/Font.h: 120797 * platform/graphics/FontFastPath.cpp: 120798 (WebCore::Font::selectionRectForSimpleText): 120799 (WebCore::Font::offsetForPositionForSimpleText): 120800 * platform/graphics/TextRun.h: 120801 (WebCore::TextRun::TextRun): 120802 (WebCore::TextRun::glyphScale): 120803 (WebCore::TextRun::setGlyphScale): 120804 (WebCore::TextRun::applyGlyphScaling): 120805 * platform/graphics/WidthIterator.cpp: 120806 (WebCore::WidthIterator::advance): 120807 * platform/graphics/chromium/FontChromiumWin.cpp: 120808 (WebCore::Font::selectionRectForComplexText): 120809 (WebCore::Font::offsetForPositionForComplexText): 120810 * platform/graphics/chromium/FontLinux.cpp: 120811 (WebCore::Font::offsetForPositionForComplexText): 120812 (WebCore::Font::selectionRectForComplexText): 120813 * platform/graphics/efl/FontEfl.cpp: 120814 (WebCore::Font::offsetForPositionForComplexText): 120815 (WebCore::Font::selectionRectForComplexText): 120816 * platform/graphics/gtk/FontGtk.cpp: 120817 (WebCore::Font::offsetForPositionForComplexText): 120818 (WebCore::Font::selectionRectForComplexText): 120819 * platform/graphics/haiku/FontHaiku.cpp: 120820 (WebCore::Font::selectionRectForComplexText): 120821 (WebCore::Font::offsetForPositionForComplexText): 120822 * platform/graphics/mac/ComplexTextController.cpp: 120823 (WebCore::ComplexTextController::offsetForPosition): 120824 * platform/graphics/mac/ComplexTextController.h: 120825 * platform/graphics/mac/FontComplexTextMac.cpp: 120826 (WebCore::Font::selectionRectForComplexText): 120827 (WebCore::Font::offsetForPositionForComplexText): 120828 * platform/graphics/qt/FontQt.cpp: 120829 (WebCore::Font::offsetForPositionForSimpleText): 120830 (WebCore::Font::offsetForPositionForComplexText): 120831 (WebCore::Font::selectionRectForSimpleText): 120832 (WebCore::Font::selectionRectForComplexText): 120833 * platform/graphics/win/FontWin.cpp: 120834 (WebCore::Font::selectionRectForComplexText): 120835 (WebCore::Font::offsetForPositionForComplexText): 120836 * platform/graphics/wince/FontWince.cpp: 120837 (WebCore::Font::offsetForPositionForComplexText): 120838 (WebCore::Font::selectionRectForComplexText): 120839 * platform/graphics/wx/FontWx.cpp: 120840 (WebCore::Font::selectionRectForComplexText): 120841 (WebCore::Font::offsetForPositionForComplexText): 120842 * svg/SVGFont.cpp: 120843 (WebCore::Font::selectionRectForTextUsingSVGFont): 120844 (WebCore::Font::offsetForPositionForTextUsingSVGFont): 120845 120846 2010-06-16 Anton Muhin <antonm (a] chromium.org> 120847 120848 Reviewed by Nate Chapin. 120849 120850 [v8] Introduce single element caches for WebCore::String to v8::String conversions 120851 https://bugs.webkit.org/show_bug.cgi?id=40435 120852 Measurements show that for some web apps (GMail, Wave) and some scenarios 120853 (intensive reading and/or keeping a tab open for a long time), 120854 hit rate lies in 30--50% interval. 120855 Inlining fast case gives another minor performance win. 120856 120857 * bindings/v8/V8Binding.cpp: 120858 (WebCore::getStringCache): 120859 (WebCore::v8ExternalStringSlow): 120860 * bindings/v8/V8Binding.h: 120861 (WebCore::v8ExternalString): 120862 120863 2010-06-16 Antonio Gomes <tonikitoo (a] webkit.org> 120864 120865 Reviewed by Kenneth Christiansen. 120866 120867 Spatial Navigation: using offset{Left,Top} is not enough to get the proper inner frames position 120868 https://bugs.webkit.org/show_bug.cgi?id=39439 120869 120870 As pointed out by Darin Adler in https://bugs.webkit.org/show_bug.cgi?id=18662#c20, 120871 "It's not correct to use the offsetLeft and offsetTop of the frame owner element's renderer because 120872 that's just the distance from the offsetParent, not the absolute position". 120873 120874 Patch fixes that behavior by now considering the offsetTop and offsetLeft the offsetParent recursively, 120875 starting from the HtmlFrameOwnerElement. Previously, only calling offsetTop and offsetLeft works 120876 because all tests were done in htmls where the {i}frame element was a directly a child of the body, 120877 e.g. <html>...<body><iframe src=xxx>....<body></html>. 120878 120879 Test: fast/events/spatial-navigation/snav-iframe-recursive-offset-parent.html 120880 120881 * page/SpatialNavigation.cpp: 120882 (WebCore::renderRectRelativeToRootDocument): 120883 120884 2010-06-16 Dan Bernstein <mitz (a] apple.com> 120885 120886 Try to fix the Tiger build 120887 120888 * platform/graphics/mac/SimpleFontDataMac.mm: 120889 (WebCore::SimpleFontData::platformBoundsForGlyph): 120890 120891 2010-06-16 Dan Bernstein <mitz (a] apple.com> 120892 120893 Try to fix the Tiger build 120894 120895 * platform/graphics/mac/SimpleFontDataMac.mm: 120896 (WebCore::SimpleFontData::platformBoundsForGlyph): 120897 120898 2010-06-16 Dan Bernstein <mitz (a] apple.com> 120899 120900 Reviewed by Alexey Proskuryakov. 120901 120902 <rdar://problem/8077119> REGRESSION (r60247): Google Reader contains the tops of pieces of unidentifiable text under feed headlines. 120903 https://bugs.webkit.org/show_bug.cgi?id=40386 120904 120905 Test: platform/mac/fast/text/x-height.html 120906 120907 The result of platformBoundsForGlyph() is in flipped coordinates, whereas the result of 120908 -[NSFont boundingRectForGlyph:] was not. r60247 failed to account for this. 120909 120910 * platform/graphics/mac/SimpleFontDataMac.mm: 120911 (WebCore::SimpleFontData::platformInit): Measure the height of the x glyph above the baseline 120912 correctly. 120913 (WebCore::SimpleFontData::platformBoundsForGlyph): Return a rect in flipped coordinates on Tiger 120914 as well. 120915 120916 2010-06-16 Adam Barth <abarth (a] webkit.org> 120917 120918 Reviewed by Eric Seidel. 120919 120920 Don't crash when a document ends with an entity 120921 https://bugs.webkit.org/show_bug.cgi?id=40658 120922 120923 When we SWITCH_TO a state, we're expecting our caller to have advanced 120924 the source. Rather than have all the callers check for empty, we do 120925 that ourselves. 120926 120927 * html/HTML5Lexer.cpp: 120928 120929 2010-06-15 Adam Barth <abarth (a] webkit.org> 120930 120931 Reviewed by Eric Seidel. 120932 120933 Enable HTML5 lexer 120934 https://bugs.webkit.org/show_bug.cgi?id=40650 120935 120936 * page/Settings.cpp: 120937 (WebCore::Settings::Settings): 120938 120939 2010-06-15 Mark Rowe <mrowe (a] apple.com> 120940 120941 Rubber-stamped by David Harrison. 120942 120943 sqlite3_prepare16_v2 is not documented as always setting "tail" during error cases. 120944 Explicitly initialize it to null, just to be safe. 120945 120946 * platform/sql/SQLiteStatement.cpp: 120947 (WebCore::SQLiteStatement::prepare): 120948 120949 2010-06-15 Mark Rowe <mrowe (a] apple.com> 120950 120951 Reviewed by Brady Eidson. 120952 120953 <rdar://problem/8091103> URLs not added to history when initial load happens via back/forward navigation 120954 120955 Back/forward navigation currently does not create or update items in the global history. This is usually 120956 desirable, except for in the event where the back/forward list was created programmatically and attached 120957 to the WebView and the initial load in that WebView is being performed as a result of a back/forward 120958 navigation. In that situation it is preferable to ensure that global history item is created or updated. 120959 120960 No test case is added because DumpRenderTree is not able to test the scenario where the initial 120961 load in a WebView occurs via a back/forward navigation. 120962 120963 * loader/FrameLoader.cpp: 120964 (WebCore::FrameLoader::transitionToCommitted): If we're committing the first load in this frame as a 120965 back/forward navigation then we should update the history as if it were a standard load, with the 120966 exception of updating the back/forward list. 120967 * loader/HistoryController.cpp: 120968 (WebCore::HistoryController::updateForStandardLoad): Add a parameter to allow callers to skip updating 120969 the back/forward list. 120970 * loader/HistoryController.h: 120971 (WebCore::HistoryController::): 120972 120973 2010-06-15 Kinuko Yasuda <kinuko (a] chromium.org> 120974 120975 Reviewed by David Levin. 120976 120977 Fix compilation errors in BlobBuilder with FILE_WRITER enabled 120978 https://bugs.webkit.org/show_bug.cgi?id=40606 120979 120980 No functionality change so no new tests. 120981 120982 * html/BlobBuilder.cpp: 120983 * html/BlobBuilder.h: 120984 120985 2010-06-15 Jian Li <jianli (a] chromium.org> 120986 120987 Reviewed by David Levin. 120988 120989 Move type attribute from File.idl to Blob.idl per latest File API spec. 120990 https://bugs.webkit.org/show_bug.cgi?id=40642 120991 120992 * html/Blob.idl: 120993 * html/File.idl: 120994 120995 2010-06-15 Darin Adler <darin (a] apple.com> 120996 120997 Reviewed by Adam Barth. 120998 120999 Move functions out of Frame class that were marked "move to Chrome" 121000 https://bugs.webkit.org/show_bug.cgi?id=39636 121001 121002 Refactoring that does not require new tests. 121003 121004 * loader/FrameLoader.cpp: 121005 (WebCore::FrameLoader::didOpenURL): Call setStatus and setDefaultStatus 121006 on DOMWindow rather than going through Frame. 121007 (WebCore::FrameLoader::open): Ditto. 121008 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Call 121009 shouldClose on this object instead of going through Frame. 121010 121011 * page/DOMWindow.cpp: 121012 (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents): Call 121013 shouldClose on FrameLoader instead of going through Frame. 121014 (WebCore::DOMWindow::focus): Moved the code from Frame::focusWindow 121015 in here. 121016 (WebCore::DOMWindow::blur): Moved the code from Frame::unfocusWindow 121017 in here. 121018 (WebCore::DOMWindow::close): Moved the code from Frame::scheduleClose 121019 in here. 121020 (WebCore::DOMWindow::setStatus): Moved the code from 121021 Frame::setJSStatusBarText in here. 121022 (WebCore::DOMWindow::setDefaultStatus): Moved the code from 121023 Frame::setJSDefaultStatusBarText in here. 121024 121025 * page/DOMWindow.h: Added m_status and m_defaultStatus members to 121026 store the status messages being set by the DOM. 121027 121028 * page/Frame.cpp: Removed all the functions that were marked 121029 "to be moved into Chrome". 121030 * page/Frame.h: Ditto. 121031 121032 2010-06-15 Simon Fraser <simon.fraser (a] apple.com> 121033 121034 Fix crashing tests; need to check for null documentElement(). 121035 121036 * rendering/RenderView.cpp: 121037 (WebCore::RenderView::paintBoxDecorations): 121038 121039 2010-06-15 Simon Fraser <simon.fraser (a] apple.com> 121040 121041 Reviewed by Dave Hyatt. 121042 121043 Garbage shown outside HTML if HTML is absolutely positioned 121044 https://bugs.webkit.org/show_bug.cgi?id=36163 121045 121046 Add a check that the root renderer (the document element's renderer) covers 121047 the entire viewport before deciding that we don't need the RenderView 121048 to paint its background. Fixes lack of painting with positioned, floated, and 121049 display: table html elements. 121050 121051 Test: fast/repaint/positioned-document-element.html 121052 121053 * rendering/RenderView.cpp: 121054 (WebCore::RenderView::paintBoxDecorations): 121055 121056 2010-06-15 Simon Fraser <simon.fraser (a] apple.com> 121057 121058 Reviewed by Dan Bernstein. 121059 121060 Safari 5 does not clear background with transformed html element 121061 https://bugs.webkit.org/show_bug.cgi?id=40498 121062 121063 When the document element is composited, ensure that the FrameView 121064 paints the background, because the composited layer may be transparent, 121065 or might get moved via animation. 121066 121067 Test: compositing/repaint/composited-document-element.html 121068 121069 * rendering/RenderView.cpp: 121070 (WebCore::isComposited): 121071 (WebCore::rendererObscuresBackground): 121072 121073 2010-06-15 Xan Lopez <xlopez (a] igalia.com> 121074 121075 Try to fix GTK+ build. 121076 121077 * platform/gtk/GtkVersioning.h: 121078 121079 2010-06-15 Darin Fisher <darin (a] chromium.org> 121080 121081 Reviewed by Brady Eidson. 121082 121083 Introduce HistoryItem::itemSequenceNumber and use it to identify 121084 HistoryItems that are clones of one another. 121085 121086 Changes HistoryController::recursiveGoToItem to use itemSequenceNumber 121087 equality instead of isTargetItem as the pre-requisite for not calling 121088 FrameLoader::loadItem. 121089 121090 Changes FrameLoader::loadItem to require equivalent 121091 documentSequenceNumber before initiating a same document navigation. 121092 This alone would appear to fix the bug, but it does not go far enough 121093 since without the itemSequenceNumber equality check, we'd re-load more 121094 often than we should. 121095 121096 Moves documentSequenceNumber assignment into createItemTree as cleanup 121097 and to ensure that it gets called properly whenever we create a cloned 121098 HistoryItem. (createItemTree's mission is to create clones up until 121099 or including the target frame depending on the value of the doClip 121100 parameter.) 121101 121102 Removes the now unused HistoryController::urlsMatchItem. 121103 121104 https://bugs.webkit.org/show_bug.cgi?id=40451 121105 121106 Test: fast/history/history-back-within-subframe.html 121107 http/tests/navigation/history-back-across-form-submission-to-fragment.html 121108 121109 * history/HistoryItem.cpp: 121110 (WebCore::generateSequenceNumber): 121111 (WebCore::HistoryItem::HistoryItem): 121112 * history/HistoryItem.h: 121113 (WebCore::HistoryItem::setItemSequenceNumber): 121114 (WebCore::HistoryItem::itemSequenceNumber): 121115 * loader/FrameLoader.cpp: 121116 (WebCore::FrameLoader::loadItem): 121117 * loader/HistoryController.cpp: 121118 (WebCore::HistoryController::updateBackForwardListForFragmentScroll): 121119 (WebCore::HistoryController::createItemTree): 121120 (WebCore::HistoryController::recursiveGoToItem): 121121 (WebCore::HistoryController::pushState): 121122 * loader/HistoryController.h: 121123 121124 2010-06-15 Xan Lopez <xlopez (a] igalia.com> 121125 121126 Reviewed by Gustavo Noronha. 121127 121128 [GTK] Does not compile with -DGSEAL_ENABLE 121129 https://bugs.webkit.org/show_bug.cgi?id=37851 121130 121131 Fix compilation with GSEAL_ENABLE. 121132 121133 * platform/gtk/GtkVersioning.h: 121134 * platform/gtk/PlatformScreenGtk.cpp: 121135 (WebCore::screenDepth): 121136 (WebCore::screenDepthPerComponent): 121137 * platform/gtk/PopupMenuGtk.cpp: 121138 (WebCore::PopupMenu::show): 121139 * platform/gtk/ScrollbarGtk.cpp: 121140 (ScrollbarGtk::detachAdjustment): 121141 (ScrollbarGtk::updateThumbPosition): 121142 (ScrollbarGtk::updateThumbProportion): 121143 * plugins/gtk/PluginViewGtk.cpp: 121144 (WebCore::PluginView::paint): 121145 (WebCore::PluginView::initXEvent): 121146 (WebCore::PluginView::platformGetValue): 121147 (WebCore::PluginView::platformStart): 121148 * plugins/gtk/gtk2xtbin.c: 121149 (gtk_xtbin_realize): 121150 (gtk_xtbin_new): 121151 (gtk_xtbin_set_position): 121152 (gtk_xtbin_unrealize): 121153 121154 2010-06-15 Xan Lopez <xlopez (a] igalia.com> 121155 121156 Unreviewed build fix. 121157 121158 Fix the build when WebSockets are disabled. 121159 121160 * bindings/js/JSWorkerContextCustom.cpp: 121161 121162 2010-06-15 Simon Fraser <simon.fraser (a] apple.com> 121163 121164 Reviewed by Dan Bernstein. 121165 121166 YouTube thumbnail borders vanish during transition 121167 https://bugs.webkit.org/show_bug.cgi?id=40551 121168 121169 Turn off the direct image optimization if the image has a clip style, so that is is 121170 correctly rendered with the clip. 121171 121172 Test: compositing/images/clip-on-directly-composited-image.html 121173 121174 * rendering/RenderLayerBacking.cpp: 121175 (WebCore::RenderLayerBacking::isDirectlyCompositedImage): 121176 121177 2010-06-15 Yury Semikhatsky <yurys (a] chromium.org> 121178 121179 Reviewed by Pavel Feldman. 121180 121181 [v8] Web Inspector: make ui tests pass when ScriptDebugServer is used 121182 https://bugs.webkit.org/show_bug.cgi?id=40623 121183 121184 * bindings/v8/JavaScriptCallFrame.cpp: 121185 (WebCore::JavaScriptCallFrame::functionName): return empty string for anonymous functions instead of [anonymous]. 121186 * bindings/v8/ScriptDebugServer.cpp: 121187 (WebCore::ScriptDebugServer::handleV8DebugEvent): autocontinue on syntax errors since there is no stack trace and 121188 not much to inspect. 121189 121190 2010-06-15 Adam Roben <aroben (a] apple.com> 121191 121192 Make WebCore's and JavaScriptCore's DerivedSources available for debugging in production builds 121193 121194 Fixes <http://webkit.org/b/40626> <rdar://problem/8094205>. 121195 121196 Reviewed by Sam Weinig. 121197 121198 * WebCore.vcproj/WebCore.make: Copy the contents of WebCore's 121199 DerivedSources directory to AppleInternal/Sources/WebCore. 121200 121201 2010-06-15 Zhenyao Mo <zmo (a] google.com> 121202 121203 Reviewed by Dimitri Glazkov. 121204 121205 Bring framebuffer functions to GLES2 conformance 121206 https://bugs.webkit.org/show_bug.cgi?id=40175 121207 121208 Test: fast/canvas/webgl/framebuffer-test.html 121209 121210 * html/canvas/WebGLRenderingContext.cpp: 121211 (WebCore::WebGLRenderingContext::checkFramebufferStatus): Check input parameters and deal with default framebuffer situation. 121212 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Check input parameters. 121213 (WebCore::WebGLRenderingContext::framebufferTexture2D): Ditto. 121214 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Ditto. 121215 (WebCore::WebGLRenderingContext::validateFramebufferFuncParameters): Check input parameters. 121216 * html/canvas/WebGLRenderingContext.h: Add validateFramebufferFuncParameters. 121217 121218 2010-06-15 Patrick Gansterer <paroga (a] paroga.com> 121219 121220 Reviewed by David Levin. 121221 121222 Buildfix for ResourceHandleWin after r24202 and r55542. 121223 https://bugs.webkit.org/show_bug.cgi?id=32963 121224 121225 * platform/network/win/ResourceHandleWin.cpp: 121226 (WebCore::ResourceHandle::onHandleCreated): 121227 (WebCore::ResourceHandle::onRequestComplete): 121228 (WebCore::transferJobStatusCallback): 121229 (WebCore::ResourceHandle::start): 121230 121231 2010-06-12 Pavel Feldman <pfeldman (a] chromium.org> 121232 121233 Reviewed by Joe Pecoraro. 121234 121235 Web Inspector: Should not expose window.console._inspectorCommandLineAPI to the web. 121236 121237 https://bugs.webkit.org/show_bug.cgi?id=40500 121238 121239 * inspector/front-end/InjectedScript.js: 121240 (injectedScriptConstructor): 121241 (injectedScriptConstructor.): 121242 121243 2010-06-15 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 121244 121245 Reviewed by Simon Hausmann. 121246 121247 [Qt] The qt_webkit_version.pri file gets overwritten on install 121248 https://bugs.webkit.org/show_bug.cgi?id=40487 121249 121250 Don't install qt_webkit_version.pri when building WebKit inside of Qt. 121251 The import of WebKit into Qt will take care of providing the file 121252 in mkspecs/modules and it'll be installed through projects.pro. 121253 121254 * WebCore.pro: 121255 121256 2010-06-15 Tony Chang <tony (a] chromium.org> 121257 121258 Reviewed by Ojan Vafai. 121259 121260 resolve urls in text/html clipboard data 121261 https://bugs.webkit.org/show_bug.cgi?id=40044 121262 121263 Allow text/html data copied from a page to contain full URLs when 121264 dragging or copy/pasting. 121265 121266 Tests: editing/pasteboard/copy-resolves-urls.html 121267 http/tests/misc/copy-resolves-urls.html 121268 121269 * WebCore.base.exp: 121270 * editing/markup.cpp: 121271 (WebCore::appendStartMarkup): 121272 (WebCore::getStartMarkup): 121273 (WebCore::MarkupAccumulator::appendMarkup): 121274 (WebCore::createMarkup): 121275 * editing/markup.h: 121276 (WebCore::): 121277 * platform/chromium/ClipboardChromium.cpp: 121278 (WebCore::ClipboardChromium::writeRange): 121279 * platform/chromium/PasteboardChromium.cpp: 121280 (WebCore::Pasteboard::writeSelection): 121281 * platform/gtk/ClipboardGtk.cpp: 121282 (WebCore::ClipboardGtk::writeRange): 121283 * platform/gtk/DataObjectGtk.cpp: 121284 (WebCore::DataObjectGtk::markup): 121285 * platform/gtk/PasteboardGtk.cpp: 121286 (WebCore::Pasteboard::writeSelection): 121287 * platform/haiku/PasteboardHaiku.cpp: 121288 (WebCore::Pasteboard::writeSelection): 121289 * platform/qt/ClipboardQt.cpp: 121290 (WebCore::ClipboardQt::writeRange): 121291 * platform/qt/PasteboardQt.cpp: 121292 (WebCore::Pasteboard::writeSelection): 121293 121294 2010-06-14 Chris Fleizach <cfleizach (a] apple.com> 121295 121296 No review. GTK build fix. 121297 121298 AX: need ListItemRole and PresentationalRole 121299 https://bugs.webkit.org/show_bug.cgi?id=40133 121300 121301 Mostly speculative fix to make GTK unit tests work. 121302 121303 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: 121304 (atkRole): 121305 (webkit_accessible_get_role): 121306 121307 2010-06-14 Eric Carlson <eric.carlson (a] apple.com> 121308 121309 Reviewed by Dan Bernstein. 121310 121311 <rdar://problem/8090895> Update http streaming MIME types 121312 121313 * platform/MIMETypeRegistry.cpp: 121314 (WebCore::TypeExtensionPair::): Add http streaming MIME synonyms. 121315 121316 2010-06-14 Eric Carlson <eric.carlson (a] apple.com> 121317 121318 Reviewed by Oliver Hunt. 121319 121320 audio/x-mp3 MIME type not recognized 121321 <rdar://problem/7875393> 121322 https://bugs.webkit.org/show_bug.cgi?id=40594 121323 121324 Allow MIMETypeRegistry to have more than one MIME type for a 121325 media file extension, and have the QTKit media engine register 121326 all MIME types it can find for each file type QTKit supports. 121327 121328 Test: media/media-can-play-mp3.html 121329 121330 * platform/MIMETypeRegistry.cpp: 121331 (WebCore::mediaMIMETypeMap): Update for new HashMap format. 121332 (WebCore::TypeExtensionPair::): Store String+Vector<String> 121333 (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): Only consult 121334 mediaMIMETypeMap(), it has the canonical answer. 121335 (WebCore::MIMETypeRegistry::getMediaMIMETypesForExtension): New, return 121336 a Vector of all MIME types for an extension. 121337 * platform/MIMETypeRegistry.h: 121338 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: 121339 (WebCore::addFileTypesToCache): Add all MIME types returned in the 121340 getMediaMIMETypesForExtension Vector. 121341 121342 2010-06-14 Mark Rowe <mrowe (a] apple.com> 121343 121344 Reviewed by Brady Eidson. 121345 121346 <rdar://problem/8071866> REGRESSION: Crash on launch on Tiger and Leopard with network home folder 121347 121348 * platform/sql/SQLiteStatement.cpp: 121349 (WebCore::SQLiteStatement::prepare): Don't assume that tail is always non-null, since that may 121350 not be the case with some versions of SQLite. Instead we must null-check before dereferencing. 121351 121352 2010-06-14 Anders Carlsson <andersca (a] apple.com> 121353 121354 Fix Tiger build. 121355 121356 * plugins/mac/PluginDataMac.mm: 121357 121358 2010-06-14 Anders Carlsson <andersca (a] apple.com> 121359 121360 Reviewed by Darin Adler. 121361 121362 Use an array for extensions in MimeClassInfo 121363 https://bugs.webkit.org/show_bug.cgi?id=40602 121364 121365 Get rid of MimeClassInfo::suffixes and replace it with an array of extensions. 121366 121367 * plugins/MimeType.cpp: 121368 (WebCore::MimeType::suffixes): 121369 Create a string of joined extensions. 121370 121371 * plugins/MimeType.h: 121372 * plugins/PluginData.h: 121373 (WebCore::operator==): 121374 * plugins/chromium/PluginDataChromium.cpp: 121375 (WebCore::getPluginMimeTypeFromExtension): 121376 * plugins/gtk/PluginDataGtk.cpp: 121377 (WebCore::PluginData::initPlugins): 121378 * plugins/mac/PluginDataMac.mm: 121379 (WebCore::PluginData::initPlugins): 121380 * plugins/qt/PluginDataQt.cpp: 121381 (WebCore::PluginData::initPlugins): 121382 * plugins/win/PluginDataWin.cpp: 121383 (WebCore::PluginData::initPlugins): 121384 * plugins/wx/PluginDataWx.cpp: 121385 (WebCore::PluginData::initPlugins): 121386 121387 2010-06-14 Adam Barth <abarth (a] webkit.org> 121388 121389 Unreviewed. 121390 121391 Add an include to try to fix Chromium build. 121392 121393 * html/HTML5DocumentParser.cpp: 121394 121395 2010-06-14 Eric Seidel <eric (a] webkit.org> 121396 121397 Reviewed by Adam Barth. 121398 121399 Safari beach-balls loading large pages with HTML5 parser 121400 https://bugs.webkit.org/show_bug.cgi?id=40596 121401 121402 Implement parser yielding, similar to how the old 121403 HTMLDocumentParser yields. 121404 121405 This implementation re-uses the tokenizerTimeDelay and 121406 tokenizerChunkSize settings even though they don't map exactly 121407 to the token loop that the HTML5 parser uses. 121408 121409 * dom/DocumentParser.h: 121410 - Add a FIXME for processingData() and clarify how the 121411 appendData flag is used by renaming it to isFromNetwork. 121412 * html/HTML5DocumentParser.cpp: 121413 (WebCore::parserTimeLimit): 121414 - Defaults accessor, probably belongs on Page. 121415 (WebCore::parserChunkSize): 121416 - Defaults accessor, probably belongs on Page. 121417 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 121418 (WebCore::HTML5DocumentParser::stopParsing): 121419 - Stop the continue-parsing timer if active. 121420 (WebCore::HTML5DocumentParser::processingData): 121421 - Implement this poorly understood accessor to match 121422 the old parser's behavior. It's unclear what this does 121423 and it does not affect any layout tests to my knowledge 121424 but likely affects the WebKit API in some way. 121425 (WebCore::HTML5DocumentParser::pumpLexerIfPossible): 121426 - Pass SynchronousMode. 121427 - Do not ever pump if we've yielded to the timer. 121428 (WebCore::HTML5DocumentParser::PumpSession::PumpSession): 121429 - A struct for storing the yield counters. 121430 (WebCore::HTML5DocumentParser::shouldContinueParsing): 121431 - Mostly matches HTMLDocumentParser::shouldContinueParsing. 121432 (WebCore::HTML5DocumentParser::pumpLexer): 121433 - Respect SynchronousMode. 121434 - ASSERT that a timer is not scheduled if we're pumping. 121435 (WebCore::isLayoutTimerActive): 121436 - This belongs on Document. 121437 (WebCore::HTML5DocumentParser::continueNextChunkTimerFired): 121438 (WebCore::HTML5DocumentParser::write): 121439 (WebCore::HTML5DocumentParser::end): 121440 - We should never end() if a timer is still outstanding. 121441 (WebCore::HTML5DocumentParser::attemptToEnd): 121442 (WebCore::HTML5DocumentParser::endIfDelayed): 121443 (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution): 121444 * html/HTML5DocumentParser.h: 121445 (WebCore::HTML5DocumentParser::): 121446 * html/HTMLDocumentParser.cpp: 121447 - Clarify the old TimeDelay and ChunkSize constants. 121448 121449 2010-06-14 Adam Barth <abarth (a] webkit.org> 121450 121451 Reviewed by Eric Seidel. 121452 121453 Add a preload scanner for the HTML5 parser 121454 https://bugs.webkit.org/show_bug.cgi?id=40557 121455 121456 This patch adds a simple preload scanner for the HTML5 parser. This 121457 preload scanner is not as awesome as the old one because it doesn't 121458 scan CSS, but it's much simpler. 121459 121460 * Android.mk: 121461 * CMakeLists.txt: 121462 * GNUmakefile.am: 121463 * WebCore.gypi: 121464 * WebCore.pro: 121465 * WebCore.vcproj/WebCore.vcproj: 121466 * WebCore.xcodeproj/project.pbxproj: 121467 - Build file torture. 121468 * html/HTML5DocumentParser.cpp: 121469 (WebCore::HTML5DocumentParser::write): 121470 - Call into the preload scanner when waiting for a script. 121471 * html/HTML5DocumentParser.h: 121472 * html/HTML5PreloadScanner.cpp: Copied from WebCore/html/PreloadScanner.cpp. 121473 (WebCore::HTML5PreloadScanner::HTML5PreloadScanner): 121474 (WebCore::HTML5PreloadScanner::scan): 121475 - A simple loop to pump the preload scanner's lexer. 121476 (WebCore::HTML5PreloadScanner::processToken): 121477 - Preload interesting resources. Stolen from the old preload 121478 scanner. 121479 (WebCore::HTML5PreloadScanner::scanningBody): 121480 * html/HTML5PreloadScanner.h: Copied from WebCore/html/PreloadScanner.h. 121481 121482 2010-06-14 Adam Barth <abarth (a] webkit.org> 121483 121484 Reviewed by Eric Seidel. 121485 121486 Constify some HTML5Token methods 121487 https://bugs.webkit.org/show_bug.cgi?id=40592 121488 121489 I keep wanting these methods to be const. Eric wanted this in a 121490 separate patch. 121491 121492 * html/HTML5Lexer.h: 121493 (WebCore::HTML5Lexer::state): 121494 * html/HTML5Token.h: 121495 (WebCore::HTML5Token::attributes): 121496 (WebCore::HTML5Token::name): 121497 (WebCore::HTML5Token::characters): 121498 (WebCore::HTML5Token::comment): 121499 (WebCore::HTML5Token::publicIdentifier): 121500 (WebCore::HTML5Token::systemIdentifier): 121501 * html/HTML5TreeBuilder.cpp: 121502 (WebCore::convertToOldStyle): 121503 (WebCore::HTML5TreeBuilder::adjustedLexerState): 121504 - Technically, this might belong in the other patch, but I think 121505 it's fine here. 121506 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 121507 * html/HTML5TreeBuilder.h: 121508 121509 2010-06-14 Dumitru Daniliuc <dumi (a] chromium.org> 121510 121511 Unreviewed, build fix. 121512 121513 * WebCore.xcodeproj/project.pbxproj: 121514 121515 2010-06-14 Dimitri Glazkov <dglazkov (a] chromium.org> 121516 121517 Unreviewed, build fix. 121518 121519 Remove accidental specifying of the class name twice. 121520 121521 * html/HTMLFormElement.cpp: 121522 (WebCore::HTMLFormElement::prepareFormData): Removed my ghastly typo. 121523 121524 2010-06-14 Dumitru Daniliuc <dumi (a] chromium.org> 121525 121526 Reviewed by Adam Barth. 121527 121528 Get DatabaseTracker ready for sync DBs. 121529 https://bugs.webkit.org/show_bug.cgi?id=39041 121530 121531 * storage/AbstractDatabase.cpp: 121532 (WebCore::AbstractDatabase::~AbstractDatabase): 121533 * storage/AbstractDatabase.h: 121534 * storage/Database.cpp: 121535 (WebCore::Database::closeImmediately): 121536 * storage/Database.h: 121537 (WebCore::Database::scriptExecutionContext): 121538 * storage/DatabaseTracker.cpp: 121539 (WebCore::DatabaseTracker::getMaxSizeForDatabase): 121540 (WebCore::DatabaseTracker::databaseChanged): 121541 (WebCore::DatabaseTracker::addOpenDatabase): 121542 (WebCore::DatabaseTracker::removeOpenDatabase): 121543 (WebCore::DatabaseTracker::getOpenDatabases): 121544 (WebCore::DatabaseTracker::deleteDatabaseFile): 121545 * storage/DatabaseTracker.h: 121546 * storage/OriginQuotaManager.cpp: 121547 (WebCore::OriginQuotaManager::markDatabase): 121548 * storage/OriginQuotaManager.h: 121549 * storage/chromium/DatabaseObserver.h: 121550 * storage/chromium/DatabaseTrackerChromium.cpp: 121551 (WebCore::DatabaseTracker::addOpenDatabase): 121552 (WebCore::TrackerRemoveOpenDatabaseTask::create): 121553 (WebCore::TrackerRemoveOpenDatabaseTask::TrackerRemoveOpenDatabaseTask): 121554 (WebCore::DatabaseTracker::removeOpenDatabase): 121555 (WebCore::DatabaseTracker::getOpenDatabases): 121556 (WebCore::DatabaseTracker::getMaxSizeForDatabase): 121557 121558 2010-06-14 Alexey Proskuryakov <ap (a] apple.com> 121559 121560 Reviewed by Darin Adler. 121561 121562 https://bugs.webkit.org/show_bug.cgi?id=40529 121563 eventSender.keyDown("delete") incorrectly sends a backspace on some platforms 121564 121565 * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): 121566 Use virtual key code to force correct character code for clarity. Also, reworded comment, 121567 since saying that "backspace needs to always be 8" misleadingly implied that it could 121568 "sometimes" be such without this code. 121569 121570 2010-06-14 Dimitri Glazkov <dglazkov (a] chromium.org> 121571 121572 Reviewed by Darin Adler. 121573 121574 Refactor form submission code in HTMLFormElement to add clarity. 121575 https://bugs.webkit.org/show_bug.cgi?id=39430 121576 121577 Covered by existing tests in fast/forms/mailto. 121578 121579 * html/HTMLFormElement.cpp: 121580 (WebCore::appendMailtoPostFormDataToURL): Renamed from transferMailtoPostFormDataToUrl, 121581 removed clearing out of the FormData and moved it to a new place (next to the call site). 121582 (WebCore::HTMLFormElement::prepareFormData): Renamed from createFormData, moved the logic of 121583 prepareing FormData here, including the use of appendMailtoPostFormDataToURL. 121584 (WebCore::HTMLFormElement::submit): Consolidated multiple invocations of submitForm(). 121585 * html/HTMLFormElement.h: Renamed createFormData to prepareFormData. 121586 121587 2010-06-14 Chris Fleizach <cfleizach (a] apple.com> 121588 121589 Reviewed by Darin Adler. 121590 121591 AX: need ListItemRole and PresentationalRole 121592 https://bugs.webkit.org/show_bug.cgi?id=40133 121593 121594 * accessibility/AccessibilityObject.cpp: 121595 (WebCore::createARIARoleMap): 121596 * accessibility/AccessibilityObject.h: 121597 (WebCore::AccessibilityObject::isListItem): 121598 * accessibility/AccessibilityRenderObject.cpp: 121599 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): 121600 (WebCore::AccessibilityRenderObject::determineAccessibilityRole): 121601 * accessibility/mac/AccessibilityObjectWrapper.mm: 121602 (-[AccessibilityObjectWrapper accessibilityAttributeNames]): 121603 121604 2010-06-14 Anders Carlsson <andersca (a] apple.com> 121605 121606 Reviewed by Sam Weinig. 121607 121608 Remove pluginIndex from MimeClassInfo 121609 https://bugs.webkit.org/show_bug.cgi?id=40588 121610 121611 * plugins/PluginData.h: 121612 * plugins/gtk/PluginDataGtk.cpp: 121613 (WebCore::PluginData::initPlugins): 121614 * plugins/mac/PluginDataMac.mm: 121615 (WebCore::PluginData::initPlugins): 121616 * plugins/qt/PluginDataQt.cpp: 121617 (WebCore::PluginData::initPlugins): 121618 * plugins/win/PluginDataWin.cpp: 121619 (WebCore::PluginData::initPlugins): 121620 * plugins/wx/PluginDataWx.cpp: 121621 (WebCore::PluginData::initPlugins): 121622 121623 2010-06-14 Kinuko Yasuda <kinuko (a] chromium.org> 121624 121625 Reviewed by Jian Li. 121626 121627 Implement BlobBuilder internal class for BlobBuilder support as defined in FileWriter 121628 https://bugs.webkit.org/show_bug.cgi?id=36903 121629 121630 No new tests; they will be added when we add jsc bindings. 121631 121632 * CMakeLists.txt: 121633 * GNUmakefile.am: 121634 * WebCore.gypi: 121635 * WebCore.pro: 121636 * WebCore.vcproj/WebCore.vcproj: 121637 * WebCore.xcodeproj/project.pbxproj: 121638 * html/BlobBuilder.cpp: Added. 121639 * html/BlobBuilder.h: Added. 121640 (WebCore::BlobBuilder::create): 121641 * platform/BlobItem.cpp: 121642 (WebCore::StringBlobItem::convertToCString): Added EndingNative support. 121643 * platform/BlobItem.h: Added EndingNative line-ending type. 121644 (WebCore::): 121645 121646 2010-06-14 Anders Carlsson <andersca (a] apple.com> 121647 121648 Reviewed by Darin Adler. 121649 121650 Stop using MimeClassInfo::pluginIndex 121651 https://bugs.webkit.org/show_bug.cgi?id=40582 121652 121653 Add a pluginIndicies vector to PluginData and use it instead of MimeClassInfo::pluginIndex. 121654 121655 * plugins/MimeType.cpp: 121656 (WebCore::MimeType::enabledPlugin): 121657 Get the plug-in index from the mimePluginIndices vector. 121658 121659 * plugins/Plugin.cpp: 121660 (WebCore::Plugin::item): 121661 Compare the mime plugin index as well. 121662 121663 * plugins/PluginData.cpp: 121664 (WebCore::PluginData::PluginData): 121665 Populate the m_mimePluginIndices vector. 121666 121667 (WebCore::PluginData::pluginNameForMimeType): 121668 Get the plug-in index from the m_mimePluginIndices vector. 121669 121670 * plugins/PluginData.h: 121671 (WebCore::operator==): 121672 Don't check for pluginIndex. 121673 121674 (WebCore::PluginData::mimePluginIndices): 121675 Add getter for m_mimePluginIndices. 121676 121677 2010-06-14 Sam Weinig <sam (a] webkit.org> 121678 121679 Better build fix. 121680 121681 * bindings/js/JSBindingsAllInOne.cpp: 121682 121683 2010-06-14 Sam Weinig <sam (a] webkit.org> 121684 121685 Another windows build fix. 121686 121687 * bindings/js/JSBindingsAllInOne.cpp: 121688 121689 2010-06-14 Sam Weinig <sam (a] webkit.org> 121690 121691 Another build fix. 121692 121693 * bindings/js/JSDOMWindowCustom.cpp: 121694 121695 2010-06-14 Sam Weinig <sam (a] webkit.org> 121696 121697 Add missing comma to fix GTK build. 121698 121699 * xml/XSLTProcessor.idl: 121700 121701 2010-06-14 Sam Weinig <sam (a] webkit.org> 121702 121703 Reviewed by Alexey Proskuryakov. 121704 121705 Fix for https://bugs.webkit.org/show_bug.cgi?id=40581 121706 Auto-generate most of the JS constructors 121707 121708 - Auto-generates all the JS constructors that don't have custom 121709 names (eg, Not Image(), Audio() or Option()) 121710 - Fixes two typos. 121711 (new XSLTConstructor()).toString() [object XSLTProcessorConsructor] -> [object XSLTProcessorConstructor]) 121712 (new EventSource()).toString() [object EventSourceContructor] -> [object EventSourceConstructor]) 121713 121714 * Android.jscbindings.mk: 121715 * CMakeLists.txt: 121716 * GNUmakefile.am: 121717 * WebCore.gypi: 121718 * WebCore.pro: 121719 * WebCore.vcproj/WebCore.vcproj: 121720 * WebCore.xcodeproj/project.pbxproj: 121721 * bindings/js/JSArrayBufferConstructor.cpp: Removed. 121722 * bindings/js/JSArrayBufferConstructor.h: Removed. 121723 * bindings/js/JSArrayBufferCustom.cpp: Copied from WebCore/bindings/js/JSArrayBufferConstructor.cpp. 121724 (WebCore::JSArrayBufferConstructor::constructJSArrayBuffer): 121725 * bindings/js/JSArrayBufferViewHelper.h: 121726 (WebCore::constructArrayBufferView): 121727 * bindings/js/JSBindingsAllInOne.cpp: 121728 * bindings/js/JSDOMWindowCustom.cpp: 121729 * bindings/js/JSEventSourceConstructor.cpp: Removed. 121730 * bindings/js/JSEventSourceConstructor.h: Removed. 121731 * bindings/js/JSEventSourceCustom.cpp: Copied from WebCore/bindings/js/JSEventSourceConstructor.cpp. 121732 (WebCore::JSEventSourceConstructor::constructJSEventSource): 121733 * bindings/js/JSFloat32ArrayConstructor.cpp: Removed. 121734 * bindings/js/JSFloat32ArrayConstructor.h: Removed. 121735 * bindings/js/JSFloat32ArrayCustom.cpp: 121736 (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array): 121737 * bindings/js/JSInt16ArrayConstructor.cpp: Removed. 121738 * bindings/js/JSInt16ArrayConstructor.h: Removed. 121739 * bindings/js/JSInt16ArrayCustom.cpp: 121740 (WebCore::JSInt16ArrayConstructor::constructJSInt16Array): 121741 * bindings/js/JSInt32ArrayConstructor.cpp: Removed. 121742 * bindings/js/JSInt32ArrayConstructor.h: Removed. 121743 * bindings/js/JSInt32ArrayCustom.cpp: 121744 (WebCore::JSInt32ArrayConstructor::constructJSInt32Array): 121745 * bindings/js/JSInt8ArrayConstructor.cpp: Removed. 121746 * bindings/js/JSInt8ArrayConstructor.h: Removed. 121747 * bindings/js/JSInt8ArrayCustom.cpp: 121748 (WebCore::JSInt8ArrayConstructor::constructJSInt8Array): 121749 * bindings/js/JSMessageChannelConstructor.cpp: Removed. 121750 * bindings/js/JSMessageChannelConstructor.h: Removed. 121751 * bindings/js/JSMessageChannelCustom.cpp: 121752 (WebCore::JSMessageChannelConstructor::constructJSMessageChannel): 121753 * bindings/js/JSSharedWorkerConstructor.cpp: Removed. 121754 * bindings/js/JSSharedWorkerConstructor.h: Removed. 121755 * bindings/js/JSSharedWorkerCustom.cpp: 121756 (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): 121757 * bindings/js/JSUint16ArrayConstructor.cpp: Removed. 121758 * bindings/js/JSUint16ArrayConstructor.h: Removed. 121759 * bindings/js/JSUint16ArrayCustom.cpp: 121760 (WebCore::JSUint16ArrayConstructor::constructJSUint16Array): 121761 * bindings/js/JSUint32ArrayConstructor.cpp: Removed. 121762 * bindings/js/JSUint32ArrayConstructor.h: Removed. 121763 * bindings/js/JSUint32ArrayCustom.cpp: 121764 (WebCore::JSUint32ArrayConstructor::constructJSUint32Array): 121765 * bindings/js/JSUint8ArrayConstructor.cpp: Removed. 121766 * bindings/js/JSUint8ArrayConstructor.h: Removed. 121767 * bindings/js/JSUint8ArrayCustom.cpp: 121768 (WebCore::JSUint8ArrayConstructor::constructJSUint8Array): 121769 * bindings/js/JSWebKitCSSMatrixConstructor.cpp: Removed. 121770 * bindings/js/JSWebKitCSSMatrixConstructor.h: Removed. 121771 * bindings/js/JSWebKitCSSMatrixCustom.cpp: Copied from WebCore/bindings/js/JSWebKitCSSMatrixConstructor.cpp. 121772 (WebCore::JSWebKitCSSMatrixConstructor::constructJSWebKitCSSMatrix): 121773 * bindings/js/JSWebKitPointConstructor.cpp: Removed. 121774 * bindings/js/JSWebKitPointConstructor.h: Removed. 121775 * bindings/js/JSWebKitPointCustom.cpp: Copied from WebCore/bindings/js/JSWebKitPointConstructor.cpp. 121776 (WebCore::JSWebKitPointConstructor::constructJSWebKitPoint): 121777 * bindings/js/JSWebSocketConstructor.cpp: Removed. 121778 * bindings/js/JSWebSocketConstructor.h: Removed. 121779 * bindings/js/JSWebSocketCustom.cpp: 121780 (WebCore::JSWebSocketConstructor::constructJSWebSocket): 121781 * bindings/js/JSWorkerConstructor.cpp: Removed. 121782 * bindings/js/JSWorkerConstructor.h: Removed. 121783 * bindings/js/JSWorkerContextCustom.cpp: 121784 * bindings/js/JSWorkerCustom.cpp: 121785 (WebCore::JSWorkerConstructor::constructJSWorker): 121786 * bindings/js/JSXSLTProcessorConstructor.cpp: Removed. 121787 * bindings/js/JSXSLTProcessorConstructor.h: Removed. 121788 * bindings/js/JSXSLTProcessorCustom.cpp: 121789 (WebCore::JSXSLTProcessorConstructor::constructJSXSLTProcessor): 121790 * bindings/scripts/CodeGeneratorJS.pm: 121791 * css/WebKitCSSMatrix.idl: 121792 * dom/MessageChannel.idl: 121793 * html/canvas/ArrayBuffer.idl: 121794 * html/canvas/Float32Array.idl: 121795 * html/canvas/Int16Array.idl: 121796 * html/canvas/Int32Array.idl: 121797 * html/canvas/Int8Array.idl: 121798 * html/canvas/Uint16Array.idl: 121799 * html/canvas/Uint32Array.idl: 121800 * html/canvas/Uint8Array.idl: 121801 * page/EventSource.idl: 121802 * page/WebKitPoint.idl: 121803 * websockets/WebSocket.idl: 121804 * workers/SharedWorker.idl: 121805 * workers/Worker.idl: 121806 * xml/XSLTProcessor.idl: 121807 121808 2010-05-16 Antonio Gomes <tonikitoo (a] webkit.org> 121809 121810 Unreviewed naming fixes of local variables used in Spatial Navigation methods. 121811 121812 Summary: 121813 * "candidate" renamed to "node"; 121814 * "currentFocusCandidate" renamed to "candidate" 121815 * "closestFocusCandidate" renamed to "closest" 121816 121817 That way naming is more consistent in the various Spatial Navigation methods. 121818 121819 * page/FocusController.cpp: 121820 (WebCore::FocusController::findFocusableNodeInDirection): 121821 (WebCore::FocusController::deepFindFocusableNodeInDirection): 121822 121823 2010-06-14 Antonio Gomes <tonikitoo (a] webkit.org> 121824 121825 Reviewed by Simon Fraser and Kenneth Christiansen. 121826 121827 Spatial Navigation: make it work with focusable elements in overflow content 121828 https://bugs.webkit.org/show_bug.cgi?id=36463 121829 121830 This patch addresses the problem with Spatial Navigation. It currently does not 121831 properly traverse scrollable contents, including scrollable div's. For this to work, 121832 a new class member called scrollableEnclosingBox was introduced to FocusCandidate class which 121833 keeps track of the current scrollable box Node wrapping a FocusCandidate. 121834 121835 To make use of enclosingScrollableBox of FocusCandidate, the DOM traversal routine 121836 (FocusController::findNextFocusableInDirection) was changed as follows: when it 121837 encounters a scrollable Node, each focusable node which is 'inner' keeps track of 121838 the container reference. By the time a sibling of the scrollable Node is encountered, 121839 there is no need to track this reference any more and the traversal algorithm continues 121840 normally. 121841 121842 The common case is obviously that there is no scrollable container wrapping it. 121843 121844 updateFocusCandiditeIfCloser logic was also adapted to fit the need of the 121845 newly introduced enclosingScrollableBox class member, getting simpler and more 121846 easily maintainable. 121847 121848 Tests: fast/events/spatial-navigation/snav-div-scrollable-but-without-focusable-content.html 121849 fast/events/spatial-navigation/snav-clipped-overflow-content.html 121850 121851 * page/FocusController.cpp: 121852 (WebCore::updateFocusCandidateInSameContainer): 121853 (WebCore::updateFocusCandidateIfCloser): 121854 (WebCore::FocusController::findFocusableNodeInDirection): 121855 (WebCore::FocusController::deepFindFocusableNodeInDirection): 121856 * page/SpatialNavigation.cpp: 121857 (WebCore::isScrollableContainerNode): 121858 * page/SpatialNavigation.h: 121859 (WebCore::FocusCandidate::FocusCandidate): 121860 (WebCore::FocusCandidate::isInScrollableContainer): 121861 121862 2010-06-14 Jian Li <jianli (a] chromium.org> 121863 121864 Unreviewed. Fix build break in GTK. 121865 121866 * bindings/scripts/CodeGeneratorGObject.pm: 121867 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: 121868 * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h: 121869 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h: 121870 * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h: 121871 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 121872 121873 2010-06-14 Chris Fleizach <cfleizach (a] apple.com> 121874 121875 Reviewed by Beth Dakin. 121876 121877 AX: AXUnknown objects are being returned 121878 https://bugs.webkit.org/show_bug.cgi?id=40574 121879 121880 Test: platform/mac/accessibility/no-unknown-objects-when-title-attribute-present.html 121881 121882 * accessibility/mac/AccessibilityObjectMac.mm: 121883 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): 121884 121885 2010-06-14 Jian Li <jianli (a] chromium.org> 121886 121887 Reviewed by Darin Adler. 121888 121889 Fix code generators to better support Conditional attribute and add test 121890 coverage for it. 121891 https://bugs.webkit.org/show_bug.cgi?id=39512 121892 121893 * bindings/scripts/CodeGeneratorGObject.pm: 121894 * bindings/scripts/CodeGeneratorObjC.pm: 121895 * bindings/scripts/CodeGeneratorV8.pm: 121896 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 121897 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: 121898 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 121899 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h: 121900 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 121901 (webkit_dom_test_obj_get_conditional_attr1): 121902 (webkit_dom_test_obj_set_conditional_attr1): 121903 (webkit_dom_test_obj_get_conditional_attr2): 121904 (webkit_dom_test_obj_set_conditional_attr2): 121905 (webkit_dom_test_obj_get_conditional_attr3): 121906 (webkit_dom_test_obj_set_conditional_attr3): 121907 (webkit_dom_test_obj_set_property): 121908 (webkit_dom_test_obj_get_property): 121909 (webkit_dom_test_obj_class_init): 121910 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 121911 * bindings/scripts/test/JS/JSTestInterface.cpp: 121912 * bindings/scripts/test/JS/JSTestInterface.h: 121913 * bindings/scripts/test/JS/JSTestObj.cpp: 121914 (WebCore::): 121915 (WebCore::jsTestObjConditionalAttr1): 121916 (WebCore::jsTestObjConditionalAttr2): 121917 (WebCore::jsTestObjConditionalAttr3): 121918 (WebCore::setJSTestObjConditionalAttr1): 121919 (WebCore::setJSTestObjConditionalAttr2): 121920 (WebCore::setJSTestObjConditionalAttr3): 121921 * bindings/scripts/test/JS/JSTestObj.h: 121922 * bindings/scripts/test/ObjC/DOMTestInterface.mm: 121923 * bindings/scripts/test/ObjC/DOMTestObj.h: 121924 * bindings/scripts/test/ObjC/DOMTestObj.mm: 121925 (-[DOMTestObj conditionalAttr1]): 121926 (-[DOMTestObj setConditionalAttr1:]): 121927 (-[DOMTestObj conditionalAttr2]): 121928 (-[DOMTestObj setConditionalAttr2:]): 121929 (-[DOMTestObj conditionalAttr3]): 121930 (-[DOMTestObj setConditionalAttr3:]): 121931 * bindings/scripts/test/TestInterface.idl: 121932 * bindings/scripts/test/TestObj.idl: 121933 * bindings/scripts/test/V8/V8TestInterface.cpp: 121934 * bindings/scripts/test/V8/V8TestInterface.h: 121935 * bindings/scripts/test/V8/V8TestObj.cpp: 121936 (WebCore::TestObjInternal::conditionalAttr1AttrGetter): 121937 (WebCore::TestObjInternal::conditionalAttr1AttrSetter): 121938 (WebCore::TestObjInternal::conditionalAttr2AttrGetter): 121939 (WebCore::TestObjInternal::conditionalAttr2AttrSetter): 121940 (WebCore::TestObjInternal::conditionalAttr3AttrGetter): 121941 (WebCore::TestObjInternal::conditionalAttr3AttrSetter): 121942 (WebCore::): 121943 121944 2010-06-14 Chang Shu <chang.shu (a] nokia.com> 121945 121946 Reviewed by Kenneth Rohde Christiansen. 121947 121948 Change the type of ShadowSize from IntSize to FloatSize in GraphicsContext. 121949 Using IntSize loses precision and fails the test. 121950 Note: This code change fixes Qt port but Mac is still failing due to 121951 platform issue. 121952 121953 https://bugs.webkit.org/show_bug.cgi?id=40434 121954 121955 * html/canvas/CanvasRenderingContext2D.cpp: 121956 (WebCore::CanvasRenderingContext2D::applyShadow): 121957 * platform/graphics/GraphicsContext.cpp: 121958 (WebCore::GraphicsContext::setShadow): 121959 (WebCore::GraphicsContext::getShadow): 121960 * platform/graphics/GraphicsContext.h: 121961 * platform/graphics/GraphicsContextPrivate.h: 121962 * platform/graphics/cairo/FontCairo.cpp: 121963 (WebCore::Font::drawGlyphs): 121964 * platform/graphics/cairo/GraphicsContextCairo.cpp: 121965 (WebCore::GraphicsContext::calculateShadowBufferDimensions): 121966 (WebCore::drawPathShadow): 121967 (WebCore::drawBorderlessRectShadow): 121968 (WebCore::GraphicsContext::setPlatformShadow): 121969 * platform/graphics/cairo/ImageCairo.cpp: 121970 (WebCore::BitmapImage::draw): 121971 * platform/graphics/cg/GraphicsContextCG.cpp: 121972 (WebCore::GraphicsContext::setPlatformShadow): 121973 * platform/graphics/chromium/FontChromiumWin.cpp: 121974 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs): 121975 (WebCore::Font::drawComplexText): 121976 * platform/graphics/gtk/FontGtk.cpp: 121977 (WebCore::Font::drawComplexText): 121978 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 121979 (WebCore::GraphicsContext::setPlatformShadow): 121980 * platform/graphics/mac/FontMac.mm: 121981 (WebCore::Font::drawGlyphs): 121982 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 121983 (WebCore::GraphicsContext::setPlatformShadow): 121984 * platform/graphics/qt/FontQt.cpp: 121985 (WebCore::drawTextCommon): 121986 * platform/graphics/qt/GraphicsContextQt.cpp: 121987 (WebCore::GraphicsContext::drawRect): 121988 (WebCore::GraphicsContext::drawLine): 121989 (WebCore::GraphicsContext::strokeArc): 121990 (WebCore::GraphicsContext::drawConvexPolygon): 121991 (WebCore::drawFilledShadowPath): 121992 (WebCore::GraphicsContext::strokePath): 121993 (WebCore::drawBorderlessRectShadow): 121994 (WebCore::GraphicsContext::setPlatformShadow): 121995 * platform/graphics/qt/ImageQt.cpp: 121996 (WebCore::BitmapImage::draw): 121997 * platform/graphics/skia/GraphicsContextSkia.cpp: 121998 (WebCore::GraphicsContext::setPlatformShadow): 121999 * platform/graphics/skia/SkiaFontWin.cpp: 122000 (WebCore::windowsCanHandleDrawTextShadow): 122001 * platform/graphics/win/FontCGWin.cpp: 122002 (WebCore::drawGDIGlyphs): 122003 (WebCore::Font::drawGlyphs): 122004 * platform/graphics/wince/GraphicsContextWince.cpp: 122005 (WebCore::GraphicsContext::fillRoundedRect): 122006 (WebCore::GraphicsContext::setPlatformShadow): 122007 (WebCore::GraphicsContext::drawText): 122008 * platform/graphics/wx/GraphicsContextWx.cpp: 122009 (WebCore::GraphicsContext::setPlatformShadow): 122010 122011 2010-06-14 Dan Bernstein <mitz (a] apple.com> 122012 122013 Reviewed by Simon Fraser. 122014 122015 <rdar://problem/7752961> Unevenly distributed space in justified text 122016 https://bugs.webkit.org/show_bug.cgi?id=36105 122017 122018 Test: fast/text/justify-padding-distribution.html 122019 122020 * platform/graphics/WidthIterator.cpp: 122021 (WebCore::WidthIterator::WidthIterator): Initialize m_padPerSpace to the quotient of the total 122022 padding and the number of spaces rather than truncating it. 122023 (WebCore::WidthIterator::advance): Subtract m_padPerSpace from m_padding and add the difference 122024 between its old and new values, when rounded, to the advance. 122025 * platform/graphics/mac/ComplexTextController.cpp: 122026 (WebCore::ComplexTextController::ComplexTextController): 122027 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): 122028 * platform/graphics/win/UniscribeController.cpp: 122029 (WebCore::UniscribeController::UniscribeController): 122030 (WebCore::UniscribeController::shapeAndPlaceItem): 122031 * platform/graphics/win/UniscribeController.h: 122032 122033 2010-06-14 Andreas Kling <andreas.kling (a] nokia.com> 122034 122035 Reviewed by Tor Arne Vestb. 122036 122037 [Qt] Stack overflow when converting navigator object to QVariant 122038 https://bugs.webkit.org/show_bug.cgi?id=40572 122039 122040 Protect against infinite recursion in JSValue->QVariant conversion. 122041 This fixes a crash when trying to convert MimeType objects (they 122042 recurse infinitely and on-the-fly via the enabledPlugin property.) 122043 122044 * bridge/qt/qt_runtime.cpp: 122045 (JSC::Bindings::convertValueToQVariant): 122046 122047 2010-06-14 Yong Li <yoli (a] rim.com> 122048 122049 Test cases created by: Robin Cao <robin.cao (a] torchmobile.com.cn> 122050 122051 Reviewed by Darin Adler. 122052 122053 https://bugs.webkit.org/show_bug.cgi?id=38910 122054 122055 Suspend Document::m_executeScriptSoonTimer objects when the page is deferred. 122056 There's no reason why we suspend all active DOM timers on the page but not suspend 122057 this one. Document::m_executeScriptSoonTimer can run JS and schedule more DOM Timers. 122058 122059 It can only be tested manually. 122060 * manual-tests/load-deferrer-script-element.html: Added. 122061 * manual-tests/resources/load-deferrer-script-element.js: Added. 122062 122063 * dom/Document.cpp: 122064 (WebCore::Document::executeScriptSoon): 122065 (WebCore::Document::suspendExecuteScriptSoonTimer): Added. 122066 (WebCore::Document::resumeExecuteScriptSoonTimer): Added. 122067 * dom/Document.h: 122068 * page/PageGroupLoadDeferrer.cpp: 122069 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): 122070 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer): 122071 122072 2010-06-13 Yael Aharon <yael.aharon (a] nokia.com> 122073 122074 Reviewed by Kenneth Rohde Christiansen. 122075 122076 [Qt] Platform plugin support for Notifications UI 122077 https://bugs.webkit.org/show_bug.cgi?id=40005 122078 122079 To avoid race condition when GC is run during shutdown, 122080 disconnect the Notification from the NotificationPresenter 122081 when the presenter deletes itself. 122082 This cannot be tested by a layout test, the race condition happens only 122083 when GC is run during shutdown. It can be tested manually by loading 122084 manually any notification test and closing the browser. 122085 122086 * notifications/Notification.cpp: 122087 (WebCore::Notification::~Notification): 122088 * notifications/Notification.h: 122089 (WebCore::Notification::detachPresenter): 122090 122091 2010-06-08 Marcus Bulach <bulach (a] chromium.org> 122092 122093 Reviewed by Jeremy Orlow. 122094 122095 Adds IndexedDB's KeyRange. 122096 https://bugs.webkit.org/show_bug.cgi?id=40250 122097 122098 Test: storage/indexeddb/idb-keyrange.html 122099 122100 * Android.derived.jscbindings.mk: 122101 * Android.derived.v8bindings.mk: 122102 * Android.mk: 122103 * CMakeLists.txt: 122104 * DerivedSources.cpp: 122105 * DerivedSources.make: 122106 * GNUmakefile.am: 122107 * WebCore.gypi: 122108 * WebCore.pri: 122109 * WebCore.pro: 122110 * WebCore.vcproj/WebCore.vcproj: 122111 * WebCore.xcodeproj/project.pbxproj: 122112 * storage/IDBKeyRange.cpp: Added. 122113 (WebCore::IDBKeyRange::IDBKeyRange): 122114 * storage/IDBKeyRange.h: Added. 122115 (WebCore::IDBKeyRange::): 122116 (WebCore::IDBKeyRange::create): 122117 (WebCore::IDBKeyRange::~IDBKeyRange): 122118 (WebCore::IDBKeyRange::left): 122119 (WebCore::IDBKeyRange::right): 122120 (WebCore::IDBKeyRange::flags): 122121 * storage/IDBKeyRange.idl: Added. 122122 * storage/IndexedDatabaseRequest.cpp: 122123 (WebCore::IndexedDatabaseRequest::makeSingleKeyRange): 122124 (WebCore::IndexedDatabaseRequest::makeLeftBoundKeyRange): 122125 (WebCore::IndexedDatabaseRequest::makeRightBoundKeyRange): 122126 (WebCore::IndexedDatabaseRequest::makeBoundKeyRange): 122127 * storage/IndexedDatabaseRequest.h: 122128 * storage/IndexedDatabaseRequest.idl: 122129 122130 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122131 122132 And another. 122133 122134 * storage/IndexedDatabaseRequest.h: 122135 122136 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122137 122138 More build fixes. 122139 122140 * storage/IndexedDatabaseRequest.h: 122141 122142 2010-06-14 Mahesh Kulkarni <mahesh.kulkarni (a] nokia.com> 122143 122144 Reviewed by Laszlo Gombos. 122145 122146 [Qt] navigator.geolocation support for Qt port 122147 https://bugs.webkit.org/show_bug.cgi?id=39724 122148 122149 Implemetion for Qt port of navigator.gelocation. Using qtmobility location service. 122150 122151 * WebCore.pri: 122152 * WebCore.pro: 122153 * platform/qt/GeolocationServiceQt.cpp: Added. 122154 (WebCore::GeolocationServiceQt::create): 122155 (WebCore::GeolocationServiceQt::GeolocationServiceQt): 122156 (WebCore::GeolocationServiceQt::~GeolocationServiceQt): 122157 (WebCore::GeolocationServiceQt::positionUpdated): 122158 (WebCore::GeolocationServiceQt::startUpdating): 122159 (WebCore::GeolocationServiceQt::stopUpdating): 122160 * platform/qt/GeolocationServiceQt.h: Added. 122161 (WebCore::GeolocationServiceQt::lastPosition): 122162 (WebCore::GeolocationServiceQt::lastError): 122163 122164 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122165 122166 2 more build fixes. 122167 122168 * storage/IDBDatabaseImpl.h: 122169 * storage/IndexedDatabaseRequest.h: 122170 122171 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122172 122173 Unreviewed build fix for my last. 122174 122175 * workers/WorkerScriptLoaderClient.h: 122176 122177 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122178 122179 Reviewed by Darin Fisher. 122180 122181 [V8] Clean up SerializedScriptValue 122182 https://bugs.webkit.org/show_bug.cgi?id=40482 122183 122184 SerializedScriptValue doesn't follow WebKit's style guidelines very well 122185 and needlessly inlines quite a bit within the .h file. This change cleans 122186 things up. No funcitonal changes. 122187 122188 No change in behavior. 122189 122190 * bindings/v8/SerializedScriptValue.cpp: 122191 (WebCore::SerializedScriptValue::deserializeAndSetProperty): 122192 (WebCore::SerializedScriptValue::create): 122193 (WebCore::SerializedScriptValue::createFromWire): 122194 (WebCore::SerializedScriptValue::release): 122195 (WebCore::SerializedScriptValue::SerializedScriptValue): 122196 * bindings/v8/SerializedScriptValue.h: 122197 122198 2010-06-14 Ilya Tikhonovsky <loislo (a] chromium.org> 122199 122200 Reviewed by Pavel Feldman. 122201 122202 WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc 122203 data from inspected page to WebInspector as JSON string via http. The native 122204 serialization to JSON string is supported by InspectorValue's classes. This patch 122205 has the implementation of sendMessageToFrontend function. WebKit version of it still 122206 uses ScriptFunctionCall and will be switched to another transport a little bit later. 122207 https://bugs.webkit.org/show_bug.cgi?id=40134 122208 122209 * inspector/InspectorClient.h: 122210 * inspector/InspectorController.cpp: 122211 (WebCore::InspectorController::connectFrontend): 122212 (WebCore::InspectorController::disconnectFrontend): 122213 * inspector/InspectorController.h: 122214 * inspector/InspectorFrontend.cpp: 122215 (WebCore::InspectorFrontend::InspectorFrontend): 122216 * inspector/InspectorFrontend.h: 122217 * inspector/InspectorFrontendClientLocal.cpp: 122218 (WebCore::InspectorFrontendClientLocal::frontendLoaded): 122219 * inspector/InspectorValues.cpp: 122220 (WebCore::InspectorObject::writeJSON): 122221 * inspector/front-end/inspector.js: 122222 (WebInspector.dispatchMessageToFrontend): 122223 * loader/EmptyClients.h: 122224 (WebCore::EmptyInspectorClient::sendMessageToFrontend): 122225 122226 2010-06-14 Jeremy Orlow <jorlow (a] chromium.org> 122227 122228 Reviewed by Darin Adler. 122229 122230 Reenable IDBDatabaseRequest's description attribute 122231 https://bugs.webkit.org/show_bug.cgi?id=39826 122232 122233 On the 26th, Beth commented out the description attribute in 122234 IDBDatabaseRequest because it was causing problems with the 122235 objective c bindings. Turns out that this is the same bug as 122236 in http://trac.webkit.org/changeset/19486. (Thanks for the 122237 pointer, Mark!) 122238 122239 The solution is to change the objective C bindings generator 122240 to change the name in the generated code. id and hash both 122241 just appended "Name" to them in the past. I couldn't think 122242 of anything else particularly better to append, so I just 122243 went with name as well. 122244 122245 Test: building the world works on the first try. Layout 122246 test verifies description works again. 122247 122248 * bindings/scripts/CodeGeneratorObjC.pm: 122249 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 122250 (webkit_dom_test_obj_get_description): 122251 (webkit_dom_test_obj_get_id): 122252 (webkit_dom_test_obj_set_id): 122253 (webkit_dom_test_obj_get_hash): 122254 (webkit_dom_test_obj_set_property): 122255 (webkit_dom_test_obj_get_property): 122256 (webkit_dom_test_obj_class_init): 122257 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 122258 * bindings/scripts/test/JS/JSTestObj.cpp: 122259 (WebCore::): 122260 (WebCore::jsTestObjDescription): 122261 (WebCore::jsTestObjId): 122262 (WebCore::jsTestObjHash): 122263 (WebCore::setJSTestObjId): 122264 * bindings/scripts/test/JS/JSTestObj.h: 122265 * bindings/scripts/test/ObjC/DOMTestObj.h: 122266 * bindings/scripts/test/ObjC/DOMTestObj.mm: 122267 (-[DOMTestObj descriptionName]): 122268 (-[DOMTestObj idName]): 122269 (-[DOMTestObj setIdName:]): 122270 (-[DOMTestObj hashName]): 122271 * bindings/scripts/test/TestObj.idl: 122272 * bindings/scripts/test/V8/V8TestObj.cpp: 122273 (WebCore::TestObjInternal::descriptionAttrGetter): 122274 (WebCore::TestObjInternal::idAttrGetter): 122275 (WebCore::TestObjInternal::idAttrSetter): 122276 (WebCore::TestObjInternal::hashAttrGetter): 122277 (WebCore::): 122278 * storage/IDBDatabaseRequest.idl: 122279 122280 2010-06-13 Anders Bakken <agbakken (a] gmail.com> 122281 122282 Reviewed by Eric Seidel. 122283 122284 [Qt] ScreenQt.cpp has coding-style errors 122285 https://bugs.webkit.org/show_bug.cgi?id=39766 122286 122287 * platform/qt/ScreenQt.cpp: 122288 122289 2010-06-13 Eric Seidel <eric (a] webkit.org> 122290 122291 Reviewed by Adam Barth. 122292 122293 Rename HTMLParser to LegacyHTMLTreeConstructor 122294 https://bugs.webkit.org/show_bug.cgi?id=40554 122295 122296 This makes our old HTML parsing system closer match the 122297 HTML5 spec, and thus easier to compare to the new HTML5 122298 parsing system. 122299 122300 This rename was entirely automatic. Done by do-webcore-rename. 122301 122302 * Android.mk: 122303 * CMakeLists.txt: 122304 * GNUmakefile.am: 122305 * WebCore.gypi: 122306 * WebCore.pro: 122307 * WebCore.vcproj/WebCore.vcproj: 122308 * WebCore.xcodeproj/project.pbxproj: 122309 * dom/Document.cpp: 122310 * dom/DocumentParser.h: 122311 (WebCore::DocumentParser::htmlTreeConstructor): 122312 * html/HTML5DocumentParser.cpp: 122313 (WebCore::HTML5DocumentParser::htmlTreeConstructor): 122314 * html/HTML5DocumentParser.h: 122315 * html/HTML5TreeBuilder.cpp: 122316 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 122317 * html/HTML5TreeBuilder.h: 122318 (WebCore::HTML5TreeBuilder::legacyTreeConstructor): 122319 * html/HTMLDocumentParser.cpp: 122320 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 122321 * html/HTMLDocumentParser.h: 122322 (WebCore::HTMLDocumentParser::htmlTreeConstructor): 122323 * html/HTMLFormControlElement.cpp: 122324 (WebCore::HTMLFormControlElement::removedFromTree): 122325 * html/HTMLInputElement.cpp: 122326 * html/HTMLMeterElement.cpp: 122327 * html/HTMLProgressElement.cpp: 122328 * html/LegacyHTMLTreeConstructor.cpp: Renamed from WebCore/html/HTMLParser.cpp. 122329 (WebCore::addTags): 122330 (WebCore::HTMLStackElem::HTMLStackElem): 122331 (WebCore::HTMLStackElem::derefNode): 122332 (WebCore::LegacyHTMLTreeConstructor::LegacyHTMLTreeConstructor): 122333 (WebCore::LegacyHTMLTreeConstructor::~LegacyHTMLTreeConstructor): 122334 (WebCore::LegacyHTMLTreeConstructor::reset): 122335 (WebCore::LegacyHTMLTreeConstructor::setCurrent): 122336 (WebCore::tagPriorityOfNode): 122337 (WebCore::LegacyHTMLTreeConstructor::limitDepth): 122338 (WebCore::LegacyHTMLTreeConstructor::insertNodeAfterLimitDepth): 122339 (WebCore::LegacyHTMLTreeConstructor::parseToken): 122340 (WebCore::LegacyHTMLTreeConstructor::parseDoctypeToken): 122341 (WebCore::isTableSection): 122342 (WebCore::isTablePart): 122343 (WebCore::isTableRelated): 122344 (WebCore::isScopingTag): 122345 (WebCore::LegacyHTMLTreeConstructor::insertNode): 122346 (WebCore::LegacyHTMLTreeConstructor::handleError): 122347 (WebCore::LegacyHTMLTreeConstructor::textCreateErrorCheck): 122348 (WebCore::LegacyHTMLTreeConstructor::commentCreateErrorCheck): 122349 (WebCore::LegacyHTMLTreeConstructor::headCreateErrorCheck): 122350 (WebCore::LegacyHTMLTreeConstructor::bodyCreateErrorCheck): 122351 (WebCore::LegacyHTMLTreeConstructor::framesetCreateErrorCheck): 122352 (WebCore::LegacyHTMLTreeConstructor::formCreateErrorCheck): 122353 (WebCore::LegacyHTMLTreeConstructor::isindexCreateErrorCheck): 122354 (WebCore::LegacyHTMLTreeConstructor::selectCreateErrorCheck): 122355 (WebCore::LegacyHTMLTreeConstructor::ddCreateErrorCheck): 122356 (WebCore::LegacyHTMLTreeConstructor::dtCreateErrorCheck): 122357 (WebCore::LegacyHTMLTreeConstructor::rpCreateErrorCheck): 122358 (WebCore::LegacyHTMLTreeConstructor::rtCreateErrorCheck): 122359 (WebCore::LegacyHTMLTreeConstructor::nestedCreateErrorCheck): 122360 (WebCore::LegacyHTMLTreeConstructor::nestedPCloserCreateErrorCheck): 122361 (WebCore::LegacyHTMLTreeConstructor::nestedStyleCreateErrorCheck): 122362 (WebCore::LegacyHTMLTreeConstructor::tableCellCreateErrorCheck): 122363 (WebCore::LegacyHTMLTreeConstructor::tableSectionCreateErrorCheck): 122364 (WebCore::LegacyHTMLTreeConstructor::noembedCreateErrorCheck): 122365 (WebCore::LegacyHTMLTreeConstructor::noframesCreateErrorCheck): 122366 (WebCore::LegacyHTMLTreeConstructor::noscriptCreateErrorCheck): 122367 (WebCore::LegacyHTMLTreeConstructor::pCloserCreateErrorCheck): 122368 (WebCore::LegacyHTMLTreeConstructor::pCloserStrictCreateErrorCheck): 122369 (WebCore::LegacyHTMLTreeConstructor::mapCreateErrorCheck): 122370 (WebCore::mapTagToFunc): 122371 (WebCore::mapTagsToFunc): 122372 (WebCore::LegacyHTMLTreeConstructor::getNode): 122373 (WebCore::LegacyHTMLTreeConstructor::allowNestedRedundantTag): 122374 (WebCore::LegacyHTMLTreeConstructor::processCloseTag): 122375 (WebCore::LegacyHTMLTreeConstructor::isHeadingTag): 122376 (WebCore::LegacyHTMLTreeConstructor::isInline): 122377 (WebCore::LegacyHTMLTreeConstructor::isResidualStyleTag): 122378 (WebCore::LegacyHTMLTreeConstructor::isAffectedByResidualStyle): 122379 (WebCore::LegacyHTMLTreeConstructor::handleResidualStyleCloseTagAcrossBlocks): 122380 (WebCore::LegacyHTMLTreeConstructor::reopenResidualStyleTags): 122381 (WebCore::LegacyHTMLTreeConstructor::pushBlock): 122382 (WebCore::LegacyHTMLTreeConstructor::popBlock): 122383 (WebCore::LegacyHTMLTreeConstructor::popOneBlockCommon): 122384 (WebCore::LegacyHTMLTreeConstructor::popOneBlock): 122385 (WebCore::LegacyHTMLTreeConstructor::moveOneBlockToStack): 122386 (WebCore::LegacyHTMLTreeConstructor::checkIfHasPElementInScope): 122387 (WebCore::LegacyHTMLTreeConstructor::popInlineBlocks): 122388 (WebCore::LegacyHTMLTreeConstructor::freeBlock): 122389 (WebCore::LegacyHTMLTreeConstructor::createHead): 122390 (WebCore::LegacyHTMLTreeConstructor::handleIsindex): 122391 (WebCore::LegacyHTMLTreeConstructor::startBody): 122392 (WebCore::LegacyHTMLTreeConstructor::finished): 122393 (WebCore::LegacyHTMLTreeConstructor::reportErrorToConsole): 122394 (WebCore::shouldCreateImplicitHead): 122395 (WebCore::serializeForNumberType): 122396 (WebCore::parseToDoubleForNumberType): 122397 * html/LegacyHTMLTreeConstructor.h: Renamed from WebCore/html/HTMLParser.h. 122398 (WebCore::LegacyHTMLTreeConstructor::skipMode): 122399 (WebCore::LegacyHTMLTreeConstructor::isHandlingResidualStyleAcrossBlocks): 122400 (WebCore::LegacyHTMLTreeConstructor::setSkipMode): 122401 (WebCore::LegacyHTMLTreeConstructor::popBlock): 122402 (WebCore::LegacyHTMLTreeConstructor::hasPElementInScope): 122403 (WebCore::LegacyHTMLTreeConstructor::reportError): 122404 (WebCore::LegacyHTMLTreeConstructor::): 122405 (WebCore::shouldCreateImplicitHead): 122406 * html/StepRange.cpp: 122407 * html/ValidityState.cpp: 122408 * rendering/RenderSlider.cpp: 122409 122410 2010-06-13 Eric Seidel <eric (a] webkit.org> 122411 122412 Reviewed by Darin Adler. 122413 122414 Rename m_parser, htmlParser() to m_treeConstructor, htmlTreeConstructor() in preparation for renaming HTMLParser 122415 https://bugs.webkit.org/show_bug.cgi?id=40514 122416 122417 This rename was done by hand. I realize now I should have 122418 renamed HTMLParser to HTMLTreeConstructor before renaming HTMLTokenizer. 122419 122420 No functional changes, thus no tests. 122421 122422 * dom/DocumentParser.h: 122423 (WebCore::DocumentParser::htmlTreeConstructor): 122424 * html/HTML5DocumentParser.cpp: 122425 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 122426 (WebCore::HTML5DocumentParser::pumpLexerIfPossible): 122427 (WebCore::HTML5DocumentParser::pumpLexer): 122428 (WebCore::HTML5DocumentParser::end): 122429 (WebCore::HTML5DocumentParser::htmlTreeConstructor): 122430 (WebCore::HTML5DocumentParser::isWaitingForScripts): 122431 (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution): 122432 (WebCore::HTML5DocumentParser::notifyFinished): 122433 (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets): 122434 * html/HTML5DocumentParser.h: 122435 * html/HTML5TreeBuilder.cpp: 122436 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 122437 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 122438 (WebCore::HTML5TreeBuilder::finished): 122439 * html/HTML5TreeBuilder.h: 122440 (WebCore::HTML5TreeBuilder::legacyTreeConstructor): 122441 * html/HTMLDocumentParser.cpp: 122442 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 122443 (WebCore::HTMLDocumentParser::scriptHandler): 122444 (WebCore::HTMLDocumentParser::parseTag): 122445 (WebCore::HTMLDocumentParser::end): 122446 (WebCore::HTMLDocumentParser::processToken): 122447 (WebCore::HTMLDocumentParser::processDoctypeToken): 122448 * html/HTMLDocumentParser.h: 122449 (WebCore::HTMLDocumentParser::htmlTreeConstructor): 122450 * html/HTMLFormControlElement.cpp: 122451 (WebCore::HTMLFormControlElement::removedFromTree): 122452 122453 2010-06-13 Eric Seidel <eric (a] webkit.org> 122454 122455 Reviewed by Darin Adler. 122456 122457 Rename tok, asHTMLTokenizer to parser, asHTMLDocumentParser 122458 https://bugs.webkit.org/show_bug.cgi?id=40513 122459 122460 Last set of Tokenizer related renames, also done via do-webcore-rename: 122461 asHTMLTokenizer => asHTMLDocumentParser 122462 tok => parser 122463 122464 No functional changes, thus no tests. 122465 122466 * dom/Document.cpp: 122467 (WebCore::Document::write): 122468 * dom/DocumentParser.h: 122469 (WebCore::DocumentParser::asHTMLDocumentParser): 122470 * html/HTMLDocumentParser.cpp: 122471 (WebCore::parseHTMLDocumentFragment): 122472 * html/HTMLDocumentParser.h: 122473 (WebCore::HTMLDocumentParser::asHTMLDocumentParser): 122474 * loader/DocumentLoader.cpp: 122475 (WebCore::DocumentLoader::isLoadingInAPISense): 122476 122477 2010-06-13 Eric Seidel <eric (a] webkit.org> 122478 122479 Reviewed by Darin Adler. 122480 122481 Fix the rest of the references to the old Tokenizer class (now DocumentParser) 122482 https://bugs.webkit.org/show_bug.cgi?id=40512 122483 122484 No functional changes, thus no new tests. 122485 This was mostly done by do-webcore-rename: 122486 tokenizer => parser 122487 m_tokenizer => m_parser 122488 createTextTokenizer => createTextDocumentParser 122489 createTokenizer => createParser 122490 getTokenizer => getParser 122491 122492 However had to be careful to avoid renaming things related to 122493 css/tokenizer.flex (which we should later rename to CSSTokenizer.flex) 122494 122495 Still a couple references with "tok" and "asHTMLTokenizer" which I'll 122496 get in the next patch. 122497 122498 * accessibility/AccessibilityRenderObject.cpp: 122499 (WebCore::AccessibilityRenderObject::isLoaded): 122500 * bindings/v8/ScriptEventListener.cpp: 122501 (WebCore::createAttributeEventListener): 122502 * dom/Document.cpp: 122503 (WebCore::Document::removedLastRef): 122504 (WebCore::Document::~Document): 122505 (WebCore::Document::createParser): 122506 (WebCore::Document::open): 122507 (WebCore::Document::cancelParsing): 122508 (WebCore::Document::implicitOpen): 122509 (WebCore::Document::implicitClose): 122510 (WebCore::Document::write): 122511 (WebCore::Document::finishParsing): 122512 (WebCore::Document::removePendingSheet): 122513 * dom/Document.h: 122514 (WebCore::Document::parser): 122515 * dom/DocumentParser.h: 122516 * dom/ViewportArguments.cpp: 122517 (WebCore::reportViewportWarning): 122518 * dom/XMLDocumentParserLibxml2.cpp: 122519 (WebCore::PendingCallbacks::callAndRemoveFirstCallback): 122520 (WebCore::PendingCallbacks::PendingStartElementNSCallback::call): 122521 (WebCore::PendingCallbacks::PendingEndElementNSCallback::call): 122522 (WebCore::PendingCallbacks::PendingCharactersCallback::call): 122523 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call): 122524 (WebCore::PendingCallbacks::PendingCDATABlockCallback::call): 122525 (WebCore::PendingCallbacks::PendingCommentCallback::call): 122526 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call): 122527 (WebCore::PendingCallbacks::): 122528 (WebCore::getParser): 122529 (WebCore::startElementNsHandler): 122530 (WebCore::endElementNsHandler): 122531 (WebCore::charactersHandler): 122532 (WebCore::processingInstructionHandler): 122533 (WebCore::cdataBlockHandler): 122534 (WebCore::commentHandler): 122535 (WebCore::warningHandler): 122536 (WebCore::fatalErrorHandler): 122537 (WebCore::normalErrorHandler): 122538 (WebCore::getEntityHandler): 122539 (WebCore::startDocumentHandler): 122540 (WebCore::endDocumentHandler): 122541 (WebCore::internalSubsetHandler): 122542 (WebCore::externalSubsetHandler): 122543 (WebCore::parseXMLDocumentFragment): 122544 * dom/XMLDocumentParserQt.cpp: 122545 (WebCore::parseXMLDocumentFragment): 122546 * html/HTML5EntityParser.cpp: 122547 * html/HTMLDocument.cpp: 122548 (WebCore::HTMLDocument::createParser): 122549 * html/HTMLDocument.h: 122550 * html/HTMLDocumentParser.cpp: 122551 (WebCore::HTMLDocumentParser::write): 122552 (WebCore::HTMLDocumentParser::stopParsing): 122553 * html/HTMLFormControlElement.cpp: 122554 (WebCore::HTMLFormControlElement::removedFromTree): 122555 * html/HTMLParser.cpp: 122556 (WebCore::HTMLParser::finished): 122557 (WebCore::HTMLParser::reportErrorToConsole): 122558 * html/HTMLViewSourceDocument.cpp: 122559 (WebCore::HTMLViewSourceDocument::createParser): 122560 (WebCore::HTMLViewSourceDocument::addLine): 122561 * html/HTMLViewSourceDocument.h: 122562 * loader/DocumentLoader.cpp: 122563 (WebCore::DocumentLoader::isLoadingInAPISense): 122564 * loader/DocumentWriter.cpp: 122565 (WebCore::DocumentWriter::begin): 122566 (WebCore::DocumentWriter::addData): 122567 * loader/FTPDirectoryDocument.cpp: 122568 (WebCore::FTPDirectoryDocument::createParser): 122569 * loader/FTPDirectoryDocument.h: 122570 * loader/FrameLoader.cpp: 122571 (WebCore::FrameLoader::stopLoading): 122572 (WebCore::FrameLoader::stop): 122573 * loader/ImageDocument.cpp: 122574 (WebCore::ImageDocument::createParser): 122575 * loader/ImageDocument.h: 122576 * loader/MediaDocument.cpp: 122577 (WebCore::MediaDocument::createParser): 122578 * loader/MediaDocument.h: 122579 * loader/PluginDocument.cpp: 122580 (WebCore::PluginDocument::createParser): 122581 * loader/PluginDocument.h: 122582 * loader/SinkDocument.cpp: 122583 (WebCore::SinkDocument::createParser): 122584 * loader/SinkDocument.h: 122585 * loader/TextDocument.cpp: 122586 (WebCore::TextDocument::createParser): 122587 (WebCore::createTextDocumentParser): 122588 * loader/TextDocument.h: 122589 * svg/SVGDocumentExtensions.cpp: 122590 (WebCore::SVGDocumentExtensions::reportWarning): 122591 (WebCore::SVGDocumentExtensions::reportError): 122592 * wml/WMLDocument.cpp: 122593 (WebCore::WMLDocument::finishedParsing): 122594 * wml/WMLErrorHandling.cpp: 122595 (WebCore::reportWMLError): 122596 * wml/WMLTemplateElement.cpp: 122597 (WebCore::WMLTemplateElement::registerTemplatesInDocument): 122598 122599 2010-06-13 Chris Fleizach <cfleizach (a] apple.com> 122600 122601 Reviewed by Darin Adler. 122602 122603 AX: link won't return linked element if URL contains # 122604 https://bugs.webkit.org/show_bug.cgi?id=40192 122605 122606 Test: platform/mac/accessibility/internal-link-when-document-has-fragment.html 122607 122608 * accessibility/AccessibilityRenderObject.cpp: 122609 (WebCore::AccessibilityRenderObject::internalLinkElement): 122610 122611 2010-06-13 Sam Weinig <sam (a] webkit.org> 122612 122613 Try and fix the chrome build. 122614 122615 * bindings/scripts/CodeGeneratorV8.pm: 122616 * xml/XMLHttpRequest.idl: 122617 122618 2010-06-13 Sam Weinig <sam (a] webkit.org> 122619 122620 Reviewed by Anders Carlsson. 122621 122622 Fix for https://bugs.webkit.org/show_bug.cgi?id=40550 122623 XMLHttpRequest constructor object should expose the constants from the IDL. 122624 122625 Test: fast/dom/XMLHttpRequest-constants.html 122626 122627 * Android.jscbindings.mk: 122628 * CMakeLists.txt: 122629 * GNUmakefile.am: 122630 * WebCore.gypi: 122631 * WebCore.pro: 122632 * WebCore.vcproj/WebCore.vcproj: 122633 * WebCore.xcodeproj/project.pbxproj: 122634 * bindings/js/JSBindingsAllInOne.cpp: 122635 * bindings/js/JSDOMWindowCustom.cpp: 122636 * bindings/js/JSWorkerContextCustom.cpp: 122637 * bindings/js/JSXMLHttpRequestConstructor.cpp: Removed. 122638 * bindings/js/JSXMLHttpRequestConstructor.h: Removed. 122639 * bindings/js/JSXMLHttpRequestCustom.cpp: 122640 (WebCore::JSXMLHttpRequestConstructor::constructJSXMLHttpRequest): 122641 * bindings/scripts/CodeGeneratorJS.pm: 122642 * xml/XMLHttpRequest.idl: 122643 122644 2010-06-13 Simon Fraser <simon.fraser (a] apple.com> 122645 122646 Reviewed by Dan Bernstein. 122647 122648 -webkit-transition font-size and font-family 122649 https://bugs.webkit.org/show_bug.cgi?id=33429 122650 122651 When animating font-size, update the font with a saved 122652 version of the font selector to ensure that we don't clobber 122653 the font family. 122654 122655 Test: transitions/font-family-during-transition.html 122656 122657 * rendering/style/RenderStyle.cpp: 122658 (WebCore::RenderStyle::setBlendedFontSize): 122659 122660 2010-06-13 Tony Chang <tony (a] chromium.org> 122661 122662 Build fix, not reviewed. 122663 122664 fix chromium compile after r61094 (id attribute refactor) 122665 https://bugs.webkit.org/show_bug.cgi?id=40553 122666 122667 * bindings/v8/custom/V8NamedNodesCollection.cpp: 122668 (WebCore::V8NamedNodesCollection::itemWithName): 122669 122670 2010-06-13 Darin Adler <darin (a] apple.com> 122671 122672 Reviewed by Alexey Proskuryakov. 122673 122674 Partly done support for alternate ID attributes should be removed 122675 https://bugs.webkit.org/show_bug.cgi?id=39692 122676 122677 Removed the include of "HTMLNames.h" from "Element.h". This prevents 122678 near-world-rebuilds every time you change HTMLTagNames.in. 122679 122680 Renamed the getIDAttribute function in the Element class to 122681 idForStyleResolution, since it returns a value of the id attribute 122682 that has been lowercased as appropriate for style matching, not the 122683 actual value of the attribute. With the old name it was easy to 122684 misuse it in non-style contexts. 122685 122686 Got rid of the idAttributeName function on Element, since it is 122687 easy to use it wrong. Replace it with isIdAttributeName, getIdAttribute, 122688 and setIdAttribute functions, which are a good fit for the needs of 122689 most call sites that were dealing with the id attribute. 122690 122691 Added an idAttributeName function to Document. This is for a future 122692 where a document can have a custom id attribute name specified in its 122693 doctype. It's possible this will be insufficient because the same 122694 document might have XHTML or SVG elements in it, and it's possible 122695 that on those elements we will want the attribute named "id" with 122696 no namespace to still work. We can deal with that when we implement 122697 the actual feature, though. For now, it seems OK to fetch the name 122698 of the id attribute from the document. 122699 122700 * dom/DynamicNodeList.cpp: 122701 (WebCore::DynamicNodeList::itemWithName): 122702 * dom/StaticNodeList.cpp: 122703 (WebCore::StaticNodeList::itemWithName): 122704 * rendering/RenderSVGResourceContainer.h: 122705 (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): 122706 (WebCore::RenderSVGResourceContainer::idChanged): 122707 * svg/SVGUseElement.cpp: 122708 (WebCore::SVGUseElement::handleDeepUseReferencing): 122709 * svg/animation/SMILTimeContainer.cpp: 122710 (WebCore::SMILTimeContainer::updateAnimations): 122711 Use the new idForStyleResolution function, which is the new name of 122712 the getIDAttribute function. There's a good chance these call sites are 122713 incorrect, which is something we should investigate later, so there's 122714 a FIXME at each call site. 122715 122716 * dom/Document.cpp: 122717 (WebCore::Document::Document): Initialize m_idAttributeName to the 122718 standard id attribute from HTML. 122719 (WebCore::Document::getElementById): Use Element::getIdAttribute. 122720 * dom/Document.h: Added Document::idAttributeName. 122721 122722 * dom/Element.cpp: 122723 (WebCore::Element::setAttribute): Use Document::idAttributeName. 122724 (WebCore::Element::setAttributeMap): Use Element::isIdAttributeName. 122725 (WebCore::Element::insertedIntoDocument): Use Document::idAttributeName. 122726 (WebCore::Element::removedFromDocument): Ditto. 122727 (WebCore::Element::formatForDebugger): Use Element::getIdAttribute. 122728 * dom/Element.h: Added isIdAttributeName, getIdAttribute, setIdAttribute, 122729 idForStyleResolution. Removed rareIDAttributeName. 122730 122731 * dom/ElementRareData.h: Removed m_idAttributeName. 122732 122733 * dom/NamedNodeMap.cpp: 122734 (WebCore::NamedNodeMap::setAttributes): Use Document::idAttributeName. 122735 * dom/NamedNodeMap.h: Renamed id, setID, and m_id to idForStyleResolution, 122736 setIdForStyleResolution, and m_idForStyleResolution since this is not the 122737 value of the id attribute because it gets lowercased for compatibility-mode 122738 documents. 122739 122740 * rendering/RenderIFrame.cpp: 122741 * rendering/RenderLayerCompositor.cpp: 122742 * rendering/RenderProgress.cpp: 122743 Added include of HTMLNames.h now that Element.h no longer includes it. 122744 122745 * editing/SetNodeAttributeCommand.h: 122746 * editing/markup.cpp: 122747 * html/HTMLParser.cpp: 122748 Removed unneeded includes. 122749 122750 * html/HTMLParser.h: Sorted includes. 122751 122752 * css/CSSStyleSelector.cpp: 122753 (WebCore::CSSStyleSelector::matchRules): Use idForStyleResolution. 122754 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Use idForStyleResolution. 122755 * dom/Attr.cpp: 122756 (WebCore::Attr::isId): Use Document::idAttributeName. 122757 * dom/StyledElement.cpp: 122758 (WebCore::StyledElement::parseMappedAttribute): Use isIdAttributeName, 122759 and setIdForStyleResolution. 122760 * editing/DeleteButtonController.cpp: 122761 (WebCore::DeleteButtonController::createDeletionUI): Use setIdAttribute. 122762 * editing/EditorCommand.cpp: 122763 (WebCore::executeInsertHorizontalRule): Ditto. 122764 * html/HTMLAppletElement.cpp: 122765 (WebCore::HTMLAppletElement::parseMappedAttribute): Use isIdAttributeName. 122766 (WebCore::HTMLAppletElement::createRenderer): Use getIdAttribute. 122767 * html/HTMLCollection.cpp: 122768 (WebCore::HTMLCollection::checkForNameMatch): Use getIdAttribute. 122769 (WebCore::HTMLCollection::updateNameCache): Use getIdAttribute. 122770 * html/HTMLDataGridColElement.cpp: 122771 (WebCore::HTMLDataGridColElement::ensureColumn): Use getIdAttribute. 122772 (WebCore::HTMLDataGridColElement::parseMappedAttribute): Use isIdAttributeName. 122773 * html/HTMLElement.cpp: 122774 (WebCore::HTMLElement::parseMappedAttribute): Use isIdAttributeName. 122775 * html/HTMLFormCollection.cpp: 122776 (WebCore::HTMLFormCollection::nextNamedItem): Added missing braces. 122777 (WebCore::HTMLFormCollection::updateNameCache): Use getIdAttribute. 122778 * html/HTMLFrameElementBase.cpp: 122779 (WebCore::HTMLFrameElementBase::parseMappedAttribute): Use isIdAttributeName. 122780 (WebCore::HTMLFrameElementBase::setName): Use getIdAttribute. 122781 * html/HTMLImageElement.cpp: 122782 (WebCore::HTMLImageElement::parseMappedAttribute): Use isIdAttributeName. 122783 * html/HTMLMapElement.cpp: 122784 (WebCore::HTMLMapElement::parseMappedAttribute): Use isIdAttributeName. 122785 Also restructured the function a bit to make its structure clearer and added 122786 a comment pointing out that it can't be quite right. 122787 * html/HTMLNameCollection.cpp: 122788 (WebCore::HTMLNameCollection::itemAfter): Use getIdAttribute. 122789 * html/HTMLObjectElement.cpp: 122790 (WebCore::HTMLObjectElement::parseMappedAttribute): Use isIdAttributeName. 122791 * html/HTMLParamElement.cpp: 122792 (WebCore::HTMLParamElement::parseMappedAttribute): Use isIdAttributeName. 122793 * loader/CachedFont.cpp: 122794 (WebCore::CachedFont::getSVGFontById): Use getIdAttribute. 122795 * rendering/RenderLayerBacking.cpp: 122796 (WebCore::RenderLayerBacking::nameForLayer): Use getIdAttribute. 122797 * rendering/SVGRenderTreeAsText.cpp: 122798 (WebCore::writeSVGPaintingResource): Use getIdAttribute. 122799 (WebCore::writeSVGResourceContainer): Ditto. 122800 * svg/SVGElement.cpp: 122801 (WebCore::SVGElement::insertedIntoDocument): Use getIdAttribute. 122802 * svg/SVGStyledElement.cpp: 122803 (WebCore::SVGStyledElement::isKnownAttribute): Use isIdAttributeName. 122804 (WebCore::SVGStyledElement::svgAttributeChanged): Use isIdAttributeName. 122805 * wml/WMLElement.cpp: 122806 (WebCore::WMLElement::parseMappedAttribute): Use isIdAttributeName. 122807 122808 2010-06-13 Dan Bernstein <mitz (a] apple.com> 122809 122810 Reviewed by Darin Adler. 122811 122812 <rdar://problem/8087385> REGRESSION (r60974): Continuous wheel scrolling is too fast in list boxes and in Safari Reader 122813 https://bugs.webkit.org/show_bug.cgi?id=40537 122814 122815 * platform/mac/WheelEventMac.mm: 122816 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Only multiply by pixelsPerLineStep() if the 122817 event is not continuous, as was before r56012. 122818 122819 2010-06-13 Andras Becsi <abecsi (a] webkit.org> 122820 122821 Reviewed by Darin Adler. 122822 122823 Centralize the gperf code generation commands into make-hash-tools.pl 122824 to avoid redundancy across multiple build systems. 122825 Do this in preparation of refactoring the usage of these generated 122826 sources to fix the debug linking error on Linux with gcc >= 4.4.0. 122827 122828 webkit.org/b/29244 122829 122830 No functionality change, so no new tests needed. 122831 122832 * DerivedSources.make: 122833 * GNUmakefile.am: 122834 * WebCore.gyp/WebCore.gyp: 122835 * WebCore.gyp/scripts/rule_gperf.py: Removed. 122836 * WebCore.pri: 122837 * WebCore.xcodeproj/project.pbxproj: 122838 * css/CSSParser.cpp: 122839 (WebCore::cssPropertyID): 122840 (WebCore::cssValueKeywordID): 122841 * css/makeprop.pl: 122842 * css/makevalues.pl: 122843 * html/DocTypeStrings.gperf: 122844 * html/HTML5EntityParser.cpp: 122845 * html/HTMLDocumentParser.cpp: 122846 * html/HTMLEntityNames.gperf: 122847 * html/PreloadScanner.cpp: 122848 * make-hash-tools.pl: Added. 122849 * platform/ColorData.gperf: 122850 * platform/graphics/Color.cpp: 122851 122852 2010-06-13 Noam Rosenthal <noam.rosenthal (a] nokia.com> 122853 122854 Reviewed by Kenneth Rohde Christiansen. 122855 122856 [Qt] tests/hybridPixmap fails 122857 https://bugs.webkit.org/show_bug.cgi?id=37316 122858 122859 The problem was that JSC::Instance::createRuntimeObject was never called. 122860 This is fixed by overloading newRuntimeObject and calling Instance::createRuntimeObject 122861 in between, instead of creating the runtime object directly inside the static function 122862 QtPixmapInstance::createRuntimeObject, which had to be renamed as to not overshadow the virtual function. 122863 122864 This fixes an existing test, tests/hybridPixmap 122865 122866 * bridge/qt/qt_pixmapruntime.cpp: 122867 (JSC::Bindings::QtPixmapInstance::newRuntimeObject): 122868 (JSC::Bindings::QtPixmapInstance::createPixmapRuntimeObject): 122869 * bridge/qt/qt_pixmapruntime.h: 122870 * bridge/qt/qt_runtime.cpp: 122871 (JSC::Bindings::convertQVariantToValue): 122872 122873 2010-06-13 Noam Rosenthal <noam.rosenthal (a] nokia.com> 122874 122875 Reviewed by Darin Adler. 122876 122877 GraphicsContext3D.h in the Qt port includes too many unnecessary files 122878 https://bugs.webkit.org/show_bug.cgi?id=40536 122879 122880 Removed unncessary includes. 122881 122882 No new tests; Compilation improvement. 122883 122884 * platform/graphics/GraphicsContext3D.h: 122885 * platform/graphics/qt/GraphicsContext3DQt.cpp: 122886 122887 2010-06-13 Noam Rosenthal <noam.rosenthal (a] nokia.com> 122888 122889 Reviewed by Eric Seidel. 122890 122891 [Qt] GraphicsLayer: recaching images creates an unnecessary deep copy 122892 https://bugs.webkit.org/show_bug.cgi?id=40535 122893 122894 Made sure the painter ends its operation before copying the pixmap. 122895 122896 No new tests: this is an optimization. 122897 122898 * platform/graphics/qt/GraphicsLayerQt.cpp: 122899 (WebCore::GraphicsLayerQtImpl::recache): 122900 122901 2010-06-13 Clemmitt Sigler <cmsigler (a] gmail.com> 122902 122903 Reviewed by Eric Seidel. 122904 122905 Patch to fix missing references to RenderMathMLRoot, 122906 RenderMathMLSquareRoot when building GtkLauncher. 122907 https://bugs.webkit.org/show_bug.cgi?id=40326 122908 122909 No change in functionality so no new tests. 122910 122911 * GNUmakefile.am: 122912 122913 2010-06-12 Brian Weinstein <bweinstein (a] apple.com> 122914 122915 Reviewed by Dan Bernstein. 122916 122917 https://bugs.webkit.org/show_bug.cgi?id=40538 122918 122919 Some machines have started to see the return of the dreaded: WebCore.lib : fatal error LNK1106: invalid 122920 file or disk full. Since we don't have the hotfix for VS2005, work around this in the meantime 122921 by creating an EditingAllInOne file, that includes all of the cpp files in the editing subdirectory. 122922 122923 * WebCore.vcproj/WebCore.vcproj: Prevnt the editing cpp from building, so we only compile EditingAllInOne. 122924 * editing/EditingAllInOne.cpp: Added. Includes all of the editing cpp files. 122925 122926 2010-06-12 Sheriff Bot <webkit.review.bot (a] gmail.com> 122927 122928 Unreviewed, rolling out r61031. 122929 http://trac.webkit.org/changeset/61031 122930 https://bugs.webkit.org/show_bug.cgi?id=40539 122931 122932 Crashes Dromaeo jslib test in Release Chromium (Requested by 122933 dimich_ on #webkit). 122934 122935 * bindings/v8/V8Binding.cpp: 122936 (WebCore::v8ExternalString): 122937 * bindings/v8/V8Binding.h: 122938 122939 2010-06-12 Eric Seidel <eric (a] webkit.org> 122940 122941 Reviewed by Adam Barth. 122942 122943 Rename the last few *Tokenizer classes (which don't have their own files) to *DocumentParser 122944 https://bugs.webkit.org/show_bug.cgi?id=40508 122945 122946 This was a very simple do-webcore-rename-generated patch. 122947 122948 PluginTokenizer => PluginDocumentParser 122949 TextTokenizer => TextDocumentParser 122950 SinkTokenizer => SinkDocumentParser 122951 MediaTokenizer => MediaDocumentParser 122952 FTPDirectoryTokenizer => FTPDirectoryDocumentParser 122953 122954 No functional changes, thus no tests. 122955 122956 * html/HTMLViewSourceDocument.cpp: 122957 (WebCore::HTMLViewSourceDocument::createTokenizer): 122958 * html/HTMLViewSourceDocument.h: 122959 * loader/FTPDirectoryDocument.cpp: 122960 (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser): 122961 (WebCore::FTPDirectoryDocumentParser::appendEntry): 122962 (WebCore::FTPDirectoryDocumentParser::createTDForFilename): 122963 (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine): 122964 (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): 122965 (WebCore::FTPDirectoryDocumentParser::createBasicDocument): 122966 (WebCore::FTPDirectoryDocumentParser::write): 122967 (WebCore::FTPDirectoryDocumentParser::finish): 122968 (WebCore::FTPDirectoryDocument::createTokenizer): 122969 * loader/MediaDocument.cpp: 122970 (WebCore::MediaDocumentParser::MediaDocumentParser): 122971 (WebCore::MediaDocumentParser::write): 122972 (WebCore::MediaDocumentParser::createDocumentStructure): 122973 (WebCore::MediaDocumentParser::writeRawData): 122974 (WebCore::MediaDocumentParser::finish): 122975 (WebCore::MediaDocumentParser::isWaitingForScripts): 122976 (WebCore::MediaDocument::createTokenizer): 122977 * loader/PluginDocument.cpp: 122978 (WebCore::PluginDocumentParser::PluginDocumentParser): 122979 (WebCore::PluginDocumentParser::pluginWidgetFromDocument): 122980 (WebCore::PluginDocumentParser::write): 122981 (WebCore::PluginDocumentParser::createDocumentStructure): 122982 (WebCore::PluginDocumentParser::writeRawData): 122983 (WebCore::PluginDocumentParser::finish): 122984 (WebCore::PluginDocumentParser::isWaitingForScripts): 122985 (WebCore::PluginDocument::createTokenizer): 122986 (WebCore::PluginDocument::pluginWidget): 122987 * loader/SinkDocument.cpp: 122988 (WebCore::SinkDocumentParser::SinkDocumentParser): 122989 (WebCore::SinkDocumentParser::finish): 122990 (WebCore::SinkDocument::createTokenizer): 122991 * loader/TextDocument.cpp: 122992 (WebCore::TextDocumentParser::TextDocumentParser): 122993 (WebCore::TextDocumentParser::~TextDocumentParser): 122994 (WebCore::TextDocumentParser::write): 122995 (WebCore::TextDocumentParser::finish): 122996 (WebCore::TextDocumentParser::isWaitingForScripts): 122997 (WebCore::TextDocument::createTokenizer): 122998 (WebCore::createTextTokenizer): 122999 123000 2010-06-12 Anders Bakken <agbakken (a] gmail.com> 123001 123002 Reviewed by Eric Seidel. 123003 123004 [Qt] EventHandlerQt.cpp has coding-style errors 123005 https://bugs.webkit.org/show_bug.cgi?id=40259 123006 123007 Coding style change only. 123008 123009 * page/qt/EventHandlerQt.cpp: 123010 (WebCore::EventHandler::eventActivatedView): 123011 123012 2010-06-12 Kwang Yul Seo <skyul (a] company100.net> 123013 123014 Reviewed by Darin Adler. 123015 123016 Unify fileSystemRepresentation and filenameFromString 123017 https://bugs.webkit.org/show_bug.cgi?id=40201 123018 123019 Remove filenameFromString and use fileSystemRepresentation instead 123020 as they do the same job. 123021 123022 * platform/FileSystem.cpp: Removed. 123023 * platform/FileSystem.h: 123024 * platform/efl/FileSystemEfl.cpp: 123025 (WebCore::fileSystemRepresentation): 123026 * platform/gtk/FileChooserGtk.cpp: 123027 (WebCore::FileChooser::basenameForWidth): 123028 * platform/gtk/FileSystemGtk.cpp: 123029 (WebCore::fileSystemRepresentation): 123030 (WebCore::filenameForDisplay): 123031 (WebCore::fileExists): 123032 (WebCore::deleteFile): 123033 (WebCore::deleteEmptyDirectory): 123034 (WebCore::getFileSize): 123035 (WebCore::getFileModificationTime): 123036 (WebCore::makeAllDirectories): 123037 (WebCore::pathGetFileName): 123038 (WebCore::directoryName): 123039 (WebCore::listDirectory): 123040 * platform/gtk/SharedBufferGtk.cpp: 123041 (WebCore::SharedBuffer::createWithContentsOfFile): 123042 * platform/network/soup/ResourceHandleSoup.cpp: 123043 (WebCore::startHttp): 123044 * platform/posix/SharedBufferPOSIX.cpp: 123045 (WebCore::SharedBuffer::createWithContentsOfFile): 123046 123047 2010-06-12 Patrick Gansterer <paroga (a] paroga.com> 123048 123049 Reviewed by Eric Seidel. 123050 123051 [Haiku] Cleanup SharedBuffer::createWithContentsOfFile 123052 https://bugs.webkit.org/show_bug.cgi?id=39003 123053 123054 * platform/haiku/SharedBufferHaiku.cpp: 123055 (WebCore::SharedBuffer::createWithContentsOfFile): 123056 123057 2010-06-12 Anders Bakken <agbakken (a] gmail.com> 123058 123059 Reviewed by Eric Seidel. 123060 123061 [Qt] WheelEventQt.cpp has coding-style errors 123062 https://bugs.webkit.org/show_bug.cgi?id=39760 123063 123064 * platform/qt/WheelEventQt.cpp: 123065 (WebCore::PlatformWheelEvent::PlatformWheelEvent): 123066 123067 2010-06-12 Kwang Yul Seo <skyul (a] company100.net> 123068 123069 Reviewed by Kent Tamura. 123070 123071 [BREWMP] Don't include POSIX headers in WebCorePrefix.h 123072 https://bugs.webkit.org/show_bug.cgi?id=39411 123073 123074 When building for BREW MP, don't include POSIX headers: 123075 <fcntl.h>, <pthread.h> and <sys/types.h>. 123076 123077 * WebCorePrefix.h: 123078 123079 2010-06-11 Eric Seidel <eric (a] webkit.org> 123080 123081 Reviewed by Adam Barth. 123082 123083 Rename the rest of the *Tokenizer classes to *DocumentParser 123084 https://bugs.webkit.org/show_bug.cgi?id=40507 123085 123086 This search/replace was done by do-webcore-rename. 123087 Just looking for a rubber stamp. 123088 123089 XMLTokenizer => XMLDocumentParser 123090 XMLTokenizerLibxml2 => XMLDocumentParserLibxml2 123091 XMLTokenizerQt => XMLDocumentParserQt 123092 XMLTokenizerScope => XMLDocumentParserScope 123093 HTML5Tokenizer => HTML5DocumentParser 123094 HTMLTokenizer => HTMLDocumentParser 123095 123096 No functional change, thus no tests. 123097 123098 * Android.mk: 123099 * CMakeLists.txt: 123100 * GNUmakefile.am: 123101 * WebCore.gypi: 123102 * WebCore.pro: 123103 * WebCore.vcproj/WebCore.vcproj: 123104 * WebCore.xcodeproj/project.pbxproj: 123105 * css/CSSStyleSheet.cpp: 123106 (WebCore::CSSStyleSheet::checkLoaded): 123107 * dom/Document.cpp: 123108 (WebCore::Document::createTokenizer): 123109 (WebCore::Document::write): 123110 * dom/Document.h: 123111 (WebCore::Document::setXMLEncoding): 123112 * dom/DocumentParser.h: 123113 (WebCore::DocumentParser::asHTMLTokenizer): 123114 * dom/Element.cpp: 123115 * dom/ProcessingInstruction.cpp: 123116 * dom/XMLDocumentParser.cpp: Added. 123117 (WebCore::XMLDocumentParser::isWMLDocument): 123118 (WebCore::XMLDocumentParser::pushCurrentNode): 123119 (WebCore::XMLDocumentParser::popCurrentNode): 123120 (WebCore::XMLDocumentParser::clearCurrentNodeStack): 123121 (WebCore::XMLDocumentParser::write): 123122 (WebCore::XMLDocumentParser::handleError): 123123 (WebCore::XMLDocumentParser::enterText): 123124 (WebCore::toString): 123125 (WebCore::XMLDocumentParser::exitText): 123126 (WebCore::XMLDocumentParser::end): 123127 (WebCore::XMLDocumentParser::finish): 123128 (WebCore::createXHTMLParserErrorHeader): 123129 (WebCore::XMLDocumentParser::insertErrorMessageBlock): 123130 (WebCore::XMLDocumentParser::notifyFinished): 123131 (WebCore::XMLDocumentParser::isWaitingForScripts): 123132 (WebCore::XMLDocumentParser::pauseParsing): 123133 * dom/XMLDocumentParser.h: Added. 123134 (WebCore::XMLParserContext::context): 123135 (WebCore::XMLParserContext::XMLParserContext): 123136 (WebCore::XMLDocumentParser::): 123137 (WebCore::XMLDocumentParser::setIsXHTMLDocument): 123138 (WebCore::XMLDocumentParser::isXHTMLDocument): 123139 (WebCore::XMLDocumentParser::setIsXHTMLMPDocument): 123140 (WebCore::XMLDocumentParser::isXHTMLMPDocument): 123141 (WebCore::XMLDocumentParser::wellFormed): 123142 (WebCore::XMLDocumentParser::context): 123143 * dom/XMLDocumentParserLibxml2.cpp: Added. 123144 (WebCore::PendingCallbacks::~PendingCallbacks): 123145 (WebCore::PendingCallbacks::appendStartElementNSCallback): 123146 (WebCore::PendingCallbacks::appendEndElementNSCallback): 123147 (WebCore::PendingCallbacks::appendCharactersCallback): 123148 (WebCore::PendingCallbacks::appendProcessingInstructionCallback): 123149 (WebCore::PendingCallbacks::appendCDATABlockCallback): 123150 (WebCore::PendingCallbacks::appendCommentCallback): 123151 (WebCore::PendingCallbacks::appendInternalSubsetCallback): 123152 (WebCore::PendingCallbacks::appendErrorCallback): 123153 (WebCore::PendingCallbacks::callAndRemoveFirstCallback): 123154 (WebCore::PendingCallbacks::isEmpty): 123155 (WebCore::PendingCallbacks::PendingCallback::~PendingCallback): 123156 (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback): 123157 (WebCore::PendingCallbacks::PendingStartElementNSCallback::call): 123158 (WebCore::PendingCallbacks::PendingEndElementNSCallback::call): 123159 (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback): 123160 (WebCore::PendingCallbacks::PendingCharactersCallback::call): 123161 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback): 123162 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call): 123163 (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback): 123164 (WebCore::PendingCallbacks::PendingCDATABlockCallback::call): 123165 (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback): 123166 (WebCore::PendingCallbacks::PendingCommentCallback::call): 123167 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback): 123168 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call): 123169 (WebCore::PendingCallbacks::): 123170 (WebCore::matchFunc): 123171 (WebCore::OffsetBuffer::OffsetBuffer): 123172 (WebCore::OffsetBuffer::readOutBytes): 123173 (WebCore::shouldAllowExternalLoad): 123174 (WebCore::openFunc): 123175 (WebCore::readFunc): 123176 (WebCore::writeFunc): 123177 (WebCore::closeFunc): 123178 (WebCore::errorFunc): 123179 (WebCore::XMLParserContext::createStringParser): 123180 (WebCore::XMLParserContext::createMemoryParser): 123181 (WebCore::XMLDocumentParser::XMLDocumentParser): 123182 (WebCore::XMLParserContext::~XMLParserContext): 123183 (WebCore::XMLDocumentParser::~XMLDocumentParser): 123184 (WebCore::XMLDocumentParser::doWrite): 123185 (WebCore::toString): 123186 (WebCore::handleElementNamespaces): 123187 (WebCore::handleElementAttributes): 123188 (WebCore::XMLDocumentParser::startElementNs): 123189 (WebCore::XMLDocumentParser::endElementNs): 123190 (WebCore::XMLDocumentParser::characters): 123191 (WebCore::XMLDocumentParser::error): 123192 (WebCore::XMLDocumentParser::processingInstruction): 123193 (WebCore::XMLDocumentParser::cdataBlock): 123194 (WebCore::XMLDocumentParser::comment): 123195 (WebCore::XMLDocumentParser::startDocument): 123196 (WebCore::XMLDocumentParser::endDocument): 123197 (WebCore::XMLDocumentParser::internalSubset): 123198 (WebCore::getTokenizer): 123199 (WebCore::hackAroundLibXMLEntityBug): 123200 (WebCore::startElementNsHandler): 123201 (WebCore::endElementNsHandler): 123202 (WebCore::charactersHandler): 123203 (WebCore::processingInstructionHandler): 123204 (WebCore::cdataBlockHandler): 123205 (WebCore::commentHandler): 123206 (WebCore::warningHandler): 123207 (WebCore::fatalErrorHandler): 123208 (WebCore::normalErrorHandler): 123209 (WebCore::): 123210 (WebCore::sharedXHTMLEntity): 123211 (WebCore::getXHTMLEntity): 123212 (WebCore::getEntityHandler): 123213 (WebCore::startDocumentHandler): 123214 (WebCore::endDocumentHandler): 123215 (WebCore::internalSubsetHandler): 123216 (WebCore::externalSubsetHandler): 123217 (WebCore::ignorableWhitespaceHandler): 123218 (WebCore::XMLDocumentParser::initializeParserContext): 123219 (WebCore::XMLDocumentParser::doEnd): 123220 (WebCore::xmlDocPtrForString): 123221 (WebCore::XMLDocumentParser::lineNumber): 123222 (WebCore::XMLDocumentParser::columnNumber): 123223 (WebCore::XMLDocumentParser::stopParsing): 123224 (WebCore::XMLDocumentParser::resumeParsing): 123225 (WebCore::parseXMLDocumentFragment): 123226 (WebCore::attributesStartElementNsHandler): 123227 (WebCore::parseAttributes): 123228 * dom/XMLDocumentParserQt.cpp: Added. 123229 (WebCore::EntityResolver::resolveUndeclaredEntity): 123230 (WebCore::XMLDocumentParser::XMLDocumentParser): 123231 (WebCore::XMLDocumentParser::~XMLDocumentParser): 123232 (WebCore::XMLDocumentParser::doWrite): 123233 (WebCore::XMLDocumentParser::initializeParserContext): 123234 (WebCore::XMLDocumentParser::doEnd): 123235 (WebCore::XMLDocumentParser::lineNumber): 123236 (WebCore::XMLDocumentParser::columnNumber): 123237 (WebCore::XMLDocumentParser::stopParsing): 123238 (WebCore::XMLDocumentParser::resumeParsing): 123239 (WebCore::parseXMLDocumentFragment): 123240 (WebCore::attributesStartElementNsHandler): 123241 (WebCore::parseAttributes): 123242 (WebCore::prefixFromQName): 123243 (WebCore::handleElementNamespaces): 123244 (WebCore::handleElementAttributes): 123245 (WebCore::XMLDocumentParser::parse): 123246 (WebCore::XMLDocumentParser::startDocument): 123247 (WebCore::XMLDocumentParser::parseStartElement): 123248 (WebCore::XMLDocumentParser::parseEndElement): 123249 (WebCore::XMLDocumentParser::parseCharacters): 123250 (WebCore::XMLDocumentParser::parseProcessingInstruction): 123251 (WebCore::XMLDocumentParser::parseCdata): 123252 (WebCore::XMLDocumentParser::parseComment): 123253 (WebCore::XMLDocumentParser::endDocument): 123254 (WebCore::XMLDocumentParser::hasError): 123255 (WebCore::XMLDocumentParser::parseDtd): 123256 * dom/XMLDocumentParserScope.cpp: Added. 123257 (WebCore::XMLDocumentParserScope::XMLDocumentParserScope): 123258 (WebCore::XMLDocumentParserScope::~XMLDocumentParserScope): 123259 * dom/XMLDocumentParserScope.h: Added. 123260 * dom/XMLTokenizer.cpp: Removed. 123261 * dom/XMLTokenizer.h: Removed. 123262 * dom/XMLTokenizerLibxml2.cpp: Removed. 123263 * dom/XMLTokenizerQt.cpp: Removed. 123264 * dom/XMLTokenizerScope.cpp: Removed. 123265 * dom/XMLTokenizerScope.h: Removed. 123266 * html/HTML5DocumentParser.cpp: Added. 123267 (WebCore::): 123268 (WebCore::HTML5DocumentParser::HTML5DocumentParser): 123269 (WebCore::HTML5DocumentParser::~HTML5DocumentParser): 123270 (WebCore::HTML5DocumentParser::begin): 123271 (WebCore::HTML5DocumentParser::pumpLexerIfPossible): 123272 (WebCore::HTML5DocumentParser::pumpLexer): 123273 (WebCore::HTML5DocumentParser::write): 123274 (WebCore::HTML5DocumentParser::end): 123275 (WebCore::HTML5DocumentParser::attemptToEnd): 123276 (WebCore::HTML5DocumentParser::endIfDelayed): 123277 (WebCore::HTML5DocumentParser::finish): 123278 (WebCore::HTML5DocumentParser::executingScript): 123279 (WebCore::HTML5DocumentParser::lineNumber): 123280 (WebCore::HTML5DocumentParser::columnNumber): 123281 (WebCore::HTML5DocumentParser::htmlParser): 123282 (WebCore::HTML5DocumentParser::isWaitingForScripts): 123283 (WebCore::HTML5DocumentParser::resumeParsingAfterScriptExecution): 123284 (WebCore::HTML5DocumentParser::watchForLoad): 123285 (WebCore::HTML5DocumentParser::stopWatchingForLoad): 123286 (WebCore::HTML5DocumentParser::shouldLoadExternalScriptFromSrc): 123287 (WebCore::HTML5DocumentParser::executeScript): 123288 (WebCore::HTML5DocumentParser::notifyFinished): 123289 (WebCore::HTML5DocumentParser::executeScriptsWaitingForStylesheets): 123290 (WebCore::HTML5DocumentParser::script): 123291 * html/HTML5DocumentParser.h: Added. 123292 (WebCore::HTML5DocumentParser::InputStream::InputStream): 123293 (WebCore::HTML5DocumentParser::InputStream::appendToEnd): 123294 (WebCore::HTML5DocumentParser::InputStream::insertAtCurrentInsertionPoint): 123295 (WebCore::HTML5DocumentParser::InputStream::close): 123296 (WebCore::HTML5DocumentParser::InputStream::current): 123297 (WebCore::HTML5DocumentParser::InputStream::splitInto): 123298 (WebCore::HTML5DocumentParser::InputStream::mergeFrom): 123299 (WebCore::HTML5DocumentParser::InsertionPointRecord::InsertionPointRecord): 123300 (WebCore::HTML5DocumentParser::InsertionPointRecord::~InsertionPointRecord): 123301 (WebCore::HTML5DocumentParser::inWrite): 123302 * html/HTML5Lexer.h: 123303 (WebCore::HTML5Lexer::columnNumber): 123304 * html/HTML5Tokenizer.cpp: Removed. 123305 * html/HTML5Tokenizer.h: Removed. 123306 * html/HTML5TreeBuilder.cpp: 123307 * html/HTMLDocument.cpp: 123308 (WebCore::HTMLDocument::createTokenizer): 123309 * html/HTMLDocumentParser.cpp: Added. 123310 (WebCore::): 123311 (WebCore::fixUpChar): 123312 (WebCore::tagMatch): 123313 (WebCore::Token::addAttribute): 123314 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 123315 (WebCore::HTMLDocumentParser::reset): 123316 (WebCore::HTMLDocumentParser::begin): 123317 (WebCore::HTMLDocumentParser::setForceSynchronous): 123318 (WebCore::HTMLDocumentParser::processListing): 123319 (WebCore::HTMLDocumentParser::parseNonHTMLText): 123320 (WebCore::HTMLDocumentParser::scriptHandler): 123321 (WebCore::HTMLDocumentParser::scriptExecution): 123322 (WebCore::HTMLDocumentParser::parseComment): 123323 (WebCore::HTMLDocumentParser::parseServer): 123324 (WebCore::HTMLDocumentParser::parseProcessingInstruction): 123325 (WebCore::HTMLDocumentParser::parseText): 123326 (WebCore::HTMLDocumentParser::parseEntity): 123327 (WebCore::HTMLDocumentParser::parseDoctype): 123328 (WebCore::HTMLDocumentParser::parseTag): 123329 (WebCore::HTMLDocumentParser::continueProcessing): 123330 (WebCore::HTMLDocumentParser::advance): 123331 (WebCore::HTMLDocumentParser::willWriteHTML): 123332 (WebCore::HTMLDocumentParser::didWriteHTML): 123333 (WebCore::HTMLDocumentParser::write): 123334 (WebCore::HTMLDocumentParser::stopParsing): 123335 (WebCore::HTMLDocumentParser::processingData): 123336 (WebCore::HTMLDocumentParser::timerFired): 123337 (WebCore::HTMLDocumentParser::end): 123338 (WebCore::HTMLDocumentParser::finish): 123339 (WebCore::HTMLDocumentParser::processToken): 123340 (WebCore::HTMLDocumentParser::processDoctypeToken): 123341 (WebCore::HTMLDocumentParser::~HTMLDocumentParser): 123342 (WebCore::HTMLDocumentParser::enlargeBuffer): 123343 (WebCore::HTMLDocumentParser::enlargeScriptBuffer): 123344 (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets): 123345 (WebCore::HTMLDocumentParser::notifyFinished): 123346 (WebCore::HTMLDocumentParser::executeExternalScriptsIfReady): 123347 (WebCore::HTMLDocumentParser::executeExternalScriptsTimerFired): 123348 (WebCore::HTMLDocumentParser::continueExecutingExternalScripts): 123349 (WebCore::HTMLDocumentParser::isWaitingForScripts): 123350 (WebCore::HTMLDocumentParser::setSrc): 123351 (WebCore::parseHTMLDocumentFragment): 123352 (WebCore::decodeNamedEntity): 123353 * html/HTMLDocumentParser.h: Added. 123354 (WebCore::Token::Token): 123355 (WebCore::Token::~Token): 123356 (WebCore::Token::isOpenTag): 123357 (WebCore::Token::isCloseTag): 123358 (WebCore::Token::reset): 123359 (WebCore::Token::addViewSourceChar): 123360 (WebCore::): 123361 (WebCore::DoctypeToken::DoctypeToken): 123362 (WebCore::DoctypeToken::reset): 123363 (WebCore::DoctypeToken::state): 123364 (WebCore::DoctypeToken::setState): 123365 (WebCore::HTMLDocumentParser::forceSynchronous): 123366 (WebCore::HTMLDocumentParser::executingScript): 123367 (WebCore::HTMLDocumentParser::lineNumber): 123368 (WebCore::HTMLDocumentParser::columnNumber): 123369 (WebCore::HTMLDocumentParser::processingContentWrittenByScript): 123370 (WebCore::HTMLDocumentParser::htmlParser): 123371 (WebCore::HTMLDocumentParser::asHTMLTokenizer): 123372 (WebCore::HTMLDocumentParser::checkBuffer): 123373 (WebCore::HTMLDocumentParser::checkScriptBuffer): 123374 (WebCore::HTMLDocumentParser::): 123375 (WebCore::HTMLDocumentParser::State::State): 123376 (WebCore::HTMLDocumentParser::State::tagState): 123377 (WebCore::HTMLDocumentParser::State::setTagState): 123378 (WebCore::HTMLDocumentParser::State::entityState): 123379 (WebCore::HTMLDocumentParser::State::setEntityState): 123380 (WebCore::HTMLDocumentParser::State::inScript): 123381 (WebCore::HTMLDocumentParser::State::setInScript): 123382 (WebCore::HTMLDocumentParser::State::inStyle): 123383 (WebCore::HTMLDocumentParser::State::setInStyle): 123384 (WebCore::HTMLDocumentParser::State::inXmp): 123385 (WebCore::HTMLDocumentParser::State::setInXmp): 123386 (WebCore::HTMLDocumentParser::State::inTitle): 123387 (WebCore::HTMLDocumentParser::State::setInTitle): 123388 (WebCore::HTMLDocumentParser::State::inIFrame): 123389 (WebCore::HTMLDocumentParser::State::setInIFrame): 123390 (WebCore::HTMLDocumentParser::State::inPlainText): 123391 (WebCore::HTMLDocumentParser::State::setInPlainText): 123392 (WebCore::HTMLDocumentParser::State::inProcessingInstruction): 123393 (WebCore::HTMLDocumentParser::State::setInProcessingInstruction): 123394 (WebCore::HTMLDocumentParser::State::inComment): 123395 (WebCore::HTMLDocumentParser::State::setInComment): 123396 (WebCore::HTMLDocumentParser::State::inDoctype): 123397 (WebCore::HTMLDocumentParser::State::setInDoctype): 123398 (WebCore::HTMLDocumentParser::State::inTextArea): 123399 (WebCore::HTMLDocumentParser::State::setInTextArea): 123400 (WebCore::HTMLDocumentParser::State::escaped): 123401 (WebCore::HTMLDocumentParser::State::setEscaped): 123402 (WebCore::HTMLDocumentParser::State::inServer): 123403 (WebCore::HTMLDocumentParser::State::setInServer): 123404 (WebCore::HTMLDocumentParser::State::skipLF): 123405 (WebCore::HTMLDocumentParser::State::setSkipLF): 123406 (WebCore::HTMLDocumentParser::State::startTag): 123407 (WebCore::HTMLDocumentParser::State::setStartTag): 123408 (WebCore::HTMLDocumentParser::State::discardLF): 123409 (WebCore::HTMLDocumentParser::State::setDiscardLF): 123410 (WebCore::HTMLDocumentParser::State::allowYield): 123411 (WebCore::HTMLDocumentParser::State::setAllowYield): 123412 (WebCore::HTMLDocumentParser::State::loadingExtScript): 123413 (WebCore::HTMLDocumentParser::State::setLoadingExtScript): 123414 (WebCore::HTMLDocumentParser::State::forceSynchronous): 123415 (WebCore::HTMLDocumentParser::State::setForceSynchronous): 123416 (WebCore::HTMLDocumentParser::State::inAnyNonHTMLText): 123417 (WebCore::HTMLDocumentParser::State::hasTagState): 123418 (WebCore::HTMLDocumentParser::State::hasEntityState): 123419 (WebCore::HTMLDocumentParser::State::needsSpecialWriteHandling): 123420 (WebCore::HTMLDocumentParser::State::): 123421 (WebCore::HTMLDocumentParser::State::setBit): 123422 (WebCore::HTMLDocumentParser::State::testBit): 123423 * html/HTMLElement.cpp: 123424 * html/HTMLFormControlElement.cpp: 123425 * html/HTMLParser.cpp: 123426 (WebCore::HTMLParser::reportErrorToConsole): 123427 * html/HTMLParser.h: 123428 * html/HTMLTokenizer.cpp: Removed. 123429 * html/HTMLTokenizer.h: Removed. 123430 * html/HTMLViewSourceDocument.cpp: 123431 (WebCore::HTMLViewSourceDocument::createTokenizer): 123432 (WebCore::HTMLViewSourceDocument::addViewSourceToken): 123433 * html/HTMLViewSourceDocument.h: 123434 * loader/DocumentLoader.cpp: 123435 * loader/FTPDirectoryDocument.cpp: 123436 (WebCore::FTPDirectoryTokenizer::FTPDirectoryTokenizer): 123437 (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate): 123438 (WebCore::FTPDirectoryTokenizer::finish): 123439 * loader/FrameLoader.cpp: 123440 * loader/ImageDocument.cpp: 123441 * loader/MediaDocument.cpp: 123442 * loader/PluginDocument.cpp: 123443 * loader/TextDocument.cpp: 123444 * page/XSSAuditor.h: 123445 * svg/SVGDocumentExtensions.cpp: 123446 * wml/WMLErrorHandling.cpp: 123447 (WebCore::reportWMLError): 123448 * xml/XSLStyleSheetLibxslt.cpp: 123449 (WebCore::XSLStyleSheet::parseString): 123450 * xml/XSLTProcessor.cpp: 123451 * xml/XSLTProcessorLibxslt.cpp: 123452 123453 2010-06-12 Andreas Kling <andreas.kling (a] nokia.com> 123454 123455 Reviewed by Darin Adler. 123456 123457 Window object should have CanvasGradient and CanvasPattern 123458 https://bugs.webkit.org/show_bug.cgi?id=40394 123459 123460 This fixes the following tests: 123461 - canvas/philip/tests/2d.gradient.object.return.html 123462 - canvas/philip/tests/2d.pattern.basic.type.html 123463 123464 * html/canvas/CanvasGradient.idl: 123465 * html/canvas/CanvasPattern.idl: 123466 * page/DOMWindow.idl: 123467 123468 2010-06-12 Dan Bernstein <mitz (a] apple.com> 123469 123470 Reviewed by Oliver Hunt. 123471 123472 <rdar://problem/8025267> REGRESSION (Safari 4-TOT): Crash when a frames resize handler removes the frame 123473 https://bugs.webkit.org/show_bug.cgi?id=40534 123474 123475 Test: fast/replaced/frame-removed-during-resize.html 123476 123477 * rendering/RenderWidget.cpp: 123478 (WebCore::RenderWidget::updateWidgetPosition): Null-check m_widget, since resizing the widget 123479 may trigger an iframes resize handler, which may destroy the widget. 123480 123481 2010-06-12 Dean Jackson <dino (a] apple.com> 123482 123483 Reviewed by Darin Adler. 123484 123485 Animation keyframe timing functions are applying incorrectly 123486 https://bugs.webkit.org/show_bug.cgi?id=38963 123487 123488 When copying RenderStyles, we have to clone the AnimationList so that each keyframe 123489 can have its own timing function. 123490 123491 Tests: animations/keyframe-timing-functions-transform.html 123492 animations/keyframe-timing-functions2.html 123493 123494 * platform/animation/Animation.h: 123495 (WebCore::Animation::create): 123496 * platform/animation/AnimationList.cpp: 123497 (WebCore::AnimationList::AnimationList): 123498 * platform/animation/AnimationList.h: 123499 (WebCore::AnimationList::AnimationList): 123500 123501 2010-06-12 Dan Bernstein <mitz (a] apple.com> 123502 123503 Reviewed by Dave Hyatt. 123504 123505 <rdar://problem/7882140> -webkit-column-break-* properties dont do anything 123506 https://bugs.webkit.org/show_bug.cgi?id=40531 123507 123508 Test: fast/multicol/break-properties.html 123509 123510 * rendering/RenderBlock.cpp: 123511 (WebCore::RenderBlock::paintChildren): Check for -webkit-column-break-{before,after}: always 123512 and -webkit-column-break-inside: avoid when doing column layout. 123513 123514 2010-06-13 Robert Hogan <robert (a] webkit.org> 123515 123516 Reviewed by Alexey Proskuryakov. 123517 123518 FrameLoader::clear() clears JS objects that cached pages later rely on 123519 123520 https://bugs.webkit.org/show_bug.cgi?id=37725 123521 https://bugs.webkit.org/show_bug.cgi?id=31626 123522 123523 Fix the following tests for Qt: 123524 123525 fast/events/pageshow-pagehide-on-back-cached.html 123526 fast/events/pageshow-pagehide-on-back-cached-with-frames.html 123527 fast/loader/input-element-page-cache-crash.html 123528 fast/dom/Window/timer-resume-on-navigation-back.html 123529 loader/go-back-to-different-window-size.html 123530 fast/dom/javascript-url-crash-function.html 123531 fast/dom/location-new-window-no-crash.html 123532 http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open.html 123533 123534 which currently fail because the page's Qt-bindings runtime objects are 123535 cleared when navigating away from the page containing them. 123536 123537 Track Qt-bindings objects in a separate ScriptController::cacheableRootBindingObject(). 123538 RuntimeObjects tracked by this root object will not get invalidated on page navigations, 123539 so they will still be available when the pages containing them are retrieved from the 123540 b/f cache. 123541 123542 This means the Qt bindings objects will only get cleared on Frame::pageDestroyed(). 123543 123544 * bindings/js/ScriptController.cpp: 123545 (WebCore::ScriptController::~ScriptController): 123546 (WebCore::ScriptController::cacheableBindingRootObject): 123547 * bindings/js/ScriptController.h: 123548 123549 2010-06-12 Kent Tamura <tkent (a] chromium.org> 123550 123551 Reviewed by Darin Adler. 123552 123553 REGRESSION: Can't submit a form with <input type=radio required> 123554 https://bugs.webkit.org/show_bug.cgi?id=40429 123555 123556 Validity state was not updated correctly for radio buttons, and it 123557 prevents form submission even if a radio button group has a 123558 checked radio button. 123559 123560 Test: fast/forms/interactive-validation-required-radio.html 123561 123562 * html/HTMLInputElement.cpp: 123563 (WebCore::HTMLInputElement::updateCheckedRadioButtons): 123564 Call setNeedsValidityCheck() for all of radio buttons in the same group 123565 to update validity state. 123566 (WebCore::HTMLInputElement::setChecked): 123567 Remove setNeedsValidityCheck() call because it is called in 123568 updateCheckedRadioButtons(). 123569 123570 2010-06-12 Kent Tamura <tkent (a] chromium.org> 123571 123572 Reviewed by Dimitri Glazkov. 123573 123574 Disable interactive form validation in non-strict modes 123575 https://bugs.webkit.org/show_bug.cgi?id=40218 123576 123577 The interactive validation feature of HTML5 is not compatible with 123578 HTML4, and users and page authors don't expect existing sites work 123579 differently in WebKit. For example, maxlength and required attributes 123580 in existing sites unexpectedly prevented form submission. 123581 So, we disable the interactive validation feature in non-strict 123582 modes to improve compatibility. 123583 123584 Test: fast/forms/interactive-validation-compat-mode.html 123585 fast/forms/interactive-validation-html4.html 123586 123587 * html/HTMLFormElement.cpp: 123588 (WebCore::HTMLFormElement::validateInteractively): 123589 Process interactive validation only in the strict mode. 123590 123591 2010-06-12 Eric Seidel <eric (a] webkit.org> 123592 123593 Reviewed by David Levin. 123594 123595 Rename Tokenizer to DocumentParser to match what it actually does 123596 https://bugs.webkit.org/show_bug.cgi?id=40504 123597 123598 The rename was entirely done by do-webcore-rename. 123599 The only manual changes were removing out-dated comments 123600 and fixing Tokenizer_h to DocumentParser_h in the header guards. 123601 123602 I'll do all the rest of the renames (like the tokenizer subclasses 123603 and the tokenizer() createTokenizer() methods) in separate changes. 123604 123605 No functional change, thus no tests. 123606 123607 * GNUmakefile.am: 123608 * WebCore.gypi: 123609 * WebCore.vcproj/WebCore.vcproj: 123610 * WebCore.xcodeproj/project.pbxproj: 123611 * bindings/js/JSHTMLDocumentCustom.cpp: 123612 * bindings/v8/ScriptEventListener.cpp: 123613 * dom/Document.cpp: 123614 (WebCore::Document::createTokenizer): 123615 * dom/Document.h: 123616 (WebCore::Document::tokenizer): 123617 * dom/DocumentParser.h: Added. 123618 (WebCore::DocumentParser::~DocumentParser): 123619 (WebCore::DocumentParser::stopParsing): 123620 (WebCore::DocumentParser::processingData): 123621 (WebCore::DocumentParser::executingScript): 123622 (WebCore::DocumentParser::wantsRawData): 123623 (WebCore::DocumentParser::writeRawData): 123624 (WebCore::DocumentParser::inViewSourceMode): 123625 (WebCore::DocumentParser::setInViewSourceMode): 123626 (WebCore::DocumentParser::wellFormed): 123627 (WebCore::DocumentParser::lineNumber): 123628 (WebCore::DocumentParser::columnNumber): 123629 (WebCore::DocumentParser::executeScriptsWaitingForStylesheets): 123630 (WebCore::DocumentParser::htmlParser): 123631 (WebCore::DocumentParser::asHTMLTokenizer): 123632 (WebCore::DocumentParser::xssAuditor): 123633 (WebCore::DocumentParser::setXSSAuditor): 123634 (WebCore::DocumentParser::DocumentParser): 123635 * dom/Tokenizer.h: Removed. 123636 * dom/ViewportArguments.cpp: 123637 (WebCore::reportViewportWarning): 123638 * dom/XMLTokenizer.h: 123639 * dom/XMLTokenizerLibxml2.cpp: 123640 (WebCore::XMLTokenizer::stopParsing): 123641 * dom/XMLTokenizerQt.cpp: 123642 (WebCore::XMLTokenizer::stopParsing): 123643 * html/HTML5Tokenizer.cpp: 123644 (WebCore::HTML5Tokenizer::HTML5Tokenizer): 123645 * html/HTML5Tokenizer.h: 123646 * html/HTMLDocument.cpp: 123647 (WebCore::HTMLDocument::createTokenizer): 123648 * html/HTMLDocument.h: 123649 * html/HTMLFormControlElement.cpp: 123650 (WebCore::HTMLFormControlElement::removedFromTree): 123651 * html/HTMLTokenizer.cpp: 123652 (WebCore::HTMLTokenizer::HTMLTokenizer): 123653 (WebCore::HTMLTokenizer::stopParsing): 123654 * html/HTMLTokenizer.h: 123655 * html/HTMLViewSourceDocument.cpp: 123656 (WebCore::HTMLViewSourceDocument::createTokenizer): 123657 * html/HTMLViewSourceDocument.h: 123658 * loader/DocumentLoader.cpp: 123659 (WebCore::DocumentLoader::isLoadingInAPISense): 123660 * loader/DocumentWriter.cpp: 123661 (WebCore::DocumentWriter::addData): 123662 * loader/FTPDirectoryDocument.cpp: 123663 (WebCore::FTPDirectoryDocument::createTokenizer): 123664 * loader/FTPDirectoryDocument.h: 123665 * loader/ImageDocument.cpp: 123666 (WebCore::ImageDocument::createTokenizer): 123667 * loader/ImageDocument.h: 123668 * loader/MediaDocument.cpp: 123669 (WebCore::MediaDocument::createTokenizer): 123670 * loader/MediaDocument.h: 123671 * loader/PluginDocument.cpp: 123672 (WebCore::PluginDocument::createTokenizer): 123673 * loader/PluginDocument.h: 123674 * loader/SinkDocument.cpp: 123675 (WebCore::SinkDocument::createTokenizer): 123676 * loader/SinkDocument.h: 123677 * loader/TextDocument.cpp: 123678 (WebCore::TextTokenizer::TextTokenizer): 123679 (WebCore::TextDocument::createTokenizer): 123680 (WebCore::createTextTokenizer): 123681 * loader/TextDocument.h: 123682 * wml/WMLDocument.cpp: 123683 (WebCore::WMLDocument::finishedParsing): 123684 123685 2010-06-12 Eric Seidel <eric (a] webkit.org> 123686 123687 Reviewed by Adam Barth. 123688 123689 HTML5Tokenizer needs to tell the InspectorTimelineAgent before and after it writes 123690 https://bugs.webkit.org/show_bug.cgi?id=40417 123691 123692 This "fixes" inspector/timeline-script-tag-1.html. HTML5 results 123693 differ from the old parser for expected reasons. 123694 123695 HTML5Tokenizer calls InspectorTimelineAgent::will/didWriteHTML every 123696 time we pump the lexer instead of every write() call. 123697 We end up pumping the lexer slightly more often than the old code called 123698 write() in order to cleanly handle unclosed-entities, unclosed tags, 123699 buffered characters, etc. at the end of a document. 123700 123701 I discussed this extensively with James Robinson in #webkit and we decided 123702 that it was better for the HTML5Tokenizer to call for every pump and 123703 that the Inspector should later filter out empty pumps. 123704 123705 We can't filter out empty pumps yet, because the number of parsed 123706 characters is passed in willWrite instead of didWrite and thus is 123707 speculative (and wrong). This is a problem independent of this change 123708 as willWrite's "length" argument is wrong in different ways for the old 123709 parser, including always being 0 when the old parser resumes. 123710 123711 Tested by inspector/timeline-script-tag-1.html 123712 123713 * html/HTML5Tokenizer.cpp: 123714 (WebCore::HTML5Tokenizer::willPumpLexer): 123715 - Notify the InspectorTimelineAgent we're about to process input. 123716 (WebCore::HTML5Tokenizer::didPumpLexer): 123717 - Notify the InspectorTimelineAgent we did process tokens. 123718 (WebCore::HTML5Tokenizer::pumpLexer): 123719 - Call willPump and didPump 123720 * html/HTML5Tokenizer.h: 123721 * inspector/InspectorTimelineAgent.h: 123722 - Add a FIXME about passing length to didWrite instead of willWrite. 123723 123724 2010-06-11 Sheriff Bot <webkit.review.bot (a] gmail.com> 123725 123726 Unreviewed, rolling out r61052. 123727 http://trac.webkit.org/changeset/61052 123728 https://bugs.webkit.org/show_bug.cgi?id=40517 123729 123730 "Broke fast/forms/caret-rtl.html on Mac bots" (Requested by 123731 eseidel on #webkit). 123732 123733 * html/HTMLElement.cpp: 123734 (WebCore::HTMLElement::mapToEntry): 123735 (WebCore::HTMLElement::parseMappedAttribute): 123736 123737 2010-06-11 Maciej Stachowiak <mjs (a] apple.com> 123738 123739 Reviewed by Ojan Vafai. 123740 123741 Implement HTML5 hidden attribute 123742 https://bugs.webkit.org/show_bug.cgi?id=40511 123743 123744 Test: fast/html/hidden-attr.html 123745 123746 Note: I used the mapped attribute mechanism for this instead of a rule in the UA stylesheet 123747 to avoid a performance hit from adding a global attribute rule to the UA stylesheet. 123748 123749 * html/HTMLElement.cpp: 123750 (WebCore::HTMLElement::mapToEntry): Pick up hidden as a global mapped attribute. 123751 (WebCore::HTMLElement::parseMappedAttribute): Map hidden attribute to display: none. 123752 123753 2010-06-10 Abhishek Arya <inferno (a] chromium.org> 123754 123755 Reviewed by Dave Hyatt. 123756 123757 Do not render CSS Styles :first-letter and :first-line in a SVG text element context. 123758 https://bugs.webkit.org/show_bug.cgi?id=40031 123759 123760 Test: svg/text/text-style-invalid.svg 123761 123762 * rendering/RenderSVGText.cpp: 123763 (WebCore::RenderSVGText::firstLineBlock): 123764 (WebCore::RenderSVGText::updateFirstLetter): 123765 * rendering/RenderSVGText.h: 123766 123767 2010-06-11 Kenneth Russell <kbr (a] google.com> 123768 123769 Reviewed by Dimitri Glazkov. 123770 123771 getParameter with UNPACK_FLIP_Y_WEBGL and UNPACK_PREMULTIPLY_ALPHA_WEBGL is buggy 123772 https://bugs.webkit.org/show_bug.cgi?id=40506 123773 123774 Return the data members of WebGLRenderingContext for these 123775 parameter queries rather than asking OpenGL, which knows nothing 123776 about them. 123777 123778 * html/canvas/WebGLRenderingContext.cpp: 123779 (WebCore::WebGLRenderingContext::getParameter): 123780 123781 2010-06-11 Simon Fraser <simon.fraser (a] apple.com> 123782 123783 Reviewed by Dr Dan Bernstein. 123784 123785 REGRESSION: crash when unloading an iFrame with Flash from the DOM 123786 https://bugs.webkit.org/show_bug.cgi?id=40161 123787 <rdar://problem/7994710> 123788 123789 Null-check the ownerElement of the RenderView's document when unhooking the compositing 123790 root of an iframe whose layers are parented via the enclosing document. Fixes a crash when 123791 dynamically removing such an iframe. 123792 123793 Test: compositing/iframes/remove-iframe-crash.html 123794 123795 * rendering/RenderLayerCompositor.cpp: 123796 (WebCore::RenderLayerCompositor::detachRootPlatformLayer): 123797 123798 2010-06-11 Abhishek Arya <inferno (a] chromium.org> 123799 123800 Reviewed by David Hyatt. 123801 123802 Don't process floats if parent node is not a RenderBlock. 123803 https://bugs.webkit.org/show_bug.cgi?id=40033 123804 123805 Test: svg/text/clear-floats-crash.svg 123806 123807 * rendering/RenderBlock.cpp: 123808 (WebCore::RenderBlock::clearFloats): 123809 123810 2010-06-11 Sheriff Bot <webkit.review.bot (a] gmail.com> 123811 123812 Unreviewed, rolling out r61036. 123813 http://trac.webkit.org/changeset/61036 123814 https://bugs.webkit.org/show_bug.cgi?id=40499 123815 123816 broke chromium compile (Requested by jamesr on #webkit). 123817 123818 * bindings/v8/SerializedScriptValue.cpp: 123819 * bindings/v8/SerializedScriptValue.h: 123820 (WebCore::SerializedScriptValue::deserializeAndSetProperty): 123821 (WebCore::SerializedScriptValue::create): 123822 (WebCore::SerializedScriptValue::createFromWire): 123823 (WebCore::SerializedScriptValue::release): 123824 (WebCore::SerializedScriptValue::SerializedScriptValue): 123825 123826 2010-06-11 Kenneth Russell <kbr (a] google.com> 123827 123828 Reviewed by Dimitri Glazkov. 123829 123830 Add texImage2D and texSubImage2D signatures with internal format, etc. 123831 https://bugs.webkit.org/show_bug.cgi?id=40318 123832 123833 Added new texImage2D and texSubImage2D entry points following 123834 WebGL specification changes. Added UNPACK_FLIP_Y_WEBGL and 123835 UNPACK_PREMULTIPLY_ALPHA_WEBGL pixelStorei parameters, honored 123836 them for the new entry points taking HTML elements, and added 123837 support to getParameter. Added warnings to the console for calls 123838 to the obsolete entry points, which will be removed in a few 123839 weeks. Updated all layout tests to use the new entry points and 123840 pixelStorei parameters, and associated expectations. No other new 123841 tests. 123842 123843 * html/canvas/WebGLRenderingContext.cpp: 123844 (WebCore::WebGLRenderingContext::WebGLRenderingContext): 123845 (WebCore::WebGLRenderingContext::getParameter): 123846 (WebCore::WebGLRenderingContext::pixelStorei): 123847 (WebCore::WebGLRenderingContext::texImage2DImpl): 123848 (WebCore::WebGLRenderingContext::texImage2D): 123849 (WebCore::WebGLRenderingContext::texSubImage2DImpl): 123850 (WebCore::WebGLRenderingContext::texSubImage2D): 123851 (WebCore::WebGLRenderingContext::printWarningToConsole): 123852 * html/canvas/WebGLRenderingContext.h: 123853 * html/canvas/WebGLRenderingContext.idl: 123854 * platform/graphics/GraphicsContext3D.h: 123855 (WebCore::GraphicsContext3D::): 123856 123857 2010-06-11 James Robinson <jamesr (a] chromium.org> 123858 123859 Reviewed by Dimitri Glazkov. 123860 123861 [chromium] Skia mispaints pages with border-radius 123862 https://bugs.webkit.org/show_bug.cgi?id=40456 123863 123864 Skia mispaints pages that have border radius set in some cases. The bug is in the anti aliased 123865 clip path logic used to implement anti aliased curves in Skia. Since Skia internally only supports 123866 1-bit clips, anti aliased clipping is emulated by creating a new alpha layer, storing a set of 123867 clip paths on the side, and then 'erasing' the regions outside the clip. See r49641. 123868 PlatformContextSkia maintains a stack of PlatformContextSkia::State objects that preserve information 123869 like fill color, drawing mode, etc that is manipulated by GraphicsContext::save() / 123870 GraphicsContext::restore() calls as well some internal functions. Whenever a new State object is pushed 123871 a new copy of the current State object is pushed onto the top of this stack using the copy c'tor. The 123872 set of anti alias clip paths is also stored on the State object, but not copied when new entries are 123873 added as the paths only apply to that entry on the stack. 123874 123875 The bug is that the state stack is stored in a WTF::Vector. When this vector exceeds its capacity 123876 (by default at 16 elements) all of the existing State entries are copied into the new buffer using 123877 State's copy constructor. This does not preserve the anti alias clip paths, so when the State entries 123878 are popped the anti aliasing info is lost. This corrupts all further paint operations since it results 123879 in inbalanced save/restore calls to the underlying SkCanvas. 123880 123881 The fix is to make the PlatformContextSkia::State copy constructor copy all fields and to add a new 123882 function PlatformContextSkia::State::cloneInheritedProperties to use when pushing new State entries 123883 that copies everything except for the anti aliased clip paths. 123884 123885 Test: fast/css/nested-rounded-corners.html 123886 123887 * platform/graphics/skia/PlatformContextSkia.cpp: 123888 (PlatformContextSkia::State::State): 123889 (PlatformContextSkia::State::cloneInheritedProperties): 123890 (PlatformContextSkia::save): 123891 123892 2010-06-11 Jeremy Orlow <jorlow (a] chromium.org> 123893 123894 Reviewed by Darin Fisher. 123895 123896 [V8] Clean up SerializedScriptValue 123897 https://bugs.webkit.org/show_bug.cgi?id=40482 123898 123899 SerializedScriptValue doesn't follow WebKit's style guidelines very well 123900 and needlessly inlines quite a bit within the .h file. This change cleans 123901 things up. No funcitonal changes. 123902 123903 No change in behavior. 123904 123905 * bindings/v8/SerializedScriptValue.cpp: 123906 (WebCore::SerializedScriptValue::deserializeAndSetProperty): 123907 (WebCore::SerializedScriptValue::create): 123908 (WebCore::SerializedScriptValue::createFromWire): 123909 (WebCore::SerializedScriptValue::release): 123910 (WebCore::SerializedScriptValue::SerializedScriptValue): 123911 * bindings/v8/SerializedScriptValue.h: 123912 123913 2010-06-11 Anton Muhin <antonm (a] chromium.org> 123914 123915 Reviewed by Adam Barth. 123916 123917 [v8] Introduce single element caches for WebCore::String to v8::String conversions 123918 https://bugs.webkit.org/show_bug.cgi?id=40435 123919 Measurements show that for some web apps (GMail, Wave) and some scenarios 123920 (intensive reading and/or keeping a tab open for a long time), 123921 hit rate lies in 30--50% interval. 123922 Inlining fast case gives another minor performance win. 123923 123924 * bindings/v8/V8Binding.cpp: 123925 (WebCore::getStringCache): 123926 (WebCore::v8ExternalStringSlow): 123927 * bindings/v8/V8Binding.h: 123928 (WebCore::v8ExternalString): 123929 123930 2010-06-11 Leandro Pereira <leandro (a] profusion.mobi> 123931 123932 Reviewed by Gustavo Noronha Silva. 123933 123934 [EFL] Build fix: remove unneeded file (npapi.cpp) and add 123935 other files that got added to the tree. 123936 http://webkit.org/b/40331 123937 123938 * CMakeLists.txt: 123939 * CMakeListsEfl.txt: 123940 123941 2010-06-11 Tony Gentilcore <tonyg (a] chromium.org> 123942 123943 Reviewed by Eric Seidel. 123944 123945 Fix fast/forms/preserveFormDuringResidualStyle.html for HTML5 Parser. 123946 https://bugs.webkit.org/show_bug.cgi?id=40454 123947 123948 This required exposing the HTMLParser which we definitely don't want to 123949 do, but the good news is that it can go away when the HTMLParser goes 123950 away. 123951 123952 No new tests because covered by fast/forms/preserve/FormDuringResidualStyle.html. 123953 123954 * dom/Tokenizer.h: 123955 (WebCore::Tokenizer::htmlParser): 123956 * html/HTML5Tokenizer.cpp: 123957 (WebCore::HTML5Tokenizer::htmlParser): 123958 * html/HTML5Tokenizer.h: 123959 * html/HTML5TreeBuilder.h: 123960 (WebCore::HTML5TreeBuilder::htmlParser): 123961 * html/HTMLFormControlElement.cpp: 123962 (WebCore::HTMLFormControlElement::removedFromTree): 123963 * html/HTMLTokenizer.h: 123964 (WebCore::HTMLTokenizer::htmlParser): 123965 123966 2010-06-11 Kenneth Russell <kbr (a] google.com> 123967 123968 Reviewed by Dimitri Glazkov. 123969 123970 Delete custom JSC bindings for bufferData, texImage2D and texSubImage2D 123971 https://bugs.webkit.org/show_bug.cgi?id=40443 123972 123973 Deleted custom JSC bindings for bufferData, texImage2D and 123974 texSubImage2D and fixed minor associated issues in code generator 123975 and IDL. Updated fast/canvas/webgl/texImageTest-expected.txt, 123976 which now runs as intended. Ran all layout tests, including WebGL 123977 tests, in Safari. 123978 123979 * bindings/js/JSWebGLRenderingContextCustom.cpp: 123980 - Deleted custom bindings. 123981 * bindings/scripts/CodeGeneratorJS.pm: 123982 - Made overload helper functions static to fix compiler warnings. 123983 - Added needed isObject check for overloads between object and non-object arguments. 123984 - Added JSValue::encode to exception return path, needed on Leopard in particular. 123985 * html/HTMLCanvasElement.idl: 123986 * html/HTMLImageElement.idl: 123987 * html/HTMLVideoElement.idl: 123988 - Added GenerateNativeConverter extended attribute. 123989 * html/canvas/WebGLRenderingContext.idl: 123990 - Deleted #ifdefs for custom JSC bindings. 123991 123992 2010-06-11 Kevin Ollivier <kevino (a] theolliviers.com> 123993 123994 [wx] Build fix, add KillRingNone.cpp until we can implement it. 123995 123996 * wscript: 123997 123998 2010-06-11 Hans Wennborg <hans (a] chromium.org> 123999 124000 Reviewed by Jeremy Orlow. 124001 124002 DOM storage should only create databases when needed 124003 https://bugs.webkit.org/show_bug.cgi?id=40301 124004 124005 As soon as a page attempts to use localstorage, StorageAreaSync will 124006 create an empty database if one doesn't already exist. This can lead to 124007 lots of unnecessary database files. In particular, they are created 124008 even when the privacy settings or private browsing mode disallow 124009 localstorage data, which may seem odd to the user. 124010 124011 Database creation should be put off in StorageAreaSync until it is time 124012 to actually write something to the database. 124013 124014 Tests: 124015 manual-tests/localstorage-empty-database.html 124016 124017 * manual-tests/localstorage-empty-database.html: Added. 124018 * storage/StorageAreaSync.cpp: 124019 (WebCore::StorageAreaSync::StorageAreaSync): 124020 (WebCore::StorageAreaSync::openDatabase): 124021 (WebCore::StorageAreaSync::performImport): 124022 (WebCore::StorageAreaSync::sync): 124023 * storage/StorageAreaSync.h: 124024 (WebCore::StorageAreaSync::): 124025 124026 2010-06-11 Ilya Tikhonovsky <loislo (a] chromium.org> 124027 124028 Reviewed by Eric Seidel. 124029 124030 Perl scripts for bindings don't use strict keyword. 124031 As result some problems in the script code were not detected at compile stage. 124032 https://bugs.webkit.org/show_bug.cgi?id=40468 124033 124034 * bindings/scripts/CodeGenerator.pm: 124035 * bindings/scripts/IDLParser.pm: 124036 * bindings/scripts/IDLStructure.pm: 124037 124038 2010-06-11 Eric Seidel <eric (a] webkit.org> 124039 124040 Reviewed by Adam Barth. 124041 124042 HTML5Tokenizer should not delete itself while running scripts 124043 https://bugs.webkit.org/show_bug.cgi?id=40458 124044 124045 Tested by fast/dom/document-clear.html 124046 124047 * html/HTML5Tokenizer.cpp: 124048 (WebCore::HTML5Tokenizer::attemptToEnd): 124049 - Don't ever end() while running scripts. 124050 This matches the old HTMLTokenizer.cpp 124051 124052 2010-06-11 Zhenyao Mo <zmo (a] google.com> 124053 124054 Reviewed by Dimitri Glazkov. 124055 124056 getActiveUniform must ensure names of arrays end in "[0]" 124057 https://bugs.webkit.org/show_bug.cgi?id=38709 124058 124059 Test: fast/canvas/webgl/get-active-test.html 124060 124061 * html/canvas/WebGLRenderingContext.cpp: 124062 (WebCore::WebGLRenderingContext::getActiveAttrib): Append "[0]" to the name if needed. 124063 124064 2010-06-11 Zhenyao Mo <zmo (a] google.com> 124065 124066 Reviewed by Dimitri Glazkov. 124067 124068 readPixels with negative width/height should generate INVALID_VALUE and return 124069 https://bugs.webkit.org/show_bug.cgi?id=39704 124070 124071 * html/canvas/WebGLRenderingContext.cpp: Deal with negative width/height. 124072 (WebCore::WebGLRenderingContext::readPixels): 124073 * html/canvas/WebGLRenderingContext.h: Change width/height type from unsigned long to long. 124074 * html/canvas/WebGLRenderingContext.idl: Ditto. 124075 124076 2010-06-11 Zhenyao Mo <zmo (a] google.com> 124077 124078 Reviewed by Dimitri Glazkov. 124079 124080 uniform* entry points must ignore the call if a null WebGLUniformLocation is passed 124081 https://bugs.webkit.org/show_bug.cgi?id=38707 124082 124083 * html/canvas/WebGLRenderingContext.cpp: uniform* entry points ignore the call if a null WebGLUniformLocation is passed. 124084 (WebCore::WebGLRenderingContext::uniform1f): 124085 (WebCore::WebGLRenderingContext::uniform1fv): 124086 (WebCore::WebGLRenderingContext::uniform1i): 124087 (WebCore::WebGLRenderingContext::uniform1iv): 124088 (WebCore::WebGLRenderingContext::uniform2f): 124089 (WebCore::WebGLRenderingContext::uniform2fv): 124090 (WebCore::WebGLRenderingContext::uniform2i): 124091 (WebCore::WebGLRenderingContext::uniform2iv): 124092 (WebCore::WebGLRenderingContext::uniform3f): 124093 (WebCore::WebGLRenderingContext::uniform3fv): 124094 (WebCore::WebGLRenderingContext::uniform3i): 124095 (WebCore::WebGLRenderingContext::uniform3iv): 124096 (WebCore::WebGLRenderingContext::uniform4f): 124097 (WebCore::WebGLRenderingContext::uniform4fv): 124098 (WebCore::WebGLRenderingContext::uniform4i): 124099 (WebCore::WebGLRenderingContext::uniform4iv): 124100 (WebCore::WebGLRenderingContext::uniformMatrix2fv): 124101 (WebCore::WebGLRenderingContext::uniformMatrix3fv): 124102 (WebCore::WebGLRenderingContext::uniformMatrix4fv): 124103 124104 2010-06-11 Zhenyao Mo <zmo (a] google.com> 124105 124106 Reviewed by Dimitri Glazkov. 124107 124108 drawElements/drawArrays should validate input parameters according to GLES2 spec 124109 https://bugs.webkit.org/show_bug.cgi?id=38700 124110 124111 Tests: fast/canvas/webgl/draw-arrays-out-of-bounds.html 124112 fast/canvas/webgl/draw-elements-out-of-bounds.html 124113 124114 * html/canvas/WebGLRenderingContext.cpp: 124115 (WebCore::WebGLRenderingContext::drawArrays): Validate input parameters. 124116 (WebCore::WebGLRenderingContext::drawElements): Ditto. 124117 (WebCore::WebGLRenderingContext::validateDrawMode): Validate mode for draw{Arrays/Elements}. 124118 * html/canvas/WebGLRenderingContext.h: Add validateDrawMode, fix incorrect parameter types. 124119 * html/canvas/WebGLRenderingContext.idl: Fix incorrect parameter types. 124120 124121 2010-06-11 Luiz Agostini <luiz.agostini (a] openbossa.org> 124122 124123 Reviewed by Antti Koivisto. 124124 124125 CSS3 Media Queries are not serialized according to CSSOM 124126 https://bugs.webkit.org/show_bug.cgi?id=39220 124127 124128 MediaQuery serialization according to specification 124129 http://dev.w3.org/csswg/cssom/#serializing-media-queries. 124130 124131 MediaQuery objects now ignore duplicated expressions. MediaQueryEvaluator::eval() 124132 now does not proccess MediaQuery objects that are known to be invalid. 124133 124134 Test: fast/media/media-query-serialization.html 124135 124136 * css/MediaQuery.cpp: 124137 (WebCore::stringCompare): 124138 (WebCore::MediaQuery::serialize): 124139 (WebCore::MediaQuery::MediaQuery): 124140 (WebCore::MediaQuery::~MediaQuery): 124141 (WebCore::MediaQuery::operator==): 124142 (WebCore::MediaQuery::cssText): 124143 (WebCore::MediaQuery::append): 124144 * css/MediaQuery.h: 124145 (WebCore::MediaQuery::ignored): 124146 (WebCore::MediaQuery::begin): 124147 (WebCore::MediaQuery::end): 124148 * css/MediaQueryExp.cpp: 124149 (WebCore::MediaQueryExp::serialize): 124150 * css/MediaQueryExp.h: 124151 * css/MediaQueryEvaluator.cpp: 124152 (WebCore::MediaQueryEvaluator::eval): 124153 124154 124155 2010-06-10 Jeremy Orlow <jorlow (a] chromium.org> 124156 124157 Reviewed by Steve Block. 124158 124159 Implement more of IndexedDB's Indexes and ObjectStores 124160 https://bugs.webkit.org/show_bug.cgi?id=40424 124161 124162 Clean up both of these classes a bit and add create/open/remove 124163 methods as needed. 124164 124165 Tests in a future patch (promise). 124166 124167 * storage/IDBDatabase.h: 124168 * storage/IDBDatabaseImpl.cpp: 124169 (WebCore::IDBDatabaseImpl::objectStores): 124170 (WebCore::IDBDatabaseImpl::createObjectStore): 124171 (WebCore::IDBDatabaseImpl::objectStore): 124172 (WebCore::IDBDatabaseImpl::removeObjectStore): 124173 * storage/IDBDatabaseImpl.h: 124174 (WebCore::IDBDatabaseImpl::name): 124175 (WebCore::IDBDatabaseImpl::description): 124176 (WebCore::IDBDatabaseImpl::version): 124177 * storage/IDBDatabaseRequest.cpp: 124178 (WebCore::IDBDatabaseRequest::IDBDatabaseRequest): 124179 (WebCore::IDBDatabaseRequest::createObjectStore): 124180 (WebCore::IDBDatabaseRequest::objectStore): 124181 (WebCore::IDBDatabaseRequest::removeObjectStore): 124182 * storage/IDBDatabaseRequest.h: 124183 (WebCore::IDBDatabaseRequest::create): 124184 (WebCore::IDBDatabaseRequest::name): 124185 (WebCore::IDBDatabaseRequest::description): 124186 (WebCore::IDBDatabaseRequest::version): 124187 (WebCore::IDBDatabaseRequest::objectStores): 124188 * storage/IDBDatabaseRequest.idl: 124189 * storage/IDBObjectStore.h: 124190 * storage/IDBObjectStoreImpl.h: 124191 * storage/IDBObjectStoreRequest.cpp: 124192 (WebCore::IDBObjectStoreRequest::get): 124193 (WebCore::IDBObjectStoreRequest::add): 124194 (WebCore::IDBObjectStoreRequest::modify): 124195 (WebCore::IDBObjectStoreRequest::addOrModify): 124196 (WebCore::IDBObjectStoreRequest::remove): 124197 (WebCore::IDBObjectStoreRequest::createIndex): 124198 (WebCore::IDBObjectStoreRequest::index): 124199 (WebCore::IDBObjectStoreRequest::removeIndex): 124200 * storage/IDBObjectStoreRequest.h: 124201 * storage/IDBObjectStoreRequest.idl: 124202 124203 2010-06-11 Alexander Pavlov <apavlov (a] chromium.org> 124204 124205 Reviewed by Pavel Feldman. 124206 124207 Web Inspector: Enable serialization/deserialization of the frontend state 124208 https://bugs.webkit.org/show_bug.cgi?id=40228 124209 124210 * inspector/InspectorBackend.cpp: 124211 (WebCore::InspectorBackend::saveApplicationSettings): 124212 (WebCore::InspectorBackend::saveSessionSettings): 124213 * inspector/InspectorBackend.h: 124214 * inspector/InspectorBackend.idl: 124215 * inspector/InspectorController.cpp: 124216 (WebCore::InspectorController::InspectorController): 124217 (WebCore::InspectorController::setSessionSettings): 124218 (WebCore::InspectorController::populateScriptObjects): 124219 (WebCore::InspectorController::didCommitLoad): 124220 * inspector/InspectorController.h: 124221 * inspector/InspectorFrontend.cpp: 124222 (WebCore::InspectorFrontend::populateApplicationSettings): 124223 (WebCore::InspectorFrontend::populateSessionSettings): 124224 * inspector/InspectorFrontend.h: 124225 * inspector/front-end/ConsoleView.js: 124226 (WebInspector.ConsoleView.prototype._settingsLoaded): 124227 (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): 124228 (WebInspector.ConsoleView.prototype._enterKeyPressed): 124229 * inspector/front-end/EventListenersSidebarPane.js: 124230 (WebInspector.EventListenersSidebarPane.prototype._settingsLoaded): 124231 (WebInspector.EventListenersSidebarPane.prototype): 124232 (): 124233 * inspector/front-end/InspectorBackendStub.js: 124234 (.WebInspector.InspectorBackendStub.prototype.saveApplicationSettings): 124235 (.WebInspector.InspectorBackendStub.prototype.saveSessionSettings): 124236 * inspector/front-end/ResourceView.js: 124237 (WebInspector.ResourceView.prototype._selectTab): 124238 (WebInspector.ResourceView.prototype._selectHeadersTab): 124239 (WebInspector.ResourceView.prototype.selectContentTab): 124240 * inspector/front-end/ResourcesPanel.js: 124241 (WebInspector.ResourcesPanel.prototype._createStatusbarButtons): 124242 (WebInspector.ResourcesPanel.prototype._settingsLoaded): 124243 (WebInspector.ResourcesPanel.prototype._toggleLargerResources): 124244 * inspector/front-end/ScriptsPanel.js: 124245 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 124246 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): 124247 * inspector/front-end/Settings.js: 124248 (WebInspector.populateApplicationSettings): 124249 (WebInspector.populateSessionSettings): 124250 (WebInspector.Settings): 124251 (WebInspector.Settings.prototype.reset): 124252 (WebInspector.Settings.prototype._load): 124253 (WebInspector.Settings.prototype._set): 124254 * inspector/front-end/StylesSidebarPane.js: 124255 (WebInspector.StylesSidebarPane.prototype._settingsLoaded): 124256 (WebInspector.StylesSidebarPane.prototype.update): 124257 (WebInspector.StylesSidebarPane.prototype._changeSetting): 124258 (WebInspector.StylesSidebarPane.prototype._changeColorFormat): 124259 (WebInspector.ComputedStyleSidebarPane.settingsLoaded): 124260 (WebInspector.ComputedStyleSidebarPane.showInheritedToggleFunction): 124261 (WebInspector.ComputedStyleSidebarPane): 124262 * inspector/front-end/WatchExpressionsSidebarPane.js: 124263 (WebInspector.WatchExpressionsSidebarPane): 124264 (WebInspector.WatchExpressionsSidebarPane.prototype._settingsLoaded): 124265 (WebInspector.WatchExpressionsSection): 124266 (WebInspector.WatchExpressionsSection.prototype.saveExpressions): 124267 * inspector/front-end/inspector.js: 124268 (WebInspector.loaded): 124269 (WebInspector.reset): 124270 124271 2010-06-10 Pavel Feldman <pfeldman (a] chromium.org> 124272 124273 Reviewed by Yury Semikhatsky. 124274 124275 Web Inspector: Port performSearch from InjectedScript to InspectorDOMAgent. 124276 124277 https://bugs.webkit.org/show_bug.cgi?id=40422 124278 124279 * inspector/InjectedScriptHost.cpp: 124280 (WebCore::InjectedScriptHost::addNodesToSearchResult): 124281 * inspector/InspectorBackend.cpp: 124282 (WebCore::InspectorBackend::performSearch): 124283 (WebCore::InspectorBackend::searchCanceled): 124284 * inspector/InspectorBackend.h: 124285 * inspector/InspectorBackend.idl: 124286 * inspector/InspectorDOMAgent.cpp: 124287 (WebCore::): 124288 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 124289 (WebCore::InspectorDOMAgent::~InspectorDOMAgent): 124290 (WebCore::InspectorDOMAgent::performSearch): 124291 (WebCore::InspectorDOMAgent::searchCanceled): 124292 (WebCore::InspectorDOMAgent::onMatchJobsTimer): 124293 (WebCore::InspectorDOMAgent::reportNodesAsSearchResults): 124294 * inspector/InspectorDOMAgent.h: 124295 (WebCore::MatchJob::~MatchJob): 124296 (WebCore::MatchJob::MatchJob): 124297 (WebCore::MatchJob::addNodesToResults): 124298 * inspector/InspectorFrontend.cpp: 124299 (WebCore::InspectorFrontend::addNodesToSearchResult): 124300 * inspector/InspectorFrontend.h: 124301 * inspector/InspectorResource.cpp: 124302 (WebCore::InspectorResource::updateScriptObject): 124303 * inspector/front-end/ElementsPanel.js: 124304 (WebInspector.ElementsPanel.prototype.searchCanceled): 124305 (WebInspector.ElementsPanel.prototype.performSearch): 124306 (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): 124307 * inspector/front-end/InjectedScript.js: 124308 (injectedScriptConstructor): 124309 * inspector/front-end/InjectedScriptAccess.js: 124310 124311 2010-06-11 Mikhail Naganov <mnaganov (a] chromium.org> 124312 124313 Reviewed by Pavel Feldman. 124314 124315 [Chromium] Restore 'console.profiles' access. 124316 124317 https://bugs.webkit.org/show_bug.cgi?id=39840 124318 124319 * bindings/v8/ScriptProfiler.cpp: 124320 (WebCore::ScriptProfiler::stop): 124321 * bindings/v8/custom/V8ConsoleCustom.cpp: 124322 (WebCore::V8Console::profilesAccessorGetter): 124323 * inspector/InspectorController.cpp: 124324 (WebCore::InspectorController::stopUserInitiatedProfiling): 124325 124326 2010-06-10 Nikita Vasilyev <me (a] elv1s.ru> 124327 124328 Reviewed by Pavel Feldman. 124329 124330 Web Inspector: Make a close brace in Styles pane selectable. 124331 https://bugs.webkit.org/show_bug.cgi?id=40157 124332 124333 * inspector/front-end/inspector.css: 124334 (.styles-selector): 124335 (.styles-section .properties li): 124336 (.styles-section): 124337 124338 2010-06-11 Yury Semikhatsky <yurys (a] chromium.org> 124339 124340 Reviewed by Pavel Feldman. 124341 124342 Web Inspector: localize missing script source message 124343 https://bugs.webkit.org/show_bug.cgi?id=40467 124344 124345 * English.lproj/localizedStrings.js: 124346 * inspector/InspectorController.cpp: 124347 (WebCore::InspectorController::didParseSource): fixed typo in comment. 124348 124349 2010-06-11 Zhenyao Mo <zmo (a] google.com> 124350 124351 Reviewed by Dimitri Glazkov. 124352 124353 Vertex attributes enabled as arrays but not bound to buffers must generate INVALID_OPERATION 124354 https://bugs.webkit.org/show_bug.cgi?id=40315 124355 124356 * html/canvas/WebGLRenderingContext.cpp: 124357 (WebCore::WebGLRenderingContext::validateRenderingState): Check if an enabled vertext attribs is bound to a buffer. 124358 (WebCore::WebGLRenderingContext::vertexAttribPointer): Set bound buffer in vertex attrib state. 124359 * html/canvas/WebGLRenderingContext.h: Add a member in vertex attrib state to track bound buffer. 124360 124361 2010-05-31 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 124362 124363 Reviewed by Simon Hausmann. 124364 124365 [Qt] Implement the simple text code path. 124366 https://bugs.webkit.org/show_bug.cgi?id=40077 124367 124368 Remove the FONT_FAST_PATH macro and use the Qt's 124369 fast text implementation instead of the one of WebKit. 124370 124371 The Qt::TextBypassShaping flag is used to tell Qt to 124372 only use the glyph advances. 124373 124374 Qt 4.7 is needed to get this flag thus the complex path is always 124375 used if QtWebKit is compiled against an earlier version. 124376 124377 Contrary to the WebKit's implementation, the complex code path 124378 is taken if the text is RightToLeft, justified or is formatted 124379 with non-zero letter or word spacing. 124380 124381 * platform/graphics/Font.cpp: 124382 (WebCore::Font::drawText): 124383 (WebCore::Font::floatWidth): 124384 (WebCore::Font::selectionRectForText): 124385 (WebCore::Font::offsetForPosition): 124386 * platform/graphics/Font.h: 124387 (WebCore::Font::isRoundingHackCharacter): 124388 * platform/graphics/qt/FontQt.cpp: 124389 (WebCore::fromRawDataWithoutRef): 124390 (WebCore::needComplexCodePath): 124391 (WebCore::setupPlatformContext): 124392 (WebCore::Font::canReturnFallbackFontsForComplexText): 124393 (WebCore::Font::drawSimpleText): 124394 (WebCore::Font::drawComplexText): 124395 (WebCore::Font::floatWidthForSimpleText): 124396 (WebCore::Font::offsetForPositionForSimpleText): 124397 (WebCore::Font::selectionRectForSimpleText): 124398 124399 2010-06-03 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 124400 124401 Reviewed by Simon Hausmann. 124402 124403 Move the text code path detection code from FontFastPath.cpp to Font.cpp. 124404 https://bugs.webkit.org/show_bug.cgi?id=40077 124405 124406 This is a patch preliminary to the implementation of the 124407 simple font code path for the Qt port. 124408 124409 * platform/graphics/Font.cpp: 124410 (WebCore::Font::setCodePath): 124411 (WebCore::Font::codePath): 124412 * platform/graphics/Font.h: 124413 * platform/graphics/FontFastPath.cpp: 124414 124415 2010-06-11 Sterling Swigart <sswigart (a] google.com> 124416 124417 Reviewed by Dmitry Titov. 124418 124419 Added AsyncImageResizer and ImageResizerThread classes, which after further 124420 patches will be capable of resizing images. 124421 https://bugs.webkit.org/show_bug.cgi?id=40018 124422 124423 * Android.mk: 124424 * CMakeLists.txt: 124425 * GNUmakefile.am: 124426 * WebCore.gypi: 124427 * WebCore.pro: 124428 * WebCore.vcproj/WebCore.vcproj: 124429 * WebCore.xcodeproj/project.pbxproj: 124430 * html/AsyncImageResizer.cpp: Added. 124431 (WebCore::AsyncImageResizer::create): 124432 (WebCore::AsyncImageResizer::AsyncImageResizer): 124433 (WebCore::AsyncImageResizer::~AsyncImageResizer): 124434 (WebCore::AsyncImageResizer::notifyFinished): 124435 * html/AsyncImageResizer.h: Added. 124436 (WebCore::AsyncImageResizer::CallbackInfo::CallbackInfo): 124437 (WebCore::AsyncImageResizer::): 124438 (WebCore::AsyncImageResizer::resizeComplete): 124439 (WebCore::AsyncImageResizer::resizeError): 124440 * html/ImageResizerThread.cpp: Added. 124441 (WebCore::returnBlobOrError): 124442 (WebCore::ImageResizerThread::start): 124443 (WebCore::ImageResizerThread::ImageResizerThread): 124444 (WebCore::ImageResizerThread::~ImageResizerThread): 124445 (WebCore::ImageResizerThread::imageResizerThreadStart): 124446 (WebCore::ImageResizerThread::imageResizerThread): 124447 * html/ImageResizerThread.h: Added. 124448 124449 2010-06-11 Steve Block <steveblock (a] google.com> 124450 124451 Reviewed by Alexey Proskuryakov. 124452 124453 Client-based Geolocation does not handle multiple simultaneous requests 124454 https://bugs.webkit.org/show_bug.cgi?id=40148 124455 124456 Test: fast/dom/Geolocation/multiple-requests.html 124457 124458 The Geolocation must handle multiple calls to addObserver() from the same Geolocation object. 124459 124460 * page/GeolocationController.cpp: 124461 (WebCore::GeolocationController::addObserver): 124462 124463 2010-06-11 Nikita Vasilyev <me (a] elv1s.ru> 124464 124465 Reviewed by Pavel Feldman. 124466 124467 Web Inspector: When completing using a tab key, select very first value, not a second. 124468 https://bugs.webkit.org/show_bug.cgi?id=40409 124469 124470 * inspector/front-end/TextPrompt.js: 124471 (WebInspector.TextPrompt.prototype._completionsReady): 124472 124473 2010-06-10 Yuzo Fujishima <yuzo (a] google.com> 124474 124475 Reviewed by Shinichiro Hamaji. 124476 124477 Implement render style selection for pages to support CSS3 Paged Media. 124478 https://bugs.webkit.org/show_bug.cgi?id=35961 124479 124480 Test: printing/page-rule-selection.html 124481 124482 * WebCore.base.exp: 124483 * css/CSSGrammar.y: 124484 * css/CSSSelector.cpp: 124485 (WebCore::CSSSelector::specificity): 124486 (WebCore::CSSSelector::specificityForPage): 124487 * css/CSSSelector.h: 124488 (WebCore::CSSSelector::CSSSelector): 124489 (WebCore::CSSSelector::isForPage): 124490 (WebCore::CSSSelector::setForPage): 124491 * css/CSSStyleSelector.cpp: 124492 (WebCore::CSSStyleSelector::styleForPage): 124493 (WebCore::CSSStyleSelector::matchPageRules): 124494 (WebCore::CSSStyleSelector::matchPageRulesForList): 124495 (WebCore::CSSStyleSelector::isLeftPage): 124496 (WebCore::CSSStyleSelector::isFirstPage): 124497 (WebCore::CSSStyleSelector::pageName): 124498 * css/CSSStyleSelector.h: 124499 (WebCore::CSSStyleSelector::isRightPage): 124500 * css/html.css: 124501 (@page): 124502 * dom/Document.cpp: 124503 (WebCore::Document::styleForPage): 124504 * dom/Document.h: 124505 * page/PrintContext.cpp: 124506 (WebCore::PrintContext::pageProperty): 124507 * page/PrintContext.h: 124508 124509 124510 2010-06-10 Yuzo Fujishima <yuzo (a] google.com> 124511 124512 Reviewed by Shinichiro Hamaji. 124513 124514 Fix Bug 40452: REGRESSION: printing is broken if stylesheet has @page 124515 https://bugs.webkit.org/show_bug.cgi?id=40452 124516 124517 Test: printing/page-rule-in-media-query.html 124518 124519 * css/CSSStyleSelector.cpp: 124520 (WebCore::CSSRuleSet::addRulesFromSheet): 124521 (WebCore::CSSRuleSet::addStyleRule): 124522 124523 2010-06-10 Sheriff Bot <webkit.review.bot (a] gmail.com> 124524 124525 Unreviewed, rolling out r60989. 124526 http://trac.webkit.org/changeset/60989 124527 https://bugs.webkit.org/show_bug.cgi?id=40462 124528 124529 It makes things crash (Requested by abarth on #webkit). 124530 124531 * dom/Tokenizer.h: 124532 (WebCore::Tokenizer::isHTMLTokenizer): 124533 * html/HTML5Tokenizer.cpp: 124534 * html/HTML5Tokenizer.h: 124535 * html/HTML5TreeBuilder.h: 124536 * html/HTMLFormControlElement.cpp: 124537 (WebCore::HTMLFormControlElement::removedFromTree): 124538 * html/HTMLTokenizer.h: 124539 (WebCore::HTMLTokenizer::isHTMLTokenizer): 124540 (WebCore::HTMLTokenizer::htmlParser): 124541 124542 2010-06-10 Tony Gentilcore <tonyg (a] chromium.org> 124543 124544 Reviewed by Eric Seidel. 124545 124546 Fix fast/forms/preserveFormDuringResidualStyle.html for HTML5 Parser. 124547 https://bugs.webkit.org/show_bug.cgi?id=40454 124548 124549 This required exposing the HTMLParser which we definitely don't want to 124550 do, but the good news is that it can go away when the HTMLParser goes 124551 away. 124552 124553 No new tests because covered by fast/forms/preserve/FormDuringResidualStyle.html. 124554 124555 * dom/Tokenizer.h: 124556 (WebCore::Tokenizer::htmlParser): 124557 * html/HTML5Tokenizer.cpp: 124558 (WebCore::HTML5Tokenizer::htmlParser): 124559 * html/HTML5Tokenizer.h: 124560 * html/HTML5TreeBuilder.h: 124561 (WebCore::HTML5TreeBuilder::htmlParser): 124562 * html/HTMLFormControlElement.cpp: 124563 (WebCore::HTMLFormControlElement::removedFromTree): 124564 * html/HTMLTokenizer.h: 124565 (WebCore::HTMLTokenizer::htmlParser): 124566 124567 2010-06-10 Tony Chang <tony (a] chromium.org> 124568 124569 Reviewed by Kent Tamura. 124570 124571 crash when focus is changed while trying to focus next element 124572 https://bugs.webkit.org/show_bug.cgi?id=40407 124573 124574 Test: fast/events/focus-change-crash.html 124575 124576 * dom/Element.cpp: 124577 (WebCore::Element::focus): 124578 124579 2010-06-10 Sheriff Bot <webkit.review.bot (a] gmail.com> 124580 124581 Unreviewed, rolling out r60979. 124582 http://trac.webkit.org/changeset/60979 124583 https://bugs.webkit.org/show_bug.cgi?id=40450 124584 124585 Broke build on Leopard (Requested by kbr_google on #webkit). 124586 124587 * bindings/js/JSWebGLRenderingContextCustom.cpp: 124588 (WebCore::JSWebGLRenderingContext::bufferData): 124589 (WebCore::JSWebGLRenderingContext::bufferSubData): 124590 (WebCore::JSWebGLRenderingContext::texImage2D): 124591 (WebCore::JSWebGLRenderingContext::texSubImage2D): 124592 * bindings/scripts/CodeGeneratorJS.pm: 124593 * html/HTMLCanvasElement.idl: 124594 * html/HTMLImageElement.idl: 124595 * html/HTMLVideoElement.idl: 124596 * html/canvas/WebGLRenderingContext.idl: 124597 124598 2010-06-10 Kenneth Russell <kbr (a] google.com> 124599 124600 Reviewed by Dimitri Glazkov. 124601 124602 Delete custom JSC bindings for bufferData, texImage2D and texSubImage2D 124603 https://bugs.webkit.org/show_bug.cgi?id=40443 124604 124605 Deleted custom JSC bindings for bufferData, texImage2D and 124606 texSubImage2D and fixed minor associated issues in code generator 124607 and IDL. Updated fast/canvas/webgl/texImageTest-expected.txt, 124608 which now runs as intended. Ran all layout tests, including WebGL 124609 tests, in Safari. 124610 124611 * bindings/js/JSWebGLRenderingContextCustom.cpp: 124612 - Deleted custom bindings. 124613 * bindings/scripts/CodeGeneratorJS.pm: 124614 - Made overload helper functions static to fix compiler warnings. 124615 - Added needed isObject check for overloads between object and non-object arguments. 124616 * html/HTMLCanvasElement.idl: 124617 * html/HTMLImageElement.idl: 124618 * html/HTMLVideoElement.idl: 124619 - Added GenerateNativeConverter extended attribute. 124620 * html/canvas/WebGLRenderingContext.idl: 124621 - Deleted #ifdefs for custom JSC bindings. 124622 124623 2010-06-10 David Hyatt <hyatt (a] apple.com> 124624 124625 Reviewed by John Sullivan. 124626 124627 https://bugs.webkit.org/show_bug.cgi?id=40441, back out the original fix for 29601, since it has broken continuous 124628 wheel delta values. 124629 124630 * platform/mac/WebCoreSystemInterface.h: 124631 * platform/mac/WebCoreSystemInterface.mm: 124632 * platform/mac/WheelEventMac.mm: 124633 (WebCore::PlatformWheelEvent::PlatformWheelEvent): 124634 124635 2010-06-10 Abhishek Arya <inferno (a] chromium.org> 124636 124637 Reviewed by Dimitri Glazkov. 124638 124639 Add null pointer checks for nativeImageForCurrentFrame 124640 function calls. 124641 https://bugs.webkit.org/show_bug.cgi?id=39797 124642 124643 * platform/chromium/PasteboardChromium.cpp: 124644 (WebCore::Pasteboard::writeImage): 124645 * platform/graphics/qt/GraphicsContext3DQt.cpp: 124646 (WebCore::GraphicsContext3D::getImageData): 124647 * platform/qt/PasteboardQt.cpp: 124648 (WebCore::Pasteboard::writeImage): 124649 124650 2010-06-09 Kenneth Russell <kbr (a] google.com> 124651 124652 Reviewed by Dimitri Glazkov. 124653 124654 Implement TypedArray BYTES_PER_ELEMENT 124655 https://bugs.webkit.org/show_bug.cgi?id=39100 124656 124657 Implemented BYTES_PER_ELEMENT on all ArrayBufferView subclasses. 124658 Required bug fixes to JSC bindings' custom constructors. Updated 124659 fast/canvas/webgl/array-unit-tests.html to verify. Ran all WebGL 124660 layout tests in Safari and Chromium. 124661 124662 * bindings/js/JSFloat32ArrayConstructor.cpp: 124663 (WebCore::JSFloat32ArrayConstructor::JSFloat32ArrayConstructor): 124664 (WebCore::JSFloat32ArrayConstructor::getOwnPropertySlot): 124665 (WebCore::JSFloat32ArrayConstructor::getOwnPropertyDescriptor): 124666 * bindings/js/JSFloat32ArrayConstructor.h: 124667 (WebCore::JSFloat32ArrayConstructor::createStructure): 124668 * bindings/js/JSInt16ArrayConstructor.cpp: 124669 (WebCore::JSInt16ArrayConstructor::JSInt16ArrayConstructor): 124670 (WebCore::JSInt16ArrayConstructor::getOwnPropertySlot): 124671 (WebCore::JSInt16ArrayConstructor::getOwnPropertyDescriptor): 124672 * bindings/js/JSInt16ArrayConstructor.h: 124673 (WebCore::JSInt16ArrayConstructor::createStructure): 124674 * bindings/js/JSInt32ArrayConstructor.cpp: 124675 (WebCore::JSInt32ArrayConstructor::JSInt32ArrayConstructor): 124676 (WebCore::JSInt32ArrayConstructor::getOwnPropertySlot): 124677 (WebCore::JSInt32ArrayConstructor::getOwnPropertyDescriptor): 124678 * bindings/js/JSInt32ArrayConstructor.h: 124679 (WebCore::JSInt32ArrayConstructor::createStructure): 124680 * bindings/js/JSInt8ArrayConstructor.cpp: 124681 (WebCore::JSInt8ArrayConstructor::JSInt8ArrayConstructor): 124682 (WebCore::JSInt8ArrayConstructor::getOwnPropertySlot): 124683 (WebCore::JSInt8ArrayConstructor::getOwnPropertyDescriptor): 124684 * bindings/js/JSInt8ArrayConstructor.h: 124685 (WebCore::JSInt8ArrayConstructor::createStructure): 124686 * bindings/js/JSUint16ArrayConstructor.cpp: 124687 (WebCore::JSUint16ArrayConstructor::JSUint16ArrayConstructor): 124688 (WebCore::JSUint16ArrayConstructor::getOwnPropertySlot): 124689 (WebCore::JSUint16ArrayConstructor::getOwnPropertyDescriptor): 124690 * bindings/js/JSUint16ArrayConstructor.h: 124691 (WebCore::JSUint16ArrayConstructor::createStructure): 124692 * bindings/js/JSUint32ArrayConstructor.cpp: 124693 (WebCore::JSUint32ArrayConstructor::JSUint32ArrayConstructor): 124694 (WebCore::JSUint32ArrayConstructor::getOwnPropertySlot): 124695 (WebCore::JSUint32ArrayConstructor::getOwnPropertyDescriptor): 124696 * bindings/js/JSUint32ArrayConstructor.h: 124697 (WebCore::JSUint32ArrayConstructor::createStructure): 124698 * bindings/js/JSUint8ArrayConstructor.cpp: 124699 (WebCore::JSUint8ArrayConstructor::JSUint8ArrayConstructor): 124700 (WebCore::JSUint8ArrayConstructor::getOwnPropertySlot): 124701 (WebCore::JSUint8ArrayConstructor::getOwnPropertyDescriptor): 124702 * bindings/js/JSUint8ArrayConstructor.h: 124703 (WebCore::JSUint8ArrayConstructor::createStructure): 124704 * html/canvas/Float32Array.idl: 124705 * html/canvas/Int16Array.idl: 124706 * html/canvas/Int32Array.idl: 124707 * html/canvas/Int8Array.idl: 124708 * html/canvas/Uint16Array.idl: 124709 * html/canvas/Uint32Array.idl: 124710 * html/canvas/Uint8Array.idl: 124711 124712 2010-06-10 Eric Seidel <eric (a] webkit.org> 124713 124714 Reviewed by Adam Barth. 124715 124716 HTML5 Parser should continue parsing after script execution 124717 https://bugs.webkit.org/show_bug.cgi?id=40416 124718 124719 The previous code was just wrong. We were always blocking 124720 the parser after any script execution. Now we correctly continue 124721 parsing after a successful script execution and only block the 124722 parser when we weren't able to execute the script immediately. 124723 124724 Added a new haveParsingBlockingScript() function to HTML5ScriptRunner 124725 to make some of the code more self-documenting. 124726 124727 Test: fast/tokenizer/write-multiple-scripts.html 124728 fast/js/implicit-call-with-global-reentry.html 124729 124730 * html/HTML5ScriptRunner.cpp: 124731 (WebCore::HTML5ScriptRunner::execute): 124732 - Remove some old (now bogus) FIXMEs and notImplemented() calls. 124733 - Fix the logic to match the HTML5 spec by continuing parsing 124734 after script execution and only blocking the parser when the 124735 script wasn't able to immediately run. 124736 (WebCore::HTML5ScriptRunner::haveParsingBlockingScript): 124737 - New function to make some of the code read better. 124738 (WebCore::HTML5ScriptRunner::executeParsingBlockingScripts): 124739 - Use haveParsingBlockingScript(). 124740 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 124741 - Use haveParsingBlockingScript(). 124742 (WebCore::HTML5ScriptRunner::runScript): 124743 - Use haveParsingBlockingScript(). 124744 * html/HTML5ScriptRunner.h: 124745 124746 2010-06-10 Yury Semikhatsky <yurys (a] chromium.org> 124747 124748 Reviewed by Pavel Feldman. 124749 124750 Web Inspector: to reduce the front end start up time don't push script 124751 sources to frontend if debugger is always enabled, instead request 124752 script content lazily at the moment it should be displyed. It is critical for 124753 always enabled debugger because in that case lots of script may have 124754 already been parsed when the front end is opening and pushing all 124755 of them at once may slow things down(even though the script sources will never 124756 be used if scripts panel isn't open). 124757 https://bugs.webkit.org/show_bug.cgi?id=40364 124758 124759 * inspector/InspectorBackend.cpp: 124760 (WebCore::InspectorBackend::getScriptSource): 124761 * inspector/InspectorBackend.h: 124762 * inspector/InspectorBackend.idl: 124763 * inspector/InspectorController.cpp: 124764 (WebCore::InspectorController::didCommitLoad): 124765 (WebCore::InspectorController::getScriptSource): 124766 (WebCore::InspectorController::didParseSource): 124767 * inspector/InspectorController.h: 124768 * inspector/InspectorFrontend.cpp: 124769 (WebCore::InspectorFrontend::didGetScriptSource): 124770 * inspector/InspectorFrontend.h: 124771 * inspector/front-end/InspectorBackendStub.js: 124772 (.WebInspector.InspectorBackendStub.prototype.editScriptSource): 124773 (.WebInspector.InspectorBackendStub.prototype.getScriptSource): 124774 * inspector/front-end/ScriptView.js: 124775 (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): 124776 (WebInspector.ScriptView.prototype._didGetScriptSource): 124777 (WebInspector.ScriptView.prototype._sourceFrameSetupFinished): 124778 124779 2010-06-10 Adam Barth <abarth (a] webkit.org> 124780 124781 Reviewed by Eric Seidel. 124782 124783 Use allowRequestIfNoIllegalURICharacters instead of context for XSSAuditor::canLoadExternalScriptFromSrc 124784 https://bugs.webkit.org/show_bug.cgi?id=40404 124785 124786 We originally added the context parameter to 124787 canLoadExternalScriptFromSrc to work around some false positives caused 124788 by folks checking external script URLs on the server. Our thought was 124789 that we could tell these were not real XSS attacks because the 124790 surrounding context wouldn't match in the URL and the document. 124791 124792 Implementing this feature in the HTML5 parser is hard because it 124793 pierces a layer of abstraction (the token abstraction of the input 124794 stream). We could hack this into the new parser, but instead I think 124795 it's better to switch to using the allowRequestIfNoIllegalURICharacters 124796 heuristic. 124797 124798 We designed the allowRequestIfNoIllegalURICharacters after the context 124799 heuristic to deal with other cases where the server was validating 124800 input before echoing it. However, we never tried applying it to 124801 canLoadExternalScriptFromSrc. 124802 124803 It's possible that this will cause false positives and will need to be 124804 reverted, which is why I've left in some of the infrustructure for 124805 computing context. We don't have a good way to know if that will 124806 happen except to try. We do know, however, that this heuristic will 124807 work for the original false positives we saw. 124808 124809 * html/HTML5Tokenizer.cpp: 124810 (WebCore::HTML5Tokenizer::shouldLoadExternalScriptFromSrc): 124811 * html/HTMLTokenizer.cpp: 124812 (WebCore::HTMLTokenizer::parseTag): 124813 * page/XSSAuditor.cpp: 124814 (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): 124815 * page/XSSAuditor.h: 124816 124817 2010-06-10 Kwang Yul Seo <skyul (a] company100.net> 124818 124819 Reviewed by Kent Tamura. 124820 124821 Add ENABLE(DATABASE) guard for DatabaseAuthorizer.cpp 124822 https://bugs.webkit.org/show_bug.cgi?id=40399 124823 124824 Build fix for ENABLE(DATABASE)=0. 124825 124826 * storage/DatabaseAuthorizer.cpp: 124827 124828 2010-06-10 Shu Chang <chang.shu (a] nokia.com> 124829 124830 Reviewed by Kenneth Rohde Christiansen. 124831 124832 Change the type of ShadowBlur from int to float in GraphicsContext. 124833 Using int for ShadowBlur loses precision and fails the test. 124834 Note: This code change fixes Qt port but Mac is still failing due to 124835 platform issue. Function CGContextSetShadowWithColor() does not take 124836 a blur value less than 0.5. 124837 124838 https://bugs.webkit.org/show_bug.cgi?id=40370 124839 124840 * platform/graphics/GraphicsContext.cpp: 124841 (WebCore::GraphicsContext::setShadow): 124842 (WebCore::GraphicsContext::getShadow): 124843 * platform/graphics/GraphicsContext.h: 124844 * platform/graphics/GraphicsContextPrivate.h: 124845 * platform/graphics/cairo/FontCairo.cpp: 124846 (WebCore::Font::drawGlyphs): 124847 * platform/graphics/cairo/GraphicsContextCairo.cpp: 124848 (WebCore::GraphicsContext::calculateShadowBufferDimensions): 124849 (WebCore::drawPathShadow): 124850 (WebCore::drawBorderlessRectShadow): 124851 (WebCore::GraphicsContext::setPlatformShadow): 124852 * platform/graphics/cairo/ImageCairo.cpp: 124853 (WebCore::BitmapImage::draw): 124854 * platform/graphics/cg/GraphicsContextCG.cpp: 124855 (WebCore::GraphicsContext::setPlatformShadow): 124856 * platform/graphics/chromium/FontChromiumWin.cpp: 124857 (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs): 124858 (WebCore::Font::drawComplexText): 124859 * platform/graphics/gtk/FontGtk.cpp: 124860 (WebCore::Font::drawComplexText): 124861 * platform/graphics/haiku/GraphicsContextHaiku.cpp: 124862 (WebCore::GraphicsContext::setPlatformShadow): 124863 * platform/graphics/mac/FontMac.mm: 124864 (WebCore::Font::drawGlyphs): 124865 * platform/graphics/openvg/GraphicsContextOpenVG.cpp: 124866 (WebCore::GraphicsContext::setPlatformShadow): 124867 * platform/graphics/qt/FontQt.cpp: 124868 (WebCore::Font::drawComplexText): 124869 * platform/graphics/qt/GraphicsContextQt.cpp: 124870 (WebCore::GraphicsContext::drawRect): 124871 (WebCore::GraphicsContext::drawLine): 124872 (WebCore::GraphicsContext::strokeArc): 124873 (WebCore::GraphicsContext::drawConvexPolygon): 124874 (WebCore::drawFilledShadowPath): 124875 (WebCore::GraphicsContext::strokePath): 124876 (WebCore::drawBorderlessRectShadow): 124877 (WebCore::GraphicsContext::setPlatformShadow): 124878 * platform/graphics/qt/ImageQt.cpp: 124879 (WebCore::BitmapImage::draw): 124880 * platform/graphics/skia/GraphicsContextSkia.cpp: 124881 (WebCore::GraphicsContext::setPlatformShadow): 124882 * platform/graphics/skia/SkiaFontWin.cpp: 124883 (WebCore::windowsCanHandleDrawTextShadow): 124884 * platform/graphics/win/FontCGWin.cpp: 124885 (WebCore::drawGDIGlyphs): 124886 (WebCore::Font::drawGlyphs): 124887 * platform/graphics/wince/GraphicsContextWince.cpp: 124888 (WebCore::GraphicsContext::fillRoundedRect): 124889 (WebCore::GraphicsContext::setPlatformShadow): 124890 (WebCore::GraphicsContext::drawText): 124891 * platform/graphics/wx/GraphicsContextWx.cpp: 124892 (WebCore::GraphicsContext::setPlatformShadow): 124893 124894 2010-06-10 Yael Aharon <yael.aharon (a] nokia.com> 124895 124896 Reviewed by Kenneth Rohde Christiansen. 124897 124898 Support for loading notification icons 124899 https://bugs.webkit.org/show_bug.cgi?id=40396 124900 124901 Make notification objects download the icon needed for displaying the 124902 notification before calling the NotificationPresenter to display the 124903 notification. 124904 124905 An error during the download would cause the notification to be displayed 124906 without an icon. 124907 124908 If a notification is in the process of download, and a new notification 124909 is created with the same ReplaceId, the download is not cancelled 124910 immediately and the notification is removed only after the download is 124911 complete. 124912 124913 Tests: http/tests/notifications/icon-does-not-exist.html 124914 http/tests/notifications/icon-exists-cancel.html 124915 http/tests/notifications/icon-exists-show-alert-during-load.html 124916 http/tests/notifications/icon-exists.html 124917 http/tests/notifications/icon-requires-auth.html 124918 124919 * notifications/Notification.cpp: 124920 (WebCore::Notification::Notification): 124921 (WebCore::Notification::~Notification): 124922 (WebCore::Notification::show): 124923 (WebCore::Notification::cancel): 124924 (WebCore::Notification::startLoading): 124925 (WebCore::Notification::stopLoading): 124926 (WebCore::Notification::didReceiveResponse): 124927 (WebCore::Notification::didReceiveData): 124928 (WebCore::Notification::didFinishLoading): 124929 (WebCore::Notification::didFail): 124930 (WebCore::Notification::didFailRedirectCheck): 124931 (WebCore::Notification::didReceiveAuthenticationCancellation): 124932 (WebCore::Notification::finishLoading): 124933 * notifications/Notification.h: 124934 (WebCore::Notification::iconData): 124935 (WebCore::Notification::releaseIconData): 124936 (WebCore::Notification::): 124937 124938 2010-06-10 Raine Makelainen <raine.makelainen (a] nokia.com> 124939 124940 Reviewed by Kenneth Rohde Christiansen. 124941 124942 Impossible to set input method hints based HTML5 input types 124943 https://bugs.webkit.org/show_bug.cgi?id=40107 124944 124945 Helper methods for checking "tel", "number", "email", 124946 and "url" input element types. 124947 124948 * html/HTMLInputElement.h: 124949 (WebCore::HTMLInputElement::isTelephoneField): 124950 (WebCore::HTMLInputElement::isNumberField): 124951 (WebCore::HTMLInputElement::isEmailField): 124952 (WebCore::HTMLInputElement::isUrlField): 124953 124954 2010-06-10 Daniel Cheng <dcheng (a] chromium.org> 124955 124956 Reviewed by Jian Li. 124957 124958 Don't convert filenames to URLs in edit drags. 124959 https://bugs.webkit.org/show_bug.cgi?id=38826 124960 124961 For security reasons, we don't want to expose file system paths to web 124962 content, so we filter them out of edit drags. 124963 124964 Test: editing/pasteboard/file-drag-to-editable.html 124965 124966 * page/DragController.cpp: 124967 (WebCore::documentFragmentFromDragData): 124968 * platform/DragData.h: 124969 (WebCore::DragData::): 124970 * platform/android/DragDataAndroid.cpp: 124971 (WebCore::DragData::containsURL): 124972 (WebCore::DragData::asURL): 124973 * platform/chromium/DragDataChromium.cpp: 124974 (WebCore::DragData::containsURL): 124975 (WebCore::DragData::asURL): 124976 * platform/efl/DragDataEfl.cpp: 124977 (WebCore::DragData::containsURL): 124978 (WebCore::DragData::asURL): 124979 * platform/gtk/DragDataGtk.cpp: 124980 (WebCore::DragData::containsURL): 124981 (WebCore::DragData::asURL): 124982 * platform/haiku/DragDataHaiku.cpp: 124983 (WebCore::DragData::containsURL): 124984 (WebCore::DragData::asURL): 124985 * platform/mac/DragDataMac.mm: 124986 (WebCore::DragData::containsURL): 124987 (WebCore::DragData::asURL): 124988 * platform/qt/DragDataQt.cpp: 124989 (WebCore::DragData::asPlainText): 124990 (WebCore::DragData::containsURL): 124991 (WebCore::DragData::asURL): 124992 * platform/win/ClipboardUtilitiesWin.cpp: 124993 (WebCore::getURL): 124994 (WebCore::getPlainText): 124995 * platform/win/ClipboardUtilitiesWin.h: 124996 * platform/win/ClipboardWin.cpp: 124997 (WebCore::ClipboardWin::getData): 124998 * platform/win/DragDataWin.cpp: 124999 (WebCore::DragData::containsURL): 125000 (WebCore::DragData::asURL): 125001 * platform/wince/DragDataWince.cpp: 125002 (WebCore::DragData::containsURL): 125003 (WebCore::DragData::asURL): 125004 * platform/wx/DragDataWx.cpp: 125005 (WebCore::DragData::containsURL): 125006 (WebCore::DragData::asURL): 125007 125008 2010-06-10 Mike Belshe <mbelshe (a] chromium.org> 125009 125010 Reviewed by David Levin 125011 125012 Track whether a resource is loaded via a proxy. 125013 125014 https://bugs.webkit.org/show_bug.cgi?id=40312 125015 125016 * platform/network/chromium/ResourceResponse.h: 125017 (WebCore::ResourceResponse::wasFetchedViaProxy): 125018 (WebCore::ResourceResponse::setWasFetchedViaProxy): 125019 125020 2010-06-10 Jungshik Shin <jshin (a] chromium.org> 125021 125022 Reviewed by Kent Tamura 125023 125024 Bug 38224 - [chromium] Enable rendering of Ethiopic, Lao, Tibetan 125025 and a few other scripts on Win XP 125026 125027 https://bugs.webkit.org/show_bug.cgi?id=38224 125028 125029 Make it possible to specify a list of fonts for per-script 125030 fallback instead of a single font per script. This is 125031 necessary for Malayalam (for which Windows font doesn't 125032 support Unicode 5.x fully on Vista or earlier), Ethiopic 125033 (we want to support on XP with a 3rd party font because XP 125034 doesn't have any Ethiopic font out of the box) and some other 125035 scripts. This is a short-term 'fix' until we have per-script 125036 font preferences. 125037 125038 No layout test is added because the test results would be 125039 dependent on which fonts are present. 125040 125041 * platform/graphics/chromium/FontUtilsChromiumWin.cpp: 125042 (WebCore::): 125043 (WebCore::FontMap::ScriptToFontFamilies::): 125044 125045 2010-06-09 Andrei Popescu <andreip (a] google.com> 125046 125047 Reviewed by Adam Barth. 125048 125049 CodeGeneratorJS.pm incorrectly increments $paramIndex when a method is declared with [CallWith] 125050 https://bugs.webkit.org/show_bug.cgi?id=40372 125051 125052 Use two variables to keep track of the number of arguments passed from JavaScript vs the number 125053 of arguments passed to the corresponding C++ method. These numbers can be different since 125054 the parameter declared via [CallWith] is generated in the bindings instead of being passed 125055 from JavaScript. 125056 125057 Test: storage/indexeddb/idb-objectstore-request.html 125058 125059 * bindings/scripts/CodeGeneratorJS.pm: 125060 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: 125061 (WebDOMTestObj::withScriptExecutionContext): 125062 * bindings/scripts/test/CPP/WebDOMTestObj.h: 125063 * bindings/scripts/test/JS/JSTestObj.cpp: 125064 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg): 125065 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg): 125066 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 125067 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 125068 125069 2010-06-09 MORITA Hajime <morrita (a] google.com> 125070 125071 Reviewed by Kent Tamura. 125072 125073 Refactoring: Simple shadow elements should be factored out . 125074 https://bugs.webkit.org/show_bug.cgi?id=40400 125075 125076 Pulled ShadowElement class up from SliderThumbElement, 125077 ProgressValueElement, ShadowInputElement. 125078 And renamed ProgressValueElement to ShadowBlockElement. 125079 125080 No new tests. Because there is no functional change. 125081 125082 * CMakeLists.txt: 125083 * GNUmakefile.am: 125084 * WebCore.gypi: 125085 * WebCore.pro: 125086 * WebCore.vcproj/WebCore.vcproj: 125087 * WebCore.xcodeproj/project.pbxproj: 125088 * rendering/RenderFileUploadControl.cpp: 125089 * rendering/RenderProgress.cpp: 125090 (WebCore::RenderProgress::updateValuePartState): 125091 * rendering/RenderProgress.h: 125092 * rendering/RenderSlider.cpp: 125093 (WebCore::SliderThumbElement::SliderThumbElement): 125094 (WebCore::SliderThumbElement::defaultEventHandler): 125095 (WebCore::SliderThumbElement::detach): 125096 * rendering/ShadowElement.cpp: Added. 125097 (WebCore::ShadowBlockElement::create): 125098 (WebCore::ShadowBlockElement::ShadowBlockElement): 125099 (WebCore::ShadowInputElement::create): 125100 (WebCore::ShadowInputElement::ShadowInputElement): 125101 * rendering/ShadowElement.h: Added. 125102 (WebCore::ShadowElement::ShadowElement): 125103 (WebCore::ShadowElement::isShadowNode): 125104 (WebCore::ShadowElement::shadowParentNode): 125105 125106 2010-06-10 Eric Seidel <eric (a] webkit.org> 125107 125108 Reviewed by Adam Barth. 125109 125110 Reduce FrameView.h includes to speed up build times 125111 https://bugs.webkit.org/show_bug.cgi?id=40408 125112 125113 Another fix for Qt. 125114 125115 * page/Frame.h: 125116 - Include CSSMutableStyleDeclaration.h since it's used by m_typingStyle = 0; 125117 125118 2010-06-10 Eric Seidel <eric (a] webkit.org> 125119 125120 Reviewed by Adam Barth. 125121 125122 Reduce FrameView.h includes to speed up build times 125123 https://bugs.webkit.org/show_bug.cgi?id=40408 125124 125125 More attempted build fixes for Tiger and Qt. 125126 125127 * page/Frame.cpp: 125128 * page/Frame.h: 125129 125130 2010-06-10 Eric Seidel <eric (a] webkit.org> 125131 125132 Reviewed by Adam Barth. 125133 125134 Reduce FrameView.h includes to speed up build times 125135 https://bugs.webkit.org/show_bug.cgi?id=40408 125136 125137 Add a few more RenderLayer.h includes to fix non-mac builds. 125138 125139 * page/FrameView.cpp: 125140 * rendering/RenderObject.cpp: 125141 * rendering/RenderTreeAsText.cpp: 125142 125143 2010-06-10 Eric Seidel <eric (a] webkit.org> 125144 125145 Reviewed by Adam Barth. 125146 125147 Reduce FrameView.h includes to speed up build times 125148 https://bugs.webkit.org/show_bug.cgi?id=40408 125149 125150 Cleaned up FrameView.h includes and then propagated the 125151 cascade of includes to the necessary .cpp files. 125152 This should reduce the set of files rebuilt every 125153 time FrameView.h changes, and should also reduce the size 125154 of some .o files. 125155 125156 No functional changes, thus no tests. 125157 125158 * accessibility/AccessibilityRenderObject.cpp: 125159 * dom/ContainerNode.cpp: 125160 * dom/Document.cpp: 125161 * dom/Element.cpp: 125162 * dom/EventTarget.h: 125163 * dom/Node.cpp: 125164 * editing/EditorCommand.cpp: 125165 * editing/SelectionController.cpp: 125166 * html/HTML5Tokenizer.cpp: 125167 (WebCore::HTML5Tokenizer::script): 125168 - No need for this to be inline. Being inline required 125169 Frame.h in the header, which causes huge include cascade. 125170 * html/HTML5Tokenizer.h: 125171 * page/DragController.cpp: 125172 * page/EventHandler.cpp: 125173 * page/Frame.h: 125174 * page/FrameView.h: 125175 * page/PrintContext.cpp: 125176 * page/SpatialNavigation.cpp: 125177 * rendering/RenderBlock.cpp: 125178 * rendering/RenderBlockLineLayout.cpp: 125179 * rendering/RenderImage.cpp: 125180 * rendering/RenderInline.cpp: 125181 * rendering/RenderObject.h: 125182 * rendering/RenderTextControlSingleLine.cpp: 125183 * rendering/RenderWidget.cpp: 125184 * rendering/SVGRenderSupport.cpp: 125185 125186 2010-06-10 Adam Barth <abarth (a] webkit.org> 125187 125188 Reviewed by Eric Seidel. 125189 125190 Move HTML5 entity parser to its own file 125191 https://bugs.webkit.org/show_bug.cgi?id=40406 125192 125193 Moving this algorithm to its own file better encapsulates its 125194 dependencies and makes it callable from other parts of WebCore. 125195 125196 * Android.mk: 125197 * CMakeLists.txt: 125198 * GNUmakefile.am: 125199 * WebCore.gypi: 125200 * WebCore.pro: 125201 * WebCore.vcproj/WebCore.vcproj: 125202 * WebCore.xcodeproj/project.pbxproj: 125203 * html/HTML5EntityParser.cpp: Copied from WebCore/html/HTML5Lexer.cpp. 125204 (WebCore::): 125205 (WebCore::consumeHTML5Entity): 125206 * html/HTML5EntityParser.h: Copied from WebCore/html/HTML5Lexer.h. 125207 * html/HTML5Lexer.cpp: 125208 (WebCore::HTML5Lexer::processEntity): 125209 (WebCore::HTML5Lexer::nextToken): 125210 * html/HTML5Lexer.h: 125211 125212 2010-06-09 Tony Gentilcore <tonyg (a] chromium.org> 125213 125214 Reviewed by Adam Barth. 125215 125216 HTML5 Parser: Fix fast/profiler tests that depend on event handler line numbers 125217 https://bugs.webkit.org/show_bug.cgi?id=40393 125218 125219 This emulated the old behavior in HTMLTokenizer:processToken() 125220 125221 No new tests because covered by: 125222 - fast/profiler/dead-time.html 125223 - fast/profiler/inline-event-handler.html 125224 - fast/profiler/stop-profiling-after-setTimeout.html 125225 - fast/profiler/throw-exception-from-eval.html 125226 125227 * html/HTML5Tokenizer.cpp: 125228 (WebCore::HTML5Tokenizer::pumpLexer): 125229 125230 2010-06-09 Alexey Proskuryakov <ap (a] apple.com> 125231 125232 Reviewed by Dan Bernstein. 125233 125234 https://bugs.webkit.org/show_bug.cgi?id=9504 125235 img tag rewritten by innerHTML doesn't use image map 125236 125237 Test: fast/dom/replaced-image-map.html 125238 125239 * html/HTMLMapElement.cpp: 125240 (WebCore::HTMLMapElement::~HTMLMapElement): Destructor is not a good place to make changes 125241 that affect page behavior, because destructors are called by garbage collector. Don't 125242 undregister the image map from here. 125243 (WebCore::HTMLMapElement::parseMappedAttribute): Only tell document about the map if it's 125244 actually in document. A map in a detached subtree isn't used by Firefox at least. 125245 (WebCore::HTMLMapElement::insertedIntoDocument): Register the map. 125246 (WebCore::HTMLMapElement::removedFromDocument): Unregister the map. 125247 125248 * html/HTMLMapElement.h: Added insertedIntoDocument/removedFromDocument overrides. 125249 125250 2010-06-09 Roland Steiner <rolandsteiner (a] chromium.org> 125251 125252 Reviewed by Ojan Vafai. 125253 125254 Bug 35632 - htmlediting.cpp : isEmptyTableCell() is incomplete 125255 https://bugs.webkit.org/show_bug.cgi?id=35632 125256 125257 Correct isEmptyTableCell to check for the presence of other renderer 125258 children. 125259 125260 Test: editing/deleting/delete-br-in-last-table-cell.html 125261 125262 * editing/htmlediting.cpp: 125263 (WebCore::isEmptyTableCell): 125264 125265 2010-06-09 Qi Zhang <qi.2.zhang (a] nokia.com> 125266 125267 Reviewed by Laszlo Gombos. 125268 125269 [Qt] Failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arcTo.transformation.html 125270 https://bugs.webkit.org/show_bug.cgi?id=38598 125271 125272 In path transform function handle path only have moveElement case. 125273 125274 * platform/graphics/qt/PathQt.cpp: 125275 (WebCore::Path::transform): 125276 125277 2010-06-09 Anton Muhin <antonm (a] chromium.org> 125278 125279 Reviewed by Nate Chapin. 125280 125281 [v8] First phase of switching to new named property query API 125282 https://bugs.webkit.org/show_bug.cgi?id=40303 125283 125284 To allow better management of attributes of intercepted properties, 125285 we're starting to switch to new named property query API which 125286 now could return attributes instead of simple property present/absent 125287 flag. The next step would remove USE_NEW_QUERY_CALLBACK, then 125288 v8 would have them enabled by default. 125289 125290 * bindings/scripts/CodeGeneratorV8.pm: 125291 * bindings/v8/NPV8Object.cpp: 125292 * bindings/v8/ScriptArray.cpp: 125293 * bindings/v8/ScriptCallStack.cpp: 125294 * bindings/v8/SerializedScriptValue.cpp: 125295 * bindings/v8/V8Binding.cpp: 125296 * bindings/v8/V8DOMWrapper.cpp: 125297 * bindings/v8/V8GCController.cpp: 125298 * bindings/v8/V8IsolatedContext.cpp: 125299 * bindings/v8/V8NPObject.cpp: 125300 (WebCore::npObjectQueryProperty): 125301 * bindings/v8/V8Proxy.cpp: 125302 * bindings/v8/custom/V8PopStateEventCustom.cpp: 125303 * bindings/v8/custom/V8StorageCustom.cpp: 125304 (WebCore::V8Storage::namedPropertyQuery): 125305 * config.h: 125306 125307 2010-06-09 Steve Block <steveblock (a] google.com> 125308 125309 Reviewed by Jeremy Orlow. 125310 125311 Need to include V8Proxy.h in V8 generated bindings for toV8Context() 125312 https://bugs.webkit.org/show_bug.cgi?id=40290 125313 125314 No new tests, build fix only. 125315 125316 * bindings/scripts/CodeGeneratorV8.pm: 125317 125318 2010-06-09 Jarkko Sakkinen <jarkko.j.sakkinen (a] gmail.com> 125319 125320 Reviewed by Kenneth Rohde Christiansen. 125321 125322 WebGL rendering context does not activate unless accelerated 125323 compositing is enabled from settings. 125324 https://bugs.webkit.org/show_bug.cgi?id=37772 125325 125326 * html/HTMLCanvasElement.cpp: 125327 (WebCore::HTMLCanvasElement::getContext): 125328 125329 2010-06-09 Yong Li <yoli (a] rim.com> 125330 125331 Reviewed by George Staikos. 125332 125333 https://bugs.webkit.org/show_bug.cgi?id=40252 125334 Make image down-sampling threshold runtime adjustable. 125335 125336 No new test needed. 125337 125338 * platform/graphics/ImageSource.cpp: 125339 (WebCore::ImageSource::setData): 125340 * platform/graphics/ImageSource.h: 125341 (WebCore::ImageSource::maxPixelsPerDecodedImage): 125342 (WebCore::ImageSource::setMaxPixelsPerDecodedImage): 125343 125344 2010-06-09 Adam Barth <abarth (a] webkit.org> 125345 125346 Reviewed by Eric Seidel. 125347 125348 Fix handling of bytes received from the network while in document.write 125349 https://bugs.webkit.org/show_bug.cgi?id=40356 125350 125351 The old tokenizer has specially logic for handling the case of 125352 receiving bytes from the network while in a nested call to 125353 document.write. This patch implements similar logic for the HTML5 125354 tokenizer. Also, this patch abstracts the tricky shuffling of 125355 SegmentedStrings behind a simple API. 125356 125357 I'm not sure how to trigger this case. My guess is we can trigger it 125358 using a nested event loop, e.g., via alert(), but I'm not sure how to 125359 test that in a LayoutTest. There don't appear to be any LayoutTests 125360 that currently test this behavior despite it being present in the old 125361 tokenizer. 125362 125363 * html/HTML5Tokenizer.cpp: 125364 (WebCore::HTML5Tokenizer::pumpLexer): 125365 (WebCore::HTML5Tokenizer::write): 125366 - Added a branch for the |append| argument. 125367 (WebCore::HTML5Tokenizer::end): 125368 (WebCore::HTML5Tokenizer::finish): 125369 (WebCore::HTML5Tokenizer::executeScript): 125370 - Switch over to using a RAII pattern for recording and restoring 125371 insertion points. 125372 * html/HTML5Tokenizer.h: 125373 (WebCore::HTML5Tokenizer::InputStream::InputStream): 125374 (WebCore::HTML5Tokenizer::InputStream::appendToEnd): 125375 (WebCore::HTML5Tokenizer::InputStream::insertAtCurrentInsertionPoint): 125376 (WebCore::HTML5Tokenizer::InputStream::close): 125377 - Putting the close() method on InputStream makes it much easier to 125378 handle EOF. We now just close the last buffer in the stream when 125379 the network says it's done. 125380 (WebCore::HTML5Tokenizer::InputStream::current): 125381 - This class could be moved to its own file, but it shouldn't be 125382 used outside of the tokenizer. 125383 (WebCore::HTML5Tokenizer::InsertionPointRecord::InsertionPointRecord): 125384 (WebCore::HTML5Tokenizer::InsertionPointRecord::~InsertionPointRecord): 125385 - A simple RAII class for managing saved insertion points. 125386 * platform/text/SegmentedString.cpp: 125387 (WebCore::SegmentedString::operator=): 125388 - Fix a related bug where m_closed was not being copied properly in 125389 the assignment operator. 125390 125391 2010-06-09 Tony Gentilcore <tonyg (a] chromium.org> 125392 125393 Reviewed by Adam Barth. 125394 125395 Fix fast/parser/hex-entities-length.html for HTML5 parser 125396 https://bugs.webkit.org/show_bug.cgi?id=40385 125397 125398 Stripping surrogate pair values appears to be a problem with the spec 125399 in "Preprocessing the input stream." Minefield doesn't appear to 125400 implement the part in question. So this patch removes that guard and 125401 adds a FIXME to track the issue. 125402 125403 No new tests because covered by fast/parser/hex-entities-length.html 125404 125405 * html/HTML5Lexer.h: 125406 (WebCore::HTML5Lexer::InputStreamPreprocessor::peek): 125407 125408 2010-06-09 Kenneth Russell <kbr (a] google.com> 125409 125410 Reviewed by Dimitri Glazkov. 125411 125412 Update readPixels to take ArrayBufferView rather than returning it 125413 https://bugs.webkit.org/show_bug.cgi?id=40322 125414 125415 No new tests; covered by existing tests, which have been modified. 125416 125417 * html/canvas/WebGLRenderingContext.cpp: 125418 (WebCore::WebGLRenderingContext::readPixels): 125419 * html/canvas/WebGLRenderingContext.h: 125420 * html/canvas/WebGLRenderingContext.idl: 125421 125422 2010-06-09 Enrico Ros <eros (a] codeaurora.org> 125423 125424 Reviewed by Ariya Hidayat. 125425 125426 Fix drawing zero-sized gradients on Canvas. 125427 https://bugs.webkit.org/show_bug.cgi?id=40340 125428 125429 HTML5 draft says that nothing must be painted if the gradient start 125430 point equals the stop point. 125431 125432 This commit fixes the following canvas test: 125433 http://philip.html5.org/tests/canvas/suite/tests/2d.gradient.interpolate.zerosize.html 125434 125435 * html/canvas/CanvasRenderingContext2D.cpp: 125436 (WebCore::CanvasRenderingContext2D::fillRect): skip zero-sized linear gradients 125437 * platform/graphics/Gradient.h: 125438 (WebCore::Gradient::isRadial): made public 125439 (WebCore::Gradient::isZeroSize): true if start == stop 125440 125441 2010-06-09 Leandro Pereira <leandro (a] profusion.mobi> 125442 125443 Reviewed by Adam Treat. 125444 125445 [EFL] Allow building core libraries as shared objects to speed up 125446 linking time on machines with small amounts of memory. 125447 http://webkit.org/b/39899 125448 125449 * CMakeLists.txt: If building with shared core, install the lib. 125450 Remove npapi.cpp (causes conflicts when linking dynamically). 125451 * CMakeListsEfl.txt: EFL libraries are needed to link dynamically. 125452 125453 2010-06-09 Mark Rowe <mrowe (a] apple.com> 125454 125455 Reviewed by Adele Peterson. 125456 125457 <rdar://problem/8070662> REGRESSION (r51629): WebBackForwardList created via -init crashes when -addItem: is called. 125458 125459 A WebBackForwardList created via -init results in a BackForwardList being created with a null m_page. 125460 BackForwardList needs to be careful not to dereference m_page without first ensuring it's not null. 125461 125462 * history/BackForwardList.cpp: 125463 (WebCore::BackForwardList::addItem): Null-check m_page. 125464 (WebCore::BackForwardList::goBack): Ditto. 125465 (WebCore::BackForwardList::goForward): Ditto. 125466 (WebCore::BackForwardList::goToItem): Ditto. 125467 (WebCore::BackForwardList::setCapacity): Ditto. 125468 125469 2010-06-09 Kwang Yul Seo <skyul (a] company100.net> 125470 125471 Reviewed by Kent Tamura. 125472 125473 [BREWMP] Add dummy Context Menu implementation 125474 https://bugs.webkit.org/show_bug.cgi?id=40223 125475 125476 Brew MP does not use Context Menu. Add dummy implementation. 125477 125478 * platform/brew/ContextMenuBrew.cpp: Added. 125479 (WebCore::ContextMenu::ContextMenu): 125480 (WebCore::ContextMenu::~ContextMenu): 125481 (WebCore::ContextMenu::itemCount): 125482 (WebCore::ContextMenu::insertItem): 125483 (WebCore::ContextMenu::appendItem): 125484 (WebCore::ContextMenu::itemWithAction): 125485 (WebCore::ContextMenu::itemAtIndex): 125486 (WebCore::ContextMenu::setPlatformDescription): 125487 (WebCore::ContextMenu::platformDescription): 125488 (WebCore::ContextMenu::releasePlatformDescription): 125489 * platform/brew/ContextMenuItemBrew.cpp: Added. 125490 (WebCore::ContextMenuItem::ContextMenuItem): 125491 (WebCore::ContextMenuItem::~ContextMenuItem): 125492 (WebCore::ContextMenuItem::releasePlatformDescription): 125493 (WebCore::ContextMenuItem::type): 125494 (WebCore::ContextMenuItem::action): 125495 (WebCore::ContextMenuItem::title): 125496 (WebCore::ContextMenuItem::platformSubMenu): 125497 (WebCore::ContextMenuItem::setType): 125498 (WebCore::ContextMenuItem::setAction): 125499 (WebCore::ContextMenuItem::setTitle): 125500 (WebCore::ContextMenuItem::setSubMenu): 125501 (WebCore::ContextMenuItem::setChecked): 125502 (WebCore::ContextMenuItem::setEnabled): 125503 (WebCore::ContextMenuItem::enabled): 125504 125505 2010-06-09 Kwang Yul Seo <skyul (a] company100.net> 125506 125507 Reviewed by Kent Tamura. 125508 125509 [BREWMP] Port Clipboard 125510 https://bugs.webkit.org/show_bug.cgi?id=35734 125511 125512 Add dummy Clipboard. 125513 125514 * platform/brew/ClipboardBrew.cpp: Added. 125515 (WebCore::ClipboardBrew::ClipboardBrew): 125516 (WebCore::ClipboardBrew::~ClipboardBrew): 125517 (WebCore::ClipboardBrew::clearData): 125518 (WebCore::ClipboardBrew::clearAllData): 125519 (WebCore::ClipboardBrew::getData): 125520 (WebCore::ClipboardBrew::setData): 125521 (WebCore::ClipboardBrew::types): 125522 (WebCore::ClipboardBrew::files): 125523 (WebCore::ClipboardBrew::setDragImage): 125524 (WebCore::ClipboardBrew::setDragImageElement): 125525 (WebCore::ClipboardBrew::createDragImage): 125526 (WebCore::ClipboardBrew::declareAndWriteDragImage): 125527 (WebCore::ClipboardBrew::writeURL): 125528 (WebCore::ClipboardBrew::writeRange): 125529 (WebCore::ClipboardBrew::writePlainText): 125530 (WebCore::ClipboardBrew::hasData): 125531 * platform/brew/ClipboardBrew.h: Added. 125532 125533 2010-06-09 Anders Bakken <agbakken (a] gmail.com> 125534 125535 Reviewed by David Levin. 125536 125537 [Qt] ClipboardQt.cpp has coding-style errors 125538 https://bugs.webkit.org/show_bug.cgi?id=39781 125539 125540 * platform/qt/ClipboardQt.cpp: 125541 (WebCore::ClipboardQt::declareAndWriteDragImage): 125542 125543 2010-06-09 Kenneth Russell <kbr (a] google.com> 125544 125545 Reviewed by Dimitri Glazkov. 125546 125547 Rename FloatArray to Float32Array 125548 https://bugs.webkit.org/show_bug.cgi?id=40323 125549 125550 Used do-webcore-rename to perform renaming. Manually undid 125551 incorrect changes to WebCore/bridge/jni/jsc/JNIBridgeJSC.cpp, 125552 WebCore/manual-tests/resources/ArrayParameterTestApplet.java and 125553 ArrayParameterTestApplet.class. Updated LayoutTests. Built and ran 125554 all layout tests on Safari; built Chromium and ran selected WebGL 125555 tests. 125556 125557 * CMakeLists.txt: 125558 * DerivedSources.make: 125559 * GNUmakefile.am: 125560 * WebCore.gypi: 125561 * WebCore.pri: 125562 * WebCore.pro: 125563 * WebCore.xcodeproj/project.pbxproj: 125564 * bindings/generic/RuntimeEnabledFeatures.h: 125565 (WebCore::RuntimeEnabledFeatures::float32ArrayEnabled): 125566 * bindings/js/JSArrayBufferViewCustom.cpp: 125567 (WebCore::toJS): 125568 * bindings/js/JSDOMWindowCustom.cpp: 125569 (WebCore::JSDOMWindow::float32Array): 125570 (WebCore::JSDOMWindow::webGLFloatArray): 125571 * bindings/js/JSFloat32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSFloatArrayConstructor.cpp. 125572 (WebCore::): 125573 (WebCore::JSFloat32ArrayConstructor::JSFloat32ArrayConstructor): 125574 (WebCore::constructCanvasFloatArray): 125575 (WebCore::JSFloat32ArrayConstructor::getConstructData): 125576 * bindings/js/JSFloat32ArrayConstructor.h: Copied from WebCore/bindings/js/JSFloatArrayConstructor.h. 125577 * bindings/js/JSFloat32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSFloatArrayCustom.cpp. 125578 (WebCore::JSFloat32Array::indexSetter): 125579 (WebCore::toJS): 125580 (WebCore::JSFloat32Array::set): 125581 * bindings/js/JSFloatArrayConstructor.cpp: Removed. 125582 * bindings/js/JSFloatArrayConstructor.h: Removed. 125583 * bindings/js/JSFloatArrayCustom.cpp: Removed. 125584 * bindings/js/JSWebGLRenderingContextCustom.cpp: 125585 (WebCore::dataFunctionf): 125586 (WebCore::dataFunctionMatrix): 125587 * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: 125588 (WebCore::toV8): 125589 * bindings/v8/custom/V8DOMWindowCustom.cpp: 125590 (WebCore::V8DOMWindow::WebGLFloatArrayAccessorGetter): 125591 * bindings/v8/custom/V8Float32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8FloatArrayCustom.cpp. 125592 (WebCore::V8Float32Array::constructorCallback): 125593 (WebCore::V8Float32Array::setCallback): 125594 (WebCore::toV8): 125595 * bindings/v8/custom/V8FloatArrayCustom.cpp: Removed. 125596 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: 125597 (WebCore::vertexAttribAndUniformHelperf): 125598 (WebCore::uniformMatrixHelper): 125599 * html/canvas/Float32Array.cpp: Copied from WebCore/html/canvas/FloatArray.cpp. 125600 (WebCore::Float32Array::create): 125601 (WebCore::Float32Array::Float32Array): 125602 (WebCore::Float32Array::slice): 125603 * html/canvas/Float32Array.h: Copied from WebCore/html/canvas/FloatArray.h. 125604 * html/canvas/Float32Array.idl: Copied from WebCore/html/canvas/FloatArray.idl. 125605 * html/canvas/FloatArray.cpp: Removed. 125606 * html/canvas/FloatArray.h: Removed. 125607 * html/canvas/FloatArray.idl: Removed. 125608 * html/canvas/WebGLGetInfo.cpp: 125609 (WebCore::WebGLGetInfo::WebGLGetInfo): 125610 (WebCore::WebGLGetInfo::getWebGLFloatArray): 125611 * html/canvas/WebGLGetInfo.h: 125612 * html/canvas/WebGLRenderingContext.cpp: 125613 (WebCore::WebGLRenderingContext::getUniform): 125614 (WebCore::WebGLRenderingContext::getVertexAttrib): 125615 (WebCore::WebGLRenderingContext::uniform1fv): 125616 (WebCore::WebGLRenderingContext::uniform2fv): 125617 (WebCore::WebGLRenderingContext::uniform3fv): 125618 (WebCore::WebGLRenderingContext::uniform4fv): 125619 (WebCore::WebGLRenderingContext::uniformMatrix2fv): 125620 (WebCore::WebGLRenderingContext::uniformMatrix3fv): 125621 (WebCore::WebGLRenderingContext::uniformMatrix4fv): 125622 (WebCore::WebGLRenderingContext::vertexAttrib1fv): 125623 (WebCore::WebGLRenderingContext::vertexAttrib2fv): 125624 (WebCore::WebGLRenderingContext::vertexAttrib3fv): 125625 (WebCore::WebGLRenderingContext::vertexAttrib4fv): 125626 (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter): 125627 * html/canvas/WebGLRenderingContext.h: 125628 * html/canvas/WebGLRenderingContext.idl: 125629 * page/DOMWindow.idl: 125630 * platform/graphics/GraphicsContext3D.h: 125631 * platform/graphics/mac/GraphicsContext3DMac.cpp: 125632 * platform/graphics/qt/GraphicsContext3DQt.cpp: 125633 125634 2010-06-09 Eric Seidel <eric (a] webkit.org> 125635 125636 Reviewed by Adam Barth. 125637 125638 HTML5 Parser needs to integrate with the XSSAuditor 125639 https://bugs.webkit.org/show_bug.cgi?id=40287 125640 125641 This fixes most of the XSSAuditor tests, except for the ones 125642 which rely on the srcValue "context". The previous HTMLTokenizer 125643 implementation was both Lexer and ScriptRunner and thus could 125644 provide the XSSAuditor with the un-modified attribute source. 125645 This naive implementation will fail the context-sensitive tests 125646 but Adam Barth says he'll just have to find a new way to provide 125647 the required information to the XSSAuditor in a later patch. 125648 125649 Covered by numerous http/tests/security/xssAuditor tests. 125650 125651 * html/HTML5ScriptRunner.cpp: 125652 (WebCore::HTML5ScriptRunner::requestScript): 125653 - Ask the HTML5ScriptRunner host before running any scripts. 125654 * html/HTML5ScriptRunnerHost.h: 125655 - Add a shouldLoadExternalScriptFromSrc declaration. 125656 * html/HTML5Tokenizer.cpp: 125657 (WebCore::HTML5Tokenizer::shouldLoadExternalScriptFromSrc): 125658 - Ask the XSSAuditor if we're allowed to run the passed script. 125659 * html/HTML5Tokenizer.h: 125660 125661 2010-06-09 Tony Gentilcore <tonyg (a] chromium.org> 125662 125663 Reviewed by Adam Barth. 125664 125665 Fix script-after-frameset test in HTML5 parser 125666 https://bugs.webkit.org/show_bug.cgi?id=40274 125667 125668 The old HTMLTokenizer enforced this in scriptHandler(). We don't use 125669 that code anymore, so it needs to be implemented. The spec does this 125670 as a part of "insertion mode"->"after frameset", so this adds an 125671 InsertionMode enum instead of a one-off boolean. 125672 125673 No new tests because covered by fast/tokenizer/script-after-frameset.html 125674 125675 * html/HTML5TreeBuilder.cpp: 125676 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 125677 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 125678 * html/HTML5TreeBuilder.h: 125679 (WebCore::HTML5TreeBuilder::): 125680 (WebCore::HTML5TreeBuilder::setInsertionMode): 125681 (WebCore::HTML5TreeBuilder::insertionMode): 125682 125683 2010-06-09 Kwang Yul Seo <skyul (a] company100.net> 125684 125685 Reviewed by Kent Tamura. 125686 125687 [BREWMP] Add EventLoop 125688 https://bugs.webkit.org/show_bug.cgi?id=39401 125689 125690 BREW MP does not have an explicit event loop. Add dummy EventLoop::cycle. 125691 125692 * platform/brew/EventLoopBrew.cpp: Added. 125693 (WebCore::EventLoop::cycle): 125694 125695 2010-06-09 Sheriff Bot <webkit.review.bot (a] gmail.com> 125696 125697 Unreviewed, rolling out r60889. 125698 http://trac.webkit.org/changeset/60889 125699 https://bugs.webkit.org/show_bug.cgi?id=40365 125700 125701 gtk bot has some kind of memory corruption (Requested by 125702 loislo on #webkit). 125703 125704 * inspector/InspectorClient.h: 125705 * inspector/InspectorController.cpp: 125706 (WebCore::InspectorController::setFrontend): 125707 * inspector/InspectorController.h: 125708 * inspector/InspectorFrontend.cpp: 125709 (WebCore::InspectorFrontend::InspectorFrontend): 125710 * inspector/InspectorFrontend.h: 125711 * inspector/InspectorFrontendClientLocal.cpp: 125712 (WebCore::InspectorFrontendClientLocal::frontendLoaded): 125713 * inspector/InspectorValues.cpp: 125714 (WebCore::InspectorObject::writeJSON): 125715 * inspector/front-end/inspector.js: 125716 * loader/EmptyClients.h: 125717 125718 2010-06-09 Kent Tamura <tkent (a] chromium.org> 125719 125720 Reviewed by Eric Carlson. 125721 125722 [Windows] Build fix on Japanese Windows 125723 https://bugs.webkit.org/show_bug.cgi?id=40358 125724 125725 cl.exe on Japanese Windows assumes files with invalid CP932 125726 sequences broken and doesn't build them at all. 125727 125728 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Remove non-ASCII characters 125729 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: ditto. 125730 * platform/graphics/win/WKCAImageQueue.cpp: ditto. 125731 * platform/graphics/win/WKCAImageQueue.h: ditto. 125732 125733 2010-06-09 Pavel Podivilov <podivilov (a] chromium.org> 125734 125735 Reviewed by Yury Semikhatsky. 125736 125737 Web Inspector: Add isDebuggerAlwaysEnabled method to ScriptDebugServer. 125738 This method returns true if debugger should always be enabled when 125739 frontend is attached. 125740 https://bugs.webkit.org/show_bug.cgi?id=40289 125741 125742 * bindings/js/ScriptDebugServer.cpp: 125743 (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled): 125744 * bindings/js/ScriptDebugServer.h: 125745 * bindings/v8/ScriptDebugServer.cpp: 125746 (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled): 125747 * bindings/v8/ScriptDebugServer.h: 125748 * inspector/InspectorController.cpp: 125749 (WebCore::InspectorController::setFrontend): 125750 125751 2010-06-07 Ilya Tikhonovsky <loislo (a] chromium.org> 125752 125753 Reviewed by Pavel Feldman. 125754 125755 WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc 125756 data from inspected page to WebInspector as JSON string via http. The native 125757 serialization to JSON string is supported by InspectorValue's classes. This patch 125758 has the implementation of sendMessageToFrontend function. WebKit version of it still 125759 uses ScriptFunctionCall and will be switched to another transport a little bit later. 125760 https://bugs.webkit.org/show_bug.cgi?id=40134 125761 125762 * inspector/InspectorClient.h: 125763 * inspector/InspectorController.cpp: 125764 (WebCore::InspectorController::connectFrontend): 125765 (WebCore::InspectorController::disconnectFrontend): 125766 * inspector/InspectorController.h: 125767 * inspector/InspectorFrontend.cpp: 125768 (WebCore::InspectorFrontend::InspectorFrontend): 125769 * inspector/InspectorFrontend.h: 125770 * inspector/InspectorFrontendClientLocal.cpp: 125771 (WebCore::InspectorFrontendClientLocal::frontendLoaded): 125772 * inspector/InspectorValues.cpp: 125773 (WebCore::InspectorObject::writeJSON): 125774 * inspector/front-end/inspector.js: 125775 (WebInspector.dispatchMessageToFrontend): 125776 * loader/EmptyClients.h: 125777 (WebCore::EmptyInspectorClient::sendMessageToFrontend): 125778 125779 2010-06-09 Csaba Osztrogonc <ossy (a] webkit.org> 125780 125781 Reviewed by Dirk Schulze. 125782 125783 [Qt] Imperfect dependency for generated SVGNames.cpp 125784 https://bugs.webkit.org/show_bug.cgi?id=40359 125785 125786 * WebCore.pri: Missing dependency added. 125787 125788 2010-06-08 Dirk Schulze <krit (a] webkit.org> 125789 125790 Reviewed by Nikolas Zimmermann. 125791 125792 Implement non-scaling-stroke (from SVG Tiny 1.2, also in Opera) 125793 https://bugs.webkit.org/show_bug.cgi?id=31438 125794 125795 This is the implementation of the SVG property vector-effect according 125796 to the specification of SVG Tiny 1.2. 125797 getScreenCTM() was not able to calculate the transformation matrix in 125798 comparison to the host coordinate system for objects, that get refereced 125799 by a use element. This is fixed and covered by the the new test as well. 125800 This patch is based upon a patch of Jeff Schiller. 125801 125802 Test: svg/custom/non-scaling-stroke.svg 125803 125804 * css/CSSComputedStyleDeclaration.cpp: Added CSSPropertyVectorEffect. 125805 (WebCore::): 125806 * css/CSSPrimitiveValueMappings.h: 125807 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 125808 (WebCore::CSSPrimitiveValue::operator EVectorEffect): 125809 * css/SVGCSSComputedStyleDeclaration.cpp: 125810 (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): 125811 * css/SVGCSSParser.cpp: 125812 (WebCore::CSSParser::parseSVGValue): 125813 * css/SVGCSSPropertyNames.in: 125814 * css/SVGCSSStyleSelector.cpp: 125815 (WebCore::CSSStyleSelector::applySVGProperty): 125816 * css/SVGCSSValueKeywords.in: Add vector-effect value non-scaling-stroke. 125817 * rendering/RenderPath.cpp: Revert transformations to ctm and transform path instead. 125818 (WebCore::fillAndStrokePath): 125819 * rendering/RenderSVGResourceContainer.h: 125820 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): 125821 * rendering/RenderSVGResourceGradient.cpp: Transform the gradient with the screenCTM. 125822 (WebCore::RenderSVGResourceGradient::applyResource): 125823 * rendering/RenderSVGResourcePattern.cpp: Transform the pattern with the screenCTM. 125824 (WebCore::RenderSVGResourcePattern::applyResource): 125825 * rendering/style/SVGRenderStyle.h: Added vector-effect property, not interited. 125826 (WebCore::SVGRenderStyle::NonInheritedFlags::): 125827 (WebCore::SVGRenderStyle::setBitDefaults): 125828 * rendering/style/SVGRenderStyleDefs.h: Added enums for vector-effect. 125829 (WebCore::): 125830 * svg/SVGLocatable.cpp: Calculate screenCTM for <use> referenced objects. 125831 (WebCore::SVGLocatable::computeCTM): 125832 * svg/SVGStyledElement.cpp: 125833 (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): 125834 * svg/svgattrs.in: 125835 125836 2010-06-08 Mark Rowe <mrowe (a] apple.com> 125837 125838 Reviewed by Adele Peterson. 125839 125840 <rdar://problem/8072136> REGRESSION (r56051): Inspect Element context menu does nothing in applications linked against 10.4 SDK 125841 125842 Revert the change to ContextMenu::addInspectElementItem from r56051. It was made without 125843 explanation and broke a reliance that WebKit has on the presence of a separator before the 125844 Inspect Element menu item. This also restores the context menu item to the correct location 125845 at the bottom of the context menu in applications built against the Mac OS X 10.4 SDK. 125846 125847 * platform/ContextMenu.cpp: 125848 (WebCore::ContextMenu::addInspectElementItem): 125849 125850 2010-06-08 Roland Steiner <rolandsteiner (a] chromium.org> 125851 125852 Unreviewed build fix 125853 125854 Bug 38145 - Validate *tex* functions input parameters according to ES2 conformance 125855 https://bugs.webkit.org/show_bug.cgi?id=38145 125856 https://bugs.webkit.org/show_bug.cgi?id=40346 125857 125858 Fix for 38145 broke the build ('log2 not found' on Windows), 125859 the fix from 40346 also didn't catch ('log ambiguous'). 125860 125861 2nd quick fix: add explicit casts to double and use double constants. 125862 125863 No new tests. 125864 125865 * html/canvas/WebGLRenderingContext.cpp: 125866 (WebCore::WebGLRenderingContext::validateTexFuncParameters): 125867 125868 2010-05-18 Yuzo Fujishima <yuzo (a] google.com> 125869 125870 Reviewed by Shinichiro Hamaji. 125871 125872 Fix for Bug 34529 - [CSSOM] issues with cssText and selectorText 125873 Serialize selector as per http://dev.w3.org/csswg/cssom/#serializing-selectors 125874 Without this patch, for example, selectors containing ':' or '.' are not properly serialized. 125875 https://bugs.webkit.org/show_bug.cgi?id=34529 125876 125877 Test: fast/css/selector-text-escape.html 125878 125879 * Android.mk: 125880 * CMakeLists.txt: 125881 * GNUmakefile.am: 125882 * WebCore.gypi: 125883 * WebCore.pro: 125884 * WebCore.vcproj/WebCore.vcproj: 125885 * WebCore.xcodeproj/project.pbxproj: 125886 * css/CSSOMUtils.cpp: Added. 125887 (WebCore::appendCharacter): 125888 (WebCore::serializeCharacter): 125889 (WebCore::serializeCharacterAsCodePoint): 125890 (WebCore::serializeIdentifier): 125891 (WebCore::serializeString): 125892 * css/CSSOMUtils.h: Added. 125893 * css/CSSSelector.cpp: 125894 (WebCore::CSSSelector::selectorText): 125895 125896 2010-06-08 Ryosuke Niwa <rniwa (a] webkit.org> 125897 125898 Reviewed by Justin Garcia 125899 125900 InsertListCommand needs cleanup 125901 https://bugs.webkit.org/show_bug.cgi?id=36430 125902 125903 Separated code for listifying and unlistifying paragraphs. 125904 Also isolated the dependency on the selection in doApply. 125905 125906 No test is added since this is a cleanup. 125907 125908 * editing/InsertListCommand.cpp: 125909 (WebCore::InsertListCommand::doApply): isolated code to listify / unlistify paragraphs 125910 (WebCore::InsertListCommand::unlistifyParagraph): ditto 125911 (WebCore::InsertListCommand::listifyParagraph): ditto 125912 * editing/InsertListCommand.h: 125913 125914 2010-06-08 Kenneth Russell <kbr (a] google.com> 125915 125916 Unreviewed, build fix. 125917 125918 Fix build breakage from 38145 125919 https://bugs.webkit.org/show_bug.cgi?id=40346 125920 125921 The fix for bug 38145 broke the Chromium Win build because 125922 Microsoft's cmath doesn't define log2. Suggested fix by zmo is to 125923 change log2(x) to log(x) / log(2). Built and ran WebGL layout 125924 tests in Safari on Mac OS X. Changed download mirrors for 125925 python-irclib to working ones. 125926 125927 * html/canvas/WebGLRenderingContext.cpp: 125928 (WebCore::WebGLRenderingContext::validateTexFuncParameters): 125929 125930 2010-06-08 Zhenyao Mo <zmo (a] google.com> 125931 125932 Reviewed by Dimitri Glazkov. 125933 125934 Validate *tex* functions input parameters according to ES2 conformance 125935 https://bugs.webkit.org/show_bug.cgi?id=38145 125936 125937 Test: fast/canvas/webgl/tex-input-validation.html 125938 125939 * html/canvas/WebGLFramebuffer.cpp: 125940 (WebCore::WebGLFramebuffer::getColorBufferFormat): Get color buffer internalformat. 125941 * html/canvas/WebGLFramebuffer.h: Ditto. 125942 * html/canvas/WebGLRenderingContext.cpp: 125943 (WebCore::WebGLRenderingContext::WebGLRenderingContext): Deal with max tex units and max texture size. 125944 (WebCore::WebGLRenderingContext::copyTexImage2D): Validate input parameters. 125945 (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto. 125946 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. 125947 (WebCore::WebGLRenderingContext::texParameterf): Ditto. 125948 (WebCore::WebGLRenderingContext::texParameteri): Ditto. 125949 (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto. 125950 (WebCore::WebGLRenderingContext::handleNPOTTextures): Deal with max tex units. 125951 (WebCore::WebGLRenderingContext::isTexInternalformatColorBufferCombinationValid): Check whether the texture format and framebuffer color buffer internalformat combination is valid. 125952 (WebCore::WebGLRenderingContext::getTextureBinding): get the current bound texture for given target. 125953 (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType): Validate input format/type for *tex* functions. 125954 (WebCore::WebGLRenderingContext::validateTexFuncParameters): Validate input parameters for *tex* functions. 125955 (WebCore::WebGLRenderingContext::texParameter): Base function for texParameteri and texParameterf. 125956 * html/canvas/WebGLRenderingContext.h: Deal with max tex units. 125957 * html/canvas/WebGLTexture.cpp: 125958 (WebCore::WebGLTexture::WebGLTexture): Cache internalformat. 125959 * html/canvas/WebGLTexture.h: Ditto. 125960 (WebCore::WebGLTexture::setInternalformat): 125961 (WebCore::WebGLTexture::getInternalformat): 125962 * platform/graphics/GraphicsContext3D.cpp: internalformat and format need to be the same. 125963 (WebCore::GraphicsContext3D::extractImageData): 125964 125965 2010-06-08 Erik Arvidsson <arv (a] chromium.org> 125966 125967 Reviewed by Ojan Vafai. 125968 125969 REGRESSION: Weird focus behavior affects quoting on University of Washington message board system 125970 https://bugs.webkit.org/show_bug.cgi?id=38548 125971 125972 Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html 125973 125974 * page/FocusController.cpp: 125975 (WebCore::clearSelectionIfNeeded): Make sure we do not clear selection when canStartSelection 125976 returns false. 125977 125978 2010-06-08 Enrico Ros <eros (a] codeaurora.org> 125979 125980 Reviewed by Ariya Hidayat. 125981 125982 [Qt] Crashfix on Path::contains 125983 https://bugs.webkit.org/show_bug.cgi?id=40253 125984 125985 Fix accessing the first item of an empty vector, that happens when 125986 CanvasRenderingContext2D::isPointInPath is invoked over a borderless 125987 path (e.g. a path made of just a MoveTo operation). 125988 125989 * platform/graphics/qt/PathQt.cpp: 125990 (WebCore::isPointOnPathBorder): 125991 125992 2010-06-08 Sheriff Bot <webkit.review.bot (a] gmail.com> 125993 125994 Unreviewed, rolling out r60859. 125995 http://trac.webkit.org/changeset/60859 125996 https://bugs.webkit.org/show_bug.cgi?id=40334 125997 125998 Included debugging statements. Caused a test to fail. 125999 (Requested by ojan on #webkit). 126000 126001 * page/FocusController.cpp: 126002 (WebCore::clearSelectionIfNeeded): 126003 126004 2010-06-08 Sheriff Bot <webkit.review.bot (a] gmail.com> 126005 126006 Unreviewed, rolling out r60858. 126007 http://trac.webkit.org/changeset/60858 126008 https://bugs.webkit.org/show_bug.cgi?id=40325 126009 126010 Qt needs a clean build. Rolling out the patch for now and fix 126011 it tomorrow (Requested by krit on #webkit). 126012 126013 * css/CSSComputedStyleDeclaration.cpp: 126014 (WebCore::): 126015 * css/CSSPrimitiveValueMappings.h: 126016 * css/SVGCSSComputedStyleDeclaration.cpp: 126017 (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): 126018 * css/SVGCSSParser.cpp: 126019 (WebCore::CSSParser::parseSVGValue): 126020 * css/SVGCSSPropertyNames.in: 126021 * css/SVGCSSStyleSelector.cpp: 126022 (WebCore::CSSStyleSelector::applySVGProperty): 126023 * css/SVGCSSValueKeywords.in: 126024 * rendering/RenderPath.cpp: 126025 (WebCore::fillAndStrokePath): 126026 * rendering/RenderSVGResourceContainer.h: 126027 * rendering/RenderSVGResourceGradient.cpp: 126028 (WebCore::RenderSVGResourceGradient::applyResource): 126029 * rendering/RenderSVGResourcePattern.cpp: 126030 (WebCore::RenderSVGResourcePattern::applyResource): 126031 * rendering/style/SVGRenderStyle.h: 126032 (WebCore::SVGRenderStyle::NonInheritedFlags::): 126033 (WebCore::SVGRenderStyle::setBitDefaults): 126034 * rendering/style/SVGRenderStyleDefs.h: 126035 (WebCore::): 126036 * svg/SVGLocatable.cpp: 126037 (WebCore::SVGLocatable::computeCTM): 126038 * svg/SVGStyledElement.cpp: 126039 (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): 126040 * svg/svgattrs.in: 126041 126042 2010-06-08 Daniel Bates <dbates (a] rim.com> 126043 126044 Unreviewed, fix Xcode project file after change-set 60841. 126045 126046 Xcode is not happy about the entries for files EditingBehavior.h and 126047 EditingBehaviorTypes.h that were added in change-set 60841 (Bug # 39854). 126048 Lets make Xcode happy. 126049 126050 Also, lets place these entries in alphabetic order. 126051 126052 * WebCore.xcodeproj/project.pbxproj: 126053 126054 2010-06-08 Erik Arvidsson <arv (a] chromium.org> 126055 126056 Reviewed by Ojan Vafai. 126057 126058 REGRESSION: Weird focus behavior affects quoting on University of Washington message board system 126059 https://bugs.webkit.org/show_bug.cgi?id=38548 126060 126061 We should not clear the selection when canStartSelection returns false. 126062 126063 Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html 126064 126065 * page/FocusController.cpp: 126066 (WebCore::clearSelectionIfNeeded): Make sure we do not clear selection when canStartSelection 126067 returns false. 126068 126069 2010-06-08 Dirk Schulze <krit (a] webkit.org> 126070 126071 Reviewed by Nikolas Zimmermann. 126072 126073 Implement non-scaling-stroke (from SVG Tiny 1.2, also in Opera) 126074 https://bugs.webkit.org/show_bug.cgi?id=31438 126075 126076 This is the implementation of the SVG property vector-effect according 126077 to the specification of SVG Tiny 1.2. 126078 getScreenCTM() was not able to calculate the transformation matrix in 126079 comparison to the host coordinate system for objects, that get refereced 126080 by a use element. This is fixed and covered by the the new test as well. 126081 This patch is based upon a patch of Jeff Schiller. 126082 126083 Test: svg/custom/non-scaling-stroke.svg 126084 126085 * css/CSSComputedStyleDeclaration.cpp: Added CSSPropertyVectorEffect. 126086 (WebCore::): 126087 * css/CSSPrimitiveValueMappings.h: 126088 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 126089 (WebCore::CSSPrimitiveValue::operator EVectorEffect): 126090 * css/SVGCSSComputedStyleDeclaration.cpp: 126091 (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): 126092 * css/SVGCSSParser.cpp: 126093 (WebCore::CSSParser::parseSVGValue): 126094 * css/SVGCSSPropertyNames.in: 126095 * css/SVGCSSStyleSelector.cpp: 126096 (WebCore::CSSStyleSelector::applySVGProperty): 126097 * css/SVGCSSValueKeywords.in: Add vector-effect value non-scaling-stroke. 126098 * rendering/RenderPath.cpp: Revert transformations to ctm and transform path instead. 126099 (WebCore::fillAndStrokePath): 126100 * rendering/RenderSVGResourceContainer.h: 126101 (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): 126102 * rendering/RenderSVGResourceGradient.cpp: Transform the gradient with the screenCTM. 126103 (WebCore::RenderSVGResourceGradient::applyResource): 126104 * rendering/RenderSVGResourcePattern.cpp: Transform the pattern with the screenCTM. 126105 (WebCore::RenderSVGResourcePattern::applyResource): 126106 * rendering/style/SVGRenderStyle.h: Added vector-effect property, not interited. 126107 (WebCore::SVGRenderStyle::NonInheritedFlags::): 126108 (WebCore::SVGRenderStyle::setBitDefaults): 126109 * rendering/style/SVGRenderStyleDefs.h: Added enums for vector-effect. 126110 (WebCore::): 126111 * svg/SVGLocatable.cpp: Calculate screenCTM for <use> referenced objects. 126112 (WebCore::SVGLocatable::computeCTM): 126113 * svg/SVGStyledElement.cpp: 126114 (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): 126115 * svg/svgattrs.in: 126116 126117 2010-06-08 Alexey Proskuryakov <ap (a] apple.com> 126118 126119 * GNUmakefile.am: Also adding platform/Cursor.cpp to Gtk build. 126120 126121 2010-06-08 Csaba Osztrogonc <ossy (a] webkit.org> 126122 126123 [Qt] Unreviewed buildfix after r60849. 126124 126125 * WebCore.pro: platform/Cursor.cpp is added to Qt build system. 126126 126127 2010-06-08 Kenneth Rohde Christiansen <kenneth.christiansen (a] openbossa.org> 126128 126129 Unreviewed Buildbot fix. 126130 126131 Reset the Qt TextBreakIterator when reusing it. 126132 126133 * platform/text/qt/TextBreakIteratorQt.cpp: 126134 (WebCore::setUpIterator): 126135 126136 2010-06-04 Alexey Proskuryakov <ap (a] apple.com> 126137 126138 Reviewed by John Sullivan. 126139 126140 https://bugs.webkit.org/show_bug.cgi?id=15779 126141 <rdar://problem/8002964> Custom CSS .cur cursor anchor point is ignored 126142 126143 Test: manual-tests/cur-hotspot.html 126144 126145 Currently, this patch only has effect in Safari 5 on Windows. Other platforms will need 126146 to implement getting hot spot information from .cur files. 126147 126148 * WebCore.vcproj/WebCore.vcproj: 126149 * WebCore.xcodeproj/project.pbxproj: 126150 Added Cursor.cpp. Looks like TextWrangler fixed line endings in vcproj file. 126151 126152 * css/CSSCursorImageValue.cpp: 126153 (WebCore::CSSCursorImageValue::CSSCursorImageValue): Renamed "hotspot" to "hotSpot" to match 126154 other code. 126155 (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Ditto. Added a FIXME about possibly 126156 incorrect code for resolving differences with CSS specified hotspot. 126157 126158 * css/CSSCursorImageValue.h: 126159 (WebCore::CSSCursorImageValue::create): 126160 (WebCore::CSSCursorImageValue::hotSpot): 126161 Renamed "hotspot" to "hotSpot" to match other code. 126162 126163 * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): Start with an invalid value for hot 126164 spot, so that we can differentiate between missing and (0, 0) CSS hot spots. Missing and 126165 invalid (-1, -1) are treated identically by Firefox, so we don't need to differentiate these. 126166 126167 * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): Renamed "hotspot" to 126168 "hotSpot" to match other code. 126169 126170 * page/EventHandler.cpp: (WebCore::EventHandler::selectCursor): Don't ignore cursors with 126171 invalid CSS hot spots. Firefox ignores only the hot spot, not the whole cursor in this case 126172 (and IE doesn't support CSS3 cursor declarations). 126173 126174 * platform/Cursor.cpp: Added. (WebCore::determineHotSpot): Added a function that decides 126175 where hot spot is, provided an image and a possible out of band coordinate specification. 126176 126177 * platform/Cursor.h: Added determineHotSpot(). 126178 126179 * platform/graphics/BitmapImage.cpp: 126180 (WebCore::BitmapImage::getHotSpot): 126181 * platform/graphics/BitmapImage.h: 126182 * platform/graphics/Image.h: 126183 (WebCore::Image::getHotSpot): 126184 * platform/graphics/ImageSource.cpp: 126185 (WebCore::ImageSource::getHotSpot): 126186 * platform/graphics/ImageSource.h: 126187 Added plumbing to get hot spot data from an image provider. 126188 126189 * platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::getHotSpot): CG implemantation. 126190 126191 * platform/mac/CursorMac.mm: (WebCore::createCustomCursor): Call determineHotSpot() to 126192 determine where hot spot should be. 126193 (WebCore::Cursor::Cursor): Renamed "hotspot" to "hotSpot" to match other code. 126194 126195 * platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): Call determineHotSpot() to determine 126196 where hot spot should be. 126197 126198 * platform/gtk/CursorGtk.cpp: (WebCore::Cursor::Cursor): Ditto. This must be done despite 126199 this platform not having an implementation for ImageSource::getHotSpot(), because we no longer 126200 check for out of bounds hot spots in EventHandler::selectCursor(). 126201 126202 * platform/qt/CursorQt.cpp: (WebCore::Cursor::Cursor): Ditto. 126203 126204 2010-06-08 Kenneth Rohde Christiansen <kenneth.christiansen (a] openbossa.org> 126205 126206 Reviewed by Antti Koivisto. 126207 126208 [Qt] TextBreakIterator Qt performance 126209 https://bugs.webkit.org/show_bug.cgi?id=39958 126210 126211 Rework TextBreakIteratorQt to be more in line with the ICU version. 126212 126213 We now reuse iterators where ever possible. The string data is compared 126214 with memcmp, which should be faster than using a hash, as you need 126215 to traverse the full buffer in the case the strings don't match, 126216 where as the compare would fail quickly. 126217 126218 * platform/text/qt/TextBreakIteratorQt.cpp: 126219 (WebCore::TextBreakIterator::TextBreakIterator): 126220 (WebCore::setUpIterator): 126221 (WebCore::wordBreakIterator): 126222 (WebCore::characterBreakIterator): 126223 (WebCore::lineBreakIterator): 126224 (WebCore::sentenceBreakIterator): 126225 126226 2010-06-08 Andras Becsi <abecsi (a] webkit.org> 126227 126228 Unreviewed build fix after r60785. 126229 126230 [GTK] Add missing GtkVersioning.h include to fix the build 126231 on older GTK+ versions. 126232 126233 No new tests needed. 126234 126235 * platform/gtk/WidgetGtk.cpp: 126236 126237 2010-06-08 Yury Semikhatsky <yurys (a] chromium.org> 126238 126239 Reviewed by Pavel Feldman. 126240 126241 Web Inspector: extend ScriptDebugServer to support script source editing 126242 https://bugs.webkit.org/show_bug.cgi?id=40297 126243 126244 * bindings/js/ScriptDebugServer.cpp: 126245 (WebCore::ScriptDebugServer::editScriptSource): 126246 * bindings/js/ScriptDebugServer.h: 126247 * bindings/v8/ScriptDebugServer.cpp: 126248 (WebCore::ScriptDebugServer::editScriptSource): 126249 * bindings/v8/ScriptDebugServer.h: 126250 * inspector/InspectorBackend.cpp: 126251 (WebCore::InspectorBackend::editScriptSource): 126252 * inspector/InspectorBackend.h: 126253 * inspector/InspectorBackend.idl: 126254 * inspector/InspectorController.cpp: 126255 (WebCore::InspectorController::InspectorController): 126256 (WebCore::InspectorController::disableDebugger): 126257 (WebCore::InspectorController::editScriptSource): 126258 (WebCore::InspectorController::currentCallFrames): 126259 (WebCore::InspectorController::didPause): 126260 (WebCore::InspectorController::didContinue): 126261 * inspector/InspectorController.h: 126262 * inspector/InspectorFrontend.cpp: 126263 (WebCore::InspectorFrontend::didEditScriptSource): 126264 * inspector/InspectorFrontend.h: 126265 * inspector/front-end/Script.js: 126266 * inspector/front-end/ScriptsPanel.js: 126267 (WebInspector.ScriptsPanel.prototype.canEditScripts): 126268 (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback): 126269 (WebInspector.ScriptsPanel.prototype.editScriptSource): 126270 * inspector/front-end/Settings.js: 126271 * inspector/front-end/SourceView.js: 126272 (WebInspector.SourceView.prototype._editLine): 126273 * inspector/front-end/TextViewer.js: 126274 (WebInspector.TextViewer.prototype._handleDoubleClick): 126275 (WebInspector.TextViewer.prototype._commitEditingLine): 126276 * inspector/front-end/inspector.css: 126277 (#scripts-files option.extension-script): 126278 126279 2010-06-08 Antonio Gomes <tonikitoo (a] webkit.org> 126280 126281 Reviewed by Ojan Vafai and Darin Adler. 126282 126283 Refactor platform dependent editing behavior code out of Settings 126284 https://bugs.webkit.org/show_bug.cgi?id=39854 126285 126286 As per discussion in bug 36627, Darin Adler suggested: "before the addition of any new EditingBehavior, 126287 I think we to add functions to translate the overall behavior policy into specific behaviors rather than 126288 directly saying 'behavior == Mac' or 'behavior == Windows'. Helper functions that expression the different 126289 rules in plain language.". Patch addresses this request. 126290 126291 No behavior change, so no new tests. 126292 126293 * GNUmakefile.am: 126294 * WebCore.pro: 126295 * WebCore/WebCore.vcproj/WebCore.vcproj 126296 * WebCore/WebCore.xcodeproj/project.pbxproj 126297 * page/Settings.cpp: 126298 (WebCore::Settings::Settings): 126299 * page/Settings.h: Moved out EditingBehavior enum to WebCore/editing/EditingBehaviorTypes.h, 126300 and renamed to EditingBehaviorTypes. 126301 (WebCore::Settings::setEditingBehaviorType): Renamed from setEditingBehavior. 126302 (WebCore::Settings::editingBehaviorType): Renamed from editingBehavior. 126303 * editing/EditingBehavior.h: Added. 126304 (WebCore::EditingBehavior::EditingBehavior): Class to work as a central point for 126305 editing behavior that might have to be handled differently in the different platforms/ports. 126306 Class should be not used or instantiated directly, but rather implicitly constructed 126307 through the Editor class. 126308 (WebCore::EditingBehavior::shouldMoveCaretToHorizontalBoundaryWhenPastTopOrBottom): 126309 (WebCore::EditingBehavior::shouldConsiderSelectionAsDirectional): 126310 (WebCore::EditingBehavior::shouldCenterAlignWhenSelectionIsRevealed): 126311 * editing/EditingBehaviorTypes.h: Added. 126312 (WebCore::): 126313 * editing/Editor.cpp: 126314 (WebCore::Editor::behavior): Getter for EditingBehavior class. 126315 * editing/Editor.h: 126316 * editing/EditorCommand.cpp: 126317 (WebCore::executeToggleStyle): 126318 * editing/SelectionController.cpp: 126319 (WebCore::SelectionController::setSelection): 126320 (WebCore::SelectionController::setIsDirectional): 126321 (WebCore::SelectionController::positionForPlatform): 126322 (WebCore::SelectionController::modify): 126323 * page/EventHandler.cpp: 126324 (WebCore::EventHandler::handleMousePressEventSingleClick): 126325 * rendering/RenderBlock.cpp: 126326 (WebCore::RenderBlock::positionForPointWithInlineChildren): 126327 126328 - Call sites will look like: 126329 if (frame->editor()->behavior().shouldThisIfThat())) 126330 // do something 126331 126332 2010-06-08 Steve Block <steveblock (a] google.com> 126333 126334 Reviewed by Jeremy Orlow. 126335 126336 Prevent Geolocation making callbacks to a ScriptExecutionContext that no longer exists 126337 https://bugs.webkit.org/show_bug.cgi?id=40162 126338 126339 Before making callbacks, we check that the relevant ScriptExecutionContext still exists. 126340 To achieve this, the callbacks inherit from ActiveDOMObject. 126341 126342 The ScriptExecutionContext is ref'ed from script, so may not be GC'ed for some time after 126343 it is disconnected from its frame. Making the callback currently involves accessing the 126344 Frame, so an additional check for the Frame is required. 126345 126346 This change also prevents the V8 bindings from incorrectly holding a reference to the Frame. 126347 126348 Test: fast/dom/Geolocation/callback-to-deleted-context.html 126349 126350 * bindings/js/JSCallbackData.cpp: 126351 (WebCore::JSCallbackData::invokeCallback): 126352 * bindings/js/JSCustomPositionCallback.cpp: 126353 (WebCore::JSCustomPositionCallback::JSCustomPositionCallback): 126354 (WebCore::JSCustomPositionCallback::handleEvent): 126355 * bindings/js/JSCustomPositionErrorCallback.cpp: 126356 (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback): 126357 (WebCore::JSCustomPositionErrorCallback::handleEvent): 126358 * bindings/v8/custom/V8CustomPositionCallback.cpp: 126359 (WebCore::V8CustomPositionCallback::V8CustomPositionCallback): 126360 (WebCore::V8CustomPositionCallback::handleEvent): 126361 * bindings/v8/custom/V8CustomPositionCallback.h: 126362 (WebCore::V8CustomPositionCallback::create): 126363 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 126364 (WebCore::V8CustomPositionErrorCallback::V8CustomPositionErrorCallback): 126365 (WebCore::V8CustomPositionErrorCallback::handleEvent): 126366 * bindings/v8/custom/V8CustomPositionErrorCallback.h: 126367 (WebCore::V8CustomPositionErrorCallback::create): 126368 * bindings/v8/custom/V8GeolocationCustom.cpp: 126369 (WebCore::createPositionCallback): 126370 (WebCore::createPositionErrorCallback): 126371 * page/PositionCallback.h: 126372 (WebCore::PositionCallback::PositionCallback): 126373 * page/PositionErrorCallback.h: 126374 (WebCore::PositionErrorCallback::PositionErrorCallback): 126375 126376 2010-06-08 Xan Lopez <xlopez (a] igalia.com> 126377 126378 Reviewed by Gustavo Noronha. 126379 126380 [GTK] Avoid duplicated signals in DOM bindings 126381 https://bugs.webkit.org/show_bug.cgi?id=40170 126382 126383 Do not create duplicated event signals between a class and its 126384 ancestor. 126385 126386 * bindings/scripts/CodeGeneratorGObject.pm: 126387 126388 2010-06-08 MORITA Hajime <morrita (a] google.com> 126389 126390 Unreviewd. Touched the file to force rebuild. 126391 126392 * html/HTMLMeterElement.idl: 126393 126394 2010-06-08 Vangelis Kokkevis <vangelis (a] chromium.org> 126395 126396 Reviewed by Dimitri Glazkov. 126397 126398 [Chromium] Fix the math for transform matrices of composited layers. There 126399 were problems both with how content layers were setting their position and 126400 how the overal matrix stack was computed when the layer anchor isn't at the 126401 center of the layer. 126402 https://bugs.webkit.org/post_bug.cgi 126403 126404 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 126405 (WebCore::GraphicsLayerChromium::updateContentsRect): 126406 * platform/graphics/chromium/LayerRendererChromium.cpp: 126407 (WebCore::LayerRendererChromium::updateLayersRecursive): 126408 (WebCore::LayerRendererChromium::drawLayer): 126409 126410 2010-06-07 Eric Seidel <eric (a] webkit.org> 126411 126412 Reviewed by Adam Barth. 126413 126414 HTML5Lexer does not handle <div FOO ><img><img></div> correctly 126415 https://bugs.webkit.org/show_bug.cgi?id=40283 126416 126417 Fix a typo in the AfterAttributeNameState. 126418 The compiler really should have caught this since the typo 126419 resulted in unreachable code. 126420 126421 Tests: 126422 10 tables/mozilla/marvin/colgroup* tests. 126423 Also added a new sub-test in html5lib/resources/webkit01.dat 126424 126425 * html/HTML5Lexer.cpp: 126426 (WebCore::HTML5Lexer::nextToken): 126427 - Fix typo of = instead of > 126428 126429 2010-06-08 Adam Barth <abarth (a] webkit.org> 126430 126431 Reviewed by Eric Seidel. 126432 126433 Implement HTML5's forceQuirks flag 126434 https://bugs.webkit.org/show_bug.cgi?id=40284 126435 126436 I didn't implement this before because I didn't know how to test it, 126437 but now I do. 126438 126439 Tests: 126440 * fast/doctypes/doctype-parsing.html. 126441 126442 When we actually implement the quirks mode handling in the tree 126443 builder, we'll probably want to add to this test. 126444 126445 * html/HTML5Lexer.cpp: 126446 (WebCore::HTML5Lexer::nextToken): 126447 * html/HTML5Token.h: 126448 (WebCore::HTML5Token::forceQuirks): 126449 (WebCore::HTML5Token::setForceQuirks): 126450 * html/HTML5TreeBuilder.cpp: 126451 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 126452 * html/HTMLParser.cpp: 126453 (WebCore::HTMLParser::parseDoctypeToken): 126454 * html/HTMLTokenizer.h: 126455 (WebCore::DoctypeToken::reset): 126456 126457 2010-06-08 Adam Barth <abarth (a] webkit.org> 126458 126459 Reviewed by Eric Seidel. 126460 126461 Remove ASSERT in ~HTML5Tokenizer 126462 https://bugs.webkit.org/show_bug.cgi?id=40282 126463 126464 We thought this ASSERT would be a good idea, but the problem is that 126465 this object is deleted without warning in some circumstances, so 126466 there's no way to know whether it has reached the end of its state 126467 machine. 126468 126469 * html/HTML5Tokenizer.cpp: 126470 (WebCore::HTML5Tokenizer::~HTML5Tokenizer): 126471 126472 2010-06-07 MORITA Hajime <morrita (a] google.com> 126473 126474 Reviewed by Kent Tamura. 126475 126476 [Mac] <meter> elements should be rendered as level indicators. 126477 https://bugs.webkit.org/show_bug.cgi?id=40217 126478 126479 Implemented RenderThemeMac::paintMeter() using NSLevelIndicatorCell. 126480 126481 This change also added new -webkit-appearance values to select the 126482 style of level indicators: 126483 126484 - relevancy-level-indicator, 126485 - continuous-capacity-level-indicator, 126486 - discrete-capacity-level-indicator, and 126487 - rating-level-indicator. 126488 126489 The size of elements are adjusted based on the bounds of the indicator 126490 to make room for painting whole indicator cells. 126491 126492 Tests: fast/dom/HTMLMeterElement/meter-appearances-capacity.html 126493 fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy.html 126494 fast/dom/HTMLMeterElement/meter-optimums.html 126495 126496 * css/CSSPrimitiveValueMappings.h: 126497 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): 126498 * css/CSSValueKeywords.in: 126499 * html/HTMLMeterElement.cpp: 126500 (WebCore::HTMLMeterElement::gaugeRegion): 126501 * html/HTMLMeterElement.h: 126502 (WebCore::HTMLMeterElement::): 126503 * platform/ThemeTypes.h: 126504 (WebCore::): 126505 * rendering/RenderMeter.cpp: 126506 (WebCore::RenderMeter::calcWidth): 126507 (WebCore::RenderMeter::calcHeight): 126508 * rendering/RenderMeter.h: 126509 * rendering/RenderTheme.cpp: 126510 (WebCore::RenderTheme::adjustStyle): 126511 (WebCore::RenderTheme::paint): 126512 (WebCore::RenderTheme::paintBorderOnly): 126513 (WebCore::RenderTheme::paintDecorations): 126514 (WebCore::RenderTheme::meterSizeForBounds): 126515 * rendering/RenderTheme.h: 126516 * rendering/RenderThemeMac.h: 126517 * rendering/RenderThemeMac.mm: 126518 (WebCore::RenderThemeMac::meterSizeForBounds): 126519 (WebCore::RenderThemeMac::paintMeter): 126520 (WebCore::RenderThemeMac::levelIndicatorStyleFor): 126521 (WebCore::RenderThemeMac::levelIndicatorFor): 126522 126523 2010-06-07 MORITA Hajime <morrita (a] google.com> 126524 126525 Reviewed by Kent Tamura. 126526 126527 [Mac] ENABLE_METER_TAG should be enabled. 126528 https://bugs.webkit.org/show_bug.cgi?id=40219 126529 126530 * Configurations/FeatureDefines.xcconfig: 126531 * WebCore.xcodeproj/project.pbxproj: 126532 126533 2010-06-07 Eric Seidel <eric (a] webkit.org> 126534 126535 Unreviewed. Just commit an edit Xcode keeps making automatically. 126536 126537 It appears someone hand-edited the file, Xcode no-like. 126538 126539 * WebCore.xcodeproj/project.pbxproj: 126540 126541 2010-06-07 Eric Seidel <eric (a] webkit.org> 126542 126543 Reviewed by Adam Barth. 126544 126545 HTML5 Parser fails script-tests which use document.write 126546 https://bugs.webkit.org/show_bug.cgi?id=40276 126547 126548 We were leaving the TreeBuilder paused when executing the scripts 126549 resulting in document.write() calls being ignored. 126550 126551 I don't see a good way to ASSERT this correct behavior, since 126552 the HTML5ScriptRunner and the HTML5TreeBuilder do not know about 126553 each other. We should never have document.write() called while 126554 the HTML5TreeBuilder is paused, however both document.write and 126555 the network call the same HTML5Tokenizer::write method. It's OK 126556 to be paused when the network writes, but during document.write 126557 (or any other script execution). 126558 126559 Tested by all of fast/url and numerous other tests. 126560 126561 * html/HTML5Tokenizer.cpp: 126562 (WebCore::HTML5Tokenizer::notifyFinished): 126563 - Unpause the treebuilder before executing scripts. 126564 (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets): 126565 - Unpause the treebuilder before executing scripts. 126566 126567 2010-06-07 Eric Seidel <eric (a] webkit.org> 126568 126569 Reviewed by Adam Barth. 126570 126571 HTML5 Parser hits ASSERT in fast/events/stop-load-in-unload-handler-using-document-write.html 126572 https://bugs.webkit.org/show_bug.cgi?id=40268 126573 126574 Teach HTML5Tokenizer about m_parserStopped. 126575 126576 While tracking down how m_parserStopped was used, I found 126577 several useless implementations of stopParsing() which I removed. 126578 126579 I also found a comment in HTMLTokenizer which still talks about the 126580 "part" (an old class now split into Frame, Page, FrameLoader, etc.) 126581 and an nearly empty FrameLoader::tokenizerProcessedData which I just 126582 inlined into its one caller. 126583 126584 Tests: 126585 fast/events/stop-load-in-unload-handler-using-document-write.html 126586 http/tests/security/xssAuditor/full-block-base-href.html 126587 126588 * html/HTML5Tokenizer.cpp: 126589 (WebCore::HTML5Tokenizer::pumpLexerIfPossible): 126590 - New method used instead of direct calls to pumpLexer for when 126591 callers would like to pump the lexer if possible, but don't want 126592 to check if the parser is stopped, etc. 126593 (WebCore::HTML5Tokenizer::pumpLexer): 126594 - Added an ASSERT that the parser is not stopped. 126595 - Stop pumping if the parser is stopped. 126596 (WebCore::HTML5Tokenizer::write): 126597 - Ignore the write if the parser is already stopped. 126598 (WebCore::HTML5Tokenizer::end): 126599 (WebCore::HTML5Tokenizer::attemptToEnd): 126600 - Move comment back to finish() which was incorrectly moved here. 126601 (WebCore::HTML5Tokenizer::endIfDelayed): 126602 (WebCore::HTML5Tokenizer::finish): 126603 - Move comment back here from attemptToEnd() 126604 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution): 126605 - Remove a bogus ASSERT. The lexer will stop when it needs 126606 more data, which may not necessarily mean m_source.isEmpty(). 126607 * html/HTML5Tokenizer.h: 126608 - Add pumpLexerIfPossible(). 126609 * html/HTMLTokenizer.cpp: 126610 (WebCore::HTMLTokenizer::stopParsing): 126611 - Add a FIXME about if we really should call checkCompleted() here. 126612 - Inline FrameLoader::tokenizerProcessedData() since this was the only caller. 126613 * loader/FrameLoader.cpp: 126614 - Remove tokenizerProcessedData() 126615 * loader/FrameLoader.h: 126616 - Remove tokenizerProcessedData() 126617 * loader/MediaDocument.cpp: 126618 - Remove unneeded Tokenizer::stopParsing() override. 126619 * loader/PluginDocument.cpp: 126620 - Remove unneeded Tokenizer::stopParsing() override. 126621 * loader/SinkDocument.cpp: 126622 - Remove unneeded Tokenizer::stopParsing() override. 126623 126624 2010-06-07 Adam Barth <abarth (a] webkit.org> 126625 126626 Reviewed by Eric Seidel. 126627 126628 Fix XFrameOptions and xssAuditor crashes in HTML5 parser 126629 https://bugs.webkit.org/show_bug.cgi?id=40265 126630 126631 We're not supposed to call end() while the tokenizer's write() method. 126632 This causes a bunch of LayoutTests to crash. In particular, this patch 126633 fixes crashes in the following tests: 126634 126635 Tests: 126636 * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html 126637 * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html 126638 * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html 126639 * http/tests/security/xssAuditor/full-block-base-href.html 126640 * http/tests/security/xssAuditor/full-block-get-from-iframe.html 126641 * http/tests/security/xssAuditor/full-block-iframe-javascript-url.html 126642 * http/tests/security/xssAuditor/full-block-link-onclick.html 126643 * http/tests/security/xssAuditor/full-block-post-from-iframe.html 126644 * http/tests/security/xssAuditor/full-block-script-tag.html 126645 * http/tests/security/xssAuditor/xss-protection-parsing-01.html 126646 126647 * html/HTML5Tokenizer.cpp: 126648 (WebCore::): 126649 (WebCore::HTML5Tokenizer::HTML5Tokenizer): 126650 (WebCore::HTML5Tokenizer::write): 126651 (WebCore::HTML5Tokenizer::attemptToEnd): 126652 (WebCore::HTML5Tokenizer::endIfDelayed): 126653 (WebCore::HTML5Tokenizer::finish): 126654 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution): 126655 * html/HTML5Tokenizer.h: 126656 (WebCore::HTML5Tokenizer::inWrite): 126657 126658 2010-06-07 Eric Seidel <eric (a] webkit.org> 126659 126660 Reviewed by Adam Barth. 126661 126662 HTML5 parser hits ASSERT in http/tests/misc/window-dot-stop.html 126663 https://bugs.webkit.org/show_bug.cgi?id=40264 126664 126665 * html/HTML5Tokenizer.cpp: 126666 (WebCore::HTML5Tokenizer::executeScript): 126667 126668 2010-06-07 Kinuko Yasuda <kinuko (a] chromium.org> 126669 126670 Unreviewed. 126671 126672 Avoid "warning: no previous prototype for" in Snow Leopard compilation. 126673 126674 * platform/BlobItem.cpp: Added static to getFileSnapshotModificationTime(). 126675 126676 2010-06-07 Kinuko Yasuda <kinuko (a] chromium.org> 126677 126678 Reviewed by Jian Li. 126679 126680 Refactor FormData and Blob for better support of Blobs synthesized by BlobBuilder. 126681 https://bugs.webkit.org/show_bug.cgi?id=39083 126682 126683 - Introduces a new class BlobItem as a basic component of Blob and FormDataList. 126684 - File would become a special type of Blob that contains only one FileBlobItem. 126685 - Fix the dependency violation in FormData so that the files under platform/ do not include any html/ files. 126686 126687 The patch doesn't support the latest File API changes (e.g. type, 126688 url and slice's type parameters) and should not change any of its 126689 existing behaviors. 126690 126691 The existing tests should be able to be used for regression. 126692 126693 * CMakeLists.txt: 126694 * GNUmakefile.am: 126695 * WebCore.gypi: 126696 * WebCore.pro: 126697 * WebCore.vcproj/WebCore.vcproj: 126698 * WebCore.xcodeproj/project.pbxproj: 126699 * html/Blob.cpp: 126700 (WebCore::Blob::Blob): 126701 (WebCore::Blob::size): 126702 (WebCore::Blob::path): 126703 (WebCore::Blob::append): 126704 (WebCore::Blob::slice): 126705 * html/Blob.h: 126706 (WebCore::Blob::create): 126707 (WebCore::Blob::type): 126708 (WebCore::Blob::items): 126709 (WebCore::Blob::Blob): 126710 * html/File.cpp: 126711 (WebCore::File::File): 126712 (WebCore::File::name): 126713 * html/File.h: 126714 (WebCore::File::fileName): 126715 * html/FileReader.cpp: 126716 (WebCore::FileReader::readAsBinaryString): 126717 (WebCore::FileReader::readAsText): 126718 * html/FileStream.cpp: 126719 (WebCore::FileStream::openForRead): 126720 * html/FormDataList.cpp: 126721 (WebCore::FormDataList::appendString): Moved the line ending fix logic to StringBlobItem::convertToCString. 126722 (WebCore::FormDataList::appendBlob): 126723 * html/FormDataList.h: 126724 (WebCore::FormDataList::items): 126725 * html/HTMLFormElement.cpp: 126726 (WebCore::HTMLFormElement::createFormData): 126727 * html/HTMLProgressElement.cpp: 126728 * platform/BlobItem.cpp: Added. 126729 * platform/BlobItem.h: Added. 126730 * platform/network/FormData.cpp: 126731 (WebCore::FormDataElement::FormDataElement): 126732 (WebCore::FormData::create): 126733 (WebCore::FormData::createMultiPart): 126734 (WebCore::FormData::deepCopy): 126735 (WebCore::FormData::appendData): 126736 (WebCore::FormData::appendString): 126737 (WebCore::FormData::appendFile): 126738 (WebCore::FormData::appendFileRange): 126739 (WebCore::FormData::appendItems): 126740 (WebCore::FormData::appendItem): 126741 (WebCore::FormData::appendKeyValuePairItems): 126742 * platform/network/FormData.h: 126743 (WebCore::operator!=): 126744 * platform/network/mac/FormDataStreamMac.mm: 126745 (WebCore::closeCurrentStream): 126746 (WebCore::advanceCurrentStream): 126747 (WebCore::formCreate): 126748 (WebCore::formRead): 126749 (WebCore::setHTTPBody): 126750 * xml/XMLHttpRequest.cpp: 126751 (WebCore::XMLHttpRequest::send): 126752 126753 2010-06-07 Vangelis Kokkevis <vangelis (a] chromium.org> 126754 126755 Reviewed by Dimitri Glazkov. 126756 126757 [chromium] Decoupled transform matrix update of composited layers from 126758 drawing and interposed a sorting step so that the layers are now composited 126759 back to front to get transparency working correctly. Also added missing code 126760 for the preserves3D CSS property. 126761 126762 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 126763 (WebCore::GraphicsLayerChromium::updateLayerPreserves3D): 126764 * platform/graphics/chromium/LayerChromium.h: 126765 (WebCore::LayerChromium::setDrawTransform): 126766 (WebCore::LayerChromium::drawTransform): 126767 (WebCore::LayerChromium::setDrawOpacity): 126768 (WebCore::LayerChromium::drawOpacity): 126769 (WebCore::LayerChromium::preserves3D): 126770 * platform/graphics/chromium/LayerRendererChromium.cpp: 126771 (WebCore::compareLayerZ): 126772 (WebCore::LayerRendererChromium::drawLayers): 126773 (WebCore::LayerRendererChromium::updateLayersRecursive): 126774 (WebCore::LayerRendererChromium::drawLayer): 126775 * platform/graphics/chromium/LayerRendererChromium.h: 126776 126777 2010-06-07 Anton Muhin <antonm (a] chromium.org> 126778 126779 Reviewed by Nate Chapin. 126780 126781 [Chromium] convert a key to AtomicString in V8NodeList::namedPropertyGetter 126782 https://bugs.webkit.org/show_bug.cgi?id=40238 126783 126784 Comparison to "length" below could be performed faster in this (major) case 126785 as it would only require direct pointer comparison (cf. to full text 126786 comparison if key is converted to WebCore::String.) 126787 126788 * bindings/v8/custom/V8NodeListCustom.cpp: 126789 (WebCore::V8NodeList::namedPropertyGetter): 126790 126791 2010-06-07 Ariya Hidayat <ariya.hidayat (a] codeaurora.org> 126792 126793 Reviewed by Kenneth Rohde Christiansen. 126794 126795 [Qt] Fix GraphicsContext::clipOut to take the transformation matrix into account. 126796 126797 * platform/graphics/qt/GraphicsContextQt.cpp: 126798 (WebCore::GraphicsContext::clipOut): 126799 126800 2010-06-07 Gustavo Noronha Silva <gustavo.noronha (a] collabora.co.uk> 126801 126802 Reviewed by Xan Lopez. 126803 126804 [gtk] web fonts not loaded properly in scribd html5 reader 126805 https://bugs.webkit.org/show_bug.cgi?id=38758 126806 126807 Avoid always giving a positive reply in createFontPlatformData. We 126808 do not want every non-existing family name to be considered a hit, 126809 or weird usage of local sources in @font-face rules will make 126810 WebKitGTK+ never consider the online fonts. 126811 126812 * GNUmakefile.am: 126813 * platform/graphics/cairo/FontCacheCairo.cpp: 126814 (WebCore::isWellKnownFontName): 126815 (WebCore::FontCache::createFontPlatformData): 126816 * platform/graphics/cairo/GOwnPtrCairo.cpp: Added. 126817 (WTF::FcPattern): 126818 (WTF::FcObjectSet): 126819 (WTF::FcFontSet): 126820 * platform/graphics/cairo/GOwnPtrCairo.h: Added. 126821 126822 2010-06-07 Adam Barth <abarth (a] webkit.org> 126823 126824 Reviewed by Eric Seidel. 126825 126826 "Fix" fast/dom/stripNullFromTextNodes.html in HTML5 parser 126827 https://bugs.webkit.org/show_bug.cgi?id=40200 126828 126829 The proper handling of null characters is to replace them with U+FFFD. 126830 This patch "fixes" fast/dom/stripNullFromTextNodes.html in the sense 126831 that it makes it give the proper output w.r.t. HTML5. However, that 126832 doesn't match the behavior of the old parser, which just stripped the 126833 nulls. 126834 126835 * html/HTML5Lexer.h: 126836 (WebCore::HTML5Lexer::InputStreamPreprocessor::peek): 126837 126838 2010-06-07 Adam Barth <abarth (a] webkit.org> 126839 126840 Reviewed by Eric Seidel. 126841 126842 HTML5 parser should normalize line endings 126843 https://bugs.webkit.org/show_bug.cgi?id=40199 126844 126845 When reading characters from the source, we need to normalize line 126846 endings, which means treating \r as \n and folding \r\n sequences into 126847 a single \n. Doing this requires a slightly tighter pattern for 126848 advancing the source (to make sure we update our state machine 126849 correctly). 126850 126851 Fixes fast/css/first-child-pseudo-class.html and hundreds of other 126852 LayoutTests in the HTML5 parser. 126853 126854 * html/HTML5Lexer.cpp: 126855 (WebCore::HTML5Lexer::nextToken): 126856 * html/HTML5Lexer.h: 126857 (WebCore::HTML5Lexer::InputStreamPreprocessor::LineEndingNormalizer): 126858 - Introduced InputStreamPreprocessor to keep track of our line 126859 endings state machine. This class will grow to eventually do 126860 all the input stream preprocessing required by the HTML5 spec. 126861 (WebCore::HTML5Lexer::InputStreamPreprocessor::nextInputCharacter): 126862 - We need to be careful not to read *source more than 126863 once because we need to know whether we've transformed the 126864 character. Keeping the next input character in this state 126865 machine requires some careful coding, but seems advantageous. 126866 (WebCore::HTML5Lexer::InputStreamPreprocessor::peek): 126867 (WebCore::HTML5Lexer::InputStreamPreprocessor::advance): 126868 126869 2010-06-07 Andrei Popescu <andreip (a] google.com> 126870 126871 Reviewed by Jeremy Orlow. 126872 126873 run-bindings-tests results broken by Changeset 60776 126874 https://bugs.webkit.org/show_bug.cgi?id=40230 126875 126876 The change to CodeGeneratorJS.pm in 126877 http://trac.webkit.org/changeset/60776/trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm 126878 added the possibility to use [CallWith=ScriptExecutionContext] in idl files. 126879 126880 Before the above change was submitted, CodeGeneratorJS.pm was modified so that native 126881 functions return EncodedJSValue instead of JSValues. This was done in 126882 http://trac.webkit.org/changeset/60631/trunk/WebCore/bindings/scripts/CodeGeneratorJS.pm 126883 126884 This CL updates the CodeGeneratorJS.pm to correctly return an EncodedJSValue in the case 126885 where the ScriptExecutionContext pointer is 0 at the time when the native function is invoked. 126886 126887 No new tests, just fixing run-bindings-tests. 126888 126889 * bindings/scripts/CodeGeneratorJS.pm: 126890 * bindings/scripts/test/JS/JSTestObj.cpp: 126891 (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext): 126892 * bindings/scripts/test/JS/JSTestObj.h: 126893 126894 2010-06-07 Kwang Yul Seo <skyul (a] company100.net> 126895 126896 Reviewed by Eric Seidel. 126897 126898 [BREWMP] Add dummy SearchPopupMenu implementation 126899 https://bugs.webkit.org/show_bug.cgi?id=40224 126900 126901 Add dummy implementation of SearchPopupMenu. 126902 126903 * platform/brew/SearchPopupMenuBrew.cpp: Added. 126904 (WebCore::SearchPopupMenu::saveRecentSearches): 126905 (WebCore::SearchPopupMenu::loadRecentSearches): 126906 (WebCore::SearchPopupMenu::SearchPopupMenu): 126907 (WebCore::SearchPopupMenu::enabled): 126908 126909 2010-06-07 Julien Chaffraix <jchaffraix (a] webkit.org> 126910 126911 Unreviewed, reverting my HTML comment parsing change as it 126912 breaks Gtk and Qt. 126913 126914 * html/HTMLTokenizer.cpp: 126915 (WebCore::HTMLTokenizer::parseComment): 126916 (WebCore::HTMLTokenizer::parseTag): 126917 * html/HTMLTokenizer.h: 126918 126919 2010-06-07 Martin Robinson <mrobinson (a] igalia.com> 126920 126921 Reviewed by Oliver Hunt. 126922 126923 [GTK] HTML5 input type=range is not drawn 126924 https://bugs.webkit.org/show_bug.cgi?id=39561 126925 126926 Support HTML5 range widgets. They are now drawn using the standard 126927 GTK+ theme drawing mechanism. 126928 126929 * platform/gtk/RenderThemeGtk.cpp: 126930 (WebCore::supportsFocus): Add focus support for parts of sliders. 126931 (WebCore::setMozillaState): 126932 Add the GtkThemeWidgetType argument and honor depressed states for slider thumbs. 126933 (WebCore::paintMozillaGtkWidget): Pass in the widget type to setMozillaState. 126934 (WebCore::RenderThemeGtk::paintSliderTrack): Added. 126935 (WebCore::RenderThemeGtk::adjustSliderTrackStyle): Added. 126936 (WebCore::RenderThemeGtk::paintSliderThumb): Added. 126937 (WebCore::RenderThemeGtk::adjustSliderThumbStyle): Added. 126938 (WebCore::RenderThemeGtk::adjustSliderThumbSize): Added support for non-media sliders. 126939 * platform/gtk/RenderThemeGtk.h: Added new method declarations. 126940 126941 2010-06-07 Martin Robinson <mrobinson (a] igalia.com> 126942 126943 Reviewed by Xan Lopez. 126944 126945 [GTK] gtk_widget_get_window should replace widget->window 126946 https://bugs.webkit.org/show_bug.cgi?id=40180 126947 126948 Replace all uses of widget->window with gtk_widget_get_window. For older 126949 GTK+ versions, #define gtk_widget_get_window in GtkVersioning.h. 126950 126951 No tests necessary as functionality has not changed. 126952 126953 * platform/gtk/GtkPluginWidget.cpp: 126954 (WebCore::GtkPluginWidget::invalidateRect): Replace widget->window use. 126955 * platform/gtk/GtkVersioning.h: Add gtk_widget_get_window for old GTK+ versions. 126956 * platform/gtk/PlatformScreenGtk.cpp: 126957 (WebCore::getVisual): Replace widget->window use. 126958 (WebCore::screenRect): Ditto. 126959 * platform/gtk/PopupMenuGtk.cpp: 126960 (WebCore::PopupMenu::show): Ditto. 126961 * platform/gtk/WidgetGtk.cpp: 126962 (WebCore::gdkDrawable): Ditto. 126963 (WebCore::Widget::setCursor): Ditto. 126964 126965 2010-06-07 Nikolas Zimmermann <nzimmermann (a] rim.com> 126966 126967 Reviewed by Sam Weinig. 126968 126969 Add CPP bindings generator 126970 https://bugs.webkit.org/show_bug.cgi?id=38279 126971 126972 Add CPP bindings generator used in Olympia platform. 126973 We can succesfully generate cpp bindings for all IDLs except: 126974 - DOMWindow.idl / EventTarget.idl (filtered out in the IDL list in DerivedSources.make for non-jsc/v8 generators anyways, so no problem at all) 126975 - inspector/ (not needed for us at all) 126976 - svg/ (needs custom handling, related to animated attributes) 126977 126978 All generated files are free of style issues: "Total errors found: 0 in 510 files" 126979 Not integrated in any build system so far, though I've successfully tested on Mac and inside Olympia, of course. 126980 126981 * bindings/cpp: Added. 126982 * bindings/cpp/WebDOMCString.cpp: Added. 126983 (WebDOMCString::reset): 126984 (WebDOMCString::assign): 126985 (WebDOMCString::length): 126986 (WebDOMCString::data): 126987 (WebDOMCString::utf16): 126988 (WebDOMCString::fromUTF16): 126989 (WebDOMCString::WebDOMCString): 126990 (WebDOMCString::operator=): 126991 (WebDOMCString::operator WTF::CString): 126992 * bindings/cpp/WebDOMCString.h: Added. 126993 (WebDOMCString::~WebDOMCString): 126994 (WebDOMCString::WebDOMCString): 126995 (WebDOMCString::operator=): 126996 (WebDOMCString::isEmpty): 126997 (WebDOMCString::isNull): 126998 * bindings/cpp/WebDOMEventListenerCustom.cpp: Added. 126999 (WebDOMEventListener::handleEvent): 127000 (toWebKit): 127001 * bindings/cpp/WebDOMEventTarget.cpp: Added. 127002 (WebDOMEventTarget::WebDOMEventTargetPrivate::WebDOMEventTargetPrivate): 127003 (WebDOMEventTarget::WebDOMEventTarget): 127004 (WebDOMEventTarget::~WebDOMEventTarget): 127005 (WebDOMEventTarget::impl): 127006 (toWebCore): 127007 (toWebKit): 127008 * bindings/cpp/WebDOMEventTarget.h: Added. 127009 * bindings/cpp/WebDOMHTMLDocumentCustom.cpp: Added. 127010 (documentWrite): 127011 (WebDOMHTMLDocument::write): 127012 (WebDOMHTMLDocument::writeln): 127013 * bindings/cpp/WebDOMNodeCustom.cpp: Added. 127014 (WebDOMNode::insertBefore): 127015 (WebDOMNode::replaceChild): 127016 (WebDOMNode::removeChild): 127017 (WebDOMNode::appendChild): 127018 (WebDOMNode::addEventListener): 127019 (WebDOMNode::removeEventListener): 127020 * bindings/cpp/WebDOMObject.h: Added. 127021 (WebDOMObject::WebDOMObject): 127022 (WebDOMObject::~WebDOMObject): 127023 * bindings/cpp/WebDOMString.cpp: Added. 127024 (WebDOMString::reset): 127025 (WebDOMString::assign): 127026 (WebDOMString::length): 127027 (WebDOMString::data): 127028 (WebDOMString::utf8): 127029 (WebDOMString::fromUTF8): 127030 (WebDOMString::WebDOMString): 127031 (WebDOMString::operator=): 127032 (WebDOMString::operator WebCore::String): 127033 (WebDOMString::operator WebCore::AtomicString): 127034 (WebDOMString::equals): 127035 * bindings/cpp/WebDOMString.h: Added. 127036 (WebDOMString::~WebDOMString): 127037 (WebDOMString::WebDOMString): 127038 (WebDOMString::operator=): 127039 (WebDOMString::isEmpty): 127040 (WebDOMString::isNull): 127041 * bindings/cpp/WebExceptionHandler.cpp: Added. 127042 (globalExceptionHandler): 127043 (webInstallExceptionHandler): 127044 (webRaiseDOMException): 127045 * bindings/cpp/WebExceptionHandler.h: Added. 127046 (webDOMRaiseError): 127047 * bindings/cpp/WebNativeEventListener.cpp: Added. 127048 (WebNativeEventListener::WebNativeEventListener): 127049 (WebNativeEventListener::~WebNativeEventListener): 127050 (WebNativeEventListener::handleEvent): 127051 (WebNativeEventListener::reportError): 127052 (WebNativeEventListener::operator==): 127053 * bindings/cpp/WebNativeEventListener.h: Added. 127054 (WebNativeEventListener::create): 127055 (WebNativeEventListener::cast): 127056 * bindings/scripts/CodeGeneratorCPP.pm: Added. 127057 * bindings/scripts/test/CPP: Added. 127058 * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: Added. 127059 (WebDOMTestCallback::WebDOMTestCallbackPrivate::WebDOMTestCallbackPrivate): 127060 (WebDOMTestCallback::WebDOMTestCallback): 127061 (WebDOMTestCallback::impl): 127062 (WebDOMTestCallback::~WebDOMTestCallback): 127063 (WebDOMTestCallback::callbackWithClass1Param): 127064 (WebDOMTestCallback::callbackWithClass2Param): 127065 (WebDOMTestCallback::callbackWithNonBoolReturnType): 127066 (toWebCore): 127067 (toWebKit): 127068 * bindings/scripts/test/CPP/WebDOMTestCallback.h: Added. 127069 * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Added. 127070 (WebDOMTestInterface::WebDOMTestInterfacePrivate::WebDOMTestInterfacePrivate): 127071 (WebDOMTestInterface::WebDOMTestInterface): 127072 (WebDOMTestInterface::impl): 127073 (WebDOMTestInterface::~WebDOMTestInterface): 127074 (toWebCore): 127075 (toWebKit): 127076 * bindings/scripts/test/CPP/WebDOMTestInterface.h: Added. 127077 * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Added. 127078 (WebDOMTestObj::WebDOMTestObjPrivate::WebDOMTestObjPrivate): 127079 (WebDOMTestObj::WebDOMTestObj): 127080 (WebDOMTestObj::impl): 127081 (WebDOMTestObj::~WebDOMTestObj): 127082 (WebDOMTestObj::readOnlyIntAttr): 127083 (WebDOMTestObj::readOnlyStringAttr): 127084 (WebDOMTestObj::readOnlyTestObjAttr): 127085 (WebDOMTestObj::intAttr): 127086 (WebDOMTestObj::setIntAttr): 127087 (WebDOMTestObj::longLongAttr): 127088 (WebDOMTestObj::setLongLongAttr): 127089 (WebDOMTestObj::unsignedLongLongAttr): 127090 (WebDOMTestObj::setUnsignedLongLongAttr): 127091 (WebDOMTestObj::stringAttr): 127092 (WebDOMTestObj::setStringAttr): 127093 (WebDOMTestObj::testObjAttr): 127094 (WebDOMTestObj::setTestObjAttr): 127095 (WebDOMTestObj::attrWithException): 127096 (WebDOMTestObj::setAttrWithException): 127097 (WebDOMTestObj::attrWithSetterException): 127098 (WebDOMTestObj::setAttrWithSetterException): 127099 (WebDOMTestObj::attrWithGetterException): 127100 (WebDOMTestObj::setAttrWithGetterException): 127101 (WebDOMTestObj::scriptStringAttr): 127102 (WebDOMTestObj::voidMethod): 127103 (WebDOMTestObj::voidMethodWithArgs): 127104 (WebDOMTestObj::intMethod): 127105 (WebDOMTestObj::intMethodWithArgs): 127106 (WebDOMTestObj::objMethod): 127107 (WebDOMTestObj::objMethodWithArgs): 127108 (WebDOMTestObj::methodThatRequiresAllArgs): 127109 (WebDOMTestObj::methodThatRequiresAllArgsAndThrows): 127110 (WebDOMTestObj::serializedValue): 127111 (WebDOMTestObj::methodWithException): 127112 (WebDOMTestObj::addEventListener): 127113 (WebDOMTestObj::removeEventListener): 127114 (WebDOMTestObj::withDynamicFrame): 127115 (WebDOMTestObj::withDynamicFrameAndArg): 127116 (WebDOMTestObj::withDynamicFrameAndOptionalArg): 127117 (WebDOMTestObj::withScriptStateVoid): 127118 (WebDOMTestObj::withScriptStateObj): 127119 (WebDOMTestObj::withScriptStateVoidException): 127120 (WebDOMTestObj::withScriptStateObjException): 127121 (WebDOMTestObj::methodWithOptionalArg): 127122 (WebDOMTestObj::methodWithNonOptionalArgAndOptionalArg): 127123 (WebDOMTestObj::methodWithNonOptionalArgAndTwoOptionalArgs): 127124 (toWebCore): 127125 (toWebKit): 127126 * bindings/scripts/test/CPP/WebDOMTestObj.h: Added. 127127 * css/StyleSheet.idl: Export helper method isCSSStyleSheet() for cpp bindings only. 127128 * dom/CustomEvent.idl: Disabled for cpp bindings, needs arbitary input parameter handling support ('DOMObject' type). 127129 * dom/Document.idl: Ignore getCSSCanvasContext() for cpp bindings and export helper method isHTMLDocument() (cpp bindings only). 127130 * dom/Event.idl: Export isMutationEvent()/isMouseEvent()/isUIEvent() helpers for cpp bindings only. 127131 * dom/EventListener.h: Add CPPEventListenerType. 127132 * dom/Node.idl: addEventListener/removeEventListener need [Custom] flag for cpp bindings. 127133 * dom/PopStateEvent.idl: Disabled just like CustomEvent, for the same reason ("any" argument type handling). 127134 * html/HTMLCanvasElement.idl: Disable getContext() method for cpp bindings, as it's done for objc bindings. 127135 * html/HTMLDocument.idl: Add [NoCPPCustom] marker for open(), as we're just autogenerating it. 127136 * html/HTMLInputElement.idl: Disable valueAsDate() method for cpp bindings, as we're missing native 'Date' type support. 127137 * html/TextMetrics.h: Add missing PassRefPtr.h include. 127138 * html/canvas/CanvasRenderingContext2D.idl: Disable methods (setLineCap, etc..) for cpp bindings whose names clash with property setters. 127139 * page/AbstractView.idl: Rename 'Media' type to 'StyleMedia' - this should have been done before. 127140 * page/Location.idl: Disable several methods which would need a custom implementation for the cpp bindings. 127141 * page/WebKitPoint.h: Add missing PassRefPtr.h include. 127142 * storage/SQLResultSet.idl: Correct type from 'long' to 'long long', for cpp bindings only though as it wouldn't build on Chromium/V8. 127143 * workers/DedicatedWorkerContext.idl: Disable postMessage() for now when using cpp bindings, would need custom code for us. 127144 * workers/WorkerContext.idl: Hide constructors from cpp bindings. 127145 127146 2010-06-07 Julien Chaffraix <jchaffraix (a] webkit.org> 127147 127148 Reviewed by Alexey Proskuryakov. 127149 127150 Space should be allowed between -- and > in comment end 127151 https://bugs.webkit.org/show_bug.cgi?id=21945 127152 127153 Implemented the HTML comment parsing algorithm so that we match HTML5 and 127154 FF when parsing comments. Missing from this patch is 127155 the parser errors, which will be added in a follow up patch. 127156 127157 Added tests cases for broken comments. 127158 127159 Tests: fast/parser/broken-comment-1.html 127160 fast/parser/broken-comment-2.html 127161 fast/parser/broken-comment-3.html 127162 fast/parser/broken-comment-4.html 127163 fast/parser/broken-comment-5.html 127164 fast/parser/broken-comment-6.html 127165 fast/parser/broken-comment-in-head-1.html 127166 fast/parser/broken-comment-in-head-2.html 127167 fast/parser/broken-comment-in-head-3.html 127168 fast/parser/broken-comment-in-head-4.html 127169 fast/parser/broken-comment-in-head-5.html 127170 127171 * html/HTMLTokenizer.cpp: 127172 (WebCore::HTMLTokenizer::parseComment): Now we use a state machine 127173 that matches the HTML5 specification. 127174 (WebCore::HTMLTokenizer::emitCommentToken): This emits the comment token 127175 and keep some of the original behavior as parseComment is called in wrong 127176 context (inside a <title> for example). Added a more explicit comment about 127177 this. 127178 (WebCore::HTMLTokenizer::parseTag): Remove the handling of <!--> in quirks mode. 127179 HTML5 specifies that we should accept this in strict mode too. 127180 * html/HTMLTokenizer.h: 127181 (WebCore::HTMLTokenizer::): Added a new enum for the comment parsing state. 127182 127183 2010-06-07 Mahesh Kulakrni <mahesh.kulkarni (a] nokia.com> 127184 127185 Reviewed by Simon Hausmann. 127186 127187 [QT] QT_BEARER flag is not enabled on S60 properly 127188 https://bugs.webkit.org/show_bug.cgi?id=39357 127189 127190 enable QT_BEARER for all platform based on qtmobility + 127191 bearer module availability or for qt 4.7+ 127192 127193 * WebCore.pri: 127194 127195 2010-06-07 Leon Clarke <leonclarke (a] google.com> 127196 127197 Reviewed by Jeremy Orlow. 127198 127199 Fix indexeddb idls in android makefile 127200 https://bugs.webkit.org/show_bug.cgi?id=40169 127201 127202 No new tests. Android-specific build fix. 127203 127204 * Android.derived.v8bindings.mk: 127205 127206 2010-06-07 Andrei Popescu <andreip (a] google.com> 127207 127208 Reviewed by Jeremy Orlow. 127209 127210 [indexedDB] It is impossible to create object stores 127211 https://bugs.webkit.org/show_bug.cgi?id=40054 127212 127213 No new tests. Layout tests will be added separately. 127214 127215 * Android.mk: 127216 * CMakeLists.txt: 127217 * GNUmakefile.am: 127218 * WebCore.gypi: 127219 * WebCore.pro: 127220 * WebCore.vcproj/WebCore.vcproj: 127221 * WebCore.xcodeproj/project.pbxproj: 127222 * bindings/scripts/CodeGeneratorJS.pm: 127223 * bindings/scripts/CodeGeneratorV8.pm: 127224 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 127225 (webkit_dom_test_obj_with_script_execution_context): 127226 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 127227 * bindings/scripts/test/JS/JSTestObj.cpp: 127228 (WebCore::): 127229 (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext): 127230 * bindings/scripts/test/JS/JSTestObj.h: 127231 * bindings/scripts/test/ObjC/DOMTestObj.h: 127232 * bindings/scripts/test/ObjC/DOMTestObj.mm: 127233 (-[DOMTestObj withScriptExecutionContext]): 127234 * bindings/scripts/test/TestObj.idl: 127235 * bindings/scripts/test/V8/V8TestObj.cpp: 127236 (WebCore::TestObjInternal::withScriptExecutionContextCallback): 127237 (WebCore::): 127238 * page/DOMWindow.cpp: 127239 (WebCore::DOMWindow::clear): 127240 (WebCore::DOMWindow::indexedDB): 127241 * storage/IDBCallbacks.h: 127242 * storage/IDBDatabase.h: 127243 * storage/IDBDatabaseImpl.cpp: 127244 (WebCore::IDBDatabaseImpl::createObjectStore): 127245 * storage/IDBDatabaseImpl.h: 127246 * storage/IDBDatabaseRequest.cpp: 127247 (WebCore::IDBDatabaseRequest::IDBDatabaseRequest): 127248 (WebCore::IDBDatabaseRequest::createObjectStore): 127249 * storage/IDBDatabaseRequest.h: 127250 * storage/IDBDatabaseRequest.idl: 127251 * storage/IDBObjectStore.cpp: Removed. 127252 * storage/IDBObjectStore.h: 127253 (WebCore::IDBObjectStore::~IDBObjectStore): 127254 * storage/IDBObjectStoreImpl.cpp: Added. 127255 (WebCore::IDBObjectStoreImpl::~IDBObjectStoreImpl): 127256 (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl): 127257 (WebCore::IDBObjectStoreImpl::indexNames): 127258 (WebCore::IDBObjectStoreImpl::createIndex): 127259 (WebCore::IDBObjectStoreImpl::index): 127260 (WebCore::IDBObjectStoreImpl::removeIndex): 127261 * storage/IDBObjectStoreImpl.h: Added. 127262 (WebCore::IDBObjectStoreImpl::create): 127263 (WebCore::IDBObjectStoreImpl::name): 127264 (WebCore::IDBObjectStoreImpl::keyPath): 127265 * storage/IDBObjectStoreRequest.cpp: 127266 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest): 127267 * storage/IDBObjectStoreRequest.h: 127268 (WebCore::IDBObjectStoreRequest::create): 127269 * storage/IDBRequest.cpp: 127270 (WebCore::IDBRequest::onSuccess): 127271 * storage/IDBRequest.h: 127272 * storage/IndexedDatabaseRequest.cpp: 127273 (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest): 127274 (WebCore::IndexedDatabaseRequest::open): 127275 * storage/IndexedDatabaseRequest.h: 127276 (WebCore::IndexedDatabaseRequest::create): 127277 * storage/IndexedDatabaseRequest.idl: 127278 127279 2010-06-07 Nikolas Zimmermann <nzimmermann (a] rim.com> 127280 127281 Not reviewed. Updated run-bindings-tests results. 127282 127283 * bindings/scripts/test/JS/JSTestInterface.cpp: 127284 (WebCore::JSTestInterfaceConstructor::constructTestInterface): 127285 * bindings/scripts/test/JS/JSTestObj.cpp: 127286 (WebCore::jsTestObjPrototypeFunctionVoidMethod): 127287 (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs): 127288 (WebCore::jsTestObjPrototypeFunctionIntMethod): 127289 (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs): 127290 (WebCore::jsTestObjPrototypeFunctionObjMethod): 127291 (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs): 127292 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs): 127293 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows): 127294 (WebCore::jsTestObjPrototypeFunctionSerializedValue): 127295 (WebCore::jsTestObjPrototypeFunctionMethodWithException): 127296 (WebCore::jsTestObjPrototypeFunctionCustomMethod): 127297 (WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs): 127298 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException): 127299 (WebCore::jsTestObjPrototypeFunctionAddEventListener): 127300 (WebCore::jsTestObjPrototypeFunctionRemoveEventListener): 127301 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrame): 127302 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg): 127303 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg): 127304 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): 127305 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): 127306 (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid): 127307 (WebCore::jsTestObjPrototypeFunctionWithScriptStateObj): 127308 (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException): 127309 (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException): 127310 (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg): 127311 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg): 127312 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs): 127313 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1): 127314 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2): 127315 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3): 127316 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4): 127317 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod): 127318 * bindings/scripts/test/JS/JSTestObj.h: 127319 127320 2010-06-07 Pavel Podivilov <podivilov (a] chromium.org> 127321 127322 Reviewed by Pavel Feldman. 127323 127324 Web Inspector: Implement JSON parsing for InspectorValue. 127325 https://bugs.webkit.org/show_bug.cgi?id=40064 127326 127327 * inspector/InspectorValues.cpp: 127328 (WebCore::): 127329 (WebCore::InspectorValue::asBool): 127330 (WebCore::InspectorValue::asNumber): 127331 (WebCore::InspectorValue::asString): 127332 (WebCore::InspectorValue::asObject): 127333 (WebCore::InspectorValue::asArray): 127334 (WebCore::InspectorValue::readJSON): 127335 (WebCore::InspectorValue::writeJSON): 127336 (WebCore::InspectorBasicValue::asBool): 127337 (WebCore::InspectorBasicValue::asNumber): 127338 (WebCore::InspectorBasicValue::writeJSON): 127339 (WebCore::InspectorString::asString): 127340 (WebCore::InspectorObject::asObject): 127341 (WebCore::InspectorObject::getBool): 127342 (WebCore::InspectorObject::getNumber): 127343 (WebCore::InspectorObject::getString): 127344 (WebCore::InspectorObject::getObject): 127345 (WebCore::InspectorObject::getArray): 127346 (WebCore::InspectorObject::get): 127347 (WebCore::InspectorArray::asArray): 127348 * inspector/InspectorValues.h: 127349 (WebCore::InspectorObject::begin): 127350 (WebCore::InspectorObject::end): 127351 127352 2010-06-07 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 127353 127354 Reviewed by Simon Hausmann. 127355 127356 [Qt] Fix text selection drawing. 127357 https://bugs.webkit.org/show_bug.cgi?id=40221 127358 127359 The regression was introduced in r60169. 127360 127361 * platform/graphics/qt/FontQt.cpp: 127362 (WebCore::drawTextCommon): 127363 127364 2010-06-07 Yury Semikhatsky <yurys (a] chromium.org> 127365 127366 Reviewed by Pavel Feldman. 127367 127368 Web Inspector: should be possible to distinguish extension scripts from main world scripts 127369 https://bugs.webkit.org/show_bug.cgi?id=40220 127370 127371 * bindings/js/ScriptDebugServer.cpp: remove global listeners set which is not used anymore. 127372 (WebCore::ScriptDebugServer::dispatchDidParseSource): pass script wrold type to the listeners. 127373 (WebCore::currentWorldType): 127374 (WebCore::ScriptDebugServer::sourceParsed): 127375 * bindings/js/ScriptDebugServer.h: 127376 * bindings/v8/ScriptDebugServer.cpp: 127377 (WebCore::ScriptDebugServer::dispatchDidParseSource): 127378 * inspector/InspectorController.cpp: 127379 (WebCore::InspectorController::didParseSource): 127380 * inspector/InspectorController.h: 127381 * inspector/InspectorFrontend.cpp: 127382 (WebCore::InspectorFrontend::parsedScriptSource): 127383 * inspector/InspectorFrontend.h: 127384 * inspector/ScriptDebugListener.h: pass type of the isolated world where the script was compiled to didParseSource. 127385 (WebCore::): 127386 * inspector/front-end/InjectedScript.js: 127387 (injectedScriptConstructor): 127388 * inspector/front-end/Script.js: 127389 (WebInspector.Script): 127390 * inspector/front-end/ScriptsPanel.js: 127391 (WebInspector.ScriptsPanel.prototype.addScript): 127392 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): use different style to highlight content scripts. 127393 * inspector/front-end/inspector.css: 127394 (#scripts-files option.extension-script): 127395 * inspector/front-end/inspector.js: 127396 (WebInspector.parsedScriptSource): 127397 127398 2010-06-06 MORITA Hajime <morrita (a] google.com> 127399 127400 Unreviewd, Chromium windows build fix. 127401 127402 * rendering/RenderThemeChromiumWin.cpp: 127403 (WebCore::RenderThemeChromiumWin::paintProgressBar): 127404 127405 2010-06-06 MORITA Hajime <morrita (a] google.com> 127406 127407 Reviewed by Kent Tamura. 127408 127409 ASSERTION FAILED with -webkit-appearance:progress-bar for non <progress> elements 127410 https://bugs.webkit.org/show_bug.cgi?id=40158 127411 127412 paintProgressBar() and paintMeter() assumed given RenderObject is 127413 RenderProgress or RenderMeter respectively, but arbitrary elements 127414 can have -webkit-appearance: progress-bar and such elements 127415 violates that assumption. So this change added type check before 127416 downcasting the RenderObject. 127417 127418 * platform/qt/RenderThemeQt.cpp: 127419 (WebCore::RenderThemeQt::paintProgressBar): 127420 * rendering/RenderTheme.cpp: 127421 (WebCore::RenderTheme::paintMeter): 127422 * rendering/RenderThemeChromiumSkia.cpp: 127423 (WebCore::RenderThemeChromiumSkia::paintProgressBar): 127424 * rendering/RenderThemeChromiumWin.cpp: 127425 (WebCore::RenderThemeChromiumWin::paintProgressBar): 127426 * rendering/RenderThemeMac.mm: 127427 (WebCore::RenderThemeMac::paintProgressBar): 127428 127429 2010-06-06 Gavin Barraclough <barraclough (a] apple.com> 127430 127431 Reviewed by NOBODY (Qt build fix pt 2). 127432 127433 * bridge/qt/qt_runtime.cpp: 127434 (JSC::Bindings::findMethodIndex): 127435 (JSC::Bindings::QtRuntimeMetaMethod::call): 127436 (JSC::Bindings::QtRuntimeConnectionMethod::call): 127437 127438 2010-06-06 Gavin Barraclough <barraclough (a] apple.com> 127439 127440 Reviewed by NOBODY (Qt build fix). 127441 127442 * bridge/qt/qt_runtime.cpp: 127443 (JSC::Bindings::findMethodIndex): 127444 (JSC::Bindings::QtRuntimeMetaMethod::call): 127445 (JSC::Bindings::QtRuntimeConnectionMethod::call): 127446 127447 2010-06-06 Gavin Barraclough <barraclough (a] apple.com> 127448 127449 Reviewed by Sam Weinig. 127450 127451 Bug 40214 - Clean up error construction / throwing in JSC. 127452 127453 The one egregious insanity here is that creating an error requires 127454 a VM-entry-esqe-host call (the string argument is wrapped as a JS 127455 object & pushed on the RegisterFile, then unwrapped back to a 127456 UString). Changing this also means you only require a global 127457 object, not an ExecState, to create an error. 127458 127459 The methods to create error objects are also parameterized 127460 requiring a switch on the type, which can be made cleaner and 127461 faster by moving to a separate method per error type. Code to add 127462 divot information to error had been duplicated, and is coalesced 127463 back into a single function. 127464 127465 Convenience methods added to create & throw type & syntax error 127466 with a default error message, since this is a common case. 127467 127468 Also, errors are currently thrown either using 127469 "throwError(exec, error)" or "exec->setException(error)" - unify 127470 on the former, since this is more commonly used. Add 127471 "throwVMError(exec, error)" equivalents, as a convenience for 127472 cases where the result was being wrapped in "JSValue::encode(...)". 127473 127474 * WebCore.xcodeproj/project.pbxproj: 127475 * bindings/js/JSArrayBufferConstructor.h: 127476 (WebCore::construct): 127477 * bindings/js/JSArrayBufferViewHelper.h: 127478 (WebCore::setWebGLArrayHelper): 127479 * bindings/js/JSAudioConstructor.cpp: 127480 (WebCore::constructAudio): 127481 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 127482 (WebCore::JSCanvasRenderingContext2D::setFillColor): 127483 (WebCore::JSCanvasRenderingContext2D::setStrokeColor): 127484 (WebCore::JSCanvasRenderingContext2D::drawImage): 127485 (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): 127486 (WebCore::JSCanvasRenderingContext2D::setShadow): 127487 (WebCore::JSCanvasRenderingContext2D::createPattern): 127488 (WebCore::JSCanvasRenderingContext2D::fillText): 127489 (WebCore::JSCanvasRenderingContext2D::strokeText): 127490 * bindings/js/JSClipboardCustom.cpp: 127491 (WebCore::JSClipboard::clearData): 127492 (WebCore::JSClipboard::getData): 127493 (WebCore::JSClipboard::setDragImage): 127494 * bindings/js/JSDOMBinding.cpp: 127495 (WebCore::setDOMException): 127496 (WebCore::toJSSequence): 127497 * bindings/js/JSDOMWrapper.cpp: 127498 (WebCore::DOMObject::defineOwnProperty): 127499 * bindings/js/JSDesktopNotificationsCustom.cpp: 127500 (WebCore::JSNotificationCenter::requestPermission): 127501 * bindings/js/JSEventSourceConstructor.cpp: 127502 (WebCore::constructEventSource): 127503 * bindings/js/JSHTMLDocumentCustom.cpp: 127504 (WebCore::JSHTMLDocument::open): 127505 * bindings/js/JSHTMLInputElementCustom.cpp: 127506 (WebCore::JSHTMLInputElement::selectionStart): 127507 (WebCore::JSHTMLInputElement::setSelectionStart): 127508 (WebCore::JSHTMLInputElement::selectionEnd): 127509 (WebCore::JSHTMLInputElement::setSelectionEnd): 127510 (WebCore::JSHTMLInputElement::setSelectionRange): 127511 * bindings/js/JSImageConstructor.cpp: 127512 (WebCore::constructImage): 127513 * bindings/js/JSJavaScriptCallFrameCustom.cpp: 127514 (WebCore::JSJavaScriptCallFrame::evaluate): 127515 * bindings/js/JSMessageChannelConstructor.cpp: 127516 (WebCore::JSMessageChannelConstructor::construct): 127517 * bindings/js/JSMessagePortCustom.cpp: 127518 (WebCore::fillMessagePortArray): 127519 * bindings/js/JSOptionConstructor.cpp: 127520 (WebCore::constructHTMLOptionElement): 127521 * bindings/js/JSSVGMatrixCustom.cpp: 127522 (WebCore::JSSVGMatrix::multiply): 127523 * bindings/js/JSSharedWorkerConstructor.cpp: 127524 (WebCore::constructSharedWorker): 127525 * bindings/js/JSWebGLRenderingContextCustom.cpp: 127526 (WebCore::JSWebGLRenderingContext::bufferData): 127527 (WebCore::JSWebGLRenderingContext::bufferSubData): 127528 (WebCore::getObjectParameter): 127529 (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter): 127530 (WebCore::JSWebGLRenderingContext::getParameter): 127531 (WebCore::JSWebGLRenderingContext::getProgramParameter): 127532 (WebCore::JSWebGLRenderingContext::getShaderParameter): 127533 (WebCore::JSWebGLRenderingContext::getUniform): 127534 (WebCore::JSWebGLRenderingContext::texImage2D): 127535 (WebCore::JSWebGLRenderingContext::texSubImage2D): 127536 (WebCore::dataFunctionf): 127537 (WebCore::dataFunctioni): 127538 (WebCore::dataFunctionMatrix): 127539 * bindings/js/JSWebSocketConstructor.cpp: 127540 (WebCore::constructWebSocket): 127541 * bindings/js/JSWebSocketCustom.cpp: 127542 (WebCore::JSWebSocket::send): 127543 * bindings/js/JSWorkerConstructor.cpp: 127544 (WebCore::constructWorker): 127545 * bindings/js/JSXMLHttpRequestConstructor.cpp: 127546 (WebCore::constructXMLHttpRequest): 127547 * bindings/js/JSXMLHttpRequestCustom.cpp: 127548 (WebCore::JSXMLHttpRequest::open): 127549 * bindings/js/SerializedScriptValue.cpp: 127550 (WebCore::BaseWalker::throwStackOverflow): 127551 (WebCore::BaseWalker::throwInterruptedException): 127552 (WebCore::SerializingTreeWalker::startArray): 127553 (WebCore::SerializingTreeWalker::startObject): 127554 * bindings/js/WorkerScriptController.cpp: 127555 (WebCore::WorkerScriptController::setException): 127556 * bindings/scripts/CodeGeneratorJS.pm: 127557 * bridge/c/c_instance.cpp: 127558 (JSC::Bindings::CInstance::moveGlobalExceptionToExecState): 127559 (JSC::Bindings::CInstance::invokeMethod): 127560 (JSC::Bindings::CInstance::invokeDefaultMethod): 127561 (JSC::Bindings::CInstance::invokeConstruct): 127562 * bridge/jni/jsc/JNIBridgeJSC.cpp: 127563 (JavaField::dispatchValueFromInstance): 127564 (JavaField::dispatchSetValueToInstance): 127565 * bridge/jni/jsc/JavaInstanceJSC.cpp: 127566 (JavaInstance::invokeMethod): 127567 * bridge/objc/objc_instance.mm: 127568 (ObjcInstance::moveGlobalExceptionToExecState): 127569 (ObjcInstance::invokeMethod): 127570 * bridge/objc/objc_runtime.mm: 127571 (JSC::Bindings::ObjcField::valueFromInstance): 127572 (JSC::Bindings::ObjcField::setValueToInstance): 127573 (JSC::Bindings::ObjcArray::setValueAt): 127574 (JSC::Bindings::ObjcArray::valueAt): 127575 (JSC::Bindings::callObjCFallbackObject): 127576 * bridge/objc/objc_utility.h: 127577 * bridge/objc/objc_utility.mm: 127578 (JSC::Bindings::throwError): 127579 * bridge/runtime_array.cpp: 127580 (JSC::RuntimeArray::put): 127581 * bridge/runtime_method.cpp: 127582 (JSC::callRuntimeMethod): 127583 * bridge/runtime_object.cpp: 127584 (JSC::Bindings::RuntimeObject::throwInvalidAccessError): 127585 127586 2010-06-06 Dirk Schulze <krit (a] webkit.org> 127587 127588 Reviewed by Nikolas Zimmermann. 127589 127590 hit testing does not respect clip paths 127591 https://bugs.webkit.org/show_bug.cgi?id=15162 127592 127593 Test: svg/dynamic-updates/SVGClipPath-influences-hitTesting.html 127594 127595 Added a check, if a float point is not only in the shape/object boundaries 127596 but also is not in the clipped away area of a clipPath. 127597 127598 * rendering/HitTestRequest.h: 127599 (WebCore::HitTestRequest::): 127600 (WebCore::HitTestRequest::svgClipContent): 127601 * rendering/RenderPath.cpp: 127602 (WebCore::RenderPath::fillContains): 127603 (WebCore::RenderPath::nodeAtFloatPoint): 127604 * rendering/RenderPath.h: 127605 * rendering/RenderSVGContainer.cpp: 127606 (WebCore::RenderSVGContainer::nodeAtFloatPoint): 127607 * rendering/RenderSVGImage.cpp: 127608 (WebCore::RenderSVGImage::nodeAtFloatPoint): 127609 * rendering/RenderSVGResourceClipper.cpp: 127610 (WebCore::RenderSVGResourceClipper::hitTestClipContent): 127611 * rendering/RenderSVGResourceClipper.h: 127612 * rendering/RenderSVGText.cpp: 127613 (WebCore::RenderSVGText::nodeAtFloatPoint): 127614 * rendering/SVGRenderSupport.cpp: 127615 (WebCore::pointInClippingArea): 127616 * rendering/SVGRenderSupport.h: 127617 127618 2010-06-06 Dirk Schulze <krit (a] webkit.org> 127619 127620 Reviewed by Nikolas Zimmermann. 127621 127622 SVG Pattern/Gradient clean-up 127623 https://bugs.webkit.org/show_bug.cgi?id=40205 127624 127625 Transformations of SVG Patterns and Gradients can be bundeled. 127626 This calculation also needs just to be calculated once. It's not a great speed-up for most platforms, 127627 but a clean-up and preparation for new features like vectorEffects and others. 127628 Now, that we don't recalucluate the gradient and its transformations, it was necessary to add a way 127629 to transform alreday existing gradients on Cairo. This is done in the same way like Skia transforms 127630 gradients after they were created. 127631 127632 This patch doesn't change functionality, so no new tests added. 127633 127634 * platform/graphics/Gradient.cpp: 127635 * platform/graphics/cairo/GradientCairo.cpp: 127636 (WebCore::Gradient::setPlatformGradientSpaceTransform): 127637 * rendering/RenderSVGResourceGradient.cpp: 127638 (WebCore::RenderSVGResourceGradient::applyResource): 127639 * rendering/RenderSVGResourceGradient.h: 127640 * rendering/RenderSVGResourcePattern.cpp: 127641 (WebCore::RenderSVGResourcePattern::applyResource): 127642 (WebCore::RenderSVGResourcePattern::createTileImage): 127643 (WebCore::RenderSVGResourcePattern::buildPattern): 127644 * rendering/RenderSVGResourcePattern.h: 127645 127646 2010-06-05 Dumitru Daniliuc <dumi (a] chromium.org> 127647 127648 Unreviewed, typo/build fix. 127649 127650 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 127651 (WebCore::V8SQLStatementErrorCallback::handleEvent): 127652 127653 2010-05-28 Dumitru Daniliuc <dumi (a] chromium.org> 127654 127655 Reviewed by Adam Barth. 127656 127657 Do not pass empty handles to v8. 127658 https://bugs.webkit.org/show_bug.cgi?id=39896 127659 127660 Passing an empty handle to v8 results in a crash with a stack 127661 trace that doesn't give us much information about the cause of the 127662 crash. Instead, if we check the handles we pass to v8 and crash 127663 when they are empty, we do not make things worse, and should get a 127664 more informative stack trace. 127665 127666 * bindings/scripts/CodeGeneratorV8.pm: 127667 * bindings/scripts/test/V8/V8TestCallback.cpp: 127668 (WebCore::V8TestCallback::callbackWithClass1Param): 127669 (WebCore::V8TestCallback::callbackWithClass2Param): 127670 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 127671 (WebCore::V8SQLStatementErrorCallback::handleEvent): 127672 127673 2010-05-30 Antonio Gomes <tonikitoo (a] webkit.org> 127674 127675 Reviewed by Darin Adler. 127676 127677 Add a convenient helper getter for Frame* to RenderObject 127678 https://bugs.webkit.org/show_bug.cgi?id=39928 127679 127680 document()->frame() is being called enough from RenderObject derivated classes 127681 that it worth adding a helper Frame getter as a shortcut. 127682 127683 No behavior change, so no new tests. 127684 127685 * accessibility/AccessibilityRenderObject.cpp: 127686 (WebCore::AccessibilityRenderObject::isOffScreen): 127687 (WebCore::AccessibilityRenderObject::stringValue): 127688 (WebCore::AccessibilityRenderObject::selection): 127689 (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange): 127690 * page/EventHandler.cpp: 127691 (WebCore::canAutoscroll): 127692 * rendering/InlineTextBox.cpp: 127693 (WebCore::InlineTextBox::paint): 127694 (WebCore::InlineTextBox::paintCustomHighlight): 127695 (WebCore::InlineTextBox::paintTextMatchMarker): 127696 * rendering/RenderBlock.cpp: 127697 (WebCore::RenderBlock::paintCaret): 127698 * rendering/RenderBox.cpp: 127699 (WebCore::RenderBox::paintCustomHighlight): 127700 * rendering/RenderDataGrid.cpp: 127701 (WebCore::RenderDataGrid::isActive): 127702 * rendering/RenderFrameSet.cpp: 127703 (WebCore::RenderFrameSet::flattenFrameSet): 127704 * rendering/RenderImage.cpp: 127705 (WebCore::RenderImage::paintFocusRings): 127706 * rendering/RenderInline.cpp: 127707 (WebCore::RenderInline::addDashboardRegions): 127708 * rendering/RenderLayer.cpp: 127709 (WebCore::RenderLayer::~RenderLayer): 127710 (WebCore::RenderLayer::panScrollFromPoint): 127711 (WebCore::RenderLayer::scrollByRecursively): 127712 (WebCore::RenderLayer::scrollToOffset): 127713 (WebCore::RenderLayer::autoscroll): 127714 (WebCore::RenderLayer::isActive): 127715 (showLayerTree): 127716 * rendering/RenderLayerBacking.cpp: 127717 (WebCore::inspectorTimelineAgent): 127718 * rendering/RenderListBox.cpp: 127719 (WebCore::RenderListBox::paintItemForeground): 127720 (WebCore::RenderListBox::paintItemBackground): 127721 (WebCore::RenderListBox::panScroll): 127722 (WebCore::RenderListBox::autoscroll): 127723 (WebCore::RenderListBox::isActive): 127724 * rendering/RenderObject.cpp: 127725 (WebCore::RenderObject::~RenderObject): 127726 (WebCore::RenderObject::selectionBackgroundColor): 127727 (WebCore::RenderObject::selectionForegroundColor): 127728 (WebCore::RenderObject::destroy): 127729 (WebCore::RenderObject::addDashboardRegions): 127730 (WebCore::RenderObject::animation): 127731 * rendering/RenderObject.h: 127732 (WebCore::RenderObject::document): 127733 (WebCore::RenderObject::frame): 127734 127735 2010-06-05 Jonathan Kliegman <kliegs (a] chromium.org> 127736 127737 Reviewed by Dirk Schulze. 127738 127739 SVG doesn't support rgba colors 127740 https://bugs.webkit.org/show_bug.cgi?id=16183 127741 127742 Enabled processing of rgba, hsl and hsla color specifications 127743 for SVG files. SVG spec calls for CSS2 but common usage and 127744 other browsers suppor CSS3 colors being used in SVG files 127745 127746 Removed unused svg paramater from CSSParser::parseColorFromValue 127747 127748 Tests: svg/custom/fill-opacity-hsl.svg 127749 svg/custom/fill-opacity-rgba.svg 127750 127751 * css/CSSParser.cpp: 127752 (WebCore::CSSParser::parseColorFromValue): 127753 * css/CSSParser.h: 127754 * css/SVGCSSParser.cpp: 127755 (WebCore::CSSParser::parseSVGValue): 127756 (WebCore::CSSParser::parseSVGPaint): 127757 (WebCore::CSSParser::parseSVGColor): 127758 * svg/SVGColor.cpp: 127759 (WebCore::SVGColor::colorFromRGBColorString): 127760 127761 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127762 127763 Reviewed by Eric Seidel. 127764 127765 [Qt] ContextMenuItemQt.cpp has coding-style errors 127766 https://bugs.webkit.org/show_bug.cgi?id=39780 127767 127768 * platform/qt/ContextMenuItemQt.cpp: 127769 127770 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127771 127772 Reviewed by Eric Seidel. 127773 127774 [Qt] ContextMenuQt.cpp has coding-style errors 127775 https://bugs.webkit.org/show_bug.cgi?id=39779 127776 127777 * platform/qt/ContextMenuQt.cpp: 127778 127779 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127780 127781 Reviewed by Eric Seidel. 127782 127783 [Qt] DragDataQt.cpp has coding-style errors 127784 https://bugs.webkit.org/show_bug.cgi?id=39777 127785 127786 * platform/qt/DragDataQt.cpp: 127787 127788 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127789 127790 Reviewed by Eric Seidel. 127791 127792 [Qt] FileChooserQt.cpp has coding-style errors 127793 https://bugs.webkit.org/show_bug.cgi?id=39776 127794 127795 * platform/qt/FileChooserQt.cpp: 127796 127797 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127798 127799 Reviewed by Eric Seidel. 127800 127801 [Qt] FileSystemQt.cpp has coding-style errors 127802 https://bugs.webkit.org/show_bug.cgi?id=39775 127803 127804 * platform/qt/FileSystemQt.cpp: 127805 127806 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127807 127808 Reviewed by Eric Seidel. 127809 127810 [Qt] KURLQt.cpp has coding-style errors 127811 https://bugs.webkit.org/show_bug.cgi?id=39774 127812 127813 * platform/qt/KURLQt.cpp: 127814 127815 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127816 127817 Reviewed by Eric Seidel. 127818 127819 [Qt] LoggingQt.cpp has coding-style errors 127820 https://bugs.webkit.org/show_bug.cgi?id=39772 127821 127822 * platform/qt/LoggingQt.cpp: 127823 127824 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127825 127826 Reviewed by Eric Seidel. 127827 127828 [Qt] PlatformKeyboardEventQt.cpp has coding-style errors 127829 https://bugs.webkit.org/show_bug.cgi?id=39770 127830 127831 * platform/qt/PlatformKeyboardEventQt.cpp: 127832 (WebCore::keyIdentifierForQtKeyCode): 127833 (WebCore::windowsKeyCodeForKeyEvent): 127834 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): 127835 127836 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127837 127838 Reviewed by Eric Seidel. 127839 127840 [Qt] PlatformScreenQt.cpp has coding-style errors 127841 https://bugs.webkit.org/show_bug.cgi?id=39768 127842 127843 * platform/qt/PlatformMouseEventQt.cpp: 127844 (WebCore::PlatformMouseEvent::PlatformMouseEvent): 127845 127846 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127847 127848 Reviewed by Eric Seidel. 127849 127850 [Qt] RenderThemeQt.cpp has coding-style errors 127851 https://bugs.webkit.org/show_bug.cgi?id=39767 127852 127853 * platform/qt/RenderThemeQt.cpp: 127854 127855 2010-06-05 Anders Bakken <agbakken (a] gmail.com> 127856 127857 Reviewed by Eric Seidel. 127858 127859 [Qt] ScrollbarQt.cpp has coding-style errors 127860 https://bugs.webkit.org/show_bug.cgi?id=39765 127861 127862 * platform/qt/ScrollbarQt.cpp: 127863 127864 2010-06-04 Adam Barth <abarth (a] webkit.org> 127865 127866 Reviewed by Eric Seidel. 127867 127868 Make HTML5Lexer go fast 127869 https://bugs.webkit.org/show_bug.cgi?id=40048 127870 127871 This patch changes us from using a jump table for each character to 127872 using absolute jumps between parser states. This appears to be about a 127873 1% improvement on the parser bench mark (which is 1/10th of what we 127874 need to catch the old parser). 127875 127876 I've kept the underlying logic as close to the old logic as possible. 127877 This new form will make it easier to handle the input stream part of 127878 the spec and to make further performance improvements. 127879 127880 * html/HTML5Lexer.cpp: 127881 (WebCore::HTML5Lexer::reset): 127882 (WebCore::HTML5Lexer::nextToken): 127883 (WebCore::HTML5Lexer::emitCurrentToken): 127884 * html/HTML5Lexer.h: 127885 127886 2010-06-04 Adam Barth <abarth (a] webkit.org> 127887 127888 Reviewed by Darin Adler. 127889 127890 HTML5 parser should be within 1% of old parser performance 127891 https://bugs.webkit.org/show_bug.cgi?id=40172 127892 127893 Stop using adopt(). I think this function is cause us to do extra 127894 mallocs that are hurting performance. Instead of caching AtomicString 127895 on HTML5Token, just use the AtomicString on the old token. Also, 127896 reserve inline capacity for 10 attributes. 127897 127898 * html/HTML5Lexer.cpp: 127899 (WebCore::HTML5Lexer::isAppropriateEndTag): 127900 * html/HTML5Lexer.h: 127901 * html/HTML5Token.h: 127902 (WebCore::HTML5Token::beginStartTag): 127903 (WebCore::HTML5Token::beginEndTag): 127904 (WebCore::HTML5Token::beginCharacter): 127905 (WebCore::HTML5Token::beginComment): 127906 (WebCore::HTML5Token::beginDOCTYPE): 127907 (WebCore::HTML5Token::name): 127908 (WebCore::HTML5Token::characters): 127909 (WebCore::HTML5Token::comment): 127910 * html/HTML5TreeBuilder.cpp: 127911 (WebCore::convertToOldStyle): 127912 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 127913 127914 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127915 127916 Reviewed by Eric Seidel. 127917 127918 [Qt] ScrollbarThemeQt.cpp has coding-style errors 127919 https://bugs.webkit.org/show_bug.cgi?id=39764 127920 127921 * platform/qt/ScrollbarThemeQt.cpp: 127922 (WebCore::scPart): 127923 (WebCore::scrollbarPart): 127924 (WebCore::styleOptionSlider): 127925 127926 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127927 127928 Reviewed by Eric Seidel. 127929 127930 [Qt] SharedTimerQt.cpp has coding-style errors 127931 https://bugs.webkit.org/show_bug.cgi?id=39763 127932 127933 * platform/qt/SharedTimerQt.cpp: 127934 127935 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127936 127937 Reviewed by Eric Seidel. 127938 127939 WidgetQt.cpp has coding-style errors 127940 https://bugs.webkit.org/show_bug.cgi?id=39759 127941 127942 * platform/qt/WidgetQt.cpp: 127943 127944 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127945 127946 Reviewed by Eric Seidel. 127947 127948 TemporaryLinkStubsQt.cpp has coding-style errors 127949 https://bugs.webkit.org/show_bug.cgi?id=39761 127950 127951 * platform/qt/TemporaryLinkStubsQt.cpp: 127952 127953 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127954 127955 Reviewed by Eric Seidel. 127956 127957 [Qt] SoundQt.cpp has coding-style errors 127958 https://bugs.webkit.org/show_bug.cgi?id=39762 127959 127960 * platform/qt/SoundQt.cpp: 127961 127962 2010-06-04 Andreas Kling <andreas.kling (a] nokia.com> 127963 127964 Reviewed by Dirk Schulze. 127965 127966 Canvas createPattern(img, repetition) shouldn't throw INVALID_STATE_ERR when !img.complete 127967 https://bugs.webkit.org/show_bug.cgi?id=40166 127968 127969 Spec link: 127970 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-createpattern 127971 127972 Test: http/tests/misc/canvas-pattern-from-incremental-image.html (updated) 127973 127974 * html/canvas/CanvasRenderingContext2D.cpp: 127975 (WebCore::CanvasRenderingContext2D::createPattern): 127976 127977 2010-06-04 Anders Bakken <agbakken (a] gmail.com> 127978 127979 Reviewed by David Levin. 127980 127981 [Qt] Localizations.cpp has coding-style errors 127982 https://bugs.webkit.org/show_bug.cgi?id=39773 127983 127984 * platform/qt/Localizations.cpp: 127985 (WebCore::localizedMediaTimeDescription): 127986 127987 2010-06-04 Lyon Chen <liachen (a] rim.com> 127988 127989 Reviewed by Darin Adler. 127990 127991 ApplicationCacheStorage::storeNewestCache() Crash WebKit when openDatabase(true) failed 127992 https://bugs.webkit.org/show_bug.cgi?id=40074 127993 127994 Adding m_database.isOpen() check for every openDatabase(true) call, this is needed because 127995 openDatabase(true) could still fail, for example when cacheStorage is full or no longer available. 127996 127997 * loader/appcache/ApplicationCacheStorage.cpp: 127998 (WebCore::ApplicationCacheStorage::store): 127999 (WebCore::ApplicationCacheStorage::storeNewestCache): 128000 128001 2010-06-04 Sheriff Bot <webkit.review.bot (a] gmail.com> 128002 128003 Unreviewed, rolling out r60684. 128004 http://trac.webkit.org/changeset/60684 128005 https://bugs.webkit.org/show_bug.cgi?id=40196 128006 128007 This patch broke chromium reliability tests (Requested by 128008 tonyg-cr on #webkit). 128009 128010 * bindings/v8/ScriptSourceCode.h: 128011 (WebCore::ScriptSourceCode::ScriptSourceCode): 128012 * bindings/v8/V8Proxy.cpp: 128013 (WebCore::V8Proxy::compileScript): 128014 (WebCore::V8Proxy::evaluate): 128015 * bindings/v8/V8Proxy.h: 128016 128017 2010-06-04 Chris Fleizach <cfleizach (a] apple.com> 128018 128019 Reviewed by David Kilzer. 128020 128021 AX: need an aria-help 128022 https://bugs.webkit.org/show_bug.cgi?id=40010 128023 128024 Test: accessibility/aria-help.html 128025 128026 * accessibility/AccessibilityRenderObject.cpp: 128027 (WebCore::AccessibilityRenderObject::helpText): 128028 * html/HTMLAttributeNames.in: 128029 128030 2010-06-04 Andreas Kling <andreas.kling (a] nokia.com> 128031 128032 Reviewed by Tor Arne Vestb. 128033 128034 [Qt] Canvas arc() with zero radius should draw a line to the start point 128035 https://bugs.webkit.org/show_bug.cgi?id=40164 128036 128037 Spec link: 128038 http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-arc 128039 128040 * platform/graphics/qt/PathQt.cpp: 128041 (WebCore::Path::addArc): 128042 128043 2010-06-04 Martin Robinson <mrobinson (a] igalia.com> 128044 128045 Reviewed by Xan Lopez. 128046 128047 [GTK] RenderThemeGtk leaks memory 128048 https://bugs.webkit.org/show_bug.cgi?id=40168 128049 128050 Call gtk_widget_destroy in the RenderThemeGtk destructor. This cleans 128051 up all widget resources when a theme is destroyed. 128052 128053 No new tests, because functionality has not changed. 128054 128055 * platform/gtk/RenderThemeGtk.cpp: 128056 (WebCore::RenderThemeGtk::~RenderThemeGtk): Call gtk_widget_destroy on m_gtkWindow. 128057 128058 2010-06-04 Martin Robinson <mrobinson (a] igalia.com> 128059 128060 Reviewed by Xan Lopez. 128061 128062 [GTK] RenderThemeGtk leaks memory 128063 https://bugs.webkit.org/show_bug.cgi?id=40168 128064 128065 Remove the use of releaseRef to assign a value to a RefPtr. This results in 128066 the original pointer taking an extra reference. 128067 128068 * platform/gtk/RenderThemeGtk.cpp: 128069 (WebCore::RenderThemeGtk::initMediaStyling): Remove the use of releaseRef here. 128070 128071 2010-06-04 Adam Barth <abarth (a] webkit.org> 128072 128073 Reviewed by Gavin Barraclough. 128074 128075 Try to fix the windows build 128076 https://bugs.webkit.org/show_bug.cgi?id=40189 128077 128078 Suppress the "unreachable code" warning because we want to assert that 128079 we don't reach certain code points. 128080 128081 * html/HTML5Lexer.cpp: 128082 128083 2010-06-04 Adam Barth <abarth (a] webkit.org> 128084 128085 Reviewed by Eric Seidel. 128086 128087 Make HTML5Lexer go fast 128088 https://bugs.webkit.org/show_bug.cgi?id=40048 128089 128090 A couple more cases like the previous patch that I missed. 128091 128092 * html/HTML5Lexer.cpp: 128093 (WebCore::HTML5Lexer::nextToken): 128094 128095 2010-06-04 Adam Barth <abarth (a] webkit.org> 128096 128097 Reviewed by Eric Seidel. 128098 128099 Make HTML5Lexer go fast 128100 https://bugs.webkit.org/show_bug.cgi?id=40048 128101 128102 Make all the state transitions in the machine explicit. This allows us 128103 to remove all the break statements, which won't work correctly after we 128104 change the macro definitions. 128105 128106 Also, while I was looking at every line of code, I fixed a bunch of the 128107 one-line-if style errors introduces in my previous patches. 128108 128109 * html/HTML5Lexer.cpp: 128110 (WebCore::HTML5Lexer::nextToken): 128111 128112 2010-06-04 Gavin Barraclough <barraclough (a] apple.com> 128113 128114 Reviewed by Oliver Hunt. 128115 128116 Bug 40187 - Change function signature of NativeConstructor to match NativeFunction 128117 128118 Mostly for consistency, but constructor & args arguments are redundant, 128119 and this will help if we wish to be able to JIT calls to more constructors. 128120 128121 * bindings/js/JSArrayBufferConstructor.cpp: 128122 (WebCore::constructCanvasArrayBuffer): 128123 * bindings/js/JSAudioConstructor.cpp: 128124 (WebCore::constructAudio): 128125 * bindings/js/JSEventSourceConstructor.cpp: 128126 (WebCore::constructEventSource): 128127 * bindings/js/JSFloatArrayConstructor.cpp: 128128 (WebCore::constructCanvasFloatArray): 128129 * bindings/js/JSImageConstructor.cpp: 128130 (WebCore::constructImage): 128131 * bindings/js/JSInt16ArrayConstructor.cpp: 128132 (WebCore::constructCanvasShortArray): 128133 * bindings/js/JSInt32ArrayConstructor.cpp: 128134 (WebCore::constructCanvasIntArray): 128135 * bindings/js/JSInt8ArrayConstructor.cpp: 128136 (WebCore::constructCanvasByteArray): 128137 * bindings/js/JSMessageChannelConstructor.cpp: 128138 (WebCore::JSMessageChannelConstructor::construct): 128139 * bindings/js/JSMessageChannelConstructor.h: 128140 * bindings/js/JSOptionConstructor.cpp: 128141 (WebCore::constructHTMLOptionElement): 128142 * bindings/js/JSSharedWorkerConstructor.cpp: 128143 (WebCore::constructSharedWorker): 128144 * bindings/js/JSUint16ArrayConstructor.cpp: 128145 (WebCore::constructCanvasUnsignedShortArray): 128146 * bindings/js/JSUint32ArrayConstructor.cpp: 128147 (WebCore::constructCanvasUnsignedIntArray): 128148 * bindings/js/JSUint8ArrayConstructor.cpp: 128149 (WebCore::constructCanvasUnsignedByteArray): 128150 * bindings/js/JSWebKitCSSMatrixConstructor.cpp: 128151 (WebCore::constructWebKitCSSMatrix): 128152 * bindings/js/JSWebKitPointConstructor.cpp: 128153 (WebCore::constructWebKitPoint): 128154 * bindings/js/JSWebSocketConstructor.cpp: 128155 (WebCore::constructWebSocket): 128156 * bindings/js/JSWorkerConstructor.cpp: 128157 (WebCore::constructWorker): 128158 * bindings/js/JSXMLHttpRequestConstructor.cpp: 128159 (WebCore::constructXMLHttpRequest): 128160 * bindings/js/JSXSLTProcessorConstructor.cpp: 128161 (WebCore::constructXSLTProcessor): 128162 * bindings/scripts/CodeGeneratorJS.pm: 128163 * bridge/runtime_object.cpp: 128164 (JSC::Bindings::callRuntimeConstructor): 128165 128166 2010-06-04 Adam Barth <abarth (a] webkit.org> 128167 128168 Reviewed by Eric Seidel. 128169 128170 Make HTML5Lexer go fast 128171 https://bugs.webkit.org/show_bug.cgi?id=40048 128172 128173 Change the intent of the loop to match what it's going to be once we 128174 remove the loop. This is a whitespace only change that will make the 128175 final diff much, much smaller. Sorry for the transient ugly style. 128176 128177 * html/HTML5Lexer.cpp: 128178 (WebCore::HTML5Lexer::nextToken): 128179 128180 2010-06-04 Adam Barth <abarth (a] webkit.org> 128181 128182 Reviewed by Eric Seidel. 128183 128184 Make HTML5Lexer go fast 128185 https://bugs.webkit.org/show_bug.cgi?id=40048 128186 128187 Introduce ADVANCE_TO macro. This is the last macro we need to 128188 introduce. 128189 128190 * html/HTML5Lexer.cpp: 128191 (WebCore::HTML5Lexer::nextToken): 128192 128193 2010-06-04 Adam Barth <abarth (a] webkit.org> 128194 128195 Reviewed by Eric Seidel. 128196 128197 Make HTML5Lexer go fast 128198 https://bugs.webkit.org/show_bug.cgi?id=40048 128199 128200 Fix the rest of the RECONSUME_IN cases that were missed by our script. 128201 Also, reorder some assigment to prepare for the ADVANCE_TO patch. 128202 128203 * html/HTML5Lexer.cpp: 128204 (WebCore::HTML5Lexer::nextToken): 128205 128206 2010-06-04 Adam Barth <abarth (a] webkit.org> 128207 128208 Reviewed by Eric Seidel. 128209 128210 Make HTML5Lexer go fast 128211 https://bugs.webkit.org/show_bug.cgi?id=40048 128212 128213 This patch handles the FLUSH_AND_ADVANCE_TO case. Again, this patch 128214 introduces style errors that will be fixed shortly. 128215 128216 * html/HTML5Lexer.cpp: 128217 (WebCore::HTML5Lexer::nextToken): 128218 128219 2010-06-04 Adam Barth <abarth (a] webkit.org> 128220 128221 Reviewed by Eric Seidel. 128222 128223 Make HTML5Lexer go fast 128224 https://bugs.webkit.org/show_bug.cgi?id=40048 128225 128226 This patch handles the FLUSH_EMIT_AND_RESUME_IN case. This patch 128227 introduces some bad style w.r.t. one-line if statements, but we'll fix 128228 them all automatically in cleanup patch when we're done. 128229 128230 * html/HTML5Lexer.cpp: 128231 (WebCore::HTML5Lexer::nextToken): 128232 128233 2010-06-04 Adam Barth <abarth (a] webkit.org> 128234 128235 Reviewed by Eric Seidel. 128236 128237 Make HTML5Lexer go fast 128238 https://bugs.webkit.org/show_bug.cgi?id=40048 128239 128240 More small steps. This patch deals with emitting tokens. 128241 128242 * html/HTML5Lexer.cpp: 128243 (WebCore::HTML5Lexer::nextToken): 128244 128245 2010-06-04 Adam Barth <abarth (a] webkit.org> 128246 128247 Reviewed by Eric Seidel. 128248 128249 Make HTML5Lexer go fast 128250 https://bugs.webkit.org/show_bug.cgi?id=40048 128251 128252 The next step: using macros to delimit each state. Evetually, we're 128253 going to change what these macros expand to. 128254 128255 * html/HTML5Lexer.cpp: 128256 (WebCore::HTML5Lexer::nextToken): 128257 128258 2010-06-04 Adam Barth <abarth (a] webkit.org> 128259 128260 Reviewed by Eric Seidel. 128261 128262 Make HTML5Lexer go fast 128263 https://bugs.webkit.org/show_bug.cgi?id=40048 128264 128265 We're going to do this patch in small steps to make it easier to verify correctness. 128266 128267 * html/HTML5Lexer.cpp: 128268 (WebCore::HTML5Lexer::nextToken): 128269 128270 2010-06-04 Jay Civelli <jcivelli (a] chromium.org> 128271 128272 Reviewed by David Levin. 128273 128274 [chromium] Adding support for the left and right Windows keys to the 128275 NativeWebKeyboardEvent. 128276 https://bugs.webkit.org/show_bug.cgi?id=39752 128277 128278 * platform/chromium/KeyCodeConversionGtk.cpp: 128279 (WebCore::windowsKeyCodeForKeyEvent): 128280 128281 2010-06-04 Dirk Schulze <krit (a] webkit.org> 128282 128283 Reviewed by Nikolas Zimmermann. 128284 128285 SVG filter on filter don't work 128286 https://bugs.webkit.org/show_bug.cgi?id=32708 128287 128288 Any child of <text> was not allowed to use the same filter as the text root. 128289 I couldn't found any reason in the SVG specification that legimitate this. 128290 Only batik also doesn't allow the same filter on the text root as on it's childs, 128291 while any other effect is still allowed. 128292 I removed this limitation so that the result looks like the result on Firefox. 128293 128294 Test: svg/filters/filter-on-filter-for-text.svg 128295 128296 * rendering/SVGRenderSupport.cpp: 128297 (WebCore::SVGRenderBase::prepareToRenderSVGContent): 128298 * rendering/SVGRenderSupport.h: 128299 * rendering/SVGRootInlineBox.cpp: 128300 (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker): 128301 (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback): 128302 (WebCore::SVGRootInlineBox::paint): 128303 128304 2010-06-04 Nate Chapin <japhet (a] chromium.org> 128305 128306 Reviewed by Adam Barth. 128307 128308 Factor PageCache functionality out of FrameLoader and into 128309 PageCache itself. 128310 128311 https://bugs.webkit.org/show_bug.cgi?id=39382 128312 128313 Refactor only, so no new tests. 128314 128315 * history/PageCache.cpp: 128316 (WebCore::pageCacheLogPrefix): 128317 (WebCore::pageCacheLog): 128318 (WebCore::logCanCacheFrameDecision): 128319 (WebCore::logCanCachePageDecision): 128320 (WebCore::PageCache::canCachePageContainingThisFrame): 128321 (WebCore::PageCache::canCache): 128322 (WebCore::PageCache::add): 128323 (WebCore::PageCache::get): 128324 * history/PageCache.h: 128325 * loader/DocumentLoader.cpp: 128326 (WebCore::DocumentLoader::commitIfReady): 128327 * loader/FrameLoader.cpp: 128328 (WebCore::FrameLoader::commitProvisionalLoad): 128329 (WebCore::FrameLoader::prepareForCachedPageRestore): 128330 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): 128331 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): 128332 (WebCore::FrameLoader::navigateToDifferentDocument): 128333 * loader/FrameLoader.h: 128334 (WebCore::FrameLoader::quickRedirectComing): 128335 * svg/graphics/SVGImage.cpp: 128336 (WebCore::SVGImage::dataChanged): 128337 128338 2010-06-04 Ilya Tikhonovsky <loislo (a] chromium.org> 128339 128340 Reviewed by Pavel Feldman. 128341 128342 WebInspector: Web Inspector: it would be better to push object properties to JSON string in order of insertion. 128343 https://bugs.webkit.org/show_bug.cgi?id=40140 128344 128345 * inspector/InspectorValues.cpp: 128346 (WebCore::InspectorObject::writeJSON): 128347 * inspector/InspectorValues.h: 128348 (WebCore::InspectorObject::setBool): 128349 (WebCore::InspectorObject::setNumber): 128350 (WebCore::InspectorObject::setString): 128351 (WebCore::InspectorObject::set): 128352 128353 2010-06-04 Tony Gentilcore <tonyg (a] chromium.org> 128354 128355 Reviewed by Adam Barth. 128356 128357 Persist V8's ScriptData to the memory cache. 128358 https://bugs.webkit.org/show_bug.cgi?id=38661 128359 128360 This stores V8's ScriptData in the memory cache and also causes the 128361 network platform layer to be notified of the available cacheable 128362 metadata. 128363 128364 Chromium's morejs benchmark shows a 3-4% improvement on fast hardware. 128365 128366 No new tests because no new functionality. 128367 128368 * bindings/v8/ScriptSourceCode.h: 128369 (WebCore::ScriptSourceCode::ScriptSourceCode): 128370 (WebCore::ScriptSourceCode::cachedScript): 128371 * bindings/v8/V8Proxy.cpp: 128372 (WebCore::V8Proxy::compileScript): 128373 (WebCore::V8Proxy::precompileScript): 128374 (WebCore::V8Proxy::evaluate): 128375 * bindings/v8/V8Proxy.h: 128376 128377 2010-06-04 Tony Gentilcore <tonyg (a] chromium.org> 128378 128379 Reviewed by Adam Barth. 128380 128381 Utilize new takeFirst() method where appropriate. 128382 https://bugs.webkit.org/show_bug.cgi?id=40089 128383 128384 No new tests because no new functionality. 128385 128386 * css/CSSStyleSheet.cpp: 128387 (WebCore::CSSStyleSheet::addSubresourceStyleURLs): 128388 * dom/XMLTokenizerLibxml2.cpp: 128389 (WebCore::PendingCallbacks::callAndRemoveFirstCallback): 128390 * html/HTMLTokenizer.cpp: 128391 (WebCore::HTMLTokenizer::reset): 128392 (WebCore::HTMLTokenizer::executeExternalScriptsIfReady): 128393 * platform/text/SegmentedString.cpp: 128394 (WebCore::SegmentedString::advanceSubstring): 128395 * storage/Database.cpp: 128396 (WebCore::Database::scheduleTransaction): 128397 * storage/SQLTransaction.cpp: 128398 (WebCore::SQLTransaction::getNextStatement): 128399 * storage/SQLTransactionCoordinator.cpp: 128400 (WebCore::SQLTransactionCoordinator::processPendingTransactions): 128401 128402 2010-06-04 Nikita Vasilyev <me (a] elv1s.ru> 128403 128404 Reviewed by Pavel Feldman. 128405 128406 Web Inspector: better Function.prototype.bind for the internal code. 128407 128408 In the "Event Listeners" pane show handler function instead of Function.prototype.bind. 128409 128410 https://bugs.webkit.org/show_bug.cgi?id=40080 128411 128412 * inspector/front-end/utilities.js: 128413 (Function.prototype.bind.bound): 128414 (Function.prototype.bind.bound.toString): 128415 (Function.prototype.bind): 128416 128417 2010-06-04 Alexander Pavlov <apavlov (a] chromium.org> 128418 128419 Unreviewed, fix Qt build. 128420 128421 Add references to a new file. 128422 128423 * WebCore.gypi: 128424 * WebCore.vcproj/WebCore.vcproj: 128425 * inspector/front-end/WebKit.qrc: 128426 128427 2010-06-04 Alexander Pavlov <apavlov (a] chromium.org> 128428 128429 Reviewed by Pavel Feldman. 128430 128431 Web Inspector: Eliminate direct dependency of StylesSidebarPane on InspectorBackend 128432 https://bugs.webkit.org/show_bug.cgi?id=40069 128433 128434 No new tests are needed, as this is a refactoring. 128435 128436 * inspector/front-end/CSSStyleModel.js: Added. 128437 (WebInspector.CSSStyleModel): 128438 (WebInspector.CSSStyleModel.prototype.getStylesAsync): 128439 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync): 128440 (WebInspector.CSSStyleModel.prototype.setRuleSelector): 128441 (WebInspector.CSSStyleModel.prototype.addRule): 128442 (WebInspector.CSSStyleModel.prototype.toggleStyleEnabled): 128443 (WebInspector.CSSStyleModel.prototype.setCSSText): 128444 (WebInspector.CSSStyleModel.prototype.applyStyleText): 128445 * inspector/front-end/StylesSidebarPane.js: 128446 (WebInspector.StylesSidebarPane.prototype.update.stylesCallback): 128447 (WebInspector.StylesSidebarPane.prototype.update.computedStyleCallback): 128448 (WebInspector.StylesSidebarPane.prototype.update): 128449 (WebInspector.StylesSidebarPane.prototype._arrayContainsInheritedProperty): 128450 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback): 128451 (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): 128452 (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback): 128453 (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted): 128454 (WebInspector.StylePropertyTreeElement.prototype.): 128455 (WebInspector.StylePropertyTreeElement.prototype): 128456 * inspector/front-end/inspector.html: 128457 * inspector/front-end/inspector.js: 128458 (WebInspector.loaded): 128459 128460 2010-06-04 Simon Hausmann <simon.hausmann (a] nokia.com> 128461 128462 Reviewed by Tor Arne Vestb. 128463 128464 [Qt] Compilation fails when compiling against Qt 4.7 and Qt Mobility is installed 128465 https://bugs.webkit.org/show_bug.cgi?id=40116 128466 128467 CONFIG += mobility has the side-effect of pulling in mobility includes, which conflict 128468 with Qt 4.7's bearer managenent includes and break the build. 128469 128470 * WebCore.pro: 128471 128472 2010-06-04 Vangelis Kokkevis <vangelis (a] chromium.org> 128473 128474 Reviewed by Dimitri Glazkov. 128475 128476 [chromium] Fix scrolling bug with pages using accelerated compositing. 128477 https://bugs.webkit.org/show_bug.cgi?id=40037 128478 128479 * platform/graphics/chromium/LayerRendererChromium.cpp: 128480 (WebCore::LayerRendererChromium::LayerRendererChromium): 128481 (WebCore::LayerRendererChromium::drawLayers): 128482 128483 2010-06-04 Matthew Delaney <mdelaney (a] apple.com> 128484 128485 Reviewed by Darin Adler. 128486 128487 CG implementation needed for compression quality in canvas.toDataURL 128488 https://bugs.webkit.org/show_bug.cgi?id=38492 128489 128490 Took toDataURL.jpeg.quality.basic.html test off of Skipped list. Passes. 128491 128492 Went the route of avoiding in-band signaling to flag the use of a quality 128493 parameter or not. So, instead of simply passing the quality down as a 128494 double, instead I pass a reference to the quality parameter from where 128495 it comes in just after the JS bindings. Thus, no need for any global 128496 constants to signify when the quality is not specified. Updated the other 128497 platforms to support this (qt was on the only one currently with any 128498 implementation). 128499 128500 * bindings/js/JSHTMLCanvasElementCustom.cpp: Moved range check logic for quality parameter down lower. Updated 128501 call to toDataURL to use double* instead of just passing the quality directly. 128502 (WebCore::JSHTMLCanvasElement::toDataURL): 128503 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: Updated toDataURL call to pass double* 128504 (WebCore::V8HTMLCanvasElement::toDataURLCallback): 128505 * dom/CanvasSurface.cpp: Updated method prototype. 128506 (WebCore::CanvasSurface::toDataURL): 128507 * dom/CanvasSurface.h: Updated method prototype. 128508 (WebCore::CanvasSurface::toDataURL): 128509 * platform/graphics/ImageBuffer.h: Updated method signature to use double* for quality param. 128510 * platform/graphics/cairo/ImageBufferCairo.cpp: Updated prototype for consistency. 128511 (WebCore::ImageBuffer::toDataURL): 128512 * platform/graphics/cg/ImageBufferCG.cpp: Implemented support for quality parametejr when jpeg MIME type used. 128513 (WebCore::jpegUTI): 128514 (WebCore::utiFromMIMEType): 128515 (WebCore::ImageBuffer::toDataURL): 128516 * platform/graphics/haiku/ImageBufferHaiku.cpp: Updated prototype for consistency. 128517 (WebCore::ImageBuffer::toDataURL): 128518 * platform/graphics/qt/ImageBufferQt.cpp: Updated prototype for consistency. 128519 (WebCore::ImageBuffer::toDataURL): 128520 * platform/graphics/skia/ImageBufferSkia.cpp: Updated prototype for consistency. 128521 (WebCore::ImageBuffer::toDataURL): 128522 * platform/graphics/wince/ImageBufferWince.cpp: Updated prototype for consistency. 128523 (WebCore::ImageBuffer::toDataURL): 128524 * platform/graphics/wx/ImageBufferWx.cpp: Updated prototype for consistency. 128525 (WebCore::ImageBuffer::toDataURL): 128526 128527 2010-06-04 Alejandro G. Castro <alex (a] igalia.com> 128528 128529 Reviewed by Xan Lopez. 128530 128531 Leaks in listDirectory 128532 https://bugs.webkit.org/show_bug.cgi?id=40008 128533 128534 Fixed both leaks. 128535 128536 * platform/gtk/FileSystemGtk.cpp: 128537 (WebCore::listDirectory): 128538 128539 2010-06-04 Anton Muhin <antonm (a] chromium.org> 128540 128541 Reviewed by Nate Chapin. 128542 128543 [Chromium] get rid of named interceptor on HTMLDocument and introduce/remove accessors when named items get deleted/removed 128544 https://bugs.webkit.org/show_bug.cgi?id=39877 128545 128546 This patch makes callbacks invoked on named items addition/removal 128547 install API accessors and thus there is no more need in 128548 named and indexed interceptors on HTMLDocument which 128549 speeds up invocation of methods on document. 128550 128551 * bindings/scripts/CodeGeneratorV8.pm: 128552 * bindings/v8/ScriptController.cpp: 128553 (WebCore::ScriptController::namedItemAdded): 128554 (WebCore::ScriptController::namedItemRemoved): 128555 * bindings/v8/V8DOMWindowShell.cpp: 128556 (WebCore::checkDocumentWrapper): 128557 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 128558 (WebCore::getter): 128559 (WebCore::V8DOMWindowShell::namedItemAdded): 128560 (WebCore::V8DOMWindowShell::namedItemRemoved): 128561 * bindings/v8/V8DOMWindowShell.h: 128562 * bindings/v8/V8DOMWrapper.cpp: 128563 (WebCore::V8DOMWrapper::instantiateV8Object): 128564 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 128565 (WebCore::V8HTMLDocument::WrapInShadowObject): 128566 (WebCore::V8HTMLDocument::GetNamedProperty): 128567 (WebCore::V8HTMLDocument::allAccessorSetter): 128568 (WebCore::toV8): 128569 128570 2010-06-04 Kwang Yul Seo <skyul (a] company100.net> 128571 128572 Reviewed by Kent Tamura. 128573 128574 Change filenameFromString to return CString 128575 https://bugs.webkit.org/show_bug.cgi?id=39494 128576 128577 filenameFromString returns a newly allocated string and the caller must 128578 free the string. GTK and EFL ports use g_free while all others ports use 128579 fastFree. This is confusing because the same function behaves 128580 differently with respect to ports. Change filenameFromString to return 128581 CString. 128582 128583 * platform/FileSystem.cpp: 128584 (WebCore::filenameFromString): 128585 * platform/FileSystem.h: 128586 * platform/efl/FileSystemEfl.cpp: 128587 (WebCore::filenameFromString): 128588 * platform/gtk/FileChooserGtk.cpp: 128589 (WebCore::FileChooser::basenameForWidth): 128590 * platform/gtk/FileSystemGtk.cpp: 128591 (WebCore::filenameFromString): 128592 (WebCore::filenameForDisplay): 128593 (WebCore::fileExists): 128594 (WebCore::deleteFile): 128595 (WebCore::deleteEmptyDirectory): 128596 (WebCore::getFileSize): 128597 (WebCore::getFileModificationTime): 128598 (WebCore::makeAllDirectories): 128599 (WebCore::pathGetFileName): 128600 (WebCore::directoryName): 128601 (WebCore::listDirectory): 128602 * platform/gtk/SharedBufferGtk.cpp: 128603 (WebCore::SharedBuffer::createWithContentsOfFile): 128604 * platform/network/soup/ResourceHandleSoup.cpp: 128605 (WebCore::startHttp): 128606 * platform/posix/SharedBufferPOSIX.cpp: 128607 (WebCore::SharedBuffer::createWithContentsOfFile): 128608 128609 2010-06-04 No'am Rosenthal <noam.rosenthal (a] nokia.com> 128610 128611 Reviewed by Kenneth Rohde Christiansen. 128612 128613 [Qt] Fix compilation with QT_NO_FEATURE 128614 https://bugs.webkit.org/show_bug.cgi?id=38324 128615 128616 The #ifdef QT_NO_GRAPHICSEFFECT was in the wrong place, would have 128617 made AC not work at all. 128618 128619 No new tests. 128620 128621 * platform/graphics/qt/GraphicsLayerQt.cpp: 128622 (WebCore::GraphicsLayerQtImpl::flushChanges): 128623 128624 2010-06-04 Qi Zhang <qi.2.zhang (a] nokia.com> 128625 128626 Reviewed by Laszlo Gombos. 128627 128628 [Qt] Failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arcTo.ensuresubpath.1.html 128629 https://bugs.webkit.org/show_bug.cgi?id=38645 128630 128631 Path arcto function need to ensure there is subpath before it. 128632 128633 * platform/graphics/qt/PathQt.cpp: 128634 (WebCore::Path::addArcTo): 128635 128636 2010-06-04 Qi Zhang <qi.2.zhang (a] nokia.com> 128637 128638 Reviewed by Laszlo Gombos. 128639 128640 [Qt] failed at http://philip.html5.org/tests/canvas/suite/tests/2d.path.arc.angle.3.html 128641 https://bugs.webkit.org/show_bug.cgi?id=38537 128642 128643 For path.arc function handle span > 2PI 128644 128645 * platform/graphics/qt/PathQt.cpp: 128646 (WebCore::Path::addArc): 128647 128648 2010-06-04 Zhenyao Mo <zmo (a] google.com> 128649 128650 Reviewed by Dimitri Glazkov. 128651 128652 Set attributes.stencil to false by default at context creation 128653 https://bugs.webkit.org/show_bug.cgi?id=40090 128654 128655 * platform/graphics/GraphicsContext3D.h: Set default attributes.stencil to false. 128656 (WebCore::GraphicsContext3D::Attributes::Attributes): 128657 128658 2010-06-03 Abhishek Arya <inferno (a] chromium.org> 128659 128660 Reviewed by Eric Carlson. 128661 128662 Fix a crash when trying to use an invalid media src url by 128663 moving the isValid url checks to a central location in 128664 isSafeToLoadURL function. Also added an empty string check 128665 in DocumentLoader::didTellClientAboutLoad. 128666 128667 Test: media/invalid-media-url-crash.html 128668 128669 * html/HTMLMediaElement.cpp: 128670 (WebCore::HTMLMediaElement::isSafeToLoadURL): 128671 (WebCore::HTMLMediaElement::selectNextSourceChild): 128672 (WebCore::HTMLMediaElement::getPluginProxyParams): 128673 * loader/DocumentLoader.h: 128674 (WebCore::DocumentLoader::didTellClientAboutLoad): 128675 128676 2010-06-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 128677 128678 Unreviewed, rolling out r60642. 128679 http://trac.webkit.org/changeset/60642 128680 https://bugs.webkit.org/show_bug.cgi?id=40151 128681 128682 Broke rendering of border images on rotated elements 128683 (Requested by jamesr on #webkit). 128684 128685 * platform/graphics/GraphicsContext.cpp: 128686 (WebCore::GraphicsContext::drawImage): 128687 (WebCore::GraphicsContext::drawTiledImage): 128688 * platform/graphics/GraphicsContext.h: 128689 * rendering/RenderBoxModelObject.cpp: 128690 (WebCore::RenderBoxModelObject::paintNinePieceImage): 128691 128692 2010-06-03 Damian Kaleta <dkaleta (a] apple.com> 128693 128694 Reviewed by Beth Dakin. 128695 128696 Pixel cracks in border images when drawing with a scale factor > 1 128697 <rdar://problem/7994266>pixel cracks in border images 128698 https://bugs.webkit.org/show_bug.cgi?id=15720 128699 128700 * platform/graphics/GraphicsContext.cpp: 128701 (WebCore::GraphicsContext::drawImage): 128702 (WebCore::GraphicsContext::drawTiledImage): 128703 * platform/graphics/GraphicsContext.h: Added two new methods to support drawing using FloatRect. 128704 If the boolean flag roundToPixels is true, the pixels are adjusted with the pixel boundaries. 128705 * rendering/RenderBoxModelObject.cpp: 128706 (WebCore::RenderBoxModelObject::paintNinePieceImage): 128707 128708 2010-06-03 James Robinson <jamesr (a] chromium.org> 128709 128710 Reviewed by Dan Bernstein. 128711 128712 Take container's scroll offset and clip into account when initializing LayoutState 128713 https://bugs.webkit.org/show_bug.cgi?id=38506 128714 128715 When doing a subtree layout, the initial LayoutState creation needs to 128716 take the layout root container's offset and its scroll offset into account 128717 to create the initial offset. Otherwise if a subtree layout occurs 128718 for a layout root whose container has a non-zero scroll offset 128719 the LayoutState's offset and clip are wrong, resulting in a mispaint. 128720 See the test cases for examples. 128721 128722 Tests: fast/repaint/layout-state-scrolloffset.html 128723 fast/repaint/layout-state-scrolloffset2.html 128724 fast/repaint/layout-state-scrolloffset3.html 128725 128726 * rendering/LayoutState.cpp: 128727 (WebCore::LayoutState::LayoutState): 128728 128729 2010-06-03 Gavin Barraclough <barraclough (a] apple.com> 128730 128731 Reviewed by NOBODY (speculative Qt build fix II). 128732 128733 * bridge/qt/qt_runtime.cpp: 128734 (JSC::Bindings::QtRuntimeMetaMethod::call): 128735 (JSC::Bindings::QtRuntimeConnectionMethod::call): 128736 128737 2010-06-03 Gavin Barraclough <barraclough (a] apple.com> 128738 128739 Reviewed by NOBODY (speculative Qt build fix). 128740 128741 * bridge/qt/qt_runtime.cpp: 128742 (JSC::Bindings::QtRuntimeMetaMethod::call): 128743 (JSC::Bindings::QtRuntimeConnectionMethod::call): 128744 128745 2010-06-02 Gavin Barraclough <barraclough (a] apple.com> 128746 128747 Reviewed by Oliver Hunt. 128748 128749 Bug 40094 - The return type of NativeFunction should be EncodedJSValue 128750 On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not. 128751 128752 * bindings/js/JSCallbackData.cpp: 128753 (WebCore::JSCallbackData::invokeCallback): 128754 * bindings/js/JSCustomXPathNSResolver.cpp: 128755 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): 128756 * bindings/js/JSEventListener.cpp: 128757 (WebCore::JSEventListener::handleEvent): 128758 * bindings/js/JSHTMLAllCollectionCustom.cpp: 128759 (WebCore::callHTMLAllCollection): 128760 * bindings/js/JSHTMLCollectionCustom.cpp: 128761 (WebCore::callHTMLCollection): 128762 * bindings/js/JSHTMLDocumentCustom.cpp: 128763 (WebCore::JSHTMLDocument::open): 128764 * bindings/js/JSInjectedScriptHostCustom.cpp: 128765 (WebCore::InjectedScriptHost::createInjectedScript): 128766 * bindings/js/JSNodeFilterCondition.cpp: 128767 (WebCore::JSNodeFilterCondition::acceptNode): 128768 * bindings/js/JSNodeListCustom.cpp: 128769 (WebCore::callNodeList): 128770 * bindings/js/JSPluginElementFunctions.cpp: 128771 (WebCore::callPlugin): 128772 * bindings/js/ScheduledAction.cpp: 128773 (WebCore::ScheduledAction::create): 128774 (WebCore::ScheduledAction::executeFunctionInContext): 128775 * bindings/js/ScriptFunctionCall.cpp: 128776 (WebCore::ScriptFunctionCall::call): 128777 * bindings/js/SerializedScriptValue.cpp: 128778 (WebCore::SerializingTreeWalker::convertIfTerminal): 128779 * bindings/objc/WebScriptObject.mm: 128780 (-[WebScriptObject callWebScriptMethod:withArguments:]): 128781 * bindings/scripts/CodeGeneratorJS.pm: 128782 * bridge/NP_jsobject.cpp: 128783 (_NPN_InvokeDefault): 128784 (_NPN_Invoke): 128785 (_NPN_Construct): 128786 * bridge/jni/jni_jsobject.mm: 128787 (JavaJSObject::call): 128788 * bridge/objc/objc_runtime.mm: 128789 (JSC::Bindings::callObjCFallbackObject): 128790 * bridge/runtime_method.cpp: 128791 (JSC::callRuntimeMethod): 128792 * bridge/runtime_object.cpp: 128793 (JSC::Bindings::callRuntimeObject): 128794 128795 2010-06-03 Sheriff Bot <webkit.review.bot (a] gmail.com> 128796 128797 Unreviewed, rolling out r60614. 128798 http://trac.webkit.org/changeset/60614 128799 https://bugs.webkit.org/show_bug.cgi?id=40123 128800 128801 It made fast/dom/Window/window-postmessage-clone.html fail on 128802 Mac bots (Requested by Ossy on #webkit). 128803 128804 * Android.derived.jscbindings.mk: 128805 * Android.derived.v8bindings.mk: 128806 * Android.mk: 128807 * CMakeLists.txt: 128808 * DerivedSources.cpp: 128809 * DerivedSources.make: 128810 * GNUmakefile.am: 128811 * WebCore.gypi: 128812 * WebCore.pri: 128813 * WebCore.pro: 128814 * bindings/generic/RuntimeEnabledFeatures.cpp: 128815 * bindings/generic/RuntimeEnabledFeatures.h: 128816 * bindings/js/JSEventCustom.cpp: 128817 (WebCore::toJS): 128818 * bindings/v8/custom/V8EventCustom.cpp: 128819 (WebCore::toV8): 128820 * dom/Document.cpp: 128821 (WebCore::Document::createEvent): 128822 (WebCore::Document::addListenerTypeIfNeeded): 128823 * dom/Document.h: 128824 (WebCore::Document::): 128825 * dom/Document.idl: 128826 * dom/Element.h: 128827 * dom/Element.idl: 128828 * dom/Event.cpp: 128829 (WebCore::Event::fromUserGesture): 128830 * dom/Event.h: 128831 * dom/EventNames.h: 128832 * dom/TransformActionEvent.cpp: Removed. 128833 * dom/TransformActionEvent.h: Removed. 128834 * dom/TransformActionEvent.idl: Removed. 128835 * html/HTMLAttributeNames.in: 128836 * html/HTMLElement.cpp: 128837 (WebCore::HTMLElement::parseMappedAttribute): 128838 * page/DOMWindow.h: 128839 * page/DOMWindow.idl: 128840 128841 2010-06-03 Yury Semikhatsky <yurys (a] chromium.org> 128842 128843 Reviewed by Pavel Feldman. 128844 128845 [v8] Web Inspector: show "Object" as description for values with anonymous constructor 128846 https://bugs.webkit.org/show_bug.cgi?id=40121 128847 128848 * inspector/front-end/InjectedScript.js: 128849 (injectedScriptConstructor): 128850 128851 2010-06-03 Tor Arne Vestb <tor.arne.vestbo (a] nokia.com> 128852 128853 Reviewed by Simon Hausmann. 128854 128855 [Qt] Fix NPAPI support on Mac OS X/Cocoa-32 128856 128857 qt_mac_window_for() returns a NSWindow on Cocoa, so we were 128858 passing in a NSWindow instead of a WindowRef as part of the 128859 NP_CGContext. 128860 128861 https://bugs.webkit.org/show_bug.cgi?id=38762 128862 128863 * WebCore.gypi: Reflect rename 128864 * WebCore.pro: Reflect rename 128865 * plugins/mac/PluginViewMac.cpp: Renamed to PluginViewMac.mm 128866 and fix bug by getting the Carbon windowRef from the NSWindow. 128867 * wscript: Reflect rename 128868 128869 2010-06-03 Kim Grnholm <kim.1.gronholm (a] nokia.com> 128870 128871 Reviewed by Simon Hausmann. 128872 128873 Add TransformActionEvent support 128874 https://bugs.webkit.org/show_bug.cgi?id=39757 128875 128876 Added only the necessary TransformAction event interfaces and not e.g. 128877 any eventhandler hooks that generate and dispatch them. 128878 128879 Test: fast/events/transformaction/create-transformaction-event.html 128880 More tests will be added with the machinery that generates and 128881 dispatches these events. 128882 128883 * Android.derived.jscbindings.mk: 128884 * Android.derived.v8bindings.mk: 128885 * Android.mk: 128886 * CMakeLists.txt: 128887 * DerivedSources.cpp: 128888 * DerivedSources.make: 128889 * GNUmakefile.am: 128890 * WebCore.gypi: 128891 * WebCore.pri: 128892 * WebCore.pro: 128893 * bindings/generic/RuntimeEnabledFeatures.cpp: 128894 * bindings/generic/RuntimeEnabledFeatures.h: 128895 (WebCore::RuntimeEnabledFeatures::transformactionEnabled): 128896 (WebCore::RuntimeEnabledFeatures::setTransformActionEnabled): 128897 (WebCore::RuntimeEnabledFeatures::ontransformactionstartEnabled): 128898 (WebCore::RuntimeEnabledFeatures::ontransformactionupdateEnabled): 128899 (WebCore::RuntimeEnabledFeatures::ontransformactionendEnabled): 128900 * bindings/js/JSEventCustom.cpp: 128901 (WebCore::toJS): 128902 * bindings/v8/custom/V8EventCustom.cpp: 128903 (WebCore::toV8): 128904 * dom/Document.cpp: 128905 (WebCore::Document::createEvent): 128906 (WebCore::Document::addListenerTypeIfNeeded): 128907 * dom/Document.h: 128908 (WebCore::Document::): 128909 * dom/Document.idl: 128910 * dom/Element.h: 128911 * dom/Element.idl: 128912 * dom/Event.cpp: 128913 (WebCore::Event::isTransformActionEvent): 128914 (WebCore::Event::fromUserGesture): 128915 * dom/Event.h: 128916 * dom/EventNames.h: 128917 * dom/TransformActionEvent.cpp: Added. 128918 (WebCore::TransformActionEvent::TransformActionEvent): 128919 (WebCore::TransformActionEvent::initTransformActionEvent): 128920 * dom/TransformActionEvent.h: Added. 128921 (WebCore::TransformActionEvent::create): 128922 (WebCore::TransformActionEvent::translateX): 128923 (WebCore::TransformActionEvent::translateY): 128924 (WebCore::TransformActionEvent::translateSpeedX): 128925 (WebCore::TransformActionEvent::translateSpeedY): 128926 (WebCore::TransformActionEvent::scale): 128927 (WebCore::TransformActionEvent::scaleSpeed): 128928 (WebCore::TransformActionEvent::rotate): 128929 (WebCore::TransformActionEvent::rotateSpeed): 128930 (WebCore::TransformActionEvent::TransformActionEvent): 128931 (WebCore::TransformActionEvent::isTransformActionEvent): 128932 * dom/TransformActionEvent.idl: Added. 128933 * html/HTMLAttributeNames.in: 128934 * html/HTMLElement.cpp: 128935 (WebCore::HTMLElement::parseMappedAttribute): 128936 * page/DOMWindow.h: 128937 * page/DOMWindow.idl: 128938 128939 2010-06-03 Pavel Feldman <pfeldman (a] chromium.org> 128940 128941 Reviewed by Yury Semikhatsky. 128942 128943 Web Inspector: a number of fixes that make InspectorController 128944 happy with null redirects. 128945 128946 https://bugs.webkit.org/show_bug.cgi?id=40109 128947 128948 * inspector/InspectorController.cpp: 128949 (WebCore::InspectorController::willSendRequest): 128950 (WebCore::InspectorController::didReceiveResponse): 128951 (WebCore::InspectorController::didReceiveContentLength): 128952 (WebCore::InspectorController::didFinishLoading): 128953 (WebCore::InspectorController::didFailLoading): 128954 128955 2010-06-03 Pavel Feldman <pfeldman (a] chromium.org> 128956 128957 Not reviewed. Rolling out aggressive cache part of the r60391 128958 described in the bug below. It was orthogonal to the rest of 128959 the patch and caused regression. 128960 128961 https://bugs.webkit.org/show_bug.cgi?id=37364 128962 128963 * platform/graphics/skia/ImageSkia.cpp: 128964 (WebCore::drawResampledBitmap): 128965 128966 2010-06-02 Darin Fisher <darin (a] chromium.org> 128967 128968 Reviewed by Brady Eidson. 128969 128970 location.href and outgoing referrer not updated properly by 128971 pushState/replaceState 128972 https://bugs.webkit.org/show_bug.cgi?id=40027 128973 128974 Tests: fast/loader/stateobjects/pushstate-updates-location.html 128975 fast/loader/stateobjects/replacestate-updates-location.html 128976 http/tests/navigation/pushstate-updates-referrer.html 128977 http/tests/navigation/replacestate-updates-referrer.html 128978 128979 * dom/Document.cpp: 128980 (WebCore::Document::updateURLForPushOrReplaceState): 128981 Update the FrameLoader's notion of the current URL as well! 128982 128983 * loader/FrameLoader.cpp: 128984 (WebCore::FrameLoader::loadInSameDocument): 128985 Use the 'url' parameter instead of m_URL since m_URL might have 128986 changed during the handling of the PopState event. Eventually, 128987 this will become irrelevant since the PopState event should be 128988 dispatched asynchronously, but just in case we patch HashChange 128989 to be asynchronous before PopState, this change would be needed. 128990 128991 2010-06-02 Eric Seidel <eric (a] webkit.org> 128992 128993 Reviewed by Adam Barth. 128994 128995 REGRESSION(60409): document.write is not synchronous when using the HTML5 parser 128996 https://bugs.webkit.org/show_bug.cgi?id=40047 128997 128998 The HTML5 spec states that we should "spin the event loop" while 128999 waiting for stylesheets to load. Currently we do that by yielding 129000 out of the parser when stylesheets are loading. Because it was easy 129001 we made inline <scripts> yield for stylesheet loads as well. However, 129002 this caused document.write() to return after encountering the first 129003 inline <script> tag in many cases which is incorrect. document.write 129004 is supposed to block until the entire document is parsed (including) 129005 executing inline script tags. To match the exiting parser, we'll just 129006 make inline <script> tags not block on stylesheets for now. 129007 129008 This is tested by WebCore/benchmarks/html-parser.html as well 129009 as likely several other tests in LayoutTests which we haven't 129010 triaged yet. 129011 129012 * html/HTML5ScriptRunner.cpp: 129013 (WebCore::HTML5ScriptRunner::executeScript): 129014 - ASSERT that either stylesheets have loaded or we're executing an 129015 inline <script> tag. 129016 (WebCore::HTML5ScriptRunner::runScript): 129017 - Remove the code to block inline <script> tags on stylesheet loads. 129018 129019 2010-06-02 MORITA Hajime <morrita (a] google.com> 129020 129021 Unreviewd, Chromium windows build fix. 129022 129023 * rendering/RenderThemeChromiumWin.cpp: 129024 (WebCore::RenderThemeChromiumWin::paintProgressBar): 129025 129026 2010-06-02 MORITA Hajime <morrita (a] google.com> 129027 129028 Reviewed by Kent Tamura. 129029 129030 [Chromium] Linux: progress bar image pieces should be painted with same resampling mode 129031 https://bugs.webkit.org/show_bug.cgi?id=40045 129032 129033 computeResamplingMode(), used by Image::drawPattern() and 129034 BitmapImage::draw(), chooses an image resampling mode based on the 129035 size of given image and the destination rectangle. But when 129036 painting single component (i.e. a progress bar) from multiple 129037 images, it can choose different resampling modes for images of 129038 same component. That difference creates unexpected visual artifacts 129039 like seams between images of single component. 129040 129041 This change introduced "image resampling hint" to allow callers to 129042 control the resampling mode. Using the hint, 129043 RenderThemeChromiumSkia now able to hold same resampling mode 129044 during draw a progress bar. 129045 129046 No new tests. Expectations will come after ENABLE_PROGRESS_BAR get 129047 enabled on chromium. 129048 129049 * platform/graphics/skia/ImageSkia.cpp: 129050 (WebCore::computeResamplingMode): 129051 * platform/graphics/skia/PlatformContextSkia.cpp: 129052 (PlatformContextSkia::save): 129053 (PlatformContextSkia::setImageResamplingHint): Added 129054 (PlatformContextSkia::clearImageResamplingHint): Added 129055 (PlatformContextSkia::hasImageResamplingHint): Added 129056 (PlatformContextSkia::imageResamplingHint): Added 129057 * platform/graphics/skia/PlatformContextSkia.h: 129058 * rendering/RenderThemeChromiumSkia.cpp: 129059 (WebCore::RenderThemeChromiumSkia::paintProgressBar): 129060 129061 2010-06-03 MORITA Hajime <morrita (a] google.com> 129062 129063 Reviewed by Kent Tamura. 129064 129065 [Chromium] Support HTML5 <progress> element on Linux. 129066 https://bugs.webkit.org/show_bug.cgi?id=37310 129067 129068 Implemented RenderThemeChromiumSkia::paintProgressBar(), extracing 129069 determinateProgressValueRectFor() from RenderThemeChromiumWin to 129070 RenderThemeChromiumSkia 129071 129072 No new tests. Expectations will come after ENABLE_PROGRESS_BAR get 129073 enabled on chromium. 129074 129075 * rendering/RenderThemeChromiumSkia.cpp: 129076 (WebCore::RenderThemeChromiumSkia::determinateProgressValueRectFor): 129077 (WebCore::RenderThemeChromiumSkia::indeterminateProgressValueRectFor): 129078 (WebCore::RenderThemeChromiumSkia::animationRepeatIntervalForProgressBar): 129079 (WebCore::RenderThemeChromiumSkia::animationDurationForProgressBar): 129080 (WebCore::RenderThemeChromiumSkia::paintProgressBar): 129081 (WebCore::RenderThemeChromiumSkia::progressValueRectFor): 129082 * rendering/RenderThemeChromiumSkia.h: 129083 * rendering/RenderThemeChromiumWin.cpp: 129084 (WebCore::RenderThemeChromiumWin::paintProgressBar): 129085 129086 2010-06-02 Nico Weber <thakis (a] chromium.org> 129087 129088 Reviewed by Simon Fraser. 129089 129090 Scroll events are sent twice per keypress for ports that don't have a platformWidget scrollbar 129091 https://bugs.webkit.org/show_bug.cgi?id=39918 129092 129093 This was regressed by http://trac.webkit.org/changeset/58615 . Fix this by slightly tweaking 129094 that patch. 129095 129096 Test: editing/input/page-up-down-scrolls.html 129097 129098 * page/FrameView.cpp: 129099 (WebCore::FrameView::scrollPositionChanged): 129100 * page/FrameView.h: 129101 * platform/ScrollView.cpp: 129102 (WebCore::ScrollView::valueChanged): 129103 * platform/ScrollView.h: 129104 (WebCore::ScrollView::repaintFixedElementsAfterScrolling): 129105 129106 2010-06-02 Andrey Kosyakov <caseq (a] chromium.org> 129107 129108 Reviewed by Pavel Feldman. 129109 129110 Web Inspector: use platform-specific key designations in shortcuts help for mac 129111 https://bugs.webkit.org/show_bug.cgi?id=39158 129112 129113 * inspector/front-end/KeyboardShortcut.js: 129114 (WebInspector.KeyboardShortcut.shortcutToString): 129115 (WebInspector.KeyboardShortcut._keyName): 129116 (WebInspector.KeyboardShortcut._modifiersToString): 129117 * inspector/front-end/inspector.js: 129118 (WebInspector._registerShortcuts): 129119 129120 2010-06-02 Kenneth Russell <kbr (a] google.com> 129121 129122 Reviewed by Darin Fisher. 129123 129124 Enable WebGL on more platforms even if accelerated compositing is disabled 129125 https://bugs.webkit.org/show_bug.cgi?id=40085 129126 129127 Conditionalize the code which prevents a WebGL rendering context 129128 from being created if accelerated compositing is disabled. 129129 Currently Chromium is the only port which will create a context if 129130 accelerated compositing is disabled; other ports may opt in to 129131 this code path if desired. 129132 129133 Tested with existing WebGL layout tests in Safari and Chromium on 129134 Mac OS X. 129135 129136 * html/HTMLCanvasElement.cpp: 129137 (WebCore::HTMLCanvasElement::getContext): 129138 129139 2010-06-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 129140 129141 Unreviewed, rolling out r60580. 129142 http://trac.webkit.org/changeset/60580 129143 https://bugs.webkit.org/show_bug.cgi?id=40087 129144 129145 This broke dragging links if the selection was in a 129146 contentEditable element. (Requested by arv on #webkit). 129147 129148 * page/FocusController.cpp: 129149 (WebCore::clearSelectionIfNeeded): 129150 129151 2010-06-02 Erik Arvidsson <arv (a] chromium.org> 129152 129153 Reviewed by Ojan Vafai. 129154 129155 REGRESSION: Weird focus behavior affects quoting on University of Washington message board system 129156 https://bugs.webkit.org/show_bug.cgi?id=38548 129157 129158 Test: editing/selection/click-in-focusable-link-should-not-clear-selection.html 129159 129160 * page/FocusController.cpp: 129161 (WebCore::clearSelectionIfNeeded): 129162 129163 2010-06-02 David Hyatt <hyatt (a] apple.com> 129164 129165 Reviewed by Anders Carlsson. 129166 129167 Just disable the current version of multi-column layout completely when the new 129168 pagination model is in effect. 129169 129170 * rendering/RenderBlock.cpp: 129171 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): 129172 129173 2010-06-02 David Hyatt <hyatt (a] apple.com> 129174 129175 Reviewed by Anders Carlsson. 129176 129177 Turn off unforced page breaking at paint time when the new page breaking model is being used. 129178 129179 * rendering/RenderLineBoxList.cpp: 129180 (WebCore::RenderLineBoxList::paint): 129181 129182 2010-06-02 David Hyatt <hyatt (a] apple.com> 129183 129184 Reviewed by Anders Carlsson. 129185 129186 Don't check page break properties at paint time if we're using the new page breaking model. 129187 129188 * rendering/RenderBlock.cpp: 129189 (WebCore::RenderBlock::paintChildren): 129190 129191 2010-06-02 Nate Chapin <japhet (a] chromium.org> 129192 129193 Reviewed by Dimitri Glazkov. 129194 129195 [V8] Fix an infinite recursion crash when trying to wrap 129196 media elements without a media player. 129197 129198 No test because there isn't a good way to ensure the media player 129199 is off. 129200 129201 * dom/make_names.pl: Call, e.g., V8HTMLElement::wrap(HTMLElement*) 129202 instead of toV8(HTMLElement*). 129203 129204 2010-06-02 Yael Aharon <yael.aharon (a] nokia.com> 129205 129206 Reviewed by Darin Adler. 129207 129208 Notification object ref counting is not correct. 129209 https://bugs.webkit.org/show_bug.cgi?id=39998 129210 129211 Return PassRefPtr<Notification> instead of a raw pointer from the create methods 129212 for Web Notifications. 129213 129214 No new tests are needed, as existing tests show the problem when sending the 129215 "display" event asynchronously. 129216 129217 * notifications/Notification.h: 129218 (WebCore::Notification::create): 129219 * notifications/NotificationCenter.h: 129220 (WebCore::NotificationCenter::createHTMLNotification): 129221 (WebCore::NotificationCenter::createNotification): 129222 129223 2010-06-02 Mikhail Naganov <mnaganov (a] chromium.org> 129224 129225 Reviewed by Yury Semikhatsky. 129226 129227 Web Inspector: add Console API for retrieving memory stats 129228 129229 Add 'console.memory' property which returns an object. Currently 129230 it has two fields: totalJSHeapSize and usedJSHeapSize. Later, it can be 129231 extended for reporting total browser's memory consumption. 129232 129233 https://bugs.webkit.org/show_bug.cgi?id=39646 129234 129235 * CMakeLists.txt: 129236 * DerivedSources.cpp: 129237 * DerivedSources.make: 129238 * GNUmakefile.am: 129239 * WebCore.gypi: 129240 * WebCore.pri: 129241 * WebCore.pro: 129242 * WebCore.vcproj/WebCore.vcproj: 129243 * WebCore.xcodeproj/project.pbxproj: 129244 * bindings/js/JSBindingsAllInOne.cpp: 129245 * bindings/js/JSConsoleCustom.cpp: 129246 (WebCore::JSConsole::memory): 129247 * bindings/v8/custom/V8ConsoleCustom.cpp: 129248 (WebCore::V8Console::memoryAccessorGetter): 129249 * page/Console.h: 129250 * page/Console.idl: 129251 * page/MemoryInfo.cpp: Added. 129252 (WebCore::MemoryInfo::MemoryInfo): 129253 * page/MemoryInfo.h: Added. 129254 (WebCore::MemoryInfo::create): 129255 (WebCore::MemoryInfo::totalJSHeapSize): 129256 (WebCore::MemoryInfo::usedJSHeapSize): 129257 * page/MemoryInfo.idl: Added. 129258 129259 2010-06-02 Yury Semikhatsky <yurys (a] chromium.org> 129260 129261 Reviewed by Pavel Feldman. 129262 129263 Web Inspector: support "Continue to Here" in debugger 129264 https://bugs.webkit.org/show_bug.cgi?id=39953 129265 129266 * English.lproj/localizedStrings.js: 129267 * inspector/front-end/BreakpointManager.js: 129268 (WebInspector.BreakpointManager.prototype.setOneTimeBreakpoint): 129269 (WebInspector.BreakpointManager.prototype.removeOneTimeBreakpoint): 129270 (WebInspector.BreakpointManager.prototype.addBreakpoint): 129271 * inspector/front-end/ScriptView.js: 129272 (WebInspector.ScriptView): 129273 (WebInspector.ScriptView.prototype._continueToLine): 129274 * inspector/front-end/ScriptsPanel.js: 129275 (WebInspector.ScriptsPanel.prototype.continueToLine): 129276 (WebInspector.ScriptsPanel.prototype.debuggerPaused): 129277 * inspector/front-end/SourceFrame.js: 129278 (WebInspector.SourceFrame): 129279 * inspector/front-end/SourceView.js: 129280 (WebInspector.SourceView): 129281 (WebInspector.SourceView.prototype._continueToLine): 129282 (WebInspector.SourceView.prototype.updateLocalContent): 129283 129284 2010-06-02 Mikhail Naganov <mnaganov (a] chromium.org> 129285 129286 Unreviewed, rolling out r60563. 129287 http://trac.webkit.org/changeset/60563 129288 https://bugs.webkit.org/show_bug.cgi?id=39646 129289 129290 windows build failed 129291 129292 * CMakeLists.txt: 129293 * DerivedSources.cpp: 129294 * DerivedSources.make: 129295 * GNUmakefile.am: 129296 * WebCore.gypi: 129297 * WebCore.pri: 129298 * WebCore.pro: 129299 * WebCore.vcproj/WebCore.vcproj: 129300 * WebCore.xcodeproj/project.pbxproj: 129301 * bindings/js/JSConsoleCustom.cpp: 129302 * bindings/v8/custom/V8ConsoleCustom.cpp: 129303 * page/Console.h: 129304 * page/Console.idl: 129305 * page/MemoryInfo.cpp: Removed. 129306 * page/MemoryInfo.h: Removed. 129307 * page/MemoryInfo.idl: Removed. 129308 129309 2010-06-02 Mikhail Naganov <mnaganov (a] chromium.org> 129310 129311 Reviewed by Yury Semikhatsky. 129312 129313 Web Inspector: add Console API for retrieving memory stats 129314 129315 Add 'console.memory' property which returns an object. Currently 129316 it has two fields: totalJSHeapSize and usedJSHeapSize. Later, it can be 129317 extended for reporting total browser's memory consumption. 129318 129319 https://bugs.webkit.org/show_bug.cgi?id=39646 129320 129321 * CMakeLists.txt: 129322 * DerivedSources.cpp: 129323 * DerivedSources.make: 129324 * GNUmakefile.am: 129325 * WebCore.gypi: 129326 * WebCore.pri: 129327 * WebCore.pro: 129328 * WebCore.vcproj/WebCore.vcproj: 129329 * WebCore.xcodeproj/project.pbxproj: 129330 * bindings/js/JSConsoleCustom.cpp: 129331 (WebCore::JSConsole::memory): 129332 * bindings/v8/custom/V8ConsoleCustom.cpp: 129333 (WebCore::V8Console::memoryAccessorGetter): 129334 * page/Console.h: 129335 * page/Console.idl: 129336 * page/MemoryInfo.cpp: Added. 129337 (WebCore::MemoryInfo::MemoryInfo): 129338 * page/MemoryInfo.h: Added. 129339 (WebCore::MemoryInfo::create): 129340 (WebCore::MemoryInfo::totalJSHeapSize): 129341 (WebCore::MemoryInfo::usedJSHeapSize): 129342 * page/MemoryInfo.idl: Added. 129343 129344 2010-06-02 Pavel Feldman <pfeldman (a] chromium.org> 129345 129346 Reviewed by Yury Semikhatsky. 129347 129348 Web Inspector: add test for resource parameters. 129349 129350 https://bugs.webkit.org/show_bug.cgi?id=40026 129351 129352 Test: http/tests/inspector/resource-parameters.html 129353 129354 * inspector/front-end/HAREntry.js: 129355 (WebInspector.HAREntry.prototype._buildParameters): 129356 * inspector/front-end/Resource.js: 129357 (WebInspector.Resource.prototype._parseParameters): 129358 * inspector/front-end/ResourceView.js: 129359 (WebInspector.ResourceView.prototype._refreshParms): 129360 129361 2010-06-02 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 129362 129363 Reviewed by Simon Hausmann. 129364 129365 [Qt] Fix make install on Symbian for headers in package builds when INSTALL_HEADERS is not defined 129366 129367 First we wrote inst_headers.output with $$[QT_INSTALL_HEADERS] and then 129368 overwrote it with the $$INSTALL_HEADERS variant without checking if the 129369 variable was set. 129370 129371 Fixed and cleaned up the logic of falling back to $$[QT_INSTALL_HEADERS]. 129372 129373 * WebCore.pro: 129374 129375 2010-06-02 Xan Lopez <xlopez (a] igalia.com> 129376 129377 Reviewed by Gustavo Noronha. 129378 129379 [GTK] Style fixes for the generated code in DOM bindings 129380 https://bugs.webkit.org/show_bug.cgi?id=39949 129381 129382 Get rid of extra spaces and wrong indentation in the generated 129383 code. 129384 129385 * bindings/scripts/CodeGeneratorGObject.pm: 129386 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 129387 (webkit_dom_test_callback_callback_with_class1param): 129388 (webkit_dom_test_callback_callback_with_class2param): 129389 (webkit_dom_test_callback_callback_with_non_bool_return_type): 129390 (webkit_dom_test_callback_set_property): 129391 (webkit_dom_test_callback_get_property): 129392 * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: 129393 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 129394 (webkit_dom_test_interface_set_property): 129395 (webkit_dom_test_interface_get_property): 129396 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 129397 (webkit_dom_test_obj_void_method): 129398 (webkit_dom_test_obj_void_method_with_args): 129399 (webkit_dom_test_obj_int_method): 129400 (webkit_dom_test_obj_int_method_with_args): 129401 (webkit_dom_test_obj_obj_method): 129402 (webkit_dom_test_obj_obj_method_with_args): 129403 (webkit_dom_test_obj_method_that_requires_all_args): 129404 (webkit_dom_test_obj_method_that_requires_all_args_and_throws): 129405 (webkit_dom_test_obj_serialized_value): 129406 (webkit_dom_test_obj_method_with_exception): 129407 (webkit_dom_test_obj_with_dynamic_frame): 129408 (webkit_dom_test_obj_with_dynamic_frame_and_arg): 129409 (webkit_dom_test_obj_with_dynamic_frame_and_optional_arg): 129410 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture): 129411 (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad): 129412 (webkit_dom_test_obj_with_script_state_void): 129413 (webkit_dom_test_obj_with_script_state_obj): 129414 (webkit_dom_test_obj_with_script_state_void_exception): 129415 (webkit_dom_test_obj_with_script_state_obj_exception): 129416 (webkit_dom_test_obj_method_with_optional_arg): 129417 (webkit_dom_test_obj_method_with_non_optional_arg_and_optional_arg): 129418 (webkit_dom_test_obj_method_with_non_optional_arg_and_two_optional_args): 129419 (webkit_dom_test_obj_get_read_only_int_attr): 129420 (webkit_dom_test_obj_get_read_only_string_attr): 129421 (webkit_dom_test_obj_get_read_only_test_obj_attr): 129422 (webkit_dom_test_obj_get_int_attr): 129423 (webkit_dom_test_obj_set_int_attr): 129424 (webkit_dom_test_obj_get_long_long_attr): 129425 (webkit_dom_test_obj_set_long_long_attr): 129426 (webkit_dom_test_obj_get_unsigned_long_long_attr): 129427 (webkit_dom_test_obj_set_unsigned_long_long_attr): 129428 (webkit_dom_test_obj_get_string_attr): 129429 (webkit_dom_test_obj_set_string_attr): 129430 (webkit_dom_test_obj_get_test_obj_attr): 129431 (webkit_dom_test_obj_set_test_obj_attr): 129432 (webkit_dom_test_obj_get_attr_with_exception): 129433 (webkit_dom_test_obj_set_attr_with_exception): 129434 (webkit_dom_test_obj_get_attr_with_setter_exception): 129435 (webkit_dom_test_obj_set_attr_with_setter_exception): 129436 (webkit_dom_test_obj_get_attr_with_getter_exception): 129437 (webkit_dom_test_obj_set_attr_with_getter_exception): 129438 (webkit_dom_test_obj_get_script_string_attr): 129439 (webkit_dom_test_obj_set_property): 129440 (webkit_dom_test_obj_get_property): 129441 (webkit_dom_test_obj_class_init): 129442 * bindings/scripts/test/GObject/WebKitDOMTestObj.h: 129443 129444 2010-06-02 Andrey Kosyakov <caseq (a] chromium.org> 129445 129446 Reviewed by Pavel Feldman. 129447 129448 WebInspector: Added conversion of inspector's resource representation into HAR. 129449 Moved common resource accessors from ResourceView to Resource. 129450 https://bugs.webkit.org/show_bug.cgi?id=30567 129451 129452 Test: http/tests/inspector/resource-har-conversion.html 129453 129454 * WebCore.gypi: 129455 * WebCore.vcproj/WebCore.vcproj: 129456 * inspector/front-end/HAREntry.js: Added. 129457 (WebInspector.HAREntry): 129458 (WebInspector.HAREntry.prototype.build): 129459 (WebInspector.HAREntry.prototype._buildRequest): 129460 (WebInspector.HAREntry.prototype._buildResponse): 129461 (WebInspector.HAREntry.prototype._buildContent): 129462 (WebInspector.HAREntry.prototype._buildTimings): 129463 (WebInspector.HAREntry.prototype._buildHeaders): 129464 (WebInspector.HAREntry.prototype._buildPostData): 129465 (WebInspector.HAREntry.prototype._buildParameters): 129466 (WebInspector.HAREntry.prototype._buildParameter): 129467 (WebInspector.HAREntry.prototype._toMilliseconds): 129468 * inspector/front-end/Resource.js: 129469 (WebInspector.Resource): 129470 (WebInspector.Resource.prototype.set url): 129471 (WebInspector.Resource.prototype.get receiveDuration): 129472 (WebInspector.Resource.prototype.requestHeaderValue): 129473 (WebInspector.Resource.prototype.get requestFormData): 129474 (WebInspector.Resource.prototype.set requestFormData): 129475 (WebInspector.Resource.prototype.responseHeaderValue): 129476 (WebInspector.Resource.prototype.get queryParameters): 129477 (WebInspector.Resource.prototype.get formParameters): 129478 (WebInspector.Resource.prototype._parseParameters): 129479 (WebInspector.Resource.prototype._headerValue): 129480 * inspector/front-end/ResourceView.js: 129481 (WebInspector.ResourceView.prototype._refreshQueryString): 129482 (WebInspector.ResourceView.prototype._refreshFormData): 129483 (WebInspector.ResourceView.prototype._refreshParms): 129484 * inspector/front-end/WebKit.qrc: 129485 * inspector/front-end/inspector.html: 129486 129487 2010-06-02 Sheriff Bot <webkit.review.bot (a] gmail.com> 129488 129489 Unreviewed, rolling out r60547. 129490 http://trac.webkit.org/changeset/60547 129491 https://bugs.webkit.org/show_bug.cgi?id=40051 129492 129493 It made fast/overflow/overflow-with-local-background- 129494 attachment.html crash (Requested by Ossy on #webkit). 129495 129496 * notifications/Notification.h: 129497 (WebCore::Notification::create): 129498 * notifications/NotificationCenter.h: 129499 (WebCore::NotificationCenter::createHTMLNotification): 129500 (WebCore::NotificationCenter::createNotification): 129501 129502 2010-06-02 Eric Seidel <eric (a] webkit.org> 129503 129504 Reviewed by Adam Barth. 129505 129506 HTML5 parser does not track line numbers 129507 https://bugs.webkit.org/show_bug.cgi?id=39984 129508 129509 This adds rudimentary line-number tracking to the HTML5Lexer. 129510 We'll still need to handle \r\n cases eventually, but this 129511 fixes the vast majority of our line-number related failures. 129512 129513 Fixes 268 layout tests. :) 129514 129515 * html/HTML5Lexer.cpp: 129516 (WebCore::HTML5Lexer::reset): 129517 - Reset m_lineNumber to 0. 129518 (WebCore::HTML5Lexer::consumeEntity): 129519 - Pass m_lineNumber to advance(). 129520 (WebCore::HTML5Lexer::nextToken): 129521 - Pass m_lineNumber to advance(). 129522 * html/HTML5Lexer.h: 129523 (WebCore::HTML5Lexer::lineNumber): 129524 - Expose m_lineNumber for HTML5Tokenizer. 129525 (WebCore::HTML5Lexer::columnNumber): 129526 - Mirrors the implementation in the old HTMLTokenizer. 129527 we might some day support column number tracking in 129528 the Lexer. It certainly would be possible. 129529 * html/HTML5ScriptRunner.cpp: 129530 (WebCore::HTML5ScriptRunner::HTML5ScriptRunner): 129531 - ASSERT we're passed a host. 129532 (WebCore::HTML5ScriptRunner::sourceFromPendingScript): 129533 - Use PendingScript.startingLineNumber when PendingScript is an inline script. 129534 (WebCore::HTML5ScriptRunner::execute): 129535 - Now expects a start line number passed from the TreeBuilder. 129536 (WebCore::HTML5ScriptRunner::runScript): 129537 - Now expects a start line number. 129538 * html/HTML5ScriptRunner.h: 129539 (WebCore::HTML5ScriptRunner::PendingScript::PendingScript): 129540 - Track startingLineNumber for any inline script. 129541 * html/HTML5Tokenizer.cpp: 129542 (WebCore::HTML5Tokenizer::begin): 129543 - Add a FIXME. The old HTMLTokenizer resets its "lexer" state here. 129544 (WebCore::HTML5Tokenizer::pumpLexer): 129545 - Pass scriptStartLine to the HTML5ScriptRunner 129546 (WebCore::HTML5Tokenizer::lineNumber): 129547 - Implementation for Tokenizer.h 129548 (WebCore::HTML5Tokenizer::columnNumber): 129549 - Implementation for Tokenizer.h 129550 * html/HTML5Tokenizer.h: 129551 * html/HTML5TreeBuilder.cpp: 129552 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 129553 - Initialize the new line number tracking variables. 129554 (WebCore::HTML5TreeBuilder::handleScriptEndTag): 129555 - Save off the line number from the start tag to pass to the ScriptRunner. 129556 (WebCore::HTML5TreeBuilder::takeScriptToProcess): 129557 - Return the line number from the start tag. 129558 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 129559 - Save off the line number of ever script start tag we see. 129560 * html/HTML5TreeBuilder.h: 129561 - Keep both the line number of the last start tag, and the 129562 line number of the script we know we're expecting our caller to 129563 run before resuming parsing. These are separate to keep the code 129564 clean, especially since the last script start tag line number is 129565 a hack specific to using the old HTMLParser. 129566 129567 2010-06-02 Joseph Pecoraro <joepeck (a] webkit.org> 129568 129569 Reviewed by Pavel Feldman. 129570 129571 Web Inspector: Timeline should nicely format the Timer timeout 129572 https://bugs.webkit.org/show_bug.cgi?id=40040 129573 129574 * inspector/front-end/TimelinePanel.js: 129575 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): Format the Timer's timeout time. 129576 129577 2010-06-02 Vangelis Kokkevis <vangelis (a] chromium.org> 129578 129579 Reviewed by Dimitri Glazkov. 129580 129581 [Chromium] Clamp dirtyRect updates of composited layer contents to the size 129582 of the layer to avoid writing outside texture bounds. 129583 https://bugs.webkit.org/show_bug.cgi?id=40030 129584 129585 * platform/graphics/chromium/LayerChromium.cpp: 129586 (WebCore::LayerChromium::updateTextureContents): 129587 129588 2010-06-02 Yael Aharon <yael.aharon (a] nokia.com> 129589 129590 Reviewed by Darin Adler. 129591 129592 Notification object ref counting is not correct. 129593 https://bugs.webkit.org/show_bug.cgi?id=39998 129594 129595 Return PassRefPtr<Notification> instead of a raw pointer from the create methods 129596 for Web Notifications. 129597 129598 No new tests are needed, as existing tests show the problem when sending the 129599 "display" event asynchronously. 129600 129601 * notifications/Notification.h: 129602 (WebCore::Notification::create): 129603 * notifications/NotificationCenter.h: 129604 (WebCore::NotificationCenter::createHTMLNotification): 129605 (WebCore::NotificationCenter::createNotification): 129606 129607 2010-06-02 Qi Zhang <qi.2.zhang (a] nokia.com> 129608 129609 Reviewed by Dirk Schulze. 129610 129611 [Qt] Image shadow doesn't work 129612 https://bugs.webkit.org/show_bug.cgi?id=37804 129613 129614 Implement the code for image shadow 129615 129616 * platform/graphics/qt/ImageQt.cpp: 129617 (WebCore::BitmapImage::draw): 129618 129619 2010-06-02 Vangelis Kokkevis <vangelis (a] chromium.org> 129620 129621 Reviewed by Darin Fisher. 129622 129623 Adding the precision qualifier to fragment shaders used by the GL 129624 compositor in chromium to turn them into valid GLSL ES. 129625 https://bugs.webkit.org/show_bug.cgi?id=40022 129626 129627 * platform/graphics/chromium/LayerRendererChromium.cpp: 129628 (WebCore::LayerRendererChromium::initializeSharedGLObjects): 129629 129630 2010-06-02 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 129631 129632 Reviewed by David Levin. 129633 129634 Fix type qualifier is meaningless on cast type in SVGFEColorMatrixElement::build 129635 https://bugs.webkit.org/show_bug.cgi?id=40015 129636 129637 No new tests as there is no new functionality. 129638 129639 Remove const from the cast type. 129640 129641 * svg/SVGFEColorMatrixElement.cpp: 129642 (WebCore::SVGFEColorMatrixElement::build): 129643 129644 2010-06-02 Sterling Swigart <sswigart (a] google.com> 129645 129646 Reviewed by David Levin. 129647 129648 Image Resizer Patch 0: Added compilation argument to conditionally compile pending patches. 129649 https://bugs.webkit.org/show_bug.cgi?id=39906 129650 129651 * Configurations/FeatureDefines.xcconfig: 129652 * GNUmakefile.am: 129653 * WebCore.pri: 129654 129655 2010-06-01 Dirk Schulze <krit (a] webkit.org> 129656 129657 Reviewed by Nikolas Zimmermann. 129658 129659 SVG repaintRect should be empty if content got clipped away 129660 https://bugs.webkit.org/show_bug.cgi?id=39965 129661 129662 The SVG repaintRect of the renderer was not empty, if the content got clipped away. 129663 The MaskerData/ClipperData <-> RenderObject mapping is set up during the layout phase now, to be able to 129664 relayout a RenderObject, if it's repaintRect is empty. This has the following reason: 129665 We apply the object to the resource on painting at the moment. 129666 With an empty repaintRect, paint() quits earlier and therefore the object doesn't get applied to the resource. 129667 This can cause problems, if the resource get changed by animations or scripts. 129668 On a change, the resource tells all it's callers to relayout. 129669 If the reference to the caller (our RenderObject) is missing, the object won't ever update 129670 and therefore won't get drawn. 129671 We already have LayoutTests that cover this problem. The complete repaintRect calculation 129672 (including the smallest clipping area and shadow size calculation) moved from the renderers to SVGRenderSupport. 129673 This eliminates redundant code. 129674 129675 * rendering/RenderPath.cpp: 129676 (WebCore::RenderPath::updateCachedBoundaries): 129677 * rendering/RenderSVGContainer.cpp: 129678 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 129679 * rendering/RenderSVGImage.cpp: 129680 (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): 129681 * rendering/RenderSVGResource.h: 129682 * rendering/RenderSVGResourceClipper.cpp: 129683 (WebCore::RenderSVGResourceClipper::resourceBoundingBox): 129684 * rendering/RenderSVGResourceClipper.h: 129685 * rendering/RenderSVGResourceFilter.cpp: 129686 (WebCore::RenderSVGResourceFilter::resourceBoundingBox): 129687 * rendering/RenderSVGResourceFilter.h: 129688 * rendering/RenderSVGResourceGradient.h: 129689 (WebCore::RenderSVGResourceGradient::resourceBoundingBox): 129690 * rendering/RenderSVGResourceMarker.h: 129691 (WebCore::RenderSVGResourceMarker::resourceBoundingBox): 129692 * rendering/RenderSVGResourceMasker.cpp: 129693 (WebCore::RenderSVGResourceMasker::resourceBoundingBox): 129694 * rendering/RenderSVGResourceMasker.h: 129695 * rendering/RenderSVGResourcePattern.h: 129696 (WebCore::RenderSVGResourcePattern::resourceBoundingBox): 129697 * rendering/RenderSVGResourceSolidColor.h: 129698 (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox): 129699 * rendering/RenderSVGText.cpp: 129700 (WebCore::RenderSVGText::strokeBoundingBox): 129701 (WebCore::RenderSVGText::repaintRectInLocalCoordinates): 129702 * rendering/SVGRenderSupport.cpp: 129703 (WebCore::SVGRenderBase::intersectRepaintRectWithResources): 129704 * rendering/SVGRenderSupport.h: 129705 * rendering/SVGRenderTreeAsText.cpp: 129706 (WebCore::writeResources): 129707 * rendering/style/SVGRenderStyle.h: 129708 (WebCore::SVGRenderStyle::hasClipper): 129709 (WebCore::SVGRenderStyle::hasMasker): 129710 (WebCore::SVGRenderStyle::hasFilter): 129711 129712 2010-06-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 129713 129714 Unreviewed, rolling out r60539. 129715 http://trac.webkit.org/changeset/60539 129716 https://bugs.webkit.org/show_bug.cgi?id=40043 129717 129718 Accidentally added an unreviewed and invalid change to the 129719 patch. (Requested by krit on #webkit). 129720 129721 * rendering/RenderPath.cpp: 129722 (WebCore::RenderPath::updateCachedBoundaries): 129723 * rendering/RenderSVGContainer.cpp: 129724 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 129725 * rendering/RenderSVGImage.cpp: 129726 (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): 129727 * rendering/RenderSVGResource.h: 129728 * rendering/RenderSVGResourceClipper.cpp: 129729 (WebCore::RenderSVGResourceClipper::resourceBoundingBox): 129730 * rendering/RenderSVGResourceClipper.h: 129731 * rendering/RenderSVGResourceFilter.cpp: 129732 (WebCore::RenderSVGResourceFilter::resourceBoundingBox): 129733 * rendering/RenderSVGResourceFilter.h: 129734 * rendering/RenderSVGResourceGradient.h: 129735 (WebCore::RenderSVGResourceGradient::resourceBoundingBox): 129736 * rendering/RenderSVGResourceMarker.h: 129737 (WebCore::RenderSVGResourceMarker::resourceBoundingBox): 129738 * rendering/RenderSVGResourceMasker.cpp: 129739 (WebCore::RenderSVGResourceMasker::resourceBoundingBox): 129740 * rendering/RenderSVGResourceMasker.h: 129741 * rendering/RenderSVGResourcePattern.h: 129742 (WebCore::RenderSVGResourcePattern::resourceBoundingBox): 129743 * rendering/RenderSVGResourceSolidColor.h: 129744 (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox): 129745 * rendering/RenderSVGText.cpp: 129746 (WebCore::RenderSVGText::strokeBoundingBox): 129747 (WebCore::RenderSVGText::repaintRectInLocalCoordinates): 129748 * rendering/SVGRenderSupport.cpp: 129749 (WebCore::SVGRenderBase::filterBoundingBoxForRenderer): 129750 (WebCore::SVGRenderBase::clipperBoundingBoxForRenderer): 129751 (WebCore::SVGRenderBase::maskerBoundingBoxForRenderer): 129752 * rendering/SVGRenderSupport.h: 129753 * rendering/SVGRenderTreeAsText.cpp: 129754 (WebCore::writeResources): 129755 * rendering/style/SVGRenderStyle.h: 129756 * svg/SVGColor.cpp: 129757 (WebCore::SVGColor::colorFromRGBColorString): 129758 129759 2010-06-01 Dirk Schulze <krit (a] webkit.org> 129760 129761 Reviewed by Nikolas Zimmermann. 129762 129763 SVG repaintRect should be empty if content got clipped away 129764 https://bugs.webkit.org/show_bug.cgi?id=39965 129765 129766 The SVG repaintRect of the renderer was not empty, if the content got clipped away. 129767 The MaskerData/ClipperData <-> RenderObject mapping is set up during the layout phase now, to be able to 129768 relayout a RenderObject, if it's repaintRect is empty. This has the following reason: 129769 We apply the object to the resource on painting at the moment. 129770 With an empty repaintRect, paint() quits earlier and therefore the object doesn't get applied to the resource. 129771 This can cause problems, if the resource get changed by animations or scripts. 129772 On a change, the resource tells all it's callers to relayout. 129773 If the reference to the caller (our RenderObject) is missing, the object won't ever update 129774 and therefore won't get drawn. 129775 We already have LayoutTests that cover this problem. The complete repaintRect calculation 129776 (including the smallest clipping area and shadow size calculation) moved from the renderers to SVGRenderSupport. 129777 This eliminates redundant code. 129778 129779 * rendering/RenderPath.cpp: 129780 (WebCore::RenderPath::updateCachedBoundaries): 129781 * rendering/RenderSVGContainer.cpp: 129782 (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates): 129783 * rendering/RenderSVGImage.cpp: 129784 (WebCore::RenderSVGImage::repaintRectInLocalCoordinates): 129785 * rendering/RenderSVGResource.h: 129786 * rendering/RenderSVGResourceClipper.cpp: 129787 (WebCore::RenderSVGResourceClipper::resourceBoundingBox): 129788 * rendering/RenderSVGResourceClipper.h: 129789 * rendering/RenderSVGResourceFilter.cpp: 129790 (WebCore::RenderSVGResourceFilter::resourceBoundingBox): 129791 * rendering/RenderSVGResourceFilter.h: 129792 * rendering/RenderSVGResourceGradient.h: 129793 (WebCore::RenderSVGResourceGradient::resourceBoundingBox): 129794 * rendering/RenderSVGResourceMarker.h: 129795 (WebCore::RenderSVGResourceMarker::resourceBoundingBox): 129796 * rendering/RenderSVGResourceMasker.cpp: 129797 (WebCore::RenderSVGResourceMasker::resourceBoundingBox): 129798 * rendering/RenderSVGResourceMasker.h: 129799 * rendering/RenderSVGResourcePattern.h: 129800 (WebCore::RenderSVGResourcePattern::resourceBoundingBox): 129801 * rendering/RenderSVGResourceSolidColor.h: 129802 (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox): 129803 * rendering/RenderSVGText.cpp: 129804 (WebCore::RenderSVGText::strokeBoundingBox): 129805 (WebCore::RenderSVGText::repaintRectInLocalCoordinates): 129806 * rendering/SVGRenderSupport.cpp: 129807 (WebCore::SVGRenderBase::intersectRepaintRectWithResources): 129808 * rendering/SVGRenderSupport.h: 129809 * rendering/SVGRenderTreeAsText.cpp: 129810 (WebCore::writeResources): 129811 * rendering/style/SVGRenderStyle.h: 129812 (WebCore::SVGRenderStyle::hasClipper): 129813 (WebCore::SVGRenderStyle::hasMasker): 129814 (WebCore::SVGRenderStyle::hasFilter): 129815 129816 2010-06-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 129817 129818 Unreviewed, rolling out r60530. 129819 http://trac.webkit.org/changeset/60530 129820 https://bugs.webkit.org/show_bug.cgi?id=40041 129821 129822 resource-har-conversion failed on GTK (Requested by abarth on 129823 #webkit). 129824 129825 * WebCore.gypi: 129826 * WebCore.vcproj/WebCore.vcproj: 129827 * inspector/front-end/HAREntry.js: Removed. 129828 * inspector/front-end/Resource.js: 129829 (WebInspector.Resource): 129830 (WebInspector.Resource.prototype.set url): 129831 * inspector/front-end/ResourceView.js: 129832 (WebInspector.ResourceView.prototype._refreshQueryString): 129833 (WebInspector.ResourceView.prototype._refreshFormData): 129834 (WebInspector.ResourceView.prototype._refreshParms): 129835 * inspector/front-end/WebKit.qrc: 129836 * inspector/front-end/inspector.html: 129837 129838 2010-06-01 No'am Rosenthal <noam.rosenthal (a] nokia.com> 129839 129840 Reviewed by Kenneth Rohde Christiansen. 129841 129842 [Qt] GraphicsLayer: warnings when reloading page 129843 https://bugs.webkit.org/show_bug.cgi?id=39694 129844 129845 Made sure recaching and masks aren't attempted on zero-size layers. 129846 129847 No new tests. Old tests (e.g. LayoutTests/compositing/masks) show the problem. 129848 129849 * platform/graphics/qt/GraphicsLayerQt.cpp: 129850 (WebCore::MaskEffectQt::draw): 129851 (WebCore::GraphicsLayerQtImpl::recache): 129852 129853 2010-06-01 anton muhin <antonm (a] google.com> 129854 129855 Reviewed by Nate Chapin. 129856 129857 [Chromium] enforce presence of named property query callback if named property enumerator is present 129858 https://bugs.webkit.org/show_bug.cgi?id=40006 129859 We need to be able to distinguish between enumerable and not enumerable properties 129860 in the presence of named interceptor. V8 is migrating to use query 129861 callback to report enumerable properties and fallback check--- 129862 using getter callback---would report properties as not enumerable. 129863 Thus if there is an enumerator callback, there should be query callback as well. 129864 (see V8's r4751). 129865 129866 * bindings/scripts/CodeGeneratorV8.pm: 129867 * bindings/v8/V8NPObject.cpp: 129868 (WebCore::npObjectQueryProperty): 129869 (WebCore::createV8ObjectForNPObject): 129870 * bindings/v8/custom/V8StorageCustom.cpp: 129871 (WebCore::V8Storage::namedPropertyQuery): 129872 129873 2010-06-01 Andrey Kosyakov <caseq (a] chromium.org> 129874 129875 Reviewed by Pavel Feldman. 129876 129877 WebInspector: Added conversion of inspector's resource representation into HAR. 129878 Moved common resource accessors from ResourceView to Resource. 129879 https://bugs.webkit.org/show_bug.cgi?id=30567 129880 129881 Test: http/tests/inspector/resource-har-conversion.html 129882 129883 * WebCore.gypi: 129884 * WebCore.vcproj/WebCore.vcproj: 129885 * inspector/front-end/HAREntry.js: Added. 129886 (WebInspector.HAREntry): 129887 (WebInspector.HAREntry.prototype.build): 129888 (WebInspector.HAREntry.prototype._buildRequest): 129889 (WebInspector.HAREntry.prototype._buildResponse): 129890 (WebInspector.HAREntry.prototype._buildContent): 129891 (WebInspector.HAREntry.prototype._buildTimings): 129892 (WebInspector.HAREntry.prototype._buildHeaders): 129893 (WebInspector.HAREntry.prototype._buildPostData): 129894 (WebInspector.HAREntry.prototype._buildParameters): 129895 (WebInspector.HAREntry.prototype._buildParameter): 129896 (WebInspector.HAREntry.prototype._toMilliseconds): 129897 * inspector/front-end/Resource.js: 129898 (WebInspector.Resource): 129899 (WebInspector.Resource.prototype.set url): 129900 (WebInspector.Resource.prototype.get receiveDuration): 129901 (WebInspector.Resource.prototype.requestHeaderValue): 129902 (WebInspector.Resource.prototype.get requestFormData): 129903 (WebInspector.Resource.prototype.set requestFormData): 129904 (WebInspector.Resource.prototype.responseHeaderValue): 129905 (WebInspector.Resource.prototype.get queryParameters): 129906 (WebInspector.Resource.prototype.get formParameters): 129907 (WebInspector.Resource.prototype._parseParameters): 129908 (WebInspector.Resource.prototype._headerValue): 129909 * inspector/front-end/ResourceView.js: 129910 (WebInspector.ResourceView.prototype._refreshQueryString): 129911 (WebInspector.ResourceView.prototype._refreshFormData): 129912 (WebInspector.ResourceView.prototype._refreshParms): 129913 * inspector/front-end/WebKit.qrc: 129914 * inspector/front-end/inspector.html: 129915 129916 2010-06-01 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 129917 129918 Reviewed by Kenneth Rohde Christiansen. 129919 129920 Fix "variable may be used before being set" warning in TextResourceDecoder::checkForHeadCharset 129921 https://bugs.webkit.org/show_bug.cgi?id=40001 129922 129923 No new tests as there is no new functionality. 129924 129925 Initialize len to 0 just to eliminate the compiler warning. 129926 129927 * loader/TextResourceDecoder.cpp: 129928 (WebCore::TextResourceDecoder::checkForHeadCharset): 129929 129930 2010-06-01 Ilya Tikhonovsky <loislo (a] chromium.org> 129931 129932 Reviewed by Pavel Feldman. 129933 129934 WebInspector: Safari specific files InspectorFrontendClientLocal were removed from chromium project. 129935 https://bugs.webkit.org/show_bug.cgi?id=39993 129936 129937 * WebCore.gypi: 129938 129939 2010-06-01 Andreas Kling <andreas.kling (a] nokia.com> 129940 129941 Reviewed by Darin Adler. 129942 129943 Fix broken code generation in GenerateParametersCheckExpression. 129944 https://bugs.webkit.org/show_bug.cgi?id=39960 129945 129946 * bindings/scripts/CodeGeneratorJS.pm: 129947 * bindings/scripts/test/JS/JSTestObj.cpp: Updated baseline. 129948 129949 2010-06-01 Mark Rowe <mrowe (a] apple.com> 129950 129951 Rubber-stamped by Adam Roben. 129952 129953 Remove Breakpoint.js. It was emptied in r60450 but for some reason it was not 129954 deleted at that time. The presence of empty files within the inspector's resource 129955 folder causes Mac OS X production builds to fail. 129956 129957 * inspector/front-end/Breakpoint.js: Removed. 129958 129959 2010-05-24 James Hawkins <jhawkins (a] chromium.org> 129960 129961 Reviewed by Darin Fisher. 129962 129963 Added ability for PopupMenuClient to signal when 129964 * selection changed, and 129965 * selection cleared. 129966 129967 https://bugs.webkit.org/show_bug.cgi?id=39639 129968 129969 No new tests because this functionality is intentionally hidden from 129970 everything other than renderer. 129971 129972 * platform/PopupMenuClient.h: 129973 * platform/chromium/PopupMenuChromium.cpp: 129974 (WebCore::PopupListBox::selectIndex): 129975 (WebCore::PopupListBox::clearSelection): 129976 * rendering/RenderMenuList.h: 129977 (WebCore::RenderMenuList::RenderMenuList::selectionChanged): 129978 (WebCore::RenderMenuList::RenderMenuList::selectionCleared): 129979 * rendering/RenderTextControlSingleLine.h: 129980 (WebCore::RenderTextControlSingleLine::selectionChanged): 129981 (WebCore::RenderTextControlSingleLine::selectionCleared): 129982 129983 2010-06-01 Dumitru Daniliuc <dumi (a] chromium.org> 129984 129985 Reviewed by Dimitri Glazkov. 129986 129987 Check if a database needs to be auto-vacuumed only after transactions that have deleted something. 129988 https://bugs.webkit.org/show_bug.cgi?id=39688 129989 129990 * storage/Database.cpp: 129991 (WebCore::Database::resetDeletes): 129992 (WebCore::Database::hadDeletes): 129993 * storage/Database.h: 129994 * storage/DatabaseAuthorizer.cpp: 129995 (WebCore::DatabaseAuthorizer::resetDeletes): 129996 (WebCore::DatabaseAuthorizer::dropTable): 129997 (WebCore::DatabaseAuthorizer::dropTempTable): 129998 (WebCore::DatabaseAuthorizer::dropIndex): 129999 (WebCore::DatabaseAuthorizer::dropTempIndex): 130000 (WebCore::DatabaseAuthorizer::dropTrigger): 130001 (WebCore::DatabaseAuthorizer::dropTempTrigger): 130002 (WebCore::DatabaseAuthorizer::dropView): 130003 (WebCore::DatabaseAuthorizer::dropTempView): 130004 (WebCore::DatabaseAuthorizer::dropVTable): 130005 (WebCore::DatabaseAuthorizer::allowDelete): 130006 (WebCore::DatabaseAuthorizer::updateDeletesBasedOnTableName): Added. 130007 * storage/DatabaseAuthorizer.h: 130008 (WebCore::DatabaseAuthorizer::hadDeletes): 130009 * storage/SQLTransaction.cpp: 130010 (WebCore::SQLTransaction::openTransactionAndPreflight): 130011 (WebCore::SQLTransaction::postflightAndCommit): 130012 130013 2010-06-01 David Hyatt <hyatt (a] apple.com> 130014 130015 Reviewed by Anders Carlsson. 130016 130017 Add a preference for paginating during layout (the new model for computing page breaks). 130018 130019 * page/Settings.cpp: 130020 (WebCore::Settings::Settings): 130021 * page/Settings.h: 130022 (WebCore::Settings::setPaginateDuringLayoutEnabled): 130023 (WebCore::Settings::paginateDuringLayoutEnabled): 130024 130025 2010-06-01 Dumitru Daniliuc <dumi (a] chromium.org> 130026 130027 Reviewed by Adam Barth. 130028 130029 Clean up the DB classes in preparation for a bigger refactoring. 130030 https://bugs.webkit.org/show_bug.cgi?id=39041 130031 130032 * storage/ChangeVersionWrapper.cpp: 130033 * storage/ChangeVersionWrapper.h: 130034 * storage/Database.cpp: 130035 (WebCore::Database::Database): 130036 (WebCore::Database::lastActionChangedDatabase): 130037 (WebCore::Database::lastActionWasInsert): 130038 (WebCore::Database::inProgressTransactionCompleted): 130039 (WebCore::Database::securityOrigin): 130040 * storage/Database.h: 130041 (WebCore::Database::sqliteDatabase): 130042 (WebCore::Database::databaseDebugName): 130043 * storage/DatabaseTask.cpp: 130044 (WebCore::DatabaseTransactionTask::doPerformTask): 130045 * storage/DatabaseTask.h: 130046 * storage/SQLStatement.cpp: 130047 (WebCore::SQLStatement::execute): 130048 * storage/SQLStatement.h: 130049 * storage/SQLTransaction.cpp: 130050 (WebCore::SQLTransaction::SQLTransaction): 130051 (WebCore::SQLTransaction::openTransactionAndPreflight): 130052 (WebCore::SQLTransaction::runStatements): 130053 (WebCore::SQLTransaction::runCurrentStatement): 130054 (WebCore::SQLTransaction::postflightAndCommit): 130055 (WebCore::SQLTransaction::cleanupAfterSuccessCallback): 130056 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): 130057 * storage/SQLTransaction.h: 130058 130059 2010-06-01 Rob Buis <rwlbuis (a] gmail.com> 130060 130061 Reviewed by Nikolas Zimmermann. 130062 130063 Large SVG rect with shadow fails to render 130064 https://bugs.webkit.org/show_bug.cgi?id=38851 130065 130066 Store intermediate shadow calculation in floats to prevent integer overflow. 130067 130068 Test: svg/filters/shadow-on-rect-large.svg 130069 130070 * rendering/style/SVGRenderStyle.cpp: 130071 (WebCore::getSVGShadowExtent): 130072 (WebCore::SVGRenderStyle::inflateForShadow): 130073 130074 2010-06-01 Jer Noble <jer.noble (a] apple.com> 130075 130076 Reviewed by Sam Weinig. 130077 130078 QuickTime 7.6.4 + Safari Nightly = Crash 130079 https://bugs.webkit.org/show_bug.cgi?id=40019 130080 rdar://problem/8035443 130081 130082 Check the return value of QTCFPropertyListCreateXMLData before calling CFDataGetLength(). 130083 130084 * platform/graphics/win/QTCFDictionary.cpp: 130085 (QTCFDictionaryCreateCopyWithDataCallback): 130086 130087 2010-06-01 Rob Buis <rwlbuis (a] gmail.com> 130088 130089 Reviewed by Dirk Schulze. 130090 130091 Manipulating SVG element attributes in Javascript does not work as expected 130092 https://bugs.webkit.org/show_bug.cgi?id=34328 130093 130094 Reset the viewBox to be empty when removing the viewBox attribute. 130095 130096 Test: svg/custom/svg-viewBox-dynamic.html 130097 130098 * svg/SVGFitToViewBox.cpp: 130099 (WebCore::SVGFitToViewBox::parseViewBox): 130100 (WebCore::SVGFitToViewBox::parseMappedAttribute): 130101 * svg/SVGFitToViewBox.h: 130102 * svg/SVGViewSpec.cpp: 130103 (WebCore::SVGViewSpec::setViewBoxString): 130104 (WebCore::SVGViewSpec::parseViewSpec): 130105 130106 2010-06-01 Chris Fleizach <cfleizach (a] apple.com> 130107 130108 Reviewed by Beth Dakin. 130109 130110 AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle. 130111 https://bugs.webkit.org/show_bug.cgi?id=39324 130112 130113 There are some parameters that super handles that are not explicitly returned by the list of the element's attributes. 130114 In those cases, super should handle. 130115 130116 * accessibility/mac/AccessibilityObjectWrapper.mm: 130117 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 130118 130119 2010-05-28 David Hyatt <hyatt (a] apple.com> 130120 130121 Reviewed by Beth Dakin. 130122 130123 https://bugs.webkit.org/show_bug.cgi?id=15550, complete implementation of column-span. Add support for nested column 130124 spans. When a column span is nested inside multiple enclosing blocks, the blocks have to be split around the column-span. 130125 We do this using block element continuations, the same kind of solution we employed for blocks inside inlines. 130126 130127 The code for block continuations is very similar to the code for inline continuations. It may be possible to refactor the 130128 code into RenderBoxModelObject so that more of it can be shared, but this first pass avoids that so as not to risk 130129 causing any regressions in core rendering. 130130 130131 Note also that - just as with inline continuations - you can't unsplit block continuations yet. There is no technical limitation 130132 here... the functions just need to be written to handle it. 130133 130134 Added new tests in fast/multicol/span. 130135 130136 * rendering/RenderBlock.cpp: 130137 (WebCore::RenderBlock::styleDidChange): 130138 (WebCore::RenderBlock::continuationBefore): 130139 (WebCore::RenderBlock::addChildToContinuation): 130140 (WebCore::RenderBlock::containingColumnsBlock): 130141 (WebCore::RenderBlock::clone): 130142 (WebCore::RenderBlock::splitBlocks): 130143 (WebCore::RenderBlock::splitFlow): 130144 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): 130145 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): 130146 (WebCore::RenderBlock::columnsBlockForSpanningElement): 130147 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): 130148 (WebCore::RenderBlock::addChild): 130149 (WebCore::RenderBlock::addChildIgnoringContinuation): 130150 (WebCore::RenderBlock::blockElementContinuation): 130151 (WebCore::RenderBlock::layoutColumns): 130152 * rendering/RenderBlock.h: 130153 130154 2010-06-01 Alexey Proskuryakov <ap (a] apple.com> 130155 130156 Build fix. 130157 130158 Hopefully, touching WebCore.base.exp will actually rebuild the export file. 130159 130160 * WebCore.Geolocation.exp: 130161 * WebCore.base.exp: 130162 130163 2010-06-01 Dumitru Daniliuc <dumi (a] chromium.org> 130164 130165 Reviewed by Adam Barth. 130166 130167 Execute void callbacks in the context they were created in. 130168 https://bugs.webkit.org/show_bug.cgi?id=39145 130169 130170 * bindings/v8/custom/V8CustomVoidCallback.cpp: 130171 (WebCore::V8CustomVoidCallback::V8CustomVoidCallback): 130172 (WebCore::V8CustomVoidCallback::handleEvent): 130173 * bindings/v8/custom/V8CustomVoidCallback.h: 130174 130175 2010-06-01 Alexey Proskuryakov <ap (a] apple.com> 130176 130177 Reviewed by Sam Weinig. 130178 130179 https://bugs.webkit.org/show_bug.cgi?id=39434 130180 REGRESSION (r59811): Geolocation callbacks cannot be created 130181 130182 * DerivedSources.make: Don't append both WebCore.Geolocation.exp and WebCore.ClientBasedGeolocation.exp, 130183 they are mutually exclusive. 130184 130185 * WebCore.Geolocation.exp: Touched to force .exp file rebuild. 130186 130187 * WebCore.xcodeproj/project.pbxproj: Removed GeolocationService related files. 130188 130189 * bindings/js/JSGeolocationCustom.cpp: 130190 (WebCore::createPositionCallback): Functions defined in JavaScript code no longer inherit 130191 from InternalFunction, they inherit from JSFunction. This check is still imperfect, because 130192 it's not clear what definition of "function" should really be used, if any - other bindings 130193 code never checks callback type. 130194 (WebCore::createPositionErrorCallback): Ditto. 130195 130196 * page/Geolocation.h: Don't include GeolocationService.h unless it's going to be used. 130197 130198 2010-06-01 Jeremy Orlow <jorlow (a] chromium.org> 130199 130200 Reviewed by Darin Fisher. 130201 130202 IndexedDB cleanup 130203 https://bugs.webkit.org/show_bug.cgi?id=40007 130204 130205 Remove the exception code parameter since this function can no longer 130206 cause an exception. 130207 130208 * storage/IDBObjectStoreRequest.idl: 130209 * storage/IndexedDatabase.h: 130210 * storage/IndexedDatabaseImpl.cpp: 130211 (WebCore::IndexedDatabaseImpl::open): 130212 * storage/IndexedDatabaseImpl.h: 130213 * storage/IndexedDatabaseRequest.cpp: 130214 (WebCore::IndexedDatabaseRequest::open): 130215 * storage/IndexedDatabaseRequest.h: 130216 * storage/IndexedDatabaseRequest.idl: 130217 130218 2010-06-01 Martin Robinson <mrobinson (a] igalia.com> 130219 130220 Reviewed by Xan Lopez. 130221 130222 [GTK] Double clicks cause three button press events 130223 https://bugs.webkit.org/show_bug.cgi?id=38853 130224 130225 Add GOwnPtr wrapper for GdkEvent and expose a setter for 130226 PlatformMouseEvent::m_clickCount. 130227 130228 * GNUmakefile.am: Add GOwnPtrGtk.{cpp,h} to the sources list. 130229 * platform/PlatformMouseEvent.h: 130230 (WebCore::PlatformMouseEvent::setClickCount): Added. 130231 * platform/gtk/GOwnPtrGtk.cpp: Added. 130232 (WTF::GdkEvent): 130233 * platform/gtk/GOwnPtrGtk.h: Added. 130234 130235 2010-06-01 Adam Langley <agl (a] chromium.org> 130236 130237 Reviewed by Eric Seidel. 130238 130239 [chromium] respect the user's embedded bitmap settings on Linux. 130240 130241 We plumbed everything through Skia and Chrome, but forgot to connect 130242 the two wires inside WebCore. 130243 130244 (Note: no layout test because test_shell forces this option off. Also, 130245 the test font which triggers this behaviour is 32MB.) 130246 130247 https://bugs.webkit.org/show_bug.cgi?id=39894 130248 http://code.google.com/p/chromium/issues/detail?id=21149 130249 130250 * platform/graphics/chromium/FontPlatformDataLinux.cpp: 130251 (WebCore::FontPlatformData::setupPaint): 130252 130253 2010-06-01 Simon Hausmann <simon.hausmann (a] nokia.com> 130254 130255 Reviewed by Laszlo Gombos. 130256 130257 [Qt] Fix installation of the QtWebKit module .pri file when building inside of Qt 130258 130259 * WebCore.pro: 130260 130261 2010-06-01 Jocelyn Turcotte <jocelyn.turcotte (a] nokia.com> 130262 130263 Reviewed by Simon Hausmann. 130264 130265 [Qt] Fix a QtWebKit.pc corruption problem. 130266 https://bugs.webkit.org/show_bug.cgi?id=36826 130267 130268 The problem occurs while installing QtWebKit from trunk 130269 or a source package. 130270 130271 * WebCore.pro: 130272 130273 2010-06-01 Simon Hausmann <simon.hausmann (a] nokia.com> 130274 130275 Reviewed by Laszlo Gombos. 130276 130277 [Qt] Fix Symbian package dependencies of apps against QtWebKit when installing into Qt 130278 130279 Install the versioning qt_webkit_version.pri into $$[QMAKE_MKSPECS]/modules, which is 130280 where mkspecs/features/qt.prf expects it. 130281 130282 * WebCore.pro: 130283 130284 2010-06-01 Sheriff Bot <webkit.review.bot (a] gmail.com> 130285 130286 Unreviewed, rolling out r60470. 130287 http://trac.webkit.org/changeset/60470 130288 https://bugs.webkit.org/show_bug.cgi?id=39990 130289 130290 Need to rollout until bot can be updated (Requested by jorlow 130291 on #webkit). 130292 130293 * bindings/scripts/CodeGeneratorV8.pm: 130294 * bindings/v8/ScriptController.cpp: 130295 (WebCore::ScriptController::namedItemAdded): 130296 (WebCore::ScriptController::namedItemRemoved): 130297 * bindings/v8/V8DOMWindowShell.cpp: 130298 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 130299 * bindings/v8/V8DOMWindowShell.h: 130300 * bindings/v8/V8DOMWrapper.cpp: 130301 (WebCore::V8DOMWrapper::instantiateV8Object): 130302 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 130303 (WebCore::V8HTMLDocument::namedPropertyDeleter): 130304 (WebCore::V8HTMLDocument::namedPropertyGetter): 130305 (WebCore::V8HTMLDocument::indexedPropertyGetter): 130306 (WebCore::V8HTMLDocument::allAccessorSetter): 130307 (WebCore::toV8): 130308 130309 2010-06-01 Anton Muhin <antonm (a] chromium.org> 130310 130311 Reviewed by Nate Chapin. 130312 130313 [Chromium] get rid of named interceptor on HTMLDocument and introduce/remove accessors when named items get deleted/removed 130314 https://bugs.webkit.org/show_bug.cgi?id=39877 130315 130316 This patch makes callbacks invoked on named items addition/removal 130317 install API accessors and thus there is no more need in 130318 named and indexed interceptors on HTMLDocument which 130319 speeds up invocation of methods on document. 130320 130321 * bindings/scripts/CodeGeneratorV8.pm: 130322 * bindings/v8/ScriptController.cpp: 130323 (WebCore::ScriptController::namedItemAdded): 130324 (WebCore::ScriptController::namedItemRemoved): 130325 * bindings/v8/V8DOMWindowShell.cpp: 130326 (WebCore::checkDocumentWrapper): 130327 (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): 130328 (WebCore::getter): 130329 (WebCore::V8DOMWindowShell::namedItemAdded): 130330 (WebCore::V8DOMWindowShell::namedItemRemoved): 130331 * bindings/v8/V8DOMWindowShell.h: 130332 * bindings/v8/V8DOMWrapper.cpp: 130333 (WebCore::V8DOMWrapper::instantiateV8Object): 130334 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: 130335 (WebCore::V8HTMLDocument::WrapInShadowObject): 130336 (WebCore::V8HTMLDocument::GetNamedProperty): 130337 (WebCore::V8HTMLDocument::allAccessorSetter): 130338 (WebCore::toV8): 130339 130340 2010-06-01 Zoltan Herczeg <zherczeg (a] webkit.org> 130341 130342 Reviewed by Dirk Schulze. 130343 130344 Make the spot light anti-alias effect look similar to SVG expected values. 130345 https://bugs.webkit.org/show_bug.cgi?id=39477 130346 130347 The W3 standard only mention, that the edge of the spotlight should be 130348 anti-aliased but it does not specify how. The provided expected values 130349 gives some hint about their intentions. The algorithm uses a fixed 130350 range, which computed as follows: let a = cos(spot light cutoff range) 130351 the light fades off in the [a-0.016, a] range. 130352 130353 Test: svg/W3C-SVG-1.1/filters-light-04-f.svg 130354 Updated pixel test: svg/W3C-SVG-1.1/filters-light-01-f.svg 130355 130356 * svg/graphics/filters/SVGLightSource.cpp: 130357 (WebCore::SpotLightSource::initPaintingData): 130358 130359 2010-05-31 Adam Barth <abarth (a] webkit.org> 130360 130361 Reviewed by Eric Seidel. 130362 130363 Fix default action for EndTagOpenState 130364 https://bugs.webkit.org/show_bug.cgi?id=39982 130365 130366 Add a test for a bogus end tag to webkit01.dat and update expected 130367 results now that we pass some more tests. 130368 130369 Adding this test revealed a bug in resuming the bogus comment state. 130370 I've left these broken expectations, but I'll fix the bug in a future 130371 patch. (The bug existed prior to this patch, just not the test.) 130372 130373 * html5lib/resources/webkit01.dat: 130374 * html5lib/runner-expected-html5.txt: 130375 * html5lib/webkit-resumer-expected-html5.txt: 130376 130377 2010-05-31 Lyon Chen <liachen (a] rim.com> 130378 130379 Reviewed by Kent Tamura. 130380 130381 Enum value FORWARD, BACKWARD, RIGHT, LEFT are causing macro conflicts. 130382 https://bugs.webkit.org/show_bug.cgi?id=35530 130383 130384 Change enum EAlteration from { MOVE, EXTEND } to { AlterationMove, AlterationExtend } and enum EDirection { FORWARD, BACKWARD, RIGHT, LEFT} to { DirectionForward, DirectionBackward, DirectionRight, DirectionLeft } to avoid macro conflict, and also better coding style conformance. 130385 130386 * accessibility/AccessibilityRenderObject.cpp: 130387 (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): 130388 (WebCore::AccessibilityRenderObject::doAXRangeForLine): 130389 * editing/Editor.cpp: 130390 (WebCore::Editor::deleteWithDirection): 130391 (WebCore::Editor::markMisspellingsAfterTypingToPosition): 130392 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 130393 * editing/EditorCommand.cpp: 130394 (WebCore::executeDeleteBackward): 130395 (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): 130396 (WebCore::executeDeleteForward): 130397 (WebCore::executeDeleteToBeginningOfLine): 130398 (WebCore::executeDeleteToBeginningOfParagraph): 130399 (WebCore::executeDeleteToEndOfLine): 130400 (WebCore::executeDeleteToEndOfParagraph): 130401 (WebCore::executeDeleteWordBackward): 130402 (WebCore::executeDeleteWordForward): 130403 (WebCore::executeForwardDelete): 130404 (WebCore::executeMoveBackward): 130405 (WebCore::executeMoveBackwardAndModifySelection): 130406 (WebCore::executeMoveDown): 130407 (WebCore::executeMoveDownAndModifySelection): 130408 (WebCore::executeMoveForward): 130409 (WebCore::executeMoveForwardAndModifySelection): 130410 (WebCore::executeMoveLeft): 130411 (WebCore::executeMoveLeftAndModifySelection): 130412 (WebCore::executeMovePageDown): 130413 (WebCore::executeMovePageDownAndModifySelection): 130414 (WebCore::executeMovePageUp): 130415 (WebCore::executeMovePageUpAndModifySelection): 130416 (WebCore::executeMoveRight): 130417 (WebCore::executeMoveRightAndModifySelection): 130418 (WebCore::executeMoveToBeginningOfDocument): 130419 (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): 130420 (WebCore::executeMoveToBeginningOfLine): 130421 (WebCore::executeMoveToBeginningOfLineAndModifySelection): 130422 (WebCore::executeMoveToBeginningOfParagraph): 130423 (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): 130424 (WebCore::executeMoveToBeginningOfSentence): 130425 (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): 130426 (WebCore::executeMoveToEndOfDocument): 130427 (WebCore::executeMoveToEndOfDocumentAndModifySelection): 130428 (WebCore::executeMoveToEndOfSentence): 130429 (WebCore::executeMoveToEndOfSentenceAndModifySelection): 130430 (WebCore::executeMoveToEndOfLine): 130431 (WebCore::executeMoveToEndOfLineAndModifySelection): 130432 (WebCore::executeMoveToEndOfParagraph): 130433 (WebCore::executeMoveToEndOfParagraphAndModifySelection): 130434 (WebCore::executeMoveParagraphBackwardAndModifySelection): 130435 (WebCore::executeMoveParagraphForwardAndModifySelection): 130436 (WebCore::executeMoveUp): 130437 (WebCore::executeMoveUpAndModifySelection): 130438 (WebCore::executeMoveWordBackward): 130439 (WebCore::executeMoveWordBackwardAndModifySelection): 130440 (WebCore::executeMoveWordForward): 130441 (WebCore::executeMoveWordForwardAndModifySelection): 130442 (WebCore::executeMoveWordLeft): 130443 (WebCore::executeMoveWordLeftAndModifySelection): 130444 (WebCore::executeMoveWordRight): 130445 (WebCore::executeMoveWordRightAndModifySelection): 130446 (WebCore::executeMoveToLeftEndOfLine): 130447 (WebCore::executeMoveToLeftEndOfLineAndModifySelection): 130448 (WebCore::executeMoveToRightEndOfLine): 130449 (WebCore::executeMoveToRightEndOfLineAndModifySelection): 130450 * editing/SelectionController.cpp: 130451 (WebCore::SelectionController::willBeModified): 130452 (WebCore::SelectionController::modify): 130453 * editing/SelectionController.h: 130454 (WebCore::SelectionController::): 130455 * editing/TypingCommand.cpp: 130456 (WebCore::TypingCommand::deleteKeyPressed): 130457 (WebCore::TypingCommand::forwardDeleteKeyPressed): 130458 * page/DOMSelection.cpp: 130459 (WebCore::DOMSelection::modify): 130460 (WebCore::DOMSelection::deleteFromDocument): 130461 * page/EventHandler.cpp: 130462 (WebCore::EventHandler::handleKeyboardSelectionMovement): 130463 130464 2010-05-31 Eric Seidel <eric (a] webkit.org> 130465 130466 Reviewed by Adam Barth. 130467 130468 REGRESSION(60409): window.onload never fires when using HTML5 parser 130469 https://bugs.webkit.org/show_bug.cgi?id=39981 130470 130471 * html/HTML5Tokenizer.cpp: 130472 (WebCore::HTML5Tokenizer::finish): 130473 - The logic was just wrong here. We should only be setting 130474 m_wasWaitingOnScriptsDuringFinish if isWaitingForScripts() 130475 is true, and we should be calling end() when it is not. 130476 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution): 130477 - Add another ASSERT to catch cases like this. 130478 * html/HTML5TreeBuilder.cpp: 130479 (WebCore::HTML5TreeBuilder::finished): 130480 - Add a comment about why we don't need to call m_document->finishedParsing() 130481 130482 2010-05-31 Tony Chang <tony (a] chromium.org> 130483 130484 Reviewed by Dan Bernstein. 130485 130486 REGRESSION (r58665): Infinite recursion in Position::getInlineBoxAndOffset() 130487 https://bugs.webkit.org/show_bug.cgi?id=39946 130488 130489 r58665 added an infinite recursion check, but didn't take into consideration recursion between two 130490 Positions. This adds a check for when 130491 downstreamIgnoringEditingBoundaries(p1) == p2 and upstreamIgnoringEditingBoundaries(p2) == p1 130492 130493 Test: editing/selection/mixed-editability-12.html 130494 130495 * dom/Position.cpp: 130496 (WebCore::Position::getInlineBoxAndOffset): 130497 130498 2010-05-31 Leo Yang <leo.yang (a] torchmobile.com.cn> 130499 130500 Reviewed by George Staikos. 130501 130502 Fix canvas.toDataURL(type, quality, ...) to let it support quality parameter. 130503 And implement it in Qt port. 130504 https://bugs.webkit.org/show_bug.cgi?id=37304 130505 130506 Tests: platform/qt/fast/canvas/toDataURL-jpeg-alpha.html 130507 platform/qt/fast/canvas/toDataURL-jpeg-primarycolors.html 130508 platform/qt/fast/canvas/toDataURL-jpeg-quality-basic.html 130509 platform/qt/fast/canvas/toDataURL-jpeg-quality-notnumber.html 130510 platform/qt/fast/canvas/toDataURL-jpeg-quality-outsiderange.html 130511 130512 * bindings/js/JSHTMLCanvasElementCustom.cpp: 130513 (WebCore::JSHTMLCanvasElement::toDataURL): 130514 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: 130515 (WebCore::V8HTMLCanvasElement::toDataURLCallback): 130516 * dom/CanvasSurface.cpp: 130517 (WebCore::CanvasSurface::toDataURL): 130518 * dom/CanvasSurface.h: 130519 (WebCore::CanvasSurface::toDataURL): 130520 * html/HTMLCanvasElement.idl: 130521 * platform/graphics/ImageBuffer.h: 130522 * platform/graphics/cairo/ImageBufferCairo.cpp: 130523 (WebCore::ImageBuffer::toDataURL): 130524 * platform/graphics/cg/ImageBufferCG.cpp: 130525 (WebCore::ImageBuffer::toDataURL): 130526 * platform/graphics/haiku/ImageBufferHaiku.cpp: 130527 (WebCore::ImageBuffer::toDataURL): 130528 * platform/graphics/qt/ImageBufferQt.cpp: 130529 (WebCore::ImageBuffer::toDataURL): 130530 * platform/graphics/skia/ImageBufferSkia.cpp: 130531 (WebCore::ImageBuffer::toDataURL): 130532 * platform/graphics/wince/ImageBufferWince.cpp: 130533 (WebCore::ImageBuffer::toDataURL): 130534 * platform/graphics/wx/ImageBufferWx.cpp: 130535 (WebCore::ImageBuffer::toDataURL): 130536 130537 2010-05-31 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 130538 130539 Reviewed by Kenneth Rohde Christiansen. 130540 130541 [EFL] Add Context Menu implementation 130542 https://bugs.webkit.org/show_bug.cgi?id=39821 130543 130544 * platform/ContextMenu.h: add port-specific attributes. 130545 * platform/ContextMenuItem.h: create PlatformMenuItemDescription as in 130546 other ports 130547 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription): 130548 * platform/efl/ContextMenuEfl.cpp:implement needed methods for this 130549 port. 130550 (WebCore::ContextMenu::ContextMenu): 130551 (WebCore::ContextMenu::~ContextMenu): 130552 (WebCore::ContextMenu::appendItem): 130553 (WebCore::ContextMenu::setPlatformDescription): 130554 (WebCore::ContextMenu::releasePlatformDescription): 130555 * platform/efl/ContextMenuItemEfl.cpp: implement needed methods for 130556 this port. 130557 (WebCore::ContextMenuItem::ContextMenuItem): 130558 (WebCore::ContextMenuItem::~ContextMenuItem): 130559 (WebCore::ContextMenuItem::releasePlatformDescription): 130560 (WebCore::ContextMenuItem::type): 130561 (WebCore::ContextMenuItem::setType): 130562 (WebCore::ContextMenuItem::action): 130563 (WebCore::ContextMenuItem::setAction): 130564 (WebCore::ContextMenuItem::title): 130565 (WebCore::ContextMenuItem::setTitle): 130566 (WebCore::ContextMenuItem::platformSubMenu): 130567 (WebCore::ContextMenuItem::setSubMenu): 130568 (WebCore::ContextMenuItem::checked): 130569 (WebCore::ContextMenuItem::setChecked): 130570 (WebCore::ContextMenuItem::enabled): 130571 (WebCore::ContextMenuItem::setEnabled): 130572 130573 2010-05-31 Ilya Tikhonovsky <loislo (a] chromium.org> 130574 130575 Reviewed by Pavel Feldman. 130576 130577 WebInspector: Classes for native serialization to JSON were implemented. 130578 https://bugs.webkit.org/show_bug.cgi?id=34204 130579 130580 * GNUmakefile.am: 130581 * WebCore.Inspector.exp: 130582 * WebCore.gypi: 130583 * WebCore.pro: 130584 * WebCore.vcproj/WebCore.vcproj: 130585 * WebCore.xcodeproj/project.pbxproj: 130586 * inspector/InspectorValues.cpp: Added. 130587 (WebCore::escapeChar): 130588 (WebCore::doubleQuoteString): 130589 (WebCore::InspectorBaseValue::toJSONString): 130590 (WebCore::InspectorBaseValue::writeJSON): 130591 (WebCore::InspectorValue::writeJSON): 130592 (WebCore::InspectorString::writeJSON): 130593 (WebCore::InspectorObject::writeJSON): 130594 (WebCore::InspectorArray::writeJSON): 130595 * inspector/InspectorValues.h: Added. 130596 (WebCore::InspectorBaseValue::InspectorBaseValue): 130597 (WebCore::InspectorBaseValue::~InspectorBaseValue): 130598 (WebCore::InspectorBaseValue::null): 130599 (WebCore::InspectorBaseValue::): 130600 (WebCore::InspectorBaseValue::type): 130601 (WebCore::InspectorValue::create): 130602 (WebCore::InspectorValue::InspectorValue): 130603 (WebCore::InspectorValue::): 130604 (WebCore::InspectorString::create): 130605 (WebCore::InspectorString::InspectorString): 130606 (WebCore::InspectorObject::create): 130607 (WebCore::InspectorObject::~InspectorObject): 130608 (WebCore::InspectorObject::InspectorObject): 130609 (WebCore::InspectorArray::create): 130610 (WebCore::InspectorArray::~InspectorArray): 130611 (WebCore::InspectorArray::length): 130612 (WebCore::InspectorArray::InspectorArray): 130613 (WebCore::InspectorObject::setBool): 130614 (WebCore::InspectorObject::setNumber): 130615 (WebCore::InspectorObject::setString): 130616 (WebCore::InspectorObject::set): 130617 (WebCore::InspectorArray::pushBool): 130618 (WebCore::InspectorArray::pushNumber): 130619 (WebCore::InspectorArray::pushString): 130620 (WebCore::InspectorArray::push): 130621 130622 2010-05-31 Olivier Goffart <olivier.goffart (a] nokia.com> 130623 130624 Reviewed by Oliver Hunt. 130625 130626 [PATCH] compilation error with clang in JSDOMBinding.h 130627 https://bugs.webkit.org/show_bug.cgi?id=39945 130628 130629 JSNode is only forward declared at this point. And since neither 130630 "wrapper" nor JSValue are type-dependent. Compilers should report errors 130631 at the first compilation pass. 130632 130633 The fix is to move the conversion the line above, as the call to the 130634 function getCachedDOMNodeWrapper is type-dependent, the conversion will 130635 happen at template-instantiation time. 130636 130637 See also http://llvm.org/bugs/show_bug.cgi?id=7244 130638 130639 * bindings/js/JSDOMBinding.h: 130640 (WebCore::getDOMNodeWrapper): 130641 130642 2010-05-31 Pavel Podivilov <podivilov (a] chromium.org> 130643 130644 Reviewed by Pavel Feldman. 130645 130646 Web Inspector: Moved breakpoints add/remove logic to the BreakpointManager. 130647 130648 https://bugs.webkit.org/show_bug.cgi?id=14190 130649 130650 * WebCore.gypi: 130651 * WebCore.vcproj/WebCore.vcproj: 130652 * inspector/front-end/Breakpoint.js: 130653 * inspector/front-end/BreakpointManager.js: Added. 130654 (WebInspector.BreakpointManager): 130655 (WebInspector.BreakpointManager.prototype.addBreakpoint): 130656 (WebInspector.BreakpointManager.prototype.removeBreakpoint): 130657 (WebInspector.BreakpointManager.prototype.breakpointsForSourceID): 130658 (WebInspector.BreakpointManager.prototype.breakpointsForURL): 130659 (WebInspector.BreakpointManager.prototype.reset): 130660 (WebInspector.BreakpointManager.prototype._saveBreakpointOnBackend): 130661 (WebInspector.BreakpointManager.prototype._removeBreakpointFromBackend): 130662 (WebInspector.Breakpoint): 130663 (WebInspector.Breakpoint.prototype.get enabled): 130664 (WebInspector.Breakpoint.prototype.set enabled): 130665 (WebInspector.Breakpoint.prototype.get sourceText): 130666 (WebInspector.Breakpoint.prototype.set sourceText): 130667 (WebInspector.Breakpoint.prototype.get label): 130668 (WebInspector.Breakpoint.prototype.get id): 130669 (WebInspector.Breakpoint.prototype.get condition): 130670 (WebInspector.Breakpoint.prototype.set condition): 130671 * inspector/front-end/BreakpointsSidebarPane.js: 130672 (WebInspector.BreakpointsSidebarPane): 130673 (WebInspector.BreakpointsSidebarPane.prototype.reset): 130674 (WebInspector.BreakpointsSidebarPane.prototype._breakpointAdded): 130675 (WebInspector.BreakpointsSidebarPane.prototype._breakpointRemoved): 130676 (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged): 130677 * inspector/front-end/Object.js: 130678 (WebInspector.Object.prototype.dispatchEventToListeners): 130679 * inspector/front-end/ScriptView.js: 130680 (WebInspector.ScriptView.prototype._addBreakpoint): 130681 * inspector/front-end/ScriptsPanel.js: 130682 (WebInspector.ScriptsPanel): 130683 (WebInspector.ScriptsPanel.prototype._breakpointAdded): 130684 (WebInspector.ScriptsPanel.prototype._breakpointRemoved): 130685 (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback): 130686 (WebInspector.ScriptsPanel.prototype.editScriptSource): 130687 (WebInspector.ScriptsPanel.prototype._showScriptOrResource): 130688 * inspector/front-end/SourceFrame.js: 130689 (WebInspector.SourceFrame.prototype._contextMenu): 130690 * inspector/front-end/SourceView.js: 130691 (WebInspector.SourceView.prototype._addBreakpoint): 130692 (WebInspector.SourceView.prototype._removeBreakpoint): 130693 * inspector/front-end/WebKit.qrc: 130694 * inspector/front-end/inspector.html: 130695 * inspector/front-end/inspector.js: 130696 (WebInspector.loaded): 130697 (WebInspector.restoredBreakpoint): 130698 (WebInspector.reset): 130699 130700 2010-05-31 Alexander Pavlov <apavlov (a] chromium.org> 130701 130702 Unreviewed, build fix. 130703 130704 Add references to inspector/front-end/TabbedPane.js wherever applicable. 130705 130706 * WebCore.gypi: 130707 * WebCore.vcproj/WebCore.vcproj: 130708 * inspector/front-end/WebKit.qrc: 130709 130710 2010-05-31 Alexander Pavlov <apavlov (a] chromium.org> 130711 130712 Unreviewed, add a file not added in r60445. 130713 130714 * inspector/front-end/TabbedPane.js: Added 130715 130716 2010-05-31 Martin Robinson <mrobinson (a] igalia.com> 130717 130718 Reviewed by Gustavo Noronha Silva. 130719 130720 [GTK] Text copied from a WebView cannot be pasted into gnome-terminal 130721 https://bugs.webkit.org/show_bug.cgi?id=39827 130722 130723 Switch all methods in Pasteboard to use the PasteboardHelper + DataObjectGtk 130724 approach used in other parts of WebKit GTK+. 130725 130726 * platform/gtk/PasteboardGtk.cpp: 130727 (WebCore::Pasteboard::writeSelection): Switch to using PasteboardHelper. 130728 (WebCore::Pasteboard::writePlainText): Ditto. 130729 (WebCore::Pasteboard::writeURL): Ditto. 130730 (WebCore::Pasteboard::writeImage): Ditto. 130731 (WebCore::Pasteboard::clear): Small cleanup. 130732 (WebCore::Pasteboard::documentFragment): Switch to using PasteboardHelper. 130733 (WebCore::Pasteboard::plainText): Ditto. 130734 130735 2010-05-31 Darin Adler <darin (a] apple.com> 130736 130737 Updated bindings test results for change in JavaScript host calling convention change 130738 from 2 days ago. 130739 130740 * bindings/scripts/test/JS/JSTestObj.cpp: Regenerated and inspected to see that the new 130741 result is correct. 130742 * bindings/scripts/test/JS/JSTestObj.h: Ditto. 130743 130744 2010-05-31 Alexander Pavlov <apavlov (a] chromium.org> 130745 130746 Reviewed by Pavel Feldman. 130747 130748 Web Inspector: Implement additional tabs support in ResourceView 130749 https://bugs.webkit.org/show_bug.cgi?id=39822 130750 130751 * inspector/front-end/ResourceView.js: 130752 (WebInspector.ResourceView): 130753 (WebInspector.ResourceView.prototype._selectHeadersTab): 130754 (WebInspector.ResourceView.prototype._innerSelectContentTab): 130755 * inspector/front-end/SourceView.js: 130756 (WebInspector.SourceView.prototype.show): 130757 (WebInspector.SourceView.prototype.hide): 130758 (WebInspector.SourceView.prototype.resize): 130759 (WebInspector.SourceView.prototype.updateLocalContent): 130760 (WebInspector.SourceView.prototype.selectLocalContentTab): 130761 * inspector/front-end/TabbedPane.js: Added. 130762 (WebInspector.TabbedPane): 130763 (WebInspector.TabbedPane.prototype.appendTab): 130764 (WebInspector.TabbedPane.prototype.tabObjectForId): 130765 (WebInspector.TabbedPane.prototype.hideTab): 130766 (WebInspector.TabbedPane.prototype.selectTabById): 130767 * inspector/front-end/TextViewer.js: 130768 (WebInspector.TextViewer.prototype._getSelection): 130769 * inspector/front-end/inspector.html: 130770 130771 2010-05-31 Alexander Pavlov <apavlov (a] chromium.org> 130772 130773 Reviewed by Pavel Feldman. 130774 130775 Web Inspector: Implement retrieval of CSS stylesheets for source editing 130776 https://bugs.webkit.org/show_bug.cgi?id=39833 130777 130778 Test: inspector/styles-source-offsets.html 130779 130780 * css/CSSParser.cpp: 130781 (WebCore::CSSParser::CSSParser): 130782 (WebCore::CSSParser::parseSheet): 130783 (WebCore::CSSParser::createStyleRule): 130784 * css/CSSParser.h: 130785 * inspector/InspectorBackend.cpp: 130786 (WebCore::InspectorBackend::getStyleSheet): 130787 (WebCore::InspectorBackend::getRuleRangesForStyleSheetId): 130788 * inspector/InspectorBackend.h: 130789 * inspector/InspectorBackend.idl: 130790 * inspector/InspectorCSSStore.cpp: 130791 (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet): 130792 (WebCore::InspectorCSSStore::asCSSStyleRule): 130793 (WebCore::InspectorCSSStore::styleSheetForId): 130794 * inspector/InspectorCSSStore.h: 130795 * inspector/InspectorDOMAgent.cpp: 130796 (WebCore::InspectorDOMAgent::getStyleSheet): 130797 (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId): 130798 (WebCore::InspectorDOMAgent::buildObjectForStyle): 130799 (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): 130800 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 130801 (WebCore::InspectorDOMAgent::buildObjectForRule): 130802 (WebCore::InspectorDOMAgent::getParentStyleSheet): 130803 * inspector/InspectorDOMAgent.h: 130804 * inspector/InspectorFrontend.cpp: 130805 (WebCore::InspectorFrontend::didGetStyleSheet): 130806 * inspector/InspectorFrontend.h: 130807 * inspector/front-end/DOMAgent.js: 130808 (WebInspector.CSSStyleDeclaration): 130809 130810 2010-05-31 Philippe Normand <pnormand (a] igalia.com> 130811 130812 Reviewed by Xan Lopez. 130813 130814 [GStreamer] float variables misused 130815 https://bugs.webkit.org/show_bug.cgi?id=38842 130816 130817 Use 0.0f for float variables instead of 0.0. Also added some 130818 missing casts around GST_SECOND. 130819 130820 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: 130821 (WebCore::playbackPosition): 130822 (WebCore::MediaPlayerPrivateGStreamer::duration): 130823 (WebCore::MediaPlayerPrivateGStreamer::currentTime): 130824 (WebCore::MediaPlayerPrivateGStreamer::seek): 130825 (WebCore::MediaPlayerPrivateGStreamer::naturalSize): 130826 (WebCore::MediaPlayerPrivateGStreamer::setRate): 130827 (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable): 130828 (WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded): 130829 (WebCore::MediaPlayerPrivateGStreamer::totalBytes): 130830 130831 2010-05-31 Steve Block <steveblock (a] google.com> 130832 130833 Unreviewed, rolling out r60069. 130834 http://trac.webkit.org/changeset/60069 130835 https://bugs.webkit.org/show_bug.cgi?id=39288 130836 130837 Roll out r60069 while the need for Geolocation::stop() is 130838 investigated. 130839 130840 * loader/FrameLoader.cpp: 130841 (WebCore::FrameLoader::stopLoading): 130842 * page/Geolocation.cpp: 130843 (WebCore::Geolocation::disconnectFrame): 130844 * page/Geolocation.h: 130845 130846 2010-05-31 Olivier Tilloy <olivier (a] tilloy.net> 130847 130848 Reviewed by Gustavo Noronha Silva. 130849 130850 [Gtk] Implement RenderThemeGtk::systemColor to apply the correct colors 130851 from the current GTK theme. 130852 https://bugs.webkit.org/show_bug.cgi?id=37779 130853 130854 * platform/gtk/RenderThemeGtk.cpp: 130855 (WebCore::RenderThemeGtk::RenderThemeGtk): 130856 (WebCore::RenderThemeGtk::systemColor): 130857 (WebCore::RenderThemeGtk::gtkButton): 130858 * platform/gtk/RenderThemeGtk.h: 130859 130860 2010-05-31 Dirk Schulze <krit (a] webkit.org> 130861 130862 Reviewed by Nikolas Zimmermann. 130863 130864 SVG Filter: Crash if parent and child elements use the same filter 130865 https://bugs.webkit.org/show_bug.cgi?id=39536 130866 130867 If a parent and a child used the same filter, the temporary saved 130868 context reference got overwritten by the child. The reference is 130869 stored in FilterData now. FilterData depends to the target object 130870 and avoids overwriting any reference. 130871 130872 Test: svg/filters/parent-children-with-same-filter.svg 130873 130874 * rendering/RenderSVGResourceFilter.cpp: 130875 (WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter): 130876 (WebCore::RenderSVGResourceFilter::applyResource): 130877 (WebCore::RenderSVGResourceFilter::postApplyResource): 130878 * rendering/RenderSVGResourceFilter.h: 130879 130880 2010-05-31 Xan Lopez <xlopez (a] igalia.com> 130881 130882 Reviewed by Gustavo Noronha. 130883 130884 Fix all compiler warnings. 130885 130886 * plugins/gtk/gtk2xtbin.c: 130887 (xt_event_dispatch): 130888 (gtk_xtbin_get_type): 130889 (gtk_xtbin_set_position): 130890 (xt_add_focus_listener): 130891 (xt_remove_focus_listener): 130892 130893 2010-05-31 Oswald Buddenhagen <oswald.buddenhagen (a] nokia.com> 130894 130895 Reviewed by Simon Hausmann. 130896 130897 [Qt] Escape backslashes in the .pro files 130898 130899 qmake in Qt 4.7 warns about unescaped backspaces and deprecates them. 130900 130901 * WebCore.pro: 130902 130903 2010-05-31 Anton Muhin <antonm (a] chromium.org> 130904 130905 Reviewed by Darin Adler. 130906 130907 Make NodeList getters take AtomicString instead of plain String 130908 https://bugs.webkit.org/show_bug.cgi?id=39892 130909 130910 Those methods turn String into AtomicString later. And this conversion 130911 is faster if underlying string is already atomic. 130912 That buys small (~2-3%) speed up for Chromium on Dromaeo DOM Core. 130913 I don't know if Safari benefits from it. 130914 130915 * dom/Node.cpp: 130916 (WebCore::Node::getElementsByTagName): 130917 (WebCore::Node::getElementsByTagNameNS): 130918 * dom/Node.h: 130919 130920 2010-05-30 Adam Barth <abarth (a] webkit.org> 130921 130922 Reviewed by Darin Adler. 130923 130924 Fix LayoutTests/fast/parser/xml-declaration-missing-ending-mark.html in HTML5 parser 130925 https://bugs.webkit.org/show_bug.cgi?id=39939 130926 130927 Turns out we need to implement the bogus comment state. :) 130928 130929 * html/HTML5Lexer.cpp: 130930 (WebCore::HTML5Lexer::nextToken): 130931 130932 2010-05-30 Eric Seidel <eric (a] webkit.org> 130933 130934 Reviewed by Adam Barth. 130935 130936 fast/tokenizer/write-partial-entity.html hits ASSERT SegmentedString in the HTML5 Parser 130937 https://bugs.webkit.org/show_bug.cgi?id=39935 130938 130939 Test: fast/tokenizer/write-partial-entity.html 130940 130941 * html/HTML5Tokenizer.cpp: 130942 (WebCore::HTML5Tokenizer::executeScript): 130943 - Use m_source.append(oldInsertionPoint) instead of 130944 oldInsertionPoint.prepend(m_source) because m_source may have had 130945 characters pushed onto it and prepend() does not handle that case. 130946 130947 2010-05-30 Lyon Chen <liachen (a] rim.com> 130948 130949 Reviewed by Kent Tamura. 130950 130951 This is a coding style cleanup before fixing to bug 35530. 130952 130953 Enum value FORWARD, BACKWARD, RIGHT, LEFT are causing macro conflicts. 130954 https://bugs.webkit.org/show_bug.cgi?id=35530 130955 130956 * editing/Editor.cpp: 130957 (WebCore::Editor::deleteWithDirection): 130958 (WebCore::Editor::fontForSelection): 130959 (WebCore::Editor::applyStyle): 130960 (WebCore::Editor::applyParagraphStyle): 130961 (WebCore::Editor::applyStyleToSelection): 130962 (WebCore::Editor::applyParagraphStyleToSelection): 130963 (WebCore::triStateOfStyleInComputedStyle): 130964 (WebCore::Editor::selectionStartHasStyle): 130965 (WebCore::Editor::selectionHasStyle): 130966 (WebCore::Editor::paste): 130967 (WebCore::Editor::ignoreSpelling): 130968 (WebCore::Editor::learnSpelling): 130969 (WebCore::findFirstMisspellingInRange): 130970 (WebCore::findFirstGrammarDetailInRange): 130971 (WebCore::findFirstBadGrammarInRange): 130972 (WebCore::findFirstMisspellingOrBadGrammarInRange): 130973 (WebCore::Editor::advanceToNextMisspelling): 130974 (WebCore::Editor::isSelectionMisspelled): 130975 (WebCore::isRangeUngrammatical): 130976 (WebCore::Editor::guessesForMisspelledSelection): 130977 (WebCore::guessesForMisspelledOrUngrammaticalRange): 130978 (WebCore::Editor::markMisspellingsAfterTypingToPosition): 130979 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): 130980 * editing/EditorCommand.cpp: 130981 (WebCore::applyCommandToFrame): 130982 (WebCore::executeToggleStyleInList): 130983 (WebCore::executeApplyParagraphStyle): 130984 (WebCore::executeDelete): 130985 (WebCore::executeForwardDelete): 130986 (WebCore::executeInsertLineBreak): 130987 (WebCore::supportedCopyCut): 130988 (WebCore::supportedPaste): 130989 (WebCore::enabledDelete): 130990 * editing/SelectionController.cpp: 130991 (WebCore::SelectionController::modifyExtendingRight): 130992 (WebCore::SelectionController::modifyExtendingForward): 130993 (WebCore::SelectionController::modifyMovingRight): 130994 (WebCore::SelectionController::modifyMovingForward): 130995 (WebCore::SelectionController::modifyExtendingLeft): 130996 (WebCore::SelectionController::modifyExtendingBackward): 130997 (WebCore::SelectionController::modifyMovingLeft): 130998 (WebCore::SelectionController::modifyMovingBackward): 130999 (WebCore::SelectionController::modify): 131000 (WebCore::SelectionController::xPosForVerticalArrowNavigation): 131001 (WebCore::SelectionController::debugRenderer): 131002 * editing/TypingCommand.cpp: 131003 (WebCore::TypingCommand::deleteKeyPressed): 131004 (WebCore::TypingCommand::forwardDeleteKeyPressed): 131005 (WebCore::TypingCommand::insertLineBreak): 131006 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): 131007 (WebCore::TypingCommand::insertParagraphSeparator): 131008 (WebCore::TypingCommand::doApply): 131009 (WebCore::TypingCommand::insertText): 131010 (WebCore::TypingCommand::updatePreservesTypingStyle): 131011 * page/EventHandler.cpp: 131012 (WebCore::EventHandler::handleMousePressEvent): 131013 (WebCore::EventHandler::handleMouseReleaseEvent): 131014 (WebCore::EventHandler::selectCursor): 131015 (WebCore::EventHandler::canHandleDragAndDropForTarget): 131016 (WebCore::EventHandler::dispatchMouseEvent): 131017 (WebCore::EventHandler::sendContextMenuEvent): 131018 (WebCore::EventHandler::handleKeyboardSelectionMovement): 131019 (WebCore::EventHandler::handleDrag): 131020 131021 2010-05-30 Daniel Bates <dbates (a] rim.com> 131022 131023 Unreviewed, attempt to fix the build after http://trac.webkit.org/changeset/60418. 131024 131025 * html/HTMLFormControlElement.h: 131026 (WebCore::HTMLFormControlElement::isEnabledFormControl): 131027 (WebCore::HTMLFormControlElement::isReadOnlyFormControl): 131028 (WebCore::HTMLFormControlElement::isFormControlElement): 131029 * html/HTMLInputElement.h: 131030 (WebCore::HTMLInputElement::isPasswordField): 131031 131032 2010-05-30 Darin Adler <darin (a] apple.com> 131033 131034 Reviewed by Sam Weinig. 131035 131036 Make more HTML DOM members private, especially constructors, third and final batch 131037 https://bugs.webkit.org/show_bug.cgi?id=39916 131038 131039 * dom/Document.cpp: 131040 (WebCore::Document::implicitClose): 131041 * editing/DeleteButtonController.cpp: 131042 (WebCore::DeleteButtonController::createDeletionUI): 131043 * editing/EditorCommand.cpp: 131044 (WebCore::executeInsertHorizontalRule): 131045 (WebCore::executeInsertImage): 131046 * editing/htmlediting.cpp: 131047 (WebCore::createDefaultParagraphElement): 131048 (WebCore::createListItemElement): 131049 * html/HTMLParser.cpp: 131050 (WebCore::HTMLParser::handleError): 131051 (WebCore::HTMLParser::headCreateErrorCheck): 131052 (WebCore::HTMLParser::formCreateErrorCheck): 131053 (WebCore::HTMLParser::createHead): 131054 (WebCore::HTMLParser::handleIsindex): 131055 (WebCore::HTMLParser::finished): 131056 * html/HTMLViewSourceDocument.cpp: 131057 (WebCore::HTMLViewSourceDocument::createContainingTable): 131058 * rendering/RenderTextControl.cpp: 131059 (WebCore::RenderTextControl::createSubtreeIfNeeded): 131060 * rendering/RenderTextControlSingleLine.cpp: 131061 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded): 131062 Use create instead of new to create HTML elements. 131063 131064 * html/HTMLFormCollection.cpp: 131065 (WebCore::HTMLFormCollection::formCollectionInfo): 131066 (WebCore::HTMLFormCollection::item): 131067 (WebCore::HTMLFormCollection::getNamedFormItem): 131068 (WebCore::HTMLFormCollection::updateNameCache): 131069 * html/HTMLFormControlElement.h: 131070 Updated for name and privacy changes in HTMLFormElement. 131071 131072 * html/HTMLFormElement.cpp: 131073 (WebCore::HTMLFormElement::HTMLFormElement): 131074 (WebCore::HTMLFormElement::create): 131075 (WebCore::HTMLFormElement::~HTMLFormElement): 131076 (WebCore::HTMLFormElement::length): 131077 (WebCore::HTMLFormElement::submitImplicitly): 131078 (WebCore::HTMLFormElement::createFormData): 131079 (WebCore::HTMLFormElement::submit): 131080 (WebCore::HTMLFormElement::reset): 131081 (WebCore::HTMLFormElement::formElementIndex): 131082 (WebCore::HTMLFormElement::registerFormElement): 131083 (WebCore::HTMLFormElement::removeFormElement): 131084 (WebCore::HTMLFormElement::registerImgElement): 131085 (WebCore::HTMLFormElement::removeImgElement): 131086 (WebCore::HTMLFormElement::defaultButton): 131087 (WebCore::HTMLFormElement::collectUnhandledInvalidControls): 131088 (WebCore::HTMLFormElement::addElementAlias): 131089 (WebCore::HTMLFormElement::documentDidBecomeActive): 131090 * html/HTMLFormElement.h: 131091 Added create functions. Made constructors and other members private. 131092 Used an OwnPtr for m_elementAliases. Renamed collectionInfo to 131093 m_collectionCache and used an OwnPtr for it. Renamed formElements to 131094 m_associatedElements (since its contents are what HTML5 calls 131095 "form-associated element", not form elements). Renamed imgElements to 131096 m_imageElements. 131097 131098 * html/HTMLFrameSetElement.cpp: 131099 (WebCore::HTMLFrameSetElement::HTMLFrameSetElement): 131100 (WebCore::HTMLFrameSetElement::create): 131101 (WebCore::HTMLFrameSetElement::parseMappedAttribute): 131102 * html/HTMLFrameSetElement.h: 131103 Added create functions. Made constructors and other members private. 131104 Renamed m_rows and m_cols to m_rowLengths and m_colLengths and used 131105 OwnArrayPtr for both. 131106 131107 * html/HTMLLabelElement.cpp: 131108 (WebCore::nodeAsLabelableFormControl): Made this cast to Element instead 131109 of HTMLElement, since isFormControlElement is available on Element. 131110 (WebCore::HTMLLabelElement::HTMLLabelElement): 131111 (WebCore::HTMLLabelElement::create): 131112 * html/HTMLLabelElement.h: 131113 Added create functions. Made constructors and other members private. 131114 131115 * html/HTMLLegendElement.cpp: 131116 (WebCore::HTMLLegendElement::HTMLLegendElement): 131117 (WebCore::HTMLLegendElement::create): 131118 (WebCore::HTMLLegendElement::associatedControl): 131119 (WebCore::HTMLLegendElement::focus): 131120 (WebCore::HTMLLegendElement::accessKeyAction): 131121 * html/HTMLLegendElement.h: 131122 Added create functions. Made constructors and other members private. 131123 Renamed formElement to associatedControl since hte control associated 131124 with this legend is not a "form element". 131125 131126 * editing/DeleteButton.cpp: 131127 (WebCore::DeleteButton::DeleteButton): 131128 (WebCore::DeleteButton::create): 131129 * editing/DeleteButton.h: 131130 * html/HTMLDivElement.cpp: 131131 (WebCore::HTMLDivElement::HTMLDivElement): 131132 (WebCore::HTMLDivElement::create): 131133 * html/HTMLDivElement.h: 131134 * html/HTMLFontElement.cpp: 131135 (WebCore::HTMLFontElement::create): 131136 * html/HTMLFontElement.h: 131137 * html/HTMLHRElement.cpp: 131138 (WebCore::HTMLHRElement::HTMLHRElement): 131139 (WebCore::HTMLHRElement::create): 131140 * html/HTMLHRElement.h: 131141 * html/HTMLHeadElement.cpp: 131142 (WebCore::HTMLHeadElement::HTMLHeadElement): 131143 (WebCore::HTMLHeadElement::create): 131144 * html/HTMLHeadElement.h: 131145 * html/HTMLHeadingElement.cpp: 131146 (WebCore::HTMLHeadingElement::HTMLHeadingElement): 131147 (WebCore::HTMLHeadingElement::create): 131148 * html/HTMLHeadingElement.h: 131149 * html/HTMLHtmlElement.cpp: 131150 (WebCore::HTMLHtmlElement::HTMLHtmlElement): 131151 (WebCore::HTMLHtmlElement::create): 131152 * html/HTMLHtmlElement.h: 131153 * html/HTMLImageElement.cpp: 131154 (WebCore::HTMLImageElement::HTMLImageElement): 131155 (WebCore::HTMLImageElement::create): 131156 * html/HTMLImageElement.h: 131157 * html/HTMLInputElement.cpp: 131158 (WebCore::HTMLInputElement::HTMLInputElement): 131159 (WebCore::HTMLInputElement::create): 131160 (WebCore::HTMLInputElement::createTemporaryFormForIsIndex): 131161 * html/HTMLInputElement.h: 131162 * html/HTMLIsIndexElement.cpp: 131163 (WebCore::HTMLIsIndexElement::HTMLIsIndexElement): 131164 (WebCore::HTMLIsIndexElement::create): 131165 * html/HTMLIsIndexElement.h: 131166 * html/HTMLLIElement.cpp: 131167 (WebCore::HTMLLIElement::HTMLLIElement): 131168 (WebCore::HTMLLIElement::create): 131169 * html/HTMLLIElement.h: 131170 * html/HTMLLinkElement.cpp: 131171 (WebCore::HTMLLinkElement::HTMLLinkElement): 131172 (WebCore::HTMLLinkElement::create): 131173 * html/HTMLLinkElement.h: 131174 Added create functions. Made constructors and other members private. 131175 131176 * html/HTMLTagNames.in: Removed the createWithNew flag from all the 131177 tags that were still using it: div, font, form, frameset, h1, h2, h3, 131178 h4, h5, h6, head, hr, html, image, img, input, ins, isindex, label, 131179 legend, li, and link. 131180 131181 * html/HTMLTextAreaElement.h: Removed unneeded definition of the readOnly 131182 function, since the one in HTMLFormElement does the same thing. 131183 131184 * loader/ImageDocument.cpp: 131185 (WebCore::ImageDocumentElement::ImageDocumentElement): 131186 (WebCore::ImageDocumentElement::create): 131187 (WebCore::ImageDocument::createDocumentStructure): 131188 Added create functions. Made constructors and other members private. 131189 131190 * page/DragController.cpp: 131191 (WebCore::DragController::concludeEditDrag): Use the non-virtual disabled 131192 function instead of the virtual isEnabledFormControl function, which just 131193 turns around and calls the disabled function. 131194 131195 * rendering/MediaControlElements.cpp: 131196 (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement): 131197 (WebCore::MediaControlShadowRootElement::create): 131198 (WebCore::MediaControlElement::MediaControlElement): 131199 (WebCore::MediaControlElement::create): 131200 (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement): 131201 (WebCore::MediaControlTimelineContainerElement::create): 131202 (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded): 131203 (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement): 131204 (WebCore::MediaControlVolumeSliderContainerElement::create): 131205 (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement): 131206 (WebCore::MediaControlStatusDisplayElement::create): 131207 (WebCore::MediaControlStatusDisplayElement::update): 131208 (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded): 131209 (WebCore::MediaControlInputElement::MediaControlInputElement): 131210 (WebCore::MediaControlInputElement::styleForElement): 131211 (WebCore::MediaControlInputElement::rendererIsNeeded): 131212 (WebCore::MediaControlInputElement::attach): 131213 (WebCore::MediaControlInputElement::updateStyle): 131214 (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): 131215 (WebCore::MediaControlMuteButtonElement::create): 131216 (WebCore::MediaControlMuteButtonElement::defaultEventHandler): 131217 (WebCore::MediaControlMuteButtonElement::updateDisplayType): 131218 (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): 131219 (WebCore::MediaControlPlayButtonElement::create): 131220 (WebCore::MediaControlPlayButtonElement::defaultEventHandler): 131221 (WebCore::MediaControlPlayButtonElement::updateDisplayType): 131222 (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): 131223 (WebCore::MediaControlSeekButtonElement::create): 131224 (WebCore::MediaControlSeekButtonElement::isForwardButton): 131225 (WebCore::MediaControlSeekButtonElement::defaultEventHandler): 131226 (WebCore::MediaControlSeekButtonElement::seekTimerFired): 131227 (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): 131228 (WebCore::MediaControlRewindButtonElement::create): 131229 (WebCore::MediaControlRewindButtonElement::defaultEventHandler): 131230 (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): 131231 (WebCore::MediaControlReturnToRealtimeButtonElement::create): 131232 (WebCore::MediaControlReturnToRealtimeButtonElement::defaultEventHandler): 131233 (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): 131234 (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): 131235 (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler): 131236 (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType): 131237 (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): 131238 (WebCore::MediaControlTimelineElement::create): 131239 (WebCore::MediaControlTimelineElement::defaultEventHandler): 131240 (WebCore::MediaControlTimelineElement::update): 131241 (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): 131242 (WebCore::MediaControlVolumeSliderElement::create): 131243 (WebCore::MediaControlVolumeSliderElement::defaultEventHandler): 131244 (WebCore::MediaControlVolumeSliderElement::update): 131245 (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): 131246 (WebCore::MediaControlFullscreenButtonElement::create): 131247 (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): 131248 (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement): 131249 (WebCore::MediaControlTimeDisplayElement::create): 131250 * rendering/MediaControlElements.h: 131251 Added create functions. Made constructors and other members private. 131252 131253 * rendering/RenderFileUploadControl.cpp: 131254 (WebCore::ShadowInputElement::ShadowInputElement): 131255 (WebCore::ShadowInputElement::create): 131256 (WebCore::RenderFileUploadControl::updateFromElement): 131257 Added create functions. Made constructors and other members private. 131258 131259 * rendering/RenderMedia.cpp: 131260 (WebCore::RenderMedia::createControlsShadowRoot): 131261 (WebCore::RenderMedia::createPanel): 131262 (WebCore::RenderMedia::createMuteButton): 131263 (WebCore::RenderMedia::createPlayButton): 131264 (WebCore::RenderMedia::createSeekBackButton): 131265 (WebCore::RenderMedia::createSeekForwardButton): 131266 (WebCore::RenderMedia::createRewindButton): 131267 (WebCore::RenderMedia::createReturnToRealtimeButton): 131268 (WebCore::RenderMedia::createToggleClosedCaptionsButton): 131269 (WebCore::RenderMedia::createStatusDisplay): 131270 (WebCore::RenderMedia::createTimelineContainer): 131271 (WebCore::RenderMedia::createTimeline): 131272 (WebCore::RenderMedia::createVolumeSliderContainer): 131273 (WebCore::RenderMedia::createVolumeSlider): 131274 (WebCore::RenderMedia::createCurrentTimeDisplay): 131275 (WebCore::RenderMedia::createTimeRemainingDisplay): 131276 (WebCore::RenderMedia::createFullscreenButton): 131277 Use create instead of new. 131278 131279 * rendering/RenderProgress.cpp: 131280 (WebCore::ProgressValueElement::ProgressValueElement): 131281 (WebCore::ProgressValueElement::create): 131282 (WebCore::RenderProgress::updateValuePartState): 131283 * rendering/RenderSlider.cpp: 131284 (WebCore::SliderThumbElement::SliderThumbElement): 131285 (WebCore::SliderThumbElement::create): 131286 (WebCore::RenderSlider::updateFromElement): 131287 Added create functions. Made constructors and other members private. 131288 131289 * rendering/TextControlInnerElements.cpp: 131290 (WebCore::TextControlInnerElement::TextControlInnerElement): 131291 (WebCore::TextControlInnerElement::create): 131292 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement): 131293 (WebCore::TextControlInnerTextElement::create): 131294 (WebCore::TextControlInnerTextElement::defaultEventHandler): 131295 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement): 131296 (WebCore::SearchFieldResultsButtonElement::create): 131297 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler): 131298 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement): 131299 (WebCore::SearchFieldCancelButtonElement::create): 131300 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler): 131301 (WebCore::SpinButtonElement::SpinButtonElement): 131302 (WebCore::SpinButtonElement::create): 131303 (WebCore::SpinButtonElement::defaultEventHandler): 131304 * rendering/TextControlInnerElements.h: 131305 Added create functions. Made constructors and other members private. 131306 131307 2010-05-30 Xan Lopez <xlopez (a] igalia.com> 131308 131309 Reviewed by Darin Adler. 131310 131311 Incorrect build dependencies for GObject DOM Bindings 131312 https://bugs.webkit.org/show_bug.cgi?id=39932 131313 131314 -include does not execute the implicit % expansion, we have to do 131315 it manually. 131316 131317 * GNUmakefile.am: 131318 131319 2010-05-30 Robert Hogan <robert (a] webkit.org> 131320 131321 Reviewed by Kenneth Rohde Christiansen. 131322 131323 [Qt] Enhance Qt DRT implementation to support platform scroll wheel events. 131324 131325 https://bugs.webkit.org/show_bug.cgi?id=36004 131326 131327 Fix the bug in webkit.org/b/29601 for Qt. A delta not divisible by 120 131328 indicates a device that is sending fine-resolution scroll events, so 131329 use the delta as the number of pixels to scroll. 131330 131331 * platform/qt/WheelEventQt.cpp: 131332 (WebCore::PlatformWheelEvent::applyDelta): 131333 131334 2010-05-30 Jessie Berlin <jberlin (a] webkit.org> 131335 131336 Reviewed by Pavel Feldman. 131337 131338 https://bugs.webkit.org/show_bug.cgi?id=39224 131339 Bug 39224 - Web Inspector: There should be a way to clean up profiles 131340 131341 Adds a button to clear the profiles from the profiles panel like that 131342 used for the console, the audits panel, and the timeline panel. 131343 Consolidates the css rules, since they all use the same image. 131344 Also allows for individual profiles to be deleted via the keyboard 131345 (U+0008 or U+007F) and uses this new schema for the Elements Tree. 131346 131347 * English.lproj/localizedStrings.js: 131348 Add tooltip text for the button to clear the profiles pane. 131349 131350 * inspector/InspectorBackend.idl: 131351 Add ability to remove the profiles from the backend when they are 131352 deleted or cleared in the frontend. 131353 * inspector/InspectorBackend.cpp: 131354 (WebCore::InspectorBackend::removeProfile): 131355 (WebCore::InspectorBackend::clearProfiles): 131356 * inspector/InspectorBackend.h: 131357 * inspector/InspectorController.cpp: 131358 (WebCore::InspectorController::removeProfile): 131359 (WebCore::InspectorController::clearProfiles): 131360 * inspector/InspectorController.h: 131361 131362 * inspector/front-end/AuditsPanel.js: 131363 (WebInspector.AuditsPanel): 131364 Use the 'clear-status-bar-item' class. 131365 * inspector/front-end/ChangesView.js: 131366 (WebInspector.ChangesView): 131367 * inspector/front-end/TimelinePanel.js: 131368 (WebInspector.TimelinePanel.prototype._createStatusbarButtons): 131369 * inspector/front-end/audits.css: 131370 * inspector/front-end/inspector.css: 131371 (.clear-status-bar-item .glyph): 131372 * inspector/front-end/inspector.html: 131373 131374 * inspector/front-end/ElementsTreeOutline.js: 131375 Replace the keyDown handler on the Outline with specific methods to 131376 handle delete and enter on the TreeElements. 131377 (WebInspector.ElementsTreeOutline): 131378 (WebInspector.ElementsTreeOutline.prototype.get editing): 131379 Return whether or not an element in the tree is currently being edited. 131380 (WebInspector.ElementsTreeElement.prototype.ondelete): 131381 (WebInspector.ElementsTreeElement.prototype.onenter): 131382 131383 * inspector/front-end/Panel.js: 131384 (WebInspector.Panel.prototype.createSidebar): 131385 Make the TreeOutline for a Panel's sidebar aware of its enclosing Panel. 131386 131387 * inspector/front-end/ProfilesPanel.js: 131388 (WebInspector.ProfilesPanel): 131389 Add the clear button. 131390 (WebInspector.ProfilesPanel.prototype.get statusBarItems): 131391 (WebInspector.ProfilesPanel.prototype._clearProfiles): 131392 Remove the profiles from the backend, the reset the frontend interface. 131393 (WebInspector.ProfilesPanel.prototype.removeProfileHeader): 131394 Remove the profile from both the frontend and the backend, and clear the 131395 view when the last profile is removed. 131396 (WebInspector.ProfilesPanel.prototype._updateInterface): 131397 Hide the clear button when profiling is disabled. 131398 (WebInspector.ProfileSidebarTreeElement.prototype.onselect): 131399 Replace access to global variable with reference to the Panel held by the 131400 TreeOutline. 131401 (WebInspector.ProfileSidebarTreeElement.prototype.ondelete): 131402 Remove the profile corresponding the tree element when the user deletes 131403 that tree element. 131404 131405 * inspector/front-end/treeoutline.js: 131406 (TreeOutline.prototype._treeKeyDown): 131407 Allow the selected tree element to handle the user pressing a delete 131408 key or enter key. 131409 131410 2010-05-29 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 131411 131412 Reviewed by Darin Adler. 131413 131414 Check if a CC environment variable is defined before hard-coding gcc's 131415 path. Simply hard-coding it breaks cross-compilation and Linux 131416 distributions with more than one gcc installed (or not in the default 131417 path). 131418 https://bugs.webkit.org/show_bug.cgi?id=35551 131419 131420 No new functionality, so no new tests. 131421 131422 * bindings/scripts/CodeGeneratorObjC.pm: 131423 * bindings/scripts/IDLParser.pm: 131424 * dom/make_names.pl: 131425 131426 2010-05-29 Pavel Feldman <pfeldman (a] chromium.org> 131427 131428 Reviewed by Timothy Hatcher. 131429 131430 Web Inspector: [REGRESSION] caller locations are not shown on Timeline Panel. 131431 131432 https://bugs.webkit.org/show_bug.cgi?id=39923 131433 131434 * inspector/front-end/TimelinePanel.js: 131435 (WebInspector.TimelinePanel.FormattedRecord): 131436 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): 131437 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): 131438 131439 2010-05-29 Eric Seidel <eric (a] webkit.org> 131440 131441 Reviewed by Adam Barth. 131442 131443 HTML5 parser should block script execution until stylesheets load 131444 https://bugs.webkit.org/show_bug.cgi?id=39903 131445 131446 All <script> tag execution now blocks on stylesheet load, including 131447 inline <script> content which the old parser doesn't support blocking. 131448 131449 Hyatt says we could now get rid of updateLayoutIgnorePendingStylesheets 131450 once our primary parser knows how to wait for stylesheets 131451 before executing inline <script> content. 131452 131453 All of http/tests/local passes in --html5-parser mode now. 131454 Also fixed fast/parser/tokenizer-close-during-document-write.html. 131455 131456 * html/HTML5ScriptRunner.cpp: 131457 (WebCore::HTML5ScriptRunner::HTML5ScriptRunner): 131458 - Added a m_hasScriptsWaitingForStylesheets bool so that we can 131459 detect when we're actually waiting on stylesheets or not. 131460 If we're not waiting on stylesheets then we're still parsing and 131461 executing scripts would cause parser/script reentrancy and bad news bears. 131462 (WebCore::HTML5ScriptRunner::isPendingScriptReady): 131463 - Re-enable the check that the stylesheets have loaded. 131464 (WebCore::HTML5ScriptRunner::executePendingScript): 131465 - ASSERT that stylesheets have loaded. 131466 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 131467 - ASSERT that this is never called reentrantly. 131468 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets): 131469 - Execute any scripts which were blocked on stylesheet loads. 131470 - ASSERT (in two ways) that this is never called reentrantly. 131471 * html/HTML5ScriptRunner.h: 131472 (WebCore::HTML5ScriptRunner::hasScriptsWaitingForStylesheets): 131473 - Callers need to check this before calling executeScriptsWaitingForLoad. 131474 (WebCore::HTML5ScriptRunner::inScriptExecution): 131475 - Used by callers to ASSERT that we're not called re-entrantly. 131476 * html/HTML5Tokenizer.cpp: 131477 (WebCore::HTML5Tokenizer::HTML5Tokenizer): 131478 - Add m_hasScriptsWaitingForStylesheets for tracking if we've paused 131479 due to stylesheets or not. Callers need to know this to know if they 131480 should ignore executeScriptsWaitingForStylesheets calls from 131481 Document (which may be generated when parsing </script> tags). 131482 We only care about executeScriptsWaitingForStylesheets calls when 131483 we've actually blocked the parser due to waiting on a stylesheet load. 131484 (WebCore::HTML5Tokenizer::end): 131485 - Move m_source.close() back to this method now that I understand more 131486 about when finish() is called. This should fix several layout test ASSERTS. 131487 (WebCore::HTML5Tokenizer::finish): 131488 - This should not close m_source since scripts may still write to 131489 the document. Set m_wasWaitingOnScriptsDuringFinish to indicate 131490 that we were not able to end parsing during finish. 131491 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution): 131492 - ASSERT that this is never caller re-entrantly. 131493 (WebCore::HTML5Tokenizer::executeScript): 131494 - ASSERT that the ScriptRunner always thinks we're running scripts when this is called. 131495 (WebCore::HTML5Tokenizer::executingScript): 131496 - Added implementation to fix fast/parser/tokenizer-close-during-document-write.html 131497 (WebCore::HTML5Tokenizer::notifyFinished): 131498 - ASSERT that this is never called re-entrantly. 131499 (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets): 131500 - Call the ScriptRunner to tell it that stylesheets have loaded if 131501 it is blocked on stylesheet loads. 131502 - ASSERT(m_hasScriptsWaitingForStylesheets). We can't just assert 131503 isPaused() since we may be paused for script loads. 131504 * html/HTML5Tokenizer.h: 131505 131506 2010-05-29 Laszlo Gombos <laszlo.1.gombos (a] nokia.com> 131507 131508 Reviewed by Darin Adler. 131509 131510 Remove set but never used variables 131511 https://bugs.webkit.org/show_bug.cgi?id=35252 131512 131513 No new tests as there is no new functionality. 131514 131515 * accessibility/AccessibilityRenderObject.cpp: 131516 (WebCore::lastChildConsideringContinuation): 131517 * css/CSSFontSelector.cpp: 131518 (WebCore::CSSFontSelector::addFontFaceRule): 131519 * css/CSSParser.cpp: 131520 (WebCore::CSSParser::parseFontFaceUnicodeRange): 131521 * editing/InsertParagraphSeparatorCommand.cpp: 131522 (WebCore::InsertParagraphSeparatorCommand::doApply): 131523 * loader/appcache/ApplicationCacheStorage.cpp: 131524 (WebCore::ApplicationCacheStorage::loadManifestHostHashes): 131525 * page/EventHandler.cpp: 131526 (WebCore::EventHandler::handleWheelEvent): 131527 * page/animation/AnimationBase.cpp: 131528 (WebCore::AnimationBase::getTimeToNextEvent): 131529 * rendering/AutoTableLayout.cpp: 131530 (WebCore::AutoTableLayout::recalcColumn): 131531 (WebCore::AutoTableLayout::layout): 131532 * rendering/RenderBlock.cpp: 131533 (WebCore::RenderBlock::calcInlinePrefWidths): 131534 * rendering/RenderSVGResourceClipper.cpp: 131535 (WebCore::RenderSVGResourceClipper::createClipData): 131536 * storage/DatabaseTracker.cpp: 131537 (WebCore::DatabaseTracker::canEstablishDatabase): 131538 131539 2010-05-29 Sheriff Bot <webkit.review.bot (a] gmail.com> 131540 131541 Unreviewed, rolling out r60405. 131542 http://trac.webkit.org/changeset/60405 131543 https://bugs.webkit.org/show_bug.cgi?id=39921 131544 131545 It broke GTK build. (Requested by Ossy on #webkit). 131546 131547 * dom/Node.cpp: 131548 (WebCore::Node::getElementsByTagName): 131549 (WebCore::Node::getElementsByTagNameNS): 131550 * dom/Node.h: 131551 131552 2010-05-29 Anton Muhin <antonm (a] chromium.org> 131553 131554 Reviewed by Darin Adler. 131555 131556 Make NodeList getters take AtomicString instead of plain String 131557 https://bugs.webkit.org/show_bug.cgi?id=39892 131558 131559 Those methods turn String into AtomicString later. And this conversion 131560 is faster if underlying string is already atomic. 131561 That buys small (~2-3%) speed up for Chromium on Dromaeo DOM Core. 131562 I don't know if Safari benefits from it. 131563 131564 * dom/Node.cpp: 131565 (WebCore::Node::getElementsByTagName): 131566 (WebCore::Node::getElementsByTagNameNS): 131567 * dom/Node.h: 131568 131569 2010-05-29 Justin Schuh <jschuh (a] chromium.org> 131570 131571 Reviewed by Adam Barth. 131572 131573 Allow descendant frame navigation for file URLs when allowFileAccessFromFileURLs is false 131574 https://bugs.webkit.org/show_bug.cgi?id=39750 131575 131576 Fix for local HTML package breakage when each file is its own origin. 131577 In this case we should allow descendant file: frames to navigate each 131578 other when they share the same top frame. 131579 131580 Test: fast/frames/location-change-no-file-access.html 131581 131582 * loader/FrameLoader.cpp: 131583 (WebCore::FrameLoader::shouldAllowNavigation): 131584 131585 2010-05-29 Geoffrey Garen <ggaren (a] apple.com> 131586 131587 Qt build fix: Updated for ArgList changes. 131588 131589 * bridge/qt/qt_runtime.cpp: 131590 (JSC::Bindings::QtRuntimeConnectionMethod::call): 131591 131592 2010-05-29 Geoffrey Garen <ggaren (a] apple.com> 131593 131594 Qt build fix: Updated for ArgList changes. 131595 131596 * bridge/qt/qt_runtime.cpp: 131597 (JSC::Bindings::QtRuntimeMetaMethod::call): 131598 (JSC::Bindings::QtRuntimeConnectionMethod::call): 131599 131600 2010-05-29 Geoffrey Garen <ggaren (a] apple.com> 131601 131602 Qt build fix: Updated for ArgList changes. 131603 131604 * bridge/qt/qt_pixmapruntime.cpp: 131605 (JSC::Bindings::QtPixmapInstance::invokeMethod): 131606 * bridge/qt/qt_runtime.cpp: 131607 (JSC::Bindings::findMethodIndex): 131608 (JSC::Bindings::QtRuntimeMetaMethod::call): 131609 (JSC::Bindings::QtRuntimeConnectionMethod::call): 131610 * bridge/qt/qt_runtime.h: 131611 131612 2010-05-29 Geoffrey Garen <ggaren (a] apple.com> 131613 131614 Qt build fix: Updated for ArgList changes. 131615 131616 * bridge/qt/qt_pixmapruntime.cpp: 131617 (JSC::Bindings::QtPixmapAssignToElementMethod::invoke): 131618 (JSC::Bindings::QtPixmapToDataUrlMethod::invoke): 131619 (JSC::Bindings::QtPixmapToStringMethod::invoke): 131620 (JSC::Bindings::QtPixmapInstance::invokeMethod): 131621 * bridge/qt/qt_pixmapruntime.h: 131622 131623 2010-05-29 Geoffrey Garen <ggaren (a] apple.com> 131624 131625 Qt build fix: Keep this borken class limping along. 131626 131627 * bridge/qt/qt_instance.cpp: 131628 (JSC::Bindings::QtInstance::invokeMethod): 131629 * bridge/qt/qt_instance.h: 131630 131631 2010-05-28 Geoffrey Garen <ggaren (a] apple.com> 131632 131633 Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt. 131634 131635 Simplified the host calling convention. 131636 131637 PART ONE: Functional code changes. 131638 131639 [ None in WebCore ] 131640 131641 PART TWO: Global search and replace. 131642 131643 In the areas below, I used global search-and-replace to change 131644 (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*) 131645 args.size() => exec->argumentCount() 131646 args.at(i) => exec->argument(i) 131647 131648 * bindings/js/JSArrayBufferViewCustom.cpp: 131649 (WebCore::JSArrayBufferView::slice): 131650 * bindings/js/JSArrayBufferViewHelper.h: 131651 (WebCore::setWebGLArrayHelper): 131652 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: 131653 (WebCore::JSCanvasRenderingContext2D::setFillColor): 131654 (WebCore::JSCanvasRenderingContext2D::setStrokeColor): 131655 (WebCore::JSCanvasRenderingContext2D::strokeRect): 131656 (WebCore::JSCanvasRenderingContext2D::drawImage): 131657 (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): 131658 (WebCore::JSCanvasRenderingContext2D::setShadow): 131659 (WebCore::JSCanvasRenderingContext2D::createPattern): 131660 (WebCore::JSCanvasRenderingContext2D::createImageData): 131661 (WebCore::JSCanvasRenderingContext2D::putImageData): 131662 (WebCore::JSCanvasRenderingContext2D::fillText): 131663 (WebCore::JSCanvasRenderingContext2D::strokeText): 131664 * bindings/js/JSClipboardCustom.cpp: 131665 (WebCore::JSClipboard::clearData): 131666 (WebCore::JSClipboard::getData): 131667 (WebCore::JSClipboard::setDragImage): 131668 * bindings/js/JSDOMApplicationCacheCustom.cpp: 131669 (WebCore::JSDOMApplicationCache::hasItem): 131670 (WebCore::JSDOMApplicationCache::add): 131671 (WebCore::JSDOMApplicationCache::remove): 131672 * bindings/js/JSDOMFormDataCustom.cpp: 131673 (WebCore::JSDOMFormData::append): 131674 * bindings/js/JSDOMWindowCustom.cpp: 131675 (WebCore::JSDOMWindow::open): 131676 (WebCore::JSDOMWindow::showModalDialog): 131677 (WebCore::JSDOMWindow::postMessage): 131678 (WebCore::JSDOMWindow::setTimeout): 131679 (WebCore::JSDOMWindow::setInterval): 131680 (WebCore::JSDOMWindow::addEventListener): 131681 (WebCore::JSDOMWindow::removeEventListener): 131682 (WebCore::JSDOMWindow::openDatabase): 131683 * bindings/js/JSDatabaseCustom.cpp: 131684 (WebCore::JSDatabase::changeVersion): 131685 (WebCore::createTransaction): 131686 (WebCore::JSDatabase::transaction): 131687 (WebCore::JSDatabase::readTransaction): 131688 * bindings/js/JSDatabaseSyncCustom.cpp: 131689 (WebCore::JSDatabaseSync::changeVersion): 131690 (WebCore::createTransaction): 131691 (WebCore::JSDatabaseSync::transaction): 131692 (WebCore::JSDatabaseSync::readTransaction): 131693 * bindings/js/JSDedicatedWorkerContextCustom.cpp: 131694 (WebCore::JSDedicatedWorkerContext::postMessage): 131695 * bindings/js/JSDesktopNotificationsCustom.cpp: 131696 (WebCore::JSNotificationCenter::requestPermission): 131697 * bindings/js/JSFloatArrayCustom.cpp: 131698 (WebCore::JSFloatArray::set): 131699 * bindings/js/JSGeolocationCustom.cpp: 131700 (WebCore::JSGeolocation::getCurrentPosition): 131701 (WebCore::JSGeolocation::watchPosition): 131702 * bindings/js/JSHTMLAllCollectionCustom.cpp: 131703 (WebCore::callHTMLAllCollection): 131704 (WebCore::JSHTMLAllCollection::item): 131705 (WebCore::JSHTMLAllCollection::namedItem): 131706 * bindings/js/JSHTMLCanvasElementCustom.cpp: 131707 (WebCore::JSHTMLCanvasElement::getContext): 131708 * bindings/js/JSHTMLCollectionCustom.cpp: 131709 (WebCore::callHTMLCollection): 131710 (WebCore::JSHTMLCollection::item): 131711 (WebCore::JSHTMLCollection::namedItem): 131712 * bindings/js/JSHTMLDocumentCustom.cpp: 131713 (WebCore::JSHTMLDocument::open): 131714 (WebCore::documentWrite): 131715 (WebCore::JSHTMLDocument::write): 131716 (WebCore::JSHTMLDocument::writeln): 131717 * bindings/js/JSHTMLInputElementCustom.cpp: 131718 (WebCore::JSHTMLInputElement::setSelectionRange): 131719 * bindings/js/JSHTMLOptionsCollectionCustom.cpp: 131720 (WebCore::JSHTMLOptionsCollection::add): 131721 (WebCore::JSHTMLOptionsCollection::remove): 131722 * bindings/js/JSHTMLSelectElementCustom.cpp: 131723 (WebCore::JSHTMLSelectElement::remove): 131724 * bindings/js/JSHistoryCustom.cpp: 131725 (WebCore::JSHistory::pushState): 131726 (WebCore::JSHistory::replaceState): 131727 * bindings/js/JSInjectedScriptHostCustom.cpp: 131728 (WebCore::JSInjectedScriptHost::databaseForId): 131729 (WebCore::JSInjectedScriptHost::currentCallFrame): 131730 (WebCore::JSInjectedScriptHost::nodeForId): 131731 (WebCore::JSInjectedScriptHost::pushNodePathToFrontend): 131732 (WebCore::JSInjectedScriptHost::selectDatabase): 131733 (WebCore::JSInjectedScriptHost::selectDOMStorage): 131734 (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript): 131735 * bindings/js/JSInspectorFrontendHostCustom.cpp: 131736 (WebCore::JSInspectorFrontendHost::platform): 131737 (WebCore::JSInspectorFrontendHost::port): 131738 (WebCore::JSInspectorFrontendHost::showContextMenu): 131739 * bindings/js/JSInt16ArrayCustom.cpp: 131740 (WebCore::JSInt16Array::set): 131741 * bindings/js/JSInt32ArrayCustom.cpp: 131742 (WebCore::JSInt32Array::set): 131743 * bindings/js/JSInt8ArrayCustom.cpp: 131744 (WebCore::JSInt8Array::set): 131745 * bindings/js/JSJavaScriptCallFrameCustom.cpp: 131746 (WebCore::JSJavaScriptCallFrame::evaluate): 131747 (WebCore::JSJavaScriptCallFrame::scopeType): 131748 * bindings/js/JSLocationCustom.cpp: 131749 (WebCore::JSLocation::replace): 131750 (WebCore::JSLocation::reload): 131751 (WebCore::JSLocation::assign): 131752 (WebCore::JSLocation::toString): 131753 * bindings/js/JSMessageEventCustom.cpp: 131754 (WebCore::JSMessageEvent::initMessageEvent): 131755 * bindings/js/JSMessagePortCustom.cpp: 131756 (WebCore::JSMessagePort::postMessage): 131757 * bindings/js/JSMessagePortCustom.h: 131758 (WebCore::handlePostMessage): 131759 * bindings/js/JSNodeCustom.cpp: 131760 (WebCore::JSNode::insertBefore): 131761 (WebCore::JSNode::replaceChild): 131762 (WebCore::JSNode::removeChild): 131763 (WebCore::JSNode::appendChild): 131764 * bindings/js/JSNodeListCustom.cpp: 131765 (WebCore::callNodeList): 131766 * bindings/js/JSPluginElementFunctions.cpp: 131767 (WebCore::callPlugin): 131768 * bindings/js/JSSQLResultSetRowListCustom.cpp: 131769 (WebCore::JSSQLResultSetRowList::item): 131770 * bindings/js/JSSQLTransactionCustom.cpp: 131771 (WebCore::JSSQLTransaction::executeSql): 131772 * bindings/js/JSSQLTransactionSyncCustom.cpp: 131773 (WebCore::JSSQLTransactionSync::executeSql): 131774 * bindings/js/JSSVGLengthCustom.cpp: 131775 (WebCore::JSSVGLength::convertToSpecifiedUnits): 131776 * bindings/js/JSSVGMatrixCustom.cpp: 131777 (WebCore::JSSVGMatrix::multiply): 131778 (WebCore::JSSVGMatrix::inverse): 131779 (WebCore::JSSVGMatrix::rotateFromVector): 131780 * bindings/js/JSSVGPODListCustom.h: 131781 (WebCore::JSSVGPODListCustom::clear): 131782 (WebCore::JSSVGPODListCustom::initialize): 131783 (WebCore::JSSVGPODListCustom::getItem): 131784 (WebCore::JSSVGPODListCustom::insertItemBefore): 131785 (WebCore::JSSVGPODListCustom::replaceItem): 131786 (WebCore::JSSVGPODListCustom::removeItem): 131787 (WebCore::JSSVGPODListCustom::appendItem): 131788 * bindings/js/JSSVGPathSegListCustom.cpp: 131789 (WebCore::JSSVGPathSegList::clear): 131790 (WebCore::JSSVGPathSegList::initialize): 131791 (WebCore::JSSVGPathSegList::getItem): 131792 (WebCore::JSSVGPathSegList::insertItemBefore): 131793 (WebCore::JSSVGPathSegList::replaceItem): 131794 (WebCore::JSSVGPathSegList::removeItem): 131795 (WebCore::JSSVGPathSegList::appendItem): 131796 * bindings/js/JSUint16ArrayCustom.cpp: 131797 (WebCore::JSUint16Array::set): 131798 * bindings/js/JSUint32ArrayCustom.cpp: 131799 (WebCore::JSUint32Array::set): 131800 * bindings/js/JSUint8ArrayCustom.cpp: 131801 (WebCore::JSUint8Array::set): 131802 * bindings/js/JSWebGLRenderingContextCustom.cpp: 131803 (WebCore::JSWebGLRenderingContext::bufferData): 131804 (WebCore::JSWebGLRenderingContext::bufferSubData): 131805 (WebCore::getObjectParameter): 131806 (WebCore::JSWebGLRenderingContext::getBufferParameter): 131807 (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter): 131808 (WebCore::JSWebGLRenderingContext::getParameter): 131809 (WebCore::JSWebGLRenderingContext::getProgramParameter): 131810 (WebCore::JSWebGLRenderingContext::getRenderbufferParameter): 131811 (WebCore::JSWebGLRenderingContext::getShaderParameter): 131812 (WebCore::JSWebGLRenderingContext::getTexParameter): 131813 (WebCore::JSWebGLRenderingContext::getUniform): 131814 (WebCore::JSWebGLRenderingContext::getVertexAttrib): 131815 (WebCore::JSWebGLRenderingContext::texImage2D): 131816 (WebCore::JSWebGLRenderingContext::texSubImage2D): 131817 (WebCore::dataFunctionf): 131818 (WebCore::dataFunctioni): 131819 (WebCore::dataFunctionMatrix): 131820 (WebCore::JSWebGLRenderingContext::uniform1fv): 131821 (WebCore::JSWebGLRenderingContext::uniform1iv): 131822 (WebCore::JSWebGLRenderingContext::uniform2fv): 131823 (WebCore::JSWebGLRenderingContext::uniform2iv): 131824 (WebCore::JSWebGLRenderingContext::uniform3fv): 131825 (WebCore::JSWebGLRenderingContext::uniform3iv): 131826 (WebCore::JSWebGLRenderingContext::uniform4fv): 131827 (WebCore::JSWebGLRenderingContext::uniform4iv): 131828 (WebCore::JSWebGLRenderingContext::uniformMatrix2fv): 131829 (WebCore::JSWebGLRenderingContext::uniformMatrix3fv): 131830 (WebCore::JSWebGLRenderingContext::uniformMatrix4fv): 131831 (WebCore::JSWebGLRenderingContext::vertexAttrib1fv): 131832 (WebCore::JSWebGLRenderingContext::vertexAttrib2fv): 131833 (WebCore::JSWebGLRenderingContext::vertexAttrib3fv): 131834 (WebCore::JSWebGLRenderingContext::vertexAttrib4fv): 131835 * bindings/js/JSWebSocketCustom.cpp: 131836 (WebCore::JSWebSocket::send): 131837 * bindings/js/JSWorkerContextCustom.cpp: 131838 (WebCore::JSWorkerContext::importScripts): 131839 (WebCore::JSWorkerContext::setTimeout): 131840 (WebCore::JSWorkerContext::setInterval): 131841 (WebCore::JSWorkerContext::openDatabase): 131842 (WebCore::JSWorkerContext::openDatabaseSync): 131843 * bindings/js/JSWorkerCustom.cpp: 131844 (WebCore::JSWorker::postMessage): 131845 * bindings/js/JSXMLHttpRequestCustom.cpp: 131846 (WebCore::JSXMLHttpRequest::open): 131847 (WebCore::JSXMLHttpRequest::send): 131848 * bindings/js/JSXSLTProcessorCustom.cpp: 131849 (WebCore::JSXSLTProcessor::importStylesheet): 131850 (WebCore::JSXSLTProcessor::transformToFragment): 131851 (WebCore::JSXSLTProcessor::transformToDocument): 131852 (WebCore::JSXSLTProcessor::setParameter): 131853 (WebCore::JSXSLTProcessor::getParameter): 131854 (WebCore::JSXSLTProcessor::removeParameter): 131855 * bindings/js/ScheduledAction.cpp: 131856 (WebCore::ScheduledAction::create): 131857 (WebCore::ScheduledAction::ScheduledAction): 131858 * bindings/js/ScheduledAction.h: 131859 * bindings/js/ScriptCallFrame.cpp: 131860 (WebCore::ScriptCallFrame::ScriptCallFrame): 131861 * bindings/js/ScriptCallFrame.h: 131862 * bindings/js/ScriptCallStack.cpp: 131863 (WebCore::ScriptCallStack::ScriptCallStack): 131864 (WebCore::ScriptCallStack::initialize): 131865 * bindings/js/ScriptCallStack.h: 131866 * bindings/scripts/CodeGeneratorJS.pm: 131867 * bridge/c/c_instance.cpp: 131868 (JSC::Bindings::CInstance::invokeMethod): 131869 (JSC::Bindings::CInstance::invokeDefaultMethod): 131870 * bridge/c/c_instance.h: 131871 * bridge/jni/jsc/JavaInstanceJSC.cpp: 131872 (JavaInstance::invokeMethod): 131873 * bridge/jni/jsc/JavaInstanceJSC.h: 131874 * bridge/jsc/BridgeJSC.h: 131875 (JSC::Bindings::Instance::invokeDefaultMethod): 131876 * bridge/objc/objc_instance.h: 131877 * bridge/objc/objc_instance.mm: 131878 (ObjcInstance::invokeMethod): 131879 (ObjcInstance::invokeObjcMethod): 131880 (ObjcInstance::invokeDefaultMethod): 131881 * bridge/objc/objc_runtime.mm: 131882 (JSC::Bindings::callObjCFallbackObject): 131883 * bridge/runtime_method.cpp: 131884 (JSC::callRuntimeMethod): 131885 * bridge/runtime_object.cpp: 131886 (JSC::Bindings::callRuntimeObject): 131887 131888 2010-05-28 Stephen White <senorblanco (a] chromium.org> 131889 131890 Reviewed by Darin Fisher. 131891 131892 Implement GraphicsContext::setImageInterpolation() for the Chromium 131893 port. This is preparatory work for bug 38233. A number of 131894 background-resize tests will need a rebaseline, since the images are 131895 taken during the initial "low quality" phase (<800ms). 131896 131897 [CHROMIUM] Chromium port should support image interpolation quality 131898 https://bugs.webkit.org/show_bug.cgi?id=38686 131899 131900 Covered by fast/backgrounds/size/backgroundSize15.html, and others. 131901 131902 * platform/graphics/skia/GraphicsContextSkia.cpp: 131903 Implement WebCore::GraphicsContext::setImageInterpolationQuality. 131904 * platform/graphics/skia/ImageSkia.cpp: 131905 (WebCore::computeResamplingMode): Only enable high quality 131906 interpolation if it has been requested in the GraphicsContext. 131907 (WebCore::drawResampledBitmap): Enable cacheing of resampled images 131908 even if the size is not full (fix from Brett Wilson). 131909 (WebCore::paintSkBitmap): Pass in the PlatformContextSkia to 131910 computeResamplingMode, so it can query it for interpolation quality. 131911 (WebCore::Image::drawPattern): Ibid. 131912 * platform/graphics/skia/PlatformContextSkia.cpp: 131913 (PlatformContextSkia::State::State): 131914 (PlatformContextSkia::interpolationQuality): 131915 (PlatformContextSkia::setInterpolationQuality): 131916 * platform/graphics/skia/PlatformContextSkia.h: 131917 Add a member fn and accessors to retain the image interpolation quality 131918 in the platform context, and to save/restore it with the state. 131919 131920 2010-05-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 131921 131922 Reviewed by Kenneth Rohde Christiansen. 131923 131924 [EFL] Remove compiler warnings about uninitialized variable. 131925 https://bugs.webkit.org/show_bug.cgi?id=39871 131926 131927 No new tests, just cosmetic changes. 131928 131929 * platform/efl/WidgetEfl.cpp: 131930 (WebCore::Widget::applyCursor): 131931 131932 2010-05-28 Vangelis Kokkevis <vangelis (a] chromium.org> 131933 131934 Reviewed by Dimitri Glazkov. 131935 131936 Prevent chromium composited layers from rendering on top of the scrollbars. 131937 https://bugs.webkit.org/show_bug.cgi?id=39851 131938 131939 * platform/graphics/chromium/LayerRendererChromium.cpp: 131940 (WebCore::LayerRendererChromium::drawLayers): 131941 131942 2010-05-28 Aaron Boodman <aa (a] chromium.org> 131943 131944 Reviewed by Darin Fisher. 131945 131946 Added isXHTMLDocument() to WebCore::Document. 131947 131948 https://bugs.webkit.org/show_bug.cgi?id=39887 131949 131950 * dom/Document.h: Add isXHTMLDocument(). 131951 (WebCore::Document::isXHTMLDocument): Ditto. 131952 131953 2010-05-28 Peter Kasting <pkasting (a] google.com> 131954 131955 Reviewed by Darin Adler. 131956 131957 https://bugs.webkit.org/show_bug.cgi?id=39857 131958 Make GIFs loop the correct number of times. Previously, everyone looped 131959 one time too few for non-infinitely-looping GIFs. 131960 131961 Modified a Qt manual test to be correct and moved it to the general 131962 manual test directory. 131963 131964 * manual-tests/animated-gif-looping.html: Copied from WebCore/manual-tests/qt/qt-gif-test.html. 131965 * manual-tests/qt/qt-10loop-anim.gif: Removed. 131966 * manual-tests/qt/qt-anim.gif: Removed. 131967 * manual-tests/qt/qt-gif-test.html: Removed. 131968 * manual-tests/qt/qt-noanim.gif: Removed. 131969 * manual-tests/resources/animated-10x.gif: Copied from WebCore/manual-tests/qt/qt-10loop-anim.gif and modified. 131970 * manual-tests/resources/animated-infinite.gif: Copied from WebCore/manual-tests/qt/qt-anim.gif. 131971 * manual-tests/resources/non-animated.gif: Copied from WebCore/manual-tests/qt/qt-noanim.gif. 131972 * platform/graphics/BitmapImage.cpp: 131973 (WebCore::BitmapImage::internalAdvanceAnimation): For a loop count of n, show a total of n + 1 animation cycles. 131974 * platform/graphics/ImageSource.h: 131975 * platform/graphics/cg/ImageSourceCG.cpp: 131976 (WebCore::ImageSource::repetitionCount): 131977 * platform/graphics/qt/ImageDecoderQt.cpp: 131978 (WebCore::ImageDecoderQt::repetitionCount): Remove translation code now that WebCore matches Qt's internal handling of the loop count. Qt itself may still have a bug here. 131979 * platform/image-decoders/gif/GIFImageDecoder.cpp: 131980 (WebCore::GIFImageDecoder::repetitionCount): 131981 * platform/image-decoders/gif/GIFImageReader.cpp: 131982 (GIFImageReader::read): Translate loop count 0 to "loop infinitely" (by restoring one piece of the Mozilla code we'd removed). 131983 131984 2010-05-28 Ben Murdoch <benm (a] google.com> 131985 131986 Reviewed by Darin Adler. 131987 131988 openFile(...) in FIleSystemPOSIX does not call fileSystemRepresentation 131989 https://bugs.webkit.org/show_bug.cgi?id=39882 131990 131991 No new tests. Existing tests in fast/files should suffice. 131992 131993 * platform/posix/FileSystemPOSIX.cpp: 131994 (WebCore::openFile): pass the path parameter through fileSystemRepresentation before using it. 131995 131996 2010-05-28 Adam Barth <abarth (a] webkit.org> 131997 131998 Reviewed by Eric Seidel. 131999 132000 Named entities in attributes aren't parsed correctly by HTML5 parser 132001 https://bugs.webkit.org/show_bug.cgi?id=39873 132002 132003 I misplaced this if statement when writing this code originally. Now 132004 that we have test coverage for this paragraph in the spec, we can see 132005 and fix the bug. 132006 132007 * html/HTML5Lexer.cpp: 132008 (WebCore::HTML5Lexer::consumeEntity): 132009 132010 2010-05-28 Adam Barth <abarth (a] webkit.org> 132011 132012 Reviewed by Eric Seidel. 132013 132014 Handle edge cases in HTML5 entity parsing 132015 https://bugs.webkit.org/show_bug.cgi?id=39823 132016 132017 The HTML5 specification tells us to handle HTML entities in a somewhat 132018 complicated way. This patch attempts to correctly handle numeric 132019 entities. Some of this code is duplicated from HTMLTokenizer. 132020 132021 * html/HTML5Lexer.cpp: 132022 (WebCore::HTMLNames::): 132023 (WebCore::HTMLNames::adjustEntity): 132024 (WebCore::HTMLNames::legalEntityFor): 132025 (WebCore::HTML5Lexer::consumeEntity): 132026 (WebCore::HTML5Lexer::processEntity): 132027 (WebCore::HTML5Lexer::nextToken): 132028 (WebCore::HTML5Lexer::emitCodePoint): 132029 * html/HTML5Lexer.h: 132030 132031 2010-05-28 Chris Fleizach <cfleizach (a] apple.com> 132032 132033 Reviewed by Beth Dakin. 132034 132035 AX: stop prepping value conversion in accessibilityAttributeValueForParameter 132036 https://bugs.webkit.org/show_bug.cgi?id=39880 132037 132038 Cleaning up a FIXME so that all values are not converted before they're needed in accessibilityAttributeValue:forParameter: 132039 132040 * accessibility/mac/AccessibilityObjectWrapper.mm: 132041 (visiblePositionForTextMarker): 132042 (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]): 132043 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 132044 132045 2010-05-28 Adam Treat <atreat (a] rim.com> 132046 132047 Reviewed by Daniel Bates. 132048 132049 RIM Bug #293 and https://bugs.webkit.org/show_bug.cgi?id=39859 132050 132051 Layout is not dependent upon ScrollView::frameRect when useFixedLayout 132052 is true. No reason to set the needs layout flag in this case. 132053 132054 * platform/ScrollView.cpp: 132055 (WebCore::ScrollView::setFrameRect): 132056 132057 2010-05-28 Mikhail Naganov <mnaganov (a] chromium.org> 132058 132059 Unreviewed. Revert 60353 -- immature. 132060 132061 https://bugs.webkit.org/show_bug.cgi?id=39646 132062 132063 * bindings/js/JSConsoleCustom.cpp: 132064 * bindings/v8/custom/V8ConsoleCustom.cpp: 132065 * page/Console.cpp: 132066 * page/Console.h: 132067 * page/Console.idl: 132068 132069 2010-05-27 Darin Adler <darin (a] apple.com> 132070 132071 Reviewed by David Levin. 132072 132073 Make more HTML DOM members private, especially constructors, batch 2 132074 https://bugs.webkit.org/show_bug.cgi?id=39706 132075 132076 Refactoring so no new tests. 132077 132078 Worked my way up from the bottom of HTMLTagNames.in. 132079 132080 * html/HTMLTagNames.in: Removed createWithNew from keygen, listing, 132081 map, marquee, menu, meta, ol, optgroup, option, p, param, pre, 132082 script, select, source, style, table, tbody, td, textarea, tfoot, 132083 th, thead, title, tr, ul, video, xmp, and noscript. 132084 132085 * editing/htmlediting.cpp: 132086 (WebCore::createOrderedListElement): Use create function instead of new. 132087 (WebCore::createUnorderedListElement): Ditto. 132088 * html/HTMLParser.cpp: 132089 (WebCore::HTMLParser::handleError): Ditto. 132090 (WebCore::HTMLParser::mapCreateErrorCheck): Ditto. 132091 * html/HTMLViewSourceDocument.cpp: 132092 (WebCore::HTMLViewSourceDocument::createContainingTable): Ditto. 132093 (WebCore::HTMLViewSourceDocument::addLine): Ditto. 132094 132095 * html/HTMLKeygenElement.cpp: 132096 (WebCore::HTMLKeygenElement::HTMLKeygenElement): Use create function 132097 instead of new. 132098 (WebCore::HTMLKeygenElement::create): Added. 132099 * html/HTMLKeygenElement.h: Made constructor and virtual function 132100 overrides private, added create function. 132101 132102 * html/HTMLMapElement.cpp: 132103 (WebCore::HTMLMapElement::HTMLMapElement): 132104 (WebCore::HTMLMapElement::create): 132105 * html/HTMLMapElement.h: 132106 * html/HTMLMarqueeElement.cpp: 132107 (WebCore::HTMLMarqueeElement::HTMLMarqueeElement): 132108 (WebCore::HTMLMarqueeElement::create): 132109 * html/HTMLMarqueeElement.h: 132110 * html/HTMLMenuElement.cpp: 132111 (WebCore::HTMLMenuElement::HTMLMenuElement): 132112 (WebCore::HTMLMenuElement::create): 132113 * html/HTMLMenuElement.h: 132114 * html/HTMLMetaElement.cpp: 132115 (WebCore::HTMLMetaElement::HTMLMetaElement): 132116 (WebCore::HTMLMetaElement::create): 132117 * html/HTMLMetaElement.h: 132118 * html/HTMLNoScriptElement.cpp: 132119 (WebCore::HTMLNoScriptElement::HTMLNoScriptElement): 132120 (WebCore::HTMLNoScriptElement::create): 132121 (WebCore::HTMLNoScriptElement::childShouldCreateRenderer): 132122 * html/HTMLNoScriptElement.h: 132123 * html/HTMLOListElement.cpp: 132124 (WebCore::HTMLOListElement::HTMLOListElement): 132125 (WebCore::HTMLOListElement::create): 132126 * html/HTMLOListElement.h: 132127 * html/HTMLOptGroupElement.cpp: 132128 (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): 132129 (WebCore::HTMLOptGroupElement::create): 132130 * html/HTMLOptGroupElement.h: 132131 * html/HTMLOptionElement.cpp: 132132 (WebCore::HTMLOptionElement::HTMLOptionElement): 132133 (WebCore::HTMLOptionElement::create): 132134 * html/HTMLOptionElement.h: 132135 * html/HTMLParagraphElement.cpp: 132136 (WebCore::HTMLParagraphElement::HTMLParagraphElement): 132137 (WebCore::HTMLParagraphElement::create): 132138 * html/HTMLParagraphElement.h: 132139 * html/HTMLParamElement.cpp: 132140 (WebCore::HTMLParamElement::HTMLParamElement): 132141 (WebCore::HTMLParamElement::create): 132142 * html/HTMLParamElement.h: 132143 * html/HTMLPreElement.cpp: 132144 (WebCore::HTMLPreElement::HTMLPreElement): 132145 (WebCore::HTMLPreElement::create): 132146 * html/HTMLPreElement.h: 132147 * html/HTMLQuoteElement.cpp: 132148 (WebCore::HTMLQuoteElement::HTMLQuoteElement): 132149 (WebCore::HTMLQuoteElement::create): 132150 * html/HTMLQuoteElement.h: 132151 * html/HTMLScriptElement.cpp: 132152 (WebCore::HTMLScriptElement::HTMLScriptElement): 132153 (WebCore::HTMLScriptElement::create): 132154 * html/HTMLScriptElement.h: 132155 * html/HTMLSelectElement.cpp: 132156 (WebCore::HTMLSelectElement::create): 132157 * html/HTMLSelectElement.h: 132158 * html/HTMLSourceElement.cpp: 132159 (WebCore::HTMLSourceElement::HTMLSourceElement): 132160 (WebCore::HTMLSourceElement::create): 132161 * html/HTMLSourceElement.h: 132162 * html/HTMLStyleElement.cpp: 132163 (WebCore::HTMLStyleElement::HTMLStyleElement): 132164 (WebCore::HTMLStyleElement::create): 132165 * html/HTMLStyleElement.h: 132166 * html/HTMLTableRowElement.cpp: 132167 (WebCore::HTMLTableRowElement::HTMLTableRowElement): 132168 (WebCore::HTMLTableRowElement::create): 132169 (WebCore::HTMLTableRowElement::insertCell): 132170 * html/HTMLTableRowElement.h: 132171 * html/HTMLTableSectionElement.cpp: 132172 (WebCore::HTMLTableSectionElement::HTMLTableSectionElement): 132173 (WebCore::HTMLTableSectionElement::create): 132174 (WebCore::HTMLTableSectionElement::insertRow): 132175 * html/HTMLTableSectionElement.h: 132176 * html/HTMLTextAreaElement.cpp: 132177 (WebCore::HTMLTextAreaElement::create): 132178 * html/HTMLTextAreaElement.h: 132179 * html/HTMLTitleElement.cpp: 132180 (WebCore::HTMLTitleElement::HTMLTitleElement): 132181 (WebCore::HTMLTitleElement::create): 132182 * html/HTMLTitleElement.h: 132183 * html/HTMLUListElement.cpp: 132184 (WebCore::HTMLUListElement::HTMLUListElement): 132185 (WebCore::HTMLUListElement::create): 132186 * html/HTMLUListElement.h: 132187 * html/HTMLVideoElement.cpp: 132188 (WebCore::HTMLVideoElement::HTMLVideoElement): 132189 (WebCore::HTMLVideoElement::create): 132190 * html/HTMLVideoElement.h: 132191 Made constructors and virtual function overrides private, added 132192 create function. 132193 132194 * html/HTMLTableCellElement.cpp: 132195 (WebCore::HTMLTableCellElement::HTMLTableCellElement): Updated 132196 names of data members. Renamed _row to m_row, _col to m_col, 132197 rSpan to m_rowSpan, cSpan to m_colSpan, and removed unused 132198 rowHeight and m_solid. 132199 (WebCore::HTMLTableCellElement::create): Added. 132200 (WebCore::HTMLTableCellElement::parseMappedAttribute): Updated names. 132201 * html/HTMLTableCellElement.h: Ditto. 132202 132203 * html/HTMLTableElement.cpp: 132204 (WebCore::HTMLTableElement::create): Added. 132205 (WebCore::HTMLTableElement::createTHead): Used create instead of new. 132206 (WebCore::HTMLTableElement::createTFoot): Ditto. 132207 (WebCore::HTMLTableElement::insertRow): Ditto. 132208 * html/HTMLTableElement.h: 132209 132210 * html/HTMLTablePartElement.h: Made members protected instead of 132211 public. 132212 132213 2010-05-28 Andreas Kling <andreas.kling (a] nokia.com> 132214 132215 Reviewed by Kenneth Rohde Christiansen. 132216 132217 [Qt] REGRESSION(r59837): Incorrect clipping of TransparencyLayers 132218 https://bugs.webkit.org/show_bug.cgi?id=39784 132219 132220 Move coordinate transformation from TransparencyLayer to clipToImageBuffer() 132221 132222 * platform/graphics/qt/GraphicsContextQt.cpp: 132223 (WebCore::TransparencyLayer::TransparencyLayer): 132224 (WebCore::GraphicsContext::clipToImageBuffer): 132225 132226 2010-05-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 132227 132228 Reviewed by Kenneth Rohde Christiansen. 132229 132230 [EF] Implement methods for supporting PopupMenu 132231 https://bugs.webkit.org/show_bug.cgi?id=39629 132232 132233 * platform/PopupMenu.h: add needed attribute 132234 * platform/efl/PopupMenuEfl.cpp: implement methods to show/hide popup 132235 menu 132236 (WebCore::PopupMenu::PopupMenu): initialize new attribute 132237 (WebCore::PopupMenu::show): ditto. 132238 (WebCore::PopupMenu::hide): ditto. 132239 132240 2010-05-28 Lucas De Marchi <lucas.demarchi (a] profusion.mobi> 132241 132242 Reviewed by Kenneth Rohde Christiansen. 132243 132244 Reorder class initializers to remove compiler warnings. 132245 https://bugs.webkit.org/show_bug.cgi?id=39596 132246 132247 * platform/efl/PlatformKeyboardEventEfl.cpp: ditto. 132248 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): ditto. 132249 * platform/efl/PlatformMouseEventEfl.cpp: ditto. 132250 (WebCore::PlatformMouseEvent::PlatformMouseEvent): ditto. 132251 * platform/efl/PlatformWheelEventEfl.cpp: ditto 132252 (WebCore::PlatformWheelEvent::PlatformWheelEvent): ditto. 132253 132254 2010-05-27 Jeremy Orlow <jorlow (a] chromium.org> 132255 132256 Reviewed by Steve Block. 132257 132258 Add IndexedDB's IDBIndex 132259 https://bugs.webkit.org/show_bug.cgi?id=39850 132260 132261 Flesh out IDBIndex as much as possible until Andrei finishes 132262 his patch to get around passing Frame*'s all around. I also 132263 cleaned up a bunch of existing files as I noticed style 132264 violations (while basing my new files off of the old). 132265 132266 Not hooked up enough to test. Will add tests soon. 132267 132268 * Android.derived.jscbindings.mk 132269 * Android.derived.v8bindings.mk 132270 * Android.mk 132271 * CMakeLists.txt 132272 * DerivedSources.cpp 132273 * DerivedSources.make 132274 * GNUmakefile.am 132275 * WebCore.pri 132276 * WebCore.pro 132277 * WebCore.gypi: 132278 * WebCore.vcproj/WebCore.vcproj 132279 * WebCore.xcodeproj/project.pbxproj 132280 * bindings/js/JSIDBAnyCustom.cpp: 132281 (WebCore::toJS): 132282 * bindings/v8/custom/V8IDBAnyCustom.cpp: 132283 (WebCore::toV8): 132284 * storage/IDBAny.cpp: 132285 (WebCore::IDBAny::idbIndexRequest): 132286 (WebCore::IDBAny::set): 132287 * storage/IDBAny.h: 132288 (WebCore::IDBAny::): 132289 * storage/IDBCallbacks.h: 132290 * storage/IDBDatabase.h: 132291 * storage/IDBDatabaseError.h: 132292 (WebCore::IDBDatabaseError::): 132293 * storage/IDBDatabaseError.idl: 132294 * storage/IDBDatabaseException.h: 132295 * storage/IDBDatabaseException.idl: 132296 * storage/IDBDatabaseImpl.cpp: 132297 * storage/IDBDatabaseImpl.h: 132298 * storage/IDBDatabaseRequest.cpp: 132299 * storage/IDBDatabaseRequest.h: 132300 * storage/IDBDatabaseRequest.idl: 132301 * storage/IDBIndex.h: Added. 132302 (WebCore::IDBIndex::~IDBIndex): 132303 * storage/IDBIndexImpl.cpp: Added. 132304 (WebCore::IDBIndexImpl::IDBIndexImpl): 132305 (WebCore::IDBIndexImpl::~IDBIndexImpl): 132306 * storage/IDBIndexImpl.h: Added. 132307 (WebCore::IDBIndexImpl::create): 132308 (WebCore::IDBIndexImpl::name): 132309 (WebCore::IDBIndexImpl::keyPath): 132310 (WebCore::IDBIndexImpl::unique): 132311 * storage/IDBIndexRequest.cpp: Added. 132312 (WebCore::IDBIndexRequest::IDBIndexRequest): 132313 (WebCore::IDBIndexRequest::~IDBIndexRequest): 132314 * storage/IDBIndexRequest.h: Added. 132315 (WebCore::IDBIndexRequest::create): 132316 (WebCore::IDBIndexRequest::name): 132317 (WebCore::IDBIndexRequest::keyPath): 132318 (WebCore::IDBIndexRequest::unique): 132319 * storage/IDBIndexRequest.idl: Added. 132320 * storage/IDBObjectStore.cpp: 132321 (WebCore::IDBObjectStore::IDBObjectStore): 132322 (WebCore::IDBObjectStore::~IDBObjectStore): 132323 (WebCore::IDBObjectStore::indexNames): 132324 (WebCore::IDBObjectStore::createIndex): 132325 (WebCore::IDBObjectStore::index): 132326 (WebCore::IDBObjectStore::removeIndex): 132327 * storage/IDBObjectStore.h: 132328 * storage/IDBObjectStoreRequest.cpp: 132329 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest): 132330 (WebCore::IDBObjectStoreRequest::name): 132331 (WebCore::IDBObjectStoreRequest::keyPath): 132332 (WebCore::IDBObjectStoreRequest::indexNames): 132333 (WebCore::IDBObjectStoreRequest::createIndex): 132334 (WebCore::IDBObjectStoreRequest::index): 132335 (WebCore::IDBObjectStoreRequest::removeIndex): 132336 * storage/IDBObjectStoreRequest.h: 132337 * storage/IDBObjectStoreRequest.idl: 132338 * storage/IDBRequest.cpp: 132339 (WebCore::IDBRequest::onSuccess): 132340 * storage/IDBRequest.h: 132341 * storage/IndexedDatabaseRequest.idl: 132342 132343 2010-05-28 Yury Semikhatsky <yurys (a] chromium.org> 132344 132345 Reviewed by Pavel Feldman. 132346 132347 Web Inspector: hide node highlight when inspected page closes. 132348 https://bugs.webkit.org/show_bug.cgi?id=39872 132349 132350 * inspector/InspectorController.cpp: 132351 (WebCore::InspectorController::~InspectorController): 132352 (WebCore::InspectorController::inspectedPageDestroyed): 132353 132354 2010-05-28 Mikhail Naganov <mnaganov (a] chromium.org> 132355 132356 Reviewed by Yury Semikhatsky. 132357 132358 Web Inspector: add Console API for retrieving memory stats 132359 132360 Add 'console.memory' property which returns an object. Currently 132361 it has two fields: totalHeapSize and usedHeapSize. Later, it can be 132362 extended for reporting total browser's memory consumption. 132363 132364 https://bugs.webkit.org/show_bug.cgi?id=39840 132365 132366 * bindings/js/JSConsoleCustom.cpp: 132367 (WebCore::JSConsole::memory): 132368 * bindings/v8/custom/V8ConsoleCustom.cpp: 132369 (WebCore::V8Console::memoryAccessorGetter): 132370 * page/Console.cpp: 132371 (WebCore::Console::memory): 132372 * page/Console.h: 132373 * page/Console.idl: 132374 132375 2010-05-28 Xan Lopez <xlopez (a] igalia.com> 132376 132377 Add new file to the build system. 132378 132379 * GNUmakefile.am: 132380 132381 2010-05-28 Antti Koivisto <koivisto (a] iki.fi> 132382 132383 Reviewed by Kenneth Rohde Christiansen. 132384 132385 https://bugs.webkit.org/show_bug.cgi?id=39874 132386 [Qt] Make tiled backing store more configurable 132387 132388 Make tile size, tile creation delay and tiling area dynamically configurable. 132389 132390 * platform/graphics/TiledBackingStore.cpp: 132391 (WebCore::TiledBackingStore::TiledBackingStore): 132392 (WebCore::TiledBackingStore::setTileSize): 132393 (WebCore::TiledBackingStore::setTileCreationDelay): 132394 (WebCore::TiledBackingStore::setKeepAndCoverAreaMultipliers): 132395 (WebCore::TiledBackingStore::createTiles): 132396 * platform/graphics/TiledBackingStore.h: 132397 (WebCore::TiledBackingStore::tileSize): 132398 (WebCore::TiledBackingStore::tileCreationDelay): 132399 (WebCore::TiledBackingStore::getKeepAndCoverAreaMultipliers): 132400 132401 2010-05-28 Eric Seidel <eric (a] webkit.org> 132402 132403 Reviewed by Adam Barth. 132404 132405 document.write does not work correctly in the HTML5 parser 132406 https://bugs.webkit.org/show_bug.cgi?id=39828 132407 132408 Added a new HTML5ScriptRunnerHost interface which 132409 HTML5Tokenizer implements. This allows HTML5ScriptController 132410 to delegate the actual ScriptController::executeScript back to 132411 HTML5Tokenizer. HTML5Tokenizer saves off the current m_source 132412 before calling ScriptController::executeScript to allow safe 132413 reentrancy through document.write(). 132414 132415 * WebCore.xcodeproj/project.pbxproj: 132416 - Added HTML5ScriptRunnerHost.h 132417 * html/HTML5ScriptRunner.cpp: 132418 (WebCore::HTML5ScriptRunner::HTML5ScriptRunner): 132419 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner): 132420 - Unregister m_parsingBlockingScript if stopped before 132421 load completion. This was probably causing some of the 132422 crashes on page navigation we saw during LayoutTest runs. 132423 (WebCore::documentURLForScriptExecution): 132424 - Unify our documentURL handling so all callsites get it right. 132425 (WebCore::HTML5ScriptRunner::sourceFromPendingScript): 132426 - Use documentURLForScriptExecution 132427 (WebCore::HTML5ScriptRunner::executePendingScript): 132428 - Call stopWatchingForLoad instead of removeClient() 132429 - Call executeScript instead of ScriptController directly. 132430 (WebCore::HTML5ScriptRunner::executeScript): 132431 - Wraps calls to HTML5ScriptRunnerHost::executeScript 132432 (WebCore::HTML5ScriptRunner::watchForLoad): 132433 - Wraps calls to HTML5ScriptRunnerHost::watchForLoad 132434 (WebCore::HTML5ScriptRunner::stopWatchingForLoad): 132435 - Wraps calls to HTML5ScriptRunnerHost::stopWatchingForLoad 132436 (WebCore::HTML5ScriptRunner::requestScript): 132437 - Only watch for load if the CachedScript isn't already loaded. 132438 This gets rid of rentrancy due to addClient calls, and as a result 132439 also stops us from hitting ASSERT(m_scriptNestingLevel) 132440 in executePendingScript. 132441 (WebCore::HTML5ScriptRunner::runScript): 132442 - Use the new fancy documentURLForScriptExecution and executeScript. 132443 * html/HTML5ScriptRunner.h: 132444 (WebCore::HTML5ScriptRunner::PendingScript::PendingScript): 132445 - Add a watchingForLoad bool so we know if we ever called watchForLoad 132446 with this CachedScript*. 132447 * html/HTML5ScriptRunnerHost.h: Added. 132448 (WebCore::HTML5ScriptRunnerHost::~HTML5ScriptRunnerHost): 132449 * html/HTML5Tokenizer.cpp: 132450 (WebCore::HTML5Tokenizer::HTML5Tokenizer): 132451 - Store an m_document pointer since we need to access 132452 m_document->frame()->script() for script execution. 132453 (WebCore::HTML5Tokenizer::pumpLexer): 132454 - Always pause or unpause the TreeBuilder after script execution. 132455 Previously nested script execution would leave the TreeBuilder 132456 paused even though the top-level loop wanted to resume parsing. 132457 Now whenever m_scriptRunner->execute returns "continue parsing" 132458 parsing will actually continue. This fixed cases where we would 132459 ignore the rest of the document after document.write() of a script tag. 132460 (WebCore::HTML5Tokenizer::write): 132461 - Explain how document.write() reentrancy is safe in the new world. 132462 (WebCore::HTML5Tokenizer::watchForLoad): 132463 - HTML5ScriptRunnerHost implementation. We assert that this call will 132464 never cause script execution since that's our current design. 132465 (WebCore::HTML5Tokenizer::stopWatchingForLoad): 132466 - HTML5ScriptRunnerHost implementation. 132467 (WebCore::HTML5Tokenizer::executeScript): 132468 - HTML5ScriptRunnerHost implementation. Save off the current source 132469 before executing scripts in case document.write is called during 132470 script execution. 132471 * html/HTML5Tokenizer.h: 132472 - Implement HTML5ScriptRunnerHost. 132473 132474 2010-05-28 Nathan Lawrence <nlawrence (a] apple.com> 132475 132476 Reviewed by Geoffrey Garen. 132477 132478 https://bugs.webkit.org/show_bug.cgi?id=39460 132479 132480 Because not just <img> and <image> elements can preload images, we 132481 dont want to restrict the element associated with the loader. 132482 132483 No new tests. Should share the same tests as the last patch. 132484 132485 * html/HTMLImageLoader.cpp: 132486 (WebCore::HTMLImageLoader::notifyFinished): 132487 132488 2010-05-27 MORITA Hajime <morrita (a] google.com> 132489 132490 Reviewed by Ojan Vafai. 132491 132492 Cursor movement and text selection does not work well if a block is followed by an inline. 132493 https://bugs.webkit.org/show_bug.cgi?id=32123 132494 132495 RenderInline::setSelectionState() missed selection state 132496 propagation for ancestors. This fix pulled 132497 RenderBlock::setSelectionState() up to RenderBoxModelObject, to 132498 share it with RenderInline. 132499 132500 Test: editing/selection/range-between-block-and-inline.html: Added. 132501 132502 * rendering/RenderBlock.cpp: 132503 * rendering/RenderBlock.h: 132504 * rendering/RenderBoxModelObject.cpp: 132505 (WebCore::RenderBoxModelObject::setSelectionState): 132506 * rendering/RenderBoxModelObject.h: 132507 Moved setSelectionState() from RenderBlock to RenderBoxModelObject. 132508 132509 2010-05-27 MORITA Hajime <morrita (a] google.com> 132510 132511 Not reviewed. Fixed typo 132512 132513 * rendering/RenderTheme.cpp: 132514 (WebCore::RenderTheme::adjustStyle): 132515 132516 2010-05-27 Darin Adler <darin (a] apple.com> 132517 132518 Reviewed by David Levin. 132519 132520 Make more HTML DOM members private, especially constructors 132521 https://bugs.webkit.org/show_bug.cgi?id=39697 132522 132523 Refactoring, so no new tests needed. 132524 132525 Working my way through HTMLTagNames.in from top to bottom, skipping any 132526 that are non-trivial for some reason. 132527 132528 * html/HTMLTagNames.in: Removed createWithNew from audio, base, basefont, 132529 blockquote, body, br, button, canvas, caption, col, colgroup, datagrid, 132530 datalist, dcell, dcol, drow, del, dir, dl, and fieldset. 132531 132532 * mathml/mathtags.in: Removed createWithNew from msub, and msup. 132533 132534 * dom/Document.cpp: 132535 (WebCore::Document::implicitClose): Use create function instead of new. 132536 (WebCore::Document::getCSSCanvasElement): Ditto. 132537 * editing/IndentOutdentCommand.cpp: 132538 (WebCore::createIndentBlockquoteElement): Ditto. 132539 * editing/htmlediting.cpp: 132540 (WebCore::createBreakElement): Ditto. 132541 * html/HTMLTableElement.cpp: 132542 (WebCore::HTMLTableElement::createCaption): Ditto. 132543 * html/HTMLViewSourceDocument.cpp: 132544 (WebCore::HTMLViewSourceDocument::createContainingTable): Ditto. 132545 * rendering/RenderTextControl.cpp: 132546 (WebCore::RenderTextControl::setInnerTextValue): Ditto. 132547 132548 * html/HTMLParser.cpp: 132549 (WebCore::HTMLParser::handleError): Use create function instead of new. 132550 Required reordering the code slightly, but the new order works fine. 132551 132552 * html/HTMLAudioElement.cpp: 132553 (WebCore::HTMLAudioElement::create): 132554 * html/HTMLAudioElement.h: 132555 * html/HTMLBRElement.cpp: 132556 (WebCore::HTMLBRElement::create): 132557 * html/HTMLBRElement.h: 132558 * html/HTMLBaseElement.cpp: 132559 (WebCore::HTMLBaseElement::create): 132560 * html/HTMLBaseElement.h: 132561 * html/HTMLBaseFontElement.cpp: 132562 (WebCore::HTMLBaseFontElement::create): 132563 * html/HTMLBaseFontElement.h: 132564 * html/HTMLBlockquoteElement.cpp: 132565 (WebCore::HTMLBlockquoteElement::create): 132566 * html/HTMLBlockquoteElement.h: 132567 * html/HTMLBodyElement.cpp: 132568 (WebCore::HTMLBodyElement::create): 132569 * html/HTMLBodyElement.h: 132570 * html/HTMLButtonElement.cpp: 132571 (WebCore::HTMLButtonElement::create): 132572 * html/HTMLButtonElement.h: 132573 * html/HTMLCanvasElement.cpp: 132574 (WebCore::HTMLCanvasElement::create): 132575 * html/HTMLCanvasElement.h: 132576 * html/HTMLDListElement.cpp: 132577 (WebCore::HTMLDListElement::create): 132578 * html/HTMLDListElement.h: 132579 * html/HTMLDataGridCellElement.cpp: 132580 (WebCore::HTMLDataGridCellElement::create): 132581 * html/HTMLDataGridCellElement.h: 132582 * html/HTMLDataGridColElement.cpp: 132583 (WebCore::HTMLDataGridColElement::create): 132584 * html/HTMLDataGridColElement.h: 132585 * html/HTMLDataGridElement.cpp: 132586 (WebCore::HTMLDataGridElement::create): 132587 * html/HTMLDataGridElement.h: 132588 * html/HTMLDataGridRowElement.cpp: 132589 (WebCore::HTMLDataGridRowElement::create): 132590 * html/HTMLDataGridRowElement.h: 132591 * html/HTMLDataListElement.cpp: 132592 (WebCore::HTMLDataListElement::create): 132593 * html/HTMLDataListElement.h: 132594 * html/HTMLElement.cpp: 132595 (WebCore::HTMLElement::setInnerText): 132596 * html/HTMLFieldSetElement.cpp: 132597 (WebCore::HTMLFieldSetElement::create): 132598 * html/HTMLFieldSetElement.h: 132599 * html/HTMLModElement.cpp: 132600 (WebCore::HTMLModElement::HTMLModElement): 132601 (WebCore::HTMLModElement::create): 132602 * html/HTMLModElement.h: 132603 * html/HTMLTableCaptionElement.cpp: 132604 (WebCore::HTMLTableCaptionElement::create): 132605 * html/HTMLTableCaptionElement.h: 132606 Made constructors and virtual function overrides private, added create functions. 132607 Made constructors inline in cases where they were called in only one place. 132608 132609 * html/HTMLTableColElement.cpp: 132610 (WebCore::HTMLTableColElement::HTMLTableColElement): Changed data member name 132611 from _span to m_span. 132612 (WebCore::HTMLTableColElement::create): Added. 132613 (WebCore::HTMLTableColElement::parseMappedAttribute): Updated to use m_span. 132614 * html/HTMLTableColElement.h: 132615 Made constructor and virtual function overrides private, added create function. 132616 Renamed _span to m_span. 132617 132618 2010-05-27 Kwang Yul Seo <skyul (a] company100.net> 132619 132620 Reviewed by Darin Adler. 132621 132622 wx port: build fix for Linux 132623 https://bugs.webkit.org/show_bug.cgi?id=39860 132624 132625 Use uint16_t instead of uint16. 132626 132627 * plugins/PluginPackageNone.cpp: 132628 (WebCore::PluginPackage::NPVersion): 132629 132630 2010-05-27 Nathan Lawrence <nlawrence (a] apple.com> 132631 132632 Reviewed by Geoffrey Garen. 132633 132634 https://bugs.webkit.org/show_bug.cgi?id=39460 132635 132636 Fixes the issue where images prefetched by JavaScript do not report 132637 their memory usage to the GC. 132638 132639 There is a new test manual-tests/image-prefetch-stress.html that loads 132640 a new 4MB image every half a second. 132641 132642 * html/HTMLImageLoader.cpp: 132643 (WebCore::HTMLImageLoader::notifyFinished): 132644 * manual-tests/image-prefetch-stress.html: Added. 132645 132646 2010-05-27 Eric Uhrhane <ericu (a] chromium.org> 132647 132648 Reviewed by Adam Barth. 132649 132650 Add v8 bindings for async DB API in workers 132651 https://bugs.webkit.org/show_bug.cgi?id=39145 132652 132653 No new tests. This should share layout tests with JSC. 132654 132655 Tweak the callback generation to switch lots of Frame* to ScriptExecutionContext*, and use the context passed in to handleEvent where possible. 132656 * bindings/scripts/CodeGeneratorV8.pm: 132657 132658 As with CodeGeneratorV8; these are pretty much all tiny tweaks. 132659 We do have to use a slightly different patch for callback invocation in invokeCallback, as V8Proxy::retrieve() doesn't work in the worker context. 132660 * bindings/v8/custom/V8CustomPositionCallback.cpp: 132661 (WebCore::V8CustomPositionCallback::handleEvent): 132662 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: 132663 (WebCore::V8CustomPositionErrorCallback::handleEvent): 132664 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: 132665 (WebCore::V8SQLStatementErrorCallback::handleEvent): 132666 * bindings/v8/custom/V8CustomVoidCallback.cpp: 132667 (WebCore::V8CustomVoidCallback::V8CustomVoidCallback): 132668 (WebCore::V8CustomVoidCallback::handleEvent): 132669 (WebCore::invokeCallback): 132670 * bindings/v8/custom/V8CustomVoidCallback.h: 132671 (WebCore::V8CustomVoidCallback::create): 132672 * bindings/v8/custom/V8DOMWindowCustom.cpp: 132673 (WebCore::V8DOMWindow::openDatabaseCallback): 132674 * bindings/v8/custom/V8DatabaseCustom.cpp: 132675 (WebCore::V8Database::changeVersionCallback): 132676 (WebCore::createTransaction): 132677 * bindings/v8/custom/V8DatabaseSyncCustom.cpp: 132678 (WebCore::V8DatabaseSync::changeVersionCallback): 132679 (WebCore::createTransaction): 132680 * bindings/v8/custom/V8NotificationCenterCustom.cpp: 132681 (WebCore::V8NotificationCenter::requestPermissionCallback): 132682 * bindings/v8/custom/V8SQLTransactionCustom.cpp: 132683 (WebCore::V8SQLTransaction::executeSqlCallback): 132684 132685 Add openDatabaseCallback. 132686 * bindings/v8/custom/V8WorkerContextCustom.cpp: 132687 (WebCore::V8WorkerContext::openDatabaseCallback): 132688 Remove an obsolete parameter. 132689 (WebCore::V8WorkerContext::openDatabaseSyncCallback): 132690 132691 2010-05-27 Pavel Feldman <pfeldman (a] chromium.org> 132692 132693 Reviewed by Yury Semikhatsky. 132694 132695 Web Inspector: [REGRESSION] Query parameters are not displayed in the resources headers section. 132696 132697 https://bugs.webkit.org/show_bug.cgi?id=39848 132698 132699 * inspector/front-end/ResourceView.js: 132700 (WebInspector.ResourceView): 132701 (WebInspector.ResourceView.prototype._refreshRequestPayload): 132702 132703 2010-05-27 Nico Weber <thakis (a] chromium.org> 132704 132705 Reviewed by Eric Seidel 132706 132707 https://bugs.webkit.org/show_bug.cgi?id=39092 132708 132709 Add Yank support to chromium mac. Do this by moving WebKit Mac's 132710 implementation of Editor::yankFromKillRing() into its own class and 132711 then using that. 132712 132713 * editing/Editor.cpp: 132714 Use new KillRing class. 132715 * editing/Editor.h: 132716 (WebCore::Editor::killRing): 132717 Use new KillRing class. 132718 * editing/EditorCommand.cpp: 132719 (WebCore::executeYankAndSelect): 132720 Use new KillRing class. 132721 * platform/KillRing.h: 132722 Add new KillRing class, which acts as null object. 132723 (WebCore::KillRing::~KillRing): 132724 * platform/mac/KillRingMac.h: 132725 Add new KillRingMac class, which writes to the mac's kill ring. 132726 * platform/mac/KillRingMac.mm: 132727 Add new KillRingMac class, which writes to the mac's kill ring. 132728 132729 2010-05-27 Ben Murdoch <benm (a] google.com> 132730 132731 Reviewed by Jian Li. 132732 132733 Build break in FileStream.cpp 132734 https://bugs.webkit.org/show_bug.cgi?id=39841 132735 132736 When ENABLE_BLOB_SLICE is not defined, an undefined variable is used 132737 in FileStream.cpp:114. Fix by using the correct variable. 132738 132739 Build fix so no new tests. 132740 132741 * html/FileStream.cpp: 132742 (WebCore::FileStream::openForRead): Replace undefined variable with a defined one. 132743 132744 2010-05-27 Hans Wennborg <hans (a] chromium.org> 132745 132746 Reviewed by Jeremy Orlow. 132747 132748 [Chromium] Default popup window size should not depend on zoom level 132749 https://bugs.webkit.org/show_bug.cgi?id=39835 132750 132751 V8DOMWindow::openCallback should not set width and height of new 132752 window unless specified in the function's arguments. 132753 132754 There is already code to reset the new window's origin coordinates, 132755 but the same thing should be done to its dimensions as well. Otherwise, 132756 a new popup with unspecified size will have its size depending on the 132757 parent's zoom level, which is not desirable. 132758 132759 This is the same as what is done in 132760 bindings/js/JSDOMWindowCustom.cpp:826. 132761 132762 * bindings/v8/custom/V8DOMWindowCustom.cpp: 132763 (WebCore::V8DOMWindow::openCallback): 132764 132765 2010-05-27 Anders Bakken <agbakken (a] gmail.com> 132766 132767 Reviewed by David Levin. 132768 132769 qt_instance.cpp has coding-style errors 132770 https://bugs.webkit.org/show_bug.cgi?id=39744 132771 132772 Fix webkit coding style issues in qt_instance.cpp 132773 132774 * bridge/qt/qt_instance.cpp: 132775 (JSC::Bindings::QtInstance::getQtInstance): 132776 (JSC::Bindings::QtInstance::removeCachedMethod): 132777 (JSC::Bindings::QtInstance::markAggregate): 132778 (JSC::Bindings::QtInstance::getPropertyNames): 132779 (JSC::Bindings::QtInstance::stringValue): 132780 (JSC::Bindings::QtField::name): 132781 (JSC::Bindings::QtField::valueFromInstance): 132782 132783 2010-05-27 Anders Bakken <agbakken (a] gmail.com> 132784 132785 Reviewed by David Levin. 132786 132787 qt_instance.h has coding-style errors 132788 https://bugs.webkit.org/show_bug.cgi?id=39743 132789 132790 Fix webkit coding style issues in qt_instance.h 132791 132792 * bridge/qt/qt_instance.h: 132793 132794 2010-05-27 Anders Bakken <agbakken (a] gmail.com> 132795 132796 Reviewed by David Levin. 132797 132798 qt_class.h has coding-style errors 132799 https://bugs.webkit.org/show_bug.cgi?id=39742 132800 132801 Fix webkit coding style issues in qt_class.h 132802 132803 * bridge/qt/qt_class.h: 132804 132805 2010-05-27 Eric Carlson <eric.carlson (a] apple.com> 132806 132807 Reviewed by Darin Adler. 132808 132809 <rdar://problem/8016158> Crash in CVPixelBufferCreateResolvedAttributesDictionary with RLE 132810 compressed movie. 132811 132812 Configure the visual context to generate Direct3D compatible pixel buffers when we are able to 132813 use a CAImageQueue so there will be less conversion required before display. This change also 132814 works around the issue that causes the RLE compressed movie to crash. 132815 132816 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 132817 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Pass enum to QTMovieVisualContext 132818 constructor instead of CFDictionary. 132819 * platform/graphics/win/QTMovieVisualContext.cpp: 132820 (SetNumberValue): 132821 (getPixelBufferCreationOptions): New, create options dictionary appropriate for the visual 132822 context type. 132823 (pixelBufferCreationOptions): New, return options dictionary appropriate for the visual 132824 context type. 132825 (QTMovieVisualContextPriv::QTMovieVisualContextPriv): Get the options dictionary from 132826 getPixelBufferCreationOptions insteaad of taking it as a parameter. 132827 (QTMovieVisualContext::QTMovieVisualContext): Take enum instead of CFDictionary for 132828 visual context configuration type. 132829 * platform/graphics/win/QTMovieVisualContext.h: 132830 132831 2010-05-27 Anders Carlsson <andersca (a] apple.com> 132832 132833 Reviewed by Adam Roben. 132834 132835 [Qt] REGRESSION(r60258): It broke 10 tests. 132836 https://bugs.webkit.org/show_bug.cgi?id=39819 132837 132838 * plugins/qt/PluginDataQt.cpp: 132839 (WebCore::PluginData::initPlugins): 132840 Append the MimeClassInfo object after it's been initialized. 132841 132842 2010-05-27 Kevin Ollivier <kevino (a] theolliviers.com> 132843 132844 [wx] Build fixes for Windows after recent changes. 132845 132846 * platform/graphics/wx/FontWx.cpp: 132847 * wscript: 132848 132849 2010-05-27 Chris Fleizach <cfleizach (a] apple.com> 132850 132851 No review, build fixage. 132852 132853 Bug 39324 - AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle. 132854 https://bugs.webkit.org/show_bug.cgi?id=39324 132855 132856 Rolling out change from r60307 until a better fix is ready. 132857 132858 * accessibility/mac/AccessibilityObjectWrapper.mm: 132859 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 132860 132861 2010-05-27 Yury Semikhatsky <yurys (a] chromium.org> 132862 132863 Reviewed by Pavel Feldman. 132864 132865 [v8] Web Inspector: check that ScriptDebugListener was not removed 132866 while messages were dispatched in the nested loop. 132867 https://bugs.webkit.org/show_bug.cgi?id=39838 132868 132869 * bindings/v8/ScriptDebugServer.cpp: 132870 (WebCore::ScriptDebugServer::handleV8DebugEvent): 132871 132872 2010-05-27 Yury Semikhatsky <yurys (a] chromium.org> 132873 132874 Reviewed by Pavel Feldman. 132875 132876 [v8] Web Inspector: undefined script URL value should be converted to an emtpy 132877 WebCore::String instead of "undefined" string. Otherwise it's shown 132878 in the Scripts panel with "undefined:<line no>" URL. 132879 https://bugs.webkit.org/show_bug.cgi?id=39845 132880 132881 * bindings/v8/ScriptDebugServer.cpp: 132882 (WebCore::ScriptDebugServer::dispatchDidParseSource): 132883 132884 2010-05-27 Chris Fleizach <cfleizach (a] apple.com> 132885 132886 Reviewed by Darin Adler. 132887 132888 AX: WebKit doesn't call [super -accessibilityAttributeValue:attribute forParameter:] when it encounters a parameterized attribute that it doesn't handle. 132889 https://bugs.webkit.org/show_bug.cgi?id=39324 132890 132891 Make sure that accessibilityAttributeValue:forParameter: will default to its super's implementation. This is how AppKit expects objects to behave. 132892 132893 * accessibility/mac/AccessibilityObjectWrapper.mm: 132894 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 132895 132896 2010-05-27 Xan Lopez <xlopez (a] igalia.com> 132897 132898 More GTK+ distcheck fixes. 132899 132900 * GNUmakefile.am: 132901 132902 2010-05-27 Yury Semikhatsky <yurys (a] chromium.org> 132903 132904 Reviewed by Pavel Feldman. 132905 132906 [v8] Web Inspector: notify ScriptDebugListener when execution is resumed 132907 https://bugs.webkit.org/show_bug.cgi?id=39838 132908 132909 * bindings/v8/ScriptDebugServer.cpp: 132910 (WebCore::ScriptDebugServer::handleV8DebugEvent): 132911 132912 2010-05-27 Anders Bakken <agbakken (a] gmail.com> 132913 132914 Reviewed by David Levin. 132915 132916 qt_pixmapruntime.cpp has coding-style errors 132917 https://bugs.webkit.org/show_bug.cgi?id=39745 132918 132919 Fix webkit coding style issues in qt_pixmapruntime.cpp 132920 132921 * bridge/qt/qt_pixmapruntime.cpp: 132922 132923 2010-05-26 Jeremy Orlow <jorlow (a] chromium.org> 132924 132925 Reviewed by Steve Block. 132926 132927 Clean up IndexedDB layout tests 132928 https://bugs.webkit.org/show_bug.cgi?id=39748 132929 132930 Remove an assert that always fires. 132931 132932 Tests: storage/indexeddb/idb-database-request.html 132933 storage/indexeddb/indexed-database-request.html 132934 132935 * storage/IDBDatabaseImpl.cpp: 132936 (WebCore::IDBDatabaseImpl::objectStores): 132937 132938 2010-05-27 Pavel Feldman <pfeldman (a] chromium.org> 132939 132940 Reviewed by Yury Semikhatsky. 132941 132942 Web Inspector: Get CSS rule offsets lazily. 132943 132944 https://bugs.webkit.org/show_bug.cgi?id=39832 132945 132946 * inspector/InspectorCSSStore.cpp: 132947 (WebCore::InspectorCSSStore::getStartEndOffsets): 132948 * inspector/InspectorDOMAgent.cpp: 132949 (WebCore::InspectorDOMAgent::buildObjectForRule): 132950 132951 2010-05-27 Anders Bakken <agbakken (a] gmail.com> 132952 132953 Reviewed by David Levin. 132954 132955 qt_class.cpp has coding-style errors 132956 https://bugs.webkit.org/show_bug.cgi?id=39741 132957 132958 Fix webkit coding style issues in qt_class.cpp 132959 132960 * bridge/qt/qt_class.cpp: 132961 (JSC::Bindings::QtClass::fieldNamed): 132962 132963 2010-05-27 Eric Seidel <eric (a] webkit.org> 132964 132965 Reviewed by Darin Adler. 132966 132967 Remove bit-rotten INSTRUMENT_LAYOUT_SCHEDULING code from HTMLTokenizer 132968 https://bugs.webkit.org/show_bug.cgi?id=39714 132969 132970 This came from a discussion on #webkit with Hyatt about this code 132971 being old and no longer used to either of our knowledge. 132972 132973 No functional changes, thus no tests. 132974 132975 I also removed a bogus FIXME I had added in an earlier patch 132976 before I understood what the HTMLTokenizer was trying to do. 132977 132978 * html/HTMLTokenizer.cpp: 132979 (WebCore::HTMLTokenizer::scriptHandler): 132980 (WebCore::HTMLTokenizer::scriptExecution): 132981 (WebCore::HTMLTokenizer::continueProcessing): 132982 (WebCore::HTMLTokenizer::willWriteHTML): 132983 (WebCore::HTMLTokenizer::didWriteHTML): 132984 (WebCore::HTMLTokenizer::timerFired): 132985 (WebCore::HTMLTokenizer::executeExternalScriptsIfReady): 132986 132987 2010-05-27 Anton Muhin <antonm (a] chromium.org> 132988 132989 Reviewed by Adam Barth. 132990 132991 Add callbacks to ScriptController to allow notifications on named items additions and removals 132992 https://bugs.webkit.org/show_bug.cgi?id=39679 132993 132994 * bindings/js/ScriptController.h: Callbacks with empty implementation added. 132995 (WebCore::ScriptController::namedItemAdded): 132996 (WebCore::ScriptController::namedItemRemoved): 132997 * bindings/v8/ScriptController.cpp: Empty implementation of callbacks. 132998 (WebCore::ScriptController::namedItemAdded): 132999 (WebCore::ScriptController::namedItemRemoved): 133000 * bindings/v8/ScriptController.h: Callbacks added. 133001 * html/HTMLDocument.cpp: Hooking in callbacks. 133002 (WebCore::HTMLDocument::addItemToMap): 133003 (WebCore::HTMLDocument::removeItemFromMap): 133004 * html/HTMLDocument.h: 133005 133006 2010-05-27 Zhenyao Mo <zmo (a] google.com> 133007 133008 Reviewed by Dimitri Glazkov. 133009 133010 Implement lazy clearing of renderbuffers 133011 https://bugs.webkit.org/show_bug.cgi?id=36248 133012 133013 Test: fast/canvas/webgl/renderbuffer-initialization.html 133014 133015 * html/canvas/WebGLFramebuffer.cpp: 133016 (WebCore::WebGLFramebuffer::WebGLFramebuffer): Init added members. 133017 (WebCore::WebGLFramebuffer::setAttachment): Set attachment object. 133018 (WebCore::WebGLFramebuffer::onBind): Perform buffer clearing if needed. 133019 (WebCore::WebGLFramebuffer::onAttachedObjectChange): Ditto. 133020 (WebCore::WebGLFramebuffer::isUninitialized): Check whether an attached object is uninitialized renderbuffer. 133021 (WebCore::WebGLFramebuffer::setInitialized): After initialize a renderbuffer, set the flag. 133022 (WebCore::WebGLFramebuffer::initializeRenderbuffers): Clear un-initialized renderbuffers if framebuffer is complete. 133023 * html/canvas/WebGLFramebuffer.h: 133024 (WebCore::WebGLFramebuffer::isDepthAttached): Changed to check object. 133025 (WebCore::WebGLFramebuffer::isStencilAttached): Ditto. 133026 (WebCore::WebGLFramebuffer::isDepthStencilAttached): Ditto. 133027 * html/canvas/WebGLRenderbuffer.cpp: 133028 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): Init added members. 133029 * html/canvas/WebGLRenderbuffer.h: 133030 (WebCore::WebGLRenderbuffer::isInitialized): As the function name. 133031 (WebCore::WebGLRenderbuffer::setInitialized): Ditto. 133032 * html/canvas/WebGLRenderingContext.cpp: 133033 (WebCore::WebGLRenderingContext::bindFramebuffer): Call onBind(). 133034 (WebCore::WebGLRenderingContext::copyTexImage2D): Call onAttachedObjectChange(). 133035 (WebCore::WebGLRenderingContext::deleteRenderbuffer): Ditto. 133036 (WebCore::WebGLRenderingContext::deleteTexture): Ditto. 133037 (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Call setAttachment. 133038 (WebCore::WebGLRenderingContext::framebufferTexture2D): Call onAttachedObjectChange(). 133039 (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto. 133040 (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. 133041 * platform/graphics/mac/GraphicsContext3DMac.cpp: 133042 (WebCore::GraphicsContext3D::reshape): Initialize internal buffers. 133043 133044 2010-05-27 Kristian Monsen <kristianm (a] google.com> 133045 133046 Reviewed by Darin Adler. 133047 133048 Compile fix for Android, added include for Refcounted.h, this did not get 133049 included through Threading.h in Android. 133050 https://bugs.webkit.org/show_bug.cgi?id=39678 133051 133052 Build fix only, no new tests. 133053 133054 * storage/SQLTransactionSyncCallback.h: 133055 133056 2010-05-27 Joone Hur <joone (a] kldp.org> 133057 133058 Reviewed by Xan Lopez. 133059 133060 Add GtkVersioning.h in ScrollbackGtk.cpp for maintaining compatibility with the previous GTK+ 133061 133062 https://bugs.webkit.org/show_bug.cgi?id=39567 133063 133064 * platform/gtk/ScrollbarGtk.cpp: 133065 133066 2010-05-27 Hans Wennborg <hans (a] chromium.org> 133067 133068 Reviewed by Alexey Proskuryakov. 133069 133070 Increase limit on number of (i)frames from 200 to 1000. 133071 https://bugs.webkit.org/show_bug.cgi?id=39427 133072 133073 The limit on number of iframes was introduced in r3707 back in 2003. 133074 An example of a page that is broken because of this is: 133075 http://vimcolorschemetest.googlecode.com/svn/html/index-c.html 133076 Neither Firefox nor IE has such a limit. 133077 133078 It seems that WebKit can handle a significantly higher number of frames, and 133079 the original reasons for imposing the limit are believed to be gone. 133080 133081 Tests: compositing/iframes/lots-of-iframes.html 133082 compositing/iframes/lots-of-objects.html 133083 133084 * html/HTMLFrameElementBase.cpp: 133085 (WebCore::HTMLFrameElementBase::isURLAllowed): 133086 * page/FrameTree.cpp: 133087 (WebCore::FrameTree::uniqueChildName): 133088 * page/Page.h: 133089 * rendering/RenderEmbeddedObject.cpp: 133090 (WebCore::isURLAllowed): 133091 133092 2010-05-27 Kwang Yul Seo <skyul (a] company100.net> 133093 133094 Reviewed by Xan Lopez. 133095 133096 [GTK] writeToFile fails when length is large 133097 https://bugs.webkit.org/show_bug.cgi?id=39666 133098 133099 writeToFile forgot to increment data pointer. 133100 133101 * platform/gtk/FileSystemGtk.cpp: 133102 (WebCore::writeToFile): 133103 133104 2010-05-26 David Hyatt <hyatt (a] apple.com> 133105 133106 Reviewed by Sam Weinig. 133107 133108 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock. 133109 133110 Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the 133111 |to| argument to be a RenderBlock. 133112 133113 Add a moveChildrenTo function that can move a range of children, and patch places that were doing this 133114 by hand. 133115 133116 Make the append forms of the functions just use the insert forms with a beforeChild of 0. 133117 133118 Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the 133119 case where it does an append. 133120 133121 Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are 133122 messed up when using append/insertChildNode. 133123 133124 * rendering/RenderBlock.cpp: 133125 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): 133126 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): 133127 (WebCore::RenderBlock::createAndAppendRootInlineBox): 133128 (WebCore::RenderBlock::moveChildTo): 133129 (WebCore::RenderBlock::moveChildrenTo): 133130 (WebCore::RenderBlock::makeChildrenNonInline): 133131 (WebCore::RenderBlock::removeChild): 133132 * rendering/RenderBlock.h: 133133 (WebCore::RenderBlock::moveChildTo): 133134 (WebCore::RenderBlock::moveAllChildrenTo): 133135 (WebCore::RenderBlock::moveChildrenTo): 133136 * rendering/RenderLayer.cpp: 133137 (WebCore::RenderLayer::addChild): 133138 * rendering/RenderObjectChildList.cpp: 133139 (WebCore::RenderObjectChildList::insertChildNode): 133140 * rendering/RenderRubyBase.cpp: 133141 (WebCore::RenderRubyBase::moveInlineChildren): 133142 133143 2010-05-27 Eric Seidel <eric (a] webkit.org> 133144 133145 Reviewed by Adam Barth. 133146 133147 Add <pre>/<listing> hack to HTML5Lexer to fix the last remaining HTML5 test suite regressions 133148 https://bugs.webkit.org/show_bug.cgi?id=39818 133149 133150 HTML parsers are supposed to ignore the first \n after a <pre> or <listing> tag 133151 for authoring convenience. Our new HTML5Lexer didn't have this hack yet 133152 so there were 4 HTML5 tests failing. Fixing this fixed the last of the HTML5 133153 test suite regressions using the HTML5Lexer vs the old lexer. 133154 133155 * html/HTML5Lexer.cpp: 133156 (WebCore::HTML5Lexer::reset): 133157 (WebCore::HTML5Lexer::nextToken): 133158 * html/HTML5Lexer.h: 133159 (WebCore::HTML5Lexer::skipLeadingNewLineForListing): 133160 * html/HTML5TreeBuilder.cpp: 133161 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 133162 133163 2010-05-26 Eric Seidel <eric (a] webkit.org> 133164 133165 Reviewed by Adam Barth. 133166 133167 Teach the HTML5 parser how to handle external scripts 133168 https://bugs.webkit.org/show_bug.cgi?id=39716 133169 133170 Make it possible for the HTML5Tokenizer to run external scripts. 133171 I created a new class HTML5ScriptRunner to hold all of the 133172 script-logic which is scattered throughout the old HTMLTokenizer. 133173 133174 The design is for the HTML5Tokenizer (the "controller") to hold 133175 the Lexer, TreeBuilder and ScriptRunner. The Lexer returns back 133176 to the controller, which passes tokens to the TreeBuilder. When the 133177 treebuilder encounters a </script> tag it pauses itself and returns 133178 back to the controller which calls the ScriptRunner. The TreeBuilder 133179 is un-paused when the HTML5Tokenizer calls takeScriptToProcess(). 133180 133181 The ScriptRunner attempts to process the passed script, and additionally 133182 any blocked scripts it can. It returns to the controller indicating if 133183 parsing should continue. If not, callbacks when external scripts load 133184 or when stylesheets are finished parsing will cause the controller to 133185 kick off script execution and parsing again at a later point. 133186 133187 * WebCore.xcodeproj/project.pbxproj: 133188 - Add HTML5ScriptRunner.* 133189 * bindings/js/CachedScriptSourceProvider.h: 133190 - Add missing include discovered while building. 133191 * dom/ScriptElement.cpp: 133192 (WebCore::ScriptElement::finishParsingChildren): 133193 - Remove previous hack for inline <script> execution. 133194 * dom/ScriptElement.h: 133195 - Explain the HTML5 spec names for m_evaluated and m_createdByParser. 133196 * html/HTML5ScriptRunner.cpp: Added. 133197 (WebCore::HTML5ScriptRunner::HTML5ScriptRunner): 133198 - The HTML5Tokenizer is passed to the HTML5ScriptRunner as a 133199 CachedResourceClient. The HTML5ScriptRunner will register the 133200 HTML5Tokenizer for notifyFinished callbacks when the scripts load. 133201 The HTML5Tokenizer is expected to call the HTML5ScriptRunner to 133202 execute any loaded scripts at that point. 133203 (WebCore::HTML5ScriptRunner::~HTML5ScriptRunner): 133204 (WebCore::HTML5ScriptRunner::frame): Helper method. 133205 (WebCore::createScriptLoadEvent): Helper method. 133206 (WebCore::createScriptErrorEvent): Helper method. 133207 (WebCore::HTML5ScriptRunner::sourceFromPendingScript): 133208 - Helper method for dealing with both inline and external script types. 133209 (WebCore::HTML5ScriptRunner::isPendingScriptReady): 133210 - Helper for dealing with both inline and external scripts. 133211 (WebCore::HTML5ScriptRunner::executePendingScript): 133212 - Execute one script. Both external and inline scripts 133213 can become m_parsingBlockingScript if they can't be executed 133214 immediately after parsing. 133215 (WebCore::HTML5ScriptRunner::execute): 133216 - Takes a script element from the tree builder and tries 133217 to process it. 133218 (WebCore::HTML5ScriptRunner::executeParsingBlockingScripts): 133219 - Runs the current parsing blocking script if ready. 133220 - Running a script could add another parsing blocking script 133221 so we loop until there is no ready-to-run parsing blocking script. 133222 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForLoad): 133223 - Called by HTML5Tokenizer when a script loads. 133224 (WebCore::HTML5ScriptRunner::executeScriptsWaitingForStylesheets): 133225 - Called by HTML5Tokenizer when stylesheets complete. 133226 (WebCore::HTML5ScriptRunner::requestScript): 133227 - Transcription of the HTML5 spec. 133228 (WebCore::HTML5ScriptRunner::runScript): 133229 - Transcription of the HTML5 spec. 133230 * html/HTML5ScriptRunner.h: Added. 133231 - New class to handle script loading and execution for the HTML5 parser. 133232 * html/HTML5Tokenizer.cpp: 133233 (WebCore::HTML5Tokenizer::HTML5Tokenizer): 133234 - Create a HTML5ScriptRunner and pass it "this" as the CachedResourceClient. 133235 (WebCore::HTML5Tokenizer::pumpLexer): 133236 - When the parser is paused, try to run scripts. 133237 (WebCore::HTML5Tokenizer::write): 133238 - Only pump the lexer when the parser is not paused. 133239 (WebCore::HTML5Tokenizer::end): 133240 - finish() tells us that we've reached EOF, not end() 133241 - Only pump the lexer when the parser is not paused. 133242 (WebCore::HTML5Tokenizer::finish): 133243 - Mark EOF, and end() if we're not waiting on scripts. 133244 (WebCore::HTML5Tokenizer::isWaitingForScripts): 133245 - isPaused() seems to mean isPausedForExternalScripts(). 133246 (WebCore::HTML5Tokenizer::resumeParsingAfterScriptExecution): 133247 (WebCore::HTML5Tokenizer::notifyFinished): 133248 (WebCore::HTML5Tokenizer::executeScriptsWaitingForStylesheets): 133249 * html/HTML5Tokenizer.h: 133250 * html/HTML5TreeBuilder.cpp: 133251 (WebCore::HTML5TreeBuilder::HTML5TreeBuilder): 133252 - Add an m_isPaused flag. 133253 (WebCore::HTML5TreeBuilder::handleScriptStartTag): 133254 (WebCore::HTML5TreeBuilder::handleScriptEndTag): 133255 (WebCore::HTML5TreeBuilder::takeScriptToProcess): 133256 - Acknowledge that the caller has received the script element. 133257 It is the caller's responsibility to execute the script if necessary 133258 and re-pause the tree builder if necessary. 133259 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 133260 - Save off the current script tag so that it can be passed to 133261 the HTML5ScriptRunner when we're paused. 133262 * html/HTML5TreeBuilder.h: 133263 (WebCore::HTML5TreeBuilder::setPaused): 133264 (WebCore::HTML5TreeBuilder::isPaused): 133265 133266 2010-05-26 Adam Barth <abarth (a] webkit.org> 133267 133268 Reviewed by Darin Adler. 133269 133270 Implement SegmentedString::lookAheadSlowCase 133271 https://bugs.webkit.org/show_bug.cgi?id=39802 133272 133273 The slow case is need by the resumer test suite. Sadly, the resumer 133274 test suite is really slow and produces infinite errors (many of which 133275 are false positives). I'll land more of the resumer test suite in a 133276 future patch. 133277 133278 * platform/text/SegmentedString.cpp: 133279 (WebCore::SegmentedString::advance): 133280 * platform/text/SegmentedString.h: 133281 (WebCore::SegmentedString::lookAhead): 133282 (WebCore::SegmentedString::lookAheadIgnoringCase): 133283 (WebCore::SegmentedString::equalsLiterally): 133284 (WebCore::SegmentedString::equalsIgnoringCase): 133285 (WebCore::SegmentedString::lookAheadInline): 133286 (WebCore::SegmentedString::lookAheadSlowCase): 133287 133288 2010-05-26 Jer Noble <jer.noble (a] apple.com> 133289 133290 Patch edited by Adele Peterson and Mark Rowe. 133291 Reviewed by Eric Carlson 133292 133293 Video elements show no video on Windows machines that do not support accelerated compositing 133294 https://bugs.webkit.org/show_bug.cgi?id=39446 133295 rdar://problem/7999794 133296 133297 Create the visual context in setUpVideoRendering (as opposed to in load), and destroy it in 133298 tearDownVideoRendering (as opposed to in the destructor.) 133299 133300 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 133301 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::~MediaPlayerPrivateQuickTimeVisualContext): 133302 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Moved creation of the visual context to setUpVideoRendering. 133303 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Return early if the visual context isn't set up. 133304 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::currentRenderingMode): If the visual context isn't set up, 133305 return MediaRenderingNone. 133306 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpVideoRendering): Create the visual context. 133307 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::tearDownVideoRendering): Destroy the visual context. 133308 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::hasSetUpVideoRendering): For software rendering mode, 133309 make sure the visual context has been set up when saying the setup has been done. 133310 * platform/graphics/win/QTMovieVisualContext.cpp: 133311 (QTMovieVisualContextPriv::~QTMovieVisualContextPriv): Destruction moved to tearDownVideoRendering. 133312 Also, make sure to cancel the visual context's newImageAvailable callback in the visual context's destructor. 133313 (QTMovieVisualContext::create): Added. 133314 * platform/graphics/win/QTMovieVisualContext.h: 133315 133316 2010-05-26 Gustavo Noronha Silva <gns (a] gnome.org> 133317 133318 Build fixes for make distcheck. 133319 133320 * GNUmakefile.am: 133321 133322 2010-05-26 Zelidrag Hornung <zelidrag (a] chromium.org> 133323 133324 Reviewed by Ojan Vafai. 133325 133326 Fixed frame page up/down scrolling calculation. Made sure that the 133327 cursor moves with page up/down event. Please note that now for mac 133328 editing behavior we will scroll the content to center the cursor on 133329 page up/down while other platforms will align the cursor with the top of 133330 displayed frame. 133331 https://bugs.webkit.org/show_bug.cgi?id=38213 133332 133333 Tests: editing/input/option-page-up-down.html (fixed) 133334 editing/input/scroll-viewport-page-up-down.html 133335 133336 * WebCore.base.exp: 133337 * editing/EditorCommand.cpp: 133338 (WebCore::verticalScrollDistance): Fixed page scroll calculation. Now scroll height is calculated only from the visible portion not the entire frame height. 133339 (WebCore::executeMovePageDown): Now it can tell SelectionController to move the cursor with the page scroll up/down events. 133340 (WebCore::executeMovePageDownAndModifySelection): Ditto. 133341 (WebCore::executeMovePageUp): Ditto. 133342 (WebCore::executeMovePageUpAndModifySelection): Ditto. 133343 * editing/SelectionController.cpp: 133344 * editing/SelectionController.cpp: Exposed an enum param that lets EditorCommand.cpp control how cursor position will be aligned when page moves. 133345 (WebCore::SelectionController::setSelection): Ditto. 133346 (WebCore::SelectionController::modify): Ditto. 133347 * editing/SelectionController.h: Ditto. 133348 (WebCore::SelectionController::): Ditto. 133349 (WebCore::SelectionController::setSelection): Ditto. 133350 133351 2010-05-26 Jaime Yap <jaimeyap (a] google.com> 133352 133353 Reviewed by Pavel Feldman. 133354 133355 ScriptCallStack::callLocation() sometimes passed an empty handle to 133356 toWebCoreString() causing a null pointer deref. 133357 https://bugs.webkit.org/show_bug.cgi?id=39681 133358 133359 * bindings/v8/ScriptCallStack.cpp: 133360 (WebCore::ScriptCallStack::callLocation): 133361 133362 2010-05-26 Brian Weinstein <bweinstein (a] apple.com> 133363 133364 Reviewed by Mark Rowe. 133365 133366 Web Inspector: Tooltip on Pause on Exceptions doesn't show up until it is clicked. 133367 https://bugs.webkit.org/show_bug.cgi?id=39804 133368 133369 Initialize the title attribute of the Pause on Exceptions button when we initialize other information 133370 about it. 133371 133372 * inspector/front-end/ScriptsPanel.js: 133373 (WebInspector.ScriptsPanel): 133374 133375 2010-05-26 Adam Barth <abarth (a] webkit.org> 133376 133377 Unreviewed, rolling out r60262. 133378 http://trac.webkit.org/changeset/60262 133379 https://bugs.webkit.org/show_bug.cgi?id=39783 133380 133381 Broke every build and is blocking me from working. :( 133382 133383 * rendering/RenderBlock.cpp: 133384 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): 133385 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): 133386 (WebCore::RenderBlock::moveChildTo): 133387 (WebCore::RenderBlock::moveAllChildrenTo): 133388 (WebCore::RenderBlock::makeChildrenNonInline): 133389 (WebCore::RenderBlock::removeChild): 133390 * rendering/RenderBlock.h: 133391 * rendering/RenderLayer.cpp: 133392 (WebCore::RenderLayer::addChild): 133393 * rendering/RenderObjectChildList.cpp: 133394 (WebCore::RenderObjectChildList::insertChildNode): 133395 * rendering/RenderRubyBase.cpp: 133396 (WebCore::RenderRubyBase::moveInlineChildren): 133397 (WebCore::RenderRubyBase::moveBlockChildren): 133398 (WebCore::RenderRubyBase::mergeBlockChildren): 133399 133400 2010-05-26 Anders Carlsson <andersca (a] apple.com> 133401 133402 Unreviewed, rolling out r60256. 133403 http://trac.webkit.org/changeset/60256 133404 https://bugs.webkit.org/show_bug.cgi?id=39382 133405 133406 Causes fast/dom/prototype-inheritance-2.html to start 133407 crashing. 133408 133409 * history/PageCache.cpp: 133410 (WebCore::PageCache::PageCache): 133411 (WebCore::PageCache::add): 133412 * history/PageCache.h: 133413 (WebCore::PageCache::get): 133414 * loader/DocumentLoader.cpp: 133415 (WebCore::DocumentLoader::commitIfReady): 133416 * loader/FrameLoader.cpp: 133417 (WebCore::FrameLoader::canCachePageContainingThisFrame): 133418 (WebCore::FrameLoader::canCachePage): 133419 (WebCore::pageCacheLogPrefix): 133420 (WebCore::pageCacheLog): 133421 (WebCore::FrameLoader::logCanCachePageDecision): 133422 (WebCore::FrameLoader::logCanCacheFrameDecision): 133423 (WebCore::FrameLoader::commitProvisionalLoad): 133424 (WebCore::FrameLoader::open): 133425 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): 133426 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): 133427 (WebCore::FrameLoader::cachePageForHistoryItem): 133428 (WebCore::FrameLoader::navigateToDifferentDocument): 133429 * loader/FrameLoader.h: 133430 * svg/graphics/SVGImage.cpp: 133431 (WebCore::SVGImage::dataChanged): 133432 133433 2010-05-26 David Hyatt <hyatt (a] apple.com> 133434 133435 Reviewed by Sam Weinig. 133436 133437 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up the moveChild functions on RenderBlock. 133438 133439 Eliminate the need to pass the toChildrenList to the moveChild functions by tightening up the type of the 133440 |to| argument to be a RenderBlock. 133441 133442 Add a moveChildrenTo function that can move a range of children, and patch places that were doing this 133443 by hand. 133444 133445 Make the append forms of the functions just use the insert forms with a beforeChild of 0. 133446 133447 Patch insertChildNode in RenderObjectChildList so that it passes the fullInsert parameter through in the 133448 case where it does an append. 133449 133450 Add an assert to RenderLayer that catches bad structure built when the fullInsert/Remove parameters are 133451 messed up when using append/insertChildNode. 133452 133453 * rendering/RenderBlock.cpp: 133454 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): 133455 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): 133456 (WebCore::RenderBlock::createAndAppendRootInlineBox): 133457 (WebCore::RenderBlock::moveChildTo): 133458 (WebCore::RenderBlock::moveChildrenTo): 133459 (WebCore::RenderBlock::makeChildrenNonInline): 133460 (WebCore::RenderBlock::removeChild): 133461 * rendering/RenderBlock.h: 133462 (WebCore::RenderBlock::moveChildTo): 133463 (WebCore::RenderBlock::moveAllChildrenTo): 133464 (WebCore::RenderBlock::moveChildrenTo): 133465 * rendering/RenderLayer.cpp: 133466 (WebCore::RenderLayer::addChild): 133467 * rendering/RenderObjectChildList.cpp: 133468 (WebCore::RenderObjectChildList::insertChildNode): 133469 * rendering/RenderRubyBase.cpp: 133470 (WebCore::RenderRubyBase::moveInlineChildren): 133471 133472 2010-05-26 Anders Carlsson <andersca (a] apple.com> 133473 133474 Fix GTK+ test failures. 133475 133476 * plugins/gtk/PluginDataGtk.cpp: 133477 (WebCore::PluginData::initPlugins): 133478 * plugins/win/PluginDataWin.cpp: 133479 (WebCore::PluginData::initPlugins): 133480 133481 2010-05-25 Anders Carlsson <andersca (a] apple.com> 133482 133483 Reviewed by Darin Adler. 133484 133485 Clean up MimeClassInfo and PluginInfo 133486 https://bugs.webkit.org/show_bug.cgi?id=39700 133487 133488 This gets rid of all the heap allocation from MimeClassInfo and PluginInfo. 133489 133490 It also changes the m_plugins and m_mimes vectors in PluginData to not hold heap allocated MimeClassInfo 133491 and PluginClassInfo objects. 133492 133493 * page/Page.cpp: 133494 (WebCore::Page::refreshPlugins): 133495 * plugins/MimeType.cpp: 133496 (WebCore::MimeType::type): 133497 (WebCore::MimeType::suffixes): 133498 (WebCore::MimeType::description): 133499 (WebCore::MimeType::enabledPlugin): 133500 * plugins/MimeType.h: 133501 (WebCore::MimeType::mimeClassInfo): 133502 * plugins/MimeTypeArray.cpp: 133503 (WebCore::MimeTypeArray::item): 133504 (WebCore::MimeTypeArray::canGetItemsForName): 133505 (WebCore::MimeTypeArray::namedItem): 133506 * plugins/Plugin.cpp: 133507 (WebCore::Plugin::name): 133508 (WebCore::Plugin::filename): 133509 (WebCore::Plugin::description): 133510 (WebCore::Plugin::length): 133511 (WebCore::Plugin::item): 133512 (WebCore::Plugin::canGetItemsForName): 133513 (WebCore::Plugin::namedItem): 133514 * plugins/Plugin.h: 133515 (WebCore::Plugin::pluginInfo): 133516 * plugins/PluginArray.cpp: 133517 (WebCore::PluginArray::length): 133518 (WebCore::PluginArray::item): 133519 (WebCore::PluginArray::canGetItemsForName): 133520 (WebCore::PluginArray::namedItem): 133521 (WebCore::PluginArray::pluginData): 133522 * plugins/PluginArray.h: 133523 * plugins/PluginData.cpp: 133524 (WebCore::PluginData::PluginData): 133525 (WebCore::PluginData::~PluginData): 133526 (WebCore::PluginData::supportsMimeType): 133527 (WebCore::PluginData::pluginNameForMimeType): 133528 * plugins/PluginData.h: 133529 (WebCore::operator==): 133530 (WebCore::PluginData::create): 133531 (WebCore::PluginData::disconnectPage): 133532 (WebCore::PluginData::page): 133533 (WebCore::PluginData::plugins): 133534 (WebCore::PluginData::mimes): 133535 * plugins/chromium/PluginDataChromium.cpp: 133536 (WebCore::PluginCache::reset): 133537 (WebCore::PluginCache::plugins): 133538 (WebCore::PluginData::initPlugins): 133539 (WebCore::getPluginMimeTypeFromExtension): 133540 * plugins/gtk/PluginDataGtk.cpp: 133541 (WebCore::PluginData::initPlugins): 133542 * plugins/mac/PluginDataMac.mm: 133543 (WebCore::PluginData::initPlugins): 133544 * plugins/qt/PluginDataQt.cpp: 133545 (WebCore::PluginData::initPlugins): 133546 * plugins/win/PluginDataWin.cpp: 133547 (WebCore::PluginData::initPlugins): 133548 * plugins/wx/PluginDataWx.cpp: 133549 (WebCore::PluginData::initPlugins): 133550 133551 2010-05-26 Nate Chapin <japhet (a] chromium.org> 133552 133553 Reviewed by Adam Barth. 133554 133555 Factor PageCache functionality out of FrameLoader and into 133556 PageCache. 133557 133558 https://bugs.webkit.org/show_bug.cgi?id=39382 133559 133560 Refactor only, so no new tests. 133561 133562 * history/PageCache.cpp: 133563 (WebCore::pageCacheLogPrefix): 133564 (WebCore::pageCacheLog): 133565 (WebCore::logCanCacheFrameDecision): 133566 (WebCore::logCanCachePageDecision): 133567 (WebCore::PageCache::canCachePageContainingThisFrame): 133568 (WebCore::PageCache::canCache): 133569 (WebCore::PageCache::add): 133570 (WebCore::PageCache::get): 133571 * history/PageCache.h: 133572 * loader/DocumentLoader.cpp: 133573 * loader/FrameLoader.cpp: 133574 (WebCore::FrameLoader::commitProvisionalLoad): 133575 (WebCore::FrameLoader::prepareForCachedPageRestore): 133576 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): 133577 (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): 133578 (WebCore::FrameLoader::navigateToDifferentDocument): 133579 * loader/FrameLoader.h: 133580 (WebCore::FrameLoader::quickRedirectComing): 133581 * svg/graphics/SVGImage.cpp: 133582 133583 2010-05-26 Peter Kasting <pkasting (a] google.com> 133584 133585 Reviewed by Adam Barth. 133586 133587 https://bugs.webkit.org/show_bug.cgi?id=39786 133588 Properly reset |bytes_to_consume| when reaching the "gif_done" state in 133589 the open-source GIF decoder. 133590 133591 No tests, since there's no test harness support for checking the 133592 internal ImageDecoder state values. 133593 133594 * platform/image-decoders/gif/GIFImageReader.cpp: 133595 (GIFImageReader::read): Use a macro to perform the state change, like we do everywhere else in the file. Also correctly return "failure" for certain corrupt GIFs, since that doesn't prevent their display (due to WebKit's different use of this code compared to Mozilla). 133596 133597 2010-05-26 Sheriff Bot <webkit.review.bot (a] gmail.com> 133598 133599 Unreviewed, rolling out r60251. 133600 http://trac.webkit.org/changeset/60251 133601 https://bugs.webkit.org/show_bug.cgi?id=39788 133602 133603 broke tests (Requested by dhyatt on #webkit). 133604 133605 * rendering/RenderBlock.cpp: 133606 (WebCore::RenderBlock::moveChildTo): 133607 (WebCore::RenderBlock::moveAllChildrenTo): 133608 (WebCore::RenderBlock::makeChildrenNonInline): 133609 (WebCore::RenderBlock::removeChild): 133610 * rendering/RenderBlock.h: 133611 * rendering/RenderRubyBase.cpp: 133612 (WebCore::RenderRubyBase::moveInlineChildren): 133613 (WebCore::RenderRubyBase::moveBlockChildren): 133614 (WebCore::RenderRubyBase::mergeBlockChildren): 133615 * rendering/RenderRubyRun.cpp: 133616 (WebCore::RenderRubyRun::removeChild): 133617 133618 2010-05-26 Adam Barth <abarth (a] webkit.org> 133619 133620 Reviewed by Eric Seidel. 133621 133622 Fix webkit01.dat resumer tests in HTML5 parser 133623 https://bugs.webkit.org/show_bug.cgi?id=39796 133624 133625 To match the old tokenizer, we should only flush character tokens when 133626 we reach EOF. Added a notion of a "closed" segmented string that 133627 cannot be appended to, which models EOF. 133628 133629 * html/HTML5Lexer.cpp: 133630 (WebCore::HTML5Lexer::nextToken): 133631 (WebCore::HTML5Lexer::shouldEmitBufferedCharacterToken): 133632 * html/HTML5Lexer.h: 133633 * html/HTML5Tokenizer.cpp: 133634 (WebCore::HTML5Tokenizer::pumpLexer): 133635 (WebCore::HTML5Tokenizer::write): 133636 (WebCore::HTML5Tokenizer::end): 133637 * html/HTML5Tokenizer.h: 133638 * platform/text/SegmentedString.cpp: 133639 (WebCore::SegmentedString::SegmentedString): 133640 (WebCore::SegmentedString::clear): 133641 (WebCore::SegmentedString::append): 133642 * platform/text/SegmentedString.h: 133643 (WebCore::SegmentedString::SegmentedString): 133644 (WebCore::SegmentedString::close): 133645 (WebCore::SegmentedString::isClosed): 133646 133647 2010-05-26 Adam Barth <abarth (a] webkit.org> 133648 133649 Reviewed by Eric Seidel. 133650 133651 Make HTML5 lexer not ASSERT when resuming partial parses 133652 https://bugs.webkit.org/show_bug.cgi?id=39755 133653 133654 I'm working through a variation of the webkit-runner.html test suite 133655 that stops the parser at every character to make sure we can resume 133656 parsing correctly. This patch fixes some errors caught by ASSERTs, 133657 which prevent the basic tests from running to completion. There's a 133658 bunch more work to do, however. 133659 133660 Test: html5lib/webkit-resumer.html 133661 133662 * html/HTML5Lexer.cpp: 133663 (WebCore::HTMLNames::isEndTagBufferingState): 133664 (WebCore::HTML5Lexer::nextToken): 133665 (WebCore::HTML5Lexer::addToPossibleEndTag): 133666 * html/HTML5Lexer.h: 133667 * html/HTML5Tokenizer.cpp: 133668 (WebCore::HTML5Tokenizer::write): 133669 * html/HTML5Tokenizer.h: 133670 133671 2010-05-26 Alexey Proskuryakov <ap (a] apple.com> 133672 133673 Mac 32 bit build fix. 133674 133675 * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit): 133676 Use static_cast instead of narrowPrecisionToFloat - the latter can't convert from float to float. 133677 133678 2010-05-26 David Hyatt <hyatt (a] apple.com> 133679 133680 Reviewed by Ojan. 133681 133682 https://bugs.webkit.org/show_bug.cgi?id=39783, clean up moveChild functions in RenderBlock. 133683 133684 Cut out the need to pass the to block's child list by tightening up the type of the to object 133685 from RenderObject to RenderBlock. 133686 133687 Implement the "append" versions of the move functions using their "insert" counterparts, since 133688 insertChildNode just calls appendChildNode when beforeChild is 0 anyway. 133689 133690 Add comments explaining why the default for fullRemoveInsert is false, and make sure all forms 133691 of the move functions have the optional parameter for consistency. 133692 133693 * rendering/RenderBlock.cpp: 133694 (WebCore::RenderBlock::createAndAppendRootInlineBox): 133695 (WebCore::RenderBlock::moveChildTo): 133696 (WebCore::RenderBlock::moveAllChildrenTo): 133697 (WebCore::RenderBlock::makeChildrenNonInline): 133698 (WebCore::RenderBlock::removeChild): 133699 * rendering/RenderBlock.h: 133700 (WebCore::RenderBlock::moveChildTo): 133701 (WebCore::RenderBlock::moveAllChildrenTo): 133702 * rendering/RenderRubyBase.cpp: 133703 (WebCore::RenderRubyBase::moveInlineChildren): 133704 (WebCore::RenderRubyBase::moveBlockChildren): 133705 (WebCore::RenderRubyBase::mergeBlockChildren): 133706 * rendering/RenderRubyRun.cpp: 133707 (WebCore::RenderRubyRun::removeChild): 133708 133709 2010-05-26 Dan Bernstein <mitz (a] apple.com> 133710 133711 Typed and reviewed by Alexey Proskuryakov. 133712 133713 https://bugs.webkit.org/show_bug.cgi?id=39682 133714 <rdar://problem/8026774> REGRESSION: WebKit nightly adding insane height to div at random 133715 133716 Test: fast/css/custom-font-xheight.html 133717 133718 * platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformInit): 133719 Calling an Objective C method that returns a structure with a null object can leave garbage in 133720 returned value. Custom fonts don't have an NSFont, they only have a CGFont. Call 133721 platformBoundsForGlyph() function instead, which works with CGFont. 133722 (WebCore::SimpleFontData::platformBoundsForGlyph): Fixed to work on Tiger (for fonts that 133723 have an NSFont), since this is now used in more cases. 133724 133725 2010-05-26 Beth Dakin <bdakin (a] apple.com> 133726 133727 Build fix for Mac clean builds. 133728 133729 * storage/IDBDatabaseRequest.idl: 133730 133731 2010-05-26 Eric Carlson <eric.carlson (a] apple.com> 133732 133733 Reviewed by Dan Bernstein. 133734 133735 Must not cast between CFNumberRef and CFBooleanRef. 133736 <rdar://problem/8030739> 133737 https://bugs.webkit.org/show_bug.cgi?id=39756 133738 133739 * platform/graphics/win/QTMovieVisualContext.cpp: 133740 (QTMovieVisualContext::getCGImageOptions): QuickTime assumes the value associated 133741 with kCVPixelBufferCGImageCompatibilityKey is a CFBoolean, so add one. 133742 133743 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 133744 133745 GTK+ build fix, strike two. 133746 133747 * bindings/gobject/WebKitDOMEventTarget.cpp: 133748 (webkit_dom_event_target_get_type): 133749 (webkit_dom_event_target_default_init): 133750 133751 2010-05-26 Jeremy Orlow <jorlow (a] chromium.org> 133752 133753 Unreviewed build fix for Windows + clean up the Visual Studio project. 133754 133755 * WebCore.gypi: 133756 * WebCore.vcproj/WebCore.vcproj: 133757 133758 2010-05-26 Andrei Popescu <andreip (a] google.com> 133759 133760 Reviewed by Jeremy Orlow. 133761 133762 Indexed Database component is missing IDBObjectStoreRequest interface 133763 https://bugs.webkit.org/show_bug.cgi?id=39490 133764 133765 Adding IDL and stub implementation for IDBObjectStoreRequest. 133766 133767 No new tests, indexed database isn't yet testable. 133768 133769 * DerivedSources.cpp: 133770 * DerivedSources.make: 133771 * GNUmakefile.am: 133772 * WebCore.gypi: 133773 * WebCore.pri: 133774 * WebCore.pro: 133775 * WebCore.xcodeproj/project.pbxproj: 133776 * bindings/js/JSIDBObjectStoreRequestCustom.cpp: Added. 133777 (WebCore::JSIDBObjectStoreRequest::remove): 133778 (WebCore::JSIDBObjectStoreRequest::addOrModify): 133779 (WebCore::JSIDBObjectStoreRequest::modify): 133780 (WebCore::JSIDBObjectStoreRequest::add): 133781 (WebCore::JSIDBObjectStoreRequest::get): 133782 * bindings/v8/custom/V8IDBObjectStoreRequestCustom.cpp: Added. 133783 (WebCore::V8IDBObjectStoreRequest::removeCallback): 133784 (WebCore::V8IDBObjectStoreRequest::addOrModifyCallback): 133785 (WebCore::V8IDBObjectStoreRequest::modifyCallback): 133786 (WebCore::V8IDBObjectStoreRequest::addCallback): 133787 (WebCore::V8IDBObjectStoreRequest::getCallback): 133788 * storage/IDBObjectStore.cpp: Added. 133789 * storage/IDBObjectStore.h: Added. 133790 (WebCore::IDBObjectStore::~IDBObjectStore): 133791 * storage/IDBObjectStoreRequest.cpp: Added. 133792 (WebCore::IDBObjectStoreRequest::name): 133793 (WebCore::IDBObjectStoreRequest::keyPath): 133794 (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest): 133795 * storage/IDBObjectStoreRequest.h: Added. 133796 (WebCore::IDBObjectStoreRequest::create): 133797 (WebCore::IDBObjectStoreRequest::~IDBObjectStoreRequest): 133798 * storage/IDBObjectStoreRequest.idl: Added. 133799 133800 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 133801 133802 Unreviewed GTK+ build fix. 133803 133804 Use G_DEFINE_INTERFACE only if it's available. 133805 133806 * bindings/gobject/WebKitDOMEventTarget.cpp: 133807 (webkit_dom_event_target_get_type): 133808 (webkit_dom_event_target_default_init): 133809 133810 2010-05-26 Jeremy Orlow <jorlow (a] chromium.org> 133811 133812 Reviewed by Darin Fisher. 133813 133814 Implement WebDOMStorageList and make WebIDBDatabase use it 133815 https://bugs.webkit.org/show_bug.cgi?id=39731 133816 133817 Remove unused function. 133818 133819 * dom/DOMStringList.h: 133820 133821 2010-05-26 Jessie Berlin <jberlin (a] webkit.org> 133822 133823 Reviewed by Pavel Feldman 133824 133825 Bug 31296 - Web Inspector: Should support console.groupCollapsed 133826 https://bugs.webkit.org/show_bug.cgi?id=31296 133827 133828 * inspector/InspectorController.cpp: 133829 (WebCore::InspectorController::startGroup): 133830 Set the message type based on whether or not it should be initially collapsed. 133831 * inspector/InspectorController.h: 133832 133833 * inspector/front-end/ConsoleView.js: 133834 Treat a StartGroupCollapsed message the same way as a StartGroup message, but display the tree for the group as collapsed. 133835 (WebInspector.ConsoleView.prototype.addMessage): 133836 (WebInspector.ConsoleMessage.prototype.toMessageElement): 133837 (WebInspector.ConsoleMessage.prototype.toString): 133838 (WebInspector.ConsoleGroup.prototype.addMessage): 133839 133840 * page/Console.cpp: 133841 (WebCore::Console::groupCollapsed): 133842 Create a group and indicate that it should be collapsed. 133843 * page/Console.h: 133844 Add the StartGroupCollapsed message type. 133845 133846 (WebCore::): 133847 * page/Console.idl: 133848 Create the JS bindings for groupCollapsed. 133849 133850 2010-05-26 yael aharon <yael.aharon (a] nokia.com> 133851 133852 Reviewed by Kent Tamura. 133853 133854 Support the labels attribute in labelable form controls 133855 https://bugs.webkit.org/show_bug.cgi?id=38713 133856 133857 Added a new cache type in NodeRareData to store the new cache type. 133858 This cache is created on demand. 133859 133860 Added the "labels" attribute to all form controls that support this attribute. 133861 133862 Tests: fast/forms/labels-add-htmlFor-label.html 133863 fast/forms/labels-add-parent-label.html 133864 fast/forms/labels-change-htmlFor-attribute.html 133865 fast/forms/labels-item-index.html 133866 fast/forms/labels-remove-htmlFor-attribute.html 133867 fast/forms/labels-remove-htmlFor-label.html 133868 fast/forms/labels-remove-parent-label.html 133869 fast/forms/labels-set-htmlFor-attribute.html 133870 133871 * CMakeLists.txt: 133872 * GNUmakefile.am: 133873 * WebCore.gypi: 133874 * WebCore.pro: 133875 * WebCore.vcproj/WebCore.vcproj: 133876 * WebCore.xcodeproj/project.pbxproj: 133877 * dom/Node.cpp: 133878 (WebCore::Node::notifyLocalNodeListsLabelChanged): 133879 (WebCore::Node::removeCachedLabelsNodeList): 133880 (WebCore::NodeListsNodeData::invalidateCaches): 133881 (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes): 133882 (WebCore::NodeListsNodeData::isEmpty): 133883 * dom/Node.h: 133884 * dom/NodeRareData.h: 133885 (WebCore::NodeListsNodeData::NodeListsNodeData): 133886 * html/HTMLButtonElement.idl: 133887 * html/HTMLFormControlElement.cpp: 133888 (WebCore::HTMLFormControlElement::isLabelable): 133889 (WebCore::HTMLFormControlElement::labels): 133890 * html/HTMLFormControlElement.h: 133891 * html/HTMLInputElement.idl: 133892 * html/HTMLLabelElement.cpp: 133893 (WebCore::HTMLLabelElement::parseMappedAttribute): 133894 * html/HTMLLabelElement.h: 133895 * html/HTMLMeterElement.idl: 133896 * html/HTMLProgressElement.idl: 133897 * html/HTMLSelectElement.idl: 133898 * html/HTMLTextAreaElement.idl: 133899 * html/LabelsNodeList.cpp: Added. 133900 (WebCore::LabelsNodeList::LabelsNodeList): 133901 (WebCore::LabelsNodeList::~LabelsNodeList): 133902 (WebCore::LabelsNodeList::nodeMatches): 133903 * html/LabelsNodeList.h: Added. 133904 (WebCore::LabelsNodeList::create): 133905 133906 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 133907 133908 Reviewed by Jeremy Orlow. 133909 133910 Style fix in JSEventCustom.cpp 133911 https://bugs.webkit.org/show_bug.cgi?id=39727 133912 133913 Conditional includes should be all together after the 133914 unconditional includes. 133915 133916 * bindings/js/JSEventCustom.cpp: 133917 133918 2010-05-24 Jeremy Orlow <jorlow (a] chromium.org> 133919 133920 Reviewed by Steve Block. 133921 133922 Add IDBDatabase's attributes 133923 https://bugs.webkit.org/show_bug.cgi?id=39602 133924 133925 Add the attributes (like name, description, etc) for 133926 IDBDatabaseRequest. Plumb that back to the IDBDatabase 133927 object which stores the data. 133928 133929 CMake and Android build changes in another CL (that 133930 fixes other stuff too). 133931 133932 Updated the layout test, but there's some further testing 133933 that needs to be added once the Chromium side of this lands. 133934 133935 * GNUmakefile.am 133936 * WebCore.gypi: 133937 * WebCore.pro 133938 * WebCore.vcproj/WebCore.vcproj 133939 * WebCore.xcodeproj/project.pbxproj 133940 * dom/DOMStringList.h: 133941 (WebCore::DOMStringList::strings): 133942 * storage/IDBDatabase.cpp: Removed. 133943 * storage/IDBDatabase.h: 133944 * storage/IDBDatabaseImpl.cpp: Added. 133945 (WebCore::IDBDatabaseImpl::IDBDatabaseImpl): 133946 (WebCore::IDBDatabaseImpl::~IDBDatabaseImpl): 133947 (WebCore::IDBDatabaseImpl::objectStores): 133948 * storage/IDBDatabaseImpl.h: Added. 133949 (WebCore::IDBDatabaseImpl::create): 133950 (WebCore::IDBDatabaseImpl::name): 133951 (WebCore::IDBDatabaseImpl::description): 133952 (WebCore::IDBDatabaseImpl::version): 133953 * storage/IDBDatabaseRequest.h: 133954 (WebCore::IDBDatabaseRequest::name): 133955 (WebCore::IDBDatabaseRequest::description): 133956 (WebCore::IDBDatabaseRequest::version): 133957 (WebCore::IDBDatabaseRequest::objectStores): 133958 * storage/IDBDatabaseRequest.idl: 133959 * storage/IDBSuccessEvent.cpp: 133960 (WebCore::IDBSuccessEvent::IDBSuccessEvent): 133961 * storage/IndexedDatabaseImpl.cpp: 133962 (WebCore::IndexedDatabaseImpl::open): 133963 * storage/IndexedDatabaseImpl.h: 133964 133965 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 133966 133967 Reviewed by NOBODY Gustavo Noronha. 133968 133969 [GTK] Add support for DOM events in the GObject DOM bindings 133970 https://bugs.webkit.org/show_bug.cgi?id=38844 133971 133972 Add actual GObject event objects to the DOM event signals. 133973 133974 * GNUmakefile.am: 133975 * bindings/gobject/GObjectEventListener.cpp: 133976 (WebCore::GObjectEventListener::handleEvent): 133977 * bindings/gobject/WebKitDOMBinding.cpp: 133978 (WebKit::wrapEventTarget): 133979 (WebKit::kit): 133980 * bindings/gobject/WebKitDOMBinding.h: 133981 * bindings/gobject/WebKitDOMEventTarget.cpp: Added. 133982 (webkit_dom_event_target_default_init): 133983 (webkit_dom_event_target_dispatch_event): 133984 * bindings/gobject/WebKitDOMEventTarget.h: Added. 133985 * bindings/scripts/CodeGeneratorGObject.pm: 133986 133987 2010-05-24 Jeremy Orlow <jorlow (a] chromium.org> 133988 133989 Reviewed by Steve Block. 133990 133991 [Android] Add IndexedDB to the build 133992 https://bugs.webkit.org/show_bug.cgi?id=39593 133993 133994 Add the current list of build files to Android's make files. From now on, 133995 I'll try to be sure to update these along with the rest. 133996 Also, fix a nit in the gypi file. 133997 133998 No tests..just changing build files. 133999 134000 * Android.derived.jscbindings.mk: 134001 * Android.derived.v8bindings.mk: 134002 * Android.mk: 134003 * WebCore.gypi: 134004 134005 2010-05-26 Alexander Pavlov <apavlov (a] chromium.org> 134006 134007 Reviewed by Pavel Feldman. 134008 134009 Expose CSS rule body start/end offsets in the parent stylesheet 134010 https://bugs.webkit.org/show_bug.cgi?id=38906 134011 134012 CSSParser::parseSheet() accepts an optional external Vector where the start/end offsets 134013 of the CSSStyleRule bodies, relative to the beginning of the stylesheet, will be stored. 134014 This Vector is only used when the Web Inspector needs the body ranges, thus there is no 134015 memory overhead until the user starts editing styles via the Web Inspector. 134016 Additionally, fixed an issue with a single inspectorStyleSheet for all frames in the page. 134017 134018 Test: inspector/styles-source-offsets.html 134019 134020 * css/CSSGrammar.y: 134021 * css/CSSParser.cpp: 134022 (WebCore::CSSParser::CSSParser): 134023 (WebCore::CSSParser::setupParser): 134024 (WebCore::CSSParser::parseSheet): 134025 (WebCore::CSSParser::createStyleRule): 134026 (WebCore::CSSParser::updateLastSelectorLineAndPosition): 134027 (WebCore::CSSParser::markRuleBodyStart): 134028 (WebCore::CSSParser::markRuleBodyEnd): 134029 * css/CSSParser.h: 134030 (WebCore::CSSParser::resetRuleBodyMarks): 134031 * inspector/InspectorCSSStore.cpp: 134032 (WebCore::InspectorCSSStore::InspectorCSSStore): 134033 (WebCore::InspectorCSSStore::reset): 134034 (WebCore::InspectorCSSStore::removeDocument): 134035 (WebCore::InspectorCSSStore::inspectorStyleSheet): 134036 (WebCore::InspectorCSSStore::getStartEndOffsets): 134037 (WebCore::InspectorCSSStore::getIndexInStyleRules): 134038 (WebCore::InspectorCSSStore::disabledStyleForId): 134039 (WebCore::InspectorCSSStore::styleForId): 134040 (WebCore::InspectorCSSStore::ruleForId): 134041 (WebCore::InspectorCSSStore::bindStyle): 134042 (WebCore::InspectorCSSStore::bindStyleSheet): 134043 (WebCore::InspectorCSSStore::bindRule): 134044 * inspector/InspectorCSSStore.h: 134045 * inspector/InspectorController.cpp: 134046 (WebCore::InspectorController::InspectorController): 134047 (WebCore::InspectorController::resourceForURL): 134048 * inspector/InspectorController.h: 134049 (WebCore::InspectorController::inspectorFrontend): 134050 * inspector/InspectorDOMAgent.cpp: 134051 (WebCore::InspectorDOMAgent::InspectorDOMAgent): 134052 (WebCore::InspectorDOMAgent::unbind): 134053 (WebCore::InspectorDOMAgent::getStyles): 134054 (WebCore::InspectorDOMAgent::getAllStyles): 134055 (WebCore::InspectorDOMAgent::buildArrayForCSSRules): 134056 (WebCore::InspectorDOMAgent::buildArrayForPseudoElements): 134057 (WebCore::InspectorDOMAgent::applyStyleText): 134058 (WebCore::InspectorDOMAgent::setStyleText): 134059 (WebCore::InspectorDOMAgent::setStyleProperty): 134060 (WebCore::InspectorDOMAgent::toggleStyleEnabled): 134061 (WebCore::InspectorDOMAgent::setRuleSelector): 134062 (WebCore::InspectorDOMAgent::addRule): 134063 (WebCore::InspectorDOMAgent::buildObjectForStyle): 134064 (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties): 134065 (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): 134066 (WebCore::InspectorDOMAgent::buildObjectForRule): 134067 * inspector/InspectorDOMAgent.h: 134068 * inspector/front-end/DOMAgent.js: 134069 (WebInspector.CSSStyleDeclaration): 134070 134071 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 134072 134073 Reviewed by Gustavo Noronha. 134074 134075 [GTK] Add support for DOM events in the GObject DOM bindings 134076 https://bugs.webkit.org/show_bug.cgi?id=38844 134077 134078 Use GObject-like names for the DOM event signals. Basically go 134079 from 'mousewheel' to 'mouse-wheel-event'. 134080 134081 * bindings/scripts/CodeGeneratorGObject.pm: 134082 134083 2010-05-26 Nikolas Zimmermann <nzimmermann (a] rim.com> 134084 134085 Not reviewed. Sort Xcode project file. 134086 134087 * WebCore.xcodeproj/project.pbxproj: 134088 134089 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 134090 134091 Reviewed by Gustavo Noronha. 134092 134093 [GTK] Add support for DOM events in the GObject DOM bindings 134094 https://bugs.webkit.org/show_bug.cgi?id=38844 134095 134096 First step towards DOM events support. We create one signal per 134097 event supported in the DOM classes, and create a custom 134098 GObjectEventListener that will emit a GObject signal when an event 134099 is dispatched to the object. There is no event object at the 134100 moment (we just pass NULL), and no support for hooking into the 134101 capture phase. 134102 134103 * GNUmakefile.am: 134104 * bindings/gobject/GObjectEventListener.cpp: Added. 134105 (WebCore::GObjectEventListener::handleEvent): 134106 (WebCore::GObjectEventListener::operator==): 134107 * bindings/gobject/GObjectEventListener.h: Added. 134108 (WebCore::GObjectEventListener::create): 134109 (WebCore::GObjectEventListener::cast): 134110 (WebCore::GObjectEventListener::GObjectEventListener): 134111 * bindings/scripts/CodeGeneratorGObject.pm: 134112 * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: 134113 (WebKit::core): 134114 (webkit_dom_test_callback_finalize): 134115 (webkit_dom_test_callback_class_init): 134116 (WebKit::wrapTestCallback): 134117 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: 134118 (WebKit::core): 134119 (webkit_dom_test_interface_finalize): 134120 (webkit_dom_test_interface_class_init): 134121 (WebKit::wrapTestInterface): 134122 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: 134123 (WebKit::core): 134124 (webkit_dom_test_obj_finalize): 134125 (webkit_dom_test_obj_class_init): 134126 (WebKit::wrapTestObj): 134127 * dom/EventListener.h: 134128 (WebCore::EventListener::): 134129 134130 2010-05-26 Xan Lopez <xlopez (a] igalia.com> 134131 134132 Reviewed by Gustavo Noronha. 134133 134134 [GTK] GObject DOM bindings 134135 https://bugs.webkit.org/show_bug.cgi?id=33590 134136 134137 We need to protect the body of some methods with #ifdefs, since 134138 the availability of the code they call into is decided at compile 134139 time. 134140 134141 * bindings/scripts/CodeGeneratorGObject.pm: 134142 134143 2010-05-26 Kent Tamura <tkent (a] chromium.org> 134144 134145 Reviewed by Shinichiro Hamaji. 134146 134147 Move date/time limit values to DateComponents.h from HTMLInputElement.cpp 134148 https://bugs.webkit.org/show_bug.cgi?id=39423 134149 134150 The minimum and maximum values for date, datetime, datetime-local, 134151 month, time, and week types depend on the implementation of 134152 DateComponents. So move them to DateComponents. 134153 134154 * html/DateComponents.h: 134155 * html/HTMLInputElement.cpp: 134156 (WebCore::HTMLInputElement::minimum): 134157 (WebCore::HTMLInputElement::maximum): 134158 134159 2010-05-26 Csaba Osztrogonc <ossy (a] webkit.org> 134160 134161 Reviewed by Simon Hausmann. 134162 134163 Buildfix for build without ENABLE(RUBY) after r60201. 134164 134165 * rendering/RenderBlock.cpp: 134166 (WebCore::canMergeContiguousAnonymousBlocks): Missing #if ENABLE(RUBY) guard added. 134167 134168 2010-05-26 Nikolas Zimmermann <nzimmermann (a] rim.com> 134169 134170 Not reviewed. Update test expectations for JS generator, when using run-webkit-tests. This has been forgotten. 134171 134172 * bindings/scripts/test/JS/JSTestInterface.cpp: 134173 (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor): 134174 (WebCore::JSTestInterface::createPrototype): 134175 * bindings/scripts/test/JS/JSTestInterface.h: 134176 (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype): 134177 * bindings/scripts/test/JS/JSTestObj.cpp: 134178 (WebCore::JSTestObjConstructor::JSTestObjConstructor): 134179 (WebCore::JSTestObj::createPrototype): 134180 * bindings/scripts/test/JS/JSTestObj.h: 134181 (WebCore::JSTestObjPrototype::JSTestObjPrototype): 134182 134183 2010-05-25 Philippe Normand <pnormand (a] igalia.com> 134184 134185 Reviewed by Gustavo Noronha Silva. 134186 134187 [GStreamer] Apple trailers not playing 134188 https://bugs.webkit.org/show_bug.cgi?id=37390 134189 134190 Set the AppleTrailer User-Agent workaround after 134191 FrameLoader::addExtraFieldsToSubresourceRequest has been called 134192 because that method sets the global User-Agent. 134193 134194 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: 134195 (webKitWebSrcStart): 134196 134197 2010-05-25 Dumitru Daniliuc <dumi (a] chromium.org> 134198 134199 Unreviewed, changing "fts2" to "fts3" in one location I missed in r60188. 134200 134201 * storage/DatabaseAuthorizer.cpp: 134202 (WebCore::DatabaseAuthorizer::dropVTable): 134203 134204 2010-05-25 Mark Rowe <mrowe (a] apple.com> 134205 134206 Build fix. 134207 134208 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: 134209 134210 2010-05-25 Yuta Kitamura <yutak (a] chromium.org> 134211 134212 Reviewed by Pavel Feldman. 134213 134214 Web Inspector: Show HTTP status message sent from server in Resources tab. 134215 134216 This patch obtains an HTTP status message of each resource and pass it to 134217 the front end of Web Inspector. The status message is shown in "Headers" tab in 134218 the detail view of that resource, along with the HTTP status code. 134219 134220 Web Inspector does not respect HTTP status message 134221 https://bugs.webkit.org/show_bug.cgi?id=39595 134222 134223 * inspector/InspectorResource.cpp: 134224 (WebCore::InspectorResource::updateResponse): 134225 (WebCore::InspectorResource::updateScriptObject): 134226 * inspector/InspectorResource.h: 134227 * inspector/front-end/Resource.js: 134228 (WebInspector.Resource.CompareByTransferSize): 134229 * inspector/front-end/ResourceView.js: 134230 (WebInspector.ResourceView.prototype._refreshHTTPInformation): 134231 * inspector/front-end/inspector.js: 134232 (WebInspector.updateResource): 134233 * inspector/front-end/utilities.js: 134234 (String.prototype.escapeHTML): Escape '"' so that we can escape messages 134235 that may occur inside HTML attributes. 134236 134237 2010-05-24 David Hyatt <hyatt (a] apple.com> 134238 134239 Reviewed by Dan Bernstein. 134240 134241 https://bugs.webkit.org/show_bug.cgi?id=39615, implement basic support for -webkit-column-span. 134242 134243 This patch adds support for -webkit-column-span elements that can span across all of the columns 134244 in a multi-column block. In this first stage, column span support is limited to only immediate 134245 children of the multi-column block, so no elements actually have to split across a span yet. 134246 134247 Two new kinds of anonymous blocks have been added: anonymous columns blocks and anonymous column 134248 span blocks. When a span gets inserted into a multicol block, the block is split, with the 134249 column portions of the multicol getting wrapped in anonymous columns blocks and the spans getting 134250 wrapped in anonymous column span blocks. The multicol block then stops being multicol and lets 134251 the anonymous multicol blocks take over column layout. 134252 134253 Many new tests added in fast/multicol/span. 134254 134255 * dom/Node.cpp: 134256 (WebCore::Node::diff): 134257 Changes to column span result in a detach/attach, since spanning elements don't typically have 134258 much content. 134259 134260 * rendering/RenderBlock.cpp: 134261 (WebCore::RenderBlock::styleDidChange): 134262 Make sure to inherit the appropriate new styles into the anonymous column and column span blocks. 134263 134264 (WebCore::RenderBlock::addChildToAnonymousColumnBlocks): 134265 This method handles the insertion of new children into the block after it has had to wrap its 134266 children in anonymous column/column-span blocks. 134267 134268 (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): 134269 A helper method for splitting all anonymous blocks between beforeChild and this block so that 134270 a new element with an incompatible type can be inserted between them. 134271 134272 (WebCore::RenderBlock::makeChildrenAnonymousColumnBlocks): 134273 This method does the initial split of a block into anonymous components. This happens the first 134274 time a column-span element gets inserted into the block. 134275 134276 (WebCore::columnsBlockForSpanningElement): 134277 This function checks whether or not the column-span element is actually being inserted into a viable 134278 columns block. 134279 134280 (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): 134281 This is the original RenderBlock::addChild. It handles everything else just like it used to. 134282 134283 (WebCore::RenderBlock::addChild): 134284 Patched to now call addChildToAnonymousColumnBlocks if the block has wrapped its current children 134285 in anonymous column/column-span blocks already. 134286 134287 (WebCore::RenderBlock::moveAllChildrenTo): 134288 moveAllChildrenTo has been enhanced to support doing a full remove/append in the case where elements 134289 are shifting across layers. (This should arguably be the default behavior, but that can happen in 134290 a future patch.) 134291 134292 (WebCore::RenderBlock::removeLeftoverAnonymousBlock): 134293 Patched to fix a bug when the leftover block is empty and to prevent anonymous column/column-span 134294 block from being coalesced with a parent if they are non-empty. 134295 134296 (WebCore::canMergeContiguousAnonymousBlocks): 134297 Whether or not two contiguous anonymous blocks can merge after the removal of a child. 134298 134299 (WebCore::RenderBlock::removeChild): 134300 removeChild has been patched to handle more cases of merging/deletion than it did before. It 134301 can now destroy empty anonymous block chains and can now merge two contiguous anonymous blocks 134302 that don't share the same childrenInline() setting (by putting one inside the other). It also 134303 makes sure to do full appends/moves/inserts in the cases where the affected blocks have layers. 134304 134305 (WebCore::RenderBlock::fillSelectionGaps): 134306 Don't let the selection extend outside of a column-span. 134307 134308 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): 134309 Turn off multi-column layout on the outermost block if it has wrapped its children in anonymous 134310 column/column-span blocks. 134311 134312 (WebCore::RenderBlock::createAnonymousBlockWithSameTypeAs): 134313 (WebCore::RenderBlock::createAnonymousColumnsBlock): 134314 (WebCore::RenderBlock::createAnonymousColumnSpanBlock): 134315 New helper functions for anonymous block creation. 134316 134317 (WebCore::RenderBlock::renderName): 134318 Patched to dump anonymous column and column-span blocks so that they can be distinguished from 134319 regular anonymous blocks. 134320 * rendering/RenderBlock.h: 134321 * rendering/RenderObject.h: 134322 (WebCore::RenderObject::isAnonymousColumnsBlock): 134323 (WebCore::RenderObject::isAnonymousColumnSpanBlock): 134324 New helper functions for asking the type of an anonymous block. 134325 134326 * rendering/style/RenderStyle.h: 134327 (WebCore::InheritedFlags::inheritColumnPropertiesFrom): 134328 A helper function to allow anonymous column blocks to easily inherit all column properties for 134329 rendering. 134330 134331 2010-05-25 Dirk Pranke <dpranke (a] chromium.org> 134332 134333 Reviewed by Dimitri Glazkov. 134334 134335 Re-commit r58765 - it had been rolled out to see if it was causing 134336 a perf regression (in r59787), but that does not seem to have been 134337 the case. 134338 134339 Tests: fast/notifications/notifications-replace.html 134340 fast/notifications/notifications-rtl.html 134341 134342 https://bugs.webkit.org/show_bug.cgi?id=39605 134343 134344 * notifications/Notification.h: 134345 (WebCore::Notification::dir): 134346 (WebCore::Notification::setDir): 134347 (WebCore::Notification::replaceId): 134348 (WebCore::Notification::setReplaceId): 134349 * notifications/Notification.idl: 134350 134351 2010-05-22 Jer Noble <jer.noble (a] apple.com> 134352 134353 Reviewed by Adam Roben. 134354 134355 Full screen doesn't work for video elements 134356 https://bugs.webkit.org/show_bug.cgi?id=39557 134357 rdar://problem/8011813 134358 134359 Add fullscreen support for MediaPlayerPrivateVisualContext. A new class, MediaPlayerPrivateFullscreenWindow, 134360 provides the fullscreen hwnd and layer renderer. Any WKCACFLayer can be provided to MediaPlayerPrivateFullscreenWindow 134361 so future additional MediaPlayerPrivate implementations can use the fullscreen window. 134362 134363 Minor additions have been made to the FloatSize and IntSize classes. 134364 134365 MediaPlayerPrivateQuickTimeVisualContext now calls retrieveCurrentImage after creating a new 134366 videoLayer; this is an existing bug that was never really exposed before now. 134367 134368 * WebCore.vcproj/WebCore.vcproj: 134369 * platform/graphics/FloatSize.h: Added aspectRatio() and scale(float). 134370 (WebCore::FloatSize::aspectRatio): 134371 (WebCore::FloatSize::scale): 134372 * platform/graphics/IntSize.h: Added aspectRatio(). 134373 (WebCore::IntSize::aspectRatio): 134374 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Added. 134375 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: Added. 134376 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Call retrieveCurrentImage() after creating the videoLayer. 134377 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen): 134378 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage): 134379 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie): 134380 * platform/graphics/win/WKCACFLayer.cpp: 134381 (WebCore::WKCACFLayer::WKCACFLayer): 134382 (WebCore::WKCACFLayer::removeFromSuperlayer): 134383 (WebCore::WKCACFLayer::setFrame): 134384 (WebCore::WKCACFLayer::internalSetNeedsDisplay): 134385 (WebCore::WKCACFLayer::setLayoutClient): 134386 (WebCore::WKCACFLayer::layoutSublayersProc): 134387 (WebCore::WKCACFLayer::layoutClient): 134388 (WebCore::WKCACFLayer::setNeedsLayout): 134389 * platform/graphics/win/WKCACFLayer.h: Add layout client class. 134390 (WebCore::WKCACFLayerLayoutClient::~WKCACFLayerLayoutClient): 134391 (WebCore::WKCACFLayer::frame): Added back frame()/setFrame(). 134392 * platform/graphics/win/WebTiledLayer.cpp: 134393 (WebCore::WebTiledLayer::setFrame): Implamented setFrame() in subclass of WKCACFLayer 134394 * platform/graphics/win/WebTiledLayer.h: 134395 * platform/graphics/win/WebTiledLayer.cpp: Added setFrame() overriding WKCACFLayer's implementation 134396 (WebCore::WebTiledLayer::setFrame): 134397 * platform/graphics/win/WebTiledLayer.h: 134398 134399 134400 2010-05-25 Dumitru Daniliuc <dumi (a] chromium.org> 134401 134402 Reviewed by Brady Eidson. 134403 134404 Allow FTS3 functions. 134405 https://bugs.webkit.org/show_bug.cgi?id=38003 134406 134407 * storage/DatabaseAuthorizer.cpp: 134408 (WebCore::DatabaseAuthorizer::addWhitelistedFunctions): 134409 (WebCore::DatabaseAuthorizer::createVTable): 134410 134411 2010-05-25 Anders Carlsson <andersca (a] apple.com> 134412 134413 Reviewed by Sam Weinig. 134414 134415 Get rid of PluginDatabaseClient 134416 https://bugs.webkit.org/show_bug.cgi?id=39685 134417 134418 PluginDatabaseClient isn't used anywhere so just remove it. 134419 134420 * GNUmakefile.am: 134421 * plugins/PluginDatabase.cpp: 134422 (WebCore::PluginDatabase::PluginDatabase): 134423 (WebCore::PluginDatabase::refresh): 134424 * plugins/PluginDatabase.h: 134425 * plugins/PluginDatabaseClient.h: Removed. 134426 134427 2010-05-25 Alexey Proskuryakov <ap (a] apple.com> 134428 134429 Reviewed by Darin Adler. 134430 134431 https://bugs.webkit.org/show_bug.cgi?id=18595 134432 REGRESSION (r20766): Setting display:none on an iframe causes the ownerDocument to freeze 134433 134434 Test: fast/events/frame-detached-in-mousedown.html 134435 134436 * page/EventHandler.h: Added a boolean tracking whether EventHandler needs to reset capturing 134437 node on mouse up. It's only done for nodes that hold subframes - elements that capture events 134438 are responsible for resetting the state. 134439 134440 * page/EventHandler.cpp: 134441 (WebCore::EventHandler::EventHandler): Don't initialize m_capturingMouseEventsNode, it's a 134442 RefPtr and is initialized automatically. 134443 (WebCore::EventHandler::handleMousePressEvent): Remember that EventHandler should reset 134444 capturing node on its own. 134445 (WebCore::EventHandler::handleMouseDoubleClickEvent): The code here looked like it was copied 134446 from the below in r21156. Copied correct code instead. 134447 (WebCore::EventHandler::handleMouseReleaseEvent): We only clear the capturing node when it 134448 holds a subframe, but the frame may be already detached by the time mouse up is handled, so the 134449 check was wrong - and return code of passMouseReleaseEventToSubframe() is obviously irrelevant. 134450 (WebCore::EventHandler::setCapturingMouseEventsNode): Remember that EventHandler should not 134451 reset capturing node on its own. 134452 134453 2010-05-25 Kevin Ollivier <kevino (a] theolliviers.com> 134454 134455 [wx] Build fix for missing symbol. 134456 134457 * wscript: 134458 134459 2010-05-25 Darin Adler <darin (a] apple.com> 134460 134461 * dom/Element.cpp: 134462 (WebCore::Element::getIDAttribute): Added comments about problems with this function. 134463 134464 2010-05-25 Leandro Pereira <leandro (a] profusion.mobi> 134465 134466 Reviewed by Gustavo Noronha Silva. 134467 134468 [EFL] Build fix. 134469 http://webkit.org/b/39598 134470 134471 * CMakeLists.txt: 134472 134473 2010-05-25 Enrica Casucci <enrica (a] apple.com> 134474 134475 Reviewed by Darin Adler. 134476 134477 REGRESSION(51522): typing at the end of a line in designMode documents is *very* slow. 134478 https://bugs.webkit.org/show_bug.cgi?id=36037 134479 <rdar://problem/8022887> 134480 134481 The performance regression was traced to r51522 but this is not entirely true. That revision introduced, among other things, 134482 additional checks in the method isCandidate of both Position and PositionIterator classes to support scenarios of mixed editability 134483 that were not allowed before. This change uncovered an underlying issue with the decrement method of PositionIterator, that in some 134484 cases would iterate through every position as offset in a block before moving to the last child in the block. 134485 This was exactly the case of the attached test case, where, trying to check if the caret was placed at the end of a block, we were examining 134486 every position in the block before considering the last true position in the block. 134487 The performance was linear with the number of child nodes in the block, instead of constant. 134488 134489 * dom/PositionIterator.cpp: 134490 (WebCore::PositionIterator::decrement): 134491 134492 2010-05-25 Alexey Proskuryakov <ap (a] apple.com> 134493 134494 Reviewed by Darin Adler. 134495 134496 https://bugs.webkit.org/show_bug.cgi?id=39621 134497 <rdar://problem/8009738> Extreme memory growth on DOM Hanoi test 134498 134499 The largest cause of memory growth on this test were autoreleased DOMNode objects created 134500 to make webView:formStateDidChangeForNode: delegate calls. 134501 134502 * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): 134503 Don't call notifyFormStateChanged() - since the element starts with refcount 0, it's not 134504 safe to call functions that are likely to create temporary wrappers (wrapper destructor 134505 would bring refcount back to 0, and destroy HTMLTextAreaElement from within its constructor). 134506 134507 2010-05-25 Kent Tamura <tkent (a] chromium.org> 134508 134509 Reviewed by Dimitri Glazkov. 134510 134511 [DRT/Chromium] Enable 3D_CANVAS, FILTERS, METER_TAG and PROGRESS_TAG 134512 https://bugs.webkit.org/show_bug.cgi?id=39652 134513 134514 * rendering/RenderTheme.cpp: 134515 (WebCore::RenderTheme::paintMeter): Fix narrowPrecisionToFloat() usage. 134516 134517 2010-05-25 Darin Adler <darin (a] apple.com> 134518 134519 Sort ".exp" files with the sort tool. 134520 This makes later merging easier. 134521 134522 These Mac-specific files should probably move into a subdirectory 134523 at some point. 134524 134525 * WebCore.Inspector.exp: Sorted. 134526 * WebCore.PluginHostProcess.exp: Removed blank line. 134527 * WebCore.VideoProxy.exp: Sorted. 134528 * WebCore.base.exp: Ditto. 134529 134530 2010-05-25 Vangelis Kokkevis <vangelis (a] chromium.org> 134531 134532 Reviewed by Darin Fisher. 134533 134534 Removing the persistent GraphicsContext from LayerChromium to save on 134535 memory and simplify code. Layers now create a temporary context, draw into 134536 it, update the GL texture and discard the context. 134537 https://bugs.webkit.org/show_bug.cgi?id=39640 134538 134539 * platform/graphics/chromium/GraphicsLayerChromium.cpp: 134540 (WebCore::GraphicsLayerChromium::updateLayerDrawsContent): 134541 * platform/graphics/chromium/LayerChromium.cpp: 134542 (WebCore::LayerChromium::LayerChromium): 134543 (WebCore::LayerChromium::~LayerChromium): 134544 (WebCore::LayerChromium::setLayerRenderer): 134545 (WebCore::LayerChromium::updateTextureContents): 134546 (WebCore::LayerChromium::setContents): 134547 (WebCore::LayerChromium::setBounds): 134548 (WebCore::LayerChromium::setNeedsDisplay): 134549 * platform/graphics/chromium/LayerChromium.h: 134550 * platform/graphics/chromium/LayerRendererChromium.cpp: 134551 (WebCore::LayerRendererChromium::~LayerRendererChromium): 134552 (WebCore::LayerRendererChromium::setRootLayerCanvasSize): 134553 (WebCore::LayerRendererChromium::drawLayers): 134554 (WebCore::LayerRendererChromium::assignTextureForLayer): 134555 (WebCore::LayerRendererChromium::compositeLayersRecursive): 134556 * platform/graphics/chromium/LayerRendererChromium.h: 134557 (WebCore::LayerRendererChromium::rootLayerGraphicsContext): 134558 134559 2010-05-24 Kenneth Rohde Christiansen <kenneth (a] webkit.org> 134560 134561 Reviewed by Simon Hausmann. 134562 134563 [Qt] Make text filling work together with text stroke. 134564 134565 When the text has stroke a new QPen was set, overriding the pen 134566 set for text filling. This patch fixes that by storing the two 134567 pens and using where appropriate. 134568 134569 * platform/graphics/qt/FontQt.cpp: 134570 (WebCore::Font::drawComplexText): 134571 134572 2010-05-17 Antonio Gomes <tonikitoo (a] webkit.org> 134573 134574 Reviewed by Darin Adler. 134575 134576 Add an optional "starting node' parameter to scrollRecursively and scrollOverflow of EventHandler 134577 https://bugs.webkit.org/show_bug.cgi?id=39217 134578 134579 It would be usefull if scrollOverflow and scrollRecursively methods of EventHandler 134580 could receive a parameter to specify where to start scrolling from. Currently they 134581 start scrolling from either the current focused node or the node where mouse last 134582 pressed on. Patch proposes an aditional starting point as an optional parameter. 134583 Since it is optional, all call sites can remain as are, and if a Null node is passed 134584 in, both methods work as previously. 134585 134586 * page/EventHandler.cpp: 134587 (WebCore::EventHandler::scrollOverflow): 134588 (WebCore::EventHandler::scrollRecursively): 134589 * page/EventHandler.h: 134590 134591 2010-05-25 Yury Semikhatsky <yurys (a] chromium.org> 134592 134593 Reviewed by Timothy Hatcher. 134594 134595 Web Inspector: localize heap graph strings. 134596 134597 https://bugs.webkit.org/show_bug.cgi?id=39674 134598 134599 * English.lproj/localizedStrings.js: 134600 134601 2010-05-25 Adam Barth <abarth (a] webkit.org> 134602 134603 Reviewed by Eric Seidel. 134604 134605 Switch HTML parsing benchmark to use document.write instead of innerHTML 134606 https://bugs.webkit.org/show_bug.cgi?id=39661 134607 134608 We'd like to exercise the main parsing pipeline instead of the fragment 134609 parsing pipeline. 134610 134611 * benchmarks/parser/html-parser.html: 134612 134613 2010-05-25 Kenneth Rohde Christiansen <kenneth.christiansen (a] openbossa.org> 134614 134615 Reviewed by Laszlo Gombos. 134616 134617 [Qt] Running with accelerated compositing enabled sometimes result in a crash 134618 https://bugs.webkit.org/show_bug.cgi?id=39609 134619 134620 Check if we have a scene before applying the workaround for 134621 the QGraphicsScene bug where opacity change doesn't always have 134622 immediate effect. 134623 134624 * platform/graphics/qt/GraphicsLayerQt.cpp: 134625 (WebCore::OpacityAnimationQt::applyFrame): 134626 134627 2010-05-25 Yury Semikhatsky <yurys (a] chromium.org> 134628 134629 Unreviewed. Fix Chromium Mac Release build. 134630 134631 * bindings/v8/ScriptDebugServer.cpp: 134632 134633 2010-05-24 Yury Semikhatsky <yurys (a] chromium.org> 134634 134635 Reviewed by Pavel Feldman. 134636 134637 ScriptDebugServer is now implemented as DebugEventListener which means it doesn't 134638 depend on v8 debugging protocol, instead it uses ExecState to collect debugging 134639 info and pass it to the listeners. 134640 134641 New implementation of ScriptDebugServer uses methods provided by client to dispatch 134642 its messages while JS is paused(previously the messages was dispatched in a callback 134643 passed to v8 along with DebugEventHandler). 134644 134645 https://bugs.webkit.org/show_bug.cgi?id=39594 134646 134647 * bindings/js/ScriptDebugServer.cpp: 134648 (WebCore::ScriptDebugServer::dispatchDidPause): 134649 (WebCore::ScriptDebugServer::dispatchDidContinue): 134650 (WebCore::ScriptDebugServer::dispatchFunctionToListeners): Changed method signature to allow 134651 invocation of ScriptDebugListener methods that have non-empty argument list. 134652 (WebCore::ScriptDebugServer::pauseIfNeeded): 134653 * bindings/js/ScriptDebugServer.h: 134654 * bindings/v8/ScriptDebugServer.cpp: 134655 (WebCore::retrieveFrame): 134656 (WebCore::ScriptDebugServer::ScriptDebugServer): 134657 (WebCore::ScriptDebugServer::addListener): 134658 (WebCore::ScriptDebugServer::removeListener): Execution is resumed(nested message loop is terminated) when 134659 corresponding debugger window closes. 134660 (WebCore::ScriptDebugServer::clearBreakpoints): 134661 (WebCore::ScriptDebugServer::pauseOnExceptionsState): 134662 (WebCore::ScriptDebugServer::setPauseOnExceptionsState): 134663 (WebCore::ScriptDebugServer::continueProgram): 134664 (WebCore::ScriptDebugServer::stepIntoStatement): 134665 (WebCore::ScriptDebugServer::stepOverStatement): 134666 (WebCore::ScriptDebugServer::stepOutOfFunction): 134667 (WebCore::ScriptDebugServer::v8DebugEventCallback): 134668 (WebCore::ScriptDebugServer::handleV8DebugEvent): 134669 (WebCore::ScriptDebugServer::didResume): 134670 * bindings/v8/ScriptDebugServer.h: 134671 (WebCore::ScriptDebugServer::ClientMessageLoop::~ClientMessageLoop): 134672 (WebCore::ScriptDebugServer::setClientMessageLoop): 134673 * inspector/InspectorController.cpp: 134674 (WebCore::InspectorController::didPause): 134675 * inspector/InspectorController.h: 134676 * inspector/ScriptDebugListener.h: Changed didPause signature to explicitly pass ScriptState 134677 where execution is paused. 134678 134679 2010-05-25 Adam Barth <abarth (a] webkit.org> 134680 134681 Reviewed by Eric Seidel. 134682 134683 Clear attributes for each tag in the HTML5 parser 134684 https://bugs.webkit.org/show_bug.cgi?id=39660 134685 134686 Yes, I did screw this up. 134687 134688 * html/HTML5Token.h: 134689 (WebCore::HTML5Token::beginStartTag): 134690 (WebCore::HTML5Token::beginEndTag): 134691 134692 2010-05-25 Anders Bakken <agbakken (a] gmail.com> 134693 134694 Reviewed by Darin Adler. 134695 134696 Remove warning for GCC 4.4.3 134697 134698 GCC suggest parentheses around && within || 134699 134700 * dom/Element.cpp: 134701 (WebCore::Element::recalcStyle): 134702 134703 2010-05-25 Xan Lopez <xlopez (a] igalia.com> 134704 134705 Fix the GTK+ build, PluginInfoStore was removed. 134706 134707 * GNUmakefile.am: 134708 134709 2010-05-25 Ada Chan <adachan (a] apple.com> 134710 134711 Reviewed by Steve Falkenburg. 134712 134713 Add a base class for DOMTimer called SuspendableTimer which captures just the 134714 basic functionality of TimerBase and ActiveDOMObject combined. It does not 134715 contain functionality specific to scripting timers. 134716 134717 SuspendableTimer is used in fixing https://bugs.webkit.org/show_bug.cgi?id=39651 134718 134719 * Android.mk: 134720 * CMakeLists.txt: 134721 * GNUmakefile.am: 134722 * WebCore.gypi: 134723 * WebCore.pro: 134724 * WebCore.vcproj/WebCore.vcproj: 134725 * WebCore.xcodeproj/project.pbxproj: 134726 * page/DOMTimer.cpp: 134727 (WebCore::DOMTimer::DOMTimer): 134728 (WebCore::DOMTimer::contextDestroyed): 134729 (WebCore::DOMTimer::stop): 134730 * page/DOMTimer.h: 134731 * page/SuspendableTimer.cpp: Added. 134732 (WebCore::SuspendableTimer::SuspendableTimer): 134733 (WebCore::SuspendableTimer::~SuspendableTimer): 134734 (WebCore::SuspendableTimer::hasPendingActivity): 134735 (WebCore::SuspendableTimer::stop): 134736 (WebCore::SuspendableTimer::suspend): 134737 (WebCore::SuspendableTimer::resume): 134738 (WebCore::SuspendableTimer::canSuspend): 134739 * page/SuspendableTimer.h: Added. 134740 134741 2010-05-25 Justin Schuh <jschuh (a] chromium.org> 134742 134743 Reviewed by Nate Chapin. 134744 134745 Remove custom bindings for Element.SetAttribute* 134746 https://bugs.webkit.org/show_bug.cgi?id=39604 134747 134748 Custom bindings are no longer needed because origin checks were moved 134749 out of the bindings by: http://trac.webkit.org/changeset/59866 134750 134751 Behavior isn't changed and is covered by existing tests. 134752 134753 * bindings/js/JSElementCustom.cpp: 134754 * bindings/v8/custom/V8ElementCustom.cpp: 134755 * dom/Element.idl: 134756 134757 2010-05-25 Yury Semikhatsky <yurys (a] chromium.org> 134758 134759 Reviewed by Pavel Feldman. 134760 134761 Add memory graph to Timeline overview pane. 134762 134763 https://bugs.webkit.org/show_bug.cgi?id=37879 134764 134765 * inspector/front-end/Drawer.js: 134766 (WebInspector.Drawer): 134767 (WebInspector.Drawer.prototype.show.animationFinished): 134768 (WebInspector.Drawer.prototype.show): 134769 (WebInspector.Drawer.prototype.hide): 134770 (WebInspector.Drawer.prototype.set currentPanelCounters): 134771 * inspector/front-end/Panel.js: 134772 * inspector/front-end/TimelineOverviewPane.js: 134773 (WebInspector.TimelineOverviewPane): 134774 (WebInspector.TimelineOverviewPane.prototype.showTimelines): 134775 (WebInspector.TimelineOverviewPane.prototype.showMemoryGraph): 134776 (WebInspector.TimelineOverviewPane.prototype._forAllRecords): 134777 (WebInspector.TimelineOverviewPane.prototype.update): 134778 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth): 134779 (WebInspector.TimelineOverviewPane.prototype._endWindowDragging): 134780 (WebInspector.TimelineOverviewPane.prototype._createTimelineCategoryStatusBarCheckbox): 134781 (WebInspector.HeapGraph): 134782 (WebInspector.HeapGraph.prototype.get element): 134783 (WebInspector.HeapGraph.prototype.get visible): 134784 (WebInspector.HeapGraph.prototype.show): 134785 (WebInspector.HeapGraph.prototype.hide): 134786 (WebInspector.HeapGraph.prototype.setSize): 134787 (WebInspector.HeapGraph.prototype.update): 134788 (WebInspector.HeapGraph.prototype._clear): 134789 (WebInspector.HeapGraph.prototype._drawScale): 134790 * inspector/front-end/TimelinePanel.js: 134791 (WebInspector.TimelinePanel): 134792 (WebInspector.TimelinePanel.prototype.toolbarItemClass._createTopPane): 134793 (WebInspector.TimelinePanel.prototype.get statusBarItems): 134794 (WebInspector.TimelinePanel.prototype._timelinesOverviewItemSelected): 134795 (WebInspector.TimelinePanel.prototype._memoryOverviewItemSelected): 134796 (WebInspector.TimelinePanel.prototype.setSidebarWidth): 134797 (WebInspector.TimelinePanel.prototype.show): 134798 (WebInspector.TimelinePanel.prototype.hide): 134799 * inspector/front-end/inspector.css: 134800 (#counters): 134801 (#timeline-overview-sidebar): 134802 (.timeline-category-statusbar-item): 134803 (.timeline-category-statusbar-item .timeline-category-checkbox): 134804 (.timeline-category-statusbar-item .timeline-category-checkbox:checked): 134805 (.timeline-category-statusbar-item.timeline-category-loading .timeline-category-checkbox): 134806 (.timeline-category-statusbar-item.timeline-category-scripting .timeline-category-checkbox): 134807 (.timeline-category-statusbar-item.timeline-category-rendering .timeline-category-checkbox): 134808 (#timeline-overview-memory): 134809 (.timeline-records-counter): 134810 (#main-status-bar > .timeline-records-counter): 134811 (#counters > .timeline-records-counter): 134812 * inspector/front-end/inspector.html: 134813 * inspector/front-end/utilities.js: 134814 (): 134815 134816 2010-05-25 Adam Barth <abarth (a] webkit.org> 134817 134818 Unreviewed. Fix typo pointed out by Maciej. 134819 134820 * html/HTML5Lexer.cpp: 134821 (WebCore::HTMLNames::unconsumeCharacters): 134822 (WebCore::HTML5Lexer::consumeEntity): 134823 134824 2010-05-25 Adam Barth <abarth (a] webkit.org> 134825 134826 Reviewed by Eric Seidel. 134827 134828 Fix <noembed> and <plaintext> content models 134829 https://bugs.webkit.org/show_bug.cgi?id=39653 134830 134831 PLAINTEXTState is my favorite lexer state. :) 134832 134833 * html/HTML5TreeBuilder.cpp: 134834 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 134835 134836 2010-05-24 Adam Barth <abarth (a] webkit.org> 134837 134838 Reviewed by Eric Seidel. 134839 134840 First cut at HTML5 entities 134841 https://bugs.webkit.org/show_bug.cgi?id=39649 134842 134843 There's still a bunch more work to do to get our entity parsing fully 134844 up to spec. This patch contains the bulk of the implementation 134845 however. 134846 134847 The basics are covered by the existing html5lib tests. I'll add more 134848 detailed tests in a followup patch. 134849 134850 * html/HTML5Lexer.cpp: 134851 (WebCore::HTMLNames::legalEntityFor): 134852 (WebCore::HTMLNames::isHexDigit): 134853 (WebCore::HTMLNames::isAlphaNumeric): 134854 (WebCore::HTMLNames::uncomsumeCharacters): 134855 (WebCore::HTML5Lexer::consumeEntity): 134856 (WebCore::HTML5Lexer::nextToken): 134857 (WebCore::HTML5Lexer::haveBufferedCharacterToken): 134858 * html/HTML5Lexer.h: 134859 (WebCore::HTML5Lexer::): 134860 * html/HTML5Tokenizer.cpp: 134861 (WebCore::HTML5Tokenizer::write): 134862 134863 2010-05-24 Tasuku Suzuki <tasuku.suzuki (a] nokia.com> 134864 134865 Reviewed by Kenneth Rohde Christiansen. 134866 134867 [Qt] Fix compilation with QT_NO_TEMPORARYFILE 134868 https://bugs.webkit.org/show_bug.cgi?id=38324 134869 134870 * platform/qt/FileSystemQt.cpp: 134871 (WebCore::openTemporaryFile): 134872 134873 2010-05-24 Andrey Kosyakov <caseq (a] chromium.org> 134874 134875 Reviewed by Yury Semikhatsky. 134876 134877 Fixed handling of bare '/' and '?' at console prompt. 134878 https://bugs.webkit.org/show_bug.cgi?id=39585 134879 134880 * inspector/front-end/inspector.js: 134881 (WebInspector.documentKeyDown): 134882 134883 2010-05-24 Andreas Kling <andreas.kling (a] nokia.com> 134884 134885 Reviewed by Sam Weinig. 134886 134887 The 'prototype' property on generated Web IDL interfaces should be { DontDelete | ReadOnly }. 134888 134889 Spec link: 134890 http://www.w3.org/TR/WebIDL/#interface-object 134891 134892 https://bugs.webkit.org/show_bug.cgi?id=39436 134893 134894 Test: fast/dom/prototype-property.html 134895 134896 * bindings/scripts/CodeGeneratorJS.pm: 134897 134898 2010-05-24 Eric Seidel <eric (a] webkit.org> 134899 134900 Reviewed by Adam Barth. 134901 134902 Add RCDATA and RAWTEXT suport to the HTML5 parser 134903 https://bugs.webkit.org/show_bug.cgi?id=39642 134904 134905 Adam Barth wrote half of this patch. 134906 134907 * html/HTML5TreeBuilder.cpp: 134908 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 134909 134910 2010-05-24 Tony Chang <tony (a] chromium.org> 134911 134912 Not reviewed, build fix. 134913 134914 Fix the chromium compile due to pageZoomFactor refactoring. 134915 134916 * page/EventHandler.cpp: 134917 (WebCore::pageZoomFactor): 134918 134919 2010-05-24 Jer Noble <jer.noble (a] apple.com> 134920 134921 Reviewed by Eric Carlson. 134922 134923 HTML5 <video> tag performance worse than Flash 134924 https://bugs.webkit.org/show_bug.cgi?id=39577 134925 rdar://problem/7982458 134926 134927 Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue. 134928 134929 WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows 134930 a CAImageQueueRef to be set as a layer's contents. 134931 134932 WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions. 134933 134934 MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if 134935 certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain 134936 threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp). 134937 134938 * WebCore.vcproj/WebCore.vcproj: 134939 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 134940 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 134941 * platform/graphics/win/QTPixelBuffer.cpp: 134942 * platform/graphics/win/QTPixelBuffer.h: 134943 * platform/graphics/win/WKCACFLayer.cpp: 134944 * platform/graphics/win/WKCACFLayer.h: 134945 * platform/graphics/win/WKCAImageQueue.cpp: Added. 134946 * platform/graphics/win/WKCAImageQueue.h: Added. 134947 134948 2010-05-24 Adam Barth <abarth (a] webkit.org> 134949 134950 Reviewed by Eric Seidel. 134951 134952 Teach the HTML5 parser how to lex escaped script data 134953 https://bugs.webkit.org/show_bug.cgi?id=39630 134954 134955 * html/HTML5Lexer.cpp: 134956 (WebCore::HTMLNames::vectorEqualsString): 134957 (WebCore::HTML5Lexer::nextToken): 134958 (WebCore::HTML5Lexer::temporaryBufferIs): 134959 (WebCore::HTML5Lexer::isAppropriateEndTag): 134960 (WebCore::HTML5Lexer::maybeFlushBufferedEndTag): 134961 (WebCore::HTML5Lexer::flushBufferedEndTag): 134962 * html/HTML5Lexer.h: 134963 134964 2010-05-24 Eric Seidel <eric (a] webkit.org> 134965 134966 Unreviewed. Trick MSVC into ignoring our unused code for the moment. 134967 134968 Prepare HTML5TreeBuilder for addition of new HTML5 parser code 134969 https://bugs.webkit.org/show_bug.cgi?id=39623 134970 134971 * html/HTML5TreeBuilder.cpp: 134972 (WebCore::HTML5TreeBuilder::constructTreeFromToken): 134973 134974 2010-05-24 Darin Adler <darin (a] apple.com> 134975 134976 Fix build on platforms with touch code enabled. 134977 134978 * page/EventHandler.cpp: 134979 (WebCore::pageZoomFactor): Added. 134980 (WebCore::EventHandler::handleTouchEvent): Use pageZoomFactor. 134981 134982 2010-05-24 Darin Adler <darin (a] apple.com> 134983 134984 Reviewed by Eric Seidel. 134985 134986 Move view-related functions from Frame to FrameView 134987 https://bugs.webkit.org/show_bug.cgi?id=39366 134988 134989 Refactoring only so adds no new tests. 134990 134991 * WebCore.base.exp: Updated. 134992 134993 * css/CSSStyleSelector.cpp: 134994 (WebCore::CSSStyleSelector::styleForDocument): Call zoom factor function 134995 on FrameView. 134996 (WebCore::CSSStyleSelector::applyProperty): Ditto. 134997 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto. 134998 * dom/Document.cpp: 134999 (WebCore::Document::elementFromPoint): Ditto. 135000 (WebCore::Document::caretRangeFromPoint): Ditto. 135001 * dom/MouseRelatedEvent.cpp: 135002 (WebCore::contentsX): Ditto. 135003 (WebCore::contentsY): Ditto. 135004 (WebCore::pageZoomFactor): Added helper function. 135005 (WebCore::MouseRelatedEvent::computePageLocation): Use helper. 135006 (WebCore::MouseRelatedEvent::receivedTarget): Ditto. 135007 * dom/Node.cpp: 135008 (WebCore::Node::dispatchMouseEvent): Call zoom factor function on FrameView. 135009 (WebCore::Node::dispatchWheelEvent): Ditto. 135010 * dom/Touch.cpp: 135011 (WebCore::contentsX): Call zoom factor function on FrameView. 135012 (WebCore::contentsY): Ditto. 135013 * html/HTMLBodyElement.cpp: 135014 (WebCore::adjustForZoom): Ditto. 135015 (WebCore::HTMLBodyElement::setScrollLeft): Ditto. 135016 (WebCore::HTMLBodyElement::setScrollTop): Ditto. 135017 * html/HTMLImageElement.cpp: 135018 (WebCore::HTMLImageElement::width): Ditto. 135019 (WebCore::HTMLImageElement::height): Ditto. 135020 * loader/ImageDocument.cpp: 135021 (WebCore::pageZoomFactor): Added helper function. 135022 (WebCore::ImageTokenizer::finish): Use helper function 135023 (WebCore::ImageDocument::scale): Ditto. 135024 (WebCore::ImageDocument::resizeImageToFit): Ditto. 135025 (WebCore::ImageDocument::imageChanged): Ditto. 135026 (WebCore::ImageDocument::restoreImageSize): Ditto. 135027 (WebCore::ImageDocument::imageFitsInWindow): Ditto. 135028 * page/DOMWindow.cpp: 135029 (WebCore::DOMWindow::innerHeight): Ditto. 135030 (WebCore::DOMWindow::innerWidth): Ditto. 135031 (WebCore::DOMWindow::scrollX): Ditto. 135032 (WebCore::DOMWindow::scrollY): Ditto. 135033 (WebCore::DOMWindow::scrollTo): Ditto. 135034 * page/DragController.cpp: 135035 (WebCore::elementUnderMouse): Ditto. 135036 135037 * page/Frame.cpp: 135038 (WebCore::Frame::Frame): Removed code to initialize m_zoomFactor. 135039 * page/Frame.h: Moved functions to FrameView. Moved all #if to the left 135040 margin to make the style consistent. Removed empty function 135041 removeEditingStyleFromBodyElement. 135042 135043 * page/FrameView.cpp: 135044 (WebCore::parentZoomFactor): Added helper function for constructor. 135045 (WebCore::FrameView::FrameView): Added initialization of m_zoomFactor. 135046 (WebCore::FrameView::shouldApplyTextZoom): Moved this here from Frame. 135047 (WebCore::FrameView::shouldApplyPageZoom): Ditto. 135048 (WebCore::FrameView::setZoomFactor): Ditto. 135049 135050 * page/FrameView.h: Added members moved here from Frame. 135051 135052 * rendering/RenderView.cpp: 135053 (WebCore::RenderView::zoomFactor): Call FrameView instead of Frame. 135054 * svg/SVGSVGElement.cpp: 135055 (WebCore::SVGSVGElement::currentScale): Ditto. 135056 (WebCore::SVGSVGElement::setCurrentScale): Ditto. 135057 135058 2010-05-24 Jer Noble <jer.noble (a] apple.com> 135059 135060 No review; build fix only. 135061 135062 Roll-out changes r60094, 60096-60097. 135063 135064 * WebCore.vcproj/WebCore.vcproj: 135065 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 135066 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): 135067 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage): 135068 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie): 135069 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 135070 * platform/graphics/win/QTPixelBuffer.cpp: 135071 * platform/graphics/win/QTPixelBuffer.h: 135072 * platform/graphics/win/WKCACFLayer.cpp: 135073 (WebCore::WKCACFLayer::printLayer): 135074 * platform/graphics/win/WKCACFLayer.h: 135075 (WebCore::WKCACFLayer::setContents): 135076 (WebCore::WKCACFLayer::contents): 135077 (WebCore::WKCACFLayer::speed): 135078 (WebCore::WKCACFLayer::timeOffset): 135079 * platform/graphics/win/WKCAImageQueue.cpp: Removed. 135080 * platform/graphics/win/WKCAImageQueue.h: Removed. 135081 135082 2010-05-24 Eric Seidel <eric (a] webkit.org> 135083 135084 Unreviewed. Add wtf/UnusedParam.h include to make Chromium happy. 135085 135086 Chromium does not use a prefix header in order to support 135087 distcc3. Other ports all do. The real fix is to remove 135088 wtf/UnusedParam.h from the prefix header. 135089 135090 * html/HTML5TreeBuilder.cpp: 135091 135092 2010-05-24 Jer Noble <jer.noble (a] apple.com> 135093 135094 No review; build fix only. 135095 135096 Second half of previous build fix, in which I add the include in the correct place. 135097 135098 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 135099 135100 2010-05-24 Jer Noble <jer.noble (a] apple.com> 135101 135102 No review; build fix only. 135103 135104 Include WKCAImageQueue.h outside the ACCELERATED_COMPOSITING check. 135105 135106 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 135107 135108 2010-05-24 Eric Seidel <eric (a] webkit.org> 135109 135110 Reviewed by Adam Barth. 135111 135112 Prepare HTML5TreeBuilder for addition of new HTML5 parser code 135113 https://bugs.webkit.org/show_bug.cgi?id=39623 135114 135115 Before we start transcribing the parser, we need a place to put it. 135116 135117 This also cleans up HTML5 token to not convert comment and character 135118 data into AtomicStrings (which makes no sense). 135119 135120 No functionality change, so no new tests. 135121 135122 * html/HTML5Token.h: 135123 (WebCore::HTML5Token::beginStartTag): 135124 (WebCore::HTML5Token::beginEndTag): 135125 (WebCore::HTML5Token::beginCharacter): 135126 (WebCore::HTML5Token::beginComment): 135127 (WebCore::HTML5Token::name): 135128 (WebCore::HTML5Token::adoptDataAsStringImpl): 135129 (WebCore::HTML5Token::characters): 135130 (WebCore::HTML5Token::commentData): 135131 (WebCore::HTML5Token::clearData): 135132 * html/HTML5TreeBuilder.cpp: 135133 (WebCore::convertToOldStyle): 135134 (WebCore::HTML5TreeBuilder::constructTreeFromToken): 135135 (WebCore::HTML5TreeBuilder::processToken): 135136 * html/HTML5TreeBuilder.h: 135137 135138 2010-05-23 Jer Noble <jer.noble (a] apple.com> 135139 135140 Reviewed by Eric Carlson. 135141 135142 HTML5 <video> tag performance worse than Flash 135143 https://bugs.webkit.org/show_bug.cgi?id=39577 135144 rdar://problem/7982458 135145 135146 Added attachments() back to QTPixelBuffer, as they are necessary for CAImageQueue. 135147 135148 WKCACFLayer contents()/setContents() now return/take a CFTypeRef instead of a CGImageRef, which allows 135149 a CAImageQueueRef to be set as a layer's contents. 135150 135151 WKCAImageQueue is a simple C++ wrapper around the WebKitSystemInterface CAImageQueue functions. 135152 135153 MediaPlayerPrivateQuickTimeVisualContext will now use a CAImageQueue to display movie frames if 135154 certain prerequisites are met (QuartzCore.dll and CoreVideo.dll version numbers must meet a certain 135155 threshold defined in MediaPlayerPrivateQuickTimeVisualContext.cpp). 135156 135157 * WebCore.vcproj/WebCore.vcproj: 135158 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: 135159 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: 135160 * platform/graphics/win/QTPixelBuffer.cpp: 135161 * platform/graphics/win/QTPixelBuffer.h: 135162 * platform/graphics/win/WKCACFLayer.cpp: 135163 * platform/graphics/win/WKCACFLayer.h: 135164 * platform/graphics/win/WKCAImageQueue.cpp: Added. 135165 * platform/graphics/win/WKCAImageQueue.h: Added. 135166 135167 2010-05-24 Brady Eidson <beidson (a] apple.com> 135168 135169 Reviewed by Darin Adler. 135170 135171 Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms) 135172 <rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486 135173 135174 Currently, a Tracker needs to know it's path before origins are populated. Testing databases and 135175 related features is made very difficult with this regression, so instead of changing things in a 135176 complicated way to make this not the case, I've added an "initialize Tracker with this path" function 135177 that calls the DatabaseTracker constructor with the initial path. 135178 135179 I checked the other platforms besides Mac and Win, and none of them seem to perform the 135180 "initialize databases if necessary" step in their init routines, so this change shouldn't effect them. 135181 135182 No new tests. (API specific layout test in DRT is forthcoming) 135183 135184 * WebCore.base.exp: 135185 135186 * storage/DatabaseTracker.cpp: 135187 (WebCore::DatabaseTracker::initializeTracker): Added to create the tracker with its initial path. 135188 (WebCore::DatabaseTracker::tracker): Move the static tracker out so tracker() and initializeTracker() 135189 can share it. Add a fallback to not change behavior of platforms that don't call the new 135190 "initializeTracker()" method. 135191 (WebCore::DatabaseTracker::DatabaseTracker): Changed to take the initial path as an argument. 135192 * storage/DatabaseTracker.h: 135193 135194 * storage/chromium/DatabaseTrackerChromium.cpp: 135195 (WebCore::DatabaseTracker::tracker): Adapt to new c'tor. 135196 (WebCore::DatabaseTracker::DatabaseTracker): Ditto. 135197 135198 2010-05-24 Adam Barth <abarth (a] webkit.org> 135199 135200 Reviewed by Eric Seidel. 135201 135202 Teach the HTML5 parser to lex DOCTYPEs 135203 https://bugs.webkit.org/show_bug.cgi?id=39571 135204 135205 * html/HTML5Lexer.cpp: 135206 (WebCore::HTML5Lexer::nextToken): 135207 * html/HTML5Lexer.h: 135208 * html/HTML5Token.h: 135209 (WebCore::HTML5Token::beginDOCTYPE): 135210 (WebCore::HTML5Token::publicIdentifier): 135211 (WebCore::HTML5Token::systemIdentifier): 135212 (WebCore::HTML5Token::setPublicIdentifierToEmptyString): 135213 (WebCore::HTML5Token::setSystemIdentifierToEmptyString): 135214 (WebCore::HTML5Token::appendToPublicIdentifier): 135215 (WebCore::HTML5Token::appendToSystemIdentifier): 135216 (WebCore::HTML5Token::DoctypeData::DoctypeData): 135217 * html/HTML5TreeBuilder.cpp: 135218 (WebCore::convertToOldStyle): 135219 (WebCore::HTML5TreeBuilder::passTokenToLegacyParser): 135220 * platform/text/SegmentedString.h: 135221 (WebCore::SegmentedString::lookAheadIgnoringCase): 135222 (WebCore::SegmentedString::advanceAndASSERTIgnoringCase): 135223 135224 == Rolled over to ChangeLog-2010-05-24 == 135225