1 2009-06-02 Albert J. Wong <ajwong@chromium.org>
3 Reviewed by Dimitri Glazkov.
5 https://bugs.webkit.org/show_bug.cgi?id=25595
6 Upstream v8_utility.h functions into V8Utilities.h. This patch has
7 some transitional code to make upstreaming easier. This code will
8 be deleted in a few days.
10 * bindings/v8/ScriptFunctionCall.cpp:
11 (WebCore::ScriptFunctionCall::construct): NewInstance -> newInstance.
12 * bindings/v8/V8Utilities.h:
13 (WebCore::AllowAllocation::AllowAllocation): Function added.
14 (WebCore::AllowAllocation::~AllowAllocation): Function added.
15 (WebCore::SafeAllocation::NewInstance): Function added.
16 * bindings/v8/WorkerContextExecutionProxy.cpp:
17 (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
18 NewInstance -> newInstance.
19 (WebCore::WorkerContextExecutionProxy::toV8): NewInstance ->
22 2009-06-02 Dan Bernstein <mitz@apple.com>
24 Reviewed by John Sullivan.
26 - fix <rdar://problem/6940747> Search field’s focus ring is outset
28 * rendering/RenderThemeWin.cpp:
29 (WebCore::RenderThemeWin::adjustSearchFieldStyle): Set the focused
30 search field outline offset to -2.
32 2009-06-02 Sam Weinig <sam@webkit.org>
34 Reviewed by Alexey Proskuryakov.
36 Add list of unimplemented event handlers to DOMWindow.
40 2009-06-02 Alexey Proskuryakov <ap@webkit.org>
42 Reviewed by Sam Weinig.
44 https://bugs.webkit.org/show_bug.cgi?id=26133
45 Adapt and import py-dom-xpath tests
47 Tests: fast/xpath/py-dom-xpath/abbreviations.html
48 fast/xpath/py-dom-xpath/axes.html
49 fast/xpath/py-dom-xpath/data.html
50 fast/xpath/py-dom-xpath/expressions.html
51 fast/xpath/py-dom-xpath/functions.html
52 fast/xpath/py-dom-xpath/nodetests.html
53 fast/xpath/py-dom-xpath/paths.html
54 fast/xpath/py-dom-xpath/predicates.html
56 Fix bugs found with this test suite:
57 - name and local-name were incorrect for processing instructions (XPath expanded-name
58 doesn't match DOM exactly);
59 - name, local-name and namespace functions should crash on attribute nodes;
60 - attemps to make node sets from other types were not detected as errors.
62 No performance impact.
64 * xml/XPathExpressionNode.h: Track type conversion errors that happen during evaluation.
65 An error won't stop evaluation, but an exception will be raised afterwards. We could also
66 detect conversion errors at compile time, but not if we're going to support XPath variables
67 (which is unnecessary for XPathEvaluator, but will be necessary if we decide to make our own
70 * xml/XPathExpression.cpp: (WebCore::XPathExpression::evaluate): Check whether a type
71 conversion exception occurred during evaluation, and raise an excpetion if it did.
73 * xml/XPathFunctions.cpp:
74 (WebCore::XPath::expandedNameLocalPart):
75 (WebCore::XPath::expandedName):
76 XPath name(), local-name() and namespace-uri() functions are defined in terms of expanded-name,
77 which doesn't match anything available via DOM exactly. Calculate the expanded name properly.
78 (WebCore::XPath::FunNamespaceURI::evaluate): This function could crash if used with an
79 attribute node, because it released what was possibly the only reference to attribute node
80 before using it. Changed the function to avoid such situation.
81 (WebCore::XPath::FunLocalName::evaluate): Ditto. Also, used the new expandedNameLocalPart()
82 to work properly with processing instruction nodes.
83 (WebCore::XPath::FunName::evaluate): Ditto (using expandedName()).
84 (WebCore::XPath::FunCount::evaluate): Signal an error if the argument is not a node-set
85 (by using toNodeSet unconditionally, which will raise an error, and return an empty set).
87 * xml/XPathPath.cpp: (WebCore::XPath::Filter::evaluate): Signal an error if the expression
88 evaluation result is not a node-set.
90 * xml/XPathPath.h: (WebCore::XPath::Filter::resultType): A Filter's result is actually
91 always a node-set (this is not so for FilterExpr production in the spec, but is for us,
92 because we don't naively map BNF productions to classes).
94 * xml/XPathPredicate.cpp: (WebCore::XPath::Union::evaluate): Signal an error if either side
97 * xml/XPathStep.cpp: Removed an unnecesary include.
100 (WebCore::XPath::Value::toNodeSet): Signal an error if conversion fails.
101 (WebCore::XPath::Value::modifiableNodeSet): Ditto.
102 (WebCore::XPath::Value::toNumber): Don't allow inputs that don't match XPath Number production
103 (in particular, those using exponential notation).
105 2009-06-01 Sam Weinig <sam@webkit.org>
107 Reviewed by Brady Eidson.
109 Part of https://bugs.webkit.org/show_bug.cgi?id=26100
110 Add missing event handler properties to the DOMWindow
112 Added oncontextmenu, oninput, and onmessage event handlers to
113 the DOMWindow. Aditionally, the onloadstart, onprogress, onstalled,
114 and onsuspend event handlers were implemented but not added to
117 * page/DOMWindow.cpp:
118 (WebCore::DOMWindow::oninput):
119 (WebCore::DOMWindow::setOninput):
120 (WebCore::DOMWindow::onmessage):
121 (WebCore::DOMWindow::setOnmessage):
122 (WebCore::DOMWindow::oncontextmenu):
123 (WebCore::DOMWindow::setOncontextmenu):
125 * page/DOMWindow.idl:
127 2009-06-01 Jeremy Orlow <jorlow@chromium.org>
129 Reviewed by Darin Adler. Landed by Adam Barth.
131 https://bugs.webkit.org/show_bug.cgi?id=26123
133 Remove a redundant checkEncodedString call when constructing a
134 KURL object from a string.
137 (WebCore::KURL::KURL):
139 2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
141 Unreviewed, build fix.
143 Reposition platform guard, improperly placed by http://trac.webkit.org/changeset/44340
146 * platform/KeyboardCodes.h: Repositioned the guard to avoid nested
147 WebCore namespace declarations.
149 2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
151 Unreviewed, build fix.
153 * platform/KeyboardCodes.h: Integrated contents of platform/chromium/KeyboardCodes.h
155 * platform/chromium/KeyboardCodes.h: Removed.
157 2009-06-01 Nikolas Zimmermann <zimmermann@kde.org>
159 Reviewed by Eric Seidel.
161 Fix assertion error in --filters enabled debug builds.
162 Instead of using RefPtr<AtomicStringImpl> as keys for the hash maps in SVGFilterBuilder, just use AtomicString objects.
164 * svg/graphics/filters/SVGFilterBuilder.cpp:
165 (WebCore::SVGFilterBuilder::SVGFilterBuilder):
166 (WebCore::SVGFilterBuilder::add):
167 (WebCore::SVGFilterBuilder::getEffectById):
168 * svg/graphics/filters/SVGFilterBuilder.h:
170 2009-06-01 Nikolas Zimmermann <zimmermann@kde.org>
172 Reviewed by Eric Seidel.
174 Fix --filters enabled build on Mac.
175 Remove unnecessary 'boundingBox' parameter from finishRenderSVGContent() method.
176 Kill several warnings, to make build pass.
178 * rendering/RenderPath.cpp:
179 (WebCore::RenderPath::paint):
180 * rendering/RenderSVGContainer.cpp:
181 (WebCore::RenderSVGContainer::paint):
182 * rendering/RenderSVGImage.cpp:
183 (WebCore::RenderSVGImage::paint):
184 * rendering/RenderSVGRoot.cpp:
185 (WebCore::RenderSVGRoot::paint):
186 * rendering/SVGRenderSupport.cpp:
187 (WebCore::SVGRenderBase::finishRenderSVGContent):
188 * rendering/SVGRenderSupport.h:
189 * rendering/SVGRootInlineBox.cpp:
190 (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
191 * svg/SVGFEGaussianBlurElement.cpp:
192 (WebCore::SVGFEGaussianBlurElement::setStdDeviation):
193 * svg/graphics/filters/SVGFEFlood.cpp:
194 (WebCore::FEFlood::FEFlood):
196 2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
198 Reviewed by Dave Hyatt.
200 Fix Chromium build by adding an #ifdef, restoring the code path to that
201 before http://trac.webkit.org/changeset/44287.
203 * platform/mac/ScrollbarThemeMac.mm:
204 (WebCore::ScrollbarThemeMac::paint): Added an #ifdef.
206 2009-06-01 Dirk Schulze <krit@webkit.org>
208 Reviewed by Nikolas Zimmermann.
210 Remove last pieces of the old SVG filter system. They are not
211 usable with our current filter system. The new filter effects
212 will replace the functionality step by step.
216 * WebCore.vcproj/WebCore.vcproj:
217 * WebCore.xcodeproj/project.pbxproj:
218 * svg/graphics/cairo: Removed.
219 * svg/graphics/cairo/SVGResourceFilterCairo.cpp: Removed.
220 * svg/graphics/cg: Removed.
221 * svg/graphics/cg/SVGResourceFilterCg.cpp: Removed.
222 * svg/graphics/cg/SVGResourceFilterCg.mm: Removed.
223 * svg/graphics/filters/SVGFilterEffect.cpp: Removed.
224 * svg/graphics/filters/SVGFilterEffect.h: Removed.
225 * svg/graphics/filters/cg: Removed.
226 * svg/graphics/filters/cg/SVGFEHelpersCg.h: Removed.
227 * svg/graphics/filters/cg/SVGFEHelpersCg.mm: Removed.
228 * svg/graphics/filters/cg/SVGFilterEffectCg.mm: Removed.
229 * svg/graphics/filters/cg/WKArithmeticFilter.cikernel: Removed.
230 * svg/graphics/filters/cg/WKArithmeticFilter.h: Removed.
231 * svg/graphics/filters/cg/WKArithmeticFilter.m: Removed.
232 * svg/graphics/filters/cg/WKComponentMergeFilter.cikernel: Removed.
233 * svg/graphics/filters/cg/WKComponentMergeFilter.h: Removed.
234 * svg/graphics/filters/cg/WKComponentMergeFilter.m: Removed.
235 * svg/graphics/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
236 * svg/graphics/filters/cg/WKDiffuseLightingFilter.h: Removed.
237 * svg/graphics/filters/cg/WKDiffuseLightingFilter.m: Removed.
238 * svg/graphics/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
239 * svg/graphics/filters/cg/WKDiscreteTransferFilter.h: Removed.
240 * svg/graphics/filters/cg/WKDiscreteTransferFilter.m: Removed.
241 * svg/graphics/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
242 * svg/graphics/filters/cg/WKDisplacementMapFilter.h: Removed.
243 * svg/graphics/filters/cg/WKDisplacementMapFilter.m: Removed.
244 * svg/graphics/filters/cg/WKDistantLightFilter.cikernel: Removed.
245 * svg/graphics/filters/cg/WKDistantLightFilter.h: Removed.
246 * svg/graphics/filters/cg/WKDistantLightFilter.m: Removed.
247 * svg/graphics/filters/cg/WKGammaTransferFilter.cikernel: Removed.
248 * svg/graphics/filters/cg/WKGammaTransferFilter.h: Removed.
249 * svg/graphics/filters/cg/WKGammaTransferFilter.m: Removed.
250 * svg/graphics/filters/cg/WKIdentityTransferFilter.h: Removed.
251 * svg/graphics/filters/cg/WKIdentityTransferFilter.m: Removed.
252 * svg/graphics/filters/cg/WKLinearTransferFilter.cikernel: Removed.
253 * svg/graphics/filters/cg/WKLinearTransferFilter.h: Removed.
254 * svg/graphics/filters/cg/WKLinearTransferFilter.m: Removed.
255 * svg/graphics/filters/cg/WKNormalMapFilter.cikernel: Removed.
256 * svg/graphics/filters/cg/WKNormalMapFilter.h: Removed.
257 * svg/graphics/filters/cg/WKNormalMapFilter.m: Removed.
258 * svg/graphics/filters/cg/WKPointLightFilter.cikernel: Removed.
259 * svg/graphics/filters/cg/WKPointLightFilter.h: Removed.
260 * svg/graphics/filters/cg/WKPointLightFilter.m: Removed.
261 * svg/graphics/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
262 * svg/graphics/filters/cg/WKSpecularLightingFilter.h: Removed.
263 * svg/graphics/filters/cg/WKSpecularLightingFilter.m: Removed.
264 * svg/graphics/filters/cg/WKSpotLightFilter.cikernel: Removed.
265 * svg/graphics/filters/cg/WKSpotLightFilter.h: Removed.
266 * svg/graphics/filters/cg/WKSpotLightFilter.m: Removed.
267 * svg/graphics/filters/cg/WKTableTransferFilter.cikernel: Removed.
268 * svg/graphics/filters/cg/WKTableTransferFilter.h: Removed.
269 * svg/graphics/filters/cg/WKTableTransferFilter.m: Removed.
270 * svg/graphics/mac: Removed.
271 * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h: Removed.
272 * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
273 * svg/graphics/qt: Removed.
274 * svg/graphics/qt/SVGResourceFilterQt.cpp: Removed.
275 * svg/graphics/skia: Removed.
276 * svg/graphics/skia/SVGResourceFilterSkia.cpp: Removed.
278 2009-06-01 Dmitry Titov <dimich@chromium.org>
280 Fix the previous checkin (ttp://trac.webkit.org/changeset/44327).
281 This adds a comment suggested during review.
283 * platform/ThreadGlobalData.cpp:
284 (WebCore::ThreadGlobalData::~ThreadGlobalData): Add comment clarifying the change.
286 2009-06-01 Dmitry Titov <dimich@chromium.org>
288 Reviewed by Darin Adler.
290 https://bugs.webkit.org/show_bug.cgi?id=25973
291 Avoid calling CurrentThread() in thread-specific destructors in OSX Chromium.
292 Pthreads invoke thread-specific destructors after WTF::detachThread() is called and ThreadIdentifier
293 for the thread removed from the WTF thread map. Calling CurrentThread() in such destructor causes
294 the ThreadIdentifier to be re-created and inserted into the map again. Since Pthreads on OSX reuse
295 the pthread_t between threads, the next created thread will have the same pthread_t and cause an assert
296 in establishIdentifierForPthreadHandle() since the id is already in the map.
298 The behavior is covered by existing test LayoutTests/fast/workers/worker-terminate.html, which currently fails
299 on OSX Chromium and will stop failing after this change.
301 * platform/ThreadGlobalData.h:
302 * platform/ThreadGlobalData.cpp:
303 (WebCore::ThreadGlobalData::~ThreadGlobalData):
304 Store the result of "isMainThread()" in a member variable during construction of thread-specific data
305 to avoid calling IsMainThread() in destructor, since the latter calls CurrentThread() in OSX Chromium.
307 2009-06-01 David Levin <levin@chromium.org>
309 Reviewed by Darin Alder and Maciej Stachowiak.
311 Bug 26057: StringImpl should share buffers with UString.
312 https://bugs.webkit.org/show_bug.cgi?id=26057
314 This change results in the following performance improvements:
315 On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/001.html
316 the time went from 78ms to 40ms for append (other times remained constant).
318 On http://www.hixie.ch/tests/adhoc/perf/dom/artificial/core/002.html,
319 the time went from 3900ms to 2600ms.
321 For http://dromaeo.com/?dom, the time for DomModification improved by ~6%.
322 Other tests in dom seemed to be faster across several runs but within the
323 margin of error (except DOM Attributes which was slightly ~1.5% worse).
325 Existing tests cover this code and there is no new functionality
326 that is exposed to test.
328 * platform/text/AtomicString.cpp:
329 (WebCore::AtomicString::add):
330 * platform/text/String.cpp:
331 (WebCore::String::String):
332 (WebCore::String::operator UString):
333 * platform/text/StringImpl.cpp:
334 (WebCore::StringImpl::StringImpl):
335 (WebCore::StringImpl::~StringImpl):
336 (WebCore::StringImpl::create): Consumes a shared buffer.
337 (WebCore::StringImpl::ustring): Shares the StringImpl's buffer with the UString.
338 (WebCore::StringImpl::sharedBuffer): Exposes the buffer that may be shared.
339 * platform/text/StringImpl.h:
340 (WebCore::StringImpl::hasTerminatingNullCharacter):
341 (WebCore::StringImpl::inTable):
342 (WebCore::StringImpl::setInTable): Converted the bools to be inside of PtrAndFlags
343 to avoid growing StringImpl in size.
345 2009-06-01 Dimitri Glazkov <dglazkov@chromium.org>
347 Unreviewed, build fix.
349 V8 bindings follow-up to to DOMWindow-related cleanup:
350 http://trac.webkit.org/changeset/44215
352 * bindings/v8/ScriptController.cpp: Removed disconnectFrame(), relocated
353 its body to destructor.
354 * bindings/v8/ScriptController.h: Removed disconnectFrame() decl.
356 2009-05-28 Pavel Feldman <pfeldman@chromium.org>
358 Reviewed by Timothy Hatcher.
360 - Add panel enabler to the resources panel.
361 - Add session / always options into the panel enabler.
362 - Make enabled status for three panels sticky (globally).
363 - Persist enabled status using InspectorController::Settings
364 - Make InspectorController produce no network-related overhead when
365 resources panel is not enabled.
367 https://bugs.webkit.org/show_bug.cgi?id=26046
369 * inspector/InspectorController.cpp:
370 (WebCore::InspectorController::InspectorController):
371 (WebCore::InspectorController::setWindowVisible):
372 (WebCore::InspectorController::populateScriptObjects):
373 (WebCore::InspectorController::identifierForInitialRequest):
374 (WebCore::InspectorController::willSendRequest):
375 (WebCore::InspectorController::didReceiveResponse):
376 (WebCore::InspectorController::didReceiveContentLength):
377 (WebCore::InspectorController::didFinishLoading):
378 (WebCore::InspectorController::didFailLoading):
379 (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
380 (WebCore::InspectorController::scriptImported):
381 (WebCore::InspectorController::enableResourceTracking):
382 (WebCore::InspectorController::disableResourceTracking):
383 (WebCore::InspectorController::startUserInitiatedProfiling):
384 (WebCore::InspectorController::enableProfiler):
385 (WebCore::InspectorController::disableProfiler):
386 (WebCore::InspectorController::enableDebugger):
387 (WebCore::InspectorController::disableDebugger):
388 * inspector/InspectorController.h:
389 (WebCore::InspectorController::Setting::Setting):
390 (WebCore::InspectorController::resourceTrackingEnabled):
391 * inspector/InspectorController.idl:
392 * inspector/InspectorFrontend.cpp:
393 (WebCore::InspectorFrontend::resourceTrackingWasEnabled):
394 (WebCore::InspectorFrontend::resourceTrackingWasDisabled):
395 * inspector/InspectorFrontend.h:
396 * inspector/front-end/PanelEnablerView.js:
397 (WebInspector.PanelEnablerView.enableOption):
398 (WebInspector.PanelEnablerView):
399 (WebInspector.PanelEnablerView.prototype._windowResized):
400 (WebInspector.PanelEnablerView.prototype.alwaysWasChosen):
401 * inspector/front-end/ProfilesPanel.js:
402 (WebInspector.ProfilesPanel.prototype._enableProfiling):
403 (WebInspector.ProfilesPanel.prototype._toggleProfiling):
404 * inspector/front-end/ResourcesPanel.js:
405 (WebInspector.ResourcesPanel):
406 (WebInspector.ResourcesPanel.prototype.get statusBarItems):
407 (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
408 (WebInspector.ResourcesPanel.prototype.resourceTrackingWasDisabled):
409 (WebInspector.ResourcesPanel.prototype.reset):
410 (WebInspector.ResourcesPanel.prototype._updateSidebarWidth):
411 (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
412 (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
413 * inspector/front-end/ScriptsPanel.js:
414 (WebInspector.ScriptsPanel.prototype._enableDebugging):
415 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
416 * inspector/front-end/inspector.css:
417 * inspector/front-end/inspector.js:
418 (WebInspector.resourceTrackingWasEnabled):
419 (WebInspector.resourceTrackingWasDisabled):
421 2009-06-01 Drew Wilson <atwilson@google.com>
423 Reviewed by Darin Adler. Landed (and tweaked) by Adam Barth.
425 https://bugs.webkit.org/show_bug.cgi?id=25902
427 Added WorkerContext.close()
429 Test: fast/workers/worker-close.html
431 * workers/WorkerContext.cpp:
432 (WebCore::WorkerContext::close):
433 * workers/WorkerContext.h:
434 * workers/WorkerContext.idl:
435 * workers/WorkerMessagingProxy.cpp:
436 (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
438 2009-06-01 Alexey Proskuryakov <ap@webkit.org>
440 Reviewed by Darin Adler.
442 https://bugs.webkit.org/show_bug.cgi?id=12471
443 XPathResult not invalidated for documents retrieved via XMLHttpRequest
445 Test: fast/xpath/detached-subtree-invalidate-iterator.html and existing tests in dom/svg/level3/xpath.
447 Use DOM tree version instead of DOMSubtreeModified events to invalidate, which is more
448 reliable and much faster.
450 * xml/XPathExpression.cpp:
451 (WebCore::XPathExpression::evaluate):
452 * xml/XPathResult.cpp:
453 (WebCore::XPathResult::XPathResult):
454 (WebCore::XPathResult::~XPathResult):
455 (WebCore::XPathResult::invalidIteratorState):
456 (WebCore::XPathResult::iterateNext):
458 (WebCore::XPathResult::create):
460 2009-06-01 Brett Wilson <brettw@chromium.org>
462 Reviewed by Darin Adler. Landed by Adam Barth.
464 https://bugs.webkit.org/show_bug.cgi?id=25750
466 Test: fast/transforms/bounding-rect-zoom.html
468 Make getClientRects and getBoundingClientRect account for ther zoom
472 (WebCore::adjustFloatPointForAbsoluteZoom):
473 (WebCore::adjustFloatQuadForAbsoluteZoom):
474 (WebCore::adjustIntRectForAbsoluteZoom):
475 (WebCore::Element::getClientRects):
476 (WebCore::Element::getBoundingClientRect):
478 2009-06-01 Tony Chang <tony@chromium.org>
480 Reviewed by Dimitri Glazkov. Landed by Adam Barth.
482 https://bugs.webkit.org/show_bug.cgi?id=26026
484 Fix an infinite loop when using the keyboard in Chromium select
487 Not testable since it involves sending a keyboard event to
488 the popup, which is not possible (eventSender sends the key
489 events through webview, we want to go through the webwidget).
491 * platform/chromium/PopupMenuChromium.cpp:
493 2009-06-01 Nate Chapin <japhet@google.com>
495 Reviewed by Dimitri Glazkov. Landed by Adam Barth.
497 If a url with an anchor is being loaded, ensure that the anchor remains locked in view until the page
498 has finished loading compeltely or the user has manually scrolled. Refreshing an anchor url after
499 scrolling to a new location on the page will still result in jumping to the new location.
501 https://bugs.webkit.org/show_bug.cgi?id=26034
503 * loader/FrameLoader.cpp:
504 (WebCore::FrameLoader::gotoAnchor): Set anchor lock after navigating to anchor.
505 (WebCore::FrameLoader::completed): Release anchor lock.
506 * page/FrameView.cpp:
507 (WebCore::FrameView::FrameView): Ensure anchor lock starts unset.
508 (WebCore::FrameView::reset): Ensure anchor lock starts unset.
509 (WebCore::FrameView::layout): If anchor lock is set, force a gotoAnchor() after layout.
510 (WebCore::FrameView::scrollRectIntoViewRecursively): Release anchor lock if a programmatic scroll begins.
511 (WebCore::FrameView::setWasScrolledByUser): Release anchor lock if user manually scrolls.
512 (WebCore::FrameView::setScrollPosition): Release anchor lock if a programmatic scroll begins.
514 (WebCore::FrameView::lockedToAnchor): Added.
515 (WebCore::FrameView::setLockedToAnchor): Added.
517 2009-05-31 Dirk Schulze <krit@webkit.org>
519 Reviewed by Nikolas Zimmermann.
521 WebKit needs cross-platform filter system
522 [https://bugs.webkit.org/show_bug.cgi?id=19991]
524 A short clean-up. FilterBuilder is SVG specific. Move it
525 to svg/graphics/filters and rename it to SVGFilterBuilder.
529 * WebCore.xcodeproj/project.pbxproj:
530 * svg/FilterBuilder.cpp: Removed.
531 * svg/FilterBuilder.h: Removed.
532 * svg/SVGFilterElement.cpp:
533 * svg/SVGFilterPrimitiveStandardAttributes.h:
534 * svg/graphics/SVGResourceFilter.cpp:
535 (WebCore::SVGResourceFilter::SVGResourceFilter):
536 * svg/graphics/SVGResourceFilter.h:
537 (WebCore::SVGResourceFilter::builder):
538 * svg/graphics/filters/SVGFilterBuilder.cpp: Added.
539 (WebCore::SVGFilterBuilder::SVGFilterBuilder):
540 (WebCore::SVGFilterBuilder::add):
541 (WebCore::SVGFilterBuilder::getEffectById):
542 (WebCore::SVGFilterBuilder::clearEffects):
543 * svg/graphics/filters/SVGFilterBuilder.h: Added.
544 (WebCore::SVGFilterBuilder::lastEffect):
546 2009-05-31 Alexey Proskuryakov <ap@webkit.org>
548 Reviewed by Darin Adler.
550 https://bugs.webkit.org/show_bug.cgi?id=13233
551 Need to implement an optimizing XPath evaluator
553 Avoid sorting results of hierarchical paths that are naturally sorted. On a flat data structure
554 with 128K nodes and a simple XPath expression, this changes evaluation time from 1.5 minutes
557 * xml/XPathNodeSet.h: Keep track of whether subtrees rooted at nodes in set are disjoint,
558 which is useful for optimization.
559 (WebCore::XPath::NodeSet::NodeSet): Removed, it was identical to compiler generated one.
560 (WebCore::XPath::NodeSet::operator=): Ditto.
561 (WebCore::XPath::NodeSet::swap): Ditto.
562 (WebCore::XPath::NodeSet::isSorted): Single element sets are always sorted, even if sort()
564 (WebCore::XPath::NodeSet::markSubtreesDisjoint): Just like being sorted, the new flag is
565 maintained by callers.
566 (WebCore::XPath::NodeSet::subtreesAreDisjoint): A single element set only has one subtree.
567 Currently, the only way for a set to gain this flag is to be produced from a single element
568 set with a hierarchical location path.
570 * xml/XPathPath.cpp: (WebCore::XPath::LocationPath::evaluate): Use the new flag to avoid
571 maintaining a set of unique nodes, and to avoid sorting the result.
573 2009-05-31 Alexey Proskuryakov <ap@webkit.org>
575 Reviewed by Darin Adler.
577 https://bugs.webkit.org/show_bug.cgi?id=13233
578 Need to implement an optimizing XPath evaluator
580 This patch adds some infrastructure and simple optimizations. Namely,
581 - we now avoid building a full NodeSet just to evaluate a predicate in some cases;
582 - "/descendant-or-self::node()/child::" is optimized to iterate the tree once when possible;
584 * xml/XPathExpressionNode.cpp:
585 (WebCore::XPath::Expression::Expression):
586 * xml/XPathExpressionNode.h:
587 (WebCore::XPath::Expression::addSubExpression):
588 (WebCore::XPath::Expression::isContextNodeSensitive):
589 (WebCore::XPath::Expression::isContextPositionSensitive):
590 (WebCore::XPath::Expression::isContextSizeSensitive):
591 (WebCore::XPath::Expression::setIsContextNodeSensitive):
592 (WebCore::XPath::Expression::setIsContextPositionSensitive):
593 (WebCore::XPath::Expression::setIsContextSizeSensitive):
594 XPath expression now knows its result type, and whether evaluation depends on context.
596 * xml/XPathFunctions.cpp:
597 (WebCore::XPath::FunLast::resultType):
598 (WebCore::XPath::FunLast::FunLast):
599 (WebCore::XPath::FunPosition::resultType):
600 (WebCore::XPath::FunPosition::FunPosition):
601 (WebCore::XPath::FunCount::resultType):
602 (WebCore::XPath::FunId::resultType):
603 (WebCore::XPath::FunLocalName::resultType):
604 (WebCore::XPath::FunLocalName::FunLocalName):
605 (WebCore::XPath::FunNamespaceURI::resultType):
606 (WebCore::XPath::FunNamespaceURI::FunNamespaceURI):
607 (WebCore::XPath::FunName::resultType):
608 (WebCore::XPath::FunName::FunName):
609 (WebCore::XPath::FunString::resultType):
610 (WebCore::XPath::FunString::FunString):
611 (WebCore::XPath::FunConcat::resultType):
612 (WebCore::XPath::FunStartsWith::resultType):
613 (WebCore::XPath::FunContains::resultType):
614 (WebCore::XPath::FunSubstringBefore::resultType):
615 (WebCore::XPath::FunSubstringAfter::resultType):
616 (WebCore::XPath::FunSubstring::resultType):
617 (WebCore::XPath::FunStringLength::resultType):
618 (WebCore::XPath::FunStringLength::FunStringLength):
619 (WebCore::XPath::FunNormalizeSpace::resultType):
620 (WebCore::XPath::FunNormalizeSpace::FunNormalizeSpace):
621 (WebCore::XPath::FunTranslate::resultType):
622 (WebCore::XPath::FunBoolean::resultType):
623 (WebCore::XPath::FunNot::resultType):
624 (WebCore::XPath::FunTrue::resultType):
625 (WebCore::XPath::FunFalse::resultType):
626 (WebCore::XPath::FunLang::resultType):
627 (WebCore::XPath::FunLang::FunLang):
628 (WebCore::XPath::FunNumber::resultType):
629 (WebCore::XPath::FunNumber::FunNumber):
630 (WebCore::XPath::FunSum::resultType):
631 (WebCore::XPath::FunFloor::resultType):
632 (WebCore::XPath::FunCeiling::resultType):
633 (WebCore::XPath::FunRound::resultType):
634 (WebCore::XPath::Function::setArguments):
635 Set optimization details for the expression. Normally, a function does not introduce context
636 node set dependency, but some use context node as default argument, or otherwise use the context.
638 * xml/XPathFunctions.h: Tweaked style.
641 (WebCore::XPath::Filter::Filter): A filter is as context node set sensitive as its expression is.
642 (WebCore::XPath::LocationPath::LocationPath): A location path can only be context node sensitive,
643 and only if the path relative.
644 (WebCore::XPath::LocationPath::appendStep): Invoke compile-time Step optimizations.
645 (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
646 (WebCore::XPath::Path::Path): A path is as context node set sensitive as its filter is.
649 (WebCore::XPath::Filter::resultType): Result type of a filter is the same as of its expression
650 (useful filters return NodeSets, of course).
651 (WebCore::XPath::LocationPath::setAbsolute): An absolute location path if context node set
653 (WebCore::XPath::LocationPath::resultType): A path's result is always a node set.
654 (WebCore::XPath::Path::resultType): Ditto.
656 * xml/XPathPredicate.h:
657 (WebCore::XPath::Number::resultType): Return a proper result type.
658 (WebCore::XPath::StringExpression::resultType): Ditto.
659 (WebCore::XPath::Negative::resultType): Ditto.
660 (WebCore::XPath::NumericOp::resultType): Ditto.
661 (WebCore::XPath::EqTestOp::resultType): Ditto.
662 (WebCore::XPath::LogicalOp::resultType): Ditto.
663 (WebCore::XPath::Union::resultType): Ditto.
664 (WebCore::XPath::Predicate::isContextPositionSensitive): A predicate can be context position
665 sensitive even if its expression is not, because e.g. [5] is a shortcut for [position()=5].
666 (WebCore::XPath::Predicate::isContextSizeSensitive): This matches expression result.
669 (WebCore::XPath::Step::NodeTest::Kind): Removed unused ElementNodeTest, which was previously
670 borrowed from XPath 2.0 to express some optimizations.
671 (WebCore::XPath::Step::NodeTest::mergedPredicates): To avoid building a huge node set and
672 filtering it with predicates, we now try to apply predicates while enumerating an axis.
673 (WebCore::XPath::Step::nodeTest): Expose m_nodeTest.
676 (WebCore::XPath::Step::~Step): The step owns NodeTest merged predicates, so it is still
677 possible to copy NodeTests.
678 (WebCore::XPath::Step::optimize): Merge predicates into NodeTest if possible.
679 (WebCore::XPath::optimizeStepPair): Optimize some expressions containing "//".
680 (WebCore::XPath::Step::predicatesAreContextListInsensitive): The above optimization is only
681 possible if there are no context sensitive predicates for "//".
682 (WebCore::XPath::Step::evaluate): Track context position for the first merged predicate.
683 (WebCore::XPath::nodeMatchesBasicTest): Check whether the node matches node test, ignoring
685 (WebCore::XPath::nodeMatches): Additionally check merged predicates, and update position.
686 (WebCore::XPath::Step::nodesInAxis): Check merged predicates in optimized attribute code
689 * xml/XPathVariableReference.h: (WebCore::XPath::VariableReference::resultType): Variable
690 references are not used with XPathEvaluator, so we'll only need them if we decide to
691 reimplement XSLT. The type of variable reference is not known at compile time.
693 2009-05-31 Sam Weinig <sam@webkit.org>
695 Rubber-stamped by Dan Bernstein.
697 Remove unused JSEventTargetBase.h
700 * WebCore.vcproj/WebCore.vcproj:
701 * WebCore.xcodeproj/project.pbxproj:
702 * bindings/js/JSEventTargetBase.h: Removed.
704 2009-05-31 Sam Weinig <sam@webkit.org>
706 Reviewed by Dan Bernstein.
708 Part of https://bugs.webkit.org/show_bug.cgi?id=26100
709 Add missing event handler properties to the DOMWindow
711 Add missing oncanplay, oncanplaythrough, ondurationchange, onemptied,
712 onended, onloadeddata, onloadedmetadata, onpause, onplay, onplaying,
713 onratechange, onseeked, onseeking, ontimeupdate, onvolumechange,
714 onwaiting, onloadstart, onprogress, onstalled, onsuspend, ondrag,
715 ondragend, ondragenter, ondragleave, ondragover, ondragstart and
716 ondrop event handlers to the DOMWindow.
718 * page/DOMWindow.cpp:
719 (WebCore::DOMWindow::ondrag):
720 (WebCore::DOMWindow::setOndrag):
721 (WebCore::DOMWindow::ondragend):
722 (WebCore::DOMWindow::setOndragend):
723 (WebCore::DOMWindow::ondragenter):
724 (WebCore::DOMWindow::setOndragenter):
725 (WebCore::DOMWindow::ondragleave):
726 (WebCore::DOMWindow::setOndragleave):
727 (WebCore::DOMWindow::ondragover):
728 (WebCore::DOMWindow::setOndragover):
729 (WebCore::DOMWindow::ondragstart):
730 (WebCore::DOMWindow::setOndragstart):
731 (WebCore::DOMWindow::ondrop):
732 (WebCore::DOMWindow::setOndrop):
733 (WebCore::DOMWindow::oncanplay):
734 (WebCore::DOMWindow::setOncanplay):
735 (WebCore::DOMWindow::oncanplaythrough):
736 (WebCore::DOMWindow::setOncanplaythrough):
737 (WebCore::DOMWindow::ondurationchange):
738 (WebCore::DOMWindow::setOndurationchange):
739 (WebCore::DOMWindow::onemptied):
740 (WebCore::DOMWindow::setOnemptied):
741 (WebCore::DOMWindow::onended):
742 (WebCore::DOMWindow::setOnended):
743 (WebCore::DOMWindow::onloadeddata):
744 (WebCore::DOMWindow::setOnloadeddata):
745 (WebCore::DOMWindow::onloadedmetadata):
746 (WebCore::DOMWindow::setOnloadedmetadata):
747 (WebCore::DOMWindow::onpause):
748 (WebCore::DOMWindow::setOnpause):
749 (WebCore::DOMWindow::onplay):
750 (WebCore::DOMWindow::setOnplay):
751 (WebCore::DOMWindow::onplaying):
752 (WebCore::DOMWindow::setOnplaying):
753 (WebCore::DOMWindow::onratechange):
754 (WebCore::DOMWindow::setOnratechange):
755 (WebCore::DOMWindow::onseeked):
756 (WebCore::DOMWindow::setOnseeked):
757 (WebCore::DOMWindow::onseeking):
758 (WebCore::DOMWindow::setOnseeking):
759 (WebCore::DOMWindow::ontimeupdate):
760 (WebCore::DOMWindow::setOntimeupdate):
761 (WebCore::DOMWindow::onvolumechange):
762 (WebCore::DOMWindow::setOnvolumechange):
763 (WebCore::DOMWindow::onwaiting):
764 (WebCore::DOMWindow::setOnwaiting):
765 (WebCore::DOMWindow::onloadstart):
766 (WebCore::DOMWindow::setOnloadstart):
767 (WebCore::DOMWindow::onprogress):
768 (WebCore::DOMWindow::setOnprogress):
769 (WebCore::DOMWindow::onstalled):
770 (WebCore::DOMWindow::setOnstalled):
771 (WebCore::DOMWindow::onsuspend):
772 (WebCore::DOMWindow::setOnsuspend):
774 * page/DOMWindow.idl:
776 2009-05-31 Sam Weinig <sam@webkit.org>
778 Reviewed by Anders Carlsson.
780 Part of https://bugs.webkit.org/show_bug.cgi?id=26100
781 Add missing event handler properties to the DOMWindow
783 Add missing onstorage event handler to the DOMWindow.
785 * page/DOMWindow.cpp:
786 (WebCore::DOMWindow::onstorage):
787 (WebCore::DOMWindow::setOnstorage):
789 * page/DOMWindow.idl:
791 2009-05-30 Sam Weinig <sam@webkit.org>
793 Reviewed by Mark Rowe.
795 Fix for https://bugs.webkit.org/show_bug.cgi?id=26110
796 Update online/offline events to match the current spec.
797 - Also adds window.ononline and window.onoffline event handler
800 * page/DOMWindow.cpp:
801 (WebCore::DOMWindow::onoffline):
802 (WebCore::DOMWindow::setOnoffline):
803 (WebCore::DOMWindow::ononline):
804 (WebCore::DOMWindow::setOnonline):
806 * page/DOMWindow.idl:
808 (WebCore::networkStateChanged):
810 2009-05-31 Dirk Schulze <krit@webkit.org>
812 Reviewed by Nikolas Zimmermann.
814 WebKit needs cross-platform filter system
815 [https://bugs.webkit.org/show_bug.cgi?id=19991]
817 Make use of the new filter system in WebCore for SVG. Deleted Mac bindings
818 and replace it by a platform independent code. Calculation of subRegions
819 is missing but needed for a first filter effect.
823 * WebCore.vcproj/WebCore.vcproj:
824 * WebCore.xcodeproj/project.pbxproj:
825 * platform/graphics/filters/Filter.h:
826 (WebCore::Filter::~Filter):
827 (WebCore::Filter::setSourceImage):
828 * rendering/SVGRenderSupport.cpp:
829 (WebCore::SVGRenderBase::prepareToRenderSVGContent):
830 (WebCore::SVGRenderBase::finishRenderSVGContent):
831 * svg/FilterBuilder.h:
832 (WebCore::FilterBuilder::lastEffect):
833 * svg/SVGFEBlendElement.cpp:
834 (WebCore::SVGFEBlendElement::SVGFEBlendElement):
835 (WebCore::SVGFEBlendElement::build):
836 * svg/SVGFEBlendElement.h:
837 * svg/SVGFEColorMatrixElement.cpp:
838 (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
839 (WebCore::SVGFEColorMatrixElement::build):
840 * svg/SVGFEColorMatrixElement.h:
841 * svg/SVGFEComponentTransferElement.cpp:
842 (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
843 (WebCore::SVGFEComponentTransferElement::build):
844 * svg/SVGFEComponentTransferElement.h:
845 * svg/SVGFECompositeElement.cpp:
846 (WebCore::SVGFECompositeElement::SVGFECompositeElement):
847 (WebCore::SVGFECompositeElement::build):
848 * svg/SVGFECompositeElement.h:
849 * svg/SVGFEDiffuseLightingElement.cpp:
850 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
851 (WebCore::SVGFEDiffuseLightingElement::build):
852 * svg/SVGFEDiffuseLightingElement.h:
853 * svg/SVGFEDisplacementMapElement.cpp:
854 (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
855 (WebCore::SVGFEDisplacementMapElement::build):
856 * svg/SVGFEDisplacementMapElement.h:
857 * svg/SVGFEFloodElement.cpp:
858 (WebCore::SVGFEFloodElement::SVGFEFloodElement):
859 (WebCore::SVGFEFloodElement::build):
860 * svg/SVGFEFloodElement.h:
861 * svg/SVGFEGaussianBlurElement.cpp:
862 (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
863 (WebCore::SVGFEGaussianBlurElement::build):
864 * svg/SVGFEGaussianBlurElement.h:
865 * svg/SVGFEImageElement.cpp:
866 (WebCore::SVGFEImageElement::SVGFEImageElement):
867 (WebCore::SVGFEImageElement::notifyFinished):
868 (WebCore::SVGFEImageElement::build):
869 * svg/SVGFEImageElement.h:
870 * svg/SVGFEMergeElement.cpp:
871 (WebCore::SVGFEMergeElement::SVGFEMergeElement):
872 (WebCore::SVGFEMergeElement::build):
873 * svg/SVGFEMergeElement.h:
874 * svg/SVGFEOffsetElement.cpp:
875 (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
876 (WebCore::SVGFEOffsetElement::build):
877 * svg/SVGFEOffsetElement.h:
878 * svg/SVGFESpecularLightingElement.cpp:
879 (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
880 (WebCore::SVGFESpecularLightingElement::build):
881 * svg/SVGFESpecularLightingElement.h:
882 * svg/SVGFETileElement.cpp:
883 (WebCore::SVGFETileElement::SVGFETileElement):
884 (WebCore::SVGFETileElement::build):
885 * svg/SVGFETileElement.h:
886 * svg/SVGFETurbulenceElement.cpp:
887 (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
888 (WebCore::SVGFETurbulenceElement::build):
889 * svg/SVGFETurbulenceElement.h:
890 * svg/SVGFilterElement.cpp:
891 (WebCore::SVGFilterElement::canvasResource):
892 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
893 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
894 * svg/SVGFilterPrimitiveStandardAttributes.h:
895 (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
896 * svg/graphics/SVGResourceFilter.cpp:
897 (WebCore::SVGResourceFilter::SVGResourceFilter):
898 (WebCore::SVGResourceFilter::addFilterEffect):
899 (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
900 (WebCore::SVGResourceFilter::prepareFilter):
901 (WebCore::SVGResourceFilter::applyFilter):
902 (WebCore::SVGResourceFilter::externalRepresentation):
903 * svg/graphics/SVGResourceFilter.h:
904 (WebCore::SVGResourceFilter::filterBoundingBox):
905 (WebCore::SVGResourceFilter::setFilterBoundingBox):
906 (WebCore::SVGResourceFilter::itemBoundingBox):
907 (WebCore::SVGResourceFilter::setItemBoundingBox):
908 (WebCore::SVGResourceFilter::builder):
910 2009-05-31 Dirk Schulze <krit@webkit.org>
912 Reviewed by Nikolas Zimmermann.
914 WebKit needs cross-platform filter system
915 [https://bugs.webkit.org/show_bug.cgi?id=19991]
917 Adding 'in1' attribute support for <feFlood>, as specified in SVG 1.1.
918 This change helps creating test cases, once filters are activated.
920 * svg/SVGFEFloodElement.cpp:
921 (WebCore::SVGFEFloodElement::SVGFEFloodElement):
922 (WebCore::SVGFEFloodElement::parseMappedAttribute):
923 (WebCore::SVGFEFloodElement::build):
924 * svg/SVGFEFloodElement.h:
925 * svg/SVGFEFloodElement.idl:
926 * svg/graphics/filters/SVGFEFlood.cpp:
927 (WebCore::FEFlood::FEFlood):
928 (WebCore::FEFlood::create):
929 * svg/graphics/filters/SVGFEFlood.h:
931 2009-05-31 Dirk Schulze <krit@webkit.org>
933 Reviewed by Nikolas Zimmermann.
935 WebKit needs cross-platform filter system
936 [https://bugs.webkit.org/show_bug.cgi?id=19991]
938 Replace all occurrences of SVGResourceFilter by Filter. This is the last
939 step for a SVG independent filter system. Every other part of WebCore can
940 use the filter system by creating a new Filter object.
944 * WebCore.xcodeproj/project.pbxproj:
945 * platform/graphics/filters/FEBlend.cpp:
946 (WebCore::FEBlend::apply):
947 * platform/graphics/filters/FEBlend.h:
948 * platform/graphics/filters/FEColorMatrix.cpp:
949 (WebCore::FEColorMatrix::apply):
950 * platform/graphics/filters/FEColorMatrix.h:
951 * platform/graphics/filters/FEComponentTransfer.cpp:
952 (WebCore::FEComponentTransfer::apply):
953 * platform/graphics/filters/FEComponentTransfer.h:
954 * platform/graphics/filters/FEComposite.cpp:
955 (WebCore::FEComposite::apply):
956 * platform/graphics/filters/FEComposite.h:
957 * platform/graphics/filters/Filter.h: Added.
958 (WebCore::Filter::setSourceImage):
959 (WebCore::Filter::sourceImage):
960 * platform/graphics/filters/FilterEffect.h:
961 * platform/graphics/filters/SourceAlpha.cpp:
962 (WebCore::SourceAlpha::apply):
963 * platform/graphics/filters/SourceAlpha.h:
964 * platform/graphics/filters/SourceGraphic.cpp:
965 (WebCore::SourceGraphic::apply):
966 * platform/graphics/filters/SourceGraphic.h:
967 * svg/Filter.cpp: Removed.
968 * svg/Filter.h: Removed.
969 * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
970 (WebCore::FEConvolveMatrix::apply):
971 * svg/graphics/filters/SVGFEConvolveMatrix.h:
972 * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
973 (WebCore::FEDiffuseLighting::apply):
974 * svg/graphics/filters/SVGFEDiffuseLighting.h:
975 * svg/graphics/filters/SVGFEDisplacementMap.cpp:
976 (WebCore::FEDisplacementMap::apply):
977 * svg/graphics/filters/SVGFEDisplacementMap.h:
978 * svg/graphics/filters/SVGFEFlood.cpp:
979 (WebCore::FEFlood::apply):
980 * svg/graphics/filters/SVGFEFlood.h:
981 * svg/graphics/filters/SVGFEGaussianBlur.cpp:
982 (WebCore::FEGaussianBlur::apply):
983 * svg/graphics/filters/SVGFEGaussianBlur.h:
984 * svg/graphics/filters/SVGFEImage.cpp:
985 (WebCore::FEImage::apply):
986 * svg/graphics/filters/SVGFEImage.h:
987 * svg/graphics/filters/SVGFEMerge.cpp:
988 (WebCore::FEMerge::apply):
989 * svg/graphics/filters/SVGFEMerge.h:
990 * svg/graphics/filters/SVGFEMorphology.cpp:
991 (WebCore::FEMorphology::apply):
992 * svg/graphics/filters/SVGFEMorphology.h:
993 * svg/graphics/filters/SVGFEOffset.cpp:
994 (WebCore::FEOffset::apply):
995 * svg/graphics/filters/SVGFEOffset.h:
996 * svg/graphics/filters/SVGFESpecularLighting.cpp:
997 (WebCore::FESpecularLighting::apply):
998 * svg/graphics/filters/SVGFESpecularLighting.h:
999 * svg/graphics/filters/SVGFETile.cpp:
1000 (WebCore::FETile::apply):
1001 * svg/graphics/filters/SVGFETile.h:
1002 * svg/graphics/filters/SVGFETurbulence.cpp:
1003 (WebCore::FETurbulence::apply):
1004 * svg/graphics/filters/SVGFETurbulence.h:
1005 * svg/graphics/filters/SVGFilter.cpp: Added.
1006 (WebCore::SVGFilter::SVGFilter):
1007 (WebCore::SVGFilter::calculateEffectSubRegion):
1008 (WebCore::SVGFilter::create):
1009 * svg/graphics/filters/SVGFilter.h: Added.
1011 2009-05-30 Kevin Ollivier <kevino@theolliviers.com>
1013 Build fix for platforms without plugins support.
1015 * plugins/PluginViewNone.cpp:
1016 (WebCore::PluginView::userAgentStatic):
1017 (WebCore::PluginView::getValueStatic):
1019 2009-05-30 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1021 Reviewed by Darin Adler.
1023 Fixes: https://bugs.webkit.org/show_bug.cgi?id=25979
1025 Fix regression, local WML files won't load anymore, as the mimetype isn't correctly detected.
1026 Bug filed at <rdar://problem/6917571> to cover this CFNetwork limitation.
1028 * platform/network/mac/ResourceHandleMac.mm:
1029 (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
1031 2009-05-29 Sam Weinig <sam@webkit.org>
1033 Reviewed by Anders Carlsson.
1035 Fix for https://bugs.webkit.org/show_bug.cgi?id=26091
1036 Make storage events match the current spec.
1037 - Storage event listeners are added to the window.
1038 - Storage events are dispatched to the window.
1040 Updated existing tests.
1043 (WebCore::Document::dispatchWindowEvent):
1047 * html/HTMLBodyElement.cpp:
1048 (WebCore::HTMLBodyElement::parseMappedAttribute):
1049 * storage/LocalStorageArea.cpp:
1050 (WebCore::LocalStorageArea::dispatchStorageEvent):
1051 * storage/SessionStorageArea.cpp:
1052 (WebCore::SessionStorageArea::dispatchStorageEvent):
1054 2009-05-30 Darin Adler <darin@apple.com>
1056 Reviewed by Adele Peterson.
1058 Bug 26097: REGRESSION (r44283): Tab key doesn't work when focus is on a <select> element
1060 Test: fast/forms/focus-control-to-page.html
1062 * dom/SelectElement.h: Made destructor protected. Tweaked a bit.
1064 * html/HTMLSelectElement.cpp: Removed unneeded includes.
1065 (WebCore::HTMLSelectElement::remove): Removed unneeded range check of the
1066 result of optionToListIndex.
1067 (WebCore::HTMLSelectElement::parseMappedAttribute): Removed code to set the
1068 unused attribute, m_minwidth.
1069 (WebCore::HTMLSelectElement::defaultEventHandler): The actual bug fix.
1070 Call through to the base class defaultEventHandler if the event hasn't
1073 * html/HTMLSelectElement.h: Removed unneeded includes. Made a lot more functions
1074 private. Removed unused minWidth function and m_minwidth data member.
1076 2009-05-30 Fridrich Strba <fridrich.strba@bluewin.ch>
1078 Reviewed by Holger Freyther.
1080 The two KeyboardCodes.h files are basically identical and the
1081 qt one is properly #ifdef-ed for different win32 systems. Share
1082 them between Qt and Gtk implementations.
1085 * platform/KeyboardCodes.h: Copied from WebCore/platform/qt/KeyboardCodes.h.
1086 * platform/gtk/KeyboardCodes.h: Removed.
1087 * platform/qt/KeyboardCodes.h: Removed.
1089 2009-05-30 Jeremy Orlow <jorlow@chromium.org>
1091 Reviewed by Sam Weinig.
1093 LocalStorage and SessionStorage's implicit setters do not correctly
1094 handle null. The custom JS bindings should convert to strings
1095 unconditionally and not try to handle null specially.
1096 https://bugs.webkit.org/show_bug.cgi?id=25970
1098 Tests: storage/domstorage/localstorage/string-conversion.html
1099 storage/domstorage/sessionstorage/string-conversion.html
1101 * bindings/js/JSStorageCustom.cpp:
1102 (WebCore::JSStorage::customPut):
1104 2009-05-30 Dan Bernstein <mitz@apple.com>
1106 Reviewed by Darin Adler.
1108 - fix <rdar://problem/6935192> REGRESSION (Safari 3-TOT): Scroll
1109 bars in key window draw as inactive if the WebView is not active
1111 Test: platform/mac/scrollbars/key-window-not-first-responder.html
1113 * platform/mac/ScrollbarThemeMac.mm:
1114 (WebCore::ScrollbarThemeMac::paint): Use the window's key state instead
1115 of the WebView's first responder state to switch between active and
1118 2009-05-30 Dan Bernstein <mitz@apple.com>
1120 Reviewed by Simon Fraser.
1122 - fix https://bugs.webkit.org/show_bug.cgi?id=18445
1123 <rdar://problem/5931174> Assertion failure in CSSGradientValue::image
1124 with -webkit-gradient as body's background
1126 Test: fast/backgrounds/body-generated-image-propagated-to-root.html
1128 * rendering/RenderBoxModelObject.cpp:
1129 (WebCore::RenderBoxModelObject::paintFillLayerExtended): Check if this
1130 is the root element painting a background layer propagated from the
1131 body, and if it is, use the body's renderer as the client to
1132 StyleImage::image().
1134 2009-05-30 Holger Hans Peter Freyther <zecke@selfish.org>
1136 Unreviewed build fix for AXObjectCache.
1138 For !HAVE(ACCESSIBILITY) postNotification was defined twice. Move
1139 that into the #ifdef.
1141 * accessibility/AXObjectCache.cpp:
1143 2009-05-29 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1145 Reviewed by George Staikos.
1147 Fixes: https://bugs.webkit.org/show_bug.cgi?id=26072
1149 Add support for the last missing WML element: <select>. This patch adds WMLSelectElement, providing
1150 the same functionality HTMLSelectElement has. The WML specific features will follow soon.
1152 Add simple testcase covering <select> element rendering: fast/wml/select.wml
1156 * WebCore.vcproj/WebCore.vcproj:
1157 * WebCore.xcodeproj/project.pbxproj:
1158 * dom/OptionElement.cpp:
1159 (WebCore::OptionElement::optionIndex):
1160 (WebCore::isOptionElement):
1161 * dom/OptionElement.h:
1162 * dom/OptionGroupElement.cpp:
1163 (WebCore::isOptionGroupElement):
1164 * dom/OptionGroupElement.h:
1165 * dom/SelectElement.cpp:
1166 (WebCore::SelectElement::accessKeySetSelectedIndex):
1167 (WebCore::toSelectElement):
1168 * dom/SelectElement.h:
1169 * html/HTMLOptionElement.cpp:
1170 (WebCore::HTMLOptionElement::index):
1171 * html/HTMLSelectElement.cpp:
1172 (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
1173 * rendering/RenderListBox.cpp:
1174 (WebCore::RenderListBox::paintItemForeground):
1175 * rendering/RenderMenuList.cpp:
1176 (WebCore::RenderMenuList::itemIsEnabled):
1177 (WebCore::RenderMenuList::itemIsLabel):
1178 * wml/WMLFormControlElement.cpp:
1179 (WebCore::WMLFormControlElement::attach):
1180 (WebCore::WMLFormControlElement::recalcStyle):
1181 * wml/WMLFormControlElement.h:
1182 * wml/WMLInputElement.cpp:
1183 (WebCore::WMLInputElement::attach):
1184 * wml/WMLOptGroupElement.cpp:
1185 (WebCore::WMLOptGroupElement::insertBefore):
1186 (WebCore::WMLOptGroupElement::replaceChild):
1187 (WebCore::WMLOptGroupElement::removeChild):
1188 (WebCore::WMLOptGroupElement::appendChild):
1189 (WebCore::WMLOptGroupElement::removeChildren):
1190 (WebCore::ownerSelectElement):
1191 (WebCore::WMLOptGroupElement::accessKeyAction):
1192 (WebCore::WMLOptGroupElement::childrenChanged):
1193 (WebCore::WMLOptGroupElement::parseMappedAttribute):
1194 (WebCore::WMLOptGroupElement::attach):
1195 (WebCore::WMLOptGroupElement::detach):
1196 (WebCore::WMLOptGroupElement::recalcSelectOptions):
1197 * wml/WMLOptionElement.cpp:
1198 (WebCore::ownerSelectElement):
1199 (WebCore::WMLOptionElement::accessKeyAction):
1200 (WebCore::WMLOptionElement::childrenChanged):
1201 (WebCore::WMLOptionElement::parseMappedAttribute):
1202 (WebCore::WMLOptionElement::attach):
1203 (WebCore::WMLOptionElement::detach):
1204 (WebCore::WMLOptionElement::insertedIntoDocument):
1205 * wml/WMLSelectElement.cpp: Added.
1206 (WebCore::WMLSelectElement::WMLSelectElement):
1207 (WebCore::WMLSelectElement::~WMLSelectElement):
1208 (WebCore::WMLSelectElement::formControlType):
1209 (WebCore::WMLSelectElement::isKeyboardFocusable):
1210 (WebCore::WMLSelectElement::isMouseFocusable):
1211 (WebCore::WMLSelectElement::selectAll):
1212 (WebCore::WMLSelectElement::recalcStyle):
1213 (WebCore::WMLSelectElement::dispatchFocusEvent):
1214 (WebCore::WMLSelectElement::dispatchBlurEvent):
1215 (WebCore::WMLSelectElement::selectedIndex):
1216 (WebCore::WMLSelectElement::setSelectedIndex):
1217 (WebCore::WMLSelectElement::saveFormControlState):
1218 (WebCore::WMLSelectElement::restoreFormControlState):
1219 (WebCore::WMLSelectElement::childrenChanged):
1220 (WebCore::WMLSelectElement::parseMappedAttribute):
1221 (WebCore::WMLSelectElement::createRenderer):
1222 (WebCore::WMLSelectElement::appendFormData):
1223 (WebCore::WMLSelectElement::optionToListIndex):
1224 (WebCore::WMLSelectElement::listToOptionIndex):
1225 (WebCore::WMLSelectElement::reset):
1226 (WebCore::WMLSelectElement::defaultEventHandler):
1227 (WebCore::WMLSelectElement::accessKeyAction):
1228 (WebCore::WMLSelectElement::setActiveSelectionAnchorIndex):
1229 (WebCore::WMLSelectElement::setActiveSelectionEndIndex):
1230 (WebCore::WMLSelectElement::updateListBoxSelection):
1231 (WebCore::WMLSelectElement::listBoxOnChange):
1232 (WebCore::WMLSelectElement::menuListOnChange):
1233 (WebCore::WMLSelectElement::activeSelectionStartListIndex):
1234 (WebCore::WMLSelectElement::activeSelectionEndListIndex):
1235 (WebCore::WMLSelectElement::accessKeySetSelectedIndex):
1236 (WebCore::WMLSelectElement::setRecalcListItems):
1237 (WebCore::WMLSelectElement::scrollToSelection):
1238 (WebCore::WMLSelectElement::insertedIntoTree):
1239 * wml/WMLSelectElement.h: Added.
1240 (WebCore::WMLSelectElement::canSelectAll):
1241 (WebCore::WMLSelectElement::canStartSelection):
1242 (WebCore::WMLSelectElement::size):
1243 (WebCore::WMLSelectElement::multiple):
1244 (WebCore::WMLSelectElement::listItems):
1245 * wml/WMLTagNames.in:
1247 2009-05-29 David Levin <levin@chromium.org>
1249 Reviewed by NOBODY (build fix for windows).
1251 http://trac.webkit.org/changeset/44279 left in a "Vector<WCHAR> localeNameBuf"
1252 that it was trying to replace. Resulting in this variable being defined twice (and
1253 the second time incorrectly).
1255 * platform/win/Language.cpp:
1256 (WebCore::localeInfo):
1258 2009-05-29 Takeshi Yoshino <tyoshino@google.com>
1260 Reviewed by Darin Alder.
1262 https://bugs.webkit.org/show_bug.cgi?id=26018
1264 Fix behavior of the Element View of the Web Inspector for double
1265 clicking the element outline tree.
1267 Double clicking the element outline tree should
1268 1) on attribute: enter attribute editing mode
1269 2) on text: enter text editing mode
1270 3) otherwise: change root node to the parent element of double clicked
1273 Now, 3) is broken. For example, clicking <html> clears the element
1276 rootDOMNode should be updated to this.representedObject.parentNode, not
1277 this.parent.representedObject which is parent inside the element
1278 outline tree itself.
1280 * inspector/front-end/ElementsTreeOutline.js:
1281 (WebInspector.ElementsTreeElement.prototype.ondblclick):
1283 2009-05-29 David Moore <davemoore@google.com>
1285 Reviewed by Darin Alder.
1287 https://bugs.webkit.org/show_bug.cgi?id=26001
1288 Change many of the uses of String::adopt() to String::createUninitialized().
1289 This allows those strings to use an inlined buffer for their characters.
1291 * dom/StyleElement.cpp:
1292 Loop over nodes to precompute length of string and then
1293 write the characters into the allocated inline buffer
1294 (WebCore::StyleElement::process):
1296 Loop over nodes to precompute length of string and then
1297 write the characters into the allocated inline buffer
1298 (WebCore::Text::wholeText):
1299 (WebCore::Text::rendererIsNeeded):
1300 (WebCore::Text::createRenderer):
1301 (WebCore::Text::createWithLengthLimit):
1302 (WebCore::Text::formatForDebugger):
1303 * platform/text/String.cpp:
1304 (WebCore::String::append):
1305 (WebCore::String::insert):
1306 (WebCore::String::truncate):
1307 (WebCore::String::remove):
1308 * platform/text/StringBuilder.cpp:
1309 (WebCore::StringBuilder::toString):
1310 * platform/text/StringImpl.cpp:
1311 (WebCore::StringImpl::lower):
1312 (WebCore::StringImpl::upper):
1313 (WebCore::StringImpl::secure):
1314 (WebCore::StringImpl::foldCase):
1315 (WebCore::StringImpl::replace):
1316 * platform/text/TextCodecLatin1.cpp:
1317 (WebCore::TextCodecLatin1::decode):
1318 * platform/text/TextCodecUserDefined.cpp:
1319 (WebCore::TextCodecUserDefined::decode):
1320 * platform/win/Language.cpp:
1321 (WebCore::localeInfo):
1323 2009-05-29 Takeshi Yoshino <tyoshino@google.com>
1325 Reviewed by Darin Alder.
1327 Bug 25911: Apply href in base elements to anchors shown on the source viewer
1328 https://bugs.webkit.org/show_bug.cgi?id=25911
1330 In rendering HTML sources, parse base elements to apply the base URI to
1331 anchors shown on the source viewer.
1333 This issue was originally reported to the Chromium issue tracker.
1334 http://code.google.com/p/chromium/issues/detail?id=2418
1336 Test: fast/frames/viewsource-link-on-href-value.html
1338 * html/HTMLViewSourceDocument.cpp:
1339 (WebCore::HTMLViewSourceDocument::addViewSourceToken):
1341 2009-05-29 Rob Buis <rwlbuis@gmail.com>
1343 Reviewed by David Hyatt.
1345 https://bugs.webkit.org/show_bug.cgi?id=22429
1346 document.styleSheets collection ignores media=presentation
1348 Ensure that stylesheets though <link> show up in document.styleSheets regardless of media attribute.
1350 Test: fast/css/sheet-collection-link.html
1352 * html/HTMLLinkElement.cpp:
1353 (WebCore::HTMLLinkElement::process):
1355 2009-05-29 Itai Danan <idanan@chromium.org>
1357 Reviewed by Jon Honeycutt.
1359 Bug 24791: Should have a preference to disable auto scrolling
1360 https://bugs.webkit.org/show_bug.cgi?id=24791
1362 To understand why this is required see the discussion in
1363 issue 24722 (https://bugs.webkit.org/show_bug.cgi?id=24722).
1365 The code review was done in https://bugs.webkit.org/show_bug.cgi?id=21794.
1367 * page/EventHandler.cpp:
1368 (WebCore::EventHandler::handleMousePressEvent): Use autoscroll behavior flag to determine
1369 if autoscroll needs to be released on this event.
1370 (WebCore::EventHandler::handleMouseReleaseEvent): Use autoscroll behavior flag to determine
1371 if autoscroll needs to be released on this event (reverse logic of for Press event).
1372 * page/Settings.cpp:
1373 (WebCore::Settings::Settings): Initialize autoscroll behavior setting.
1375 (WebCore::Settings::setUsesStickyPanScroll): Autoscroll behavior setting setter.
1376 (WebCore::Settings::usesStickyPanScroll): Autoscroll behavior setting getter.
1378 2009-05-29 Jian Li <jianli@chromium.org>
1380 Reviewed by Dimitri Glazkov.
1382 https://bugs.webkit.org/show_bug.cgi?id=26069
1383 Fix a crash in custom V8 bindings code for XMLHttpRequest.
1385 Test: fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html
1387 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1388 (WebCore::CALLBACK_FUNC_DECL):
1390 2009-05-29 David Levin <levin@chromium.org>
1392 Reviewed by Darin Adler.
1394 Bug 26074: SQLTransaction::executeSQL does an unnecessary call to String::copy.
1395 https://bugs.webkit.org/show_bug.cgi?id=26074
1397 The constructor for SQLStatement already does a copy for this string.
1399 * storage/SQLTransaction.cpp:
1400 (WebCore::SQLTransaction::executeSQL):
1402 2009-05-29 Darin Adler <darin@apple.com>
1404 Fix build; the new Cairo code compiled on Windows only.
1406 * platform/graphics/gtk/FontPlatformData.h: Added syntheticBold
1407 and syntheticOblique functions as in the Windows version to make it
1408 easier to use this cross-platform. Later we can make data members
1409 private as in the Windows version.
1410 * platform/graphics/mac/FontPlatformData.h: Ditto.
1412 2009-05-29 Alexander Macdonald <alexmac@adobe.com>
1414 Reviewed by Darin Adler.
1416 Added support for synthetic bold/oblique font rendering
1417 on platforms that use cairo.
1419 * platform/graphics/SimpleFontData.h:
1420 * platform/graphics/cairo/FontCairo.cpp:
1421 (WebCore::Font::drawGlyphs):
1422 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
1423 (WebCore::SimpleFontData::platformInit):
1424 * platform/graphics/gtk/SimpleFontDataPango.cpp:
1425 (WebCore::SimpleFontData::platformInit):
1426 * platform/graphics/win/SimpleFontDataCairoWin.cpp:
1427 (WebCore::SimpleFontData::platformInit):
1429 2009-05-29 Chris Fleizach <cfleizach@apple.com>
1431 Reviewed by Beth Dakin.
1433 Bug 26024: AX: possible to fail assertion because AXPostNotification calls accessibilityIsIgnored
1434 https://bugs.webkit.org/show_bug.cgi?id=26024
1436 AX notifications are posted after a one shot timer so that notifications are not performed mid-layout.
1437 Consolidated postNotification and postNotificationToElement into one method.
1439 * accessibility/AXObjectCache.cpp:
1440 (WebCore::AXObjectCache::AXObjectCache):
1441 (WebCore::AXObjectCache::notificationPostTimerFired):
1442 (WebCore::AXObjectCache::postNotification):
1443 (WebCore::AXObjectCache::selectedChildrenChanged):
1444 * accessibility/AXObjectCache.h:
1445 (WebCore::AXObjectCache::postNotification):
1446 (WebCore::AXObjectCache::postPlatformNotification):
1447 * accessibility/AccessibilityRenderObject.cpp:
1448 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
1449 * accessibility/chromium/AXObjectCacheChromium.cpp:
1450 (WebCore::AXObjectCache::postPlatformNotification):
1451 * accessibility/gtk/AXObjectCacheAtk.cpp:
1452 (WebCore::AXObjectCache::postPlatformNotification):
1453 * accessibility/mac/AXObjectCacheMac.mm:
1454 (WebCore::AXObjectCache::postPlatformNotification):
1455 * accessibility/win/AXObjectCacheWin.cpp:
1456 (WebCore::AXObjectCache::postPlatformNotification):
1458 (WebCore::Document::implicitClose):
1459 * editing/Editor.cpp:
1460 (WebCore::Editor::respondToChangedContents):
1461 * editing/mac/SelectionControllerMac.mm:
1462 (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
1463 * page/FrameView.cpp:
1464 (WebCore::FrameView::layout):
1465 * rendering/RenderTextControl.cpp:
1466 (WebCore::RenderTextControl::setInnerTextValue):
1468 2009-05-29 Brent Fulgham <bfulgham@webkit.org>
1470 Reviewed by Adam Roben.
1472 Build fix for Windows Cairo target.
1473 https://bugs.webkit.org/show_bug.cgi?id=25972
1475 Compiler mistakenly selects SMILTime min/max instead of STL version,
1476 resulting in a build error. This change makes the meaning of the
1477 min/max explicit and avoids the problem.
1479 * html/TimeRanges.h:
1480 (WebCore::TimeRanges::Range::unionWithOverlappingOrContiguousRange):
1482 2009-05-29 Gustavo Noronha Silva <gns@gnome.org>
1484 Reviewed by Jan Alonzo.
1486 Make SoupMessage a member of ResourceRequest, instead of creating
1487 it in startHttp. Implement updating of ResourceRequest from
1488 SoupMessage, and vice versa.
1491 * platform/network/soup/ResourceHandleSoup.cpp:
1492 (WebCore::ResourceHandle::~ResourceHandle):
1493 (WebCore::gotHeadersCallback):
1494 (WebCore::ResourceHandle::startHttp):
1495 * platform/network/soup/ResourceRequest.h:
1496 (WebCore::ResourceRequest::ResourceRequest):
1497 (WebCore::ResourceRequest::~ResourceRequest):
1498 * platform/network/soup/ResourceRequestSoup.cpp: Added.
1500 (WebCore::ResourceRequest::soupMessage):
1501 (WebCore::ResourceRequest::ResourceRequest):
1502 (WebCore::ResourceRequest::doUpdateResourceRequest):
1503 (WebCore::ResourceRequest::doUpdatePlatformRequest):
1505 2009-05-28 Dmitry Titov <dimich@chromium.org>
1507 Reviewed by Dimitri Glazkov.
1509 https://bugs.webkit.org/show_bug.cgi?id=26068
1510 V8: Remove the remaining b8::Locker usage in worker code.
1511 This completes the fix for https://bugs.webkit.org/show_bug.cgi?id=25944,
1512 since the patches for enabling timers and that bug have "crossed in the queue".
1513 Existing LayoutTests/fast/workers/worker-timeout.html covers this fix (will start work in Chromium).
1515 * bindings/v8/ScheduledAction.cpp:
1516 (WebCore::ScheduledAction::execute):
1518 2009-05-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
1520 Reviewed by Xan Lopez.
1522 Simplify the Accept-Encoding header we are sending out, for it
1523 seems some servers do not enjoy parsing the full, explicit
1526 * platform/network/soup/ResourceHandleSoup.cpp:
1527 (WebCore::ResourceHandle::startHttp):
1529 2009-05-28 Dirk Schulze <krit@webkit.org>
1531 Reviewed by Nikolas Zimmermann.
1533 Added a new build flag --filters. This replaces the old --svg-filters and enables
1534 other parts of WebKit to use some basic filters of platform/graphics/filters if needed.
1535 This patch also fixes a bug in dom/DOMImplementation.cpp where we used SVG_FILTER. This flag
1536 doesn't exist and was replaced by FILTERS as well as all SVG_FILTERS occurrences.
1537 Filters are not working yet. This patch is just a preperation. Filters are deactivated by
1540 * Configurations/FeatureDefines.xcconfig:
1541 * DerivedSources.make:
1544 * bindings/objc/DOM.mm:
1545 (WebCore::createElementClassMap):
1546 * dom/DOMImplementation.cpp:
1547 (WebCore::isSVG10Feature):
1548 (WebCore::isSVG11Feature):
1549 * page/DOMWindow.idl:
1550 * platform/graphics/filters/FEBlend.cpp:
1551 * platform/graphics/filters/FEBlend.h:
1552 * platform/graphics/filters/FEColorMatrix.cpp:
1553 * platform/graphics/filters/FEColorMatrix.h:
1554 * platform/graphics/filters/FEComponentTransfer.cpp:
1555 * platform/graphics/filters/FEComponentTransfer.h:
1556 * platform/graphics/filters/FEComposite.cpp:
1557 * platform/graphics/filters/FEComposite.h:
1558 * platform/graphics/filters/FilterEffect.cpp:
1559 * platform/graphics/filters/FilterEffect.h:
1560 * platform/graphics/filters/SourceAlpha.cpp:
1561 * platform/graphics/filters/SourceAlpha.h:
1562 * platform/graphics/filters/SourceGraphic.cpp:
1563 * platform/graphics/filters/SourceGraphic.h:
1564 * rendering/RenderSVGContainer.cpp:
1565 (WebCore::RenderSVGContainer::selfWillPaint):
1566 * rendering/RenderSVGModelObject.cpp:
1567 * rendering/RenderSVGRoot.cpp:
1568 (WebCore::RenderSVGRoot::selfWillPaint):
1569 * rendering/SVGRenderSupport.cpp:
1570 (WebCore::SVGRenderBase::prepareToRenderSVGContent):
1571 (WebCore::SVGRenderBase::finishRenderSVGContent):
1572 (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
1575 * svg/FilterBuilder.cpp:
1576 * svg/FilterBuilder.h:
1577 * svg/SVGComponentTransferFunctionElement.cpp:
1578 * svg/SVGComponentTransferFunctionElement.h:
1579 * svg/SVGComponentTransferFunctionElement.idl:
1580 * svg/SVGFEBlendElement.cpp:
1581 * svg/SVGFEBlendElement.h:
1582 * svg/SVGFEBlendElement.idl:
1583 * svg/SVGFEColorMatrixElement.cpp:
1584 * svg/SVGFEColorMatrixElement.h:
1585 * svg/SVGFEColorMatrixElement.idl:
1586 * svg/SVGFEComponentTransferElement.cpp:
1587 * svg/SVGFEComponentTransferElement.h:
1588 * svg/SVGFEComponentTransferElement.idl:
1589 * svg/SVGFECompositeElement.cpp:
1590 * svg/SVGFECompositeElement.h:
1591 * svg/SVGFECompositeElement.idl:
1592 * svg/SVGFEDiffuseLightingElement.cpp:
1593 * svg/SVGFEDiffuseLightingElement.h:
1594 * svg/SVGFEDiffuseLightingElement.idl:
1595 * svg/SVGFEDisplacementMapElement.cpp:
1596 * svg/SVGFEDisplacementMapElement.h:
1597 * svg/SVGFEDisplacementMapElement.idl:
1598 * svg/SVGFEDistantLightElement.cpp:
1599 * svg/SVGFEDistantLightElement.h:
1600 * svg/SVGFEDistantLightElement.idl:
1601 * svg/SVGFEFloodElement.cpp:
1602 * svg/SVGFEFloodElement.h:
1603 * svg/SVGFEFloodElement.idl:
1604 * svg/SVGFEFuncAElement.cpp:
1605 * svg/SVGFEFuncAElement.h:
1606 * svg/SVGFEFuncAElement.idl:
1607 * svg/SVGFEFuncBElement.cpp:
1608 * svg/SVGFEFuncBElement.h:
1609 * svg/SVGFEFuncBElement.idl:
1610 * svg/SVGFEFuncGElement.cpp:
1611 * svg/SVGFEFuncGElement.h:
1612 * svg/SVGFEFuncGElement.idl:
1613 * svg/SVGFEFuncRElement.cpp:
1614 * svg/SVGFEFuncRElement.h:
1615 * svg/SVGFEFuncRElement.idl:
1616 * svg/SVGFEGaussianBlurElement.cpp:
1617 * svg/SVGFEGaussianBlurElement.h:
1618 * svg/SVGFEGaussianBlurElement.idl:
1619 * svg/SVGFEImageElement.cpp:
1620 * svg/SVGFEImageElement.h:
1621 * svg/SVGFEImageElement.idl:
1622 * svg/SVGFELightElement.cpp:
1623 * svg/SVGFELightElement.h:
1624 * svg/SVGFEMergeElement.cpp:
1625 * svg/SVGFEMergeElement.h:
1626 * svg/SVGFEMergeElement.idl:
1627 * svg/SVGFEMergeNodeElement.cpp:
1628 * svg/SVGFEMergeNodeElement.h:
1629 * svg/SVGFEMergeNodeElement.idl:
1630 * svg/SVGFEOffsetElement.cpp:
1631 * svg/SVGFEOffsetElement.h:
1632 * svg/SVGFEOffsetElement.idl:
1633 * svg/SVGFEPointLightElement.cpp:
1634 * svg/SVGFEPointLightElement.h:
1635 * svg/SVGFEPointLightElement.idl:
1636 * svg/SVGFESpecularLightingElement.cpp:
1637 * svg/SVGFESpecularLightingElement.h:
1638 * svg/SVGFESpecularLightingElement.idl:
1639 * svg/SVGFESpotLightElement.cpp:
1640 * svg/SVGFESpotLightElement.h:
1641 * svg/SVGFESpotLightElement.idl:
1642 * svg/SVGFETileElement.cpp:
1643 * svg/SVGFETileElement.h:
1644 * svg/SVGFETileElement.idl:
1645 * svg/SVGFETurbulenceElement.cpp:
1646 * svg/SVGFETurbulenceElement.h:
1647 * svg/SVGFETurbulenceElement.idl:
1648 * svg/SVGFilterElement.cpp:
1649 * svg/SVGFilterElement.h:
1650 * svg/SVGFilterElement.idl:
1651 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1652 * svg/SVGFilterPrimitiveStandardAttributes.h:
1653 * svg/graphics/SVGResourceFilter.cpp:
1654 * svg/graphics/SVGResourceFilter.h:
1655 * svg/graphics/cairo/SVGResourceFilterCairo.cpp:
1656 * svg/graphics/cg/SVGResourceFilterCg.cpp:
1657 * svg/graphics/cg/SVGResourceFilterCg.mm:
1658 * svg/graphics/filters/SVGDistantLightSource.h:
1659 * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
1660 * svg/graphics/filters/SVGFEConvolveMatrix.h:
1661 * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
1662 * svg/graphics/filters/SVGFEDiffuseLighting.h:
1663 * svg/graphics/filters/SVGFEDisplacementMap.cpp:
1664 * svg/graphics/filters/SVGFEDisplacementMap.h:
1665 * svg/graphics/filters/SVGFEFlood.cpp:
1666 * svg/graphics/filters/SVGFEFlood.h:
1667 * svg/graphics/filters/SVGFEGaussianBlur.cpp:
1668 * svg/graphics/filters/SVGFEGaussianBlur.h:
1669 * svg/graphics/filters/SVGFEImage.cpp:
1670 * svg/graphics/filters/SVGFEImage.h:
1671 * svg/graphics/filters/SVGFEMerge.cpp:
1672 * svg/graphics/filters/SVGFEMerge.h:
1673 * svg/graphics/filters/SVGFEMorphology.cpp:
1674 * svg/graphics/filters/SVGFEMorphology.h:
1675 * svg/graphics/filters/SVGFEOffset.cpp:
1676 * svg/graphics/filters/SVGFEOffset.h:
1677 * svg/graphics/filters/SVGFESpecularLighting.cpp:
1678 * svg/graphics/filters/SVGFESpecularLighting.h:
1679 * svg/graphics/filters/SVGFETile.cpp:
1680 * svg/graphics/filters/SVGFETile.h:
1681 * svg/graphics/filters/SVGFETurbulence.cpp:
1682 * svg/graphics/filters/SVGFETurbulence.h:
1683 * svg/graphics/filters/SVGFilterEffect.cpp:
1684 * svg/graphics/filters/SVGFilterEffect.h:
1685 * svg/graphics/filters/SVGLightSource.cpp:
1686 * svg/graphics/filters/SVGLightSource.h:
1687 * svg/graphics/filters/SVGPointLightSource.h:
1688 * svg/graphics/filters/SVGSpotLightSource.h:
1689 * svg/graphics/filters/cg/SVGFEHelpersCg.h:
1690 * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
1691 * svg/graphics/filters/cg/SVGFilterEffectCg.mm:
1692 * svg/graphics/filters/cg/WKArithmeticFilter.h:
1693 * svg/graphics/filters/cg/WKArithmeticFilter.m:
1694 * svg/graphics/filters/cg/WKComponentMergeFilter.h:
1695 * svg/graphics/filters/cg/WKComponentMergeFilter.m:
1696 * svg/graphics/filters/cg/WKDiffuseLightingFilter.h:
1697 * svg/graphics/filters/cg/WKDiffuseLightingFilter.m:
1698 * svg/graphics/filters/cg/WKDiscreteTransferFilter.h:
1699 * svg/graphics/filters/cg/WKDiscreteTransferFilter.m:
1700 * svg/graphics/filters/cg/WKDisplacementMapFilter.h:
1701 * svg/graphics/filters/cg/WKDisplacementMapFilter.m:
1702 * svg/graphics/filters/cg/WKDistantLightFilter.h:
1703 * svg/graphics/filters/cg/WKDistantLightFilter.m:
1704 * svg/graphics/filters/cg/WKGammaTransferFilter.h:
1705 * svg/graphics/filters/cg/WKGammaTransferFilter.m:
1706 * svg/graphics/filters/cg/WKIdentityTransferFilter.h:
1707 * svg/graphics/filters/cg/WKIdentityTransferFilter.m:
1708 * svg/graphics/filters/cg/WKLinearTransferFilter.h:
1709 * svg/graphics/filters/cg/WKLinearTransferFilter.m:
1710 * svg/graphics/filters/cg/WKNormalMapFilter.h:
1711 * svg/graphics/filters/cg/WKNormalMapFilter.m:
1712 * svg/graphics/filters/cg/WKPointLightFilter.h:
1713 * svg/graphics/filters/cg/WKPointLightFilter.m:
1714 * svg/graphics/filters/cg/WKSpecularLightingFilter.h:
1715 * svg/graphics/filters/cg/WKSpecularLightingFilter.m:
1716 * svg/graphics/filters/cg/WKSpotLightFilter.h:
1717 * svg/graphics/filters/cg/WKSpotLightFilter.m:
1718 * svg/graphics/filters/cg/WKTableTransferFilter.h:
1719 * svg/graphics/filters/cg/WKTableTransferFilter.m:
1720 * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
1721 * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
1722 * svg/graphics/qt/SVGResourceFilterQt.cpp:
1723 * svg/graphics/skia/SVGResourceFilterSkia.cpp:
1726 2009-05-28 Brett Wilson <brettw@chromium.org>
1728 Unreviewed, build fix.
1730 https://bugs.webkit.org/show_bug.cgi?id=26067
1732 Add casts for scale function to make more explicit what is happening
1733 and fix a compiler warning.
1735 * platform/graphics/IntSize.h:
1736 (WebCore::IntSize::scale):
1738 2009-05-28 Sam Weinig <sam@webkit.org>
1740 Reviewed by Darin Adler.
1742 Remove the returnValueSlot concept from JSDOMWindowBase. Now that windows
1743 are not cleared on navigation it is no longer necessary.
1745 * bindings/js/JSDOMWindowBase.cpp:
1746 (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
1747 (WebCore::JSDOMWindowBase::willRemoveFromWindowShell):
1748 * bindings/js/JSDOMWindowBase.h:
1749 * bindings/js/JSDOMWindowCustom.cpp:
1750 (WebCore::JSDOMWindow::showModalDialog):
1752 2009-05-19 Xan Lopez <xlopez@igalia.com>
1754 Reviewed by Jan Alonzo and Gustavo Noronha.
1756 https://bugs.webkit.org/show_bug.cgi?id=25415
1757 [GTK][ATK] Please implement support for get_text_at_offset
1759 Implement atk_text_get_text_{at,after,before}_offset.
1761 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1763 2009-05-28 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1765 Rubber-stamped by Darin Adler.
1767 Remove unnecessary destructor from InputElementData/OptionElementData.
1769 * dom/InputElement.cpp:
1770 * dom/InputElement.h:
1771 * dom/OptionElement.cpp:
1772 * dom/OptionElement.h:
1774 2009-05-28 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1776 Reviewed by Darin Adler.
1778 Fixes: https://bugs.webkit.org/show_bug.cgi?id=26062
1780 Refactor code from all virtual methods in HTMLSelectElement (that are also needed for WMLSelectElement)
1781 in the recently introduced SelectElement abstract base class. Follow the same design sheme that InputElement uses.
1783 A follow-up patch can now easily add WMLSelectElement.
1785 * dom/OptionElement.h:
1786 * dom/SelectElement.cpp:
1787 (WebCore::SelectElement::selectAll):
1788 (WebCore::SelectElement::saveLastSelection):
1789 (WebCore::isOptionElement):
1790 (WebCore::isOptionGroupElement):
1791 (WebCore::SelectElement::nextSelectableListIndex):
1792 (WebCore::SelectElement::previousSelectableListIndex):
1793 (WebCore::SelectElement::setActiveSelectionAnchorIndex):
1794 (WebCore::SelectElement::setActiveSelectionEndIndex):
1795 (WebCore::SelectElement::updateListBoxSelection):
1796 (WebCore::SelectElement::listBoxOnChange):
1797 (WebCore::SelectElement::menuListOnChange):
1798 (WebCore::SelectElement::scrollToSelection):
1799 (WebCore::SelectElement::recalcStyle):
1800 (WebCore::SelectElement::setRecalcListItems):
1801 (WebCore::SelectElement::recalcListItems):
1802 (WebCore::SelectElement::selectedIndex):
1803 (WebCore::SelectElement::setSelectedIndex):
1804 (WebCore::SelectElement::optionToListIndex):
1805 (WebCore::SelectElement::listToOptionIndex):
1806 (WebCore::SelectElement::dispatchFocusEvent):
1807 (WebCore::SelectElement::dispatchBlurEvent):
1808 (WebCore::SelectElement::deselectItems):
1809 (WebCore::SelectElement::saveFormControlState):
1810 (WebCore::SelectElement::restoreFormControlState):
1811 (WebCore::SelectElement::parseMultipleAttribute):
1812 (WebCore::SelectElement::appendFormData):
1813 (WebCore::SelectElement::reset):
1814 (WebCore::SelectElement::menuListDefaultEventHandler):
1815 (WebCore::SelectElement::listBoxDefaultEventHandler):
1816 (WebCore::SelectElement::defaultEventHandler):
1817 (WebCore::SelectElement::lastSelectedListIndex):
1818 (WebCore::stripLeadingWhiteSpace):
1819 (WebCore::SelectElement::typeAheadFind):
1820 (WebCore::SelectElement::insertedIntoTree):
1821 (WebCore::SelectElementData::SelectElementData):
1822 (WebCore::SelectElementData::checkListItems):
1823 (WebCore::SelectElementData::listItems):
1824 * dom/SelectElement.h:
1825 (WebCore::SelectElementData::multiple):
1826 (WebCore::SelectElementData::setMultiple):
1827 (WebCore::SelectElementData::size):
1828 (WebCore::SelectElementData::setSize):
1829 (WebCore::SelectElementData::usesMenuList):
1830 (WebCore::SelectElementData::lastOnChangeIndex):
1831 (WebCore::SelectElementData::setLastOnChangeIndex):
1832 (WebCore::SelectElementData::lastOnChangeSelection):
1833 (WebCore::SelectElementData::activeSelectionState):
1834 (WebCore::SelectElementData::setActiveSelectionState):
1835 (WebCore::SelectElementData::activeSelectionAnchorIndex):
1836 (WebCore::SelectElementData::setActiveSelectionAnchorIndex):
1837 (WebCore::SelectElementData::activeSelectionEndIndex):
1838 (WebCore::SelectElementData::setActiveSelectionEndIndex):
1839 (WebCore::SelectElementData::cachedStateForActiveSelection):
1840 (WebCore::SelectElementData::shouldRecalcListItems):
1841 (WebCore::SelectElementData::setShouldRecalcListItems):
1842 (WebCore::SelectElementData::rawListItems):
1843 (WebCore::SelectElementData::repeatingChar):
1844 (WebCore::SelectElementData::setRepeatingChar):
1845 (WebCore::SelectElementData::lastCharTime):
1846 (WebCore::SelectElementData::setLastCharTime):
1847 (WebCore::SelectElementData::typedString):
1848 (WebCore::SelectElementData::setTypedString):
1849 * html/HTMLOptionElement.h:
1850 * html/HTMLSelectElement.cpp:
1851 (WebCore::HTMLSelectElement::HTMLSelectElement):
1852 (WebCore::HTMLSelectElement::recalcStyle):
1853 (WebCore::HTMLSelectElement::formControlType):
1854 (WebCore::HTMLSelectElement::selectedIndex):
1855 (WebCore::HTMLSelectElement::deselectItems):
1856 (WebCore::HTMLSelectElement::setSelectedIndex):
1857 (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
1858 (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
1859 (WebCore::HTMLSelectElement::saveFormControlState):
1860 (WebCore::HTMLSelectElement::restoreFormControlState):
1861 (WebCore::HTMLSelectElement::parseMappedAttribute):
1862 (WebCore::HTMLSelectElement::canSelectAll):
1863 (WebCore::HTMLSelectElement::selectAll):
1864 (WebCore::HTMLSelectElement::createRenderer):
1865 (WebCore::HTMLSelectElement::appendFormData):
1866 (WebCore::HTMLSelectElement::optionToListIndex):
1867 (WebCore::HTMLSelectElement::listToOptionIndex):
1868 (WebCore::HTMLSelectElement::recalcListItems):
1869 (WebCore::HTMLSelectElement::setRecalcListItems):
1870 (WebCore::HTMLSelectElement::reset):
1871 (WebCore::HTMLSelectElement::dispatchFocusEvent):
1872 (WebCore::HTMLSelectElement::dispatchBlurEvent):
1873 (WebCore::HTMLSelectElement::defaultEventHandler):
1874 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
1875 (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
1876 (WebCore::HTMLSelectElement::updateListBoxSelection):
1877 (WebCore::HTMLSelectElement::menuListOnChange):
1878 (WebCore::HTMLSelectElement::listBoxOnChange):
1879 (WebCore::HTMLSelectElement::saveLastSelection):
1880 (WebCore::HTMLSelectElement::setOption):
1881 (WebCore::HTMLSelectElement::scrollToSelection):
1882 (WebCore::HTMLSelectElement::insertedIntoTree):
1883 * html/HTMLSelectElement.h:
1884 (WebCore::HTMLSelectElement::size):
1885 (WebCore::HTMLSelectElement::multiple):
1886 (WebCore::HTMLSelectElement::listItems):
1887 * wml/WMLOptionElement.cpp:
1888 (WebCore::WMLOptionElement::text):
1889 * wml/WMLOptionElement.h:
1892 * dom/OptionElement.h:
1893 * dom/SelectElement.cpp:
1894 (WebCore::SelectElement::selectAll):
1895 (WebCore::SelectElement::saveLastSelection):
1896 (WebCore::isOptionElement):
1897 (WebCore::isOptionGroupElement):
1898 (WebCore::SelectElement::nextSelectableListIndex):
1899 (WebCore::SelectElement::previousSelectableListIndex):
1900 (WebCore::SelectElement::setActiveSelectionAnchorIndex):
1901 (WebCore::SelectElement::setActiveSelectionEndIndex):
1902 (WebCore::SelectElement::updateListBoxSelection):
1903 (WebCore::SelectElement::listBoxOnChange):
1904 (WebCore::SelectElement::menuListOnChange):
1905 (WebCore::SelectElement::scrollToSelection):
1906 (WebCore::SelectElement::recalcStyle):
1907 (WebCore::SelectElement::setRecalcListItems):
1908 (WebCore::SelectElement::recalcListItems):
1909 (WebCore::SelectElement::selectedIndex):
1910 (WebCore::SelectElement::setSelectedIndex):
1911 (WebCore::SelectElement::optionToListIndex):
1912 (WebCore::SelectElement::listToOptionIndex):
1913 (WebCore::SelectElement::dispatchFocusEvent):
1914 (WebCore::SelectElement::dispatchBlurEvent):
1915 (WebCore::SelectElement::deselectItems):
1916 (WebCore::SelectElement::saveFormControlState):
1917 (WebCore::SelectElement::restoreFormControlState):
1918 (WebCore::SelectElement::parseMultipleAttribute):
1919 (WebCore::SelectElement::appendFormData):
1920 (WebCore::SelectElement::reset):
1921 (WebCore::SelectElement::menuListDefaultEventHandler):
1922 (WebCore::SelectElement::listBoxDefaultEventHandler):
1923 (WebCore::SelectElement::defaultEventHandler):
1924 (WebCore::SelectElement::lastSelectedListIndex):
1925 (WebCore::stripLeadingWhiteSpace):
1926 (WebCore::SelectElement::typeAheadFind):
1927 (WebCore::SelectElement::insertedIntoTree):
1928 (WebCore::SelectElementData::SelectElementData):
1929 (WebCore::SelectElementData::~SelectElementData):
1930 (WebCore::SelectElementData::checkListItems):
1931 (WebCore::SelectElementData::listItems):
1932 * dom/SelectElement.h:
1933 (WebCore::SelectElementData::multiple):
1934 (WebCore::SelectElementData::setMultiple):
1935 (WebCore::SelectElementData::size):
1936 (WebCore::SelectElementData::setSize):
1937 (WebCore::SelectElementData::usesMenuList):
1938 (WebCore::SelectElementData::lastOnChangeIndex):
1939 (WebCore::SelectElementData::setLastOnChangeIndex):
1940 (WebCore::SelectElementData::lastOnChangeSelection):
1941 (WebCore::SelectElementData::activeSelectionState):
1942 (WebCore::SelectElementData::setActiveSelectionState):
1943 (WebCore::SelectElementData::activeSelectionAnchorIndex):
1944 (WebCore::SelectElementData::setActiveSelectionAnchorIndex):
1945 (WebCore::SelectElementData::activeSelectionEndIndex):
1946 (WebCore::SelectElementData::setActiveSelectionEndIndex):
1947 (WebCore::SelectElementData::cachedStateForActiveSelection):
1948 (WebCore::SelectElementData::shouldRecalcListItems):
1949 (WebCore::SelectElementData::setShouldRecalcListItems):
1950 (WebCore::SelectElementData::rawListItems):
1951 (WebCore::SelectElementData::repeatingChar):
1952 (WebCore::SelectElementData::setRepeatingChar):
1953 (WebCore::SelectElementData::lastCharTime):
1954 (WebCore::SelectElementData::setLastCharTime):
1955 (WebCore::SelectElementData::typedString):
1956 (WebCore::SelectElementData::setTypedString):
1957 * html/HTMLOptionElement.h:
1958 * html/HTMLSelectElement.cpp:
1959 (WebCore::HTMLSelectElement::HTMLSelectElement):
1960 (WebCore::HTMLSelectElement::recalcStyle):
1961 (WebCore::HTMLSelectElement::formControlType):
1962 (WebCore::HTMLSelectElement::selectedIndex):
1963 (WebCore::HTMLSelectElement::deselectItems):
1964 (WebCore::HTMLSelectElement::setSelectedIndex):
1965 (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
1966 (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
1967 (WebCore::HTMLSelectElement::saveFormControlState):
1968 (WebCore::HTMLSelectElement::restoreFormControlState):
1969 (WebCore::HTMLSelectElement::parseMappedAttribute):
1970 (WebCore::HTMLSelectElement::canSelectAll):
1971 (WebCore::HTMLSelectElement::selectAll):
1972 (WebCore::HTMLSelectElement::createRenderer):
1973 (WebCore::HTMLSelectElement::appendFormData):
1974 (WebCore::HTMLSelectElement::optionToListIndex):
1975 (WebCore::HTMLSelectElement::listToOptionIndex):
1976 (WebCore::HTMLSelectElement::recalcListItems):
1977 (WebCore::HTMLSelectElement::setRecalcListItems):
1978 (WebCore::HTMLSelectElement::reset):
1979 (WebCore::HTMLSelectElement::dispatchFocusEvent):
1980 (WebCore::HTMLSelectElement::dispatchBlurEvent):
1981 (WebCore::HTMLSelectElement::defaultEventHandler):
1982 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
1983 (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
1984 (WebCore::HTMLSelectElement::updateListBoxSelection):
1985 (WebCore::HTMLSelectElement::menuListOnChange):
1986 (WebCore::HTMLSelectElement::listBoxOnChange):
1987 (WebCore::HTMLSelectElement::saveLastSelection):
1988 (WebCore::HTMLSelectElement::setOption):
1989 (WebCore::HTMLSelectElement::scrollToSelection):
1990 (WebCore::HTMLSelectElement::insertedIntoTree):
1991 * html/HTMLSelectElement.h:
1992 (WebCore::HTMLSelectElement::size):
1993 (WebCore::HTMLSelectElement::multiple):
1994 (WebCore::HTMLSelectElement::listItems):
1995 * wml/WMLOptionElement.cpp:
1996 (WebCore::WMLOptionElement::text):
1997 * wml/WMLOptionElement.h:
1999 2009-05-28 Adam Roben <aroben@apple.com>
2001 Don't try to use the new combobox parts on Vista in Classic mode
2004 <rdar://problem/6929277> REGRESSION (r42289+r42350): Windows Classic
2005 theme: drop down lists in Preferences get a line/square
2006 <rdar://problem/6929298> REGRESSION (r42289): Windows Classic: drop
2007 down lists are black with a circle on many sites
2009 Reviewed by Steve Falkenburg.
2011 * rendering/RenderThemeWin.cpp:
2012 (WebCore::RenderThemeWin::paintMenuList): Only use the new combobox
2013 parts when we have a theme (i.e., when we're not in Classic mode).
2014 When we don't have a theme, fall back to the pre-r42289 code.
2016 2009-05-27 Peter Kasting <pkasting@google.com>
2018 Reviewed by Simon Fraser.
2020 https://bugs.webkit.org/show_bug.cgi?id=25659
2021 Avoid calling frameCount() unnecessarily (which could lead to extra
2024 * platform/graphics/BitmapImage.cpp:
2025 (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
2027 2009-05-28 Simon Fraser <simon.fraser@apple.com>
2029 Reviewed by Oliver Hunt.
2031 https://bugs.webkit.org/show_bug.cgi?id=8736
2033 Tests: fast/borders/border-radius-constraints.html
2034 fast/borders/border-radius-split-inline.html
2036 When the sum of the corner radii on a side exceed the length of the side,
2037 reduce the radii according to CSS 3 rules.
2039 Add RenderStyle::getBorderRadiiForRect() to fetch corner radii, applying
2040 the constraints. Use that for painting borders, box-shadow, clipping replaced
2043 * platform/graphics/IntSize.h:
2044 (WebCore::IntSize::scale):
2045 Add a scale method that scales by a float (using C rounding rules, like IntRect::scale()).
2047 * platform/graphics/Path.cpp:
2048 Make the QUARTER const static.
2050 * rendering/RenderBox.cpp:
2051 (WebCore::RenderBox::pushContentsClip):
2052 Use getBorderRadiiForRect to fetch border radii.
2054 * rendering/RenderBoxModelObject.cpp:
2055 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2056 Use getBorderRadiiForRect to fetch border radii.
2058 (WebCore::RenderBoxModelObject::paintBorder):
2059 Use getBorderRadiiForRect to fetch border radii, and fix a bug when drawing
2060 borders for split inlines, which used to apply the radii for each segment,
2063 (WebCore::RenderBoxModelObject::paintBoxShadow):
2064 Use getBorderRadiiForRect to fetch border radii.
2066 * rendering/RenderReplaced.cpp:
2067 (WebCore::RenderReplaced::paint):
2068 Use getBorderRadiiForRect to fetch border radii for clipping.
2070 * rendering/RenderWidget.cpp:
2071 (WebCore::RenderWidget::paint):
2072 Use getBorderRadiiForRect to fetch border radii for clipping.
2074 * rendering/style/RenderStyle.h:
2075 * rendering/style/RenderStyle.cpp:
2076 (WebCore::RenderStyle::getBorderRadiiForRect):
2077 New bottleneck method to fetch corner radiil given a rect, applying the constraint
2080 2009-05-28 Alexey Proskuryakov <ap@webkit.org>
2082 Reviewed by Darin Adler.
2084 https://bugs.webkit.org/show_bug.cgi?id=26005
2085 Optimization for XPath //* does not preserve context size
2087 Test: fast/xpath/position.html
2089 Fixed the bug by removing the incorrect optimization, and made enough micro-optimizations to
2090 get a performance progression on my tests.
2092 * xml/XPathPath.h: Removed broken optimizeStepPair().
2094 * xml/XPathPath.cpp:
2095 (WebCore::XPath::LocationPath::evaluate): Style fix.
2096 (WebCore::XPath::LocationPath::appendStep): Don't call optimizeStepPair().
2097 (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
2098 (WebCore::XPath::Path::Path): Style fix.
2100 * xml/XPathStep.cpp:
2101 (WebCore::XPath::primaryNodeType): Turned this member function into a static inline helper.
2102 (WebCore::XPath::nodeMatches): Ditto. Don't check for namespace axis, which is unsupported
2103 (and might never be).
2104 (WebCore::XPath::Step::nodesInAxis): Updated for the new nodeMatches() signature.
2107 (WebCore::XPath::Step::NodeTest::data):
2108 (WebCore::XPath::Step::NodeTest::namespaceURI):
2109 Made these data members AtomicString to avoid repeated conversions. This is the biggest
2110 performance win here.
2112 * xml/XPathUtil.cpp: (WebCore::XPath::stringValue): Reserve some capacity upfront.
2114 2009-05-28 Stephen White <senorblanco@chromium.org>
2116 Reviewed by Dimitri Glazkov.
2118 When creating a linear or radial gradient with a single stop
2119 at offset 1.0, the Skia layer was allocating 3 stops, but only
2120 filling 2, leaving one uninitialized. Only 2 stops are necessary
2121 in this case, at offsets (0.0, 1.0).
2123 http://bugs.webkit.org/show_bug.cgi?id=26063
2125 Covered by: LayoutTests/svg/W3C-SVG-1.1/pservers-grad-16-b.svg
2126 LayoutTests/svg/custom/gradient-stop-corner-cases.svg
2127 LayoutTests/svg/custom/js-late-gradient-and-object-creation.svg
2129 * platform/graphics/skia/GradientSkia.cpp:
2130 (WebCore::totalStopsNeeded):
2132 2009-05-28 Yury Semikhatsky <yurys@chromium.org>
2134 Reviewed by Timothy Hatcher.
2136 https://bugs.webkit.org/show_bug.cgi?id=26041
2137 Allow adding resource source to WebInspector.SourceFrame asynchronously.
2139 Provide common implementation for InspectorController::addResourceSourceToFrame and
2140 InspectorController::addSourceToFrame methods.
2142 * bindings/js/JSInspectorControllerCustom.cpp:
2143 * bindings/v8/custom/V8InspectorControllerCustom.cpp:
2144 * inspector/InspectorController.cpp:
2145 (WebCore::InspectorController::addResourceSourceToFrame):
2146 * inspector/InspectorController.h:
2147 * inspector/InspectorController.idl:
2148 * inspector/front-end/SourceFrame.js:
2149 (WebInspector.SourceFrame.prototype.revealLine):
2150 (WebInspector.SourceFrame.prototype.highlightLine):
2151 (WebInspector.SourceFrame.prototype._loaded):
2152 (WebInspector.SourceFrame.prototype._isContentLoaded):
2153 * inspector/front-end/SourceView.js:
2154 (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
2155 (WebInspector.SourceView.prototype._contentLoaded):
2157 2009-05-28 Holger Hans Peter Freyther <zecke@selfish.org>
2159 Reviewed by Xan Lopez.
2161 After r44177 we had a problem when increasing the size
2162 of the window the scrollbars stayed and were not hidden.
2163 This was due WebCore giving up on the Scrollbar as it became
2164 unnecessary but the GtkAdjustment remained unchanged.
2165 So from the point of view of the GtkScrolledWindow scrolling
2166 was still necessary and the GtkScrollbar kept being displayed.
2168 Solve the issue by resetting the GtkAdjustment in the
2169 destructor of ScrollbarGtk.
2171 * platform/gtk/ScrollbarGtk.cpp:
2172 (ScrollbarGtk::~ScrollbarGtk):
2174 2009-05-28 Adam Barth <abarth@webkit.org>
2176 Reviewed by Darin Adler.
2178 Clean up window.open()'s use of lexical and dynamic scope.
2180 (Added one unreviewed tweak: use dynamicFrame instead of lexicalFrame
2181 for DOMWindow::allowPopUp.)
2183 Test: http/tests/security/frameNavigation/context-for-window-open.html
2185 * bindings/js/JSDOMBinding.cpp:
2186 (WebCore::toDynamicFrame):
2187 (WebCore::processingUserGesture):
2188 (WebCore::completeURL):
2189 * bindings/js/JSDOMBinding.h:
2190 * bindings/js/JSDOMWindowCustom.cpp:
2191 (WebCore::createWindow):
2192 (WebCore::JSDOMWindow::open):
2193 (WebCore::JSDOMWindow::showModalDialog):
2194 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2195 (WebCore::CALLBACK_FUNC_DECL):
2196 (WebCore::createWindow):
2198 2009-05-27 Alexey Proskuryakov <ap@webkit.org>
2200 Reviewed by Oliver Hunt.
2202 https://bugs.webkit.org/show_bug.cgi?id=26056
2203 XPath string() function can be very slow
2205 * xml/XPathUtil.cpp: (WebCore::XPath::stringValue): Use an intermediate Vector when appending.
2207 2009-05-27 Dan Bernstein <mitz@apple.com>
2209 Reviewed by Sam Weinig.
2211 - fix <rdar://problem/6927761> <isindex> placeholder text is unstylable
2212 and initially not visible
2214 Test: fast/forms/isindex-placeholder.html
2216 * css/html4.css: Added a default style for <isindex> placeholder text.
2217 * html/HTMLInputElement.cpp:
2218 (WebCore::HTMLInputElement::parseMappedAttribute): Changed to call
2219 the new protected function updatePlaceholderVisibility().
2220 * html/HTMLInputElement.h:
2221 (WebCore::HTMLInputElement::updatePlaceholderVisibility): Added this
2222 protected function to allow HTMLIsIndexElement::parseMappedAttribute()
2223 to invoke InputElement::updatePlaceholderVisibility().
2224 * html/HTMLIsIndexElement.cpp:
2225 (WebCore::HTMLIsIndexElement::parseMappedAttribute): Call
2226 updatePlaceholderVisibility() when parsing the placeholder attribute.
2227 * rendering/RenderTextControlSingleLine.cpp:
2228 (WebCore::RenderTextControlSingleLine::createInnerTextStyle): If there
2229 is no placeholder pseudo-element style, use the normal style.
2231 2009-05-27 Sam Weinig <sam@webkit.org>
2233 Reviewed by Maciej Stachowiak.
2235 More cleanup of DOMWindow related functions.
2237 * bindings/js/JSDOMWindowBase.cpp:
2238 (WebCore::JSDOMWindowBase::willRemoveFromWindowShell): Renamed from JSDOMWindowBase::clear()
2239 * bindings/js/JSDOMWindowBase.h:
2241 * bindings/js/JSDOMWindowCustom.cpp:
2242 (WebCore::JSDOMWindow::showModalDialog): Update Comment.
2244 * bindings/js/JSDOMWindowShell.cpp:
2245 * bindings/js/JSDOMWindowShell.h:
2246 Remove JSDOMWindowShell::clear(). It was unused.
2248 * bindings/js/ScriptController.cpp:
2249 (WebCore::ScriptController::clearWindowShell):
2251 2009-05-27 Sam Weinig <sam@webkit.org>
2253 Reviewed by David Hyatt.
2255 Miscellaneous cleanup of DOMWindow related functions.
2257 * bindings/js/JSDOMGlobalObject.cpp:
2258 (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject): Fix poorly named variables.
2259 * bindings/js/JSDOMWindowBase.cpp:
2260 (WebCore::JSDOMWindowBase::supportsProfiling): Don't jump through hoops
2261 checking for null frames if the build does not support profiling.
2262 (WebCore::JSDOMWindowBase::clear): Use setCurrentEvent(0) instead of calling
2263 clearHelperObjectProperties(). It is clearer.
2264 * bindings/js/JSDOMWindowBase.h:
2265 Removed now unused clearHelperObjectProperties() function, empty disconnectFrame()
2266 function, and the empty destructor.
2267 * bindings/js/JSDOMWindowShell.cpp:
2268 * bindings/js/JSDOMWindowShell.h:
2269 Remove disconnectFrame() which only called JSDOMWindowBase::disconnectFrame(), which
2272 (WebCore::Frame::~Frame):
2273 (WebCore::Frame::pageDestroyed):
2274 Remove calls to JSDOMWindowShell::disconnectFrame() which only called
2275 JSDOMWindowBase::disconnectFrame(), which is a no-op.
2277 2009-05-27 Dimitri Glazkov <dglazkov@chromium.org>
2279 Unreviewed, build fix.
2281 https://bugs.webkit.org/show_bug.cgi?id=25974
2282 Remove extra qualifiers from the ScheduledAction decl.
2284 * bindings/v8/ScheduledAction.h: Removed extraneous class qualifiers.
2286 2009-05-27 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
2288 Unreviewed make distcheck fix. One more missing file.
2292 2009-05-27 Antonio Gomes <antonio.gomes@openbossa.org>
2294 Reviewed by Simon Hausmann.
2296 [Qt] Fixed trunk build on Linux after r44126.
2300 2009-05-27 Eric Carlson <eric.carlson@apple.com>
2302 Reviewed by Oliver Hunt.
2304 <rdar://problem/6926046> REGRESSION (r43972): http://www.youtube.com/html5 crashes on open
2306 * platform/graphics/MediaPlayer.cpp:
2307 (WebCore::MediaPlayer::load): Don't look for a media engine based on an empty MIME type.
2309 2009-05-27 David Levin <levin@chromium.org>
2311 Reviewed by Maciej Stachowiak.
2313 Bug 26029: FrameLoader::canLoad should allow calls with just a security origin
2314 https://bugs.webkit.org/show_bug.cgi?id=26029
2316 No functional changes, so no tests.
2318 * loader/FrameLoader.cpp:
2319 (WebCore::FrameLoader::canLoad):
2320 * loader/FrameLoader.h:
2322 2009-05-27 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
2324 Unreviewed build fix.
2326 Remove file that does not exist from the build.
2330 2009-05-27 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2332 Reviewed by Darin Adler.
2334 Remove two unneeded protected constructors, these classes have pure-virtual functions, and can't be constructed anyway.
2336 * dom/InputElement.h:
2337 * dom/OptionGroupElement.h:
2339 2009-05-27 Alexey Proskuryakov <ap@webkit.org>
2341 Reviewed by Darin Adler.
2343 https://bugs.webkit.org/show_bug.cgi?id=17725
2344 XPath should be case insensitive for HTML
2346 Test: fast/xpath/node-name-case-sensitivity.html
2348 * xml/XPathStep.cpp: (WebCore::XPath::Step::nodeMatches): Made node name check case insensitive
2349 for HTML elements in HTML documents.
2351 2009-05-27 John Sullivan <sullivan@apple.com>
2353 fixed <rdar://problem/6925482> repro crash in WebCore::DragController::dragExited dropping
2354 bookmarks (at least) over Top Sites (at least)
2356 Reviewed by Kevin Decker
2358 * page/DragController.cpp:
2359 (WebCore::DragController::dragExited):
2360 nil check m_documentUnderMouse and take the "local file" case if it's nil
2362 2009-05-27 Fridrich Strba <fridrich.strba@bluewin.ch>
2364 Reviewed by Gustavo Noronha.
2366 When building on window, consider Windows specific files.
2370 2009-05-27 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2372 Reviewed by George Staikos.
2374 Fixes: https://bugs.webkit.org/show_bug.cgi?id=26031
2376 InputElementData is too heavy, save storing two pointers by passing them
2377 directly to the static helper functions (the only place which needs them).
2379 * dom/InputElement.cpp:
2380 (WebCore::InputElement::dispatchFocusEvent):
2381 (WebCore::InputElement::dispatchBlurEvent):
2382 (WebCore::InputElement::updatePlaceholderVisibility):
2383 (WebCore::InputElement::updateFocusAppearance):
2384 (WebCore::InputElement::updateSelectionRange):
2385 (WebCore::InputElement::aboutToUnload):
2386 (WebCore::InputElement::setValueFromRenderer):
2387 (WebCore::InputElement::constrainValue):
2388 (WebCore::InputElement::handleBeforeTextInsertedEvent):
2389 (WebCore::InputElement::parseSizeAttribute):
2390 (WebCore::InputElement::parseMaxLengthAttribute):
2391 (WebCore::InputElement::updateValueIfNeeded):
2392 (WebCore::InputElement::notifyFormStateChanged):
2393 (WebCore::InputElementData::InputElementData):
2394 * dom/InputElement.h:
2395 * html/HTMLInputElement.cpp:
2396 (WebCore::HTMLInputElement::HTMLInputElement):
2397 (WebCore::HTMLInputElement::updateFocusAppearance):
2398 (WebCore::HTMLInputElement::aboutToUnload):
2399 (WebCore::HTMLInputElement::dispatchFocusEvent):
2400 (WebCore::HTMLInputElement::dispatchBlurEvent):
2401 (WebCore::HTMLInputElement::setInputType):
2402 (WebCore::HTMLInputElement::setSelectionRange):
2403 (WebCore::HTMLInputElement::parseMappedAttribute):
2404 (WebCore::HTMLInputElement::setValue):
2405 (WebCore::HTMLInputElement::setValueFromRenderer):
2406 (WebCore::HTMLInputElement::setFileListFromRenderer):
2407 (WebCore::HTMLInputElement::defaultEventHandler):
2408 (WebCore::HTMLInputElement::constrainValue):
2409 * wml/WMLInputElement.cpp:
2410 (WebCore::WMLInputElement::WMLInputElement):
2411 (WebCore::WMLInputElement::dispatchFocusEvent):
2412 (WebCore::WMLInputElement::dispatchBlurEvent):
2413 (WebCore::WMLInputElement::updateFocusAppearance):
2414 (WebCore::WMLInputElement::aboutToUnload):
2415 (WebCore::WMLInputElement::setValue):
2416 (WebCore::WMLInputElement::setValueFromRenderer):
2417 (WebCore::WMLInputElement::parseMappedAttribute):
2418 (WebCore::WMLInputElement::defaultEventHandler):
2419 (WebCore::WMLInputElement::constrainValue):
2421 2009-05-27 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2423 Reviewed by George Staikos.
2425 Fixes: https://bugs.webkit.org/show_bug.cgi?id=26033
2427 OptionElementData saves an Element pointer, which is unnessary.
2428 Just pass it to the static function calls directly.
2430 * dom/OptionElement.cpp:
2431 (WebCore::OptionElement::setSelectedState):
2432 (WebCore::OptionElement::collectOptionText):
2433 (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
2434 (WebCore::OptionElement::collectOptionValue):
2435 (WebCore::OptionElementData::OptionElementData):
2436 * dom/OptionElement.h:
2437 * html/HTMLOptionElement.cpp:
2438 (WebCore::HTMLOptionElement::HTMLOptionElement):
2439 (WebCore::HTMLOptionElement::text):
2440 (WebCore::HTMLOptionElement::value):
2441 (WebCore::HTMLOptionElement::setSelected):
2442 (WebCore::HTMLOptionElement::setSelectedState):
2443 (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
2444 * wml/WMLOptionElement.cpp:
2445 (WebCore::WMLOptionElement::WMLOptionElement):
2446 (WebCore::WMLOptionElement::setSelectedState):
2447 (WebCore::WMLOptionElement::value):
2448 (WebCore::WMLOptionElement::textIndentedToRespectGroupLabel):
2450 2009-05-27 Fridrich Strba <fridrich.strba@bluewin.ch>
2452 Reviewed by Maciej Stachowiak.
2454 When building with MinGW, don't use the __declspec(dl{import,export})
2455 decorations and rely on the linker to use its nifty auto-import feature.
2456 It is extremely hard to get the decorations right with MinGW in general
2457 and impossible in WebKit, where the resulting shared library is linking
2458 together some static libraries.
2462 2009-05-26 Holger Hans Peter Freyther <zecke@selfish.org>
2464 Reviewed by Xan Lopez.
2466 https://bugs.webkit.org/show_bug.cgi?id=25613
2468 Add a WebCore::Widget that can embed GtkWidget with and
2469 without a GdkWindow. This can be used to embed any GtkWidget.
2471 Some bits are directly copied from the Scrollbar implementation
2472 but can not be easily shared here.
2475 * platform/gtk/GtkPluginWidget.cpp: Added.
2476 (WebCore::GtkPluginWidget::GtkPluginWidget):
2477 (WebCore::GtkPluginWidget::invalidateRect):
2478 (WebCore::GtkPluginWidget::frameRectsChanged):
2479 (WebCore::GtkPluginWidget::paint):
2480 * platform/gtk/GtkPluginWidget.h: Added.
2482 2009-05-26 Holger Hans Peter Freyther <zecke@selfish.org>
2484 Reviewed by Gustavo Noronha.
2486 https://bugs.webkit.org/show_bug.cgi?id=25613.
2488 Implement Widget::setIsSelected for Gtk+ by searching
2489 for a property of the name "webkit-widget-is-selected" and if
2490 such property exists we are going to set it. We expect
2491 the property to take a boolean.
2493 * platform/gtk/WidgetGtk.cpp:
2494 (WebCore::Widget::setIsSelected):
2496 2009-05-26 Sam Weinig <sam@webkit.org>
2498 Reviewed by Brady Eidson.
2500 Fix for <rdar://problem/6916371>
2501 iWeb 'Announce' button does nothing after publishing to MobileMe
2503 Add ability to force content sniffing for all urls (including file: urls)
2506 * platform/network/ResourceHandle.cpp:
2507 (WebCore::ResourceHandle::shouldContentSniffURL):
2508 (WebCore::ResourceHandle::forceContentSniffing):
2509 * platform/network/ResourceHandle.h:
2511 2009-05-26 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2513 Reviewed by Holger Freyther.
2515 https://bugs.webkit.org/show_bug.cgi?id=25996
2517 [Qt] Dead-code stripping for unix
2519 * WebCore.pro: Turn on GCC dead-code stripping flags for Unix
2521 2009-05-10 Holger Hans Peter Freyther <zecke@selfish.org>
2523 Reviewed by Dave Hyatt.
2525 https://bugs.webkit.org/show_bug.cgi?id=25646
2527 [GTK] Send onscroll events for the main FrameView
2529 WebKit/GTK+ is currently not sending any onscroll
2530 events for a frame with external adjustments. This is
2531 due the fact that the value-changed signal of the GtkAdjustment
2532 is handled by WebCore::ScrollView directly and is not going through
2533 the WebCore::Scrollbar -> WebCore::ScrollbarClient ->
2534 WebCore::FrameView::valueChanged -> WebCore::ScrollView::valueChanged
2537 Fix the above problem by wrapping the GtkAdjustment we get
2538 assigned from GTK+ in a ScrollbarGtk that will not have any
2539 visual appearance. Remove code from ScrollView that knows
2540 about adjustments and create a special case for
2541 WebCore::ScrollView::createScrollbar that will create such
2542 a special WebCore::ScrollbarGtk.
2544 * platform/ScrollView.cpp: Remove adjustment code
2545 (WebCore::ScrollView::setHasHorizontalScrollbar):
2546 (WebCore::ScrollView::setHasVerticalScrollbar):
2547 (WebCore::ScrollView::updateScrollbars):
2548 (WebCore::ScrollView::wheelEvent):
2549 * platform/ScrollView.h: Remove adjustment code
2550 * platform/gtk/ScrollViewGtk.cpp:
2551 (WebCore::ScrollView::platformDestroy):
2552 (WebCore::ScrollView::createScrollbar):
2553 (WebCore::ScrollView::setGtkAdjustments):
2554 * platform/gtk/ScrollbarGtk.cpp:
2555 (ScrollbarGtk::createScrollbar): Special case.
2556 (ScrollbarGtk::ScrollbarGtk): New ctor and work on the adjustment
2557 (ScrollbarGtk::~ScrollbarGtk): Disconnect signal
2558 (ScrollbarGtk::frameRectsChanged): Do nothing when we lack a platformWidget
2559 * platform/gtk/ScrollbarGtk.h:
2561 2009-05-26 Cameron Zwarich <zwarich@apple.com>
2563 Reviewed by Maciej Stachowiak.
2565 Bug 26035: Make ImageSource::frameHasAlphaAtIndex() return false for JPEGs with CG
2566 <https://bugs.webkit.org/show_bug.cgi?id=26035>
2567 <rdar://problem/6924087>
2569 * platform/graphics/cg/ImageSourceCG.cpp:
2570 (WebCore::ImageSource::frameHasAlphaAtIndex): return false if the image
2571 is JPEG, there is no image type, or m_decoder is null.
2573 2009-05-26 Holger Hans Peter Freyther <zecke@selfish.org>
2575 Unreviewed build fix for the JPEGImageDecoder.
2577 Revision 44167 removed stdio.h from the included headers and
2578 this will lead to an error that FILE is not known inside the
2579 jpeglib.h Put back the stdio.h include.
2581 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2583 2009-05-26 Yichao Yin <yichao.yin@torchmobile.com.cn>
2585 Reviewed by Maciej Stachowiak.
2587 Fix the crash issue while running layout tests after enalbed XHTMLMP
2588 https://bugs.webkit.org/show_bug.cgi?id=26017
2591 (WebCore::Document::isXHTMLMPDocument):
2593 2009-05-26 Anders Carlsson <andersca@apple.com>
2595 Reviewed by Dan Bernstein.
2597 <rdar://problem/6901751>
2598 REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com
2600 Don't use the WKCGContextIsSafeToClip function; it wasn't working correctly. Instead, just disable
2601 the improved selection drawing on Tiger.
2603 * WebCore.Tiger.exp:
2604 * platform/graphics/cg/GraphicsContextCG.cpp:
2605 (WebCore::GraphicsContext::fillPath):
2606 (WebCore::GraphicsContext::strokePath):
2607 (WebCore::GraphicsContext::fillRect):
2608 (WebCore::GraphicsContext::clip):
2609 (WebCore::GraphicsContext::clipOut):
2610 (WebCore::GraphicsContext::clipOutEllipseInRect):
2611 (WebCore::GraphicsContext::clipPath):
2612 (WebCore::GraphicsContext::addInnerRoundedRectClip):
2613 (WebCore::GraphicsContext::strokeRect):
2614 * platform/mac/WebCoreSystemInterface.h:
2615 * platform/mac/WebCoreSystemInterface.mm:
2616 * rendering/RenderBlock.cpp:
2617 (WebCore::RenderBlock::fillSelectionGaps):
2619 2009-05-26 Peter Kasting <pkasting@google.com>
2621 Reviewed by Eric Seidel.
2623 https://bugs.webkit.org/show_bug.cgi?id=25709 part two
2624 Mostly cosmetic changes, mainly to get image decoders for Cairo build to
2625 comply with WebKit style guidelines:
2626 * Fix header guard names
2627 * Fix initializer list wrapping
2628 * Fix class/function "{" wrapping
2629 * Fix wrapping of long boolean expressions
2630 * Fix whitespace around operators
2631 * Eliminate whitespace on otherwise-blank lines
2632 * No {} on single-line conditional arms
2633 * Use 0 instead of NULL
2634 * Don't #include "config.h" in headers
2636 Also a few non-cosmetic changes:
2637 * Remove unneeded #ifdef protecting the contents of these files. The
2638 platforms listed don't match who uses these files anymore (even
2639 without considering Skia), and platforms which don't use them at all
2640 (like CG) aren't harmed by the files, since they don't have
2641 equivalently-named classes. It's simpler to just ditch these.
2642 * Convert a use of Vector<>& into SharedBuffer*, since that's how the
2643 data is really stored anyway.
2644 * Use size() instead of m_size, for consistency with Skia code, and
2645 future-proofing (if a particular decoder wants to specialize this).
2646 * Move an ASSERT that was slightly more aggressive than necessary.
2647 * Change variable names/types for clarity/accuracy and to match Skia.
2648 * Remove unnecessary macro magic to work around a problem which no
2649 longer exists in the third-party JPEG headers.
2650 * Stop silencing a portability warning about setjmp (the vcproj/vsprops
2651 are the right place for this)
2652 * In Skia code, don't explicitly check |m_failed| before calling
2653 isSizeAvailable(), which itself checks |m_failed|.
2655 * platform/image-decoders/ImageDecoder.h: Fix header guards, "{" wrapping.
2656 (WebCore::RGBA32Buffer::):
2657 (WebCore::RGBA32Buffer::RGBA32Buffer): Fix initializer list wrapping.
2658 (WebCore::ImageDecoder::ImageDecoder): Fix initializer list wrapping.
2659 * platform/image-decoders/bmp/BMPImageDecoder.cpp: Remove unneeded #ifdef.
2660 * platform/image-decoders/bmp/BMPImageDecoder.h: Fix header guards, "{" wrapping.
2661 * platform/image-decoders/gif/GIFImageDecoder.cpp: Remove unneeded #ifdef, fix "{" wrapping.
2662 (WebCore::GIFImageDecoderPrivate::GIFImageDecoderPrivate): Use an initializer instead of a block-level statement.
2663 (WebCore::GIFImageDecoderPrivate::decode): Expect a SharedBuffer.
2664 (WebCore::GIFImageDecoderPrivate::getColorMap):
2665 (WebCore::GIFImageDecoder::GIFImageDecoder): Fix initializer list wrapping.
2666 (WebCore::GIFImageDecoder::frameCount): Add comment.
2667 (WebCore::GIFImageDecoder::frameBufferAtIndex): Explicitly cast, fix whitespace around operators.
2668 (WebCore::GIFImageDecoder::decode): Pass a SharedBuffer.
2669 (WebCore::GIFImageDecoder::initFrameBuffer): Use size() instead of m_size, move ASSERT, fix boolean wrapping, fix indenting.
2670 (WebCore::GIFImageDecoder::prepEmptyFrameBuffer): Use size() instead of m_size.
2671 (WebCore::GIFImageDecoder::haveDecodedRow): Use size() instead of m_size, eliminate unneeded whitespace, change variable name.
2672 (WebCore::GIFImageDecoder::frameComplete): Use size() instead of m_size, no {} on single-line conditional arms, fix boolean wrapping.
2673 * platform/image-decoders/gif/GIFImageDecoder.h: Fix header guards, "{" wrapping.
2674 * platform/image-decoders/gif/GIFImageReader.cpp: Remove unneeded #ifdef.
2675 (GIFImageReader::read):
2676 * platform/image-decoders/gif/GIFImageReader.h: Fix header guards, change variable type.
2677 * platform/image-decoders/ico/ICOImageDecoder.cpp: Remove unneeded #ifdef.
2678 * platform/image-decoders/ico/ICOImageDecoder.h: Fix header guards, "{" wrapping.
2679 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Remove unneeded #ifdef, macro magic, silencing of warning.
2680 (WebCore::JPEGImageDecoder::outputScanlines): Use size() instead of m_size, change variable name.
2681 * platform/image-decoders/jpeg/JPEGImageDecoder.h: Fix header guards, "{" wrapping.
2682 * platform/image-decoders/png/PNGImageDecoder.cpp: Remove unneeded #ifdef, silencing of warning, change variable type.
2683 (WebCore::PNGImageReader::PNGImageReader): Fix initializer list wrapping.
2684 (WebCore::PNGImageReader::close): Add comment, zero another member for consistency.
2685 (WebCore::PNGImageDecoder::PNGImageDecoder): Fix indenting.
2686 (WebCore::PNGImageDecoder::decodingFailed): Define in .cpp, not .h.
2687 (WebCore::PNGImageDecoder::rowAvailable):
2688 * platform/image-decoders/png/PNGImageDecoder.h: Fix header guards, "{" wrapping.
2689 * platform/image-decoders/skia/GIFImageDecoder.cpp:
2690 (WebCore::GIFImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
2691 (WebCore::GIFImageDecoder::frameBufferAtIndex): Fix whitespace around operators.
2692 * platform/image-decoders/skia/GIFImageReader.h: "unsigned" is sufficient to convey "unsigned int".
2693 * platform/image-decoders/skia/ImageDecoder.h: Remove unnecessary #includes.
2694 (WebCore::ImageDecoder::ImageDecoder): Fix initializer list wrapping.
2695 * platform/image-decoders/skia/JPEGImageDecoder.cpp:
2696 (WebCore::JPEGImageReader::JPEGImageReader): Use 0 instead of NULL.
2697 (WebCore::JPEGImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
2698 * platform/image-decoders/skia/PNGImageDecoder.cpp:
2699 (WebCore::PNGImageReader::PNGImageReader): Fix initializer list wrapping.
2700 (WebCore::PNGImageDecoder::PNGImageDecoder): Fix indenting.
2701 (WebCore::PNGImageDecoder::isSizeAvailable): Don't check m_failed unnecessarily.
2702 (WebCore::rowAvailable):
2703 * platform/image-decoders/skia/XBMImageDecoder.h: Don't #include config.h.
2704 * platform/image-decoders/xbm/XBMImageDecoder.cpp: Remove unneeded #ifdef.
2705 * platform/image-decoders/xbm/XBMImageDecoder.h: Fix header guards, "{" wrapping.
2707 2009-05-26 Jian Li <jianli@chromium.org>
2709 Reviewed by Dimitri Glazkov.
2711 https://bugs.webkit.org/show_bug.cgi?id=25944
2712 Remove the uses of V8 Locker in worker execution code. No additional test is needed.
2713 The normal WebKit layout tests should cover it. However, layout tests that start
2714 multiple workers will fail to pass due to test shell limitation in Chromium. To cover
2715 this, UI tests will be added (http://code.google.com/p/chromium/issues/detail?id=12554).
2717 * bindings/v8/V8WorkerContextEventListener.cpp:
2718 (WebCore::V8WorkerContextEventListener::handleEvent):
2719 * bindings/v8/WorkerContextExecutionProxy.cpp:
2720 (WebCore::WorkerContextExecutionProxy::dispose):
2721 (WebCore::WorkerContextExecutionProxy::initV8IfNeeded):
2722 (WebCore::WorkerContextExecutionProxy::evaluate):
2723 (WebCore::WorkerContextExecutionProxy::findOrCreateEventListenerHelper):
2724 (WebCore::WorkerContextExecutionProxy::RemoveEventListener):
2726 2009-05-26 Dmitry Titov <dimich@chromium.org>
2728 Reviewed by Dimitri Glazkov.
2730 https://bugs.webkit.org/show_bug.cgi?id=25974
2731 Enable timers in Chromuim workers.
2733 * bindings/v8/ScheduledAction.cpp:
2734 (WebCore::ScheduledAction::execute): Added function which can execute a callback using WorkerContext.
2735 * bindings/v8/ScheduledAction.h:
2736 (WebCore::ScheduledAction::ScheduledAction): added url parameter to capture the worker's location.
2737 * bindings/v8/custom/V8WorkerContextCustom.cpp:
2738 (WebCore::SetTimeoutOrInterval): replaced NotImplemented with code to create ScheduledAction and DOMTimer.
2739 Also, removed declarations for clearTimeout/clearInterval callbacks since they are now directly generated from IDL.
2741 2009-05-26 Dimitri Glazkov <dglazkov@chromium.org>
2743 Unreviewed, build fix.
2745 https://bugs.webkit.org/show_bug.cgi?id=23649
2746 Update V8 bindings to match SQLTransactionErrorCallback change.
2748 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
2749 (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent): Changed to return void.
2750 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h: Ditto.
2752 2009-05-26 Dirk Schulze <krit@webkit.org>
2754 Reviewed by Nikolas Zimmermann.
2756 Move FilterEffect to platform/graphics/filters. First step to get an
2757 SVG independent filter system.
2761 * WebCore.xcodeproj/project.pbxproj:
2762 * platform/graphics/filters/FilterEffect.cpp: Added.
2763 (WebCore::FilterEffect::FilterEffect):
2764 (WebCore::FilterEffect::~FilterEffect):
2765 (WebCore::FilterEffect::externalRepresentation):
2766 * platform/graphics/filters/FilterEffect.h: Added.
2767 (WebCore::FilterEffect::xBoundingBoxMode):
2768 (WebCore::FilterEffect::setXBoundingBoxMode):
2769 (WebCore::FilterEffect::yBoundingBoxMode):
2770 (WebCore::FilterEffect::setYBoundingBoxMode):
2771 (WebCore::FilterEffect::widthBoundingBoxMode):
2772 (WebCore::FilterEffect::setWidthBoundingBoxMode):
2773 (WebCore::FilterEffect::heightBoundingBoxMode):
2774 (WebCore::FilterEffect::setHeightBoundingBoxMode):
2775 (WebCore::FilterEffect::subRegion):
2776 (WebCore::FilterEffect::setSubRegion):
2777 (WebCore::FilterEffect::resultImage):
2778 (WebCore::FilterEffect::setEffectBuffer):
2779 * svg/FilterEffect.cpp: Removed.
2780 * svg/FilterEffect.h: Removed.
2782 2009-05-26 Dimitri Glazkov <dglazkov@chromium.org>
2784 Reviewed by Maciej Stachowiak.
2786 https://bugs.webkit.org/show_bug.cgi?id=23649
2787 Update SQLTransactionErrorCallback to not return a value per changes in
2790 Test: storage/transaction-error-callback.html
2792 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2793 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2794 * bindings/js/JSCustomSQLTransactionErrorCallback.h:
2795 * storage/SQLTransaction.cpp:
2796 (WebCore::SQLTransaction::SQLTransaction):
2797 (WebCore::SQLTransaction::postflightAndCommit):
2798 (WebCore::SQLTransaction::handleTransactionError):
2799 (WebCore::SQLTransaction::deliverTransactionErrorCallback):
2800 (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
2801 * storage/SQLTransaction.h:
2802 * storage/SQLTransactionErrorCallback.h:
2804 2009-05-26 David Hyatt <hyatt@apple.com>
2806 Reviewed by Darin Adler.
2808 Fix for https://bugs.webkit.org/show_bug.cgi?id=25969
2810 Detect the case where we can fit without scrollbars when the view shrinks, so that we don't mistakenly
2811 continue to show scrollbars.
2813 Added two tests in fast/dynamic.
2815 * platform/ScrollView.cpp:
2816 (WebCore::ScrollView::updateScrollbars):
2818 2009-05-26 Chris Fleizach <cfleizach@apple.com>
2820 Reviewed by Mark Rowe.
2822 Bug 25801: change AccessibilityAria -> AccessibilityARIA
2823 https://bugs.webkit.org/show_bug.cgi?id=25801
2828 * WebCore.vcproj/WebCore.vcproj:
2829 * WebCore.xcodeproj/project.pbxproj:
2830 * WebCoreSources.bkl:
2831 * accessibility/AXObjectCache.cpp:
2832 (WebCore::AXObjectCache::getOrCreate):
2833 * accessibility/AccessibilityARIAGrid.cpp: Copied from WebCore/accessibility/AccessibilityAriaGrid.cpp.
2834 (WebCore::AccessibilityARIAGrid::AccessibilityARIAGrid):
2835 (WebCore::AccessibilityARIAGrid::~AccessibilityARIAGrid):
2836 (WebCore::AccessibilityARIAGrid::create):
2837 (WebCore::AccessibilityARIAGrid::addChild):
2838 (WebCore::AccessibilityARIAGrid::addChildren):
2839 (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
2840 * accessibility/AccessibilityARIAGrid.h: Copied from WebCore/accessibility/AccessibilityAriaGrid.h.
2841 * accessibility/AccessibilityARIAGridCell.cpp: Copied from WebCore/accessibility/AccessibilityAriaGridCell.cpp.
2842 (WebCore::AccessibilityARIAGridCell::AccessibilityARIAGridCell):
2843 (WebCore::AccessibilityARIAGridCell::~AccessibilityARIAGridCell):
2844 (WebCore::AccessibilityARIAGridCell::create):
2845 (WebCore::AccessibilityARIAGridCell::parentTable):
2846 (WebCore::AccessibilityARIAGridCell::rowIndexRange):
2847 (WebCore::AccessibilityARIAGridCell::columnIndexRange):
2848 * accessibility/AccessibilityARIAGridCell.h: Copied from WebCore/accessibility/AccessibilityAriaGridCell.h.
2849 * accessibility/AccessibilityARIAGridRow.cpp: Copied from WebCore/accessibility/AccessibilityAriaGridRow.cpp.
2850 (WebCore::AccessibilityARIAGridRow::AccessibilityARIAGridRow):
2851 (WebCore::AccessibilityARIAGridRow::~AccessibilityARIAGridRow):
2852 (WebCore::AccessibilityARIAGridRow::create):
2853 (WebCore::AccessibilityARIAGridRow::parentTable):
2854 (WebCore::AccessibilityARIAGridRow::headerObject):
2855 * accessibility/AccessibilityARIAGridRow.h: Copied from WebCore/accessibility/AccessibilityAriaGridRow.h.
2856 * accessibility/AccessibilityAriaGrid.cpp: Removed.
2857 * accessibility/AccessibilityAriaGrid.h: Removed.
2858 * accessibility/AccessibilityAriaGridCell.cpp: Removed.
2859 * accessibility/AccessibilityAriaGridCell.h: Removed.
2860 * accessibility/AccessibilityAriaGridRow.cpp: Removed.
2861 * accessibility/AccessibilityAriaGridRow.h: Removed.
2863 2009-05-26 Stephen White <senorblanco@chromium.org>
2865 Reviewed by Dimitri Glazkov.
2867 https://bugs.webkit.org/show_bug.cgi?id=26012
2869 Fix the Skia path to normalize the given source rect when
2870 drawing patterns, so it accepts negative width/height (as CG does).
2871 Fixes Chromium bug http://www.crbug.com/6167.
2872 * platform/graphics/skia/ImageSkia.cpp:
2873 (WebCore::Image::drawPattern):
2875 2009-05-26 Pavel Feldman <pfeldman@chromium.org>
2877 Reviewed by Timothy Hatcher.
2879 Serialize calls to WebInspector. This is the first step where method
2880 calls are being serialized to arrays (not yet JSON stringified ones) and
2881 are being dispatched on the client. This change also allows client to override
2882 InspectorFrontend, so that the serialized calls can be made on a given object
2883 instead of in-process WebInspector global. This will be the main control flow
2884 when InspectorController is decoupled from the in-process frontend.
2886 https://bugs.webkit.org/show_bug.cgi?id=26010
2888 * inspector/InspectorController.cpp:
2889 (WebCore::InspectorController::scriptObjectReady):
2890 (WebCore::InspectorController::overrideFrontendObject):
2891 (WebCore::InspectorController::show):
2892 (WebCore::InspectorController::populateScriptObjects):
2893 * inspector/InspectorController.h:
2894 * inspector/InspectorFrontend.cpp:
2895 (WebCore::InspectorFrontend::addMessageToConsole):
2896 (WebCore::InspectorFrontend::addResource):
2897 (WebCore::InspectorFrontend::updateResource):
2898 (WebCore::InspectorFrontend::removeResource):
2899 (WebCore::InspectorFrontend::updateFocusedNode):
2900 (WebCore::InspectorFrontend::setAttachedWindow):
2901 (WebCore::InspectorFrontend::inspectedWindowScriptObjectCleared):
2902 (WebCore::InspectorFrontend::showPanel):
2903 (WebCore::InspectorFrontend::populateInterface):
2904 (WebCore::InspectorFrontend::reset):
2905 (WebCore::InspectorFrontend::debuggerWasEnabled):
2906 (WebCore::InspectorFrontend::debuggerWasDisabled):
2907 (WebCore::InspectorFrontend::profilerWasEnabled):
2908 (WebCore::InspectorFrontend::profilerWasDisabled):
2909 (WebCore::InspectorFrontend::parsedScriptSource):
2910 (WebCore::InspectorFrontend::failedToParseScriptSource):
2911 (WebCore::InspectorFrontend::addProfile):
2912 (WebCore::InspectorFrontend::setRecordingProfile):
2913 (WebCore::InspectorFrontend::pausedScript):
2914 (WebCore::InspectorFrontend::resumedScript):
2915 (WebCore::InspectorFrontend::addDatabase):
2916 (WebCore::InspectorFrontend::addDOMStorage):
2917 (WebCore::InspectorFrontend::newFunctionCall):
2918 (WebCore::InspectorFrontend::callSimpleFunction):
2919 * inspector/InspectorFrontend.h:
2920 * inspector/front-end/inspector.js:
2921 (WebInspector.dispatch):
2923 2009-05-25 Alexey Proskuryakov <ap@webkit.org>
2925 Reviewed by Darin Adler.
2927 <rdar://problem/6918671> REGRESSION (r41700): Crashes in debug DumpRenderTree at RefCountedBase::ref().
2929 * dom/QualifiedName.cpp: (WebCore::QualifiedName::QualifiedName):
2930 * dom/QualifiedName.h: (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
2931 Adjust empty namespace before QNameComponentsTranslator black magic, not after.
2933 2009-05-25 David Levin <levin@chromium.org>
2935 Reviewed by Maciej Stachowiak and Oliver Hunt.
2937 Added forwarding headers.
2939 * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
2940 * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
2942 2009-05-25 Anders Carlsson <andersca@apple.com>
2944 Reviewed by Sam Weinig.
2946 - WebCore side of <rdar://problem/6914001>.
2948 Add a new m_allowPopupsFromPlugin flag.
2950 * bindings/js/ScriptController.cpp:
2951 (WebCore::ScriptController::ScriptController):
2952 (WebCore::ScriptController::processingUserGesture):
2953 * bindings/js/ScriptController.h:
2954 (WebCore::ScriptController::setAllowPopupsFromPlugin):
2955 (WebCore::ScriptController::allowPopupsFromPlugin):
2957 2009-05-25 Adam Barth <abarth@webkit.org>
2959 Reviewed by Sam Weinig.
2961 https://bugs.webkit.org/show_bug.cgi?id=26006
2963 Sort out our use of dynamicGlobalObject and lexicalGlobalObject for
2964 window.location. The correct use appears to be as follows:
2966 1) Use dynamicGlobalObject to find the user gesture.
2967 2) Use dynamicGlobalObject to complete URLs.
2968 3) Use lexicalGlobalObject to find the referrer.
2969 4) Use lexicalGlobalObject for the frame navigation checks.
2970 5) Use lexicalGlobalObject for the XSS checks.
2972 Tests: http/tests/security/frameNavigation/context-for-location-assign.html
2973 http/tests/security/frameNavigation/context-for-location-href.html
2974 http/tests/security/frameNavigation/context-for-location.html
2976 * bindings/js/JSDOMBinding.cpp:
2977 (WebCore::shouldAllowNavigation):
2978 (WebCore::toLexicalFrame):
2979 (WebCore::processingUserGesture):
2980 (WebCore::completeURL):
2981 * bindings/js/JSDOMBinding.h:
2982 * bindings/js/JSDOMWindowCustom.cpp:
2983 (WebCore::JSDOMWindow::setLocation):
2984 * bindings/js/JSLocationCustom.cpp:
2985 (WebCore::navigateIfAllowed):
2986 (WebCore::JSLocation::setHref):
2987 (WebCore::JSLocation::replace):
2988 (WebCore::JSLocation::reload):
2989 (WebCore::JSLocation::assign):
2990 (WebCore::JSLocation::toString):
2991 (WebCore::JSLocationPrototype::customPut):
2992 * bindings/v8/V8Utilities.cpp:
2993 (WebCore::processingUserGesture):
2994 (WebCore::shouldAllowNavigation):
2995 (WebCore::completeURL):
2996 (WebCore::navigateIfAllowed):
2997 * bindings/v8/V8Utilities.h:
2998 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2999 (WebCore::V8Custom::WindowSetLocation):
3000 * bindings/v8/custom/V8LocationCustom.cpp:
3001 (WebCore::ACCESSOR_SETTER):
3002 (WebCore::CALLBACK_FUNC_DECL):
3004 2009-05-25 Fridrich Strba <fridrich.strba@bluewin.ch>
3006 Reviewed by Maciej Stachowiak.
3008 With Windows compilers older then MSVC 2005, the functions
3009 gmtime_s and localtime_s don't exist. The gmtime and localtime are
3010 on Windows always thread safe. So use them in the cases where
3011 gmtime_s and localtime_s are not present.
3013 * loader/FTPDirectoryDocument.cpp:
3014 * loader/FTPDirectoryParser.cpp:
3016 2009-05-25 Holger Hans Peter Freyther <zecke@selfish.org>
3018 Reviewed by Simon Hausmann.
3020 Follow up on r44120. PluginPackageMac.cpp is used
3021 by Qt on Mac and contained a copy of the m_browserFunc
3022 assignments and ::equal, ::hash and ::compareFileVersion.
3023 Change it to use the ones from PluginPackage.cpp as well.
3025 * plugins/mac/PluginPackageMac.cpp:
3026 (WebCore::PluginPackage::load):
3028 2009-05-25 Simon Hausmann <simon.hausmann@nokia.com>
3030 Reviewed by Tor Arne Vestbø.
3032 https://bugs.webkit.org/show_bug.cgi?id=25612
3034 Support conditionals in the tag factories, by placing
3035 feature #ifdefs around the individual factory functions
3036 and the registration.
3038 Made the Audio and Video elements conditional in the tag factories
3040 * html/HTMLTagNames.in:
3041 * dom/make_names.pl:
3043 2009-05-25 Simon Hausmann <simon.hausmann@nokia.com>
3045 Fix the Gtk build when video is disabled.
3047 * GNUmakefile.am: Always generate and compile the IDL files for the media
3048 elements. They contain proper feature #ifdefs.
3050 2009-05-25 Simon Hausmann <simon.hausmann@nokia.com>
3052 Fix the Qt build when video is disabled.
3054 * WebCore.pro: Always generate the IDL files for the media elements. They
3055 contain proper ENABLE(VIDEO) #ifdefs.
3057 2009-05-25 Adam Barth <abarth@webkit.org>
3059 Reviewed by Maciej Stachowiak.
3061 https://bugs.webkit.org/show_bug.cgi?id=26004
3063 The origin for postMessage should follow lexical scope, not dynamic
3064 scope. Yes, this is a super-obscure corner case.
3066 Test: http/tests/security/postMessage/origin-follows-lexical-scope.html
3068 * bindings/js/JSDOMWindowCustom.cpp:
3069 (WebCore::JSDOMWindow::postMessage):
3070 * bindings/v8/custom/V8DOMWindowCustom.cpp:
3071 (WebCore::CALLBACK_FUNC_DECL):
3073 2009-05-24 Darin Fisher <darin@chromium.org>
3075 Reviewed by Mark Rowe.
3077 Fix build bustage related to PassOwnPtr changes.
3079 https://bugs.webkit.org/show_bug.cgi?id=25999
3081 * platform/graphics/chromium/TransparencyWin.cpp:
3083 2009-05-24 Holger Hans Peter Freyther <zecke@selfish.org>
3085 Reviewed by Maciej Stachowiak.
3087 https://bugs.webkit.org/show_bug.cgi?id=25988
3089 Minor cleanup in PluginPackage::hash. Let the compiler
3090 figure out the size of the array. Do not have it in the
3091 definition and specially not the in the call to
3094 * plugins/PluginPackage.cpp:
3095 (WebCore::PluginPackage::hash):
3097 2009-05-24 Holger Hans Peter Freyther <zecke@selfish.org>
3099 Reviewed by Maciej Stachowiak.
3101 https://bugs.webkit.org/show_bug.cgi?id=25988
3103 Move ::hash, ::equal and ::compareFileVersion from
3104 the duplicated copies in PluginPackageQt.cpp and
3105 PluginPackageGtk to PluginPackage.cpp. We need to #ifdef
3106 this for the PluginPackageWin version. Use the new style
3107 ENABLE() for this feature/policy and enable it in the Gtk+
3112 * plugins/PluginPackage.cpp:
3113 (WebCore::PluginPackage::hash):
3114 (WebCore::PluginPackage::equal):
3115 (WebCore::PluginPackage::compareFileVersion):
3116 * plugins/gtk/PluginPackageGtk.cpp:
3117 * plugins/qt/PluginPackageQt.cpp:
3119 2009-05-24 Holger Hans Peter Freyther <zecke@selfish.org>
3121 Reviewed by Maciej Stachowiak.
3123 https://bugs.webkit.org/show_bug.cgi?id=25988
3125 So far the initialization of the browserfuncs struct
3126 is done in PluginPackageQt, PluginPackageGtk and
3127 PluginPackageWin there is no need for this duplication.
3129 The PluginPackageWin version got copied to PluginPackage
3131 * plugins/PluginPackage.cpp:
3132 (WebCore::PluginPackage::initializeBrowserFuncs):
3133 * plugins/PluginPackage.h:
3134 * plugins/gtk/PluginPackageGtk.cpp:
3135 (WebCore::PluginPackage::load):
3136 * plugins/qt/PluginPackageQt.cpp:
3137 (WebCore::PluginPackage::load):
3138 * plugins/win/PluginPackageWin.cpp:
3139 (WebCore::PluginPackage::load):
3141 2009-05-24 Dirk Schulze <krit@webkit.org>
3143 Reviewed by Nikolas Zimmermann.
3145 WebKit needs cross-platform filter system
3146 [https://bugs.webkit.org/show_bug.cgi?id=19991]
3148 Added standard input for filter system.
3150 No testcases were added. Filter system is still off.
3154 * WebCore.xcodeproj/project.pbxproj:
3155 * platform/graphics/filters/SourceAlpha.cpp: Added.
3156 (WebCore::SourceAlpha::create):
3157 (WebCore::SourceAlpha::effectName):
3158 (WebCore::SourceAlpha::apply):
3159 (WebCore::SourceAlpha::dump):
3160 * platform/graphics/filters/SourceAlpha.h: Added.
3161 (WebCore::SourceAlpha::SourceAlpha):
3162 * platform/graphics/filters/SourceGraphic.cpp: Added.
3163 (WebCore::SourceGraphic::create):
3164 (WebCore::SourceGraphic::effectName):
3165 (WebCore::SourceGraphic::apply):
3166 (WebCore::SourceGraphic::dump):
3167 * platform/graphics/filters/SourceGraphic.h: Added.
3168 (WebCore::SourceGraphic::SourceGraphic):
3169 * svg/FilterBuilder.cpp: Added.
3170 (WebCore::FilterBuilder::FilterBuilder):
3171 (WebCore::FilterBuilder::add):
3172 (WebCore::FilterBuilder::getEffectById):
3173 (WebCore::FilterBuilder::clearEffects):
3174 * svg/FilterBuilder.h:
3176 2009-05-24 Simon Hausmann <simon.hausmann@nokia.com>
3178 Reviewed by Maciej Stachowiak.
3180 https://bugs.webkit.org/show_bug.cgi?id=25612
3182 Add support conditionals in the JSC bindings generator code for attributes,
3183 by placing feature #ifdefs around the setters/getters.
3185 Made the audio and video element specific DOM attributes conditional
3186 in the generated code, by moving the #ifdefs from the IDL files into
3187 the generated code. This allows for re-using the same generated code
3188 with or without ENABLE(VIDEO).
3190 * page/DOMWindow.idl:
3191 * bindings/scripts/CodeGeneratorJS.pm:
3193 2009-05-23 Holger Hans Peter Freyther <zecke@selfish.org>
3195 Unreviewed build fix for Qt. Change signature to have PassOwnPtr.
3197 * platform/text/qt/TextCodecQt.cpp:
3198 (WebCore::newTextCodecQt):
3200 2009-05-23 Dan Bernstein <mitz@apple.com>
3202 Reviewed by Darin Adler.
3204 - clean up ColorMac a little
3206 * platform/graphics/mac/ColorMac.h: Whitespace change.
3207 * platform/graphics/mac/ColorMac.mm: Removed redundant #import
3208 statements and sorted the remaining ones.
3209 (WebCore::makeRGBAFromNSColor): Replaced four Objective-C method calls
3210 with a single call and removed redundant casts to int.
3211 (WebCore::nsColor): Removed ".0f" from number literals used as CGFloats.
3212 In one case, this avoids an intermediate conversion to float before
3213 conversion to double on 64-bit.
3214 (WebCore::CGColorFromNSColor): Replaced four Objective-C method calls
3216 (WebCore::focusRingColor):
3217 (+[WebCoreControlTintObserver controlTintDidChange]): Whitespace change.
3219 2009-05-23 Jan Michael Alonzo <jmalonzo@webkit.org>
3221 Reviewed by Xan Lopez.
3223 [Gtk] ROLE_ROW_HEADER should not be used for list item bullets/numbers
3224 https://bugs.webkit.org/show_bug.cgi?id=25900
3226 Use ATK_ROLE_TEXT for ListMarkerRole.
3228 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3231 2009-05-23 David Kilzer <ddkilzer@apple.com>
3233 Reformat WebCore::requiresContextForWordBoundary()
3235 * platform/text/TextBoundaries.h:
3236 (WebCore::requiresContextForWordBoundary):
3238 2009-05-23 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
3240 Not reviewed. Roll out ResourceHandle patch, that I accidently included in my last commit.
3242 * platform/network/ResourceHandle.cpp:
3243 (WebCore::ResourceHandle::shouldContentSniffURL):
3245 2009-05-23 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
3247 Reviewed by Darin Adler.
3249 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23808
3251 After a long journey, add the last missing ABC to share form control element support with HTMLSelectElement.
3252 RenderListBox/RenderMenuList operates on SelectElement instead of HTMLSelectElement now, querying selected index etc.
3253 This makes it possible to use these render objects for ie. WML, as it's done before for input & option elements.
3255 WMLSelectElement will be created soon, in a follow-up patch, adding more methods to SelectElement, sharing code between
3256 HTMLSelectElement/WMLSelectElement.
3260 * WebCore.vcproj/WebCore.vcproj:
3261 * WebCore.xcodeproj/project.pbxproj:
3262 * WebCoreSources.bkl:
3263 * accessibility/AccessibilityListBox.cpp:
3264 (WebCore::AccessibilityListBox::addChildren):
3265 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
3266 * accessibility/AccessibilityListBoxOption.cpp:
3267 (WebCore::AccessibilityListBoxOption::listBoxOptionIndex):
3268 * accessibility/AccessibilityRenderObject.cpp:
3269 (WebCore::AccessibilityRenderObject::actionElement):
3271 (WebCore::Element::isFormControlElement):
3272 (WebCore::Element::dispatchFormControlChangeEvent):
3273 * dom/SelectElement.cpp: Added.
3274 (WebCore::toSelectElement):
3275 * dom/SelectElement.h: Added.
3276 (WebCore::SelectElement::~SelectElement):
3277 * html/HTMLFormControlElement.cpp:
3278 (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent):
3279 * html/HTMLFormControlElement.h:
3280 * html/HTMLInputElement.cpp:
3281 (WebCore::HTMLInputElement::setChecked):
3282 (WebCore::HTMLInputElement::defaultEventHandler):
3283 * html/HTMLOptionElement.cpp:
3284 (WebCore::HTMLOptionElement::index):
3285 * html/HTMLSelectElement.cpp:
3286 (WebCore::HTMLSelectElement::selectedIndex):
3287 (WebCore::HTMLSelectElement::lastSelectedListIndex):
3288 (WebCore::HTMLSelectElement::deselectItems):
3289 (WebCore::HTMLSelectElement::setSelectedIndex):
3290 (WebCore::HTMLSelectElement::length):
3291 (WebCore::HTMLSelectElement::remove):
3292 (WebCore::HTMLSelectElement::value):
3293 (WebCore::HTMLSelectElement::setValue):
3294 (WebCore::HTMLSelectElement::saveFormControlState):
3295 (WebCore::HTMLSelectElement::restoreFormControlState):
3296 (WebCore::HTMLSelectElement::selectAll):
3297 (WebCore::HTMLSelectElement::appendFormData):
3298 (WebCore::HTMLSelectElement::optionToListIndex):
3299 (WebCore::HTMLSelectElement::listToOptionIndex):
3300 (WebCore::HTMLSelectElement::recalcListItems):
3301 (WebCore::HTMLSelectElement::reset):
3302 (WebCore::HTMLSelectElement::dispatchFocusEvent):
3303 (WebCore::HTMLSelectElement::dispatchBlurEvent):
3304 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
3305 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3306 (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
3307 (WebCore::HTMLSelectElement::updateListBoxSelection):
3308 (WebCore::HTMLSelectElement::menuListOnChange):
3309 (WebCore::HTMLSelectElement::listBoxOnChange):
3310 (WebCore::HTMLSelectElement::saveLastSelection):
3311 (WebCore::HTMLSelectElement::typeAheadFind):
3312 (WebCore::HTMLSelectElement::nextSelectableListIndex):
3313 (WebCore::HTMLSelectElement::previousSelectableListIndex):
3314 (WebCore::HTMLSelectElement::setLength):
3315 (WebCore::HTMLSelectElement::checkListItems):
3316 * html/HTMLSelectElement.h:
3317 (WebCore::HTMLSelectElement::size):
3318 (WebCore::HTMLSelectElement::multiple):
3319 (WebCore::HTMLSelectElement::listItems):
3320 (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
3321 * platform/network/ResourceHandle.cpp:
3322 (WebCore::ResourceHandle::shouldContentSniffURL):
3323 * rendering/RenderFileUploadControl.cpp:
3324 (WebCore::RenderFileUploadControl::valueChanged):
3325 * rendering/RenderListBox.cpp:
3326 (WebCore::RenderListBox::RenderListBox):
3327 (WebCore::RenderListBox::updateFromElement):
3328 (WebCore::RenderListBox::scrollToRevealSelection):
3329 (WebCore::RenderListBox::size):
3330 (WebCore::RenderListBox::numItems):
3331 (WebCore::RenderListBox::paintItemForeground):
3332 (WebCore::RenderListBox::paintItemBackground):
3333 (WebCore::RenderListBox::panScroll):
3334 (WebCore::RenderListBox::autoscroll):
3335 (WebCore::RenderListBox::stopAutoscroll):
3336 (WebCore::RenderListBox::valueChanged):
3337 (WebCore::RenderListBox::nodeAtPoint):
3338 * rendering/RenderListBox.h:
3339 * rendering/RenderMenuList.cpp:
3340 (WebCore::RenderMenuList::RenderMenuList):
3341 (WebCore::RenderMenuList::updateOptionsWidth):
3342 (WebCore::RenderMenuList::updateFromElement):
3343 (WebCore::RenderMenuList::setTextFromOption):
3344 (WebCore::RenderMenuList::showPopup):
3345 (WebCore::RenderMenuList::valueChanged):
3346 (WebCore::RenderMenuList::itemText):
3347 (WebCore::RenderMenuList::itemIsEnabled):
3348 (WebCore::RenderMenuList::itemStyle):
3349 (WebCore::RenderMenuList::itemBackgroundColor):
3350 (WebCore::RenderMenuList::listSize):
3351 (WebCore::RenderMenuList::selectedIndex):
3352 (WebCore::RenderMenuList::itemIsSeparator):
3353 (WebCore::RenderMenuList::itemIsLabel):
3354 (WebCore::RenderMenuList::itemIsSelected):
3355 (WebCore::RenderMenuList::setTextFromItem):
3356 * rendering/RenderMenuList.h:
3357 * rendering/RenderSlider.cpp:
3358 (WebCore::RenderSlider::setValueForPosition):
3360 2009-05-23 David Kilzer <ddkilzer@apple.com>
3362 Fix Gtk/Qt builds for PassOwnPtr
3364 * platform/graphics/cairo/ImageCairo.cpp:
3365 (WebCore::Image::drawPattern): Use an OwnPtr<ImageBuffer>
3366 instead of an std::auto_ptr<ImageBuffer> to store the result of
3367 ImageBuffer::create() now that it returns a
3368 PassOwnPtr<ImageBuffer>.
3369 * platform/graphics/qt/PathQt.cpp:
3370 (WebCore::Path::strokeContains): Ditto.
3371 (WebCore::Path::strokeBoundingRect): Ditto.
3373 2009-05-23 David Kilzer <ddkilzer@apple.com>
3375 Part 2 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
3377 <https://bugs.webkit.org/show_bug.cgi?id=25495>
3379 Reviewed by Oliver Hunt.
3381 No test cases added since there is no change in behavior.
3383 * WebCore.base.exp: Updated export for
3384 HistoryItem::setRedirectURLs() which now takes a PassOwnPtr.
3386 (WebCore::Node::childNodes): Use NodeListsNodeData::create()
3387 instead of new NodeListsNodeData.
3388 (WebCore::Node::registerDynamicNodeList): Ditto.
3389 (WebCore::Node::getElementsByTagNameNS): Ditto.
3390 (WebCore::Node::getElementsByName): Ditto.
3391 (WebCore::Node::getElementsByClassName): Ditto.
3392 * dom/NodeRareData.h:
3393 (WebCore::NodeListsNodeData::create): Added. Implements
3394 create() pattern popularized by RefCounted classes.
3395 (WebCore::NodeListsNodeData::NodeListsNodeData): Declared
3396 private constructor.
3397 (WebCore::NodeRareData::setNodeLists): Now takes a PassOwnPtr<>
3398 instead of an auto_ptr<>.
3399 * history/HistoryItem.cpp:
3400 (WebCore::HistoryItem::setRedirectURLs): Ditto.
3401 * history/HistoryItem.h:
3402 (WebCore::HistoryItem::setRedirectURLs): Ditto.
3403 * html/CanvasRenderingContext2D.cpp:
3404 (WebCore::CanvasRenderingContext2D::drawTextInternal): Use
3405 OwnPtr<> instead of auto_ptr<> for stack variable.
3406 * html/HTMLCanvasElement.cpp:
3407 (WebCore::HTMLCanvasElement::createImageBuffer): Updated to use
3408 assignment operator now that ImageBuffer::create() returns a
3410 * loader/EmptyClients.h:
3411 (WebCore::EmptyChromeClient::createHTMLParserQuirks): Return a
3412 PassOwnPtr<> instead of a raw HTMLParserQuirks pointer.
3413 * page/ChromeClient.h:
3414 (WebCore::ChromeClient::createHTMLParserQuirks): Ditto.
3415 * platform/graphics/GeneratedImage.cpp:
3416 (WebCore::GeneratedImage::drawPattern): Use OwnPtr<> instead of
3417 auto_ptr<> for stack variable.
3418 * platform/graphics/ImageBuffer.h:
3419 (WebCore::ImageBuffer::create): Return PassOwnPtr<> instead of
3420 auto_ptr<>. Use OwnPtr<> instead of auto_ptr<> for stack
3422 * platform/mac/ScrollbarThemeMac.mm:
3423 (WebCore::ScrollbarThemeMac::paint): Use OwnPtr<> instead of
3424 auto_ptr<> for stack variable.
3425 * platform/text/TextCodec.h:
3426 (WebCore::NewTextCodecFunction): Return PassOwnPtr<> instead of
3428 * platform/text/TextCodecICU.cpp:
3429 (WebCore::newTextCodecICU): Ditto.
3430 * platform/text/TextCodecLatin1.cpp:
3431 (WebCore::newStreamingTextDecoderWindowsLatin1): Ditto.
3432 * platform/text/TextCodecUTF16.cpp:
3433 (WebCore::newStreamingTextDecoderUTF16LE): Ditto.
3434 (WebCore::newStreamingTextDecoderUTF16BE): Ditto.
3435 * platform/text/TextCodecUserDefined.cpp:
3436 (WebCore::newStreamingTextDecoderUserDefined): Ditto.
3437 * platform/text/TextEncodingRegistry.cpp:
3438 (WebCore::newTextCodec): Ditto.
3439 * platform/text/TextEncodingRegistry.h:
3440 (WebCore::newTextCodec): Ditto.
3441 * platform/text/mac/TextCodecMac.cpp:
3442 (WebCore::newTextCodecMac): Ditto.
3443 * rendering/RenderBoxModelObject.cpp:
3444 (WebCore::RenderBoxModelObject::paintFillLayerExtended): Use
3445 OwnPtr<> instead of auto_ptr<> for stack variable.
3446 * svg/SVGMaskElement.cpp:
3447 (WebCore::SVGMaskElement::drawMaskerContent): Ditto. Return
3448 OwnPtr<> instead of auto_ptr<>.
3449 * svg/SVGMaskElement.h:
3450 (WebCore::SVGMaskElement::drawMaskerContent): Return OwnPtr<>
3451 instead of auto_ptr<>.
3452 * svg/SVGPatternElement.cpp:
3453 (WebCore::SVGPatternElement::buildPattern): Use OwnPtr<> instead
3454 of auto_ptr<> for stack variable.
3455 * svg/graphics/SVGImage.cpp:
3456 (WebCore::SVGImage::nativeImageForCurrentFrame): Updated to use
3457 assignment operator now that ImageBuffer::create() returns a
3459 * svg/graphics/SVGPaintServerGradient.cpp:
3460 (WebCore::createMaskAndSwapContextForTextGradient): Use OwnPtr<>
3461 instead of auto_ptr<> for stack variable.
3462 * svg/graphics/SVGPaintServerPattern.cpp:
3463 (WebCore::SVGPaintServerPattern::setTile): Updated to take a
3464 PassOwnPtr<> instead of an auto_ptr<>.
3465 (WebCore::SVGPaintServerPattern::setup): Use OwnPtr<> instead of
3466 auto_ptr<> for stack variable.
3467 * svg/graphics/SVGPaintServerPattern.h:
3468 (WebCore::SVGPaintServerPattern::setTile): Updated to take a
3469 PassOwnPtr<> instead of an auto_ptr<>.
3470 * svg/graphics/SVGResourceMasker.cpp:
3471 (WebCore::SVGResourceMasker::applyMask): Updated to use
3472 assignment operator now that SVGMaskElement::drawMaskerContent()
3473 returns a PassOwnPtr<>. Use OwnPtr<> instead of auto_ptr<> for
3476 2009-05-23 David Kilzer <ddkilzer@apple.com>
3478 Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
3480 <https://bugs.webkit.org/show_bug.cgi?id=25495>
3482 Reviewed by Oliver Hunt.
3484 * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
3485 * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
3486 * WebCore.vcproj/WebCore.vcproj: Added OwnPtrCommon.h and
3489 2009-05-23 David Kilzer <ddkilzer@apple.com>
3491 Fix Mac builds by backing out r44093
3493 * bindings/js/JSCustomPositionCallback.cpp:
3494 * bindings/js/JSCustomPositionCallback.h:
3495 * bindings/js/JSCustomPositionErrorCallback.cpp:
3496 * bindings/js/JSCustomPositionErrorCallback.h:
3497 * bindings/js/JSGeolocationCustom.cpp:
3498 * page/Geolocation.cpp:
3499 * page/Geolocation.idl:
3500 * page/Geoposition.cpp:
3501 * page/Geoposition.h:
3502 * page/Geoposition.idl:
3503 * page/Navigator.cpp:
3504 (WebCore::Navigator::disconnectFrame):
3505 (WebCore::Navigator::geolocation):
3506 * page/PositionError.idl:
3507 * platform/GeolocationService.cpp:
3508 (WebCore::GeolocationService::create):
3510 2009-05-23 Laszlo Gombos <laszlo.1.gombos@nokia.com>
3512 Reviewed by Eric Seidel.
3514 Add GEOLOCATION guards around Geolocation API code
3515 https://bugs.webkit.org/show_bug.cgi?id=25756
3517 * bindings/js/JSCustomPositionCallback.cpp:
3518 * bindings/js/JSCustomPositionCallback.h:
3519 * bindings/js/JSCustomPositionErrorCallback.cpp:
3520 * bindings/js/JSCustomPositionErrorCallback.h:
3521 * bindings/js/JSGeolocationCustom.cpp:
3522 * page/Geolocation.cpp:
3523 * page/Geolocation.idl:
3524 * page/Geoposition.cpp:
3525 * page/Geoposition.h:
3526 * page/Geoposition.idl:
3527 * page/Navigator.cpp:
3528 (WebCore::Navigator::disconnectFrame):
3529 (WebCore::Navigator::geolocation):
3530 * page/PositionError.idl:
3531 * platform/GeolocationService.cpp:
3533 2009-05-23 David Kilzer <ddkilzer@apple.com>
3535 Rename startupdateStyleIfNeededDispatcher to startUpdateStyleIfNeededDispatcher
3537 In r42377, startUpdateRenderingDispatcher() was renamed to
3538 startupdateStyleIfNeededDispatcher(), but the camelCase "U" was
3539 dropped. This change restores it.
3542 * page/animation/AnimationController.cpp:
3543 (WebCore::AnimationControllerPrivate::startUpdateStyleIfNeededDispatcher):
3544 (WebCore::AnimationControllerPrivate::addEventToDispatch):
3545 (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
3546 (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
3547 (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):