1 2009-07-23 Jian Li <jianli@chromium.org>
3 Reviewed by David Levin.
5 [V8] Fix an assert in running workers in Chrome.
6 https://bugs.webkit.org/show_bug.cgi?id=27620
8 The fix is to change V8DOMMap::removeAllDOMObjectsInCurrentThreadHelper
9 to do not call removeObjectsFromWrapperMap for certain types of DOM
10 objects that exist only in main thread.
12 * bindings/v8/V8DOMMap.cpp:
13 (WebCore::removeAllDOMObjectsInCurrentThreadHelper):
15 2009-07-23 David Hyatt <hyatt@apple.com>
17 Reviewed by Dan Bernstein.
19 https://bugs.webkit.org/show_bug.cgi?id=27572
20 Implement support for background-attachment:local.
22 Added new test fast/overflow/overflow-with-local-attachment.html.
24 * css/CSSComputedStyleDeclaration.cpp:
25 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
27 (WebCore::CSSParser::parseFillProperty):
28 * css/CSSPrimitiveValueMappings.h:
29 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
30 (WebCore::CSSPrimitiveValue::operator EFillAttachment):
31 * css/CSSStyleSelector.cpp:
32 (WebCore::CSSStyleSelector::mapFillAttachment):
33 * css/CSSValueKeywords.in:
34 * rendering/RenderBoxModelObject.cpp:
35 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
36 (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
37 * rendering/style/FillLayer.h:
38 (WebCore::FillLayer::attachment):
39 (WebCore::FillLayer::setAttachment):
40 (WebCore::FillLayer::hasFixedImage):
41 (WebCore::FillLayer::initialFillAttachment):
42 * rendering/style/RenderStyle.h:
43 (WebCore::InheritedFlags::backgroundAttachment):
44 (WebCore::InheritedFlags::maskAttachment):
45 * rendering/style/RenderStyleConstants.h:
48 2009-07-23 Ryosuke Niwa <rniwa@webkit.org>
50 Reviewed by Eric Seidel.
52 copyInheritableProperties and removeComputedInheritablePropertiesFrom should be deprecated
53 https://bugs.webkit.org/show_bug.cgi?id=27325
55 This patch deprecates copyInheritableProperties because it has been used for two different purposes:
56 1. Calculating the typing style.
57 2. Moving HTML subtrees and seeking to remove redundant styles.
58 These tasks should be broken out into two separate functions. New code should not use this function.
60 It deletes removeComputedInheritablePropertiesFrom because it hasn't been used anywhere.
62 There is no test since the patch does not change any behavior.
64 * css/CSSComputedStyleDeclaration.cpp: removeComputedInheritablePropertiesFrom has been removed
65 (WebCore::CSSComputedStyleDeclaration::deprecatedCopyInheritableProperties): has been renamed from copyInheritableProperties
66 * css/CSSComputedStyleDeclaration.h: ditto
67 * editing/DeleteSelectionCommand.cpp: ditto
68 (WebCore::removeEnclosingAnchorStyle): ditto
69 (WebCore::DeleteSelectionCommand::saveTypingStyleState): ditto
70 * editing/EditCommand.cpp: ditto
71 (WebCore::EditCommand::styleAtPosition): ditto
72 * editing/RemoveFormatCommand.cpp: ditto
73 (WebCore::RemoveFormatCommand::doApply): ditto
74 * editing/ReplaceSelectionCommand.cpp: ditto
75 (WebCore::handleStyleSpansBeforeInsertion): ditto
76 (WebCore::ReplaceSelectionCommand::handleStyleSpans): ditto
77 * editing/markup.cpp: ditto
78 (WebCore::removeEnclosingMailBlockquoteStyle): ditto
79 (WebCore::removeDefaultStyles): ditto
80 (WebCore::createMarkup): ditto
82 2009-07-22 Pierre d'Herbemont <pdherbemont@apple.com>
84 Reviewed by Simon Fraser.
86 Audio element at default width shouldn't have time field.
87 https://bugs.webkit.org/show_bug.cgi?id=27589
89 * rendering/MediaControlElements.cpp:
90 (WebCore::MediaControlTimeDisplayElement::setVisible): Make sure we don't
91 forget to remember the visibility if there is no renderer.
93 2009-07-23 Beth Dakin <bdakin@apple.com>
95 Reviewed by Darin Adler.
97 Fix for https://bugs.webkit.org/show_bug.cgi?id=27598 Clean up the
98 AccessibilityObject class
100 Mostly this is just moving empty stubs into the header rather than
101 muddying the cpp file with them. A few functions were made pure
104 * accessibility/AccessibilityObject.cpp:
105 (WebCore::AccessibilityObject::isARIAControl):
106 (WebCore::AccessibilityObject::clickPoint):
107 (WebCore::AccessibilityObject::documentFrameView):
108 (WebCore::AccessibilityObject::actionVerb):
109 * accessibility/AccessibilityObject.h:
110 (WebCore::AccessibilityObject::intValue):
111 (WebCore::AccessibilityObject::layoutCount):
112 (WebCore::AccessibilityObject::doAccessibilityHitTest):
113 (WebCore::AccessibilityObject::focusedUIElement):
114 (WebCore::AccessibilityObject::firstChild):
115 (WebCore::AccessibilityObject::lastChild):
116 (WebCore::AccessibilityObject::previousSibling):
117 (WebCore::AccessibilityObject::nextSibling):
118 (WebCore::AccessibilityObject::parentObjectIfExists):
119 (WebCore::AccessibilityObject::observableObject):
120 (WebCore::AccessibilityObject::linkedUIElements):
121 (WebCore::AccessibilityObject::titleUIElement):
122 (WebCore::AccessibilityObject::ariaRoleAttribute):
123 (WebCore::AccessibilityObject::isPresentationalChildOfAriaRole):
124 (WebCore::AccessibilityObject::ariaRoleHasPresentationalChildren):
125 (WebCore::AccessibilityObject::roleValue):
126 (WebCore::AccessibilityObject::ariaAccessiblityName):
127 (WebCore::AccessibilityObject::ariaLabeledByAttribute):
128 (WebCore::AccessibilityObject::ariaDescribedByAttribute):
129 (WebCore::AccessibilityObject::accessibilityDescription):
130 (WebCore::AccessibilityObject::ariaSelectedTextDOMRange):
131 (WebCore::AccessibilityObject::axObjectCache):
132 (WebCore::AccessibilityObject::axObjectID):
133 (WebCore::AccessibilityObject::setAXObjectID):
134 (WebCore::AccessibilityObject::anchorElement):
135 (WebCore::AccessibilityObject::actionElement):
136 (WebCore::AccessibilityObject::boundingBoxRect):
137 (WebCore::AccessibilityObject::selectedTextRange):
138 (WebCore::AccessibilityObject::selectionStart):
139 (WebCore::AccessibilityObject::selectionEnd):
140 (WebCore::AccessibilityObject::url):
141 (WebCore::AccessibilityObject::selection):
142 (WebCore::AccessibilityObject::stringValue):
143 (WebCore::AccessibilityObject::title):
144 (WebCore::AccessibilityObject::helpText):
145 (WebCore::AccessibilityObject::textUnderElement):
146 (WebCore::AccessibilityObject::text):
147 (WebCore::AccessibilityObject::textLength):
148 (WebCore::AccessibilityObject::selectedText):
149 (WebCore::AccessibilityObject::accessKey):
150 (WebCore::AccessibilityObject::widget):
151 (WebCore::AccessibilityObject::widgetForAttachmentView):
152 (WebCore::AccessibilityObject::setFocused):
153 (WebCore::AccessibilityObject::setSelectedText):
154 (WebCore::AccessibilityObject::setSelectedTextRange):
155 (WebCore::AccessibilityObject::setValue):
156 (WebCore::AccessibilityObject::setSelected):
157 (WebCore::AccessibilityObject::makeRangeVisible):
158 (WebCore::AccessibilityObject::childrenChanged):
159 (WebCore::AccessibilityObject::addChildren):
160 (WebCore::AccessibilityObject::hasChildren):
161 (WebCore::AccessibilityObject::selectedChildren):
162 (WebCore::AccessibilityObject::visibleChildren):
163 (WebCore::AccessibilityObject::visiblePositionRange):
164 (WebCore::AccessibilityObject::visiblePositionRangeForLine):
165 (WebCore::AccessibilityObject::boundsForVisiblePositionRange):
166 (WebCore::AccessibilityObject::setSelectedVisiblePositionRange):
167 (WebCore::AccessibilityObject::visiblePositionForPoint):
168 (WebCore::AccessibilityObject::nextVisiblePosition):
169 (WebCore::AccessibilityObject::previousVisiblePosition):
170 (WebCore::AccessibilityObject::visiblePositionForIndex):
171 (WebCore::AccessibilityObject::indexForVisiblePosition):
172 (WebCore::AccessibilityObject::index):
173 (WebCore::AccessibilityObject::doAXRangeForLine):
174 (WebCore::AccessibilityObject::doAXRangeForIndex):
175 (WebCore::AccessibilityObject::doAXStringForRange):
176 (WebCore::AccessibilityObject::doAXBoundsForRange):
177 (WebCore::AccessibilityObject::updateBackingStore):
179 2009-07-23 Brian Weinstein <bweinstein@apple.com>
181 Reviewed by David Hyatt.
183 Fix of <rdar://4877658> Dragging from the area between the horizontal/vertical scrollbars when status bar is showing starts a selection and autoscroll.
185 * page/EventHandler.cpp:
186 (WebCore::EventHandler::handleMousePressEvent):
187 * platform/ScrollView.cpp:
188 (WebCore::ScrollView::wheelEvent):
189 * platform/ScrollView.h:
191 2009-07-23 David Hyatt <hyatt@apple.com>
193 Reviewed by Dan Bernstein.
195 https://bugs.webkit.org/show_bug.cgi?id=27581
196 Drop the prefix from the box-shadow property.
198 * css/CSSComputedStyleDeclaration.cpp:
200 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
202 (WebCore::CSSParser::parseValue):
203 (WebCore::ShadowParseContext::commitLength):
204 (WebCore::cssPropertyID):
205 * css/CSSPropertyNames.in:
206 * css/CSSStyleSelector.cpp:
207 (WebCore::CSSStyleSelector::applyProperty):
208 * page/animation/AnimationBase.cpp:
209 (WebCore::ensurePropertyMap):
211 2009-07-22 Viet-Trung Luu <viettrungluu@gmail.com>
213 Reviewed by David Hyatt.
215 https://bugs.webkit.org/show_bug.cgi?id=27289
216 When a mouse click occurs on a scrollbar without a preceding mouse move
217 onto it, the release isn't handled correctly (since
218 EventHandler::m_lastScrollbarUnderMouse isn't set on mouse down, but
219 only on mouse move). (Side comment: That scrollbar-handling code
220 in EventHandler is ugly. It should be fixed properly.)
222 Tests: scrollbars/scrollbar-miss-mousemove.html
223 scrollbars/scrollbar-miss-mousemove-disabled.html
225 * page/EventHandler.cpp:
226 (WebCore::EventHandler::handleMousePressEvent):
227 (WebCore::EventHandler::handleMouseMoveEvent):
228 (WebCore::EventHandler::updateLastScrollbarUnderMouse):
229 * page/EventHandler.h:
231 2009-07-23 Mike Fenton <mike.fenton@torchmobile.com>
233 Reviewed by David Levin.
235 Update WebCore/page/BarInfo.cpp to conform to WebKit
236 Style Guidelines as identified by cpplint.py.
237 https://bugs.webkit.org/show_bug.cgi?id=27606
240 (WebCore::BarInfo::visible):
242 2009-07-23 Mike Fenton <mike.fenton@torchmobile.com>
244 Reviewed by David Levin.
246 Update WebCore/page/Console.cpp to conform to WebKit
247 Style Guidelines as identified by cpplint.py.
248 https://bugs.webkit.org/show_bug.cgi?id=27606
251 (WebCore::printMessageSourceAndLevelPrefix):
252 (WebCore::Console::profile):
253 (WebCore::Console::time):
255 2009-07-23 Simon Hausmann <simon.hausmann@nokia.com>
257 Reviewed by Holger Freyther.
259 Fix crashes with the QObject bindings after garbage collection.
261 There is one QtInstance per wrapped QObject, and that QtInstance keeps
262 references to cached JSObjects for slots. When those objects get
263 deleted due to GC, then they becoming dangling pointers.
265 When a cached member dies, it is now removed from the QtInstance's
268 As we cannot track the lifetime of the children, we have to remove
269 them from QtInstance alltogether. They are not cached and were
270 only used for mark(), but we _want_ them to be subject to gc.
272 * bridge/qt/qt_instance.cpp:
273 (JSC::Bindings::QtInstance::~QtInstance): Minor coding style cleanup,
275 (JSC::Bindings::QtInstance::removeCachedMethod): New function, to
276 clean m_methods and m_defaultMethod.
277 (JSC::Bindings::QtInstance::mark): Avoid marking already marked objects.
278 (JSC::Bindings::QtField::valueFromInstance): Don't save children for
280 * bridge/qt/qt_instance.h: Declare removeCachedMethod.
281 * bridge/qt/qt_runtime.cpp:
282 (JSC::Bindings::QtRuntimeMethod::~QtRuntimeMethod): Call removeCachedMethod
283 with this on the instance.
285 2009-07-23 Xan Lopez <xlopez@igalia.com>
287 Reviewed by Mark Rowe.
289 https://bugs.webkit.org/show_bug.cgi?id=27599
290 'const unsigned' in return value
292 Remove const modifier from unsigned return value, as it does not
297 2009-07-22 Jens Alfke <snej@chromium.org>
299 Reviewed by David Levin.
301 Bug 22784: Improve keyboard navigation of Select elements.
302 Home/End and PageUp/PageDn buttons do not do anything in drop down lists,
303 on non-Mac platforms.
304 https://bugs.webkit.org/show_bug.cgi?id=22784
305 http://code.google.com/p/chromium/issues/detail?id=4576
307 New test: LayoutTests/fast/forms/select-popup-pagekeys.html
309 * dom/SelectElement.cpp:
310 (WebCore::nextValidIndex):
311 New utility fn for traversing items of a select's list.
312 (WebCore::SelectElement::menuListDefaultEventHandler):
313 Added code to handle Home/End and PageUp/PageDn when ARROW_KEYS_POP_MENU is false.
315 2009-07-23 Xan Lopez <xlopez@igalia.com>
317 Reviewed by Mark Rowe.
319 Fix a couple of compiler warnings.
321 * platform/graphics/cairo/ImageBufferCairo.cpp:
323 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
324 (WebCore::SimpleFontData::containsCharacters):
326 2009-07-22 Simon Hausmann <simon.hausmann@nokia.com>
328 Rubber-stamped by David Levin.
330 Enable HTML5 Datagrid defines for the Qt build.
334 2009-07-22 Adam Barth <abarth@webkit.org>
336 Reviewed by David Levin.
338 [V8] Make Node wrappers go fast
339 https://bugs.webkit.org/show_bug.cgi?id=27597
341 Profiles indicate we're spending a lot of time asking whether we're on
342 the main thread when looking up DOM wrappers for Nodes, but there isn't
343 much point in doing that work because Nodes only exist on the main
344 thread. I've also added an assert to keep us honest in this regard.
346 * bindings/v8/V8DOMMap.cpp:
348 (WebCore::getDOMNodeMap):
349 (WebCore::DOMData::getCurrent):
350 (WebCore::DOMData::getCurrentMainThread):
352 2009-07-22 Adam Barth <abarth@webkit.org>
354 Reviewed by Alexey Proskuryakov.
356 Remove unneeded virtual destructor from ScriptSourceProvider
357 https://bugs.webkit.org/show_bug.cgi?id=27563
359 * bindings/js/ScriptSourceProvider.h:
361 2009-07-22 Ryosuke Niwa <rniwa@webkit.org>
363 Reviewed by Eric Seidel.
365 execCommand('underline' / 'strikeThrough') doesn't work properly with multiple styles in text-decoration
366 https://bugs.webkit.org/show_bug.cgi?id=27476
368 executeStrikethrough and executeUnderline were toggling between "line-through" / "underline" and "none".
369 This patch adds executeToggleStyleInList that toggles a style in CSSValueList instead of toggling the entire value.
370 It modifies CSSComputedStyleDeclaration to return CSSValueList instead of CSSPrimitiveValue for text decorations,
371 and adds removeAll member function to CSSValueList.
373 Tests: editing/execCommand/toggle-text-decorations.html
374 fast/css/getComputedStyle/getComputedStyle-text-decoration.html
376 * css/CSSComputedStyleDeclaration.cpp:
377 (WebCore::renderTextDecorationFlagsToCSSValue): Creates a CSSValueList
378 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Returns a CSSValueList instead of CSSValue
380 (WebCore::CSSParser::parseValue): Text decorations are space separated instead of comma separated
381 * css/CSSValueList.cpp:
382 (WebCore::CSSValueList::removeAll): Removes all values that match the specified value
383 * css/CSSValueList.h:
384 * editing/EditorCommand.cpp:
385 (WebCore::applyCommandToFrame): Apply style to a frame using specified command
386 (WebCore::executeApplyStyle): Uses applyCommandToFrame
387 (WebCore::executeToggleStyleInList): Uses applyCommandToFrame
388 (WebCore::executeToggleStyle): Toggles a style in CSSValueList
389 (WebCore::executeStrikethrough): Uses executeToggleStyleInList
390 (WebCore::executeUnderline): Uses executeToggleStyleInList
392 2009-07-22 Daniel Bates <dbates@intudata.com>
394 Reviewed by Adam Barth.
396 https://bugs.webkit.org/show_bug.cgi?id=27174
398 https://bugs.webkit.org/show_bug.cgi?id=26938
400 Code cleanup. Implements support for detecting attacks transformed by
401 PHP Magic Quotes/PHP addslashes().
403 Tests: http/tests/security/xssAuditor/script-tag-addslashes-backslash.html
404 http/tests/security/xssAuditor/script-tag-addslashes-double-quote.html
405 http/tests/security/xssAuditor/script-tag-addslashes-null-char.html
406 http/tests/security/xssAuditor/script-tag-addslashes-single-quote.html
408 * page/XSSAuditor.cpp:
409 (WebCore::isInvalidCharacter):
410 (WebCore::XSSAuditor::canEvaluate):
411 (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
412 (WebCore::XSSAuditor::canLoadObject):
413 (WebCore::XSSAuditor::normalize): Decodes HTML entities, removes backslashes,
414 and removes control characters that could otherwise cause a discrepancy between
415 the source code of a script and the outgoing HTTP parameters.
416 (WebCore::XSSAuditor::decodeURL):
417 (WebCore::XSSAuditor::decodeHTMLEntities):
418 (WebCore::XSSAuditor::findInRequest):
421 2009-07-22 Oliver Hunt <oliver@apple.com>
423 Reviewed by Adele Peterson.
425 Null deref in JSObject::mark due to null xhr wrapper
426 https://bugs.webkit.org/show_bug.cgi?id=27565
428 Make event target binding for appcache and xhr behave in the same way as
429 it does for all other events.
431 No test as I couldn't make a testcase which was remotely reliable.
433 * bindings/js/JSEventTarget.cpp:
436 2009-07-22 Mads Ager <ager@chromium.org>
438 Reviewed by David Levin.
440 Inform V8 of the amount of WebCore string memory it is keeping alive.
441 https://bugs.webkit.org/show_bug.cgi?id=27537
443 V8 uses external strings that are backed by WebCore strings. Since
444 the external strings themselves are small, V8 has no way of
445 knowing how much memory it is actually holding on to. With this
446 change, we inform V8 of the amount of WebCore string data it is
447 holding on to with external strings.
449 * bindings/v8/V8Binding.cpp:
450 (WebCore::WebCoreStringResource::WebCoreStringResource):
451 (WebCore::WebCoreStringResource::~WebCoreStringResource):
453 2009-07-22 David Hyatt <hyatt@apple.com>
455 Reviewed by Beth Dakin.
457 https://bugs.webkit.org/show_bug.cgi?id=27562
458 Add the finalized versions of background-clip and background-origin. Remove background-clip from
459 the background shorthand and have it be auto-set based off background-origin's value.
461 Three new tests added in fast/backgrounds/size
463 * css/CSSComputedStyleDeclaration.cpp:
465 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
466 * css/CSSMutableStyleDeclaration.cpp:
467 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
469 (WebCore::CSSParser::parseValue):
470 (WebCore::CSSParser::parseFillShorthand):
471 (WebCore::CSSParser::parseFillProperty):
472 * css/CSSPropertyLonghand.cpp:
473 (WebCore::initShorthandMap):
474 * css/CSSPropertyNames.in:
475 * css/CSSStyleSelector.cpp:
476 (WebCore::CSSStyleSelector::applyProperty):
477 * css/CSSValueKeywords.in:
479 2009-07-22 Jens Alfke <snej@chromium.org>
481 Reviewed by Darin Fisher.
483 Hook up V8 bindings for DataGrid elements.
484 https://bugs.webkit.org/show_bug.cgi?id=27383
485 http://code.google.com/p/chromium/issues/detail?id=16730
487 Tests: Enhanced LayoutTests/fast/dom/HTMLDataGridElement/*
488 to handle exceptions, check appropriate JS prototypes, and
489 test column-list's item() method as well as array-indexing.
491 * WebCore.gypi: Added new source files.
492 * bindings/scripts/CodeGeneratorV8.pm: Made GenerateBatchedAttributeData put #if's around conditional attributes.
493 * bindings/v8/DOMObjectsInclude.h: #include DataGrid headers.
494 * bindings/v8/V8DOMWrapper.cpp: Add bindings from HTML tags to datagrid templates.
495 (WebCore::V8DOMWrapper::getTemplate): Customize datagrid template.
496 * bindings/v8/V8DataGridDataSource.cpp: Added. (Based on JSDataGridDataSource)
497 (WebCore::V8DataGridDataSource::V8DataGridDataSource):
498 (WebCore::V8DataGridDataSource::~V8DataGridDataSource):
499 * bindings/v8/V8DataGridDataSource.h: Added. (Based on JSDataGridDataSource)
500 (WebCore::V8DataGridDataSource::create):
501 (WebCore::V8DataGridDataSource::isJSDataGridDataSource):
502 (WebCore::V8DataGridDataSource::jsDataSource):
503 (WebCore::asV8DataGridDataSource):
504 * bindings/v8/V8GCController.h: Added new handle type "DATASOURCE".
505 * bindings/v8/V8Index.h: Conditionalize datagrid stuff.
506 * bindings/v8/custom/V8CustomBinding.h: Declare more accessors. Conditionalize.
507 * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Added.
508 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Fill in dataSource accessors.
509 (WebCore::ACCESSOR_GETTER):
510 (WebCore::ACCESSOR_SETTER):
512 2009-07-22 Ryosuke Niwa <rniwa@webkit.org>
514 Reviewed by Eric Seidel.
516 pushDownTextDecorationStyleAroundNode needs clean up
517 https://bugs.webkit.org/show_bug.cgi?id=27556
519 Cleaned up. pushDownTextDecorationStyleAroundNode traverses tree vertically from highestAncestor to targetNode
520 While traversing, it will apply the specified style to all nodes but targetNode.
521 i.e. the style is applies to all ancestor nodes and their siblings of targetNode.
523 * editing/ApplyStyleCommand.cpp:
524 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): Cleaned up and added comments
525 * editing/ApplyStyleCommand.h: Updated prototype
527 2009-07-22 Peter Kasting <pkasting@google.com>
529 Reviewed by David Kilzer.
531 https://bugs.webkit.org/show_bug.cgi?id=27323
532 Handle any type of line endings in WebCore/css/*CSSPropertyNames.in.
534 * DerivedSources.make:
538 2009-07-22 Paul Godavari <paul@chromium.org>
540 Reviewed by Darin Fisher.
542 Chromium has a build break after removal of JSRGBColor bindings
543 https://bugs.webkit.org/show_bug.cgi?id=27548
545 Fix a build break in Chromium V8 after the JSRGBColor bindings change:
546 https://bugs.webkit.org/show_bug.cgi?id=27242
548 * bindings/scripts/CodeGeneratorV8.pm:
550 2009-07-22 Adam Langley <agl@google.com>
552 Reviewed by Darin Fisher.
554 Chromium Linux: add static functions to FontPlatformData which allow
555 for setting the global font rendering preferences.
557 https://bugs.webkit.org/show_bug.cgi?id=27513
558 http://code.google.com/p/chromium/issues/detail?id=12179
560 This should not affect any layout tests.
562 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
563 (WebCore::FontPlatformData::setHinting):
564 (WebCore::FontPlatformData::setAntiAlias):
565 (WebCore::FontPlatformData::setSubpixelGlyphs):
566 (WebCore::FontPlatformData::setupPaint):
567 * platform/graphics/chromium/FontPlatformDataLinux.h:
569 2009-07-22 Mikhail Naganov <mnaganov@chromium.org>
571 Reviewed by Timothy Hatcher.
573 Move Inspector panels creation into a function to make possible introducing
576 * inspector/front-end/inspector.js:
577 (WebInspector._createPanels):
578 (WebInspector.loaded):
580 2009-07-22 Pavel Feldman <pfeldman@chromium.org>
582 Reviewed by Timothy Hatcher.
584 WebInspector: Print console command message upon evaluate
585 selection request; Handle errors in evaluation request
588 https://bugs.webkit.org/show_bug.cgi?id=27535
590 * inspector/front-end/ScriptsPanel.js:
591 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
592 * inspector/front-end/SourceFrame.js:
593 (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
595 2009-07-22 Xan Lopez <xlopez@igalia.com>
597 Attempt to fix the GTK+ build.
601 2009-07-21 Simon Hausmann <simon.hausmann@nokia.com>
605 * WebCore.pro: Add RGBColor.cpp to the build, remove JSRGBColor.
607 2009-07-21 Daniel Bates <dbates@intudata.com>
609 Reviewed by Adam Barth.
611 https://bugs.webkit.org/show_bug.cgi?id=27494
613 Fixes an issue that can cause a crash or unexpected behavior when calling
614 WebCore::ScriptSourceCode::source on a cached script.
619 * WebCore.vcproj/WebCore.vcproj:
620 * WebCore.xcodeproj/project.pbxproj:
621 * bindings/js/CachedScriptSourceProvider.h: Modified to inherit from
622 WebCore::ScriptSourceCode.
623 (WebCore::CachedScriptSourceProvider::source):
624 (WebCore::CachedScriptSourceProvider::CachedScriptSourceProvider):
625 * bindings/js/ScriptSourceCode.h:
626 (WebCore::ScriptSourceCode::ScriptSourceCode): Separated out source provider and
627 rewrote to use WebCore::ScriptSourceProvider.
628 (WebCore::ScriptSourceCode::source):
629 * bindings/js/ScriptSourceProvider.h: Added.
630 (WebCore::ScriptSourceProvider::ScriptSourceProvider):
631 (WebCore::ScriptSourceProvider::~ScriptSourceProvider):
632 * bindings/js/StringSourceProvider.h: Modified to inherit from
633 WebCore::ScriptSourceCode.
634 (WebCore::StringSourceProvider::StringSourceProvider):
636 2009-07-21 Sam Weinig <sam@webkit.org>
638 Another attempt to fix the Windows build.
640 * WebCore.vcproj/WebCore.vcproj:
642 2009-07-21 Sam Weinig <sam@webkit.org>
644 Attempt to fix the Windows build.
646 * DerivedSources.cpp:
648 2009-07-21 Sam Weinig <sam@webkit.org>
650 Attempt to fix the GTK build.
654 2009-07-21 Sam Weinig <sam@webkit.org>
656 Reviewed by Dan Bernstein.
658 Autogenerate Objective-C binding implementation for RGBColor.
660 No functionality change.
662 * WebCore.xcodeproj/project.pbxproj:
663 * bindings/objc/DOMRGBColor.mm: Removed.
664 * bindings/scripts/CodeGeneratorObjC.pm: Add logic to convert from
665 WebCore::Color to NSColor*.
668 2009-07-21 Sam Weinig <sam@webkit.org>
670 Reviewed by Dan Bernstein.
672 Fix for https://bugs.webkit.org/show_bug.cgi?id=27242
673 JSC bindings should use an auto-bound RGBColor class instead of hand-rolled JSRGBColor
675 Move the JSC and Objective-C bindings onto using the RGBColor object instead
676 of just an unsigned int. The JSC bindings are now completely autogenerated for
677 this class. (Also removes the last lut from WebCore).
679 * DerivedSources.make:
682 * WebCore.vcproj/WebCore.vcproj:
683 * WebCore.xcodeproj/project.pbxproj:
684 * WebCoreSources.bkl:
685 * bindings/js/JSRGBColor.cpp: Removed.
686 * bindings/js/JSRGBColor.h: Removed.
687 * bindings/objc/DOM.mm:
688 (-[DOMRGBColor _color]):
689 * bindings/objc/DOMRGBColor.mm:
690 (-[DOMRGBColor dealloc]):
691 (-[DOMRGBColor finalize]):
692 (-[DOMRGBColor red]):
693 (-[DOMRGBColor green]):
694 (-[DOMRGBColor blue]):
695 (-[DOMRGBColor alpha]):
696 (-[DOMRGBColor color]):
697 * bindings/scripts/CodeGenerator.pm:
698 * bindings/scripts/CodeGeneratorJS.pm:
699 * bindings/scripts/CodeGeneratorObjC.pm:
701 (WebCore::CSSParser::parseColor):
702 * css/CSSPrimitiveValue.cpp:
703 (WebCore::CSSPrimitiveValue::getRGBColorValue):
704 * css/CSSPrimitiveValue.h:
705 (WebCore::CSSPrimitiveValue::getRGBA32Value):
706 * css/CSSStyleSelector.cpp:
707 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
709 (WebCore::RGBColor::alpha):
711 (WebCore::RGBColor::color):
712 (WebCore::RGBColor::RGBColor):
714 * page/DOMWindow.idl:
716 (WebCore::SVGColor::rgbColor):
719 2009-07-21 Jian Li <jianli@chromium.org>
721 Reviewed by David Levin.
723 Implement AbstractWorker::dispatchScriptErrorEvent by generating an ErrorEvent.
724 https://bugs.webkit.org/show_bug.cgi?id=27515
726 * workers/AbstractWorker.cpp:
727 (WebCore::AbstractWorker::dispatchScriptErrorEvent):
729 2009-07-21 Eric Seidel <eric@webkit.org>
731 Reviewed by Adam Barth.
733 Move m_context out of generator into a superclass
734 https://bugs.webkit.org/show_bug.cgi?id=27521
736 Mostly this is removing code from CodeGeneratorJS
737 and instead using a DOMObjectWithSVGContext superclass in JSDOMBinding.h.
739 DOMObjectWithSVGContext.h is its own file so that WebKit doesn't need to
740 know about SVGElement.h (WebKit includes JSDOMBinding.h for some reason).
742 I also removed context pointer from SVGZoomEvent since it was never used.
746 * WebCore.vcproj/WebCore.vcproj:
747 * WebCore.xcodeproj/project.pbxproj:
748 * bindings/js/DOMObjectWithSVGContext.h: Added.
749 (WebCore::DOMObjectWithSVGContext::context):
750 (WebCore::DOMObjectWithSVGContext::DOMObjectWithSVGContext):
751 * bindings/js/JSDOMBinding.h:
752 * bindings/js/JSEventCustom.cpp:
754 * bindings/scripts/CodeGeneratorJS.pm:
756 2009-07-21 Ryosuke Niwa <rniwa@webkit.org>
758 Reviewed by Eric Seidel.
760 REGRESSION (r46142): editing/execCommand/19087.html & editing/execCommand/19653-1.html fail in Windows build
761 https://bugs.webkit.org/show_bug.cgi?id=27480
763 Because m_anchorType : 2 is treated as a signed integer by cl.exe, anchorType() wasn't returning the correct value.
764 We made m_anchorType unsigned so that anchorType() returns the correct value.
767 (WebCore::Position::anchorType): statically cast to AnchorType
769 2009-07-21 Jian Li <jianli@chromium.org>
771 Reviewed by David Levin.
773 [V8] Add V8 bindings for onerror in WorkerContext.
774 https://bugs.webkit.org/show_bug.cgi?id=27518
776 * bindings/v8/custom/V8CustomBinding.h:
777 * bindings/v8/custom/V8WorkerContextCustom.cpp:
778 (WebCore::ACCESSOR_GETTER):
779 (WebCore::ACCESSOR_SETTER):
781 2009-07-21 Jian Li <jianli@chromium.org>
783 Fix the incorrect patch being landed for bug 27516 that has already been reviewed.
784 https://bugs.webkit.org/show_bug.cgi?id=27516
786 * workers/WorkerContext.h:
787 (WebCore::WorkerContext::setOnerror):
788 (WebCore::WorkerContext::onerror):
789 * workers/WorkerContext.idl:
791 2009-07-21 Jian Li <jianli@chromium.org>
793 Reviewed by David Levin.
795 Add onerror to WorkerContext.
796 https://bugs.webkit.org/show_bug.cgi?id=27516
798 * bindings/js/JSWorkerContextCustom.cpp:
799 (WebCore::JSWorkerContext::mark):
800 * workers/WorkerContext.h:
801 (WebCore::WorkerContext::setOnerror):
802 (WebCore::WorkerContext::onerror):
803 * workers/WorkerContext.idl:
805 2009-07-21 Yong Li <yong.li@torchmobile.com>
807 Reviewed by George Staikos.
809 https://bugs.webkit.org/show_bug.cgi?id=27509
810 Add font-related files for the WinCE port.
812 Written by Yong Li <yong.li@torchmobile.com>
814 * platform/graphics/wince/FontCacheWince.cpp: Added.
815 * platform/graphics/wince/FontCustomPlatformData.cpp: Added.
816 * platform/graphics/wince/FontCustomPlatformData.h: Added.
817 * platform/graphics/wince/FontPlatformData.cpp: Added.
818 * platform/graphics/wince/FontPlatformData.h: Added.
819 * platform/graphics/wince/FontWince.cpp: Added.
820 * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Added.
821 * platform/graphics/wince/SimpleFontDataWince.cpp: Added.
823 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
825 Fix the Windows build, and update the comment on top now that wx uses WebCorePrefix.h too.
829 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
831 WebCorePrefix.h build fixes for non-Mac and wx / CURL builds.
835 2009-07-21 Eric Seidel <eric@webkit.org>
837 Reviewed by Adam Barth.
839 All DOMConstructorObjects should hold a pointer to the JSDOMGlobalObject
840 https://bugs.webkit.org/show_bug.cgi?id=27478
842 This is just moving code.
843 I've added two new classes: DOMObjectWithGlobalPointer and DOMConstructorWithDocument.
845 DOMObjectWithGlobalPointer is a new baseclass for DOMConstructorObject.
846 (It's a baseclass because eventually all DOMObjects will have a global pointer, but
847 I'll be moving them onto DOMObjectWithGlobalPointer in stages.)
849 DOMConstructorWithDocument is a new baseclass for the 3 constructor objects
850 which require a backpointer to the Document to function. I made this a subclass of
851 DOMConstructorObject to make clear that most constructors can hold no-such assumptions
852 about having a back-pointer to the Document (since many constructors can be used from Workers).
854 * bindings/js/JSAudioConstructor.cpp:
855 (WebCore::JSAudioConstructor::JSAudioConstructor):
856 * bindings/js/JSAudioConstructor.h:
857 * bindings/js/JSDOMBinding.h:
858 (WebCore::DOMObjectWithGlobalPointer::globalObject):
859 (WebCore::DOMObjectWithGlobalPointer::scriptExecutionContext):
860 (WebCore::DOMObjectWithGlobalPointer::DOMObjectWithGlobalPointer):
861 (WebCore::DOMObjectWithGlobalPointer::mark):
862 (WebCore::DOMConstructorObject::DOMConstructorObject):
863 (WebCore::DOMConstructorWithDocument::document):
864 (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
865 * bindings/js/JSImageConstructor.cpp:
866 (WebCore::JSImageConstructor::JSImageConstructor):
867 * bindings/js/JSImageConstructor.h:
868 * bindings/js/JSMessageChannelConstructor.cpp:
869 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
870 * bindings/js/JSMessageChannelConstructor.h:
871 * bindings/js/JSOptionConstructor.cpp:
872 (WebCore::JSOptionConstructor::JSOptionConstructor):
873 * bindings/js/JSOptionConstructor.h:
874 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
875 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
876 * bindings/js/JSWebKitPointConstructor.cpp:
877 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
878 * bindings/js/JSWorkerConstructor.cpp:
879 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
880 * bindings/js/JSXMLHttpRequestConstructor.cpp:
881 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
882 * bindings/js/JSXMLHttpRequestConstructor.h:
883 * bindings/js/JSXSLTProcessorConstructor.cpp:
884 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
886 2009-07-21 James Hawkins <jhawkins@google.com>
888 Reviewed by David Hyatt.
890 https://bugs.webkit.org/show_bug.cgi?id=27453
891 Initialize isInt when creating a CSSParserValue for a function.
893 No change in behavior, so no tests.
895 * css/CSSFunctionValue.cpp:
896 (WebCore::CSSFunctionValue::parserValue):
898 2009-07-20 Jens Alfke <snej@google.com>
900 Reviewed by David Levin.
902 Bug 27448: [Chromium] On Mac, arrow keys should cause Select to pop up its menu.
903 Mac build of Chromium doesn't follow Mac HI guidelines to pop up the menu when
904 an arrow key is pressed.
905 https://bugs.webkit.org/show_bug.cgi?id=27448
907 No new tests; affects only control response to user input.
909 * dom/SelectElement.cpp:
910 Changed definition of ARROW_KEYS_POP_MENU to make it true in Mac Chromium,
911 so it will behave compatibly with Mac HI guidelines on pop-up menus.
912 It's not possible to have PLATFORM(MAC) be true in the Mac build of Chromium.
914 2009-07-21 Paul Godavari <paul@chromium.org>
916 Reviewed by Eric Seidel.
918 [Chromium] popup menus can crash when the selected index is -1
919 https://bugs.webkit.org/show_bug.cgi?id=27275
921 Crash reports from users indicate a crash can occur when PopupListBox::isSelectableItem
922 is passed an index of less than 0 (which is possible under certain circumstances). This
923 change prevents such a value from causing a crash by enforcing valid index values passed
924 by all callers of isSelectableItem. isSelectableItem is now a private method of
925 PopupListBox, as there are no external callers.
927 Also cleaned up a small amount of code for style and grammar errors.
929 No automatic test is provided since we cannot send events to the child window used by
932 * platform/chromium/PopupMenuChromium.cpp:
933 (WebCore::PopupListBox::acceptIndex):
934 (WebCore::PopupListBox::selectIndex):
935 (WebCore::PopupListBox::isSelectableItem):
936 (WebCore::PopupListBox::selectPreviousRow):
938 2009-07-21 Kevin Ollivier <kevino@theolliviers.com>
940 wx build fix. Don't include winsock2.h on wx, it conflicts with wx's inclusion of winsock.
942 * platform/network/curl/ResourceHandleManager.h:
944 2009-07-21 Adam Roben <aroben@apple.com>
946 Roll out r46153, r46154, and r46155
948 These changes were causing build failures and assertion failures on
951 * ForwardingHeaders/wtf/PossiblyNull.h: Removed.
952 * platform/graphics/cg/ImageBufferCG.cpp:
954 2009-07-21 Jian Li <jianli@chromium.org>
956 Reviewed by Eric Seidel.
958 Implement ErrorEvent API.
959 https://bugs.webkit.org/show_bug.cgi?id=27387
961 * DerivedSources.cpp:
962 * DerivedSources.make:
966 * WebCore.vcproj/WebCore.vcproj:
967 * WebCore.xcodeproj/project.pbxproj:
968 * WebCoreSources.bkl:
969 * bindings/js/JSEventCustom.cpp:
971 * dom/ErrorEvent.cpp: Added.
972 * dom/ErrorEvent.h: Added.
973 * dom/ErrorEvent.idl: Added.
975 (WebCore::Event::isErrorEvent):
978 2009-07-21 Priit Laes <plaes@plaes.org>
980 Reviewed by Gustavo Noronha.
982 [Gtk] Searching in thepiratebay.org doesn't work with more than 1 word
983 https://bugs.webkit.org/show_bug.cgi?id=24602
985 Remove workaround required for <=libsoup-2.26.1
987 * platform/network/soup/ResourceHandleSoup.cpp:
988 (WebCore::restartedCallback):
990 2009-07-21 Adam Barth <abarth@webkit.org>
992 Reviewed by David Levin.
994 V8IsolatedWorld keeps a handle to a disposed context
995 https://bugs.webkit.org/show_bug.cgi?id=27397
997 Make a copy of the context handle before making it weak. We don't want
998 to make the original handle weak because we want it to survive for the
999 length of the V8IsolatedWorld::evaluate method.
1001 * bindings/v8/V8IsolatedWorld.cpp:
1002 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
1004 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
1006 Reviewed by Timothy Hatcher.
1008 Web Inspector: Add ability to evaluate selection while on break point.
1010 https://bugs.webkit.org/show_bug.cgi?id=27502
1012 * inspector/front-end/SourceFrame.js:
1013 (WebInspector.SourceFrame.prototype._loaded):
1014 (WebInspector.SourceFrame.prototype._documentKeyDown):
1016 2009-07-21 Pavel Feldman <pfeldman@chromium.org>
1018 Reviewed by Timothy Hatcher.
1020 WebInspector: Special case ConsolePanel opening since
1021 it is a 'fast view'.
1023 https://bugs.webkit.org/show_bug.cgi?id=27493
1025 * inspector/InspectorController.cpp:
1026 (WebCore::InspectorController::setWindowVisible):
1028 2009-07-20 Kenneth Rohde Christiansen <kenneth@webkit.org>
1030 Reviewed by Eric Seidel.
1032 Fix Qt code to follow the WebKit Coding Style.
1034 * platform/graphics/qt/FontQt.cpp:
1036 (WebCore::fixSpacing):
1037 * platform/graphics/qt/FontQt43.cpp:
1038 (WebCore::generateComponents):
1039 (WebCore::Font::offsetForPositionForComplexText):
1040 (WebCore::cursorToX):
1041 * platform/graphics/qt/GradientQt.cpp:
1042 (WebCore::Gradient::platformGradient):
1043 * platform/graphics/qt/GraphicsContextQt.cpp:
1044 (WebCore::toQtFillRule):
1045 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1046 (WebCore::GraphicsContext::~GraphicsContext):
1047 (WebCore::GraphicsContext::getCTM):
1048 (WebCore::GraphicsContext::concatCTM):
1049 (WebCore::GraphicsContext::getWindowsContext):
1050 * platform/graphics/qt/IconQt.cpp:
1051 (WebCore::Icon::paint):
1052 * platform/graphics/qt/ImageDecoderQt.cpp:
1053 (WebCore::ImageDecoderQt::ReadContext::read):
1054 (WebCore::ImageDecoderQt::ReadContext::readImageLines):
1055 (WebCore::ImageDecoderQt::setData):
1056 * platform/graphics/qt/ImageQt.cpp:
1057 (WebCore::Image::drawPattern):
1058 (WebCore::BitmapImage::draw):
1059 * platform/graphics/qt/ImageSourceQt.cpp:
1060 (WebCore::ImageSource::frameDurationAtIndex):
1061 (WebCore::ImageSource::frameHasAlphaAtIndex):
1062 (WebCore::ImageSource::frameIsCompleteAtIndex):
1063 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1064 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
1065 (WebCore::MediaPlayerPrivate::create):
1066 (WebCore::MediaPlayerPrivate::bytesLoaded):
1067 (WebCore::MediaPlayerPrivate::updateStates):
1068 * platform/graphics/qt/PathQt.cpp:
1069 (WebCore::Path::addArcTo):
1070 (WebCore::Path::isEmpty):
1071 * platform/graphics/qt/TransformationMatrixQt.cpp:
1072 (WebCore::TransformationMatrix::operator QTransform):
1073 * platform/qt/ClipboardQt.cpp:
1074 (WebCore::ClipboardQt::ClipboardQt):
1075 (WebCore::ClipboardQt::clearData):
1076 (WebCore::ClipboardQt::clearAllData):
1077 (WebCore::ClipboardQt::getData):
1078 (WebCore::ClipboardQt::setData):
1079 (WebCore::ClipboardQt::setDragImage):
1080 (WebCore::getCachedImage):
1081 (WebCore::ClipboardQt::declareAndWriteDragImage):
1082 (WebCore::ClipboardQt::writeURL):
1083 (WebCore::ClipboardQt::writeRange):
1084 (WebCore::ClipboardQt::hasData):
1085 * platform/qt/ClipboardQt.h:
1086 * platform/qt/ContextMenuItemQt.cpp:
1087 (WebCore::ContextMenuItem::action):
1088 (WebCore::ContextMenuItem::title):
1089 * platform/qt/CursorQt.cpp:
1090 (WebCore::westPanningCursor):
1091 (WebCore::notAllowedCursor):
1092 * platform/qt/DragDataQt.cpp:
1093 (WebCore::DragData::containsFiles):
1094 (WebCore::DragData::asFilenames):
1095 (WebCore::DragData::asPlainText):
1096 (WebCore::DragData::asFragment):
1097 * platform/qt/DragImageQt.cpp:
1098 (WebCore::createDragImageIconForCachedImage):
1099 * platform/qt/FileSystemQt.cpp:
1100 (WebCore::getFileSize):
1101 (WebCore::unloadModule):
1102 * platform/qt/Localizations.cpp:
1103 (WebCore::contextMenuItemTagShowSpellingPanel):
1104 * platform/qt/MIMETypeRegistryQt.cpp:
1106 * platform/qt/PasteboardQt.cpp:
1107 (WebCore::Pasteboard::Pasteboard):
1108 (WebCore::Pasteboard::writeSelection):
1109 (WebCore::Pasteboard::plainText):
1110 * platform/qt/PlatformKeyboardEventQt.cpp:
1111 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1112 * platform/qt/PlatformMouseEventQt.cpp:
1113 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1114 * platform/qt/PopupMenuQt.cpp:
1115 (WebCore::PopupMenu::populate):
1116 * platform/qt/RenderThemeQt.cpp:
1117 (WebCore::RenderThemeQt::fallbackStyle):
1118 (WebCore::inflateButtonRect):
1119 (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
1120 (WebCore::RenderThemeQt::paintButton):
1121 (WebCore::RenderThemeQt::paintMenuList):
1122 (WebCore::RenderThemeQt::applyTheme):
1123 (WebCore::WorldMatrixTransformer::WorldMatrixTransformer):
1124 (WebCore::RenderThemeQt::paintMediaBackground):
1125 (WebCore::RenderThemeQt::paintMediaFullscreenButton):
1126 * platform/qt/RenderThemeQt.h:
1127 * platform/qt/ScreenQt.cpp:
1128 (WebCore::screenRect):
1129 (WebCore::usableScreenRect):
1130 * platform/qt/ScrollbarQt.cpp:
1131 (WebCore::Scrollbar::contextMenu):
1132 * platform/qt/ScrollbarThemeQt.cpp:
1134 (WebCore::scrollbarPart):
1135 * platform/qt/ScrollbarThemeQt.h:
1136 * platform/qt/SharedBufferQt.cpp:
1137 (WebCore::SharedBuffer::createWithContentsOfFile):
1138 * platform/qt/TemporaryLinkStubs.cpp:
1139 (PluginDatabase::defaultPluginDirectories):
1140 (PluginDatabase::getPluginPathsInDirectories):
1141 (PluginDatabase::isPreferredPluginDirectory):
1142 (WebCore::getSupportedKeySizes):
1143 (WebCore::signedPublicKeyAndChallengeString):
1144 (WebCore::userIdleTime):
1145 (WebCore::prefetchDNS):
1146 * platform/text/qt/StringQt.cpp:
1147 (WebCore::String::String):
1148 * platform/text/qt/TextBoundaries.cpp:
1149 * platform/text/qt/TextBreakIteratorQt.cpp:
1150 (WebCore::TextBreakIterator::following):
1151 (WebCore::TextBreakIterator::preceding):
1152 (WebCore::WordBreakIteratorQt::first):
1153 (WebCore::WordBreakIteratorQt::next):
1154 (WebCore::WordBreakIteratorQt::previous):
1155 (WebCore::CharBreakIteratorQt::first):
1156 (WebCore::CharBreakIteratorQt::next):
1157 (WebCore::CharBreakIteratorQt::previous):
1158 (WebCore::characterBreakIterator):
1159 * plugins/qt/PluginPackageQt.cpp:
1160 (WebCore::PluginPackage::fetchInfo):
1161 * plugins/qt/PluginViewQt.cpp:
1162 (WebCore::PluginView::userAgentStatic):
1163 (WebCore::PluginView::handlePostReadFile):
1164 (WebCore::PluginView::init):
1166 2009-07-21 Maxime Simon <simon.maxime@gmail.com>
1168 Reviewed by David Levin.
1170 Added a first bunch of Haiku-specific files for WebCore.
1171 https://bugs.webkit.org/show_bug.cgi?id=26988
1173 * platform/haiku/ClipboardHaiku.cpp: Added.
1174 (WebCore::ClipboardHaiku::ClipboardHaiku):
1175 (WebCore::ClipboardHaiku::clearData):
1176 (WebCore::ClipboardHaiku::clearAllData):
1177 (WebCore::ClipboardHaiku::getData):
1178 (WebCore::ClipboardHaiku::setData):
1179 (WebCore::ClipboardHaiku::types):
1180 (WebCore::ClipboardHaiku::files):
1181 (WebCore::ClipboardHaiku::dragLocation):
1182 (WebCore::ClipboardHaiku::dragImage):
1183 (WebCore::ClipboardHaiku::setDragImage):
1184 (WebCore::ClipboardHaiku::dragImageElement):
1185 (WebCore::ClipboardHaiku::setDragImageElement):
1186 (WebCore::ClipboardHaiku::createDragImage):
1187 (WebCore::ClipboardHaiku::declareAndWriteDragImage):
1188 (WebCore::ClipboardHaiku::writeURL):
1189 (WebCore::ClipboardHaiku::writeRange):
1190 (WebCore::ClipboardHaiku::hasData):
1191 * platform/haiku/ClipboardHaiku.h: Added.
1192 (WebCore::ClipboardHaiku::create):
1193 (WebCore::ClipboardHaiku::~ClipboardHaiku):
1194 * platform/haiku/CookieJarHaiku.cpp: Added.
1195 (WebCore::setCookies):
1197 (WebCore::cookiesEnabled):
1198 * platform/haiku/CursorHaiku.cpp: Added.
1199 (WebCore::Cursor::Cursor):
1200 (WebCore::Cursor::~Cursor):
1201 (WebCore::Cursor::operator=):
1202 (WebCore::pointerCursor):
1203 (WebCore::moveCursor):
1204 (WebCore::crossCursor):
1205 (WebCore::handCursor):
1206 (WebCore::iBeamCursor):
1207 (WebCore::waitCursor):
1208 (WebCore::helpCursor):
1209 (WebCore::eastResizeCursor):
1210 (WebCore::northResizeCursor):
1211 (WebCore::northEastResizeCursor):
1212 (WebCore::northWestResizeCursor):
1213 (WebCore::southResizeCursor):
1214 (WebCore::southEastResizeCursor):
1215 (WebCore::southWestResizeCursor):
1216 (WebCore::westResizeCursor):
1217 (WebCore::northSouthResizeCursor):
1218 (WebCore::eastWestResizeCursor):
1219 (WebCore::northEastSouthWestResizeCursor):
1220 (WebCore::northWestSouthEastResizeCursor):
1221 (WebCore::columnResizeCursor):
1222 (WebCore::rowResizeCursor):
1223 (WebCore::verticalTextCursor):
1224 (WebCore::cellCursor):
1225 (WebCore::contextMenuCursor):
1226 (WebCore::noDropCursor):
1227 (WebCore::copyCursor):
1228 (WebCore::progressCursor):
1229 (WebCore::aliasCursor):
1230 (WebCore::noneCursor):
1231 (WebCore::notAllowedCursor):
1232 (WebCore::zoomInCursor):
1233 (WebCore::zoomOutCursor):
1234 (WebCore::grabCursor):
1235 (WebCore::grabbingCursor):
1237 2009-07-21 Albert Astals Cid <aacid@kde.org>
1239 Reviewed by Tor Arne Vestbø.
1241 Change #error line not to have a ' (single quote)
1243 * DerivedSources.cpp:
1245 2009-07-21 Roland Steiner <rolandsteiner@google.com>
1247 Reviewed by David Levin.
1249 Add ENABLE_RUBY to list of build options
1250 https://bugs.webkit.org/show_bug.cgi?id=27324
1252 Added flag ENABLE_RUBY:
1254 * Configurations/FeatureDefines.xcconfig:
1255 * DerivedSources.make:
1258 * WebCore.vcproj/WebCoreCommon.vsprops:
1259 * WebCore.vcproj/build-generated-files.sh:
1261 2009-07-21 James Hawkins <jhawkins@google.com>
1263 Reviewed by Eric Seidel.
1265 https://bugs.webkit.org/show_bug.cgi?id=27467
1266 Return an empty path in PlatformContextSkia::currentPathInLocalCoordinates
1267 if matrix.invert() fails. This prevents the use of an uninitialized
1268 value in inverseMatrix.
1270 No new tests added. Run
1271 LayoutTests/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
1272 under valgrind and notice there are no errors.
1274 * platform/graphics/skia/PlatformContextSkia.cpp:
1275 (PlatformContextSkia::currentPathInLocalCoordinates):
1277 2009-07-21 Stephen White <senorblanco@chromium.org>
1279 Reviewed by Eric Seidel.
1281 https://bugs.webkit.org/show_bug.cgi?id=27388
1283 Fix dotted and dashed borders on Chromium/skia. This follows
1284 the logic in the Cg path, so results are much closer to Safari now
1285 (some tests won't be exactly the same due to font layout differences).
1287 * platform/graphics/skia/GraphicsContextSkia.cpp:
1288 (WebCore::GraphicsContext::drawLine):
1289 * platform/graphics/skia/PlatformContextSkia.cpp:
1290 (PlatformContextSkia::setupPaintForStroking):
1292 2009-07-20 Oliver Hunt <oliver@apple.com>
1294 Reviewed by Gavin Barraclough.
1296 Make it harder to misuse try* allocation routines
1297 https://bugs.webkit.org/show_bug.cgi?id=27469
1299 Add forwarding header for PossiblyNull type, and add missing null check
1300 to ImageBuffer creation.
1302 * ForwardingHeaders/wtf/PossiblyNull.h: Added.
1303 * platform/graphics/cg/ImageBufferCG.cpp:
1304 (WebCore::ImageBuffer::ImageBuffer):
1306 2009-07-20 Adam Langley <agl@google.com>
1308 Reviewed by Eric Seidel.
1310 Guard access to installedMediaEngines()[0].
1312 https://bugs.webkit.org/show_bug.cgi?id=27479
1313 http://code.google.com/p/chromium/issues/detail?id=16541
1315 Else where in the file, installedMediaEngines is always checked for
1316 being empty because access. This patch adds a case which missed that
1319 This triggered a crash in Chromium:
1320 http://www.yakeze.com/chat/example-chromium-crash/
1322 * platform/graphics/MediaPlayer.cpp:
1323 (WebCore::MediaPlayer::load):
1325 2009-07-20 Adam Langley <agl@google.com>
1327 Reviewed by Eric Seidel.
1329 Allow search entries to render with a CSS border if the RenderTheme
1332 https://bugs.webkit.org/show_bug.cgi?id=27466
1333 http://code.google.com/p/chromium/issues/detail?id=16958
1335 <input type="search"> is very much like a text entry except that,
1336 currently, if the RenderTheme doesn't deal with it, nothing is
1337 rendered. With this patch, the default CSS border is rendered if the
1338 RenderTheme requests it.
1340 This will affect many layout tests, but only for Chromium Linux and
1341 those results are not currently in the WebKit tree.
1343 * rendering/RenderTheme.cpp:
1344 (WebCore::RenderTheme::paintBorderOnly):
1346 2009-07-17 Anton Muhin <antonm@chromium.org>
1348 Reviewed by Adam Barth.
1350 Switch to faster methods to access internal fields.
1351 https://bugs.webkit.org/show_bug.cgi?id=27372
1355 * bindings/scripts/CodeGeneratorV8.pm:
1356 * bindings/v8/V8DOMWrapper.cpp:
1357 (WebCore::V8DOMWrapper::convertToSVGPODTypeImpl):
1358 (WebCore::V8DOMWrapper::setDOMWrapper):
1359 * bindings/v8/V8DOMWrapper.h:
1360 (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
1361 (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
1362 (WebCore::V8DOMWrapper::convertToNativeObject):
1363 (WebCore::V8DOMWrapper::convertToNativeEvent):
1364 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1365 (WebCore::CALLBACK_FUNC_DECL):
1366 * bindings/v8/custom/V8ClipboardCustom.cpp:
1367 (WebCore::CALLBACK_FUNC_DECL):
1368 * bindings/v8/custom/V8DocumentCustom.cpp:
1369 (WebCore::CALLBACK_FUNC_DECL):
1370 * bindings/v8/custom/V8ElementCustom.cpp:
1371 (WebCore::CALLBACK_FUNC_DECL):
1372 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1373 (WebCore::CALLBACK_FUNC_DECL):
1374 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1375 (WebCore::CALLBACK_FUNC_DECL):
1376 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1377 (WebCore::removeElement):
1378 * bindings/v8/custom/V8InspectorControllerCustom.cpp:
1379 (WebCore::CALLBACK_FUNC_DECL):
1380 * bindings/v8/custom/V8NodeCustom.cpp:
1381 (WebCore::CALLBACK_FUNC_DECL):
1382 * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
1383 (WebCore::CALLBACK_FUNC_DECL):
1385 2009-07-20 Adam Langley <agl@google.com>
1387 Reviewed by Eric Seidel.
1389 Chromium Linux: cache Harfbuzz faces.
1391 https://bugs.webkit.org/show_bug.cgi?id=27473
1393 Previously, we recreated the Harfbuzz face for each script-run. With
1394 this patch, we keep the Harfbuzz face in the FontPlatformData (created
1395 as needed) and so they will persist for the duration of the
1398 Shouldn't affect any layout tests. Results in a significant win on the
1399 intl2 page cycler time.
1401 * platform/graphics/chromium/FontLinux.cpp:
1402 (WebCore::TextRunWalker::~TextRunWalker):
1403 (WebCore::TextRunWalker::setupFontForScriptRun):
1404 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1405 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::~RefCountedHarfbuzzFace):
1406 (WebCore::FontPlatformData::FontPlatformData):
1407 (WebCore::FontPlatformData::harfbuzzFace):
1408 * platform/graphics/chromium/FontPlatformDataLinux.h:
1409 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::create):
1410 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::face):
1411 (WebCore::FontPlatformData::RefCountedHarfbuzzFace::RefCountedHarfbuzzFace):
1412 * platform/graphics/chromium/HarfbuzzSkia.h: Added.
1414 2009-07-20 Ryosuke Niwa <rniwa@webkit.org>
1416 Reviewed by Simon Fraser.
1418 REGRESSION (r46142): Need to remove showTreeThisForThis
1419 https://bugs.webkit.org/show_bug.cgi?id=27475
1421 Removes showTreeThisForThis
1423 * editing/IndentOutdentCommand.cpp:
1424 (WebCore::IndentOutdentCommand::appendParagraphIntoNode):
1426 2009-07-19 Ryosuke Niwa <rniwa@webkit.org>
1428 Reviewed by Eric Seidel.
1430 Refactoring of indentRegion to fix bugs 26816 and 25317
1431 https://bugs.webkit.org/show_bug.cgi?id=26816
1432 https://bugs.webkit.org/show_bug.cgi?id=25317
1433 https://bugs.webkit.org/show_bug.cgi?id=23995 (partially)
1435 This patch implements appendParagraphIntoNode, a simpler specialized version of moveParagraph
1436 and replaces all calls inside indentRegion. The following is the new behavior of indentRegion.
1438 1. We try to indent as many wrapping nodes as possible.
1439 e.g. when indenting "hello" in <div>hello</div>, we try to indent div as well.
1440 2. We do not delete any wrapping elements
1441 With moveParagraph, we used to remove all wrapping nodes, and replaced with a blockquote.
1442 This was causing https://bugs.webkit.org/show_bug.cgi?id=23995 for indentation.
1443 With appendParagraphIntoNode, we can preserve all wrapping nodes.
1444 3. We only split the tree until the closest block node instead of until the root editable node.
1445 This behavioral change fixes the bug 25317.
1446 4. When multiple paragraphs are indented, we indent the highest common ancestor within the selection.
1447 e.g. when a list is a child node of a div, and the entire div is intended,
1448 we enclose the div by a single blockquote.
1450 Note that new behavior is more consistent with that of Internet Explorer and Firefox.
1451 To demonstrate this, the following tests are added.
1453 Tests: editing/execCommand/indent-div-inside-list.html
1454 editing/execCommand/indent-nested-blockquotes.html
1455 editing/execCommand/indent-nested-div.html
1456 editing/execCommand/indent-second-paragraph-in-blockquote.html
1458 * editing/IndentOutdentCommand.cpp: prepareBlockquoteLevelForInsertion is removed
1459 (WebCore::IndentOutdentCommand::tryIndentingAsListItem): uses appendParagraphIntoNode now
1460 (WebCore::IndentOutdentCommand::indentIntoBlockquote): uses appendParagraphIntoNode now
1461 (WebCore::IndentOutdentCommand::appendParagraphIntoNode): removes a paragraph and appends it to a new node
1462 (WebCore::IndentOutdentCommand::removeUnnecessaryLineBreakAt): removes a break element at the specified position
1463 (WebCore::IndentOutdentCommand::indentRegion): exhibits the described behavior
1464 * editing/IndentOutdentCommand.h: updated prototype
1466 2009-07-20 Dan Bernstein <mitz@apple.com>
1468 Try to fix release builds after r46136
1472 2009-07-17 Pierre d'Herbemont <pdherbemont@apple.com>
1474 Reviewed by Eric Seidel.
1476 Media Controls: We are specifying the text height, where it is unneeded and the slider is 2px off.
1477 https://bugs.webkit.org/show_bug.cgi?id=27380
1479 Adjust the margin of the slider and remove useless height specification to fix alignement of the media controls.
1481 * css/mediaControlsQT.css:
1483 2009-07-20 Peter Kasting <pkasting@google.com>
1485 Reviewed by Mark Rowe.
1487 https://bugs.webkit.org/show_bug.cgi?id=27468
1488 Back out r46060, which caused problems for some Apple developers.
1490 * WebCore.vcproj/QTMovieWin.vcproj:
1491 * WebCore.vcproj/WebCoreCommon.vsprops:
1492 * WebCore.vcproj/WebCoreGenerated.vcproj:
1494 2009-07-20 Dan Bernstein <mitz@apple.com>
1496 Reviewed by Anders Carlsson.
1498 When loading a custom view into a frame, the old document is still
1500 <rdar://problem/5145841>
1502 Safari fires onload before PDF is loaded into the browser
1503 <rdar://problem/6618869>
1505 Test: fast/loader/non-html-load-event.html
1507 * GNUmakefile.am: Added PlaceholderDocument.{cpp,h}
1508 * WebCore.gypi: Ditto.
1509 * WebCore.pro: Ditto.
1510 * WebCore.vcproj/WebCore.vcproj: Ditto.
1511 * WebCore.xcodeproj/project.pbxproj: Ditto.
1512 * WebCoreSources.bkl: Ditto.
1514 (WebCore::Document::setStyleSelector): Added this protected accessor for
1515 PlaceholderDocument to use.
1517 (WebCore::Element::clientWidth): Check whether the document has a
1519 (WebCore::Element::clientHeight): Ditto.
1520 * loader/FrameLoader.cpp:
1521 (WebCore::FrameLoader::begin): Create a PlaceholderDocument for frames
1522 that do not use an HTML view. Do not nullify the content size in
1524 (WebCore::FrameLoader::transitionToCommitted): For frames that do not
1525 use an HTML view, call receivedFirstData(), which sets up the
1526 frame with a new PlaceHolderDocument.
1527 * loader/PlaceholderDocument.cpp: Added.
1528 (WebCore::PlaceholderDocument::attach): Sets up the style selector but
1529 does not create a RenderView.
1530 * loader/PlaceholderDocument.h: Added.
1531 (WebCore::PlaceholderDocument::create):
1532 (WebCore::PlaceholderDocument::PlaceholderDocument):
1534 2009-07-20 Chris Marrin <cmarrin@apple.com>
1536 Reviewed by Simon Fraser.
1538 Handle opacity and opacity animations on transform layers in Leopard
1539 https://bugs.webkit.org/show_bug.cgi?id=27398
1541 This makes two changes, and only for Leopard.
1543 First, whenever opacity is changed on a layer I propagate the
1544 change into the content layer and all the children if the layer
1545 on which opacity is set is a transform layer (preserve3D is true).
1546 The opacity set is the accumulated opacity from this layer
1547 and all its direct ancestor transform layers. Second, I turn off all
1548 hardware opacity animation.
1550 * platform/graphics/GraphicsLayer.cpp:
1551 (WebCore::GraphicsLayer::accumulatedOpacity):
1552 (WebCore::GraphicsLayer::distributeOpacity):
1553 * platform/graphics/GraphicsLayer.h:
1554 (WebCore::GraphicsLayer::setOpacityInternal):
1555 * platform/graphics/mac/GraphicsLayerCA.h:
1556 * platform/graphics/mac/GraphicsLayerCA.mm:
1557 (WebCore::GraphicsLayerCA::setPreserves3D):
1558 (WebCore::GraphicsLayerCA::setOpacity):
1559 (WebCore::GraphicsLayerCA::animateFloat):
1560 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
1561 (WebCore::GraphicsLayerCA::setOpacityInternal):
1562 (WebCore::GraphicsLayerCA::updateOpacityOnLayer):
1564 2009-07-20 Yong Li <yong.li@torchmobile.com>
1566 Reviewed by Adam Roben.
1568 https://bugs.webkit.org/show_bug.cgi?id=27349
1569 Add GraphicsContext implementation for the WinCE port.
1571 Written by Yong Li <yong.li@torchmobile.com>, George Staikos <george.staikos@torchmobile.com> and Lyon Chen <lyon.chen@torchmobile.com>
1572 with trivial style fixes by Adam Treat <adam.treat@torchmobile.com>
1574 * platform/graphics/wince/GraphicsContextWince.cpp: Added.
1576 2009-07-20 Dumitru Daniliuc <dumi@chromium.org>
1578 Reviewed by Dimitri Glazkov.
1580 Adding the Win SQLite VFS implementation for Chromium, and stubs
1581 for the Mac and Linux VFSs.
1583 https://bugs.webkit.org/show_bug.cgi?id=26940
1586 * platform/chromium/ChromiumBridge.h:
1587 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
1588 * platform/sql/chromium/SQLiteFileSystemChromiumLinux.cpp: Added.
1589 * platform/sql/chromium/SQLiteFileSystemChromiumMac.cpp: Added.
1590 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
1592 2009-07-20 Xan Lopez <xlopez@igalia.com>
1594 Reviewed by Gustavo Noronha.
1596 https://bugs.webkit.org/show_bug.cgi?id=27097
1597 [Gtk] Segfault when examining an object of ROLE_TABLE via at-spi
1599 Check that an object is a RenderObject before trying to access its
1600 renderer and related node.
1602 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1603 (webkit_accessible_get_role):
1605 2009-07-20 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu>
1607 Reviewed by Simon Hausmann.
1609 [Qt] font cache reworking
1610 https://bugs.webkit.org/show_bug.cgi?id=27265
1612 Reimplemented Qt's FontCache in a way that follows the shared one.
1613 Now we can release its elements when those became inactive.
1614 FontFallbackList had been changed to be able to hold WebCore fonts in its list and to be able to release a FontData what is in the cache.
1616 No change in behavior, so no tests.
1618 * platform/graphics/qt/FontCacheQt.cpp:
1619 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1620 (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
1621 (WebCore::FontPlatformDataCacheKey::): Key type for the cache of FontPlatformData objects.
1622 It can be constructed from a FontPlatformData or from a FontDescription. The keys have to be consistent
1623 with FontPlatformData::FontPlatformData(const FontDescription&) - if we create the same
1624 FontPlatformData from two FontDescription then we have to create the same key from them, and vica versa.
1625 (WebCore::FontPlatformDataCacheKey::operator==):
1626 (WebCore::FontPlatformDataCacheKey::hash):
1627 (WebCore::FontPlatformDataCacheKey::computeHash):
1628 (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
1629 (WebCore::FontPlatformDataCacheKeyHash::hash):
1630 (WebCore::FontPlatformDataCacheKeyHash::equal):
1631 (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
1632 (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
1633 (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
1634 (WebCore::FontCache::getCachedFontPlatformData): Get a FontDescription and returns a FontPlatformData.
1635 (WebCore::FontCache::getCachedFontData): Get a FontPlatformData and returns a SimpleFontData.
1636 (WebCore::FontCache::releaseFontData): Get a SimpleFontData and releases it from the cache. Also releases the appropriate FontPlatformData.
1637 (WebCore::FontCache::purgeInactiveFontData): Frees inactive elements.
1638 (WebCore::FontCache::invalidate): Frees all inactive elements (call purgeInactiveFontData with default argument)
1639 * platform/graphics/qt/FontFallbackListQt.cpp:
1640 (WebCore::FontFallbackList::releaseFontData):
1641 (WebCore::FontFallbackList::fontDataAt):
1642 * platform/graphics/qt/FontPlatformData.h:
1643 (WebCore::FontPlatformData::family): Getter. It is needed for FontPlatformDataCacheKey.
1644 (WebCore::FontPlatformData::bold): Ditto.
1645 (WebCore::FontPlatformData::italic): Ditto.
1646 (WebCore::FontPlatformData::smallCaps): Ditto.
1647 (WebCore::FontPlatformData::pixelSize): Ditto.
1648 * platform/graphics/qt/FontPlatformDataQt.cpp:
1649 (WebCore::FontPlatformData::FontPlatformData): Set m_bold.
1651 2009-07-20 Xan Lopez <xlopez@igalia.com>
1653 Reviewed by Holger Freyther.
1655 https://bugs.webkit.org/show_bug.cgi?id=26716
1656 [Gtk] Each XMLHttpRequest leaks memory.
1658 Free the SoupURI we create to check the URI. Fix suggested by John
1661 * platform/network/soup/ResourceHandleSoup.cpp:
1664 2009-07-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1666 Reviewed by Holger Freyther.
1668 [Qt] On Symbian link against system sqlite3
1669 https://bugs.webkit.org/show_bug.cgi?id=27368
1671 Add an option to force linking against system sqlite3
1672 by adding system-sqlite to the CONFIG variable.
1674 The Symbian specific part of this patch is contributed by
1679 2009-07-20 Xan Lopez <xlopez@igalia.com>
1681 Reviewed by Gustavo Noronha.
1683 Change the glib version check to check for the first unstable
1684 release with g_mapped_file_unref. Otherwise this would be useless
1685 until 2.22 is released, a few months from now.
1687 * platform/network/soup/ResourceHandleSoup.cpp:
1688 (WebCore::ResourceHandle::startHttp):
1690 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
1692 Reviewed by and done with Tor Arne Vestbø.
1694 Fix fast/css/pseudo-required-optional-*.html in the Qt build
1697 These tests triggered a bug in RenderThemeQt where we did not fall back
1698 to the unstyled painting of text areas and input fields when they have
1699 a styled background.
1701 Our re-implementation of isControlStyled incorrectly only checked the
1702 border for determining whether to style or not. The base-implementation
1703 performs the same check, but also includes the background. Removing
1704 our implementation fixes the appearance.
1706 * platform/qt/RenderThemeQt.cpp: Removed isControlStyled reimplementation.
1707 * platform/qt/RenderThemeQt.h: Ditto.
1709 2009-07-20 Simon Hausmann <simon.hausmann@nokia.com>
1711 Rubber-stamped by Tor Arne Vestbø.
1713 Add missing (sorted) header files to the HEADERS variable in the qmake
1714 .pro file for improved completion in IDEs.
1718 2009-07-19 Adam Barth <abarth@webkit.org>
1720 Reviewed by David Levin.
1722 [V8] Factor V8ConsoleMessage out of V8Proxy
1723 https://bugs.webkit.org/show_bug.cgi?id=27421
1728 * bindings/v8/V8ConsoleMessage.cpp: Added.
1729 (WebCore::V8ConsoleMessage::V8ConsoleMessage):
1730 (WebCore::V8ConsoleMessage::dispatchNow):
1731 (WebCore::V8ConsoleMessage::dispatchLater):
1732 (WebCore::V8ConsoleMessage::processDelayed):
1733 (WebCore::V8ConsoleMessage::handler):
1734 * bindings/v8/V8ConsoleMessage.h: Added.
1735 (WebCore::V8ConsoleMessage::Scope::Scope):
1736 (WebCore::V8ConsoleMessage::Scope::~Scope):
1737 * bindings/v8/V8Proxy.cpp:
1739 (WebCore::reportUnsafeAccessTo):
1740 (WebCore::V8Proxy::runScript):
1741 (WebCore::V8Proxy::callFunction):
1742 (WebCore::V8Proxy::newInstance):
1743 (WebCore::V8Proxy::initContextIfNeeded):
1744 (WebCore::V8Proxy::processConsoleMessages):
1746 2009-07-19 Rob Buis <rwlbuis@gmail.com>
1748 Reviewed by Adam Barth.
1750 Remove unused member variable.
1752 * svg/SVGPolyElement.h:
1754 2009-07-19 Eric Carlson <eric.carlson@apple.com>
1756 Reviewed by Dan Bernstein.
1758 HTMLAudioElement: constructor should set "autobuffer" attribute
1759 https://bugs.webkit.org/show_bug.cgi?id=27422
1761 Test: media/audio-constructor-autobuffer.html
1763 * bindings/js/JSAudioConstructor.cpp:
1764 (WebCore::constructAudio):
1765 Set 'autobuffer' attribute.
1767 2009-07-19 Thierry Bastian <thierry.bastian@nokia.com>
1769 Reviewed by Simon Hausmann.
1771 Fix the Qt build with mingw.
1773 * WebCore.pro: Don't use MSVC commandline options to disable warnings
1776 2009-07-19 Adam Barth <abarth@webkit.org>
1778 Reviewed by David Levin.
1780 [V8] Phase 2: Remove event listener methods from V8Proxy
1781 https://bugs.webkit.org/show_bug.cgi?id=27415
1785 * bindings/v8/V8ObjectEventListener.cpp:
1786 (WebCore::weakObjectEventListenerCallback):
1787 (WebCore::V8ObjectEventListener::~V8ObjectEventListener):
1788 * bindings/v8/V8Proxy.cpp:
1789 (WebCore::V8Proxy::disconnectEventListeners):
1790 * bindings/v8/V8Proxy.h:
1791 (WebCore::V8Proxy::eventListeners):
1792 (WebCore::V8Proxy::objectListeners):
1793 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
1794 (WebCore::getEventListener):
1795 * bindings/v8/custom/V8CustomEventListener.cpp:
1796 (WebCore::V8EventListener::~V8EventListener):
1797 * bindings/v8/custom/V8DOMWindowCustom.cpp:
1798 (WebCore::CALLBACK_FUNC_DECL):
1799 (WebCore::ACCESSOR_SETTER):
1800 * bindings/v8/custom/V8ElementCustom.cpp:
1801 (WebCore::ACCESSOR_SETTER):
1802 * bindings/v8/custom/V8MessagePortCustom.cpp:
1803 (WebCore::ACCESSOR_SETTER):
1804 (WebCore::CALLBACK_FUNC_DECL):
1805 * bindings/v8/custom/V8NodeCustom.cpp:
1806 (WebCore::CALLBACK_FUNC_DECL):
1807 * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
1808 (WebCore::CALLBACK_FUNC_DECL):
1809 * bindings/v8/custom/V8WorkerCustom.cpp:
1810 (WebCore::getEventListener):
1811 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1812 (WebCore::getEventListener):
1813 * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
1814 (WebCore::ACCESSOR_SETTER):
1815 (WebCore::CALLBACK_FUNC_DECL):
1817 2009-07-18 Jan Michael Alonzo <jmalonzo@webkit.org>
1819 Reviewed by Gustavo Noronha.
1821 [Gtk] soup/ResourceHandleSoup.cpp:533: error: 'g_mapped_file_free' was not declared in this scope
1822 https://bugs.webkit.org/show_bug.cgi?id=27230
1824 Use g_mapped_file_unref for GLIB version 2.22 onwards.
1826 * platform/network/soup/ResourceHandleSoup.cpp:
1827 (WebCore::ResourceHandle::startHttp):
1829 2009-07-18 Dan Bernstein <mitz@apple.com>
1831 Reviewed by Anders Carlsson.
1833 Add spread radius support to -webkit-box-shadow
1834 https://bugs.webkit.org/show_bug.cgi?id=27417
1835 rdar://problem/7072267
1837 Test: fast/box-shadow/spread.html
1839 * css/CSSComputedStyleDeclaration.cpp:
1840 (WebCore::valueForShadow): Added a property ID parameter and used it to
1841 include the spread length for box-shadow but not for text-shadow.
1842 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1843 Pass the property ID to valueForShadow().
1845 * css/CSSParser.cpp:
1846 (WebCore::ShadowParseContext::ShadowParseContext): Added property,
1847 spread, and allowSpread members. Added a property ID parameter to
1848 the constructor. Initialize the property and allowSpread members.
1849 (WebCore::ShadowParseContext::allowLength): Added allowSpread.
1850 (WebCore::ShadowParseContext::commitValue): Pass the spread value to
1851 the ShadowValue constructor. Reset allowSpread.
1852 (WebCore::ShadowParseContext::commitLength): Allow spread after blur
1853 for the box-shadow property.
1854 (WebCore::ShadowParseContext::commitColor): Reset allowSpread.
1855 (WebCore::CSSParser::parseShadow): Pass the property ID to
1856 ShadowParseContext().
1858 * css/CSSStyleSelector.cpp:
1859 (WebCore::CSSStyleSelector::applyProperty): Get the spread value from
1860 the shadow value and pass it to the ShadowData constructor.
1862 * css/ShadowValue.cpp:
1863 (WebCore::ShadowValue::ShadowValue): Added spread.
1864 (WebCore::ShadowValue::cssText): Added spread.
1866 * css/ShadowValue.h:
1867 (WebCore::ShadowValue::create): Added spread.
1869 * page/animation/AnimationBase.cpp:
1870 (WebCore::blendFunc): Blend the spread value.
1871 (WebCore::PropertyWrapperShadow::blend): Added 0 spread to the default
1874 * rendering/InlineFlowBox.cpp:
1875 (WebCore::InlineFlowBox::placeBoxesHorizontally): Account for spread in
1876 the visual overflow calculations.
1877 (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
1878 (WebCore::InlineFlowBox::paint): Ditto.
1880 * rendering/RenderBlock.cpp:
1881 (WebCore::RenderBlock::overflowHeight): Ditto.
1882 (WebCore::RenderBlock::overflowWidth): Ditto.
1883 (WebCore::RenderBlock::overflowLeft): Ditto.
1884 (WebCore::RenderBlock::overflowTop): Ditto.
1885 (WebCore::RenderBlock::overflowRect): Ditto.
1886 (WebCore::RenderBlock::layoutBlock): Ditto.
1888 * rendering/RenderBoxModelObject.cpp:
1889 (WebCore::RenderBoxModelObject::paintBoxShadow): Inflate the shadow-
1890 casting rect by the shadow spread value. Adjust border radii if
1893 * rendering/RenderFlexibleBox.cpp:
1894 (WebCore::RenderFlexibleBox::layoutBlock): Account for spread in the
1895 visual overflow calculations.
1896 * rendering/RenderLayer.cpp:
1897 (WebCore::RenderLayer::calculateRects): Ditto.
1899 * rendering/RenderObject.cpp:
1900 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Account for spread.
1901 (WebCore::RenderObject::adjustRectForOutlineAndShadow): Ditto.
1903 * rendering/RenderReplaced.cpp:
1904 (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect): Ditto.
1906 * rendering/style/RenderStyle.cpp:
1907 (WebCore::RenderStyle::setTextShadow): Assert that text shadows do not
1910 * rendering/style/ShadowData.cpp:
1911 (WebCore::ShadowData::ShadowData): Added spread.
1912 (WebCore::ShadowData::operator==): Compare spread.
1913 * rendering/style/ShadowData.h:
1914 (WebCore::ShadowData::ShadowData): Added spread.
1916 2009-07-18 Adam Barth <abarth@webkit.org>
1918 Reviewed by Jan Alonzo.
1920 Minor FrameLoader.cpp cleanup
1921 https://bugs.webkit.org/show_bug.cgi?id=27406
1925 * loader/FrameLoader.cpp:
1926 (WebCore::FrameLoader::executeIfJavaScriptURL):
1928 2009-07-18 Adam Barth <abarth@webkit.org>
1930 Reviewed by Darin Fisher.
1932 [V8] Move event listener methods from V8Proxy to V8EventListenerList
1933 https://bugs.webkit.org/show_bug.cgi?id=27408
1935 Move some event listener code out of V8Proxy and into the event
1938 I'd like to remove these methods from V8Proxy entirely and just expose
1939 getters for the lists themselves, but I'll do that in a follow up
1942 * bindings/v8/V8EventListenerList.cpp:
1943 (WebCore::V8EventListenerList::findWrapper):
1944 * bindings/v8/V8EventListenerList.h:
1945 (WebCore::V8EventListenerList::findOrCreateWrapper):
1946 * bindings/v8/V8ObjectEventListener.cpp:
1947 * bindings/v8/V8Proxy.cpp:
1948 (WebCore::V8Proxy::findV8EventListener):
1949 (WebCore::V8Proxy::findOrCreateV8EventListener):
1950 (WebCore::V8Proxy::removeV8EventListener):
1951 (WebCore::V8Proxy::findObjectEventListener):
1952 (WebCore::V8Proxy::findOrCreateObjectEventListener):
1953 (WebCore::V8Proxy::removeObjectEventListener):
1954 * bindings/v8/V8Proxy.h:
1956 2009-07-18 Jeremy Orlow <jorlow@chromium.org>
1958 Rubber stamped by Adam Barth.
1960 Revert https://bugs.webkit.org/show_bug.cgi?id=27383
1961 https://bugs.webkit.org/show_bug.cgi?id=27407
1963 Revert Jens' patch. I believe he forgot to include a file.
1966 * bindings/scripts/CodeGeneratorV8.pm:
1967 * bindings/v8/DOMObjectsInclude.h:
1968 * bindings/v8/V8DOMWrapper.cpp:
1969 (WebCore::V8DOMWrapper::getTemplate):
1970 * bindings/v8/V8DataGridDataSource.cpp: Removed.
1971 * bindings/v8/V8DataGridDataSource.h: Removed.
1972 * bindings/v8/V8GCController.h:
1973 * bindings/v8/V8Index.h:
1974 * bindings/v8/custom/V8CustomBinding.h:
1975 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp:
1976 (WebCore::ACCESSOR_GETTER):
1977 (WebCore::ACCESSOR_SETTER):
1979 2009-07-17 Daniel Bates <dbates@intudata.com>
1981 Reviewed by Adam Barth.
1983 https://bugs.webkit.org/show_bug.cgi?id=27405
1985 Fixes an issue when decoding HTML entities with an unknown named entity that
1986 caused null-characters to be inserted into the decoded result.
1988 Test: http/tests/security/xssAuditor/link-onclick-ampersand.html
1989 http/tests/security/xssAuditor/javascript-link-ampersand.html
1991 * page/XSSAuditor.cpp:
1992 (WebCore::XSSAuditor::decodeHTMLEntities): Added check to conditional so that
1993 non-zero entity values are not inserted during decoding process.
1995 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
1997 <http://webkit.org/b/18363> [GTK] Combo boxes cannot be opened pressing space
1999 Reviewed by Holger Freyther.
2001 Add Gtk to platforms that want to open the menulist using the
2004 * dom/SelectElement.cpp:
2005 (WebCore::SelectElement::menuListDefaultEventHandler):
2007 2009-07-17 Mario Sanchez Prada <msanchez@igalia.com>
2009 Reviewed by Jan Alonzo.
2011 https://bugs.webkit.org/show_bug.cgi?id=25523
2012 [GTK] The text displayed by push buttons is not exposed to assistive technologies
2014 Add new public method text() to RenderButton and use it from
2015 AccessibilityRenderObject::stringValue().
2017 * accessibility/AccessibilityRenderObject.cpp:
2018 (WebCore::AccessibilityRenderObject::stringValue):
2019 * rendering/RenderButton.cpp:
2020 (WebCore::RenderButton::text):
2021 * rendering/RenderButton.h:
2023 2009-07-17 Anton Muhin <antonm@chromium.org>
2025 Reviewed by Dimitri Glazkov.
2027 Restore proxy retrieval
2028 https://bugs.webkit.org/show_bug.cgi?id=27369
2030 No new tests are needed.
2032 * bindings/v8/V8DOMWrapper.cpp:
2033 (WebCore::V8DOMWrapper::instantiateV8Object):
2035 2009-07-17 Yael Aharon <yael.aharon@nokia.com>
2037 Reviewed by George Staikos.
2039 https://bugs.webkit.org/show_bug.cgi?id=27351
2040 Added platform "Symbian" to WEBCORE_NAVIGATOR_PLATFORM
2041 Use uname to find the correct platform for Linux.
2043 * page/NavigatorBase.cpp:
2044 (WebCore::NavigatorBase::platform):
2046 2009-07-17 Jens Alfke <snej@chromium.org>
2048 Reviewed by Dimitri Glazkov.
2050 Hook up V8 bindings for DataGrid elements.
2051 https://bugs.webkit.org/show_bug.cgi?id=27383
2052 http://code.google.com/p/chromium/issues/detail?id=16730
2054 Tests: Enhanced LayoutTests/fast/dom/HTMLDataGridElement/*
2055 to handle exceptions, check appropriate JS prototypes, and
2056 test column-list's item() method as well as array-indexing.
2058 * WebCore.gypi: Added new source files.
2059 * bindings/scripts/CodeGeneratorV8.pm: Made GenerateBatchedAttributeData put #if's around conditional attributes.
2060 * bindings/v8/DOMObjectsInclude.h: #include DataGrid headers.
2061 * bindings/v8/V8DOMWrapper.cpp: Add bindings from HTML tags to datagrid templates.
2062 (WebCore::V8DOMWrapper::getTemplate): Customize datagrid template.
2063 * bindings/v8/V8DataGridDataSource.cpp: Added. (Based on JSDataGridDataSource)
2064 (WebCore::V8DataGridDataSource::V8DataGridDataSource):
2065 (WebCore::V8DataGridDataSource::~V8DataGridDataSource):
2066 * bindings/v8/V8DataGridDataSource.h: Added. (Based on JSDataGridDataSource)
2067 (WebCore::V8DataGridDataSource::create):
2068 (WebCore::V8DataGridDataSource::isJSDataGridDataSource):
2069 (WebCore::V8DataGridDataSource::jsDataSource):
2070 (WebCore::asV8DataGridDataSource):
2071 * bindings/v8/V8GCController.h: Added new handle type "DATASOURCE".
2072 * bindings/v8/V8Index.h: Conditionalize datagrid stuff.
2073 * bindings/v8/custom/V8CustomBinding.h: Declare more accessors. Conditionalize.
2074 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Fill in dataSource accessors.
2075 (WebCore::ACCESSOR_GETTER):
2076 (WebCore::ACCESSOR_SETTER):
2078 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
2080 Reviewed by Darin Fisher.
2082 StorageArea should only contain methods we intend to proxy.
2083 https://bugs.webkit.org/show_bug.cgi?id=27181
2085 Right now, StorageAreaSync takes in a StorageArea* and calls methods
2086 like importItem. Really, StorageAreaSync should be operating directly
2087 on StorageAreaImpl* and those methods should be removed from StorageArea
2088 since StorageAreaSync should never be attached to anything other than a
2091 This was pointed out in the review for
2092 https://bugs.webkit.org/show_bug.cgi?id=27072
2094 Also clean up StorageNamespaceImpl to operate directly on
2095 StorageAreaImpl. Also, get rid of the factory for StorageArea
2096 since nothing should ever create a StorageArea directly.
2099 * WebCore.vcproj/WebCore.vcproj:
2100 * WebCore.xcodeproj/project.pbxproj:
2101 * WebCoreSources.bkl:
2102 * storage/StorageArea.cpp: Removed.
2103 * storage/StorageArea.h:
2104 (WebCore::StorageArea::~StorageArea):
2105 * storage/StorageAreaImpl.cpp:
2106 (WebCore::StorageAreaImpl::copy):
2107 * storage/StorageAreaImpl.h:
2108 * storage/StorageAreaSync.cpp:
2109 (WebCore::StorageAreaSync::create):
2110 (WebCore::StorageAreaSync::StorageAreaSync):
2111 * storage/StorageAreaSync.h:
2112 * storage/StorageNamespaceImpl.cpp:
2113 (WebCore::StorageNamespaceImpl::copy):
2114 (WebCore::StorageNamespaceImpl::storageArea):
2115 * storage/StorageNamespaceImpl.h:
2117 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
2119 Reviewed by Dimitri Glazkov.
2121 Add v8 implementation for DOM Storage ScriptObjectQuarantine.
2122 https://bugs.webkit.org/show_bug.cgi?id=27327
2124 Wrap the storage object with a generic object as is done elsewhere in
2125 the file (but continue to hit a NOTIMPLEMENTED if DOM_STORAGE is not
2128 * bindings/v8/ScriptObjectQuarantine.cpp:
2129 (WebCore::getQuarantinedScriptObject):
2131 2009-07-17 Mads Ager <ager@chromium.org>
2133 Reviewed by Dimitri Glazkov.
2135 https://bugs.webkit.org/show_bug.cgi?id=27394
2136 Fix access to global object wrappers after navigation of their
2137 frame in the V8 bindings. This fixes selenium test failures.
2139 * bindings/v8/V8Proxy.cpp:
2140 (WebCore::V8Proxy::updateDocument):
2142 2009-07-17 Mark Rowe <mrowe@apple.com>
2144 Fix the 32-bit build by removing implicit float <-> double conversions.
2146 * inspector/InspectorController.cpp:
2147 (WebCore::constrainedAttachedWindowHeight):
2149 2009-07-17 Brian Weinstein <bweinstein@apple.com>
2151 Reviewed by Adam Roben.
2153 Fix of <rdar://problem/5712795> Win: Cannot change the height of the docked Web Inspector (14272)
2154 https://bugs.webkit.org/show_bug.cgi?id=14272
2156 Moved preference setting for attached inspector height and inspector height calculation from
2157 WebInspectorClient.mm into InspectorController.cpp, to make this code cross-platform and enable
2158 Windows resizing of attached inspector.
2160 * inspector/InspectorController.cpp:
2161 * inspector/InspectorController.h:
2163 2009-07-17 Dan Bernstein <mitz@apple.com>
2165 Another attempt at fixing the build after r46063
2167 * WebCore.xcodeproj/project.pbxproj: Made ExceptionCode.h a private
2168 header, because it is now included from htmlediting.h, which is
2171 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
2173 Reviewed by Dan Bernstein.
2175 https://bugs.webkit.org/show_bug.cgi?id=27396
2176 Moving cursor in Thai text sometimes jumps over two characters
2178 Test: editing/text-iterator/thai-cursor-movement.html
2180 * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator): Added a special
2181 case for five Thai characters, matching ICU/CLDR changes.
2183 2009-07-14 Eric Seidel <eric@webkit.org>
2185 Reviewed by Adam Barth.
2187 Some constructor objects exposed on Window have the wrong prototype chain
2188 https://bugs.webkit.org/show_bug.cgi?id=27276
2190 Several Constructor classes were already being passed a global object
2191 during construction, but they were ignoring it for prototype lookup.
2192 I've fixed those to use the passed global object instead.
2194 Most of these Constructor classes should just be auto-generated, but I
2195 refrained from changing them over to auto-gen in this patch.
2197 Fixed CodeGeneratorJS to pass a global object to getDOMConstructor when
2198 available, otherwise default to deprecatedGlobalObjectForPrototype(exec)
2199 to match existing behavior.
2201 Test: fast/dom/prototype-inheritance.html
2203 * bindings/js/JSAudioConstructor.cpp:
2204 (WebCore::JSAudioConstructor::JSAudioConstructor): use the existing globalObject pointer for prototype lookup
2205 * bindings/js/JSDOMBinding.h:
2206 (WebCore::deprecatedGlobalObjectForPrototype): Make it easy to detect where the wrong global object is being used.
2207 (WebCore::deprecatedGetDOMStructure):
2208 * bindings/js/JSDOMGlobalObject.h: remove error-prone getDOMConstructor, require passing JSDOMGlobalObject*
2209 * bindings/js/JSDOMWindowCustom.cpp:
2210 (WebCore::JSDOMWindow::webKitPoint): pass "this" for the global object.
2211 (WebCore::JSDOMWindow::webKitCSSMatrix): pass "this" for the global object.
2212 (WebCore::JSDOMWindow::xsltProcessor): pass "this" for the global object.
2213 (WebCore::JSDOMWindow::worker): pass "this" for the global object.
2214 * bindings/js/JSImageConstructor.cpp:
2215 (WebCore::JSImageConstructor::JSImageConstructor): use the existing globalObject pointer for prototype lookup
2216 * bindings/js/JSMessageChannelConstructor.cpp:
2217 (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): use the existing globalObject pointer for prototype lookup
2218 * bindings/js/JSOptionConstructor.cpp:
2219 (WebCore::JSOptionConstructor::JSOptionConstructor): use the existing globalObject pointer for prototype lookup
2220 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2221 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor): add new globalObject parameter and use it
2222 * bindings/js/JSWebKitCSSMatrixConstructor.h:
2223 * bindings/js/JSWebKitPointConstructor.cpp:
2224 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor): add new globalObject parameter and use it
2225 * bindings/js/JSWebKitPointConstructor.h:
2226 * bindings/js/JSWorkerConstructor.cpp:
2227 (WebCore::JSWorkerConstructor::JSWorkerConstructor): add new globalObject parameter and use it
2228 * bindings/js/JSWorkerConstructor.h:
2229 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2230 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): use the existing globalObject pointer for prototype lookup
2231 -- XMLHttpRequest constructor was also missing a length. Added one.
2232 * bindings/js/JSXSLTProcessorConstructor.cpp:
2233 (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
2234 * bindings/js/JSXSLTProcessorConstructor.h:
2235 * bindings/scripts/CodeGeneratorJS.pm:
2237 2009-07-17 Dan Bernstein <mitz@apple.com>
2241 * editing/htmlediting.cpp:
2242 (WebCore::visiblePositionBeforeNode):
2243 (WebCore::visiblePositionAfterNode):
2245 2009-07-17 Jan Michael Alonzo <jmalonzo@webkit.org>
2247 Gtk build fix for symbol lookup error.
2249 Move AbstractWorker from SHARED_WORKERS to WORKERS as Worker derives from it now
2250 Changed in http://trac.webkit.org/changeset/46048
2254 2009-07-17 Ryosuke Niwa <ryosuke.niwa@gmail.com>
2256 Reviewed by Eric Seidel.
2258 htmlediting.cpp needs more utility functions to fix the bug 26816
2259 https://bugs.webkit.org/show_bug.cgi?id=27038
2261 In order to fix the bug 26816, we need several utility functions be added to htmlediting.cpp
2263 No tests because functions haven't been used anywhere yet.
2266 (WebCore::Range::create):
2267 (WebCore::Range::comparePoint): added const qualifier
2268 (WebCore::Range::compareNode): added const qualifier
2270 * editing/htmlediting.cpp:
2271 (WebCore::unsplittableElementForPosition): find the enclosing unsplittable element (editing root & table cell)
2272 (WebCore::positionBeforeNode): added ASSERT(node)
2273 (WebCore::positionAfterNode): added ASSERT(node)
2274 (WebCore::visiblePositionBeforeNode):
2275 (WebCore::visiblePositionAfterNode):
2276 (WebCore::createRange): create a range object from two visible positions
2277 (WebCore::extendRangeToWrappingNodes): extend range to include nodes that starts and ends at the boundaries
2278 (WebCore::canMergeLists): typo
2279 (WebCore::indexForVisiblePosition): added const qualifier
2280 (WebCore::isVisiblyAdjacent): typo
2281 (WebCore::isNodeVisiblyContainedWithin): determine if a node is inside a range or within the visible boundaries of the range
2282 * editing/htmlediting.h:
2284 2009-07-17 Michelangelo De Simone <micdesim@gmail.com>
2286 Reviewed by Darin Adler.
2288 https://bugs.webkit.org/show_bug.cgi?id=25551
2289 Added support for the "required" attribute, the valueMissing flag
2290 to the ValidityState object and :required/:optional CSS pseudoclasses.
2291 Part of HTML5 sec. Forms specs.
2292 http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#attr-input-required
2294 Tests: fast/css/pseudo-required-optional-001.html
2295 fast/css/pseudo-required-optional-002.html
2296 fast/css/pseudo-required-optional-003.html
2297 fast/css/pseudo-required-optional-004.html
2298 fast/css/pseudo-required-optional-005.html
2299 fast/css/pseudo-required-optional-006.html
2300 fast/forms/ValidityState-valueMissing-001.html
2301 fast/forms/ValidityState-valueMissing-002.html
2302 fast/forms/ValidityState-valueMissing-003.html
2303 fast/forms/ValidityState-valueMissing-004.html
2304 fast/forms/ValidityState-valueMissing-005.html
2305 fast/forms/ValidityState-valueMissing-006.html
2306 fast/forms/ValidityState-valueMissing-007.html
2307 fast/forms/ValidityState-valueMissing-008.html
2308 fast/forms/ValidityState-valueMissing-009.html
2309 fast/forms/required-attribute-001.html
2310 fast/forms/required-attribute-002.html
2312 * css/CSSSelector.cpp:
2313 (WebCore::CSSSelector::extractPseudoType): pseudoRequired/pseudoOptional
2314 * css/CSSSelector.h:
2315 (WebCore::CSSSelector::): ditto
2316 * css/CSSStyleSelector.cpp:
2317 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ditto
2319 (WebCore::Element::isOptionalFormControl): check for optional controls
2320 (WebCore::Element::isRequiredFormControl): check for required controls
2321 * html/HTMLAttributeNames.in: required attribute
2322 * html/HTMLButtonElement.h:
2323 (WebCore::HTMLButtonElement::isOptionalFormControl): ditto
2324 * html/HTMLFormControlElement.cpp:
2325 (WebCore::HTMLFormControlElement::required): requiredAttr getter
2326 (WebCore::HTMLFormControlElement::setRequired): requiredAttr setter
2327 * html/HTMLFormControlElement.h:
2328 (WebCore::HTMLFormControlElement::valueMissing): method definition
2329 * html/HTMLInputElement.cpp:
2330 (WebCore::HTMLInputElement::valueMissing): validation code
2331 (WebCore::HTMLInputElement::isRequiredFormControl): ditto
2332 * html/HTMLInputElement.h:
2333 (WebCore::HTMLInputElement::isOptionalFormControl): ditto
2334 * html/HTMLInputElement.idl: required DOM attribute
2335 * html/HTMLSelectElement.h:
2336 (WebCore::HTMLSelectElement::isOptionalFormControl): ditto
2337 * html/HTMLTextAreaElement.h:
2338 (WebCore::HTMLTextAreaElement::valueMissing): validation code
2339 (WebCore::HTMLTextAreaElement::isOptionalFormControl): ditto
2340 (WebCore::HTMLTextAreaElement::isRequiredFormControl): ditto
2341 * html/HTMLTextAreaElement.idl: required DOM attribute
2342 * html/ValidityState.cpp:
2343 * html/ValidityState.h:
2344 (WebCore::ValidityState::valueMissing): validation flag
2346 2009-07-17 Beth Dakin <bdakin@apple.com>
2348 Reviewed by Darin Adler.
2350 Fix for https://bugs.webkit.org/show_bug.cgi?id=27390 CSS custom
2351 cursor hotspots should work in quirks mode
2352 - and corresponding <rdar://problem/6554340>
2354 Enable hotspots in quirks mode.
2355 * css/CSSParser.cpp:
2356 (WebCore::CSSParser::parseValue):
2358 Update this manual test to reflect the fact that hotspots are now
2359 expected to work in quirks mode.
2360 * manual-tests/css3-cursor-fallback-quirks.html:
2362 2009-07-17 Peter Kasting <pkasting@google.com>
2364 Reviewed by Steve Falkenburg.
2366 https://bugs.webkit.org/show_bug.cgi?id=27323
2367 Only add Cygwin to the path when it isn't already there. This avoids
2368 causing problems for people who purposefully have non-Cygwin versions of
2369 executables like svn in front of the Cygwin ones in their paths.
2371 * WebCore.vcproj/QTMovieWin.vcproj:
2372 * WebCore.vcproj/WebCoreCommon.vsprops:
2373 * WebCore.vcproj/WebCoreGenerated.vcproj:
2375 2009-07-17 Alexey Proskuryakov <ap@webkit.org>
2377 Reviewed by David Levin.
2379 https://bugs.webkit.org/show_bug.cgi?id=27384
2380 Random crashes in appcache/update-cache.html test
2382 * loader/appcache/ApplicationCacheGroup.cpp:
2383 (WebCore::ApplicationCacheGroup::didReceiveResponse): Reorder code to avoid using a handle
2386 2009-07-17 Drew Wilson <atwilson@google.com>
2388 Reviewed by David Levin.
2390 Need to refactor Worker to derive from AbstractWorker
2391 https://bugs.webkit.org/show_bug.cgi?id=26948
2393 Changed Worker to derive from AbstractWorker, which involved moving
2394 AbstractWorker files from being wrapped by ENABLE_SHARED_WORKERS to
2397 Removed obsolete functionality from the JS/V8 bindings that is now
2398 inherited from AbstractWorker.
2401 Moved AbstractWorker files out of SHARED_WORKERS section and into WORKERS.
2402 * bindings/js/JSAbstractWorkerCustom.cpp:
2403 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
2404 * bindings/js/JSWorkerCustom.cpp:
2405 Removed obsolete event listener code (now in base class)
2406 (WebCore::JSWorker::mark):
2407 No longer need to explicitly mark event listeners (handled by base class).
2408 * bindings/v8/V8Index.h:
2409 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
2410 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
2411 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
2412 * bindings/v8/custom/V8CustomBinding.h:
2413 Moved AbstractWorker lines out of SHARED_WORKERS section and into WORKERS.
2414 * bindings/v8/custom/V8WorkerCustom.cpp:
2415 Removed obsolete event listener code that now lives in the base class.
2416 (WebCore::V8WorkerConstructor): Cleaned up legacy style nits.
2417 * workers/AbstractWorker.cpp:
2418 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
2419 * workers/AbstractWorker.h:
2420 Changed to be wrapped by ENABLE(WORKERS), not ENABLE(SHARED_WORKERS).
2421 * workers/Worker.cpp:
2422 Removed event listener code (now in base class).
2423 (WebCore::Worker::Worker): Now derives from AbstractWorker.
2424 (WebCore::Worker::notifyFinished): Calls dispatchLoadErrorEvent on base class.
2426 Removed APIs that now live in the base class.
2427 * workers/Worker.idl:
2428 Now derives from AbstractWorker.
2429 Removed APIs that live in the base class, and added a GenerateToJS flag.
2431 2009-07-17 David Hyatt <hyatt@apple.com>
2433 Reviewed by Dan Bernstein.
2435 https://bugs.webkit.org/show_bug.cgi?id=27379
2436 Absolutely-positioned elements with a scrollbar wrap prematurely. Make sure to include
2437 the vertical scrollbar width for overflow:scroll elements.
2439 Added fast/css/positioned-overflow-scroll.html
2441 * rendering/RenderBlock.cpp:
2442 (WebCore::RenderBlock::calcPrefWidths):
2443 * rendering/RenderFlexibleBox.cpp:
2444 (WebCore::RenderFlexibleBox::calcPrefWidths):
2446 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
2448 Reviewed by Dimitri Glazkov.
2450 Need a DOM_STORAGE guard in DerivedSroucesAllInOne.cpp
2451 https://bugs.webkit.org/show_bug.cgi?id=27375
2453 In https://bugs.webkit.org/show_bug.cgi?id=27360 I added Storage.cpp
2454 and StorageEvent.cpp. Unfortunately, until later this afternoon,
2455 DOM_STORAGE is not turned on by default in Chromium, and so these two
2456 files are never generated. This breaks the compile.
2458 There are no other instances of guards in the file, which puzzles me...
2459 but I think adding guards is the right way to go about this.
2461 * bindings/v8/DerivedSourcesAllInOne.cpp: Added the guard.
2463 2009-07-17 Brady Eidson <beidson@apple.com>
2465 Reviewed by Darin Adler.
2467 https://bugs.webkit.org/show_bug.cgi?id=26496
2469 Let WebCore always enforce the connection-per-host limit itself.
2471 * loader/loader.cpp:
2472 (WebCore::Loader::Host::servePendingRequests):
2474 2009-07-17 Chris Marrin <cmarrin@apple.com>
2476 Reviewed by David Hyatt.
2478 Some transitions don't work correctly on Leopard
2479 https://bugs.webkit.org/show_bug.cgi?id=27356
2481 We only have code to do component animation using valueFunction.
2482 So on Leopard we always need to do matrix animation in hardware.
2483 This fix ensures that.
2485 This is currently not testable because it appears only in the
2486 hardware animation and we can't yet do pixel tests while
2489 * platform/graphics/mac/GraphicsLayerCA.mm:
2490 (WebCore::GraphicsLayerCA::animateTransform):
2492 2009-07-17 Holger Hans Peter Freyther <zecke@selfish.org>
2494 Reviewed by Gustavo Noronha.
2496 [GTK+] Crash in screenAvailable due a null Widget*
2498 JSDOMWindow::open called screenAvailableRect(0). The other
2499 Screen methods can be called with a null widget as well, fix the
2500 crashing test by checking for null.
2502 In screenRect and screenAvailableRect it is not tried to use
2503 a default screen as the existing implementation didn't try either
2504 in case of not having a toplevel widget.
2506 LayoutTests/fast/frames/crash-removed-iframe.html caused a crash.
2508 * platform/gtk/PlatformScreenGtk.cpp:
2509 (WebCore::getVisual): New method to get a visual or return zero.
2510 (WebCore::screenDepth): Use getVisual.
2511 (WebCore::screenDepthPerComponent): Use getVisual.
2512 (WebCore::screenIsMonochrome): Use screenDepth which will do the null checking
2513 (WebCore::screenRect): Check for !widget.
2514 (WebCore::screenAvailableRect): Check for !widget.
2516 2009-07-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2518 Reviewed by Simon Hausmann.
2520 [Qt] Fix the include path for the Symbian port
2521 https://bugs.webkit.org/show_bug.cgi?id=27358
2525 2009-07-17 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>
2527 Reviewed by Simon Hausmann.
2529 Make it possible to set the plugin directories from the DRT.
2530 Part of https://bugs.webkit.org/show_bug.cgi?id=27215
2532 * plugins/PluginDatabase.cpp:
2533 (WebCore::PluginDatabase::installedPlugins): Now optionally takes
2534 a populate argument, so we can avoid loading system plugins from the
2535 DRT and thus avoid their strerr errors that can make tests fail.
2536 (WebCore::PluginDatabase::clear): Make it possible to clear the
2537 database. Called from setPluginDirectories.
2538 * plugins/PluginDatabase.h:
2539 (WebCore::PluginDatabase::setPluginDirectories): Make public
2541 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2543 Reviewed by Simon Hausmann.
2545 PluginViewMac: Stop the plugin when loading fails
2547 Also, prevent event propagation when in the stopped state
2549 * plugins/mac/PluginViewMac.cpp:
2551 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2553 Reviewed by Simon Hausmann.
2555 PluginViewMac: Allow query and set of drawing and event models
2557 We now support querying and setting of the drawing and event model,
2558 but we still only support the CoreGraphics drawing model, and the
2561 If unsupported drawing or event models are detected we show the
2562 missing-plugin icon.
2564 * plugins/PluginView.cpp:
2565 * plugins/PluginView.h:
2566 * plugins/mac/PluginViewMac.cpp:
2568 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2570 Reviewed by Simon Hausmann.
2572 Initialize two PluginView members using memset
2574 m_npWindow is used on all platforms, not just for XP_UNIX,
2575 so always initialize it. m_npCgContext on the other hand
2576 is only used for XP_MACOSX.
2578 * plugins/PluginView.cpp:
2580 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2582 Reviewed by Simon Hausmann.
2584 Add more debug logging in PluginView
2586 * plugins/PluginView.cpp: Add debug for setValue
2587 * plugins/gtk/PluginViewGtk.cpp: Add debug for getValue
2588 * plugins/mac/PluginViewMac.cpp: Add debug for getValue and more
2589 * plugins/qt/PluginViewQt.cpp: Add debug for getValue
2590 * plugins/win/PluginViewWin.cpp: Add debug for getValue
2592 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2594 Reviewed by Holger Freyther.
2596 Use same license in PluginDebug.cpp as in the original PluginDebug.h
2598 * plugins/PluginDebug.cpp: Use license from PluginDebug.h
2600 2009-07-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2602 Reviewed by Simon Hausmann.
2604 Add more debugging functionality for the WebCore NPAPI layer
2606 * GNUmakefile.am: Add PluginDebug.cpp
2607 * WebCore.gypi: Add PluginDebug.cpp
2608 * WebCore.pro: Add PluginDebug.cpp
2609 * WebCore.vcproj/WebCore.vcproj: Add PluginDebug.cpp
2610 * WebCoreSources.bkl: Add PluginDebug.cpp
2611 * plugins/PluginDebug.h: Move errorStrings to PluginDebug.cpp
2612 * plugins/PluginDebug.cpp: New file
2614 2009-07-17 Jeremy Orlow <jorlow@chromium.org>
2616 Reviewed by David Levin.
2618 Fix Chromium build with DOM_STORAGE enabled.
2619 https://bugs.webkit.org/show_bug.cgi?id=27360
2621 2 minor changes as noted below:
2623 * bindings/v8/DerivedSourcesAllInOne.cpp: Add the generated .cpp files.
2624 * storage/StorageAreaImpl.cpp: #include "DOMWindow.h"
2626 2009-07-16 Fumitoshi Ukai <ukai@chromium.org>
2628 Reviewed by David Levin.
2630 Add --web-sockets flag and ENABLE_WEB_SOCKETS define.
2631 https://bugs.webkit.org/show_bug.cgi?id=27206
2633 Add ENABLE_WEB_SOCKETS
2635 * Configurations/FeatureDefines.xcconfig: add ENABLE_WEB_SOCKETS
2636 * GNUmakefile.am: add ENABLE_WEB_SOCKETS
2637 * WebCore.vcproj/WebCoreCommon.vsprops: add ENABLE_WEB_SOCKETS
2638 * WebCore.vcproj/build-generated-files.sh: add ENABLE_WEB_SOCKETS
2640 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2642 Reviewed by Oliver Hunt.
2644 Added a third bunch of Haiku-specific files for WebCore.
2645 https://bugs.webkit.org/show_bug.cgi?id=26952
2647 Adding five files, EventLoopHaiku.cpp, FileChooserHaiku.cpp,
2648 FileSystemHaiku.cpp, KeyboardCodes.h and MIMETypeRegistryHaiku.cpp
2650 * platform/haiku/EventLoopHaiku.cpp: Added.
2651 (WebCore::EventLoop::cycle):
2652 * platform/haiku/FileChooserHaiku.cpp: Added.
2653 (WebCore::FileChooser::FileChooser):
2654 (WebCore::FileChooser::basenameForWidth):
2655 * platform/haiku/FileSystemHaiku.cpp: Added.
2656 (WebCore::fileSystemRepresentation):
2657 (WebCore::homeDirectoryPath):
2658 (WebCore::openTemporaryFile):
2659 (WebCore::closeFile):
2660 (WebCore::writeToFile):
2661 (WebCore::unloadModule):
2662 (WebCore::listDirectory):
2663 * platform/haiku/KeyboardCodes.h: Added.
2664 * platform/haiku/MIMETypeRegistryHaiku.cpp: Added.
2666 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2668 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2670 Reviewed by Oliver Hunt.
2672 Added a second bunch of Haiku-specific files for WebCore.
2673 https://bugs.webkit.org/show_bug.cgi?id=26952
2675 Adding four files, ContextMenuHaiku.cpp, ContextMenuItemHaiku.cpp,
2676 DragDataHaiku.cpp and DragImageHaiku.cpp
2678 * platform/haiku/ContextMenuHaiku.cpp: Added.
2679 (WebCore::ContextMenuReceiver::ContextMenuReceiver):
2680 (WebCore::ContextMenuReceiver::HandleMessage):
2681 (WebCore::ContextMenuReceiver::Result):
2682 (WebCore::ContextMenu::ContextMenu):
2683 (WebCore::ContextMenu::~ContextMenu):
2684 (WebCore::ContextMenu::appendItem):
2685 (WebCore::ContextMenu::itemCount):
2686 (WebCore::ContextMenu::insertItem):
2687 (WebCore::ContextMenu::platformDescription):
2688 (WebCore::ContextMenu::setPlatformDescription):
2689 * platform/haiku/ContextMenuItemHaiku.cpp: Added.
2690 (ContextMenuItem::ContextMenuItem):
2691 (ContextMenuItem::~ContextMenuItem):
2692 (ContextMenuItem::releasePlatformDescription):
2693 (ContextMenuItem::type):
2694 (ContextMenuItem::setType):
2695 (ContextMenuItem::action):
2696 (ContextMenuItem::setAction):
2697 (ContextMenuItem::title):
2698 (ContextMenuItem::setTitle):
2699 (ContextMenuItem::platformSubMenu):
2700 (ContextMenuItem::setSubMenu):
2701 (ContextMenuItem::setChecked):
2702 (ContextMenuItem::setEnabled):
2703 (ContextMenuItem::enabled):
2704 * platform/haiku/DragDataHaiku.cpp: Added.
2705 (WebCore::DragData::canSmartReplace):
2706 (WebCore::DragData::containsColor):
2707 (WebCore::DragData::containsFiles):
2708 (WebCore::DragData::asFilenames):
2709 (WebCore::DragData::containsPlainText):
2710 (WebCore::DragData::asPlainText):
2711 (WebCore::DragData::asColor):
2712 (WebCore::DragData::createClipboard):
2713 (WebCore::DragData::containsCompatibleContent):
2714 (WebCore::DragData::containsURL):
2715 (WebCore::DragData::asURL):
2716 (WebCore::DragData::asFragment):
2717 * platform/haiku/DragImageHaiku.cpp: Added.
2718 (WebCore::dragImageSize):
2719 (WebCore::deleteDragImage):
2720 (WebCore::scaleDragImage):
2721 (WebCore::dissolveDragImageToFraction):
2722 (WebCore::createDragImageFromImage):
2723 (WebCore::createDragImageIconForCachedImage):
2725 2009-07-16 Stephen White <senorblanco@chromium.org>
2727 Reviewed by Darin Fisher and Brett Wilson.
2729 Refactor Skia implementation of gradients and patterns.
2731 http://bugs.webkit.org/show_bug.cgi?id=26618
2733 The following layout tests were breaking on Chromium/Linux:
2735 LayoutTests/svg/custom/js-late-gradient-creation.svg (bad baseline PNG)
2736 LayoutTests/svg/custom/js-late-gradient-and-object.creation.svg
2737 LayoutTests/svg/custom/js-late-pattern-creation.svg (bad baseline PNG)
2738 LayoutTests/svg/custom/js-late-pattern-and-object-creation.svg
2740 I could've fixed these the easy way, by copying the same 5
2741 lines of code we use everywhere we need patterns or gradients, but
2742 I decided to fix it the hard way: by refactoring the code so that
2743 PlatformContextSkia::setupPaintForFilling() and
2744 PlatformContextSkia::setupPaintForStroking() do the right thing,
2745 and also handle gradients and patterns.
2747 This required pushing the gradients and patterns set in
2748 (generic) GraphicsContext::setFillPattern() and friends down into
2749 PlatformContextSkia. For this, I followed the setPlatformXXX()
2750 pattern used elsewhere in GraphicsContext, and stubbed them out on
2751 the other platforms with #if !PLATFORM(SKIA). This also required
2752 pushing changes to the gradientSpaceTransform from the Gradient into
2755 Since it's a Skia context, I decided to cache the values as
2756 SkShaders. There were existing m_pattern and m_gradient SkShaders,
2757 but they were unused, and whose use was ambiguous, so I
2758 replaced them with one SkShader each for filling and stroking.
2760 * platform/graphics/Gradient.cpp:
2761 (WebCore::Gradient::setGradientSpaceTransform):
2762 (WebCore::Gradient::setPlatformGradientSpaceTransform):
2763 * platform/graphics/Gradient.h:
2764 * platform/graphics/GraphicsContext.cpp:
2765 (WebCore::GraphicsContext::setStrokePattern):
2766 (WebCore::GraphicsContext::setFillPattern):
2767 (WebCore::GraphicsContext::setStrokeGradient):
2768 (WebCore::GraphicsContext::setFillGradient):
2769 (WebCore::GraphicsContext::setPlatformFillGradient):
2770 (WebCore::GraphicsContext::setPlatformFillPattern):
2771 (WebCore::GraphicsContext::setPlatformStrokeGradient):
2772 (WebCore::GraphicsContext::setPlatformStrokePattern):
2773 * platform/graphics/GraphicsContext.h:
2774 * platform/graphics/skia/GradientSkia.cpp:
2775 (WebCore::Gradient::setPlatformGradientSpaceTransform):
2776 * platform/graphics/skia/GraphicsContextSkia.cpp:
2777 (WebCore::GraphicsContext::fillPath):
2778 (WebCore::GraphicsContext::fillRect):
2779 (WebCore::GraphicsContext::setPlatformFillGradient):
2780 (WebCore::GraphicsContext::setPlatformFillPattern):
2781 (WebCore::GraphicsContext::setPlatformStrokeGradient):
2782 (WebCore::GraphicsContext::setPlatformStrokePattern):
2783 (WebCore::GraphicsContext::strokePath):
2784 (WebCore::GraphicsContext::strokeRect):
2785 * platform/graphics/skia/PlatformContextSkia.cpp:
2786 (PlatformContextSkia::State::State):
2787 (PlatformContextSkia::State::~State):
2788 (PlatformContextSkia::drawRect):
2789 (PlatformContextSkia::setupPaintCommon):
2790 (PlatformContextSkia::setupPaintForFilling):
2791 (PlatformContextSkia::setupPaintForStroking):
2792 (PlatformContextSkia::setFillColor):
2793 (PlatformContextSkia::setStrokeColor):
2794 (PlatformContextSkia::setStrokeShader):
2795 (PlatformContextSkia::setFillShader):
2796 * platform/graphics/skia/PlatformContextSkia.h:
2797 * platform/graphics/skia/SkiaFontWin.cpp:
2798 (WebCore::skiaDrawText):
2799 (WebCore::paintSkiaText):
2800 * svg/graphics/SVGPaintServer.cpp:
2801 (WebCore::SVGPaintServer::teardown):
2803 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2805 Reviewed by Oliver Hunt.
2807 Added Haiku-specific files for WebCore/platform/image-decoders/.
2808 https://bugs.webkit.org/show_bug.cgi?id=26949
2810 Adding a new file, ImageDecoderHaiku.cpp.
2812 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Added.
2813 (WebCore::RGBA32Buffer::RGBA32Buffer):
2814 (WebCore::RGBA32Buffer::clear):
2815 (WebCore::RGBA32Buffer::zeroFill):
2816 (WebCore::RGBA32Buffer::copyBitmapData):
2817 (WebCore::RGBA32Buffer::setSize):
2818 (WebCore::RGBA32Buffer::asNewNativeImage):
2819 (WebCore::RGBA32Buffer::hasAlpha):
2820 (WebCore::RGBA32Buffer::setHasAlpha):
2821 (WebCore::RGBA32Buffer::setStatus):
2822 (WebCore::RGBA32Buffer::operator=):
2823 (WebCore::RGBA32Buffer::width):
2824 (WebCore::RGBA32Buffer::height):
2826 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2828 Reviewed by Eric Seidel.
2830 Added Haiku-specific files for WebCore/page/.
2831 https://bugs.webkit.org/show_bug.cgi?id=26949
2833 Adding three new files, DragControllerHaiku.cpp, EventHandlerHaiku.cpp
2836 * page/haiku/DragControllerHaiku.cpp: Added.
2837 (WebCore::DragController::isCopyKeyDown):
2838 (WebCore::DragController::dragOperation):
2839 (WebCore::DragController::maxDragImageSize):
2840 (WebCore::DragController::cleanupAfterSystemDrag):
2841 * page/haiku/EventHandlerHaiku.cpp: Added.
2842 (WebCore::isKeyboardOptionTab):
2843 (WebCore::EventHandler::invertSenseOfTabsToLinks):
2844 (WebCore::EventHandler::tabsToAllControls):
2845 (WebCore::EventHandler::focusDocumentView):
2846 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2847 (WebCore::EventHandler::passMouseDownEventToWidget):
2848 (WebCore::EventHandler::eventActivatedView):
2849 (WebCore::EventHandler::passSubframeEventToSubframe):
2850 (WebCore::EventHandler::passWheelEventToWidget):
2851 (WebCore::EventHandler::createDraggingClipboard):
2852 (WebCore::EventHandler::passMousePressEventToSubframe):
2853 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2854 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2855 (WebCore::EventHandler::accessKeyModifiers):
2856 * page/haiku/FrameHaiku.cpp: Added.
2857 (WebCore::Frame::dragImageForSelection):
2859 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2861 Reviewed by Eric Seidel.
2863 Added Haiku-specific files for WebCore/editing/.
2864 https://bugs.webkit.org/show_bug.cgi?id=26949
2866 Adding one new file, EditorHaiku.cpp
2868 * editing/haiku/EditorHaiku.cpp: Added.
2869 (WebCore::Editor::newGeneralClipboard):
2871 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2873 Reviewed by Eric Seidel.
2875 Added Haiku-specific files for WebCore/bindings/js/.
2876 https://bugs.webkit.org/show_bug.cgi?id=26949
2878 Adding a new file, ScriptControllerHaiku.cpp
2880 * bindings/js/ScriptControllerHaiku.cpp: Added.
2881 (WebCore::ScriptController::createScriptInstanceForWidget):
2883 2009-07-16 Maxime Simon <simon.maxime@gmail.com>
2885 Reviewed by Eric Seidel.
2887 Added Haiku-specific files for WebCore/platform/text/.
2888 https://bugs.webkit.org/show_bug.cgi?id=26949
2890 Adding two new files, StringHaiku.cpp
2891 and TextBreakIteratorInternalICUHaiku.cpp
2893 * platform/text/haiku/StringHaiku.cpp: Added.
2894 (WebCore::String::String):
2895 (WebCore::String::operator BString):
2896 * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Added.
2897 (WebCore::currentTextBreakLocaleID):
2899 2009-07-16 Kent Tamura <tkent@chromium.org>
2901 Reviewed by Eric Seidel.
2903 Sends the basename of a selected file for non-multipart form submission.
2904 <https://bugs.webkit.org/show_bug.cgi?id=26505>
2906 Test: fast/forms/get-file-upload.html
2908 * html/HTMLInputElement.cpp:
2909 (WebCore::HTMLInputElement::appendFormData):
2911 2009-07-16 Adam Barth <abarth@webkit.org>
2913 Reviewed by David Levin.
2915 [V8] Centralize hidden property names
2916 https://bugs.webkit.org/show_bug.cgi?id=27359
2918 No behavior change. Just moving these names to a central location.
2919 I'll move the rest of our hidden property names as I sweep though the
2923 * bindings/v8/V8HiddenPropertyName.cpp: Added.
2924 (WebCore::V8HiddenPropertyName::objectPrototype):
2925 (WebCore::V8HiddenPropertyName::isolatedWorld):
2926 * bindings/v8/V8HiddenPropertyName.h: Added.
2927 * bindings/v8/V8IsolatedWorld.cpp:
2928 (WebCore::V8IsolatedWorld::V8IsolatedWorld):
2929 (WebCore::V8IsolatedWorld::getEntered):
2930 * bindings/v8/V8Proxy.cpp:
2931 (WebCore::V8Proxy::getHiddenObjectPrototype):
2932 (WebCore::V8Proxy::installHiddenObjectPrototype):
2934 2009-07-16 Dan Bernstein <mitz@apple.com>
2936 Reviewed by Simon Fraser.
2938 REGRESSION (r41238) Repainted portion of a scaled image does not line up with full image
2939 https://bugs.webkit.org/show_bug.cgi?id=26747
2940 rdar://problem/7009243
2942 Test: fast/repaint/background-misaligned.html
2944 * platform/graphics/Image.cpp:
2945 (WebCore::Image::drawTiled): Moved a variable definition closer to where
2947 * platform/graphics/cg/ImageCG.cpp:
2948 (WebCore::BitmapImage::draw): In the subimage code path, compute a
2949 pixel-aligned source rect, because the subiamge is always pixel-aligned
2950 in source space, and adjust the destination rect to preserve the
2951 source -> destination mapping. Clip to the (original) destination rect
2952 to prevent bleeding out.
2954 2009-07-16 Jeremy Orlow <jorlow@chromium.org>
2956 Reviewed by Adam Barth.
2958 Add a sessionStorageEnabled setting to the settings class.
2959 https://bugs.webkit.org/show_bug.cgi?id=27318
2961 Allow LocalStorage to be enabled without enabling SessionStorage at
2962 runtime. There is a settings class setting for localStorage, but not
2963 for sessionStorage. We want to be able to test one of these features
2964 without necessarily enabling the other.
2966 SessionStorage defaults to true so as to not change behavior and
2967 because there really aren't any security concerns around SessionStorage
2968 (unlike LocalsStorage). The flag is needed in Chromium only because
2969 we want to enable the compile time flag in the default build, but don't
2970 want it on by default until it's been thoroughly tested.
2972 * page/DOMWindow.cpp:
2973 (WebCore::DOMWindow::sessionStorage): Check the new flag
2974 (WebCore::DOMWindow::localStorage): A bit of cleanup
2975 * page/Settings.cpp:
2976 (WebCore::Settings::Settings): Default the flag to true
2977 (WebCore::Settings::setSessionStorageEnabled): Add the new flag
2979 (WebCore::Settings::sessionStorageEnabled): Get the new flag
2981 2009-07-16 Adam Barth <abarth@webkit.org>
2985 Revert 45987. Tests did not pass on Windows.
2987 * html/HTMLInputElement.cpp:
2988 (WebCore::HTMLInputElement::appendFormData):
2990 2009-07-16 Drew Wilson <atwilson@google.com>
2992 Reviewed by David Levin.
2994 Added SHARED_WORKER flag to Windows build files, as well as associated .ccp/.h files.
2995 Added missing V8 bindings to the AllInOne file
2997 https://bugs.webkit.org/show_bug.cgi?id=27321
2999 * WebCore.vcproj/WebCore.vcproj:
3000 Added missing files to build.
3001 * bindings/v8/DerivedSourcesAllInOne.cpp:
3002 Added missing V8 bindings (V8AbstractWorker.cpp and V8SharedWorker.cpp)
3003 * DerivedSources.cpp
3004 Added missing JS bindings (JSAbstractWorker.cpp and JSSharedWorker.cpp)
3006 2009-07-16 John Abd-El-Malek <jam@chromium.org>
3008 Reviewed by David Levin.
3010 Add a getter in MessagePortChannel for the PlatformMessagePortChannel.
3012 https://bugs.webkit.org/show_bug.cgi?id=27337
3014 * dom/MessagePortChannel.h:
3015 (WebCore::MessagePortChannel::channel):
3017 2009-07-16 Xiaomei Ji <xji@chromium.org>
3019 Reviewed by Darin Adler.
3021 Fix tooltip does not get its directionality from its element's directionality.
3022 https://bugs.webkit.org/show_bug.cgi?id=24187
3024 Per mitz's suggestion in comment #6, while getting the plain-text
3025 title, we also get the directionality of the title. How to handle
3026 the directionality is up to clients. Clients could ignore it,
3027 or use attribute or unicode control characters to display the title
3030 WARNING: NO TEST CASES ADDED OR CHANGED
3032 * WebCore.base.exp: Replace 2 names due to signature change.
3033 * loader/EmptyClients.h:
3034 (WebCore::EmptyChromeClient::setToolTip): Add direction as 2nd parameter.
3036 (WebCore::Chrome::setToolTip): Calculate tooltip direction as well and pass it to client to take care when display tooltip.
3037 * page/ChromeClient.h: Add direction as 2nd parameter to pure virtual function setToolTip().
3038 * page/chromium/ChromeClientChromium.h:
3039 (WebCore::ChromeClientChromium::setToolTip): Add setToolTip()
3040 temprarily to make chromium compile after pick up this webkit patch.
3041 * rendering/HitTestResult.cpp:
3042 (WebCore::HitTestResult::spellingToolTip): Besides getting the
3043 spelling tooltip, get its directionality as well.
3044 (WebCore::HitTestResult::title): Besides getting the title,
3045 get its directionality as well.
3046 * rendering/HitTestResult.h: Add 2 more methods.
3048 2009-07-16 Shinichiro Hamaji <hamaji@chromium.org>
3050 Reviewed by Oliver Hunt.
3052 [CAIRO] pattern of a canvas-element changes after modifications on canvas-element
3053 https://bugs.webkit.org/show_bug.cgi?id=20578
3055 Copy pixel image in ImageBuffer::image() just like CG and Skia glue.
3057 Test: fast/canvas/canvas-pattern-modify.html
3059 * platform/graphics/cairo/ImageBufferCairo.cpp:
3061 (WebCore::ImageBuffer::image):
3063 2009-07-16 David Hyatt <hyatt@apple.com>
3065 Reviewed by Beth Dakin.
3067 https://bugs.webkit.org/show_bug.cgi?id=27353
3068 Images mispositioned because of bug in percentage-based relative positioning.
3070 Added fast/css/nested-floating-relative-position-percentages.html
3072 * rendering/RenderBoxModelObject.cpp:
3073 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
3075 2009-07-16 Kent Tamura <tkent@chromium.org>
3077 Reviewed by Eric Seidel.
3079 Sends the basename of a selected file for non-multipart form submission.
3080 <https://bugs.webkit.org/show_bug.cgi?id=26505>
3082 Test: fast/forms/get-file-upload.html
3084 * html/HTMLInputElement.cpp:
3085 (WebCore::HTMLInputElement::appendFormData):
3087 2009-07-16 Simon Fraser <simon.fraser@apple.com>
3089 Reviewed by Darin Adler.
3091 Video size sometimes jumps just after the video starts loading
3092 https://bugs.webkit.org/show_bug.cgi?id=27352
3094 Ensure that the media player is at or after the 'HaveMetadata' state so that
3095 the instrinsic size is known before we create the layer for video. This avoids
3096 a flash caused by computing the video rect using the default intrinsic size, and then
3097 re-computing it when that size changes.
3099 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3100 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3101 (WebCore::MediaPlayerPrivate::isReadyForRendering):
3102 (WebCore::MediaPlayerPrivate::updateStates):
3103 (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
3105 2009-07-16 Brady Eidson <beidson@apple.com>
3107 Reviewed by Antti Koivisto.
3108 Patch by Brady Eidson and Alexey Proskuryakov.
3110 https://bugs.webkit.org/show_bug.cgi?id=26496
3111 <rdar://problem/7065391> Microsoft Outlook Web Access fails because XHR stream connection blocks script loading/revalidation
3113 After refreshing a page and when all CachedResources on that page are in validation mode, they got an exemption
3114 from the connection-per-host limit. Removing that exemption makes the test case load smoothly after reloads.
3116 * loader/loader.cpp:
3117 (WebCore::Loader::Host::servePendingRequests): Remove the resourceIsCacheValidator exemption to the connection-per-host limit.
3119 2009-07-16 Adam Barth <abarth@webkit.org>
3121 Reviewed by Dimitri Glazkov.
3123 [V8] V8IsolatedWorld::evaluate needs to call didCreateIsolatedScriptContext
3124 https://bugs.webkit.org/show_bug.cgi?id=27335
3126 evaluateInNewContext makes this delegate call. evaluateInNewWorld
3127 needs to make the same call. This does not appear to be testable with
3128 our current technology.
3130 * bindings/v8/V8IsolatedWorld.cpp:
3131 (WebCore::V8IsolatedWorld::evaluate):
3133 2009-07-15 Jakub Wieczorek <faw217@gmail.com>
3135 Reviewed by Simon Hausmann.
3137 Fix a typo: application/atom=xml -> application/atom+xml.
3139 * dom/ProcessingInstruction.cpp:
3140 (WebCore::ProcessingInstruction::checkStyleSheet):
3142 2009-07-16 Dean McNamee <deanm@chromium.org>
3144 Reviewed by Oliver Hunt.
3146 https://bugs.webkit.org/show_bug.cgi?id=27292
3147 Improve handling of <canvas> path operations on an empty path.
3148 Implement Skia's Path::hasCurrentPoint().
3150 * html/CanvasRenderingContext2D.cpp:
3151 (WebCore::CanvasRenderingContext2D::lineTo):
3152 (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
3153 (WebCore::CanvasRenderingContext2D::bezierCurveTo):
3154 * platform/graphics/skia/PathSkia.cpp:
3155 (WebCore::Path::hasCurrentPoint):
3157 2009-07-15 Shinichiro Hamaji <hamaji@chromium.org>
3159 Reviewed by Eric Seidel.
3161 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
3162 https://bugs.webkit.org/show_bug.cgi?id=26254
3164 Make it so that setting white-space and word-wrap via CSS
3165 overrides the wrap attribute.
3167 This involves having the shadow div in the textarea inherit
3168 the CSS from its parent instead of hard-coding it in
3169 RenderTextControlMultiline.
3171 Committer note: Earlier I reverted this change because I did it incorrectly
3172 by leaving out css/html.css. In the patch, the filename was the old name
3173 css/html4.css and that led to my error.
3176 * html/HTMLTextAreaElement.cpp:
3177 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
3178 * rendering/RenderTextControlMultiLine.cpp:
3179 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
3181 2009-07-15 James Hawkins <jhawkins@google.com>
3183 Reviewed by Adam Barth.
3185 [V8] Remove a local variable that is shadowing a function parameter.
3186 https://bugs.webkit.org/show_bug.cgi?id=27309
3188 No test required as this modification does not change the current behavior.
3190 * bindings/v8/V8DOMWrapper.cpp:
3191 (WebCore::V8DOMWrapper::instantiateV8Object):
3193 2009-07-15 Adam Langley <agl@google.com>
3195 No review: reverting previous change.
3199 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
3200 Reviewed by Dimitri Glazkov.
3202 Adding the Win SQLite VFS implementation for Chromium.
3204 https://bugs.webkit.org/show_bug.cgi?id=26940
3207 The Chromium side of this patch was landed in 20839, but broke the build. It
3208 was reverted in r20840. Thus, I'm reverting this side of the patch too.
3211 * platform/chromium/ChromiumBridge.h:
3212 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Removed.
3213 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Removed.
3215 2009-07-15 David Levin <levin@chromium.org>
3217 Layout test fix, reverting previous change.
3219 Reverting r45962 as it caused several layout test failures.
3221 * html/HTMLTextAreaElement.cpp:
3222 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
3223 * rendering/RenderTextControlMultiLine.cpp:
3224 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
3226 2009-06-08 Shinichiro Hamaji <hamaji@chromium.org>
3228 Reviewed by Eric Seidel.
3230 Setting white-space and word-wrap via CSS in textarea doesn't override the wrap attribute
3231 https://bugs.webkit.org/show_bug.cgi?id=26254
3233 Make it so that setting white-space and word-wrap via CSS
3234 overrides the wrap attribute.
3236 This involves having the shadow div in the textarea inherit
3237 the CSS from its parent instead of hard-coding it in
3238 RenderTextControlMultiline.
3241 * html/HTMLTextAreaElement.cpp:
3242 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
3243 * rendering/RenderTextControlMultiLine.cpp:
3244 (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
3246 2009-07-15 Dumitru Daniliuc <dumi@chromium.org>
3248 Reviewed by Dimitri Glazkov.
3250 Adding the Win SQLite VFS implementation for Chromium.
3252 https://bugs.webkit.org/show_bug.cgi?id=26940
3254 * platform/chromium/ChromiumBridge.h:
3255 * platform/sql/chromium: Added.
3256 * platform/sql/chromium/SQLiteFileSystemChromium.cpp: Added.
3257 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: Added.
3259 2009-07-15 Jian Li <jianli@chromium.org>
3261 Reviewed by David Levin.
3263 Bug 25151 - workers that fail to load scripts not firing error event.
3264 https://bugs.webkit.org/show_bug.cgi?id=25151
3266 This fixes the problem that an error event is not fired when the worker
3267 script fails to load. Some reasons this may occur are an invalid URL for
3268 the worker script or a cross-origin redirect.
3270 We also moves the code to complete the URL and check its origin from
3271 Worker constructor to WorkerScriptLoader loading functions in order to
3272 move the exception throwing logic out of the scope of Worker constructor.
3273 Due to this change, we also remove the output ExceptionCode parameter
3274 in the worker constructor. Corresponding JS/V8 binding codes have been
3275 updated to reflect this change.
3277 * bindings/js/JSWorkerConstructor.cpp:
3278 (WebCore::constructWorker):
3279 * bindings/v8/custom/V8WorkerCustom.cpp:
3280 (WebCore::CALLBACK_FUNC_DECL):
3281 * workers/Worker.cpp:
3282 (WebCore::Worker::Worker):
3283 (WebCore::Worker::notifyFinished):
3285 (WebCore::Worker::create):
3286 * workers/WorkerContext.cpp:
3287 (WebCore::WorkerContext::importScripts):
3288 * workers/WorkerScriptLoader.cpp:
3289 (WebCore::toCrossOriginRedirectPolicy):
3290 (WebCore::WorkerScriptLoader::loadSynchronously):
3291 (WebCore::WorkerScriptLoader::loadAsynchronously):
3292 (WebCore::notifyLoadErrorTask):
3293 (WebCore::WorkerScriptLoader::createResourceRequest):
3294 (WebCore::WorkerScriptLoader::didFail):
3295 (WebCore::WorkerScriptLoader::didFailRedirectCheck):
3296 (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation):
3297 (WebCore::WorkerScriptLoader::notifyError):
3298 * workers/WorkerScriptLoader.h:
3300 (WebCore::WorkerScriptLoader::url):
3302 2009-07-15 Dan Bernstein <mitz@apple.com>
3304 Reviewed by Dave Hyatt.
3306 text-shadow is not drawn for text with transparent colour
3307 https://bugs.webkit.org/show_bug.cgi?id=21374
3309 Test: fast/text/shadow-translucent-fill.html
3311 * rendering/InlineTextBox.cpp:
3312 (WebCore::paintTextWithShadows): If the text fill color is not opaque,
3313 paint all shadows separately from the text, by casting them from
3314 clipped-out opaque text.
3316 2009-07-15 Adam Treat <adam.treat@torchmobile.com>
3320 * html/HTMLAreaElement.cpp:
3322 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
3324 Reviewed by Darin Fisher.
3326 Cleanup DOM Storage dependencies.
3327 https://bugs.webkit.org/show_bug.cgi?id=27180
3329 DOM Storage had several unnecessary (and probably unintended)
3330 dependencies. This patch replaces many includes of header files with
3331 forward declaration of classes, making some destructors explicit, and
3332 taking some factories out of the header files.
3334 This will allow things like StorageAreaSync to take a StorageAreaImpl*
3335 (as it should) rather than a StorageArea* which previously weren't
3336 possible because the dependencies were such a tangled mess.
3338 * storage/LocalStorageTask.cpp:
3339 (WebCore::LocalStorageTask::~LocalStorageTask):
3340 * storage/LocalStorageTask.h:
3341 * storage/Storage.cpp:
3342 (WebCore::Storage::~Storage):
3343 * storage/Storage.h:
3344 * storage/StorageArea.cpp:
3345 * storage/StorageArea.h:
3346 * storage/StorageAreaImpl.cpp:
3347 * storage/StorageAreaImpl.h:
3348 * storage/StorageAreaSync.cpp:
3349 (WebCore::StorageAreaSync::~StorageAreaSync):
3350 * storage/StorageAreaSync.h:
3351 * storage/StorageEvent.cpp:
3352 (WebCore::StorageEvent::create):
3353 (WebCore::StorageEvent::StorageEvent):
3354 * storage/StorageEvent.h:
3355 * storage/StorageNamespace.h:
3356 * storage/StorageNamespaceImpl.cpp:
3357 * storage/StorageNamespaceImpl.h:
3358 * storage/StorageSyncManager.cpp:
3359 (WebCore::StorageSyncManager::~StorageSyncManager):
3360 * storage/StorageSyncManager.h:
3362 2009-07-15 Chris Marrin <cmarrin@apple.com>
3364 Reviewed by Simon Fraser.
3366 Incorrect animation when trying to duplicate effect of transform-origin
3367 https://bugs.webkit.org/show_bug.cgi?id=27310
3369 The bug is that matrix animation is being used when animating
3370 a list of transform functions that match in the from and to states.
3371 This sometimes works. But because of the way CA does matrix animation
3372 function lists like the one shown in the testcase animate incorrectly.
3374 This fixes the bug by always doing component animation
3375 as long as the function lists match. This allows CA
3376 to animate the components and then recompose the result
3377 into the correct matrix.
3379 Test: animations/transform-origin-vs-functions.html
3381 * platform/graphics/mac/GraphicsLayerCA.mm:
3382 (WebCore::GraphicsLayerCA::animateTransform):
3384 2009-07-15 Albert J. Wong <ajwong@chromium.org>
3386 Reviewed by David Levin.
3388 Upstream the V8NPObject and NPV8Object build changes for WebCore.gypi.
3390 Add upstreamed V8 bindings files into WebCore.gypi so they can be seen
3392 https://bugs.webkit.org/show_bug.cgi?id=27274
3394 Changes the build file for chromium. Test built the chromium tree
3399 2009-07-15 Mark Rowe <mrowe@apple.com>
3401 I like it when the code compiles.
3405 2009-07-15 Darin Adler <darin@apple.com>
3407 Reviewed by Sam Weinig.
3409 Renamed parseURL to deprecatedParseURL.
3411 * bindings/js/JSAttrCustom.cpp:
3412 (WebCore::JSAttr::setValue): Renamed.
3413 * bindings/js/JSElementCustom.cpp:
3414 (WebCore::allowSettingSrcToJavascriptURL): Renamed.
3415 * bindings/js/JSHTMLFrameElementCustom.cpp:
3416 (WebCore::allowSettingJavascriptURL): Renamed.
3417 * bindings/js/JSHTMLIFrameElementCustom.cpp:
3418 (WebCore::JSHTMLIFrameElement::setSrc): Renamed.
3419 * bindings/objc/DOM.mm:
3420 (-[DOMElement _getURLAttribute:]): Renamed.
3421 * bindings/objc/DOMHTML.mm:
3422 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Renamed.
3423 * bindings/v8/custom/V8CustomBinding.cpp:
3424 (WebCore::allowSettingFrameSrcToJavascriptUrl): Renamed.
3425 * css/CSSHelper.cpp:
3426 (WebCore::deprecatedParseURL): Renamed.
3427 * css/CSSHelper.h: Renamed and updated comment.
3428 * html/HTMLAnchorElement.cpp:
3429 (WebCore::HTMLAnchorElement::defaultEventHandler): Renamed.
3430 (WebCore::HTMLAnchorElement::parseMappedAttribute): Renamed.
3431 * html/HTMLBaseElement.cpp:
3432 (WebCore::HTMLBaseElement::parseMappedAttribute): Renamed.
3433 * html/HTMLBodyElement.cpp:
3434 (WebCore::HTMLBodyElement::parseMappedAttribute): Renamed.
3435 * html/HTMLEmbedElement.cpp:
3436 (WebCore::HTMLEmbedElement::parseMappedAttribute): Renamed.
3437 * html/HTMLFormElement.cpp:
3438 (WebCore::HTMLFormElement::parseMappedAttribute): Renamed.
3439 * html/HTMLFrameElementBase.cpp:
3440 (WebCore::HTMLFrameElementBase::parseMappedAttribute): Renamed.
3441 * html/HTMLImageElement.cpp:
3442 (WebCore::HTMLImageElement::parseMappedAttribute): Renamed.
3443 * html/HTMLImageLoader.cpp:
3444 (WebCore::HTMLImageLoader::sourceURI): Renamed.
3445 * html/HTMLLinkElement.cpp:
3446 (WebCore::HTMLLinkElement::parseMappedAttribute): Renamed.
3447 * html/HTMLObjectElement.cpp:
3448 (WebCore::HTMLObjectElement::parseMappedAttribute): Renamed.
3449 * html/HTMLTableElement.cpp:
3450 (WebCore::HTMLTableElement::parseMappedAttribute): Renamed.
3451 * html/HTMLTablePartElement.cpp:
3452 (WebCore::HTMLTablePartElement::parseMappedAttribute): Renamed.
3453 * html/HTMLTokenizer.cpp:
3454 (WebCore::HTMLTokenizer::parseTag): Renamed.
3455 * html/PreloadScanner.cpp:
3456 (WebCore::PreloadScanner::processAttribute): Renamed.
3457 (WebCore::PreloadScanner::emitCSSRule): Renamed.
3458 * platform/chromium/ClipboardChromium.cpp:
3459 (WebCore::ClipboardChromium::declareAndWriteDragImage): Renamed.
3460 * platform/chromium/PasteboardChromium.cpp:
3461 (WebCore::Pasteboard::writeImage): Renamed.
3462 * platform/qt/ClipboardQt.cpp:
3463 (WebCore::ClipboardQt::declareAndWriteDragImage): Renamed.
3464 * platform/win/ClipboardWin.cpp:
3465 (WebCore::ClipboardWin::declareAndWriteDragImage): Renamed.
3466 * rendering/HitTestResult.cpp:
3467 (WebCore::HitTestResult::absoluteImageURL): Renamed.
3468 (WebCore::HitTestResult::absoluteMediaURL): Renamed.
3469 (WebCore::HitTestResult::absoluteLinkURL): Renamed.
3470 * svg/SVGAElement.cpp:
3471 (WebCore::SVGAElement::defaultEventHandler): Renamed.
3472 * svg/SVGImageLoader.cpp:
3473 (WebCore::SVGImageLoader::sourceURI): Renamed.
3474 * wml/WMLAElement.cpp:
3475 (WebCore::WMLAElement::defaultEventHandler): Renamed.
3476 * wml/WMLImageLoader.cpp:
3477 (WebCore::WMLImageLoader::sourceURI): Renamed.
3479 2009-07-15 Darin Adler <darin@apple.com>
3481 Reviewed by Dan Bernstein.
3483 CSSHelper.h's parseURL is a function that no one should ever call
3484 Part 1: Eliminate callers in the CSS parser.
3485 https://bugs.webkit.org/show_bug.cgi?id=26599
3487 Test: fast/css/uri-token-parsing.html
3489 * css/CSSHelper.h: Added a comment explaining why nobody should ever call this
3490 function. A FIXME suggests a next step, which would be to rename it deprecatedParseURL.
3492 * css/CSSParser.cpp:
3493 (WebCore::CSSParser::parseValue): Removed unneeded call to parseURL;
3494 CSSParser::text already takes care of parsing the URI token syntax, and the
3495 parseURL function does no good.
3496 (WebCore::CSSParser::parseContent): Ditto.
3497 (WebCore::CSSParser::parseFillImage): Ditto.
3498 (WebCore::CSSParser::parseFontFaceSrc): Ditto.
3499 (WebCore::CSSParser::parseBorderImage): Ditto.
3500 (WebCore::isCSSWhitespace): Added. Helper function that makes the text function
3502 (WebCore::CSSParser::text): Tweak logic so that leading and trailing whitespace
3503 are both trimmed before removing the quote marks. Changed to use the
3504 isCSSWhitespace, isASCIIHexDigit, and toASCIIHexValue functions for clarity.
3506 * css/CSSParser.h: Removed stray "public:" in this header.
3508 * platform/text/StringImpl.cpp:
3509 (WebCore::StringImpl::substring): Optimized the case where the substring covers
3510 the entire string, so we just share the StringImpl instead of making a new one.
3511 This case came up in earlier versions of the CSS parser changes above.
3512 (WebCore::StringImpl::substringCopy): Streamlined the logic here and made it
3513 not call substring any more. Before, this was relying on the substring function
3514 always making a copy of any non-empty substring.
3516 2009-07-15 Darin Adler <darin@apple.com>
3518 Reviewed by John Sullivan.
3520 After double-clicking a word, using Shift-arrow to select behaves unpredictably
3521 https://bugs.webkit.org/show_bug.cgi?id=27177
3522 rdar://problem/7034324
3524 Test: editing/selection/extend-selection-after-double-click.html
3526 The bug was due to the m_lastChangeWasHorizontalExtension flag, which was not
3527 being cleared in many cases where it should have been.
3529 * editing/SelectionController.cpp:
3530 (WebCore::SelectionController::setSelection): Set m_lastChangeWasHorizontalExtension
3531 to false. This catches all sorts of cases that don't flow through the modify function.
3532 Before, the flag would reflect the last call to the modify function, which was not
3533 necessarily the last selection change.
3534 (WebCore::SelectionController::willBeModified): Rearrange function for clarity.
3535 Remove code that sets m_lastChangeWasHorizontalExtension; that is now handled elsewhere.
3536 (WebCore::SelectionController::modify): Call setLastChangeWasHorizontalExtension after
3537 setSelection when setting up a trial selection controller, since setSelection now
3538 clears that flag. Also changed both trial selection controller cases to set the flag,
3539 although it's not strictly necessary in both cases. Added code to set
3540 m_lastChangeWasHorizontalExtension when extending the selection, which used to be
3541 handled in willBeModified. Now we need to do it after the selection change.
3543 2009-07-15 Jeremy Orlow <jorlow@chromium.org>
3545 Reviewed by Dimitri Glazkov.
3547 Need to update DOM Storage files in GYPI file.
3548 https://bugs.webkit.org/show_bug.cgi?id=27317
3550 Need to update DOM Storage files in the GYPI file. They're pretty out
3551 of date and we're on the path towards enabling them for everyone!
3555 2009-07-15 Kwang Yul Seo <skyul@company100.net>
3557 Reviewed by Eric Seidel.
3559 https://bugs.webkit.org/show_bug.cgi?id=26794
3560 Make Yacc-generated parsers to use fastMalloc/fastFree.
3562 Define YYMALLOC and YYFREE to fastMalloc and fastFree
3566 * xml/XPathGrammar.y:
3568 2009-07-15 David Hyatt <hyatt@apple.com>
3570 Reviewed by Adam Roben.
3572 https://bugs.webkit.org/show_bug.cgi?id=27193
3573 Don't run in to anonymous blocks. No other browsers do this, and our implementation of run-in
3574 is effectively broken as a result.
3576 No new tests. Changed fast/runin/001.html and fast/runin/generated.html to match new behavior.
3578 * rendering/RenderBlock.cpp:
3579 (WebCore::RenderBlock::handleRunInChild):
3581 2009-07-15 Yuzo Fujishima <yuzo@google.com>
3583 Reviewed by Darin Adler.
3585 Test: fast/js/instanceof-operator.html
3587 Fix for: Bug 25205 - XMLHttpRequest instance is not an instanceof XMLHttpRequest
3588 https://bugs.webkit.org/show_bug.cgi?id=25205
3590 In addition to for XMLHttpRequest, this also fixes for:
3600 * bindings/js/JSAudioConstructor.cpp:
3601 (WebCore::JSAudioConstructor::JSAudioConstructor):
3602 * bindings/js/JSAudioConstructor.h:
3603 * bindings/js/JSDOMBinding.h:
3604 (WebCore::DOMConstructo