1 2011-04-07 Pavel Feldman <pfeldman@google.com>
3 Reviewed by Yury Semikhatsky.
5 Web Inspector: remove "enabled" from the setBreakpoint protocol.
6 https://bugs.webkit.org/show_bug.cgi?id=58047
8 * bindings/js/ScriptDebugServer.cpp:
9 (WebCore::ScriptDebugServer::hasBreakpoint):
10 * bindings/v8/DebuggerScript.js:
12 * bindings/v8/ScriptDebugServer.cpp:
13 (WebCore::ScriptDebugServer::setBreakpoint):
14 * inspector/Inspector.json:
15 * inspector/InspectorDebuggerAgent.cpp:
16 (WebCore::buildObjectForBreakpointCookie):
17 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
18 (WebCore::InspectorDebuggerAgent::setBreakpoint):
19 (WebCore::InspectorDebuggerAgent::continueToLocation):
20 (WebCore::InspectorDebuggerAgent::didParseSource):
21 * inspector/InspectorDebuggerAgent.h:
22 * inspector/ScriptBreakpoint.h:
23 (WebCore::ScriptBreakpoint::ScriptBreakpoint):
24 * inspector/front-end/DebuggerModel.js:
25 (WebInspector.DebuggerModel.prototype.setBreakpoint):
26 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
27 * inspector/front-end/DebuggerPresentationModel.js:
28 (WebInspector.DebuggerPresentationModel):
29 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
30 (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
31 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint.callback):
32 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
33 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger):
34 (WebInspector.DebuggerPresentationModel.prototype._setBreakpointInDebugger.didRequestSourceMapping):
35 (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
36 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled.afterUpdate):
37 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
38 (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
39 (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
40 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
41 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
42 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
43 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
44 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpointsFromSettings):
45 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
46 (WebInspector.DebuggerPresentationModel.prototype._reset):
47 (WebInspector.PresentationBreakpoint):
49 2011-04-07 Dan Bernstein <mitz@apple.com>
51 Reviewed by Adam Roben.
53 Removed a redundant line of code.
55 * rendering/RenderInline.cpp:
56 (WebCore::RenderInline::updateAlwaysCreateLineBoxes): No need to compare line gap values, as
57 this is covered by the earlier hasIdenticalAscentDescentAndLineGap() check.
59 2011-04-07 Liang Qi <liang.qi@nokia.com>
61 Reviewed by Laszlo Gombos.
63 [Qt][Symbian] Enable webkit build with GCCE on Symbian.
64 https://bugs.webkit.org/show_bug.cgi?id=57841
66 * WebCore.pri: Thanks for Norbert Leser <norbert.leser@nokia.com> who checked RVCT part.
67 --rw-base value in QMAKE_LFLAGS.ARMCC and -Tdata value in QMAKE_LFLAGS.GCCE are updated
68 to 0x1000000 together. They need to be updated in the future when WebKit grows.
70 2011-04-06 Pavel Feldman <pfeldman@google.com>
72 Reviewed by Yury Semikhatsky.
74 Web Inspector: get rid of Breakpoint.js.
75 https://bugs.webkit.org/show_bug.cgi?id=57949
78 * WebCore.vcproj/WebCore.vcproj:
79 * inspector/front-end/Breakpoint.js: Removed.
80 * inspector/front-end/BreakpointsSidebarPane.js:
81 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.addBreakpoint):
82 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.updateBreakpoint.didLoadSnippet):
83 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype.updateBreakpoint):
84 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._compareBreakpoints):
85 * inspector/front-end/DebuggerModel.js:
86 (WebInspector.DebuggerModel):
87 (WebInspector.DebuggerModel.prototype._debuggerWasDisabled):
88 (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
89 (WebInspector.DebuggerModel.prototype.setBreakpoint):
90 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
91 (WebInspector.DebuggerModel.prototype.removeBreakpoint):
92 (WebInspector.DebuggerModel.prototype._breakpointResolved):
93 (WebInspector.DebuggerModel.prototype.reset):
94 * inspector/front-end/DebuggerPresentationModel.js:
95 (WebInspector.DebuggerPresentationModel):
96 (WebInspector.DebuggerPresentationModel.prototype._refreshBreakpoints):
97 (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
98 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
99 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint.didSetBreakpoint):
100 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
101 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
102 (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
103 (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
104 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded.didRequestSourceMapping):
105 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
106 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
107 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
108 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
109 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoint):
110 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
111 (WebInspector.DebuggerPresentationModel.prototype._reset):
112 (WebInspector.PresentationBreakpoint):
113 (WebInspector.PresentationBreakpoint.prototype.get sourceFile):
114 (WebInspector.PresentationBreakpoint.prototype.get url):
115 (WebInspector.PresentationBreakpoint.prototype.get resolved):
116 (WebInspector.PresentationBreakpoint.prototype.loadSnippet):
117 * inspector/front-end/ResourceTreeModel.js:
118 (WebInspector.ResourceTreeModel):
119 (WebInspector.ResourceTreeModel.prototype._onResourceStarted):
120 (WebInspector.ResourceTreeModel.prototype._addResourceToFrame):
121 * inspector/front-end/ScriptsPanel.js:
122 (WebInspector.ScriptsPanel):
123 (WebInspector.ScriptsPanel.prototype._breakpointUpdated):
124 (WebInspector.ScriptsPanel.prototype.reset):
125 * inspector/front-end/WebKit.qrc:
126 * inspector/front-end/inspector.html:
128 2011-04-07 Yury Semikhatsky <yurys@chromium.org>
130 Reviewed by Pavel Feldman.
132 Web Inspector: console messages names should adhere to the common naming style
133 https://bugs.webkit.org/show_bug.cgi?id=58042
135 * inspector/ConsoleMessage.cpp:
136 (WebCore::ConsoleMessage::addToFrontend):
137 (WebCore::ConsoleMessage::updateRepeatCountInConsole):
138 * inspector/Inspector.json:
139 * inspector/InspectorConsoleAgent.cpp:
140 (WebCore::InspectorConsoleAgent::clearConsoleMessages):
141 * inspector/front-end/ConsoleView.js:
142 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
143 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageRepeatCountUpdated):
144 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messagesCleared):
145 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
147 2011-04-06 Ilya Tikhonovsky <loislo@chromium.org>
149 Reviewed by Yury Semikhatsky.
151 Web Inspector: migrate Inspector protocol messages format to JSON-RPC.
152 https://bugs.webkit.org/show_bug.cgi?id=57957
154 There is not a significant difference between inspector messages spec and and JSON-RPC 2.0 messages spec.
155 Also JSON-RPC has a pretty clear specification for error descriptions which we haven't.
156 It was decided that we will use it.
160 2) domain + '.' + event => method // for events
161 3) domain + '.' + command => method // for requests
162 4) requestId => id // for responses
163 5) arguments => params // for requests
164 6) data => params // for events
165 7) body => result // for responses
167 protocolErrors and error properties will be converted to JSON-RPC error format.
168 The order of properties in messages also will be adjusted.
169 The only thing that looks unnecessary is jsonrpc property.
171 * inspector/CodeGeneratorInspector.pm:
173 2011-04-07 Ryosuke Niwa <rniwa@webkit.org>
175 Reviewed by Eric Seidel.
177 Add functions to update left and right offsets to LineOffsets
178 https://bugs.webkit.org/show_bug.cgi?id=58028
180 Added update() and shrinkWidthForNewFloatIfNeeded(FloatingObject*) to LineOffsets,
181 which are used to update m_left and m_right. Also added m_block and m_isFirstLine
182 member variables to LineOffsets so that users of LineOffsets don't have to pass them around.
184 * rendering/RenderBlock.h:
185 * rendering/RenderBlockLineLayout.cpp:
186 (WebCore::RenderBlock::skipLeadingWhitespace): No longer passes firstLine to positionNewFloatOnLine.
187 (WebCore::LineOffsets::LineOffsets): Takes RenderBlock* and isFirstLine instead of left and right offsets.
188 (WebCore::LineOffsets::update): Extracted from findNextLineBreak and positionNewFloatOnLine.
189 (WebCore::LineOffsets::shrinkWidthForNewFloatIfNeeded): Extracted from positionNewFloatOnLine.
190 (WebCore::RenderBlock::findNextLineBreak): Calls skipLeadingWhitespace and positionNewFloatOnLine.
191 (WebCore::RenderBlock::positionNewFloatOnLine): Calls shrinkWidthForNewFloatIfNeeded and update and
192 no longer passes firstLine around.
194 2011-04-06 Pavel Feldman <pfeldman@google.com>
196 Reviewed by Yury Semikhatsky.
198 Web Inspector: migrate debugger domain to the unified breakpoint location notion.
199 https://bugs.webkit.org/show_bug.cgi?id=57928
201 * inspector/Inspector.json:
202 * inspector/InspectorDebuggerAgent.cpp:
203 (WebCore::buildObjectForBreakpointCookie):
204 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
205 (WebCore::InspectorDebuggerAgent::setBreakpoint):
206 (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
207 (WebCore::InspectorDebuggerAgent::didParseSource):
208 * inspector/InspectorDebuggerAgent.h:
209 * inspector/front-end/Breakpoint.js:
210 (WebInspector.Breakpoint):
211 * inspector/front-end/DebuggerModel.js:
212 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
213 (WebInspector.DebuggerModel.prototype._breakpointResolved):
215 2011-04-07 Andreas Kling <andreas.kling@nokia.com>
217 Reviewed by Benjamin Poulain.
219 [Qt] Mask the QStyle::State_Horizontal hint for vertical scrollbars.
221 When initializing a QStyleOptionSlider from a widget, the State_Horizontal
222 hint may get set depending on how that widget is laid out in its parent.
223 If this happens when drawing a vertical scrollbar, the hint is never
224 cleared and we end up painting a vertical scrollbar with horizontal arrows.
226 Covered by pixel tests which should no longer paint silly scrollbars.
228 * platform/qt/ScrollbarThemeQt.cpp:
229 (WebCore::styleOptionSlider):
231 2011-04-07 Adam Barth <abarth@webkit.org>
233 Reviewed by Eric Seidel.
235 script-src should block inline script
236 https://bugs.webkit.org/show_bug.cgi?id=58012
238 Block inline scripts at the ScriptElement layer. This should catch
239 exactly the scripts we want to catch.
241 Test: http/tests/security/contentSecurityPolicy/inline-script-blocked.html
244 (WebCore::Document::processHttpEquiv):
245 - This patch also adds the ability to supply a CSP policy via a
246 <meta> tag. We'll update the name of the header once we've
247 finished implementing the spec.
248 * dom/ScriptElement.cpp:
249 (WebCore::ScriptElement::executeScript):
250 * page/ContentSecurityPolicy.cpp:
251 (WebCore::ContentSecurityPolicy::allowInlineScript):
252 * page/ContentSecurityPolicy.h:
254 2011-04-07 Alice Boxhall <aboxhall@chromium.org>
256 Reviewed by Ryosuke Niwa.
258 Move the MouseEventWithHitTestResults::targetNode() method on to EventHandler.
259 https://bugs.webkit.org/show_bug.cgi?id=57921
261 Moves the MouseEventWithHitTestResults::targetNode() method on to EventHandler, so
262 that the same logic can be used for a HitTestResult.
264 No visible changes, just cleanup, so no tests.
266 * page/EventHandler.cpp:
267 (WebCore::EventHandler::selectClosestWordFromMouseEvent):
268 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
269 (WebCore::EventHandler::handleMousePressEventTripleClick):
270 (WebCore::EventHandler::handleMousePressEventSingleClick):
271 (WebCore::EventHandler::handleMousePressEvent):
272 (WebCore::EventHandler::handleMouseDraggedEvent):
273 (WebCore::EventHandler::handleMouseReleaseEvent):
274 (WebCore::EventHandler::subframeForHitTestResult):
275 Made public static member, so that it can access targetNode(), and be accessed by
276 webkitwebview in gtk.
277 (WebCore::EventHandler::selectCursor):
278 (WebCore::EventHandler::targetNode):
279 (WebCore::EventHandler::handleMouseDoubleClickEvent):
280 (WebCore::EventHandler::handleMouseMoveEvent):
281 (WebCore::EventHandler::updateDragAndDrop):
282 (WebCore::EventHandler::sendContextMenuEvent):
283 * page/EventHandler.h:
284 * page/MouseEventWithHitTestResults.cpp:
285 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
286 * page/MouseEventWithHitTestResults.h:
287 * page/android/EventHandlerAndroid.cpp:
288 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
289 * page/brew/EventHandlerBrew.cpp:
290 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
291 * page/chromium/EventHandlerChromium.cpp:
292 (WebCore::EventHandler::passMousePressEventToSubframe):
293 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
294 * page/efl/EventHandlerEfl.cpp:
295 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
296 * page/gtk/EventHandlerGtk.cpp:
297 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
298 * page/haiku/EventHandlerHaiku.cpp:
299 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
300 * page/mac/EventHandlerMac.mm:
301 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
302 (WebCore::EventHandler::passSubframeEventToSubframe):
303 * page/wx/EventHandlerWx.cpp:
304 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
306 2011-04-07 Pavel Podivilov <podivilov@chromium.org>
308 Reviewed by Pavel Feldman.
310 Web Inspector: build mapping for formatted scripts based on keywords positions.
311 https://bugs.webkit.org/show_bug.cgi?id=57936
313 Mapping based on [\$\.\w]+ was not accurate because string literals representation
314 may be different in original and formatted scripts.
316 * inspector/front-end/ScriptFormatterWorker.js:
317 (buildMapping.regexp.b):
320 2011-04-07 Kent Tamura <tkent@chromium.org>
322 Reviewed by Dimitri Glazkov.
324 Spinbuttons become unclickable if right padding is large.
325 https://bugs.webkit.org/show_bug.cgi?id=56298
327 An inner-spin-button is put on the right border and ignores right
328 padding in RenderTextControlSingleLine::layout(), but forwardEvent()
329 checks if a point is in an area just right of an internal text block.
330 This inconsistency caused a bug that an inner-spin-button with large
331 padding didn't receive mouse events.
333 To fix this bug, we render spin buttons as layers, and remove manual
334 event forwarding code.
336 Test: fast/forms/input-number-large-padding.html
338 * css/html.css: Add "position:relative" to make a spin-button a layer.
339 (input::-webkit-inner-spin-button):
340 (input::-webkit-outer-spin-button):
341 * rendering/RenderTextControlSingleLine.cpp:
342 (WebCore::RenderTextControlSingleLine::forwardEvent):
343 Remove manual event forwarding code.
345 2011-04-06 Adam Barth <abarth@webkit.org>
347 Reviewed by Eric Seidel.
349 CSP object-src should block plugin loads
350 https://bugs.webkit.org/show_bug.cgi?id=57283
352 This change is pretty straight-forward. It's slighly unclear to me
353 whether this patch is correct w.r.t. the code in DocumentWriter. I've
354 added a FIXME comment, and I'll investigate that case more in the future.
356 Test: http/tests/security/contentSecurityPolicy/object-src-none.html
358 * loader/DocumentWriter.cpp:
359 (WebCore::DocumentWriter::begin):
360 * loader/SubframeLoader.cpp:
361 (WebCore::SubframeLoader::requestPlugin):
362 * page/ContentSecurityPolicy.cpp:
363 (WebCore::ContentSecurityPolicy::allowObjectFromSource):
364 (WebCore::ContentSecurityPolicy::addDirective):
365 * page/ContentSecurityPolicy.h:
367 2011-04-06 Beth Dakin <bdakin@apple.com>
369 Reviewed by Dan Bernstein.
371 https://bugs.webkit.org/show_bug.cgi?id=58009
372 Frame::scalePage() results in visual artifacts with scale factors less than 1
374 <rdar://problem/8683230>
376 Fall into the case where we fill with a background base color when there is a page
377 scale factor that is less than 1.
378 * rendering/RenderView.cpp:
379 (WebCore::RenderView::paintBoxDecorations):
381 2011-04-06 Jer Noble <jer.noble@apple.com>
383 Reviewed by Darin Adler.
385 AVF: MediaPlayerPrivateAVFoundationObjC should not use -[AVPlayerItem isPlaybackBufferEmpty]
386 https://bugs.webkit.org/show_bug.cgi?id=57982
388 Query our cached loaded time array instead of asking AVPlayerItem if its buffer is empty.
390 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
391 (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItemStatus):
393 2011-04-06 Jer Noble <jer.noble@apple.com>
395 Reviewed by Eric Carlson.
397 MediaPlayerPrivateAVFoundation does not change rate due to setRate().
398 https://bugs.webkit.org/show_bug.cgi?id=57919
400 Test: media/video-set-rate-from-pause.html
402 The base class of MediaPlayerPrivateAVFoundation does not actually change the rate
403 of the media; instead a subclass must do that work. So when setRate() is called,
404 inform a subclass through a new pure virtual updateRate() function that there's
407 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
408 (WebCore::MediaPlayerPrivateAVFoundation::setRate): Call updateRate()
409 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
410 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
411 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
412 (WebCore::MediaPlayerPrivateAVFoundationObjC::updateRate): Added. Set the requested rate.
414 2011-04-06 Dai Mikurube <dmikurube@chromium.org>
416 Reviewed by David Levin.
418 Add QUOTA build flag for unified quota API
419 https://bugs.webkit.org/show_bug.cgi?id=57918
421 * Configurations/FeatureDefines.xcconfig: Added QUOTA build flag
422 * GNUmakefile.am: Added QUOTA build flag
423 * WebCore.pri: Added QUOTA build flag
425 2011-04-06 Stephanie Lewis <slewis@apple.com>
427 Reviewed by Darin Adler.
429 https://bugs.webkit.org/show_bug.cgi?id=57997
430 <rdar://problem/9187856> REGRESSION(r75555): ~5-7 MB increase in memory between iBench runs
431 Navigating away from a Scrolled page which queues a scroll event that is never dispatched.
432 Cancel all enqueued events when detaching the Document the events cannot keep the Document
435 No change in functionality so no new tests.
438 (WebCore::Document::detach):
439 * dom/EventQueue.cpp:
440 (WebCore::EventQueue::cancelQueuedEvents):
443 2011-04-06 Dan Bernstein <mitz@apple.com>
445 Reviewed by Darin Adler.
447 <rdar://problem/9084761> REGRESSION (r73993): Default Arabic line spacing has gotten very loose when the specified font is not Arabic
448 https://bugs.webkit.org/show_bug.cgi?id=58002
450 * platform/graphics/mac/SimpleFontDataMac.mm:
451 (WebCore::SimpleFontData::platformInit): The version of Geeza Pro in Snow Leopard
452 does not require the vertical metrics tweaks that were needed in Leopard. That the
453 tweaks were being applied went mostly unnoticed until r73993, because until then it
454 only affected cases where Geeza Pro was specified, not when it occurred as a fallback
457 2011-04-06 Roland Steiner <rolandsteiner@chromium.org>
459 Reviewed by Dimitri Glazkov.
461 Bug 57994 - Move guardRef functionality back to Document
462 https://bugs.webkit.org/show_bug.cgi?id=57994
464 Move the relevant code parts from TreeScope back into Document.
466 No new tests. (no new functionality)
469 (WebCore::Document::removedLastRef):
472 (WebCore::TreeScope::destroyTreeScopeData):
475 2011-04-06 Ian Henderson <ianh@apple.com>
477 Reviewed by Simon Fraser, Antti Koivisto.
479 Fast path for parsing simple CSS values
480 https://bugs.webkit.org/show_bug.cgi?id=57964
482 Add functions to parse simple color or dimension values, skipping the
483 overhead of full CSS parsing.
485 Change parseValue to a static method to avoid unnecessary allocation
486 of a CSSParser in the fast case.
488 * css/CSSMutableStyleDeclaration.cpp:
489 (WebCore::CSSMutableStyleDeclaration::setProperty):
490 Changed to use the new, static parseValue method.
492 (WebCore::isColorPropertyID):
493 (WebCore::parseColorValue):
494 Parses any color accepted by the existing parseColor() static method.
495 We must handle color identifiers separately, since parseColor() will
496 change 'red' into 'rgb(255, 0, 0)'.
497 (WebCore::isSimpleLengthPropertyID):
498 (WebCore::parseSimpleLengthValue):
499 Parses a value of the form 'NNpx', 'NN%', or 'NN' (when strict is
500 false, or 'NN' is '0'). Returns false to fall back to the slow path.
501 (WebCore::CSSParser::parseValue):
503 * css/WebKitCSSMatrix.cpp:
504 (WebCore::WebKitCSSMatrix::setMatrixValue):
505 Changed to use the new, static parseValue method.
507 2011-04-06 Kevin Ollivier <kevino@theolliviers.com>
509 Reviewed by Darin Adler.
511 Make sure JS_EXPORT_PRIVATE is an empty define when we aren't using the export macros.
513 https://bugs.webkit.org/show_bug.cgi?id=27551
517 2011-04-06 Simon Fraser <simon.fraser@apple.com>
519 Reviewed by Antti Koivisto.
521 Some minor style resolution optimizations
522 https://bugs.webkit.org/show_bug.cgi?id=57996
524 A couple of minor optimizations to style-related code.
526 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
527 (WebCore::isCSSPropertyName):
528 (WebCore::JSCSSStyleDeclaration::putDelegate):
529 Avoid calling cssPropertyName() twice when setting style on an element.
531 * css/CSSStyleSelector.cpp:
532 (WebCore::useSVGZoomRules):
533 (WebCore::CSSStyleSelector::applyProperty):
534 Avoid calling isSVGElement() for every property, since only a two properties
537 2011-04-06 Ian Henderson <ianh@apple.com>
539 Reviewed by Antti Koivisto.
541 Unnecessary string allocation in CSSStyleDeclaration::setProperty
542 https://bugs.webkit.org/show_bug.cgi?id=57995
544 Pass the bool representing the property's importance directly instead
545 of constructing a string.
547 * css/CSSStyleDeclaration.cpp:
548 (WebCore::CSSStyleDeclaration::setProperty):
550 2011-04-06 Leandro Gracia Gil <leandrogracia@chromium.org>
552 Reviewed by Steve Block.
554 Make the style of createFunctionOnlyCallback in V8 consistent with the JavaScriptCore version.
555 https://bugs.webkit.org/show_bug.cgi?id=57963
557 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
559 * bindings/v8/V8Utilities.h:
560 (WebCore::createFunctionOnlyCallback):
561 * bindings/v8/custom/V8GeolocationCustom.cpp:
562 (WebCore::V8Geolocation::getCurrentPositionCallback):
563 (WebCore::V8Geolocation::watchPositionCallback):
565 2011-04-06 Brian Weinstein <bweinstein@apple.com>
567 Reviewed by Adam Roben.
569 WebKit2: Support Windows 7 Gestures
570 https://bugs.webkit.org/show_bug.cgi?id=49824
571 <rdar://problem/8689728>
573 Move WindowTouch.h from WebKit/win, so it can be used in both WebKit and WebKit2.
575 * WebCore.vcproj/WebCore.vcproj:
576 * platform/win/WindowsTouch.h: Copied from WebKit/win/WindowsTouch.h.
578 2011-04-06 Alexis Menard <alexis.menard@openbossa.org>
580 Reviewed by Andreas Kling.
582 [Qt] We should use USE(QT_MULTIMEDIA) rather than ENABLE(QT_MULTIMEDIA).
583 https://bugs.webkit.org/show_bug.cgi?id=57974
585 We should use USE(QT_MULTIMEDIA) rather than ENABLE(QT_MULTIMEDIA).
587 No new tests needed, just a config flag rename.
591 2011-04-06 Tyler Close <tjclose@chromium.org>
593 Reviewed by Nate Chapin.
595 run-bindings-tests reference files out of sync with CodeGenerator*.pm
596 https://bugs.webkit.org/show_bug.cgi?id=57967
598 * bindings/scripts/test/V8/V8TestCallback.cpp:
600 2011-04-06 Asanka Herath <asanka@chromium.org>
602 Reviewed by Darin Fisher.
604 Add new TargetType: TargetIsFavicon
606 https://bugs.webkit.org/show_bug.cgi?id=57659
608 No new functionality added, so no additional tests.
610 * platform/network/ResourceRequestBase.h:
612 2011-04-06 David Hyatt <hyatt@apple.com>
614 Reviewed by Simon Fraser.
616 https://bugs.webkit.org/show_bug.cgi?id=57981
618 Update the column count and width computation algorithm for CSS3 multi-column layout
619 to match the revised pseudo-algorithm in the latest draft of the spec.
621 * rendering/RenderBlock.cpp:
622 (WebCore::RenderBlock::calcColumnWidth):
624 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
626 Reviewed by Eric Seidel.
628 borderPaddingMarginStart and borderPaddingMarginEnd should take RenderInline
629 https://bugs.webkit.org/show_bug.cgi?id=57965
631 Changed the argument types of borderPaddingMarginStart and borderPaddingMarginEnd
632 from RenderBoxModelObject to RenderInline since they call marginStart and marginEnd
633 instead of marginStartForChild and marginEndForChild respectively.
635 Calling these two functions on RenderInline is okay because writing-mode cannot differ
636 from that of the containing block.
638 * rendering/RenderBlockLineLayout.cpp:
639 (WebCore::borderPaddingMarginStart):
640 (WebCore::borderPaddingMarginEnd):
641 (WebCore::inlineLogicalWidth):
643 2011-04-06 Sheriff Bot <webkit.review.bot@gmail.com>
645 Unreviewed, rolling out r83039.
646 http://trac.webkit.org/changeset/83039
647 https://bugs.webkit.org/show_bug.cgi?id=57978
649 introduced a new regression in conjunction to
650 ReplaceSelectionCommand (Requested by rniwa on #webkit).
652 * editing/EditingStyle.cpp:
653 (WebCore::EditingStyle::init):
654 * editing/InsertParagraphSeparatorCommand.cpp:
655 (WebCore::InsertParagraphSeparatorCommand::doApply):
657 2011-04-06 Naoki Takano <takano.naoki@gmail.com>
659 Reviewed by David Levin.
661 Webkit ignores PgUp/PgDown/Home/End in SELECT tag objects
662 https://bugs.webkit.org/show_bug.cgi?id=27658
664 Test: fast/events/select-element.html
666 * dom/SelectElement.cpp:
667 (WebCore::nextValidIndex): Moved from elsewhere in the file to be used by other routines.
668 (WebCore::nextSelectableListIndexPageAway): Returns a selectable index one page away from the given index.
669 (WebCore::nextSelectableListIndex): Implemented with nextValidIndex.
670 And converted to a normal static function from a private function of SelectElement.
671 (WebCore::previousSelectableListIndex): Implemented with nextValidIndex.
672 And converted to a normal static function from a private function of SelectElement.
673 (WebCore::firstSelectableListIndex): Returns the first selectable index.
674 (WebCore::lastSelectableListIndex): Returns the last selectable index.
675 (WebCore::SelectElement::menuListDefaultEventHandler): Converted from C cast to C++ cast.
676 (WebCore::SelectElement::listBoxDefaultEventHandler): Adds support for PageUp/PageDown/Home/End with both single and multiple selection.
678 * dom/SelectElement.h:
679 (WebCore::SelectElement::): Remove nextSelectableListIndex() and previousSelectableListIndex().
681 * rendering/RenderListBox.h: Makes RenderListBox::size public so that PageUp/PageDown behavior can use the actual list size rather than that specified in HTML.
682 They can differ due to the minimum size imposed by RenderListBox.
684 2011-04-06 David Hyatt <hyatt@apple.com>
686 Reviewed by Dan Bernstein.
688 https://bugs.webkit.org/show_bug.cgi?id=57975
690 The "More..." link for line clamping no longer shows up in Safari RSS. Fix the isLink() check
691 to just look at the style, so that it can find the InlineTextBox and not care that it's a child
692 of the link element and not the line box for the link element itself (since that line box got
695 * rendering/RenderFlexibleBox.cpp:
696 (WebCore::RenderFlexibleBox::applyLineClamp):
698 2011-04-06 Brady Eidson <beidson@apple.com>
700 Reviewed by Anders Carlsson.
702 https://bugs.webkit.org/show_bug.cgi?id=57973 and https://bugs.webkit.org/show_bug.cgi?id=57973
703 WK2 icon database should be able to get a CGImage of a specific size
705 * platform/graphics/BitmapImage.h:
706 * platform/graphics/Image.h:
707 (WebCore::Image::getFirstCGImageRefOfSize):
709 * platform/graphics/cg/ImageCG.cpp:
710 (WebCore::BitmapImage::getFirstCGImageRefOfSize): Walk the frames of the image until reaching the
711 first frame of the requested size.
713 2011-04-06 Malcolm MacLeod <malcolm.macleod@tshwanedje.com>
715 Reviewed by Kevin Ollivier.
717 [wx] Fix cursor handling so that we always call the chrome to set it.
719 https://bugs.webkit.org/show_bug.cgi?id=57972
721 * platform/wx/WidgetWx.cpp:
722 (WebCore::Widget::setCursor):
724 2011-04-06 David Hyatt <hyatt@apple.com>
726 Reviewed by Dan Bernstein.
728 https://bugs.webkit.org/show_bug.cgi?id=41445
730 Visited links painting with black background. Make sure that if the visited style has
731 the initial background color (transparent) set that we just use the unvisited color.
733 Added fast/history/visited-link-background-color.html
735 * rendering/style/RenderStyle.cpp:
736 (WebCore::RenderStyle::visitedDependentColor):
738 2011-04-06 Csaba Osztrogonác <ossy@webkit.org>
740 Unreviewed Qt buildfix after r83079.
744 2011-04-06 Dean Jackson <dino@apple.com>
746 Reviewed by Chris Marrin.
748 https://bugs.webkit.org/show_bug.cgi?id=56936
749 Crash in ImplicitAnimation::~ImplicitAnimation
751 Make sure the style and start time waiting lists
752 are cleared in the CompositeAnimation destructor. This
753 way, no running transitions can be left in a state
754 where they are destroyed as the AnimationControllerPrivate
757 * page/animation/CompositeAnimation.cpp:
758 (WebCore::CompositeAnimation::~CompositeAnimation):
760 2011-04-06 Robert Sesek <rsesek@chromium.org>
762 Reviewed by Alexey Proskuryakov.
764 Move code duplicated between the WebKit/mac and WebKit2 down to WebCore because Chromium will need it too
765 https://bugs.webkit.org/show_bug.cgi?id=54969
767 No change in behavior; no new tests.
769 * editing/TextIterator.cpp:
770 (WebCore::TextIterator::locationAndLengthFromRange): New method from duplicated code in WebKits
771 * editing/TextIterator.h:
773 (WebCore::Frame::rangeForPoint): New method from duplicated code in WebKits
775 2011-04-06 Leandro Gracia Gil <leandrogracia@chromium.org>
777 Reviewed by Steve Block.
779 Factoring the creation of 'FunctionOnly' callbacks in JavaScriptCore.
780 https://bugs.webkit.org/show_bug.cgi?id=57770
782 Create a template from an existing functionality in JSGeolocationCustom.cpp
783 to be used by the custom bindings of both Geolocation and the Media Stream API.
784 V8 version of this bug: https://bugs.webkit.org/show_bug.cgi?id=57760
786 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
788 * Android.jscbindings.mk:
793 * WebCore.vcproj/WebCore.vcproj:
794 * WebCore.xcodeproj/project.pbxproj:
795 * bindings/js/CallbackFunction.cpp: Added.
796 (WebCore::checkFunctionOnlyCallback):
797 * bindings/js/CallbackFunction.h: Added.
798 (WebCore::createFunctionOnlyCallback):
799 * bindings/js/JSBindingsAllInOne.cpp:
800 * bindings/js/JSGeolocationCustom.cpp:
801 (WebCore::JSGeolocation::getCurrentPosition):
802 (WebCore::JSGeolocation::watchPosition):
804 2011-04-06 Alexis Menard <alexis.menard@openbossa.org>
806 Reviewed by Andreas Kling.
808 [Qt] Implement fullscreen playback for the GStreamer backend.
809 https://bugs.webkit.org/show_bug.cgi?id=56826
811 Implement support for fullscreen playback when building the
812 Qt port with the GStreamer backend (DEFINES+=USE_GSTREAMER=1).
813 The implementation is done in FullScreenVideoQt alongside with
814 the Qt Multimedia support.
816 No new tests because layout tests cover it. They are not yet activated
817 but will be any time soon.
819 * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h:
820 * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
821 (FullScreenVideoWindow::FullScreenVideoWindow):
822 (FullScreenVideoWindow::setVideoElement):
823 (FullScreenVideoWindow::closeEvent):
824 (FullScreenVideoWindow::keyPressEvent):
825 (FullScreenVideoWindow::event):
826 (FullScreenVideoWindow::showFullScreen):
827 (FullScreenVideoWindow::hideCursor):
828 (FullScreenVideoWindow::showCursor):
830 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
832 Reviewed by Dimitri Glazkov.
834 Bundle lineLeftOffset and lineRightOffset as a class
835 https://bugs.webkit.org/show_bug.cgi?id=57851
837 Added a new class LineOffsets that encapsulates lineLeftOffset and lineRightOffset.
838 The patch makes clear that lineLeftOffset and lineRightOffset are never read individually
839 and only the difference is used to compute the width.
841 * rendering/RenderBlock.h:
842 * rendering/RenderBlockLineLayout.cpp:
843 (WebCore::RenderBlock::skipLeadingWhitespace): Takes LineOffsets instead of two integers.
844 (WebCore::LineOffsets::LineOffsets): Added.
845 (WebCore::LineOffsets::width): Added.
846 (WebCore::LineOffsets::setLeft): Added.
847 (WebCore::LineOffsets::setRight): Added.
848 (WebCore::RenderBlock::findNextLineBreak): Calls skipLeadingWhitespace and positionNewFloatOnLine.
849 (WebCore::RenderBlock::positionNewFloatOnLine): Takes LineOffsets instead of two integers.
851 2011-04-06 David Hyatt <hyatt@apple.com>
853 Reviewed by Dan Bernstein.
855 https://bugs.webkit.org/show_bug.cgi?id=57916
857 Implement an optimization to the line box tree to cull out most of the intermediate
858 line boxes that can occur between the root line box and the leaves of the tree (images
861 RenderInlines now have a boolean member, m_alwaysCreateLineBoxes,
862 that starts off as false. Only if it gets flipped to true will there be any line boxes
863 created for that RenderInline.
865 * page/FocusController.cpp:
866 (WebCore::FocusController::advanceFocusDirectionally):
867 Adjust the ordering of updateLayout calls to make sure rects aren't queried unless layout
870 * page/SpatialNavigation.cpp:
871 (WebCore::hasOffscreenRect):
872 (WebCore::nodeRectInAbsoluteCoordinates):
873 Add asserts in spatial navigation code to catch any future bad queries that might be made
874 for rectangles without layout being up to date.
876 * platform/graphics/FloatRect.cpp:
877 (WebCore::FloatRect::uniteIfNonZero):
878 * platform/graphics/FloatRect.h:
879 * platform/graphics/IntRect.cpp:
880 (WebCore::IntRect::uniteIfNonZero):
881 * platform/graphics/IntRect.h:
882 Add a new unite function that is useful for the render tree to FloatRect and IntRect. This
883 version allows rect unites to happen if either width or height is nonzero.
885 * rendering/HitTestResult.cpp:
886 (WebCore::HitTestResult::addNodeToRectBasedTestResult):
887 Make sure rect-based hit testing properly adds in culled inline ancestors to the set of nodes
888 if content inside those inlines is hit.
890 * rendering/InlineBox.h:
891 (WebCore::InlineBox::logicalFrameRect):
892 Fix a bug in this function for obtaining the logical frame rect of an inline box.
894 * rendering/InlineFlowBox.cpp:
895 (WebCore::InlineFlowBox::addToLine):
896 addToLine now also checks line gap in the line box tree optimization checks.
898 (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
899 (WebCore::InlineFlowBox::computeOverflow):
900 * rendering/InlineFlowBox.h:
901 Rewritten to add the text box overflow to the text box itself.
903 * rendering/InlineTextBox.cpp:
904 (WebCore::InlineTextBox::destroy):
905 Destroy has been changed to call a helper function to remove and destroy the line boxes that
906 is now called from one additional spot.
908 (WebCore::InlineTextBox::logicalOverflowRect):
909 (WebCore::InlineTextBox::setLogicalOverflowRect):
910 Text boxes now cache their own overflow in a global hash table.
912 (WebCore::InlineTextBox::baselinePosition):
913 (WebCore::InlineTextBox::lineHeight):
914 Changed to not assume that the parent line box's renderer is the RenderText's immediate
915 parent, since intermediate line boxes may have been culled.
917 (WebCore::InlineTextBox::paint):
918 Paint now properly checks only the text box overflow instead of the parent line box's overflow.
920 * rendering/InlineTextBox.h:
921 (WebCore::InlineTextBox::logicalTopVisualOverflow):
922 (WebCore::InlineTextBox::logicalBottomVisualOverflow):
923 (WebCore::InlineTextBox::logicalLeftVisualOverflow):
924 (WebCore::InlineTextBox::logicalRightVisualOverflow):
925 New accessors to obtain overflow for inline text boxes.
927 * rendering/RenderBlock.cpp:
928 (WebCore::RenderBlock::updateFirstLetter):
929 updateFirstLetter now removes text boxes from the line box tree before it destroys them, since those
930 text boxes may not have anything in between them and the block that contains the inline first letter
933 * rendering/RenderBlockLineLayout.cpp:
934 (WebCore::RenderBlock::createLineBoxes):
935 The culling optimization is done here. Only if the RenderInline says that boxes are allowed will they
938 (WebCore::RenderBlock::layoutInlineChildren):
939 The state of the RenderInline is updated here, in case it is discovered that line boxes are now needed.
940 This is done before any lines are built.
942 * rendering/RenderInline.cpp:
943 (WebCore::RenderInline::RenderInline):
944 The new m_alwaysCreateLineBoxes flag has been added to the constructor.
946 (WebCore::RenderInline::styleDidChange):
947 An initial update of the m_alwaysCreateLineBoxes happens here for things that can be checked immediately
948 (like having a layer, borders, padding, margins or backgrounds). Some checks that depend on examining
949 the RenderInline's parent (including first line styles) happen later in layoutInlineChildren.
951 (WebCore::RenderInline::updateAlwaysCreateLineBoxes):
952 The function called by layoutInlineChildren to check parent and child style differences (e.g., font,
953 vertical alignment, line height, etc.).
955 (WebCore::RenderInline::absoluteRects):
956 (WebCore::RenderInline::culledInlineAbsoluteRects):
957 absoluteRects calls culledInlineAbsoluteRects when m_alwaysCreateLineBoxes is false.
959 (WebCore::RenderInline::absoluteQuads):
960 (WebCore::RenderInline::culledInlineAbsoluteQuads):
961 absoluteQuads calls culledInlineAbsoluteQuads when m_alwaysCreateLineBoxes is false.
963 (WebCore::RenderInline::offsetLeft):
964 (WebCore::RenderInline::offsetTop):
965 offsetLeft and offsetTop now check descendant renderers when m_alwaysCreateLineBoxes is false.
967 (WebCore::RenderInline::linesBoundingBox):
968 (WebCore::RenderInline::culledInlineBoundingBox):
969 lineBoundingBox calls culledInlineBoundingBox when m_alwaysCreateLineBoxes is false.
971 (WebCore::RenderInline::culledInlineFirstLineBox):
972 (WebCore::RenderInline::culledInlineLastLineBox):
973 Helpers that return the first and last line box descendants. Used by firstLineBoxIncludingCulling and
974 lastLineBoxIncludingCulling (which are in turn called by offsetLeft and offsetTop).
976 (WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
977 (WebCore::RenderInline::linesVisualOverflowBoundingBox):
978 linesVisualOverflowBoundingBox calls culledInlineVisualOverflowBoundingBox when m_alwaysCreateLineBoxes is false.
980 (WebCore::RenderInline::clippedOverflowRectForRepaint):
981 The initial bailout check is now done using firstLineBoxIncludingCulling instead of just firstLineBox.
983 (WebCore::RenderInline::dirtyLineBoxes):
984 dirtyLineBoxes now crawls into descendants to figure out which root lines to dirty when
985 m_alwaysCreateLineBoxes is false.
987 (WebCore::RenderInline::createAndAppendInlineFlowBox):
988 Clear the m_alwaysCreateLineBoxes if a box gets added anyway. This happens for leaf inline flows and also
989 when line-box-contain is set to an unusual value.
991 (WebCore::RenderInline::addFocusRingRects):
992 Used culledInlineAbsoluteRects in place of the line box walk when m_alwaysCreateLineBoxes is false.
994 * rendering/RenderInline.h:
995 (WebCore::RenderInline::firstLineBoxIncludingCulling):
996 (WebCore::RenderInline::lastLineBoxIncludingCulling):
997 Helpers used in a few places (like offsetLeft and offsetTop), mostly in places where the existence of a box
998 is all that needs checking.
1000 (WebCore::RenderInline::alwaysCreateLineBoxes):
1001 (WebCore::RenderInline::setAlwaysCreateLineBoxes):
1002 Functions for getting and setting the m_alwaysCreateLineBoxes flag.
1004 * rendering/RenderLineBoxList.cpp:
1005 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1006 Modified to use firstLineBoxIncludingCulling and lastLineBoxIncludingCulling to ensure the right set of
1009 * rendering/RenderText.cpp:
1010 (WebCore::RenderText::removeAndDestroyTextBoxes):
1011 New helper invoked by destroy and also from updateFirstLetter.
1013 (WebCore::RenderText::destroy):
1014 Changed to call removeAndDestroyTextBoxes.
1016 (WebCore::RenderText::absoluteRects):
1017 Fixed to be properly physical instead of logical.
1019 (WebCore::RenderText::linesVisualOverflowBoundingBox):
1020 New implementation for RenderText that gives the bounding box of the text boxes including overflow from
1021 shadows, glyphs, text-stroke, etc. Used by RenderInline::culledInlineVisualOverflowBoundingBox.
1023 * rendering/RenderText.h:
1024 * rendering/svg/RenderSVGInline.cpp:
1025 (WebCore::RenderSVGInline::RenderSVGInline):
1026 RenderSVGInline always sets m_alwaysCreateLineBoxes to true so that SVG is unaffected by this optimization.
1028 * rendering/svg/SVGRootInlineBox.cpp:
1029 (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
1030 (WebCore::SVGRootInlineBox::layoutChildBoxes):
1031 Move the isInlineFlowBox asserts to after the generated content skips, since the generated content boxes are
1032 now InlineTextBoxes (the enclosing InlineFlowBoxes got culled).
1034 2011-04-05 Enrica Casucci <enrica@apple.com>
1036 Reviewed by Darin Adler.
1038 REGRESSION: Drag & Drop Gmail Attachments doesn't work.
1039 https://bugs.webkit.org/show_bug.cgi?id=57909
1040 <rdar://problem/9103220>
1042 In WebKit2 we cannot rely on the value returned by platformData() that
1043 on Mac returns an NSDraggingInfo object. This is available only in the UI
1044 process. Therefore we should use m_pasteboard instead.
1045 We cannot change what platformData() returns on Mac, since there are
1046 delegate methods that receive a NSDraggingInfo object (only in WebKit).
1048 * platform/DragData.h:
1049 (WebCore::DragData::pasteboard): Added.
1050 * platform/mac/ClipboardMac.mm:
1051 (WebCore::Clipboard::create): Changed to use pasteboard() instead of platformData().
1052 * platform/mac/DragDataMac.mm:
1053 (WebCore::DragData::asColor): Replaced references to m_platformData with m_pasteboard.
1054 (WebCore::DragData::asURL): Same as above.
1056 2011-04-06 Benjamin Poulain <benjamin.poulain@nokia.com>
1058 Reviewed by Darin Adler.
1060 ClipboardWin has unused variables "ExceptionCode ec"
1061 https://bugs.webkit.org/show_bug.cgi?id=57952
1063 Remove the unused variable.
1065 * platform/win/ClipboardWin.cpp:
1066 (WebCore::ClipboardWin::declareAndWriteDragImage):
1067 (WebCore::ClipboardWin::writePlainText):
1069 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1071 Reviewed by Dimitri Glazkov.
1073 Split getBorderPaddingMargin into two functions
1074 https://bugs.webkit.org/show_bug.cgi?id=57947
1076 * rendering/RenderBlockLineLayout.cpp:
1077 (WebCore::borderPaddingMarginStart): Extracted from getBorderPaddingMargin.
1078 (WebCore::borderPaddingMarginEnd): Ditto.
1079 (WebCore::inlineLogicalWidth): Calls borderPaddingMarginStart and borderPaddingMarginEnd.
1080 (WebCore::RenderBlock::findNextLineBreak): Ditto.
1082 2011-04-06 MORITA Hajime <morrita@google.com>
1084 Reviewed by Dimitri Glazkov.
1086 [Refactoring] <progress> should not have manual layout code.
1087 https://bugs.webkit.org/show_bug.cgi?id=57801
1089 - Simplified RenderProgress, removing its custom layout code
1090 - Introducing ProgressValueElement and ProgressBarElement, replacing
1091 ProgressBarValueElement.
1093 Now the structure is almost identical to <meter>,
1095 - RenderProgress has animated painting, thus manages its own timer.
1096 - Both ProgressValueElement and ProgressBarElement has pseudo classes
1097 which don't changes during its lifetime.
1104 * WebCore.vcproj/WebCore.vcproj:
1105 * WebCore.xcodeproj/project.pbxproj:
1108 (progress::-webkit-progress-bar):
1109 (progress::-webkit-progress-value):
1110 * html/HTMLProgressElement.cpp:
1111 (WebCore::HTMLProgressElement::~HTMLProgressElement):
1112 (WebCore::HTMLProgressElement::create):
1113 (WebCore::HTMLProgressElement::attach):
1114 (WebCore::HTMLProgressElement::didElementStateChange):
1115 (WebCore::HTMLProgressElement::createShadowSubtree):
1116 * html/HTMLProgressElement.h:
1117 * html/shadow/ProgressShadowElement.cpp: Copied from Source/WebCore/html/shadow/ProgressBarValueElement.h.
1118 (WebCore::ProgressShadowElement::ProgressShadowElement):
1119 (WebCore::ProgressShadowElement::progressElement):
1120 (WebCore::ProgressShadowElement::rendererIsNeeded):
1121 (WebCore::ProgressBarElement::shadowPseudoId):
1122 (WebCore::ProgressValueElement::shadowPseudoId):
1123 (WebCore::ProgressValueElement::setWidthPercentage):
1124 * html/shadow/ProgressShadowElement.h: Renamed from Source/WebCore/html/shadow/ProgressBarValueElement.h.
1125 (WebCore::ProgressBarElement::ProgressBarElement):
1126 (WebCore::ProgressBarElement::create):
1127 (WebCore::ProgressValueElement::ProgressValueElement):
1128 (WebCore::ProgressValueElement::create):
1129 * rendering/RenderProgress.cpp:
1130 (WebCore::RenderProgress::RenderProgress):
1131 (WebCore::RenderProgress::updateFromElement):
1132 (WebCore::RenderProgress::animationTimerFired):
1133 * rendering/RenderProgress.h:
1134 (WebCore::RenderProgress::requiresForcedStyleRecalcPropagation):
1135 (WebCore::RenderProgress::canHaveChildren):
1137 2011-04-06 Mario Sanchez Prada <msanchez@igalia.com>
1139 Reviewed by Chris Fleizach.
1141 [GTK] Do not reference AccessibilityRenderObject from platform dependent code
1142 https://bugs.webkit.org/show_bug.cgi?id=57955
1144 Do not reference AccessibilityRenderObject from platform specific code
1146 Added new virtual functions to AccessibilityObject.h and removed
1147 explicit references to AccessibilityRenderObject from GTK code.
1149 * accessibility/AccessibilityObject.h:
1150 (WebCore::AccessibilityObject::renderer): New virtual method,
1151 returning 0 by default. Overriden by AccessibilityRenderObject.
1152 (WebCore::AccessibilityObject::correspondingLabelForControlElement):
1153 New virtual method, returning 0 by default. It complements the
1154 already present method correspondingControlForLabelElement().
1156 * accessibility/AccessibilityRenderObject.h:
1157 (WebCore::AccessibilityRenderObject::renderer): Made virtual.
1159 * accessibility/gtk/AXObjectCacheAtk.cpp:
1160 (WebCore::emitTextChanged): Reference AccessibilityObject,
1161 instead of AccessibilityRenderObject.
1162 (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
1165 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1166 (webkit_accessible_get_name): Do not reference
1167 AccessibilityRenderObject.
1168 (webkit_accessible_get_description): Ditto.
1169 (setAtkRelationSetFromCoreObject): Ditto.
1170 (optionFromList): Ditto.
1171 (optionFromSelection): Ditto.
1172 (webkit_accessible_selection_clear_selection): Ditto.
1173 (webkit_accessible_selection_get_selection_count): Ditto.
1174 (webkit_accessible_selection_select_all_selection): Ditto.
1175 (textForObject): Ditto.
1176 (webkit_accessible_text_get_text): Ditto.
1177 (getPangoLayoutForAtk): Ditto.
1178 (webkit_accessible_text_get_caret_offset): Ditto.
1179 (baselinePositionForRenderObject): Ditto.
1180 (getAttributeSetForAccessibilityObject): Ditto.
1181 (accessibilityObjectLength): Ditto.
1182 (getSelectionOffsetsForObject): Ditto.
1183 (webkit_accessible_text_set_selection): Ditto.
1184 (webkit_accessible_text_set_caret_offset): Ditto.
1185 (webkit_accessible_table_get_caption): Ditto.
1186 (getInterfaceMaskFromObject): Ditto.
1188 * accessibility/gtk/WebKitAccessibleHyperlink.cpp:
1189 (getRangeLengthForObject): Ditto.
1191 Removed unused renderer() method from AccessibilityMenuList.
1193 * accessibility/AccessibilityMenuList.h: Removed unused method.
1194 * accessibility/AccessibilityMenuList.cpp: Removed unused method.
1196 2011-04-06 Alexander Pavlov <apavlov@chromium.org>
1198 Reviewed by Pavel Feldman.
1200 Web Inspector: Javascipt warning link expand and overlap with icons in js console
1201 https://bugs.webkit.org/show_bug.cgi?id=57939
1203 * inspector/front-end/inspector.js:
1204 (WebInspector.linkifyURLAsNode):
1206 2011-04-06 Alexander Pavlov <apavlov@chromium.org>
1208 Reviewed by Pavel Feldman.
1210 Web Inspector: Beautify parameter names in Inspector.json (CSS domain)
1211 https://bugs.webkit.org/show_bug.cgi?id=57931
1213 * inspector/Inspector.json:
1215 2011-04-06 Jia Pu <jpu@apple.com>
1217 Reviewed by Darin Adler.
1219 [Mac] WebCore need to notify AppKit spell checker after user has modified autocorrected text.
1220 https://bugs.webkit.org/show_bug.cgi?id=57665
1221 <rdar://problem/7350477>
1223 We need to track how user modified an autocorrected word. If he changed it back to original
1224 text, we want to record AutocorrectionReverted response. And if he changed it to something
1225 else, we want to record AutocorrectionEdited response.
1227 To achieve this, we need to distringuish between text replacement caused by autocorrection
1228 from that due to other causes, such as reversion, text substitution, etc. So we added a new
1229 marker type "Autocorrected". We also need to be able to check for correction, even when we
1230 don't intend to actually carry out replacement. For this, we introduced a new TextCheckingOption
1231 value, "CheckForCorrection".
1233 We also added DocumentMarkerController::markersInRange() to retrieve a vector of markers in
1234 specified range, and of specified type.
1236 * dom/DocumentMarker.h:
1237 * dom/DocumentMarkerController.cpp:
1238 (WebCore::DocumentMarkerController::markersInRange):
1239 (WebCore::DocumentMarkerController::hasMarkers):
1240 * dom/DocumentMarkerController.h:
1241 * editing/Editor.cpp:
1242 (WebCore::markerTypesForAutocorrection):
1243 (WebCore::markersHaveIdenticalDescription):
1244 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1245 (WebCore::Editor::recordSpellcheckerResponseForModifiedCorrection):
1246 (WebCore::Editor::changeBackToReplacedString):
1247 (WebCore::Editor::markMisspellingsAndBadGrammar):
1248 (WebCore::Editor::applyCorrectionPanelInfo):
1249 (WebCore::Editor::unappliedSpellCorrection):
1250 (WebCore::Editor::textCheckingTypeMaskFor):
1252 * editing/SpellingCorrectionCommand.cpp:
1253 (WebCore::SpellingCorrectionCommand::doApply):
1255 2011-04-06 Sheriff Bot <webkit.review.bot@gmail.com>
1257 Unreviewed, rolling out r83045.
1258 http://trac.webkit.org/changeset/83045
1259 https://bugs.webkit.org/show_bug.cgi?id=57953
1261 Broke win layout tests (Requested by podivilov on #webkit).
1264 * inspector/front-end/DebuggerPresentationModel.js:
1265 (WebInspector.DebuggerPresentationModel.prototype._addScript):
1266 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
1268 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1270 Moved the declaration of positionNewFloatOnLine in RenderBlock.h after r83042.
1272 * rendering/RenderBlock.h:
1274 2011-03-27 Diego Gonzalez <diegohcg@webkit.org>
1276 Reviewed by Kenneth Rohde Christiansen.
1278 [Qt] Re-draw the <input> fields for Qt Mobile Theme to do not override elements already styled.
1279 https://bugs.webkit.org/show_bug.cgi?id=57007
1281 * CodeGenerators.pri:
1282 * css/themeQtMobile.css: Removed.
1283 * platform/qt/QtMobileWebStyle.cpp:
1284 (drawRectangularControlBackground):
1285 (QtMobileWebStyle::drawPrimitive):
1286 (QtMobileWebStyle::drawComplexControl):
1287 * platform/qt/QtMobileWebStyle.h:
1288 * platform/qt/RenderThemeQt.cpp:
1289 (WebCore::RenderThemeQt::isControlStyled):
1290 (WebCore::RenderThemeQt::paintTextField):
1292 2011-04-06 Jia Pu <jpu@apple.com>
1294 Reviewed by Darin Adler.
1296 [Mac] When autocorrection occurs without showing correction panel, WebCore need to post accessibility notification.
1297 https://bugs.webkit.org/show_bug.cgi?id=57800
1298 <rdar://problem/9218223>
1300 Defined a new accessibility notification type, AXAutocorrectionOccured. Editor::markAllMisspellingsAndBadGrammarInRanges()
1301 now posts said notification when any autocorrection or text replacement (e.g. replacing "(c)" with copyright mark) takes place.
1303 * accessibility/AXObjectCache.h:
1304 * accessibility/chromium/AXObjectCacheChromium.cpp:
1305 (WebCore::AXObjectCache::postPlatformNotification):
1306 * accessibility/mac/AXObjectCacheMac.mm:
1307 (WebCore::AXObjectCache::postPlatformNotification):
1308 * editing/Editor.cpp:
1309 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1311 2011-04-06 Martin Robinson <mrobinson@igalia.com>
1313 Build fix for debug Cairo builds.
1315 * platform/graphics/cairo/PlatformContextCairo.cpp:
1316 (WebCore::PlatformContextCairo::pushImageMask): Update the reference to m_maskInformation.
1318 2011-04-06 Diego Gonzalez <diegohcg@webkit.org>
1320 Reviewed by Antonio Gomes.
1322 [Qt] Style fix for QtMobileWebStyle.h
1323 https://bugs.webkit.org/show_bug.cgi?id=57708
1325 * platform/qt/QtMobileWebStyle.h:
1327 2011-04-06 Andras Becsi <abecsi@webkit.org>
1329 Reviewed by Darin Adler.
1331 Invalid color #{predefined colorName} is accepted by the CSS parser.
1332 https://bugs.webkit.org/show_bug.cgi?id=15360
1334 Test: fast/css/invalid-predefined-color.html
1336 * css/CSSGrammar.y: Remove superfluous hexcolor production.
1337 * css/tokenizer.flex: A hexadecimal number should consist of [a-fA-F0-9] values ({h}).
1339 2011-03-30 Pavel Podivilov <podivilov@chromium.org>
1341 Reviewed by Pavel Feldman.
1343 Web Inspector: add test for script formatter worker.
1344 https://bugs.webkit.org/show_bug.cgi?id=57447
1346 Test: inspector/debugger/script-formatter.html
1349 * inspector/front-end/DebuggerPresentationModel.js:
1350 (WebInspector.DebuggerPresentationModel):
1351 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
1353 2011-04-06 Martin Robinson <mrobinson@igalia.com>
1355 Reviewed by Xan Lopez.
1357 [Cairo] Hide the details of image masking in PlatformContextCairo
1358 https://bugs.webkit.org/show_bug.cgi?id=57878
1360 No new tests. This is just a refactor.
1362 * platform/graphics/GraphicsContext.h:
1363 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1364 (WebCore::GraphicsContext::savePlatformState): Call into PlatformContextCairo now to
1365 do the actual cairo_save. Remove information about image masking.
1366 (WebCore::GraphicsContext::restorePlatformState): Call into PlatformContextCairo now to
1367 do the actual cairo_restore. Remove information about image masking.
1368 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1369 * platform/graphics/cairo/ImageBufferCairo.cpp:
1370 (WebCore::ImageBuffer::clip): Use PlatformContextCairo here now.
1371 * platform/graphics/cairo/PlatformContextCairo.cpp:
1372 (WebCore::PlatformContextCairo::restore): Added.
1373 (WebCore::PlatformContextCairo::save): Added.
1374 (WebCore::PlatformContextCairo::pushImageMask): Added.
1375 * platform/graphics/cairo/PlatformContextCairo.h:
1376 (WebCore::ImageMaskInformation::update): Moved from GraphicsContextPlatformPrivateCairo.h.
1377 (WebCore::ImageMaskInformation::isValid): Ditto.
1378 (WebCore::ImageMaskInformation::maskSurface): Ditto.
1379 (WebCore::ImageMaskInformation::maskRect): Ditto.
1381 2011-04-02 Diego Gonzalez <diegohcg@webkit.org>
1383 Reviewed by Csaba Osztrogonác.
1385 [Qt] Radio buttons are showing wrong with mobile theme
1386 https://bugs.webkit.org/show_bug.cgi?id=57706
1388 * platform/qt/QtMobileWebStyle.cpp:
1389 (QtMobileWebStyle::drawRadio):
1391 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1393 Reviewed by Eric Seidel.
1395 Move RenderBlock::positionNewFloatOnLine to RenderBlockLineLayout.cpp
1396 https://bugs.webkit.org/show_bug.cgi?id=57943
1398 * rendering/RenderBlock.cpp: Removed positionNewFloatOnLine.
1399 * rendering/RenderBlockLineLayout.cpp:
1400 (WebCore::RenderBlock::positionNewFloatOnLine): Moved from RenderBlock.cpp
1402 2011-04-05 Diego Gonzalez <diegohcg@webkit.org>
1404 Buildfix after r82125.
1406 [Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
1407 https://bugs.webkit.org/show_bug.cgi?id=57087
1409 * platform/qt/QtMobileWebStyle.cpp:
1410 (QtMobileWebStyle::findChecker):
1411 (QtMobileWebStyle::findRadio):
1412 (QtMobileWebStyle::findComboButton):
1414 2011-04-06 Pavel Podivilov <podivilov@chromium.org>
1416 Reviewed by Yury Semikhatsky.
1418 Web Inspector: inline script imports in ScriptFormatterWorker.js so it works in Safari release.
1419 https://bugs.webkit.org/show_bug.cgi?id=57641
1421 * WebCore.xcodeproj/project.pbxproj:
1422 * gyp/streamline-inspector-source.sh:
1423 * inspector/combine-javascript-resources.pl: Renamed from Source/WebCore/combine-javascript-resources.
1424 * inspector/inline-javascript-imports.py: Added.
1426 2011-04-06 Ryosuke Niwa <rniwa@webkit.org>
1428 Reviewed by Eric Seidel.
1430 REGRESSION (r46914, r48764): When typing in Mail, line wrapping frequently occurs in the middle of words
1431 https://bugs.webkit.org/show_bug.cgi?id=57872
1433 r46914 initially introduced a regression by replacing calls to styleAtPosition by editingStyleAtPosition
1434 because editingStyleAtPosition did not avoid tab span to obtain the computed style unlike styleAtPosition.
1436 r46914 also introduced a regression by cloning hierarchy under new block at the insertion position without
1437 avoiding the tab span.
1439 Fixed the both regressions by avoiding tab spans when computing the editing style and when cloning hierarchy.
1441 Test: editing/inserting/insert-paragraph-separator-tab-span.html
1443 * editing/EditingStyle.cpp:
1444 (WebCore::EditingStyle::init): Always avoid a tab span when computing the editing style.
1445 * editing/InsertParagraphSeparatorCommand.cpp:
1446 (WebCore::InsertParagraphSeparatorCommand::doApply): Avoid cloning tab spans and inserting a paragraph
1447 separator into a paragraph separator.
1449 2011-04-06 Levi Weintraub <leviw@chromium.org>
1451 Reviewed by Ryosuke Niwa.
1453 Add member functions for determining line/paragraph separation to InlineIterator
1454 https://bugs.webkit.org/show_bug.cgi?id=57938
1456 Adding atTextParagraphSeparator and atParagraphSeparator inline convenience functions to
1457 InlineIterator, where it makes far more sense for them to be. Also moving
1458 shouldPreserveNewline to RenderObject and renaming it preservesNewline.
1460 No new tests as this provides no new functionality.
1462 * rendering/InlineIterator.h:
1463 (WebCore::InlineIterator::atTextParagraphSeparator):
1464 (WebCore::InlineIterator::atParagraphSeparator):
1465 * rendering/RenderBlockLineLayout.cpp:
1466 (WebCore::RenderBlock::requiresLineBox):
1467 (WebCore::RenderBlock::findNextLineBreak):
1468 * rendering/RenderObject.h:
1469 (WebCore::RenderObject::preservesNewline):
1471 2011-04-05 Alexander Pavlov <apavlov@chromium.org>
1473 Reviewed by Pavel Feldman.
1475 Web Inspector: Range insertNode function does not update content in the inspector
1476 https://bugs.webkit.org/show_bug.cgi?id=57829
1478 * inspector/InspectorDOMAgent.cpp:
1479 (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1480 (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
1482 2011-04-06 Alejandro G. Castro <alex@igalia.com>
1484 Fix GTK3 compilation after r82962.
1486 * platform/gtk/RenderThemeGtk3.cpp:
1487 (WebCore::paintToggle):
1488 (WebCore::renderButton):
1489 (WebCore::RenderThemeGtk::paintMenuList):
1490 (WebCore::RenderThemeGtk::paintTextField):
1491 (WebCore::RenderThemeGtk::paintSliderTrack):
1492 (WebCore::RenderThemeGtk::paintSliderThumb):
1493 (WebCore::RenderThemeGtk::paintProgressBar):
1494 (WebCore::paintSpinArrowButton):
1495 * platform/gtk/ScrollbarThemeGtk3.cpp:
1496 (WebCore::ScrollbarThemeGtk::paintTrackBackground):
1497 (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
1498 (WebCore::ScrollbarThemeGtk::paintThumb):
1499 (WebCore::ScrollbarThemeGtk::paintButton):
1501 2011-04-06 Andrey Kosyakov <caseq@chromium.org>
1503 Reviewed by Yury Semikhatsky.
1505 Web Inspector: [Extensions API] remove inspectedPage.* events
1506 https://bugs.webkit.org/show_bug.cgi?id=57763
1508 - Removed webInspector.inspectedPage.* events
1509 - moved onNavigated to webInspector.resources
1511 * inspector/front-end/ExtensionAPI.js:
1512 (WebInspector.injectedExtensionAPI):
1513 (WebInspector.injectedExtensionAPI.InspectedWindow):
1514 * inspector/front-end/ExtensionAPISchema.json:
1515 * inspector/front-end/ExtensionServer.js:
1516 (WebInspector.ExtensionServer.prototype.notifyInspectedURLChanged):
1517 * inspector/front-end/inspector.js:
1518 (WebInspector.domContentEventFired):
1519 (WebInspector.loadEventFired):
1520 (WebInspector.inspectedURLChanged):
1522 2011-04-06 Joseph Pecoraro <joepeck@webkit.org>
1524 Reviewed by Antti Koivisto.
1526 Add <head> to the simpleUserAgentStyleSheet
1527 https://bugs.webkit.org/show_bug.cgi?id=57915
1529 * css/CSSStyleSelector.cpp:
1530 (WebCore::elementCanUseSimpleDefaultStyle): add head to the
1531 simple stylesheet, display:none.
1533 2011-04-05 Mikhail Naganov <mnaganov@chromium.org>
1535 Reviewed by Pavel Feldman.
1537 Web Inspector: [Chromium] Add layout test for Summary view of detailed heap snapshots.
1538 https://bugs.webkit.org/show_bug.cgi?id=57856
1540 Test: inspector/profiler/detailed-heapshots-summary.html
1542 * inspector/front-end/DataGrid.js:
1543 (WebInspector.DataGrid):
1544 * inspector/front-end/DetailedHeapshotGridNodes.js:
1545 (WebInspector.HeapSnapshotGridNode.prototype._populate.doPopulate):
1546 (WebInspector.HeapSnapshotGridNode.prototype._populate):
1547 (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
1548 (WebInspector.HeapSnapshotGridNode.prototype.sort.doSort):
1549 (WebInspector.HeapSnapshotGridNode.prototype.sort):
1550 (WebInspector.HeapSnapshotDiffNode.prototype.populateChildren):
1551 * inspector/front-end/DetailedHeapshotView.js:
1552 (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
1553 * inspector/front-end/ProfilesPanel.js:
1554 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.doParse):
1555 (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
1557 2011-04-06 Anders Bakken <agbakken@gmail.com>
1559 Reviewed by David Levin.
1561 [Qt] SmartReplaceQt.cpp has coding-style errors
1562 https://bugs.webkit.org/show_bug.cgi?id=40261
1564 This patch does not require new test cases.
1566 * editing/qt/SmartReplaceQt.cpp:
1567 (WebCore::isCharacterSmartReplaceExempt):
1569 2011-04-06 Naoki Takano <takano.naoki@gmail.com>
1571 Reviewed by Ryosuke Niwa.
1573 REGRESSION(r81328): Null pointer crash in canAppendNewLineFeed when selection isn't inside an editable element
1574 https://bugs.webkit.org/show_bug.cgi?id=57755
1576 Test: editing/execCommand/insert-line-break-onload.html
1578 * editing/TypingCommand.cpp:
1579 (WebCore::canAppendNewLineFeed): Added null pointer check for rootEditableElement().
1581 2011-04-05 Antti Koivisto <antti@apple.com>
1583 Reviewed by Cameron Zwarich.
1585 Avoid calling currentTime() from FrameView::adjustedDeferredRepaintDelay() when repaints are deferred
1586 https://bugs.webkit.org/show_bug.cgi?id=57914
1588 Don't call adjustedDeferredRepaintDelay unnecessarily.
1590 * page/FrameView.cpp:
1591 (WebCore::FrameView::repaintContentRectangle):
1592 (WebCore::FrameView::adjustedDeferredRepaintDelay):
1594 2011-04-05 Steve VanDeBogart <vandebo@chromium.org>
1596 Reviewed by David Levin.
1598 Update call to SkAdvancedTypefaceMetrics to new API.
1599 https://bugs.webkit.org/show_bug.cgi?id=57887
1601 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1602 (WebCore::FontPlatformData::emSizeInFontUnits):
1604 2011-04-05 Alexey Proskuryakov <ap@apple.com>
1606 Reviewed by Darin Adler.
1608 Rename event dispatching functions after form event removal
1609 https://bugs.webkit.org/show_bug.cgi?id=57908
1611 * dom/InputElement.cpp:
1612 (WebCore::InputElement::setValueFromRenderer):
1614 (WebCore::Node::dispatchChangeEvent):
1615 (WebCore::Node::dispatchInputEvent):
1616 (WebCore::Node::defaultEventHandler):
1618 * html/HTMLFormControlElement.cpp:
1619 (WebCore::HTMLFormControlElement::dispatchFormControlChangeEvent):
1620 (WebCore::HTMLFormControlElement::dispatchFormControlInputEvent):
1621 (WebCore::HTMLTextFormControlElement::dispatchFormControlChangeEvent):
1622 Renamed "events" to "event", since there is only one event to dispatch now.
1624 2011-04-05 Anders Bakken <agbakken@gmail.com>
1626 Reviewed by David Levin.
1628 [Qt] DragControllerQt.cpp has coding-style errors
1629 https://bugs.webkit.org/show_bug.cgi?id=40258
1631 This patch does not require new test cases.
1633 * page/qt/DragControllerQt.cpp:
1634 (WebCore::DragController::dragOperation):
1636 2011-04-05 Steve VanDeBogart <vandebo@chromium.org>
1638 Reviewed by David Levin.
1640 Update deprecated include: platform_canvas_win.h to platform_canvas.h.
1641 https://bugs.webkit.org/show_bug.cgi?id=57896
1643 * platform/graphics/chromium/FontChromiumWin.cpp:
1645 2011-04-05 Darin Adler <darin@apple.com>
1647 Try to fix Leopard bots.
1649 * platform/mac/HTMLConverter.mm: Fix #if back the way Alexey seems
1650 to have intended it.
1652 2011-04-05 Darin Adler <darin@apple.com>
1654 Try to fix Leopard bots.
1656 * platform/mac/HTMLConverter.mm: Move declarations of new functions
1657 inside the appropriate #if.
1659 2011-04-05 Adrienne Walker <enne@google.com>
1661 Reviewed by Tony Chang.
1663 Correctly set color when using skia's fillRoundedRect.
1664 https://bugs.webkit.org/show_bug.cgi?id=57907
1666 * platform/graphics/skia/GraphicsContextSkia.cpp:
1667 (WebCore::GraphicsContext::fillRoundedRect):
1669 2011-04-05 Alexey Proskuryakov <ap@apple.com>
1671 Reviewed by Darin Adler.
1673 Move attributedStringFromRange down to WebCore
1674 https://bugs.webkit.org/show_bug.cgi?id=57905
1676 No change in behavior, so no new tests.
1678 Also tweaked HTMLConverter to not use methods defined in WebKit.
1681 * WebCore.xcodeproj/project.pbxproj:
1682 * platform/mac/HTMLConverter.h:
1683 * platform/mac/HTMLConverter.mm:
1684 (-[WebHTMLConverter _newTabForElement:]):
1685 (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
1686 (+[WebHTMLConverter editingAttributedStringFromRange:]):
1687 (fileWrapperForURL):
1688 (fileWrapperForElement):
1689 * platform/mac/PasteboardMac.mm:
1690 (WebCore::Pasteboard::writeSelection):
1691 * platform/mac/WebNSAttributedStringExtras.h: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.h.
1692 * platform/mac/WebNSAttributedStringExtras.mm: Copied from Source/WebKit/mac/Misc/WebNSAttributedStringExtras.mm.
1693 (WebCore::attributedStringByStrippingAttachmentCharacters):
1695 2011-04-05 Simon Fraser <simon.fraser@apple.com>
1697 Reviewed by Darin Adler.
1699 Rename variables in border drawing code for readability
1700 https://bugs.webkit.org/show_bug.cgi?id=57894
1702 * rendering/RenderObject.cpp:
1703 (WebCore::RenderObject::drawLineForBoxSide):
1704 (WebCore::RenderObject::drawBoxSideFromPath):
1705 (WebCore::RenderObject::drawArcForBoxSide):
1707 2011-04-05 Antti Koivisto <antti@apple.com>
1709 Reviewed by Darin Adler.
1711 Defer repaints during style recalc
1712 https://bugs.webkit.org/show_bug.cgi?id=57886
1714 This reduces the need to do (often expensive) platform surface invalidation.
1715 We already do this during layout but style recalculation may trigger
1716 invalidation as well.
1719 (WebCore::Document::recalcStyle):
1721 2011-04-05 Jer Noble <jer.noble@apple.com>
1723 Reviewed by Darin Adler.
1725 HTML5 Player Has no Fullscreen Mode
1726 https://bugs.webkit.org/show_bug.cgi?id=57795
1728 * html/HTMLVideoElement.cpp:
1729 (WebCore::HTMLVideoElement::supportsFullscreen): Call the new ChromeClient API
1730 supportsFullScreenForElement() before the old supportsFullScreenForNode() API.
1732 2011-04-05 Vsevolod Vlasov <vsevik@chromium.org>
1734 Reviewed by Pavel Feldman.
1736 Web Inspector: fix data url's status and timing the network panel.
1737 https://bugs.webkit.org/show_bug.cgi?id=53066
1739 Added data url support for status of network resources.
1741 * English.lproj/localizedStrings.js:
1742 * inspector/front-end/NetworkPanel.js:
1743 (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
1744 * inspector/front-end/Resource.js:
1745 (WebInspector.Resource.prototype.isDataURL):
1747 2011-04-04 Vitaly Repeshko <vitalyr@chromium.org>
1749 Reviewed by Adam Barth.
1751 [V8] Keep dirty primitive CSS values alive.
1752 https://bugs.webkit.org/show_bug.cgi?id=57810
1754 * bindings/v8/V8GCController.cpp:
1755 (WebCore::GrouperVisitor::visitDOMWrapper):
1757 2011-04-05 Simon Fraser <simon.fraser@apple.com>
1759 Reviewed by Adele Peterson.
1761 Add a fast path for simple color backgrounds
1762 https://bugs.webkit.org/show_bug.cgi?id=57773
1764 Add a fast path for drawing simple color backgrounds. It's
1765 faster to fill a path or rect than it is to set up a clip,
1766 and then paint the rect.
1768 No visible behavior change so no new tests.
1770 * rendering/RenderBoxModelObject.cpp:
1771 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1773 2011-04-05 Patrick Gansterer <paroga@webkit.org>
1775 Unreviewed EFL build fix for r82962.
1777 * CMakeListsEfl.txt:
1779 2011-04-05 Chris Rogers <crogers@google.com>
1781 Reviewed by Kenneth Russell.
1783 Add support for offline audio rendering to AudioContext API
1784 https://bugs.webkit.org/show_bug.cgi?id=57676
1786 No new tests since audio API is not yet implemented.
1788 * DerivedSources.make:
1790 * WebCore.xcodeproj/project.pbxproj:
1791 * bindings/js/JSAudioContextCustom.cpp:
1792 (WebCore::JSAudioContextConstructor::constructJSAudioContext):
1793 * bindings/js/JSEventCustom.cpp:
1795 * bindings/js/JSEventTarget.cpp:
1797 * bindings/v8/V8DOMWrapper.cpp:
1798 (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1799 * bindings/v8/custom/V8AudioContextCustom.cpp:
1800 (WebCore::V8AudioContext::constructorCallback):
1801 * bindings/v8/custom/V8EventCustom.cpp:
1804 (WebCore::Event::isOfflineAudioCompletionEvent):
1806 * dom/EventTarget.cpp:
1807 (WebCore::EventTarget::toAudioContext):
1808 * dom/EventTarget.h:
1809 * platform/audio/HRTFDatabaseLoader.cpp:
1810 (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
1811 * platform/audio/HRTFDatabaseLoader.h:
1812 (WebCore::HRTFDatabaseLoader::loader):
1813 * webaudio/AudioContext.cpp:
1814 (WebCore::AudioContext::createOfflineContext):
1815 (WebCore::AudioContext::AudioContext):
1816 (WebCore::AudioContext::constructCommon):
1817 (WebCore::AudioContext::document):
1818 (WebCore::AudioContext::scriptExecutionContext):
1819 (WebCore::AudioContext::toAudioContext):
1820 (WebCore::AudioContext::startRendering):
1821 (WebCore::AudioContext::fireCompletionEvent):
1822 * webaudio/AudioContext.h:
1823 (WebCore::AudioContext::isOfflineContext):
1824 (WebCore::AudioContext::eventTargetData):
1825 (WebCore::AudioContext::ensureEventTargetData):
1826 (WebCore::AudioContext::refEventTarget):
1827 (WebCore::AudioContext::derefEventTarget):
1828 * webaudio/AudioContext.idl:
1829 * webaudio/AudioDestinationNode.cpp:
1830 (WebCore::AudioDestinationNode::AudioDestinationNode):
1831 * webaudio/AudioDestinationNode.h:
1832 (WebCore::AudioDestinationNode::reset):
1833 (WebCore::AudioDestinationNode::numberOfChannels):
1834 * webaudio/ConvolverNode.cpp:
1835 (WebCore::ConvolverNode::setBuffer):
1836 * webaudio/DefaultAudioDestinationNode.cpp: Added.
1837 (WebCore::DefaultAudioDestinationNode::DefaultAudioDestinationNode):
1838 (WebCore::DefaultAudioDestinationNode::~DefaultAudioDestinationNode):
1839 (WebCore::DefaultAudioDestinationNode::initialize):
1840 (WebCore::DefaultAudioDestinationNode::uninitialize):
1841 (WebCore::DefaultAudioDestinationNode::startRendering):
1842 * webaudio/DefaultAudioDestinationNode.h: Added.
1843 (WebCore::DefaultAudioDestinationNode::create):
1844 (WebCore::DefaultAudioDestinationNode::sampleRate):
1845 * webaudio/OfflineAudioCompletionEvent.cpp: Added.
1846 (WebCore::OfflineAudioCompletionEvent::create):
1847 (WebCore::OfflineAudioCompletionEvent::OfflineAudioCompletionEvent):
1848 (WebCore::OfflineAudioCompletionEvent::~OfflineAudioCompletionEvent):
1849 (WebCore::OfflineAudioCompletionEvent::isOfflineAudioCompletionEvent):
1850 * webaudio/OfflineAudioCompletionEvent.h: Added.
1851 (WebCore::OfflineAudioCompletionEvent::renderedBuffer):
1852 * webaudio/OfflineAudioCompletionEvent.idl: Added.
1853 * webaudio/OfflineAudioDestinationNode.cpp: Added.
1854 (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
1855 (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
1856 (WebCore::OfflineAudioDestinationNode::initialize):
1857 (WebCore::OfflineAudioDestinationNode::uninitialize):
1858 (WebCore::OfflineAudioDestinationNode::startRendering):
1859 (WebCore::OfflineAudioDestinationNode::renderEntry):
1860 (WebCore::OfflineAudioDestinationNode::render):
1861 (WebCore::OfflineAudioDestinationNode::notifyCompleteDispatch):
1862 (WebCore::OfflineAudioDestinationNode::notifyComplete):
1863 * webaudio/OfflineAudioDestinationNode.h: Added.
1864 (WebCore::OfflineAudioDestinationNode::create):
1865 (WebCore::OfflineAudioDestinationNode::sampleRate):
1867 2011-04-05 Martin Robinson <mrobinson@igalia.com>
1869 Reviewed by Eric Seidel.
1871 [Cairo] Better separate the concerns of GraphicsContextCairo
1872 https://bugs.webkit.org/show_bug.cgi?id=55150
1874 Add a PlatformContextCairo which right now stores the cairo_t* for a
1875 GraphicsContextCairo. Later patches will move logic for tracking ContextShadow
1876 and image masking layers into this PlatformContextCairo class.
1878 No new tests. This patch is only a code cleanup.
1881 * platform/graphics/GraphicsContext.h: The platform context is no longer a
1882 cairo_t, but our new class the PlatformContextCairo.
1883 * platform/graphics/cairo/ContextShadowCairo.cpp: Updated to reflect new class.j
1884 * platform/graphics/cairo/FontCairo.cpp: Ditto.
1885 * platform/graphics/cairo/GradientCairo.cpp: Ditto.
1886 * platform/graphics/cairo/GraphicsContextCairo.cpp: Mostly mechanical
1887 changes which now reference platformContext()->cr() to get the cairo_t.
1888 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Now hold the
1889 PlatformContextCairo instead of the cairo_t.
1890 * platform/graphics/cairo/ImageBufferCairo.cpp: Update to reflect new class.
1891 * platform/graphics/cairo/ImageCairo.cpp: Ditto.
1892 * platform/graphics/cairo/PathCairo.cpp: Ditto.
1893 * platform/graphics/cairo/PlatformContextCairo.cpp: Added.
1894 * platform/graphics/cairo/PlatformContextCairo.h: Added.
1895 * platform/graphics/gtk/FontGtk.cpp: Update to reflect new class.
1896 * platform/graphics/gtk/IconGtk.cpp: Ditto.
1897 * platform/graphics/win/GraphicsContextCairoWin.cpp: Now fill out
1898 m_data with a private section containing the platform context instead of
1900 * platform/gtk/RenderThemeGtk.cpp: Update to reflect new class.
1901 * platform/gtk/WidgetRenderingContext.cpp: Ditto.
1902 (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Ditto.
1903 * plugins/gtk/PluginViewGtk.cpp: Ditto.
1905 2011-04-05 David Dorwin <ddorwin@chromium.org>
1907 Reviewed by David Levin.
1909 Fullscreen code assumes all layers use GPU compositing when USE(ACCELERATED_COMPOSITING)
1910 https://bugs.webkit.org/show_bug.cgi?id=57400
1912 Check whether the full screen renderer layer is being composited by the GPU before assuming that the backing is valid.
1913 Accelerated compositing may be compiled in but disabled at runtime or for some elements.
1915 Tests: Fullscreen layout tests on Chromium.
1918 (WebCore::Document::webkitWillEnterFullScreenForElement):
1919 (WebCore::Document::webkitDidEnterFullScreenForElement):
1920 (WebCore::Document::webkitWillExitFullScreenForElement):
1922 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
1924 Reviewed by Dirk Schulze.
1926 Regression: Invalid write in SVGTextLayoutEngine
1927 https://bugs.webkit.org/show_bug.cgi?id=57721
1929 Properly stop layout if all metrics object refer to zero-width/height characters,
1930 which can happen for instance when using <text font-size="0">.
1932 Test: svg/text/font-size-null-assertion.svg
1934 * rendering/svg/SVGTextLayoutEngine.cpp:
1935 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
1936 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
1938 2011-04-04 MORITA Hajime <morrita@google.com>
1940 Reviewed by Ryosuke Niwa.
1942 [Refactoring] SpellCheckingResult should be replaced with TextCheckingResult
1943 https://bugs.webkit.org/show_bug.cgi?id=56085
1945 Removed WebCore::SpellCheckingResult and replaced it with TextCheckingResult.
1946 This change also added TextCheckerClient::requestCheckingOfString() should have
1947 TextCheckingTypeMask as a parameter to control text checking type.
1950 * editing/Editor.cpp:
1951 (WebCore::Editor::replaceSelectionWithFragment):
1952 (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1953 (WebCore::Editor::textCheckingTypeMaskFor): Extracted from markAllMisspellingsAndBadGrammarInRanges()
1954 * editing/SpellChecker.cpp:
1955 (WebCore::SpellChecker::requestCheckingFor): Added a parameter.
1956 (WebCore::SpellChecker::markAt): Extracted from didCheck(), Added a check for the GrammarDetail object.
1957 (WebCore::SpellChecker::didCheck):
1958 * editing/SpellChecker.h:
1959 * loader/EmptyClients.h:
1960 (WebCore::EmptyTextCheckerClient::checkTextOfParagraph):
1961 (WebCore::EmptyTextCheckerClient::requestCheckingOfString):
1962 * platform/text/TextCheckerClient.h:
1964 2011-04-04 Antti Koivisto <antti@apple.com>
1966 Reviewed by Sam Weinig.
1968 Print stylesheet on nytimes.com loads too early
1969 https://bugs.webkit.org/show_bug.cgi?id=57814
1971 Don't load resources with Very Low priority until there are no other resources to
1972 load for the host (or until document is complete enough that we stop limiting requests).
1974 No tests, this is difficult to observe reliably with our current testing infrastructure.
1975 Verified working with Wireshark.
1977 * loader/ResourceLoadScheduler.cpp:
1978 (WebCore::ResourceLoadScheduler::servePendingRequests):
1979 (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
1980 * loader/ResourceLoadScheduler.h:
1982 2011-04-04 Steve Block <steveblock@google.com>
1984 Reviewed by Dimitri Glazkov.
1986 JavaInstance should be a pure interface
1987 https://bugs.webkit.org/show_bug.cgi?id=55383
1989 This patch fixes JavaInstance for V8 only.
1991 It factors out a JavaInstance interface which does not use JNI
1992 types. This will allow the Java bridge to be used with objects
1993 that don't use JNI directly. The existing jobject-backed
1994 implementation is moved to a new JavaInstanceJobject class which
1995 implements the interface.
1997 No new tests, refactoring only.
1999 * Android.v8bindings.mk:
2001 * bridge/jni/JobjectWrapper.h:
2002 * bridge/jni/v8/JNIUtilityPrivate.cpp:
2003 (JSC::Bindings::jvalueToJavaValue):
2004 (JSC::Bindings::javaValueToJvalue):
2005 * bridge/jni/v8/JavaInstanceJobjectV8.cpp:
2006 (JavaInstanceJobject::JavaInstanceJobject):
2007 (JavaInstanceJobject::~JavaInstanceJobject):
2008 (JavaInstanceJobject::begin):
2009 (JavaInstanceJobject::end):
2010 (JavaInstanceJobject::getClass):
2011 (JavaInstanceJobject::invokeMethod):
2012 (JavaInstanceJobject::getField):
2013 * bridge/jni/v8/JavaInstanceJobjectV8.h: Copied from Source/WebCore/bridge/jni/v8/JavaInstanceV8.h.
2014 (JSC::Bindings::JavaInstanceJobject::javaInstance):
2015 * bridge/jni/v8/JavaInstanceV8.h:
2016 (JSC::Bindings::JavaInstance::~JavaInstance):
2018 2011-04-05 Dimitri Glazkov <dglazkov@chromium.org>
2020 Reviewed by Darin Adler.
2022 Move MouseEvent-dispatching logic into MouseEventDispatchMediator.
2023 https://bugs.webkit.org/show_bug.cgi?id=57639
2025 Refactoring, covered by existing tests.
2027 * dom/EventDispatcher.cpp:
2028 (WebCore::EventDispatcher::dispatchEvent): Moved useful assertion here
2029 from dispatchMouseEvent.
2030 (WebCore::EventDispatcher::adjustRelatedTarget): Converted into a method.
2031 * dom/EventDispatcher.h: Adjusted decls.
2032 (WebCore::EventDispatcher::node): Added.
2033 * dom/MouseEvent.cpp:
2034 (WebCore::MouseEvent::create): Moved useful assertion here from
2036 (WebCore::MouseEventDispatchMediator::MouseEventDispatchMediator): Added.
2037 (WebCore::MouseEventDispatchMediator::event): Added.
2038 (WebCore::MouseEventDispatchMediator::dispatchEvent): Added.
2040 (WebCore::MouseEvent::setRelatedTarget): Added.
2042 (WebCore::Node::dispatchMouseEvent): Changed to use MouseEventDispatchMediator.
2044 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2046 Reviewed by Adam Roben & Dirk Schulze.
2048 text-tspan-02-b.svg from SVG 1.1 2nd edition fails
2049 https://bugs.webkit.org/show_bug.cgi?id=57831
2051 We were not spanning rotation values correcty accross text children, which resulted in text-span-02-b.svg misrendering.
2052 While rewriting the rotation specific code, it came apparent that the LayoutScope concept is flawed in general and
2053 should be replaced by a global list of x/y/dx/dy/rotate values for the whole text subtree. This makes it much simpler
2054 to implement the demand that the last rotation value spans the whole scope. A follow-up patch will optimize the
2058 <text rotate="10,20,999,50">AB<tspan rotate="30">CDE</>FGH</text>
2060 text: A B C D E F G H
2061 rotate="10 20 30 30 30 50 50 50"
2063 Tests: svg/W3C-SVG-1.1-SE/text-tspan-02-b.svg
2064 svg/text/text-midpoint-split-bug.svg
2066 * 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
2067 (WebCore::RenderBlock::findNextLineBreak): inconsistent state. We were intereferring with the ignoreSpaces code resulting in wrong truncations - covered by new testcase.
2068 * rendering/svg/SVGTextLayoutAttributes.cpp:
2069 (WebCore::SVGTextLayoutAttributes::reserveCapacity): Also reserveCapacity for the text metrics list (minor optimization).
2070 (WebCore::SVGTextLayoutAttributes::fillWithEmptyValue): Added helper function for use from SVGTextLayoutAttributesBuilder.
2071 (WebCore::SVGTextLayoutAttributes::appendEmptyValue): Ditto.
2072 (WebCore::safeValueAtPosition): Ditto. (Inline helper)
2073 (WebCore::SVGTextLayoutAttributes::appendSingleValueFromAttribute): Ditto.
2074 * rendering/svg/SVGTextLayoutAttributes.h: Ditto.
2075 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: Rewrite code, see explaination above.
2076 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextSubtree):
2077 (WebCore::processRenderSVGInlineText):
2078 (WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
2079 (WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForAllCharacters):
2080 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
2081 (WebCore::fillListAtPosition):
2082 (WebCore::SVGTextLayoutAttributesBuilder::fillAttributesAtPosition):
2083 * rendering/svg/SVGTextLayoutAttributesBuilder.h:
2084 (WebCore::SVGTextLayoutAttributesBuilder::TextPosition::TextPosition):
2086 2011-04-05 Levi Weintraub <leviw@chromium.org>
2088 Reviewed by Ryosuke Niwa.
2090 DeleteButtonController is given invalid style
2091 https://bugs.webkit.org/show_bug.cgi?id=57853
2093 DeleteButtonController was assigned an invalid style that can lead to assertions
2094 in debug builds. This matches up the code with its intent.
2096 No new tests as this changes nothing on release builds.
2098 * editing/DeleteButtonController.cpp:
2099 (WebCore::DeleteButtonController::createDeletionUI):
2101 2011-04-05 Anders Bakken <agbakken@gmail.com>
2103 Reviewed by Laszlo Gombos.
2105 [Qt] EditorQt.cpp has coding-style errors
2106 https://bugs.webkit.org/show_bug.cgi?id=40260
2108 This patch does not require new test cases.
2110 * editing/qt/EditorQt.cpp:
2112 2011-04-05 Pavel Podivilov <podivilov@chromium.org>
2114 Reviewed by Pavel Feldman.
2116 Web Inspector: go to line dialog highlights wrong line.
2117 https://bugs.webkit.org/show_bug.cgi?id=57845
2119 * inspector/front-end/GoToLineDialog.js:
2120 (WebInspector.GoToLineDialog.prototype._highlightSelectedLine):
2122 2011-04-05 Luke Macpherson <macpherson@chromium.org>
2124 Reviewed by Dimitri Glazkov.
2126 Implement CSSPropertyDirection in CSSStyleApplyProperty
2127 https://bugs.webkit.org/show_bug.cgi?id=57608
2129 No new tests required as no new functionality introduced.
2131 * css/CSSStyleApplyProperty.cpp:
2132 Add implementation class for CSSPropertyDirection
2133 * css/CSSStyleSelector.cpp:
2134 Remove existing implementation for CSSPropertyDirection
2135 * css/CSSStyleSelector.h:
2136 Add getter for element
2138 2011-04-05 Leandro Gracia Gil <leandrogracia@chromium.org>
2140 Reviewed by Steve Block.
2142 Factoring the creation of 'FunctionOnly' callbacks in V8.
2143 https://bugs.webkit.org/show_bug.cgi?id=57760
2145 This method creates a template from an existing functionality in V8GeolocationCustom.cpp
2146 to V8Utilities to be used by the custom bindings of both Geolocation and the Media Stream API.
2148 No new tests. LayoutTests/fast/dom/Geolocation/argument-types.html
2150 * bindings/v8/V8Utilities.cpp:
2151 (WebCore::throwTypeMismatchException):
2152 * bindings/v8/V8Utilities.h:
2153 (WebCore::createFunctionOnlyCallback):
2154 * bindings/v8/custom/V8GeolocationCustom.cpp:
2155 (WebCore::V8Geolocation::getCurrentPositionCallback):
2156 (WebCore::V8Geolocation::watchPositionCallback):
2158 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2160 Reviewed by Andreas Kling.
2162 Switch from Vector<UChar> to StringBuilder in bindings/
2163 https://bugs.webkit.org/show_bug.cgi?id=57838
2165 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2166 (WebCore::cssPropertyName):
2167 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2168 (WebCore::cssPropertyInfo):
2170 2011-04-05 Nikolas Zimmermann <nzimmermann@rim.com>
2172 Reviewed by Andreas Kling.
2174 Switch from Vector<UChar> to StringBuilder in accessibility/
2175 https://bugs.webkit.org/show_bug.cgi?id=57837
2177 * accessibility/AccessibilityObject.cpp:
2178 (WebCore::AccessibilityObject::listMarkerTextForNodeAndPosition):
2179 (WebCore::AccessibilityObject::stringForVisiblePositionRange):
2180 * accessibility/AccessibilityRenderObject.cpp:
2181 (WebCore::AccessibilityRenderObject::accessibilityDescriptionForElements):
2183 2011-04-05 Andrey Adaikin <aandrey@google.com>
2185 Reviewed by Pavel Feldman.
2187 Web Inspector: Scripts with syntax errors are cropped in the UI
2188 https://bugs.webkit.org/show_bug.cgi?id=57828
2190 * inspector/front-end/SourceFrame.js:
2191 (WebInspector.SourceFrame.prototype.addMessageToSource):
2193 2011-04-05 Alexey Proskuryakov <ap@apple.com>
2195 Reviewed by Darin Adler.
2197 Remove onformchange and onforminput events/event handlers
2198 https://bugs.webkit.org/show_bug.cgi?id=55755
2199 <rdar://problem/9087969>
2201 Covered by existing tests.
2208 (WebCore::Event::fromUserGesture):
2210 * html/FormAssociatedElement.h:
2211 * html/HTMLAttributeNames.in:
2212 * html/HTMLElement.cpp:
2213 (WebCore::HTMLElement::parseMappedAttribute):
2214 * html/HTMLElement.h:
2215 * html/HTMLFormControlElement.h:
2216 (WebCore::HTMLFormControlElement::isEnumeratable):
2217 * html/HTMLFormElement.cpp:
2218 * html/HTMLFormElement.h:
2219 * html/HTMLFormElement.idl:
2220 * html/HTMLInputElement.h:
2221 * html/HTMLKeygenElement.h:
2222 * html/HTMLObjectElement.h:
2223 (WebCore::HTMLObjectElement::isEnumeratable):
2224 * html/HTMLOutputElement.h:
2225 (WebCore::HTMLOutputElement::isEnumeratable):
2226 * html/HTMLSelectElement.h:
2227 (WebCore::HTMLSelectElement::isEnumeratable):
2228 * html/HTMLTextAreaElement.h:
2229 (WebCore::HTMLTextAreaElement::isEnumeratable):
2231 * page/DOMWindow.idl:
2233 2011-04-05 Sheriff Bot <webkit.review.bot@gmail.com>
2235 Unreviewed, rolling out r82915.
2236 http://trac.webkit.org/changeset/82915
2237 https://bugs.webkit.org/show_bug.cgi?id=57825
2239 Broke 270 chromium tests on win and linux (Requested by
2240 podivilov on #webkit).
2242 * rendering/RenderThemeChromiumSkia.cpp:
2243 (WebCore::RenderThemeChromiumSkia::defaultGUIFont):
2245 2011-04-05 James Simonsen <simonjam@chromium.org>
2247 Reviewed by Adam Barth.
2249 Stop preload scanning CSS when it's impossible to have another @import.
2250 https://bugs.webkit.org/show_bug.cgi?id=57664
2252 @import statements are only allowed at the beginning of a CSS file.
2253 Only comments or @charset can precede them. After seeing anything else,
2254 abort early so that we:
2255 - don't have to parse the rest of the CSS.
2256 - don't preload something that the regular parser won't load.
2258 * html/parser/CSSPreloadScanner.cpp:
2259 (WebCore::CSSPreloadScanner::scan): Terminate early if we're done with @imports.
2260 (WebCore::CSSPreloadScanner::tokenize): Terminate early if we see a {} or any style rule.
2261 (WebCore::CSSPreloadScanner::emitRule): Only @charset or @import are allowed to precede @import.
2262 * html/parser/CSSPreloadScanner.h: Add DoneParsingImportRules state.
2264 2011-04-05 Takayoshi Kochi <kochi@chromium.org>
2266 Reviewed by Tony Chang.
2268 [chromium] Specify 'sans-serif' as a fallback to the default UI font
2269 'Arial' for non-latin UI scripts (e.g. CJK).
2270 https://bugs.webkit.org/show_bug.cgi?id=55035
2272 No new tests, because it may still fail if the system is not configured
2273 properly to resolve 'sans-serif' to existing real font file, thus even
2274 manual test is hard to systematically tell it is working properly.
2276 * rendering/RenderThemeChromiumSkia.cpp
2278 2011-04-05 Kent Tamura <tkent@chromium.org>
2280 Reviewed by Dimitri Glazkov.
2282 Setting defaultValue on a textarea with a modified value still clobbers the value
2283 https://bugs.webkit.org/show_bug.cgi?id=57636
2285 If the dirty flag is true, we shouldn't update the value when the
2286 defaultValue is updated
2288 Test: fast/forms/textarea-set-defaultvalue-after-value.html
2290 * html/HTMLTextAreaElement.cpp:
2291 (WebCore::HTMLTextAreaElement::childrenChanged):
2292 (WebCore::HTMLTextAreaElement::setDefaultValue):
2294 2011-04-04 Kent Tamura <tkent@chromium.org>
2296 Add a case label which was unexpectedly removed in r82899.
2297 https://bugs.webkit.org/show_bug.cgi?id=50661
2299 * css/CSSSelector.cpp:
2300 (WebCore::CSSSelector::extractPseudoType):
2302 2011-04-04 Dan Bernstein <mitz@apple.com>
2304 Reviewed by Simon Fraser.
2306 <rdar://problem/7709452> Implement Default Ruby Overhang Behavior
2307 https://bugs.webkit.org/show_bug.cgi?id=49334
2309 Tests: fast/ruby/overhang-horizontal.html
2310 fast/ruby/overhang-vertical.html
2312 This is a first cut at ruby overhang. It allows ruby text to hang over other
2313 text of equal or smaller size. Two notable omissions are that max preferred
2314 width computation was not patched, so it will overshoot, and that overhang
2315 ignores the width of the adjoining text runs.
2317 * rendering/RenderBlock.h:
2318 * rendering/RenderBlockLineLayout.cpp:
2319 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Adjust margins
2320 of ruby runs for overhang.
2321 (WebCore::RenderBlock::fitBelowFloats): Maintain the increase in line width to
2322 compensate for overhang.
2323 (WebCore::RenderBlock::findNextLineBreak): When encountering
2324 a ruby run, increase the line width to account for the fact that overhang will be
2326 * rendering/RenderRubyRun.cpp:
2327 (WebCore::RenderRubyRun::getOverhang): Added. Allows ruby to overhang if
2328 the adjoining renderer is text with equal or smaller font size.
2329 * rendering/RenderRubyRun.h:
2330 (WebCore::toRenderRubyRun):
2332 2011-04-04 David Kilzer <ddkilzer@apple.com>
2334 <http://webkit.org/b/57384> CFNetwork and WebCore load priorities should match
2336 Reviewed by Alexey Proskuryakov.
2338 * WebCore.exp.in: Export wkSetHTTPPipeliningMaximumPriority().
2339 * platform/mac/WebCoreSystemInterface.h:
2340 (wkSetHTTPPipeliningMaximumPriority): Added function pointer
2342 * platform/mac/WebCoreSystemInterface.mm:
2343 (wkSetHTTPPipeliningMaximumPriority): Added function pointer.
2344 * platform/network/cf/ResourceRequestCFNet.cpp:
2345 (WebCore::initializeMaximumHTTPConnectionCountPerHost): Call
2346 wkSetHTTPPipeliningMaximumPriority() to set the maximum HTTP
2347 pipelining priority.
2348 * platform/network/cf/ResourceRequestCFNet.h:
2349 (WebCore::toResourceLoadPriority): Renamed from
2350 mapHTTPPipeliningPriorityToResourceLoadPriority(). Updated to
2351 to handle Unresolved case.
2352 (WebCore::toHTTPPipeliningPriority): Renamed from
2353 mapResourceLoadPriorityToHTTPPipeliningPriority(). Updated to
2354 handle Unresolved case.
2355 * platform/network/mac/ResourceRequestMac.mm:
2356 (WebCore::ResourceRequest::doUpdateResourceRequest): Switched to
2357 use toResourceLoadPriority().
2358 (WebCore::ResourceRequest::doUpdatePlatformRequest): Switched to
2359 use toHTTPPipeliningPriority(). Moved
2360 shouldForceHTTPPipeliningPriorityHigh() check into the argument
2361 of toHTTPPipeliningPriority() instead of hard-coding a
2362 now-incorrect value.
2364 2011-04-04 MORITA Hajime <morrita@google.com>
2366 Reviewed by Kent Tamura.
2368 Convert <meter> shadow DOM to a DOM-based shadow.
2369 https://bugs.webkit.org/show_bug.cgi?id=50661
2371 Eliminated a large part of <meter> custom layout code,
2372 which is replaced by a shadow tree.
2373 Note that the shadow tree is created on construction time and
2374 will remain during the host HTMLMeterElement lifecycle.
2381 * WebCore.vcproj/WebCore.vcproj:
2382 * WebCore.xcodeproj/project.pbxproj:
2383 * css/CSSMutableStyleDeclaration.cpp:
2384 (WebCore::CSSMutableStyleDeclaration::setProperty):
2385 * css/CSSMutableStyleDeclaration.h:
2386 * css/CSSSelector.cpp:
2387 (WebCore::CSSSelector::pseudoId):
2388 (WebCore::nameToPseudoTypeMap):
2389 (WebCore::CSSSelector::extractPseudoType):
2390 * css/CSSSelector.h:
2393 (meter::-webkit-meter-bar):
2394 (meter::-webkit-meter-optimum-value):
2395 (meter::-webkit-meter-suboptimum-value):
2396 (meter::-webkit-meter-even-less-good-value):
2397 * html/HTMLMeterElement.cpp:
2398 (WebCore::HTMLMeterElement::~HTMLMeterElement):
2399 (WebCore::HTMLMeterElement::parseMappedAttribute):
2400 (WebCore::HTMLMeterElement::attach):
2401 (WebCore::HTMLMeterElement::valueRatio):
2402 (WebCore::HTMLMeterElement::didElementStateChange):
2403 (WebCore::HTMLMeterElement::createShadowSubtree):
2404 * html/HTMLMeterElement.h:
2405 * html/shadow/MeterShadowElement.cpp: Added.
2406 (WebCore::MeterShadowElement::MeterShadowElement):
2407 (WebCore::MeterShadowElement::meterElement):
2408 (WebCore::MeterShadowElement::rendererIsNeeded):
2409 (WebCore::MeterBarElement::shadowPseudoId):
2410 (WebCore::MeterValueElement::shadowPseudoId):
2411 (WebCore::MeterValueElement::setWidthPercentage):
2412 * html/shadow/MeterShadowElement.h: Added.
2413 (WebCore::MeterBarElement::MeterBarElement):
2414 (WebCore::MeterBarElement::create):
2415 (WebCore::MeterValueElement::MeterValueElement):
2416 (WebCore::MeterValueElement::create):
2417 * rendering/RenderMeter.cpp:
2418 (WebCore::RenderMeter::RenderMeter):
2419 (WebCore::RenderMeter::~RenderMeter):
2420 (WebCore::RenderMeter::valueRatio):
2421 * rendering/RenderMeter.h:
2422 (WebCore::RenderMeter::renderName):
2423 (WebCore::RenderMeter::isMeter):
2424 (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
2425 (WebCore::RenderMeter::canHaveChildren):
2427 2011-04-04 Dimitri Glazkov <dglazkov@chromium.org>
2429 Reviewed by Adam Barth.
2431 Introduce EventDispatchMediator abstraction, which encapsulate all
2432 non-trivial logic around firing a specific type of an event.
2433 https://bugs.webkit.org/show_bug.cgi?id=57562
2435 Refactoring, covered by existing tests.
2438 (WebCore::EventDispatchMediator::EventDispatchMediator): Added.
2439 (WebCore::EventDispatchMediator::~EventDispatchMediator): Added.
2440 (WebCore::EventDispatchMediator::dispatchEvent): Added.
2441 (WebCore::EventDispatchMediator::event): Added.
2442 * dom/Event.h: Added decl.
2443 * dom/EventDispatcher.cpp:
2444 (WebCore::EventDispatcher::dispatchEvent): Changed to use EventDispatchMediator.
2445 * dom/EventDispatcher.h: Updated decls.
2446 * dom/KeyboardEvent.cpp:
2447 (WebCore::KeyboardEventDispatchMediator::KeyboardEventDispatchMediator): Added.
2448 (WebCore::KeyboardEventDispatchMediator::dispatchEvent): Added.
2449 * dom/KeyboardEvent.h: Updated decls
2451 (WebCore::Node::dispatchEvent): Changed to use EventDispatchMediator.
2452 (WebCore::Node::dispatchKeyEvent): Changed to use KeyboardEventDispatchMediator.
2454 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2456 Reviewed by Xan Lopez.
2458 [Cairo] Memory leak in RefPtrCairo
2459 https://bugs.webkit.org/show_bug.cgi?id=57758
2461 No new tests. This just fixes a memory leak.
2463 * platform/graphics/cairo/RefPtrCairo.cpp:
2464 (WTF::derefIfNotNull): Deref should unref the cairo_font_fact_t, not reference it.
2466 2011-04-04 Adrienne Walker <enne@google.com>
2468 Unreviewed, rolling out r82880.
2469 http://trac.webkit.org/changeset/82880
2470 https://bugs.webkit.org/show_bug.cgi?id=50661
2472 Meter elements not rendered in Chromium Linux layout tests
2479 * WebCore.vcproj/WebCore.vcproj:
2480 * WebCore.xcodeproj/project.pbxproj:
2481 * css/CSSMutableStyleDeclaration.cpp:
2482 * css/CSSMutableStyleDeclaration.h:
2483 * css/CSSSelector.cpp:
2484 (WebCore::CSSSelector::pseudoId):
2485 (WebCore::nameToPseudoTypeMap):
2486 (WebCore::CSSSelector::extractPseudoType):
2487 * css/CSSSelector.h:
2490 (meter::-webkit-meter):
2491 (meter::-webkit-meter-bar):
2492 (meter::-webkit-meter-optimum-value):
2493 (meter::-webkit-meter-suboptimal-value):
2494 (meter::-webkit-meter-even-less-good-value):
2495 * html/HTMLMeterElement.cpp:
2496 (WebCore::HTMLMeterElement::create):
2497 (WebCore::HTMLMeterElement::parseMappedAttribute):
2498 (WebCore::HTMLMeterElement::attach):
2499 * html/HTMLMeterElement.h:
2500 * html/shadow/MeterShadowElement.cpp: Removed.
2501 * html/shadow/MeterShadowElement.h: Removed.
2502 * rendering/RenderMeter.cpp:
2503 (WebCore::RenderMeter::RenderMeter):
2504 (WebCore::RenderMeter::~RenderMeter):
2505 (WebCore::RenderMeter::createPart):
2506 (WebCore::RenderMeter::updateFromElement):
2507 (WebCore::RenderMeter::layoutParts):
2508 (WebCore::RenderMeter::styleDidChange):
2509 (WebCore::RenderMeter::shouldHaveParts):
2510 (WebCore::RenderMeter::valueRatio):
2511 (WebCore::RenderMeter::barPartRect):
2512 (WebCore::RenderMeter::valuePartRect):
2513 (WebCore::RenderMeter::valuePseudoId):
2514 (WebCore::RenderMeter::barPseudoId):
2515 (WebCore::RenderMeter::detachShadows):
2516 (WebCore::RenderMeter::updateShadows):
2517 * rendering/RenderMeter.h:
2518 (WebCore::RenderMeter::renderName):
2519 (WebCore::RenderMeter::isMeter):
2520 (WebCore::RenderMeter::shadowAttached):
2522 2011-04-04 Chang Shu <cshu@webkit.org>
2524 Reviewed by Ryosuke Niwa.
2526 setContentEditable with true/false/inherit string is not working properly
2527 https://bugs.webkit.org/show_bug.cgi?id=52058
2529 Move isContentEditable from HTMLElement to Node. Thus, Node provides two functions for
2530 checking editability: rendererIsEditable and isContentEdiable. The former is a fast path,
2531 which does NOT trigger layout and only checks the render style of usermodify. The latter
2532 updates the layout first to make sure the render style syncs with DOM contenteditable
2533 attribute. Certain call sites that need to call isContentEditable rather than rendererIsEditable
2534 are also updated in the patch. But a complete fix will follow up in bug 57244.
2536 This patch fixes all the failed layout tests related to set contenteditable.
2538 * accessibility/AccessibilityRenderObject.cpp:
2539 (WebCore::AccessibilityRenderObject::isReadOnly):
2541 (WebCore::Node::isContentEditable):
2542 (WebCore::Node::shouldUseInputMethod):
2544 * html/HTMLElement.cpp:
2545 * html/HTMLElement.h:
2547 2011-04-04 Roland Steiner <rolandsteiner@chromium.org>
2549 Reviewed by Dimitri Glazkov.
2551 Bug 57689 - Extract scoping functionality from Document
2552 https://bugs.webkit.org/show_bug.cgi?id=57689
2554 Moved selfOnlyRef (renamed to guardRef), element ID, image map
2555 and accesss key functionalities from Document to a new base
2558 TreeShared: made removedLastRef protected
2560 No new tests. (refactoring)
2567 * WebCore.vcproj/WebCore.vcproj:
2568 * WebCore.xcodeproj/project.pbxproj:
2570 (WebCore::Document::Document):
2571 (WebCore::Document::destroyScope):
2572 (WebCore::Document::getElementById):
2573 (WebCore::Document::childrenChanged):
2574 (WebCore::Document::scheduleStyleRecalc):
2575 (WebCore::Document::attach):
2576 (WebCore::Document::detach):
2578 (WebCore::Node::Node):
2579 * dom/DocumentOrderedMap.cpp:
2580 (WebCore::DocumentOrderedMap::get):
2581 (WebCore::DocumentOrderedMap::getElementById):
2582 (WebCore::DocumentOrderedMap::getElementByMapName):
2583 (WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
2584 * dom/DocumentOrderedMap.h:
2585 * dom/DOMAllInOne.cpp:
2587 (WebCore::Node::~Node):
2588 (WebCore::Node::setDocument):
2590 * dom/TreeScope.cpp: Added.
2591 * dom/TreeScope.h: Added.
2592 * platform/TreeShared.h:
2593 (WebCore::TreeShared::removedLastRef): made protected
2595 2011-04-04 MORITA Hajime <morrita@google.com>
2597 Reviewed by Dimitri Glazkov.
2599 Convert <meter> shadow DOM to a DOM-based shadow.
2600 https://bugs.webkit.org/show_bug.cgi?id=50661
2602 Eliminated a large part of <meter> custom layout code,
2603 which is replaced by a shadow tree.
2604 Note that the shadow tree is created on construction time and
2605 will remain during the host HTMLMeterElement lifecycle.
2612 * WebCore.vcproj/WebCore.vcproj:
2613 * WebCore.xcodeproj/project.pbxproj:
2614 * css/CSSMutableStyleDeclaration.cpp:
2615 (WebCore::CSSMutableStyleDeclaration::setProperty):
2616 * css/CSSMutableStyleDeclaration.h:
2617 * css/CSSSelector.cpp:
2618 (WebCore::CSSSelector::pseudoId):
2619 (WebCore::nameToPseudoTypeMap):
2620 (WebCore::CSSSelector::extractPseudoType):
2621 * css/CSSSelector.h:
2624 (meter::-webkit-meter-bar):
2625 (meter::-webkit-meter-optimum-value):
2626 (meter::-webkit-meter-suboptimum-value):
2627 (meter::-webkit-meter-even-less-good-value):
2628 * html/HTMLMeterElement.cpp:
2629 (WebCore::HTMLMeterElement::~HTMLMeterElement):
2630 (WebCore::HTMLMeterElement::parseMappedAttribute):
2631 (WebCore::HTMLMeterElement::attach):
2632 (WebCore::HTMLMeterElement::valueRatio):
2633 (WebCore::HTMLMeterElement::didElementStateChange):
2634 (WebCore::HTMLMeterElement::createShadowSubtree):
2635 * html/HTMLMeterElement.h:
2636 * html/shadow/MeterShadowElement.cpp: Added.
2637 (WebCore::MeterShadowElement::MeterShadowElement):
2638 (WebCore::MeterShadowElement::meterElement):
2639 (WebCore::MeterShadowElement::rendererIsNeeded):
2640 (WebCore::MeterBarElement::shadowPseudoId):
2641 (WebCore::MeterValueElement::shadowPseudoId):
2642 (WebCore::MeterValueElement::setWidthPercentage):
2643 * html/shadow/MeterShadowElement.h: Added.
2644 (WebCore::MeterBarElement::MeterBarElement):
2645 (WebCore::MeterBarElement::create):
2646 (WebCore::MeterValueElement::MeterValueElement):
2647 (WebCore::MeterValueElement::create):
2648 * rendering/RenderMeter.cpp:
2649 (WebCore::RenderMeter::RenderMeter):
2650 (WebCore::RenderMeter::~RenderMeter):
2651 (WebCore::RenderMeter::valueRatio):
2652 * rendering/RenderMeter.h:
2653 (WebCore::RenderMeter::renderName):
2654 (WebCore::RenderMeter::isMeter):
2655 (WebCore::RenderMeter::requiresForcedStyleRecalcPropagation):
2656 (WebCore::RenderMeter::canHaveChildren):
2658 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2660 Reviewed by Gustavo Noronha Silva.
2663 https://bugs.webkit.org/show_bug.cgi?id=31517
2665 Add WebGL support for the GTK+ bits of WebCore.
2667 No new tests. This will be covered by the existing WebGL tests once
2668 the bots are capable of running WebGL tests.
2670 * GNUmakefile.am: Added new files required for WebGL support.
2671 * html/HTMLCanvasElement.cpp:
2672 (WebCore::HTMLCanvasElement::getContext): Extend #ifdef to cover GTK+ as well, which does not
2673 yet support accelerated compositing.
2674 * platform/graphics/ANGLEWebKitBridge.h: Update to reflect the fact that ANGLE isn't compiled as
2675 a framework for GTK+.
2676 * platform/graphics/GraphicsContext3D.h:
2677 (WebCore::GraphicsContext3D::platformTexture): Added a declaration of this method for Cairo.
2678 (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer): Ditto.
2679 * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Added.
2680 (WebCore::GraphicsContext3D::getImageData): Added.
2681 (WebCore::GraphicsContext3D::paintToCanvas): Added.
2682 * platform/graphics/cairo/OpenGLShims.cpp: Added. This file controls loading of GL extension
2683 functions dynamically. They have different names across the different vendors' GL implementations.
2684 (WebCore::lookupOpenGLFunctionAddress): Added
2685 (WebCore::openGLFunctionTable): Added
2686 (WebCore::initializeOpenGLShims): Added
2687 * platform/graphics/cairo/OpenGLShims.h: Added.
2688 * platform/graphics/gtk/DrawingBufferGtk.cpp: Added.
2689 (WebCore::DrawingBuffer::DrawingBuffer): Very generic implementation for Cairo.
2690 (WebCore::DrawingBuffer::~DrawingBuffer): Ditto.
2691 (WebCore::DrawingBuffer::didReset): Ditto.
2692 (WebCore::DrawingBuffer::platformColorBuffer): Ditto.
2693 * platform/graphics/gtk/GraphicsContext3DGtk.cpp: Added.
2694 (WebCore::GraphicsContext3D::create): Initial implementation.
2695 (WebCore::GraphicsContext3D::GraphicsContext3D): Ditto.
2696 (WebCore::GraphicsContext3D::~GraphicsContext3D): Ditto.
2697 (WebCore::GraphicsContext3D::makeContextCurrent): Ditto.
2698 (WebCore::GraphicsContext3D::platformGraphicsContext3D): Ditto.
2699 (WebCore::GraphicsContext3D::isGLES2Compliant): Ditto.
2700 * platform/graphics/gtk/GraphicsContext3DInternal.cpp: Added.
2701 (sharedDisplay): Added this shared display which is required by some
2703 (WebCore::activeGraphicsContexts): This method keeps track of all active GraphicsContext3D
2704 contexts, in order to clean them up at exit. This prevents crashes on certain OpenGL drivers.
2705 (WebCore::GraphicsContext3DInternal::addActiveGraphicsContext): Ditto.
2706 (WebCore::GraphicsContext3DInternal::removeActiveGraphicsContext): Ditto.
2707 (WebCore::GraphicsContext3DInternal::cleanupActiveContextsAtExit): Ditto.
2708 (WebCore::GraphicsContext3DInternal::create): Figure out the best way to create an OpenGL
2709 context given the current environment.
2710 (WebCore::GraphicsContext3DInternal::createPbufferContext): Pbuffer context initializer.
2711 (WebCore::GraphicsContext3DInternal::createPixmapContext): Pixmap context initializer.
2712 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal): Initial implementation.
2713 (WebCore::GraphicsContext3DInternal::~GraphicsContext3DInternal): Ditto.
2714 (WebCore::GraphicsContext3DInternal::makeContextCurrent): Ditto.
2715 * platform/graphics/gtk/GraphicsContext3DInternal.h: Added.
2716 * platform/graphics/opengl/Extensions3DOpenGL.cpp: Added generic implementation.
2717 (WebCore::Extensions3DOpenGL::ensureEnabled): Ditto.
2718 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2719 (WebCore::GraphicsContext3D::reshape): Test for the context using the public API rather than
2720 the private bits that are specific to the Apple port.
2722 2011-04-04 Alexey Proskuryakov <ap@apple.com>
2724 Reviewed by Dan Bernstein.
2726 REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2
2727 https://bugs.webkit.org/show_bug.cgi?id=51230
2728 <rdar://problem/8780989>
2730 <rdar://problem/9015250> REGRESSION (WebKit2): Key events not fired for modifier keys
2732 * page/EventHandler.cpp: (WebCore::EventHandler::keyEvent): Moved Caps Lock handling from
2733 WebKits to WebCore, because WebKit shouldn't be smart.
2735 2011-04-04 Steve Falkenburg <sfalken@apple.com>
2737 Fix Windows build warning.
2739 * WebCore.vcproj/WebCore.vcproj: Exclude EventQueue.cpp in Debug_All build.
2741 2011-04-04 Adam Roben <aroben@apple.com>
2743 Attempted Mac build fix, part III
2745 * WebCore.exp.in: Export PlatformCALayer::setGeometryFlipped. Also resorted some symbols.
2747 2011-04-04 Andy Estes <aestes@apple.com>
2753 2011-04-04 David Dorwin <ddorwin@chromium.org>
2755 Reviewed by David Levin.
2757 Chromium Mac crashes when entering fullscreen
2758 https://bugs.webkit.org/show_bug.cgi?id=57483
2760 Override extraFullScreenStyleSheet in RenderThemeChromiumMac to avoid hitting the ASSERT_NOT_REACHED in RenderThemeMac.
2762 * WebCore.gyp/WebCore.gyp:
2763 * rendering/RenderThemeChromiumMac.h:
2764 * rendering/RenderThemeChromiumMac.mm:
2765 (WebCore::RenderThemeChromiumMac::extraFullScreenStyleSheet):
2767 2011-04-04 Adam Roben <aroben@apple.com>
2769 Attempted Mac build fix, part II
2771 * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayerClient.h and
2772 PlatformCAAnimation.h as private so that WebKit2 can #include them (transitively).
2774 2011-04-04 Steve Falkenburg <sfalken@apple.com>
2776 Reviewed by Adam Roben.
2778 Remove unused AnalyzeWithLargeStack code from Windows build files
2779 https://bugs.webkit.org/show_bug.cgi?id=57771
2781 This was used for us to build with prefast automatically,
2782 but it is out-of-date and hasn't been used for some time.
2783 Removing completely for now.
2785 * WebCore.vcproj/WebCore.vcproj:
2786 * WebCore.vcproj/WebCorePreBuild.cmd:
2788 2011-04-01 Matthew Delaney <mdelaney@apple.com>
2790 Reviewed by Simon Fraser.
2792 [CG] Do not accelerate small canvases
2793 https://bugs.webkit.org/show_bug.cgi?id=57596
2795 No new tests. No outward behavior changes.
2797 * platform/graphics/cg/ImageBufferCG.cpp:
2799 2011-04-04 Adam Roben <aroben@apple.com>
2801 Attempted Mac build fix
2803 * WebCore.xcodeproj/project.pbxproj: Marked PlatformCALayer.h and GraphicsLayerCA.h private
2804 so that WebKit can #include them.
2806 2011-04-04 Malcolm MacLeod <mmacleod@webmail.co.za>
2808 Reviewed by Kevin Ollivier.
2810 [wx] Implement support for temporary files.
2812 https://bugs.webkit.org/show_bug.cgi?id=57772
2814 * platform/FileSystem.h:
2815 * platform/wx/FileSystemWx.cpp:
2816 (WebCore::getFileModificationTime):
2817 (WebCore::openTemporaryFile):
2818 (WebCore::closeFile):
2819 (WebCore::writeToFile):
2821 2011-04-01 Oliver Hunt <oliver@apple.com>
2823 Reviewed by Geoffrey Garen.
2825 Make StructureChain GC allocated
2826 https://bugs.webkit.org/show_bug.cgi?id=56695
2828 Update for new Structure marking function
2830 * bindings/js/JSDOMGlobalObject.cpp:
2831 (WebCore::JSDOMGlobalObject::markChildren):
2833 2011-04-04 Pavel Feldman <pfeldman@google.com>
2835 Reviewed by Yury Semikhatsky.
2837 Web Inspector: add support for the enumerated types in the protocol.
2838 https://bugs.webkit.org/show_bug.cgi?id=57761
2840 * inspector/Inspector.json:
2841 * inspector/InspectorDebuggerAgent.cpp:
2842 (WebCore::InspectorDebuggerAgent::setPauseOnExceptions):
2843 * inspector/InspectorDebuggerAgent.h:
2844 * inspector/InspectorInstrumentation.cpp:
2845 (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
2846 (WebCore::InspectorInstrumentation::scriptImportedImpl):
2847 * inspector/InspectorResourceAgent.cpp:
2848 (WebCore::cachedResourceTypeString):
2849 (WebCore::InspectorResourceAgent::didReceiveResponse):
2850 (WebCore::InspectorResourceAgent::setInitialScriptContent):
2851 (WebCore::InspectorResourceAgent::setInitialXHRContent):
2852 * inspector/InspectorResourceAgent.h:
2853 * inspector/front-end/ScriptsPanel.js:
2854 * inspector/generate-inspector-idl:
2856 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
2858 Reviewed by Pavel Feldman.
2860 Web Inspector: InspectorRuntimeAgent should not depend on Page
2861 https://bugs.webkit.org/show_bug.cgi?id=57759
2863 Descendants of InspectorRuntimeAgent should implement a method providing access to the default
2864 inspected state used for console evaluations.
2866 * inspector/InspectorAgent.cpp:
2867 (WebCore::InspectorAgent::InspectorAgent): runtime agent is created and deleted along with other agents.
2868 (WebCore::InspectorAgent::setFrontend):
2869 * inspector/InspectorAgent.h:
2870 * inspector/InspectorRuntimeAgent.cpp:
2871 (WebCore::InspectorRuntimeAgent::create):
2872 (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
2873 (WebCore::InspectorRuntimeAgent::evaluate):
2874 * inspector/InspectorRuntimeAgent.h:
2875 (WebCore::InspectorRuntimeAgent::InspectedStateProvider::~InspectedStateProvider):
2877 2011-04-04 Yong Li <yoli@rim.com>
2879 Reviewed by Antonio Gomes.
2881 https://bugs.webkit.org/show_bug.cgi?id=55969
2882 Fix the issue that document state is not saved when
2883 going backward and ending up with error page.
2885 Test: platform/qt/fast/history/back-to-unreachable-url-then-forward.html
2887 (For manual test, load a non-existent html first, then load
2888 fast/history/resources/check-scroll-position.html, then go
2889 back and go forward. If it doesn't show "SUCCESS" at the bottom
2890 of the page, your browser has failed the test)
2892 * loader/FrameLoader.cpp:
2893 (WebCore::FrameLoader::load):
2895 2011-04-04 Sergio Villar Senin <svillar@igalia.com>
2897 Reviewed by Martin Robinson.
2899 [GTK] Fix make distcheck for 1.4.0
2900 https://bugs.webkit.org/show_bug.cgi?id=57750
2902 Added a missing header file to the Makefile
2906 2011-04-04 Martin Robinson <mrobinson@igalia.com>
2908 Reviewed by Xan Lopez.
2910 [GTK] http/tests/plugins/post-url-file.html fails on GTK+
2911 https://bugs.webkit.org/show_bug.cgi?id=55826
2913 Correct the implementation of handlePostReadFile which uses GIO APIs and
2914 actually resizes the buffer to fit the entire size of the file data. This
2915 was likely leading to memory corruption until now.
2917 * plugins/gtk/PluginViewGtk.cpp:
2918 (WebCore::PluginView::handlePostReadFile): Fix this method.
2920 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
2922 Reviewed by Yury Semikhatsky.
2924 Web Inspector: [Extensions API] add notifications on panels shown/hidden
2925 https://bugs.webkit.org/show_bug.cgi?id=57752
2927 * inspector/front-end/ExtensionAPI.js:
2928 (WebInspector.injectedExtensionAPI.PanelImpl):
2929 * inspector/front-end/ExtensionServer.js:
2930 (WebInspector.ExtensionServer.prototype.notifyPanelShown):
2931 (WebInspector.ExtensionServer.prototype.notifyPanelHidden):
2932 * inspector/front-end/Panel.js:
2933 (WebInspector.Panel.prototype.show):
2934 (WebInspector.Panel.prototype.hide):
2936 2011-04-04 Pavel Podivilov <podivilov@chromium.org>
2938 Reviewed by Yury Semikhatsky.
2940 Web Inspector: search in resources panel is broken.
2941 https://bugs.webkit.org/show_bug.cgi?id=57631
2943 Search in resources panel should trigger source frame content load.
2945 * inspector/front-end/Panel.js:
2946 (WebInspector.Panel.prototype.jumpToNextSearchResult):
2947 (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
2948 * inspector/front-end/ResourcesPanel.js:
2949 * inspector/front-end/SearchController.js:
2950 (WebInspector.SearchController.prototype.handleShortcut):
2951 (WebInspector.SearchController.prototype.focusSearchField):
2952 * inspector/front-end/SourceFrame.js:
2953 (WebInspector.SourceFrame.prototype.show):
2954 (WebInspector.SourceFrame.prototype._ensureContentLoaded):
2955 (WebInspector.SourceFrame.prototype.performSearch):
2957 2011-04-03 Eric Seidel <eric@webkit.org>
2959 Reviewed by Ryosuke Niwa.
2961 Split out UnicodeBidi enum into its own header (to allow use in platform)
2962 https://bugs.webkit.org/show_bug.cgi?id=57722
2964 unicode-bidi is a CSS concept. However the same concept is really needed throughout
2965 the bidi code in platform as well. So I'm moving the enum to platform.
2966 The only part of the enum which doesn't make much sense to platform/ is "normal".
2968 * WebCore.xcodeproj/project.pbxproj:
2969 * css/CSSPrimitiveValueMappings.h:
2970 * platform/text/UnicodeBidi.h: Added.
2971 * rendering/style/RenderStyle.h:
2972 * rendering/style/RenderStyleConstants.h:
2974 2011-04-04 Andrey Adaikin <aandrey@google.com>
2976 Reviewed by Yury Semikhatsky.
2978 Web Inspector: Highlighted search tokens would not be shown on long lines in the text viewer
2979 https://bugs.webkit.org/show_bug.cgi?id=57749
2981 * inspector/front-end/TextViewer.js:
2982 (WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
2983 (WebInspector.TextEditorMainPanel.prototype._paintLine):
2985 2011-04-04 Alexander Pavlov <apavlov@chromium.org>
2987 Reviewed by Yury Semikhatsky.
2989 Web Inspector: Incorrectly reports warning on missing/incorrect content-type for 304s
2990 https://bugs.webkit.org/show_bug.cgi?id=48525
2992 * inspector/front-end/Resource.js:
2993 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
2995 2011-04-01 Alexander Pavlov <apavlov@chromium.org>
2997 Reviewed by Yury Semikhatsky.
2999 Web Inspector: appropriateSelectorForNode() invokes the "localName" getter on DOMNode rather than function
3000 https://bugs.webkit.org/show_bug.cgi?id=57632
3002 Moved the affected method onto the DOMNode.prototype as "appropriateSelectorFor".
3004 * inspector/front-end/DOMAgent.js:
3005 (WebInspector.DOMNode.prototype.appropriateSelectorFor):
3006 * inspector/front-end/EventListenersSidebarPane.js:
3008 * inspector/front-end/StylesSidebarPane.js:
3009 (WebInspector.StylesSidebarPane.prototype.addBlankSection):
3010 * inspector/front-end/utilities.js:
3012 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
3014 Unreviewed. Followup to an incomplete commit in r82806.
3016 * inspector/front-end/ExtensionAPI.js:
3017 (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane):
3018 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl):
3019 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
3020 (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setExpression):
3021 (WebInspector.injectedExtensionAPI):
3022 * inspector/front-end/ExtensionPanel.js:
3023 (WebInspector.ExtensionSidebarPane):
3024 (WebInspector.ExtensionSidebarPane.prototype.setPage):
3025 (WebInspector.ExtensionSidebarPane.prototype._setObject):
3026 * inspector/front-end/ExtensionServer.js:
3027 (WebInspector.ExtensionServer):
3028 (WebInspector.ExtensionServer.prototype.notifyExtensionSidebarUpdated):
3029 (WebInspector.ExtensionServer.prototype._onCreatePanel):
3030 (WebInspector.ExtensionServer.prototype._onCreateSidebarPane):
3031 (WebInspector.ExtensionServer.prototype.createClientIframe):
3032 (WebInspector.ExtensionServer.prototype._onSetSidebarContent):
3034 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
3036 Unreviewed. Fix Qt minimal build.
3038 * inspector/InspectorFrontendChannel.h:
3040 2011-04-01 Sergey Vorobyev <sergeyvorobyev@google.com>
3042 Reviewed by Yury Semikhatsky.
3044 Web Inspector: Separate sendMessageToFrontend function
3045 from InspectorClient to individual interface.
3046 https://bugs.webkit.org/show_bug.cgi?id=57548
3048 Refactoring - covered with existing inspector tests.
3052 * WebCore.vcproj/WebCore.vcproj:
3053 * WebCore.xcodeproj/project.pbxproj:
3054 * inspector/CodeGeneratorInspector.pm:
3055 * inspector/InspectorClient.h:
3056 * inspector/InspectorFrontendChannel.h: Added.
3057 (WebCore::InspectorFrontendChannel::~InspectorFrontendChannel):
3059 2011-04-04 Nico Weber <thakis@chromium.org>
3061 Reviewed by Eric Seidel.
3063 Prefer a using directive over qualified names in LocalizedNumberICU.cpp
3064 https://bugs.webkit.org/show_bug.cgi?id=57742
3066 Requested by ap in https://bugs.webkit.org/show_bug.cgi?id=57715
3068 * platform/text/LocalizedNumberICU.cpp:
3069 (WebCore::createFormatterForCurrentLocale):
3070 (WebCore::numberFormatter):
3071 (WebCore::parseLocalizedNumber):
3072 (WebCore::formatLocalizedNumber):
3074 2011-04-04 Andrey Adaikin <aandrey@google.com>
3076 Reviewed by Yury Semikhatsky.
3078 Web Inspector: Breakpoints in the gutter stay static while editing the text
3079 https://bugs.webkit.org/show_bug.cgi?id=57616
3081 * inspector/front-end/SourceFrame.js:
3082 (WebInspector.SourceFrame):
3083 (WebInspector.SourceFrame.prototype._saveViewerState):
3084 (WebInspector.SourceFrame.prototype._restoreViewerState):
3085 (WebInspector.SourceFrame.prototype._endEditing):
3086 (WebInspector.SourceFrame.prototype._lineNumberAfterEditing):
3087 (WebInspector.SourceFrame.prototype.addBreakpoint):
3088 (WebInspector.SourceFrame.prototype.removeBreakpoint):
3089 * inspector/front-end/TextViewer.js:
3090 (WebInspector.TextViewer.prototype._syncDecorationsForLine):
3092 (WebInspector.TextEditorChunkedPanel.prototype.removeDecoration):
3093 (WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
3094 (WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
3095 (WebInspector.TextEditorMainPanel.prototype._splitChunkOnALine):
3097 2011-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3099 Reviewed by Yury Semikhatsky.
3101 Web Inspector: remove obsolete doc generating code from CodeGenerator.
3102 https://bugs.webkit.org/show_bug.cgi?id=57748
3104 * inspector/CodeGeneratorInspector.pm:
3106 2011-04-04 Andrey Kosyakov <caseq@chromium.org>
3108 Reviewed by Yury Semikhatsky.
3110 Web Inspector: [Extensions API] Merge WatchExpressionSidebarPane into ExtensionSidebarPane
3111 https://bugs.webkit.org/show_bug.cgi?id=57622
3113 Merged WatchExpressionSidebarPane into ExtensionSidebarPane, added setPage(url).
3114 Fixed wrong getter in schema (scripts -> elements)
3116 * inspector/front-end/ExtensionAPI.js:
3117 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setObject):
3118 (WebInspector.injectedExtensionAPI.WatchExpressionSidebarPaneImpl.prototype.setPage):
3119 * inspector/front-end/ExtensionAPISchema.json:
3120 * inspector/front-end/ExtensionServer.js:
3121 (WebInspector.ExtensionServer.prototype._onSetSidebarPage):
3123 2011-04-04 Ilya Tikhonovsky <loislo@chromium.org>
3125 Reviewed by Pavel Feldman.
3127 Web Inspector: introduce support of 'optional' flag for command arguments.
3128 https://bugs.webkit.org/show_bug.cgi?id=57698
3130 * inspector/CodeGeneratorInspector.pm:
3131 * inspector/Inspector.json:
3132 * inspector/InspectorDebuggerAgent.cpp:
3133 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3134 (WebCore::InspectorDebuggerAgent::setBreakpoint):
3135 (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3136 * inspector/InspectorDebuggerAgent.h:
3137 * inspector/InspectorPageAgent.cpp:
3138 (WebCore::InspectorPageAgent::reloadPage):
3139 * inspector/InspectorPageAgent.h:
3140 * inspector/InspectorResourceAgent.cpp:
3141 (WebCore::InspectorResourceAgent::getResourceContent):
3142 * inspector/InspectorResourceAgent.h:
3143 * inspector/InspectorRuntimeAgent.cpp:
3144 (WebCore::InspectorRuntimeAgent::evaluate):
3145 * inspector/InspectorRuntimeAgent.h:
3146 * inspector/generate-inspector-idl:
3148 2011-04-04 Yury Semikhatsky <yurys@chromium.org>
3150 Reviewed by Pavel Feldman.
3152 Web Inspector: InjectedScriptManager should not try to access inspected window in case of workers
3153 https://bugs.webkit.org/show_bug.cgi?id=57637
3155 * bindings/js/JSInjectedScriptManager.cpp:
3156 (WebCore::InjectedScriptManager::injectedScriptFor):
3157 * bindings/v8/custom/V8InjectedScriptManager.cpp:
3158 (WebCore::InjectedScriptManager::injectedScriptFor):
3159 * inspector/InjectedScript.cpp:
3160 (WebCore::InjectedScript::InjectedScript):
3161 (WebCore::InjectedScript::canAccessInspectedWindow):
3162 * inspector/InjectedScript.h:
3163 * inspector/InjectedScriptManager.cpp:
3164 (WebCore::InjectedScriptManager::createForPage):
3165 (WebCore::InjectedScriptManager::createForWorker):
3166 (WebCore::InjectedScriptManager::InjectedScriptManager): access check function is passed as a parameter to the constructor
3167 and it depends on which type of context we're inspecting(worker or page).
3168 (WebCore::InjectedScriptManager::canAccessInspectedWorkerContext):
3169 * inspector/InjectedScriptManager.h:
3170 * inspector/InspectorController.cpp:
3171 (WebCore::InspectorController::InspectorController):
3173 2011-04-04 Ryuan Choi <ryuan.choi@samsung.com>
3175 Reviewed by Eric Seidel.
3177 V8StringCallback.cpp requires V8Binding.h
3178 https://bugs.webkit.org/show_bug.cgi?id=57699
3180 No new tests required because of just adding header file.
3182 * bindings/scripts/CodeGeneratorV8.pm:
3184 2011-04-03 Ryuan Choi <ryuan.choi@samsung.com>
3186 Reviewed by Eric Seidel.
3188 [CMAKE] Clean duplicated files in WebCore_Sources
3189 https://bugs.webkit.org/show_bug.cgi?id=57741
3191 No new tests, Only duplicated files were removed.
3195 2011-04-03 Luke Macpherson <macpherson@chromium.org>
3197 Reviewed by Darin Adler.
3199 Fix 2-space indentation introduced in bug 54706.
3200 https://bugs.webkit.org/show_bug.cgi?id=57740
3202 No new tests - whitespace changes only.
3204 * css/CSSStyleSelector.cpp:
3205 (WebCore::CSSStyleSelector::applyProperty):
3206 Convert 2-space indentation to 4-space indentation.
3208 2011-04-03 Luke Macpherson <macpherson@chromium.org>
3210 Reviewed by Dimitri Glazkov.
3212 Make CSSStyleApplyProperty non-copyable
3213 https://bugs.webkit.org/show_bug.cgi?id=57738
3215 No new functionality added so no new tests required.
3217 * css/CSSStyleApplyProperty.h:
3218 Added WTF_MAKE_NONCOPYABLE(CSSStyleApplyProperty) to ensure singleton stays single.
3220 2011-04-03 Dan Bernstein <mitz@apple.com>
3222 Reviewed by Maciej Stachowiak.
3224 fast/images/extra-image-in-image-document.html crashes when run after embed-image.html
3225 https://bugs.webkit.org/show_bug.cgi?id=57733
3227 The crash happens because resetting the page scale as part of preparing the WebView for the
3228 next test triggered layout, which in turn caused a plug-in to make a resource request, and
3229 DumpRenderTree's delegate to be dispatched. The delegate doesn’t expect to be called between
3230 tests, and it references the layout test controller, which is null.
3233 (WebCore::Frame::scalePage): Avoid an unnecessary layout if the page scale isn’t changing. This
3234 is more efficient, and has the side effect of avoiding the crash in DumpRenderTree, although
3235 DumpRenderTree could still crash when after a test with disabled plug-ins and a non-1 page scale.
3236 I think there are currently no such tests, so I am not fixing DumpRenderTree.
3238 2011-04-03 Eric Seidel <eric@webkit.org>
3240 Reviewed by Ryosuke Niwa.
3242 Teach InlineIterator how to work from any root, not just a RenderBlock
3243 https://bugs.webkit.org/show_bug.cgi?id=57726
3245 For implementing bidi-unicode: isolate, we need to be able to run the
3246 bidi algorithm over a subtree of inlines, not just from a block root.
3247 This is the first step in making this possible.
3249 * rendering/InlineIterator.h:
3250 (WebCore::InlineIterator::InlineIterator):
3251 (WebCore::InlineIterator::root):
3252 (WebCore::bidiNext):
3253 (WebCore::bidiFirst):
3254 (WebCore::InlineIterator::increment):
3255 (WebCore::InlineBidiResolver::appendRun):
3256 * rendering/RenderBlockLineLayout.cpp:
3257 (WebCore::RenderBlock::findNextLineBreak):
3259 2011-04-03 Eric Seidel <eric@webkit.org>
3261 Reviewed by Dan Bernstein.
3263 Split out handling of trailing spaces from layoutInlineChildren
3264 https://bugs.webkit.org/show_bug.cgi?id=57432
3266 There is much more we could split out from this function, but this is a start.
3268 I suspect this is very hot code. Hopefully the compiler will do the right thing.
3269 If it doesn't the Chromium PLT bots will tell us.
3271 * rendering/RenderBlock.h:
3272 * rendering/RenderBlockLineLayout.cpp:
3273 (WebCore::RenderBlock::handleTrailingSpaces):
3274 (WebCore::RenderBlock::layoutInlineChildren):
3276 2011-03-21 Ryosuke Niwa <rniwa@webkit.org>
3278 Reviewed by Eric Seidel.
3280 editing commands shouldn't run when there's no body
3281 https://bugs.webkit.org/show_bug.cgi?id=56771
3283 The bug was caused by WebKit's not checking the existence of root editable element
3284 in enabled* functions. Although isContentEditable returns true whenever we're in design mode,
3285 we should not run editing commands in a document without a body element editable because
3286 doing so results in appending a non-body element to the document node.
3288 Fixed the bug by modifying various enabled* functions to ensure we have a root editable element.
3289 New behavior tries to match that of Firefox except StyleWithCSS, which Firefox seems to ignore
3290 when there are no body element. Since StyleWithCSS is a document's state or property, we allow
3291 execCommand('StyleWithCSS') even in a document without a body element.
3293 WebKit's and Firefox's behaviors also deviate in insert-image-with-selecting-document.html.
3294 Whereas WebKit respects selection set by script and ignores execCommand, Firefox modifies
3295 the selection when document.write("x") is ran and successfully inserts image.
3297 Thus, empty-document-delete.html and empty-document-justify-right.html both pass on Firefox
3298 while empty-document-stylewithcss.html and insert-image-with-selecting-document.html both fail.
3300 Since Internet Explorer does not allow execCommand to run under design mode properly, we could
3301 not test its behavior.
3303 Tests: editing/editability/empty-document-delete.html
3304 editing/editability/empty-document-justify-right.html
3305 editing/editability/empty-document-stylewithcss.html
3306 editing/execCommand/insert-image-with-selecting-document.html
3308 * editing/Editor.cpp:
3309 (WebCore::Editor::canEdit): Verify that the root editable element exists
3310 instead of just checking that selection endpoints are editable because
3311 selection endpoints could be document node without a body element in design mode
3312 and we don't want to consider such a document editable.
3313 (WebCore::Editor::canDelete): Ditto.
3314 * editing/EditorCommand.cpp:
3315 (WebCore::enabledInEditableText): Ditto.
3316 (WebCore::enabledInRichlyEditableText): Ditto.
3317 (WebCore::enabledDelete): Call enabledCut and enabledInEditableText instead
3318 of duplicating the code in order to fix the same bug.
3320 2011-04-02 Dan Bernstein <mitz@apple.com>
3322 Reviewed by Maciej Stachowiak.
3324 REGRESSION (r82786): Media controls render incorrectly on GTK and Qt
3325 https://bugs.webkit.org/show_bug.cgi?id=57719
3327 r82786 exposed an incorrect assumption inRenderMediaControlTimeDisplay::layout()
3328 that the timeline container is the parent of the time display. This is not true
3329 with the GTK media style, where the current time display is an inline box, and
3330 thus wrapped in an anonymous flexible box. The code was incorrectly considering
3331 the width of the anonymous box and deciding to hide the time display. Prior to
3332 r82786, this mistake was corrected by the call to computeLogicalWidth() in line layout.
3334 * rendering/MediaControlElements.cpp:
3335 (WebCore::RenderMediaControlTimeDisplay::layout): Changed to skip past anonymous ancestors.
3337 2011-04-02 Nico Weber <thakis@chromium.org>
3339 Reviewed by Adam Barth.
3341 Explicitly use icu namespace for ports building with U_USING_ICU_NAMESPACE=0
3343 By default, ICU includes |using namespace icu;| in its header files
3344 for backwards compatibility. Clients can define
3345 U_USING_ICU_NAMESPACE=0 to tell ICU to not do this. Prefixing all ICU
3346 classes with |icu::| makes this file compile no matter what
3347 U_USING_ICU_NAMESPACE is set to.
3349 https://bugs.webkit.org/show_bug.cgi?id=57715
3351 * platform/text/LocalizedNumberICU.cpp:
3352 (WebCore::createFormatterForCurrentLocale):
3353 (WebCore::numberFormatter):
3354 (WebCore::parseLocalizedNumber):
3355 (WebCore::formatLocalizedNumber):
3357 2011-04-02 Dan Bernstein <mitz@apple.com>
3359 Reviewed by Dave Hyatt.
3361 Remove an unnecessary extra computeLogicalWidth() from line layout
3362 https://bugs.webkit.org/show_bug.cgi?id=57711
3364 Changes in behavior (MathML progression) covered by existing layout tests.
3366 * rendering/RenderBlockLineLayout.cpp:
3367 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3368 call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
3369 actually prevents MathML rows from reverting to an incorrect width.
3371 2011-04-02 Dan Bernstein <mitz@apple.com>
3373 Reviewed by Beth Dakin.
3375 <details> marker loses its margin
3376 https://bugs.webkit.org/show_bug.cgi?id=57713
3378 * rendering/RenderDetails.cpp:
3379 (WebCore::RenderDetails::computePreferredLogicalWidths): Override to update
3380 the marker location.
3381 * rendering/RenderDetails.h:
3382 (WebCore::RenderDetails::renderName): Made private.
3383 (WebCore::RenderDetails::isDetails): Ditto.
3384 * rendering/RenderDetailsMarker.cpp:
3385 (WebCore::RenderDetailsMarker::computePreferredLogicalWidths): Set the margins
3386 in the style, like RenderListMarker does.
3387 (WebCore::RenderDetailsMarker::layout): Set the margins from the style.
3389 2011-04-02 Andy Estes <aestes@apple.com>
3391 Reviewed by Oliver Hunt.
3393 REGRESSION (r69237): Black border around map elements while using an image map on Mac platform
3394 https://bugs.webkit.org/show_bug.cgi?id=52518
3396 Test: fast/images/imagemap-focus-ring-zero-outline-width.html
3398 * rendering/RenderImage.cpp:
3399 (WebCore::RenderImage::paintAreaElementFocusRing): Return early if outlineWidth is 0.
3401 2011-04-02 Beth Dakin <bdakin@apple.com>
3403 Reviewed by Sam Weinig.
3405 https://bugs.webkit.org/show_bug.cgi?id=57605
3406 Frame::pageScaleFactor() should not affect getBoundingClientRect() or
3409 <rdar://problem/9194541>
3411 New functions adjust*ForPageScale() are analogous to adjust*ForAbsoluteZoom().
3413 (WebCore::Element::getClientRects):
3414 (WebCore::Element::getBoundingClientRect):
3416 (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
3417 (WebCore::Range::getBorderAndTextQuads):
3418 * rendering/RenderObject.h:
3419 (WebCore::adjustFloatPointForPageScale):
3420 (WebCore::adjustFloatQuadForPageScale):
3421 (WebCore::adjustFloatRectForPageScale):
3423 2011-04-02 Dan Bernstein <mitz@apple.com>
3425 Reverted r82775 due to changes in <details> test results, which are
3426 likely progressions.
3428 * rendering/RenderBlockLineLayout.cpp:
3429 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3431 2011-04-02 Dan Bernstein <mitz@apple.com>
3433 Reviewed by Dave Hyatt.
3435 Remove an unnecessary extra computeLogicalWidth() from line layout
3436 https://bugs.webkit.org/show_bug.cgi?id=57711
3438 Changes in behavior (MathML progression) covered by existing layout tests.
3440 * rendering/RenderBlockLineLayout.cpp:
3441 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Removed a
3442 call to computeLogicalWidth(). Because of <http://webkit.org/b/57700>, this
3443 actually prevents MathML rows from reverting to an incorrect width.
3445 2011-04-02 Ryuan Choi <ryuan.choi@samsung.com>
3447 Reviewed by Martin Robinson.
3449 [GTK] Fix leaked pointer in FontGtk.cpp
3450 https://bugs.webkit.org/show_bug.cgi?id=57307
3454 No new functionality, so no new tests.
3456 * platform/graphics/gtk/FontGtk.cpp:
3457 (WebCore::utf16ToUtf8): Rename utf16_to_utf8 and fix indentation.
3458 (WebCore::convertUniCharToUTF8):
3460 2011-04-02 Ilya Tikhonovsky <loislo@chromium.org>
3462 Reviewed by Pavel Feldman.
3464 Web Inspector: we should be able to have in and out arguments of a command with same name.
3465 https://bugs.webkit.org/show_bug.cgi?id=57701
3467 * inspector/CodeGeneratorInspector.pm:
3468 * inspector/Inspector.json:
3470 2011-04-01 Ilya Tikhonovsky <loislo@chromium.org>
3472 Not reviewed trivial change.
3474 Web Inspector: The page agent should be enabled even if JAVASCRIPT_DEBUGGER is off.
3475 Followup change for r82281.
3476 https://bugs.webkit.org/show_bug.cgi?id=57327
3478 * inspector/InspectorPageAgent.cpp:
3479 * inspector/InspectorPageAgent.h:
3481 2011-04-01 Michael Saboff <msaboff@apple.com>
3483 Reviewed by Darin Adler.
3485 Cached Resource Overhead Space Usage and Accounting Inaccurate
3486 https://bugs.webkit.org/show_bug.cgi?id=57488
3488 Fixed windows test failures.
3489 Changed the fixed overhead value for ResourceResponse to 3800 bytes.
3490 Modified ResourceResponse::platformLazyInit() to handle "base" level
3491 attributes or all attributes. The base attributes, like URL, status
3492 code, mime type and a few header fields (mostly cache related) are
3493 suitable for most resources. This reduces the per resource memory
3494 needs by over 1K bytes per resource thus saving memory in the cache.
3495 Collectively, these two changes bring the overhead memory calculation
3496 in line with reality.
3498 No new tests added due to existing tests cover areas of change and
3499 there is no functional change. The change is limited to reducing
3500 memory usage along existing paths.
3502 * loader/cache/CachedResource.cpp:
3503 (WebCore::CachedResource::canUseCacheValidator):
3504 * platform/network/ResourceResponseBase.cpp:
3505 (WebCore::ResourceResponseBase::adopt):
3506 (WebCore::ResourceResponseBase::isHTTP):
3507 (WebCore::ResourceResponseBase::url):
3508 (WebCore::ResourceResponseBase::setURL):
3509 (WebCore::ResourceResponseBase::mimeType):
3510 (WebCore::ResourceResponseBase::setMimeType):
3511 (WebCore::ResourceResponseBase::expectedContentLength):
3512 (WebCore::ResourceResponseBase::setExpectedContentLength):
3513 (WebCore::ResourceResponseBase::textEncodingName):
3514 (WebCore::ResourceResponseBase::setTextEncodingName):
3515 (WebCore::ResourceResponseBase::suggestedFilename):
3516 (WebCore::ResourceResponseBase::setSuggestedFilename):
3517 (WebCore::ResourceResponseBase::httpStatusCode):
3518 (WebCore::ResourceResponseBase::setHTTPStatusCode):
3519 (WebCore::ResourceResponseBase::httpStatusText):
3520 (WebCore::ResourceResponseBase::setHTTPStatusText):
3521 (WebCore::ResourceResponseBase::httpHeaderField):
3522 (WebCore::ResourceResponseBase::setHTTPHeaderField):
3523 (WebCore::ResourceResponseBase::httpHeaderFields):
3524 (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3525 (WebCore::ResourceResponseBase::hasCacheValidatorFields):
3526 (WebCore::ResourceResponseBase::date):
3527 (WebCore::ResourceResponseBase::age):
3528 (WebCore::ResourceResponseBase::expires):
3529 (WebCore::ResourceResponseBase::lastModified):
3530 (WebCore::ResourceResponseBase::isAttachment):
3531 (WebCore::ResourceResponseBase::setLastModifiedDate):
3532 (WebCore::ResourceResponseBase::lastModifiedDate):
3533 (WebCore::ResourceResponseBase::wasCached):
3534 (WebCore::ResourceResponseBase::connectionReused):
3535 (WebCore::ResourceResponseBase::setConnectionReused):
3536 (WebCore::ResourceResponseBase::connectionID):
3537 (WebCore::ResourceResponseBase::setConnectionID):
3538 (WebCore::ResourceResponseBase::resourceLoadTiming):
3539 (WebCore::ResourceResponseBase::setResourceLoadTiming):
3540 (WebCore::ResourceResponseBase::resourceLoadInfo):
3541 (WebCore::ResourceResponseBase::setResourceLoadInfo):
3542 (WebCore::ResourceResponseBase::lazyInit):
3543 * platform/network/ResourceResponseBase.h:
3544 (WebCore::ResourceResponseBase::platformLazyInit):
3545 * platform/network/cf/ResourceResponse.h:
3546 (WebCore::ResourceResponse::ResourceResponse):
3547 (WebCore::ResourceResponse::memoryUsage):
3548 * platform/network/cf/ResourceResponseCFNet.cpp:
3549 (WebCore::ResourceResponse::platformLazyInit):
3550 * platform/network/mac/ResourceResponseMac.mm:
3551 (WebCore::ResourceResponse::platformLazyInit):
3553 2011-04-01 Anantanarayanan G Iyengar <ananta@chromium.org>
3555 Reviewed by Adam Barth.
3557 https://bugs.webkit.org/show_bug.cgi?id=45855
3558 Windowless plugins added dynamically to the DOM should receive paint events.
3559 This is done by ensuring that the plugin widget is marked for painting when
3562 Test: plugins/windowless_plugin_paint_test.html
3564 * rendering/RenderWidget.cpp:
3565 (WebCore::RenderWidget::setWidget):
3567 2011-04-01 Mike Reed <reed@google.com>
3569 Reviewed by James Robinson.
3571 always use native font rendering on skia_gpu
3572 fixes a crash when SKIA_GPU is enabled, as we can't call getTopPlatformDevice()
3573 https://bugs.webkit.org/show_bug.cgi?id=57663
3575 No new tests. existing rendering tests will exercise this
3577 * platform/graphics/skia/PlatformContextSkia.cpp:
3578 (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
3580 2011-04-01 Sheriff Bot <webkit.review.bot@gmail.com>
3582 Unreviewed, rolling out r82712, r82729, and r82746.
3583 http://trac.webkit.org/changeset/82712
3584 http://trac.webkit.org/changeset/82729
3585 http://trac.webkit.org/changeset/82746
3586 https://bugs.webkit.org/show_bug.cgi?id=57682
3588 fast/frames/frame-programmatic-noresize.html is failing on
3589 Windows bots. Will look into this offline. (Requested by dydx
3592 * html/HTMLFrameElement.cpp:
3593 (WebCore::HTMLFrameElement::HTMLFrameElement):
3594 (WebCore::HTMLFrameElement::attach):
3595 (WebCore::HTMLFrameElement::parseMappedAttribute):
3596 * html/HTMLFrameElement.h:
3597 (WebCore::HTMLFrameElement::noResize):
3598 * rendering/RenderFrame.cpp:
3599 * rendering/RenderFrame.h:
3600 * rendering/RenderFrameSet.cpp:
3601 * rendering/RenderFrameSet.h:
3603 2011-04-01 Adam Barth <abarth@webkit.org>
3605 Reviewed by Tony Chang.
3607 Valgrind error in _ZN7WebCore8Document11updateTitleERKNS_19StringWithDirectionE
3608 https://bugs.webkit.org/show_bug.cgi?id=57656
3610 We should initialize memory when constructing objects.
3612 * platform/text/StringWithDirection.h:
3613 (WebCore::StringWithDirection::StringWithDirection):
3615 2011-04-01 Jer Noble <jer.noble@apple.com>
3617 Reviewed by Darin Adler.
3619 WebKit2: Link from PDF opens in a new tab instead of in the same tab
3620 https://bugs.webkit.org/show_bug.cgi?id=57528
3622 * WebCore.exp.in: Export MouseEvent::create().
3624 2011-04-01 John Bauman <jbauman@chromium.org>
3626 Reviewed by Kenneth Russell.
3628 Avoid decoding images twice in texImage2D
3629 https://bugs.webkit.org/show_bug.cgi?id=51498
3631 Make sure to redecode the image only if it's not opaque and texImage2D
3632 wouldn't premultiply it anyway.
3634 * platform/graphics/BitmapImage.h:
3635 * platform/graphics/cg/GraphicsContext3DCG.cpp:
3636 (WebCore::GraphicsContext3D::getImageData):
3637 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3638 (WebCore::GraphicsContext3D::getImageData):
3640 2011-04-01 Alexey Proskuryakov <ap@apple.com>
3642 32-bit Mac build fix.
3644 * dom/KeyboardEvent.h: (WebCore::KeypressCommand::KeypressCommand): Use 0U to index a String
3647 2011-04-01 Alexey Proskuryakov <ap@apple.com>
3649 Reviewed by Darin Adler.
3651 Make WebKit2 text input handling more like WebKit1
3652 https://bugs.webkit.org/show_bug.cgi?id=57649
3654 * dom/KeyboardEvent.h: (WebCore::KeypressCommand::KeypressCommand): Put back the assertions
3655 we used to have. It is dangerous to confuse editor commands and selector names - besides the
3656 presence of a semicolon, they sometimes have different names, and WebKit2 failed to map those.
3658 2011-04-01 Sheriff Bot <webkit.review.bot@gmail.com>
3660 Unreviewed, rolling out r82711.
3661 http://trac.webkit.org/changeset/82711
3662 https://bugs.webkit.org/show_bug.cgi?id=57657
3664 Made every test crash on XP and Win7 (Requested by
3665 abarth|gardening on #webkit).
3667 * loader/cache/CachedResource.cpp:
3668 (WebCore::CachedResource::canUseCacheValidator):
3669 * platform/network/ResourceResponseBase.cpp:
3670 (WebCore::ResourceResponseBase::adopt):
3671 (WebCore::ResourceResponseBase::isHTTP):
3672 (WebCore::ResourceResponseBase::url):
3673 (WebCore::ResourceResponseBase::setURL):
3674 (WebCore::ResourceResponseBase::mimeType):
3675 (WebCore::ResourceResponseBase::setMimeType):
3676 (WebCore::ResourceResponseBase::expectedContentLength):
3677 (WebCore::ResourceResponseBase::setExpectedContentLength):
3678 (WebCore::ResourceResponseBase::textEncodingName):
3679 (WebCore::ResourceResponseBase::setTextEncodingName):
3680 (WebCore::ResourceResponseBase::suggestedFilename):
3681 (WebCore::ResourceResponseBase::setSuggestedFilename):
3682 (WebCore::ResourceResponseBase::httpStatusCode):
3683 (WebCore::ResourceResponseBase::setHTTPStatusCode):
3684 (WebCore::ResourceResponseBase::httpStatusText):
3685 (WebCore::ResourceResponseBase::setHTTPStatusText):
3686 (WebCore::ResourceResponseBase::httpHeaderField):
3687 (WebCore::ResourceResponseBase::setHTTPHeaderField):
3688 (WebCore::ResourceResponseBase::httpHeaderFields):
3689 (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3690 (WebCore::ResourceResponseBase::date):
3691 (WebCore::ResourceResponseBase::age):
3692 (WebCore::ResourceResponseBase::expires):
3693 (WebCore::ResourceResponseBase::lastModified):
3694 (WebCore::ResourceResponseBase::isAttachment):
3695 (WebCore::ResourceResponseBase::setLastModifiedDate):
3696 (WebCore::ResourceResponseBase::lastModifiedDate):
3697 (WebCore::ResourceResponseBase::wasCached):
3698 (WebCore::ResourceResponseBase::connectionReused):
3699 (WebCore::ResourceResponseBase::setConnectionReused):
3700 (WebCore::ResourceResponseBase::connectionID):
3701 (WebCore::ResourceResponseBase::setConnectionID):
3702 (WebCore::ResourceResponseBase::resourceLoadTiming):
3703 (WebCore::ResourceResponseBase::setResourceLoadTiming):
3704 (WebCore::ResourceResponseBase::resourceLoadInfo):
3705 (WebCore::ResourceResponseBase::setResourceLoadInfo):
3706 (WebCore::ResourceResponseBase::lazyInit):
3707 * platform/network/ResourceResponseBase.h:
3708 (WebCore::ResourceResponseBase::platformLazyInit):
3709 * platform/network/cf/ResourceResponse.h:
3710 (WebCore::ResourceResponse::ResourceResponse):
3711 (WebCore::ResourceResponse::memoryUsage):
3712 * platform/network/cf/ResourceResponseCFNet.cpp:
3713 (WebCore::ResourceResponse::platformLazyInit):
3714 * platform/network/mac/ResourceResponseMac.mm:
3715 (WebCore::ResourceResponse::platformLazyInit):
3717 2011-04-01 Matthew Delaney <mdelaney@apple.com>
3719 Reviewed by Simon Fraser.
3721 Behavior of isAccelerated() for a IOSurface-backed canvas should be consistent with accelerated status of its ImageBuffer
3722 https://bugs.webkit.org/show_bug.cgi?id=57651
3724 No new tests. This patch does not affect outward behavior.
3726 * html/canvas/CanvasRenderingContext2D.cpp:
3727 (WebCore::CanvasRenderingContext2D::isAccelerated):
3728 * platform/graphics/ImageBuffer.h:
3729 (WebCore::ImageBuffer::isAccelerated):
3731 2011-04-01 Daniel Bates <dbates@rim.com>
3733 Reviewed by Darin Adler.
3735 Frame's noResize attribute can not be set by JavaScript
3736 https://bugs.webkit.org/show_bug.cgi?id=14845
3738 Tests: fast/frames/frame-inherit-noresize-from-frameset.html
3739 fast/frames/frame-programmatic-noresize.html
3740 fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html
3741 fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html
3743 Implements support to programmatically allow and disallow frame resizing.
3745 Currently, HTMLFrameElement::parseMappedAttribute() is hardcoded to disallow frame resize (i.e.
3746 m_noResize = true) when either the noresize DOM attribute is specified (or existed at some
3747 point in time) or the value of the noResize attribute is modified. Instead we should allow/disallow
3748 frame resize depending on the presence of the noresize DOM attribute/the value of the noResize
3751 * html/HTMLFrameElement.cpp:
3752 (WebCore::HTMLFrameElement::HTMLFrameElement):
3753 (WebCore::HTMLFrameElement::noResize): Made this a non-inline function since this
3754 code path isn't performance critical.
3755 (WebCore::HTMLFrameElement::attach): Removed code to inherit noresize attribute from
3756 parent <frameset> since this functionality is part of RenderFrameSet::computeEdgeInfo().
3757 (WebCore::HTMLFrameElement::parseMappedAttribute):
3758 * html/HTMLFrameElement.h:
3759 * rendering/RenderFrame.cpp:
3760 (WebCore::RenderFrame::updateFromElement): Added.
3761 * rendering/RenderFrame.h:
3762 * rendering/RenderFrameSet.cpp:
3763 (WebCore::RenderFrameSet::notifyFrameEdgeInfoChanged): Added.
3764 * rendering/RenderFrameSet.h:
3766 2011-04-01 Michael Saboff <msaboff@apple.com>
3768 Reviewed by Darin Adler.
3770 Cached Resource Overhead Space Usage and Accounting Inaccurate
3771 https://bugs.webkit.org/show_bug.cgi?id=57488
3773 Changed the fixed overhead value for ResourceResponse to 3800 bytes.
3774 Modified ResourceResponse::platformLazyInit() to handle "base" level
3775 attributes or all attributes. The base attributes, like URL, status
3776 code, mime type and a few header fields (mostly cache related) are
3777 suitable for most resources. This reduces the per resource memory
3778 needs by over 1K bytes per resource thus saving memory in the cache.
3779 Collectively, these two changes bring the overhead memory calculation
3780 in line with reality.
3782 No new tests added due to existing tests cover areas of change and
3783 there is no functional change. The change is limited to reducing
3784 memory usage along existing paths.
3786 * loader/cache/CachedResource.cpp:
3787 (WebCore::CachedResource::canUseCacheValidator):
3788 * platform/network/ResourceResponseBase.cpp:
3789 (WebCore::ResourceResponseBase::isHTTP):
3790 (WebCore::ResourceResponseBase::url):
3791 (WebCore::ResourceResponseBase::setURL):
3792 (WebCore::ResourceResponseBase::mimeType):
3793 (WebCore::ResourceResponseBase::setMimeType):
3794 (WebCore::ResourceResponseBase::expectedContentLength):
3795 (WebCore::ResourceResponseBase::setExpectedContentLength):
3796 (WebCore::ResourceResponseBase::textEncodingName):
3797 (WebCore::ResourceResponseBase::setTextEncodingName):
3798 (WebCore::ResourceResponseBase::suggestedFilename):
3799 (WebCore::ResourceResponseBase::setSuggestedFilename):
3800 (WebCore::ResourceResponseBase::httpStatusCode):
3801 (WebCore::ResourceResponseBase::setHTTPStatusCode):
3802 (WebCore::ResourceResponseBase::httpHeaderField):
3803 (WebCore::ResourceResponseBase::setHTTPHeaderField):
3804 (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3805 (WebCore::ResourceResponseBase::hasCacheValidatorFields):
3806 (WebCore::ResourceResponseBase::date):
3807 (WebCore::ResourceResponseBase::age):
3808 (WebCore::ResourceResponseBase::expires):
3809 (WebCore::ResourceResponseBase::lastModified):
3810 (WebCore::ResourceResponseBase::lazyInit):
3811 * platform/network/ResourceResponseBase.h:
3812 (WebCore::ResourceResponseBase::platformLazyInit):
3813 * platform/network/cf/ResourceResponse.h:
3814 (WebCore::ResourceResponse::ResourceResponse):
3815 (WebCore::ResourceResponse::memoryUsage):
3816 * platform/network/cf/ResourceResponseCFNet.cpp:
3817 * platform/network/mac/ResourceResponseMac.mm:
3818 (WebCore::ResourceResponse::platformLazyInit):
3820 2011-04-01 Timothy Hatcher <timothy@apple.com>
3822 Make momentum scroll event latching work in WebKit2 on Mac.
3824 <rdar://problem/8751861>
3826 Reviewed by Darin Adler.
3828 * WebCore.exp.in: Remove _wkIsLatchingWheelEvent, add _wkGetNSEventMomentumPhase.
3829 * page/EventHandler.cpp:
3830 (WebCore::EventHandler::handleWheelEvent): Set m_useLatchedWheelEventNode based on the
3831 event's momentumPhase.
3832 * page/mac/EventHandlerMac.mm:
3833 (WebCore::EventHandler::wheelEvent): Remove the setting of m_useLatchedWheelEventNode.
3834 It is now done in EventHandler::handleWheelEvent.
3835 * platform/mac/WebCoreSystemInterface.h: Remove wkIsLatchingWheelEvent, add wkGetNSEventMomentumPhase.
3836 * platform/mac/WebCoreSystemInterface.mm: Ditto.
3837 * platform/mac/WheelEventMac.mm:
3838 (WebCore::momentumPhaseForEvent): Return a phase on older Mac system by using wkGetNSEventMomentumPhase.
3840 2011-04-01 Steve Block <steveblock@google.com>
3842 Reviewed by Jeremy Orlow.
3844 JavaClass should be an interface and free of JNI types
3845 https://bugs.webkit.org/show_bug.cgi?id=57533
3847 This patch fixes JavaClass for V8 only.
3849 It factors out a JavaClass interface which does not use JNI types.
3850 This will allow the Java bridge to be used with objects that
3851 don't use JNI directly. The existing jobject-backed
3852 implementation is moved to a new JavaClassJobject class which
3853 implements the interface.
3855 No new tests, refactoring only.
3857 * Android.v8bindings.mk:
3859 * bridge/jni/v8/JavaClassJobjectV8.cpp:
3860 (JavaClassJobject::JavaClassJobject):
3861 (JavaClassJobject::~JavaClassJobject):
3862 (JavaClassJobject::methodsNamed):
3863 (JavaClassJobject::fieldNamed):
3864 * bridge/jni/v8/JavaClassJobjectV8.h: Copied from Source/WebCore/bridge/jni/v8/JavaClassV8.h.
3865 * bridge/jni/v8/JavaClassV8.h:
3866 (JSC::Bindings::JavaClass::~JavaClass):
3867 * bridge/jni/v8/JavaInstanceV8.cpp:
3868 (JavaInstance::getClass):
3870 2011-04-01 Jaehun Lim <ljaehun.lim@samsung.com>
3872 Unreviewed build fix.
3874 Fix build break when font backend is Pango.
3875 Pango is missed in changeset 80589.
3877 https://bugs.webkit.org/show_bug.cgi?id=57609
3879 * platform/graphics/pango/FontPlatformData.h:
3880 (WebCore::FontPlatformData::setOrientation):
3882 2011-04-01 Sheriff Bot <webkit.review.bot@gmail.com>
3884 Unreviewed, rolling out r82687.
3885 http://trac.webkit.org/changeset/82687
3886 https://bugs.webkit.org/show_bug.cgi?id=57643
3888 This patch broke accessibility aria-treegrid test in Mac
3889 (Requested by msanchez on #webkit).
3891 * accessibility/AccessibilityARIAGrid.cpp:
3892 * accessibility/AccessibilityARIAGrid.h:
3893 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3895 * accessibility/mac/AccessibilityObjectWrapper.mm:
3897 2011-03-31 Abhishek Arya <inferno@chromium.org>
3899 Reviewed by Andreas Kling.
3901 Whenever a relayout is trigger for SVGPath, make sure
3902 to clear its previous marker layout info. This helps
3903 to prevent removed markers from being used.
3904 https://bugs.webkit.org/show_bug.cgi?id=57492
3906 Test: svg/dom/path-marker-removed-crash.svg
3908 * rendering/svg/RenderSVGPath.cpp:
3909 (WebCore::RenderSVGPath::layout):
3910 * rendering/svg/SVGMarkerLayoutInfo.cpp:
3911 (WebCore::SVGMarkerLayoutInfo::clear):
3912 * rendering/svg/SVGMarkerLayoutInfo.h:
3914 2011-04-01 Rob Buis <rwlbuis@gmail.com>
3916 Reviewed by Nikolas Zimmermann.
3918 https://bugs.webkit.org/show_bug.cgi?id=55750
3919 SVG <image> referenced by <use> is displayed incorrectly
3921 Reintroduce old behaviour for valid base URI, for invalid
3922 keep using document base URI.
3923 Fixes regression of W3C-SVG-1.1/struct-image-07-t.svg.
3925 Test: svg/custom/image-base-uri.svg
3927 * svg/SVGImageLoader.cpp:
3928 (WebCore::SVGImageLoader::sourceURI):
3930 2011-04-01 Mario Sanchez Prada <msanchez@igalia.com>
3932 Reviewed by Chris Fleizach.
3934 ARIA Grid tables should return GridRole in roleValue() method
3935 https://bugs.webkit.org/show_bug.cgi?id=57614
3937 This change does not need any test since it doesn't change anything
3938 from the point of view of the consumers (Assistive Technoglogies).
3939 It's just an internal change to simplify identifying HTML and ARIA
3940 tables by calling to the AccessibilityObject::roleValue method.
3942 * accessibility/AccessibilityARIAGrid.h:
3943 * accessibility/AccessibilityARIAGrid.cpp:
3944 (WebCore::AccessibilityARIAGrid::roleValue): Return GridRole.
3946 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3947 (atkRole): Removed unneeded comment.
3949 * accessibility/mac/AccessibilityObjectWrapper.mm: Map GridRole to
3950 NSAccessibilityTableRole, to keep the same behaviour.
3952 2011-04-01 MORITA Hajime <morrita@google.com>
3954 Reviewed by Dimitri Glazkov.
3956 <meter> can only support horizontal indicator
3957 https://bugs.webkit.org/show_bug.cgi?id=56001
3959 - Removed code which deals with the direction and
3960 left the horizontal path.
3961 - Removed "horizontal" from related names which is now
3964 * css/CSSSelector.cpp:
3965 (WebCore::CSSSelector::pseudoId):
3966 (WebCore::nameToPseudoTypeMap):
3967 (WebCore::CSSSelector::extractPseudoType):
3968 * css/CSSSelector.h:
3970 (meter::-webkit-meter-bar):
3971 (meter::-webkit-meter-optimum-value):
3972 (meter::-webkit-meter-suboptimal-value):
3973 (meter::-webkit-meter-even-less-good-value):
3974 * rendering/RenderMeter.cpp:
3975 (WebCore::RenderMeter::~RenderMeter):
3976 (WebCore::RenderMeter::createPart):
3977 (WebCore::RenderMeter::updateFromElement):
3978 (WebCore::RenderMeter::layoutParts):
3979 (WebCore::RenderMeter::styleDidChange):
3980 (WebCore::RenderMeter::shouldHaveParts):
3981 (WebCore::RenderMeter::valuePartRect):
3982 (WebCore::RenderMeter::valuePseudoId):
3983 (WebCore::RenderMeter::barPseudoId):
3984 (WebCore::RenderMeter::detachShadows):
3985 (WebCore::RenderMeter::updateShadows):
3986 * rendering/RenderMeter.h:
3987 (WebCore::RenderMeter::shadowAttached):
3988 * rendering/RenderTheme.cpp:
3989 (WebCore::RenderTheme::supportsMeter):
3990 * rendering/RenderTheme.h:
3991 * rendering/RenderThemeMac.h:
3992 * rendering/RenderThemeMac.mm:
3993 (WebCore::RenderThemeMac::paintMeter):
3994 (WebCore::RenderThemeMac::supportsMeter):
3995 * rendering/style/RenderStyleConstants.h:
3997 2011-03-23 Pavel Podivilov <podivilov@chromium.org>
3999 Reviewed by Pavel Feldman.
4001 Web Inspector: fix reveal line in formatted script.
4002 https://bugs.webkit.org/show_bug.cgi?id=56941
4004 * inspector/front-end/BreakpointsSidebarPane.js:
4005 (WebInspector.JavaScriptBreakpointsSidebarPane):
4006 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointClicked):
4007 * inspector/front-end/DebuggerPresentationModel.js:
4008 (WebInspector.DebuggerPresentationModel.prototype.sourceFileForScriptURL):
4009 * inspector/front-end/NetworkPanel.js:
4010 (WebInspector.NetworkPanel.prototype.canShowAnchorLocation):
4011 (WebInspector.NetworkPanel.prototype.showAnchorLocation):
4012 * inspector/front-end/Panel.js:
4013 (WebInspector.Panel.prototype.canShowAnchorLocation):
4014 (WebInspector.Panel.prototype.showAnchorLocation):
4015 * inspector/front-end/ResourcesPanel.js:
4016 (WebInspector.ResourcesPanel.prototype.canShowAnchorLocation):
4017 (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
4018 (WebInspector.ResourcesPanel.prototype.showResource):
4019 * inspector/front-end/ScriptsPanel.js:
4020 (WebInspector.ScriptsPanel):
4021 (WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
4022 (WebInspector.ScriptsPanel.prototype.showAnchorLocation):
4023 (WebInspector.ScriptsPanel.prototype._showSourceLine):
4024 * inspector/front-end/SourceFrame.js:
4025 (WebInspector.SourceFrame.prototype.highlightLine):
4026 (WebInspector.SourceFrame.prototype._createTextViewer):
4027 * inspector/front-end/inspector.js:
4028 (WebInspector.documentClick.followLink):
4029 (WebInspector.documentClick):
4030 (WebInspector._showAnchorLocation):
4032 2011-04-01 Pavel Podivilov <podivilov@chromium.org>
4034 Reviewed by Yury Semikhatsky.
4036 Web Inspector: make editScriptSource a Script's method.
4037 https://bugs.webkit.org/show_bug.cgi?id=57615
4039 * inspector/front-end/DebuggerModel.js:
4040 (WebInspector.DebuggerModel.prototype.editScriptSource):
4041 (WebInspector.DebuggerModel.prototype._didEditScriptSource):
4042 * inspector/front-end/Script.js:
4043 (WebInspector.Script.prototype.requestSource):
4044 (WebInspector.Script.prototype.editSource):
4046 2011-04-01 Pavel Feldman <pfeldman@google.com>
4048 Reviewed by Yury Semikhatsky.
4050 Web Inspector: event should have "data" attribute, not "body"
4051 https://bugs.webkit.org/show_bug.cgi?id=57628
4053 * inspector/CodeGeneratorInspector.pm:
4055 2011-04-01 Pavel Podivilov <podivilov@chromium.org>
4057 Reviewed by Yury Semikhatsky.
4059 Web Inspector: checkboxes are broken in xhr breakpoints sidebar pane.
4060 https://bugs.webkit.org/show_bug.cgi?id=57610
4062 * inspector/front-end/BreakpointsSidebarPane.js:
4063 (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
4065 2011-04-01 Alexander Pavlov <apavlov@chromium.org>
4067 Reviewed by Yury Semikhatsky.
4069 Web Inspector: up/down keys are not treating hex numbers properly while editing styles.
4070 https://bugs.webkit.org/show_bug.cgi?id=40522
4072 Drive-by: fix inc/dec for numbers like ".5"
4074 Test: inspector/styles/up-down-numerics-and-colors.html
4076 * inspector/front-end/StylesSidebarPane.js:
4077 (WebInspector.StylePropertyTreeElement.prototype):
4079 2011-03-30 Pavel Podivilov <podivilov@chromium.org>
4081 Reviewed by Pavel Feldman.
4083 Web Inspector: remove dead code from Script.js.
4084 https://bugs.webkit.org/show_bug.cgi?id=57454
4086 * inspector/front-end/DebuggerModel.js:
4087 (WebInspector.DebuggerModel.prototype._parsedScriptSource):
4088 (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
4089 * inspector/front-end/Script.js:
4090 (WebInspector.Script):
4091 (WebInspector.Script.prototype.requestSource.didGetScriptSource):
4092 (WebInspector.Script.prototype.requestSource):
4094 2011-04-01 Sheriff Bot <webkit.review.bot@gmail.com>
4096 Unreviewed, rolling out r82667.
4097 http://trac.webkit.org/changeset/82667
4098 https://bugs.webkit.org/show_bug.cgi?id=57612
4100 Breaks Leopard layout tests (Requested by podivilov on
4104 * inspector/front-end/DebuggerPresentationModel.js:
4105 (WebInspector.DebuggerPresentationModel):
4106 (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
4108 2011-03-30 Pavel Podivilov <podivilov@chromium.org>
4110 Reviewed by Pavel Feldman.
4112 Web Inspector: remove unused SourceFrameContent class.