1 2009-11-23 Dirk Schulze <krit@webkit.org>
3 Reviewed by Oliver Hunt.
5 [Cairo] support blurred test-shadow
6 [https://bugs.webkit.org/show_bug.cgi?id=31797]
8 Support for blurred text-shadows on Cairo. This patch
9 reuses the code of blurred box-shadows, introduced in
10 bug 26102. For a full textshadow support, a filters enabled
13 * platform/graphics/cairo/FontCairo.cpp:
14 (WebCore::Font::drawGlyphs):
16 2009-11-23 Jens Alfke <snej@chromium.org>
18 Reviewed by Geoffrey Garen.
20 Change incorrect calls to the constructor "EventNames()" to the correct accessor
21 "eventNames()". This saves ~100 AtomicString lookups each time.
22 https://bugs.webkit.org/show_bug.cgi?id=31811
24 * dom/EventNames.h: Make constructor private to prevent this from happening again.
25 * history/CachedFrame.cpp:
26 (WebCore::CachedFrameBase::restore): EventNames() --> eventNames()
27 * html/HTMLFormControlElement.cpp:
28 (WebCore::HTMLFormControlElement::checkValidity): EventNames() --> eventNames()
29 * loader/FrameLoader.cpp:
30 (WebCore::FrameLoader::stopLoading): EventNames() --> eventNames()
31 (WebCore::FrameLoader::pageHidden): EventNames() --> eventNames()
33 (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): EventNames() --> eventNames()
35 2009-11-23 Adam Langley <agl@google.com>
37 Reviewed by Dmitry Titov.
39 Chromium Linux: Limit the stroke width and mitre limit.
41 Limit the stroke width and mitre limit that we'll pass into Skia to
42 avoid overflowing Skia's uint16_t glyph widths.
44 http://code.google.com/p/chromium/issues/detail?id=28250
45 https://bugs.webkit.org/show_bug.cgi?id=31747
47 * platform/graphics/skia/PlatformContextSkia.cpp:
49 (PlatformContextSkia::setupPaintForStroking):
51 2009-11-23 Alexey Proskuryakov <ap@apple.com>
53 Reviewed by Oliver Hunt.
55 https://bugs.webkit.org/show_bug.cgi?id=31812
56 WebSocket code uses RefPtr::get() where it shouldn't
58 No change in funcitonality, just coding style correction.
60 * websockets/WebSocket.cpp:
61 (WebCore::WebSocket::~WebSocket):
62 * websockets/WebSocketChannel.cpp:
63 (WebCore::WebSocketChannel::connect):
64 (WebCore::WebSocketChannel::send):
65 (WebCore::WebSocketChannel::bufferedAmount):
66 (WebCore::WebSocketChannel::close):
67 (WebCore::WebSocketChannel::disconnect):
68 (WebCore::WebSocketChannel::didOpen):
69 (WebCore::WebSocketChannel::didClose):
70 (WebCore::WebSocketChannel::didReceiveData):
71 (WebCore::WebSocketChannel::didFail):
73 2009-11-23 Alexey Proskuryakov <ap@apple.com>
77 * platform/network/cf/SocketStreamHandleCFNet.cpp:
78 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread
79 is static, so it can't use member variables directly.
81 2009-11-23 Alexey Proskuryakov <ap@apple.com>
83 Reviewed by Brady Eidson.
85 https://bugs.webkit.org/show_bug.cgi?id=31748
86 Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport
88 * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since
89 they didn't carry useful information.
91 * platform/network/cf/SocketStreamHandleCFNet.cpp:
92 (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually
94 (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams
95 only get scheduled after PAC is fetched and executed asynchronously.
96 (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event
98 (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread.
99 (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto.
100 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication,
101 we make the call even on Mac.
102 (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL.
103 (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted,
104 we need to get rid of the event source.
105 (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get.
106 (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the
107 array may come directly from system configuration, or from PAC.
108 (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely
110 (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed
111 before we get to the destructor.
112 (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution
113 is still in progress.
115 2009-11-23 Oliver Hunt <oliver@apple.com>
117 Reviewed by Geoff Garen.
119 Don't leak the CGImage we create when drawing a sub image.
121 * platform/graphics/cg/ImageCG.cpp:
122 (WebCore::BitmapImage::draw):
124 2009-11-23 Adam Barth <abarth@webkit.org>
126 Reviewed by Dimitri Glazkov.
128 [V8] Don't crash when OOM in creating isolated world
129 https://bugs.webkit.org/show_bug.cgi?id=31805
131 We need to add some more null checks to avoid crashing. No new tests
132 because we don't have a good way to test out-of-memory bugs.
134 * bindings/v8/V8Proxy.cpp:
135 (WebCore::V8Proxy::evaluateInIsolatedWorld):
136 (WebCore::V8Proxy::evaluateInNewContext):
137 (WebCore::V8Proxy::setInjectedScriptContextDebugId):
138 * bindings/v8/V8Proxy.h:
140 2009-11-23 Dirk Schulze <krit@webkit.org>
142 Reviewed by Nikolas Zimmermann.
144 This is the implementation of the filterRes attribute. It
145 helps the SVG developer to set the quality of a filter by
146 giving the width or height of filter.
147 This patch also sets the filter resolution to lower values
148 if a intermediate ImageBuffer size is bigger than the given
150 The maximal size is set to 5000x5000 by default. This is a
151 subjectiv decission. Everthing greater than this values gets
152 sensible slower. Values of 10000x10000 crashed on WebKitGtk.
153 For mobil devices a maximum size of 100x100 or 200x200 seems
155 The important fact on filter resolution is, that the output
156 size is still the size given by the <filter> element.
158 Tests: svg/filters/big-sized-filter-2.svg
159 svg/filters/big-sized-filter.svg
160 svg/filters/filterRes.svg
162 * platform/graphics/FloatRect.cpp:
163 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
164 * platform/graphics/FloatRect.h:
165 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
166 * platform/graphics/cairo/GraphicsContextCairo.cpp:
167 (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for
169 * platform/graphics/filters/FEBlend.cpp:
170 (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations.
171 * platform/graphics/filters/FEColorMatrix.cpp:
172 (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations.
173 * platform/graphics/filters/FEComponentTransfer.cpp:
174 (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern
176 * platform/graphics/filters/FEComposite.cpp:
177 (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations.
178 * platform/graphics/filters/FEGaussianBlur.cpp:
179 (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations.
180 * platform/graphics/filters/Filter.h: Add the abbility to change the quality
182 (WebCore::Filter::filterResolution):
183 (WebCore::Filter::setFilterResolution):
184 (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion
185 as well as the scaledSubRegion. It also searches for the biggest effect size.
186 We have to change the filter resolution, if one intermediate ImageBuffer size
187 doesn't fit in the maximal image size.
188 * platform/graphics/filters/FilterEffect.cpp:
189 (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get
190 the right part of a previous effect result.
191 (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get
192 the right part of a previous effect result.
193 (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create
194 a new intermediate ImageBuffer for the result of the current effect.
195 * platform/graphics/filters/FilterEffect.h:
196 (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the
198 (WebCore::FilterEffect::setScaledSubRegion):
199 (WebCore::FilterEffect::effectBoundaries): The original values of the
200 EffectElement for a second subRegion calculation.
201 (WebCore::FilterEffect::setEffectBoundaries):
202 * platform/graphics/filters/ImageBufferFilter.cpp:
203 (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one.
204 * platform/graphics/filters/ImageBufferFilter.h:
205 (WebCore::ImageBufferFilter::maxImageSize):
206 (WebCore::ImageBufferFilter::calculateEffectSubRegion):
207 * platform/graphics/filters/SourceAlpha.cpp:
208 (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect
210 * platform/graphics/filters/SourceGraphic.cpp:
211 (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect
213 * svg/SVGFilterElement.cpp:
214 (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute.
215 (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current
217 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
218 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save
219 values to effectBoundaries of the filter effect
220 * svg/graphics/SVGResourceFilter.cpp:
221 (WebCore::SVGResourceFilter::SVGResourceFilter):
222 (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero.
223 (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size
224 fits into the maximal image size, modifys scale factors if not and return a
226 (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to
227 filterResolution (given by FilterElement or calculated on to big image sizes).
228 Set the scale level to SVGFilter.
229 (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter
231 * svg/graphics/SVGResourceFilter.h:
232 (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement.
233 (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides
235 (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal.
236 (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical.
237 * svg/graphics/filters/SVGFEDisplacementMap.cpp:
238 (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations.
239 Kernel values are scaled to current filter resolution too.
240 * svg/graphics/filters/SVGFEFlood.cpp:
241 (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations.
242 * svg/graphics/filters/SVGFEMerge.cpp:
243 (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations.
244 Kernel values are scaled to current filter resolution too.
245 * svg/graphics/filters/SVGFEMorphology.cpp:
246 (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations.
247 Kernel values are scaled to current filter resolution too.
248 * svg/graphics/filters/SVGFEOffset.cpp:
249 (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations.
250 * svg/graphics/filters/SVGFETile.cpp:
251 (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations.
252 * svg/graphics/filters/SVGFilter.cpp:
253 (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests,
254 scaledSubRegion according to the current filterResolution and get the maximal image size.
255 * svg/graphics/filters/SVGFilter.h:
256 (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement.
257 (WebCore::SVGFilter::filterRegion): Use virtual for clarification.
258 (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification.
259 (WebCore::SVGFilter::maxImageSize): Get the maximal image size.
261 2009-11-23 Simon Hausmann <simon.hausmann@nokia.com>
263 Reviewed by Kenneth Rohde Christiansen.
265 [Qt] Wrong runtime instance objects of wrapped QObjects may be used if
266 the wrapped object died before the gc removed the instance.
268 https://bugs.webkit.org/show_bug.cgi?id=31681
270 Before using a cached instance, verify that its wrapped QObject is
273 * bridge/qt/qt_instance.cpp:
274 (JSC::Bindings::QtInstance::getQtInstance):
275 * bridge/qt/qt_instance.h:
276 (JSC::Bindings::QtInstance::hashKey):
278 2009-11-22 Chris Fleizach <cfleizach@apple.com>
280 Reviewed by Oliver Hunt.
282 ARIA: support aria-flowto
283 https://bugs.webkit.org/show_bug.cgi?id=31762
285 Test: platform/mac/accessibility/aria-flowto.html
287 * accessibility/AccessibilityObject.h:
288 (WebCore::AccessibilityObject::ariaOwnsElements):
289 (WebCore::AccessibilityObject::supportsARIAFlowTo):
290 (WebCore::AccessibilityObject::ariaFlowToElements):
291 * accessibility/AccessibilityRenderObject.cpp:
292 (WebCore::AccessibilityRenderObject::linkedUIElements):
293 (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
294 (WebCore::AccessibilityRenderObject::ariaFlowToElements):
295 * accessibility/AccessibilityRenderObject.h:
296 * html/HTMLAttributeNames.in:
298 2009-11-22 Nikolas Zimmermann <nzimmermann@rim.com>
300 Not reviewed. Build fix for WML enabled builds.
301 Adopt WebCore API changes.
303 * wml/WMLAElement.cpp:
304 (WebCore::WMLAElement::defaultEventHandler):
305 * wml/WMLInputElement.cpp:
306 (WebCore::WMLInputElement::defaultEventHandler):
308 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
310 Reviewed by Timothy Hatcher.
312 Web Inspector: Introduce sidebar background on timeline panel in order
313 to prevent it from flickering on scroll.
315 https://bugs.webkit.org/show_bug.cgi?id=31789
317 * inspector/front-end/TimelinePanel.js:
318 (WebInspector.TimelinePanel):
319 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
320 (WebInspector.TimelinePanel.prototype._onScroll):
321 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
322 * inspector/front-end/inspector.css:
324 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
326 Reviewed by Timothy Hatcher.
328 Web Inspector: Reimplement TimelinePanel to make it fast:
329 - Extract grid and overview into separate files
330 - Make timeline create only divs for visible rows
332 https://bugs.webkit.org/show_bug.cgi?id=31784
335 * WebCore.vcproj/WebCore.vcproj:
336 * inspector/front-end/AbstractTimelinePanel.js:
337 (WebInspector.AbstractTimelinePanel.prototype.createInterface):
338 (WebInspector.AbstractTimelinePanel.prototype.refresh):
339 (WebInspector.AbstractTimelinePanel.prototype.set calculator):
340 * inspector/front-end/TimelineGrid.js: Added.
341 (WebInspector.TimelineGrid):
342 (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
343 (WebInspector.TimelineGrid.prototype.updateDividers):
344 (WebInspector.TimelineGrid.prototype.addEventDivider):
345 (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
346 * inspector/front-end/TimelineOverviewPane.js: Added.
347 (WebInspector.TimelineOverviewPane):
348 (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked):
349 (WebInspector.TimelineOverviewPane.prototype.update):
350 (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth):
351 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
352 (WebInspector.TimelineOverviewPane.prototype.reset):
353 (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
354 (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging):
355 (WebInspector.TimelineOverviewPane.prototype._dragWindow):
356 (WebInspector.TimelineOverviewPane.prototype._windowDragging):
357 (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft):
358 (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight):
359 (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
360 (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
361 (WebInspector.TimelineOverviewCalculator):
362 (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
363 (WebInspector.TimelineOverviewCalculator.prototype.reset):
364 (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries):
365 (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan):
366 (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
367 (WebInspector.TimelineCategoryTreeElement):
368 (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
369 (WebInspector.TimelineCategoryGraph):
370 (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
371 (WebInspector.TimelineCategoryGraph.prototype.addChunk):
372 (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
373 (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
374 * inspector/front-end/TimelinePanel.js:
375 (WebInspector.TimelinePanel):
376 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
377 (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
378 (WebInspector.TimelinePanel.prototype._formatRecord):
379 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
380 (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
381 (WebInspector.TimelinePanel.prototype.resize):
382 (WebInspector.TimelinePanel.prototype.reset):
383 (WebInspector.TimelinePanel.prototype.show):
384 (WebInspector.TimelinePanel.prototype._onScroll):
385 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
386 (WebInspector.TimelinePanel.prototype._refresh):
387 (WebInspector.TimelinePanel.prototype._refreshRecords):
388 (WebInspector.TimelinePanel.prototype._adjustScrollPosition):
389 (WebInspector.TimelineCategory):
390 (WebInspector.TimelineCalculator):
391 (WebInspector.TimelineCalculator.prototype.get boundarySpan):
392 (WebInspector.TimelineRecordListRow):
393 (WebInspector.TimelineRecordListRow.prototype.update):
394 (WebInspector.TimelineRecordGraphRow):
395 (WebInspector.TimelineRecordGraphRow.prototype.update):
396 * inspector/front-end/WebKit.qrc:
397 * inspector/front-end/inspector.css:
398 * inspector/front-end/inspector.html:
400 2009-11-22 Chris Evans <cevans@chromium.org>
402 Reviewed by Adam Barth.
404 Disable access to file:/// directory listings
405 https://bugs.webkit.org/show_bug.cgi?id=31329
407 Deny access to directory listings. This needs doing in WebKit for
408 WebKit clients that do permit top-level navigation to file:///dir.
409 This matches Firefox, plus the existing Safari implementation (which
410 does not support any directory access at all). It will fix the
411 LayoutTest named below for Chromium.
413 Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
415 * page/SecurityOrigin.cpp: Deny access to directory listings.
416 (WebCore::SecurityOrigin::SecurityOrigin):
417 (WebCore::SecurityOrigin::canRequest):
419 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
421 Reviewed by Timothy Hatcher.
423 Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console
424 https://bugs.webkit.org/show_bug.cgi?id=31400
426 Handle the following when on a Mac:
428 Ctrl+P = Previous (like Up arrow)
429 Ctrl+N = Next (like Down arrow)
431 No longer rerun autocompletion when just pushing a modifier key
432 like Control, Alt, Shift, or Meta.
434 Improved arrow key behavior with Multiline code in the Console, with the following behavior:
436 Up = Previous Command if on First Line (caret moves to the end of the first line)
437 otherwise default caret movement in text.
438 Down = Next Command if on Last Line (caret naturally moves to the end)
439 otherwise default caret movement in text.
441 * inspector/front-end/TextPrompt.js:
442 (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts
443 (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line
444 (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line
445 (WebInspector.TextPrompt.prototype._upKeyPressed):
446 (WebInspector.TextPrompt.prototype._downKeyPressed):
447 (WebInspector.TextPrompt.prototype._moveBackInHistory):
448 (WebInspector.TextPrompt.prototype._moveForwardInHistory):
450 2009-11-21 Jessie Berlin <jberlin@webkit.org>
452 Reviewed by Timothy Hatcher.
454 Adds a tooltip containing the full url of the resource to each element
455 in the Resources panel so that it is possible to quickly see the query
457 https://bugs.webkit.org/show_bug.cgi?id=19103
459 * inspector/front-end/ResourcesPanel.js:
460 (WebInspector.ResourceSidebarTreeElement.prototype.refresh):
461 Set the tooltip to be the resource's url.
463 2009-11-21 Simon Fraser <simon.fraser@apple.com>
465 Reviewed by Dan Bernstein.
467 CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages
468 https://bugs.webkit.org/show_bug.cgi?id=31588
470 In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100%
471 so that findRule() and deleteRule() work with these keywords.
473 * css/WebKitCSSKeyframesRule.cpp:
474 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
476 2009-11-21 Daniel Bates <dbates@webkit.org>
478 Reviewed by Eric Seidel.
480 https://bugs.webkit.org/show_bug.cgi?id=31647
482 Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr.
484 No functionality was changed. So, no new tests.
486 * dom/KeyboardEvent.cpp:
487 (WebCore::KeyboardEvent::~KeyboardEvent):
488 * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr.
489 (WebCore::KeyboardEvent::keyEvent):
491 2009-11-20 Chris Fleizach <cfleizach@apple.com>
493 Reviewed by Beth Dakin.
495 WAI-ARIA: add support for aria-owns
496 https://bugs.webkit.org/show_bug.cgi?id=31702
498 Re-organized how accessibilityAttributeNames are returned so
499 that it's possible for an element to add an attribute based on
500 a dynamic value. In this case, we only want to add AXOwn if the
501 element actually supports aria-owns.
503 Test: platform/mac/accessibility/aria-owns.html
505 * accessibility/AccessibilityObject.h:
506 (WebCore::AccessibilityObject::supportsARIAOwns):
507 (WebCore::AccessibilityObject::ariaOwnsElements):
508 * accessibility/AccessibilityRenderObject.cpp:
509 (WebCore::AccessibilityRenderObject::ariaOwnsElements):
510 (WebCore::AccessibilityRenderObject::supportsARIAOwns):
511 * accessibility/AccessibilityRenderObject.h:
512 * accessibility/mac/AccessibilityObjectWrapper.mm:
513 (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
514 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
515 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
516 * html/HTMLAttributeNames.in:
518 2009-11-20 Eric Carlson <eric.carlson@apple.com>
520 Reviewed by Simon Fraser.
522 <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element
524 * css/mediaControls.css:
525 Define closed caption toggle button.
527 * rendering/RenderMedia.cpp:
528 (WebCore::RenderMedia::updateControls):
529 Create closed caption toggle button in display order.
531 * rendering/RenderThemeMac.mm:
532 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
533 Don't require MediaControllerThemeQuickTime theme for captions toggle button.
534 No need to check if the movie has video, a closed captions track is a video
537 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
539 Reviewed by Timothy Hatcher.
541 Web Inspector: Running code in the Console that ends with a
542 single line comment no longer produces a parse error.
544 * inspector/front-end/InjectedScript.js:
545 (InjectedScript._evaluateOn):
547 2009-11-20 Chris Fleizach <cfleizach@apple.com>
549 Reviewed by Beth Dakin.
551 WAI-ARIA: add support for 'math' role
552 https://bugs.webkit.org/show_bug.cgi?id=31706
554 * accessibility/AccessibilityObject.cpp:
555 * accessibility/AccessibilityObject.h:
556 * accessibility/mac/AccessibilityObjectWrapper.mm:
558 2009-11-20 Yael Aharon <yael.aharon@nokia.com>
560 Reviewed by Kenneth Rohde Christiansen.
562 NPN_ReloadPlugins does not reload the page even if reloadPages is true.
563 https://bugs.webkit.org/show_bug.cgi?id=30460
565 Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins().
566 It already refreshes plugins and reloads pages when necessary.
568 Tests: plugins/reloadplugins-and-pages.html
569 plugins/reloadplugins-no-pages.html
571 * plugins/PluginInfoStore.cpp:
572 (WebCore::refreshPlugins):
574 2009-11-20 Oliver Hunt <oliver@apple.com>
576 Reviewed by Dave Hyatt.
578 <rdar://7409188> WebKit needs to be able to serialize and deserialize objects.
580 Expose WebCore object serialization to WebKit.
583 * bindings/js/SerializedScriptValue.cpp:
584 (WebCore::SerializedScriptValue::~SerializedScriptValue):
585 (WebCore::SerializedScriptValue::create):
586 (WebCore::SerializedScriptValue::deserialize):
587 * bindings/js/SerializedScriptValue.h:
589 2009-11-20 Brian Weinstein <bweinstein@apple.com>
591 Reviewed by Tim Hatcher.
593 Fixes <http://webkit.org/b/31741>.
594 Web Inspector: User Entered Data on the console should show up no matter what filters.
596 Always show .console-user-command-result, no matter what the filter say
597 we should do with the other classes.
599 * inspector/front-end/inspector.css:
601 2009-11-20 Brian Weinstein <bweinstein@apple.com>
603 Reviewed by Tim Hatcher.
605 Fixes <http://webkit.org/b/31700>.
606 Web Inspector: isMac should be in one central location + Cached.
608 We should cache the value of isMac, and make the indexOf call in one
609 single location, because we are calling it from multiple places, and saving
610 the result can save us time, and make the call sites simpler.
612 * inspector/front-end/AbstractTimelinePanel.js:
613 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
614 * inspector/front-end/ConsoleView.js:
615 (WebInspector.ConsoleView.prototype._updateFilter):
616 * inspector/front-end/ElementsPanel.js:
617 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
618 * inspector/front-end/ScriptsPanel.js:
619 (WebInspector.ScriptsPanel):
620 * inspector/front-end/SourceFrame.js:
621 (WebInspector.SourceFrame.prototype._loaded):
622 * inspector/front-end/inspector.js:
623 (WebInspector.documentKeyDown):
624 (WebInspector.isMac):
626 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
628 Removed .DS_Store accidentally added in last (r51245).
630 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
632 Reviewed by Timothy Hatcher.
634 Web Inspector: Add Console Only Layout Mode
635 https://bugs.webkit.org/show_bug.cgi?id=30282
637 Adds a Console Panel, which allows for a Full size Console. This
638 extends the Drawer to the size of a Panel. This also fixes previous
639 resize issues with the Drawer.
641 * inspector/front-end/ConsolePanel.js: added.
642 (WebInspector.ConsolePanel):
643 (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel):
644 (WebInspector.ConsolePanel.prototype.show):
645 (WebInspector.ConsolePanel.prototype.hide):
646 * inspector/front-end/Drawer.js:
647 (WebInspector.Drawer):
648 (WebInspector.Drawer.prototype.set visibleView):
649 (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console.
650 (WebInspector.Drawer.prototype.show.animationFinished):
651 (WebInspector.Drawer.prototype.show):
652 (WebInspector.Drawer.prototype.hide.animationFinished):
653 (WebInspector.Drawer.prototype.hide):
654 (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full
655 (WebInspector.Drawer.prototype.enterPanelMode):
656 (WebInspector.Drawer.prototype.exitPanelMode):
657 (WebInspector.Drawer.prototype.immediatelyExitPanelMode):
658 (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
659 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
660 (WebInspector.Drawer.prototype._animateDrawerHeight):
661 (WebInspector.Drawer.prototype._animationDuration):
662 (WebInspector.Drawer.prototype._startStatusBarDragging):
663 (WebInspector.Drawer.prototype._statusBarDragging):
664 (WebInspector.Drawer.prototype._endStatusBarDragging):
666 Miscellaneous changes and cleanup.
668 * English.lproj/localizedStrings.js: "Console" toolbar title.
669 * inspector/front-end/ConsoleView.js: removed unnecessary element reordering
670 * inspector/front-end/Images/consoleIcon.png: added.
671 * inspector/front-end/inspector.css: added icon.
672 * inspector/front-end/inspector.html:
673 * inspector/front-end/inspector.js:
674 (WebInspector._createPanels): create console panel
675 (WebInspector.windowResize): resize drawer if necessary
676 (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode
677 (WebInspector.animateStyle): start animation interval, returns the interval key
678 (WebInspector.toggleAttach): resize drawer if necessary
679 (WebInspector.showConsolePanel): restore the panel when the inspector restarts
680 (WebInspector.showProfileForURL): style fix
682 Restore the panel when the inspector restarts.
684 * inspector/InspectorController.cpp:
685 (WebCore::InspectorController::setWindowVisible):
686 (WebCore::InspectorController::specialPanelForJSName):
687 * inspector/InspectorFrontend.cpp:
688 (WebCore::InspectorFrontend::showPanel):
693 * WebCore.vcproj/WebCore.vcproj:
694 * inspector/front-end/WebKit.qrc:
696 2009-11-20 Brian Weinstein <bweinstein@apple.com>
698 Reviewed by Tim Hatcher.
700 Fixes <http://webkit.org/b/31699>.
701 Web Inspector: Should Cache Values of InspectorController.platform() and port().
703 Refactor the Inspector to cache the value of InspectorController.platform
704 and InspectorController.port, because those need to call into C++, they are
705 being called more and more as we add platform specific keyboard shortcuts, and
706 they shouldn't change in the lifecycle of the Web Inspector.
708 * inspector/front-end/AbstractTimelinePanel.js:
709 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
710 * inspector/front-end/ConsoleView.js:
711 (WebInspector.ConsoleView.prototype._updateFilter):
712 * inspector/front-end/ElementsPanel.js:
713 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
714 * inspector/front-end/ScriptsPanel.js:
715 (WebInspector.ScriptsPanel):
716 * inspector/front-end/SourceFrame.js:
717 (WebInspector.SourceFrame.prototype._loaded):
718 * inspector/front-end/inspector.js:
719 (WebInspector.get platform):
720 (WebInspector.get port):
721 (WebInspector.loaded):
722 (WebInspector.documentKeyDown):
723 (WebInspector.toolbarDragStart):
725 2009-11-20 Dirk Schulze <krit@webkit.org>
727 Unreviewed build fix for filters enabled builds.
729 * platform/graphics/filters/FEColorMatrix.cpp:
730 (WebCore::FEColorMatrix::apply):
731 * platform/graphics/filters/FEComposite.cpp:
732 (WebCore::FEComposite::apply):
733 * platform/graphics/filters/SourceGraphic.cpp:
734 (WebCore::SourceGraphic::apply):
735 * svg/graphics/SVGResourceFilter.cpp:
736 (WebCore::SVGResourceFilter::applyFilter):
737 * svg/graphics/filters/SVGFEMerge.cpp:
738 (WebCore::FEMerge::apply):
739 * svg/graphics/filters/SVGFEOffset.cpp:
740 (WebCore::FEOffset::apply):
741 * svg/graphics/filters/SVGFETile.cpp:
742 (WebCore::FETile::apply):
744 2009-11-20 Eric Carlson <eric.carlson@apple.com>
746 Reviewed by Simon Fraser.
748 <rdar://problem/7389945> QTKit based media engine should not claim to support
749 fullscreen on Leopard
751 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
752 (WebCore::MediaPlayerPrivate::supportsFullscreen):
753 Only return true on SnowLeopard for now.
755 * rendering/RenderThemeMac.mm:
756 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
757 No need to special case MediaFullscreenButtonPart as the default implementation
758 asks the media engine if it supports fullscreen.
760 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
762 Reviewed by Simon Hausmann.
764 Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and
765 Girish Ramakrishnan <girish@forwardbias.in>
767 [Qt] Implement support for rendering plugins on Qt/Mac when a page is used
768 without a QWebView or when inside QGraphicsWebView.
770 Currently, the code provides the cgcontext of the PlatformPluginWidget to
771 the plugin. This approach does not work when we are printing, or using
772 QWebFrame::render() to render to a QImage/QPixmap since the plugin ends
773 up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead
774 of the QPaintDevice's context.
776 To solve all cases and keep the code simple, we render the plugin to an
777 offscreen pixmap in all cases. This way, the plugin always renders to the
778 CGContext of the pixmap and we then use QPainter to blit the pixmap into
779 the QPaintDevice. We also create a fake window and set it's WindowRef in
780 NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap.
782 Now, that's the theory. In practice, ATM, mouse events do not work when using
783 the fake window. So, setPlatformPluginWidget() is still called when using QWebView
784 so that there are no regressions after this patch. Once we get mouse events
785 working, setPlatformPluginWidget will be removed.
787 https://bugs.webkit.org/show_bug.cgi?id=31183
789 * plugins/PluginView.cpp:
790 (WebCore::PluginView::PluginView):
791 * plugins/PluginView.h:
792 * plugins/mac/PluginViewMac.cpp:
793 (WebCore::PluginView::platformStart):
794 (WebCore::PluginView::platformDestroy):
795 (WebCore::PluginView::setNPWindowIfNeeded):
796 (WebCore::PluginView::updatePluginWidget):
797 (WebCore::PluginView::paint):
798 (WebCore::PluginView::invalidateRect):
800 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
802 Reviewed by Timothy Hatcher.
804 Web Inspector: Resync Resources Backend and Frontend
805 https://bugs.webkit.org/show_bug.cgi?id=31705
807 * inspector/front-end/Resource.js: resync enum values with backend
808 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases
810 2009-11-19 Steve Block <steveblock@google.com>
812 Reviewed by Darin Fisher.
814 Android port lacks configuration in Platform.h and config.h.
815 https://bugs.webkit.org/show_bug.cgi?id=31671
817 Build change only. No new tests possible.
819 * config.h: Modified. Added Android-specific configuration.
821 2009-11-20 Roland Steiner <rolandsteiner@chromium.org>
823 Reviewed by Darin Adler.
825 Change default stylesheet to reset text indentation for ruby elements by default.
826 (https://bugs.webkit.org/show_bug.cgi?id=31247)
828 Test: fast/ruby/ruby-text-indent.html
830 * css/html.css: reset text-indent on <ruby> and <rt> elements
832 2009-11-19 Brian Weinstein <bweinstein@apple.com>
834 Reviewed by Darin Adler.
836 Fixes <http://webkit.org/b/22754>.
837 Web Inspector: Keyboard shortcut for Element finder.
839 Use Command + Shift + C as a shortcut for Node Search, to
840 match the Firebug shortcut to do the same thing.
842 * inspector/front-end/ElementsPanel.js:
843 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
845 2009-11-19 Alexey Proskuryakov <ap@apple.com>
847 Reviewed by Darin Adler.
849 https://bugs.webkit.org/show_bug.cgi?id=31690
850 Make SocketStreamHandleCFNet work on Windows
852 * WebCore.vcproj/WebCore.vcproj: Added LoaderRunLoopCF.
854 * platform/network/ResourceHandle.h: Removed loaderRunLoop().
856 * platform/network/cf/LoaderRunLoopCF.cpp: Added.
857 (WebCore::emptyPerform):
858 (WebCore::runLoaderThread):
859 (WebCore::loaderRunLoop):
860 * platform/network/cf/LoaderRunLoopCF.h: Added.
861 Moved the run loop that we use for CFNetwork from ResourceHandle to its own file, because
862 it's needed for more than just resource loading.
864 * platform/network/cf/ResourceHandleCFNet.cpp: Use loaderRunLoop() from its new location.
866 * platform/network/cf/DNSCFNet.cpp: (WebCore::DNSResolveQueue::resolve): Ditto.
868 * platform/network/cf/SocketStreamHandle.h: Added static callbacks for forwarding events to
870 * platform/network/cf/SocketStreamHandleCFNet.cpp:
871 (WebCore::SocketStreamHandle::SocketStreamHandle): Use loaderRunLoop() on Windows instead of
872 inoperable main run loop.
874 (WebCore::MainThreadEventCallbackInfo::MainThreadEventCallbackInfo):
875 (WebCore::SocketStreamHandle::readStreamCallback):
876 (WebCore::SocketStreamHandle::writeStreamCallback):
877 (WebCore::SocketStreamHandle::readStreamCallbackMainThread):
878 (WebCore::SocketStreamHandle::writeStreamCallbackMainThread):
879 Forward stream events to main thread on Windows.
881 2009-11-19 Avi Drissman <avi@chromium.org>
883 Reviewed by Darin Adler.
886 https://bugs.webkit.org/show_bug.cgi?id=27777
888 * platform/graphics/cg/PDFDocumentImage.cpp:
890 2009-11-19 Beth Dakin <bdakin@apple.com>
892 Build fix. No review needed.
894 * platform/chromium/ScrollbarThemeChromium.cpp:
895 (WebCore::ScrollbarThemeChromium::paintTickmarks):
896 * rendering/RenderMediaControlsChromium.cpp:
897 (WebCore::paintMediaButton):
899 2009-11-19 Beth Dakin <bdakin@apple.com>
901 Build fix. No review needed.
903 * rendering/RenderThemeChromiumSkia.cpp:
904 (WebCore::RenderThemeChromiumSkia::paintCheckbox):
905 (WebCore::RenderThemeChromiumSkia::paintRadio):
906 (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
907 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
908 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
910 2009-11-19 Beth Dakin <bdakin@apple.com>
912 Build fix. No review needed.
914 * platform/graphics/qt/StillImageQt.cpp:
915 (WebCore::StillImage::draw):
916 * platform/graphics/qt/StillImageQt.h:
918 2009-11-19 Beth Dakin <bdakin@apple.com>
920 Build fix. No review needed.
922 * rendering/RenderThemeWin.cpp:
923 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
924 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
925 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
927 2009-11-19 Beth Dakin <bdakin@apple.com>
929 Build fix. No review needed.
931 * plugins/PluginView.cpp:
932 (WebCore::PluginView::paintMissingPluginIcon):
934 2009-11-19 Beth Dakin <bdakin@apple.com>
936 Build fix. No review needed.
938 * platform/graphics/win/ImageCGWin.cpp:
939 (WebCore::BitmapImage::getHBITMAPOfSize):
940 (WebCore::BitmapImage::drawFrameMatchingSourceSize):
942 2009-11-19 Beth Dakin <bdakin@apple.com>
944 Reviewed by Darin Adler.
946 Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit-
947 color-correction work with untagged images
949 Image's draw(), drawPattern(), and fillWithSolidColor() functions
950 now take a ColorSpace. A bunch of classes inherit from Image, so
951 draw() and drawPattern() functions there must also take a
953 * platform/graphics/Image.cpp:
954 (WebCore::Image::fillWithSolidColor):
955 (WebCore::Image::drawTiled):
956 * platform/graphics/Image.h:
957 * platform/graphics/BitmapImage.h:
958 * platform/graphics/GeneratedImage.cpp:
959 (WebCore::GeneratedImage::draw):
960 (WebCore::GeneratedImage::drawPattern):
961 * platform/graphics/GeneratedImage.h:
962 * platform/graphics/cg/PDFDocumentImage.cpp:
963 (WebCore::PDFDocumentImage::draw):
964 * platform/graphics/cg/PDFDocumentImage.h:
965 * svg/graphics/SVGImage.cpp:
966 (WebCore::SVGImage::draw):
967 * svg/graphics/SVGImage.h:
969 All of the drawImage() functions and drawTiled() functions of
970 GraphicsContext now take a ColorSpace.
971 * platform/graphics/GraphicsContext.cpp:
972 (WebCore::GraphicsContext::drawImage):
973 (WebCore::GraphicsContext::drawTiledImage):
974 * platform/graphics/GraphicsContext.h:
976 This is where the actual work is done.
977 * platform/graphics/cg/ImageCG.cpp:
978 (WebCore::imageWithColorSpace): New static function that returns a
979 copy of the given image in the given ColorSpace *IF* we should use
980 the given ColorSpace. We will ignore the color space if the image
981 is tagged and return 0.
982 (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to
983 call imageWithColorSpace().
984 (WebCore::Image::drawPattern): Same.
986 Attempt to keep all ports building.
987 * platform/graphics/cairo/ImageCairo.cpp:
988 (WebCore::BitmapImage::draw):
989 (WebCore::Image::drawPattern):
990 * platform/graphics/haiku/ImageHaiku.cpp:
991 (WebCore::BitmapImage::draw):
992 (WebCore::Image::drawPattern):
993 * platform/graphics/qt/ImageQt.cpp:
994 (WebCore::Image::drawPattern):
995 (WebCore::BitmapImage::draw):
996 * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
997 * platform/graphics/skia/ImageSkia.cpp:
998 (WebCore::Image::drawPattern):
999 (WebCore::BitmapImage::draw):
1000 (WebCore::BitmapImageSingleFrameSkia::draw):
1001 * platform/graphics/wx/ImageWx.cpp:
1002 (WebCore::BitmapImage::draw):
1003 (WebCore::BitmapImage::drawPattern):
1005 Callers of GraphicsContext's drawImage() and drawTiled() functions
1006 now need to send a ColorSpace.
1007 * html/HTMLCanvasElement.cpp:
1008 (WebCore::HTMLCanvasElement::paint):
1009 * html/canvas/CanvasRenderingContext2D.cpp:
1010 (WebCore::CanvasRenderingContext2D::drawImage):
1011 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1012 * platform/ScrollView.cpp:
1013 (WebCore::ScrollView::wheelEvent):
1014 * platform/graphics/filters/FEColorMatrix.cpp:
1015 (WebCore::FEColorMatrix::apply):
1016 * platform/graphics/filters/FEComposite.cpp:
1017 (WebCore::FEComposite::apply):
1018 * platform/graphics/filters/SourceGraphic.cpp:
1019 (WebCore::SourceGraphic::apply):
1020 * platform/mac/ScrollbarThemeMac.mm:
1021 (WebCore::ScrollbarThemeMac::paint):
1022 * rendering/RenderBoxModelObject.cpp:
1023 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1024 (WebCore::RenderBoxModelObject::paintNinePieceImage):
1025 * rendering/RenderImage.cpp:
1026 (WebCore::RenderImage::paintReplaced):
1027 * rendering/RenderLayer.cpp:
1028 (WebCore::RenderLayer::paintResizer):
1029 * rendering/RenderListMarker.cpp:
1030 (WebCore::RenderListMarker::paint):
1031 * rendering/RenderSVGImage.cpp:
1032 (WebCore::RenderSVGImage::paint):
1033 * rendering/RenderWidget.cpp:
1034 (WebCore::RenderWidget::paint):
1035 * svg/graphics/SVGPaintServerPattern.cpp:
1036 (WebCore::SVGPaintServerPattern::setup):
1037 * svg/graphics/SVGResourceFilter.cpp:
1038 (WebCore::SVGResourceFilter::applyFilter):
1039 * svg/graphics/filters/SVGFEMerge.cpp:
1040 (WebCore::FEMerge::apply):
1041 * svg/graphics/filters/SVGFEOffset.cpp:
1042 (WebCore::FEOffset::apply):
1043 * svg/graphics/filters/SVGFETile.cpp:
1044 (WebCore::FETile::apply):
1046 2009-11-19 Avi Drissman <avi@chromium.org>
1048 Reviewed by Darin Adler.
1050 Properly create a CGImageRef on non-PLATFORM(MAC).
1051 https://bugs.webkit.org/show_bug.cgi?id=27777
1053 * platform/graphics/cg/ImageSourceCG.cpp:
1054 (WebCore::sharedBufferGetBytesAtPosition):
1055 (WebCore::sharedBufferRelease):
1056 (WebCore::ImageSource::setData):
1057 * platform/graphics/cg/ImageSourceCG.h:
1058 * platform/graphics/cg/PDFDocumentImage.cpp:
1059 (WebCore::PDFDocumentImage::dataChanged):
1061 2009-11-19 Oliver Hunt <oliver@apple.com>
1063 Reviewed by Dave Hyatt.
1065 -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes
1066 https://bugs.webkit.org/show_bug.cgi?id=31656
1068 Make sure we're a child of the painting root before drawing overflow features.
1070 * manual-tests/user-drag-with-decorations.html: Added.
1071 * rendering/RenderBlock.cpp:
1072 (WebCore::RenderBlock::paint):
1074 2009-11-19 Dmitry Titov <dimich@chromium.org>
1076 Not reviewed, attempt to fix Chromium build.
1078 * rendering/RenderMediaControlsChromium.cpp:
1079 (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile.
1081 2009-11-19 Rahul Kuchhal <kuchhal@chromium.org>
1083 Reviewed by Darin Adler.
1085 Do not assert when a high number is used for roman numerals in lists.
1086 https://bugs.webkit.org/show_bug.cgi?id=31652
1088 Test: fast/lists/ol-start-roman.html
1090 * rendering/RenderListMarker.cpp:
1091 (WebCore::toRoman): Increase the char array size.
1093 2009-11-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
1095 Rubber-stamped by Oliver Hunt.
1097 Add translatable strings to cover validationMessage, after
1098 r51172. Already covered by existing test.
1100 * platform/gtk/LocalizedStringsGtk.cpp:
1101 (WebCore::validationMessageValueMissingText):
1102 (WebCore::validationMessageTypeMismatchText):
1103 (WebCore::validationMessagePatternMismatchText):
1104 (WebCore::validationMessageTooLongText):
1105 (WebCore::validationMessageRangeUnderflowText):
1106 (WebCore::validationMessageRangeOverflowText):
1107 (WebCore::validationMessageStepMismatchText):
1109 2009-11-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1111 Reviewed by Darin Adler.
1113 Remove HAVE(FLOAT_H) guard
1114 https://bugs.webkit.org/show_bug.cgi?id=31661
1116 WebCore has a dependency on float.h, there is
1117 no need to guard float.h.
1119 No new tests as there is no functional change.
1121 * html/HTMLInputElement.cpp: Remove include directive
1122 for float.h as it is included in MathExtras.h already.
1124 2009-11-19 Simon Fraser <simon.fraser@apple.com>
1126 Reviewed by Pavel Feldman.
1128 Instrumentation should account for painting in compositing layers
1129 https://bugs.webkit.org/show_bug.cgi?id=31674
1131 Add calls to InspectorTimelineAgent for painting into compositing layers,
1132 which is not accounted for in FrameView::paintContents().
1134 * rendering/RenderLayerBacking.cpp:
1135 (WebCore::RenderLayerBacking::paintIntoLayer):
1136 Avoid fetching the FrameView multiple times.
1138 (WebCore::inspectorTimelineAgent):
1139 (WebCore::RenderLayerBacking::paintContents):
1141 2009-11-19 Eric Carlson <eric.carlson@apple.com>
1143 Reviewed by Dan Bernstein.
1145 <rdar://problem/7035231>
1146 Support closed caption in <video> element
1148 Test: media/media-captions.html
1151 * accessibility/AccessibilityMediaControls.cpp:
1152 (WebCore::AccessibilityMediaControl::controlTypeName):
1153 Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
1155 * css/CSSPrimitiveValueMappings.h:
1156 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1157 Add MediaToggleClosedCaptionsButtonPart.
1159 * css/CSSSelector.cpp:
1160 (WebCore::CSSSelector::extractPseudoType):
1161 Define and match mediaControlsToggleClosedCaptionsButton.
1163 * css/CSSSelector.h:
1164 (WebCore::CSSSelector::):
1165 * css/CSSStyleSelector.cpp:
1166 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1167 Define and match PseudoMediaControlsToggleClosedCaptions.
1169 * css/CSSValueKeywords.in:
1170 Define and use media-toggle-closed-captions-button.
1172 * css/mediaControls.css:
1173 * css/mediaControlsQuickTime.css:
1174 Add webkit-media-controls-toggle-closed-captions-button.
1176 * html/HTMLMediaElement.cpp:
1177 (WebCore::HTMLMediaElement::HTMLMediaElement):
1178 Initialize m_closedCaptionsVisible.
1179 (WebCore::HTMLMediaElement::loadInternal):
1180 Set m_closedCaptionsVisible to false.
1181 (WebCore::HTMLMediaElement::hasClosedCaptions):
1182 (WebCore::HTMLMediaElement::closedCaptionsVisible):
1183 (WebCore::HTMLMediaElement::setClosedCaptionsVisible):
1184 New, captions internal methods.
1185 (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible):
1186 (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible):
1187 (WebCore::HTMLMediaElement::webkitHasClosedCaptions):
1188 New, captions DOM API.
1190 * html/HTMLMediaElement.h:
1191 * html/HTMLMediaElement.idl:
1192 Declare methods needed for captions API.
1194 * platform/ThemeTypes.h:
1195 Add MediaToggleClosedCaptionsButtonPart.
1197 * platform/android/LocalizedStringsAndroid.cpp:
1198 (WebCore::localizedMediaControlElementString):
1199 (WebCore::localizedMediaControlElementHelpText):
1200 (WebCore::localizedMediaTimeDescription):
1201 Add empty implmentations.
1203 * platform/graphics/MediaPlayer.cpp:
1204 (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
1205 (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
1206 New, empty implementations of media engine closed caption functions.
1207 (WebCore::MediaPlayer::hasClosedCaptions):
1208 (WebCore::MediaPlayer::setClosedCaptionsVisible):
1209 New, call media engine closed caption functions.
1211 * platform/graphics/MediaPlayer.h:
1212 * platform/graphics/MediaPlayerPrivate.h:
1213 (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
1214 (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
1215 Declare new media engine methods.
1217 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1218 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1219 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
1220 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
1221 New, QTKit implementation of closed caption methods.
1223 * platform/gtk/LocalizedStringsGtk.cpp:
1224 (WebCore::localizedMediaControlElementString):
1225 (WebCore::localizedMediaControlElementHelpText):
1226 Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
1228 * platform/mac/WebCoreSystemInterface.h:
1229 * platform/mac/WebCoreSystemInterface.mm:
1230 Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
1232 * rendering/MediaControlElements.cpp:
1233 (WebCore::MediaControlInputElement::MediaControlInputElement):
1234 Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
1235 (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
1236 (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
1237 (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
1238 New, implement the closed caption toggle button,
1240 * rendering/MediaControlElements.h:
1241 Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
1242 declare MediaControlToggleClosedCaptionsButtonElement.
1244 * rendering/RenderMedia.cpp:
1245 (WebCore::RenderMedia::styleDidChange):
1246 (WebCore::RenderMedia::createToggleClosedCaptionsButton):
1247 (WebCore::RenderMedia::createStatusDisplay):
1248 (WebCore::RenderMedia::updateControls):
1249 (WebCore::RenderMedia::forwardEvent):
1250 * rendering/RenderMedia.h:
1251 Deal with m_toggleClosedCaptionsButton.
1253 * rendering/RenderTheme.cpp:
1254 (WebCore::RenderTheme::paint):
1255 Deal with MediaToggleClosedCaptionsButtonPart.
1257 * rendering/RenderTheme.h:
1258 * rendering/RenderThemeMac.h:
1259 Declare paintMediaToggleClosedCaptionsButton.
1261 * rendering/RenderThemeMac.mm:
1262 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
1264 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
1265 Don't render captions toggle button unless we are using the new theme, the
1266 movie has captions, and the movie is in a <video> element since we currently
1267 rely on QTKit to render the captions.
1269 * rendering/style/RenderStyleConstants.h:
1270 Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
1272 2009-11-19 Kevin Ollivier <kevino@theolliviers.com>
1274 wx build fix. Add missing header.
1276 * platform/wx/LocalizedStringsWx.cpp:
1278 2009-11-19 Alexey Proskuryakov <ap@apple.com>
1280 Reviewed by Darin Adler.
1282 https://bugs.webkit.org/show_bug.cgi?id=31634
1283 Ignore realm for proxy protection spaces
1285 Only affects WebSocket proxy authentication, cannot be tested in DRT.
1287 * platform/network/ProtectionSpace.cpp:
1288 (WebCore::operator==):
1289 * platform/network/ProtectionSpaceHash.h:
1290 (WebCore::ProtectionSpaceHash::hash):
1292 2009-11-19 Olivier Goffart <ogoffart@trolltech.com>
1294 Reviewed by Simon Hausmann.
1296 [Qt] Normalize signal and slot signatures.
1298 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1299 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
1301 2009-11-19 Alexander Pavlov <apavlov@chromium.org>
1303 Reviewed by Pavel Feldman.
1305 Store cookie domains in the WebInspector object
1307 The cookie domains have been moved from StoragePanel into WebInspector.
1308 Also, the document URLs are now passed inside the WebInspector.addResource()
1309 payload rather than pushed directly from InspectorController.
1310 https://bugs.webkit.org/show_bug.cgi?id=31627
1312 * inspector/InspectorController.cpp:
1313 (WebCore::InspectorController::populateScriptObjects):
1314 (WebCore::InspectorController::didFinishLoading):
1315 * inspector/InspectorFrontend.cpp:
1316 * inspector/InspectorFrontend.h:
1317 * inspector/InspectorResource.cpp:
1318 (WebCore::InspectorResource::createScriptObject):
1319 (WebCore::InspectorResource::updateScriptObject):
1320 * inspector/front-end/StoragePanel.js:
1321 (WebInspector.StoragePanel.prototype.reset):
1322 (WebInspector.StoragePanel.prototype.addCookieDomain):
1323 * inspector/front-end/inspector.js:
1324 (WebInspector.addResource):
1325 (WebInspector.addCookieDomain):
1326 (WebInspector.reset):
1328 2009-11-19 Zoltan Horvath <zoltan@webkit.org>
1330 Reviewed by Darin Adler.
1332 Allow custom memory allocation control for the other part of platform directory in WebCore
1333 https://bugs.webkit.org/show_bug.cgi?id=31585
1335 Inherits the following classes from FastAllocBase because these are
1336 instantiated by 'new':
1338 class RegularExpression - instantiated at: WebCore/page/Frame.cpp:415
1339 class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
1340 class Path - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
1341 class FontPlatformData - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
1343 Inherits the following classes from Noncopyable because these are
1344 instantiated by 'new' and no need to be copyable:
1346 class Cursors - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
1347 class NetworkStateNotifier - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
1348 struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
1350 class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
1351 class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
1353 * platform/graphics/MediaPlayerPrivate.h:
1354 * platform/graphics/Path.h:
1355 * platform/graphics/qt/FontPlatformData.h:
1356 * platform/graphics/transforms/TransformationMatrix.h:
1357 * platform/image-decoders/ImageDecoder.h:
1358 * platform/network/NetworkStateNotifier.h:
1359 * platform/network/ResourceRequestBase.h:
1360 * platform/qt/CursorQt.cpp:
1361 * platform/text/RegularExpression.h:
1363 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1367 [Qt] Build fix for QtWebKit after r51172.
1369 * platform/qt/Localizations.cpp:
1370 (WebCore::validationMessageValueMissingText):
1371 (WebCore::validationMessageTypeMismatchText):
1372 (WebCore::validationMessagePatternMismatchText):
1373 (WebCore::validationMessageTooLongText):
1374 (WebCore::validationMessageRangeUnderflowText):
1375 (WebCore::validationMessageRangeOverflowText):
1376 (WebCore::validationMessageStepMismatchText):
1378 2009-11-18 Dan Bernstein <mitz@apple.com>
1380 Reviewed by Simon Fraser.
1382 Fixed <rdar://problem/7398987> Assertion failure in
1383 RenderLayer::updateClipRects when a plug-in’s enclosing layer is
1384 enclosed by a transformed layer
1386 Tests: fast/layers/clip-rects-transformed-2.html
1387 fast/layers/clip-rects-transformed.html
1389 * rendering/RenderLayer.cpp:
1390 (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
1391 that is either transformed or composited. During painting and hit
1392 testing, when a transformed or composited layer is hit, it becomes the
1393 new root layer, which ultimately gets passed to calculateRects().
1394 (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
1395 root layer to calculateRects(), and return the bounding box of the
1396 transformed rectangle.
1397 (WebCore::RenderLayer::selfClipRect): Ditto.
1398 * rendering/RenderLayer.h:
1400 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1402 Reviewed by Kenneth Rohde Christiansen.
1404 [Qt] Remove support for Qt v4.3 or older versions
1405 https://bugs.webkit.org/show_bug.cgi?id=29469
1407 No new tests as there is no change if compiled with
1408 Qt v4.4 or later version.
1411 * dom/XMLTokenizerQt.cpp:
1412 (WebCore::EntityResolver::resolveUndeclaredEntity):
1413 (WebCore::XMLTokenizer::XMLTokenizer):
1414 (WebCore::XMLTokenizer::~XMLTokenizer):
1415 (WebCore::XMLTokenizer::doWrite):
1416 (WebCore::XMLTokenizer::startDocument):
1417 (WebCore::XMLTokenizer::parseDtd):
1418 * platform/graphics/qt/FontQt.cpp:
1419 * platform/graphics/qt/FontQt43.cpp: Removed.
1420 * platform/graphics/qt/ImageQt.cpp:
1421 * platform/network/ResourceHandleInternal.h:
1422 * platform/network/qt/QNetworkReplyHandler.cpp:
1423 * platform/network/qt/QNetworkReplyHandler.h:
1424 * platform/network/qt/ResourceHandleQt.cpp:
1425 (WebCore::ResourceHandle::start):
1426 (WebCore::ResourceHandle::cancel):
1427 (WebCore::ResourceHandle::loadResourceSynchronously):
1428 (WebCore::ResourceHandle::setDefersLoading):
1429 * platform/network/qt/ResourceRequest.h:
1430 * platform/network/qt/ResourceRequestQt.cpp:
1431 * platform/qt/ClipboardQt.cpp:
1432 (WebCore::ClipboardQt::clearData):
1433 * platform/qt/CookieJarQt.cpp:
1434 (WebCore::cookieJar):
1435 (WebCore::setCookies):
1437 (WebCore::cookiesEnabled):
1438 * platform/qt/PlatformKeyboardEventQt.cpp:
1439 (WebCore::keyIdentifierForQtKeyCode):
1440 (WebCore::windowsKeyCodeForKeyEvent):
1441 * platform/text/qt/TextBoundaries.cpp:
1442 * platform/text/qt/TextBreakIteratorQt.cpp:
1443 * plugins/qt/PluginDataQt.cpp:
1444 (WebCore::PluginData::initPlugins):
1446 2009-11-18 Michelangelo De Simone <micdesim@gmail.com>
1448 Reviewed by Darin Adler.
1450 Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
1451 Support for validationMessage attribute, as per HTML5 specs.
1453 Test: fast/forms/validationMessage.html
1455 * html/HTMLButtonElement.idl: validationMessage attribute
1456 * html/HTMLFieldSetElement.idl: validationMessage attribute
1457 * html/HTMLFormControlElement.cpp:
1458 * html/HTMLFormControlElement.h:
1459 * html/HTMLInputElement.idl: validationMessage attribute
1460 * html/HTMLSelectElement.idl: validationMessage attribute
1461 * html/HTMLTextAreaElement.idl: validationMessage attribute
1462 * html/ValidityState.cpp: new method to retrieve pertinent localized text
1463 * html/ValidityState.h:
1464 * page/mac/WebCoreViewFactory.h:
1465 * platform/LocalizedStrings.h:
1466 * platform/android/LocalizedStringsAndroid.cpp:
1467 * platform/gtk/LocalizedStringsGtk.cpp:
1468 * platform/haiku/LocalizedStringsHaiku.cpp:
1469 * platform/mac/LocalizedStringsMac.mm:
1470 * platform/wx/LocalizedStringsWx.cpp:
1472 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1476 Fix a typo. Remove the trailing semicolon
1477 from an include directive after r51137.
1479 No new tests as there is no functional change.
1481 * platform/qt/QWebPageClient.h:
1483 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1487 [Qt] Build fix for QtWebKit after r51159.
1489 Include float.h for DBL_MANT_DIG. Not sure why this
1490 is not a problem for other ports.
1492 * html/HTMLInputElement.cpp:
1494 2009-11-19 Roland Steiner <rolandsteiner@chromium.org>
1496 Reviewed by Darin Adler.
1498 Bug 31574 - Crashing bug when removing <ruby> element
1499 (https://bugs.webkit.org/show_bug.cgi?id=31574)
1502 1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
1503 2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
1504 3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
1505 4.) this triggers the special handling of child removal in RenderRubyRun that
1506 causes it to destroy itself
1507 5.) On returning from all this the renderer crashes when accessing a member
1508 or virtual function on this now illegal object.
1510 I therefore added a flag that tracks if the ruby run is being destroyed.
1511 If so, avoid doing the special handling in removeChild that caused this.
1512 It's not the most elegant solution, but the easiest to implement without
1513 touching unrelated code. Also, it's self-documenting.
1515 Test: fast/ruby/ruby-remove.html
1517 * rendering/RenderRubyRun.cpp:
1518 (WebCore::RenderRubyRun::RenderRubyRun):
1519 (WebCore::RenderRubyRun::destroy):
1520 (WebCore::RenderRubyRun::removeChild):
1521 * rendering/RenderRubyRun.h:
1523 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1525 Reviewed by Kenneth Rohde Christiansen.
1527 [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
1528 https://bugs.webkit.org/show_bug.cgi?id=31643
1530 No new tests as there is no functional change.
1534 2009-11-18 Yong Li <yong.li@torchmobile.com>
1536 Reviewed by Eric Seidel.
1538 Implement TextBoundaries for WINCE port.
1539 https://bugs.webkit.org/show_bug.cgi?id=27371
1541 * platform/text/wince/TextBoundariesWince.cpp: Added.
1543 2009-11-18 Yong Li <yong.li@torchmobile.com>
1545 Reviewed by Eric Seidel.
1547 Implement TextBreakIterator for WINCE port.
1548 https://bugs.webkit.org/show_bug.cgi?id=27371
1550 * platform/text/wince/TextBreakIteratorWince.cpp: Added.
1552 2009-11-18 Kent Tamura <tkent@chromium.org>
1554 Reviewed by Darin Adler.
1556 Add support for ValidityState.typeMismatch for the following INPUT types:
1557 date datetime datetime-local month time week
1558 https://bugs.webkit.org/show_bug.cgi?id=31342
1560 Tests: fast/forms/ValidityState-typeMismatch-date.html
1561 fast/forms/ValidityState-typeMismatch-datetime.html
1562 fast/forms/ValidityState-typeMismatch-datetimelocal.html
1563 fast/forms/ValidityState-typeMismatch-month.html
1564 fast/forms/ValidityState-typeMismatch-time.html
1565 fast/forms/ValidityState-typeMismatch-week.html
1567 * html/HTMLInputElement.cpp:
1568 (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
1569 validity of the specified type and string using the ISODateTime class.
1570 * html/HTMLInputElement.h:
1571 * html/ValidityState.cpp:
1572 (WebCore::ValidityState::typeMismatch): Check the type validity
1573 for date, datetime, datetime-local, month, time and week with
1574 HTMLInputElemtn::formStringToISODateTime()
1576 2009-11-18 Maciej Stachowiak <mjs@apple.com>
1578 Reviewed by Oliver Hunt.
1580 Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
1581 https://bugs.webkit.org/show_bug.cgi?id=31237
1583 Also speeds up Dromaeo DOM Core tests by 1.31x.
1585 * bindings/js/JSNodeCustom.cpp:
1586 (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
1587 mark bit was no longer effective; instead I changed things so only a node that has no ancestors
1588 with wrappers would do marking; there should be only one in the typical case (the root of the
1591 (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
1594 2009-11-18 Darin Adler <darin@apple.com>
1596 Reviewed by Sam Weinig.
1598 Get rid of the redundant strokeType and fillType data members on
1599 a GraphicsContext as well as the FillOrStrokeType enum. Use
1600 null pointers instead.
1602 * platform/graphics/GraphicsContext.cpp:
1603 (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
1605 (WebCore::GraphicsContext::setFillColor): Ditto.
1606 (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
1607 (WebCore::GraphicsContext::setFillPattern): Ditto.
1608 (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
1609 (WebCore::GraphicsContext::setFillGradient): Ditto.
1611 * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
1613 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1614 (WebCore::setPlatformFill): Use null checks on fillPattern and
1615 fillGraident instead of a switch statement.
1616 (WebCore::setPlatformStroke): Ditto.
1618 * platform/graphics/cg/GraphicsContextCG.cpp:
1619 (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
1620 (WebCore::GraphicsContext::applyFillPattern): Ditto.
1621 (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
1622 to see if there is a pattern instead of fillType and strokeType.
1623 (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
1624 fillPattern, and strokePattern instead of fillType and strokeType.
1625 (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
1626 is used in the pattern and gradient case probably erroneously. Moved
1627 gradient code inside an if statement. Streamlined pattern code and
1628 use an if statement. No switch any more.
1629 (WebCore::GraphicsContext::strokePath): Ditto.
1630 (WebCore::GraphicsContext::fillRect): Ditto.
1631 (WebCore::GraphicsContext::strokeRect): Ditto.
1633 * platform/graphics/qt/GraphicsContextQt.cpp:
1634 (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
1635 fillGraident instead of a switch statement.
1636 (WebCore::GraphicsContext::strokePath): Ditto.
1637 (WebCore::GraphicsContext::fillRect): Ditto.
1639 * platform/graphics/wince/GraphicsContextWince.cpp:
1640 (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
1641 (WebCore::GraphicsContext::fillRect): Ditto.
1643 2009-11-18 Kent Tamura <tkent@chromium.org>
1645 Reviewed by Darin Adler.
1647 Support for step attribute and ValidityStae.stepMismatch for
1648 type=number and range. stepMismatch will be false if the
1649 difference between the current value and a multiple of the step
1650 value is very small.
1652 Change the behavior of RenderSlider so that it always has a value
1653 rounded to the step attribute value.
1655 https://bugs.webkit.org/show_bug.cgi?id=31331
1657 Tests: fast/forms/ValidityState-stepMismatch-number.html
1658 fast/forms/ValidityState-stepMismatch-range.html
1659 fast/forms/ValidityState-stepMismatch-unsupported.html
1660 fast/forms/input-step.html
1662 * html/HTMLAttributeNames.in: Add "step".
1663 * html/HTMLInputElement.cpp:
1664 (WebCore::HTMLInputElement::stepMismatch):
1665 (WebCore::HTMLInputElement::getStepParameters):
1666 (WebCore::HTMLInputElement::getAllowedValueStep):
1667 * html/HTMLInputElement.h:
1668 * html/HTMLInputElement.idl: Add "step".
1669 * html/ValidityState.cpp:
1670 (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
1671 * html/ValidityState.h:
1672 * rendering/RenderSlider.cpp:
1673 (WebCore::SliderRange::SliderRange):
1674 (WebCore::SliderRange::clampValue):
1676 2009-11-18 Dmitry Titov <dimich@chromium.org>
1678 Reviewed by Darin Adler.
1680 Need to ASSERT(isMainThread()) in ThreadShared methods.
1681 https://bugs.webkit.org/show_bug.cgi?id=31637
1683 Added ASSERT(IsMainThread()) to all following methods:
1684 * platform/TreeShared.h:
1685 (WebCore::TreeShared::TreeShared):
1686 (WebCore::TreeShared::~TreeShared):
1687 (WebCore::TreeShared::ref):
1688 (WebCore::TreeShared::deref):
1689 (WebCore::TreeShared::setParent):
1690 (WebCore::TreeShared::parent):
1692 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
1694 Reviewed by Eric Seidel.
1696 Add plugin visibility manual test
1698 https://bugs.webkit.org/show_bug.cgi?id=31542
1700 * manual-tests/plugins/windowed.html:
1701 * manual-tests/plugins/windowless.html:
1703 2009-11-18 Patrick Mueller <Patrick_Mueller@us.ibm.com>
1705 Reviewed by Pavel Feldman.
1707 Web Inspector - remember last script displayed in Scripts panel
1708 https://bugs.webkit.org/show_bug.cgi?id=27552
1712 * inspector/front-end/ScriptsPanel.js:
1713 (WebInspector.ScriptsPanel.prototype.showScript):
1714 (WebInspector.ScriptsPanel.prototype.showResource):
1715 (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
1716 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
1717 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
1718 (WebInspector.ScriptsPanel.prototype._goBack):
1719 (WebInspector.ScriptsPanel.prototype._goForward):
1720 * manual-tests/inspector/remember-last-script.html: Added.
1722 2009-11-18 Shinichiro Hamaji <hamaji@chromium.org>
1724 Reviewed by Dimitri Glazkov.
1726 Win chromium is slow to draw transparent texts
1727 https://bugs.webkit.org/show_bug.cgi?id=31258
1729 Create bounded transparency layers instead of just clipping.
1731 No new tests because this is just a performance improvement.
1733 * platform/graphics/chromium/FontChromiumWin.cpp:
1734 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1736 2009-11-18 Shu Chang <Chang.Shu@nokia.com>
1738 Reviewed by Eric Seidel.
1740 [Qt] Add support for displaying deleteButton.
1741 https://bugs.webkit.org/show_bug.cgi?id=31560
1743 Test: LayoutTests/editing/deleting/5408255.html
1746 * platform/graphics/qt/ImageQt.cpp:
1747 (loadResourcePixmap):
1749 2009-11-18 Mikhail Naganov <mnaganov@chromium.org>
1751 Reviewed by Eric Seidel.
1753 Fix Qt build without JavaScript debugger.
1755 https://bugs.webkit.org/show_bug.cgi?id=31575
1759 2009-11-18 Daniel Bates <dbates@webkit.org>
1761 Reviewed by Dave Hyatt.
1763 https://bugs.webkit.org/show_bug.cgi?id=24971
1765 <rdar://problem/7138265>
1767 Fixes an issue where setting the height of a table row programmatically
1768 (via JavaScript) causes the table to be improperly rendered because the
1769 height of each row in the table is not recalculated with respect to the
1770 CSS height property.
1772 In particular, programmatically setting the height of some table row causes
1773 the rows of that table to be rendered with a height equal to the minimum
1774 height required by the cells in that row, regardless of any specified cell
1775 heights. Instead, when RenderTableSection::recalcCells is called, the height
1776 of each row should be set to the CSS height property just as we do in
1777 RenderTableSection::addChild.
1779 Test: fast/table/row-height-recalc2.html
1781 * rendering/RenderTableSection.cpp:
1782 (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
1783 (WebCore::RenderTableSection::addChild): Moved code that set row height into
1784 method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
1785 (WebCore::RenderTableSection::recalcCells): Modified to call
1786 WebCore::setRowHeightToRowStyleHeightIfNotRelative.
1788 2009-11-18 Zoltan Horvath <zoltan@webkit.org>
1790 Reviewed by Darin Adler.
1792 Allow custom memory allocation control for the part of platform directory in WebCore
1793 https://bugs.webkit.org/show_bug.cgi?id=31473
1795 Inherits the following classes from FastAllocBase because these are
1796 instantiated by 'new':
1798 class AnimationList - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
1799 class Color - instantiated at WebCore/rendering/RenderTheme.cpp:48
1800 struct Length - instantiated at WebCore/platform/Length.cpp:103
1801 class PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
1802 class ContextMenuItem - instantiated at WebCore/platform/ContextMenu.cpp:70
1803 class DeprecatedPtrList - instantiated at WebCore/rendering/RenderBlock.cpp:2284
1805 Inherits the following classes from Noncopyable because these are
1806 instantiated by 'new' and no need to be copyable:
1808 class GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
1809 class FontCache - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
1810 struct MediaPlayerFactory - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
1811 class DeprecatedPtrListNode - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
1813 * platform/ContextMenuItem.h:
1814 * platform/DeprecatedPtrList.h:
1815 * platform/DeprecatedPtrListImpl.cpp:
1816 * platform/Length.h:
1817 * platform/PlatformKeyboardEvent.h:
1818 * platform/animation/AnimationList.h:
1819 * platform/graphics/Color.h:
1820 * platform/graphics/FontCache.h:
1821 * platform/graphics/GraphicsContextPrivate.h:
1822 * platform/graphics/MediaPlayer.cpp:
1824 2009-11-18 Daniel Bates <dbates@webkit.org>
1826 Reviewed by Darin Adler.
1828 https://bugs.webkit.org/show_bug.cgi?id=31186
1830 Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
1831 m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
1832 These are more descriptive names so as to clear an ambiguity surrounding
1833 their usage. Also, renames associated setters and getters so that they
1834 coincide with the renamed fields.
1836 No functionality was changed. So, no tests were included.
1838 * bindings/objc/DOMHTML.mm:
1839 (-[DOMHTMLInputElement _isEdited]):
1840 (-[DOMHTMLTextAreaElement _isEdited]):
1842 (WebCore::Document::setFocusedNode):
1843 * html/HTMLInputElement.cpp:
1844 (WebCore::HTMLInputElement::defaultEventHandler):
1845 * rendering/RenderTextControl.cpp:
1846 (WebCore::RenderTextControl::RenderTextControl):
1847 (WebCore::RenderTextControl::setInnerTextValue):
1848 (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
1849 (WebCore::RenderTextControl::subtreeHasChanged):
1850 * rendering/RenderTextControl.h:
1851 (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
1852 (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
1853 (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
1854 * rendering/RenderTextControlSingleLine.cpp:
1855 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
1856 * wml/WMLInputElement.cpp:
1857 (WebCore::WMLInputElement::defaultEventHandler):
1859 2009-11-18 Tony Chang <tony@chromium.org>
1861 Reviewed by Adam Barth.
1863 Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
1864 https://bugs.webkit.org/show_bug.cgi?id=31499
1866 No new tests, just a build cleanup.
1869 * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
1870 * bindings/v8/custom/V8CustomBinding.h:
1872 2009-11-18 Kevin Watters <kevinwatters@gmail.com>
1874 Reviewed by Kevin Ollivier.
1876 Enable wx plugin support using the Windows implementation as a base.
1878 https://bugs.webkit.org/show_bug.cgi?id=31636
1880 * platform/graphics/GraphicsContext.h:
1881 (WebCore::GraphicsContext::inTransparencyLayer):
1882 * platform/graphics/wx/GraphicsContextWx.cpp:
1883 (WebCore::GraphicsContext::getWindowsContext):
1884 (WebCore::GraphicsContext::releaseWindowsContext):
1885 * platform/wx/FileSystemWx.cpp:
1886 (WebCore::unloadModule):
1887 (WebCore::listDirectory):
1888 * plugins/PluginDatabase.cpp:
1889 * plugins/PluginView.cpp:
1890 (WebCore::PluginView::stop):
1891 (WebCore::PluginView::PluginView):
1892 * plugins/PluginView.h:
1893 * plugins/win/PluginViewWin.cpp:
1894 (windowHandleForPageClient):
1895 (WebCore::PluginView::handleMouseEvent):
1896 (WebCore::PluginView::platformStart):
1897 (WebCore::PluginView::snapshot):
1900 2009-11-18 Andrei Popescu <andreip@google.com>
1902 Reviewed by Dimitri Glazkov.
1904 [Android] Add shared timer and sound utilities to platform/android
1905 https://bugs.webkit.org/show_bug.cgi?id=31584
1907 No new tests required, this is platform specific code.
1909 * platform/android/SharedTimerAndroid.cpp: Added.
1910 (WebCore::setSharedTimerFiredFunction):
1911 (WebCore::setSharedTimerFireTime):
1912 (WebCore::stopSharedTimer):
1913 * platform/android/SoundAndroid.cpp: Added.
1914 (WebCore::systemBeep):
1916 2009-11-18 Mikhail Naganov <mnaganov@chromium.org>
1918 Reviewed by Timothy Hatcher.
1920 Fix profile tree nodes loss after focus / restore actions.
1922 Focusing on a node is currently implemented via nodes reattaching
1923 with some caching involved. It seems that not all code was updated
1924 to handle this scenario correctly.
1926 https://bugs.webkit.org/show_bug.cgi?id=31553
1928 * inspector/front-end/BottomUpProfileDataGridTree.js:
1929 (WebInspector.BottomUpProfileDataGridNode):
1930 (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
1931 (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
1932 (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
1933 * inspector/front-end/DataGrid.js:
1934 (WebInspector.DataGrid.prototype.insertChild):
1935 (WebInspector.DataGridNode.prototype._detach):
1936 (WebInspector.DataGridNode.prototype.savePosition):
1937 (WebInspector.DataGridNode.prototype.restorePosition):
1938 * inspector/front-end/TopDownProfileDataGridTree.js:
1939 (WebInspector.TopDownProfileDataGridTree.prototype.focus):
1940 (WebInspector.TopDownProfileDataGridTree.prototype.restore):
1942 2009-11-18 Carol Szabo <carol.szabo@nokia.com>
1944 Reviewed by Kenneth Rohde Christiansen.
1946 [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
1948 https://bugs.webkit.org/show_bug.cgi?id=31527
1950 No new tests as this is just a coding style fix that affects the
1951 build of some not yet submitted patches (i.e. for bug 30173).
1953 * platform/qt/QWebPageClient.h:
1955 2009-11-18 Nicolas Roard <nicolas@roard.com>
1957 Reviewed by Dimitri Glazkov.
1959 InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
1960 https://bugs.webkit.org/show_bug.cgi?id=31504
1962 * inspector/InspectorTimelineAgent.h:Added the guard.
1964 2009-11-18 Jens Alfke <snej@chromium.org>
1966 Build fix to my previous checkin, for Windows Chromium
1968 * svg/SVGAnimatedProperty.h:
1969 (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
1971 2009-11-18 Joseph Pecoraro <joepeck@webkit.org>
1973 Reviewed by Pavel Feldman.
1975 Web Inspector: Directly Access <head> Instead of Searching for It
1976 https://bugs.webkit.org/show_bug.cgi?id=31641
1978 Changed old access of the head element (document.getElementsByTagName)
1979 to just use the document.head accessor.
1981 * inspector/front-end/FontView.js:
1982 (WebInspector.FontView):
1983 * inspector/front-end/InjectedScript.js:
1984 (InjectedScript.addStyleSelector):
1985 * inspector/front-end/SourceFrame.js:
1986 (WebInspector.SourceFrame.prototype._loaded):
1987 * inspector/front-end/inspector.js:
1990 2009-11-18 Sam Weinig <sam@webkit.org>
1992 Reviewed by Anders Carlsson.
1994 Fix two Geolocation assertions.
1997 (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
1998 is not called from JS.
1999 * page/Geolocation.cpp:
2000 (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
2003 2009-11-18 Alexey Proskuryakov <ap@apple.com>
2005 Case sensitive file system build fix.
2007 * platform/network/Credential.h: It's not WTF, just wtf.
2009 2009-11-18 Aaron Golden <agolden@apple.com>
2011 Reviewed by Alexey Proskuryakov.
2013 Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
2014 objects and WebCore::Credential objects without losing certificate information.
2016 * platform/network/Credential.cpp:
2017 (WebCore::Credential::Credential): Adding a constructor that takes an identity argument and a certificate chain argument
2018 (WebCore::Credential::isEmpty): Modifying isEmpty to support certificate based credentials (which don't have a username or password)
2019 (WebCore::Credential::identity): Accessor for the m_identity property
2020 (WebCore::Credential::certificates): Accessor for the m_certificates property
2021 (WebCore::Credential::type): Accessor for the m_type property
2022 (WebCore::operator==): Modifying == to compare the identity and certificate chains of certificate based credentials.
2023 * platform/network/Credential.h: Adding new fields to WebCore::Credential to support certificate based credentials.
2024 * platform/network/mac/AuthenticationMac.mm:
2025 (WebCore::mac): Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
2026 (WebCore::core): Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
2028 2009-11-18 Dmitry Titov <dimich@chromium.org>
2030 Reviewed by Eric Seidel.
2032 Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
2033 https://bugs.webkit.org/show_bug.cgi?id=31615
2036 (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
2037 (WebCore::ScriptExecutionContextTaskTimer::fired):
2038 (WebCore::PerformTaskContext::PerformTaskContext):
2039 (WebCore::performTask):
2040 (WebCore::Document::postTask):
2041 * dom/ScriptExecutionContext.cpp:
2042 * dom/ScriptExecutionContext.h:
2044 2009-11-18 Jens Alfke <snej@chromium.org>
2046 Reviewed by Darin Adler.
2048 Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
2049 by causing the right v8-to-WebCore conversion function to be called for every parameter.
2050 This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
2051 To enforce correctness, I added a mode that disables implicit
2052 String-->AtomicString conversions while compiling the generated bindings.
2053 https://bugs.webkit.org/show_bug.cgi?id=31168
2055 * bindings/scripts/CodeGeneratorV8.pm: Generate usage of V8Parameter class.
2056 * bindings/v8/DerivedSourcesAllInOne.cpp: Enable NO_IMPLICIT_ATOMICSTRING.
2057 * bindings/v8/V8Binding.h: Add V8Parameter class.
2058 * css/WebKitCSSKeyframesRule.h: Make AtomicString conversions explicit.
2059 * dom/Document.idl: Remove obsolete [HintAtomic] annotation.
2060 * platform/text/AtomicString.h: Added NO_IMPLICIT_ATOMICSTRING option.
2061 * svg/SVGAnimatedTemplate.h: Change some return types to String to avoid implicit conversion.
2062 * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.
2064 2009-11-18 Darin Adler <darin@apple.com>
2066 Reviewed by Dan Bernstein.
2068 Move FillOrStrokeType out of public header.
2070 * platform/graphics/GraphicsContext.h: Updated copyright date to cover
2071 some years we published Apple changes, sorted forward declarations,
2072 removed FillOrStrokeType enum.
2073 * platform/graphics/GraphicsContextPrivate.h: Updated copyright date
2074 to cover some years we published Apple changes, sorted includes,
2075 moved FillOrStrokeType enum here.
2077 2009-11-18 Chris Marrin <cmarrin@apple.com>
2079 Reviewed by Simon Fraser.
2081 Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter
2082 https://bugs.webkit.org/show_bug.cgi?id=31601
2084 These are used to debug accelerated compositing layers. I removed
2085 the platform specific code from GraphicsLayerCA.mm and added calls
2086 to GraphicsLayerClient to get it from the higher levels. The values
2087 now get cached in RenderLayerCompositing and are queried from there
2088 by RenderLayerBacking (which implements the GraphicsLayerClient interface).
2091 * page/FrameView.cpp:
2092 (WebCore::FrameView::updateCompositingLayers):
2093 * page/Settings.cpp:
2094 (WebCore::Settings::Settings):
2095 (WebCore::Settings::setShowDebugBorders):
2096 (WebCore::Settings::setShowRepaintCounter):
2098 (WebCore::Settings::showDebugBorders):
2099 (WebCore::Settings::showRepaintCounter):
2100 * platform/graphics/GraphicsLayer.h:
2101 (WebCore::GraphicsLayer::showDebugBorders):
2102 (WebCore::GraphicsLayer::showRepaintCounter):
2103 * platform/graphics/GraphicsLayerClient.h:
2104 * platform/graphics/mac/GraphicsLayerCA.mm:
2105 * rendering/RenderLayerBacking.cpp:
2106 (WebCore::RenderLayerBacking::showDebugBorders):
2107 (WebCore::RenderLayerBacking::showRepaintCounter):
2108 * rendering/RenderLayerBacking.h:
2109 * rendering/RenderLayerCompositor.cpp:
2110 (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2111 (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
2112 * rendering/RenderLayerCompositor.h:
2113 (WebCore::RenderLayerCompositor::showDebugBorders):
2114 (WebCore::RenderLayerCompositor::showRepaintCounter):
2116 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
2118 Reviewed by Timothy Hatcher.
2120 Web Inspector: Get rid of metrics and properties sidebars'
2123 https://bugs.webkit.org/show_bug.cgi?id=31629
2125 * inspector/front-end/MetricsSidebarPane.js:
2126 * inspector/front-end/PropertiesSidebarPane.js:
2128 2009-11-17 Brian Weinstein <bweinstein@apple.com>
2130 Reviewed by Pavel Feldman.
2132 Fixes <http://webkit.org/b/31606>.
2133 Web Inspector: Enter/Return key should enter edit mode for Editable Fields.
2135 This implements Enter starting editing mode in an editable DataGrid. If the
2136 DataGrid is editable and the user hits return, startEditing the first child
2137 of the selected node. Also refactored some editing functions to take an
2138 event target instead of the event itself, because the functions only needed
2139 the target. Lastly, added had return in editing mode stop propogation, because
2140 when enter was hit to confirm text, it would propagate back to the datagrid
2141 and try to start editing again.
2143 * inspector/front-end/DataGrid.js:
2144 (WebInspector.DataGrid.prototype._ondblclick):
2145 (WebInspector.DataGrid.prototype._startEditing):
2146 (WebInspector.DataGrid.prototype.handleKeyEvent):
2147 (WebInspector.DataGrid.prototype.dataGridNodeFromEvent):
2148 (WebInspector.DataGrid.prototype._mouseDownInDataTable):
2149 (WebInspector.DataGrid.prototype._clickInDataTable):
2150 * inspector/front-end/inspector.js:
2151 (WebInspector.startEditing.element.handleKeyEvent):
2152 (WebInspector.startEditing):
2154 2009-11-18 Ben Murdoch <benm@google.com>
2156 Reviewed by Darin Adler.
2158 HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute.
2159 https://bugs.webkit.org/show_bug.cgi?id=31593
2161 Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html
2163 * html/HTMLAnchorElement.cpp:
2164 (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL.
2166 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
2168 Not reviewed. Touch InspectorController so that frontend
2169 JS files are deployed on Windows.
2171 * inspector/InspectorController.cpp:
2173 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
2175 Reviewed by Timothy Hatcher.
2177 Web Inspector: clone timeline records array instead of
2178 copying reference on invalidate all.
2180 https://bugs.webkit.org/show_bug.cgi?id=31596
2182 * inspector/front-end/AbstractTimelinePanel.js:
2183 (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
2185 2009-11-18 Simon Fraser <simon.fraser@apple.com>
2187 Reviewed by Dan Bernstein.
2189 Elements don't drop out of compositing layers when animation ends
2190 https://bugs.webkit.org/show_bug.cgi?id=31613
2191 <rdar://problem/7402913>
2193 Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which
2194 are compositing anyway for other reasons. Doing so can cause those layers
2195 to stay in compositing mode even after animations finish, because needsToBeComposited()
2196 continues to return true.
2198 No new tests because it's not possible to determine which elements are in
2199 compositing layers from DRT output.
2201 * rendering/RenderLayerCompositor.cpp:
2202 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2204 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
2206 Reviewed by Tor Arne Vestbø.
2208 [Qt] Mac Plugins: Remove null timer
2210 A null timer was used to send mouse move events. Instead, we now use
2211 move events to send nullEvent. This brings down CPU usage by 20-30%.
2213 https://bugs.webkit.org/show_bug.cgi?id=31624
2215 * plugins/PluginView.h:
2216 * plugins/mac/PluginViewMac.cpp:
2217 (WebCore::PluginView::platformStart):
2218 (WebCore::PluginView::handleMouseEvent):
2220 2009-11-18 Benjamin Poulain <benjamin.poulain@nokia.com>
2222 Reviewed by Simon Hausmann.
2224 [Qt] WebKit crashes when loading certain SVG images
2226 Check if the familly exist before creating the PlatformData from it.
2228 https://bugs.webkit.org/show_bug.cgi?id=29443
2230 Test: svg/text/text-font-invalid.html
2232 * platform/graphics/qt/FontFallbackListQt.cpp:
2233 (WebCore::FontFallbackList::fontDataAt):
2235 2009-11-17 Nicolas Weber <thakis@chromium.org>
2237 Reviewed by Darin Fisher.
2239 Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
2241 https://bugs.webkit.org/show_bug.cgi?id=31609
2243 * platform/chromium/PopupMenuChromium.cpp:
2244 (WebCore::PopupContainer::showExternal): Set parent for external
2245 dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
2246 its parent's client.
2248 2009-11-17 Hayato Ito <hayato@google.com>
2250 Reviewed by Darin Adler.
2252 Avoid infinite mutual recursion when deeply nested tags are loaded
2253 https://bugs.webkit.org/show_bug.cgi?id=30651
2255 Test: fast/parser/block-nesting-cap-table.html
2257 * html/HTMLParser.cpp:
2258 (WebCore::HTMLParser::parseToken):
2259 (WebCore::tagPriorityOfNode):
2260 (WebCore::HTMLParser::limitBlockDepth):
2261 (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth):
2262 (WebCore::HTMLParser::insertNode):
2263 * html/HTMLParser.h:
2265 2009-11-17 Brent Fulgham <bfulgham@webkit.org>
2267 Rubber-stamped by Alexey Proskuryakov.
2269 Final clean-ups for minor coding standard violations.
2270 https://bugs.webkit.org/show_bug.cgi?id=26102.
2272 * platform/graphics/cairo/GraphicsContextCairo.cpp:
2274 2009-11-17 Johnny Ding <jnd@chromium.org>
2276 Reviewed by Darin Adler.
2278 In all valid script tags for JavaScript, the event handler in <script...for> should not get executed.
2279 https://bugs.webkit.org/show_bug.cgi?id=31567
2281 * dom/ScriptElement.cpp:
2282 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
2284 2009-11-17 Pavel Feldman <pfeldman@chromium.org>
2286 Reviewed by Timothy Hatcher.
2288 Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
2289 - Updated DRT to show/close inspector for all tests under /inspector
2290 - Introduced LayoutTestController::setTimelineProfilingEnabled and
2291 WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
2292 - Removed reload on each inspector test
2293 - Renamed fast/inspector to fast/inspector-support in order not to trigger
2294 inspector for those.
2295 - Reimplemented timeline tests in order to get rid of reload there.
2296 - Moved tests that don't require harness into the fast group.
2298 https://bugs.webkit.org/show_bug.cgi?id=31472
2300 * WebCore.Inspector.exp:
2301 * inspector/front-end/TimelinePanel.js:
2302 (WebInspector.TimelinePanel.prototype._formatRecord):
2304 2009-11-17 Andrei Popescu <andreip@google.com>
2306 Reviewed by Dimitri Glazkov.
2308 [Android] Android is missing the implementation of the GeolocationService iface.
2309 https://bugs.webkit.org/show_bug.cgi?id=31554
2311 No new tests required as this is platform specific code.
2313 * platform/android/GeolocationServiceAndroid.cpp: Added.
2314 (WebCore::GeolocationServiceAndroid::create):
2315 (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid):
2316 (WebCore::GeolocationServiceAndroid::startUpdating):
2317 (WebCore::GeolocationServiceAndroid::stopUpdating):
2318 (WebCore::GeolocationServiceAndroid::suspend):
2319 (WebCore::GeolocationServiceAndroid::resume):
2320 (WebCore::GeolocationServiceAndroid::newPositionAvailable):
2321 (WebCore::GeolocationServiceAndroid::newErrorAvailable):
2322 (WebCore::GeolocationServiceAndroid::timerFired):
2323 (WebCore::GeolocationServiceAndroid::isPositionMovement):
2324 (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate):
2325 (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
2326 * platform/android/GeolocationServiceAndroid.h: Added.
2327 (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid):
2328 (WebCore::GeolocationServiceAndroid::lastPosition):
2329 (WebCore::GeolocationServiceAndroid::lastError):
2330 * platform/android/GeolocationServiceBridge.cpp: Added.
2332 (WebCore::GeolocationServiceBridge::GeolocationServiceBridge):
2333 (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
2334 (WebCore::GeolocationServiceBridge::start):
2335 (WebCore::GeolocationServiceBridge::stop):
2336 (WebCore::GeolocationServiceBridge::setEnableGps):
2337 (WebCore::GeolocationServiceBridge::newLocationAvailable):
2338 (WebCore::GeolocationServiceBridge::newErrorAvailable):
2339 (WebCore::GeolocationServiceBridge::toGeoposition):
2340 (WebCore::GeolocationServiceBridge::startJavaImplementation):
2341 (WebCore::GeolocationServiceBridge::stopJavaImplementation):
2342 * platform/android/GeolocationServiceBridge.h: Added.
2344 2009-11-16 Kent Tamura <tkent@chromium.org>
2346 Unreviewd build fix.
2348 - Fix typo in WebCore.vcproj.
2349 - Intlude limits.h for INT_MAX.
2350 - Enclose with parenthesis to suspress warning.
2352 * WebCore.vcproj/WebCore.vcproj:
2353 * html/ISODateTime.cpp:
2354 (WebCore::ISODateTime::addDay):
2356 2009-11-16 Robin Dunn <robin@alldunn.com>
2358 Reviewed by Kevin Ollivier.
2360 Make sure wx scrollbar drawing code factors in transforms when switching backends,
2361 fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects.
2363 https://bugs.webkit.org/show_bug.cgi?id=31570
2365 * platform/wx/ScrollbarThemeWx.cpp:
2366 (WebCore::ScrollbarThemeWx::minimumThumbLength):
2367 (WebCore::ScrollbarThemeWx::splitTrack):
2368 (WebCore::ScrollbarThemeWx::forwardButtonRect):
2369 * platform/wx/ScrollbarThemeWx.h:
2370 * platform/wx/wxcode/gtk/scrollbar_render.cpp:
2371 (wxRenderer_DrawScrollbar):
2372 * platform/wx/wxcode/scrollbar_render.h:
2373 (calcThumbStartAndLength):
2374 * platform/wx/wxcode/win/scrollbar_render.cpp:
2375 (wxRenderer_DrawScrollbar):
2377 2009-11-16 Kent Tamura <tkent@chromium.org>
2379 Reviewed by David Levin.
2381 Introduce WebCore::ISODateTime class.
2382 https://bugs.webkit.org/show_bug.cgi?id=31340
2384 This class represents a value of date/time types of the HTML5 INPUT
2385 element, and has some parsing methods for ISO 8601.
2387 This change has no tests because the class is not used yet.
2389 * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h.
2390 * WebCore.gypi: ditto.
2391 * WebCore.pro: ditto.
2392 * WebCore.vcproj/WebCore.vcproj: ditto.
2393 * WebCore.xcodeproj/project.pbxproj: ditto.
2394 * WebCoreSources.bkl: ditto.
2395 * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class.
2396 (WebCore::isLeapYear):
2397 (WebCore::maxDayOfMonth):
2398 (WebCore::dayOfWeek):
2399 (WebCore::ISODateTime::maxWeekNumberInYear):
2400 (WebCore::countDigits):
2402 (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek().
2403 (WebCore::ISODateTime::addDay): Private helper for parseTimeZone().
2404 (WebCore::ISODateTime::addMinute): ditto.
2405 (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime().
2406 (WebCore::ISODateTime::parseMonth): Parser for <input type=month>.
2407 (WebCore::ISODateTime::parseDate): Parser for <input type=date>.
2408 (WebCore::ISODateTime::parseWeek): Parser for <input type=week>.
2409 (WebCore::ISODateTime::parseTime): Parser for <input type=time>.
2410 (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>.
2411 (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>.
2412 * html/ISODateTime.h: Added. Declare WebCore::ISODateTime class.
2413 (WebCore::ISODateTime::ISODateTime):
2414 (WebCore::ISODateTime::millisecond):
2415 (WebCore::ISODateTime::second):
2416 (WebCore::ISODateTime::minute):
2417 (WebCore::ISODateTime::hour):
2418 (WebCore::ISODateTime::monthDay):
2419 (WebCore::ISODateTime::month):
2420 (WebCore::ISODateTime::fullYear):
2421 (WebCore::ISODateTime::week):
2423 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2425 Fix a typo in previous commit.
2427 * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if.
2429 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2431 Fix a typo in previous commit.
2433 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2435 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2439 * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named
2440 differently in Tiger CFNetwork.
2442 2009-11-16 Dimitri Glazkov <dglazkov@chromium.org>
2444 Reviewed by Darin Fisher.
2446 [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly.
2448 Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784.
2450 Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html
2452 * platform/KURLGoogle.cpp:
2453 (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified.
2455 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2457 Rubber-stamped by Jon Honeycutt.
2459 A better Windows build fix
2461 * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
2462 Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports.
2464 2009-11-16 Yael Aharon <yael.aharon@nokia.com>
2466 Reviewed by Darin Adler.
2468 Rename protocolIsValid to isValidProtocol.
2469 https://bugs.webkit.org/show_bug.cgi?id=31503
2471 This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19.
2473 No new tests since no new functionality was introduced.
2475 * html/HTMLAnchorElement.cpp:
2476 (WebCore::HTMLAnchorElement::setProtocol):
2477 * platform/KURL.cpp:
2478 (WebCore::isValidProtocol):
2480 * platform/KURLGoogle.cpp:
2481 (WebCore::isValidProtocol):
2483 2009-11-16 Chris Fleizach <cfleizach@apple.com>
2485 Reviewed by Beth Dakin.
2487 AX: aria-labelledby duplicates some of its WAI-ARIA label
2488 https://bugs.webkit.org/show_bug.cgi?id=31565
2490 Test: accessibility/aria-labelledby-overrides-label.html
2492 * accessibility/AccessibilityRenderObject.cpp:
2493 (WebCore::AccessibilityRenderObject::hasTextAlternative):
2494 (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
2495 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2496 * accessibility/AccessibilityRenderObject.h:
2498 2009-11-16 Nate Chapin <japhet@chromium.org>
2500 Reviewed by Darin Fisher.
2502 Handle the case of a null NPObject* in NPN_SetException in
2503 the V8 bindings. This allow out of process plugins calling
2504 NPN_SetException to just send null instead of sending an
2505 NPObject* that would be an address in a different
2506 process's memory space.
2508 https://bugs.webkit.org/show_bug.cgi?id=31561
2510 * bindings/v8/NPV8Object.cpp:
2511 (_NPN_SetException): Allow null NPObject* and just throw a general error.
2513 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2517 * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
2518 Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those.
2520 2009-11-14 Yael Aharon <yael.aharon@nokia.com>
2522 Reviewed by Kenneth Rohde Christiansen.
2524 [Qt] ASSERT failure while running DRT
2525 https://bugs.webkit.org/show_bug.cgi?id=30978
2527 Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod.
2528 These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren.
2530 * bridge/qt/qt_instance.cpp:
2531 (JSC::Bindings::QtRuntimeObjectImp::createStructure):
2532 * bridge/qt/qt_runtime.h:
2533 (JSC::Bindings::QtRuntimeMethod::createStructure):
2535 2009-11-16 Mark Rowe <mrowe@apple.com>
2537 Attempt to fix the build. Land a file that was missing from r51049.
2539 * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl.
2540 (WebCore::setWebGLArrayFromArray):
2542 2009-11-16 Kenneth Russell <kbr@google.com>
2544 Reviewed by Oliver Hunt.
2546 Update API of WebGLArray and friends
2547 https://bugs.webkit.org/show_bug.cgi?id=31175
2549 * bindings/js/JSWebGLArrayCustom.cpp:
2551 * bindings/js/JSWebGLArrayHelper.h: Added.
2552 (WebCore::setWebGLArrayFromArray):
2553 * bindings/js/JSWebGLByteArrayCustom.cpp:
2554 (WebCore::JSWebGLByteArray::set):
2555 * bindings/js/JSWebGLFloatArrayCustom.cpp:
2556 (WebCore::JSWebGLFloatArray::set):
2557 * bindings/js/JSWebGLIntArrayCustom.cpp:
2558 (WebCore::JSWebGLIntArray::set):
2559 * bindings/js/JSWebGLShortArrayCustom.cpp:
2560 (WebCore::JSWebGLShortArray::set):
2561 * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
2562 (WebCore::JSWebGLUnsignedByteArray::set):
2563 * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
2564 (WebCore::JSWebGLUnsignedIntArray::set):
2565 * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
2566 (WebCore::JSWebGLUnsignedShortArray::set):
2567 * bindings/scripts/CodeGeneratorV8.pm:
2568 * bindings/v8/V8DOMWrapper.cpp:
2569 (WebCore::V8DOMWrapper::convertToV8Object):
2570 * bindings/v8/custom/V8CustomBinding.h:
2571 * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
2572 (WebCore::CALLBACK_FUNC_DECL):
2573 * bindings/v8/custom/V8WebGLArrayCustom.h:
2574 (WebCore::constructWebGLArray):
2575 (WebCore::getWebGLArrayElement):
2576 (WebCore::setWebGLArrayFromArray):
2577 (WebCore::setWebGLArray):
2578 * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
2579 (WebCore::CALLBACK_FUNC_DECL):
2580 * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
2581 (WebCore::CALLBACK_FUNC_DECL):
2582 * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
2583 (WebCore::CALLBACK_FUNC_DECL):
2584 * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
2585 (WebCore::CALLBACK_FUNC_DECL):
2586 * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
2587 (WebCore::CALLBACK_FUNC_DECL):
2588 * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
2589 (WebCore::CALLBACK_FUNC_DECL):
2590 * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
2591 (WebCore::CALLBACK_FUNC_DECL):
2592 * html/canvas/WebGLArray.cpp:
2593 (WebCore::WebGLArray::WebGLArray):
2594 (WebCore::WebGLArray::~WebGLArray):
2595 (WebCore::WebGLArray::setImpl):
2596 * html/canvas/WebGLArray.h:
2597 (WebCore::WebGLArray::isByteArray):
2598 (WebCore::WebGLArray::isUnsignedByteArray):
2599 (WebCore::WebGLArray::isShortArray):
2600 (WebCore::WebGLArray::isUnsignedShortArray):
2601 (WebCore::WebGLArray::isIntArray):
2602 (WebCore::WebGLArray::isUnsignedIntArray):
2603 (WebCore::WebGLArray::isFloatArray):
2604 (WebCore::WebGLArray::buffer):
2605 (WebCore::WebGLArray::baseAddress):
2606 (WebCore::WebGLArray::byteOffset):
2607 * html/canvas/WebGLArray.idl:
2608 * html/canvas/WebGLArrayBuffer.cpp:
2609 (WebCore::WebGLArrayBuffer::create):
2610 (WebCore::WebGLArrayBuffer::WebGLArrayBuffer):
2611 (WebCore::WebGLArrayBuffer::data):
2612 (WebCore::WebGLArrayBuffer::byteLength):
2613 (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer):
2614 * html/canvas/WebGLArrayBuffer.h:
2615 * html/canvas/WebGLByteArray.cpp:
2616 (WebCore::WebGLByteArray::create):
2617 (WebCore::WebGLByteArray::byteLength):
2618 (WebCore::WebGLByteArray::slice):
2619 (WebCore::WebGLByteArray::set):
2620 * html/canvas/WebGLByteArray.h:
2621 (WebCore::WebGLByteArray::isByteArray):
2622 (WebCore::WebGLByteArray::data):
2623 (WebCore::WebGLByteArray::set):
2624 (WebCore::WebGLByteArray::get):
2625 (WebCore::WebGLByteArray::item):
2626 * html/canvas/WebGLByteArray.idl:
2627 * html/canvas/WebGLFloatArray.cpp:
2628 (WebCore::WebGLFloatArray::create):
2629 (WebCore::WebGLFloatArray::WebGLFloatArray):
2630 (WebCore::WebGLFloatArray::length):
2631 (WebCore::WebGLFloatArray::byteLength):
2632 (WebCore::WebGLFloatArray::slice):
2633 (WebCore::WebGLFloatArray::set):
2634 * html/canvas/WebGLFloatArray.h:
2635 (WebCore::WebGLFloatArray::isFloatArray):
2636 (WebCore::WebGLFloatArray::data):
2637 (WebCore::WebGLFloatArray::set):
2638 (WebCore::WebGLFloatArray::get):
2639 (WebCore::WebGLFloatArray::item):
2640 * html/canvas/WebGLFloatArray.idl:
2641 * html/canvas/WebGLIntArray.cpp:
2642 (WebCore::WebGLIntArray::create):
2643 (WebCore::WebGLIntArray::WebGLIntArray):
2644 (WebCore::WebGLIntArray::length):
2645 (WebCore::WebGLIntArray::byteLength):
2646 (WebCore::WebGLIntArray::slice):
2647 (WebCore::WebGLIntArray::set):
2648 * html/canvas/WebGLIntArray.h:
2649 (WebCore::WebGLIntArray::isIntArray):
2650 (WebCore::WebGLIntArray::data):
2651 (WebCore::WebGLIntArray::set):
2652 (WebCore::WebGLIntArray::get):
2653 (WebCore::WebGLIntArray::item):
2654 * html/canvas/WebGLIntArray.idl:
2655 * html/canvas/WebGLShortArray.cpp:
2656 (WebCore::WebGLShortArray::create):
2657 (WebCore::WebGLShortArray::WebGLShortArray):
2658 (WebCore::WebGLShortArray::length):
2659 (WebCore::WebGLShortArray::byteLength):
2660 (WebCore::WebGLShortArray::slice):
2661 (WebCore::WebGLShortArray::set):
2662 * html/canvas/WebGLShortArray.h:
2663 (WebCore::WebGLShortArray::isShortArray):
2664 (WebCore::WebGLShortArray::data):
2665 (WebCore::WebGLShortArray::set):
2666 (WebCore::WebGLShortArray::get):
2667 (WebCore::WebGLShortArray::item):
2668 * html/canvas/WebGLShortArray.idl:
2669 * html/canvas/WebGLUnsignedByteArray.cpp:
2670 (WebCore::WebGLUnsignedByteArray::create):
2671 (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray):
2672 (WebCore::WebGLUnsignedByteArray::length):
2673 (WebCore::WebGLUnsignedByteArray::byteLength):
2674 (WebCore::WebGLUnsignedByteArray::slice):
2675 (WebCore::WebGLUnsignedByteArray::set):
2676 * html/canvas/WebGLUnsignedByteArray.h:
2677 (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray):
2678 (WebCore::WebGLUnsignedByteArray::data):
2679 (WebCore::WebGLUnsignedByteArray::set):
2680 (WebCore::WebGLUnsignedByteArray::get):
2681 (WebCore::WebGLUnsignedByteArray::item):
2682 * html/canvas/WebGLUnsignedByteArray.idl:
2683 * html/canvas/WebGLUnsignedIntArray.cpp:
2684 (WebCore::WebGLUnsignedIntArray::create):
2685 (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray):
2686 (WebCore::WebGLUnsignedIntArray::length):
2687 (WebCore::WebGLUnsignedIntArray::byteLength):
2688 (WebCore::WebGLUnsignedIntArray::slice):
2689 (WebCore::WebGLUnsignedIntArray::set):
2690 * html/canvas/WebGLUnsignedIntArray.h:
2691 (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray):
2692 (WebCore::WebGLUnsignedIntArray::data):
2693 (WebCore::WebGLUnsignedIntArray::set):
2694 (WebCore::WebGLUnsignedIntArray::get):
2695 (WebCore::WebGLUnsignedIntArray::item):
2696 * html/canvas/WebGLUnsignedIntArray.idl:
2697 * html/canvas/WebGLUnsignedShortArray.cpp:
2698 (WebCore::WebGLUnsignedShortArray::create):
2699 (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray):
2700 (WebCore::WebGLUnsignedShortArray::length):
2701 (WebCore::WebGLUnsignedShortArray::byteLength):
2702 (WebCore::WebGLUnsignedShortArray::slice):
2703 (WebCore::WebGLUnsignedShortArray::set):
2704 * html/canvas/WebGLUnsignedShortArray.h:
2705 (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray):
2706 (WebCore::WebGLUnsignedShortArray::data):
2707 (WebCore::WebGLUnsignedShortArray::set):
2708 (WebCore::WebGLUnsignedShortArray::get):
2709 (WebCore::WebGLUnsignedShortArray::item):
2710 * html/canvas/WebGLUnsignedShortArray.idl:
2711 * platform/graphics/mac/GraphicsContext3DMac.cpp:
2712 (WebCore::GraphicsContext3D::bufferData):
2713 (WebCore::GraphicsContext3D::bufferSubData):
2715 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2719 * platform/network/cf/SocketStreamHandleCFNet.cpp: Declare constants as extern "C".
2721 2009-11-15 Brent Fulgham <bfulgham@webkit.org>
2723 Reviewed by Oliver Hunt.
2725 Enable support for webkit-box-shadow in Cairo builds.
2726 https://bugs.webkit.org/show_bug.cgi?id=26102.
2728 Covered by existing fast/box-shadow tests.
2730 * platform/graphics/cairo/GraphicsContextCairo.cpp: Add
2731 support for fillRect shadows.
2733 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2737 * platform/network/cf/SocketStreamHandleCFNet.cpp: Don't try to include a file that's not
2738 in WebKitSupportLibrary.
2740 2009-11-16 Alexey Proskuryakov <ap@apple.com>
2742 Reviewed by Darin Adler.
2744 https://bugs.webkit.org/show_bug.cgi?id=31494
2745 Add unauthenticated proxy support to SocketStreamHandleCFNet
2747 Cannot be tested in DRT.
2749 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2750 (WebCore::SocketStreamHandle::chooseProxy): Fetch proxy information from OS.
2751 (WebCore::SocketStreamHandle::createStreams): Apply it to the newly created streams.
2753 2009-11-14 Antonio Gomes <tonikitoo@webkit.org>
2755 Reviewed by Antti Koivisto.
2757 [Qt] Broken back/forward after using ErrorPageExtension to set error page
2758 https://bugs.webkit.org/show_bug.cgi?id=30573
2760 Make FrameLoader::checkLoadCompleteForThisFrame method
2761 to check for any working DocumentLoader instance (through
2762 activeDocumentLoader()) instead of only checking for
2763 'm_provisionalDocumentLoader' in order to decide to if
2764 it is going to reset of not the back and forward history.
2765 after an error page has been loaded.
2767 Test: LayoutTests/fast/history/back-forward-reset-after-error-handling.html
2769 * loader/FrameLoader.cpp:
2770 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2772 2009-11-14 Chris Fleizach <cfleizach@apple.com>
2774 Reviewed by Darin Adler.
2776 Need to implement ARIA role="directory"
2777 https://bugs.webkit.org/show_bug.cgi?id=31516
2779 Test: platform/mac/accessibility/aria-directory.html
2781 * accessibility/AXObjectCache.cpp:
2782 (WebCore::AXObjectCache::getOrCreate):
2783 * accessibility/AccessibilityList.cpp:
2784 (WebCore::AccessibilityList::isOrderedList):
2785 * accessibility/AccessibilityRenderObject.cpp:
2786 (WebCore::createARIARoleMap):
2788 2009-11-15 Dave Tapuska <dtapuska@rim.com>
2790 Reviewed by George Staikos.
2792 Compare UChars single unit at a time as opposed to the uint32_t
2793 approach as casting to unaligned addresses may cause a bus failure
2794 on ARMv5 and below. This change replicates the same defines that
2795 exists in AtomicString.cpp
2797 https://bugs.webkit.org/show_bug.cgi?id=31475
2799 * platform/text/StringHash.h:
2800 (WebCore::StringHash::equal):
2802 2009-11-15 Evan Martin <evan@chromium.org>
2804 Reviewed by Adam Barth.
2806 Wrap some SVG code in V8DOMWrapper with an ENABLE(SVG) test.
2808 https://bugs.webkit.org/show_bug.cgi?id=31490
2810 * bindings/v8/V8DOMWrapper.cpp:
2812 2009-11-15 Maxime Simon <simon.maxime@gmail.com>
2814 Reviewed by Adam Barth.
2816 [Haiku] Build fix. The FileChooser constructor doesn't need to be redefined.
2818 * platform/haiku/FileChooserHaiku.cpp:
2820 2009-11-15 Maxime Simon <simon.maxime@gmail.com>
2822 Reviewed by Adam Barth.
2824 [Haiku] Build fix. ColorSpace name had a wrong CamelCase.
2826 * platform/graphics/haiku/GraphicsContextHaiku.cpp:
2827 (WebCore::GraphicsContext::setPlatformStrokeColor):
2829 2009-11-15 Daniel Bates <dbates@webkit.org>
2831 No review, rolling out r50999.
2832 http://trac.webkit.org/changeset/50999
2834 Need to fix some issues in the Windows build. Missed some places where
2835 RenderTextControl::isEdited is called.
2837 * bindings/objc/DOMHTML.mm:
2838 (-[DOMHTMLInputElement _isEdited]):
2839 (-[DOMHTMLTextAreaElement _isEdited]):
2841 (WebCore::Document::setFocusedNode):
2842 * html/HTMLInputElement.cpp:
2843 (WebCore::HTMLInputElement::defaultEventHandler):
2844 * rendering/RenderTextControl.cpp:
2845 (WebCore::RenderTextControl::RenderTextControl):
2846 (WebCore::RenderTextControl::setInnerTextValue):
2847 (WebCore::RenderTextControl::setUserEdited):
2848 (WebCore::RenderTextControl::subtreeHasChanged):
2849 * rendering/RenderTextControl.h:
2850 (WebCore::RenderTextControl::isEdited):
2851 (WebCore::RenderTextControl::setEdited):
2852 (WebCore::RenderTextControl::isUserEdited):
2853 * rendering/RenderTextControlSingleLine.cpp:
2854 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2855 * wml/WMLInputElement.cpp:
2856 (WebCore::WMLInputElement::defaultEventHandler):
2858 2009-11-15 Daniel Bates <dbates@webkit.org>
2860 Reviewed by Darin Adler.
2862 https://bugs.webkit.org/show_bug.cgi?id=31186
2864 Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
2865 m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
2866 These are more descriptive names so as to clear an ambiguity surrounding
2867 their usage. Also, renames associated setters and getters so that they
2868 coincide with the renamed fields.
2870 No functionality was changed. So, no tests were included.
2872 * bindings/objc/DOMHTML.mm:
2873 (-[DOMHTMLInputElement _isEdited]):
2874 (-[DOMHTMLTextAreaElement _isEdited]):
2876 (WebCore::Document::setFocusedNode):
2877 * html/HTMLInputElement.cpp:
2878 (WebCore::HTMLInputElement::defaultEventHandler):
2879 * rendering/RenderTextControl.cpp:
2880 (WebCore::RenderTextControl::RenderTextControl):
2881 (WebCore::RenderTextControl::setInnerTextValue):
2882 (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
2883 (WebCore::RenderTextControl::subtreeHasChanged):
2884 * rendering/RenderTextControl.h:
2885 (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
2886 (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
2887 (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
2888 * rendering/RenderTextControlSingleLine.cpp:
2889 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2890 * wml/WMLInputElement.cpp:
2891 (WebCore::WMLInputElement::defaultEventHandler):
2893 2009-11-14 Adele Peterson <adele@apple.com>
2895 Reviewed by Dan Bernstein.
2897 Fix for <rdar://problem/6946165> Would like to be able to specify the number of visible lines when using -webkit-line-clamp
2899 Test: fast/overflow/line-clamp.html
2901 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to handle different types of values.
2902 * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): ditto.
2903 * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
2905 * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
2906 Use the line count value if available. Otherwise, convert the percentage to the line count, as we did before. Also,
2907 if there is anchor as the last child box, still allow adding the ellipsis.
2909 * rendering/RenderLayer.cpp:
2910 (WebCore::RenderLayer::scrollByRecursively): Call isNone on the LineClampValue to see if the line-clamp property has been set.
2911 (WebCore::RenderLayer::scrollRectToVisible): ditto.
2913 * WebCore.xcodeproj/project.pbxproj: Added LineClampValue.h
2914 * rendering/style/LineClampValue.h: Added.
2915 (WebCore::LineClampValue::LineClampValue):
2916 (WebCore::LineClampValue::value):
2917 (WebCore::LineClampValue::isPercentage):
2918 (WebCore::LineClampValue::isNone):
2919 (WebCore::LineClampValue::operator==):
2920 (WebCore::LineClampValue::operator!=):
2921 * rendering/style/RenderStyleConstants.h: (WebCore::): Define ELineClampType enum for percentage or line count.
2923 * rendering/style/RenderStyle.h: Use LineClampValue.
2924 (WebCore::InheritedFlags::lineClamp):
2925 (WebCore::InheritedFlags::setLineClamp):
2926 (WebCore::InheritedFlags::initialLineClamp):
2927 * rendering/style/StyleRareNonInheritedData.h:
2929 2009-11-14 Eric Carlson <eric.carlson@apple.com>
2931 Reviewed by Oliver Hunt.
2933 <rdar://problem/7287487>
2934 Do not use QuickTime version to detect media controller theme
2936 * WebCore.base.exp: Export wkMediaControllerThemeAvailable
2937 * platform/mac/WebCoreSystemInterface.h: Ditto.
2938 * platform/mac/WebCoreSystemInterface.mm: Ditto.
2940 * rendering/RenderThemeMac.mm:
2941 (WebCore::mediaControllerTheme): Use wkMediaControllerThemeAvailable instead of the
2942 QuickTime version to see if it is possible to use MediaControllerThemeQuickTime.
2944 2009-11-14 Kent Tamura <tkent@chromium.org>
2946 Reviewed by Darin Adler.
2948 - Recognizes date/datetime/datetime-local/month/time/week types of INPUT element.
2949 They have no dedicated UI and no type validation for now.
2950 - Clean up setInputType() and formControlType() of HTMLInputElement.
2951 https://bugs.webkit.org/show_bug.cgi?id=29004
2953 Test: fast/forms/input-type-change3.html
2955 * html/HTMLInputElement.cpp:
2956 (WebCore::HTMLInputElement::valueMissing):
2957 (WebCore::HTMLInputElement::patternMismatch):
2958 (WebCore::HTMLInputElement::tooLong):
2959 (WebCore::createTypeMap):
2960 (WebCore::HTMLInputElement::setInputType):
2961 (WebCore::createFormControlTypes):
2962 (WebCore::HTMLInputElement::formControlType):
2963 (WebCore::HTMLInputElement::saveFormControlState):
2964 (WebCore::HTMLInputElement::restoreFormControlState):
2965 (WebCore::HTMLInputElement::accessKeyAction):
2966 (WebCore::HTMLInputElement::rendererIsNeeded):
2967 (WebCore::HTMLInputElement::createRenderer):
2968 (WebCore::HTMLInputElement::appendFormData):
2969 (WebCore::HTMLInputElement::isTextField):
2970 (WebCore::HTMLInputElement::valueWithDefault):
2971 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
2972 (WebCore::HTMLInputElement::defaultEventHandler):
2973 (WebCore::HTMLInputElement::isRequiredFormControl):
2974 (WebCore::HTMLInputElement::dataList):
2975 * html/HTMLInputElement.h:
2976 (WebCore::HTMLInputElement::):
2978 2009-11-13 Chris Fleizach <cfleizach@apple.com>
2980 Reviewed by Darin Adler.
2982 WAI-ARIA: checkbox does not determine its label from text content
2983 https://bugs.webkit.org/show_bug.cgi?id=31456
2985 Test: accessibility/aria-checkbox-text.html
2987 * accessibility/AccessibilityRenderObject.cpp:
2988 (WebCore::AccessibilityRenderObject::title):
2990 2009-11-13 Dimitri Glazkov <dglazkov@chromium.org>
2992 Unreviewed, build fix.
2994 [Chromium] Fix build to catch up with http://trac.webkit.org/changeset/50973.
2995 This is just enough changes to unbreak the port.
2997 * bindings/v8/ScriptController.cpp:
2998 (WebCore::mainThreadNormalWorld):
2999 * bindings/v8/V8Proxy.cpp:
3000 (WebCore::V8Proxy::initContextIfNeeded):
3001 * loader/FrameLoaderClient.h:
3003 2009-11-13 Aaron Boodman <aa@chromium.org>
3005 Unreviewed fix for Chromium build.
3007 * loader/FrameLoaderClient.h:
3008 (WebCore::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
3009 Provide an empty implementation of this method because I don't know
3010 what it is supposed to do on Chromium.
3012 2009-11-13 Aaron Boodman <aa@chromium.org>
3014 Unreviewed fix for Chromium build.
3016 * loader/FrameLoader.h: Make dispatchDidClearWindowObjectsInAllWorlds()
3017 public, as Chromium's V8Proxy calls it.
3019 2009-11-13 Aaron Boodman <aa@chromium.org>
3021 Unreviewed fix to Chromium build.
3023 * bindings/v8/ScriptController.cpp:
3024 (WebCore::ScriptController::getAllWorlds):
3026 2009-11-13 Aaron Boodman <aa@chromium.org>
3028 Unreviewed fix for Chromium build.
3030 * platform/text/TextBoundaries.cpp: Use longer path to refer to Unicode.h.
3032 2009-11-13 Adam Barth <abarth@webkit.org>
3034 Unreviewed partial build fix for Chromium. Should fix failure #4.
3036 * bindings/v8/ScriptController.cpp:
3037 (WebCore::ScriptController::getAllWorlds):
3038 * bindings/v8/ScriptController.h:
3039 * bindings/v8/V8Proxy.cpp:
3040 (WebCore::V8Proxy::initContextIfNeeded):
3042 2009-11-13 Adam Barth <abarth@webkit.org>
3044 Unreviewed partial build fix for Chromium.
3046 * bindings/v8/ScriptController.h:
3047 (WebCore::ScriptController::getAllWorlds):
3049 2009-11-13 Eric Seidel <eric@webkit.org>
3051 No review, build fix only.
3053 Fix Windows and Chromium builds after http://trac.webkit.org/changeset/50977.
3055 Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
3056 https://bugs.webkit.org/show_bug.cgi?id=31468
3058 * WebCore.gypi: Rename TextBoundariesICU -> TextBoundaries
3059 * WebCore.vcproj/WebCore.vcproj: Rename TextBoundariesICU -> TextBoundaries
3061 2009-11-12 Jeremy Orlow <jorlow@chromium.org>
3063 Reviewed by Dmitry Titov.
3065 LocalStorage quota should include key sizes in its count
3066 https://bugs.webkit.org/show_bug.cgi?id=31451
3068 * storage/StorageMap.cpp:
3069 (WebCore::StorageMap::setItem):
3070 Count keys in the quota when adding a new item.
3071 (WebCore::StorageMap::removeItem):
3072 Remove the key's length from the quota if we're removing the item.
3073 (WebCore::StorageMap::importItem):
3074 Assume that we're adding things for the first time.
3075 Count keys in the quota.
3077 2009-11-13 Dominik Röttsches <dominik.roettsches@access-company.com>
3079 Reviewed by Eric Seidel.
3081 Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
3082 https://bugs.webkit.org/show_bug.cgi?id=31468
3084 Moving TextBoundariesICU.cpp to TextBoundaries.cpp
3085 by removing the direct ICU dependency and replacing it
3086 with WTF functions and WebCore's own TextBreakIterator
3090 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
3091 * platform/text/TextBoundaries.cpp: Added.
3092 (WebCore::findNextWordFromIndex):
3093 (WebCore::findWordBoundary):
3094 * platform/text/TextBoundariesICU.cpp: Removed.
3095 * platform/text/TextBreakIterator.h:
3096 * platform/text/TextBreakIteratorICU.cpp:
3097 (WebCore::textBreakLast):
3098 (WebCore::textBreakPrevious):
3100 2009-11-13 Shinichiro Hamaji <hamaji@chromium.org>
3102 Reviewed by Darin Adler.
3104 WebCore::externalRepresentation should update layout before getting render object
3105 https://bugs.webkit.org/show_bug.cgi?id=31459
3107 * rendering/RenderTreeAsText.cpp:
3108 (WebCore::externalRepresentation):
3110 2009-11-13 Adam Roben <aroben@apple.com>
3112 Tell FrameLoaderClient when window objects in isolated worlds are
3115 Fixes <http://webkit.org/b/31124> Tell the WebFrameLoadDelegate when
3116 window objects in isolated worlds are cleared
3118 Test: http/tests/security/isolatedWorld/didClearWindowObject.html
3120 Reviewed by Dave Hyatt.
3122 * bindings/js/JSDOMBinding.h:
3123 (WebCore::WebCoreJSClientData::getAllWorlds): Added. Copies all the
3124 worlds in m_worldSet to the passed-in Vector.
3126 * bindings/js/ScriptController.cpp:
3127 (WebCore::ScriptController::getAllWorlds): Added. Calls through to
3128 WebCoreJSClientData.
3129 (WebCore::ScriptController::initScript): Changed to call
3130 FrameLoader::dispatchDidClearWindowObjectInWorld.
3132 * bindings/js/ScriptController.h: Added getAllWorlds.
3134 * loader/EmptyClients.h:
3135 (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
3136 Updated for FrameLoaderClient change.
3138 * loader/FrameLoader.cpp:
3139 (WebCore::FrameLoader::receivedFirstData):
3140 (WebCore::FrameLoader::begin):
3141 Changed to call dispatchDidClearWindowObjectsInAllWorlds.
3143 (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
3144 Added. Retrieves all the worlds, then calls through to
3145 dispatchDidClearWindowObjectInWorld for each one.
3146 (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld): Replaces
3147 dispatchWindowObjectAvailable. Calls up to the client, then, if the
3148 world is the mainThreadNormalWorld(), tells the Inspector about it,
3151 * loader/FrameLoader.h: Replaced dispatchWindowObjectAvailable with
3152 dispatchDidClearWindowObjectInWorld. Added
3153 dispatchDidClearWindowObjectsInAllWorlds.
3155 * loader/FrameLoaderClient.h: Replaced windowObjectCleared with
3156 dispatchDidClearWindowObjectForWorld.
3158 2009-11-13 Vitaly Repeshko <vitalyr@chromium.org>
3160 Reviewed by Dimitri Glazkov.
3162 [V8] Fix SVG context assignment for pod types.
3163 https://bugs.webkit.org/show_bug.cgi?id=31497
3165 I broke this in r50958.
3167 Tested by svg/custom/viewport-update2.svg.
3169 * bindings/scripts/CodeGeneratorV8.pm:
3171 2009-11-13 Andrei Popescu <andreip@google.com>
3173 Reviewed by Dmitry Titov.
3175 Bring the platform/android files inline with Android 2.0
3176 https://bugs.webkit.org/show_bug.cgi?id=31423
3178 No new tests required: these are all Android-specific files.
3180 * platform/android/ClipboardAndroid.cpp:
3181 (WebCore::ClipboardAndroid::files):
3182 * platform/android/ClipboardAndroid.h:
3183 * platform/android/FileChooserAndroid.cpp:
3184 (WebCore::FileChooser::basenameForWidth):
3185 (WebCore::fileButtonChooseFileLabel):
3186 * platform/android/KeyEventAndroid.cpp:
3187 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3188 * platform/android/LocalizedStringsAndroid.cpp:
3189 (WebCore::contextMenuItemTagOpenLinkInNewWindow):
3190 (WebCore::contextMenuItemTagDownloadLinkToDisk):
3191 (WebCore::contextMenuItemTagCopyLinkToClipboard):
3192 (WebCore::contextMenuItemTagOpenImageInNewWindow):
3193 (WebCore::contextMenuItemTagDownloadImageToDisk):
3194 (WebCore::contextMenuItemTagCopyImageToClipboard):
3195 (WebCore::contextMenuItemTagOpenFrameInNewWindow):
3196 (WebCore::contextMenuItemTagCopy):
3197 (WebCore::contextMenuItemTagGoBack):
3198 (WebCore::contextMenuItemTagGoForward):
3199 (WebCore::contextMenuItemTagStop):
3200 (WebCore::contextMenuItemTagReload):
3201 (WebCore::contextMenuItemTagCut):
3202 (WebCore::contextMenuItemTagPaste):
3203 (WebCore::contextMenuItemTagNoGuessesFound):
3204 (WebCore::contextMenuItemTagIgnoreSpelling):
3205 (WebCore::contextMenuItemTagLearnSpelling):
3206 (WebCore::contextMenuItemTagSearchWeb):
3207 (WebCore::contextMenuItemTagLookUpInDictionary):
3208 (WebCore::contextMenuItemTagOpenLink):
3209 (WebCore::contextMenuItemTagIgnoreGrammar):
3210 (WebCore::contextMenuItemTagSpellingMenu):
3211 (WebCore::contextMenuItemTagShowSpellingPanel):
3212 (WebCore::contextMenuItemTagCheckSpelling):
3213 (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
3214 (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
3215 (WebCore::contextMenuItemTagFontMenu):
3216 (WebCore::contextMenuItemTagBold):
3217 (WebCore::contextMenuItemTagItalic):
3218 (WebCore::contextMenuItemTagUnderline):
3219 (WebCore::contextMenuItemTagOutline):
3220 (WebCore::contextMenuItemTagWritingDirectionMenu):
3221 (WebCore::contextMenuItemTagTextDirectionMenu):
3222 (WebCore::contextMenuItemTagDefaultDirection):
3223 (WebCore::contextMenuItemTagLeftToRight):
3224 (WebCore::contextMenuItemTagRightToLeft):
3225 (WebCore::mediaElementLoadingStateText):
3226 (WebCore::mediaElementLiveBroadcastStateText):
3227 (WebCore::searchableIndexIntroduction):
3228 (WebCore::resetButtonDefaultLabel):
3229 (WebCore::submitButtonDefaultLabel):
3230 (WebCore::inputElementAltText):
3231 * platform/android/RenderThemeAndroid.cpp:
3232 (WebCore::RenderTheme::themeForPage):
3233 (WebCore::RenderThemeAndroid::baselinePosition):
3234 (WebCore::RenderThemeAndroid::paintButton):
3235 (WebCore::adjustMenuListStyleCommon):
3236 (WebCore::RenderThemeAndroid::paintCombo):
3237 * platform/android/ScreenAndroid.cpp:
3238 * platform/android/ScrollViewAndroid.cpp:
3239 (WebCore::ScrollView::platformOffscreenContentRectangle):
3240 * platform/android/TemporaryLinkStubs.cpp:
3241 (JSC::Bindings::dispatchJNICall):
3242 * platform/android/WidgetAndroid.cpp:
3243 (WebCore::Widget::setFrameRect):
3245 2009-11-13 Norbert Leser <norbert.leser&nokia.com>
3247 Reviewed by Eric Seidel.
3249 Added macros for USERINCLUDE paths within symbian blocks
3250 to guarantee inclusion of respective header files from local path
3251 first (to avoid clashes with same names of header files in system include path).
3255 2009-11-13 Hironori Bono <hbono@chromium.org>
3257 Reviewed by Oliver Hunt.
3259 Implement composition events introduced in DOM Level 3.
3260 This change adds a new IDL which defines the composition events, adds a class which
3261 implements the composition events, and sends the composition events according to
3263 https://bugs.webkit.org/show_bug.cgi?id=26310
3265 Test: fast/events/ime-composition-events-001.html
3267 * DerivedSources.make: Added CompositionEvent so we can compile "CompositionEvent.idl".
3268 * GNUmakefile.am: Added "CompositionEvent.{cpp,h,idl}".
3269 * WebCore.gypi: ditto.
3270 * WebCore.pro: ditto
3271 * WebCore.vcproj/WebCore.vcproj: ditto.
3272 * WebCore.xcodeproj/project.pbxproj: Added "CompositionEvent.{cpp,h,idl}" and "JSCompositionEvent.{cpp,h}".
3273 * WebCoreSources.bkl: Added "JSCompositionEvent.{cpp,h}".
3274 * bindings/js/JSEventCustom.cpp:
3275 (WebCore::toJS): Call isCompositionEvent() to create the CompositionEvent wrapper.
3276 * bindings/v8/DOMObjectsInclude.h: Added "JSCompositionEvent.h".
3277 * bindings/v8/DerivedSourcesAllInOne.cpp: Added "JSCompositionEvent.cpp".
3278 * bindings/v8/V8DOMWrapper.cpp: Call isCompositionEvent() to identify an event as a CompositionEvent.
3279 (WebCore::V8DOMWrapper::convertEventToV8Object):
3280 * bindings/v8/V8Index.cpp: Added "V8CompositionEvent.h".
3281 * bindings/v8/V8Index.h: Added V8Index::COMPOSITIONEVENT.
3282 * dom/CompositionEvent.cpp: Implements the CompositionEvent class.
3283 (WebCore::CompositionEvent::CompositionEvent):
3284 (WebCore::CompositionEvent::~CompositionEvent):
3285 (WebCore::CompositionEvent::initCompositionEvent):
3286 (WebCore::CompositionEvent::isCompositionEvent):
3287 * dom/CompositionEvent.h: Declares the CompositionEvent class.
3288 (WebCore::CompositionEvent::create):
3289 (WebCore::CompositionEvent::data):
3290 * dom/CompositionEvent.idl: Added the IDL of DOM CompositionEvent.
3292 (WebCore::Event::isCompositionEvent): Added a method to identify an event is a CompositionEvent.
3294 * dom/EventNames.h: Added composition{start,update,end} to eventNames.
3295 * editing/Editor.cpp:
3296 (WebCore::Editor::confirmComposition): Sent a CompositionEnd event.
3297 (WebCore::Editor::setComposition): Sent a Composition{Start,Update,End} event.
3299 2009-11-13 Jens Alfke <snej@chromium.org>
3301 Reviewed by Dimitri Glazkov.
3303 Fix a link error in unofficial GCC 4.4 builds on Linux.
3304 https://bugs.webkit.org/show_bug.cgi?id=31477
3306 * bindings/v8/V8Binding.cpp: Add explicit instantiations of v8StringToWebCoreString template.
3308 2009-11-13 Eric Seidel <eric@webkit.org>
3310 No review, build fix only.
3312 Fix Debug build after http://trac.webkit.org/changeset/50960.
3314 The CounterNode class does not support all methods necessary to efficiently update the counter tree as needed per CSS2.1
3315 https://bugs.webkit.org/show_bug.cgi?id=31213
3317 * rendering/CounterNode.cpp:
3318 (WebCore::showTreeAndMark):
3319 * rendering/RenderCounter.cpp:
3320 (WebCore::destroyCounterNodeChildren):
3322 2009-11-13 Dirk Schulze <krit@webkit.org>
3324 Reviewed by Gustavo Noronha.
3326 [CAIRO] shadow support for Canvas and SVG
3327 [https://bugs.webkit.org/show_bug.cgi?id=30960]
3329 We currently fill a path with solid color instead of filling
3330 a clipping path. This causes problems on some composite operators,
3331 since Cairo modifies the area outside the path.
3332 This fixes the behavior of WebKitGtk on fast/canvas/canvas-composite-alpha.html
3334 Thanks to Benjamin Otte for tracking the bug down.
3336 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3337 (WebCore::setPlatformFill):
3339 2009-11-12 Dumitru Daniliuc <dumi@chromium.org>
3341 Reviewed by Dimitri Glazkov.
3343 Adding Chromium's DatabaseTracker implementation.
3345 https://bugs.webkit.org/show_bug.cgi?id=31440
3347 * WebCore.gyp/WebCore.gyp:
3349 * storage/DatabaseTracker.h:
3350 * storage/chromium/DatabaseTrackerChromium.cpp:
3351 (WebCore::DatabaseTracker::fullPathForDatabase):
3352 (WebCore::DatabaseTracker::getMaxSizeForDatabase):
3353 * storage/chromium/QuotaTracker.cpp:
3354 (WebCore::QuotaTracker::updateDatabaseSize):
3355 * storage/chromium/QuotaTracker.h:
3357 2009-11-13 Carol Szabo <carol.szabo@nokia.com>
3359 Reviewed by Darin Adler.
3361 The CounterNode class is missing some basic tree navigation methods common in other WebKit trees such as the rendering tree
3362 https://bugs.webkit.org/show_bug.cgi?id=31213
3363 Added tree navigation methods that permit full implementation of CSS2.1
3364 counter feature without using recursion proportional to the counter
3366 No new tests because I did not find any bug that is fixed by this
3367 commit yet, this just reduces the size of the patch for 11031 and
3368 helps respond to some concerns regarding that patch.
3370 * rendering/CounterNode.cpp:
3371 (WebCore::CounterNode::CounterNode):
3373 (WebCore::CounterNode::nextInPreOrderAfterChildren):
3374 (WebCore::CounterNode::nextInPreOrder):
3375 Added to support non-recursive tree traversal necessary for
3376 efficient full implementation of CSS2.1 counters.
3378 (WebCore::CounterNode::lastDescendant):
3379 (WebCore::CounterNode::previousInPreOrder):
3380 Moved this methods such that they occupy a place similar to that of
3381 identically named methods on the render tree. This allows for their
3382 broader use needed in full implementation of CSS2.1 counters.
3384 (WebCore::CounterNode::resetRenderer):
3385 (WebCore::CounterNode::resetRenderers):
3386 (WebCore::CounterNode::recount):
3387 (WebCore::CounterNode::insertAfter):
3388 (WebCore::CounterNode::removeChild):
3389 Changed such that insertion/removal of a counter, triggers not only
3390 recalculation of PrefixWidths, but also reassesment of values in
3391 counter nodes. This is the basis full implementation of CSS2.1
3392 counters. It does not change current behavior by much because of
3393 changes needed to the recalculation algorithm, but those are comming
3394 in the patch for 11031.
3395 (WebCore::showTreeAndMark):
3396 * rendering/CounterNode.h:
3397 * rendering/RenderCounter.cpp:
3399 Only changed argument type to prepare for implementation of Darin
3400 Adler's recommendation for the patch to 11031.
3402 (WebCore::RenderCounter::invalidate):
3403 (WebCore::destroyCounterNodeChildren):
3404 (WebCore::RenderCounter::destroyCounterNodes):
3405 * rendering/RenderCounter.h:
3406 * rendering/RenderObjectChildList.cpp:
3407 (WebCore::invalidateCountersInContainer):
3408 (WebCore::RenderObjectChildList::invalidateCounters):
3409 * rendering/RenderObjectChildList.h:
3410 Added the ability to restrict invalidation to counters with a given
3412 Also invalidated counters that are on the child container itself
3413 which were missed by the previous algorithm, but were a valid case.
3415 2009-11-13 Vitaly Repeshko <vitalyr@chromium.org>
3417 Reviewed by Dimitri Glazkov.
3419 [V8] Protect SVG animated properties from destruction in bindings.
3420 https://bugs.webkit.org/show_bug.cgi?id=31474
3422 See http://crbug.com/26719.
3424 Tested by LayoutTests/svg/custom/js-update-transform-addition.svg
3427 Made sure we keep a reference to SVG properties while setting a
3429 * bindings/scripts/CodeGeneratorV8.pm:
3430 * bindings/v8/V8Proxy.h:
3431 (WebCore::V8Proxy::withSVGContext):
3433 2009-11-13 Brent Fulgham <bfulgham@webkit.org>
3435 Reviewed by Alexey Proskuryakov.
3437 [CAIRO] shadow support for Canvas and SVG.
3438 [https://bugs.webkit.org/show_bug.cgi?id=30960]
3440 Incorporate Benjamin Otte's recommendations to avoid
3441 a buffer overrun, and small performance improvement.
3443 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3444 (WebCore::copyContextProperties): Correctly size output
3445 storage for cairo_get_dash to avoid buffer overrun.
3446 (WebCore::drawPathShadow): Prefer cairo_fill_extents
3447 to slower cairo_stroke_extents when not drawing shadows.
3449 2009-11-13 Dumitru Daniliuc <dumi@chromium.org>
3451 Reviewed by Dimitri Glazkov.
3453 Do not register Chromium's HTML5 DB VFS as the default
3454 VFS. Otherwise, other sqlite DB users in the same process will
3457 https://bugs.webkit.org/show_bug.cgi?id=31462
3459 * platform/sql/chromium/SQLiteFileSystemChromium.cpp:
3460 (WebCore::SQLiteFileSystem::openDatabase):
3461 * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
3462 (WebCore::SQLiteFileSystem::registerSQLiteVFS):
3463 * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp:
3464 (WebCore::SQLiteFileSystem::registerSQLiteVFS):
3466 2009-11-13 Alexey Proskuryakov <ap@apple.com>
3470 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3471 (WebCore::SocketStreamHandle::SocketStreamHandle): Explicitly cast "-1" to CFOptionFlags,
3472 avoiding a sign mismatch warning.
3474 2009-11-13 Alexey Proskuryakov <ap@apple.com>
3478 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3479 (WebCore::SocketStreamHandle::readStreamCallback):
3480 (WebCore::SocketStreamHandle::writeStreamCallback):
3481 Use ASSERT_UNUSED for unused stream parameter.
3483 2009-11-12 Alexey Proskuryakov <ap@apple.com>
3485 Reviewed by Darin Adler.
3487 https://bugs.webkit.org/show_bug.cgi?id=31441
3488 Implement SocketStreamHandleCFNet
3490 Existing WebSocket tests now pass on Mac. No proxy support yet.
3492 * platform/network/SocketStreamHandleClient.h:
3493 * platform/network/cf/SocketStreamHandle.h:
3494 (WebCore::SocketStreamHandle::shouldUseSSL):
3495 (WebCore::SocketStreamHandle::refAuthenticationClient):
3496 (WebCore::SocketStreamHandle::derefAuthenticationClient):
3497 (WebCore::SocketStreamHandle::):
3498 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3499 (WebCore::SocketStreamHandle::SocketStreamHandle):
3500 (WebCore::SocketStreamHandle::chooseProxy):
3501 (WebCore::SocketStreamHandle::createStreams):
3502 (WebCore::SocketStreamHandle::copyCFStreamDescription):
3503 (WebCore::SocketStreamHandle::readStreamCallback):
3504 (WebCore::SocketStreamHandle::writeStreamCallback):
3505 (WebCore::SocketStreamHandle::~SocketStreamHandle):
3506 (WebCore::SocketStreamHandle::platformSend):
3507 (WebCore::SocketStreamHandle::platformClose):
3508 (WebCore::SocketStreamHandle::receivedCredential):
3509 (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential):
3510 (WebCore::SocketStreamHandle::receivedCancellation):
3512 2009-11-12 Pavel Feldman <pfeldman@chromium.org>
3514 Reviewed by Timothy Hatcher.
3516 Web Inspector: preload status bar button glyphs
3517 in order to prevent them from flickering (take 2).
3519 https://bugs.webkit.org/show_bug.cgi?id=31439
3521 * inspector/front-end/inspector.js:
3524 2009-11-13 Pavel Feldman <pfeldman@chromium.org>
3526 Reviewed by Adam Barth.
3528 Chromium: [REGRESSION] Crash while stopping on a breakpoint.
3529 Rolling back r50890.
3531 https://bugs.webkit.org/show_bug.cgi?id=31467
3533 * bindings/v8/V8Proxy.cpp:
3534 (WebCore::V8Proxy::canAccessPrivate):
3536 2009-11-13 Dirk Schulze <krit@webkit.org>
3538 Reviewed by Gustavo Noronha.
3540 [CAIRO] shadow support for Canvas and SVG
3541 [https://bugs.webkit.org/show_bug.cgi?id=30960]
3543 This is the fix of a regression, caused by the shadow patch
3544 from the bug above. Reinserted the save and restore calls
3545 that were accidently removed by the previous patch.
3547 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3548 (WebCore::setPlatformFill):
3549 (WebCore::setPlatformStroke):
3551 2009-11-13 Pavel Feldman <pfeldman@chromium.org>
3553 Not reviewed. Reverting r50908 since it makes inspector tests
3556 https://bugs.webkit.org/show_bug.cgi?id=31439
3558 * inspector/front-end/inspector.js:
3560 2009-11-13 Mikhail Naganov <mnaganov@chromium.org>
3562 Reviewed by Timothy Hatcher.
3564 Enable 'console.profile()' and 'console.profileEnd()'
3565 regardless of JAVASCRIPT_DEBUGGER.
3567 https://bugs.webkit.org/show_bug.cgi?id=31293
3570 * bindings/js/JSConsoleCustom.cpp:
3571 (WebCore::JSConsole::profile):
3572 (WebCore::JSConsole::profileEnd):
3573 * bindings/v8/custom/V8ConsoleCustom.cpp: Added.
3574 (WebCore::CALLBACK_FUNC_DECL):
3575 * bindings/v8/custom/V8CustomBinding.h:
3578 2009-11-12 David Levin <levin@chromium.org>
3584 * bindings/v8/ScriptController.h:
3585 (WebCore::ScriptController::evaluateInWorld): Add a dummy
3586 method which isn't called in chromium to make things compile.
3588 2009-11-12 Anantanarayanan G Iyengar <ananta@chromium.org>
3590 Reviewed by Adam Barth.
3592 The document-open.html test was flaky at times. The test invokes the layout test plugin
3593 which in its destroy stream ha