1 2011-03-03 Jessie Berlin <jberlin@apple.com>
3 Reviewed by Adam Roben.
5 WebKit2: Use CFNetwork Sessions API.
6 https://bugs.webkit.org/show_bug.cgi?id=55435
8 Set the Private Browsing Storage Session on requests when Private Browsing is enabled.
11 Support using WKCopyRequestWithStorageSession in WebCore.
12 * platform/mac/WebCoreSystemInterface.h:
14 * platform/mac/WebCoreSystemInterface.mm:
17 * platform/network/cf/ResourceHandleCFNet.cpp:
18 (WebCore::makeFinalRequest):
19 If Private Browsing is enabled, set the Private Browsing Storage Session on the request.
20 (WebCore::ResourceHandle::willSendRequest):
22 * platform/network/mac/ResourceHandleMac.mm:
23 (WebCore::ResourceHandle::createNSURLConnection):
25 (WebCore::ResourceHandle::willSendRequest):
28 * platform/network/cf/ResourceRequest.h:
29 * platform/network/cf/ResourceRequestCFNet.cpp:
30 (WebCore::ResourceRequest::setStorageSession):
32 * platform/network/mac/ResourceRequestMac.mm:
33 (WebCore::ResourceRequest::setStorageSession):
36 2011-03-03 Chris Marrin <cmarrin@apple.com>
38 Reviewed by Simon Fraser.
40 REGRESSION: Accelerated transitions are jumpy
41 https://bugs.webkit.org/show_bug.cgi?id=55022
43 Changed the way default TimingFunction is stored according to Adam Roben's
46 * platform/animation/TimingFunction.h:
47 (WebCore::CubicBezierTimingFunction::defaultTimingFunction):
49 2011-03-03 Dan Bernstein <mitz@apple.com>
51 Reviewed by Sam Weinig.
53 Rename -webkit-hyphenate-locale to -webkit-locale
54 https://bugs.webkit.org/show_bug.cgi?id=55709
56 * css/CSSComputedStyleDeclaration.cpp:
57 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
59 (WebCore::CSSParser::parseValue):
60 (WebCore::cssPropertyID):
61 * css/CSSPropertyNames.in:
62 * css/CSSStyleSelector.cpp:
63 (WebCore::CSSStyleSelector::applyProperty):
64 * rendering/RenderBlockLineLayout.cpp:
65 (WebCore::RenderBlock::findNextLineBreak):
66 * rendering/style/RenderStyle.cpp:
67 (WebCore::RenderStyle::diff):
68 * rendering/style/RenderStyle.h:
69 (WebCore::InheritedFlags::locale):
70 (WebCore::InheritedFlags::setLocale):
71 (WebCore::InheritedFlags::initialLocale):
72 * rendering/style/StyleRareInheritedData.cpp:
73 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
74 (WebCore::StyleRareInheritedData::operator==):
75 * rendering/style/StyleRareInheritedData.h:
77 2011-03-03 Kevin Ollivier <kevino@theolliviers.com>
79 [wx] Build fixes. Use Font::textMetrics to get ascent value, and add missing include.
81 * platform/wx/DragDataWx.cpp:
82 * platform/wx/wxcode/win/non-kerned-drawing.cpp:
83 (WebCore::drawTextWithSpacing):
85 2011-03-03 Oliver Hunt <oliver@apple.com>
87 Reviewed by Geoffrey Garen.
89 JSVariableObject needs to use WriteBarrier for symboltable property storage
90 https://bugs.webkit.org/show_bug.cgi?id=55698
92 Update to pass JSGlobalData for the symbol table write used
93 to set the document property.
95 * bindings/js/JSDOMWindowBase.cpp:
96 (WebCore::JSDOMWindowBase::updateDocument):
98 2011-03-03 Alexey Proskuryakov <ap@apple.com>
100 More build fixing. Move WebCoreKeyboardUIMode.h to a cross-platform location.
102 * WebCore.xcodeproj/project.pbxproj:
103 * page/WebCoreKeyboardUIMode.h: Copied from WebCore/page/mac/WebCoreKeyboardUIMode.h.
104 * page/mac/WebCoreKeyboardUIMode.h: Removed.
106 2011-03-03 Alexey Proskuryakov <ap@apple.com>
108 Build fix. Should include WebCoreKeyboardUIMode.h on all platforms now.
110 * page/ChromeClient.h:
112 2011-03-02 Alexey Proskuryakov <ap@apple.com>
114 Reviewed by Darin Adler.
116 REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access
117 https://bugs.webkit.org/show_bug.cgi?id=55633
118 <rdar://problem/8963023>
120 * loader/EmptyClients.h: (WebCore::EmptyChromeClient::keyboardUIMode):
121 * page/ChromeClient.h:
122 * page/EventHandler.cpp: (WebCore::EventHandler::tabsToLinks):
123 Merged tabsToLinks() and keyboardUIMode(). The latter returned a superset of information
126 2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
128 Fix Win compile break, caused by r80276.
130 * rendering/RenderThemeWin.h: Changed signature of volumeSliderOffsetFromMuteButton
131 to match RenderTheme.h.
133 2011-03-02 Geoffrey Garen <ggaren@apple.com>
135 Reviewed by Darin Adler.
137 Moved all variable object storage inline -- upping the object size limit to 1K
138 https://bugs.webkit.org/show_bug.cgi?id=55653
140 * bindings/js/JSDOMGlobalObject.cpp:
141 * bindings/js/JSDOMGlobalObject.h:
142 * bindings/js/JSDOMWindowBase.cpp:
143 * bindings/js/JSDOMWindowBase.h:
144 * bindings/js/JSDOMWindowCustom.h:
145 * bindings/js/JSWorkerContextBase.cpp: Removed out-of-line storage. Changed d-> to m_.
147 2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
149 Reviewed by Darin Adler.
151 Use RenderBox in volumeSliderOffsetFromMuteButton, since that's what is actually being used.
152 https://bugs.webkit.org/show_bug.cgi?id=55099
154 Cleanup, no behavior change.
156 * html/shadow/MediaControls.cpp:
157 (WebCore::MediaControls::updateVolumeSliderContainer): Changed to pass RenderBox
159 * rendering/RenderMediaControls.cpp:
160 (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Changed
161 to use RenderBox as argument.
162 * rendering/RenderMediaControls.h: Ditto.
163 * rendering/RenderTheme.cpp:
164 (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): Ditto.
165 * rendering/RenderTheme.h: Ditto.
166 * rendering/RenderThemeChromiumMac.h: Ditto.
167 * rendering/RenderThemeChromiumMac.mm:
168 (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton): Ditto.
169 * rendering/RenderThemeMac.h: Ditto.
170 * rendering/RenderThemeMac.mm:
171 (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): Ditto.
172 * rendering/RenderThemeWin.cpp:
173 (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton): Ditto.
175 2011-03-03 Alexis Menard <alexis.menard@openbossa.org>
177 Reviewed by Andreas Kling.
179 When building with DEFINES+=USE_GSTREAMER=1 we don't want to define ENABLE_QT_MULTIMEDIA to 1.
180 Also add the new files added after https://bugs.webkit.org/show_bug.cgi?id=54870 to support GRefPtr
186 2011-03-03 Anders Carlsson <andersca@apple.com>
188 Try to fix the Windows build again.
190 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
191 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
193 2011-03-03 Mihai Parparita <mihaip@chromium.org>
195 Reviewed by Dimitri Glazkov.
197 Add another CRASH() for CSSSelector double frees
198 https://bugs.webkit.org/show_bug.cgi?id=55693
200 To help track down bug 53045, add a CRASH call when the the array and/or
201 CSSSelector member in CSSSelectorList is disposed of more than once.
203 Just a check, no new tests necessary.
205 * css/CSSSelectorList.cpp:
206 (WebCore::CSSSelectorList::deleteSelectors):
208 2011-03-03 Anders Carlsson <andersca@apple.com>
210 Yet another attempt at fixing the Windows build.
212 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
213 * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
214 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
215 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
217 2011-03-02 Chris Marrin <cmarrin@apple.com>
219 Reviewed by Simon Fraser.
221 REGRESSION: Accelerated transitions are jumpy
222 https://bugs.webkit.org/show_bug.cgi?id=55022
224 Got rid of default TimingFunction values from PlatformCAAnimation*. A TimingFunction
225 is now always passed in. The TimingFunction class now has a static method to get
226 a default object which has the 'ease' values in it. I now assert in both Mac and
227 Win implementations if a null TimingFunction pointer is seen.
229 * platform/animation/TimingFunction.h:
230 (WebCore::CubicBezierTimingFunction::create):
231 (WebCore::CubicBezierTimingFunction::defaultTimingFunction):
232 (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
233 * platform/graphics/ca/GraphicsLayerCA.cpp:
234 (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
235 * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
236 (toCAMediaTimingFunction):
237 * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
238 (toCACFTimingFunction):
240 2011-03-03 Tony Gentilcore <tonyg@chromium.org>
242 Unreviewed build fix.
244 Fix clang compile after r80220
245 https://bugs.webkit.org/show_bug.cgi?id=55692
247 * storage/IDBBackingStore.cpp:
248 (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
250 2011-03-03 Anders Carlsson <andersca@apple.com>
252 Attempt to fix the Windows build.
254 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
255 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
257 2011-03-02 Brian Weinstein <bweinstein@apple.com>
259 Reviewed by Adam Roben.
261 Rest of WebKit2: Need a way to send notifications to client when cookies change
262 https://bugs.webkit.org/show_bug.cgi?id=55427
263 <rdar://problem/9056027>
265 Add functions to be exported.
269 2011-03-03 Anders Carlsson <andersca@apple.com>
271 Reviewed by Darin Adler.
273 Improve WebCore build time by ~5%
274 https://bugs.webkit.org/show_bug.cgi?id=55688
276 Forward declare the CATransform3D and CGAffineTransform structs instead of including
277 large chunks of QuartzCore and Core Graphics.
279 On an 8 core Mac Pro, this sped up building WebCore by about 5%.
281 * platform/graphics/ca/GraphicsLayerCA.cpp:
282 * platform/graphics/ca/TransformationMatrixCA.cpp:
283 * platform/graphics/transforms/TransformationMatrix.h:
285 2011-03-03 Andrey Kosyakov <caseq@chromium.org>
287 Unreviewed. Adjusted call to a method renamed in r80102.
289 * inspector/front-end/SourceFrame.js:
290 (WebInspector.SourceFrame.prototype._startEditing):
292 2011-03-03 Timothy Hatcher <timothy@apple.com>
294 Use APIEntryShim instead of JSLock in SerializedScriptValue to allow it to be used
295 by contexts not created by WebCore.
297 https://webkit.org/b/55642
299 Reviewed by Oliver Hunt.
301 * bindings/js/SerializedScriptValue.cpp:
302 (WebCore::SerializedScriptValue::create): Use APIEntryShim instead of JSLock.
303 (WebCore::SerializedScriptValue::deserialize): Ditto.
305 2011-03-03 Alexey Proskuryakov <ap@apple.com>
307 Reviewed by Darin Adler.
309 WebCore should check for "Upgrade" and "Connection" header fields in WebSockets handshake
310 https://bugs.webkit.org/show_bug.cgi?id=55498
311 <rdar://problem/8752706>
313 Tests: http/tests/websocket/tests/handshake-fail-by-no-connection-header.html
314 http/tests/websocket/tests/handshake-fail-by-no-upgrade-header.html
316 * websockets/WebSocketHandshake.h: Removed unused and meaningless setters for response
317 header fields. Removed separate member variables for those, as they were duplicating data
318 available in response, and there is no reason to squeeze microsecods here.
320 * websockets/WebSocketHandshake.cpp:
321 (WebCore::WebSocketHandshake::reset): There are no longer member variables for header field
322 values to reset here.
323 (WebCore::WebSocketHandshake::readServerHandshake): Removed a call for processHeaders().
324 (WebCore::WebSocketHandshake::serverWebSocketOrigin): Changed to get the value from response.
325 (WebCore::WebSocketHandshake::serverWebSocketLocation): Ditto.
326 (WebCore::WebSocketHandshake::serverWebSocketProtocol): Ditto.
327 (WebCore::WebSocketHandshake::serverSetCookie): Ditto.
328 (WebCore::WebSocketHandshake::serverSetCookie2): Ditto.
329 (WebCore::WebSocketHandshake::serverUpgrade): Added.
330 (WebCore::WebSocketHandshake::serverConnection): Added.
331 (WebCore::WebSocketHandshake::checkResponseHeaders): Added checks for Upgrade and Connection
332 header field presence and values.
334 2011-03-03 Helder Correia <helder@sencha.com>
336 Reviewed by Andreas Kling.
338 [Qt] fast/canvas/canvas-strokePath-gradient-shadow.html fails
339 https://bugs.webkit.org/show_bug.cgi?id=55651
341 When relying on ContextShadow and using a gradient stroke for a path,
342 the alpha of the shadow is incorrect.
344 * platform/graphics/qt/GraphicsContextQt.cpp:
345 (WebCore::GraphicsContext::strokePath):
347 2011-03-03 Martin Robinson <mrobinson@igalia.com>
349 XHTMLMP build broken after r78342
350 https://bugs.webkit.org/show_bug.cgi?id=55286
352 Fix XHTMLMP build now that the DocumentWriter is a member of DocumentLoader
353 instead of FrameLoader.
355 No new tests. This is a build fix.
358 (WebCore::Document::isXHTMLMPDocument):
360 2011-03-03 Dimitri Glazkov <dglazkov@chromium.org>
362 Reviewed by Eric Carlson.
364 Tweak MediaControlMuteButtonElement class hierarchy.
365 https://bugs.webkit.org/show_bug.cgi?id=55614
367 This allows the mute button on the panel to have event handlers that are
368 different from the mute button in the volume slider.
370 No change in behavior, covered by existing tests.
372 * html/shadow/MediaControls.cpp:
373 (WebCore::MediaControls::createMuteButton): Changed to use MediaControlPanelMuteButtonElement.
374 * rendering/MediaControlElements.cpp:
375 (WebCore::MediaControlMuteButtonElement::updateDisplayType):
376 (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Added.
377 (WebCore::MediaControlPanelMuteButtonElement::create): Added.
378 (WebCore::MediaControlPanelMuteButtonElement::shadowPseudoId): Moved.
379 * rendering/MediaControlElements.h: Added defs.
381 2011-03-03 Yury Semikhatsky <yurys@chromium.org>
383 Reviewed by Pavel Feldman.
385 Web Inspector: Resource agent should have same lifetime as Inspector agent
386 https://bugs.webkit.org/show_bug.cgi?id=55461
388 * inspector/Inspector.idl:
389 * inspector/InspectorAgent.cpp:
390 (WebCore::InspectorAgent::InspectorAgent):
391 (WebCore::InspectorAgent::inspectedPageDestroyed): disconnectFrontend is called before the agent is destroyed
392 to clear frontend reference in all agents.
393 (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
394 (WebCore::InspectorAgent::setFrontend):
395 (WebCore::InspectorAgent::disconnectFrontend):
396 (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
397 (WebCore::InspectorAgent::didCommitLoad):
398 * inspector/InspectorAgent.h:
399 (WebCore::InspectorAgent::resourceAgent):
400 * inspector/InspectorBrowserDebuggerAgent.cpp:
401 (WebCore::InspectorBrowserDebuggerAgent::~InspectorBrowserDebuggerAgent):
402 * inspector/InspectorDebuggerAgent.cpp:
403 (WebCore::InspectorDebuggerAgent::~InspectorDebuggerAgent):
404 * inspector/InspectorInstrumentation.cpp:
405 (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
406 (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
407 (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
408 (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
409 (WebCore::InspectorInstrumentation::retrieveResourceAgent):
410 * inspector/InspectorResourceAgent.cpp:
411 (WebCore::InspectorResourceAgent::setFrontend):
412 (WebCore::InspectorResourceAgent::clearFrontend):
413 (WebCore::InspectorResourceAgent::restore):
414 (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
415 (WebCore::InspectorResourceAgent::enable):
416 (WebCore::InspectorResourceAgent::disable):
417 (WebCore::InspectorResourceAgent::InspectorResourceAgent):
418 * inspector/InspectorResourceAgent.h:
419 (WebCore::InspectorResourceAgent::create):
420 * inspector/InspectorTimelineAgent.cpp:
421 (WebCore::InspectorTimelineAgent::restore):
422 * inspector/InspectorTimelineAgent.h:
423 * inspector/front-end/NetworkManager.js:
424 (WebInspector.NetworkManager):
425 (WebInspector.NetworkManager.prototype.frontendReused):
426 * inspector/front-end/inspector.js:
427 (WebInspector.frontendReused):
429 2011-03-03 Andras Becsi <abecsi@webkit.org>
431 Reviewed by Andreas Kling.
433 CSS RGBA fast-path color parsing should clamp of out-of-range alpha values
434 https://bugs.webkit.org/show_bug.cgi?id=55661
436 Test case originally written by Andreas Kling <andreas.kling@nokia.com>
438 Test: fast/canvas/rgba-parsing.html
441 (WebCore::isValidDouble): Check whether the given string is a valid double.
442 (WebCore::parseAlphaValue): Out-of-range alpha values should be clamped to the (0.0, 1.0) range.
444 2011-03-03 David Holloway <dhollowa@chromium.org>
446 Reviewed by Dimitri Glazkov.
448 Changes HTMLTextFormControlElement::placeholderShouldBeVisible to account
449 for non-empty suggestion text. The visibility of the placeholder text
450 now turned off when suggestion text is set.
451 https://bugs.webkit.org/show_bug.cgi?id=55245
453 No new tests because, by design, the suggestion text is not accessible
456 * html/HTMLFormControlElement.cpp:
457 (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
458 * html/HTMLFormControlElement.h:
459 (WebCore::HTMLTextFormControlElement::isEmptySuggestedValue):
460 * html/HTMLInputElement.h:
461 (WebCore::HTMLInputElement::isEmptySuggestedValue):
463 2011-03-03 Andy Estes <aestes@apple.com>
465 Reviewed by Eric Seidel.
467 HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
468 https://bugs.webkit.org/show_bug.cgi?id=48719
470 Instead of pushing a fake HTMLHtmlElement onto the open element stack
471 during fragment parsing only to later remove it and reparent its
472 children to the DocumentFragment, push the DocumentFragment directly
473 onto the open element stack as the root node. This requires refactoring
474 HTMLElementStack to hold ContainerNode pointers rather than Element
475 pointers, which has implications for HTMLConstructionSite and
476 HTMLTreeBuilder as well.
478 With this patch, the regression in Peacekeeper from Safari 5.0.3 to ToT
479 is ~14%. However, if you discount the 'domDynamicCreationCreateElement'
480 test, ToT is now ~4% faster than Safari 5.0.3. This indicates that the
481 regression no longer lies in fragment parsing.
483 No new tests. No change in behavior.
486 (WebCore::Node::hasLocalName):
488 * html/parser/HTMLConstructionSite.cpp:
489 (WebCore::HTMLNames::hasImpliedEndTag):
490 (WebCore::HTMLConstructionSite::HTMLConstructionSite):
491 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
492 (WebCore::HTMLConstructionSite::insertComment):
493 (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
494 (WebCore::HTMLConstructionSite::attachToCurrent):
495 (WebCore::HTMLConstructionSite::insertScriptElement):
496 (WebCore::HTMLConstructionSite::insertTextNode):
497 (WebCore::HTMLConstructionSite::createElement):
498 (WebCore::HTMLConstructionSite::createHTMLElement):
499 (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
500 (WebCore::HTMLConstructionSite::generateImpliedEndTags):
501 (WebCore::HTMLConstructionSite::findFosterSite):
502 (WebCore::HTMLConstructionSite::shouldFosterParent):
503 * html/parser/HTMLConstructionSite.h:
504 (WebCore::HTMLConstructionSite::currentNode):
505 * html/parser/HTMLElementStack.cpp:
506 (WebCore::HTMLNames::isNumberedHeaderElement):
507 (WebCore::HTMLNames::isScopeMarker):
508 (WebCore::HTMLNames::isListItemScopeMarker):
509 (WebCore::HTMLNames::isTableScopeMarker):
510 (WebCore::HTMLNames::isTableBodyScopeMarker):
511 (WebCore::HTMLNames::isTableRowScopeMarker):
512 (WebCore::HTMLNames::isButtonScopeMarker):
513 (WebCore::HTMLNames::isSelectScopeMarker):
514 (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
515 (WebCore::HTMLElementStack::ElementRecord::replaceElement):
516 (WebCore::HTMLElementStack::HTMLElementStack):
517 (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
518 (WebCore::HTMLElementStack::popAll):
519 (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
520 (WebCore::HTMLElementStack::popUntil):
521 (WebCore::HTMLElementStack::popUntilPopped):
522 (WebCore::HTMLElementStack::popUntilTableScopeMarker):
523 (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
524 (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
525 (WebCore::HTMLElementStack::pushHTMLHtmlElement):
526 (WebCore::HTMLElementStack::push):
527 (WebCore::HTMLElementStack::insertAbove):
528 (WebCore::HTMLElementStack::find):
529 (WebCore::HTMLElementStack::topmost):
530 (WebCore::HTMLElementStack::contains):
531 (WebCore::inScopeCommon):
532 (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
533 (WebCore::HTMLElementStack::htmlElement):
534 (WebCore::HTMLElementStack::rootNode):
535 (WebCore::HTMLElementStack::pushCommon):
536 * html/parser/HTMLElementStack.h:
537 (WebCore::HTMLElementStack::ElementRecord::element):
538 (WebCore::HTMLElementStack::ElementRecord::node):
539 (WebCore::HTMLElementStack::topNode):
540 * html/parser/HTMLTreeBuilder.cpp:
541 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
542 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
543 (WebCore::HTMLTreeBuilder::processStartTagForInBody):
544 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
545 (WebCore::HTMLTreeBuilder::processStartTag):
546 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
547 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
548 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
549 (WebCore::HTMLTreeBuilder::processEndTagForInCell):
550 (WebCore::HTMLTreeBuilder::processEndTagForInBody):
551 (WebCore::HTMLTreeBuilder::processEndTag):
552 (WebCore::HTMLTreeBuilder::processEndOfFile):
553 (WebCore::HTMLTreeBuilder::finished):
554 * html/parser/HTMLTreeBuilder.h:
556 2011-03-02 Yury Semikhatsky <yurys@chromium.org>
558 Reviewed by Pavel Feldman.
560 Web Inspector: inspector protocol should allow different domains to have methods with same name
561 https://bugs.webkit.org/show_bug.cgi?id=55558
563 * inspector/CodeGeneratorInspector.pm: each command is now identified by domain + command-name(was command-name only).
565 2011-03-02 Pavel Podivilov <podivilov@chromium.org>
567 Reviewed by Yury Semikhatsky.
569 Web Inspector: make selected call frame debugger presentation model property.
570 https://bugs.webkit.org/show_bug.cgi?id=55582
572 * inspector/front-end/CallStackSidebarPane.js:
573 (WebInspector.CallStackSidebarPane):
574 (WebInspector.CallStackSidebarPane.prototype.update):
575 (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
576 (WebInspector.CallStackSidebarPane.prototype._selectedCallFrameIndex):
577 * inspector/front-end/ConsoleView.js:
578 (WebInspector.ConsoleView.prototype.completions):
579 * inspector/front-end/DebuggerPresentationModel.js:
580 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
581 (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
582 * inspector/front-end/ScriptsPanel.js:
583 (WebInspector.ScriptsPanel):
584 (WebInspector.ScriptsPanel.prototype.getCompletionsOnCallFrame):
585 (WebInspector.ScriptsPanel.prototype._debuggerResumed):
586 (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
587 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
589 2011-03-03 Jia Pu <jpu@apple.com>
591 Reviewed by Darin Adler.
593 On Mac OS X, spelling suggestion panel stops showing up after change set 80121
594 https://bugs.webkit.org/show_bug.cgi?id=55628
596 Removed a call to stopCorrectionPanelTimer() to fix a regression introduced by changeset 80121.
598 * editing/Editor.cpp:
599 (WebCore::Editor::appliedEditing):
600 * manual-tests/autocorrection/autocorrection-contraction.html:
602 2011-03-03 Pavel Podivilov <podivilov@chromium.org>
604 Reviewed by Pavel Feldman.
606 Web Inspector: rename "sourceName" to "sourceFileId" in ScriptsPanel.js.
607 https://bugs.webkit.org/show_bug.cgi?id=55569
609 sourceFileId better reflects the intention to have unique identifier for each source that is shown in scripts panel.
611 * inspector/front-end/DebuggerPresentationModel.js:
612 * inspector/front-end/ScriptsPanel.js:
614 2011-03-03 Steve Block <steveblock@google.com>
616 Reviewed by David Levin.
618 JavaString API should be implementable by both JSC and V8
619 https://bugs.webkit.org/show_bug.cgi?id=55567
621 Remove JavaString's UString operator and replace it with a
622 script-engine-independent impl() method, which returns a
623 StringImpl and can be implemented with both JSC and V8.
625 No new tests, refactoring only.
627 * bridge/jni/JNIBridge.h:
628 (JSC::Bindings::JavaString::impl):
629 * bridge/jni/jni_jsobject.mm:
630 (JavaJSObject::call):
631 (JavaJSObject::eval):
632 (JavaJSObject::getMember):
633 (JavaJSObject::setMember):
634 (JavaJSObject::removeMember):
635 * bridge/jni/jsc/JNIBridgeJSC.cpp:
636 (JavaField::valueFromInstance):
637 (JavaField::setValueToInstance):
638 * bridge/jni/jsc/JavaClassJSC.cpp:
639 (JavaClass::JavaClass):
640 * bridge/jni/jsc/JavaInstanceJSC.cpp:
641 (JavaInstance::invokeMethod):
642 * bridge/jni/jsc/JavaStringJSC.h:
643 (JSC::Bindings::JavaStringImpl::impl):
644 * bridge/jni/v8/JavaStringV8.h:
645 (JSC::Bindings::JavaStringImpl::impl):
647 2011-03-03 Benjamin Poulain <ikipou@gmail.com>
649 Reviewed by Adam Roben.
651 REGRESSION (r79817): Lots of leaks of FloatingObjects seen on SnowLeopard Intel Leaks bot
652 https://bugs.webkit.org/show_bug.cgi?id=55602
654 Delete the FloatingObject referenced by m_floatingObjects when clearing the floats.
656 The DeprecatedPtrList was deleting the objects automatically due to its autoDelete behavior. The
657 objects need to be deleted manually with ListHashSet.
659 * rendering/RenderBlock.cpp:
660 (WebCore::RenderBlock::clearFloats):
662 2011-03-03 Hans Wennborg <hans@chromium.org>
664 Reviewed by Jeremy Orlow.
666 IndexedDB: Move SQL code, especially for cursors, to IDBBackingStore
667 https://bugs.webkit.org/show_bug.cgi?id=55376
669 Move SQL code from IDBKey, IDBKeyRange, IDBIndexBackendImpl,
670 IDBObjectStoreBackendImpl, and especially IDBCursorBackendImpl.
672 No new functionality, so no new tests.
674 * storage/IDBBackingStore.cpp:
675 (WebCore::lowerCursorWhereFragment):
676 (WebCore::upperCursorWhereFragment):
677 (WebCore::IDBBackingStore::deleteObjectStoreRecord):
678 (WebCore::IDBBackingStore::keyExistsInObjectStore):
679 (WebCore::IDBBackingStore::getObjectViaIndex):
680 (WebCore::keyFromQuery):
681 (WebCore::IDBBackingStore::getPrimaryKeyViaIndex):
682 (WebCore::IDBBackingStore::keyExistsInIndex):
683 (WebCore::CursorImplCommon::CursorImplCommon::continueInternal):
684 (WebCore::CursorImplCommon::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
685 (WebCore::CursorImplCommon::ObjectStoreCursorImpl::objectStoreDataId):
686 (WebCore::CursorImplCommon::ObjectStoreCursorImpl::key):
687 (WebCore::CursorImplCommon::ObjectStoreCursorImpl::value):
688 (WebCore::CursorImplCommon::ObjectStoreCursorImpl::continueFunction):
689 (WebCore::IDBBackingStore::openObjectStoreCursor):
690 (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
691 (WebCore::ObjectStoreCursorImpl::currentRowExists):
692 (WebCore::IndexKeyCursorImpl::IndexKeyCursorImpl):
693 (WebCore::IndexKeyCursorImpl::indexDataId):
694 (WebCore::IndexKeyCursorImpl::key):
695 (WebCore::IndexKeyCursorImpl::primaryKey):
696 (WebCore::IndexKeyCursorImpl::continueFunction):
697 (WebCore::IDBBackingStore::openIndexKeyCursor):
698 (WebCore::IndexKeyCursorImpl::loadCurrentRow):
699 (WebCore::IndexKeyCursorImpl::currentRowExists):
700 (WebCore::IndexCursorImpl::IndexCursorImpl):
701 (WebCore::IndexCursorImpl::indexDataId):
702 (WebCore::IndexCursorImpl::key):
703 (WebCore::IndexCursorImpl::primaryKey):
704 (WebCore::IndexCursorImpl::value):
705 (WebCore::IndexCursorImpl::continueFunction):
706 (WebCore::IDBBackingStore::openIndexCursor):
707 (WebCore::IndexCursorImpl::loadCurrentRow):
708 (WebCore::IndexCursorImpl::currentRowExists):
709 * storage/IDBBackingStore.h:
710 (WebCore::IDBBackingStore::Cursor::~Cursor):
711 * storage/IDBCursorBackendImpl.cpp:
712 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
713 (WebCore::IDBCursorBackendImpl::key):
714 (WebCore::IDBCursorBackendImpl::value):
715 (WebCore::IDBCursorBackendImpl::update):
716 (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
717 (WebCore::IDBCursorBackendImpl::deleteFunction):
718 * storage/IDBCursorBackendImpl.h:
719 (WebCore::IDBCursorBackendImpl::create):
720 * storage/IDBIndexBackendImpl.cpp:
721 (WebCore::IDBIndexBackendImpl::openCursorInternal):
722 (WebCore::IDBIndexBackendImpl::getInternal):
723 (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
724 * storage/IDBIndexBackendImpl.h:
725 * storage/IDBKey.cpp:
726 (WebCore::IDBKey::isEqual):
728 * storage/IDBKeyRange.cpp:
729 * storage/IDBKeyRange.h:
730 * storage/IDBObjectStoreBackendImpl.cpp:
731 (WebCore::IDBObjectStoreBackendImpl::putInternal):
732 (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
733 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
734 * storage/IDBObjectStoreBackendImpl.h:
736 2011-03-03 Peter Kasting <pkasting@google.com>
738 Reviewed by James Robinson.
740 Drop redundant "Windows; " from the Windows-specific User Agent string.
741 https://bugs.webkit.org/show_bug.cgi?id=54567
743 * StringsNotToBeLocalized.txt:
745 2011-03-03 Mario Sanchez Prada <msanchez@igalia.com>
747 Reviewed by Martin Robinson.
749 [GTK] Combo boxes should emit object:selection-changed even when collapsed
750 https://bugs.webkit.org/show_bug.cgi?id=53146
752 Emit the selection-changed signals when the menu list value has changed
754 Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html
756 * accessibility/gtk/AXObjectCacheAtk.cpp:
757 (WebCore::getListObject): New, return the right list object for
758 menu lists and list boxes.
759 (WebCore::notifyChildrenSelectionChange): Support menu lists.
760 (WebCore::AXObjectCache::postPlatformNotification): Call function
761 notifyChildrenSelectionChange for AXMenuListValueChanged.
763 2011-03-03 Ryosuke Niwa <rniwa@webkit.org>
765 Reviewed by Tony Chang.
767 applyInlineStyleToPushDown and removeInlineStyleFromElement should take EditingStyle
768 https://bugs.webkit.org/show_bug.cgi?id=55338
770 Include wtf/Forward.h instead of wtf/text/String.h
772 * editing/EditingStyle.h:
774 2011-03-03 Csaba Osztrogonác <ossy@webkit.org>
776 Unreviewed trivial fix after r80169.
778 [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
779 https://bugs.webkit.org/show_bug.cgi?id=55484
781 * WebCore.pro: Typo fix. We have to use linux-g++* instead of linux-g++.
784 2011-03-02 MORITA Hajime <morrita@google.com>
786 Reviewed by Kent Tamura.
788 [Refactoring] Make ScheduledEvent on FrameView abstract out to ScheduleAction
789 https://bugs.webkit.org/show_bug.cgi?id=54440
791 - Extracted FrameActionScheduler from FrameView
792 - Extracted FrameAction abstract class from ScheduledEvent,
793 which has fire() virtual method.
794 - Renamed ScheduledEvent EventFrameAction
796 With this change, Any action can be hooked up to the end of the layout.
798 No new tests. No behavioral change.
805 * WebCore.vcproj/WebCore.vcproj:
806 * WebCore.xcodeproj/project.pbxproj:
807 * page/FrameActionScheduler.cpp: Added.
808 (WebCore::EventFrameAction::EventFrameAction):
809 (WebCore::EventFrameAction::fire):
810 (WebCore::FrameActionScheduler::FrameActionScheduler):
811 (WebCore::FrameActionScheduler::~FrameActionScheduler):
812 (WebCore::FrameActionScheduler::isEmpty):
813 (WebCore::FrameActionScheduler::clear):
814 (WebCore::FrameActionScheduler::pause):
815 (WebCore::FrameActionScheduler::resume):
816 (WebCore::FrameActionScheduler::dispatch):
817 (WebCore::FrameActionScheduler::scheduleAction):
818 (WebCore::FrameActionScheduler::scheduleEvent):
819 * page/FrameActionScheduler.h: Added.
820 (WebCore::FrameAction::FrameAction):
821 (WebCore::FrameAction::~FrameAction):
822 (WebCore::FrameActionScheduler::isScheduled):
823 * page/FrameView.cpp:
824 (WebCore::FrameView::FrameView):
825 (WebCore::FrameView::~FrameView):
826 (WebCore::FrameView::layout):
827 (WebCore::FrameView::scheduleEvent):
828 (WebCore::FrameView::pauseScheduledEvents):
829 (WebCore::FrameView::resumeScheduledEvents):
830 (WebCore::FrameView::performPostLayoutTasks):
831 (WebCore::FrameView::updateOverflowStatus):
834 2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
836 Unreviewed, rolling out r80201.
837 http://trac.webkit.org/changeset/80201
838 https://bugs.webkit.org/show_bug.cgi?id=55648
840 "caused tests to crash on several bots" (Requested by rniwa on
844 (WebCore::Node::hasTagName):
846 * html/parser/HTMLConstructionSite.cpp:
847 (WebCore::HTMLNames::hasImpliedEndTag):
848 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
849 (WebCore::HTMLConstructionSite::insertComment):
850 (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
851 (WebCore::HTMLConstructionSite::attachToCurrent):
852 (WebCore::HTMLConstructionSite::insertScriptElement):
853 (WebCore::HTMLConstructionSite::insertTextNode):
854 (WebCore::HTMLConstructionSite::createElement):
855 (WebCore::HTMLConstructionSite::createHTMLElement):
856 (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
857 (WebCore::HTMLConstructionSite::generateImpliedEndTags):
858 (WebCore::HTMLConstructionSite::findFosterSite):
859 (WebCore::HTMLConstructionSite::shouldFosterParent):
860 * html/parser/HTMLConstructionSite.h:
861 * html/parser/HTMLElementStack.cpp:
862 (WebCore::HTMLNames::isNumberedHeaderElement):
863 (WebCore::HTMLNames::isScopeMarker):
864 (WebCore::HTMLNames::isListItemScopeMarker):
865 (WebCore::HTMLNames::isTableScopeMarker):
866 (WebCore::HTMLNames::isTableBodyScopeMarker):
867 (WebCore::HTMLNames::isTableRowScopeMarker):
868 (WebCore::HTMLNames::isButtonScopeMarker):
869 (WebCore::HTMLNames::isSelectScopeMarker):
870 (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
871 (WebCore::HTMLElementStack::ElementRecord::replaceElement):
872 (WebCore::HTMLElementStack::HTMLElementStack):
873 (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
874 (WebCore::HTMLElementStack::popAll):
875 (WebCore::HTMLElementStack::popUntilTableScopeMarker):
876 (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
877 (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
878 (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
879 (WebCore::HTMLElementStack::pushHTMLHtmlElement):
880 (WebCore::HTMLElementStack::push):
881 (WebCore::HTMLElementStack::insertAbove):
882 (WebCore::HTMLElementStack::find):
883 (WebCore::HTMLElementStack::topmost):
884 (WebCore::inScopeCommon):
885 (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
886 (WebCore::HTMLElementStack::htmlElement):
887 (WebCore::HTMLElementStack::bodyElement):
888 (WebCore::HTMLElementStack::pushCommon):
889 * html/parser/HTMLElementStack.h:
890 (WebCore::HTMLElementStack::ElementRecord::element):
891 (WebCore::HTMLElementStack::top):
892 * html/parser/HTMLTreeBuilder.cpp:
893 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
894 (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished):
895 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
896 (WebCore::HTMLTreeBuilder::processStartTagForInBody):
897 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
898 (WebCore::HTMLTreeBuilder::processStartTag):
899 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
900 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
901 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
902 (WebCore::HTMLTreeBuilder::processEndTagForInCell):
903 (WebCore::HTMLTreeBuilder::processEndTagForInBody):
904 (WebCore::HTMLTreeBuilder::processEndTag):
905 (WebCore::HTMLTreeBuilder::processEndOfFile):
906 (WebCore::HTMLTreeBuilder::finished):
907 * html/parser/HTMLTreeBuilder.h:
909 2011-03-02 Yury Semikhatsky <yurys@chromium.org>
911 Reviewed by Pavel Feldman.
913 Web Inspector: break down InspectorFrontend into domain-specific classes
914 https://bugs.webkit.org/show_bug.cgi?id=55584
916 * inspector/CodeGeneratorInspector.pm: InspectorFrontend now contains nested classes for
917 all domains that have event notifications.
918 * inspector/ConsoleMessage.cpp:
919 (WebCore::ConsoleMessage::addToFrontend):
920 (WebCore::ConsoleMessage::updateRepeatCountInConsole):
921 * inspector/ConsoleMessage.h:
922 * inspector/InjectedScriptHost.cpp:
923 (WebCore::InjectedScriptHost::inspectImpl):
924 * inspector/Inspector.idl:
925 * inspector/InspectorAgent.cpp:
926 (WebCore::InspectorAgent::inspectedPageDestroyed):
927 (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
928 (WebCore::InspectorAgent::setFrontend):
929 (WebCore::InspectorAgent::disconnectFrontend):
930 (WebCore::InspectorAgent::populateScriptObjects):
931 (WebCore::InspectorAgent::pushDataCollectedOffline):
932 (WebCore::InspectorAgent::didCommitLoad):
933 (WebCore::InspectorAgent::domContentLoadedEventFired):
934 (WebCore::InspectorAgent::loadEventFired):
935 (WebCore::InspectorAgent::postWorkerNotificationToFrontend):
936 (WebCore::InspectorAgent::evaluateForTestInFrontend):
937 (WebCore::InspectorAgent::showPanel):
938 * inspector/InspectorApplicationCacheAgent.cpp:
939 (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
940 * inspector/InspectorApplicationCacheAgent.h:
941 * inspector/InspectorConsoleAgent.cpp:
942 (WebCore::InspectorConsoleAgent::setFrontend):
943 * inspector/InspectorConsoleAgent.h:
944 * inspector/InspectorController.cpp:
945 (WebCore::InspectorController::show):
946 (WebCore::InspectorController::close):
947 * inspector/InspectorDOMAgent.cpp:
948 (WebCore::InspectorDOMAgent::setFrontend):
949 * inspector/InspectorDOMAgent.h:
950 * inspector/InspectorDOMStorageResource.cpp:
951 (WebCore::InspectorDOMStorageResource::bind):
952 * inspector/InspectorDOMStorageResource.h:
953 * inspector/InspectorDatabaseAgent.cpp:
954 (WebCore::InspectorDatabaseAgent::FrontendProvider::frontend):
955 (WebCore::InspectorDatabaseAgent::FrontendProvider::FrontendProvider):
956 (WebCore::InspectorDatabaseAgent::setFrontend):
957 * inspector/InspectorDatabaseResource.cpp:
958 (WebCore::InspectorDatabaseResource::bind):
959 * inspector/InspectorDatabaseResource.h:
960 * inspector/InspectorDebuggerAgent.cpp:
961 (WebCore::InspectorDebuggerAgent::setFrontend):
962 * inspector/InspectorDebuggerAgent.h:
963 * inspector/InspectorProfilerAgent.cpp:
964 * inspector/InspectorProfilerAgent.h:
965 (WebCore::InspectorProfilerAgent::setFrontend):
966 (WebCore::InspectorProfilerAgent::clearFrontend):
967 * inspector/InspectorResourceAgent.cpp:
968 (WebCore::InspectorResourceAgent::InspectorResourceAgent):
969 * inspector/InspectorResourceAgent.h:
970 * inspector/InspectorTimelineAgent.cpp:
971 (WebCore::InspectorTimelineAgent::setFrontend):
972 * inspector/InspectorTimelineAgent.h:
973 * inspector/front-end/DOMAgent.js:
974 (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
975 (WebInspector.DOMDispatcher.prototype.addNodesToSearchResult):
976 * inspector/front-end/inspector.js:
978 2011-03-02 Kent Tamura <tkent@chromium.org>
980 Unreviewed, a trivial regression fix.
982 Fix LocalizedNumberICU regression by r80198 and r80199.
983 https://bugs.webkit.org/show_bug.cgi?id=55629
985 * platform/text/LocalizedNumberICU.cpp:
986 We should use U_SUCCESS().
987 (WebCore::createFormatterForCurrentLocale):
988 (WebCore::parseLocalizedNumber):
990 2011-03-02 Dan Bernstein <mitz@apple.com>
992 Let Xcode know that Localizable.strings is UTF-16-encoded.
994 * WebCore.xcodeproj/project.pbxproj:
996 2011-03-02 Andy Estes <aestes@apple.com>
998 Reviewed by Eric Seidel.
1000 HTML5 TreeBuilder regressed a Peacekeeper DOM test by 25% (was 40%)
1001 https://bugs.webkit.org/show_bug.cgi?id=48719
1003 Instead of pushing a fake HTMLHtmlElement onto the open element stack
1004 during fragment parsing only to later remove it and reparent its
1005 children to the DocumentFragment, push the DocumentFragment directly
1006 onto the open element stack as the root node. This requires refactoring
1007 HTMLElementStack to hold ContainerNode pointers rather than Element
1008 pointers, which has implications for HTMLConstructionSite and
1009 HTMLTreeBuilder as well.
1011 With this patch, the regression in Peacekeeper due to the introduction
1012 of the HTML5 fragment parsing algorithm is ~14%. The regression from
1013 Safari 5.0.3 is ~24%.
1015 No new tests. No change in behavior.
1018 (WebCore::Node::hasLocalName):
1020 * html/parser/HTMLConstructionSite.cpp:
1021 (WebCore::HTMLNames::hasImpliedEndTag):
1022 (WebCore::HTMLConstructionSite::HTMLConstructionSite):
1023 (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
1024 (WebCore::HTMLConstructionSite::insertComment):
1025 (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
1026 (WebCore::HTMLConstructionSite::attachToCurrent):
1027 (WebCore::HTMLConstructionSite::insertScriptElement):
1028 (WebCore::HTMLConstructionSite::insertTextNode):
1029 (WebCore::HTMLConstructionSite::createElement):
1030 (WebCore::HTMLConstructionSite::createHTMLElement):
1031 (WebCore::HTMLConstructionSite::generateImpliedEndTagsWithExclusion):
1032 (WebCore::HTMLConstructionSite::generateImpliedEndTags):
1033 (WebCore::HTMLConstructionSite::findFosterSite):
1034 (WebCore::HTMLConstructionSite::shouldFosterParent):
1035 * html/parser/HTMLConstructionSite.h:
1036 (WebCore::HTMLConstructionSite::currentNode):
1037 * html/parser/HTMLElementStack.cpp:
1038 (WebCore::HTMLNames::isNumberedHeaderElement):
1039 (WebCore::HTMLNames::isScopeMarker):
1040 (WebCore::HTMLNames::isListItemScopeMarker):
1041 (WebCore::HTMLNames::isTableScopeMarker):
1042 (WebCore::HTMLNames::isTableBodyScopeMarker):
1043 (WebCore::HTMLNames::isTableRowScopeMarker):
1044 (WebCore::HTMLNames::isButtonScopeMarker):
1045 (WebCore::HTMLNames::isSelectScopeMarker):
1046 (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
1047 (WebCore::HTMLElementStack::ElementRecord::replaceElement):
1048 (WebCore::HTMLElementStack::HTMLElementStack):
1049 (WebCore::HTMLElementStack::secondElementIsHTMLBodyElement):
1050 (WebCore::HTMLElementStack::popAll):
1051 (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped):
1052 (WebCore::HTMLElementStack::popUntil):
1053 (WebCore::HTMLElementStack::popUntilPopped):
1054 (WebCore::HTMLElementStack::popUntilTableScopeMarker):
1055 (WebCore::HTMLElementStack::popUntilTableBodyScopeMarker):
1056 (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
1057 (WebCore::HTMLElementStack::pushHTMLHtmlElement):
1058 (WebCore::HTMLElementStack::push):
1059 (WebCore::HTMLElementStack::insertAbove):
1060 (WebCore::HTMLElementStack::find):
1061 (WebCore::HTMLElementStack::topmost):
1062 (WebCore::HTMLElementStack::contains):
1063 (WebCore::inScopeCommon):
1064 (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
1065 (WebCore::HTMLElementStack::htmlElement):
1066 (WebCore::HTMLElementStack::rootNode):
1067 (WebCore::HTMLElementStack::pushCommon):
1068 * html/parser/HTMLElementStack.h:
1069 (WebCore::HTMLElementStack::ElementRecord::element):
1070 (WebCore::HTMLElementStack::ElementRecord::node):
1071 (WebCore::HTMLElementStack::topNode):
1072 * html/parser/HTMLTreeBuilder.cpp:
1073 (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1074 (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
1075 (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1076 (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
1077 (WebCore::HTMLTreeBuilder::processStartTag):
1078 (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
1079 (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1080 (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
1081 (WebCore::HTMLTreeBuilder::processEndTagForInCell):
1082 (WebCore::HTMLTreeBuilder::processEndTagForInBody):
1083 (WebCore::HTMLTreeBuilder::processEndTag):
1084 (WebCore::HTMLTreeBuilder::processEndOfFile):
1085 (WebCore::HTMLTreeBuilder::finished):
1086 * html/parser/HTMLTreeBuilder.h:
1088 2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
1090 Unreviewed, rolling out r80188.
1091 http://trac.webkit.org/changeset/80188
1092 https://bugs.webkit.org/show_bug.cgi?id=55647
1094 Broke the WebKit API tests. (Requested by xenon on #webkit).
1098 2011-03-02 Kent Tamura <tkent@chromium.org>
1100 Unreviewed, build fix.
1102 * platform/text/LocalizedNumberICU.cpp:
1103 (WebCore::createFormatterForCurrentLocale): Fix a typo.
1105 2011-03-02 Kent Tamura <tkent@chromium.org>
1107 Reviewed by Darin Adler.
1109 Caching number formatter instances in LocalizedNumber* implementations
1110 https://bugs.webkit.org/show_bug.cgi?id=55629
1112 No new tests. This change doesn't change existing behavior, and is
1113 covered by existing tests.
1115 * platform/text/LocalizedNumberICU.cpp:
1116 (WebCore::createFormatterForCurrentLocale):
1117 (WebCore::numberFormatter): Introduce a function to return a static
1118 instance of NumberFormat.
1119 (WebCore::parseLocalizedNumber): Use numberFormatter().
1120 (WebCore::formatLocalizedNumber): Use numberFormatter().
1121 * platform/text/mac/LocalizedNumberMac.mm:
1122 (WebCore::createFormatterForCurrentLocale):
1123 (WebCore::numberFormatter): Introduce a function to return a static
1124 instance of NSNumberFormatter.
1125 (WebCore::parseLocalizedNumber): Use numberFormatter().
1126 (WebCore::formatLocalizedNumber): Use numberFormatter().
1128 2011-03-02 Levi Weintraub <leviw@chromium.org>
1130 Reviewed by Ryosuke Niwa.
1132 deprecatedEditingOffset should actually return the expected deprecated value for "after" positions
1133 https://bugs.webkit.org/show_bug.cgi?id=54986
1135 Calls to deprecatedEditingOffset needs to return the expected value for new Before/After positions
1136 until we can update all the call sites to consider the new position types.
1138 No tests. This is intended to simplify the transition to new Positions, not to change behavior.
1141 (WebCore::Position::deprecatedEditingOffset):
1142 (WebCore::Position::offsetForPositionAfterAnchor): Added to do the right thing while ensuring
1143 inline-speed for most calls to deprecatedEditingOffset.
1146 2011-03-02 Timothy Hatcher <timothy@apple.com>
1148 Export SerializedScriptValue::create(JSC::ExecState* exec, JSC::JSValue value).
1150 Reviewed by Darin Adler.
1152 * WebCore.exp.in: Added __ZN7WebCore21SerializedScriptValue6createEPN3JSC9ExecStateENS1_7JSValueE.
1154 2011-03-02 Daniel Cheng <dcheng@chromium.org>
1156 Reviewed by David Levin.
1158 Manually revert ChromiumDataObject changes.
1159 https://bugs.webkit.org/show_bug.cgi?id=55627
1161 No new tests since no functionality should change.
1164 * editing/chromium/EditorChromium.cpp:
1165 (WebCore::Editor::newGeneralClipboard):
1166 * page/chromium/EventHandlerChromium.cpp:
1167 (WebCore::EventHandler::createDraggingClipboard):
1168 * platform/chromium/ChromiumDataObject.cpp:
1169 (WebCore::ChromiumDataObject::clearData):
1170 (WebCore::ChromiumDataObject::clearAll):
1171 (WebCore::ChromiumDataObject::clearAllExceptFiles):
1172 (WebCore::ChromiumDataObject::hasData):
1173 (WebCore::ChromiumDataObject::types):
1174 (WebCore::ChromiumDataObject::getData):
1175 (WebCore::ChromiumDataObject::setData):
1176 (WebCore::ChromiumDataObject::ChromiumDataObject):
1177 * platform/chromium/ChromiumDataObject.h:
1178 (WebCore::ChromiumDataObject::create):
1179 (WebCore::ChromiumDataObject::copy):
1180 (WebCore::ChromiumDataObject::urlTitle):
1181 (WebCore::ChromiumDataObject::setUrlTitle):
1182 (WebCore::ChromiumDataObject::htmlBaseUrl):
1183 (WebCore::ChromiumDataObject::setHtmlBaseUrl):
1184 (WebCore::ChromiumDataObject::containsFilenames):
1185 (WebCore::ChromiumDataObject::filenames):
1186 (WebCore::ChromiumDataObject::setFilenames):
1187 (WebCore::ChromiumDataObject::fileExtension):
1188 (WebCore::ChromiumDataObject::setFileExtension):
1189 (WebCore::ChromiumDataObject::fileContentFilename):
1190 (WebCore::ChromiumDataObject::setFileContentFilename):
1191 (WebCore::ChromiumDataObject::fileContent):
1192 (WebCore::ChromiumDataObject::setFileContent):
1193 * platform/chromium/ClipboardChromium.cpp:
1194 * platform/chromium/ClipboardChromium.h:
1196 2011-03-02 David Grogan <dgrogan@chromium.org>
1198 Reviewed by Jeremy Orlow.
1200 IndexedDB: fire versionchange events when calling setVersion
1201 https://bugs.webkit.org/show_bug.cgi?id=55095
1204 * storage/IDBDatabase.cpp:
1205 (WebCore::IDBDatabase::setVersion):
1206 (WebCore::IDBDatabase::close):
1207 (WebCore::IDBDatabase::onVersionChange):
1208 (WebCore::IDBDatabase::open):
1209 (WebCore::IDBDatabase::enqueueEvent):
1210 (WebCore::IDBDatabase::dispatchEvent):
1211 * storage/IDBDatabase.h:
1212 (WebCore::IDBDatabase::dispatchEvent):
1213 * storage/IDBDatabase.idl:
1214 * storage/IDBDatabaseBackendImpl.cpp:
1215 (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::create):
1216 (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::databaseCallbacks):
1217 (WebCore::IDBDatabaseBackendImpl::PendingSetVersionCall::PendingSetVersionCall):
1218 (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
1219 (WebCore::IDBDatabaseBackendImpl::setVersion):
1220 (WebCore::IDBDatabaseBackendImpl::open):
1221 (WebCore::IDBDatabaseBackendImpl::close):
1222 * storage/IDBDatabaseBackendImpl.h:
1223 * storage/IDBDatabaseBackendInterface.h:
1224 * storage/IDBDatabaseCallbacks.h: Copied from Source/WebCore/storage/IDBVersionChangeEvent.cpp.
1225 (WebCore::IDBDatabaseCallbacks::~IDBDatabaseCallbacks):
1226 * storage/IDBFactoryBackendImpl.cpp:
1227 (WebCore::IDBFactoryBackendImpl::open):
1228 * storage/IDBRequest.cpp:
1229 (WebCore::IDBRequest::onSuccess):
1230 * storage/IDBVersionChangeEvent.cpp:
1231 (WebCore::IDBVersionChangeEvent::create):
1232 (WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
1233 * storage/IDBVersionChangeEvent.h:
1234 * storage/IDBVersionChangeRequest.cpp:
1235 (WebCore::IDBVersionChangeRequest::onBlocked):
1237 2011-03-02 Alexey Proskuryakov <ap@apple.com>
1239 Fix assertion failures on Gtk bot.
1241 * page/EventHandler.cpp: (WebCore::EventHandler::tabsToLinks): Removed an overzealous
1242 assertion. We can get here with non-Tab key events when spatial navigation is enabled.
1244 2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
1246 Unreviewed, rolling out r80139.
1247 http://trac.webkit.org/changeset/80139
1248 https://bugs.webkit.org/show_bug.cgi?id=55620
1250 failing and crashing tests on Snow Leopard bot (Requested by
1251 mihaip1 on #webkit).
1253 * page/DOMWindow.cpp:
1256 (WebCore::Frame::pageDestroyed):
1257 (WebCore::Frame::transferChildFrameToNewDocument):
1259 (WebCore::Frame::detachFromPage):
1260 * page/Geolocation.cpp:
1261 (WebCore::Geolocation::~Geolocation):
1262 (WebCore::Geolocation::disconnectFrame):
1263 (WebCore::Geolocation::lastPosition):
1264 (WebCore::Geolocation::requestPermission):
1265 (WebCore::Geolocation::startUpdating):
1266 (WebCore::Geolocation::stopUpdating):
1267 * page/Geolocation.h:
1268 * page/GeolocationController.cpp:
1269 (WebCore::GeolocationController::~GeolocationController):
1270 * page/Navigator.cpp:
1272 * platform/mock/GeolocationClientMock.cpp:
1273 * platform/mock/GeolocationClientMock.h:
1275 2011-03-02 Jessie Berlin <jberlin@apple.com>
1277 Reviewed by Adam Roben.
1279 WebKit2: Use CFNetwork Sessions API.
1280 https://bugs.webkit.org/show_bug.cgi?id=55435
1282 Add the ability to create a Private Browsing Storage Session.
1285 Export the symbol for ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase.
1287 * page/Settings.cpp:
1288 (WebCore::Settings::setPrivateBrowsingEnabled):
1289 Propagate the private browsing state to the ResourceHandle.
1291 * platform/mac/WebCoreSystemInterface.h:
1292 Add the function declaration for wkCreatePrivateStorageSession.
1293 * platform/mac/WebCoreSystemInterface.mm:
1295 * platform/network/ResourceHandle.cpp:
1296 (WebCore::privateStorageSession):
1297 Since the same Private Browsing Storage Session will need to be accessed throughout the loading
1298 code and will need to be used by all web pages and page groups, make it a global static.
1299 (WebCore::privateBrowsingStorageSessionIdentifierBase):
1300 Ditto, since the identifier is needed to create the Private Browsing Storage Session.
1301 (WebCore::ResourceHandle::setPrivateBrowsingEnabled):
1302 If enabled, create and store the Private Browsing Storage Session.
1303 (WebCore::ResourceHandle::privateBrowsingStorageSession):
1304 (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase):
1305 * platform/network/ResourceHandle.h:
1307 * platform/network/cf/ResourceHandleCFNet.cpp:
1308 (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
1309 The call to wkCreatePrivateStorageSession needs to be in a file including the correct
1311 (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
1312 Return the bundle identifier.
1313 * platform/network/mac/ResourceHandleMac.mm:
1314 (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
1315 The call to wkCreatePrivateStorageSession needs to be in a file importing the correct
1317 (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
1318 Return the bundle identifier.
1320 2011-03-02 Daniel Cheng <dcheng@chromium.org>
1322 Revert frame-specific WebClipboard changes
1323 https://bugs.webkit.org/show_bug.cgi?id=55617
1325 This code is no longer needed since we've decided to use the original
1326 approach to copy/paste drag/drop handling in ClipboardChromium.
1328 No new tests because no functionality changes.
1330 * platform/chromium/ChromiumDataObject.cpp:
1331 (WebCore::ChromiumDataObject::createReadable):
1332 * platform/chromium/ChromiumDataObject.h:
1333 * platform/chromium/ClipboardChromium.cpp:
1334 (WebCore::ClipboardChromium::create):
1335 * platform/chromium/PlatformBridge.h:
1336 * platform/chromium/ReadableDataObject.cpp:
1337 (WebCore::ReadableDataObject::create):
1338 (WebCore::ReadableDataObject::ReadableDataObject):
1339 (WebCore::ReadableDataObject::getData):
1340 (WebCore::ReadableDataObject::urlTitle):
1341 (WebCore::ReadableDataObject::htmlBaseUrl):
1342 (WebCore::ReadableDataObject::filenames):
1343 (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
1344 * platform/chromium/ReadableDataObject.h:
1346 2011-03-02 Tony Chang <tony@chromium.org>
1348 Unreviewed, rolling chromium DEPS to r76362.
1350 https://bugs.webkit.org/show_bug.cgi?id=55564
1352 * WebCore.gyp/WebCore.gyp: Switch to libjpeg_turbo to match chromium
1354 2011-03-02 Alexey Proskuryakov <ap@apple.com>
1358 * page/ChromeClient.h: (WebCore::ChromeClient::keyboardUIMode): I didn't mean to commit these
1361 2011-03-02 Alexey Proskuryakov <ap@apple.com>
1363 Reviewed by John Sullivan.
1365 Clean up WebCore tabsToLinks code a little
1366 https://bugs.webkit.org/show_bug.cgi?id=55606
1368 No change in behavior, so no tests.
1370 * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::isKeyboardFocusable):
1371 This is the only caller of tabsToAllControls(). Renamed this function to tabsToAllFormControls().
1373 * page/EventHandler.cpp:
1374 (WebCore::EventHandler::isKeyboardOptionTab): Moved from platform specific files. This
1375 function cannot be file static, because EventHandlerMac.mm uses it.
1376 (WebCore::eventInvertsTabsToLinksClientCallResult): Merged implementations from platform
1377 specific files. We can just as well have #if here. Renamed for clarity.
1378 (WebCore::EventHandler::tabsToLinks): Rewrote in a way that makes it clearer how "invert"
1381 * page/EventHandler.h: We no longer need invertSenseOfTabsToLinks() here, it's only used
1382 in EventHandler.cpp.
1384 * page/android/EventHandlerAndroid.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1385 * page/brew/EventHandlerBrew.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1386 * page/chromium/EventHandlerChromium.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1387 * page/efl/EventHandlerEfl.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1388 * page/gtk/EventHandlerGtk.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1389 * page/haiku/EventHandlerHaiku.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1390 * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::tabsToAllFormControls):
1391 * page/qt/EventHandlerQt.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1392 * page/win/EventHandlerWin.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1393 * page/wx/EventHandlerWx.cpp: (WebCore::EventHandler::tabsToAllFormControls):
1394 Updating all port files.
1396 2011-02-28 Jeremy Orlow <jorlow@chromium.org>
1398 Reviewed by James Robinson.
1400 Split IDBCursor.value into IDBCursor.primaryKey and IDBCursor.value
1401 https://bugs.webkit.org/show_bug.cgi?id=55443
1403 Implement http://www.w3.org/Bugs/Public/show_bug.cgi?id=11948
1405 The idea is to have an IDBCursor and an IDBCursorWithValue interface which
1406 inherits from the former. index.openKeyCursor will return the former and
1407 index/objectStore.openCursor will return the latter. We'll add a primaryKey
1408 attribute to IDBCursor. It will always be the key of the associated object
1409 store entry. For index.openCursor cursors, the key attribute will be the key
1410 of the index. For objectStore.openCursors, it'll be the same as the
1411 primaryKey. The value will be the value of the objectStore entry.
1414 * bindings/scripts/CodeGeneratorV8.pm:
1415 * bindings/v8/SerializedScriptValue.cpp:
1416 (WebCore::SerializedScriptValue::deserializeAndSetProperty):
1417 * bindings/v8/SerializedScriptValue.h:
1418 * bindings/v8/custom/V8IDBAnyCustom.cpp:
1420 * storage/IDBAny.cpp:
1421 (WebCore::IDBAny::idbCursorWithValue):
1422 (WebCore::IDBAny::set):
1424 * storage/IDBCursor.cpp:
1425 (WebCore::IDBCursor::create):
1426 (WebCore::IDBCursor::primaryKey):
1427 (WebCore::IDBCursor::value):
1428 * storage/IDBCursor.h:
1429 * storage/IDBCursor.idl:
1430 * storage/IDBCursorBackendImpl.cpp:
1431 (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
1432 (WebCore::IDBCursorBackendImpl::primaryKey):
1433 (WebCore::IDBCursorBackendImpl::value):
1434 (WebCore::IDBCursorBackendImpl::update):
1435 (WebCore::IDBCursorBackendImpl::currentRowExists):
1436 (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
1437 (WebCore::IDBCursorBackendImpl::deleteFunction):
1438 (WebCore::IDBCursorBackendImpl::loadCurrentRow):
1439 * storage/IDBCursorBackendImpl.h:
1440 (WebCore::IDBCursorBackendImpl::create):
1441 * storage/IDBCursorBackendInterface.h:
1442 * storage/IDBCursorWithValue.cpp: Copied from Source/WebCore/storage/IDBCursor.idl.
1443 (WebCore::IDBCursorWithValue::create):
1444 (WebCore::IDBCursorWithValue::IDBCursorWithValue):
1445 (WebCore::IDBCursorWithValue::~IDBCursorWithValue):
1446 * storage/IDBCursorWithValue.h: Copied from Source/WebCore/storage/IDBCursorBackendInterface.h.
1447 * storage/IDBCursorWithValue.idl: Copied from Source/WebCore/storage/IDBCursor.idl.
1448 * storage/IDBIndex.cpp:
1449 (WebCore::IDBIndex::openCursor):
1450 (WebCore::IDBIndex::openKeyCursor):
1451 * storage/IDBIndexBackendImpl.cpp:
1452 (WebCore::IDBIndexBackendImpl::openCursorInternal):
1453 (WebCore::IDBIndexBackendImpl::openCursor):
1454 (WebCore::IDBIndexBackendImpl::openKeyCursor):
1455 * storage/IDBIndexBackendImpl.h:
1456 * storage/IDBObjectStore.cpp:
1457 (WebCore::IDBObjectStore::openCursor):
1458 * storage/IDBObjectStoreBackendImpl.cpp:
1459 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
1460 * storage/IDBRequest.cpp:
1461 (WebCore::IDBRequest::IDBRequest):
1462 (WebCore::IDBRequest::setCursorType):
1463 (WebCore::IDBRequest::onSuccess):
1464 (WebCore::IDBRequest::dispatchEvent):
1465 * storage/IDBRequest.h:
1467 2011-03-02 Aravind Akella <aravind.akella@nokia.com>
1469 Reviewed by Csaba Osztrogonác.
1471 [Qt][WK2] Memory exhausted when building qtwebkit2 on linux
1472 https://bugs.webkit.org/show_bug.cgi?id=55484
1474 Using AllInOne files to avoid memory exhaustion for debug
1475 builds on 32 bit linux machines.
1477 No new tests. Fixing a build issue.
1481 2011-03-02 Daniel Cheng <dcheng@chromium.org>
1483 Reviewed by David Levin.
1485 Add feature define for data transfer items
1486 https://bugs.webkit.org/show_bug.cgi?id=55510
1488 * Configurations/FeatureDefines.xcconfig:
1492 2011-03-02 Dimitri Glazkov <dglazkov@chromium.org>
1494 Update location of media-file.js, which was moved in r79630.
1496 * manual-tests/media-controls.html: Updated location.
1498 2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com>
1500 Unreviewed, rolling out r80156.
1501 http://trac.webkit.org/changeset/80156
1502 https://bugs.webkit.org/show_bug.cgi?id=55604
1504 "Broke SL compile" (Requested by tonyg-cr on #webkit).
1506 * bridge/jni/JNIBridge.h:
1507 (JSC::Bindings::JavaString::operator UString):
1508 * bridge/jni/jni_jsobject.mm:
1509 (JavaJSObject::call):
1510 (JavaJSObject::eval):
1511 (JavaJSObject::getMember):
1512 (JavaJSObject::setMember):
1513 (JavaJSObject::removeMember):
1514 * bridge/jni/jsc/JavaClassJSC.cpp:
1515 (JavaClass::JavaClass):
1516 * bridge/jni/jsc/JavaStringJSC.h:
1517 (JSC::Bindings::JavaStringImpl::uString):
1518 * bridge/jni/v8/JavaStringV8.h:
1520 2011-03-02 Steve Block <steveblock@google.com>
1522 Reviewed by Jeremy Orlow.
1524 JavaString API should be implementable by both JSC and V8
1525 https://bugs.webkit.org/show_bug.cgi?id=55567
1527 Remove JavaString's UString operator and replace it with a
1528 script-engine-independent impl() method, which returns a
1529 StringImpl and can be implemented with both JSC and V8.
1531 No new tests, refactoring only.
1533 * bridge/jni/JNIBridge.h:
1534 (JSC::Bindings::JavaString::impl):
1535 * bridge/jni/jni_jsobject.mm:
1536 (JavaJSObject::call):
1537 (JavaJSObject::eval):
1538 (JavaJSObject::getMember):
1539 (JavaJSObject::setMember):
1540 (JavaJSObject::removeMember):
1541 * bridge/jni/jsc/JavaClassJSC.cpp:
1542 (JavaClass::JavaClass):
1543 * bridge/jni/jsc/JavaStringJSC.h:
1544 (JSC::Bindings::JavaStringImpl::impl):
1545 * bridge/jni/v8/JavaStringV8.h:
1546 (JSC::Bindings::JavaStringImpl::impl):
1548 2011-03-02 Mihai Parparita <mihaip@chromium.org>
1550 Reviewed by Dimitri Glazkov.
1552 Add CRASH() for CSSSelector double frees
1553 https://bugs.webkit.org/show_bug.cgi?id=55596
1555 To help track down bug 53045, add a CRASH call when the CSSSelector
1556 destructor is invoked more than once.
1558 Just a check, no new tests necessary.
1560 * css/CSSSelector.h:
1561 (WebCore::CSSSelector::CSSSelector):
1562 (WebCore::CSSSelector::~CSSSelector):
1564 2011-03-02 Carol Szabo <carol.szabo@nokia.com>
1566 Reviewed by David Hyatt <hyatt@apple.com>
1568 content property doesn't support quotes
1569 https://bugs.webkit.org/show_bug.cgi?id=6503
1571 Added full support for quotes as defined by CSS 2.1.
1573 Tests: fast/css/content/content-quotes-01.html
1574 fast/css/content/content-quotes-02.html
1575 fast/css/content/content-quotes-03.html
1576 fast/css/content/content-quotes-04.html
1577 fast/css/content/content-quotes-05.html
1578 fast/css/content/content-quotes-06.html
1585 * WebCore.vcproj/WebCore.vcproj:
1586 * WebCore.xcodeproj/project.pbxproj:
1587 Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
1588 * css/CSSParser.cpp:
1589 (WebCore::CSSParser::parseValue):
1590 (WebCore::CSSParser::parseQuotes):
1592 Added needed stylesheet parsing support for quotes,
1593 (no-)open-quote and (no-)close-quote
1594 * css/CSSStyleSelector.cpp:
1595 (WebCore::CSSStyleSelector::applyProperty):
1596 Handled setting of the new quotes RenderStyle property and added
1597 handling of quotes for the content property.
1601 replaced the '"' workaround with open/close-quote
1602 * rendering/RenderBlockLineLayout.cpp:
1603 (WebCore::dirtyLineBoxesForRenderer):
1604 Made RenderQuote behave like RenderCounter.
1605 Needed to ensure that the Quote text is calculated before layout,
1606 just as it is for RenderCounter.
1607 * rendering/RenderObject.h:
1608 (WebCore::RenderObject::isQuote):
1609 * rendering/RenderObjectChildList.cpp:
1610 (WebCore::RenderObjectChildList::removeChildNode):
1611 (WebCore::RenderObjectChildList::appendChildNode):
1612 (WebCore::RenderObjectChildList::insertChildNode):
1613 Handled updating of quote depth when renderers are added and removed
1615 (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1616 Added support for Quote content.
1617 * rendering/RenderQuote.cpp: Added.
1618 (WebCore::adjustDepth):
1619 (WebCore::RenderQuote::RenderQuote):
1620 (WebCore::RenderQuote::~RenderQuote):
1621 (WebCore::RenderQuote::renderName):
1622 (WebCore::RenderQuote::placeQuote):
1623 (WebCore::LanguageData::operator<):
1624 (WebCore::defaultLanguageQuotes):
1625 (WebCore::quotesMap):
1626 (WebCore::quotesForLanguage):
1627 (WebCore::defaultQuotes):
1628 (WebCore::RenderQuote::originalText):
1629 (WebCore::RenderQuote::computePreferredLogicalWidths):
1630 (WebCore::RenderQuote::rendererSubtreeAttached):
1631 (WebCore::RenderQuote::rendererRemovedFromTree):
1632 (WebCore::RenderQuote::styleDidChange):
1633 * rendering/RenderQuote.h: Added.
1634 (WebCore::RenderQuote::isQuote):
1635 (WebCore::toRenderQuote):
1636 * rendering/RenderingAllInOne.cpp:
1637 Included RenderQuote.cpp
1638 * rendering/style/StyleAllInOne.cpp:
1639 Included QuotesData.cpp
1640 * rendering/style/ContentData.cpp:
1641 (WebCore::ContentData::dataEquivalent):
1642 Checked for quotetype identity.
1643 (WebCore::ContentData::deleteContent):
1644 Accounted for the new QUOTE_TYPE.
1645 * rendering/style/ContentData.h:
1646 (WebCore::ContentData::isQuote):
1647 (WebCore::ContentData::quote):
1648 (WebCore::ContentData::setQuote):
1649 * rendering/style/QuotesData.cpp: Added.
1650 (WebCore::QuotesData::create):
1651 (WebCore::QuotesData::operator==):
1652 (WebCore::QuotesData::~QuotesData):
1653 * rendering/style/QuotesData.h: Added.
1654 (WebCore::QuotesData::data):
1655 (WebCore::QuotesData::operator delete):
1656 (WebCore::QuotesData::QuotesData):
1657 * rendering/style/RenderStyle.cpp:
1658 (WebCore::RenderStyle::setContent):
1659 (WebCore::RenderStyle::setQuotes):
1660 * rendering/style/RenderStyle.h:
1661 (WebCore::InheritedFlags::quotes):
1662 (WebCore::InheritedFlags::setQuotes):
1663 * rendering/style/RenderStyleConstants.h:
1664 * rendering/style/StyleAllInOne.cpp:
1665 Added QuotesData.cpp to the included files list.
1666 * rendering/style/StyleRareInheritedData.cpp:
1667 (WebCore::StyleRareInheritedData::operator==):
1668 Included quotes in equality check.
1669 * rendering/style/StyleRareInheritedData.h:
1672 2011-03-02 Antti Koivisto <antti@apple.com>
1674 Reviewed by Dave Hyatt.
1676 Selector usage flags should not be set by the CSS parser
1677 https://bugs.webkit.org/show_bug.cgi?id=55573
1679 Currently flags like Document::usesSiblingRules() are set directly by the CSS parser. This is wrong as
1680 we may parse stylesheets that are not actually used for document rendering. This is especially bad when
1681 the page uses querySelectorAll(). As a result we may end up in various performance penalty boxes
1682 triggered by complex selectors for no good reason.
1684 - Use the selector traversal in style selector constructor to figure out which flags
1685 are actually needed for the currently active style sheets.
1686 - Remove the selector flag related code from the CSS parser/grammar.
1687 - Remove the usesDescendantRules flag completely. We have descendant rules in the default
1688 style sheet, every document uses them.
1691 * css/CSSParser.cpp:
1692 (WebCore::CSSParser::updateSpecifiersWithElementName):
1693 * css/CSSStyleSelector.cpp:
1694 (WebCore::collectSiblingRulesInDefaultStyle):
1695 (WebCore::CSSStyleSelector::CSSStyleSelector):
1696 (WebCore::CSSStyleSelector::Features::Features):
1697 (WebCore::CSSStyleSelector::Features::~Features):
1698 (WebCore::CSSStyleSelector::locateCousinList):
1699 (WebCore::CSSStyleSelector::matchesSiblingRules):
1700 (WebCore::CSSStyleSelector::canShareStyleWithElement):
1701 (WebCore::CSSStyleSelector::locateSharedStyle):
1702 (WebCore::collectFeaturesFromSelector):
1703 (WebCore::collectFeaturesFromList):
1704 (WebCore::RuleSet::collectFeatures):
1705 * css/CSSStyleSelector.h:
1706 (WebCore::CSSStyleSelector::usesSiblingRules):
1707 (WebCore::CSSStyleSelector::usesFirstLineRules):
1708 (WebCore::CSSStyleSelector::usesBeforeAfterRules):
1709 (WebCore::CSSStyleSelector::usesLinkRules):
1711 (WebCore::Document::Document):
1712 (WebCore::Document::recalcStyle):
1713 (WebCore::Document::createStyleSelector):
1715 (WebCore::Document::usesSiblingRules):
1716 (WebCore::Document::setUsesSiblingRules):
1717 (WebCore::Document::usesFirstLineRules):
1718 (WebCore::Document::usesBeforeAfterRules):
1719 (WebCore::Document::setUsesBeforeAfterRules):
1721 (WebCore::Element::recalcStyle):
1723 2011-03-02 Brian Weinstein <bweinstein@apple.com>
1725 Fix fallout from a last minute renaming.
1727 * platform/network/cf/CookieStorageCFNet.cpp:
1728 (WebCore::startObservingCookieChanges):
1729 (WebCore::stopObservingCookieChanges):
1731 2011-03-01 Brian Weinstein <bweinstein@apple.com>
1733 Reviewed by Adam Roben.
1735 Part of WebKit2: Need a way to send notifications to client when cookies change
1736 https://bugs.webkit.org/show_bug.cgi?id=55427
1737 <rdar://problem/9056027>
1739 Add functions on CookieStorage that allow listening for changes in cookies. When
1740 the cookies are changed, they call through to CookiesStrategy::notifyCookiesChanged.
1742 No change in behavior requiring tests.
1744 * platform/CookiesStrategy.h: Added.
1745 (WebCore::CookiesStrategy::~CookiesStrategy):
1747 * platform/PlatformStrategies.h:
1748 (WebCore::PlatformStrategies::cookiesStrategy):
1749 (WebCore::PlatformStrategies::PlatformStrategies):
1751 * platform/network/CookieStorage.h: Add new function declarations.
1753 * platform/network/cf/CookieStorageCFNet.cpp:
1754 (WebCore::notifyCookiesChangedOnMainThread): Call through to CookiesStrategy::notifyCookiesChanged.
1755 (WebCore::notifyCookiesChanged): Call notifyCookiesChangedOnMainThread on the main thread.
1756 (WebCore::beginObservingCookieChanges): Set up cookie observers on the loader run loop.
1757 (WebCore::finishObservingCookieChanges): Remove our cookie observers from the loader run loop.
1759 * platform/network/mac/CookieStorageMac.mm:
1760 (-[CookieStorageObjCAdapter notifyCookiesChangedOnMainThread]): Call through to CookiesStrategy::notifyCookiesChanged.
1761 (-[CookieStorageObjCAdapter cookiesChangedNotificationHandler:]): Call notifyCookiesChangedOnMainThread on
1763 (-[CookieStorageObjCAdapter registerForCookieChangeNotifications]): Set up the observer for cookie change notifications.
1764 (-[CookieStorageObjCAdapter unregisterForCookieChangeNotifications]): Remove the observer for cookie change notifications.
1765 (WebCore::beginObservingCookieChanges): Create our CookieStorageObjCAdapter, and call registerForCookieChangeNotifications.
1766 (WebCore::finishObservingCookieChanges): Call unregisterForCookieChangeNotifications.
1769 * WebCore.vcproj/WebCore.vcproj:
1770 * WebCore.xcodeproj/project.pbxproj: Set role on files we need to include in WebKit to private.
1772 2011-03-02 Sergey Glazunov <serg.glazunov@gmail.com>
1774 Reviewed by Dimitri Glazkov.
1776 A WebKitCSSKeyframesRule object should set itself as the parent for inserted rules
1777 https://bugs.webkit.org/show_bug.cgi?id=55488
1779 Test: fast/css/css-keyframe-parent.html
1781 * css/WebKitCSSKeyframesRule.cpp:
1782 (WebCore::WebKitCSSKeyframesRule::append):
1784 2011-03-02 Sergio Villar Senin <svillar@igalia.com>
1786 Reviewed by Martin Robinson.
1788 [GTK] Add support for external protocol handlers
1789 https://bugs.webkit.org/show_bug.cgi?id=55473
1791 Do not unconditionally create and replace the SoupRequester of the
1792 SoupSession if there is already one. No new tests needed as we
1793 just allow clients to create their our SoupRequesters.
1795 * platform/network/soup/ResourceHandleSoup.cpp:
1796 (WebCore::ensureSessionIsInitialized):
1798 2011-03-02 John Knottenbelt <jknotten@chromium.org>
1800 Reviewed by jknotten@chromium.org.
1802 Fix build-breakage when GEOLOCATION not enabled.
1803 https://bugs.webkit.org/show_bug.cgi?id=55586
1805 Geolocation::reset needs to be defined if ENABLE(GEOLOCATION)
1808 * page/Geolocation.cpp:
1809 (WebCore::Geolocation::reset):
1811 2011-03-02 Pavel Feldman <pfeldman@chromium.org>
1813 Reviewed by Yury Semikhatsky.
1815 Web Inspector: remove InjectedScriptHost -> DOMAgent dependency.
1816 https://bugs.webkit.org/show_bug.cgi?id=55575
1818 * bindings/js/JSInjectedScriptHostCustom.cpp:
1819 (WebCore::JSInjectedScriptHost::inspectedNode):
1820 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1821 (WebCore::V8InjectedScriptHost::inspectedNodeCallback):
1822 * inspector/ConsoleMessage.cpp:
1823 (WebCore::ConsoleMessage::addToFrontend):
1824 * inspector/InjectedScript.cpp:
1825 (WebCore::InjectedScript::evaluateOn):
1826 (WebCore::InjectedScript::wrapObject):
1827 (WebCore::InjectedScript::wrapNode):
1828 (WebCore::InjectedScript::inspectNode):
1829 (WebCore::InjectedScript::nodeAsScriptValue):
1830 * inspector/InjectedScript.h:
1831 * inspector/InjectedScriptHost.cpp:
1832 (WebCore::InjectedScriptHost::addInspectedNode):
1833 (WebCore::InjectedScriptHost::clearInspectedNodes):
1834 (WebCore::InjectedScriptHost::copyText):
1835 (WebCore::InjectedScriptHost::inspectedNode):
1836 * inspector/InjectedScriptHost.h:
1837 * inspector/InjectedScriptHost.idl:
1838 * inspector/InjectedScriptSource.js:
1839 * inspector/Inspector.idl:
1840 * inspector/InspectorDOMAgent.cpp:
1841 (WebCore::InspectorDOMAgent::discardBindings):
1842 (WebCore::InspectorDOMAgent::addInspectedNode):
1843 (WebCore::InspectorDOMAgent::resolveNode):
1844 (WebCore::InspectorDOMAgent::injectedScriptForNode):
1845 * inspector/InspectorDOMAgent.h:
1846 * inspector/InspectorRuntimeAgent.cpp:
1847 (WebCore::InspectorRuntimeAgent::evaluateOn):
1848 * inspector/InspectorRuntimeAgent.h:
1849 * inspector/front-end/ElementsTreeOutline.js:
1850 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1851 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
1852 (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
1853 * inspector/front-end/PropertiesSidebarPane.js:
1854 (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
1855 (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
1856 (WebInspector.PropertiesSidebarPane.prototype.update.fillSection):
1857 (WebInspector.PropertiesSidebarPane.prototype.update):
1858 * inspector/front-end/RemoteObject.js:
1859 (WebInspector.RemoteObject.resolveNode):
1860 (WebInspector.RemoteObject.prototype.pushNodeToFrontend):
1861 (WebInspector.RemoteObject.prototype.evaluate):
1863 2011-01-21 John Knottenbelt <jknotten@chromium.org>
1865 Reviewed by Dmitry Titov.
1867 Detach Geolocation from Frame when Page destroyed.
1868 https://bugs.webkit.org/show_bug.cgi?id=52877
1870 On Page destruction, any outstanding Geolocation permission
1871 requests should be cancelled, because the Geolocation can only
1872 access the client indirectly via m_frame->page().
1874 Additionally, if the Frame is reparented to another page, the
1875 Geolocation should cancel watches, single-shots and requests on
1878 Page destruction is signalled by a call to the
1879 Frame::pageDestroyed() method. This calls Frame::detachFromPage,
1880 where we extend the call chain to Geolocation::detachFromPage()
1881 where we call Geolocation::reset() which detaches from the
1882 GeolocationController, cancels requests, watches and single shots,
1883 and sets the permission state back to Unknown.
1885 We also now call detachFromPage when the frame reparented in
1886 Frame::transferChildFrameToNewDocument.
1888 Frame::pageDestroyed() is also called by FrameLoader even though
1889 the page is not destroyed. We should still cancel permission
1890 requests, because the GeolocationClient will become inaccessible
1891 to the Geolocation object after this call.
1893 Since GeolocationController is owned by Page, and all Geolocation
1894 objects will now unsubscribe from the GeolocationController on
1895 pageDetached(), we no longer need to call stopUpdating() from the
1896 GeolocationController's destructor. Instead we can simply assert
1897 that there should be no no observers. See related bug
1898 https://bugs.webkit.org/show_bug.cgi?id=52216 .
1900 Introduced new method 'numberOfPendingPermissionRequests' on
1901 GeolocationClientMock to count the number of outstanding pending
1902 permission requests. This provides a reusable implementation for
1903 client-based implementations of the LayoutTestController's
1904 numberOfPendingGeolocationPermissionRequests method.
1906 Tests: fast/dom/Geolocation/iframe-reparent.html
1907 fast/dom/Geolocation/page-reload-cancel-permission-requests.html
1909 * page/DOMWindow.cpp:
1910 (WebCore::DOMWindow::resetGeolocationPermissions):
1913 (WebCore::Frame::detachFromPage):
1914 (WebCore::Frame::pageDestroyed):
1915 (WebCore::Frame::transferChildFrameToNewDocument):
1917 * page/Geolocation.cpp:
1918 (WebCore::Geolocation::~Geolocation):
1919 (WebCore::Geolocation::page):
1920 (WebCore::Geolocation::reset):
1921 (WebCore::Geolocation::disconnectFrame):
1922 (WebCore::Geolocation::lastPosition):
1923 (WebCore::Geolocation::requestPermission):
1924 (WebCore::Geolocation::startUpdating):
1925 (WebCore::Geolocation::stopUpdating):
1926 * page/Geolocation.h:
1927 * page/GeolocationController.cpp:
1928 (WebCore::GeolocationController::~GeolocationController):
1929 * page/Navigator.cpp:
1930 (WebCore::Navigator::resetGeolocationPermissions):
1932 * platform/mock/GeolocationClientMock.cpp:
1933 (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
1934 * platform/mock/GeolocationClientMock.h:
1936 2011-03-02 Mikhail Naganov <mnaganov@chromium.org>
1938 Reviewed by Pavel Feldman.
1940 Web Inspector: [Chromium] Landing detailed heap snapshots, part 4.
1941 https://bugs.webkit.org/show_bug.cgi?id=55563
1943 This part adds implementations for data grids used to display
1944 different heap snapshots projections. We are almost done.
1946 * English.lproj/localizedStrings.js:
1948 * bindings/v8/ScriptHeapSnapshot.cpp:
1949 (WebCore::ScriptHeapSnapshot::getExactRetainedSize):
1950 * bindings/v8/ScriptHeapSnapshot.h:
1951 * inspector/Inspector.idl:
1952 * inspector/InspectorProfilerAgent.cpp:
1953 (WebCore::InspectorProfilerAgent::getExactHeapSnapshotNodeRetainedSize):
1954 * inspector/InspectorProfilerAgent.h:
1955 * inspector/front-end/DetailedHeapshotGridNodes.js:
1956 (WebInspector.HeapSnapshotObjectNode):
1957 (WebInspector.HeapSnapshotObjectNode.prototype._createProvider):
1958 (WebInspector.HeapSnapshotInstanceNode):
1959 (WebInspector.HeapSnapshotInstanceNode.prototype._createProvider):
1960 (WebInspector.HeapSnapshotDominatorObjectNode):
1961 (WebInspector.HeapSnapshotDominatorObjectNode.prototype._createProvider):
1962 (MixInSnapshotNodeFunctions):
1963 * inspector/front-end/DetailedHeapshotView.js:
1964 (WebInspector.HeapSnapshotContainmentDataGrid):
1965 (WebInspector.HeapSnapshotSortableDataGrid):
1966 (WebInspector.HeapSnapshotConstructorsDataGrid):
1967 (WebInspector.HeapSnapshotDiffDataGrid):
1968 (WebInspector.HeapSnapshotDominatorsDataGrid):
1969 (WebInspector.HeapSnapshotRetainingPathsList):
1970 (WebInspector.DetailedHeapshotView.profileCallback):
1971 (WebInspector.DetailedHeapshotView):
1972 * inspector/front-end/HeapSnapshot.js:
1973 (WebInspector.HeapSnapshotEdge.prototype.get isInvisible):
1974 (WebInspector.HeapSnapshotEdge.prototype.toString):
1975 (WebInspector.HeapSnapshot.prototype._init):
1976 (WebInspector.HeapSnapshot.prototype._buildAggregatesIndexes):
1977 (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
1978 (WebInspector.HeapSnapshotPathFinder.prototype._skipEdge):
1979 * inspector/front-end/Images/helpButtonGlyph.png: Added.
1980 * inspector/front-end/Panel.js:
1981 (WebInspector.Panel.prototype.reset):
1982 * inspector/front-end/Popover.js:
1983 (WebInspector.Popover):
1984 (WebInspector.Popover.prototype.show):
1985 (WebInspector.Popover.prototype.hide):
1986 (WebInspector.Popover.prototype.get visible):
1987 * inspector/front-end/ProfilesPanel.js:
1988 (WebInspector.ProfilesPanel.prototype._reset):
1989 (WebInspector.ProfilesPanel.prototype.getProfile):
1990 * inspector/front-end/heapProfiler.css:
1991 * inspector/front-end/inspector.js:
1992 (WebInspector.resetFocusElement):
1994 2011-03-02 David Kilzer <ddkilzer@apple.com>
1996 <http://webkit.org/b/55534> Clean up macros in Extensions3DOpenGL.cpp
1998 Reviewed by Darin Adler.
2000 Change "#if GL_APPLE_vertex_array_object" macros to check that
2001 GL_APPLE_vertex_array_object is both defined and non-zero.
2003 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2004 (WebCore::Extensions3DOpenGL::createVertexArrayOES):
2005 (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): Remove
2007 (WebCore::Extensions3DOpenGL::isVertexArrayOES):
2008 (WebCore::Extensions3DOpenGL::bindVertexArrayOES): Add early
2009 return check. Remove #else clause that would never have
2010 compiled (since array is not a WTF::String).
2012 2011-03-01 Ryosuke Niwa <rniwa@webkit.org>
2014 Reviewed by Darin Adler.
2016 Assertion failure after removing a selection in keydown handler
2017 https://bugs.webkit.org/show_bug.cgi?id=51389
2019 The bug was caused by textWillBeReplaced's not always updating selection, and
2020 shouldRemovePositionAfterAdoptingTextReplacement's not moving the end offset when it's
2021 at the end of replaced data.
2023 Fixed the bug by always updating selection in textWillBeReplaced and fixing the condition
2024 to move the offset in shouldRemovePositionAfterAdoptingTextReplacement. Also added a call
2025 to setSelection instead of directly modifying m_selection to notify all the clients.
2026 Namely, the call to EditorClient::respondToChangedSelection is required for
2027 setting-input-value-cancel-ime-composition.html.
2029 Note that we must update layout before calling setSelection because setSelection calls
2030 setFocusedNodeIfNeeded and it requires layout to be up-to-date. Without this call, tests
2031 such as fast/forms/input-appearance-maxlength.html hits an assertion in Node::isFocusable.
2033 Test: editing/input/setting-input-value-cancel-ime-composition.html
2035 * editing/SelectionController.cpp:
2036 (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): When replacing text, the offset
2037 of the selection end must be updated even if it was at the end of the replaced text.
2038 e.g. removing "world" from "hello world] WebKit" should result in "hello ] WebKit" not
2039 "hello WebK[it". Note we don't move the offset if no text is removed because appending
2040 "world" to "hello ]" should result in "hello ]world" not "hello world]".
2041 (WebCore::SelectionController::textWillBeReplaced): Calls setSelection to update
2042 the selection instead of modifying m_selection directly.
2044 2011-03-02 Andrey Adaikin <aandrey@google.com>
2046 Reviewed by Pavel Feldman.
2048 Web Inspector: highlighted line does not span horizonally in scripts panel while debugging.
2049 https://bugs.webkit.org/show_bug.cgi?id=54675
2051 * inspector/front-end/TextViewer.js:
2052 (WebInspector.TextViewer.prototype._syncScroll):
2053 (WebInspector.TextEditorChunkedPanel.prototype._buildChunks):
2054 (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
2055 (WebInspector.TextEditorGutterPanel):
2056 (WebInspector.TextEditorGutterPanel.prototype._expandChunks):
2057 (WebInspector.TextEditorGutterPanel.prototype.textChanged):
2058 (WebInspector.TextEditorMainPanel):
2059 (WebInspector.TextEditorMainPanel.prototype.set readOnly):
2060 (WebInspector.TextEditorMainPanel.prototype._getSelection):
2061 (WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
2062 (WebInspector.TextEditorMainPanel.prototype._handleDOMSubtreeModified):
2063 (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
2064 (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
2065 * inspector/front-end/textViewer.css:
2068 2011-03-02 Oleg Romashin <romaxa@gmail.com>
2070 Reviewed by Andreas Kling.
2072 Fixing inspector compilation with JAVASCRIPT_DEBUGGER disabled
2073 https://bugs.webkit.org/show_bug.cgi?id=55477
2075 * inspector/InspectorAgent.cpp:
2076 (WebCore::InspectorAgent::populateScriptObjects):
2078 2011-03-02 Kent Tamura <tkent@chromium.org>
2080 Unreviewed, a trivial fix for r80096.
2082 REGRESSION (r80096): [Chromium] fast/forms/input-number-unacceptable-style.html failure
2083 https://bugs.webkit.org/show_bug.cgi?id=55562
2085 * platform/text/LocalizedNumberICU.cpp:
2086 (WebCore::parseLocalizedNumber): Check the ParsePosition after NumberFormat::parse()
2087 to reject strings with a valid number + extra letters.
2089 2011-03-02 Steve Block <steveblock@google.com>
2091 Reviewed by Jeremy Orlow.
2093 JObjectWrapper should be moved to its own file
2094 https://bugs.webkit.org/show_bug.cgi?id=55384
2096 No new tests, refactoring only.
2098 * Android.v8bindings.mk:
2100 * bridge/jni/v8/JNIBridgeV8.cpp:
2101 (JavaField::JavaField):
2102 * bridge/jni/v8/JNIBridgeV8.h:
2103 * bridge/jni/v8/JavaInstanceV8.cpp:
2104 (JavaInstance::JavaInstance):
2105 * bridge/jni/v8/JavaInstanceV8.h:
2106 * bridge/jni/v8/JobjectWrapper.cpp: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
2107 (JobjectWrapper::JobjectWrapper):
2108 (JobjectWrapper::~JobjectWrapper):
2109 * bridge/jni/v8/JobjectWrapper.h: Copied from Source/WebCore/bridge/jni/v8/JNIBridgeV8.h.
2110 (JSC::Bindings::JobjectWrapper::instance):
2111 (JSC::Bindings::JobjectWrapper::setInstance):
2112 (JSC::Bindings::JobjectWrapper::ref):
2113 (JSC::Bindings::JobjectWrapper::deref):
2115 2011-02-25 Andrey Kosyakov <caseq@chromium.org>
2117 Reviewed by Pavel Feldman.
2119 Web Inspector: factor search logic out of inspector.js
2120 https://bugs.webkit.org/show_bug.cgi?id=54965
2123 * WebCore.vcproj/WebCore.vcproj:
2124 * inspector/front-end/ElementsPanel.js:
2125 (WebInspector.ElementsPanel.prototype.searchCanceled):
2126 (WebInspector.ElementsPanel.prototype.switchToAndFocus):
2127 (WebInspector.ElementsPanel.prototype._updateMatchesCount):
2128 * inspector/front-end/Panel.js:
2129 (WebInspector.Panel.prototype.searchCanceled):
2130 (WebInspector.Panel.prototype.performSearch.updateMatchesCount):
2131 * inspector/front-end/ScriptsPanel.js:
2132 (WebInspector.ScriptsPanel.prototype.searchCanceled):
2133 (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
2134 (WebInspector.ScriptsPanel.prototype.performSearch):
2135 * inspector/front-end/SearchController.js: Added.
2136 (WebInspector.SearchController):
2137 (WebInspector.SearchController.prototype.updateSearchMatchesCount):
2138 (WebInspector.SearchController.prototype.updateSearchLabel):
2139 (WebInspector.SearchController.prototype.cancelSearch):
2140 (WebInspector.SearchController.prototype.handleShortcut):
2141 (WebInspector.SearchController.prototype.activePanelChanged.performPanelSearch):
2142 (WebInspector.SearchController.prototype.activePanelChanged):
2143 (WebInspector.SearchController.prototype._updateSearchMatchesCount):
2144 (WebInspector.SearchController.prototype._focusSearchField):
2145 (WebInspector.SearchController.prototype._onSearchFieldManualFocus):
2146 (WebInspector.SearchController.prototype._onKeyDown):
2147 (WebInspector.SearchController.prototype._onSearch):
2148 (WebInspector.SearchController.prototype._performSearch):
2149 * inspector/front-end/WebKit.qrc:
2150 * inspector/front-end/inspector.html:
2151 * inspector/front-end/inspector.js:
2152 (WebInspector.set currentPanel):
2153 (WebInspector.set attached):
2154 (WebInspector.doLoadedDone):
2155 (WebInspector.documentKeyDown):
2157 2011-03-02 Renata Hodovan <reni@webkit.org>
2159 Reviewed by Andreas Kling.
2161 FEMorphologyElement changes doesn't require relayout
2162 https://bugs.webkit.org/show_bug.cgi?id=55462
2164 When the FEMorphologyElement receives an update message but the given value remains the same we don't need
2165 to relayout the filter.
2167 No new tests are needed because this modification is covered by the dynamic update tests of FEMorphology.
2169 * platform/graphics/filters/FEMorphology.cpp:
2170 (WebCore::FEMorphology::setMorphologyOperator):
2171 (WebCore::FEMorphology::setRadiusX):
2172 (WebCore::FEMorphology::setRadiusY):
2173 * platform/graphics/filters/FEMorphology.h:
2174 * svg/SVGFEMorphologyElement.cpp:
2175 (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
2176 (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
2177 * svg/SVGFEMorphologyElement.h:
2179 2011-03-01 Kent Tamura <tkent@chromium.org>
2181 Reviewed by Dimitri Glazkov.
2183 Assertion fails when a form validation bubble appears
2184 https://bugs.webkit.org/show_bug.cgi?id=55550
2186 Test: fast/forms/interactive-validation-attach-assertion.html
2188 * html/ValidationMessage.cpp:
2189 (WebCore::ValidationMessage::buildBubbleTree):
2190 Just remove unnecessary attach().
2192 2011-03-01 Kent Tamura <tkent@chromium.org>
2194 Reviewed by Dimitri Glazkov.
2196 Support localized numbers in <input type=number>
2197 https://bugs.webkit.org/show_bug.cgi?id=42484
2199 This change adds support of localized numbers in <input type=number>.
2200 This affects only the UI, and not HTMLInputElement::value.
2202 - Remove the keyboard input restriction feature because it is hard to
2203 retrieve characters usable for localized numbers in ICU.
2205 - Separate convertFromVisibleValue() from sanitizeValue().
2206 sanitizeValue() is used for not only converting a renderer value to a
2209 - Implement LocalizedNumber functions for ICU and NSNumberFormatter.
2210 It is used only in Chromium for now.
2212 Test: manual-tests/input-number-localization.html
2214 * WebCore.gypi: Use LocalizedNumberICU.cpp.
2215 * WebCore.xcodeproj/project.pbxproj:
2216 Add LocalizedNumberMac.mm and remove LocalizedNumberNone.cpp.
2217 * dom/InputElement.h: Introduce convertFromVisibleValue().
2218 * html/HTMLInputElement.cpp:
2219 (WebCore::HTMLInputElement::convertFromVisibleValue):
2220 * html/HTMLInputElement.h:
2221 * html/InputType.cpp:
2222 (WebCore::InputType::convertFromVisibleValue):
2224 * html/NumberInputType.cpp: Remove isHTMLNumberCharacter(),
2225 isNumberCharacter(), and handleBeforeTextInsertedEvent() because we
2226 remove the keyboard input restriction feature for type=number.
2227 (WebCore::NumberInputType::convertFromVisibleValue):
2228 (WebCore::NumberInputType::sanitizeValue):
2229 * html/NumberInputType.h:
2230 * manual-tests/input-number-localization.html: Add a manual test because
2231 the behavior depends on the current locale.
2232 * platform/text/LocalizedNumber.h: Remove isLocalizedNumberCharacter().
2233 * platform/text/LocalizedNumberICU.cpp:
2234 Implement LocalizedNumber functions with ICU NumberFormat.
2235 (WebCore::createFormatterForCurrentLocale):
2236 (WebCore::parseLocalizedNumber):
2237 (WebCore::formatLocalizedNumber):
2238 * platform/text/LocalizedNumberNone.cpp: Remove isLocalizedNumberCharacter().
2239 * platform/text/mac/LocalizedNumberMac.mm:
2240 Implement LocalizedNumber functions with NSNumberFormatter.
2241 (WebCore::parseLocalizedNumber):
2242 (WebCore::formatLocalizedNumber):
2243 * rendering/RenderTextControlSingleLine.cpp:
2244 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2245 * wml/WMLInputElement.h:
2246 (WebCore::WMLInputElement::convertFromVisibleValue):
2247 Implemented as a function doing nothing.
2249 2011-03-01 Yuta Kitamura <yutak@chromium.org>
2251 Reviewed by Darin Adler.
2253 REGRESSION(r78383): Failure to connect on websocketstest.com
2254 https://bugs.webkit.org/show_bug.cgi?id=54811
2256 After r78383, KURL::setPort() no longer appends ":port" part
2257 if that port is the default port for URL scheme. This broke
2258 SocketStreamHandleCFNet, whose code was based on an assumption
2259 that KURL::setPort() always inserts ":port" part.
2261 To fix this, KURL::port() call is removed from SocketStreamHandle
2262 and the port number is calculated on-the-fly.
2264 Unfortunately it is impossible to write a test; this bug only
2265 affects WebSockets connecting to the default port (port 80
2266 for ws, port 443 for wss), while we use different ports to test
2267 WebSockets in LayoutTests.
2269 * platform/network/cf/SocketStreamHandle.h:
2270 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2271 (WebCore::SocketStreamHandle::SocketStreamHandle):
2272 (WebCore::SocketStreamHandle::createStreams):
2273 (WebCore::SocketStreamHandle::port):
2275 2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2277 Unreviewed, rolling out r80079.
2278 http://trac.webkit.org/changeset/80079
2279 https://bugs.webkit.org/show_bug.cgi?id=55547
2281 "Broke the Win debug build?" (Requested by dcheng on #webkit).
2283 * Configurations/FeatureDefines.xcconfig:
2287 2011-02-25 Adrienne Walker <enne@google.com>
2289 Reviewed by James Robinson.
2291 [chromium] Abstract "pixels with a graphics context" into its own class
2292 https://bugs.webkit.org/show_bug.cgi?id=55259
2294 This creates new PlatformCanvas/PlatformImage classes which wrap
2295 all of the #ifdef Skia/Cg warts from the compositor. All classes
2296 (LayerTilerChromium, ContentLayerChromium, and ImageLayerChromium) are
2297 modified to use these abstractions.
2299 Tests: LayoutTests/compositing
2302 * platform/graphics/chromium/ContentLayerChromium.cpp:
2303 (WebCore::ContentLayerChromium::updateContentsIfDirty):
2304 (WebCore::ContentLayerChromium::resizeUploadBuffer):
2305 (WebCore::ContentLayerChromium::updateTextureIfNeeded):
2306 (WebCore::ContentLayerChromium::updateTexture):
2307 (WebCore::ContentLayerChromium::draw):
2308 * platform/graphics/chromium/ContentLayerChromium.h:
2309 * platform/graphics/chromium/ImageLayerChromium.cpp:
2310 (WebCore::ImageLayerChromium::updateContentsIfDirty):
2311 (WebCore::ImageLayerChromium::updateTextureIfNeeded):
2312 * platform/graphics/chromium/ImageLayerChromium.h:
2313 * platform/graphics/chromium/LayerTilerChromium.cpp:
2314 (WebCore::LayerTilerChromium::contentRectToTileIndices):
2315 (WebCore::LayerTilerChromium::update):
2316 (WebCore::LayerTilerChromium::updateFromPixels):
2317 * platform/graphics/chromium/LayerTilerChromium.h:
2318 * platform/graphics/chromium/PlatformCanvas.cpp: Added.
2319 (WebCore::PlatformCanvas::PlatformCanvas):
2320 (WebCore::PlatformCanvas::~PlatformCanvas):
2321 (WebCore::PlatformCanvas::resize):
2322 (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
2323 (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
2324 (WebCore::PlatformCanvas::Painter::Painter):
2325 (WebCore::PlatformCanvas::Painter::~Painter):
2326 * platform/graphics/chromium/PlatformCanvas.h: Added.
2327 (WebCore::PlatformCanvas::AutoLocker::pixels):
2328 (WebCore::PlatformCanvas::Painter::context):
2329 (WebCore::PlatformCanvas::size):
2330 * platform/graphics/chromium/PlatformImage.cpp: Copied from Source/WebCore/platform/graphics/chromium/ImageLayerChromium.cpp.
2331 (WebCore::PlatformImage::PlatformImage):
2332 (WebCore::PlatformImage::updateFromImage):
2333 * platform/graphics/chromium/PlatformImage.h: Added.
2334 (WebCore::PlatformImage::pixels):
2335 (WebCore::PlatformImage::size):
2337 2011-03-01 Daniel Cheng <dcheng@chromium.org>
2339 Reviewed by David Levin.
2341 Add feature define for data transfer items
2342 https://bugs.webkit.org/show_bug.cgi?id=55510
2344 * Configurations/FeatureDefines.xcconfig:
2348 2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
2350 Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
2352 * dom/ViewportArguments.cpp:
2353 (WebCore::computeViewportAttributes):
2354 (WebCore::numericPrefix):
2355 (WebCore::findSizeValue):
2356 (WebCore::setViewportFeature):
2357 (WebCore::viewportErrorMessageTemplate):
2358 (WebCore::viewportErrorMessageLevel):
2359 * dom/ViewportArguments.h:
2361 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
2363 Reviewed by James Robinson.
2365 IDBKeyRange.bound() should not use the optional options object
2366 https://bugs.webkit.org/show_bug.cgi?id=55419
2368 http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#range-concept
2370 Added some code to existing tests to cover these cases.
2372 * storage/IDBKeyRange.cpp:
2373 (WebCore::IDBKeyRange::bound):
2374 * storage/IDBKeyRange.h:
2375 * storage/IDBKeyRange.idl:
2377 2011-03-01 Dan Bernstein <mitz@apple.com>
2381 * dom/DocumentMarkerController.cpp:
2382 (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2384 2011-03-01 Kent Tamura <tkent@chromium.org>
2386 Unreviewed. Apply sort-Xcode-project-file.
2388 * WebCore.xcodeproj/project.pbxproj:
2390 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
2392 Reviewed by James Robinson.
2394 V8 code generator doesn't properly support a single SerializedScriptValue attribute
2395 https://bugs.webkit.org/show_bug.cgi?id=55530
2397 This is tested by the bindings tests changes.
2399 * bindings/scripts/CodeGeneratorV8.pm:
2400 * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp: Added.
2401 (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterfacePrivate::WebDOMTestSerializedScriptValueInterfacePrivate):
2402 (WebDOMTestSerializedScriptValueInterface::WebDOMTestSerializedScriptValueInterface):
2403 (WebDOMTestSerializedScriptValueInterface::operator=):
2404 (WebDOMTestSerializedScriptValueInterface::impl):
2405 (WebDOMTestSerializedScriptValueInterface::~WebDOMTestSerializedScriptValueInterface):
2406 (WebDOMTestSerializedScriptValueInterface::value):
2409 * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h: Added.
2410 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp: Added.
2412 (webkit_dom_test_serialized_script_value_interface_get_value):
2414 (webkit_dom_test_serialized_script_value_interface_finalize):
2415 (webkit_dom_test_serialized_script_value_interface_set_property):
2416 (webkit_dom_test_serialized_script_value_interface_get_property):
2417 (webkit_dom_test_serialized_script_value_interface_constructed):
2418 (webkit_dom_test_serialized_script_value_interface_class_init):
2419 (webkit_dom_test_serialized_script_value_interface_init):
2420 (WebKit::wrapTestSerializedScriptValueInterface):
2421 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h: Added.
2422 * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h: Added.
2423 * bindings/scripts/test/JS/JSTestInterface.cpp:
2424 (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
2425 (WebCore::JSTestInterface::JSTestInterface):
2426 * bindings/scripts/test/JS/JSTestInterface.h:
2427 * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2428 (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
2429 (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
2430 (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
2431 * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
2432 * bindings/scripts/test/JS/JSTestObj.cpp:
2433 (WebCore::JSTestObjConstructor::JSTestObjConstructor):
2434 (WebCore::JSTestObj::JSTestObj):
2435 (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
2436 (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
2437 (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
2438 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
2439 (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
2440 (WebCore::jsTestObjPrototypeFunctionSerializedValue):
2441 (WebCore::jsTestObjPrototypeFunctionIdbKey):
2442 (WebCore::jsTestObjPrototypeFunctionOptionsObject):
2443 (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
2444 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
2445 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
2446 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
2447 (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
2448 (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
2449 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
2450 (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
2451 (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
2452 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
2453 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
2454 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
2455 (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
2456 (WebCore::jsTestObjPrototypeFunctionClassMethodWithOptional):
2457 * bindings/scripts/test/JS/JSTestObj.h:
2458 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Added.
2459 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
2460 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
2461 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
2462 (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertyDescriptor):
2463 (WebCore::JSTestSerializedScriptValueInterfacePrototype::self):
2464 (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
2465 (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
2466 (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
2467 (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
2468 (WebCore::jsTestSerializedScriptValueInterfaceValue):
2469 (WebCore::jsTestSerializedScriptValueInterfaceConstructor):
2470 (WebCore::JSTestSerializedScriptValueInterface::getConstructor):
2472 (WebCore::toTestSerializedScriptValueInterface):
2473 * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h: Copied from Source/WebCore/bindings/scripts/test/JS/JSTestInterface.h.
2474 (WebCore::JSTestSerializedScriptValueInterface::createStructure):
2475 (WebCore::JSTestSerializedScriptValueInterface::impl):
2476 (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
2477 (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
2478 * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h: Added.
2479 * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm: Added.
2480 (-[DOMTestSerializedScriptValueInterface dealloc]):
2481 (-[DOMTestSerializedScriptValueInterface finalize]):
2482 (-[DOMTestSerializedScriptValueInterface value]):
2485 * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h: Added.
2486 * bindings/scripts/test/TestSerializedScriptValueInterface.idl: Added.
2487 * bindings/scripts/test/V8/V8TestInterface.cpp:
2488 (WebCore::ConfigureV8TestInterfaceTemplate):
2489 * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: Copied from Source/WebCore/bindings/scripts/test/V8/V8TestInterface.cpp.
2490 (WebCore::TestSerializedScriptValueInterfaceInternal::V8_USE):
2491 (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
2492 (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
2493 (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
2494 (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
2495 (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
2496 (WebCore::V8TestSerializedScriptValueInterface::derefObject):
2497 * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h: Added.
2498 (WebCore::V8TestSerializedScriptValueInterface::toNative):
2499 (WebCore::V8TestSerializedScriptValueInterface::wrap):
2502 2011-03-01 Oliver Hunt <oliver@apple.com>
2504 Reviewed by Joseph Pecoraro.
2506 Misaligned memory access in CloneDeserializer on all ARM arch.
2507 https://bugs.webkit.org/show_bug.cgi?id=48742
2509 Push platforms that need aligned memory access down the
2510 endian independent serialization and deserialization
2513 * bindings/js/SerializedScriptValue.cpp:
2515 2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
2517 Reviewed by Kenneth Rohde Christiansen.
2519 Viewport Warning/Error Messages Are Now Inaccurate
2520 https://bugs.webkit.org/show_bug.cgi?id=53707
2522 Correct and improve the error messages for viewport
2523 parsing. Clarify the difference between incorrect
2524 keys, values, and when to use the device-width or
2525 device-height constants.
2527 * dom/ViewportArguments.cpp:
2528 (WebCore::computeViewportAttributes): suggest using keywords if fixed input matches device width or height.
2529 (WebCore::numericPrefix):
2530 (WebCore::findSizeValue): remove incorrect warnings about fixed numbers because we don't know the device width or height.
2531 (WebCore::setViewportFeature): report a warning for an unrecognized key.
2532 (WebCore::viewportErrorMessageTemplate): added template for unrecognized key.
2533 (WebCore::viewportErrorMessageLevel):
2534 * dom/ViewportArguments.h:
2536 2011-03-01 Ryosuke Niwa <rniwa@webkit.org>
2538 Reviewed by Darin Adler.
2540 WebKit does not merge text decorations in the typing style and the selected element properly
2541 https://bugs.webkit.org/show_bug.cgi?id=55349
2543 The bug was caused by EditingStyle::mergeTypingStyle's not properly merging text decoration property.
2544 Fixed the bug by extracting a function from ApplyStyleCommand::pushDownInlineStyleAroundNode and
2545 calling it in pushDownInlineStyleAroundNode and in mergeTypingStyle.
2547 Test: editing/execCommand/merge-text-decoration-with-typing-style.html
2549 * editing/ApplyStyleCommand.cpp:
2550 (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Takes EditingStyle*;
2551 calls mergeInlineStyleOfElement.
2552 (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls applyInlineStyleToPushDown.
2553 (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
2554 * editing/ApplyStyleCommand.h:
2555 * editing/EditingStyle.cpp:
2556 (WebCore::EditingStyle::mergeTypingStyle): Added; calls mergeStyle.
2557 (WebCore::EditingStyle::mergeInlineStyleOfElement): Ditto.
2558 (WebCore::EditingStyle::mergeStyle): Extracted from applyInlineStyleToPushDown.
2559 * editing/EditingStyle.h:
2561 2011-03-01 Levi Weintraub <leviw@chromium.org>
2563 Reviewed by Ryosuke Niwa.
2565 Stop instantiating legacy editing Positions in VisiblePosition
2566 https://bugs.webkit.org/show_bug.cgi?id=52919
2568 Changing VisiblePosition completely away from legacy positions.
2570 No new tests since this is functionaly equivalent.
2572 * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
2573 adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
2574 outside of WebCore, they should be parent anchored.
2575 * accessibility/AXObjectCache.cpp:
2576 (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
2577 * accessibility/AccessibilityObject.cpp:
2578 (WebCore::startOfStyleRange):
2579 (WebCore::endOfStyleRange):
2580 * accessibility/AccessibilityRenderObject.cpp:
2581 (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
2582 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2583 (objectAndOffsetUnignored):
2585 (WebCore::Position::document): Added this inline function to avoid the necessity
2586 of calling anchorNode to assure a document from a Position.
2587 (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
2588 (WebCore::Position::downstream): ditto
2590 (WebCore::Range::editingStartPosition):
2591 * editing/Editor.cpp:
2592 (WebCore::Editor::canDeleteRange):
2593 * editing/ReplaceSelectionCommand.cpp:
2594 (WebCore::ReplaceSelectionCommand::doApply):
2595 * editing/SelectionController.cpp:
2596 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
2597 (WebCore::SelectionController::setSelectedRange):
2598 * editing/TextIterator.cpp:
2599 (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2600 * editing/TypingCommand.cpp:
2601 (WebCore::TypingCommand::deleteKeyPressed):
2602 * editing/VisiblePosition.cpp:
2603 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2604 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2605 (WebCore::VisiblePosition::canonicalPosition):
2606 (WebCore::VisiblePosition::characterAfter):
2607 (WebCore::VisiblePosition::localCaretRect):
2608 (WebCore::makeRange):
2609 (WebCore::startVisiblePosition):
2610 (WebCore::endVisiblePosition):
2611 (WebCore::setStart):
2613 (WebCore::isFirstVisiblePositionInNode):
2614 (WebCore::isLastVisiblePositionInNode):
2615 * editing/VisiblePosition.h:
2616 (WebCore::VisiblePosition::VisiblePosition):
2617 * editing/htmlediting.cpp:
2618 (WebCore::firstInSpecialElement):
2619 (WebCore::lastInSpecialElement):
2620 (WebCore::visiblePositionBeforeNode):
2621 (WebCore::visiblePositionAfterNode):
2622 * editing/visible_units.cpp:
2623 (WebCore::startPositionForLine):
2624 (WebCore::endPositionForLine):
2625 (WebCore::previousLinePosition):
2626 (WebCore::nextLinePosition):
2627 (WebCore::startOfParagraph):
2628 (WebCore::endOfParagraph):
2629 (WebCore::endOfBlock):
2630 (WebCore::startOfDocument):
2631 (WebCore::endOfDocument):
2632 (WebCore::logicalStartPositionForLine):
2633 (WebCore::logicalEndPositionForLine):
2634 * page/DOMSelection.cpp:
2635 (WebCore::DOMSelection::collapse):
2636 (WebCore::DOMSelection::setBaseAndExtent):
2637 (WebCore::DOMSelection::setPosition):
2638 (WebCore::DOMSelection::extend):
2639 * page/EventHandler.cpp:
2640 (WebCore::EventHandler::handleMousePressEventSingleClick):
2641 * rendering/RenderObject.cpp:
2642 (WebCore::RenderObject::createVisiblePosition):
2643 * rendering/RenderTextControl.cpp:
2644 (WebCore::RenderTextControl::visiblePositionForIndex):
2645 * svg/SVGTextContentElement.cpp:
2646 (WebCore::SVGTextContentElement::selectSubString):
2648 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
2650 Reviewed by Steve Block.
2652 When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
2653 https://bugs.webkit.org/show_bug.cgi?id=54785
2655 This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
2656 the right thing and continue to do the right thing. It also modifies EventQueue
2657 so that we can cancel an event. To do this efficiently, the vector is now a
2660 Cancelling the event is harder/messier, but the most deterministic thing to do.
2661 To the user, the work isn't done until we fire the onsuccess/onerror handler.
2662 So the event (which does fire that) needs to be cancelable.
2664 transaction-abort.html tests this.
2666 * dom/EventQueue.cpp:
2667 (WebCore::EventQueue::enqueueEvent):
2668 (WebCore::EventQueue::cancelEvent):
2669 (WebCore::EventQueue::pendingEventTimerFired):
2670 (WebCore::EventQueue::dispatchEvent):
2672 * dom/ExceptionCode.cpp:
2673 * storage/IDBCursor.cpp:
2674 (WebCore::IDBCursor::update):
2675 (WebCore::IDBCursor::deleteFunction):
2676 * storage/IDBDatabaseBackendImpl.cpp:
2677 (WebCore::IDBDatabaseBackendImpl::close):
2678 * storage/IDBDatabaseException.h:
2679 * storage/IDBIndex.cpp:
2680 (WebCore::IDBIndex::openCursor):
2681 (WebCore::IDBIndex::openKeyCursor):
2682 (WebCore::IDBIndex::get):
2683 (WebCore::IDBIndex::getKey):
2684 * storage/IDBObjectStore.cpp:
2685 (WebCore::IDBObjectStore::get):
2686 (WebCore::IDBObjectStore::add):
2687 (WebCore::IDBObjectStore::put):
2688 (WebCore::IDBObjectStore::deleteFunction):
2689 (WebCore::IDBObjectStore::clear):
2690 (WebCore::IDBObjectStore::openCursor):
2691 * storage/IDBRequest.cpp:
2692 (WebCore::IDBRequest::IDBRequest):
2693 (WebCore::IDBRequest::~IDBRequest):
2694 (WebCore::IDBRequest::readyState):
2695 (WebCore::IDBRequest::markEarlyDeath):
2696 (WebCore::IDBRequest::source):
2697 (WebCore::IDBRequest::abort):
2698 (WebCore::IDBRequest::onSuccess):
2699 (WebCore::IDBRequest::dispatchEvent):
2700 (WebCore::IDBRequest::enqueueEvent):
2701 * storage/IDBRequest.h:
2702 * storage/IDBTransaction.cpp:
2703 (WebCore::IDBTransaction::registerRequest):
2704 (WebCore::IDBTransaction::unregisterRequest):
2705 (WebCore::IDBTransaction::onAbort):
2706 * storage/IDBTransaction.h:
2708 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
2710 Reviewed by Mihai Parparita.
2712 EventQueue needs to be ref counted
2713 https://bugs.webkit.org/show_bug.cgi?id=55512
2715 EventQueue needs to be ref counted because it's possible for its instance
2716 to be deleted while it's dispatching events. This is the reason why
2717 https://bugs.webkit.org/show_bug.cgi?id=54785 had to be reverted.
2719 No change of behavior, so no tests.
2722 * dom/EventQueue.cpp:
2723 (WebCore::EventQueue::create):
2726 2011-03-01 Helder Correia <helder@sencha.com>
2728 Reviewed by Simon Fraser.
2730 No shadow when stroking a path with a gradient
2731 https://bugs.webkit.org/show_bug.cgi?id=55436
2733 This happens in CG and is related to bug 52509, this time to be fixed
2734 in GraphicsContext::strokePath(). The gradient needs to be drawn
2735 clipped to the stroke on a CGLayer first, then the layer drawn on the
2738 Tests: fast/canvas/canvas-strokePath-gradient-shadow.html
2739 svg/css/path-gradient-stroke-shadow.svg
2741 * platform/graphics/cg/GraphicsContextCG.cpp:
2742 (WebCore::GraphicsContext::strokePath):
2744 2011-03-01 David Hyatt <hyatt@apple.com>
2746 Reviewed by Dan Bernstein.
2748 Fix Font::spaceWidth() to be a float instead of an int.
2750 * platform/graphics/Font.h:
2751 (WebCore::Font::spaceWidth):
2753 2011-02-28 Steve Block <steveblock@google.com>
2755 Reviewed by Jeremy Orlow.
2757 Chromium gypi file should include Java bridge files from WebCore/bridge
2758 https://bugs.webkit.org/show_bug.cgi?id=55387
2760 No new tests, no code changes.
2762 * WebCore.gyp/WebCore.gyp:
2765 2011-03-01 James Simonsen <simonjam@chromium.org>
2767 Reviewed by Tony Gentilcore.
2769 [Web Timing] Handle the case where no responseEnd time is available.
2770 https://bugs.webkit.org/show_bug.cgi?id=55444
2772 * loader/MainResourceLoader.cpp:
2773 (WebCore::MainResourceLoader::MainResourceLoader): Initialize to 0.
2774 (WebCore::MainResourceLoader::didFinishLoading): Fall back to current time if no other time is available.
2776 2011-03-01 Patrick Gansterer <paroga@webkit.org>
2778 Unreviewed, adding missing change for r80034.
2780 Add a handler class for Win32 HANDLE
2781 https://bugs.webkit.org/show_bug.cgi?id=55334
2783 * platform/win/Win32Handle.h: Added missing WTF_MAKE_NONCOPYABLE macro.
2785 2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2787 Unreviewed, rolling out r80037.
2788 http://trac.webkit.org/changeset/80037
2789 https://bugs.webkit.org/show_bug.cgi?id=55508
2791 broke compile on SL (Requested by tonyg-cr on #webkit).
2798 * WebCore.vcproj/WebCore.vcproj:
2799 * WebCore.xcodeproj/project.pbxproj:
2800 * css/CSSParser.cpp:
2801 (WebCore::CSSParser::parseValue):
2803 * css/CSSStyleSelector.cpp:
2804 (WebCore::CSSStyleSelector::applyProperty):
2808 * rendering/RenderBlockLineLayout.cpp:
2809 (WebCore::dirtyLineBoxesForRenderer):
2810 * rendering/RenderObject.h:
2811 * rendering/RenderObjectChildList.cpp:
2812 (WebCore::RenderObjectChildList::removeChildNode):
2813 (WebCore::RenderObjectChildList::appendChildNode):
2814 (WebCore::RenderObjectChildList::insertChildNode):
2815 (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2816 * rendering/RenderQuote.cpp: Removed.
2817 * rendering/RenderQuote.h: Removed.
2818 * rendering/RenderingAllInOne.cpp:
2819 * rendering/style/ContentData.cpp:
2820 (WebCore::ContentData::dataEquivalent):
2821 (WebCore::ContentData::deleteContent):
2822 * rendering/style/ContentData.h:
2823 * rendering/style/QuotesData.cpp: Removed.
2824 * rendering/style/QuotesData.h: Removed.
2825 * rendering/style/RenderStyle.cpp:
2826 * rendering/style/RenderStyle.h:
2827 * rendering/style/RenderStyleConstants.h:
2828 * rendering/style/StyleAllInOne.cpp:
2829 * rendering/style/StyleRareInheritedData.cpp:
2830 (WebCore::StyleRareInheritedData::operator==):
2831 * rendering/style/StyleRareInheritedData.h:
2833 2011-03-01 Abhishek Arya <inferno@chromium.org>
2835 Reviewed by Dave Hyatt.
2837 Paint outline for tables.
2838 https://bugs.webkit.org/show_bug.cgi?id=55474
2840 Test: fast/table/table-and-parts-outline.html
2842 * rendering/RenderTable.cpp:
2843 (WebCore::RenderTable::paintObject):
2845 2011-03-01 Sheriff Bot <webkit.review.bot@gmail.com>
2847 Unreviewed, rolling out r80028.
2848 http://trac.webkit.org/changeset/80028
2849 https://bugs.webkit.org/show_bug.cgi?id=55502
2851 'caused crashes; rolling out while investigating' (Requested
2852 by jorlow on #webkit).
2854 * dom/EventQueue.cpp:
2855 (WebCore::EventQueue::enqueueEvent):
2856 (WebCore::EventQueue::pendingEventTimerFired):
2857 (WebCore::EventQueue::dispatchEvent):
2859 * dom/ExceptionCode.cpp:
2860 * storage/IDBCursor.cpp:
2861 (WebCore::IDBCursor::update):
2862 (WebCore::IDBCursor::deleteFunction):
2863 * storage/IDBDatabaseException.h:
2864 * storage/IDBDatabaseException.idl:
2865 * storage/IDBIndex.cpp:
2866 (WebCore::IDBIndex::openCursor):
2867 (WebCore::IDBIndex::openKeyCursor):
2868 (WebCore::IDBIndex::get):
2869 (WebCore::IDBIndex::getKey):
2870 * storage/IDBObjectStore.cpp:
2871 (WebCore::IDBObjectStore::get):
2872 (WebCore::IDBObjectStore::add):
2873 (WebCore::IDBObjectStore::put):
2874 (WebCore::IDBObjectStore::deleteFunction):
2875 (WebCore::IDBObjectStore::clear):
2876 (WebCore::IDBObjectStore::openCursor):
2877 * storage/IDBRequest.cpp:
2878 (WebCore::IDBRequest::IDBRequest):
2879 (WebCore::IDBRequest::~IDBRequest):
2880 (WebCore::IDBRequest::readyState):
2881 (WebCore::IDBRequest::dispatchEvent):
2882 (WebCore::IDBRequest::enqueueEvent):
2883 (WebCore::IDBRequest::source):
2884 * storage/IDBRequest.h:
2885 * storage/IDBTransaction.cpp:
2886 (WebCore::IDBTransaction::onAbort):
2887 * storage/IDBTransaction.h:
2889 2011-03-01 Carol Szabo <carol.szabo@nokia.com>
2891 Reviewed by David Hyatt <hyatt@apple.com>
2893 content property doesn't support quotes
2894 https://bugs.webkit.org/show_bug.cgi?id=6503
2896 Added full support for quotes as defined by CSS 2.1.
2898 Tests: fast/css/content/content-quotes-01.html
2899 fast/css/content/content-quotes-02.html
2900 fast/css/content/content-quotes-03.html
2901 fast/css/content/content-quotes-04.html
2902 fast/css/content/content-quotes-05.html
2908 * WebCore.vcproj/WebCore.vcproj:
2909 * WebCore.xcodeproj/project.pbxproj:
2910 Added RenderQuote.cpp/h and QuotesData.cpp/h to the dependency lists
2911 * css/CSSParser.cpp:
2912 (WebCore::CSSParser::parseValue):
2913 (WebCore::CSSParser::parseQuotes):
2915 Added needed stylesheet parsing support for quotes,
2916 (no-)open-quote and (no-)close-quote
2917 * css/CSSStyleSelector.cpp:
2918 (WebCore::CSSStyleSelector::applyProperty):
2919 Handled setting of the new quotes RenderStyle property and added
2920 handling of quotes for the content property.
2924 replaced the '"' workaround with open/close-quote
2925 * rendering/RenderBlockLineLayout.cpp:
2926 (WebCore::dirtyLineBoxesForRenderer):
2927 Made RenderQuote behave like RenderCounter.
2928 Needed to ensure that the Quote text is calculated before layout,
2929 just as it is for RenderCounter.
2930 * rendering/RenderObject.h:
2931 (WebCore::RenderObject::isQuote):
2932 * rendering/RenderObjectChildList.cpp:
2933 (WebCore::RenderObjectChildList::removeChildNode):
2934 (WebCore::RenderObjectChildList::appendChildNode):
2935 (WebCore::RenderObjectChildList::insertChildNode):
2936 Handled updating of quote depth when renderers are added and removed
2938 (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2939 * rendering/RenderQuote.cpp: Added.
2940 (WebCore::adjustDepth):
2941 (WebCore::RenderQuote::RenderQuote):
2942 (WebCore::RenderQuote::~RenderQuote):
2943 (WebCore::RenderQuote::renderName):
2944 (WebCore::RenderQuote::placeQuote):
2945 (WebCore::RenderQuote::originalText):
2946 (WebCore::RenderQuote::computePreferredLogicalWidths):
2947 (WebCore::RenderQuote::rendererSubtreeAttached):
2948 (WebCore::RenderQuote::rendererRemovedFromTree):
2949 (WebCore::RenderQuote::styleDidChange):
2950 * rendering/RenderQuote.h: Added.
2951 (WebCore::RenderQuote::isQuote):
2952 (WebCore::toRenderQuote):
2953 * rendering/RenderingAllInOne.cpp:
2954 Included RenderQuote.cpp
2955 * rendering/style/StyleAllInOne.cpp:
2956 Included QuotesData.cpp
2957 * rendering/style/ContentData.cpp:
2958 (WebCore::ContentData::dataEquivalent):
2959 Checked for quotetype identity.
2960 (WebCore::ContentData::deleteContent):
2961 Accounted for the new QUOTE_TYPE.
2962 * rendering/style/ContentData.h:
2963 (WebCore::ContentData::isQuote):
2964 (WebCore::ContentData::quote):
2965 (WebCore::ContentData::setQuote):
2966 * rendering/style/RenderStyle.cpp:
2967 (WebCore::RenderStyle::setContent):
2968 * rendering/style/RenderStyle.h:
2969 (WebCore::InheritedFlags::quotes):
2970 (WebCore::InheritedFlags::setQuotes):
2971 * rendering/style/RenderStyleConstants.h:
2972 * rendering/style/StyleRareInheritedData.cpp:
2973 (WebCore::StyleRareInheritedData::operator==):
2974 Included quotes in equality check.
2975 * rendering/style/StyleRareInheritedData.h:
2978 2011-03-01 Michael Nordman <michaeln@google.com>
2980 Reviewed by Alexey Proskuryakov.
2982 Alter the relative priorities of network vs fallback namespaces in the appcache.
2983 If a resource url is in an appcache's network namespace and fallback namespace, the network
2984 namespace wins (with the exception of the special '*' network namespace which does not take
2985 priority over the fallback namespace.
2986 https://bugs.webkit.org/show_bug.cgi?id=49292
2988 Test: http/tests/appcache/online-fallback-layering.html
2990 * loader/appcache/ApplicationCache.cpp:
2991 (WebCore::ApplicationCache::isURLInOnlineWhitelist):
2992 * loader/appcache/ApplicationCacheHost.cpp:
2993 (WebCore::ApplicationCacheHost::shouldLoadResourceFromApplicationCache):
2994 (WebCore::ApplicationCacheHost::getApplicationCacheFallbackResource):
2995 * loader/appcache/ApplicationCacheStorage.cpp:
2996 (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
2998 2011-03-01 Patrick Gansterer <paroga@webkit.org>
3000 Reviewed by Adam Roben.
3002 Add a handler class for Win32 HANDLE
3003 https://bugs.webkit.org/show_bug.cgi?id=55334
3005 This class will call CloseHandle in the destructor for valid handles.
3007 * platform/win/Win32Handle.h: Added.
3009 2011-03-01 Eric Carlson <eric.carlson@apple.com>
3011 Reviewed by Chris Marrin.
3013 <audio> and <video> should respect private browsing mode
3014 https://bugs.webkit.org/show_bug.cgi?id=55287
3015 <rdar://problem/9057699>
3017 No new tests, this is just the plumbing.
3020 (WebCore::Document::privateBrowsingStateDidChange): New.
3021 (WebCore::Document::registerForPrivateBrowsingStateChangedCallbacks): Ditto.
3022 (WebCore::Document::unregisterForPrivateBrowsingStateChangedCallbacks): Ditto.
3026 (WebCore::Element::privateBrowsingStateDidChange): New.
3028 * html/HTMLMediaElement.cpp:
3029 (WebCore::HTMLMediaElement::HTMLMediaElement): Register for privacy mode changes.
3030 (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for privacy mode changes.
3031 (WebCore::HTMLMediaElement::loadResource): Tell player current privacy mode.
3032 (WebCore::HTMLMediaElement::privateBrowsingStateDidChange): New, call through to MediaPlayer.
3033 * html/HTMLMediaElement.h:
3036 (WebCore::Page::privateBrowsingStateChanged): Call document()->privateBrowsingStateDidChange.
3038 * platform/graphics/MediaPlayer.cpp:
3039 (WebCore::MediaPlayer::setPrivateBrowsingMode): New, call through to media engine.
3040 * platform/graphics/MediaPlayer.h:
3042 * platform/graphics/MediaPlayerPrivate.h:
3043 (WebCore::MediaPlayerPrivateInterface::setPrivateBrowsingMode): Declare new interface.
3045 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
3047 Reviewed by Steve Block.
3049 When an IDBTransaction is aborted, all requests that have not yet fired should fire an ABORT_ERR
3050 https://bugs.webkit.org/show_bug.cgi?id=54785
3052 This patch adds in a lot of sanity checks/ASSERTs to make sure we're doing
3053 the right thing and continue to do the right thing. It also modifies EventQueue
3054 so that we can cancel an event. To do this efficiently, the vector is now a
3057 Canelling the event is harder/messier, but the most deterministic thing to do.
3058 To the user, the work isn't done until we fire the onsuccess/onerror handler.
3059 So the event (which does fire that) needs to be cancelable.
3061 transaction-abort.html tests this.
3063 * dom/EventQueue.cpp:
3064 (WebCore::EventQueue::enqueueEvent):
3065 (WebCore::EventQueue::cancelEvent):
3066 (WebCore::EventQueue::pendingEventTimerFired):
3067 (WebCore::EventQueue::dispatchEvent):
3069 * dom/ExceptionCode.cpp:
3070 * storage/IDBCursor.cpp:
3071 (WebCore::IDBCursor::update):
3072 (WebCore::IDBCursor::deleteFunction):
3073 * storage/IDBDatabaseBackendImpl.cpp:
3074 (WebCore::IDBDatabaseBackendImpl::close):
3075 * storage/IDBDatabaseException.h:
3076 * storage/IDBIndex.cpp:
3077 (WebCore::IDBIndex::openCursor):
3078 (WebCore::IDBIndex::openKeyCursor):
3079 (WebCore::IDBIndex::get):
3080 (WebCore::IDBIndex::getKey):
3081 * storage/IDBObjectStore.cpp:
3082 (WebCore::IDBObjectStore::get):
3083 (WebCore::IDBObjectStore::add):
3084 (WebCore::IDBObjectStore::put):
3085 (WebCore::IDBObjectStore::deleteFunction):
3086 (WebCore::IDBObjectStore::clear):
3087 (WebCore::IDBObjectStore::openCursor):
3088 * storage/IDBRequest.cpp:
3089 (WebCore::IDBRequest::IDBRequest):
3090 (WebCore::IDBRequest::~IDBRequest):
3091 (WebCore::IDBRequest::readyState):
3092 (WebCore::IDBRequest::markEarlyDeath):
3093 (WebCore::IDBRequest::source):
3094 (WebCore::IDBRequest::abort):
3095 (WebCore::IDBRequest::onSuccess):
3096 (WebCore::IDBRequest::dispatchEvent):
3097 (WebCore::IDBRequest::enqueueEvent):
3098 * storage/IDBRequest.h:
3099 * storage/IDBTransaction.cpp:
3100 (WebCore::IDBTransaction::registerRequest):
3101 (WebCore::IDBTransaction::unregisterRequest):
3102 (WebCore::IDBTransaction::onAbort):
3103 * storage/IDBTransaction.h:
3105 2011-03-01 Jeremy Orlow <jorlow@chromium.org>
3107 Reviewed by Steve Block.
3109 Only IndexedDB's error event should be cancelable
3110 https://bugs.webkit.org/show_bug.cgi?id=55413
3112 * storage/IDBRequest.cpp:
3113 (WebCore::createSuccessEvent):
3114 * storage/IDBTransaction.cpp:
3115 (WebCore::IDBTransaction::onAbort):
3116 (WebCore::IDBTransaction::onComplete):
3118 2011-03-01 Jia Pu <jpu@apple.com>
3120 Reviewed by Darin Adler.
3122 Remove CorrectionIndicator markers sooner.
3123 https://bugs.webkit.org/show_bug.cgi?id=54893
3124 <rdar://problem/8997524>
3126 Test: platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html
3128 This patch changes the autocorrection behavior on Mac OS X. We want to remove CorrectionIndicator
3129 marker after any editing command if the command:
3130 1. is not a SpellingCorrectionCommand itself.
3131 2. is not the command that triggers the autocorrection.
3132 This is achieved by adding shouldRetainAutocorrectionIndicator() function to EditCommand. This function returns
3133 false for all commands derived from EditCommand, except SpellingCorrectionCommand and TypingCommand. This function
3134 always returns true for SpellingCorrectionCommand. For TypingCommand, the return value is determined by member
3135 variable m_shouldRetainAutocorrectionIndicator, which can be modified by passing option into the TypingCommand's
3138 To avoid constantly searching marker list, we use variable DocumentMarkerController::m_absentMarkerTypeCache
3139 to cache whether there is any marker of a particular type.
3141 This patch also fixes two minor existing bugs.
3143 1. We used to show reversion panel for word with CorrectionIndicator marker. This is incorrect because
3144 CorrectionIndicator marker can be removed from corrected words. Since all autocorrected words have Replacement
3145 marker unless the whole word is deleted, the correct behavior is to show reversion panel for word with Replacement
3146 marker, since all autocorrected words have such marker. However, since we don't want to show the reversion panel
3147 if an autocorrected word has been edited, we also check to see if the Replacement marker's description is null.
3149 This works as following:
3150 When we apply an autocorrection, we add Replacement marker to corrected word, and store original word
3151 as the marker's description. If the user edited the corrected word afterward, we set description to null.
3152 So when we decide whether to show a reversion panel, we not only check for the existence of Replacement
3153 marker, but also check if description is null.
3155 2. Fixed an assertion violation in Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited(), which would
3156 occur when deleting the first character in an editable area.
3158 * dom/DocumentMarker.h: Added m_possiblyExistingMarkerTypes to allow quickly checking whether a marker type is
3159 completely in from the document.
3161 * dom/DocumentMarkerController.cpp: Most of the functions listed here are optimized for early return by checking
3162 the return value of possiblyHasMarkers() at beginning.
3163 (WebCore::DocumentMarkerController::possiblyHasMarkers):
3164 (WebCore::DocumentMarkerController::DocumentMarkerController):
3165 (WebCore::DocumentMarkerController::detach):
3166 (WebCore::DocumentMarkerController::removeMarkers):
3167 (WebCore::DocumentMarkerController::addMarker):
3168 (WebCore::DocumentMarkerController::copyMarkers):
3169 (WebCore::DocumentMarkerController::markerContainingPoint):
3170 (WebCore::DocumentMarkerController::renderedRectsForMarkers):
3171 (WebCore::DocumentMarkerController::removeMarkersFromMarkerMapVectorPair):
3172 (WebCore::DocumentMarkerController::repaintMarkers):
3173 (WebCore::DocumentMarkerController::shiftMarkers):
3174 (WebCore::DocumentMarkerController::setMarkersActive):
3175 (WebCore::DocumentMarkerController::hasMarkers):
3176 (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
3177 * dom/DocumentMarkerController.h:
3178 * editing/EditCommand.cpp:
3179 (WebCore::EditCommand::apply):
3180 (WebCore::EditCommand::shouldRetainAutocorrectionIndicator):
3181 (WebCore::EditCommand::setShouldRetainAutocorrectionIndicator):
3182 * editing/EditCommand.h:
3183 * editing/Editor.cpp:
3184 (WebCore::Editor::respondToChangedSelection):
3185 (WebCore::Editor::appliedEditing):
3186 (WebCore::Editor::insertTextWithoutSendingTextEvent):
3187 (WebCore::Editor::insertLineBreak):
3188 (WebCore::Editor::insertParagraphSeparator):
3189 (WebCore::Editor::markMisspellingsAfterTypingToWord):
3190 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
3191 (WebCore::Editor::removeSpellAndCorrectionMarkersFromWordsToBeEdited):
3192 (WebCore::Editor::applyAutocorrectionBeforeTypingIfAppropriate):
3194 * editing/EditorCommand.cpp:
3195 (WebCore::executeInsertLineBreak):
3196 (WebCore::executeInsertParagraph):
3197 (WebCore::executeInsertText):
3198 * editing/SpellingCorrectionCommand.cpp:
3199 (WebCore::SpellingCorrectionCommand::shouldRetainAutocorrectionIndicator):
3200 * editing/SpellingCorrectionCommand.h:
3201 * editing/TypingCommand.cpp:
3202 (WebCore::TypingCommand::TypingCommand):
3203 (WebCore::TypingCommand::deleteSelection):
3204 (WebCore::TypingCommand::deleteKeyPressed):
3205 (WebCore::TypingCommand::forwardDeleteKeyPressed):
3206 (WebCore::TypingCommand::updateSelectionIfDifferentFromCurrentSelection):
3207 (WebCore::TypingCommand::insertText):
3208 (WebCore::TypingCommand::insertLineBreak):
3209 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
3210 (WebCore::TypingCommand::insertParagraphSeparator):
3211 * editing/TypingCommand.h:
3212 (WebCore::TypingCommand::create):
3213 (WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):
3214 (WebCore::TypingCommand::setShouldRetainAutocorrectionIndicator):
3215 * manual-tests/autocorrection/type-whitespace-to-dismiss-reversion.html:
3217 2011-03-01 Renata Hodovan <reni@webkit.org>
3219 Reviewed by Andreas Kling.
3221 FEDisplacementMapElement changes doesn't require relayout
3222 https://bugs.webkit.org/show_bug.cgi?id=55454
3224 When the FEDisplacementMapElement receives an update message but the given value remains the same we don't need
3225 to relayout the filter.
3227 No new tests are needed because this modification is covered by the dynamic update tests of FEDisplacementMap.
3229 * platform/graphics/filters/FEDisplacementMap.cpp:
3230 (WebCore::FEDisplacementMap::setXChannelSelector):
3231 (WebCore::FEDisplacementMap::setYChannelSelector):
3232 (WebCore::FEDisplacementMap::setScale):
3233 * platform/graphics/filters/FEDisplacementMap.h:
3234 * svg/SVGFEDisplacementMapElement.cpp:
3235 (WebCore::SVGFEDisplacementMapElement::setFilterEffectAttribute):
3236 (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged):
3237 * svg/SVGFEDisplacementMapElement.h:
3239 2011-03-01 Dan Bernstein <mitz@apple.com>
3241 Reviewed by Darin Adler.
3243 <rdar://problem/8902714> Expand ruby text when it is shorter than the ruby base
3244 https://bugs.webkit.org/show_bug.cgi?id=55487
3247 (ruby > rt): Changed the default text-align value to -webkit-auto to signal
3248 the default expansion behavior.
3249 * rendering/RenderBlock.h:
3250 (WebCore::RenderRubyText::textAlignmentForLine): Made protected.
3251 (WebCore::RenderBlock::adjustInlineDirectionLineBounds): Made protected.
3252 * rendering/RenderRubyText.cpp:
3253 (WebCore::RenderRubyText::textAlignmentForLine): Added. If text-align is
3254 -webkit-auto, returns JUSTIFY to allow expansion.
3255 (WebCore::RenderRubyText::adjustInlineDirectionLineBounds): Added. If
3256 text-align is -webkit-auto, insets the line such that the inset on each side
3257 is the half the inter-ideograph expansion, or one ruby character wide,
3258 whichever is smaller.
3259 * rendering/RenderRubyText.h:
3261 2011-03-01 Sam Weinig <sam@webkit.org>
3263 Reviewed by Timothy Hatcher.
3265 WebKit2 needs to be made localizable
3266 https://bugs.webkit.org/show_bug.cgi?id=55483
3268 * English.lproj/Localizable.strings: Copied from Source/WebKit/English.lproj/Localizable.strings.
3269 * WebCore.xcodeproj/project.pbxproj:
3270 Move Localizable.strings to WebCore.
3273 Add export for localizedString function.
3275 * platform/LocalizedStrings.h:
3276 * platform/mac/LocalizedStringsMac.mm: Added.
3277 Add function to get localized version of a string from the WebCore bundle.
3279 2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
3281 Reviewed by Timothy Hatcher.
3283 All Console Messages should be passed to ChromeClients.
3284 https://bugs.webkit.org/show_bug.cgi?id=54926
3286 Do not filter the message type here, allow clients
3287 to filter and deal with the different message types.
3290 (WebCore::Console::addMessage):
3292 2011-02-23 Joseph Pecoraro <joepeck@webkit.org>
3294 Reviewed by Kenneth Rohde Christiansen.
3296 Viewport parsing no longer accepts "1.0;" value as valid.
3297 https://bugs.webkit.org/show_bug.cgi?id=53705
3299 When parsing numeric values, the "css-viewport" spec says
3300 to use the number prefix, and the non numeric part of the
3301 string can be ignored. This matches our behavior before
3302 r67376. The change was that checking the error out condition
3303 of String::toFloat doesn't necessarily mean that there
3304 was a non-numeric prefix. This patch checks if there was
3305 or wasn't a non-numeric prefix.
3307 There is a console warning in any case where a numeric
3308 value is not parsed cleanly. There is an error warning
3309 when it is not a number at all, and a tip warning when
3310 it has been truncated.
3312 Error messages are slightly improved to provide more
3313 context, both the key and value, when an error happens.
3315 Test: fast/viewport/viewport-129.html
3317 * dom/ViewportArguments.cpp:
3318 (WebCore::numericPrefix):
3319 (WebCore::findSizeValue):
3320 (WebCore::findScaleValue):
3321 (WebCore::findUserScalableValue):
3322 (WebCore::findTargetDensityDPIValue):
3323 (WebCore::viewportErrorMessageTemplate):
3324 (WebCore::viewportErrorMessageLevel):
3325 (WebCore::reportViewportWarning):
3326 * dom/ViewportArguments.h:
3328 2011-03-01 Ilya Tikhonovsky <loislo@chromium.org>
3330 Reviewed by Pavel Feldman.
3332 Web Inspector: InjectedScript.setPropertyValue doesn't work.
3333 https://bugs.webkit.org/show_bug.cgi?id=55475
3335 * inspector/InjectedScript.cpp:
3336 (WebCore::InjectedScript::setPropertyValue):
3338 2011-03-01 Steve Block <steveblock@google.com>
3340 Reviewed by Jeremy Orlow.
3342 Remove unused JavaString::uchars()
3343 https://bugs.webkit.org/show_bug.cgi?id=55465
3345 No new tests, removing dead code only.
3347 * bridge/jni/JNIBridge.h:
3348 * bridge/jni/jsc/JavaStringJSC.h:
3349 (JSC::Bindings::JavaStringImpl::utf8):
3350 * bridge/jni/v8/JavaStringV8.h:
3352 2011-03-01 Alexander Pavlov <apavlov@chromium.org>
3354 Reviewed by Yury Semikhatsky.
3356 Web Inspector: Extremely slow DOM search in GMail
3357 https://bugs.webkit.org/show_bug.cgi?id=55456
3359 The solution comprises three major parts:
3360 - avoid multiple invocations of highlightSearchResults(), one per each nodeIds chunk.
3361 - cache highlighted node's innerHTML so that no extra _nodeTitleInfo() calls will be needed.
3362 - replace hand-written Text nodes iteration with a snapshot-based ".//text()" XPathResult.
3364 * inspector/front-end/ElementsPanel.js:
3365 (WebInspector.ElementsPanel.prototype.searchCanceled):
3366 (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
3367 * inspector/front-end/ElementsTreeOutline.js:
3368 (WebInspector.ElementsTreeElement.prototype.highlightSearchResults):
3369 (WebInspector.ElementsTreeElement.prototype.updateTitle):
3371 * inspector/front-end/utilities.js:
3374 2011-03-01 Adam Roben <aroben@apple.com>
3376 Fix multiple-definition linker warnings introduced by r79978 on Windows
3378 * rendering/RenderingAllInOne.cpp: Removed TextControlInnerElements.cpp, as it is now being
3379 compiled separately.
3381 2011-03-01 Andras Becsi <abecsi@webkit.org>
3383 Reviewed by Csaba Osztrogonác.
3385 [Qt] Clean up the project files and move common options to WebKit.pri.
3387 No new tests needed.
3389 * WebCore.pri: Move common options to WebKit.pri.
3390 * WebCore.pro: Ditto.
3392 2011-03-01 Steve Block <steveblock@google.com>
3394 Reviewed by Pavel Feldman.
3396 JNI code in Java bridge is not correctly guarded
3397 https://bugs.webkit.org/show_bug.cgi?id=55459
3399 No new tests, build fix only.
3401 * bridge/jni/v8/JNIBridgeV8.cpp:
3402 * bridge/jni/v8/JNIBridgeV8.h:
3403 * bridge/jni/v8/JNIUtilityPrivate.cpp:
3404 * bridge/jni/v8/JNIUtilityPrivate.h:
3405 * bridge/jni/v8/JavaClassV8.cpp:
3406 * bridge/jni/v8/JavaClassV8.h:
3407 * bridge/jni/v8/JavaInstanceV8.cpp:
3408 * bridge/jni/v8/JavaInstanceV8.h:
3409 * bridge/jni/v8/JavaNPObjectV8.cpp:
3410 * bridge/jni/v8/JavaNPObjectV8.h:
3412 2011-03-01 Steve Block <steveblock@google.com>
3414 Reviewed by Jeremy Orlow.
3416 Bridge.h should not include BridgeJSC.h
3417 https://bugs.webkit.org/show_bug.cgi?id=55212
3419 Instead, BridgeJSC.h should include Bridge.h and code should include
3420 BridgeJSC.h as appropriate.
3422 This prevents ports that use V8 from having to include JSC-specific
3423 files, even if the contents of those files are guarded.
3425 No new tests, cleanup only.
3427 * bindings/js/JSPluginElementFunctions.cpp:
3428 * bindings/js/ScriptControllerBrew.cpp:
3429 * bindings/js/ScriptControllerGtk.cpp:
3430 * bindings/js/ScriptControllerHaiku.cpp:
3431 * bindings/js/ScriptControllerQt.cpp:
3432 * bindings/js/ScriptControllerMac.mm:
3433 * bindings/js/ScriptControllerWin.cpp:
3434 * bindings/js/ScriptControllerWx.cpp:
3435 * bindings/js/ScriptInstance.h:
3436 * bindings/objc/WebScriptObject.mm:
3438 * bridge/c/c_class.h:
3439 * bridge/c/c_instance.h:
3440 * bridge/c/c_runtime.h:
3441 * bridge/jni/jsc/JNIBridgeJSC.h:
3442 * bridge/jni/jsc/JavaInstanceJSC.h:
3443 * bridge/jsc/BridgeJSC.h:
3444 * bridge/objc/objc_runtime.h:
3445 * bridge/qt/qt_class.h:
3446 * bridge/qt/qt_instance.h:
3447 * bridge/qt/qt_pixmapruntime.h:
3448 * bridge/qt/qt_runtime.h:
3449 * bridge/runtime_array.h:
3450 * bridge/runtime_method.h:
3451 * bridge/runtime_object.h:
3452 * bridge/runtime_root.cpp:
3453 * bridge/testbindings.cpp:
3454 * bridge/testbindings.mm:
3455 * bridge/testqtbindings.cpp:
3456 * page/win/FrameWin.cpp:
3457 * platform/graphics/wince/MediaPlayerProxy.cpp:
3458 * plugins/PluginView.cpp:
3459 * plugins/PluginViewNone.cpp:
3460 * plugins/gtk/PluginViewGtk.cpp:
3461 * plugins/mac/PluginViewMac.mm:
3462 * plugins/qt/PluginViewQt.cpp:
3463 * plugins/symbian/PluginViewSymbian.cpp:
3464 * plugins/win/PluginViewWin.cpp:
3466 2011-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
3468 Reviewed by Antti Koivisto.
3470 SVG 1.1 2nd Edition color-prop-05-t.svg exposes bug in 'currentColor' handling
3471 https://bugs.webkit.org/show_bug.cgi?id=54800
3473 Wrong handling of currentColor on inherit
3474 https://bugs.webkit.org/show_bug.cgi?id=38102
3476 Stop storing RefPtr<SVGPaint> objects in the SVGRenderStyle for fill/stroke. These are the last
3477 two objects that held references to CSSValues, they're all gone now, aligning better with RenderStyle.
3478 It's also dangerous, as a SVGPaint object can be shared by multiple SVGRenderStyles (MappedAttribute will
3479 once create a CSSStyleDeclaration