1 2009-03-10 Alexey Proskuryakov <ap@webkit.org>
3 Reviewed by Darin Adler.
5 https://bugs.webkit.org/show_bug.cgi?id=24285
6 Text resource loading checks for BOM twice
8 This removes TextDecoder class, since its only purpose was to check for BOM, which is
9 already done in TextResourceDecoder. Callers that use TextEncoding::decode() won't get
10 BOM checked, but I didn't find any cases where it would significantly change behavior.
15 * WebCore.vcproj/WebCore.vcproj:
16 * WebCore.xcodeproj/project.pbxproj:
18 Remove TextDecoder.{h,cpp}.
20 * platform/text/TextDecoder.cpp: Removed.
21 * platform/text/TextDecoder.h: Removed.
23 * loader/TextResourceDecoder.h: Instead of a TextDecoder object, keep TextEncoding and
26 * loader/TextResourceDecoder.cpp:
27 (WebCore::TextResourceDecoder::TextResourceDecoder): Updated for m_encoding being a member.
28 (WebCore::TextResourceDecoder::setEncoding): Ditto.
29 (WebCore::TextResourceDecoder::checkForBOM): Removed a FIXME saying that a BOM could override
30 even a user-chosen encoding - this is how it already worked due to TextDecoder checking for
31 BOM again. Made this function return the detected BOM length.
32 (WebCore::TextResourceDecoder::decode): Skip the BOM if it was found at the beginning of
34 (WebCore::TextResourceDecoder::flush): Reset m_checkedForBOM, so that re-decoding the same
35 resource again (as frequently done by CachedResource subclasses) will skip the BOM correctly.
37 * platform/text/TextEncoding.cpp: (WebCore::TextEncoding::decode):
38 Use TextCodec directly without a TextDecoder wrapper. This means that this method no longer
39 checks for BOM, which was a counter-intuitive feature.
41 * loader/CachedScript.cpp:
42 (WebCore::CachedScript::CachedScript):
43 (WebCore::CachedScript::setEncoding):
44 (WebCore::CachedScript::encoding):
45 (WebCore::CachedScript::script):
46 * loader/CachedScript.h:
47 * loader/appcache/ManifestParser.cpp:
48 (WebCore::parseManifest):
49 Use TextResourceDecoder, as TextEncoding::decode() no longer checks for BOM.
50 A side effect of this is that these resources will now be subject to encoding auto-detection.
52 * loader/CachedFont.cpp: (WebCore::CachedFont::ensureSVGFontData):
53 * page/Page.cpp: (WebCore::Page::userStyleSheet):
54 Be sure to flush TextResourceDecoder, pushing any remaining bytes out, and making the decoder
55 re-usable (for repeated decoding of the same resource).
57 * platform/text/TextEncodingRegistry.h: Updated comments for newTextCodec().
59 2009-03-10 Alexey Proskuryakov <ap@webkit.org>
61 Reviewed by Darin Adler.
63 https://bugs.webkit.org/show_bug.cgi?id=24488
64 An assertion failure when updating an offline application cache after emptying caches
66 Emptying appcache cannot be performed automatically, so no test.
68 * loader/appcache/ApplicationCacheGroup.cpp:
69 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Ensure that the cache is in disk
70 storage, even if the application wasn't updated server side.
72 2009-03-10 Oliver Hunt <oliver@apple.com>
74 Reviewed by Alexey Proskuryakov.
76 <rdar://problem/6425807> Implement WorkerUtils.importScripts()
77 <https://bugs.webkit.org/show_bug.cgi?id=22721>
79 Implement importScripts, currently uses a series of synchronous loads
80 to fetch the scripts, but this is simpler than a synchronous load of
81 multiple loads in parallel. In future we'll want to switch to parallel
82 loading, but this will do for now.
84 Test: http/tests/workers/worker-importScripts.html
87 * WebCore.vcproj/WebCore.vcproj:
88 * WebCore.xcodeproj/project.pbxproj:
89 * bindings/js/JSWorkerContextCustom.cpp:
90 (WebCore::JSWorkerContext::importScripts):
91 * bindings/js/ScriptValue.h:
92 (WebCore::ScriptValue::hasNoValue):
93 * bindings/js/WorkerScriptController.cpp:
94 (WebCore::WorkerScriptController::evaluate):
95 (WebCore::WorkerScriptController::setException):
96 * bindings/js/WorkerScriptController.h:
98 (WebCore::Document::scriptImported):
100 * dom/ScriptExecutionContext.h:
101 * inspector/InspectorController.cpp:
102 (WebCore::InspectorController::scriptImported):
103 * inspector/InspectorController.h:
104 * inspector/InspectorResource.cpp:
105 (WebCore::InspectorResource::setScriptProperties):
106 * inspector/InspectorResource.h:
107 * workers/WorkerContext.cpp:
108 (WebCore::WorkerContext::scriptImported):
109 (WebCore::WorkerContext::importScripts):
110 * workers/WorkerContext.h:
111 * workers/WorkerContext.idl:
112 * workers/WorkerImportScriptsClient.cpp: Added.
113 (WebCore::WorkerImportScriptsClient::didReceiveResponse):
114 (WebCore::WorkerImportScriptsClient::didReceiveData):
115 (WebCore::WorkerImportScriptsClient::didFinishLoading):
116 (WebCore::WorkerImportScriptsClient::didFail):
117 (WebCore::WorkerImportScriptsClient::didFailRedirectCheck):
118 (WebCore::WorkerImportScriptsClient::didReceiveAuthenticationCancellation):
119 * workers/WorkerImportScriptsClient.h: Added.
120 (WebCore::WorkerImportScriptsClient::WorkerImportScriptsClient):
121 (WebCore::WorkerImportScriptsClient::script):
122 (WebCore::WorkerImportScriptsClient::failed):
124 2009-03-10 Alexey Proskuryakov <ap@webkit.org>
126 Reviewed by Darin Adler.
128 https://bugs.webkit.org/show_bug.cgi?id=24462
129 Move cross-origin access control code out of XMLHttpRequest
131 Step 1: move preflight result cache and access control helper functions.
133 No change in behavior, so no test.
138 * WebCore.vcproj/WebCore.vcproj:
139 * WebCore.xcodeproj/project.pbxproj:
140 * WebCoreSources.bkl:
141 * loader/CrossOriginAccessControl.cpp: Added.
142 (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
143 (WebCore::isSimpleCrossOriginAccessRequest):
144 (WebCore::createAllowedCrossOriginResponseHeadersSet):
145 (WebCore::isOnAccessControlResponseHeaderWhitelist):
146 (WebCore::passesAccessControlCheck):
147 * loader/CrossOriginAccessControl.h: Added.
148 * loader/CrossOriginPreflightResultCache.cpp: Added.
149 (WebCore::parseAccessControlMaxAge):
150 (WebCore::addToAccessControlAllowList):
151 (WebCore::parseAccessControlAllowList):
152 (WebCore::CrossOriginPreflightResultCacheItem::parse):
153 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
154 (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
155 (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
156 (WebCore::CrossOriginPreflightResultCache::shared):
157 (WebCore::CrossOriginPreflightResultCache::appendEntry):
158 (WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
159 * loader/CrossOriginPreflightResultCache.h: Added.
160 (WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
161 (WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
162 * xml/XMLHttpRequest.cpp:
163 (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData):
164 (WebCore::XMLHttpRequest::createRequest):
165 (WebCore::XMLHttpRequest::makeCrossOriginAccessRequest):
166 (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest):
167 (WebCore::XMLHttpRequest::makeCrossOriginAccessRequestWithPreflight):
168 (WebCore::XMLHttpRequest::didReceiveResponse):
169 (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
170 * xml/XMLHttpRequest.h:
172 2009-03-10 Alexey Proskuryakov <ap@webkit.org>
174 Reviewed by Darin Adler.
176 https://bugs.webkit.org/show_bug.cgi?id=19797
177 Bring the list of forbidden headers in sync with XMLHttpRequest spec draft
179 Added new checks to http/tests/xmlhttprequest/set-dangerous-headers.html.
181 * xml/XMLHttpRequest.cpp:
182 (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Added all headers from
183 XMLHttpRequest 2 draft.
185 2009-03-10 Dan Bernstein <mitz@apple.com>
187 Reviewed by Adele Peterson.
189 - fix https://bugs.webkit.org/show_bug.cgi?id=23975
190 <rdar://problem/6593610> REGRESSION: Scrollbar arrow not repainted
192 * rendering/RenderLayer.cpp:
193 (WebCore::RenderLayer::invalidateScrollbarRect): Corrected the vertical
194 scrollbar rect calculation.
196 2009-03-09 Simon Fraser <simon.fraser@apple.com>
198 Reviewed by Dan Bernstein, Oliver Hunt
200 https://bugs.webkit.org/show_bug.cgi?id=24475
202 When repainting replaced elements, need to union the selection
203 and overflow rects because either may extend outside the other.
205 Test: fast/repaint/transform-replaced-shadows.html
207 * rendering/RenderReplaced.cpp:
208 (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
210 2009-03-09 Stephanie Lewis <slewis@apple.com>
214 * editing/Editor.cpp:
215 (WebCore::Editor::advanceToNextMisspelling):
216 (WebCore::markAllMisspellingsAndBadGrammarInRanges):
218 2009-03-09 Kim Christensen <kimworking@gmail.com>
220 Reviewed by Darin Fisher.
222 https://bugs.webkit.org/show_bug.cgi?id=24276
223 Dropdown / select boxes do not consider the windows task bar in Chromium.
225 * platform/chromium/PopupMenuChromium.cpp:
226 (WebCore::PopupContainer::showPopup):
228 2009-03-09 Dan Bernstein <mitz@apple.com>
230 Reviewed by Adele Peterson and Dave Hyatt.
232 - fix <rdar://problem/6654344> REGRESSION (r41041): Zillow.com has
233 misaligned edit fields
235 Test: fast/forms/legend-display-none.html
237 * css/CSSStyleSelector.cpp:
238 (WebCore::CSSStyleSelector::adjustRenderStyle): Change the display
239 property of legend elements to 'block' unless it is 'none'.
240 * css/html4.css: Do not force the display property of legend elements to
241 'block' using CSS, because that prevents style rules from setting it to
244 2009-03-09 Alpha Lam <hclam@chromium.org>
246 Reviewed by Dave Hyatt.
248 https://bugs.webkit.org/show_bug.cgi?id=23024
250 Fix an incorrect criteria in the if statement that leaves references to
251 deleted floating objects in RenderBlock.
253 Test: fast/block/float/crash-on-absolute-positioning.html
255 * rendering/RenderBlock.cpp:
256 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
258 2009-03-09 Mike Belshe <mike@belshe.com>
260 Reviewed by Eric Seidel.
262 Unify JSC/V8 idl file.
263 https://bugs.webkit.org/show_bug.cgi?id=24424
267 2009-03-09 Mike Belshe <mike@belshe.com>
269 Reviewed by Eric Seidel.
271 Unify JSC/V8 for History.idl.
275 2009-03-09 Mike Belshe <mike@belshe.com>
277 Reviewed by Eric Seidel.
279 Unify JSC/V8 implementations of DOMWindow.idl.
281 * page/DOMWindow.idl:
283 2009-03-09 Simon Fraser <simon.fraser@apple.com>
285 Reviewed by Dave Hyatt
287 https://bugs.webkit.org/show_bug.cgi?id=24163
289 Implement mapping of FloatQuads through 3D transforms.
291 Removed the redundant localToContainerQuad() methods, which can now
292 shared code with the old mapLocalToAbsolutePoint(), which was
293 renamed to mapLocalToContainer(). This can now convert a point,
294 and optionally a FloatQuad, which are carried along in the TransformState.
296 Optimized TransformState to reduce to simple FloatPoint.move()
297 if there are no transforms, and to heap-allocate a transform only if
298 necessary to accumulate transforms (when using preserve-3d).
300 Tested by 3d point mapping tests, and the inspector highlight (which now shows
301 the correct quads for 3d-transformed elements).
303 * platform/graphics/transforms/TransformationMatrix.cpp:
304 (WebCore::TransformationMatrix::projectQuad):
305 (WebCore::TransformationMatrix::translateRight):
306 (WebCore::TransformationMatrix::translateRight3d):
307 * platform/graphics/transforms/TransformationMatrix.h:
308 * rendering/RenderBox.cpp:
309 (WebCore::RenderBox::mapLocalToContainer):
310 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
311 * rendering/RenderBox.h:
312 * rendering/RenderObject.cpp:
313 (WebCore::RenderObject::localToAbsolute):
314 (WebCore::RenderObject::absoluteToLocal):
315 (WebCore::RenderObject::mapLocalToContainer):
316 (WebCore::RenderObject::localToContainerQuad):
317 * rendering/RenderObject.h:
318 * rendering/RenderTableCell.cpp:
319 (WebCore::RenderTableCell::mapLocalToContainer):
320 * rendering/RenderTableCell.h:
321 * rendering/RenderView.cpp:
322 (WebCore::RenderView::mapLocalToContainer):
323 * rendering/RenderView.h:
324 * rendering/TransformState.cpp:
325 (WebCore::TransformState::move):
326 (WebCore::TransformState::applyTransform):
327 (WebCore::TransformState::flatten):
328 (WebCore::TransformState::mappedPoint):
329 (WebCore::TransformState::mappedQuad):
330 (WebCore::TransformState::flattenWithTransform):
331 (WebCore::HitTestingTransformState::mappedQuad):
332 * rendering/TransformState.h:
333 (WebCore::TransformState::TransformState):
334 (WebCore::TransformState::move):
335 (WebCore::TransformState::lastPlanarPoint):
336 (WebCore::TransformState::lastPlanarQuad):
337 * rendering/style/RenderStyle.h:
338 (WebCore::InheritedFlags::preserves3D):
340 2009-03-09 Simon Fraser <simon.fraser@apple.com>
342 Reviewed by Dave Hyatt
344 https://bugs.webkit.org/show_bug.cgi?id=24433
346 During hit testing with transforms, if a layer has backface-visibility: hidden,
347 we need to check for it whether or not the layer has a transform, because it
348 might be an ancestor that is transformed.
350 Test: transforms/3d/hit-testing/backface-no-transform-hit-test.html
352 * rendering/RenderLayer.cpp:
353 (WebCore::RenderLayer::hitTestLayer):
355 2009-03-09 Laszlo Gombos <laszlo.1.gombos@nokia.com>
357 Reviewed by George Staikos.
359 https://bugs.webkit.org/show_bug.cgi?id=24353
360 Allow to overrule default build options for Qt build.
362 * WebCore.pro: Allow to overrule ENABLE_VIDEO and ENABLE_NETSCAPE_PLUGIN_API
364 2009-03-09 Adam Treat <adam.treat@torchmobile.com>
366 Reviewed by George Staikos.
368 https://bugs.webkit.org/show_bug.cgi?id=24463
369 WebCore::qstring is detaching and copying twice for every single
370 WebCore::TextRun that is processed and drawn. This elevates this method
371 to one of the top-ten most expensive methods in all of QtWebKit according
372 to profiling. This changes the method so that QString only detaches
373 when absolutely necessary.
375 * platform/graphics/qt/FontQt.cpp:
377 (WebCore::fixSpacing):
378 (WebCore::Font::drawComplexText):
379 (WebCore::Font::floatWidthForComplexText):
380 (WebCore::Font::offsetForPositionForComplexText):
381 (WebCore::Font::selectionRectForComplexText):
383 2009-03-08 Mark Rowe <mrowe@apple.com>
385 Reviewed by Oliver Hunt.
387 Split ScrollAlignment and ScrollBehavior out of RenderLayer.h so that
388 Frame.h no longer needs to include it. This cuts the size of the symbols
389 for a debug build by around 3%.
392 (WebCore::Element::scrollIntoView):
393 (WebCore::Element::scrollIntoViewIfNeeded):
394 * editing/Editor.cpp:
395 (WebCore::Editor::insertTextWithoutSendingTextEvent):
396 (WebCore::Editor::revealSelectionAfterEditingOperation):
397 * editing/SelectionController.cpp:
398 (WebCore::SelectionController::setSelection):
399 * loader/FrameLoader.cpp:
400 (WebCore::FrameLoader::gotoAnchor):
401 * page/ContextMenuController.cpp:
402 (WebCore::ContextMenuController::contextMenuItemSelected):
404 (WebCore::Frame::revealSelection):
405 (WebCore::Frame::revealCaret):
407 * rendering/RenderLayer.cpp:
408 (WebCore::RenderLayer::getRectToExpose):
409 (WebCore::RenderLayer::autoscroll):
410 * rendering/RenderLayer.h:
411 * rendering/ScrollBehavior.cpp: Added.
413 * rendering/ScrollBehavior.h: Added.
415 (WebCore::ScrollAlignment::getVisibleBehavior):
416 (WebCore::ScrollAlignment::getPartialBehavior):
417 (WebCore::ScrollAlignment::getHiddenBehavior):
419 Add the new files to the build systems:
424 * WebCore.vcproj/WebCore.vcproj:
425 * WebCore.xcodeproj/project.pbxproj:
426 * WebCoreSources.bkl:
428 Add includes that were previously pulled in by way of RenderLayer.h from Frame.h:
430 * editing/EditorCommand.cpp:
431 * editing/InsertLineBreakCommand.cpp:
432 * editing/TypingCommand.cpp:
433 * html/HTMLFormControlElement.cpp:
434 * loader/archive/cf/LegacyWebArchive.cpp:
435 * loader/icon/IconLoader.cpp:
436 * page/animation/AnimationController.cpp:
437 * rendering/RenderSlider.cpp:
438 * rendering/RenderTextControl.cpp:
441 2009-03-08 Mark Rowe <mrowe@apple.com>
443 Reviewed Dan Bernstein.
445 Push the include of Frame.h out of RenderView.h and down to those files
446 that need it. This cuts the size of symbols for RenderFoo object files
447 by around 15% in a debug build.
449 * bindings/objc/DOM.mm:
450 * rendering/RenderFileUploadControl.cpp:
451 * rendering/RenderInline.cpp:
452 * rendering/RenderObject.cpp:
453 * rendering/RenderReplaced.cpp:
454 * rendering/RenderText.cpp:
455 * rendering/RenderView.cpp:
456 (WebCore::RenderView::zoomFactor):
457 * rendering/RenderView.h:
459 2009-03-08 Mark Rowe <mrowe@apple.com>
461 Rubber-stamped by Dan Bernstein.
463 Remove some unnecessary or redundant includes from files related to the JS bindings.
464 This cuts the size of the symbols for a debug build by around 3%.
466 * bindings/js/JSCustomPositionCallback.cpp:
467 * bindings/js/JSCustomPositionErrorCallback.cpp:
468 * bindings/js/JSCustomSQLStatementCallback.cpp:
469 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
470 * bindings/js/JSCustomSQLTransactionCallback.cpp:
471 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
472 * bindings/js/JSCustomVoidCallback.cpp:
473 * bindings/js/JSCustomXPathNSResolver.cpp:
474 * bindings/js/JSDocumentCustom.cpp:
475 * bindings/js/JSPluginElementFunctions.cpp:
476 * bindings/js/JSSVGPODTypeWrapper.h:
478 2009-03-08 Cameron Zwarich <cwzwarich@uwaterloo.ca>
480 Reviewed by Oliver Hunt.
482 Remove the unused methods previousHistoryItem(), setPreviousHistoryItem()
483 and provisionalHistoryItem() from FrameLoader.
487 * loader/FrameLoader.cpp:
488 (WebCore::FrameLoader::frameLoadCompleted):
489 (WebCore::FrameLoader::loadItem):
490 * loader/FrameLoader.h:
492 2009-03-08 Gustavo Noronha Silva <gns@gnome.org>
494 Reviewed by Holger Freyther.
496 Implement proper logging for the GTK+ port, inspired by the one in
497 Qt. We use the WEBKIT_DEBUG environment variable which was already
498 being used to decide whether to setup a logger for soup or not.
500 * platform/gtk/LoggingGtk.cpp:
501 (WebCore::getChannelFromName):
502 (WebCore::InitializeLoggingChannelsIfNecessary):
503 * platform/network/soup/ResourceHandleSoup.cpp:
504 (WebCore::ensureSessionIsInitialized):
506 2009-03-07 Dan Bernstein <mitz@apple.com>
508 Reviewed by Mark Rowe.
510 - WebCore part of removing build-time and run-time support for legacy
511 versions of CFNetwork and Core Graphics
513 * platform/graphics/win/FontCGWin.cpp:
514 (WebCore::Font::drawGlyphs):
515 * platform/graphics/win/FontCustomPlatformData.cpp:
516 (WebCore::FontCustomPlatformData::fontPlatformData):
517 * platform/graphics/win/FontPlatformDataCGWin.cpp:
518 (WebCore::FontPlatformData::platformDataInit):
519 * platform/network/cf/FormDataStreamCFNet.cpp:
520 (WebCore::setHTTPBody):
521 (WebCore::httpBodyFromRequest):
522 * platform/network/cf/ResourceHandleCFNet.cpp:
523 (WebCore::didSendBodyData):
524 (WebCore::shouldUseCredentialStorageCallback):
525 (WebCore::ResourceHandle::start):
526 * platform/network/win/CookieJarCFNetWin.cpp:
527 (WebCore::filterCookies):
529 2009-03-07 Adele Peterson <adele@apple.com>
531 Reviewed by Dan Bernstein.
533 Fix for https://bugs.webkit.org/show_bug.cgi?id=24444
534 No multiple JS property for <input type="file" multiple />
536 * html/HTMLInputElement.cpp:
537 (WebCore::HTMLInputElement::multiple):
538 (WebCore::HTMLInputElement::setMultiple):
539 * html/HTMLInputElement.h:
540 * html/HTMLInputElement.idl:
542 2009-03-07 Xan Lopez <xan@gnome.org>
544 Reviewed by Holger Freyther.
546 https://bugs.webkit.org/show_bug.cgi?id=24358
547 [GTK] Scrollbars not clipped correctly
549 ScrollView scrollbars in subframes are *not* native, so take that
552 * platform/gtk/ScrollbarGtk.cpp:
553 (ScrollbarGtk::getLocationInParentWindow):
554 (ScrollbarGtk::frameRectsChanged):
555 (ScrollbarGtk::paint):
556 * platform/gtk/ScrollbarGtk.h:
558 2009-03-06 Peter Kasting <pkasting@google.com>
560 Reviewed by Darin Fisher.
562 https://bugs.webkit.org/show_bug.cgi?id=24405
563 Horizontal scrolling on Windows was reversed from Mac (and intuition).
565 * platform/gtk/WheelEventGtk.cpp:
566 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
567 * platform/win/WheelEventWin.cpp:
568 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
570 2009-03-06 Peter Kasting <pkasting@google.com>
572 Reviewed by Sam Weinig.
574 Convert some C-style casts to static_cast<>()s.
576 * platform/gtk/WheelEventGtk.cpp:
577 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
578 * platform/mac/WheelEventMac.mm:
579 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
580 * platform/win/WheelEventWin.cpp:
581 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
582 * platform/wx/MouseWheelEventWx.cpp:
583 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
585 2009-03-06 Adele Peterson <adele@apple.com>
587 Reviewed by Oliver Hunt.
589 Fix for <rdar://problem/6607524> REGRESSION (Safari 3-4): I can't tab back to the URL field in an empty window (key loop is broken)
591 I haven't been able to make a test for this since the problem is not reproducible within an empty iframe.
593 * page/EventHandler.cpp: (WebCore::eventTargetNodeForDocument): We used to ensure that every html document had a body element.
594 That is no longer true, so we should return the document element for a truly empty document.
596 2009-03-06 Jay Campan <jcampan@google.com>
598 Reviewed by Darin Fisher.
600 https://bugs.webkit.org/show_bug.cgi?id=24306
602 Adding a flag to ResourceRequestBase to indicate whether or not upload
603 progress notifications are needed for a resource. This is useful to
604 avoid sending these notifications when there are no consumers
605 (especially in the Chromium case where IPC is involved).
607 * platform/network/ResourceRequestBase.h:
608 (WebCore::ResourceRequestBase::reportUploadProgress):
609 (WebCore::ResourceRequestBase::setReportUploadProgress):
610 (WebCore::ResourceRequestBase::ResourceRequestBase):
611 * xml/XMLHttpRequest.cpp:
612 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
614 2009-03-06 Dmitry Titov <dimich@chromium.org>
616 Reviewed by Alexey Proskuryakov.
618 https://bugs.webkit.org/show_bug.cgi?id=24150
619 Add virtual ScriptExecutionContext::encoding()
621 Test: http/tests/workers/text-encoding.html
624 (WebCore::Document::encoding):
626 (WebCore::Document::inputEncoding):
627 (WebCore::Document::charset):
628 (WebCore::Document::characterSet):
629 Add new virtual method and route DOM synonym functions on Document through it.
631 * dom/ScriptExecutionContext.h:
632 * workers/Worker.cpp:
633 (WebCore::Worker::Worker):
634 (WebCore::Worker::notifyFinished):
635 * workers/WorkerContext.cpp:
636 (WebCore::WorkerContext::WorkerContext):
637 (WebCore::WorkerContext::encoding):
638 (WebCore::WorkerContext::completeURL): Added comment on why this is different from Document::completeURL
639 * workers/WorkerContext.h:
640 (WebCore::WorkerContext::create):
641 * workers/WorkerContextProxy.h:
642 * workers/WorkerMessagingProxy.cpp:
643 (WebCore::WorkerMessagingProxy::startWorkerContext):
644 * workers/WorkerMessagingProxy.h:
645 * workers/WorkerThread.cpp:
646 (WebCore::WorkerThreadStartupData::create):
647 (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
648 (WebCore::WorkerThread::create):
649 (WebCore::WorkerThread::WorkerThread):
650 (WebCore::WorkerThread::workerThread):
651 * workers/WorkerThread.h:
652 All of the above route the 'encoding' parameter of parent context to the new
653 instance of WorkerContext - from Worker::notifyFinished() via WorkerMessagingProxy
654 through WorkerThread through WorkerThreadStartupData and into constructor of WorkerContext.
656 2009-03-06 Peter Kasting <pkasting@google.com>
661 (WebCore::Node::dispatchWheelEvent):
663 2009-03-06 Eric Carlson <eric.carlson@apple.com>
665 Reviewed by Antti Koivisto.
667 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
668 (WebCore::MediaPlayerPrivate::createQTMovieView): Delay callback while setting up movieview.
670 2009-03-06 Douglas R. Davidson <ddavidso@apple.com>
672 Reviewed by Justin Garcia.
674 https://bugs.webkit.org/show_bug.cgi?id=24108
676 Update spelling and grammar checking to use the new combined text
677 checking (with automatic language identification) on Snow Leopard.
678 Tested manually in Mail and Safari; automated tests to come later.
680 * editing/Editor.cpp:
681 (WebCore::findFirstMisspellingOrBadGrammarInRange):
682 (WebCore::Editor::advanceToNextMisspelling):
683 (WebCore::guessesForMisspelledOrUngrammaticalRange):
684 (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection):
685 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
686 (WebCore::markAllMisspellingsAndBadGrammarInRanges):
687 (WebCore::Editor::markMisspellingsAndBadGrammar):
689 * loader/EmptyClients.h:
690 (WebCore::EmptyEditorClient::checkSpellingAndGrammarOfParagraph):
691 * page/EditorClient.h:
693 (WebCore::Frame::respondToChangedSelection):
694 * platform/ContextMenu.cpp:
695 (WebCore::ContextMenu::populate):
697 2009-03-06 Peter Kasting <pkasting@google.com>
699 Reviewed by Darin Fisher.
701 https://bugs.webkit.org/show_bug.cgi?id=24407
702 Windows scroll amount was too small, and wheel scroll distance
703 conversion code was overly complex.
705 * page/EventHandler.cpp:
706 (WebCore::scrollAndAcceptEvent):
707 * platform/PlatformWheelEvent.h:
709 * platform/ScrollView.cpp:
710 (WebCore::ScrollView::wheelEvent):
711 * platform/Scrollbar.h:
712 * platform/gtk/WheelEventGtk.cpp:
713 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
714 * platform/mac/WheelEventMac.mm:
715 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
716 * platform/qt/WheelEventQt.cpp:
717 * platform/win/WheelEventWin.cpp:
718 (WebCore::horizontalScrollChars):
719 (WebCore::verticalScrollLines):
720 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
721 * platform/wx/MouseWheelEventWx.cpp:
722 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
724 2009-03-06 Dimitri Glazkov <dglazkov@chromium.org>
726 Reviewed by Adam Roben.
728 Generate valid bindings with HTML5 database support disabled.
730 * inspector/InspectorController.idl: Added feature guard around
731 databaseTableNames definition.
733 2009-03-04 Xan Lopez <xan@gnome.org>
735 Reviewed by Holger Freyther.
737 https://bugs.webkit.org/show_bug.cgi?id=24358
738 [GTK] Scrollbars not clipped correctly
740 Do not take into account the case of being a ScrollView scrollbar,
741 since those are native in our case.
743 * platform/gtk/ScrollbarGtk.cpp:
744 (ScrollbarGtk::frameRectsChanged):
746 2009-03-04 Xan Lopez <xan@gnome.org>
748 Reviewed by Holger Freyther.
750 https://bugs.webkit.org/show_bug.cgi?id=24358
751 [GTK] Scrollbars not clipped correctly
753 Move Widget::paint to ScrollbarGtk::paint, since it's scrollbar
754 specific and it's our only Widget anyway.
756 * platform/gtk/ScrollbarGtk.cpp:
757 (ScrollbarGtk::paint):
758 * platform/gtk/ScrollbarGtk.h:
759 * platform/gtk/WidgetGtk.cpp:
761 2009-03-04 Xan Lopez <xan@gnome.org>
763 Reviewed by Holger Freyther.
765 https://bugs.webkit.org/show_bug.cgi?id=24358
766 [GTK] Scrollbars not clipped correctly
768 Use correct clip rectangle and apply coordinate translation needed
769 for non-ScrollView scrollbars.
771 We were ignoring the clip rectangle passed as parameter, which is
772 wrong in the case of non coalesced expose events. This, in turn,
773 uncovers the fact that we were not applying coordinate translation
776 * platform/gtk/WidgetGtk.cpp:
777 (WebCore::Widget::paint):
779 2009-03-06 Eric Carlson <eric.carlson@apple.com>
783 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: fix setSize declaration
785 2009-03-06 Eric Carlson <eric.carlson@apple.com>
787 Reviewed by Simon Fraser.
789 https://bugs.webkit.org/show_bug.cgi?id=22790
790 Bug 22790: [Transforms] MediaPlayer::setRect() makes no sense with transforms
791 Replace media engine setRect with setSize since they don't use about the
794 * platform/graphics/MediaPlayer.cpp:
795 (WebCore::NullMediaPlayerPrivate::setSize): Changed from setRect.
796 (WebCore::MediaPlayer::setSize): Ditto.
797 * platform/graphics/MediaPlayer.h:
798 (WebCore::MediaPlayer::size): Changed from rect().
800 * platform/graphics/MediaPlayerPrivate.h: Changed setRect to setSize.
802 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Ditto.
804 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
805 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_size instead of m_rect
806 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
807 (WebCore::MediaPlayerPrivate::paint): update comment
808 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: m_rect -> m_size.
810 * platform/graphics/mac/MediaPlayerPrivateQTKit.h: m_rect
811 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
812 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Initialize m_rect.
813 (WebCore::MediaPlayerPrivate::createQTMovieView): setRect-> setSize.
814 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
815 (WebCore::MediaPlayerPrivate::paint): Call view:setFrame: when in a media document so
816 the movie is drawn in the correct location.
818 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
819 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
820 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
822 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
823 (WebCore::MediaPlayerPrivate::setSize): Changed from setRect
824 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
826 * rendering/RenderVideo.cpp:
827 (WebCore::RenderVideo::updatePlayer): Call setSize instead of setRect.
829 2009-03-06 Darin Adler <darin@apple.com>
831 Reviewed by Darin Fisher.
833 Bug 24422: REGRESSION: null-URL crash in FrameLoader setting location.hash on new window
834 https://bugs.webkit.org/show_bug.cgi?id=24422
835 rdar://problem/6402208
837 Test: fast/dom/location-new-window-no-crash.html
839 The issue here is empty (or null) URLs. I picked the "schedule navigation" bottleneck
840 to add some checks for empty URLs. We could also put the empty URL checks at some
841 other bottleneck level and add more assertions over time. I tried adding a few more
842 assertions to functions like loadURL and hit them while running the regression tests,
843 so it's probably going to be a bit tricky to clean this up throughout the loader.
845 * loader/FrameLoader.cpp:
846 (WebCore::ScheduledRedirection::ScheduledRedirection): Explicitly marked this struct
847 immutable by making all its members const. Added assertions about the arguments,
848 including that the URL is not empty. Initialized one uninitialized member in one of
850 (WebCore::FrameLoader::scheduleHTTPRedirection): Added an early exit to make this
851 a no-op if passed an empty URL.
852 (WebCore::FrameLoader::scheduleLocationChange): Ditto.
853 (WebCore::FrameLoader::scheduleRefresh): Ditto.
855 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
857 Reviewed by Holger Freyther.
859 https://bugs.webkit.org/show_bug.cgi?id=24423
860 Use new soup_message_body_set_accumulate API in soup backend
862 Disable accumulating chunks for request_body on file uploads,
863 using the new soup API.
865 * platform/network/soup/ResourceHandleSoup.cpp:
866 (WebCore::ResourceHandle::startHttp):
868 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
870 Reviewed by Holger Freyther.
872 Replace use of deprecated SOUP_MESSAGE_OVERWRITE_CHUNKS flag with
873 the new soup_message_body_set_accumulate API in soup.
875 * platform/network/soup/ResourceHandleSoup.cpp:
876 (WebCore::gotHeadersCallback):
877 (WebCore::ResourceHandle::startHttp):
879 2009-03-06 Gustavo Noronha Silva <gns@gnome.org>
881 Reviewed by Holger Freyther.
883 https://bugs.webkit.org/show_bug.cgi?id=24051
884 Soup backend needs content sniffing capabilities
886 Perform content sniffing when using soup, so that we have a chance
887 of figuring out the Content-Type of the file if it's not sent by
890 * platform/network/ResourceHandleInternal.h:
891 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
892 * platform/network/soup/ResourceHandleSoup.cpp:
893 (WebCore::gotHeadersCallback):
894 (WebCore::gotChunkCallback):
896 2009-03-06 Hironori Bono <hbono@chromium.org>
898 Reviewed by Alexey Proskuryakov.
900 https://bugs.webkit.org/show_bug.cgi?id=24342
901 Cannot insert a Thai character after a Thai prepend character when using ICU 4.0
903 This change creates a new break iterator "cursorMovementIterator" for
904 moving cursors and use it when moving an input cursor.
905 In "TextBreakIteratorICU.cpp", this break iterator uses custom ruleset
906 based on the one of ICU 3.8.
907 On the other hand, in "TextBreakIteratorQt.cpp", this break iterator
908 just calls the characterBreakIterator() function.
910 Test: editing/inserting/insert-thai-characters-001.html
912 * platform/text/TextBreakIterator.h: Added a new function cursorMovementIterator().
913 * platform/text/TextBreakIteratorICU.cpp: Implemented the cursorMovementIterator() function for ICU.
914 (WebCore::setUpIteratorWithRules): Ditto.
915 (WebCore::cursorMovementIterator): Ditto.
916 * platform/text/qt/TextBreakIteratorQt.cpp: Implemented the cursorMovementIterator() function for Qt.
917 (WebCore::cursorMovementIterator): Ditto.
918 * rendering/RenderText.cpp: Call the cursorMovementIterator() function when moving an input cursor.
919 (WebCore::RenderText::previousOffset): Ditto.
920 (WebCore::RenderText::nextOffset): Ditto.
922 2009-03-05 Alexey Proskuryakov <ap@webkit.org>
924 Reviewed by Oliver Hunt.
926 <rdar://problem/6621701> Safari 4 Beta Breaks XMLHttpRequest Response Text With Special
927 Characters (a compatibility issue with widgets).
929 Test: http/tests/xmlhttprequest/broken-xml-encoding.html
931 Revert part of an Acid 3 fix - now we are no longer strict when decoding XMLHttpRequest XML
934 * loader/TextResourceDecoder.cpp:
935 (WebCore::TextResourceDecoder::TextResourceDecoder):
936 (WebCore::TextResourceDecoder::decode):
937 (WebCore::TextResourceDecoder::flush):
938 * loader/TextResourceDecoder.h:
939 (WebCore::TextResourceDecoder::useLenientXMLDecoding):
940 Don't stop on XML decoding errors if useLenientXMLDecoding() was called.
942 * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData): Don't stop on XML
943 decoding errors. This behavior is now limited to other kinds of XML content.
945 2009-03-05 Simone Fiorentino <simone.fiorentino@consulenti.fastweb.it>
947 Bug 24382: request to add SH4 platform
949 <https://bugs.webkit.org/show_bug.cgi?id=24382>
951 Reviewed by David Kilzer.
953 * platform/text/AtomicString.cpp:
954 (WebCore::equal): Aligned memory access on SH4 platform.
956 2009-03-05 Jeremy Moskovich <jeremy@chromium.org>
958 Reviewed by Simon Fraser.
960 Fix for https://bugs.webkit.org/show_bug.cgi?id=24215
962 Gears expects an object tag with display:none to instantiate the plugin,
963 so we add a workaround to make this work and fix Gears on WebKit trunk.
965 * html/HTMLObjectElement.cpp:
966 (WebCore::HTMLObjectElement::rendererIsNeeded):
968 2009-03-05 Avi Drissman <avi@chromium.org>
970 Reviewed by Darin Fisher.
972 Need to have Chromium Mac match Safari Mac's accesskey handling
973 https://bugs.webkit.org/show_bug.cgi?id=24404
975 * page/chromium/EventHandlerChromium.cpp:
976 (WebCore::EventHandler::accessKeyModifiers): Share access key modifiers with Mac Safari when building for the Mac.
978 2009-03-05 Simon Fraser <simon.fraser@apple.com>
980 Reviewed by Dave Hyatt
982 https://bugs.webkit.org/show_bug.cgi?id=24412
984 Fix crash when hit-testing elements with -webkit-transform-style: preserve-3d
985 but no transform. We need to make localTransformState if we see preserve-3d.
986 Also need to call update3DTransformedDescendantStatus() before we test
987 m_has3DTransformedDescendant.
989 Test: transforms/3d/hit-testing/hit-preserves-3d.html
991 * rendering/RenderLayer.cpp:
992 (WebCore::RenderLayer::hitTestLayer):
994 2009-03-05 Eric Seidel <eric@webkit.org>
996 Reviewed by David Hyatt.
998 Changes to RenderLayer destruction to hopefully help catch an elusive crasher
999 https://bugs.webkit.org/show_bug.cgi?id=24409
1001 Added a new RenderBoxModelObject::destroyLayer() call which is
1002 now the only way which RenderLayers should ever be destroyed.
1003 This ensures that the pointer to the layer is cleared in the
1004 RenderObject after destruction, allowing us to ASSERT in the
1005 RenderBoxModelObject destructor.
1007 * rendering/RenderBox.cpp:
1008 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
1009 * rendering/RenderBoxModelObject.cpp:
1010 (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
1011 (WebCore::RenderBoxModelObject::destroyLayer):
1012 (WebCore::RenderBoxModelObject::destroy):
1013 (WebCore::RenderBoxModelObject::styleDidChange):
1014 * rendering/RenderBoxModelObject.h:
1015 * rendering/RenderLayer.cpp:
1016 (WebCore::RenderLayer::stackingContext):
1017 (WebCore::RenderLayer::destroy):
1018 (WebCore::RenderLayer::removeOnlyThisLayer):
1019 * rendering/RenderLayer.h:
1020 * rendering/RenderObject.cpp:
1021 (WebCore::RenderObject::destroy):
1022 * rendering/RenderWidget.cpp:
1023 (WebCore::RenderWidget::destroy):
1025 2009-03-05 Eric Seidel <eric@webkit.org>
1027 Reviewed by David Hyatt.
1029 Remove old, unused IE 5.5 scrollbar-* CSS properties.
1030 Sort the unimplemented getComputedStyle properties so it's
1031 easier to see which ones actually need implementation.
1033 * css/CSSComputedStyleDeclaration.cpp:
1034 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1035 * css/CSSParser.cpp:
1036 (WebCore::CSSParser::parseValue):
1037 * css/CSSPropertyNames.in:
1038 * css/CSSStyleSelector.cpp:
1039 (WebCore::CSSStyleSelector::applyProperty):
1041 2009-03-05 Justin Garcia <justin.garcia@apple.com>
1043 Reviewed by Darin Adler.
1045 WebViewDidChangeSelectionNotifications weren't being sent for commands that change the selection's position
1046 within the document without changing its position in the DOM. For example, pressing return in (caret marked by ^):
1047 <div contentEditable="true"><div>^Hello</div></div>
1048 Undo was being enabled, shouldDeleteDOMRange called, etc. when doing no-op deletes (a delete in an empty document
1051 Changes to layout tests demonstrate fix.
1053 * editing/EditCommand.cpp:
1054 (WebCore::EditCommand::apply): Don't call applyEditing for a TypingCommand. The TypingCommand knows whether or
1055 not it did work that needs to be applied.
1056 * editing/Editor.cpp:
1057 (WebCore::Editor::appliedEditing): Moved code (but did not alter) to changeSelectionAfterCommand.
1058 (WebCore::Editor::unappliedEditing): Ditto.
1059 (WebCore::Editor::reappliedEditing): Ditto.
1060 (WebCore::Editor::changeSelectionAfterCommand): Moved code from *appliedEditing into here. Also call out to
1061 EditorClient::respondToChangedSelection() for commands that changed the selection's position in the document
1062 even if they did not change it's position in the DOM. Any TypingCommand that gets this far changed it's position
1065 * editing/TypingCommand.cpp:
1066 (WebCore::TypingCommand::TypingCommand): Removed unused m_appliedEditing.
1067 (WebCore::TypingCommand::typingAddedToOpenCommand): Always apply editing. We won't get this far if we don't need to.
1068 (WebCore::TypingCommand::deleteKeyPressed): Don't do any of the things that only make sense for Range selections, like
1069 adding to the killring and responding to a change in selections if the delete was a no-op.
1070 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
1071 * editing/TypingCommand.h:
1073 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
1075 Reviewed by Adam Roben.
1077 Eliminate a ref-counting leak in InspectorController.
1079 * inspector/InspectorController.h: Made constructor private, added static create method.
1081 (WebCore::Page::Page): Change initializer to use static create method.
1083 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
1085 Reviewed by Timothy Hatcher.
1087 https://bugs.webkit.org/show_bug.cgi?id=24355
1088 Add InspectorController.idl and convert InspectorController.cpp to use
1091 * DerivedSources.make: Added InspectorController.idl
1092 * WebCore.xcodeproj/project.pbxproj: Added idl, bindings files.
1093 * bindings/js/JSInspectorControllerCustom.cpp: Added.
1094 * bindings/scripts/CodeGeneratorJS.pm: Added Array to no-header types.
1095 * inspector/InspectorController.cpp: Removed hand-rolled bindings.
1096 * inspector/InspectorController.h: Added platform and addSourceToFrame methods.
1097 * inspector/InspectorController.idl: Added.
1098 * page/Page.h: Changed member to RefPtr since InspectorController is now ref-counted.
1100 2009-03-05 Eric Carlson <eric.carlson@apple.com>
1102 Reviewed by Simon Fraser.
1104 https://bugs.webkit.org/show_bug.cgi?id=24400
1105 Bug 24400: Remove "start", "end", "loopStart", "loopEnd", "currentLoop", and "playCount"
1106 media element attributes
1108 Test: media/video-loop.html
1110 * html/HTMLMediaElement.cpp:
1111 (WebCore::HTMLMediaElement::HTMLMediaElement):
1112 (WebCore::HTMLMediaElement::loadInternal):
1113 (WebCore::HTMLMediaElement::setNetworkState):
1114 (WebCore::HTMLMediaElement::seek):
1115 (WebCore::HTMLMediaElement::playInternal):
1116 (WebCore::HTMLMediaElement::loop):
1117 (WebCore::HTMLMediaElement::setLoop):
1118 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
1119 (WebCore::HTMLMediaElement::endedPlayback):
1120 (WebCore::HTMLMediaElement::updatePlayState):
1121 * html/HTMLMediaElement.h:
1122 * html/HTMLMediaElement.idl:
1124 2009-03-05 Steve Falkenburg <sfalken@apple.com>
1126 <rdar://problem/6651112> Safari asks about re-posting a form even when page is cached
1128 Reviewed by Ada Chan.
1130 * platform/network/cf/ResourceHandleCFNet.cpp:
1131 (WebCore::ResourceHandle::willLoadFromCache): Ported from Mac version.
1133 2009-03-05 David Hyatt <hyatt@apple.com>
1135 Reviewed by Eric Seidel
1137 https://bugs.webkit.org/show_bug.cgi?id=24248
1139 Make sure painting of overflow controls checks that visibility:visible is set on the block before
1140 painting. Pixel tests caught this regression.
1142 Make sure resizer painting pushes a clip of the corner rect. It was relying on the clip layers happened
1143 to do to their bounds (which had nothing to do with overflow).
1145 * rendering/RenderBlock.cpp:
1146 (WebCore::RenderBlock::paint):
1147 * rendering/RenderLayer.cpp:
1148 (WebCore::RenderLayer::paintResizer):
1150 2009-03-05 Yong Li <yong.li@torchmobile.com>
1152 Reviewed by Simon Fraser.
1154 https://bugs.webkit.org/show_bug.cgi?id=24386
1155 A faster implementation of extractMIMETypeFromMediaType.
1157 * platform/network/HTTPParsers.cpp:
1158 (WebCore::extractMIMETypeFromMediaType):
1160 2009-03-05 Yong Li <yong.li@torchmobile.com>
1162 Reviewed by Antti Koivisto.
1164 https://bugs.webkit.org/show_bug.cgi?id=24392
1165 Do not get the current time for unless we're doing PRELOAD_DEBUG as this
1166 can be unnecessarily expensive.
1168 * html/PreloadScanner.cpp:
1169 (WebCore::PreloadScanner::write):
1171 2009-03-04 Simon Fraser <simon.fraser@apple.com>
1173 Reviewed by Dave Hyatt
1175 https://bugs.webkit.org/show_bug.cgi?id=24327
1177 When mapping points and hit testing through transforms, work
1178 correctly when acclerated animations of transforms are running.
1180 Tested by LayoutTests/animations/animation-hit-test-transform.html,
1181 which only failed when ACCELERATED_COMPOSITING was turned on.
1183 * rendering/RenderLayer.cpp:
1184 (WebCore::RenderLayer::currentTransform):
1185 * rendering/RenderLayer.h:
1186 * rendering/RenderObject.cpp:
1187 (WebCore::RenderObject::transformFromContainer):
1189 2009-03-05 Mike Belshe <mike@belshe.com>
1191 Reviewed by Darin Fisher.
1193 https://bugs.webkit.org/show_bug.cgi?id=24391
1194 Frame.cpp uses JSC specific includes
1198 2009-03-05 Gustavo Noronha Silva <gns@gnome.org>
1200 Reviewed by Alexey Proskuryakov.
1202 https://bugs.webkit.org/show_bug.cgi?id=24389
1203 WebKitGTK+ crashes when cancelling plugin loads
1205 Remove bogus calls to the client's didFinishLoading method from
1206 our ResourceHandle::cancel implementation. Calling
1207 didFinishLoading here is mostly inoffensive for most loads, but
1208 causes crashes when plugin loads are cancelled.
1210 * platform/network/soup/ResourceHandleSoup.cpp:
1211 (WebCore::ResourceHandle::cancel):
1213 2009-03-05 Steve Falkenburg <sfalken@apple.com>
1217 * WebCore.vcproj/QTMovieWin.vcproj:
1219 2009-03-05 Adam Treat <adam.treat@torchmobile.com>
1221 Build fix for when ENABLE_NETSCAPE_PLUGIN_API = 0. The method
1222 ScriptController::jsObjectForPluginElement(HTMLPlugInElement*); is not
1223 protected by an #if and uses HTMLPlugInElement so it must be included.
1225 * bindings/js/ScriptController.cpp:
1227 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
1231 * inspector/ConsoleMessage.h: Use proper header.
1233 2009-03-05 Dimitri Glazkov <dglazkov@chromium.org>
1235 Reviewed by Timothy Hatcher.
1237 https://bugs.webkit.org/show_bug.cgi?id=24376
1238 Split InspectorController.cpp file into separate classes.
1240 * GNUmakefile.am: Modified to include new files.
1241 * WebCore.pro: Ditto.
1242 * WebCore.scons: Ditto.
1243 * WebCore.vcproj/WebCore.vcproj: Ditto.
1244 * WebCore.xcodeproj/project.pbxproj: Ditto.
1245 * WebCoreSources.bkl: Ditto.
1246 * inspector/ConsoleMessage.cpp: Added.
1247 * inspector/ConsoleMessage.h: Added.
1248 * inspector/InspectorController.cpp:
1249 * inspector/InspectorDOMStorageResource.cpp: Added.
1250 * inspector/InspectorDOMStorageResource.h: Added.
1251 * inspector/InspectorDatabaseResource.cpp: Added.
1252 * inspector/InspectorDatabaseResource.h: Added.
1253 * inspector/InspectorResource.cpp: Added.
1254 * inspector/InspectorResource.h: Added.
1256 2009-03-05 Eric Carlson <eric.carlson@apple.com>
1258 Reviewed by Darin Adler
1260 https://bugs.webkit.org/show_bug.cgi?id=24387
1261 Remove media element bufferingRate attribute. No test necessary as there
1262 were none for this attribute.
1264 * html/HTMLMediaElement.cpp:
1265 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't initialize m_bufferingRate.
1266 (WebCore::HTMLMediaElement::loadInternal): Ditto.
1267 (WebCore::HTMLMediaElement::setNetworkState): Ditto.
1268 (WebCore::HTMLMediaElement::progressEventTimerFired): Don't calculate m_bufferingRate.
1269 * html/HTMLMediaElement.h: Remove m_bufferingRate.
1270 * html/HTMLMediaElement.idl: Ditto.
1272 2009-03-05 Xan Lopez <xan@gnome.org>
1274 Reviewed by Mark Rowe.
1276 https://bugs.webkit.org/show_bug.cgi?id=24377
1277 [GTK] Comply better with coding style guidelines in ResourceHandleSoup
1279 Use C++ booleans, 0 instead of NULL, prefix boolean variables with
1280 'is', do not use 'else if' if the previous if had a return, delete
1281 trailing whitespace, etc.
1283 * platform/network/ResourceHandleInternal.h:
1284 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1285 * platform/network/soup/ResourceHandleSoup.cpp:
1286 (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
1287 (WebCore::fillResponseFromMessage):
1288 (WebCore::restartedCallback):
1289 (WebCore::finishedCallback):
1290 (WebCore::parseDataUrl):
1291 (WebCore::ensureSessionIsInitialized):
1292 (WebCore::ResourceHandle::startHttp):
1293 (WebCore::reportUnknownProtocolError):
1294 (WebCore::ResourceHandle::start):
1295 (WebCore::cleanupGioOperation):
1296 (WebCore::closeCallback):
1297 (WebCore::readCallback):
1298 (WebCore::openCallback):
1299 (WebCore::queryInfoCallback):
1300 (WebCore::ResourceHandle::startGio):
1302 2009-03-04 Simon Fraser <simon.fraser@apple.com>
1304 Reviewed by Eric Seidel
1306 https://bugs.webkit.org/show_bug.cgi?id=24328
1308 If an element has backface-visibility: hidden, hit testing should not
1309 hit the back sides of elements. Test for that by inverting the accumulated
1310 transform and looking at the z vector.
1312 Tested by transforms/3d/hit-testing/backface-hit-test.html
1314 * rendering/RenderLayer.cpp:
1315 (WebCore::RenderLayer::hitTestLayer):
1317 2009-03-04 Adam Langley <agl@google.com>
1319 Reviewed by Darin Fisher.
1321 r41362 mistakenly added functions "RenderThemeWin::" into
1322 RenderThemeChromiumGtk.cpp. When correcting this, I somehow changed
1323 them to void return types. This patch switches them back to ints.
1325 https://bugs.webkit.org/show_bug.cgi?id=24360
1327 * rendering/RenderThemeChromiumLinux.cpp:
1328 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingLeft):
1329 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingRight):
1330 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingTop):
1331 (WebCore::RenderThemeChromiumLinux::buttonInternalPaddingBottom):
1333 2009-03-04 Adam Langley <agl@google.com>
1335 Reviewed by Darin Fisher.
1337 Chromium Linux: change some metrics to better match Windows after
1338 r41416. Aesthetically this may be worse, but web-compat is king.
1340 Also, the previous code had an off by one error when drawing
1341 scrollbars which caused the scrollbar to overflow it's bounds by 1px
1342 at the right and bottom edges.
1344 https://bugs.webkit.org/show_bug.cgi?id=24369
1346 * rendering/RenderThemeChromiumLinux.cpp:
1348 (WebCore::RenderThemeChromiumLinux::systemFont):
1349 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1350 (WebCore::ScrollbarThemeChromium::paintTrackPiece):
1352 2009-03-04 Eric Seidel <eric@webkit.org>
1354 Reviewed by Adam Roben.
1356 Add an ASSERT to better demonstrate the cause of the crash in
1357 https://bugs.webkit.org/show_bug.cgi?id=23736
1359 * loader/DocLoader.cpp:
1360 (WebCore::DocLoader::~DocLoader):
1362 2009-03-04 David Levin <levin@chromium.org>
1364 Reviewed by Alexey Proskuryakov.
1366 Bug 24337: Assert when doing sync XHR in a worker for a cacheable response.
1367 <https://bugs.webkit.org/show_bug.cgi?id=24337>
1369 Tests: http/tests/xmlhttprequest/access-control-basic-denied-preflight-cache.html
1370 http/tests/xmlhttprequest/workers/xmlhttprequest-file-not-found.html
1372 * loader/mac/ResourceLoaderMac.mm:
1373 (WebCore::ResourceLoader::willCacheResponse):
1374 An identifier is only asssigned if resource load callbacks are done. So don't send
1375 willCacheResponse which uses identifier if resource load callbacks aren't being sent.
1377 2009-03-04 David Levin <levin@chromium.org>
1379 Reviewed by Alexey Proskuryakov.
1381 Bug 24330: Sync xhr in workers should send an abort exception when the worker is terminated.
1382 <https://bugs.webkit.org/show_bug.cgi?id=24330>
1384 Test: http/tests/xmlhttprequest/workers/abort-exception-assert.html
1386 * dom/ExceptionCode.cpp:
1387 (WebCore::xmlHttpRequestExceptionNames):
1388 Added missing ABORT_ERR whose absence caused an assert.
1390 * loader/WorkerThreadableLoader.cpp:
1391 (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
1392 (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
1393 Add more logic to handle the termination case for sync xhr.
1395 2009-03-04 Eric Carlson <eric.carlson@apple.com>
1397 Reviewed by Antti Koivisto.
1399 https://bugs.webkit.org/show_bug.cgi?id=24364
1400 Add support for HTMLMediaElement canPlayType method. Make
1401 MediaPlayer::supportsType take a ContentType instead of a
1402 separate mime type and codecs parameter.
1404 Test: media/video-can-play-type.html
1406 * dom/DOMImplementation.cpp:
1407 (WebCore::DOMImplementation::createDocument):
1408 * html/HTMLMediaElement.cpp:
1409 (WebCore::HTMLMediaElement::canPlayType): Add canPlayType method.
1410 (WebCore::HTMLMediaElement::loadInternal): selectMediaURL returns a ContentType.
1411 (WebCore::HTMLMediaElement::selectMediaURL): Return a ContentType instead of raw MIME type.
1412 (WebCore::HTMLMediaElement::initialURL): selectMediaURL returns a ContentType.
1413 * html/HTMLMediaElement.h: Add prototype.
1414 * html/HTMLMediaElement.idl: Ditto.
1415 * platform/graphics/MediaPlayer.cpp:
1416 (WebCore::MediaPlayer::load): Take a ContentType instead of raw MIME type.
1417 (WebCore::MediaPlayer::supportsType): Ditto.
1418 * platform/graphics/MediaPlayer.h:
1420 2009-03-04 Antti Koivisto <antti@apple.com>
1422 Reviewed by Dave Hyatt.
1424 https://bugs.webkit.org/show_bug.cgi?id=24359
1425 Repaint throttling mechanism
1427 Excessive repainting can slow down page loadind. This implements a timer
1428 based throttling mechanism. It is behind ENABLE(REPAINT_THROTTLING) and not
1431 * loader/FrameLoader.cpp:
1432 (WebCore::FrameLoader::checkCompleted):
1433 * page/EventHandler.cpp:
1434 (WebCore::EventHandler::dispatchDragEvent):
1435 (WebCore::EventHandler::dispatchMouseEvent):
1436 (WebCore::EventHandler::keyEvent):
1437 (WebCore::EventHandler::handleTextInputEvent):
1438 * page/FrameView.cpp:
1439 (WebCore::FrameView::FrameView):
1440 (WebCore::FrameView::reset):
1441 (WebCore::FrameView::repaintContentRectangle):
1442 (WebCore::FrameView::beginDeferredRepaints):
1443 (WebCore::FrameView::endDeferredRepaints):
1444 (WebCore::FrameView::checkStopDelayingDeferredRepaints):
1445 (WebCore::FrameView::doDeferredRepaints):
1446 (WebCore::FrameView::updateDeferredRepaintDelay):
1447 (WebCore::FrameView::resetDeferredRepaintDelay):
1448 (WebCore::FrameView::adjustedDeferredRepaintDelay):
1449 (WebCore::FrameView::deferredRepaintTimerFired):
1450 (WebCore::FrameView::paintContents):
1453 2009-03-04 Sam Weinig <sam@webkit.org>
1455 Rubber-stamped by Antti Koivisto.
1457 Remove LOW_BANDWIDTH_DISPLAY as it is not being used by any platforms.
1460 (WebCore::Document::Document):
1462 (WebCore::Document::haveStylesheetsLoaded):
1463 * html/HTMLTokenizer.cpp:
1464 (WebCore::HTMLTokenizer::scriptHandler):
1466 (WebCore::Cache::requestResource):
1467 * loader/CachedCSSStyleSheet.cpp:
1468 (WebCore::CachedCSSStyleSheet::checkNotify):
1469 * loader/DocLoader.h:
1470 * loader/FrameLoader.cpp:
1471 (WebCore::FrameLoader::FrameLoader):
1472 (WebCore::FrameLoader::requestFrame):
1473 (WebCore::FrameLoader::stopLoading):
1474 (WebCore::FrameLoader::begin):
1475 (WebCore::FrameLoader::write):
1476 (WebCore::FrameLoader::endIfNotLoadingMainResource):
1477 (WebCore::FrameLoader::checkCompleted):
1478 (WebCore::FrameLoader::requestObject):
1479 (WebCore::FrameLoader::loadItem):
1480 * loader/FrameLoader.h:
1482 2009-03-02 Xan Lopez <xan@gnome.org>
1484 Reviewed by Mark Rowe.
1486 https://bugs.webkit.org/show_bug.cgi?id=24287
1487 [GTK] Move auth dialog feature to WebKit/
1489 Remove WebKitSoupAuthDialog files from build and stop using it.
1492 * platform/network/soup/ResourceHandleSoup.cpp:
1493 (WebCore::ensureSessionIsInitialized):
1494 * platform/network/soup/webkit-soup-auth-dialog.c: Removed.
1495 * platform/network/soup/webkit-soup-auth-dialog.h: Removed.
1497 2009-03-04 Simon Fraser <simon.fraser@apple.com>
1499 Reviewed by Dave Hyatt
1501 https://bugs.webkit.org/show_bug.cgi?id=24361
1503 Reinstate code that sets result.innerNode when hitTest() returns true,
1504 but never filled in the innerNode. Fixes hit testing of generated content.
1506 Test: fast/css-generated-content/hit-test-generated-content.html
1508 * rendering/RenderLayer.cpp:
1509 (WebCore::RenderLayer::hitTestContents):
1511 2009-03-04 Adam Barth <abath@webkit.org>
1513 Reviewed by Alexey Proskuryakov.
1515 https://bugs.webkit.org/show_bug.cgi?id=24356
1517 Fix WebKit style for allowUniversalAccessFromFileURLs.
1521 (WebCore::Document::initSecurityContext):
1522 * page/Settings.cpp:
1523 (WebCore::Settings::Settings):
1524 (WebCore::Settings::setAllowUniversalAccessFromFileURLs):
1526 (WebCore::Settings::allowUniversalAccessFromFileURLs):
1528 2009-03-04 Brady Eidson <beidson@apple.com>
1530 Reviewed by Darin Adler
1532 <rdar://problem/6619630> Quick Look of vCards stuck on image of first card opened.
1534 I narrowed this down to http://trac.webkit.org/changeset/39304 which, among other things,
1535 consolidated some of the various decision making pieces of the Cache into the new method
1536 FrameLoader::cachePolicy().
1538 Before 39304, when deciding whether to use an existing CachedResource, we checked if the FrameLoader
1539 is reloading. If it is, we'd evict any existing resource then recreate it. Quick looks uses the
1540 same URL for this image every time and expects it to be reloaded with each new card.
1542 The FrameLoader::isReloading() check did one thing - Ask the DocumentLoader if it's cache policy
1543 is "ReloadIgnoringCacheData". This check was lost in the consolidation to the new method.
1545 * loader/FrameLoader.cpp:
1546 (WebCore::FrameLoader::cachePolicy): Restore the DocumentLoader's cachePolicy check as a possible
1547 condition for returning CachePolicyReload.
1549 2009-03-04 Timothy Hatcher <timothy@apple.com>
1551 * English.lproj/localizedStrings.js: Update strings to include "DATABASES",
1552 "LOCAL STORAGE" and "SESSION STORAGE".
1554 2009-03-04 Timothy Hatcher <timothy@apple.com>
1556 Fix a regression where the Web Inspector console would not animate
1557 in or out correctly.
1559 Reviewed by Anders Carlsson.
1561 * inspector/front-end/inspector.css: Move a z-index to a child element
1562 to get the correct stacking order during the animation.
1564 2009-03-03 David Hyatt <hyatt@apple.com>
1566 https://bugs.webkit.org/show_bug.cgi?id=24201, pathologically bad block layout.
1568 Make sure to factor clear deltas into y position estimates. Also avoid doing the comparison of
1569 the final position against the y position estimate until after the clear has happened. This gets rid
1570 of some duplicated cut/pasted code and also ensures a layout delta only has to be put in once.
1572 Reviewed by Dan Bernstein
1574 Added fast/block/float/nested-clearance.html
1576 * rendering/RenderBlock.cpp:
1577 (WebCore::RenderBlock::collapseMargins):
1578 (WebCore::RenderBlock::clearFloatsIfNeeded):
1579 (WebCore::RenderBlock::estimateVerticalPosition):
1580 (WebCore::RenderBlock::layoutBlockChildren):
1581 (WebCore::RenderBlock::getClearDelta):
1582 * rendering/RenderBlock.h:
1584 2009-03-02 Kim Grönholm <kim.gronholm@nomovok.com>
1586 Reviewed by Simon Hausmann.
1588 Improvement to 3d transformations rendering in QtWebKit. QTransform is used
1589 instead of QMatrix. This allows perspective transformations since QTransform is
1592 * platform/graphics/qt/GraphicsContextQt.cpp: Use QTransform instead of QMatrix everywhere.
1593 (WebCore::GraphicsContext::getCTM):
1594 (WebCore::GraphicsContext::restorePlatformState):
1595 (WebCore::GraphicsContext::fillPath):
1596 (WebCore::GraphicsContext::strokePath):
1597 (WebCore::GraphicsContext::fillRect):
1598 (WebCore::GraphicsContext::translate):
1599 (WebCore::GraphicsContext::rotate):
1600 (WebCore::GraphicsContext::scale):
1601 (WebCore::GraphicsContext::concatCTM):
1602 * platform/graphics/qt/ImageQt.cpp:
1603 (WebCore::Image::drawPattern):
1604 * platform/graphics/qt/PathQt.cpp:
1605 (WebCore::Path::translate):
1606 (WebCore::Path::transform):
1607 * platform/graphics/qt/PatternQt.cpp:
1608 (WebCore::Pattern::createPlatformPattern):
1609 * platform/graphics/qt/TransformationMatrixQt.cpp:
1610 (WebCore::TransformationMatrix::operator QTransform): Replace the conversion operator
1611 to QMatrix with one to QTransform.
1612 * platform/graphics/transforms/TransformationMatrix.h:
1613 * platform/graphics/qt/FontQt.cpp:
1615 2009-02-24 Laszlo Gombos <laszlo.1.gombos@nokia.com>
1617 Reviewed by Simon Hausmann.
1619 https://bugs.webkit.org/show_bug.cgi?id=24151
1620 Fix Qt/S60 build break
1622 * platform/FileSystem.h: Create a default case for non-win and non-mac Qt builds
1623 * platform/qt/FileSystemQt.cpp: Ditto
1624 (WebCore::unloadModule):
1626 2009-03-03 Mike Belshe <mike@belshe.com>
1628 Reviewed by Alexey Proskuryakov.
1630 https://bugs.webkit.org/show_bug.cgi?id=21939
1631 Uninitialized ExceptionCode in DOMWindow::postMessage
1633 * dom/MessagePort.cpp:
1634 (WebCore::MessagePort::postMessage):
1636 2009-03-03 David Kilzer <ddkilzer@apple.com>
1638 <rdar://problem/6581203> WebCore and WebKit should install the same set of headers during installhdrs phase as build phase
1640 Reviewed by Mark Rowe.
1642 The fix is to add INSTALLHDRS_COPY_PHASE = YES and
1643 INSTALLHDRS_SCRIPT_PHASE = YES to WebCore.xcconfig, then to make
1644 sure various build phase scripts work with the installhdrs build
1647 * Configurations/Base.xcconfig: Defined REAL_PLATFORM_NAME
1648 based on PLATFORM_NAME to work around the missing definition on
1650 * Configurations/WebCore.xcconfig: Added
1651 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR variable to simplify logic in
1652 the "Generate Derived Sources" script. Added
1653 INSTALLHDRS_COPY_PHASE = YES and INSTALLHDRS_SCRIPT_PHASE = YES.
1655 * WebCore.xcodeproj/project.pbxproj:
1656 - Added shell code to prevent running "Check For Global
1657 Initializers", "Check For Exit Time Destructors" and "Check
1658 For Weak VTables" scripts during the installhdrs build phase.
1659 - Made "Generate Derived Sources" work for the installhdrs build
1660 phase. Also simplified setting of CREATE_HASH_TABLE by using
1661 JAVASCRIPTCORE_PRIVATE_HEADERS_DIR.
1663 2009-03-02 Adam Langley <agl@google.com>
1665 Reviewed by Darin Fisher.
1667 Chromium Linux: Switch to using Skia to render widgets.
1669 In order to sandbox the Chromium renderer on Linux we need to remove
1670 the X connection. GTK cannot render without an X connection so, for
1671 now, we render widgets ourselves.
1673 Previously didn't use anti-alias fonts in order to match Windows font
1674 rendering exactly. This was helpful when bootstrapping our layout
1675 tests. Now, however, we are ready to enable it.
1677 https://bugs.webkit.org/show_bug.cgi?id=24244
1679 * platform/chromium/ScrollbarThemeChromium.cpp:
1680 (WebCore::ScrollbarThemeChromium::buttonSize):
1681 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1682 (WebCore::ScrollbarThemeChromium::scrollbarThickness):
1683 (WebCore::ScrollbarThemeChromium::paintTrackPiece):
1684 (WebCore::ScrollbarThemeChromium::paintButton):
1685 (WebCore::ScrollbarThemeChromium::paintThumb):
1686 * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1687 (WebCore::FontPlatformData::setupPaint):
1688 * platform/graphics/skia/PlatformContextSkia.cpp:
1689 (PlatformContextSkia::PlatformContextSkia):
1690 (PlatformContextSkia::~PlatformContextSkia):
1691 * platform/graphics/skia/PlatformContextSkia.h:
1692 * rendering/RenderThemeChromiumGtk.cpp: Removed.
1693 * rendering/RenderThemeChromiumGtk.h: Removed.
1694 * rendering/RenderThemeChromiumLinux.cpp: Added.
1695 * rendering/RenderThemeChromiumLinux.h: Added.
1697 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1699 Reviewed by Darin Fisher.
1701 https://bugs.webkit.org/show_bug.cgi?id=24261
1704 Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
1706 * bindings/v8/V8Binding.h:
1707 (WebCore::toInt32): change return type to int
1708 (WebCore::toFloat): change return type to float.
1710 2009-03-03 Anders Carlsson <andersca@apple.com>
1712 Reviewed by John Sullivan.
1714 https://bugs.webkit.org/show_bug.cgi?id=22884
1715 <rdar://problem/6449783>
1716 modified layout test crashes Safari
1718 Null check NPStream before dereferencing it.
1720 * plugins/PluginView.cpp:
1721 (WebCore::PluginView::destroyStream):
1723 2009-03-03 Eric Carlson <eric.carlson@apple.com>
1725 Reviewed by Simon Fraser.
1727 Fix for <rdar://problem/6641045>
1728 Don't call QTKit to get movie properties until movie metadata has been loaded.
1730 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1731 (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
1732 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1733 (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
1734 (WebCore::MediaPlayerPrivate::play): Ditto.
1735 (WebCore::MediaPlayerPrivate::pause): Ditto.
1736 (WebCore::MediaPlayerPrivate::duration): Ditto.
1737 (WebCore::MediaPlayerPrivate::currentTime): Ditto.
1738 (WebCore::MediaPlayerPrivate::seek): Ditto.
1739 (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
1740 (WebCore::MediaPlayerPrivate::paused): Ditto.
1741 (WebCore::MediaPlayerPrivate::seeking): Ditto.
1742 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
1743 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
1744 (WebCore::MediaPlayerPrivate::setVolume): Ditto.
1745 (WebCore::MediaPlayerPrivate::setRate): Ditto.
1746 (WebCore::MediaPlayerPrivate::dataRate): Ditto.
1747 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
1748 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
1750 2009-03-03 Kevin McCullough <kmccullough@apple.com>
1755 (WebCore::Console::profile):
1757 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1759 Reviewed by Darin Fisher.
1761 https://bugs.webkit.org/show_bug.cgi?id=23657
1762 Remove Database API callback IDLs from the project.
1763 They were removed in r40633.
1765 * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
1767 2009-03-03 Kevin McCullough <kmccullough@apple.com>
1769 Reviewed by Oliver Hunt.
1771 <rdar://problem/6639110> console.profile() doesn't work without a title
1774 (WebCore::Console::profile): If there is no title assume this is a user
1775 initiated profile and give it the next incremented title name.
1777 2009-03-03 Timothy Hatcher <timothy@apple.com>
1779 Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
1780 the console code and refactored things to have fewer code paths and duplication.
1782 rdar://problem/6367127
1783 https://bugs.webkit.org/show_bug.cgi?id=24329
1785 Reviewed by Kevin McCullough.
1787 Test: manual-tests/inspector/console-dir.html
1789 * bindings/js/JSInspectedObjectWrapper.cpp:
1790 (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
1791 to fix an ASSERT about using a wrapper from the wrong ExecState.
1792 * bindings/js/JSQuarantinedObjectWrapper.cpp:
1793 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
1794 (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
1795 * inspector/front-end/Console.js:
1796 (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
1797 When forceObjectFormat is true, the only formatter used is _formatobject.
1798 (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
1799 (WebInspector.Console.prototype._formatstring): Ditto.
1800 (WebInspector.Console.prototype._formatregexp): Ditto.
1801 (WebInspector.Console.prototype._formatarray): Ditto.
1802 (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
1803 (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
1804 (WebInspector.Console.prototype._formaterror): Remove the inline argument.
1805 (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
1806 simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
1807 (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
1808 (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
1809 (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
1810 (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
1811 * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
1812 * inspector/front-end/utilities.js:
1813 (Object.type): Return "node" for Node objects.
1814 (Object.describe): Handle the "node" type.
1816 (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
1817 (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
1819 (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
1821 2009-03-03 Scott Violet <sky@google.com>
1823 Reviewed by Eric Seidel.
1825 https://bugs.webkit.org/show_bug.cgi?id=24325
1826 Crash on replacing document contents during drop.
1828 Makes sure a node is in the document during a move before using it.
1830 Test: fast/events/crash-on-mutate-during-drop.html
1832 * editing/MoveSelectionCommand.cpp:
1833 (WebCore::MoveSelectionCommand::doApply):
1835 2009-03-03 Jungshik Shin <jshin@chromium.org>
1837 Reviewed by Eric Seidel.
1839 https://bugs.webkit.org/show_bug.cgi?id=23028
1840 Enable dynamic web font support to Chromium on Windows.
1841 Files that were omitted by mistake in the latest patch
1844 * loader/CachedFont.cpp:
1845 (WebCore::CachedFont::~CachedFont):
1846 (WebCore::CachedFont::ensureCustomFontData):
1847 (WebCore::CachedFont::platformDataFromCustomData):
1848 (WebCore::CachedFont::allClientsRemoved):
1849 * platform/graphics/chromium/FontCustomPlatformData.cpp:
1850 (WebCore::EOTStream::EOTStream):
1851 (WebCore::createFontCustomPlatformData):
1852 * platform/graphics/win/FontCustomPlatformData.cpp:
1853 (WebCore::EOTStream::EOTStream):
1854 (WebCore::createFontCustomPlatformData):
1856 2009-03-03 Gustavo Noronha Silva <gns@gnome.org>
1858 Reviewed by Alexey Proskuryakov.
1860 https://bugs.webkit.org/show_bug.cgi?id=16826
1861 [Gtk] Implement WebKitDownload
1863 Make the Soup backend able to handle requests without a frame,
1864 since we may have such things now that we support downloads.
1866 * platform/network/ResourceHandleInternal.h:
1867 * platform/network/soup/ResourceHandleSoup.cpp:
1868 (WebCore::ResourceHandle::start):
1870 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1872 Reviewed by Eric Seidel.
1874 https://bugs.webkit.org/show_bug.cgi?id=24331
1875 Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
1877 * bindings/v8/custom/V8AttrCustom.cpp: Added.
1878 * bindings/v8/custom/V8CustomBinding.cpp: Added.
1879 * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
1880 * bindings/v8/custom/V8ElementCustom.cpp: Added.
1881 * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
1882 * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
1884 2009-03-03 Brady Eidson <beidson@apple.com>
1886 Reviewed by Darin Adler
1888 <rdar://problem/6616664> - Quick looks of various file types is broken
1890 In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
1891 for non-HTTP loads when the underlying ResourceRequest changed. Unfortunately it was a little
1892 overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
1894 Partially reverted behavior to always set the mainDocumentURL in situations when we would've
1897 * loader/FrameLoader.cpp:
1898 (WebCore::FrameLoader::addExtraFieldsToRequest):
1900 * platform/network/ResourceRequestBase.cpp:
1901 (WebCore::ResourceRequestBase::setMainDocumentURL):
1903 2009-03-03 Chris Marrin <cmarrin@apple.com>
1905 Reviewed by Simon Fraser.
1907 https://bugs.webkit.org/show_bug.cgi?id=24256
1909 Added a WebCoreForceSoftwareAnimation flag.
1911 * platform/graphics/mac/GraphicsLayerCA.mm:
1912 (WebCore::forceSoftwareAnimation):
1913 (WebCore::GraphicsLayerCA::setOpacity):
1914 (WebCore::GraphicsLayerCA::animateTransform):
1915 (WebCore::GraphicsLayerCA::animateFloat):
1917 2009-03-02 Chris Marrin <cmarrin@apple.com>
1919 Reviewed by Sam Weinig.
1921 https://bugs.webkit.org/show_bug.cgi?id=24257
1923 Added prototype properties for several classes with constructors that
1924 were missing them, including the one mentioned in the bug.
1926 Test: fast/dom/Window/custom-constructors.html
1928 * bindings/js/JSAudioConstructor.cpp:
1929 (WebCore::JSAudioConstructor::JSAudioConstructor):
1930 * bindings/js/JSDOMWindowBase.cpp:
1931 (jsDOMWindowBaseWebKitCSSMatrix):
1932 * bindings/js/JSImageConstructor.cpp:
1933 (WebCore::JSImageConstructor::JSImageConstructor):
1934 * bindings/js/JSOptionConstructor.cpp:
1935 (WebCore::JSOptionConstructor::JSOptionConstructor):
1936 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
1937 (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
1938 * bindings/js/JSWebKitCSSMatrixConstructor.h:
1939 * bindings/js/JSWebKitPointConstructor.cpp:
1940 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
1941 * bindings/js/JSWorkerConstructor.cpp:
1942 (WebCore::JSWorkerConstructor::JSWorkerConstructor):
1944 2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
1946 Reviewed by Darin Fisher.
1948 https://bugs.webkit.org/show_bug.cgi?id=24321
1949 Add V8 bindings headers.
1951 * bindings/v8/V8Binding.h: Added.
1952 * bindings/v8/V8Proxy.h: Added.
1953 * bindings/v8/custom/V8CustomBinding.h: Added.
1954 * bindings/v8/custom/V8CustomEventListener.h: Added.
1956 2009-03-03 Jungshik Shin <jshin@chromium.org>
1958 Reviewed by Eric Seidel.
1960 https://bugs.webkit.org/show_bug.cgi?id=23803
1961 Fix an 'off-by-1' error in ChromiumWin's font fallback.
1963 * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1964 (WebCore::FontCache::getFontDataForCharacters):
1966 2009-03-03 Jungshik Shin <jshin@chromium.org>
1968 Reviewed by Eric Seidel.
1970 http://bugs.webkit.org/show_bug.cgi?id=23028
1971 Enable dynamic web font support to Chromium on Windows: Part 1
1972 - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
1973 from platform/graphics/win because both Windows port and Chromium Windows
1975 - Adjust WebCore.vcproj accordingly.
1977 * WebCore.vcproj/WebCore.vcproj:
1978 * platform/graphics/opentype: Added.
1979 * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
1980 * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
1981 * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
1982 * platform/graphics/win/OpenTypeUtilities.h: Removed.
1984 2009-03-03 Simon Fraser <simon.fraser@apple.com>
1986 Reviewed by Dave Hyatt
1988 https://bugs.webkit.org/show_bug.cgi?id=24312
1990 Take 3D transforms into account when hit testing:
1992 1. Maintain a bit on each RenderLayer that is set when the layer
1993 has 3d descendants, so that we know when to fall into the slow
1996 2. Make a ref-counted HitTestingTransformState, which is used to store
1997 an accumulated transform, and the hit test point, and hitTestRect
1998 in the plane of the ancestor non-3d ('flattening') layer.
2000 It's ref-counted so we can heap allocate it (to avoid stack bloat),
2001 and avoid copying when hitTestLayer calls itself after applying the transform.
2003 3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
2004 3D transforms, or to do deep depth-testing when traversing a preserves-3d
2005 hierarchy. When hit, layers compute a z-offset from the ancestor flattening
2006 layer, which allows for correct depth testing.
2008 The existing early-return codepath is unaffected when there are no 3d transforms
2011 * rendering/RenderLayer.cpp:
2012 (WebCore::RenderLayer::RenderLayer):
2013 (WebCore::RenderLayer::updateTransform):
2014 (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
2015 (WebCore::RenderLayer::update3DTransformedDescendantStatus):
2016 (WebCore::RenderLayer::hitTest):
2017 (WebCore::computeZOffset):
2018 (WebCore::RenderLayer::createLocalTransformState):
2019 (WebCore::RenderLayer::hitTestLayer):
2020 (WebCore::RenderLayer::hitTestContents):
2021 * rendering/RenderLayer.h:
2022 (WebCore::RenderLayer::preserves3D):
2023 (WebCore::RenderLayer::has3DTransform):
2024 (WebCore::RenderLayer::setHas3DTransformedDescendant):
2025 (WebCore::RenderLayer::has3DTransformedDescendant):
2026 * rendering/RenderLayerBacking.cpp:
2027 * rendering/TransformState.cpp:
2028 (WebCore::TransformState::flatten):
2029 (WebCore::TransformState::mappedPoint):
2030 (WebCore::HitTestingTransformState::move):
2031 (WebCore::HitTestingTransformState::applyTransform):
2032 (WebCore::HitTestingTransformState::flatten):
2033 (WebCore::HitTestingTransformState::mappedPoint):
2034 (WebCore::HitTestingTransformState::mappedQuad):
2035 * rendering/TransformState.h:
2036 (WebCore::TransformState::TransformState):
2037 (WebCore::HitTestingTransformState::create):
2038 (WebCore::HitTestingTransformState::move):
2039 (WebCore::HitTestingTransformState::HitTestingTransformState):
2041 2009-03-03 Brett Wilson <brettw@chromium.org>
2043 Fix uninitialized memory reads in the Chromium Windows transparency
2044 code that were identified by Purify,
2046 Reviewed by Darin Fisher.
2048 * platform/graphics/chromium/TransparencyWin.cpp:
2049 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
2050 (WebCore::TransparencyWin::initializeNewContext):
2052 2009-03-03 Simon Fraser <simon.fraser@apple.com>
2054 Reviewed by Dave Hyatt
2056 https://bugs.webkit.org/show_bug.cgi?id=24312
2058 Factor the code that compute a transform relative to the container
2059 into RenderObject::transformFromContainer().
2061 * rendering/RenderBox.cpp:
2062 (WebCore::RenderBox::mapLocalToAbsolutePoint):
2063 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
2064 * rendering/RenderObject.cpp:
2065 (WebCore::RenderObject::transformFromContainer):
2066 * rendering/RenderObject.h:
2068 2009-03-03 Simon Fraser <simon.fraser@apple.com>
2070 Reviewed by Dave Hyatt
2072 https://bugs.webkit.org/show_bug.cgi?id=24317
2074 Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
2075 the superclass found a node, otherwise we set the innerNode of the
2076 HitTestResult, but don't actually report that we found a hit.
2078 * rendering/RenderTextControlMultiLine.cpp:
2079 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2081 2009-03-03 Onne Gorter <onne.gorter@avinity.net>
2083 Reviewed by Anders Carlsson.
2085 https://bugs.webkit.org/show_bug.cgi?id=23707
2086 resizing plugins does not work, because the plugin never gets informed
2088 Make gtk plugins resize correctly, by sending them the setwindow event
2089 correctly. Also ensure that all plugin eventing is done with correct
2090 locking/calling. Mostly copied from mac implementation.
2092 manual test: manual-tests/gtk/plugin-resize-scroll.html
2094 * plugins/PluginView.h:
2095 * plugins/gtk/PluginViewGtk.cpp:
2096 (WebCore::PluginView::dispatchNPEvent):
2097 ensure locking/calling for NPEvents
2098 (WebCore::PluginView::updatePluginWidget):
2099 if something changed, let setNPWindowIfNeeded handle it
2100 (WebCore::PluginView::paint):
2101 (WebCore::PluginView::handleKeyboardEvent):
2102 (WebCore::PluginView::handleMouseEvent):
2103 ensure calling conventions
2104 (WebCore::PluginView::setNPWindowRect):
2105 just pass control to setNPWindowIfNeeded
2106 (WebCore::PluginView::setNPWindowIfNeeded):
2107 event the plugin correctly of new window
2108 (WebCore::PluginView::init):
2109 init through the new setup
2111 2009-03-03 Mike Belshe <mike@belshe.com>
2113 Reviewed by Darin Fisher.
2115 https://bugs.webkit.org/show_bug.cgi?id=24311
2116 Make IDL returning DOMObject use [V8Custom]
2119 * html/HTMLCanvasElement.idl:
2121 2009-03-02 Simon Fraser <simon.fraser@apple.com>
2123 Reviewed by Adele Peterson
2125 https://bugs.webkit.org/show_bug.cgi?id=24313
2127 If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
2128 HitTestResult, then it had better well return |true|. And m_innerBlock
2129 could never have been set as the hit node by the superclass, because
2130 the superclass knows nothing about m_innerBlock.
2132 Test: fast/forms/input-hit-test-border.html
2134 * rendering/RenderTextControlSingleLine.cpp:
2135 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2137 2009-03-02 Sam Weinig <sam@webkit.org>
2139 Reviewed by Mark Rowe.
2141 Enable Geolocation (except on Tiger and Leopard).
2143 * Configurations/WebCore.xcconfig:
2145 2009-03-02 Ojan Vafai <ojan@chromium.org>
2147 Reviewed by Adele Peterson.
2149 Fix https://bugs.webkit.org/show_bug.cgi?id=24307
2150 Null out m_highlightedNode on hideHighlight().
2151 Ran WebCore/manual-tests/inspector/highlight-nodes.html.
2153 * inspector/InspectorController.cpp:
2154 (WebCore::InspectorController::hideHighlight):
2156 2009-03-02 Sam Weinig <sam@webkit.org>
2158 Reviewed by Geoffrey Garen.
2160 Fix for <rdar://problem/6507404> Add Geolocation support.
2162 This is not yet turned on for any Mac platform.
2164 * WebCore.xcodeproj/project.pbxproj:
2166 (WebCore::Chrome::shouldAllowGeolocationForFrame):
2168 * page/ChromeClient.h:
2169 (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
2170 * page/Geolocation.cpp:
2171 (WebCore::Geolocation::Geolocation):
2172 (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
2173 will not be alive at this point.
2174 (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
2175 return a PERMISSION_DENIED if not.
2176 (WebCore::Geolocation::watchPosition): Ditto.
2177 (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
2178 to allow geolocation and cache the result.
2179 * page/Geolocation.h:
2180 (WebCore::Geolocation::):
2181 * platform/GeolocationService.cpp:
2182 * platform/GeolocationService.h:
2183 (WebCore::GeolocationService::~GeolocationService):
2184 (WebCore::GeolocationService::stopUpdating):
2185 * platform/mac/GeolocationServiceMac.h: Added.
2186 (WebCore::GeolocationServiceMac::lastPosition):
2187 (WebCore::GeolocationServiceMac::lastError):
2188 * platform/mac/GeolocationServiceMac.mm: Added.
2189 (WebCore::GeolocationService::create):
2190 (WebCore::GeolocationServiceMac::GeolocationServiceMac):
2191 (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
2192 (WebCore::GeolocationServiceMac::startUpdating):
2193 (WebCore::GeolocationServiceMac::stopUpdating):
2194 (WebCore::GeolocationServiceMac::suspend):
2195 (WebCore::GeolocationServiceMac::resume):
2196 (WebCore::GeolocationServiceMac::positionChanged):
2197 (WebCore::GeolocationServiceMac::errorOccurred):
2198 (-[WebCoreCoreLocationObserver initWithCallback:]):
2199 (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
2200 (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
2202 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
2204 Build fixes for wxWidgets Mac trunk build.
2206 * platform/wx/wxcode/mac/carbon/fontprops.cpp:
2207 (wxFontProperties::wxFontProperties):
2211 2009-03-02 Kevin Ollivier <kevino@theolliviers.com>
2213 wxGTK missing header build fix.
2215 * platform/wx/wxcode/gtk/fontprops.cpp:
2217 2009-03-02 Dan Bernstein <mitz@apple.com>
2219 Reviewed by Adam Roben.
2221 - fix https://bugs.webkit.org/show_bug.cgi?id=21811
2222 REGRESSION: Windows Build Not Selecting Proper Font
2224 * platform/graphics/win/FontCacheWin.cpp:
2225 (WebCore::createGDIFont): Added back code to verify that the created
2226 HFONT has the requested face name.
2228 2009-03-02 Timothy Hatcher <timothy@apple.com>
2230 Fixes a regression caused by splitting the input and output of console commands.
2232 https://bugs.webkit.org/show_bug.cgi?id=24293
2234 Reviewed by Kevin McCullough.
2236 * inspector/front-end/Console.js:
2237 (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
2238 normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
2240 2009-03-02 Timothy Hatcher <timothy@apple.com>
2242 Make exception messages and logged Error objects display consistently.
2244 https://bugs.webkit.org/show_bug.cgi?id=18983
2246 Reviewed by Adam Roben.
2248 * English.lproj/localizedStrings.js: Remove a string for line numbers.
2249 * inspector/front-end/Console.js:
2250 (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
2251 boolean to the ConsoleCommandResult constructor and don't pass level.
2252 (WebInspector.Console.prototype._formatnode): Fix a className typo.
2253 (WebInspector.Console.prototype._formaterror): Add an error-message
2254 classed span around the message to show in red and remove the
2255 console-message-url class from the link so it doesn't float right.
2256 Instead enclose the link in parentheses and use displayNameForURL
2257 to shorten the URL in the link.
2258 (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
2259 how line numbers are shown since link underlining a string with
2260 parentheses looks bad.
2261 (WebInspector.ConsoleCommandResult): Take an exception boolean flag
2262 instead of a level and get line and URL based on that flag.
2263 * inspector/front-end/inspector.css: Tweaks to the styles.
2265 2009-03-02 Ojan Vafai <ojan@chromium.org>
2267 Reviewed by Adele Peterson.
2269 Bug 24048: extra windows button padding doesn't apply when there's no appearance
2270 <https://bugs.webkit.org/show_bug.cgi?id=24048>
2272 Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
2274 No tests added as existing tests already cover this behavior.
2276 * rendering/RenderButton.cpp:
2277 (WebCore::RenderButton::setupInnerStyle):
2278 * rendering/RenderTheme.cpp:
2279 * rendering/RenderTheme.h:
2280 (WebCore::RenderTheme::buttonInternalPaddingLeft):
2281 (WebCore::RenderTheme::buttonInternalPaddingRight):
2282 (WebCore::RenderTheme::buttonInternalPaddingTop):
2283 * rendering/RenderThemeChromiumGtk.cpp:
2284 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
2285 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
2286 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
2287 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
2288 * rendering/RenderThemeChromiumGtk.h:
2289 * rendering/RenderThemeChromiumWin.cpp:
2290 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
2291 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
2292 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
2293 (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
2294 * rendering/RenderThemeChromiumWin.h:
2295 * rendering/RenderThemeWin.cpp:
2296 (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
2297 (WebCore::RenderThemeWin::buttonInternalPaddingRight):
2298 (WebCore::RenderThemeWin::buttonInternalPaddingTop):
2299 (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
2300 * rendering/RenderThemeWin.h:
2302 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
2304 Build fix for Qt port. Remove unnecessary assert.
2306 * platform/graphics/qt/ImageBufferQt.cpp:
2307 (WebCore::ImageBuffer::putImageData):
2309 2009-03-02 Adam Treat <adam.treat@torchmobile.com>
2311 Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
2313 https://bugs.webkit.org/show_bug.cgi?id=24227
2314 Ensure that the checkForSolidColor() optimization is correctly triggered
2315 for all cases of drawPattern. Currently, the optimization was not triggered
2316 when the check had not been previously performed via a request for the
2317 image's NativeImagePtr.
2319 Implement the Qt version of the checkForSolidColor() method. Combined with
2320 the bug fix this reduces the time it takes to draw a repeating background
2321 of a 1x1 image from ~50msecs to ~0msecs on my machine.
2323 * platform/graphics/BitmapImage.cpp:
2324 (WebCore::BitmapImage::BitmapImage):
2325 * platform/graphics/BitmapImage.h:
2326 (WebCore::BitmapImage::mayFillWithSolidColor):
2327 * platform/graphics/Image.h:
2328 (WebCore::Image::mayFillWithSolidColor):
2329 * platform/graphics/cairo/ImageCairo.cpp:
2330 (WebCore::BitmapImage::BitmapImage):
2331 (WebCore::BitmapImage::checkForSolidColor):
2332 * platform/graphics/cg/ImageCG.cpp:
2333 (WebCore::BitmapImage::BitmapImage):
2334 (WebCore::BitmapImage::checkForSolidColor):
2335 * platform/graphics/qt/ImageQt.cpp:
2336 (WebCore::BitmapImage::checkForSolidColor):
2337 * platform/graphics/skia/ImageSkia.cpp:
2338 (WebCore::BitmapImage::checkForSolidColor):
2339 * platform/graphics/wx/ImageWx.cpp:
2340 (WebCore::BitmapImage::checkForSolidColor):
2342 2009-03-02 Gustavo Noronha Silva <gns@gnome.org>
2344 Unreviewed build fix; adding missing files to EXTRA_DIST, so that
2345 they show up in the tarball.
2349 2009-03-02 Dirk Schulze <krit@webkit.org>
2351 Reviewed by Holger Freyther.
2353 Added putImageData to Qt. Discussed with Ariya Hidayat.
2355 [Qt] lacks putImageData support in Canvas
2356 https://bugs.webkit.org/show_bug.cgi?id=22186
2358 * platform/graphics/qt/ImageBufferQt.cpp:
2359 (WebCore::ImageBuffer::putImageData):
2361 2009-03-02 Timothy Hatcher <timothy@apple.com>
2363 Show exception messages again when evaluating bad expressions in the
2364 Web Inspector's console.
2366 https://bugs.webkit.org/show_bug.cgi?id=19890
2368 Reviewed by Oliver Hunt.
2370 * bindings/js/JSQuarantinedObjectWrapper.cpp:
2371 (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
2372 Fix the order in which the exception is set and cleared now that the
2373 exception is stored in the shared GlobalData, not per ExecState.
2375 2009-02-28 Timothy Hatcher <timothy@apple.com>
2377 Make input in the Web Inspector console print before any output
2378 that might be added by the called function.
2380 https://bugs.webkit.org/show_bug.cgi?id=19931
2382 Reviewed by Oliver Hunt.
2384 * inspector/front-end/Console.js:
2385 (WebInspector.Console.prototype._enterKeyPressed): Add the command
2386 message before evaluating the result. Associate the originating
2387 command to the result, so if they are adjacent there is no divider.
2388 (WebInspector.ConsoleCommand): No longer take a result.
2389 (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
2390 code removed since it isn't used now.
2391 (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
2392 (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
2393 Call the ConsoleMessage toMessageElement and add a style class.
2394 * inspector/front-end/inspector.css: Add a new style class for
2395 adjacent results to hide the divider. Also tweak the position of
2396 the disclosure triangle for objects to not use the left margin.
2398 2009-03-01 Chris Fleizach <cfleizach@apple.com>
2400 Reviewed by Oliver Hunt.
2402 Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
2403 <https://bugs.webkit.org/show_bug.cgi?id=24282>
2405 When fetching an array of elements with a range, attachment views need to be returned
2406 instead of the actual attachment.
2408 * page/mac/AccessibilityObjectWrapper.mm:
2409 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
2410 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2412 2009-03-01 Ojan Vafai <ojan@chromium.org>
2414 Reviewed by Eric Seidel.
2416 Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
2417 <https://bugs.webkit.org/show_bug.cgi?id=24251>
2419 Make RenderObject::positionForCoordinate non-virtual and
2420 RenderObject::positionForPoint virtual in preparation for
2421 removing positionFor* from RenderObject/RenderText.
2424 (WebCore::Frame::visiblePositionForPoint):
2425 * rendering/RenderBR.cpp:
2426 (WebCore::RenderBR::positionForPoint):
2427 * rendering/RenderBR.h:
2428 * rendering/RenderBlock.cpp:
2429 (WebCore::RenderBlock::positionForPoint):
2430 * rendering/RenderBlock.h:
2431 * rendering/RenderBox.cpp:
2432 (WebCore::RenderBox::positionForPoint):
2433 * rendering/RenderBox.h:
2434 * rendering/RenderInline.cpp:
2435 (WebCore::RenderInline::positionForPoint):
2436 * rendering/RenderInline.h:
2437 * rendering/RenderObject.cpp:
2438 (WebCore::RenderObject::positionForCoordinates):
2439 (WebCore::RenderObject::positionForPoint):
2440 * rendering/RenderObject.h:
2441 * rendering/RenderReplaced.cpp:
2442 (WebCore::RenderReplaced::positionForPoint):
2443 * rendering/RenderReplaced.h:
2444 * rendering/RenderSVGInlineText.cpp:
2445 (WebCore::RenderSVGInlineText::positionForPoint):
2446 * rendering/RenderSVGInlineText.h:
2447 * rendering/RenderText.cpp:
2448 (WebCore::RenderText::positionForPoint):
2449 * rendering/RenderText.h:
2451 2009-03-01 Larry Ewing <lewing@novell.com>
2453 Reviewed by Alexey Proskuryakov.
2455 https://bugs.webkit.org/show_bug.cgi?id=24080
2456 NPN_GetValue casting to the wrong type and writing outside bounds
2458 Make sure to cast the value to the correct type so that only
2459 memory owned by the value is written to.
2461 * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic):
2462 * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
2463 * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic):
2464 (PluginView::getValue):
2466 2009-03-01 Jeremy Moskovich <jeremy@chromium.org>
2468 Reviewed by Simon Fraser.
2470 https://bugs.webkit.org/show_bug.cgi?id=24197 and
2471 https://bugs.webkit.org/show_bug.cgi?id=23512
2473 The Windows version of cgColor() is conditionally compiled using
2474 !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
2475 can use the OS X version instead of the Windows version.
2477 Also rename cgColor() -> createCGColor()
2479 No observable change in behavior, so no test.
2481 * platform/graphics/Color.h:
2482 * platform/graphics/cg/ColorCG.cpp:
2483 (WebCore::createCGColor):
2484 * platform/graphics/cg/GraphicsContextCG.cpp:
2485 (WebCore::GraphicsContext::setPlatformShadow):
2486 * platform/graphics/mac/ColorMac.mm:
2487 (WebCore::createCGColor):
2488 * platform/graphics/mac/GraphicsContextMac.mm:
2489 (WebCore::GraphicsContext::drawFocusRing):
2490 * platform/graphics/mac/GraphicsLayerCA.mm:
2491 (WebCore::setLayerBorderColor):
2492 (WebCore::setLayerBackgroundColor):
2493 (WebCore::GraphicsLayerCA::setBackgroundColor):
2494 * platform/graphics/win/GraphicsContextCGWin.cpp:
2495 (WebCore::GraphicsContext::drawFocusRing):
2496 * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
2499 2009-03-01 David Levin <levin@chromium.org>
2501 Reviewed by Alexey Proskuryakov.
2503 Bug 24271: XMLHttpRequest needs js bindings for Workers.
2504 <https://bugs.webkit.org/show_bug.cgi?id=24271>
2506 Tests: http/tests/xmlhttprequest/workers/methods-async.html
2507 http/tests/xmlhttprequest/workers/methods.html
2509 * bindings/js/JSWorkerContextBase.cpp:
2510 (WebCore::JSWorkerContextBase::getOwnPropertySlot):
2511 (jsWorkerContextBaseXMLHttpRequest):
2512 (setJSWorkerContextBaseXMLHttpRequest):
2513 Expose XMLHttpRequest to Workers.
2515 * bindings/js/JSWorkerContextBase.h:
2517 * bindings/js/JSXMLHttpRequestConstructor.cpp:
2518 (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
2519 (WebCore::constructXMLHttpRequest):
2520 (WebCore::JSXMLHttpRequestConstructor::mark):
2521 Removed the dependencies on Document.
2523 * bindings/js/JSXMLHttpRequestConstructor.h:
2524 (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
2525 * dom/EventException.idl:
2526 * dom/EventListener.idl:
2527 Change to have the NoStaticTables attribute since they are used from XHR.
2529 * loader/WorkerThreadableLoader.cpp:
2530 (WebCore::workerContextDidFinishLoading):
2531 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
2532 Fixed identifier to be unsigned long.
2534 * loader/WorkerThreadableLoader.h:
2535 * workers/WorkerThread.cpp:
2536 (WebCore::WorkerThread::workerThread):
2537 Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
2539 * xml/XMLHttpRequestUpload.cpp:
2541 * xml/XMLHttpRequest.idl:
2542 * xml/XMLHttpRequestException.idl:
2543 * xml/XMLHttpRequestProgressEvent.idl:
2544 * xml/XMLHttpRequestUpload.idl:
2545 Change to have the NoStaticTables attribute since they are used from XHR.
2547 2009-03-01 Horia Olaru <olaru@adobe.com>
2549 Adding manual debugger test cases for bug.
2551 https://bugs.webkit.org/show_bug.cgi?id=21073
2553 Reviewed by Kevin McCullough.
2555 * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
2556 * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
2557 * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
2558 * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
2559 * manual-tests/inspector/resources/loop-statements.js: Added.
2561 2009-03-01 Dan Bernstein <mitz@apple.com>
2563 Reviewed by Darin Adler.
2565 - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
2567 Test: fast/events/scroll-during-zoom-change.html
2570 (WebCore::Document::recalcStyle): Pause scheduled events during style
2571 reclaculation. Changes to the zoom property result in scroll events
2572 being generated during style recalc, and those events need to be
2573 deferred until the render tree is consistent.
2574 * page/FrameView.cpp:
2575 (WebCore::FrameView::layout): Changed to account for a case in which the
2576 post-layout tasks trigger a nested layout, which reactivates the
2577 post-layout task timer.
2579 2009-03-01 Ross Boucher <rboucher@gmail.com>
2581 Alphabetically sort scripts in the Script's panel file popup menu.
2583 https://bugs.webkit.org/show_bug.cgi?id=23395
2585 Reviewed by Timothy Hatcher.
2587 * inspector/front-end/ScriptsPanel.js:
2588 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
2589 * inspector/front-end/utilities.js:
2590 (insertionIndexForObjectInListSortedByFunction):
2591 (indexOfObjectInListSortedByFunction):
2593 2009-03-01 Yael Aharon <yael.aharon@nokia.com>
2595 Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
2596 when creating databases, localStorage or sessionStorage. Changing document.domain
2597 should have no affect on databases, localStorage and sessionStorage in Web Inspector.
2599 https://bugs.webkit.org/show_bug.cgi?id=23844
2601 Reviewed by Timothy Hatcher.
2603 * inspector/InspectorController.cpp:
2604 (WebCore::InspectorController::addDOMStorageScriptResource):
2605 (WebCore::InspectorController::didUseDOMStorage):
2606 * storage/Database.cpp:
2607 (WebCore::Database::openDatabase):
2609 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
2611 Reviewed by Holger Freyther.
2613 Avoid leaking errors when reporting GIO errors.
2615 * platform/network/soup/ResourceHandleSoup.cpp:
2616 (WebCore::readCallback):
2617 (WebCore::openCallback):
2618 (WebCore::queryInfoCallback):
2620 2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
2622 Reviewed by Holger Freyther.
2624 Fixes crash when the GIO backend is given the URI for a directory.
2626 * platform/network/soup/ResourceHandleSoup.cpp:
2627 (WebCore::networkErrorForFile):
2629 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
2631 Reviewed by Darin Fisher.
2633 https://bugs.webkit.org/show_bug.cgi?id=24261
2634 Fix V8 custom binding scrubbing error.
2636 Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
2637 Test: traversal/exception-forwarding.html
2638 TesT: traversal/stay-within-root.html
2640 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2641 * bindings/v8/custom/V8NodeIteratorCustom.cpp:
2642 (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
2643 * bindings/v8/custom/V8TreeWalkerCustom.cpp:
2644 (WebCore::toV8): Ditto.
2646 2009-02-28 Dimitri Glazkov <dglazkov@chromium.org>
2648 Reviewed by Darin Fisher.
2650 https://bugs.webkit.org/show_bug.cgi?id=24261
2651 Fix V8 custom binding scrubbing error.
2653 Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
2655 * WebCore.xcodeproj/project.pbxproj:
2656 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2657 (WebCore::cssPropertyName): Remove dubious checks, left over from
2658 incomplete conversion of parameter from pointer to pass-by-ref.
2659 (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
2660 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
2662 2009-02-28 Xan Lopez <xan@gnome.org>
2664 Reviewed by Holger Freyther.
2666 https://bugs.webkit.org/show_bug.cgi?id=24263
2667 [GTK] ref ResourceHandle until we are finished with it
2669 Add a ref to the ResourceHandle in startHttp so we can keep it
2670 alive untill all callbacks have been executed, and unref it when
2671 soup tells us it's done with the SoupMessage (in
2672 finishedCallback). Fixes a number of crashes when calling
2673 didReceiveData whould crash because of the handle dying.
2675 * platform/network/soup/ResourceHandleSoup.cpp:
2676 (WebCore::finishedCallback):
2677 (WebCore::ResourceHandle::startHttp):
2679 2009-02-28 Adam Bergkvist <adam.bergkvist@ericsson.com>
2681 Reviewed by Alexey Proskuryakov.
2683 https://bugs.webkit.org/show_bug.cgi?id=24226
2684 [SOUP] HTTP status text is never set
2686 Set HTTP status text to SoupMessage reason_phrase.
2688 * platform/network/soup/ResourceHandleSoup.cpp:
2689 (WebCore::fillResponseFromMessage):
2691 2009-02-28 Dan Bernstein <mitz@apple.com>
2693 - fix malformed project file
2695 * WebCore.xcodeproj/project.pbxproj:
2697 2009-02-28 Dan Bernstein <mitz@apple.com>
2699 Reviewed by Oliver Hunt.
2701 - fix https://bugs.webkit.org/show_bug.cgi?id=23848
2702 <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
2704 Test: fast/layers/inline-dirty-z-order-lists.html
2706 * rendering/RenderBox.cpp:
2707 (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
2708 layer's and its stacking context's z-order lists when the layer's
2709 z-index or visibility change from here...
2710 * rendering/RenderBoxModelObject.cpp:
2711 (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
2712 it will apply to RenderInline too.
2714 2009-02-27 Alexey Proskuryakov <ap@webkit.org>
2716 Reviewed by David Hyatt.
2718 Don't include TextResourceDecoder.h in Document.h
2720 This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
2721 when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
2724 (WebCore::Document::displayStringModifiedByEncoding):
2725 (WebCore::Document::displayBufferModifiedByEncoding):
2729 2009-02-27 Matt Pennig <pennig@apple.com>
2731 Reviewed by David Hyatt.
2733 Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
2734 "Fixed elements have 0 as an offsetLeft property"
2736 Code also brings offsetLeft/Top in full conformance with the spec.
2737 Added two tests, one for fixed-position elements, and one for <html>.
2739 Tests: fast/dom/Element/fixed-position-offset-parent.html
2740 fast/dom/Element/offsetLeft-offsetTop-html.html
2742 * rendering/RenderBoxModelObject.cpp:
2743 (WebCore::RenderBoxModelObject::offsetLeft):
2744 (WebCore::RenderBoxModelObject::offsetTop):
2746 2009-02-27 Dean Jackson <dino@apple.com>
2748 Reviewed by Simon Fraser.
2750 renderer()->hasTransform() returns true for elements
2751 with perspective, but no transform, so test for transform
2752 when hit testing. This fixes ASSERT from
2753 https://bugs.webkit.org/show_bug.cgi?id=24252
2755 Test: transforms/no_transform_hit_testing.html
2757 * rendering/RenderLayer.cpp:
2758 (WebCore::RenderLayer::hitTestLayer):
2760 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
2762 Reviewed by Darin Fisher.
2764 Fix scrubbing error -- a reversed condition.
2766 * bindings/v8/ScriptValue.h:
2767 (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
2769 2009-02-27 Jian Li <jianli@chromium.org>
2771 Reviewed by Alexey Proskuryakov.
2773 Add confirmMessageFromWorkerObject to WorkerObjectProxy.
2774 https://bugs.webkit.org/show_bug.cgi?id=24152
2776 * workers/WorkerMessagingProxy.cpp:
2777 (WebCore::MessageWorkerContextTask::performTask):
2778 (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
2779 * workers/WorkerMessagingProxy.h:
2780 * workers/WorkerObjectProxy.h:
2782 2009-02-27 Anders Carlsson <andersca@apple.com>
2784 Reviewed by David Hyatt.
2786 Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227
2787 because it leads to assertion failures in the Mac port.
2789 * platform/graphics/BitmapImage.cpp:
2790 (WebCore::BitmapImage::BitmapImage):
2791 * platform/graphics/BitmapImage.h:
2792 (WebCore::BitmapImage::mayFillWithSolidColor):
2793 * platform/graphics/Image.h:
2794 (WebCore::Image::mayFillWithSolidColor):
2795 * platform/graphics/cairo/ImageCairo.cpp:
2796 (WebCore::BitmapImage::BitmapImage):
2797 * platform/graphics/cg/ImageCG.cpp:
2798 (WebCore::BitmapImage::BitmapImage):
2799 (WebCore::BitmapImage::checkForSolidColor):
2800 * platform/graphics/qt/ImageQt.cpp:
2801 (WebCore::BitmapImage::checkForSolidColor):
2802 * platform/graphics/skia/ImageSkia.cpp:
2803 (WebCore::BitmapImage::checkForSolidColor):
2804 * platform/graphics/wx/ImageWx.cpp:
2805 (WebCore::BitmapImage::checkForSolidColor):
2807 2009-02-27 Adam Barth <abarth@webkit.org>
2809 Reviewed by Eric Seidel.
2811 https://bugs.webkit.org/show_bug.cgi?id=20249
2813 Add a preference to allow universal access from local URLs to mitigate
2814 some attacks. Some clients still want to allow this access, so we
2815 expose this as a preference.
2819 (WebCore::Document::initSecurityContext):
2820 * page/SecurityOrigin.cpp:
2821 (WebCore::SecurityOrigin::SecurityOrigin):
2822 * page/Settings.cpp:
2823 (WebCore::Settings::Settings):
2824 (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
2826 (WebCore::Settings::allowUniversalAccessFromFileUrls):
2828 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
2830 Reviewed by Eric Seidel.
2832 https://bugs.webkit.org/show_bug.cgi?id=24229
2833 If an image has no alpha channel there is no reason to use SourceOver.
2835 * platform/graphics/qt/ImageQt.cpp:
2836 (WebCore::Image::drawPattern):
2837 (WebCore::BitmapImage::draw):
2839 2009-02-27 Adam Treat <adam.treat@torchmobile.com>
2841 Reviewed by Eric Seidel and Simon Fraser.
2843 https://bugs.webkit.org/show_bug.cgi?id=24227
2844 Ensure that the checkForSolidColor() optimization is correctly triggered
2845 for all cases of drawPattern. Currently, the optimization was not triggered
2846 when the check had not been previously performed via a request for the
2847 image's NativeImagePtr.
2849 Implement the Qt version of the checkForSolidColor() method. Combined with
2850 the bug fix this reduces the time it takes to draw a repeating background
2851 of a 1x1 image from ~50msecs to ~0msecs on my machine.
2853 * platform/graphics/BitmapImage.cpp:
2854 (WebCore::BitmapImage::BitmapImage):
2855 * platform/graphics/BitmapImage.h:
2856 (WebCore::BitmapImage::mayFillWithSolidColor):
2857 * platform/graphics/Image.h:
2858 (WebCore::Image::mayFillWithSolidColor):
2859 * platform/graphics/cairo/ImageCairo.cpp:
2860 (WebCore::BitmapImage::BitmapImage):
2861 * platform/graphics/cg/ImageCG.cpp:
2862 (WebCore::BitmapImage::BitmapImage):
2863 (WebCore::BitmapImage::checkForSolidColor):
2864 * platform/graphics/qt/ImageQt.cpp:
2865 (WebCore::BitmapImage::checkForSolidColor):
2866 * platform/graphics/skia/ImageSkia.cpp:
2867 (WebCore::BitmapImage::checkForSolidColor):
2868 * platform/graphics/wx/ImageWx.cpp:
2869 (WebCore::BitmapImage::checkForSolidColor):
2871 2009-02-27 Dirk Schulze <krit@webkit.org>
2873 Reviewed by Zack Rusin.
2875 Added support for gradients and pattern on Fonts for Qt.
2877 [Qt] gradients and patterns for FontQt
2878 https://bugs.webkit.org/show_bug.cgi?id=24243
2880 * platform/graphics/qt/FontQt.cpp:
2881 (WebCore::Font::drawComplexText):
2883 2009-02-27 Jian Li <jianli@chromium.org>
2885 Reviewed by Alexey Proskuryakov.
2887 WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
2888 https://bugs.webkit.org/show_bug.cgi?id=24113
2890 * workers/WorkerMessagingProxy.cpp:
2892 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
2894 Added a refresh button to storage views.
2896 https://bugs.webkit.org/show_bug.cgi?id=24040
2898 Reviewed by Timothy Hatcher.
2900 * inspector/front-end/DOMStorageItemsView.js:
2901 (WebInspector.DOMStorageItemsView):
2902 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
2903 (WebInspector.DOMStorageItemsView.prototype.update):
2904 (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
2905 * inspector/front-end/DatabaseTableView.js:
2906 (WebInspector.DatabaseTableView):
2907 (WebInspector.DatabaseTableView.prototype.get statusBarItems):
2908 (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
2909 * inspector/front-end/DatabasesPanel.js:
2910 (WebInspector.DatabasesPanel):
2911 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
2912 (WebInspector.DatabasesPanel.prototype.reset):
2913 (WebInspector.DatabasesPanel.prototype.showDatabase):
2914 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
2915 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
2916 * inspector/front-end/inspector.css:
2918 2009-02-27 Yael Aharon <yael.aharon@nokia.com>
2920 Added support for editing/deleting localStorage and sessionStorage items
2921 directly from Web Inspector.
2923 https://bugs.webkit.org/show_bug.cgi?id=23866.
2925 Reviewed by Timothy Hatcher.
2927 * WebCore.vcproj/WebCore.vcproj:
2928 * inspector/front-end/DOMStorageDataGrid.js: Added.
2929 (WebInspector.DOMStorageDataGrid):
2930 (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
2931 (WebInspector.DOMStorageDataGrid.prototype._startEditing):
2932 (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
2933 (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
2934 (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
2935 * inspector/front-end/DOMStorageItemsView.js:
2936 (WebInspector.DOMStorageItemsView):
2937 (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
2938 (WebInspector.DOMStorageItemsView.prototype.hide):
2939 (WebInspector.DOMStorageItemsView.prototype.update):
2940 (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
2941 * inspector/front-end/DatabasesPanel.js:
2942 (WebInspector.DatabasesPanel):
2943 (WebInspector.DatabasesPanel.prototype.get statusBarItems):
2944 (WebInspector.DatabasesPanel.prototype.reset):
2945 (WebInspector.DatabasesPanel.prototype.showDOMStorage):
2946 (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
2947 (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
2948 * inspector/front-end/WebKit.qrc:
2949 * inspector/front-end/inspector.css:
2950 * inspector/front-end/inspector.html:
2952 2009-02-26 Brett Wilson <brettw@chromium.org>
2954 Fix Windows transparency for the Chromium port. Implement a helper
2955 class for handling transparency on Windows. It allows semitransparent
2956 ClearType and semitransparent form controls by making new layers in the
2959 It also replaces the "ThemeHelper" which allows better
2960 scaling and transforms on Windows form controls. In addition to the
2961 functionality that the ThemeHelper did, but additionally handles the
2962 antialiasing properly so that the form controls aren't composited on a
2965 https://bugs.webkit.org/show_bug.cgi?id=24101
2967 Reviewed by Eric Seidel.
2969 * platform/graphics/chromium/FontChromiumWin.cpp:
2971 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
2972 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
2973 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
2974 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
2975 (WebCore::Font::drawGlyphs):
2976 * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
2977 * platform/graphics/chromium/ThemeHelperChromiumWin.h:
2978 * platform/graphics/chromium/TransparencyWin.cpp: Added.
2980 (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
2981 (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
2982 (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
2983 (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
2984 (WebCore::TransparencyWin::TransparencyWin):
2985 (WebCore::TransparencyWin::~TransparencyWin):
2986 (WebCore::TransparencyWin::init):
2987 (WebCore::TransparencyWin::computeLayerSize):
2988 (WebCore::TransparencyWin::setupLayer):
2989 (WebCore::TransparencyWin::setupLayerForNoLayer):
2990 (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
2991 (WebCore::TransparencyWin::setupLayerForTextComposite):
2992 (WebCore::TransparencyWin::setupLayerForWhiteLayer):
2993 (WebCore::TransparencyWin::setupTransform):
2994 (WebCore::TransparencyWin::setupTransformForKeepTransform):
2995 (WebCore::TransparencyWin::setupTransformForUntransform):
2996 (WebCore::TransparencyWin::setupTransformForScaleTransform):
2997 (WebCore::TransparencyWin::setTextCompositeColor):
2998 (WebCore::TransparencyWin::initializeNewContext):
2999 (WebCore::TransparencyWin::compositeOpaqueComposite):
3000 (WebCore::TransparencyWin::compositeTextComposite):
3001 (WebCore::TransparencyWin::makeLayerOpaque):
3002 * platform/graphics/chromium/TransparencyWin.h: Added.
3003 (WebCore::TransparencyWin::):
3004 (WebCore::TransparencyWin::context):
3005 (WebCore::TransparencyWin::platformContext):
3006 (WebCore::TransparencyWin::drawRect):
3007 * platform/graphics/skia/GraphicsContextSkia.cpp:
3008 (WebCore::GraphicsContext::endTransparencyLayer):
3009 * platform/graphics/skia/ImageSkia.cpp:
3010 (WebCore::paintSkBitmap):
3011 * rendering/RenderThemeChromiumWin.cpp:
3013 (WebCore::RenderThemeChromiumWin::paintButton):
3014 (WebCore::RenderThemeChromiumWin::paintMenuList):
3015 (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
3017 2009-02-27 Dimitri Glazkov <dglazkov@chromium.org>
3019 Reviewed by Eric Seidel.
3021 https://bugs.webkit.org/show_bug.cgi?id=24211
3022 Add ScheduledAction for V8.
3024 * bindings/v8/ScheduledAction.cpp: Added.
3025 (WebCore::ScheduledAction::ScheduledAction):
3026 (WebCore::ScheduledAction::~ScheduledAction):
3027 (WebCore::ScheduledAction::execute):
3028 * bindings/v8/ScheduledAction.h: Added.
3029 (WebCore::ScheduledAction::ScheduledAction):
3031 2009-02-27 Zack Rusin <zack@kde.org>
3033 Reviewed by Nikolas Zimmermann.
3035 Qt: be more reasonable about scrolled lines
3037 cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
3038 match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
3039 irritating. so lets scroll vertically by the Qt set number of lines * Qt default
3042 * platform/qt/WheelEventQt.cpp:
3044 2009-02-27 Xan Lopez <xan@gnome.org>
3046 Rubber-stamped by Alexey Proskuryakov.
3048 https://bugs.webkit.org/show_bug.cgi?id=24222
3049 [GTK] Remove checks for old glib versions
3051 libsoup, which is a hard dependency, needs at least glib 2.15.3,
3052 so remove all glib checks for versions older than that.
3054 * platform/gtk/ContextMenuGtk.cpp:
3055 (WebCore::ContextMenu::ContextMenu):
3056 * platform/gtk/ContextMenuItemGtk.cpp:
3057 (WebCore::ContextMenuItem::setSubMenu):
3058 * platform/gtk/PopupMenuGtk.cpp:
3059 (WebCore::PopupMenu::show):
3060 * platform/gtk/WidgetGtk.cpp:
3061 (WebCore::Widget::retainPlatformWidget):
3062 * platform/network/soup/ResourceHandleSoup.cpp:
3064 2009-02-26 Dirk Schulze <krit@webkit.org>
3066 Reviewed by Oliver Hunt.
3068 Added support for Gradients and Patterns on filled or stroked Fonts
3069 in Cairo. I also added support for globalAlpha on FontCairo.
3071 [CAIRO] SVG/Canvas fonts miss gradients/pattern support
3072 https://bugs.webkit.org/show_bug.cgi?id=18617
3074 * html/CanvasRenderingContext2D.cpp:
3075 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3076 * platform/graphics/cairo/FontCairo.cpp:
3077 (WebCore::Font::drawGlyphs):
3079 2009-02-26 Stephen White <senorblanco@chromium.org>
3081 Reviewed by Eric Seidel.
3083 https://bugs.webkit.org/show_bug.cgi?id=23957
3085 Fix for SVG gradient and pattern text for Chromium/skia.
3086 Added accessors for the fill and stroke gradients to
3087 GraphicsContext. Changed the paintSkiaText function to take a
3088 GraphicsContext, so we can check for gradients/patterns.
3089 Changed the skiaDrawText function to set the SkPaint shader
3090 correctly, and to scale up the gradient shader matrix to
3091 encompass the entire text string. Also offset each glyph
3092 separately, rather than transforming the canvas, so that the
3093 gradient/pattern stays fixed relative to the text origin.
3095 * platform/graphics/GraphicsContext.cpp:
3096 (WebCore::GraphicsContext::getFillGradient):
3097 (WebCore::GraphicsContext::getStrokeGradient):
3098 (WebCore::GraphicsContext::getFillPattern):
3099 (WebCore::GraphicsContext::getStrokePattern):
3100 * platform/graphics/GraphicsContext.h:
3101 * platform/graphics/chromium/FontChromiumWin.cpp:
3102 (WebCore::Font::drawGlyphs):
3103 * platform/graphics/chromium/UniscribeHelper.cpp:
3104 (WebCore::UniscribeHelper::draw):
3105 * platform/graphics/skia/SkiaFontWin.cpp:
3106 (WebCore::windowsCanHandleTextDrawing):
3107 (WebCore::skiaDrawText):
3108 (WebCore::paintSkiaText):
3109 * platform/graphics/skia/SkiaFontWin.h:
3111 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
3113 Reviewed by Eric Seidel.
3115 https://bugs.webkit.org/show_bug.cgi?id=24208
3116 Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
3118 * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
3119 (WebCore::ACCESSOR_GETTER):
3120 (WebCore::CALLBACK_FUNC_DECL):
3121 * bindings/v8/custom/V8DocumentCustom.cpp: Added.
3122 (WebCore::CALLBACK_FUNC_DECL):
3123 * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
3124 (WebCore::ACCESSOR_GETTER):
3125 * bindings/v8/custom/V8NodeCustom.cpp: Added.
3126 (WebCore::CALLBACK_FUNC_DECL):
3128 2009-02-26 Gustavo Noronha Silva <gns@gnome.org>
3130 Unreviewed build fix for building with GNOME Keyring enabled.
3132 * platform/network/soup/webkit-soup-auth-dialog.c:
3135 2009-02-26 Xan Lopez <xan@gnome.org>
3137 Reviewed by Holger Freyther.
3139 https://bugs.webkit.org/show_bug.cgi?id=16947
3140 [GTK] Missing HTTP Auth challenge
3142 Add HTTP authentication dialog with optional GNOME Keyring
3146 * platform/network/ResourceHandleInternal.h:
3147 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3148 * platform/network/soup/ResourceHandleSoup.cpp:
3149 (WebCore::currentToplevelCallback):
3150 (WebCore::ResourceHandle::startHttp):
3151 (WebCore::ResourceHandle::start):
3152 * platform/network/soup/webkit-soup-auth-dialog.c: Added.
3153 (webkit_soup_auth_dialog_class_init):
3154 (webkit_soup_auth_dialog_init):
3155 (webkit_soup_auth_dialog_session_feature_init):
3157 (set_password_callback):
3158 (response_callback):
3160 (find_password_callback):
3161 (session_authenticate):
3163 * platform/network/soup/webkit-soup-auth-dialog.h: Added.
3165 2009-02-25 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
3167 Reviewed by Dave Hyatt.
3169 After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
3170 svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
3171 started failing because Ojan's new code was now *correctly* calling through to
3172 SVG asking for the closest text offset in the last line box, instead of
3173 just returning the offset at the end of the last line box when clicking below a box.
3175 But! The SVG code was wrong, in that it returned the character offset of the last
3176 character when you asked for a character offset after the end of the box, instead
3177 it should return the offset *after* the last character. This patch fixes
3178 that behavior by reordering the last two clauses in svgCharacterHitsPosition.
3180 The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
3181 to document what's wrong. I've also cleaned up the code a bit so it's clearer
3182 what it is doing (which also makes more obvious what's wrong with it).
3184 * rendering/RenderSVGInlineText.cpp:
3185 (WebCore::RenderSVGInlineText::positionForCoordinates):
3186 * rendering/SVGInlineTextBox.cpp:
3187 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
3188 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
3189 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
3190 (WebCore::SVGInlineTextBox::closestCharacterToPosition):
3191 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
3193 2009-02-26 Darin Fisher <darin@chromium.org>
3195 Reviewed by Eric Seidel.
3197 Minor cleanup of ChromiumBridge:
3198 Removing unused matchesMIMEType method and s/Javascript/JavaScript/
3200 * platform/chromium/ChromiumBridge.h:
3201 * platform/chromium/MimeTypeRegistryChromium.cpp:
3202 (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
3203 (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
3204 (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
3206 2009-02-26 David Hyatt <hyatt@apple.com>
3208 Reviewed by Sam Weinig
3210 Fix text-bottom vertical alignment. It was incorrectly aligning the bottom of the descent instead of including
3211 the line-height below the descent.
3213 Added fast/inline/vertical-align-text-bottom.html
3215 * rendering/RenderBoxModelObject.cpp:
3216 (WebCore::RenderBoxModelObject::verticalPosition):
3218 2009-02-26 Dirk Schulze <krit@webkit.org>
3220 Reviewed by Eric Seidel.
3222 Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
3223 ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
3224 just to implement this three methods to support SVG Masking now.
3226 Make SVG Masking platform aware
3227 https://bugs.webkit.org/show_bug.cgi?id=19243
3231 * WebCore.vcproj/WebCore.vcproj:
3232 * WebCore.xcodeproj/project.pbxproj:
3233 * svg/graphics/SVGResourceMasker.cpp:
3234 (WebCore::SVGResourceMasker::applyMask):
3235 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
3236 * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
3237 * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
3238 * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
3239 * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
3241 2009-02-26 Yong Li <yong.li@torchmobile.com>
3243 Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
3245 Test: http/tests/misc/slow-preload-cancel.html
3247 https://bugs.webkit.org/show_bug.cgi?id=24133
3248 Clear all pending preloads in the DocLoader object when we decide to
3249 cancel its all requests.
3251 * loader/DocLoader.cpp:
3252 (WebCore::DocLoader::clearPendingPreloads):
3253 * loader/DocLoader.h:
3254 * loader/loader.cpp:
3255 (WebCore::Loader::cancelRequests):
3257 2009-02-26 Dimitri Glazkov <dglazkov@chromium.org>
3259 Reviewed by Eric Seidel.
3261 https://bugs.webkit.org/show_bug.cgi?id=24182
3262 Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
3264 * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
3265 (WebCore::CALLBACK_FUNC_DECL):
3266 * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
3268 (WebCore::CALLBACK_FUNC_DECL):
3269 * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
3271 (WebCore::CALLBACK_FUNC_DECL):
3273 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
3275 Reviewed by Darin Adler.
3277 https://bugs.webkit.org/show_bug.cgi?id=23500
3278 KURL::parse() incorrectly compares its result to original string
3280 * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
3282 2009-02-26 Ojan Vafai <ojan@chromium.org>
3284 Reviewed by Kevin McCullough.
3286 Manual test for inspector node highlighting.
3288 * manual-tests/inspector/highlight-nodes.html: Added.
3290 2009-02-16 Anantanarayanan Iyengar <ananta@chromium.org>
3292 Reviewed by Darin Fisher.
3294 https://bugs.webkit.org/show_bug.cgi?id=23973
3295 ScrollView::scrollContents can be invoked during view shutdown. In
3296 this scenario the FrameView::hostWindow method can return NULL, which
3297 indicates that the frame/page is being destroyed. This causes a crash
3298 when we try to dereference a NULL hostWindow pointer. Fix is to add a
3299 NULL check for this.
3301 * platform/ScrollView.cpp:
3302 (WebCore::ScrollView::scrollContents):
3304 2009-02-26 Rahul Kuchhal <kuchhal@chromium.org>
3306 Reviewed by Dave Hyatt.
3308 https://bugs.webkit.org/show_bug.cgi?id=24003
3309 Fix a crash caused by unsafe type conversion.
3311 Test: fast/block/positioning/absolute-in-inline-rtl-4.html
3313 * rendering/RenderBox.cpp:
3314 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
3316 2009-02-26 Ojan Vafai <ojan@chromium.org>
3318 Reviewed by Adam Roben.
3320 https://bugs.webkit.org/show_bug.cgi?id=24202
3321 Have drawNodeHighlight clip instead of clearing. This makes it work for
3322 both Safari and Chromium since Chromium draws the inspector highlighting
3323 in the same buffer as the page.
3325 * inspector/InspectorController.cpp:
3326 (WebCore::quadToPath):
3327 (WebCore::drawOutlinedQuad):
3328 (WebCore::drawOutlinedQuadWithClip):
3329 (WebCore::drawHighlightForBox):
3331 2009-02-26 David Hyatt <hyatt@apple.com>
3333 Reviewed by Dan Bernstein & Darin Adler
3335 Make sure the border/padding are properly omitted at the start of an inline that is a continuation.
3337 Added fast/inline/inline-continuation-borders.html
3339 * rendering/InlineFlowBox.cpp:
3340 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
3342 2009-02-26 Simon Fraser <simon.fraser@apple.com>
3344 Build fix, no review.
3346 Try to fix the wx build after r41218.
3348 * WebCoreSources.bkl:
3350 2009-02-26 Alexey Proskuryakov <ap@webkit.org>
3352 Reviewed by Darin Adler.
3354 https://bugs.webkit.org/show_bug.cgi?id=19527
3355 ASSERTION FAILED: containerA && containerB
3357 Test: fast/dom/Range/bug-19527.html
3360 (WebCore::Range::isPointInRange):
3361 (WebCore::Range::comparePoint):
3362 Bring the behavior in line with current Firefox, making it impossible for these methods
3363 to pass a null container to compareBoundaryPoints().
3365 2009-02-26 Jonathon Jongsma <jonathon@quotidian.org>
3367 Reviewed by Holger Freyther.
3369 https://bugs.webkit.org/show_bug.cgi?id=20358
3371 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
3372 (WebCore::SimpleFontData::smallCapsFontData): the small-caps font data
3373 should set the computed size rather than the specified size, otherwise
3374 the caps just get rendered normal size.
3376 2009-02-26 Benjamin Meyer <benjamin.meyer@torchmobile.com>
3378 Reviewed by George Staikos.
3380 https://bugs.webkit.org/show_bug.cgi?id=24062
3381 QNetworkCookieJar expects the url and not the policy url. Sending the
3382 policy url will cause QNetworkCookieJar to behave incorrectly. One
3383 example would be a cookie that does not have a path or domain.
3384 QNetworkCookieJar will use the url it is given to fill in default values.
3385 This allows setting cookies on the url of the main frame from an iFrame
3386 when the cookie should be set on the url of the iFrame.
3388 Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do
3390 * platform/qt/CookieJarQt.cpp:
3391 (WebCore::setCookies):
3393 2009-02-26 Charles Wei <charles.wei@torchmobile.com.cn>
3395 Reviewed by George Staikos.
3397 make WebKit/Qt compile with SVG disabled
3400 * platform/graphics/qt/FontPlatformDataQt.cpp:
3402 2009-02-25 Gustavo Noronha Silva <gns@gnome.org>
3404 Unreviewed build fix. Add WebCore/workers to the list of paths
3405 searched by the bindings generator perl script.
3409 2009-02-25 Sam Weinig <sam@webkit.org>
3411 Reviewed by Geoffrey Garen.
3413 Add canvas to the list of RenderObjects that can mark a page as
3416 * rendering/RenderHTMLCanvas.cpp:
3417 (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
3419 2009-02-25 Eric Carlson <eric.carlson@apple.com>
3421 Reviewed by Dave Hyatt.
3423 * rendering/RenderBox.cpp:
3424 (WebCore::RenderBox::nodeAtPoint): Remove assertion fired when child has layer
3425 as RenderMedia with controls always has a layer.
3427 2009-02-25 Dan Bernstein <mitz@apple.com>
3429 Reviewed by Simon Fraser.
3431 - fix https://bugs.webkit.org/show_bug.cgi?id=24130
3432 <rdar://problem/6618196> Paint very slow when horizontally resizing
3434 Test: fast/gradients/background-clipped.html
3436 * rendering/RenderBoxModelObject.cpp:
3437 (WebCore::RenderBoxModelObject::paintFillLayerExtended): Intersect the
3438 destination rectangle passed to drawTiledImage() with the dirty
3439 rectangle. This makes it more likely for the destination rect to be
3440 contained in a single tile rect, which results in a faster code path
3441 being taken down the road (just drawing a single tile instead of
3444 2009-02-25 Ojan Vafai <ojan@chromium.org>
3446 Reviewed by Eric Seidel.
3448 Fix test regressions from positionForCoordinates patch.
3449 https://bugs.webkit.org/show_bug.cgi?id=24148
3451 * rendering/RenderBlock.cpp:
3452 (WebCore::positionForPointWithInlineChildren):
3453 Remove ASSERT that placeholder text codepath is hitting.
3455 2009-02-25 Chris Fleizach <cfleizach@apple.com>
3457 Reviewed by Beth Dakin.
3459 Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail
3460 https://bugs.webkit.org/show_bug.cgi?id=24143
3462 When an AX object is marked dirty, do not create AX elements while going up the parent chain.
3463 Do not allow AXRenderObjects to remove their own IDs from the cache, all the cache to do that work
3464 Make sure the AXObjectWrapper's have an object before calling them
3465 In AXObjectCache, change get -> getOrCreate. Use get() to only retrieve an element if it exists
3467 Test: platform/mac-snowleopard/accessibility/table-updating.html
3470 * page/AXObjectCache.cpp:
3471 (WebCore::AXObjectCache::~AXObjectCache):
3472 (WebCore::AXObjectCache::get):
3473 (WebCore::AXObjectCache::getOrCreate):
3474 (WebCore::AXObjectCache::removeAXID):
3475 (WebCore::AXObjectCache::handleActiveDescendantChanged):
3476 (WebCore::AXObjectCache::handleAriaRoleChanged):
3477 * page/AXObjectCache.h:
3478 * page/AccessibilityImageMapLink.cpp:
3479 (WebCore::AccessibilityImageMapLink::parentObject):
3480 * page/AccessibilityListBox.cpp:
3481 (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
3482 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
3483 * page/AccessibilityListBoxOption.cpp:
3484 (WebCore::AccessibilityListBoxOption::elementRect):
3485 (WebCore::AccessibilityListBoxOption::parentObject):
3486 * page/AccessibilityObject.cpp:
3487 (WebCore::AccessibilityObject::detach):
3488 (WebCore::AccessibilityObject::parentObjectIfExists):
3489 (WebCore::replacedNodeNeedsCharacter):
3490 (WebCore::AccessibilityObject::accessibilityObjectForPosition):
3491 * page/AccessibilityObject.h:
3492 * page/AccessibilityRenderObject.cpp:
3493 (WebCore::AccessibilityRenderObject::firstChild):
3494 (WebCore::AccessibilityRenderObject::lastChild):
3495 (WebCore::AccessibilityRenderObject::previousSibling):
3496 (WebCore::AccessibilityRenderObject::nextSibling):
3497 (WebCore::AccessibilityRenderObject::parentObjectIfExists):
3498 (WebCore::AccessibilityRenderObject::parentObject):
3499 (WebCore::AccessibilityRenderObject::isAttachment):
3500 (WebCore::AccessibilityRenderObject::headingLevel):
3501 (WebCore::AccessibilityRenderObject::anchorElement):
3502 (WebCore::AccessibilityRenderObject::menuForMenuButton):
3503 (WebCore::AccessibilityRenderObject::menuButtonForMenu):
3504 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
3505 (WebCore::AccessibilityRenderObject::internalLinkElement):
3506 (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
3507 (WebCore::AccessibilityRenderObject::titleUIElement):
3508 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3509 (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
3510 (WebCore::AccessibilityRenderObject::getDocumentLinks):
3511 (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
3512 (WebCore::AccessibilityRenderObject::focusedUIElement):
3513 (WebCore::AccessibilityRenderObject::activeDescendant):
3514 (WebCore::AccessibilityRenderObject::observableObject):
3515 (WebCore::AccessibilityRenderObject::childrenChanged):
3516 (WebCore::AccessibilityRenderObject::addChildren):
3517 * page/AccessibilityRenderObject.h:
3518 (WebCore::AccessibilityRenderObject::setRenderObject):
3519 * page/AccessibilityTable.cpp:
3520 (WebCore::AccessibilityTable::addChildren):
3521 (WebCore::AccessibilityTable::headerContainer):
3522 (WebCore::AccessibilityTable::cellForColumnAndRow):
3523 * page/AccessibilityTableCell.cpp:
3524 (WebCore::AccessibilityTableCell::isTableCell):
3525 (WebCore::AccessibilityTableCell::titleUIElement):
3526 * page/AccessibilityTableColumn.cpp:
3527 (WebCore::AccessibilityTableColumn::headerObjectForSection):
3528 * page/AccessibilityTableRow.cpp:
3529 (WebCore::AccessibilityTableRow::isTableRow):
3530 * page/gtk/AccessibilityObjectWrapperAtk.cpp:
3531 * page/mac/AXObjectCacheMac.mm:
3532 (WebCore::AXObjectCache::postNotification):
3533 (WebCore::AXObjectCache::postNotificationToElement):
3534 * page/mac/AccessibilityObjectWrapper.mm:
3535 (textMarkerForVisiblePosition):
3536 (AXLinkElementForNode):
3537 (nsStringForReplacedNode):
3538 (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
3539 (-[AccessibilityObjectWrapper accessibilityActionNames]):
3540 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3541 (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
3542 (-[AccessibilityObjectWrapper accessibilityHitTest:]):
3543 (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
3544 (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
3545 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
3546 (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
3547 (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
3548 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3549 (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
3550 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
3551 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
3552 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
3554 2009-02-25 Beth Dakin <bdakin@apple.com>
3556 Reviewed by Geoff Garen.
3558 Re-working of <rdar://problem/6487249> repro crash in
3559 WebCore::CSSParser::parseFillImage copying entire contents of this
3561 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
3563 Fixes a bunch of layout test failures I caused!
3565 * css/CSSParser.cpp:
3566 (WebCore::CSSParser::parseValue):
3567 (WebCore::CSSParser::parseContent):
3568 (WebCore::CSSParser::parseFillImage):
3569 (WebCore::CSSParser::parseFontFaceSrc):
3570 (WebCore::CSSParser::parseBorderImage):
3572 2009-02-25 Dimitri Glazkov <dglazkov@chromium.org>
3574 Reviewed by Eric Seidel.
3576 https://bugs.webkit.org/show_bug.cgi?id=24174
3577 Add more V8 custom bindings.
3579 * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: Added.
3580 (WebCore::hasCSSPropertyNamePrefix):
3581 (WebCore::cssPropertyName):
3582 (WebCore::NAMED_PROPERTY_GETTER):
3583 (WebCore::NAMED_PROPERTY_SETTER):
3584 * bindings/v8/custom/V8DOMStringListCustom.cpp: Added.
3585 (WebCore::INDEXED_PROPERTY_GETTER):
3586 (WebCore::CALLBACK_FUNC_DECL):
3587 * bindings/v8/custom/V8EventCustom.cpp: Added.
3588 (WebCore::ACCESSOR_SETTER):
3589 (WebCore::ACCESSOR_GETTER):
3590 * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Added.
3591 (WebCore::NAMED_PROPERTY_DELETER):
3592 (WebCore::NAMED_PROPERTY_SETTER):
3593 (WebCore::NAMED_PROPERTY_GETTER):
3594 * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: Added.
3595 (WebCore::NAMED_PROPERTY_GETTER):
3596 * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Added.
3597 (WebCore::INDEXED_PROPERTY_GETTER):
3598 (WebCore::NAMED_PROPERTY_GETTER):
3599 * bindings/v8/custom/V8NodeListCustom.cpp: Added.
3600 (WebCore::NAMED_PROPERTY_GETTER):
3601 * bindings/v8/custom/V8StyleSheetListCustom.cpp: Added.
3602 (WebCore::NAMED_PROPERTY_GETTER):
3604 2009-02-25 Scott Violet <sky@google.com>
3606 Reviewed by Dave Hyatt.
3608 https://bugs.webkit.org/show_bug.cgi?id=24171
3609 Provides a RenderTheme method for getting the scroll bar size and
3610 changes RenderListBox to use it. RenderTheme returns a size of regular,
3611 and Mac's override to return small. Changes ScrollbarThemeChromium to
3612 use the scrollbarsize of the scrollbar when getting the size
3613 instead of passing in no-args.
3615 * platform/chromium/ScrollbarThemeChromium.cpp:
3616 (WebCore::ScrollbarThemeChromium::trackRect):
3617 (WebCore::ScrollbarThemeChromium::buttonSize):
3618 * rendering/RenderListBox.cpp:
3619 (WebCore::RenderListBox::createScrollbar):
3620 * rendering/RenderTheme.h:
3621 (WebCore::RenderTheme::scrollbarControlSizeForPart):
3622 * rendering/RenderThemeChromiumMac.h:
3623 (WebCore::RenderThemeChromiumMac::scrollbarControlSizeForPart):
3624 * rendering/RenderThemeMac.h:
3625 (WebCore::RenderThemeMac::scrollbarControlSizeForPart):
3627 2009-02-25 Beth Dakin <bdakin@apple.com>
3629 Reviewed by Darin Adler.
3631 Fix for <rdar://problem/6487249> repro crash in
3632 WebCore::CSSParser::parseFillImage copying entire contents of this
3634 -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
3636 * css/CSSParser.cpp:
3637 (WebCore::CSSParser::parseValue): Null-check m_styleSheet
3639 2009-02-25 Adam Treat <adam.treat@torchmobile.com>
3645 2009-02-25 Jan Michael Alonzo <jmalonzo@webkit.org>
3647 Gtk build fix. Not reviewed.
3649 Add files to the build per r41218.
3650 Rename WebkitPoint.h to WebKitPoint.h in DOMWindow.cpp
3653 * page/DOMWindow.cpp:
3655 2009-02-25 Zan Dobersek <zandobersek@gmail.com>
3657 Reviewed by Alexey Proskuryakov.
3659 https://bugs.webkit.org/show_bug.cgi?id=24043
3660 When faced with URLs with unsupported protocol on Gtk port,
3661 report the error through an idle function and return true, so
3662 a proper resource handle is created.
3664 * platform/network/soup/ResourceHandleSoup.cpp:
3665 (WebCore::reportUnknownProtocolError):
3666 (WebCore::ResourceHandle::start):
3668 2009-02-25 Steve Falkenburg <sfalken@apple.com>
3671 Use struct to forward declare ResourceRequest.
3673 * history/HistoryItem.h:
3674 * inspector/InspectorController.h:
3675 * loader/DocumentThreadableLoader.h:
3676 * loader/FrameLoaderClient.h:
3677 * loader/MainResourceLoader.h:
3678 * loader/SubresourceLoader.h:
3679 * loader/SubresourceLoaderClient.h:
3680 * loader/ThreadableLoader.h:
3681 * loader/WorkerThreadableLoader.h:
3682 * platform/CrossThreadCopier.h:
3683 * platform/network/ResourceHandle.h:
3684 * platform/network/ResourceHandleClient.h:
3685 * platform/network/ResourceRequestBase.h:
3686 * platform/network/cf/ResourceRequestCFNet.h:
3687 * xml/XMLHttpRequest.h:
3689 2009-02-25 Steve Falkenburg <sfalken@apple.com>
3691 Partial Windows build fix.
3693 * DerivedSources.cpp:
3694 * WebCore.vcproj/WebCore.vcproj:
3696 2009-02-25 Dirk Schulze <krit@webkit.org>
3698 Reviewed by Oliver Hunt.
3700 Ported arcTo to Qt. Qt has no native support for arcTo. This changes
3701 calculate the behavior of arcTo and draws it with lineTo and arc.
3703 [QT] implement Canvas arcTo
3704 https://bugs.webkit.org/show_bug.cgi?id=23873
3706 * platform/graphics/qt/PathQt.cpp:
3707 (WebCore::Path::addArcTo):
3709 2009-02-25 Simon Fraser <simon.fraser@apple.com>
3711 Reviewed by Dan Bernstein
3713 Remove idl files from Resources, and sort.
3715 * WebCore.xcodeproj/project.pbxproj:
3717 2009-02-25 Chris Marrin <cmarrin@apple.com>
3719 Reviewed by Simon Fraser.
3721 https://bugs.webkit.org/show_bug.cgi?id=23943
3723 Added webkitConvertPointFromNodeToPage and webkitConvertPointFromPageToNode on
3724 the window object. Also added WebKitPoint object, which is passed in and out
3727 Test: fast/dom/Window/webkitConvertPoint.html
3729 * DerivedSources.make:
3731 * WebCore.vcproj/WebCore.vcproj:
3732 * WebCore.xcodeproj/project.pbxproj:
3733 * WebCoreSources.bkl:
3734 * bindings/js/JSDOMWindowBase.cpp:
3735 (jsDOMWindowBaseWebKitPoint):
3736 (setJSDOMWindowBaseWebKitPoint):
3737 * bindings/js/JSWebKitPointConstructor.cpp: Added.
3739 (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
3740 (WebCore::constructWebKitPoint):
3741 (WebCore::JSWebKitPointConstructor::getConstructData):
3742 * bindings/js/JSWebKitPointConstructor.h: Added.
3743 (WebCore::JSWebKitPointConstructor::classInfo):
3745 (WebCore::Node::convertToPage):
3746 (WebCore::Node::convertFromPage):
3748 * page/DOMWindow.cpp:
3749 (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
3750 (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
3752 * page/DOMWindow.idl:
3753 * page/WebKitPoint.h: Added.
3754 (WebCore::WebKitPoint::create):
3755 (WebCore::WebKitPoint::x):
3756 (WebCore::WebKitPoint::y):
3757 (WebCore::WebKitPoint::setX):
3758 (WebCore::WebKitPoint::setY):
3759 (WebCore::WebKitPoint::WebKitPoint):
3760 * page/WebKitPoint.idl: Added.
3762 2009-02-25 Jian Li <jianli@chromium.org>
3764 Reviewed by Alexey Proskuryakov.
3766 Remove "#if ENABLE(WORKERS)" wrap from CrossThreadCopier files.
3767 https://bugs.webkit.org/show_bug.cgi?id=24145
3769 * platform/CrossThreadCopier.cpp:
3770 * platform/CrossThreadCopier.h:
3772 2009-02-25 David Levin <levin@chromium.org>
3774 Reviewed by Alexey Proskuryakov.
3776 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
3777 <https://bugs.webkit.org/show_bug.cgi?id=23688>
3779 No observable change in behavior, so no test.
3781 * loader/ThreadableLoader.cpp:
3782 (WebCore::ThreadableLoader::loadResourceSynchronously):
3783 * loader/ThreadableLoaderClientWrapper.h:
3784 (WebCore::ThreadableLoaderClientWrapper::clearClient):
3785 (WebCore::ThreadableLoaderClientWrapper::done):
3786 (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
3787 (WebCore::ThreadableLoaderClientWrapper::didFail):
3788 (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
3789 (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
3790 Expose whether the loader is done (based on what callbacks were done).
3792 * loader/WorkerThreadableLoader.cpp:
3793 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
3794 (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
3795 Each loader is given its own mode so that only its callbacks get through the run loop.
3797 The xhr spec says that the readystatechange events are synchronous, so in the case of a
3798 nested sync xhr no readystatechange events should be fired for the outer xhr.
3800 (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
3802 * loader/WorkerThreadableLoader.h:
3803 (WebCore::WorkerThreadableLoader::create):
3804 (WebCore::WorkerThreadableLoader::done):
3806 * workers/WorkerRunLoop.cpp:
3807 (WebCore::WorkerRunLoop::WorkerRunLoop):
3808 * workers/WorkerRunLoop.h:
3809 (WebCore::WorkerRunLoop::createUniqueId):
3810 Simple method to create a uniqueId on demand with respect to the run loop.
3812 * workers/WorkerThread.h:
3814 2009-02-25 David Levin <levin@chromium.org>
3816 Reviewed by Alexey Proskuryakov.
3818 Bug 24089: ThreadableLoader::loadResourceSynchronously should do callbacks like the async code.
3819 <https://bugs.webkit.org/show_bug.cgi?id=24089>
3821 Make threadable loader callbacks to happen during the sync load call.
3823 Changes the behavior of sync xhr for insecure redirects in two ways:
3824 + Sends an error event instead of an abort event (which is the same as async xhr's behavior).
3825 + Throws a network exception which is what other browsers do and what the spec
3826 says to do (http://www.w3.org/TR/XMLHttpRequest/).
3828 * loader/DocumentThreadableLoader.cpp:
3829 (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
3830 * loader/DocumentThreadableLoader.h:
3831 * loader/ThreadableLoader.cpp:
3832 (WebCore::ThreadableLoader::loadResourceSynchronously):
3833 * loader/ThreadableLoader.h:
3834 * xml/XMLHttpRequest.cpp:
3835 (WebCore::XMLHttpRequest::XMLHttpRequest):
3836 (WebCore::XMLHttpRequest::loadRequestSynchronously):
3837 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
3838 (WebCore::XMLHttpRequest::didFail):
3839 (WebCore::XMLHttpRequest::didFailRedirectCheck):
3840 * xml/XMLHttpRequest.h:
3842 2009-02-24 Chris Marrin <cmarrin@apple.com>
3844 Reviewed by David Hyatt.
3846 https://bugs.webkit.org/show_bug.cgi?id=23368
3848 Added logic to correctly hit test accelerated layers.
3850 Tests: animations/animation-hit-test-transform.html
3851 animations/animation-hit-test.html
3852 transitions/transition-hit-test-transform.html
3853 transitions/transition-hit-test.html
3855 * page/animation/KeyframeAnimation.cpp:
3856 (WebCore::KeyframeAnimation::animate):
3857 * rendering/RenderLayer.cpp:
3858 (WebCore::RenderLayer::hitTestLayer):
3859 (WebCore::RenderLayer::updateClipRects):
3860 * rendering/RenderLayerBacking.cpp:
3861 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3863 2009-02-25 Alexey Proskuryakov <ap@webkit.org>
3865 Reviewed by Darin Adler.
3867 https://bugs.webkit.org/show_bug.cgi?id=24067
3868 REGRESSION: Crash in WebCore::Document::initSecurityContext
3870 The crash started to happen when we removed a check for frame->document() being null.
3871 However, the original document shouldn't be null here, because it is needed to alias
3872 security origins. So, this patch fixes the crash by correcting security origin behavior.
3874 Test: http/tests/security/aboutBlank/window-open-self-about-blank.html
3875 This tests for not crashing, and for inheriting the domain from the document being replaced.
3876 Preserving the aliasing cannot be tested for automatically, because we'd need a non-trivial
3877 domain to remove a prefix from.
3879 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Create a new document before
3880 clearing the frame, so that Document::initSecurityContext() could access the old one.
3882 2009-02-25 Jay Campan <jcampan@google.com>
3884 Reviewed by Darin Fisher.
3886 https://bugs.webkit.org/show_bug.cgi?id=24066
3888 Items in drop-downs were not painted correctly. Makes sure the
3889 PopupListBox invalidates in the coordinates of the window as this is
3890 FramelessScrollView::invalidateRect paints to.
3892 * platform/chromium/PopupMenuChromium.cpp:
3893 (WebCore::PopupListBox::invalidateRow):
3895 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3897 Reviewed by Anders Carlsson
3899 https://bugs.webkit.org/show_bug.cgi?id=15081
3901 Make display:none work for applet, emebed and object elements
3902 by calling rendererIsNeeded() on superclasses.
3904 Tests: fast/replaced/applet-display-none.html
3905 fast/replaced/embed-display-none.html
3906 fast/replaced/object-display-none.html
3908 * html/HTMLAppletElement.cpp:
3909 (WebCore::HTMLAppletElement::rendererIsNeeded):
3910 * html/HTMLElement.cpp:
3911 (WebCore::HTMLElement::rendererIsNeeded):
3912 * html/HTMLEmbedElement.cpp:
3913 (WebCore::HTMLEmbedElement::rendererIsNeeded):
3914 * html/HTMLObjectElement.cpp:
3915 (WebCore::HTMLObjectElement::rendererIsNeeded):
3917 2009-02-24 Simon Fraser <simon.fraser@apple.com>
3919 Reviewed by Dave Hyatt
3921 https://bugs.webkit.org/show_bug.cgi?id=24137
3923 Fix localToAbsolute() and absoluteToLocal() to map points through 3d transforms,
3924 taking perspective and transform-style: preserve-3d into account.
3926 In order to support transform-style: preserve-3d, which keeps elements in a
3927 3d space, we have to carry along an accumulated matrix in TransformState.
3928 We also need to apply the perspective from the parent, if any, with the
3935 * WebCore.vcproj/WebCore.vcproj:
3936 * WebCore.xcodeproj/project.pbxproj:
3937 * WebCoreSources.bkl:
3938 * css/CSSComputedStyleDeclaration.cpp:
3939 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3940 * platform/graphics/transforms/TransformationMatrix.cpp:
3941 (WebCore::TransformationMatrix::translate):
3942 (WebCore::TransformationMatrix::translate3d):
3943 (WebCore::TransformationMatrix::translateRight3d):
3944 * platform/graphics/transforms/TransformationMatrix.h:
3945 * rendering/RenderBox.cpp:
3946 (WebCore::RenderBox::mapLocalToAbsolutePoint):
3947 (WebCore::RenderBox::mapAbsoluteToLocalPoint):
3948 * rendering/RenderBox.h:
3949 * rendering/RenderLayer.cpp:
3950 (WebCore::RenderLayer::updateTransform):
3951 (WebCore::RenderLayer::perspectiveTransform):
3952 (WebCore::RenderLayer::perspectiveOrigin):
3953 * rendering/RenderLayer.h:
3954 * rendering/RenderLayerBacking.cpp:
3955 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3956 * rendering/RenderLayerCompositor.cpp:
3957 (WebCore::requiresCompositingLayerForTransform):
3958 (WebCore::RenderLayerCompositor::layerHas3DContent):
3959 * rendering/RenderObject.cpp:
3960 (WebCore::RenderObject::localToAbsolute):
3961 (WebCore::RenderObject::absoluteToLocal):
3962 (WebCore::RenderObject::mapLocalToAbsolutePoint):
3963 (WebCore::RenderObject::mapAbsoluteToLocalPoint):
3964 * rendering/RenderObject.h:
3965 * rendering/RenderTableCell.cpp:
3966 (WebCore::RenderTableCell::mapLocalToAbsolutePoint):
3967 (WebCore::RenderTableCell::mapAbsoluteToLocalPoint):
3968 * rendering/RenderTableCell.h:
3969 * rendering/RenderView.cpp:
3970 (WebCore::RenderView::mapLocalToAbsolutePoint):
3971 (WebCore::RenderView::mapAbsoluteToLocalPoint):
3972 * rendering/RenderView.h:
3973 * rendering/TransformState.cpp: Added.
3974 (WebCore::TransformState::move):
3975 (WebCore::TransformState::applyTransform):
3976 (WebCore::TransformState::flatten):
3977 * rendering/TransformState.h: Added.
3978 (WebCore::TransformState::):
3979 (WebCore::TransformState::TransformState):
3980 (WebCore::TransformState::move):
3981 * rendering/style/RenderStyle.h:
3982 (WebCore::InheritedFlags::hasPerspective):
3984 2009-02-24 Sam Weinig <sam@webkit.org>
3986 Reviewed by David Hyatt.
3988 Fix for https://bugs.webkit.org/show_bug.cgi?id=23990
3989 Regression (r40837): JavaScript image popup doesn't work
3991 Make the getClientRects and getBoundingClientRect methods return rects
3992 relative to the viewport.
3994 Test: fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html
3997 (WebCore::Element::getClientRects):
3998 (WebCore::Element::getBoundingClientRect):
4000 2009-02-24 Ojan Vafai <ojan@chromium.org>
4002 Reviewed by Eric Seidel.
4004 SVG pages don't have a body or an html element!
4005 Don't return early if there is no body.
4007 * editing/VisiblePosition.cpp:
4008 (WebCore::VisiblePosition::canonicalPosition):
4010 2009-02-23 David Hyatt <hyatt@apple.com>
4012 Reviewed by Eric Seidel
4014 https://bugs.webkit.org/show_bug.cgi?id=23740, painting order wrong for normal flow elements with overflow: hidden
4016 This patch reworks the painting of overflow. There is now the concept of a "self-painting layer." All
4017 layers are considered to be self-painting except for overflow layers that are normal flow (and that don't have
4018 reflections or masks).
4020 If an overflow layer is not self-painting, then it ends up painted by its parent just like any other normal flow object.
4021 The only difference is that the clip has to be pushed and popped when painting the object's children.
4023 The lightweight clipping scheme used for controls has been extended to cover overflow now in this simplified case. With
4024 the code consolidated into reusable push/pop functions, all of the renderers that use overflow have been patched to
4025 use the new functions.
4027 Hit testing has also been patched to check the overflow clip rect first before recurring into children.
4029 Scrollbar paint has been moved into RenderBlock for now, since none of the table objects support scrollbars
4030 yet, and scrollbar hit testing was already there anyway. Now the two code paths are more symmetrical.
4032 Masks are now treated like normal flow layers (just like reflections).
4034 A couple of test cases have been added to fast/overflow to test the stacking order.
4036 * rendering/InlineFlowBox.cpp:
4037 (WebCore::InlineFlowBox::nodeAtPoint):
4038 (WebCore::InlineFlowBox::paint):
4039 * rendering/RenderBlock.cpp:
4040 (WebCore::RenderBlock::repaintOverhangingFloats):
4041 (WebCore::RenderBlock::paint):
4042 (WebCore::RenderBlock::paintChildren):
4043 (WebCore::RenderBlock::paintObject):
4044 (WebCore::RenderBlock::paintFloats):
4045 (WebCore::RenderBlock::insertFloatingObject):
4046 (WebCore::RenderBlock::floatRect):
4047 (WebCore::RenderBlock::lowestPosition):
4048 (WebCore::RenderBlock::rightmostPosition):
4049 (WebCore::RenderBlock::leftmostPosition):
4050 (WebCore::RenderBlock::addOverhangingFloats):
4051 (WebCore::RenderBlock::nodeAtPoint):
4052 (WebCore::RenderBlock::hitTestContents):
4053 * rendering/RenderBox.cpp:
4054 (WebCore::RenderBox::nodeAtPoint):
4055 (WebCore::RenderBox::pushContentsClip):
4056 (WebCore::RenderBox::popContentsClip):
4057 * rendering/RenderBox.h:
4058 (WebCore::RenderBox::paintObject):
4059 * rendering/RenderBoxModelObject.cpp:
4060 (WebCore::RenderBoxModelObject::hasSelfPaintingLayer):
4061 * rendering/RenderBoxModelObject.h:
4062 * rendering/RenderLayer.cpp:
4063 (WebCore::RenderLayer::paintLayer):
4064 (WebCore::RenderLayer::hitTestLayer):
4065 (WebCore::RenderLayer::shouldBeNormalFlowOnly):
4066 (WebCore::RenderLayer::isSelfPaintingLayer):
4067 * rendering/RenderLayer.h:
4068 * rendering/RenderTable.cpp:
4069 (WebCore::RenderTable::paint):
4070 (WebCore::RenderTable::paintObject):
4071 (WebCore::RenderTable::nodeAtPoint):
4072 * rendering/RenderTable.h:
4073 * rendering/RenderTableCell.cpp:
4074 (WebCore::RenderTableCell::paint):
4075 * rendering/RenderTableRow.cpp:
4076 (WebCore::RenderTableRow::nodeAtPoint):
4077 (WebCore::RenderTableRow::paint):
4078 * rendering/RenderTableRow.h:
4079 * rendering/RenderTableSection.cpp:
4080 (WebCore::RenderTableSection::paint):
4081 (WebCore::RenderTableSection::paintObject):
4082 (WebCore::RenderTableSection::nodeAtPoint):
4083 * rendering/RenderTableSection.h:
4084 * rendering/RenderTreeAsText.cpp:
4086 (WebCore::writeLayers):
4088 2009-02-24 David Levin <levin@chromium.org>
4090 Reviewed by NOBODY (build fix).
4092 Attempted build fix for wx-mac.
4094 * WebCoreSources.bkl:
4096 2009-02-24 David Levin <levin@chromium.org>
4098 Reviewed by NOBODY (build fix).
4100 Attempted build fixes for qt-linux and wx-mac.
4105 2009-02-24 Ojan Vafai <ojan@dhcp-172-31-134-214.sfo.corp.google.com>
4107 Reviewed by Sam Weinig.
4109 Fix null pointer error. If the node is the Document, then ownerDocument()
4110 returns null, document() does not.
4112 * editing/VisiblePosition.cpp:
4113 (WebCore::VisiblePosition::canonicalPosition):
4115 2009-02-24 Jian Li <jianli@chromium.org>
4117 Reviewed by NOBODY (attempted build fixes).
4119 Fix build break for Windows and Linux.
4122 * WebCore.vcproj/WebCore.vcproj:
4124 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
4126 Reviewed by Eric Seidel.
4128 https://bugs.webkit.org/show_bug.cgi?id=24131
4129 Fix-up COM/RefCounted dichotomy in Chromium port.
4131 * page/chromium/AccessibilityObjectWrapper.h:
4132 (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Added
4133 explicit setting of recount.
4135 2009-02-24 Dimitri Glazkov <dglazkov@chromium.org>
4137 Reviewed by Eric Seidel.
4139 https://bugs.webkit.org/show_bug.cgi?id=24141
4140 Add clarity to V8 interceptor helper function.
4142 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
4143 (WebCore::NAMED_PROPERTY_GETTER): Renamed to notHandledByInterceptor.
4144 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
4145 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
4146 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
4148 2009-02-24 Simon Fraser <simon.fraser@apple.com>
4150 Reviewed by Eric Seidel
4152 Minor numeric cleanup: convert float literals to doubles.
4154 * platform/graphics/transforms/RotateTransformOperation.cpp:
4155 (WebCore::RotateTransformOperation::blend):
4157 2009-02-24 Mark Mentovai <mark@chromium.org>
4159 Reviewed by Eric Seidel.
4161 https://bugs.webkit.org/show_bug.cgi?id=24139
4162 Add missing include.
4164 * bindings/v8/ScriptInstance.h:
4166 2009-02-24 Jian Li <jianli@chromium.org>
4168 Reviewed by Alexey Proskuryakov.
4170 Move worker related files from dom directory to worker directory under WebCore.
4171 https://bugs.webkit.org/show_bug.cgi?id=24123
4173 * DerivedSources.make:
4177 * WebCore.vcproj/MigrateIDLAndScripts:
4178 * WebCore.vcproj/WebCore.vcproj:
4179 * WebCore.xcodeproj/project.pbxproj:
4180 * platform/CrossThreadCopier.cpp: Renamed from WebCore/dom/CrossThreadCopier.cpp.
4181 * platform/CrossThreadCopier.h: Renamed from WebCore/dom/CrossThreadCopier.h.
4182 * workers/GenericWorkerTask.h: Renamed from WebCore/dom/GenericWorkerTask.h.
4183 * workers/Worker.cpp: Renamed from WebCore/dom/Worker.cpp.
4184 * workers/Worker.h: Renamed from WebCore/dom/Worker.h.
4185 * workers/Worker.idl: Renamed from WebCore/dom/Worker.idl.
4186 * workers/WorkerContext.cpp: Renamed from WebCore/dom/WorkerContext.cpp.
4187 * workers/WorkerContext.h: Renamed from WebCore/dom/WorkerContext.h.
4188 * workers/WorkerContext.idl: Renamed from WebCore/dom/WorkerContext.idl.
4189 * workers/WorkerContextProxy.h: Renamed from WebCore/dom/WorkerContextProxy.h.
4190 * workers/WorkerLocation.cpp: Renamed from WebCore/dom/WorkerLocation.cpp.
4191 * workers/WorkerLocation.h: Renamed from WebCore/dom/WorkerLocation.h.
4192 * workers/WorkerLocation.idl: Renamed from WebCore/dom/WorkerLocation.idl.
4193 * workers/WorkerMessagingProxy.cpp: Renamed from WebCore/dom/WorkerMessagingProxy.cpp.
4194 * workers/WorkerMessagingProxy.h: Renamed from WebCore/dom/WorkerMessagingProxy.h.
4195 * workers/WorkerObjectProxy.h: Renamed from WebCore/dom/WorkerObjectProxy.h.
4196 * workers/WorkerRunLoop.cpp: Renamed from WebCore/dom/WorkerRunLoop.cpp.
4197 * workers/WorkerRunLoop.h: Renamed from WebCore/dom/WorkerRunLoop.h.
4198 * workers/WorkerThread.cpp: Renamed from WebCore/dom/WorkerThread.cpp.
4199 * workers/WorkerThread.h: Renamed from WebCore/dom/WorkerThread.h.
4201 2009-02-05 Ojan Vafai <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
4203 Reviewed by Dave Hyatt.
4205 Make cursor positions match IE6/IE7/FF3 when clicking in margins/padding
4206 around divs inside editable regions.
4207 https://bugs.webkit.org/show_bug.cgi?id=23605
4209 Fix clicks outside editable regions from focusing the editable region.
4210 https://bugs.webkit.org/show_bug.cgi?id=23607
4212 Removed editing/selection/contenteditable-click-outside.html as it's
4213 not as useful as our new tests.
4215 Clean up RenderBlock::positionForCoordinates to remove dead code,
4216 duplicate code, and generally make it more readable.
4218 Tests: editing/selection/click-in-margins-inside-editable-div.html
4219 editing/selection/click-in-padding-with-multiple-line-boxes.html
4220 editing/selection/click-outside-editable-div.html
4222 * editing/VisiblePosition.cpp:
4223 (WebCore::VisiblePosition::canonicalPosition):
4224 * rendering/RenderBlock.cpp:
4225 (WebCore::positionForPointRespectingEditingBoundaries):
4226 (WebCore::positionForPointWithInlineChildren):
4227 (WebCore::RenderBlock::positionForCoordinates):
4228 (WebCore::RenderBlock::updateFirstLetter):
4230 2009-02-24 Sam Weinig <sam@webkit.org>
4232 Reviewed by Geoffrey Garen.
4234 Related to <rdar://problem/6590295>
4235 Allow disabling javascript: urls.
4238 * html/HTMLAnchorElement.cpp:
4239 (WebCore::HTMLAnchorElement::parseMappedAttribute):
4240 * loader/FrameLoader.cpp:
4241 (WebCore::FrameLoader::executeIfJavaScriptURL):
4243 (WebCore::Page::Page):
4244 (WebCore::Page::setJavaScriptURLsAreAllowed):
4245 (WebCore::Page::javaScriptURLsAreAllowed):
4248 2009-02-24 Simon Fraser <simon.fraser@apple.com>
4250 Fix build when ACCELERATED_COMPOSITING is turned on
4251 (overflowList() -> normalFlowList()).
4253 * rendering/RenderLayerBacking.cpp:
4254 (WebCore::RenderLayerBacking::hasNonCompositingContent):
4255 (WebCore::RenderLayerBacking::paintIntoLayer):
4256 * rendering/RenderLayerCompositor.cpp:
4257 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
4258 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
4259 (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
4260 (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
4261 (WebCore::RenderLayerCompositor::layerHas3DContent):
4263 2009-02-24 Simon Fraser <simon.fraser@apple.com>
4265 Reviewed by Darin Adler
4267 https://bugs.webkit.org/show_bug.cgi?id=24135