1 2011-03-31 Dimitri Glazkov <dglazkov@chromium.org>
3 Reviewed by Darin Adler.
5 Move coordinate-computing logic into MouseRelatedEvent.
6 https://bugs.webkit.org/show_bug.cgi?id=57521
8 Refactoring, covered by existing tests.
10 * dom/EventDispatcher.cpp:
11 (WebCore::EventDispatcher::dispatchWheelEvent): Yank calculation of
13 (WebCore::EventDispatcher::dispatchMouseEvent): Ditto.
15 (WebCore::MouseEvent::create): Add coordinate-computing logic.
16 * dom/MouseEvent.h: Adjust decl to reflect new meaning of params.
17 * dom/MouseRelatedEvent.cpp:
18 (WebCore::MouseRelatedEvent::MouseRelatedEvent): Ditto.
19 * page/EventHandler.cpp:
20 (WebCore::EventHandler::dispatchDragEvent): Ditto.
22 2011-03-30 Alexander Pavlov <apavlov@chromium.org>
24 Reviewed by Pavel Feldman.
26 Web Inspector: document CSS agent.
27 https://bugs.webkit.org/show_bug.cgi?id=57435
29 * inspector/Inspector.json:
31 2011-03-31 Andrey Kosyakov <caseq@chromium.org>
33 Reviewed by Yury Semikhatsky.
35 Web Inspector: remove periods at the end of error messages
36 https://bugs.webkit.org/show_bug.cgi?id=57544
38 * inspector/InjectedScript.cpp:
39 (WebCore::InjectedScript::getProperties):
40 (WebCore::InjectedScript::makeObjectCall):
41 * inspector/InspectorCSSAgent.cpp:
42 (WebCore::InspectorCSSAgent::elementForId):
43 (WebCore::InspectorCSSAgent::styleSheetForId):
44 * inspector/InspectorDOMAgent.cpp:
45 (WebCore::InspectorDOMAgent::assertNode):
46 (WebCore::InspectorDOMAgent::assertElement):
47 (WebCore::InspectorDOMAgent::assertHTMLElement):
48 (WebCore::InspectorDOMAgent::querySelector):
49 (WebCore::InspectorDOMAgent::querySelectorAll):
50 (WebCore::InspectorDOMAgent::setAttribute):
51 (WebCore::InspectorDOMAgent::removeAttribute):
52 (WebCore::InspectorDOMAgent::removeNode):
53 (WebCore::InspectorDOMAgent::setNodeValue):
54 * inspector/InspectorDebuggerAgent.cpp:
55 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
56 * inspector/InspectorResourceAgent.cpp:
57 (WebCore::InspectorResourceAgent::resourceContent):
58 (WebCore::InspectorResourceAgent::resourceContentBase64):
59 (WebCore::InspectorResourceAgent::getResourceContent):
60 * inspector/InspectorRuntimeAgent.cpp:
61 (WebCore::InspectorRuntimeAgent::setPropertyValue):
63 2011-03-31 Evan Martin <evan@chromium.org>
65 Reviewed by Eric Seidel.
67 <title> should support dir attribute
68 https://bugs.webkit.org/show_bug.cgi?id=50961
70 Introduce a new StringWithDirection object that carries a String along
71 with the TextDirection associated with the String. Use this object for
72 document titles used within WebCore, because in HTML the direction of
73 a title can be set with the 'dir' attribute.
75 Put FIXMEs at the WebKit level to expose the new direction information
78 No behavioral change intended, so no new tests. A follow-up will expose
79 the title direction and hopefully can be accompanied by tests that
83 (WebCore::Document::Document):
84 (WebCore::Document::updateTitle):
85 (WebCore::Document::setTitle):
86 (WebCore::Document::removeTitle):
88 (WebCore::Document::title):
89 * html/HTMLTitleElement.cpp:
90 (WebCore::HTMLTitleElement::HTMLTitleElement):
91 (WebCore::HTMLTitleElement::childrenChanged):
92 (WebCore::HTMLTitleElement::text):
93 (WebCore::HTMLTitleElement::textWithDirection):
94 * html/HTMLTitleElement.h:
95 * loader/DocumentLoader.cpp:
96 (WebCore::DocumentLoader::setTitle):
97 * loader/DocumentLoader.h:
98 (WebCore::DocumentLoader::title):
99 * loader/EmptyClients.h:
100 (WebCore::EmptyFrameLoaderClient::dispatchDidReceiveTitle):
101 (WebCore::EmptyFrameLoaderClient::setTitle):
102 * loader/FrameLoader.cpp:
103 (WebCore::FrameLoader::receivedFirstData):
104 (WebCore::FrameLoader::commitProvisionalLoad):
105 (WebCore::FrameLoader::setTitle):
106 * loader/FrameLoader.h:
107 * loader/FrameLoaderClient.h:
108 * loader/HistoryController.cpp:
109 (WebCore::HistoryController::updateForBackForwardNavigation):
110 (WebCore::HistoryController::updateForReload):
111 (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
112 (WebCore::HistoryController::updateForClientRedirect):
113 (WebCore::HistoryController::updateForCommit):
114 (WebCore::HistoryController::setCurrentItemTitle):
115 (WebCore::HistoryController::initializeItem):
116 * loader/HistoryController.h:
117 * platform/text/StringWithDirection.h: Added.
118 (WebCore::StringWithDirection::StringWithDirection):
119 (WebCore::StringWithDirection::operator==):
120 (WebCore::StringWithDirection::operator!=):
121 * svg/SVGTitleElement.cpp:
122 (WebCore::SVGTitleElement::insertedIntoDocument):
123 (WebCore::SVGTitleElement::childrenChanged):
125 2011-03-31 Alexander Pavlov <apavlov@chromium.org>
127 Reviewed by Yury Semikhatsky.
129 Web Inspector: CSS domain - make a "range" object, get rid of "properties" object for Style objects
130 https://bugs.webkit.org/show_bug.cgi?id=57538
132 * inspector/InspectorStyleSheet.cpp:
133 (WebCore::buildSourceRangeObject):
134 (WebCore::InspectorStyle::buildObjectForStyle):
135 (WebCore::InspectorStyle::populateObjectWithStyleProperties):
136 * inspector/front-end/AuditRules.js:
137 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
138 * inspector/front-end/CSSStyleModel.js:
139 (WebInspector.CSSStyleDeclaration):
141 2011-03-31 Sheriff Bot <webkit.review.bot@gmail.com>
143 Unreviewed, rolling out r82565.
144 http://trac.webkit.org/changeset/82565
145 https://bugs.webkit.org/show_bug.cgi?id=57541
147 Caused assertion failures. (Requested by bbandix on #webkit).
149 * platform/graphics/filters/FEFlood.cpp:
150 (WebCore::FEFlood::setFloodColor):
151 (WebCore::FEFlood::setFloodOpacity):
152 * platform/graphics/filters/FEFlood.h:
153 * platform/graphics/filters/FESpecularLighting.cpp:
154 (WebCore::FESpecularLighting::setLightingColor):
155 * platform/graphics/filters/FESpecularLighting.h:
156 * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
157 * rendering/svg/RenderSVGResourceFilterPrimitive.h:
158 * rendering/svg/SVGResourcesCache.cpp:
159 (WebCore::SVGResourcesCache::clientStyleChanged):
160 * svg/SVGFEDiffuseLightingElement.cpp:
161 (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
162 * svg/SVGFEFloodElement.cpp:
163 * svg/SVGFEFloodElement.h:
164 * svg/SVGFESpecularLightingElement.cpp:
165 (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
167 2011-03-31 Renata Hodovan <reni@webkit.org>
169 Reviewed by Dirk Schulze.
171 CSS related SVG*Element changes doesn't require relayout
172 https://bugs.webkit.org/show_bug.cgi?id=56906
174 The changes of some CSS related SVGFilter properties e.g. lighting-color, flood-color, flood-opacity
175 need only repaint. To avoid the default invalidation of filters in SVGResourceCache::clientStyleChange()
176 we need an early return. So RenderSVGResourceFilterPrimitive::styleDidChange() can handle these properties
177 via RenderSVGResourceFilter::primitiveAttributeChanged() the same way like we do it for the other SVGAttributes.
179 Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-inherit-lighting-color-css-prop.html
180 svg/dynamic-updates/SVGFEFloodElement-inherit-flood-color.html
181 svg/dynamic-updates/SVGFESpecularLightingElement-inherit-lighting-color-css-prop.html
182 svg/dynamic-updates/SVGFESpecularLightingElement-lighting-color-css-prop.html
184 * platform/graphics/filters/FEFlood.cpp:
185 (WebCore::FEFlood::setFloodColor):
186 (WebCore::FEFlood::setFloodOpacity):
187 * platform/graphics/filters/FEFlood.h:
188 * platform/graphics/filters/FESpecularLighting.cpp:
189 (WebCore::FESpecularLighting::setLightingColor):
190 * platform/graphics/filters/FESpecularLighting.h:
191 * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
192 (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
193 * rendering/svg/RenderSVGResourceFilterPrimitive.h:
194 * rendering/svg/SVGResourcesCache.cpp:
195 (WebCore::SVGResourcesCache::clientStyleChanged):
196 * svg/SVGFEDiffuseLightingElement.cpp:
197 (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
198 * svg/SVGFEFloodElement.cpp:
199 (WebCore::SVGFEFloodElement::setFilterEffectAttribute):
200 * svg/SVGFEFloodElement.h:
201 * svg/SVGFESpecularLightingElement.cpp:
202 (WebCore::SVGFESpecularLightingElement::setFilterEffectAttribute):
204 2011-03-29 Vsevolod Vlasov <vsevik@chromium.org>
206 Reviewed by Pavel Feldman.
208 XML Viewer: declared namespaces are not rendered.
209 https://bugs.webkit.org/show_bug.cgi?id=56262
211 XML viewer rewritten on javascript.
214 * DerivedSources.make:
216 * WebCore.gyp/WebCore.gyp:
218 * WebCore.vcproj/WebCore.vcproj:
219 * WebCore.xcodeproj/project.pbxproj:
220 * dom/XMLDocumentParserLibxml2.cpp:
221 (WebCore::XMLDocumentParser::doEnd):
222 * xml/XMLTreeViewer.cpp:
223 (WebCore::XMLTreeViewer::transformDocumentToTreeView):
224 * xml/XMLViewer.css: Added.
225 * xml/XMLViewer.js: Added.
226 * xml/XMLViewer.xsl: Removed.
227 * xml/XSLStyleSheet.h:
229 2011-03-31 Jaehun Lim <ljaehun.lim@samsung.com>
231 Unreviewed build fix.
233 Fix build break after rolling out r82496
234 https://bugs.webkit.org/show_bug.cgi?id=57536
236 * platform/efl/RenderThemeEfl.cpp:
238 2011-03-31 Andrey Adaikin <aandrey@google.com>
240 Reviewed by Pavel Feldman.
242 Web Inspector: execution line is displayed incorrectly after source editing.
243 https://bugs.webkit.org/show_bug.cgi?id=57229
245 * inspector/front-end/SourceFrame.js:
246 (WebInspector.SourceFrame.prototype._saveViewerState):
247 (WebInspector.SourceFrame.prototype._restoreViewerState):
248 (WebInspector.SourceFrame.prototype._startEditing):
249 (WebInspector.SourceFrame.prototype._endEditing):
250 (WebInspector.SourceFrame.prototype._createTextViewer):
251 (WebInspector.SourceFrame.prototype.setExecutionLine):
252 (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
253 (WebInspector.SourceFrame.prototype._handleSave):
254 (WebInspector.SourceFrame.prototype._handleRevertEditing):
255 * inspector/front-end/TextViewer.js:
256 (WebInspector.TextEditorChunkedPanel.prototype.addDecoration):
257 (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
258 (WebInspector.TextEditorMainPanel.prototype.makeLineAChunk):
259 (WebInspector.TextEditorMainPanel.prototype._positionToSelection):
261 2011-03-30 Alexander Pavlov <apavlov@chromium.org>
263 Reviewed by Pavel Feldman.
265 Web Inspector: Make the CSStyle "shorthandValues" name-value map an array
266 https://bugs.webkit.org/show_bug.cgi?id=57452
268 No new tests, as this is a refactoring.
270 * inspector/InspectorCSSAgent.cpp:
271 * inspector/InspectorStyleSheet.cpp:
272 (WebCore::InspectorStyle::populateObjectWithStyleProperties):
273 * inspector/front-end/CSSStyleModel.js:
274 (WebInspector.CSSStyleDeclaration):
275 (WebInspector.CSSStyleDeclaration.buildShorthandValueMap):
277 2011-03-30 Steve Block <steveblock@google.com>
279 Reviewed by Jeremy Orlow.
281 JavaField should not expose JavaString in its API
282 https://bugs.webkit.org/show_bug.cgi?id=55766
284 This patch fixes JavaField for V8 only.
285 - Factors out a JavaField interface which does not use JNI types.
286 This will allow the Java bridge to be used with objects that
287 don't use JNI directly. The existing jobject-backed
288 implementation is moved to a new JavaFieldJobject class which
289 implements the interface.
290 - Use WTF::String in place of JavaString in the API, as JavaString
291 exposes JNI types in its interface.
293 No new tests, refactoring only.
295 * Android.v8bindings.mk:
297 * bridge/jni/JavaMethod.h:
298 (JSC::Bindings::JavaMethod::~JavaMethod):
299 * bridge/jni/JobjectWrapper.h:
300 * bridge/jni/v8/JavaClassV8.cpp:
301 (JavaClass::JavaClass):
302 * bridge/jni/v8/JavaFieldJobjectV8.cpp:
303 (JavaFieldJobject::JavaFieldJobject):
304 * bridge/jni/v8/JavaFieldJobjectV8.h:
305 (JSC::Bindings::JavaFieldJobject::name):
306 (JSC::Bindings::JavaFieldJobject::typeClassName):
307 (JSC::Bindings::JavaFieldJobject::type):
308 * bridge/jni/v8/JavaFieldV8.h:
309 (JSC::Bindings::JavaField::~JavaField):
310 * bridge/jni/v8/JavaInstanceV8.cpp:
311 (JavaInstance::getField):
313 2011-03-31 Levi Weintraub <leviw@chromium.org>
315 Reviewed by Ryosuke Niwa.
317 Clean up from r82447.
318 https://bugs.webkit.org/attachment.cgi?bugid=57532
320 No new tests since this doesn't change behavior.
322 * rendering/RenderBlock.cpp: Removing unnecessary visible_units.h include.
323 * rendering/RootInlineBox.cpp:
324 (WebCore::RootInlineBox::getLogicalStartBoxWithNode): Making const.
325 (WebCore::RootInlineBox::getLogicalEndBoxWithNode): Ditto.
326 * rendering/RootInlineBox.h:
328 2011-03-31 Benjamin Kalman <kalman@chromium.org>
330 Reviewed by Ojan Vafai.
332 DeleteSelectionCommand::removeNode tries to insert block placeholder in non-editable table cell positions
333 https://bugs.webkit.org/show_bug.cgi?id=57079
335 Test: editing/execCommand/delete-table-with-empty-contents.html
337 This bug results in an ASSERT fail in CompositeEditCommand::insertNodeAt, so is only observable in debug builds
340 * editing/DeleteSelectionCommand.cpp:
341 (WebCore::firstEditablePositionInNode):
342 (WebCore::DeleteSelectionCommand::removeNode): Use firstEditablePositionInNode rather than firstPositionInNode
343 to find anchor node for the placeholder's position, if any.
345 2011-03-30 Ojan Vafai <ojan@chromium.org>
347 Reviewed by Adam Roben.
349 REGRESSION (r82400): Leaks seen beneath CSSParser::createFloatingVectorSelector when parsing UA stylesheet
350 https://bugs.webkit.org/show_bug.cgi?id=57478
354 (WebCore::CSSParser::sinkFloatingSelectorVector):
357 2011-03-30 Dominic Cooney <dominicc@google.com>
359 Reviewed by Dimitri Glazkov.
361 Adds layoutTestController.shadowRoot accessor to Mac DRT.
362 https://bugs.webkit.org/show_bug.cgi?id=57415
364 * WebCore.exp.in: DRT needs to link WebCore::Element::shadowRoot
366 2011-03-30 Kent Tamura <tkent@chromium.org>
368 Reviewed by Dimitri Glazkov.
370 Simplify HTMLFormElement::validateInteractively() for asynchronous scroll event
371 https://bugs.webkit.org/show_bug.cgi?id=57424
373 r75555 made 'scroll' event asynchronous. So we don't need to worry about
374 deleting or moving a target node in scrollIntoViewIfNeeded().
376 * html/HTMLFormElement.cpp:
377 (WebCore::HTMLFormElement::validateInteractively): Remove unnecessary code.
379 2011-03-30 Kent Tamura <tkent@chromium.org>
381 Reviewed by Darin Adler.
383 REGRESSION (r74895): Crash if input.type = 'file' twice
384 https://bugs.webkit.org/show_bug.cgi?id=57343
386 * html/HTMLInputElement.cpp:
387 (WebCore::HTMLInputElement::updateType):
388 Don't call setAttribute() if the type is not changed.
390 2011-03-30 Jia Pu <jpu@apple.com>
392 Reviewed by Darin Adler.
394 Autocorrection panel isn't positioned correctly in Safari (mac) when the zooming is not 1x.
395 https://bugs.webkit.org/show_bug.cgi?id=57353
396 <rdar://problem/9163983>
398 We use Range::textQuads() instead of Range::boundingRect() to compute the position of correction
399 panel. The latter function compensates for zooming, which we don't need in this case. We also
400 dismiss correction panel when zooming factor is changed. This is done in Frame::setPageAndTextZoomFactors().
404 (WebCore::Range::textQuads):
406 * editing/Editor.cpp:
407 (WebCore::Editor::windowRectForRange):
410 (WebCore::Frame::setPageAndTextZoomFactors):
412 2011-03-30 Chris Guillory <chris.guillory@google.com>
414 Reviewed by Dimitri Glazkov.
416 Render fonts using skia when requested by platform context.
417 https://bugs.webkit.org/show_bug.cgi?id=56441
419 * platform/graphics/skia/PlatformContextSkia.cpp:
420 (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
421 * platform/graphics/skia/PlatformContextSkia.h:
422 * platform/graphics/skia/SkiaFontWin.cpp:
423 (WebCore::windowsCanHandleTextDrawing):
424 (WebCore::skiaDrawText):
425 (WebCore::setupPaintForFont):
426 (WebCore::paintSkiaText):
428 2011-03-30 Dan Bernstein <mitz@apple.com>
430 Reviewed by Darin Adler.
432 <rdar://problem/9199518> Crash when focusing a styled editable element
434 Test: editing/deleting/delete-button-background-image-none.html
436 * editing/DeleteButtonController.cpp:
437 (WebCore::isDeletableElement): Check all background layers for background images.
438 * rendering/style/RenderStyle.h: Removed backgroundImage() as it was only used, incorrectly,
439 in the above function.
441 2011-03-30 Martin Robinson <mrobinson@igalia.com>
443 Try once more to fix the EFL build.
445 * platform/efl/RenderThemeEfl.cpp:
447 2011-03-30 Chris Fleizach <cfleizach@apple.com>
449 Reviewed by Darin Adler.
451 Regression: VO cursor doesn't follow KB focus back into HTML view
452 https://bugs.webkit.org/show_bug.cgi?id=57509
454 In WK2, because the web area never believes focus leave the area, sending the initial
455 focus change when moving back into the web area, does not trigger a notification.
457 That behavior needs to be overridden by explicitly posting a focused UI element change
458 at the appropriate time. This is only used in WK2, hence the absence of a layout test for now.
460 * page/FocusController.cpp:
461 (WebCore::FocusController::setInitialFocus):
463 2011-03-30 MORITA Hajime <morrita@google.com>
465 Reviewed by Simon Fraser.
467 box-shadow radii stays the same regardless of any spread set
468 https://bugs.webkit.org/show_bug.cgi?id=49726
470 - Removed special shadowSpread handling path
471 - Fixed broken multple inset shadow border computation.
473 Test: fast/box-shadow/spread-multiple-inset.html
475 * rendering/RenderBoxModelObject.cpp:
476 (WebCore::RenderBoxModelObject::paintBoxShadow):
478 2011-03-29 Matthew Delaney <mdelaney@apple.com>
480 Reviewed by Simon Fraser.
482 Use the Accelerate vImage vectorized (un)premultiplyImageData functions for ImageBufferCG
484 https://bugs.webkit.org/show_bug.cgi?id=53134
486 Test: fast/canvas/getPutImageDataPairTest.html
488 * platform/graphics/cg/ImageBufferCG.cpp:
490 2011-03-30 Steve Falkenburg <sfalken@apple.com>
492 Reviewed by Adam Roben.
494 Share most vsprops between Release and Production builds in releaseproduction.vsprops
495 https://bugs.webkit.org/show_bug.cgi?id=57508
497 * WebCore.vcproj/QTMovieWinProduction.vsprops:
498 * WebCore.vcproj/QTMovieWinRelease.vsprops:
499 * WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
500 * WebCore.vcproj/WebCoreProduction.vsprops:
501 * WebCore.vcproj/WebCoreRelease.vsprops:
502 * WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:
504 2011-03-30 Timur Iskhodzhanov <timurrrr@google.com>
506 Reviewed by Alexey Proskuryakov.
508 Add some dynamic annotations to JavaScriptCore/wtf
509 https://bugs.webkit.org/show_bug.cgi?id=53747
511 By using these annotations we can improve the precision of finding
512 WebKit errors using dynamic analysis tools like ThreadSanitizer and Valgrind.
513 These annotations don't affect the compiled binaries unless USE(DYNAMIC_ANNOTATIONS) is "1".
515 These files don't add new functionality, so don't need extra tests.
517 * ForwardingHeaders/wtf/DynamicAnnotations.h: Added.
519 2011-03-30 Abhishek Arya <inferno@chromium.org>
521 Reviewed by Simon Fraser.
523 Fix wrong type assumptions in editing code. Move code
524 from ASSERTs to hard checks.
525 https://bugs.webkit.org/show_bug.cgi?id=57348
527 Test: editing/execCommand/remove-format-non-html-element-crash.html
529 * css/CSSStyleSelector.cpp:
530 (WebCore::CSSStyleSelector::applyProperty):
531 * editing/ApplyStyleCommand.cpp:
532 (WebCore::getRGBAFontColor):
533 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
534 * editing/DeleteButtonController.cpp:
535 (WebCore::enclosingDeletableElement):
536 * editing/EditingStyle.cpp:
537 (WebCore::EditingStyle::textDirection):
538 (WebCore::EditingStyle::prepareToApplyAt):
539 * editing/Editor.cpp:
540 (WebCore::Editor::textDirectionForSelection):
541 * editing/FormatBlockCommand.cpp:
542 (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
544 2011-03-30 Stephen White <senorblanco@chromium.org>
546 Reviewed by Kenneth Russell.
548 Speed up clipping in accelerated 2D canvas.
549 https://bugs.webkit.org/show_bug.cgi?id=57464
551 Instead of clearing the entire stencil buffer when removing clipping paths, we erase the path with a DECR stencil operation.
552 Covered by canvas/philip/tests/2d.path.clip.intersect.html, and others.
554 * platform/graphics/chromium/GLES2Canvas.cpp:
555 (WebCore::PathAndTransform::PathAndTransform):
556 New structure to keep track of the CTM at the time the clipping path was added.
557 (WebCore::GLES2Canvas::State::State):
558 Replace m_clippingEnabled with a count of total clipping paths.
559 (WebCore::GLES2Canvas::clearRect):
560 Check the total clipping path count, instead of m_clippingEnabled.
561 (WebCore::GLES2Canvas::fillPath):
562 (WebCore::GLES2Canvas::fillRect):
563 Perform state application after doing shadows. This is necessary
564 since restore() may now leave clipping enabled.
565 (WebCore::GLES2Canvas::clipPath):
566 Explicitly specify the stencil operation as INCR. Store the current
567 transformation when saving clipping paths.
568 (WebCore::GLES2Canvas::restore):
569 Don't clear the stencil buffer and re-draw active paths on each restore.
570 Erase the old paths with DECR.
571 (WebCore::GLES2Canvas::drawTexturedRect):
572 Check m_numClippingPaths instead of m_clippingEnabled.
573 (WebCore::GLES2Canvas::beginShadowDraw):
574 Perform state application when drawing hard shadows.
575 (WebCore::GLES2Canvas::endShadowDraw):
576 Check m_numClippingPaths instead of m_clippingEnabled.
577 (WebCore::GLES2Canvas::beginStencilDraw):
578 Make the stencil op a parameter to beginShadowDraw().
579 (WebCore::GLES2Canvas::applyClipping):
580 Compare against the total number of stencil paths, not just the ones in
582 * platform/graphics/chromium/GLES2Canvas.h:
583 Make the stencil op a parameter to beginShadowDraw().
585 2011-03-29 Dimitri Glazkov <dglazkov@chromium.org>
587 Reviewed by Darin Adler.
589 Move factory-like things in EventDispatcher::dispatchMouseEvent to a factory, clean up names and ordering.
590 https://bugs.webkit.org/show_bug.cgi?id=57419
592 Refactoring, covered by existing tests.
594 * dom/EventDispatcher.cpp:
595 (WebCore::EventDispatcher::dispatchMouseEvent): Reordered and clarified names.
596 * dom/MouseEvent.cpp:
597 (WebCore::MouseEvent::create): Added a new factory method that takes PlatformMouseEvent.
598 * dom/MouseEvent.h: Added decl.
600 2011-03-30 Erik Arvidsson <arv@chromium.org>
602 Reviewed by Alexey Proskuryakov.
604 Missing DOM bindings for a ping
605 https://bugs.webkit.org/show_bug.cgi?id=51955
607 Test: fast/dom/ping-attribute-dom-binding.html
609 * html/HTMLAnchorElement.idl:
610 * html/HTMLAreaElement.idl:
612 2011-03-30 Patrick Gansterer <paroga@webkit.org>
614 Unreviewed WinCE build fix for r82465.
616 * CMakeListsWinCE.txt:
618 2011-03-30 Steve Falkenburg <sfalken@apple.com>
620 Reviewed by Adam Roben.
622 Update Windows production build logic for new production configurations
623 https://bugs.webkit.org/show_bug.cgi?id=57494
625 * WebCore.vcproj/QTMovieWinProduction.vsprops:
626 * WebCore.vcproj/WebCore.make:
627 * WebCore.vcproj/WebCoreProduction.vsprops:
629 2011-03-30 Sam Weinig <sam@webkit.org>
631 Reviewed by Brady Eidson.
633 WebKit2: Attempting to view css file from url causes it to download
634 <rdar://problem/9102611>
635 https://bugs.webkit.org/show_bug.cgi?id=57501
638 * platform/MIMETypeRegistry.cpp:
639 (WebCore::initializeUnsupportedTextMIMETypes):
640 (WebCore::initializeMIMETypeRegistry):
641 (WebCore::MIMETypeRegistry::isUnsupportedTextMIMEType):
642 (WebCore::MIMETypeRegistry::getUnsupportedTextMIMETypes):
643 * platform/MIMETypeRegistry.h:
644 Add set of unsupported text MIME types, taken from WebKit/mac.
646 2011-03-30 Brian Weinstein <bweinstein@apple.com>
648 Reviewed by Darin Adler.
650 Crash when closing "Add Bookmark" dialog using the Enter Key
651 https://bugs.webkit.org/show_bug.cgi?id=57294
652 <rdar://problem/9044756>
654 Protect the FrameView in EventHandler::keyEvent, like we do in other EventHandler
655 functions that could destroy the frame.
657 * page/EventHandler.cpp:
658 (WebCore::EventHandler::keyEvent):
660 2011-03-30 Sheriff Bot <webkit.review.bot@gmail.com>
662 Unreviewed, rolling out r82463.
663 http://trac.webkit.org/changeset/82463
664 https://bugs.webkit.org/show_bug.cgi?id=57482
666 Assertion failure in Node::rendererIsEditable on multiple
667 editing tests (Requested by aroben|meeting on #webkit).
670 (WebCore::CSSParser::parseValue):
671 * css/CSSPrimitiveValueMappings.h:
672 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
673 (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
674 * css/CSSValueKeywords.in:
675 * rendering/style/RenderStyle.h:
676 * rendering/style/RenderStyleConstants.h:
678 2011-03-24 Luiz Agostini <luiz.agostini@openbossa.org>
680 Reviewed by Kenneth Rohde Christiansen.
682 [Qt] QNetworkReplyHandler refactoring: signal sequence.
683 https://bugs.webkit.org/show_bug.cgi?id=57049
685 This is the first step in QNetworkReplyHandler. The main objective here is to create simple invariants:
687 1 - that the signals metadatachanged, readyRead and finished will come in this order.
688 2 - that signals metadatachanged and finished will be called exactly once.
690 Having these invariants further simplifications will be possible and will come in future patches.
692 Class QNetworkReplyWrapper was created to handle QNetworkReply object. To connect to the signals of it
693 instead of connecting to the signals of QNetworkReply is what guarantees the sequence of the signals.
694 QNetworkReplyWrapper will be used in future to perform mime type sniffing before sending
695 metadatachanged signal.
697 * platform/network/qt/QNetworkReplyHandler.cpp:
698 (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
699 (WebCore::QNetworkReplyWrapper::~QNetworkReplyWrapper):
700 (WebCore::QNetworkReplyWrapper::release):
701 (WebCore::QNetworkReplyWrapper::resetConnections):
702 (WebCore::QNetworkReplyWrapper::receiveMetaData):
703 (WebCore::QNetworkReplyWrapper::didReceiveFinished):
704 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
705 (WebCore::QNetworkReplyHandler::resetState):
706 (WebCore::QNetworkReplyHandler::release):
707 (WebCore::QNetworkReplyHandler::finish):
708 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
709 (WebCore::QNetworkReplyHandler::redirect):
710 (WebCore::QNetworkReplyHandler::forwardData):
711 (WebCore::QNetworkReplyHandler::sendNetworkRequest):
712 (WebCore::QNetworkReplyHandler::start):
713 * platform/network/qt/QNetworkReplyHandler.h:
714 (WebCore::QNetworkReplyWrapper::reply):
715 (WebCore::QNetworkReplyWrapper::redirectionTargetUrl):
716 (WebCore::QNetworkReplyWrapper::encoding):
717 (WebCore::QNetworkReplyWrapper::advertisedMimeType):
718 (WebCore::QNetworkReplyHandler::reply):
720 2011-03-30 Steve Falkenburg <sfalken@apple.com>
722 Reviewed by Adam Roben.
724 Rename Windows configuration Release_LTCG to Production for clarity
725 https://bugs.webkit.org/show_bug.cgi?id=57465
727 * WebCore.vcproj/QTMovieWin.vcproj:
728 * WebCore.vcproj/QTMovieWinProduction.vsprops: Copied from Source/WebCore/WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops.
729 * WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops: Removed.
730 * WebCore.vcproj/WebCore.sln:
731 * WebCore.vcproj/WebCore.submit.sln:
732 * WebCore.vcproj/WebCore.vcproj:
733 * WebCore.vcproj/WebCoreGenerated.vcproj:
734 * WebCore.vcproj/WebCoreProduction.vsprops: Copied from Source/WebCore/WebCore.vcproj/WebCoreReleaseLTCG.vsprops.
735 * WebCore.vcproj/WebCoreReleaseLTCG.vsprops: Removed.
737 2011-03-30 Brian Weinstein <bweinstein@apple.com>
739 Reviewed by Anders Carlsson.
741 ASSERT(cookieStorageAdapter) when calling stopObservingCookieChanges after WebProcess has crashed
742 https://bugs.webkit.org/show_bug.cgi?id=57477
743 <rdar://problem/9178751>
745 If someone has called startObservingCookieChanges, and the WebProcess crashes and restarts, the UIProcess
746 will call stopObservingCookieChanges when cookieStorageAdapter is nil.
748 The assert is wrong when the web process crashes, and there is no harm in dispatching a message to nil,
749 so remove the assert.
751 * platform/network/mac/CookieStorageMac.mm:
752 (WebCore::stopObservingCookieChanges):
754 2011-03-30 Sam Weinig <sam@webkit.org>
758 * platform/DefaultLocalizationStrategy.cpp:
759 (WebCore::DefaultLocalizationStrategy::contextMenuItemTagLookUpInDictionary):
761 2011-03-30 Sam Weinig <sam@webkit.org>
763 Reviewed by Anders Carlsson.
765 Add default localization strategy that can be shared by WebKit1 and WebKit2
766 https://bugs.webkit.org/show_bug.cgi?id=57406
768 Currently, only WebKit2 uses this default strategy, but WebKit1 should be able
771 * platform/DefaultLocalizationStrategy.cpp: Copied from Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp.
772 (WebCore::DefaultLocalizationStrategy::DefaultLocalizationStrategy):
773 * platform/DefaultLocalizationStrategy.h: Copied from Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h.
774 Copy the implementation of the Localization strategy from WebKit2 into a shared default strategy.
776 * platform/LocalizedStrings.cpp:
777 (WebCore::localizedString):
778 Add default implementation of localization bottleneck function.
780 * platform/LocalizedStrings.h:
781 Add localization macros here, instead of defining them in the above layer.
783 * platform/PlatformStrategies.cpp:
784 (WebCore::PlatformStrategies::createLocalizationStrategy):
785 * platform/PlatformStrategies.h:
786 Add default implementation of strategy creation function which creates the default strategy.
788 * platform/win/LocalizedStringsWin.cpp: Copied from Source/WebCore/platform/mac/LocalizedStringsMac.mm.
789 (WebCore::localizedString):
790 Add stub for windows, this will be update to pull from the bundle in a follow up patch.
798 * WebCore.vcproj/WebCore.vcproj:
799 * WebCore.xcodeproj/project.pbxproj:
802 2011-03-30 Andras Becsi <abecsi@webkit.org>
804 Reviewed by Darin Adler.
806 CSS: Slow parsing of rgb() with percent values
807 https://bugs.webkit.org/show_bug.cgi?id=16708
809 Implement fast-path parsing for percentage color values.
811 Gain ~30% speedup on http://canvex.lazyilluminati.com/misc/3d.html
813 Relanding with rounding fix after it was rolled out in r82315.
816 (WebCore::checkForValidDouble): Extend to return the number of characters forming a valid double.
817 (WebCore::parseDouble): Function for parsing double values if they are valid.
818 (WebCore::parseColorIntOrPercentage): Extend parseColorInt to deal with percentage values.
819 (WebCore::parseAlphaValue): Use the new functions.
820 (WebCore::CSSParser::parseColor): Ditto.
822 2011-03-30 Ofri Wolfus <ofri@dhcp-172-28-40-178.tlv.corp.google.com>
824 Reviewed by Eric Seidel.
826 Add support for parsing unicode-bidi: -webkit-plaintext.
827 https://bugs.webkit.org/show_bug.cgi?id=57457
829 Test: css3/unicode-bidi-plaintext-parse.html
832 (WebCore::CSSParser::parseValue):
833 * css/CSSPrimitiveValueMappings.h:
834 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
835 (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
836 * css/CSSValueKeywords.in:
837 * rendering/style/RenderStyle.h:
838 * rendering/style/RenderStyleConstants.h:
840 2011-03-30 Andreas Kling <kling@webkit.org>
842 Reviewed by Benjamin Poulain.
844 [Qt] Remove unused variables in GraphicsContext::fillRect()
846 * platform/graphics/qt/GraphicsContextQt.cpp:
847 (WebCore::GraphicsContext::fillRect):
849 2011-03-30 Yael Aharon <yael.aharon@nokia.com>
851 Reviewed by Eric Seidel.
853 REGRESSION(r82419): New pixel test failure fast/box-shadow/basic-shadows.html
854 https://bugs.webkit.org/show_bug.cgi?id=57442
856 When checking the position of the inline iterator in the logicallyLastRun, we should not consider BR as text.
858 No new tests as existing test covers this case.
860 * rendering/RenderBlockLineLayout.cpp:
861 (WebCore::reachedEndOfTextRenderer):
863 2011-03-30 Mario Sanchez Prada <msanchez@igalia.com>
865 Reviewed by Chris Fleizach.
867 AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
868 https://bugs.webkit.org/show_bug.cgi?id=47636
870 Define new roles in WebCore and map them to ATK accordingly.
872 Test: platform/gtk/accessibility/aria-roles-unignored.html
874 * accessibility/AccessibilityObject.h: Added new roles to
875 represent paragraphs, labels, forms and div sections.
876 * accessibility/AccessibilityRenderObject.cpp:
877 (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
878 Return ParagraphRole, LabelRole, FormRole and DivRole when needed
879 for the GTK platform only.
880 * accessibility/gtk/AccessibilityObjectAtk.cpp:
881 (WebCore::AccessibilityObject::allowsTextRanges): Consider the new
882 roles now that those kind of nodes won't return true to isGroup().
883 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
884 (atkRole): Map new WebCore roles to ATK Roles.
885 (webkit_accessible_get_role): Remove code to define roles for
886 paragraphs, labels, forms and divs based on node's tag name.
888 Update mappings for the Mac platform.
890 * accessibility/mac/AccessibilityObjectWrapper.mm:
891 (createAccessibilityRoleMap): Add explicit mappings from the new
892 roles introduced to NSAccessibilityGroupRole.
894 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
896 Unreviewed. Build fix for Efl and Qt Win.
898 * inspector/PageDebuggerAgent.cpp: removed ENABLE(WORKERS) guard from code that has nothing to do with workers.
900 2011-03-30 Andrey Kosyakov <caseq@chromium.org>
902 Reviewed by Pavel Feldman.
904 Web Inspector: audit run never completes, fails in DOMAgent.js
905 https://bugs.webkit.org/show_bug.cgi?id=57349
907 - assure document is present before calling DOMAgent.querySelectAll()
909 * inspector/front-end/AuditRules.js:
910 (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
912 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
914 Unreviewed. Build fix.
916 * UseJSC.cmake: fix typo PageDebugServer -> PageScriptDebugServer
918 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
920 Reviewed by Pavel Feldman.
922 Web Inspector: split debugger agent into Page and Worker-specific ones
923 https://bugs.webkit.org/show_bug.cgi?id=57345
925 ScriptDebugServer and InspectorDebuggerAgent contain only functionality common
926 for Worker and Page debugger. All specifics is moved into Page/WorkerScriptDebugServer
927 and Page/WorkerDebuggerAgent.
934 * WebCore.vcproj/WebCore.vcproj:
935 * WebCore.xcodeproj/project.pbxproj:
936 * bindings/js/JSBindingsAllInOne.cpp:
937 * bindings/js/JSInjectedScriptHostCustom.cpp:
938 (WebCore::JSInjectedScriptHost::currentCallFrame):
939 * bindings/js/PageScriptDebugServer.cpp: Added.
941 (WebCore::PageScriptDebugServer::shared):
942 (WebCore::PageScriptDebugServer::PageScriptDebugServer):
943 (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
944 (WebCore::PageScriptDebugServer::addListener):
945 (WebCore::PageScriptDebugServer::removeListener):
946 (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
947 (WebCore::PageScriptDebugServer::getListenersForGlobalObject):
948 (WebCore::PageScriptDebugServer::didPause):
949 (WebCore::PageScriptDebugServer::didContinue):
950 (WebCore::PageScriptDebugServer::didRemoveLastListener):
951 (WebCore::PageScriptDebugServer::setJavaScriptPaused):
952 * bindings/js/PageScriptDebugServer.h: Added.
953 * bindings/js/ScriptDebugServer.cpp:
954 (WebCore::ScriptDebugServer::ScriptDebugServer):
955 (WebCore::ScriptDebugServer::sourceParsed):
956 (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
957 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
958 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
959 (WebCore::ScriptDebugServer::pauseIfNeeded):
960 * bindings/js/ScriptDebugServer.h:
961 * bindings/js/WorkerScriptDebugServer.cpp: Added.
962 (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
963 (WebCore::WorkerScriptDebugServer::addListener):
964 (WebCore::WorkerScriptDebugServer::removeListener):
965 * bindings/js/WorkerScriptDebugServer.h: Added.
966 (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
967 (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
968 (WebCore::WorkerScriptDebugServer::getListenersForGlobalObject):
969 (WebCore::WorkerScriptDebugServer::didPause):
970 (WebCore::WorkerScriptDebugServer::didContinue):
971 * bindings/v8/PageScriptDebugServer.cpp: Added.
972 (WebCore::retrieveFrame):
973 (WebCore::PageScriptDebugServer::shared):
974 (WebCore::PageScriptDebugServer::PageScriptDebugServer):
975 (WebCore::PageScriptDebugServer::addListener):
976 (WebCore::PageScriptDebugServer::removeListener):
977 (WebCore::PageScriptDebugServer::setClientMessageLoop):
978 (WebCore::PageScriptDebugServer::getDebugListenerForContext):
979 (WebCore::PageScriptDebugServer::runMessageLoopOnPause):
980 (WebCore::PageScriptDebugServer::quitMessageLoopOnPause):
981 * bindings/v8/PageScriptDebugServer.h: Added.
982 (WebCore::PageScriptDebugServer::setEnabled):
983 (WebCore::PageScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
984 (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
985 * bindings/v8/ScriptDebugServer.cpp:
986 (WebCore::ScriptDebugServer::ScriptDebugServer):
987 (WebCore::ScriptDebugServer::setPauseOnNextStatement):
988 (WebCore::ScriptDebugServer::breakProgram):
989 (WebCore::ScriptDebugServer::continueProgram):
990 (WebCore::ScriptDebugServer::stepIntoStatement):
991 (WebCore::ScriptDebugServer::stepOverStatement):
992 (WebCore::ScriptDebugServer::stepOutOfFunction):
993 (WebCore::ScriptDebugServer::editScriptSource):
994 (WebCore::toScriptDebugServer):
995 (WebCore::ScriptDebugServer::breakProgramCallback):
996 (WebCore::ScriptDebugServer::v8DebugEventCallback):
997 (WebCore::ScriptDebugServer::handleV8DebugEvent):
998 (WebCore::ScriptDebugServer::isPaused):
999 * bindings/v8/ScriptDebugServer.h:
1000 * bindings/v8/WorkerScriptDebugServer.cpp: Added.
1001 (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1002 (WebCore::WorkerScriptDebugServer::addListener):
1003 (WebCore::WorkerScriptDebugServer::removeListener):
1004 * bindings/v8/WorkerScriptDebugServer.h: Added.
1005 (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1006 (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
1007 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
1008 (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
1009 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1010 (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1011 * inspector/InjectedScriptHost.h:
1012 (WebCore::InjectedScriptHost::init):
1013 (WebCore::InjectedScriptHost::debuggerAgent):
1014 * inspector/InspectorAgent.cpp:
1015 (WebCore::InspectorAgent::InspectorAgent):
1016 * inspector/InspectorDebuggerAgent.cpp:
1017 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1018 (WebCore::InspectorDebuggerAgent::enable):
1019 (WebCore::InspectorDebuggerAgent::disable):
1020 (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1021 (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1022 (WebCore::InspectorDebuggerAgent::continueToLocation):
1023 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1024 (WebCore::InspectorDebuggerAgent::editScriptSource):
1025 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1026 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1027 (WebCore::InspectorDebuggerAgent::resume):
1028 (WebCore::InspectorDebuggerAgent::stepOver):
1029 (WebCore::InspectorDebuggerAgent::stepInto):
1030 (WebCore::InspectorDebuggerAgent::stepOut):
1031 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1032 (WebCore::InspectorDebuggerAgent::didPause):
1033 (WebCore::InspectorDebuggerAgent::breakProgram):
1034 * inspector/InspectorDebuggerAgent.h:
1035 * inspector/InspectorProfilerAgent.cpp:
1036 (WebCore::InspectorProfilerAgent::disable):
1037 (WebCore::InspectorProfilerAgent::enable):
1038 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1039 * inspector/PageDebuggerAgent.cpp: Added.
1040 (WebCore::PageDebuggerAgent::create):
1041 (WebCore::PageDebuggerAgent::PageDebuggerAgent):
1042 (WebCore::PageDebuggerAgent::~PageDebuggerAgent):
1043 (WebCore::PageDebuggerAgent::startListeningScriptDebugServer):
1044 (WebCore::PageDebuggerAgent::stopListeningScriptDebugServer):
1045 (WebCore::PageDebuggerAgent::scriptDebugServer):
1046 * inspector/PageDebuggerAgent.h: Added.
1047 * inspector/WorkerDebuggerAgent.cpp: Added.
1048 (WebCore::WorkerDebuggerAgent::create):
1049 (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
1050 (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
1051 (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
1052 (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
1053 (WebCore::WorkerDebuggerAgent::scriptDebugServer):
1054 * inspector/WorkerDebuggerAgent.h: Added.
1056 2011-03-30 Levi Weintraub <leviw@chromium.org>
1058 Reviewed by Ryosuke Niwa.
1060 Clicking below last line of right-to-left editable text that puts caret in the wrong place
1061 https://bugs.webkit.org/show_bug.cgi?id=38087
1063 Moving getLogical[Start/End]BoxWithNode to RootInlineBox and using it in positionForPointWithInlineChildren
1064 instead of lastLeafChild, which wasn't correct in the RTL case.
1066 Test: editing/selection/click-below-rtl-text.html
1068 * editing/visible_units.cpp:
1069 (WebCore::logicalStartPositionForLine): Moved to RootInlineBox.
1070 (WebCore::logicalEndPositionForLine): Ditto.
1071 * editing/visible_units.h:
1072 * rendering/RenderBlock.cpp:
1073 (WebCore::RenderBlock::positionForPointWithInlineChildren): Useing getLogicalEndBoxWithNode instead
1075 * rendering/RootInlineBox.cpp:
1076 (WebCore::RootInlineBox::getLogicalStartBoxWithNode): Moved and refactored.
1077 (WebCore::RootInlineBox::getLogicalEndBoxWithNode): Ditto.
1078 * rendering/RootInlineBox.h:
1080 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
1082 Unreviewed. Rollout r82438 and r82436.
1089 * WebCore.vcproj/WebCore.vcproj:
1090 * WebCore.xcodeproj/project.pbxproj:
1091 * bindings/js/JSBindingsAllInOne.cpp:
1092 * bindings/js/JSInjectedScriptHostCustom.cpp:
1093 (WebCore::JSInjectedScriptHost::currentCallFrame):
1094 * bindings/js/PageScriptDebugServer.cpp: Removed.
1095 * bindings/js/PageScriptDebugServer.h: Removed.
1096 * bindings/js/ScriptDebugServer.cpp:
1097 (WebCore::ScriptDebugServer::shared):
1098 (WebCore::ScriptDebugServer::ScriptDebugServer):
1099 (WebCore::ScriptDebugServer::addListener):
1100 (WebCore::ScriptDebugServer::removeListener):
1101 (WebCore::ScriptDebugServer::hasListenersInterestedInPage):
1103 (WebCore::ScriptDebugServer::sourceParsed):
1104 (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
1105 (WebCore::ScriptDebugServer::setJavaScriptPaused):
1106 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1107 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1108 (WebCore::ScriptDebugServer::pauseIfNeeded):
1109 (WebCore::ScriptDebugServer::recompileAllJSFunctions):
1110 (WebCore::ScriptDebugServer::didAddListener):
1111 (WebCore::ScriptDebugServer::didRemoveListener):
1112 * bindings/js/ScriptDebugServer.h:
1113 * bindings/js/WorkerScriptDebugServer.cpp: Removed.
1114 * bindings/js/WorkerScriptDebugServer.h: Removed.
1115 * bindings/v8/PageScriptDebugServer.cpp: Removed.
1116 * bindings/v8/PageScriptDebugServer.h: Removed.
1117 * bindings/v8/ScriptDebugServer.cpp:
1118 (WebCore::retrieveFrame):
1119 (WebCore::ScriptDebugServer::shared):
1120 (WebCore::ScriptDebugServer::ScriptDebugServer):
1121 (WebCore::ScriptDebugServer::addListener):
1122 (WebCore::ScriptDebugServer::removeListener):
1123 (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1124 (WebCore::ScriptDebugServer::breakProgram):
1125 (WebCore::ScriptDebugServer::continueProgram):
1126 (WebCore::ScriptDebugServer::stepIntoStatement):
1127 (WebCore::ScriptDebugServer::stepOverStatement):
1128 (WebCore::ScriptDebugServer::stepOutOfFunction):
1129 (WebCore::ScriptDebugServer::editScriptSource):
1130 (WebCore::ScriptDebugServer::setEnabled):
1131 (WebCore::ScriptDebugServer::breakProgramCallback):
1132 (WebCore::ScriptDebugServer::v8DebugEventCallback):
1133 (WebCore::ScriptDebugServer::handleV8DebugEvent):
1134 (WebCore::ScriptDebugServer::didResume):
1135 * bindings/v8/ScriptDebugServer.h:
1136 (WebCore::ScriptDebugServer::pageCreated):
1137 (WebCore::ScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1138 (WebCore::ScriptDebugServer::setClientMessageLoop):
1139 * bindings/v8/WorkerScriptDebugServer.cpp: Removed.
1140 * bindings/v8/WorkerScriptDebugServer.h: Removed.
1141 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1142 (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1143 * inspector/InjectedScriptHost.h:
1144 (WebCore::InjectedScriptHost::init):
1145 * inspector/InspectorAgent.cpp:
1146 (WebCore::InspectorAgent::InspectorAgent):
1147 * inspector/InspectorDebuggerAgent.cpp:
1148 (WebCore::InspectorDebuggerAgent::create):
1149 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1150 (WebCore::InspectorDebuggerAgent::enable):
1151 (WebCore::InspectorDebuggerAgent::disable):
1152 (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1153 (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1154 (WebCore::InspectorDebuggerAgent::continueToLocation):
1155 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1156 (WebCore::InspectorDebuggerAgent::editScriptSource):
1157 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1158 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1159 (WebCore::InspectorDebuggerAgent::resume):
1160 (WebCore::InspectorDebuggerAgent::stepOver):
1161 (WebCore::InspectorDebuggerAgent::stepInto):
1162 (WebCore::InspectorDebuggerAgent::stepOut):
1163 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1164 (WebCore::InspectorDebuggerAgent::didPause):
1165 (WebCore::InspectorDebuggerAgent::breakProgram):
1166 * inspector/InspectorDebuggerAgent.h:
1167 * inspector/InspectorProfilerAgent.cpp:
1168 (WebCore::InspectorProfilerAgent::disable):
1169 (WebCore::InspectorProfilerAgent::enable):
1170 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1171 * inspector/PageDebuggerAgent.cpp: Removed.
1172 * inspector/PageDebuggerAgent.h: Removed.
1173 * inspector/WorkerDebuggerAgent.cpp: Removed.
1174 * inspector/WorkerDebuggerAgent.h: Removed.
1176 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
1178 Unreviewed. Fix compilation on Windows and EFL.
1181 * bindings/js/JSBindingsAllInOne.cpp:
1183 2011-03-30 Yury Semikhatsky <yurys@chromium.org>
1185 Reviewed by Pavel Feldman.
1187 Web Inspector: split debugger agent into Page and Worker-specific ones
1188 https://bugs.webkit.org/show_bug.cgi?id=57345
1190 ScriptDebugServer and InspectorDebuggerAgent contain only functionality common
1191 for Worker and Page debugger. All specifics is moved into Page/WorkerScriptDebugServer
1192 and Page/WorkerDebuggerAgent.
1198 * WebCore.vcproj/WebCore.vcproj:
1199 * WebCore.xcodeproj/project.pbxproj:
1200 * bindings/js/JSInjectedScriptHostCustom.cpp:
1201 (WebCore::JSInjectedScriptHost::currentCallFrame):
1202 * bindings/js/PageScriptDebugServer.cpp: Added.
1204 (WebCore::PageScriptDebugServer::shared):
1205 (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1206 (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1207 (WebCore::PageScriptDebugServer::addListener):
1208 (WebCore::PageScriptDebugServer::removeListener):
1209 (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
1210 (WebCore::PageScriptDebugServer::getListenersForGlobalObject):
1211 (WebCore::PageScriptDebugServer::didPause):
1212 (WebCore::PageScriptDebugServer::didContinue):
1213 (WebCore::PageScriptDebugServer::didRemoveLastListener):
1214 (WebCore::PageScriptDebugServer::setJavaScriptPaused):
1215 * bindings/js/PageScriptDebugServer.h: Added.
1216 * bindings/js/ScriptDebugServer.cpp:
1217 (WebCore::ScriptDebugServer::ScriptDebugServer):
1218 (WebCore::ScriptDebugServer::sourceParsed):
1219 (WebCore::ScriptDebugServer::dispatchFunctionToListeners):
1220 (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1221 (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1222 (WebCore::ScriptDebugServer::pauseIfNeeded):
1223 * bindings/js/ScriptDebugServer.h:
1224 * bindings/js/WorkerScriptDebugServer.cpp: Added.
1225 (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1226 (WebCore::WorkerScriptDebugServer::addListener):
1227 (WebCore::WorkerScriptDebugServer::removeListener):
1228 * bindings/js/WorkerScriptDebugServer.h: Added.
1229 (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1230 (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
1231 (WebCore::WorkerScriptDebugServer::getListenersForGlobalObject):
1232 (WebCore::WorkerScriptDebugServer::didPause):
1233 (WebCore::WorkerScriptDebugServer::didContinue):
1234 * bindings/v8/PageScriptDebugServer.cpp: Added.
1235 (WebCore::retrieveFrame):
1236 (WebCore::PageScriptDebugServer::shared):
1237 (WebCore::PageScriptDebugServer::PageScriptDebugServer):
1238 (WebCore::PageScriptDebugServer::addListener):
1239 (WebCore::PageScriptDebugServer::removeListener):
1240 (WebCore::PageScriptDebugServer::setClientMessageLoop):
1241 (WebCore::PageScriptDebugServer::getDebugListenerForContext):
1242 (WebCore::PageScriptDebugServer::runMessageLoopOnPause):
1243 (WebCore::PageScriptDebugServer::quitMessageLoopOnPause):
1244 * bindings/v8/PageScriptDebugServer.h: Added.
1245 (WebCore::PageScriptDebugServer::setEnabled):
1246 (WebCore::PageScriptDebugServer::ClientMessageLoop::~ClientMessageLoop):
1247 (WebCore::PageScriptDebugServer::~PageScriptDebugServer):
1248 * bindings/v8/ScriptDebugServer.cpp:
1249 (WebCore::ScriptDebugServer::ScriptDebugServer):
1250 (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1251 (WebCore::ScriptDebugServer::breakProgram):
1252 (WebCore::ScriptDebugServer::continueProgram):
1253 (WebCore::ScriptDebugServer::stepIntoStatement):
1254 (WebCore::ScriptDebugServer::stepOverStatement):
1255 (WebCore::ScriptDebugServer::stepOutOfFunction):
1256 (WebCore::ScriptDebugServer::editScriptSource):
1257 (WebCore::toScriptDebugServer):
1258 (WebCore::ScriptDebugServer::breakProgramCallback):
1259 (WebCore::ScriptDebugServer::v8DebugEventCallback):
1260 (WebCore::ScriptDebugServer::handleV8DebugEvent):
1261 (WebCore::ScriptDebugServer::isPaused):
1262 * bindings/v8/ScriptDebugServer.h:
1263 * bindings/v8/WorkerScriptDebugServer.cpp: Added.
1264 (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
1265 (WebCore::WorkerScriptDebugServer::addListener):
1266 (WebCore::WorkerScriptDebugServer::removeListener):
1267 * bindings/v8/WorkerScriptDebugServer.h: Added.
1268 (WebCore::WorkerScriptDebugServer::~WorkerScriptDebugServer):
1269 (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
1270 (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
1271 (WebCore::WorkerScriptDebugServer::quitMessageLoopOnPause):
1272 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1273 (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
1274 * inspector/InjectedScriptHost.h:
1275 (WebCore::InjectedScriptHost::init):
1276 (WebCore::InjectedScriptHost::debuggerAgent):
1277 * inspector/InspectorAgent.cpp:
1278 (WebCore::InspectorAgent::InspectorAgent):
1279 * inspector/InspectorDebuggerAgent.cpp:
1280 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1281 (WebCore::InspectorDebuggerAgent::enable):
1282 (WebCore::InspectorDebuggerAgent::disable):
1283 (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
1284 (WebCore::InspectorDebuggerAgent::removeBreakpoint):
1285 (WebCore::InspectorDebuggerAgent::continueToLocation):
1286 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1287 (WebCore::InspectorDebuggerAgent::editScriptSource):
1288 (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1289 (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1290 (WebCore::InspectorDebuggerAgent::resume):
1291 (WebCore::InspectorDebuggerAgent::stepOver):
1292 (WebCore::InspectorDebuggerAgent::stepInto):
1293 (WebCore::InspectorDebuggerAgent::stepOut):
1294 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
1295 (WebCore::InspectorDebuggerAgent::didPause):
1296 (WebCore::InspectorDebuggerAgent::breakProgram):
1297 * inspector/InspectorDebuggerAgent.h:
1298 * inspector/InspectorProfilerAgent.cpp:
1299 (WebCore::InspectorProfilerAgent::disable):
1300 (WebCore::InspectorProfilerAgent::enable):
1301 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1302 * inspector/PageDebuggerAgent.cpp: Added.
1303 (WebCore::PageDebuggerAgent::create):
1304 (WebCore::PageDebuggerAgent::PageDebuggerAgent):
1305 (WebCore::PageDebuggerAgent::~PageDebuggerAgent):
1306 (WebCore::PageDebuggerAgent::startListeningScriptDebugServer):
1307 (WebCore::PageDebuggerAgent::stopListeningScriptDebugServer):
1308 (WebCore::PageDebuggerAgent::scriptDebugServer):
1309 * inspector/PageDebuggerAgent.h: Added.
1310 * inspector/WorkerDebuggerAgent.cpp: Added.
1311 (WebCore::WorkerDebuggerAgent::create):
1312 (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
1313 (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
1314 (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
1315 (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
1316 (WebCore::WorkerDebuggerAgent::scriptDebugServer):
1317 * inspector/WorkerDebuggerAgent.h: Added.
1319 2011-03-30 Alexander Pavlov <apavlov@chromium.org>
1321 Reviewed by Pavel Feldman.
1323 Web Inspector: Make the getStylesForNode result "styleAttributes" value an array rather than a map
1324 https://bugs.webkit.org/show_bug.cgi?id=57440
1326 * inspector/InspectorCSSAgent.cpp:
1327 (WebCore::InspectorCSSAgent::getStylesForNode):
1328 (WebCore::InspectorCSSAgent::buildArrayForAttributeStyles):
1329 * inspector/InspectorCSSAgent.h:
1330 * inspector/front-end/CSSStyleModel.js:
1331 (WebInspector.CSSStyleModel.prototype.getStylesAsync):
1333 2011-03-30 Evan Martin <evan@chromium.org>
1335 Reviewed by Ryosuke Niwa.
1337 Fix a last-second ASSERT in previous change that was wrong.
1340 (WebCore::Document::setTitle):
1342 2011-03-30 Levi Weintraub <leviw@chromium.org>
1344 Reviewed by Eric Seidel.
1346 RTL: Directionality always reset on hard line break
1347 https://bugs.webkit.org/show_bug.cgi?id=23124
1349 No longer clearing all BidiContexts when we hit a hard line break.
1350 Instead, directionality applied by DOM elements is preserved by
1351 reconstructing the context stack ignoring those that didn't come
1354 Test: fast/text/international/bidi-br-as-paragraph-separator.html
1356 * platform/text/BidiContext.cpp:
1357 (WebCore::BidiContext::createUncached):
1358 (WebCore::BidiContext::create):
1359 (WebCore::copyContextAndRebaselineLevel): Helper to make a copy of a context
1360 and recalculate its bidi level.
1361 (WebCore::BidiContext::copyStackRemovingUnicodeEmbeddingContexts): Returns the top of
1362 a BidiContext stack that's equivalent but without contexts from Unicode directional
1364 (WebCore::operator==): Now takes into account embedding source.
1365 * platform/text/BidiContext.h:
1366 (WebCore::BidiContext::source): Enum to specify whether an embedded
1367 bidirectional control came from the DOM/Style or Unicode characters
1368 (WebCore::BidiContext::BidiContext):
1369 * platform/text/BidiResolver.h:
1370 (WebCore::BidiEmbedding::BidiEmbedding): An embedding is now a direction
1371 and a hint about where it came from so we can differentiate DOM directions
1372 from unicode direction control characters.
1373 (WebCore::BidiEmbedding::direction):
1374 (WebCore::BidiEmbedding::source):
1375 (WebCore::::embed): Now takes a source as well as a direction.
1376 (WebCore::::commitExplicitEmbedding):
1377 (WebCore::::createBidiRunsForLine):
1378 * rendering/InlineIterator.h:
1379 (WebCore::bidiNext):
1380 (WebCore::bidiFirst):
1381 * rendering/RenderBlockLineLayout.cpp:
1382 (WebCore::RenderBlock::determineStartPosition):
1384 2011-03-30 Steve Block <steveblock@google.com>
1386 Reviewed by Jeremy Orlow.
1388 JavaMethod should not expose JavaString in its API
1389 https://bugs.webkit.org/show_bug.cgi?id=55765
1391 - Factors out a JavaMethod interface which does not use JNI types.
1392 This will allow the Java bridge to be used with objects that
1393 don't use JNI directly. The existing jobject-backed
1394 implementation is moved to a new JavaMethodJobject class which
1395 implements the interface.
1396 - Use WTF::String in place of JavaString in the API, as JavaString
1397 exposes JNI types in its interface.
1398 - Remove the method ID as it uses JNI types.
1400 No new tests, refactoring only.
1402 * Android.jscbindings.mk:
1403 * Android.v8bindings.mk:
1406 * WebCore.xcodeproj/project.pbxproj:
1407 * bridge/jni/JavaMethod.h:
1408 * bridge/jni/JavaMethodJobject.cpp:
1409 (JavaMethodJobject::JavaMethodJobject):
1410 (JavaMethodJobject::~JavaMethodJobject):
1412 (JavaMethodJobject::signature):
1413 * bridge/jni/JavaMethodJobject.h: Copied from Source/WebCore/bridge/jni/JavaMethod.h.
1414 (JSC::Bindings::JavaMethodJobject::name):
1415 (JSC::Bindings::JavaMethodJobject::returnTypeClassName):
1416 (JSC::Bindings::JavaMethodJobject::parameterAt):
1417 (JSC::Bindings::JavaMethodJobject::returnType):
1418 (JSC::Bindings::JavaMethodJobject::isStatic):
1419 (JSC::Bindings::JavaMethodJobject::numParameters):
1420 * bridge/jni/jsc/JavaClassJSC.cpp:
1421 (JavaClass::JavaClass):
1422 * bridge/jni/jsc/JavaInstanceJSC.cpp:
1423 (JavaInstance::invokeMethod):
1424 * bridge/jni/v8/JavaClassV8.cpp:
1425 (JavaClass::JavaClass):
1426 * bridge/jni/v8/JavaInstanceV8.cpp:
1427 (JavaInstance::invokeMethod):
1429 2011-03-30 Evan Martin <evan@chromium.org>
1431 Reviewed by Ryosuke Niwa.
1433 clean up Document's handling of title changes
1434 https://bugs.webkit.org/show_bug.cgi?id=57433
1436 Document::setTitle has two entry points:
1437 1) from DOM bindings, like document.title="foo"
1438 2) from title tags, like <title>foo</title> in HTML
1440 Split these two code paths to make the code easier to follow.
1441 Also, replace the repeated pattern of
1442 m_rawTitle = "foo"; updateTitle();
1447 (WebCore::Document::updateTitle):
1448 (WebCore::Document::setTitle):
1449 (WebCore::Document::setTitleElement):
1450 (WebCore::Document::removeTitle):
1452 * html/HTMLTitleElement.cpp:
1453 (WebCore::HTMLTitleElement::insertedIntoDocument):
1454 (WebCore::HTMLTitleElement::childrenChanged):
1455 * svg/SVGTitleElement.cpp:
1456 (WebCore::SVGTitleElement::insertedIntoDocument):
1457 (WebCore::SVGTitleElement::childrenChanged):
1459 2011-03-30 Levi Weintraub <leviw@chromium.org>
1461 Reviewed by Ryosuke Niwa.
1463 BreakBlockQuoteCommand assumes all li tags have list item renderers
1464 https://bugs.webkit.org/show_bug.cgi?id=57253
1466 Checking that the renderers of li nodes are actually RenderListItems
1467 before treating them as such.
1469 Test: editing/execCommand/crash-breaking-blockquote-with-list.html
1471 * editing/BreakBlockquoteCommand.cpp:
1472 (WebCore::BreakBlockQuoteCommand::doApply):
1474 2011-03-30 Pavel Feldman <pfeldman@chromium.org>
1476 Not reviewed: fixing typo in the inspector front-end.
1478 Web Inspector: REGRESSION: Broken live edit errors handling
1479 https://bugs.webkit.org/show_bug.cgi?id=57436
1481 * inspector/front-end/DebuggerModel.js:
1482 (WebInspector.DebuggerModel.prototype._didEditScriptSource):
1484 2011-03-30 Yael Aharon <yael.aharon@nokia.com>
1486 Reviewed by Eric Seidel.
1488 Left/Right borders/padding/margins are not always added correctly when rendering multiline inline boxes with bidi elements
1489 https://bugs.webkit.org/show_bug.cgi?id=9272
1492 Also fixes https://bugs.webkit.org/show_bug.cgi?id=47210 and https://bugs.webkit.org/show_bug.cgi?id=8392.
1494 Change how we decide if an InlineFlowBox is the last one for its renderer. Use the position of resolver's logicallyLastRun
1495 to decide if there is more text in the next line.
1497 Tests: fast/borders/rtl-border-01.html
1498 fast/borders/rtl-border-02.html
1499 fast/borders/rtl-border-03.html
1500 fast/borders/rtl-border-04.html
1501 fast/borders/rtl-border-05.html
1503 * rendering/InlineFlowBox.cpp:
1504 (WebCore::isAnsectorAndWithinBlock):
1505 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1506 * rendering/InlineFlowBox.h:
1507 * rendering/RenderBlock.h:
1508 * rendering/RenderBlockLineLayout.cpp:
1509 (WebCore::RenderBlock::constructLine):
1510 (WebCore::reachedEndOfTextRenderer):
1511 (WebCore::RenderBlock::layoutInlineChildren):
1513 2011-03-29 Nikolas Zimmermann <nzimmermann@rim.com>
1515 Reviewed by Eric Seidel.
1517 REGRESSION (r68976): Incorrect bidi rendering in SVG text
1518 https://bugs.webkit.org/show_bug.cgi?id=53980
1520 Deconvolute SVGTextLayoutEngine code, which was confusing due to the simultaneous processing of the rendered text
1521 in visual and logical order. Added several helper methods to make the code more readable.
1523 Fix Unicode directional formatting characters support, now works as expected.
1525 Test: svg/text/bidi-embedded-direction.svg
1527 * editing/visible_units.cpp: Refactor getLeafBoxesInLogicalOrder(), move to InlineFlowBox.
1528 (WebCore::getLogicalStartBoxAndNode): Use new collectLeafBoxesInLogicalOrder() method in InlineFlowBox.
1529 (WebCore::getLogicalEndBoxAndNode): Ditto.
1530 * rendering/InlineFlowBox.cpp: Add new helper function, that returns a list of all leaf boxes in logical order.
1531 (WebCore::InlineFlowBox::collectLeafBoxesInLogicalOrder):
1532 * rendering/InlineFlowBox.h:
1533 * rendering/svg/RenderSVGText.cpp: Actually trigger reordering the x/y/dx/dy/rotate value lists, if needed.
1534 (WebCore::RenderSVGText::RenderSVGText):
1535 (WebCore::RenderSVGText::layout):
1536 * rendering/svg/RenderSVGText.h: Ditto.
1537 (WebCore::RenderSVGText::layoutAttributes):
1538 (WebCore::RenderSVGText::needsReordering):
1539 * rendering/svg/SVGRootInlineBox.cpp: Use new InlineFlowBox::collectLeafBoxesINLogicalOrder(), with a custom "inline box reverse" implementation,
1540 which not only reverses the order of InlineBoxes, but also the order of the x/y/dx/dy/rotate value lists, if needed.
1541 (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
1542 (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
1543 (WebCore::swapItems):
1544 (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
1545 (WebCore::SVGRootInlineBox::reorderValueLists):
1546 * rendering/svg/SVGRootInlineBox.h:
1547 * rendering/svg/SVGTextLayoutAttributes.cpp: Store RenderSVGInlineText* pointer, where we belong to.
1548 (WebCore::SVGTextLayoutAttributes::SVGTextLayoutAttributes):
1549 (WebCore::SVGTextLayoutAttributes::dump):
1550 * rendering/svg/SVGTextLayoutAttributes.h:
1551 (WebCore::SVGTextLayoutAttributes::context):
1552 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Pass RenderSVGInlineText* object when creating SVGTextLayoutAttributes.
1553 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree):
1554 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
1555 * rendering/svg/SVGTextLayoutAttributesBuilder.h:
1556 * rendering/svg/SVGTextLayoutEngine.cpp: Rewrite & cleanup the main layout algorithm, to be less confusing.
1557 (WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
1558 (WebCore::SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded):
1559 (WebCore::SVGTextLayoutEngine::recordTextFragment):
1560 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
1561 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
1562 (WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
1563 (WebCore::SVGTextLayoutEngine::advanceToNextLogicalCharacter):
1564 (WebCore::SVGTextLayoutEngine::advanceToNextVisualCharacter):
1565 (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
1566 * rendering/svg/SVGTextLayoutEngine.h:
1568 2011-03-30 Ilya Tikhonovsky <loislo@chromium.org>
1570 Not reviewed trivial change.
1572 Web Inspector: Remove unnecessary function arguments after r82281.
1573 https://bugs.webkit.org/show_bug.cgi?id=57327
1575 * inspector/InspectorAgent.cpp:
1576 (WebCore::InspectorAgent::didCommitLoad):
1577 (WebCore::InspectorAgent::domContentLoadedEventFired):
1578 * inspector/InspectorAgent.h:
1579 * inspector/InspectorInstrumentation.cpp:
1580 (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
1581 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
1583 2011-03-30 Kent Tamura <tkent@chromium.org>
1585 Reviewed by Ojan Vafai.
1587 H1 element should have different default style if it is in HTML5 sectioning elements.
1588 https://bugs.webkit.org/show_bug.cgi?id=52693
1590 Test: fast/css/h1-in-section-elements.html
1592 * css/html.css: Add font-size and margin declarations to follow HTML5 specification.
1593 (:-webkit-any(article,aside,nav,section) h1):
1594 (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1595 (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1596 (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1597 (:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1):
1599 2011-03-29 Beth Dakin <bdakin@apple.com>
1601 Reviewed by Maciej Stachowiak.
1603 Fix for https://bugs.webkit.org/show_bug.cgi?id=57408
1604 webkit-min-device-pixel-ratio media query doesn't work post-SnowLeopard
1606 <rdar://problem/8665411>
1608 * platform/mac/PlatformScreenMac.mm:
1609 (WebCore::windowScaleFactor):
1610 (WebCore::toUserSpace):
1611 (WebCore::toDeviceSpace):
1613 2011-03-29 Eric Seidel <eric@webkit.org>
1615 Reviewed by Dimitri Glazkov.
1617 Rename BidiResolver::eor and sor to m_eor and m_sor to match modern style
1618 https://bugs.webkit.org/show_bug.cgi?id=57369
1620 I considered renaming these to m_endOfRun and m_startOfRun but decided
1621 that was too verbose for now (given how often they're used). I suspect
1622 with a bit more refactoring we'll find they're not used very often and can be renamed
1625 * platform/text/BidiResolver.h:
1626 (WebCore::::appendRun):
1627 (WebCore::::checkDirectionInLowerRaiseEmbeddingLevel):
1628 (WebCore::::lowerExplicitEmbeddingLevel):
1629 (WebCore::::raiseExplicitEmbeddingLevel):
1630 (WebCore::::createBidiRunsForLine):
1631 * rendering/InlineIterator.h:
1632 (WebCore::InlineBidiResolver::appendRun):
1634 2011-03-29 Mikhail Naganov <mnaganov@chromium.org>
1636 Reviewed by Pavel Feldman.
1638 Web Inspector: [Chromium] Remove exact retained size request in detailed heap snapshots.
1639 https://bugs.webkit.org/show_bug.cgi?id=57351
1641 * bindings/js/ScriptHeapSnapshot.h:
1642 * bindings/v8/ScriptHeapSnapshot.cpp:
1643 * bindings/v8/ScriptHeapSnapshot.h:
1644 * inspector/Inspector.json:
1645 * inspector/InspectorProfilerAgent.cpp:
1646 * inspector/InspectorProfilerAgent.h:
1647 * inspector/front-end/DetailedHeapshotGridNodes.js:
1648 (WebInspector.HeapSnapshotGenericObjectNode):
1649 (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
1650 * inspector/front-end/DetailedHeapshotView.js:
1651 (WebInspector.DetailedHeapshotView.prototype._mouseClickInContainmentGrid):
1653 2011-03-29 Eric Seidel <eric@webkit.org>
1655 Reviewed by Ryosuke Niwa.
1657 Split more logic out from createBidiRunsForLine for readability
1658 https://bugs.webkit.org/show_bug.cgi?id=57341
1660 I marked reorderRunsFromLevels inline, but it probably doesn't actually need to (or want to) be.
1661 This lops another large hunk off of reorderRunsFromLevels further reducing the size and complexity.
1663 * platform/text/BidiResolver.h:
1664 (WebCore::::reorderRunsFromLevels):
1665 (WebCore::::createBidiRunsForLine):
1667 2011-03-29 Kent Tamura <tkent@chromium.org>
1669 Reviewed by Dimitri Glazkov.
1671 Make validation message bubble testable
1672 https://bugs.webkit.org/show_bug.cgi?id=57290
1674 Introduce a setting for validation message timer so that we can configure
1675 how long we show a validation message bubble.
1677 Test: fast/forms/validation-message-appearance.html
1679 * html/ValidationMessage.cpp:
1680 (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
1681 Don't set a timer if the timer magnification value is 0 or negative.
1682 Otherwise, hides the bubble length * magnification / 1000 seconds.
1683 * page/Settings.cpp:
1684 (WebCore::Settings::Settings): Initialize the timer magnification value.
1686 (WebCore::Settings::setValidationMessageTimerMagnification): Added.
1687 (WebCore::Settings::validationMessageTimerMaginification): Added.
1689 2011-03-29 Dimitri Glazkov <dglazkov@chromium.org>
1691 Remove the extraneous declaration I accidentally added in r82376.
1693 * dom/MouseEvent.h: Removed createSimulated decl.
1695 2011-03-29 James Robinson <jamesr@chromium.org>
1697 Reviewed by Kenneth Russell.
1699 [chromium] Compositor crash with show-layer-borders flag
1700 https://bugs.webkit.org/show_bug.cgi?id=57292
1702 Synchronize the debug border color/width with other properties to ensure the appropriate
1703 CCLayerImpl exists. Code is only exercised with a debugging command line flag so no layout
1706 * platform/graphics/chromium/LayerChromium.cpp:
1707 (WebCore::LayerChromium::pushPropertiesTo):
1708 (WebCore::LayerChromium::setBorderColor):
1709 (WebCore::LayerChromium::setBorderWidth):
1710 * platform/graphics/chromium/LayerChromium.h:
1712 2011-03-29 Tony Gentilcore <tonyg@chromium.org>
1714 Reviewed by Adam Barth.
1716 Teach the preload scanner about <input type=image>
1717 https://bugs.webkit.org/show_bug.cgi?id=57404
1719 I did a very rough sample of the top 50 web pages to see how many of each
1720 HTML resource type they include:
1730 Based on this, it seems worthwhile to preload inputs and iframes (possibly embed).
1731 This patch only does inputs.
1733 Test: fast/preloader/input.html
1735 * html/parser/HTMLPreloadScanner.cpp:
1736 (WebCore::HTMLNames::PreloadTask::PreloadTask):
1737 (WebCore::HTMLNames::PreloadTask::processAttributes):
1738 (WebCore::HTMLNames::PreloadTask::inputTypeAttributeIsImage):
1739 (WebCore::HTMLNames::PreloadTask::preload):
1741 2011-03-29 Luke Macpherson <macpherson@chromium.org>
1743 Reviewed by David Levin.
1745 Improve the massive switch statement in CSSStyleSelector::applyProperty.
1746 https://bugs.webkit.org/show_bug.cgi?id=56288
1748 No new tests are needed because no new functionality exposed.
1750 * css/CSSStyleSelector.cpp:
1751 (WebCore::CSSStyleSelector::applyProperty):
1752 Asserted that cases implemented in the CSSStyleApplyProperty lookup table are unreachable.
1755 2011-03-29 Dimitri Glazkov <dglazkov@chromium.org>
1757 Reviewed by Darin Adler.
1759 Introduce SimulatedMouseEvent and teach EventDispatcher how to use it.
1760 https://bugs.webkit.org/show_bug.cgi?id=57402
1762 No functional changes, covered by existing tests.
1764 * dom/EventDispatcher.cpp:
1765 (WebCore::EventDispatcher::dispatchSimulatedClick): Changed to use SimulatedMouseEvent.
1766 (WebCore::EventDispatcher::dispatchMouseEvent): Combined two dispatchMouseEvent methods
1767 into one, now that simulated-click events don't need one.
1768 * dom/EventDispatcher.h: Updated decls.
1769 * dom/MouseEvent.cpp:
1770 (WebCore::SimulatedMouseEvent::create): Added.
1771 (WebCore::SimulatedMouseEvent::~SimulatedMouseEvent): Added.
1772 (WebCore::SimulatedMouseEvent::SimulatedMouseEvent): Added.
1773 * dom/MouseEvent.h: Made constructor protected.
1775 2011-03-29 Anders Carlsson <andersca@apple.com>
1781 2011-03-29 Steve Block <steveblock@google.com>
1783 Reviewed by Jeremy Orlow.
1785 JavaInstance should not use jvalue in its API
1786 https://bugs.webkit.org/show_bug.cgi?id=57019
1788 This change updates JavaInstance for V8 to use JavaValue, rather than
1789 jvalue, in its API. This will allow us to create an API for
1790 JavaInstance that is independent of JNI, to allow it to be
1791 implemented on platforms that do not use JNI directly.
1793 Refactoring only, no new tests.
1795 * bridge/jni/v8/JavaInstanceV8.cpp:
1796 (JavaInstance::invokeMethod):
1797 (JavaInstance::getField):
1798 * bridge/jni/v8/JavaInstanceV8.h:
1799 * bridge/jni/v8/JavaNPObjectV8.cpp:
1800 (JSC::Bindings::JavaNPObjectInvoke):
1801 (JSC::Bindings::JavaNPObjectGetProperty):
1802 * bridge/jni/v8/JavaValueV8.h:
1804 2011-03-29 Eric Seidel <eric@webkit.org>
1806 Reviewed by Dimitri Glazkov.
1808 Rename BidiResolver::last to m_last to match modern style
1809 https://bugs.webkit.org/show_bug.cgi?id=57367
1811 * platform/text/BidiResolver.h:
1812 (WebCore::::lowerExplicitEmbeddingLevel):
1813 (WebCore::::raiseExplicitEmbeddingLevel):
1814 (WebCore::::createBidiRunsForLine):
1816 2011-03-29 Justin Schuh <jschuh@chromium.org>
1818 Reviewed by Maciej Stachowiak.
1820 SVGComponentTransferFunctionElement should validate type
1821 https://bugs.webkit.org/show_bug.cgi?id=56960
1823 Test: svg/filters/feComponentTransfer-style-crash.xhtml
1825 * svg/SVGComponentTransferFunctionElement.cpp:
1826 (WebCore::SVGComponentTransferFunctionElement::svgAttributeChanged):
1827 * svg/SVGComponentTransferFunctionElement.h:
1829 2011-03-29 Thomas Klausner <tk@giga.or.at>
1831 Reviewed by David Levin.
1834 https://bugs.webkit.org/show_bug.cgi?id=54406
1836 Fix compilation with png-1.5: struct members were hidden, and
1837 a new API to terminate data processing was added (especially for
1840 Compilation fixes, so no new tests.
1842 * platform/image-decoders/png/PNGImageDecoder.cpp:
1843 (WebCore::PNGImageDecoder::headerAvailable):
1844 (WebCore::PNGImageDecoder::rowAvailable):
1846 2011-03-29 Gavin Peters <gavinp@chromium.org>
1848 Reviewed by Tony Gentilcore.
1850 Add beforeload to icon and prefetch link rel types
1851 https://bugs.webkit.org/show_bug.cgi?id=56424
1853 Over in https://lists.webkit.org/pipermail/webkit-dev/2011-February/016034.html , a webkit-dev
1854 thread, I've discussed my hopes for the link element, and adding the link header. This
1855 change helps improve the link header by making it participate in the beforeload event in
1856 two more important cases.
1858 Tests: fast/dom/HTMLLinkElement/prefetch-beforeload.html
1859 http/tests/misc/link-rel-icon-beforeload.html
1860 webarchive/test-link-rel-icon-beforeload.html
1862 * html/HTMLLinkElement.cpp:
1863 (WebCore::HTMLLinkElement::checkBeforeLoadEvent):
1864 (WebCore::HTMLLinkElement::process):
1865 * html/HTMLLinkElement.h:
1867 2011-03-29 Eric Seidel <eric@webkit.org>
1869 Reviewed by Dimitri Glazkov.
1871 Rename BidiResolver::current to BidiResolver::m_current to match modern style
1872 https://bugs.webkit.org/show_bug.cgi?id=57363
1874 I was very confused by current until I realized it was a member variable.
1875 I also did m_reachedEndOfLine since that was small.
1877 * platform/text/BidiResolver.h:
1878 (WebCore::BidiResolver::position):
1879 (WebCore::BidiResolver::setPosition):
1880 (WebCore::BidiResolver::increment):
1881 (WebCore::::createBidiRunsForLine):
1883 2011-03-29 Geoff Pike <gpike@chromium.org>
1885 Reviewed by Dimitri Glazkov.
1887 In HitTestResult objects, initialize the ListHashSet<RefPtr<Node> >
1888 lazily. In my informal testing it seems to be used hardly at all, so
1889 it's wasteful to create it eagerly. Initializing a ListHashSet
1890 is expensive because a ListHashSet initially has space for 256
1891 elements, and that space is memset to 0.
1893 This change should improve performance but have no impact on
1894 correctness. On x86-64, for example, the change cuts the
1895 cost of HitTestResult(IntPoint()) in EventHandler::mouseMoved()
1896 from ~1700 cycles to ~300 cycles.
1898 * rendering/HitTestResult.cpp:
1899 (WebCore::HitTestResult::HitTestResult): copy *m_rectBasedTestResult if m_rectBasedTestResult isn't 0
1900 (WebCore::HitTestResult::operator=): copy *m_rectBasedTestResult if m_rectBasedTestResult isn't 0
1901 (WebCore::HitTestResult::addNodeToRectBasedTestResult): use mutableRectBasedTestResult() rather than m_rectBasedTestResult
1902 (WebCore::HitTestResult::append): append *(other.m_rectBasedTestResult) if other.m_rectBasedTestResult isn't 0
1903 * rendering/HitTestResult.h:
1904 (WebCore::HitTestResult::rectBasedTestResult): Add a typedef for ListHashSet<RefPtr<Node> > to ease readability. Change m_rectBasedTestResult from ListHashSet<RefPtr<Node> > to an OwnPtr of same. Modify rectBasedTestResult() and add mutableRectBasedTestResult().
1906 2011-03-29 Timothy Hatcher <timothy@apple.com>
1908 Update the order of the context menu to better match AppKit on Mac.
1910 <rdar://problem/9054893>
1912 Reviewed by John Sullivan.
1914 * English.lproj/Localizable.strings: Updated.
1915 * page/ContextMenuController.cpp:
1916 (WebCore::ContextMenuController::populate): Update the order of items on Mac.
1917 * platform/LocalizationStrategy.h:
1918 * platform/LocalizedStrings.cpp:
1919 (WebCore::contextMenuItemTagLookUpInDictionary): Added argument for selected string.
1920 * platform/LocalizedStrings.h:
1921 * platform/android/LocalizedStringsAndroid.cpp:
1922 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1923 * platform/brew/LocalizedStringsBrew.cpp:
1924 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1925 * platform/efl/LocalizedStringsEfl.cpp:
1926 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1927 * platform/gtk/LocalizedStringsGtk.cpp:
1928 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1929 * platform/haiku/LocalizedStringsHaiku.cpp:
1930 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1931 * platform/wx/LocalizedStringsWx.cpp:
1932 (WebCore::contextMenuItemTagLookUpInDictionary): Ditto.
1934 2011-03-29 Dean Jackson <dino@apple.com>
1936 Reviewed by Chris Marrin and Ken Russell.
1938 https://bugs.webkit.org/show_bug.cgi?id=57248
1939 Occlusion issues with WebGL in Safari
1941 The depth buffer on Safari ports was being set up with a
1942 maximum of 16 bits. Now we use a combined 24/8 depth/stencil
1943 buffer on Mac ports.
1945 No new tests as this is the setting for a particular port. Other
1946 ports may use different defaults.
1948 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1949 (WebCore::GraphicsContext3D::validateAttributes):
1950 - use Extensions3D to test for depth and multisample extensions
1951 rather than querying OpenGL directly.
1952 (WebCore::GraphicsContext3D::reshape):
1953 - use a 24bit depth buffer when the extension is enabled.
1955 2011-03-29 Dimitri Glazkov <dglazkov@chromium.org>
1957 Sorted XCode project. It's gotten quite out of sorts.
1959 * WebCore.xcodeproj/project.pbxproj: Ran sort-XCode-project-file.
1961 2011-03-29 Emil A Eklund <eae@chromium.org>
1963 Reviewed by Dimitri Glazkov.
1965 DatasetDOMStringMap::item and ::contains copies attribute name string
1966 https://bugs.webkit.org/show_bug.cgi?id=55645
1968 Change propertyNameMatchesAttributeName to match without creating a copy
1971 * dom/DatasetDOMStringMap.cpp:
1972 (WebCore::propertyNameMatchesAttributeName):
1974 2011-03-29 Csaba Osztrogonác <ossy@webkit.org>
1976 Unreviewed rollout r82282, part of r82288, r82298.
1978 * css/CSSParser.cpp:
1979 (WebCore::parseColorInt):
1980 (WebCore::isValidDouble):
1981 (WebCore::parseAlphaValue):
1982 (WebCore::CSSParser::parseColor):
1984 2011-03-25 Brent Fulgham <bfulgham@webkit.org>
1986 Reviewed by Dave Hyatt.
1988 https://bugs.webkit.org/show_bug.cgi?id=55981
1989 Second round of clean-ups, aimed at supporting GTK with the
1990 same unified FontPlatformData header. This version removes
1991 some unneeded WinCairo code, and aligns the WinCairo and
1992 GTK ports to reduce code duplication.
1994 * WebCore.vcproj/WebCore.vcproj: Get rid of a dangling reference
1995 to an old WinCairo file.
1996 * platform/graphics/FontPlatformData.h: Remove unneeded member
1997 for m_fontFace, which is a member of m_scaledFont. Switch to
1998 standard Cairo hashing.
1999 (WebCore::FontPlatformData::FontPlatformData):
2000 (WebCore::FontPlatformData::font):
2001 (WebCore::FontPlatformData::scaledFont):
2002 (WebCore::FontPlatformData::hash):
2003 (WebCore::FontPlatformData::isHashTableDeletedValue):
2004 (WebCore::FontPlatformData::hashTableDeletedFontValue):
2005 * platform/graphics/win/FontCacheWin.cpp: Update to no longer use
2006 the unnecessary fontFace() accessor.
2007 (WebCore::FontCache::createFontPlatformData):
2008 * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
2009 * platform/graphics/win/FontPlatformDataCairoWin.cpp:
2010 (WebCore::FontPlatformData::platformDataInit):
2011 (WebCore::FontPlatformData::FontPlatformData):
2012 (WebCore::FontPlatformData::~FontPlatformData):
2013 (WebCore::FontPlatformData::platformDataAssign):
2014 (WebCore::FontPlatformData::platformIsEqual):
2015 * platform/graphics/win/FontPlatformDataWin.cpp:
2016 (WebCore::FontPlatformData::FontPlatformData):
2018 2011-03-29 Jian Li <jianli@chromium.org>
2020 Reviewed by Adam Barth.
2022 Inline worker powered by blob URL does not work with files URL even if
2023 allowFileAccessFromFileURLs is enabled
2024 https://bugs.webkit.org/show_bug.cgi?id=56063
2026 Test: fast/files/workers/inline-worker-via-blob-url.html
2028 * fileapi/BlobURL.cpp: Removed unneeded getOrigin() method.
2029 * fileapi/BlobURL.h: Removed unneeded getOrigin() method.
2030 * page/SecurityOrigin.cpp:
2031 (WebCore::SecurityOrigin::SecurityOrigin): Extended the logic to handle
2032 filesystem URL also to blob URL. Also fixed the problem that m_isUnique
2033 is incorrectly set for blob and filesystem URLs.
2034 (WebCore::SecurityOrigin::create): Removed the special logic for blob URL
2035 since we use the same logic in SecurityOrigin constructor as filesystem
2037 (WebCore::SecurityOrigin::canRequest): Removed the special logic for blob
2038 URL since it is not needed with the fix in SecurityOrigin constructor.
2040 2011-03-29 Timothy Hatcher <timothy@apple.com>
2042 Update WebCore Localizable.strings to contain WebCore, WebKit/mac and WebKit2 strings.
2044 https://webkit.org/b/57354
2046 Reviewed by Sam Weinig.
2048 * English.lproj/Localizable.strings: Updated.
2049 * StringsNotToBeLocalized.txt: Removed. To hard to maintain in WebCore.
2050 * platform/network/cf/LoaderRunLoopCF.h: Remove a single quote in an #error so
2051 extract-localizable-strings does not complain about unbalanced single quotes.
2053 2011-03-29 Sheriff Bot <webkit.review.bot@gmail.com>
2055 Unreviewed, rolling out r82295 and r82300.
2056 http://trac.webkit.org/changeset/82295
2057 http://trac.webkit.org/changeset/82300
2058 https://bugs.webkit.org/show_bug.cgi?id=57380
2060 This patch breaks compile on Chromium (Requested by
2061 abarth|gardener on #webkit).
2063 * accessibility/AccessibilityObject.h:
2064 * accessibility/AccessibilityRenderObject.cpp:
2065 (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2066 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2068 (webkit_accessible_get_role):
2069 * accessibility/mac/AccessibilityObjectWrapper.mm:
2071 2011-03-29 Anders Carlsson <andersca@apple.com>
2075 * platform/text/BidiResolver.h:
2076 (WebCore::::createBidiRunsForLine):
2078 2011-03-29 Steve Falkenburg <sfalken@apple.com>
2080 Reviewed by Adam Roben.
2082 Use per-configuration vsprops in WebCore to avoid WebKitVSPropsRedirectionDir removal by MSVC IDE
2083 https://bugs.webkit.org/show_bug.cgi?id=57378
2085 Visual Studio's IDE was removing instances of $(WebKitVSPropsRedirectionDir) from
2086 InheritedPropertySheet rules in our vcproj files when the vcproj was edited from within
2087 the IDE. To avoid this, add a separate vsprops file for each project configuration that
2088 contains the required inherited property sheets.
2090 * WebCore.vcproj/QTMovieWin.vcproj:
2091 * WebCore.vcproj/QTMovieWinDebug.vsprops: Added.
2092 * WebCore.vcproj/QTMovieWinDebugAll.vsprops: Added.
2093 * WebCore.vcproj/QTMovieWinDebugCairoCFLite.vsprops: Added.
2094 * WebCore.vcproj/QTMovieWinRelease.vsprops: Added.
2095 * WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops: Added.
2096 * WebCore.vcproj/QTMovieWinReleaseLTCG.vsprops: Added.
2097 * WebCore.vcproj/WebCore.vcproj:
2098 * WebCore.vcproj/WebCoreDebug.vsprops: Added.
2099 * WebCore.vcproj/WebCoreDebugAll.vsprops: Added.
2100 * WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops: Added.
2101 * WebCore.vcproj/WebCoreRelease.vsprops: Added.
2102 * WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops: Added.
2103 * WebCore.vcproj/WebCoreReleaseLTCG.vsprops: Added.
2105 2011-03-29 David Hyatt <hyatt@apple.com>
2107 Reviewed by Simon Fraser.
2109 <rdar://problem/9194927> REGRESSION (r81691): Page at www.mondaynote.com lays out incorrectly
2111 Back out the optimization that stopped when it hit the first float. This was an incorrect optimization
2112 and can't be done without more work.
2114 Added fast/block/float/float-forced-below-other-floats.html
2116 * rendering/RenderBlock.cpp:
2117 (WebCore::RenderBlock::logicalLeftOffsetForLine):
2118 (WebCore::RenderBlock::logicalRightOffsetForLine):
2120 2011-03-29 Eric Seidel <eric@webkit.org>
2122 Reviewed by Ryosuke Niwa.
2124 Start to clean up BidiResolver::createBidiRunsForLine so that mere mortals can understand it
2125 https://bugs.webkit.org/show_bug.cgi?id=57338
2127 I'm attempting to break createBidiRunsForLine into understandable pieces
2128 so that we can tell what it's actually doing. Our implementation of the
2129 unicode bidi algorithm is slightly different from the spec in that we
2130 run it per-line (instead of over the entire paragraph at once). This is
2131 great for performance (our implementation is resumable), but it makes
2132 things a bit tricky to understand. Splitting createBidiRunsForLine into
2133 pieces should help make our UBA implementation more readable.
2135 * platform/text/BidiResolver.h:
2136 (WebCore::::updateStatusLastFromCurrentDirection):
2137 (WebCore::::createBidiRunsForLine):
2139 2011-03-29 Mario Sanchez Prada <msanchez@igalia.com>
2141 Reviewed by Martin Robinson.
2143 [Gtk] Consistent crash from Google/ARIA combobox click
2144 https://bugs.webkit.org/show_bug.cgi?id=55883
2146 Do not call to firstChild() to avoid entering into infinite loops.
2148 This would happen when current item is a WebCore Group and some of
2149 its children have either role 'option' or 'menuitem'. Other than
2150 that the logic behind that call to firstChild() seems to be no
2151 longer needed so it's safe to remove it.
2153 Test: platform/gtk/accessibility/aria-options-and-menuitems-crash.html
2155 * accessibility/gtk/AccessibilityObjectAtk.cpp:
2156 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
2157 Remove call to firsChild, which was leading to crashes sometimes.
2159 2011-03-29 Mario Sanchez Prada <msanchez@igalia.com>
2161 Reviewed by Chris Fleizach.
2163 AX: GTK: ARIA role is not respected on <p> <label> <div> and <form>
2164 https://bugs.webkit.org/show_bug.cgi?id=47636
2166 Define new roles in WebCore and map them to ATK accordingly.
2168 Test: platform/gtk/accessibility/aria-roles-unignored.html
2170 * accessibility/AccessibilityObject.h: Added new roles to
2171 represent paragraphs, labels, forms and div sections.
2172 * accessibility/AccessibilityRenderObject.cpp:
2173 (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2174 Return ParagraphRole, LabelRole, FormRole and DivRole when needed.
2175 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2176 (atkRole): Map new WebCore roles to ATK Roles.
2177 (webkit_accessible_get_role): Remove code to define roles for
2178 paragraphs, labels, forms and divs based on node's tag name.
2180 Update mappings for the Mac platform.
2182 * accessibility/mac/AccessibilityObjectWrapper.mm:
2183 (createAccessibilityRoleMap): Add explicit mappings from the new
2184 roles introduced to NSAccessibilityGroupRole.
2186 2011-03-29 Philippe Normand <pnormand@igalia.com>
2188 Unreviewed build fix. Remove ASSERT hitting consitently on GTK.
2190 * rendering/InlineIterator.h:
2191 (WebCore::InlineIterator::moveToStartOf):
2193 2011-03-29 Darin Adler <darin@apple.com>
2195 Fix some just-introduced build failures.
2197 * WebCore.pro: Correct spelling of filename.
2199 * css/CSSParser.cpp:
2200 (WebCore::parseColorIntOrPercentage): Fix double/int conversion that fails to compile
2201 on Leopard. Also renamed one local variabel.
2203 * inspector/InspectorAgent.cpp:
2204 (WebCore::InspectorAgent::didCommitLoad): Removed unused argument names to avoid warning.
2205 (WebCore::InspectorAgent::domContentLoadedEventFired): Ditto.
2207 2011-03-29 Andras Becsi <abecsi@webkit.org>
2209 Reviewed by Darin Adler.
2211 CSS: Slow parsing of rgb() with percent values
2212 https://bugs.webkit.org/show_bug.cgi?id=16708
2214 Implement fast-path parsing for percentage color values.
2216 Gain ~30% speedup on http://canvex.lazyilluminati.com/misc/3d.html.
2218 * css/CSSParser.cpp:
2219 (WebCore::checkForValidDouble): Extend to return the number of characters forming a valid double.
2220 (WebCore::parseDouble): Function for parsing double values if they are valid.
2221 (WebCore::parseColorIntOrPercentage): Extend parseColorInt to deal with percentage values.
2222 (WebCore::parseAlphaValue): Use the new functions.
2223 (WebCore::CSSParser::parseColor): Ditto.
2225 2011-03-29 Ilya Tikhonovsky <loislo@chromium.org>
2227 Reviewed by Pavel Feldman.
2229 Web Inspector: extract InspectorPageAgent from InspectorAgent.
2230 https://bugs.webkit.org/show_bug.cgi?id=57327
2232 There are page related methods and inspector related methods in InspectorAgent.
2233 It would be nice to extract page specific methods for future usage the rest of methods in workers debugger.
2237 * inspector/CodeGeneratorInspector.pm:
2238 * inspector/Inspector.json:
2239 * inspector/InspectorAgent.cpp:
2240 (WebCore::InspectorAgent::InspectorAgent):
2241 (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
2242 (WebCore::InspectorAgent::didClearWindowObjectInWorld):
2243 (WebCore::InspectorAgent::setFrontend):
2244 (WebCore::InspectorAgent::disconnectFrontend):
2245 (WebCore::InspectorAgent::didCommitLoad):
2246 (WebCore::InspectorAgent::domContentLoadedEventFired):
2247 * inspector/InspectorAgent.h:
2248 (WebCore::InspectorAgent::pageAgent):
2249 * inspector/InspectorPageAgent.cpp: Added.
2250 (WebCore::InspectorPageAgent::create):
2251 (WebCore::InspectorPageAgent::InspectorPageAgent):
2252 (WebCore::InspectorPageAgent::setFrontend):
2253 (WebCore::InspectorPageAgent::clearFrontend):
2254 (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
2255 (WebCore::InspectorPageAgent::removeAllScriptsToEvaluateOnLoad):
2256 (WebCore::InspectorPageAgent::reloadPage):
2257 (WebCore::InspectorPageAgent::openInInspectedWindow):
2258 (WebCore::InspectorPageAgent::setUserAgentOverride):
2259 (WebCore::buildObjectForCookie):
2260 (WebCore::buildArrayForCookies):
2261 (WebCore::InspectorPageAgent::getCookies):
2262 (WebCore::InspectorPageAgent::deleteCookie):
2263 (WebCore::InspectorPageAgent::inspectedURLChanged):
2264 (WebCore::InspectorPageAgent::restore):
2265 (WebCore::InspectorPageAgent::didCommitLoad):
2266 (WebCore::InspectorPageAgent::domContentEventFired):
2267 (WebCore::InspectorPageAgent::loadEventFired):
2268 (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
2269 (WebCore::InspectorPageAgent::applyUserAgentOverride):
2270 * inspector/InspectorPageAgent.h: Added.
2271 * inspector/InspectorController.cpp:
2272 (WebCore::InspectorController::connectFrontend):
2273 * inspector/InspectorInstrumentation.cpp:
2274 (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
2275 (WebCore::InspectorInstrumentation::applyUserAgentOverrideImpl):
2276 (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
2277 (WebCore::InspectorInstrumentation::loadEventFiredImpl):
2278 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2279 (WebCore::InspectorInstrumentation::retrievePageAgent):
2280 * inspector/InspectorInstrumentation.h:
2281 * inspector/InstrumentingAgents.h:
2282 (WebCore::InstrumentingAgents::InstrumentingAgents):
2283 (WebCore::InstrumentingAgents::inspectorPageAgent):
2284 (WebCore::InstrumentingAgents::setInspectorPageAgent):
2285 * inspector/front-end/AuditsPanel.js:
2286 (WebInspector.AuditsPanel.prototype._reloadResources):
2287 * inspector/front-end/CookieItemsView.js:
2288 (WebInspector.CookieItemsView.prototype._deleteCookie):
2289 (WebInspector.Cookies.getCookiesAsync):
2290 * inspector/front-end/ExtensionServer.js:
2291 (WebInspector.ExtensionServer.prototype._onReload):
2292 * inspector/front-end/NetworkPanel.js:
2293 (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
2294 * inspector/front-end/ResourcesPanel.js:
2295 (WebInspector.FrameResourceTreeElement.prototype.ondblclick):
2296 * inspector/front-end/WorkersSidebarPane.js:
2297 (WebInspector.WorkersSidebarPane.prototype.setInstrumentation):
2298 * inspector/front-end/inspector.js:
2299 (WebInspector.openResource):
2300 (WebInspector.documentKeyDown):
2302 2011-03-29 David Hyatt <hyatt@apple.com>
2304 Reviewed by Darin Adler.
2306 https://bugs.webkit.org/show_bug.cgi?id=57276
2308 Add optimizations to make the vertical placement of boxes much faster. Whenever a box is added
2309 to a line, compare it with the parent box. If we can determine that the child box has the exact
2310 same height and baseline position as the parent box, then we keep a boolean flag set called
2311 descendantsHaveSameLineHeightAndBaseline(). If the box is different for any reason then we clear the
2312 flag up the line box parent chain.
2314 When it comes time to do computeLogicalboxHeights, we can avoid recurring into the children of
2315 a box whose descendants all have the same position. When we do placeBoxesInBlockDirection, we
2316 can do a simplified recursion that just calls adjustBlockDirectionPosition to offset the boxes
2317 without doing anything else.
2319 Because of the quirks mode rule of only shrinking boxes with no immediate text children, we need
2320 to track whether a box has text descendants now as well. When we avoid doing the recursion
2321 this flag tells us whether the collection of boxes should have an effect on the ascent and descent
2322 of the line in quirks mode.
2324 * rendering/InlineFlowBox.cpp:
2325 (WebCore::InlineFlowBox::addToLine):
2326 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2327 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
2328 (WebCore::InlineFlowBox::nodeAtPoint):
2329 (WebCore::InlineFlowBox::paintBoxDecorations):
2330 (WebCore::InlineFlowBox::paintMask):
2331 * rendering/InlineFlowBox.h:
2332 (WebCore::InlineFlowBox::InlineFlowBox):
2333 (WebCore::InlineFlowBox::hasTextDescendants):
2334 (WebCore::InlineFlowBox::descendantsHaveSameLineHeightAndBaseline):
2335 (WebCore::InlineFlowBox::clearDescendantsHaveSameLineHeightAndBaseline):
2336 * rendering/RenderBlock.h:
2337 * rendering/RenderBlockLineLayout.cpp:
2338 (WebCore::RenderBlock::createLineBoxes):
2339 (WebCore::RenderBlock::constructLine):
2340 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
2342 2011-03-29 Eric Seidel <eric@webkit.org>
2344 Reviewed by Ryosuke Niwa.
2346 Remove a bunch of duplicate code by adding some InlineIterator helper methods
2347 https://bugs.webkit.org/show_bug.cgi?id=57326
2349 Once I started adding these it became clear how much crazy duplicated code
2350 we had due to treating InlineIterator as a struct and accessing its
2351 members directly. We can't quite make the members private yet since
2352 findNextLineBreak still splits out the members. But this change
2353 makes the code much cleaner.
2355 * rendering/InlineIterator.h:
2356 (WebCore::InlineIterator::clear):
2357 (WebCore::InlineIterator::moveToStartOf):i
2358 (WebCore::InlineIterator::moveTo):
2359 (WebCore::InlineIterator::increment):
2360 * rendering/RenderBlockLineLayout.cpp:
2361 (WebCore::tryHyphenating):
2362 (WebCore::RenderBlock::findNextLineBreak):
2364 2011-03-29 Eric Seidel <eric@webkit.org>
2366 Reviewed by Ryosuke Niwa.
2368 Clean up bidiNext by abstracting repeated code
2369 https://bugs.webkit.org/show_bug.cgi?id=57335
2371 I also added a comment to explain what bidiNext is actually doing.
2372 This whole area of code is confusing but need not be.
2374 * rendering/InlineIterator.h:
2375 (WebCore::embedCharFromDirection):
2376 (WebCore::notifyResolverEnteredObject):
2377 (WebCore::notifyResolverWillExitObject):
2378 (WebCore::bidiNext):
2379 (WebCore::bidiFirst):
2381 2011-03-29 Alexander Pavlov <apavlov@chromium.org>
2383 Reviewed by Yury Semikhatsky.
2385 Web Inspector: Support external CSS stylesheet freeflow text editing
2386 https://bugs.webkit.org/show_bug.cgi?id=54397
2388 In this implementation, Ctrl/Cmd-S commits the current changes into the model.
2390 * inspector/front-end/ResourceView.js:
2391 (WebInspector.ResourceView.createResourceView):
2392 (WebInspector.CSSSourceFrameDelegateForResourcesPanel):
2393 (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.canEditScriptSource):
2394 (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.editScriptSource):
2395 (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype.editScriptSource.handleInfos):
2396 (WebInspector.CSSSourceFrameDelegateForResourcesPanel.prototype._saveStyleSheet):
2397 * inspector/front-end/ResourcesPanel.js:
2398 (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
2399 (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2400 * inspector/front-end/SourceFrame.js:
2401 (WebInspector.SourceFrame.prototype._createTextViewer):
2403 2011-03-29 Eric Carlson <eric.carlson@apple.com>
2405 Reviewed by Dan Bernstein.
2407 playbackRate should not be set to defaultPlaybackRate in play()
2408 https://bugs.webkit.org/show_bug.cgi?id=55943
2410 Test: media/video-playbackrate.html
2412 * html/HTMLMediaElement.cpp:
2413 (WebCore::HTMLMediaElement::playbackRate): No need to ask the media engine for the current
2414 rate, we already have the current value cached.
2415 (WebCore::HTMLMediaElement::playInternal): Don't reset the engine's playback rate to
2417 (WebCore::HTMLMediaElement::togglePlayState): Do reset the engine's playback rate to
2418 the default rate before triggering playback.
2419 * manual-tests/media-default-playback-rate.html: Added.
2421 2011-03-28 Dimitri Glazkov <dglazkov@chromium.org>
2423 Reviewed by Eric Seidel.
2425 Remove specialization of EventDispatcher with inversion of control.
2426 https://bugs.webkit.org/show_bug.cgi?id=57285
2428 Since some events have extra logic around their dispatch, allow them
2429 to dispatch themselves and specialize the logic. This change only
2430 converts KeyboardEvent to this model.
2432 No functional change, covered by existing tests.
2435 (WebCore::Event::dispatch): Added.
2436 * dom/Event.h: Updated decls.
2437 * dom/EventDispatcher.cpp:
2438 (WebCore::EventDispatcher::dispatchEvent): Changed to ask event to dispatch
2440 * dom/EventDispatcher.h: Updated decls.
2441 * dom/KeyboardEvent.cpp:
2442 (WebCore::KeyboardEvent::dispatch): Added, moving code from EventDispatcher.
2443 * dom/KeyboardEvent.h: Updated decls.
2445 (WebCore::Node::dispatchKeyEvent): Changed to use the new ways.
2447 2011-03-29 Ilya Tikhonovsky <loislo@chromium.org>
2449 Reviewed by Yury Semikhatsky.
2451 Web Inspector: InspectorDOMAgent has unnecessary dependency from InspectorAgent.
2452 https://bugs.webkit.org/show_bug.cgi?id=57329
2454 * inspector/InspectorAgent.cpp:
2455 (WebCore::InspectorAgent::InspectorAgent):
2456 (WebCore::InspectorAgent::setFrontend):
2457 * inspector/InspectorAgent.h:
2458 * inspector/InspectorController.cpp:
2459 (WebCore::InspectorController::inspect):
2460 * inspector/InspectorDOMAgent.cpp:
2461 (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2462 (WebCore::InspectorDOMAgent::setFrontend):
2463 (WebCore::InspectorDOMAgent::handleMousePress):
2464 (WebCore::InspectorDOMAgent::inspect):
2465 (WebCore::InspectorDOMAgent::focusNode):
2466 (WebCore::InspectorDOMAgent::highlight):
2467 (WebCore::InspectorDOMAgent::hideHighlight):
2468 * inspector/InspectorDOMAgent.h:
2469 (WebCore::InspectorDOMAgent::create):
2471 2011-03-29 Eric Seidel <eric@webkit.org>
2473 Reviewed by Nikolas Zimmermann.
2475 Rename InlineIterator::pos to m_pos to match modern style
2476 https://bugs.webkit.org/show_bug.cgi?id=57342
2478 Somehow I failed to upload this one earlier, no wonder later patches didn't apply.
2480 * rendering/InlineIterator.h:
2481 (WebCore::InlineIterator::InlineIterator):
2482 (WebCore::operator==):
2483 (WebCore::operator!=):
2484 (WebCore::InlineIterator::increment):
2485 (WebCore::InlineIterator::current):
2486 (WebCore::InlineBidiResolver::appendRun):
2487 * rendering/RenderBlockLineLayout.cpp:
2488 (WebCore::checkMidpoints):
2489 (WebCore::RenderBlock::appendRunsForObject):
2490 (WebCore::RenderBlock::layoutInlineChildren):
2491 (WebCore::RenderBlock::matchedEndLine):
2492 (WebCore::tryHyphenating):
2493 (WebCore::RenderBlock::findNextLineBreak):
2495 2011-03-29 Pavel Feldman <pfeldman@chromium.org>
2497 Reviewed by Yury Semikhatsky.
2499 Web Inspector: document BrowserDebugger agent.
2500 https://bugs.webkit.org/show_bug.cgi?id=57331
2502 * inspector/Inspector.json:
2504 2011-03-29 Alexander Pavlov <apavlov@chromium.org>
2506 Reviewed by Pavel Feldman.
2508 Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
2509 https://bugs.webkit.org/show_bug.cgi?id=56310
2511 Instead of stylesheet ids, CSSAgent.getAllStyleSheets() now returns metainfo objects containing
2512 "styleSheetId", "sourceURL", "disabled", and "title" fields. The latter three are not returned
2513 by CSSAgent.getStyleSheet() anymore.
2515 Test: inspector/styles/get-set-stylesheet-text.html
2517 * inspector/Inspector.json:
2518 * inspector/InspectorCSSAgent.cpp:
2519 (WebCore::InspectorCSSAgent::getAllStyleSheets):
2520 * inspector/InspectorCSSAgent.h:
2521 * inspector/InspectorStyleSheet.cpp:
2522 (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
2523 (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
2524 * inspector/InspectorStyleSheet.h:
2525 * inspector/front-end/AuditRules.js:
2526 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
2527 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
2528 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
2529 * inspector/front-end/CSSStyleModel.js:
2530 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2531 (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2532 (WebInspector.CSSStyleModel.prototype._onRevert):
2533 (WebInspector.CSSStyleSheet):
2534 (WebInspector.CSSStyleSheet.prototype.setText):
2536 2011-03-29 Jeremy Moskovich <jeremy@chromium.org>
2538 Reviewed by Eric Seidel.
2540 Implement text-align:match-parent as -webkit-match-parent.
2541 https://bugs.webkit.org/show_bug.cgi?id=50951
2543 Add support to the CSS parser.
2545 Tests: fast/css/text-align-webkit-match-parent-parse.html
2546 fast/css/text-align-webkit-match-parent.html
2548 * css/CSSParser.cpp:
2549 (WebCore::CSSParser::parseValue):
2550 * css/CSSStyleSelector.cpp:
2551 (WebCore::CSSStyleSelector::applyProperty):
2552 * css/CSSValueKeywords.in:
2554 2011-03-29 Eric Seidel <eric@webkit.org>
2556 Reviewed by Ryosuke Niwa.
2558 Rename InlineIterator::nextBreakablePosition to m_nextBreakablePosition to match modern style
2559 https://bugs.webkit.org/show_bug.cgi?id=57323
2561 All of these m_nextBreakablePosition = -1 could probably be replaced with
2562 some new methods. But I'll do that in a separate change. Clearly
2563 m_nextBreakablePosition is just a cached value which should be cleared
2564 at the right times. I suspect we may even fail to clear it sometimes when
2565 we should due to the current used of direct access instead of smarter functions.
2567 * rendering/InlineIterator.h:
2568 (WebCore::InlineIterator::InlineIterator):
2569 (WebCore::InlineIterator::increment):
2570 * rendering/RenderBlockLineLayout.cpp:
2571 (WebCore::tryHyphenating):
2572 (WebCore::RenderBlock::findNextLineBreak):
2574 2011-03-29 Jeff Miller <jeffm@apple.com>
2576 Reviewed by Jon Honeycutt.
2578 Add WebCore::copyCertificateToData() on Windows
2579 https://bugs.webkit.org/show_bug.cgi?id=57296
2581 Create a new win directory in platform/cf and add CertificateCFWin.cpp and CertificateCFWin.h to it.
2583 * WebCore.vcproj/WebCore.vcproj: Added CertificateCFWin.cpp and CertificateCFWin.h.
2584 * WebCore.vcproj/copyForwardingHeaders.cmd: Copy all header files in \platform\cf\win\.
2585 * platform/cf/win: Added.
2586 * platform/cf/win/CertificateCFWin.cpp: Added.
2587 (WebCore::deallocCertContext): Added.
2588 (WebCore::createCertContextDeallocator): Added.
2589 (WebCore::copyCertificateToData): Added.
2590 * platform/cf/win/CertificateCFWin.h: Added.
2592 2011-03-29 Eric Seidel <eric@webkit.org>
2594 Reviewed by Ryosuke Niwa.
2596 Rename InlineIterator::block to m_block to match modern style
2597 https://bugs.webkit.org/show_bug.cgi?id=57321
2599 I could have made m_block private, since it's only accessed in
2600 one place outside of InlineIterator (for an ASSERT). But I chose
2601 not to do so in this change.
2603 * rendering/InlineIterator.h:
2604 (WebCore::InlineIterator::InlineIterator):
2605 (WebCore::InlineIterator::increment):
2606 (WebCore::InlineBidiResolver::appendRun):
2607 * rendering/RenderBlockLineLayout.cpp:
2608 (WebCore::RenderBlock::findNextLineBreak):
2610 2011-03-29 Leo Yang <leo.yang@torchmobile.com.cn>
2612 Reviewed by Nikolas Zimmermann.
2614 Incorrect offset of svg <use> element which is in <symbol> element
2615 https://bugs.webkit.org/show_bug.cgi?id=57318
2617 When webkit expanded a svg <symbol> element in the shadow tree it
2618 would clone the children of the <symbol>. The children may contain
2619 SVGShadowTreeContainerElement which was expanded from svg <use>
2620 element. But the clone operation would clone a
2621 SVGShadowTreeContainerElement as a svg <g> element. This resulted
2622 that updateContainerOffset wouldn't update offset for those elements
2623 which were expand from <use> elements.
2625 This patch implements cloneElementWithoutAttributesAndChildren for
2626 SVGShadowTreeContainerElement to make the container clone itself
2629 Test: svg/custom/use-in-symbol-with-offset.svg
2631 * rendering/svg/SVGShadowTreeElements.cpp:
2632 (WebCore::SVGShadowTreeContainerElement::cloneElementWithoutAttributesAndChildren):
2633 * rendering/svg/SVGShadowTreeElements.h:
2635 2011-03-29 Eric Seidel <eric@webkit.org>
2637 Reviewed by Ryosuke Niwa.
2639 Rename InlineIterator::obj to m_obj to match modern style
2640 https://bugs.webkit.org/show_bug.cgi?id=57319
2642 I started this rename after confusion in InlineBidiResolver::appendRun.
2643 (Which uses an "obj" local in InlineIterator.h. It's not actually
2644 masking m_obj because it's a separate class, but I didn't realize
2645 that at the time because it's in InlineIterator.h which is itself confusing!)
2647 * rendering/InlineIterator.h:
2648 (WebCore::InlineIterator::InlineIterator):
2649 (WebCore::operator==):
2650 (WebCore::operator!=):
2651 (WebCore::InlineIterator::increment):
2652 (WebCore::InlineIterator::atEnd):
2653 (WebCore::InlineIterator::current):
2654 (WebCore::InlineIterator::direction):
2655 (WebCore::InlineBidiResolver::appendRun):
2656 * rendering/RenderBlockLineLayout.cpp:
2657 (WebCore::checkMidpoints):
2658 (WebCore::RenderBlock::appendRunsForObject):
2659 (WebCore::RenderBlock::layoutInlineChildren):
2660 (WebCore::RenderBlock::matchedEndLine):
2661 (WebCore::skipNonBreakingSpace):
2662 (WebCore::RenderBlock::requiresLineBox):
2663 (WebCore::RenderBlock::skipTrailingWhitespace):
2664 (WebCore::RenderBlock::skipLeadingWhitespace):
2665 (WebCore::tryHyphenating):
2666 (WebCore::RenderBlock::findNextLineBreak):
2668 2011-03-29 Pavel Feldman <pfeldman@chromium.org>
2670 Reviewed by Yury Semikhatsky.
2672 Web Inspector: document Timeline domain, make timeline event types of type string.
2673 https://bugs.webkit.org/show_bug.cgi?id=57299
2675 * inspector/Inspector.json:
2676 * inspector/InspectorTimelineAgent.cpp:
2677 (WebCore::InspectorTimelineAgent::pushGCEventRecords):
2678 (WebCore::InspectorTimelineAgent::start):
2679 (WebCore::InspectorTimelineAgent::stop):
2680 (WebCore::InspectorTimelineAgent::willCallFunction):
2681 (WebCore::InspectorTimelineAgent::didCallFunction):
2682 (WebCore::InspectorTimelineAgent::willDispatchEvent):
2683 (WebCore::InspectorTimelineAgent::didDispatchEvent):
2684 (WebCore::InspectorTimelineAgent::willLayout):
2685 (WebCore::InspectorTimelineAgent::didLayout):
2686 (WebCore::InspectorTimelineAgent::willRecalculateStyle):
2687 (WebCore::InspectorTimelineAgent::didRecalculateStyle):
2688 (WebCore::InspectorTimelineAgent::willPaint):
2689 (WebCore::InspectorTimelineAgent::didPaint):
2690 (WebCore::InspectorTimelineAgent::willWriteHTML):
2691 (WebCore::InspectorTimelineAgent::didWriteHTML):
2692 (WebCore::InspectorTimelineAgent::didInstallTimer):
2693 (WebCore::InspectorTimelineAgent::didRemoveTimer):
2694 (WebCore::InspectorTimelineAgent::willFireTimer):
2695 (WebCore::InspectorTimelineAgent::didFireTimer):
2696 (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
2697 (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
2698 (WebCore::InspectorTimelineAgent::willLoadXHR):
2699 (WebCore::InspectorTimelineAgent::didLoadXHR):
2700 (WebCore::InspectorTimelineAgent::willEvaluateScript):
2701 (WebCore::InspectorTimelineAgent::didEvaluateScript):
2702 (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2703 (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2704 (WebCore::InspectorTimelineAgent::willReceiveResourceData):
2705 (WebCore::InspectorTimelineAgent::didReceiveResourceData):
2706 (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
2707 (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2708 (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2709 (WebCore::InspectorTimelineAgent::didMarkTimeline):
2710 (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2711 (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
2712 (WebCore::InspectorTimelineAgent::addRecordToTimeline):
2713 (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
2714 (WebCore::InspectorTimelineAgent::pushCurrentRecord):
2715 * inspector/InspectorTimelineAgent.h:
2716 (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
2717 * inspector/front-end/TimelineAgent.js:
2718 * inspector/front-end/TimelinePanel.js:
2719 (WebInspector.TimelinePanel.prototype.get _recordStyles):
2720 (WebInspector.TimelinePanel.prototype._createEventDivider):
2721 (WebInspector.TimelinePanel.prototype._findParentRecord):
2722 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2723 (WebInspector.TimelineDispatcher.prototype.started):
2724 (WebInspector.TimelineDispatcher.prototype.stopped):
2725 (WebInspector.TimelineDispatcher.prototype.eventRecorded):
2726 (WebInspector.TimelinePanel.FormattedRecord):
2727 (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2728 (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2730 2011-03-29 Andrey Adaikin <aandrey@google.com>
2732 Reviewed by Pavel Feldman.
2734 Web Inspector: Fixing live edits tests on chromium.
2735 https://bugs.webkit.org/show_bug.cgi?id=57316
2737 * inspector/front-end/ScriptsPanel.js:
2738 (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.editScriptSource):
2739 * inspector/front-end/SourceFrame.js:
2740 (WebInspector.SourceFrame.prototype._handleSave.didEditScriptSource):
2741 (WebInspector.SourceFrame.prototype._handleSave):
2742 (WebInspector.SourceFrameDelegate.prototype.editScriptSource):
2744 2011-03-29 Pavel Podivilov <podivilov@chromium.org>
2746 Reviewed by Yury Semikhatsky.
2748 Web Inspector: fix call frames positions in formatted scripts.
2749 https://bugs.webkit.org/show_bug.cgi?id=57036
2751 Introduce PresentationCallFrame class that encapsulates source mapping details from UI components.
2753 * inspector/front-end/CallStackSidebarPane.js:
2754 (WebInspector.CallStackSidebarPane.prototype.update.didGetSourceLocation):
2755 (WebInspector.CallStackSidebarPane.prototype.update):
2756 (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
2757 (WebInspector.CallStackSidebarPane.prototype._placardSelected):
2758 (WebInspector.CallStackSidebarPane.prototype._contextMenu):
2759 (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
2760 * inspector/front-end/DebuggerModel.js:
2761 (WebInspector.DebuggerModel.prototype._didEditScriptSource):
2762 (WebInspector.DebuggerModel.prototype.get debuggerPausedDetails):
2763 (WebInspector.DebuggerModel.prototype._pausedScript):
2764 * inspector/front-end/DebuggerPresentationModel.js:
2765 (WebInspector.DebuggerPresentationModel):
2766 (WebInspector.DebuggerPresentationModel.prototype.editScriptSource.didEditScriptSource):
2767 (WebInspector.DebuggerPresentationModel.prototype.editScriptSource):
2768 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
2769 (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
2770 (WebInspector.DebuggerPresentationModel.prototype._debuggerResumed):
2771 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
2772 (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
2773 (WebInspector.DebuggerPresentationModel.prototype._reset):
2774 (WebInspector.PresenationCallFrame): Call frame wrapper for UI.
2775 * inspector/front-end/ScriptsPanel.js:
2776 (WebInspector.ScriptsPanel):
2777 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2778 (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
2779 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2780 (WebInspector.ScriptsPanel.prototype._debuggerResumed):
2781 (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
2782 (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
2783 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2784 (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
2785 * inspector/front-end/SourceFile.js:
2786 (WebInspector.SourceFile.prototype.get content):
2787 * inspector/front-end/SourceFrame.js:
2788 (WebInspector.SourceFrame.prototype._createTextViewer):
2789 (WebInspector.SourceFrame.prototype.setExecutionLine):
2790 (WebInspector.SourceFrame.prototype.clearExecutionLine):
2791 (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
2792 (WebInspector.SourceFrame.prototype._showPopup):
2794 2011-03-29 Emil A Eklund <eae@chromium.org>
2796 Reviewed by Darin Adler.
2798 Fix for execCommand("Delete") with an empty selection.
2799 https://bugs.webkit.org/show_bug.cgi?id=56652
2801 Test: editing/execCommand/delete-empty-container.html
2803 * editing/TypingCommand.cpp:
2804 (WebCore::TypingCommand::makeEditableRootEmpty): Add check for root element.
2806 2011-03-29 Mikhail Naganov <mnaganov@chromium.org>
2808 Reviewed by Pavel Feldman.
2810 Web Inspector: [Chromium] Refactor HeapSnapshot-related code to
2811 make sure we don't return big amounts of data to forms.
2812 https://bugs.webkit.org/show_bug.cgi?id=57227
2814 * inspector/front-end/DetailedHeapshotGridNodes.js:
2815 (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
2816 (WebInspector.HeapSnapshotGenericObjectNode.prototype.get _countPercent):
2817 (WebInspector.HeapSnapshotObjectNode):
2818 (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
2819 (WebInspector.HeapSnapshotInstanceNode):
2820 (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
2821 (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
2822 (WebInspector.HeapSnapshotConstructorNode.prototype.get _countPercent):
2823 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
2824 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
2825 (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
2826 * inspector/front-end/DetailedHeapshotView.js:
2827 (WebInspector.HeapSnapshotContainmentDataGrid.prototype.setDataSource):
2828 (WebInspector.HeapSnapshotDominatorsDataGrid.prototype.setDataSource):
2829 * inspector/front-end/HeapSnapshot.js:
2830 (WebInspector.HeapSnapshotNode.prototype.get dominatorIndex):
2831 (WebInspector.HeapSnapshotNode.prototype.get retainers):
2832 (WebInspector.HeapSnapshot):
2833 (WebInspector.HeapSnapshot.prototype.get _allNodes):
2834 (WebInspector.HeapSnapshot.prototype.get nodeCount):
2835 (WebInspector.HeapSnapshot.prototype.get rootNodeIndex):
2836 (WebInspector.HeapSnapshot.prototype.hasId):
2837 (WebInspector.HeapSnapshot.prototype.get nodeIds):
2838 (WebInspector.HeapSnapshot.prototype._retainersForNode):
2839 (WebInspector.HeapSnapshot.prototype._buildRetainers):
2840 (WebInspector.HeapSnapshot.prototype._buildAggregates):
2841 (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
2842 (WebInspector.HeapSnapshot.prototype._buildIdsList):
2843 (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
2844 (WebInspector.HeapSnapshotFilteredOrderedIterator):
2845 (WebInspector.HeapSnapshotFilteredOrderedIterator.prototype.next):
2846 (WebInspector.HeapSnapshotEdgesProvider):
2847 (WebInspector.HeapSnapshotNodesProvider):
2849 2011-03-29 Mikhail Naganov <mnaganov@chromium.org>
2851 Reviewed by Pavel Feldman.
2853 Web Inspector: [Chromium] Fix detailed heap snapshots UI.
2854 https://bugs.webkit.org/show_bug.cgi?id=57235
2857 1. Text color of grid cells under selection needs to be white, otherwise it's unreadable for some colors;
2858 2. Long strings need to be truncated in grid, their contents can be shown on hover.
2860 * inspector/front-end/DetailedHeapshotView.js:
2861 (WebInspector.DetailedHeapshotView.prototype._getHoverAnchor):
2862 (WebInspector.DetailedHeapshotView.prototype._showStringContentPopup):
2863 * inspector/front-end/heapProfiler.css:
2864 (.detailed-heapshot-view .console-formatted-string):
2865 (.detailed-heapshot-view .data-grid tr.selected *):
2866 (.detailed-heapshot-view .data-grid:focus tr.selected *):
2868 2011-03-29 Andrey Adaikin <aandrey@google.com>
2870 Reviewed by Yury Semikhatsky.
2872 Web Inspector: Highlight visible lines first
2873 https://bugs.webkit.org/show_bug.cgi?id=57013
2875 * inspector/front-end/TextViewer.js:
2876 (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleChunkNumber):
2877 (WebInspector.TextEditorChunkedPanel.prototype._findVisibleChunks):
2878 (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber.compareLineRowOffsetTops):
2879 (WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber):
2880 (WebInspector.TextEditorMainPanel.prototype._paintScheduledLines):
2881 (WebInspector.TextEditorMainPanel.prototype._paintLines):
2882 (WebInspector.TextEditorMainPanel.prototype._paintLineChunks):
2883 (WebInspector.TextEditorMainPanel.prototype._paintLine):
2884 (WebInspector.TextEditorMainChunk.prototype.set expanded):
2886 2011-03-29 Emil A Eklund <eae@chromium.org>
2888 Reviewed by Dimitri Glazkov.
2890 Relative mouse coordinates recalculated for each target
2891 https://bugs.webkit.org/show_bug.cgi?id=57130
2893 Calculate relative coordinates lazily for mouse events instead of doing
2894 it for each target. Speeds up dispatching of mouse events in deep dom
2895 structures significantly, O(n^2) to O(n).
2897 Also fixes https://bugs.webkit.org/show_bug.cgi?id=34973
2899 Tests: fast/events/mouse-relative-position.html
2900 perf/mouse-event.html
2903 (WebCore::Event::setTarget):
2904 * dom/MouseRelatedEvent.cpp:
2905 (WebCore::MouseRelatedEvent::MouseRelatedEvent):
2906 (WebCore::MouseRelatedEvent::initCoordinates):
2907 (WebCore::pageZoomFactor):
2908 (WebCore::MouseRelatedEvent::receivedTarget):
2909 (WebCore::MouseRelatedEvent::computeRelativePosition):
2910 (WebCore::MouseRelatedEvent::layerX):
2911 (WebCore::MouseRelatedEvent::layerY):
2912 (WebCore::MouseRelatedEvent::offsetX):
2913 (WebCore::MouseRelatedEvent::offsetY):
2914 * dom/MouseRelatedEvent.h:
2916 (WebCore::UIEvent::layerX):
2917 (WebCore::UIEvent::layerY):
2920 2011-03-29 Emil A Eklund <eae@chromium.org>
2922 Reviewed by Darin Adler.
2924 getComputedStyle counterIncrement crash @ WebCore::counterToCSSValue
2925 https://bugs.webkit.org/show_bug.cgi?id=57266
2927 Add null check to counterToCSSValue.
2929 Test: fast/css/getComputedStyle/counterIncrement-without-counter.html
2931 * css/CSSComputedStyleDeclaration.cpp:
2932 (WebCore::counterToCSSValue):
2934 2011-03-29 Gavin Peters <gavinp@chromium.org>
2936 Reviewed by Tony Gentilcore.
2938 Implement onerror events for <link rel=prefetch>
2939 https://bugs.webkit.org/show_bug.cgi?id=57182
2941 These events are equired on link elements, see
2942 http://dev.w3.org/html5/spec/Overview.html#the-link-element
2944 After a discussion in WebKit-dev about the direction of prefetch in the loader, and about a path
2945 to adding the Link header, we decided to look at making onerror, onload and onbeforeload events
2946 more uniformly supported. See the thread at
2947 https://lists.webkit.org/pipermail/webkit-dev/2011-February/016034.html .
2949 It turned out that part of adding onerror for link prefetch was to make the top CachedResource less
2950 abstract. It was pure virtual until prefetch became the first consumer to use an unspecialised
2951 implementation, and this CL continues that by adding a default checkNotify method to it. As it
2952 happens there were already two subclasses using what amounted to the generic checkNotify, so I
2953 also removed those, buying us some code cleanup with the change.
2955 Test: fast/dom/HTMLLinkElement/prefetch-onerror.html
2957 * html/HTMLLinkElement.cpp:
2958 (WebCore::HTMLLinkElement::parseMappedAttribute):
2959 (WebCore::HTMLLinkElement::onloadTimerFired):
2960 (WebCore::HTMLLinkElement::notifyFinished):
2961 * loader/cache/CachedImage.cpp:
2962 * loader/cache/CachedImage.h:
2963 * loader/cache/CachedResource.cpp:
2964 (WebCore::CachedResource::checkNotify):
2965 (WebCore::CachedResource::data):
2966 (WebCore::CachedResource::error):
2967 * loader/cache/CachedResource.h:
2968 * loader/cache/CachedScript.cpp:
2969 * loader/cache/CachedScript.h:
2971 2011-03-29 Eric Seidel <eric@webkit.org>
2973 Reviewed by Ryosuke Niwa.
2975 Add support for parsing unicode-bidi: -webkit-isolate
2976 https://bugs.webkit.org/show_bug.cgi?id=57181
2978 Test: css3/unicode-bidi-insolate-parse.html
2980 * WebCore.xcodeproj/project.pbxproj:
2981 * css/CSSParser.cpp:
2982 (WebCore::CSSParser::parseValue):
2983 * css/CSSPrimitiveValueMappings.h:
2984 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2985 (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
2986 * css/CSSValueKeywords.in:
2987 * rendering/style/RenderStyleConstants.h:
2989 2011-03-29 Patrick Gansterer <paroga@webkit.org>
2991 Unreviewed WinCE build fix for r82193.
2993 * platform/wince/FileSystemWinCE.cpp:
2994 (WebCore::openTemporaryFile):
2996 2011-03-28 Sheriff Bot <webkit.review.bot@gmail.com>
2998 Unreviewed, rolling out r82198.
2999 http://trac.webkit.org/changeset/82198
3000 https://bugs.webkit.org/show_bug.cgi?id=57304
3002 Broke Chromium Win build. (Requested by dave_levin on
3005 * platform/image-decoders/png/PNGImageDecoder.cpp:
3006 (WebCore::PNGImageDecoder::headerAvailable):
3007 (WebCore::PNGImageDecoder::rowAvailable):
3009 2011-03-28 Ofri Wolfus <ofri@google.com>
3011 Reviewed by Eric Seidel.
3013 RTL: Select elements with a size attribute are always left aligned.
3014 https://bugs.webkit.org/show_bug.cgi?id=50928
3016 Added support for alignment in RenderListBox.
3018 Test: fast/forms/listbox-bidi-align.html
3020 * rendering/RenderListBox.cpp:
3021 (WebCore::itemOffsetForAlignment):
3022 (WebCore::RenderListBox::paintItemForeground): Add support for alignment and directionality.
3024 2011-03-28 Kwang Yul Seo <skyul@company100.net>
3026 Reviewed by Benjamin Poulain.
3028 [Qt] Change TextureMapperVideoLayer to TextureMapperMediaLayer
3029 https://bugs.webkit.org/show_bug.cgi?id=57142
3031 TextureMapperMediaLayer is a better name here because both video and plugins use this layer.
3032 Remove ENABLE(VIDEO) guard.
3034 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3035 * platform/graphics/qt/MediaPlayerPrivateQt.h:
3036 * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3037 (WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
3038 * platform/graphics/texmap/TextureMapperNode.h:
3039 * platform/graphics/texmap/TextureMapperPlatformLayer.h:
3040 (WebCore::TextureMapperMediaLayer::layerType):
3042 2011-03-28 Thomas Klausner <tk@giga.or.at>
3044 Reviewed by David Levin.
3047 https://bugs.webkit.org/show_bug.cgi?id=54406
3049 Fix compilation with png-1.5: struct members were hidden, and
3050 a new API to terminate data processing was added (especially for
3053 Compilation fixes, so no new tests.
3055 * platform/image-decoders/png/PNGImageDecoder.cpp:
3056 (WebCore::PNGImageDecoder::headerAvailable):
3057 (WebCore::PNGImageDecoder::rowAvailable):
3059 2011-03-28 Kwang Yul Seo <skyul@company100.net>
3061 Reviewed by Adam Barth.
3063 Replace fprintf(stderr, ...) with LOG_ERROR
3064 https://bugs.webkit.org/show_bug.cgi?id=57216
3066 LOG_ERROR is a better choice here.
3068 * bridge/jni/v8/JavaClassV8.cpp:
3069 (JavaClass::JavaClass):
3071 2011-03-28 Steve Block <steveblock@google.com>
3073 Reviewed by Jeremy Orlow.
3075 Add a new JavaValue to type to represent a Java value in the Java bridge
3076 https://bugs.webkit.org/show_bug.cgi?id=57022
3078 This change introduces a new JavaValue type and uses it in place of jvalue
3079 in the conversions to and from JavaNPObject used in the V8 Java bridge.
3081 Refactoring only, no new tests.
3084 * bridge/jni/JNIUtility.cpp:
3085 (JSC::Bindings::javaTypeFromClassName):
3086 (JSC::Bindings::signatureFromJavaType):
3087 (JSC::Bindings::getJNIField):
3088 (JSC::Bindings::callJNIMethod):
3089 * bridge/jni/JavaType.h:
3090 * bridge/jni/v8/JNIUtilityPrivate.cpp:
3091 (JSC::Bindings::convertNPVariantToJavaValue):
3092 (JSC::Bindings::convertJavaValueToNPVariant):
3093 (JSC::Bindings::jvalueToJavaValue):
3094 (JSC::Bindings::javaValueToJvalue):
3095 * bridge/jni/v8/JNIUtilityPrivate.h:
3096 * bridge/jni/v8/JavaNPObjectV8.cpp:
3097 (JSC::Bindings::JavaNPObjectInvoke):
3098 (JSC::Bindings::JavaNPObjectGetProperty):
3099 * bridge/jni/v8/JavaValueV8.h: Added.
3100 (JSC::Bindings::JavaValue::JavaValue):
3102 2011-03-28 Patrick Gansterer <paroga@webkit.org>
3104 Reviewed by Darin Adler.
3106 Use String instead of CString as return value of openTemporaryFile
3107 https://bugs.webkit.org/show_bug.cgi?id=55332
3109 We usually store all paths as UTF-16. Do this for temporary files too.
3112 * platform/FileSystem.h:
3113 * platform/android/FileSystemAndroid.cpp:
3114 * platform/brew/FileSystemBrew.cpp:
3115 * platform/efl/FileSystemEfl.cpp:
3116 * platform/gtk/FileSystemGtk.cpp:
3117 * platform/haiku/FileSystemHaiku.cpp:
3118 * platform/mac/FileSystemMac.mm:
3119 * platform/qt/FileSystemQt.cpp:
3120 * platform/win/FileSystemWin.cpp:
3121 * platform/wince/FileSystemWinCE.cpp:
3122 * platform/wx/FileSystemWx.cpp:
3123 * plugins/PluginStream.cpp:
3124 (WebCore::PluginStream::destroyStream):
3125 * plugins/PluginStream.h:
3127 2011-03-28 Jeff Johnson <opendarwin@lapcatsoftware.com>
3129 Reviewed by Pavel Feldman.
3131 Web Inspector: empty, non-functional window
3132 https://bugs.webkit.org/show_bug.cgi?id=56354
3134 Check whether DOM local storage is enabled
3135 before attempting to access window.localStorage.
3139 * inspector/front-end/Settings.js:
3140 (WebInspector.Settings.prototype.findSettingForAllProjects):
3141 (WebInspector.Settings.prototype._get):
3142 (WebInspector.Settings.prototype._set):
3144 2011-03-28 Beth Dakin <bdakin@apple.com>
3146 Reviewed by Darin Adler.
3148 Fix for https://bugs.webkit.org/show_bug.cgi?id=57286 Alternative fix for:
3149 Horizontal scroller stops appearing after going Forward
3151 <rdar://problem/9026946>
3153 This patch rolls out revision 79053 and fixes the same bug in a better way.
3155 New function resetScrollbarsAndClearContentsSize() calls resetScrollbars() and then
3156 sets the contents size to 0. This is called when a document is going into the page
3159 (WebCore::Document::setInPageCache):
3160 (WebCore::FrameView::resetScrollbarsAndClearContentsSize):
3163 * history/CachedFrame.cpp:
3164 (WebCore::CachedFrameBase::restore):
3165 * page/FrameView.cpp:
3166 (WebCore::FrameView::FrameView):
3167 (WebCore::FrameView::reset):
3168 (WebCore::FrameView::layout):
3171 2011-03-28 Ojan Vafai <ojan@chromium.org>
3173 Reviewed by Antti Koivisto.
3175 fix style sharing with :any and sibling selectors
3176 https://bugs.webkit.org/show_bug.cgi?id=57211
3178 Test: fast/css/sibling-selectors.html
3180 * css/CSSStyleSelector.cpp:
3181 (WebCore::collectFeaturesFromList):
3183 2011-03-27 Ojan Vafai <ojan@chromium.org>
3185 Reviewed by Antti Koivisto.
3187 fix :-webkit-any(:last-child)
3188 https://bugs.webkit.org/show_bug.cgi?id=57207
3190 We were passing the wrong arguments to checkSelector. Also, we were not
3191 passing through the encounteredLink bool.
3193 * css/CSSStyleSelector.cpp:
3194 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3195 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3196 * css/CSSStyleSelector.h:
3198 2011-03-27 Ojan Vafai <ojan@chromium.org>
3200 Reviewed by Antti Koivisto.
3202 fix :-webkit-any(:last-child)
3203 https://bugs.webkit.org/show_bug.cgi?id=57207
3205 We were passing the wrong arguments to checkSelector. Also, we were not
3206 passing through the encounteredLink bool.
3208 * css/CSSStyleSelector.cpp:
3209 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3210 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3211 * css/CSSStyleSelector.h:
3213 2011-03-28 Maciej Stachowiak <mjs@apple.com>
3215 Reviewed by Darin Adler.
3217 REGRESSION(r82152): fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html
3218 https://bugs.webkit.org/show_bug.cgi?id=57291
3220 * platform/KURL.cpp:
3221 (WebCore::KURL::parse): Instead of considering URLs with
3222 credentials but no host invalid, consider them to have a host
3223 ending in @ (which fails down the line)/
3225 2011-03-28 Kent Tamura <tkent@chromium.org>
3227 Reviewed by Dimitri Glazkov.
3229 Fix some problems of the appearance of form validation message bubble.
3230 https://bugs.webkit.org/show_bug.cgi?id=57208
3232 No new tests. Validation message bubble appearance is not testable
3233 because it depends on a timer.
3236 (::-webkit-validation-bubble):
3237 (::-webkit-validation-bubble-message):
3238 (::-webkit-validation-bubble-arrow):
3239 (::-webkit-validation-bubble-arrow-clipper):
3240 - Explicitly set margin, padding, and color.
3241 - Make the shadow darker.
3242 - Make the background color darker.
3243 - Make opacity larger.
3244 - Make the border color lighter.
3246 - Change the implementation of an arrow.
3247 Stop making a right triangle by the border trick.
3248 Use -webkit-transform instead.
3249 - Make min-width workable by changing display property of
3250 -webkit-validation-bubble to "inline-block".
3251 * html/ValidationMessage.cpp:
3252 (WebCore::ValidationMessage::buildBubbleTree):
3253 Change the node structure. Before this change, -webkit-validation-bubble
3254 had three DIVs inside. After this change, it has two DIVs;
3255 -webkit-validation-bubble-arrow-clipper and
3256 -webkit-validation-bubble-message, and
3257 -webkit-validation-bubble-arrow-clipper contains
3258 -webkit-validation-bubble-arrow.
3260 2011-03-28 Enrica Casucci <enrica@apple.com>
3262 Reviewed by Sam Weinig.
3264 REGRESSION: Can't enter pasted with context or Edit menu text in search or address field in the browser.
3265 https://bugs.webkit.org/show_bug.cgi?id=57275
3266 <rdar://problem/8246691>
3268 We need to classify cut and paste actions as user typing actions even when
3269 the action is triggered by a context menu selection to
3270 allow the propagation of the textDidChangeInTextField event.
3272 * editing/EditorCommand.cpp:
3273 The following methods have been modified to properly set up
3274 the UserTypingGestureAction when the command source is the
3275 menu or a key binding sequence.
3276 (WebCore::executeCut):
3277 (WebCore::executePaste):
3278 (WebCore::executePasteAndMatchStyle):
3279 (WebCore::executePasteAsPlainText):
3280 (WebCore::executeDelete):
3281 * page/ContextMenuController.cpp:
3282 (WebCore::ContextMenuController::contextMenuItemSelected): Changed to
3283 call execute command instead of referring to the specific method in
3286 2011-03-28 Oliver Hunt <oliver@apple.com>
3288 Reviewed by Geoffrey Garen.
3290 instanceof Array test fails when using iframes
3291 https://bugs.webkit.org/show_bug.cgi?id=17250
3293 Update for new function and date apis
3295 Test: fast/js/js-constructors-use-correct-global.html
3297 * WebCore.xcodeproj/project.pbxproj:
3298 * bindings/js/JSDOMBinding.cpp:
3299 (WebCore::jsDateOrNull):
3300 * bindings/js/JSLazyEventListener.cpp:
3301 (WebCore::JSLazyEventListener::initializeJSFunction):
3303 2011-03-28 Beth Dakin <bdakin@apple.com>
3305 Reviewed by Darin Adler.
3307 Fix for https://bugs.webkit.org/show_bug.cgi?id=57124 When the scroller style is
3308 changed via delegate method, the page needs a full relayout and repaint
3310 <rdar://problem/9059129>
3312 Call into WebKitSystemInterface to associate the new painter with the existing
3313 painter controller. Reset the scrollbar frame rects to the new thickness -- normally
3314 this only happens when a scrollbar is created, so we have to reset the thickness
3315 here to pick up the new theme thickness. Finally, force a full relayout and style
3316 recall with setNeedsRecalcStyleInAllFrames()
3317 * platform/mac/ScrollAnimatorMac.mm:
3318 (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
3320 setNeedsRecalcStyleInAllFrames() used to be a static method in Settings.cpp. This
3321 patch moves it to be a member function on Page so that it can be called from
3322 FrameView when the scrollbar style changes.
3323 * page/FrameView.cpp:
3324 (WebCore::FrameView::setNeedsRecalcStyleInAllFrames):
3327 (WebCore::Page::setNeedsRecalcStyleInAllFrames):
3329 * page/Settings.cpp:
3330 (WebCore::Settings::setStandardFontFamily):
3331 (WebCore::Settings::setFixedFontFamily):
3332 (WebCore::Settings::setSerifFontFamily):
3333 (WebCore::Settings::setSansSerifFontFamily):
3334 (WebCore::Settings::setCursiveFontFamily):
3335 (WebCore::Settings::setFantasyFontFamily):
3336 (WebCore::Settings::setMinimumFontSize):
3337 (WebCore::Settings::setMinimumLogicalFontSize):
3338 (WebCore::Settings::setDefaultFontSize):
3339 (WebCore::Settings::setDefaultFixedFontSize):
3340 (WebCore::Settings::setTextAreasAreResizable):
3341 (WebCore::Settings::setAuthorAndUserStylesEnabled):
3342 (WebCore::Settings::setFontRenderingMode):
3343 (WebCore::Settings::setAcceleratedCompositingEnabled):
3344 (WebCore::Settings::setShowDebugBorders):
3345 (WebCore::Settings::setShowRepaintCounter):
3346 * platform/ScrollableArea.h:
3347 (WebCore::ScrollableArea::setNeedsRecalcStyleInAllFrames):
3349 2011-03-28 Dirk Pranke <dpranke@chromium.org>
3353 r81977 moved FontPlatformData.h from
3354 WebCore/platform/graphics/cocoa to platform/graphics. This
3355 change updates the chromium build accordingly.
3357 https://bugs.webkit.org/show_bug.cgi?id=57281
3359 * platform/graphics/chromium/CrossProcessFontLoading.mm:
3361 2011-03-28 Jer Noble <jer.noble@apple.com>
3363 Reviewed by Darin Adler.
3365 MediaPlayerPrivateAVFoundation should report that it supportsFullScreen()
3366 https://bugs.webkit.org/show_bug.cgi?id=57249
3368 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3369 (WebCore::MediaPlayerPrivateAVFoundation::supportsFullscreen):
3370 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3372 2011-03-28 Jer Noble <jer.noble@apple.com>
3374 Reviewed by Darin Adler.
3376 AVFoundation can indeed support full screen.
3378 MediaPlayerPrivateAVFoundation should report that it supportsFullScreen()
3379 https://bugs.webkit.org/show_bug.cgi?id=57249
3381 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3382 (WebCore::MediaPlayerPrivateAVFoundation::supportsFullscreen): Return true if using
3383 the new full screen APIs.
3384 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3386 2011-03-28 Eric Carlson <eric.carlson@apple.com>
3388 Reviewed by Darin Adler.
3390 http streams don't always display video with AVFoundation backend
3391 https://bugs.webkit.org/show_bug.cgi?id=57203
3393 No new tests, we don't currently have tests for http live streams. Changes verified manually.
3395 * platform/graphics/MediaPlayer.cpp:
3396 (WebCore::MediaPlayer::MediaPlayer): Initialize m_shouldPrepareToRender.
3397 (WebCore::MediaPlayer::loadWithNextMediaEngine): Call prepareForRendering on new engine
3398 if m_shouldPrepareToRender is set.
3399 (WebCore::MediaPlayer::prepareForRendering): Set m_shouldPrepareToRender.
3400 * platform/graphics/MediaPlayer.h:
3402 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3403 (WebCore::MediaPlayerPrivateAVFoundation::isReadyForVideoSetup): Don't return true until
3404 m_isAllowedToRender has been set.
3405 (WebCore::MediaPlayerPrivateAVFoundation::prepareForRendering): Always call setUpVideoRendering,
3406 it has logic to figure out when setup is required.
3407 (WebCore::MediaPlayerPrivateAVFoundation::updateStates): Call setUpVideoRendering when we aren't
3408 using the preferred rendering mode because if we get a file's metadata between the
3409 time supportsAcceleratedRendering() and paint() are called, we will allocate a software
3410 renderer even when we prefer a layer backed renderer.
3411 (WebCore::MediaPlayerPrivateAVFoundation::movieLoadType): Return "unknown" until we have metadata.
3413 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
3414 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
3415 (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Use itemKVOProperties() instead of
3416 an explicit list of key path names.
3417 (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForURL): Ditto.
3418 (WebCore::MediaPlayerPrivateAVFoundationObjC::beginLoadingMetadata): metadataKeyNames renamed
3419 to assetMetadataKeyNames, return an NSArray instead of a CFArrayRef since that is what the
3421 (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Return the duration of the
3422 player item, not the asset, because AVAsset.duration always returns an indefinite time
3423 for all streaming files.
3424 (WebCore::MediaPlayerPrivateAVFoundationObjC::assetStatus): metadataKeyNames renamed
3425 to assetMetadataKeyNames.
3426 (WebCore::MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext): Do nothing until
3427 metadata is available.
3428 (WebCore::MediaPlayerPrivateAVFoundationObjC::paint): Ditto.
3429 (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Split size calculation logic off
3431 (WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged): New. Use AVPlayerItem.presentationSize
3432 until tracks is non-NULL so we have a size as early as possible.
3433 (WebCore::MediaPlayerPrivateAVFoundationObjC::assetMetadataKeyNames): Renamed from metadataKeyNames.
3434 (WebCore::MediaPlayerPrivateAVFoundationObjC::itemKVOProperties): New, return an array of
3435 KVO observable properties.
3436 (-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Respond to
3437 presentationSize change.
3439 2011-03-28 Anders Carlsson <andersca@apple.com>
3441 Reviewed by Sam Weinig.
3443 Search field focus ring is missing
3444 https://bugs.webkit.org/show_bug.cgi?id=57270
3445 <rdar://problem/8765555>
3447 Add an _automaticFocusRingDisabled method which returns YES.
3449 * platform/mac/ThemeMac.mm:
3450 (-[WebCoreFlippedView _automaticFocusRingDisabled]):
3452 2011-03-28 Dimitri Glazkov <dglazkov@chromium.org>
3454 Reviewed by Darin Adler.
3456 Move more events to EventDispatcher.
3457 https://bugs.webkit.org/show_bug.cgi?id=57247
3459 No functional changes, covered by existing tests.
3461 * dom/EventDispatcher.cpp:
3462 (WebCore::eventTargetRespectingSVGTargetRules): Made a static function,
3463 since it's not used anywhere outside of the EventDispatcher.
3464 (WebCore::EventDispatcher::dispatchScopedEvent): Moved from Node.cpp.
3465 (WebCore::EventDispatcher::dispatchKeyEvent): Ditto.
3466 (WebCore::EventDispatcher::dispatchWheelEvent): Ditto.
3467 (WebCore::EventDispatcher::dispatchEvent): Changed to use eventTargetRespectingSVGTargetRules
3468 as a static function.
3469 * dom/EventDispatcher.h: Updated decls.
3471 (WebCore::Node::dispatchScopedEvent): Replaced with calling EventDispatcher.
3472 (WebCore::Node::dispatchKeyEvent): Ditto.
3473 (WebCore::Node::dispatchWheelEvent): Ditto.
3475 2011-03-28 Adele Peterson <adele@apple.com>
3477 Reviewed by Eric Seidel.
3479 Fix for <rdar://problem/9112694> REGRESSION (r79411): "Check grammar with spelling" context menu doesn't check as you type
3480 https://bugs.webkit.org/show_bug.cgi?id=57173
3482 Test: editing/spelling/grammar.html
3484 * WebCore.exp.in: Add symbol for new selectionStartHasMarkerFor method.
3485 * editing/Editor.cpp:
3486 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Every use of paragraph is specific to spelling or grammar,
3487 so to avoid confusion, we should explicitly use spellingParagraph or grammarParagraph. In the case of this bug,
3488 when we're consider ambiguous boundary characters (characters that could indicate word boundaries, but are used
3489 in the middle of words too, like apostrophes), we should use the use the spellingParagraph since the spellingParagraph
3490 is the only one operated on when this information is used.
3491 (WebCore::Editor::selectionStartHasMarkerFor): Changed from selectionStartHasSpellingMarkerFor so it can check for grammar as well as spelling.
3494 2011-03-28 Dan Bernstein <mitz@apple.com>
3496 Reviewed by Darin Adler.
3498 <rdar://problem/8895977> REGRESSION: multicol crashes with positioned elements
3499 https://bugs.webkit.org/show_bug.cgi?id=48983
3501 Test: fast/multicol/paginated-layer-crash.html
3503 * rendering/RenderLayer.cpp:
3504 (WebCore::RenderLayer::paintPaginatedChildLayer): Bring the logic for finding pagintating layers
3505 into sync with updatePagination() after r68069.
3506 (WebCore::RenderLayer::hitTestPaginatedChildLayer): Ditto.
3508 2011-03-28 Maciej Stachowiak <mjs@apple.com>
3510 Reviewed by Darin Adler' .
3512 URLSs with non-empty username but empty hostname treat first path segment as hostname, potentially enabling XSS
3513 https://bugs.webkit.org/show_bug.cgi?id=57220
3515 Test: http/tests/uri/username-with-no-hostname.html
3517 * platform/KURL.cpp:
3518 (WebCore::hostPortIsEmptyButUserPassIsNot):
3519 (WebCore::KURL::parse):
3521 2011-03-28 Adam Barth <abarth@webkit.org>
3523 Reviewed by Eric Seidel.
3525 script-src should block inline event handlers
3526 https://bugs.webkit.org/show_bug.cgi?id=57212
3528 I considered wrapping this into the canExecute check, but that approach
3529 would require passing that function a bunch of context information to
3530 behave correctly once we add support for the "options" directive that
3531 re-enables these features.
3533 Test: http/tests/security/contentSecurityPolicy/script-src-none-inline-event.html
3535 * bindings/js/JSLazyEventListener.cpp:
3536 (WebCore::JSLazyEventListener::initializeJSFunction):
3537 - This function was a mess. I couldn't resist cleaning it up a
3538 bunch. Notice that we ASSERT at the beginning of the function
3539 that scriptExecutionContext is a document and that both ways of
3540 getting the global object are the same when document->frame() is
3541 non-zero because the document must be active and there is a
3542 one-to-one relation between Frames and active Documents.
3543 * bindings/v8/V8LazyEventListener.cpp:
3544 (WebCore::V8LazyEventListener::prepareListenerObject):
3545 * page/ContentSecurityPolicy.cpp:
3546 (WebCore::ContentSecurityPolicy::allowInlineEventHandlers):
3547 * page/ContentSecurityPolicy.h:
3549 2011-03-28 Jeff Miller <jeffm@apple.com>
3551 Reviewed by Adam Roben.
3553 ResourceError::certificate() should return a PCCERT_CONTEXT
3554 https://bugs.webkit.org/show_bug.cgi?id=57262
3556 * platform/network/cf/ResourceError.h: certificate() now returns a PCCERT_CONTEXT.
3557 * platform/network/cf/ResourceErrorCF.cpp:
3558 (WebCore::ResourceError::certificate): Added.
3560 2011-03-28 David Hyatt <hyatt@apple.com>
3562 Reviewed by Simon Fraser and Darin Adler.
3564 https://bugs.webkit.org/show_bug.cgi?id=57221, memory corruption/crashes when positioned objects
3565 occur at the end of a line.
3567 The old code and new code for dealing with a trailing space object midpoint manipulated a raw
3568 array instead of the Vector. Otherwise this corruption would have been caught prior to check-in.
3570 I have patched the code to only go through the Vector and to make it handle the case that led to
3571 the corruption. Trailing positioned objects can occur both prior to and following the trailing space
3572 object's midpoint, so we have to be prepared to deal with both cases.
3574 This is already tested by fast/block/positioning/052.html, and that test now properly progresses
3575 like the other positioning tests did.
3577 * rendering/RenderBlockLineLayout.cpp:
3578 (WebCore::RenderBlock::findNextLineBreak):
3580 2011-03-28 Andrei Popescu <andreip@google.com>
3582 Reviewed by Steve Block.
3584 V8IDBKeyCustom.cpp does not compile with INDEXED_DATABASE disabled
3585 https://bugs.webkit.org/show_bug.cgi?id=57100
3587 Close the ENABLE guard and the namespace in the right order.
3589 No new tests, just cleanup.
3591 * bindings/v8/custom/V8IDBAnyCustom.cpp:
3592 * bindings/v8/custom/V8IDBKeyCustom.cpp:
3594 2011-03-28 Jeff Miller <jeffm@apple.com>
3596 Reviewed by Adam Roben.
3598 Include certificate when sending a WebCore::ResourceError to UI process on Windows
3599 https://bugs.webkit.org/show_bug.cgi?id=57195
3601 Add support for tracking the certificate in WebCore::ResourceError.
3603 * platform/network/ResourceErrorBase.cpp:
3604 (WebCore::ResourceErrorBase::copy): Call platformCopy() to copy platform-specific fields.
3605 * platform/network/ResourceErrorBase.h:
3606 (WebCore::ResourceErrorBase::platformCopy): Added.
3607 * platform/network/cf/ResourceError.h: Added constructor that takes certificate data, shadowed platformCopy, added m_certificate.
3608 (WebCore::ResourceError::certificate): Added.
3609 * platform/network/cf/ResourceErrorCF.cpp:
3610 (WebCore::ResourceError::ResourceError): Added constructor that takes certificate data.
3611 (WebCore::ResourceError::platformLazyInit): Read any certificate from the userInfo dictionary.
3612 (WebCore::ResourceError::platformCopy): Copy m_certificate.
3613 (WebCore::ResourceError::cfError): Add any certificate data to the userInfo dictionary in the CFErrorRef.
3615 2011-03-28 Jessie Berlin <jberlin@apple.com>
3617 Rubber-stamped by Adam Roben.
3619 Add an extra newline to the end of the generated Inspector.idl file so that it does not
3620 trigger the Windows "no newline at at end of file" warning.
3622 * inspector/generate-inspector-idl:
3624 2011-03-28 Csaba Osztrogonác <ossy@webkit.org>
3626 Buildfix after r82125.
3628 [Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
3629 https://bugs.webkit.org/show_bug.cgi?id=57087
3631 * platform/graphics/qt/MediaPlayerPrivateQt.cpp: Convert all char* to QString explicitly.
3632 (WebCore::MediaPlayerPrivateQt::getSupportedTypes):
3633 (WebCore::MediaPlayerPrivateQt::commitLoad):
3635 2011-03-28 Sheriff Bot <webkit.review.bot@gmail.com>
3637 Unreviewed, rolling out r82099.
3638 http://trac.webkit.org/changeset/82099
3639 https://bugs.webkit.org/show_bug.cgi?id=57245
3641 Breaks live edits tests on chromium. (Requested by pfeldman on
3644 * inspector/front-end/ScriptsPanel.js:
3645 (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.editScriptSource):
3646 * inspector/front-end/SourceFrame.js:
3647 (WebInspector.SourceFrame.prototype._handleSave):
3648 (WebInspector.SourceFrameDelegate.prototype.editScriptSource):
3650 2011-03-28 Pavel Feldman <pfeldman@chromium.org>
3652 Reviewed by Yury Semikhatsky.
3654 Web Inspector: brush up and rename debugger domain functions.
3655 https://bugs.webkit.org/show_bug.cgi?id=57240
3657 * inspector/Inspector.json:
3658 * inspector/InspectorAgent.cpp:
3659 (WebCore::InspectorAgent::setFrontend):
3660 (WebCore::InspectorAgent::postWorkerNotificationToFrontend):
3661 * inspector/InspectorDebuggerAgent.cpp:
3662 (WebCore::InspectorDebuggerAgent::setBreakpointsActive):
3663 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3664 (WebCore::InspectorDebuggerAgent::setBreakpoint):
3665 (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3666 (WebCore::InspectorDebuggerAgent::editScriptSource):
3667 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
3668 (WebCore::InspectorDebuggerAgent::didParseSource):
3669 (WebCore::InspectorDebuggerAgent::failedToParseSource):
3670 (WebCore::InspectorDebuggerAgent::didPause):
3671 (WebCore::InspectorDebuggerAgent::didContinue):
3672 * inspector/InspectorDebuggerAgent.h:
3673 * inspector/front-end/DebuggerModel.js:
3674 (WebInspector.DebuggerModel.prototype.setBreakpoint):
3675 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
3676 (WebInspector.DebuggerModel.prototype.removeBreakpoint):
3677 (WebInspector.DebuggerModel.prototype._didEditScriptSource):
3678 (WebInspector.DebuggerDispatcher.prototype.paused):
3679 (WebInspector.DebuggerDispatcher.prototype.resumed):
3680 (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
3681 (WebInspector.DebuggerDispatcher.prototype.scriptFailedToParse):
3682 (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
3683 * inspector/front-end/ScriptsPanel.js:
3684 (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
3685 * inspector/front-end/inspector.js:
3686 (WebInspector.didCreateWorker):
3687 (WebInspector.didDestroyWorker):
3689 2011-03-28 David Kilzer <ddkilzer@apple.com>
3691 <http://webkit.org/b/57239> Use forward class declaration instead of including header
3693 Reviewed by Dan Bernstein.
3695 Adding a "using namespace WebCore;" statement in a header may
3696 cause issues when <WebCore/Length.h> is included before
3697 <CoreText/CoreText.h>.
3699 Length.h defines the LengthType enum with a 'Fixed' value.
3700 CoreText.h includes MacTypes.h, which has a
3701 "typedef SInt32 Fixed;" statement, and then CoreText.h includes
3702 other headers that also use 'Fixed', but expect the typedef to
3703 be defined, not the enum. If another header includes
3704 "using namespace WebCore;" before CoreText.h, the
3705 following compiler errors result (paths abbreviated):
3707 CoreText.framework/Headers/SFNTLayoutTypes.h:689: error: reference to 'Fixed' is ambiguous
3708 MacTypes.h:184: error: candidates are: typedef SInt32 Fixed
3709 Length.h:37: error: WebCore::LengthType WebCore::Fixed
3710 SFNTLayoutTypes.h:689: error: 'Fixed' does not name a type
3712 * platform/mac/HTMLConverter.h: Use forward declaration of
3713 DocumentLoader class instead of including header. Remove the
3714 unused "using namespace WebCore;" statement.
3716 2011-03-26 Dimitri Glazkov <dglazkov@chromium.org>
3718 Reviewed by Eric Seidel.
3720 Introduce EventDispatcher, the new common way to fire events.
3721 https://bugs.webkit.org/show_bug.cgi?id=57168
3723 The goal here is two-fold:
3724 1) reduce the need to randomly sprinkle guards around the dispatch code
3725 by creating a well-scoped abstraction for dispatching events.
3726 2) create a place where fiddly event-related things like creating event
3727 contexts for ancestors can be done lazily.
3729 Additionally, with all the free-standing static functions, this code was
3730 just begging to come out of Node.cpp.
3732 The first step is a near-mechanical extraction of mouse-related events
3733 from Node.cpp to EventDispatcher. For now, the call sites are just
3734 replaced with invoking EventDispatcher. Later, we can remove these methods
3737 Refactoring, no functional changes.
3739 * Android.mk: Added EventDispatcher to build system.
3740 * CMakeLists.txt: Ditto.
3741 * GNUmakefile.am: Ditto.
3742 * WebCore.gypi: Ditto.
3743 * WebCore.pro: Ditto.
3744 * WebCore.vcproj/WebCore.vcproj: Ditto.
3745 * WebCore.xcodeproj/project.pbxproj: Ditto.
3746 * dom/DOMAllInOne.cpp: Ditto.
3747 * dom/EventDispatcher.cpp: Added.
3748 * dom/EventDispatcher.h: Added.
3750 (WebCore::Node::dispatchScopedEvent): Replaced to use EventDispatcher.
3751 (WebCore::Node::dispatchEvent): Ditto.
3752 (WebCore::Node::dispatchMouseEvent): Ditto.
3753 (WebCore::Node::dispatchSimulatedClick): Ditto.
3754 * dom/Node.h: Updated decls.
3756 2011-03-28 Dan Bernstein <mitz@apple.com>
3758 Reviewed by Maciej Stachowiak.
3760 <rdar://problem/9003382> Incomplete repaint of overflow in flipped lines writing modes
3761 https://bugs.webkit.org/show_bug.cgi?id=57197
3763 Tests: fast/repaint/overflow-flipped-writing-mode-block.html
3764 fast/repaint/overflow-flipped-writing-mode-table.html
3766 * rendering/RenderBlock.cpp:
3767 (WebCore::RenderBlock::paint): Flip the overflow rect before testing for intersection
3768 with the damage rect.
3769 * rendering/RenderTable.cpp:
3770 (WebCore::RenderTable::paint): Made the intersection check more like the one in
3771 RenderBlock::paint().
3773 2011-03-28 Xiaomei Ji <xji@chromium.org>
3775 Reviewed by Ryosuke Niwa.
3777 move directionOfEnclosingBlock() to be global so that it could be reused.
3778 https://bugs.webkit.org/show_bug.cgi?id=57233.
3780 Provide global function directionOfEnclosingBlock(Node*) so that it could be
3781 reused in SelectionController and other functionalities that need enclosing
3782 block's direcionality, such as moving caret by word in visual order.
3784 No new functionality, so no new tests.
3786 * editing/SelectionController.cpp:
3787 (WebCore::SelectionController::directionOfEnclosingBlock):
3788 * editing/htmlediting.cpp:
3789 (WebCore::directionOfEnclosingBlock):
3790 * editing/htmlediting.h:
3792 2011-03-28 Jarkko Sakkinen <jarkko.j.sakkinen@gmail.com>
3794 Reviewed by Benjamin Poulain.
3796 [Qt] fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html fails
3797 https://bugs.webkit.org/show_bug.cgi?id=56825
3799 Fixes for context attribute handling:
3800 - Initialize depth and stencil buffer depending on whether they
3801 are enabled in context attributes.
3802 - Always enable depth buffer when stencil buffer is enabled.
3803 - Disable stencil buffer on OpenGL ES 2.0
3804 - Cleaned up clutter code from initialization. Made code paths
3806 - Clear mask is now set correctly in reshape().
3808 Tests: fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html
3810 * platform/graphics/qt/GraphicsContext3DQt.cpp:
3811 (WebCore::GraphicsContext3DInternal::isValid):
3812 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
3813 (WebCore::GraphicsContext3DInternal::reshape):
3814 (WebCore::GraphicsContext3DInternal::paint):
3815 (WebCore::GraphicsContext3DInternal::getProcAddress):
3816 (WebCore::GraphicsContext3D::GraphicsContext3D):
3817 (WebCore::GraphicsContext3D::reshape):
3818 (WebCore::GraphicsContext3D::bindFramebuffer):
3820 2011-03-28 Pavel Feldman <pfeldman@chromium.org>
3822 Reviewed by Yury Semikhatsky.
3824 Web Inspector: rename network domain events from didHappenSomething to somethingHappened.
3825 https://bugs.webkit.org/show_bug.cgi?id=57226
3827 * inspector/Inspector.json:
3828 * inspector/InspectorResourceAgent.cpp:
3829 (WebCore::InspectorResourceAgent::willSendRequest):
3830 (WebCore::InspectorResourceAgent::markResourceAsCached):
3831 (WebCore::InspectorResourceAgent::didReceiveResponse):
3832 (WebCore::InspectorResourceAgent::didReceiveContentLength):
3833 (WebCore::InspectorResourceAgent::didFinishLoading):
3834 (WebCore::InspectorResourceAgent::didFailLoading):
3835 (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
3836 (WebCore::InspectorResourceAgent::setInitialContent):
3837 (WebCore::InspectorResourceAgent::didCommitLoad):
3838 (WebCore::InspectorResourceAgent::frameDetachedFromParent):
3839 (WebCore::InspectorResourceAgent::didCreateWebSocket):
3840 (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
3841 (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
3842 (WebCore::InspectorResourceAgent::didCloseWebSocket):
3843 * inspector/front-end/NetworkManager.js:
3844 (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
3845 (WebInspector.NetworkDispatcher.prototype.resourceMarkedAsCached):
3846 (WebInspector.NetworkDispatcher.prototype.responseReceived):
3847 (WebInspector.NetworkDispatcher.prototype.dataReceived):
3848 (WebInspector.NetworkDispatcher.prototype.loadingFinished):
3849 (WebInspector.NetworkDispatcher.prototype.loadingFailed):
3850 (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
3851 (WebInspector.NetworkDispatcher.prototype.frameDetached):
3852 (WebInspector.NetworkDispatcher.prototype.initialContentSet):
3853 (WebInspector.NetworkDispatcher.prototype.frameNavigated):
3854 (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
3855 (WebInspector.NetworkDispatcher.prototype.webSocketWillSendHandshakeRequest):
3856 (WebInspector.NetworkDispatcher.prototype.webSocketHandshakeResponseReceived):
3857 (WebInspector.NetworkDispatcher.prototype.webSocketClosed):
3859 2011-03-28 Mikhail Naganov <mnaganov@chromium.org>
3861 Reviewed by Pavel Feldman.
3863 WebInspector: [Chromium] Delete native CPU profiles and heap snapshots on binding disposal.
3864 https://bugs.webkit.org/show_bug.cgi?id=57099
3866 * bindings/v8/ScriptHeapSnapshot.cpp:
3867 (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
3868 * bindings/v8/ScriptHeapSnapshot.h:
3869 * bindings/v8/ScriptProfile.cpp:
3870 (WebCore::ScriptProfile::~ScriptProfile):
3871 * bindings/v8/ScriptProfile.h:
3872 * inspector/InspectorProfilerAgent.cpp:
3873 (WebCore::InspectorProfilerAgent::resetState):
3875 2011-03-24 Pavel Podivilov <podivilov@chromium.org>
3877 Reviewed by Yury Semikhatsky.
3879 Web Inspector: fix console messages positions in formatted scripts.
3880 https://bugs.webkit.org/show_bug.cgi?id=57010
3882 * inspector/front-end/DebuggerPresentationModel.js:
3883 (WebInspector.DebuggerPresentationModel):
3884 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
3885 (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage.didRequestMapping):
3886 (WebInspector.DebuggerPresentationModel.prototype.addConsoleMessage):
3887 (WebInspector.DebuggerPresentationModel.prototype.clearConsoleMessages):
3888 (WebInspector.DebuggerPresentationModel.prototype._reset):
3889 * inspector/front-end/ResourceTreeModel.js:
3890 (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
3891 * inspector/front-end/ScriptsPanel.js:
3892 (WebInspector.ScriptsPanel):
3893 (WebInspector.ScriptsPanel.prototype.addConsoleMessage):
3894 (WebInspector.ScriptsPanel.prototype.clearConsoleMessages):
3895 (WebInspector.ScriptsPanel.prototype._consoleMessageAdded):
3896 (WebInspector.ScriptsPanel.prototype.reset):
3897 (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
3898 * inspector/front-end/SourceFile.js:
3899 (WebInspector.SourceFile):
3900 * inspector/front-end/SourceFrame.js:
3901 (WebInspector.SourceFrame.prototype.addMessage):
3902 (WebInspector.SourceFrame.prototype._addExistingMessagesToSource):
3903 (WebInspector.SourceFrame.prototype.addMessageToSource):
3905 2011-03-27 Pavel Feldman <pfeldman@chromium.org>
3907 Reviewed by Yury Semikhatsky.
3909 Web Inspector: refactor ResourceTreeModel to remove poor dependencies.
3910 https://bugs.webkit.org/show_bug.cgi?id=57186
3912 - ResourceTreeModel is now event target (Object)
3913 - There is no ResourceTreeModel -> UI dependencies
3914 - NetworkManager -> ResourceTreeModel dependencies has been removed
3915 - NetworkManager is no longer dealing with the resources tree, it is only responsible for network events
3916 - ResourceTreeModel requests tree structure from the backend separately
3917 - Cached resources tree payload is now limited to url and type (no headers involved)
3918 - Resources tree is being rendered lazily upon request from the panel.
3920 * inspector/Inspector.json:
3921 * inspector/InspectorResourceAgent.cpp:
3922 (WebCore::InspectorResourceAgent::resourceContent):
3923 (WebCore::InspectorResourceAgent::resourceContentBase64):
3924 (WebCore::buildObjectForFrameTree):
3925 (WebCore::InspectorResourceAgent::enable):
3926 (WebCore::InspectorResourceAgent::getCachedResources):
3927 (WebCore::InspectorResourceAgent::getResourceContent):
3928 * inspector/InspectorResourceAgent.h:
3929 * inspector/InspectorStyleSheet.cpp:
3930 (WebCore::InspectorStyleSheet::resourceStyleSheetText):
3931 * inspector/front-end/InspectorFrontendHostStub.js:
3932 (.WebInspector.InspectorFrontendHostStub.prototype.sendMessageToBackend):
3933 (.WebInspector.InspectorFrontendHostStub.prototype.loadSessionSetting):
3934 * inspector/front-end/NetworkManager.js:
3935 (WebInspector.NetworkManager):
3936 (WebInspector.NetworkManager.prototype.frontendReused):
3937 (WebInspector.NetworkManager.prototype.requestContent):
3938 (WebInspector.NetworkDispatcher):
3939 (WebInspector.NetworkDispatcher.prototype.didReceiveResponse):
3940 (WebInspector.NetworkDispatcher.prototype.didLoadResourceFromMemoryCache):
3941 (WebInspector.NetworkDispatcher.prototype.frameDetachedFromParent):
3942 (WebInspector.NetworkDispatcher.prototype.didCommitLoadForFrame):
3943 * inspector/front-end/NetworkPanel.js:
3944 (WebInspector.NetworkPanel):
3945 (WebInspector.NetworkPanel.prototype._updateSummaryBar):
3946 (WebInspector.NetworkPanel.prototype._onFrameCommitLoad):
3947 * inspector/front-end/ResourceTreeModel.js:
3948 (WebInspector.ResourceTreeModel):
3949 (WebInspector.ResourceTreeModel.prototype.frontendReused):
3950 (WebInspector.ResourceTreeModel.prototype._processCachedResources):
3951 (WebInspector.ResourceTreeModel.prototype._addOrUpdateFrame):
3952 (WebInspector.ResourceTreeModel.prototype.frames):
3953 (WebInspector.ResourceTreeModel.prototype.subframes):
3954 (WebInspector.ResourceTreeModel.prototype.resources):
3955 (WebInspector.ResourceTreeModel.prototype._onCommitLoad):
3956 (WebInspector.ResourceTreeModel.prototype._onFrameDetachedFromParent):
3957 (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
3958 (WebInspector.ResourceTreeModel.prototype._addResourceToFrame):
3959 (WebInspector.ResourceTreeModel.prototype.resourceForURL):
3960 (WebInspector.ResourceTreeModel.prototype._bindResourceURL):
3961 (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
3962 (WebInspector.ResourceTreeModel.prototype._clearResources):
3963 (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
3964 (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
3965 (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
3966 (WebInspector.ResourceTreeModel.prototype._createResource):
3967 * inspector/front-end/ResourcesPanel.js:
3968 (WebInspector.ResourcesPanel):
3969 (WebInspector.ResourcesPanel.prototype.show):
3970 (WebInspector.ResourcesPanel.prototype._populateResourceTree.populateFrame):
3971 (WebInspector.ResourcesPanel.prototype._populateResourceTree):
3972 (WebInspector.ResourcesPanel.prototype._frameAdded):
3973 (WebInspector.ResourcesPanel.prototype._frameDetached):
3974 (WebInspector.ResourcesPanel.prototype._resourceAdded):
3975 (WebInspector.ResourcesPanel.prototype._frameNavigated):
3976 (WebInspector.FrameTreeElement.prototype.setTitles):
3977 * inspector/front-end/inspector.js:
3978 (WebInspector.frontendReused):
3980 2011-03-27 Ryosuke Niwa <rniwa@webkit.org>
3982 Reviewed by Eric Seidel.
3984 WebKit's behavior for text-align inherit differs from other browsers
3985 https://bugs.webkit.org/show_bug.cgi?id=56377
3987 The bug was caused by WebKit's resolving text-align: start and text-align: end too early.
3988 As discussed on the bug, when text-align: start and text-align: end are inherited by descendent nodes,
3989 the alignment of the text in those nodes should be determined based on the directionality of the text,
3990 not by the directionality of the ancestor node from which text-align property is inherited.
3992 Fixed the bug by introducing new enum values to ETextAlign: TASTART and TAEND. These two values will
3993 align text to the left in a LTR context and to the right in a RTL context respectively.
3995 * css/CSSPrimitiveValueMappings.h:
3996 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added the support for TASTART and TAEND.
3997 (WebCore::CSSPrimitiveValue::operator ETextAlign): Ditto.
3998 * css/CSSStyleSelector.cpp:
3999 (WebCore::CSSStyleSelector::applyProperty): No longer processes CSSValueStart and CSSValueEnd.
4000 * rendering/RenderBlock.cpp:
4001 (WebCore::RenderBlock::localCaretRect): Added the support for TASTART and TAEND.
4002 * rendering/RenderBlockLineLayout.cpp:
4003 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Added the support for TASTART and TAEND.
4004 * rendering/RenderText.cpp:
4005 (WebCore::RenderText::localCaretRect): Ditto.
4006 * rendering/style/RenderStyle.h: ETextAlign now has 10 values and requires 4 bits.
4007 * rendering/style/RenderStyleConstants.h: Added TASTART and TAEND to ETextAlign.
4009 2011-03-28 Pavel Podivilov <podivilov@chromium.org>
4011 Reviewed by Yury Semikhatsky.
4013 Web Inspector: fix breakpoints positions in formatted scripts.
4014 https://bugs.webkit.org/show_bug.cgi?id=56931
4016 Add async requestMapping method to SourceFile interface as required for populating
4017 breakpoints sidebar pane when in "format all scripts" mode.
4019 * inspector/front-end/DebuggerPresentationModel.js:
4020 (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
4021 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint.didRequestSourceMapping):
4022 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
4023 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
4024 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
4025 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame.didRequestSourceMapping):
4026 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
4027 (WebInspector.PresentationBreakpoint): Breakpoint wrapper for UI.
4028 (WebInspector.PresentationBreakpoint.prototype.get sourceFileId):
4029 (WebInspector.PresentationBreakpoint.prototype.get lineNumber):
4030 (WebInspector.PresentationBreakpoint.prototype.get condition):
4031 (WebInspector.PresentationBreakpoint.prototype.get enabled):
4032 (WebInspector.PresentationBreakpoint.prototype.get url):
4033 (WebInspector.PresentationBreakpoint.prototype.get resolved):
4034 (WebInspector.PresentationBreakpoint.prototype.loadSnippet):
4035 * inspector/front-end/ScriptFormatter.js:
4036 (WebInspector.ScriptFormatter.prototype.formatContent.didFormatChunks):
4037 (WebInspector.ScriptFormatter.prototype.formatContent):
4038 * inspector/front-end/SourceFile.js:
4039 (WebInspector.SourceFile.prototype.requestSourceMapping):
4040 (WebInspector.FormattedSourceFile.prototype.requestSourceMapping):
4041 (WebInspector.FormattedSourceFile.prototype._didRequestContent):
4042 (WebInspector.SourceMapping):
4043 (WebInspector.SourceMapping.prototype.scriptLocationToSourceLocation):
4044 (WebInspector.SourceMapping.prototype.sourceLocationToScriptLocation):
4045 (WebInspector.FormattedSourceMapping):
4046 (WebInspector.FormattedSourceMapping.prototype.scriptLocationToSourceLocation):
4047 (WebInspector.FormattedSourceMapping.prototype.sourceLocationToScriptLocation):
4048 (WebInspector.FormattedSourceMapping.prototype._convertPosition):
4050 2011-03-28 Nancy Piedra <nancy.piedra@nokia.com>
4052 Reviewed by Csaba Osztrogonác.
4054 This patch fixes linking errors on Qt Webkit Windows MinGW builds.
4055 This patch sets the BUILDING_WEBKIT & QT_MAKEDLL macros so that
4056 QWEBKIT_EXPORT is defined as follows:
4057 #define QWEBKIT_EXPORT Q_DECL_EXPORT
4059 No new tests needed since only changing .pro file.