1 2011-03-17 Sam Weinig <sam@webkit.org>
8 2011-03-17 Ryosuke Niwa <rniwa@webkit.org>
10 Reviewed by Adele Peterson and Enrica Casucci.
12 Assert that editing does not ignore position's anchorNode if position is an offset in anchor
13 https://bugs.webkit.org/show_bug.cgi?id=56027
18 (WebCore::Element::updateFocusAppearance): "this" can be an input element so can't always instantiate
19 a position inside the node. Call firstPositionInOrBeforeNode instead.
20 * editing/ReplaceSelectionCommand.cpp:
21 (WebCore::positionAvoidingPrecedingNodes): Exit early when a node's content is ignored by editing instead
22 of just when the node is br.
23 * editing/htmlediting.cpp:
24 (WebCore::lastEditablePositionBeforePositionInRoot): The shadow ancestor node is usually an input element
25 so don't instantiate a position inside it. Call firstPositionInOrBeforeNode instead.
27 2011-03-17 Sheriff Bot <webkit.review.bot@gmail.com>
29 Unreviewed, rolling out r81369.
30 http://trac.webkit.org/changeset/81369
31 https://bugs.webkit.org/show_bug.cgi?id=56579
33 breaks debugger test (Requested by podivilov on #webkit).
35 * inspector/front-end/DebuggerPresentationModel.js:
36 (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
37 (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
38 (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
39 (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
40 (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
41 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
42 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
43 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
44 (WebInspector.DebuggerPresentationModel.prototype._encodeSourceLocation):
45 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
46 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
47 (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
48 (WebInspector.DebuggerPresentationModel.prototype.reset):
49 * inspector/front-end/ScriptsPanel.js:
50 (WebInspector.ScriptsPanel):
51 (WebInspector.ScriptsPanel.prototype._parsedScriptSource):
52 (WebInspector.ScriptsPanel.prototype._failedToParseScriptSource):
53 (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
54 (WebInspector.ScriptsPanel.prototype._addScript):
55 (WebInspector.ScriptsPanel.prototype._resourceForURL):
56 (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
57 (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelectAndShowSourceFrameIfNeeded):
58 (WebInspector.ScriptsPanel.prototype._showSourceFrame):
59 (WebInspector.ScriptsPanel.prototype._recreateSourceFrame):
60 (WebInspector.ScriptsPanel.prototype._sourceFileIdForScript):
61 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
62 (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
64 2011-03-17 Ryosuke Niwa <rniwa@webkit.org>
66 Reviewed by Justin Garcia.
68 Assert that editing does not ignore position's anchorNode if position is an offset in anchor
69 https://bugs.webkit.org/show_bug.cgi?id=56027
71 Added the assertion in Position::Position and Position::moveToPosition. This assertion catches
72 places where we instantiate positions inside a node on which editingIgnoresContent returns true.
74 Test: editing/execCommand/button.html
77 (WebCore::Position::Position): Added an assertion.
78 (WebCore::Position::moveToPosition): Ditto.
79 * dom/PositionIterator.cpp:
80 (WebCore::PositionIterator::operator Position): Avoid creating a position immediately below
81 a node whose content is ignored by editing. While this does not avoid creation of positions
82 inside ignored contents completely, it works in most cases. Filed the bug 56027 to resolve
83 the underlying problem. Without this change, the assertion hits in existing layout tests.
84 cannot be tested directly.
85 * editing/ApplyStyleCommand.cpp:
86 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Call firstPositionInOrBeforeNode
87 instead of firstPositionInNode because startNode may as well be a br element. Without this change,
88 the assertion hits in existing layout tests.
89 * editing/htmlediting.cpp:
90 (WebCore::canHaveChildrenForEditing): button is editable so content is not ignored. Added a test
92 * editing/visible_units.cpp:
93 (WebCore::previousBoundary): Added a FIXME.
94 (WebCore::startPositionForLine): Because br can also have an inline text box, checking that
95 startBox is an inline text box isn't an adequate to instantiate a position inside startNode.
96 Call startNode->isTextNode() instead. Without this change, the assertion hits in existing layout
99 2011-03-17 Pavel Podivilov <podivilov@chromium.org>
101 Reviewed by Pavel Feldman.
103 Web Inspector: extract content loading logic from scripts panel.
104 https://bugs.webkit.org/show_bug.cgi?id=55237
106 Encapsulate source files creation logic in debugger presentation model
107 to support source mappings in a pluggable way.
109 * inspector/front-end/DebuggerPresentationModel.js:
110 (WebInspector.DebuggerPresentationModel.prototype.sourceFile):
111 (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent.else.didRequestSource):
112 (WebInspector.DebuggerPresentationModel.prototype.requestSourceFileContent):
113 (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
114 (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
115 (WebInspector.DebuggerPresentationModel.prototype._addScript.else.resourceFinished):
116 (WebInspector.DebuggerPresentationModel.prototype._addScript):
117 (WebInspector.DebuggerPresentationModel.prototype._ensureSourceFileAdded):
118 (WebInspector.DebuggerPresentationModel.prototype._resourceForURL):
119 (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
120 (WebInspector.DebuggerPresentationModel.prototype._sourceFileAdded):
121 (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
122 (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
123 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
124 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
125 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
126 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
127 (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
128 (WebInspector.DebuggerPresentationModel.prototype._actualLocationToSourceLocation):
129 (WebInspector.DebuggerPresentationModel.prototype.reset):
130 * inspector/front-end/ScriptsPanel.js:
131 (WebInspector.ScriptsPanel):
132 (WebInspector.ScriptsPanel.prototype._sourceFileAdded):
133 (WebInspector.ScriptsPanel.prototype._showSourceFrame):
134 (WebInspector.ScriptsPanel.prototype._sourceFileChanged):
135 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
136 (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
138 2011-03-17 Pavel Feldman <pfeldman@chromium.org>
140 Reviewed by Yury Semikhatsky.
142 Web Inspector: add types markup to the IDL, remove Value types from the protocol.
143 https://bugs.webkit.org/show_bug.cgi?id=56562
145 * inspector/ConsoleMessage.cpp:
146 (WebCore::ConsoleMessage::addToFrontend):
147 * inspector/InjectedScript.cpp:
148 (WebCore::InjectedScript::evaluate):
149 (WebCore::InjectedScript::evaluateOn):
150 (WebCore::InjectedScript::evaluateOnCallFrame):
151 (WebCore::InjectedScript::getProperties):
152 (WebCore::InjectedScript::setPropertyValue):
153 (WebCore::InjectedScript::callFrames):
154 (WebCore::InjectedScript::makeCall):
155 (WebCore::InjectedScript::makeObjectCall):
156 * inspector/InjectedScript.h:
157 * inspector/InjectedScriptSource.js:
159 * inspector/Inspector.idl:
160 * inspector/InspectorApplicationCacheAgent.cpp:
161 (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
162 * inspector/InspectorApplicationCacheAgent.h:
163 * inspector/InspectorCSSAgent.cpp:
164 (WebCore::InspectorCSSAgent::getStylesForNode):
165 (WebCore::InspectorCSSAgent::getInlineStyleForNode):
166 (WebCore::InspectorCSSAgent::getComputedStyleForNode):
167 (WebCore::InspectorCSSAgent::getStyleSheet):
168 (WebCore::InspectorCSSAgent::setPropertyText):
169 (WebCore::InspectorCSSAgent::toggleProperty):
170 (WebCore::InspectorCSSAgent::setRuleSelector):
171 (WebCore::InspectorCSSAgent::addRule):
172 * inspector/InspectorCSSAgent.h:
173 * inspector/InspectorDOMAgent.cpp:
174 (WebCore::InspectorDOMAgent::resolveNode):
175 * inspector/InspectorDOMAgent.h:
176 * inspector/InspectorDebuggerAgent.cpp:
177 (WebCore::InspectorDebuggerAgent::editScriptSource):
178 (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
179 (WebCore::InspectorDebuggerAgent::currentCallFrames):
180 * inspector/InspectorDebuggerAgent.h:
181 * inspector/InspectorResourceAgent.cpp:
182 (WebCore::InspectorResourceAgent::identifierForInitialRequest):
183 * inspector/InspectorRuntimeAgent.cpp:
184 (WebCore::InspectorRuntimeAgent::evaluate):
185 (WebCore::InspectorRuntimeAgent::evaluateOn):
186 (WebCore::InspectorRuntimeAgent::getProperties):
187 (WebCore::InspectorRuntimeAgent::setPropertyValue):
188 * inspector/InspectorRuntimeAgent.h:
189 * inspector/ScriptCallStack.cpp:
190 (WebCore::ScriptCallStack::buildInspectorArray):
191 * inspector/ScriptCallStack.h:
192 * inspector/TimelineRecordFactory.cpp:
193 (WebCore::TimelineRecordFactory::createGenericRecord):
194 * inspector/front-end/NetworkManager.js:
195 (WebInspector.NetworkDispatcher.prototype._createResource):
197 2011-03-17 Sheriff Bot <webkit.review.bot@gmail.com>
199 Unreviewed, rolling out r81350.
200 http://trac.webkit.org/changeset/81350
201 https://bugs.webkit.org/show_bug.cgi?id=56560
203 "Breaks twenty Chromium Webkit Win builder webkit_gpu_tests"
204 (Requested by apavlov on #webkit).
207 * platform/graphics/chromium/GLES2Canvas.cpp:
208 (WebCore::GLES2Canvas::State::State):
209 (WebCore::GLES2Canvas::clearRect):
210 (WebCore::GLES2Canvas::fillPath):
211 (WebCore::GLES2Canvas::fillRect):
212 (WebCore::GLES2Canvas::clipPath):
213 (WebCore::GLES2Canvas::restore):
214 (WebCore::GLES2Canvas::drawTexturedRect):
215 (WebCore::GLES2Canvas::drawTexturedRectTile):
216 (WebCore::GLES2Canvas::drawQuad):
217 * platform/graphics/chromium/GLES2Canvas.h:
218 * platform/graphics/gpu/BicubicShader.cpp: Removed.
219 * platform/graphics/gpu/BicubicShader.h: Removed.
220 * platform/graphics/gpu/ConvolutionShader.cpp: Removed.
221 * platform/graphics/gpu/ConvolutionShader.h: Removed.
222 * platform/graphics/gpu/DrawingBuffer.h:
223 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
224 (WebCore::SharedGraphicsContext3D::create):
225 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
226 * platform/graphics/gpu/SharedGraphicsContext3D.h:
227 * platform/graphics/skia/GraphicsContextSkia.cpp:
228 (WebCore::GraphicsContext::setPlatformShadow):
229 * platform/graphics/skia/PlatformContextSkia.cpp:
230 (WebCore::PlatformContextSkia::canAccelerate):
232 2011-03-17 Mikhail Naganov <mnaganov@chromium.org>
234 Reviewed by Yury Semikhatsky.
236 Web Inspector: Clean up Inspector strings.
237 https://bugs.webkit.org/show_bug.cgi?id=56557
239 * English.lproj/localizedStrings.js:
241 2011-03-14 Pavel Podivilov <podivilov@chromium.org>
243 Reviewed by Yury Semikhatsky.
245 Web Inspector: refactor event listener breakpoints.
246 https://bugs.webkit.org/show_bug.cgi?id=56305
248 - restore event listener breakpoints one by one instead of using setAllBrowserBreakpoints
249 - store event listener breakpoints in a separate separate setting
250 - move presentation-related code from BreakpointManager to EventListenerBreakpointsSidebarPane
252 Test: inspector/debugger/event-listener-breakpoints.html
254 * inspector/Inspector.idl:
255 * inspector/InspectorAgent.cpp:
256 (WebCore::InspectorAgent::setFrontend):
257 * inspector/InspectorBrowserDebuggerAgent.cpp:
258 (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
259 (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
260 (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
261 (WebCore::InspectorBrowserDebuggerAgent::clear):
262 * inspector/InspectorBrowserDebuggerAgent.h:
263 * inspector/InspectorInstrumentation.cpp:
264 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
265 * inspector/front-end/BreakpointManager.js:
266 (WebInspector.BreakpointManager.prototype.setEventListenerBreakpoint):
267 (WebInspector.BreakpointManager.prototype.removeEventListenerBreakpoint):
268 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
269 (WebInspector.BreakpointManager.prototype._projectChanged):
270 (WebInspector.BreakpointManager.prototype._saveBreakpoints):
271 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
272 (WebInspector.BreakpointManager.prototype._createDOMBreakpointId):
273 * inspector/front-end/BreakpointsSidebarPane.js:
274 (WebInspector.EventListenerBreakpointsSidebarPane):
275 (WebInspector.EventListenerBreakpointsSidebarPane.eventNameForUI):
276 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
277 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
278 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
279 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
280 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):
281 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
282 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.highlightBreakpoint):
283 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
284 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
285 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._restoreBreakpoints):
286 * inspector/front-end/CallStackSidebarPane.js:
287 (WebInspector.CallStackSidebarPane.prototype.update):
288 (WebInspector.CallStackSidebarPane.prototype.setStatus):
289 (WebInspector.CallStackSidebarPane.prototype._domBreakpointHit):
290 * inspector/front-end/ScriptsPanel.js:
291 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
292 (WebInspector.ScriptsPanel.prototype._clearInterface):
293 * inspector/front-end/Settings.js:
294 (WebInspector.Settings):
296 2011-03-16 Stephen White <senorblanco@chromium.org>
298 Reviewed by Kenneth Russell.
300 Implement GPU-accelerated shadows.
301 https://bugs.webkit.org/show_bug.cgi?id=56476
303 For hard shadows, we simply offset the CTM and draw in the shadow
304 color. For soft shadows, we use a separable Gaussian convolution,
305 with a bilinear downsample and Mitchell-Netravali upsample in order to
309 Add BicubicShader and ConvolutionShader to the build.
310 * platform/graphics/chromium/GLES2Canvas.cpp:
311 (WebCore::GLES2Canvas::State::State):
312 Add shadow-related members to the GLES2Canvas::State
313 (WebCore::GLES2Canvas::State::shadowActive):
314 Add a helper function to know if shadows are active.
315 (WebCore::GLES2Canvas::clearRect):
316 (WebCore::GLES2Canvas::scissorClear):
317 Refactor the scissor clearing function out of clearRect().
318 (WebCore::GLES2Canvas::fillPath):
319 Add hook for shadow rendering in paths. Bind framebuffer at this level.
320 (WebCore::GLES2Canvas::fillRect):
321 Add hook for shadow rendering in rects. Bind framebuffer at this level.
322 (WebCore::GLES2Canvas::fillRectInternal):
323 Rename fillRect() -> fillRectInternal(), which does bind its vertex
324 buffer, but does not bind the framebuffer.
325 (WebCore::GLES2Canvas::setShadowColor):
326 (WebCore::GLES2Canvas::setShadowOffset):
327 (WebCore::GLES2Canvas::setShadowBlur):
328 (WebCore::GLES2Canvas::setShadowsIgnoreTransforms):
329 Implement graphicsContext-style setters for shadow parameters.
330 (WebCore::GLES2Canvas::clipPath):
331 Call fillPathInternal(), not fillPath().
332 (WebCore::GLES2Canvas::restore):
333 (WebCore::GLES2Canvas::drawTexturedRect):
334 Bind the framebuffer at this level. Do not bind vertices here (will
335 be done in drawTexturedQuad).
336 (WebCore::GLES2Canvas::drawTexturedRectTile):
337 drawQuad() -> drawTexturedQuad().
338 (WebCore::GLES2Canvas::convolveRect):
339 Implement one pass of a convolution filter (X or Y).
341 (WebCore::buildKernel):
342 Some helper functions to build a Gaussian convolution kernel.
343 (WebCore::GLES2Canvas::drawTexturedQuad):
344 Rename drawQuad() -> drawTexturedQuad(), to be more clear. Do not
345 bind the framebuffer at this level (it will be done higher).
346 (WebCore::GLES2Canvas::drawTexturedQuadMitchell):
347 Implement Mitchell-Netravali bicubic sampling, using BicubicShader.
348 (WebCore::GLES2Canvas::fillPathInternal):
349 Rename fillPath() -> fillPathInternal(), which does use quad vertices,
350 but does not bind the framebuffer or set the compositing mode.
351 (WebCore::GLES2Canvas::flipRect):
352 Implement a helper function to flip a rectangle in Y within the canvas.
353 (WebCore::GLES2Canvas::clearBorders):
354 Implement a helper function to clear an n-pixel border around a rect.
355 (WebCore::GLES2Canvas::beginShadowDraw):
356 Setup before drawing a primitive's shadow: for hard shadows, just
357 offset the CTM by the shadow offset. For soft shadows, bind to an
358 offscreen DrawingBuffer.
359 (WebCore::GLES2Canvas::endShadowDraw):
360 Tear-down after drawing a primitive's shadow: for hard shadows, just
361 restore the CTM. For soft shadows, downsample (if necessary), then
362 blur in X, blur in Y, upsample if necessary).
363 * platform/graphics/chromium/GLES2Canvas.h:
364 * platform/graphics/gpu/BicubicShader.cpp: Added.
365 (WebCore::BicubicShader::BicubicShader):
366 (WebCore::BicubicShader::create):
367 (WebCore::BicubicShader::use):
368 * platform/graphics/gpu/BicubicShader.h: Added.
369 Implement a bicubic image filtering shader.
370 * platform/graphics/gpu/ConvolutionShader.cpp: Added.
371 (WebCore::ConvolutionShader::ConvolutionShader):
372 (WebCore::ConvolutionShader::create):
373 (WebCore::ConvolutionShader::use):
374 * platform/graphics/gpu/ConvolutionShader.h: Added.
375 Implement a 1-dimensional convolution shader. In order to minimize
376 texture samples, this shader is parameterized at compile time by the
377 width of the convolution kernel.
378 * platform/graphics/gpu/DrawingBuffer.h:
379 (WebCore::DrawingBuffer::colorBuffer):
380 Add an accessor to retrieve a DrawingBuffer's texture ID.
381 * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
382 (WebCore::SharedGraphicsContext3D::create):
383 (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
384 (WebCore::SharedGraphicsContext3D::useBicubicProgram):
385 (WebCore::SharedGraphicsContext3D::useConvolutionProgram):
386 Create BicubicShader and cMaxKernelWidth ConvolutionShader's (one for
387 each possible kernel width).
388 (WebCore::SharedGraphicsContext3D::getOffscreenBuffer):
389 Implement a simple cache of offscreen DrawingBuffers, integer-indexed.
390 This is done to minimize the VRAM usage: only 2 buffers are used for
392 * platform/graphics/gpu/SharedGraphicsContext3D.h:
393 Add bicubic and convolution shader members, and useXXX() functions.
394 * platform/graphics/skia/GraphicsContextSkia.cpp:
395 (WebCore::GraphicsContext::setPlatformShadow):
396 Hook into GraphicsContextSkia's platform shadow setters to set
397 parameters on GLES2Canvas.
398 * platform/graphics/skia/PlatformContextSkia.cpp:
399 (WebCore::PlatformContextSkia::canAccelerate):
400 Remove shadows (loopers) from the list of things we can't accelerate.
402 2011-03-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
404 Reviewed by Andreas Kling.
406 Tiled backing store should only request repaint for updated areas
407 https://bugs.webkit.org/show_bug.cgi?id=56464
409 Reuse updateBackBuffer's dirty rectangle calculations to only
410 invalidate the necessary parts of the window.
412 * platform/graphics/Tile.h:
413 * platform/graphics/TiledBackingStore.cpp:
414 (WebCore::TiledBackingStore::updateTileBuffers):
415 * platform/graphics/qt/TileQt.cpp:
416 (WebCore::Tile::updateBackBuffer):
418 2011-03-17 Mikhail Naganov <mnaganov@chromium.org>
420 Reviewed by Pavel Feldman.
422 Web Inspector: [Chromium] Reduce memory consumption by detailed heap snapshots indexes.
423 https://bugs.webkit.org/show_bug.cgi?id=56395
425 * inspector/front-end/DetailedHeapshotGridNodes.js:
426 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
427 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
428 * inspector/front-end/HeapSnapshot.js:
429 (WebInspector.HeapSnapshotRetainerEdge): Added
430 (WebInspector.HeapSnapshotRetainerEdgeIterator): Added
431 (WebInspector.HeapSnapshotNode.prototype.get retainers):
432 (WebInspector.HeapSnapshot.prototype.dispose):
433 (WebInspector.HeapSnapshot.prototype.hasId):
434 (WebInspector.HeapSnapshot.prototype.retainers):
435 (WebInspector.HeapSnapshot.prototype._buildRetainers):
436 (WebInspector.HeapSnapshot.prototype._buildIdsList):
437 (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
438 (WebInspector.HeapSnapshot.prototype._findNodePositionInIndex):
439 (WebInspector.HeapSnapshot.prototype._findNearestNodeIndex):
440 (WebInspector.HeapSnapshot.prototype._getRetainerIndex):
441 (WebInspector.HeapSnapshot.prototype._markInvisibleEdges):
442 (WebInspector.HeapSnapshot.prototype._numbersComparator):
443 (WebInspector.HeapSnapshotPathFinder.prototype.get _lastEdge):
444 (WebInspector.HeapSnapshotPathFinder.prototype._nextEdgeIter):
445 (WebInspector.HeapSnapshotPathFinder.prototype._buildNextPath):
446 (WebInspector.HeapSnapshotPathFinder.prototype._pathToString):
448 2011-03-17 Sheriff Bot <webkit.review.bot@gmail.com>
450 Unreviewed, rolling out r81243.
451 http://trac.webkit.org/changeset/81243
452 https://bugs.webkit.org/show_bug.cgi?id=56471
454 Breaks GTK 64-bit Debug tests (Requested by podivilov on
457 * inspector/Inspector.idl:
458 * inspector/InspectorAgent.cpp:
459 (WebCore::InspectorAgent::setFrontend):
460 * inspector/InspectorBrowserDebuggerAgent.cpp:
461 (WebCore::InspectorBrowserDebuggerAgent::setFrontend):
462 (WebCore::InspectorBrowserDebuggerAgent::setAllBrowserBreakpoints):
463 (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
464 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
465 (WebCore::InspectorBrowserDebuggerAgent::discardBindings):
466 (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
467 (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
468 (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
469 (WebCore::InspectorBrowserDebuggerAgent::clear):
470 * inspector/InspectorBrowserDebuggerAgent.h:
471 * inspector/InspectorInstrumentation.cpp:
472 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
473 * inspector/front-end/BreakpointManager.js:
474 (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
475 (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
476 (WebInspector.BreakpointManager.prototype.setXHRBreakpoint):
477 (WebInspector.BreakpointManager.prototype.removeXHRBreakpoint):
478 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
479 (WebInspector.BreakpointManager.prototype._projectChanged):
480 (WebInspector.BreakpointManager.prototype._saveBreakpoints):
481 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
482 (WebInspector.BreakpointManager.prototype._createDOMBreakpointId):
483 (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
484 (WebInspector.EventListenerBreakpoint):
485 (WebInspector.EventListenerBreakpoint.prototype._enable):
486 (WebInspector.EventListenerBreakpoint.prototype._disable):
487 (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
488 (WebInspector.EventListenerBreakpointView):
489 (WebInspector.EventListenerBreakpointView.eventNameForUI):
490 (WebInspector.EventListenerBreakpointView.prototype.get eventName):
491 (WebInspector.EventListenerBreakpointView.prototype.compareTo):
492 (WebInspector.EventListenerBreakpointView.prototype.populateLabelElement):
493 (WebInspector.EventListenerBreakpointView.prototype.populateStatusMessageElement):
494 (WebInspector.EventListenerBreakpointView.prototype._uiEventName):
495 * inspector/front-end/BreakpointsSidebarPane.js:
496 (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
497 (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
498 (WebInspector.EventListenerBreakpointsSidebarPane):
499 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
500 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
501 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
502 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointAdded):
503 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointHitStateChanged):
504 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointRemoved):
505 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
506 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._projectChanged):
507 * inspector/front-end/CallStackSidebarPane.js:
508 (WebInspector.CallStackSidebarPane.prototype.update):
509 (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
510 (WebInspector.CallStackSidebarPane.prototype._xhrBreakpointHit):
511 (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
512 * inspector/front-end/ScriptsPanel.js:
513 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
514 (WebInspector.ScriptsPanel.prototype._clearInterface):
515 * inspector/front-end/Settings.js:
516 (WebInspector.Settings):
518 2011-03-17 Adam Barth <abarth@webkit.org>
520 Reviewed by Eric Seidel.
522 Add more ObjC++ files to the build
523 https://bugs.webkit.org/show_bug.cgi?id=56548
530 2011-03-17 Adam Barth <abarth@webkit.org>
532 Reviewed by Eric Seidel.
534 Add a few Objective-C++ files to the WebCore GYP build
535 https://bugs.webkit.org/show_bug.cgi?id=56547
541 2011-03-17 Yuta Kitamura <yutak@chromium.org>
543 Unreviewed build fix.
545 Non-ASCII characters in XMLTreeViewer.{cpp,h}
546 https://bugs.webkit.org/show_bug.cgi?id=56549
548 * xml/XMLTreeViewer.cpp: Replace non-ASCII characters with ASCII equivalents.
549 * xml/XMLTreeViewer.h: Ditto.
551 2011-03-17 Adam Barth <abarth@webkit.org>
553 Reviewed by Eric Seidel.
555 Add plugins and bridge to the WebCore GYP build
556 https://bugs.webkit.org/show_bug.cgi?id=56546
562 2011-03-16 Jeff Johnson <github@lapcatsoftware.com>
564 Reviewed by Alexey Proskuryakov.
566 Logic error in -[WebHTMLView close]
567 https://bugs.webkit.org/show_bug.cgi?id=56445
569 The function setDraggingImageURL() is no longer called and can be deleted.
571 No new tests. Deleting dead code.
573 * page/DragController.h:
575 2011-03-16 Naoki Takano <takano.naoki@gmail.com>
577 Reviewed by Ryosuke Niwa.
579 Textarea maxlength doesn't account for newlines
580 https://bugs.webkit.org/show_bug.cgi?id=54443
582 When a user presses a return key, TypingCommand::insertLineBreak() is called.
583 So before append a new line, check if we can add the new line.
585 * editing/TypingCommand.cpp:
586 (WebCore::canAppendNewLineFeed): Implement new helper function to check if we can add new line.
587 (WebCore::TypingCommand::insertLineBreak): Added check logic before adding the new line.
588 (WebCore::TypingCommand::insertParagraphSeparator): Added check logic before adding the new line.
590 2011-03-16 Adam Barth <abarth@webkit.org>
592 Reviewed by Eric Seidel.
594 WebCore GYP build should build more derived sources
595 https://bugs.webkit.org/show_bug.cgi?id=56529
597 This patch brings us down to 597 link errors.
601 2011-03-16 Adam Barth <abarth@webkit.org>
603 Reviewed by Eric Seidel.
605 WebCore GYP should build (most) remaining source files
606 https://bugs.webkit.org/show_bug.cgi?id=56515
608 We're still not building all the files and we have 1305 link errors,
609 but this patch is progress.
613 * plugins/PluginStream.cpp:
615 2011-03-16 Dan Bernstein <mitz@apple.com>
617 Reviewed by Alexey Proskuryakov.
619 Update the default navigator.vendor value
620 https://bugs.webkit.org/show_bug.cgi?id=56449
622 * page/NavigatorBase.cpp: Updated the default value of
623 WEBCORE_NAVIGATOR_VENDOR.
625 2011-03-16 John Bauman <jbauman@chromium.org>
627 Reviewed by James Robinson.
629 texImage2D gets old contents of canvas
630 https://bugs.webkit.org/show_bug.cgi?id=56414
632 Always update the canvas contents in copiedImage, as there's no reason
633 to ask for an out-of-date image.
635 * html/HTMLCanvasElement.cpp:
636 (WebCore::HTMLCanvasElement::copiedImage):
638 2011-03-16 Adam Barth <abarth@webkit.org>
640 Reviewed by James Robinson.
642 Remove USE(BUILTIN_UTF8_CODEC)
643 https://bugs.webkit.org/show_bug.cgi?id=56508
645 * platform/text/TextCodecICU.cpp:
646 (WebCore::TextCodecICU::registerEncodingNames):
647 * platform/text/TextEncodingRegistry.cpp:
648 (WebCore::buildBaseTextCodecMaps):
650 2011-03-16 Joseph Pecoraro <joepeck@webkit.org>
652 Reviewed by Kenneth Rohde Christiansen.
654 Viewport no longer allows an auto value for "user-scalable"
655 https://bugs.webkit.org/show_bug.cgi?id=55416
657 This restores our behavior before r67376 the default "user-scalable"
658 behavior can be defined by a WebKit client if a value was not
659 explicitly provided in web content (via the viewport <meta> tag).
660 Here, all WebKit ports default to "yes" after computing
661 viewport arguments. However, in the future they may consider
662 changing the default user-scalable value based on the type
663 of the document being viewed, a user preference, or other reasons.
665 Covered by existing tests. Should be no changes.
667 * dom/ViewportArguments.cpp:
668 (WebCore::computeViewportAttributes): be explicit about 0.
669 (WebCore::findUserScalableValue): convert to return a float, the instance variable type.
670 * dom/ViewportArguments.h:
671 (WebCore::ViewportArguments::ViewportArguments): convert the boolean back to a float to
672 allow for 3 states. Explicit no, explicit yes, and ValueAuto to be defined by the
675 2011-03-16 David Levin <levin@chromium.org>
677 Reviewed by Dmitry Titov.
679 REGRESSION(r81289): Fix valgrind error (and crashes) when running the chromium unit test "test_shell_test".
681 Conditional jump or move depends on uninitialised value(s)
682 WebCore::RenderLayerCompositor::RenderLayerCompositor(WebCore::RenderView*) (third_party/WebKit/Source/WebCore/rendering/RenderLayerCompositor.cpp:117)
685 (WebCore::Settings::Settings):
687 2011-03-16 Beth Dakin <bdakin@apple.com>
689 Reviewed by Darin Adler.
691 Fix for https://bugs.webkit.org/show_bug.cgi?id=56493 Drag-scrolling overlay
692 scrollbars thumb in overflow regions does not work
694 <rdar://problem/9112688> Drag-scrolling overlay scrollbars thumb in overflow
695 regions does not work
697 Up until now, overlay scrollbars have always been treated in the Render Tree as if
698 they have a thickness of 0 because they should not affect layout. However, it is
699 important to consider their size when hit-testing because otherwise, we have this
700 bug! This patch adds a boolean parameter to overflowClipRect(),
701 RenderLayer::verticalScrollbarWidth(), and
702 RenderLayer::horizontalScrollbarHeight(). This bool indicates whether to include
703 the actual overlay scrollbar thickness. It defaults to false and is only sent is
704 as true from RenderBloc::nodeAtPoint().
706 * rendering/RenderBlock.cpp:
707 (WebCore::RenderBlock::nodeAtPoint):
708 * rendering/RenderBox.cpp:
709 (WebCore::RenderBox::overflowClipRect):
710 * rendering/RenderBox.h:
711 * rendering/RenderLayer.cpp:
712 (WebCore::RenderLayer::verticalScrollbarWidth):
713 (WebCore::RenderLayer::horizontalScrollbarHeight):
714 * rendering/RenderLayer.h:
715 * rendering/RenderTable.cpp:
716 (WebCore::RenderTable::overflowClipRect):
717 * rendering/RenderTable.h:
719 2011-03-16 Keith Kyzivat <keith.kyzivat@nokia.com>
721 Reviewed by Andreas Kling.
723 [Qt] Fix std::swap not found issue on mobile Qt devices.
724 https://bugs.webkit.org/show_bug.cgi?id=56463
726 Include <algorithm> in TextBreakIteratorQt.cpp so std::swap is found
727 on some Qt mobile devices.
729 No new tests: No tests needed - compilation verified manually.
731 * platform/text/qt/TextBreakIteratorQt.cpp:
732 (WebCore::acquireLineBreakIterator):
734 2011-03-16 Jarkko Sakkinen <jarkko.j.sakkinen@gmail.com>
736 Reviewed by Kenneth Rohde Christiansen.
738 [Qt] WebGL content not shown when accelerated compositing is enabled
739 https://bugs.webkit.org/show_bug.cgi?id=56339
741 Removed all previously implemented WebGL code from GraphicsLayerQt
742 because API has changed. GraphicsContext3D provides PlatformLayer
743 that is added as a child of GraphicsLayer and is therefore painted
744 through QGraphicsView pipeline.
746 * platform/graphics/GraphicsContext3D.h:
747 * platform/graphics/qt/GraphicsContext3DQt.cpp:
748 (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
749 (WebCore::GraphicsContext3DInternal::paint):
750 (WebCore::GraphicsContext3DInternal::boundingRect):
751 (WebCore::GraphicsContext3D::platformLayer):
752 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
753 (WebCore::GraphicsContext3D::reshape):
754 * platform/graphics/qt/GraphicsLayerQt.cpp:
755 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
756 (WebCore::GraphicsLayerQtImpl::paint):
757 (WebCore::GraphicsLayerQtImpl::flushChanges):
758 (WebCore::GraphicsLayerQt::setContentsToCanvas):
759 * platform/graphics/qt/GraphicsLayerQt.h:
761 2011-03-16 Ryosuke Niwa <rniwa@webkit.org>
763 Reviewed by Tony Chang.
765 Get rid of nearestMailBlockquote
766 https://bugs.webkit.org/show_bug.cgi?id=56439
768 Removed nearestMailBlockquote and replaced the calls to the function by calls
769 to enclosingNodeOfType and highestEnclosingNodeOfType.
771 Also fixed a bug in BreakBlockquoteCommand and DeleteSelectionCommand not to
772 respect editing boundaries. Added a test for the former command.
774 Test: editing/execCommand/break-non-editable-blockquote.html
776 * editing/BreakBlockquoteCommand.cpp:
777 (WebCore::BreakBlockquoteCommand::doApply): No longer crosses editing boundary
778 when looking for a Mail blockquote.
779 * editing/DeleteSelectionCommand.cpp:
780 (WebCore::DeleteSelectionCommand::saveTypingStyleState): Ditto.
781 (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
782 * editing/ReplaceSelectionCommand.cpp:
783 (WebCore::hasMatchingQuoteLevel):
784 (WebCore::handleStyleSpansBeforeInsertion):
785 (WebCore::ReplaceSelectionCommand::handleStyleSpans):
786 (WebCore::ReplaceSelectionCommand::doApply):
787 * editing/htmlediting.cpp:
788 (WebCore::enclosingNodeOfType): Check rule upfront to improve the performance.
789 (WebCore::highestEnclosingNodeOfType): Ditto; also add the missing check.
790 * editing/htmlediting.h:
791 (WebCore::firstPositionInOrBeforeNode): Added a null pointer check.
792 (WebCore::lastPositionInOrAfterNode): Ditto.
793 * editing/markup.cpp:
794 (WebCore::highestAncestorToWrapMarkup):
795 (WebCore::createMarkup):
797 2011-03-16 Jer Noble <jer.noble@apple.com>
799 Reviewed by Beth Dakin.
801 RenderFullScreen::createFullScreenStyle() leaks
802 https://bugs.webkit.org/show_bug.cgi?id=53384
804 Two problems: a) not calling release() on the style returned in setFullScreenRenderer
805 causes an unnecessary ref/deref, and b) the fullscreen renderer needs to be destroyed,
806 not just detached, when it is no longer needed.
809 (WebCore::Document::setFullScreenRenderer): Destroy the current renderer when a new one is set.
810 * rendering/RenderFullScreen.cpp:
811 (RenderFullScreen::createFullScreenStyle): release() the return value.
813 2011-03-16 Mike Reed <reed@google.com>
815 Reviewed by James Robinson.
817 Reestablish typeface/size/encoding when drawing stroked text
818 https://bugs.webkit.org/show_bug.cgi?id=56481
820 No new tests. LayoutTests/svg/css/composite-shadow-text.svg
822 * platform/graphics/skia/SkiaFontWin.cpp:
823 (WebCore::paintSkiaText):
825 2011-03-16 Daniel Sievers <sievers@google.com>
827 Reviewed by James Robinson.
829 Add setting to always force compositing mode
830 https://bugs.webkit.org/show_bug.cgi?id=56156
832 No new tests needed as this defaults to disabled (and is unfeasible
833 to be tested through property overriding at runtime).
836 (WebCore::Settings::setForceCompositingMode):
837 (WebCore::Settings::forceCompositingMode):
838 * rendering/RenderLayerCompositor.cpp:
839 (WebCore::RenderLayerCompositor::RenderLayerCompositor):
840 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
841 * rendering/RenderLayerCompositor.h:
843 2011-03-16 Vangelis Kokkevis <vangelis@chromium.org>
845 Reviewed by Kenneth Russell.
847 [chromium] Fixing backface visibility for transformed layers.
848 https://bugs.webkit.org/show_bug.cgi?id=56237
850 Test: platform/chromium/compositing/backface-visibility-transformed.html
852 * platform/graphics/chromium/LayerRendererChromium.cpp:
853 (WebCore::LayerRendererChromium::drawLayer):
855 2011-03-16 Dimitri Glazkov <dglazkov@chromium.org>
857 Reviewed by Darin Adler.
859 REGRESSION(r76147): Dragging slider thumb is impossible or results in drawing artifacts.
860 https://bugs.webkit.org/show_bug.cgi?id=56469
862 Technically, this is not a regression, but rather uncovering of an old
863 problem. When the RenderSlider::layout was written, the layout state was
864 pushed with a wrong offset. However, since the whole slider track was
865 always repainted, the problem didn't manifest itself until we actually
866 started being more precise in our repaints.
868 Test: fast/repaint/slider-thumb-float.html
870 * rendering/RenderSlider.cpp:
871 (WebCore::RenderSlider::layout): Changed to pass actual thumb offset
872 to the LayoutStateMaintainer, rather than thumb size.
874 2011-03-16 Dimitri Glazkov <dglazkov@chromium.org>
876 Reviewed by Eric Carlson.
878 Add play state callbacks to MediaControls, kill timeUpdate timer.
879 https://bugs.webkit.org/show_bug.cgi?id=56473
881 No change in behavior, covered by existing tests.
883 * html/HTMLMediaElement.cpp:
884 (WebCore::HTMLMediaElement::playbackProgressTimerFired): Added a call to
886 (WebCore::HTMLMediaElement::updatePlayState): Ditto.
887 * html/shadow/MediaControls.cpp:
888 (WebCore::MediaControls::MediaControls): Removed initialization of the timer.
889 (WebCore::MediaControls::playbackProgressed): Added.
890 (WebCore::MediaControls::playbackStarted): Added, for now routing to just
891 call playbackProgressed.
892 (WebCore::MediaControls::playbackStopped): Ditto.
893 (WebCore::MediaControls::update): Removed the code to start/stop the
894 timer that's now gone.
895 * html/shadow/MediaControls.h: Removed timer decls.
897 2011-03-16 Bill Budge <bbudge@chromium.org>
899 Reviewed by David Levin.
901 DocumentThreadableLoaderClient needs a protected default Constructor
902 https://bugs.webkit.org/show_bug.cgi?id=56479
904 No new tests. Exposes no new functionality.
906 * loader/DocumentThreadableLoaderClient.h:
907 (WebCore::DocumentThreadableLoaderClient::DocumentThreadableLoaderClient):
909 2011-03-16 David Levin <levin@chromium.org>
911 Chromium Leopard build fix attempt #2.
913 Same error as before.
914 * bindings/v8/V8GCController.cpp:
916 2011-03-16 David Levin <levin@chromium.org>
918 Chromium Leopard build fix attempt.
920 The error was 'WebCore::GrouperVisitor' has a field 'WebCore::GrouperVisitor::m_grouper' whose type uses the anonymous namespace.
922 * bindings/v8/V8GCController.cpp:
924 2011-03-16 Ryosuke Niwa <rniwa@webkit.org>
926 Reviewed by Dimitri Glazkov and Darin Adler.
928 Node::isContentEditable should always call parentNode() instead of parentOrHostNode()
929 https://bugs.webkit.org/show_bug.cgi?id=56472
931 Replaced the call to parentOrHostNode() in Node::isContentEditable by a call to parentNode().
932 Node::isContentEditable now calls parentNode() on all nodes.
934 No tests are added since this behavior change is not visible to scripts at the moment.
937 (WebCore::Node::isContentEditable):
939 2011-03-16 Chris Fleizach <cfleizach@apple.com>
941 Reviewed by Darin Adler.
943 WK2: Need to propagate enhanced accessibility flag from UI -> web process
944 https://bugs.webkit.org/show_bug.cgi?id=56379
946 Allow the enhanced accessibility flag to be toggleable.
948 * accessibility/AXObjectCache.h:
949 (WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility):
951 2011-03-16 Csaba Osztrogonác <ossy@webkit.org>
953 [Qt] Buildfix after r81230.
955 * WebCore.pri: Missing include path added.
957 2011-03-15 Oliver Hunt <oliver@apple.com>
959 Reviewed by Geoffrey Garen.
961 Make Structure creation require a JSGlobalData
962 https://bugs.webkit.org/show_bug.cgi?id=56438
964 Mechanical change to make all structure creation use GlobalData
966 * bindings/js/JSAudioConstructor.cpp:
967 (WebCore::JSAudioConstructor::JSAudioConstructor):
968 * bindings/js/JSAudioConstructor.h:
969 (WebCore::JSAudioConstructor::createStructure):
970 * bindings/js/JSDOMBinding.h:
971 (WebCore::DOMObjectWithGlobalPointer::createStructure):
972 (WebCore::DOMConstructorObject::createStructure):
973 (WebCore::getDOMStructure):
974 * bindings/js/JSDOMGlobalObject.h:
975 (WebCore::JSDOMGlobalObject::createStructure):
976 * bindings/js/JSDOMWindowBase.h:
977 (WebCore::JSDOMWindowBase::createStructure):
978 * bindings/js/JSDOMWindowShell.cpp:
979 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
980 (WebCore::JSDOMWindowShell::setWindow):
981 * bindings/js/JSDOMWindowShell.h:
982 (WebCore::JSDOMWindowShell::createStructure):
983 * bindings/js/JSImageConstructor.cpp:
984 (WebCore::JSImageConstructor::JSImageConstructor):
985 * bindings/js/JSImageConstructor.h:
986 (WebCore::JSImageConstructor::createStructure):
987 * bindings/js/JSImageDataCustom.cpp:
989 * bindings/js/JSOptionConstructor.cpp:
990 (WebCore::JSOptionConstructor::JSOptionConstructor):
991 * bindings/js/JSOptionConstructor.h:
992 (WebCore::JSOptionConstructor::createStructure):
993 * bindings/js/JSWorkerContextBase.h:
994 (WebCore::JSWorkerContextBase::createStructure):
995 * bindings/js/WorkerScriptController.cpp:
996 (WebCore::WorkerScriptController::initScript):
997 * bindings/scripts/CodeGeneratorJS.pm:
998 * bridge/c/CRuntimeObject.h:
999 (JSC::Bindings::CRuntimeObject::createStructure):
1000 * bridge/c/c_instance.cpp:
1001 (JSC::Bindings::CRuntimeMethod::createStructure):
1002 * bridge/jni/jsc/JavaInstanceJSC.cpp:
1003 (JavaRuntimeMethod::createStructure):
1004 * bridge/jni/jsc/JavaRuntimeObject.h:
1005 (JSC::Bindings::JavaRuntimeObject::createStructure):
1006 * bridge/objc/ObjCRuntimeObject.h:
1007 (JSC::Bindings::ObjCRuntimeObject::createStructure):
1008 * bridge/objc/objc_instance.mm:
1009 (ObjCRuntimeMethod::createStructure):
1010 * bridge/objc/objc_runtime.h:
1011 (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
1012 * bridge/runtime_array.h:
1013 (JSC::RuntimeArray::createStructure):
1014 * bridge/runtime_method.h:
1015 (JSC::RuntimeMethod::createStructure):
1016 * bridge/runtime_object.h:
1017 (JSC::Bindings::RuntimeObject::createStructure):
1019 2011-03-16 Pratik Solanki <psolanki@apple.com>
1021 Reviewed by Alexey Proskuryakov.
1023 REGRESSION: Crash in adjustMIMETypeIfNecessary since r81001
1024 https://bugs.webkit.org/show_bug.cgi?id=56345
1026 Add NULL check for Content-Type header field.
1028 Test: http/tests/xmlhttprequest/xmlhttprequest-no-content-type.html
1030 * platform/network/mac/WebCoreURLResponse.mm:
1031 (WebCore::adjustMIMETypeIfNecessary):
1033 2011-03-15 Levi Weintraub <leviw@chromium.org>
1035 Reviewed by Ryosuke Niwa.
1037 REGRESSION (r81165): Assert running editing/style/iframe-onload-crash.html with non-Mac editing behavior
1038 https://bugs.webkit.org/show_bug.cgi?id=56407
1040 Fixing the creation of incorrect ranges from TextIterator due to passing node/offset pairs that
1041 weren't parent-anchored. Also changing canHaveChildrenForEditing to properly handle nodes that
1042 have had children appended to them that editing wouldn't normally allow.
1044 Tests: editing/style/iframe-onload-crash-mac.html
1045 editing/style/iframe-onload-crash-unix.html
1046 editing/style/iframe-onload-crash-win.html
1048 * editing/TextIterator.cpp:
1049 (WebCore::TextIterator::rangeFromLocationAndLength): Passing parent-anchored values to range.
1050 * editing/htmlediting.cpp:
1051 (WebCore::canHaveChildrenForEditing): Adding a condition that the nodes don't already have children
1052 for hr and datagrid, as you can append any node to another using javascript.
1054 2011-03-16 Mikhail Naganov <mnaganov@chromium.org>
1056 Reviewed by Pavel Feldman.
1058 [Chromium] Report object groups and single DOM-related objects
1059 to the new heap profiler.
1060 https://bugs.webkit.org/show_bug.cgi?id=53659
1062 * Android.v8bindings.mk:
1065 * bindings/scripts/CodeGeneratorV8.pm:
1066 * bindings/v8/RetainedDOMInfo.cpp: Added.
1067 (WebCore::RetainedDOMInfo::RetainedDOMInfo):
1068 * bindings/v8/RetainedDOMInfo.h: Added.
1069 * bindings/v8/RetainedObjectInfo.h: Added.
1070 * bindings/v8/ScriptProfiler.cpp:
1071 (WebCore::retainedDOMInfo):
1072 (WebCore::ScriptProfiler::initialize):
1073 * bindings/v8/ScriptProfiler.h:
1074 * bindings/v8/V8DOMWindowShell.cpp:
1075 (WebCore::V8DOMWindowShell::initContextIfNeeded):
1076 * bindings/v8/V8GCController.cpp:
1077 (WebCore::GroupId::GrouperItem::GrouperItem):
1078 (WebCore::GroupId::GrouperItem::groupId):
1079 (WebCore::GroupId::GrouperItem::createRetainedObjectInfo):
1080 (WebCore::calculateGroupId):
1081 (WebCore::GrouperVisitor::visitDOMWrapper):
1082 (WebCore::GrouperVisitor::applyGrouping):
1083 * bindings/v8/WrapperTypeInfo.h:
1084 * inspector/front-end/DetailedHeapshotGridNodes.js:
1085 (WebInspector.HeapSnapshotConstructorNode):
1086 (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
1087 (WebInspector.HeapSnapshotDiffNode):
1088 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider.createProvider):
1089 (WebInspector.HeapSnapshotDiffNode.prototype._createNodesProvider):
1090 * inspector/front-end/DetailedHeapshotView.js:
1091 (WebInspector.HeapSnapshotRetainingPathsList.prototype.setDataSource):
1092 (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):
1093 (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.startSearching):
1094 (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
1095 (WebInspector.HeapSnapshotRetainingPathsList.prototype._setRootChildrenForFinder):
1096 (WebInspector.DetailedHeapshotView.prototype._changeRetainingPathsRoot):
1097 (WebInspector.DetailedHeapshotView.prototype.get isTracingToWindowObjects):
1098 * inspector/front-end/HeapSnapshot.js:
1099 (WebInspector.HeapSnapshotNode.prototype.get className):
1100 (WebInspector.HeapSnapshot.prototype._buildAggregates):
1101 (WebInspector.HeapSnapshotPathFinder.prototype.updateRoots):
1102 (WebInspector.HeapSnapshotPathFinder.prototype._fillRootChildren):
1103 * inspector/front-end/heapProfiler.css:
1104 (.detailed-heapshot-view .retaining-paths-view .title > span):
1105 (.detailed-heapshot-view .retaining-paths-to-windows):
1107 2011-03-16 Sam Weinig <sam@webkit.org>
1109 Reviewed by Adam Roben.
1111 Add WebKit2 API to figure out if an input or textarea was edited
1112 https://bugs.webkit.org/show_bug.cgi?id=56474
1114 Add HTMLInputElement::lastChangeWasUserEdit and HTMLTextAreaElement::lastChangeWasUserEdit
1115 and use them to implement -[DOMHTMLInputElement _isEdited] and -[DOMHTMLTextAreaElement _isEdited]
1116 as well as API in WebKit2.
1119 * bindings/objc/DOMHTML.mm:
1120 (-[DOMHTMLInputElement _isEdited]):
1121 (-[DOMHTMLTextAreaElement _isEdited]):
1122 * html/HTMLInputElement.cpp:
1123 (WebCore::HTMLInputElement::lastChangeWasUserEdit):
1124 * html/HTMLInputElement.h:
1125 * html/HTMLTextAreaElement.cpp:
1126 (WebCore::HTMLTextAreaElement::lastChangeWasUserEdit):
1127 * html/HTMLTextAreaElement.h:
1129 2011-03-15 Pavel Feldman <pfeldman@chromium.org>
1131 Reviewed by Yury Semikhatsky.
1133 Web Inspector: ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
1134 https://bugs.webkit.org/show_bug.cgi?id=56376
1136 * inspector/InspectorBrowserDebuggerAgent.cpp:
1137 (WebCore::InspectorBrowserDebuggerAgent::willRemoveDOMNode):
1138 * inspector/front-end/DOMAgent.js:
1139 (WebInspector.DOMAgent.prototype._setDocument):
1141 2011-03-16 Dan Bernstein <mitz@apple.com>
1143 Reviewed by Simon Fraser.
1145 text-combine text retains compressed font after adding characters to it
1146 https://bugs.webkit.org/show_bug.cgi?id=56448
1148 Test: fast/dynamic/text-combine.html
1150 * css/CSSStyleSelector.cpp:
1151 (WebCore::CSSStyleSelector::applyProperty): Allow styles with text-combine to be shared, since
1152 only the clones on the RenderCombineText will be mutated.
1153 * rendering/RenderCombineText.cpp:
1154 (WebCore::RenderCombineText::styleDidChange): Clone the style, to avoid mutating the parent’s
1156 (WebCore::RenderCombineText::combineText): Start off with the original font; restore it if
1157 the text cannot be combined.
1158 * rendering/RenderCombineText.h:
1159 (WebCore::RenderCombineText::originalFont): Added. Returns the parent’s font.
1161 2011-03-14 Pavel Podivilov <podivilov@chromium.org>
1163 Reviewed by Yury Semikhatsky.
1165 Web Inspector: refactor event listener breakpoints.
1166 https://bugs.webkit.org/show_bug.cgi?id=56305
1168 - restore event listener breakpoints one by one instead of using setAllBrowserBreakpoints
1169 - store event listener breakpoints in a separate separate setting
1170 - move presentation-related code from BreakpointManager to EventListenerBreakpointsSidebarPane
1172 Test: inspector/debugger/event-listener-breakpoints.html
1174 * inspector/Inspector.idl:
1175 * inspector/InspectorAgent.cpp:
1176 (WebCore::InspectorAgent::setFrontend):
1177 * inspector/InspectorBrowserDebuggerAgent.cpp:
1178 (WebCore::InspectorBrowserDebuggerAgent::setEventListenerBreakpoint):
1179 (WebCore::InspectorBrowserDebuggerAgent::removeEventListenerBreakpoint):
1180 (WebCore::InspectorBrowserDebuggerAgent::pauseOnNativeEventIfNeeded):
1181 (WebCore::InspectorBrowserDebuggerAgent::clear):
1182 * inspector/InspectorBrowserDebuggerAgent.h:
1183 * inspector/InspectorInstrumentation.cpp:
1184 (WebCore::InspectorInstrumentation::didCommitLoadImpl):
1185 * inspector/front-end/BreakpointManager.js:
1186 (WebInspector.BreakpointManager.prototype.setEventListenerBreakpoint):
1187 (WebInspector.BreakpointManager.prototype.removeEventListenerBreakpoint):
1188 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
1189 (WebInspector.BreakpointManager.prototype._projectChanged):
1190 (WebInspector.BreakpointManager.prototype._saveBreakpoints):
1191 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
1192 (WebInspector.BreakpointManager.prototype._createDOMBreakpointId):
1193 * inspector/front-end/BreakpointsSidebarPane.js:
1194 (WebInspector.EventListenerBreakpointsSidebarPane):
1195 (WebInspector.EventListenerBreakpointsSidebarPane.eventNameForUI):
1196 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
1197 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
1198 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
1199 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
1200 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):
1201 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
1202 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.highlightBreakpoint):
1203 (WebInspector.EventListenerBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
1204 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._saveBreakpoints):
1205 (WebInspector.EventListenerBreakpointsSidebarPane.prototype._restoreBreakpoints):
1206 * inspector/front-end/CallStackSidebarPane.js:
1207 (WebInspector.CallStackSidebarPane.prototype.update):
1208 (WebInspector.CallStackSidebarPane.prototype.setStatus):
1209 (WebInspector.CallStackSidebarPane.prototype._domBreakpointHit):
1210 * inspector/front-end/ScriptsPanel.js:
1211 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
1212 (WebInspector.ScriptsPanel.prototype._clearInterface):
1213 * inspector/front-end/Settings.js:
1214 (WebInspector.Settings):
1216 2011-03-16 David Kilzer <ddkilzer@apple.com>
1218 Minor clean-up after r81156, r81172
1221 <http://webkit.org/b/56381> Objective-C classes should be typedef-ed as structs (not void*) in C++
1223 * platform/graphics/GraphicsLayer.h: Removed unused @class
1224 WebLayer declaration.
1225 * platform/graphics/ca/PlatformCAAnimation.h: Changed typedef
1226 struct CAPropertyAnimation to class declaration.
1228 2011-03-16 Andrey Adaikin <aandrey@google.com>
1230 Reviewed by Yury Semikhatsky.
1232 Web Inspector: Remove live-edit code
1233 https://bugs.webkit.org/show_bug.cgi?id=56177
1235 * inspector/front-end/Settings.js:
1236 * inspector/front-end/SourceFrame.js:
1237 (WebInspector.SourceFrame):
1238 (WebInspector.SourceFrame.prototype._doubleClick):
1239 * inspector/front-end/TextViewer.js:
1240 (WebInspector.TextEditorMainPanel):
1241 (WebInspector.TextEditorMainPanel.prototype.set readOnly):
1243 2011-03-16 Alexis Menard <alexis.menard@openbossa.org>
1245 Reviewed by Martin Robinson.
1247 [GStreamer] There is no need to set the state of the pipeline to playing, HTMLMediaElement will do it.
1248 https://bugs.webkit.org/show_bug.cgi?id=56403
1250 In case of a seek on a live pipeline there is no need to call gst_element_set_state(m_playBin, GST_STATE_PLAYING);
1251 As soon as HTMLMediaElement::updatePlayState() is called (like when the data comes in) the playback will be relaunched
1252 i.e the pause() made when beginScrubbing is done is just internal.
1254 No new tests: Verified manually.
1256 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1257 (WebCore::MediaPlayerPrivateGStreamer::updateStates):
1259 2011-03-16 Adam Barth <abarth@webkit.org>
1261 Reviewed by Eric Seidel.
1263 WebCore GYP build should build platform/
1264 https://bugs.webkit.org/show_bug.cgi?id=56430
1266 Adding platform/ to the GYP build required disabling
1267 ALWAYS_SEARCH_USER_PATHS, which in turn required fixing some latent
1268 style issues. I suspect we'll end up excluding some of these files
1269 from the build in the final analysis, but we might as well fix the
1270 style errors while we're here.
1272 * bindings/js/JSMainThreadExecState.h:
1273 * bindings/js/ScheduledAction.h:
1274 * css/CSSPrimitiveValueCache.cpp:
1276 * platform/KillRingNone.cpp:
1277 (WebCore::KillRing::append):
1278 (WebCore::KillRing::prepend):
1279 * platform/graphics/ContextShadow.h:
1280 * platform/graphics/gpu/LoopBlinnPathProcessor.cpp:
1281 (WebCore::LoopBlinnPathProcessor::buildContours):
1282 (WebCore::TessellationState::combineCallback):
1283 * platform/graphics/gpu/PODRedBlackTree.h:
1284 (WebCore::PODRedBlackTree::updateNode):
1285 (WebCore::PODRedBlackTree::logIfVerbose):
1286 * platform/graphics/opengl/TextureMapperGL.cpp:
1287 * platform/graphics/opengl/TextureMapperGL.h:
1288 * platform/graphics/texmap/TextureMapper.h:
1289 (WebCore::BitmapTexture::save):
1290 (WebCore::TextureMapper::paintToTarget):
1291 * platform/graphics/texmap/TextureMapperNode.h:
1293 2011-03-15 Philippe Normand <pnormand@igalia.com>
1295 Reviewed by Eric Carlson.
1297 [GStreamer] http/tests/media/video-play-stall-before-meta-data.html fails
1298 https://bugs.webkit.org/show_bug.cgi?id=56370
1300 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1301 (WebCore::mediaPlayerPrivateMessageCallback): Let the
1302 mediaPlayerClient handle the stream error, in this case the
1303 HTMLMediaElement will emit a stalled event.
1305 2011-03-10 Philippe Normand <pnormand@igalia.com>
1307 Reviewed by Martin Robinson.
1309 [GStreamer] Frame accurate seeking isn't always accurate
1310 https://bugs.webkit.org/show_bug.cgi?id=55217
1312 Attempt to build the seek GstClockTime position by converting the
1313 float time value to a GTimeVal value rounded at microsecond
1314 precision. Additionally perform the seek with the ACCURATE seek
1315 flag. These modifications at least fix this manual-test:
1316 http://www.massive-interactive.nl/html5_video/smpte_test_universal.html
1318 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1319 (WebCore::MediaPlayerPrivateGStreamer::currentTime):
1320 (WebCore::MediaPlayerPrivateGStreamer::seek):
1321 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1323 2011-03-15 Yury Semikhatsky <yurys@chromium.org>
1325 Reviewed by Pavel Feldman.
1327 Web Inspector: split InspectorAgent.populateScriptObjects into more granular agent-specific requests
1328 https://bugs.webkit.org/show_bug.cgi?id=56389
1330 Instead of sending one big request populateScriptObjects each agent requests
1331 for initial data in its constructor.
1333 * inspector/Inspector.idl:
1334 * inspector/InspectorAgent.cpp:
1335 (WebCore::InspectorAgent::InspectorAgent):
1336 (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1337 (WebCore::InspectorAgent::setFrontend):
1338 (WebCore::InspectorAgent::pushDataCollectedOffline):
1339 (WebCore::InspectorAgent::getPreferredPanel):
1340 * inspector/InspectorAgent.h:
1341 * inspector/InspectorDOMAgent.cpp:
1342 (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1343 (WebCore::InspectorDOMAgent::setFrontend):
1344 (WebCore::InspectorDOMAgent::restore):
1345 * inspector/InspectorDOMAgent.h:
1346 (WebCore::InspectorDOMAgent::create):
1347 * inspector/InspectorDebuggerAgent.cpp:
1348 (WebCore::InspectorDebuggerAgent::setFrontend):
1349 * inspector/InspectorDebuggerAgent.h:
1350 * inspector/InspectorProfilerAgent.h:
1351 (WebCore::InspectorProfilerAgent::isEnabled):
1352 * inspector/front-end/ProfilesPanel.js:
1353 (WebInspector.ProfilesPanel):
1354 * inspector/front-end/ScriptsPanel.js:
1355 (WebInspector.ScriptsPanel):
1356 * inspector/front-end/inspector.js:
1358 2011-03-15 Ryosuke Niwa <rniwa@webkit.org>
1360 Reviewed by Darin Adler.
1362 Devirtualize isContentEditable and isRichlyContentEditable
1363 https://bugs.webkit.org/show_bug.cgi?id=56421
1365 Rewrote Node::isContentEditable as a non-recursive non-virtual function.
1367 * dom/Document.cpp: Removed isContentEditable and isContentRichlyEditable.
1368 * dom/Document.h: Ditto.
1370 (WebCore::Node::isContentEditable): Rewritten.
1372 (WebCore::Node::isContentEditable): Calls isContentEditable(Editable).
1373 (WebCore::Node::isContentRichlyEditable): Calls isContentEditable(RichlyEditable).
1374 * html/HTMLElement.cpp: Removed isContentEditable and isContentRichlyEditable.
1375 * html/HTMLElement.h: Ditto.
1377 2011-03-15 Adam Barth <abarth@webkit.org>
1379 Reviewed by Eric Seidel.
1381 WebCore GYP build should build inspector/ loader/ mathml/ notifications/ and page/
1382 https://bugs.webkit.org/show_bug.cgi?id=56412
1384 Yay for smooth sailing.
1388 2011-03-15 Dimitri Glazkov <dglazkov@chromium.org>
1390 Reviewed by Kent Tamura.
1392 REGRESSION(r76147): A slider thumb that is styled cannot be programmatically moved
1393 https://bugs.webkit.org/show_bug.cgi?id=56059
1395 Test: fast/dom/HTMLInputElement/input-slider-update-styled.html
1397 * html/RangeInputType.cpp:
1398 (WebCore::RangeInputType::valueChanged): Changed to use setPositionFromValue.
1399 * html/shadow/SliderThumbElement.cpp:
1400 (WebCore::SliderThumbElement::setPositionFromValue): Added.
1401 (WebCore::SliderThumbElement::dragFrom): Changed to use setPositionFromPoint.
1402 (WebCore::SliderThumbElement::setPositionFromPoint): Ditto.
1403 (WebCore::SliderThumbElement::defaultEventHandler): Ditto.
1404 * html/shadow/SliderThumbElement.h: Added decls.
1406 2011-03-15 David Levin <levin@chromium.org>
1408 Attempted build fix following r81213. Same song second verse.
1410 * platform/image-encoders/skia/PNGImageEncoder.cpp:
1411 (WebCore::encodePixels):
1413 2011-03-15 David Levin <levin@chromium.org>
1415 Attempted build fix for Chromium OSX release build following r81213.
1417 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1418 (WebCore::encodePixels): Change scoping of |pixels| to be after setjmp call.
1420 2011-03-15 John Bauman <jbauman@chromium.org>
1422 Reviewed by Kenneth Russell.
1424 Non-premultiplied-alpha canvas attribute is ignore for toDataURL, drawImage, texImage2D
1425 https://bugs.webkit.org/show_bug.cgi?id=56238
1427 Attempt to get an ImageData (non-premultiplied) from a WebGL canvas
1428 instead of getting an ImageBuffer, so there's a chance the data can be
1429 passed straight through to the consumer with no premultiplication
1430 necessary. Fixes Chromium and Safari.
1432 Test: fast/canvas/webgl/premultiplyalpha-test.html
1434 * html/HTMLCanvasElement.cpp:
1435 (WebCore::HTMLCanvasElement::toDataURL):
1436 (WebCore::HTMLCanvasElement::getImageData):
1437 * html/HTMLCanvasElement.h:
1438 * html/canvas/WebGLRenderingContext.cpp:
1439 (WebCore::WebGLRenderingContext::paintRenderingResultsToImageData):
1440 (WebCore::WebGLRenderingContext::texImage2D):
1441 (WebCore::WebGLRenderingContext::texSubImage2D):
1442 * html/canvas/WebGLRenderingContext.h:
1443 * platform/graphics/GraphicsContext3D.h:
1444 * platform/graphics/ImageBuffer.h:
1445 * platform/graphics/cg/ImageBufferCG.cpp:
1446 (WebCore::CGImageToDataURL):
1447 (WebCore::ImageBuffer::toDataURL):
1448 (WebCore::ImageDataToDataURL):
1449 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1450 (WebCore::GraphicsContext3D::validateAttributes):
1451 (WebCore::GraphicsContext3D::readRenderingResults):
1452 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
1453 (WebCore::GraphicsContext3D::paintRenderingResultsToImageData):
1454 * platform/graphics/qt/GraphicsContext3DQt.cpp:
1455 (WebCore::GraphicsContext3D::paintRenderingResultsToImageData):
1456 * platform/graphics/skia/ImageBufferSkia.cpp:
1457 (WebCore::ImageToDataURL):
1458 (WebCore::ImageBuffer::toDataURL):
1459 (WebCore::ImageDataToDataURL):
1460 * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1461 (WebCore::preMultipliedBGRAtoRGB):
1462 (WebCore::RGBAtoRGB):
1463 (WebCore::encodePixels):
1464 (WebCore::JPEGImageEncoder::encode):
1465 * platform/image-encoders/skia/JPEGImageEncoder.h:
1466 * platform/image-encoders/skia/PNGImageEncoder.cpp:
1467 (WebCore::preMultipliedBGRAtoRGBA):
1468 (WebCore::encodePixels):
1469 (WebCore::PNGImageEncoder::encode):
1470 * platform/image-encoders/skia/PNGImageEncoder.h:
1472 2011-03-15 Kevin Ollivier <kevino@theolliviers.com>
1474 [wx] Build fix, only compile the methods when the INDEXED_DATABASE feature is enabled.
1476 * storage/IDBDatabaseCallbacksImpl.cpp:
1478 2011-03-15 Brady Eidson <beidson@apple.com>
1480 Build fix after r81208 for https://bugs.webkit.org/show_bug.cgi?id=56425
1482 * loader/icon/IconDatabaseBase.h: #include instead of forward declare.
1484 2011-03-15 Beth Dakin <bdakin@apple.com>
1486 Reviewed by Darin Adler.
1488 Fix for <rdar://problem/8944558> Overlay scrollers in overflow areas need to
1489 send notifications appropriate times (showing up, resizing)
1491 https://bugs.webkit.org/show_bug.cgi?id=56067
1493 The general strategy here is to add a HashSet of ScrollableAreas to the page that
1494 can be accessed when necessary to send notifications to all ScrollableAreas. In
1495 turn, all of the ScrollableArea classes that add themselves to the HashSet must
1496 keep a weak pointer to Page so that they can remove themselves without relying on
1497 Frames or Renderers to still have references.
1499 Find layers for relevant node and if the layers are in the Page's ScrollableArea
1500 set, then send the relevant notification.
1501 * page/EventHandler.cpp:
1502 (WebCore::layerForNode):
1503 (WebCore::EventHandler::mouseMoved):
1504 (WebCore::EventHandler::updateMouseEventTargetNode):
1506 When the page is set active or not active, iterate through the Page's
1507 ScrollableAreas to send hide/show notifications.
1508 * page/FocusController.cpp:
1509 (WebCore::FocusController::setActive):
1511 When a FrameView is created, add it to the ScrollableArea set. When it's
1512 destroyed, remove it.
1513 * page/FrameView.cpp:
1514 (WebCore::FrameView::FrameView):
1515 (WebCore::FrameView::~FrameView):
1517 Iterate through the Page's ScrollableAreas to send the paint notification.
1518 (WebCore::FrameView::notifyPageThatContentAreaWillPaint):
1520 (WebCore::FrameView::disconnectFromPage):
1522 Add the new ScrollableArea set.
1524 (WebCore::Page::~Page):
1525 (WebCore::Page::addScrollableArea):
1526 (WebCore::Page::removeScrollableArea):
1527 (WebCore::Page::containsScrollableArea):
1529 (WebCore::Page::scrollableAreaSet):
1531 notifyPageThatContentAreaWillPaint() is a dummy function implemented in FrameView.
1532 * platform/ScrollView.cpp:
1533 (WebCore::ScrollView::notifyPageThatContentAreaWillPaint):
1535 Call notifyPageThatContentAreaWillPaint() instead of calling
1536 contentAreaWillPaint() just for the ScrollView.
1537 (WebCore::ScrollView::paint):
1538 * platform/ScrollView.h:
1540 Add/remove ScrollableAreas to the set. Add new disconnectFromPage().
1541 * platform/ScrollableArea.h:
1542 (WebCore::ScrollableArea::disconnectFromPage):
1543 * rendering/RenderDataGrid.cpp:
1544 (WebCore::RenderDataGrid::RenderDataGrid):
1545 (WebCore::RenderDataGrid::~RenderDataGrid):
1546 * rendering/RenderDataGrid.h:
1547 (WebCore::RenderDataGrid::disconnectFromPage):
1548 * rendering/RenderLayer.cpp:
1549 (WebCore::RenderLayer::RenderLayer):
1550 (WebCore::RenderLayer::~RenderLayer):
1551 * rendering/RenderLayer.h:
1552 (WebCore::RenderLayer::disconnectFromPage):
1553 * rendering/RenderListBox.cpp:
1554 (WebCore::RenderListBox::RenderListBox):
1555 (WebCore::RenderListBox::~RenderListBox):
1556 * rendering/RenderListBox.h:
1557 (WebCore::RenderListBox::disconnectFromPage):
1559 Should have implemented this ScrollableArea-interface function a while ago.
1560 (WebCore::RenderLayer::currentMousePosition):
1562 2011-03-15 Brady Eidson <beidson@apple.com>
1564 Reviewed by Sam Weinig.
1566 https://bugs.webkit.org/show_bug.cgi?id=56425
1567 WebKit2 icon database.
1571 2011-03-15 Adam Barth <abarth@webkit.org>
1573 Reviewed by Dimitri Glazkov.
1575 WebCore GYP build should build editing, fileapi, history, and html
1576 https://bugs.webkit.org/show_bug.cgi?id=56411
1578 These all went smoothly.
1582 2011-03-15 Adam Barth <abarth@webkit.org>
1584 Reviewed by Eric Seidel.
1586 WebCore GYP build should build dom/
1587 https://bugs.webkit.org/show_bug.cgi?id=56409
1591 2011-03-15 Adam Barth <abarth@webkit.org>
1593 Reviewed by Eric Seidel.
1595 WebCore GYP build should build css/
1596 https://bugs.webkit.org/show_bug.cgi?id=56408
1598 CSSParser.cpp #includes tokenizer.cpp, which we haven't included in the
1599 build yet. I've punted on that problem for now, but we'll come back to
1604 2011-03-15 Adam Barth <abarth@webkit.org>
1606 Reviewed by Dimitri Glazkov.
1608 WebCore GYP build should build bindings/
1609 https://bugs.webkit.org/show_bug.cgi?id=56406
1611 I wanted to include bindings/objc in this patch, but they were somewhat
1612 complicated. It looks like they include headers from the output
1613 directory (via PrivateHeaders), but we haven't wired up the
1618 2011-03-15 James Simonsen <simonjam@chromium.org>
1620 Reviewed by Tony Gentilcore.
1622 Need different behavior for ensuring execution order of dynamically loaded scripts
1623 https://bugs.webkit.org/show_bug.cgi?id=50115
1625 Dynamically added scripts with async=false will load in parallel, but execute in order.
1626 See: http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#force-async
1628 Tests: fast/dom/HTMLScriptElement/script-async-attr.html
1629 http/tests/misc/script-async-load-execute-in-order.html
1631 * Android.mk: Rename AsyncScriptRunner -> ScriptRunner.
1632 * CMakeLists.txt: Ditto.
1633 * GNUmakefile.am: Ditto.
1634 * WebCore.gypi: Ditto.
1635 * WebCore.pro: Ditto.
1636 * WebCore.vcproj/WebCore.vcproj: Ditto.
1637 * WebCore.xcodeproj/project.pbxproj: Ditto.
1638 * dom/DOMAllInOne.cpp: Ditto.
1640 (WebCore::Document::Document): Ditto.
1641 (WebCore::Document::~Document): Ditto.
1643 (WebCore::Document::scriptRunner): Ditto.
1644 * dom/ScriptElement.cpp:
1645 (WebCore::ScriptElement::ScriptElement): Added forceAsync and willExecuteInOrder.
1646 (WebCore::ScriptElement::handleAsyncAttribute): Called by HTMLScriptElement when async attribute changes.
1647 (WebCore::ScriptElement::prepareScript): Added support for forceAsync.
1648 (WebCore::ScriptElement::notifyFinished): Tell ScriptRunner to execute in order if needed.
1649 * dom/ScriptElement.h:
1650 (WebCore::ScriptElement::forceAsync): Added.
1651 * dom/ScriptRunner.cpp: Renamed from Source/WebCore/dom/AsyncScriptRunner.cpp.
1652 (WebCore::ScriptRunner::ScriptRunner): Added in-order script queue.
1653 (WebCore::ScriptRunner::~ScriptRunner): Ditto.
1654 (WebCore::ScriptRunner::executeScriptSoon):
1655 (WebCore::ScriptRunner::queueScriptForInOrderExecution): Added.
1656 (WebCore::ScriptRunner::suspend):
1657 (WebCore::ScriptRunner::resume):
1658 (WebCore::ScriptRunner::timerFired): Execute in-order scripts if ready.
1659 * dom/ScriptRunner.h: Renamed from Source/WebCore/dom/AsyncScriptRunner.h.
1660 (WebCore::ScriptRunner::create):
1661 (WebCore::ScriptRunner::hasPendingScripts): Check for in-order scripts too.
1662 * html/HTMLScriptElement.cpp:
1663 (WebCore::HTMLScriptElement::attributeChanged): Notify ScriptElement when async changes.
1664 (WebCore::HTMLScriptElement::setAsync): Ditto.
1665 (WebCore::HTMLScriptElement::async): Include forceAsync in calculation.
1666 * html/HTMLScriptElement.h:
1667 * html/HTMLScriptElement.idl: Removed Reflect from async for custom behavior.
1668 * page/PageGroupLoadDeferrer.cpp:
1669 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Rename AsyncScriptRunner -> ScriptRunner.
1670 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer): Ditto.
1672 2011-03-15 Tony Chang <tony@chromium.org>
1674 Reviewed by Adam Barth.
1676 pngcrush images used by inspector
1677 https://bugs.webkit.org/show_bug.cgi?id=56426
1679 This saves 120k in WebCore and 8k in WebKit/chromium. I ran
1680 pngcrush -brute, so none of the meta data (ancillary chunks)
1683 No new tests, just compressing png files.
1685 * inspector/front-end/Images/applicationCache.png:
1686 * inspector/front-end/Images/auditsIcon.png:
1687 * inspector/front-end/Images/back.png:
1688 * inspector/front-end/Images/breakpointBorder.png:
1689 * inspector/front-end/Images/breakpointConditionalBorder.png:
1690 * inspector/front-end/Images/breakpointConditionalCounterBorder.png:
1691 * inspector/front-end/Images/breakpointCounterBorder.png:
1692 * inspector/front-end/Images/breakpointsActivateButtonGlyph.png:
1693 * inspector/front-end/Images/breakpointsDeactivateButtonGlyph.png:
1694 * inspector/front-end/Images/checker.png:
1695 * inspector/front-end/Images/clearConsoleButtonGlyph.png:
1696 * inspector/front-end/Images/closeButtons.png:
1697 * inspector/front-end/Images/consoleButtonGlyph.png:
1698 * inspector/front-end/Images/consoleIcon.png:
1699 * inspector/front-end/Images/cookie.png:
1700 * inspector/front-end/Images/database.png:
1701 * inspector/front-end/Images/databaseTable.png:
1702 * inspector/front-end/Images/debuggerContinue.png:
1703 * inspector/front-end/Images/debuggerPause.png:
1704 * inspector/front-end/Images/debuggerStepInto.png:
1705 * inspector/front-end/Images/debuggerStepOut.png:
1706 * inspector/front-end/Images/debuggerStepOver.png:
1707 * inspector/front-end/Images/disclosureTriangleSmallDown.png:
1708 * inspector/front-end/Images/disclosureTriangleSmallDownBlack.png:
1709 * inspector/front-end/Images/disclosureTriangleSmallDownWhite.png:
1710 * inspector/front-end/Images/disclosureTriangleSmallRight.png:
1711 * inspector/front-end/Images/disclosureTriangleSmallRightBlack.png:
1712 * inspector/front-end/Images/disclosureTriangleSmallRightDown.png:
1713 * inspector/front-end/Images/disclosureTriangleSmallRightDownBlack.png:
1714 * inspector/front-end/Images/disclosureTriangleSmallRightDownWhite.png:
1715 * inspector/front-end/Images/disclosureTriangleSmallRightWhite.png:
1716 * inspector/front-end/Images/dockButtonGlyph.png:
1717 * inspector/front-end/Images/elementsIcon.png:
1718 * inspector/front-end/Images/enableOutlineButtonGlyph.png:
1719 * inspector/front-end/Images/enableSolidButtonGlyph.png:
1720 * inspector/front-end/Images/errorIcon.png:
1721 * inspector/front-end/Images/errorMediumIcon.png:
1722 * inspector/front-end/Images/errorRedDot.png:
1723 * inspector/front-end/Images/excludeButtonGlyph.png:
1724 * inspector/front-end/Images/focusButtonGlyph.png:
1725 * inspector/front-end/Images/forward.png:
1726 * inspector/front-end/Images/frame.png:
1727 * inspector/front-end/Images/garbageCollectButtonGlyph.png:
1728 * inspector/front-end/Images/gearButtonGlyph.png:
1729 * inspector/front-end/Images/glossyHeader.png:
1730 * inspector/front-end/Images/glossyHeaderPressed.png:
1731 * inspector/front-end/Images/glossyHeaderSelected.png:
1732 * inspector/front-end/Images/glossyHeaderSelectedPressed.png:
1733 * inspector/front-end/Images/goArrow.png:
1734 * inspector/front-end/Images/graphLabelCalloutLeft.png:
1735 * inspector/front-end/Images/graphLabelCalloutRight.png:
1736 * inspector/front-end/Images/helpButtonGlyph.png:
1737 * inspector/front-end/Images/largerResourcesButtonGlyph.png:
1738 * inspector/front-end/Images/localStorage.png:
1739 * inspector/front-end/Images/networkIcon.png:
1740 * inspector/front-end/Images/nodeSearchButtonGlyph.png:
1741 * inspector/front-end/Images/paneAddButtons.png:
1742 * inspector/front-end/Images/paneBottomGrow.png:
1743 * inspector/front-end/Images/paneBottomGrowActive.png:
1744 * inspector/front-end/Images/paneGrowHandleLine.png:
1745 * inspector/front-end/Images/paneSettingsButtons.png:
1746 * inspector/front-end/Images/pauseOnExceptionButtonGlyph.png:
1747 * inspector/front-end/Images/percentButtonGlyph.png:
1748 * inspector/front-end/Images/popoverArrows.png:
1749 * inspector/front-end/Images/popoverBackground.png:
1750 * inspector/front-end/Images/profileGroupIcon.png:
1751 * inspector/front-end/Images/profileIcon.png:
1752 * inspector/front-end/Images/profileSmallIcon.png:
1753 * inspector/front-end/Images/profilesIcon.png:
1754 * inspector/front-end/Images/profilesSilhouette.png:
1755 * inspector/front-end/Images/programCounterBorder.png:
1756 * inspector/front-end/Images/radioDot.png:
1757 * inspector/front-end/Images/recordButtonGlyph.png:
1758 * inspector/front-end/Images/recordToggledButtonGlyph.png:
1759 * inspector/front-end/Images/reloadButtonGlyph.png:
1760 * inspector/front-end/Images/resourceCSSIcon.png:
1761 * inspector/front-end/Images/resourceDocumentIcon.png:
1762 * inspector/front-end/Images/resourceDocumentIconSmall.png:
1763 * inspector/front-end/Images/resourceJSIcon.png:
1764 * inspector/front-end/Images/resourcePlainIcon.png:
1765 * inspector/front-end/Images/resourcePlainIconSmall.png:
1766 * inspector/front-end/Images/resourcesIcon.png:
1767 * inspector/front-end/Images/resourcesSizeGraphIcon.png:
1768 * inspector/front-end/Images/resourcesTimeGraphIcon.png:
1769 * inspector/front-end/Images/scriptsIcon.png:
1770 * inspector/front-end/Images/scriptsSilhouette.png:
1771 * inspector/front-end/Images/searchSmallBlue.png:
1772 * inspector/front-end/Images/searchSmallBrightBlue.png:
1773 * inspector/front-end/Images/searchSmallGray.png:
1774 * inspector/front-end/Images/searchSmallWhite.png:
1775 * inspector/front-end/Images/segment.png:
1776 * inspector/front-end/Images/segmentEnd.png:
1777 * inspector/front-end/Images/segmentHover.png:
1778 * inspector/front-end/Images/segmentHoverEnd.png:
1779 * inspector/front-end/Images/segmentSelected.png:
1780 * inspector/front-end/Images/segmentSelectedEnd.png:
1781 * inspector/front-end/Images/sessionStorage.png:
1782 * inspector/front-end/Images/splitviewDimple.png:
1783 * inspector/front-end/Images/splitviewDividerBackground.png:
1784 * inspector/front-end/Images/statusbarButtons.png:
1785 * inspector/front-end/Images/statusbarMenuButton.png:
1786 * inspector/front-end/Images/statusbarMenuButtonSelected.png:
1787 * inspector/front-end/Images/statusbarResizerHorizontal.png:
1788 * inspector/front-end/Images/statusbarResizerVertical.png:
1789 * inspector/front-end/Images/successGreenDot.png:
1790 * inspector/front-end/Images/thumbActiveHoriz.png:
1791 * inspector/front-end/Images/thumbActiveVert.png:
1792 * inspector/front-end/Images/thumbHoriz.png:
1793 * inspector/front-end/Images/thumbHoverHoriz.png:
1794 * inspector/front-end/Images/thumbHoverVert.png:
1795 * inspector/front-end/Images/thumbVert.png:
1796 * inspector/front-end/Images/timelineBarBlue.png:
1797 * inspector/front-end/Images/timelineBarGray.png:
1798 * inspector/front-end/Images/timelineBarGreen.png:
1799 * inspector/front-end/Images/timelineBarOrange.png:
1800 * inspector/front-end/Images/timelineBarPurple.png:
1801 * inspector/front-end/Images/timelineBarRed.png:
1802 * inspector/front-end/Images/timelineBarYellow.png:
1803 * inspector/front-end/Images/timelineCheckmarks.png:
1804 * inspector/front-end/Images/timelineDots.png:
1805 * inspector/front-end/Images/timelineHollowPillBlue.png:
1806 * inspector/front-end/Images/timelineHollowPillGray.png:
1807 * inspector/front-end/Images/timelineHollowPillGreen.png:
1808 * inspector/front-end/Images/timelineHollowPillOrange.png:
1809 * inspector/front-end/Images/timelineHollowPillPurple.png:
1810 * inspector/front-end/Images/timelineHollowPillRed.png:
1811 * inspector/front-end/Images/timelineHollowPillYellow.png:
1812 * inspector/front-end/Images/timelineIcon.png:
1813 * inspector/front-end/Images/timelinePillBlue.png:
1814 * inspector/front-end/Images/timelinePillGray.png:
1815 * inspector/front-end/Images/timelinePillGreen.png:
1816 * inspector/front-end/Images/timelinePillOrange.png:
1817 * inspector/front-end/Images/timelinePillPurple.png:
1818 * inspector/front-end/Images/timelinePillRed.png:
1819 * inspector/front-end/Images/timelinePillYellow.png:
1820 * inspector/front-end/Images/toolbarItemSelected.png:
1821 * inspector/front-end/Images/trackHoriz.png:
1822 * inspector/front-end/Images/trackVert.png:
1823 * inspector/front-end/Images/treeDownTriangleBlack.png:
1824 * inspector/front-end/Images/treeDownTriangleWhite.png:
1825 * inspector/front-end/Images/treeRightTriangleBlack.png:
1826 * inspector/front-end/Images/treeRightTriangleWhite.png:
1827 * inspector/front-end/Images/treeUpTriangleBlack.png:
1828 * inspector/front-end/Images/treeUpTriangleWhite.png:
1829 * inspector/front-end/Images/undockButtonGlyph.png:
1830 * inspector/front-end/Images/userInputIcon.png:
1831 * inspector/front-end/Images/userInputPreviousIcon.png:
1832 * inspector/front-end/Images/userInputResultIcon.png:
1833 * inspector/front-end/Images/warningIcon.png:
1834 * inspector/front-end/Images/warningMediumIcon.png:
1835 * inspector/front-end/Images/warningOrangeDot.png:
1836 * inspector/front-end/Images/warningsErrors.png:
1838 2011-03-15 Ryosuke Niwa <rniwa@webkit.org>
1840 Reviewed by Tony Chang.
1842 Crash in ReplaceSelectionCommand::doApply when inserting a node under a document node
1843 https://bugs.webkit.org/show_bug.cgi?id=56372
1845 The bug was caused by insertNodeAfter's calling parentElement on document's child.
1846 Fixed this by changing the node that AppendNodeCommand takes.
1848 There was also a bug that document node always returned false for isContentEditable
1849 and isContentRichlyEditable because they never overrode Node's default implementation.
1850 Fixed this by overriding them in Document.
1852 Test: editing/execCommand/append-node-under-document.html
1855 (WebCore::Document::isContentEditable): Added.
1856 (WebCore::Document::isContentRichlyEditable): Added.
1858 * editing/AppendNodeCommand.cpp:
1859 (WebCore::AppendNodeCommand::AppendNodeCommand): Takes ContainerNode instead of Element.
1860 * editing/AppendNodeCommand.h:
1861 (WebCore::AppendNodeCommand::create): Ditto.
1862 * editing/CompositeEditCommand.cpp:
1863 (WebCore::CompositeEditCommand::appendNode): Ditto.
1864 (WebCore::CompositeEditCommand::insertNodeAfter): Calls parentNode instead of parentElement.
1865 * editing/CompositeEditCommand.h:
1867 2011-03-15 David Grogan <dgrogan@chromium.org>
1869 Reviewed by Jeremy Orlow.
1871 Fix crash caused by Invalid call to destroyActiveDOMObject during stopActiveDOMObjects
1872 https://bugs.webkit.org/show_bug.cgi?id=56350
1874 When a frame is unloaded, ScriptExecutionContext::stopActiveDOMObjects
1875 calls stop() on each ActiveDOMObject.
1877 Calling IDBDatabase::stop() can cause IDBDatabase to be destroyed:
1878 * IDBDatabase::stop() causes the chrome message dispatcher to remove
1879 its reference to IDBDatabase, which it has as type
1880 IDBDatabaseCallbacks.
1881 * If that reference is the last one, the IDBDatabase is destroyed.
1882 * Destroying an ActiveDOMObject while they are being iterated over causes
1885 This change creates a separate IDBDatabaseCallbacks object that is not
1886 an ActiveDOMObject, so it can be destroyed by
1887 ScriptExecutionContext::stopActiveDOMObjects.
1889 Because the chrome message dispatcher is only used in multi-process
1890 chromium, that's the only platform affected. Chromium browser tests
1894 * storage/IDBDatabase.cpp:
1895 (WebCore::IDBDatabase::IDBDatabase):
1896 (WebCore::IDBDatabase::~IDBDatabase):
1897 (WebCore::IDBDatabase::setVersion):
1898 (WebCore::IDBDatabase::close):
1899 (WebCore::IDBDatabase::open):
1900 * storage/IDBDatabase.h:
1901 * storage/IDBDatabaseCallbacks.h:
1902 (WebCore::IDBDatabaseCallbacks::unRegisterDatabase):
1903 * storage/IDBDatabaseCallbacksImpl.cpp: Copied from Source/WebCore/storage/IDBDatabaseCallbacks.h.
1904 (WebCore::IDBDatabaseCallbacksImpl::create):
1905 (WebCore::IDBDatabaseCallbacksImpl::IDBDatabaseCallbacksImpl):
1906 (WebCore::IDBDatabaseCallbacksImpl::onVersionChange):
1907 (WebCore::IDBDatabaseCallbacksImpl::unRegisterDatabase):
1908 * storage/IDBDatabaseCallbacksImpl.h: Copied from Source/WebCore/storage/IDBDatabaseCallbacks.h.
1909 (WebCore::IDBDatabaseCallbacksImpl::~IDBDatabaseCallbacksImpl):
1911 2011-03-15 Adam Barth <abarth@webkit.org>
1913 Reviewed by Dimitri Glazkov.
1915 accessibility should build in WebCore GYP build
1916 https://bugs.webkit.org/show_bug.cgi?id=56405
1918 This patch changes our include/exclude strategy to more closely match
1919 the strategy used by the Chromium GYP build system. Ideally, we'd find
1920 a way to share more of these patterns. In the meantime, I'm going to
1921 slowly increase the number of translation units in the project and
1922 adjust the include/exclude filters appropriately.
1926 2011-03-15 Alexey Proskuryakov <ap@apple.com>
1928 Reviewed by Darin Adler.
1930 REGRESSION (WebKit2): keygen element doesn't work
1931 https://bugs.webkit.org/show_bug.cgi?id=56402
1932 <rdar://problem/9006545>
1934 Covered by existing regresison tests.
1936 * English.lproj/Localizable.strings:
1938 * WebCore.exp.in: Removed WebCoreKeyGenerator, which no longer exists. Added
1939 _wkSignedPublicKeyAndChallengeString, so that this WKSI function could be used in WebCore.
1941 * platform/mac/SSLKeyGeneratorMac.mm: Removed.
1942 * platform/mac/WebCoreKeyGenerator.h: Removed.
1943 * platform/mac/WebCoreKeyGenerator.m: Removed.
1944 * platform/mac/WebCoreSystemInterface.h:
1945 * platform/mac/WebCoreSystemInterface.mm:
1946 * WebCore.xcodeproj/project.pbxproj:
1947 Renamed SSLKeyGeneratorMac.mm to .cpp, as it doesn't use any Objective C any more.
1948 Removed WebCoreKeyGenerator, as we no longer need an interface to WebKit.
1950 * platform/LocalizationStrategy.h:
1951 * platform/LocalizedStrings.cpp:
1952 (WebCore::keygenMenuItem512):
1953 (WebCore::keygenMenuItem1024):
1954 (WebCore::keygenMenuItem2048):
1955 (WebCore::keygenKeychainItemName):
1956 * platform/LocalizedStrings.h:
1957 Added strings used by keygen element, now that the code using them is in WebCore.
1959 * platform/mac/SSLKeyGeneratorMac.cpp: Copied from Source/WebCore/platform/mac/SSLKeyGeneratorMac.mm.
1960 (WebCore::getSupportedKeySizes):
1961 (WebCore::signedPublicKeyAndChallengeString):
1962 Moved the code from WebKit. There is never any need to provide implementation at runtime,
1963 like old code was doing.
1965 * platform/win/SSLKeyGeneratorWin.cpp: (WebCore::WebCore::getSupportedKeySizes):
1966 Added a FIXME about localization. Note that Safari for Windows doesn't support keygen.
1968 2011-03-15 Anders Carlsson <andersca@apple.com>
1972 * platform/graphics/GraphicsContext3D.h:
1973 * platform/graphics/GraphicsLayer.h:
1975 2011-03-15 Simon Fraser <simon.fraser@apple.com>
1977 Fix Lion build after r81161.
1979 Pass the PlatformCALayer down into drawLayerContents()
1980 so we can use its acceleratesDrawing() method.
1982 * platform/graphics/mac/WebLayer.h:
1983 * platform/graphics/mac/WebLayer.mm:
1984 (drawLayerContents):
1985 (-[WebLayer drawInContext:]):
1986 * platform/graphics/mac/WebTiledLayer.mm:
1987 (-[WebTiledLayer drawInContext:]):
1989 2011-03-15 Alok priyadarshi <alokp@chromium.org>
1991 Reviewed by James Robinson.
1993 Valgrind error due to uninitialized PluginLayerChromium::m_textureId
1994 https://bugs.webkit.org/show_bug.cgi?id=56390
1996 * platform/graphics/chromium/PluginLayerChromium.cpp:
1997 (WebCore::PluginLayerChromium::PluginLayerChromium):
1998 * platform/graphics/chromium/PluginLayerChromium.h:
1999 (WebCore::PluginLayerChromium::textureId):
2001 2011-03-14 Nikolas Zimmermann <nzimmermann@rim.com>
2003 Reviewed by Dirk Schulze.
2005 REGRESSION (r68976): Incorrect bidi rendering in SVG text
2006 https://bugs.webkit.org/show_bug.cgi?id=53980
2008 rework the test engine or SVG "text-intro" tests so we can turn them back on
2009 https://bugs.webkit.org/show_bug.cgi?id=6524
2011 svg/W3C-SVG-1.1/text-intro-0*.svg fail when MS Office fonts are present
2012 https://bugs.webkit.org/show_bug.cgi?id=11662
2014 svg/batik/text/textBiDi.svg failing
2015 https://bugs.webkit.org/show_bug.cgi?id=17392
2017 SVG bidi examples at w3C I18N WG tutorials are not rendered correctly.
2018 https://bugs.webkit.org/show_bug.cgi?id=24374
2020 Implement proper bidirectionality support for SVG text.
2022 BiDi didn't work properly until now, because the x/y/dx/dy/rotate value lists are stored in logical order (aka. in
2023 the order the characters appear in the markup), and when laying out bidi text, we associated the current character
2024 in visual order with the current x/y/dx/dy/rotate value in logical order, messing up RTL text layout.
2025 The BiDi algorithm itself, inherited by RenderBlockLineLayout, works just fine, the inline box tree is correct.
2028 Before the inline box tree is created, SVGTextLayoutAttributesBuilder builds a list of x/y/dx/dy/rotate/<text metrics>
2029 for each RenderSVGInlineText* object, called SVGTextLayoutAttributes. This happens in logical order, as specified in
2030 the markup. <text x="10 20" y="10">abcdef</text> creates a SVGTextLayoutAttributes object in the renderer associated with
2031 "abcdef" that contains (10, 20) for x, (10) for y, the dx/dy/rotate lists are empty, and the SVGTextMetrics list holds 6
2032 width/height values for each of the glyphs (and some other infromation, see SVGTextMetrics class).
2033 The SVGTextLayoutAttributes object is _used by_ RenderBlockLineLayout when applying the BiDi algorithm as SVG demands
2034 that BiDi reordering does not happen across text chunks (a text chunk is defined by an absolute position, eg. x="10").
2036 To summarize: SVGTextLayoutAttributes are stored in all RenderSVGInlineText renderers, caching the metrics of all
2037 characters, their position based on the DOM attributes x/y/dx/dy/rotate. Using that information it's possible to
2038 determine whether a position starts a new text chunk, and that's used by RenderBlockLineLayout to create the
2039 inline box tree, in _visual order_, as it will appear on screen.
2041 After the inline box tree is created, the SVGRootInlineBox traverses its children in visual order and feeds the
2042 found text boxes to SVGTextLayoutEngine, which lays out the text on a line or a path, according to SVG text layout
2043 rules. For each character of the passed in InlineTextBox, it determines the x/y/dx/dy/rotate value, and the position
2044 in the <text metrics> list of the renderer. The problem here is that the passed in text boxes are in visual order,
2045 the x/y/.. lists are all in logical order.
2047 Example: <text direction="rtl" unicde-bidi="bidi-override" x="10 20">abcdef</text>, reverse the text direction:
2048 the visual order now is: "fedcba", where 'f' should be associated with x="10" and 'e' with x="20".
2050 Fix that problem, by computing a list of text boxes in _logical_ order in advance and pass it to SVGTextLayoutEngine,
2051 before it starts processing the boxes in visual order, fed by SVGRootInlineBox. When laying oout text, we can now
2052 process text in visual order, but grab the x/y/.. coordinates from the renderer in logical order.
2054 Some more work was needed to truly fix Arabic. The SVGTextLayoutAttributesBuilder measured all characters isolated,
2055 which is not a problem with latin text, but results in wrong advances for Arabic text, as isolated forms, instead of
2056 shaped forms are measured. This broke text-anchor support, text queries on Arabic text etc. Fixed now, covered by
2057 dozens of new tests.
2059 Tests: svg/W3C-I18N/g-dirLTR-ubNone.svg
2060 svg/W3C-I18N/g-dirLTR-ubOverride.svg
2061 svg/W3C-I18N/g-dirRTL-ubNone.svg
2062 svg/W3C-I18N/g-dirRTL-ubOverride.svg
2063 svg/W3C-I18N/text-anchor-dirLTR-anchorEnd.svg
2064 svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle.svg
2065 svg/W3C-I18N/text-anchor-dirLTR-anchorStart.svg
2066 svg/W3C-I18N/text-anchor-dirNone-anchorEnd.svg
2067 svg/W3C-I18N/text-anchor-dirNone-anchorMiddle.svg
2068 svg/W3C-I18N/text-anchor-dirNone-anchorStart.svg
2069 svg/W3C-I18N/text-anchor-dirRTL-anchorEnd.svg
2070 svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle.svg
2071 svg/W3C-I18N/text-anchor-dirRTL-anchorStart.svg
2072 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd.svg
2073 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle.svg
2074 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart.svg
2075 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd.svg
2076 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle.svg
2077 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart.svg
2078 svg/W3C-I18N/text-anchor-no-markup.svg
2079 svg/W3C-I18N/text-dirLTR-ubNone.svg
2080 svg/W3C-I18N/text-dirLTR-ubOverride.svg
2081 svg/W3C-I18N/text-dirRTL-ubNone.svg
2082 svg/W3C-I18N/text-dirRTL-ubOverride.svg
2083 svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context.svg
2084 svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context.svg
2085 svg/W3C-I18N/tspan-dirLTR-ubOverride-in-default-context.svg
2086 svg/W3C-I18N/tspan-dirLTR-ubOverride-in-ltr-context.svg
2087 svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context.svg
2088 svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context.svg
2089 svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context.svg
2090 svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context.svg
2091 svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-default-context.svg
2092 svg/W3C-I18N/tspan-dirRTL-ubEmbed-in-ltr-context.svg
2093 svg/W3C-I18N/tspan-dirRTL-ubNone-in-default-context.svg
2094 svg/W3C-I18N/tspan-dirRTL-ubNone-in-ltr-context.svg
2095 svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context.svg
2096 svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context.svg
2097 svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context.svg
2098 svg/W3C-I18N/tspan-direction-ltr.svg
2099 svg/W3C-I18N/tspan-direction-rtl.svg
2100 svg/W3C-SVG-1.1-SE/text-intro-02-b.svg
2101 svg/W3C-SVG-1.1-SE/text-intro-05-t.svg
2102 svg/W3C-SVG-1.1-SE/text-intro-09-b.svg
2103 svg/W3C-SVG-1.1/text-align-08-b.svg
2104 svg/W3C-SVG-1.1/text-fonts-03-t.svg
2105 svg/W3C-SVG-1.1/text-intro-01-t.svg
2106 svg/W3C-SVG-1.1/text-intro-02-b.svg
2107 svg/W3C-SVG-1.1/text-intro-03-b.svg
2108 svg/W3C-SVG-1.1/text-intro-04-t.svg
2109 svg/text/bidi-reorder-value-lists.svg
2110 svg/text/bidi-text-anchor-direction.svg
2111 svg/text/bidi-text-query.svg
2112 svg/text/bidi-tspans.svg
2114 * rendering/RenderBlockLineLayout.cpp: Remove hack that forced LTR support when unicode-bidi="normal" and handling SVG text.
2115 (WebCore::RenderBlock::determineStartPosition):
2116 * rendering/svg/SVGInlineTextBox.cpp: s/fragment.positionListOffset/fragment.characterOffset/
2117 (WebCore::SVGInlineTextBox::offsetForPositionInFragment):
2118 (WebCore::SVGInlineTextBox::constructTextRun):
2119 (WebCore::SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates):
2120 * rendering/svg/SVGRenderTreeAsText.cpp: Ditto.
2121 (WebCore::writeSVGInlineTextBox):
2122 * rendering/svg/SVGRootInlineBox.cpp: Add new buildTextBoxListInLogicalOrder(), collecting all text boxes recursively in logical order (aka. as specified in markup).
2123 This is needed as we have to process x/y/dx/dy/rotate value lists of text/tspan/.. elements in logical order, not in visual
2124 order as the characters are presented on screen.
2125 (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
2126 (WebCore::SVGRootInlineBox::buildTextBoxListInLogicalOrder):
2127 (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
2128 * rendering/svg/SVGRootInlineBox.h:
2129 * rendering/svg/SVGTextChunk.cpp: Cleanup code, minimize SVGTextChunks memory consumption.
2130 (WebCore::SVGTextChunk::SVGTextChunk): A text chunk now know whether its base progress direction is left-to-right or right-to-left.
2131 (WebCore::SVGTextChunk::calculateLength):
2132 (WebCore::SVGTextChunk::calculateTextAnchorShift): Make text-anchor direction aware. text-anchor="start/end" meaning depends on the context (ltr vs. rtl).
2133 * rendering/svg/SVGTextChunk.h: Adapt code, merging three members into a bitfield.
2134 (WebCore::SVGTextChunk::isVerticalText):
2135 (WebCore::SVGTextChunk::hasDesiredTextLength):
2136 (WebCore::SVGTextChunk::hasTextAnchor):
2137 (WebCore::SVGTextChunk::hasLengthAdjustSpacing):
2138 (WebCore::SVGTextChunk::hasLengthAdjustSpacingAndGlyphs):
2139 * rendering/svg/SVGTextChunkBuilder.cpp: Adapt to SVGTextChunk code changes.
2140 (WebCore::SVGTextChunkBuilder::addTextChunk):
2141 (WebCore::SVGTextChunkBuilder::processTextChunk):
2142 * rendering/svg/SVGTextFragment.h: Add metricsListOffset, needed only while laying out text.
2143 (WebCore::SVGTextFragment::SVGTextFragment): Rename positionListOffset to characterOffset, as it describes an offset in the textRenderer->characters() array.
2144 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp
2145 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes): Fix measuring Arabic text in LTR/RTL modes. Assure that each SVGTextMetrics object
2146 that we cache, refers to the _rendered_ character. For Arabic text that means, that we're
2147 measuring the shaped width of the glyph, not the glyph in its isolated form. Without that
2148 fix reordering boxes containing Arabic is wrong.
2149 * rendering/svg/SVGTextLayoutEngine.cpp: SVGTextLayoutEngine is fed with text boxes to be laid out in _visual_ order, left-to-right, after the BiDi algorithm
2150 has been applied by RenderBlockLineLayout to create the inline box tree. The coordinates lists x/y/dx/dy/rotate have
2151 to be processed in _logical_ order. SVGRootInlineBox now passes a list of text boxes in logical order to SVGTextLayoutEngine,
2152 to assure it grabs the coordinates from the correct InlineTextBox. See examples at the top of the ChangeLog.
2153 (WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
2154 (WebCore::SVGTextLayoutEngine::recordTextFragment): No need to measure text here anymore, SVGTextLayoutAttributesBuilder now provides exact advances for each glyph.
2155 The width of a SVGTextFragment is always equal to the sum of each glyph advance. (This was not the case for
2157 (WebCore::SVGTextLayoutEngine::finalizeTransformMatrices):
2158 (WebCore::SVGTextLayoutEngine::nextLogicalBoxAndOffset): Computes the next logical box and the offset to the next coordinate value in its position list.
2159 (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
2160 * rendering/svg/SVGTextLayoutEngine.h: Add CharacterRange helper struct.
2161 (WebCore::SVGTextLayoutEngine::CharacterRange::CharacterRange):
2162 * rendering/svg/SVGTextMetrics.cpp: Remove unused measureAllCharactersIndividually() method.
2163 (WebCore::constructTextRun): Pass direction and unicode-bidi="override" values to the TextRun, otherwhise LTR is always asumed.
2164 * rendering/svg/SVGTextMetrics.h:
2165 (WebCore::SVGTextMetrics::setWidth): Add private setter, only SVGTextLayoutAttributesBuilder is allowed to modify the metrics (to fix up glyph widths for Arabic).
2166 * rendering/svg/SVGTextQuery.cpp: s/fragment.positionListOffset/fragment.characterOffset/
2167 (WebCore::SVGTextQuery::subStringLengthCallback):
2168 (WebCore::SVGTextQuery::startPositionOfCharacterCallback):
2169 (WebCore::SVGTextQuery::endPositionOfCharacterCallback):
2170 (WebCore::calculateGlyphBoundaries):
2172 2011-03-15 Sergio Villar Senin <svillar@igalia.com>
2174 Reviewed by Xan Lopez.
2176 [GTK] Fix make distcheck for 1.3.13 release
2177 https://bugs.webkit.org/show_bug.cgi?id=56371
2179 No new tests as this is a build fix.
2181 * GNUmakefile.am: added a couple of missing files.
2183 2011-03-08 Levi Weintraub <leviw@chromium.org>
2185 Reviewed by Ryosuke Niwa.
2187 Get rid of firstDeepEditingPositionForNode and lastDeepEditingPositionForNode
2188 https://bugs.webkit.org/show_bug.cgi?id=52642
2190 Replacing calls to first/lastDeepEditingPositionForNode with calls to their analogous
2191 functions that create new positions. Also fixing various parts of editing code that
2192 incorrectly handled the new positions now being created.
2194 No new tests as this is refactoring/cleanup.
2196 * accessibility/AccessibilityRenderObject.cpp:
2197 (WebCore::AccessibilityRenderObject::visiblePositionRange):
2199 (WebCore::Position::parentAnchoredEquivalent):
2200 (WebCore::Position::previous):
2201 (WebCore::Position::next):
2202 (WebCore::Position::atFirstEditingPositionForNode):
2203 (WebCore::Position::atLastEditingPositionForNode):
2204 (WebCore::Position::upstream):
2205 (WebCore::Position::isCandidate):
2206 (WebCore::Position::getInlineBoxAndOffset):
2208 (WebCore::operator==):
2209 * dom/PositionIterator.cpp:
2210 (WebCore::PositionIterator::operator Position):
2211 * editing/ApplyBlockElementCommand.cpp:
2212 (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded):
2213 * editing/CompositeEditCommand.cpp:
2214 (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
2215 * editing/DeleteSelectionCommand.cpp:
2216 (WebCore::isTableCellEmpty):
2217 (WebCore::DeleteSelectionCommand::removeNode):
2218 * editing/InsertLineBreakCommand.cpp:
2219 (WebCore::InsertLineBreakCommand::doApply):
2220 * editing/InsertListCommand.cpp:
2221 (WebCore::InsertListCommand::unlistifyParagraph):
2222 * editing/ReplaceSelectionCommand.cpp:
2223 (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent):
2224 * editing/TypingCommand.cpp:
2225 (WebCore::TypingCommand::forwardDeleteKeyPressed):
2226 * editing/VisibleSelection.cpp:
2227 (WebCore::VisibleSelection::selectionFromContentsOfNode):
2228 (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
2229 * editing/htmlediting.cpp:
2230 (WebCore::firstEditablePositionAfterPositionInRoot):
2231 (WebCore::lastEditablePositionBeforePositionInRoot):
2232 (WebCore::enclosingEmptyListItem):
2233 * editing/htmlediting.h:
2234 * editing/visible_units.cpp:
2235 (WebCore::startOfParagraph):
2236 (WebCore::endOfParagraph):
2237 (WebCore::startOfEditableContent):
2238 (WebCore::endOfEditableContent):
2239 * rendering/RenderBox.cpp:
2240 (WebCore::RenderBox::positionForPoint):
2242 2011-03-15 Beth Dakin <bdakin@apple.com>
2244 Attempted build fix.
2246 * platform/mac/ScrollAnimatorMac.mm:
2247 (WebCore::ScrollAnimatorMac::cancelAnimations):
2249 2011-03-15 David Hyatt <hyatt@apple.com>
2251 Reviewed by Dave Levin.
2253 https://bugs.webkit.org/show_bug.cgi?id=56329
2255 Fix FontCache problems on Linux. Make sure not to mutate the platform data passed in to SimpleFontData's
2256 constructor. Change this code to match Mac and to set the new m_hasVerticalGlyphs boolean instead of
2257 mutating orientation.
2259 * platform/graphics/chromium/SimpleFontDataLinux.cpp:
2260 (WebCore::SimpleFontData::platformInit):
2262 2011-03-15 Simon Fraser <simon.fraser@apple.com>
2264 Reviewed by Dan Bernstein.
2266 Disable ShadowBlur shadow drawing in accelerated contexts
2267 https://bugs.webkit.org/show_bug.cgi?id=56392
2269 When drawing into a graphics context that is accelerated, don't use
2270 ShadowBlur, because it may be slower.
2272 * platform/graphics/GraphicsContext.h:
2273 * platform/graphics/cg/GraphicsContextCG.cpp:
2274 (WebCore::GraphicsContext::fillRect):
2275 (WebCore::GraphicsContext::fillRoundedRect):
2276 (WebCore::GraphicsContext::fillRectWithRoundedHole):
2277 (WebCore::GraphicsContext::setIsCALayerContext):
2278 (WebCore::GraphicsContext::isCALayerContext):
2279 (WebCore::GraphicsContext::setIsAcceleratedContext):
2280 (WebCore::GraphicsContext::isAcceleratedContext):
2281 * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
2282 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2283 * platform/graphics/mac/WebLayer.mm:
2284 (drawLayerContents):
2286 2011-03-15 Beth Dakin <bdakin@apple.com>
2288 Reviewed by Simon Fraser.
2290 Fix for <rdar://problem/9075624> Overlay scrollbars slow down PLT by 6%
2292 Tell the ScrollAnimator to cancelAnimations() since we are navigating to a new
2294 * loader/FrameLoader.cpp:
2295 (WebCore::FrameLoader::transitionToCommitted):
2297 Scroll animations should be suspended if the FrameLoadState is anything but
2299 * page/FrameView.cpp:
2300 (WebCore::FrameView::shouldSuspendScrollAnimations):
2302 * platform/ScrollableArea.h:
2303 (WebCore::ScrollableArea::shouldSuspendScrollAnimations):
2304 * rendering/RenderDataGrid.cpp:
2305 (WebCore::RenderDataGrid::shouldSuspendScrollAnimations):
2306 * rendering/RenderDataGrid.h:
2307 * rendering/RenderLayer.cpp:
2308 (WebCore::RenderLayer::shouldSuspendScrollAnimations):
2309 * rendering/RenderLayer.h:
2310 * rendering/RenderListBox.cpp:
2311 (WebCore::RenderListBox::shouldSuspendScrollAnimations):
2312 * rendering/RenderListBox.h:
2314 New virtual function cancelAnimations() is only needed on the Mac, so the base
2316 * platform/ScrollAnimator.h:
2317 (WebCore::ScrollAnimator::cancelAnimations):
2319 ScrollAnimatorMac needs to keep track of whether the page has been scrolled since
2320 it started loading. If so, we will override optimizations that wait for the
2321 FrameLoadState to be complete before animating scrollbars.
2322 * platform/mac/ScrollAnimatorMac.h:
2323 (WebCore::ScrollAnimatorMac::haveScrolledSincePageLoad):
2325 If the scrollbar animations should be suspended, we start a timer to make sure
2326 that we do flash the scrollbars. Animating the scrollbars is expensive, so this is
2327 both a performance optimization and a UI enhancement since the scrollbar won't
2328 jump around nearly as much on a page load.
2329 * platform/mac/ScrollAnimatorMac.mm:
2330 (-[ScrollbarPainterDelegate cancelAnimations]):
2331 (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2332 (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
2333 (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
2334 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2335 (WebCore::ScrollAnimatorMac::scroll):
2336 (WebCore::ScrollAnimatorMac::handleWheelEvent):
2337 (WebCore::ScrollAnimatorMac::cancelAnimations):
2338 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2339 (WebCore::ScrollAnimatorMac::beginScrollGesture):
2340 (WebCore::ScrollAnimatorMac::startScrollbarPaintTimer):
2341 (WebCore::ScrollAnimatorMac::scrollbarPaintTimerIsActive):
2342 (WebCore::ScrollAnimatorMac::stopScrollbarPaintTimer):
2343 (WebCore::ScrollAnimatorMac::initialScrollbarPaintTimerFired):
2345 New WebCoreSystemInterface function to force the scrollbars to flash
2347 * platform/mac/WebCoreSystemInterface.h:
2348 * platform/mac/WebCoreSystemInterface.mm:
2350 2011-03-15 Dimitri Glazkov <dglazkov@chromium.org>
2352 Reviewed by Adam Barth.
2354 Remove stale comment at RenderStyle::diff.
2355 https://bugs.webkit.org/show_bug.cgi?id=56387
2357 * rendering/style/RenderStyle.cpp: Removed comment.
2359 2011-03-15 David Kilzer <ddkilzer@apple.com>
2361 <http://webkit.org/b/56381> Objective-C classes should be typedef-ed as structs (not void*) in C++
2363 Reviewed by Simon Fraser.
2365 Typedef-ing Objective-C classes as void* for pure C++ makes it
2366 easier for bugs to creep in because compilers can't do any type
2367 checking for void pointers.
2369 * platform/graphics/GraphicsContext3D.h: Changed typedef
2370 declarations for CALayer and WebGLLayer from void* to structs.
2371 (WebCore::GraphicsContext3D::platformLayer): Changed
2372 static_cast<CALayer*> to reinterpret_cast<CALayer*> now that
2373 CALayer and WebGLLayer are not void pointers.
2374 * platform/graphics/GraphicsLayer.h: Changed typedef declaration
2375 for PlatformLayer from void* to struct CALayer.
2376 * platform/graphics/ca/PlatformCAAnimation.h: Changed typedef
2377 declaration for CAPropertyAnimation from void* to a struct.
2378 Extracted typdef for PlatformAnimationRef.
2380 2011-03-15 Ilya Sherman <isherman@chromium.org>
2382 Reviewed by Tony Chang.
2384 Autofilled form elements are assigned fixed background color but not text color
2385 https://bugs.webkit.org/show_bug.cgi?id=48382
2387 Test: fast/forms/input-autofilled.html
2390 (input:-webkit-autofill): Added foreground color: #000000
2392 (input:-webkit-autofill): Added foreground color: #000000
2394 2011-03-15 Alexis Menard <alexis.menard@openbossa.org>
2396 Reviewed by Eric Carlson.
2398 HTMLMediaElement::mediaPlayerPlaybackStateChanged should not change the "public" state of the element
2399 if it's an internal pause for example.
2400 https://bugs.webkit.org/show_bug.cgi?id=56374
2402 In case of an internal pause, the callback from the mediaplayer should be ignored to avoid reflecting the
2403 change into the DOM.
2405 No new tests: Verified manually.
2407 * html/HTMLMediaElement.cpp:
2408 (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged):
2410 2011-03-12 Pavel Podivilov <podivilov@chromium.org>
2412 Reviewed by Yury Semikhatsky.
2414 Web Inspector: re-implement xhr breakpoints.
2415 https://bugs.webkit.org/show_bug.cgi?id=56252
2417 - restore xhr breakpoints one by one instead of using setAllBrowserBreakpoints
2418 - store xhr breakpoints in a separate setting
2419 - move presentation-related code from BreakpointManager to XHRBreakpointsSidebarPane
2421 Test: inspector/debugger/xhr-breakpoints.html
2423 * inspector/InspectorBrowserDebuggerAgent.cpp:
2424 (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
2425 (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
2426 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
2427 (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
2428 (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
2429 (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
2430 (WebCore::InspectorBrowserDebuggerAgent::clear):
2431 * inspector/InspectorBrowserDebuggerAgent.h:
2432 * inspector/front-end/BreakpointManager.js:
2433 (WebInspector.BreakpointManager.prototype.setXHRBreakpoint):
2434 (WebInspector.BreakpointManager.prototype.removeXHRBreakpoint):
2435 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
2436 (WebInspector.BreakpointManager.prototype._projectChanged):
2437 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
2438 (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
2439 * inspector/front-end/BreakpointsSidebarPane.js:
2440 (WebInspector.XHRBreakpointsSidebarPane):
2441 (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked.finishEditing):
2442 (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked):
2443 (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
2444 (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
2445 (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu.removeBreakpoint):
2446 (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu):
2447 (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
2448 (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked.finishEditing):
2449 (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked):
2450 (WebInspector.XHRBreakpointsSidebarPane.prototype.highlightBreakpoint):
2451 (WebInspector.XHRBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
2452 (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
2453 (WebInspector.XHRBreakpointsSidebarPane.prototype._restoreBreakpoints):
2454 (WebInspector.XHRBreakpointsSidebarPane.prototype._projectChanged):
2455 * inspector/front-end/CallStackSidebarPane.js:
2456 (WebInspector.CallStackSidebarPane.prototype.update):
2457 (WebInspector.CallStackSidebarPane.prototype._xhrBreakpointHit):
2458 * inspector/front-end/ScriptsPanel.js:
2459 (WebInspector.ScriptsPanel):
2460 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2461 (WebInspector.ScriptsPanel.prototype._clearInterface):
2462 * inspector/front-end/Settings.js:
2463 (WebInspector.Settings):
2464 * inspector/front-end/inspector.js:
2465 (WebInspector.resetFocusElement):
2466 (WebInspector.set attached):
2468 2011-03-15 Kevin Ollivier <kevino@theolliviers.com>
2470 Reviewed by Darin Adler.
2472 Introduce WTF_USE_EXPORT_MACROS, which will allow us to put shared library import/export
2473 info into the headers rather than in export symbol definition files, but disable it on
2474 all platforms initially so we can deal with port build issues one port at a time.
2476 https://bugs.webkit.org/show_bug.cgi?id=27551
2479 * platform/mac/LoggingMac.mm:
2481 2011-03-15 Ilya Tikhonovsky <loislo@chromium.org>
2483 Unreviewed build fix.
2485 Chromium: shared lib linux build are failing.
2487 Two exclude rules for LocalizedNumberNone and TextEncodingDetectorNone were added to the wrong library.
2488 It was webcore_remaining instead of webcore_platform.
2490 * WebCore.gyp/WebCore.gyp:
2492 2011-03-15 Yury Semikhatsky <yurys@chromium.org>
2494 Reviewed by Pavel Feldman.
2496 Web Inspector: expanding/collapsing object shouldn't affect outer console.group expansion state
2497 https://bugs.webkit.org/show_bug.cgi?id=56373
2499 * inspector/front-end/Section.js:
2500 (WebInspector.Section):
2501 (WebInspector.Section.prototype.toggleExpanded):
2502 (WebInspector.Section.prototype.handleClick): stop click even propagation if it was handled by this section.
2504 2011-03-15 Pavel Feldman <pfeldman@chromium.org>
2506 Reviewed by Yury Semikhatsky.
2508 Web Inspector: crash upon "//html//@id" search in elements panel.
2509 https://bugs.webkit.org/show_bug.cgi?id=56334
2511 * inspector/InspectorDOMAgent.cpp:
2512 * inspector/front-end/ElementsTreeOutline.js:
2514 2011-03-15 Andrey Kosyakov <caseq@chromium.org>
2516 Reviewed by Yury Semikhatsky.
2518 Web Inspector: further extension API cleanup (removed inspectedPage, add experimental prefix)
2519 https://bugs.webkit.org/show_bug.cgi?id=56327
2521 * inspector/front-end/ExtensionAPI.js:
2522 (WebInspector.injectedExtensionAPI):
2523 * inspector/front-end/ExtensionAPISchema.json:
2525 2011-03-15 Yury Semikhatsky <yurys@chromium.org>
2527 Reviewed by Pavel Feldman.
2529 Web Inspector: when console.groupEnd calls twice
2530 https://bugs.webkit.org/show_bug.cgi?id=56114
2532 Test: inspector/console/console-nested-group.html
2534 * inspector/ConsoleMessage.h:
2535 (WebCore::ConsoleMessage::type):
2536 * inspector/InspectorConsoleAgent.cpp:
2537 (WebCore::InspectorConsoleAgent::addConsoleMessage): do not coalesce adjacent EndGroup messages.
2539 2011-03-15 Chris Mumford <chris.mumford@palm.com>
2541 Reviewed by Adam Barth.
2543 Initializing several member variables that were not initialized in
2544 their constructors. These values were all read prior to initialization
2545 as reported by Valgrind.
2547 No new tests: No feature additions/removals.
2549 * accessibility/AccessibilityImageMapLink.cpp:
2550 (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
2551 * editing/DeleteSelectionCommand.cpp:
2552 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
2553 * html/HTMLCanvasElement.cpp:
2554 (WebCore::HTMLCanvasElement::HTMLCanvasElement):
2555 * xml/XPathResult.cpp:
2556 (WebCore::XPathResult::XPathResult):
2558 2011-03-15 Ben Taylor <bentaylor.solx86@gmail.com>
2560 Reviewed by Adam Barth.
2562 https://bugs.webkit.org/show_bug.cgi?id=56255
2563 Fix build on Solaris 10/Sun Studio 12 C++
2565 No new tests. This is to fix compilation on Solaris 10 with Sun Studio 12 C++
2567 * bridge/runtime_array.h:
2568 (JSC::RuntimeArray::getConcreteArray):
2570 2011-03-14 Sam Weinig <sam@webkit.org>
2572 Reviewed by Adam Roben
2574 about:blank fake responses don't get serialized when sent the UIProcess
2575 <rdar://problem/9108119>
2576 https://bugs.webkit.org/show_bug.cgi?id=56357
2578 Test: AboutBlankLoad
2580 * platform/network/cf/ResourceResponse.h:
2581 * platform/network/cf/ResourceResponseCFNet.cpp:
2582 (WebCore::ResourceResponse::cfURLResponse):
2583 Create a CFURLResponseRef if one does not exist yet as we do for
2584 NSURLResponses on the mac.
2586 2011-03-14 Alexis Menard <alexis.menard@openbossa.org>
2588 Reviewed by Kenneth Rohde Christiansen.
2590 [Qt] Seeking videos using the timeline bar does not work properly and stop the video playback.
2591 https://bugs.webkit.org/show_bug.cgi?id=56145
2593 We do not need seekTimeout and queuedSeekTimeout anymore. setPosition on QMediaPlayer is good enough.
2594 positionChanged() will be emitted when the data is buffered. On Linux the signal was not emitted because
2595 of a bug in QtMultimedia.
2597 * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
2598 (WebCore::MediaPlayerPrivateQt::MediaPlayerPrivateQt):
2599 (WebCore::MediaPlayerPrivateQt::seek):
2600 (WebCore::MediaPlayerPrivateQt::stateChanged):
2601 (WebCore::MediaPlayerPrivateQt::positionChanged):
2602 * platform/graphics/qt/MediaPlayerPrivateQt.h:
2604 2011-03-14 Alexey Proskuryakov <ap@apple.com>
2606 Reviewed by Adam Roben.
2608 https://bugs.webkit.org/show_bug.cgi?id=44138
2609 Crash beneath SocketStreamHandle::readStreamCallback when running websocket/tests/workers/worker-handshake-challenge-randomness.html
2611 https://bugs.webkit.org/show_bug.cgi?id=55375
2612 http/tests/websocket/tests/reload-crash.html sometimes crashes beneath SocketStreamHandle::readStreamCallback on Windows
2614 https://bugs.webkit.org/show_bug.cgi?id=56185
2615 http/tests/websocket/tests/url-with-credential.html sometimes crashes beneath SocketStreamHandle::readStreamCallback on Windows
2617 * platform/network/cf/SocketStreamHandle.h: Made SocketStreamHandle ThreadSafeShared, so that
2618 a pointer can be passed across threads when wrapped in a RefPtr.
2620 * platform/network/cf/SocketStreamHandleCFNet.cpp: Make sure that an object still exists
2621 when executing a method on main thread by using RefPtr.
2623 2011-03-14 Sam Weinig <sam@webkit.org>
2625 Mac build fix. Part 1 of N.
2629 2011-03-14 Joseph Pecoraro <joepeck@webkit.org>
2631 Reviewed by Eric Carlson.
2633 Stalled media elements don't stop delaying the load event
2634 https://bugs.webkit.org/show_bug.cgi?id=56316
2636 We should stop delaying the load event when the load has
2637 stalled naturally, or if we require a user gesture to
2640 Test: http/tests/media/video-play-stall-before-meta-data.html
2642 * html/HTMLMediaElement.cpp:
2643 (WebCore::HTMLMediaElement::setNetworkState): when suspending, stop delaying.
2644 (WebCore::HTMLMediaElement::progressEventTimerFired): when stalling, stop delaying.
2646 2011-03-13 MORITA Hajime <morrita@google.com>
2648 Reviewed by Tony Chang.
2650 Crash when dragging and dropping in a document with an invalid XHTML header
2651 https://bugs.webkit.org/show_bug.cgi?id=48799
2653 DragController tried to dispatch textInput event even when the
2654 drag destination is not the editable area.
2655 This change skips the event dispatching on that case.
2657 Test: editing/pasteboard/drop-file-svg.html
2659 * page/DragController.cpp:
2660 (WebCore::DragController::dispatchTextInputEventFor):
2661 (WebCore::DragController::concludeEditDrag):
2663 2011-03-14 Sheriff Bot <webkit.review.bot@gmail.com>
2665 Unreviewed, rolling out r81094.
2666 http://trac.webkit.org/changeset/81094
2667 https://bugs.webkit.org/show_bug.cgi?id=56355
2669 Broke the chromium DRT related build. (Requested by dave_levin
2675 (WebCore::Frame::layerTreeAsText):
2677 * rendering/RenderLayerCompositor.cpp:
2678 (WebCore::RenderLayerCompositor::layerTreeAsText):
2679 * rendering/RenderLayerCompositor.h:
2681 2011-03-14 Adam Barth <abarth@webkit.org>
2683 Apparently we need to exclude DefaultSharedWorkerRepository.cpp from
2684 the Chromium build, otherwise the objects visible in the global scope
2687 * WebCore.gyp/WebCore.gyp:
2689 2011-03-14 Adam Barth <abarth@webkit.org>
2691 Attempted Chromium build fix. Exclude AllInOne harder.
2693 * WebCore.gyp/WebCore.gyp:
2695 2011-03-14 Ryosuke Niwa <rniwa@webkit.org>
2697 Reviewed by Darin Adler.
2699 EventHandler calls shouldChangeSelection needlessly
2700 https://bugs.webkit.org/show_bug.cgi?id=56324
2702 Extracted setSelectionIfNeeded and setNonDirectionalSelectionIfNeeded and
2703 avoided calling shouldChangeSelection and setSelection when the existing
2704 selection is identical to that of new selection.
2706 * page/EventHandler.cpp:
2707 (WebCore::setSelectionIfNeeded): Extracted.
2708 (WebCore::setNonDirectionalSelectionIfNeeded): Extracted.
2709 (WebCore::EventHandler::selectClosestWordFromMouseEvent): Calls a helper function above.
2710 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Ditto.
2711 (WebCore::EventHandler::handleMousePressEventTripleClick): Ditto.
2712 (WebCore::EventHandler::handleMousePressEventSingleClick): Ditto.
2713 (WebCore::EventHandler::updateSelectionForMouseDrag): Ditto.
2714 (WebCore::EventHandler::handleMouseReleaseEvent): Ditto.
2716 2011-03-14 Daniel Sievers <sievers@google.com>
2718 Reviewed by Simon Fraser.
2720 [Chromium] Make RenderAsTextBehavior and LayerTreeAsTextBehavior tweakable from the DumpRenderTree commandline
2721 https://bugs.webkit.org/show_bug.cgi?id=56139
2726 (WebCore::Frame::layerTreeAsText):
2728 * rendering/RenderLayerCompositor.cpp:
2729 (WebCore::RenderLayerCompositor::layerTreeAsText):
2730 * rendering/RenderLayerCompositor.h:
2732 2011-03-14 Adam Barth <abarth@webkit.org>
2734 Reviewed by Dimitri Glazkov.
2736 Add remaining files to WebCore.gypi
2737 https://bugs.webkit.org/show_bug.cgi?id=56351
2739 Adding the remaining files to WebCore.gypi required updating the
2740 include/exclude lists in WebCore.gyp. These lists aren't overly
2741 elegant, but we can try to improve them in the future.
2743 * WebCore.gyp/WebCore.gyp:
2745 * bindings/v8/ScriptCachedFrameData.cpp:
2746 - Added ifdefs to this file to match the header.
2747 * platform/graphics/WOFFFileFormat.cpp:
2748 - Fixed build error when compiling without ENABLE(OPENTYPE_SANITIZER).
2750 2011-03-14 Anton Muhin <antonm@chromium.org>
2752 Reviewed by Adam Barth.
2754 [v8] Rework object group building.
2755 https://bugs.webkit.org/show_bug.cgi?id=55399
2757 Instead of going top-down (from owner to owned elements), go up---from objects
2758 to their group ids. That fits better to v8's object grouping model and guarantees
2759 that each wrapper belongs to the single group.
2761 Alas, this cannot be implemented for one kind of objects---CSSProperties.
2763 Part of core GC algorithm and tested extensively by exisiting layout tests.
2765 * bindings/scripts/CodeGeneratorV8.pm:
2766 * bindings/scripts/test/V8/V8TestInterface.cpp:
2767 * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
2768 * bindings/scripts/test/V8/V8TestObj.cpp:
2769 * bindings/v8/V8GCController.cpp:
2770 (WebCore::calculateGroupId):
2771 (WebCore::calculateRootStyleSheet):
2772 (WebCore::GrouperVisitor::visitDOMWrapper):
2773 (WebCore::GrouperVisitor::applyGrouping):
2774 (WebCore::V8GCController::gcPrologue):
2775 * bindings/v8/WrapperTypeInfo.h:
2776 (WebCore::WrapperTypeInfo::isSubclass):
2777 * css/CSSRuleList.h:
2778 (WebCore::CSSRuleList::styleList):
2779 * css/StyleSheetList.h:
2780 (WebCore::StyleSheetList::document):
2782 2011-03-14 Kent Tamura <tkent@chromium.org>
2784 Reviewed by James Robinson.
2786 Assertion failure by form validation message for <select required> with float:left
2787 https://bugs.webkit.org/show_bug.cgi?id=55995
2789 Test: fast/forms/interactive-validation-select-crash.html
2791 * rendering/RenderBlock.cpp:
2792 (WebCore::canMergeContiguousAnonymousBlocks):
2793 isAnonymousBlock() doesn't mean it is a RenderBlock. We need to check isRenderBlock().
2795 2011-03-14 Balazs Kelemen <kbalazs@webkit.org>
2797 Reviewed by Adam Roben.
2799 [Qt][WK2]Unbreak InjectedBundle on Qt
2800 https://bugs.webkit.org/show_bug.cgi?id=54109
2802 No code changes so no new tests.
2804 Revert the changes that were needed to use KURL
2805 in WebKitTestRunner.
2807 * Configurations/WebCore.xcconfig:
2810 2011-03-14 Jarkko Sakkinen <jarkko.j.sakkinen@gmail.com>
2812 Reviewed by Kenneth Rohde Christiansen.
2814 [Qt] Compilation fails with --3d-canvas
2815 https://bugs.webkit.org/show_bug.cgi?id=55964
2818 * platform/graphics/qt/Extensions3DQt.cpp:
2820 2011-03-14 Brian Weinstein <bweinstein@apple.com>
2822 Reviewed by Adam Roben and Gavin Barraclough.
2824 FileSystemWin.cpp needs listDirectory() implementation
2825 https://bugs.webkit.org/show_bug.cgi?id=56331
2826 <rdar://problem/9126635>
2828 Move PathWalker from an inline class in WebKit2 to its own class in WebCore,
2829 so it can be used from both WebCore and WebKit2.
2831 Implement FileSystemWin::listDirectory using PathWalker to populate the Vector
2832 of paths matching the passed in pattern.
2834 * WebCore.vcproj/WebCore.vcproj:
2835 * platform/win/FileSystemWin.cpp:
2836 (WebCore::listDirectory): Call through to PathWalker.
2837 * platform/win/PathWalker.cpp: Added.
2838 (WebCore::PathWalker::PathWalker): Moved from WebKit2. Added a second argument
2839 for the pattern to pass to the Windows File APIs.
2840 (WebCore::PathWalker::~PathWalker): Moved from WebKit2.
2841 (WebCore::PathWalker::isValid): Ditto.
2842 (WebCore::PathWalker::data): Ditto.
2843 (WebCore::PathWalker::step): Ditto.
2844 * platform/win/PathWalker.h: Added.
2846 2011-03-14 Brady Eidson <beidson@apple.com>
2848 Reviewed by Anders Carlsson.
2850 https://bugs.webkit.org/show_bug.cgi?id=56320
2851 Remove HistoryItem::icon() and the WebCore dependency on "IconDatabaseBase::defaultIcon()"
2853 Remove HistoryItem::icon():
2854 * history/HistoryItem.cpp:
2855 * history/HistoryItem.h:
2858 * loader/icon/IconDatabaseBase.h:
2859 (WebCore::IconDatabaseBase::defaultIcon):
2861 2011-03-14 Andy Estes <aestes@apple.com>
2863 Reviewed by Darin Adler.
2865 Timer-based events should inherit the user gesture state of their
2866 originating event in certain cases.
2867 https://bugs.webkit.org/show_bug.cgi?id=55104
2869 If a timer is installed by a gesture-originated event and will fire
2870 within one second, the timer-initiated event should behave as if it
2871 were also initiated by a user gesture. Multi-shot timers should only
2872 get this behavior on their first execution. Nested timers should not
2873 get this behavior. This makes us compatible with Gecko when handling
2874 popups and file chooser dialogs created from timer events.
2876 Test: fast/events/popup-blocking-timers.html
2878 * page/DOMTimer.cpp:
2879 (WebCore::timeoutId): Create a helper function so that m_timeoutId can
2880 be initialized in the data member initialization list.
2881 (WebCore::shouldForwardUserGesture): Ditto, but for
2882 m_shouldForwardUserGesture.
2883 (WebCore::DOMTimer::DOMTimer): Move initialization of data members from
2884 the ctor body to the data member initialization list. Also rename the
2885 argument 'timeout' to 'interval'.
2886 (WebCore::DOMTimer::fired): Create a UserGestureIndicator and set its
2887 state based on the value of m_shouldForwardUserGesture.
2888 (WebCore::DOMTimer::adjustMinimumTimerInterval): m_originalTimeout was
2889 renamed to m_originalInterval.
2890 * page/DOMTimer.h: Add m_shouldForwardUserGesture and rename
2891 m_originalTimeout to m_originalInterval.
2893 2011-03-09 Levi Weintraub <leviw@chromium.org>
2895 Reviewed by Ryosuke Niwa.
2897 Deleting content directly following a button inserts an unnecessary placeholder
2898 https://bugs.webkit.org/show_bug.cgi?id=56053
2900 Fixing a use of Node's enclosingBlockFlowElement with enclosingBlock htmlediting's
2901 enclosingBlock, as enclosingBlockFlowElement would return inline-block elements despite
2902 DeleteSelectionCommand treating them as blockflow.
2904 Test: editing/deleting/delete-inserts-br-after-button.html
2906 * editing/DeleteSelectionCommand.cpp:
2907 (WebCore::DeleteSelectionCommand::mergeParagraphs):
2909 2011-03-14 David Hyatt <hyatt@apple.com>
2911 Reviewed by Dan Bernstein.
2913 https://bugs.webkit.org/show_bug.cgi?id=45164
2915 REGRESSION: <a><img align=top></a> Clickable area too large
2917 Make sure to clamp hit testing of quirky inline flow boxes the same way we already clamped
2920 * rendering/InlineFlowBox.cpp:
2921 (WebCore::InlineFlowBox::nodeAtPoint):
2923 2011-03-14 Chris Marrin <cmarrin@apple.com>
2925 Reviewed by Adam Roben.
2927 REGRESSION (r75138-r75503): Animations on Apple HTML5 Gallery demo are wrong
2928 https://bugs.webkit.org/show_bug.cgi?id=52845
2930 The lastCommitTime() value in CACFLayerTreeHost was returning as the time
2931 the render previous to this one happened. That often made it seem like
2932 animations started more in the past than they did, breaking many animations.
2933 The startAnimations() call actually fires from a CACF callback after all the
2934 WebKit content has been rendered. So sending currentTime as the start time
2935 to the animations is close enough for proper synchronization.
2937 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
2938 (WebCore::CACFLayerTreeHost::notifyAnimationsStarted):
2940 2011-03-11 Ryosuke Niwa <rniwa@webkit.org>
2942 Reviewed by Tony Chang.
2944 Selection uses first mousemove's localRect instead of that of mousedown
2945 https://bugs.webkit.org/show_bug.cgi?id=56213
2947 Fixed the bug by adding an extra call to updateSelectionForMouseDrag in handleMouseDraggedEvent
2948 using the mouse coordinates of the mousedown event that started the drag.
2950 Test: editing/selection/drag-select-rapidly.html
2952 * page/EventHandler.cpp:
2953 (WebCore::EventHandler::handleMouseDraggedEvent):
2955 2011-03-14 Mark Rowe <mrowe@apple.com>
2957 Reviewed by Timothy Hatcher.
2959 Apply a large, blunt object directly to the skull of the Leopard build.
2961 * Configurations/Base.xcconfig: Disable the generation of debugging symbols when
2962 building the Debug configuration on Leopard. This should cut the size of the object
2963 files that the linker needs to process by over 85%. This will hopefully allow them
2964 to fit in to the 32-bit address space of the Leopard linker.
2966 2011-03-14 David Hyatt <hyatt@apple.com>
2968 Reviewed by Beth Dakin.
2970 https://bugs.webkit.org/show_bug.cgi?id=56246
2972 Add support for relative positioning to table cells. Back out the code that hacked around the lack of support
2973 for offsetLeft, and add new tests to demonstrate that relative positioning works.
2975 * css/CSSStyleSelector.cpp:
2976 (WebCore::CSSStyleSelector::adjustRenderStyle):
2977 * rendering/RenderObject.cpp:
2978 (WebCore::RenderObject::offsetParent):
2979 * rendering/RenderObject.h:
2980 (WebCore::RenderObject::isRelPositioned):
2981 * rendering/RenderTableCell.h:
2982 * rendering/style/RenderStyle.h:
2983 * rendering/style/StyleRareNonInheritedData.cpp:
2984 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2985 (WebCore::StyleRareNonInheritedData::operator==):
2986 * rendering/style/StyleRareNonInheritedData.h:
2988 2011-03-14 David Hyatt <hyatt@apple.com>
2990 Reviewed by Beth Dakin.
2992 Partial backout of https://bugs.webkit.org/show_bug.cgi?id=56230. Go back to repainting the root
2993 layer, since first layouts and printing mess up otherwise.
2995 * page/FrameView.cpp:
2996 (WebCore::FrameView::layout):
2998 2011-03-11 David Hyatt <hyatt@apple.com>
3000 Reviewed by Simon Fraser.
3002 Clean up full repainting of layers during layout and at other times. Platforms that did not do an invalidation on
3003 size changes were incorrectly relying on the DoFullRepaint case of RenderLayer::updateLayerPositions to invalidate
3004 for them. However this code is now wrong, since it assumed that the outermost layer was a RenderView that encompassed
3005 all of the child layers. This is no longer the case since the overflow changes that tightened up visual overflow
3006 and limited that overflow only to content that the layer painted.
3008 Eliminate the DoFullRepaint flag and actually make no repainting of any kind happen from the layer code if FrameView's
3009 m_doFullRepaint boolean is set. This will flush out any ports that aren't just invalidating the world on their
3010 own in response to view resizes or fixed layout size changes and force them to fix things to be consistent with
3013 Make the two dynamic calls to updateLayerPositions still do a full repaint by setting the repaint flag on the layer.
3014 I'm suspicious as to the correctness of the repainting in both of these cases (both before and after this patch),
3015 but the behavior should be the same.
3017 No new tests, since this is untestable on ports that invalidate on a resize.
3019 * page/FrameView.cpp:
3020 (WebCore::FrameView::layout):
3021 * rendering/RenderBoxModelObject.cpp:
3022 (WebCore::RenderBoxModelObject::styleDidChange):
3023 * rendering/RenderLayer.cpp:
3024 (WebCore::RenderLayer::updateLayerPositions):
3025 (WebCore::RenderLayer::removeOnlyThisLayer):
3026 * rendering/RenderLayer.h:
3028 2011-03-11 Oliver Hunt <oliver@apple.com>
3030 Reviewed by Gavin Barraclough.
3032 Ensure all values are correctly tagged in the registerfile
3033 https://bugs.webkit.org/show_bug.cgi?id=56214
3035 Make sure everything builds still.
3037 * bridge/c/c_class.cpp:
3038 * bridge/c/c_runtime.cpp:
3039 * bridge/jni/JavaMethod.cpp:
3040 * plugins/PluginViewNone.cpp:
3042 2011-03-14 Luiz Agostini <luiz.agostini@openbossa.org>
3044 Unreviewed build fix for r81035.
3046 * html/HTMLDetailsElement.cpp:
3047 (WebCore::HTMLDetailsElement::defaultEventHandler):
3048 * rendering/RenderDetailsMarker.cpp:
3049 (WebCore::createDownArrowPath):
3050 (WebCore::createUpArrowPath):
3051 (WebCore::createLeftArrowPath):
3052 (WebCore::createRightArrowPath):
3054 2011-03-13 Jer Noble <jer.noble@apple.com>
3056 FullScreen: Handle entering full screen security restrictions
3057 https://bugs.webkit.org/show_bug.cgi?id=56264
3059 Tests: fullscreen/full-screen-iframe-allowed.html
3060 fullscreen/full-screen-iframe-not-allowed.html
3062 Disable full screen documents in the following conditions:
3063 1) requesting element is in an iframe which does not have a
3064 webkitallowfullscreen attribute.
3065 2) page is not processing a user gesture.
3068 (WebCore::Document::fullScreenIsAllowedForElement): Added. Checks
3069 to see if elements contained in IFRAMES are allowed to
3071 (WebCore::Document::webkitRequestFullScreenForElement): Checks
3072 if page is currently processing a user gesture.
3074 * html/HTMLAttributeNames.in: Added webkitallowfullscreenAttr.
3075 * html/HTMLFrameElementBase.cpp:
3076 (WebCore::HTMLFrameElementBase::allowFullScreen): Added.
3077 * html/HTMLFrameElementBase.h:
3079 2011-03-14 Anton D'Auria <adauria@apple.com>
3081 Reviewed by David Levin.
3083 REGRESSION(r80892): Use of uninitialized variable "m_syncCloseDatabase" in StorageAreaSync::sync
3084 https://bugs.webkit.org/show_bug.cgi?id=56303
3086 Initialized m_syncCloseDatabase to false in the StorageAreaSync constructor.
3088 * storage/StorageAreaSync.cpp:
3089 (WebCore::StorageAreaSync::StorageAreaSync):
3091 2011-03-14 Steve Block <steveblock@google.com>
3093 Reviewed by Oliver Hunt.
3095 JavaMethod.cpp does not compile with V8
3096 https://bugs.webkit.org/show_bug.cgi?id=56306
3098 Moved the ScopeChain.h include to JavaStringJSC.
3100 No new tests, build fix only.
3102 * bridge/jni/JavaMethod.cpp:
3103 * bridge/jni/jsc/JavaStringJSC.h
3105 2011-02-28 Luiz Agostini <luiz.agostini@openbossa.org>
3107 Reviewed by Dave Hyatt.
3109 HTML5 <details> and <summary>: rendering
3110 https://bugs.webkit.org/show_bug.cgi?id=51071
3112 Tests: fast/html/details-add-summary-1-and-click.html
3113 fast/html/details-add-summary-1.html
3114 fast/html/details-add-summary-10-and-click.html
3115 fast/html/details-add-summary-10.html
3116 fast/html/details-add-summary-2-and-click.html
3117 fast/html/details-add-summary-2.html
3118 fast/html/details-add-summary-3-and-click.html
3119 fast/html/details-add-summary-3.html
3120 fast/html/details-add-summary-4-and-click.html
3121 fast/html/details-add-summary-4.html
3122 fast/html/details-add-summary-5-and-click.html
3123 fast/html/details-add-summary-5.html
3124 fast/html/details-add-summary-6-and-click.html
3125 fast/html/details-add-summary-6.html
3126 fast/html/details-add-summary-7-and-click.html
3127 fast/html/details-add-summary-7.html
3128 fast/html/details-add-summary-8-and-click.html
3129 fast/html/details-add-summary-8.html
3130 fast/html/details-add-summary-9-and-click.html
3131 fast/html/details-add-summary-9.html
3132 fast/html/details-mouse-click.html
3133 fast/html/details-no-summary1.html
3134 fast/html/details-no-summary2.html
3135 fast/html/details-no-summary3.html
3136 fast/html/details-no-summary4.html
3137 fast/html/details-open-javascript.html
3138 fast/html/details-open1.html
3139 fast/html/details-open2.html
3140 fast/html/details-open3.html
3141 fast/html/details-open4.html
3142 fast/html/details-open5.html
3143 fast/html/details-open6.html
3144 fast/html/details-position.html
3145 fast/html/details-remove-summary-1-and-click.html
3146 fast/html/details-remove-summary-1.html
3147 fast/html/details-remove-summary-2-and-click.html
3148 fast/html/details-remove-summary-2.html
3149 fast/html/details-remove-summary-3-and-click.html
3150 fast/html/details-remove-summary-3.html
3151 fast/html/details-remove-summary-4-and-click.html
3152 fast/html/details-remove-summary-4.html
3153 fast/html/details-remove-summary-5-and-click.html
3154 fast/html/details-remove-summary-5.html
3155 fast/html/details-remove-summary-6-and-click.html
3156 fast/html/details-remove-summary-6.html
3157 fast/html/details-writing-mode.html
3159 http://www.w3.org/TR/html5/interactive-elements.html#the-details-element
3161 The main <summary> element is the first <summary> element of a <details> element.
3162 All other childs of the <details> element are rendered only if the attribute 'open' is set.
3163 Click event toggles the 'open' attribute.
3165 * html/HTMLDetailsElement.cpp:
3166 (WebCore::HTMLDetailsElement::HTMLDetailsElement):
3167 (WebCore::HTMLDetailsElement::findMainSummary):
3168 (WebCore::HTMLDetailsElement::childrenChanged):
3169 (WebCore::HTMLDetailsElement::finishParsingChildren):
3170 (WebCore::HTMLDetailsElement::parseMappedAttribute):
3171 (WebCore::HTMLDetailsElement::childShouldCreateRenderer):
3172 (WebCore::HTMLDetailsElement::defaultEventHandler):
3173 * html/HTMLDetailsElement.h:
3174 (WebCore::HTMLDetailsElement::mainSummary):
3176 Method createRenderer added to class HTMLSummaryElement.
3178 * html/HTMLSummaryElement.cpp:
3179 (WebCore::HTMLSummaryElement::createRenderer):
3180 * html/HTMLSummaryElement.h:
3182 The first <summary> element is positioned at the top of its <details> parent.
3183 The area occupied by this main <summary> element is the interactive area of the
3184 <details> element. If the <details> tag has no <summary> child an OwnedSummaryRenderer
3185 is created and added to the corresponding RenderDetails object.
3187 * rendering/RenderDetails.cpp:
3188 (WebCore::RenderDetails::RenderDetails):
3189 (WebCore::RenderDetails::destroy):
3190 (WebCore::RenderDetails::summaryBlock):
3191 (WebCore::RenderDetails::contentBlock):
3192 (WebCore::RenderDetails::addChild):
3193 (WebCore::RenderDetails::removeChild):
3194 (WebCore::RenderDetails::setMarkerStyle):
3195 (WebCore::RenderDetails::styleDidChange):
3196 (WebCore::RenderDetails::getRenderPosition):
3197 (WebCore::RenderDetails::markerDestroyed):
3198 (WebCore::RenderDetails::summaryDestroyed):
3199 (WebCore::RenderDetails::moveSummaryToContents):
3200 (WebCore::RenderDetails::createSummaryStyle):
3201 (WebCore::RenderDetails::replaceMainSummary):
3202 (WebCore::RenderDetails::createDefaultSummary):
3203 (WebCore::RenderDetails::checkMainSummary):
3204 (WebCore::RenderDetails::layout):
3205 (WebCore::RenderDetails::isOpen):
3206 (WebCore::RenderDetails::getParentOfFirstLineBox):
3207 (WebCore::RenderDetails::firstNonMarkerChild):
3208 (WebCore::RenderDetails::updateMarkerLocation):
3209 * rendering/RenderDetails.h:
3210 (WebCore::RenderDetails::interactiveArea):
3211 (WebCore::RenderDetails::removeLeftoverAnonymousBlock):
3212 (WebCore::RenderDetails::createsAnonymousWrapper):
3213 (WebCore::RenderDetails::requiresForcedStyleRecalcPropagation):
3215 A marker is added to the main <summary> element to indicate the current value of the 'open'
3216 attribute of the <details> element.
3218 * rendering/RenderDetailsMarker.cpp:
3219 (WebCore::RenderDetailsMarker::RenderDetailsMarker):
3220 (WebCore::RenderDetailsMarker::destroy):
3221 (WebCore::RenderDetailsMarker::lineHeight):
3222 (WebCore::RenderDetailsMarker::baselinePosition):
3223 (WebCore::RenderDetailsMarker::computePreferredLogicalWidths):
3224 (WebCore::RenderDetailsMarker::layout):
3225 (WebCore::RenderDetailsMarker::getRelativeMarkerRect):
3226 (WebCore::RenderDetailsMarker::isOpen):
3227 (WebCore::createPath):
3228 (WebCore::createDownArrowPath):
3229 (WebCore::createUpArrowPath):
3230 (WebCore::createLeftArrowPath):
3231 (WebCore::createRightArrowPath):
3232 (WebCore::RenderDetailsMarker::orientation):
3233 (WebCore::RenderDetailsMarker::getCanonicalPath):
3234 (WebCore::RenderDetailsMarker::getPath):
3235 (WebCore::RenderDetailsMarker::paint):
3236 * rendering/RenderDetailsMarker.h:
3237 (WebCore::toRenderDetailsMarker):
3239 * rendering/RenderSummary.cpp:
3240 (WebCore::RenderSummary::RenderSummary):
3241 (WebCore::RenderSummary::destroy):
3242 (WebCore::RenderSummary::parentDetails):
3243 (WebCore::RenderSummary::styleDidChange):
3244 * rendering/RenderSummary.h:
3246 * rendering/RenderTreeAsText.cpp:
3247 (WebCore::RenderTreeAsText::writeRenderObject):
3249 2011-03-14 Brady Eidson <beidson@apple.com>
3251 Reviewed by Sam Weinig.
3253 https://bugs.webkit.org/show_bug.cgi?id=56296
3254 Clean up IconDatabaseBase header.
3256 -Get rid of the "PlatformString.h" include and replace it with a forward declaration.
3257 -Group methods by which are used in WebCore directly and which are used in WebKit ports.
3259 This'll make it easier to use in external frameworks (like WebKit2).
3261 * loader/icon/IconDatabase.h:
3262 * loader/icon/IconDatabaseBase.h:
3263 (WebCore::IconDatabaseBase::retainIconForPageURL):
3264 (WebCore::IconDatabaseBase::releaseIconForPageURL):
3265 (WebCore::IconDatabaseBase::iconForPageURL):
3266 (WebCore::IconDatabaseBase::setIconURLForPageURL):
3267 (WebCore::IconDatabaseBase::setIconDataForIconURL):
3268 (WebCore::IconDatabaseBase::iconDataKnownForIconURL):
3269 (WebCore::IconDatabaseBase::loadDecisionForIconURL):
3270 (WebCore::IconDatabaseBase::importIconURLForPageURL):
3271 (WebCore::IconDatabaseBase::importIconDataForIconURL):
3272 (WebCore::IconDatabaseBase::open):
3274 2011-03-14 Sheriff Bot <webkit.review.bot@gmail.com>
3276 Unreviewed, rolling out r81026.
3277 http://trac.webkit.org/changeset/81026
3278 https://bugs.webkit.org/show_bug.cgi?id=56313
3280 Breaks gtk 64-bit tests (Requested by podivilov on #webkit).
3282 * inspector/InspectorBrowserDebuggerAgent.cpp:
3283 (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
3284 (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
3285 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
3286 (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
3287 (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
3288 (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
3289 (WebCore::InspectorBrowserDebuggerAgent::clear):
3290 * inspector/InspectorBrowserDebuggerAgent.h:
3291 * inspector/front-end/BreakpointManager.js:
3292 (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
3293 (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
3294 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
3295 (WebInspector.BreakpointManager.prototype._projectChanged):
3296 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
3297 (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
3298 (WebInspector.BreakpointManager.prototype._createXHRBreakpointId):
3299 (WebInspector.XHRBreakpoint):
3300 (WebInspector.XHRBreakpoint.prototype._enable):
3301 (WebInspector.XHRBreakpoint.prototype._disable):
3302 (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3303 (WebInspector.XHRBreakpointView):
3304 (WebInspector.XHRBreakpointView.prototype.compareTo):
3305 (WebInspector.XHRBreakpointView.prototype.populateEditElement):
3306 (WebInspector.XHRBreakpointView.prototype.populateLabelElement):
3307 (WebInspector.XHRBreakpointView.prototype.populateStatusMessageElement):
3308 * inspector/front-end/BreakpointsSidebarPane.js:
3309 (WebInspector.XHRBreakpointsSidebarPane.addButtonClicked):
3310 (WebInspector.XHRBreakpointsSidebarPane):
3311 (WebInspector.XHRBreakpointsSidebarPane.prototype.addBreakpointItem):
3312 (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
3313 (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
3314 * inspector/front-end/CallStackSidebarPane.js:
3315 (WebInspector.CallStackSidebarPane.prototype.update):
3316 * inspector/front-end/ScriptsPanel.js:
3317 (WebInspector.ScriptsPanel):
3318 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3319 (WebInspector.ScriptsPanel.prototype._clearInterface):
3320 * inspector/front-end/Settings.js:
3321 (WebInspector.Settings):
3322 * inspector/front-end/inspector.js:
3323 (WebInspector.resetFocusElement):
3324 (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
3325 (WebInspector.createXHRBreakpointsSidebarPane):
3326 (WebInspector.set attached):
3328 2011-03-14 Mikhail Naganov <mnaganov@chromium.org>
3330 Reviewed by Pavel Feldman.
3332 Web Inspector: Factor out binary search algo from the insertionIndexForObjectInListSortedByFunction function.
3333 https://bugs.webkit.org/show_bug.cgi?id=56312
3335 Test: inspector/utilities.html
3337 * inspector/front-end/utilities.js:
3339 2011-03-12 Pavel Podivilov <podivilov@chromium.org>
3341 Reviewed by Yury Semikhatsky.
3343 Web Inspector: re-implement xhr breakpoints.
3344 https://bugs.webkit.org/show_bug.cgi?id=56252
3346 - restore xhr breakpoints one by one instead of using setAllBrowserBreakpoints
3347 - store xhr breakpoints in a separate setting
3348 - move presentation-related code from BreakpointManager to XHRBreakpointsSidebarPane
3350 Test: inspector/debugger/xhr-breakpoints.html
3352 * inspector/InspectorBrowserDebuggerAgent.cpp:
3353 (WebCore::InspectorBrowserDebuggerAgent::InspectorBrowserDebuggerAgent):
3354 (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
3355 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
3356 (WebCore::InspectorBrowserDebuggerAgent::setXHRBreakpoint):
3357 (WebCore::InspectorBrowserDebuggerAgent::removeXHRBreakpoint):
3358 (WebCore::InspectorBrowserDebuggerAgent::willSendXMLHttpRequest):
3359 (WebCore::InspectorBrowserDebuggerAgent::clear):
3360 * inspector/InspectorBrowserDebuggerAgent.h:
3361 * inspector/front-end/BreakpointManager.js:
3362 (WebInspector.BreakpointManager.prototype.setXHRBreakpoint):
3363 (WebInspector.BreakpointManager.prototype.removeXHRBreakpoint):
3364 (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
3365 (WebInspector.BreakpointManager.prototype._projectChanged):
3366 (WebInspector.BreakpointManager.prototype._validateBreakpoints):
3367 (WebInspector.BreakpointManager.prototype._createEventListenerBreakpointId):
3368 * inspector/front-end/BreakpointsSidebarPane.js:
3369 (WebInspector.XHRBreakpointsSidebarPane):
3370 (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked.finishEditing):
3371 (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked):
3372 (WebInspector.XHRBreakpointsSidebarPane.prototype._setBreakpoint):
3373 (WebInspector.XHRBreakpointsSidebarPane.prototype._removeBreakpoint):
3374 (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu.removeBreakpoint):
3375 (WebInspector.XHRBreakpointsSidebarPane.prototype._contextMenu):
3376 (WebInspector.XHRBreakpointsSidebarPane.prototype._checkboxClicked):
3377 (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked.finishEditing):
3378 (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked):
3379 (WebInspector.XHRBreakpointsSidebarPane.prototype.highlightBreakpoint):
3380 (WebInspector.XHRBreakpointsSidebarPane.prototype.clearBreakpointHighlight):
3381 (WebInspector.XHRBreakpointsSidebarPane.prototype._saveBreakpoints):
3382 (WebInspector.XHRBreakpointsSidebarPane.prototype._restoreBreakpoints):
3383 (WebInspector.XHRBreakpointsSidebarPane.prototype._projectChanged):
3384 * inspector/front-end/CallStackSidebarPane.js:
3385 (WebInspector.CallStackSidebarPane.prototype.update):
3386 (WebInspector.CallStackSidebarPane.prototype._xhrBreakpointHit):
3387 * inspector/front-end/ScriptsPanel.js:
3388 (WebInspector.ScriptsPanel):
3389 (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3390 (WebInspector.ScriptsPanel.prototype._clearInterface):
3391 * inspector/front-end/Settings.js:
3392 (WebInspector.Settings):
3393 * inspector/front-end/inspector.js:
3394 (WebInspector.resetFocusElement):
3395 (WebInspector.set attached):
3397 2011-03-14 Pavel Podivilov <podivilov@chromium.org>
3399 Reviewed by Pavel Feldman.
3401 Web Inspector: move breakpoints restoring to debugger presentation model.
3402 https://bugs.webkit.org/show_bug.cgi?id=56123
3404 DebuggerModel's "breakpoint-added" and "breakpoint-removed" events are gone since
3405 setBreakpoint/removeBreakpoint are now called from DPM only.
3407 * inspector/InspectorDebuggerAgent.cpp:
3408 (WebCore::InspectorDebuggerAgent::disable):
3409 (WebCore::InspectorDebuggerAgent::enableDebuggerAfterShown):
3410 * inspector/front-end/DebuggerModel.js:
3411 (WebInspector.DebuggerModel.prototype.enableDebugger):
3412 (WebInspector.DebuggerModel.prototype._debuggerWasEnabled):
3413 (WebInspector.DebuggerModel.prototype._debuggerWasDisabled):
3414 (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
3415 (WebInspector.DebuggerModel.prototype.setBreakpoint):
3416 (WebInspector.DebuggerModel.prototype.setBreakpointBySourceId):
3417 (WebInspector.DebuggerModel.prototype.removeBreakpoint):
3418 (WebInspector.DebuggerModel.prototype._breakpointResolved):
3419 (WebInspector.DebuggerModel.prototype.reset):
3420 (WebInspector.DebuggerDispatcher.prototype.debuggerWasEnabled):
3421 (WebInspector.DebuggerDispatcher.prototype.debuggerWasDisabled):
3422 * inspector/front-end/DebuggerPresentationModel.js:
3423 (WebInspector.DebuggerPresentationModel):
3424 (WebInspector.DebuggerPresentationModel.prototype._debuggerWasEnabled):
3425 (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
3426 (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
3427 (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
3428 (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
3429 (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
3430 (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
3431 (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
3432 (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
3433 (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
3434 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
3435 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
3436 (WebInspector.DebuggerPresentationModel.prototype._breakpointResolved):
3437 (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
3438 (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
3439 (WebInspector.DebuggerPresentationModel.prototype.reset):
3440 * inspector/front-end/ScriptsPanel.js:
3441 (WebInspector.ScriptsPanel):
3442 (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
3443 (WebInspector.ScriptsPanel.prototype._debuggerWasDisabled):
3445 2011-03-14 Sheriff Bot <webkit.review.bot@gmail.com>
3447 Unreviewed, rolling out r81015.
3448 http://trac.webkit.org/changeset/81015
3449 https://bugs.webkit.org/show_bug.cgi?id=56308
3451 A Similar patch landed in r76960 (Requested by philn-tp on
3456 2011-03-14 Pavel Feldman <pfeldman@chromium.org>
3458 Reviewed by Yury Semikhatsky.
3460 Web Inspector: don't use innerText, use textContent instead.
3461 https://bugs.webkit.org/show_bug.cgi?id=56307
3463 * inspector/front-end/AuditFormatters.js:
3464 (WebInspector.AuditFormatters.snippet):
3465 * inspector/front-end/ElementsTreeOutline.js:
3466 * inspector/front-end/GoToLineDialog.js:
3467 * inspector/front-end/HelpScreen.js:
3468 (WebInspector.HelpScreen):
3469 * inspector/front-end/ShortcutsHelp.js:
3470 (WebInspector.ShortcutsSection.prototype.renderSection):
3471 (WebInspector.ShortcutsSection.prototype._renderHeader):
3473 2011-03-14 Andrey Adaikin <aandrey@google.com>
3475 Reviewed by Pavel Feldman.
3477 Web Inspector: [Text editor] Disable live-edit in favor of the text editor
3478 https://bugs.webkit.org/show_bug.cgi?id=56176
3480 * inspector/front-end/Settings.js:
3482 2011-03-14 Andrey Adaikin <aandrey@google.com>
3484 Reviewed by Pavel Feldman.
3486 Web Inspector: [REGRESSION] scroll does not work in source frame when mouse is inside the gutter
3487 https://bugs.webkit.org/show_bug.cgi?id=56095
3489 * inspector/front-end/TextViewer.js:
3490 (WebInspector.TextViewer):
3492 2011-03-11 Pavel Podivilov <podivilov@chromium.org>
3494 Reviewed by Pavel Feldman.
3496 Web Inspector: move breakpoints restoring after live edit to debugger presentation model.
3497 https://bugs.webkit.org/show_bug.cgi?id=56179
3499 Presentation model should move breakpoints based on text diff as required by "revert to revision" action in resources panel.
3501 * inspector/front-end/DebuggerModel.js:
3502 (WebInspector.DebuggerModel):
3503 (WebInspector.DebuggerModel.prototype.setBreakpoint.didSetBreakpoint):
3504 (WebInspector.DebuggerModel.prototype.setBreakpoint):
3505 (WebInspector.DebuggerModel.prototype.reset):
3506 (WebInspector.DebuggerModel.prototype.editScriptSource.didEditScriptSource):
3507 (WebInspector.DebuggerModel.prototype.editScriptSource):
3508 (WebInspector.DebuggerModel.prototype.get callFrames):
3509 (WebInspector.DebuggerModel.prototype._pausedScript):
3510 (WebInspector.DebuggerModel.prototype._resumedScript):
3511 * inspector/front-end/DebuggerPresentationModel.js:
3512 (WebInspector.DebuggerPresentationModel):
3513 (WebInspector.DebuggerPresentationModel.prototype._scriptSourceChanged):
3514 * inspector/front-end/ScriptsPanel.js:
3515 (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
3517 2011-03-10 Alexander Pavlov <apavlov@chromium.org>
3519 Reviewed by Pavel Feldman.
3521 Web Inspector: Optimize backend-frontend data transfer volume for CSS styles
3522 https://bugs.webkit.org/show_bug.cgi?id=56111
3524 This change reduces the getStylesForNode() payload more than twice for BODY elements.
3526 * inspector/InspectorStyleSheet.cpp:
3527 (WebCore::InspectorStyle::populateObjectWithStyleProperties):
3528 * inspector/front-end/CSSStyleModel.js:
3529 (WebInspector.CSSProperty.parsePayload):
3531 2011-03-14 John Knottenbelt <jknotten@chromium.org>
3533 Reviewed by Steve Block.
3535 Detach Geolocation from Frame when Page destroyed.
3536 https://bugs.webkit.org/show_bug.cgi?id=52877
3538 On Page destruction, any outstanding Geolocation permission
3539 requests should be cancelled, because the Geolocation can only
3540 access the client indirectly via m_frame->page().
3542 Page destruction is signalled by a call to the
3543 Frame::pageDestroyed() method. This explictly calls
3544 DOMWindow::resetGeolocation which ultimately calls Geolocation::reset.
3546 Geolocation::reset() detaches from the GeolocationController,
3547 cancels requests, watches and single shots, and sets the
3548 permission state back to Unknown.
3550 Frame::pageDestroyed() is also called by FrameLoader even though
3551 the page is not destroyed. We should still cancel permission
3552 requests, because the GeolocationClient will become inaccessible
3553 to the Geolocation object after this call.
3555 Frame::transferChildFrameToNewDocument also indirectly calls
3556 Geolocation::reset when the frame is reparented between
3557 pages. Ideally we would like the Geolocation's activities to
3558 continue after reparenting, see bug
3559 https://bugs.webkit.org/show_bug.cgi?id=55577
3561 Since GeolocationController is owned by Page, and all Geolocation
3562 objects will now unsubscribe from the GeolocationController on
3563 pageDetached(), we no longer need to call stopUpdating() from the
3564 GeolocationController's destructor. Instead we can simply assert
3565 that there should be no no observers. See related bug
3566 https://bugs.webkit.org/show_bug.cgi?id=52216 .
3568 Introduced new method 'numberOfPendingPermissionRequests' on
3569 GeolocationClientMock to count the number of outstanding pending
3570 permission requests. This provides a reusable implementation for
3571 client-based implementations of the LayoutTestController's
3572 numberOfPendingGeolocationPermissionRequests method.
3574 Test: fast/dom/Geolocation/page-reload-cancel-permission-requests.html
3576 * page/DOMWindow.cpp:
3577 (WebCore::DOMWindow::resetGeolocation):
3580 (WebCore::Frame::pageDestroyed):
3581 (WebCore::Frame::transferChildFrameToNewDocument):
3582 * page/Geolocation.cpp:
3583 (WebCore::Geolocation::~Geolocation):
3584 (WebCore::Geolocation::page):
3585 (WebCore::Geolocation::reset):
3586 (WebCore::Geolocation::disconnectFrame):
3587 (WebCore::Geolocation::lastPosition):
3588 (WebCore::Geolocation::requestPermission):
3589 (WebCore::Geolocation::startUpdating):
3590 (WebCore::Geolocation::stopUpdating):
3591 * page/Geolocation.h:
3592 * page/GeolocationController.cpp:
3593 (WebCore::GeolocationController::~GeolocationController):
3594 * page/Navigator.cpp:
3595 (WebCore::Navigator::resetGeolocation):
3597 * platform/mock/GeolocationClientMock.cpp:
3598 (WebCore::GeolocationClientMock::numberOfPendingPermissionRequests):
3599 * platform/mock/GeolocationClientMock.h:
3601 2011-03-14 Andrey Adaikin <aandrey@google.com>
3603 Reviewed by Pavel Feldman.
3605 Web Inspector: REGRESSION: Messed up with the tabIndex for text editor
3606 https://bugs.webkit.org/show_bug.cgi?id=56183
3608 * inspector/front-end/SourceFrame.js:
3609 (WebInspector.SourceFrame.prototype._handleKeyDown):
3610 (WebInspector.SourceFrame.prototype._handleSave):
3611 (WebInspector.SourceFrame.prototype._handleRevertEditing):
3612 * inspector/front-end/TextViewer.js:
3613 (WebInspector.TextEditorMainPanel):
3614 (WebInspector.TextEditorMainPanel.prototype.set readOnly):
3616 2011-03-14 Chris Rogers <crogers@google.com>
3618 Reviewed by Xan Lopez.
3620 Add all web audio auto-generated files to GTK make system
3621 https://bugs.webkit.org/show_bug.cgi?id=50497
3623 No new tests since these are build-system tweaks.
3627 2011-03-14 Pavel Feldman <pfeldman@chromium.org>
3629 Reviewed by Yury Semikhatsky.
3631 Web Inspector: make DOMAgent event target, remove dependency from ElementsPanel.
3632 https://bugs.webkit.org/show_bug.cgi?id=56268
3634 * inspector/Inspector.idl:
3635 * inspector/InspectorDOMAgent.cpp:
3636 (WebCore::InspectorDOMAgent::reset):
3637 (WebCore::InspectorDOMAgent::performSearch):
3638 (WebCore::InspectorDOMAgent::cancelSearch):
3639 (WebCore::InspectorDOMAgent::onMatchJobsTimer):
3640 (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
3641 * inspector/InspectorDOMAgent.h:
3642 * inspector/front-end/DOMAgent.js:
3643 (WebInspector.DOMAgent.prototype.requestDocument.mycallback):
3644 (WebInspector.DOMAgent.prototype.requestDocument):
3645 (WebInspector.DOMAgent.prototype._attributesUpdated):
3646 (WebInspector.DOMAgent.prototype._characterDataModified):
3647 (WebInspector.DOMAgent.prototype._documentUpdated):
3648 (WebInspector.DOMAgent.prototype._setDocument):
3649 (WebInspector.DOMAgent.prototype._childNodeCountUpdated):
3650 (WebInspector.DOMAgent.prototype._childNodeInserted):
3651 (WebInspector.DOMAgent.prototype._childNodeRemoved):
3652 (WebInspector.DOMAgent.prototype._removeBreakpoints):
3653 (WebInspector.DOMAgent.prototype.performSearch):
3654 (WebInspector.DOMAgent.prototype.cancelSearch):
3655 (WebInspector.DOMDispatcher.prototype.searchResults):
3656 * inspector/front-end/ElementsPanel.js:
3657 (WebInspector.ElementsPanel):
3658 (WebInspector.ElementsPanel.prototype._reset):
3659 (WebInspector.ElementsPanel.prototype._documentUpdated):
3660 (WebInspector.ElementsPanel.prototype.searchCanceled):
3661 (WebInspector.ElementsPanel.prototype.performSearch):
3662 (WebInspector.ElementsPanel.prototype._addNodesToSearchResult):
3663 (WebInspector.ElementsPanel.prototype._attributesUpdated):
3664 (WebInspector.ElementsPanel.prototype._characterDataModified):
3665 (WebInspector.ElementsPanel.prototype._nodeInserted):
3666 (WebInspector.ElementsPanel.prototype._nodeRemoved):
3667 (WebInspector.ElementsPanel.prototype._childNodeCountUpdated):
3668 (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
3670 2011-03-14 Pavel Feldman <pfeldman@chromium.org>
3672 Reviewed by Yury Semikhatsky.
3674 Web Inspector: add tests for edit dom operations.
3675 https://bugs.webkit.org/show_bug.cgi?id=56248
3677 Test: inspector/elements/edit-dom-actions.html
3679 * inspector/Inspector.idl:
3680 * inspector/InspectorDOMAgent.cpp:
3681 (WebCore::InspectorDOMAgent::assertNode):
3682 (WebCore::InspectorDOMAgent::assertElement):
3683 (WebCore::InspectorDOMAgent::assertHTMLElement):
3684 (WebCore::InspectorDOMAgent::nodeToSelectOn):
3685 (WebCore::InspectorDOMAgent::querySelector):
3686 (WebCore::InspectorDOMAgent::querySelectorAll):
3687 (WebCore::InspectorDOMAgent::setAttribute):
3688 (WebCore::InspectorDOMAgent::removeAttribute):
3689 (WebCore::InspectorDOMAgent::getOuterHTML):
3690 (WebCore::InspectorDOMAgent::setOuterHTML):
3691 * inspector/InspectorDOMAgent.h:
3692 * inspector/front-end/DOMAgent.js:
3693 (WebInspector.DOMNode.prototype.setAttribute):
3694 (WebInspector.DOMNode.prototype.removeAttribute):
3695 * inspector/front-end/inspector.js:
3696 (WebInspector.startEditing.defaultFinishHandler):
3698 2011-03-14 Brady Eidson <beidson@apple.com>
3700 Reviewed by Dan Bernstein.
3702 <rdar://problem/8762095> and https://bugs.webkit.org/show_bug.cgi?id=55172
3703 Need WK2 API to view/manage origins with LocalStorage
3705 * storage/StorageTracker.cpp:
3706 (WebCore::StorageTracker::initializeTracker): Make sure the TextEncoding map is initialized on the main thread
3707 before the StorageTracker thread can do it on the background thread.
3709 2011-03-13 Anton D'Auria <adauria@apple.com>
3711 Reviewed by Brady Eidson and David Levin, landed by Brady Eidson.
3713 Fixed lock-taking order to prevent deadlock, added lock for m_client,
3714 removed premature return in syncImportOriginIdentifiers when tracker
3715 db does not exist because that prevented syncFileSystemAndTrackerDatabase()
3716 from running until next LocalStorage db creation, cleaned up
3717 StorageTracker::scheduleTask() code for readability.
3719 https://bugs.webkit.org/show_bug.cgi?id=56285
3721 * storage/StorageTracker.cpp:
3722 (WebCore::StorageTracker::trackerDatabasePath):
3723 (WebCore::StorageTracker::syncImportOriginIdentifiers): If tracker db isn't
3724 optionally opened (as in the case when it doesn't exist on disk), don't
3725 exit early and call syncFileSystemAndTrackerDatabase(), which will create
3726 a tracker db if localstorage db files are found on disk by calling setOriginDetails.
3727 (WebCore::StorageTracker::syncFileSystemAndTrackerDatabase):
3728 (WebCore::StorageTracker::setOriginDetails):
3729 (WebCore::StorageTracker::scheduleTask): readability changes.
3730 (WebCore::StorageTracker::syncSetOriginDetails):
3731 (WebCore::StorageTracker::syncDeleteAllOrigins):
3732 (WebCore::StorageTracker::syncDeleteOrigin):
3733 (WebCore::StorageTracker::cancelDeletingOrigin): order lock-taking consistently to avoid deadlock.
3734 (WebCore::StorageTracker::setClient):
3735 * storage/StorageTracker.h:
3737 2011-03-13 Anton D'Auria <adauria@apple.com>
3739 Reviewed and landed by Brady Eidson.
3741 Invalid assertion in StorageTracker - PageGroup::numberOfPageGroups() == 1
3742 https://bugs.webkit.org/show_bug.cgi?id=56240
3744 This assertion is invalid until LocalStorage is either global or is isolated by PageGroup.
3746 * storage/StorageTracker.cpp:
3747 (WebCore::StorageTracker::origins):
3748 (WebCore::StorageTracker::deleteAllOrigins):
3749 (WebCore::StorageTracker::deleteOrigin):
3751 2011-03-13 Pratik Solanki <psolanki@apple.com>
3753 Reviewed by Dan Bernstein.
3755 Make adjustMIMETypeIfNecessary use CFNetwork directly
3756 https://bugs.webkit.org/show_bug.cgi?id=55912
3758 Follow up fix for Layout Test failure. Fix typo - it should be text/plain, not test/plain.
3760 * platform/network/mac/WebCoreURLResponse.mm:
3761 (WebCore::adjustMIMETypeIfNecessary):
3763 2011-03-13 Dan Bernstein <mitz@apple.com>
3765 Reviewed by Sam Weinig.
3767 Include hyphenation information in text representation of render tree
3768 https://bugs.webkit.org/show_bug.cgi?id=56287
3770 (WebCore::writeTextRun): If the text box is hyphenated, output the hyphenation
3773 2011-03-13 David Levin <levin@chromium.org>
3775 Improve my hasitly added build fix and added a bug https://bugs.webkit.org/show_bug.cgi?id=56288
3776 above addressing this FIXME.
3778 * css/CSSStyleSelector.cpp:
3779 (WebCore::CSSStyleSelector::applyProperty):
3781 2011-03-13 David Levin <levin@chromium.org>
3783 Build fix adding remaining enum values to switch statement.
3785 * css/CSSStyleSelector.cpp:
3786 (WebCore::CSSStyleSelector::applyProperty):
3788 2011-03-13 Sam Weinig <sam@webkit.org>
3792 * platform/network/cf/ResourceErrorCF.cpp:
3793 (WebCore::ResourceError::ResourceError):
3794 Add missing constructor.
3796 2011-03-13 David Sosby <dsosby@rim.com>
3798 Reviewed by Dan Bernstein.
3800 REGRESSION: Soft hyphen is not always rendered
3801 https://bugs.webkit.org/show_bug.cgi?id=56017
3803 The check to flag a text block as hyphenated was only
3804 occurring at break points in the line. If no break points
3805 were found after the soft hyphen then the line would not
3806 be flagged hyphenated. Adding a check for soft hyphen at
3807 the end of the text run resolves the issue.
3809 Test: fast/text/soft-hyphen-4.html
3811 * rendering/RenderBlockLineLayout.cpp:
3812 (WebCore::RenderBlock::findNextLineBreak):
3814 2011-03-13 Dan Bernstein <mitz@apple.com>
3816 Reviewed by Mark Rowe.
3818 REGRESSION (r80438): fast/text/hyphenate-character failing in pixel mode
3819 https://bugs.webkit.org/show_bug.cgi?id=56280
3821 * rendering/RenderBlockLineLayout.cpp:
3822 (WebCore::tryHyphenating): Avoid subtracting 1 from an unsigned 0.
3824 2011-03-13 Sam Weinig <sam@webkit.org>
3826 Reviewed by Anders Carlsson.
3828 Add ability to create a WKErrorRef
3829 <rdar://problem/9115768>
3830 https://bugs.webkit.org/show_bug.cgi?id=56279
3835 * platform/network/cf/ResourceError.h:
3836 * platform/network/cf/ResourceErrorCF.cpp:
3837 (WebCore::ResourceError::platformCompare):
3838 (WebCore::ResourceError::cfError):
3839 (WebCore::ResourceError::operator CFErrorRef):
3840 (WebCore::ResourceError::ResourceError):
3841 (WebCore::ResourceError::cfStreamError):
3842 (WebCore::ResourceError::operator CFStreamError):
3843 * platform/network/mac/ResourceErrorMac.mm:
3844 (WebCore::ResourceError::ResourceError):
3845 (WebCore::ResourceError::platformCompare):
3846 (WebCore::ResourceError::nsError):
3847 (WebCore::ResourceError::operator NSError *):
3848 (WebCore::ResourceError::cfError):
3849 (WebCore::ResourceError::operator CFErrorRef):
3850 Clean up ResourceError a bit and add ability to create a ResourceError from a CFErrorRef
3851 regardless of whether CFNetwork is being used.
3853 2011-03-13 Pratik Solanki <psolanki@apple.com>
3855 Reviewed by Brady Eidson.
3857 Make adjustMIMETypeIfNecessary use CFNetwork directly
3858 https://bugs.webkit.org/show_bug.cgi?id=55912
3860 Convert category method [NSURLResponse adjustMIMETypeIfNecessary] to C function
3861 WebCore::adjustMIMETypeIfNecessary() that takes a CFURLResponseRef and is functionally
3864 Testing is covered by existing LayoutTests.
3867 * platform/mac/WebCoreSystemInterface.h:
3868 * platform/mac/WebCoreSystemInterface.mm:
3869 * platform/network/mac/ResourceHandleMac.mm:
3870 (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
3871 * platform/network/mac/WebCoreURLResponse.h:
3872 * platform/network/mac/WebCoreURLResponse.mm:
3873 (WebCore::createBinaryExtensionsSet):
3874 (WebCore::createExtensionToMIMETypeMap):
3875 (WebCore::mimeTypeFromUTITree):
3876 (WebCore::adjustMIMETypeIfNecessary):
3878 2011-03-13 Jeremy Moskovich <jeremy@chromium.org>
3880 Reviewed by Dimitri Glazkov.
3882 Update comment in CSSValueKeywords.in
3883 https://bugs.webkit.org/show_bug.cgi?id=56266
3885 The enums the comment refers to were moved from RenderStyle.h to RenderStyleConstants.h
3886 in r36579 but it appears that the comment in CSSValueKeywords.in wasn't updated.
3888 No tests - just updating a comment.
3890 * css/CSSValueKeywords.in:
3892 2011-03-13 Anton D'Auria <adauria@apple.com>
3894 Reviewed by Alice Liu.
3896 StorageTracker constructor shouldn't have initialization code and isMainThread() assertion
3897 https://bugs.webkit.org/show_bug.cgi?id=56259
3899 Move all StorageTracker initialization to
3900 StorageTracker::initializeTracker. This also removes the
3901 requirement that the StorageTracker constructor isn't run
3904 * storage/StorageTracker.cpp:
3905 (WebCore::StorageTracker::initializeTracker):
3906 (WebCore::StorageTracker::tracker):
3907 (WebCore::StorageTracker::StorageTracker):
3909 2011-03-13 Rob Buis <rwlbuis@gmail.com>
3911 Reviewed by Dave Hyatt.
3913 REGRESSION (r61383): Navigation menu laid out incorrectly on aboardtheworld.com
3914 https://bugs.webkit.org/show_bug.cgi?id=53470
3916 Prefer !important over normal properties when dealing with duplicate properties in style rules.
3918 Test: fast/css/duplicate-property-in-rule-important.html
3920 * css/CSSMutableStyleDeclaration.cpp:
3921 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
3923 2011-03-12 Sheriff Bot <webkit.review.bot@gmail.com>
3925 Unreviewed, rolling out r80895.
3926 http://trac.webkit.org/changeset/80895
3927 https://bugs.webkit.org/show_bug.cgi?id=56261
3929 Causing crashes in several tests including
3930 t1202-counters-16-c.html (see
3931 http://build.webkit.org/results/SnowLeopard%20Intel%20Leaks/r80956%20(15528)/results.html)
3932 (Requested by dave_levin on #webkit).
3934 * rendering/CounterNode.cpp:
3935 (WebCore::CounterNode::CounterNode):
3936 (WebCore::CounterNode::create):
3937 (WebCore::CounterNode::resetRenderer):
3938 (WebCore::CounterNode::resetRenderers):
3939 (WebCore::CounterNode::recount):
3940 (WebCore::CounterNode::insertAfter):
3941 (WebCore::CounterNode::removeChild):
3942 (WebCore::showTreeAndMark):
3943 * rendering/CounterNode.h:
3944 (WebCore::CounterNode::renderer):
3945 * rendering/RenderCounter.cpp:
3946 (WebCore::findPlaceForCounter):
3947 (WebCore::RenderCounter::~RenderCounter):
3948 (WebCore::RenderCounter::originalText):
3949 (WebCore::RenderCounter::invalidate):
3950 (WebCore::destroyCounterNodeWithoutMapRemoval):
3951 (WebCore::RenderCounter::destroyCounterNodes):
3952 (WebCore::RenderCounter::destroyCounterNode):
3953 (WebCore::updateCounters):
3954 (showCounterRendererTree):
3955 * rendering/RenderCounter.h:
3956 * rendering/RenderObjectChildList.cpp:
3957 (WebCore::invalidateCountersInContainer):
3958 (WebCore::RenderObjectChildList::invalidateCounters):
3959 * rendering/RenderObjectChildList.h:
3961 2011-03-12 Darin Adler <darin@apple.com>
3963 Reviewed by Dan Bernstein.
3965 REGRESSION (r76474): IntegerArray hash hashes only 1/4 of the array
3966 https://bugs.webkit.org/show_bug.cgi?id=56258
3968 No tests because the wrong hashing is mostly harmless. The only symptom
3969 we have seen is an occasional assertion in debug builds about the size
3970 not being a multiple of two. But a worse hash is worse for performance too.
3972 * platform/cf/BinaryPropertyList.cpp:
3973 (WebCore::IntegerArrayHash::hash): Pass in the size in bytes rather
3974 than the number of array entries.
3976 2011-03-12 Cameron Zwarich <zwarich@apple.com>
3980 Fix the build with newer GCCs and remove some extra whitespae.
3982 * bindings/js/SerializedScriptValue.cpp:
3985 2011-03-12 Cameron Zwarich <zwarich@apple.com>
3987 Rubber-stamped by Oliver Hunt.
3989 Removed unused ARMv5 code. The ARMv5 case now falls under the general
3990 unaligned accessed case.
3992 * bindings/js/SerializedScriptValue.cpp:
3993 (WebCore::CloneDeserializer::readLittleEndian):
3994 (WebCore::CloneDeserializer::readString):
3996 2011-03-12 Cameron Zwarich <zwarich@apple.com>
3998 Reviewed by Oliver Hunt.
4000 WebCore fails to build with Clang on ARM
4001 https://bugs.webkit.org/show_bug.cgi?id=56257
4003 Add an explicit instantiation of writeLittleEndian for uint8_t and move it to
4004 namespace scope, since explicit specializations are not allowed at class scope.
4006 * bindings/js/SerializedScriptValue.cpp:
4007 (WebCore::writeLittleEndian):
4009 2011-03-11 Darin Adler <darin@apple.com>
4011 Reviewed by Sam Weinig.
4013 Dragging image to desktop gives webloc instead of image file in WebKit2
4014 https://bugs.webkit.org/show_bug.cgi?id=56193