1 2011-02-07 Sam Weinig <sam@webkit.org>
5 * platform/mac/ScrollAnimatorMac.mm:
6 (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
7 (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
8 (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
9 (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
11 2011-02-07 Sam Weinig <sam@webkit.org>
13 Reviewed by Beth Dakin.
15 Add mechanism to inform the ScrollAnimator when Scrollbars are added
18 * platform/ScrollAnimator.h:
19 (WebCore::ScrollAnimator::didAddVerticalScrollbar):
20 (WebCore::ScrollAnimator::willRemoveVerticalScrollbar):
21 (WebCore::ScrollAnimator::didAddHorizontalScrollbar):
22 (WebCore::ScrollAnimator::willRemoveHorizontalScrollbar):
23 Make virtual to allow platform specific overrides.
25 * platform/ScrollView.cpp:
26 (WebCore::ScrollView::setHasHorizontalScrollbar):
27 (WebCore::ScrollView::setHasVerticalScrollbar):
28 Call new ScrollableArea functions.
30 * platform/ScrollableArea.cpp:
31 (WebCore::ScrollableArea::didAddVerticalScrollbar):
32 (WebCore::ScrollableArea::willRemoveVerticalScrollbar):
33 (WebCore::ScrollableArea::didAddHorizontalScrollbar):
34 (WebCore::ScrollableArea::willRemoveHorizontalScrollbar):
35 * platform/ScrollableArea.h:
36 Pipe to ScrollAnimator.
38 * platform/mac/ScrollAnimatorMac.h:
39 * platform/mac/ScrollAnimatorMac.mm:
40 (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
41 (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
42 (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
43 (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
44 * platform/mac/ScrollbarThemeMac.h:
45 * platform/mac/ScrollbarThemeMac.mm:
46 (WebCore::ScrollbarThemeMac::registerScrollbar):
47 (WebCore::ScrollbarThemeMac::unregisterScrollbar):
48 (WebCore::ScrollbarThemeMac::painterForScrollbar):
49 Move painter delegate registration to the new didAdd/willRemove functions.
51 2011-02-07 Anders Carlsson <andersca@apple.com>
53 Reviewed by Dan Bernstein.
55 Missing text match markers with accelerated content
56 https://bugs.webkit.org/show_bug.cgi?id=53934
58 When doing the fake paint that recomputes the text match rects, we need to
59 flatten compositing layers, otherwise the rects won't be updated until the next paint call.
61 (This worked by accident in WebKit1 because Safari calls -[NSWindow displayIfNeeded] on the containing
62 window before asking for the text match rects).
65 (WebCore::Editor::countMatchesForText):
67 2011-02-07 Antti Koivisto <antti@apple.com>
69 Reviewed by Andreas Kling.
71 REGRESSION(r77740): CSSStyleSelector accessing deleted memory for svg/dom/use-transform.svg
72 https://bugs.webkit.org/show_bug.cgi?id=53900
74 Ignore link elements in shadow trees.
77 (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
78 (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
80 Some asserts to catch cases like this.
82 (WebCore::Element::attach):
83 (WebCore::Element::recalcStyle):
84 * html/HTMLLinkElement.cpp:
85 (WebCore::HTMLLinkElement::HTMLLinkElement):
86 (WebCore::HTMLLinkElement::process):
87 (WebCore::HTMLLinkElement::insertedIntoDocument):
88 (WebCore::HTMLLinkElement::removedFromDocument):
89 * html/HTMLLinkElement.h:
91 2011-02-07 Darin Adler <darin@apple.com>
93 Turn UTF-8 decoder off for now so we can look into failing tests
94 without leaving the tree red.
96 * platform/text/TextCodecICU.cpp:
97 (WebCore::TextCodecICU::registerBaseEncodingNames): Reverting
98 earlier change so this can handle UTF-8.
99 (WebCore::TextCodecICU::registerBaseCodecs): Ditto.
100 (WebCore::TextCodecICU::registerExtendedEncodingNames): Ditto.
101 (WebCore::TextCodecICU::registerExtendedCodecs): Ditto.
102 * platform/text/TextCodecICU.h: Ditto.
103 * platform/text/TextEncodingRegistry.cpp:
104 (WebCore::buildBaseTextCodecMaps): Ditto.
105 (WebCore::extendTextCodecMaps): Ditto.
106 * platform/text/brew/TextCodecBrew.cpp:
107 (WebCore::TextCodecBrew::registerBaseEncodingNames): Ditto.
108 (WebCore::TextCodecBrew::registerBaseCodecs): Ditto.
109 (WebCore::TextCodecBrew::registerExtendedEncodingNames): Ditto.
110 (WebCore::TextCodecBrew::registerExtendedCodecs): Ditto.
111 * platform/text/brew/TextCodecBrew.h: Ditto.
112 * platform/text/gtk/TextCodecGtk.cpp:
113 (WebCore::TextCodecGtk::registerBaseEncodingNames): Ditto.
114 (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
115 * platform/text/wince/TextCodecWinCE.cpp:
116 (WebCore::TextCodecWinCE::registerBaseEncodingNames): Ditto.
117 (WebCore::TextCodecWinCE::registerBaseCodecs): Ditto.
118 (WebCore::TextCodecWinCE::registerExtendedEncodingNames): Ditto.
119 (WebCore::TextCodecWinCE::registerExtendedCodecs): Ditto.
120 * platform/text/wince/TextCodecWinCE.h: Ditto.
122 2011-02-07 Anders Carlsson <andersca@apple.com>
124 Reviewed by Maciej Stachowiak.
126 Don't exclude overlay scrollers from the page overlay bounds
127 https://bugs.webkit.org/show_bug.cgi?id=53924
129 Export ScrollbarTheme::nativeTheme.
133 2011-02-07 Zhenyao Mo <zmo@google.com>
135 Reviewed by Kenneth Russell.
137 Crash in glDrawArrays with NaCl crystal model
138 https://bugs.webkit.org/show_bug.cgi?id=52831
140 * html/canvas/WebGLRenderingContext.cpp: Allocate large enough buffer for atttrib0 if it's enabled and not used.
141 (WebCore::WebGLRenderingContext::initVertexAttrib0):
142 (WebCore::WebGLRenderingContext::simulateVertexAttrib0):
143 * html/canvas/WebGLRenderingContext.h:
145 2011-02-07 Chris Fleizach <cfleizach@apple.com>
147 Reviewed by Darin Adler.
149 WAI-ARIA @aria-sort not exposed on rowheader and columnheader roles.
150 https://bugs.webkit.org/show_bug.cgi?id=53842
152 Test: platform/mac/accessibility/aria-sort.html
154 * accessibility/AccessibilityObject.cpp:
155 (WebCore::AccessibilityObject::sortDirection):
156 * accessibility/AccessibilityObject.h:
157 * accessibility/mac/AccessibilityObjectWrapper.mm:
158 (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
159 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
160 * html/HTMLAttributeNames.in:
162 2011-02-07 Darin Adler <darin@apple.com>
164 Reviewed by Antti Koivisto.
166 Add built-in decoder for UTF-8 for improved performance
167 https://bugs.webkit.org/show_bug.cgi?id=53898
169 Correct behavior is covered by existing tests.
171 * Android.mk: Added TextCodecUTF8.
172 * CMakeLists.txt: Ditto.
173 * GNUmakefile.am: Ditto.
174 * WebCore.gypi: Ditto.
175 * WebCore.pro: Ditto.
176 * WebCore.vcproj/WebCore.vcproj: Ditto.
177 * WebCore.xcodeproj/project.pbxproj: Ditto.
179 * platform/text/TextCodecICU.cpp: Removed registration of UTF-8
180 since that's now handled by the built-in UTF-8 codec.
181 (WebCore::TextCodecICU::registerEncodingNames): Renamed to remove
182 the word "extended" since all codecs from ICU are now extended.
183 (WebCore::TextCodecICU::registerCodecs): Ditto.
184 * platform/text/TextCodecICU.h: Ditto.
186 * platform/text/TextCodecUTF16.cpp:
187 (WebCore::TextCodecUTF16::decode): Added a FIXME about missing
190 * platform/text/TextCodecUTF8.cpp: Added.
191 * platform/text/TextCodecUTF8.h: Added.
193 * platform/text/TextEncodingRegistry.cpp:
194 (WebCore::buildBaseTextCodecMaps): Added TextCodecUTF8, and
195 removed TextCodecICU, TextCodecBrew, and TextCodecWinCE.
196 (WebCore::extendTextCodecMaps): Updated names for
197 TextCodecICU and TextCodecWinCE.
199 * platform/text/brew/TextCodecBrew.cpp:
200 (WebCore::TextCodecBrew::registerEncodingNames): Renamed to remove
201 the word "extended" since all codecs from Brew are now extended.
202 (WebCore::TextCodecBrew::registerCodecs): Ditto.
203 * platform/text/brew/TextCodecBrew.h: Ditto.
205 * platform/text/gtk/TextCodecGtk.cpp:
206 (WebCore::TextCodecGtk::registerBaseEncodingNames): Removed
207 registration of UTF-8. It's questionable whether the other codecs
208 here are really basic. If we think they qualify, then we should
209 register them on other platforms, not just GTK.
210 (WebCore::TextCodecGtk::registerBaseCodecs): Ditto.
212 * platform/text/wince/TextCodecWinCE.cpp:
213 (WebCore::getCodePage): Removed special case for UTF-8 since we
214 no longer use this codec for UTF-8.
215 (WebCore::TextCodecWinCE::registerEncodingNames): Renamed to remove
216 the word "extended" since all codecs from WinCE are now extended.
217 (WebCore::TextCodecWinCE::registerCodecs): Ditto.
218 * platform/text/wince/TextCodecWinCE.h: Ditto.
220 2011-02-07 Mario Sanchez Prada <msanchez@igalia.com>
222 Reviewed by Xan Lopez.
224 [Gtk] atk_text_get_caret_offset fails for list items
225 https://bugs.webkit.org/show_bug.cgi?id=53436
227 Consider list item markers when calculating the offset.
229 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
230 (webkit_accessible_text_get_caret_offset): Adjust the offset
231 with the item marker's length for list items.
232 (webkit_accessible_text_set_caret_offset): Replace usage of
233 g_utf8_strlen() by calling to markerText.length().
235 2011-02-07 Yi Shen <yi.4.shen@nokia.com>
237 Reviewed by Tor Arne Vestbø.
239 [Qt] Fix LayoutTests/media/restore-from-page-cache.html
240 https://bugs.webkit.org/show_bug.cgi?id=53621
242 Changed the networkState to MediaPlayer::Loaded when
243 MediaPlayerPrivateQt has enough data.
245 Test: media/restore-from-page-cache.html
247 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
248 (WebCore::MediaPlayerPrivateQt::updateStates):
250 2011-01-31 Pavel Podivilov <podivilov@chromium.org>
252 Reviewed by Yury Semikhatsky.
254 Web Inspector: implement beautification of scripts inlined in html documents.
255 https://bugs.webkit.org/show_bug.cgi?id=52706
257 To beautify scripts inlined in html, we need to cut individual scripts, beautify them using UglifyJS library, and
258 finally paste them back to html.
261 * WebCore.vcproj/WebCore.vcproj:
262 * inspector/front-end/ScriptFormatter.js:
263 (WebInspector.ScriptFormatter): Implement formatting of scripts inlined in html.
264 (WebInspector.ScriptFormatter.prototype.formatContent.didFormatChunks):
265 (WebInspector.ScriptFormatter.prototype.formatContent):
266 (WebInspector.ScriptFormatter.prototype._splitContentIntoChunks):
267 (WebInspector.ScriptFormatter.prototype._formatChunks.didFormat):
268 (WebInspector.ScriptFormatter.prototype._formatChunks):
269 (WebInspector.ScriptFormatter.prototype._buildContentFromChunks):
270 (WebInspector.ScriptFormatter.prototype._formatScript.messageHandler):
271 (WebInspector.ScriptFormatter.prototype._formatScript):
272 * inspector/front-end/ScriptFormatterWorker.js:
275 * inspector/front-end/SourceFrame.js:
276 (WebInspector.SourceFrameContent): Use SourceFrameContent and FormattedSourceFrameContent to perform operations with line numbers.
277 * inspector/front-end/SourceFrameContent.js: Added.
278 (WebInspector.SourceFrameContent): Helper class, holds resource text and scripts layout
279 (WebInspector.SourceFrameContent.prototype.get scriptRanges):
280 (WebInspector.SourceFrameContent.prototype.locationToPosition):
281 (WebInspector.SourceFrameContent.prototype.positionToLocation):
282 (WebInspector.SourceFrameContent.prototype.scriptLocationForLineNumber):
283 (WebInspector.SourceFrameContent.prototype.scriptLocationForRange):
284 (WebInspector.SourceFrameContent.prototype.lineNumberToRange):
285 (WebInspector.SourceFrameContent.prototype._intersectingScriptRange):
287 (WebInspector.FormattedSourceFrameContent): Helper class, holds original and formatted versions of resource and mapping between them.
288 (WebInspector.FormattedSourceFrameContent.prototype.get text):
289 (WebInspector.FormattedSourceFrameContent.prototype.originalLocationToFormattedLocation):
290 (WebInspector.FormattedSourceFrameContent.prototype.scriptLocationForFormattedLineNumber):
291 (WebInspector.FormattedSourceFrameContent.prototype._convertPosition):
292 * inspector/front-end/WebKit.qrc:
293 * inspector/front-end/inspector.html:
295 2011-02-07 Pavel Feldman <pfeldman@chromium.org>
297 Reviewed by Yury Semikhatsky.
299 Web Inspector: "Reveal in elements panel" does not always work.
300 https://bugs.webkit.org/show_bug.cgi?id=53775
302 * inspector/front-end/ConsoleView.js:
303 (WebInspector.ConsoleView):
304 * inspector/front-end/ContextMenu.js:
305 (WebInspector.ContextMenu.prototype.show):
306 * inspector/front-end/ElementsPanel.js:
307 (WebInspector.ElementsPanel.prototype.switchToAndFocus):
308 * inspector/front-end/ElementsTreeOutline.js:
309 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
310 (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
311 * inspector/front-end/ObjectPropertiesSection.js:
312 (WebInspector.ObjectPropertyTreeElement.prototype.update):
313 (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
314 * inspector/front-end/inspector.js:
315 (WebInspector.cancelSearch):
317 2011-02-07 Adam Barth <abarth@webkit.org>
319 Reviewed by Eric Seidel.
321 Relative .. in URL paths shouldn't skip adjacent / characters
322 https://bugs.webkit.org/show_bug.cgi?id=53907
324 Our new behavior matches Firefox, Chrome, and IE.
327 (WebCore::copyPathRemovingDots):
329 2011-02-07 Maciej Stachowiak <mjs@apple.com>
331 Reviewed by Antti Koivisto.
333 WebKitTestRunner does not block remote resources or complain about them
334 https://bugs.webkit.org/show_bug.cgi?id=42139
335 <rdar://problem/8183942>
337 * Configurations/WebCore.xcconfig: Allow WebKitTestRunner to link
339 * WebCore.exp.in: Export a handful of KURL symbols.
341 2011-02-06 Ryosuke Niwa <rniwa@webkit.org>
343 Reviewed by Darin Adler.
345 OwnArraryPtr.h uses deleteOwnedPtr but doesn’t include OwnPtrCommon.h
346 https://bugs.webkit.org/show_bug.cgi?id=52867
348 * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Removed.
349 * bindings/v8/NPV8Object.cpp:
350 (WebCore::createValueListFromVariantArgs): Returns PassOwnArrayPtr<v8::Handle<v8::Value>> instead of
351 v8::Handle<v8::Value>*.
352 (_NPN_Invoke): Calls createValueListFromVariantArgs.
353 (_NPN_InvokeDefault): createValueListFromVariantArgs.
354 (_NPN_Construct): createValueListFromVariantArgs.
355 * bindings/v8/ScriptFunctionCall.cpp:
356 (WebCore::ScriptFunctionCall::call): Calls adoptArrayPtr.
357 (WebCore::ScriptFunctionCall::construct): Ditto.
358 (WebCore::ScriptCallback::call):
359 * bindings/v8/V8DOMWindowShell.cpp:
360 (WebCore::V8DOMWindowShell::createNewContext): Ditto.
361 * bindings/v8/V8NPObject.cpp:
362 (WebCore::npObjectInvokeImpl): Ditto
363 * bindings/v8/V8NodeFilterCondition.cpp:
364 (WebCore::V8NodeFilterCondition::acceptNode): Ditto,
365 * html/HTMLAreaElement.cpp:
366 (WebCore::HTMLAreaElement::parseMappedAttribute): Calls newCoordsArray.
367 * html/HTMLFrameSetElement.cpp:
368 (WebCore::HTMLFrameSetElement::parseMappedAttribute): Calls newLengthArray.
369 * html/canvas/WebGLRenderingContext.cpp:
370 (WebCore::WebGLRenderingContext::getAttachedShaders): Calls adoptArraYptr.
371 (WebCore::WebGLRenderingContext::simulateVertexAttrib0): Ditto.
372 (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): Dito.
373 * platform/Length.cpp:
374 (WebCore::newCoordsArray): Returns PassOwnArrayPtr<Length> instead of Length*.
375 (WebCore::newLengthArray): Returns PassOwnArrayPtr<Length> instead of Length*.
376 * platform/Length.h: Prototype changes.
377 * platform/graphics/ANGLEWebKitBridge.cpp:
378 (WebCore::ANGLEWebKitBridge::validateShaderSource): Calls adoptArrayPtr.
379 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
380 (WebCore::getDirtyRects): Ditto.
381 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
382 (WebCore::ComplexTextController::getNormalizedTextRun): Ditto.
383 * platform/graphics/chromium/HarfbuzzSkia.cpp:
384 (WebCore::glyphsToAdvances): Ditto.
385 (WebCore::canRender): Ditto.
386 * platform/graphics/gpu/Texture.cpp:
387 (WebCore::Texture::updateSubRect): Ditto.
388 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
389 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas): Ditto.
390 * platform/graphics/skia/PlatformContextSkia.cpp:
391 (WebCore::PlatformContextSkia::readbackHardwareToSoftware): Ditto.
392 * platform/graphics/wince/SharedBitmap.cpp:
393 (WebCore::SharedBitmap::to16bit): Ditto.
394 * platform/win/ContextMenuWin.cpp:
395 (WebCore::ContextMenu::getContextMenuItems): Ditto.
396 * platform/win/LoggingWin.cpp:
397 (WebCore::initializeWithUserDefault): Ditto.
398 * plugins/win/PluginPackageWin.cpp:
399 (WebCore::PluginPackage::fetchInfo): Ditto.
401 2011-02-06 Kent Tamura <tkent@chromium.org>
405 * WebCore.xcodeproj/project.pbxproj: Run sort-xcode-project-file.
407 2011-02-03 Dominic Cooney <dominicc@google.com>
409 Reviewed by Dimitri Glazkov.
411 Convert <keygen> option elements to a shadow DOM
412 https://bugs.webkit.org/show_bug.cgi?id=51379
414 Covered by existing tests e.g. fast/html/keygen.html,
415 html5lib/runner.html, etc.
419 (keygen, select): Border radii should match so focus ring looks good.
420 (keygen::-webkit-keygen-select): No margin on the shadow element.
421 (select): Hoisting border radius to keygen, select rule.
422 * dom/SelectElement.cpp:
423 (WebCore::toSelectElement): keygen is no longer a select element.
424 * html/HTMLKeygenElement.cpp: Implements keygen shadow.
425 (WebCore::KeygenSelectElement::create):
426 (WebCore::KeygenSelectElement::shadowPseudoId):
427 (WebCore::KeygenSelectElement::KeygenSelectElement):
428 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
429 (WebCore::HTMLKeygenElement::parseMappedAttribute):
430 (WebCore::HTMLKeygenElement::appendFormData):
431 (WebCore::HTMLKeygenElement::formControlType):
432 (WebCore::HTMLKeygenElement::reset):
433 (WebCore::HTMLKeygenElement::selectShadow):
434 * html/HTMLKeygenElement.h: keygen is no longer a select on C++ side.
435 (WebCore::HTMLKeygenElement::canStartSelection):
436 (WebCore::HTMLKeygenElement::isEnumeratable):
437 (WebCore::HTMLKeygenElement::isResettable):
438 * html/HTMLOptionElement.cpp:
439 (WebCore::HTMLOptionElement::ownerSelectElement): Only owned by selects.
440 * html/HTMLSelectElement.cpp:
441 (WebCore::HTMLSelectElement::HTMLSelectElement): Only 'select' tag name.
443 2011-02-06 Benjamin Poulain <ikipou@gmail.com>
445 Reviewed by Kenneth Rohde Christiansen.
447 [Qt] Fix coding style errors in ClipboardQt.h
448 https://bugs.webkit.org/show_bug.cgi?id=43520
450 Fix coding style: order of header and indentation.
452 * platform/qt/ClipboardQt.h:
453 (WebCore::ClipboardQt::create):
454 (WebCore::ClipboardQt::clipboardData):
455 (WebCore::ClipboardQt::invalidateWritableData):
457 2011-02-06 Antti Koivisto <antti@apple.com>
459 Reviewed by Maciej Stachowiak.
461 Use bloom filter for descendant selector filtering
462 https://bugs.webkit.org/show_bug.cgi?id=53880
464 Bloom filter is faster than a hash set in this kind of use.
466 Shark thinks this speeds up style matching by ~30% on sites
467 with lots of descendant selectors.
469 * ForwardingHeaders/wtf/BloomFilter.h: Added.
470 * css/CSSStyleSelector.cpp:
471 (WebCore::collectElementIdentifierHashes):
472 (WebCore::CSSStyleSelector::pushParent):
473 (WebCore::CSSStyleSelector::popParent):
474 (WebCore::CSSStyleSelector::fastRejectSelector):
475 (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
476 * css/CSSStyleSelector.h:
478 2011-02-06 Maciej Stachowiak <mjs@apple.com>
480 Reviewed by Antti Koivisto.
482 media/video-document-types.html sometimes crashes the WebProcess
483 https://bugs.webkit.org/show_bug.cgi?id=53884
485 No new tests. Already covered by media/video-document-types.html
487 * html/HTMLMediaElement.cpp:
488 (WebCore::HTMLMediaElement::userCancelledLoad): Stop the load timer
489 when cancelling the load.
491 2011-02-06 Patrick Gansterer <paroga@webkit.org>
493 Reviewed by Adam Roben.
495 [WIN] Use WCHAR instead of TCHAR
496 https://bugs.webkit.org/show_bug.cgi?id=53863
498 We always use the UNICODE versions of windows functions, so
499 the usage of TCHAR makes no sense and mixing them is bad style.
501 * platform/graphics/win/IconWin.cpp:
502 (WebCore::Icon::createIconForFiles):
503 * platform/graphics/win/QTMovie.cpp:
504 * platform/graphics/win/QTMovieGWorld.cpp:
505 (QTMovieGWorld::fullscreenWndProc):
506 (QTMovieGWorld::enterFullscreen):
507 * platform/graphics/win/SimpleFontDataCGWin.cpp:
508 (WebCore::SimpleFontData::platformInit):
509 * platform/graphics/win/SimpleFontDataCairoWin.cpp:
510 * platform/graphics/win/SimpleFontDataWin.cpp:
511 * platform/graphics/wince/SimpleFontDataWinCE.cpp:
512 * platform/win/BString.cpp:
513 * platform/win/ClipboardWin.cpp:
514 (WebCore::filesystemPathFromUrlOrTitle):
515 (WebCore::createGlobalHDropContent):
516 (WebCore::createGlobalImageFileDescriptor):
517 * platform/win/ContextMenuWin.cpp:
518 * platform/win/CursorWin.cpp:
519 (WebCore::loadSharedCursor):
520 * platform/win/FileChooserWin.cpp:
521 (WebCore::FileChooser::basenameForWidth):
522 * platform/win/PopupMenuWin.cpp:
523 (WebCore::PopupMenuWin::popupClassName):
524 (WebCore::PopupMenuWin::show):
525 * platform/win/PopupMenuWin.h:
527 2011-02-06 Patrick Gansterer <paroga@webkit.org>
529 Reviewed by Andreas Kling.
531 Replace FLT_MAX with std::numeric_limits
532 https://bugs.webkit.org/show_bug.cgi?id=53861
534 Also move EFL's userIdleTime from TemporaryLinkStubs into SystemTimeEfl.
536 * html/NumberInputType.cpp:
537 * html/parser/HTMLParserIdioms.cpp:
538 (WebCore::parseToDoubleForNumberType):
539 * platform/brew/SystemTimeBrew.cpp:
540 (WebCore::userIdleTime):
541 * platform/efl/SystemTimeEfl.cpp:
542 (WebCore::userIdleTime):
543 * platform/efl/TemporaryLinkStubs.cpp:
544 * platform/graphics/ca/GraphicsLayerCA.cpp:
545 (WebCore::GraphicsLayerCA::setupAnimation):
546 * platform/win/SystemTimeWin.cpp:
547 (WebCore::userIdleTime):
548 * platform/wx/SystemTimeWx.cpp:
549 (WebCore::userIdleTime):
551 2011-02-06 Patrick Gansterer <paroga@webkit.org>
553 Reviewed by Andreas Kling.
555 [CMake] Add dependencies for Visual Studio projects
556 https://bugs.webkit.org/show_bug.cgi?id=53773
558 Add a JavaScriptCore dependecy to WebCore, so CMake can
559 generate the correct build order for the solution.
563 2011-02-06 Patrick Gansterer <paroga@webkit.org>
565 Reviewed by Andreas Kling.
567 [CMake] Unify ENABLE_SVG sections
568 https://bugs.webkit.org/show_bug.cgi?id=53778
572 2011-02-06 Andreas Kling <kling@webkit.org>
574 Reviewed by Dirk Schulze.
576 Refactor Font::normalizeSpaces() to avoid an extra String copy.
577 https://bugs.webkit.org/show_bug.cgi?id=53871
579 Have normalizeSpaces() take UChar*,length arguments instead of a
580 String, since all call sites were creating temporaries from these
583 Font::normalizeSpaces() now always makes 1 String copy,
584 instead of 1 in the best case and 2 in the worst case.
586 * platform/graphics/Font.cpp:
587 (WebCore::Font::normalizeSpaces):
588 * platform/graphics/Font.h:
589 * platform/graphics/qt/FontQt.cpp:
590 (WebCore::drawTextCommon):
591 (WebCore::Font::floatWidthForSimpleText):
592 (WebCore::Font::floatWidthForComplexText):
593 (WebCore::Font::offsetForPositionForSimpleText):
594 (WebCore::Font::offsetForPositionForComplexText):
595 (WebCore::Font::selectionRectForSimpleText):
596 (WebCore::Font::selectionRectForComplexText):
598 (WebCore::SVGTextRunWalker::walk):
600 2011-02-06 Andreas Kling <kling@webkit.org>
602 Reviewed by Dirk Schulze.
604 Fix potential buffer overrun in SVGTextRunWalker::walk()
605 https://bugs.webkit.org/show_bug.cgi?id=53870
607 A new String was created from a UChar* with a 'length' argument
608 that could be greater than the number of UChars available.
611 (WebCore::SVGTextRunWalker::walk):
613 2011-02-05 Adam Barth <abarth@webkit.org>
615 Reviewed by Eric Seidel.
617 Remove unused parameter related to XSSAuditor
618 https://bugs.webkit.org/show_bug.cgi?id=53862
621 * bindings/ScriptControllerBase.cpp:
622 (WebCore::ScriptController::executeScript):
623 (WebCore::ScriptController::executeIfJavaScriptURL):
624 * bindings/ScriptControllerBase.h:
625 * bindings/js/ScriptController.cpp:
626 (WebCore::ScriptController::evaluateInWorld):
627 (WebCore::ScriptController::evaluate):
628 (WebCore::ScriptController::executeScriptInWorld):
629 * bindings/js/ScriptController.h:
630 * bindings/v8/ScriptController.cpp:
631 (WebCore::ScriptController::evaluate):
632 * bindings/v8/ScriptController.h:
634 2011-02-05 Adam Barth <abarth@webkit.org>
640 2011-02-05 Adam Barth <abarth@webkit.org>
642 Reviewed by Eric Seidel.
645 https://bugs.webkit.org/show_bug.cgi?id=53859
647 The job of the XSSAuditor is now done by the XSSFilter. In the future,
648 we might rename XSSFilter to XSSAuditor.
654 * WebCore.vcproj/WebCore.vcproj:
655 * WebCore.xcodeproj/project.pbxproj:
656 * bindings/ScriptControllerBase.cpp:
657 (WebCore::ScriptController::executeIfJavaScriptURL):
658 * bindings/ScriptControllerBase.h:
659 * bindings/js/ScriptController.cpp:
660 (WebCore::ScriptController::ScriptController):
661 (WebCore::ScriptController::evaluateInWorld):
662 * bindings/js/ScriptController.h:
663 * bindings/js/ScriptEventListener.cpp:
664 (WebCore::createAttributeEventListener):
665 * bindings/v8/ScriptController.cpp:
666 (WebCore::ScriptController::ScriptController):
667 (WebCore::ScriptController::evaluate):
668 * bindings/v8/ScriptController.h:
669 * bindings/v8/ScriptEventListener.cpp:
670 (WebCore::createAttributeEventListener):
672 (WebCore::Document::implicitOpen):
673 (WebCore::Document::processBaseElement):
674 * dom/ScriptableDocumentParser.cpp:
675 (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
676 * dom/ScriptableDocumentParser.h:
677 * html/parser/HTMLDocumentParser.cpp:
678 (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
679 * loader/SubframeLoader.cpp:
680 (WebCore::SubframeLoader::requestObject):
681 (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
682 * page/XSSAuditor.cpp: Removed.
683 * page/XSSAuditor.h: Removed.
685 2011-02-05 Anders Carlsson <andersca@apple.com>
687 Reviewed by Darin Adler.
689 Need a way to resize and scroll the page at the same time
690 https://bugs.webkit.org/show_bug.cgi?id=53814
691 <rdar://problem/8498008>
693 Export a function needed by WebKit2.
697 2011-02-05 Patrick Gansterer <paroga@webkit.org>
699 Reviewed by Alexey Proskuryakov.
701 Use Document::encoding() instead of DocumentWriter::encoding()
702 https://bugs.webkit.org/show_bug.cgi?id=53398
704 This change makes the code more readable, when a subresource
705 inherits the character encoding of the document.
707 * dom/ProcessingInstruction.cpp:
708 (WebCore::ProcessingInstruction::checkStyleSheet):
709 * dom/ScriptElement.cpp:
710 (WebCore::ScriptElement::scriptCharset):
711 * html/HTMLLinkElement.cpp:
712 (WebCore::HTMLLinkElement::process):
713 * loader/cache/CachedResourceLoader.cpp:
714 (WebCore::CachedResourceLoader::requestPreload):
715 * platform/network/FormDataBuilder.cpp:
716 (WebCore::FormDataBuilder::encodingFromAcceptCharset):
718 2011-02-05 Adam Barth <abarth@webkit.org>
720 Reviewed by Eric Seidel.
722 Introduce URLString to represent a canonicalized URL represented by a string
723 https://bugs.webkit.org/show_bug.cgi?id=53847
725 Instead of using String all over the codebase to represent a URL,
726 instead we should have a type to represent a canonicalized URL in the
727 form of a string. This patch introduces that type.
731 * WebCore.xcodeproj/project.pbxproj:
733 (WebCore::KURL::KURL):
735 (WebCore::KURL::urlString):
737 2011-02-05 Robert Hogan <robert@webkit.org>
739 Reviewed by Antonio Gomes.
741 [Qt] Style widgets not rendering
742 https://bugs.webkit.org/show_bug.cgi?id=53849
744 * html/HTMLObjectElement.cpp:
745 (WebCore::HTMLObjectElement::hasValidClassId): x-qt-styled-widget is a valid class id too
747 2011-02-05 Jochen Eisinger <jochen@chromium.org>
749 Reviewed by Adam Barth.
751 Add ContentSecurityPolicy object to Document and pass the X-WebKit-CSP header from the MainResourceLoader.
752 https://bugs.webkit.org/show_bug.cgi?id=53685
754 * WebCore.xcodeproj/project.pbxproj:
756 (WebCore::Document::contentSecurityPolicy):
757 * loader/MainResourceLoader.cpp:
758 (WebCore::MainResourceLoader::didReceiveResponse):
759 * page/ContentSecurityPolicy.cpp:
760 (WebCore::ContentSecurityPolicy::didReceiveHeader):
761 * page/ContentSecurityPolicy.h:
763 2011-02-05 Eric Seidel <eric@webkit.org>
765 Reviewed by Adam Barth.
767 Safari should lowercase schemes in cannonicalized urls to match every other browser
768 https://bugs.webkit.org/show_bug.cgi?id=53848
770 We're clearly the odd man out here. See results from every browser at:
771 https://github.com/abarth/url-spec/blob/master/tests/gurl-results/by-browser.txt
774 (WebCore::KURL::parse):
775 - Just lowercase the scheme when copying.
777 2011-02-05 Antti Koivisto <antti@apple.com>
779 Reviewed by Dave Hyatt.
781 Optimize matching of descendant selectors
782 https://bugs.webkit.org/show_bug.cgi?id=49876
783 <rdar://problem/8772822>
785 During style recalculation, maintain a filter of tags, ids and classes seen in ancestor elements.
786 Use the filter to quickly reject descendant and child selectors when doing style matching.
788 This speeds up style recalculations 3-6x on many major web sites.
790 * css/CSSStyleSelector.cpp:
791 (WebCore::RuleData::RuleData):
792 (WebCore::RuleData::descendantSelectorIdentifierHashes):
793 (WebCore::collectElementIdentifiers):
794 (WebCore::CSSStyleSelector::pushParent):
795 (WebCore::CSSStyleSelector::popParent):
796 (WebCore::CSSStyleSelector::fastRejectSelector):
797 (WebCore::CSSStyleSelector::matchRulesForList):
798 (WebCore::RuleData::collectDescendantSelectorIdentifierHashes):
799 * css/CSSStyleSelector.h:
800 (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
802 (WebCore::StyleSelectorParentPusher::StyleSelectorParentPusher):
803 (WebCore::StyleSelectorParentPusher::push):
804 (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
805 (WebCore::Element::attach):
806 (WebCore::Element::recalcStyle):
808 2011-02-05 Nate Chapin <japhet@chromium.org>
810 Reviewed by Adam Barth.
812 Refactor: NotificationCenter shouldn't hold its own copy of the ScriptExecutionContext*
813 when it inherits one from ActiveDOMObject.
814 https://bugs.webkit.org/show_bug.cgi?id=53815
816 * bindings/js/JSDesktopNotificationsCustom.cpp:
817 (WebCore::JSNotificationCenter::requestPermission):
818 * bindings/v8/custom/V8NotificationCenterCustom.cpp:
819 (WebCore::V8NotificationCenter::requestPermissionCallback):
820 * notifications/NotificationCenter.cpp:
821 (WebCore::NotificationCenter::NotificationCenter):
822 (WebCore::NotificationCenter::checkPermission):
823 (WebCore::NotificationCenter::requestPermission):
824 (WebCore::NotificationCenter::disconnectFrame):
825 * notifications/NotificationCenter.h:
826 (WebCore::NotificationCenter::createHTMLNotification):
827 (WebCore::NotificationCenter::createNotification):
829 2011-02-04 Adam Barth <abarth@webkit.org>
831 Reviewed by Maciej Stachowiak.
833 Crash in WebCore::TextEncoding::decode below XSSFilter::init
834 https://bugs.webkit.org/show_bug.cgi?id=53837
836 Add missing null check.
838 Test: http/tests/security/xssAuditor/non-block-javascript-url-frame.html
840 * html/parser/XSSFilter.cpp:
841 (WebCore::XSSFilter::init):
843 2011-02-04 Simon Fraser <simon.fraser@apple.com>
845 Reviewed by Dan Bernstein.
847 Crashes in ShadowBlur via WebKit2 FindController
848 https://bugs.webkit.org/show_bug.cgi?id=53830
850 Fix a crash cause by re-entering ShadowBlur, and add assertions to
851 detect when it happens.
853 The re-entrancy occurred when drawRectShadowWithTiling() filled
854 the interior of the shadow with fillRect() on the context
855 which still had the shadow state set. This would make another ShadowBlur
856 on the stack and call into the code again, potentially blowing away
859 Fix by turning off shadows in the destination context while we're
860 drawing the tiled shadow. The non-tiled code path already did this.
862 Not testable because CSS shadows clip out the inside of the rect
863 being shadowed, and SVG uses fillPath, even for rects.
865 * platform/graphics/ShadowBlur.cpp:
866 (WebCore::ScratchBuffer::ScratchBuffer):
867 (WebCore::ScratchBuffer::getScratchBuffer):
868 (WebCore::ScratchBuffer::scheduleScratchBufferPurge):
869 (WebCore::ShadowBlur::ShadowBlur):
870 (WebCore::ShadowBlur::drawRectShadowWithTiling):
872 2011-02-04 Carlos Garcia Campos <cgarcia@igalia.com>
874 Reviewed by Martin Robinson.
876 [GTK] Don't use a fixed size for search field icons
877 https://bugs.webkit.org/show_bug.cgi?id=50624
879 Use the parent input content box to make sure the icon fits in the
880 search field, scaling it down when needed.
882 * platform/gtk/RenderThemeGtk.cpp:
883 (WebCore::paintGdkPixbuf):
884 (WebCore::getIconSizeForPixelSize):
885 (WebCore::adjustSearchFieldIconStyle):
886 (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
887 (WebCore::centerRectVerticallyInParentInputElement):
888 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
889 (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
890 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
891 (WebCore::RenderThemeGtk::paintCapsLockIndicator):
892 (WebCore::RenderThemeGtk::paintMediaButton):
894 2011-02-04 Hironori Bono <hbono@chromium.org>
896 Reviewed by Adam Barth.
898 [chromium] JPEG corruption
899 https://bugs.webkit.org/show_bug.cgi?id=53250
901 Same as gray-scale JPEGs, we convert the colors of CMYK JPEGs with color
902 profiles from CMYK to RGB twice and it causes color corruption. This
903 change suppresses the color profiles for CMYK JPEGs same as gray-scale
906 Test: fast/images/cmyk-jpeg-with-color-profile.html
908 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
909 (WebCore::JPEGImageReader::decode):
911 2011-02-04 Xiyuan Xia <xiyuan@chromium.org>
913 Reviewed by Tony Chang.
915 [Chromium] Option text in select popup does not align with menulist button text
916 https://bugs.webkit.org/show_bug.cgi?id=53632
918 This makes clientPaddingLeft and clientPaddingRight return
919 the additional m_innerBlock's padding so that the popup item text
920 aligns with the menulist button text.
922 * rendering/RenderMenuList.cpp:
923 (WebCore::RenderMenuList::clientPaddingLeft):
924 (WebCore::RenderMenuList::clientPaddingRight):
926 2011-02-04 Anders Carlsson <andersca@apple.com>
928 Reviewed by Sam Weinig and Beth Dakin.
930 REGRESSION: Horizontal scrollbar thumbs leave artifacts over page content when scrolling vertically
931 <rdar://problem/8962457>
933 * platform/ScrollView.cpp:
934 (WebCore::ScrollView::scrollContents):
935 Subtract scrollbars from the scroll view rect if overlay scrollers are enabled.
937 * platform/ScrollableArea.cpp:
938 (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
939 Make sure to invalidate both scrollbars if overlay scrollers are enabled.
941 2011-02-04 Adam Barth <abarth@webkit.org>
943 Reviewed by Eric Seidel.
945 PluginDocuments don't create widgets for plugins on back/forward
946 https://bugs.webkit.org/show_bug.cgi?id=53474
948 Long ago, PluginDocument always caused the HTMLEmbedElement to create
949 its widget synchronously during a post-layout task. Recently, however,
950 some changes to the HistroyController caused layout on back/forward to
951 become slightly more complicated (and added an extra level of recursion
952 to layout). This extra level of recursion triggered the "I've recursed
953 too many times" condition in the post-layout task queue, causing the
954 FrameView to run the remainder of the tasks asynchronously.
955 Unfortunately, that broke PluginDocument because it needs its the
956 HTMLEmbedElement's updateWidget task to run synchronously.
958 This patch adds a mechanism for "kicking off" the pending post-layout
959 tasks synchronously (instead of waiting for the timer to fire).
960 PluginDocument then uses that facility to ensure that the
961 HTMLEmbedElement's updateWidget task happens.
963 Test: plugins/plugin-document-back-forward.html
965 * html/PluginDocument.cpp:
966 (WebCore::PluginDocumentParser::appendBytes):
967 * page/FrameView.cpp:
968 (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
971 2011-02-04 Charlie Reis <creis@chromium.org>
973 Reviewed by Mihai Parparita.
975 Crash in WebCore::HistoryController::itemsAreClones
976 https://bugs.webkit.org/show_bug.cgi?id=52819
978 Avoids deleting the current HistoryItem while it is still in use.
979 Ensures that provisional items are committed for same document navigations.
980 Ensures that error pages are committed on back/forward navigations.
981 Also removes unneeded sanity checks used for diagnosing the problem.
983 * loader/HistoryController.cpp:
984 * loader/HistoryController.h:
986 2011-02-04 Carol Szabo <carol.szabo@nokia.com>
988 Reviewed by David Hyatt.
992 CSS 2.1 failure: content-*
993 https://bugs.webkit.org/show_bug.cgi?id=52126
995 Test: fast/css/counters/content-021.html
997 * rendering/CounterNode.cpp:
999 Made parameter const because it is supposed to be so.
1000 * rendering/RenderCounter.cpp:
1001 (WebCore::previousInPreOrder):
1002 (WebCore::previousSiblingOrParent):
1003 (WebCore::parentElement):
1004 (WebCore::areRenderersElementsSiblings):
1005 (WebCore::nextInPreOrder):
1006 Added these local helper functions to help navigate the DOM tree
1007 enriched with :before and :after pseudo elements.
1008 (WebCore::planCounter):
1009 Fixed bug that would create a repeat counter for second and
1010 subsequent renderers associated with the same DOM element.
1011 (WebCore::findPlaceForCounter):
1012 (WebCore::makeCounterNode):
1013 Changed to use the new tree navigation functions described above
1014 instead of the Renderer Tree navigation functions.
1015 (WebCore::RenderCounter::rendererSubtreeAttached):
1016 (WebCore::RenderCounter::rendererStyleChanged):
1017 Optimized to not bother about counters until the renderers are
1021 Debug helper functions used to debug Counter bugs.
1023 2011-02-04 Dan Bernstein <mitz@apple.com>
1027 * html/parser/XSSFilter.cpp:
1028 (WebCore::HTMLNames::containsJavaScriptURL):
1030 2011-02-04 Dan Bernstein <mitz@apple.com>
1032 Reviewed by Anders Carlsson.
1034 Make an infinite loop introduced in r77454 finite.
1036 * html/parser/XSSFilter.cpp:
1037 (WebCore::HTMLNames::containsJavaScriptURL):
1039 2011-02-04 Jer Noble <jer.noble@apple.com>
1041 Reviewed by Eric Carlson.
1043 Frame accurate seeking isn't always accurate
1044 https://bugs.webkit.org/show_bug.cgi?id=52697
1046 Test: media/video-frame-accurate-seek.html
1048 Make seeking slightly more accurate by rounding instead of truncating
1049 when converting from seconds-in-float to time/timeScale.
1051 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1052 (WebCore::MediaPlayerPrivateQTKit::createQTTime):
1053 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1054 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::mediaTimeForTimeValue):
1055 * platform/graphics/win/QTMovie.cpp:
1056 (QTMovie::setCurrentTime):
1058 2011-02-04 Jeremy Orlow <jorlow@chromium.org>
1060 Reviewed by Nate Chapin.
1062 Second IndexedDB events overhaul patch
1063 https://bugs.webkit.org/show_bug.cgi?id=53813
1065 If an IDBRequest has a IDBTransaction, it should propogate
1066 events through it. In order to do this, IDBRequest needs to
1067 hold a transaction frontend object rather than a backend one.
1069 Test: storage/indexeddb/request-event-propagation.html
1071 * storage/IDBCursor.cpp:
1072 (WebCore::IDBCursor::IDBCursor):
1073 * storage/IDBCursor.h:
1074 (WebCore::IDBCursor::create):
1075 * storage/IDBDatabase.cpp:
1076 (WebCore::IDBDatabase::setSetVersionTransaction):
1077 (WebCore::IDBDatabase::createObjectStore):
1078 (WebCore::IDBDatabase::deleteObjectStore):
1079 * storage/IDBDatabase.h:
1080 * storage/IDBIndex.cpp:
1081 (WebCore::IDBIndex::IDBIndex):
1082 (WebCore::IDBIndex::openCursor):
1083 (WebCore::IDBIndex::openKeyCursor):
1084 (WebCore::IDBIndex::get):
1085 (WebCore::IDBIndex::getKey):
1086 * storage/IDBIndex.h:
1087 (WebCore::IDBIndex::create):
1088 * storage/IDBObjectStore.cpp:
1089 (WebCore::IDBObjectStore::IDBObjectStore):
1090 (WebCore::IDBObjectStore::get):
1091 (WebCore::IDBObjectStore::add):
1092 (WebCore::IDBObjectStore::put):
1093 (WebCore::IDBObjectStore::deleteFunction):
1094 (WebCore::IDBObjectStore::createIndex):
1095 (WebCore::IDBObjectStore::deleteIndex):
1096 (WebCore::IDBObjectStore::openCursor):
1097 * storage/IDBObjectStore.h:
1098 (WebCore::IDBObjectStore::create):
1099 * storage/IDBRequest.cpp:
1100 (WebCore::IDBRequest::create):
1101 (WebCore::IDBRequest::IDBRequest):
1102 (WebCore::IDBRequest::resetReadyState):
1103 (WebCore::IDBRequest::onSuccess):
1104 (WebCore::IDBRequest::dispatchEvent):
1105 * storage/IDBRequest.h:
1106 * storage/IDBTransaction.cpp:
1107 (WebCore::IDBTransaction::IDBTransaction):
1108 (WebCore::IDBTransaction::objectStore):
1109 (WebCore::IDBTransaction::contextDestroyed):
1110 (WebCore::IDBTransaction::enqueueEvent):
1111 * storage/IDBTransaction.h:
1112 * storage/IDBTransaction.idl:
1114 2011-02-04 Jeremy Orlow <jorlow@chromium.org>
1116 Reviewed by Nate Chapin.
1118 First step towards event propogation within IndexedDB
1119 https://bugs.webkit.org/show_bug.cgi?id=53795
1121 This is the first step towards implementing
1122 http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
1123 within IndexedDB. I've created a method that knows how
1124 to capture and bubble (based on Node's dispatchGenericEvent).
1125 I've then changed IDBRequest to use it.
1127 The only functional change is that preventDefault now must
1128 be called in error events to prevent the transaction from
1129 being aborted. The tests reflect this change and there's one
1130 specific test to look at this behavior.
1132 Test: storage/indexeddb/error-causes-abort-by-default.html
1134 * storage/IDBAbortEvent.cpp:
1135 (WebCore::IDBAbortEvent::create):
1136 (WebCore::IDBAbortEvent::IDBAbortEvent):
1137 * storage/IDBAbortEvent.h:
1138 * storage/IDBCompleteEvent.cpp:
1139 (WebCore::IDBCompleteEvent::create):
1140 (WebCore::IDBCompleteEvent::IDBCompleteEvent):
1141 * storage/IDBCompleteEvent.h:
1142 * storage/IDBErrorEvent.cpp:
1143 (WebCore::IDBErrorEvent::IDBErrorEvent):
1144 * storage/IDBEvent.cpp:
1145 (WebCore::IDBEvent::IDBEvent):
1146 (WebCore::IDBEvent::dispatch):
1147 * storage/IDBEvent.h:
1148 * storage/IDBRequest.cpp:
1149 (WebCore::IDBRequest::dispatchEvent):
1150 * storage/IDBRequest.h:
1151 * storage/IDBSuccessEvent.cpp:
1152 (WebCore::IDBSuccessEvent::IDBSuccessEvent):
1153 * storage/IDBTransaction.cpp:
1154 (WebCore::IDBTransaction::onAbort):
1155 (WebCore::IDBTransaction::onComplete):
1156 * storage/IDBTransaction.h:
1157 (WebCore::IDBTransaction::backend):
1158 * storage/IDBTransactionBackendImpl.cpp:
1159 (WebCore::IDBTransactionBackendImpl::taskTimerFired):
1161 2011-02-04 Daniel Cheng <dcheng@chromium.org>
1163 Reviewed by Dmitry Titov.
1165 Clone WebClipboard to be frame-specific.
1166 https://bugs.webkit.org/show_bug.cgi?id=53727
1168 For drop operations, Chrome currently snapshots the data and copies it
1169 into the renderer process. As we add more supported drag data types, the
1170 copy will become increasingly expensive. Instead, we'd like to snapshot
1171 data in the browser to reduce the amount of data copied and to support
1172 Blob in DataTransferItem. In order to allow this, we associated
1173 WebClipboard with a frame so it can correctly route its IPCs to the
1174 corresponding Chromium host.
1176 No new tests because no new functionality.
1178 * platform/chromium/ChromiumDataObject.cpp:
1179 (WebCore::ChromiumDataObject::createReadable):
1180 * platform/chromium/ChromiumDataObject.h:
1181 * platform/chromium/ClipboardChromium.cpp:
1182 (WebCore::ClipboardChromium::create):
1183 * platform/chromium/PlatformBridge.h:
1184 * platform/chromium/ReadableDataObject.cpp:
1185 (WebCore::ReadableDataObject::create):
1186 (WebCore::ReadableDataObject::ReadableDataObject):
1187 (WebCore::ReadableDataObject::getData):
1188 (WebCore::ReadableDataObject::urlTitle):
1189 (WebCore::ReadableDataObject::htmlBaseUrl):
1190 (WebCore::ReadableDataObject::filenames):
1191 (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
1192 * platform/chromium/ReadableDataObject.h:
1194 2011-02-04 Jeremy Orlow <jorlow@chromium.org>
1196 Revert https://bugs.webkit.org/show_bug.cgi?id=53795
1198 * storage/IDBAbortEvent.cpp:
1199 (WebCore::IDBAbortEvent::create):
1200 (WebCore::IDBAbortEvent::IDBAbortEvent):
1201 * storage/IDBAbortEvent.h:
1202 * storage/IDBCompleteEvent.cpp:
1203 (WebCore::IDBCompleteEvent::create):
1204 (WebCore::IDBCompleteEvent::IDBCompleteEvent):
1205 * storage/IDBCompleteEvent.h:
1206 * storage/IDBErrorEvent.cpp:
1207 (WebCore::IDBErrorEvent::IDBErrorEvent):
1208 * storage/IDBEvent.cpp:
1209 (WebCore::IDBEvent::IDBEvent):
1210 * storage/IDBEvent.h:
1211 * storage/IDBRequest.cpp:
1212 (WebCore::IDBRequest::dispatchEvent):
1213 * storage/IDBRequest.h:
1214 * storage/IDBSuccessEvent.cpp:
1215 (WebCore::IDBSuccessEvent::IDBSuccessEvent):
1216 * storage/IDBTransaction.cpp:
1217 (WebCore::IDBTransaction::onAbort):
1218 (WebCore::IDBTransaction::onComplete):
1219 * storage/IDBTransaction.h:
1220 * storage/IDBTransactionBackendImpl.cpp:
1221 (WebCore::IDBTransactionBackendImpl::taskTimerFired):
1223 2011-02-04 Martin Galpin <martin@66laps.com>
1225 Reviewed by David Levin.
1227 CORS origin header not set on GET when a preflight request is required.
1228 https://bugs.webkit.org/show_bug.cgi?id=50773
1230 Test: http/tests/xmlhttprequest/cross-origin-preflight-get.html
1232 * loader/DocumentThreadableLoader.cpp:
1233 (WebCore::DocumentThreadableLoader::preflightSuccess):
1234 Explicitly set the request origin after a preflight request succeeds.
1236 2011-02-04 Jeremy Orlow <jorlow@chromium.org>
1238 Reviewed by Nate Chapin.
1240 First step towards event propogation within IndexedDB
1241 https://bugs.webkit.org/show_bug.cgi?id=53795
1243 This is the first step towards implementing
1244 http://www.w3.org/Bugs/Public/show_bug.cgi?id=11348
1245 within IndexedDB. I've created a method that knows how
1246 to capture and bubble (based on Node's dispatchGenericEvent).
1247 I've then changed IDBRequest to use it.
1249 The only functional change is that preventDefault now must
1250 be called in error events to prevent the transaction from
1251 being aborted. The tests reflect this change and there's one
1252 specific test to look at this behavior.
1254 Test: storage/indexeddb/error-causes-abort-by-default.html
1256 * storage/IDBAbortEvent.cpp:
1257 (WebCore::IDBAbortEvent::create):
1258 (WebCore::IDBAbortEvent::IDBAbortEvent):
1259 * storage/IDBAbortEvent.h:
1260 * storage/IDBCompleteEvent.cpp:
1261 (WebCore::IDBCompleteEvent::create):
1262 (WebCore::IDBCompleteEvent::IDBCompleteEvent):
1263 * storage/IDBCompleteEvent.h:
1264 * storage/IDBErrorEvent.cpp:
1265 (WebCore::IDBErrorEvent::IDBErrorEvent):
1266 * storage/IDBEvent.cpp:
1267 (WebCore::IDBEvent::IDBEvent):
1268 (WebCore::IDBEvent::dispatch):
1269 * storage/IDBEvent.h:
1270 * storage/IDBRequest.cpp:
1271 (WebCore::IDBRequest::dispatchEvent):
1272 * storage/IDBRequest.h:
1273 * storage/IDBSuccessEvent.cpp:
1274 (WebCore::IDBSuccessEvent::IDBSuccessEvent):
1275 * storage/IDBTransaction.cpp:
1276 (WebCore::IDBTransaction::onAbort):
1277 (WebCore::IDBTransaction::onComplete):
1278 * storage/IDBTransaction.h:
1279 (WebCore::IDBTransaction::backend):
1280 * storage/IDBTransactionBackendImpl.cpp:
1281 (WebCore::IDBTransactionBackendImpl::taskTimerFired):
1283 2011-02-04 Dimitri Glazkov <dglazkov@chromium.org>
1285 Reviewed by Csaba Osztrogonác.
1287 [Qt]REGRESSION(r76951): media/controls-without-preload.html fails
1288 https://bugs.webkit.org/show_bug.cgi?id=53674
1290 * css/mediaControlsQt.css:
1292 2011-02-04 Dan Bernstein <mitz@apple.com>
1294 Reviewed by Darin Adler and Dave Hyatt.
1296 <rdar://problem/8902704> Make ruby text size 50% by default
1297 https://bugs.webkit.org/show_bug.cgi?id=53723
1300 (ruby > rt): Changed the font-size from 60% to 50%.
1302 2011-02-04 Antti Koivisto <antti@apple.com>
1304 Reviewed by Dimitri Glazkov.
1306 https://bugs.webkit.org/show_bug.cgi?id=53610
1307 Regression: adjacent sibling selector not working as expected
1308 <rdar://problem/8960033>
1310 https://bugs.webkit.org/show_bug.cgi?id=53574
1311 REGRESSION (r76012): :last-child:after not working as expected
1312 <rdar://problem/8948643>
1314 Test for additional conditions in parent style that prevent sharing.
1316 Tests: fast/selectors/style-sharing-adjacent-selector.html
1317 fast/selectors/style-sharing-last-child.html
1319 * css/CSSStyleSelector.cpp:
1320 (WebCore::parentStylePreventsSharing):
1321 (WebCore::CSSStyleSelector::locateSharedStyle):
1323 2011-02-04 Mark Mentovai <mark@chromium.org>
1325 Reviewed by Dimitri Glazkov.
1327 Chromium GYP build fix.
1329 When various settings were moved to webcore_prerequisites in r66364,
1330 things that should have been direct_dependent_settings were not marked
1331 as such. GYP 'defines', for example, make no sense on a 'none'-type
1332 target such as webcore_prerequisites. It appears that it was intended
1333 for these settings to be pushed to direct dependents, which would make
1334 direct_dependent_settings correct.
1336 Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
1337 http://crbug.com/71537, which at best causes Mac console log spew, and
1338 at worst may result in Chromium's copy of WebCore using system
1339 definitions of certain Objective-C classes at runtime, or vice-versa.
1341 The build now includes a postbuild step to prevent
1342 http://crbug.com/71537 from regressing again. The build will fail upon
1345 https://bugs.webkit.org/show_bug.cgi?id=53630
1347 * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
1348 direct_dependent_settings as needed, add the check_objc_rename
1350 * WebCore.gyp/mac/check_objc_rename.sh: Added.
1352 2011-02-04 Robert Hogan <robert@webkit.org>
1354 Reviewed by Darin Fisher.
1356 Move chromium iframe shim code to cross-platform file
1357 https://bugs.webkit.org/show_bug.cgi?id=52594
1359 Move Chromium code for identifying and cutting out
1360 iframe shims from plugins to cross-platform utility file
1361 IFrameShimSupport.cpp.
1362 Amend PluginViewQt to use this code to handle shims correctly.
1364 * WebCore.gypi: Add Chromium support for IFrameShimSupport.cpp
1365 * WebCore.pro: Add Qt support for IFrameShimSupport.cpp
1366 * plugins/IFrameShimSupport.cpp: Added.
1367 (WebCore::getObjectStack):
1368 (WebCore::iframeIsAbovePlugin):
1369 (WebCore::getPluginOcclusions):
1370 * plugins/IFframeShimSupport.h: Added.
1371 * plugins/qt/PluginViewQt.cpp:
1372 (WebCore::PluginView::setNPWindowIfNeeded):
1374 2011-02-04 Xiaomei Ji <xji@chromium.org>
1376 Reviewed by David Levin.
1378 Implement "<option> should implement the dir attribute" for chromium port after r76983.
1379 https://bugs.webkit.org/show_bug.cgi?id=50969
1381 Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html
1384 * platform/chromium/PopupMenuChromium.cpp: Remove directionality hint from
1385 <select> drop-down setting.
1386 (WebCore::PopupListBox::paintRow): Use <option>'s directionality to paint
1387 items in drop-down and pass-in bidi override flag when creating text run.
1388 * platform/chromium/PopupMenuChromium.h: Remove directionalityHint from
1389 PopupContainerSettings.
1391 2011-02-04 Jeremy Orlow <jorlow@chromium.org>
1393 Build fix from merge mistake.
1395 * storage/IDBTransaction.cpp:
1396 (WebCore::IDBTransaction::ensureEventTargetData):
1398 2011-02-04 Levi Weintraub <leviw@chromium.org>
1400 Reviewed by Darin Adler.
1402 Remove unneeded function declarations in comments in EditorClient.h
1403 https://bugs.webkit.org/show_bug.cgi?id=53745
1405 Removing unused commented out function declarations. No tests since this is just cleanup.
1407 * page/EditorClient.h:
1409 2011-02-03 Jeremy Orlow <jorlow@chromium.org>
1411 Reviewed by Nate Chapin.
1413 Refactor IDBRequest and IDBTransaction a bit
1414 https://bugs.webkit.org/show_bug.cgi?id=53565
1416 There were a lot of subtle issues with the way IDBTransaction
1417 and IDBRequest used to be written. This cleans a lot of them up
1418 and largely simplifies the logic. Using EventQueue rather than
1419 timers is one example of the simplification.
1421 * bindings/scripts/CodeGeneratorV8.pm:
1422 * dom/EventQueue.cpp:
1423 (WebCore::EventQueue::enqueueEvent):
1424 (WebCore::EventQueue::dispatchEvent):
1425 * storage/IDBCursor.cpp:
1426 (WebCore::IDBCursor::continueFunction):
1427 * storage/IDBRequest.cpp:
1428 (WebCore::IDBRequest::create):
1429 (WebCore::IDBRequest::IDBRequest):
1430 (WebCore::IDBRequest::resetReadyState):
1431 (WebCore::IDBRequest::onError):
1432 (WebCore::IDBRequest::onSuccess):
1433 (WebCore::IDBRequest::dispatchEvent):
1434 (WebCore::IDBRequest::enqueueEvent):
1435 (WebCore::IDBRequest::eventTargetData):
1436 (WebCore::IDBRequest::ensureEventTargetData):
1437 * storage/IDBRequest.h:
1438 (WebCore::IDBRequest::dispatchEvent):
1439 * storage/IDBTransaction.cpp:
1440 (WebCore::IDBTransaction::create):
1441 (WebCore::IDBTransaction::IDBTransaction):
1442 (WebCore::IDBTransaction::objectStore):
1443 (WebCore::IDBTransaction::abort):
1444 (WebCore::IDBTransaction::onAbort):
1445 (WebCore::IDBTransaction::onComplete):
1446 (WebCore::IDBTransaction::onTimeout):
1447 (WebCore::IDBTransaction::canSuspend):
1448 (WebCore::IDBTransaction::stop):
1449 (WebCore::IDBTransaction::enqueueEvent):
1450 (WebCore::IDBTransaction::eventTargetData):
1451 (WebCore::IDBTransaction::ensureEventTargetData):
1452 * storage/IDBTransaction.h:
1454 2011-02-01 Jeremy Orlow <jorlow@chromium.org>
1456 Reviewed by Nate Chapin.
1458 Remove the timeout event from IndexedDB
1459 https://bugs.webkit.org/show_bug.cgi?id=53521
1461 Remove timeout and ontimeout from IDBTransaction per the spec.
1464 * storage/IDBDatabase.cpp:
1465 (WebCore::IDBDatabase::transaction):
1466 * storage/IDBDatabase.h:
1467 (WebCore::IDBDatabase::transaction):
1468 * storage/IDBDatabase.idl:
1469 * storage/IDBDatabaseBackendImpl.cpp:
1470 (WebCore::IDBDatabaseBackendImpl::setVersion):
1471 (WebCore::IDBDatabaseBackendImpl::transaction):
1472 * storage/IDBDatabaseBackendImpl.h:
1473 * storage/IDBDatabaseBackendInterface.h:
1474 * storage/IDBTimeoutEvent.cpp: Removed.
1475 * storage/IDBTimeoutEvent.h: Removed.
1476 * storage/IDBTransaction.cpp:
1477 (WebCore::IDBTransaction::IDBTransaction):
1478 (WebCore::IDBTransaction::onAbort):
1479 (WebCore::IDBTransaction::onComplete):
1480 * storage/IDBTransaction.h:
1481 * storage/IDBTransaction.idl:
1482 * storage/IDBTransactionBackendImpl.cpp:
1483 (WebCore::IDBTransactionBackendImpl::create):
1484 (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
1485 * storage/IDBTransactionBackendImpl.h:
1486 * storage/IDBTransactionCallbacks.h:
1488 2011-02-04 Chris Fleizach <cfleizach@apple.com>
1490 Reviewed by Darin Adler.
1492 AX: Can't set accessibility overridden attributes on web objects
1493 https://bugs.webkit.org/show_bug.cgi?id=53725
1495 accessibilitySetOverriddenValue does not work on AX objects from WebCore because
1496 the right method needed to be overridden (accessibilitySupportsOverriddenAttributes).
1497 Unfortunately, there's no way to test this from DRT, since AppKit returns the overridden
1498 attribute only when an AX client asks for it through the AX frameworks.
1500 * accessibility/mac/AccessibilityObjectWrapper.mm:
1501 (-[AccessibilityObjectWrapper accessibilitySupportsOverriddenAttributes]):
1503 2011-02-03 Dimitri Glazkov <dglazkov@chromium.org>
1505 Reviewed by Kent Tamura.
1507 REGRESSION(r76147): Slider thumb is not repainted when let go outside of the slider track.
1508 https://bugs.webkit.org/show_bug.cgi?id=53691
1510 Test: fast/repaint/slider-thumb-drag-release.html
1512 * html/shadow/SliderThumbElement.cpp:
1513 (WebCore::SliderThumbElement::stopDragging): Added dirtying the layout bit to ensure
1514 that the thumb is repainted.
1516 2011-02-04 Mikhail Naganov <mnaganov@chromium.org>
1518 Reviewed by Pavel Feldman.
1520 Web Inspector: Add "show more" data grid node and waiting message UI components.
1521 https://bugs.webkit.org/show_bug.cgi?id=53763
1523 - "show more" data grid node is used for on-demand population of
1524 data grid contents (similar to DOM tree capability for limiting
1525 displayed nodes count);
1527 - waiting message is used for informing user about long lasting
1528 operations (with a possibility to cancel them).
1530 * English.lproj/localizedStrings.js:
1532 * WebCore.vcproj/WebCore.vcproj:
1533 * inspector/front-end/PleaseWaitMessage.js: Added.
1534 (WebInspector.PleaseWaitMessage):
1535 * inspector/front-end/ShowMoreDataGridNode.js: Added.
1536 (WebInspector.ShowMoreDataGridNode):
1537 * inspector/front-end/WebKit.qrc:
1538 * inspector/front-end/inspector.css:
1539 (.data-grid button):
1541 * inspector/front-end/inspector.html:
1543 2011-02-04 Adele Peterson <adele@apple.com>
1545 Reviewed by Dan Bernstein.
1547 Fix for https://bugs.webkit.org/show_bug.cgi?id=53740
1548 <rdar://problem/8503629> Allow platforms to specify if the placeholder should be visible when text controls are focused
1551 fast/forms/textarea-placeholder-visibility-1.html
1552 fast/forms/textarea-placeholder-visibility-2.html
1553 fast/forms/input-placeholder-visibility-1.html
1554 fast/forms/input-placeholder-visibility-2.html
1555 fast/forms/input-placeholder-visibility-3.html
1557 * html/HTMLFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
1558 Add a check for shouldShowPlaceholderWhenFocused.
1559 * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::updateValue):
1560 Whenever the value is updated, we should also update placeholder visibility.
1561 * rendering/RenderTheme.h: (WebCore::RenderTheme::shouldShowPlaceholderWhenFocused):
1562 Make the default the same as the existing behavior.
1563 * rendering/RenderThemeMac.h:
1564 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):
1565 Show placeholder when appropriate.
1567 2011-02-04 Pavel Podivilov <podivilov@chromium.org>
1569 Reviewed by Pavel Feldman.
1571 Web Inspector: evaluate on hover does not work on a breakpoint.
1572 https://bugs.webkit.org/show_bug.cgi?id=53768
1574 * inspector/front-end/SourceFrame.js:
1575 (WebInspector.SourceFrame.prototype._mouseHover):
1577 2011-02-04 Sheriff Bot <webkit.review.bot@gmail.com>
1579 Unreviewed, rolling out r77625 and r77626.
1580 http://trac.webkit.org/changeset/77625
1581 http://trac.webkit.org/changeset/77626
1582 https://bugs.webkit.org/show_bug.cgi?id=53765
1584 It broke Windows builds (Requested by Ossy_ on #webkit).
1586 * Android.jscbindings.mk:
1588 * ForwardingHeaders/pcre/pcre.h: Added.
1589 * ForwardingHeaders/yarr/Yarr.h: Removed.
1590 * ForwardingHeaders/yarr/YarrInterpreter.h: Removed.
1591 * ForwardingHeaders/yarr/YarrPattern.h: Removed.
1592 * WebCore.gyp/WebCore.gyp:
1594 * WebCore.vcproj/WebCore.vcproj:
1595 * WebCore.vcproj/copyForwardingHeaders.cmd:
1596 * platform/text/RegularExpression.cpp:
1597 (WebCore::RegularExpression::Private::regexp):
1598 (WebCore::RegularExpression::Private::compile):
1599 (WebCore::RegularExpression::Private::Private):
1600 (WebCore::RegularExpression::Private::create):
1601 (WebCore::RegularExpression::Private::~Private):
1602 (WebCore::RegularExpression::match):
1604 2011-02-04 Peter Varga <pvarga@webkit.org>
1606 Rubber-stamped by Csaba Osztrogonác.
1608 Replace PCRE with Yarr in WebCore
1609 https://bugs.webkit.org/show_bug.cgi?id=53496
1611 Speculative windows build fix.
1613 No new tests needed.
1615 * platform/text/RegularExpression.cpp:
1617 2011-02-04 Peter Varga <pvarga@webkit.org>
1620 Reviewed by Gavin Barraclough.
1622 Replace PCRE with Yarr in WebCore
1623 https://bugs.webkit.org/show_bug.cgi?id=53496
1625 No new tests needed.
1627 * Android.jscbindings.mk:
1629 * ForwardingHeaders/pcre/pcre.h: Removed.
1630 * ForwardingHeaders/yarr/Yarr.h: Added.
1631 * ForwardingHeaders/yarr/YarrInterpreter.h: Added.
1632 * ForwardingHeaders/yarr/YarrPattern.h: Added.
1633 * WebCore.gyp/WebCore.gyp:
1635 * WebCore.vcproj/WebCore.vcproj:
1636 * WebCore.vcproj/copyForwardingHeaders.cmd:
1637 * platform/text/RegularExpression.cpp:
1638 (WebCore::RegularExpression::Private::create):
1639 (WebCore::RegularExpression::Private::Private):
1640 (WebCore::RegularExpression::Private::compile):
1641 (WebCore::RegularExpression::match):
1643 2011-02-04 Pavel Feldman <pfeldman@chromium.org>
1645 Reviewed by Yury Semikhatsky.
1647 Web Inspector: Network panel filtering is broken.
1648 https://bugs.webkit.org/show_bug.cgi?id=53764
1650 * inspector/front-end/NetworkPanel.js:
1651 (WebInspector.NetworkPanel.prototype._sortItems):
1652 (WebInspector.NetworkPanel.prototype._sortByTimeline):
1653 (WebInspector.NetworkPanel.prototype._filter):
1654 (WebInspector.NetworkPanel.prototype._updateOffscreenRows):
1655 (WebInspector.NetworkDataGridNode.prototype.isFilteredOut):
1656 (WebInspector.NetworkDataGridNode.prototype.get selectable):
1657 (WebInspector.NetworkTotalGridNode.prototype.isFilteredOut):
1658 (WebInspector.NetworkTotalGridNode.prototype.get selectable):
1660 2011-02-04 Andrey Kosyakov <caseq@chromium.org>
1662 Reviewed by Pavel Feldman.
1664 Web Inspector: support overriding user agent strings
1665 https://bugs.webkit.org/show_bug.cgi?id=51485
1667 Test: http/tests/inspector/extensions-useragent.html
1669 * inspector/Inspector.idl:
1670 * inspector/InspectorController.cpp:
1671 (WebCore::InspectorController::disconnectFrontend):
1672 (WebCore::InspectorController::setUserAgentOverride):
1673 (WebCore::InspectorController::userAgentOverride):
1674 * inspector/InspectorController.h:
1675 * inspector/front-end/ExtensionAPI.js:
1676 (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.reload):
1677 * inspector/front-end/ExtensionServer.js:
1678 (WebInspector.ExtensionServer.prototype._onReload):
1679 * loader/FrameLoader.cpp:
1680 (WebCore::FrameLoader::userAgent):
1681 (WebCore::FrameLoader::applyUserAgent):
1683 2011-02-04 Pavel Podivilov <podivilov@chromium.org>
1685 Reviewed by Pavel Feldman.
1687 Web Inspector: scripts panel displays wrong file name after reload.
1688 https://bugs.webkit.org/show_bug.cgi?id=53761
1690 * inspector/front-end/ScriptsPanel.js:
1691 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
1693 2011-02-03 Yury Semikhatsky <yurys@chromium.org>
1695 Reviewed by Pavel Feldman.
1697 Web Inspector: remove settings related methods from InspectorClient
1698 https://bugs.webkit.org/show_bug.cgi?id=53686
1701 * inspector/CodeGeneratorInspector.pm:
1702 * inspector/InspectorClient.h:
1703 * inspector/InspectorFrontendClientLocal.cpp:
1704 (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
1705 (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
1706 (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
1707 * inspector/InspectorFrontendClientLocal.h: ports that provide in-process implementation of the inspector front-end can
1708 provide platform-specific settings accessor.
1709 (WebCore::InspectorFrontendClientLocal::Settings::Settings):
1710 (WebCore::InspectorFrontendClientLocal::Settings::~Settings):
1711 (WebCore::InspectorFrontendClientLocal::Settings::inspectorAttachedHeight):
1712 (WebCore::InspectorFrontendClientLocal::Settings::storeInspectorAttachedHeight):
1713 * loader/EmptyClients.h:
1715 2011-02-03 Anton Muhin <antonm@chromium.org>
1717 Reviewed by Adam Barth.
1719 [v8] frame several more JS code invocations into v8::TryCatch
1720 https://bugs.webkit.org/show_bug.cgi?id=53594
1722 This patch is preemptive and adjusts v8 bindings code to forthcoming small change
1723 in v8::ThrowException---currently sometimes exceptions thrown by this method
1724 do not reach surrounding v8::TryCatch handler (see
1725 http://code.google.com/p/v8/issues/detail?id=1072 and
1726 http://codereview.chromium.org/6397011/). Therefore the goal of this patch
1727 is to make forthcoming v8 roll as smooth as possible (alas, we'll still need
1728 one rebaseline as of now.)
1730 * bindings/v8/V8Proxy.cpp:
1731 (WebCore::V8Proxy::runScript): Do not rely on empty handle as a signal of exception, wrap into v8::TryCatch instead
1732 * bindings/v8/V8WindowErrorHandler.cpp:
1733 (WebCore::V8WindowErrorHandler::callListenerFunction): Ditto
1735 2011-02-03 Maciej Stachowiak <mjs@apple.com>
1737 Reviewed by Dan Bernstein.
1739 WebKit2: Need WebKit2 equivalent of WebResourceLoadDelegate::willSendRequest in the Bundle
1740 https://bugs.webkit.org/show_bug.cgi?id=52897
1741 <rdar://problem/8898294>
1743 * WebCore.exp.in: Add export now needed by WebKit2
1745 2011-02-03 Victoria Kirst <vrk@google.com>
1747 Reviewed by James Robinson.
1749 Replaces float literals with uniform values in shader code
1750 so that buggy drivers unable to parse float values in different
1751 locales will not produce a pink video.
1753 [chromium] Fix pink video bug with gpu-acceleration enabled
1754 https://bugs.webkit.org/show_bug.cgi?id=53568
1756 * platform/graphics/chromium/VideoLayerChromium.cpp:
1757 (WebCore::VideoLayerChromium::SharedValues::SharedValues):
1758 (WebCore::VideoLayerChromium::drawYUV):
1759 * platform/graphics/chromium/VideoLayerChromium.h:
1760 (WebCore::VideoLayerChromium::SharedValues::signAdjLocation):
1762 2011-02-03 James Kozianski <koz@chromium.org>
1764 Reviewed by Dimitri Glazkov.
1766 Add navigator.registerProtocolHandler behind a flag.
1767 https://bugs.webkit.org/show_bug.cgi?id=52609
1769 This method is described in the HTML5 specification here,
1770 http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler
1772 This change is largely cribbed from B. Green's 29651 patches. It is
1773 behind a flag so as not to break JS feature detection.
1775 New layout test fast/dom/registerProtocolHandler.html.
1777 * Configurations/FeatureDefines.xcconfig:
1778 * loader/EmptyClients.h:
1779 (WebCore::EmptyChromeClient::registerProtocolHandler):
1781 (WebCore::Chrome::registerProtocolHandler):
1783 * page/ChromeClient.h:
1784 * page/Navigator.cpp:
1785 (WebCore::verifyCustomHandlerURL):
1786 (WebCore::verifyProtocolHandlerScheme):
1787 (WebCore::Navigator::registerProtocolHandler):
1789 * page/Navigator.idl:
1791 2011-02-03 Brian Ryner <bryner@chromium.org>
1793 Reviewed by Darin Fisher.
1795 Add a field to the ResourceResponse for tracking the socket address
1796 of the host that the resource was fetched from. Patch was originally
1798 https://bugs.webkit.org/show_bug.cgi?id=53699
1800 * platform/network/chromium/ResourceResponse.cpp:
1801 (WebCore::ResourceResponse::doPlatformCopyData):
1802 (WebCore::ResourceResponse::doPlatformAdopt):
1803 * platform/network/chromium/ResourceResponse.h:
1804 (WebCore::ResourceResponse::socketAddress):
1805 (WebCore::ResourceResponse::setSocketAddress):
1807 2011-02-03 Adam Langley <agl@chromium.org>
1809 Reviewed by Adam Barth.
1811 Plumb mixed script URL to FrameLoaderClient
1812 https://bugs.webkit.org/show_bug.cgi?id=52384
1814 Regressions covered by http/tests/security/mixedContent/*
1816 * loader/EmptyClients.h:
1817 (WebCore::EmptyFrameLoaderClient::didRunInsecureContent):
1818 * loader/FrameLoader.cpp:
1819 (WebCore::FrameLoader::checkIfRunInsecureContent):
1820 * loader/FrameLoaderClient.h:
1822 2011-02-03 Simon Fraser <simon.fraser@apple.com>
1824 Reviewed by Dan Bernstein.
1826 REGRESSION: Artifacts on box-shadow corners in some cases
1827 https://bugs.webkit.org/show_bug.cgi?id=53731
1829 Fix overdrawing artifacts in ShadowBlur's tiling code path,
1830 which show up in shadows using a color with alpha.
1832 Test: fast/box-shadow/shadow-tiling-artifact.html
1834 * platform/graphics/ShadowBlur.cpp:
1835 (WebCore::ShadowBlur::drawRectShadowWithTiling): Ensure
1836 that the inner rect that gets filled does not overlap with any
1837 of the eight tiled areas by having the corner and side dimensions
1838 be the same for contiguous areas.
1840 2011-02-03 Adam Barth <abarth@webkit.org>
1842 Reviewed by Alexey Proskuryakov.
1844 XSS Auditor is spinning inside decodeURLEscapeSequences() if there are
1845 percent signs in large posted data
1846 https://bugs.webkit.org/show_bug.cgi?id=53405
1848 If the input string contains many non-% characters followed by a %
1849 character that is not a valid URL escape sequence, then the old
1850 algorithm would only advance the initial search by one character
1851 (instead of jumping to just after the % character). That would cause
1852 the algorithm to take N^2 time (in the number of characters before the
1853 first % character). This patch just advances the search past the first
1854 % character so we can start looking for next % character sooner.
1856 * platform/KURL.cpp:
1857 (WebCore::decodeURLEscapeSequences):
1859 2011-02-03 Pavel Podivilov <podivilov@chromium.org>
1861 Reviewed by Pavel Feldman.
1863 Web Inspector: click on a breakpoint highlights wrong line in source frame.
1864 https://bugs.webkit.org/show_bug.cgi?id=53692
1866 * inspector/front-end/BreakpointsSidebarPane.js:
1867 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._setupBreakpointElement):
1869 2011-02-03 Anton Muhin <antonm@chromium.org>
1871 Reviewed by Adam Barth.
1873 [v8] Bail out if to string conversion returned empty handle
1874 https://bugs.webkit.org/show_bug.cgi?id=53687
1876 This a temporary measure: actually one probably should never get empty handle
1877 if there was no exception. The root cause is under investigation.
1878 The bailout though allows Chromium not to crash---attempt to convert an empty
1879 v8 hande into WebCore string crashes with invalid memory access.
1881 See http://code.google.com/p/chromium/issues/detail?id=71544
1883 There is no known reduction expressible as a layout test so far. The crash found with automated testing tools.
1885 * bindings/v8/V8Binding.cpp:
1886 (WebCore::v8NonStringValueToWebCoreString): Bail out on empty handle
1887 * bindings/v8/V8Binding.h:
1888 (WebCore::V8ParameterBase::prepareBase): Ditto
1890 2011-02-03 Adam Barth <abarth@webkit.org>
1892 Attempt to fix Chromium build.
1894 * html/parser/XSSFilter.cpp:
1896 2011-02-03 Dirk Pranke <dpranke@chromium.org>
1898 Unreviewed, rolling out r77562.
1899 http://trac.webkit.org/changeset/77562
1900 https://bugs.webkit.org/show_bug.cgi?id=53630
1902 broke chromium mac build
1904 * WebCore.gyp/WebCore.gyp:
1905 * WebCore.gyp/mac/check_objc_rename.sh: Removed.
1907 2011-02-03 Adam Barth <abarth@webkit.org>
1909 Reviewed by Daniel Bates.
1911 XSS Auditor severely affects loading performance after submitting a large form
1912 https://bugs.webkit.org/show_bug.cgi?id=49845
1914 Switch over from the XSSAuditor to the XSSFilter, improving performance
1917 * html/parser/XSSFilter.cpp:
1918 (WebCore::XSSFilter::filterToken):
1919 * page/XSSAuditor.cpp:
1920 (WebCore::XSSAuditor::isEnabled):
1922 2011-02-03 Dirk Pranke <dpranke@chromium.org>
1924 Unreviewed, rolling out r77567.
1925 http://trac.webkit.org/changeset/77567
1926 https://bugs.webkit.org/show_bug.cgi?id=53468
1928 broke chromium linux svg, canvas tests, possibly win also?
1930 * platform/graphics/skia/ImageBufferSkia.cpp:
1931 (WebCore::getImageData):
1932 (WebCore::ImageBuffer::getUnmultipliedImageData):
1933 (WebCore::ImageBuffer::getPremultipliedImageData):
1934 (WebCore::putImageData):
1935 (WebCore::ImageBuffer::putUnmultipliedImageData):
1936 (WebCore::ImageBuffer::putPremultipliedImageData):
1938 2011-02-02 MORITA Hajime <morrita@google.com>
1940 Reviewed by Dimitri Glazkov.
1942 Refactoring: <progress> should not use ShadowElement
1943 https://bugs.webkit.org/show_bug.cgi?id=53583
1945 - Introduced RenderIndicatorPart and RenderProgressBarValuePart
1946 to be responsible for bar-part layout,
1947 which adopted layout logic from ShadowBlockElement.
1948 - ProgressBarValueElement is no longer a subclass of ShadowBlockElement.
1949 - Remove dependency from RenderProgress to HTMLProgressElement and
1951 - The shadow tree is no longer removed on detach(). It becomes persistent.
1952 This is now possible because the ShadowBlockElement dependency is gone.
1953 - ::-webkit-appearance for -webkit-progress-bar-value is no longer referred.
1954 That didn't make sense.
1956 * html/HTMLProgressElement.cpp:
1957 (WebCore::HTMLProgressElement::createShadowSubtreeIfNeeded):
1958 * html/HTMLProgressElement.h:
1959 * html/shadow/ProgressBarValueElement.h: Added.
1960 (WebCore::ProgressBarValueElement::ProgressBarValueElement):
1961 (WebCore::ProgressBarValueElement::shadowPseudoId):
1962 (WebCore::ProgressBarValueElement::createRenderer):
1963 (WebCore::ProgressBarValueElement::create):
1964 * rendering/RenderIndicator.cpp:
1965 (WebCore::RenderIndicatorPart::RenderIndicatorPart):
1966 (WebCore::RenderIndicatorPart::~RenderIndicatorPart):
1967 (WebCore::RenderIndicatorPart::layout):
1968 (WebCore::RenderIndicatorPart::styleDidChange):
1969 * rendering/RenderIndicator.h: Added RenderIndicatorPart class
1970 (WebCore::RenderIndicatorPart::originalVisibility):
1971 (WebCore::RenderIndicatorPart::requiresForcedStyleRecalcPropagation):
1972 (WebCore::RenderIndicatorPart::canHaveChildren):
1973 * rendering/RenderProgress.cpp:
1974 (WebCore::RenderProgressBarValuePart::preferredFrameRect):
1975 (WebCore::RenderProgressBarValuePart::shouldBeHidden):
1976 (WebCore::RenderProgress::updateFromElement):
1977 (WebCore::RenderProgress::layoutParts):
1978 (WebCore::RenderProgress::shouldHaveParts):
1979 * rendering/RenderProgress.h:
1980 (WebCore::RenderProgressBarValuePart::RenderProgressBarValuePart):
1982 2011-02-03 Jia Pu <jpu@apple.com>
1984 Reversion should not be marked as misspelled.
1985 https://bugs.webkit.org/show_bug.cgi?id=53255
1987 This patch includes fix for reported bug, and also some housekeeping changes.
1989 To implement desired behavior, we need:
1990 1. Add a new marker type, SpellCheckingExemption, since now we distingusish between text
1991 that shouldn't be spellchecked and text shouldn't be autocorrected.
1992 2. Make sure that there is no pending correction panel when we enter markAllMisspellingsAndBadGrammarInRanges().
1993 Otherwise the spell checking code in that function may interfere with autocorrection. This
1994 is achieved by explicitly applying pending correction when user types space, line break or
1997 Housekeeping code changes include:
1998 1. Change manual-tests that were broken by relocated WebCore directory.
1999 2. Use TextIterator in various DocumentMarkerController functions instead of using
2000 Node::traverseNextNode() directly.
2001 3. Allow passing multiple marker types into DocumentMarkerController::removeMarkers() and
2002 DocumentMarkerController::hasMarkers() to improve clarity and efficiency.
2003 4. Fixes of minor bugs that were exposed previously.
2005 * WebCore.exp.in: Change signature of DocumentMarkerController::removeMarkers().
2007 * dom/DocumentMarker.h: Added new marker type SpellCheckingExemption.
2009 * dom/DocumentMarkerController.cpp:
2010 (WebCore::DocumentMarkerController::removeMarkers): Use TextIterator to scan the range to be
2011 consistent with addMarker() function. Allow passing in multiple marker types in one call.
2012 Added a boolean argument to specify the behavior when removing markers that partially
2013 overlap the specified range.
2014 (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair): Allow passing in
2015 multiple marker types in one call.
2016 (WebCore::DocumentMarkerController::hasMarkers): Use TextIterator to scan the range to be
2017 consistent with addMarker() function. Allow passing in multiple marker types in one call.
2019 * dom/DocumentMarkerController.h: Allow passing in multiple marker types to removeMarkers()
2020 and hasMarkers(). Added a boolean argument to removeMarkers() to specify the behavior when
2021 removing markers that partially overlap the specified range.
2023 * editing/Editor.cpp:
2024 (WebCore::markerTypesForAutocorrection): Add SpellCheckingExemption marker when apply correction.
2025 (WebCore::markerTypesForReplacement): Ditto.
2026 (WebCore::Editor::respondToChangedSelection): Reordered call to dismissCorrectionPanel() and
2027 setSelection() to make sure there is no pending correction when entering
2028 markAllMisspellingsAndBadGrammarInRanges().
2029 (WebCore::Editor::appliedEditing): Only remove CorrectionIndicator markers when the command
2030 is a top level command to improve efficiency.
2031 (WebCore::Editor::insertTextWithoutSendingTextEvent): Added code to applying pending correction.
2032 (WebCore::Editor::insertLineBreak): Ditto.
2033 (WebCore::Editor::insertParagraphSeparator): Ditto.
2034 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Don't mark mispelling if the
2035 text carries SpellCheckingExemption marker.
2036 (WebCore::Editor::correctionPanelTimerFired): Reset correction panel if the returned suggestion
2037 from spellchecker is an empty string.
2038 (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
2039 Use new DocumentMarkerController::removeMarkers() to replace custom implemenation to improve
2040 efficiency and readability.
2041 (WebCore::Editor::applyCorrectionPanelInfo): Remove the code that set caret position after
2042 applying correction, since it's unnecessary. Also, store pre-correction string together with
2043 the marker for reversion panel to use.
2044 (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate): Apply pending correction.
2045 (WebCore::Editor::changeSelectionAfterCommand): Moved marker removal code to Editor::appliedEditing()
2046 where we have access to EditCommand object.
2048 * editing/Editor.h: Added new function applyAutocorrectionAfterTypingIfAppropriate().
2050 * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Change manual-tests that
2051 were broken by relocated WebCore directory.
2053 * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Ditto.
2055 * manual-tests/autocorrection/autocorrection-contraction.html: Ditto.
2057 * manual-tests/autocorrection/continue-typing-to-dismiss-reversion.html: Ditto.
2059 * manual-tests/autocorrection/delete-to-dismiss-reversion.html: Ditto.
2061 * manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html: Ditto.
2063 * manual-tests/autocorrection/dismiss-multiple-guesses.html: Ditto.
2065 * manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html: Ditto.
2067 * manual-tests/autocorrection/select-from-multiple-guesses.html: Ditto.
2069 * manual-tests/autocorrection/spell-checking-after-reversion.html: Added.
2071 * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html: Change manual-tests that
2072 were broken by relocated WebCore directory.
2074 * rendering/InlineTextBox.cpp:
2075 (WebCore::InlineTextBox::paintDocumentMarkers): Code clean-up to be more concise.
2077 2011-02-03 Abhishek Arya <inferno@chromium.org>
2079 Unreviewed, qt build fix.
2081 * rendering/RenderBlock.cpp:
2082 (WebCore::RenderBlock::removeFloatingObject):
2084 2011-02-03 Brian Salomon <bsalomon@google.com>
2086 Reviewed by James Robinson.
2088 Handle non-raster backed images in getUnmultipliedImageData()
2089 https://bugs.webkit.org/show_bug.cgi?id=53468
2091 No new tests. Existing canvas tests sufficient
2092 LayoutTests/canvas/philip/...
2094 * platform/graphics/skia/ImageBufferSkia.cpp:
2095 (WebCore::getImageData):
2096 (WebCore::ImageBuffer::getUnmultipliedImageData):
2097 (WebCore::ImageBuffer::getPremultipliedImageData):
2098 (WebCore::putImageData):
2099 (WebCore::ImageBuffer::putUnmultipliedImageData):
2100 (WebCore::ImageBuffer::putPremultipliedImageData):
2102 2011-02-03 Abhishek Arya <inferno@chromium.org>
2104 Reviewed by James Robinson.
2106 Enforce more limits on root inline boxes height calculations.
2107 https://bugs.webkit.org/show_bug.cgi?id=53729
2109 Test: fast/overflow/overflow-height-float-not-removed-crash.html
2111 * rendering/RenderBlock.cpp:
2112 (WebCore::RenderBlock::removeFloatingObject): prevent logicalBottom to
2113 become negative when logicalTop is INT_MAX.
2114 (WebCore::RenderBlock::markLinesDirtyInBlockRange): when logicalBottom
2115 is INT_MAX, we should dirty everything. So, we bail out to make
2116 afterLowest equal to the lastRootBox() or lowestDirstLine.
2118 2011-02-03 David Levin <levin@chromium.org>
2120 Reviewed by Adam Barth and Oliver Hunt.
2122 Worker.importScript() should clean errors for cross origin imports.
2123 https://bugs.webkit.org/show_bug.cgi?id=52871
2125 Test: http/tests/workers/worker-importScriptsOnError.html
2127 * bindings/js/WorkerScriptController.cpp:
2128 (WebCore::WorkerScriptController::evaluate): Use sanitizeScriptError
2129 to determine when to create a clean exception.
2130 * bindings/v8/WorkerContextExecutionProxy.cpp:
2131 (WebCore::WorkerContextExecutionProxy::evaluate): Ditto.
2132 * dom/ScriptExecutionContext.cpp:
2133 (WebCore::ScriptExecutionContext::sanitizeScriptError): Figure out
2134 if the error needs to be cleaned up.
2135 (WebCore::ScriptExecutionContext::dispatchErrorEvent): Extracted
2136 sanitizeScriptError for use by other places.
2137 * dom/ScriptExecutionContext.h:
2138 * workers/WorkerContext.cpp:
2139 (WebCore::WorkerContext::importScripts): Use the reponse url when
2140 telling the evaluate where the script came fro.
2141 * workers/WorkerScriptLoader.cpp:
2142 (WebCore::WorkerScriptLoader::responseURL): Expose the url that
2143 the script was loaded from (which may be different from url() due
2145 (WebCore::WorkerScriptLoader::didReceiveResponse): Capture the reponse url.
2146 * workers/WorkerScriptLoader.h:
2148 2011-02-03 Mark Mentovai <mark@chromium.org>
2150 Reviewed by Dimitri Glazkov.
2152 Chromium GYP build fix.
2154 When various settings were moved to webcore_prerequisites in r66364,
2155 things that should have been direct_dependent_settings were not marked
2156 as such. GYP 'defines', for example, make no sense on a 'none'-type
2157 target such as webcore_prerequisites. It appears that it was intended
2158 for these settings to be pushed to direct dependents, which would make
2159 direct_dependent_settings correct.
2161 Losing the ChromiumWebCoreObjC defines on the Mac, for example, caused
2162 http://crbug.com/71537, which at best causes Mac console log spew, and
2163 at worst may result in Chromium's copy of WebCore using system
2164 definitions of certain Objective-C classes at runtime, or vice-versa.
2166 The build now includes a postbuild step to prevent
2167 http://crbug.com/71537 from regressing again. The build will fail upon
2170 https://bugs.webkit.org/show_bug.cgi?id=53630
2172 * WebCore.gyp/WebCore.gyp: Move things in webcore_prerequisites into
2173 direct_dependent_settings as needed, add the check_objc_rename
2175 * WebCore.gyp/mac/check_objc_rename.sh: Added.
2177 2011-02-03 Adam Barth <abarth@webkit.org>
2179 Reviewed by Eric Seidel.
2181 Make XSSFilter go fast by adding a SuffixTree
2182 https://bugs.webkit.org/show_bug.cgi?id=53665
2184 The SuffixTree lets us quickly reject snippets if the POST data is
2185 large (because we can avoid a linear scan over the POST data).
2187 * html/parser/XSSFilter.cpp:
2188 (WebCore::XSSFilter::init):
2189 (WebCore::XSSFilter::isContainedInRequest):
2190 * html/parser/XSSFilter.h:
2192 2011-02-03 Mihai Parparita <mihaip@chromium.org>
2194 Reviewed by Alexey Proskuryakov.
2196 REGRESSION (r77355): Page cache layout tests crash
2197 https://bugs.webkit.org/show_bug.cgi?id=53648
2199 Test: fast/events/pagehide-timeout.html
2201 Suspend active DOM objects after all pagehide event handlers have run,
2202 otherwise it's possible for them to create more objects that weren't
2205 * history/CachedFrame.cpp:
2206 (WebCore::CachedFrame::CachedFrame):
2208 2011-02-03 Jeremy Orlow <jorlow@chromium.org>
2210 Reviewed by Nate Chapin.
2212 SerializedScriptValue should not require v8 to create undefined and null values
2213 https://bugs.webkit.org/show_bug.cgi?id=53730
2215 Instead of creating a v8 type and passing that into the constructor, just use
2216 the writer class directly. While I was at it, I cleaned up the code a bit too
2217 by getting rid of the WireData/StringValue enum as I found that personally
2220 This is necessary because these methods are called by IndexedDB in the browser
2221 process where v8 is not spun up.
2223 No functionality changed and not possible to test.
2225 * bindings/v8/SerializedScriptValue.cpp:
2226 (WebCore::SerializedScriptValue::createFromWire):
2227 (WebCore::SerializedScriptValue::create):
2228 (WebCore::SerializedScriptValue::nullValue):
2229 (WebCore::SerializedScriptValue::undefinedValue):
2230 (WebCore::SerializedScriptValue::release):
2231 (WebCore::SerializedScriptValue::SerializedScriptValue):
2232 * bindings/v8/SerializedScriptValue.h:
2234 2011-02-03 Beth Dakin <bdakin@apple.com>
2236 Reviewed by Sam Weinig.
2238 Fix for <rdar://problem/8944544> Ability to animate track
2239 for WKPainter scrollers
2241 Two new WebKitSystemInterface functions.
2243 * platform/mac/WebCoreSystemInterface.h:
2244 * platform/mac/WebCoreSystemInterface.mm:
2246 Use Scrollbar::convertFromContainingView() to return the right point.
2247 * platform/mac/ScrollAnimatorMac.mm:
2248 (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
2250 ScrollKnobAnimation is now ScrollbarPartAnimation. It can
2251 now be used to animate the knob or the track.
2252 (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
2253 (-[ScrollbarPartAnimation setCurrentProgress:]):
2254 (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2255 (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2256 (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
2258 Scrollbars need invalodating after the overlay state changes.
2259 (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
2261 2011-02-03 Sam Weinig <sam@webkit.org>
2263 Reviewed by Beth Dakin.
2265 Scroll thumb jumps to top when resizing horizontally.
2267 * platform/ScrollView.cpp:
2268 (WebCore::ScrollView::updateScrollbars): Add call to update
2269 the scrollbar's offset in the case where we may have created
2270 a new scrollbar but have not changed the current position.
2272 2011-02-03 Justin Schuh <jschuh@chromium.org>
2274 Reviewed by Dirk Schulze.
2276 startAnimations should use a local, RefCounted Vector.
2277 https://bugs.webkit.org/show_bug.cgi?id=53458
2279 Test: svg/custom/use-animation-in-fill.html
2281 * svg/SVGDocumentExtensions.cpp:
2282 (WebCore::SVGDocumentExtensions::startAnimations):
2284 2011-02-03 Adam Barth <abarth@webkit.org>
2286 Reviewed by Daniel Bates.
2288 XSSFilter shouldn't bother to analyze pages without "injection"
2289 characters in the request
2290 https://bugs.webkit.org/show_bug.cgi?id=53664
2292 If the request lacks these "injection" characters, then it's unlikely
2293 that there's a reflective XSS attack happening. This hueristic lets us
2294 avoid analyzing the vast majority of responses for XSS. Of course, the
2295 hueristic isn't perfect. Because of this huerstic, we miss out on
2296 injections into unquoted attributes. However, it's a trade-off that's
2297 worked well in the XSSAuditor.
2299 * html/parser/XSSFilter.cpp:
2300 (WebCore::HTMLNames::isRequiredForInjection):
2301 (WebCore::XSSFilter::XSSFilter):
2302 (WebCore::XSSFilter::init):
2303 (WebCore::XSSFilter::filterToken):
2304 (WebCore::XSSFilter::isContainedInRequest):
2305 * html/parser/XSSFilter.h:
2307 2011-02-03 Vangelis Kokkevis <vangelis@chromium.org>
2309 Reviewed by Kenneth Russell.
2311 [chromium] Fixing a compositor crash occurring on layers
2312 without an associated RenderSurface.
2313 https://bugs.webkit.org/show_bug.cgi?id=53679
2314 Regression was introduced by in r77425
2316 Test: http://webkit.org/blog/386/3d-transforms/ doesn't crash
2319 * platform/graphics/chromium/LayerRendererChromium.cpp:
2320 (WebCore::LayerRendererChromium::drawLayer):
2322 2011-02-03 Dan Bernstein <mitz@apple.com>
2324 Reviewed by Anders Carlsson.
2326 <rdar://problem/8948788> Text emphasis marks have wrong orientation for vertical text
2327 https://bugs.webkit.org/show_bug.cgi?id=53709
2329 Covered by rendering of fast/text/emphasis-vertical.html
2331 * platform/graphics/mac/SimpleFontDataMac.mm:
2332 (WebCore::SimpleFontData::scaledFontData): Give the scaled font the same orientation this font
2335 2011-02-02 Levi Weintraub <leviw@chromium.org>
2337 Reviewed by Ryosuke Niwa.
2339 Moving cursor down in table cycles at the end of a row
2340 https://bugs.webkit.org/show_bug.cgi?id=50012
2342 Avoids a caret cycling issue with certain content (e.g. tables) found at the very
2343 end of a document due to a bug in nextLeafWithSameEditability.
2345 Test: editing/selection/move-by-line-cycles-in-table.html
2347 * editing/visible_units.cpp:
2348 (WebCore::nextLeafWithSameEditability): Properly avoid descending back into the
2351 2011-02-03 Pavel Podivilov <podivilov@chromium.org>
2353 Reviewed by Pavel Feldman.
2355 Web Inspector: remove dead code related to changes panel.
2356 https://bugs.webkit.org/show_bug.cgi?id=53688
2359 * WebCore.vcproj/WebCore.vcproj:
2360 * inspector/front-end/ChangesView.js: Removed.
2361 * inspector/front-end/WebKit.qrc:
2362 * inspector/front-end/inspector.css:
2363 (#error-warning-count):
2364 (#error-warning-count:hover):
2365 (#error-count + #warning-count):
2366 * inspector/front-end/inspector.html:
2367 * inspector/front-end/inspector.js:
2369 2011-02-02 Sam Weinig <sam@webkit.org>
2371 Reviewed by Anders Carlsson.
2373 Add notification of the end of a rubber band.
2374 <rdar://problem/8940648>
2377 Add additional exprots.
2379 * page/ChromeClient.h:
2380 (WebCore::ChromeClient::didCompleteRubberBandForMainFrame):
2381 * page/FrameView.cpp:
2382 (WebCore::FrameView::didCompleteRubberBand):
2384 * platform/ScrollView.cpp:
2385 (WebCore::ScrollView::didCompleteRubberBand):
2386 * platform/ScrollView.h:
2389 * platform/ScrollableArea.h:
2390 (WebCore::ScrollableArea::inLiveResize):
2391 (WebCore::ScrollableArea::maximumScrollPosition):
2392 (WebCore::ScrollableArea::visibleWidth):
2393 (WebCore::ScrollableArea::overhangAmount):
2394 (WebCore::ScrollableArea::didCompleteRubberBand):
2395 Reorganize and de-virtualize live resize notifications.
2397 * platform/mac/ScrollAnimatorMac.mm:
2398 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2399 Call the new hook when the rubberband ends.
2401 2011-02-02 Evan Martin <evan@chromium.org>
2403 Reviewed by Tony Chang.
2405 [chromium] complex joining characters positioned in wrong place
2406 https://bugs.webkit.org/show_bug.cgi?id=53637
2408 Provide the correct font metrics to Harfbuzz related to the font design space.
2409 There are used in some fonts for GPOS positioning.
2411 Test: platform/chromium-linux/fast/text/international/complex-joining-using-gpos.html
2413 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
2414 (WebCore::ComplexTextController::setupFontForScriptRun):
2415 (WebCore::ComplexTextController::allocHarfbuzzFont):
2416 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
2417 (WebCore::FontPlatformData::FontPlatformData):
2418 (WebCore::FontPlatformData::emSizeInFontUnits):
2419 (WebCore::FontPlatformData::operator=):
2420 * platform/graphics/chromium/FontPlatformDataLinux.h:
2421 (WebCore::FontPlatformData::FontPlatformData):
2423 2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
2425 Reviewed by Kent Tamura.
2427 REGRESSION(r76147): Slider thumb position is not updated when value attribute is changed.
2428 https://bugs.webkit.org/show_bug.cgi?id=53634
2430 Test: fast/dom/HTMLInputElement/input-slider-update.html
2432 * html/HTMLInputElement.cpp:
2433 (WebCore::HTMLInputElement::setValue): Added a call to InputType::valueChanged.
2434 * html/InputType.cpp:
2435 (WebCore::InputType::valueChanged): Added empty implementation.
2436 * html/InputType.h: Added def.
2437 * html/RangeInputType.cpp:
2438 (WebCore::RangeInputType::valueChanged): Added implementation that dirties layout
2440 * html/RangeInputType.h: Added def.
2442 2011-02-02 Pavel Podivilov <podivilov@chromium.org>
2444 Reviewed by Pavel Feldman.
2446 Web Inspector: do not share source frames between resources panel and scripts panel.
2447 https://bugs.webkit.org/show_bug.cgi?id=53584
2449 Currently, we show error messages only for resources. This change will allow showing error
2450 messages in source frame even when resource is not available (eval scripts, inlined scripts).
2452 * inspector/front-end/ConsoleView.js:
2453 (WebInspector.ConsoleView.prototype.addMessage):
2454 (WebInspector.ConsoleView.prototype.clearMessages):
2455 * inspector/front-end/ResourceView.js:
2456 (WebInspector.ResourceView.recreateResourceView):
2457 * inspector/front-end/ResourcesPanel.js:
2458 (WebInspector.FrameResourceTreeElement.prototype._setBubbleText):
2459 * inspector/front-end/ScriptsPanel.js:
2460 (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
2461 (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
2462 (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
2463 (WebInspector.ScriptsPanel.prototype.reset):
2464 (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
2465 (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
2466 (WebInspector.ScriptsPanel.prototype._sourceFrameForScript):
2468 2011-02-03 Simon Fraser <simon.fraser@apple.com>
2472 * platform/graphics/ShadowBlur.cpp:
2473 (WebCore::ShadowBlur::blurLayerImage):
2475 2011-02-03 Mikhail Naganov <mnaganov@chromium.org>
2477 Reviewed by Pavel Feldman.
2479 Web Inspector: Add reporting of JS heap size limit to 'console.memory'.
2480 https://bugs.webkit.org/show_bug.cgi?id=53592
2482 In JSC there is no limit, thus 'undefined' value is returned.
2483 For V8, the limit reported by the VM is returned.
2485 * Android.jscbindings.mk:
2490 * WebCore.vcproj/WebCore.vcproj:
2491 * WebCore.xcodeproj/project.pbxproj:
2492 * bindings/js/JSBindingsAllInOne.cpp:
2493 * bindings/js/JSMemoryInfoCustom.cpp: Added.
2494 * bindings/js/ScriptGCEvent.cpp:
2495 (WebCore::ScriptGCEvent::getHeapSize):
2496 * bindings/js/ScriptGCEvent.h:
2497 * bindings/v8/ScriptGCEvent.cpp:
2498 (WebCore::ScriptGCEvent::getHeapSize):
2499 * bindings/v8/ScriptGCEvent.h:
2500 * inspector/InspectorTimelineAgent.cpp:
2501 (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
2502 * page/MemoryInfo.cpp:
2503 (WebCore::MemoryInfo::MemoryInfo):
2504 * page/MemoryInfo.h:
2505 (WebCore::MemoryInfo::jsHeapSizeLimit):
2506 * page/MemoryInfo.idl:
2508 2011-01-27 Philippe Normand <pnormand@igalia.com>
2510 Reviewed by Martin Robinson.
2512 [GTK] LayoutTests/media/audio-mpeg4-supported.html fails
2513 https://bugs.webkit.org/show_bug.cgi?id=53125
2515 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2516 (WebCore::mimeTypeCache): Add audio/x-m4a mimetype in the cache.
2518 2011-02-03 Simon Fraser <simon.fraser@apple.com>
2520 Reviewed by Sam Weinig.
2522 ShadowBlur radius for CSS shadows is slightly too big
2523 https://bugs.webkit.org/show_bug.cgi?id=53660
2525 If we follow SVG gaussian blur for CSS shadows, we can end up rendering
2526 shadows that extend further than the CSS "blur radius", which results
2527 in the shadows being truncated.
2529 Fix with a small fudge factor to reduce the kernel diameter slightly
2532 Also more closely follow the algorithm described in the SVG spec
2533 for computing the kernel size for different diameters, and clean up
2534 some variable naming relating to the shadow bounds.
2536 * platform/graphics/ShadowBlur.cpp:
2537 (WebCore::ShadowBlur::blurLayerImage):
2538 (WebCore::ShadowBlur::drawRectShadowWithTiling):
2540 2011-02-01 Pavel Podivilov <podivilov@chromium.org>
2542 Reviewed by Pavel Feldman.
2544 Web Inspector: introduce new api for managing JavaScript breakpoints.
2545 https://bugs.webkit.org/show_bug.cgi?id=53235
2547 Single protocol breakpoint (e.g. set by url) is mapped on zero or more VM breakpoints (set by sourceID).
2548 removeJavaScriptBreakpoint(breakpointId) removes breakpoint and all linked VM breakpoints.
2549 Since UI uses VM breakpoint location rather then protocol breakpoint location, all resolved breakpoints locations are passed to frontend.
2551 SourceFrame is now aware of whether breakpoint is resolved or not and may display it accordingly.
2552 JavaScriptBreakpointsSidebarPane filters out breakpoints set on nonexistent scripts to avoid UI cluttering.
2554 * bindings/js/ScriptDebugServer.cpp:
2555 (WebCore::ScriptDebugServer::setBreakpoint):
2556 (WebCore::ScriptDebugServer::removeBreakpoint):
2557 * bindings/js/ScriptDebugServer.h:
2558 * bindings/v8/DebuggerScript.js:
2560 * bindings/v8/ScriptDebugServer.cpp:
2561 (WebCore::ScriptDebugServer::setBreakpoint):
2562 * bindings/v8/ScriptDebugServer.h:
2563 * inspector/Inspector.idl:
2564 * inspector/InspectorAgent.cpp: clear breakpoints from inspector state when new frontend is created
2565 (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2566 (WebCore::InspectorAgent::populateScriptObjects):
2567 (WebCore::InspectorAgent::restoreDebugger):
2568 (WebCore::InspectorAgent::showAndEnableDebugger):
2569 (WebCore::InspectorAgent::enableDebugger):
2570 * inspector/InspectorAgent.h:
2571 * inspector/InspectorDebuggerAgent.cpp: manage relations between protocol breakpoints and VM breakpoints
2572 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
2573 (WebCore::InspectorDebuggerAgent::inspectedURLChanged):
2574 (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpoint):
2575 (WebCore::InspectorDebuggerAgent::setJavaScriptBreakpointBySourceId):
2576 (WebCore::InspectorDebuggerAgent::removeJavaScriptBreakpoint):
2577 (WebCore::InspectorDebuggerAgent::continueToLocation):
2578 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
2579 (WebCore::InspectorDebuggerAgent::getScriptSource):
2580 (WebCore::InspectorDebuggerAgent::didParseSource):
2581 (WebCore::InspectorDebuggerAgent::didPause):
2582 * inspector/InspectorDebuggerAgent.h:
2583 (WebCore::InspectorDebuggerAgent::Script::Script):
2584 * inspector/InspectorValues.cpp:
2585 (WebCore::InspectorValue::asNumber):
2586 (WebCore::InspectorBasicValue::asNumber):
2587 (WebCore::InspectorObject::remove):
2588 * inspector/InspectorValues.h:
2589 (WebCore::InspectorObject::getNumber):
2590 (WebCore::InspectorObject::find):
2591 * inspector/ScriptBreakpoint.h:
2592 (WebCore::ScriptBreakpoint::ScriptBreakpoint):
2593 * inspector/front-end/Breakpoint.js:
2594 (WebInspector.Breakpoint):
2595 (WebInspector.Breakpoint.prototype.addLocation):
2596 * inspector/front-end/BreakpointManager.js: remove all stuff related to JavaScript breakpoints from here
2597 (WebInspector.BreakpointManager):
2598 (WebInspector.BreakpointManager.prototype._projectChanged):
2599 (WebInspector.BreakpointManager.prototype._saveBreakpoints):
2600 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2601 * inspector/front-end/BreakpointsSidebarPane.js:
2602 (WebInspector.JavaScriptBreakpointsSidebarPane): filter breakpoints set on nonexistent scripts to avoid ui cluttering
2603 * inspector/front-end/DebuggerModel.js:
2604 (WebInspector.DebuggerModel): pull all JavaScript from localStorage and push them to fronted when debugger is enabled, save resolved breakpoints data
2605 * inspector/front-end/Script.js:
2606 (WebInspector.Script.prototype.sourceLine):
2607 * inspector/front-end/ScriptsPanel.js:
2608 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
2609 * inspector/front-end/Settings.js:
2610 (WebInspector.Settings):
2611 * inspector/front-end/SourceFrame.js: handle resolved and unresolved breakpoints differently
2612 * inspector/front-end/inspector.js:
2614 2011-02-03 Nikolas Zimmermann <nzimmermann@rim.com>
2616 Reviewed by Dirk Schulze.
2618 small text which is scaled to be large renders pixelated
2619 https://bugs.webkit.org/show_bug.cgi?id=12448
2621 SVG <text> with font-size smaller or equal to 1 does not paint correctly
2622 https://bugs.webkit.org/show_bug.cgi?id=14242
2624 misplaced text in SVG
2625 https://bugs.webkit.org/show_bug.cgi?id=17053
2627 Don't render very small (but zoomed) text inside SVG
2628 https://bugs.webkit.org/show_bug.cgi?id=19393
2630 Tiny fonts scaled up end up too large in Safari
2631 https://bugs.webkit.org/show_bug.cgi?id=20192
2633 Stretched SVG Text has awful glyph spacing
2634 https://bugs.webkit.org/show_bug.cgi?id=21774
2636 REGRESSION (r72141?): svg/batik/text/smallFonts.svg failing on Leopard
2637 https://bugs.webkit.org/show_bug.cgi?id=49846
2639 [Gtk] Text height in zoomed SVG is 1px too high
2640 https://bugs.webkit.org/show_bug.cgi?id=50313
2642 SVG text smaller than 0.5px not displayed properly
2643 https://bugs.webkit.org/show_bug.cgi?id=50528
2645 When rendering text, we're selecting a font with a size, as specified in the markup.
2646 This can lead to problems, if the context, where the text is rendered upon, is scaled. If a parent
2647 element of the <text> defines a transform=".." or the outermost <svg> containing a viewBox the
2648 problem becomes apparent.
2650 Consider following two snippets, which should render exactly the same:
2651 <svg viewBox="0 0 100 100"><text x="25" y="50" font-size="25">test</text></svg>
2652 <svg viewBox="0 0 1 1"><text x="0.25" y="0.5" font-size="0.25">test</text></svg>
2654 When selecting a font size below 0.5, FontCacheMac would request a font with size 0,
2655 which AppKit turns into 12. This lead to huge text rendering, instead of small text on Mac.
2656 Other platforms have different problems (Qt simply scales the font, leading to pixelation etc.)
2658 To fix this in a cross-platform fashion, we now always compute the final font size on screen,
2659 remove any scaling from the context, draw the text using the scaled font size, then reapply
2660 the context scale. This makes the example snippets above render exactly the same and fixes
2661 numerous of bugs, present since years. As we're now heavily using floating-point font sizes
2662 internally, depending on the scale of the document, it's very important to use the new
2663 floating-point text metrics information (floatAscent/floatDescent/floatHeight) everywhere in SVG.
2665 Fixes existing tests: css3/zoom-coords.xhtml (cross-platform inconsistencies should be gone, mac now reports floatHeight values for SVG text height)
2666 svg/hixie/text/003.html (no more pixelation)
2667 svg/batik/text/smallFonts.svg (small fonts aren't rendered huge anymore on mac)
2668 svg/hixie/viewbox/preserveAspectRatio/001.xml (bug 21774, no more awful spacing)
2669 svg/zoom/page/zoom-zoom-coords.xhtml (cross-platform inconsistencies should be gone, inspired by bug 50313)
2671 Tests: svg/text/font-size-below-point-five-2.svg (reduction from bug 50528)
2672 svg/text/font-size-below-point-five.svg (reduction from bug 50528)
2673 svg/text/scaled-font.svg (reduction from bug 12448)
2674 svg/text/small-fonts-2.svg (reduction from bug 14242)
2675 svg/text/small-fonts-3.svg (reduction from bug 17053)
2676 svg/text/small-fonts-in-html5.html (reduction from bug 19393)
2677 svg/text/small-fonts.svg (reduction from bug 20192))
2679 * rendering/svg/RenderSVGInlineText.cpp: Cache 'float scalingFactor' & 'Font scaledFont', whenever the on-screen representation changes.
2680 * rendering/svg/RenderSVGInlineText.h:
2681 * rendering/svg/RenderSVGText.cpp: Update scalingFactor/scaledFont, if necessary.
2682 * rendering/svg/SVGInlineTextBox.cpp: Switch to new font rendering strategy. Always use scaledFont, and remove any context scale before drawing.
2683 * rendering/svg/SVGInlineTextBox.h:
2684 * rendering/svg/SVGTextLayoutEngineBaseline.cpp: Use floating-point metrics everywhere.
2685 * rendering/svg/SVGTextMetrics.cpp: Ditto.
2686 * rendering/svg/SVGTextMetrics.h: Ditto.
2687 * rendering/svg/SVGTextQuery.cpp: Ditto.
2688 * svg/SVGFont.cpp: Adjust stroke thickness, when drawing SVGFonts into a normalized context (no more scale).
2689 * svg/SVGTextContentElement.cpp: Make <text> elements always dependant on window size changes in combination with viewBox set.
2690 * svg/SVGTextPositioningElement.cpp: Remove now unnecessary code to determine wheter relative lengths are used as text attributes.
2691 * svg/SVGTextPositioningElement.h:
2693 2011-02-03 Pavel Feldman <pfeldman@chromium.org>
2695 Reviewed by Yury Semikhatsky.
2697 Web Inspector: resources panel doesn't show frames after reload.
2698 https://bugs.webkit.org/show_bug.cgi?id=53430
2700 * inspector/front-end/ResourcesPanel.js:
2701 (WebInspector.ResourcesPanel.prototype.show):
2702 (WebInspector.ResourcesPanel.prototype.loadEventFired):
2703 (WebInspector.ResourcesPanel.prototype._initDefaultSelection):
2704 (WebInspector.ResourcesPanel.prototype.reset):
2705 (WebInspector.ResourcesPanel.prototype.clear):
2706 * inspector/front-end/inspector.js:
2707 (WebInspector.loadEventFired):
2709 2011-02-01 Alexander Pavlov <apavlov@chromium.org>
2711 Reviewed by Pavel Feldman.
2713 Web Inspector: Remove the *2 suffix from the CSS style-related protocol methods
2714 https://bugs.webkit.org/show_bug.cgi?id=53492
2716 * inspector/Inspector.idl:
2717 * inspector/InspectorCSSAgent.cpp:
2718 (WebCore::InspectorCSSAgent::getStylesForNode):
2719 (WebCore::InspectorCSSAgent::getInlineStyleForNode):
2720 (WebCore::InspectorCSSAgent::getComputedStyleForNode):
2721 (WebCore::InspectorCSSAgent::getAllStyles):
2722 (WebCore::InspectorCSSAgent::getStyleSheet):
2723 (WebCore::InspectorCSSAgent::getStyleSheetText):
2724 (WebCore::InspectorCSSAgent::setStyleSheetText):
2725 (WebCore::InspectorCSSAgent::setPropertyText):
2726 (WebCore::InspectorCSSAgent::toggleProperty):
2727 (WebCore::InspectorCSSAgent::setRuleSelector):
2728 (WebCore::InspectorCSSAgent::addRule):
2729 * inspector/InspectorCSSAgent.h:
2730 * inspector/front-end/AuditRules.js:
2731 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
2732 * inspector/front-end/CSSStyleModel.js:
2733 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
2734 (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync):
2735 (WebInspector.CSSStyleModel.prototype.getInlineStyleAsync):
2736 (WebInspector.CSSStyleModel.prototype.setRuleSelector):
2737 (WebInspector.CSSStyleModel.prototype.addRule):
2738 (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2739 (WebInspector.CSSStyleModel.prototype._onRevert):
2740 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
2741 (WebInspector.CSSProperty.prototype.setText):
2742 (WebInspector.CSSProperty.prototype.setDisabled):
2743 (WebInspector.CSSStyleSheet.createForId):
2744 (WebInspector.CSSStyleSheet.prototype.setText):
2746 2011-02-03 Adam Barth <abarth@webkit.org>
2748 Reviewed by Daniel Bates.
2750 Teach XSSFilter about data URLs
2751 https://bugs.webkit.org/show_bug.cgi?id=53662
2753 The XSS filter doesn't really make sense for data URLs because
2754 everything in a "response" from a data URL was part of the request.
2756 Test: http/tests/security/xssAuditor/data-urls-work.html
2758 * html/parser/XSSFilter.cpp:
2759 (WebCore::XSSFilter::init):
2760 (WebCore::XSSFilter::filterToken):
2762 2011-02-02 Chris Evans <cevans@chromium.org>
2764 Reviewed by Darin Fisher.
2766 window.find() can fail when switching case sensitivity
2767 https://bugs.webkit.org/show_bug.cgi?id=53654
2769 Reset the pattern to a safe one when done, to avoid usearch_reset()
2770 indirectly touching the old, stale text pointer.
2772 Test: fast/text/find-window.html
2774 * editing/TextIterator.cpp:
2775 (WebCore::SearchBuffer::~SearchBuffer): leave a safe pattern buffer when done.
2777 2011-02-02 Adam Barth <abarth@webkit.org>
2779 Reviewed by Daniel Bates.
2781 Teach XSSFilter that <param> elements can contain URLs
2782 https://bugs.webkit.org/show_bug.cgi?id=53652
2784 When loading plugins for the <object> tag, we're "smart" enough to
2785 reach into the <param> elements and pull out the URL in some cases.
2786 This patch teaches the XSSFilter how to block injections into those
2787 sorts of param elements.
2790 http/tests/security/xssAuditor/object-*
2792 * html/HTMLParamElement.cpp:
2793 (WebCore::HTMLParamElement::isURLParameter):
2794 (WebCore::HTMLParamElement::isURLAttribute):
2795 (WebCore::HTMLParamElement::addSubresourceAttributeURLs):
2796 * html/HTMLParamElement.h:
2797 - Add a helper function so that HTMLParamElement can share the
2798 ground truth for these names with the XSSFilter.
2799 * html/parser/XSSFilter.cpp:
2800 (WebCore::XSSFilter::filterTokenInitial):
2801 (WebCore::XSSFilter::filterParamToken):
2802 * html/parser/XSSFilter.h:
2804 2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
2806 Reviewed by David Levin.
2808 GCC compiler on ARM issues bogus warnings and fails to compile.
2809 https://bugs.webkit.org/show_bug.cgi?id=53620
2811 Despite warnings explicitly being disallowed (-Wno-uninitialized),
2812 gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 throws up the warnings like:
2814 "error: 'colorTransparent.unstatic.4909' may be used uninitialized in this function"
2816 The fix is to add an extra condition, which somehow pacifies the compiler.
2818 * css/CSSPrimitiveValue.cpp:
2819 (WebCore::CSSPrimitiveValue::createColor): Added workaround conditions.
2821 2011-02-02 Adam Barth <abarth@webkit.org>
2823 Reviewed by Daniel Bates.
2825 Teach XSSFilter about X-XSS-Protection
2826 https://bugs.webkit.org/show_bug.cgi?id=53640
2828 This patch causes us to pass:
2829 http/tests/security/xssAuditor/full-block-*
2830 http/tests/security/xssAuditor/no-protection-script-tag.html
2832 * html/parser/XSSFilter.cpp:
2833 (WebCore::XSSFilter::XSSFilter):
2834 (WebCore::XSSFilter::init):
2835 (WebCore::XSSFilter::filterToken):
2836 * html/parser/XSSFilter.h:
2838 2011-02-02 Adam Barth <abarth@webkit.org>
2840 Reviewed by Daniel Bates.
2842 When XSSFilter blocks JavaScript URLs, use a safe JavaScript URL
2843 instead of the empty string
2844 https://bugs.webkit.org/show_bug.cgi?id=53643
2846 In a URL context, the empty string completes to the URL of the current
2847 page, which causes these tests to go into an infinite loop. Instead,
2848 we should use a "safe" JavaScript URL that does nothing.
2851 http/tests/security/xssAuditor/javascript-link*
2853 * html/parser/XSSFilter.cpp:
2854 (WebCore::XSSFilter::eraseDangerousAttributesIfInjected):
2856 2011-02-02 Dan Bernstein <mitz@apple.com>
2858 Reviewed by Sam Weinig.
2860 <rdar://problem/8380506> REGRESSION (r61921): RTL text in <b> tag doesn't display in WebKit under certain conditions
2861 https://bugs.webkit.org/show_bug.cgi?id=44942
2863 Test: fast/text/bidi-embedding-pop-and-push-same-2.html
2865 * platform/text/BidiResolver.h:
2866 (WebCore::::commitExplicitEmbedding): Changed to return a boolean indicating whether there was
2867 a change to embedding levels.
2868 (WebCore::::createBidiRunsForLine): If embedding levels did not change as a result of committing
2869 the explicit embedding sequence, then runs were not added, and we should continue normally.
2871 2011-02-02 Sam Weinig <sam@webkit.org>
2873 Reviewed by Dan Bernstein.
2875 Fix miscalculation of the overhang area used for painting. We were
2876 not correctly accounting for scrollbars resulting in an non-negative
2877 overhang even when we weren't over the edge.
2879 * platform/ScrollView.cpp:
2880 (WebCore::ScrollView::calculateOverhangAreasForPainting):
2882 2011-02-02 Jeremy Orlow <jorlow@chromium.org>
2884 Reviewed by Nate Chapin.
2886 IDBTransaction and IDBRequest can be deleted while ScriptExecutionContext is iterating....which is bad
2887 https://bugs.webkit.org/show_bug.cgi?id=52722
2889 The solution is to change ScriptExecutionContext's destructor to iterate over
2890 the list in a way that handles the mutations. This new method is destructive,
2891 but that's OK since the object is going away. I've also added a several asserts.
2893 There should be no behavior change.
2895 * dom/ScriptExecutionContext.cpp:
2896 (WebCore::ScriptExecutionContext::ScriptExecutionContext):
2897 (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
2898 (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
2899 (WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
2900 (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
2901 (WebCore::ScriptExecutionContext::stopActiveDOMObjects):
2902 (WebCore::ScriptExecutionContext::createdActiveDOMObject):
2903 (WebCore::ScriptExecutionContext::destroyedActiveDOMObject):
2904 * dom/ScriptExecutionContext.h:
2905 * storage/IDBTransaction.cpp:
2906 (WebCore::IDBTransaction::contextDestroyed):
2907 * storage/IDBTransaction.h:
2909 2011-02-02 Mark Rowe <mrowe@apple.com>
2913 * WebCore.exp.in: Remove some bogus symbols from the .exp.in file.
2914 * platform/mac/ScrollbarThemeMac.mm:
2915 (WebCore::ScrollbarThemeMac::unregisterScrollbar): Look the object
2916 up in the HashMap rather than relying on a local variable that doesn't
2919 2011-02-02 Adam Barth <abarth@webkit.org>
2921 Reviewed by Daniel Bates.
2923 Teach XSSFilter about JavaScript URLs
2924 https://bugs.webkit.org/show_bug.cgi?id=53635
2926 This patch teaches the XSSFilter to check for JavaScript URLs in
2927 attribute values. If this approach has too many false positives, we
2928 can restrict which attribute names we examine.
2931 http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL.html
2932 http/tests/security/xssAuditor/dom-write-location-javascript-URL.html
2933 http/tests/security/xssAuditor/iframe-javascript-url*
2935 * html/parser/XSSFilter.cpp:
2936 (WebCore::HTMLNames::containsJavaScriptURL):
2937 (WebCore::XSSFilter::filterTokenInitial):
2938 (WebCore::XSSFilter::eraseDangerousAttributesIfInjected):
2939 * html/parser/XSSFilter.h:
2941 2011-02-02 Dan Bernstein <mitz@apple.com>
2943 Reviewed by Sam Weinig, even though this is just a...
2947 * platform/mac/ScrollAnimatorMac.mm:
2948 (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
2950 2011-02-02 Mark Rowe <mrowe@apple.com>
2952 Reviewed by Beth Dakin.
2954 <rdar://problem/8952012> Crash on launch inside scrollbar code.
2956 We need to ensure that we remove ourselves as the delegates of objects when we're going
2957 away as failing to do this can lead to crashes if the lifetime of the other objects
2958 is longer than ours.
2960 * platform/mac/ScrollAnimatorMac.mm:
2961 (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
2962 * platform/mac/ScrollbarThemeMac.mm:
2963 (WebCore::ScrollbarThemeMac::unregisterScrollbar):
2965 2011-02-02 Beth Dakin <bdakin@apple.com>
2971 2011-02-02 Patrick Gansterer <paroga@webkit.org>
2973 Unreviewed WinCE build fix for r77397.
2975 * page/wince/FrameWinCE.cpp:
2976 (WebCore::computePageRectsForFrame):
2978 2011-02-02 Patrick Gansterer <paroga@webkit.org>
2980 Unreviewed WinCE build fix for r77398.
2982 * platform/graphics/wince/PlatformPathWinCE.cpp:
2983 (WebCore::containsPoint):
2984 (WebCore::inflateRectToContainPoint):
2985 (WebCore::PlatformPath::addRect):
2986 * platform/graphics/wince/SharedBitmap.cpp:
2987 (WebCore::SharedBitmap::drawPattern):
2988 * rendering/RenderThemeWinCE.cpp:
2989 (WebCore::RenderThemeWinCE::paintMenuListButton):
2990 (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
2991 (WebCore::RenderThemeWinCE::paintSliderTrack):
2992 (WebCore::RenderThemeWinCE::paintMediaMuteButton):
2993 (WebCore::RenderThemeWinCE::paintMediaPlayButton):
2994 (WebCore::RenderThemeWinCE::paintMediaSeekBackButton):
2995 (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton):
2997 2011-02-02 Jian Li <jianli@chromium.org>
2999 Reviewed by Kenneth Russell.
3001 [V8] Accessing DataView with index of -1 returns 0, doesn't throw
3002 https://bugs.webkit.org/show_bug.cgi?id=53559
3004 Added test cases to cover this in fast/canvas/webgl/data-view-test.html.
3006 * html/canvas/DataView.h:
3007 (WebCore::DataView::beyondRange):
3009 2011-02-02 Sam Weinig <sam@webkit.org>
3011 Reviewed by Beth Dakin.
3013 Add ChromeClient function to paint custom overhang areas.
3014 https://bugs.webkit.org/show_bug.cgi?id=53639
3017 (WebCore::ChromeClient::paintCustomOverhangArea):
3018 * page/ChromeClient.h:
3019 Add ChromeClient function.
3021 * page/FrameView.cpp:
3022 (WebCore::FrameView::paintOverhangAreas):
3024 Call out the the ChromeClient, call ScrollView base implementation
3025 if the ChromeClient returns false.
3027 * platform/ScrollView.cpp:
3028 (WebCore::ScrollView::paintOverhangAreas):
3029 * platform/ScrollView.h:
3030 Add dirty rect for use when painting overhang areas.
3032 2011-02-02 Peter Kasting <pkasting@google.com>
3034 Not reviewed, build fix.
3036 Fix compile after r77427.
3037 https://bugs.webkit.org/show_bug.cgi?id=53455
3039 * platform/graphics/qt/ImageDecoderQt.cpp:
3040 (WebCore::ImageDecoderQt::internalHandleCurrentImage):
3041 * platform/image-decoders/ImageDecoder.cpp:
3042 (WebCore::ImageFrame::operator=):
3043 * platform/image-decoders/bmp/BMPImageReader.cpp:
3044 (WebCore::BMPImageReader::decodeBMP):
3045 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3046 (WebCore::JPEGImageDecoder::outputScanlines):
3047 * platform/image-decoders/png/PNGImageDecoder.cpp:
3048 (WebCore::PNGImageDecoder::rowAvailable):
3049 * platform/image-decoders/webp/WEBPImageDecoder.cpp:
3050 (WebCore::WEBPImageDecoder::decode):
3052 2011-02-02 Peter Kasting <pkasting@google.com>
3054 Reviewed by David Levin.
3056 Clean up ImageDecoder's comments (remove/trim/clarify).
3057 https://bugs.webkit.org/show_bug.cgi?id=53455
3059 This also renames or eliminates a couple of functions for clarity, and
3060 switches a couple erroneous strncmp() calls to memcmp().
3062 * platform/image-decoders/ImageDecoder.cpp:
3063 (WebCore::ImageDecoder::create):
3064 (WebCore::ImageFrame::clearPixelData):
3065 (WebCore::ImageFrame::zeroFillPixelData):
3066 (WebCore::ImageFrame::setSize):
3067 * platform/image-decoders/ImageDecoder.h:
3068 (WebCore::ImageFrame::originalFrameRect):
3069 (WebCore::ImageFrame::setOriginalFrameRect):
3070 (WebCore::ImageDecoder::ImageDecoder):
3071 (WebCore::ImageDecoder::~ImageDecoder):
3072 (WebCore::ImageDecoder::isSizeAvailable):
3073 (WebCore::ImageDecoder::size):
3074 (WebCore::ImageDecoder::setIgnoreGammaAndColorProfile):
3075 (WebCore::ImageDecoder::clearFrameBufferCache):
3076 (WebCore::ImageDecoder::isOverSize):
3077 * platform/image-decoders/bmp/BMPImageReader.cpp:
3078 (WebCore::BMPImageReader::processNonRLEData):
3079 * platform/image-decoders/cg/ImageDecoderCG.cpp:
3080 (WebCore::ImageFrame::setSize):
3081 * platform/image-decoders/gif/GIFImageDecoder.cpp:
3082 (WebCore::GIFImageDecoder::clearFrameBufferCache):
3083 (WebCore::GIFImageDecoder::frameComplete):
3084 (WebCore::GIFImageDecoder::initFrameBuffer):
3085 * platform/image-decoders/jpeg/JPEGImageDecoder.h:
3086 * platform/image-decoders/qt/ImageFrameQt.cpp:
3087 (WebCore::ImageFrame::operator=):
3088 (WebCore::ImageFrame::clearPixelData):
3089 (WebCore::ImageFrame::zeroFillPixelData):
3090 (WebCore::ImageFrame::setSize):
3091 * platform/image-decoders/skia/ImageDecoderSkia.cpp:
3092 (WebCore::ImageFrame::operator=):
3093 (WebCore::ImageFrame::clearPixelData):
3094 (WebCore::ImageFrame::zeroFillPixelData):
3095 (WebCore::ImageFrame::setSize):
3096 * platform/image-decoders/webp/WEBPImageDecoder.h:
3098 2011-02-02 Vangelis Kokkevis <vangelis@chromium.org>
3100 [chromium] Adding support for reflections to the accelerated
3102 https://bugs.webkit.org/show_bug.cgi?id=53179
3104 All layout tests in compositing/reflections generate correct
3105 results with the exception of:
3106 1. nested-reflection-anchor-point.html : There appears to be
3107 some issue with the layer transform math that I haven't been
3108 able to track down yet.
3109 2. reflection-opacity.html : The current implementation applies
3110 opacity before doing the reflection which makes this test
3111 produce incorrect results. This will affect reflected layers
3112 with opacity that overlap their original layer. FIXME comment
3115 Tests: Covered by existing layout tests in compositing/reflections.
3116 Please see above for exceptions.
3118 * platform/graphics/chromium/GraphicsLayerChromium.cpp:
3119 (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
3120 (WebCore::GraphicsLayerChromium::updateAnchorPoint):
3121 * platform/graphics/chromium/GraphicsLayerChromium.h:
3122 * platform/graphics/chromium/LayerChromium.cpp:
3123 (WebCore::LayerChromium::LayerChromium):
3124 * platform/graphics/chromium/LayerChromium.h:
3125 (WebCore::LayerChromium::setReplicaLayer):
3126 (WebCore::LayerChromium::replicaLayer):
3127 * platform/graphics/chromium/LayerRendererChromium.cpp:
3128 (WebCore::LayerRendererChromium::updateLayersRecursive):
3129 (WebCore::LayerRendererChromium::drawLayer):
3130 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
3131 (WebCore::RenderSurfaceChromium::drawableContentRect):
3132 (WebCore::RenderSurfaceChromium::drawSurface):
3133 (WebCore::RenderSurfaceChromium::draw):
3134 * platform/graphics/chromium/RenderSurfaceChromium.h:
3135 (WebCore::RenderSurfaceChromium::drawTransform):
3137 2011-02-02 Xiyuan Xia <xiyuan@chromium.org>
3139 Reviewed by Tony Chang.
3141 [Chromium] Select popup with padding has white strip on right
3142 https://bugs.webkit.org/show_bug.cgi?id=53602
3144 No new tests as this change restores old behavior.
3146 * platform/chromium/PopupMenuChromium.cpp:
3147 (WebCore::PopupListBox::layout):
3149 2011-02-02 Beth Dakin <bdakin@apple.com>
3151 Reviewed by Mark Rowe.
3153 Fix for <rdar://problem/8950343> CrashTracer: [USER]
3154 1 crash in WebProcess at com.apple.WebCore:
3155 WebCore::ScrollbarThemeMac::unregisterScrollbar + 22
3157 It is possible for a Scrollbar's ScrollableArea to be null,
3158 so we must null check.
3159 * platform/mac/ScrollbarThemeMac.mm:
3160 (WebCore::ScrollbarThemeMac::registerScrollbar):
3161 (WebCore::ScrollbarThemeMac::unregisterScrollbar):
3163 2011-02-02 Zhenyao Mo <zmo@google.com>
3165 Reviewed by Kenneth Russell.
3167 bufferData and bufferSubData should generate INVALID_VALUE with negative input
3168 https://bugs.webkit.org/show_bug.cgi?id=53626
3170 * html/canvas/WebGLRenderingContext.cpp:
3171 (WebCore::WebGLRenderingContext::bufferData):
3172 (WebCore::WebGLRenderingContext::bufferSubData):
3174 2011-02-02 Jeff Miller <jeffm@apple.com>
3176 Reviewed by Darin Adler and Steve Falkenburg.
3178 Add DerivedSources.make to some Visual Studio projects
3179 https://bugs.webkit.org/show_bug.cgi?id=53607
3181 * WebCore.vcproj/WebCoreGenerated.vcproj: Add DerivedSources.make.
3183 2011-02-02 Cris Neckar <cdn@chromium.org>
3185 Reviewed by James Robinson.
3187 Refcount domwindows when dispatching device orientation events.
3188 https://bugs.webkit.org/show_bug.cgi?id=53623
3190 Test: fast/events/device-orientation-crash.html
3192 * dom/DeviceMotionController.cpp:
3193 (WebCore::DeviceMotionController::timerFired):
3194 (WebCore::DeviceMotionController::didChangeDeviceMotion):
3195 * dom/DeviceMotionController.h:
3196 * dom/DeviceOrientationController.cpp:
3197 (WebCore::DeviceOrientationController::timerFired):
3198 (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
3199 * dom/DeviceOrientationController.h:
3201 2011-02-02 Zhenyao Mo <zmo@google.com>
3203 Reviewed by Kenneth Russell.
3205 A deleted object should never been bound again
3206 https://bugs.webkit.org/show_bug.cgi?id=53604
3208 * html/canvas/WebGLRenderingContext.cpp:
3209 (WebCore::WebGLRenderingContext::checkObjectToBeBound): Helper function to bind* and useProgram.
3210 (WebCore::WebGLRenderingContext::bindBuffer): Use checkObjectToBeBound.
3211 (WebCore::WebGLRenderingContext::bindFramebuffer): Ditto.
3212 (WebCore::WebGLRenderingContext::bindRenderbuffer): Ditto.
3213 (WebCore::WebGLRenderingContext::bindTexture): Ditto, also check the target matching.
3214 (WebCore::WebGLRenderingContext::deleteObject): Helper funtion to delete*.
3215 (WebCore::WebGLRenderingContext::deleteBuffer): Use deleteObject.
3216 (WebCore::WebGLRenderingContext::deleteFramebuffer): Ditto.
3217 (WebCore::WebGLRenderingContext::deleteProgram): Ditto.
3218 (WebCore::WebGLRenderingContext::deleteRenderbuffer): Ditto.
3219 (WebCore::WebGLRenderingContext::deleteShader): Ditto.
3220 (WebCore::WebGLRenderingContext::deleteTexture): Ditto.
3221 (WebCore::WebGLRenderingContext::useProgram): Use checkObjectToBeBound.
3222 * html/canvas/WebGLRenderingContext.h:
3223 * html/canvas/WebGLTexture.h:
3224 (WebCore::WebGLTexture::getTarget): Accessor to cached target.
3226 2011-02-02 Alejandro G. Castro <alex@igalia.com>
3228 Unreviewed Efl buildfix after r77399.
3230 * CMakeListsEfl.txt:
3232 2011-02-02 Kenneth Russell <kbr@google.com>
3234 Reviewed by James Robinson.
3236 Rename Typed Array subset to subarray
3237 https://bugs.webkit.org/show_bug.cgi?id=53618
3239 * html/canvas/Float32Array.cpp:
3240 (WebCore::Float32Array::subarray):
3241 * html/canvas/Float32Array.h:
3242 * html/canvas/Float32Array.idl:
3243 * html/canvas/Int16Array.cpp:
3244 (WebCore::Int16Array::subarray):
3245 * html/canvas/Int16Array.h:
3246 * html/canvas/Int16Array.idl:
3247 * html/canvas/Int32Array.cpp:
3248 (WebCore::Int32Array::subarray):
3249 * html/canvas/Int32Array.h:
3250 * html/canvas/Int32Array.idl:
3251 * html/canvas/Int8Array.cpp:
3252 (WebCore::Int8Array::subarray):
3253 * html/canvas/Int8Array.h:
3254 * html/canvas/Int8Array.idl:
3255 * html/canvas/TypedArrayBase.h:
3256 (WebCore::TypedArrayBase::subarrayImpl):
3257 * html/canvas/Uint16Array.cpp:
3258 (WebCore::Uint16Array::subarray):
3259 * html/canvas/Uint16Array.h:
3260 * html/canvas/Uint16Array.idl:
3261 * html/canvas/Uint32Array.cpp:
3262 (WebCore::Uint32Array::subarray):
3263 * html/canvas/Uint32Array.h:
3264 * html/canvas/Uint32Array.idl:
3265 * html/canvas/Uint8Array.cpp:
3266 (WebCore::Uint8Array::subarray):
3267 * html/canvas/Uint8Array.h:
3268 * html/canvas/Uint8Array.idl:
3270 2011-02-02 Adam Barth <abarth@webkit.org>
3272 Reviewed by Eric Seidel.
3274 Add an empty file for Content Security Policy
3275 https://bugs.webkit.org/show_bug.cgi?id=53573
3277 Posting this as a separate patch because editing the build files is so
3285 * WebCore.vcproj/WebCore.vcproj:
3286 * WebCore.xcodeproj/project.pbxproj:
3288 2011-02-02 Dan Winship <danw@gnome.org>
3290 Reviewed by Martin Robinson.
3292 [GTK] remove old data: URI handler, fix the SoupRequest-based one
3294 https://bugs.webkit.org/show_bug.cgi?id=50885
3296 * platform/network/soup/ResourceHandleSoup.cpp:
3297 (WebCore::sendRequestCallback): Do content-type sniffing here for
3299 (WebCore::startHTTPRequest): Rename to match WebKit style.
3300 (WebCore::ResourceHandle::start): Pass everything except HTTP to
3301 startNonHTTPRequest, letting the SoupRequester decide whether it's
3303 (WebCore::startNonHTTPRequest): Remove some old pre-SoupRequester
3304 code that was a no-op for file: URIs, but would break some data:
3307 2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
3309 Update even more references to right() and bottom() in Chromium. Sheesh.
3311 * platform/graphics/chromium/LayerRendererChromium.cpp:
3312 (WebCore::LayerRendererChromium::getFramebufferPixels): Replaced bottom/right with maxY/maxX.
3314 2011-02-02 Alejandro G. Castro <alex@igalia.com>
3316 Unreviewed Gtk3 buildfix after r77286.
3318 https://bugs.webkit.org/show_bug.cgi?id=53520
3319 Remove the physical terminology from IntRect and FloatRect.
3321 * platform/gtk/RenderThemeGtk3.cpp:
3322 (WebCore::RenderThemeGtk::paintMenuList):
3324 2011-02-02 Anders Carlsson <andersca@apple.com>
3328 * platform/mac/ScrollAnimatorMac.mm:
3329 (WebCore::ScrollAnimatorMac::pinnedInDirection):
3331 2011-02-02 David Hyatt <hyatt@apple.com>
3333 Reviewed by Dan Bernstein.
3335 https://bugs.webkit.org/show_bug.cgi?id=53619
3337 Floats should not use physical terminology for their rects. Replace left/top with x/y and right/bottom
3338 with maxX/maxY. This matches IntRect.
3340 * rendering/RenderBlock.cpp:
3341 (WebCore::RenderBlock::addOverflowFromFloats):
3342 (WebCore::RenderBlock::flipFloatForWritingMode):
3343 (WebCore::RenderBlock::paintFloats):
3344 (WebCore::RenderBlock::selectionGaps):
3345 (WebCore::RenderBlock::addOverhangingFloats):
3346 (WebCore::RenderBlock::addIntrudingFloats):
3347 (WebCore::RenderBlock::hitTestFloats):
3348 (WebCore::RenderBlock::adjustForBorderFit):
3349 * rendering/RenderBlock.h:
3350 (WebCore::RenderBlock::FloatingObject::x):
3351 (WebCore::RenderBlock::FloatingObject::maxX):
3352 (WebCore::RenderBlock::FloatingObject::y):
3353 (WebCore::RenderBlock::FloatingObject::maxY):
3354 (WebCore::RenderBlock::FloatingObject::setX):
3355 (WebCore::RenderBlock::FloatingObject::setY):
3356 (WebCore::RenderBlock::logicalTopForFloat):
3357 (WebCore::RenderBlock::logicalBottomForFloat):
3358 (WebCore::RenderBlock::logicalLeftForFloat):
3359 (WebCore::RenderBlock::logicalRightForFloat):
3360 (WebCore::RenderBlock::setLogicalTopForFloat):
3361 (WebCore::RenderBlock::setLogicalLeftForFloat):
3362 (WebCore::RenderBlock::xPositionForFloatIncludingMargin):
3363 (WebCore::RenderBlock::yPositionForFloatIncludingMargin):
3365 2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
3367 Update more references to right() and bottom() in Chromium Win.
3369 * platform/graphics/chromium/TransparencyWin.cpp:
3370 (WebCore::TransparencyWin::compositeOpaqueComposite): Replaced bottom/right with maxY/maxX.
3371 (WebCore::TransparencyWin::compositeTextComposite): Ditto.
3372 * rendering/RenderThemeChromiumWin.cpp:
3373 (WebCore::RenderThemeChromiumWin::paintMenuList): Ditto.
3375 2011-02-02 Adam Roben <aroben@apple.com>
3377 Encode/decode FormData and FormDataElement objects consistently
3379 Fixes <http://webkit.org/b/53615> <rdar://problem/8943346> WebKit2: Restoring session state
3380 that contains form data fails (asserts in Debug build)
3382 To prevent this from interfering with WebKit2 testing, it's useful to get this into a build
3383 now, even though we don't have an automated test for it yet. Writing a test is covered by
3384 <http://webkit.org/b/53616>.
3386 Reviewed by Darin Adler.
3388 * history/HistoryItem.cpp: Bump the encoding version, since this patch changes how we encode
3391 * platform/network/FormData.cpp:
3392 (WebCore::decode): Decode the type from the Decoder, rather than getting it from the
3393 default-constructed FormDataElement. Failing to do this meant that all future uses of the
3394 Decoder would be reading from an unexpected part of the buffer (i.e., the next decode would
3395 start by reading the uint32_t that we forgot to decode here, and so on). We already had code
3396 to correctly set the FormDataElement's type based on this decoded type later in the
3398 (WebCore::FormData::encodeForBackForward): Encode m_identifier as an int64_t, since that
3399 matches its type and how we decode it.
3401 2011-02-02 Dan Winship <danw@gnome.org>
3403 Reviewed by Martin Robinson.
3405 [GTK] drop soup cache stuff, which has been moved to libsoup
3406 https://bugs.webkit.org/show_bug.cgi?id=50747
3408 Use libsoup-based cache/requester API and remove the WebCore version
3409 of this functionality. This has been pushed upstream fully.
3411 No new tests because this should not change functionality.
3413 * GNUmakefile.am: Update for removed files.
3414 * platform/network/ResourceHandleInternal.h:
3415 (WebCore::ResourceHandleInternal::ResourceHandleInternal): Update
3416 type names, drop m_requester.
3417 * platform/network/soup/ResourceHandleSoup.cpp:
3418 (WebCore::ensureSessionIsInitialized): Add a SoupRequester to the
3420 (WebCore::parseDataUrl):
3421 (WebCore::startHttp): Get the requester from the session rather
3422 than using m_requester.
3423 (WebCore::sendRequestCallback):
3424 (WebCore::ResourceHandle::platformSetDefersLoading):
3425 (WebCore::readCallback):
3426 (WebCore::startGio): Update type names.
3427 * platform/network/soup/cache/soup-directory-input-stream.c: Removed.
3428 * platform/network/soup/cache/soup-directory-input-stream.h: Removed.
3429 * platform/network/soup/cache/soup-http-input-stream.c: Removed.
3430 * platform/network/soup/cache/soup-http-input-stream.h: Removed.
3431 * platform/network/soup/cache/soup-request-data.c: Removed.
3432 * platform/network/soup/cache/soup-request-data.h: Removed.
3433 * platform/network/soup/cache/soup-request-file.c: Removed.
3434 * platform/network/soup/cache/soup-request-file.h: Removed.
3435 * platform/network/soup/cache/soup-request-http.c: Removed.
3436 * platform/network/soup/cache/soup-request-http.h: Removed.
3437 * platform/network/soup/cache/soup-request.c: Removed.
3438 * platform/network/soup/cache/soup-request.h: Removed.
3439 * platform/network/soup/cache/soup-requester.c: Removed.
3440 * platform/network/soup/cache/soup-requester.h: Removed.
3441 * platform/network/soup/cache/webkit/soup-cache-private.h: Removed.
3442 * platform/network/soup/cache/webkit/soup-cache.c: Removed.
3443 * platform/network/soup/cache/webkit/soup-cache.h: Removed.
3445 2011-02-02 David Hyatt <hyatt@apple.com>
3447 Reviewed by Darin Adler.
3449 https://bugs.webkit.org/show_bug.cgi?id=53520
3451 Remove physical accessors from IntRect and FloatRect.
3453 * page/FrameView.cpp:
3454 (WebCore::FrameView::adjustPageHeightDeprecated):
3455 * platform/graphics/FloatRect.h:
3456 * platform/graphics/IntRect.h:
3458 2011-02-02 David Hyatt <hyatt@apple.com>
3460 Reviewed by Dan Bernstein.
3462 https://bugs.webkit.org/show_bug.cgi?id=53614
3464 Remove physical terminology from overflow. Replace with minX/maxX/minY/maxY.
3466 * rendering/InlineFlowBox.cpp:
3467 (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
3468 (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
3469 * rendering/InlineFlowBox.h:
3470 (WebCore::InlineFlowBox::minYLayoutOverflow):
3471 (WebCore::InlineFlowBox::maxYLayoutOverflow):
3472 (WebCore::InlineFlowBox::minXLayoutOverflow):
3473 (WebCore::InlineFlowBox::maxXLayoutOverflow):
3474 (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
3475 (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
3476 (WebCore::InlineFlowBox::logicalTopLayoutOverflow):
3477 (WebCore::InlineFlowBox::logicalBottomLayoutOverflow):
3478 (WebCore::InlineFlowBox::minYVisualOverflow):
3479 (WebCore::InlineFlowBox::maxYVisualOverflow):
3480 (WebCore::InlineFlowBox::minXVisualOverflow):
3481 (WebCore::InlineFlowBox::maxXVisualOverflow):
3482 (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
3483 (WebCore::InlineFlowBox::logicalRightVisualOverflow):
3484 (WebCore::InlineFlowBox::logicalminYVisualOverflow):
3485 (WebCore::InlineFlowBox::logicalmaxYVisualOverflow):
3486 * rendering/RenderBlock.cpp:
3487 (WebCore::RenderBlock::adjustLinePositionForPagination):
3488 * rendering/RenderBlockLineLayout.cpp:
3489 (WebCore::RenderBlock::beforeSideVisualOverflowForLine):
3490 (WebCore::RenderBlock::afterSideVisualOverflowForLine):
3491 (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
3492 (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
3493 * rendering/RenderBox.cpp:
3494 (WebCore::RenderBox::scrollWidth):
3495 (WebCore::RenderBox::scrollHeight):
3496 * rendering/RenderBox.h:
3497 (WebCore::RenderBox::minYLayoutOverflow):
3498 (WebCore::RenderBox::maxYLayoutOverflow):
3499 (WebCore::RenderBox::minXLayoutOverflow):
3500 (WebCore::RenderBox::maxXLayoutOverflow):
3501 (WebCore::RenderBox::logicalLeftLayoutOverflow):
3502 (WebCore::RenderBox::logicalRightLayoutOverflow):
3503 (WebCore::RenderBox::minYVisualOverflow):
3504 (WebCore::RenderBox::maxYVisualOverf