1 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
5 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9492
6 Fix or remove window.debug.
8 It was only available in newly created windows, and became undefined after changing the URL
9 or reloading. Let's try removing it; hopefully, no-one will notice.
11 * bindings/js/kjs_proxy.cpp:
12 (WebCore::KJSProxy::initScriptIfNeeded): Don't add window.debug.
14 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
18 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8972
19 REGRESSION: invalid UTF-8 sequences are not displayed
21 Test: LayoutTests/fast/encoding/invalid-UTF-8.html
23 * dom/xml_tokenizer.cpp:
24 (WebCore::getXHTMLEntity): Properly null-terminate the result. This didn't matter
25 before, because the garbage at the end was guaranteed to be invalid UTF-8, and was
26 omitted in appendOmittingUnwanted();
28 * platform/StreamingTextDecoder.cpp:
29 (WebCore::StreamingTextDecoder::appendOmittingBOM): Only omit BOM characters.
30 Renamed back from appendOmittingUnwanted();
32 (WebCore::StreamingTextDecoder::convertUsingICU):
33 * platform/StreamingTextDecoder.h:
34 Update for the above function renaming.
36 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
40 http://bugzilla.opendarwin.org/show_bug.cgi?id=9498
41 Remove dead code left in JSHTMLDocument::getOwnPropertySlot() from r14298 (Bug 7838)
43 * bindings/js/kjs_html.cpp:
44 (KJS::JSHTMLDocument::getOwnPropertySlot): Remove dead code.
46 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
50 * manual-tests/redraw-page-cache-visited-links.html: Changed to use DOM mouse event.
52 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
56 - Update a manual test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9150
57 DumpRenderTree should be able to keep URL history during runs
59 * manual-tests/redraw-page-cache-visited-links.html: Added note about window.history hack.
60 Fixed coordinates for mouse events. Added call to keepWebHistory().
61 * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added note about
64 2006-06-17 Anders Carlsson <acarlsson@apple.com>
68 * bindings/js/kjs_binding.cpp:
69 (KJS::ScriptInterpreter::ScriptInterpreter):
70 Set the default script timeout.
72 (KJS::ScriptInterpreter::shouldInterruptScript):
73 New function which asks the frame if the script should be interrupted.
75 * bindings/js/kjs_binding.h:
77 * bindings/js/kjs_events.cpp:
78 (KJS::JSAbstractEventListener::handleEvent):
79 * bindings/js/kjs_proxy.cpp:
80 (WebCore::KJSProxy::evaluate):
81 Add calls to startTimeoutCheck/stopTimeoutCheck
83 * bindings/js/kjs_window.cpp:
84 (KJS::WindowFunc::callAsFunction):
85 Add calls to pauseTimeoutCheck/unpauseTimeoutCheck
87 (KJS::ScheduledAction::execute):
88 Add calls to startTimeoutCheck/stopTimeoutCheck
90 * bridge/mac/FrameMac.h:
91 * bridge/mac/FrameMac.mm:
92 (WebCore::FrameMac::shouldInterruptJavaScript):
93 New function which asks the bridge if the script should be interrupted.
95 * bridge/mac/WebCoreFrameBridge.h:
97 Add function declarations.
99 2006-06-17 Alexey Proskuryakov <ap@nypop.com>
103 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8131
104 Some properties and methods of window and document objects cannot be converted to a string
106 Most of the properties were already fixed, this just adds adds a prototype to window.debug.
108 Test: fast/dom/everything-to-string.html
110 * bindings/js/kjs_proxy.cpp:
111 (WebCore::TestFunctionImp::TestFunctionImp):
112 (WebCore::KJSProxy::initScriptIfNeeded):
114 2006-06-17 David Kilzer <ddkilzer@kilzer.net>
118 - Fix capitalization issue for case-sensitive filesystems.
120 * icon/SQLStatement.cpp: Change assertions.h to Assertions.h.
122 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
126 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7395
127 Table not properly re-flowed when floated div removed from layout
129 Test: fast/block/float/table-relayout.html
131 * rendering/RenderBlock.cpp:
132 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): Added marking
133 of children that use lineWidth.
134 * rendering/RenderBlock.h: Added a FIXME.
136 2006-06-17 Rob Buis <buis@kde.org>
140 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6282:
141 Adding new Option with new Option(text, value, defaultSelected, selected) fails to update selectedIndex
143 Update selectedIndex when a new option is added using javascript.
145 * bindings/js/kjs_html.cpp:
146 (KJS::JSHTMLSelectCollection::put):
147 * html/HTMLSelectElement.cpp:
148 (WebCore::HTMLSelectElement::setSelectedIndex):
149 (WebCore::HTMLSelectElement::setOption):
150 (WebCore::HTMLSelectElement::setLength):
151 * html/HTMLSelectElement.h:
153 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
157 - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
158 Assertion failure when dragging an image from the document into Safari's address bar
160 * manual-tests/reset-initiatedDrag.html: Added.
162 2006-06-16 David Kilzer <ddkilzer@kilzer.net>
166 http://bugzilla.opendarwin.org/show_bug.cgi?id=9463
167 REGRESSION (r14879): Assertion failure in CSSParser::sinkFloatingSelector()
168 (m_floatingSelectors.contains(selector)) in some CSS tests
170 * css/CSSGrammar.y: Create CSSSelector for FUNCTION using CSSParser::createFloatingSelector()
171 instead of the bare constructor.
173 2006-06-16 David Harrison <harrison@apple.com>
177 <rdar://problem/4565312> Mail has a weird drawing artifact with dotted red lines running across the window
179 Problem was that revision lost a check to not draw the markers
180 when paintingDisabled(). This led the markers to be drawn when
181 the window deactivated, at which time the view happens to be flipped.
183 It is similar but not the same as the Mail ToDo highlighting
184 issue, which is due to the custom highlight method
185 drawing when the focusView is nil. Mail team knows this
186 and has tested the fix.
188 * platform/mac/GraphicsContextMac.mm:
189 (WebCore::GraphicsContext::drawLineForMisspelling):
190 Early return if paintingDisabled().
192 2006-06-16 Adele Peterson <adele@apple.com>
196 Adjust padding of inner div so text lines up with text fields.
197 Adjust height of textarea so it only leaves room for the horizontal
198 scrollbar if overflow is set to scroll, or if overflow is set to
199 auto and there's no word wrap.
201 These changes will be tested by current layout tests when the
202 new textarea implementation takes effect.
204 * rendering/RenderTextField.cpp:
205 (WebCore::RenderTextField::createDivStyle):
206 (WebCore::RenderTextField::calcHeight):
208 2006-06-16 John Sullivan <sullivan@apple.com>
212 - fixed <rdar://problem/4590062> crash in marker code with particular set of steps on daringfireball.net
215 (WebCore::Document::addMarker):
216 Store [it - markers.begin()] in a local variable before modifying markers, since modifying markers can
217 change value of [it - markers.begin()].
219 2006-06-16 Adele Peterson <adele@apple.com>
223 Added code to draw Cocoa-like border for textareas instead of just using CSS.
226 * css/html4.css: Sets a 1px solid border.
227 * platform/mac/WebCoreSystemInterface.h:
228 * platform/mac/WebCoreSystemInterface.mm:
229 * rendering/RenderThemeMac.h: Formatting changes.
230 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextArea):
231 Uses new wkDrawBezeledTextArea to draw border.
233 2006-06-16 Mitz Pettel <opendarwin.org@mitzpettel.com>
237 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9432
238 REGRESSION: crash in capitalization code due to empty-string generated content
240 Test: fast/text/capitalize-empty-generated-string.html
242 * rendering/RenderText.cpp:
243 (WebCore::RenderText::setText): Skip empty-string text renderers when
244 looking for the previous character.
246 2006-06-15 Justin Garcia <justin.garcia@apple.com>
250 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8637>
251 REGRESSION (11-16-05): Selection gaps left behind after delete
253 * editing/SelectionController.cpp:
254 (WebCore::SelectionController::nodeWillBeRemoved): Invalidate the selection so that
255 selection gaps are invalidated.
257 2006-06-15 Timothy Hatcher <timothy@apple.com>
259 Reviewed by Geoff and Darin.
261 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
263 * WebCore.xcodeproj/project.pbxproj:
265 2006-06-15 Justin Garcia <justin.garcia@apple.com>
269 * editing/CompositeEditCommand.cpp:
270 (WebCore::hasARenderedDescendant):
271 (WebCore::CompositeEditCommand::prune): Ascend using the DOM
272 (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
273 during deletion is fixed, removing the fall back.
275 2006-06-15 Nicholas Shanks <contact@nickshanks.com>
277 Reviewed by Hyatt, landed by Joost de Valk.
279 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3233
281 Add support for the :lang pseudo-class.
284 * css/CSSSelector.cpp:
285 (WebCore::CSSSelector::operator == ):
287 (WebCore::CSSSelector::CSSSelector):
289 (WebCore::CSSParser::lex):
290 * css/cssstyleselector.cpp:
291 (WebCore::CSSStyleSelector::checkOneSelector):
292 * css/tokenizer.flex:
294 2006-06-15 Justin Garcia <justin.garcia@apple.com>
298 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9456>
299 REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
302 (WebCore::Frame::findString): When comparing the found range with
303 what's currently selected a) build a selection with the found
304 range to remove collapsed whitespace and b) compare ranges
305 instead of selection objects to ignore the way that the
306 current selection was made (to ignore the base and extent).
308 2006-06-15 David Kilzer <ddkilzer@kilzer.net>
312 http://bugzilla.opendarwin.org/show_bug.cgi?id=9382
313 IDL files missing copyright/license headers
315 Add Apple BSD license and copyright to IDL files.
317 * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
318 * ksvg2/bindings/idl/svg/SVGAElement.idl:
319 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
320 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
321 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
322 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
323 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
324 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
325 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
326 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
327 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
328 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
329 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
330 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
331 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
332 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
333 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
334 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
335 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
336 * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
337 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
338 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
339 * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
340 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
341 * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
342 * ksvg2/bindings/idl/svg/SVGDescElement.idl:
343 * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
344 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
345 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl:
346 * ksvg2/bindings/idl/svg/SVGEvent.idl:
347 * ksvg2/bindings/idl/svg/SVGException.idl:
348 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl:
349 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl:
350 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl:
351 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl:
352 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl:
353 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl:
354 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl:
355 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl:
356 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl:
357 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl:
358 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl:
359 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl:
360 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl:
361 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl:
362 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl:
363 * ksvg2/bindings/idl/svg/SVGFETileElement.idl:
364 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl:
365 * ksvg2/bindings/idl/svg/SVGFilterElement.idl:
366 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl:
367 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl:
368 * ksvg2/bindings/idl/svg/SVGGElement.idl:
369 * ksvg2/bindings/idl/svg/SVGGradientElement.idl:
370 * ksvg2/bindings/idl/svg/SVGICCColor.idl:
371 * ksvg2/bindings/idl/svg/SVGImageElement.idl:
372 * ksvg2/bindings/idl/svg/SVGLangSpace.idl:
373 * ksvg2/bindings/idl/svg/SVGLengthList.idl:
374 * ksvg2/bindings/idl/svg/SVGLineElement.idl:
375 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl:
376 * ksvg2/bindings/idl/svg/SVGLocatable.idl:
377 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl:
378 * ksvg2/bindings/idl/svg/SVGNumberList.idl:
379 * ksvg2/bindings/idl/svg/SVGPaint.idl:
380 * ksvg2/bindings/idl/svg/SVGPathElement.idl:
381 * ksvg2/bindings/idl/svg/SVGPathSeg.idl:
382 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl:
383 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl:
384 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl:
385 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl:
386 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl:
387 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl:
388 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl:
389 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl:
390 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl:
391 * ksvg2/bindings/idl/svg/SVGPathSegList.idl:
392 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl:
393 * ksvg2/bindings/idl/svg/SVGPatternElement.idl:
394 * ksvg2/bindings/idl/svg/SVGPointList.idl:
395 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl:
396 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl:
397 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl:
398 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl:
399 * ksvg2/bindings/idl/svg/SVGRectElement.idl:
400 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl:
401 * ksvg2/bindings/idl/svg/SVGScriptElement.idl:
402 * ksvg2/bindings/idl/svg/SVGSetElement.idl:
403 * ksvg2/bindings/idl/svg/SVGStopElement.idl:
404 * ksvg2/bindings/idl/svg/SVGStringList.idl:
405 * ksvg2/bindings/idl/svg/SVGStylable.idl:
406 * ksvg2/bindings/idl/svg/SVGStyleElement.idl:
407 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl:
408 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl:
409 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl:
410 * ksvg2/bindings/idl/svg/SVGTests.idl:
411 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl:
412 * ksvg2/bindings/idl/svg/SVGTextElement.idl:
413 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl:
414 * ksvg2/bindings/idl/svg/SVGTitleElement.idl:
415 * ksvg2/bindings/idl/svg/SVGTransformList.idl:
416 * ksvg2/bindings/idl/svg/SVGTransformable.idl:
417 * ksvg2/bindings/idl/svg/SVGURIReference.idl:
418 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl:
419 * ksvg2/bindings/idl/svg/SVGUseElement.idl:
420 * ksvg2/bindings/idl/svg/SVGViewElement.idl:
421 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl:
422 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl:
423 * ksvg2/svg/SVGAnimatedLength.idl:
425 2006-06-14 Justin Garcia <justin.garcia@apple.com>
429 <rdar://problem/4439248>
430 REGRESSION(412-417): [RTL] Serious problem with RTL signatures in Mail.app in 10.4.4 (7766)
432 * editing/markup.cpp:
433 (WebCore::renderedText): Use plainText so that we'll pull rendered text but in DOM order.
435 2006-06-14 Levi Weintraub <lweintraub@apple.com>
439 <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
440 TinyMCE: Implement execCommand(formatBlock, ...)
442 * WebCore.xcodeproj/project.pbxproj: Added FormatBlock.{h,cpp} to the project.
443 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
444 * bridge/mac/WebCoreFrameBridge.h: Added WebUndoActions
445 * editing/CompositeEditCommand.cpp:
446 (WebCore::CompositeEditCommand::moveParagraph): Added a preserveStyle bool.
447 (WebCore::CompositeEditCommand::moveParagraphs): Ditto. downstream() the start
448 or else we'll move collapsed whitespace and uncollapse it.
449 * editing/CompositeEditCommand.h:
450 * editing/DeleteSelectionCommand.cpp:
451 (WebCore::DeleteSelectionCommand::initializePositionData):
452 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Don't update m_endingPosition
453 because that's removeNode's responsibility.
454 (WebCore::updatePositionForNodeRemoval): Added.
455 (WebCore::DeleteSelectionCommand::removeNode): Turned removeFullySelectedNode into a virtual
456 overload of removeNode so that we can update positions as we remove nodes.
457 (WebCore::updatePositionForTextRemoval): Added.
458 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
459 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
460 (WebCore::DeleteSelectionCommand::fixupWhitespace): Got rid of m_trailingWhitespaceValid
461 since m_trailingWhitespace is always valid (we update it as we remove nodes).
462 (WebCore::DeleteSelectionCommand::mergeParagraphs):
463 (WebCore::DeleteSelectionCommand::doApply): Leading and trailing spaces should
464 be fixed if they have collapsed before merging paragraphs.
465 * editing/DeleteSelectionCommand.h:
466 * editing/EditAction.h:
468 * editing/FormatBlockCommand.cpp: Added.
469 (WebCore::FormatBlockCommand::FormatBlockCommand):
470 (WebCore::FormatBlockCommand::modifyRange): Similar to InsertListCommand::modifyRange().
471 (WebCore::FormatBlockCommand::doApply):
472 * editing/FormatBlockCommand.h: Added.
473 (WebCore::FormatBlockCommand::editingAction):
474 * editing/InsertListCommand.h:
475 (WebCore::InsertListCommand::editingAction):
476 * editing/JSEditor.cpp:
477 * editing/MergeIdenticalElementsCommand.cpp:
478 (WebCore::MergeIdenticalElementsCommand::doApply):
479 * editing/htmlediting.cpp:
480 (WebCore::validBlockTag):
481 (WebCore::createElement):
482 * editing/htmlediting.h:
484 2006-06-14 Maciej Stachowiak <mjs@apple.com>
488 - fixed <rdar://problem/4586051> 10.4.7 regression: 'Saved and recent' button on mapquest.com does not work
490 * dom/EventTargetNode.cpp:
491 (WebCore::EventTargetNode::dispatchWindowEvent):
493 2006-06-14 David Hyatt <hyatt@apple.com>
495 Rename RenderSlider to DeprecatedSlider, so that I can start work on
496 the new NSView-less slider.
500 * WebCore.vcproj/WebCore/WebCore.vcproj:
501 * WebCore.xcodeproj/project.pbxproj:
502 * html/HTMLInputElement.cpp:
503 (WebCore::HTMLInputElement::createRenderer):
504 * rendering/DeprecatedSlider.cpp: Added.
505 (WebCore::DeprecatedSlider::DeprecatedSlider):
506 (WebCore::DeprecatedSlider::calcMinMaxWidth):
507 (WebCore::DeprecatedSlider::updateFromElement):
508 (WebCore::DeprecatedSlider::valueChanged):
509 * rendering/DeprecatedSlider.h: Added.
510 (WebCore::DeprecatedSlider::renderName):
511 * rendering/RenderSlider.cpp: Removed.
512 * rendering/RenderSlider.h: Removed.
514 2006-06-13 Geoffrey Garen <ggaren@apple.com>
518 - Fixed <rdar://problem/4562192> Creating a new DOMHTMLDocument
521 - Added createHTMLDocument to Objc bindings, fixed up implementation
522 to comply with the DOM 2 Candidate Recommendation in which is was defined.
523 (It never made the final spec.) Also removed use of deprecatedString,
524 to avoid unnecessary killing of puppies.
526 * WebCore.xcodeproj/project.pbxproj:
527 * bindings/objc/DOM.mm:
528 (-[DOMImplementation createHTMLDocument:]):
529 * bindings/objc/DOMPrivate.h:
530 * dom/DOMImplementation.cpp:
531 (WebCore::DOMImplementation::createDocument):
532 (WebCore::DOMImplementation::createHTMLDocument):
534 2006-06-13 Alice Liu <alice.liu@apple.com>
538 fixed <rdar://problem/4457902> HTMLSelectElement.remove() can't handle an option obj being passed to it, results in hang on http://www.ibc-solar.de/www_ibc/fst_solarmonitoring.jsp
540 * bindings/js/kjs_html.cpp:
541 (KJS::HTMLElementFunction::callAsFunction):
542 support this by converting the argument to an options object
543 before passing to remove()
545 2006-06-13 Darin Adler <darin@apple.com>
549 - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
551 This patch fixes a bug where the event listener cache does not distinguish
552 HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
553 prevented default masked a case of this bug on the yahoo.com home page until
554 we fixed bug 5180 on 2005-10-03.
556 Test: fast/events/event-listener-html-non-html-confusion.html
558 * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
560 * bindings/js/kjs_window.cpp:
561 (KJS::Window::~Window): Go through the additional maps when clearing the window object
562 pointer in event listeners.
563 (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
565 (KJS::Window::getJSUnprotectedEventListener): Ditto.
567 * bindings/js/kjs_events.cpp:
568 (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
569 or non-HTML map depending on the argument passed.
570 (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
571 HTML or non-HTML map depending on whether the HTML flag is set.
572 (KJS::JSEventListener::JSEventListener): More of the same.
573 (KJS::JSEventListener::~JSEventListener): Ditto.
574 (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
575 is not a listener at construction time, thus the code here to put the listener into a
576 map needs the HTML vs. non-HTML logic.
578 2006-06-13 Maciej Stachowiak <mjs@apple.com>
582 <rdar://problem/4583892> 10.4.7 regression: Hang occurs when attempting to load search results at mapquest.com
584 * dom/EventTargetNode.cpp:
585 (WebCore::EventTargetNode::dispatchGenericEvent): Don't allow
586 "load" events to propagate up to the window. We need this quirk to
587 avoid site hangs, because they depend on an old Mozilla bug.
589 2006-06-13 Antti Koivisto <koivisto@iki.fi>
593 http://bugzilla.opendarwin.org/show_bug.cgi?id=9314
594 Relative positioned block size doesnt update root layer size
596 - take relative positioning into account in leftmost/rightmost/lowestPosition()
597 - ignore zero width/height boxes in leftmost/rightmost/lowestPosition()
598 - split relativePositionOffset() to x and y functions
600 * rendering/RenderBox.cpp:
601 (WebCore::RenderBox::absolutePosition):
602 (WebCore::RenderBox::relativePositionOffsetX):
603 (WebCore::RenderBox::relativePositionOffsetY):
604 (WebCore::RenderBox::lowestPosition):
605 (WebCore::RenderBox::rightmostPosition):
606 (WebCore::RenderBox::leftmostPosition):
607 * rendering/RenderBox.h:
608 * rendering/RenderFlow.cpp:
609 (WebCore::RenderFlow::lowestPosition):
610 (WebCore::RenderFlow::rightmostPosition):
611 (WebCore::RenderFlow::leftmostPosition):
612 * rendering/RenderLayer.cpp:
613 (WebCore::RenderLayer::updateLayerPosition):
614 * rendering/RenderObject.cpp:
615 (WebCore::RenderObject::offsetLeft):
616 (WebCore::RenderObject::offsetTop):
618 2006-06-13 Anders Carlsson <acarlsson@apple.com>
620 Reviewed by Dave Hyatt.
622 http://bugzilla.opendarwin.org/show_bug.cgi?id=9427
623 xml-stylesheet processing instructions outside of the prolog should have no effect.
625 * dom/ProcessingInstruction.cpp:
626 (WebCore::ProcessingInstruction::checkStyleSheet):
629 * dom/xml_tokenizer.cpp:
630 (WebCore::XMLTokenizer::processingInstruction):
631 Only check for style sheet if the root element hasn't yet been encountered.
633 2006-06-13 Anders Carlsson <acarlsson@apple.com>
637 http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
638 REGRESSION: fix for bug 9390 broke two layout tests
640 * loader/PluginDocument.cpp:
641 (WebCore::PluginTokenizer::writeRawData):
642 Call finished() after setting up the document structure so we'll emit onload events.
644 2006-06-12 Geoffrey Garen <ggaren@apple.com>
646 build fix -- forgot to svn add this file
648 * ForwardingHeaders/kjs/SavedBuiltins.h: Added.
650 2006-06-12 Brady Eidson <beidson@apple.com>
654 Fixed a bug in append(char) and append(UChar) where our intended copy-on-write semantics was ignored!
656 * platform/String.cpp:
657 (WebCore::String::append):
659 2006-06-12 Geoffrey Garen <ggaren@apple.com>
661 Reviewed by TimO, Maciej.
663 - WebCore part of merging InterpreterImp into Interpreter. No test
664 because there's no behavior change.
666 A substantive change here is that ScriptInterpreter::mark must now chain to
667 Interpreter::mark, since Interpreter needs to mark the things that
668 InterpreterImp used to mark.
670 * WebCore.xcodeproj/project.pbxproj:
671 * bindings/js/kjs_binding.cpp:
672 * bindings/js/kjs_window.cpp:
674 * bridge/mac/WebCoreFrameBridge.mm:
675 * bridge/mac/WebCoreScriptDebugger.mm:
676 (-[WebCoreScriptCallFrame evaluateWebScript:]):
677 * kwq/KWQPageState.mm:
679 2006-06-12 Brady Eidson <beidson@apple.com>
683 Changed String::ascii() to return a Vector<char> instead of const char*
684 This allows us to use it "regularly" as the returned vector will destruct
685 and not leak memory like the previous approach.
686 We can now do a String.ascii().data() to get a char* buffer instead of
687 String.deprecatedString().ascii(). It doesn't improve the style much but
688 dumping the memory-leak issue is a plus.
690 * icon/IconDatabase.cpp:
691 (WebCore::IconDatabase::open):
692 (WebCore::IconDatabase::clearDatabase):
693 * icon/SQLDatabase.cpp:
695 * icon/SQLStatement.cpp:
696 (WebCore::SQLStatement::prepare):
697 (WebCore::SQLStatement::step):
698 (WebCore::SQLStatement::returnTextResults):
699 (WebCore::SQLStatement::returnTextResults16):
700 (WebCore::SQLStatement::returnIntResults):
701 (WebCore::SQLStatement::returnInt64Results):
702 (WebCore::SQLStatement::returnDoubleResults):
703 In addition to the changes to the string classes, changed my database code over to the new
706 * platform/PlatformString.h:
707 * platform/String.cpp:
708 (WebCore::String::ascii):
709 * platform/StringImpl.cpp:
710 (WebCore::StringImpl::ascii):
711 * platform/StringImpl.h:
713 2006-06-12 Dave Hyatt <hyatt@apple.com>
715 Add the notion of a selection foreground color to the engine for
716 Win32. Rename existing selectionColor methods to be
717 selectionBackgroundColor instead.
719 Change the 60% alpha blend rule for transparent selection to
720 instead be a range from 60-80%, with less transparency being
721 used as needed to ensure the transformed color more closely
722 approximates the original operating system color when blended
723 with a white background.
727 * platform/Color.cpp:
729 (WebCore::Color::blendWithWhite):
731 * rendering/InlineTextBox.cpp:
732 (WebCore::InlineTextBox::paint):
733 (WebCore::InlineTextBox::paintSelection):
734 * rendering/RenderBlock.cpp:
735 (WebCore::RenderBlock::fillHorizontalSelectionGap):
736 (WebCore::RenderBlock::fillVerticalSelectionGap):
737 (WebCore::RenderBlock::fillLeftSelectionGap):
738 (WebCore::RenderBlock::fillRightSelectionGap):
739 * rendering/RenderHTMLCanvas.cpp:
740 (WebCore::RenderHTMLCanvas::paint):
741 * rendering/RenderImage.cpp:
742 (WebCore::RenderImage::paint):
743 * rendering/RenderListMarker.cpp:
744 (WebCore::RenderListMarker::paint):
745 * rendering/RenderObject.cpp:
746 (WebCore::RenderObject::selectionBackgroundColor):
747 (WebCore::RenderObject::selectionForegroundColor):
748 * rendering/RenderObject.h:
749 * rendering/RenderTheme.cpp:
750 (WebCore::RenderTheme::activeSelectionBackgroundColor):
751 (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
752 (WebCore::RenderTheme::platformActiveSelectionBackgroundColor):
753 (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
754 (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
755 (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
756 * rendering/RenderTheme.h:
757 * rendering/RenderThemeMac.h:
758 * rendering/RenderThemeMac.mm:
759 (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
760 (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
761 * rendering/RenderThemeWin.cpp:
762 (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
763 (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
764 (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
765 (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
766 * rendering/RenderThemeWin.h:
767 * rendering/RenderWidget.cpp:
768 (WebCore::RenderWidget::paint):
770 2006-06-12 John Sullivan <sullivan@apple.com>
772 Reviewed by Darin Adler.
775 (WebCore::Frame::markAllMatchesForText):
776 Do a "fake" paint here so that the rectangles for the text matches will have been
777 computed by the time this method returns.
779 2006-06-12 Brady Eidson <beidson@apple.com>
781 Reviewed by Levi and Tim Omernick.
783 -Added a skeleton sqlite3 icon database file to IconDatabase
784 -Added functionality to validate and recreate this icon.db file
785 -Fixed some buggys in SQLDatabase.cpp
787 * icon/IconDatabase.cpp:
788 (WebCore::IconDatabase::open):
789 (WebCore::IconDatabase::isValidDatabase):
790 (WebCore::IconDatabase::clearDatabase):
791 (WebCore::IconDatabase::recreateDatabase):
792 * icon/IconDatabase.h:
794 * icon/SQLStatement.cpp:
795 (WebCore::SQLStatement::columnCount):
796 (WebCore::SQLStatement::getColumnName):
797 (WebCore::SQLStatement::getColumnName16):
798 (WebCore::SQLStatement::getColumnText):
799 (WebCore::SQLStatement::getColumnText16):
800 (WebCore::SQLStatement::getColumnDouble):
801 (WebCore::SQLStatement::getColumnInt):
802 (WebCore::SQLStatement::getColumnInt64):
803 (WebCore::SQLStatement::getColumnBlob):
804 -Added checks to make sure we had a valid working sqlite3_statement as the sqlite3_*
805 function calls weren't as error-tolerant as documentation advertised
806 (maybe differences between the 3.3 docs I looked at and the 3.1.3 version installed on OSX)
808 2006-06-12 Brady Eidson <beidson@apple.com>
812 -Added SQLite helper wrappers to ease use of SQLite in the IconDatabase.
813 -Changed the base IconDatabase over to this new framework.
815 * WebCore.xcodeproj/project.pbxproj:
816 * bridge/mac/WebCoreIconDatabaseBridge.mm:
817 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
818 -By popular request, removed an annoying log message I'd accidentally left in
820 * icon/IconDatabase.cpp:
821 (WebCore::IconDatabase::IconDatabase):
822 (WebCore::IconDatabase::open):
823 (WebCore::IconDatabase::close):
824 (WebCore::IconDatabase::~IconDatabase):
825 * icon/IconDatabase.h:
826 (WebCore::IconDatabase::isOpen):
827 -Changed over IconDatabase from direct sqlite3_* calls to the new SQLDatabase calls
829 * icon/SQLDatabase.cpp: Added.
830 (SQLDatabase::SQLDatabase):
832 (SQLDatabase::close):
833 (SQLDatabase::executeCommand):
834 (SQLDatabase::tableExists):
835 * icon/SQLDatabase.h: Added.
836 (WebCore::SQLDatabase::isOpen):
837 (WebCore::SQLDatabase::getPath):
838 (WebCore::SQLDatabase::lastError):
839 (WebCore::SQLDatabase::lastErrorMsg):
840 (WebCore::SQLStatement::isPrepared):
841 (WebCore::SQLStatement::lastError):
842 (WebCore::SQLStatement::lastErrorMsg):
843 * icon/SQLStatement.cpp: Added.
844 (WebCore::SQLStatement::SQLStatement):
845 (WebCore::SQLStatement::~SQLStatement):
846 (WebCore::SQLStatement::prepare):
847 (WebCore::SQLStatement::step):
848 (WebCore::SQLStatement::finalize):
849 (WebCore::SQLStatement::reset):
850 (WebCore::SQLStatement::executeCommand):
851 (WebCore::SQLStatement::bindBlob):
852 (WebCore::SQLStatement::bindText):
853 (WebCore::SQLStatement::columnCount):
854 (WebCore::SQLStatement::getColumnName):
855 (WebCore::SQLStatement::getColumnName16):
856 (WebCore::SQLStatement::getColumnText):
857 (WebCore::SQLStatement::getColumnText16):
858 (WebCore::SQLStatement::getColumnDouble):
859 (WebCore::SQLStatement::getColumnInt):
860 (WebCore::SQLStatement::getColumnInt64):
861 (WebCore::SQLStatement::getColumnBlob):
862 (WebCore::SQLStatement::returnTextResults):
863 (WebCore::SQLStatement::returnTextResults16):
864 (WebCore::SQLStatement::returnIntResults):
865 (WebCore::SQLStatement::returnInt64Results):
866 (WebCore::SQLStatement::returnDoubleResults):
867 -Initial checking of SQLDatabase framework
869 * platform/PlatformString.h:
870 * platform/String.cpp:
871 (WebCore::String::String):
872 -Added an explicit UChar* constructor to our string class as much of sqlite3's UTF16 handling is based on
873 null-terminated UTF16 which we didn't yet support.
875 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
879 http://bugzilla.opendarwin.org/show_bug.cgi?id=9408
880 Clean build fails with "make: *** No rule to make target `SVGElementFactory.cpp', needed by `all'. Stop"
882 * DerivedSources.make: Fix clean builds.
884 2006-06-11 Darin Adler <darin@apple.com>
886 - another try at fixing Windows
888 * loader/CachedResource.h:
889 * platform/cairo/GraphicsContextCairo.cpp:
890 * platform/image-decoders/ImageDecoder.h:
891 (WebCore::ImageDecoder::setData):
892 * platform/image-decoders/gif/GIFImageDecoder.cpp:
893 (WebCore::GIFImageDecoderPrivate::decode):
894 (WebCore::GIFImageDecoder::setData):
895 * platform/image-decoders/gif/GIFImageDecoder.h:
896 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
897 (WebCore::JPEGImageReader::decode):
898 (WebCore::JPEGImageDecoder::setData):
899 * platform/image-decoders/jpeg/JPEGImageDecoder.h:
900 * platform/image-decoders/png/PNGImageDecoder.cpp:
901 (WebCore::PNGImageReader::decode):
902 (WebCore::PNGImageDecoder::setData):
903 * platform/image-decoders/png/PNGImageDecoder.h:
904 s/DeprecatedByteArray/Vector<char>/
906 2006-06-11 Darin Adler <darin@apple.com>
908 - try to fix Windows build
910 * platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource):
911 Use Vector<char> instead of DeprecatedByteArray.
913 * platform/win/TemporaryLinkStubs.cpp: (KWQServeSynchronousRequest):
914 Don't try to return 0 from a function that returns a Vector<char>.
916 2006-06-11 Sam Weinig <sam.weinig@gmail.com>
918 Reviewed by Hyatt, tweaked quite a bit and landed by Darin.
920 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8039
921 Remove use of DeprecatedArray in favor of new Vector class
923 This removes most of the uses of DeprecatedArray and
924 DeprecatedByteArray, with the exception of DeprecatedCString.
926 No test cases added because there is no change in
929 * loader/CachedCSSStyleSheet.cpp:
930 (WebCore::CachedCSSStyleSheet::data):
931 * loader/CachedCSSStyleSheet.h:
932 * loader/CachedImage.cpp:
933 (WebCore::CachedImage::bufferData):
934 (WebCore::CachedImage::data):
935 (WebCore::CachedImage::checkNotify):
936 (WebCore::CachedImage::shouldStopAnimation):
937 * loader/CachedImage.h:
938 * loader/CachedObject.cpp:
939 (WebCore::CachedObject::bufferData):
940 (WebCore::CachedObject::setExpireDate):
941 * loader/CachedObject.h:
942 (WebCore::CachedObject::setCharset):
943 * loader/CachedScript.cpp:
944 (WebCore::CachedScript::data):
945 * loader/CachedScript.h:
946 * loader/CachedXBLDocument.cpp:
947 (WebCore::CachedXBLDocument::data):
948 (WebCore::CachedXBLDocument::checkNotify):
949 * loader/CachedXBLDocument.h:
950 * loader/CachedXSLStyleSheet.cpp:
951 (WebCore::CachedXSLStyleSheet::data):
952 * loader/CachedXSLStyleSheet.h:
953 * loader/Request.cpp:
954 (WebCore::Request::Request):
955 (WebCore::Request::~Request):
957 (WebCore::Request::buffer):
958 (WebCore::Request::cachedObject):
959 (WebCore::Request::docLoader):
960 (WebCore::Request::isIncremental):
961 (WebCore::Request::setIsIncremental):
962 (WebCore::Request::isMultipart):
963 (WebCore::Request::setIsMultipart):
965 (WebCore::crossDomain):
966 (WebCore::Loader::Loader):
967 (WebCore::Loader::load):
968 (WebCore::Loader::servePendingRequests):
969 (WebCore::Loader::receivedAllData):
970 (WebCore::Loader::receivedResponse):
971 (WebCore::Loader::receivedData):
972 (WebCore::Loader::numRequests):
973 (WebCore::Loader::cancelRequests):
974 (WebCore::Loader::removeBackgroundDecodingRequest):
975 (WebCore::Loader::jobForRequest):
976 * platform/Image.cpp:
977 (WebCore::Image::setData):
979 (WebCore::Image::dataBuffer):
981 * css/cssstyleselector.cpp:
982 (WebCore::CSSStyleSelector::init):
983 (WebCore::CSSStyleSelector::matchRules):
984 (WebCore::CSSStyleSelector::matchRulesForList):
985 (WebCore::CSSStyleSelector::sortMatchedRules):
986 (WebCore::CSSStyleSelector::initForStyleResolve):
987 (WebCore::CSSStyleSelector::createStyleForElement):
988 (WebCore::CSSStyleSelector::createPseudoStyleForElement):
989 * css/cssstyleselector.h:
990 (WebCore::CSSStyleSelector::addMatchedRule):
991 (WebCore::CSSStyleSelector::addMatchedDeclaration):
992 * dom/xml_tokenizer.cpp:
993 (WebCore::OffsetBuffer::OffsetBuffer):
995 * html/HTMLOptionElement.cpp:
996 (WebCore::HTMLOptionElement::index):
997 * html/HTMLSelectElement.cpp:
998 (WebCore::HTMLSelectElement::selectedIndex):
999 (WebCore::HTMLSelectElement::setSelectedIndex):
1000 (WebCore::HTMLSelectElement::length):
1001 (WebCore::HTMLSelectElement::remove):
1002 (WebCore::HTMLSelectElement::value):
1003 (WebCore::HTMLSelectElement::setValue):
1004 (WebCore::HTMLSelectElement::state):
1005 (WebCore::HTMLSelectElement::restoreState):
1006 (WebCore::HTMLSelectElement::appendFormData):
1007 (WebCore::HTMLSelectElement::optionToListIndex):
1008 (WebCore::HTMLSelectElement::listToOptionIndex):
1009 (WebCore::HTMLSelectElement::recalcListItems):
1010 (WebCore::HTMLSelectElement::reset):
1011 (WebCore::HTMLSelectElement::notifyOptionSelected):
1012 * html/HTMLSelectElement.h:
1013 (WebCore::HTMLSelectElement::listItems):
1016 (KWQServeSynchronousRequest):
1017 * kwq/KWQTextStream.cpp:
1018 (QTextStream::operator<<):
1019 * kwq/KWQTextStream.h:
1020 * loader/FormData.cpp:
1021 (WebCore::FormData::flatten):
1022 (WebCore::FormData::flattenToString):
1023 * loader/FormData.h:
1024 (WebCore::FormDataElement::FormDataElement):
1025 * platform/DeprecatedString.cpp:
1026 * platform/DeprecatedString.h:
1027 * platform/IntPointArray.cpp: Removed.
1028 * platform/IntPointArray.h: Removed.
1029 * platform/TextEncoding.cpp:
1030 (WebCore::TextEncoding::toUnicode):
1031 * platform/TextEncoding.h:
1032 * platform/cairo/pixman/src/pixregion.c:
1033 * platform/cg/PathCG.cpp:
1034 (WebCore::Path::Path):
1035 * rendering/RenderObject.cpp:
1036 (WebCore::RenderObject::drawBorder):
1037 * rendering/RenderTable.h:
1038 (WebCore::RenderTable::colToEffCol):
1039 (WebCore::RenderTable::effColToCol):
1040 * rendering/RenderTableSection.cpp:
1041 (WebCore::RenderTableSection::ensureRows):
1042 (WebCore::RenderTableSection::addCell):
1043 (WebCore::RenderTableSection::setCellWidths):
1044 * rendering/RenderTableSection.h:
1045 * rendering/bidi.cpp:
1046 (WebCore::addMidpoint):
1047 (WebCore::RenderBlock::layoutInlineChildren):
1048 * rendering/render_form.cpp:
1049 (WebCore::RenderSelect::updateFromElement):
1050 (WebCore::RenderSelect::layout):
1051 (WebCore::RenderSelect::valueChanged):
1052 (WebCore::RenderSelect::selectionChanged):
1053 (WebCore::RenderSelect::updateSelection):
1054 * rendering/table_layout.cpp:
1055 (WebCore::FixedTableLayout::layout):
1056 * rendering/table_layout.h:
1057 * xml/XSLTProcessor.cpp:
1058 (WebCore::docLoaderFunc):
1059 * xml/xmlhttprequest.cpp:
1060 (WebCore::XMLHttpRequest::send):
1061 (WebCore::XMLHttpRequest::processSyncLoadResults):
1062 * xml/xmlhttprequest.h:
1064 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
1068 http://bugzilla.opendarwin.org/show_bug.cgi?id=9394
1071 * DerivedSources.make: Removed tabs. Create empty SVGElementFactory.cpp on no-svg build.
1072 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Added #if SVG_SUPPORT/#endif.
1073 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Ditto.
1074 * ksvg2/bindings/idl/svg/SVGAElement.idl: Add "Conditional=SVG" to all interfaces.
1075 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl: Ditto.
1076 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl: Ditto.
1077 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl: Ditto.
1078 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl: Ditto.
1079 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl: Ditto.
1080 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl: Ditto.
1081 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl: Ditto.
1082 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl: Ditto.
1083 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Ditto.
1084 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl: Ditto.
1085 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl: Ditto.
1086 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl: Ditto.
1087 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl: Ditto.
1088 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl: Ditto.
1089 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl: Ditto.
1090 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl: Ditto.
1091 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl: Ditto.
1092 * ksvg2/bindings/idl/svg/SVGCircleElement.idl: Ditto.
1093 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl: Ditto.
1094 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl: Ditto.
1095 * ksvg2/bindings/idl/svg/SVGCursorElement.idl: Ditto.
1096 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Ditto.
1097 * ksvg2/bindings/idl/svg/SVGDefsElement.idl: Ditto.
1098 * ksvg2/bindings/idl/svg/SVGDescElement.idl: Ditto.
1099 * ksvg2/bindings/idl/svg/SVGElementInstance.idl: Ditto.
1100 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl: Ditto.
1101 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: Ditto.
1102 * ksvg2/bindings/idl/svg/SVGEvent.idl: Ditto.
1103 * ksvg2/bindings/idl/svg/SVGException.idl: Ditto.
1104 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl: Ditto.
1105 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl: Ditto.
1106 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl: Ditto.
1107 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl: Ditto.
1108 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl: Ditto.
1109 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl: Ditto.
1110 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl: Ditto.
1111 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl: Ditto.
1112 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl: Ditto.
1113 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl: Ditto.
1114 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl: Ditto.
1115 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl: Ditto.
1116 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl: Ditto.
1117 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl: Ditto.
1118 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl: Ditto.
1119 * ksvg2/bindings/idl/svg/SVGFETileElement.idl: Ditto.
1120 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl: Ditto.
1121 * ksvg2/bindings/idl/svg/SVGFilterElement.idl: Ditto.
1122 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl: Ditto.
1123 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl: Ditto.
1124 * ksvg2/bindings/idl/svg/SVGGElement.idl: Ditto.
1125 * ksvg2/bindings/idl/svg/SVGGradientElement.idl: Ditto.
1126 * ksvg2/bindings/idl/svg/SVGICCColor.idl: Ditto.
1127 * ksvg2/bindings/idl/svg/SVGImageElement.idl: Ditto.
1128 * ksvg2/bindings/idl/svg/SVGLangSpace.idl: Ditto.
1129 * ksvg2/bindings/idl/svg/SVGLengthList.idl: Ditto.
1130 * ksvg2/bindings/idl/svg/SVGLineElement.idl: Ditto.
1131 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl: Ditto.
1132 * ksvg2/bindings/idl/svg/SVGLocatable.idl: Ditto.
1133 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl: Ditto.
1134 * ksvg2/bindings/idl/svg/SVGNumberList.idl: Ditto.
1135 * ksvg2/bindings/idl/svg/SVGPaint.idl: Ditto.
1136 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Ditto.
1137 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Ditto.
1138 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Ditto.
1139 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Ditto.
1140 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Ditto.
1141 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Ditto.
1142 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Ditto.
1143 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Ditto.
1144 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Ditto.
1145 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Ditto.
1146 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Ditto.
1147 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Ditto.
1148 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Ditto.
1149 * ksvg2/bindings/idl/svg/SVGPatternElement.idl: Ditto.
1150 * ksvg2/bindings/idl/svg/SVGPointList.idl: Ditto.
1151 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl: Ditto.
1152 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl: Ditto.
1153 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl: Ditto.
1154 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl: Ditto.
1155 * ksvg2/bindings/idl/svg/SVGRectElement.idl: Ditto.
1156 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl: Ditto.
1157 * ksvg2/bindings/idl/svg/SVGScriptElement.idl: Ditto.
1158 * ksvg2/bindings/idl/svg/SVGSetElement.idl: Ditto.
1159 * ksvg2/bindings/idl/svg/SVGStopElement.idl: Ditto.
1160 * ksvg2/bindings/idl/svg/SVGStringList.idl: Ditto.
1161 * ksvg2/bindings/idl/svg/SVGStylable.idl: Ditto.
1162 * ksvg2/bindings/idl/svg/SVGStyleElement.idl: Ditto.
1163 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl: Ditto.
1164 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl: Ditto.
1165 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl: Ditto.
1166 * ksvg2/bindings/idl/svg/SVGTests.idl: Ditto.
1167 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl: Ditto.
1168 * ksvg2/bindings/idl/svg/SVGTextElement.idl: Ditto.
1169 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl: Ditto.
1170 * ksvg2/bindings/idl/svg/SVGTitleElement.idl: Ditto.
1171 * ksvg2/bindings/idl/svg/SVGTransformList.idl: Ditto.
1172 * ksvg2/bindings/idl/svg/SVGTransformable.idl: Ditto.
1173 * ksvg2/bindings/idl/svg/SVGURIReference.idl: Ditto.
1174 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl: Ditto.
1175 * ksvg2/bindings/idl/svg/SVGUseElement.idl: Ditto.
1176 * ksvg2/bindings/idl/svg/SVGViewElement.idl: Ditto.
1177 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl: Ditto.
1178 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl: Ditto.
1179 * ksvg2/svg/SVGAngle.idl: Ditto.
1180 * ksvg2/svg/SVGAnimatedLength.idl: Ditto.
1181 * ksvg2/svg/SVGColor.idl: Ditto.
1182 * ksvg2/svg/SVGDocument.idl: Ditto.
1183 * ksvg2/svg/SVGElement.idl: Ditto.
1184 * ksvg2/svg/SVGEvent.idl: Ditto.
1185 * ksvg2/svg/SVGLength.idl: Ditto.
1186 * ksvg2/svg/SVGMatrix.idl: Ditto.
1187 * ksvg2/svg/SVGNumber.idl: Ditto.
1188 * ksvg2/svg/SVGPoint.idl: Ditto.
1189 * ksvg2/svg/SVGRect.idl: Ditto.
1190 * ksvg2/svg/SVGSVGElement.idl: Ditto.
1191 * ksvg2/svg/SVGTransform.idl: Ditto.
1193 2006-06-11 Anders Carlsson <acarlsson@apple.com>
1197 http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
1198 Move full-frame plugins to WebCore
1200 * WebCore.vcproj/WebCore/WebCore.vcproj:
1201 * WebCore.xcodeproj/project.pbxproj:
1204 * bridge/mac/FrameMac.h:
1205 * bridge/mac/FrameMac.mm:
1206 (WebCore::FrameMac::redirectDataToPlugin):
1209 * bridge/mac/WebCoreFrameBridge.h:
1210 * bridge/mac/WebCoreFrameBridge.mm:
1211 Add redirectDataToPlugin which is used to redirect incoming data
1214 * bridge/mac/WebCoreViewFactory.h:
1215 Add pluginSupportsMIMEType which returns whether any plugins support a given MIME type.
1217 * dom/DOMImplementation.cpp:
1218 * dom/DOMImplementation.h:
1219 Get rid of createTextDocument and just create a text document explicitly when needed.
1222 (WebCore::Document::isPluginDocument):
1223 * loader/PluginDocument.cpp: Added.
1224 (WebCore::PluginTokenizer::PluginTokenizer):
1225 (WebCore::PluginTokenizer::wantsRawData):
1226 (WebCore::PluginTokenizer::write):
1227 (WebCore::PluginTokenizer::createDocumentStructure):
1228 (WebCore::PluginTokenizer::writeRawData):
1229 (WebCore::PluginTokenizer::stopParsing):
1230 (WebCore::PluginTokenizer::finish):
1231 (WebCore::PluginTokenizer::isWaitingForScripts):
1232 (WebCore::PluginDocument::PluginDocument):
1233 (WebCore::PluginDocument::createTokenizer):
1234 * loader/PluginDocument.h: Added.
1235 (WebCore::PluginDocument::isPluginDocument):
1239 (WebCore::Frame::begin):
1240 Possibly create a plugin document.
1243 (WebCore::Frame::redirectDataToPlugin):
1246 * platform/PlugInInfoStore.h:
1247 * platform/mac/PlugInInfoStoreMac.mm:
1248 (WebCore::PlugInInfoStore::supportsMIMEType):
1249 Ask WebCoreViewFactory if the MIME type is supported.
1251 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1255 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9334
1256 Incomplete repaint when changing block from non-positioned to positioned
1258 Test: fast/repaint/static-to-positioned.html
1260 * rendering/RenderObject.cpp:
1261 (WebCore::RenderObject::setStyle): If changing from static to positioned, repaint
1264 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1268 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9193
1269 REGRESSION: setting an opacity on an element with an outline causes the outline to disappear completely
1271 Test: fast/layers/opacity-outline.html
1273 - fix repainting of layer children's outlines that extend beyond the layer
1275 Test: fast/repaint/layer-child-outline.html
1277 * rendering/RenderLayer.cpp:
1278 (WebCore::RenderLayer::intersectsDamageRect): Account for outlines.
1279 (WebCore::RenderLayer::absoluteBoundingBox): Ditto.
1280 * rendering/RenderObject.cpp:
1281 (WebCore::RenderObject::maximalOutlineSize): Changed to return the view's maximal
1282 outline size rather than 0 for PaintPhaseChildOutlines.
1284 2006-06-10 Steve Falkenburg <sfalken@apple.com>
1288 * platform/cairo/GraphicsContextCairo.cpp:
1289 * platform/win/TemporaryLinkStubs.cpp:
1290 (GraphicsContext::scale):
1292 2006-06-10 Geoffrey Garen <ggaren@apple.com>
1294 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
1295 Linux porting compile bug
1297 Fix by Mike Emmel, Reviewed by Darin.
1299 * Projects/gdk/webcore-gdk.bkl:
1300 * WebCoreSources.bkl:
1301 * css/maketokenizer:
1302 * html/HTMLCanvasElement.cpp:
1303 * html/HTMLImageElement.h:
1304 * icon/IconDatabase.cpp:
1305 * make-generated-sources.sh:
1307 * page/FramePrivate.h:
1308 * platform/Cursor.h:
1309 * platform/FontData.h:
1310 (WebCore::FontData::getGlyphIndex):
1311 * platform/GlyphBuffer.h:
1312 (WebCore::GlyphBuffer::glyphAt):
1313 (WebCore::GlyphBuffer::advanceAt):
1314 (WebCore::GlyphBuffer::add):
1315 * platform/GraphicsContext.h:
1316 * platform/PlatformKeyboardEvent.h:
1317 * platform/PlatformMouseEvent.h:
1318 * platform/PlatformWheelEvent.h:
1319 * platform/ScrollView.h:
1320 * platform/TransferJob.h:
1321 (WebCore::TransferJob::getInternal):
1322 * platform/TransferJobInternal.h:
1323 (WebCore::TransferJobInternal::TransferJobInternal):
1324 * platform/Widget.h:
1325 * platform/cairo/GraphicsContextCairo.cpp:
1326 (WebCore::GraphicsContext::GraphicsContext):
1327 (WebCore::GraphicsContext::roundToDevicePixels):
1329 * xpath/impl/XPathValue.cpp:
1331 2006-06-09 John Sullivan <sullivan@apple.com>
1333 Reviewed by Tim Omernick and Dave Hyatt.
1335 WebCore support for computing but not highlighting rects for text matches.
1338 added setRenderedRectForMarker() and renderedRectsForMarkers(), and redefined
1339 MarkerMap to be a hashtable of node -> (pair of vectors), one vector of markers
1340 and one vector of rects
1343 (placeholderRectForMarker()):
1344 new function, returns a recognizable degenerate rect used until a real rect has been set
1345 (WebCore::Document::addMarker):
1346 Reworked for new MarkerMap data structure; now adds parallel placeholder rect
1348 (WebCore::Document::copyMarkers):
1349 Reworked for new MarkerMap data structure
1350 (WebCore::Document::removeMarkers):
1351 Reworked for new MarkerMap data structure; now removed corresponding rect along
1353 (WebCore::Document::markersForNode):
1354 Reworked for new MarkerMap data structure
1355 (WebCore::Document::renderedRectsForMarkers):
1356 New method, returns an array of all non-placeholder rects for the given marker type
1357 (WebCore::Document::repaintMarkers):
1358 Reworked for new MarkerMap data structure
1359 (WebCore::Document::setRenderedRectForMarker):
1360 New method, sets the rendered rect for a given marker
1361 (WebCore::Document::shiftMarkers):
1362 Reworked for new MarkerMap data structure; resets rendered rects to placeholders.
1364 * rendering/InlineTextBox.cpp:
1365 (WebCore::InlineTextBox::paint):
1366 removed markedTextMatchesAreHighlighted guard; we always want to call paintTextMatchMarker
1367 now, but sometimes we will end up only computing the rect, not actually highlighting it.
1368 (Maybe some names should be improved here?)
1369 (WebCore::InlineTextBox::paintTextMatchMarker):
1370 Reorganized to move all the code that actually draws into a block that's guarded by
1371 markedTextMatchesAreHighlighted. The rest of the code computes where the highlight will
1372 go, and now we always use that computation in order to call setRenderedRectForMarker.
1374 * bridge/mac/WebCoreFrameBridge.h:
1375 * bridge/mac/WebCoreFrameBridge.mm:
1376 (-[WebCoreFrameBridge rectsForTextMatches]):
1377 New method, returns an array of NSValues representing NSRects. Gets them
1378 from Document::renderedRectsForMarkers
1380 2006-06-10 Anders Carlsson <acarlsson@apple.com>
1384 * bindings/js/kjs_html.cpp:
1385 (KJS::JSHTMLElement::put):
1386 Call WebCore::JSHTMLElement::put so that autogenerated setters will work
1389 2006-06-09 Geoffrey Garen <ggaren@apple.com>
1391 - Build fix after last JSC check-in (oops!)
1393 * bridge/mac/WebCoreScriptDebugger.mm:
1394 (-[WebCoreScriptCallFrame scopeChain]):
1395 (-[WebCoreScriptCallFrame functionName]):
1396 (-[WebCoreScriptCallFrame evaluateWebScript:]):
1398 2006-06-09 David Hyatt <hyatt@apple.com>
1400 Rename m_isFocused on the frame to m_isActive, since it isn't really
1401 about focus but is instead about whether or not the top-level window is
1404 Pull code that was incorrectly factored into Mac-only code out of FrameMac
1405 and back up into Frame.
1407 Reviewed by andersca
1409 * bridge/mac/FrameMac.h:
1410 * bridge/mac/FrameMac.mm:
1412 (WebCore::Frame::setFocusNodeIfNeeded):
1413 (WebCore::Frame::isActive):
1414 (WebCore::Frame::setIsActive):
1415 * page/FramePrivate.h:
1416 (WebCore::FramePrivate::FramePrivate):
1418 2006-06-09 David Hyatt <hyatt@apple.com>
1420 Rework selection coloring. Rename displaysWithFocusAttributes
1421 to isActive. Move the white-blending code onto the Color API to make
1422 it more convenient to mutate colors for selection blending. Eliminate all
1423 the selection state from the GraphicsContext and move it to the RenderTheme.
1424 Implement both Win32 and Mac theme selection colors.
1428 * bridge/mac/FrameMac.h:
1429 * bridge/mac/FrameMac.mm:
1430 (WebCore::FrameMac::setIsActive):
1431 * bridge/mac/WebCoreFrameBridge.h:
1432 * bridge/mac/WebCoreFrameBridge.mm:
1433 (-[WebCoreFrameBridge drawRect:]):
1434 (-[WebCoreFrameBridge setIsActive:]):
1435 (-[WebCoreFrameBridge selectionColor]):
1436 * css/cssstyleselector.cpp:
1437 (WebCore::CSSStyleSelector::checkOneSelector):
1439 (WebCore::Frame::isActive):
1440 (WebCore::Frame::setIsActive):
1442 * platform/Color.cpp:
1444 (WebCore::Color::blendWithWhite):
1446 (WebCore::Color::hasAlpha):
1447 * platform/GraphicsContext.cpp:
1448 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
1449 * platform/GraphicsContext.h:
1450 * platform/mac/GraphicsContextMac.mm:
1451 * platform/win/TemporaryLinkStubs.cpp:
1452 (GraphicsContext::endTransparencyLayer):
1453 * rendering/InlineTextBox.cpp:
1454 (WebCore::InlineTextBox::paintSelection):
1455 * rendering/RenderBlock.cpp:
1456 (WebCore::RenderBlock::fillHorizontalSelectionGap):
1457 (WebCore::RenderBlock::fillVerticalSelectionGap):
1458 (WebCore::RenderBlock::fillLeftSelectionGap):
1459 (WebCore::RenderBlock::fillRightSelectionGap):
1460 * rendering/RenderHTMLCanvas.cpp:
1461 (WebCore::RenderHTMLCanvas::paint):
1462 * rendering/RenderImage.cpp:
1463 (WebCore::RenderImage::paint):
1464 * rendering/RenderListMarker.cpp:
1465 (WebCore::RenderListMarker::paint):
1466 * rendering/RenderListMarker.h:
1467 * rendering/RenderObject.cpp:
1468 (WebCore::RenderObject::selectionColor):
1469 * rendering/RenderObject.h:
1470 * rendering/RenderReplaced.cpp:
1471 * rendering/RenderReplaced.h:
1472 * rendering/RenderTheme.cpp:
1473 (WebCore::RenderTheme::activeSelectionColor):
1474 (WebCore::RenderTheme::inactiveSelectionColor):
1475 (WebCore::RenderTheme::platformActiveSelectionColor):
1476 (WebCore::RenderTheme::platformInactiveSelectionColor):
1477 * rendering/RenderTheme.h:
1478 * rendering/RenderThemeMac.h:
1479 * rendering/RenderThemeMac.mm:
1480 (WebCore::RenderThemeMac::platformActiveSelectionColor):
1481 (WebCore::RenderThemeMac::platformInactiveSelectionColor):
1482 * rendering/RenderThemeWin.cpp:
1483 (WebCore::RenderThemeWin::platformActiveSelectionColor):
1484 (WebCore::RenderThemeWin::platformInactiveSelectionColor):
1485 * rendering/RenderThemeWin.h:
1486 * rendering/RenderWidget.cpp:
1487 (WebCore::RenderWidget::paint):
1489 2006-06-09 Justin Garcia <justin.garcia@apple.com>
1493 <rdar://problem/4549980>
1494 REGRESSION: "Find Again" can get stuck when searching for string with a trailing space
1496 * bridge/mac/FrameMac.h: Moved findString to Frame.
1497 * bridge/mac/FrameMac.mm: Ditto.
1498 * bridge/mac/WebCoreFrameBridge.mm:
1499 (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:]):
1500 Convert the NSString to a String.
1501 * editing/JSEditor.cpp: Added execCommand(FindString, ...)
1502 * editing/Selection.cpp: Added a constructor for Ranges
1503 (WebCore::Selection::Selection):
1504 * editing/Selection.h:
1506 (WebCore::Frame::findString): Moved from FrameMac. Compare a selection created
1507 using the found range with the current selection in case the current selection is
1508 the found range minus some collapsed whitespace on the edges.
1511 2006-06-09 Steve Falkenburg <sfalken@apple.com>
1515 * WebCore.vcproj/WebCore/WebCore.vcproj:
1516 * css/MediaQueryEvaluator.cpp:
1517 * platform/win/TemporaryLinkStubs.cpp:
1518 (GraphicsContext::addRoundedRectClip):
1519 (GraphicsContext::addInnerRoundedRectClip):
1520 (WebCore::screenDepthPerComponent):
1521 (WebCore::screenIsMonochrome):
1523 2006-06-09 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
1525 Reviewed by Hyatt. Tweaked by Maciej. Tweaks reviewed by Beth.
1528 CSS3 Media Queries implementation.
1529 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4127>
1531 * WebCore.xcodeproj/project.pbxproj:
1532 * bindings/js/kjs_css.cpp:
1533 (KJS::DOMMediaList::put):
1534 (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
1535 * bindings/objc/DOMCSS.mm:
1536 (-[DOMMediaList setMediaText:]):
1537 (-[DOMMediaList deleteMedium:]):
1538 (-[DOMMediaList appendMedium:]):
1540 * css/MediaFeatureNames.cpp: Added.
1541 (WebCore::MediaFeatureNames::init):
1542 * css/MediaFeatureNames.h: Added.
1543 * css/MediaList.cpp:
1544 (WebCore::MediaList::MediaList):
1545 (WebCore::MediaList::~MediaList):
1546 (WebCore::parseMediaDescriptor):
1547 (WebCore::MediaList::deleteMedium):
1548 (WebCore::MediaList::mediaText):
1549 (WebCore::MediaList::setMediaText):
1550 (WebCore::MediaList::item):
1551 (WebCore::MediaList::appendMedium):
1552 (WebCore::MediaList::appendMediaQuery):
1554 (WebCore::MediaList::MediaList):
1555 (WebCore::MediaList::length):
1556 (WebCore::MediaList::mediaQueries):
1557 * css/MediaQuery.cpp: Added.
1558 (WebCore::MediaQuery::MediaQuery):
1559 (WebCore::MediaQuery::~MediaQuery):
1560 (WebCore::MediaQuery::operator==):
1561 (WebCore::MediaQuery::cssText):
1562 * css/MediaQuery.h: Added.
1563 (WebCore::MediaQuery::):
1564 (WebCore::MediaQuery::restrictor):
1565 (WebCore::MediaQuery::expressions):
1566 (WebCore::MediaQuery::mediaType):
1567 (WebCore::MediaQuery::append):
1568 * css/MediaQueryEvaluator.cpp: Added.
1570 (WebCore::MediaQueryEvaluator):
1571 (WebCore::MediaQueryEvaluator::~MediaQueryEvaluator):
1572 (WebCore::MediaQueryEvaluator::mediaTypeMatch):
1573 (WebCore::applyRestrictor):
1574 (WebCore::MediaQueryEvaluator::eval):
1575 (WebCore::parseAspectRatio):
1576 (WebCore::cmpvalue):
1577 (WebCore::numberValue):
1578 (WebCore::colorMediaFeatureEval):
1579 (WebCore::monochromeMediaFeatureEval):
1580 (WebCore::device_aspect_ratioMediaFeatureEval):
1581 (WebCore::gridMediaFeatureEval):
1582 (WebCore::device_heightMediaFeatureEval):
1583 (WebCore::device_widthMediaFeatureEval):
1584 (WebCore::heightMediaFeatureEval):
1585 (WebCore::widthMediaFeatureEval):
1586 (WebCore::min_colorMediaFeatureEval):
1587 (WebCore::max_colorMediaFeatureEval):
1588 (WebCore::min_monochromeMediaFeatureEval):
1589 (WebCore::max_monochromeMediaFeatureEval):
1590 (WebCore::min_device_aspect_ratioMediaFeatureEval):
1591 (WebCore::max_device_aspect_ratioMediaFeatureEval):
1592 (WebCore::min_heightMediaFeatureEval):
1593 (WebCore::max_heightMediaFeatureEval):
1594 (WebCore::min_widthMediaFeatureEval):
1595 (WebCore::max_widthMediaFeatureEval):
1596 (WebCore::min_device_heightMediaFeatureEval):
1597 (WebCore::max_device_heightMediaFeatureEval):
1598 (WebCore::min_device_widthMediaFeatureEval):
1599 (WebCore::max_device_widthMediaFeatureEval):
1600 (WebCore::createFunctionMap):
1601 * css/MediaQueryEvaluator.h: Added.
1602 * css/MediaQueryExp.cpp: Added.
1603 (WebCore::MediaQueryExp::MediaQueryExp):
1604 (WebCore::MediaQueryExp::~MediaQueryExp):
1605 * css/MediaQueryExp.h: Added.
1606 (WebCore::MediaQueryExp::mediaFeature):
1607 (WebCore::MediaQueryExp::value):
1608 (WebCore::MediaQueryExp::operator==):
1609 * css/StyleSheet.cpp:
1610 (WebCore::StyleSheet::setMedia):
1611 * css/cssparser.cpp:
1612 (WebCore::CSSParser::CSSParser):
1613 (WebCore::CSSParser::~CSSParser):
1614 (WebCore::CSSParser::setupParser):
1615 (WebCore::CSSParser::parseMediaQuery):
1616 (WebCore::CSSParser::createFloatingMediaQueryExp):
1617 (WebCore::CSSParser::sinkFloatingMediaQueryExp):
1618 (WebCore::CSSParser::createFloatingMediaQueryExpList):
1619 (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
1620 (WebCore::CSSParser::createFloatingMediaQuery):
1621 (WebCore::CSSParser::sinkFloatingMediaQuery):
1623 * css/cssstyleselector.cpp:
1624 (WebCore::CSSStyleSelector::CSSStyleSelector):
1625 (WebCore::CSSStyleSelector::init):
1626 (WebCore::CSSStyleSelector::~CSSStyleSelector):
1627 (WebCore::CSSStyleSelector::loadDefaultStyle):
1628 (WebCore::CSSStyleSelector::matchUARules):
1629 (WebCore::CSSStyleSelector::styleForElement):
1630 (WebCore::CSSStyleSelector::pseudoStyleForElement):
1631 (WebCore::CSSStyleSelector::updateFont):
1632 (WebCore::CSSStyleSelector::cacheBorderAndBackground):
1633 (WebCore::CSSStyleSelector::styleRulesForElement):
1634 (WebCore::CSSRuleSet::addRulesFromSheet):
1635 * css/cssstyleselector.h:
1636 * css/maketokenizer:
1637 * css/tokenizer.flex:
1638 * dom/DOMImplementation.cpp:
1639 (WebCore::DOMImplementation::createCSSStyleSheet):
1640 * html/HTMLLinkElement.cpp:
1641 (WebCore::HTMLLinkElement::process):
1642 (WebCore::HTMLLinkElement::setStyleSheet):
1643 * html/HTMLStyleElement.cpp:
1644 (WebCore::HTMLStyleElement::childrenChanged):
1645 * ksvg2/svg/SVGDOMImplementation.cpp:
1646 (SVGDOMImplementation::createCSSStyleSheet):
1647 * ksvg2/svg/SVGStyleElement.cpp:
1648 (WebCore::SVGStyleElement::childrenChanged):
1650 (WebCore::Frame::Frame):
1651 * platform/Screen.h:
1652 * platform/mac/ScreenMac.mm:
1653 (WebCore::screenDepthPerComponent):
1654 (WebCore::screenIsMonochrome):
1656 2006-06-08 Levi Weintraub <lweintraub@apple.com>
1660 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
1661 Implement execCommand(Insert{Un}OrderedList)
1663 * WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
1665 (WebCore::hasRenderedNonAnonymousDescendantsWithHeight):
1666 Added. A block with height is only a candidate if this is false. This should fix the problems
1667 getting carets into empty blocks.
1668 (WebCore::Position::inRenderedContent):
1669 * editing/AppendNodeCommand.cpp:
1670 (WebCore::AppendNodeCommand::doApply):
1671 * editing/CompositeEditCommand.cpp:
1672 (WebCore::hasARenderedDescendant):
1673 (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet
1674 have a renderer with no descendants. Fixed the pruning rule to avoid removing a node like this.
1675 (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to
1676 each other if they aren't already, as a convenience.
1677 (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection.
1678 (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
1679 * editing/CompositeEditCommand.h:
1680 * editing/DeleteSelectionCommand.cpp:
1681 (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should
1682 continue to happen until it is no longer possible.
1683 (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node
1684 wouldn't always avoid removing the start block.
1685 * editing/InsertListCommand.cpp: Added.
1686 (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list
1688 (WebCore::InsertListCommand::InsertListCommand):
1689 (WebCore::InsertListCommand::modifyRange):
1690 (WebCore::InsertListCommand::doApply):
1691 * editing/InsertListCommand.h: Added.
1692 (WebCore::InsertListCommand::):
1693 * editing/InsertNodeBeforeCommand.cpp:
1694 (WebCore::InsertNodeBeforeCommand::doApply):
1695 * editing/InsertParagraphSeparatorCommand.cpp:
1696 * editing/JSEditor.cpp:
1697 * editing/TextIterator.cpp:
1698 (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the
1699 iterator ends at the start of that node.
1700 * editing/VisiblePosition.cpp:
1701 (WebCore::VisiblePosition::next):
1702 (WebCore::VisiblePosition::previous):
1703 * editing/VisiblePosition.h:
1704 Added a parameter to next/previous that can prevent them from leaving the current editable region.
1705 * editing/htmlediting.cpp:
1706 (WebCore::highestAncestor):
1707 (WebCore::enclosingList):
1708 (WebCore::enclosingListChild):
1709 (WebCore::outermostEnclosingList):
1710 (WebCore::createListItemElement):
1711 * editing/htmlediting.h:
1713 (WebCore::Frame::selectionListState): Added.
1716 2006-06-08 David Harrison <harrison@apple.com>
1718 Reviewed by Geoff and John.
1720 <rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)
1722 Problem was the primitive value was getting reset to a generic state before the parameter
1723 check that relies on that state.
1725 Test: fast/dom/setPrimitiveValue.html
1727 * css/CSSPrimitiveValue.cpp:
1728 (WebCore::CSSPrimitiveValue::setFloatValue):
1729 (WebCore::CSSPrimitiveValue::setStringValue):
1730 Move parameter checks ahead of call to cleanup().
1732 2006-06-08 Alice Liu <alice.liu@apple.com>
1736 - fixed <rdar://problem/4578115> support Range.isPointInRange
1737 - fixed <rdar://problem/4578123> support Range.comparePoint
1740 (WebCore::Range::isPointInRange):
1741 added implementation
1742 (WebCore::Range::comparePoint):
1743 added implementation
1749 2006-06-08 Darin Adler <darin@apple.com>
1753 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
1754 REGRESSION: TinyMCE: Crash on Undo
1756 * bridge/mac/WebCoreFrameBridge.mm:
1757 (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]):
1758 Changed to call nodeInfoAtPoint directly.
1759 (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly.
1760 Also added code to convert coordinates so it works for points that are in nodes in subframes.
1763 (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection
1764 endpoints in another document.
1765 (WebCore::Frame::setSelection): Ditto.
1767 2006-06-07 Justin Garcia <justin.garcia@apple.com>
1771 Fixed some comments and removed an unused variable.
1773 * editing/CompositeEditCommand.cpp:
1774 (WebCore::CompositeEditCommand::removeBlockPlaceholder):
1775 Don't remove a br if it isn't at the start of a block, since
1776 it isn't really a "block placeholder".
1777 * editing/DeleteSelectionCommand.cpp:
1778 (WebCore::DeleteSelectionCommand::initializePositionData):
1779 (WebCore::DeleteSelectionCommand::mergeParagraphs):
1780 (WebCore::DeleteSelectionCommand::doApply):
1781 * editing/InsertLineBreakCommand.cpp:
1782 (WebCore::InsertLineBreakCommand::doApply):
1783 * editing/ReplaceSelectionCommand.cpp:
1784 (WebCore::ReplaceSelectionCommand::doApply):
1785 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1786 * editing/htmlediting.cpp:
1788 2006-06-07 David Hyatt <hyatt@apple.com>
1790 Add support for custom highlighting. This is all ifdefed to be Mac-only.
1794 * WebCore.xcodeproj/project.pbxproj:
1795 * bridge/mac/FrameMac.h:
1796 * bridge/mac/FrameMac.mm:
1797 (WebCore::FrameMac::paintCustomHighlight):
1798 * bridge/mac/WebCoreFrameBridge.h:
1799 * platform/mac/ClipboardMac.h:
1800 * rendering/InlineTextBox.cpp:
1801 (WebCore::InlineTextBox::paint):
1802 (WebCore::InlineTextBox::paintCustomHighlight):
1803 * rendering/InlineTextBox.h:
1805 2006-06-07 Adele Peterson <adele@apple.com>
1809 Added support for cross-platform resize property.
1811 * platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we
1812 already cache this info when we handle mouse down and mouse up.
1813 * platform/mac/MouseEventMac.mm: ditto.
1814 * platform/win/TemporaryLinkStubs.cpp: ditto.
1817 (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
1818 * page/FrameView.cpp:
1819 (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method.
1820 (WebCore::FrameView::mousePressed): Added.
1821 * page/FrameView.h: Added mousePressed.
1823 * rendering/RenderTheme.h: Removed paintResizeControl.
1824 Since its not dependent on the theme, the layer can just paint this.
1825 * rendering/RenderTheme.cpp: ditto.
1826 * rendering/RenderLayer.cpp:
1827 (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage.
1828 (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage.
1829 (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one.
1830 (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
1831 * rendering/RenderLayer.h: Added m_resizeCornerImage. Important to have one per-layer for when we allow
1834 * platform/cairo/ImageCairo.cpp:
1835 (WebCore::Image::loadResource): Loads image resources.
1837 2006-06-07 David Hyatt <hyatt@apple.com>
1839 Add support for a new property for custom highlighting. This patch just
1840 adds support for the parsing of the property. It doesn't do anything yet.
1844 * css/CSSComputedStyleDeclaration.cpp:
1846 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1847 * css/CSSPropertyNames.in:
1848 * css/cssparser.cpp:
1849 (WebCore::CSSParser::parseValue):
1850 * css/cssstyleselector.cpp:
1851 (WebCore::CSSStyleSelector::applyProperty):
1852 * rendering/render_style.cpp:
1853 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
1854 (WebCore::StyleCSS3InheritedData::operator==):
1855 (WebCore::RenderStyle::diff):
1856 * rendering/render_style.h:
1857 (WebCore::RenderStyle::highlight):
1858 (WebCore::RenderStyle::setHighlight):
1859 (WebCore::RenderStyle::initialHighlight):
1861 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1863 Fix suggested by Rob Buis. Reviewed by Darin.
1865 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9341
1866 REGRESSION: Repro crash caused by style="font:bold"
1868 Test: fast/css/font-shorthand-weight-only.html
1870 * css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change
1871 made to fix bug 5564.
1873 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1877 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9122
1878 REGRESSION: Incorrect vertical position for text fields in a "display: table" block
1880 Test: fast/table/text-field-baseline.html
1882 * rendering/RenderTableCell.cpp:
1883 (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just
1886 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1888 Reviewed by Hyatt (concept) and Darin (some coding details).
1890 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4334
1891 REGRESSION: Flickering when css-hover should change opacity on floating elements
1893 Pixel test: fast/block/float/nopaint-after-layer-destruction.html
1895 * rendering/RenderBlock.cpp:
1896 (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag
1897 in the block's FloatingObject for the given float and calls setChildNeedsLayout.
1898 * rendering/RenderBlock.h:
1899 * rendering/RenderBox.cpp:
1900 (WebCore::blockThatPaintsFloat): Added this helper function.
1901 (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float
1902 gains or loses its layer.
1904 2006-06-06 Mitz Pettel <opendarwin.org@mitzpettel.com>
1908 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9121
1909 REGRESSION: [Incremental Repaint] DHTML movement test failures
1911 Test (repaint): fast/repaint/containing-block-position-change.html
1913 * manual-tests/containing-block-position-chage.html: Added.
1914 * rendering/RenderBlock.cpp:
1915 (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from
1916 the RenderCanvas to RenderView rename.
1917 (WebCore::RenderBlock::removePositionedObject): Added a return immediately
1918 after removing the object.
1919 (WebCore::RenderBlock::removePositionedObjects): Added.
1920 * rendering/RenderBlock.h:
1921 * rendering/RenderObject.cpp:
1922 (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned
1923 descendants from the positioned objects list of their current containing block
1924 when they are going to have a new one as a result of this block's position
1926 * rendering/RenderObject.h:
1927 (WebCore::RenderObject::removePositionedObjects):
1929 2006-06-06 Justin Garcia <justin.garcia@apple.com>
1934 (WebCore::Node::firstDescendant): Added.
1936 * dom/Range.cpp: Added a constructor that takes in Positions.
1937 (WebCore::Range::Range):
1939 * editing/CompositeEditCommand.cpp:
1940 (WebCore::CompositeEditCommand::insertNodeAt):
1941 Let this function insert children into empty containers.
1942 Calls canHaveChildrenForEditing.
1943 (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing.
1944 (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the
1945 replacement so that moveParagraph's callers have a valid destination after the move.
1946 * editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand,
1947 made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
1948 * editing/DeleteSelectionCommand.cpp:
1949 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
1950 Removed m_startNode, used a local variable.
1951 (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion.
1952 (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up
1953 front and keep track of it as nodes and text are removed.
1954 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode.
1955 (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand.
1956 Update m_endingPosition as we remove nodes.
1957 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
1958 Update m_endingPosition as we delete text.
1959 (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block. Cleaned up.
1960 (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph
1961 clobbers the old one.
1962 (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after
1963 deletion. Make the placeholder decision before we do special element expansion.
1964 * editing/DeleteSelectionCommand.h:
1965 * editing/InsertLineBreakCommand.cpp:
1966 (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned
1968 * editing/InsertParagraphSeparatorCommand.cpp:
1969 (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do
1970 a merge (added a testcase).
1971 * editing/RebalanceWhitespaceCommand.cpp:
1972 (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.
1973 * editing/ReplaceSelectionCommand.cpp:
1974 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1975 Merge even when the incoming fragment has interchange newlines (added a testcase).
1976 Merge when the selection being pasted into starts at the start of a block because not
1977 doing so would leave one or more hanging empty blocks.
1978 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1979 Rebalance whitespace using rebalanceWhitespaceAt because rebalanceWhitespace requires
1980 a selection, and a selection can't be created until whitespace has been rebalanced.
1981 * editing/htmlediting.cpp:
1982 (WebCore::canHaveChildrenForEditing): Added.
1983 * editing/htmlediting.h:
1985 2006-06-06 Beth Dakin <bdakin@apple.com>
1989 Fix for <rdar://problem/4570475> Dashboard regions do not scale for
1990 non-1.0 scale factors.
1992 No test cases added since this only affects non-1.0 resolution
1995 * platform/FloatRect.cpp:
1996 (WebCore::FloatRect::scale): Added new function that scales a
1997 rect's origin and size by a given factor.
1998 * platform/FloatRect.h:
1999 * platform/IntRect.cpp:
2000 (WebCore::IntRect::scale): Same as above.
2001 * platform/IntRect.h:
2002 * rendering/RenderObject.cpp:
2003 (WebCore::RenderObject::addDashboardRegions): After the bounds and
2004 clip rects on the Dashboard region have been calculated, get the
2005 user space scale factor, and if it is not 1.0, scale the rects.
2007 2006-06-06 John Sullivan <sullivan@apple.com>
2009 Reviewed by Darin Adler.
2011 - fixed <rdar://problem/4566087> REGRESSION (420+): Crash occurs while completing a find again query at
2012 http://www.apple.com/ (RenderObject::repaint(bool))
2014 This wasn't a new problem in the code, but the recent use of DocumentMarkers for find results brought
2018 Use a RefPtr<Node> instead of a Node* in MarkerMap, so the node will be retained
2021 (WebCore::Document::removeMarkers):
2022 Add a .get() to compensate for using RefPtr. Also, only repaint if this node actually had a marker
2024 (WebCore::Document::repaintMarkers):
2025 Add a .get() to compensate for using RefPtr.
2027 2006-06-06 Anders Carlsson <acarlsson@apple.com>
2031 http://bugzilla.opendarwin.org/show_bug.cgi?id=9325
2032 clientWidth/clientHeight on document element in strict mode should return visible frame size
2035 (WebCore::Element::clientWidth):
2036 (WebCore::Element::clientHeight):
2037 If we're the document element, and in strict mode, return the visible size of the frame.
2039 2006-06-06 Anders Carlsson <acarlsson@apple.com>
2043 * bridge/mac/WebCoreFrameBridge.h:
2044 * bridge/mac/WebCoreFrameBridge.mm:
2045 (-[WebCoreFrameBridge containsPlugins]):
2047 (WebCore::Frame::containsPlugins):
2049 Add containsPlugins function which returns whether a frame contains plugins
2052 2006-06-05 Rob Buis <buis@kde.org>
2056 http://bugzilla.opendarwin.org/show_bug.cgi?id=5564
2057 'font' shorthand parsing should be more tolerant in quirks mode
2059 When not in strict mode accept font property specifications
2060 lacking a font family part, like WinIE does.
2062 * css/cssparser.cpp:
2063 (WebCore::CSSParser::parseFont):
2065 2006-06-05 Beth Dakin <bdakin@apple.com>
2069 Fix for <rdar://problem/4567520> Pixel cracks in weather widget at
2072 To prevent pixel cracks at non-integral scaling factors, before we
2073 call into CG to draw an image, we have to convert the rect to
2074 device space, round the origin and size to integers in device
2075 space, and convert back to user space.
2077 No test cases added since this only affects non-1.0 resolution
2080 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2081 (WebCore::JSCanvasRenderingContext2D::drawImage): drawImage() now
2083 * html/CanvasPattern.cpp:
2084 (WebCore::patternCallback): Call roundToDevicePixels()
2085 * html/CanvasRenderingContext2D.cpp:
2086 (WebCore::CanvasRenderingContext2D::drawImage): drawImage() now
2087 takes FloatRects and call roundToDevicePixels()
2088 * html/CanvasRenderingContext2D.h: drawImage() now takes
2090 * html/HTMLCanvasElement.cpp:
2091 (WebCore::HTMLCanvasElement::paint): Call roundToDevicePixels()
2092 * kcanvas/device/quartz/QuartzSupport.mm:
2093 (WebCore::debugDumpCGImageToFile): Same as above.
2094 * platform/GraphicsContext.h:
2095 * platform/cg/GraphicsContextCG.cpp:
2096 (WebCore::GraphicsContext::roundToDevicePixels): Takes care of
2097 converting between coordinate spaces and rounding.
2098 (WebCore::GraphicsContext::drawLineForText):
2099 * platform/mac/ImageMac.mm: Call roundToDevicePixels()
2100 (WebCore::Image::draw): Same as above.
2101 (WebCore::drawPattern): Same as above.
2103 2006-06-05 Geoffrey Garen <ggaren@apple.com>
2107 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9310
2108 Add missing DOM prototypes and other DOM cleanup
2110 - Added the built-in object prototype to DOM objects that were missing it
2111 so that primitive operations like == work on them.
2113 - Removed dead EventConstructor class (it's autogenerated now)
2115 - Changed HTML collections to describe themselves as "[object Collection]",
2118 - Made DOMCSSRule constructor private because JSCSSRule is the class
2121 * bindings/js/JSHTMLOptionElementConstructor.cpp:
2122 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
2123 * bindings/js/kjs_css.cpp:
2124 (KJS::DOMStyleSheet::DOMStyleSheet):
2125 (KJS::DOMStyleSheetList::DOMStyleSheetList):
2126 (KJS::DOMCSSRule::DOMCSSRule):
2127 (KJS::DOMCSSValue::DOMCSSValue):
2129 (KJS::DOMRGBColor::DOMRGBColor):
2130 (KJS::getDOMRGBColor):
2131 (KJS::DOMRect::DOMRect):
2132 * bindings/js/kjs_css.h:
2133 * bindings/js/kjs_dom.cpp:
2134 (KJS::DOMNodeList::DOMNodeList):
2135 (KJS::DOMExceptionConstructor::DOMExceptionConstructor):
2136 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
2138 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
2139 * bindings/js/kjs_dom.h:
2140 (KJS::DOMNamedNodesCollection::classInfo):
2141 * bindings/js/kjs_events.h:
2142 * bindings/js/kjs_html.cpp:
2145 2006-06-04 Darin Adler <darin@apple.com>
2149 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
2150 REGRESSION: Crash when closing tabs on newegg.com
2151 - removed a no-longer-needed Win32-specific workaround (not reviewed)
2153 * bindings/js/kjs_window.cpp: Added include of <wtf/MathExtras.h>.
2154 (WebCore::floatFeature): Remove WIN32 ifdef around isnan.
2155 (WebCore::toJS): Add null checks.
2157 2006-06-04 Darin Adler <darin@apple.com>
2161 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9176
2162 REGRESSION: repro crash in WebCore::StringImpl::hash() const + 28 (StringImpl.h:67)
2164 Test: fast/loader/link-no-URL.html
2168 (WebCore::Cache::updateCacheStatus): Removed the URL parameter. Instead get the URL
2169 from the cached object itself. Callers were passing in the wrong URL. When it was a
2170 null string, it caused the crash mentioned above. But in other cases it may have
2171 caused some other minor problems as well. Added an assert to catch cases where the
2172 URL is null (should never happen).
2173 (WebCore::Cache::requestImage): Changed call site to not pass URL.
2174 (WebCore::Cache::requestStyleSheet): Ditto.
2175 (WebCore::Cache::requestScript): Ditto.
2176 (WebCore::Cache::requestXSLStyleSheet): Ditto.
2177 (WebCore::Cache::requestXBLDocument): Ditto.
2179 2006-06-04 Darin Adler <darin@apple.com>
2183 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7291
2184 REGRESSION: delete key does not work in isIndex fields
2186 * platform/mac/WebCoreTextField.mm:
2187 (inputElement): Added. Helper function to get the Objective-C wrapper for an
2188 input element associated with a QTextEdit. Returns nil if the element is not
2189 an input element. The bug was caused by passing a non-input element to the
2191 (-[KWQTextFieldController controlTextDidBeginEditing:]): Use inputElement
2192 and don't make the delegate call at all if there is none. This happens only
2193 with isindex elements; it's not important to have auto-fill work with those.
2194 (-[KWQTextFieldController controlTextDidEndEditing:]): Ditto.
2195 (-[KWQTextFieldController controlTextDidChange:]): Ditto.
2196 (-[KWQTextFieldController control:textShouldEndEditing:]): Ditto.
2197 (-[KWQTextFieldController control:textView:doCommandBySelector:]): Ditto.
2198 (-[KWQTextFieldController textView:shouldHandleEvent:]): Ditto.
2200 2006-06-04 Darin Adler <darin@apple.com>
2204 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8995
2205 memory leak in XPath code -- seen in layout tests
2206 - fixed malloc error on exit due to SVGDOMImplementation destructor
2207 - attempted to fix the no-XPATH_SUPPORT build by adding an #if
2208 - changed around includes and header-file formatting in XPath code
2210 * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h when
2211 generating the bindings for XPathNSResolver.
2213 * dom/DOMImplementation.h: Added a virtual destructor for the benefit of
2214 SVGDOMImplementation.
2215 * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::~DOMImplementation): Added.
2217 * ksvg2/svg/SVGDOMImplementation.h: Reformatted a bit, removed unneeded declarations.
2218 * ksvg2/svg/SVGDOMImplementation.cpp:
2219 (SVGDOMImplementation::~SVGDOMImplementation): Remove commented-out code.
2220 (SVGDOMImplementation::createDocument): Remove a reference to KDOMView.
2222 * xpath/XPathExpression.cpp:
2223 (WebCore::XPathExpression::createExpression): Called release to avoid a tiny bit of
2224 reference count churn.
2225 (WebCore::XPathExpression::evaluate): Set exception code explicitly, because the code
2226 relies on it being 0 when the function succeeds.
2228 * xpath/XPathResult.cpp:
2229 (WebCore::InvalidatingEventListener::InvalidatingEventListener): Removed
2230 unneeded target node data member.
2231 (WebCore::XPathResult::XPathResult): Updated for enum name changes and
2232 InvalidatingEventListener name change. Added an assertion.
2234 * xpath/impl/XPathFunctions.h: Removed the FunctionLibrary class. Changed the parameter
2235 for createFunction to be a String instead of char*.
2236 * xpath/impl/XPathFunctions.cpp: Got rid of local implementation of "round", and
2237 used <wtf/MathExtras.h> instead. Also removed unused Interval::asString. Marked all
2238 the Interval functions inline.
2239 (WebCore::XPath::FunSubstring::doEvaluate): Use lround() instead of (long)round().
2240 (WebCore::XPath::FunLang::doEvaluate): Removed some unneeded temporary String variables.
2241 Use equalIgnoringCase() instead of calling lower() on two strings.
2242 (WebCore::XPath::createFunctionMap): Changed how this works so that it's all local to
2243 this function. Also removed a duplicate entry for the "last" function.
2244 (WebCore::XPath::createFunction): Changed from a member function to a separate function.
2245 Also changed so that if the args are not used in the function they are deleted.
2246 This was one of the sources of the storage leaks.
2248 * xpath/impl/XPathGrammar.y: Put XPATH_SUPPORT ifdef in. Replaced <num> with values of
2249 specific types (numop, eqop). Updated for name change from AxisType to Axis. Changed
2250 tokens that were declared as <str> but weren't actually using the string to be
2251 declared with no type (PLUS, MINUS, OR, AND, DOTDOT, SLASHSLASH). Replaced use of
2252 unregisterString, unregisterPredicateVector, and unregisterExpressionVector to
2253 call delete functions instead that both unregister and delete. Change call sites for
2254 createFunction to just use the String, removing the deprecatedString().latin1() call
2255 that is no longer needed. Added a call to unregisterParseNode that was missing in the
2256 "FilterExpr DescendantOrSelf RelativeLocationPath" production.
2258 * xpath/impl/XPathParser.h: Changed Token to hold a String, Step::Axis, NumericOp::Opcode,
2259 and EqTestOp::Opcode. The token ID number tells us which to use. Rearranged to put the private
2260 part of the Parser class last. Moved a number of private things inside the cpp file.
2261 * xpath/impl/XPathParser.cpp:
2262 (WebCore::XPath::charCat): Made this a separate function, instead of a static member.
2263 (WebCore::XPath::isAxisName): Ditto. Also put the global axis map inside the function,
2264 allowing use of a map instead of a map pointer.
2265 (WebCore::XPath::isNodeTypeName): Ditto.
2266 (WebCore::XPath::Parser::isOperatorContext): Made this const.
2267 (WebCore::XPath::Parser::makeTokenAndAdvance): Got rid of the "int" version of this.
2268 By using the actual types, we can safely use overload instead.
2269 (WebCore::XPath::Parser::lexString): Use substring() instead of deprecatedString().mid().
2270 (WebCore::XPath::Parser::lexNumber): Ditto.
2271 (WebCore::XPath::Parser::lexNCName): Changed to return a bool and a String instead of a
2272 Token. This avoids the hack of using a token value of "ERROR + 1" which I found quite
2273 confusing and is also a bit more explicit.
2274 (WebCore::XPath::Parser::lexQName): Ditto.
2275 (WebCore::XPath::Parser::nextTokenInternal): Changed to adapt to the changes above and
2276 to remove some unneeded else statements.
2277 (WebCore::XPath::Parser::lex): Changed the logic that sets up yylval to use the token ID
2278 to decide what the type is. This matches what the grammar expects, and removes the need
2279 for the token object to track which part of the value is good and the need to reserve 0
2280 to have a special meaning.
2281 (WebCore::XPath::Parser::parseStatement): Added code to delete the predicates and the
2282 expressions in the predicate and expression vectors. Before, we were only deleting
2283 the vectors. This was one of the sources of the storage leaks.
2284 (WebCore::XPath::Parser::deletePredicateVector): Renamed, and changed to delete
2285 the vector. However this does not delete the predicates in the vector.
2286 (WebCore::XPath::Parser::deleteExpressionVector): Renamed, and changed to delete
2287 the vector. However this does not delete the expressions in the vector.
2288 (WebCore::XPath::Parser::deleteString): Renamed, and changed to delete the string.
2290 * xpath/impl/XPathPredicate.h:
2291 * xpath/impl/XPathPredicate.cpp:
2292 (WebCore::XPath::NumericOp::NumericOp): Changed opcode from an int to an enum, and
2293 renamed to "opcode" instead of "opCode".
2294 (WebCore::XPath::NumericOp::doEvaluate): More of the same.
2295 (WebCore::XPath::EqTestOp::EqTestOp): Ditto.
2296 (WebCore::XPath::EqTestOp::doEvaluate): Ditto.
2297 (WebCore::XPath::LogicalOp::LogicalOp): Ditto.
2298 (WebCore::XPath::LogicalOp::shortCircuitOn): Ditto.
2299 (WebCore::XPath::Predicate::evaluate): Removed an unneeded "new".
2301 * xpath/impl/XPathStep.h:
2302 * xpath/impl/XPathStep.cpp: Renamed AxisType to Axis. Removed unused axisAsString
2303 function and default constructor.
2305 * xpath/impl/XPathValue.h: Renamed the type constants to have a Value suffix,
2306 instead of the underscore suffix used before on NodeVector and String.
2307 * xpath/impl/XPathValue.cpp: Updated for name change. Added asserts.
2309 * xpath/impl/XPathVariableReference.cpp: (WebCore::XPath::VariableReference::doEvaluate):
2310 Use a reference instead of a pointer.
2312 * xpath/XPathEvaluator.cpp:
2313 * xpath/XPathEvaluator.h:
2314 * xpath/XPathExpression.h:
2315 * xpath/XPathNSResolver.cpp:
2316 * xpath/XPathNSResolver.h:
2317 * xpath/XPathNamespace.cpp:
2318 * xpath/XPathNamespace.h:
2319 * xpath/XPathResult.h:
2320 * xpath/impl/XPathExpressionNode.cpp:
2321 * xpath/impl/XPathExpressionNode.h:
2322 * xpath/impl/XPathPath.cpp:
2323 * xpath/impl/XPathPath.h:
2324 * xpath/impl/XPathUtil.cpp:
2325 * xpath/impl/XPathUtil.h:
2326 * xpath/impl/XPathVariableReference.h:
2327 Reformatted and changed includes around; no substantive changes.
2329 2006-06-04 Sam Weinig <sam.weinig@gmail.com>
2333 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9213
2334 Absolutely positioned objects with relatively positioned inline
2335 containing blocks are rendered incorrectly
2337 * rendering/RenderBox.cpp:
2338 (WebCore::RenderBox::containingBlockWidthForPositioned):
2339 (WebCore::RenderBox::containingBlockHeightForPositioned):
2340 (WebCore::RenderBox::calcAbsoluteHorizontal):
2341 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2342 (WebCore::RenderBox::calcAbsoluteVertical):
2343 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2344 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
2345 * rendering/RenderBox.h:
2347 2006-06-04 Anders Carlsson <acarlsson@apple.com>
2351 http://bugzilla.opendarwin.org/show_bug.cgi?id=9035
2352 document.evaluate and createNSResolver miss on namespaced elements
2354 * xpath/XPathExpression.cpp:
2355 (WebCore::XPathExpression::createExpression):
2356 Pass the resolver to the parser.
2358 * xpath/XPathResult.cpp:
2359 (WebCore::XPathResult::iterateNext):
2360 Fix off-by-one error.
2362 * xpath/impl/XPathExpressionNode.h:
2363 (WebCore::XPath::EvaluationContext::EvaluationContext):
2364 Get rid of the resolver in the evaluation context.
2366 * xpath/impl/XPathGrammar.y:
2367 Fetch the resolver from the parser. Only return the local name.
2369 * xpath/impl/XPathParser.cpp:
2370 (WebCore::XPath::Parser::parseStatement):
2371 * xpath/impl/XPathParser.h:
2372 (WebCore::XPath::Parser::resolver):
2373 Update to hold the resolver.
2375 * xpath/impl/XPathStep.cpp:
2376 (WebCore::XPath::Step::Step):
2377 If the parser has stored a namespace URI, set it.
2379 (WebCore::XPath::Step::nodeTestMatches):
2380 Check namespace URIs.
2382 * xpath/impl/XPathStep.h:
2385 2006-06-03 Rob Buis <buis@kde.org>
2387 Reviewed by mjs. Tweaked and landed by ddkilzer.
2389 http://bugzilla.opendarwin.org/show_bug.cgi?id=7281
2390 With java disabled wrong information is displayed.
2392 Test: fast/replaced/applet-rendering-java-disabled.html
2394 Match WinIE, render applet content inline when java is
2397 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderEmptyApplet.cpp and RenderEmptyApplet.h.
2398 * WebCore.xcodeproj/project.pbxproj: Ditto.
2399 * WebCoreSources.bkl: Ditto.
2400 * html/HTMLAppletElement.cpp:
2401 (WebCore::HTMLAppletElement::createRenderer):
2402 * rendering/RenderEmptyApplet.cpp: Removed.
2403 * rendering/RenderEmptyApplet.h: Removed.
2405 2006-06-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
2409 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9252
2410 REGRESSION: Very odd roll-over issues (content disappearing)
2412 Test: fast/dom/HTMLLinkElement/pending-stylesheet-count.html
2414 * html/HTMLLinkElement.cpp:
2415 (WebCore::HTMLLinkElement::~HTMLLinkElement): If the stylesheet was being
2416 loaded, call stylesheetLoaded() on the document, to keep the pending stylesheet
2419 2006-06-03 Darin Adler <darin@apple.com>
2423 * platform/Widget.h: Moved scaleFactor function out of Apple-specific
2424 section of the header into the common part.
2426 2006-06-03 Beth Dakin <bdakin@apple.com>
2430 Fix for <rdar://problem/4537274> HiDPI: <canvas> needs to apply a
2431 scale. <canvas> needs to scale itself along with whatever scale
2432 factor is set on the window.
2434 * html/HTMLCanvasElement.cpp:
2435 (WebCore::HTMLCanvasElement::createDrawingContext): Get the scale
2436 factor and use it to create a larger buffer and to scale the
2438 * platform/Widget.h: Provide a new function that returns the user
2440 * platform/mac/WidgetMac.mm:
2441 (WebCore::Widget::scaleFactor): Get the scale factor from the
2442 window and return it.
2443 * platform/win/WidgetWin.cpp:
2444 (WebCore::Widget::scaleFactor): Just return 1.0f for now.
2446 2006-06-03 Steve Falkenburg <sfalken@apple.com>
2450 Don't send empty referrers. Fixes image load fail on Spinneret default content.
2452 * platform/win/TransferJobWin.cpp:
2453 (WebCore::TransferJob::start):
2455 2006-06-02 Adele Peterson <adele@apple.com>
2459 Windows theme for textareas. Also made some formatting changes.
2461 * rendering/RenderThemeWin.cpp:
2462 (WebCore::RenderThemeWin::supportsFocus):
2463 (WebCore::RenderThemeWin::getThemeData):
2464 (WebCore::RenderThemeWin::adjustButtonStyle):
2465 (WebCore::RenderThemeWin::adjustTextFieldStyle):
2466 (WebCore::RenderThemeWin::adjustTextAreaStyle):
2467 (WebCore::RenderThemeWin::paintTextArea):
2468 * rendering/RenderThemeWin.h:
2469 (WebCore::RenderThemeWin::supportsHover):
2471 2006-06-02 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
2473 Reviewed by Hyatt, checked in by Tim H.
2475 Explicitly run perl on *.pl files instead of relying
2476 on Windows shell figuring out which program to run for
2479 * DerivedSources.make:
2481 2006-06-02 David Carson <dacarson@gmail.com>
2483 Reviewed by Hyatt, checked in by Tim H.
2485 fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=9115
2486 Changed RenderLayer to only render layers that are not
2487 totally transparent.
2489 * rendering/RenderLayer.cpp
2490 (RenderLayer::paintLayer):
2491 Changed function to also check if the layer is totally transparent
2492 and if it is, don't bother painting it.
2494 2006-06-02 Rob Buis <buis@kde.org>
2496 Reviewed by Hyatt, checked in by Tim H.
2498 http://bugzilla.opendarwin.org/show_bug.cgi?id=8223
2499 WebKit fails to update style on element via DOM
2501 Handle !important by detecting it and using a different code
2502 path from normal priority.
2504 * bindings/js/kjs_css.cpp:
2505 (KJS::DOMCSSStyleDeclaration::put):
2506 * css/CSSStyleDeclaration.cpp:
2507 (WebCore::CSSStyleDeclaration::setProperty):
2508 * css/CSSStyleDeclaration.h:
2510 2006-06-02 Darin Adler <darin@apple.com>
2512 Reviewed by Geoff, checked in by Maciej.
2514 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9236
2515 REGRESSION: focus method does not work on some elements before they are laid out
2517 * dom/Element.cpp: (WebCore::Element::focus): Do the updateLayout call before
2518 calling isFocusable, since isFocusable looks at the size of the renderer.
2520 2006-06-02 Steve Falkenburg <sfalken@apple.com>
2524 Platform hookup fixes
2526 * bridge/win/FrameWin.cpp:
2527 (WebCore::FrameWin::urlSelected):
2528 (WebCore::FrameWin::setTitle):
2529 (WebCore::FrameWin::setStatusBarText):
2530 * bridge/win/FrameWin.h:
2531 * platform/win/TemporaryLinkStubs.cpp:
2532 (FrameWin::overrideMediaType):
2533 * platform/win/TransferJobWin.cpp:
2534 (WebCore::TransferJobWndProc):
2535 (WebCore::TransferJob::start):
2536 (WebCore::TransferJob::fileLoadTimer):
2537 (WebCore::TransferJob::cancel):
2539 2006-06-02 Rémi Zara <remi_zara@mac.com>
2543 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3379
2544 attr(X) does not work
2546 Test: fast/css-generated-content/016.html
2548 * css/cssstyleselector.cpp:
2549 (WebCore::CSSStyleSelector::canShareStyleWithElement): Don't share style
2550 if the unique bit is set.
2551 (WebCore::CSSStyleSelector::applyProperty): When applying the "attr" property,
2552 set the unique bit and add to m_selectorAttrs.
2554 * rendering/render_style.cpp: Did a lot of reformatting, and this one real change.
2555 (WebCore::RenderStyle::RenderStyle): Initialize m_unique to false.
2557 * rendering/render_style.h:
2558 (WebCore::RenderStyle::unique): Added. Returns value of m_unique.
2559 (WebCore::RenderStyle::setUnique): Added. Sets m_unique.
2561 2006-06-02 David Kilzer <ddkilzer@kilzer.net>
2565 http://bugzilla.opendarwin.org/show_bug.cgi?id=9183
2566 Finish renaming of RenderCanvas to RenderView
2568 * rendering/RenderView.h: Changed renderName from "RenderCanvas" to "RenderView".
2570 2006-06-01 Darin Adler <darin@apple.com>
2572 - try to fix Windows build
2574 * bridge/win/FrameWin.cpp: Added include of Decoder.h.
2576 2006-06-01 Darin Adler <darin@apple.com>
2580 - WebCore doesn't need to load WebKit images any more; removed code for that
2582 * WebCore.exp: Removed WebCoreImageRendererFactory.
2583 * WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRendererFactory.h/mm.
2584 * bridge/mac/WebCoreFrameBridge.mm: Removed include of WebCoreImageRendererFactory.h.
2585 * platform/mac/ImageMac.mm: Removed include of WebCoreImageRendererFactory.h.
2586 * platform/mac/WebCoreImageRendererFactory.h: Removed.
2587 * platform/mac/WebCoreImageRendererFactory.m: Removed.
2589 2006-06-01 Sam Weinig <sam.weinig@gmail.com>
2591 Reviewed by Geoff, tweaked a bit by Darin.
2593 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9064
2594 Split dom2_traversalimpl.* into separate files (one class per file).
2596 * WebCore.xcodeproj/project.pbxproj: Updated for new files.
2597 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
2599 * bindings/js/kjs_traversal.h:
2600 * bindings/scripts/CodeGeneratorJS.pm:
2601 * bindings/objc/DOM.mm:
2606 * dom/NodeFilter.cpp: Added.
2607 * dom/NodeFilter.h: Added.
2608 * dom/NodeFilterCondition.cpp: Added.
2609 * dom/NodeFilterCondition.h: Added.
2610 * dom/NodeIterator.cpp: Added.
2611 * dom/NodeIterator.h: Added.
2612 * dom/Traversal.cpp: Added.
2613 * dom/Traversal.h: Added.
2614 * dom/TreeWalker.cpp: Added.
2615 * dom/TreeWalker.h: Added.
2617 * dom/dom2_traversalimpl.cpp: Removed.
2618 * dom/dom2_traversalimpl.h: Removed.
2620 2006-06-01 David Carson <dacarson@gmail.com>
2622 Reviewed by Maciej and Adele
2624 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8398
2625 REGRESSION: LABEL in OPTION element is clobbering display #TEXT
2626 Patch provided by Darin.
2628 * rendering/RenderSelect.cpp
2629 (RenderSelect::updateFromElement):
2630 Changed to use the containing text by default, and not the label text
2632 2006-06-01 David Carson <dacarson@gmail.com>
2636 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8646
2637 Correcting the value returned for window.screen.pixelDepth and
2638 window.screen.colorDepth
2640 * platform/mac/ScreenMac.mm
2642 Changed to return the BitsPerPixelFromDepth rather than the WindowDepth
2644 2006-06-01 Adele Peterson <adele@apple.com>
2648 Missed an initialization in my last checkin which caused too many
2649 resizers to be drawn.
2651 * rendering/render_style.cpp: (WebCore::resize):
2652 Initialize resize to RESIZE_NONE.
2654 2006-06-01 Dave Hyatt <hyatt@apple.com>
2656 Implement form POST using WinINet. This code is crazy... CRAZY!
2658 * platform/TransferJobInternal.h:
2659 (WebCore::TransferJobInternal::TransferJobInternal):
2660 * platform/win/CookieJarWin.cpp:
2661 (WebCore::setCookies):
2663 * platform/win/TransferJobWin.cpp:
2664 (WebCore::TransferJobWndProc):
2665 (WebCore::TransferJob::start):
2667 2006-06-01 Adele Peterson <adele@apple.com>
2671 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9216
2672 Implement CSS3 resize property
2674 * css/html4.css: Sets resize:both for textareas. This won't affect old-style textareas.
2676 * css/CSSPropertyNames.in: Added resize property.
2677 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Added case for CSS_PROP_RESIZE.
2678 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
2679 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): ditto.
2681 * rendering/render_style.cpp: (WebCore::StyleCSS3InheritedData): Initialize resize.
2682 * rendering/render_style.h:
2683 (WebCore::): Added EResize enum.
2684 (WebCore::RenderStyle::resize):
2685 (WebCore::RenderStyle::setResize):
2686 (WebCore::RenderStyle::initialResize):
2688 * page/FrameView.cpp:
2689 (WebCore::FrameViewPrivate::FrameViewPrivate): Added m_resizeLayer to keep track of a layer that has begun resizing.
2690 (WebCore::FrameViewPrivate::reset): Reset m_resizeLayer.
2691 (WebCore::FrameView::handleMousePressEvent): If the mouse was pressed in a layer's resize control, then put the layer into resize mode.
2692 (WebCore::selectCursor): Updated so we get a pointer cursor for the resize control.
2693 (WebCore::FrameView::handleMouseMoveEvent): If there's a layer currently resizing, then tell the layer to continue resizing.
2694 (WebCore::FrameView::handleMouseReleaseEvent): If there's a layer currently resizing, then pull it out of resize mode.
2696 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::isPointInScrollbar): Updated so the resize control isn't considered part of the scrollbar.
2697 * rendering/RenderLayer.cpp:
2698 (WebCore::RenderLayer::RenderLayer): Initialize m_inResizeMode
2699 (WebCore::RenderLayer::updateLayerPositions): Calls positionResizeControl.
2700 (WebCore::RenderLayer::resize): Added. Sets a new width and height based on the current mouse point.
2701 (WebCore::RenderLayer::isPointInResizeControl): Added.
2702 (WebCore::RenderLayer::positionResizeControl): Added.
2703 (WebCore::RenderLayer::positionScrollbars): Calls positionResizeControl.
2704 (WebCore::RenderLayer::paintScrollbars): Calls positionResizeControl.
2705 (WebCore::RenderLayer::paintResizeControl): Added.
2706 (WebCore::RenderLayer::paintLayer): Calls paintResizeControl.
2707 * rendering/RenderLayer.h: Added m_inResizeMode.
2708 (WebCore::RenderLayer::resizeControlRect):
2709 (WebCore::RenderLayer::setResizeControlRect):
2710 (WebCore::RenderLayer::inResizeMode): Added.
2711 (WebCore::RenderLayer::setInResizeMode): Added.
2713 * platform/mac/ImageMac.mm: (WebCore::Image::loadResource): Moved code from WebImageRendererFactory. Now loads images from WebCore's resources.
2714 WebImageRendererFactory is no longer used and should be removed.
2715 * Resources/missingImage.tiff: Added. Copied from WebKit.
2716 * WebCore.xcodeproj/project.pbxproj: Added missingImage.tiff
2717 * loader/Cache.cpp: (WebCore::Cache::init): Updated name from missing_image to missingImage.
2719 * rendering/RenderTheme.h:
2720 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paintResizeControl): Added.
2721 * rendering/RenderThemeMac.h:
2722 * rendering/RenderThemeMac.mm:
2723 (WebCore::RenderThemeMac::RenderThemeMac): Initialize resizeCornerImage.
2724 (WebCore::RenderThemeMac::paintResizeControl): Paints resizeCornerImage.
2726 2006-06-01 Brady Eidson <beidson@apple.com>
2730 Added the beginnings of sqlite-based code in a WebCore
2731 based version of the Icon Database. Right now the code
2732 is very loosely hooked up through a Bridge and only
2733 creates an sqlite3 database.
2735 There are also changes to our String classes to allow appending
2736 a single character to a String without creating a temporary object.
2739 -Added a symbol export
2741 * WebCore.xcodeproj/project.pbxproj:
2742 * bridge/mac/WebCoreIconDatabaseBridge.h: Added.
2743 * bridge/mac/WebCoreIconDatabaseBridge.mm: Added.
2744 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
2745 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2746 (-[WebCoreIconDatabaseBridge isOpen]):
2747 -This class will eventually shadow WebIconDatabase but for now
2748 is a minimal interface to make the sql code live
2751 * icon/IconDatabase.cpp: Added.
2752 -This class will eventually resemble WebIconDatabase but for now
2753 is minimal just to make the sql code live
2754 (WebCore::IconDatabase::sharedIconDatabase):
2755 (WebCore::IconDatabase::IconDatabase):
2756 (WebCore::IconDatabase::open):
2757 -This method calls a mkdir to make sure the target directory
2759 (WebCore::IconDatabase::close):
2760 (WebCore::IconDatabase::~IconDatabase):
2762 * icon/IconDatabase.h: Added.
2763 (WebCore::IconDatabase::isOpen):
2764 * platform/Logging.cpp:
2765 * platform/Logging.h:
2766 -Added an IconDatabase logging channel
2768 * platform/PlatformString.h:
2769 * platform/String.cpp:
2770 (WebCore::String::append):
2771 * platform/StringImpl.cpp:
2772 (WebCore::StringImpl::append):
2773 * platform/StringImpl.h:
2774 -Added append(char) and append(UChar) to allow appending a
2775 single character without creating a temporary object. Required
2776 to facilitate manually adding a null character to a unicode 16
2779 2006-06-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
2781 Reviewed and landed by Anders.
2783 - fixed all places in the Canvas to RenderView rename patch where
2784 view() should have been changed to frameView().
2786 * kwq/WebCoreAXObject.mm:
2787 (-[WebCoreAXObject position]):
2788 (-[WebCoreAXObject accessibilityAttributeValue:]):
2789 * rendering/RenderBlock.cpp:
2790 (WebCore::RenderBlock::layoutBlock):
2791 * rendering/RenderBox.cpp:
2792 (WebCore::RenderBox::paintBackgroundExtended):
2793 * rendering/RenderTreeAsText.cpp:
2794 (externalRepresentation):
2796 2006-06-01 Geoffrey Garen <ggaren@apple.com>
2798 Fix by Mitz. Reviewed, tweaked, tested, landed by me.
2800 - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9113
2801 REGRESSION (14581): XMLHttpRequest never calls onreadystatechange with
2804 An XMLHttpRequest must be added to the DOMObject cache so that its
2805 DOM implementation object can protect it, and by extension, its event
2808 This design seems slightly backwards to me -- the bindings should know
2809 about the DOM, not the other way around -- but I'm restoring it for
2810 now to fix the regression.
2812 * bindings/js/JSXMLHttpRequest.cpp:
2813 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2814 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2816 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2818 * platform/KURL.cpp:
2822 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2826 http://bugzilla.opendarwin.org/show_bug.cgi?id=6309
2827 multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working
2829 * bindings/js/kjs_window.cpp:
2830 (KJS::Location::put):
2831 Handle the case where the hash starts with a "#". Also, don't do anything if the previous and new hashes
2834 * bridge/BrowserExtension.h:
2835 * bridge/mac/BrowserExtensionMac.h:
2836 * bridge/mac/BrowserExtensionMac.mm:
2837 (WebCore::BrowserExtensionMac::historyURL):
2838 * bridge/mac/WebCoreFrameBridge.h:
2839 * bridge/mac/WebCoreFrameBridge.mm:
2840 New function historyURL which returns the complete URL for a given item in the history.
2843 (WebCore::Frame::scheduleLocationChange):
2844 (WebCore::Frame::scheduleHistoryNavigation):
2845 If the URL of the new location only differs in the hash, don't schedule the load. Instead, load it
2848 * platform/KURL.cpp:
2850 Add equalsIgnoringRef which returns whether two URLs are equal, ignoring the ref.
2852 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2856 http://bugzilla.opendarwin.org/show_bug.cgi?id=9212
2857 dispatchEvent13.html crashes under GuardMalloc
2859 * dom/EventTargetNode.cpp:
2860 (WebCore::EventTargetNode::addEventListener):
2861 (WebCore::EventTargetNode::removeEventListener):
2862 (WebCore::EventTargetNode::handleLocalEvents):
2864 (WebCore::EventTargetNode::removeHTMLEventListener):
2865 (WebCore::EventTargetNode::getHTMLEventListener):
2866 * dom/EventTargetNode.h:
2867 Make the list of registered event listeners refcount the listeners
2868 by using a value list of RefPtr objects.
2870 Set removed flag to true in removeEventListener
2871 Only invoke event listeners if they don't have the removed flag.
2873 * dom/dom2_eventsimpl.cpp:
2874 (WebCore::RegisteredEventListener::RegisteredEventListener):
2875 * dom/dom2_eventsimpl.h:
2876 Make RegisteredEventListener refcounted.
2878 (WebCore::RegisteredEventListener::removed):
2879 (WebCore::RegisteredEventListener::setRemoved):
2880 Add removed flag and getter and setter
2882 2006-06-01 Justin Garcia <justin.garcia@apple.com>
2884 Reviewed by harrison
2886 <rdar://problem/4567752> When forwarding a message, pressing TAB key to place caret in body actually selects the entire message instead
2889 (WebCore::Element::focus):
2891 2006-06-01 David Kilzer <ddkilzer@kilzer.net>
2895 http://bugzilla.opendarwin.org/show_bug.cgi?id=9144
2896 Test for Bug 8079 (REGRESSION: Redraw from page cache does not show visited links)
2898 * manual-tests/redraw-page-cache-visited-links.html: Added.
2899 * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added.
2901 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2905 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9124
2906 Drop shadow obscures "add more stuff" bubble at live.com
2908 Test: fast/css/find-next-layer.html
2910 * rendering/RenderObject.cpp:
2911 (WebCore::RenderObject::findNextLayer): Fixed a bug where this function could reach
2912 two levels down in the layer tree and return 0.
2914 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2918 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9109
2919 Remove bogus assertion in RenderBlock::tabWidth
2921 Changed the uninitialized value of m_tabWidth to -1 and removed the
2922 assertion that it cannot be 0.
2924 * rendering/RenderBlock.cpp:
2925 (WebCore:::RenderBlock::RenderBlock):
2926 (WebCore::RenderBlock::setStyle):
2927 * rendering/bidi.cpp:
2928 (WebCore::RenderBlock::tabWidth):
2930 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
2934 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9100
2935 Absolutely positioned replaced elements with all non-auto
2936 values are rendered incorrectly
2938 * rendering/RenderBox.cpp:
2939 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Add support for case when all values are specified.
2940 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto
2942 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2946 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9012
2947 Row height not updated when cell heights change
2949 Test: fast/table/row-height-recalc.html
2951 * rendering/RenderTableCell.cpp:
2952 (WebCore::RenderTableCell::setStyle): Mark the section as needing recalculation
2953 if the height property changed.
2954 * rendering/RenderTableRow.cpp:
2955 (WebCore::RenderTableRow::setStyle): Ditto.
2956 * rendering/RenderTableSection.cpp:
2957 (WebCore::RenderTableSection::recalcCells): Initialize the grid row height
2958 to the height of the row element (like addChild() does).
2960 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2964 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8969
2965 REGRESSION: typing in textfield repaints whole web page at gamefaqs.com
2967 No test possible (no functionality change)
2970 (WebCore::Document::updateLayout): Changed to ensure that pending subtree
2971 layouts are performed too.
2973 (WebCore::Frame::forceLayout): Force a full layout.
2974 * page/FrameView.cpp:
2975 (WebCore::FrameViewPrivate::reset):
2976 (WebCore::FrameView::layout): Changed to relayout only the subtree rooted
2977 at d->layoutRoot if it's non-zero and allowSubtree is true.
2978 (WebCore::FrameView::scheduleRelayout): Change pending subtree relayout into
2979 normal relayout by clearing d->layoutRoot and propagating needsLayout to the
2981 (WebCore::FrameView::scheduleRelayoutOfSubtree): Added.
2983 * rendering/RenderObject.cpp:
2984 (WebCore::RenderObject::markContainingBlocksForLayout): Added scheduleRelayout
2985 parameter. FrameView passes false to force marking all the way to the root
2986 when turning a pending subtree relayout into a full relayout. Otherwise,
2987 marking stops at the first textField (or at the root) and
2988 relayout of the last object reached is scheduled.
2989 (WebCore::RenderObject::scheduleRelayout):
2990 * rendering/RenderObject.h:
2992 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
2996 patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8910>
2997 Bug 8910: Various code cleanups in RenderBox
2999 Clean up with some slight optimizations.
3001 * rendering/RenderBox.cpp:
3002 (WebCore::RenderBox::contentWidth):
3003 (WebCore::RenderBox::contentHeight):
3004 (WebCore::RenderBox::setPos):
3005 (WebCore::RenderBox::calcWidth):
3006 (WebCore::RenderBox::calcWidthUsing):
3007 * rendering/RenderBox.h:
3009 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
3013 patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8899>
3014 Bug 8899: Removes some unneeded code from RenderBox
3016 Removes the use of WidthType where not needed to simplify
3019 * rendering/RenderBox.cpp:
3020 (WebCore::RenderBox::calcWidthUsing):
3021 (WebCore::RenderBox::sizesToIntrinsicWidth):
3022 (WebCore::RenderBox::calcReplacedWidth):
3023 (WebCore::RenderBox::calcReplacedWidthUsing):
3024 (WebCore::RenderBox::calcReplacedHeight):
3025 (WebCore::RenderBox::calcReplacedHeightUsing):
3026 * rendering/RenderBox.h:
3028 (WebCore::RenderBox::renderName):
3029 * rendering/RenderImage.cpp:
3030 (WebCore::RenderImage::calcReplacedWidth):
3031 (WebCore::RenderImage::calcReplacedHeight):
3033 2006-05-31 Rob Buis <buis@kde.org>
3037 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8455
3038 selectedIndex for a select after a Form reset() has wrong value
3040 Make sure the list items are reset properly by selecting
3041 the first option in case no options have the selected attribute
3044 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::reset):
3046 2006-05-31 Rob Buis <buis@kde.org>
3050 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8024
3051 "Go" button (search) doesn't work at fifa.com (document.all.FormName)
3053 Allow input elements with name attributes as possible named
3054 items for document.all.
3056 * html/HTMLCollection.cpp:
3057 (WebCore::HTMLCollection::checkForNameMatch):
3058 (WebCore::HTMLCollection::updateNameCache):
3060 2006-05-31 Dave Hyatt <hyatt@apple.com>
3062 Adding stubs for BMP/ICO/XBM image decoders. They don't
3063 do anything yet though.
3065 * WebCore.vcproj/WebCore/WebCore.vcproj:
3066 * platform/cairo/ImageSourceCairo.cpp:
3067 (WebCore::createDecoder):
3068 * platform/image-decoders/bmp: Added.
3069 * platform/image-decoders/bmp/BMPImageDecoder.cpp: Added.
3070 (WebCore::BMPImageDecoder::isSizeAvailable):
3071 (WebCore::BMPImageDecoder::frameBufferAtIndex):
3072 * platform/image-decoders/bmp/BMPImageDecoder.h: Added.
3073 * platform/image-decoders/ico: Added.
3074 * platform/image-decoders/ico/ICOImageDecoder.cpp: Added.
3075 (WebCore::ICOImageDecoder::isSizeAvailable):
3076 (WebCore::ICOImageDecoder::frameBufferAtIndex):
3077 * platform/image-decoders/ico/ICOImageDecoder.h: Added.
3078 * platform/image-decoders/xbm: Added.
3079 * platform/image-decoders/xbm/XBMImageDecoder.cpp: Added.
3080 (WebCore::XBMImageDecoder::isSizeAvailable):
3081 (WebCore::XBMImageDecoder::frameBufferAtIndex):
3082 * platform/image-decoders/xbm/XBMImageDecoder.h: Added.
3084 2006-05-31 David Hyatt <hyatt@apple.com>
3086 Fix for the gmail tab-focus-stealing bug.
3090 * bindings/js/kjs_window.cpp:
3091 (KJS::WindowFunc::callAsFunction):
3092 * bridge/mac/BrowserExtensionMac.mm:
3093 (WebCore::BrowserExtensionMac::createNewWindow):
3094 * bridge/mac/FrameMac.h:
3095 * bridge/mac/FrameMac.mm:
3096 (WebCore::FrameMac::focusWindow):
3097 (WebCore::FrameMac::unfocusWindow):
3098 * bridge/mac/WebCoreFrameBridge.h:
3100 * platform/Widget.h:
3101 * platform/mac/WidgetMac.mm:
3102 * platform/win/TemporaryLinkStubs.cpp:
3103 (FrameWin::focusWindow):
3104 * platform/win/WidgetWin.cpp:
3106 2006-05-31 Beth Dakin <bdakin@apple.com>
3110 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6755 CSS3:
3111 Borders rounded with border-radius don't draw the roundings
3113 This patch does not draw all of the different border styles
3114 perfectly, so I have filed a few followup bugs that I will
3115 reference from this Bugzilla.
3117 * platform/GraphicsContext.h:
3118 * platform/cairo/GraphicsContextCairo.cpp:
3119 (WebCore::GraphicsContext::drawArc): drawArc() has different
3120 parameters now, but mostly this needs to be implemented to match
3122 (WebCore::GraphicsContext::addRoundedRectClip): Just a stub.
3123 Implement this later.
3124 (WebCore::GraphicsContext::addInnerRoundedRectClip): Just a stub.
3125 Implement this later.
3126 * platform/cg/GraphicsContextCG.cpp:
3127 (WebCore::GraphicsContext::drawArc): drawArc() now handles drawing
3128 elliptical arcs as well as circular arcs, it also takes a thickness
3129 parameter to draw an arc of a given thickness and draws with the
3130 appropriate pen style.
3131 (WebCore::GraphicsContext::addInnerRoundedRectClip): Adds a clip to
3132 the inside of an arc instead of to the outside which is already
3133 done by addRoundedClipRect()
3134 * rendering/RenderObject.cpp:
3135 (WebCore::RenderObject::drawBorderArc): Draws the border arcs in
3136 the appropriate styles.
3137 (WebCore::RenderObject::paintBorder): Calls drawBorderArc() when
3138 border arcs are needed.
3139 * rendering/RenderObject.h:
3141 2006-05-30 Eric Seidel <eric@eseidel.com>
3143 Reviewed by andersca.
3145 Add first-cut SVG JS bindings autogeneration.
3146 SVGSVGElement and various other support classes are generated.
3147 Various small style fixes.
3148 http://bugzilla.opendarwin.org/show_bug.cgi?id=4249
3150 * DerivedSources.make:
3151 * WebCore+SVG/RGBColor.cpp: Removed.
3152 * WebCore+SVG/RGBColor.h: Removed.
3153 * WebCore.xcodeproj/project.pbxproj:
3154 * bindings/js/JSHTMLElementWrapperFactory.cpp:
3155 (WebCore::createJSHTMLWrapper): renamed from createJSWrapper
3156 * bindings/js/JSHTMLElementWrapperFactory.h:
3157 * bindings/js/kjs_dom.cpp:
3158 (KJS::DOMNode::DOMNode):
3159 (KJS::DOMNode::toBoolean):
3160 (KJS::DOMNode::getOwnPropertySlot):
3161 (KJS::DOMNode::getValueProperty):
3162 (KJS::DOMNode::put):
3163 (KJS::DOMNode::putValueProperty):
3164 (KJS::DOMNode::toPrimitive):
3165 (KJS::DOMNode::toString):
3166 (KJS::DOMNodeProtoFunc::callAsFunction):
3167 (KJS::toEventTargetNode):
3168 (KJS::DOMEventTargetNode::getOwnPropertySlot):
3169 (KJS::DOMEventTargetNode::getValueProperty):
3170 (KJS::DOMEventTargetNode::put):
3171 (KJS::DOMEventTargetNode::putValueProperty):
3172 (KJS::DOMEventTargetNode::setListener):
3173 (KJS::DOMEventTargetNode::getListener):
3174 (KJS::DOMEventTargetNode::pushEventHandlerScope):
3175 (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
3176 (KJS::DOMNodeList::toPrimitive):
3177 (KJS::DOMNodeList::getValueProperty):
3178 (KJS::DOMNodeList::indexGetter):
3179 (KJS::DOMNodeList::nameGetter):
3180 (KJS::DOMNodeList::getOwnPropertySlot):
3181 (KJS::DOMNodeList::callAsFunction):
3182 (KJS::DOMNodeListFunc::callAsFunction):
3184 (KJS::toDocumentType):
3185 (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
3186 (KJS::DOMNamedNodeMap::~DOMNamedNodeMap):
3187 (KJS::DOMNamedNodeMap::lengthGetter):
3188 (KJS::DOMNamedNodeMap::indexGetter):
3189 (KJS::DOMNamedNodeMap::nameGetter):
3190 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
3192 (KJS::checkNodeSecurity):
3193 (KJS::getRuntimeObject):
3194 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
3195 (KJS::DOMExceptionConstructor::getValueProperty):
3196 (KJS::getDOMExceptionConstructor):
3197 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
3198 (KJS::DOMNamedNodesCollection::lengthGetter):
3199 (KJS::DOMNamedNodesCollection::indexGetter):
3200 (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
3201 * bindings/scripts/CodeGenerator.pm:
3202 * bindings/scripts/CodeGeneratorJS.pm:
3204 (WebCore::Document::implicitClose):
3206 * dom/StyledElement.h:
3207 * ksvg2/bindings/idl/svg/SVGAngle.idl: Removed.
3208 * ksvg2/bindings/idl/svg/SVGAnimatedLength.idl: Removed.
3209 * ksvg2/bindings/idl/svg/SVGColor.idl: Removed.
3210 * ksvg2/bindings/idl/svg/SVGDocument.idl: Removed.
3211 * ksvg2/bindings/idl/svg/SVGElement.idl: Removed.
3212 * ksvg2/bindings/idl/svg/SVGLength.idl: Removed.
3213 * ksvg2/bindings/idl/svg/SVGMatrix.idl: Removed.
3214 * ksvg2/bindings/idl/svg/SVGNumber.idl: Removed.
3215 * ksvg2/bindings/idl/svg/SVGPoint.idl: Removed.
3216 * ksvg2/bindings/idl/svg/SVGRect.idl: Removed.
3217 * ksvg2/bindings/idl/svg/SVGSVGElement.idl: Removed.
3218 * ksvg2/bindings/idl/svg/SVGTransform.idl: Removed.
3219 * ksvg2/bindings/idl/svg/kdomdefs.idl: Removed.
3220 * ksvg2/bindings/js: Added.
3221 * ksvg2/bindings/js/JSSVGNumber.cpp: Added.
3223 (WebCore::JSSVGNumber::~JSSVGNumber):
3224 (WebCore::JSSVGNumber::getOwnPropertySlot):
3225 (WebCore::JSSVGNumber::getValue):
3226 (WebCore::getJSSVGNumber):
3227 * ksvg2/bindings/js/JSSVGNumber.h: Added.
3228 (WebCore::JSSVGNumber::JSSVGNumber):
3229 (WebCore::JSSVGNumber::classInfo):
3230 * ksvg2/bindings/js/JSSVGPoint.cpp: Added.
3232 (WebCore::JSSVGPoint::~JSSVGPoint):
3233 (WebCore::JSSVGPoint::getOwnPropertySlot):
3234 (WebCore::JSSVGPoint::getValueProperty):
3235 (WebCore::getJSSVGPoint):
3236 (WebCore::toFloatPoint):
3237 * ksvg2/bindings/js/JSSVGPoint.h: Added.
3238 (WebCore::JSSVGPoint::JSSVGPoint):
3239 (WebCore::JSSVGPoint::classInfo):
3240 (WebCore::JSSVGPoint::):
3241 (WebCore::JSSVGPoint::impl):
3242 * ksvg2/bindings/js/JSSVGRect.cpp: Added.
3244 (WebCore::JSSVGRect::~JSSVGRect):
3245 (WebCore::JSSVGRect::getOwnPropertySlot):
3246 (WebCore::JSSVGRect::getValueProperty):
3247 (WebCore::getJSSVGRect):
3248 (WebCore::toFloatRect):
3249 * ksvg2/bindings/js/JSSVGRect.h: Added.
3250 (WebCore::JSSVGRect::JSSVGRect):
3251 (WebCore::JSSVGRect::classInfo):
3252 (WebCore::JSSVGRect::):
3253 (WebCore::JSSVGRect::impl):
3254 * ksvg2/css/SVGCSSParser.cpp:
3255 (WebCore::CSSParser::parseSVGValue):
3256 * ksvg2/css/SVGCSSStyleSelector.cpp:
3257 (WebCore::CSSStyleSelector::applySVGProperty):
3258 * ksvg2/events/SVGZoomEvent.cpp:
3259 (SVGZoomEvent::SVGZoomEvent):
3260 (SVGZoomEvent::zoomRectScreen):
3261 (SVGZoomEvent::previousTranslate):
3262 (SVGZoomEvent::newTranslate):
3263 * ksvg2/events/SVGZoomEvent.h:
3266 * ksvg2/misc/SVGDocumentExtensions.cpp:
3267 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
3268 (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
3269 (WebCore::SVGDocumentExtensions::addTimeContainer):
3270 (WebCore::SVGDocumentExtensions::removeTimeContainer):
3271 (WebCore::SVGDocumentExtensions::startAnimations):
3272 (WebCore::SVGDocumentExtensions::pauseAnimations):
3273 (WebCore::SVGDocumentExtensions::unpauseAnimations):
3274 * ksvg2/misc/SVGDocumentExtensions.h:
3275 * ksvg2/svg/SVGAElement.h:
3276 * ksvg2/svg/SVGAngle.h:
3277 (WebCore::SVGAngle::):
3278 * ksvg2/svg/SVGAngle.idl: Added.
3279 * ksvg2/svg/SVGAnimateColorElement.cpp:
3280 (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
3281 (WebCore::SVGAnimateColorElement::handleTimerEvent):
3282 (WebCore::SVGAnimateColorElement::clampColor):
3283 * ksvg2/svg/SVGAnimateColorElement.h:
3284 * ksvg2/svg/SVGAnimateElement.cpp:
3285 (SVGAnimateElement::SVGAnimateElement):
3286 (SVGAnimateElement::handleTimerEvent):
3287 * ksvg2/svg/SVGAnimateElement.h:
3288 * ksvg2/svg/SVGAnimateTransformElement.cpp:
3289 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3290 (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
3291 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3292 (WebCore::SVGAnimateTransformElement::parseTransformValue):
3293 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
3294 (WebCore::SVGAnimateTransformElement::initialMatrix):
3295 * ksvg2/svg/SVGAnimateTransformElement.h:
3296 * ksvg2/svg/SVGAnimatedLength.idl: Added.
3297 * ksvg2/svg/SVGAnimationElement.cpp:
3298 (SVGAnimationElement::closeRenderer):
3299 * ksvg2/svg/SVGAnimationElement.h:
3300 * ksvg2/svg/SVGCircleElement.h:
3301 * ksvg2/svg/SVGClipPathElement.h:
3302 * ksvg2/svg/SVGColor.cpp:
3303 (WebCore::SVGColor::SVGColor):
3304 (WebCore::SVGColor::rgbColor):
3305 (WebCore::SVGColor::setRGBColor):
3306 (WebCore::SVGColor::setRGBColorICCColor):
3307 (WebCore::SVGColor::setColor):
3308 (WebCore::SVGColor::color):
3309 * ksvg2/svg/SVGColor.h:
3310 (WebCore::SVGColor::):
3311 (WebCore::SVGColor::setRGBColor):
3312 * ksvg2/svg/SVGColor.idl: Added.
3313 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3314 * ksvg2/svg/SVGCursorElement.h:
3315 * ksvg2/svg/SVGDefsElement.h:
3316 * ksvg2/svg/SVGDescElement.h:
3317 * ksvg2/svg/SVGDocument.idl: Added.
3318 * ksvg2/svg/SVGElement.cpp:
3319 (WebCore::SVGElement::SVGElement):
3320 (WebCore::SVGElement::isSupported):
3321 (WebCore::SVGElement::id):
3322 (WebCore::SVGElement::setId):
3323 (WebCore::SVGElement::xmlbase):
3324 (WebCore::SVGElement::setXmlbase):
3325 (WebCore::SVGElement::ownerSVGElement):
3326 (WebCore::SVGElement::viewportElement):
3327 (WebCore::SVGElement::tryGetAttribute):
3328 (WebCore::SVGElement::tryGetAttributeNS):
3329 (WebCore::SVGElement::childShouldCreateRenderer):
3330 * ksvg2/svg/SVGElement.h:
3331 * ksvg2/svg/SVGElement.idl: Added.
3332 * ksvg2/svg/SVGEllipseElement.h:
3333 * ksvg2/svg/SVGEvent.idl: Added.
3334 * ksvg2/svg/SVGFEBlendElement.h:
3335 * ksvg2/svg/SVGFEColorMatrixElement.h:
3336 * ksvg2/svg/SVGFEComponentTransferElement.h:
3337 * ksvg2/svg/SVGFECompositeElement.h:
3338 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
3339 * ksvg2/svg/SVGFEDistantLightElement.h:
3340 * ksvg2/svg/SVGFEFloodElement.h:
3341 * ksvg2/svg/SVGFEFuncAElement.h:
3342 * ksvg2/svg/SVGFEFuncBElement.h:
3343 * ksvg2/svg/SVGFEFuncGElement.h:
3344 * ksvg2/svg/SVGFEFuncRElement.h:
3345 * ksvg2/svg/SVGFEGaussianBlurElement.h:
3346 * ksvg2/svg/SVGFEImageElement.h:
3347 * ksvg2/svg/SVGFELightElement.h:
3348 * ksvg2/svg/SVGFEMergeElement.h:
3349 * ksvg2/svg/SVGFEMergeNodeElement.h:
3350 * ksvg2/svg/SVGFEOffsetElement.h:
3351 * ksvg2/svg/SVGFEPointLightElement.h:
3352 * ksvg2/svg/SVGFESpecularLightingElement.h:
3353 * ksvg2/svg/SVGFESpotLightElement.h:
3354 * ksvg2/svg/SVGFETileElement.h:
3355 * ksvg2/svg/SVGFETurbulenceElement.h:
3356 * ksvg2/svg/SVGFilterElement.h:
3357 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3358 * ksvg2/svg/SVGForeignObjectElement.h:
3359 * ksvg2/svg/SVGGElement.h:
3360 * ksvg2/svg/SVGGradientElement.h:
3361 * ksvg2/svg/SVGHelper.cpp:
3362 (WebCore::SVGHelper::PercentageOfViewport):
3363 (WebCore::SVGHelper::ParseSeperatedList):
3364 * ksvg2/svg/SVGImageElement.h:
3365 * ksvg2/svg/SVGLength.h:
3366 (WebCore::SVGLength::):
3367 * ksvg2/svg/SVGLength.idl: Added.
3368 * ksvg2/svg/SVGLineElement.h:
3369 * ksvg2/svg/SVGLinearGradientElement.h:
3370 * ksvg2/svg/SVGLocatable.cpp:
3371 (SVGLocatable::getBBox):
3372 * ksvg2/svg/SVGLocatable.h:
3373 * ksvg2/svg/SVGMarkerElement.h:
3374 * ksvg2/svg/SVGMaskElement.h:
3375 * ksvg2/svg/SVGMatrix.cpp:
3376 (SVGMatrix::inverse):
3377 (SVGMatrix::rotateFromVector):
3378 * ksvg2/svg/SVGMatrix.h:
3379 * ksvg2/svg/SVGMatrix.idl: Added.
3380 * ksvg2/svg/SVGNumber.idl: Added.
3381 * ksvg2/svg/SVGPathElement.cpp:
3382 (WebCore::SVGPathElement::getPointAtLength):
3383 * ksvg2/svg/SVGPathElement.h:
3384 * ksvg2/svg/SVGPatternElement.cpp:
3385 (WebCore::SVGPatternElement::x):
3386 (WebCore::SVGPatternElement::y):
3387 (WebCore::SVGPatternElement::width):
3388 (WebCore::SVGPatternElement::height):
3389 (WebCore::SVGPatternElement::pushAttributeContext):
3390 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
3391 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3392 (WebCore::SVGPatternElement::notifyClientsToRepaint):
3393 (WebCore::SVGPatternElement::notifyAttributeChange):
3394 (WebCore::SVGPatternElement::canvasResource):
3395 (WebCore::SVGPatternElement::getCTM):
3396 * ksvg2/svg/SVGPatternElement.h:
3397 * ksvg2/svg/SVGPoint.idl: Added.
3398 * ksvg2/svg/SVGPolyElement.h:
3399 * ksvg2/svg/SVGPolygonElement.h:
3400 * ksvg2/svg/SVGPolylineElement.h:
3401 * ksvg2/svg/SVGRadialGradientElement.h:
3402 * ksvg2/svg/SVGRect.idl: Added.
3403 * ksvg2/svg/SVGRectElement.h:
3404 * ksvg2/svg/SVGSVGElement.cpp:
3405 (WebCore::SVGSVGElement::SVGSVGElement):
3406 (WebCore::SVGSVGElement::~SVGSVGElement):
3407 (WebCore::SVGSVGElement::viewport):
3408 (WebCore::SVGSVGElement::currentTranslate):
3409 (WebCore::SVGSVGElement::unsuspendRedraw):
3410 (WebCore::SVGSVGElement::getIntersectionList):
3411 (WebCore::SVGSVGElement::getEnclosureList):
3412 (WebCore::SVGSVGElement::checkIntersection):
3413 (WebCore::SVGSVGElement::checkEnclosure):
3414 (WebCore::SVGSVGElement::createSVGNumber):
3415 (WebCore::SVGSVGElement::createSVGPoint):
3416 (WebCore::SVGSVGElement::createSVGRect):
3417 (WebCore::SVGSVGElement::pauseAnimations):
3418 (WebCore::SVGSVGElement::unpauseAnimations):
3419 (WebCore::SVGSVGElement::animationsPaused):
3420 (WebCore::SVGSVGElement::getCurrentTime):
3421 (WebCore::SVGSVGElement::setCurrentTime):
3422 * ksvg2/svg/SVGSVGElement.h:
3423 (WebCore::SVGSVGElement::timeScheduler):
3424 * ksvg2/svg/SVGSVGElement.idl: Added.
3425 * ksvg2/svg/SVGScriptElement.h:
3426 * ksvg2/svg/SVGSetElement.cpp:
3427 (WebCore::SVGSetElement::SVGSetElement):
3428 (WebCore::SVGSetElement::handleTimerEvent):
3429 * ksvg2/svg/SVGSetElement.h:
3430 * ksvg2/svg/SVGStopElement.h:
3431 * ksvg2/svg/SVGStyleElement.h:
3432 * ksvg2/svg/SVGStyledElement.h:
3433 * ksvg2/svg/SVGStyledLocatableElement.cpp:
3434 (SVGStyledLocatableElement::getBBox):
3435 * ksvg2/svg/SVGStyledLocatableElement.h:
3436 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3437 (SVGStyledTransformableElement::getBBox):
3438 * ksvg2/svg/SVGStyledTransformableElement.h:
3439 * ksvg2/svg/SVGSwitchElement.h:
3440 * ksvg2/svg/SVGSymbolElement.h:
3441 * ksvg2/svg/SVGTRefElement.h:
3442 * ksvg2/svg/SVGTSpanElement.h:
3443 * ksvg2/svg/SVGTextContentElement.cpp:
3444 (SVGTextContentElement::getStartPositionOfChar):
3445 (SVGTextContentElement::getEndPositionOfChar):
3446 (SVGTextContentElement::getExtentOfChar):
3447 (SVGTextContentElement::getCharNumAtPosition):
3448 (SVGTextContentElement::parseMappedAttribute):
3449 * ksvg2/svg/SVGTextContentElement.h:
3450 * ksvg2/svg/SVGTextElement.cpp:
3451 (WebCore::SVGTextElement::getBBox):
3452 * ksvg2/svg/SVGTextElement.h:
3453 * ksvg2/svg/SVGTextPositioningElement.h:
3454 * ksvg2/svg/SVGTitleElement.h:
3455 * ksvg2/svg/SVGTransform.h:
3456 (WebCore::SVGTransform::):
3457 * ksvg2/svg/SVGTransform.idl: Added.
3458 * ksvg2/svg/SVGUseElement.h:
3459 * ksvg2/svg/SVGViewElement.h:
3461 (WebCore::Frame::Frame):
3462 (WebCore::Frame::pauseTimeouts):
3463 (WebCore::Frame::resumeTimeouts):
3465 * rendering/RenderBR.h:
3466 * rendering/RenderBox.h:
3467 (WebCore::RenderBox::renderName):
3468 * rendering/RenderCanvas.h:
3469 (WebCore::RenderCanvas::view):
3470 * rendering/RenderContainer.h:
3471 * rendering/RenderFlexibleBox.h:
3472 * rendering/RenderFlow.h:
3473 (WebCore::RenderFlow::RenderFlow):
3474 * rendering/RenderInline.h:
3475 * rendering/RenderTableSection.h:
3476 * rendering/RenderTextFragment.h:
3477 (WebCore::RenderTextFragment::contentString):
3478 * xml/xmlattrs.in: Added.
3480 2006-05-30 Geoffrey Garen <ggaren@apple.com>
3484 - Fixed <rdar://problem/4559720> window sizing: make javascript window
3485 and screen sizing methods and properties work @ HIDPI
3487 The general approach here is to change some ints to floats, make
3488 a few key functions that scale between WebView and window/screen
3489 coordinates, and change other functions that work with screen
3490 coordinates to use the scaling functions for their underlying
3493 * manual-tests/window-open-features.html: Removed.
3494 * manual-tests/window-sizing.html: Added. More test coverage.
3496 * bindings/js/kjs_window.cpp: Changed ints to floats and IntRects to
3497 FloatRects, because window coordinates can be fractional when scaled
3498 to WebView/DOM coordinates.
3499 (KJS::floatFeature):
3500 (KJS::showModalDialog):
3501 (KJS::Window::getValueProperty):
3502 (KJS::constrainToVisible):
3503 (KJS::WindowFunc::callAsFunction):
3504 * bridge/BrowserExtension.h:
3505 * bridge/mac/BrowserExtensionMac.mm:
3506 (WebCore::BrowserExtensionMac::createNewWindow): Removed custom scaling
3507 code and replaced with calls to Page::windowRect and
3508 Page::setWindowRect. Renamed 'page' and 'bridge' to 'pageBridge' and
3509 'frameBridge,' respectively.
3510 * bridge/mac/PageMac.mm:
3511 (WebCore::Page::windowRect): Changed to use scaling
3512 (WebCore::Page::setWindowRect): ditto
3513 * bridge/mac/WebCoreFrameBridge.mm:
3516 * platform/IntRect.h:
3517 * platform/Screen.h:
3518 * platform/mac/MouseEventMac.mm:
3519 (WebCore::globalPositionForEvent): Changed to use flipScreenPoint
3520 * platform/mac/ScreenMac.mm:
3521 (WebCore::flipScreenRect): New key function
3522 (WebCore::flipScreenPoint): New key function
3523 (WebCore::scaleScreenRectToView): New key function
3524 (WebCore::scaleViewRectToScreen): New key function
3525 (WebCore::screenRect): Changed to use scaling
3526 (WebCore::usableScreenRect): ditto
3528 Feeble attempt to preserve Windows build:
3530 * platform/win/ScreenWin.cpp:
3531 (WebCore::scaleScreenRectToWidget): stub -- doesn't actually scale
3532 (WebCore::scaleWidgetRectToScreen): ditto
3533 * bridge/win/PageWin.cpp:
3534 (WebCore::Page::Page):
3535 (WebCore::Page::widget):