1 2011-01-27 Greg Coletta <greg.coletta@nokia.com>
3 Reviewed by Laszlo Gombos.
5 Get rid of prefix header dependency for WebKit2 build system
6 https://bugs.webkit.org/show_bug.cgi?id=50174
8 Guard EmptyProtocalDefinitions.h to make sure it's not included twice.
10 * platform/mac/EmptyProtocolDefinitions.h:
12 2011-01-27 Abhishek Arya <inferno@chromium.org>
14 Reviewed by Dan Bernstein.
16 Recalc table sections if needed before calculating the first line
18 https://bugs.webkit.org/show_bug.cgi?id=53265
20 When we try to calculate the baseline position of a table cell,
21 we recurse through all the child sibling boxes (when children are
22 non inline) and add their first linebox baseline values. If one of
23 the children is a table with pending section recalc, we will access
24 wrong table section values. We recalc table sections if it is needed.
26 Test: fast/table/recalc-section-first-body-crash-main.html
28 * rendering/RenderTable.cpp:
29 (WebCore::RenderTable::firstLineBoxBaseline):
31 2011-01-27 Adrienne Walker <enne@google.com>
33 Reviewed by Kenneth Russell.
35 [chromium] Add CRASH calls to further debug tiled compositor memcpy crash.
36 https://bugs.webkit.org/show_bug.cgi?id=52379
38 Test: LayoutTests/compositing (to verify these weren't triggered)
40 * platform/graphics/chromium/LayerTilerChromium.cpp:
41 (WebCore::LayerTilerChromium::invalidateRect):
42 (WebCore::LayerTilerChromium::update):
44 2011-01-27 Alexander Pavlov <apavlov@chromium.org>
46 Reviewed by Pavel Feldman.
48 Web Inspector: [STYLES] Cancelled suggestion of a property name results in a visual artifact
49 https://bugs.webkit.org/show_bug.cgi?id=53242
51 * inspector/front-end/StylesSidebarPane.js:
52 (WebInspector.StylePropertyTreeElement.prototype):
54 2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
56 Unreviewed, rolling out r76891.
57 http://trac.webkit.org/changeset/76891
58 https://bugs.webkit.org/show_bug.cgi?id=53280
60 Makes every layout test crash (Requested by othermaciej on
63 * page/EventHandler.cpp:
64 * page/EventHandler.h:
65 * rendering/RenderObject.cpp:
66 (WebCore::RenderObject::styleDidChange):
68 2011-01-27 Ryosuke Niwa <rniwa@webkit.org>
70 Unreviewed, rolling out r76839.
71 http://trac.webkit.org/changeset/76839
72 https://bugs.webkit.org/show_bug.cgi?id=49744
76 * rendering/RenderBox.cpp:
77 (WebCore::RenderBox::localCaretRect):
79 2011-01-27 Emil A Eklund <eae@chromium.org>
81 Reviewed by Darin Adler.
83 contentEditable formatBlock crashes on divs with contenteditable="false"
84 https://bugs.webkit.org/show_bug.cgi?id=53263
86 Check if editableRootForPosition returns null for position.
88 Test: editing/execCommand/format-block-contenteditable-false.html
90 * editing/FormatBlockCommand.cpp:
91 (WebCore::FormatBlockCommand::formatRange):
93 2011-01-27 Dimitri Glazkov <dglazkov@chromium.org>
95 Reviewed by Darin Adler.
97 Remove RenderMedia members that aren't used.
98 https://bugs.webkit.org/show_bug.cgi?id=53245
100 Refactoring, no change in behavior, so no new tests.
102 * rendering/RenderMedia.h: Removed unused member variables.
104 2011-01-27 Michael Saboff <msaboff@apple.com>
106 Reviewed by Darin Adler.
108 Potentially Unsafe HashSet of RuntimeObject* in RootObject definition
109 https://bugs.webkit.org/show_bug.cgi?id=53271
111 Precautionary change.
112 Changed RootObject to use WeakGCMap instead of HashSet.
113 Found will looking for another issue, but can't produce a test case
114 that is problematic. THerefore there aren't any new tests.
116 * bridge/runtime_root.cpp:
117 (JSC::Bindings::RootObject::invalidate):
118 (JSC::Bindings::RootObject::addRuntimeObject):
119 (JSC::Bindings::RootObject::removeRuntimeObject):
120 * bridge/runtime_root.h:
122 2011-01-27 Kenneth Russell <kbr@google.com>
124 Reviewed by James Robinson.
126 Rename Typed Array slice() to subset()
127 https://bugs.webkit.org/show_bug.cgi?id=53273
129 * bindings/js/JSArrayBufferViewHelper.h:
130 (WebCore::constructArrayBufferView):
131 * bindings/v8/custom/V8ArrayBufferViewCustom.h:
132 (WebCore::constructWebGLArray):
133 * html/canvas/Float32Array.cpp:
134 (WebCore::Float32Array::subset):
135 * html/canvas/Float32Array.h:
136 * html/canvas/Float32Array.idl:
137 * html/canvas/Int16Array.cpp:
138 (WebCore::Int16Array::subset):
139 * html/canvas/Int16Array.h:
140 * html/canvas/Int16Array.idl:
141 * html/canvas/Int32Array.cpp:
142 (WebCore::Int32Array::subset):
143 * html/canvas/Int32Array.h:
144 * html/canvas/Int32Array.idl:
145 * html/canvas/Int8Array.cpp:
146 (WebCore::Int8Array::subset):
147 * html/canvas/Int8Array.h:
148 * html/canvas/Int8Array.idl:
149 * html/canvas/TypedArrayBase.h:
150 (WebCore::TypedArrayBase::subsetImpl):
151 * html/canvas/Uint16Array.cpp:
152 (WebCore::Uint16Array::subset):
153 * html/canvas/Uint16Array.h:
154 * html/canvas/Uint16Array.idl:
155 * html/canvas/Uint32Array.cpp:
156 (WebCore::Uint32Array::subset):
157 * html/canvas/Uint32Array.h:
158 * html/canvas/Uint32Array.idl:
159 * html/canvas/Uint8Array.cpp:
160 (WebCore::Uint8Array::subset):
161 * html/canvas/Uint8Array.h:
162 * html/canvas/Uint8Array.idl:
164 2011-01-27 Darin Adler <darin@apple.com>
166 Reviewed by Dan Bernstein.
168 Changing cursor style has no effect until the mouse moves
169 https://bugs.webkit.org/show_bug.cgi?id=14344
170 rdar://problem/7563712
172 No tests added because we don't have infrastructure for testing actual cursor
173 changes (as opposed to cursor style computation) at this time. We might add it later.
175 * page/EventHandler.cpp:
176 (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon): Added.
177 * page/EventHandler.h: Ditto.
179 * rendering/RenderObject.cpp:
180 (WebCore::areNonIdenticalCursorListsEqual): Added.
181 (WebCore::areCursorsEqual): Added.
182 (WebCore::RenderObject::styleDidChange): Call dispatchFakeMouseMoveEventSoon if
183 cursor styles changed.
185 2011-01-27 Leo Yang <leo.yang@torchmobile.com.cn>
187 Reviewed by Dirk Schulze.
189 SVG Use Cycle is not detected
190 https://bugs.webkit.org/show_bug.cgi?id=52544
192 We should check if SVGUseElement::buildInstanceTree finds problem
193 for every child node. If it finds problem for any children we must
194 return immediately because otherwise the foundProblem variable may
195 be rewritten to false.
197 Test: svg/custom/recursive-use2.svg
199 * svg/SVGUseElement.cpp:
200 (WebCore::SVGUseElement::buildInstanceTree):
202 2011-01-27 Zhenyao Mo <zmo@google.com>
204 Reviewed by Kenneth Russell.
206 texSubImage2D's format/type needs to match the internalformat/type from the previous texImage2D call
207 https://bugs.webkit.org/show_bug.cgi?id=53054
209 Test: fast/canvas/webgl/tex-sub-image-2d-bad-args.html
211 * html/canvas/WebGLRenderingContext.cpp:
212 (WebCore::WebGLRenderingContext::texSubImage2DBase): Check format/type match.
214 2011-01-27 Yi Shen <yi.4.shen@nokia.com>, Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
216 Reviewed by Andreas Kling.
218 [Qt] Add fullscreen media control button for html video
219 https://bugs.webkit.org/show_bug.cgi?id=51543
221 Implement media control fullscreen button for QtWebKit html5 video.
223 * css/mediaControlsQt.css:
224 (video::-webkit-media-controls-fullscreen-button):
225 * platform/qt/RenderThemeQt.cpp:
226 (WebCore::RenderThemeQt::paintMediaFullscreenButton):
228 2011-01-27 Nate Chapin <japhet@chromium.org>
230 Reviewed by Adam Barth.
232 Remove FrameLoader::url() and update callers to use
234 https://bugs.webkit.org/show_bug.cgi?id=41165
236 Refactor, no new tests.
240 (WebCore::Document::processHttpEquiv):
241 (WebCore::Document::removePendingSheet):
242 * history/CachedFrame.cpp:
243 (WebCore::CachedFrameBase::CachedFrameBase):
244 * history/PageCache.cpp:
245 (WebCore::logCanCacheFrameDecision):
246 (WebCore::PageCache::canCachePageContainingThisFrame):
247 * html/HTMLFrameElementBase.cpp:
248 (WebCore::HTMLFrameElementBase::isURLAllowed):
249 * html/HTMLPlugInImageElement.cpp:
250 (WebCore::HTMLPlugInImageElement::allowedToLoadFrameURL):
251 * inspector/InspectorAgent.cpp:
252 (WebCore::InspectorAgent::inspectedURL):
253 * inspector/InspectorResourceAgent.cpp:
254 (WebCore::buildObjectForFrame):
255 * loader/DocumentWriter.cpp:
256 (WebCore::DocumentWriter::replaceDocument):
257 (WebCore::DocumentWriter::deprecatedFrameEncoding):
258 * loader/FrameLoader.cpp:
259 * loader/FrameLoader.h:
260 * loader/HistoryController.cpp:
261 (WebCore::HistoryController::updateForStandardLoad):
262 (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
263 (WebCore::HistoryController::updateForSameDocumentNavigation):
264 * loader/NavigationScheduler.cpp:
265 (WebCore::ScheduledHistoryNavigation::fire):
266 (WebCore::NavigationScheduler::scheduleLocationChange):
267 (WebCore::NavigationScheduler::scheduleRefresh):
268 * page/FrameView.cpp:
269 (WebCore::FrameView::updateControlTints):
271 (WebCore::Location::url):
272 (WebCore::Location::setProtocol):
273 (WebCore::Location::setHost):
274 (WebCore::Location::setHostname):
275 (WebCore::Location::setPort):
276 (WebCore::Location::setPathname):
277 (WebCore::Location::setSearch):
278 (WebCore::Location::setHash):
279 (WebCore::Location::reload):
281 (WebCore::Page::goToItem):
283 2011-01-27 Stephen White <senorblanco@chromium.org>
285 Reviewed by Darin Adler.
287 Fix performance regression in ImageQualityController::objectDestroyed().
288 https://bugs.webkit.org/show_bug.cgi?id=52645
290 In r72282, I inadvertently introduced this regression by using a
291 linear search through the hash map on object destruction. This was
292 because the hash key consisted of both object pointer and layer id,
293 but on object destruction we only know the object pointer, requiring
294 a search to find all the layers.
295 By replacing the hash map with two nested hash maps, where the outer key
296 is the object and the inner key is the layer, we can find all the
297 relevant data for an object in one hash lookup.
299 * rendering/RenderBoxModelObject.cpp:
300 Replace the (object,layer)->size HashMap with object->layer and
301 layer->size HashMaps.
302 (WebCore::ImageQualityController::isEmpty):
303 Implement isEmpty() for the outer HashMap.
304 (WebCore::ImageQualityController::removeLayer):
305 When a layer is removed, remove it from the inner hash map.
306 (WebCore::ImageQualityController::set):
307 Implement set(): if the inner map exists, set the layer->size tuple
308 directly. If not, create a new inner map, set the tuple, and insert
310 (WebCore::ImageQualityController::objectDestroyed):
311 Look up the object in the outer map only.
312 (WebCore::ImageQualityController::highQualityRepaintTimerFired):
313 Cosmetic changes for the renamed now-outer hash map.
314 (WebCore::ImageQualityController::shouldPaintAtLowQuality):
315 Do both outer and inner hash map lookups. Call set() to add/update
316 entries to the hash maps. keyDestroyed() is now removeLayer().
317 (WebCore::imageQualityController):
318 Make the ImageQualityController a file-static global, so it can be
319 created and destroyed on the fly.
320 (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
321 If there is no ImageQualityController, don't call objectDestroyed().
322 If it's empty, delete it.
323 * rendering/RenderImage.cpp:
324 (WebCore::RenderImage::paintIntoRect):
325 Also pass the Image* as the (void*) layer, since 0 is not a valid
328 2011-01-27 Adrienne Walker <enne@google.com>
330 Reviewed by James Robinson.
332 [chromium] Tiled compositor crashes if compositing turned off mid-paint
333 https://bugs.webkit.org/show_bug.cgi?id=53198
335 * platform/graphics/chromium/LayerRendererChromium.cpp:
336 (WebCore::LayerRendererChromium::drawLayers):
337 * platform/graphics/chromium/LayerTilerChromium.cpp:
338 (WebCore::LayerTilerChromium::update):
339 (WebCore::LayerTilerChromium::draw):
341 2011-01-27 Carol Szabo <carol.szabo@nokia.com>
343 Reviewed by David Hyatt.
345 A corrupted counter tree is created when renderers are added to the
346 tree bypassing RenderObject::addChild
347 https://bugs.webkit.org/show_bug.cgi?id=51270
349 No new tests. This patch reimplements the fix for bugs 43812 and
350 51637 and hence all tests are already there as part of the original
351 fixes for those bugs.
353 * rendering/RenderCounter.cpp:
354 (WebCore::findPlaceForCounter):
355 Removed old workaround as this patch hopefully fixes the real
357 * rendering/RenderObject.cpp:
358 (WebCore::RenderObject::addChild):
359 Removed call to counter updater as it was moved to a lower level.
360 (WebCore::RenderObject::destroy):
361 Moved attached counter nodes destruction to after the node is
362 removed from the tree.
363 * rendering/RenderObjectChildList.cpp:
364 (WebCore::RenderObjectChildList::removeChildNode):
365 (WebCore::RenderObjectChildList::appendChildNode):
366 (WebCore::RenderObjectChildList::insertChildNode):
367 Added notifications to the Counter system such that the
368 CounterForest reflects the changes to the RendererTree.
369 * rendering/RenderWidget.cpp:
370 (WebCore::RenderWidget::destroy):
371 Applied the same changes as for RenderObject::destroy()
372 since RenderObject::destroy() is not called from here.
374 2011-01-27 Adam Roben <aroben@apple.com>
376 Add WKCACFViewLayerTreeHost
378 This is a class that derives from CACFLayerTreeHost and uses a WKCACFView to render.
380 Fixes <http://webkit.org/b/53251> <rdar://problem/8925496> CACFLayerTreeHost should use
381 WKCACFView for rendering
383 * WebCore.vcproj/WebCore.vcproj: Added WKCACFViewLayerTreeHost.{cpp,h}.
385 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
386 (WebCore::CACFLayerTreeHost::acceleratedCompositingAvailable): Make the test window have a
387 non-zero size. WKCACFView will always say it can't render if you pass it a 0-sized window,
388 so we need a non-empty window to perform a valid test.
389 (WebCore::CACFLayerTreeHost::create): First try to create a WKCACFViewLayerTreeHost, then
390 fall back to a LegacyCACFLayerTreeHost.
391 (WebCore::CACFLayerTreeHost::flushPendingLayerChangesNow): Moved code to react to the
392 context flush from here...
393 (WebCore::CACFLayerTreeHost::contextDidChange): ...to here. Derived classes are required to
394 call this function whenever changes are flushed to the context.
396 * platform/graphics/ca/win/CACFLayerTreeHost.h: Added contextDidChange.
398 * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
399 (WebCore::LegacyCACFLayerTreeHost::createRenderer):
400 (WebCore::LegacyCACFLayerTreeHost::resize):
401 Changed to use flushContext instead of flushing the context manually so that we will always
402 notify the base class when the context gets flushed.
404 (WebCore::LegacyCACFLayerTreeHost::flushContext): Added a call to contextDidChange so the
405 base class will know what happened. Moved code to schedule a render from here...
406 (WebCore::LegacyCACFLayerTreeHost::contextDidChange): ...to here.
408 * platform/graphics/ca/win/LegacyCACFLayerTreeHost.h: Added contextDidChange.
410 * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp: Added.
411 (WebCore::WKCACFViewLayerTreeHost::create): If WebKitQuartzCoreAdditions, which provides
412 WKCACFView, isn't present, bail. Otherwise allocate and return a new host.
413 (WebCore::WKCACFViewLayerTreeHost::WKCACFViewLayerTreeHost): Initialize members.
414 (WebCore::WKCACFViewLayerTreeHost::updateViewIfNeeded): Update the view if we previously
415 marked that we needed to do so, and flush the context if our layer's bounds have changed.
416 (WebCore::WKCACFViewLayerTreeHost::contextDidChangeCallback): Call through to
418 (WebCore::WKCACFViewLayerTreeHost::contextDidChange): Tell the WKCACFView to start rendering
419 (if we didn't already), then call up to the base class.
420 (WebCore::WKCACFViewLayerTreeHost::initializeContext): Set the context's user data, the
421 view's layer, and hook up our "context did change" callback.
422 (WebCore::WKCACFViewLayerTreeHost::resize): Mark that the view needs to be updated the next
424 (WebCore::WKCACFViewLayerTreeHost::createRenderer): Update our view and return whether it is
425 able to render or not.
426 (WebCore::WKCACFViewLayerTreeHost::destroyRenderer): Clear out all the info we passed down
428 (WebCore::WKCACFViewLayerTreeHost::lastCommitTime): Call through to the view.
429 (WebCore::WKCACFViewLayerTreeHost::flushContext): Ditto.
430 (WebCore::WKCACFViewLayerTreeHost::paint): Update the view so it will draw at the right
431 size, then call up to the base class.
432 (WebCore::WKCACFViewLayerTreeHost::render): Invalidate the view using the passed-in dirty
433 rects, then ask it to draw.
435 * platform/graphics/ca/win/WKCACFViewLayerTreeHost.h: Copied from Source/WebCore/platform/graphics/ca/win/LegacyCACFLayerTreeHost.h.
437 2011-01-27 Adam Roben <aroben@apple.com>
439 Move LegacyCACFLayerTreeHost into its own files
441 More preparation for <http://webkit.org/b/53251> <rdar://problem/8925496> CACFLayerTreeHost
442 should use WKCACFView for rendering
444 Reviewed by Simon Fraser.
446 * WebCore.vcproj/WebCore.vcproj: Added LegacyCACFLayerTreeHost.{cpp,h}.
448 * platform/graphics/ca/win/CACFLayerTreeHost.cpp: Moved code from here to new files.
450 * platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp: Added.
451 * platform/graphics/ca/win/LegacyCACFLayerTreeHost.h: Added.
453 2011-01-27 Patrick Gansterer <paroga@webkit.org>
455 Unreviewed WinCE build fix for r76824.
457 * platform/wince/DragDataWinCE.cpp:
458 (WebCore::DragData::dragDataMap):
460 2011-01-27 Adam Roben <aroben@apple.com>
462 Split CACFLayerTreeHost into base and derived classes
464 The derived class, LegacyCACFLayerTreeHost, contains all the D3D-related code. A later patch
465 will add a new derived class that replaces the D3D code with a different rendering API.
467 For now, LegacyCACFLayerTreeHost lives in CACFLayerTreeHost.cpp. This keeps the diff a
468 little smaller. A later patch will move it to its own source files.
470 Preparation for <http://webkit.org/b/53251> <rdar://problem/8925496> CACFLayerTreeHost
471 should use WKCACFView for rendering
473 Reviewed by Simon Fraser.
475 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
476 (WebCore::CACFLayerTreeHost::acceleratedCompositingAvailable): Clear the window before
477 destroying the host, as that is now the API contract that clients must fulfill.
478 (WebCore::LegacyCACFLayerTreeHost::create): Added. Simple creator.
479 (WebCore::CACFLayerTreeHost::create): Now instantiates a LegacyCACFLayerTreeHost. Calls the
480 new initialize function to perform initialization that has to happen after the vtable has
483 (WebCore::LegacyCACFLayerTreeHost::LegacyCACFLayerTreeHost):
484 (WebCore::CACFLayerTreeHost::CACFLayerTreeHost):
485 (WebCore::LegacyCACFLayerTreeHost::initializeContext):
486 (WebCore::CACFLayerTreeHost::initialize):
487 Moved some initialization code from the CACFLayerTreeHost constructor into these new
490 (WebCore::LegacyCACFLayerTreeHost::~LegacyCACFLayerTreeHost): Added. Moved code here from
492 (WebCore::CACFLayerTreeHost::~CACFLayerTreeHost): Rather than clearing the window at this
493 point (which would be too late, since we won't be able to call into the derived class's
494 virtual functions), just assert that it has already been cleared (or was never set in the
496 (WebCore::LegacyCACFLayerTreeHost::createRenderer): Renamed from
497 CACFLayerTreeHost::createRenderer, and changed to use getters instead of accessing
498 CACFLayerTreeHost's data members directly.
500 (WebCore::LegacyCACFLayerTreeHost::destroyRenderer):
501 (WebCore::CACFLayerTreeHost::destroyRenderer):
502 Moved some code to the new LegacyCACFLayerTreeHost function.
504 (WebCore::LegacyCACFLayerTreeHost::resize):
505 (WebCore::LegacyCACFLayerTreeHost::renderTimerFired):
506 Moved these functions to LegacyCACFLayerTreeHost.
508 (WebCore::LegacyCACFLayerTreeHost::paint):
509 (WebCore::CACFLayerTreeHost::paint):
510 Moved some code to the new LegacyCACFLayerTreeHost function.
512 (WebCore::LegacyCACFLayerTreeHost::render):
513 (WebCore::LegacyCACFLayerTreeHost::renderSoon):
514 Moved these functions to LegacyCACFLayerTreeHost.
516 (WebCore::CACFLayerTreeHost::flushPendingLayerChangesNow): Moved code to flush the context
518 (WebCore::LegacyCACFLayerTreeHost::flushContext): ...to this new function.
520 (WebCore::LegacyCACFLayerTreeHost::lastCommitTime): Moved code to get the last commit time
521 to this new function...
522 (WebCore::CACFLayerTreeHost::notifyAnimationsStarted): ...from here.
524 (WebCore::LegacyCACFLayerTreeHost::initD3DGeometry):
525 (WebCore::LegacyCACFLayerTreeHost::resetDevice):
526 Moved these functions to LegacyCACFLayerTreeHost.
528 * platform/graphics/ca/win/CACFLayerTreeHost.h: Made some functions virtual, removed some
529 members that have moved to LegacyCACFLayerTreeHost, grouped remaining members more
530 logically, and added some getters used by LegacyCACFLayerTreeHost.
532 2011-01-27 Adam Roben <aroben@apple.com>
534 Move CACFLayerTreeHostClient to its own header file
536 Rubber-stamped by Steve Falkenburg.
538 * WebCore.vcproj/WebCore.vcproj: Added CACFLayerTreeHostClient.h. Also let VS have its way
541 * platform/graphics/ca/win/CACFLayerTreeHost.cpp: Added new #include.
543 * platform/graphics/ca/win/CACFLayerTreeHost.h: Removed CACFLayerTreeHostClient.
545 * platform/graphics/ca/win/CACFLayerTreeHostClient.h: Added.
547 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp: Moved some #includes here
548 from the header file.
550 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: Replaced broader #includes
551 with more specific ones, plus a forward-declaration.
553 2011-01-27 James Simonsen <simonjam@chromium.org>
555 Reviewed by Tony Chang.
557 [Chromium] Simplify small caps logic in complex text on linux
558 https://bugs.webkit.org/show_bug.cgi?id=53207
560 Test: fast/text/atsui-multiple-renderers.html
561 fast/text/atsui-small-caps-punctuation-size.html
563 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
564 (WebCore::ComplexTextController::nextScriptRun): Remove redundant logic. Case changes in a text run imply FontData changes.
565 (WebCore::ComplexTextController::setupFontForScriptRun): Update comment to reflect above.
567 2011-01-27 Adam Barth <abarth@webkit.org>
569 In which I attempt to fix the EFL build.
573 2011-01-25 Levi Weintraub <leviw@chromium.org>
575 Reviewed by Darin Adler.
577 Adding border and padding to the calculation of the local caret rect for RenderBoxes.
578 Corrected for mistake in r76625
580 Undo moves caret to invalid position
581 https://bugs.webkit.org/show_bug.cgi?id=49744
583 Tests: editing/selection/caret-painting-after-paste-undo-rtl.html
584 editing/selection/caret-painting-after-paste-undo.html
586 * rendering/RenderBox.cpp:
587 (WebCore::RenderBox::localCaretRect):
589 2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
591 Unreviewed, rolling out r76825.
592 http://trac.webkit.org/changeset/76825
593 https://bugs.webkit.org/show_bug.cgi?id=53256
595 "caused crashes on GTK and chromium" (Requested by rniwa on
598 * rendering/RenderBoxModelObject.cpp:
599 (WebCore::ImageQualityController::keyDestroyed):
600 (WebCore::ImageQualityController::objectDestroyed):
601 (WebCore::ImageQualityController::highQualityRepaintTimerFired):
602 (WebCore::ImageQualityController::shouldPaintAtLowQuality):
603 (WebCore::imageQualityController):
604 (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
606 2011-01-27 Adam Barth <abarth@webkit.org>
608 Reviewed by Eric Seidel.
610 Generalize the mechanism view-source uses to remember the source for an HTMLToken
611 https://bugs.webkit.org/show_bug.cgi?id=53200
613 Currently view-source tracks the source associated with each HTMLToken.
614 We want to re-use this mechanism for the new XSS auditor. This patch
615 moves this code into its own class so it can be shared between the
616 view-source parser and the general HTML parser. This patch also add
617 support for tracking the source of tokens that span document.write
620 No functional change. This code change is somewhat tested by our
621 view-source layout tests.
627 * WebCore.vcproj/WebCore.vcproj:
628 * WebCore.xcodeproj/project.pbxproj:
629 - Fun with updating build files.
630 * html/parser/HTMLDocumentParser.cpp:
631 (WebCore::HTMLDocumentParser::pumpTokenizer):
632 - Teach HTMLDocumentParser to track the source for HTMLTokens.
633 Currently, this information isn't used, but it will be shortly.
634 I ran the HTML parser benchmark and this change didn't have a
636 * html/parser/HTMLDocumentParser.h:
637 - Composite in the HTMLSourceTracker.
638 * html/parser/HTMLSourceTracker.cpp: Added.
639 (WebCore::HTMLSourceTracker::HTMLSourceTracker):
640 (WebCore::HTMLSourceTracker::start):
641 (WebCore::HTMLSourceTracker::end):
642 - This function should eventualy be folded into HTMLTokenizer.
643 (WebCore::HTMLSourceTracker::sourceForToken):
644 * html/parser/HTMLSourceTracker.h: Added.
645 * html/parser/HTMLToken.h:
646 - Now HTMLTokens always have a start index of zero. To do the job
647 of the old start index, this patch introduces the notion of a
648 baseOffset. Unlike the start index (which was used as the base
649 offset for all the other indicies), the baseOffset can change
650 over the lifetime of the token. We need the flexibility to
651 change the offset for tokens that span document.write boundaries.
652 Values are now normalized to zero-offset when stored.
653 (WebCore::HTMLToken::clear):
654 (WebCore::HTMLToken::setBaseOffset):
655 (WebCore::HTMLToken::end):
656 (WebCore::HTMLToken::beginAttributeName):
657 (WebCore::HTMLToken::endAttributeName):
658 (WebCore::HTMLToken::beginAttributeValue):
659 (WebCore::HTMLToken::endAttributeValue):
660 * html/parser/HTMLViewSourceParser.cpp:
661 - Updates the HTMLViewSourceParser to use the new
663 (WebCore::HTMLViewSourceParser::pumpTokenizer):
664 (WebCore::HTMLViewSourceParser::append):
665 (WebCore::HTMLViewSourceParser::sourceForToken):
666 - This function now just calls through to HTMLSourceTracker.
667 * html/parser/HTMLViewSourceParser.h:
668 * platform/text/SegmentedString.cpp:
669 (WebCore::SegmentedString::currentColumn):
670 (WebCore::SegmentedString::setCurrentPosition):
671 * platform/text/SegmentedString.h:
672 (WebCore::SegmentedString::numberOfCharactersConsumed):
673 - We need to handle the general case now. The "slow" version
674 doesn't turn out to be any slower in practice anyway.
676 2011-01-27 Sam Weinig <sam@webkit.org>
680 * platform/ScrollView.cpp:
681 (WebCore::ScrollView::paintOverhangAreas): Add parameters.
683 2011-01-27 Sam Weinig <sam@webkit.org>
685 Reviewed by Dave Hyatt.
687 Add ability to do an unconstrained scroll on a ScrollView
688 https://bugs.webkit.org/show_bug.cgi?id=53249
690 * platform/ScrollView.cpp:
691 (WebCore::ScrollView::ScrollView):
692 Initialize m_constrainsScrollingToContentEdge to true.
694 (WebCore::ScrollView::setScrollOffset):
695 Only constrain the offset if the m_constrainsScrollingToContentEdge is set.
697 (WebCore::ScrollView::updateScrollbars):
698 Simplify expression converting an IntSize to an IntPoint.
700 (WebCore::ScrollView::paint):
701 Paint the overhang if there is any.
703 (WebCore::ScrollView::calculateOverhangAreasForPainting):
704 Calculate the overhang in viewport coordinates for painting.
706 * platform/ScrollView.h:
707 (WebCore::ScrollView::constrainsScrollingToContentEdge):
708 (WebCore::ScrollView::setConstrainsScrollingToContentEdge):
709 Add bit to control whether the scroll position should be constrained
710 to the content edge when set.
712 * platform/ScrollbarThemeComposite.cpp:
713 (WebCore::usedTotalSize):
714 (WebCore::ScrollbarThemeComposite::thumbPosition):
715 (WebCore::ScrollbarThemeComposite::thumbLength):
716 * platform/mac/ScrollbarThemeMac.mm:
717 (WebCore::ScrollbarThemeMac::paint):
718 Improve calculations of thumb size and position to take overhang into account.
720 2011-01-27 Dirk Schulze <krit@webkit.org>
722 Reviewed by Nikolas Zimmermann.
724 SVG animation of Paths with segments of different coordinate modes on begin and end
725 https://bugs.webkit.org/show_bug.cgi?id=52984
727 At the moment we just support SVG path animations, if the number of segments on the given start path
728 is the same as the number of segments on the given end path. But a segment on a given position must be identical
729 on both paths as well. Not only the segment type, also the coordinate mode of the segments must be identical.
730 If MoveToRel is on the second position on the start path a MoveToRel must be on the second position
731 of the end path too. According to the SVG spec, at least the coordinate mode can differ. Means, if we have MoveToRel
732 in the start path, we can use MoveToAbs on the same position in the end path.
734 This patch fixes the blending code to follow the spec here. It was necessary to track the current position of
735 both paths, transform coordinates to the same coordinate mode and transform the resulting animation coordinate back
736 to the coordinate mode of either the start or the end path. Which mode is taken depends on the progress of the
739 Tests: svg/animations/animate-path-animation-Cc-Ss.html
740 svg/animations/animate-path-animation-Ll-Vv-Hh.html
741 svg/animations/animate-path-animation-Qq-Tt.html
742 svg/animations/animate-path-animation-cC-sS-inverse.html
743 svg/animations/animate-path-animation-lL-vV-hH-inverse.html
744 svg/animations/animate-path-animation-qQ-tT-inverse.html
746 * svg/SVGPathBlender.cpp:
747 (WebCore::blendFloatPoint):
748 (WebCore::blendAnimatedFloat):
749 (WebCore::SVGPathBlender::blendAnimatedDimensionalFloat):
750 (WebCore::SVGPathBlender::blendAnimatedFloatPoint):
751 (WebCore::SVGPathBlender::blendMoveToSegment):
752 (WebCore::SVGPathBlender::blendLineToSegment):
753 (WebCore::SVGPathBlender::blendLineToHorizontalSegment):
754 (WebCore::SVGPathBlender::blendLineToVerticalSegment):
755 (WebCore::SVGPathBlender::blendCurveToCubicSegment):
756 (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
757 (WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
758 (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
759 (WebCore::SVGPathBlender::blendArcToSegment):
760 (WebCore::coordinateModeOfCommand):
761 (WebCore::isSegmentEqual):
762 (WebCore::SVGPathBlender::blendAnimatedPath):
763 (WebCore::SVGPathBlender::cleanup):
764 * svg/SVGPathBlender.h:
766 2011-01-27 Cris Neckar <cdn@chromium.org>
768 Reviewed by Dimitri Glazkov.
770 Clear the parent on a css keyframe's m_style when removing it from the stylesheet.
771 https://bugs.webkit.org/show_bug.cgi?id=52320
773 Test: fast/css/css-keyframe-style-crash.html
775 * css/CSSRuleList.cpp:
776 (WebCore::CSSRuleList::deleteRule):
777 * css/WebKitCSSKeyframesRule.cpp:
778 (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
780 2011-01-27 Rob Buis <rwlbuis@gmail.com>
782 Reviewed by Kent Tamura.
784 Color changes to option elements in a select multiple aren't drawn immediately
785 https://bugs.webkit.org/show_bug.cgi?id=49790
787 Redirect style changes on <option> element to the owner <select> element.
789 Test: fast/repaint/select-option-background-color.html
791 * html/HTMLOptionElement.cpp:
792 (WebCore::HTMLOptionElement::setRenderStyle):
794 2011-01-19 Stephen White <senorblanco@chromium.org>
796 Reviewed by Darin Adler.
798 Fix performance regression in ImageQualityController::objectDestroyed().
799 https://bugs.webkit.org/show_bug.cgi?id=52645
801 In r72282, I inadvertently introduced this regression by using a
802 linear search through the hash map on object destruction. This was
803 because the hash key consisted of both object pointer and layer id,
804 but on object destruction we only know the object pointer, requiring
805 a search to find all the layers.
806 By replacing the hash map with two nested hash maps, where the outer key
807 is the object and the inner key is the layer, we can find all the
808 relevant data for an object in one hash lookup.
810 * rendering/RenderBoxModelObject.cpp:
811 Replace the (object,layer)->size HashMap with object->layer and
812 layer->size HashMaps.
813 (WebCore::ImageQualityController::isEmpty):
814 Implement isEmpty() for the outer HashMap.
815 (WebCore::ImageQualityController::removeLayer):
816 When a layer is removed, remove it from the inner hash map.
817 (WebCore::ImageQualityController::set):
818 Implement set(): if the inner map exists, set the layer->size tuple
819 directly. If not, create a new inner map, set the tuple, and insert
821 (WebCore::ImageQualityController::objectDestroyed):
822 Look up the object in the outer map only.
823 (WebCore::ImageQualityController::highQualityRepaintTimerFired):
824 Cosmetic changes for the renamed now-outer hash map.
825 (WebCore::ImageQualityController::shouldPaintAtLowQuality):
826 Do both outer and inner hash map lookups. Call set() to add/update
827 entries to the hash maps. keyDestroyed() is now removeLayer().
828 (WebCore::imageQualityController):
829 Make the ImageQualityController a file-static global, so it can be
830 created and destroyed on the fly.
831 (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
832 If there is no ImageQualityController, don't call objectDestroyed().
833 If it's empty, delete it.
836 2011-01-26 Enrica Casucci <enrica@apple.com>
838 Reviewed by Darin Adler and Adam Roben.
840 WebKit2: add support for drag and drop on Windows
841 https://bugs.webkit.org/show_bug.cgi?id=52775
842 <rdar://problem/8514409>
844 On Windows the access to the content being dragged is
845 provided via the IDataObject interface that is made available
846 to the window that registers itself as drop target.
847 Since this interface cannot be accessed from the WebProcess,
848 in every call to one of the methods of the IDropTarget interface
849 we serialize the content of the drag clipboard and send it over to
851 The bulk of this patch consists in the refactoring needed in DragData
852 and ClipboardWin classes to extract the data from the serialized object.
854 * platform/DragData.cpp:
855 * platform/DragData.h:
856 * platform/win/ClipboardUtilitiesWin.cpp:
857 (WebCore::getWebLocData):
859 (WebCore::getPlainText):
860 (WebCore::getTextHTML):
861 (WebCore::getCFHTML):
862 (WebCore::fragmentFromFilenames):
863 (WebCore::containsFilenames):
864 (WebCore::fragmentFromHTML):
865 (WebCore::containsHTML):
866 (WebCore::getClipboardData):
867 * platform/win/ClipboardUtilitiesWin.h:
868 * platform/win/ClipboardWin.cpp:
869 (WebCore::Clipboard::create):
870 (WebCore::ClipboardWin::ClipboardWin):
871 (WebCore::ClipboardWin::getData):
872 (WebCore::ClipboardWin::types):
873 (WebCore::ClipboardWin::files):
874 (WebCore::ClipboardWin::hasData):
875 * platform/win/ClipboardWin.h:
876 (WebCore::ClipboardWin::create):
877 * platform/win/DragDataWin.cpp:
878 (WebCore::DragData::DragData):
879 (WebCore::DragData::containsURL):
880 (WebCore::DragData::dragDataMap):
881 (WebCore::DragData::asURL):
882 (WebCore::DragData::containsFiles):
883 (WebCore::DragData::asFilenames):
884 (WebCore::DragData::containsPlainText):
885 (WebCore::DragData::asPlainText):
886 (WebCore::DragData::canSmartReplace):
887 (WebCore::DragData::containsCompatibleContent):
888 (WebCore::DragData::asFragment):
890 2011-01-27 Mario Sanchez Prada <msanchez@igalia.com>
892 Reviewed by Martin Robinson.
894 [GTK] Space characters in source document interfere with reported caret offset
895 https://bugs.webkit.org/show_bug.cgi?id=53033
897 Calculate caret offset from rendered text instead of from node contents.
899 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
900 (objectAndOffsetUnignored): Calculate the caret offset based only
901 on positions and ranges, instead of using the computed offset in
904 2011-01-26 Alexey Proskuryakov <ap@apple.com>
906 Reviewed by Darin Adler.
908 https://bugs.webkit.org/show_bug.cgi?id=53197
909 <rdar://problem/8895682> Make WebKit2 printing asynchronous
911 * WebCore.exp.in: Export more PrintContext methods that we didn't use on Mac before.
913 * page/PrintContext.cpp: (WebCore::PrintContext::spoolRect): Changed to make the same
914 transformation as spoolPages does for consistency.
916 2011-01-27 David Grogan <dgrogan@google.com>
918 Reviewed by Jeremy Orlow.
920 initial support for close() in indexeddb backend
921 https://bugs.webkit.org/show_bug.cgi?id=53150
923 Test: storage/indexeddb/transaction-after-close.html
925 * storage/IDBDatabase.cpp:
926 (WebCore::IDBDatabase::IDBDatabase):
927 (WebCore::IDBDatabase::transaction):
928 (WebCore::IDBDatabase::close):
929 * storage/IDBDatabase.h:
930 * storage/IDBDatabase.idl:
931 * storage/IDBDatabaseBackendImpl.cpp:
932 (WebCore::IDBDatabaseBackendImpl::transaction):
933 (WebCore::IDBDatabaseBackendImpl::close):
935 2011-01-27 Dirk Schulze <krit@webkit.org>
937 Reviewed by Nikolas Zimmermann.
939 SVG animation doesn't support calcMode discrete for number and color values.
940 https://bugs.webkit.org/show_bug.cgi?id=53189
942 Add support for calcMode discrete on number and color animation.
944 Tests: svg/animations/animate-color-calcMode-discrete.html
945 svg/animations/animate-number-calcMode-discrete.html
947 * svg/SVGAnimateElement.cpp:
948 (WebCore::SVGAnimateElement::calculateAnimatedValue):
950 2011-01-26 Zhenyao Mo <zmo@google.com>
952 Reviewed by Kenneth Russell.
954 shaderSource needs to preserve original source
955 https://bugs.webkit.org/show_bug.cgi?id=52833
957 Test: fast/canvas/webgl/gl-getshadersource.html
959 * html/canvas/WebGLRenderingContext.cpp:
960 (WebCore::WebGLRenderingContext::getShaderParameter): Intercept SHADER_SOURCE_LENGTH.
961 (WebCore::WebGLRenderingContext::getShaderSource): Intercept the call.
962 (WebCore::WebGLRenderingContext::shaderSource): Cache the source.
963 * html/canvas/WebGLShader.cpp: Cache shader source.
964 (WebCore::WebGLShader::WebGLShader):
965 * html/canvas/WebGLShader.h: Ditto.
966 (WebCore::WebGLShader::getSource):
967 (WebCore::WebGLShader::setSource):
969 2011-01-27 Patrick Gansterer <paroga@webkit.org>
971 Unreviewed WinCE build fix for r76743.
973 * platform/graphics/wince/FontWinCE.cpp:
974 (WebCore::TextRunComponent::TextRunComponent):
976 2011-01-27 Pavel Podivilov <podivilov@chromium.org>
978 Reviewed by Pavel Feldman.
980 Web Inspector: Closure and Global variable details automatically collapsing on each step through JavaScript code.
981 https://bugs.webkit.org/show_bug.cgi?id=53234
983 * inspector/front-end/ScopeChainSidebarPane.js:
984 (WebInspector.ScopeChainSidebarPane):
985 (WebInspector.ScopeChainSidebarPane.prototype.update):
987 2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
989 Unreviewed, rolling out r76789.
990 http://trac.webkit.org/changeset/76789
991 https://bugs.webkit.org/show_bug.cgi?id=53238
993 Broke GTK layout tests (Requested by podivilov on #webkit).
995 * inspector/front-end/ScopeChainSidebarPane.js:
996 (WebInspector.ScopeChainSidebarPane):
997 (WebInspector.ScopeChainSidebarPane.prototype.update):
999 2011-01-27 Yury Semikhatsky <yurys@chromium.org>
1001 Reviewed by Pavel Feldman.
1003 Web Inspector: store all settings related to the agents on the frontend side
1004 https://bugs.webkit.org/show_bug.cgi?id=53174
1011 * WebCore.vcproj/WebCore.vcproj:
1012 * WebCore.xcodeproj/project.pbxproj:
1013 * bindings/js/ScriptDebugServer.cpp:
1014 * bindings/js/ScriptDebugServer.h:
1015 * bindings/js/ScriptProfiler.cpp:
1016 * bindings/js/ScriptProfiler.h:
1017 * bindings/v8/ScriptDebugServer.cpp:
1018 * bindings/v8/ScriptDebugServer.h:
1019 * bindings/v8/ScriptProfiler.cpp:
1020 * bindings/v8/ScriptProfiler.h:
1021 * inspector/Inspector.idl:
1022 * inspector/InspectorAgent.cpp: profiler and debugger enablement state is now stored
1023 on the front-end side and will be pushed to the backend when the frontend is loaded.
1024 (WebCore::InspectorAgent::InspectorAgent):
1025 (WebCore::InspectorAgent::disconnectFrontend):
1026 (WebCore::InspectorAgent::restoreDebugger):
1027 (WebCore::InspectorAgent::restoreProfiler):
1028 (WebCore::InspectorAgent::enableProfiler):
1029 (WebCore::InspectorAgent::disableProfiler):
1030 (WebCore::InspectorAgent::showAndEnableDebugger):
1031 (WebCore::InspectorAgent::enableDebugger):
1032 (WebCore::InspectorAgent::disableDebugger):
1033 * inspector/InspectorAgent.h:
1034 * inspector/InspectorConsoleAgent.cpp: XHR failures will be logged to the console only
1035 if the front-end was opened during current browser session and XHR logging is turned on
1037 (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1038 (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1039 * inspector/InspectorDebuggerAgent.cpp:
1040 * inspector/InspectorDebuggerAgent.h:
1041 * inspector/InspectorInstrumentation.cpp:
1042 (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
1043 (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
1044 * inspector/InspectorProfilerAgent.cpp:
1045 (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1046 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1047 * inspector/InspectorSettings.cpp: Removed.
1048 * inspector/InspectorSettings.h: Removed.
1049 * inspector/InspectorState.cpp:
1050 (WebCore::InspectorState::InspectorState):
1051 * inspector/InspectorState.h:
1052 * inspector/front-end/ConsoleView.js:
1053 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessagesCleared):
1054 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
1055 (WebInspector.ConsoleView.prototype._handleContextMenuEvent.itemAction):
1056 (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
1057 * inspector/front-end/ProfilesPanel.js:
1058 (WebInspector.ProfilesPanel.prototype._toggleProfiling):
1059 * inspector/front-end/ScriptsPanel.js:
1060 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
1061 * inspector/front-end/Settings.js:
1062 (WebInspector.Settings):
1063 * inspector/front-end/inspector.js:
1065 2011-01-27 Pavel Podivilov <podivilov@chromium.org>
1067 Reviewed by Pavel Feldman.
1069 Web Inspector: Closure and Global variable details automatically collapsing on each step through JavaScript code.
1070 https://bugs.webkit.org/show_bug.cgi?id=53234
1072 * inspector/front-end/ScopeChainSidebarPane.js:
1073 (WebInspector.ScopeChainSidebarPane):
1074 (WebInspector.ScopeChainSidebarPane.prototype.update):
1076 2011-01-27 Alexander Pavlov <apavlov@chromium.org>
1078 Reviewed by Pavel Feldman.
1080 Web Inspector: [Elements panel] Tooltip for relative links incorrectly identifies current URL
1081 https://bugs.webkit.org/show_bug.cgi?id=53171
1083 * inspector/front-end/inspector.js:
1084 (WebInspector.completeURL): Taught to understand partial href's that start with "?" (contain GET parameters only)
1086 2011-01-27 Yury Semikhatsky <yurys@chromium.org>
1088 Reviewed by Pavel Feldman.
1090 [V8] Crash in WebCore::addMessageToConsole
1091 https://bugs.webkit.org/show_bug.cgi?id=53227
1093 * bindings/v8/V8Proxy.cpp: check that the Frame where the error
1094 occured still has a page before getting a console object from it.
1095 (WebCore::V8Proxy::reportUnsafeAccessTo):
1097 2011-01-27 Hans Wennborg <hans@chromium.org>
1099 Reviewed by Jeremy Orlow.
1101 IndexedDB: Remove IDBCallbacks::onSuccess() used for null values.
1102 https://bugs.webkit.org/show_bug.cgi?id=53178
1104 Remove the IDBCallbacks::onSuccess() function that was used for
1105 null values, and replace such calls with calls to
1106 IDBCallBacks::onSuccess(SerializedScriptValue::nullValue())
1109 No new functionality, so no new tests.
1111 * storage/IDBCallbacks.h:
1112 * storage/IDBCursorBackendImpl.cpp:
1113 (WebCore::IDBCursorBackendImpl::updateInternal):
1114 (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
1115 * storage/IDBIndexBackendImpl.cpp:
1116 (WebCore::IDBIndexBackendImpl::openCursorInternal):
1117 * storage/IDBObjectStoreBackendImpl.cpp:
1118 (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
1119 (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
1120 * storage/IDBRequest.cpp:
1121 * storage/IDBRequest.h:
1123 2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
1125 Unreviewed, rolling out r76773.
1126 http://trac.webkit.org/changeset/76773
1127 https://bugs.webkit.org/show_bug.cgi?id=53230
1129 breaks multiple GTK media tests (Requested by philn-tp on
1132 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1133 (WebCore::mimeTypeCache):
1135 2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
1137 Unreviewed, rolling out r76770.
1138 http://trac.webkit.org/changeset/76770
1139 https://bugs.webkit.org/show_bug.cgi?id=53229
1141 Some inspector tests fail (Requested by yurys on #webkit).
1148 * WebCore.vcproj/WebCore.vcproj:
1149 * WebCore.xcodeproj/project.pbxproj:
1150 * bindings/js/ScriptDebugServer.cpp:
1151 (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled):
1152 * bindings/js/ScriptDebugServer.h:
1153 * bindings/js/ScriptProfiler.cpp:
1154 (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
1155 * bindings/js/ScriptProfiler.h:
1156 * bindings/v8/ScriptDebugServer.cpp:
1157 (WebCore::ScriptDebugServer::isDebuggerAlwaysEnabled):
1158 * bindings/v8/ScriptDebugServer.h:
1159 * bindings/v8/ScriptProfiler.cpp:
1160 (WebCore::ScriptProfiler::isProfilerAlwaysEnabled):
1161 * bindings/v8/ScriptProfiler.h:
1162 * inspector/Inspector.idl:
1163 * inspector/InspectorAgent.cpp:
1164 (WebCore::InspectorAgent::InspectorAgent):
1165 (WebCore::InspectorAgent::disconnectFrontend):
1166 (WebCore::InspectorAgent::restoreDebugger):
1167 (WebCore::InspectorAgent::restoreProfiler):
1168 (WebCore::InspectorAgent::ensureSettingsLoaded):
1169 (WebCore::InspectorAgent::enableProfiler):
1170 (WebCore::InspectorAgent::disableProfiler):
1171 (WebCore::InspectorAgent::showAndEnableDebugger):
1172 (WebCore::InspectorAgent::enableDebugger):
1173 (WebCore::InspectorAgent::disableDebugger):
1174 * inspector/InspectorAgent.h:
1175 (WebCore::InspectorAgent::settings):
1176 * inspector/InspectorConsoleAgent.cpp:
1177 (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1178 (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1179 * inspector/InspectorDebuggerAgent.cpp:
1180 (WebCore::InspectorDebuggerAgent::isDebuggerAlwaysEnabled):
1181 * inspector/InspectorDebuggerAgent.h:
1182 * inspector/InspectorInstrumentation.cpp:
1183 (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
1184 (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
1185 * inspector/InspectorProfilerAgent.cpp:
1186 (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1187 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1188 * inspector/InspectorSettings.cpp: Added.
1189 (WebCore::InspectorSettings::InspectorSettings):
1190 (WebCore::InspectorSettings::getBoolean):
1191 (WebCore::InspectorSettings::setBoolean):
1192 (WebCore::InspectorSettings::getLong):
1193 (WebCore::InspectorSettings::setLong):
1194 (WebCore::InspectorSettings::registerBoolean):
1195 (WebCore::InspectorSettings::registerLong):
1196 * inspector/InspectorSettings.h: Copied from Source/WebCore/bindings/v8/ScriptProfiler.h.
1197 * inspector/InspectorState.cpp:
1198 (WebCore::InspectorState::InspectorState):
1199 * inspector/InspectorState.h:
1200 * inspector/front-end/ConsoleView.js:
1201 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.monitoringXHRStateChanged):
1202 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
1203 (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
1204 * inspector/front-end/ProfilesPanel.js:
1205 (WebInspector.ProfilesPanel.prototype._toggleProfiling):
1206 * inspector/front-end/ScriptsPanel.js:
1207 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
1208 * inspector/front-end/Settings.js:
1209 (WebInspector.Settings):
1210 * inspector/front-end/inspector.js:
1212 2011-01-26 Philippe Normand <pnormand@igalia.com>
1214 Reviewed by Martin Robinson.
1216 [GTK] LayoutTests/media/audio-mpeg4-supported.html fails
1217 https://bugs.webkit.org/show_bug.cgi?id=53125
1219 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1220 (WebCore::mimeTypeCache): Add audio/x-m4a mimetype in the cache.
1222 2011-01-26 Yury Semikhatsky <yurys@chromium.org>
1224 Reviewed by Pavel Feldman.
1226 Web Inspector: store all settings related to the agents on the frontend side
1227 https://bugs.webkit.org/show_bug.cgi?id=53174
1234 * WebCore.vcproj/WebCore.vcproj:
1235 * WebCore.xcodeproj/project.pbxproj:
1236 * inspector/Inspector.idl:
1237 * inspector/InspectorAgent.cpp: profiler and debugger enablement state is now stored
1238 on the front-end side and will be pushed to the backend when the frontend is loaded.
1239 (WebCore::InspectorAgent::InspectorAgent):
1240 (WebCore::InspectorAgent::disconnectFrontend):
1241 (WebCore::InspectorAgent::restoreDebugger):
1242 (WebCore::InspectorAgent::restoreProfiler):
1243 (WebCore::InspectorAgent::enableProfiler):
1244 (WebCore::InspectorAgent::disableProfiler):
1245 (WebCore::InspectorAgent::showAndEnableDebugger):
1246 (WebCore::InspectorAgent::enableDebugger):
1247 (WebCore::InspectorAgent::disableDebugger):
1248 * inspector/InspectorAgent.h:
1249 * inspector/InspectorConsoleAgent.cpp: XHR failures will be logged to the console only
1250 if the front-end was opened during current browser session and XHR logging is turned on
1252 (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
1253 (WebCore::InspectorConsoleAgent::setConsoleMessagesEnabled):
1254 * inspector/InspectorInstrumentation.cpp:
1255 (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
1256 (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
1257 * inspector/InspectorProfilerAgent.cpp:
1258 (WebCore::InspectorProfilerAgent::enable):
1259 (WebCore::InspectorProfilerAgent::startUserInitiatedProfiling):
1260 * inspector/InspectorProfilerAgent.h:
1261 * inspector/InspectorSettings.cpp: Removed.
1262 * inspector/InspectorSettings.h: Removed.
1263 * inspector/InspectorState.cpp:
1264 (WebCore::InspectorState::InspectorState):
1265 * inspector/InspectorState.h:
1266 * inspector/front-end/ConsoleView.js:
1267 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.consoleMessagesCleared):
1268 (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher):
1269 (WebInspector.ConsoleView.prototype._handleContextMenuEvent.itemAction):
1270 (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
1271 * inspector/front-end/ProfilesPanel.js:
1272 (WebInspector.ProfilesPanel.prototype._toggleProfiling):
1273 * inspector/front-end/ScriptsPanel.js:
1274 (WebInspector.ScriptsPanel.prototype._toggleDebugging):
1275 * inspector/front-end/Settings.js:
1276 (WebInspector.Settings):
1277 * inspector/front-end/inspector.js:
1279 2011-01-27 Dan Bernstein <mitz@apple.com>
1281 Reviewed by Sam Weinig.
1283 REGRESSION (r76743): Uneven spacing in right-to-left justified text
1284 https://bugs.webkit.org/show_bug.cgi?id=53225
1286 Fixes failure in fast/text/atsui-spacing-features.html
1288 There was an inconsistency between rendering code and font code in the interpretation of
1289 'after expansion' and 'trailing expansion'. Changed all code to interpret these in terms of
1290 visual order rather than logical.
1292 * platform/graphics/Font.cpp:
1293 (WebCore::Font::expansionOpportunityCount): Added a text direction parameter and changed to
1294 iterate in visual order accordingly.
1295 * platform/graphics/Font.h:
1296 * platform/graphics/WidthIterator.cpp:
1297 (WebCore::WidthIterator::WidthIterator): Pass the run direction to expansionOpportunityCount().
1298 (WebCore::WidthIterator::advance): For right-to-left runs, evaluate the trailing expansion
1299 condition with respect to the first character, which is the trailing character in visual order.
1300 * platform/graphics/mac/ComplexTextController.cpp:
1301 (WebCore::ComplexTextController::ComplexTextController): Pass the run direction to
1302 expansionOpportunityCount().
1303 * rendering/RenderBlockLineLayout.cpp:
1304 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Ditto.
1306 2011-01-26 Adam Roben <aroben@apple.com>
1308 Don't create the Direct3D device before it's first needed
1310 We only need the device once we decide to render. There's no point in creating it before
1313 Reviewed by Sam Weinig.
1315 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1316 (WebCore::CACFLayerTreeHost::setWindow): Removed the call to createRenderer() from here.
1317 We already have code to create it when we first try to draw.
1318 (WebCore::CACFLayerTreeHost::createRenderer): Flush the context after we set our layer's
1319 bounds so that the bounds will take effect the next time we render (which could be just
1320 after this function returns).
1322 2011-01-26 Adam Roben <aroben@apple.com>
1324 Add assertions that CACFLayerTreeHost gains and loses an HWND only once
1326 CACFLayerTreeHost doesn't support any other use pattern.
1328 Reviewed by Sam Weinig.
1330 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1331 (WebCore::CACFLayerTreeHost::CACFLayerTreeHost): Initialize new member.
1332 (WebCore::CACFLayerTreeHost::setWindow): Assert that we transition from not having a window,
1333 to having a window, to not having a window just once over the lifetime of this object.
1335 * platform/graphics/ca/win/CACFLayerTreeHost.h: Added m_state.
1337 2011-01-26 Adam Roben <aroben@apple.com>
1339 Notify layers that their animations have started when we flush the context, not when we
1342 r76372 separated context flushing from rendering, but this bit of code got left behind.
1344 Reviewed by Sam Weinig.
1346 * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1347 (WebCore::CACFLayerTreeHost::render): Moved code to notify the layers from here to
1348 notifyAnimationsStarted.
1349 (WebCore::CACFLayerTreeHost::flushPendingLayerChangesNow): Added a call to
1350 notifyAnimationsStarted after we flush the context.
1351 (WebCore::CACFLayerTreeHost::notifyAnimationsStarted): Added. Code came from render. Changed
1352 to call PlatformCALayer::animationStarted rather than calling through to the client
1355 * platform/graphics/ca/win/CACFLayerTreeHost.h: Added notifyAniamtionsStarted.
1357 2011-01-26 Adam Roben <aroben@apple.com>
1359 Small cleanup in MediaPlayerPrivateFullscreenWindow
1361 Reviewed by Sam Weinig.
1363 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
1364 (WebCore::MediaPlayerPrivateFullscreenWindow::~MediaPlayerPrivateFullscreenWindow): Moved
1365 code here from close(), since this was the only place that called it after the following
1366 change to createWindow.
1367 (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow): Replaced code that handled the
1368 case where we had already created the window with an assertion that we have not already done
1369 so. Our single caller (FullscreenVideoController) did not require this behavior.
1371 * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h: Removed layerView.
1373 2011-01-26 Sam Weinig <sam@webkit.org>
1375 Reviewed by Adam Roben.
1377 Move ScrollView scroll wheel code to ScrollAnimator.
1379 * platform/ScrollAnimator.cpp:
1380 (WebCore::ScrollAnimator::handleWheelEvent):
1381 * platform/ScrollAnimator.h:
1382 Moved implementation of handleWheelEvent from ScrollView::wheelEvent.
1384 * platform/ScrollView.cpp:
1385 (WebCore::ScrollView::wheelEvent):
1386 Call down to the ScrollableArea.
1388 * platform/ScrollableArea.cpp:
1389 (WebCore::ScrollableArea::handleWheelEvent):
1390 Call down to the ScrollAnimator.
1392 * platform/ScrollableArea.h:
1393 (WebCore::ScrollableArea::scrollPosition):
1394 (WebCore::ScrollableArea::minimumScrollPosition):
1395 (WebCore::ScrollableArea::maximumScrollPosition):
1396 (WebCore::ScrollableArea::visibleContentRect):
1397 (WebCore::ScrollableArea::visibleHeight):
1398 (WebCore::ScrollableArea::visibleWidth):
1399 Add functions needed to implement wheel event in the animator.
1401 2011-01-26 David Kilzer <ddkilzer@apple.com>
1403 <http://webkit.org/b/53192> Add experimental support for HTTP pipelining in CFNetwork
1404 <rdar://problem/8821760>
1406 Reviewed by Antti Koivisto.
1408 This adds support for HTTP pipelining in CFNetwork, but does not
1409 enable it. To enable it post-SnowLeopard, use this command:
1411 defaults write BUNDLE.ID WebKitEnableHTTPPipelining -bool YES
1413 Once enabled, it is possible to force the same load priority
1414 (high) to be sent to CFNetwork to allow WebCore to handle the
1417 defaults write BUNDLE.ID WebKitForceHTTPPipeliningPriorityHigh -bool YES
1419 * WebCore.exp.in: Export _wkGetHTTPPipeliningPriority and
1420 _wkSetHTTPPipeliningPriority.
1422 * loader/DocumentThreadableLoader.cpp:
1423 (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
1424 Copy the priority to preflightRequest.
1426 * loader/ResourceLoadScheduler.cpp:
1427 (WebCore::ResourceLoadScheduler::scheduleLoad): Refactored code
1428 at the end of the method to use an early return.
1430 * loader/cache/CachedResourceRequest.cpp:
1431 (WebCore::CachedResourceRequest::load): Set the priority on the
1432 ResourceRequest object based on the priority of the
1433 CachedResourceRequest before calling
1434 ResourceLoadScheduler::scheduleSubresourceLoad().
1436 * loader/icon/IconLoader.cpp:
1437 (WebCore::IconLoader::startLoading): Create a ResourceRequest
1438 object and set its priority to ResourceLoadPriorityLow before
1439 passing it to ResourceLoadScheduler::scheduleSubresourceLoad().
1441 * platform/mac/WebCoreSystemInterface.h:
1442 (wkGetHTTPPipeliningPriority): Added.
1443 (wkSetHTTPPipeliningPriority): Added.
1444 * platform/mac/WebCoreSystemInterface.mm:
1445 (wkGetHTTPPipeliningPriority): Added.
1446 (wkSetHTTPPipeliningPriority): Added.
1448 * platform/network/ResourceRequestBase.cpp:
1449 (WebCore::ResourceRequestBase::adopt): Set m_priority when
1450 adopting a CrossThreadResourceRequestData.
1451 (WebCore::ResourceRequestBase::copyData): Set m_priority when
1452 creating a CrossThreadResourceRequestData.
1453 (WebCore::ResourceRequestBase::priority): Added.
1454 (WebCore::ResourceRequestBase::setPriority): Added.
1455 (WebCore::equalIgnoringHeaderFields): Priorities must match when
1456 comparing two ResourceRequest objects.
1458 * platform/network/ResourceRequestBase.h:
1459 (WebCore::ResourceRequestBase::ResourceRequestBase): Set default
1460 priority of new objects to ResourceLoadPriorityLow.
1461 (WebCore::ResourceRequestBase::priority): Added declaration.
1462 (WebCore::ResourceRequestBase::setPriority): Added declaration.
1463 (WebCore::isHTTPPipeliningEnabled): Added.
1464 (WebCore::shouldUseHTTPPipeliningPriority): Added.
1466 * platform/network/cf/ResourceRequestCFNet.cpp: Updated so that
1467 Mac OS X and Windows share code.
1468 (WebCore::initializeMaximumHTTPConnectionCountPerHost): Always
1469 set the HTTP connection count per host, but return an
1470 'unlimited' value when using HTTP pipelining. This method used
1471 to be defined in ResourceRequestMac.mm for Mac OS X.
1472 (WebCore::readBooleanPreference): Added. Helper method for
1473 reading boolean user defaults.
1474 (WebCore::isHTTPPipeliningEnabled): Returns value of user
1475 default key WebKitEnableHTTPPipelining, or false if not set.
1476 (WebCore::shouldUseHTTPPipeliningPriority): Returns value of
1477 user default key WebKitForceHTTPPipeliningPriorityHigh, or false
1479 * platform/network/cf/ResourceRequestCFNet.h: Updated so that
1480 Mac OS X and Windows share code. Fixed indentation.
1481 (WebCore::mapHTTPPipeliningPriorityToResourceLoadPriority): Added.
1482 (WebCore::mapResourceLoadPriorityToHTTPPipeliningPriority): Added.
1484 * platform/network/mac/ResourceRequestMac.mm:
1485 (WebCore::ResourceRequest::doUpdatePlatformRequest): Update
1486 HTTP pipelining priority on NSMutableFURLRequest object.
1487 (WebCore::ResourceRequest::doUpdateResourceRequest): Update
1488 m_priority from the NSURLRequest object.
1489 (WebCore::initializeMaximumHTTPConnectionCountPerHost): Removed.
1490 Code is now shared with Windows in ResourceRequestCFNet.cpp.
1492 2011-01-26 Beth Dakin <bdakin@apple.com>
1494 Reviewed by Darin Adler.
1496 Fix for <rdar://problem/8895140> Adopt WKScrollbar metrics
1497 when using WKScrollbars.
1499 New WebKitSystemInterface Functionality.
1501 * platform/mac/WebCoreSystemInterface.h:
1502 * platform/mac/WebCoreSystemInterface.mm:
1504 Some of the terrible static arrays are now only needed in the
1505 old non-WK code, so they are if-def'd now.
1506 * platform/mac/ScrollbarThemeMac.mm:
1508 Just patching this function in a better way than I did
1510 (WebCore::updateArrowPlacement):
1512 Call into WK for the right values.
1513 (WebCore::ScrollbarThemeMac::scrollbarThickness):
1514 (WebCore::ScrollbarThemeMac::hasThumb):
1515 (WebCore::ScrollbarThemeMac::minimumThumbLength):
1517 Return false if there are no buttons.
1518 (WebCore::ScrollbarThemeMac::hasButtons):
1520 Return an empty IntRect if there are not buttons.
1521 (WebCore::buttonRepaintRect):
1523 2011-01-26 Sam Weinig <sam@webkit.org>
1525 Reviewed by Maciej Stachowiak.
1527 Add events to represent the start/end of a gesture scroll
1528 https://bugs.webkit.org/show_bug.cgi?id=53215
1533 * WebCore.xcodeproj/project.pbxproj:
1536 * page/EventHandler.cpp:
1537 (WebCore::EventHandler::handleGestureEvent):
1538 * page/EventHandler.h:
1539 Add entry point for handling gesture events.
1541 * platform/PlatformGestureEvent.h: Added.
1542 (WebCore::PlatformGestureEvent::PlatformGestureEvent):
1543 (WebCore::PlatformGestureEvent::type):
1544 (WebCore::PlatformGestureEvent::position):
1545 (WebCore::PlatformGestureEvent::globalPosition):
1546 (WebCore::PlatformGestureEvent::timestamp):
1547 Add platform agnostic representation of a gesture event.
1549 2011-01-26 Dan Bernstein <mitz@apple.com>
1551 Reviewed by Dave Hyatt.
1553 <rdar://problem/8446709> Allow inter-ideograph justification for CJK
1554 https://bugs.webkit.org/show_bug.cgi?id=53184
1556 Tests: fast/text/justify-ideograph-complex.html
1557 fast/text/justify-ideograph-simple.html
1558 fast/text/justify-ideograph-vertical.html
1560 * html/canvas/CanvasRenderingContext2D.cpp:
1561 (WebCore::CanvasRenderingContext2D::drawTextInternal): Corrected the type of the third parameter
1562 passed to the TextRun constructor and added the trailingExpansionBehavior parameter.
1563 * platform/graphics/Font.cpp:
1564 (WebCore::Font::expansionOpportunityCount): Added. Returns the number of expansion opportunities
1565 for text justification. On entry, isAfterExpansion says whether an expansion opportunity exists
1566 before the first character. On return, isAfterExpansion says whether an expansion opportunity
1567 exists after the last character.
1568 * platform/graphics/Font.h:
1569 * platform/graphics/GlyphBuffer.h:
1570 (WebCore::GlyphBuffer::expandLastAdvance): Added.
1571 * platform/graphics/TextRun.h:
1572 (WebCore::TextRun::TextRun): Added a TrailingExpansionBehavior parameter to the constructors.
1573 Renamed padding to expansion.
1574 (WebCore::TextRun::expansion): Renamed padding() to this.
1575 (WebCore::TextRun::allowsTrailingExpansion): Added this accessor.
1576 * platform/graphics/WidthIterator.cpp:
1577 (WebCore::WidthIterator::WidthIterator): Initialize m_isAfterExpansion. Use Font::expansionOpportunityCount()
1578 and adjust the count if it includes a trailing expansion opportunity but the run disallows trailing
1580 (WebCore::WidthIterator::advance): Apply expansion before and after CJK ideographs.
1581 (WebCore::WidthIterator::advanceOneCharacter): Changed to not clear the GlyphBuffer so that advance()
1582 can expand the last advance if it is followed by a CJK ideograph.
1583 * platform/graphics/WidthIterator.h: Renamed m_padding to m_expansion and m_padPerSpace
1584 to m_expansionPerOpportunity.
1585 * platform/graphics/chromium/FontChromiumWin.cpp:
1586 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1587 * platform/graphics/chromium/FontLinux.cpp:
1588 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1589 * platform/graphics/efl/FontEfl.cpp:
1590 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1591 * platform/graphics/gtk/FontGtk.cpp:
1592 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1593 * platform/graphics/haiku/FontHaiku.cpp:
1594 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1595 * platform/graphics/mac/ComplexTextController.cpp:
1596 (WebCore::ComplexTextController::ComplexTextController): Initialize m_isAfterExpansion. Use
1597 Font::expansionOpportunityCount() and adjust the count if it includes a trailing expansion
1598 opportunity but the run disallows trailing expansion.
1599 (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Moved the definition and initialization
1600 of hasExtraSpacing outside the loop. Apply expansion before and after CJK ideographs.
1601 * platform/graphics/mac/ComplexTextController.h: Renamed m_padding to m_expansion and m_padPerSpace
1602 to m_expansionPerOpportunity.
1603 * platform/graphics/mac/FontMac.mm:
1604 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1605 * platform/graphics/qt/FontQt.cpp:
1606 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1607 * platform/graphics/win/FontWin.cpp:
1608 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1609 * platform/graphics/win/UniscribeController.cpp:
1610 (WebCore::UniscribeController::UniscribeController): Updated for rename.
1611 * platform/graphics/wince/FontWinCE.cpp:
1612 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1613 * platform/graphics/wx/FontWx.cpp:
1614 (WebCore::Font::canExpandAroundIdeographsInComplexText): Added.
1615 * rendering/EllipsisBox.cpp:
1616 (WebCore::EllipsisBox::paint): Pass a TrailingExpansionBehavior to the TextRun constructor.
1617 (WebCore::EllipsisBox::selectionRect): Ditto.
1618 (WebCore::EllipsisBox::paintSelection): Ditto.
1619 * rendering/InlineBox.h:
1620 (WebCore::InlineBox::InlineBox): Renamed m_toAdd to m_expansion.
1621 (WebCore::InlineBox::expansion): Renamed toAdd() to this.
1622 * rendering/InlineTextBox.cpp:
1623 (WebCore::InlineTextBox::selectionRect): Pass a TrailingExpansionBehavior to the TextRun constructor.
1624 (WebCore::InlineTextBox::paint): Ditto.
1625 (WebCore::InlineTextBox::paintSelection): Ditto.
1626 (WebCore::InlineTextBox::paintCompositionBackground): Ditto.
1627 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto.
1628 (WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
1629 (WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto.
1630 (WebCore::InlineTextBox::offsetForPosition): Ditto.
1631 (WebCore::InlineTextBox::positionForOffset): Ditto.
1632 * rendering/InlineTextBox.h:
1633 (WebCore::InlineTextBox::setExpansion): Renamed setSpaceAdd() to this.
1634 (WebCore::InlineTextBox::trailingExpansionBehavior): Added. Trailing expansion is allowed if this
1635 is not the last leaf box on the line.
1636 * rendering/RenderBlockLineLayout.cpp:
1637 (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Keep expansion opportunity counts
1638 in a vector instead of computing them twice. Discard the trailing expansion opportunity in the
1640 * rendering/RenderFileUploadControl.cpp:
1641 (WebCore::RenderFileUploadControl::paintObject): Pass a TrailingExpansionBehavior to the TextRun constructor.
1642 (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): Ditto.
1643 * rendering/RenderListBox.cpp:
1644 (WebCore::RenderListBox::updateFromElement): Ditto.
1645 (WebCore::RenderListBox::paintItemForeground): Ditto. Also corrected the type of the second parameter.
1646 * rendering/RenderTextControl.cpp:
1647 (WebCore::RenderTextControl::getAvgCharWidth): Ditto.
1648 (WebCore::RenderTextControl::paintPlaceholder): Ditto.
1649 * rendering/svg/SVGInlineTextBox.cpp:
1650 (WebCore::SVGInlineTextBox::constructTextRun): Ditto.
1652 2011-01-26 Andy Estes <aestes@apple.com>
1654 Rubber-stamped by Darin Adler.
1656 Inline HTMLObjectElement::hasValidClassId().
1658 * html/HTMLObjectElement.cpp:
1659 (WebCore::HTMLObjectElement::hasValidClassId):
1661 2011-01-26 Evan Martin <evan@chromium.org>
1663 Reviewed by Tony Chang.
1665 [chromium] crash on getBoundingClientRect in complex text
1666 https://bugs.webkit.org/show_bug.cgi?id=53199
1668 Use the correct array bound; we want the number of characters processed by
1669 the shaper, not the longest continuous script run length.
1671 Test: platform/chromium-linux/fast/text/international/complex-text-rectangle.html
1673 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
1674 (WebCore::ComplexTextController::nextScriptRun):
1675 * platform/graphics/chromium/ComplexTextControllerLinux.h:
1676 (WebCore::ComplexTextController::numCodePoints):
1678 2011-01-26 Emil A Eklund <eae@chromium.org>
1680 Reviewed by Alexey Proskuryakov.
1682 Remove cached document reference from CSSStyleSheet and XSLStyleSheet.
1683 https://bugs.webkit.org/show_bug.cgi?id=52084
1685 Test: fast/dom/css-delete-doc.html
1687 * css/CSSMediaRule.cpp:
1688 (WebCore::CSSMediaRule::insertRule):
1689 (WebCore::CSSMediaRule::deleteRule):
1690 * css/CSSStyleSheet.cpp:
1691 (WebCore::CSSStyleSheet::CSSStyleSheet):
1692 (WebCore::CSSStyleSheet::document):
1693 * css/CSSStyleSheet.h:
1694 * xml/XSLStyleSheet.h:
1695 (WebCore::XSLStyleSheet::parentStyleSheet):
1696 * xml/XSLStyleSheetLibxslt.cpp:
1697 (WebCore::XSLStyleSheet::XSLStyleSheet):
1698 (WebCore::XSLStyleSheet::cachedResourceLoader):
1699 (WebCore::XSLStyleSheet::setParentStyleSheet):
1700 (WebCore::XSLStyleSheet::ownerDocument):
1701 * xml/XSLStyleSheetQt.cpp:
1702 (WebCore::XSLStyleSheet::XSLStyleSheet):
1703 (WebCore::XSLStyleSheet::cachedResourceLoader):
1704 (WebCore::XSLStyleSheet::ownerDocument):
1706 2011-01-25 Dimitri Glazkov <dglazkov@chromium.org>
1708 Reviewed by Kent Tamura.
1710 Reduce ref-count churn in shadowPseudoId.
1711 https://bugs.webkit.org/show_bug.cgi?id=53136
1713 Refactoring, so no new tests.
1716 (WebCore::Element::shadowPseudoId): Changed signature to use const AtomicString&
1717 * html/ValidationMessage.cpp:
1718 (WebCore::ElementWithPseudoId::shadowPseudoId): Ditto.
1719 * html/shadow/SliderThumbElement.cpp:
1720 (WebCore::SliderThumbElement::shadowPseudoId): Ditto, plus moved from the header file.
1721 * html/shadow/SliderThumbElement.h: Ditto.
1722 * rendering/MediaControlElements.cpp:
1723 (WebCore::MediaControlMuteButtonElement::shadowPseudoId): Ditto.
1724 (WebCore::MediaControlVolumeSliderMuteButtonElement::shadowPseudoId): Ditto.
1725 (WebCore::MediaControlPlayButtonElement::shadowPseudoId): Ditto.
1726 (WebCore::MediaControlSeekForwardButtonElement::shadowPseudoId): Ditto.
1727 (WebCore::MediaControlSeekBackButtonElement::shadowPseudoId): Ditto.
1728 (WebCore::MediaControlRewindButtonElement::shadowPseudoId): Ditto.
1729 (WebCore::MediaControlReturnToRealtimeButtonElement::shadowPseudoId): Ditto.
1730 (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId): Ditto.
1731 (WebCore::MediaControlTimelineElement::shadowPseudoId): Ditto.
1732 (WebCore::MediaControlVolumeSliderElement::shadowPseudoId): Ditto.
1733 (WebCore::MediaControlFullscreenButtonElement::shadowPseudoId): Ditto.
1734 * rendering/MediaControlElements.h: Ditto.
1736 2011-01-26 Dave Hyatt <hyatt@apple.com>
1738 Reviewed by Dan Bernstein.
1740 https://bugs.webkit.org/show_bug.cgi?id=46421, make multi-column layout work with vertical text.
1742 Added new tests in fast/multicol/vertical-lr and fast/multicol/vertical-rl.
1745 Update p, blockquote and h1-h6 to respect directionality so that column layout tests that use those
1746 elements work properly.
1748 * rendering/InlineFlowBox.cpp:
1749 (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
1750 Fix a flipping bug with the computation of lineTopIncludingMargins where it could be incorrectly shrunk
1751 in some cases (causing lines to all stack on top of one another).
1753 * rendering/InlineTextBox.h:
1754 (WebCore::InlineTextBox::calculateBoundaries):
1755 Fix calculateBoundaries to be physical rather than logical.
1757 * rendering/LayoutState.cpp:
1758 (WebCore::LayoutState::addForcedColumnBreak):
1759 * rendering/LayoutState.h:
1760 Rename childY to childLogicalOffset.
1762 * rendering/RenderBlock.cpp:
1763 (WebCore::RenderBlock::layoutBlock):
1764 (WebCore::RenderBlock::addOverflowFromChildren):
1765 (WebCore::RenderBlock::addOverflowFromFloats):
1766 (WebCore::RenderBlock::collapseMargins):
1767 (WebCore::RenderBlock::estimateLogicalTopPosition):
1768 (WebCore::RenderBlock::layoutBlockChild):
1769 (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
1770 (WebCore::RenderBlock::paintColumnRules):
1771 (WebCore::RenderBlock::paintColumnContents):
1772 (WebCore::RenderBlock::paintFloats):
1773 (WebCore::RenderBlock::selectionGaps):
1774 (WebCore::RenderBlock::removeFloatingObjectsBelow):
1775 (WebCore::RenderBlock::addOverhangingFloats):
1776 (WebCore::RenderBlock::hitTestFloats):
1777 (WebCore::RenderBlock::hitTestColumns):
1778 (WebCore::RenderBlock::calcColumnWidth):
1779 (WebCore::RenderBlock::desiredColumnWidth):
1780 (WebCore::RenderBlock::columnRectAt):
1781 (WebCore::RenderBlock::layoutColumns):
1782 (WebCore::RenderBlock::adjustPointToColumnContents):
1783 (WebCore::RenderBlock::adjustRectForColumns):
1784 (WebCore::RenderBlock::flipForWritingModeIncludingColumns):
1785 (WebCore::RenderBlock::adjustForColumns):
1786 (WebCore::RenderBlock::adjustForBorderFit):
1787 (WebCore::RenderBlock::nextPageLogicalTop):
1788 (WebCore::RenderBlock::applyBeforeBreak):
1789 (WebCore::RenderBlock::applyAfterBreak):
1790 (WebCore::RenderBlock::adjustForUnsplittableChild):
1791 (WebCore::RenderBlock::adjustLinePositionForPagination):
1792 * rendering/RenderBlock.h:
1793 (WebCore::RenderBlock::logicalRightOffsetForContent):
1794 (WebCore::RenderBlock::logicalLeftOffsetForContent):
1795 (WebCore::RenderBlock::leftForFloatIncludingMargin):
1796 (WebCore::RenderBlock::topForFloatIncludingMargin):
1797 * rendering/RenderBlockLineLayout.cpp:
1798 (WebCore::RenderBlock::layoutInlineChildren):
1799 (WebCore::RenderBlock::determineStartPosition):
1800 Reworking of all the RenderBlock column functions to support flipping and vertical modes.
1802 * rendering/RenderBox.cpp:
1803 (WebCore::RenderBox::offsetFromContainer):
1804 (WebCore::RenderBox::flipForWritingModeIncludingColumns):
1805 Patch offsetFromContainer to be aware of flipped block writing modes when dealing with column layouts.
1807 * rendering/RenderBox.h:
1808 (WebCore::RenderBox::clientLogicalBottom):
1809 Fix a bug in clientLogicalBottom where it didn't add in the right border/padding.
1811 * rendering/RenderFlexibleBox.cpp:
1812 (WebCore::RenderFlexibleBox::layoutBlock):
1813 Better terminology for pagination.
1815 * rendering/RenderInline.cpp:
1816 (WebCore::RenderInline::offsetFromContainer):
1817 (WebCore::RenderInline::mapLocalToContainer):
1818 * rendering/RenderLayer.cpp:
1819 (WebCore::RenderLayer::paintChildLayerIntoColumns):
1820 (WebCore::RenderLayer::hitTestChildLayerColumns):
1821 (WebCore::RenderLayer::localBoundingBox):
1822 (WebCore::RenderLayer::boundingBox):
1823 Patch painting in RenderLayers to be vertical-text-aware.
1825 * rendering/RenderObject.cpp:
1826 (WebCore::RenderObject::mapLocalToContainer):
1827 Add code to be flipped block-aware with columns.
1829 * rendering/RenderTable.cpp:
1830 (WebCore::RenderTable::layout):
1831 * rendering/RenderTableRow.cpp:
1832 (WebCore::RenderTableRow::layout):
1833 * rendering/RenderTableSection.cpp:
1834 (WebCore::RenderTableSection::layoutRows):
1835 Fix pagination to use better terminology.
1837 * rendering/RenderText.cpp:
1838 (WebCore::RenderText::absoluteQuads):
1839 (WebCore::RenderText::absoluteQuadsForRange):
1840 Fix a bug where vertical text wasn't taken into account.
1842 2011-01-26 Dimitri Glazkov <dglazkov@chromium.org>
1844 Unreviewed, rolling out r76719.
1845 http://trac.webkit.org/changeset/76719
1846 https://bugs.webkit.org/show_bug.cgi?id=53122
1848 Broke a bunch of media tests in Chromium/Qt/GTK.
1850 2011-01-26 Tony Chang <tony@chromium.org>
1852 Reviewed by Ryosuke Niwa.
1854 [gtk] strip NUL characters when copying text/html on GTK+
1855 https://bugs.webkit.org/show_bug.cgi?id=52508
1857 Putting NUL characters in the text/html clipboard doesn't work in
1858 WebKit GTK+ (the pasted value is truncated at the NUL). Since we're
1859 already stripping this character for plain text (for Windows), strip
1860 it in text/html too.
1862 * editing/MarkupAccumulator.h: mark function as virtual
1863 * editing/markup.cpp:
1864 (WebCore::StyledMarkupAccumulator::appendString):
1865 (WebCore::StyledMarkupAccumulator::takeResults): strip nulls
1867 2011-01-26 Mario Sanchez Prada <msanchez@igalia.com>
1869 Reviewed by Martin Robinson.
1871 [GTK] Reliable crash with getTextAtOffset()
1872 https://bugs.webkit.org/show_bug.cgi?id=53131
1874 Properly calculate length in bytes for a UTF8 substring.
1876 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1877 (utf8Substr): Use character instead of bytes as units to
1878 calculate the length in bytes for the UTF8 string.
1880 2011-01-25 Dimitri Glazkov <dglazkov@chromium.org>
1882 Reviewed by Kent Tamura.
1884 Change HTMLInputElement-derived parts of media element shadow DOM to use shadowPseudoId.
1885 https://bugs.webkit.org/show_bug.cgi?id=53122
1887 This is the first step in converting HTMLMediaElement to the new shadow DOM.
1889 Should not regress any existing tests. No observable change in behavior.
1891 * css/CSSSelector.cpp:
1892 (WebCore::CSSSelector::pseudoId): Removed now-unnecessary hard-coded pseudo-element selectors.
1893 (WebCore::nameToPseudoTypeMap): Ditto.
1894 (WebCore::CSSSelector::extractPseudoType): Ditto.
1895 * css/CSSSelector.h: Ditto.
1896 * css/mediaControls.css: Added proper initial values, now that elements use the proper selector pipeline.
1897 * rendering/MediaControlElements.cpp:
1898 (WebCore::MediaControlInputElement::MediaControlInputElement): Removed the switch statement,
1899 which is now replaced with virtual shadowPseudoId on each corresponding class.
1900 (WebCore::MediaControlInputElement::styleForElement): Changed to use element pipeline.
1901 (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Changed to set
1902 display type in constructor.
1903 (WebCore::MediaControlMuteButtonElement::create): Changed to not take PseudoId as
1904 constructor argument.
1905 (WebCore::MediaControlMuteButtonElement::shadowPseudoId): Added.
1906 (WebCore::MediaControlVolumeSliderMuteButtonElement::MediaControlVolumeSliderMuteButtonElement): Added
1907 to disambiguate from the MediaControlMuteButtonElement.
1908 (WebCore::MediaControlVolumeSliderMuteButtonElement::create): Added.
1909 (WebCore::MediaControlVolumeSliderMuteButtonElement::shadowPseudoId): Added.
1910 (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): Changed to not take PseudoId as
1911 constructor argument.
1912 (WebCore::MediaControlPlayButtonElement::shadowPseudoId): Added.
1913 (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Changed to not take PseudoId as
1914 constructor argument.
1915 (WebCore::MediaControlSeekForwardButtonElement::MediaControlSeekForwardButtonElement): Added.
1916 (WebCore::MediaControlSeekForwardButtonElement::create): Added.
1917 (WebCore::MediaControlSeekForwardButtonElement::shadowPseudoId): Added.
1918 (WebCore::MediaControlSeekBackButtonElement::MediaControlSeekBackButtonElement): Added.
1919 (WebCore::MediaControlSeekBackButtonElement::create): Added.
1920 (WebCore::MediaControlSeekBackButtonElement::shadowPseudoId): Added.
1921 (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Added.
1922 (WebCore::MediaControlRewindButtonElement::shadowPseudoId): Added.
1923 (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Changed to not take PseudoId as
1924 constructor argument.
1925 (WebCore::MediaControlReturnToRealtimeButtonElement::shadowPseudoId): Added.
1926 (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Changed to not take PseudoId as
1927 constructor argument.
1928 (WebCore::MediaControlToggleClosedCaptionsButtonElement::shadowPseudoId): Added.
1929 (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Changed to not take PseudoId as
1930 constructor argument.
1931 (WebCore::MediaControlTimelineElement::shadowPseudoId): Added.
1932 (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): Changed to not take PseudoId as
1933 constructor argument.
1934 (WebCore::MediaControlVolumeSliderElement::shadowPseudoId): Added.
1935 (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Changed to not take PseudoId as
1936 constructor argument.
1937 (WebCore::MediaControlFullscreenButtonElement::shadowPseudoId): Added.
1938 * rendering/MediaControlElements.h:
1939 (WebCore::MediaControlSeekForwardButtonElement::isForwardButton): Added.
1940 (WebCore::MediaControlSeekBackButtonElement::isForwardButton): Added.
1941 * rendering/RenderMedia.cpp:
1942 (WebCore::RenderMedia::createMuteButton): Changed to use new constructor.
1943 (WebCore::RenderMedia::createSeekBackButton): Ditto.
1944 (WebCore::RenderMedia::createSeekForwardButton): Ditto.
1945 (WebCore::RenderMedia::createVolumeSliderMuteButton): Ditto.
1946 * rendering/style/RenderStyleConstants.h: Removed constants that are no longer used.
1948 2011-01-26 Kenneth Russell <kbr@google.com>
1950 Reviewed by James Robinson.
1952 Fix multisampling support in DrawingBuffer
1953 https://bugs.webkit.org/show_bug.cgi?id=53154
1955 In DrawingBuffer's multisampling code path, fixed enum usage and a
1956 bug where it would incorrectly redefine the depth and stencil
1957 buffers. Hooked up multisampling code path in Chromium port.
1959 Tested manually with some accelerated 2D canvas content.
1960 Multisampling isn't being switched on for the accelerated 2D
1961 canvas at the current time because it will increase fill rate
1962 requirements and cause a large number of rebaselines.
1964 * platform/graphics/Extensions3D.h:
1965 * platform/graphics/chromium/DrawingBufferChromium.cpp:
1966 (WebCore::DrawingBuffer::publishToPlatformLayer):
1967 * platform/graphics/chromium/Extensions3DChromium.h:
1968 * platform/graphics/gpu/DrawingBuffer.cpp:
1969 (WebCore::DrawingBuffer::create):
1970 (WebCore::DrawingBuffer::reset):
1971 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
1972 (WebCore::Extensions3DOpenGL::supports):
1974 2011-01-26 Tony Chang <tony@chromium.org>
1978 [chromium] revert r68310 because of race conditions detected by tsans
1979 https://bugs.webkit.org/show_bug.cgi?id=53185
1981 Causes stability problems for Chromium, http://crbug.com/70589
1983 * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
1984 (WebCore::SQLiteFileSystem::registerSQLiteVFS):
1986 2011-01-26 Justin Schuh <jschuh@chromium.org>
1988 Reviewed by Adam Barth.
1990 Make fireEventsAndUpdateStyle use stack local vectors.
1991 https://bugs.webkit.org/show_bug.cgi?id=46760
1993 Test: animations/animation-add-events-in-handler.html
1995 * page/animation/AnimationController.cpp:
1996 (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle):
1998 2011-01-26 Nate Chapin <japhet@chromium.org>
2000 Reviewed by Adam Barth.
2002 Remove m_URL from FrameLoader and depend on Document::url()
2003 instead. FrameLoader::url() will be removed in a followup patch.
2004 https://bugs.webkit.org/show_bug.cgi?id=41165
2006 Refactor only, no new tests.
2010 (WebCore::Document::Document):
2011 (WebCore::Document::updateURLForPushOrReplaceState):
2012 * loader/DocumentWriter.cpp:
2013 (WebCore::DocumentWriter::begin):
2014 * loader/FrameLoader.cpp:
2015 (WebCore::FrameLoader::iconURL):
2016 (WebCore::FrameLoader::didOpenURL):
2017 (WebCore::FrameLoader::didExplicitOpen):
2018 (WebCore::FrameLoader::receivedFirstData):
2019 (WebCore::FrameLoader::url):
2020 (WebCore::FrameLoader::setOutgoingReferrer):
2021 (WebCore::FrameLoader::startIconLoader):
2022 (WebCore::FrameLoader::commitIconURLToIconDatabase):
2023 (WebCore::FrameLoader::finishedParsing):
2024 (WebCore::FrameLoader::checkIfDisplayInsecureContent):
2025 (WebCore::FrameLoader::checkIfRunInsecureContent):
2026 (WebCore::FrameLoader::updateFirstPartyForCookies):
2027 (WebCore::FrameLoader::loadInSameDocument):
2028 (WebCore::FrameLoader::commitProvisionalLoad):
2029 (WebCore::FrameLoader::open):
2030 (WebCore::FrameLoader::shouldScrollToAnchor):
2031 * loader/FrameLoader.h: Rename setURL() to setOutgoingReferrer().
2033 2011-01-25 Brian Weinstein <bweinstein@apple.com>
2035 Reviewed by Antti Koivisto.
2037 Crashes loading pages when cancelling subresource loads through WebKit
2038 https://bugs.webkit.org/show_bug.cgi?id=53123
2039 <rdar://problem/8914361>
2041 Fix a crash that happened when cancelling subresource loads through WebKit.
2043 When a load is cancelled synchronously (via the WebKit client), CachedResourceLoader::requestResource
2044 can be called recursively on the same function, either leading to infinite recursion, or deleting
2045 an object when it is not done being used.
2047 The fix for this was to call checkForPendingPreloads and servePendingRequests asynchronously when
2048 CachedResourceLoader::loadDone was called synchronously (due to the load being cancelled synchronously).
2050 Test: fast/loader/willSendRequest-null-for-preload.html
2052 * loader/DocumentLoader.cpp:
2053 (WebCore::DocumentLoader::setRequest): Only dispatch didReceiveServerRedirectForProvisionalLoadForFrame
2054 if our new URL is non-null.
2055 * loader/cache/CachedResourceLoader.cpp:
2056 (WebCore::CachedResourceLoader::CachedResourceLoader): Initialize our timer.
2057 (WebCore::CachedResourceLoader::loadDone): If the CachedResource we were passed in was 0, that means this
2058 function was called synchronously
2059 from CachedResourceRequest::load, and we don't want to call into checkForPendingPreloads synchronously,
2060 so put it on a 0-delay timer to make the calls to checkForPendingPreloads and servePendingRequests asynchronous.
2061 (WebCore::CachedResourceLoader::loadDonePendingActionTimerFired): Call checkForPendingPreloads and servePendingRequests.
2062 (WebCore::CachedResourceLoader::checkForPendingPreloads): m_pendingPreloads is now a Deque instead of a Vector,
2063 so use Deque methods.
2064 * loader/cache/CachedResourceLoader.h: Add the timer, the timer callback function, and make m_pendingPreloads a Deque.
2066 2011-01-25 Pavel Podivilov <podivilov@chromium.org>
2068 Reviewed by Pavel Feldman.
2070 Web Inspector: evaluate in console may not work when window.console is substituted or deleted.
2071 https://bugs.webkit.org/show_bug.cgi?id=53072
2073 Test: inspector/console-substituted.html
2075 * inspector/InjectedScriptSource.js:
2078 2011-01-26 Carlos Garcia Campos <cgarcia@igalia.com>
2080 Reviewed by Martin Robinson.
2082 [cairo] Use CAIRO_OPERATOR_DARKEN when available
2083 https://bugs.webkit.org/show_bug.cgi?id=53084
2085 Use CAIRO_OPERATOR_DARKEN for CompositePlusDarker instead of
2086 CAIRO_OPERATOR_SATURATE when building with cairo version >= 1.10.
2088 * platform/graphics/cairo/CairoUtilities.cpp:
2089 (WebCore::toCairoOperator):
2091 2011-01-26 Pavel Feldman <pfeldman@chromium.org>
2093 Reviewed by Yury Semikhatsky.
2095 Web Inspector: visualize \n in strings as unicode cr
2096 symbol in stack variables sidebar.
2097 https://bugs.webkit.org/show_bug.cgi?id=53162
2099 * inspector/front-end/ObjectPropertiesSection.js:
2100 (WebInspector.ObjectPropertyTreeElement.prototype.update):
2102 2011-01-26 Andrey Kosyakov <caseq@chromium.org>
2104 Reviewed by Pavel Feldman.
2106 Web Inspector: size is wrong for cached resources in Network panel
2107 - Set the size for 304/not modified resources from cached resource.
2108 - Add response headers size to resource transfer size.
2109 https://bugs.webkit.org/show_bug.cgi?id=52886
2111 * inspector/InspectorResourceAgent.cpp:
2112 (WebCore::InspectorResourceAgent::didReceiveResponse):
2113 * inspector/front-end/Resource.js:
2114 (WebInspector.Resource):
2115 (WebInspector.Resource.prototype.get transferSize):
2116 (WebInspector.Resource.prototype.set responseHeaders):
2117 (WebInspector.Resource.prototype._headersSize):
2118 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
2120 2011-01-26 Carol Szabo <carol.szabo@nokia.com>
2122 Reviewed by Simon Hausmann.
2124 Fixed TiledBacking store to take into account new dirty regions caused by
2127 Flawed rendering design for QtWebKit resulting in artifacts being displayed
2128 https://bugs.webkit.org/show_bug.cgi?id=49184
2130 There are no new tests as this patch aims at fixing flicker that
2131 happen randomly, mostly on slow hardware, thus are hard to reproduce
2132 consistently in an automated test.
2134 This patch does not fully address the said bug but it is a step in the
2135 right direction. A full solution to the bug, as currently perceived,
2136 requires either a Qt GUI API change, a performance hit for QtWebKit,
2137 or a hack, until a full solution is provided this patch is progress.
2139 * platform/graphics/TiledBackingStore.cpp:
2140 (WebCore::TiledBackingStore::updateTileBuffers):
2141 Changed to take into account newly dirtied areas created during
2142 tile update initiated layouts during the same update.
2144 2011-01-26 Patrick Gansterer <paroga@webkit.org>
2146 Reviewed by Andreas Kling.
2148 [SKIA] Remove "current path" of GraphicsContext
2149 https://bugs.webkit.org/show_bug.cgi?id=53124
2151 * platform/graphics/GraphicsContext.h:
2152 * platform/graphics/skia/GraphicsContextSkia.cpp:
2153 (WebCore::GraphicsContext::clipPath):
2154 (WebCore::GraphicsContext::fillPath):
2155 (WebCore::GraphicsContext::strokePath):
2156 * platform/graphics/skia/PathSkia.cpp:
2157 (WebCore::Path::strokeBoundingRect):
2158 * platform/graphics/skia/PlatformContextSkia.cpp:
2159 * platform/graphics/skia/PlatformContextSkia.h:
2161 2011-01-26 Zalan Bujtas <zbujtas@gmail.com>
2163 Reviewed by Andreas Kling.
2165 [Qt] Path::normalAngleAtLength() returns incorrect value on ACID3.
2167 QPainterPath returns angle values with the origo being at the top left corner,
2168 we need to account for this in normalAngleAtLength().
2169 This Regressed with r66979.
2171 No new tests as this is already covered by ACID3.
2173 * platform/graphics/qt/PathQt.cpp:
2174 (WebCore::Path::normalAngleAtLength):
2176 2011-01-26 Pavel Feldman <pfeldman@chromium.org>
2178 Reviewed by Yury Semikhatsky.
2180 Web Inspector: live edit does not update source snippet.
2181 https://bugs.webkit.org/show_bug.cgi?id=53097
2183 * inspector/front-end/ScriptsPanel.js:
2184 (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
2186 2011-01-26 Pavel Feldman <pfeldman@chromium.org>
2188 Reviewed by Yury Semikhatsky.
2190 Web Inspector: Incorrect on-hover evaluation of a variable named 'profile'.
2191 https://bugs.webkit.org/show_bug.cgi?id=53018
2193 * inspector/InjectedScript.cpp:
2194 (WebCore::InjectedScript::evaluate):
2195 (WebCore::InjectedScript::evaluateOnCallFrame):
2196 (WebCore::InjectedScript::getCompletions):
2197 (WebCore::InjectedScript::getCompletionsOnCallFrame):
2198 * inspector/InjectedScript.h:
2199 * inspector/InjectedScriptSource.js:
2201 * inspector/Inspector.idl:
2202 * inspector/InspectorDebuggerAgent.cpp:
2203 (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2204 (WebCore::InspectorDebuggerAgent::getCompletionsOnCallFrame):
2205 * inspector/InspectorDebuggerAgent.h:
2206 * inspector/InspectorRuntimeAgent.cpp:
2207 (WebCore::InspectorRuntimeAgent::evaluate):
2208 (WebCore::InspectorRuntimeAgent::getCompletions):
2209 * inspector/InspectorRuntimeAgent.h:
2210 * inspector/front-end/ConsoleView.js:
2211 (WebInspector.ConsoleView.prototype.completions):
2212 (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
2213 (WebInspector.ConsoleView.prototype._enterKeyPressed):
2214 * inspector/front-end/ScriptsPanel.js:
2215 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
2216 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2217 * inspector/front-end/SourceFrame.js:
2218 (WebInspector.SourceFrame.prototype._showPopup):
2219 * inspector/front-end/WatchExpressionsSidebarPane.js:
2220 (WebInspector.WatchExpressionsSection.prototype.update):
2222 2011-01-26 Hironori Bono <hbono@chromium.org>
2224 Reviewed by Kent Tamura.
2226 A speculative fix for Bug 52422 - [chromium] More crash in
2227 FontFallbackList::determinePitch(const Font* font)
2228 https://bugs.webkit.org/show_bug.cgi?id=52422
2230 My previous change may not work on non-US Windows whose system fonts
2231 have localized aliases matching to the system locale because of a
2232 font-name mismatch in createFontIndirectAndGetWinName(). This change
2233 tries all the fonts installed in a PC and returns the first font that we
2234 can create without errors.
2236 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
2237 (WebCore::GetLastResortFallbackFontProcData::GetLastResortFallbackFontProcData):
2238 Added a struct used for getLastResortFallbackFontProc().
2239 (WebCore::getLastResortFallbackFontProc): Added a callback for EnumFontFamilies().
2240 (WebCore::FontCache::getLastResortFallbackFont): Use EnumFontFamilies() to find a last-resort font.
2242 2011-01-26 James Robinson <jamesr@chromium.org>
2244 Reviewed by Nate Chapin.
2246 Add a DOMTimeStamp parameter to the requestAnimationFrame callback
2247 https://bugs.webkit.org/show_bug.cgi?id=53142
2249 This adds a DOMTimeStamp parameter to the requestAnimationFrame callback to more
2250 closely match mozilla's proposal. This is useful if the page has multiple imperative animations
2251 and wants to ensure that they all remain synchronized. If each callback used Date.now() to
2252 update its animation state, they would potentially be out of sync with each other. If they use
2253 the timestamp then all callbacks for the same "frame" will update to the same state.
2255 Test: fast/animation/request-animation-frame-timestamps.html
2257 * bindings/scripts/CodeGeneratorV8.pm:
2258 * bindings/scripts/test/V8/V8TestCallback.cpp:
2259 (WebCore::V8TestCallback::callbackWithClass2Param):
2261 (WebCore::Document::serviceScriptedAnimations):
2263 * dom/RequestAnimationFrameCallback.h:
2264 * dom/RequestAnimationFrameCallback.idl:
2265 * page/FrameView.cpp:
2266 (WebCore::FrameView::serviceScriptedAnimations):
2269 2011-01-25 Yuzo Fujishima <yuzo@google.com>
2271 Unreviewed attempt to fix compilation error for Chromium Clang.
2273 * platform/graphics/mac/ComplexTextController.cpp:
2274 (WebCore::ComplexTextController::advance):
2276 2011-01-25 Ned Holbrook <nholbrook@apple.com>
2278 Reviewed by Dan Bernstein.
2280 ComplexTextController incorrectly conflates string length and range of indexes
2281 https://bugs.webkit.org/show_bug.cgi?id=52760
2283 Test: fast/text/offsetForPosition-complex-fallback.html
2285 * platform/graphics/mac/ComplexTextController.cpp:
2286 (WebCore::ComplexTextController::offsetForPosition):
2287 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
2288 (WebCore::ComplexTextController::ComplexTextRun::setIsNonMonotonic):
2289 (WebCore::ComplexTextController::advance):
2290 * platform/graphics/mac/ComplexTextController.h:
2291 (WebCore::ComplexTextController::ComplexTextRun::create):
2292 (WebCore::ComplexTextController::ComplexTextRun::indexEnd):
2293 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2294 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
2295 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2296 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
2297 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
2299 2011-01-25 Sam Weinig <sam@webkit.org>
2301 Reviewed by David Hyatt.
2303 Scrollbars don't work correctly for top-to-bottom text in an overflow: scroll area
2304 https://bugs.webkit.org/show_bug.cgi?id=53048
2306 Test: fast/overflow/overflow-rtl-vertical-origin.html
2308 * rendering/RenderLayer.cpp:
2309 (WebCore::RenderLayer::scrollPosition):
2310 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2311 Take the scroll origin into account when calculating scrollbars in more places.
2313 2011-01-25 Steve Falkenburg <sfalken@apple.com>
2315 Windows production build fix.
2316 Use correct configuration-specific path in makefile.
2318 * WebCore.vcproj/WebCore.make:
2320 2011-01-25 Kent Tamura <tkent@chromium.org>
2322 Reviewed by Dimitri Glazkov.
2324 Radio button group state is not restored correctly
2325 https://bugs.webkit.org/show_bug.cgi?id=50442
2327 Fixes a bug that radio button states are not restored correctly in
2328 a case that non-first radio button in a group is checked.
2330 If "checked" attribute is present, the radio button is checked and
2331 other radio buttons in the group are unchecked. This behavior
2332 disturbs form state restoring. This patch changes this behavior so
2333 that the "checked" attribute handling is delayed after form state
2336 Test: fast/forms/state-restore-radio-group.html
2338 * html/HTMLFormControlElement.h:
2339 Make finishParsingChildren() protected so that HTMLInpuElement can call it.
2340 * html/HTMLInputElement.cpp:
2341 (WebCore::HTMLInputElement::HTMLInputElement):
2342 - Add createdByParser parameter.
2343 - Initialize m_stateRestored and m_parsingInProgress.
2344 (WebCore::HTMLInputElement::create): Sync with the constructor.
2345 (WebCore::HTMLInputElement::restoreFormControlState):
2346 Set m_stateRestored in order to refer it in finishParsingChildren().
2347 (WebCore::HTMLInputElement::parseMappedAttribute):
2348 Don't call setChecked() during parsing. Move setNeedsValidityCheck()
2350 (WebCore::HTMLInputElement::finishParsingChildren):
2351 Call setChecked() if form state is not restored.
2352 (WebCore::HTMLInputElement::setChecked):
2353 Move setNeedsValidityCheck() from parseMappedAttribute() because
2354 finishParsingChildren() also needs to call setNeedsValidityCheck().
2355 * html/HTMLInputElement.h:
2356 - Remove the default value of HTMLFormElement* of the HTMLInputElement
2357 constructor, and add createdByParser parameter.
2358 - Introduce m_parsingInProgress and m_stateRestored.
2359 * html/HTMLIsIndexElement.cpp:
2360 (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
2361 Sync with the HTMLInputElement constructor change.
2362 * html/HTMLTagNames.in: Add constructorNeedsCreatedByParser flag.
2363 * rendering/MediaControlElements.cpp:
2364 (WebCore::MediaControlInputElement::MediaControlInputElement):
2365 Sync with the HTMLInputElement constructor change.
2366 * rendering/ShadowElement.cpp:
2367 (WebCore::ShadowInputElement::ShadowInputElement): ditto.
2368 * rendering/ShadowElement.h:
2369 (WebCore::ShadowElement::ShadowElement): ditto.
2371 2011-01-25 Kent Tamura <tkent@chromium.org>
2373 Reviewed by Dimitri Glazkov.
2375 HTMLFormElement::checkValidity() returns incorrect result if 'invalid' events are canceled.
2376 https://bugs.webkit.org/show_bug.cgi?id=52565
2378 * html/HTMLFormElement.cpp:
2379 (WebCore::HTMLFormElement::validateInteractively):
2380 Check checkInvalidControlsAndCollectUnhandled() result instead of
2381 checking emptiness of unhandled invalid controls list.
2382 (WebCore::HTMLFormElement::checkValidity): ditto.
2383 (WebCore::HTMLFormElement::checkInvalidControlsAndCollectUnhandled):
2384 Renamed from collectUnhandledInvalidControls().
2385 Returns true if there is any invalid control regardless of event canceling.
2386 * html/HTMLFormElement.h: Rename collectUnhandledInvalidControls() to
2387 checkInvalidControlsAndCollectUnhandled().
2389 2011-01-25 Kent Tamura <tkent@chromium.org>
2391 Reviewed by Dimitri Glazkov.
2393 Range and number inputs should reject increment and decrement by
2394 keyboard or mouse wheel if they are disabled or read-only
2395 https://bugs.webkit.org/show_bug.cgi?id=53151
2397 * html/RangeInputType.cpp:
2398 (WebCore::RangeInputType::handleKeydownEvent): Check disabled() and readOnly().
2399 * html/TextFieldInputType.cpp:
2400 (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
2401 (WebCore::TextFieldInputType::handleWheelEventForSpinButton): ditto.
2403 2011-01-25 Kent Tamura <tkent@chromium.org>
2405 Reviewed by Dimitri Glazkov.
2407 API to support localized numbers for <input type=number>
2408 https://bugs.webkit.org/show_bug.cgi?id=45730
2410 Introduce platform/text/LocalizedNumber.h, and
2411 LocalizedNumberNone.cpp, which is an empty implementation of the
2412 functions in LocalizedNumber.h. We use LocalizedNumberNone.cpp in
2413 all platforms for now.
2415 A string in a type=number field is parsed as a localized number
2416 first. If the parsing fails, it is parsed as the HTML5 number.
2418 We introduce HTMLInputElement::visibleValue(). It represents a value
2419 which should be drawn by a renderer. HTMLInputElement::value() always
2420 returns a number formatted for HTML5, and visibleValue() may return a
2423 No new tests because this doesn't change any behavior.
2425 * Android.mk: Add LocalizedNumber.h and/or LocalizedNumberNone.cpp.
2426 * CMakeLists.txt: ditto.
2427 * GNUmakefile.am: ditto.
2428 * WebCore.gypi: ditto.
2429 * WebCore.pro: ditto.
2430 * WebCore.vcproj/WebCore.vcproj: ditto.
2431 * WebCore.xcodeproj/project.pbxproj: ditto.
2432 * dom/InputElement.h: Add visibleValue().
2433 * html/HTMLInputElement.cpp:
2434 (WebCore::HTMLInputElement::visibleValue): Added. Just call InputType::visibleValue().
2435 * html/HTMLInputElement.h: Declare visibleValue().
2436 * html/InputType.cpp:
2437 (WebCore::InputType::visibleValue): Add the default implementation of
2438 visibleValue(), which returns HTMLInputElement::value().
2439 * html/InputType.h: Add declarations.
2440 * html/NumberInputType.cpp:
2441 (WebCore::isHTMLNumberCharacter): Renamed from isNumberCharacter().
2442 (WebCore::isNumberCharacter): Calls isLocalizedNumberCharacter() and isHTMLNumberCharacter().
2443 (WebCore::NumberInputType::visibleValue):
2444 Returns a localized number string produced by formatLocalizedNumber().
2445 (WebCore::NumberInputType::isAcceptableValue): Calls parseLocalizedNumber().
2446 (WebCore::NumberInputType::sanitizeValue): Calls parseLocalizedNumber().
2447 * html/NumberInputType.h: Add declarations.
2448 * platform/text/LocalizedNumber.h: Added.
2449 * platform/text/LocalizedNumberNone.cpp: Added.
2450 (WebCore::parseLocalizedNumber):
2451 (WebCore::formatLocalizedNumber):
2452 (WebCore::isLocalizedNumberCharacter):
2453 * rendering/RenderTextControlSingleLine.cpp:
2454 (WebCore::RenderTextControlSingleLine::updateFromElement):
2455 Calls InputElement::visibleValue() instead of value().
2456 * wml/WMLInputElement.h:
2457 (WebCore::WMLInputElement::visibleValue): Added. It just calls value().
2459 2011-01-25 Alexey Proskuryakov <ap@apple.com>
2461 Reviewed by Darin Adler.
2463 https://bugs.webkit.org/show_bug.cgi?id=53143
2466 * WebCore.xcodeproj/project.pbxproj:
2467 * platform/graphics/IntRectHash.h: Added.
2469 * platform/graphics/IntSizeHash.h: Don't do "using WebCore::IntSize"!
2471 2011-01-25 Ilya Sherman <isherman@chromium.org>
2473 Reviewed by Ryosuke Niwa.
2475 Remove trailing whitespace in HTMLInputElement.cpp
2476 https://bugs.webkit.org/show_bug.cgi?id=53152
2478 * html/HTMLInputElement.cpp:
2479 (WebCore::HTMLInputElement::updateCheckedRadioButtons):
2480 (WebCore::HTMLInputElement::applyStep):
2481 (WebCore::HTMLInputElement::updateFocusAppearance):
2482 (WebCore::HTMLInputElement::mapToEntry):
2483 (WebCore::HTMLInputElement::setAutofilled):
2484 (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
2485 (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
2487 2011-01-25 Mike Reed <reed@google.com>
2489 Reviewed by James Robinson.
2491 DrawingBufer::reset() today checks if the new size is the same as its
2492 m_size, and if so, returns immediately. This does not match the
2493 semantics of <canvas>, which wants to clear its contents anytime the
2495 https://bugs.webkit.org/show_bug.cgi?id=53149
2497 Test: Covered by existing <canvas> tests using gpu.
2499 * platform/graphics/chromium/DrawingBufferChromium.cpp:
2500 (WebCore::DrawingBuffer::DrawingBuffer):
2501 * platform/graphics/gpu/DrawingBuffer.cpp:
2502 (WebCore::DrawingBuffer::reset):
2504 2011-01-25 Cris Neckar <cdn@chromium.org>
2506 Reviewed by Adam Barth.
2508 Add a hashset of DOMURLs to ScriptExecutionContext to track back references.
2509 https://bugs.webkit.org/show_bug.cgi?id=53038
2511 Test: fast/dom/window-domurl-crash.html
2513 * dom/ScriptExecutionContext.cpp:
2514 (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
2515 (WebCore::ScriptExecutionContext::createdDomUrl):
2516 (WebCore::ScriptExecutionContext::destroyedDomUrl):
2517 * dom/ScriptExecutionContext.h:
2518 (WebCore::ScriptExecutionContext::domUrls):
2520 (WebCore::DOMURL::DOMURL):
2521 (WebCore::DOMURL::~DOMURL):
2522 (WebCore::DOMURL::contextDestroyed):
2524 (WebCore::DOMURL::scriptExecutionContext):
2526 2011-01-23 Antti Koivisto <antti@apple.com>
2528 Reviewed by Darin Adler.
2530 https://bugs.webkit.org/show_bug.cgi?id=52983
2531 Eliminate m_tagHistory pointer from CSSSelector
2533 Keep the component selectors in the array in CSSSelectorList instead
2534 of maintaining a linked list between them. This allows eliminating
2535 m_tagHistory pointer, shrinking CSSSelector by 25% (selection performance
2536 seems to improve some too due to better locality).
2538 * WebCore.xcodeproj/project.pbxproj:
2540 Make CSSSelector.h a private header.
2544 Use CSSParserSelector during parsing to keep the tag history in
2545 a linked list. This is flattened to an array after parsing.
2546 Use accessors for setting selector values.
2547 Use OwnPtr in selector vector.
2549 * css/CSSPageRule.cpp:
2550 (WebCore::CSSPageRule::CSSPageRule):
2551 * css/CSSPageRule.h:
2552 (WebCore::CSSPageRule::create):
2556 * css/CSSParser.cpp:
2557 (WebCore::CSSParser::~CSSParser):
2558 (WebCore::CSSParser::createFloatingSelector):
2559 (WebCore::CSSParser::sinkFloatingSelector):
2560 (WebCore::CSSParser::createStyleRule):
2561 (WebCore::CSSParser::updateSpecifiersWithElementName):
2562 (WebCore::CSSParser::createPageRule):
2564 (WebCore::CSSParser::reusableSelectorVector):
2566 CSSSelector -> CSSParserSelector.
2567 Use OwnPtr in selector vector.
2569 * css/CSSParserValues.cpp:
2570 (WebCore::CSSParserSelector::CSSParserSelector):
2571 (WebCore::CSSParserSelector::~CSSParserSelector):
2572 * css/CSSParserValues.h:
2573 (WebCore::CSSParserSelector::releaseSelector):
2574 (WebCore::CSSParserSelector::setTag):
2575 (WebCore::CSSParserSelector::setValue):
2576 (WebCore::CSSParserSelector::setAttribute):
2577 (WebCore::CSSParserSelector::setArgument):
2578 (WebCore::CSSParserSelector::setSimpleSelector):
2579 (WebCore::CSSParserSelector::setMatch):
2580 (WebCore::CSSParserSelector::setRelation):
2581 (WebCore::CSSParserSelector::setForPage):
2582 (WebCore::CSSParserSelector::pseudoType):
2583 (WebCore::CSSParserSelector::isUnknownPseudoElement):
2584 (WebCore::CSSParserSelector::isSimple):
2585 (WebCore::CSSParserSelector::tagHistory):
2586 (WebCore::CSSParserSelector::setTagHistory):
2588 Linked list used during parsing.
2589 Avoid recursive destruction.
2591 * css/CSSSelector.cpp:
2592 (WebCore::CSSSelector::extractPseudoType):
2593 (WebCore::CSSSelector::operator==):
2594 (WebCore::CSSSelector::selectorText):
2595 (WebCore::CSSSelector::setSimpleSelector):
2596 * css/CSSSelector.h:
2597 (WebCore::CSSSelector::CSSSelector):
2598 (WebCore::CSSSelector::~CSSSelector):
2599 (WebCore::CSSSelector::tagHistory):
2600 (WebCore::CSSSelector::tag):
2601 (WebCore::CSSSelector::value):
2602 (WebCore::CSSSelector::setTag):
2603 (WebCore::CSSSelector::isLastInTagHistory):
2604 (WebCore::CSSSelector::setNotLastInTagHistory):
2605 (WebCore::CSSSelector::RareData::RareData):
2606 (WebCore::CSSSelector::RareData::~RareData):
2607 (WebCore::CSSSelector::createRareData):
2608 (WebCore::CSSSelector::setValue):
2610 Remove m_tagHistory.
2611 Keep m_value in the union with the rare data pointer instead.
2612 Make m_value and m_tag private, implement accessors.
2613 Add a new bit to indicate end of the tag history (multipart selector).
2614 Eliminate complex destruction. Selectors are now deleted as an array or by a CSSParserSelector chain.
2616 * css/CSSSelectorList.cpp:
2617 (WebCore::CSSSelectorList::adoptSelectorVector):
2619 Flatten everything to an array.
2621 (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
2622 * css/CSSSelectorList.h:
2623 (WebCore::CSSSelectorList::hasOneSelector):
2624 (WebCore::CSSSelectorList::next):
2626 Skip over the subparts of multipart selectors to find the next selector.
2628 * css/CSSStyleRule.h:
2629 (WebCore::CSSStyleRule::adoptSelectorVector):
2631 CSSSelector -> CSSParserSelector.
2633 * css/CSSStyleSelector.cpp:
2634 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2635 (WebCore::CSSRuleSet::addRule):
2636 (WebCore::collectIdsAndSiblingRulesFromList):
2637 (WebCore::CSSStyleSelector::matchPageRulesForList):
2639 (WebCore::Node::querySelector):
2640 * dom/SelectorNodeList.cpp:
2641 (WebCore::createSelectorNodeList):
2645 2011-01-25 James Simonsen <simonjam@chromium.org>
2647 Reviewed by Tony Chang.
2649 [Chromium] Support small caps in complex text on linux
2650 https://bugs.webkit.org/show_bug.cgi?id=53051
2652 * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
2653 (WebCore::ComplexTextController::nextScriptRun): Break runs at small caps boundaries.
2654 (WebCore::ComplexTextController::setupFontForScriptRun): Setup small caps font data if needed.
2655 * platform/graphics/chromium/ComplexTextControllerLinux.h: Store small caps text in separate string.
2657 2011-01-25 Steve Falkenburg <sfalken@apple.com>
2659 Rubber-stamped by Adam Roben.
2661 Windows production build fix.
2662 Use correct environment variable escaping
2664 * WebCore.vcproj/WebCore.make:
2666 2011-01-25 Adam Barth <abarth@webkit.org>
2668 Reviewed by Eric Seidel.
2670 Empty URLs are never display isolated
2671 https://bugs.webkit.org/show_bug.cgi?id=53053
2673 This check mirrors the check in the local case. There isn't a good way
2674 to test this with a LayoutTest, but it is tested in Chromium (where
2675 this registry is used).
2677 * platform/SchemeRegistry.cpp:
2678 (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
2680 2011-01-25 Sam Weinig <sam@webkit.org>
2682 Reviewed by Anders Carlsson.
2684 Pipe a timestamp down into the PlatformWheelEvent for the Mac.
2685 https://bugs.webkit.org/show_bug.cgi?id=53111
2687 * platform/PlatformWheelEvent.h:
2688 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2689 (WebCore::PlatformWheelEvent::timestamp):
2690 Add timestamp member.
2692 * platform/mac/WheelEventMac.mm:
2693 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2694 Initialize the timestamp from the event.
2696 2011-01-25 Sheriff Bot <webkit.review.bot@gmail.com>
2698 Unreviewed, rolling out r76625.
2699 http://trac.webkit.org/changeset/76625
2700 https://bugs.webkit.org/show_bug.cgi?id=53119
2702 "incorrect pixel test results" (Requested by rniwa on
2705 * rendering/RenderBox.cpp:
2706 (WebCore::RenderBox::localCaretRect):
2708 2011-01-25 Patrick Gansterer <paroga@webkit.org>
2710 Unreviewed WinCE build fix for r76614.
2712 * platform/FileSystem.h:
2714 2011-01-21 Levi Weintraub <leviw@chromium.org>
2716 Reviewed by Darin Adler.
2718 Adding border and padding to the calculation of the local caret rect for RenderBoxes.
2720 Undo moves caret to invalid position
2721 https://bugs.webkit.org/show_bug.cgi?id=49744
2723 Tests: editing/selection/caret-painting-after-paste-undo-rtl.html
2724 editing/selection/caret-painting-after-paste-undo.html
2726 * rendering/RenderBox.cpp:
2727 (WebCore::RenderBox::localCaretRect):
2729 2011-01-25 Sam Weinig <sam@webkit.org>
2731 Reviewed by Anders Carlsson.
2733 Add hasPreciseScrollingDeltas bit to PlatformWheelEvent on the Mac.
2734 https://bugs.webkit.org/show_bug.cgi?id=53107
2736 * platform/PlatformWheelEvent.h:
2737 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2738 (WebCore::PlatformWheelEvent::hasPreciseScrollingDeltas):
2739 * platform/mac/WheelEventMac.mm:
2740 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2742 2011-01-20 Jer Noble <jer.noble@apple.com>
2744 Reviewed by Eric Carlson.
2746 REGRESSION (r72119): Audio never plays on Star Wars intro animation
2747 https://bugs.webkit.org/show_bug.cgi?id=52467
2749 QuickTime's eat/m4a movie importer compontent doesn't list audio/m4a as a mime
2750 type which it supports, though it handles .m4a files just fine. Change the way
2751 we build the list of supported MIME Types through a new WebKitSystemInterface
2754 Caused by r72119, which adds system-specific extension->MIME entries to the cache
2755 before global entries, and the system-specific entries include QuickTime's registry
2756 entries which contain the audio/m4a MIME type, while its components do not.
2758 Test: media/audio-mpeg4-supported.html
2760 * WebCore.vcproj/QTMovieWinCommon.vsprops:
2761 * platform/graphics/win/QTMovie.cpp:
2762 (getMIMETypeCallBack):
2763 (initializeSupportedTypes):
2764 (QTMovie::countSupportedTypes): gSupportedTypes is now a CFArrayRef.
2765 (QTMovie::getSupportedType): Ditto.
2767 2011-01-25 Hans Wennborg <hans@chromium.org>
2769 Reviewed by Jeremy Orlow.
2771 IndexedDB: Remove PlatformBridge::idbShutdown()
2772 https://bugs.webkit.org/show_bug.cgi?id=53077
2774 Since Chromium r72157, this is not used anymore. The previous use was
2775 to signal to the embedder that IndexedDB was shutting down, but we
2776 agreed it is better if the embedder keeps track of that itself.
2778 No new tests: this does not change any functionality.
2780 * platform/chromium/PlatformBridge.h:
2781 * storage/IDBFactoryBackendInterface.cpp:
2782 * storage/IDBFactoryBackendInterface.h:
2783 (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
2784 * storage/chromium/IDBFactoryBackendInterface.cpp:
2786 2011-01-25 Darin Adler <darin@apple.com>
2788 Reviewed by Anders Carlsson.
2790 WebKit is using CSBackupSetItemExcluded incorrectly
2791 https://bugs.webkit.org/show_bug.cgi?id=53095
2792 rdar://problem/8790540
2794 * loader/icon/IconDatabase.cpp:
2795 (WebCore::IconDatabase::performOpenInitialization): Added code to
2796 exclude the database from backup one time, and record inside the
2797 database that this has been done.
2798 (WebCore::IconDatabase::wasExcludedFromBackup): Added.
2799 (WebCore::IconDatabase::setWasExcludedFromBackup): Added.
2800 * loader/icon/IconDatabase.h: Added new functions above.
2802 * platform/FileSystem.cpp:
2803 (WebCore::canExcludeFromBackup): Added.
2804 (WebCore::excludeFromBackup): Added.
2806 * platform/FileSystem.h: Added canExcludeFromBackup, excludeFromBackup,
2807 and pathAsURL functions. Cleaned up ifdefs and comments a bit and sorted
2808 things alphabetically, particularly platform-specific sections.
2810 * platform/cf/FileSystemCF.cpp:
2811 (WebCore::pathAsURL): Added.
2813 * platform/mac/FileSystemMac.mm:
2814 (WebCore::canExcludeFromBackup): Added.
2815 (WebCore::excludeFromBackup): Added.
2817 * platform/network/cf/FormDataStreamCFNet.cpp:
2818 (WebCore::advanceCurrentStream): Changed to call pathAsURL.
2819 * platform/network/mac/FormDataStreamMac.mm:
2820 (WebCore::advanceCurrentStream): Ditto.
2822 2011-01-25 Helder Correia <helder@sencha.com>
2824 Reviewed by Dirk Schulze.
2826 REGRESSION(75139): SVG gradients are not applied to texts
2827 https://bugs.webkit.org/show_bug.cgi?id=52531
2829 CGContextConcatCTM should use the CGLayer context, not the
2830 GraphicsContext. Also, the CTM needs to be adjusted (translated).
2831 This fixes SVG text gradient fill.
2833 Test: svg/css/composite-shadow-text.svg
2835 * platform/graphics/cg/GraphicsContextCG.cpp:
2836 (WebCore::GraphicsContext::fillRect):
2838 2011-01-25 Benjamin Kalman <kalman@chromium.org>
2840 Reviewed by Ryosuke Niwa.
2842 Cannot extend or modify forward by word over a non-contenteditable region
2843 https://bugs.webkit.org/show_bug.cgi?id=53070
2845 Test: editing/selection/extend-forward-by-word-over-non-editable.html
2847 Change all instances of honorEditableBoundaryAtOrAfter to honorEditableBoundaryAtOrBefore and vice versa in the
2848 functions which determine the end/start of words/lines/sentences in visible_units.cpp.
2850 This fixes the bug where moving forwards by a word over a non-contenteditable region would place the cursor
2851 inside that region, and then get moved back to the start of the word due to honorEditableBoundaryAtOrBefore.
2852 The cursor is now moved to the end of the region (which is effectively a noop in this case).
2854 * editing/visible_units.cpp: Change all instances of honorEditableBoundaryAtOrAfter to
2855 honorEditableBoundaryAtOrBefore and vice versa.
2856 (WebCore::previousWordPosition):
2857 (WebCore::nextWordPosition):
2858 (WebCore::startOfLine):
2859 (WebCore::endOfLine):
2860 (WebCore::previousSentencePosition):
2861 (WebCore::nextSentencePosition):
2862 (WebCore::logicalStartOfLine):
2863 (WebCore::logicalEndOfLine):
2865 2011-01-25 Yael Aharon <yael.aharon@nokia.com>
2867 Unreviewed build fix.
2868 After r76466, efsrv.lib is used unconditionally.
2869 Don't guard it with ENABLE_NETSCAPE_PLUGIN_API.
2873 2011-01-24 Zhenyao Mo <zmo@google.com>
2875 Reviewed by Kenneth Russell.
2877 Style cleanup for WebGLRenderingContext
2878 https://bugs.webkit.org/show_bug.cgi?id=52352
2880 * html/canvas/WebGLBuffer.cpp:
2881 * html/canvas/WebGLBuffer.h:
2882 * html/canvas/WebGLObject.cpp:
2883 * html/canvas/WebGLProgram.cpp:
2884 * html/canvas/WebGLRenderbuffer.cpp:
2885 * html/canvas/WebGLRenderingContext.cpp:
2886 (WebCore::WebGLRenderingContext::create):
2887 (WebCore::WebGLRenderingContext::blendFunc):
2888 (WebCore::WebGLRenderingContext::createShader):
2889 (WebCore::WebGLRenderingContext::deleteBuffer):
2890 (WebCore::WebGLRenderingContext::deleteShader):
2891 (WebCore::WebGLRenderingContext::deleteTexture):
2892 (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2893 (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
2894 (WebCore::WebGLRenderingContext::validateRenderingState):
2895 (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2896 (WebCore::WebGLRenderingContext::getUniform):
2897 (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
2898 * html/canvas/WebGLRenderingContext.h:
2899 * html/canvas/WebGLShader.cpp:
2900 * html/canvas/WebGLTexture.cpp:
2901 * html/canvas/WebGLUniformLocation.cpp:
2902 * html/canvas/WebGLUniformLocation.h:
2904 2011-01-24 Chris Marrin <cmarrin@apple.com>
2906 Reviewed by Eric Seidel.
2908 Change ENABLE_3D_CANVAS to ENABLE_WEBGL
2909 https://bugs.webkit.org/show_bug.cgi?id=53041
2911 * Configurations/FeatureDefines.xcconfig:
2912 * DerivedSources.cpp:
2915 * bindings/generic/RuntimeEnabledFeatures.h:
2916 * bindings/js/JSArrayBufferCustom.cpp:
2917 * bindings/js/JSCanvasRenderingContextCustom.cpp:
2919 * bindings/js/JSDOMWindowCustom.cpp:
2920 * bindings/js/JSDataViewCustom.cpp:
2921 * bindings/js/JSDocumentCustom.cpp:
2922 * bindings/js/JSFloat32ArrayCustom.cpp:
2923 * bindings/js/JSHTMLCanvasElementCustom.cpp:
2924 (WebCore::JSHTMLCanvasElement::getContext):
2925 * bindings/js/JSInt16ArrayCustom.cpp:
2926 * bindings/js/JSInt32ArrayCustom.cpp:
2927 * bindings/js/JSInt8ArrayCustom.cpp:
2928 * bindings/js/JSUint16ArrayCustom.cpp:
2929 * bindings/js/JSUint32ArrayCustom.cpp:
2930 * bindings/js/JSUint8ArrayCustom.cpp:
2931 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2932 * bindings/js/JSXMLHttpRequestCustom.cpp:
2933 (WebCore::JSXMLHttpRequest::markChildren):
2934 (WebCore::JSXMLHttpRequest::send):
2935 (WebCore::JSXMLHttpRequest::response):
2936 * bindings/v8/custom/V8ArrayBufferCustom.cpp:
2937 * bindings/v8/custom/V8ArrayBufferViewCustom.h:
2938 * bindings/v8/custom/V8DataViewCustom.cpp:
2939 * bindings/v8/custom/V8DocumentCustom.cpp:
2940 (WebCore::V8Document::getCSSCanvasContextCallback):
2941 * bindings/v8/custom/V8Float32ArrayCustom.cpp:
2942 * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
2943 (WebCore::V8HTMLCanvasElement::getContextCallback):
2944 * bindings/v8/custom/V8Int16ArrayCustom.cpp:
2945 * bindings/v8/custom/V8Int32ArrayCustom.cpp:
2946 * bindings/v8/custom/V8Int8ArrayCustom.cpp:
2947 * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
2948 * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
2949 * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
2950 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2951 * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2952 (WebCore::V8XMLHttpRequest::responseAccessorGetter):
2953 (WebCore::V8XMLHttpRequest::sendCallback):
2955 * html/HTMLCanvasElement.cpp:
2956 (WebCore::HTMLCanvasElement::getContext):
2957 (WebCore::HTMLCanvasElement::reset):
2958 * html/HTMLCanvasElement.h:
2959 * html/canvas/ArrayBuffer.cpp:
2960 * html/canvas/ArrayBuffer.idl:
2961 * html/canvas/ArrayBufferView.cpp:
2962 * html/canvas/ArrayBufferView.idl:
2963 * html/canvas/DataView.cpp:
2964 * html/canvas/DataView.idl:
2965 * html/canvas/Float32Array.cpp:
2966 * html/canvas/Float32Array.idl:
2967 * html/canvas/Int16Array.cpp:
2968 * html/canvas/Int16Array.idl:
2969 * html/canvas/Int32Array.cpp:
2970 * html/canvas/Int32Array.idl:
2971 * html/canvas/Int8Array.cpp:
2972 * html/canvas/Int8Array.idl:
2973 * html/canvas/OESStandardDerivatives.cpp:
2974 * html/canvas/OESStandardDerivatives.idl:
2975 * html/canvas/OESTextureFloat.cpp:
2976 * html/canvas/OESTextureFloat.idl:
2977 * html/canvas/Uint16Array.cpp:
2978 * html/canvas/Uint16Array.idl:
2979 * html/canvas/Uint32Array.cpp:
2980 * html/canvas/Uint32Array.idl:
2981 * html/canvas/Uint8Array.cpp:
2982 * html/canvas/Uint8Array.idl:
2983 * html/canvas/WebGLActiveInfo.idl:
2984 * html/canvas/WebGLBuffer.cpp:
2985 * html/canvas/WebGLBuffer.idl:
2986 * html/canvas/WebGLContextAttributes.cpp:
2987 * html/canvas/WebGLContextAttributes.idl:
2988 * html/canvas/WebGLContextEvent.idl:
2989 * html/canvas/WebGLExtension.cpp:
2990 * html/canvas/WebGLFramebuffer.cpp:
2991 * html/canvas/WebGLFramebuffer.idl:
2992 * html/canvas/WebGLGetInfo.cpp:
2993 * html/canvas/WebGLObject.cpp:
2994 * html/canvas/WebGLProgram.cpp:
2995 * html/canvas/WebGLProgram.idl:
2996 * html/canvas/WebGLRenderbuffer.cpp:
2997 * html/canvas/WebGLRenderbuffer.idl:
2998 * html/canvas/WebGLRenderingContext.cpp:
2999 * html/canvas/WebGLRenderingContext.idl:
3000 * html/canvas/WebGLShader.cpp:
3001 * html/canvas/WebGLShader.idl:
3002 * html/canvas/WebGLTexture.cpp:
3003 * html/canvas/WebGLTexture.idl:
3004 * html/canvas/WebGLUniformLocation.cpp:
3005 * html/canvas/WebGLUniformLocation.idl:
3006 * html/canvas/WebKitLoseContext.cpp:
3007 * html/canvas/WebKitLoseContext.idl:
3008 * page/DOMWindow.idl:
3009 * platform/graphics/ANGLEWebKitBridge.cpp:
3010 * platform/graphics/GraphicsContext3D.cpp:
3011 * platform/graphics/cg/GraphicsContext3DCG.cpp:
3012 * platform/graphics/gpu/DrawingBuffer.cpp:
3013 * platform/graphics/gpu/mac/DrawingBufferMac.mm:
3014 * platform/graphics/mac/GraphicsContext3DMac.mm:
3015 * platform/graphics/mac/WebGLLayer.mm:
3016 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
3017 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3018 * platform/graphics/qt/Extensions3DQt.cpp:
3019 * platform/graphics/qt/GraphicsContext3DQt.cpp:
3020 * platform/graphics/qt/GraphicsLayerQt.cpp:
3021 (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
3022 (WebCore::GraphicsLayerQtImpl::paint):
3023 (WebCore::GraphicsLayerQtImpl::flushChanges):
3024 * platform/graphics/qt/GraphicsLayerQt.h:
3025 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3026 * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3027 * rendering/RenderLayerBacking.cpp:
3028 (WebCore::isAcceleratedCanvas):
3029 (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
3030 (WebCore::RenderLayerBacking::containsPaintedContent):
3031 (WebCore::RenderLayerBacking::contentChanged):
3032 * webaudio/AudioBuffer.cpp:
3033 * webaudio/AudioBuffer.idl:
3034 * webaudio/RealtimeAnalyser.cpp:
3035 * webaudio/RealtimeAnalyser.h:
3036 * webaudio/RealtimeAnalyserNode.h:
3037 * webaudio/RealtimeAnalyserNode.idl:
3038 * xml/XMLHttpRequest.cpp:
3039 (WebCore::XMLHttpRequest::setResponseType):
3040 (WebCore::XMLHttpRequest::clearResponse):
3041 (WebCore::XMLHttpRequest::didReceiveData):
3042 * xml/XMLHttpRequest.h:
3044 2011-01-25 Mikhail Naganov <mnaganov@chromium.org>
3046 Reviewed by Pavel Feldman.
3048 Web Inspector: [Chromium] Prepare for landing of detailed heap snapshots.
3050 - Introduce Preferences.detailedHeapProfiles flag for controlling
3051 querying of detailed heap snapshots.
3052 - Add boilerplate code for the new view.
3053 - Factor out common code.
3055 https://bugs.webkit.org/show_bug.cgi?id=52624
3058 * WebCore.vcproj/WebCore.vcproj:
3059 * bindings/js/ScriptProfiler.h:
3060 (WebCore::ScriptProfiler::HeapSnapshotControl::~HeapSnapshotControl):
3061 (WebCore::ScriptProfiler::takeHeapSnapshot):
3062 * bindings/v8/ScriptProfiler.cpp:
3063 (WebCore::ScriptProfiler::takeHeapSnapshot):
3064 * bindings/v8/ScriptProfiler.h:
3065 (WebCore::ScriptProfiler::HeapSnapshotControl::~HeapSnapshotControl):
3066 * inspector/Inspector.idl:
3067 * inspector/InspectorProfilerAgent.cpp:
3068 (WebCore::InspectorProfilerAgent::takeHeapSnapshot):
3069 * inspector/InspectorProfilerAgent.h:
3070 * inspector/front-end/DetailedHeapshotView.js: Added.
3071 (WebInspector.DetailedHeapshotView):
3072 (WebInspector.DetailedHeapshotView.prototype.get statusBarItems):
3073 (WebInspector.DetailedHeapshotView.prototype.get profile):
3074 (WebInspector.DetailedHeapshotView.prototype.set profile):
3075 (WebInspector.DetailedHeapshotView.prototype.show):
3076 (WebInspector.DetailedHeapshotView.prototype.hide):
3077 (WebInspector.DetailedHeapshotProfileType):
3078 (WebInspector.DetailedHeapshotProfileType.prototype.get buttonTooltip):
3079 (WebInspector.DetailedHeapshotProfileType.prototype.get buttonStyle):
3080 (WebInspector.DetailedHeapshotProfileType.prototype.buttonClicked):
3081 (WebInspector.DetailedHeapshotProfileType.prototype.get welcomeMessage):
3082 (WebInspector.DetailedHeapshotProfileType.prototype.createSidebarTreeElementForProfile):
3083 (WebInspector.DetailedHeapshotProfileType.prototype.createView):
3084 * inspector/front-end/HeapSnapshot.js: Added.
3085 (WebInspector.HeapSnapshotEdgesIterator):
3086 (WebInspector.HeapSnapshotEdgesIterator.prototype.get done):
3087 (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement):
3088 (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden):
3089 (WebInspector.HeapSnapshotEdgesIterator.prototype.get name):
3090 (WebInspector.HeapSnapshotEdgesIterator.prototype.next):
3091 (WebInspector.HeapSnapshotEdgesIterator.prototype.get node):
3092 (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex):
3093 (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex):
3094 (WebInspector.HeapSnapshotEdgesIterator.prototype._getType):
3095 (WebInspector.HeapSnapshotNodeWrapper):
3096 (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges):
3097 (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount):
3098 (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount):
3099 (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden):
3100 (WebInspector.HeapSnapshotNodeWrapper.prototype.get name):
3101 (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize):
3102 (WebInspector.HeapSnapshotNodeWrapper.prototype._getName):
3103 (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges):
3104 (WebInspector.HeapSnapshotNodeWrapper.prototype._getType):
3105 (WebInspector.HeapSnapshot):
3106 (WebInspector.HeapSnapshot.prototype._init):
3107 (WebInspector.HeapSnapshot.prototype.get rootEdges):
3108 * inspector/front-end/HeapSnapshotView.js:
3109 (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
3110 * inspector/front-end/ProfilesPanel.js:
3111 (WebInspector.ProfilesPanel.prototype._setRecordingProfile):
3112 (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
3113 (WebInspector.ProfilerDispatcher.prototype.setRecordingProfile):
3114 (WebInspector.ProfilerDispatcher.prototype.reportHeapSnapshotProgress):
3115 * inspector/front-end/Settings.js:
3116 * inspector/front-end/WebKit.qrc:
3117 * inspector/front-end/inspector.html:
3118 * inspector/front-end/inspector.js:
3119 (WebInspector._createPanels):
3121 2011-01-25 Yury Semikhatsky <yurys@chromium.org>
3123 Reviewed by Pavel Feldman.
3125 Web Inspector: remove "attached" state related methods from InspectorAgent
3126 https://bugs.webkit.org/show_bug.cgi?id=53086
3129 * inspector/InspectorAgent.cpp:
3130 * inspector/InspectorAgent.h:
3131 * inspector/InspectorFrontendClientLocal.cpp:
3132 (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
3133 (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
3134 * inspector/InspectorSettings.cpp:
3135 (WebCore::InspectorSettings::InspectorSettings):
3136 * inspector/InspectorSettings.h:
3138 2011-01-25 Qi Zhang <qi.2.zhang@nokia.com>
3140 Reviewed by Laszlo Gombos.
3142 [Symbian] RVCT fails to compile [U|I]nt[8|16|32]Array.h
3143 https://bugs.webkit.org/show_bug.cgi?id=51873
3145 Replace the using declaration, because it doesn't compile on RVCT, and WINSCW has the same issue.
3146 No new functionality so no new tests.
3148 * html/canvas/Int32Array.h:
3149 (WebCore::Int32Array::set):
3150 * html/canvas/Int8Array.h:
3151 (WebCore::Int8Array::set):
3152 * html/canvas/Uint16Array.h:
3153 (WebCore::Uint16Array::set):
3154 * html/canvas/Uint32Array.h:
3155 (WebCore::Uint32Array::set):
3156 * html/canvas/Uint8Array.h:
3157 (WebCore::Uint8Array::set):
3159 2011-01-25 Zoltan Herczeg <zherczeg@webkit.org>
3161 Reviewed by Dirk Schulze.
3163 Repaint SVG elements with filter instead of relayout where possible
3164 https://bugs.webkit.org/show_bug.cgi?id=52200
3166 This patch allows repainting of filters, when their
3167 attribute changes does not require relayout.
3169 Existing dynamic-update tests cover this feature.
3171 * platform/graphics/filters/FilterEffect.cpp:
3172 (WebCore::FilterEffect::clearResult): Clearing the currently stored image
3174 * platform/graphics/filters/FilterEffect.h:
3175 * rendering/RenderObject.h:
3176 (WebCore::RenderObject::isSVGResourceFilter): Not only the filter primitives,
3177 but filters should also be detected to allow safe testing and casting.
3178 * rendering/svg/RenderSVGResourceFilter.cpp:
3179 (WebCore::RenderSVGResourceFilter::buildPrimitives): Passing the renderer.
3180 (WebCore::RenderSVGResourceFilter::applyResource):
3181 determineFilterPrimitiveSubregion does not require the filter anymore.
3182 (WebCore::RenderSVGResourceFilter::postApplyResource): Repaint
3183 if lastEffect->hasResult() is false.
3184 (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
3185 Searching for all FilterEffects, whose created by the current FilterElement,
3186 and clearing all resulting images depending on those FilterEffects.
3187 * rendering/svg/RenderSVGResourceFilter.h:
3188 (WebCore::RenderSVGResourceFilter::isSVGResourceFilter):
3189 * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3190 (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):
3191 The filter argument is unnecessary anymore. But is is still kept as a static
3192 member, since the primitive renderer still does not know about the
3193 FilterEffect objects.
3194 * rendering/svg/RenderSVGResourceFilterPrimitive.h:
3195 (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
3196 (WebCore::RenderSVGResourceFilterPrimitive::primitiveAttributeChanged):
3197 Calls RenderSVGResourceFilter::primitiveAttributeChanged.
3198 * svg/SVGFEDiffuseLightingElement.cpp:
3199 (WebCore::SVGFEDiffuseLightingElement::setFilterEffectAttribute):
3200 Setting the new attribute value for each FilterEffect.
3201 (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):
3202 * svg/SVGFEDiffuseLightingElement.h:
3203 Calling primitiveAttributeChanged.
3204 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3205 (WebCore::SVGFilterPrimitiveStandardAttributes::setFilterEffectAttribute):
3206 This function will be removed when all FilterElement implements
3207 their setFilterEffectAttribute
3208 * svg/SVGFilterPrimitiveStandardAttributes.h:
3209 (WebCore::SVGFilterPrimitiveStandardAttributes::primitiveAttributeChanged):
3210 * svg/graphics/filters/SVGFilterBuilder.cpp:
3211 (WebCore::SVGFilterBuilder::appendEffectToEffectReferences): The
3212 renderers are assigned to the filter effects.
3213 (WebCore::SVGFilterBuilder::clearEffects):
3214 (WebCore::SVGFilterBuilder::clearResultsRecursive): Recursively
3215 clearing the result images for those filters, whose depend on
3216 the starting filter.
3217 * svg/graphics/filters/SVGFilterBuilder.h:
3218 (WebCore::SVGFilterBuilder::effectReferences): 'get' is unnecessary
3219 (WebCore::SVGFilterBuilder::effectByRenderer): returns the
3220 FilterEffect belongs to this RenderObject.
3222 2011-01-25 Dirk Schulze <krit@webkit.org>
3224 Reviewed by Nikolas Zimmermann.
3226 SVG is missing to-animation support for Path
3227 https://bugs.webkit.org/show_bug.cgi?id=52982
3229 SVG was missing 'to' animation support for SVG paths. Even the fallback to discrete
3230 animation did not work and an assert was thrown, because of the missing m_fromPath.
3231 This also influences a test of the W3C test suite. Subtest 2 of animate-elem-83-t.svg passes now.
3233 Test: svg/animations/animate-path-to-animation.html
3235 * svg/SVGAnimateElement.cpp:
3236 (WebCore::SVGAnimateElement::calculateAnimatedValue): Take the value of the last SVGAnimateElement for
3237 m_fromPath, since 'to' animations are accumulative.
3238 (WebCore::SVGAnimateElement::calculateFromAndToValues): Added support for 'to' animations.
3239 (WebCore::SVGAnimateElement::resetToBaseValue): Set m_animatedPath on the first animation element to baseVal.
3240 * svg/SVGPathByteStream.h:
3241 (WebCore::SVGPathByteStream::copySVGPathByteStream): Return copy of current byte stream.
3243 2011-01-25 Pavel Feldman <pfeldman@chromium.org>
3245 Reviewed by Yury Semikhatsky.
3247 Web Inspector: bind resources to URLs upon adding them into the tree.
3248 https://bugs.webkit.org/show_bug.cgi?id=53013
3250 * inspector/front-end/AuditRules.js:
3251 (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
3252 * inspector/front-end/CSSStyleModel.js:
3253 (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
3254 (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
3255 * inspector/front-end/DebuggerModel.js:
3256 (WebInspector.DebuggerModel.prototype._parsedScriptSource):
3257 * inspector/front-end/NetworkManager.js:
3258 (WebInspector.NetworkManager.prototype._processCachedResources):
3259 (WebInspector.NetworkManager.prototype.inflightResourceForURL):
3260 (WebInspector.NetworkDispatcher):
3261 (WebInspector.NetworkDispatcher.prototype.willSendRequest):
3262 (WebInspector.NetworkDispatcher.prototype.markResourceAsCached):
3263 (WebInspector.NetworkDispatcher.prototype.didReceiveResponse):
3264 (WebInspector.NetworkDispatcher.prototype.didReceiveContentLength):
3265 (WebInspector.NetworkDispatcher.prototype.didFinishLoading):
3266 (WebInspector.NetworkDispatcher.prototype.didFailLoading):
3267 (WebInspector.NetworkDispatcher.prototype.willSendWebSocketHandshakeRequest):
3268 (WebInspector.NetworkDispatcher.prototype.didReceiveWebSocketHandshakeResponse):
3269 (WebInspector.NetworkDispatcher.prototype.didCloseWebSocket):
3270 (WebInspector.NetworkDispatcher.prototype._appendRedirect):
3271 (WebInspector.NetworkDispatcher.prototype._startResource):
3272 (WebInspector.NetworkDispatcher.prototype._finishResource):
3273 (WebInspector.NetworkDispatcher.prototype._createResource):
3274 * inspector/front-end/ResourceTreeModel.js:
3275 (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
3276 (WebInspector.ResourceTreeModel.prototype._bindResourceURL):
3277 (WebInspector.ResourceTreeModel.prototype._clearResources):
3278 (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
3279 * inspector/front-end/ResourcesPanel.js:
3280 (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
3281 (WebInspector.ResourcesPanel.prototype.showSourceLine):
3282 * inspector/front-end/ScriptsPanel.js:
3283 (WebInspector.ScriptsPanel.prototype._parsedScriptSource):
3284 (WebInspector.ScriptsPanel.prototype._addScript):
3286 2011-01-25 Nikolas Zimmermann <nzimmermann@rim.com>
3288 Reviewed by Dirk Schulze.
3290 Introduce FontMetrics abstraction
3291 https://bugs.webkit.org/show_bug.cgi?id=51456
3293 Use accurate floating-point metrics for SVG Font calculations instead of casting float -> integer.
3294 This hopefully fixes differences between 32/64 bit bots.
3296 Needs new layout test results for several platforms, which need to be taken from the bots landing afterwards.
3298 * platform/graphics/SimpleFontData.cpp:
3299 (WebCore::SimpleFontData::SimpleFontData):
3300 (WebCore::SimpleFontData::initCharWidths):
3302 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
3304 Reviewed by Pavel Feldman.
3306 Web Inspector: debugger and browser debugger agents should manage sticky breakpoints independently.
3307 https://bugs.webkit.org/show_bug.cgi?id=52999
3309 * inspector/Inspector.idl:
3310 * inspector/InspectorAgent.cpp:
3311 (WebCore::InspectorAgent::didCommitLoad):
3312 (WebCore::InspectorAgent::enableDebugger):
3313 (WebCore::InspectorAgent::inspectedURLWithoutFragment):
3314 * inspector/InspectorAgent.h:
3315 * inspector/InspectorBrowserDebuggerAgent.cpp:
3316 (WebCore::InspectorBrowserDebuggerAgent::setAllBrowserBreakpoints):
3317 (WebCore::InspectorBrowserDebuggerAgent::inspectedURLChanged):
3318 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
3319 * inspector/InspectorBrowserDebuggerAgent.h:
3320 * inspector/InspectorDebuggerAgent.cpp:
3321 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3322 (WebCore::InspectorDebuggerAgent::setAllJavaScriptBreakpoints):
3323 (WebCore::InspectorDebuggerAgent::inspectedURLChanged):
3324 (WebCore::InspectorDebuggerAgent::restoreBreakpoints):
3325 * inspector/InspectorDebuggerAgent.h:
3326 * inspector/InspectorState.cpp:
3327 (WebCore::InspectorState::InspectorState):
3328 * inspector/InspectorState.h:
3329 * inspector/front-end/BreakpointManager.js:
3330 (WebInspector.BreakpointManager):
3331 (WebInspector.BreakpointManager.prototype._projectChanged):
3332 (WebInspector.BreakpointManager.prototype._saveBreakpoints):
3333 (WebInspector.BreakpointManager.prototype._pushBreakpointsToBackend):
3335 2011-01-25 Carlos Garcia Campos <cgarcia@igalia.com>
3337 Reviewed by Martin Robinson.
3339 [GTK] Crash in some pages containing flash
3340 https://bugs.webkit.org/show_bug.cgi?id=53016
3342 Flash plugin can produce X errors that are handled by the GDK X
3343 error handler, which exits the process. Since we don't want to
3344 crash due to flash bugs, we install a custom error handler to show
3345 a warning when a X error happens without aborting.
3347 * plugins/gtk/PluginPackageGtk.cpp:
3348 (WebCore::webkitgtkXError):
3349 (WebCore::PluginPackage::load):
3351 2011-01-25 Carlos Garcia Campos <cgarcia@igalia.com>
3353 Reviewed by Martin Robinson.
3355 [GTK] Implement spin buttons in RenderThemeGtk
3356 https://bugs.webkit.org/show_bug.cgi?id=51454
3358 Paint inner up/down buttons for spin button elements when building
3361 Test results will land with the GTK+ 2.x version of this patch.
3363 * platform/gtk/RenderThemeGtk.h:
3364 * platform/gtk/RenderThemeGtk2.cpp:
3365 (WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle):
3366 (WebCore::RenderThemeGtk::paintInnerSpinButton):
3367 * platform/gtk/RenderThemeGtk3.cpp:
3368 (WebCore::spinButtonArrowSize):
3369 (WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle):
3370 (WebCore::paintSpinArrowButton):
3371 (WebCore::RenderThemeGtk::paintInnerSpinButton):
3373 2011-01-24 Mihai Parparita <mihaip@chromium.org>
3375 Unreviewed. Missed move of one m_deleted use to be outside NDEBUG block
3378 * loader/cache/CachedResource.cpp:
3379 (WebCore::CachedResource::~CachedResource):
3381 2011-01-24 Mihai Parparita <mihaip@chromium.org>
3383 Reviewed by Tony Chang.
3385 Add runtime checks for invariants in memory cache
3386 https://bugs.webkit.org/show_bug.cgi?id=53059
3388 To help track down bug 53045, add some CRASH calls in addition to
3389 ASSERTs, so that we can track down failures in reliability bots.
3391 Just some checks, no new tests necessary.
3393 * css/CSSImageValue.cpp:
3394 (WebCore::CSSImageValue::cachedImage):
3395 * loader/cache/CachedResource.h:
3396 * loader/cache/CachedResource.cpp:
3397 (WebCore::CachedResource::~CachedResource):
3399 2011-01-24 Simon Fraser <simon.fraser@apple.com>
3401 Reviewed by Dan Bernstein.
3403 Leaking CSSRuleDataList objects
3404 https://bugs.webkit.org/show_bug.cgi?id=53062
3406 Fix leaked CSSRuleDataLists added to the m_pseudoRules hash.
3408 * css/CSSStyleSelector.cpp:
3409 (WebCore::CSSRuleSet::~CSSRuleSet):
3411 2011-01-24 Simon Fraser <simon.fraser@apple.com>
3413 Reviewed by Eric Seidel.
3415 Refcount Images used in rendering code
3416 https://bugs.webkit.org/show_bug.cgi?id=52701
3418 Change StyleImage::image(RenderObject*, const IntSize&) and
3419 CSSImageGeneratorValue::image(RenderObject*, const IntSize&) to
3420 return PassRefPtr<Image>, and adjust other code accordingly.
3422 This allows us to return one-time images, for example for CSS gradients
3423 whose appearance may change depending on factors other than the renderer
3424 and the destination size.
3426 * css/CSSCanvasValue.cpp:
3427 (WebCore::CSSCanvasValue::image):
3428 * css/CSSCanvasValue.h:
3429 * css/CSSGradientValue.cpp:
3430 (WebCore::CSSGradientValue::image):
3431 * css/CSSGradientValue.h:
3432 * css/CSSImageGeneratorValue.h:
3433 * rendering/RenderBoxModelObject.cpp:
3434 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3435 (WebCore::RenderBoxModelObject::paintNinePieceImage):
3436 * rendering/RenderImage.cpp:
3437 (WebCore::RenderImage::paintReplaced):
3438 (WebCore::RenderImage::paintIntoRect):
3439 * rendering/RenderImageResource.h:
3440 (WebCore::RenderImageResource::image):
3441 * rendering/RenderImageResourceStyleImage.h:
3442 (WebCore::RenderImageResourceStyleImage::image):
3443 * rendering/RenderListMarker.cpp:
3444 (WebCore::RenderListMarker::paint):
3445 * rendering/style/StyleCachedImage.cpp:
3446 (WebCore::StyleCachedImage::image):
3447 * rendering/style/StyleCachedImage.h:
3448 * rendering/style/StyleGeneratedImage.cpp:
3449 (WebCore::StyleGeneratedImage::image):
3450 * rendering/style/StyleGeneratedImage.h:
3451 * rendering/style/StyleImage.h:
3452 * rendering/style/StylePendingImage.h:
3453 (WebCore::StylePendingImage::image):
3454 * rendering/svg/RenderSVGImage.cpp:
3455 (WebCore::RenderSVGImage::paint):
3457 2011-01-24 Tony Chang <tony@chromium.org>
3459 Unreviewed, round ascent and descent to match old code.
3461 * platform/graphics/chromium/SimpleFontDataLinux.cpp:
3462 (WebCore::SimpleFontData::platformInit):
3464 2011-01-24 Simon Fraser <simon.fraser@apple.com>
3466 Reviewed by Chris Marrin.
3468 perspective() transform function should take lengths
3469 https://bugs.webkit.org/show_bug.cgi?id=52683
3471 The argument to the perspective() transform function should
3472 be a Length, rather than a bare number. Bare numbers are still
3473 accepted (and treated as px), but this behavior is deprecated.
3475 Test: animations/3d/transform-perspective.html
3476 transforms/3d/general/3dtransform-values.html
3478 * css/CSSParser.cpp:
3479 (WebCore::CSSParser::parseTransform): Check the units for the perspective()
3480 function. Allow bare numbers for backwards compatibility.
3481 * css/CSSStyleSelector.cpp:
3482 (WebCore::CSSStyleSelector::createTransformOperations): Convert
3484 * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
3485 (WebCore::clampToPostiveInteger): Helper.
3486 (WebCore::PerspectiveTransformOperation::blend): Blend via Lengths.
3487 * platform/graphics/transforms/PerspectiveTransformOperation.h:
3488 (WebCore::PerspectiveTransformOperation::create): double -> Length.
3489 (WebCore::PerspectiveTransformOperation::perspective): Ditto.
3490 (WebCore::PerspectiveTransformOperation::isIdentity): Ditto.
3491 (WebCore::PerspectiveTransformOperation::apply): Ditto.
3492 (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation): Assert
3493 that the Length is a fixed type.
3495 2011-01-24 Kent Tamura <tkent@chromium.org>
3497 Reviewed by Dimitri Glazkov.
3499 [Windows] Textfield <input>s have different widths.
3500 https://bugs.webkit.org/show_bug.cgi?id=48405
3502 - Apply the padding override for type=text to other textfield types too.
3503 - Reset margin value of outer spin button, which is not used in Windows.
3504 - Don't add inner spin button width to the preferred text field width.
3505 Text fields should have the identical widths regardless of the
3506 existence of spin buttons.
3508 Test: fast/forms/input-widths.html
3511 (input[type="week"]):
3512 (input[type="week"]:disabled):
3513 (input[type="search"]::-webkit-search-cancel-button):
3514 (input::-webkit-outer-spin-button):
3515 * rendering/RenderTextControlSingleLine.cpp:
3516 (WebCore::RenderTextControlSingleLine::preferredContentWidth):
3517 Don't add inner spin button width to the preferred width.
3519 2011-01-24 Kent Tamura <tkent@chromium.org>
3521 Reviewed by Dimitri Glazkov.
3523 Some bugs of search cancel button and spin button about state change in
3525 https://bugs.webkit.org/show_bug.cgi?id=46950
3527 Fix the following problems:
3528 * Type=search field didn't release event capturing
3529 * Assertion failure when an input field with spin buttons was changed
3530 to another type on focus event.
3531 * A input field with spin button didn't release event capturing when it
3532 was changed to another type on focus event.
3534 Tests: fast/forms/input-number-change-type-on-focus.html
3535 fast/forms/search-hide-cancel-on-cancel.html
3537 * rendering/TextControlInnerElements.cpp:
3538 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
3539 - Make the variable 'input' RefPtr. It makes the code simpler.
3540 - Remove visibility check on mouseup event. We should release capturing
3541 anyway because the cancel button may be invisible if JavaScript code
3542 called by the focus event removes the input value.
3543 (WebCore::SpinButtonElement::detach):
3544 - Release capturing on detach because it is possible that a spin button
3545 node is detached while it is capturing events.
3546 (WebCore::SpinButtonElement::defaultEventHandler):
3547 Take a reference to this and check renderer() after some functions which
3548 may run JavaScript code.
3549 (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
3550 Make the variable 'input' RefPtr to align other functions in this file.
3551 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): ditto.
3552 * rendering/TextControlInnerElements.h: Declare SpinButtonElement::detach().
3554 2011-01-24 Ryosuke Niwa <rniwa@webkit.org>
3556 Reviewed by Ojan Vafai.
3558 Inserting multiple whitespace using text composition (IME) should insert interleaved nbsp and whitespace.
3559 https://bugs.webkit.org/show_bug.cgi?id=52781
3561 The bug was caused by stringWithRebalancedWhitespace's replacing the space at the beginning of a paragraph
3562 and the end of a paragraph by a non-breaking space after it replaced two consecutive spaces by a space and
3563 non-breaking space pattern, thereby replacing more spaces by non-breaking spaces than needed.
3565 Rewrote the function using Vector<UChar> to fix the bug. New function no longer calls String::replace
3566 multiple times but instead it traverses through the string and replaces a space that immediately follows
3567 another space or appears at the beginning of a paragraph or at the end of a paragraph by a non-break space.
3569 * editing/CompositeEditCommand.cpp:
3570 * editing/htmlediting.cpp:
3571 (WebCore::stringWithRebalancedWhitespace): Written.
3572 * editing/htmlediting.h:
3573 (WebCore::isWhitespace): Removed from CompositeEditCommand.cpp
3575 2011-01-24 Kenneth Russell <kbr@google.com>
3577 Reviewed by James Robinson.
3579 Web Audio API: port FFTFrame to FFTW
3580 https://bugs.webkit.org/show_bug.cgi?id=52989
3582 Ported FFTFrame class to the open-source FFTW library. Tested with
3583 unit tests from Chris Rogers. Made preliminary changes to GYP
3584 files for conditional compilation of these files; will need to be
3585 adjusted once FFTW is integrated as third-party source.
3587 * WebCore.gyp/WebCore.gyp:
3589 * platform/audio/FFTFrame.h:
3590 * platform/audio/fftw: Added.
3591 * platform/audio/fftw/FFTFrameFFTW.cpp: Added.
3592 (WebCore::FFTFrame::FFTFrame):
3593 (WebCore::FFTFrame::~FFTFrame):
3594 (WebCore::FFTFrame::multiply):
3595 (WebCore::FFTFrame::doFFT):
3596 (WebCore::FFTFrame::doInverseFFT):
3597 (WebCore::FFTFrame::cleanup):
3598 (WebCore::FFTFrame::realData):
3599 (WebCore::FFTFrame::imagData):
3600 (WebCore::FFTFrame::fftwPlanForSize):
3602 2011-01-24 Anders Carlsson <andersca@apple.com>
3604 Reviewed by Dan Bernstein.
3606 Reset the page scale factor on standard frame loads
3607 https://bugs.webkit.org/show_bug.cgi?id=53058
3608 <rdar://problem/8908844>
3610 Add a symbol needed by WebKit2.
3614 2011-01-24 Ryosuke Niwa <rniwa@webkit.org>
3616 Reviewed by Eric Seidel.
3618 Stop instantiating legacy editing positions in InsertTextCommand, MoveSelectionCommand,
3619 ReplaceSelectionCommand, SelectionController, SpellChecker, TypingCommand, and markup.cpp
3620 https://bugs.webkit.org/show_bug.cgi?id=52676
3622 Stop instantiating legacy editing positions in the following files.
3624 * editing/InsertTextCommand.cpp:
3625 (WebCore::InsertTextCommand::prepareForTextInsertion):
3626 (WebCore::InsertTextCommand::performTrivialReplace):
3627 (WebCore::InsertTextCommand::input):
3628 (WebCore::InsertTextCommand::insertTab):
3629 * editing/MoveSelectionCommand.cpp:
3630 (WebCore::MoveSelectionCommand::doApply):
3631 * editing/ReplaceSelectionCommand.cpp:
3632 (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
3633 (WebCore::ReplaceSelectionCommand::mergeEndIfNeeded):
3634 (WebCore::ReplaceSelectionCommand::doApply):
3635 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR):
3636 (WebCore::ReplaceSelectionCommand::performTrivialReplace):
3637 * editing/SelectionController.cpp:
3638 (WebCore::SelectionController::setSelectionFromNone):
3639 * editing/SpellChecker.cpp:
3640 (WebCore::SpellChecker::didCheck):
3641 * editing/TypingCommand.cpp:
3642 (WebCore::TypingCommand::makeEditableRootEmpty):
3643 (WebCore::TypingCommand::deleteKeyPressed):
3644 (WebCore::TypingCommand::forwardDeleteKeyPressed):
3645 * editing/markup.cpp:
3646 (WebCore::StyledMarkupAccumulator::appendText):
3647 (WebCore::StyledMarkupAccumulator::serializeNodes):
3648 (WebCore::highestAncestorToWrapMarkup):
3649 (WebCore::createMarkup):
3651 2011-01-24 Peter Kasting <pkasting@google.com>
3653 Reviewed by Darin Adler.
3655 Roll back r67261 ("Don't fire onclick on middle clicks") due to
3657 https://bugs.webkit.org/show_bug.cgi?id=46733
3659 * html/HTMLAnchorElement.cpp:
3660 (WebCore::isLinkClick):
3661 * html/HTMLInputElement.cpp:
3662 (WebCore::HTMLInputElement::preDispatchEventHandler):
3663 (WebCore::HTMLInputElement::postDispatchEventHandler):
3664 (WebCore::HTMLInputElement::defaultEventHandler):
3665 * page/EventHandler.cpp:
3666 (WebCore::EventHandler::handleMouseDoubleClickEvent):
3667 (WebCore::EventHandler::handleMouseReleaseEvent):
3669 2011-01-24 Martin Robinson <mrobinson@igalia.com>
3671 Reviewed by Eric Seidel.
3673 [GTK] Many DOM XHTML tests time out
3674 https://bugs.webkit.org/show_bug.cgi?id=52553
3676 Properly handle the situation where a synchronous load fails before the inner
3677 event loop has started. In this case, we simply do not run the inner event loop,
3678 or else it will block indefinitely (since no GIO or libsoup callbacks will fire).
3680 * platform/network/soup/ResourceHandleSoup.cpp:
3681 (WebCore::ResourceHandle::loadResourceSynchronously): Bail out of a synchronous
3682 load if it fails up front.
3684 2011-01-24 Zhenyao Mo <zmo@google.com>
3686 Reviewed by Eric Seidel.
3688 Cleanup WebGLGetInfo and related get*Parameter helpers in WebGLRenderingContext
3689 https://bugs.webkit.org/show_bug.cgi?id=52338
3691 Removed the long/unsigned long types and corresponding get functions
3692 and use int/unsigned int instead.
3694 * bindings/js/JSWebGLRenderingContextCustom.cpp:
3696 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3697 (WebCore::toV8Object):
3698 * html/canvas/WebGLGetInfo.cpp:
3699 (WebCore::WebGLGetInfo::WebGLGetInfo):
3700 (WebCore::WebGLGetInfo::getInt):
3701 (WebCore::WebGLGetInfo::getUnsignedInt):
3702 * html/canvas/WebGLGetInfo.h:
3703 * html/canvas/WebGLRenderingContext.cpp:
3704 (WebCore::WebGLRenderingContext::getBufferParameter):
3705 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
3706 (WebCore::WebGLRenderingContext::getParameter):
3707 (WebCore::WebGLRenderingContext::getProgramParameter):
3708 (WebCore::WebGLRenderingContext::getRenderbufferParameter):
3709 (WebCore::WebGLRenderingContext::getShaderParameter):
3710 (WebCore::WebGLRenderingContext::getTexParameter):
3711 (WebCore::WebGLRenderingContext::getUniform):
3712 (WebCore::WebGLRenderingContext::getVertexAttrib):
3713 (WebCore::WebGLRenderingContext::getIntParameter):
3714 (WebCore::WebGLRenderingContext::getUnsignedIntParameter):
3715 * html/canvas/WebGLRenderingContext.h:
3717 2011-01-24 Zhenyao Mo <zmo@google.com>
3719 Reviewed by Darin Adler.
3721 Remove sizeInBytes from GraphicsContext3D's various implementations
3722 https://bugs.webkit.org/show_bug.cgi?id=52339
3724 * html/canvas/WebGLRenderingContext.cpp:
3725 (WebCore::WebGLRenderingContext::sizeInBytes):
3726 * platform/graphics/GraphicsContext3D.h:
3727 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3728 * platform/graphics/qt/GraphicsContext3DQt.cpp:
3730 2011-01-24 Adam Roben <aroben@apple.com>
3732 Windows Production build fix
3734 * WebCore.vcproj/WebCore.make: Update for move of WebCore into Source.
3736 2011-01-24 Anton Muhin <antonm@chromium.org>
3738 Reviewed by Nate Chapin.
3740 [v8] Refactoring: extract IntrusiveDOMWrapperMap into a seprate class and files.
3741 https://bugs.webkit.org/show_bug.cgi?id=52911
3743 Plain refactoring, covered by the existing tests.
3745 * WebCore.gypi: IntrusiveDOMWrapperMap.h added.
3746 * bindings/v8/DOMDataStore.cpp: IntrusiveDOMWrapperMap is moved out of DOMDataStore class.
3747 * bindings/v8/DOMDataStore.h: IntrusiveDOMWrapperMap is moved out of DOMDataStore class.
3748 * bindings/v8/IntrusiveDOMWrapperMap.h: Added.
3749 (WebCore::ChunkedTable::ChunkedTable):
3750 (WebCore::ChunkedTable::add):
3751 (WebCore::ChunkedTable::remove):
3752 (WebCore::ChunkedTable::clear):
3753 (WebCore::ChunkedTable::visit):
3754 (WebCore::ChunkedTable::Chunk::Chunk):
3755 (WebCore::ChunkedTable::clearEntries):
3756 (WebCore::ChunkedTable::visitEntries):
3757 (WebCore::IntrusiveDOMWrapperMap::IntrusiveDOMWrapperMap):
3758 (WebCore::IntrusiveDOMWrapperMap::get):
3759 (WebCore::IntrusiveDOMWrapperMap::set):
3760 (WebCore::IntrusiveDOMWrapperMap::contains):
3761 (WebCore::IntrusiveDOMWrapperMap::visit):
3762 (WebCore::IntrusiveDOMWrapperMap::removeIfPresent):
3763 (WebCore::IntrusiveDOMWrapperMap::clear):
3764 (WebCore::IntrusiveDOMWrapperMap::ChunkedTableTraits::move):
3765 (WebCore::IntrusiveDOMWrapperMap::ChunkedTableTraits::clear):
3766 (WebCore::IntrusiveDOMWrapperMap::ChunkedTableTraits::visit):
3767 * bindings/v8/StaticDOMDataStore.h: include added.
3769 2011-01-24 Shane Stephens <shanestephens@google.com>
3771 Reviewed by Chris Marrin.
3773 TransformationMatrix multiply operations apply operands in wrong order.
3774 https://bugs.webkit.org/show_bug.cgi?id=52780
3776 Rename TranformationMatrix::multLeft into multiply (the method does a multRight,
3779 Remove TransformationMatrix::multiply, which was actually doing a multLeft.
3781 Fix TransformationMatrix::operator* and operator*= such that the operand is
3782 applied to the right-hand side of the matrix that the method is called on.
3783 i.e., previously "a * b" used to compute "b * a", and "a *= b" used to store
3784 "b * a" in "a". This has now been fixed so "a * b" computes "a * b" and
3785 "a *= b" stores "a * b" in "a".
3787 Convert all call sites for these methods to provide operands in the correct order.
3789 No new tests as patch adds no new functionality.
3791 * css/WebKitCSSMatrix.cpp:
3792 (WebCore::WebKitCSSMatrix::multiply):
3793 * platform/graphics/transforms/Matrix3DTransformOperation.h:
3794 (WebCore::Matrix3DTransformOperation::apply):
3795 * platform/graphics/transforms/MatrixTransformOperation.h:
3796 (WebCore::MatrixTransformOperation::apply):
3797 * platform/graphics/transforms/TransformationMatrix.cpp:
3798 (WebCore::TransformationMatrix::scaleNonUniform):
3799 (WebCore::TransformationMatrix::scale3d):
3800 (WebCore::TransformationMatrix::rotate3d):
3801 (WebCore::TransformationMatrix::skew):
3802 (WebCore::TransformationMatrix::applyPerspective):
3803 (WebCore::TransformationMatrix::multiply):
3804 (WebCore::TransformationMatrix::recompose):
3805 * platform/graphics/transforms/TransformationMatrix.h:
3806 (WebCore::TransformationMatrix::operator*=):
3807 (WebCore::TransformationMatrix::operator*):
3808 * rendering/RenderLayer.cpp:
3809 (WebCore::transparencyClipBox):
3810 * rendering/RenderObject.cpp:
3811 (WebCore::RenderObject::getTransformFromContainer):
3812 * rendering/TransformState.cpp:
3813 (WebCore::TransformState::applyTransform):
3814 (WebCore::HitTestingTransformState::applyTransform):
3816 2011-01-24 Andrei Popescu <andreip@google.com>
3818 Reviewed by Nate Chapin.
3820 IndexedDatabase methods should not take arguments of type OptionsObject
3821 https://bugs.webkit.org/show_bug.cgi?id=53012
3823 This patch reverts all IDB methods, except IDBDatabase::createObjectStore and
3824 IDBObjectStore::createIndex, to using a plain list of arguments instead of
3825 grouping the various parameters inside a single OptionsObject argument.
3826 This decision was made on public-webapps@w3.org mailing list.
3828 We also add support (v8 only for now) for passing DOMStringList objects as arguments to native
3829 methods. The code for obtaining a DOMStringList object from a JS array of strings existed already
3830 in OptionsObject.cpp, I just copied it to V8Bindings.cpp and taught the v8 code generator how to
3833 * bindings/scripts/CodeGeneratorV8.pm:
3834 * bindings/v8/V8Binding.cpp:
3835 (WebCore::v8ValueToWebCoreDOMStringList):
3836 * bindings/v8/V8Binding.h:
3837 * storage/IDBDatabase.cpp:
3838 (WebCore::IDBDatabase::transaction):
3839 * storage/IDBDatabase.h:
3840 (WebCore::IDBDatabase::transaction):
3841 * storage/IDBDatabase.idl:
3842 * storage/IDBIndex.cpp:
3843 (WebCore::IDBIndex::openCursor):
3844 (WebCore::IDBIndex::openKeyCursor):
3845 * storage/IDBIndex.h:
3846 (WebCore::IDBIndex::openCursor):
3847 (WebCore::IDBIndex::openKeyCursor):
3848 * storage/IDBIndex.idl:
3849 * storage/IDBObjectStore.cpp:
3850 (WebCore::IDBObjectStore::openCursor):
3851 * storage/IDBObjectStore.h:
3852 (WebCore::IDBObjectStore::openCursor):
3853 * storage/IDBObjectStore.idl:
3855 2011-01-24 Pavel Feldman <pfeldman@chromium.org>
3857 Reviewed by Yury Semikhatsky.
3859 Web Inspector: extract dispatch API from network manager.
3860 https://bugs.webkit.org/show_bug.cgi?id=53009
3862 * WebCore.xcodeproj/project.pbxproj:
3863 * inspector/front-end/NetworkManager.js:
3864 (WebInspector.NetworkManager):
3865 (WebInspector.NetworkManager.prototype.reset):
3866 (WebInspector.NetworkManager.prototype.requestContent):
3867 (WebInspector.NetworkManager.prototype._processCachedResources):
3868 (WebInspector.NetworkDispatcher):
3869 (WebInspector.NetworkDispatcher.prototype._updateResourceWithRequest):
3870 (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
3871 (WebInspector.NetworkDispatcher.prototype._updateResourceWithCachedResource):
3872 (WebInspector.NetworkDispatcher.prototype.identifierForInitialRequest):
3873 (WebInspector.NetworkDispatcher.prototype.willSendRequest):
3874 (WebInspector.NetworkDispatcher.prototype.didReceiveResponse):
3875 (WebInspector.NetworkDispatcher.prototype.didLoadResourceFromMemoryCache):
3876 (WebInspector.NetworkDispatcher.prototype.didCommitLoadForFrame):
3877 (WebInspector.NetworkDispatcher.prototype.didCreateWebSocket):
3878 (WebInspector.NetworkDispatcher.prototype._appendRedirect):
3879 (WebInspector.NetworkDispatcher.prototype._startResource):
3880 (WebInspector.NetworkDispatcher.prototype._updateResource):
3881 (WebInspector.NetworkDispatcher.prototype._finishResource):
3882 (WebInspector.NetworkDispatcher.prototype._addFramesRecursively):
3883 (WebInspector.NetworkDispatcher.prototype._dispatchEventToListeners):
3884 (WebInspector.NetworkDispatcher.prototype._createResource):
3885 * inspector/front-end/Resource.js:
3886 (WebInspector.Resource.prototype._innerRequestContent):
3887 * inspector/front-end/ResourceTreeModel.js:
3888 (WebInspector.ResourceTreeModel):
3889 (WebInspector.ResourceTreeModel.prototype.reset):
3890 (WebInspector.ResourceTreeModel.prototype.unbindResourceURL):
3892 2011-01-24 Yury Semikhatsky <yurys@chromium.org>
3894 Reviewed by Pavel Feldman.
3896 Web Inspector: [JSC] remove ScriptDebugServer::pageCreated
3897 https://bugs.webkit.org/show_bug.cgi?id=53007
3899 It's impossible to create "provisional" inspector for pages which are
3900 not yet created so there is no need to listen for page creation in ScriptDebugServer.
3902 * bindings/js/ScriptDebugServer.cpp:
3903 * bindings/js/ScriptDebugServer.h:
3905 (WebCore::Page::Page):
3907 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
3909 Reviewed by Pavel Feldman.
3911 Web Inspector: [REGRESSION] AppCache view on resources panel is broken.
3912 https://bugs.webkit.org/show_bug.cgi?id=53002
3915 * inspector/front-end/ApplicationCacheItemsView.js:
3916 (WebInspector.ApplicationCacheItemsView.prototype._update):
3917 * inspector/front-end/DOMAgent.js:
3918 (WebInspector.ApplicationCacheDispatcher.getApplicationCachesAsync):
3920 2011-01-24 Andreas Kling <kling@webkit.org>
3922 Reviewed by Kenneth Rohde Christiansen.
3924 [Qt] Fix warnings about unregistering an invalid timer
3925 https://bugs.webkit.org/show_bug.cgi?id=53006
3927 The ShadowBuffer's purge timer ID was initialized with 0 which lead
3928 to us calling QObject::killTimer(0), causing some qWarnings.
3930 * platform/graphics/qt/ContextShadowQt.cpp:
3931 (WebCore::ShadowBuffer::ShadowBuffer):
3932 (WebCore::ShadowBuffer::schedulePurge):
3934 2011-01-21 Mikhail Naganov <mnaganov@chromium.org>
3936 Reviewed by Pavel Feldman.
3938 Web Inspector: [Chromium] Fix heap snapshot table sorting.
3940 Fix table sorting to avoid qsort instability artefacts.
3942 https://bugs.webkit.org/show_bug.cgi?id=52914
3944 * inspector/front-end/HeapSnapshotView.js:
3945 (WebInspector.HeapSnapshotView.prototype._sortData):
3946 (WebInspector.HeapSnapshotDataGridList.propertyComparator.comparator):
3947 (WebInspector.HeapSnapshotDataGridList.propertyComparator):
3949 2011-01-24 Mikhail Naganov <mnaganov@chromium.org>
3951 Reviewed by Yury Semikhatsky.
3953 Web Inspector: Find duplicate strings in localizedStrings.js, update it.
3955 https://bugs.webkit.org/show_bug.cgi?id=53005
3957 * English.lproj/localizedStrings.js:
3959 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
3961 Unreviewed, build fix for r76509.
3963 * inspector/InspectorDebuggerAgent.cpp:
3964 (WebCore::InspectorDebuggerAgent::setBreakpoint):
3966 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
3968 Unreviewed, build fix for r76509.
3970 * bindings/js/ScriptDebugServer.h:
3972 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
3974 Reviewed by Yury Semikhatsky.
3976 Web Inspector: set breakpoints by line:column.
3977 https://bugs.webkit.org/show_bug.cgi?id=52615
3983 * WebCore.vcproj/WebCore.vcproj:
3984 * WebCore.xcodeproj/project.pbxproj:
3985 * bindings/js/ScriptDebugServer.cpp:
3986 (WebCore::ScriptDebugServer::setBreakpoint):
3987 (WebCore::ScriptDebugServer::removeBreakpoint):
3988 (WebCore::ScriptDebugServer::hasBreakpoint):
3989 (WebCore::ScriptDebugServer::clearBreakpoints):
3990 * bindings/js/ScriptDebugServer.h:
3991 * bindings/v8/DebuggerScript.js:
3993 * bindings/v8/ScriptDebugServer.cpp:
3994 (WebCore::ScriptDebugServer::setBreakpoint):
3995 * bindings/v8/ScriptDebugServer.h:
3996 * inspector/Inspector.idl:
3997 * inspector/InspectorBrowserDebuggerAgent.cpp:
3998 (WebCore::InspectorBrowserDebuggerAgent::restoreStickyBreakpoint):
3999 * inspector/InspectorDebuggerAgent.cpp:
4000 (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
4001 (WebCore::InspectorDebuggerAgent::setBreakpoint):
4002 (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
4003 (WebCore::InspectorDebuggerAgent::didParseSource):
4004 * inspector/InspectorDebuggerAgent.h:
4005 * inspector/ScriptBreakpoint.cpp: Removed.
4006 * inspector/ScriptBreakpoint.h:
4007 (WebCore::ScriptBreakpoint::ScriptBreakpoint):
4008 * inspector/front-end/Breakpoint.js:
4009 (WebInspector.Breakpoint):
4010 (WebInspector.Breakpoint.prototype.get url):
4011 * inspector/front-end/BreakpointManager.js:
4012 (WebInspector.JavaScriptBreakpoint.prototype._serializeToJSON):
4013 * inspector/front-end/DebuggerModel.js:
4014 (WebInspector.DebuggerModel.prototype.continueToLine):
4015 (WebInspector.DebuggerModel.prototype.setBreakpoint):
4016 (WebInspector.DebuggerModel.prototype._breakpointSetOnBackend):
4017 (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
4019 2011-01-24 Peter Beverloo <peter@chromium.org>
4021 Reviewed by Pavel Feldman.
4023 Web Inspector: recognize application/x-font-woff as a valid mime-type.
4024 https://bugs.webkit.org/show_bug.cgi?id=52977
4028 * inspector/front-end/inspector.js:
4030 2011-01-24 Pavel Podivilov <podivilov@chromium.org>
4032 Unreviewed, fix for r76497.
4034 * inspector/front-end/ResourcesPanel.js:
4035 (WebInspector.ResourcesPanel.prototype.show):
4037 2011-01-24 Andreas Kling <kling@webkit.org>
4039 Reviewed by Tor Arne Vestbø.
4041 [Qt] Use rad2deg() from WTF instead of rolling our own.
4042 https://bugs.webkit.org/show_bug.cgi?id=52993
4044 * platform/graphics/qt/GraphicsContextQt.cpp:
4045 (WebCore::GraphicsContext::rotate):
4046 * platform/graphics/qt/PathQt.cpp:
4047 (WebCore::Path::addArc):
4049 2011-01-24 Sergio Villar Senin <svillar@igalia.com>
4051 Reviewed by Martin Robinson.
4053 [Gtk] ResourceHandleSoup: do not wait for streams to close to issue didFinishLoading
4054 https://bugs.webkit.org/show_bug.cgi?id=52885
4056 No new tests as it does not change functionality. We will not wait for
4057 the the input stream to close to issue didFinishLoading to
4058 WebCore. We expect a subtle performance improvement with this
4059 patch when loading complex web pages, as we wouldn't have to wait
4060 for the stream to close (which involves creating a thread among
4063 * platform/network/soup/ResourceHandleSoup.cpp:
4064 (WebCore::closeCallback):
4065 (WebCore::readCallback):
4067 2011-01-21 Pavel Podivilov <podivilov@chromium.org>
4069 Reviewed by Pavel Feldman.
4071 Web Inspector: eliminate SourceView and ScriptView classes.
4072 https://bugs.webkit.org/show_bug.cgi?id=52896
4074 SourceView and ScriptView delegate everything to SourceFrame and should be eliminated.
4077 * WebCore.vcproj/WebCore.vcproj:
4078 * inspector/front-end/GoToLineDialog.js:
4079 (WebInspector.GoToLineDialog.prototype._highlightSelectedLine):
4080 * inspector/front-end/ResourceView.js:
4081 (WebInspector.ResourceView.createResourceView):
4082 (WebInspector.ResourceView.resourceViewTypeMatchesResource):
4083 (WebInspector.SourceFrameContentProviderForResource): Moved from SourceView.
4084 * inspector/front-end/ResourcesPanel.js:
4085 (WebInspector.ResourcesPanel.prototype.show):
4086 (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
4087 (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
4088 * inspector/front-end/ScriptView.js: Removed.
4089 * inspector/front-end/ScriptsPanel.js:
4090 (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
4091 (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
4092 (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
4093 (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
4094 (WebInspector.ScriptsPanel.prototype._formatScript):
4095 (WebInspector.SourceFrameContentProviderForScript): Moved from ScriptView.
4096 * inspector/front-end/SourceFrame.js:
4097 (WebInspector.SourceFrame):
4098 (WebInspector.SourceFrame.prototype.show):
4099 (WebInspector.SourceFrame.prototype.hide):
4100 (WebInspector.SourceFrame.prototype.hasContent):
4101 (WebInspector.SourceFrame.prototype._createTextViewer):
4102 (WebInspector.SourceFrame.prototype.performSearch.doFindSearchMatches):
4103 (WebInspector.SourceFrame.prototype.performSearch):
4104 * inspector/front-end/SourceView.js: Removed.
4105 * inspector/front-end/WebKit.qrc:
4106 * inspector/front-end/inspector.html:
4108 2011-01-24 Andras Becsi <abecsi@webkit.org>
4110 Reviewed by Csaba Osztrogonác.
4112 [Qt] Move project files into Source
4113 https://bugs.webkit.org/show_bug.cgi?id=52891
4115 No new tests needed.
4120 2011-01-24 Kent Tamura <tkent@chromium.org>
4122 Unreviewed, trivial fix.
4124 Fix a Chromium-only assertion failure by r76491.
4125 https://bugs.webkit.org/show_bug.cgi?id=38982
4127 Separate icon loading from the FileChooser constructor in order to avoid
4128 ref() before adoptRef().
4130 * platform/FileChooser.cpp:
4131 (WebCore::FileChooser::FileChooser):
4132 (WebCore::FileChooser::initialize):
4133 (WebCore::FileChooser::create):
4134 * platform/FileChooser.h:
4136 2011-01-24 MORITA Hajime <morrita@google.com>
4138 Reviewed by Kent Tamura.
4140 TextControlInnerElement::m_shadowParent should be removed.
4141 https://bugs.webkit.org/show_bug.cgi?id=52998
4143 No new tests. No behavioral change.