1 2011-04-07 Nancy Piedra <nancy.piedra@nokia.com>
3 Reviewed by Eric Carlson.
5 Parse quotes from content type parameters
6 https://bugs.webkit.org/show_bug.cgi?id=53275
8 This functionality is tested in video-can-play-type.html layout test
9 where I've added codecs parameter with good and bad formatting.
11 * platform/ContentType.cpp:
12 (WebCore::ContentType::parameter):
14 2011-04-07 Pavel Feldman <pfeldman@google.com>
16 Reviewed by Yury Semikhatsky.
18 Web Inspector: remove "enabled" from the setBreakpoint protocol.
19 https://bugs.webkit.org/show_bug.cgi?id=58047
21 * bindings/js/ScriptDebugServer.cpp:
22 (WebCore::ScriptDebugServer::hasBreakpoint):
23 * bindings/v8/DebuggerScript.js:
25 * bindings/v8/ScriptDebugServer.cpp:
26 (WebCore::ScriptDebugServer::setBreakpoint):
27 * inspector/Inspector.json:
28 * inspector/InspectorDebuggerAgent.cpp:
29 (WebCore::buildObjectForBreakpointCookie):
30 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
31 (WebCore::InspectorDebuggerAgent::setBreakpoint):
32 (WebCore::InspectorDebuggerAgent::continueToLocation):
33 (WebCore::InspectorDebuggerAgent::didParseSource):
34 * inspector/InspectorDebuggerAgent.h:
35 * inspector/ScriptBreakpoint.h:
36 (WebCore::ScriptBreakpoint::ScriptBreakpoint):
37 * inspector/front-end/DebuggerModel.js:
38 (WebInspector.DebuggerModel.prototype.setBreakpoint):
39 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
40 * inspector/front-end/DebuggerPresentationModel.js:
41 (WebInspector.DebuggerPresentationModel):
42 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
43 (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
44 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint.callback):
45 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
46 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
47 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didRequestSourceMapping):
48 (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
49 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled.afterUpdate):
50 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
51 (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
52 (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
53 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
54 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
55 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
56 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
57 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpointsFromSettings):
58 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
59 (WebInspector.DebuggerPresentationModel.prototype._reset):
60 (WebInspector.PresentationBreakpoint):
62 2011-04-07 Dan Bernstein <mitz@apple.com>
64 Reviewed by Adam Roben.
66 Removed a redundant line of code.
68 * rendering/RenderInline.cpp:
69 (WebCore::RenderInline::updateAlwaysCreateLineBoxes): No need to compare line gap values, as
70 this is covered by the earlier hasIdenticalAscentDescentAndLineGap() check.
72 2011-04-07 Liang Qi <liang.qi@nokia.com>
74 Reviewed by Laszlo Gombos.
76 [Qt][Symbian] Enable webkit build with GCCE on Symbian.
77 https://bugs.webkit.org/show_bug.cgi?id=57841
79 * WebCore.pri: Thanks for Norbert Leser <norbert.leser@nokia.com> who checked RVCT part.
80 --rw-base value in QMAKE_LFLAGS.ARMCC and -Tdata value in QMAKE_LFLAGS.GCCE are updated
81 to 0x1000000 together. They need to be updated in the future when WebKit grows.
83 2011-04-06 Pavel Feldman <pfeldman@google.com>
85 Reviewed by Yury Semikhatsky.
87 Web Inspector: get rid of Breakpoint.js.
88 https://bugs.webkit.org/show_bug.cgi?id=57949
91 * WebCore.vcproj/WebCore.vcproj:
92 * inspector/front-end/Breakpoint.js: Removed.
93 * inspector/front-end/BreakpointsSidebarPane.js:
94 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint):
95 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.updateBreakpoint.didLoadSnippet):
96 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.updateBreakpoint):
97 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._compareBreakpoints):
98 * inspector/front-end/DebuggerModel.js:
99 (WebInspector.DebuggerModel):
100 (WebInspector.DebuggerModel.prototype._debuggerWasDisabled):
101 (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
102 (WebInspector.DebuggerModel.prototype.setBreakpoint):
103 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
104 (WebInspector.DebuggerModel.prototype.removeBreakpoint):
105 (WebInspector.DebuggerModel.prototype._breakpointResolved):
106 (WebInspector.DebuggerModel.prototype.reset):
107 * inspector/front-end/DebuggerPresentationModel.js:
108 (WebInspector.DebuggerPresentationModel):
109 (WebInspector.DebuggerPresentationModel.prototype._refreshBreakpoints):
110 (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
111 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
112 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint.didSetBreakpoint):
113 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
114 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
115 (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
116 (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
117 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
118 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
119 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
120 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
121 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
122 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoint):
123 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
124 (WebInspector.DebuggerPresentationModel.prototype._reset):
125 (WebInspector.PresentationBreakpoint):
126 (WebInspector.PresentationBreakpoint.prototype.get sourceFile):
127 (WebInspector.PresentationBreakpoint.prototype.get url):
128 (WebInspector.PresentationBreakpoint.prototype.get resolved):
129 (WebInspector.PresentationBreakpoint.prototype.loadSnippet):
130 * inspector/front-end/ResourceTreeModel.js:
131 (WebInspector.ResourceTreeModel):
132 (WebInspector.ResourceTreeModel.prototype._onResourceStarted):
133 (WebInspector.ResourceTreeModel.prototype._addResourceToFrame):
134 * inspector/front-end/ScriptsPanel.js:
135 (WebInspector.ScriptsPanel):
136 (WebInspector.ScriptsPanel.prototype._breakpointUpdated):
137 (WebInspector.ScriptsPanel.prototype.reset):
138 * inspector/front-end/WebKit.qrc:
139 * inspector/front-end/inspector.html:
141 2011-04-07 Yury Semikhatsky <yurys@chromium.org>
143 Reviewed by Pavel Feldman.
145 Web Inspector: console messages names should adhere to the common naming style
146 https://bugs.webkit.org/show_bug.cgi?id=58042
148 * inspector/ConsoleMessage.cpp:
149 (WebCore::ConsoleMessage::addToFrontend):
150 (WebCore::ConsoleMessage::updateRepeatCountInConsole):
151 * inspector/Inspector.json:
152 * inspector/InspectorConsoleAgent.cpp:
153 (WebCore::InspectorConsoleAgent::clearConsoleMessages):
154 * inspector/front-end/ConsoleView.js:
155 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
156 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageRepeatCountUpdated):
157 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messagesCleared):
158 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
160 2011-04-06 Ilya Tikhonovsky <loislo@chromium.org>
162 Reviewed by Yury Semikhatsky.
164 Web Inspector: migrate Inspector protocol messages format to JSON-RPC.
165 https://bugs.webkit.org/show_bug.cgi?id=57957
167 There is not a significant difference between inspector messages spec and and JSON-RPC 2.0 messages spec.
168 Also JSON-RPC has a pretty clear specification for error descriptions which we haven't.
169 It was decided that we will use it.
173 2) domain + '.' + event => method // for events
174 3) domain + '.' + command => method // for requests
175 4) requestId => id // for responses
176 5) arguments => params // for requests
177 6) data => params // for events
178 7) body => result // for responses
180 protocolErrors and error properties will be converted to JSON-RPC error format.
181 The order of properties in messages also will be adjusted.
182 The only thing that looks unnecessary is jsonrpc property.
184 * inspector/CodeGeneratorInspector.pm:
186 2011-04-07 Ryosuke Niwa <rniwa@webkit.org>
188 Reviewed by Eric Seidel.
190 Add functions to update left and right offsets to LineOffsets
191 https://bugs.webkit.org/show_bug.cgi?id=58028
193 Added update() and shrinkWidthForNewFloatIfNeeded(FloatingObject*) to LineOffsets,
194 which are used to update m_left and m_right. Also added m_block and m_isFirstLine
195 member variables to LineOffsets so that users of LineOffsets don't have to pass them around.
197 * rendering/RenderBlock.h:
198 * rendering/RenderBlockLineLayout.cpp:
199 (WebCore::RenderBlock::skipLeadingWhitespace): No longer passes firstLine to positionNewFloatOnLine.
200 (WebCore::LineOffsets::LineOffsets): Takes RenderBlock* and isFirstLine instead of left and right offsets.
201 (WebCore::LineOffsets::update): Extracted from findNextLineBreak and positionNewFloatOnLine.
202 (WebCore::LineOffsets::shrinkWidthForNewFloatIfNeeded): Extracted from positionNewFloatOnLine.
203 (WebCore::RenderBlock::findNextLineBreak): Calls skipLeadingWhitespace and positionNewFloatOnLine.
204 (WebCore::RenderBlock::positionNewFloatOnLine): Calls shrinkWidthForNewFloatIfNeeded and update and
205 no longer passes firstLine around.
207 2011-04-06 Pavel Feldman <pfeldman@google.com>
209 Reviewed by Yury Semikhatsky.
211 Web Inspector: migrate debugger domain to the unified breakpoint location notion.
212 https://bugs.webkit.org/show_bug.cgi?id=57928
214 * inspector/Inspector.json:
215 * inspector/InspectorDebuggerAgent.cpp:
216 (WebCore::buildObjectForBreakpointCookie):
217 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
218 (WebCore::InspectorDebuggerAgent::setBreakpoint):
219 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
220 (WebCore::InspectorDebuggerAgent::didParseSource):
221 * inspector/InspectorDebuggerAgent.h:
222 * inspector/front-end/Breakpoint.js:
223 (WebInspector.Breakpoint):
224 * inspector/front-end/DebuggerModel.js:
225 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
226 (WebInspector.DebuggerModel.prototype._breakpointResolved):
228 2011-04-07 Andreas Kling <andreas.kling@nokia.com>
230 Reviewed by Benjamin Poulain.
232 [Qt] Mask the QStyle::State_Horizontal hint for vertical scrollbars.
234 When initializing a QStyleOptionSlider from a widget, the State_Horizontal
235 hint may get set depending on how that widget is laid out in its parent.
236 If this happens when drawing a vertical scrollbar, the hint is never
237 cleared and we end up painting a vertical scrollbar with horizontal arrows.
239 Covered by pixel tests which should no longer paint silly scrollbars.
241 * platform/qt/ScrollbarThemeQt.cpp:
242 (WebCore::styleOptionSlider):
244 2011-04-07 Adam Barth <abarth@webkit.org>
246 Reviewed by Eric Seidel.
248 script-src should block inline script
249 https://bugs.webkit.org/show_bug.cgi?id=58012
251 Block inline scripts at the ScriptElement layer. This should catch
252 exactly the scripts we want to catch.
254 Test: http/tests/security/contentSecurityPolicy/inline-script-blocked.html
257 (WebCore::Document::processHttpEquiv):
258 - This patch also adds the ability to supply a CSP policy via a
259 <meta> tag. We'll update the name of the header once we've
260 finished implementing the spec.
261 * dom/ScriptElement.cpp:
262 (WebCore::ScriptElement::executeScript):
263 * page/ContentSecurityPolicy.cpp:
264 (WebCore::ContentSecurityPolicy::allowInlineScript):
265 * page/ContentSecurityPolicy.h:
267 2011-04-07 Alice Boxhall <aboxhall@chromium.org>
269 Reviewed by Ryosuke Niwa.
271 Move the MouseEventWithHitTestResults::targetNode() method on to EventHandler.
272 https://bugs.webkit.org/show_bug.cgi?id=57921
274 Moves the MouseEventWithHitTestResults::targetNode() method on to EventHandler, so
275 that the same logic can be used for a HitTestResult.
277 No visible changes, just cleanup, so no tests.
279 * page/EventHandler.cpp:
280 (WebCore::EventHandler::selectClosestWordFromMouseEvent):
281 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
282 (WebCore::EventHandler::handleMousePressEventTripleClick):
283 (WebCore::EventHandler::handleMousePressEventSingleClick):
284 (WebCore::EventHandler::handleMousePressEvent):
285 (WebCore::EventHandler::handleMouseDraggedEvent):
286 (WebCore::EventHandler::handleMouseReleaseEvent):
287 (WebCore::EventHandler::subframeForHitTestResult):
288 Made public static member, so that it can access targetNode(), and be accessed by
289 webkitwebview in gtk.
290 (WebCore::EventHandler::selectCursor):
291 (WebCore::EventHandler::targetNode):
292 (WebCore::EventHandler::handleMouseDoubleClickEvent):
293 (WebCore::EventHandler::handleMouseMoveEvent):
294 (WebCore::EventHandler::updateDragAndDrop):
295 (WebCore::EventHandler::sendContextMenuEvent):
296 * page/EventHandler.h:
297 * page/MouseEventWithHitTestResults.cpp:
298 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
299 * page/MouseEventWithHitTestResults.h:
300 * page/android/EventHandlerAndroid.cpp:
301 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
302 * page/brew/EventHandlerBrew.cpp:
303 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
304 * page/chromium/EventHandlerChromium.cpp:
305 (WebCore::EventHandler::passMousePressEventToSubframe):
306 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
307 * page/efl/EventHandlerEfl.cpp:
308 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
309 * page/gtk/EventHandlerGtk.cpp:
310 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
311 * page/haiku/EventHandlerHaiku.cpp:
312 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
313 * page/mac/EventHandlerMac.mm:
314 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
315 (WebCore::EventHandler::passSubframeEventToSubframe):
316 * page/wx/EventHandlerWx.cpp:
317 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
319 2011-04-07 Pavel Podivilov <podivilov@chromium.org>
321 Reviewed by Pavel Feldman.
323 Web Inspector: build mapping for formatted scripts based on keywords positions.
324 https://bugs.webkit.org/show_bug.cgi?id=57936
326 Mapping based on [\$\.\w]+ was not accurate because string literals representation
327 may be different in original and formatted scripts.
329 * inspector/front-end/ScriptFormatterWorker.js:
330 (buildMapping.regexp.b):
333 2011-04-07 Kent Tamura <tkent@chromium.org>
335 Reviewed by Dimitri Glazkov.
337 Spinbuttons become unclickable if right padding is large.
338 https://bugs.webkit.org/show_bug.cgi?id=56298
340 An inner-spin-button is put on the right border and ignores right
341 padding in RenderTextControlSingleLine::layout(), but forwardEvent()
342 checks if a point is in an area just right of an internal text block.
343 This inconsistency caused a bug that an inner-spin-button with large
344 padding didn't receive mouse events.
346 To fix this bug, we render spin buttons as layers, and remove manual
347 event forwarding code.
349 Test: fast/forms/input-number-large-padding.html
351 * css/html.css: Add "position:relative" to make a spin-button a layer.
352 (input::-webkit-inner-spin-button):
353 (input::-webkit-outer-spin-button):
354 * rendering/RenderTextControlSingleLine.cpp:
355 (WebCore::RenderTextControlSingleLine::forwardEvent):
356 Remove manual event forwarding code.
358 2011-04-06 Adam Barth <abarth@webkit.org>
360 Reviewed by Eric Seidel.
362 CSP object-src should block plugin loads
363 https://bugs.webkit.org/show_bug.cgi?id=57283
365 This change is pretty straight-forward. It's slighly unclear to me
366 whether this patch is correct w.r.t. the code in DocumentWriter. I've
367 added a FIXME comment, and I'll investigate that case more in the future.
369 Test: http/tests/security/contentSecurityPolicy/object-src-none.html
371 * loader/DocumentWriter.cpp:
372 (WebCore::DocumentWriter::begin):
373 * loader/SubframeLoader.cpp:
374 (WebCore::SubframeLoader::requestPlugin):
375 * page/ContentSecurityPolicy.cpp:
376 (WebCore::ContentSecurityPolicy::allowObjectFromSource):
377 (WebCore::ContentSecurityPolicy::addDirective):
378 * page/ContentSecurityPolicy.h:
380 2011-04-06 Beth Dakin <bdakin@apple.com>
382 Reviewed by Dan Bernstein.
384 https://bugs.webkit.org/show_bug.cgi?id=58009
385 Frame::scalePage() results in visual artifacts with scale factors less than 1
387 <rdar://problem/8683230>
389 Fall into the case where we fill with a background base color when there is a page
390 scale factor that is less than 1.
391 * rendering/RenderView.cpp:
392 (WebCore::RenderView::paintBoxDecorations):
394 2011-04-06 Jer Noble <jer.noble@apple.com>
396 Reviewed by Darin Adler.
398 AVF: MediaPlayerPrivateAVFoundationObjC should not use -[AVPlayerItem isPlaybackBufferEmpty]
399 https://bugs.webkit.org/show_bug.cgi?id=57982
401 Query our cached loaded time array instead of asking AVPlayerItem if its buffer is empty.
403 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
404 (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus):
406 2011-04-06 Jer Noble <jer.noble@apple.com>
408 Reviewed by Eric Carlson.
410 MediaPlayerPrivateAVFoundation does not change rate due to setRate().
411 https://bugs.webkit.org/show_bug.cgi?id=57919
413 Test: media/video-set-rate-from-pause.html
415 The base class of MediaPlayerPrivateAVFoundation does not actually change the rate
416 of the media; instead a subclass must do that work. So when setRate() is called,
417 inform a subclass through a new pure virtual updateRate() function that there's
420 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
421 (WebCore::MediaPlayerPrivateAVFoundation::setRate): Call updateRate()
422 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
423 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
424 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
425 (WebCore::MediaPlayerPrivateAVFoundationObjC::updateRate): Added. Set the requested rate.
427 2011-04-06 Dai Mikurube <dmikurube@chromium.org>
429 Reviewed by David Levin.
431 Add QUOTA build flag for unified quota API
432 https://bugs.webkit.org/show_bug.cgi?id=57918
434 * Configurations/FeatureDefines.xcconfig: Added QUOTA build flag
435 * GNUmakefile.am: Added QUOTA build flag
436 * WebCore.pri: Added QUOTA build flag
438 2011-04-06 Stephanie Lewis <slewis@apple.com>
440 Reviewed by Darin Adler.
442 https://bugs.webkit.org/show_bug.cgi?id=57997
443 <rdar://problem/9187856> REGRESSION(r75555): ~5-7 MB increase in memory between iBench runs
444 Navigating away from a Scrolled page which queues a scroll event that is never dispatched.
445 Cancel all enqueued events when detaching the Document the events cannot keep the Document
448 No change in functionality so no new tests.
451 (WebCore::Document::detach):
452 * dom/EventQueue.cpp:
453 (WebCore::EventQueue::cancelQueuedEvents):
456 2011-04-06 Dan Bernstein <mitz@apple.com>
458 Reviewed by Darin Adler.
460 <rdar://problem/9084761> REGRESSION (r73993): Default Arabic line spacing has gotten very loose when the specified font is not Arabic
461 https://bugs.webkit.org/show_bug.cgi?id=58002
463 * platform/graphics/mac/SimpleFontDataMac.mm:
464 (WebCore::SimpleFontData::platformInit): The version of Geeza Pro in Snow Leopard
465 does not require the vertical metrics tweaks that were needed in Leopard. That the
466 tweaks were being applied went mostly unnoticed until r73993, because until then it
467 only affected cases where Geeza Pro was specified, not when it occurred as a fallback
470 2011-04-06 Roland Steiner <rolandsteiner@chromium.org>
472 Reviewed by Dimitri Glazkov.
474 Bug 57994 - Move guardRef functionality back to Document
475 https://bugs.webkit.org/show_bug.cgi?id=57994
477 Move the relevant code parts from TreeScope back into Document.
479 No new tests. (no new functionality)
482 (WebCore::Document::removedLastRef):
485 (WebCore::TreeScope::destroyTreeScopeData):
488 2011-04-06 Ian Henderson <ianh@apple.com>
490 Reviewed by Simon Fraser, Antti Koivisto.
492 Fast path for parsing simple CSS values
493 https://bugs.webkit.org/show_bug.cgi?id=57964
495 Add functions to parse simple color or dimension values, skipping the
496 overhead of full CSS parsing.
498 Change parseValue to a static method to avoid unnecessary allocation
499 of a CSSParser in the fast case.
501 * css/CSSMutableStyleDeclaration.cpp:
502 (WebCore::CSSMutableStyleDeclaration::setProperty):
503 Changed to use the new, static parseValue method.
505 (WebCore::isColorPropertyID):
506 (WebCore::parseColorValue):
507 Parses any color accepted by the existing parseColor() static method.
508 We must handle color identifiers separately, since parseColor() will
509 change 'red' into 'rgb(255, 0, 0)'.
510 (WebCore::isSimpleLengthPropertyID):
511 (WebCore::parseSimpleLengthValue):
512 Parses a value of the form 'NNpx', 'NN%', or 'NN' (when strict is
513 false, or 'NN' is '0'). Returns false to fall back to the slow path.
514 (WebCore::CSSParser::parseValue):
516 * css/WebKitCSSMatrix.cpp:
517 (WebCore::WebKitCSSMatrix::setMatrixValue):
518 Changed to use the new, static parseValue method.
520 2011-04-06 Kevin Ollivier <kevino@theolliviers.com>
522 Reviewed by Darin Adler.
524 Make sure JS_EXPORT_PRIVATE is an empty define when we aren't using the export macros.
526 https://bugs.webkit.org/show_bug.cgi?id=27551
530 2011-04-06 Simon Fraser <simon.fraser@apple.com>
532 Reviewed by Antti Koivisto.
534 Some minor style resolution optimizations
535 https://bugs.webkit.org/show_bug.cgi?id=57996
537 A couple of minor optimizations to style-related code.
539 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
540 (WebCore::isCSSPropertyName):
541 (WebCore::JSCSSStyleDeclaration::putDelegate):
542 Avoid calling cssPropertyName() twice when setting style on an element.
544 * css/CSSStyleSelector.cpp:
545 (WebCore::useSVGZoomRules):
546 (WebCore::CSSStyleSelector::applyProperty):
547 Avoid calling isSVGElement() for every property, since only a two properties
550 2011-04-06 Ian Henderson <ianh@apple.com>
552 Reviewed by Antti Koivisto.
554 Unnecessary string allocation in CSSStyleDeclaration::setProperty
555 https://bugs.webkit.org/show_bug.cgi?id=57995
557 Pass the bool representing the property's importance directly instead
558 of constructing a string.
560 * css/CSSStyleDeclaration.cpp:
561 (WebCore::CSSStyleDeclaration::setProperty):
563 2011-04-06 Leandro Gracia Gil <leandrogracia@chromium.org>
565 Reviewed by Steve Block.
567 Make the style of createFunctionOnlyCallback in V8 consistent with the JavaScriptCore version.
568 https://bugs.webkit.org/show_bug.cgi?id=57963
570 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
572 * bindings/v8/V8Utilities.h:
573 (WebCore::createFunctionOnlyCallback):
574 * bindings/v8/custom/V8GeolocationCustom.cpp:
575 (WebCore::V8Geolocation::getCurrentPositionCallback):
576 (WebCore::V8Geolocation::watchPositionCallback):
578 2011-04-06 Brian Weinstein <bweinstein@apple.com>
580 Reviewed by Adam Roben.
582 WebKit2: Support Windows 7 Gestures
583 https://bugs.webkit.org/show_bug.cgi?id=49824
584 <rdar://problem/8689728>
586 Move WindowTouch.h from WebKit/win, so it can be used in both WebKit and WebKit2.
588 * WebCore.vcproj/WebCore.vcproj:
589 * platform/win/WindowsTouch.h: Copied from WebKit/win/WindowsTouch.h.
591 2011-04-06 Alexis Menard <alexis.menard@openbossa.org>
593 Reviewed by Andreas Kling.
595 [Qt] We should use USE(QT_MULTIMEDIA) rather than ENABLE(QT_MULTIMEDIA).
596 https://bugs.webkit.org/show_bug.cgi?id=57974
598 We should use USE(QT_MULTIMEDIA) rather than ENABLE(QT_MULTIMEDIA).
600 No new tests needed, just a config flag rename.
604 2011-04-06 Tyler Close <tjclose@chromium.org>
606 Reviewed by Nate Chapin.
608 run-bindings-tests reference files out of sync with CodeGenerator*.pm
609 https://bugs.webkit.org/show_bug.cgi?id=57967
611 * bindings/scripts/test/V8/V8TestCallback.cpp:
613 2011-04-06 Asanka Herath <asanka@chromium.org>
615 Reviewed by Darin Fisher.
617 Add new TargetType: TargetIsFavicon
619 https://bugs.webkit.org/show_bug.cgi?id=57659
621 No new functionality added, so no additional tests.
623 * platform/network/ResourceRequestBase.h:
625 2011-04-06 David Hyatt <hyatt@apple.com>
627 Reviewed by Simon Fraser.
629 https://bugs.webkit.org/show_bug.cgi?id=57981
631 Update the column count and width computation algorithm for CSS3 multi-column layout
632 to match the revised pseudo-algorithm in the latest draft of the spec.
634 * rendering/RenderBlock.cpp:
635 (WebCore::RenderBlock::calcColumnWidth):
637 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
639 Reviewed by Eric Seidel.
641 borderPaddingMarginStart and borderPaddingMarginEnd should take RenderInline
642 https://bugs.webkit.org/show_bug.cgi?id=57965
644 Changed the argument types of borderPaddingMarginStart and borderPaddingMarginEnd
645 from RenderBoxModelObject to RenderInline since they call marginStart and marginEnd
646 instead of marginStartForChild and marginEndForChild respectively.
648 Calling these two functions on RenderInline is okay because writing-mode cannot differ
649 from that of the containing block.
651 * rendering/RenderBlockLineLayout.cpp:
652 (WebCore::borderPaddingMarginStart):
653 (WebCore::borderPaddingMarginEnd):
654 (WebCore::inlineLogicalWidth):
656 2011-04-06 Sheriff Bot <webkit.review.bot@gmail.com>
658 Unreviewed, rolling out r83039.
659 http://trac.webkit.org/changeset/83039
660 https://bugs.webkit.org/show_bug.cgi?id=57978
662 introduced a new regression in conjunction to
663 ReplaceSelectionCommand (Requested by rniwa on #webkit).
665 * editing/EditingStyle.cpp:
666 (WebCore::EditingStyle::init):
667 * editing/InsertParagraphSeparatorCommand.cpp:
668 (WebCore::InsertParagraphSeparatorCommand::doApply):
670 2011-04-06 Naoki Takano <takano.naoki@gmail.com>
672 Reviewed by David Levin.
674 Webkit ignores PgUp/PgDown/Home/End in SELECT tag objects
675 https://bugs.webkit.org/show_bug.cgi?id=27658
677 Test: fast/events/select-element.html
679 * dom/SelectElement.cpp:
680 (WebCore::nextValidIndex): Moved from elsewhere in the file to be used by other routines.
681 (WebCore::nextSelectableListIndexPageAway): Returns a selectable index one page away from the given index.
682 (WebCore::nextSelectableListIndex): Implemented with nextValidIndex.
683 And converted to a normal static function from a private function of SelectElement.
684 (WebCore::previousSelectableListIndex): Implemented with nextValidIndex.
685 And converted to a normal static function from a private function of SelectElement.
686 (WebCore::firstSelectableListIndex): Returns the first selectable index.
687 (WebCore::lastSelectableListIndex): Returns the last selectable index.
688 (WebCore::SelectElement::menuListDefaultEventHandler): Converted from C cast to C++ cast.
689 (WebCore::SelectElement::listBoxDefaultEventHandler): Adds support for PageUp/PageDown/Home/End with both single and multiple selection.
691 * dom/SelectElement.h:
692 (WebCore::SelectElement::): Remove nextSelectableListIndex() and previousSelectableListIndex().
694 * rendering/RenderListBox.h: Makes RenderListBox::size public so that PageUp/PageDown behavior can use the actual list size rather than that specified in HTML.
695 They can differ due to the minimum size imposed by RenderListBox.
697 2011-04-06 David Hyatt <hyatt@apple.com>
699 Reviewed by Dan Bernstein.
701 https://bugs.webkit.org/show_bug.cgi?id=57975
703 The "More..." link for line clamping no longer shows up in Safari RSS. Fix the isLink() check
704 to just look at the style, so that it can find the InlineTextBox and not care that it's a child
705 of the link element and not the line box for the link element itself (since that line box got
708 * rendering/RenderFlexibleBox.cpp:
709 (WebCore::RenderFlexibleBox::applyLineClamp):
711 2011-04-06 Brady Eidson <beidson@apple.com>
713 Reviewed by Anders Carlsson.
715 https://bugs.webkit.org/show_bug.cgi?id=57973 and https://bugs.webkit.org/show_bug.cgi?id=57973
716 WK2 icon database should be able to get a CGImage of a specific size
718 * platform/graphics/BitmapImage.h:
719 * platform/graphics/Image.h:
720 (WebCore::Image::getFirstCGImageRefOfSize):
722 * platform/graphics/cg/ImageCG.cpp:
723 (WebCore::BitmapImage::getFirstCGImageRefOfSize): Walk the frames of the image until reaching the
724 first frame of the requested size.
726 2011-04-06 Malcolm MacLeod <malcolm.macleod@tshwanedje.com>
728 Reviewed by Kevin Ollivier.
730 [wx] Fix cursor handling so that we always call the chrome to set it.
732 https://bugs.webkit.org/show_bug.cgi?id=57972
734 * platform/wx/WidgetWx.cpp:
735 (WebCore::Widget::setCursor):
737 2011-04-06 David Hyatt <hyatt@apple.com>
739 Reviewed by Dan Bernstein.
741 https://bugs.webkit.org/show_bug.cgi?id=41445
743 Visited links painting with black background. Make sure that if the visited style has
744 the initial background color (transparent) set that we just use the unvisited color.
746 Added fast/history/visited-link-background-color.html
748 * rendering/style/RenderStyle.cpp:
749 (WebCore::RenderStyle::visitedDependentColor):
751 2011-04-06 Csaba Osztrogonác <ossy@webkit.org>
753 Unreviewed Qt buildfix after r83079.
757 2011-04-06 Dean Jackson <dino@apple.com>
759 Reviewed by Chris Marrin.
761 https://bugs.webkit.org/show_bug.cgi?id=56936
762 Crash in ImplicitAnimation::~ImplicitAnimation
764 Make sure the style and start time waiting lists
765 are cleared in the CompositeAnimation destructor. This
766 way, no running transitions can be left in a state
767 where they are destroyed as the AnimationControllerPrivate
770 * page/animation/CompositeAnimation.cpp:
771 (WebCore::CompositeAnimation::~CompositeAnimation):
773 2011-04-06 Robert Sesek <rsesek@chromium.org>
775 Reviewed by Alexey Proskuryakov.
777 Move code duplicated between the WebKit/mac and WebKit2 down to WebCore because Chromium will need it too
778 https://bugs.webkit.org/show_bug.cgi?id=54969
780 No change in behavior; no new tests.
782 * editing/TextIterator.cpp:
783 (WebCore::TextIterator::locationAndLengthFromRange): New method from duplicated code in WebKits
784 * editing/TextIterator.h:
786 (WebCore::Frame::rangeForPoint): New method from duplicated code in WebKits
788 2011-04-06 Leandro Gracia Gil <leandrogracia@chromium.org>
790 Reviewed by Steve Block.
792 Factoring the creation of 'FunctionOnly' callbacks in JavaScriptCore.
793 https://bugs.webkit.org/show_bug.cgi?id=57770
795 Create a template from an existing functionality in JSGeolocationCustom.cpp
796 to be used by the custom bindings of both Geolocation and the Media Stream API.
797 V8 version of this bug: https://bugs.webkit.org/show_bug.cgi?id=57760
799 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
801 * Android.jscbindings.mk:
806 * WebCore.vcproj/WebCore.vcproj:
807 * WebCore.xcodeproj/project.pbxproj:
808 * bindings/js/CallbackFunction.cpp: Added.
809 (WebCore::checkFunctionOnlyCallback):
810 * bindings/js/CallbackFunction.h: Added.
811 (WebCore::createFunctionOnlyCallback):
812 * bindings/js/JSBindingsAllInOne.cpp:
813 * bindings/js/JSGeolocationCustom.cpp:
814 (WebCore::JSGeolocation::getCurrentPosition):
815 (WebCore::JSGeolocation::watchPosition):
817 2011-04-06 Alexis Menard <alexis.menard@openbossa.org>
819 Reviewed by Andreas Kling.
821 [Qt] Implement fullscreen playback for the GStreamer backend.
822 https://bugs.webkit.org/show_bug.cgi?id=56826
824 Implement support for fullscreen playback when building the
825 Qt port with the GStreamer backend (DEFINES+=USE_GSTREAMER=1).
826 The implementation is done in FullScreenVideoQt alongside with
827 the Qt Multimedia support.
829 No new tests because layout tests cover it. They are not yet activated
830 but will be any time soon.
832 * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h:
833 * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
834 (FullScreenVideoWindow::FullScreenVideoWindow):
835 (FullScreenVideoWindow::setVideoElement):
836 (FullScreenVideoWindow::closeEvent):
837 (FullScreenVideoWindow::keyPressEvent):
838 (FullScreenVideoWindow::event):
839 (FullScreenVideoWindow::showFullScreen):
840 (FullScreenVideoWindow::hideCursor):
841 (FullScreenVideoWindow::showCursor):
843 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
845 Reviewed by Dimitri Glazkov.
847 Bundle lineLeftOffset and lineRightOffset as a class
848 https://bugs.webkit.org/show_bug.cgi?id=57851
850 Added a new class LineOffsets that encapsulates lineLeftOffset and lineRightOffset.
851 The patch makes clear that lineLeftOffset and lineRightOffset are never read individually
852 and only the difference is used to compute the width.
854 * rendering/RenderBlock.h:
855 * rendering/RenderBlockLineLayout.cpp:
856 (WebCore::RenderBlock::skipLeadingWhitespace): Takes LineOffsets instead of two integers.
857 (WebCore::LineOffsets::LineOffsets): Added.
858 (WebCore::LineOffsets::width): Added.
859 (WebCore::LineOffsets::setLeft): Added.
860 (WebCore::LineOffsets::setRight): Added.
861 (WebCore::RenderBlock::findNextLineBreak): Calls skipLeadingWhitespace and positionNewFloatOnLine.
862 (WebCore::RenderBlock::positionNewFloatOnLine): Takes LineOffsets instead of two integers.
864 2011-04-06 David Hyatt <hyatt@apple.com>
866 Reviewed by Dan Bernstein.
868 https://bugs.webkit.org/show_bug.cgi?id=57916
870 Implement an optimization to the line box tree to cull out most of the intermediate
871 line boxes that can occur between the root line box and the leaves of the tree (images
874 RenderInlines now have a boolean member, m_alwaysCreateLineBoxes,
875 that starts off as false. Only if it gets flipped to true will there be any line boxes
876 created for that RenderInline.
878 * page/FocusController.cpp:
879 (WebCore::FocusController::advanceFocusDirectionally):
880 Adjust the ordering of updateLayout calls to make sure rects aren't queried unless layout
883 * page/SpatialNavigation.cpp:
884 (WebCore::hasOffscreenRect):
885 (WebCore::nodeRectInAbsoluteCoordinates):
886 Add asserts in spatial navigation code to catch any future bad queries that might be made
887 for rectangles without layout being up to date.
889 * platform/graphics/FloatRect.cpp:
890 (WebCore::FloatRect::uniteIfNonZero):
891 * platform/graphics/FloatRect.h:
892 * platform/graphics/IntRect.cpp:
893 (WebCore::IntRect::uniteIfNonZero):
894 * platform/graphics/IntRect.h:
895 Add a new unite function that is useful for the render tree to FloatRect and IntRect. This
896 version allows rect unites to happen if either width or height is nonzero.
898 * rendering/HitTestResult.cpp:
899 (WebCore::HitTestResult::addNodeToRectBasedTestResult):
900 Make sure rect-based hit testing properly adds in culled inline ancestors to the set of nodes
901 if content inside those inlines is hit.
903 * rendering/InlineBox.h:
904 (WebCore::InlineBox::logicalFrameRect):
905 Fix a bug in this function for obtaining the logical frame rect of an inline box.
907 * rendering/InlineFlowBox.cpp:
908 (WebCore::InlineFlowBox::addToLine):
909 addToLine now also checks line gap in the line box tree optimization checks.
911 (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
912 (WebCore::InlineFlowBox::computeOverflow):
913 * rendering/InlineFlowBox.h:
914 Rewritten to add the text box overflow to the text box itself.
916 * rendering/InlineTextBox.cpp:
917 (WebCore::InlineTextBox::destroy):
918 Destroy has been changed to call a helper function to remove and destroy the line boxes that
919 is now called from one additional spot.
921 (WebCore::InlineTextBox::logicalOverflowRect):
922 (WebCore::InlineTextBox::setLogicalOverflowRect):
923 Text boxes now cache their own overflow in a global hash table.
925 (WebCore::InlineTextBox::baselinePosition):
926 (WebCore::InlineTextBox::lineHeight):
927 Changed to not assume that the parent line box's renderer is the RenderText's immediate
928 parent, since intermediate line boxes may have been culled.
930 (WebCore::InlineTextBox::paint):
931 Paint now properly checks only the text box overflow instead of the parent line box's overflow.
933 * rendering/InlineTextBox.h:
934 (WebCore::InlineTextBox::logicalTopVisualOverflow):
935 (WebCore::InlineTextBox::logicalBottomVisualOverflow):
936 (WebCore::InlineTextBox::logicalLeftVisualOverflow):
937 (WebCore::InlineTextBox::logicalRightVisualOverflow):
938 New accessors to obtain overflow for inline text boxes.
940 * rendering/RenderBlock.cpp:
941 (WebCore::RenderBlock::updateFirstLetter):
942 updateFirstLetter now removes text boxes from the line box tree before it destroys them, since those
943 text boxes may not have anything in between them and the block that contains the inline first letter
946 * rendering/RenderBlockLineLayout.cpp:
947 (WebCore::RenderBlock::createLineBoxes):
948 The culling optimization is done here. Only if the RenderInline says that boxes are allowed will they
951 (WebCore::RenderBlock::layoutInlineChildren):
952 The state of the RenderInline is updated here, in case it is discovered that line boxes are now needed.
953 This is done before any lines are built.
955 * rendering/RenderInline.cpp:
956 (WebCore::RenderInline::RenderInline):
957 The new m_alwaysCreateLineBoxes flag has been added to the constructor.
959 (WebCore::RenderInline::styleDidChange):
960 An initial update of the m_alwaysCreateLineBoxes happens here for things that can be checked immediately
961 (like having a layer, borders, padding, margins or backgrounds). Some checks that depend on examining
962 the RenderInline's parent (including first line styles) happen later in layoutInlineChildren.
964 (WebCore::RenderInline::updateAlwaysCreateLineBoxes):
965 The function called by layoutInlineChildren to check parent and child style differences (e.g., font,
966 vertical alignment, line height, etc.).
968 (WebCore::RenderInline::absoluteRects):
969 (WebCore::RenderInline::culledInlineAbsoluteRects):
970 absoluteRects calls culledInlineAbsoluteRects when m_alwaysCreateLineBoxes is false.
972 (WebCore::RenderInline::absoluteQuads):
973 (WebCore::RenderInline::culledInlineAbsoluteQuads):
974 absoluteQuads calls culledInlineAbsoluteQuads when m_alwaysCreateLineBoxes is false.
976 (WebCore::RenderInline::offsetLeft):
977 (WebCore::RenderInline::offsetTop):
978 offsetLeft and offsetTop now check descendant renderers when m_alwaysCreateLineBoxes is false.
980 (WebCore::RenderInline::linesBoundingBox):
981 (WebCore::RenderInline::culledInlineBoundingBox):
982 lineBoundingBox calls culledInlineBoundingBox when m_alwaysCreateLineBoxes is false.
984 (WebCore::RenderInline::culledInlineFirstLineBox):
985 (WebCore::RenderInline::culledInlineLastLineBox):
986 Helpers that return the first and last line box descendants. Used by firstLineBoxIncludingCulling and
987 lastLineBoxIncludingCulling (which are in turn called by offsetLeft and offsetTop).
989 (WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
990 (WebCore::RenderInline::linesVisualOverflowBoundingBox):
991 linesVisualOverflowBoundingBox calls culledInlineVisualOverflowBoundingBox when m_alwaysCreateLineBoxes is false.
993 (WebCore::RenderInline::clippedOverflowRectForRepaint):
994 The initial bailout check is now done using firstLineBoxIncludingCulling instead of just firstLineBox.
996 (WebCore::RenderInline::dirtyLineBoxes):
997 dirtyLineBoxes now crawls into descendants to figure out which root lines to dirty when
998 m_alwaysCreateLineBoxes is false.
1000 (WebCore::RenderInline::createAndAppendInlineFlowBox):
1001 Clear the m_alwaysCreateLineBoxes if a box gets added anyway. This happens for leaf inline flows and also
1002 when line-box-contain is set to an unusual value.
1004 (WebCore::RenderInline::addFocusRingRects):
1005 Used culledInlineAbsoluteRects in place of the line box walk when m_alwaysCreateLineBoxes is false.
1007 * rendering/RenderInline.h:
1008 (WebCore::RenderInline::firstLineBoxIncludingCulling):
1009 (WebCore::RenderInline::lastLineBoxIncludingCulling):
1010 Helpers used in a few places (like offsetLeft and offsetTop), mostly in places where the existence of a box
1011 is all that needs checking.
1013 (WebCore::RenderInline::alwaysCreateLineBoxes):
1014 (WebCore::RenderInline::setAlwaysCreateLineBoxes):
1015 Functions for getting and setting the m_alwaysCreateLineBoxes flag.
1017 * rendering/RenderLineBoxList.cpp:
1018 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1019 Modified to use firstLineBoxIncludingCulling and lastLineBoxIncludingCulling to ensure the right set of
1022 * rendering/RenderText.cpp:
1023 (WebCore::RenderText::removeAndDestroyTextBoxes):
1024 New helper invoked by destroy and also from updateFirstLetter.
1026 (WebCore::RenderText::destroy):
1027 Changed to call removeAndDestroyTextBoxes.
1029 (WebCore::RenderText::absoluteRects):
1030 Fixed to be properly physical instead of logical.
1032 (WebCore::RenderText::linesVisualOverflowBoundingBox):
1033 New implementation for RenderText that gives the bounding box of the text boxes including overflow from
1034 shadows, glyphs, text-stroke, etc. Used by RenderInline::culledInlineVisualOverflowBoundingBox.
1036 * rendering/RenderText.h:
1037 * rendering/svg/RenderSVGInline.cpp:
1038 (WebCore::RenderSVGInline::RenderSVGInline):
1039 RenderSVGInline always sets m_alwaysCreateLineBoxes to true so that SVG is unaffected by this optimization.
1041 * rendering/svg/SVGRootInlineBox.cpp:
1042 (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
1043 (WebCore::SVGRootInlineBox::layoutChildBoxes):
1044 Move the isInlineFlowBox asserts to after the generated content skips, since the generated content boxes are
1045 now InlineTextBoxes (the enclosing InlineFlowBoxes got culled).
1047 2011-04-05 Enrica Casucci <enrica@apple.com>
1049 Reviewed by Darin Adler.
1051 REGRESSION: Drag & Drop Gmail Attachments doesn't work.
1052 https://bugs.webkit.org/show_bug.cgi?id=57909
1053 <rdar://problem/9103220>
1055 In WebKit2 we cannot rely on the value returned by platformData() that
1056 on Mac returns an NSDraggingInfo object. This is available only in the UI
1057 process. Therefore we should use m_pasteboard instead.
1058 We cannot change what platformData() returns on Mac, since there are
1059 delegate methods that receive a NSDraggingInfo object (only in WebKit).
1061 * platform/DragData.h:
1062 (WebCore::DragData::pasteboard): Added.
1063 * platform/mac/ClipboardMac.mm:
1064 (WebCore::Clipboard::create): Changed to use pasteboard() instead of platformData().
1065 * platform/mac/DragDataMac.mm:
1066 (WebCore::DragData::asColor): Replaced references to m_platformData with m_pasteboard.
1067 (WebCore::DragData::asURL): Same as above.
1069 2011-04-06 Benjamin Poulain <benjamin.poulain@nokia.com>
1071 Reviewed by Darin Adler.
1073 ClipboardWin has unused variables "ExceptionCode ec"
1074 https://bugs.webkit.org/show_bug.cgi?id=57952
1076 Remove the unused variable.
1078 * platform/win/ClipboardWin.cpp:
1079 (WebCore::ClipboardWin::declareAndWriteDragImage):
1080 (WebCore::ClipboardWin::writePlainText):
1082 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1084 Reviewed by Dimitri Glazkov.
1086 Split getBorderPaddingMargin into two functions
1087 https://bugs.webkit.org/show_bug.cgi?id=57947
1089 * rendering/RenderBlockLineLayout.cpp:
1090 (WebCore::borderPaddingMarginStart): Extracted from getBorderPaddingMargin.
1091 (WebCore::borderPaddingMarginEnd): Ditto.
1092 (WebCore::inlineLogicalWidth): Calls borderPaddingMarginStart and borderPaddingMarginEnd.
1093 (WebCore::RenderBlock::findNextLineBreak): Ditto.
1095 2011-04-06 MORITA Hajime <morrita@google.com>
1097 Reviewed by Dimitri Glazkov.
1099 [Refactoring] <progress> should not have manual layout code.
1100 https://bugs.webkit.org/show_bug.cgi?id=57801
1102 - Simplified RenderProgress, removing its custom layout code
1103 - Introducing ProgressValueElement and ProgressBarElement, replacing
1104 ProgressBarValueElement.
1106 Now the structure is almost identical to <meter>,
1108 - RenderProgress has animated painting, thus manages its own timer.
1109 - Both ProgressValueElement and ProgressBarElement has pseudo classes
1110 which don't changes during its lifetime.
1117 * WebCore.vcproj/WebCore.vcproj:
1118 * WebCore.xcodeproj/project.pbxproj:
1121 (progress::-webkit-progress-bar):
1122 (progress::-webkit-progress-value):
1123 * html/HTMLProgressElement.cpp:
1124 (WebCore::HTMLProgressElement::~HTMLProgressElement):
1125 (WebCore::HTMLProgressElement::create):
1126 (WebCore::HTMLProgressElement::attach):
1127 (WebCore::HTMLProgressElement::didElementStateChange):
1128 (WebCore::HTMLProgressElement::createShadowSubtree):
1129 * html/HTMLProgressElement.h:
1130 * html/shadow/ProgressShadowElement.cpp: Copied from Source/WebCore/html/shadow/ProgressBarValueElement.h.
1131 (WebCore::ProgressShadowElement::ProgressShadowElement):
1132 (WebCore::ProgressShadowElement::progressElement):
1133 (WebCore::ProgressShadowElement::rendererIsNeeded):
1134 (WebCore::ProgressBarElement::shadowPseudoId):
1135 (WebCore::ProgressValueElement::shadowPseudoId):
1136 (WebCore::ProgressValueElement::setWidthPercentage):
1137 * html/shadow/ProgressShadowElement.h: Renamed from Source/WebCore/html/shadow/ProgressBarValueElement.h.
1138 (WebCore::ProgressBarElement::ProgressBarElement):
1139 (WebCore::ProgressBarElement::create):
1140 (WebCore::ProgressValueElement::ProgressValueElement):
1141 (WebCore::ProgressValueElement::create):
1142 * rendering/RenderProgress.cpp:
1143 (WebCore::RenderProgress::RenderProgress):
1144 (WebCore::RenderProgress::updateFromElement):
1145 (WebCore::RenderProgress::animationTimerFired):
1146 * rendering/RenderProgress.h:
1147 (WebCore::RenderProgress::requiresForcedStyleRecalcPropagation):
1148 (WebCore::RenderProgress::canHaveChildren):
1150 2011-04-06 Mario Sanchez Prada <msanchez@igalia.com>
1152 Reviewed by Chris Fleizach.
1154 [GTK] Do not reference AccessibilityRenderObject from platform dependent code
1155 https://bugs.webkit.org/show_bug.cgi?id=57955
1157 Do not reference AccessibilityRenderObject from platform specific code
1159 Added new virtual functions to AccessibilityObject.h and removed
1160 explicit references to AccessibilityRenderObject from GTK code.
1162 * accessibility/AccessibilityObject.h:
1163 (WebCore::AccessibilityObject::renderer): New virtual method,
1164 returning 0 by default. Overriden by AccessibilityRenderObject.
1165 (WebCore::AccessibilityObject::correspondingLabelForControlElement):
1166 New virtual method, returning 0 by default. It complements the
1167 already present method correspondingControlForLabelElement().
1169 * accessibility/AccessibilityRenderObject.h:
1170 (WebCore::AccessibilityRenderObject::renderer): Made virtual.
1172 * accessibility/gtk/AXObjectCacheAtk.cpp:
1173 (WebCore::emitTextChanged): Reference AccessibilityObject,
1174 instead of AccessibilityRenderObject.
1175 (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
1178 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1179 (webkit_accessible_get_name): Do not reference
1180 AccessibilityRenderObject.
1181 (webkit_accessible_get_description): Ditto.
1182 (setAtkRelationSetFromCoreObject): Ditto.
1183 (optionFromList): Ditto.
1184 (optionFromSelection): Ditto.
1185 (webkit_accessible_selection_clear_selection): Ditto.
1186 (webkit_accessible_selection_get_selection_count): Ditto.
1187 (webkit_accessible_selection_select_all_selection): Ditto.
1188 (textForObject): Ditto.
1189 (webkit_accessible_text_get_text): Ditto.
1190 (getPangoLayoutForAtk): Ditto.
1191 (webkit_accessible_text_get_caret_offset): Ditto.
1192 (baselinePositionForRenderObject): Ditto.
1193 (getAttributeSetForAccessibilityObject): Ditto.
1194 (accessibilityObjectLength): Ditto.
1195 (getSelectionOffsetsForObject): Ditto.
1196 (webkit_accessible_text_set_selection): Ditto.
1197 (webkit_accessible_text_set_caret_offset): Ditto.
1198 (webkit_accessible_table_get_caption): Ditto.
1199 (getInterfaceMaskFromObject): Ditto.
1201 * accessibility/gtk/WebKitAccessibleHyperlink.cpp:
1202 (getRangeLengthForObject): Ditto.
1204 Removed unused renderer() method from AccessibilityMenuList.
1206 * accessibility/AccessibilityMenuList.h: Removed unused method.
1207 * accessibility/AccessibilityMenuList.cpp: Removed unused method.
1209 2011-04-06 Alexander Pavlov <apavlov@chromium.org>
1211 Reviewed by Pavel Feldman.
1213 Web Inspector: Javascipt warning link expand and overlap with icons in js console
1214 https://bugs.webkit.org/show_bug.cgi?id=57939
1216 * inspector/front-end/inspector.js:
1217 (WebInspector.linkifyURLAsNode):
1219 2011-04-06 Alexander Pavlov <apavlov@chromium.org>
1221 Reviewed by Pavel Feldman.
1223 Web Inspector: Beautify parameter names in Inspector.json (CSS domain)
1224 https://bugs.webkit.org/show_bug.cgi?id=57931
1226 * inspector/Inspector.json:
1228 2011-04-06 Jia Pu <jpu@apple.com>
1230 Reviewed by Darin Adler.
1232 [Mac] WebCore need to notify AppKit spell checker after user has modified autocorrected text.
1233 https://bugs.webkit.org/show_bug.cgi?id=57665
1234 <rdar://problem/7350477>
1236 We need to track how user modified an autocorrected word. If he changed it back to original
1237 text, we want to record AutocorrectionReverted response. And if he changed it to something
1238 else, we want to record AutocorrectionEdited response.
1240 To achieve this, we need to distringuish between text replacement caused by autocorrection
1241 from that due to other causes, such as reversion, text substitution, etc. So we added a new
1242 marker type "Autocorrected". We also need to be able to check for correction, even when we
1243 don't intend to actually carry out replacement. For this, we introduced a new TextCheckingOption
1244 value, "CheckForCorrection".
1246 We also added DocumentMarkerController::markersInRange() to retrieve a vector of markers in
1247 specified range, and of specified type.
1249 * dom/DocumentMarker.h:
1250 * dom/DocumentMarkerController.cpp:
1251 (WebCore::DocumentMarkerController::markersInRange):
1252 (WebCore::DocumentMarkerController::hasMarkers):
1253 * dom/DocumentMarkerController.h:
1254 * editing/Editor.cpp:
1255 (WebCore::markerTypesForAutocorrection):
1256 (WebCore::markersHaveIdenticalDescription):
1257 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1258 (WebCore::Editor::recordSpellcheckerResponseForModifiedCorrection):
1259 (WebCore::Editor::changeBackToReplacedString):
1260 (WebCore::Editor::markMisspellingsAndBadGrammar):
1261 (WebCore::Editor::applyCorrectionPanelInfo):
1262 (WebCore::Editor::unappliedSpellCorrection):
1263 (WebCore::Editor::textCheckingTypeMaskFor):
1265 * editing/SpellingCorrectionCommand.cpp:
1266 (WebCore::SpellingCorrectionCommand::doApply):
1268 2011-04-06 Sheriff Bot <webkit.review.bot@gmail.com>
1270 Unreviewed, rolling out r83045.
1271 http://trac.webkit.org/changeset/83045
1272 https://bugs.webkit.org/show_bug.cgi?id=57953
1274 Broke win layout tests (Requested by podivilov on #webkit).
1277 * inspector/front-end/DebuggerPresentationModel.js:
1278 (WebInspector.DebuggerPresentationModel.prototype._addScript):
1279 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
1281 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1283 Moved the declaration of positionNewFloatOnLine in RenderBlock.h after r83042.
1285 * rendering/RenderBlock.h:
1287 2011-03-27 Diego Gonzalez <diegohcg@webkit.org>
1289 Reviewed by Kenneth Rohde Christiansen.
1291 [Qt] Re-draw the <input> fields for Qt Mobile Theme to do not override elements already styled.
1292 https://bugs.webkit.org/show_bug.cgi?id=57007
1294 * CodeGenerators.pri:
1295 * css/themeQtMobile.css: Removed.
1296 * platform/qt/QtMobileWebStyle.cpp:
1297 (drawRectangularControlBackground):
1298 (QtMobileWebStyle::drawPrimitive):
1299 (QtMobileWebStyle::drawComplexControl):
1300 * platform/qt/QtMobileWebStyle.h:
1301 * platform/qt/RenderThemeQt.cpp:
1302 (WebCore::RenderThemeQt::isControlStyled):
1303 (WebCore::RenderThemeQt::paintTextField):
1305 2011-04-06 Jia Pu <jpu@apple.com>
1307 Reviewed by Darin Adler.
1309 [Mac] When autocorrection occurs without showing correction panel, WebCore need to post accessibility notification.
1310 https://bugs.webkit.org/show_bug.cgi?id=57800
1311 <rdar://problem/9218223>
1313 Defined a new accessibility notification type, AXAutocorrectionOccured. Editor::markAllMisspellingsAndBadGrammarInRanges()
1314 now posts said notification when any autocorrection or text replacement (e.g. replacing "(c)" with copyright mark) takes place.
1316 * accessibility/AXObjectCache.h:
1317 * accessibility/chromium/AXObjectCacheChromium.cpp:
1318 (WebCore::AXObjectCache::postPlatformNotification):
1319 * accessibility/mac/AXObjectCacheMac.mm:
1320 (WebCore::AXObjectCache::postPlatformNotification):
1321 * editing/Editor.cpp:
1322 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1324 2011-04-06 Martin Robinson <mrobinson@igalia.com>
1326 Build fix for debug Cairo builds.
1328 * platform/graphics/cairo/PlatformContextCairo.cpp:
1329 (WebCore::PlatformContextCairo::pushImageMask): Update the reference to m_maskInformation.
1331 2011-04-06 Diego Gonzalez <diegohcg@webkit.org>
1333 Reviewed by Antonio Gomes.
1335 [Qt] Style fix for QtMobileWebStyle.h
1336 https://bugs.webkit.org/show_bug.cgi?id=57708
1338 * platform/qt/QtMobileWebStyle.h:
1340 2011-04-06 Andras Becsi <abecsi@webkit.org>
1342 Reviewed by Darin Adler.
1344 Invalid color #{predefined colorName} is accepted by the CSS parser.
1345 https://bugs.webkit.org/show_bug.cgi?id=15360
1347 Test: fast/css/invalid-predefined-color.html
1349 * css/CSSGrammar.y: Remove superfluous hexcolor production.
1350 * css/tokenizer.flex: A hexadecimal number should consist of [a-fA-F0-9] values ({h}).
1352 2011-03-30 Pavel Podivilov <podivilov@chromium.org>
1354 Reviewed by Pavel Feldman.
1356 Web Inspector: add test for script formatter worker.
1357 https://bugs.webkit.org/show_bug.cgi?id=57447
1359 Test: inspector/debugger/script-formatter.html
1362 * inspector/front-end/DebuggerPresentationModel.js:
1363 (WebInspector.DebuggerPresentationModel):
1364 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
1366 2011-04-06 Martin Robinson <mrobinson@igalia.com>
1368 Reviewed by Xan Lopez.
1370 [Cairo] Hide the details of image masking in PlatformContextCairo
1371 https://bugs.webkit.org/show_bug.cgi?id=57878
1373 No new tests. This is just a refactor.
1375 * platform/graphics/GraphicsContext.h:
1376 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1377 (WebCore::GraphicsContext::savePlatformState): Call into PlatformContextCairo now to
1378 do the actual cairo_save. Remove information about image masking.
1379 (WebCore::GraphicsContext::restorePlatformState): Call into PlatformContextCairo now to
1380 do the actual cairo_restore. Remove information about image masking.
1381 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1382 * platform/graphics/cairo/ImageBufferCairo.cpp:
1383 (WebCore::ImageBuffer::clip): Use PlatformContextCairo here now.
1384 * platform/graphics/cairo/PlatformContextCairo.cpp:
1385 (WebCore::PlatformContextCairo::restore): Added.
1386 (WebCore::PlatformContextCairo::save): Added.
1387 (WebCore::PlatformContextCairo::pushImageMask): Added.
1388 * platform/graphics/cairo/PlatformContextCairo.h:
1389 (WebCore::ImageMaskInformation::update): Moved from GraphicsContextPlatformPrivateCairo.h.
1390 (WebCore::ImageMaskInformation::isValid): Ditto.
1391 (WebCore::ImageMaskInformation::maskSurface): Ditto.
1392 (WebCore::ImageMaskInformation::maskRect): Ditto.
1394 2011-04-02 Diego Gonzalez <diegohcg@webkit.org>
1396 Reviewed by Csaba Osztrogonác.
1398 [Qt] Radio buttons are showing wrong with mobile theme
1399 https://bugs.webkit.org/show_bug.cgi?id=57706
1401 * platform/qt/QtMobileWebStyle.cpp:
1402 (QtMobileWebStyle::drawRadio):
1404 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1406 Reviewed by Eric Seidel.
1408 Move RenderBlock::positionNewFloatOnLine to RenderBlockLineLayout.cpp
1409 https://bugs.webkit.org/show_bug.cgi?id=57943
1411 * rendering/RenderBlock.cpp: Removed positionNewFloatOnLine.
1412 * rendering/RenderBlockLineLayout.cpp:
1413 (WebCore::RenderBlock::positionNewFloatOnLine): Moved from RenderBlock.cpp
1415 2011-04-05 Diego Gonzalez <diegohcg@webkit.org>
1417 Buildfix after r82125.
1419 [Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
1420 https://bugs.webkit.org/show_bug.cgi?id=57087
1422 * platform/qt/QtMobileWebStyle.cpp:
1423 (QtMobileWebStyle::findChecker):
1424 (QtMobileWebStyle::findRadio):
1425 (QtMobileWebStyle::findComboButton):
1427 2011-04-06 Pavel Podivilov <podivilov@chromium.org>
1429 Reviewed by Yury Semikhatsky.
1431 Web Inspector: inline script imports in ScriptFormatterWorker.js so it works in Safari release.
1432 https://bugs.webkit.org/show_bug.cgi?id=57641
1434 * WebCore.xcodeproj/project.pbxproj:
1435 * gyp/streamline-inspector-source.sh:
1436 * inspector/combine-javascript-resources.pl: Renamed from Source/WebCore/combine-javascript-resources.
1437 * inspector/inline-javascript-imports.py: Added.
1439 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1441 Reviewed by Eric Seidel.
1443 REGRESSION (r46914, r48764): When typing in Mail, line wrapping frequently occurs in the middle of words
1444 https://bugs.webkit.org/show_bug.cgi?id=57872
1446 r46914 initially introduced a regression by replacing calls to styleAtPosition by editingStyleAtPosition
1447 because editingStyleAtPosition did not avoid tab span to obtain the computed style unlike styleAtPosition.
1449 r46914 also introduced a regression by cloning hierarchy under new block at the insertion position without
1450 avoiding the tab span.
1452 Fixed the both regressions by avoiding tab spans when computing the editing style and when cloning hierarchy.
1454 Test: editing/inserting/insert-paragraph-separator-tab-span.html
1456 * editing/EditingStyle.cpp:
1457 (WebCore::EditingStyle::init): Always avoid a tab span when computing the editing style.
1458 * editing/InsertParagraphSeparatorCommand.cpp:
1459 (WebCore::InsertParagraphSeparatorCommand::doApply): Avoid cloning tab spans and inserting a paragraph
1460 separator into a paragraph separator.
1462 2011-04-06 Levi Weintraub <leviw@chromium.org>
1464 Reviewed by Ryosuke Niwa.
1466 Add member functions for determining line/paragraph separation to InlineIterator
1467 https://bugs.webkit.org/show_bug.cgi?id=57938
1469 Adding atTextParagraphSeparator and atParagraphSeparator inline convenience functions to
1470 InlineIterator, where it makes far more sense for them to be. Also moving
1471 shouldPreserveNewline to RenderObject and renaming it preservesNewline.
1473 No new tests as this provides no new functionality.
1475 * rendering/InlineIterator.h:
1476 (WebCore::InlineIterator::atTextParagraphSeparator):
1477 (WebCore::InlineIterator::atParagraphSeparator):
1478 * rendering/RenderBlockLineLayout.cpp:
1479 (WebCore::RenderBlock::requiresLineBox):
1480 (WebCore::RenderBlock::findNextLineBreak):
1481 * rendering/RenderObject.h:
1482 (WebCore::RenderObject::preservesNewline):
1484 2011-04-05 Alexander Pavlov <apavlov@chromium.org>
1486 Reviewed by Pavel Feldman.
1488 Web Inspector: Range insertNode function does not update content in the inspector
1489 https://bugs.webkit.org/show_bug.cgi?id=57829
1491 * inspector/InspectorDOMAgent.cpp:
1492 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1493 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
1495 2011-04-06 Alejandro G. Castro <alex@igalia.com>
1497 Fix GTK3 compilation after r82962.
1499 * platform/gtk/RenderThemeGtk3.cpp:
1500 (WebCore::paintToggle):
1501 (WebCore::renderButton):
1502 (WebCore::RenderThemeGtk::paintMenuList):
1503 (WebCore::RenderThemeGtk::paintTextField):
1504 (WebCore::RenderThemeGtk::paintSliderTrack):
1505 (WebCore::RenderThemeGtk::paintSliderThumb):
1506 (WebCore::RenderThemeGtk::paintProgressBar):
1507 (WebCore::paintSpinArrowButton):
1508 * platform/gtk/ScrollbarThemeGtk3.cpp:
1509 (WebCore::ScrollbarThemeGtk::paintTrackBackground):
1510 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
1511 (WebCore::ScrollbarThemeGtk::paintThumb):
1512 (WebCore::ScrollbarThemeGtk::paintButton):
1514 2011-04-06 Andrey Kosyakov <caseq@chromium.org>
1516 Reviewed by Yury Semikhatsky.
1518 Web Inspector: [Extensions API] remove inspectedPage.* events
1519 https://bugs.webkit.org/show_bug.cgi?id=57763
1521 - Removed webInspector.inspectedPage.* events
1522 - moved onNavigated to webInspector.resources
1524 * inspector/front-end/ExtensionAPI.js:
1525 (WebInspector.injectedExtensionAPI):
1526 (WebInspector.injectedExtensionAPI.InspectedWindow):
1527 * inspector/front-end/ExtensionAPISchema.json:
1528 * inspector/front-end/ExtensionServer.js:
1529 (WebInspector.ExtensionServer.prototype.notifyInspectedURLChanged):
1530 * inspector/front-end/inspector.js:
1531 (WebInspector.domContentEventFired):
1532 (WebInspector.loadEventFired):
1533 (WebInspector.inspectedURLChanged):
1535 2011-04-06 Joseph Pecoraro <joepeck@webkit.org>
1537 Reviewed by Antti Koivisto.
1539 Add <head> to the simpleUserAgentStyleSheet
1540 https://bugs.webkit.org/show_bug.cgi?id=57915
1542 * css/CSSStyleSelector.cpp:
1543 (WebCore::elementCanUseSimpleDefaultStyle): add head to the
1544 simple stylesheet, display:none.
1546 2011-04-05 Mikhail Naganov <mnaganov@chromium.org>
1548 Reviewed by Pavel Feldman.
1550 Web Inspector: [Chromium] Add layout test for Summary view of detailed heap snapshots.
1551 https://bugs.webkit.org/show_bug.cgi?id=57856
1553 Test: inspector/profiler/detailed-heapshots-summary.html
1555 * inspector/front-end/DataGrid.js:
1556 (WebInspector.DataGrid):
1557 * inspector/front-end/DetailedHeapshotGridNodes.js:
1558 (WebInspector.HeapSnapshotGridNode.prototype._populate.doPopulate):
1559 (WebInspector.HeapSnapshotGridNode.prototype._populate):
1560 (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
1561 (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort):
1562 (WebInspector.HeapSnapshotGridNode.prototype.sort):
1563 (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren):
1564 * inspector/front-end/DetailedHeapshotView.js:
1565 (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
1566 * inspector/front-end/ProfilesPanel.js:
1567 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
1568 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
1570 2011-04-06 Anders Bakken <agbakken@gmail.com>
1572 Reviewed by David Levin.
1574 [Qt] SmartReplaceQt.cpp has coding-style errors
1575 https://bugs.webkit.org/show_bug.cgi?id=40261
1577 This patch does not require new test cases.
1579 * editing/qt/SmartReplaceQt.cpp:
1580 (WebCore::isCharacterSmartReplaceExempt):
1582 2011-04-06 Naoki Takano <takano.naoki@gmail.com>
1584 Reviewed by Ryosuke Niwa.
1586 REGRESSION(r81328): Null pointer crash in canAppendNewLineFeed when selection isn't inside an editable element
1587 https://bugs.webkit.org/show_bug.cgi?id=57755
1589 Test: editing/execCommand/insert-line-break-onload.html
1591 * editing/TypingCommand.cpp:
1592 (WebCore::canAppendNewLineFeed): Added null pointer check for rootEditableElement().
1594 2011-04-05 Antti Koivisto <antti@apple.com>
1596 Reviewed by Cameron Zwarich.
1598 Avoid calling currentTime() from FrameView::adjustedDeferredRepaintDelay() when repaints are deferred
1599 https://bugs.webkit.org/show_bug.cgi?id=57914
1601 Don't call adjustedDeferredRepaintDelay unnecessarily.
1603 * page/FrameView.cpp:
1604 (WebCore::FrameView::repaintContentRectangle):
1605 (WebCore::FrameView::adjustedDeferredRepaintDelay):
1607 2011-04-05 Steve VanDeBogart <vandebo@chromium.org>
1609 Reviewed by David Levin.
1611 Update call to SkAdvancedTypefaceMetrics to new API.
1612 https://bugs.webkit.org/show_bug.cgi?id=57887
1614 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1615 (WebCore::FontPlatformData::emSizeInFontUnits):
1617 2011-04-05 Alexey Proskuryakov <ap@apple.com>
1619 Reviewed by Darin Adler.
1621 Rename event dispatching functions after form event removal
1622 https://bugs.webkit.org/show_bug.cgi?id=57908
1624 * dom/InputElement.cpp:
1625 (WebCore::InputElement::setValueFromRenderer):
1627 (WebCore::Node::dispatchChangeEvent):
1628 (WebCore::Node::dispatchInputEvent):
1629 (WebCore::Node::defaultEventHandler):
1631 * html/HTMLFormControlElement.cpp:
1632 (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent):
1633 (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent):
1634 (WebCore::HTMLTextFormControlElement::dispatchFormControlChangeEvent):
1635 Renamed "events" to "event", since there is only one event to dispatch now.
1637 2011-04-05 Anders Bakken <agbakken@gmail.com>
1639 Reviewed by David Levin.
1641 [Qt] DragControllerQt.cpp has coding-style errors
1642 https://bugs.webkit.org/show_bug.cgi?id=40258
1644 This patch does not require new test cases.
1646 * page/qt/DragControllerQt.cpp:
1647 (WebCore::DragController::dragOperation):
1649 2011-04-05 Steve VanDeBogart <vandebo@chromium.org>
1651 Reviewed by David Levin.
1653 Update deprecated include: platform_canvas_win.h to platform_canvas.h.
1654 https://bugs.webkit.org/show_bug.cgi?id=57896
1656 * platform/graphics/chromium/FontChromiumWin.cpp:
1658 2011-04-05 Darin Adler <darin@apple.com>
1660 Try to fix Leopard bots.
1662 * platform/mac/HTMLConverter.mm: Fix #if back the way Alexey seems
1663 to have intended it.
1665 2011-04-05 Darin Adler <darin@apple.com>
1667 Try to fix Leopard bots.
1669 * platform/mac/HTMLConverter.mm: Move declarations of new functions
1670 inside the appropriate #if.
1672 2011-04-05 Adrienne Walker <enne@google.com>
1674 Reviewed by Tony Chang.
1676 Correctly set color when using skia's fillRoundedRect.
1677 https://bugs.webkit.org/show_bug.cgi?id=57907
1679 * platform/graphics/skia/GraphicsContextSkia.cpp:
1680 (WebCore::GraphicsContext::fillRoundedRect):
1682 2011-04-05 Alexey Proskuryakov <ap@apple.com>
1684 Reviewed by Darin Adler.
1686 Move attributedStringFromRange down to WebCore
1687 https://bugs.webkit.org/show_bug.cgi?id=57905
1689 No change in behavior, so no new tests.
1691 Also tweaked HTMLConverter to not use methods defined in WebKit.
1694 * WebCore.xcodeproj/project.pbxproj:
1695 * platform/mac/HTMLConverter.h:
1696 * platform/mac/HTMLConverter.mm:
1697 (-[WebHTMLConverter _newTabForElement:]):
1698 (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
1699 (+[WebHTMLConverter editingAttributedStringFromRange:]):
1700 (fileWrapperForURL):
1701 (fileWrapperForElement):
1702 * platform/mac/PasteboardMac.mm:
1703 (WebCore::Pasteboard::writeSelection):
1704 * platform/mac/WebNSAttributedStringExtras.h: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.h.
1705 * platform/mac/WebNSAttributedStringExtras.mm: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.mm.
1706 (WebCore::attributedStringByStrippingAttachmentCharacters):
1708 2011-04-05 Simon Fraser <simon.fraser@apple.com>
1710 Reviewed by Darin Adler.
1712 Rename variables in border drawing code for readability
1713 https://bugs.webkit.org/show_bug.cgi?id=57894
1715 * rendering/RenderObject.cpp:
1716 (WebCore::RenderObject::drawLineForBoxSide):
1717 (WebCore::RenderObject::drawBoxSideFromPath):
1718 (WebCore::RenderObject::drawArcForBoxSide):
1720 2011-04-05 Antti Koivisto <antti@apple.com>
1722 Reviewed by Darin Adler.
1724 Defer repaints during style recalc
1725 https://bugs.webkit.org/show_bug.cgi?id=57886
1727 This reduces the need to do (often expensive) platform surface invalidation.
1728 We already do this during layout but style recalculation may trigger
1729 invalidation as well.
1732 (WebCore::Document::recalcStyle):
1734 2011-04-05 Jer Noble <jer.noble@apple.com>
1736 Reviewed by Darin Adler.
1738 HTML5 Player Has no Fullscreen Mode
1739 https://bugs.webkit.org/show_bug.cgi?id=57795
1741 * html/HTMLVideoElement.cpp:
1742 (WebCore::HTMLVideoElement::supportsFullscreen): Call the new ChromeClient API
1743 supportsFullScreenForElement() before the old supportsFullScreenForNode() API.
1745 2011-04-05 Vsevolod Vlasov <vsevik@chromium.org>
1747 Reviewed by Pavel Feldman.
1749 Web Inspector: fix data url's status and timing the network panel.
1750 https://bugs.webkit.org/show_bug.cgi?id=53066
1752 Added data url support for status of network resources.
1754 * English.lproj/localizedStrings.js:
1755 * inspector/front-end/NetworkPanel.js:
1756 (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
1757 * inspector/front-end/Resource.js:
1758 (WebInspector.Resource.prototype.isDataURL):
1760 2011-04-04 Vitaly Repeshko <vitalyr@chromium.org>
1762 Reviewed by Adam Barth.
1764 [V8] Keep dirty primitive CSS values alive.
1765 https://bugs.webkit.org/show_bug.cgi?id=57810
1767 * bindings/v8/V8GCController.cpp:
1768 (WebCore::GrouperVisitor::visitDOMWrapper):
1770 2011-04-05 Simon Fraser <simon.fraser@apple.com>
1772 Reviewed by Adele Peterson.
1774 Add a fast path for simple color backgrounds
1775 https://bugs.webkit.org/show_bug.cgi?id=57773
1777 Add a fast path for drawing simple color backgrounds. It's
1778 faster to fill a path or rect than it is to set up a clip,
1779 and then paint the rect.
1781 No visible behavior change so no new tests.
1783 * rendering/RenderBoxModelObject.cpp:
1784 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1786 2011-04-05 Patrick Gansterer <paroga@webkit.org>
1788 Unreviewed EFL build fix for r82962.
1790 * CMakeListsEfl.txt:
1792 2011-04-05 Chris Rogers <crogers@google.com>
1794 Reviewed by Kenneth Russell.
1796 Add support for offline audio rendering to AudioContext API
1797 https://bugs.webkit.org/show_bug.cgi?id=57676
1799 No new tests since audio API is not yet implemented.
1801 * DerivedSources.make:
1803 * WebCore.xcodeproj/project.pbxproj:
1804 * bindings/js/JSAudioContextCustom.cpp:
1805 (WebCore::JSAudioContextConstructor::constructJSAudioContext):
1806 * bindings/js/JSEventCustom.cpp:
1808 * bindings/js/JSEventTarget.cpp:
1810 * bindings/v8/V8DOMWrapper.cpp:
1811 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1812 * bindings/v8/custom/V8AudioContextCustom.cpp:
1813 (WebCore::V8AudioContext::constructorCallback):
1814 * bindings/v8/custom/V8EventCustom.cpp:
1817 (WebCore::Event::isOfflineAudioCompletionEvent):
1819 * dom/EventTarget.cpp:
1820 (WebCore::EventTarget::toAudioContext):
1821 * dom/EventTarget.h:
1822 * platform/audio/HRTFDatabaseLoader.cpp:
1823 (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
1824 * platform/audio/HRTFDatabaseLoader.h:
1825 (WebCore::HRTFDatabaseLoader::loader):
1826 * webaudio/AudioContext.cpp:
1827 (WebCore::AudioContext::createOfflineContext):
1828 (WebCore::AudioContext::AudioContext):
1829 (WebCore::AudioContext::constructCommon):
1830 (WebCore::AudioContext::document):
1831 (WebCore::AudioContext::scriptExecutionContext):
1832 (WebCore::AudioContext::toAudioContext):
1833 (WebCore::AudioContext::startRendering):
1834 (WebCore::AudioContext::fireCompletionEvent):
1835 * webaudio/AudioContext.h:
1836 (WebCore::AudioContext::isOfflineContext):
1837 (WebCore::AudioContext::eventTargetData):
1838 (WebCore::AudioContext::ensureEventTargetData):
1839 (WebCore::AudioContext::refEventTarget):
1840 (WebCore::AudioContext::derefEventTarget):
1841 * webaudio/AudioContext.idl:
1842 * webaudio/AudioDestinationNode.cpp:
1843 (WebCore::AudioDestinationNode::AudioDestinationNode):
1844 * webaudio/AudioDestinationNode.h:
1845 (WebCore::AudioDestinationNode::reset):
1846 (WebCore::AudioDestinationNode::numberOfChannels):
1847 * webaudio/ConvolverNode.cpp:
1848 (WebCore::ConvolverNode::setBuffer):
1849 * webaudio/DefaultAudioDestinationNode.cpp: Added.
1850 (WebCore::DefaultAudioDestinationNode::DefaultAudioDestinationNode):
1851 (WebCore::DefaultAudioDestinationNode::~DefaultAudioDestinationNode):
1852 (WebCore::DefaultAudioDestinationNode::initialize):
1853 (WebCore::DefaultAudioDestinationNode::uninitialize):
1854 (WebCore::DefaultAudioDestinationNode::startRendering):
1855 * webaudio/DefaultAudioDestinationNode.h: Added.
1856 (WebCore::DefaultAudioDestinationNode::create):
1857 (WebCore::DefaultAudioDestinationNode::sampleRate):
1858 * webaudio/OfflineAudioCompletionEvent.cpp: Added.
1859 (WebCore::OfflineAudioCompletionEvent::create):
1860 (WebCore::OfflineAudioCompletionEvent::OfflineAudioCompletionEvent):
1861 (WebCore::OfflineAudioCompletionEvent::~OfflineAudioCompletionEvent):
1862 (WebCore::OfflineAudioCompletionEvent::isOfflineAudioCompletionEvent):
1863 * webaudio/OfflineAudioCompletionEvent.h: Added.
1864 (WebCore::OfflineAudioCompletionEvent::renderedBuffer):
1865 * webaudio/OfflineAudioCompletionEvent.idl: Added.
1866 * webaudio/OfflineAudioDestinationNode.cpp: Added.
1867 (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
1868 (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
1869 (WebCore::OfflineAudioDestinationNode::initialize):
1870 (WebCore::OfflineAudioDestinationNode::uninitialize):
1871 (WebCore::OfflineAudioDestinationNode::startRendering):
1872 (WebCore::OfflineAudioDestinationNode::renderEntry):
1873 (WebCore::OfflineAudioDestinationNode::render):
1874 (WebCore::OfflineAudioDestinationNode::notifyCompleteDispatch):
1875 (WebCore::OfflineAudioDestinationNode::notifyComplete):
1876 * webaudio/OfflineAudioDestinationNode.h: Added.
1877 (WebCore::OfflineAudioDestinationNode::create):
1878 (WebCore::OfflineAudioDestinationNode::sampleRate):
1880 2011-04-05 Martin Robinson <mrobinson@igalia.com>
1882 Reviewed by Eric Seidel.
1884 [Cairo] Better separate the concerns of GraphicsContextCairo
1885 https://bugs.webkit.org/show_bug.cgi?id=55150
1887 Add a PlatformContextCairo which right now stores the cairo_t* for a
1888 GraphicsContextCairo. Later patches will move logic for tracking ContextShadow
1889 and image masking layers into this PlatformContextCairo class.
1891 No new tests. This patch is only a code cleanup.
1894 * platform/graphics/GraphicsContext.h: The platform context is no longer a
1895 cairo_t, but our new class the PlatformContextCairo.
1896 * platform/graphics/cairo/ContextShadowCairo.cpp: Updated to reflect new class.j
1897 * platform/graphics/cairo/FontCairo.cpp: Ditto.
1898 * platform/graphics/cairo/GradientCairo.cpp: Ditto.
1899 * platform/graphics/cairo/GraphicsContextCairo.cpp: Mostly mechanical
1900 changes which now reference platformContext()->cr() to get the cairo_t.
1901 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Now hold the
1902 PlatformContextCairo instead of the cairo_t.
1903 * platform/graphics/cairo/ImageBufferCairo.cpp: Update to reflect new class.
1904 * platform/graphics/cairo/ImageCairo.cpp: Ditto.
1905 * platform/graphics/cairo/PathCairo.cpp: Ditto.
1906 * platform/graphics/cairo/PlatformContextCairo.cpp: Added.
1907 * platform/graphics/cairo/PlatformContextCairo.h: Added.
1908 * platform/graphics/gtk/FontGtk.cpp: Update to reflect new class.
1909 * platform/graphics/gtk/IconGtk.cpp: Ditto.
1910 * platform/graphics/win/GraphicsContextCairoWin.cpp: Now fill out
1911 m_data with a private section containing the platform context instead of
1913 * platform/gtk/RenderThemeGtk.cpp: Update to reflect new class.
1914 * platform/gtk/WidgetRenderingContext.cpp: Ditto.
1915 (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Ditto.
1916 * plugins/gtk/PluginViewGtk.cpp: Ditto.
1918 2011-04-05 David Dorwin <ddorwin@chromium.org>
1920 Reviewed by David Levin.
1922 Fullscreen code assumes all layers use GPU compositing when USE(ACCELERATED_COMPOSITING)
1923 https://bugs.webkit.org/show_bug.cgi?id=57400
1925 Check whether the full screen renderer layer is being composited by the GPU before assuming that the backing is valid.
1926 Accelerated compositing may be compiled in but disabled at runtime or for some elements.
1928 Tests: Fullscreen layout tests on Chromium.
1931 (WebCore::Document::webkitWillEnterFullScreenForElement):
1932 (WebCore::Document::webkitDidEnterFullScreenForElement):
1933 (WebCore::Document::webkitWillExitFullScreenForElement):
1935 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
1937 Reviewed by Dirk Schulze.
1939 Regression: Invalid write in SVGTextLayoutEngine
1940 https://bugs.webkit.org/show_bug.cgi?id=57721
1942 Properly stop layout if all metrics object refer to zero-width/height characters,
1943 which can happen for instance when using <text font-size="0">.
1945 Test: svg/text/font-size-null-assertion.svg
1947 * rendering/svg/SVGTextLayoutEngine.cpp:
1948 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
1949 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
1951 2011-04-04 MORITA Hajime <morrita@google.com>
1953 Reviewed by Ryosuke Niwa.
1955 [Refactoring] SpellCheckingResult should be replaced with TextCheckingResult
1956 https://bugs.webkit.org/show_bug.cgi?id=56085
1958 Removed WebCore::SpellCheckingResult and replaced it with TextCheckingResult.
1959 This change also added TextCheckerClient::requestCheckingOfString() should have
1960 TextCheckingTypeMask as a parameter to control text checking type.
1963 * editing/Editor.cpp:
1964 (WebCore::Editor::replaceSelectionWithFragment):
1965 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1966 (WebCore::Editor::textCheckingTypeMaskFor): Extracted from markAllMisspellingsAndBadGrammarInRanges()
1967 * editing/SpellChecker.cpp:
1968 (WebCore::SpellChecker::requestCheckingFor): Added a parameter.
1969 (WebCore::SpellChecker::markAt): Extracted from didCheck(), Added a check for the GrammarDetail object.
1970 (WebCore::SpellChecker::didCheck):
1971 * editing/SpellChecker.h:
1972 * loader/EmptyClients.h:
1973 (WebCore::EmptyTextCheckerClient::checkTextOfParagraph):
1974 (WebCore::EmptyTextCheckerClient::requestCheckingOfString):
1975 * platform/text/TextCheckerClient.h:
1977 2011-04-04 Antti Koivisto <antti@apple.com>
1979 Reviewed by Sam Weinig.
1981 Print stylesheet on nytimes.com loads too early
1982 https://bugs.webkit.org/show_bug.cgi?id=57814
1984 Don't load resources with Very Low priority until there are no other resources to
1985 load for the host (or until document is complete enough that we stop limiting requests).
1987 No tests, this is difficult to observe reliably with our current testing infrastructure.
1988 Verified working with Wireshark.
1990 * loader/ResourceLoadScheduler.cpp:
1991 (WebCore::ResourceLoadScheduler::servePendingRequests):
1992 (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
1993 * loader/ResourceLoadScheduler.h:
1995 2011-04-04 Steve Block <steveblock@google.com>
1997 Reviewed by Dimitri Glazkov.
1999 JavaInstance should be a pure interface
2000 https://bugs.webkit.org/show_bug.cgi?id=55383
2002 This patch fixes JavaInstance for V8 only.
2004 It factors out a JavaInstance interface which does not use JNI
2005 types. This will allow the Java bridge to be used with objects
2006 that don't use JNI directly. The existing jobject-backed
2007 implementation is moved to a new JavaInstanceJobject class which
2008 implements the interface.
2010 No new tests, refactoring only.
2012 * Android.v8bindings.mk:
2014 * bridge/jni/JobjectWrapper.h:
2015 * bridge/jni/v8/JNIUtilityPrivate.cpp:
2016 (JSC::Bindings::jvalueToJavaValue):
2017 (JSC::Bindings::javaValueToJvalue):
2018 * bridge/jni/v8/JavaInstanceJobjectV8.cpp:
2019 (JavaInstanceJobject::JavaInstanceJobject):
2020 (JavaInstanceJobject::~JavaInstanceJobject):
2021 (JavaInstanceJobject::begin):
2022 (JavaInstanceJobject::end):
2023 (JavaInstanceJobject::getClass):
2024 (JavaInstanceJobject::invokeMethod):
2025 (JavaInstanceJobject::getField):
2026 * bridge/jni/v8/JavaInstanceJobjectV8.h: Copied from Source/WebCore/bridge/jni/v8/JavaInstanceV8.h.
2027 (JSC::Bindings::JavaInstanceJobject::javaInstance):
2028 * bridge/jni/v8/JavaInstanceV8.h:
2029 (JSC::Bindings::JavaInstance::~JavaInstance):
2031 2011-04-05 Dimitri Glazkov <dglazkov@chromium.org>
2033 Reviewed by Darin Adler.
2035 Move MouseEvent-dispatching logic into MouseEventDispatchMediator.
2036 https://bugs.webkit.org/show_bug.cgi?id=57639
2038 Refactoring, covered by existing tests.
2040 * dom/EventDispatcher.cpp:
2041 (WebCore::EventDispatcher::dispatchEvent): Moved useful assertion here
2042 from dispatchMouseEvent.
2043 (WebCore::EventDispatcher::adjustRelatedTarget): Converted into a method.
2044 * dom/EventDispatcher.h: Adjusted decls.
2045 (WebCore::EventDispatcher::node): Added.
2046 * dom/MouseEvent.cpp:
2047 (WebCore::MouseEvent::create): Moved useful assertion here from
2049 (WebCore::MouseEventDispatchMediator::MouseEventDispatchMediator): Added.
2050 (WebCore::MouseEventDispatchMediator::event): Added.
2051 (WebCore::MouseEventDispatchMediator::dispatchEvent): Added.
2053 (WebCore::MouseEvent::setRelatedTarget): Added.
2055 (WebCore::Node::dispatchMouseEvent): Changed to use MouseEventDispatchMediator.
2057 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2059 Reviewed by Adam Roben & Dirk Schulze.
2061 text-tspan-02-b.svg from SVG 1.1 2nd edition fails
2062 https://bugs.webkit.org/show_bug.cgi?id=57831
2064 We were not spanning rotation values correcty accross text children, which resulted in text-span-02-b.svg misrendering.
2065 While rewriting the rotation specific code, it came apparent that the LayoutScope concept is flawed in general and
2066 should be replaced by a global list of x/y/dx/dy/rotate values for the whole text subtree. This makes it much simpler
2067 to implement the demand that the last rotation value spans the whole scope. A follow-up patch will optimize the
2071 <text rotate="10,20,999,50">AB<tspan rotate="30">CDE</>FGH</text>
2073 text: A B C D E F G H
2074 rotate="10 20 30 30 30 50 50 50"
2076 Tests: svg/W3C-SVG-1.1-SE/text-tspan-02-b.svg
2077 svg/text/text-midpoint-split-bug.svg
2079 * rendering/RenderBlockLineLayout.cpp: Move SVG specific midpoint creation after the non-SVG specific code that may mutate the midpoints. otherwhise we end up in an
2080 (WebCore::RenderBlock::findNextLineBreak): inconsistent state. We were intereferring with the ignoreSpaces code resulting in wrong truncations - covered by new testcase.
2081 * rendering/svg/SVGTextLayoutAttributes.cpp:
2082 (WebCore::SVGTextLayoutAttributes::reserveCapacity): Also reserveCapacity for the text metrics list (minor optimization).
2083 (WebCore::SVGTextLayoutAttributes::fillWithEmptyValue): Added helper function for use from SVGTextLayoutAttributesBuilder.
2084 (WebCore::SVGTextLayoutAttributes::appendEmptyValue): Ditto.
2085 (WebCore::safeValueAtPosition): Ditto. (Inline helper)
2086 (WebCore::SVGTextLayoutAttributes::appendSingleValueFromAttribute): Ditto.
2087 * rendering/svg/SVGTextLayoutAttributes.h: Ditto.
2088 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewrite code, see explaination above.
2089 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree):
2090 (WebCore::processRenderSVGInlineText):
2091 (WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
2092 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForAllCharacters):
2093 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
2094 (WebCore::fillListAtPosition):
2095 (WebCore::SVGTextLayoutAttributesBuilder::fillAttributesAtPosition):
2096 * rendering/svg/SVGTextLayoutAttributesBuilder.h:
2097 (WebCore::SVGTextLayoutAttributesBuilder::TextPosition::TextPosition):
2099 2011-04-05 Levi Weintraub <leviw@chromium.org>
2101 Reviewed by Ryosuke Niwa.
2103 DeleteButtonController is given invalid style
2104 https://bugs.webkit.org/show_bug.cgi?id=57853
2106 DeleteButtonController was assigned an invalid style that can lead to assertions
2107 in debug builds. This matches up the code with its intent.
2109 No new tests as this changes nothing on release builds.
2111 * editing/DeleteButtonController.cpp:
2112 (WebCore::DeleteButtonController::createDeletionUI):
2114 2011-04-05 Anders Bakken <agbakken@gmail.com>
2116 Reviewed by Laszlo Gombos.
2118 [Qt] EditorQt.cpp has coding-style errors
2119 https://bugs.webkit.org/show_bug.cgi?id=40260
2121 This patch does not require new test cases.
2123 * editing/qt/EditorQt.cpp:
2125 2011-04-05 Pavel Podivilov <podivilov@chromium.org>
2127 Reviewed by Pavel Feldman.
2129 Web Inspector: go to line dialog highlights wrong line.
2130 https://bugs.webkit.org/show_bug.cgi?id=57845
2132 * inspector/front-end/GoToLineDialog.js:
2133 (WebInspector.GoToLineDialog.prototype._highlightSelectedLine):
2135 2011-04-05 Luke Macpherson <macpherson@chromium.org>
2137 Reviewed by Dimitri Glazkov.
2139 Implement CSSPropertyDirection in CSSStyleApplyProperty
2140 https://bugs.webkit.org/show_bug.cgi?id=57608
2142 No new tests required as no new functionality introduced.
2144 * css/CSSStyleApplyProperty.cpp:
2145 Add implementation class for CSSPropertyDirection
2146 * css/CSSStyleSelector.cpp:
2147 Remove existing implementation for CSSPropertyDirection
2148 * css/CSSStyleSelector.h:
2149 Add getter for element
2151 2011-04-05 Leandro Gracia Gil <leandrogracia@chromium.org>
2153 Reviewed by Steve Block.
2155 Factoring the creation of 'FunctionOnly' callbacks in V8.
2156 https://bugs.webkit.org/show_bug.cgi?id=57760
2158 This method creates a template from an existing functionality in V8GeolocationCustom.cpp
2159 to V8Utilities to be used by the custom bindings of both Geolocation and the Media Stream API.
2161 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
2163 * bindings/v8/V8Utilities.cpp:
2164 (WebCore::throwTypeMismatchException):
2165 * bindings/v8/V8Utilities.h:
2166 (WebCore::createFunctionOnlyCallback):
2167 * bindings/v8/custom/V8GeolocationCustom.cpp:
2168 (WebCore::V8Geolocation::getCurrentPositionCallback):
2169 (WebCore::V8Geolocation::watchPositionCallback):
2171 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2173 Reviewed by Andreas Kling.
2175 Switch from Vector<UChar> to StringBuilder in bindings/
2176 https://bugs.webkit.org/show_bug.cgi?id=57838
2178 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2179 (WebCore::cssPropertyName):
2180 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2181 (WebCore::cssPropertyInfo):
2183 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2185 Reviewed by Andreas Kling.
2187 Switch from Vector<UChar> to StringBuilder in accessibility/
2188 https://bugs.webkit.org/show_bug.cgi?id=57837
2190 * accessibility/AccessibilityObject.cpp:
2191 (WebCore::AccessibilityObject::listMarkerTextForNodeAndPosition):
2192 (WebCore::AccessibilityObject::stringForVisiblePositionRange):
2193 * accessibility/AccessibilityRenderObject.cpp:
2194 (WebCore::AccessibilityRenderObject::accessibilityDescriptionForElements):
2196 2011-04-05 Andrey Adaikin <aandrey@google.com>
2198 Reviewed by Pavel Feldman.
2200 Web Inspector: Scripts with syntax errors are cropped in the UI
2201 https://bugs.webkit.org/show_bug.cgi?id=57828
2203 * inspector/front-end/SourceFrame.js:
2204 (WebInspector.SourceFrame.prototype.addMessageToSource):
2206 2011-04-05 Alexey Proskuryakov <ap@apple.com>
2208 Reviewed by Darin Adler.
2210 Remove onformchange and onforminput events/event handlers
2211 https://bugs.webkit.org/show_bug.cgi?id=55755
2212 <rdar://problem/9087969>
2214 Covered by existing tests.
2221 (WebCore::Event::fromUserGesture):
2223 * html/FormAssociatedElement.h:
2224 * html/HTMLAttributeNames.in:
2225 * html/HTMLElement.cpp:
2226 (WebCore::HTMLElement::parseMappedAttribute):
2227 * html/HTMLElement.h:
2228 * html/HTMLFormControlElement.h:
2229 (WebCore::HTMLFormControlElement::isEnumeratable):
2230 * html/HTMLFormElement.cpp:
2231 * html/HTMLFormElement.h:
2232 * html/HTMLFormElement.idl:
2233 * html/HTMLInputElement.h:
2234 * html/HTMLKeygenElement.h:
2235 * html/HTMLObjectElement.h:
2236 (WebCore::HTMLObjectElement::isEnumeratable):
2237 * html/HTMLOutputElement.h:
2238 (WebCore::HTMLOutputElement::isEnumeratable):
2239 * html/HTMLSelectElement.h:
2240 (WebCore::HTMLSelectElement::isEnumeratable):
2241 * html/HTMLTextAreaElement.h:
2242 (WebCore::HTMLTextAreaElement::isEnumeratable):
2244 * page/DOMWindow.idl:
2246 2011-04-05 Sheriff Bot <webkit.review.bot@gmail.com>
2248 Unreviewed, rolling out r82915.
2249 http://trac.webkit.org/changeset/82915
2250 https://bugs.webkit.org/show_bug.cgi?id=57825
2252 Broke 270 chromium tests on win and linux (Requested by
2253 podivilov on #webkit).
2255 * rendering/RenderThemeChromiumSkia.cpp:
2256 (WebCore::RenderThemeChromiumSkia::defaultGUIFont):
2258 2011-04-05 James Simonsen <simonjam@chromium.org>
2260 Reviewed by Adam Barth.
2262 Stop preload scanning CSS when it's impossible to have another @import.
2263 https://bugs.webkit.org/show_bug.cgi?id=57664
2265 @import statements are only allowed at the beginning of a CSS file.
2266 Only comments or @charset can precede them. After seeing anything else,
2267 abort early so that we:
2268 - don't have to parse the rest of the CSS.
2269 - don't preload something that the regular parser won't load.
2271 * html/parser/CSSPreloadScanner.cpp:
2272 (WebCore::CSSPreloadScanner::scan): Terminate early if we're done with @imports.
2273 (WebCore::CSSPreloadScanner::tokenize): Terminate early if we see a {} or any style rule.
2274 (WebCore::CSSPreloadScanner::emitRule): Only @charset or @import are allowed to precede @import.
2275 * html/parser/CSSPreloadScanner.h: Add DoneParsingImportRules state.
2277 2011-04-05 Takayoshi Kochi <kochi@chromium.org>
2279 Reviewed by Tony Chang.
2281 [chromium] Specify 'sans-serif' as a fallback to the default UI font
2282 'Arial' for non-latin UI scripts (e.g. CJK).
2283 https://bugs.webkit.org/show_bug.cgi?id=55035
2285 No new tests, because it may still fail if the system is not configured
2286 properly to resolve 'sans-serif' to existing real font file, thus even
2287 manual test is hard to systematically tell it is working properly.
2289 * rendering/RenderThemeChromiumSkia.cpp
2291 2011-04-05 Kent Tamura <tkent@chromium.org>
2293 Reviewed by Dimitri Glazkov.
2295 Setting defaultValue on a textarea with a modified value still clobbers the value
2296 https://bugs.webkit.org/show_bug.cgi?id=57636
2298 If the dirty flag is true, we shouldn't update the value when the
2299 defaultValue is updated
2301 Test: fast/forms/textarea-set-defaultvalue-after-value.html
2303 * html/HTMLTextAreaElement.cpp:
2304 (WebCore::HTMLTextAreaElement::childrenChanged):
2305 (WebCore::HTMLTextAreaElement::setDefaultValue):
2307 2011-04-04 Kent Tamura <tkent@chromium.org>
2309 Add a case label which was unexpectedly removed in r82899.
2310 https://bugs.webkit.org/show_bug.cgi?id=50661
2312 * css/CSSSelector.cpp:
2313 (WebCore::CSSSelector::extractPseudoType):
2315 2011-04-04 Dan Bernstein <mitz@apple.com>
2317 Reviewed by Simon Fraser.
2319 <rdar://problem/7709452> Implement Default Ruby Overhang Behavior
2320 https://bugs.webkit.org/show_bug.cgi?id=49334
2322 Tests: fast/ruby/overhang-horizontal.html
2323 fast/ruby/overhang-vertical.html
2325 This is a first cut at ruby overhang. It allows ruby text to hang over other
2326 text of equal or smaller size. Two notable omissions are that max preferred
2327 width computation was not patched, so it will overshoot, and that overhang
2328 ignores the width of the adjoining text runs.
2330 * rendering/RenderBlock.h:
2331 * rendering/RenderBlockLineLayout.cpp:
2332 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Adjust margins
2333 of ruby runs for overhang.
2334 (WebCore::RenderBlock::fitBelowFloats): Maintain the increase in line width to
2335 compensate for overhang.
2336 (WebCore::RenderBlock::findNextLineBreak): When encountering
2337 a ruby run, increase the line width to account for the fact that overhang will be
2339 * rendering/RenderRubyRun.cpp:
2340 (WebCore::RenderRubyRun::getOverhang): Added. Allows ruby to overhang if
2341 the adjoining renderer is text with equal or smaller font size.
2342 * rendering/RenderRubyRun.h:
2343 (WebCore::toRenderRubyRun):
2345 2011-04-04 David Kilzer <ddkilzer@apple.com>
2347 <http://webkit.org/b/57384> CFNetwork and WebCore load priorities should match
2349 Reviewed by Alexey Proskuryakov.
2351 * WebCore.exp.in: Export wkSetHTTPPipeliningMaximumPriority().
2352 * platform/mac/WebCoreSystemInterface.h:
2353 (wkSetHTTPPipeliningMaximumPriority): Added function pointer
2355 * platform/mac/WebCoreSystemInterface.mm:
2356 (wkSetHTTPPipeliningMaximumPriority): Added function pointer.
2357 * platform/network/cf/ResourceRequestCFNet.cpp:
2358 (WebCore::initializeMaximumHTTPConnectionCountPerHost): Call
2359 wkSetHTTPPipeliningMaximumPriority() to set the maximum HTTP
2360 pipelining priority.
2361 * platform/network/cf/ResourceRequestCFNet.h:
2362 (WebCore::toResourceLoadPriority): Renamed from
2363 mapHTTPPipeliningPriorityToResourceLoadPriority(). Updated to
2364 to handle Unresolved case.
2365 (WebCore::toHTTPPipeliningPriority): Renamed from
2366 mapResourceLoadPriorityToHTTPPipeliningPriority(). Updated to
2367 handle Unresolved case.
2368 * platform/network/mac/ResourceRequestMac.mm:
2369 (WebCore::ResourceRequest::doUpdateResourceRequest): Switched to
2370 use toResourceLoadPriority().
2371 (WebCore::ResourceRequest::doUpdatePlatformRequest): Switched to
2372 use toHTTPPipeliningPriority(). Moved
2373 shouldForceHTTPPipeliningPriorityHigh() check into the argument
2374 of toHTTPPipeliningPriority() instead of hard-coding a
2375 now-incorrect value.
2377 2011-04-04 MORITA Hajime <morrita@google.com>
2379 Reviewed by Kent Tamura.
2381 Convert <meter> shadow DOM to a DOM-based shadow.
2382 https://bugs.webkit.org/show_bug.cgi?id=50661
2384 Eliminated a large part of <meter> custom layout code,
2385 which is replaced by a shadow tree.
2386 Note that the shadow tree is created on construction time and
2387 will remain during the host HTMLMeterElement lifecycle.
2394 * WebCore.vcproj/WebCore.vcproj:
2395 * WebCore.xcodeproj/project.pbxproj:
2396 * css/CSSMutableStyleDeclaration.cpp:
2397 (WebCore::CSSMutableStyleDeclaration::setProperty):
2398 * css/CSSMutableStyleDeclaration.h:
2399 * css/CSSSelector.cpp:
2400 (WebCore::CSSSelector::pseudoId):
2401 (WebCore::nameToPseudoTypeMap):
2402 (WebCore::CSSSelector::extractPseudoType):
2403 * css/CSSSelector.h:
2406 (meter::-webkit-meter-bar):
2407 (meter::-webkit-meter-optimum-value):
2408 (meter::-webkit-meter-suboptimum-value):
2409 (meter::-webkit-meter-even-less-good-value):
2410 * html/HTMLMeterElement.cpp:
2411 (WebCore::HTMLMeterElement::~HTMLMeterElement):
2412 (WebCore::HTMLMeterElement::parseMappedAttribute):
2413 (WebCore::HTMLMeterElement::attach):
2414 (WebCore::HTMLMeterElement::valueRatio):
2415 (WebCore::HTMLMeterElement::didElementStateChange):
2416 (WebCore::HTMLMeterElement::createShadowSubtree):
2417 * html/HTMLMeterElement.h:
2418 * html/shadow/MeterShadowElement.cpp: Added.
2419 (WebCore::MeterShadowElement::MeterShadowElement):
2420 (WebCore::MeterShadowElement::meterElement):
2421 (WebCore::MeterShadowElement::rendererIsNeeded):
2422 (WebCore::MeterBarElement::shadowPseudoId):
2423 (WebCore::MeterValueElement::shadowPseudoId):
2424 (WebCore::MeterValueElement::setWidthPercentage):
2425 * html/shadow/MeterShadowElement.h: Added.
2426 (WebCore::MeterBarElement::MeterBarElement):
2427 (WebCore::MeterBarElement::create):
2428 (WebCore::MeterValueElement::MeterValueElement):
2429 (WebCore::MeterValueElement::create):
2430 * rendering/RenderMeter.cpp:
2431 (WebCore::RenderMeter::RenderMeter):
2432 (WebCore::RenderMeter::~RenderMeter):
2433 (WebCore::RenderMeter::valueRatio):
2434 * rendering/RenderMeter.h:
2435 (WebCore::RenderMeter::renderName):
2436 (WebCore::RenderMeter::isMeter):
2437 (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
2438 (WebCore::RenderMeter::canHaveChildren):
2440 2011-04-04 Dimitri Glazkov <dglazkov@chromium.org>
2442 Reviewed by Adam Barth.
2444 Introduce EventDispatchMediator abstraction, which encapsulate all
2445 non-trivial logic around firing a specific type of an event.
2446 https://bugs.webkit.org/show_bug.cgi?id=57562
2448 Refactoring, covered by existing tests.
2451 (WebCore::EventDispatchMediator::EventDispatchMediator): Added.
2452 (WebCore::EventDispatchMediator::~EventDispatchMediator): Added.
2453 (WebCore::EventDispatchMediator::dispatchEvent): Added.
2454 (WebCore::EventDispatchMediator::event): Added.
2455 * dom/Event.h: Added decl.
2456 * dom/EventDispatcher.cpp:
2457 (WebCore::EventDispatcher::dispatchEvent): Changed to use EventDispatchMediator.
2458 * dom/EventDispatcher.h: Updated decls.
2459 * dom/KeyboardEvent.cpp:
2460 (WebCore::KeyboardEventDispatchMediator::KeyboardEventDispatchMediator): Added.
2461 (WebCore::KeyboardEventDispatchMediator::dispatchEvent): Added.
2462 * dom/KeyboardEvent.h: Updated decls
2464 (WebCore::Node::dispatchEvent): Changed to use EventDispatchMediator.
2465 (WebCore::Node::dispatchKeyEvent): Changed to use KeyboardEventDispatchMediator.
2467 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2469 Reviewed by Xan Lopez.
2471 [Cairo] Memory leak in RefPtrCairo
2472 https://bugs.webkit.org/show_bug.cgi?id=57758
2474 No new tests. This just fixes a memory leak.
2476 * platform/graphics/cairo/RefPtrCairo.cpp:
2477 (WTF::derefIfNotNull): Deref should unref the cairo_font_fact_t, not reference it.
2479 2011-04-04 Adrienne Walker <enne@google.com>
2481 Unreviewed, rolling out r82880.
2482 http://trac.webkit.org/changeset/82880
2483 https://bugs.webkit.org/show_bug.cgi?id=50661
2485 Meter elements not rendered in Chromium Linux layout tests
2492 * WebCore.vcproj/WebCore.vcproj:
2493 * WebCore.xcodeproj/project.pbxproj:
2494 * css/CSSMutableStyleDeclaration.cpp:
2495 * css/CSSMutableStyleDeclaration.h:
2496 * css/CSSSelector.cpp:
2497 (WebCore::CSSSelector::pseudoId):
2498 (WebCore::nameToPseudoTypeMap):
2499 (WebCore::CSSSelector::extractPseudoType):
2500 * css/CSSSelector.h:
2503 (meter::-webkit-meter):
2504 (meter::-webkit-meter-bar):
2505 (meter::-webkit-meter-optimum-value):
2506 (meter::-webkit-meter-suboptimal-value):
2507 (meter::-webkit-meter-even-less-good-value):
2508 * html/HTMLMeterElement.cpp:
2509 (WebCore::HTMLMeterElement::create):
2510 (WebCore::HTMLMeterElement::parseMappedAttribute):
2511 (WebCore::HTMLMeterElement::attach):
2512 * html/HTMLMeterElement.h:
2513 * html/shadow/MeterShadowElement.cpp: Removed.
2514 * html/shadow/MeterShadowElement.h: Removed.
2515 * rendering/RenderMeter.cpp:
2516 (WebCore::RenderMeter::RenderMeter):
2517 (WebCore::RenderMeter::~RenderMeter):
2518 (WebCore::RenderMeter::createPart):
2519 (WebCore::RenderMeter::updateFromElement):
2520 (WebCore::RenderMeter::layoutParts):
2521 (WebCore::RenderMeter::styleDidChange):
2522 (WebCore::RenderMeter::shouldHaveParts):
2523 (WebCore::RenderMeter::valueRatio):
2524 (WebCore::RenderMeter::barPartRect):
2525 (WebCore::RenderMeter::valuePartRect):
2526 (WebCore::RenderMeter::valuePseudoId):
2527 (WebCore::RenderMeter::barPseudoId):
2528 (WebCore::RenderMeter::detachShadows):
2529 (WebCore::RenderMeter::updateShadows):
2530 * rendering/RenderMeter.h:
2531 (WebCore::RenderMeter::renderName):
2532 (WebCore::RenderMeter::isMeter):
2533 (WebCore::RenderMeter::shadowAttached):
2535 2011-04-04 Chang Shu <cshu@webkit.org>
2537 Reviewed by Ryosuke Niwa.
2539 setContentEditable with true/false/inherit string is not working properly
2540 https://bugs.webkit.org/show_bug.cgi?id=52058
2542 Move isContentEditable from HTMLElement to Node. Thus, Node provides two functions for
2543 checking editability: rendererIsEditable and isContentEdiable. The former is a fast path,
2544 which does NOT trigger layout and only checks the render style of usermodify. The latter
2545 updates the layout first to make sure the render style syncs with DOM contenteditable
2546 attribute. Certain call sites that need to call isContentEditable rather than rendererIsEditable
2547 are also updated in the patch. But a complete fix will follow up in bug 57244.
2549 This patch fixes all the failed layout tests related to set contenteditable.
2551 * accessibility/AccessibilityRenderObject.cpp:
2552 (WebCore::AccessibilityRenderObject::isReadOnly):
2554 (WebCore::Node::isContentEditable):
2555 (WebCore::Node::shouldUseInputMethod):
2557 * html/HTMLElement.cpp:
2558 * html/HTMLElement.h:
2560 2011-04-04 Roland Steiner <rolandsteiner@chromium.org>
2562 Reviewed by Dimitri Glazkov.
2564 Bug 57689 - Extract scoping functionality from Document
2565 https://bugs.webkit.org/show_bug.cgi?id=57689
2567 Moved selfOnlyRef (renamed to guardRef), element ID, image map
2568 and accesss key functionalities from Document to a new base
2571 TreeShared: made removedLastRef protected
2573 No new tests. (refactoring)
2580 * WebCore.vcproj/WebCore.vcproj:
2581 * WebCore.xcodeproj/project.pbxproj:
2583 (WebCore::Document::Document):
2584 (WebCore::Document::destroyScope):
2585 (WebCore::Document::getElementById):
2586 (WebCore::Document::childrenChanged):
2587 (WebCore::Document::scheduleStyleRecalc):
2588 (WebCore::Document::attach):
2589 (WebCore::Document::detach):
2591 (WebCore::Node::Node):
2592 * dom/DocumentOrderedMap.cpp:
2593 (WebCore::DocumentOrderedMap::get):
2594 (WebCore::DocumentOrderedMap::getElementById):
2595 (WebCore::DocumentOrderedMap::getElementByMapName):
2596 (WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
2597 * dom/DocumentOrderedMap.h:
2598 * dom/DOMAllInOne.cpp:
2600 (WebCore::Node::~Node):
2601 (WebCore::Node::setDocument):
2603 * dom/TreeScope.cpp: Added.
2604 * dom/TreeScope.h: Added.
2605 * platform/TreeShared.h:
2606 (WebCore::TreeShared::removedLastRef): made protected
2608 2011-04-04 MORITA Hajime <morrita@google.com>
2610 Reviewed by Dimitri Glazkov.
2612 Convert <meter> shadow DOM to a DOM-based shadow.
2613 https://bugs.webkit.org/show_bug.cgi?id=50661
2615 Eliminated a large part of <meter> custom layout code,
2616 which is replaced by a shadow tree.
2617 Note that the shadow tree is created on construction time and
2618 will remain during the host HTMLMeterElement lifecycle.
2625 * WebCore.vcproj/WebCore.vcproj:
2626 * WebCore.xcodeproj/project.pbxproj:
2627 * css/CSSMutableStyleDeclaration.cpp:
2628 (WebCore::CSSMutableStyleDeclaration::setProperty):
2629 * css/CSSMutableStyleDeclaration.h:
2630 * css/CSSSelector.cpp:
2631 (WebCore::CSSSelector::pseudoId):
2632 (WebCore::nameToPseudoTypeMap):
2633 (WebCore::CSSSelector::extractPseudoType):
2634 * css/CSSSelector.h:
2637 (meter::-webkit-meter-bar):
2638 (meter::-webkit-meter-optimum-value):
2639 (meter::-webkit-meter-suboptimum-value):
2640 (meter::-webkit-meter-even-less-good-value):
2641 * html/HTMLMeterElement.cpp:
2642 (WebCore::HTMLMeterElement::~HTMLMeterElement):
2643 (WebCore::HTMLMeterElement::parseMappedAttribute):
2644 (WebCore::HTMLMeterElement::attach):
2645 (WebCore::HTMLMeterElement::valueRatio):
2646 (WebCore::HTMLMeterElement::didElementStateChange):
2647 (WebCore::HTMLMeterElement::createShadowSubtree):
2648 * html/HTMLMeterElement.h:
2649 * html/shadow/MeterShadowElement.cpp: Added.
2650 (WebCore::MeterShadowElement::MeterShadowElement):
2651 (WebCore::MeterShadowElement::meterElement):
2652 (WebCore::MeterShadowElement::rendererIsNeeded):
2653 (WebCore::MeterBarElement::shadowPseudoId):
2654 (WebCore::MeterValueElement::shadowPseudoId):
2655 (WebCore::MeterValueElement::setWidthPercentage):
2656 * html/shadow/MeterShadowElement.h: Added.
2657 (WebCore::MeterBarElement::MeterBarElement):
2658 (WebCore::MeterBarElement::create):
2659 (WebCore::MeterValueElement::MeterValueElement):
2660 (WebCore::MeterValueElement::create):
2661 * rendering/RenderMeter.cpp:
2662 (WebCore::RenderMeter::RenderMeter):
2663 (WebCore::RenderMeter::~RenderMeter):
2664 (WebCore::RenderMeter::valueRatio):
2665 * rendering/RenderMeter.h:
2666 (WebCore::RenderMeter::renderName):
2667 (WebCore::RenderMeter::isMeter):
2668 (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
2669 (WebCore::RenderMeter::canHaveChildren):
2671 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2673 Reviewed by Gustavo Noronha Silva.
2676 https://bugs.webkit.org/show_bug.cgi?id=31517
2678 Add WebGL support for the GTK+ bits of WebCore.
2680 No new tests. This will be covered by the existing WebGL tests once
2681 the bots are capable of running WebGL tests.
2683 * GNUmakefile.am: Added new files required for WebGL support.
2684 * html/HTMLCanvasElement.cpp:
2685 (WebCore::HTMLCanvasElement::getContext): Extend #ifdef to cover GTK+ as well, which does not
2686 yet support accelerated compositing.
2687 * platform/graphics/ANGLEWebKitBridge.h: Update to reflect the fact that ANGLE isn't compiled as
2688 a framework for GTK+.
2689 * platform/graphics/GraphicsContext3D.h:
2690 (WebCore::GraphicsContext3D::platformTexture): Added a declaration of this method for Cairo.
2691 (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer): Ditto.
2692 * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Added.
2693 (WebCore::GraphicsContext3D::getImageData): Added.
2694 (WebCore::GraphicsContext3D::paintToCanvas): Added.
2695 * platform/graphics/cairo/OpenGLShims.cpp: Added. This file controls loading of GL extension
2696 functions dynamically. They have different names across the different vendors' GL implementations.
2697 (WebCore::lookupOpenGLFunctionAddress): Added
2698 (WebCore::openGLFunctionTable): Added
2699 (WebCore::initializeOpenGLShims): Added
2700 * platform/graphics/cairo/OpenGLShims.h: Added.
2701 * platform/graphics/gtk/DrawingBufferGtk.cpp: Added.
2702 (WebCore::DrawingBuffer::DrawingBuffer): Very generic implementation for Cairo.
2703 (WebCore::DrawingBuffer::~DrawingBuffer): Ditto.
2704 (WebCore::DrawingBuffer::didReset): Ditto.
2705 (WebCore::DrawingBuffer::platformColorBuffer): Ditto.
2706 * platform/graphics/gtk/GraphicsContext3DGtk.cpp: Added.
2707 (WebCore::GraphicsContext3D::create): Initial implementation.
2708 (WebCore::GraphicsContext3D::GraphicsContext3D): Ditto.
2709 (WebCore::GraphicsContext3D::~GraphicsContext3D): Ditto.
2710 (WebCore::GraphicsContext3D::makeContextCurrent): Ditto.
2711 (WebCore::GraphicsContext3D::platformGraphicsContext3D): Ditto.
2712 (WebCore::GraphicsContext3D::isGLES2Compliant): Ditto.
2713 * platform/graphics/gtk/GraphicsContext3DInternal.cpp: Added.
2714 (sharedDisplay): Added this shared display which is required by some
2716 (WebCore::activeGraphicsContexts): This method keeps track of all active GraphicsContext3D
2717 contexts, in order to clean them up at exit. This prevents crashes on certain OpenGL drivers.
2718 (WebCore::GraphicsContext3DInternal::addActiveGraphicsContext): Ditto.
2719 (WebCore::GraphicsContext3DInternal::removeActiveGraphicsContext): Ditto.
2720 (WebCore::GraphicsContext3DInternal::cleanupActiveContextsAtExit): Ditto.
2721 (WebCore::GraphicsContext3DInternal::create): Figure out the best way to create an OpenGL
2722 context given the current environment.
2723 (WebCore::GraphicsContext3DInternal::createPbufferContext): Pbuffer context initializer.
2724 (WebCore::GraphicsContext3DInternal::createPixmapContext): Pixmap context initializer.
2725 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal): Initial implementation.
2726 (WebCore::GraphicsContext3DInternal::~GraphicsContext3DInternal): Ditto.
2727 (WebCore::GraphicsContext3DInternal::makeContextCurrent): Ditto.
2728 * platform/graphics/gtk/GraphicsContext3DInternal.h: Added.
2729 * platform/graphics/opengl/Extensions3DOpenGL.cpp: Added generic implementation.
2730 (WebCore::Extensions3DOpenGL::ensureEnabled): Ditto.
2731 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2732 (WebCore::GraphicsContext3D::reshape): Test for the context using the public API rather than
2733 the private bits that are specific to the Apple port.
2735 2011-04-04 Alexey Proskuryakov <ap@apple.com>
2737 Reviewed by Dan Bernstein.
2739 REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2
2740 https://bugs.webkit.org/show_bug.cgi?id=51230
2741 <rdar://problem/8780989>
2743 <rdar://problem/9015250> REGRESSION (WebKit2): Key events not fired for modifier keys
2745 * page/EventHandler.cpp: (WebCore::EventHandler::keyEvent): Moved Caps Lock handling from
2746 WebKits to WebCore, because WebKit shouldn't be smart.
2748 2011-04-04 Steve Falkenburg <sfalken@apple.com>
2750 Fix Windows build warning.
2752 * WebCore.vcproj/WebCore.vcproj: Exclude EventQueue.cpp in Debug_All build.
2754 2011-04-04 Adam Roben <aroben@apple.com>
2756 Attempted Mac build fix, part III
2758 * WebCore.exp.in: Export PlatformCALayer::setGeometryFlipped. Also resorted some symbols.
2760 2011-04-04 Andy Estes <aestes@apple.com>
2766 2011-04-04 David Dorwin <ddorwin@chromium.org>
2768 Reviewed by David Levin.
2770 Chromium Mac crashes when entering fullscreen
2771 https://bugs.webkit.org/show_bug.cgi?id=57483
2773 Override extraFullScreenStyleSheet in RenderThemeChromiumMac to avoid hitting the ASSERT_NOT_REACHED in RenderThemeMac.
2775 * WebCore.gyp/WebCore.gyp:
2776 * rendering/RenderThemeChromiumMac.h:
2777 * rendering/RenderThemeChromiumMac.mm:
2778 (WebCore::RenderThemeChromiumMac::extraFullScreenStyleSheet):
2780 2011-04-04 Adam Roben <aroben@apple.com>
2782 Attempted Mac build fix, part II
2784 * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayerClient.h and
2785 PlatformCAAnimation.h as private so that WebKit2 can #include them (transitively).
2787 2011-04-04 Steve Falkenburg <sfalken@apple.com>
2789 Reviewed by Adam Roben.
2791 Remove unused AnalyzeWithLargeStack code from Windows build files
2792 https://bugs.webkit.org/show_bug.cgi?id=57771
2794 This was used for us to build with prefast automatically,
2795 but it is out-of-date and hasn't been used for some time.
2796 Removing completely for now.
2798 * WebCore.vcproj/WebCore.vcproj:
2799 * WebCore.vcproj/WebCorePreBuild.cmd:
2801 2011-04-01 Matthew Delaney <mdelaney@apple.com>
2803 Reviewed by Simon Fraser.
2805 [CG] Do not accelerate small canvases
2806 https://bugs.webkit.org/show_bug.cgi?id=57596
2808 No new tests. No outward behavior changes.
2810 * platform/graphics/cg/ImageBufferCG.cpp:
2812 2011-04-04 Adam Roben <aroben@apple.com>
2814 Attempted Mac build fix
2816 * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayer.h and GraphicsLayerCA.h private
2817 so that WebKit can #include them.
2819 2011-04-04 Malcolm MacLeod <mmacleod@webmail.co.za>
2821 Reviewed by Kevin Ollivier.
2823 [wx] Implement support for temporary files.
2825 https://bugs.webkit.org/show_bug.cgi?id=57772
2827 * platform/FileSystem.h:
2828 * platform/wx/FileSystemWx.cpp:
2829 (WebCore::getFileModificationTime):
2830 (WebCore::openTemporaryFile):
2831 (WebCore::closeFile):
2832 (WebCore::writeToFile):
2834 2011-04-01 Oliver Hunt <oliver@apple.com>
2836 Reviewed by Geoffrey Garen.
2838 Make StructureChain GC allocated
2839 https://bugs.webkit.org/show_bug.cgi?id=56695
2841 Update for new Structure marking function
2843 * bindings/js/JSDOMGlobalObject.cpp:
2844 (WebCore::JSDOMGlobalObject::markChildren):
2846 2011-04-04 Pavel Feldman <pfeldman@google.com>
2848 Reviewed by Yury Semikhatsky.
2850 Web Inspector: add support for the enumerated types in the protocol.
2851 https://bugs.webkit.org/show_bug.cgi?id=57761
2853 * inspector/Inspector.json:
2854 * inspector/InspectorDebuggerAgent.cpp:
2855 (WebCore::InspectorDebuggerAgent::setPauseOnExceptions):
2856 * inspector/InspectorDebuggerAgent.h:
2857 * inspector/InspectorInstrumentation.cpp:
2858 (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
2859 (WebCore::InspectorInstrumentation::scriptImportedImpl):
2860 * inspector/InspectorResourceAgent.cpp:
2861 (WebCore::cachedResourceTypeString):
2862 (WebCore::InspectorResourceAgent::didReceiveResponse):
2863 (WebCore::InspectorResourceAgent::setInitialScriptContent):
2864 (WebCore::InspectorResourceAgent::setInitialXHRContent):
2865 * inspector/InspectorResourceAgent.h:
2866 * inspector/front-end/ScriptsPanel.js:
2867 * inspector/generate-inspector-idl:
2869 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
2871 Reviewed by Pavel Feldman.
2873 Web Inspector: InspectorRuntimeAgent should not depend on Page
2874 https://bugs.webkit.org/show_bug.cgi?id=57759
2876 Descendants of InspectorRuntimeAgent should implement a method providing access to the default
2877 inspected state used for console evaluations.
2879 * inspector/InspectorAgent.cpp:
2880 (WebCore::InspectorAgent::InspectorAgent): runtime agent is created and deleted along with other agents.
2881 (WebCore::InspectorAgent::setFrontend):
2882 * inspector/InspectorAgent.h:
2883 * inspector/InspectorRuntimeAgent.cpp:
2884 (WebCore::InspectorRuntimeAgent::create):
2885 (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
2886 (WebCore::InspectorRuntimeAgent::evaluate):
2887 * inspector/InspectorRuntimeAgent.h:
2888 (WebCore::InspectorRuntimeAgent::InspectedStateProvider::~InspectedStateProvider):
2890 2011-04-04 Yong Li <yoli@rim.com>
2892 Reviewed by Antonio Gomes.
2894 https://bugs.webkit.org/show_bug.cgi?id=55969
2895 Fix the issue that document state is not saved when
2896 going backward and ending up with error page.
2898 Test: platform/qt/fast/history/back-to-unreachable-url-then-forward.html
2900 (For manual test, load a non-existent html first, then load
2901 fast/history/resources/check-scroll-position.html, then go
2902 back and go forward. If it doesn't show "SUCCESS" at the bottom
2903 of the page, your browser has failed the test)
2905 * loader/FrameLoader.cpp:
2906 (WebCore::FrameLoader::load):
2908 2011-04-04 Sergio Villar Senin <svillar@igalia.com>
2910 Reviewed by Martin Robinson.
2912 [GTK] Fix make distcheck for 1.4.0
2913 https://bugs.webkit.org/show_bug.cgi?id=57750
2915 Added a missing header file to the Makefile
2919 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2921 Reviewed by Xan Lopez.
2923 [GTK] http/tests/plugins/post-url-file.html fails on GTK+
2924 https://bugs.webkit.org/show_bug.cgi?id=55826
2926 Correct the implementation of handlePostReadFile which uses GIO APIs and
2927 actually resizes the buffer to fit the entire size of the file data. This
2928 was likely leading to memory corruption until now.
2930 * plugins/gtk/PluginViewGtk.cpp:
2931 (WebCore::PluginView::handlePostReadFile): Fix this method.
2933 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
2935 Reviewed by Yury Semikhatsky.
2937 Web Inspector: [Extensions API] add notifications on panels shown/hidden
2938 https://bugs.webkit.org/show_bug.cgi?id=57752
2940 * inspector/front-end/ExtensionAPI.js:
2941 (WebInspector.injectedExtensionAPI.PanelImpl):
2942 * inspector/front-end/ExtensionServer.js:
2943 (WebInspector.ExtensionServer.prototype.notifyPanelShown):
2944 (WebInspector.ExtensionServer.prototype.notifyPanelHidden):
2945 * inspector/front-end/Panel.js:
2946 (WebInspector.Panel.prototype.show):
2947 (WebInspector.Panel.prototype.hide):
2949 2011-04-04 Pavel Podivilov <podivilov@chromium.org>
2951 Reviewed by Yury Semikhatsky.
2953 Web Inspector: search in resources panel is broken.
2954 https://bugs.webkit.org/show_bug.cgi?id=57631
2956 Search in resources panel should trigger source frame content load.
2958 * inspector/front-end/Panel.js:
2959 (WebInspector.Panel.prototype.jumpToNextSearchResult):
2960 (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
2961 * inspector/front-end/ResourcesPanel.js:
2962 * inspector/front-end/SearchController.js:
2963 (WebInspector.SearchController.prototype.handleShortcut):
2964 (WebInspector.SearchController.prototype.focusSearchField):
2965 * inspector/front-end/SourceFrame.js:
2966 (WebInspector.SourceFrame.prototype.show):
2967 (WebInspector.SourceFrame.prototype._ensureContentLoaded):
2968 (WebInspector.SourceFrame.prototype.performSearch):
2970 2011-04-03 Eric Seidel <eric@webkit.org>
2972 Reviewed by Ryosuke Niwa.
2974 Split out UnicodeBidi enum into its own header (to allow use in platform)
2975 https://bugs.webkit.org/show_bug.cgi?id=57722
2977 unicode-bidi is a CSS concept. However the same concept is really needed throughout
2978 the bidi code in platform as well. So I'm moving the enum to platform.
2979 The only part of the enum which doesn't make much sense to platform/ is "normal".
2981 * WebCore.xcodeproj/project.pbxproj:
2982 * css/CSSPrimitiveValueMappings.h:
2983 * platform/text/UnicodeBidi.h: Added.
2984 * rendering/style/RenderStyle.h:
2985 * rendering/style/RenderStyleConstants.h:
2987 2011-04-04 Andrey Adaikin <aandrey@google.com>
2989 Reviewed by Yury Semikhatsky.
2991 Web Inspector: Highlighted search tokens would not be shown on long lines in the text viewer
2992 https://bugs.webkit.org/show_bug.cgi?id=57749
2994 * inspector/front-end/TextViewer.js:
2995 (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
2996 (WebInspector.TextEditorMainPanel.prototype._paintLine):
2998 2011-04-04 Alexander Pavlov <apavlov@chromium.org>
3000 Reviewed by Yury Semikhatsky.
3002 Web Inspector: Incorrectly reports warning on missing/incorrect content-type for 304s
3003 https://bugs.webkit.org/show_bug.cgi?id=48525
3005 * inspector/front-end/Resource.js:
3006 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
3008 2011-04-01 Alexander Pavlov <apavlov@chromium.org>
3010 Reviewed by Yury Semikhatsky.
3012 Web Inspector: appropriateSelectorForNode() invokes the "localName" getter on DOMNode rather than function
3013 https://bugs.webkit.org/show_bug.cgi?id=57632
3015 Moved the affected method onto the DOMNode.prototype as "appropriateSelectorFor".
3017 * inspector/front-end/DOMAgent.js:
3018 (WebInspector.DOMNode.prototype.appropriateSelectorFor):
3019 * inspector/front-end/EventListenersSidebarPane.js:
3021 * inspector/front-end/StylesSidebarPane.js:
3022 (WebInspector.StylesSidebarPane.prototype.addBlankSection):
3023 * inspector/front-end/utilities.js:
3025 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
3027 Unreviewed. Followup to an incomplete commit in r82806.
3029 * inspector/front-end/ExtensionAPI.js:
3030 (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane):
3031 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl):
3032 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
3033 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
3034 (WebInspector.injectedExtensionAPI):
3035 * inspector/front-end/ExtensionPanel.js:
3036 (WebInspector.ExtensionSidebarPane):
3037 (WebInspector.ExtensionSidebarPane.prototype.setPage):
3038 (WebInspector.ExtensionSidebarPane.prototype._setObject):
3039 * inspector/front-end/ExtensionServer.js:
3040 (WebInspector.ExtensionServer):
3041 (WebInspector.ExtensionServer.prototype.notifyExtensionSidebarUpdated):
3042 (WebInspector.ExtensionServer.prototype._onCreatePanel):
3043 (WebInspector.ExtensionServer.prototype._onCreateSidebarPane):
3044 (WebInspector.ExtensionServer.prototype.createClientIframe):
3045 (WebInspector.ExtensionServer.prototype._onSetSidebarContent):
3047 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
3049 Unreviewed. Fix Qt minimal build.
3051 * inspector/InspectorFrontendChannel.h:
3053 2011-04-01 Sergey Vorobyev <sergeyvorobyev@google.com>
3055 Reviewed by Yury Semikhatsky.
3057 Web Inspector: Separate sendMessageToFrontend function
3058 from InspectorClient to individual interface.
3059 https://bugs.webkit.org/show_bug.cgi?id=57548
3061 Refactoring - covered with existing inspector tests.
3065 * WebCore.vcproj/WebCore.vcproj:
3066 * WebCore.xcodeproj/project.pbxproj:
3067 * inspector/CodeGeneratorInspector.pm:
3068 * inspector/InspectorClient.h:
3069 * inspector/InspectorFrontendChannel.h: Added.
3070 (WebCore::InspectorFrontendChannel::~InspectorFrontendChannel):
3072 2011-04-04 Nico Weber <thakis@chromium.org>
3074 Reviewed by Eric Seidel.
3076 Prefer a using directive over qualified names in LocalizedNumberICU.cpp
3077 https://bugs.webkit.org/show_bug.cgi?id=57742
3079 Requested by ap in https://bugs.webkit.org/show_bug.cgi?id=57715
3081 * platform/text/LocalizedNumberICU.cpp:
3082 (WebCore::createFormatterForCurrentLocale):
3083 (WebCore::numberFormatter):
3084 (WebCore::parseLocalizedNumber):
3085 (WebCore::formatLocalizedNumber):
3087 2011-04-04 Andrey Adaikin <aandrey@google.com>
3089 Reviewed by Yury Semikhatsky.
3091 Web Inspector: Breakpoints in the gutter stay static while editing the text
3092 https://bugs.webkit.org/show_bug.cgi?id=57616
3094 * inspector/front-end/SourceFrame.js:
3095 (WebInspector.SourceFrame):
3096 (WebInspector.SourceFrame.prototype._saveViewerState):
3097 (WebInspector.SourceFrame.prototype._restoreViewerState):
3098 (WebInspector.SourceFrame.prototype._endEditing):
3099 (WebInspector.SourceFrame.prototype._lineNumberAfterEditing):
3100 (WebInspector.SourceFrame.prototype.addBreakpoint):
3101 (WebInspector.SourceFrame.prototype.removeBreakpoint):
3102 * inspector/front-end/TextViewer.js:
3103 (WebInspector.TextViewer.prototype._syncDecorationsForLine):
3105 (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
3106 (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
3107 (WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
3108 (WebInspector.TextEditorMainPanel.prototype._splitChunkOnALine):
3110 2011-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3112 Reviewed by Yury Semikhatsky.
3114 Web Inspector: remove obsolete doc generating code from CodeGenerator.
3115 https://bugs.webkit.org/show_bug.cgi?id=57748
3117 * inspector/CodeGeneratorInspector.pm:
3119 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
3121 Reviewed by Yury Semikhatsky.
3123 Web Inspector: [Extensions API] Merge WatchExpressionSidebarPane into ExtensionSidebarPane
3124 https://bugs.webkit.org/show_bug.cgi?id=57622
3126 Merged WatchExpressionSidebarPane into ExtensionSidebarPane, added setPage(url).
3127 Fixed wrong getter in schema (scripts -> elements)
3129 * inspector/front-end/ExtensionAPI.js:
3130 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject):
3131 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setPage):
3132 * inspector/front-end/ExtensionAPISchema.json:
3133 * inspector/front-end/ExtensionServer.js:
3134 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
3136 2011-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3138 Reviewed by Pavel Feldman.
3140 Web Inspector: introduce support of 'optional' flag for command arguments.
3141 https://bugs.webkit.org/show_bug.cgi?id=57698
3143 * inspector/CodeGeneratorInspector.pm:
3144 * inspector/Inspector.json:
3145 * inspector/InspectorDebuggerAgent.cpp:
3146 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3147 (WebCore::InspectorDebuggerAgent::setBreakpoint):
3148 (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3149 * inspector/InspectorDebuggerAgent.h:
3150 * inspector/InspectorPageAgent.cpp:
3151 (WebCore::InspectorPageAgent::reloadPage):
3152 * inspector/InspectorPageAgent.h:
3153 * inspector/InspectorResourceAgent.cpp:
3154 (WebCore::InspectorResourceAgent::getResourceContent):
3155 * inspector/InspectorResourceAgent.h:
3156 * inspector/InspectorRuntimeAgent.cpp:
3157 (WebCore::InspectorRuntimeAgent::evaluate):
3158 * inspector/InspectorRuntimeAgent.h:
3159 * inspector/generate-inspector-idl:
3161 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
3163 Reviewed by Pavel Feldman.
3165 Web Inspector: InjectedScriptManager should not try to access inspected window in case of workers
3166 https://bugs.webkit.org/show_bug.cgi?id=57637
3168 * bindings/js/JSInjectedScriptManager.cpp:
3169 (WebCore::InjectedScriptManager::injectedScriptFor):
3170 * bindings/v8/custom/V8InjectedScriptManager.cpp:
3171 (WebCore::InjectedScriptManager::injectedScriptFor):
3172 * inspector/InjectedScript.cpp:
3173 (WebCore::InjectedScript::InjectedScript):
3174 (WebCore::InjectedScript::canAccessInspectedWindow):
3175 * inspector/InjectedScript.h:
3176 * inspector/InjectedScriptManager.cpp:
3177 (WebCore::InjectedScriptManager::createForPage):
3178 (WebCore::InjectedScriptManager::createForWorker):
3179 (WebCore::InjectedScriptManager::InjectedScriptManager): access check function is passed as a parameter to the constructor
3180 and it depends on which type of context we're inspecting(worker or page).
3181 (WebCore::InjectedScriptManager::canAccessInspectedWorkerContext):
3182 * inspector/InjectedScriptManager.h:
3183 * inspector/InspectorController.cpp:
3184 (WebCore::InspectorController::InspectorController):
3186 2011-04-04 Ryuan Choi <ryuan.choi@samsung.com>
3188 Reviewed by Eric Seidel.
3190 V8StringCallback.cpp requires V8Binding.h
3191 https://bugs.webkit.org/show_bug.cgi?id=57699
3193 No new tests required because of just adding header file.
3195 * bindings/scripts/CodeGeneratorV8.pm:
3197 2011-04-03 Ryuan Choi <ryuan.choi@samsung.com>
3199 Reviewed by Eric Seidel.
3201 [CMAKE] Clean duplicated files in WebCore_Sources
3202 https://bugs.webkit.org/show_bug.cgi?id=57741
3204 No new tests, Only duplicated files were removed.
3208 2011-04-03 Luke Macpherson <macpherson@chromium.org>
3210 Reviewed by Darin Adler.
3212 Fix 2-space indentation introduced in bug 54706.
3213 https://bugs.webkit.org/show_bug.cgi?id=57740
3215 No new tests - whitespace changes only.
3217 * css/CSSStyleSelector.cpp:
3218 (WebCore::CSSStyleSelector::applyProperty):
3219 Convert 2-space indentation to 4-space indentation.
3221 2011-04-03 Luke Macpherson <macpherson@chromium.org>
3223 Reviewed by Dimitri Glazkov.
3225 Make CSSStyleApplyProperty non-copyable
3226 https://bugs.webkit.org/show_bug.cgi?id=57738
3228 No new functionality added so no new tests required.
3230 * css/CSSStyleApplyProperty.h:
3231 Added WTF_MAKE_NONCOPYABLE(CSSStyleApplyProperty) to ensure singleton stays single.
3233 2011-04-03 Dan Bernstein <mitz@apple.com>
3235 Reviewed by Maciej Stachowiak.
3237 fast/images/extra-image-in-image-document.html crashes when run after embed-image.html
3238 https://bugs.webkit.org/show_bug.cgi?id=57733
3240 The crash happens because resetting the page scale as part of preparing the WebView for the
3241 next test triggered layout, which in turn caused a plug-in to make a resource request, and
3242 DumpRenderTree's delegate to be dispatched. The delegate doesn’t expect to be called between
3243 tests, and it references the layout test controller, which is null.
3246 (WebCore::Frame::scalePage): Avoid an unnecessary layout if the page scale isn’t changing. This
3247 is more efficient, and has the side effect of avoiding the crash in DumpRenderTree, although
3248 DumpRenderTree could still crash when after a test with disabled plug-ins and a non-1 page scale.
3249 I think there are currently no such tests, so I am not fixing DumpRenderTree.
3251 2011-04-03 Eric Seidel <eric@webkit.org>
3253 Reviewed by Ryosuke Niwa.
3255 Teach InlineIterator how to work from any root, not just a RenderBlock
3256 https://bugs.webkit.org/show_bug.cgi?id=57726
3258 For implementing bidi-unicode: isolate, we need to be able to run the
3259 bidi algorithm over a subtree of inlines, not just from a block root.
3260 This is the first step in making this possible.
3262 * rendering/InlineIterator.h:
3263 (WebCore::InlineIterator::InlineIterator):
3264 (WebCore::InlineIterator::root):
3265 (WebCore::bidiNext):
3266 (WebCore::bidiFirst):
3267 (WebCore::InlineIterator::increment):
3268 (WebCore::InlineBidiResolver::appendRun):
3269 * rendering/RenderBlockLineLayout.cpp:
3270 (WebCore::RenderBlock::findNextLineBreak):
3272 2011-04-03 Eric Seidel <eric@webkit.org>
3274 Reviewed by Dan Bernstein.
3276 Split out handling of trailing spaces from layoutInlineChildren
3277 https://bugs.webkit.org/show_bug.cgi?id=57432
3279 There is much more we could split out from this function, but this is a start.
3281 I suspect this is very hot code. Hopefully the compiler will do the right thing.
3282 If it doesn't the Chromium PLT bots will tell us.
3284 * rendering/RenderBlock.h:
3285 * rendering/RenderBlockLineLayout.cpp:
3286 (WebCore::RenderBlock::handleTrailingSpaces):
3287 (WebCore::RenderBlock::layoutInlineChildren):
3289 2011-03-21 Ryosuke Niwa <rniwa@webkit.org>
3291 Reviewed by Eric Seidel.
3293 editing commands shouldn't run when there's no body
3294 https://bugs.webkit.org/show_bug.cgi?id=56771
3296 The bug was caused by WebKit's not checking the existence of root editable element
3297 in enabled* functions. Although isContentEditable returns true whenever we're in design mode,
3298 we should not run editing commands in a document without a body element editable because
3299 doing so results in appending a non-body element to the document node.
3301 Fixed the bug by modifying various enabled* functions to ensure we have a root editable element.
3302 New behavior tries to match that of Firefox except StyleWithCSS, which Firefox seems to ignore
3303 when there are no body element. Since StyleWithCSS is a document's state or property, we allow
3304 execCommand('StyleWithCSS') even in a document without a body element.
3306 WebKit's and Firefox's behaviors also deviate in insert-image-with-selecting-document.html.
3307 Whereas WebKit respects selection set by script and ignores execCommand, Firefox modifies
3308 the selection when document.write("x") is ran and successfully inserts image.
3310 Thus, empty-document-delete.html and empty-document-justify-right.html both pass on Firefox
3311 while empty-document-stylewithcss.html and insert-image-with-selecting-document.html both fail.
3313 Since Internet Explorer does not allow execCommand to run under design mode properly, we could
3314 not test its behavior.
3316 Tests: editing/editability/empty-document-delete.html
3317 editing/editability/empty-document-justify-right.html
3318 editing/editability/empty-document-stylewithcss.html
3319 editing/execCommand/insert-image-with-selecting-document.html
3321 * editing/Editor.cpp:
3322 (WebCore::Editor::canEdit): Verify that the root editable element exists
3323 instead of just checking that selection endpoints are editable because
3324 selection endpoints could be document node without a body element in design mode
3325 and we don't want to consider such a document editable.
3326 (WebCore::Editor::canDelete): Ditto.
3327 * editing/EditorCommand.cpp:
3328 (WebCore::enabledInEditableText): Ditto.
3329 (WebCore::enabledInRichlyEditableText): Ditto.
3330 (WebCore::enabledDelete): Call enabledCut and enabledInEditableText instead
3331 of duplicating the code in order to fix the same bug.
3333 2011-04-02 Dan Bernstein <mitz@apple.com>
3335 Reviewed by Maciej Stachowiak.
3337 REGRESSION (r82786): Media controls render incorrectly on GTK and Qt
3338 https://bugs.webkit.org/show_bug.cgi?id=57719
3340 r82786 exposed an incorrect assumption inRenderMediaControlTimeDisplay::layout()
3341 that the timeline container is the parent of the time display. This is not true
3342 with the GTK media style, where the current time display is an inline box, and
3343 thus wrapped in an anonymous flexible box. The code was incorrectly considering
3344 the width of the anonymous box and deciding to hide the time display. Prior to
3345 r82786, this mistake was corrected by the call to computeLogicalWidth() in line layout.
3347 * rendering/MediaControlElements.cpp:
3348 (WebCore::RenderMediaControlTimeDisplay::layout): Changed to skip past anonymous ancestors.
3350 2011-04-02 Nico Weber <thakis@chromium.org>
3352 Reviewed by Adam Barth.
3354 Explicitly use icu namespace for ports building with U_USING_ICU_NAMESPACE=0
3356 By default, ICU includes |using namespace icu;| in its header files
3357 for backwards compatibility. Clients can define
3358 U_USING_ICU_NAMESPACE=0 to tell ICU to not do this. Prefixing all ICU
3359 classes with |icu::| makes this file compile no matter what
3360 U_USING_ICU_NAMESPACE is set to.
3362 https://bugs.webkit.org/show_bug.cgi?id=57715
3364 * platform/text/LocalizedNumberICU.cpp:
3365 (WebCore::createFormatterForCurrentLocale):
3366 (WebCore::numberFormatter):
3367 (WebCore::parseLocalizedNumber):
3368 (WebCore::formatLocalizedNumber):
3370 2011-04-02 Dan Bernstein <mitz@apple.com>
3372 Reviewed by Dave Hyatt.
3374 Remove an unnecessary extra computeLogicalWidth() from line layout
3375 https://bugs.webkit.org/show_bug.cgi?id=57711
3377 Changes in behavior (MathML progression) covered by existing layout tests.
3379 * rendering/RenderBlockLineLayout.cpp:
3380 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3381 call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
3382 actually prevents MathML rows from reverting to an incorrect width.
3384 2011-04-02 Dan Bernstein <mitz@apple.com>
3386 Reviewed by Beth Dakin.
3388 <details> marker loses its margin
3389 https://bugs.webkit.org/show_bug.cgi?id=57713
3391 * rendering/RenderDetails.cpp:
3392 (WebCore::RenderDetails::computePreferredLogicalWidths): Override to update
3393 the marker location.
3394 * rendering/RenderDetails.h:
3395 (WebCore::RenderDetails::renderName): Made private.
3396 (WebCore::RenderDetails::isDetails): Ditto.
3397 * rendering/RenderDetailsMarker.cpp:
3398 (WebCore::RenderDetailsMarker::computePreferredLogicalWidths): Set the margins
3399 in the style, like RenderListMarker does.
3400 (WebCore::RenderDetailsMarker::layout): Set the margins from the style.
3402 2011-04-02 Andy Estes <aestes@apple.com>
3404 Reviewed by Oliver Hunt.
3406 REGRESSION (r69237): Black border around map elements while using an image map on Mac platform
3407 https://bugs.webkit.org/show_bug.cgi?id=52518
3409 Test: fast/images/imagemap-focus-ring-zero-outline-width.html
3411 * rendering/RenderImage.cpp:
3412 (WebCore::RenderImage::paintAreaElementFocusRing): Return early if outlineWidth is 0.
3414 2011-04-02 Beth Dakin <bdakin@apple.com>
3416 Reviewed by Sam Weinig.
3418 https://bugs.webkit.org/show_bug.cgi?id=57605
3419 Frame::pageScaleFactor() should not affect getBoundingClientRect() or
3422 <rdar://problem/9194541>
3424 New functions adjust*ForPageScale() are analogous to adjust*ForAbsoluteZoom().
3426 (WebCore::Element::getClientRects):
3427 (WebCore::Element::getBoundingClientRect):
3429 (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
3430 (WebCore::Range::getBorderAndTextQuads):
3431 * rendering/RenderObject.h:
3432 (WebCore::adjustFloatPointForPageScale):
3433 (WebCore::adjustFloatQuadForPageScale):
3434 (WebCore::adjustFloatRectForPageScale):
3436 2011-04-02 Dan Bernstein <mitz@apple.com>
3438 Reverted r82775 due to changes in <details> test results, which are
3439 likely progressions.
3441 * rendering/RenderBlockLineLayout.cpp:
3442 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3444 2011-04-02 Dan Bernstein <mitz@apple.com>
3446 Reviewed by Dave Hyatt.
3448 Remove an unnecessary extra computeLogicalWidth() from line layout
3449 https://bugs.webkit.org/show_bug.cgi?id=57711
3451 Changes in behavior (MathML progression) covered by existing layout tests.
3453 * rendering/RenderBlockLineLayout.cpp:
3454 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3455 call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
3456 actually prevents MathML rows from reverting to an incorrect width.
3458 2011-04-02 Ryuan Choi <ryuan.choi@samsung.com>
3460 Reviewed by Martin Robinson.
3462 [GTK] Fix leaked pointer in FontGtk.cpp
3463 https://bugs.webkit.org/show_bug.cgi?id=57307
3467 No new functionality, so no new tests.
3469 * platform/graphics/gtk/FontGtk.cpp:
3470 (WebCore::utf16ToUtf8): Rename utf16_to_utf8 and fix indentation.
3471 (WebCore::convertUniCharToUTF8):
3473 2011-04-02 Ilya Tikhonovsky <loislo@chromium.org>
3475 Reviewed by Pavel Feldman.
3477 Web Inspector: we should be able to have in and out arguments of a command with same name.
3478 https://bugs.webkit.org/show_bug.cgi?id=57701
3480 * inspector/CodeGeneratorInspector.pm:
3481 * inspector/Inspector.json:
3483 2011-04-01 Ilya Tikhonovsky <loislo@chromium.org>
3485 Not reviewed trivial change.
3487 Web Inspector: The page agent should be enabled even if JAVASCRIPT_DEBUGGER is off.
3488 Followup change for r82281.
3489 https://bugs.webkit.org/show_bug.cgi?id=57327
3491 * inspector/InspectorPageAgent.cpp:
3492 * inspector/InspectorPageAgent.h:
3494 2011-04-01 Michael Saboff <msaboff@apple.com>
3496 Reviewed by Darin Adler.
3498 Cached Resource Overhead Space Usage and Accounting Inaccurate
3499 https://bugs.webkit.org/show_bug.cgi?id=57488
3501 Fixed windows test failures.
3502 Changed the fixed overhead value for ResourceResponse to 3800 bytes.