1 2008-09-01 Dean Jackson <dino@apple.com>
7 * bindings/js/JSDOMWindowBase.cpp:
8 (WebCore::JSDOMWindowBase::getValueProperty):
9 (WebCore::JSDOMWindowBase::put):
11 2008-09-01 Geoffrey Garen <ggaren@apple.com>
13 Reviewed by Darin Adler.
15 First cut at inline caching for access to vanilla JavaScript properties.
17 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
18 to WebCore classes, and PutPropertySlot& arguments to put functions.
20 (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
21 inline caching for global properties, so global assignment can be optimized.
23 * ForwardingHeaders/kjs/StructureID.h: Added.
24 * bindings/js/JSDOMBinding.h:
25 (WebCore::DOMObject::DOMObject):
26 * bindings/js/JSDOMWindowBase.cpp:
27 (WebCore::JSDOMWindowBase::put):
28 * bindings/js/JSDOMWindowBase.h:
29 * bindings/js/JSDOMWindowCustom.h:
30 (WebCore::JSDOMWindow::customPut):
31 * bindings/js/JSDOMWindowShell.cpp:
32 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
33 (WebCore::JSDOMWindowShell::put):
34 * bindings/js/JSDOMWindowShell.h:
35 * bindings/js/JSEventTargetBase.h:
36 (WebCore::JSEventTargetBase::put):
37 * bindings/js/JSEventTargetNode.h:
38 (WebCore::JSEventTargetNode::put):
39 * bindings/js/JSHTMLAppletElementCustom.cpp:
40 (WebCore::JSHTMLAppletElement::customPut):
41 * bindings/js/JSHTMLEmbedElementCustom.cpp:
42 (WebCore::JSHTMLEmbedElement::customPut):
43 * bindings/js/JSHTMLInputElementBase.cpp:
44 (WebCore::JSHTMLInputElementBase::put):
45 * bindings/js/JSHTMLInputElementBase.h:
46 * bindings/js/JSHTMLObjectElementCustom.cpp:
47 (WebCore::JSHTMLObjectElement::customPut):
48 * bindings/js/JSHistoryCustom.cpp:
49 (WebCore::JSHistory::customPut):
50 * bindings/js/JSInspectedObjectWrapper.cpp:
51 (WebCore::JSInspectedObjectWrapper::wrap):
52 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
53 * bindings/js/JSInspectedObjectWrapper.h:
54 * bindings/js/JSInspectorCallbackWrapper.cpp:
55 (WebCore::JSInspectorCallbackWrapper::wrap):
56 (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
57 * bindings/js/JSInspectorCallbackWrapper.h:
58 * bindings/js/JSLocationCustom.cpp:
59 (WebCore::JSLocation::customPut):
60 * bindings/js/JSPluginElementFunctions.cpp:
61 (WebCore::runtimeObjectCustomPut):
62 * bindings/js/JSPluginElementFunctions.h:
63 * bindings/js/JSQuarantinedObjectWrapper.cpp:
64 (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
65 (WebCore::JSQuarantinedObjectWrapper::put):
66 * bindings/js/JSQuarantinedObjectWrapper.h:
67 * bindings/js/JSStorageCustom.cpp:
68 (WebCore::JSStorage::customPut):
69 * bindings/objc/WebScriptObject.mm:
70 (-[WebScriptObject setValue:forKey:]):
71 * bindings/scripts/CodeGeneratorJS.pm:
72 * bridge/NP_jsobject.cpp:
74 * bridge/jni/jni_jsobject.mm:
75 (JavaJSObject::setMember):
76 * bridge/objc/objc_class.mm:
77 (KJS::Bindings::ObjcClass::fallbackObject):
78 * bridge/objc/objc_runtime.h:
79 * bridge/objc/objc_runtime.mm:
80 (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
81 (ObjcFallbackObjectImp::put):
83 (KJS::Bindings::Instance::createRuntimeObject):
84 * bridge/runtime_array.cpp:
86 * bridge/runtime_array.h:
87 * bridge/runtime_object.cpp:
88 (RuntimeObjectImp::RuntimeObjectImp):
89 (RuntimeObjectImp::put):
90 * bridge/runtime_object.h:
92 2008-09-01 Dirk Schulze <vbs85@gmx.de>
94 Reviewed by Eric Seidel.
96 Fixed border-radius for Cairo.
98 * platform/graphics/cairo/GraphicsContextCairo.cpp:
99 (WebCore::GraphicsContext::strokeArc):
101 2008-09-01 Dirk Schulze <vbs85@gmx.de>
103 Reviewed by Eric Seidel.
105 Added canvas's globalAlpha to cairo.
107 * platform/graphics/GraphicsContext.h:
108 * platform/graphics/cairo/GraphicsContextCairo.cpp:
109 (WebCore::GraphicsContext::fillPath):
110 (WebCore::GraphicsContext::strokePath):
111 (WebCore::GraphicsContext::setAlpha):
112 (WebCore::GraphicsContext::getAlpha):
113 * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
114 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
115 * platform/graphics/cairo/ImageCairo.cpp:
116 (WebCore::BitmapImage::draw):
118 2008-08-31 Simon Hausmann <hausmann@webkit.org>
120 Unreviewed Qt build fix.
122 * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
125 2008-08-30 Darin Adler <darin@apple.com>
129 - adopt some new JavaScriptCore functions where appropriate
131 * bindings/js/JSDOMWindowBase.cpp:
132 (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
133 (WebCore::windowProtoFuncBToA): Ditto.
134 * bindings/js/JSEventListener.cpp:
135 (WebCore::JSLazyEventListener::eventParameterName): Adopted
137 * bindings/js/JSSVGLazyEventListener.cpp:
138 (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
140 2008-08-29 Brady Eidson <beidson@apple.com>
142 Reviewed by Anders' rubberstamp
144 Style cleanup to match MediaTokenizer::writeRawData()
146 * loader/PluginDocument.cpp:
147 (WebCore::PluginTokenizer::writeRawData):
149 2008-08-29 Brady Eidson <beidson@apple.com>
153 Fix regression I introducted in 35946
154 Already covered by media/video-click-dlbclick-standalone.html
156 * loader/MediaDocument.cpp:
157 (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
158 (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
159 an ASSERT signifying that this method should only be called once, to more closely follow the
162 2008-08-29 Beth Dakin <bdakin@apple.com>
164 Reviewed by Sam Weinig.
166 Fix for <rdar://problem/6181588>
168 This patch makes hit testing take into account the new concept of a
169 disconnected frame, in which some of the content may not be
170 visible. The current hit testing mechanism starts at a target frame
171 and drills down for a HitTestResult. In some cases, drilling down
172 will find a non-visible result. When this happens, we need to try
173 again, starting at a higher level -- namely, starting at the main
176 * editing/Editor.cpp:
177 (WebCore::Editor::insideVisibleArea): New function that tests if a
178 point is inside the visible area for a disconnected frame.
180 * page/EventHandler.cpp:
181 (WebCore::EventHandler::hitTestResultAtPoint):
183 2008-08-29 Adele Peterson <adele@apple.com>
185 Reviewed by Adam Roben.
187 Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
191 * WebCore.vcproj/WebCore.vcproj:
192 * WebCore.xcodeproj/project.pbxproj:
193 * WebCoreSources.bkl:
194 * html/HTMLTextFieldInnerElement.cpp: Removed.
195 * html/HTMLTextFieldInnerElement.h: Removed.
196 * rendering/RenderTextControl.cpp:
197 (WebCore::RenderTextControl::createSubtreeIfNeeded):
198 * rendering/RenderTextControl.h:
199 * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
200 (WebCore::TextControlInnerElement::TextControlInnerElement):
201 (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
202 (WebCore::TextControlInnerTextElement::defaultEventHandler):
203 (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
204 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
205 (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
206 (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
207 * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
209 2008-08-29 Eric Seidel <eric@webkit.org>
211 Rubber-stamped by aroben.
213 Add GraphicsContext.h include to GraphcisContextPrivate.h
215 GraphicsContextPrivate uses StrokeStyle which is defined
216 in GraphicsContext.h but it doesn't include that header.
217 CoreGraphics build doesn't fail here due to the order
218 it happens to include files.
220 * platform/graphics/GraphicsContextPrivate.h:
222 2008-08-29 Eric Seidel <eric@webkit.org>
226 Fix GeneratedImage to respect Image's refcounting
227 Fixing potential crashers (future if not current)
228 https://bugs.webkit.org/show_bug.cgi?id=20567
230 I don't know if it's possible to make the current code
231 crash, thus I've not made a test.
233 * css/CSSGradientValue.cpp:
234 (WebCore::CSSGradientValue::image):
235 * css/CSSImageGeneratorValue.cpp:
236 (WebCore::CSSImageGeneratorValue::removeClient):
237 (WebCore::CSSImageGeneratorValue::getImage):
238 * css/CSSImageGeneratorValue.h:
239 * platform/graphics/GeneratedImage.h:
240 (WebCore::GeneratedImage::GeneratedImage):
241 * rendering/style/RenderStyle.cpp:
242 (WebCore::RenderStyle::setContent):
243 * rendering/style/RenderStyle.h:
245 2008-08-29 Eric Carlson <eric.carlson@apple.com>
249 Fix for <rdar://problem/6093767>
250 https://bugs.webkit.org/show_bug.cgi?id=20526
252 Don't allow video to render until unsupported track types have been disabled.
254 * platform/graphics/win/QTMovieWin.cpp:
255 (QTMovieWinPrivate::task):
256 (QTMovieWinPrivate::drawingComplete):
257 (QTMovieWinPrivate::clearGWorld):
259 2008-08-29 Eric Carlson <eric.carlson@apple.com>
263 Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
264 <rdar://problem/6169301>
266 Return the size of the movie data instead of 1000.
268 Test: media/progress-event-total.html
270 * platform/graphics/win/QTMovieWin.cpp:
271 (QTMovieWin::dataSize):
273 2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
275 Reviewed by Eric Seidel.
277 [janitor/qt] Start replacing port specific getters with the generic native getter
278 To get the native presentation of an image we currently have platform
279 specific #ifdef's and a generic getter using NativeImagePtr. This patch
280 extends this to the ImageBuffer and updates the Qt platform to get rid
281 of the special #ifdefs.
283 https://bugs.webkit.org/attachment.cgi?id=22861
285 * platform/graphics/BitmapImage.h:
286 * platform/graphics/Image.h:
287 * platform/graphics/qt/ImageQt.cpp:
288 * platform/graphics/qt/StillImageQt.cpp:
289 * platform/graphics/qt/StillImageQt.h:
290 * platform/qt/ClipboardQt.cpp:
291 (WebCore::ClipboardQt::createDragImage):
292 (WebCore::ClipboardQt::declareAndWriteDragImage):
293 * platform/qt/CursorQt.cpp:
294 * platform/qt/PasteboardQt.cpp:
295 (WebCore::Pasteboard::writeImage):
297 2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
301 [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
303 * svg/graphics/qt/SVGPaintServerQt.cpp:
304 (WebCore::SVGPaintServer::renderPath):
305 * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
306 (WebCore::SVGPaintServerSolid::setup):
308 2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
312 [network/qt] Implement defering of loading ResourceHandle's
313 This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
314 implementation is simply not forwarding anything to the
315 ResourceHandleClient until we are allowed to. This might lead to a deadlock
316 in Qt as we do not empty the QNetworkReply input buffer and wait until we
317 are allowed to read. If that happens we are forced to buffer the data
318 within QNetworkReplyHandler, for now this is not done.
321 - Open http://acid3.acidtests.org
322 - Wait for the test to complete
323 - Click on the Reference Rendering link
324 - Be fast and see the results of acid3
327 * platform/network/qt/QNetworkReplyHandler.cpp:
328 (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
329 (WebCore::QNetworkReplyHandler::setLoadMode):
330 (WebCore::QNetworkReplyHandler::finish):
331 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
332 (WebCore::QNetworkReplyHandler::forwardData):
333 (WebCore::QNetworkReplyHandler::start):
334 (WebCore::QNetworkReplyHandler::resetState):
335 (WebCore::QNetworkReplyHandler::sendQueuedItems):
336 * platform/network/qt/QNetworkReplyHandler.h:
337 (WebCore::QNetworkReplyHandler::):
338 * platform/network/qt/ResourceHandleQt.cpp:
339 (WebCore::ResourceHandle::start):
340 (WebCore::ResourceHandle::loadResourceSynchronously):
341 (WebCore::ResourceHandle::setDefersLoading):
343 2008-08-29 Simon Hausmann <hausmann@webkit.org>
347 Don't crash when drawing patterns with the HTML canvas. Patterns
348 remain unimplemented but at least they don't crash anymore. This is
349 done by changing the PlatformPatternPtr to be a brush for the Qt
352 * platform/graphics/Pattern.h:
353 * platform/graphics/qt/GraphicsContextQt.cpp:
354 (WebCore::GraphicsContext::fillPath):
355 (WebCore::GraphicsContext::strokePath):
356 (WebCore::GraphicsContext::fillRect):
357 * platform/graphics/qt/PatternQt.cpp:
358 (WebCore::Pattern::createPlatformPattern):
360 2008-08-29 Simon Hausmann <hausmann@webkit.org>
362 Fix the Qt build, fontSelector() is not used by the Qt port yet
363 and we just return 0 in Font::fontSelector().
365 * platform/graphics/Font.h:
367 2008-08-28 Alp Toker <alp@nuanti.com>
369 GTK+ dist/build fix. List newly added header files.
373 2008-08-28 Simon Fraser <simon.fraser@apple.com>
375 Reviewed by Dave Hyatt
377 Various WebKitCSSTransformValue-related fixes
378 https://bugs.webkit.org/show_bug.cgi?id=20562
380 Test: css3/transform-value-types.html
382 * bindings/js/JSCSSValueCustom.cpp:
385 * css/WebKitCSSTransformValue.cpp:
386 (WebCore::WebKitCSSTransformValue::cssText):
387 * css/WebKitCSSTransformValue.h:
388 (WebCore::WebKitCSSTransformValue::):
389 * css/WebKitCSSTransformValue.idl:
391 2008-08-28 Dan Bernstein <mitz@apple.com>
393 Reviewed by Steve Falkenburg.
395 - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
397 * platform/win/SharedTimerWin.cpp:
398 (WebCore::TimerWindowWndProc):
400 2008-08-28 David Hyatt <hyatt@apple.com>
404 Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
408 * css/CSSImageGeneratorValue.cpp:
409 * css/CSSImageValue.cpp:
410 * css/CSSStyleSelector.cpp:
411 * rendering/RenderImageGeneratedContent.cpp:
412 * rendering/style/NinePieceImage.cpp: Added.
413 * rendering/style/NinePieceImage.h: Added.
414 * rendering/style/RenderStyle.cpp:
415 (WebCore::FillLayer::operator==):
416 (WebCore::FillLayer::containsImage):
417 (WebCore::StyleInheritedData::operator==):
418 (WebCore::RenderStyle::contentDataEquivalent):
419 * rendering/style/RenderStyle.h:
420 * rendering/style/StyleCachedImage.cpp: Added.
421 * rendering/style/StyleCachedImage.h: Added.
422 * rendering/style/StyleGeneratedImage.cpp: Added.
423 * rendering/style/StyleGeneratedImage.h: Added.
424 * rendering/style/StyleImage.h: Added.
426 2008-08-28 Simon Fraser <simon.fraser@apple.com>
428 Reviewed by Dave Hyatt
430 Make all the 'isFoo()' methods on CSSValue const,
431 and fix the subclasses.
433 https://bugs.webkit.org/show_bug.cgi?id=20561
435 * css/CSSTimingFunctionValue.h:
437 (WebCore::CSSValue::isFontValue):
438 (WebCore::CSSValue::isImageGeneratorValue):
439 (WebCore::CSSValue::isImageValue):
440 (WebCore::CSSValue::isImplicitInitialValue):
441 * css/CSSValueList.h:
444 2008-08-28 David Hyatt <hyatt@apple.com>
446 The great RenderStyle cleanup begins!
448 Move LengthBox and LengthSize out of RenderStyle and into Length.
452 * rendering/Length.h:
454 (WebCore::Length::Length):
455 (WebCore::Length::operator==):
456 (WebCore::Length::operator!=):
457 (WebCore::Length::value):
458 (WebCore::Length::rawValue):
459 (WebCore::Length::percent):
460 (WebCore::Length::type):
461 (WebCore::Length::quirk):
462 (WebCore::Length::setValue):
463 (WebCore::Length::setRawValue):
464 (WebCore::Length::calcValue):
465 (WebCore::Length::calcMinValue):
466 (WebCore::Length::calcFloatValue):
467 (WebCore::Length::isUndefined):
468 (WebCore::Length::isZero):
469 (WebCore::Length::isPositive):
470 (WebCore::Length::isNegative):
471 (WebCore::Length::isAuto):
472 (WebCore::Length::isRelative):
473 (WebCore::Length::isPercent):
474 (WebCore::Length::isFixed):
475 (WebCore::Length::isStatic):
476 (WebCore::Length::isIntrinsicOrAuto):
477 (WebCore::Length::blend):
478 (WebCore::LengthBox::LengthBox):
479 (WebCore::LengthBox::operator=):
480 (WebCore::LengthBox::operator==):
481 (WebCore::LengthBox::operator!=):
482 (WebCore::LengthBox::nonZero):
483 (WebCore::LengthSize::LengthSize):
484 * rendering/style/RenderStyle.h:
486 2008-08-28 David Hyatt <hyatt@apple.com>
490 https://bugs.webkit.org/show_bug.cgi?id=18091
492 font-size should be animatable using -webkit-transition.
494 * page/AnimationController.cpp:
495 (WebCore::AnimationControllerPrivate::ensurePropertyMap):
496 * rendering/style/RenderStyle.h:
497 (WebCore::RenderStyle::setFontSize):
499 2008-08-28 Brad Garcia <bgarcia@google.com>
501 Reviewed by Dan Bernstein.
503 https://bugs.webkit.org/show_bug.cgi?id=20549
504 Correctly determine when cursor is over a resizable border within
507 * rendering/RenderFrameSet.cpp:
508 (WebCore::RenderFrameSet::canResizeRow):
509 (WebCore::RenderFrameSet::canResizeColumn):
511 2008-08-28 Simon Fraser <simon.fraser@apple.com>
513 Reviewed by Eric Seidel
515 Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
516 https://bugs.webkit.org/show_bug.cgi?id=20552
518 Test: animations/animation-css-rule-types.html
522 2008-08-28 Anders Carlsson <andersca@apple.com>
524 Reviewed by Kevin and Darin.
526 <rdar://problem/6182541>
527 https://bugs.webkit.org/show_bug.cgi?id=20202
528 Missing http status line from the http headers.
530 Add a status line to the header string.
532 * plugins/PluginStream.cpp:
533 (WebCore::PluginStream::startStream):
535 2008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
537 Rubber-stamped by Darin Adler.
539 https://bugs.webkit.org/show_bug.cgi?id=17261
541 Make it possible to theme the default Url icon and enable this for
542 the Qt port. To have a minimal usage of #ifdef in the code the setting
543 of the icon was moved to a new method which comes in two flavors.
545 * loader/icon/IconDatabase.cpp:
546 (WebCore::loadDefaultIconRecord): Load or set the default icon
547 (WebCore::IconDatabase::defaultIcon):
549 2008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
551 Unreviewed compile fix
553 * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
555 2008-08-28 Adam Roben <aroben@apple.com>
557 Windows (and others?) build fix
559 * page/Chrome.cpp: Added a missing #include.
560 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
562 2008-08-27 Eric Seidel <eric@webkit.org>
564 Reviewed by Oliver Hunt.
566 Qt and Cairo support from krit (and blind stab @ wx compile support)
567 https://bugs.webkit.org/show_bug.cgi?id=20373
569 * platform/graphics/cairo/GraphicsContextCairo.cpp:
570 (WebCore::GraphicsContext::fillPath):
571 (WebCore::GraphicsContext::strokePath):
572 (WebCore::GraphicsContext::drawPath):
573 (WebCore::GraphicsContext::fillRect):
574 (WebCore::GraphicsContext::setPlatformFillColor):
575 (WebCore::GraphicsContext::setPlatformStrokeColor):
576 (WebCore::GraphicsContext::setPlatformStrokeStyle):
577 (WebCore::GraphicsContext::strokeRect):
578 (WebCore::GraphicsContext::setImageInterpolationQuality):
579 (WebCore::GraphicsContext::imageInterpolationQuality):
580 (WebCore::GraphicsContext::setPlatformFillPattern):
581 (WebCore::GraphicsContext::setPlatformStrokePattern):
582 (WebCore::GraphicsContext::setPlatformFillGradient):
583 (WebCore::GraphicsContext::setPlatformStrokeGradient):
584 * platform/graphics/qt/GraphicsContextQt.cpp:
585 (WebCore::GraphicsContext::fillPath):
586 (WebCore::GraphicsContext::strokePath):
587 (WebCore::GraphicsContext::fillRect):
588 (WebCore::GraphicsContext::strokeRect):
589 (WebCore::GraphicsContext::clipToImageBuffer):
590 (WebCore::GraphicsContext::setPlatformFillPattern):
591 (WebCore::GraphicsContext::setPlatformStrokePattern):
592 (WebCore::GraphicsContext::setPlatformFillGradient):
593 (WebCore::GraphicsContext::setPlatformStrokeGradient):
594 (WebCore::GraphicsContext::setImageInterpolationQuality):
595 (WebCore::GraphicsContext::imageInterpolationQuality):
596 * platform/graphics/wx/GraphicsContextWx.cpp:
597 (WebCore::GraphicsContext::clipToImageBuffer):
598 (WebCore::GraphicsContext::setImageInterpolationQuality):
599 (WebCore::GraphicsContext::imageInterpolationQuality):
600 (WebCore::GraphicsContext::fillPath):
601 (WebCore::GraphicsContext::strokePath):
602 (WebCore::GraphicsContext::drawPath):
603 (WebCore::GraphicsContext::fillRect):
604 (WebCore::GraphicsContext::setPlatformFillPattern):
605 (WebCore::GraphicsContext::setPlatformStrokePattern):
606 (WebCore::GraphicsContext::setPlatformFillGradient):
608 2008-08-27 Eric Seidel <eric@webkit.org>
610 Reviewed by Oliver Hunt.
612 Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
613 https://bugs.webkit.org/show_bug.cgi?id=20373
615 Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
617 Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
618 have to store large Gradient objects in the GraphicsContextState
620 Made Pattern RefCounted for the same reason.
622 Many updates to GraphicsContext to support easier drawing with
623 Patterns and Gradients.
625 * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
626 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
628 * css/CSSGradientValue.cpp:
629 (WebCore::CSSGradientValue::createGradient):
630 * css/CSSGradientValue.h:
631 * html/CanvasGradient.cpp:
632 (WebCore::CanvasGradient::CanvasGradient):
633 * html/CanvasGradient.h:
634 (WebCore::CanvasGradient::gradient):
635 (WebCore::CanvasGradient::addColorStop):
636 (WebCore::CanvasGradient::getColor):
637 * html/CanvasPattern.cpp:
638 * html/CanvasPattern.h:
639 (WebCore::CanvasPattern::pattern):
640 (WebCore::CanvasPattern::originClean):
641 * html/CanvasRenderingContext2D.cpp:
642 (WebCore::CanvasRenderingContext2D::State::State):
643 (WebCore::CanvasRenderingContext2D::setStrokeStyle):
644 (WebCore::CanvasRenderingContext2D::setFillStyle):
645 (WebCore::CanvasRenderingContext2D::fill):
646 (WebCore::CanvasRenderingContext2D::stroke):
647 (WebCore::CanvasRenderingContext2D::fillRect):
648 (WebCore::CanvasRenderingContext2D::strokeRect):
649 * html/CanvasRenderingContext2D.h:
650 * html/CanvasStyle.cpp:
651 (WebCore::CanvasStyle::applyStrokeColor):
652 (WebCore::CanvasStyle::applyFillColor):
653 * html/CanvasStyle.h:
654 * platform/graphics/GeneratedImage.h:
655 (WebCore::GeneratedImage::GeneratedImage):
656 * platform/graphics/Generator.h:
657 * platform/graphics/Gradient.h:
658 (WebCore::Gradient::create):
659 * platform/graphics/GraphicsContext.cpp:
660 (WebCore::GraphicsContext::fillRule):
661 (WebCore::GraphicsContext::setFillRule):
662 (WebCore::GraphicsContext::setStrokePattern):
663 (WebCore::GraphicsContext::setFillPattern):
664 (WebCore::GraphicsContext::setStrokeGradient):
665 (WebCore::GraphicsContext::setFillGradient):
666 * platform/graphics/GraphicsContext.h:
667 * platform/graphics/GraphicsContextPrivate.h:
669 (WebCore::GraphicsContextState::GraphicsContextState):
670 * platform/graphics/GraphicsTypes.h:
671 * platform/graphics/Path.h:
672 * platform/graphics/Pattern.h:
673 (WebCore::Pattern::create):
674 (WebCore::Pattern::tileImage):
675 * platform/graphics/cg/GraphicsContextCG.cpp:
676 (WebCore::GraphicsContext::drawRect):
677 (WebCore::GraphicsContext::drawEllipse):
678 (WebCore::GraphicsContext::drawConvexPolygon):
679 (WebCore::calculateDrawingMode):
680 (WebCore::GraphicsContext::drawPath):
681 (WebCore::fillPathWithFillRule):
682 (WebCore::GraphicsContext::fillPath):
683 (WebCore::GraphicsContext::strokePath):
684 (WebCore::GraphicsContext::fillRect):
685 (WebCore::GraphicsContext::fillRoundedRect):
686 (WebCore::GraphicsContext::setPlatformStrokePattern):
687 (WebCore::GraphicsContext::setPlatformFillPattern):
688 (WebCore::GraphicsContext::setPlatformStrokeGradient):
689 (WebCore::GraphicsContext::setPlatformFillGradient):
691 2008-08-20 Eric Seidel <eric@webkit.org>
693 Reviewed by Darin and Alexey.
695 Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
696 with timeouts paused.
697 https://bugs.webkit.org/show_bug.cgi?id=20469
699 I attempted to clean up the memory management of PausedTimeouts, I'm not
700 sure the solution I came up with is "cleaner", but it's in some ways
701 "safer", since it no longer uses raw pointers and manual new/delete.
703 This also now prevents CachedPage from needlessly creating Window
704 objects when caching pages which didn't already have one. :)
706 I also made Chrome.cpp no longer depend on the JavaScript bindings
707 (aka JSDOMWindowBase.h), since there was no real reason for it to.
709 * bindings/js/JSDOMWindowBase.cpp:
710 (WebCore::JSDOMWindowBase::pauseTimeouts):
711 (WebCore::JSDOMWindowBase::resumeTimeouts):
712 * bindings/js/JSDOMWindowBase.h:
713 * bindings/js/ScriptController.cpp:
714 (WebCore::ScriptController::pauseTimeouts):
715 (WebCore::ScriptController::resumeTimeouts):
716 * bindings/js/ScriptController.h:
717 * history/CachedPage.cpp:
718 (WebCore::CachedPage::CachedPage):
719 (WebCore::CachedPage::restore):
721 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
722 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
723 * page/JavaScriptDebugServer.cpp:
724 (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
725 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
727 2008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
729 Unreviewed compile fix
731 Add the stub for the Qt port.
734 * page/qt/AccessibilityObjectQt.cpp: Added.
735 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
737 2008-08-27 Alp Toker <alp@nuanti.com>
741 https://bugs.webkit.org/show_bug.cgi?id=20551
742 [GTK] search popup crash
744 * platform/gtk/SearchPopupMenuGtk.cpp:
745 (WebCore::SearchPopupMenu::enabled):
746 Fix a search popup crasher by disabling the history popup since we
747 don't support this feature yet in the GTK+ port.
749 2008-08-27 Alp Toker <alp@nuanti.com>
753 https://bugs.webkit.org/show_bug.cgi?id=20551
756 * platform/network/curl/ResourceHandleManager.cpp:
757 (WebCore::ResourceHandleManager::startScheduledJobs):
758 Remove the resource handle from the pending list before starting the
759 job, not afterwards. Fixes crashers in the test suite.
761 Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
762 Test: fast/encoding/char-encoding.html
764 2008-08-27 Dirk Schulze <vbs85@gmx.de>
768 Fix canvas drawImage to support composite operations.
769 Composite had no effect on canvas elements like these:
770 http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
772 [CAIRO] Canvas composite don't work on canvas-elements.
773 https://bugs.webkit.org/show_bug.cgi?id=20548
775 * html/CanvasRenderingContext2D.cpp:
776 (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
778 2008-08-27 Mario Bensi <mbensi@pleyo.com>
780 Reviewed by Eric Seidel.
782 Fix the data content of an image with a base64.
784 * platform/network/curl/ResourceHandleManager.cpp:
785 (WebCore::parseDataUrl): Remove the String and use only the data
786 Vector because the data.latin1().data() convert the data content and
787 the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
790 2008-08-27 Antti Koivisto <antti@apple.com>
792 Reviewed by Eric Seidel.
794 Crash after OK in dialog box and reloading page in secure mode
795 https://bugs.webkit.org/show_bug.cgi?id=20493
797 The new run loop spawned by a modal dialog causes a timer in the loader to run
798 synchronously inside didFinishLoading() deleting "this" object.
800 Defer all WebCore timers when a modal dialog is up. They are not
804 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
805 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
807 2008-08-27 Chris Marrin <cmarrin@apple.com>
809 Reviewed by Dave Hyatt
811 Memory leaks when animating transforms
812 https://bugs.webkit.org/show_bug.cgi?id=20532
814 * rendering/style/RenderStyle.cpp:
815 (WebCore::ScaleTransformOperation::blend):
816 (WebCore::RotateTransformOperation::blend):
817 (WebCore::SkewTransformOperation::blend):
818 (WebCore::TranslateTransformOperation::blend):
819 (WebCore::MatrixTransformOperation::blend):
820 * rendering/style/RenderStyle.h:
822 2008-08-27 Timothy Hatcher <timothy@apple.com>
824 Add support for support for -webkit-appearance: default-button on the Mac platform.
826 <rdar://problem/6173530>
828 Reviewed by Dave Hyatt.
830 * WebCore.base.exp: Export new symbols.
831 * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
832 * platform/mac/WebCoreSystemInterface.mm: Ditto.
833 * rendering/RenderButton.cpp:
834 (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
835 (WebCore::RenderButton::setStyle): Ditto.
836 * rendering/RenderButton.h: Ditto.
837 * rendering/RenderThemeMac.mm:
838 (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
839 (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
840 key if the button is default, otherwise reset the key equivalent.
841 (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
842 on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
843 the window's previous default button cell when finished.
845 2008-08-26 David Hyatt <hyatt@apple.com>
847 First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
851 Added fast/forms/zoomed-controls.html
853 * css/CSSStyleSelector.cpp:
854 (WebCore::addIntrinsicMargins):
855 * rendering/RenderSlider.cpp:
856 (WebCore::RenderSlider::calcPrefWidths):
857 * rendering/RenderThemeMac.h:
858 * rendering/RenderThemeMac.mm:
859 (WebCore::RenderThemeMac::adjustRepaintRect):
860 (WebCore::RenderThemeMac::inflateRect):
861 (WebCore::RenderThemeMac::baselinePosition):
862 (WebCore::RenderThemeMac::setControlSize):
863 (WebCore::RenderThemeMac::sizeForFont):
864 (WebCore::RenderThemeMac::sizeForSystemFont):
865 (WebCore::RenderThemeMac::setFontFromControlSize):
866 (WebCore::RenderThemeMac::paintCheckbox):
867 (WebCore::RenderThemeMac::setCheckboxCellState):
868 (WebCore::RenderThemeMac::paintRadio):
869 (WebCore::RenderThemeMac::setRadioCellState):
870 (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
871 (WebCore::RenderThemeMac::adjustButtonStyle):
872 (WebCore::RenderThemeMac::setButtonCellState):
873 (WebCore::RenderThemeMac::paintButton):
874 (WebCore::RenderThemeMac::paintMenuList):
875 (WebCore::RenderThemeMac::paintMenuListButton):
876 (WebCore::RenderThemeMac::popupInternalPaddingLeft):
877 (WebCore::RenderThemeMac::popupInternalPaddingRight):
878 (WebCore::RenderThemeMac::popupInternalPaddingTop):
879 (WebCore::RenderThemeMac::popupInternalPaddingBottom):
880 (WebCore::RenderThemeMac::setPopupButtonCellState):
881 (WebCore::RenderThemeMac::paintSliderTrack):
882 (WebCore::RenderThemeMac::paintSliderThumb):
883 (WebCore::RenderThemeMac::adjustSliderThumbSize):
884 (WebCore::RenderThemeMac::paintSearchField):
885 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
886 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
887 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
889 2008-08-27 Brady Eidson <beidson@apple.com>
893 <rdar://problem/6134133> - Crash when loading large movie as a standalone document
895 We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
896 to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
897 away the virtual address space and a crash.
899 * loader/EmptyClients.h:
900 (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
901 * loader/FrameLoaderClient.h: Added client method to get platform specific error for
902 "plugin will handle load"
904 * loader/MediaDocument.cpp:
905 (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
906 and cancel the WebCore-managed load
907 (WebCore::MediaTokenizer::writeRawData):
908 (WebCore::MediaTokenizer::finish):
910 2008-08-26 Simon Fraser <simon.fraser@apple.com>
912 Reviewed by Eric Seidel
914 Linear timing functions should have control points 0, 0, 1, 1.
915 https://bugs.webkit.org/show_bug.cgi?id=20535
917 * css/CSSStyleSelector.cpp:
918 (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
919 * rendering/style/RenderStyle.h:
921 2008-08-27 Adam Roben <aroben@apple.com>
925 * WebCore.vcproj/WebCore.vcproj: Fix file extension.
927 2008-08-26 chris fleizach <cfleizach@apple.com>
929 Reviewed by Beth Dakin.
931 <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
933 Added platform-specific accessibilityIgnoreAttachment, which allows the platform
934 to determine if an attachment is ignored through accessibility. Added equivalent
935 methods in Gtk, Win and Mac
937 Test: accessibility/plugin.html
940 * WebCore.vcproj/WebCore.vcproj:
941 * WebCore.xcodeproj/project.pbxproj:
942 * page/AccessibilityObject.h:
943 * page/AccessibilityRenderObject.cpp:
944 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
945 * page/gtk/AccessibilityObjectAtk.cpp: Added.
946 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
947 * page/mac/AccessibilityObjectMac.mm: Added.
948 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
949 * page/mac/AccessibilityObjectWrapper.h:
950 * page/win/AccessibilityObjectWin.cpp: Added.
951 (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
953 2008-08-26 chris fleizach <cfleizach@apple.com>
955 Reviewed by Beth Dakin.
957 <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
959 * page/mac/AccessibilityObjectWrapper.mm:
960 (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
961 (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
963 2008-08-26 chris fleizach <cfleizach@apple.com>
965 Reviewed by Darin Adler.
967 <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
969 Tests: accessibility/table-notbody.html
971 * page/AccessibilityTable.cpp:
972 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
974 2008-08-26 Sam Weinig <sam@webkit.org>
976 Reviewed by Beth Dakin.
980 * dom/DOMCoreException.h:
982 2008-08-26 Sam Weinig <sam@webkit.org>
984 Reviewed by Oliver Hunt.
986 Fix https://bugs.webkit.org/show_bug.cgi?id=20479
987 <rdar://problem/6167660>
988 Take image redirects into account when tainting the canvas.
990 Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
992 * html/CanvasRenderingContext2D.cpp:
993 (WebCore::CanvasRenderingContext2D::drawImage):
994 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
996 2008-08-26 Sam Weinig <sam@webkit.org>
998 Reviewed by Darin Adler.
1000 Change canvas tainting logic to ask the image if it contains
1001 any resources outside of its own origin. Since there is no
1002 way to determine if SVG images contain any resources outside its
1003 origin, we always assume it does.
1005 * html/CanvasRenderingContext2D.cpp:
1006 (WebCore::CanvasRenderingContext2D::drawImage):
1007 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1008 * platform/graphics/BitmapImage.h:
1009 (WebCore::BitmapImage::hasSingleSecurityOrigin):
1010 * platform/graphics/GeneratedImage.h:
1011 (WebCore::GeneratedImage::hasSingleSecurityOrigin):
1012 * platform/graphics/Image.h:
1013 (WebCore::Image::hasSingleSecurityOrigin):
1014 * platform/graphics/cg/PDFDocumentImage.h:
1015 (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
1016 * svg/graphics/SVGImage.h:
1018 2008-08-26 Maxime Britto <britto@apple.com>
1022 <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
1023 This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
1024 This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
1026 * page/EventHandler.cpp:
1027 (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
1028 * page/EventHandler.h:
1029 * rendering/RenderLayer.cpp:
1030 (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
1031 (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
1032 * rendering/RenderLayer.h:
1033 * rendering/RenderObject.cpp:
1034 (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
1035 (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
1036 (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
1038 2008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
1042 Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
1043 https://bugs.webkit.org/show_bug.cgi?id=20247
1045 <rdar://problem/6118218>
1047 Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
1048 check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
1049 (case insensitive for HTML elements).
1051 Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
1054 (WebCore::Element::getAttribute):
1055 * dom/NamedAttrMap.cpp:
1056 (WebCore::NamedAttrMap::getNamedItem):
1057 (WebCore::NamedAttrMap::getAttributeItem):
1058 * dom/NamedAttrMap.h:
1060 2008-08-25 Sam Weinig <sam@webkit.org>
1062 Reviewed by Oliver Hunt.
1064 Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
1065 <rdar://problem/6174096>
1066 Treat SVG images as dirty when drawing to a canvas.
1068 Test: http/tests/security/canvas-remote-read-svg-image.html
1070 * html/CanvasRenderingContext2D.cpp:
1071 (WebCore::CanvasRenderingContext2D::drawImage):
1072 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1073 * platform/graphics/Image.h:
1074 (WebCore::Image::isSVGImage):
1075 * svg/graphics/SVGImage.h:
1076 (WebCore::SVGImage::isSVGImage):
1078 2008-08-25 Sam Weinig <sam@webkit.org>
1080 Reviewed by Mark Rowe.
1082 Fix https://bugs.webkit.org/show_bug.cgi?id=20377
1083 Leak in XMLHttpRequest.
1085 * xml/XMLHttpRequest.cpp:
1086 (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
1088 2008-08-25 Brady Eidson <beidson@apple.com>
1092 Speculative fix for <rdar://problem/6173217>
1094 Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
1095 Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
1096 the first null check invalid.
1098 * loader/FrameLoader.cpp:
1099 (WebCore::FrameLoader::stopAllLoaders):
1102 2008-08-25 Kevin McCullough <kmccullough@apple.com>
1106 <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
1107 there is no profile, can cause crash
1109 * page/inspector/ProfilesPanel.js:
1111 2008-08-25 Dean Jackson <dino@apple.com>
1113 Reviewed by Dave Hyatt
1115 Make sure 'inherit' is handled by transition property.
1116 https://bugs.webkit.org/show_bug.cgi?id=20513
1118 Test: transitions/inherit.html
1119 Test: transitions/inherit-other-props.html
1121 * css/CSSStyleSelector.cpp:
1122 fix macro to check existence of list before getting size
1124 2008-08-25 Anders Carlsson <andersca@apple.com>
1128 <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
1130 Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
1131 (safely) that any class that needs finalization on the main thread will also need to be deallocated
1132 on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
1133 calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
1135 * platform/mac/WebCoreObjCExtras.c:
1136 (WebCoreObjCFinalizeOnMainThread):
1138 2008-08-25 Antti Koivisto <antti@apple.com>
1140 Reviewed by Dan Bernstein.
1142 Rename CachedResource::referenced() to CachedResource::hasClients() to
1143 match previous ref() -> addClient() rename.
1146 (WebCore::Cache::pruneLiveResources):
1147 (WebCore::Cache::pruneDeadResources):
1148 (WebCore::Cache::remove):
1149 (WebCore::Cache::getStatistics):
1150 (WebCore::Cache::dumpLRULists):
1151 * loader/CachedResource.cpp:
1152 (WebCore::CachedResource::addClient):
1153 (WebCore::CachedResource::removeClient):
1154 (WebCore::CachedResource::setDecodedSize):
1155 (WebCore::CachedResource::setEncodedSize):
1156 * loader/CachedResource.h:
1157 (WebCore::CachedResource::hasClients):
1158 (WebCore::CachedResource::canDelete):
1160 2008-08-25 Anthony Ricaud <rik24d@gmail.com>
1162 Add a missing Inspector localized string for "other".
1164 https://bugs.webkit.org/show_bug.cgi?id=20509
1166 Reviewed by Tim Hatcher.
1168 * English.lproj/localizedStrings.js:
1170 2008-08-22 Kevin McCullough <kmccullough@apple.com>
1172 Reviewed by Geoff, Mark and Tim.
1174 <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
1175 in the console said what file and line number they came from
1176 - Lay the foundation for getting line numbers and other data from the
1179 * ForwardingHeaders/VM: Added.
1180 * ForwardingHeaders/VM/Machine.h: Added.
1181 * page/Console.cpp: Gather the line number and file information when
1182 profileEnd has been called, but don't use it until didFinishProfiling is
1183 called. We won't need to wait once we remove the profiler "zombie" mode
1184 which this patch helps pave the foundation for.
1185 (WebCore::Console::Console):
1186 (WebCore::Console::profileEnd):
1187 (WebCore::Console::finishedProfiling):
1189 * page/InspectorController.cpp: Modify calls to
1190 addProfileMessageToConsole to satisfy the new arguments it takes.
1191 (WebCore::InspectorController::finishedProfiling):
1192 (WebCore::InspectorController::addProfile):
1193 (WebCore::InspectorController::addProfileMessageToConsole):
1194 (WebCore::InspectorController::finishedProfiling):
1195 * page/InspectorController.h:
1197 2008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
1201 [inspector] Update the WebKit.qrc Qt resources file
1202 Catchup with the changes in the directory.
1204 * page/inspector/WebKit.qrc:
1206 2008-08-25 Dirk Schulze <vbs85@gmx.de>
1210 Transformed the radian to degree, to get rotate()
1211 in canvas work as expected.
1213 [Qt] Canvas.rotate() doesn't work
1214 https://bugs.webkit.org/show_bug.cgi?id=20496
1216 * platform/graphics/qt/GraphicsContextQt.cpp:
1217 (WebCore::GraphicsContext::rotate):
1219 2008-08-24 Steve Falkenburg <sfalken@apple.com>
1221 Add a "last chance" WM_TIMER to the Windows shared timer.
1223 The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
1224 Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
1225 timers if a timer with an earlier expiration is already pending. This results in no timers
1226 firing from that point on.
1228 We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
1229 buggy window message hook.
1231 This timer will start when the first WM_TIMER is scheduled, and will
1232 fire every 5 seconds thereafter, causing any lost timers to be fired.
1234 Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
1235 and prevents the WebFrame leak.
1237 Reviewed by Darin Adler, Geoff Garen.
1239 * platform/win/SharedTimerWin.cpp:
1241 (WebCore::TimerWindowWndProc):
1242 (WebCore::setSharedTimerFireTime):
1244 2008-08-24 Dan Bernstein <mitz@apple.com>
1246 Reviewed by Darin Adler.
1248 - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
1250 Test: fast/css/font-property-priority.html
1252 * css/CSSParser.cpp:
1253 (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
1254 to the font-property-parsing functions.
1255 (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
1256 changed to use it rather than the m_important member.
1257 (WebCore::CSSParser::parseFontVariant): Ditto.
1258 (WebCore::CSSParser::parseFontWeight): Ditto.
1261 2008-08-24 Timothy Hatcher <timothy@apple.com>
1263 Fixes a bug where the Inspector's UI would not animate or
1264 fully function because JavaScript timeouts, intervals and
1265 CSS animation timers where not firing while paused at a
1266 a breakpoint in the inspected page.
1268 https://bugs.webkit.org/show_bug.cgi?id=20042
1270 Reviewed by Darin Adler.
1272 Test: manual-tests/inspector/forzen-ui-while-paused.html
1274 * page/JavaScriptDebugServer.cpp:
1275 (WebCore::JavaScriptDebugServer::pauseIfNeeded):
1276 Add a call to TimerBase::fireTimersInNestedEventLoop before
1277 spinning the EventLoop.
1279 2008-08-24 Rob Buis <buis@kde.org>
1281 Reviewed by Sam Weinig.
1283 https://bugs.webkit.org/show_bug.cgi?id=20324
1284 A change in SVG Glyph wont show up
1286 Invalidate the glyph cache when the d attribute is set.
1288 Test: svg/custom/glyph-setting-d-attribute.svg
1290 * svg/SVGGlyphElement.cpp:
1291 (WebCore::SVGGlyphElement::invalidateGlyphCache):
1292 (WebCore::SVGGlyphElement::parseMappedAttribute):
1293 (WebCore::SVGGlyphElement::insertedIntoDocument):
1294 (WebCore::SVGGlyphElement::removedFromDocument):
1295 * svg/SVGGlyphElement.h:
1297 2008-08-24 Dan Bernstein <mitz@apple.com>
1299 Reviewed by Sam Weinig.
1301 - fix https://bugs.webkit.org/show_bug.cgi?id=13864
1302 <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
1304 * rendering/RenderText.cpp:
1305 (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
1306 beginWS and endWS before the early return to ensure that they are
1307 initialized in that case.
1309 2008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
1311 Rubber-stamped by Mark Rowe.
1316 * bridge/testbindings.cpp:
1318 * loader/SubstituteData.h:
1321 * page/ChromeClient.h:
1323 * page/FrameLoadRequest.h:
1324 * page/FrameTree.cpp:
1327 * page/mac/ChromeMac.mm:
1328 * platform/network/HTTPHeaderMap.h:
1329 * platform/network/ResourceErrorBase.cpp:
1330 * platform/network/ResourceErrorBase.h:
1331 * platform/network/ResourceHandleInternal.h:
1332 * platform/network/ResourceRequestBase.cpp:
1333 * platform/network/ResourceRequestBase.h:
1334 * platform/network/ResourceResponseBase.cpp:
1335 * platform/network/ResourceResponseBase.h:
1336 * platform/network/cf/ResourceError.h:
1337 * platform/network/cf/ResourceRequest.h:
1338 * platform/network/cf/ResourceRequestCFNet.h:
1339 * platform/network/cf/ResourceResponse.h:
1340 * platform/network/cf/ResourceResponseCFNet.h:
1341 * platform/network/curl/ResourceError.h:
1342 * platform/network/curl/ResourceRequest.h:
1343 * platform/network/curl/ResourceResponse.h:
1344 * platform/network/mac/ResourceError.h:
1345 * platform/network/mac/ResourceErrorMac.mm:
1346 * platform/network/mac/ResourceRequest.h:
1347 * platform/network/mac/ResourceRequestMac.mm:
1348 * platform/network/mac/ResourceResponse.h:
1349 * platform/network/mac/ResourceResponseMac.mm:
1350 * platform/network/qt/ResourceError.h:
1351 * platform/network/qt/ResourceRequest.h:
1352 * platform/network/qt/ResourceResponse.h:
1353 * platform/network/soup/CookieJarSoup.cpp:
1354 * platform/network/soup/ResourceError.h:
1355 * platform/network/soup/ResourceRequest.h:
1356 * platform/network/soup/ResourceResponse.h:
1358 2008-08-23 Dan Bernstein <mitz@apple.com>
1360 Reviewed by Dave Hyatt.
1362 - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
1364 Test: fast/table/vertical-align-baseline.html
1366 * rendering/RenderTable.cpp:
1367 (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
1368 baseline of the first table row, if there is one, -1 otherwise.
1369 * rendering/RenderTable.h:
1370 * rendering/RenderTableCell.cpp:
1371 (WebCore::RenderTableCell::baselinePosition): Changed to follow the
1372 CSS2.1 definition of the baseline of a table cell.
1373 * rendering/RenderTableSection.cpp:
1374 (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
1375 the baseline of the first row in the section.
1376 * rendering/RenderTableSection.h:
1378 2008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
1380 Add SPI to make a Windows WebView transparent.
1382 Reviewed by Dan Bernstein.
1384 * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
1385 determines whether the created context has an alpha channel.
1386 * platform/graphics/win/GraphicsContextCGWin.cpp:
1387 (WebCore::CGContextWithHDC):
1389 2008-08-22 Timothy Hatcher <timothy@apple.com>
1391 Rolls out r35834 because it caused a regression in the Inspector's
1392 Console where some expressions always threw a syntax error.
1394 https://bugs.webkit.org/show_bug.cgi?id=20487
1396 * page/inspector/Console.js:
1397 (Console.prototype._evalInInspectedWindow): Removes parenthesis
1398 around the expression.
1400 2008-08-22 Timothy Hatcher <timothy@apple.com>
1402 Makes getStyleProperty return a value for the overflow property
1403 when overflow-x and overflow-y are equal.
1405 https://bugs.webkit.org/show_bug.cgi?id=20485
1407 Reviewed by Dan Bernstein.
1409 Test: fast/css/overflow-property.html
1411 * css/CSSMutableStyleDeclaration.cpp:
1412 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1414 2008-08-22 Timothy Hatcher <timothy@apple.com>
1416 Fixes a bug where while editing in the Inspector the
1417 sidebar scroll position would jump to the top.
1419 https://bugs.webkit.org/show_bug.cgi?id=20484
1421 Reviewed by Darin Adler.
1423 * page/inspector/treeoutline.js:
1424 (TreeOutline._removeChildren): Remove the offsetTop call that
1425 was forcing a layout, since layout causes scroll positions
1426 to be clamped to the new scrollHeight/Width. Layout will happen
1427 normally when needed.
1429 2008-08-22 Kevin Ollivier <kevino@theolliviers.com>
1431 wx build fix. Add AccessibilityTable sources.
1433 * WebCoreSources.bkl:
1435 2008-08-21 Dan Bernstein <mitz@apple.com>
1437 Reviewed by Jon Honeycutt and Alexey Proskuryakov.
1439 - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
1441 Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
1443 * platform/graphics/mac/SimpleFontDataMac.mm:
1444 (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
1445 ascent and 100% to its reported descent.
1447 2008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
1449 Reviewed by Darin Adler.
1451 https://bugs.webkit.org/show_bug.cgi?id=20267
1452 [GTK] Crash on some pages due to a plugin
1454 Fix handling of badly formatted and empty plugin mime descriptions
1456 * plugins/gtk/PluginPackageGtk.cpp:
1457 (WebCore::PluginPackage::fetchInfo):
1459 2008-08-21 Kevin Watters <kevinwatters@gmail.com>
1461 Reviewed by Darin Adler.
1463 Follow other ports (and IE) in ImageSourceWx.cpp never to return an
1464 animated GIF frame duration of less than 50ms.
1466 * platform/graphics/wx/ImageSourceWx.cpp:
1467 (WebCore::ImageSource::frameDurationAtIndex):
1469 2008-08-21 Maxime Britto <britto@apple.com>
1471 Reviewed by Kevin McCullough.
1473 Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
1474 https://bugs.webkit.org/show_bug.cgi?id=20451
1476 rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
1477 When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
1478 This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
1480 * page/EventHandler.cpp:
1481 (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
1483 (WebCore::EventHandler::handleMousePressEvent): ditto
1485 2008-08-21 Anthony Ricaud <rik24d@gmail.com>
1487 Small optimization for when the dividers in the Inspector's
1488 Resources panel are updated.
1490 Reviewed by Tim Hatcher.
1492 * page/inspector/ResourcesPanel.js:
1493 (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
1494 Combind a for loop and clone the divider element.
1496 2008-08-21 Chris Marrin <cmarrin@apple.com>
1498 Allow 0 (without units) for Time eg. duration
1499 Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
1501 Reviewed by Dave Hyatt.
1503 Test: css1/units/zero-duration-without-units.html
1505 * css/CSSParser.cpp:
1506 (WebCore::CSSParser::validUnit):
1508 2008-08-21 Timothy Hatcher <timothy@apple.com>
1510 Make deleting all text while editing a DOM attribute in
1511 the Inspector delete the attribute. This also fixes
1512 an exception that would happen before.
1514 https://bugs.webkit.org/show_bug.cgi?id=20472
1516 Reviewed by Kevin McCullough.
1518 * page/inspector/ElementsPanel.js:
1519 (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
1520 Don't check for hasAttributes on the parseElement, continuing
1521 through the function will correctly remove the attribute.
1522 If the parseElement is null, call _editingCancelled not
1523 editingCancelled, this fixes an exception.
1525 2008-08-21 Timothy Hatcher <timothy@apple.com>
1527 Update the Inspector's Metrics pane when editing in
1528 the Styles pane. This makes sure the metrics shown
1529 always match what the Styles pane shows.
1531 https://bugs.webkit.org/show_bug.cgi?id=20470
1533 Reviewed by Kevin McCullough.
1535 * page/inspector/ElementsPanel.js:
1536 (WebInspector.ElementsPanel): Add event listeners for
1537 the "style edited" and "style property toggled" events,
1538 so the Metrics pane is updated.
1539 (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
1540 Update the Metrics pane.
1541 * page/inspector/StylesSidebarPane.js:
1542 (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
1543 Dispatch the "style property toggled" event.
1544 (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
1545 Dispatch the "style edited" event when the CSS text is restored.
1546 (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
1547 Dispatch the "style edited" event.
1549 2008-08-21 Timothy Hatcher <timothy@apple.com>
1551 Make the Inspector's Metrics sidebar pane editable.
1553 https://bugs.webkit.org/show_bug.cgi?id=17218
1554 rdar://problem/5732818
1556 Reviewed by Kevin McCullough.
1558 * page/inspector/ElementsPanel.js:
1559 (WebInspector.ElementsPanel): Add an event listener for
1560 the "metrics edited" event, so the Styles pane is updated.
1561 * page/inspector/MetricsSidebarPane.js:
1562 (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
1563 so future updates work. Add a double click event listener for the
1564 metric values to start editing.
1565 (WebInspector.MetricsSidebarPane.prototype.startEditing):
1566 Call WebInspector.startEditing with some context.
1567 (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
1568 (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
1569 Set the user input on the elements inline style. Fire the
1570 "metrics edited" event.
1572 2008-08-21 Steve Falkenburg <sfalken@apple.com>
1574 Fix a race condition in Windows timer code.
1575 Timer function could end up being called with a 0 timer, leading to a Windows exception.
1577 Don't post a timer message if one is already pending.
1579 Reviewed by Ada Chan.
1581 * platform/win/SharedTimerWin.cpp:
1582 (WebCore::TimerWindowWndProc):
1583 (WebCore::clearTimer):
1584 (WebCore::queueTimerProc):
1585 (WebCore::setSharedTimerFireTime):
1587 2008-08-21 Anthony Ricaud <rik24d@gmail.com>
1589 After trying to add the expression, try again with quotes for
1592 https://bugs.webkit.org/show_bug.cgi?id=20466
1594 Reviewed by Tim Hatcher.
1596 * page/inspector/ObjectPropertiesSection.js: Added an
1597 evaluateExpression function.
1599 2008-08-21 Anthony Ricaud <rik24d@gmail.com>
1601 Perform Inspector searches on search event to clear results when
1602 clicking the cross to empty it. Delete the lastQuery when the field
1603 is emptied in order to perform the search if exactly the same query
1606 https://bugs.webkit.org/show_bug.cgi?id=20462
1608 Reviewed by Tim Hatcher.
1610 * page/inspector/inspector.js:
1612 2008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
1614 Reviewed by Mark Rowe.
1616 http://bugs.webkit.org/show_bug.cgi?id=19656
1617 [SOUP] The gio code should call didFail() instead of
1618 didFinishLoading() in case of error
1620 In case of error call didFail() instead of didReceiveResponse() and
1623 * platform/network/soup/ResourceHandleSoup.cpp:
1624 (WebCore::networkErrorForFile):
1625 (WebCore::readCallback):
1626 (WebCore::openCallback):
1627 (WebCore::queryInfoCallback):
1629 2008-08-20 Mark Rowe <mrowe@apple.com>
1631 Reviewed by Jon Honeycutt.
1635 * bridge/c/c_instance.cpp:
1636 (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
1637 as that is what NPEnumerationFunctionPtr is declared as accepting.
1639 2008-08-20 Mark Rowe <mrowe@apple.com>
1641 Reviewed by Dan Bernstein.
1643 Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
1645 * platform/graphics/GraphicsContext.h:
1647 * platform/graphics/cg/GraphicsContextCG.cpp:
1648 (WebCore::GraphicsContext::setImageInterpolationQuality):
1649 (WebCore::GraphicsContext::imageInterpolationQuality):
1651 2008-08-20 Dan Bernstein <mitz@apple.com>
1653 Rubber-stamped by John Sullivan.
1655 - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
1656 rename related methods and variables accordingly.
1659 * page/FrameView.cpp:
1660 (WebCore::FrameViewPrivate::FrameViewPrivate):
1661 (WebCore::FrameView::shouldUpdateWhileOffscreen):
1662 (WebCore::FrameView::setShouldUpdateWhileOffscreen):
1664 * platform/ScrollView.h:
1665 * platform/mac/ScrollViewMac.mm:
1666 (WebCore::ScrollView::updateContents):
1668 2008-08-20 Brady Eidson <beidson@apple.com>
1670 Reviewed by Mitzpettel
1672 <rdar://problem/6163636> - Many images broken in Mail
1674 This can be traced back to the preload scanner. With that change, CachedResources are created a lot
1675 sooner than before and confuse the WebArchive machinery.
1677 When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
1678 such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
1679 machinery and nothing is known about where the data will eventually come from.
1681 * loader/DocumentLoader.cpp:
1682 (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
1683 CachedResource::PreloadReferenced.
1685 2008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
1687 Unreviewed compile fix
1689 Catch up with the JSValue::type elimination.
1691 * bridge/qt/qt_instance.cpp:
1692 (KJS::Bindings::QtRuntimeObjectImp::construct):
1693 (KJS::Bindings::QtInstance::defaultValue):
1694 * bridge/qt/qt_runtime.cpp:
1695 (KJS::Bindings::QtRuntimeConnectionMethod::call):
1697 2008-08-20 Chris Teague <chris.teague@gmail.com>
1699 Reviewed by Mark Rowe.
1701 Fix https://bugs.webkit.org/show_bug.cgi?id=20449
1702 Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
1705 * loader/FrameLoader.cpp:
1706 (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
1708 2008-08-20 Simon Fraser <simon.fraser@apple.com>
1710 Reviewed by Dave Hyatt
1712 getComputedStyle() for webkitTransform should return a transform
1713 that does not have the transform origin baked into it.
1714 https://bugs.webkit.org/show_bug.cgi?id=20464
1716 Test: fast/css/getComputedStyle-transform.html
1718 * css/CSSComputedStyleDeclaration.cpp:
1719 (WebCore::computedTransform):
1720 * rendering/style/RenderStyle.cpp:
1721 (WebCore::RenderStyle::applyTransform):
1722 * rendering/style/RenderStyle.h:
1724 2008-08-20 Josh Aas <joshmoz@gmail.com>
1726 Reviewed and landed by Anders.
1728 <rdar://problem/6163636>
1729 rename NPCocoaEvent's "event" struct to "data" (20446)
1734 2008-08-20 Beth Dakin <bdakin@apple.com>
1738 Fix for <rdar://problem/6145626>
1739 This patch fixes a number of remaining problems getting
1740 disconnected frames to work correctly with markAllMatchesForText()
1741 and findString(). Details inline.
1743 This was a static helper function in Frame, but this patch requires
1744 the same functionality in Editor, so I just added it as a function
1747 (WebCore::Node::isInShadowTree):
1750 * editing/Editor.cpp:
1751 (WebCore::Editor::insideVisibleArea): Returns false if
1752 excludeFromTextSearch() is true.
1754 In a normal (non-disconnected) frame, findString returns a range of
1755 the document node if the text is not found in the frame. I changed
1756 firstVisibleRange and lastVisibleRange to match that behavior when
1757 the text is not found
1758 (WebCore::Editor::firstVisibleRange):
1759 (WebCore::Editor::lastVisibleRange):
1761 Here are the bulk of the changes in the patch. A lot of text was
1762 not being found in disconnected frames because I failed to account
1763 for all of the possible problems associated with shadow trees. That
1765 (WebCore::Editor::nextVisibleRange):
1768 excludeFromTextSearch() is new. It allows a WebKit client to mark a
1769 frame as not-text-searchable through SPI.
1772 (WebCore::Frame::excludeFromTextSearch):
1773 (WebCore::Frame::setExcludeFromTextSearch):
1774 (WebCore::FramePrivate::FramePrivate):
1776 * page/FramePrivate.h:
1778 (WebCore::Frame::findString):
1779 (WebCore::Frame::markAllMatchesForText): I kept running into an
1780 assertion failure in paining code because of the forced paint on
1781 empty visible rects.
1783 2008-08-20 Timothy Hatcher <timothy@apple.com>
1785 Adds a positon box to the Inspector's Metrics sidebar
1786 pane. When an element is not statically positioned, there
1787 is now a position box that show top, right, bottom and
1788 left computed values.
1790 Reviewed by Kevin McCullough.
1792 * English.lproj/localizedStrings.js: Updated the strings.
1793 * page/inspector/MetricsSidebarPane.js:
1794 (WebInspector.MetricsSidebarPane.prototype.update):
1795 Renamed the boxPartValue function to createBoxPartElement
1796 and made it create the entire element. Made it understand
1797 how to get position style properties. Don't use the figure dash
1798 when 0px is used for positions, since the 0 is meaningful there.
1799 Instead use the figure dash when a position is auto.
1800 * page/inspector/inspector.css: Added a new rule for position.
1802 2008-08-20 chris fleizach <cfleizach@apple.com>
1804 Reviewed by Beth Dakin
1810 2008-08-20 Dan Bernstein <mitz@apple.com>
1812 Reviewed by Anders Carlsson.
1814 - avoid using a deprecated NSScroller method on Leopard
1816 * platform/mac/PlatformScrollBarMac.mm:
1817 (WebCore::PlatformScrollbar::updateThumbPosition):
1818 (WebCore::PlatformScrollbar::updateThumbProportion):
1820 2008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
1822 Reviewed by Oliver Hunt.
1827 * page/AccessibilityTable.cpp: Change nil to 0
1828 (WebCore::AccessibilityTable::cellForColumnAndRow):
1830 2008-08-19 Alexey Proskuryakov <ap@webkit.org>
1832 Reviewed by Geoff Garen.
1834 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1836 * ForwardingHeaders/kjs/JSLock.h: Added.
1837 * WebCore.vcproj/WebCore.vcproj:
1838 * bindings/js/GCController.cpp:
1840 (WebCore::GCController::gcTimerFired):
1841 (WebCore::GCController::garbageCollectNow):
1842 * bindings/js/JSCustomSQLStatementCallback.cpp:
1843 (WebCore::JSCustomSQLStatementCallback::handleEvent):
1844 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
1845 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
1846 * bindings/js/JSCustomSQLTransactionCallback.cpp:
1847 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
1848 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
1849 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
1850 * bindings/js/JSCustomVoidCallback.cpp:
1851 (WebCore::JSCustomVoidCallback::handleEvent):
1852 * bindings/js/JSCustomXPathNSResolver.cpp:
1853 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1854 * bindings/js/JSDOMWindowBase.cpp:
1855 (WebCore::DOMWindowTimer::~DOMWindowTimer):
1856 (WebCore::JSDOMWindowBase::clear):
1857 (WebCore::JSDOMWindowBase::timerFired):
1858 * bindings/js/JSEventCustom.cpp:
1860 * bindings/js/JSEventListener.cpp:
1861 (WebCore::JSAbstractEventListener::handleEvent):
1862 * bindings/js/JSNSResolver.cpp:
1863 (WebCore::JSNSResolver::lookupNamespaceURI):
1864 * bindings/js/JSNodeFilterCondition.cpp:
1865 (WebCore::JSNodeFilterCondition::acceptNode):
1866 * bindings/js/ScheduledAction.cpp:
1867 (WebCore::ScheduledAction::execute):
1868 * bindings/js/ScriptController.cpp:
1869 (WebCore::ScriptController::evaluate):
1870 (WebCore::ScriptController::clearWindowShell):
1871 (WebCore::ScriptController::createHTMLEventHandler):
1872 (WebCore::ScriptController::createSVGEventHandler):
1873 (WebCore::ScriptController::initScript):
1874 (WebCore::ScriptController::updateDocument):
1875 (WebCore::ScriptController::bindingRootObject):
1876 (WebCore::ScriptController::windowScriptNPObject):
1877 (WebCore::ScriptController::createScriptObjectForPluginElement):
1878 (WebCore::ScriptController::clearScriptObjects):
1879 * bindings/js/ScriptControllerMac.mm:
1880 (WebCore::ScriptController::windowScriptObject):
1881 * bindings/objc/WebScriptObject.mm:
1883 (-[WebScriptObject callWebScriptMethod:withArguments:]):
1884 (-[WebScriptObject evaluateWebScript:]):
1885 (-[WebScriptObject setValue:forKey:]):
1886 (-[WebScriptObject valueForKey:]):
1887 (-[WebScriptObject removeWebScriptKey:]):
1888 (-[WebScriptObject stringRepresentation]):
1889 (-[WebScriptObject webScriptValueAtIndex:]):
1890 (-[WebScriptObject setWebScriptValueAtIndex:value:]):
1891 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
1892 * bridge/NP_jsobject.cpp:
1893 (_NPN_InvokeDefault):
1898 (_NPN_RemoveProperty):
1902 * bridge/c/c_class.cpp:
1903 (KJS::Bindings::CClass::~CClass):
1904 (KJS::Bindings::CClass::methodsNamed):
1905 (KJS::Bindings::CClass::fieldNamed):
1906 * bridge/c/c_instance.cpp:
1907 (KJS::Bindings::CInstance::invokeMethod):
1908 (KJS::Bindings::CInstance::invokeDefaultMethod):
1909 (KJS::Bindings::CInstance::getPropertyNames):
1910 * bridge/c/c_runtime.cpp:
1911 (KJS::Bindings::CField::valueFromInstance):
1912 (KJS::Bindings::CField::setValueToInstance):
1913 * bridge/c/c_utility.cpp:
1914 (KJS::Bindings::convertValueToNPVariant):
1915 (KJS::Bindings::convertNPVariantToValue):
1916 * bridge/jni/jni_class.cpp:
1917 (JavaClass::JavaClass):
1918 (JavaClass::~JavaClass):
1919 * bridge/jni/jni_instance.cpp:
1920 (JavaInstance::stringValue):
1921 * bridge/jni/jni_jsobject.mm:
1922 (JavaJSObject::call):
1923 (JavaJSObject::eval):
1924 (JavaJSObject::getMember):
1925 (JavaJSObject::setMember):
1926 (JavaJSObject::removeMember):
1927 (JavaJSObject::getSlot):
1928 (JavaJSObject::setSlot):
1929 (JavaJSObject::toString):
1930 (JavaJSObject::convertValueToJObject):
1931 (JavaJSObject::convertJObjectToValue):
1932 * bridge/jni/jni_objc.mm:
1933 (KJS::Bindings::dispatchJNICall):
1934 * bridge/jni/jni_runtime.cpp:
1936 (JavaMethod::signature):
1937 * bridge/jni/jni_runtime.h:
1938 (KJS::Bindings::JavaString::JavaString):
1939 (KJS::Bindings::JavaString::_commonInit):
1940 (KJS::Bindings::JavaString::~JavaString):
1941 (KJS::Bindings::JavaString::UTF8String):
1942 * bridge/jni/jni_utility.cpp:
1943 (KJS::Bindings::convertValueToJValue):
1944 * bridge/npruntime.cpp:
1945 (_NPN_GetStringIdentifier):
1946 * bridge/objc/objc_instance.mm:
1947 (ObjcInstance::moveGlobalExceptionToExecState):
1948 (ObjcInstance::invokeMethod):
1949 (ObjcInstance::invokeDefaultMethod):
1950 (ObjcInstance::setValueOfUndefinedField):
1951 (ObjcInstance::getValueOfUndefinedField):
1952 * bridge/objc/objc_runtime.mm:
1953 (ObjcField::valueFromInstance):
1954 (ObjcField::setValueToInstance):
1955 * bridge/objc/objc_utility.mm:
1956 (KJS::Bindings::convertValueToObjcValue):
1957 (KJS::Bindings::convertNSStringToString):
1958 (KJS::Bindings::convertObjcValueToValue):
1959 * bridge/qt/qt_instance.cpp:
1960 (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
1961 (KJS::Bindings::QtInstance::~QtInstance):
1962 (KJS::Bindings::QtInstance::getQtInstance):
1963 (KJS::Bindings::QtInstance::getRuntimeObject):
1964 * bridge/qt/qt_runtime.cpp:
1965 (KJS::Bindings::convertValueToQVariant):
1966 (KJS::Bindings::convertQVariantToValue):
1967 (KJS::Bindings::QtRuntimeMetaMethod::call):
1968 (KJS::Bindings::QtRuntimeConnectionMethod::call):
1969 (KJS::Bindings::QtConnectionObject::QtConnectionObject):
1970 (KJS::Bindings::QtConnectionObject::execute):
1971 * bridge/runtime.cpp:
1972 (KJS::Bindings::Instance::createRuntimeObject):
1973 * bridge/testbindings.cpp:
1975 * bridge/testbindings.mm:
1977 * bridge/testqtbindings.cpp:
1980 (WebCore::Document::~Document):
1982 (WebCore::Node::setDocument):
1983 * history/CachedPage.cpp:
1984 (WebCore::CachedPage::CachedPage):
1985 (WebCore::CachedPage::restore):
1986 (WebCore::CachedPage::clear):
1987 * loader/FrameLoader.cpp:
1988 (WebCore::getString):
1989 * page/InspectorController.cpp:
1990 (WebCore::ConsoleMessage::ConsoleMessage):
1991 (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
1992 (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
1993 (WebCore::getResourceDocumentNode):
1995 (WebCore::inspectedWindow):
1996 (WebCore::wrapCallback):
1997 (WebCore::currentCallFrame):
1998 (WebCore::profiles):
1999 (WebCore::InspectorController::focusNode):
2000 (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
2001 (WebCore::InspectorController::addDatabaseScriptResource):
2002 (WebCore::InspectorController::addScriptProfile):
2003 * page/JavaScriptCallFrame.cpp:
2004 (WebCore::JavaScriptCallFrame::evaluate):
2005 * page/JavaScriptProfileNode.cpp:
2006 (WebCore::getTotalTime):
2007 (WebCore::getSelfTime):
2008 (WebCore::getTotalPercent):
2009 (WebCore::getSelfPercent):
2010 (WebCore::getNumberOfCalls):
2011 (WebCore::getChildren):
2012 (WebCore::getVisible):
2014 * page/mac/FrameMac.mm:
2015 * plugins/PluginView.cpp:
2016 (WebCore::PluginView::start):
2017 (WebCore::getString):
2018 (WebCore::PluginView::performRequest):
2019 (WebCore::PluginView::bindingInstance):
2020 * plugins/gtk/PluginViewGtk.cpp:
2021 (WebCore::PluginView::paint):
2022 (WebCore::PluginView::handleKeyboardEvent):
2023 (WebCore::PluginView::handleMouseEvent):
2024 (WebCore::PluginView::setNPWindowRect):
2025 (WebCore::PluginView::stop):
2026 (WebCore::PluginView::init):
2027 * plugins/qt/PluginViewQt.cpp:
2028 (WebCore::PluginView::setNPWindowRect):
2029 (WebCore::PluginView::stop):
2030 (WebCore::PluginView::init):
2031 * plugins/win/PluginViewWin.cpp:
2032 (WebCore::PluginView::dispatchNPEvent):
2033 (WebCore::PluginView::handleKeyboardEvent):
2034 (WebCore::PluginView::handleMouseEvent):
2035 (WebCore::PluginView::setNPWindowRect):
2036 (WebCore::PluginView::stop):
2037 * xml/XMLHttpRequest.cpp:
2038 (WebCore::XMLHttpRequest::clearResponse):
2039 (WebCore::XMLHttpRequest::didFinishLoading):
2040 (WebCore::XMLHttpRequest::didReceiveData):
2042 2008-08-19 Eric Seidel <eric@webkit.org>
2044 Reviewed by Geoff Garen.
2046 Add the beginnings of Skia graphics support to WebCore
2047 as I try to begin the long process of un-forking the changes
2048 needed to WebCore to make Andriod's WebCore build.
2050 I'll follow this up with actual *Skia.cpp files in a separate patch.
2052 * platform/graphics/AffineTransform.h:
2053 * platform/graphics/FloatPoint.h:
2054 * platform/graphics/FloatRect.h:
2055 * platform/graphics/Gradient.h:
2056 * platform/graphics/GraphicsContext.h:
2057 * platform/graphics/Image.h:
2058 * platform/graphics/ImageBuffer.h:
2059 * platform/graphics/ImageSource.h:
2060 * platform/graphics/IntPoint.h:
2061 * platform/graphics/IntRect.h:
2062 * platform/graphics/Path.h:
2063 * platform/graphics/Pattern.h:
2064 * svg/graphics/SVGPaintServerPattern.h:
2065 * svg/graphics/SVGPaintServerSolid.h:
2067 2008-08-19 Steve Falkenburg <sfalken@apple.com>
2069 Fix Windows build more.
2071 * WebCore.vcproj/WebCore.vcproj:
2073 2008-08-19 Steve Falkenburg <sfalken@apple.com>
2077 * page/AccessibilityRenderObject.cpp:
2078 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2080 2008-08-19 chris fleizach <cfleizach@apple.com>
2082 Reviewed by Beth Dakin.
2084 <rdar://problem/4003764> Expose tables as AXTables
2086 Tests: accessibility/table-attributes.html
2087 accessibility/table-cell-spans.html
2088 accessibility/table-cells.html
2089 accessibility/table-detection.html
2090 accessibility/table-sections.html
2091 accessibility/table-with-rules.html
2093 * WebCore.xcodeproj/project.pbxproj:
2094 * page/AXObjectCache.cpp:
2095 (WebCore::AXObjectCache::get):
2096 * page/AccessibilityObject.h:
2098 (WebCore::AccessibilityObject::isDataTable):
2099 (WebCore::AccessibilityObject::isTableRow):
2100 (WebCore::AccessibilityObject::isTableColumn):
2101 (WebCore::AccessibilityObject::isTableCell):
2102 * page/AccessibilityRenderObject.cpp:
2103 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2104 * page/AccessibilityTable.cpp: Added.
2105 (WebCore::AccessibilityTable::AccessibilityTable):
2106 (WebCore::AccessibilityTable::~AccessibilityTable):
2107 (WebCore::AccessibilityTable::create):
2108 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2109 (WebCore::AccessibilityTable::clearChildren):
2110 (WebCore::AccessibilityTable::addChildren):
2111 (WebCore::AccessibilityTable::headerContainer):
2112 (WebCore::AccessibilityTable::columns):
2113 (WebCore::AccessibilityTable::rows):
2114 (WebCore::AccessibilityTable::rowHeaders):
2115 (WebCore::AccessibilityTable::columnHeaders):
2116 (WebCore::AccessibilityTable::cells):
2117 (WebCore::AccessibilityTable::columnCount):
2118 (WebCore::AccessibilityTable::rowCount):
2119 (WebCore::AccessibilityTable::cellForColumnAndRow):
2120 (WebCore::AccessibilityTable::roleValue):
2121 (WebCore::AccessibilityTable::accessibilityIsIgnored):
2122 (WebCore::AccessibilityTable::title):
2123 (WebCore::AccessibilityTable::isDataTable):
2124 * page/AccessibilityTable.h: Added.
2125 * page/AccessibilityTableCell.cpp: Added.
2126 (WebCore::AccessibilityTableCell::AccessibilityTableCell):
2127 (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
2128 (WebCore::AccessibilityTableCell::create):
2129 (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
2130 (WebCore::AccessibilityTableCell::rowIndexRange):
2131 (WebCore::AccessibilityTableCell::columnIndexRange):
2132 * page/AccessibilityTableCell.h: Added.
2133 (WebCore::AccessibilityTableCell::isTableCell):
2134 (WebCore::AccessibilityTableCell::roleValue):
2135 * page/AccessibilityTableColumn.cpp: Added.
2136 (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
2137 (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
2138 (WebCore::AccessibilityTableColumn::create):
2139 (WebCore::AccessibilityTableColumn::setParentTable):
2140 (WebCore::AccessibilityTableColumn::elementRect):
2141 (WebCore::AccessibilityTableColumn::size):
2142 (WebCore::AccessibilityTableColumn::children):
2143 (WebCore::AccessibilityTableColumn::headerObject):
2144 (WebCore::AccessibilityTableColumn::headerObjectForSection):
2145 (WebCore::AccessibilityTableColumn::addChildren):
2146 * page/AccessibilityTableColumn.h: Added.
2147 (WebCore::AccessibilityTableColumn::parentObject):
2148 (WebCore::AccessibilityTableColumn::roleValue):
2149 (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
2150 (WebCore::AccessibilityTableColumn::isTableColumn):
2151 (WebCore::AccessibilityTableColumn::setColumnIndex):
2152 (WebCore::AccessibilityTableColumn::columnIndex):
2153 * page/AccessibilityTableHeaderContainer.cpp: Added.
2154 (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
2155 (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
2156 (WebCore::AccessibilityTableHeaderContainer::create):
2157 (WebCore::AccessibilityTableHeaderContainer::children):
2158 (WebCore::AccessibilityTableHeaderContainer::elementRect):
2159 (WebCore::AccessibilityTableHeaderContainer::size):
2160 (WebCore::AccessibilityTableHeaderContainer::addChildren):
2161 * page/AccessibilityTableHeaderContainer.h: Added.
2162 (WebCore::AccessibilityTableHeaderContainer::roleValue):
2163 (WebCore::AccessibilityTableHeaderContainer::setParentTable):
2164 (WebCore::AccessibilityTableHeaderContainer::parentObject):
2165 (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
2166 * page/AccessibilityTableRow.cpp: Added.
2167 (WebCore::AccessibilityTableRow::AccessibilityTableRow):
2168 (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
2169 (WebCore::AccessibilityTableRow::create):
2170 (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
2171 (WebCore::AccessibilityTableRow::headerObject):
2172 * page/AccessibilityTableRow.h: Added.
2173 (WebCore::AccessibilityTableRow::isTableRow):
2174 (WebCore::AccessibilityTableRow::roleValue):
2175 (WebCore::AccessibilityTableRow::setRowIndex):
2176 (WebCore::AccessibilityTableRow::rowIndex):
2177 * page/mac/AccessibilityObjectWrapper.mm:
2178 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2180 (-[AccessibilityObjectWrapper roleDescription]):
2181 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2182 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2183 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2185 2008-08-19 Steve Falkenburg <sfalken@apple.com>
2188 Add buildfailed support to stop builds early (preventing inaccurate error messages).
2189 Add missing post-build rule to Release.
2191 * WebCore.vcproj/QTMovieWin.vcproj:
2193 2008-08-19 Keishi Hattori <casey.hattori@gmail.com>
2195 Added support for console.count in the inspector.
2197 Reviewed by Geoff Garen.
2200 (WebCore::Console::count):
2202 * page/Console.idl: Added console.count.
2203 * page/InspectorController.cpp:
2204 (WebCore::InspectorController::didCommitLoad): Clears m_counts.
2205 (WebCore::InspectorController::count): Updates the count number
2206 sing "title@source:line" as the identifier, and adds a
2207 message to the console.
2208 * page/InspectorController.h: Added m_counts.
2210 2008-08-19 Keishi Hattori <casey.hattori@gmail.com>
2212 Clear console.time timers when changing page.
2214 Reviewed by Geoff Garen.
2216 * page/InspectorController.cpp:
2217 (WebCore::InspectorController::didCommitLoad):
2219 2008-08-19 Eric Carlson <eric.carlson@apple.com>
2223 Fix for <rdar://problem/6154695> Full-page movies flicker while playing
2224 https://bugs.webkit.org/show_bug.cgi?id=20404
2226 Ignore setVisible() when visibility doesn't change.
2228 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2229 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2230 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2231 (WebCore::MediaPlayerPrivate::setVisible):
2233 2008-08-19 Timothy Hatcher <timothy@apple.com>
2235 Fixes a bug in the Profile view where switching sort order, then
2236 switching from heavy to tree mode would show the tree in the
2237 previous sort order.
2239 https://bugs.webkit.org/show_bug.cgi?id=20441
2241 Reviewed by Kevin McCullough.
2243 * page/inspector/ProfileView.js:
2244 (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
2245 on the next profile before assigning it to this.profile.
2246 (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
2247 (WebInspector.ProfileView.prototype._sortProfile): Moves from
2248 _sortData and takes a profile argument. If the profile passed in
2249 matches the this.profile, then call refresh.
2251 2008-08-18 Timothy Hatcher <timothy@apple.com>
2253 Changed the default sort order now that heavy view is the default.
2254 Also fixes a bug where the heavy profile was not sorted at first.
2256 https://bugs.webkit.org/show_bug.cgi?id=20440
2258 Reviewed by Kevin McCullough.
2260 * page/inspector/ProfileView.js:
2261 (WebInspector.ProfileView): Changed the default sort column. Also assign
2262 heavyProfile to profile, so the sortSelfTimeDescending call happens
2263 on the heavy profile before assigning to this.profile.
2265 2008-08-18 Timothy Hatcher <timothy@apple.com>
2267 Add support for editing DOM properties and scope variables by double
2268 clicking a property to enter edit mode.
2270 https://bugs.webkit.org/show_bug.cgi?id=20415
2272 Reviewed by Kevin McCullough.
2274 * page/inspector/ObjectPropertiesSection.js:
2275 (WebInspector.ObjectPropertiesSection): Set editable to true by default.
2276 (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
2277 Factored out code into update, and calls update.
2278 (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
2279 Call removeChildren since this method can be called multiple times now.
2280 (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
2281 gets made later in onattach.
2282 (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
2283 if shouldRefreshChildren is true. Call removeChildren since this method can be
2284 called multiple times now.
2285 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
2286 (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
2287 (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
2288 this element (code moved from the constructor.)
2289 (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
2290 sibling property elements.
2291 (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
2292 WebInspector.startEditing after rememebring some context.
2293 (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
2294 for the list element, since it might have scrolled during editing.
2295 (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
2296 then restore the state from the context. Then call update to restore the title.
2297 (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
2298 if the user input and the previous input are the same. Call editingEnded, then call applyExpression
2299 to commit the user input.
2300 (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
2301 and stores the result on the object for the property name of this element. If the expression is
2302 empty, delete the property and remove the tree element.
2303 * page/inspector/ScopeChainSidebarPane.js:
2304 (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
2305 property on each ObjectPropertiesSection.
2306 (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
2307 since it is now implemented.
2308 * page/inspector/ScriptsPanel.js:
2309 (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
2310 that defaults to true if omitted. It specifies whether to call update on the scope chain.
2311 * page/inspector/inspector.css: New styles.
2312 * page/inspector/treeoutline.js:
2313 (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
2314 change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
2316 2008-08-18 Timothy Hatcher <timothy@apple.com>
2318 Surround the expression to be evaluated in parenthesis so the
2319 result of the eval is the result of the whole expression not
2320 the last potential sub-expression. So evaluating {x: 123}
2321 will show the Object not 123.
2323 https://bugs.webkit.org/show_bug.cgi?id=20428
2325 Reviewed by Kevin McCullough.
2327 * page/inspector/Console.js:
2328 (Console.prototype._evalInInspectedWindow): Add parenthesis
2329 around the expression. And add couple comments.
2331 2008-08-19 Kevin McCullough <kmccullough@apple.com>
2335 -Implement a page() function to extract a common code pattern.
2337 * WebCore.xcodeproj/project.pbxproj:
2339 (WebCore::Console::addMessage):
2340 (WebCore::Console::error):
2341 (WebCore::Console::info):
2342 (WebCore::Console::log):
2343 (WebCore::Console::dir):
2344 (WebCore::Console::assertCondition):
2345 (WebCore::Console::time):
2346 (WebCore::Console::timeEnd):
2347 (WebCore::Console::group):
2348 (WebCore::Console::groupEnd):
2349 (WebCore::Console::finishedProfiling):
2350 (WebCore::Console::warn):
2351 (WebCore::Console::framePage):
2354 2008-08-12 Darin Adler <darin@apple.com>
2358 - eliminate JSValue::type()
2360 * bridge/c/c_instance.cpp:
2361 (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
2362 argument instead of JSType argument. Removed unneeded code to handle
2363 boolean, since that's never passed.
2364 * bridge/c/c_instance.h: Ditto.
2366 * bridge/c/c_utility.cpp:
2367 (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
2368 instead of JSValue::type(). Removed unneeded code to handle
2371 * bridge/jni/jni_instance.cpp:
2372 (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
2373 instead of JSType argument. Removed unneeded code to handle boolean.
2374 * bridge/jni/jni_instance.h: Ditto.
2376 * bridge/jni/jni_jsobject.mm:
2377 (JavaJSObject::convertValueToJObject): Use JSValue::is functions
2378 instead of JSValue::type().
2380 * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
2381 instead of JSType argument. Removed unused argument.
2382 * bridge/objc/objc_instance.mm:
2383 (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
2384 (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
2385 instead of JSType argument. Removed unneeded code to handle boolean
2386 and another dead code path for unknown types.
2388 * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
2389 instead of JSType argument. Removed override of type() that caused
2390 the fallback object to return "UndefinedType" when there is no
2391 invokeUndefinedMethodFromWebScript:withArguments: method defined.
2392 That didn't accomplish much, since most checks for undefined don't
2394 * bridge/objc/objc_runtime.mm:
2395 (ObjcFallbackObjectImp::defaultValue): Ditto.
2397 * bridge/qt/qt_instance.cpp:
2398 (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
2399 argument instead of JSType argument. Removed unneeded code to handle
2401 * bridge/qt/qt_instance.h: Ditto.
2404 (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
2406 * bridge/runtime_object.cpp:
2407 (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
2408 argument instead of JSType argument.
2409 * bridge/runtime_object.h: Ditto.
2411 2008-08-18 Maxime Britto <britto@apple.com>
2415 <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
2416 Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
2417 We shouldn't be able to create another window while we are in pan scrolling.
2418 Other browsers behaviors :
2419 FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
2420 IE7 : Keys are not disabled but stops immediately the panning.
2421 This patch matches FF3 behavior by disabling every key but the esc key.
2423 * page/EventHandler.cpp:
2424 (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
2425 (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
2427 2008-08-18 Dan Bernstein <mitz@apple.com>
2429 Reviewed by Dave Hyatt.
2431 - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
2433 Test: fast/replaced/max-width-percent.html
2435 Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
2436 When false, max-width is not factored into the
2438 Changed RenderReplaced and subclasses' calcPrefWidths() to call
2439 calcReplacedWidth(false) and then apply max-width only if it has a
2440 fixed, positive value.
2442 * rendering/RenderBox.cpp:
2443 (WebCore::RenderBox::calcReplacedWidth):
2444 * rendering/RenderBox.h:
2445 * rendering/RenderImage.cpp:
2446 (WebCore::RenderImage::calcReplacedWidth):
2447 (WebCore::RenderImage::calcPrefWidths):
2448 * rendering/RenderImage.h:
2449 * rendering/RenderReplaced.cpp:
2450 (WebCore::RenderReplaced::calcPrefWidths):
2451 * rendering/RenderSVGRoot.cpp:
2452 (WebCore::RenderSVGRoot::calcPrefWidths):
2453 * rendering/RenderVideo.cpp:
2454 (WebCore::RenderVideo::calcReplacedWidth):
2455 (WebCore::RenderVideo::calcPrefWidths):
2456 * rendering/RenderVideo.h:
2458 2008-08-18 Daniel Macks <dmacks@netspace.org>
2460 Reviewed by Mark Rowe.
2462 https://bugs.webkit.org/show_bug.cgi?id=20410
2463 More portable/self-documenting replacement for SIZE_MAX.
2465 * platform/network/curl/FormDataStreamCurl.cpp:
2466 (WebCore::FormDataStream::read):
2468 2008-08-18 Simon Fraser <simon.fraser@apple.com>
2470 Reviewed by Dave Hyatt
2472 Need to make sure we have an Animation in the AnimationList
2473 before setting the initial value.
2474 https://bugs.webkit.org/show_bug.cgi?id=20408
2476 Test: fast/css/transition_shorthand_parsing.html
2478 * css/CSSStyleSelector.cpp:
2480 2008-08-18 Kevin McCullough <kmccullough@apple.com>
2484 <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
2487 * page/inspector/ProfilesPanel.js:
2489 2008-08-18 Kevin McCullough <kmccullough@apple.com>
2493 <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
2494 all console messages
2496 * page/inspector/Console.js:
2498 2008-08-18 Dirk Schulze <vbs85@gmx.de>
2500 Reviewed by Eric Seidel.
2502 Fixed Canvas for Cairo. Stroke and fill colors didn't work after
2503 the canvas clean up.
2505 https://bugs.webkit.org/show_bug.cgi?id=20405
2507 * html/CanvasRenderingContext2D.cpp:
2508 (WebCore::CanvasRenderingContext2D::fill):
2509 (WebCore::CanvasRenderingContext2D::stroke):
2510 (WebCore::CanvasRenderingContext2D::fillRect):
2512 2008-08-17 Timothy Hatcher <timothy@apple.com>
2514 Complete in scope variables in the Console when paused.
2516 https://bugs.webkit.org/show_bug.cgi?id=19115
2518 Reviewed by Geoffrey Garen.
2520 * page/inspector/Console.js:
2521 (WebInspector.Console.prototype.completions): If the expressionString
2522 is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
2523 to get an object that declares all the in scope variables. That way
2524 "top level" expressions are completed.
2525 * page/inspector/ScriptsPanel.js:
2526 (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
2527 Return an object that has all the variables that are in scope for the
2528 selected call frame. The value of each property is just true.
2529 The return object is useful for quick lookups or auto completion.
2531 2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
2535 Speculative Qt build fix.
2537 * bridge/qt/qt_runtime.cpp:
2538 (KJS::Bindings::convertValueToQVariant):
2539 (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
2541 2008-08-17 Geoffrey Garen <ggaren@apple.com>
2543 Reviewed by Cameron Zwarich.
2545 Updated project files to XCode 3.1.
2547 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
2549 2008-08-17 Geoffrey Garen <ggaren@apple.com>
2551 Reviewed by Cameron Zwarich.
2553 Made room for a free word in JSCell.
2555 Changed JSDOMWindowBase to store its auxiliary data in a subclass of
2556 JSGlobalData, so the two could share a pointer.
2558 Added a bunch of ASSERTs, to help catch over-sized objects.
2560 2008-08-15 Mark Rowe <mrowe@apple.com>
2562 Reviewed by Dan Bernstein.
2564 Disable dead code stripping in debug builds.
2566 * Configurations/Base.xcconfig:
2567 * WebCore.xcodeproj/project.pbxproj:
2569 2008-08-15 Mark Rowe <mrowe@apple.com>
2571 Rubber-stamped by Geoff Garen.
2573 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
2575 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
2576 between the Debug configuration and debug Production variant.
2577 * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
2579 2008-08-15 Antti Koivisto <antti@apple.com>
2583 Don't start preloading body resources before the head is complete. This prevents
2584 body preloads from slowing down initial display when there is limited amount
2585 of bandwidth available.
2587 Works by queuing up found body preloads to DocLoader and only issuing them
2588 after document has rendering.
2590 With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
2591 without affecting complete load time.
2593 * html/PreloadScanner.cpp:
2594 (WebCore::PreloadScanner::PreloadScanner):
2595 (WebCore::PreloadScanner::scanningBody):
2596 (WebCore::PreloadScanner::emitTag):
2597 (WebCore::PreloadScanner::emitCSSRule):
2598 * html/PreloadScanner.h:
2599 * loader/DocLoader.cpp:
2600 (WebCore::DocLoader::preload):
2601 (WebCore::DocLoader::checkForPendingPreloads):
2602 (WebCore::DocLoader::requestPreload):
2603 * loader/DocLoader.h:
2604 * loader/loader.cpp:
2605 (WebCore::Loader::Host::didFinishLoading):
2606 (WebCore::Loader::Host::didFail):
2608 2008-08-15 Ada Chan <adachan@apple.com>
2610 Use item's computed style if the render style is 0 before falling back to the <select>'s style.
2611 This way style set on an <hr> within a <select> will be honored.
2613 Reviewed by Dave Hyatt and Dan Bernstein.
2615 * rendering/RenderMenuList.cpp:
2616 (WebCore::RenderMenuList::itemStyle):
2618 2008-08-15 Antti Koivisto <antti@apple.com>
2622 Some loader performance tweaks:
2623 - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
2624 Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
2625 to not delay rendering.
2626 - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
2627 can take long time when latency is high so it is good to get started early.
2628 - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
2629 load queues. Issue remaining loads to the network layer.
2631 * loader/loader.cpp:
2632 (WebCore::Loader::determinePriority):
2633 (WebCore::Loader::load):
2634 (WebCore::Loader::Host::servePendingRequests):
2637 2008-08-15 Timothy Hatcher <timothy@apple.com>
2639 Detach the script debugger when the Web Inspector's window closes.
2640 This has always been the intended design, but never fully implemented.
2642 https://bugs.webkit.org/show_bug.cgi?id=20402
2644 Reviewed by Adam Roben.
2646 * page/InspectorController.cpp:
2647 (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
2648 if the window is no longer visible.
2650 2008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
2654 Fixes: compile with QT_NO_CONTEXTMENU
2656 * platform/qt/PlatformMouseEventQt.cpp:
2657 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2658 * platform/qt/PlatformScrollBarQt.cpp:
2659 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
2660 (WebCore::PlatformScrollbar::handleContextMenuEvent):
2662 2008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
2666 Fixes: compile with QT_NO_WHEELEVENT
2668 * platform/qt/WheelEventQt.cpp:
2669 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2671 2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
2673 Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
2675 https://bugs.webkit.org/show_bug.cgi?id=20210
2677 Reviewed by Tim Hatcher.
2680 (WebCore::Console::group):
2681 (WebCore::Console::groupEnd):
2683 (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
2684 * page/InspectorController.cpp:
2685 (WebCore::InspectorController::startGroup): Increments group level by
2686 one and adds console message with StartGroupMessaageLevel.
2687 (WebCore::InspectorController::endGroup): Decrements group level by one
2688 and adds console message with EndGroupMessaageLevel.
2689 * page/InspectorController.h:
2690 * page/inspector/Console.js:
2691 (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
2692 if the message is StartGroupMessaageLevel.
2693 (WebInspector.ConsoleMessage.prototype.toMessageElement):
2694 (WebInspector.ConsoleGroup.prototype.addMessage):
2695 * page/inspector/inspector.js:
2697 2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
2699 Adds support for console.dir to the Inspector
2701 https://bugs.webkit.org/show_bug.cgi?id=19155
2703 Reviewed by Tim Hatcher.
2705 * bindings/js/JSConsoleCustom.cpp:
2706 (WebCore::JSConsole::dir):
2708 (WebCore::Console::dir):
2709 * page/Console.h: Added ObjectMessageLevel.
2710 * page/Console.idl: Added console.dir.
2711 * page/inspector/Console.js:
2712 (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
2713 ObjectPropertiesSection if the MessageLevel is Object.
2714 * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
2715 used on primitive data types.
2716 * page/inspector/inspector.css:
2718 2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
2720 Adds support for clear() in the Inspector console.
2722 https://bugs.webkit.org/show_bug.cgi?id=19873
2724 Reviewed by Tim Hatcher.
2726 * page/inspector/Console.js:
2728 2008-08-15 Anthony Ricaud <rik24d@gmail.com>
2730 Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
2732 Platform distinction and modifier key matching adjusted
2733 by Daniel Jalkut <jalkut@red-sweater.com>
2735 Bug 16313: text search (find) keybindings should work in the Web Inspector
2736 https://bugs.webkit.org/show_bug.cgi?id=16313
2738 Reviewed by Tim Hatcher.
2740 * page/inspector/inspector.js: Added a case for the F key
2742 2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
2744 Fix for error when the string doesn't contain a webkit-profile link.
2746 https://bugs.webkit.org/show_bug.cgi?id=20399
2748 Reviewed by Tim Hatcher.
2750 * page/inspector/inspector.js:
2752 2008-08-15 Timothy Hatcher <timothy@apple.com>
2754 Fixes two bugs where JavaScript could be executed from the page
2755 while the debugger is paused.
2757 The first issue was JSLazyEventListener not checking the paused
2758 state before parsing the code.
2760 The second issue was with the PageGroup version of
2761 JavaScriptDebugServer::setJavaScriptPaused always passing false
2762 to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
2763 and not the paused argument.
2765 https://bugs.webkit.org/show_bug.cgi?id=20284
2767 Reviewed by Adam Roben.
2769 * bindings/js/JSEventListener.cpp:
2770 (WebCore::JSLazyEventListener::parseCode): Check the paused
2771 state of the ScriptController. Return early if paused.
2772 * manual-tests/inspector/debugger-execution-while-paused.html: Added.
2773 * page/JavaScriptDebugServer.cpp:
2774 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
2775 Pass the paused argument to the Page version of setJavaScriptPaused.
2777 2008-08-15 Alexey Proskuryakov <ap@webkit.org>
2779 Reviewed by Geoff Garen.
2781 JSStringRef is created context-free, but can get linked to one via an identifier table,
2782 breaking an implicit API contract.
2784 * page/InspectorController.cpp:
2785 (WebCore::jsStringRef):
2786 (WebCore::InspectorController::didParseSource):
2787 (WebCore::InspectorController::failedToParseSource):
2788 * page/JavaScriptProfile.cpp:
2789 (WebCore::getTitleCallback):
2790 Updated for JavaScriptCore changes.
2792 2008-08-14 Kevin Ollivier <kevino@theolliviers.com>
2794 wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
2795 an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
2797 * platform/graphics/AffineTransform.h:
2799 2008-08-14 Eric Carlson <eric.carlson@apple.com>
2803 Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
2804 <video> elements on Windows never becomes visible when a page is restored from the cache
2806 Always pass "set" calls down to MediaPlayerPrivate instead of only when the
2807 value is different from the cached value. Let the implementation decide when
2808 to avoid work because nothing has changed.
2810 * platform/graphics/MediaPlayer.cpp:
2811 (WebCore::MediaPlayer::setVolume):
2812 (WebCore::MediaPlayer::setRate):
2813 (WebCore::MediaPlayer::setRect):
2814 (WebCore::MediaPlayer::setVisible):
2816 2008-08-14 Keishi Hattori <casey.hattori@gmail.com>
2818 Make Firebug command line API respect predefined variables.
2820 https://bugs.webkit.org/show_bug.cgi?id=20385
2822 Reviewed by Tim Hatcher.
2824 * page/inspector/Console.js:
2826 2008-08-14 Sam Weinig <sam@webkit.org>
2828 Reviewed by Geoffrey Garen and Timothy Hatcher.
2830 Allow programatically setting the HTMLTokenizers time delay and chunk size
2831 which are used for determining how aggressively we yield.
2834 * html/HTMLTokenizer.cpp:
2835 (WebCore::HTMLTokenizer::begin):
2836 (WebCore::HTMLTokenizer::continueProcessing):
2837 * html/HTMLTokenizer.h:
2839 (WebCore::Page::Page):
2840 (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
2841 (WebCore::Page::setCustomHTMLTokenizerChunkSize):
2843 (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
2844 (WebCore::Page::customHTMLTokenizerTimeDelay):
2845 (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
2846 (WebCore::Page::customHTMLTokenizerChunkSize):
2848 2008-08-14 Eric Seidel <eric@webkit.org>
2852 Move us one step closer to cross-platform svg/graphics code
2854 * WebCore.xcodeproj/project.pbxproj:
2855 * html/CanvasStyle.cpp:
2856 * platform/graphics/Color.cpp:
2857 (WebCore::colorWithOverrideAlpha):
2858 * platform/graphics/Color.h:
2859 * svg/graphics/cg/CgSupport.cpp:
2860 (WebCore::applyStrokeStyleToContext):
2861 (WebCore::strokeBoundingBox):
2862 * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
2863 (WebCore::SVGPaintServerSolid::setup):
2865 2008-08-14 Eric Seidel <eric@webkit.org>
2869 Remove un-need includes from HTMLCanvas and use the
2870 Gradient platform abstraction in one place in CanvasStyle
2872 * html/CanvasRenderingContext2D.cpp:
2873 (WebCore::CanvasRenderingContext2D::fillRect):
2874 * html/CanvasStyle.cpp:
2875 * html/HTMLCanvasElement.cpp:
2877 2008-08-14 Eric Seidel <eric@webkit.org>
2881 Clean up GlyphBuffer.h, removing more #ifdefs
2883 * platform/graphics/GlyphBuffer.h:
2884 (WebCore::GlyphBuffer::glyphAt):
2885 (WebCore::GlyphBuffer::advanceAt):
2886 (WebCore::GlyphBuffer::add):
2888 2008-08-14 Eric Seidel <eric@webkit.org>
2892 Clean up AffineTransform.h, removing #ifdefs
2894 * platform/graphics/AffineTransform.h:
2895 * platform/graphics/cairo/AffineTransformCairo.cpp:
2896 * platform/graphics/cg/AffineTransformCG.cpp:
2897 * platform/graphics/qt/AffineTransformQt.cpp:
2898 * platform/graphics/wx/AffineTransformWx.cpp:
2900 2008-08-14 Dan Bernstein <mitz@apple.com>
2902 - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
2904 * platform/graphics/cairo/ImageSourceCairo.cpp:
2905 (WebCore::ImageSource::frameSizeAtIndex):
2906 * platform/graphics/qt/ImageSourceQt.cpp:
2907 (WebCore::ImageSource::frameSizeAtIndex):
2908 * platform/graphics/wx/ImageSourceWx.cpp:
2909 (WebCore::ImageSource::frameSizeAtIndex):
2911 2008-08-14 Dan Bernstein <mitz@apple.com>
2913 Reviewed by Brady Eidson.
2915 - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
2917 * platform/graphics/BitmapImage.cpp:
2918 (WebCore::BitmapImage::BitmapImage): Added initialization of
2919 m_hasUniformFrameSize.
2920 (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
2921 cached frame for use in decoded size computation and for setting
2922 m_hasUniformFrameSize.
2923 (WebCore::BitmapImage::currentFrameSize): Added.
2924 (WebCore::BitmapImage::dataChanged): Added code to reset
2925 m_hasUniformFrameSize.
2926 * platform/graphics/BitmapImage.h: Added currentFrameSize() and
2927 m_hasUniformFrameSize.
2928 * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
2929 * platform/graphics/cg/ImageCG.cpp:
2930 (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
2931 fixes the bug, which resulted from assuming that the frame being drawn
2932 was the same size as the first frame.
2933 * platform/graphics/cg/ImageSourceCG.cpp:
2934 (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
2935 changed to get the size of the frame at the given index.
2936 (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
2938 2008-08-13 Simon Fraser <simon.fraser@apple.com>
2940 Reviewed by Eric Seidel
2942 Fix @font-face inside @media rule crash.
2943 https://bugs.webkit.org/show_bug.cgi?id=20367
2945 Test: fast/css/font-face-in-media-rule.html
2947 * css/CSSStyleSelector.cpp:
2948 (WebCore::CSSRuleSet::addRulesFromSheet):
2950 2008-08-14 Kevin Ollivier <kevino@theolliviers.com>
2952 wx build fixes after recent changes to Canvas and Image classes.
2954 * platform/graphics/Pattern.h:
2955 * platform/graphics/wx/GradientWx.cpp:
2956 (WebCore::Gradient::fill):
2957 * platform/graphics/wx/GraphicsContextWx.cpp:
2958 (WebCore::GraphicsContext::applyFillPattern):
2959 (WebCore::GraphicsContext::applyStrokePattern):
2960 * platform/graphics/wx/ImageBufferWx.cpp:
2961 (WebCore::ImageBuffer::image):
2962 * platform/graphics/wx/ImageWx.cpp:
2963 (WebCore::Image::loadPlatformResource):
2965 2008-08-14 Maxime Britto <britto@apple.com>
2967 Reviewed by Sam Weinig.
2970 When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
2971 IE and FF are both preventing the keyboard event to interact with the page while scrolling.
2972 Some differences exist between them concerning the kind of key which is pressed :
2973 IE7 : every key leads to a stop of the panning
2974 FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
2975 For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
2977 * page/EventHandler.cpp:
2978 (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
2980 2008-08-14 Christian Dywan <christian@twotoasts.de>
2982 Gtk+/ Cairo build fix, patch by Dirk Schulze.
2984 * html/CanvasStyle.cpp:
2985 * platform/graphics/cairo/PatternCairo.cpp:
2986 (WebCore::Pattern::createPlatformPattern):
2987 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
2989 2008-08-14 Kevin McCullough <kmccullough@apple.com>
2993 <rdar://problem/6115819> Notify of profile in console
2995 * page/InspectorController.cpp:
2996 (WebCore::InspectorController::addProfile):
2997 (WebCore::InspectorController::addProfileMessageToConsole): Called by
2998 addProfile this is the function that adds a message to the console that
3000 * page/InspectorController.h:
3001 * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
3002 the console log to the profile in the web inspector.
3003 (WebCore::getUniqueIdCallback):
3004 (WebCore::ProfileClass):
3005 * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
3006 Id to bring up the requested profile. Also select and reveal the
3007 profile in the profile panel. And created displayTitleForProfileLink()
3008 which formats a title taking into account if it's user initiated or if
3009 there are multiples. Lasty, I put the user initiated profile in a
3011 * page/inspector/inspector.js: Make the profile title be a clickable
3012 link that will take the user to the identified profile. Also expose
3013 the count of user initiated profiles so they can be displayed in the
3014 console with the correct count.
3016 2008-08-14 Timothy Hatcher <timothy@apple.com>
3018 Avoid formating ConsoleMessages twice unless the message will be
3019 displayed in bubbles of a SourceFrame.
3021 Reviewed by Kevin McCullough.
3023 * page/inspector/Console.js:
3024 (WebInspector.ConsoleMessage): Only format the plain text message
3025 if the URL and line are valid and the level is error or warning.
3026 (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
3027 Helper to test for error or warning level.
3028 * page/inspector/SourceFrame.js:
3029 (WebInspector.SourceFrame.prototype.addMessage): Don't add the
3030 message if there is no message or valid line or if the msg
3031 isn't an error or warning.
3033 2008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
3035 partial Gtk build fix, not reviewed
3037 * platform/graphics/cairo/PatternCairo.cpp:
3039 2008-08-13 Sam Weinig <sam@webkit.org>
3041 Reviewed by Anders Carlson.
3045 * html/HTMLMediaElement.cpp:
3046 (WebCore::HTMLMediaElement::pickMedia):
3048 2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
3050 Build fix for Cairo, not reviewed. (exposed by gtk build slave)
3051 Continue Erics build fixes, after the Image cleanup.
3053 * platform/graphics/cairo/ImageBufferCairo.cpp:
3054 (WebCore::ImageBuffer::image):
3056 2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
3058 Build fix for Qt, not reviewed.
3059 Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
3061 * dom/XMLTokenizer.cpp:
3062 (WebCore::eventuallyMarkAsParserCreated): Was erre
3064 2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
3066 Build fix, not reviewed.
3067 Add ScriptElement.cpp to Gtk build.
3071 2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
3075 Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
3077 Refactor HTMLScriptElement's code into a common base class: ScriptElement.
3078 SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
3080 This resolves code duplications and allows us to completly replace the old
3081 SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
3083 As ScriptElement, doesn't actually inherit from Element, we may want to rename
3084 it, though StyleElement uses the same naming convention, so I left it as is for now.
3085 Eventually we'll rename both files in future.
3087 No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
3089 * WebCore.pro: Add new ScriptElement.cpp to build.
3090 * WebCore.vcproj/WebCore.vcproj: Ditto.
3091 * WebCore.xcodeproj/project.pbxproj: Ditto.
3092 * WebCoreSources.bkl: Dutto.
3093 * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
3094 (WebCore::ScriptElement::insertedIntoDocument):
3095 (WebCore::ScriptElement::removedFromDocument):
3096 (WebCore::ScriptElement::childrenChanged):
3097 (WebCore::ScriptElement::finishParsingChildren):
3098 (WebCore::ScriptElement::handleSourceAttribute):
3099 (WebCore::isSupportedJavaScriptLanguage):
3100 (WebCore::ScriptElementData::ScriptElementData):
3101 (WebCore::ScriptElementData::~ScriptElementData):
3102 (WebCore::ScriptElementData::requestScript):
3103 (WebCore::ScriptElementData::evaluateScript):
3104 (WebCore::ScriptElementData::stopLoadRequest):
3105 (WebCore::ScriptElementData::notifyFinished):
3106 (WebCore::ScriptElementData::ignoresLoadRequest):
3107 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
3108 (WebCore::ScriptElementData::scriptCharset):
3109 (WebCore::ScriptElementData::scriptContent):
3110 * dom/ScriptElement.h: Added.
3111 (WebCore::ScriptElement::ScriptElement):
3112 (WebCore::ScriptElement::~ScriptElement):
3113 (WebCore::ScriptElementData::element):
3114 (WebCore::ScriptElementData::createdByParser):
3115 (WebCore::ScriptElementData::setCreatedByParser):
3116 * dom/XMLTokenizer.cpp:
3117 (WebCore::isScriptElement):
3118 (WebCore::castToScriptElement):
3119 (WebCore::eventuallyMarkAsParserCreated):
3120 (WebCore::XMLTokenizer::startElementNs):
3121 (WebCore::XMLTokenizer::endElementNs):
3122 (WebCore::createXHTMLParserErrorHeader):
3123 (WebCore::XMLTokenizer::insertErrorMessageBlock):
3124 * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
3125 (WebCore::HTMLScriptElement::HTMLScriptElement):
3126 (WebCore::HTMLScriptElement::~HTMLScriptElement):
3127 (WebCore::HTMLScriptElement::isURLAttribute):
3128 (WebCore::HTMLScriptElement::setCreatedByParser):
3129 (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
3130 (WebCore::HTMLScriptElement::childrenChanged):
3131 (WebCore::HTMLScriptElement::parseMappedAttribute):
3132 (WebCore::HTMLScriptElement::finishParsingChildren):
3133 (WebCore::HTMLScriptElement::insertedIntoDocument):
3134 (WebCore::HTMLScriptElement::removedFromDocument):
3135 (WebCore::HTMLScriptElement::text):
3136 (WebCore::HTMLScriptElement::setText):
3137 (WebCore::HTMLScriptElement::setHtmlFor):
3138 (WebCore::HTMLScriptElement::setEvent):
3139 (WebCore::HTMLScriptElement::charset):
3140 (WebCore::HTMLScriptElement::src):
3141 (WebCore::HTMLScriptElement::type):
3142 (WebCore::HTMLScriptElement::scriptCharset):
3143 (WebCore::HTMLScriptElement::scriptContent):
3144 (WebCore::HTMLScriptElement::sourceAttributeValue):
3145 (WebCore::HTMLScriptElement::charsetAttributeValue):
3146 (WebCore::HTMLScriptElement::typeAttributeValue):
3147 (WebCore::HTMLScriptElement::languageAttributeValue):
3148 (WebCore::HTMLScriptElement::dispatchLoadEvent):
3149 (WebCore::HTMLScriptElement::dispatchErrorEvent):
3150 * html/HTMLScriptElement.h:
3151 * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
3152 * svg/SVGScriptElement.cpp:
3153 (WebCore::SVGScriptElement::SVGScriptElement):
3154 (WebCore::SVGScriptElement::scriptContent):
3155 (WebCore::SVGScriptElement::sourceAttributeValue):
3156 (WebCore::SVGScriptElement::charsetAttributeValue):
3157 (WebCore::SVGScriptElement::typeAttributeValue):
3158 (WebCore::SVGScriptElement::languageAttributeValue):
3159 (WebCore::SVGScriptElement::dispatchLoadEvent):
3160 (WebCore::SVGScriptElement::dispatchErrorEvent):
3161 * svg/SVGScriptElement.h:
3162 (WebCore::SVGScriptElement::setCreatedByParser):
3164 2008-08-13 Eric Seidel <eric@webkit.org>
3166 Attempt to fix the Gtk build, no review.
3168 I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
3170 * platform/graphics/GraphicsContext.h:
3171 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3172 * platform/graphics/qt/GradientQt.cpp:
3173 * platform/graphics/qt/GraphicsContextQt.cpp:
3174 * platform/gtk/RenderThemeGtk.cpp:
3175 (WebCore::paintMozWidget):
3177 2008-08-13 Eric Seidel <eric@webkit.org>
3179 Yet another attempt to fix the Qt build, no review.
3181 * platform/graphics/qt/GradientQt.cpp:
3182 * platform/graphics/qt/GraphicsContextQt.cpp:
3183 (WebCore::GraphicsContext::applyStrokePattern):
3184 (WebCore::GraphicsContext::applyFillPattern):
3186 2008-08-13 Eric Seidel <eric@webkit.org>
3188 Attempt to fix the Windows build, no review.
3190 * platform/win/CursorWin.cpp:
3191 (WebCore::loadCursorByName):
3192 * platform/win/ScrollViewWin.cpp:
3193 (WebCore::ScrollView::paint):
3195 2008-08-13 Eric Seidel <eric@webkit.org>
3197 Attempt to fix the Windows build, no review.
3199 * platform/win/CursorWin.cpp:
3200 (WebCore::loadCursorByName):
3201 * platform/win/ScrollViewWin.cpp:
3202 (WebCore::ScrollView::paint):
3204 2008-08-13 Eric Seidel <eric@webkit.org>
3206 Attempt to fix the Qt build, no review.
3208 * platform/graphics/qt/ImageBufferQt.cpp:
3209 (WebCore::ImageBuffer::image):
3211 2008-08-13 Eric Seidel <eric@webkit.org>
3213 Attempt to fix the Windows build, no review.
3215 * platform/graphics/win/ImageWin.cpp:
3216 (WebCore::Image::loadPlatformResource):
3217 * plugins/win/PluginViewWin.cpp:
3218 (WebCore::PluginView::paintMissingPluginIcon):
3220 2008-08-13 Eric Seidel <eric@webkit.org>
3222 Another attempt to fix the Qt build, no review.
3224 * platform/graphics/qt/ImageQt.cpp:
3225 * platform/graphics/qt/StillImageQt.h:
3227 2008-08-13 Eric Seidel <eric@webkit.org>
3229 No review, build fix only.
3231 Fix mac build, due to change in new code since my patch was written.
3233 * svg/graphics/cg/SVGResourceMaskerCg.mm:
3234 (WebCore::SVGResourceMasker::applyMask):
3236 2008-08-13 Eric Seidel <eric@webkit.org>
3238 Build fix only, no review.
3240 Attempt to fix the Qt build.
3242 * platform/graphics/qt/ImageBufferQt.cpp:
3243 * platform/graphics/qt/StillImageQt.h:
3244 (WebCore::StillImage::create):
3245 (WebCore::StillImage::destroyDecodedData):
3246 (WebCore::StillImage::decodedSize):
3248 2008-08-13 Eric Seidel <eric@webkit.org>
3250 Build fix only, no review.
3252 Attempt to fix the Qt build.
3254 * html/CanvasStyle.cpp:
3255 (WebCore::CanvasStyle::applyStrokeColor):
3256 (WebCore::CanvasStyle::applyFillColor):
3258 2008-08-13 Eric Seidel <eric@webkit.org>
3262 Match HTML5 spec by throwing INVALID_STATE_ERR when
3263 createPattern is called and the HTMLImageElement is not
3264 yet done loading the image (!isComplete)
3265 https://bugs.webkit.org/show_bug.cgi?id=20351
3267 Test: http/misc/canvas-pattern-from-incremental-image.html
3269 * html/CanvasRenderingContext2D.cpp:
3270 (WebCore::CanvasRenderingContext2D::createPattern):
3272 2008-08-13 Eric Seidel <eric@webkit.org>
3276 Split out a Pattern class from CanvasPattern
3277 and remove all the Pattern-related #ifdefs
3278 (This will break non-mac platforms! I will fix them.)
3279 https://bugs.webkit.org/show_bug.cgi?id=20351
3283 * WebCore.vcproj/WebCore.vcproj:
3284 * WebCore.xcodeproj/project.pbxproj:
3285 * WebCoreSources.bkl:
3286 * html/CanvasPattern.cpp:
3287 (WebCore::CanvasPattern::parseRepetitionType):
3288 (WebCore::CanvasPattern::CanvasPattern):
3289 * html/CanvasPattern.h:
3290 (WebCore::CanvasPattern::create):
3291 (WebCore::CanvasPattern::pattern):
3292 (WebCore::CanvasPattern::originClean):
3293 * html/CanvasRenderingContext2D.cpp:
3294 (WebCore::CanvasRenderingContext2D::createPattern):
3295 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
3296 (WebCore::CanvasRenderingContext2D::applyFillPattern):
3297 * html/CanvasRenderingContext2D.h:
3298 * html/HTMLCanvasElement.cpp:
3299 * html/HTMLCanvasElement.h:
3300 * loader/FrameLoader.cpp:
3301 (WebCore::FrameLoader::createHistoryItem):
3302 * platform/graphics/GraphicsContext.h:
3303 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3304 (WebCore::GraphicsContext::applyStrokePattern):
3305 (WebCore::GraphicsContext::applyFillPattern):
3306 * platform/graphics/cg/GraphicsContextCG.cpp:
3307 (WebCore::GraphicsContext::clipToImageBuffer):
3308 (WebCore::GraphicsContext::applyStrokePattern):
3309 (WebCore::GraphicsContext::applyFillPattern):
3311 2008-08-13 Eric Seidel <eric@webkit.org>
3315 Make Images RefCounted (and clean up callers)
3316 https://bugs.webkit.org/show_bug.cgi?id=20351
3318 * editing/DeleteButtonController.cpp:
3319 (WebCore::DeleteButtonController::createDeletionUI):
3320 * loader/CachedImage.cpp:
3321 (WebCore::CachedImage::CachedImage):
3322 (WebCore::brokenImage):
3323 (WebCore::nullImage):
3324 (WebCore::CachedImage::image):
3325 (WebCore::CachedImage::notifyObservers):
3326 (WebCore::CachedImage::createImage):
3327 * loader/CachedImage.h:
3328 * loader/icon/IconRecord.cpp:
3329 (WebCore::IconRecord::setImageData):
3330 (WebCore::IconRecord::loadImageFromResource):
3331 * loader/icon/IconRecord.h:
3332 * platform/graphics/BitmapImage.h:
3333 (WebCore::BitmapImage::create):
3334 * platform/graphics/GeneratedImage.h:
3335 * platform/graphics/Gradient.cpp:
3336 * platform/graphics/Gradient.h:
3337 * platform/graphics/Image.cpp:
3338 (WebCore::Image::nullImage):
3339 * platform/graphics/Image.h:
3340 * platform/graphics/ImageBuffer.h:
3341 * platform/graphics/cairo/ImageBufferCairo.cpp:
3342 (WebCore::ImageBuffer::image):
3343 * platform/graphics/cg/ImageBufferCG.cpp:
3344 (WebCore::ImageBuffer::image):
3345 (WebCore::ImageBuffer::getImageData):
3346 (WebCore::ImageBuffer::putImageData):
3347 * platform/graphics/cg/PDFDocumentImage.h:
3348 (WebCore::PDFDocumentImage::create):
3349 (WebCore::PDFDocumentImage::destroyDecodedData):
3350 (WebCore::PDFDocumentImage::decodedSize):
3351 * platform/graphics/gtk/ImageGtk.cpp:
3352 (WebCore::Image::loadPlatformResource):
3353 * platform/graphics/mac/ImageMac.mm:
3354 (WebCore::Image::loadPlatformResource):
3355 * rendering/RenderImage.cpp:
3356 * rendering/RenderLayer.cpp:
3357 (WebCore::RenderLayer::paintOverflowControls):
3358 * svg/graphics/SVGImage.cpp:
3359 (WebCore::SVGImage::nativeImageForCurrentFrame):
3360 * svg/graphics/SVGImage.h:
3361 (WebCore::SVGImage::create):
3362 (WebCore::SVGImage::destroyDecodedData):
3363 (WebCore::SVGImage::decodedSize):
3364 (WebCore::SVGImage::frameAtIndex):
3365 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
3366 (WebCore::SVGPaintServerPattern::setup):
3367 * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
3368 (WebCore::SVGResourceMasker::applyMask):
3369 * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
3370 (WebCore::patternCallback):
3371 * svg/graphics/cg/SVGResourceMaskerCg.mm:
3372 (WebCore::SVGResourceMasker::applyMask):
3374 2008-08-13 Eric Seidel <eric@webkit.org>
3378 Remove #ifdefs from CanvasStyle by using platform/Color.h
3379 https://bugs.webkit.org/show_bug.cgi?id=20351
3381 There are some down-sides to this commit.
3382 This commit limits us to 255 levels of grey for calls like:
3383 context.setStrokeStyle(.37, 1.0)
3384 previously CG might have used up to 32bits to store the grey level
3385 Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
3387 Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
3388 to RGBA32 (like all the rest of colors in WebCore), thus:
3389 context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
3390 context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
3392 If this is a problem for Dashboard, we can either roll out this commit
3393 or add a beefier Color abstraction, which can be used internally by GraphicsContext
3394 when keeping state, and then GraphicsContext can grow some additional set* routines
3395 for setting the a grey/float/whatever fill and stroke.
3397 * html/CanvasRenderingContext2D.cpp:
3398 (WebCore::CanvasRenderingContext2D::setFillStyle):
3399 * html/CanvasStyle.cpp:
3400 (WebCore::CanvasStyle::CanvasStyle):
3401 (WebCore::colorWithOverrideAlpha):
3402 (WebCore::CanvasStyle::applyStrokeColor):
3403 (WebCore::CanvasStyle::applyFillColor):
3404 * html/CanvasStyle.h:
3405 * platform/graphics/Color.cpp:
3406 (WebCore::colorFloatToRGBAByte):
3407 (WebCore::makeRGBA32FromFloats):
3408 * platform/graphics/Color.h:
3410 2008-08-13 Eric Carlson <eric.carlson@apple.com>
3412 Reviewed by Adele Peterson.
3414 Fix for <rdar://problem/6137931>
3415 https://bugs.webkit.org/show_bug.cgi?id=20360
3416 Remove all parameters from the MIME type before checking with the MIME type registry
3418 Tests: media/video-source-type-params.html
3420 * html/HTMLMediaElement.cpp:
3421 (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
3422 to isSupportedMediaMIMEType()
3424 2008-08-13 Beth Dakin <bdakin@apple.com>
3426 Reviewed by Sam Weinig.
3428 Fix for <rdar://problem/6141345>
3430 This patch refines findString and markAllMatchesForText functions'
3431 interactions with disconnected frames. They no longer rely on
3432 knowing where a range is relative to the visible region and work
3433 with disconnected frames that contain frames.
3435 * editing/Editor.cpp:
3436 (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
3438 (WebCore::Editor::firstVisibleRange): This now returns the very
3439 first visible range in the document. It's no longer dependent on
3441 (WebCore::Editor::lastVisibleRange): This now returns the very last
3442 visible range in the document. It's no longer dependent on
3443 searching backwards.
3444 (WebCore::Editor::nextVisibleRange): This returns the next visible
3445 range in the appropriate direction from the current range.
3448 (WebCore::Frame::findString):
3449 (WebCore::Frame::markAllMatchesForText):
3451 2008-08-13 Kevin Ollivier <kevino@theolliviers.com>
3453 wx build fix for case-sensitive platforms, like Linux.
3455 * WebCoreSources.bkl:
3457 2008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
3459 Reviewed by Holger Freyther.
3461 http://bugs.webkit.org/show_bug.cgi?id=16881
3462 [GTK] PlatformScreenGtk is unimplemented
3464 Original patch by Christian Dywan.
3466 * platform/gtk/PlatformScreenGtk.cpp:
3467 (WebCore::screenDepth):
3468 (WebCore::screenDepthPerComponent):
3469 (WebCore::screenIsMonochrome):
3470 (WebCore::screenRect):
3471 (WebCore::screenAvailableRect):
3473 2008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
3475 Reviewed by Holger Freyther.
3477 http://bugs.webkit.org/show_bug.cgi?id=20318
3478 SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
3480 g_idle_add is the same as g_idle_add_full with a priority of
3481 G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
3483 * platform/gtk/SharedTimerGtk.cpp:
3484 (WebCore::setSharedTimerFireTime):
3486 2008-08-13 Timothy Hatcher <timothy@apple.com>
3488 Changed the InspectorController so it can be notified when the
3489 attached state of the Inspector changes in WebKit.
3491 Reviewed by Kevin McCullough.
3493 * WebCore.base.exp: Updated the symbol for setWindowVisible.
3494 * page/InspectorController.cpp:
3495 (WebCore::InspectorController::setWindowVisible): Added an attached argument,
3496 that defaults to false.Call setAttachedWindow with the attached argument.
3497 (WebCore::InspectorController::setAttachedWindow): Call the script version
3498 of setAttachedWindow.
3499 * page/InspectorController.h:
3500 * page/inspector/inspector.js:
3501 (WebInspector.setAttachedWindow): Set the attached property.
3503 2008-08-12 Timothy Hatcher <timothy@apple.com>
3505 Added a close button to the Inspector's toolbar when docked.
3507 https://bugs.webkit.org/show_bug.cgi?id=14270
3509 Reviewed by Kevin McCullough.
3511 * page/InspectorController.cpp:
3512 (WebCore::closeWindow): Call InspectorController::closeWindow.
3513 (WebCore::InspectorController::windowScriptObjectAvailable):
3514 Added closeWindow to the script class.
3515 * page/InspectorController.h:
3516 * page/inspector/Images/closeButtons.png: Added.
3517 * page/inspector/inspector.css: Added and changed styles.
3518 * page/inspector/inspector.html: Added the close button.
3519 * page/inspector/inspector.js:
3520 (WebInspector.loaded): Added click event listener to the close button.
3521 (WebInspector.close): Call InspectorController.closeWindow.
3523 2008-08-12 Timothy Hatcher <timothy@apple.com>
3525 Make the docked Web Inspector resizable. This is the cross platform
3526 portion of the code. Each InspectorClient needs to implement the
3529 https://bugs.webkit.org/show_bug.cgi?id=14282
3531 Reviewed by Kevin McCullough.
3533 * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
3534 * page/InspectorClient.h: Added setAttachedWindowHeight.
3535 * page/InspectorController.cpp:
3536 (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
3537 on the InspectorController.
3538 (WebCore::InspectorController::setAttachedWindowHeight): Call
3539 setAttachedWindowHeight on the client.
3540 (WebCore::InspectorController::windowScriptObjectAvailable):
3541 Added setAttachedWindowHeight to the script class.
3542 * page/InspectorController.h:
3543 * page/inspector/inspector.css: Make the cursor on the toolbar be
3544 row-resize when docked.
3545 * page/inspector/inspector.js:
3546 (WebInspector.loaded): Always add the toolbarDragStart event listener.
3547 (WebInspector.toolbarDragStart): Return early if we are not attached
3548 and not on Leopard. Call WebInspector.elementDragStart.
3549 (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
3550 (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
3551 otherwise call moveByUnrestricted.
3553 2008-08-13 Simon Hausmann <hausmann@webkit.org>
3557 Initialize m_zoomsTextOnly in the Settings constructor.
3559 * page/Settings.cpp:
3560 (WebCore::Settings::Settings):
3562 2008-08-13 Brad Hughes <bhughes@trolltech.com>
3566 Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
3568 The latest upgrade of the intel compiler allows us to compile all of
3569 Qt with optimizations enabled (yay!).
3573 2008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
3577 Fix QtWebKit not displaying content on 403 HTTP responses
3579 Just like with 404 responses also display content with 403, as
3580 used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
3582 * platform/network/qt/QNetworkReplyHandler.cpp:
3583 (WebCore::QNetworkReplyHandler::finish):
3585 2008-08-13 Simon Hausmann <hausmann@webkit.org>
3589 Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
3591 Make the formatting of String::format() locale independent through the use of QString::vsprintf.
3593 * platform/text/String.cpp:
3594 (WebCore::String::format):
3596 2008-08-13 Simon Hausmann <hausmann@webkit.org>
3600 Fix QWebFrame::setHtml() not setting the new contents immediately.
3602 Added a setter to the DocumentLoader to toggle the deferred loading of the main
3603 resource when it comes from substitute data.
3605 Disable deferred loading of the main resource when we have valid substitute data,
3606 as used by QWebFrame::setHtml.
3608 * loader/DocumentLoader.h:
3610 2008-08-13 Mark Rowe <mrowe@apple.com>
3612 Speculative GTK build fix.
3614 * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
3616 2008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
3620 Fix encoding of [ and ] in the host part of the URL
3622 Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
3623 add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
3624 doesn't encode [ and ] when they are found in the host part. That is, the
3627 is valid and should not be reencoded to:
3630 * platform/qt/KURLQt.cpp:
3631 (WebCore::KURL::operator QUrl):
3633 2008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
3635 Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
3636 Broken HTML object elements cause de-reference of pointer to freed memory.
3637 If we fail to load an image for an object tag and we no longer believe the object tag points at
3638 an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
3641 Reviewed by Dave Hyatt and Alexey Proskuryakov.
3643 Test: http/tests/misc/object-image-error-with-onload.html
3645 * html/HTMLObjectElement.cpp:
3646 (WebCore::HTMLObjectElement::renderFallbackContent):
3648 (WebCore::Frame::Frame):
3650 2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
3654 Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
3655 Masks are translated, and the mask images are swapped on the y-axis.
3657 Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
3658 is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
3660 Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
3661 the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
3663 * svg/graphics/cg/SVGResourceMaskerCg.mm:
3664 (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
3666 2008-08-12 Dan Bernstein <mitz@apple.com>
3668 - WebCore part of <rdar://problem/6121636>
3669 Make fast*alloc() abort() on failure and add "try" variants that
3670 return NULL on failure.
3672 Reviewed by Darin Adler.
3674 * platform/Arena.cpp:
3675 (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
3677 * platform/graphics/cg/ImageBufferCG.cpp:
3678 (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
3680 2008-08-12 Dan Bernstein <mitz@apple.com>
3682 Reviewed by Darin Adler.
3684 - fix https://bugs.webkit.org/show_bug.cgi?id=19348
3685 <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
3687 Test: fast/frames/frameset-style-recalc.html
3689 * html/HTMLFrameSetElement.cpp:
3690 (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
3691 class implementation after marking for layout.
3693 2008-08-12 Dan Bernstein <mitz@apple.com>
3695 Reviewed by John Sullivan.
3697 - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
3700 * page/FrameView.cpp:
3701 (WebCore::FrameViewPrivate::FrameViewPrivate):
3702 (WebCore::FrameView::shouldUpdateWhileHidden):
3703 (WebCore::FrameView::setShouldUpdateWhileHidden):
3705 * page/Settings.cpp:
3708 2008-08-12 Adam Roben <aroben@apple.com>
3712 * bindings/js/JSSVGPODTypeWrapper.h: Align
3713 JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
3714 members on 16-byte boundaries to avoid an alignment warning.
3716 2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
3720 Add new dynamice-update layout tests covering SVGMarkerElement.
3721 Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
3722 Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
3724 Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
3725 svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
3726 svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
3727 svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
3728 svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
3729 svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
3730 svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
3731 svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
3732 svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
3733 svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
3734 svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
3735 svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
3736 svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
3737 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
3738 svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
3740 * svg/SVGMarkerElement.cpp:
3741 (WebCore::SVGMarkerElement::SVGMarkerElement):
3742 (WebCore::SVGMarkerElement::parseMappedAttribute):
3743 (WebCore::SVGMarkerElement::svgAttributeChanged):
3744 (WebCore::SVGMarkerElement::childrenChanged):
3745 (WebCore::SVGMarkerElement::setOrientToAuto):
3746 (WebCore::SVGMarkerElement::setOrientToAngle):
3747 (WebCore::SVGMarkerElement::canvasResource):
3749 2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
3753 Add new dynamic-update layout tests covering SVGImageElement.
3754 Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
3756 Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
3757 svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
3758 svg/dynamic-updates/SVGImageElement-dom-width-attr.html
3759 svg/dynamic-updates/SVGImageElement-dom-x-attr.html
3760 svg/dynamic-updates/SVGImageElement-dom-y-attr.html
3761 svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
3762 svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
3763 svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
3764 svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
3765 svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
3767 * svg/SVGImageElement.cpp:
3768 (WebCore::SVGImageElement::svgAttributeChanged):
3770 2008-08-11 Anthony Ricaud <rik24d@gmail.com>
3772 Changed Option/Alt-Up or Down in CSS editing when the value is
3773 near zero to jump to the next integer.
3775 Reviewed by Tim Hatcher.
3777 https://bugs.webkit.org/show_bug.cgi?id=20326
3779 * page/inspector/StylesSidebarPane.js:
3781 2008-08-11 Anthony Ricaud <rik24d@gmail.com>
3783 Changed the line highlight transition for an easier animation.
3785 Reviewed by Tim Hatcher.
3787 * page/inspector/SourceFrame.js:
3789 2008-08-11 Keishi Hattori <casey.hattori@gmail.com>
3791 Added support for some Firebug Command Line APIs.
3793 Reviewed by Tim Hatcher.
3795 https://bugs.webkit.org/show_bug.cgi?id=19867
3796 https://bugs.webkit.org/show_bug.cgi?id=19868
3797 https://bugs.webkit.org/show_bug.cgi?id=19869
3798 https://bugs.webkit.org/show_bug.cgi?id=19875
3799 https://bugs.webkit.org/show_bug.cgi?id=19876
3800 https://bugs.webkit.org/show_bug.cgi?id=19880
3802 * page/inspector/Console.js:
3803 (WebInspector.Console.prototype._evalInInspectedWindow):
3804 Create an object on the inspected window that holds the console
3805 command line API functions. This object is used in a with statement
3806 around the typed expression.
3808 2008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
3812 Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
3814 JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
3815 failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
3817 Added tests: svg/custom/svg-modify-currentTranslate.html
3818 svg/custom/tearoffs-with-tearoffs.html
3819 svg/custom/immutable-properties.html
3821 Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
3823 * bindings/js/JSSVGPODTypeWrapper.h:
3824 (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
3825 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
3826 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
3827 (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
3828 (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
3829 (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
3830 (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
3831 (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
3832 * bindings/scripts/CodeGenerator.pm:
3833 * bindings/scripts/CodeGeneratorJS.pm:
3834 * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
3835 * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
3837 2008-08-11 Brady Eidson <beidson@apple.com>
3839 Reviewed by John and Anders
3841 Fix for <rdar://problem/6141797>
3843 When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
3844 would never have nil data.
3846 When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
3847 semantics with some WebKit applications.
3849 The guarantee was a good one and should be restored.
3851 Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
3852 creates an empty data object in the case of null data for its own purposes.
3854 * loader/SubstituteResource.h:
3855 (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
3856 well help any future subclassers not make this mistake.
3858 * loader/archive/ArchiveResource.cpp:
3859 (WebCore::ArchiveResource::create): Return 0 if the data is null.
3861 2008-08-11 Simon Fraser <simon.fraser@apple.com>
3863 Reviewed by Dave Hyatt
3865 https://bugs.webkit.org/show_bug.cgi?id=20328
3866 Fix a problem when an 'all' transition transition with more than
3867 one property changing is interrupted, and did some AnimationController
3870 Test: transitions/interrupted-all-transition.html
3872 * page/AnimationController.cpp:
3873 (WebCore::ImplicitAnimation::ImplicitAnimation):
3874 (WebCore::AnimationControllerPrivate::blendProperties):
3875 (WebCore::CompositeAnimation::updateTransitions):
3876 (WebCore::CompositeAnimation::cleanupFinishedAnimations):
3877 (WebCore::CompositeAnimation::setTransitionStartTime):
3878 (WebCore::CompositeAnimation::overrideImplicitAnimations):
3879 (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
3880 (WebCore::ImplicitAnimation::animate):
3881 (WebCore::ImplicitAnimation::onAnimationEnd):
3882 (WebCore::ImplicitAnimation::sendTransitionEvent):
3883 (WebCore::ImplicitAnimation::affectsProperty):
3884 (WebCore::KeyframeAnimation::endAnimation):
3885 (WebCore::KeyframeAnimation::onAnimationEnd):
3887 2008-08-11 Kevin McCullough <kmccullough@apple.com>
3891 - Because console messages have group levels now, newly created messages
3892 that do not specify the level lose their message since the number of
3895 * page/inspector/Console.js:
3896 * page/inspector/Resource.js:
3898 2008-08-11 Alp Toker <alp@nuanti.com>
3900 Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
3901 the opportunity to sort the sources lists.
3905 2008-08-11 Timothy Hatcher <timothy@apple.com>
3907 Speed up the the JavaScript syntax highlighter by generating
3908 the finders only once per script instead of per line.
3910 https://bugs.webkit.org/show_bug.cgi?id=20346
3912 Reviewed by Adam Roben.
3914 * page/inspector/SourceFrame.js:
3915 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
3916 Removed, factored into syntaxHighlightJavascript as an inline function.
3917 (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
3918 Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
3919 Generate the finders before iterating the lines.
3921 2008-08-11 Adam Roben <aroben@apple.com>
3925 * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
3926 JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
3929 2008-08-11 Dan Bernstein <mitz@apple.com>
3931 Reviewed by Darin Adler.
3933 - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
3935 Test: fast/css/counters/invalidate-cached-counter-node.html
3937 * rendering/RenderContainer.cpp:
3938 (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
3939 RenderCounters in :before and :after content.
3940 * rendering/RenderContainer.h:
3941 * rendering/RenderCounter.cpp:
3942 (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
3943 to match the RenderObject method.
3944 (WebCore::RenderCounter::invalidate): Added. Resets the cached
3945 CounterNode and invalidates the object's layout and preferred widths.
3946 (WebCore::destroyCounterNodeChildren): Added a call to
3947 invalidateCounters().
3948 * rendering/RenderCounter.h:
3949 * rendering/RenderObject.h:
3950 (WebCore::RenderObject::invalidateCounters):
3952 2008-08-11 Dean Jackson <dino@apple.com>
3954 Implement CSS Animation and Transition Events
3955 https://bugs.webkit.org/show_bug.cgi?id=20337
3957 Implement the events defined in the CSS Animations
3958 and Transitions specifications so code can react
3959 to animations and transitions.
3961 Reviewed by Tim Hatcher and Dave Hyatt.
3963 * DerivedSources.make:
3966 * WebCore.vcproj/WebCore.vcproj:
3967 * WebCore.xcodeproj/project.pbxproj:
3968 * WebCoreSources.bkl:
3969 Build configs for new files
3971 * bindings/js/JSDOMWindowBase.cpp:
3972 * bindings/js/JSDOMWindowBase.h:
3973 * bindings/js/JSEventCustom.cpp:
3977 * dom/EventTarget.cpp:
3978 * dom/EventTargetNode.cpp:
3979 * dom/EventTargetNode.h:
3980 * html/HTMLElement.cpp:
3981 * page/AnimationController.cpp:
3982 do all the new event stuff
3984 * html/HTMLAttributeNames.in:
3985 the onwebkitanimation* and onwebkittransitionend attrs
3987 * dom/WebKitAnimationEvent.cpp: Added.
3988 * dom/WebKitAnimationEvent.h: Added.
3989 * dom/WebKitAnimationEvent.idl: Added.
3990 * dom/WebKitTransitionEvent.cpp: Added.
3991 * dom/WebKitTransitionEvent.h: Added.
3992 * dom/WebKitTransitionEvent.idl: Added.
3993 New files for the events
3995 * manual-tests/transition-events.html: Added.
3998 2008-08-11 Adam Roben <aroben@apple.com>
4000 Add a ForwardingHeader for wtf/NotFound.h
4002 Rubberstamped by Darin Adler.
4004 * ForwardingHeaders/wtf/NotFound.h: Added.
4006 2008-08-11 Timothy Hatcher <timothy@apple.com>
4008 Fixes a bug where error bubbles in JavaScript resources would
4009 be clobbered by the syntax highlighter.
4011 https://bugs.webkit.org/show_bug.cgi?id=20345
4013 Reviewed by Adam Roben.
4015 * manual-tests/inspector/resources/script-error.js: Added.
4016 * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
4017 * page/inspector/SourceFrame.js:
4018 (WebInspector.SourceFrame.prototype._addMessageToSource):
4019 Check the nodeType and not the nodeName, this is less fragile.
4020 (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
4021 Check if the lastChild is an error bubble, if so remove it before
4022 getting the line's textContent. Add the error bubble back at the end.
4024 == Rolled over to ChangeLog-2008-08-10 ==