1 2009-03-03 David Hyatt <hyatt@apple.com>
3 https://bugs.webkit.org/show_bug.cgi?id=24201, pathologically bad block layout.
5 Make sure to factor clear deltas into y position estimates. Also avoid doing the comparison of
6 the final position against the y position estimate until after the clear has happened. This gets rid
7 of some duplicated cut/pasted code and also ensures a layout delta only has to be put in once.
9 Reviewed by Dan Bernstein
11 Added fast/block/float/nested-clearance.html
13 * rendering/RenderBlock.cpp:
14 (WebCore::RenderBlock::collapseMargins):
15 (WebCore::RenderBlock::clearFloatsIfNeeded):
16 (WebCore::RenderBlock::estimateVerticalPosition):
17 (WebCore::RenderBlock::layoutBlockChildren):
18 (WebCore::RenderBlock::getClearDelta):
19 * rendering/RenderBlock.h:
21 2009-03-02 Kim Grönholm <kim.gronholm@nomovok.com>
23 Reviewed by Simon Hausmann.
25 Improvement to 3d transformations rendering in QtWebKit. QTransform is used
26 instead of QMatrix. This allows perspective transformations since QTransform is
29 * platform/graphics/qt/GraphicsContextQt.cpp: Use QTransform instead of QMatrix everywhere.
30 (WebCore::GraphicsContext::getCTM):
31 (WebCore::GraphicsContext::restorePlatformState):
32 (WebCore::GraphicsContext::fillPath):
33 (WebCore::GraphicsContext::strokePath):
34 (WebCore::GraphicsContext::fillRect):
35 (WebCore::GraphicsContext::translate):
36 (WebCore::GraphicsContext::rotate):
37 (WebCore::GraphicsContext::scale):
38 (WebCore::GraphicsContext::concatCTM):
39 * platform/graphics/qt/ImageQt.cpp:
40 (WebCore::Image::drawPattern):
41 * platform/graphics/qt/PathQt.cpp:
42 (WebCore::Path::translate):
43 (WebCore::Path::transform):
44 * platform/graphics/qt/PatternQt.cpp:
45 (WebCore::Pattern::createPlatformPattern):
46 * platform/graphics/qt/TransformationMatrixQt.cpp:
47 (WebCore::TransformationMatrix::operator QTransform): Replace the conversion operator
48 to QMatrix with one to QTransform.
49 * platform/graphics/transforms/TransformationMatrix.h:
50 * platform/graphics/qt/FontQt.cpp:
52 2009-02-24 Laszlo Gombos <laszlo.1.gombos@nokia.com>
54 Reviewed by Simon Hausmann.
56 https://bugs.webkit.org/show_bug.cgi?id=24151
57 Fix Qt/S60 build break
59 * platform/FileSystem.h: Create a default case for non-win and non-mac Qt builds
60 * platform/qt/FileSystemQt.cpp: Ditto
61 (WebCore::unloadModule):
63 2009-03-03 Mike Belshe <mike@belshe.com>
65 Reviewed by Alexey Proskuryakov.
67 https://bugs.webkit.org/show_bug.cgi?id=21939
68 Uninitialized ExceptionCode in DOMWindow::postMessage
70 * dom/MessagePort.cpp:
71 (WebCore::MessagePort::postMessage):
73 2009-03-03 David Kilzer <ddkilzer@apple.com>
75 <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase
77 Reviewed by Mark Rowe.
79 The fix is to add INSTALLHDRS_COPY_PHASE = YES and
80 INSTALLHDRS_SCRIPT_PHASE = YES to WebCore.xcconfig, then to make
81 sure various build phase scripts work with the installhdrs build
84 * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME
85 based on PLATFORM_NAME to work around the missing definition on
87 * Configurations/WebCore.xcconfig: Added
88 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR variable to simplify logic in
89 the "Generate Derived Sources" script. Added
90 INSTALLHDRS_COPY_PHASE = YES and INSTALLHDRS_SCRIPT_PHASE = YES.
92 * WebCore.xcodeproj/project.pbxproj:
93 - Added shell code to prevent running "Check For Global
94 Initializers", "Check For Exit Time Destructors" and "Check
95 For Weak VTables" scripts during the installhdrs build phase.
96 - Made "Generate Derived Sources" work for the installhdrs build
97 phase. Also simplified setting of CREATE_HASH_TABLE by using
98 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR.
100 2009-03-02 Adam Langley <agl@google.com>
102 Reviewed by Darin Fisher.
104 Chromium Linux: Switch to using Skia to render widgets.
106 In order to sandbox the Chromium renderer on Linux we need to remove
107 the X connection. GTK cannot render without an X connection so, for
108 now, we render widgets ourselves.
110 Previously didn't use anti-alias fonts in order to match Windows font
111 rendering exactly. This was helpful when bootstrapping our layout
112 tests. Now, however, we are ready to enable it.
114 https://bugs.webkit.org/show_bug.cgi?id=24244
116 * platform/chromium/ScrollbarThemeChromium.cpp:
117 (WebCore::ScrollbarThemeChromium::buttonSize):
118 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
119 (WebCore::ScrollbarThemeChromium::scrollbarThickness):
120 (WebCore::ScrollbarThemeChromium::paintTrackPiece):
121 (WebCore::ScrollbarThemeChromium::paintButton):
122 (WebCore::ScrollbarThemeChromium::paintThumb):
123 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
124 (WebCore::FontPlatformData::setupPaint):
125 * platform/graphics/skia/PlatformContextSkia.cpp:
126 (PlatformContextSkia::PlatformContextSkia):
127 (PlatformContextSkia::~PlatformContextSkia):
128 * platform/graphics/skia/PlatformContextSkia.h:
129 * rendering/RenderThemeChromiumGtk.cpp: Removed.
130 * rendering/RenderThemeChromiumGtk.h: Removed.
131 * rendering/RenderThemeChromiumLinux.cpp: Added.
132 * rendering/RenderThemeChromiumLinux.h: Added.
134 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
136 Reviewed by Darin Fisher.
138 https://bugs.webkit.org/show_bug.cgi?id=24261
141 Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
143 * bindings/v8/V8Binding.h:
144 (WebCore::toInt32): change return type to int
145 (WebCore::toFloat): change return type to float.
147 2009-03-03 Anders Carlsson <andersca@apple.com>
149 Reviewed by John Sullivan.
151 https://bugs.webkit.org/show_bug.cgi?id=22884
152 <rdar://problem/6449783>
153 modified layout test crashes Safari
155 Null check NPStream before dereferencing it.
157 * plugins/PluginView.cpp:
158 (WebCore::PluginView::destroyStream):
160 2009-03-03 Eric Carlson <eric.carlson@apple.com>
162 Reviewed by Simon Fraser.
164 Fix for <rdar://problem/6641045>
165 Don't call QTKit to get movie properties until movie metadata has been loaded.
167 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
168 (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
169 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
170 (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
171 (WebCore::MediaPlayerPrivate::play): Ditto.
172 (WebCore::MediaPlayerPrivate::pause): Ditto.
173 (WebCore::MediaPlayerPrivate::duration): Ditto.
174 (WebCore::MediaPlayerPrivate::currentTime): Ditto.
175 (WebCore::MediaPlayerPrivate::seek): Ditto.
176 (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
177 (WebCore::MediaPlayerPrivate::paused): Ditto.
178 (WebCore::MediaPlayerPrivate::seeking): Ditto.
179 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
180 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
181 (WebCore::MediaPlayerPrivate::setVolume): Ditto.
182 (WebCore::MediaPlayerPrivate::setRate): Ditto.
183 (WebCore::MediaPlayerPrivate::dataRate): Ditto.
184 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
185 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
187 2009-03-03 Kevin McCullough <kmccullough@apple.com>
192 (WebCore::Console::profile):
194 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
196 Reviewed by Darin Fisher.
198 https://bugs.webkit.org/show_bug.cgi?id=23657
199 Remove Database API callback IDLs from the project.
200 They were removed in r40633.
202 * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
204 2009-03-03 Kevin McCullough <kmccullough@apple.com>
206 Reviewed by Oliver Hunt.
208 <rdar://problem/6639110> console.profile() doesn't work without a title
211 (WebCore::Console::profile): If there is no title assume this is a user
212 initiated profile and give it the next incremented title name.
214 2009-03-03 Timothy Hatcher <timothy@apple.com>
216 Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
217 the console code and refactored things to have fewer code paths and duplication.
219 rdar://problem/6367127
220 https://bugs.webkit.org/show_bug.cgi?id=24329
222 Reviewed by Kevin McCullough.
224 Test: manual-tests/inspector/console-dir.html
226 * bindings/js/JSInspectedObjectWrapper.cpp:
227 (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
228 to fix an ASSERT about using a wrapper from the wrong ExecState.
229 * bindings/js/JSQuarantinedObjectWrapper.cpp:
230 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
231 (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
232 * inspector/front-end/Console.js:
233 (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
234 When forceObjectFormat is true, the only formatter used is _formatobject.
235 (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
236 (WebInspector.Console.prototype._formatstring): Ditto.
237 (WebInspector.Console.prototype._formatregexp): Ditto.
238 (WebInspector.Console.prototype._formatarray): Ditto.
239 (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
240 (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
241 (WebInspector.Console.prototype._formaterror): Remove the inline argument.
242 (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
243 simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
244 (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
245 (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
246 (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
247 (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
248 * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
249 * inspector/front-end/utilities.js:
250 (Object.type): Return "node" for Node objects.
251 (Object.describe): Handle the "node" type.
253 (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
254 (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
256 (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
258 2009-03-03 Scott Violet <sky@google.com>
260 Reviewed by Eric Seidel.
262 https://bugs.webkit.org/show_bug.cgi?id=24325
263 Crash on replacing document contents during drop.
265 Makes sure a node is in the document during a move before using it.
267 Test: fast/events/crash-on-mutate-during-drop.html
269 * editing/MoveSelectionCommand.cpp:
270 (WebCore::MoveSelectionCommand::doApply):
272 2009-03-03 Jungshik Shin <jshin@chromium.org>
274 Reviewed by Eric Seidel.
276 https://bugs.webkit.org/show_bug.cgi?id=23028
277 Enable dynamic web font support to Chromium on Windows.
278 Files that were omitted by mistake in the latest patch
281 * loader/CachedFont.cpp:
282 (WebCore::CachedFont::~CachedFont):
283 (WebCore::CachedFont::ensureCustomFontData):
284 (WebCore::CachedFont::platformDataFromCustomData):
285 (WebCore::CachedFont::allClientsRemoved):
286 * platform/graphics/chromium/FontCustomPlatformData.cpp:
287 (WebCore::EOTStream::EOTStream):
288 (WebCore::createFontCustomPlatformData):
289 * platform/graphics/win/FontCustomPlatformData.cpp:
290 (WebCore::EOTStream::EOTStream):
291 (WebCore::createFontCustomPlatformData):
293 2009-03-03 Gustavo Noronha Silva <gns@gnome.org>
295 Reviewed by Alexey Proskuryakov.
297 https://bugs.webkit.org/show_bug.cgi?id=16826
298 [Gtk] Implement WebKitDownload
300 Make the Soup backend able to handle requests without a frame,
301 since we may have such things now that we support downloads.
303 * platform/network/ResourceHandleInternal.h:
304 * platform/network/soup/ResourceHandleSoup.cpp:
305 (WebCore::ResourceHandle::start):
307 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
309 Reviewed by Eric Seidel.
311 https://bugs.webkit.org/show_bug.cgi?id=24331
312 Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
314 * bindings/v8/custom/V8AttrCustom.cpp: Added.
315 * bindings/v8/custom/V8CustomBinding.cpp: Added.
316 * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
317 * bindings/v8/custom/V8ElementCustom.cpp: Added.
318 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
319 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
321 2009-03-03 Brady Eidson <beidson@apple.com>
323 Reviewed by Darin Adler
325 <rdar://problem/6616664> - Quick looks of various file types is broken
327 In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
328 for non-HTTP loads when the underlying ResourceRequest changed. Unfortunately it was a little
329 overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
331 Partially reverted behavior to always set the mainDocumentURL in situations when we would've
334 * loader/FrameLoader.cpp:
335 (WebCore::FrameLoader::addExtraFieldsToRequest):
337 * platform/network/ResourceRequestBase.cpp:
338 (WebCore::ResourceRequestBase::setMainDocumentURL):
340 2009-03-03 Chris Marrin <cmarrin@apple.com>
342 Reviewed by Simon Fraser.
344 https://bugs.webkit.org/show_bug.cgi?id=24256
346 Added a WebCoreForceSoftwareAnimation flag.
348 * platform/graphics/mac/GraphicsLayerCA.mm:
349 (WebCore::forceSoftwareAnimation):
350 (WebCore::GraphicsLayerCA::setOpacity):
351 (WebCore::GraphicsLayerCA::animateTransform):
352 (WebCore::GraphicsLayerCA::animateFloat):
354 2009-03-02 Chris Marrin <cmarrin@apple.com>
356 Reviewed by Sam Weinig.
358 https://bugs.webkit.org/show_bug.cgi?id=24257
360 Added prototype properties for several classes with constructors that
361 were missing them, including the one mentioned in the bug.
363 Test: fast/dom/Window/custom-constructors.html
365 * bindings/js/JSAudioConstructor.cpp:
366 (WebCore::JSAudioConstructor::JSAudioConstructor):
367 * bindings/js/JSDOMWindowBase.cpp:
368 (jsDOMWindowBaseWebKitCSSMatrix):
369 * bindings/js/JSImageConstructor.cpp:
370 (WebCore::JSImageConstructor::JSImageConstructor):
371 * bindings/js/JSOptionConstructor.cpp:
372 (WebCore::JSOptionConstructor::JSOptionConstructor):
373 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
374 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
375 * bindings/js/JSWebKitCSSMatrixConstructor.h:
376 * bindings/js/JSWebKitPointConstructor.cpp:
377 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
378 * bindings/js/JSWorkerConstructor.cpp:
379 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
381 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
383 Reviewed by Darin Fisher.
385 https://bugs.webkit.org/show_bug.cgi?id=24321
386 Add V8 bindings headers.
388 * bindings/v8/V8Binding.h: Added.
389 * bindings/v8/V8Proxy.h: Added.
390 * bindings/v8/custom/V8CustomBinding.h: Added.
391 * bindings/v8/custom/V8CustomEventListener.h: Added.
393 2009-03-03 Jungshik Shin <jshin@chromium.org>
395 Reviewed by Eric Seidel.
397 https://bugs.webkit.org/show_bug.cgi?id=23803
398 Fix an 'off-by-1' error in ChromiumWin's font fallback.
400 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
401 (WebCore::FontCache::getFontDataForCharacters):
403 2009-03-03 Jungshik Shin <jshin@chromium.org>
405 Reviewed by Eric Seidel.
407 http://bugs.webkit.org/show_bug.cgi?id=23028
408 Enable dynamic web font support to Chromium on Windows: Part 1
409 - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
410 from platform/graphics/win because both Windows port and Chromium Windows
412 - Adjust WebCore.vcproj accordingly.
414 * WebCore.vcproj/WebCore.vcproj:
415 * platform/graphics/opentype: Added.
416 * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
417 * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
418 * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
419 * platform/graphics/win/OpenTypeUtilities.h: Removed.
421 2009-03-03 Simon Fraser <simon.fraser@apple.com>
423 Reviewed by Dave Hyatt
425 https://bugs.webkit.org/show_bug.cgi?id=24312
427 Take 3D transforms into account when hit testing:
429 1. Maintain a bit on each RenderLayer that is set when the layer
430 has 3d descendants, so that we know when to fall into the slow
433 2. Make a ref-counted HitTestingTransformState, which is used to store
434 an accumulated transform, and the hit test point, and hitTestRect
435 in the plane of the ancestor non-3d ('flattening') layer.
437 It's ref-counted so we can heap allocate it (to avoid stack bloat),
438 and avoid copying when hitTestLayer calls itself after applying the transform.
440 3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
441 3D transforms, or to do deep depth-testing when traversing a preserves-3d
442 hierarchy. When hit, layers compute a z-offset from the ancestor flattening
443 layer, which allows for correct depth testing.
445 The existing early-return codepath is unaffected when there are no 3d transforms
448 * rendering/RenderLayer.cpp:
449 (WebCore::RenderLayer::RenderLayer):
450 (WebCore::RenderLayer::updateTransform):
451 (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
452 (WebCore::RenderLayer::update3DTransformedDescendantStatus):
453 (WebCore::RenderLayer::hitTest):
454 (WebCore::computeZOffset):
455 (WebCore::RenderLayer::createLocalTransformState):
456 (WebCore::RenderLayer::hitTestLayer):
457 (WebCore::RenderLayer::hitTestContents):
458 * rendering/RenderLayer.h:
459 (WebCore::RenderLayer::preserves3D):
460 (WebCore::RenderLayer::has3DTransform):
461 (WebCore::RenderLayer::setHas3DTransformedDescendant):
462 (WebCore::RenderLayer::has3DTransformedDescendant):
463 * rendering/RenderLayerBacking.cpp:
464 * rendering/TransformState.cpp:
465 (WebCore::TransformState::flatten):
466 (WebCore::TransformState::mappedPoint):
467 (WebCore::HitTestingTransformState::move):
468 (WebCore::HitTestingTransformState::applyTransform):
469 (WebCore::HitTestingTransformState::flatten):
470 (WebCore::HitTestingTransformState::mappedPoint):
471 (WebCore::HitTestingTransformState::mappedQuad):
472 * rendering/TransformState.h:
473 (WebCore::TransformState::TransformState):
474 (WebCore::HitTestingTransformState::create):
475 (WebCore::HitTestingTransformState::move):
476 (WebCore::HitTestingTransformState::HitTestingTransformState):
478 2009-03-03 Brett Wilson <brettw@chromium.org>
480 Fix uninitialized memory reads in the Chromium Windows transparency
481 code that were identified by Purify,
483 Reviewed by Darin Fisher.
485 * platform/graphics/chromium/TransparencyWin.cpp:
486 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
487 (WebCore::TransparencyWin::initializeNewContext):
489 2009-03-03 Simon Fraser <simon.fraser@apple.com>
491 Reviewed by Dave Hyatt
493 https://bugs.webkit.org/show_bug.cgi?id=24312
495 Factor the code that compute a transform relative to the container
496 into RenderObject::transformFromContainer().
498 * rendering/RenderBox.cpp:
499 (WebCore::RenderBox::mapLocalToAbsolutePoint):
500 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
501 * rendering/RenderObject.cpp:
502 (WebCore::RenderObject::transformFromContainer):
503 * rendering/RenderObject.h:
505 2009-03-03 Simon Fraser <simon.fraser@apple.com>
507 Reviewed by Dave Hyatt
509 https://bugs.webkit.org/show_bug.cgi?id=24317
511 Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
512 the superclass found a node, otherwise we set the innerNode of the
513 HitTestResult, but don't actually report that we found a hit.
515 * rendering/RenderTextControlMultiLine.cpp:
516 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
518 2009-03-03 Onne Gorter <onne.gorter@avinity.net>
520 Reviewed by Anders Carlsson.
522 https://bugs.webkit.org/show_bug.cgi?id=23707
523 resizing plugins does not work, because the plugin never gets informed
525 Make gtk plugins resize correctly, by sending them the setwindow event
526 correctly. Also ensure that all plugin eventing is done with correct
527 locking/calling. Mostly copied from mac implementation.
529 manual test: manual-tests/gtk/plugin-resize-scroll.html
531 * plugins/PluginView.h:
532 * plugins/gtk/PluginViewGtk.cpp:
533 (WebCore::PluginView::dispatchNPEvent):
534 ensure locking/calling for NPEvents
535 (WebCore::PluginView::updatePluginWidget):
536 if something changed, let setNPWindowIfNeeded handle it
537 (WebCore::PluginView::paint):
538 (WebCore::PluginView::handleKeyboardEvent):
539 (WebCore::PluginView::handleMouseEvent):
540 ensure calling conventions
541 (WebCore::PluginView::setNPWindowRect):
542 just pass control to setNPWindowIfNeeded
543 (WebCore::PluginView::setNPWindowIfNeeded):
544 event the plugin correctly of new window
545 (WebCore::PluginView::init):
546 init through the new setup
548 2009-03-03 Mike Belshe <mike@belshe.com>
550 Reviewed by Darin Fisher.
552 https://bugs.webkit.org/show_bug.cgi?id=24311
553 Make IDL returning DOMObject use [V8Custom]
556 * html/HTMLCanvasElement.idl:
558 2009-03-02 Simon Fraser <simon.fraser@apple.com>
560 Reviewed by Adele Peterson
562 https://bugs.webkit.org/show_bug.cgi?id=24313
564 If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
565 HitTestResult, then it had better well return |true|. And m_innerBlock
566 could never have been set as the hit node by the superclass, because
567 the superclass knows nothing about m_innerBlock.
569 Test: fast/forms/input-hit-test-border.html
571 * rendering/RenderTextControlSingleLine.cpp:
572 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
574 2009-03-02 Sam Weinig <sam@webkit.org>
576 Reviewed by Mark Rowe.
578 Enable Geolocation (except on Tiger and Leopard).
580 * Configurations/WebCore.xcconfig:
582 2009-03-02 Ojan Vafai <ojan@chromium.org>
584 Reviewed by Adele Peterson.
586 Fix https://bugs.webkit.org/show_bug.cgi?id=24307
587 Null out m_highlightedNode on hideHighlight().
588 Ran WebCore/manual-tests/inspector/highlight-nodes.html.
590 * inspector/InspectorController.cpp:
591 (WebCore::InspectorController::hideHighlight):
593 2009-03-02 Sam Weinig <sam@webkit.org>
595 Reviewed by Geoffrey Garen.
597 Fix for <rdar://problem/6507404> Add Geolocation support.
599 This is not yet turned on for any Mac platform.
601 * WebCore.xcodeproj/project.pbxproj:
603 (WebCore::Chrome::shouldAllowGeolocationForFrame):
605 * page/ChromeClient.h:
606 (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
607 * page/Geolocation.cpp:
608 (WebCore::Geolocation::Geolocation):
609 (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
610 will not be alive at this point.
611 (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
612 return a PERMISSION_DENIED if not.
613 (WebCore::Geolocation::watchPosition): Ditto.
614 (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
615 to allow geolocation and cache the result.
616 * page/Geolocation.h:
617 (WebCore::Geolocation::):
618 * platform/GeolocationService.cpp:
619 * platform/GeolocationService.h:
620 (WebCore::GeolocationService::~GeolocationService):
621 (WebCore::GeolocationService::stopUpdating):
622 * platform/mac/GeolocationServiceMac.h: Added.
623 (WebCore::GeolocationServiceMac::lastPosition):
624 (WebCore::GeolocationServiceMac::lastError):
625 * platform/mac/GeolocationServiceMac.mm: Added.
626 (WebCore::GeolocationService::create):
627 (WebCore::GeolocationServiceMac::GeolocationServiceMac):
628 (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
629 (WebCore::GeolocationServiceMac::startUpdating):
630 (WebCore::GeolocationServiceMac::stopUpdating):
631 (WebCore::GeolocationServiceMac::suspend):
632 (WebCore::GeolocationServiceMac::resume):
633 (WebCore::GeolocationServiceMac::positionChanged):
634 (WebCore::GeolocationServiceMac::errorOccurred):
635 (-[WebCoreCoreLocationObserver initWithCallback:]):
636 (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
637 (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
639 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
641 Build fixes for wxWidgets Mac trunk build.
643 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
644 (wxFontProperties::wxFontProperties):
648 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
650 wxGTK missing header build fix.
652 * platform/wx/wxcode/gtk/fontprops.cpp:
654 2009-03-02 Dan Bernstein <mitz@apple.com>
656 Reviewed by Adam Roben.
658 - fix https://bugs.webkit.org/show_bug.cgi?id=21811
659 REGRESSION: Windows Build Not Selecting Proper Font
661 * platform/graphics/win/FontCacheWin.cpp:
662 (WebCore::createGDIFont): Added back code to verify that the created
663 HFONT has the requested face name.
665 2009-03-02 Timothy Hatcher <timothy@apple.com>
667 Fixes a regression caused by splitting the input and output of console commands.
669 https://bugs.webkit.org/show_bug.cgi?id=24293
671 Reviewed by Kevin McCullough.
673 * inspector/front-end/Console.js:
674 (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
675 normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
677 2009-03-02 Timothy Hatcher <timothy@apple.com>
679 Make exception messages and logged Error objects display consistently.
681 https://bugs.webkit.org/show_bug.cgi?id=18983
683 Reviewed by Adam Roben.
685 * English.lproj/localizedStrings.js: Remove a string for line numbers.
686 * inspector/front-end/Console.js:
687 (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
688 boolean to the ConsoleCommandResult constructor and don't pass level.
689 (WebInspector.Console.prototype._formatnode): Fix a className typo.
690 (WebInspector.Console.prototype._formaterror): Add an error-message
691 classed span around the message to show in red and remove the
692 console-message-url class from the link so it doesn't float right.
693 Instead enclose the link in parentheses and use displayNameForURL
694 to shorten the URL in the link.
695 (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
696 how line numbers are shown since link underlining a string with
697 parentheses looks bad.
698 (WebInspector.ConsoleCommandResult): Take an exception boolean flag
699 instead of a level and get line and URL based on that flag.
700 * inspector/front-end/inspector.css: Tweaks to the styles.
702 2009-03-02 Ojan Vafai <ojan@chromium.org>
704 Reviewed by Adele Peterson.
706 Bug 24048: extra windows button padding doesn't apply when there's no appearance
707 <https://bugs.webkit.org/show_bug.cgi?id=24048>
709 Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
711 No tests added as existing tests already cover this behavior.
713 * rendering/RenderButton.cpp:
714 (WebCore::RenderButton::setupInnerStyle):
715 * rendering/RenderTheme.cpp:
716 * rendering/RenderTheme.h:
717 (WebCore::RenderTheme::buttonInternalPaddingLeft):
718 (WebCore::RenderTheme::buttonInternalPaddingRight):
719 (WebCore::RenderTheme::buttonInternalPaddingTop):
720 * rendering/RenderThemeChromiumGtk.cpp:
721 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
722 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
723 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
724 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
725 * rendering/RenderThemeChromiumGtk.h:
726 * rendering/RenderThemeChromiumWin.cpp:
727 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
728 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
729 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
730 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
731 * rendering/RenderThemeChromiumWin.h:
732 * rendering/RenderThemeWin.cpp:
733 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
734 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
735 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
736 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
737 * rendering/RenderThemeWin.h:
739 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
741 Build fix for Qt port. Remove unnecessary assert.
743 * platform/graphics/qt/ImageBufferQt.cpp:
744 (WebCore::ImageBuffer::putImageData):
746 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
748 Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
750 https://bugs.webkit.org/show_bug.cgi?id=24227
751 Ensure that the checkForSolidColor() optimization is correctly triggered
752 for all cases of drawPattern. Currently, the optimization was not triggered
753 when the check had not been previously performed via a request for the
754 image's NativeImagePtr.
756 Implement the Qt version of the checkForSolidColor() method. Combined with
757 the bug fix this reduces the time it takes to draw a repeating background
758 of a 1x1 image from ~50msecs to ~0msecs on my machine.
760 * platform/graphics/BitmapImage.cpp:
761 (WebCore::BitmapImage::BitmapImage):
762 * platform/graphics/BitmapImage.h:
763 (WebCore::BitmapImage::mayFillWithSolidColor):
764 * platform/graphics/Image.h:
765 (WebCore::Image::mayFillWithSolidColor):
766 * platform/graphics/cairo/ImageCairo.cpp:
767 (WebCore::BitmapImage::BitmapImage):
768 (WebCore::BitmapImage::checkForSolidColor):
769 * platform/graphics/cg/ImageCG.cpp:
770 (WebCore::BitmapImage::BitmapImage):
771 (WebCore::BitmapImage::checkForSolidColor):
772 * platform/graphics/qt/ImageQt.cpp:
773 (WebCore::BitmapImage::checkForSolidColor):
774 * platform/graphics/skia/ImageSkia.cpp:
775 (WebCore::BitmapImage::checkForSolidColor):
776 * platform/graphics/wx/ImageWx.cpp:
777 (WebCore::BitmapImage::checkForSolidColor):
779 2009-03-02 Gustavo Noronha Silva <gns@gnome.org>
781 Unreviewed build fix; adding missing files to EXTRA_DIST, so that
782 they show up in the tarball.
786 2009-03-02 Dirk Schulze <krit@webkit.org>
788 Reviewed by Holger Freyther.
790 Added putImageData to Qt. Discussed with Ariya Hidayat.
792 [Qt] lacks putImageData support in Canvas
793 https://bugs.webkit.org/show_bug.cgi?id=22186
795 * platform/graphics/qt/ImageBufferQt.cpp:
796 (WebCore::ImageBuffer::putImageData):
798 2009-03-02 Timothy Hatcher <timothy@apple.com>
800 Show exception messages again when evaluating bad expressions in the
801 Web Inspector's console.
803 https://bugs.webkit.org/show_bug.cgi?id=19890
805 Reviewed by Oliver Hunt.
807 * bindings/js/JSQuarantinedObjectWrapper.cpp:
808 (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
809 Fix the order in which the exception is set and cleared now that the
810 exception is stored in the shared GlobalData, not per ExecState.
812 2009-02-28 Timothy Hatcher <timothy@apple.com>
814 Make input in the Web Inspector console print before any output
815 that might be added by the called function.
817 https://bugs.webkit.org/show_bug.cgi?id=19931
819 Reviewed by Oliver Hunt.
821 * inspector/front-end/Console.js:
822 (WebInspector.Console.prototype._enterKeyPressed): Add the command
823 message before evaluating the result. Associate the originating
824 command to the result, so if they are adjacent there is no divider.
825 (WebInspector.ConsoleCommand): No longer take a result.
826 (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
827 code removed since it isn't used now.
828 (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
829 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
830 Call the ConsoleMessage toMessageElement and add a style class.
831 * inspector/front-end/inspector.css: Add a new style class for
832 adjacent results to hide the divider. Also tweak the position of
833 the disclosure triangle for objects to not use the left margin.
835 2009-03-01 Chris Fleizach <cfleizach@apple.com>
837 Reviewed by Oliver Hunt.
839 Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
840 <https://bugs.webkit.org/show_bug.cgi?id=24282>
842 When fetching an array of elements with a range, attachment views need to be returned
843 instead of the actual attachment.
845 * page/mac/AccessibilityObjectWrapper.mm:
846 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
847 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
849 2009-03-01 Ojan Vafai <ojan@chromium.org>
851 Reviewed by Eric Seidel.
853 Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
854 <https://bugs.webkit.org/show_bug.cgi?id=24251>
856 Make RenderObject::positionForCoordinate non-virtual and
857 RenderObject::positionForPoint virtual in preparation for
858 removing positionFor* from RenderObject/RenderText.
861 (WebCore::Frame::visiblePositionForPoint):
862 * rendering/RenderBR.cpp:
863 (WebCore::RenderBR::positionForPoint):
864 * rendering/RenderBR.h:
865 * rendering/RenderBlock.cpp:
866 (WebCore::RenderBlock::positionForPoint):
867 * rendering/RenderBlock.h:
868 * rendering/RenderBox.cpp:
869 (WebCore::RenderBox::positionForPoint):
870 * rendering/RenderBox.h:
871 * rendering/RenderInline.cpp:
872 (WebCore::RenderInline::positionForPoint):
873 * rendering/RenderInline.h:
874 * rendering/RenderObject.cpp:
875 (WebCore::RenderObject::positionForCoordinates):
876 (WebCore::RenderObject::positionForPoint):
877 * rendering/RenderObject.h:
878 * rendering/RenderReplaced.cpp:
879 (WebCore::RenderReplaced::positionForPoint):
880 * rendering/RenderReplaced.h:
881 * rendering/RenderSVGInlineText.cpp:
882 (WebCore::RenderSVGInlineText::positionForPoint):
883 * rendering/RenderSVGInlineText.h:
884 * rendering/RenderText.cpp:
885 (WebCore::RenderText::positionForPoint):
886 * rendering/RenderText.h:
888 2009-03-01 Larry Ewing <lewing@novell.com>
890 Reviewed by Alexey Proskuryakov.
892 https://bugs.webkit.org/show_bug.cgi?id=24080
893 NPN_GetValue casting to the wrong type and writing outside bounds
895 Make sure to cast the value to the correct type so that only
896 memory owned by the value is written to.
898 * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic):
899 * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
900 * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic):
901 (PluginView::getValue):
903 2009-03-01 Jeremy Moskovich <jeremy@chromium.org>
905 Reviewed by Simon Fraser.
907 https://bugs.webkit.org/show_bug.cgi?id=24197 and
908 https://bugs.webkit.org/show_bug.cgi?id=23512
910 The Windows version of cgColor() is conditionally compiled using
911 !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
912 can use the OS X version instead of the Windows version.
914 Also rename cgColor() -> createCGColor()
916 No observable change in behavior, so no test.
918 * platform/graphics/Color.h:
919 * platform/graphics/cg/ColorCG.cpp:
920 (WebCore::createCGColor):
921 * platform/graphics/cg/GraphicsContextCG.cpp:
922 (WebCore::GraphicsContext::setPlatformShadow):
923 * platform/graphics/mac/ColorMac.mm:
924 (WebCore::createCGColor):
925 * platform/graphics/mac/GraphicsContextMac.mm:
926 (WebCore::GraphicsContext::drawFocusRing):
927 * platform/graphics/mac/GraphicsLayerCA.mm:
928 (WebCore::setLayerBorderColor):
929 (WebCore::setLayerBackgroundColor):
930 (WebCore::GraphicsLayerCA::setBackgroundColor):
931 * platform/graphics/win/GraphicsContextCGWin.cpp:
932 (WebCore::GraphicsContext::drawFocusRing):
933 * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
936 2009-03-01 David Levin <levin@chromium.org>
938 Reviewed by Alexey Proskuryakov.
940 Bug 24271: XMLHttpRequest needs js bindings for Workers.
941 <https://bugs.webkit.org/show_bug.cgi?id=24271>
943 Tests: http/tests/xmlhttprequest/workers/methods-async.html
944 http/tests/xmlhttprequest/workers/methods.html
946 * bindings/js/JSWorkerContextBase.cpp:
947 (WebCore::JSWorkerContextBase::getOwnPropertySlot):
948 (jsWorkerContextBaseXMLHttpRequest):
949 (setJSWorkerContextBaseXMLHttpRequest):
950 Expose XMLHttpRequest to Workers.
952 * bindings/js/JSWorkerContextBase.h:
954 * bindings/js/JSXMLHttpRequestConstructor.cpp:
955 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
956 (WebCore::constructXMLHttpRequest):
957 (WebCore::JSXMLHttpRequestConstructor::mark):
958 Removed the dependencies on Document.
960 * bindings/js/JSXMLHttpRequestConstructor.h:
961 (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
962 * dom/EventException.idl:
963 * dom/EventListener.idl:
964 Chnage to have the NoStaticTables attribute since they are used from XHR.
966 * loader/WorkerThreadableLoader.cpp:
967 (WebCore::workerContextDidFinishLoading):
968 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
969 Fixed identifier to be unsigned long.
971 * loader/WorkerThreadableLoader.h:
972 * workers/WorkerThread.cpp:
973 (WebCore::WorkerThread::workerThread):
974 Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
976 * xml/XMLHttpRequestUpload.cpp:
978 * xml/XMLHttpRequest.idl:
979 * xml/XMLHttpRequestException.idl:
980 * xml/XMLHttpRequestProgressEvent.idl:
981 * xml/XMLHttpRequestUpload.idl:
982 Chnage to have the NoStaticTables attribute since they are used from XHR.
984 2009-03-01 Horia Olaru <olaru@adobe.com>
986 Adding manual debugger test cases for bug.
988 https://bugs.webkit.org/show_bug.cgi?id=21073
990 Reviewed by Kevin McCullough.
992 * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
993 * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
994 * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
995 * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
996 * manual-tests/inspector/resources/loop-statements.js: Added.
998 2009-03-01 Dan Bernstein <mitz@apple.com>
1000 Reviewed by Darin Adler.
1002 - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
1004 Test: fast/events/scroll-during-zoom-change.html
1007 (WebCore::Document::recalcStyle): Pause scheduled events during style
1008 reclaculation. Changes to the zoom property result in scroll events
1009 being generated during style recalc, and those events need to be
1010 deferred until the render tree is consistent.
1011 * page/FrameView.cpp:
1012 (WebCore::FrameView::layout): Changed to account for a case in which the
1013 post-layout tasks trigger a nested layout, which reactivates the
1014 post-layout task timer.
1016 2009-03-01 Ross Boucher <rboucher@gmail.com>
1018 Alphabetically sort scripts in the Script's panel file popup menu.
1020 https://bugs.webkit.org/show_bug.cgi?id=23395
1022 Reviewed by Timothy Hatcher.
1024 * inspector/front-end/ScriptsPanel.js:
1025 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
1026 * inspector/front-end/utilities.js:
1027 (insertionIndexForObjectInListSortedByFunction):
1028 (indexOfObjectInListSortedByFunction):
1030 2009-03-01 Yael Aharon <yael.aharon@nokia.com>
1032 Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
1033 when creating databases, localStorage or sessionStorage. Changing document.domain
1034 should have no affect on databases, localStorage and sessionStorage in Web Inspector.
1036 https://bugs.webkit.org/show_bug.cgi?id=23844
1038 Reviewed by Timothy Hatcher.
1040 * inspector/InspectorController.cpp:
1041 (WebCore::InspectorController::addDOMStorageScriptResource):
1042 (WebCore::InspectorController::didUseDOMStorage):
1043 * storage/Database.cpp:
1044 (WebCore::Database::openDatabase):
1046 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
1048 Reviewed by Holger Freyther.
1050 Avoid leaking errors when reporting GIO errors.
1052 * platform/network/soup/ResourceHandleSoup.cpp:
1053 (WebCore::readCallback):
1054 (WebCore::openCallback):
1055 (WebCore::queryInfoCallback):
1057 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
1059 Reviewed by Holger Freyther.
1061 Fixes crash when the GIO backend is given the URI for a directory.
1063 * platform/network/soup/ResourceHandleSoup.cpp:
1064 (WebCore::networkErrorForFile):
1066 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
1068 Reviewed by Darin Fisher.
1070 https://bugs.webkit.org/show_bug.cgi?id=24261
1071 Fix V8 custom binding scrubbing error.
1073 Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
1074 Test: traversal/exception-forwarding.html
1075 TesT: traversal/stay-within-root.html
1077 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
1078 * bindings/v8/custom/V8NodeIteratorCustom.cpp:
1079 (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
1080 * bindings/v8/custom/V8TreeWalkerCustom.cpp:
1081 (WebCore::toV8): Ditto.
1083 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
1085 Reviewed by Darin Fisher.
1087 https://bugs.webkit.org/show_bug.cgi?id=24261
1088 Fix V8 custom binding scrubbing error.
1090 Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
1092 * WebCore.xcodeproj/project.pbxproj:
1093 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
1094 (WebCore::cssPropertyName): Remove dubious checks, left over from
1095 incomplete conversion of parameter from pointer to pass-by-ref.
1096 (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
1097 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
1099 2009-02-28 Xan Lopez <xan@gnome.org>
1101 Reviewed by Holger Freyther.
1103 https://bugs.webkit.org/show_bug.cgi?id=24263
1104 [GTK] ref ResourceHandle until we are finished with it
1106 Add a ref to the ResourceHandle in startHttp so we can keep it
1107 alive untill all callbacks have been executed, and unref it when
1108 soup tells us it's done with the SoupMessage (in
1109 finishedCallback). Fixes a number of crashes when calling
1110 didReceiveData whould crash because of the handle dying.
1112 * platform/network/soup/ResourceHandleSoup.cpp:
1113 (WebCore::finishedCallback):
1114 (WebCore::ResourceHandle::startHttp):
1116 2009-02-28 Adam Bergkvist <adam.bergkvist@ericsson.com>
1118 Reviewed by Alexey Proskuryakov.
1120 https://bugs.webkit.org/show_bug.cgi?id=24226
1121 [SOUP] HTTP status text is never set
1123 Set HTTP status text to SoupMessage reason_phrase.
1125 * platform/network/soup/ResourceHandleSoup.cpp:
1126 (WebCore::fillResponseFromMessage):
1128 2009-02-28 Dan Bernstein <mitz@apple.com>
1130 - fix malformed project file
1132 * WebCore.xcodeproj/project.pbxproj:
1134 2009-02-28 Dan Bernstein <mitz@apple.com>
1136 Reviewed by Oliver Hunt.
1138 - fix https://bugs.webkit.org/show_bug.cgi?id=23848
1139 <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
1141 Test: fast/layers/inline-dirty-z-order-lists.html
1143 * rendering/RenderBox.cpp:
1144 (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
1145 layer's and its stacking context's z-order lists when the layer's
1146 z-index or visibility change from here...
1147 * rendering/RenderBoxModelObject.cpp:
1148 (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
1149 it will apply to RenderInline too.
1151 2009-02-27 Alexey Proskuryakov <ap@webkit.org>
1153 Reviewed by David Hyatt.
1155 Don't include TextResourceDecoder.h in Document.h
1157 This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
1158 when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
1161 (WebCore::Document::displayStringModifiedByEncoding):
1162 (WebCore::Document::displayBufferModifiedByEncoding):
1166 2009-02-27 Matt Pennig <pennig@apple.com>
1168 Reviewed by David Hyatt.
1170 Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
1171 "Fixed elements have 0 as an offsetLeft property"
1173 Code also brings offsetLeft/Top in full conformance with the spec.
1174 Added two tests, one for fixed-position elements, and one for <html>.
1176 Tests: fast/dom/Element/fixed-position-offset-parent.html
1177 fast/dom/Element/offsetLeft-offsetTop-html.html
1179 * rendering/RenderBoxModelObject.cpp:
1180 (WebCore::RenderBoxModelObject::offsetLeft):
1181 (WebCore::RenderBoxModelObject::offsetTop):
1183 2009-02-27 Dean Jackson <dino@apple.com>
1185 Reviewed by Simon Fraser.
1187 renderer()->hasTransform() returns true for elements
1188 with perspective, but no transform, so test for transform
1189 when hit testing. This fixes ASSERT from
1190 https://bugs.webkit.org/show_bug.cgi?id=24252
1192 Test: transforms/no_transform_hit_testing.html
1194 * rendering/RenderLayer.cpp:
1195 (WebCore::RenderLayer::hitTestLayer):
1197 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
1199 Reviewed by Darin Fisher.
1201 Fix scrubbing error -- a reversed condition.
1203 * bindings/v8/ScriptValue.h:
1204 (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
1206 2009-02-27 Jian Li <jianli@chromium.org>
1208 Reviewed by Alexey Proskuryakov.
1210 Add confirmMessageFromWorkerObject to WorkerObjectProxy.
1211 https://bugs.webkit.org/show_bug.cgi?id=24152
1213 * workers/WorkerMessagingProxy.cpp:
1214 (WebCore::MessageWorkerContextTask::performTask):
1215 (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
1216 * workers/WorkerMessagingProxy.h:
1217 * workers/WorkerObjectProxy.h:
1219 2009-02-27 Anders Carlsson <andersca@apple.com>
1221 Reviewed by David Hyatt.
1223 Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227
1224 because it leads to assertion failures in the Mac port.
1226 * platform/graphics/BitmapImage.cpp:
1227 (WebCore::BitmapImage::BitmapImage):
1228 * platform/graphics/BitmapImage.h:
1229 (WebCore::BitmapImage::mayFillWithSolidColor):
1230 * platform/graphics/Image.h:
1231 (WebCore::Image::mayFillWithSolidColor):
1232 * platform/graphics/cairo/ImageCairo.cpp:
1233 (WebCore::BitmapImage::BitmapImage):
1234 * platform/graphics/cg/ImageCG.cpp:
1235 (WebCore::BitmapImage::BitmapImage):
1236 (WebCore::BitmapImage::checkForSolidColor):
1237 * platform/graphics/qt/ImageQt.cpp:
1238 (WebCore::BitmapImage::checkForSolidColor):
1239 * platform/graphics/skia/ImageSkia.cpp:
1240 (WebCore::BitmapImage::checkForSolidColor):
1241 * platform/graphics/wx/ImageWx.cpp:
1242 (WebCore::BitmapImage::checkForSolidColor):
1244 2009-02-27 Adam Barth <abarth@webkit.org>
1246 Reviewed by Eric Seidel.
1248 https://bugs.webkit.org/show_bug.cgi?id=20249
1250 Add a preference to allow universal access from local URLs to mitigate
1251 some attacks. Some clients still want to allow this access, so we
1252 expose this as a preference.
1256 (WebCore::Document::initSecurityContext):
1257 * page/SecurityOrigin.cpp:
1258 (WebCore::SecurityOrigin::SecurityOrigin):
1259 * page/Settings.cpp:
1260 (WebCore::Settings::Settings):
1261 (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
1263 (WebCore::Settings::allowUniversalAccessFromFileUrls):
1265 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
1267 Reviewed by Eric Seidel.
1269 https://bugs.webkit.org/show_bug.cgi?id=24229
1270 If an image has no alpha channel there is no reason to use SourceOver.
1272 * platform/graphics/qt/ImageQt.cpp:
1273 (WebCore::Image::drawPattern):
1274 (WebCore::BitmapImage::draw):
1276 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
1278 Reviewed by Eric Seidel and Simon Fraser.
1280 https://bugs.webkit.org/show_bug.cgi?id=24227
1281 Ensure that the checkForSolidColor() optimization is correctly triggered
1282 for all cases of drawPattern. Currently, the optimization was not triggered
1283 when the check had not been previously performed via a request for the
1284 image's NativeImagePtr.
1286 Implement the Qt version of the checkForSolidColor() method. Combined with
1287 the bug fix this reduces the time it takes to draw a repeating background
1288 of a 1x1 image from ~50msecs to ~0msecs on my machine.
1290 * platform/graphics/BitmapImage.cpp:
1291 (WebCore::BitmapImage::BitmapImage):
1292 * platform/graphics/BitmapImage.h:
1293 (WebCore::BitmapImage::mayFillWithSolidColor):
1294 * platform/graphics/Image.h:
1295 (WebCore::Image::mayFillWithSolidColor):
1296 * platform/graphics/cairo/ImageCairo.cpp:
1297 (WebCore::BitmapImage::BitmapImage):
1298 * platform/graphics/cg/ImageCG.cpp:
1299 (WebCore::BitmapImage::BitmapImage):
1300 (WebCore::BitmapImage::checkForSolidColor):
1301 * platform/graphics/qt/ImageQt.cpp:
1302 (WebCore::BitmapImage::checkForSolidColor):
1303 * platform/graphics/skia/ImageSkia.cpp:
1304 (WebCore::BitmapImage::checkForSolidColor):
1305 * platform/graphics/wx/ImageWx.cpp:
1306 (WebCore::BitmapImage::checkForSolidColor):
1308 2009-02-27 Dirk Schulze <krit@webkit.org>
1310 Reviewed by Zack Rusin.
1312 Added support for gradients and pattern on Fonts for Qt.
1314 [Qt] gradients and patterns for FontQt
1315 https://bugs.webkit.org/show_bug.cgi?id=24243
1317 * platform/graphics/qt/FontQt.cpp:
1318 (WebCore::Font::drawComplexText):
1320 2009-02-27 Jian Li <jianli@chromium.org>
1322 Reviewed by Alexey Proskuryakov.
1324 WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
1325 https://bugs.webkit.org/show_bug.cgi?id=24113
1327 * workers/WorkerMessagingProxy.cpp:
1329 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
1331 Added a refresh button to storage views.
1333 https://bugs.webkit.org/show_bug.cgi?id=24040
1335 Reviewed by Timothy Hatcher.
1337 * inspector/front-end/DOMStorageItemsView.js:
1338 (WebInspector.DOMStorageItemsView):
1339 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
1340 (WebInspector.DOMStorageItemsView.prototype.update):
1341 (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
1342 * inspector/front-end/DatabaseTableView.js:
1343 (WebInspector.DatabaseTableView):
1344 (WebInspector.DatabaseTableView.prototype.get statusBarItems):
1345 (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
1346 * inspector/front-end/DatabasesPanel.js:
1347 (WebInspector.DatabasesPanel):
1348 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
1349 (WebInspector.DatabasesPanel.prototype.reset):
1350 (WebInspector.DatabasesPanel.prototype.showDatabase):
1351 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
1352 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
1353 * inspector/front-end/inspector.css:
1355 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
1357 Added support for editing/deleting localStorage and sessionStorage items
1358 directly from Web Inspector.
1360 https://bugs.webkit.org/show_bug.cgi?id=23866.
1362 Reviewed by Timothy Hatcher.
1364 * WebCore.vcproj/WebCore.vcproj:
1365 * inspector/front-end/DOMStorageDataGrid.js: Added.
1366 (WebInspector.DOMStorageDataGrid):
1367 (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
1368 (WebInspector.DOMStorageDataGrid.prototype._startEditing):
1369 (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
1370 (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
1371 (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
1372 * inspector/front-end/DOMStorageItemsView.js:
1373 (WebInspector.DOMStorageItemsView):
1374 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
1375 (WebInspector.DOMStorageItemsView.prototype.hide):
1376 (WebInspector.DOMStorageItemsView.prototype.update):
1377 (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
1378 * inspector/front-end/DatabasesPanel.js:
1379 (WebInspector.DatabasesPanel):
1380 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
1381 (WebInspector.DatabasesPanel.prototype.reset):
1382 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
1383 (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
1384 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
1385 * inspector/front-end/WebKit.qrc:
1386 * inspector/front-end/inspector.css:
1387 * inspector/front-end/inspector.html:
1389 2009-02-26 Brett Wilson <brettw@chromium.org>
1391 Fix Windows transparency for the Chromium port. Implement a helper
1392 class for handling transparency on Windows. It allows semitransparent
1393 ClearType and semitransparent form controls by making new layers in the
1396 It also replaces the "ThemeHelper" which allows better
1397 scaling and transforms on Windows form controls. In addition to the
1398 functionality that the ThemeHelper did, but additionally handles the
1399 antialiasing properly so that the form controls aren't composited on a
1402 https://bugs.webkit.org/show_bug.cgi?id=24101
1404 Reviewed by Eric Seidel.
1406 * platform/graphics/chromium/FontChromiumWin.cpp:
1408 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
1409 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1410 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1411 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
1412 (WebCore::Font::drawGlyphs):
1413 * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
1414 * platform/graphics/chromium/ThemeHelperChromiumWin.h:
1415 * platform/graphics/chromium/TransparencyWin.cpp: Added.
1417 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
1418 (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
1419 (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
1420 (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
1421 (WebCore::TransparencyWin::TransparencyWin):
1422 (WebCore::TransparencyWin::~TransparencyWin):
1423 (WebCore::TransparencyWin::init):
1424 (WebCore::TransparencyWin::computeLayerSize):
1425 (WebCore::TransparencyWin::setupLayer):
1426 (WebCore::TransparencyWin::setupLayerForNoLayer):
1427 (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
1428 (WebCore::TransparencyWin::setupLayerForTextComposite):
1429 (WebCore::TransparencyWin::setupLayerForWhiteLayer):
1430 (WebCore::TransparencyWin::setupTransform):
1431 (WebCore::TransparencyWin::setupTransformForKeepTransform):
1432 (WebCore::TransparencyWin::setupTransformForUntransform):
1433 (WebCore::TransparencyWin::setupTransformForScaleTransform):
1434 (WebCore::TransparencyWin::setTextCompositeColor):
1435 (WebCore::TransparencyWin::initializeNewContext):
1436 (WebCore::TransparencyWin::compositeOpaqueComposite):
1437 (WebCore::TransparencyWin::compositeTextComposite):
1438 (WebCore::TransparencyWin::makeLayerOpaque):
1439 * platform/graphics/chromium/TransparencyWin.h: Added.
1440 (WebCore::TransparencyWin::):
1441 (WebCore::TransparencyWin::context):
1442 (WebCore::TransparencyWin::platformContext):
1443 (WebCore::TransparencyWin::drawRect):
1444 * platform/graphics/skia/GraphicsContextSkia.cpp:
1445 (WebCore::GraphicsContext::endTransparencyLayer):
1446 * platform/graphics/skia/ImageSkia.cpp:
1447 (WebCore::paintSkBitmap):
1448 * rendering/RenderThemeChromiumWin.cpp:
1450 (WebCore::RenderThemeChromiumWin::paintButton):
1451 (WebCore::RenderThemeChromiumWin::paintMenuList):
1452 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
1454 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
1456 Reviewed by Eric Seidel.
1458 https://bugs.webkit.org/show_bug.cgi?id=24211
1459 Add ScheduledAction for V8.
1461 * bindings/v8/ScheduledAction.cpp: Added.
1462 (WebCore::ScheduledAction::ScheduledAction):
1463 (WebCore::ScheduledAction::~ScheduledAction):
1464 (WebCore::ScheduledAction::execute):
1465 * bindings/v8/ScheduledAction.h: Added.
1466 (WebCore::ScheduledAction::ScheduledAction):
1468 2009-02-27 Zack Rusin <zack@kde.org>
1470 Reviewed by Nikolas Zimmermann.
1472 Qt: be more reasonable about scrolled lines
1474 cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
1475 match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
1476 irritating. so lets scroll vertically by the Qt set number of lines * Qt default
1479 * platform/qt/WheelEventQt.cpp:
1481 2009-02-27 Xan Lopez <xan@gnome.org>
1483 Rubber-stamped by Alexey Proskuryakov.
1485 https://bugs.webkit.org/show_bug.cgi?id=24222
1486 [GTK] Remove checks for old glib versions
1488 libsoup, which is a hard dependency, needs at least glib 2.15.3,
1489 so remove all glib checks for versions older than that.
1491 * platform/gtk/ContextMenuGtk.cpp:
1492 (WebCore::ContextMenu::ContextMenu):
1493 * platform/gtk/ContextMenuItemGtk.cpp:
1494 (WebCore::ContextMenuItem::setSubMenu):
1495 * platform/gtk/PopupMenuGtk.cpp:
1496 (WebCore::PopupMenu::show):
1497 * platform/gtk/WidgetGtk.cpp:
1498 (WebCore::Widget::retainPlatformWidget):
1499 * platform/network/soup/ResourceHandleSoup.cpp:
1501 2009-02-26 Dirk Schulze <krit@webkit.org>
1503 Reviewed by Oliver Hunt.
1505 Added support for Gradients and Patterns on filled or stroked Fonts
1506 in Cairo. I also added support for globalAlpha on FontCairo.
1508 [CAIRO] SVG/Canvas fonts miss gradients/pattern support
1509 https://bugs.webkit.org/show_bug.cgi?id=18617
1511 * html/CanvasRenderingContext2D.cpp:
1512 (WebCore::CanvasRenderingContext2D::drawTextInternal):
1513 * platform/graphics/cairo/FontCairo.cpp:
1514 (WebCore::Font::drawGlyphs):
1516 2009-02-26 Stephen White <senorblanco@chromium.org>
1518 Reviewed by Eric Seidel.
1520 https://bugs.webkit.org/show_bug.cgi?id=23957
1522 Fix for SVG gradient and pattern text for Chromium/skia.
1523 Added accessors for the fill and stroke gradients to
1524 GraphicsContext. Changed the paintSkiaText function to take a
1525 GraphicsContext, so we can check for gradients/patterns.
1526 Changed the skiaDrawText function to set the SkPaint shader
1527 correctly, and to scale up the gradient shader matrix to
1528 encompass the entire text string. Also offset each glyph
1529 separately, rather than transforming the canvas, so that the
1530 gradient/pattern stays fixed relative to the text origin.
1532 * platform/graphics/GraphicsContext.cpp:
1533 (WebCore::GraphicsContext::getFillGradient):
1534 (WebCore::GraphicsContext::getStrokeGradient):
1535 (WebCore::GraphicsContext::getFillPattern):
1536 (WebCore::GraphicsContext::getStrokePattern):
1537 * platform/graphics/GraphicsContext.h:
1538 * platform/graphics/chromium/FontChromiumWin.cpp:
1539 (WebCore::Font::drawGlyphs):
1540 * platform/graphics/chromium/UniscribeHelper.cpp:
1541 (WebCore::UniscribeHelper::draw):
1542 * platform/graphics/skia/SkiaFontWin.cpp:
1543 (WebCore::windowsCanHandleTextDrawing):
1544 (WebCore::skiaDrawText):
1545 (WebCore::paintSkiaText):
1546 * platform/graphics/skia/SkiaFontWin.h:
1548 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
1550 Reviewed by Eric Seidel.
1552 https://bugs.webkit.org/show_bug.cgi?id=24208
1553 Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
1555 * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
1556 (WebCore::ACCESSOR_GETTER):
1557 (WebCore::CALLBACK_FUNC_DECL):
1558 * bindings/v8/custom/V8DocumentCustom.cpp: Added.
1559 (WebCore::CALLBACK_FUNC_DECL):
1560 * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
1561 (WebCore::ACCESSOR_GETTER):
1562 * bindings/v8/custom/V8NodeCustom.cpp: Added.
1563 (WebCore::CALLBACK_FUNC_DECL):
1565 2009-02-26 Gustavo Noronha Silva <gns@gnome.org>
1567 Unreviewed build fix for building with GNOME Keyring enabled.
1569 * platform/network/soup/webkit-soup-auth-dialog.c:
1572 2009-02-26 Xan Lopez <xan@gnome.org>
1574 Reviewed by Holger Freyther.
1576 https://bugs.webkit.org/show_bug.cgi?id=16947
1577 [GTK] Missing HTTP Auth challenge
1579 Add HTTP authentication dialog with optional GNOME Keyring
1583 * platform/network/ResourceHandleInternal.h:
1584 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1585 * platform/network/soup/ResourceHandleSoup.cpp:
1586 (WebCore::currentToplevelCallback):
1587 (WebCore::ResourceHandle::startHttp):
1588 (WebCore::ResourceHandle::start):
1589 * platform/network/soup/webkit-soup-auth-dialog.c: Added.
1590 (webkit_soup_auth_dialog_class_init):
1591 (webkit_soup_auth_dialog_init):
1592 (webkit_soup_auth_dialog_session_feature_init):
1594 (set_password_callback):
1595 (response_callback):
1597 (find_password_callback):
1598 (session_authenticate):
1600 * platform/network/soup/webkit-soup-auth-dialog.h: Added.
1602 2009-02-25 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
1604 Reviewed by Dave Hyatt.
1606 After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
1607 svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
1608 started failing because Ojan's new code was now *correctly* calling through to
1609 SVG asking for the closest text offset in the last line box, instead of
1610 just returning the offset at the end of the last line box when clicking below a box.
1612 But! The SVG code was wrong, in that it returned the character offset of the last
1613 character when you asked for a character offset after the end of the box, instead
1614 it should return the offset *after* the last character. This patch fixes
1615 that behavior by reordering the last two clauses in svgCharacterHitsPosition.
1617 The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
1618 to document what's wrong. I've also cleaned up the code a bit so it's clearer
1619 what it is doing (which also makes more obvious what's wrong with it).
1621 * rendering/RenderSVGInlineText.cpp:
1622 (WebCore::RenderSVGInlineText::positionForCoordinates):
1623 * rendering/SVGInlineTextBox.cpp:
1624 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
1625 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
1626 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
1627 (WebCore::SVGInlineTextBox::closestCharacterToPosition):
1628 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
1630 2009-02-26 Darin Fisher <darin@chromium.org>
1632 Reviewed by Eric Seidel.
1634 Minor cleanup of ChromiumBridge:
1635 Removing unused matchesMIMEType method and s/Javascript/JavaScript/
1637 * platform/chromium/ChromiumBridge.h:
1638 * platform/chromium/MimeTypeRegistryChromium.cpp:
1639 (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
1640 (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
1641 (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
1643 2009-02-26 David Hyatt <hyatt@apple.com>
1645 Reviewed by Sam Weinig
1647 Fix text-bottom vertical alignment. It was incorrectly aligning the bottom of the descent instead of including
1648 the line-height below the descent.
1650 Added fast/inline/vertical-align-text-bottom.html
1652 * rendering/RenderBoxModelObject.cpp:
1653 (WebCore::RenderBoxModelObject::verticalPosition):
1655 2009-02-26 Dirk Schulze <krit@webkit.org>
1657 Reviewed by Eric Seidel.
1659 Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
1660 ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
1661 just to implement this three methods to support SVG Masking now.
1663 Make SVG Masking platform aware
1664 https://bugs.webkit.org/show_bug.cgi?id=19243
1668 * WebCore.vcproj/WebCore.vcproj:
1669 * WebCore.xcodeproj/project.pbxproj:
1670 * svg/graphics/SVGResourceMasker.cpp:
1671 (WebCore::SVGResourceMasker::applyMask):
1672 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
1673 * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
1674 * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
1675 * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
1676 * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
1678 2009-02-26 Yong Li <yong.li@torchmobile.com>
1680 Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
1682 Test: http/tests/misc/slow-preload-cancel.html
1684 https://bugs.webkit.org/show_bug.cgi?id=24133
1685 Clear all pending preloads in the DocLoader object when we decide to
1686 cancel its all requests.
1688 * loader/DocLoader.cpp:
1689 (WebCore::DocLoader::clearPendingPreloads):
1690 * loader/DocLoader.h:
1691 * loader/loader.cpp:
1692 (WebCore::Loader::cancelRequests):
1694 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
1696 Reviewed by Eric Seidel.
1698 https://bugs.webkit.org/show_bug.cgi?id=24182
1699 Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
1701 * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
1702 (WebCore::CALLBACK_FUNC_DECL):
1703 * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
1705 (WebCore::CALLBACK_FUNC_DECL):
1706 * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
1708 (WebCore::CALLBACK_FUNC_DECL):
1710 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
1712 Reviewed by Darin Adler.
1714 https://bugs.webkit.org/show_bug.cgi?id=23500
1715 KURL::parse() incorrectly compares its result to original string
1717 * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
1719 2009-02-26 Ojan Vafai <ojan@chromium.org>
1721 Reviewed by Kevin McCullough.
1723 Manual test for inspector node highlighting.
1725 * manual-tests/inspector/highlight-nodes.html: Added.
1727 2009-02-16 Anantanarayanan Iyengar <ananta@chromium.org>
1729 Reviewed by Darin Fisher.
1731 https://bugs.webkit.org/show_bug.cgi?id=23973
1732 ScrollView::scrollContents can be invoked during view shutdown. In
1733 this scenario the FrameView::hostWindow method can return NULL, which
1734 indicates that the frame/page is being destroyed. This causes a crash
1735 when we try to dereference a NULL hostWindow pointer. Fix is to add a
1736 NULL check for this.
1738 * platform/ScrollView.cpp:
1739 (WebCore::ScrollView::scrollContents):
1741 2009-02-26 Rahul Kuchhal <kuchhal@chromium.org>
1743 Reviewed by Dave Hyatt.
1745 https://bugs.webkit.org/show_bug.cgi?id=24003
1746 Fix a crash caused by unsafe type conversion.
1748 Test: fast/block/positioning/absolute-in-inline-rtl-4.html
1750 * rendering/RenderBox.cpp:
1751 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
1753 2009-02-26 Ojan Vafai <ojan@chromium.org>
1755 Reviewed by Adam Roben.
1757 https://bugs.webkit.org/show_bug.cgi?id=24202
1758 Have drawNodeHighlight clip instead of clearing. This makes it work for
1759 both Safari and Chromium since Chromium draws the inspector highlighting
1760 in the same buffer as the page.
1762 * inspector/InspectorController.cpp:
1763 (WebCore::quadToPath):
1764 (WebCore::drawOutlinedQuad):
1765 (WebCore::drawOutlinedQuadWithClip):
1766 (WebCore::drawHighlightForBox):
1768 2009-02-26 David Hyatt <hyatt@apple.com>
1770 Reviewed by Dan Bernstein & Darin Adler
1772 Make sure the border/padding are properly omitted at the start of an inline that is a continuation.
1774 Added fast/inline/inline-continuation-borders.html
1776 * rendering/InlineFlowBox.cpp:
1777 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1779 2009-02-26 Simon Fraser <simon.fraser@apple.com>
1781 Build fix, no review.
1783 Try to fix the wx build after r41218.
1785 * WebCoreSources.bkl:
1787 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
1789 Reviewed by Darin Adler.
1791 https://bugs.webkit.org/show_bug.cgi?id=19527
1792 ASSERTION FAILED: containerA && containerB
1794 Test: fast/dom/Range/bug-19527.html
1797 (WebCore::Range::isPointInRange):
1798 (WebCore::Range::comparePoint):
1799 Bring the behavior in line with current Firefox, making it impossible for these methods
1800 to pass a null container to compareBoundaryPoints().
1802 2009-02-26 Jonathon Jongsma <jonathon@quotidian.org>
1804 Reviewed by Holger Freyther.
1806 https://bugs.webkit.org/show_bug.cgi?id=20358
1808 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
1809 (WebCore::SimpleFontData::smallCapsFontData): the small-caps font data
1810 should set the computed size rather than the specified size, otherwise
1811 the caps just get rendered normal size.
1813 2009-02-26 Benjamin Meyer <benjamin.meyer@torchmobile.com>
1815 Reviewed by George Staikos.
1817 https://bugs.webkit.org/show_bug.cgi?id=24062
1818 QNetworkCookieJar expects the url and not the policy url. Sending the
1819 policy url will cause QNetworkCookieJar to behave incorrectly. One
1820 example would be a cookie that does not have a path or domain.
1821 QNetworkCookieJar will use the url it is given to fill in default values.
1822 This allows setting cookies on the url of the main frame from an iFrame
1823 when the cookie should be set on the url of the iFrame.
1825 Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do
1827 * platform/qt/CookieJarQt.cpp:
1828 (WebCore::setCookies):
1830 2009-02-26 Charles Wei <charles.wei@torchmobile.com.cn>
1832 Reviewed by George Staikos.
1834 make WebKit/Qt compile with SVG disabled
1837 * platform/graphics/qt/FontPlatformDataQt.cpp:
1839 2009-02-25 Gustavo Noronha Silva <gns@gnome.org>
1841 Unreviewed build fix. Add WebCore/workers to the list of paths
1842 searched by the bindings generator perl script.
1846 2009-02-25 Sam Weinig <sam@webkit.org>
1848 Reviewed by Geoffrey Garen.
1850 Add canvas to the list of RenderObjects that can mark a page as
1853 * rendering/RenderHTMLCanvas.cpp:
1854 (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
1856 2009-02-25 Eric Carlson <eric.carlson@apple.com>
1858 Reviewed by Dave Hyatt.
1860 * rendering/RenderBox.cpp:
1861 (WebCore::RenderBox::nodeAtPoint): Remove assertion fired when child has layer
1862 as RenderMedia with controls always has a layer.
1864 2009-02-25 Dan Bernstein <mitz@apple.com>
1866 Reviewed by Simon Fraser.
1868 - fix https://bugs.webkit.org/show_bug.cgi?id=24130
1869 <rdar://problem/6618196> Paint very slow when horizontally resizing
1871 Test: fast/gradients/background-clipped.html
1873 * rendering/RenderBoxModelObject.cpp:
1874 (WebCore::RenderBoxModelObject::paintFillLayerExtended): Intersect the
1875 destination rectangle passed to drawTiledImage() with the dirty
1876 rectangle. This makes it more likely for the destination rect to be
1877 contained in a single tile rect, which results in a faster code path
1878 being taken down the road (just drawing a single tile instead of
1881 2009-02-25 Ojan Vafai <ojan@chromium.org>
1883 Reviewed by Eric Seidel.
1885 Fix test regressions from positionForCoordinates patch.
1886 https://bugs.webkit.org/show_bug.cgi?id=24148
1888 * rendering/RenderBlock.cpp:
1889 (WebCore::positionForPointWithInlineChildren):
1890 Remove ASSERT that placeholder text codepath is hitting.
1892 2009-02-25 Chris Fleizach <cfleizach@apple.com>
1894 Reviewed by Beth Dakin.
1896 Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail
1897 https://bugs.webkit.org/show_bug.cgi?id=24143
1899 When an AX object is marked dirty, do not create AX elements while going up the parent chain.
1900 Do not allow AXRenderObjects to remove their own IDs from the cache, all the cache to do that work
1901 Make sure the AXObjectWrapper's have an object before calling them
1902 In AXObjectCache, change get -> getOrCreate. Use get() to only retrieve an element if it exists
1904 Test: platform/mac-snowleopard/accessibility/table-updating.html
1907 * page/AXObjectCache.cpp:
1908 (WebCore::AXObjectCache::~AXObjectCache):
1909 (WebCore::AXObjectCache::get):
1910 (WebCore::AXObjectCache::getOrCreate):
1911 (WebCore::AXObjectCache::removeAXID):
1912 (WebCore::AXObjectCache::handleActiveDescendantChanged):
1913 (WebCore::AXObjectCache::handleAriaRoleChanged):
1914 * page/AXObjectCache.h:
1915 * page/AccessibilityImageMapLink.cpp:
1916 (WebCore::AccessibilityImageMapLink::parentObject):
1917 * page/AccessibilityListBox.cpp:
1918 (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
1919 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
1920 * page/AccessibilityListBoxOption.cpp:
1921 (WebCore::AccessibilityListBoxOption::elementRect):
1922 (WebCore::AccessibilityListBoxOption::parentObject):
1923 * page/AccessibilityObject.cpp:
1924 (WebCore::AccessibilityObject::detach):
1925 (WebCore::AccessibilityObject::parentObjectIfExists):
1926 (WebCore::replacedNodeNeedsCharacter):
1927 (WebCore::AccessibilityObject::accessibilityObjectForPosition):
1928 * page/AccessibilityObject.h:
1929 * page/AccessibilityRenderObject.cpp:
1930 (WebCore::AccessibilityRenderObject::firstChild):
1931 (WebCore::AccessibilityRenderObject::lastChild):
1932 (WebCore::AccessibilityRenderObject::previousSibling):
1933 (WebCore::AccessibilityRenderObject::nextSibling):
1934 (WebCore::AccessibilityRenderObject::parentObjectIfExists):
1935 (WebCore::AccessibilityRenderObject::parentObject):
1936 (WebCore::AccessibilityRenderObject::isAttachment):
1937 (WebCore::AccessibilityRenderObject::headingLevel):
1938 (WebCore::AccessibilityRenderObject::anchorElement):
1939 (WebCore::AccessibilityRenderObject::menuForMenuButton):
1940 (WebCore::AccessibilityRenderObject::menuButtonForMenu):
1941 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
1942 (WebCore::AccessibilityRenderObject::internalLinkElement):
1943 (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
1944 (WebCore::AccessibilityRenderObject::titleUIElement):
1945 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1946 (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
1947 (WebCore::AccessibilityRenderObject::getDocumentLinks):
1948 (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
1949 (WebCore::AccessibilityRenderObject::focusedUIElement):
1950 (WebCore::AccessibilityRenderObject::activeDescendant):
1951 (WebCore::AccessibilityRenderObject::observableObject):
1952 (WebCore::AccessibilityRenderObject::childrenChanged):
1953 (WebCore::AccessibilityRenderObject::addChildren):
1954 * page/AccessibilityRenderObject.h:
1955 (WebCore::AccessibilityRenderObject::setRenderObject):
1956 * page/AccessibilityTable.cpp:
1957 (WebCore::AccessibilityTable::addChildren):
1958 (WebCore::AccessibilityTable::headerContainer):
1959 (WebCore::AccessibilityTable::cellForColumnAndRow):
1960 * page/AccessibilityTableCell.cpp:
1961 (WebCore::AccessibilityTableCell::isTableCell):
1962 (WebCore::AccessibilityTableCell::titleUIElement):
1963 * page/AccessibilityTableColumn.cpp:
1964 (WebCore::AccessibilityTableColumn::headerObjectForSection):
1965 * page/AccessibilityTableRow.cpp:
1966 (WebCore::AccessibilityTableRow::isTableRow):
1967 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
1968 * page/mac/AXObjectCacheMac.mm:
1969 (WebCore::AXObjectCache::postNotification):
1970 (WebCore::AXObjectCache::postNotificationToElement):
1971 * page/mac/AccessibilityObjectWrapper.mm:
1972 (textMarkerForVisiblePosition):
1973 (AXLinkElementForNode):
1974 (nsStringForReplacedNode):
1975 (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
1976 (-[AccessibilityObjectWrapper accessibilityActionNames]):
1977 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1978 (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
1979 (-[AccessibilityObjectWrapper accessibilityHitTest:]):
1980 (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
1981 (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
1982 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1983 (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
1984 (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
1985 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1986 (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
1987 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
1988 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
1989 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1991 2009-02-25 Beth Dakin <bdakin@apple.com>
1993 Reviewed by Geoff Garen.
1995 Re-working of <rdar://problem/6487249> repro crash in
1996 WebCore::CSSParser::parseFillImage copying entire contents of this
1998 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
2000 Fixes a bunch of layout test failures I caused!
2002 * css/CSSParser.cpp:
2003 (WebCore::CSSParser::parseValue):
2004 (WebCore::CSSParser::parseContent):
2005 (WebCore::CSSParser::parseFillImage):
2006 (WebCore::CSSParser::parseFontFaceSrc):
2007 (WebCore::CSSParser::parseBorderImage):
2009 2009-02-25 Dimitri Glazkov <dglazkov@chromium.org>
2011 Reviewed by Eric Seidel.
2013 https://bugs.webkit.org/show_bug.cgi?id=24174
2014 Add more V8 custom bindings.
2016 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: Added.
2017 (WebCore::hasCSSPropertyNamePrefix):
2018 (WebCore::cssPropertyName):
2019 (WebCore::NAMED_PROPERTY_GETTER):
2020 (WebCore::NAMED_PROPERTY_SETTER):
2021 * bindings/v8/custom/V8DOMStringListCustom.cpp: Added.
2022 (WebCore::INDEXED_PROPERTY_GETTER):
2023 (WebCore::CALLBACK_FUNC_DECL):
2024 * bindings/v8/custom/V8EventCustom.cpp: Added.
2025 (WebCore::ACCESSOR_SETTER):
2026 (WebCore::ACCESSOR_GETTER):
2027 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Added.
2028 (WebCore::NAMED_PROPERTY_DELETER):
2029 (WebCore::NAMED_PROPERTY_SETTER):
2030 (WebCore::NAMED_PROPERTY_GETTER):
2031 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: Added.
2032 (WebCore::NAMED_PROPERTY_GETTER):
2033 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Added.
2034 (WebCore::INDEXED_PROPERTY_GETTER):
2035 (WebCore::NAMED_PROPERTY_GETTER):
2036 * bindings/v8/custom/V8NodeListCustom.cpp: Added.
2037 (WebCore::NAMED_PROPERTY_GETTER):
2038 * bindings/v8/custom/V8StyleSheetListCustom.cpp: Added.
2039 (WebCore::NAMED_PROPERTY_GETTER):
2041 2009-02-25 Scott Violet <sky@google.com>
2043 Reviewed by Dave Hyatt.
2045 https://bugs.webkit.org/show_bug.cgi?id=24171
2046 Provides a RenderTheme method for getting the scroll bar size and
2047 changes RenderListBox to use it. RenderTheme returns a size of regular,
2048 and Mac's override to return small. Changes ScrollbarThemeChromium to
2049 use the scrollbarsize of the scrollbar when getting the size
2050 instead of passing in no-args.
2052 * platform/chromium/ScrollbarThemeChromium.cpp:
2053 (WebCore::ScrollbarThemeChromium::trackRect):
2054 (WebCore::ScrollbarThemeChromium::buttonSize):
2055 * rendering/RenderListBox.cpp:
2056 (WebCore::RenderListBox::createScrollbar):
2057 * rendering/RenderTheme.h:
2058 (WebCore::RenderTheme::scrollbarControlSizeForPart):
2059 * rendering/RenderThemeChromiumMac.h:
2060 (WebCore::RenderThemeChromiumMac::scrollbarControlSizeForPart):
2061 * rendering/RenderThemeMac.h:
2062 (WebCore::RenderThemeMac::scrollbarControlSizeForPart):
2064 2009-02-25 Beth Dakin <bdakin@apple.com>
2066 Reviewed by Darin Adler.
2068 Fix for <rdar://problem/6487249> repro crash in
2069 WebCore::CSSParser::parseFillImage copying entire contents of this
2071 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
2073 * css/CSSParser.cpp:
2074 (WebCore::CSSParser::parseValue): Null-check m_styleSheet
2076 2009-02-25 Adam Treat <adam.treat@torchmobile.com>
2082 2009-02-25 Jan Michael Alonzo <jmalonzo@webkit.org>
2084 Gtk build fix. Not reviewed.
2086 Add files to the build per r41218.
2087 Rename WebkitPoint.h to WebKitPoint.h in DOMWindow.cpp
2090 * page/DOMWindow.cpp:
2092 2009-02-25 Zan Dobersek <zandobersek@gmail.com>
2094 Reviewed by Alexey Proskuryakov.
2096 https://bugs.webkit.org/show_bug.cgi?id=24043
2097 When faced with URLs with unsupported protocol on Gtk port,
2098 report the error through an idle function and return true, so
2099 a proper resource handle is created.
2101 * platform/network/soup/ResourceHandleSoup.cpp:
2102 (WebCore::reportUnknownProtocolError):
2103 (WebCore::ResourceHandle::start):
2105 2009-02-25 Steve Falkenburg <sfalken@apple.com>
2108 Use struct to forward declare ResourceRequest.
2110 * history/HistoryItem.h:
2111 * inspector/InspectorController.h:
2112 * loader/DocumentThreadableLoader.h:
2113 * loader/FrameLoaderClient.h:
2114 * loader/MainResourceLoader.h:
2115 * loader/SubresourceLoader.h:
2116 * loader/SubresourceLoaderClient.h:
2117 * loader/ThreadableLoader.h:
2118 * loader/WorkerThreadableLoader.h:
2119 * platform/CrossThreadCopier.h:
2120 * platform/network/ResourceHandle.h:
2121 * platform/network/ResourceHandleClient.h:
2122 * platform/network/ResourceRequestBase.h:
2123 * platform/network/cf/ResourceRequestCFNet.h:
2124 * xml/XMLHttpRequest.h:
2126 2009-02-25 Steve Falkenburg <sfalken@apple.com>
2128 Partial Windows build fix.
2130 * DerivedSources.cpp:
2131 * WebCore.vcproj/WebCore.vcproj:
2133 2009-02-25 Dirk Schulze <krit@webkit.org>
2135 Reviewed by Oliver Hunt.
2137 Ported arcTo to Qt. Qt has no native support for arcTo. This changes
2138 calculate the behavior of arcTo and draws it with lineTo and arc.
2140 [QT] implement Canvas arcTo
2141 https://bugs.webkit.org/show_bug.cgi?id=23873
2143 * platform/graphics/qt/PathQt.cpp:
2144 (WebCore::Path::addArcTo):
2146 2009-02-25 Simon Fraser <simon.fraser@apple.com>
2148 Reviewed by Dan Bernstein
2150 Remove idl files from Resources, and sort.
2152 * WebCore.xcodeproj/project.pbxproj:
2154 2009-02-25 Chris Marrin <cmarrin@apple.com>
2156 Reviewed by Simon Fraser.
2158 https://bugs.webkit.org/show_bug.cgi?id=23943
2160 Added webkitConvertPointFromNodeToPage and webkitConvertPointFromPageToNode on
2161 the window object. Also added WebKitPoint object, which is passed in and out
2164 Test: fast/dom/Window/webkitConvertPoint.html
2166 * DerivedSources.make:
2168 * WebCore.vcproj/WebCore.vcproj:
2169 * WebCore.xcodeproj/project.pbxproj:
2170 * WebCoreSources.bkl:
2171 * bindings/js/JSDOMWindowBase.cpp:
2172 (jsDOMWindowBaseWebKitPoint):
2173 (setJSDOMWindowBaseWebKitPoint):
2174 * bindings/js/JSWebKitPointConstructor.cpp: Added.
2176 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2177 (WebCore::constructWebKitPoint):
2178 (WebCore::JSWebKitPointConstructor::getConstructData):
2179 * bindings/js/JSWebKitPointConstructor.h: Added.
2180 (WebCore::JSWebKitPointConstructor::classInfo):
2182 (WebCore::Node::convertToPage):
2183 (WebCore::Node::convertFromPage):
2185 * page/DOMWindow.cpp:
2186 (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
2187 (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
2189 * page/DOMWindow.idl:
2190 * page/WebKitPoint.h: Added.
2191 (WebCore::WebKitPoint::create):
2192 (WebCore::WebKitPoint::x):
2193 (WebCore::WebKitPoint::y):
2194 (WebCore::WebKitPoint::setX):
2195 (WebCore::WebKitPoint::setY):
2196 (WebCore::WebKitPoint::WebKitPoint):
2197 * page/WebKitPoint.idl: Added.
2199 2009-02-25 Jian Li <jianli@chromium.org>
2201 Reviewed by Alexey Proskuryakov.
2203 Remove "#if ENABLE(WORKERS)" wrap from CrossThreadCopier files.
2204 https://bugs.webkit.org/show_bug.cgi?id=24145
2206 * platform/CrossThreadCopier.cpp:
2207 * platform/CrossThreadCopier.h:
2209 2009-02-25 David Levin <levin@chromium.org>
2211 Reviewed by Alexey Proskuryakov.
2213 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
2214 <https://bugs.webkit.org/show_bug.cgi?id=23688>
2216 No observable change in behavior, so no test.
2218 * loader/ThreadableLoader.cpp:
2219 (WebCore::ThreadableLoader::loadResourceSynchronously):
2220 * loader/ThreadableLoaderClientWrapper.h:
2221 (WebCore::ThreadableLoaderClientWrapper::clearClient):
2222 (WebCore::ThreadableLoaderClientWrapper::done):
2223 (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
2224 (WebCore::ThreadableLoaderClientWrapper::didFail):
2225 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
2226 (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
2227 Expose whether the loader is done (based on what callbacks were done).
2229 * loader/WorkerThreadableLoader.cpp:
2230 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2231 (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
2232 Each loader is given its own mode so that only its callbacks get through the run loop.
2234 The xhr spec says that the readystatechange events are synchronous, so in the case of a
2235 nested sync xhr no readystatechange events should be fired for the outer xhr.
2237 (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2239 * loader/WorkerThreadableLoader.h:
2240 (WebCore::WorkerThreadableLoader::create):
2241 (WebCore::WorkerThreadableLoader::done):
2243 * workers/WorkerRunLoop.cpp:
2244 (WebCore::WorkerRunLoop::WorkerRunLoop):
2245 * workers/WorkerRunLoop.h:
2246 (WebCore::WorkerRunLoop::createUniqueId):
2247 Simple method to create a uniqueId on demand with respect to the run loop.
2249 * workers/WorkerThread.h:
2251 2009-02-25 David Levin <levin@chromium.org>
2253 Reviewed by Alexey Proskuryakov.
2255 Bug 24089: ThreadableLoader::loadResourceSynchronously should do callbacks like the async code.
2256 <https://bugs.webkit.org/show_bug.cgi?id=24089>
2258 Make threadable loader callbacks to happen during the sync load call.
2260 Changes the behavior of sync xhr for insecure redirects in two ways:
2261 + Sends an error event instead of an abort event (which is the same as async xhr's behavior).
2262 + Throws a network exception which is what other browsers do and what the spec
2263 says to do (http://www.w3.org/TR/XMLHttpRequest/).
2265 * loader/DocumentThreadableLoader.cpp:
2266 (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
2267 * loader/DocumentThreadableLoader.h:
2268 * loader/ThreadableLoader.cpp:
2269 (WebCore::ThreadableLoader::loadResourceSynchronously):
2270 * loader/ThreadableLoader.h:
2271 * xml/XMLHttpRequest.cpp:
2272 (WebCore::XMLHttpRequest::XMLHttpRequest):
2273 (WebCore::XMLHttpRequest::loadRequestSynchronously):
2274 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
2275 (WebCore::XMLHttpRequest::didFail):
2276 (WebCore::XMLHttpRequest::didFailRedirectCheck):
2277 * xml/XMLHttpRequest.h:
2279 2009-02-24 Chris Marrin <cmarrin@apple.com>
2281 Reviewed by David Hyatt.
2283 https://bugs.webkit.org/show_bug.cgi?id=23368
2285 Added logic to correctly hit test accelerated layers.
2287 Tests: animations/animation-hit-test-transform.html
2288 animations/animation-hit-test.html
2289 transitions/transition-hit-test-transform.html
2290 transitions/transition-hit-test.html
2292 * page/animation/KeyframeAnimation.cpp:
2293 (WebCore::KeyframeAnimation::animate):
2294 * rendering/RenderLayer.cpp:
2295 (WebCore::RenderLayer::hitTestLayer):
2296 (WebCore::RenderLayer::updateClipRects):
2297 * rendering/RenderLayerBacking.cpp:
2298 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2300 2009-02-25 Alexey Proskuryakov <ap@webkit.org>
2302 Reviewed by Darin Adler.
2304 https://bugs.webkit.org/show_bug.cgi?id=24067
2305 REGRESSION: Crash in WebCore::Document::initSecurityContext
2307 The crash started to happen when we removed a check for frame->document() being null.
2308 However, the original document shouldn't be null here, because it is needed to alias
2309 security origins. So, this patch fixes the crash by correcting security origin behavior.
2311 Test: http/tests/security/aboutBlank/window-open-self-about-blank.html
2312 This tests for not crashing, and for inheriting the domain from the document being replaced.
2313 Preserving the aliasing cannot be tested for automatically, because we'd need a non-trivial
2314 domain to remove a prefix from.
2316 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Create a new document before
2317 clearing the frame, so that Document::initSecurityContext() could access the old one.
2319 2009-02-25 Jay Campan <jcampan@google.com>
2321 Reviewed by Darin Fisher.
2323 https://bugs.webkit.org/show_bug.cgi?id=24066
2325 Items in drop-downs were not painted correctly. Makes sure the
2326 PopupListBox invalidates in the coordinates of the window as this is
2327 FramelessScrollView::invalidateRect paints to.
2329 * platform/chromium/PopupMenuChromium.cpp:
2330 (WebCore::PopupListBox::invalidateRow):
2332 2009-02-24 Simon Fraser <simon.fraser@apple.com>
2334 Reviewed by Anders Carlsson
2336 https://bugs.webkit.org/show_bug.cgi?id=15081
2338 Make display:none work for applet, emebed and object elements
2339 by calling rendererIsNeeded() on superclasses.
2341 Tests: fast/replaced/applet-display-none.html
2342 fast/replaced/embed-display-none.html
2343 fast/replaced/object-display-none.html
2345 * html/HTMLAppletElement.cpp:
2346 (WebCore::HTMLAppletElement::rendererIsNeeded):
2347 * html/HTMLElement.cpp:
2348 (WebCore::HTMLElement::rendererIsNeeded):
2349 * html/HTMLEmbedElement.cpp:
2350 (WebCore::HTMLEmbedElement::rendererIsNeeded):
2351 * html/HTMLObjectElement.cpp:
2352 (WebCore::HTMLObjectElement::rendererIsNeeded):
2354 2009-02-24 Simon Fraser <simon.fraser@apple.com>
2356 Reviewed by Dave Hyatt
2358 https://bugs.webkit.org/show_bug.cgi?id=24137
2360 Fix localToAbsolute() and absoluteToLocal() to map points through 3d transforms,
2361 taking perspective and transform-style: preserve-3d into account.
2363 In order to support transform-style: preserve-3d, which keeps elements in a
2364 3d space, we have to carry along an accumulated matrix in TransformState.
2365 We also need to apply the perspective from the parent, if any, with the
2372 * WebCore.vcproj/WebCore.vcproj:
2373 * WebCore.xcodeproj/project.pbxproj:
2374 * WebCoreSources.bkl:
2375 * css/CSSComputedStyleDeclaration.cpp:
2376 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2377 * platform/graphics/transforms/TransformationMatrix.cpp:
2378 (WebCore::TransformationMatrix::translate):
2379 (WebCore::TransformationMatrix::translate3d):
2380 (WebCore::TransformationMatrix::translateRight3d):
2381 * platform/graphics/transforms/TransformationMatrix.h:
2382 * rendering/RenderBox.cpp:
2383 (WebCore::RenderBox::mapLocalToAbsolutePoint):
2384 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
2385 * rendering/RenderBox.h:
2386 * rendering/RenderLayer.cpp:
2387 (WebCore::RenderLayer::updateTransform):
2388 (WebCore::RenderLayer::perspectiveTransform):
2389 (WebCore::RenderLayer::perspectiveOrigin):
2390 * rendering/RenderLayer.h:
2391 * rendering/RenderLayerBacking.cpp:
2392 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2393 * rendering/RenderLayerCompositor.cpp:
2394 (WebCore::requiresCompositingLayerForTransform):
2395 (WebCore::RenderLayerCompositor::layerHas3DContent):
2396 * rendering/RenderObject.cpp:
2397 (WebCore::RenderObject::localToAbsolute):
2398 (WebCore::RenderObject::absoluteToLocal):
2399 (WebCore::RenderObject::mapLocalToAbsolutePoint):
2400 (WebCore::RenderObject::mapAbsoluteToLocalPoint):
2401 * rendering/RenderObject.h:
2402 * rendering/RenderTableCell.cpp:
2403 (WebCore::RenderTableCell::mapLocalToAbsolutePoint):
2404 (WebCore::RenderTableCell::mapAbsoluteToLocalPoint):
2405 * rendering/RenderTableCell.h:
2406 * rendering/RenderView.cpp:
2407 (WebCore::RenderView::mapLocalToAbsolutePoint):
2408 (WebCore::RenderView::mapAbsoluteToLocalPoint):
2409 * rendering/RenderView.h:
2410 * rendering/TransformState.cpp: Added.
2411 (WebCore::TransformState::move):
2412 (WebCore::TransformState::applyTransform):
2413 (WebCore::TransformState::flatten):
2414 * rendering/TransformState.h: Added.
2415 (WebCore::TransformState::):
2416 (WebCore::TransformState::TransformState):
2417 (WebCore::TransformState::move):
2418 * rendering/style/RenderStyle.h:
2419 (WebCore::InheritedFlags::hasPerspective):
2421 2009-02-24 Sam Weinig <sam@webkit.org>
2423 Reviewed by David Hyatt.
2425 Fix for https://bugs.webkit.org/show_bug.cgi?id=23990
2426 Regression (r40837): JavaScript image popup doesn't work
2428 Make the getClientRects and getBoundingClientRect methods return rects
2429 relative to the viewport.
2431 Test: fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html
2434 (WebCore::Element::getClientRects):
2435 (WebCore::Element::getBoundingClientRect):
2437 2009-02-24 Ojan Vafai <ojan@chromium.org>
2439 Reviewed by Eric Seidel.
2441 SVG pages don't have a body or an html element!
2442 Don't return early if there is no body.
2444 * editing/VisiblePosition.cpp:
2445 (WebCore::VisiblePosition::canonicalPosition):
2447 2009-02-23 David Hyatt <hyatt@apple.com>
2449 Reviewed by Eric Seidel
2451 https://bugs.webkit.org/show_bug.cgi?id=23740, painting order wrong for normal flow elements with overflow: hidden
2453 This patch reworks the painting of overflow. There is now the concept of a "self-painting layer." All
2454 layers are considered to be self-painting except for overflow layers that are normal flow (and that don't have
2455 reflections or masks).
2457 If an overflow layer is not self-painting, then it ends up painted by its parent just like any other normal flow object.
2458 The only difference is that the clip has to be pushed and popped when painting the object's children.
2460 The lightweight clipping scheme used for controls has been extended to cover overflow now in this simplified case. With
2461 the code consolidated into reusable push/pop functions, all of the renderers that use overflow have been patched to
2462 use the new functions.
2464 Hit testing has also been patched to check the overflow clip rect first before recurring into children.
2466 Scrollbar paint has been moved into RenderBlock for now, since none of the table objects support scrollbars
2467 yet, and scrollbar hit testing was already there anyway. Now the two code paths are more symmetrical.
2469 Masks are now treated like normal flow layers (just like reflections).
2471 A couple of test cases have been added to fast/overflow to test the stacking order.
2473 * rendering/InlineFlowBox.cpp:
2474 (WebCore::InlineFlowBox::nodeAtPoint):
2475 (WebCore::InlineFlowBox::paint):
2476 * rendering/RenderBlock.cpp:
2477 (WebCore::RenderBlock::repaintOverhangingFloats):
2478 (WebCore::RenderBlock::paint):
2479 (WebCore::RenderBlock::paintChildren):
2480 (WebCore::RenderBlock::paintObject):
2481 (WebCore::RenderBlock::paintFloats):
2482 (WebCore::RenderBlock::insertFloatingObject):
2483 (WebCore::RenderBlock::floatRect):
2484 (WebCore::RenderBlock::lowestPosition):
2485 (WebCore::RenderBlock::rightmostPosition):
2486 (WebCore::RenderBlock::leftmostPosition):
2487 (WebCore::RenderBlock::addOverhangingFloats):
2488 (WebCore::RenderBlock::nodeAtPoint):
2489 (WebCore::RenderBlock::hitTestContents):
2490 * rendering/RenderBox.cpp:
2491 (WebCore::RenderBox::nodeAtPoint):
2492 (WebCore::RenderBox::pushContentsClip):
2493 (WebCore::RenderBox::popContentsClip):
2494 * rendering/RenderBox.h:
2495 (WebCore::RenderBox::paintObject):
2496 * rendering/RenderBoxModelObject.cpp:
2497 (WebCore::RenderBoxModelObject::hasSelfPaintingLayer):
2498 * rendering/RenderBoxModelObject.h:
2499 * rendering/RenderLayer.cpp:
2500 (WebCore::RenderLayer::paintLayer):
2501 (WebCore::RenderLayer::hitTestLayer):
2502 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
2503 (WebCore::RenderLayer::isSelfPaintingLayer):
2504 * rendering/RenderLayer.h:
2505 * rendering/RenderTable.cpp:
2506 (WebCore::RenderTable::paint):
2507 (WebCore::RenderTable::paintObject):
2508 (WebCore::RenderTable::nodeAtPoint):
2509 * rendering/RenderTable.h:
2510 * rendering/RenderTableCell.cpp:
2511 (WebCore::RenderTableCell::paint):
2512 * rendering/RenderTableRow.cpp:
2513 (WebCore::RenderTableRow::nodeAtPoint):
2514 (WebCore::RenderTableRow::paint):
2515 * rendering/RenderTableRow.h:
2516 * rendering/RenderTableSection.cpp:
2517 (WebCore::RenderTableSection::paint):
2518 (WebCore::RenderTableSection::paintObject):
2519 (WebCore::RenderTableSection::nodeAtPoint):
2520 * rendering/RenderTableSection.h:
2521 * rendering/RenderTreeAsText.cpp:
2523 (WebCore::writeLayers):
2525 2009-02-24 David Levin <levin@chromium.org>
2527 Reviewed by NOBODY (build fix).
2529 Attempted build fix for wx-mac.
2531 * WebCoreSources.bkl:
2533 2009-02-24 David Levin <levin@chromium.org>
2535 Reviewed by NOBODY (build fix).
2537 Attempted build fixes for qt-linux and wx-mac.
2542 2009-02-24 Ojan Vafai <ojan@dhcp-172-31-134-214.sfo.corp.google.com>
2544 Reviewed by Sam Weinig.
2546 Fix null pointer error. If the node is the Document, then ownerDocument()
2547 returns null, document() does not.
2549 * editing/VisiblePosition.cpp:
2550 (WebCore::VisiblePosition::canonicalPosition):
2552 2009-02-24 Jian Li <jianli@chromium.org>
2554 Reviewed by NOBODY (attempted build fixes).
2556 Fix build break for Windows and Linux.
2559 * WebCore.vcproj/WebCore.vcproj:
2561 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
2563 Reviewed by Eric Seidel.
2565 https://bugs.webkit.org/show_bug.cgi?id=24131
2566 Fix-up COM/RefCounted dichotomy in Chromium port.
2568 * page/chromium/AccessibilityObjectWrapper.h:
2569 (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Added
2570 explicit setting of recount.
2572 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
2574 Reviewed by Eric Seidel.
2576 https://bugs.webkit.org/show_bug.cgi?id=24141
2577 Add clarity to V8 interceptor helper function.
2579 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
2580 (WebCore::NAMED_PROPERTY_GETTER): Renamed to notHandledByInterceptor.
2581 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
2582 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
2583 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
2585 2009-02-24 Simon Fraser <simon.fraser@apple.com>
2587 Reviewed by Eric Seidel
2589 Minor numeric cleanup: convert float literals to doubles.
2591 * platform/graphics/transforms/RotateTransformOperation.cpp:
2592 (WebCore::RotateTransformOperation::blend):
2594 2009-02-24 Mark Mentovai <mark@chromium.org>
2596 Reviewed by Eric Seidel.
2598 https://bugs.webkit.org/show_bug.cgi?id=24139
2599 Add missing include.
2601 * bindings/v8/ScriptInstance.h:
2603 2009-02-24 Jian Li <jianli@chromium.org>
2605 Reviewed by Alexey Proskuryakov.
2607 Move worker related files from dom directory to worker directory under WebCore.
2608 https://bugs.webkit.org/show_bug.cgi?id=24123
2610 * DerivedSources.make:
2614 * WebCore.vcproj/MigrateIDLAndScripts:
2615 * WebCore.vcproj/WebCore.vcproj:
2616 * WebCore.xcodeproj/project.pbxproj:
2617 * platform/CrossThreadCopier.cpp: Renamed from WebCore/dom/CrossThreadCopier.cpp.
2618 * platform/CrossThreadCopier.h: Renamed from WebCore/dom/CrossThreadCopier.h.
2619 * workers/GenericWorkerTask.h: Renamed from WebCore/dom/GenericWorkerTask.h.
2620 * workers/Worker.cpp: Renamed from WebCore/dom/Worker.cpp.
2621 * workers/Worker.h: Renamed from WebCore/dom/Worker.h.
2622 * workers/Worker.idl: Renamed from WebCore/dom/Worker.idl.
2623 * workers/WorkerContext.cpp: Renamed from WebCore/dom/WorkerContext.cpp.
2624 * workers/WorkerContext.h: Renamed from WebCore/dom/WorkerContext.h.
2625 * workers/WorkerContext.idl: Renamed from WebCore/dom/WorkerContext.idl.
2626 * workers/WorkerContextProxy.h: Renamed from WebCore/dom/WorkerContextProxy.h.
2627 * workers/WorkerLocation.cpp: Renamed from WebCore/dom/WorkerLocation.cpp.
2628 * workers/WorkerLocation.h: Renamed from WebCore/dom/WorkerLocation.h.
2629 * workers/WorkerLocation.idl: Renamed from WebCore/dom/WorkerLocation.idl.
2630 * workers/WorkerMessagingProxy.cpp: Renamed from WebCore/dom/WorkerMessagingProxy.cpp.
2631 * workers/WorkerMessagingProxy.h: Renamed from WebCore/dom/WorkerMessagingProxy.h.
2632 * workers/WorkerObjectProxy.h: Renamed from WebCore/dom/WorkerObjectProxy.h.
2633 * workers/WorkerRunLoop.cpp: Renamed from WebCore/dom/WorkerRunLoop.cpp.
2634 * workers/WorkerRunLoop.h: Renamed from WebCore/dom/WorkerRunLoop.h.
2635 * workers/WorkerThread.cpp: Renamed from WebCore/dom/WorkerThread.cpp.
2636 * workers/WorkerThread.h: Renamed from WebCore/dom/WorkerThread.h.
2638 2009-02-05 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
2640 Reviewed by Dave Hyatt.
2642 Make cursor positions match IE6/IE7/FF3 when clicking in margins/padding
2643 around divs inside editable regions.
2644 https://bugs.webkit.org/show_bug.cgi?id=23605
2646 Fix clicks outside editable regions from focusing the editable region.
2647 https://bugs.webkit.org/show_bug.cgi?id=23607
2649 Removed editing/selection/contenteditable-click-outside.html as it's
2650 not as useful as our new tests.
2652 Clean up RenderBlock::positionForCoordinates to remove dead code,
2653 duplicate code, and generally make it more readable.
2655 Tests: editing/selection/click-in-margins-inside-editable-div.html
2656 editing/selection/click-in-padding-with-multiple-line-boxes.html
2657 editing/selection/click-outside-editable-div.html
2659 * editing/VisiblePosition.cpp:
2660 (WebCore::VisiblePosition::canonicalPosition):
2661 * rendering/RenderBlock.cpp:
2662 (WebCore::positionForPointRespectingEditingBoundaries):
2663 (WebCore::positionForPointWithInlineChildren):
2664 (WebCore::RenderBlock::positionForCoordinates):
2665 (WebCore::RenderBlock::updateFirstLetter):
2667 2009-02-24 Sam Weinig <sam@webkit.org>
2669 Reviewed by Geoffrey Garen.
2671 Related to <rdar://problem/6590295>
2672 Allow disabling javascript: urls.
2675 * html/HTMLAnchorElement.cpp:
2676 (WebCore::HTMLAnchorElement::parseMappedAttribute):
2677 * loader/FrameLoader.cpp:
2678 (WebCore::FrameLoader::executeIfJavaScriptURL):
2680 (WebCore::Page::Page):
2681 (WebCore::Page::setJavaScriptURLsAreAllowed):
2682 (WebCore::Page::javaScriptURLsAreAllowed):
2685 2009-02-24 Simon Fraser <simon.fraser@apple.com>
2687 Fix build when ACCELERATED_COMPOSITING is turned on
2688 (overflowList() -> normalFlowList()).
2690 * rendering/RenderLayerBacking.cpp:
2691 (WebCore::RenderLayerBacking::hasNonCompositingContent):
2692 (WebCore::RenderLayerBacking::paintIntoLayer):
2693 * rendering/RenderLayerCompositor.cpp:
2694 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2695 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2696 (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2697 (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
2698 (WebCore::RenderLayerCompositor::layerHas3DContent):
2700 2009-02-24 Simon Fraser <simon.fraser@apple.com>
2702 Reviewed by Darin Adler
2704 https://bugs.webkit.org/show_bug.cgi?id=24135
2706 Round the FloatPoint returned by absoluteToLocal(), rather than
2709 * dom/MouseRelatedEvent.cpp:
2710 (WebCore::MouseRelatedEvent::receivedTarget):
2712 2009-02-24 Beth Dakin <bdakin@apple.com>
2714 Reviewed by Sam Weinig.
2716 Fix for https://bugs.webkit.org/show_bug.cgi?id=24004 REGRESSION:
2717 Ordered list item marker misaligned when line height is not 1.2
2718 -and corresponding <rdar://problem/6602506>
2720 This is a regression from http://trac.webkit.org/changeset/40880
2721 where createInlineBox was taken off of RenderObject and moved to
2722 RenderBox. The problem was that the RenderBox version still needs
2723 to be virtual because there is still an existing implementation in
2726 * rendering/RenderBox.h:
2727 * rendering/RenderListMarker.cpp:
2728 (WebCore::RenderListMarker::createInlineBox):
2729 * rendering/RenderListMarker.h:
2731 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
2733 Reviewed by Eric Seidel.
2735 https://bugs.webkit.org/show_bug.cgi?id=24128
2736 Upstream more V8 custom bindings: constructors, XSLTProcessor.
2738 * bindings/v8/custom/V8DOMParserConstructor.cpp: Added.
2739 (WebCore::CALLBACK_FUNC_DECL):
2740 * bindings/v8/custom/V8MessageChannelConstructor.cpp: Added.
2741 (WebCore::CALLBACK_FUNC_DECL):
2742 * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Added.
2743 (WebCore::CALLBACK_FUNC_DECL):
2744 * bindings/v8/custom/V8XMLSerializerConstructor.cpp: Added.
2745 (WebCore::CALLBACK_FUNC_DECL):
2746 * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Added.
2747 (WebCore::CALLBACK_FUNC_DECL):
2748 * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Added.
2749 (WebCore::CALLBACK_FUNC_DECL):
2751 2009-02-24 David Levin <levin@chromium.org>
2753 Reviewed by Alexey Proskuryakov.
2755 Bug 24090: WorkerThreadableLoader needs to be able to post tasks for a mode.
2756 <https://bugs.webkit.org/show_bug.cgi?id=24090>
2758 No observable change in behavior, so no test.
2760 * dom/WorkerMessagingProxy.cpp:
2761 (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
2762 (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
2763 Fixed the bug that m_unconfirmedMessageCount was getting incremented for non-message tasks.
2765 (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext):
2767 * dom/WorkerMessagingProxy.h:
2768 * loader/ThreadableLoader.cpp:
2769 (WebCore::ThreadableLoader::create):
2770 * loader/WorkerThreadableLoader.cpp:
2771 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2772 (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2773 (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
2774 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
2775 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
2776 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
2777 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2778 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
2779 (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
2780 Changed these methods to post task using a mode.
2782 * loader/WorkerThreadableLoader.h:
2783 (WebCore::WorkerThreadableLoader::create):
2785 2009-02-24 Alexey Proskuryakov <ap@webkit.org>
2787 Reviewed by Darin Adler.
2789 https://bugs.webkit.org/show_bug.cgi?id=24091
2790 <rdar://problem/6468660> Start of redirect chain ends up as master entry in Application Cache
2792 Test: http/tests/appcache/access-via-redirect.php
2794 * loader/appcache/ApplicationCacheGroup.cpp:
2795 (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Use the URL we ended up with,
2796 not the original one.
2798 2009-02-24 Jian Li <jianli@chromium.org>
2800 Reviewed by Alexey Proskuryakov.
2802 Change to include WorkerObjectProxy.h instead of WorkerMessagingProxy.h in WorkerContext.cpp and WorkerScriptController.cpp.
2803 https://bugs.webkit.org/show_bug.cgi?id=24112
2805 * bindings/js/WorkerScriptController.cpp:
2806 * dom/WorkerContext.cpp:
2808 2009-02-23 Antti Koivisto <antti@apple.com>
2810 Reviewed by Oliver Hunt.
2812 <rdar://problem/6613796> Extended text codecs registered on webview creation
2814 Comparing a text encoding with string "GBK" ended up constructing
2815 TextEncoding("GBK") which in turn initialized all extended
2818 * platform/text/TextCodecICU.cpp:
2819 (WebCore::TextCodecICU::decode):
2821 2009-02-23 Sam Weinig <sam@webkit.org>
2825 * bridge/qt/qt_runtime.cpp:
2826 (JSC::Bindings::valueRealType):
2828 2009-02-23 Julien Chaffraix <jchaffraix@webkit.org>
2830 Reviewed by Darin Adler.
2832 Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)
2834 The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
2835 element created with createElement could have a wrong nodeName (createElement sets the string as the
2836 localName without checking for a prefix).
2838 The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
2839 and will always succeed.
2840 Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
2843 Test: fast/dom/cloneNode.html
2846 (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
2847 always return an element.
2849 * html/HTMLElement.cpp:
2850 * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.
2852 2009-02-23 Dimitri Glazkov <dglazkov@chromium.org>
2854 Reviewed by Eric Seidel.
2856 https://bugs.webkit.org/show_bug.cgi?id=24109
2857 Upstream V8 Script abstractions, all except ScriptController.
2859 * bindings/v8/ScriptCachedFrameData.h: Added.
2860 (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
2861 (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
2862 (WebCore::ScriptCachedFrameData::restore):
2863 (WebCore::ScriptCachedFrameData::clear):
2864 (WebCore::ScriptCachedFrameData::domWindow):
2865 * bindings/v8/ScriptCallFrame.cpp: Added.
2866 (WebCore::ScriptCallFrame::ScriptCallFrame):
2867 (WebCore::ScriptCallFrame::~ScriptCallFrame):
2868 (WebCore::ScriptCallFrame::argumentAt):
2869 * bindings/v8/ScriptCallFrame.h: Added.
2870 (WebCore::ScriptCallFrame::functionName):
2871 (WebCore::ScriptCallFrame::sourceURL):
2872 (WebCore::ScriptCallFrame::lineNumber):
2873 (WebCore::ScriptCallFrame::argumentCount):
2874 * bindings/v8/ScriptCallStack.cpp: Added.
2875 (WebCore::ScriptCallStack::ScriptCallStack):
2876 (WebCore::ScriptCallStack::~ScriptCallStack):
2877 (WebCore::ScriptCallStack::at):
2878 * bindings/v8/ScriptCallStack.h: Added.
2879 (WebCore::ScriptCallStack::size):
2880 * bindings/v8/ScriptInstance.cpp: Added.
2881 (WebCore::V8ScriptInstance::V8ScriptInstance):
2882 (WebCore::V8ScriptInstance::~V8ScriptInstance):
2883 (WebCore::V8ScriptInstance::instance):
2884 (WebCore::V8ScriptInstance::clear):
2885 (WebCore::V8ScriptInstance::set):
2886 * bindings/v8/ScriptInstance.h: Added.
2887 (WebCore::V8ScriptInstance::create):
2888 * bindings/v8/ScriptSourceCode.h: Added.
2889 (WebCore::ScriptSourceCode::ScriptSourceCode):
2890 (WebCore::ScriptSourceCode::isEmpty):
2891 (WebCore::ScriptSourceCode::source):
2892 (WebCore::ScriptSourceCode::url):
2893 (WebCore::ScriptSourceCode::startLine):
2894 * bindings/v8/ScriptState.h: Added.
2895 (WebCore::ScriptState::hadException):
2896 (WebCore::ScriptState::setException):
2897 (WebCore::ScriptState::exception):
2898 * bindings/v8/ScriptString.h: Added.
2899 (WebCore::ScriptString::ScriptString):
2900 (WebCore::ScriptString::operator String):
2901 (WebCore::ScriptString::isNull):
2902 (WebCore::ScriptString::size):
2903 (WebCore::ScriptString::operator=):
2904 (WebCore::ScriptString::operator+=):
2905 * bindings/v8/ScriptValue.cpp: Added.
2906 (WebCore::ScriptValue::getString):
2907 * bindings/v8/ScriptValue.h: Added.
2908 (WebCore::ScriptValue::ScriptValue):
2909 (WebCore::ScriptValue::operator=):
2910 (WebCore::ScriptValue::operator==):
2911 (WebCore::ScriptValue::operator!=):
2912 (WebCore::ScriptValue::isNull):
2913 (WebCore::ScriptValue::isUndefined):
2914 (WebCore::ScriptValue::clear):
2915 (WebCore::ScriptValue::~ScriptValue):
2916 (WebCore::ScriptValue::v8Value):
2918 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
2920 Reviewed by Timothy Hatcher.
2922 https://bugs.webkit.org/show_bug.cgi?id=24106
2923 The Qt port is crashing on exit because the tear down procedure involves
2924 the WebCore::InspectorController trying to access the JS execution context
2925 for a page that is being deleted. This patch amends the inspector so
2926 that it does not try and access the execution context of the WebCore::Page
2927 in the midst of deletion.
2929 * inspector/InspectorController.cpp:
2930 (WebCore::InspectorController::inspectedPageDestroyed):
2931 (WebCore::InspectorController::stopUserInitiatedProfiling):
2933 2009-02-23 David Levin <levin@chromium.org>
2935 Reviewed by Alexey Proskuryakov.
2937 Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
2938 <https://bugs.webkit.org/show_bug.cgi?id=24088>
2940 No observable change in behavior, so no test.
2942 * loader/DocumentThreadableLoader.cpp:
2943 (WebCore::DocumentThreadableLoader::create):
2944 * loader/ThreadableLoaderClient.h:
2945 (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
2946 * loader/ThreadableLoaderClientWrapper.h:
2947 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
2948 * loader/WorkerThreadableLoader.cpp:
2949 (WebCore::workerContextDidFailRedirectCheck):
2950 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
2951 * loader/WorkerThreadableLoader.h:
2952 * xml/XMLHttpRequest.cpp:
2953 (WebCore::XMLHttpRequest::didFinishLoading):
2954 * xml/XMLHttpRequest.h:
2956 2009-02-23 David Levin <levin@chromium.org>
2958 Reviewed by Alexey Proskuryakov.
2960 Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
2961 <https://bugs.webkit.org/show_bug.cgi?id=24047>
2963 Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
2964 using only MessageQueue::waitForMessageFilteredWithTimeout instead
2965 of three different MessageQueue methods.
2967 No observable change in behavior, so no test.
2969 * dom/WorkerRunLoop.cpp:
2970 (WebCore::ModePredicate::operator()):
2971 Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
2972 (WebCore::WorkerRunLoop::runInMode):
2973 * dom/WorkerRunLoop.h:
2975 2009-02-23 David Hyatt <hyatt@apple.com>
2977 In preparation for making layers for multicol objects (so that they can properly split child layers
2978 into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
2979 of RenderLayer to use the term "normal flow" instead.
2981 Reviewed by Cameron Zwarich
2983 * rendering/RenderLayer.cpp:
2984 (WebCore::RenderLayer::RenderLayer):
2985 (WebCore::RenderLayer::~RenderLayer):
2986 (WebCore::RenderLayer::setHasVisibleContent):
2987 (WebCore::RenderLayer::enclosingCompositingLayer):
2988 (WebCore::RenderLayer::addChild):
2989 (WebCore::RenderLayer::removeChild):
2990 (WebCore::RenderLayer::paintLayer):
2991 (WebCore::RenderLayer::hitTestLayer):
2992 (WebCore::RenderLayer::dirtyNormalFlowList):
2993 (WebCore::RenderLayer::updateNormalFlowList):
2994 (WebCore::RenderLayer::collectLayers):
2995 (WebCore::RenderLayer::updateLayerListsIfNeeded):
2996 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
2997 (WebCore::RenderLayer::styleChanged):
2998 * rendering/RenderLayer.h:
2999 (WebCore::RenderLayer::isNormalFlowOnly):
3000 (WebCore::RenderLayer::normalFlowList):
3001 * rendering/RenderTreeAsText.cpp:
3002 (WebCore::writeLayers):
3004 2009-02-23 David Hyatt <hyatt@apple.com>
3006 Fix the stacking order for column rules in multi-column layout. Column rules should paint as part of the background of an element, just
3007 after all other components of the background have been painted. This allows negative z-index children to still paint on top of the
3008 column rules (rather than ending up above the background of the box but behind the column rules).
3010 Reviewed by Eric Seidel
3012 Added fast/multicol/column-rules-stacking.html
3014 * rendering/RenderBlock.cpp:
3015 (WebCore::RenderBlock::paintColumnRules):
3016 (WebCore::RenderBlock::paintColumnContents):
3017 (WebCore::RenderBlock::paintObject):
3018 * rendering/RenderBlock.h:
3020 2009-02-23 Adam Treat <adam.treat@torchmobile.com>
3022 Reviewed by David Hyatt.
3024 No testcases have been added or modified since this patch should not result in
3025 a behavior change for ports that have layout tests enabled.
3027 Currently, the implementation of GraphicsContext::drawLineForText amongst
3028 the various ports differ in that some of them are honoring the context's
3029 strokeStyle when drawing a text-decoration and some of them are not.
3030 For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
3031 but the Cairo implementation does and has an explicit workaround that
3032 sets the strokeStyle() temporarily.
3034 This patch fixes so that all ports are consistent by explicitly making sure
3035 to set the GraphicsContext strokeStyle to SolidStroke whenever
3036 painting the text-decoration of an InlineFlowBox or InlineTextBox as these
3037 should always use a solid stroke.
3039 This patch addresses these bugs:
3040 https://bugs.webkit.org/show_bug.cgi?id=19364
3041 https://bugs.webkit.org/show_bug.cgi?id=15659
3043 * rendering/InlineFlowBox.cpp:
3044 (WebCore::InlineFlowBox::paintTextDecorations):
3045 * rendering/InlineTextBox.cpp:
3046 (WebCore::InlineTextBox::paintDecoration):
3048 2009-02-23 Scott Violet <sky@google.com>
3050 Reviewed by Eric Seidel.
3052 https://bugs.webkit.org/show_bug.cgi?id=24098
3053 Bugs in ClipboardChromium
3055 Fixes the following bugs in ClipboardChromium:
3056 * It's possible for the extension to be empty, resulting in a bad file
3057 name, for example, 'foo.' or just '.'.
3058 * We weren't restricting the size of the file to MAX_PATH.
3059 * We weren't removing characters that are invalid for file system names.
3061 * platform/chromium/ClipboardChromium.cpp:
3062 (WebCore::writeImageToDataObject):
3063 * platform/chromium/ClipboardChromium.h:
3064 * platform/chromium/ClipboardChromiumLinux.cpp: Added.
3065 (WebCore::ClipboardChromium::validateFileName):
3066 * platform/chromium/ClipboardChromiumMac.cpp: Added.
3067 (WebCore::ClipboardChromium::validateFileName):
3068 * platform/chromium/ClipboardChromiumWin.cpp: Added.
3069 (WebCore::isInvalidFileCharacter):
3070 (WebCore::ClipboardChromium::validateFileName):
3072 2009-02-23 Thiago Macieira <thiago.macieira@nokia.com>
3074 Reviewed by Simon Hausmann.
3076 Fix the Copyright notices in a few files
3078 * platform/qt/RenderThemeQt.h:
3080 2009-02-23 Xan Lopez <xan@gnome.org>
3082 Reviewed by Alexey Proskuryakov.
3084 https://bugs.webkit.org/show_bug.cgi?id=22624
3085 [SOUP][GTK] Need API to get SoupSession from WebKit.
3087 Allow to retrieve the Soup session and modify the code to take
3088 into account users changing features on it.
3090 * platform/network/ResourceHandle.h:
3091 * platform/network/soup/CookieJarSoup.cpp:
3092 (WebCore::defaultCookieJar):
3093 (WebCore::setDefaultCookieJar):
3094 * platform/network/soup/CookieJarSoup.h:
3095 * platform/network/soup/ResourceHandleSoup.cpp:
3096 (WebCore::createSoupSession):
3097 (WebCore::ensureSessionIsInitialized):
3098 (WebCore::ResourceHandle::startHttp):
3099 (WebCore::ResourceHandle::cancel):
3100 (WebCore::ResourceHandle::defaultSession):
3102 2009-02-23 Xan Lopez <xan@gnome.org>
3104 Reviewed by Alexey Proskuryakov.
3106 https://bugs.webkit.org/show_bug.cgi?id=22624
3107 [SOUP][GTK] Need API to get SoupSession from WebKit.
3109 Remove CURL support.
3113 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3115 Reviewed by Mark Rowe.
3117 Test: fast/dom/empty-hash-and-search.html
3119 https://bugs.webkit.org/show_bug.cgi?id=21147
3120 hash property returns incorrect value for links w/o hash
3122 Make hash() and search() behavior for empty and missing parts match IE and Firefox.
3124 * platform/KURL.cpp:
3125 (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
3126 (WebCore::KURL::prettyURL): Append the query with the question mark.
3128 * page/Location.cpp:
3129 (WebCore::Location::search): Return an empty string if query is empty or missing.
3130 (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
3132 * dom/WorkerLocation.cpp:
3133 (WebCore::WorkerLocation::search):
3134 (WebCore::WorkerLocation::hash):
3135 Match document.location fixes above.
3137 * html/HTMLAnchorElement.cpp:
3138 (WebCore::HTMLAnchorElement::hash):
3139 (WebCore::HTMLAnchorElement::search):
3140 Return an empty string for empty and missing parts.
3142 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3144 Reviewed by Darin Adler.
3146 https://bugs.webkit.org/show_bug.cgi?id=20184
3147 SELECT with no name generates invalid query string
3149 Test: fast/forms/select-no-name.html
3151 * html/HTMLSelectElement.cpp:
3152 (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
3154 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3156 Apply review comments for the previous check-in (forgot to save the file, oops).
3158 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
3160 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3162 Reviewed by Darin Adler.
3164 https://bugs.webkit.org/show_bug.cgi?id=15707
3165 Crash when manipulating document from within an iframe onload function
3167 Test: fast/dom/onload-open.html
3169 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
3170 the current node, because anything can happen when dispatching events.
3172 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3174 Reviewed by Darin Adler.
3176 https://bugs.webkit.org/show_bug.cgi?id=18970
3177 Numerically named input fields cause document.forms loop problems
3179 Test: fast/forms/numeric-input-name.html
3181 * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
3182 latter overrides properties.
3184 2009-02-23 Alexey Proskuryakov <ap@webkit.org>
3186 Reviewed by Sam Weinig.
3188 https://bugs.webkit.org/show_bug.cgi?id=24059
3189 Tokenizer::write() return value is never used
3192 * dom/XMLTokenizer.cpp:
3193 (WebCore::XMLTokenizer::write):
3194 * dom/XMLTokenizer.h:
3195 * html/HTMLTokenizer.cpp:
3196 (WebCore::HTMLTokenizer::write):
3197 * html/HTMLTokenizer.h:
3198 * loader/FTPDirectoryDocument.cpp:
3199 (WebCore::FTPDirectoryTokenizer::write):
3200 * loader/ImageDocument.cpp:
3201 (WebCore::ImageTokenizer::write):
3202 * loader/MediaDocument.cpp:
3203 (WebCore::MediaTokenizer::write):
3204 * loader/PluginDocument.cpp:
3205 (WebCore::PluginTokenizer::write):
3206 * loader/TextDocument.cpp:
3207 (WebCore::TextTokenizer::write):
3208 Made write() return void, not bool.
3210 2009-02-20 Geoffrey Garen <ggaren@apple.com>
3212 Reviewed by Sam Weinig.
3214 Updated for JavaScriptCore changes to timeout checking.
3216 * bindings/js/JSCustomPositionCallback.cpp:
3217 (WebCore::JSCustomPositionCallback::handleEvent):
3218 * bindings/js/JSCustomPositionErrorCallback.cpp:
3219 (WebCore::JSCustomPositionErrorCallback::handleEvent):
3220 * bindings/js/JSCustomSQLStatementCallback.cpp:
3221 (WebCore::JSCustomSQLStatementCallback::handleEvent):
3222 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3223 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
3224 * bindings/js/JSCustomSQLTransactionCallback.cpp:
3225 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
3226 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
3227 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
3228 * bindings/js/JSCustomVoidCallback.cpp:
3229 (WebCore::JSCustomVoidCallback::handleEvent):
3230 * bindings/js/JSCustomXPathNSResolver.cpp:
3231 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
3232 * bindings/js/JSDOMWindowBase.cpp:
3233 (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3234 (WebCore::JSDOMWindowBase::commonJSGlobalData):
3235 * bindings/js/JSEventListener.cpp:
3236 (WebCore::JSAbstractEventListener::handleEvent):
3237 * bindings/js/ScheduledAction.cpp:
3238 (WebCore::ScheduledAction::executeFunctionInContext):
3239 * bindings/js/ScriptController.cpp:
3240 (WebCore::ScriptController::evaluate):
3241 * bindings/js/WorkerScriptController.cpp:
3242 (WebCore::WorkerScriptController::evaluate):
3243 (WebCore::WorkerScriptController::forbidExecution):
3244 * bindings/objc/WebScriptObject.mm:
3245 (-[WebScriptObject callWebScriptMethod:withArguments:]):
3246 (-[WebScriptObject evaluateWebScript:]):
3247 * bridge/NP_jsobject.cpp:
3248 (_NPN_InvokeDefault):
3252 * bridge/jni/jni_jsobject.mm:
3253 (JavaJSObject::call):
3254 (JavaJSObject::eval):
3256 2009-02-21 Hironori Bono <hbono@chromium.org>
3258 Reviewed by Alexey Proskuryakov.
3260 https://bugs.webkit.org/show_bug.cgi?id=23786
3261 [Chromium] line-break characters in a complex text are treated as zero-width spaces
3263 This change prevents the UniscribeHelper class from treating the line-break characters
3266 Tests: fast/text/international/bidi-linebreak-001.html
3267 fast/text/international/bidi-linebreak-002.html
3268 fast/text/international/bidi-linebreak-003.html
3270 * platform/graphics/chromium/UniscribeHelper.cpp:
3271 (WebCore::UniscribeHelper::adjustSpaceAdvances):
3272 Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
3273 the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
3274 so does when Chromium renders a simple text.
3276 2009-02-20 Julien Chaffraix <jchaffraix@webkit.org>
3278 Reviewed by Alexey Proskuryakov.
3280 Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
3282 Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
3283 or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
3286 It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
3287 enables us to use some generated QualifiedName.
3289 * bindings/js/JSOptionConstructor.cpp:
3290 (WebCore::constructHTMLOptionElement):
3292 (WebCore::Document::setTitle):
3293 * dom/XMLTokenizer.cpp:
3294 (WebCore::createXHTMLParserErrorHeader):
3295 (WebCore::XMLTokenizer::insertErrorMessageBlock):
3296 * editing/CompositeEditCommand.cpp:
3297 (WebCore::createBlockPlaceholderElement):
3298 * editing/htmlediting.cpp:
3299 (WebCore::createTabSpanElement):
3300 * html/HTMLSelectElement.cpp:
3301 (WebCore::HTMLSelectElement::setLength):
3302 * loader/FTPDirectoryDocument.cpp:
3303 (WebCore::FTPDirectoryTokenizer::appendEntry):
3304 (WebCore::FTPDirectoryTokenizer::createTDForFilename):
3305 (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
3306 (WebCore::FTPDirectoryTokenizer::createBasicDocument):
3307 * loader/ImageDocument.cpp:
3308 (WebCore::ImageDocument::createDocumentStructure):
3309 * loader/MediaDocument.cpp:
3310 (WebCore::MediaTokenizer::createDocumentStructure):
3311 * loader/PluginDocument.cpp:
3312 (WebCore::PluginTokenizer::createDocumentStructure):
3313 * loader/TextDocument.cpp:
3314 (WebCore::TextTokenizer::write):
3316 (WebCore::Frame::selectionComputedStyle):
3317 (WebCore::Frame::styleForSelectionStart):
3318 Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.
3320 * xml/XPathFunctions.cpp:
3321 (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
3322 * page/DragController.cpp:
3323 (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.
3325 2009-02-19 Dimitri Glazkov <dglazkov@chromium.org>
3327 Reviewed by Eric Seidel.
3329 https://bugs.webkit.org/show_bug.cgi?id=24060
3330 Fix up to accommodate for CanvasPixelArray return.
3332 * platform/graphics/skia/ImageBufferSkia.cpp:
3333 (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
3334 (WebCore::ImageBuffer::putImageData): Ditto.
3336 2009-02-20 Eric Carlson <eric.carlson@apple.com>
3340 https://bugs.webkit.org/show_bug.cgi?id=24042
3341 Bug 24042: MediaPlayer should cache plug-in proxy
3343 The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
3344 MediaPlayer will always have created the private media player object before
3345 the plug-in is instantiated and calls back with the proxy object. This is not
3346 true on all platforms because of threading latency, so MediaPlayer should
3347 cache the plug-in proxy so it can pass it to the media engine at a later time.
3349 * platform/graphics/MediaPlayer.cpp:
3350 (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
3351 (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
3352 (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
3353 (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
3354 (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
3355 (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
3356 * platform/graphics/MediaPlayer.h: Declare m_playerProxy.
3358 2009-02-20 Eric Carlson <eric.carlson@apple.com>
3362 https://bugs.webkit.org/show_bug.cgi?id=24063
3363 Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element
3365 * html/HTMLMediaElement.cpp:
3366 (WebCore::HTMLMediaElement::HTMLMediaElement): Rename m_loadRestrictions to m_Restrictions.
3367 Initialize m_internalCall.
3368 (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
3369 (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
3370 (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
3371 (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
3372 (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
3373 (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
3374 (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
3375 (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
3376 (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
3377 (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
3378 * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
3379 add RequireUserGestureRateChangeRestriction.
3381 2009-02-20 Darin Fisher <darin@chromium.org>
3383 Fix build bustage in FileSystemWin.cpp.
3385 Need to return CString() instead of 0 since there are now two CString
3386 constructors that take a pointer type.
3388 * platform/win/FileSystemWin.cpp:
3389 (WebCore::openTemporaryFile):
3391 2009-02-20 Dimitri Glazkov <dglazkov@chromium.org>
3393 Reviewed by Sam Weinig.
3395 https://bugs.webkit.org/show_bug.cgi?id=23999
3396 Change license headers to accurately reflect code history.
3398 * platform/ContentType.cpp:
3399 * platform/ContentType.h:
3401 2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
3403 Reviewed by Antti Koivisto.
3405 https://bugs.webkit.org/show_bug.cgi?id=23999
3406 Split off MIME type parsing into its own class.
3408 * GNUmakefile.am: Added ContentType sources.
3409 * WebCore.pro: Ditto.
3410 * WebCore.scons: Ditto.
3411 * WebCore.vcproj/WebCore.vcproj: Ditto.
3412 * WebCore.xcodeproj/project.pbxproj: Ditto.
3413 * WebCoreSources.bkl: Ditto.
3414 * html/HTMLMediaElement.cpp: Changed to use ContentType.
3415 (WebCore::HTMLMediaElement::selectMediaURL):
3416 * platform/ContentType.cpp: Added.
3417 (WebCore::ContentType::ContentType):
3418 (WebCore::ContentType::parameter):
3419 (WebCore::ContentType::type):
3420 * platform/ContentType.h: Added.
3421 (WebCore::ContentType::raw):
3422 * platform/MIMETypeRegistry.cpp:
3423 * platform/MIMETypeRegistry.h:
3424 * platform/graphics/MediaPlayer.cpp:
3425 (WebCore::MediaPlayer::load):
3426 * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
3427 * rendering/style/RenderStyleConstants.h: Ditto.
3430 2009-02-20 Holger Hans Peter Freyther <zecke@selfish.org>
3432 Unreviewed build fix.
3434 Use CString() instead of 0.
3436 * platform/gtk/FileSystemGtk.cpp:
3437 (WebCore::openTemporaryFile):
3438 * platform/qt/FileSystemQt.cpp:
3439 (WebCore::openTemporaryFile):
3441 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
3443 Reviewed by Holger Freyther.
3445 When dealing with local files, use a path instead of an URI. GFile
3446 has problems decoding URIs with percent signs on them.
3448 * platform/network/soup/ResourceHandleSoup.cpp:
3449 (WebCore::ResourceHandle::startGio):
3451 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
3453 Reviewed by Holger Freyther.
3455 Protect the ResourceHandle instance from being destroyed by
3456 didReceiveData inside the GIO readCallback call, so that
3457 cancelling caused by scripts is handled correctly.
3459 * platform/network/soup/ResourceHandleSoup.cpp:
3460 (WebCore::readCallback):
3462 2009-02-20 David Kilzer <ddkilzer@apple.com>
3464 Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
3466 Reviewed by Sam Weinig.
3468 * loader/icon/IconDatabaseNone.cpp:
3469 (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
3470 (WebCore::IconDatabase::open): Commented out unused parameter.
3471 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
3472 (WebCore::IconDatabase::iconForPageURL): Ditto.
3473 (WebCore::IconDatabase::iconURLForPageURL): Ditto.
3474 (WebCore::IconDatabase::defaultIcon): Ditto.
3475 (WebCore::IconDatabase::retainIconForPageURL): Ditto.
3476 (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
3477 (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
3478 (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
3479 (WebCore::IconDatabase::setEnabled): Ditto.
3480 (WebCore::IconDatabase::pageURLMappingCount): Added stub.
3481 (WebCore::IconDatabase::retainedPageURLCount): Ditto.
3482 (WebCore::IconDatabase::iconRecordCount): Ditto.
3483 (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
3485 2009-02-20 David Kilzer <ddkilzer@apple.com>
3487 Add comment to generated code when shadowing a built-in object
3489 Reviewed by Sam Weinig.
3491 * bindings/scripts/CodeGeneratorJS.pm: Added comment to
3492 generated code output.
3494 2009-02-20 Avi Drissman <avi@chromium.org>
3496 Reviewed by Eric Seidel.
3498 https://bugs.webkit.org/show_bug.cgi?id=24036
3499 Keyboard events need disambiguation on the Linux platform too.
3501 * platform/chromium/PlatformKeyboardEventChromium.cpp:
3502 (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
3504 2009-02-19 Darin Fisher <darin@chromium.org>
3506 Reviewed by Eric Seidel.
3508 https://bugs.webkit.org/show_bug.cgi?id=24046
3510 Several improvements to CString:
3511 1- Make it possible to initialize a CString from a CStringBuffer
3512 2- Make it possible to get a CStringBuffer from a CString
3513 3- Change CStringBuffer::data() to return a const pointer to ward off mutation
3514 4- Remove unused releaseBuffer() methods.
3515 5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
3517 * platform/text/CString.cpp:
3518 (WebCore::CString::init):
3519 (WebCore::CString::mutableData):
3520 (WebCore::CString::newUninitialized):
3521 (WebCore::CString::copyBufferIfNeeded):
3522 * platform/text/CString.h:
3523 (WebCore::CStringBuffer::data):
3524 (WebCore::CStringBuffer::length):
3525 (WebCore::CStringBuffer::create):
3526 (WebCore::CStringBuffer::mutableData):
3527 (WebCore::CString::CString):
3528 (WebCore::CString::buffer):
3530 2009-02-19 Dmitry Titov <dimich@chromium.org>
3532 Reviewed by Alexey Proskuryakov.
3534 https://bugs.webkit.org/show_bug.cgi?id=24017
3535 Remove some usage of Document in Worker.
3537 * dom/WorkerContext.h:
3538 (WebCore::WorkerContext::userAgent):
3540 (WebCore::Document::userAgent):
3542 * dom/ScriptExecutionContext.h:
3543 Added virtual ScriptExecutionContext::userAgent(const KURL&).
3544 Document implementation uses FrameLoader::userAgent and
3545 WorkerContext receives the string on creation and stores it in a member.
3548 (WebCore::Worker::Worker):
3549 (WebCore::Worker::notifyFinished):
3551 (WebCore::Worker::create):
3552 Instead of Document the Worker constructor now gets a ScriptExecutionContext.
3553 Start using some methods on SEC (like completeURL() and userAgent()).
3554 For others, explicitly case to Document and add a FIXME.
3555 Remove Worker::document() too.
3557 2009-02-20 Gustavo Noronha Silva <gns@gnome.org>
3559 Rubber-stamped by Holger Freyther.
3561 Do not set httpStatus to SOUP_STATUS_OK when serving local files
3562 to match other ports' behavior, fixing xmlhttprequest test
3565 * platform/network/soup/ResourceHandleSoup.cpp:
3566 (WebCore::queryInfoCallback):
3568 2009-02-19 Dan Bernstein <mitz@apple.com>
3570 Reviewed by Sam Weinig.
3572 - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
3573 Do not send loader callbacks during CSS styling
3575 Undo the iChat-specific quirk added in
3576 <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
3577 cache client callbacks during attach() and recalcStyle().
3579 * WebCore.base.exp: Removed
3580 Settings::setNeedsIChatMemoryCacheCallsQuirk().
3581 * dom/ContainerNode.cpp:
3582 (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
3583 cache client callbacks and remember to enable them afterwards if needed.
3584 (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
3585 cache client callbacks if they were disabled in
3586 suspendPostAttachCallbacks().
3587 (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
3588 resumePostAttachCallbacks().
3589 * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
3590 and resumePostAttachCallbacks() non-static.
3592 (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
3594 * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
3596 (WebCore::Settings::Settings):
3599 2009-02-19 Holger Hans Peter Freyther <zecke@selfish.org>
3601 Unreviewed build fix.
3603 Build fix after r41092. Make the memoryUsage method
3604 public. It will be shadowed by cf/mac and for curl/soup/qt
3605 the implementation from ResourceResponseBase will be used.
3607 * platform/network/ResourceResponseBase.h:
3608 (WebCore::ResourceResponseBase::memoryUsage):
3610 2009-02-19 Beth Dakin <bdakin@apple.com>