1 2010-02-08 Maciej Stachowiak <mjs@apple.com>
3 Reviewed by Cameron Zwarich.
5 Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
6 https://bugs.webkit.org/show_bug.cgi?id=34698
8 * Configurations/FeatureDefines.xcconfig:
11 * html/HTMLTagNames.in: Make the ruby-related tag names conditional.
12 * rendering/RenderObject.cpp:
13 (WebCore::RenderObject::createObject): ifdef the code that would create ruby elements.
14 * rendering/RenderObject.h: ditto above
15 * rendering/RenderRuby.cpp: ifdef this whole file
16 * rendering/RenderRuby.h: ditto
17 * rendering/RenderRubyBase.cpp: ditto
18 * rendering/RenderRubyBase.h: ditto
19 * rendering/RenderRubyRun.cpp: ditto
20 * rendering/RenderRubyRun.h: ditto
21 * rendering/RenderRubyText.cpp: ditto
22 * rendering/RenderRubyText.h: ditto
24 2010-02-11 Kent Tamura <tkent@chromium.org>
26 Reviewed by Darin Adler.
28 Step attribute support for date&time types.
29 https://bugs.webkit.org/show_bug.cgi?id=30847
31 - Add implementation for ValidityState.stepMismatch, stepUp() and
32 stepDown() for date, datetime, datetime-local, month, time, week types.
33 - Fix string representation of DateComponents.
35 Tests: fast/forms/ValidityState-stepMismatch.html
36 fast/forms/input-stepup-stepdown.html
38 * html/HTMLInputElement.cpp:
39 - Change monthDefaultMaximum so that DateComponents::m_year doesn't overflow.
40 (WebCore::HTMLInputElement::stepBase):
41 (WebCore::HTMLInputElement::stepMismatch):
42 (WebCore::HTMLInputElement::getStepParameters):
43 (WebCore::HTMLInputElement::getAllowedValueStep):
44 (WebCore::HTMLInputElement::applyStep):
45 Renamed from applyStepForNumberOrRange(), and add support for other types.
46 (WebCore::HTMLInputElement::stepUp): Rename applyStepForNumberOrRange().
47 (WebCore::HTMLInputElement::stepDown): Rename applyStepForNumberOrRange().
48 (WebCore::HTMLInputElement::setValueAsDate): Use setDateValue().
49 (WebCore::HTMLInputElement::setDateValue):
50 A helper function to make the best representation of DateComponents.
51 (WebCore::HTMLInputElement::setValueAsNumber): Use setDateValue().
52 * html/HTMLInputElement.h:
54 2010-02-10 Oliver Hunt <oliver@apple.com>
56 Reviewed by Gavin Barraclough.
58 postMessage does not send ImageData
59 https://bugs.webkit.org/show_bug.cgi?id=34825
61 Implement serialisation of ImageData, and for testing reasons
62 expose the ImageData constructor (which should already have
65 * bindings/js/SerializedScriptValue.cpp:
66 (WebCore::SerializedImageData::create):
67 (WebCore::SerializedImageData::width):
68 (WebCore::SerializedImageData::height):
69 (WebCore::SerializedImageData::data):
70 (WebCore::SerializedImageData::SerializedImageData):
71 (WebCore::SerializedScriptValueData::SerializedScriptValueData):
72 (WebCore::SharedSerializedData::asImageData):
73 (WebCore::SerializingTreeWalker::convertIfTerminal):
74 (WebCore::DeserializingTreeWalker::convertIfTerminal):
75 (WebCore::TeardownTreeWalker::convertIfTerminal):
76 * bindings/js/SerializedScriptValue.h:
77 (WebCore::SerializedScriptValueData::):
78 (WebCore::SerializedScriptValueData::asImageData):
79 * html/canvas/CanvasPixelArray.h:
80 (WebCore::CanvasPixelArray::data):
83 2010-02-10 Adam Barth <abarth@webkit.org>
85 Reviewed by Darin Adler.
87 Address last round of review comments on r53607
88 https://bugs.webkit.org/show_bug.cgi?id=33940
90 Mostly renaming and cleaning up.
92 * css/CSSImportRule.cpp:
93 (WebCore::CSSImportRule::insertedIntoParent):
94 * css/CSSStyleSheet.h:
95 (WebCore::CSSStyleSheet::create):
96 (WebCore::CSSStyleSheet::createInline):
98 (WebCore::StyleBase::baseURL):
100 (WebCore::StyleSheet::StyleSheet):
102 (WebCore::StyleSheet::href):
103 (WebCore::StyleSheet::setFinalURL):
104 (WebCore::StyleSheet::finalURL):
106 (WebCore::Document::updateBaseURL):
107 * dom/ProcessingInstruction.cpp:
108 (WebCore::ProcessingInstruction::checkStyleSheet):
109 * xml/XSLImportRule.cpp:
110 (WebCore::XSLImportRule::loadSheet):
111 * xml/XSLStyleSheet.h:
112 (WebCore::XSLStyleSheet::create):
113 (WebCore::XSLStyleSheet::createInline):
114 * xml/XSLStyleSheetLibxslt.cpp:
115 (WebCore::XSLStyleSheet::XSLStyleSheet):
116 (WebCore::XSLStyleSheet::parseString):
117 (WebCore::XSLStyleSheet::loadChildSheets):
118 * xml/XSLStyleSheetQt.cpp:
119 (WebCore::XSLStyleSheet::XSLStyleSheet):
121 2010-02-10 Noam Rosenthal <noam.rosenthal@nokia.com>
123 Reviewed by Ariya Hidayat.
125 [Qt] GraphicsLayer: somtimes the item flickers at the end of an animation
126 This is because we try to delete the animation when finished: that is
127 unnecessary. WebCore manages the animation's lifecycle and makes sure
128 to call the right function when the animation can be deleted.
130 https://bugs.webkit.org/show_bug.cgi?id=34761
134 * platform/graphics/qt/GraphicsLayerQt.cpp:
135 (WebCore::GraphicsLayerQt::addAnimation): No need to delete here
136 (WebCore::GraphicsLayerQt::removeAnimationsForProperty): deleteLater
138 2010-02-10 Kevin Ollivier <kevino@theolliviers.com>
140 [wx] Build fix for wxMac/Cocoa.
142 * platform/wx/wxcode/mac/carbon/fontprops.cpp: Removed.
143 * platform/wx/wxcode/mac/carbon/fontprops.mm: Copied from WebCore/platform/wx/wxcode/mac/carbon/fontprops.cpp.
146 2010-02-10 Jon Honeycutt <jhoneycutt@apple.com>
148 REGRESSION(24929): PDF page doesn't load in background tab
150 Reviewed by Dan Bernstein.
152 * plugins/PluginView.cpp:
153 (WebCore::PluginView::startOrAddToUnstartedList):
154 Only delay loading of the plug-in if we'll kick off our own load of the
155 plug-in data later, in start().
157 2010-02-10 Enrica Casucci <enrica@apple.com>
159 Reviewed by Simon Fraser.
161 Crash in WebKit!WebCore::RenderTextControlSingleLine::createInnerTextStyle doing anything in Safari after sitting on a page with 3D site
162 <rdar://problem/7557201>
163 https://bugs.webkit.org/show_bug.cgi?id=34823
165 No tests added because the code is exercised by the existing tests.
167 The root cause was the fact that we were not releasing a reference that was held by CA.
168 In debug builds we had an assert in the destructor of WKCACFLayer.
170 * platform/graphics/win/GraphicsLayerCACF.cpp:
171 (WebCore::GraphicsLayerCACF::~GraphicsLayerCACF):
173 2010-02-10 Kwang Yul Seo <skyul@company100.net>
175 Reviewed by Eric Seidel.
177 [BREWMP] Typedef DragImageRef
178 https://bugs.webkit.org/show_bug.cgi?id=34791
180 Use IImage* as it is the BREW's image type.
182 * platform/DragImage.h:
184 2010-02-10 Beth Dakin <bdakin@apple.com>
186 Reviewed by Simon Fraser and Darin Adler.
188 Fix for https://bugs.webkit.org/show_bug.cgi?id=34185 REGRESSION:
189 Mask not invalidating
191 SVGMaskElement is the only class that keeps a HashMap of canvas
192 resources rather than just a pointer to a resource. This
193 patch makes SVGMaskElement invalidate all of its resources in the
194 HashMap instead of just one.
196 * svg/SVGMaskElement.cpp:
197 (WebCore::SVGMaskElement::svgAttributeChanged):
198 (WebCore::SVGMaskElement::childrenChanged):
199 (WebCore::SVGMaskElement::invalidateCanvasResources):
200 * svg/SVGMaskElement.h:
201 * svg/SVGStyledElement.cpp:
202 (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain):
203 (WebCore::SVGStyledElement::invalidateCanvasResources):
204 * svg/SVGStyledElement.h:
206 2010-02-10 Stephan Aßmus <superstippi@gmx.de>
208 Reviewed by David Levin.
210 Fixes to rect conversion and image rendering on Haiku
211 https://bugs.webkit.org/show_bug.cgi?id=34684
213 Covered by existing tests.
215 The changes to the rect conversions are indeed correct. In Haiku (to stay
216 compatibly with BeOS), a BRect specifies the left/top and bottom/right pixel
217 *indices*, even though the values are floating point. So a rectangle covering
218 just one pixel would be specified as BRect(0, 0, 0, 0). In WebCore and other
219 frame works, such rectangles would be expressed as 0, 0, 1, 1. In WebCore, the
220 width and height of rectangles refer to the distance between pixels, while on
221 Haiku, a one pixel rect has indeed a width and height of 0, as confusing as
224 The part of the patch that affects
225 WebCore/platform/graphics/haiku/ImageHaiku.cpp also implements the drawing
226 methods more correctly. Image observers are notified, and pattern drawing takes
227 the "phase" into account which makes scrolled backgrounds render correctly.
228 Transformations are still not supported, since the Haiku drawing backend itself
229 does not yet support them.
231 Use OwnPtr when creating the BBitmap to avoid future leaks with early returns.
233 Convert the bitmap data to non pre-multiplied until Haiku supports drawing
234 pre-multiplied bitmaps.
236 * platform/graphics/haiku/FloatRectHaiku.cpp: Fixed conversion
237 * platform/graphics/haiku/ImageHaiku.cpp:
238 (WebCore::BitmapImage::draw): Fixed placement, notify observers
239 (WebCore::Image::drawPattern): Implemented using "phase" to fix scrolling, notify observers
240 * platform/graphics/haiku/IntRectHaiku.cpp: Fixed conversion
241 * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Fixed conversion
243 2010-02-10 Simon Fraser <simon.fraser@apple.com>
245 Reviewed by David Levin.
247 Clean up unused member var and initialization in Document
248 https://bugs.webkit.org/show_bug.cgi?id=34820
250 Remove unused m_secureForms member variable in Document.
253 (WebCore::Document::Document):
256 2010-02-10 Kevin Watters <kevinwatters@gmail.com>
258 Reviewed by Kevin Ollivier.
260 [wx] Add Windows complex text support and Mac support for containsCharacters.
262 https://bugs.webkit.org/show_bug.cgi?id=34759
264 * platform/graphics/SimpleFontData.h:
265 * platform/graphics/wx/FontPlatformData.h:
266 (WebCore::FontPlatformData::roundsGlyphAdvances):
267 * platform/graphics/wx/FontPlatformDataWx.cpp:
268 (WebCore::FontPlatformData::useGDI):
269 (WebCore::FontPlatformData::hfont):
270 * platform/graphics/wx/FontWx.cpp:
271 (WebCore::Font::canReturnFallbackFontsForComplexText):
272 (WebCore::Font::selectionRectForComplexText):
273 (WebCore::Font::drawComplexText):
274 (WebCore::Font::floatWidthForComplexText):
275 (WebCore::Font::offsetForPositionForComplexText):
276 * platform/graphics/wx/SimpleFontDataWx.cpp:
277 (WebCore::SimpleFontData::platformInit):
278 (WebCore::SimpleFontData::platformDestroy):
279 (WebCore::SimpleFontData::containsCharacters):
280 (WebCore::SimpleFontData::platformWidthForGlyph):
281 (WebCore::SimpleFontData::scriptFontProperties):
282 (WebCore::SimpleFontData::initGDIFont):
283 (WebCore::SimpleFontData::platformCommonDestroy):
284 (WebCore::SimpleFontData::widthForGDIGlyph):
285 * platform/wx/wxcode/fontprops.h:
286 * platform/wx/wxcode/gtk/fontprops.cpp:
287 (wxFontContainsCharacters):
288 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
289 (wxFontContainsCharacters):
290 * platform/wx/wxcode/win/fontprops.cpp:
291 (wxFontContainsCharacters):
292 * platform/wx/wxcode/win/non-kerned-drawing.cpp:
293 (WebCore::drawTextWithSpacing):
296 2010-02-10 Kwang Yul Seo <skyul@company100.net>
297 Reviewed by Eric Seidel.
299 [BREWMP] Add dummy Frame::dragImageForSelection
300 https://bugs.webkit.org/show_bug.cgi?id=34792
302 Add FrameBrew.cpp which contains a dummy implementation of
303 Frame::dragImageForSelection.
305 * page/brew/FrameBrew.cpp: Added.
306 (WebCore::Frame::dragImageForSelection):
308 2010-02-10 Kevin Ollivier <kevino@theolliviers.com>
310 [wx] Build fix. Switch drawPattern to Image class like other platforms.
312 * platform/graphics/BitmapImage.h:
313 * platform/graphics/wx/ImageWx.cpp:
314 (WebCore::Image::drawPattern):
316 2010-02-10 Chris Marrin <cmarrin@apple.com>
318 Reviewed by Darin Adler.
320 Added CA_PRINT_TREE functionality to WKCACFLayer implementation
321 https://bugs.webkit.org/show_bug.cgi?id=34779
323 I've tried to duplicate the look of the output on Mac, but
324 it's not quite the same. It shows all the useful information though.
325 It is enabled by setting the environment variable CA_PRINT_TREE=1
327 * platform/graphics/win/WKCACFLayer.cpp:Implementation of printTree
328 (WebCore::WKCACFLayer::isTransformLayer):
329 Moved function to cpp file because it needs to use the function form
330 of kCACFTransformLayer because the DLL is delay loaded, and that function
331 can only be called from the cpp file.
332 (WebCore::WKCACFLayer::sublayerAtIndex):
333 (WebCore::printIndent):
334 (WebCore::printTransform):
335 (WebCore::WKCACFLayer::printTree):Prints from this layer down
336 (WebCore::WKCACFLayer::printLayer):Prints this layer and recursively calls sublayers
337 * platform/graphics/win/WKCACFLayer.h:
338 * platform/graphics/win/WKCACFLayerRenderer.cpp:
339 (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
340 (WebCore::WKCACFLayerRenderer::createRenderer):Adds a name to the root layers
341 (WebCore::WKCACFLayerRenderer::render):Calls printTree when CA_PRINT_TREE is 1
342 * platform/graphics/win/WKCACFLayerRenderer.h:
344 2010-02-10 Nate Chapin <japhet@chromium.org>
346 Reviewed by Adam Barth.
348 Change V8DOMWrapper::lookupDOMWrapper() and configureTemplate()
349 to not use V8ClassIndex.
351 https://bugs.webkit.org/show_bug.cgi?id=34768
353 * bindings/scripts/CodeGeneratorV8.pm:
354 * bindings/v8/V8Binding.cpp:
355 * bindings/v8/V8Binding.h:
356 * bindings/v8/V8DOMWindowShell.cpp:
357 * bindings/v8/V8DOMWrapper.cpp:
358 * bindings/v8/V8DOMWrapper.h:
359 * bindings/v8/V8Proxy.cpp:
360 * bindings/v8/WorkerContextExecutionProxy.cpp:
361 * bindings/v8/custom/V8DOMWindowCustom.cpp:
362 * bindings/v8/custom/V8LocationCustom.cpp:
363 * bindings/v8/custom/V8MessageEventCustom.cpp:
365 2010-02-10 Nate Chapin <japhet@chromium.org>
367 Reviewed by Dimitri Glazkov.
369 [V8] Handle the possibility that ScheduledAction::execute() may
370 retrieve a null V8Proxy* even if not in a WorkerContext (e.g., if
373 * bindings/v8/ScheduledAction.cpp:
374 (WebCore::ScheduledAction::execute):
376 2010-02-10 Kenneth Russell <kbr@google.com>
378 Reviewed by Oliver Hunt.
380 Remove automatic viewport resizing
381 https://bugs.webkit.org/show_bug.cgi?id=34766
383 Removed automatic viewport resizing per conclusions on the WebGL
384 mailing list. Added test verifying new behavior and updated a
385 couple of previous tests failing after this change.
387 Test: fast/canvas/webgl/viewport-unchanged-upon-resize.html
389 * platform/graphics/mac/GraphicsContext3DMac.cpp:
390 (WebCore::GraphicsContext3D::reshape):
392 2010-02-10 Ariya Hidayat <ariya.hidayat@gmail.com>
394 Reviewed by Kenneth Rohde Christiansen.
396 [Qt] Implement image interpolation quality.
398 https://bugs.webkit.org/show_bug.cgi?id=34629
400 * platform/graphics/qt/GraphicsContextQt.cpp:
401 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
402 (WebCore::GraphicsContext::setImageInterpolationQuality):
403 (WebCore::GraphicsContext::imageInterpolationQuality):
405 2010-02-10 Eric Seidel <eric@webkit.org>
407 No review, Mac build fix.
409 Crash in Flash at http://www.cctv.com/
410 https://bugs.webkit.org/show_bug.cgi?id=34673
412 * plugins/PluginViewNone.cpp:
413 (WebCore::PluginView::getValueStatic):
415 2010-02-10 Gustavo Noronha Silva <gns@gnome.org>
417 Reviewed by Xan Lopez.
419 [GTK] Hits assertion on history back, with page cache enabled, in specific conditions
420 https://bugs.webkit.org/show_bug.cgi?id=34773
422 When unsetting the adjustments from a ScrollView, also disconnect
423 them from the Scrollbars.
425 Test: fast/frames/frame-crash-with-page-cache.html
427 * platform/gtk/ScrollViewGtk.cpp:
428 (WebCore::ScrollView::setGtkAdjustments):
429 * platform/gtk/ScrollbarGtk.cpp:
430 (ScrollbarGtk::~ScrollbarGtk):
431 (ScrollbarGtk::detachAdjustment):
432 * platform/gtk/ScrollbarGtk.h:
434 2010-02-09 Alexey Proskuryakov <ap@apple.com>
436 Reviewed by Geoffrey Garen.
438 https://bugs.webkit.org/show_bug.cgi?id=34490
439 WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions
441 Test: fast/images/destroyed-image-load-event.html
443 * ForwardingHeaders/wtf/ValueCheck.h: Added.
445 * loader/ImageLoader.cpp:
446 (WTF::ValueCheck): Special case value check for ImageLoader - it's allocated inside elements,
447 so check the owner instead.
448 (WebCore::ImageEventSender::hasPendingEvents): Added a debugging aid for ImageLoader destructor.
449 (WebCore::ImageLoader::~ImageLoader): Assert that we're not going to leave dangling pointers
451 (WebCore::ImageLoader::setImage): Cancel events that could be dispatched for the previous
452 image. The only client using this method that I could find was DeleteButton, which doesn't
453 care about load events for the new image, so I didn't add any code for firing those.
454 (WebCore::ImageLoader::setLoadingImage): This method only existed to confuse readers -
455 there wasn't any meaningful code shared (callers just undid most assignments made there).
456 Merged the logic into callers.
457 (WebCore::ImageLoader::updateFromElement): We're forgetting the old image, so forget its
459 (WebCore::ImageLoader::notifyFinished): This can be called from setImage(), in which case
460 no one is going to dispatch the event "soon". So, don't queue it.
461 (WebCore::ImageEventSender::dispatchPendingEvents): Call checkConsistency(). This didn't
462 help catch this particuar bug, but seems like a useful check anyway.
464 * loader/ImageLoader.h: Removed setLoadingImage().
466 2010-02-10 Jon Honeycutt <jhoneycutt@apple.com>
468 Mac build fix. Unreviewed.
470 * WebCore.xcodeproj/project.pbxproj:
471 Add PluginViewNone.cpp to the Mac project.
473 2010-02-10 Adam Roben <aroben@apple.com>
475 Optimize ImageBuffer::toDataURL's CG implementation
477 There was some unused code that could have been removed in r31830 when
478 this function was changed not to flip the CG image anymore.
480 Fixes <http://webkit.org/b/34808> ImageBuffer::toDataURL allocates
481 unnecessary memory under CoreGraphics
483 Reviewed by Sam Weinig.
485 * platform/graphics/cg/ImageBufferCG.cpp:
486 (WebCore::ImageBuffer::toDataURL): Don't allocate an unused CGImageRef
487 and buffer, and switch to the new overload of base64Encode that
488 doesn't require us to copy all the image data into a Vector first.
490 * platform/text/Base64.cpp:
491 (WebCore::base64Encode):
492 * platform/text/Base64.h:
493 Added an overload that takes a raw data pointer and length, just like
494 we have for base64Decode. The overload that takes a Vector as input
495 just calls through to the new overload.
497 2010-02-10 Dan Bernstein <mitz@apple.com>
499 Reviewed by Dave Hyatt.
501 Complete the fix for <rdar://problem/7577604> Drag and Drop: background elements are bleeding through
502 https://bugs.webkit.org/show_bug.cgi?id=34546
504 * manual-tests/drag-image-table-part-decorations.html:
505 * rendering/RenderTableCell.cpp:
506 (WebCore::RenderTableCell::paint): Don’t paint collapsed borders if this object shouldn’t
507 paint within the current painting root.
509 2010-02-08 Jon Honeycutt <jhoneycutt@apple.com>
511 <rdar://problem/7436875> Crash in Flash when visiting
512 http://www.cctv.com/default.shtml (WER ID 819298200) [watson 2502260]
514 Reviewed by Darin Adler.
516 Test: platform/win/plugins/plugin-delayed-destroy.html
518 * bridge/NP_jsobject.cpp:
520 If Flash calls this to evaluate a script that destroys the PluginView,
521 we crash when returning to Flash code. Before evaluating the script,
522 call PluginView::keepAlive() to hold a ref to this instance (and release
525 * plugins/PluginView.cpp:
526 (WebCore::instanceMap):
527 Return a map from the NPP to the PluginView.
528 (WebCore::PluginView::~PluginView):
529 Assert that the keep alive timer is not running; remove ourselves from
531 (WebCore::PluginView::performRequest):
532 The parent Frame is now a RefPtr; use .get().
533 (WebCore::PluginView::status):
535 (WebCore::PluginView::didReceiveResponse):
537 (WebCore::PluginView::PluginView):
538 Add the view to the instance map.
539 (WebCore::PluginView::lifeSupportTimerFired):
540 Deref the PluginView.
541 (WebCore::PluginView::keepAlive):
542 Ref the PluginView, then start a time to release the reference
544 (WebCore::PluginView::keepAlive):
545 Find the PluginView in the map, and call its keepAlive() function.
547 * plugins/PluginView.h:
548 Made m_parentFrame a RefPtr, so that it will remain valid when the
549 keep alive timer fires.
550 (WebCore::PluginView::parentFrame):
553 * plugins/gtk/PluginViewGtk.cpp:
554 (WebCore::PluginView::updatePluginWidget):
556 (WebCore::PluginView::handleKeyboardEvent):
558 (WebCore::PluginView::handleMouseEvent):
561 * plugins/PluginViewNone.cpp:
562 (WebCore::PluginView::keepAlive):
565 2010-02-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
567 Reviewed by Kenneth Rohde Christiansen.
569 Support frameset flattening
570 https://bugs.webkit.org/show_bug.cgi?id=32717
572 Add support for enabling/disabling FrameSet Flattening on the Mac port.
576 2010-02-10 Jeremy Orlow <jorlow@chromium.org>
578 Revert 54599 because it breaks a lot of tests on Windows Chrome
580 * inspector/front-end/DOMAgent.js:
581 (WebInspector.DOMNode.prototype._insertChild):
582 * inspector/front-end/ElementsPanel.js:
583 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
584 * inspector/front-end/ElementsTreeOutline.js:
585 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
586 (WebInspector.ElementsTreeElement):
587 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
588 (WebInspector.ElementsTreeElement.prototype._updateChildren):
590 * inspector/front-end/inspector.css:
592 2010-02-10 Adam Roben <aroben@apple.com>
594 Fix bad paths in WebCore.vcproj
596 These were harmless in VS2005, but cause project conversion errors in
599 Fixes <http://webkit.org/b/34801>.
601 Reviewed by Dan Bernstein.
603 * WebCore.vcproj/WebCore.vcproj: Removed leading "." from paths to
604 JSHTMLFrameSetElement.{cpp,h}.
606 2010-02-10 Julien Chaffraix <jchaffraix@webkit.org>
608 Not reviewed (build fix).
610 * platform/graphics/win/FontCacheWin.cpp:
611 (WebCore::FontCache::getLastResortFallbackFont): Return a
614 2010-02-10 Julien Chaffraix <jchaffraix@pleyo.com>
616 Reviewed by Eric Seidel.
618 Bug 23287 - Avoid using FontPlatformData outside the FontCache
620 No functional change, only refactored the code using FontPlatformData to use SimpleFontData.
622 This change leaves the class FontCached as it needs some thoughts and more refactoring.
624 * css/CSSFontFaceSource.cpp:
625 (WebCore::CSSFontFaceSource::getFontData): Call getCachedFontData with the 2 parameters directly.
626 * css/CSSFontSelector.cpp:
627 (WebCore::fontDataForGenericFamily): Ditto.
628 * platform/graphics/FontCache.cpp:
629 (WebCore::FontCache::getCachedFontData): This method is meant to replace getCachedFontPlatformData
630 that was moved in the private section of the class. It calls getCachedFontPlatformData and cache
631 the returned FontPlatformData if it is not null.
632 (WebCore::FontCache::getFontData): Updated to use the new getCachedFontData.
633 * platform/graphics/FontCache.h: Updated several methods to return a SimpleFontData in lieu of a
634 FontPlatformData. Moved some method in the private sections.
636 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
637 (WebCore::FontCache::getSimilarFontPlatformData):
638 (WebCore::FontCache::getLastResortFallbackFont):
639 * platform/graphics/chromium/FontCacheLinux.cpp:
640 (WebCore::FontCache::getSimilarFontPlatformData):
641 (WebCore::FontCache::getLastResortFallbackFont):
642 * platform/graphics/gtk/FontCacheGtk.cpp:
643 (WebCore::FontCache::getSimilarFontPlatformData):
644 (WebCore::FontCache::getLastResortFallbackFont):
645 * platform/graphics/haiku/FontCacheHaiku.cpp:
646 (WebCore::FontCache::getSimilarFontPlatformData):
647 (WebCore::FontCache::getLastResortFallbackFont):
648 * platform/graphics/qt/FontCacheQt.cpp:
649 (WebCore::FontCache::getLastResortFallbackFont):
650 * platform/graphics/win/FontCacheWin.cpp:
651 (WebCore::FontCache::getSimilarFontPlatformData):
652 (WebCore::FontCache::getLastResortFallbackFont):
653 * platform/graphics/wince/FontCacheWince.cpp:
654 * platform/graphics/wx/FontCacheWx.cpp:
655 (WebCore::FontCache::getSimilarFontPlatformData):
656 (WebCore::FontCache::getLastResortFallbackFont):
657 Updated all the previous platform methods to return a SimpleFontData.
659 * platform/graphics/mac/FontCacheMac.mm:
660 (WebCore::FontCache::getSimilarFontPlatformData): Updated to return a SimpleFontData.
661 (WebCore::FontCache::getLastResortFallbackFont): Ditto. Also refactored the code
662 and moved a DEFINE_STATIC_LOCAL where it is needed.
664 2010-02-10 Alexander Pavlov <apavlov@chromium.org>
666 Reviewed by Pavel Feldman.
668 Web Inspector: Elements Panel: Limit the number of initially loaded element children
669 https://bugs.webkit.org/show_bug.cgi?id=34421
671 Test: inspector/elements-panel-limited-children.html
673 * English.lproj/localizedStrings.js:
674 * inspector/front-end/DOMAgent.js:
675 (WebInspector.DOMNode.prototype._insertChild):
676 * inspector/front-end/ElementsPanel.js:
677 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
678 * inspector/front-end/ElementsTreeOutline.js:
679 (WebInspector.ElementsTreeOutline.prototype.createTreeElementFor):
680 (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
681 (WebInspector.ElementsTreeElement):
682 (WebInspector.ElementsTreeElement.prototype.get expandedChildrenLimit):
683 (WebInspector.ElementsTreeElement.prototype.set expandedChildrenLimit):
684 (WebInspector.ElementsTreeElement.prototype.get expandedChildCount):
685 (WebInspector.ElementsTreeElement.prototype.showChild):
686 (WebInspector.ElementsTreeElement.prototype.insertChildElement):
687 (WebInspector.ElementsTreeElement.prototype.moveChild):
688 (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
689 (WebInspector.ElementsTreeElement.prototype._updateChildren):
690 (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange):
691 (WebInspector.ElementsTreeElement.prototype.handleLoadAllChildren):
693 * inspector/front-end/inspector.css:
695 2010-02-10 Mikhail Naganov <mnaganov@chromium.org>
697 Reviewed by Pavel Feldman.
699 Remove several #if USE(JSC) branches. Introduce ScriptDebugServer class for
700 making JavaScriptDebugServer engine-agnostic.
702 https://bugs.webkit.org/show_bug.cgi?id=34795
707 * WebCore.xcodeproj/project.pbxproj:
708 * bindings/js/JSBindingsAllInOne.cpp:
709 * bindings/js/ScriptDebugServer.cpp: Added.
710 (WebCore::ScriptDebugServer::recompileAllJSFunctions):
711 (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon):
712 * bindings/js/ScriptDebugServer.h: Added.
713 * bindings/v8/ScriptDebugServer.cpp: Added.
714 (WebCore::ScriptDebugServer::recompileAllJSFunctions):
715 (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon):
716 * bindings/v8/ScriptDebugServer.h: Added.
717 * inspector/InspectorController.cpp:
718 (WebCore::InspectorController::startUserInitiatedProfiling):
719 (WebCore::InspectorController::enableProfiler):
720 (WebCore::InspectorController::disableProfiler):
722 (WebCore::Console::profile):
723 (WebCore::Console::profileEnd):
725 2009-10-06 Yongjun Zhang <yongjun.zhang@nokia.com>
727 Reviewed by Simon Hausmann.
729 Make JObjectWrapper::ref() and deref() public accessible to derefIfNull().
731 Will be reverted when the following winscw compiler bug is fixed.
732 https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812
734 https://bugs.webkit.org/show_bug.cgi?id=28054
736 * bridge/jni/jsc/JavaInstanceJSC.h:
737 * bridge/jni/v8/JavaInstanceV8.h:
739 2010-02-10 Yaar Schnitman <yaar@chromium.org>
741 Reviewed by Adam Barth.
743 Simplified RuntimeEnabledFeatures and corresponding v8 generated code
744 https://bugs.webkit.org/show_bug.cgi?id=34667
747 * bindings/generic/RuntimeEnabledFeatures.cpp: Added.
748 (WebCore::RuntimeEnabledFeatures::audioEnabled):
749 (WebCore::RuntimeEnabledFeatures::htmlMediaElementEnabled):
750 (WebCore::RuntimeEnabledFeatures::htmlAudioElementEnabled):
751 (WebCore::RuntimeEnabledFeatures::htmlVideoElementEnabled):
752 (WebCore::RuntimeEnabledFeatures::mediaErrorEnabled):
753 (WebCore::RuntimeEnabledFeatures::sharedWorkerEnabled):
754 (WebCore::RuntimeEnabledFeatures::webSocketEnabled):
755 (WebCore::RuntimeEnabledFeatures::openDatabaseEnabled):
756 * bindings/generic/RuntimeEnabledFeatures.h: Added.
757 (WebCore::RuntimeEnabledFeatures::setLocalStorageEnabled):
758 (WebCore::RuntimeEnabledFeatures::localStorageEnabled):
759 (WebCore::RuntimeEnabledFeatures::setSessionStorageEnabled):
760 (WebCore::RuntimeEnabledFeatures::sessionStorageEnabled):
761 (WebCore::RuntimeEnabledFeatures::setWebkitNotificationsEnabled):
762 (WebCore::RuntimeEnabledFeatures::webkitNotificationsEnabled):
763 (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled):
764 (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled):
765 (WebCore::RuntimeEnabledFeatures::setGeolocationEnabled):
766 (WebCore::RuntimeEnabledFeatures::geolocationEnabled):
767 (WebCore::RuntimeEnabledFeatures::setIndexedDBEnabled):
768 (WebCore::RuntimeEnabledFeatures::indexedDBEnabled):
769 (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
770 * bindings/scripts/CodeGenerator.pm:
771 * bindings/scripts/CodeGeneratorV8.pm:
772 * bindings/v8/RuntimeEnabledFeatures.cpp: Removed.
773 * bindings/v8/RuntimeEnabledFeatures.h: Removed.
774 * bindings/v8/custom/V8DOMWindowCustom.cpp:
775 * bindings/v8/custom/V8NavigatorCustom.cpp:
776 * bindings/v8/custom/V8WorkerContextCustom.cpp:
778 2010-02-09 Alexander Pavlov <apavlov@chromium.org>
780 Reviewed by Pavel Feldman.
782 Web Inspector: Add two basic categories for the Audits panel
783 https://bugs.webkit.org/show_bug.cgi?id=32930
786 * WebCore.vcproj/WebCore.vcproj:
787 * inspector/front-end/AuditCategories.js: Added.
788 (WebInspector.AuditCategories.PagePerformance):
789 (WebInspector.AuditCategories.PagePerformance.prototype.initialize):
790 (WebInspector.AuditCategories.NetworkUtilization):
791 (WebInspector.AuditCategories.NetworkUtilization.prototype.initialize):
792 * inspector/front-end/AuditLauncherView.js:
793 (WebInspector.AuditLauncherView.prototype.updateResourceTrackingState):
794 (WebInspector.AuditLauncherView.prototype._createLauncherUI):
795 (WebInspector.AuditLauncherView.prototype.show):
796 * inspector/front-end/AuditRules.js: Added.
797 (WebInspector.AuditRules.arrayAsUL):
798 (WebInspector.AuditRules.getDomainToResourcesMap):
799 (WebInspector.AuditRules.evaluateInTargetWindow):
800 (WebInspector.AuditRules.GzipRule):
801 (WebInspector.AuditRules.GzipRule.prototype.doRun):
802 (WebInspector.AuditRules.GzipRule.prototype._isCompressed):
803 (WebInspector.AuditRules.GzipRule.prototype._shouldCompress):
804 (WebInspector.AuditRules.CombineExternalResourcesRule):
805 (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
806 (WebInspector.AuditRules.CombineJsResourcesRule):
807 (WebInspector.AuditRules.CombineCssResourcesRule):
808 (WebInspector.AuditRules.MinimizeDnsLookupsRule):
809 (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
810 (WebInspector.AuditRules.ParallelizeDownloadRule):
811 (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun):
812 (WebInspector.AuditRules.UnusedCssRule):
813 (WebInspector.AuditRules.UnusedCssRule.prototype._getUnusedStylesheetRatioMessage):
814 (WebInspector.AuditRules.UnusedCssRule.prototype._getUnusedTotalRatioMessage):
815 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
816 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.routine):
817 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
818 (WebInspector.AuditRules.CacheControlRule):
819 (WebInspector.AuditRules.CacheControlRule.prototype.InfoCheck.1.FailCheck.0.WarningCheck.1.SevereCheck.2.doRun):
820 (WebInspector.AuditRules.CacheControlRule.prototype.handleNonCacheableResources):
821 (WebInspector.AuditRules.CacheControlRule.prototype._cacheableAndNonCacheableResources):
822 (WebInspector.AuditRules.CacheControlRule.prototype.execCheck):
823 (WebInspector.AuditRules.CacheControlRule.prototype.freshnessLifetimeGreaterThan):
824 (WebInspector.AuditRules.CacheControlRule.prototype.responseHeader):
825 (WebInspector.AuditRules.CacheControlRule.prototype.hasResponseHeader):
826 (WebInspector.AuditRules.CacheControlRule.prototype.isCompressible):
827 (WebInspector.AuditRules.CacheControlRule.prototype.isPubliclyCacheable):
828 (WebInspector.AuditRules.CacheControlRule.prototype.responseHeaderMatch):
829 (WebInspector.AuditRules.CacheControlRule.prototype.hasExplicitExpiration):
830 (WebInspector.AuditRules.CacheControlRule.prototype._isExplicitlyNonCacheable):
831 (WebInspector.AuditRules.CacheControlRule.prototype.isCacheableResource):
832 (WebInspector.AuditRules.BrowserCacheControlRule):
833 (WebInspector.AuditRules.BrowserCacheControlRule.prototype.handleNonCacheableResources):
834 (WebInspector.AuditRules.BrowserCacheControlRule.prototype.runChecks):
835 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._missingExpirationCheck):
836 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._varyCheck):
837 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._oneMonthExpirationCheck):
838 (WebInspector.AuditRules.BrowserCacheControlRule.prototype._oneYearExpirationCheck):
839 (WebInspector.AuditRules.ProxyCacheControlRule):
840 (WebInspector.AuditRules.ProxyCacheControlRule.prototype.runChecks):
841 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._questionMarkCheck):
842 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._publicCachingCheck):
843 (WebInspector.AuditRules.ProxyCacheControlRule.prototype._setCookieCacheableCheck):
844 (WebInspector.AuditRules.ImageDimensionsRule):
845 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
846 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasDimension):
847 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasWidth):
848 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine.hasHeight):
849 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.routine):
850 (WebInspector.AuditRules.CssInHeadRule):
851 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
852 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.routine.allViews):
853 (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.routine):
854 (WebInspector.AuditRules.StylesScriptsOrderRule):
855 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
856 (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.routine):
857 (WebInspector.AuditRules.CookieRuleBase):
858 (WebInspector.AuditRules.CookieRuleBase.prototype.doRun.resultCallback):
859 (WebInspector.AuditRules.CookieRuleBase.prototype.doRun):
860 (WebInspector.AuditRules.CookieRuleBase.prototype.mapResourceCookies):
861 (WebInspector.AuditRules.CookieRuleBase.prototype._callbackForResourceCookiePairs):
862 (WebInspector.AuditRules.CookieSizeRule):
863 (WebInspector.AuditRules.CookieSizeRule.prototype._average):
864 (WebInspector.AuditRules.CookieSizeRule.prototype._max):
865 (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
866 (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies.avgSizeSorter):
867 (WebInspector.AuditRules.StaticCookielessRule):
868 (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):
869 (WebInspector.AuditRules.StaticCookielessRule.prototype._collectorCallback):
870 * inspector/front-end/AuditsPanel.js:
871 (WebInspector.AuditsPanel.prototype._constructCategories):
872 (WebInspector.AuditsPanel.prototype._reloadResources):
873 (WebInspector.AuditsPanel.prototype.show):
874 (WebInspector.AuditsPanel.prototype._updateLauncherViewControls):
875 (WebInspector.AuditCategory):
876 (WebInspector.AuditCategory.prototype.get id):
877 (WebInspector.AuditCategory.prototype.get ruleCount):
878 (WebInspector.AuditCategory.prototype.runRules):
879 (WebInspector.AuditCategory.prototype._ensureInitialized):
880 (WebInspector.AuditCategoryResult):
881 * inspector/front-end/WebKit.qrc:
882 * inspector/front-end/audits.css:
883 * inspector/front-end/inspector.html:
884 * inspector/front-end/inspector.js:
885 (WebInspector.loaded):
886 (WebInspector.addPanelToolbarIcon):
887 (WebInspector.documentKeyDown):
889 2010-02-10 Adam Barth <abarth@webkit.org>
891 Reviewed by Darin Adler.
893 Freeze sandbox attributes on creation
894 https://bugs.webkit.org/show_bug.cgi?id=34184
896 This is how the spec works now.
898 Test: fast/frames/sandboxed-iframe-forms-dynamic.html
900 * bindings/ScriptControllerBase.cpp:
901 (WebCore::ScriptController::canExecuteScripts):
902 * bindings/generic/BindingDOMWindow.h:
903 (WebCore::::createWindow):
904 * bindings/js/JSDOMWindowCustom.cpp:
905 (WebCore::createWindow):
908 * loader/FrameLoader.cpp:
909 (WebCore::FrameLoader::submitForm):
910 (WebCore::FrameLoader::requestObject):
911 (WebCore::FrameLoader::shouldAllowNavigation):
912 (WebCore::FrameLoader::updateSandboxFlags):
913 * page/SecurityOrigin.cpp:
914 * page/SecurityOrigin.h:
916 2010-02-09 Ariya Hidayat <ariya.hidayat@gmail.com>
918 Rubber-stamped by Kenneth Rohde Christiansen.
920 [Qt] Remove old, outdated unused code block.
922 * platform/graphics/qt/GraphicsContextQt.cpp:
924 2010-02-09 Chris Guillory <ctguil@google.com>
926 Reviewed by Darin Fisher.
928 [Chromium] Notify ChromeClientChromium of state change notifications.
930 https://bugs.webkit.org/show_bug.cgi?id=34464
932 * accessibility/chromium/AXObjectCacheChromium.cpp:
933 (WebCore::toChromeClientChromium):
934 (WebCore::AXObjectCache::postPlatformNotification):
935 * page/chromium/ChromeClientChromium.h:
937 2010-02-09 Kwang Yul Seo <skyul@company100.net>
939 Reviewed by Adam Barth.
941 [BREWMP] Port PlatformMouseEvent
942 https://bugs.webkit.org/show_bug.cgi?id=34600
944 Retrieve the event type, position, key modifiers, time stamp
945 and click count from AEEEvent.
947 * platform/PlatformMouseEvent.h:
948 * platform/brew/PlatformMouseEventBrew.cpp: Added.
949 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
951 2010-02-09 Avi Drissman <avi@chromium.org>
953 Reviewed by Timothy Hatcher.
955 [Chromium] RenderTheme does not draw focus rings on SL for checkboxes, radio buttons
956 https://bugs.webkit.org/show_bug.cgi?id=34544
958 Covered by layout tests when run on SL.
960 * platform/chromium/ThemeChromiumMac.mm:
961 (-[TCMVisibleView _focusRingVisibleRect]):
962 (-[TCMVisibleView _focusRingClipAncestor]):
963 (FocusIndicationFix::currentOSHasSetFocusRingStyleInBitmapBug):
964 (FocusIndicationFix::swizzleFocusView):
965 (FocusIndicationFix::ScopedFixer::ScopedFixer):
966 (FocusIndicationFix::ScopedFixer::~ScopedFixer):
967 (+[NSView TCMInterposing_focusView]):
968 (WebCore::paintCheckbox):
969 (WebCore::paintRadio):
970 (WebCore::paintButton):
972 2010-02-09 Anton Muhin <antonm@chromium.org>
974 Reviewed by Nate Chapin.
976 [v8] Check if returned wrapper is empty before operating on it.
977 https://bugs.webkit.org/show_bug.cgi?id=34746
979 * bindings/v8/custom/V8DocumentCustom.cpp:
981 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
983 * bindings/v8/custom/V8SVGDocumentCustom.cpp:
986 2010-02-09 Mikhail Naganov <mnaganov@chromium.org>
988 Reviewed by Pavel Feldman.
990 Continuing debugger and profiler unforking: narrow scope of JSC-specific ifdefs.
991 Also, enable JAVASCRIPT_DEBUGGER explicitly in features, it appears to be required
992 for really enabling it in V8 bindings generation.
994 https://bugs.webkit.org/show_bug.cgi?id=34706
996 * inspector/InjectedScriptHost.idl:
997 * inspector/InspectorBackend.cpp:
998 (WebCore::InspectorBackend::currentCallFrame):
999 (WebCore::InspectorBackend::getProfile):
1000 * inspector/InspectorBackend.h:
1001 * inspector/InspectorBackend.idl:
1002 * inspector/InspectorController.cpp:
1003 (WebCore::InspectorController::InspectorController):
1004 (WebCore::InspectorController::addProfile):
1005 (WebCore::InspectorController::getProfile):
1006 (WebCore::InspectorController::startUserInitiatedProfiling):
1007 (WebCore::InspectorController::stopUserInitiatedProfiling):
1008 (WebCore::InspectorController::enableProfiler):
1009 (WebCore::InspectorController::disableProfiler):
1010 * inspector/InspectorController.h:
1011 * inspector/InspectorFrontend.cpp:
1012 (WebCore::InspectorFrontend::pausedScript):
1013 (WebCore::InspectorFrontend::resumedScript):
1014 (WebCore::InspectorFrontend::profilerWasEnabled):
1015 (WebCore::InspectorFrontend::profilerWasDisabled):
1016 (WebCore::InspectorFrontend::didGetProfile):
1017 * inspector/InspectorFrontend.h:
1020 2010-02-09 Gavin Barraclough <barraclough@apple.com>
1022 Rubber Stamped by Geoff Garen.
1024 Rename StringBuilder::release && JSStringBuilder::releaseJSString
1027 * bindings/js/ScriptString.h:
1028 (WebCore::ScriptString::operator+=):
1030 2010-02-09 Dan Bernstein <mitz@apple.com>
1032 Reviewed by Anders Carlsson.
1034 <rdar://problem/7400160> Netscape plug-ins are not instantiated on property access if there are pending stylesheets
1035 https://bugs.webkit.org/show_bug.cgi?id=34776
1037 Tests: plugins/instance-available-before-stylesheets-loaded-object.html
1038 plugins/instance-available-before-stylesheets-loaded.html
1040 * html/HTMLEmbedElement.cpp:
1041 (WebCore::HTMLEmbedElement::renderWidgetForJSBindings): Call
1042 updateLayoutIgnorePendingStylesheets() before checking for a renderer.
1043 * html/HTMLObjectElement.cpp:
1044 (WebCore::HTMLObjectElement::renderWidgetForJSBindings): Ditto.
1046 2010-02-09 Alejandro G. Castro <alex@igalia.com>
1048 Reviewed by Darin Adler.
1050 Problems navigating by caret in links whose text wraps onto
1052 https://bugs.webkit.org/show_bug.cgi?id=25676
1054 We should not search ahead if we are not in the last element.
1058 2010-02-09 Dirk Schulze <krit@webkit.org>
1060 Reviewed by Nikolas Zimmermann.
1062 More optimization for AffineTransform with SVG
1063 https://bugs.webkit.org/show_bug.cgi?id=34774
1065 Some optimizations to safe unnecessary summations and multiplications.
1066 Optimize AffineTransform to handle an identity or translation matrix
1068 Added translationRight to avoid multiplications of matrices as much as
1071 No tests added, no change of functionality.
1073 * platform/graphics/transforms/AffineTransform.cpp:
1074 (WebCore::AffineTransform::inverse):
1075 (WebCore::AffineTransform::translate):
1076 (WebCore::AffineTransform::translateRight):
1077 * platform/graphics/transforms/AffineTransform.h:
1078 * rendering/RenderForeignObject.cpp:
1079 (WebCore::RenderForeignObject::translationForAttributes):
1080 (WebCore::RenderForeignObject::localToParentTransform):
1081 * rendering/RenderForeignObject.h:
1082 * rendering/RenderSVGRoot.cpp:
1083 (WebCore::RenderSVGRoot::localToBorderBoxTransform):
1084 (WebCore::RenderSVGRoot::localToRepaintContainerTransform):
1085 (WebCore::RenderSVGRoot::localToParentTransform):
1086 * rendering/RenderSVGViewportContainer.cpp:
1087 (WebCore::RenderSVGViewportContainer::localToParentTransform):
1088 * rendering/SVGRootInlineBox.cpp:
1089 (WebCore::applyTextLengthCorrectionToTextChunk):
1091 2010-02-09 Dirk Schulze <krit@webkit.org>
1093 Reviewed by Nikolas Zimmermann.
1095 SVG patterns with some scale patternTransform are not displayed correctly for small elements
1096 https://bugs.webkit.org/show_bug.cgi?id=25484
1098 SVG Pattern size was clipped to the size of the target, if the pattern is bigger than the target. This
1099 causes problems, if the patternTransform scales the pattern. This patch deletes the clipping.
1101 Tests: svg/custom/pattern-excessive-malloc.svg
1102 svg/custom/pattern-size-bigger-than-target-size.svg
1103 svg/custom/pattern-skew-transformed.svg
1105 * svg/SVGPatternElement.cpp:
1106 (WebCore::SVGPatternElement::buildPattern):
1108 2010-02-09 Darin Adler <darin@apple.com>
1110 * rendering/RenderObject.cpp:
1111 (WebCore::RenderObject::styleDidChange): Fixed typo in comment.
1113 2010-02-09 MORITA Hajime <morrita@gmail.com>
1115 Reviewed by Nikolas Zimmermann.
1117 SVG selection text foreground colour does not respect user settings
1118 https://bugs.webkit.org/show_bug.cgi?id=15997
1120 Add two subphases SVGTextPaintSubphaseGlyphFillSelection and
1121 SVGTextPaintSubphaseGlyphStrokeSelection for painting selected
1122 text on SVG. Selected texts are painted with style from
1123 getCachedPseudoStyle() instead of style().
1125 Tests: svg/text/selection-styles.xhtml
1127 * rendering/SVGCharacterLayoutInfo.h:
1128 (WebCore::SVGTextChunkWalker::SVGTextChunkWalker):
1129 (WebCore::SVGTextChunkWalker::setupFillSelection):
1130 (WebCore::SVGTextChunkWalker::setupStrokeSelection):
1131 * rendering/SVGRootInlineBox.cpp:
1132 (WebCore::SVGRootInlineBoxPaintWalker::mayHaveSelection):
1133 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillSelectionCallback):
1134 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeSelectionCallback):
1135 (WebCore::SVGRootInlineBoxPaintWalker::activePaintServer):
1136 (WebCore::SVGRootInlineBox::paint):
1137 (WebCore::SVGRootInlineBox::walkTextChunks):
1138 * rendering/SVGInlineTextBox.h:
1140 Add callback hooks and its implementation for handle new
1143 * rendering/SVGInlineTextBox.cpp:
1144 (WebCore::SVGInlineTextBox::chunkSelectionStartEnd):
1145 (WebCore::SVGInlineTextBox::paintCharacters):
1146 Split box text into selected part and non-selected part, and use
1147 separate subphases to paint them.
1150 (WebCore::SVGTextRunWalker::walk):
1151 Relax ASSERT() condition to accept a part of text.
1153 * svg/graphics/SVGPaintServer.cpp:
1154 (WebCore::applyStrokeStyleToContext):
1155 (WebCore::SVGPaintServer::setup):
1156 * svg/graphics/SVGPaintServer.h:
1157 * svg/graphics/SVGPaintServerGradient.cpp:
1158 (WebCore::SVGPaintServerGradient::setup):
1159 * svg/graphics/SVGPaintServerGradient.h:
1160 * svg/graphics/SVGPaintServerPattern.cpp:
1161 (WebCore::SVGPaintServerPattern::setup):
1162 * svg/graphics/SVGPaintServerPattern.h:
1163 * svg/graphics/SVGPaintServerSolid.cpp:
1164 (WebCore::SVGPaintServerSolid::setup):
1165 * svg/graphics/SVGPaintServerSolid.h:
1166 Change setup() signature to accept RenderStyle instead of always
1167 using RenderObject::style().
1169 2010-02-09 Nikolas Zimmermann <nzimmermann@rim.com>
1171 Reviewed by Dirk Schulze.
1173 No scroll bars are displayed for standalone SVG image
1174 https://bugs.webkit.org/show_bug.cgi?id=11225
1176 Height and width defined for svg element are not honored
1177 https://bugs.webkit.org/show_bug.cgi?id=24033
1179 SVG file does not pan and has no scroll bars
1180 https://bugs.webkit.org/show_bug.cgi?id=24448
1182 Adapt to SVG 1.1 errata to change the overflow handling:
1183 Replace "svg { overflow: hidden }" by "svg:not(:root) { overflow: hidden }" to allow standalone SVG documents to contain scrolllbars.
1184 Agreed by SVG WG to make this the default behaviour, already implemented by Opera & FireFox (partial support).
1186 Add new tests in svg/overflow covering all special SVG css overflow handling rules on inner/outer svg elements.
1188 Tests: svg/overflow/overflow-on-inner-svg-element-defaults.svg
1189 svg/overflow/overflow-on-inner-svg-element.svg
1190 svg/overflow/overflow-on-outermost-svg-element-defaults.svg
1191 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-1.svg
1192 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-2.svg
1193 svg/overflow/overflow-on-outermost-svg-element-ignore-attribute-3.svg
1194 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto.xhtml
1195 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults.xhtml
1196 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden.xhtml
1197 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll.xhtml
1198 svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible.xhtml
1200 * css/svg.css: Change default <svg> overflow rule to only apply to inner <svg> elements.
1201 * page/FrameView.cpp:
1202 (WebCore::FrameView::layout): Only apply overflow rules for non-standalone SVG documents.
1203 * rendering/RenderSVGRoot.cpp: Remove all calls to isOverflowHidden - it's always the case for the outermost SVG element, see spec + errata.
1204 (WebCore::RenderSVGRoot::paint): Always clip to initial viewport size.
1205 (WebCore::RenderSVGRoot::computeRectForRepaint): Ditto.
1206 (WebCore::RenderSVGRoot::nodeAtPoint): Simplify.
1207 * rendering/RenderSVGViewportContainer.cpp:
1208 (WebCore::RenderSVGViewportContainer::applyViewportClip): Use isOverflowHidden() instead of a manual oveflow query and clip in float precision.
1209 * rendering/SVGRenderSupport.cpp:
1210 (WebCore::SVGRenderBase::isOverflowHidden): Simplify implementation, assure the function is not called anymore for RenderSVGRoot objects.
1212 2010-02-09 Kwang Yul Seo <skyul@company100.net>
1214 Reviewed by Eric Seidel.
1216 [BREWMP] Port KURL::fileSystemPath
1217 https://bugs.webkit.org/show_bug.cgi?id=34516
1219 Convert a file URL to a file path by prefixing
1220 AEEFS_HOME_DIR to access files relative to the current
1221 module directory in a case-sensitive manner.
1223 As IWeb "file:" engine opens files in BREW's application-relative
1224 file namespace, we follow the same policy here.
1226 * platform/brew/KURLBrew.cpp: Added.
1227 (WebCore::KURL::fileSystemPath):
1229 2010-02-09 Noam Rosenthal <noam.rosenthal@nokia.com>
1231 Reviewed by Kenneth Rohde Christiansen.
1233 [Qt] the above website does not render properly when in compositing mode
1234 https://bugs.webkit.org/show_bug.cgi?id=34681
1236 http://media.24ways.org/2009/15/spinner-alt.html now renders correctly
1238 * platform/graphics/qt/GraphicsLayerQt.cpp:
1239 (WebCore::MaskEffectQt::MaskEffectQt): implement mask as
1241 (WebCore::MaskEffectQt::draw): reimp
1242 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl): init the effect
1243 (WebCore::GraphicsLayerQtImpl::paint): no need for drawContents
1244 (WebCore::GraphicsLayerQtImpl::flushChanges): make sure to update the
1245 mask layer, not just the actual children
1247 2010-02-09 Kwang Yul Seo <skyul@company100.net>
1249 Reviewed by Laszlo Gombos.
1251 [BREWMP] Fix macro redefinition error in BREWMP simulator build.
1252 https://bugs.webkit.org/show_bug.cgi?id=34738
1254 Remove warning: 'FAR' macro redefinition.
1256 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1258 2010-02-07 Yuzo Fujishima <yuzo@google.com>
1260 Reviewed by Dan Bernstein.
1262 Fix the following bugs:
1263 https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly
1264 https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail
1266 Tests: fast/css/inline-element-line-break.html
1267 fast/css/pseudo-element-line-break.html
1269 findNextLineBreak() unconditionally allowed lines to break between elements when no other line breaking opportunity had been found,
1270 but that was unnecessary and led to incorrect layout. Disallow that kind of line breaks.
1272 * rendering/RenderBlockLineLayout.cpp:
1273 (WebCore::RenderBlock::findNextLineBreak):
1275 2010-02-09 Shinichiro Hamaji <hamaji@chromium.org>
1277 Reviewed by Darin Adler.
1279 Provide a way to get total number of pages to be printed
1280 https://bugs.webkit.org/show_bug.cgi?id=34699
1282 Test: printing/numberOfPages.html
1285 * page/PrintContext.cpp:
1286 (WebCore::PrintContext::pageNumberForElement):
1287 (WebCore::PrintContext::numberOfPages):
1288 * page/PrintContext.h:
1289 (WebCore::PrintContext::pageRects):
1291 2010-02-08 Dominic Cooney <dominicc@google.com>
1293 Reviewed by Adam Barth.
1295 [V8] Move Element custom methods into generic bindings
1297 This patch moves the security checks in setAttribute,
1298 setAttributeNode, setAttributeNS and setAttributeNodeNS from
1299 V8ElementCustom into the generic bindings so that they can be
1300 reused in other bindings. This is in a similar vein to
1301 <https://bugs.webkit.org/attachment.cgi?id=45872>.
1303 https://bugs.webkit.org/show_bug.cgi?id=34554
1308 * bindings/generic/BindingElement.h: Added.
1309 (WebCore::::setAttribute):
1310 (WebCore::::setAttributeNode):
1311 (WebCore::::setAttributeNS):
1312 (WebCore::::setAttributeNodeNS):
1313 * bindings/v8/V8Binding.h:
1314 * bindings/v8/custom/V8ElementCustom.cpp:
1315 (WebCore::V8Element::setAttributeCallback):
1316 (WebCore::V8Element::setAttributeNodeCallback):
1317 (WebCore::V8Element::setAttributeNSCallback):
1318 (WebCore::V8Element::setAttributeNodeNSCallback):
1320 2010-02-08 Hayato Ito <hayato@chromium.org>
1322 Reviewed by Darin Adler.
1324 Schedule a loading request when there are many in-flight requests beyond
1325 the limit to avoid forever page loading.
1327 https://bugs.webkit.org/show_bug.cgi?id=31227
1329 Test: http/tests/loading/load-javascript-after-many-xhrs.html
1331 * loader/loader.cpp:
1332 (WebCore::Loader::Host::servePendingRequests):
1334 2010-02-08 David Levin <levin@chromium.org>
1336 Reviewed by Gavin Barraclough.
1338 REGRESSION (before r54472): Various tests in fast/workers are crashing on the buildbot.
1339 https://bugs.webkit.org/show_bug.cgi?id=34728
1341 The core part of the fix is to change WebCoreJSClientData::m_normalWorld
1342 from DOMWrapperWorld to RefPtr<DOMWrapperWorld> so that the DOMWrapperWorld
1343 is really ref counted.
1345 No new tests because current tests sufficiently cover this as evidenced as
1346 the buildbot crashes.
1348 * bindings/js/JSDOMBinding.cpp:
1349 (WebCore::DOMWrapperWorld::~DOMWrapperWorld): Made this robust to m_globalData
1351 * bindings/js/JSDOMBinding.h:
1352 (WebCore::DOMWrapperWorld::create): Made this class follow the standard
1353 create pattern for RefCounted classes.
1354 (WebCore::DOMWrapperWorld::detachFromGlobalData): Since this class can
1355 now outlive JSGlobalData, this method tells it to stop using its JSGlobalData.
1356 (WebCore::WebCoreJSClientData::WebCoreJSClientData): Adjusted due to
1357 m_normalWorld being a RefPtr.
1358 (WebCore::WebCoreJSClientData::~WebCoreJSClientData): Ditto (and added
1359 asserts for the FIXME).
1360 (WebCore::WebCoreJSClientData::normalWorld): Ditto.
1361 * bindings/js/ScriptController.cpp:
1362 (WebCore::IsolatedWorld::create): Made the constructor protected.
1363 (WebCore::IsolatedWorld::IsolatedWorld): Made the constructor protected, so
1364 that code would have to use the create method.
1366 2010-02-08 Kinuko Yasuda <kinuko@chromium.org>
1368 Reviewed by David Levin.
1370 Remove special utf-8 tag from Chromium cilpboard code because
1371 we now have the corresponding code in generic clipboard framework
1372 code in chromium (since it's needed by other places than in Web
1373 page rendering) and no longer need the separate workaround code in
1375 https://bugs.webkit.org/show_bug.cgi?id=34567
1377 Test: (for regression) editing/pasteboard
1379 * platform/chromium/ClipboardChromium.cpp:
1380 (WebCore::ClipboardChromium::writeRange):
1381 * platform/chromium/PasteboardChromium.cpp:
1382 (WebCore::Pasteboard::writeSelection):
1383 (WebCore::Pasteboard::documentFragment):
1385 2010-02-08 Darin Adler <darin@apple.com>
1387 Reviewed by Dan Bernstein.
1389 Crash due to layout not done in case involving removal of absolute positioning
1390 https://bugs.webkit.org/show_bug.cgi?id=34734
1391 rdar://problem/7588280
1393 Test: fast/dynamic/position-change-layout.html
1395 * rendering/RenderObject.cpp:
1396 (WebCore::RenderObject::styleDidChange): Call markContainingBlocksForLayout in
1397 a case where the object already needs layout, but might have a new containing
1398 block and so needs to mark the new containing block.
1400 2010-02-08 Charlie Reis <creis@chromium.org>
1402 Reviewed by Darin Adler.
1404 onbeforeunload not called at window close + frame or iframe focused
1405 https://bugs.webkit.org/show_bug.cgi?id=27481
1407 Chromium and WebKit on Windows will now fire beforeunload handlers
1408 even if an inner frame is focused.
1410 Layout tests aren't able to test this bug, since it requires closing
1411 the actual browser window, not calling window.close(). Instead,
1412 test with WebCore/manual-tests/onbeforeunload-focused-iframe.html.
1414 * manual-tests/onbeforeunload-focused-iframe.html: Added.
1415 * manual-tests/resources/focused-iframe.html: Added.
1417 2010-02-08 Alexey Proskuryakov <ap@apple.com>
1419 Addressing review feedback.
1421 * bridge/c/c_instance.h: Removed argument name.
1423 2010-02-08 Alexey Proskuryakov <ap@apple.com>
1425 Reviewed by Darin Adler.
1427 https://bugs.webkit.org/show_bug.cgi?id=34727
1428 Assertion crashes and freezes when plug-in property access results in an exception
1430 Test: plugins/netscape-plugin-property-access-exception.html
1432 * bridge/c/c_instance.h: Made moveGlobalExceptionToExecState public, since it also need to
1433 be called from CField.
1435 * bridge/c/c_runtime.cpp:
1436 (JSC::Bindings::CField::valueFromInstance): Call moveGlobalExceptionToExecState(). Without
1437 this, not only didn't we get exceptions, but we also got an assertion failure because of
1438 dangling global exception on next call into plug-in.
1439 (JSC::Bindings::CField::setValueToInstance): Ditto.
1441 2010-02-08 Dirk Schulze <krit@webkit.org>
1443 Unreviewed build fix of ChromiumWin.
1445 * platform/graphics/chromium/TransparencyWin.cpp:
1447 (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
1448 (WebCore::TransparencyWin::setupTransformForKeepTransform):
1449 * platform/graphics/chromium/TransparencyWin.h:
1450 * rendering/RenderThemeChromiumWin.cpp:
1453 2010-02-05 Dumitru Daniliuc <dumi@chromium.org>
1455 Reviewed by Jeremy Orlow.
1457 Adding a way to get the set of all open database handles pointing
1458 to a given database.
1459 https://bugs.webkit.org/show_bug.cgi?id=34619
1461 Sometimes we need to be able to close all handles to a database as
1462 soon as possible (to delete the DB file, for example).
1464 * storage/DatabaseTracker.cpp:
1465 (WebCore::DatabaseTracker::getOpenDatabases):
1466 * storage/DatabaseTracker.h:
1467 * storage/chromium/DatabaseTrackerChromium.cpp:
1468 (WebCore::DatabaseTracker::addOpenDatabase):
1469 (WebCore::DatabaseTracker::removeOpenDatabase):
1470 (WebCore::DatabaseTracker::getOpenDatabases):
1472 2010-02-08 Dirk Schulze <krit@webkit.org>
1474 Unreviewed windows build-fix.
1476 * page/win/FrameCGWin.cpp:
1477 (WebCore::drawRectIntoContext):
1479 2010-02-08 Dirk Schulze <krit@webkit.org>
1481 Reviewed by Nikolas Zimmermann.
1483 Add back an AffineTransform class for use by SVG
1484 https://bugs.webkit.org/show_bug.cgi?id=33750
1486 This adds back AffineTransform. This saves additional 4% memory consumption
1487 on the 50k rects stress test: https://bugs.webkit.org/attachment.cgi?id=46721
1488 It also makes it possible to optimize the calculations internally of
1489 AffineTransform to the needs of 2D transformations (the second benefit for SVG,
1490 which uses transformations relative often at the moment.
1491 Everything that is 2D related (like images, patterns, gradients, fonts), uses
1492 AffineTransform now.
1494 * WebCore.xcodeproj/project.pbxproj:
1495 * bindings/js/JSSVGMatrixCustom.cpp:
1496 (WebCore::JSSVGMatrix::multiply):
1497 (WebCore::JSSVGMatrix::inverse):
1498 (WebCore::JSSVGMatrix::rotateFromVector):
1499 * bindings/js/JSSVGPODTypeWrapper.h:
1500 * bindings/scripts/CodeGeneratorJS.pm:
1501 * bindings/scripts/CodeGeneratorObjC.pm:
1502 * bindings/scripts/CodeGeneratorV8.pm:
1503 * bindings/v8/V8Index.h:
1504 * bindings/v8/custom/V8SVGMatrixCustom.cpp:
1505 (WebCore::V8SVGMatrix::multiplyCallback):
1506 (WebCore::V8SVGMatrix::inverseCallback):
1507 (WebCore::V8SVGMatrix::rotateFromVectorCallback):
1508 * html/HTMLCanvasElement.cpp: Changed to AffineTransform now
1509 (WebCore::HTMLCanvasElement::baseTransform):
1510 * html/HTMLCanvasElement.h:
1511 * platform/graphics/FloatPoint.cpp:
1512 (WebCore::FloatPoint::matrixTransform):
1513 * platform/graphics/FloatPoint.h:
1514 * platform/graphics/GeneratedImage.cpp:
1515 (WebCore::GeneratedImage::drawPattern):
1516 * platform/graphics/GeneratedImage.h:
1517 * platform/graphics/Gradient.cpp:
1518 (WebCore::Gradient::setGradientSpaceTransform):
1519 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1520 * platform/graphics/Gradient.h:
1521 (WebCore::Gradient::gradientSpaceTransform):
1522 * platform/graphics/GraphicsContext.h:
1523 * platform/graphics/Image.cpp:
1524 (WebCore::Image::drawTiled):
1525 * platform/graphics/Image.h:
1526 * platform/graphics/ImageBuffer.h:
1527 (WebCore::ImageBuffer::baseTransform):
1528 * platform/graphics/Path.h:
1529 * platform/graphics/Pattern.cpp:
1530 (WebCore::Pattern::setPatternSpaceTransform):
1531 * platform/graphics/Pattern.h:
1532 (WebCore::Pattern::create):
1533 (WebCore::Pattern::tileImage):
1534 * platform/graphics/cairo/FontCairo.cpp:
1535 (WebCore::Font::drawGlyphs):
1536 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1537 (WebCore::setPlatformFill):
1538 (WebCore::setPlatformStroke):
1539 (WebCore::GraphicsContext::getCTM):
1540 * platform/graphics/cairo/ImageCairo.cpp:
1541 (WebCore::Image::drawPattern):
1542 * platform/graphics/cairo/PathCairo.cpp:
1543 * platform/graphics/cairo/PatternCairo.cpp:
1544 (WebCore::Pattern::createPlatformPattern):
1545 * platform/graphics/cg/GraphicsContextCG.cpp:
1546 (WebCore::GraphicsContext::getCTM):
1547 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
1548 (WebCore::GraphicsContextPlatformPrivate::concatCTM):
1549 * platform/graphics/cg/ImageCG.cpp:
1550 (WebCore::Image::drawPattern):
1551 * platform/graphics/cg/PathCG.cpp:
1552 * platform/graphics/cg/PatternCG.cpp:
1553 (WebCore::Pattern::createPlatformPattern):
1554 * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1555 (WebCore::GraphicsContext::getCTM):
1556 * platform/graphics/haiku/ImageHaiku.cpp:
1557 (WebCore::Image::drawPattern):
1558 * platform/graphics/haiku/PathHaiku.cpp:
1559 * platform/graphics/qt/FontQt.cpp:
1560 (WebCore::Font::drawComplexText):
1561 * platform/graphics/qt/GraphicsContextQt.cpp:
1562 (WebCore::GraphicsContext::getCTM):
1563 (WebCore::GraphicsContext::fillPath):
1564 (WebCore::GraphicsContext::strokePath):
1565 (WebCore::GraphicsContext::fillRect):
1566 * platform/graphics/qt/ImageQt.cpp:
1567 (WebCore::Image::drawPattern):
1568 * platform/graphics/qt/PathQt.cpp:
1569 * platform/graphics/qt/PatternQt.cpp:
1570 (WebCore::Pattern::createPlatformPattern):
1571 * platform/graphics/skia/GradientSkia.cpp:
1572 (WebCore::Gradient::setPlatformGradientSpaceTransform):
1573 * platform/graphics/skia/GraphicsContextSkia.cpp:
1574 (WebCore::GraphicsContext::getCTM):
1575 * platform/graphics/skia/ImageSkia.cpp:
1576 (WebCore::Image::drawPattern):
1577 * platform/graphics/skia/PathSkia.cpp:
1578 * platform/graphics/skia/PatternSkia.cpp:
1579 (WebCore::Pattern::platformPattern):
1580 * platform/graphics/skia/SkiaFontWin.cpp:
1581 (WebCore::windowsCanHandleTextDrawing):
1582 * platform/graphics/transforms/AffineTransform.cpp:
1583 (WebCore::AffineTransform::makeIdentity): needed by some parts of WebCore
1584 (WebCore::AffineTransform::scale): Didn't scale the complete matrix
1585 (WebCore::AffineTransform::translate): Didn't respect other transformations
1586 (WebCore::AffineTransform::shear): direct calculation, no extra multiply of matrices
1587 (WebCore::AffineTransform::map):
1588 (WebCore::AffineTransform::mapPoint):
1589 (WebCore::AffineTransform::mapRect):
1590 * platform/graphics/transforms/AffineTransform.h:
1591 (WebCore::AffineTransform::isIdentityOrTranslation):
1592 * platform/graphics/transforms/TransformationMatrix.cpp:
1593 (WebCore::TransformationMatrix::toAffineTransform):
1594 * platform/graphics/transforms/TransformationMatrix.h:
1595 * platform/graphics/win/FontCGWin.cpp:
1596 (WebCore::drawGDIGlyphs):
1597 * platform/graphics/win/GraphicsContextCGWin.cpp:
1598 * platform/graphics/win/GraphicsContextCairoWin.cpp:
1599 * platform/graphics/win/GraphicsContextWin.cpp:
1600 (WebCore::GraphicsContextPlatformPrivate::concatCTM):
1601 * platform/graphics/wince/FontWince.cpp:
1602 * platform/graphics/wince/GraphicsContextWince.cpp:
1603 (WebCore::GraphicsContextPlatformPrivate::concatCTM):
1604 (WebCore::GraphicsContext::fillPath):
1605 (WebCore::GraphicsContext::strokePath):
1606 (WebCore::GraphicsContext::getCTM):
1607 (WebCore::GraphicsContext::drawBitmapPattern):
1608 * platform/graphics/wince/ImageBufferWince.cpp:
1610 (WebCore::BufferedImage::drawPattern):
1611 * platform/graphics/wince/PathWince.cpp:
1612 (WebCore::Path::transform):
1613 * platform/graphics/wince/PlatformPathWince.cpp:
1614 (WebCore::drawPolygons):
1615 (WebCore::PathPolygon::transform):
1616 (WebCore::PlatformPathElement::transform):
1617 (WebCore::PlatformPath::strokePath):
1618 (WebCore::PlatformPath::fillPath):
1619 (WebCore::PlatformPath::transform):
1620 * platform/graphics/wince/PlatformPathWince.h:
1622 * platform/graphics/wx/GraphicsContextWx.cpp:
1623 (WebCore::GraphicsContext::getCTM):
1624 * platform/graphics/wx/ImageWx.cpp:
1625 (WebCore::BitmapImage::drawPattern):
1626 (WebCore::Image::drawPattern):
1627 * platform/graphics/wx/PathWx.cpp:
1628 * platform/gtk/RenderThemeGtk.cpp:
1629 (WebCore::paintMozillaGtkWidget):
1630 * plugins/win/PluginViewWin.cpp:
1631 (WebCore::PluginView::paintWindowedPluginIntoContext):
1632 * rendering/RenderBox.cpp:
1633 (WebCore::RenderBox::localTransform):
1634 * rendering/RenderBox.h:
1635 * rendering/RenderBoxModelObject.cpp:
1636 (WebCore::RenderBoxModelScaleData::RenderBoxModelScaleData):
1637 (WebCore::RenderBoxModelScaleData::transform):
1638 (WebCore::RenderBoxModelScaleData::setTransform):
1639 (WebCore::RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality):
1640 (WebCore::RenderBoxModelObject::paintBoxShadow):
1641 * rendering/RenderForeignObject.cpp:
1642 (WebCore::RenderForeignObject::translationForAttributes):
1643 (WebCore::RenderForeignObject::localToParentTransform):
1644 * rendering/RenderForeignObject.h:
1645 (WebCore::RenderForeignObject::localTransform):
1646 * rendering/RenderLayer.cpp:
1647 (WebCore::RenderLayer::paintLayer):
1648 * rendering/RenderObject.cpp:
1649 (WebCore::RenderObject::localTransform):
1650 (WebCore::RenderObject::localToParentTransform):
1651 (WebCore::RenderObject::absoluteTransform):
1652 * rendering/RenderObject.h:
1653 * rendering/RenderPath.cpp:
1654 (WebCore::RenderPath::localToParentTransform):
1655 (WebCore::RenderPath::localTransform):
1656 * rendering/RenderPath.h:
1657 * rendering/RenderSVGHiddenContainer.h:
1658 (WebCore::RenderSVGHiddenContainer::absoluteTransform):
1659 * rendering/RenderSVGImage.h:
1660 (WebCore::RenderSVGImage::localToParentTransform):
1661 (WebCore::RenderSVGImage::localTransform):
1662 * rendering/RenderSVGRoot.cpp:
1663 (WebCore::RenderSVGRoot::localToBorderBoxTransform):
1664 (WebCore::RenderSVGRoot::localToRepaintContainerTransform):
1665 (WebCore::RenderSVGRoot::localToParentTransform):
1666 (WebCore::RenderSVGRoot::absoluteTransform):
1667 (WebCore::RenderSVGRoot::localTransform):
1668 * rendering/RenderSVGRoot.h:
1669 * rendering/RenderSVGText.h:
1670 (WebCore::RenderSVGText::localToParentTransform):
1671 (WebCore::RenderSVGText::localTransform):
1672 * rendering/RenderSVGTransformableContainer.cpp:
1673 (WebCore::RenderSVGTransformableContainer::localToParentTransform):
1674 (WebCore::RenderSVGTransformableContainer::localTransform):
1675 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1676 * rendering/RenderSVGTransformableContainer.h:
1677 * rendering/RenderSVGViewportContainer.cpp:
1678 (WebCore::RenderSVGViewportContainer::markerBoundaries):
1679 (WebCore::RenderSVGViewportContainer::markerContentTransformation):
1680 (WebCore::RenderSVGViewportContainer::viewportTransform):
1681 (WebCore::RenderSVGViewportContainer::localToParentTransform):
1682 (WebCore::RenderSVGViewportContainer::absoluteTransform):
1683 * rendering/RenderSVGViewportContainer.h:
1684 * rendering/SVGCharacterLayoutInfo.cpp:
1685 (WebCore::SVGChar::characterTransform):
1686 * rendering/SVGCharacterLayoutInfo.h:
1687 (WebCore::SVGTextChunkWalker::operator()):
1688 * rendering/SVGInlineTextBox.cpp:
1689 (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
1690 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
1691 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
1692 (WebCore::SVGInlineTextBox::paintCharacters):
1693 (WebCore::SVGInlineTextBox::paintDecoration):
1694 * rendering/SVGMarkerLayoutInfo.h:
1695 (WebCore::MarkerLayout::MarkerLayout):
1696 * rendering/SVGRenderSupport.cpp:
1697 (WebCore::applyTransformToPaintInfo):
1698 * rendering/SVGRenderSupport.h:
1699 * rendering/SVGRenderTreeAsText.cpp:
1700 (WebCore::operator<<):
1701 * rendering/SVGRenderTreeAsText.h:
1702 * rendering/SVGRootInlineBox.cpp:
1703 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
1704 (WebCore::applyTextLengthCorrectionToTextChunk):
1705 (WebCore::SVGRootInlineBox::buildLayoutInformation):
1706 * rendering/TransformState.cpp:
1707 (WebCore::TransformState::applyTransform):
1708 * rendering/TransformState.h:
1709 * svg/GradientAttributes.h:
1710 (WebCore::GradientAttributes::gradientTransform):
1711 (WebCore::GradientAttributes::setGradientTransform):
1712 * svg/PatternAttributes.h:
1713 (WebCore::PatternAttributes::patternTransform):
1714 (WebCore::PatternAttributes::setPatternTransform):
1715 * svg/SVGAnimateMotionElement.cpp:
1716 (WebCore::SVGAnimateMotionElement::resetToBaseValue):
1717 (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
1718 (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
1719 * svg/SVGAnimateMotionElement.h:
1720 * svg/SVGAnimateTransformElement.cpp:
1721 * svg/SVGAnimateTransformElement.h:
1723 (WebCore::SVGElement::supplementalTransform):
1724 * svg/SVGFitToViewBox.cpp:
1725 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
1726 * svg/SVGFitToViewBox.h:
1727 * svg/SVGLocatable.cpp:
1728 (WebCore::SVGLocatable::getCTM):
1729 (WebCore::SVGLocatable::getScreenCTM):
1730 (WebCore::SVGLocatable::getTransformToElement):
1731 * svg/SVGLocatable.h:
1732 * svg/SVGMarkerElement.cpp:
1733 (WebCore::SVGMarkerElement::viewBoxToViewTransform):
1734 * svg/SVGMarkerElement.h:
1735 * svg/SVGMaskElement.cpp:
1736 (WebCore::SVGMaskElement::drawMaskerContent):
1737 * svg/SVGMatrix.idl:
1738 * svg/SVGPatternElement.cpp:
1739 (WebCore::SVGPatternElement::buildPattern):
1740 * svg/SVGPreserveAspectRatio.cpp:
1741 (WebCore::SVGPreserveAspectRatio::getCTM):
1742 * svg/SVGPreserveAspectRatio.h:
1743 * svg/SVGSVGElement.cpp:
1744 (WebCore::SVGSVGElement::viewport):
1745 (WebCore::SVGSVGElement::createSVGMatrix):
1746 (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
1747 (WebCore::SVGSVGElement::getCTM):
1748 (WebCore::SVGSVGElement::getScreenCTM):
1749 (WebCore::SVGSVGElement::viewBoxToViewTransform):
1750 * svg/SVGSVGElement.h:
1751 * svg/SVGStyledLocatableElement.cpp:
1752 (WebCore::SVGStyledLocatableElement::getCTM):
1753 (WebCore::SVGStyledLocatableElement::getScreenCTM):
1754 * svg/SVGStyledLocatableElement.h:
1755 * svg/SVGStyledTransformableElement.cpp:
1756 (WebCore::SVGStyledTransformableElement::getCTM):
1757 (WebCore::SVGStyledTransformableElement::getScreenCTM):
1758 (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
1759 (WebCore::SVGStyledTransformableElement::supplementalTransform):
1760 * svg/SVGStyledTransformableElement.h:
1761 (WebCore::SVGStyledTransformableElement::isStyledTransformable):
1762 (WebCore::SVGStyledTransformableElement::toPathData):
1763 * svg/SVGTextContentElement.cpp:
1764 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
1765 * svg/SVGTextElement.cpp:
1766 (WebCore::SVGTextElement::getScreenCTM):
1767 (WebCore::SVGTextElement::getCTM):
1768 (WebCore::SVGTextElement::animatedLocalTransform):
1769 (WebCore::SVGTextElement::supplementalTransform):
1770 * svg/SVGTextElement.h:
1771 * svg/SVGTextPathElement.cpp:
1772 * svg/SVGTransform.cpp:
1773 (SVGTransform::SVGTransform):
1774 (SVGTransform::matrix):
1775 (SVGTransform::setMatrix):
1776 * svg/SVGTransform.h:
1777 * svg/SVGTransformDistance.cpp:
1778 (WebCore::SVGTransformDistance::SVGTransformDistance):
1779 (WebCore::SVGTransformDistance::scaledDistance):
1780 (WebCore::SVGTransformDistance::isZero):
1781 * svg/SVGTransformDistance.h:
1782 * svg/SVGTransformList.cpp:
1783 (SVGTransformList::createSVGTransformFromMatrix):
1784 (SVGTransformList::concatenate):
1785 (SVGTransformList::valueAsString):
1786 * svg/SVGTransformList.h:
1787 * svg/SVGTransformable.cpp:
1788 (WebCore::SVGTransformable::getCTM):
1789 (WebCore::SVGTransformable::getScreenCTM):
1790 (WebCore::SVGTransformable::parseTransformValue):
1791 * svg/SVGTransformable.h:
1792 (WebCore::SVGTransformable::):
1793 * svg/graphics/SVGPaintServerGradient.cpp:
1794 (WebCore::SVGPaintServerGradient::gradientTransform):
1795 (WebCore::SVGPaintServerGradient::setGradientTransform):
1796 (WebCore::clipToTextMask):
1797 (WebCore::SVGPaintServerGradient::setup):
1798 * svg/graphics/SVGPaintServerGradient.h:
1799 * svg/graphics/SVGPaintServerPattern.cpp:
1800 (WebCore::SVGPaintServerPattern::patternTransform):
1801 (WebCore::SVGPaintServerPattern::setPatternTransform):
1802 (WebCore::SVGPaintServerPattern::setup):
1803 * svg/graphics/SVGPaintServerPattern.h:
1804 * svg/graphics/SVGResourceClipper.cpp:
1805 (WebCore::SVGResourceClipper::applyClip):
1806 * svg/graphics/SVGResourceMarker.cpp:
1807 (WebCore::SVGResourceMarker::markerTransformation):
1808 (WebCore::SVGResourceMarker::draw):
1809 * svg/graphics/SVGResourceMarker.h:
1810 * svg/graphics/filters/SVGFEImage.cpp:
1811 * svg/graphics/filters/SVGFETile.cpp:
1812 (WebCore::FETile::apply):
1814 2010-02-08 Stephen White <senorblanco@chromium.org>
1816 Reviewed by Dimitri Glazkov.
1818 Make an inline function containing a static var out-of-line. This is
1819 a workaround for Xcode 3.1 bug radar 7070016. We tripped on this in
1820 deviceRGBColorSpaceRef on the Chromium canaries. This is a proactive
1821 fix for the same problem in sRGBColorSpaceRef().
1823 https://bugs.webkit.org/show_bug.cgi?id=34663
1825 * platform/graphics/cg/GraphicsContextCG.cpp:
1826 (WebCore::sRGBColorSpaceRef):
1827 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
1829 2010-02-08 Nate Chapin <japhet@chromium.org>
1831 Reviewed by Dimitri Glazkov.
1833 [V8] Unify the WorkerContext V8 object wrapping code with
1834 the standard V8 object wrapping code.
1836 https://bugs.webkit.org/show_bug.cgi?id=34658
1838 * bindings/scripts/CodeGeneratorV8.pm:
1839 * bindings/v8/V8DOMWrapper.cpp:
1840 (WebCore::V8DOMWrapper::instantiateV8Object):
1841 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1842 * bindings/v8/V8WorkerContextEventListener.cpp:
1843 (WebCore::V8WorkerContextEventListener::handleEvent):
1844 (WebCore::V8WorkerContextEventListener::getReceiverObject):
1845 * bindings/v8/WorkerContextExecutionProxy.cpp:
1846 * bindings/v8/WorkerContextExecutionProxy.h:
1847 * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1848 (WebCore::V8NotificationCenter::createHTMLNotificationCallback):
1849 (WebCore::V8NotificationCenter::createNotificationCallback):
1850 * bindings/v8/custom/V8WorkerContextCustom.cpp:
1853 2010-02-08 Kwang Yul Seo <skyul@company100.net>
1855 Reviewed by Darin Adler.
1857 Use fastStrDup instead of strdup
1858 https://bugs.webkit.org/show_bug.cgi?id=33943
1860 Replace strdup/free with fastStrDup/fastFree.
1862 * bridge/IdentifierRep.h:
1863 (WebCore::IdentifierRep::IdentifierRep):
1864 * bridge/jni/JNIBridge.cpp:
1865 (JavaMethod::~JavaMethod):
1867 (JavaMethod::signature):
1868 * bridge/jni/jsc/JavaClassJSC.cpp:
1869 (JavaClass::JavaClass):
1870 (JavaClass::~JavaClass):
1871 * platform/network/curl/ResourceHandleCurl.cpp:
1872 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
1873 * platform/network/curl/ResourceHandleManager.cpp:
1874 (WebCore::ResourceHandleManager::~ResourceHandleManager):
1875 (WebCore::ResourceHandleManager::setCookieJarFileName):
1876 (WebCore::ResourceHandleManager::initializeHandle):
1877 * plugins/PluginStream.cpp:
1878 (WebCore::PluginStream::~PluginStream):
1879 (WebCore::PluginStream::startStream):
1880 * xml/XSLTProcessorLibxslt.cpp:
1881 (WebCore::xsltParamArrayFromParameterMap):
1882 (WebCore::freeXsltParamArray):
1884 2010-02-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
1886 Reviewed by Simon Hausmann.
1888 Fix Qt build on Windows.
1890 nmake fails to pick the right cpp file, so we have to
1891 rename the file to to a unique name.
1894 * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Renamed from WebCore/platform/graphics/qt/FontCustomPlatformData.cpp.
1896 2010-02-08 Nikolas Zimmermann <nzimmermann@rim.com>
1898 Reviewed by Dirk Schulze.
1900 All SVG *-expected.txt files contain wrong results
1901 https://bugs.webkit.org/show_bug.cgi?id=34703
1903 Finally dump meaningful information for SVG layout tests.
1904 Use 'absoluteClippedOverflowRect' which goes through the same code paths used
1905 to actually calculate repaint rects etc - instead of the legacy CSS-unaware
1906 code path that mapped 'repaintRectInLocalCoordinates' through 'absoluteTransform'.
1907 Remove absoluteTransform() - a long standing TODO, finally not needed anymore.
1909 Despite SVGRenderTreeAsText, SVGPaintServerGradient was also using absoluteTransform().
1910 Rewrite the code in question, fixing svg/W3C-SVG-1.1/pserver-grad-08-b.svg alignment issues
1911 when scaling/panning text using gradient on stroke/fill. Affects some other gradient tests as well.
1913 As we're now dumping clipped overflow rects any problems with repaint rects will become
1914 immediate visible - it turns out we're not supporting the overflow rules on the outermost <svg>
1915 element properly (repaint rects and bounding boxes need to take special SVG overflow rules into account).
1916 Fixing that magically gives pixel-perfect clipped overflow rects for all types of shapes/text/containers.
1918 Note: This will break any overriden platform-specific SVG results, need to wait for build bots in order to update them.
1920 * rendering/RenderObject.cpp: Remove absoluteTransform() method, centralize overflow query code in SVGRenderSupport::isOverflowHidden().
1921 * rendering/RenderObject.h: Remove absoluteTransform() method.
1922 * rendering/RenderSVGHiddenContainer.h: Ditto.
1923 * rendering/RenderSVGRoot.cpp:
1924 (WebCore::RenderSVGRoot::paint): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode.
1925 (WebCore::RenderSVGRoot::computeRectForRepaint): Respect SVG overflow rules here: clip repaintRect against overflow rect _before_ passing
1926 along to RenderBox. This is the key issue behind wrong absoluteClippedOverflowRect() values.
1927 (WebCore::RenderSVGRoot::nodeAtPoint): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode.
1928 * rendering/RenderSVGRoot.h: Remove absoluteTransform(). Don't expose viewportSize() anymore.
1929 * rendering/RenderSVGText.cpp:
1930 (WebCore::RenderSVGText::strokeBoundingBox): Fix default stroke width to 1. This was the only wrong place -> fixes repaint rects for stroked text.
1931 * rendering/RenderSVGViewportContainer.cpp: Remove absoluteTransform() method.
1932 (WebCore::RenderSVGViewportContainer::pointIsInsideViewportClip): Use SVGRenderSupport::isOverflowHidden() to query SVG overflow mode.
1933 * rendering/RenderSVGViewportContainer.h: Remove absoluteTransform() method.
1934 * rendering/SVGRenderSupport.cpp: Refactored overflow queries in one place, centralizing SVG specific assumptions about overflowX/Y.
1935 (WebCore::SVGRenderBase::isOverflowHidden):
1936 * rendering/SVGRenderSupport.h:
1937 * rendering/SVGRenderTreeAsText.cpp: Dump absoluteClippedOverflowRect() instead of absoluteTransform().mapRect(repaintRectInLocalCoordinates()).
1938 (WebCore::writePositionAndStyle): Affects all layout tests dumping render trees.
1939 * svg/graphics/SVGPaintServerGradient.cpp: Rewrite Gradient on text fill/stroke support on Cg, to avoid using absoluteTransform().
1940 (WebCore::absoluteTransformForRenderer):
1941 (WebCore::createMaskAndSwapContextForTextGradient):
1942 (WebCore::clipToTextMask):
1943 (WebCore::SVGPaintServerGradient::setup):
1945 2010-02-07 Daniel Bates <dbates@webkit.org>
1947 Reviewed by Darin Adler.
1949 https://bugs.webkit.org/show_bug.cgi?id=34402
1951 Implements all of the numeric CSS3 list-style-types as per
1952 section 4.3 of the CSS3 Lists module <http://www.w3.org/TR/css3-lists/#numeric>.
1954 Test: fast/lists/w3-css3-list-styles-numeric.html
1956 * css/CSSPrimitiveValueMappings.h:
1957 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1958 * css/CSSValueKeywords.in:
1959 * inspector/front-end/SourceCSSTokenizer.re2js:
1960 * platform/text/CharacterNames.h: Added constant hyphenMinus.
1961 * rendering/RenderListMarker.cpp:
1962 (WebCore::): Defined enum SequenceType.
1963 (WebCore::toAlphabeticOrNumeric): Added.
1964 (WebCore::toAlphabetic): Modified to call WebCore::toAlphabeticOrNumeric.
1965 (WebCore::toNumeric): Added.
1966 (WebCore::listMarkerSuffix):
1967 (WebCore::listMarkerText):
1968 (WebCore::RenderListMarker::paint):
1969 (WebCore::RenderListMarker::calcPrefWidths):
1970 (WebCore::RenderListMarker::getRelativeMarkerRect):
1971 * rendering/style/RenderStyle.h:
1973 * rendering/style/RenderStyleConstants.h: Added numeric list style types
1974 and fixed indent level for the enum values.
1977 2010-02-07 Ismail Donmez <ismail@namtrac.org>
1979 Reviewed by Darin Adler.
1981 Include wtf/StringExtras.h for strdup definition, which
1982 is needed for WinCE.
1984 * bridge/IdentifierRep.h:
1986 2010-02-07 Pavel Feldman <pfeldman@chromium.org>
1988 Reviewed by Timothy Hatcher.
1990 Web Inspector: Fragment-held Elements Not Shown in Inspector.
1992 https://bugs.webkit.org/show_bug.cgi?id=34680
1994 * inspector/InspectorDOMAgent.cpp:
1995 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1996 (WebCore::InspectorDOMAgent::buildObjectForNode):
1997 * inspector/front-end/ElementsTreeOutline.js:
1998 (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
2000 2010-02-07 Jian Li <jianli@chromium.org>
2002 Reviewed by Darin Fisher.
2004 [chromium] Change chromium interface to handle DownloadURL format.
2005 https://bugs.webkit.org/show_bug.cgi?id=34655
2007 * platform/chromium/ChromiumDataObject.cpp:
2008 (WebCore::ChromiumDataObject::clear):
2009 (WebCore::ChromiumDataObject::hasData):
2010 (WebCore::ChromiumDataObject::ChromiumDataObject):
2011 * platform/chromium/ChromiumDataObject.h:
2012 * platform/chromium/ClipboardChromium.cpp:
2013 (WebCore::ClipboardChromium::setData):
2015 2010-02-06 Dimitri Glazkov <dglazkov@chromium.org>
2017 No review, rolling out r54364.
2018 http://trac.webkit.org/changeset/54364
2019 https://bugs.webkit.org/show_bug.cgi?id=34464
2021 Introduced asserts in layout tests, needs more testing
2024 * accessibility/chromium/AXObjectCacheChromium.cpp:
2025 (WebCore::AXObjectCache::postPlatformNotification):
2026 * page/chromium/ChromeClientChromium.h:
2028 2010-02-06 Dimitri Glazkov <dglazkov@chromium.org>
2030 Reviewed by Adam Barth.
2032 Using inlines and function-level statics don't mix, according to gcc.
2033 https://bugs.webkit.org/show_bug.cgi?id=34663
2035 De-inline deviceRGBColorSpaceRef to avoid gcc-bug landmines.
2037 It appears that the initialization check, generated by gcc doesn't account
2038 for a possibility that the function may be inlined, resulting in lazy
2039 initialization failure for more than one inlined instance of the function.
2041 No behavior change, so no new tests.
2043 * platform/graphics/cg/GraphicsContextCG.cpp:
2044 (WebCore::deviceRGBColorSpaceRef):
2045 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
2047 2010-02-05 Geoffrey Garen <ggaren@apple.com>
2049 Reviewed by Dan Bernstein.
2051 Added an ASSERT to catch an implausible but theoretically possible leak.
2053 In theory, if malloc allocated a UChar buffer directly after a StringImpl,
2054 the StringImpl might incorrecly assume that the UChar buffer was inline,
2055 and fail to delete it.
2057 This ASSERT is somewhat academic, since we don't use the same allocator
2058 in debug builds, but oh well.
2060 * platform/text/StringImpl.cpp:
2061 (WebCore::StringImpl::StringImpl):
2062 (WebCore::StringImpl::createUninitialized):
2063 * platform/text/StringImpl.h: Separated the inline buffer StringImpl
2064 constructor from the out-of-line buffer StringImpl constructor. Made
2065 the former ASSERT that its buffer was indeed inline, and the latter ASSERT
2066 that its buffer was indeed not inline.
2068 2010-02-05 Chris Marrin <cmarrin@apple.com>
2070 Reviewed by Simon Fraser.
2072 Fixed changed virtual function in GraphicsLayerCACF and call order issues
2073 https://bugs.webkit.org/show_bug.cgi?id=34348
2075 The correct virtual function in GraphicsLayerCACF is now being
2076 called. We also fixed an issue in QTMovieWin where the size
2077 of the movie was not being set correctly because the call order
2080 I also changed the order of a couple of calls in QTMovieWin to account
2081 for changed calling order from the logic above.
2083 * platform/graphics/win/GraphicsLayerCACF.cpp:Update to new virtual function API
2084 (WebCore::GraphicsLayerCACF::setContentsToMedia):
2085 (WebCore::GraphicsLayerCACF::updateContentsMedia):
2086 * platform/graphics/win/GraphicsLayerCACF.h:Update to new virtual function API
2087 (WebCore::GraphicsLayerCACF::):
2088 * platform/graphics/win/QTMovieWin.cpp:
2089 (QTMovieWinPrivate::cacheMovieScale):Fix a bug where ratio was computed wrong because it was using integer math
2090 (QTMovieWinPrivate::task):Compute movie scale before computing movie size so values are correct
2091 (QTMovieWinPrivate::setSize):Move movie size update to updateMovieSize()
2092 (QTMovieWinPrivate::updateMovieSize):Wrap size update in a new call so it can be used from multiple places
2094 2010-02-05 Enrica Casucci <enrica@apple.com>
2096 Reviewed by Simon Fraser.
2098 Horizontal scrollbar works in reverse at milliondollarcu.be
2099 <rdar://problem/7556121>
2100 https://bugs.webkit.org/show_bug.cgi?id=33848
2102 Added a manual test.
2104 * manual-tests/win: Added.
2105 * manual-tests/win/horizontal-scroll-composited.html: Added.
2106 * platform/graphics/win/WKCACFLayerRenderer.cpp:
2107 (WebCore::WKCACFLayerRenderer::setScrollFrame):
2108 (WebCore::WKCACFLayerRenderer::setRootChildLayer):
2110 2010-02-05 Ryan Leavengood <leavengood@gmail.com>
2112 Reviewed by David Levin.
2114 Implementation of GlyphPage::fill() for Haiku port.
2115 https://bugs.webkit.org/show_bug.cgi?id=34527
2117 Covered by existing tests.
2119 * platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp
2121 2010-01-19 Kenneth Rohde Christiansen <kenneth@webkit.org>
2123 Reviewed by Dave Hyatt.
2125 Implement flattening of framesets
2126 https://bugs.webkit.org/show_bug.cgi?id=32717
2128 The following patch, builds ontop of Antti Koivisto's frameset
2129 flattening code from the iPhone source, which itself is based on
2130 the old Nokia Series 60 source.
2132 Layout tests have been added to test the functionality and the original
2133 code which has then been fixed to make these pass, as well as support
2136 Tests: fast/frames/flattening/frameset-flattening-advanced.html
2137 fast/frames/flattening/frameset-flattening-grid.html
2138 fast/frames/flattening/frameset-flattening-simple.html
2139 fast/frames/flattening/frameset-flattening-subframe-resize.html
2140 fast/frames/flattening/frameset-flattening-subframesets.html
2142 * page/FrameView.cpp:
2143 (WebCore::FrameView::layout):
2144 (WebCore::FrameView::scheduleRelayout):
2145 * page/Settings.cpp:
2146 (WebCore::Settings::Settings):
2147 (WebCore::Settings::setFrameSetFlatteningEnabled):
2149 (WebCore::Settings::frameSetFlatteningEnabled):
2150 * rendering/RenderFrame.cpp:
2151 (WebCore::RenderFrame::layoutWithFlattening):
2152 * rendering/RenderFrame.h:
2153 * rendering/RenderFrameSet.cpp:
2154 (WebCore::RenderFrameSet::layout):
2155 (WebCore::RenderFrameSet::positionFramesWithFlattening):
2156 (WebCore::RenderFrameSet::flattenFrameSet):
2157 (WebCore::RenderFrameSet::userResize):
2158 * rendering/RenderFrameSet.h:
2160 2010-02-05 Simon Fraser <simon.fraser@apple.com>
2162 Reviewed by Dan Bernstein.
2164 Changing display type of parent of input on focus causes input field to not receive key events
2165 https://bugs.webkit.org/show_bug.cgi?id=34620
2166 <rdar://problem/7584572>
2168 When layout affects a text input, the RenderTextControl gets destroyed and
2169 recreated, which in turn makes a new innerTextElement. However, if the text field was
2170 focused, the VisibleSelection is left pointing to the old innerTextElement, so text
2171 input no longer works.
2173 The fix is to call updateFocusAppearanceSoon() when attaching the input element,
2174 which will update the selection if necessary.
2176 Test: fast/forms/restore-selection-after-layout.html
2178 * dom/Document.h: Add a paramter to updateFocusAppearanceSoon() and a member variable,
2179 m_updateFocusAppearanceRestoresSelection, to store its value until the timer fires.
2181 (WebCore::Document::Document): Initialize m_updateFocusAppearanceRestoresSelection
2182 (WebCore::Document::updateFocusAppearanceSoon): New restorePreviousSelection parameter.
2183 (WebCore::Document::updateFocusAppearanceTimerFired): Pass m_updateFocusAppearanceRestoresSelection down.
2185 (WebCore::Element::attach): Call updateFocusAppearanceSoon() with false.
2186 * dom/Element.h: The updateFocusAppearanceSoonAfterAttach() was undefined.
2187 * html/HTMLInputElement.cpp:
2188 (WebCore::HTMLInputElement::attach): Call document()->updateFocusAppearanceSoon() with true.
2190 2010-02-05 Pavel Feldman <pfeldman@chromium.org>
2192 Reviewed by Timothy Hatcher.
2194 Web Inspector: simplify cookies view, introduce DataGrid::autoSizeColumns.
2196 https://bugs.webkit.org/show_bug.cgi?id=34646
2198 * inspector/front-end/CookieItemsView.js:
2199 (WebInspector.CookieItemsView):
2200 (WebInspector.CookieItemsView.prototype.show):
2201 (WebInspector.CookieItemsView.prototype._update):
2202 (WebInspector.CookieItemsView.prototype._updateWithCookies):
2203 (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
2204 (WebInspector.CookieItemsView.prototype._createDataGrid):
2205 (WebInspector.CookieItemsView.prototype._populateDataGrid.expiresCompare):
2206 (WebInspector.CookieItemsView.prototype._populateDataGrid):
2207 (WebInspector.CookieItemsView.prototype._createSimpleDataGrid):
2208 (WebInspector.CookieItemsView.prototype._populateSimpleDataGrid):
2209 (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
2210 (WebInspector.CookieItemsView.prototype._refreshButtonClicked):
2211 * inspector/front-end/DOMStorageItemsView.js:
2212 (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries):
2213 (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
2214 * inspector/front-end/DataGrid.js:
2215 (WebInspector.DataGrid):
2216 (WebInspector.DataGrid.prototype.autoSizeColumns):
2217 * inspector/front-end/DatabaseQueryView.js:
2218 (WebInspector.DatabaseQueryView.prototype._queryFinished):
2219 * inspector/front-end/DatabaseTableView.js:
2220 (WebInspector.DatabaseTableView.prototype._queryFinished):
2221 * inspector/front-end/StoragePanel.js:
2222 (WebInspector.StoragePanel.prototype.dataGridForResult):
2224 2010-02-04 Pavel Feldman <pfeldman@chromium.org>
2226 Reviewed by Timothy Hatcher.
2228 Web Inspector: group cookies by frame, show total
2229 cookies size, allow sorting cookie table.
2231 https://bugs.webkit.org/show_bug.cgi?id=34617
2233 * English.lproj/localizedStrings.js:
2234 * inspector/InspectorController.cpp:
2235 (WebCore::InspectorController::deleteCookie):
2236 * inspector/front-end/CookieItemsView.js:
2237 (WebInspector.CookieItemsView):
2238 (WebInspector.CookieItemsView.prototype.update):
2239 (WebInspector.CookieItemsView.prototype._updateWithCookies):
2240 (WebInspector.CookieItemsView.prototype._cookiesForDomain):
2241 (WebInspector.CookieItemsView.prototype.dataGridForCookies):
2242 (WebInspector.CookieItemsView.prototype._createNodes):
2243 (WebInspector.CookieItemsView.prototype._sortData.localeCompare):
2244 (WebInspector.CookieItemsView.prototype._sortData.numberCompare):
2245 (WebInspector.CookieItemsView.prototype._sortData.expiresCompare):
2246 (WebInspector.CookieItemsView.prototype._sortData):
2247 * inspector/front-end/StoragePanel.js:
2248 (WebInspector.StoragePanel.prototype.showCookies):
2249 (WebInspector.CookieSidebarTreeElement):
2250 (WebInspector.CookieSidebarTreeElement.prototype.onselect):
2251 (WebInspector.CookieSidebarTreeElement.prototype.get subtitle):
2252 (WebInspector.CookieSidebarTreeElement.prototype.set subtitle):
2253 * inspector/front-end/inspector.js:
2254 (WebInspector.updateResource):
2256 2010-02-05 Maxime Simone <simon.maxime@gmail.com>
2258 Reviewed by David Levin.
2260 More robust conversion from BString to String for Haiku port.
2261 https://bugs.webkit.org/show_bug.cgi?id=34527
2263 Covered by existing tests.
2265 * platform/text/haiku/StringHaiku.cpp: Fixed include order, Improved coversion from BString.
2267 2010-02-05 Steve Falkenburg <sfalken@apple.com>
2269 Reviewed by Adam Roben.
2273 * WebCore.vcproj/WebCore.make:
2275 2010-02-05 Csaba Osztrogonác <ossy@webkit.org>
2277 Reviewed by Dirk Schulze.
2278 Rubber-stamped by Kenneth Rohde Christiansen.
2280 [Qt] Modifying SVG path dumping to equal to other ports
2281 https://bugs.webkit.org/show_bug.cgi?id=33784
2283 * platform/graphics/qt/PathQt.cpp:
2284 (WebCore::Path::debugString): Path dumping style is aproached to Mac.
2286 2010-02-05 Sebastian Dröge <sebastian.droege@collabora.co.uk>
2288 Reviewed by Gustavo Noronha.
2290 Add a GStreamer HTTP/HTTPS source, using WebKit infrastructure
2291 https://bugs.webkit.org/show_bug.cgi?id=34317
2294 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2295 (WebCore::mediaPlayerPrivateSourceChangedCallback):
2296 (WebCore::doGstInit):
2297 * platform/graphics/gtk/WebKitWebSourceGStreamer.cpp:
2298 * platform/graphics/gtk/WebKitWebSourceGStreamer.h:
2299 Add a GStreamer HTTP/HTTPS source, using the WebKit infrastructure.
2300 This makes sure that referer, cookies, authentication information
2301 and all kinds of other context are passed to GStreamer for websites
2302 like Vimeo or YouTube.
2304 2010-02-05 Nate Chapin <japhet@chromium.org>
2306 Reviewed by Dimitri Glazkov.
2308 [V8] Clean up code for getting a v8::FunctionTemplate.
2310 https://bugs.webkit.org/show_bug.cgi?id=34606
2312 * bindings/scripts/CodeGeneratorV8.pm: Making GetTemplate() public
2313 * bindings/v8/V8Binding.cpp:
2314 (WebCore::configureTemplate):
2315 * bindings/v8/V8DOMWrapper.cpp: Remove getTemplate(), use V8ClassIndex::getTemplate() instead.
2316 (WebCore::V8DOMWrapper::getConstructor):
2317 (WebCore::V8DOMWrapper::instantiateV8Object):
2318 * bindings/v8/V8DOMWrapper.h:
2319 (WebCore::V8DOMWrapper::lookupDOMWrapper):
2320 * bindings/v8/V8Index.cpp: Remove duplicate caching of FunctionTemplates.
2321 (WebCore::V8ClassIndex::getTemplate):
2322 * bindings/v8/V8Index.h:
2323 * bindings/v8/WorkerContextExecutionProxy.cpp:
2324 (WebCore::WorkerContextExecutionProxy::toV8):
2325 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
2326 (WebCore::v8HTMLAudioElementConstructorCallback):
2327 (WebCore::V8HTMLAudioElementConstructor::GetTemplate):
2328 * bindings/v8/custom/V8HTMLAudioElementConstructor.h:
2329 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
2330 (WebCore::v8HTMLImageElementConstructorCallback):
2331 (WebCore::V8HTMLImageElementConstructor::GetTemplate):
2332 * bindings/v8/custom/V8HTMLImageElementConstructor.h:
2333 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
2334 (WebCore::v8HTMLOptionElementConstructorCallback):
2335 (WebCore::V8HTMLOptionElementConstructor::GetTemplate):
2336 * bindings/v8/custom/V8HTMLOptionElementConstructor.h:
2337 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2338 (WebCore::createInjectedScriptHostV8Wrapper):
2340 2010-02-05 Siddharth Mathur <siddharth.mathur@nokia.com>
2342 Reviewed by Ariya Hidayat.
2344 [Qt] Build break in QtWebkit on Symbian
2345 https://bugs.webkit.org/show_bug.cgi?id=34597
2347 * plugins/PluginView.h:
2349 2010-02-05 Yury Semikhatsky <yurys@chromium.org>
2351 Reviewed by Pavel Feldman.
2353 - Use SerializedScriptValue for passing data between injected script and
2355 - Remove custom JSON implementation from the instpector utility script.
2356 - Make sure that only objects created in the same ScriptState can be values
2357 of ScriptObject/Array properties and arguments to ScriptFunctionCall. We don't
2358 want ScriptObjects to leak between contexts.
2359 - Use ScriptState of the 'this' object in ScriptFunctionCall instead of passing
2360 it as additional parameter.
2362 https://bugs.webkit.org/show_bug.cgi?id=33592
2364 * bindings/js/JSInjectedScriptHostCustom.cpp:
2365 (WebCore::JSInjectedScriptHost::reportDidDispatchOnInjectedScript):
2366 * bindings/js/ScriptArray.cpp:
2367 (WebCore::ScriptArray::set):
2368 * bindings/js/ScriptFunctionCall.cpp:
2369 (WebCore::ScriptFunctionCall::ScriptFunctionCall):
2370 (WebCore::ScriptFunctionCall::appendArgument):
2371 * bindings/js/ScriptFunctionCall.h:
2372 * bindings/js/ScriptObject.cpp:
2373 (WebCore::ScriptObject::set):
2374 * bindings/js/ScriptValue.cpp:
2375 (WebCore::ScriptValue::serialize):
2376 (WebCore::ScriptValue::deserialize):
2377 * bindings/js/ScriptValue.h:
2378 * bindings/v8/ScriptArray.cpp:
2379 (WebCore::ScriptArray::set):
2380 * bindings/v8/ScriptFunctionCall.cpp:
2381 (WebCore::ScriptFunctionCall::ScriptFunctionCall):
2382 (WebCore::ScriptFunctionCall::appendArgument):
2383 * bindings/v8/ScriptFunctionCall.h:
2384 * bindings/v8/ScriptObject.cpp:
2385 (WebCore::ScriptObject::set):
2386 * bindings/v8/ScriptState.h:
2387 * bindings/v8/ScriptValue.cpp:
2388 (WebCore::ScriptValue::serialize):
2389 (WebCore::deserialize):
2390 * bindings/v8/ScriptValue.h:
2391 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2392 (WebCore::V8InjectedScriptHost::reportDidDispatchOnInjectedScriptCallback):
2393 * inspector/InjectedScript.cpp:
2394 (WebCore::InjectedScript::dispatch):
2395 (WebCore::InjectedScript::callFrames):
2396 (WebCore::InjectedScript::wrapForConsole):
2397 (WebCore::InjectedScript::releaseWrapperObjectGroup):
2398 * inspector/InjectedScript.h:
2399 * inspector/InjectedScriptHost.cpp:
2400 (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript):
2401 * inspector/InjectedScriptHost.h:
2402 * inspector/InjectedScriptHost.idl:
2403 * inspector/InspectorBackend.cpp:
2404 (WebCore::InspectorBackend::dispatchOnInjectedScript):
2405 * inspector/InspectorController.cpp:
2406 (WebCore::InspectorController::setFrontendProxyObject):
2407 (WebCore::InspectorController::didPause):
2408 (WebCore::InspectorController::didEvaluateForTestInFrontend):
2409 * inspector/InspectorFrontend.cpp:
2410 (WebCore::InspectorFrontend::InspectorFrontend):
2411 (WebCore::InspectorFrontend::newScriptArray):
2412 (WebCore::InspectorFrontend::newScriptObject):
2413 (WebCore::InspectorFrontend::populateFrontendSettings):
2414 (WebCore::InspectorFrontend::updateConsoleMessageExpiredCount):
2415 (WebCore::InspectorFrontend::addConsoleMessage):
2416 (WebCore::InspectorFrontend::updateConsoleMessageRepeatCount):
2417 (WebCore::InspectorFrontend::updateResource):
2418 (WebCore::InspectorFrontend::removeResource):
2419 (WebCore::InspectorFrontend::didGetResourceContent):
2420 (WebCore::InspectorFrontend::updateFocusedNode):
2421 (WebCore::InspectorFrontend::setAttachedWindow):
2422 (WebCore::InspectorFrontend::addRecordToTimeline):
2423 (WebCore::InspectorFrontend::parsedScriptSource):
2424 (WebCore::InspectorFrontend::failedToParseScriptSource):
2425 (WebCore::InspectorFrontend::addProfileHeader):
2426 (WebCore::InspectorFrontend::setRecordingProfile):
2427 (WebCore::InspectorFrontend::didGetProfileHeaders):
2428 (WebCore::InspectorFrontend::didGetProfile):
2429 (WebCore::InspectorFrontend::pausedScript):
2430 (WebCore::InspectorFrontend::setDocument):
2431 (WebCore::InspectorFrontend::setDetachedRoot):
2432 (WebCore::InspectorFrontend::setChildNodes):
2433 (WebCore::InspectorFrontend::childNodeCountUpdated):
2434 (WebCore::InspectorFrontend::childNodeInserted):
2435 (WebCore::InspectorFrontend::childNodeRemoved):
2436 (WebCore::InspectorFrontend::attributesUpdated):
2437 (WebCore::InspectorFrontend::didRemoveNode):
2438 (WebCore::InspectorFrontend::didGetChildNodes):
2439 (WebCore::InspectorFrontend::didApplyDomChange):
2440 (WebCore::InspectorFrontend::didGetEventListenersForNode):
2441 (WebCore::InspectorFrontend::didGetCookies):
2442 (WebCore::InspectorFrontend::didDispatchOnInjectedScript):
2443 (WebCore::InspectorFrontend::addDatabase):
2444 (WebCore::InspectorFrontend::selectDatabase):
2445 (WebCore::InspectorFrontend::didGetDatabaseTableNames):
2446 (WebCore::InspectorFrontend::addDOMStorage):
2447 (WebCore::InspectorFrontend::selectDOMStorage):
2448 (WebCore::InspectorFrontend::didGetDOMStorageEntries):
2449 (WebCore::InspectorFrontend::didSetDOMStorageItem):
2450 (WebCore::InspectorFrontend::didRemoveDOMStorageItem):
2451 (WebCore::InspectorFrontend::updateDOMStorage):
2452 (WebCore::InspectorFrontend::addNodesToSearchResult):
2453 (WebCore::InspectorFrontend::contextMenuItemSelected):
2454 (WebCore::InspectorFrontend::evaluateForTestInFrontend):
2455 (WebCore::InspectorFrontend::callSimpleFunction):
2456 * inspector/InspectorFrontend.h:
2457 (WebCore::InspectorFrontend::scriptState):
2458 * inspector/front-end/InjectedScript.js:
2459 (injectedScriptConstructor):
2460 (injectedScriptConstructor.):
2461 * inspector/front-end/InjectedScriptAccess.js:
2462 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName.myCallback):
2463 (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
2464 (InjectedScriptAccess._installHandler):
2465 * inspector/front-end/inspector.js:
2466 (WebInspector.pausedScript):
2467 (WebInspector.addConsoleMessage):
2469 2010-02-05 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2471 Reviewed by Simon Hausmann.
2473 [Qt] Generate convenience headers (QWebView, etc) using qmake
2475 In Qt this is done using syncqt, but we use a pro-file instead
2476 that generates makefile-rules for each of the extra headers.
2478 These extra headers are installed alongside the normal headers.
2480 * WebCore.pro: Use headers.pri based on DerivedSources instead
2481 of the one previously checked in in the source tree.
2483 2010-02-05 Mikhail Naganov <mnaganov@chromium.org>
2485 Reviewed by Pavel Feldman.
2487 Enable JAVASCRIPT_DEBUGGER in chromium port.
2489 https://bugs.webkit.org/show_bug.cgi?id=34638
2495 2010-02-05 Pavel Feldman <pfeldman@chromium.org>
2497 Reviewed by Timothy Hatcher.
2499 Web Inspector: Tab width for javascript source is 8, should be 4
2501 https://bugs.webkit.org/show_bug.cgi?id=31248
2503 * inspector/front-end/SourceFrame.js:
2504 (WebInspector.SourceFrame):
2505 * inspector/front-end/TextEditorModel.js:
2506 (WebInspector.TextEditorModel.prototype.set replaceTabsWithSpaces):
2507 (WebInspector.TextEditorModel.prototype._innerSetText):
2508 (WebInspector.TextEditorModel.prototype._replaceTabsIfNeeded):
2510 2010-02-05 Tony Chang <tony@chromium.org>
2512 Reviewed by Eric Seidel.
2514 https://bugs.webkit.org/show_bug.cgi?id=24872
2515 When pasting a list into another list should not indent another level.
2516 If the cursor is at the beginning of the line, it should insert the
2517 list items before the current list item. If the cursor is at the end
2518 of the line, it should insert the list items after the current list item.
2520 This matches Firefox and IE and makes the common activity of reordering a list
2523 This also adds a small helper method (isListItem) to htmlediting.h.
2525 Test: editing/pasteboard/paste-list-002.html
2527 * editing/ReplaceSelectionCommand.cpp:
2528 (WebCore::ReplaceSelectionCommand::doApply):
2529 (WebCore::ReplaceSelectionCommand::insertAsListItems):
2530 * editing/ReplaceSelectionCommand.h:
2531 * editing/htmlediting.cpp:
2532 (WebCore::isListItem):
2533 (WebCore::appendedSublist):
2534 * editing/htmlediting.h:
2536 2010-02-04 Mark Rowe <mrowe@apple.com>
2538 Reviewed by Timothy Hatcher.
2540 Build fix. Remove a symbol corresponding to an inline function from the linker export
2541 file to prevent a weak external failure.
2543 * WebCore.base.exp: Remove symbol.
2544 * WebCore.xcodeproj/project.pbxproj: Accommodate rename of script.
2546 2010-02-04 Geoffrey Garen <ggaren@apple.com>
2548 Reviewed by Oliver Hunt.
2550 Updated to use new WeakGCPtr::clear interface.
2552 * bindings/js/JSEventListener.cpp:
2553 * bindings/js/JSEventListener.h:
2554 (WebCore::JSEventListener::invalidateJSFunction):
2556 2010-02-04 Geoffrey Garen <ggaren@apple.com>
2558 Build fix: Added a forwarding header.
2560 * ForwardingHeaders/runtime/WeakGCPtr.h: Added.
2562 2010-02-04 Geoffrey Garen <ggaren@apple.com>
2564 Reviewed by Alexey Proskuryakov and Darin Adler.
2566 REGRESSION (r52082): Missing event handlers on JQuery demo page (33383)
2567 https://bugs.webkit.org/show_bug.cgi?id=33383
2568 <rdar://problem/7559449>
2570 There were two bugs here:
2572 1. A stale wrapper would invalidate a node's event listeners, even if
2573 the node had a fresh wrapper keeping it alive.
2575 The fix for this is for an event listener to keep a WeakGCPtr back-pointer
2576 to the wrapper it expects to mark it. The wrapper destructor checks this
2577 back-pointer, and only invalidates the event listener in the case of a match.
2579 2. Conversely, a stale wrapper would not invalidate a node's event
2580 listeners soon enough, if its destructor didn't have a chance to run
2581 before an event fired on the node. (This can only happen in cases where
2582 we've made some other error and failed to mark a wrapper that was circuitously
2583 observable in the DOM. But we know we have edge case bugs like this, and
2584 we don't want them to be crashes.)
2586 The fix for this is to check the wrapper back-pointer before firing the
2587 event listener. As long as the the wrapper back-pointer is not null,
2588 it's safe to fire the listener.
2590 * ForwardingHeaders/runtime/WeakGCPtr.h: Added. Appease build gods.
2592 * bindings/js/JSAbstractWorkerCustom.cpp:
2593 (WebCore::JSAbstractWorker::addEventListener):
2594 (WebCore::JSAbstractWorker::removeEventListener):
2595 * bindings/js/JSDOMApplicationCacheCustom.cpp:
2596 (WebCore::JSDOMApplicationCache::addEventListener):
2597 (WebCore::JSDOMApplicationCache::removeEventListener):
2598 * bindings/js/JSDOMWindowCustom.cpp:
2599 (WebCore::JSDOMWindow::markChildren):
2600 (WebCore::JSDOMWindow::addEventListener):
2601 (WebCore::JSDOMWindow::removeEventListener): Updated to pass a wrapper
2602 to the JSEventListener constructor.
2604 * bindings/js/JSEventListener.cpp:
2605 (WebCore::JSEventListener::JSEventListener):
2606 (WebCore::JSEventListener::initializeJSFunction):
2607 (WebCore::JSEventListener::invalidateJSFunction):
2608 * bindings/js/JSEventListener.h:
2609 (WebCore::JSEventListener::create):
2610 (WebCore::JSEventListener::isolatedWorld):
2611 (WebCore::JSEventListener::wrapper):
2612 (WebCore::JSEventListener::setWrapper):
2613 (WebCore::JSEventListener::jsFunction):
2614 (WebCore::createJSAttributeEventListener): Implemented the back-pointer
2615 described above. Refactored the jsFunction() accessor to return 0 if
2616 the wrapper back-pointer is 0.
2618 * bindings/js/JSEventSourceCustom.cpp:
2619 (WebCore::JSEventSource::addEventListener):
2620 (WebCore::JSEventSource::removeEventListener):
2621 * bindings/js/JSLazyEventListener.cpp:
2622 (WebCore::JSLazyEventListener::JSLazyEventListener):
2623 (WebCore::JSLazyEventListener::initializeJSFunction):
2624 * bindings/js/JSLazyEventListener.h:
2625 (WebCore::JSLazyEventListener::create):
2626 * bindings/js/JSMessagePortCustom.cpp:
2627 (WebCore::JSMessagePort::markChildren):
2628 (WebCore::JSMessagePort::addEventListener):
2629 (WebCore::JSMessagePort::removeEventListener):
2630 * bindings/js/JSNodeCustom.cpp:
2631 (WebCore::JSNode::addEventListener):
2632 (WebCore::JSNode::removeEventListener):
2633 (WebCore::JSNode::markChildren):
2634 * bindings/js/JSSVGElementInstanceCustom.cpp:
2635 (WebCore::JSSVGElementInstance::addEventListener):
2636 (WebCore::JSSVGElementInstance::removeEventListener):
2637 * bindings/js/JSWebSocketCustom.cpp:
2638 (WebCore::JSWebSocket::addEventListener):
2639 (WebCore::JSWebSocket::removeEventListener):
2640 * bindings/js/JSWorkerContextCustom.cpp:
2641 (WebCore::JSWorkerContext::markChildren):
2642 (WebCore::JSWorkerContext::addEventListener):
2643 (WebCore::JSWorkerContext::removeEventListener):
2644 * bindings/js/JSXMLHttpRequestCustom.cpp:
2645 (WebCore::JSXMLHttpRequest::markChildren):
2646 (WebCore::JSXMLHttpRequest::addEventListener):
2647 (WebCore::JSXMLHttpRequest::removeEventListener):
2648 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2649 (WebCore::JSXMLHttpRequestUpload::markChildren):
2650 (WebCore::JSXMLHttpRequestUpload::addEventListener):
2651 (WebCore::JSXMLHttpRequestUpload::removeEventListener): Updated to pass a wrapper
2652 to the JSEventListener constructor.
2655 * bindings/js/ScriptEventListener.cpp:
2656 (WebCore::createAttributeEventListener): Updated to pass a wrapper
2657 to the JSEventListener constructor.
2658 (WebCore::getEventListenerHandlerBody): Updated for the fact that jsFunction()
2659 is no longer a virtual accessor on the EventHandler base class.
2661 * bindings/scripts/CodeGeneratorJS.pm: Updated for the fact that jsFunction()
2662 is no longer a virtual accessor on the EventHandler base class. Added a "JS"
2663 to invalidateEventListeners and markEventListeners to clarify that these
2664 actions are for JS event listeners only. Added a wrapper parameter to
2665 invalidateEventListeners for the back-pointer check explained above.
2667 * dom/EventListener.h:
2668 (WebCore::EventListener::invalidateJSFunction): ditto
2670 * dom/EventTarget.h:
2671 (WebCore::EventTarget::markJSEventListeners):
2672 (WebCore::EventTarget::invalidateJSEventListeners): ditto
2674 2010-02-04 Tony Chang <tony@chromium.org>
2676 Reviewed by Eric Seidel.
2678 https://bugs.webkit.org/show_bug.cgi?id=25002
2679 When inserting a new paragraph, avoid nesting empty divs. When
2680 pasting near the end of a paragraph, this prevents each paste
2681 command for getting nested one level deeper.
2683 Test: editing/inserting/paragraph-outside-nested-divs.html
2685 * editing/InsertParagraphSeparatorCommand.cpp:
2686 (WebCore::highestVisuallyEquivalentDiv):
2687 (WebCore::InsertParagraphSeparatorCommand::doApply):
2689 2010-02-04 Dumitru Daniliuc <dumi@chromium.org>
2691 Reviewed by Eric Seidel.
2693 1. Fix a bug in SQLiteTransaction: do not assume that COMMIT always
2695 2. Jump straight to the transaction error callback when a
2696 statement fails in a way that makes sqlite automatically rollback
2698 3. Fix the code that handles the "quota reached" failure, as it is
2699 one of the failures that lead to an automatic transaction
2702 https://bugs.webkit.org/show_bug.cgi?id=34280
2704 * platform/sql/SQLiteDatabase.cpp:
2705 (WebCore::SQLiteDatabase::isAutoCommitOn):
2706 * platform/sql/SQLiteDatabase.h:
2707 * platform/sql/SQLiteTransaction.cpp:
2708 (WebCore::SQLiteTransaction::begin):
2709 (WebCore::SQLiteTransaction::commit):
2710 (WebCore::SQLiteTransaction::rollback):
2711 (WebCore::SQLiteTransaction::transactionWasRolledBackBySqlite):
2712 * platform/sql/SQLiteTransaction.h:
2713 * storage/SQLTransaction.cpp:
2714 (WebCore::SQLTransaction::SQLTransaction):
2715 (WebCore::SQLTransaction::runStatements):
2716 (WebCore::SQLTransaction::runCurrentStatement):
2717 (WebCore::SQLTransaction::handleCurrentStatementError):
2718 (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
2720 2010-02-04 Peter Kasting <pkasting@google.com>
2722 Not reviewed, rollback.
2724 Rollback r54387, it doesn't fix builds and Chromium doesn't want this behavior.
2726 * platform/chromium/ScrollbarThemeChromiumMac.h:
2728 2010-02-04 Stephen White <senorblanco@chromium.org>
2730 Unreviewed, build fix.
2732 Fix for Chromium/Mac after palindromic scrollbar change (54345).
2734 Covered by many layout tests.
2736 * platform/chromium/ScrollbarThemeChromiumMac.h:
2737 (WebCore::ScrollbarThemeChromiumMac::maxOverlapBetweenPages):
2739 2010-02-04 Clemmitt Sigler <cmsigler@gmail.com>
2741 Reviewed by David Levin.
2743 WebKitGTK doesn't build GtkLauncher when --enable-mathml is specified.
2744 Updated WebCore/GNUmakefile.am to include needed files in build.
2746 https://bugs.webkit.org/show_bug.cgi?id=34387
2752 2010-02-04 Stephan Aßmus <superstippi@gmx.de>
2754 Reviewed by David Levin.
2756 Misc coding style fixes in Haiku port code.
2757 https://bugs.webkit.org/show_bug.cgi?id=34527
2761 * platform/haiku/ContextMenuItemHaiku.cpp: Trailing white space, NULL -> 0
2762 * platform/haiku/DragImageHaiku.cpp: Trailing white space.
2763 * platform/haiku/FileChooserHaiku.cpp: Sorted headers.
2764 * platform/haiku/LocalizedStringsHaiku.cpp: Needed to include NotImplemented.h
2766 2010-02-04 Enrica Casucci <enrica@apple.com>
2768 Reviewed by Csaba Osztrogonac.
2770 Fixed crash on QT introduced with the fix for
2771 https://bugs.webkit.org/show_bug.cgi?id=34609
2773 The test has been added with the original patch.
2775 * platform/qt/ClipboardQt.cpp:
2776 (WebCore::ClipboardQt::writePlainText): Added missing allocation of m_writeData.
2778 2010-02-04 Christian Dywan <christian@twotoasts.de>
2780 Reviewed by Xan Lopez.
2782 Conditionalize third party cookie policy for libsoup 2.29.90.
2784 * platform/network/soup/CookieJarSoup.cpp:
2785 (WebCore::setCookies):
2786 * platform/network/soup/DNSSoup.cpp:
2787 (WebCore::prefetchDNS):
2788 * platform/network/soup/ResourceHandleSoup.cpp:
2789 (WebCore::restartedCallback):
2790 (WebCore::startHttp):
2791 * platform/network/soup/ResourceRequestSoup.cpp:
2792 (WebCore::ResourceRequest::toSoupMessage):
2793 (WebCore::ResourceRequest::updateFromSoupMessage):
2795 2010-02-04 Christian Dywan <christian@twotoasts.de>
2797 Rubber-stamped by Gustavo Noronha Silva.
2799 Add ENABLE(VIDEO) guards around freeOwnedGPtr<GstElement> implementation.
2801 * platform/gtk/GOwnPtrGtk.cpp:
2803 2010-02-04 Alexey Proskuryakov <ap@apple.com>
2805 Reviewed by Darin Adler.
2807 Assertion failure in CheckedRadioButtons::removeButton when using jQuery 1.4.1
2808 https://bugs.webkit.org/show_bug.cgi?id=34520
2810 Test: fast/dom/HTMLInputElement/cloned-input-checked-state.html
2812 * dom/Element.cpp: (WebCore::Element::cloneElementWithoutChildren): Copy non-attribute
2813 properties before attributes. Otherwise, copying "checked" attribute would make the cloned
2814 node checked, unchecking original (they share a name, and are thus in the same radio group).
2815 We do want the original to be unchecked, but we also want to know its original state in
2816 HTMLInputElement::copyNonAttributeProperties().
2818 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::copyNonAttributeProperties):
2819 Use setChecked instead of plain assignment to prevent m_checked getting out of sync with
2820 checkedRadioButtons. Also, copy field related to default checked state, so that m_checked
2821 won't be overridden when copying attributes.
2823 2010-02-04 Kevin Ollivier <kevino@theolliviers.com>
2825 [wx] Build fix after addition of Clipboard::writePlainText method.
2827 * platform/wx/ClipboardWx.cpp:
2828 (WebCore::ClipboardWx::writePlainText):
2829 * platform/wx/ClipboardWx.h:
2831 2010-02-04 Enrica Casucci <enrica@apple.com>
2833 Reviewed by Oliver Hunt.
2835 REGRESSION: Dragging plain text into a styled text region does not acquire the correct style info.
2836 <rdar://problem/7595685>
2837 https://bugs.webkit.org/show_bug.cgi?id=34609
2839 Test: editing/pasteboard/drop-inputtext-acquires-style.html
2841 The dragging code did not distinguish the case of dragging the content of an input control
2842 as a special case. The markup placed in the pasteboard included the style information.
2843 I've modified the Clipboard class interface adding a new method writePlainText to match the
2844 behavior of the copy and cut commands and modified the drag code to detect the special case.
2845 I've modified all the platform specific implementations of the Clipboard class.
2847 * dom/Clipboard.h: Added writePlainText pure virtual function.
2848 * editing/Editor.cpp:
2849 (WebCore::Editor::cut): Renamed nodeIsTextFormControl to isNodeInTextFormControl.
2850 (WebCore::Editor::copy): Renamed nodeIsTextFormControl to isNodeInTextFormControl.
2851 * editing/htmlediting.cpp:
2852 (WebCore::isNodeInTextFormControl): Added, after removing the implementation with the old name
2854 * editing/htmlediting.h:
2855 * page/DragController.cpp:
2856 (WebCore::DragController::startDrag):
2857 * platform/Pasteboard.h:
2858 * platform/android/ClipboardAndroid.cpp:
2859 (WebCore::ClipboardAndroid::writePlainText): Added.
2860 * platform/android/ClipboardAndroid.h:
2861 * platform/chromium/ClipboardChromium.cpp:
2862 (WebCore::ClipboardChromium::writePlainText): Added.
2863 * platform/chromium/ClipboardChromium.h:
2864 * platform/gtk/ClipboardGtk.cpp:
2865 (WebCore::ClipboardGtk::writePlainText): Added.
2866 * platform/gtk/ClipboardGtk.h:
2867 * platform/haiku/ClipboardHaiku.cpp:
2868 (WebCore::ClipboardHaiku::writePlainText): Added.
2869 * platform/haiku/ClipboardHaiku.h:
2870 * platform/mac/ClipboardMac.h:
2871 * platform/mac/ClipboardMac.mm:
2872 (WebCore::ClipboardMac::writePlainText): Added.
2873 * platform/mac/PasteboardMac.mm:
2874 (WebCore::Pasteboard::writePlainText): Added helper function.
2875 * platform/qt/ClipboardQt.cpp:
2876 (WebCore::ClipboardQt::writePlainText): Added.
2877 * platform/qt/ClipboardQt.h:
2878 * platform/win/ClipboardWin.cpp:
2879 (WebCore::ClipboardWin::writePlainText): Added.
2880 * platform/win/ClipboardWin.h:
2882 2010-02-04 Steve Block <steveblock@google.com>
2884 Reviewed by Nate Chapin.
2886 Fix bug in V8 convertNPVariantToJValue when converting float and double types
2887 https://bugs.webkit.org/show_bug.cgi?id=34593
2889 No new tests, build fix only.
2891 * bridge/jni/v8/JNIUtilityPrivate.cpp: Modified.
2892 (JSC::Bindings::convertNPVariantToJValue): Modified. Use correct members of 'result' enum.
2894 2010-02-04 Chris Guillory <chris.guillory@google.com>
2896 Reviewed by Darin Fisher.
2898 [Chromium] Notify ChromeClientChromium of AccessibilityObject state
2899 change notifications.
2901 https://bugs.webkit.org/show_bug.cgi?id=34464
2903 * accessibility/chromium/AXObjectCacheChromium.cpp:
2904 (WebCore::toChromeClientChromium):
2905 (WebCore::AXObjectCache::postPlatformNotification):
2906 * page/chromium/ChromeClientChromium.h:
2908 2010-02-04 Stephen White <senorblanco@chromium.org>
2910 Unreviewed, build fix for Chromium.
2912 Revert r54341 ("[v8] Remove clear method from DOM object maps"),
2913 since it causes the worker tests to fail on Chromium.
2915 * bindings/v8/DOMData.h:
2916 (WebCore::DOMData::removeObjectsFromWrapperMap):
2917 * bindings/v8/DOMDataStore.h:
2918 (WebCore::ChunkedTable::clear):
2919 (WebCore::ChunkedTable::clearEntries):
2920 (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::clear):
2921 (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::ChunkedTableTraits::clear):
2922 * bindings/v8/V8DOMMap.cpp:
2923 (WebCore::removeAllDOMObjectsInCurrentThreadHelper):
2924 (WebCore::removeAllDOMObjectsInCurrentThread):
2925 * bindings/v8/V8DOMMap.h:
2926 (WebCore::WeakReferenceMap::clear):
2927 * bindings/v8/WorkerScriptController.cpp:
2928 (WebCore::WorkerScriptController::~WorkerScriptController):
2930 2010-02-04 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
2932 Reviewed by Xan Lopez.
2934 [GTK] Crashes when an invalid hostname is pre-fetched
2935 https://bugs.webkit.org/show_bug.cgi?id=34602
2937 * platform/network/soup/DNSSoup.cpp:
2938 (WebCore::prefetchDNS): NULL-check the SoupURI that is created
2939 from the hostname; that will happen for invalid hostnames.
2941 2010-02-04 José Millán Soto <jmillan@igalia.com>
2943 Reviewed by Xan Lopez.
2945 [Gtk] webkitgtk crashed when Orca open
2946 https://bugs.webkit.org/show_bug.cgi?id=34463
2948 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2950 Checking if render objects are texts before calling toRenderText
2952 2010-02-04 Xan Lopez <xlopez@igalia.com>
2954 Reviewed by Gustavo Noronha.
2956 Set first party URI in all SoupMessages. This allows libsoup to
2957 implement a "no third party cookies" policy in case it wants
2958 to. Also start a non-JSC-specific, gtk-specific GOwnPtr module and
2961 * platform/network/soup/CookieJarSoup.cpp:
2962 (WebCore::setCookies):
2963 * platform/network/soup/ResourceHandleSoup.cpp:
2964 (WebCore::restartedCallback):
2965 (WebCore::startHttp):
2966 * platform/network/soup/ResourceRequestSoup.cpp:
2967 (WebCore::ResourceRequest::toSoupMessage):
2968 (WebCore::ResourceRequest::updateFromSoupMessage):
2970 2010-02-04 Pavel Feldman <pfeldman@chromium.org>
2972 Reviewed by Timothy Hatcher.
2974 Web Inspector: group cookies by domains, not frame's domains.
2976 https://bugs.webkit.org/show_bug.cgi?id=34599
2978 * inspector/front-end/CookieItemsView.js:
2979 (WebInspector.CookieItemsView.prototype._cookiesForDomain):
2980 * inspector/front-end/inspector.js:
2981 (WebInspector.updateResource):
2982 (WebInspector._addCookieDomain):
2984 2010-02-04 Nate Chapin <japhet@chromium.org>
2986 Reviewed by Dimitri Glazkov.
2988 [V8] Delete V8CustomBinding.h and all references to V8Custom
2990 https://bugs.webkit.org/show_bug.cgi?id=32638
2992 * bindings/v8/NPV8Object.cpp:
2993 * bindings/v8/V8DOMWindowShell.h:
2994 * bindings/v8/V8NPObject.cpp:
2995 * bindings/v8/V8Utilities.cpp:
2996 * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
2997 * bindings/v8/custom/V8AttrCustom.cpp:
2998 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2999 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3000 * bindings/v8/custom/V8ClipboardCustom.cpp:
3001 * bindings/v8/custom/V8CoordinatesCustom.cpp:
3002 * bindings/v8/custom/V8CustomBinding.h: Removed.
3003 * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
3004 * bindings/v8/custom/V8DOMWindowCustom.cpp:
3005 * bindings/v8/custom/V8DataGridColumnListCustom.cpp:
3006 * bindings/v8/custom/V8DatabaseCustom.cpp:
3007 * bindings/v8/custom/V8ElementCustom.cpp:
3008 * bindings/v8/custom/V8EventSourceConstructor.cpp:
3009 * bindings/v8/custom/V8EventSourceCustom.cpp:
3010 * bindings/v8/custom/V8GeolocationCustom.cpp:
3011 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
3012 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
3013 (WebCore::v8HTMLAudioElementConstructorCallback):
3014 (WebCore::V8HTMLAudioElementConstructor::GetTemplate):
3015 * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
3016 * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp:
3017 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
3018 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
3019 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
3020 (WebCore::v8HTMLImageElementConstructorCallback):
3021 (WebCore::V8HTMLImageElementConstructor::GetTemplate):
3022 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
3023 * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
3024 (WebCore::v8HTMLOptionElementConstructorCallback):
3025 (WebCore::V8HTMLOptionElementConstructor::GetTemplate):
3026 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
3027 * bindings/v8/custom/V8HistoryCustom.cpp:
3028 * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
3029 * bindings/v8/custom/V8LocationCustom.cpp:
3030 * bindings/v8/custom/V8MessagePortCustom.cpp:
3031 * bindings/v8/custom/V8NodeCustom.cpp:
3032 * bindings/v8/custom/V8NodeFilterCustom.cpp:
3033 * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
3034 * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3035 * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
3036 * bindings/v8/custom/V8SVGLengthCustom.cpp:
3037 * bindings/v8/custom/V8SharedWorkerCustom.cpp:
3038 * bindings/v8/custom/V8StorageCustom.cpp:
3039 * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
3040 * bindings/v8/custom/V8WebGLArrayCustom.h:
3041 * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
3042 * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
3043 * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
3044 * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
3045 * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
3046 * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
3047 * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
3048 * bindings/v8/custom/V8WebKitPointConstructor.cpp:
3049 * bindings/v8/custom/V8WorkerContextCustom.cpp:
3050 * bindings/v8/custom/V8WorkerCustom.cpp:
3051 * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
3052 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3053 * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
3055 2010-02-04 Ariya Hidayat <ariya.hidayat@gmail.com>
3057 Reviewed by Simon Hausmann.
3059 [Qt] Unnecessary QBrush construction for doing a solid fill
3060 https://bugs.webkit.org/show_bug.cgi?id=34559
3062 Use the similar trick like r37421, i.e. use the special brush for
3063 solid color to avoid creating QBrush again and again.
3065 * platform/graphics/qt/GraphicsContextQt.cpp:
3066 (WebCore::GraphicsContext::setPlatformFillColor):
3068 2010-02-04 Dan Bernstein <mitz@apple.com>
3070 Reviewed by Simon Fraser.
3072 REGRESSION (r53718): When scrolling a tall window by page, the overlap between pages is too big
3073 https://bugs.webkit.org/show_bug.cgi?id=34371
3075 Allow ScrollbarTheme to cap the overlap between pages, and set a cap of
3076 40 in ScrollbarThemeMac.
3078 * WebCore.base.exp: Export Scrollbar::maxOverlapBetweenPages().
3079 * editing/EditorCommand.cpp:
3080 (WebCore::verticalScrollDistance): Use Scrollbar methods instead of
3081 constants, and cap the scroll distance if needed.
3082 * platform/ScrollView.cpp:
3083 (WebCore::ScrollView::updateScrollbars): Ditto.
3084 (WebCore::ScrollView::wheelEvent): Ditto.
3085 * platform/Scrollbar.cpp:
3086 (WebCore::Scrollbar::maxOverlapBetweenPages): Added. Returns the
3087 value from the native scrollbar theme.
3088 * platform/Scrollbar.h: Replaced scroll amount constants with static methods.
3089 (WebCore::Scrollbar::pixelsPerLineStep): Replaces cScrollbarPixelsPerLineStep.
3090 (WebCore::Scrollbar::minFractionToStepWhenPaging): Replaces cFractionToStepWhenPaging.
3091 * platform/ScrollbarTheme.h:
3092 (WebCore::ScrollbarTheme::maxOverlapBetweenPages): A base implementation
3093 that returns the largest int.
3094 * platform/gtk/WheelEventGtk.cpp:
3095 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of
3097 * platform/haiku/PlatformWheelEventHaiku.cpp:
3098 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of
3100 * platform/mac/ScrollbarThemeMac.h:
3101 (WebCore::ScrollbarThemeMac::maxOverlapBetweenPages): An override
3103 * platform/mac/WheelEventMac.mm:
3104 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use
3105 Scrollbar::pixelsPerLineStep() instead of cScrollbarPixelsPerLineStep.
3106 * platform/wx/MouseWheelEventWx.cpp:
3107 (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use Scrollbar methods instead of
3109 * platform/wx/ScrollViewWx.cpp:
3110 (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents): Use Scrollbar
3111 methods instead of constants, and cap the scroll distance if needed.
3112 * rendering/RenderLayer.cpp:
3113 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Ditto.
3115 2010-02-04 No'am Rosenthal <noam.rosenthal@nokia.com>
3117 Reviewed by Ariya Hidayat.
3119 [Qt] Tuning and optimizations to GraphicsLayerQt. Reduce unnecessary
3120 recaching, remove QTimer::singleShot and QPixmap::scaled, more
3121 accurate strategy of handling transform operation blends. Rotating a
3122 bordered-table, for example, now runs at 50FPS instead of 40FPS on Maemo5.
3124 https://bugs.webkit.org/show_bug.cgi?id=34062
3126 This is tested by https://bugs.webkit.org/show_bug.cgi?id=34450, fps measurements.
3128 * platform/graphics/qt/GraphicsLayerQt.cpp:
3129 (WebCore::GraphicsLayerQtImpl::flushChanges): Fine-tune caching
3130 (WebCore::TransformAnimationQt::TransformAnimationQt): transform bugs
3131 (WebCore::OpacityAnimationQt::updateState): style change
3133 2010-02-04 Pavel Feldman <pfeldman@chromium.org>
3135 Reviewed by Timothy Hatcher.
3137 Web Inspector: Cookies for resources are not shown in storage panel.
3139 https://bugs.webkit.org/show_bug.cgi?id=34594
3141 * inspector/InspectorController.cpp:
3142 (WebCore::InspectorController::getCookies):
3143 * inspector/InspectorResource.cpp:
3144 (WebCore::InspectorResource::updateScriptObject):
3145 (WebCore::InspectorResource::cachedResource):
3146 * inspector/InspectorResource.h:
3147 (WebCore::InspectorResource::requestURL):
3149 2010-02-04 Anton Muhin <antonm@chromium.org>
3151 Reviewed by Adam Barth.
3153 [v8] Remove clear method from DOM object maps
3154 https://bugs.webkit.org/show_bug.cgi?id=34530
3156 No new tests. Should be covered by existent testing infrastructure.
3158 * bindings/v8/DOMData.h:
3159 * bindings/v8/DOMDataStore.h:
3160 * bindings/v8/V8DOMMap.cpp:
3161 * bindings/v8/V8DOMMap.h:
3162 * bindings/v8/WorkerScriptController.cpp:
3163 (WebCore::WorkerScriptController::~WorkerScriptController):
3165 2010-02-04 Holger Hans Peter Freyther <zecke@selfish.org>
3167 Reviewed by Xan Lopez.
3169 [Gtk] Check if the renderer() exists in textForObject.
3171 This is fixing a crash in the textForObject method. It can
3172 happen when inspecting AtkObjects in the accerciser, then
3173 navigating to a new page and still inspecting the old tree.
3175 In this case the AccessibilityObjectWrapperAtk was still
3176 valid but the included renderer() was returning 0. Add a
3177 check for the accObject->renderer() before trying to use
3180 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3183 2010-02-04 Yury Semikhatsky <yurys@chromium.org>
3185 Reviewed by Pavel Feldman.
3187 Provide strongly typed C++ interface for inspector's injected script.
3189 https://bugs.webkit.org/show_bug.cgi?id=33616
3194 * WebCore.vcproj/WebCore.vcproj:
3195 * WebCore.xcodeproj/project.pbxproj:
3196 * bindings/js/JSInjectedScriptHostCustom.cpp:
3197 (WebCore::InjectedScriptHost::injectedScriptFor):
3198 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3199 (WebCore::InjectedScriptHost::injectedScriptFor):
3200 * inspector/InjectedScript.cpp: Added.
3201 (WebCore::InjectedScript::InjectedScript):
3202 (WebCore::InjectedScript::dispatch):
3203 (WebCore::InjectedScript::callFrames):
3204 (WebCore::InjectedScript::wrapAndStringifyForConsole):
3205 (WebCore::InjectedScript::releaseWrapperObjectGroup):
3206 * inspector/InjectedScript.h: Added.
3207 (WebCore::InjectedScript::InjectedScript):
3208 (WebCore::InjectedScript::~InjectedScript):
3209 (WebCore::InjectedScript::hasNoValue):
3210 * inspector/InjectedScriptHost.cpp:
3211 (WebCore::InjectedScriptHost::injectedScriptForId):
3212 (WebCore::InjectedScriptHost::releaseWrapperObjectGroup):
3213 * inspector/InjectedScriptHost.h:
3214 * inspector/InspectorBackend.cpp:
3215 (WebCore::InspectorBackend::dispatchOnInjectedScript):
3216 * inspector/InspectorController.cpp:
3217 (WebCore::InspectorController::InspectorController):
3218 (WebCore::InspectorController::~InspectorController):
3219 (WebCore::InspectorController::inspectedPageDestroyed):
3220 (WebCore::InspectorController::windowScriptObjectAvailable):
3221 (WebCore::InspectorController::scriptObjectReady):
3222 (WebCore::InspectorController::setFrontendProxyObject):
3223 (WebCore::InspectorController::close):
3224 (WebCore::InspectorController::getProfile):
3225 (WebCore::InspectorController::enableDebugger):
3226 (WebCore::InspectorController::didPause):
3227 (WebCore::InspectorController::injectedScriptForNodeId):
3228 * inspector/InspectorController.h:
3229 (WebCore::InspectorController::frontendScriptState):
3230 * inspector/InspectorFrontend.cpp:
3231 (WebCore::InspectorFrontend::addConsoleMessage):
3232 * inspector/front-end/InjectedScript.js:
3233 (injectedScriptConstructor):
3235 2010-02-04 Philippe Normand <pnormand@igalia.com>
3237 Rubber stamped by Xan Lopez.
3239 Missing include, build fix after landing of patch from the bug 34435.
3241 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3243 2010-02-02 Philippe Normand <pnormand@igalia.com>
3245 Reviewed by Gustavo Noronha Silva.
3247 [Gtk] libsoup critical warning in media player http cookies injection code
3248 https://bugs.webkit.org/show_bug.cgi?id=34435
3250 Fixed the critical warning and refactored the
3251 User-Agent/Referer/cookies injection code, in that order. Previous
3252 order (cookies first) was wrong because if cookies injection could
3253 not be done neither the User-Agent nor Referer were injected. Also
3254 started a non-JSC-specific, gtk-specific GOwnPtr module.
3257 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3258 (WebCore::mediaPlayerPrivateSourceChangedCallback):
3259 * platform/gtk/GOwnPtrGtk.cpp: Added.
3262 * platform/gtk/GOwnPtrGtk.h: Added.
3264 2010-02-04 Mikhail Naganov <mnaganov@chromium.org>
3266 Reviewed by Timothy Hatcher.
3268 Put JSC-specific debugger & profiler code under "USE(JSC)" defines.
3269 The plan is to enable "JAVASCRIPT_DEBUGGER" in Chromium and then
3270 make this code engine-agnostic.
3272 https://bugs.webkit.org/show_bug.cgi?id=34531
3274 * inspector/InjectedScriptHost.cpp:
3275 * inspector/InjectedScriptHost.h:
3276 * inspector/InspectorBackend.cpp:
3277 * inspector/InspectorBackend.h:
3278 * inspector/InspectorController.cpp:
3279 (WebCore::InspectorController::InspectorController):
3280 (WebCore::InspectorController::setWindowVisible):
3281 (WebCore::InspectorController::scriptObjectReady):
3282 (WebCore::InspectorController::close):
3283 (WebCore::InspectorController::didCommitLoad):
3284 * inspector/InspectorController.h:
3285 * inspector/InspectorFrontend.cpp:
3286 * inspector/InspectorFrontend.h:
3287 * inspector/JavaScriptCallFrame.cpp:
3288 * inspector/JavaScriptCallFrame.h:
3289 * inspector/JavaScriptDebugListener.h:
3290 * inspector/JavaScriptDebugServer.cpp:
3291 * inspector/JavaScriptDebugServer.h:
3292 * inspector/JavaScriptProfile.cpp:
3293 * inspector/JavaScriptProfile.h:
3294 * inspector/JavaScriptProfileNode.cpp:
3295 * inspector/JavaScriptProfileNode.h:
3296 * loader/FrameLoader.cpp:
3297 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
3299 (WebCore::Page::Page):
3301 2010-02-03 Nicholas Young <nicholas.young@nokia.com>
3303 Reviewed by Eric Carlson.
3305 Defer formatting of times displayed on media controls to the current theme.
3306 https://bugs.webkit.org/show_bug.cgi?id=34405
3308 No new tests needed. Refactoring Only.
3310 * rendering/MediaControlElements.cpp: Removed formatTime()
3311 (WebCore::MediaControlTimeDisplayElement::setCurrentValue): No longer sets inner text
3312 * rendering/MediaControlElements.h:
3313 * rendering/RenderMedia.cpp:
3314 (WebCore::RenderMedia::updateTimeDisplay): Asks the theme to format the time display elements
3315 * rendering/RenderTheme.cpp:
3316 (WebCore::RenderTheme::formatMediaControlsTime): new virtual method
3317 (WebCore::RenderTheme::formatMediaControlsCurrentTime): new virtual method
3318 (WebCore::RenderTheme::formatMediaControlsRemainingTime): new virtual method
3319 * rendering/RenderTheme.h:
3321 2010-02-03 Steve Falkenburg <sfalken@apple.com>
3323 Windows Debug_All build fix.
3325 * platform/graphics/win/WKCACFLayer.cpp:
3327 2010-02-03 Brady Eidson <beidson@apple.com>
3329 Reviewed by Alexey Proskuryakov.
3331 REGRESSION (r51644): WebCore/manual-tests/linkjump-1.html fails
3332 <rdar://problem/7595694> and https://bugs.webkit.org/show_bug.cgi?id=34550
3334 Tests: fast/loader/document-with-fragment-url-1.html
3335 fast/loader/document-with-fragment-url-2.html
3336 fast/loader/document-with-fragment-url-3.html
3337 fast/loader/document-with-fragment-url-4.html
3339 * platform/KURL.cpp:
3340 (WebCore::KURL::init): When resolving new URL from an empty reference relative to an absolute URL,
3341 any fragment identifier from the absolute URL should be removed from the resulting resolution.
3343 2010-02-03 Kwang Yul Seo <skyul@company100.net>
3345 Reviewed by Eric Seidel.
3347 [BREWMP] Port TextBreakIteratorInternalICU
3348 https://bugs.webkit.org/show_bug.cgi?id=34515
3350 Port TextBreakIteratorInternalICU.
3352 * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Added.
3353 (WebCore::currentSearchLocaleID):
3354 (WebCore::currentTextBreakLocaleID):
3356 2010-02-03 Adele Peterson <adele@apple.com>
3358 Reviewed by Simon Fraser.
3360 Fix for <rdar://problem/7594212>
3361 https://bugs.webkit.org/show_bug.cgi?id=34549 - CSS counters crash at http://www.w3.org/TR/css3-content/
3362 CrashTracer: [USER] 20 crashes in Safari at com.apple.WebCore: WebCore::CounterNode::insertAfter + 319
3364 Test: fast/css/counters/counter-before-selector-crash.html
3366 * rendering/RenderCounter.cpp: (WebCore::updateCounters): nil check.
3368 2010-02-03 Adele Peterson <adele@apple.com>
3370 Reviewed by Brady Eidson.
3372 Initialize the variable in the last checkin to false. I didn't realize DRT relies on this being false.
3373 So ports that want visited link tracking need to set that flag.
3375 * page/PageGroup.cpp:
3377 2010-02-03 Adele Peterson <adele@apple.com>
3379 Reviewed by Brady Eidson.
3381 Fix for https://bugs.webkit.org/show_bug.cgi?id=34547
3382 static shouldTrackVisitedLinks is not initialized
3384 For ports that don't call into WebKit to initialize this,
3385 we should initialize to true so they get the visited link behavior by default.
3387 * page/PageGroup.cpp:
3389 2010-02-03 Dan Bernstein <mitz@apple.com>
3391 Reviewed by Simon Fraser.
3393 <rdar://problem/7577604> Drag and Drop: background elements are bleeding through
3394 https://bugs.webkit.org/show_bug.cgi?id=34546
3396 * manual-tests/drag-image-table-part-decorations.html: Added.
3397 * rendering/RenderFieldset.cpp:
3398 (WebCore::RenderFieldset::paintBoxDecorations): Bail out if this object shouldn’t
3399 paint within the current painting root.
3400 * rendering/RenderTable.cpp:
3401 (WebCore::RenderTable::paintBoxDecorations): Ditto.
3402 * rendering/RenderTableCell.cpp:
3403 (WebCore::RenderTableCell::paintBackgroundsBehindCell): Ditto.
3404 (WebCore::RenderTableCell::paintBoxDecorations): Ditto.
3406 2010-02-03 Nate Chapin <japhet@chromium.org>
3408 Unreviewed, Chromium mac build fix.
3410 [V8] Remove unused V8Proxy* variable from generated wrapping code.
3412 * bindings/scripts/CodeGeneratorV8.pm:
3414 2010-02-03 Nate Chapin <japhet@chromium.org>
3416 Reviewed by Dimitri Glazkov.
3418 [V8] Use toV8() to wrap in the custom bindings, and remove
3419 the old wrapping code from V8DOMWrapper.
3421 https://bugs.webkit.org/show_bug.cgi?id=32563
3423 * bindings/scripts/CodeGeneratorV8.pm:
3424 * bindings/v8/ScriptController.cpp:
3425 * bindings/v8/ScriptObject.cpp:
3426 * bindings/v8/V8AbstractEventListener.cpp:
3427 * bindings/v8/V8Collection.h:
3428 * bindings/v8/V8DOMWindowShell.cpp:
3429 * bindings/v8/V8DOMWrapper.cpp:
3430 * bindings/v8/V8DOMWrapper.h:
3431 * bindings/v8/V8NodeFilterCondition.cpp:
3432 * bindings/v8/V8Proxy.cpp:
3433 * bindings/v8/WorkerContextExecutionProxy.h
3434 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3435 * bindings/v8/custom/V8CustomPositionCallback.cpp:
3436 * bindings/v8/custom/V8CustomPositionErrorCallback.cpp:
3437 * bindings/v8/custom/V8CustomSQLStatementCallback.cpp:
3438 * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3439 * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp:
3440 * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
3441 * bindings/v8/custom/V8DOMWindowCustom.cpp:
3442 * bindings/v8/custom/V8DataGridColumnListCustom.cpp:
3443 * bindings/v8/custom/V8DocumentCustom.cpp:
3444 * bindings/v8/custom/V8DocumentLocationCustom.cpp:
3445 * bindings/v8/custom/V8ElementCustom.cpp:
3446 * bindings/v8/custom/V8EventCustom.cpp:
3447 * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
3448 * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
3449 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
3450 * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
3451 * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
3452 * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
3453 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
3454 * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
3455 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
3456 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
3457 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3458 * bindings/v8/custom/V8MessageChannelConstructor.cpp:
3459 * bindings/v8/custom/V8MessageEventCustom.cpp:
3460 * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
3461 * bindings/v8/custom/V8NodeIteratorCustom.cpp:
3462 * bindings/v8/custom/V8NodeListCustom.cpp:
3463 * bindings/v8/custom/V8NotificationCenterCustom.cpp:
3464 * bindings/v8/custom/V8SVGMatrixCustom.cpp:
3465 * bindings/v8/custom/V8StyleSheetListCustom.cpp:
3466 * bindings/v8/custom/V8TreeWalkerCustom.cpp:
3467 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3468 * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
3470 2010-02-03 Sam Weinig <sam@webkit.org>
3472 Reviewed by Anders Carlsson.
3474 Fix drawing buttons in viewless WebKit.
3476 * platform/mac/ThemeMac.mm:
3477 (WebCore::paintButton): If there is no view, make sure to flip the
3478 context so that the button is drawn correctly.
3480 2010-02-03 Yael Aharon <yael.aharon@nokia.com>
3482 Reviewed by Kenneth Rohde Christiansen.
3484 [Qt] WebSockets : Buffer the data in WebKit instead of QtNetwork
3485 https://bugs.webkit.org/show_bug.cgi?id=34425
3487 Reverting r54279, it was a misunderstanding.
3489 * platform/network/qt/SocketStreamHandlePrivate.h:
3490 * platform/network/qt/SocketStreamHandleQt.cpp:
3491 (WebCore::SocketStreamHandlePrivate::SocketStreamHandlePrivate):
3492 (WebCore::SocketStreamHandlePrivate::send):
3493 (WebCore::SocketStreamHandlePrivate::close):
3495 2010-02-03 Drew Wilson <atwilson@chromium.org>
3497 Reviewed by Alexey Proskuryakov.
3499 SharedWorkerScriptLoader should not be an ActiveDOMObject
3500 https://bugs.webkit.org/show_bug.cgi?id=34513
3502 Test: Existing tests suffice (fixes test downstream in Chrome).
3504 * workers/DefaultSharedWorkerRepository.cpp:
3505 (WebCore::SharedWorkerScriptLoader::SharedWorkerScriptLoader):
3506 Changed to no longer derive from ActiveDOMObject (handles its own refcounting).
3507 (WebCore::SharedWorkerScriptLoader::load):
3508 Now increments own refcount when a load is pending.
3509 (WebCore::SharedWorkerScriptLoader::notifyFinished):
3510 Changed to decrement refcount when load is complete.
3511 * workers/WorkerScriptLoaderClient.h:
3512 Documentation change about reliability of notifyFinished() when used from worker context.
3514 2010-02-03 Pavel Feldman <pfeldman@chromium.org>
3516 Reviewed by Timothy Hatcher.
3518 Web Inspector: Inspector renders blank scripts on reloading the webpage.
3520 https://bugs.webkit.org/show_bug.cgi?id=34537
3522 * inspector/front-end/ResourcesPanel.js:
3523 (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
3525 2010-02-03 Yury Semikhatsky <yurys@chromium.org>
3527 Reviewed by Pavel Feldman.
3529 Provide strongly typed C++ interface for inspector's injected script.
3531 https://bugs.webkit.org/show_bug.cgi?id=33616
3535 * WebCore.vcproj/WebCore.vcproj:
3536 * WebCore.xcodeproj/project.pbxproj:
3537 * bindings/js/JSInjectedScriptHostCustom.cpp:
3538 (WebCore::InjectedScriptHost::injectedScriptFor):
3539 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3540 (WebCore::InjectedScriptHost::injectedScriptFor):
3541 * inspector/InjectedScript.cpp: Added.
3542 (WebCore::InjectedScript::InjectedScript):
3543 (WebCore::InjectedScript::dispatch):
3544 (WebCore::InjectedScript::callFrames):
3545 (WebCore::InjectedScript::wrapAndStringify):
3546 (WebCore::InjectedScript::releaseWrapperObjectGroup):
3547 * inspector/InjectedScript.h: Added.
3548 (WebCore::InjectedScript::InjectedScript):
3549 (WebCore::InjectedScript::~InjectedScript):
3550 (WebCore::InjectedScript::hasNoValue):
3551 * inspector/InjectedScriptHost.cpp:
3552 (WebCore::InjectedScriptHost::injectedScriptForId):
3553 (WebCore::InjectedScriptHost::releaseWrapperObjectGroup):
3554 * inspector/InjectedScriptHost.h:
3555 * inspector/InspectorBackend.cpp:
3556 (WebCore::InspectorBackend::dispatchOnInjectedScript):
3557 * inspector/InspectorController.cpp:
3558 (WebCore::InspectorController::InspectorController):
3559 (WebCore::InspectorController::~InspectorController):
3560 (WebCore::InspectorController::inspectedPageDestroyed):
3561 (WebCore::InspectorControl