1 2006-06-17 Alexey Proskuryakov <ap@nypop.com>
5 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8131
6 Some properties and methods of window and document objects cannot be converted to a string
8 Most of the properties were already fixed, this just adds adds a prototype to window.debug.
10 Test: fast/dom/everything-to-string.html
12 * bindings/js/kjs_proxy.cpp:
13 (WebCore::TestFunctionImp::TestFunctionImp):
14 (WebCore::KJSProxy::initScriptIfNeeded):
16 2006-06-17 David Kilzer <ddkilzer@kilzer.net>
20 - Fix capitalization issue for case-sensitive filesystems.
22 * icon/SQLStatement.cpp: Change assertions.h to Assertions.h.
24 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
28 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7395
29 Table not properly re-flowed when floated div removed from layout
31 Test: fast/block/float/table-relayout.html
33 * rendering/RenderBlock.cpp:
34 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): Added marking
35 of children that use lineWidth.
36 * rendering/RenderBlock.h: Added a FIXME.
38 2006-06-17 Rob Buis <buis@kde.org>
42 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6282:
43 Adding new Option with new Option(text, value, defaultSelected, selected) fails to update selectedIndex
45 Update selectedIndex when a new option is added using javascript.
47 * bindings/js/kjs_html.cpp:
48 (KJS::JSHTMLSelectCollection::put):
49 * html/HTMLSelectElement.cpp:
50 (WebCore::HTMLSelectElement::setSelectedIndex):
51 (WebCore::HTMLSelectElement::setOption):
52 (WebCore::HTMLSelectElement::setLength):
53 * html/HTMLSelectElement.h:
55 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
59 - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
60 Assertion failure when dragging an image from the document into Safari's address bar
62 * manual-tests/reset-initiatedDrag.html: Added.
64 2006-06-16 David Kilzer <ddkilzer@kilzer.net>
68 http://bugzilla.opendarwin.org/show_bug.cgi?id=9463
69 REGRESSION (r14879): Assertion failure in CSSParser::sinkFloatingSelector()
70 (m_floatingSelectors.contains(selector)) in some CSS tests
72 * css/CSSGrammar.y: Create CSSSelector for FUNCTION using CSSParser::createFloatingSelector()
73 instead of the bare constructor.
75 2006-06-16 David Harrison <harrison@apple.com>
79 <rdar://problem/4565312> Mail has a weird drawing artifact with dotted red lines running across the window
81 Problem was that revision lost a check to not draw the markers
82 when paintingDisabled(). This led the markers to be drawn when
83 the window deactivated, at which time the view happens to be flipped.
85 It is similar but not the same as the Mail ToDo highlighting
86 issue, which is due to the custom highlight method
87 drawing when the focusView is nil. Mail team knows this
88 and has tested the fix.
90 * platform/mac/GraphicsContextMac.mm:
91 (WebCore::GraphicsContext::drawLineForMisspelling):
92 Early return if paintingDisabled().
94 2006-06-16 Adele Peterson <adele@apple.com>
98 Adjust padding of inner div so text lines up with text fields.
99 Adjust height of textarea so it only leaves room for the horizontal
100 scrollbar if overflow is set to scroll, or if overflow is set to
101 auto and there's no word wrap.
103 These changes will be tested by current layout tests when the
104 new textarea implementation takes effect.
106 * rendering/RenderTextField.cpp:
107 (WebCore::RenderTextField::createDivStyle):
108 (WebCore::RenderTextField::calcHeight):
110 2006-06-16 John Sullivan <sullivan@apple.com>
114 - fixed <rdar://problem/4590062> crash in marker code with particular set of steps on daringfireball.net
117 (WebCore::Document::addMarker):
118 Store [it - markers.begin()] in a local variable before modifying markers, since modifying markers can
119 change value of [it - markers.begin()].
121 2006-06-16 Adele Peterson <adele@apple.com>
125 Added code to draw Cocoa-like border for textareas instead of just using CSS.
128 * css/html4.css: Sets a 1px solid border.
129 * platform/mac/WebCoreSystemInterface.h:
130 * platform/mac/WebCoreSystemInterface.mm:
131 * rendering/RenderThemeMac.h: Formatting changes.
132 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextArea):
133 Uses new wkDrawBezeledTextArea to draw border.
135 2006-06-16 Mitz Pettel <opendarwin.org@mitzpettel.com>
139 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9432
140 REGRESSION: crash in capitalization code due to empty-string generated content
142 Test: fast/text/capitalize-empty-generated-string.html
144 * rendering/RenderText.cpp:
145 (WebCore::RenderText::setText): Skip empty-string text renderers when
146 looking for the previous character.
148 2006-06-15 Justin Garcia <justin.garcia@apple.com>
152 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8637>
153 REGRESSION (11-16-05): Selection gaps left behind after delete
155 * editing/SelectionController.cpp:
156 (WebCore::SelectionController::nodeWillBeRemoved): Invalidate the selection so that
157 selection gaps are invalidated.
159 2006-06-15 Timothy Hatcher <timothy@apple.com>
161 Reviewed by Geoff and Darin.
163 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
165 * WebCore.xcodeproj/project.pbxproj:
167 2006-06-15 Justin Garcia <justin.garcia@apple.com>
171 * editing/CompositeEditCommand.cpp:
172 (WebCore::hasARenderedDescendant):
173 (WebCore::CompositeEditCommand::prune): Ascend using the DOM
174 (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
175 during deletion is fixed, removing the fall back.
177 2006-06-15 Nicholas Shanks <contact@nickshanks.com>
179 Reviewed by Hyatt, landed by Joost de Valk.
181 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3233
183 Add support for the :lang pseudo-class.
186 * css/CSSSelector.cpp:
187 (WebCore::CSSSelector::operator == ):
189 (WebCore::CSSSelector::CSSSelector):
191 (WebCore::CSSParser::lex):
192 * css/cssstyleselector.cpp:
193 (WebCore::CSSStyleSelector::checkOneSelector):
194 * css/tokenizer.flex:
196 2006-06-15 Justin Garcia <justin.garcia@apple.com>
200 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9456>
201 REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
204 (WebCore::Frame::findString): When comparing the found range with
205 what's currently selected a) build a selection with the found
206 range to remove collapsed whitespace and b) compare ranges
207 instead of selection objects to ignore the way that the
208 current selection was made (to ignore the base and extent).
210 2006-06-15 David Kilzer <ddkilzer@kilzer.net>
214 http://bugzilla.opendarwin.org/show_bug.cgi?id=9382
215 IDL files missing copyright/license headers
217 Add Apple BSD license and copyright to IDL files.
219 * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
220 * ksvg2/bindings/idl/svg/SVGAElement.idl:
221 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
222 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
223 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
224 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
225 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
226 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
227 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
228 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
229 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
230 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
231 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
232 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
233 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
234 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
235 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
236 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
237 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
238 * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
239 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
240 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
241 * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
242 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
243 * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
244 * ksvg2/bindings/idl/svg/SVGDescElement.idl:
245 * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
246 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
247 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl:
248 * ksvg2/bindings/idl/svg/SVGEvent.idl:
249 * ksvg2/bindings/idl/svg/SVGException.idl:
250 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl:
251 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl:
252 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl:
253 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl:
254 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl:
255 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl:
256 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl:
257 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl:
258 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl:
259 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl:
260 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl:
261 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl:
262 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl:
263 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl:
264 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl:
265 * ksvg2/bindings/idl/svg/SVGFETileElement.idl:
266 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl:
267 * ksvg2/bindings/idl/svg/SVGFilterElement.idl:
268 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl:
269 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl:
270 * ksvg2/bindings/idl/svg/SVGGElement.idl:
271 * ksvg2/bindings/idl/svg/SVGGradientElement.idl:
272 * ksvg2/bindings/idl/svg/SVGICCColor.idl:
273 * ksvg2/bindings/idl/svg/SVGImageElement.idl:
274 * ksvg2/bindings/idl/svg/SVGLangSpace.idl:
275 * ksvg2/bindings/idl/svg/SVGLengthList.idl:
276 * ksvg2/bindings/idl/svg/SVGLineElement.idl:
277 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl:
278 * ksvg2/bindings/idl/svg/SVGLocatable.idl:
279 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl:
280 * ksvg2/bindings/idl/svg/SVGNumberList.idl:
281 * ksvg2/bindings/idl/svg/SVGPaint.idl:
282 * ksvg2/bindings/idl/svg/SVGPathElement.idl:
283 * ksvg2/bindings/idl/svg/SVGPathSeg.idl:
284 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl:
285 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl:
286 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl:
287 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl:
288 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl:
289 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl:
290 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl:
291 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl:
292 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl:
293 * ksvg2/bindings/idl/svg/SVGPathSegList.idl:
294 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl:
295 * ksvg2/bindings/idl/svg/SVGPatternElement.idl:
296 * ksvg2/bindings/idl/svg/SVGPointList.idl:
297 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl:
298 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl:
299 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl:
300 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl:
301 * ksvg2/bindings/idl/svg/SVGRectElement.idl:
302 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl:
303 * ksvg2/bindings/idl/svg/SVGScriptElement.idl:
304 * ksvg2/bindings/idl/svg/SVGSetElement.idl:
305 * ksvg2/bindings/idl/svg/SVGStopElement.idl:
306 * ksvg2/bindings/idl/svg/SVGStringList.idl:
307 * ksvg2/bindings/idl/svg/SVGStylable.idl:
308 * ksvg2/bindings/idl/svg/SVGStyleElement.idl:
309 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl:
310 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl:
311 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl:
312 * ksvg2/bindings/idl/svg/SVGTests.idl:
313 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl:
314 * ksvg2/bindings/idl/svg/SVGTextElement.idl:
315 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl:
316 * ksvg2/bindings/idl/svg/SVGTitleElement.idl:
317 * ksvg2/bindings/idl/svg/SVGTransformList.idl:
318 * ksvg2/bindings/idl/svg/SVGTransformable.idl:
319 * ksvg2/bindings/idl/svg/SVGURIReference.idl:
320 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl:
321 * ksvg2/bindings/idl/svg/SVGUseElement.idl:
322 * ksvg2/bindings/idl/svg/SVGViewElement.idl:
323 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl:
324 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl:
325 * ksvg2/svg/SVGAnimatedLength.idl:
327 2006-06-14 Justin Garcia <justin.garcia@apple.com>
331 <rdar://problem/4439248>
332 REGRESSION(412-417): [RTL] Serious problem with RTL signatures in Mail.app in 10.4.4 (7766)
334 * editing/markup.cpp:
335 (WebCore::renderedText): Use plainText so that we'll pull rendered text but in DOM order.
337 2006-06-14 Levi Weintraub <lweintraub@apple.com>
341 <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
342 TinyMCE: Implement execCommand(formatBlock, ...)
344 * WebCore.xcodeproj/project.pbxproj: Added FormatBlock.{h,cpp} to the project.
345 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
346 * bridge/mac/WebCoreFrameBridge.h: Added WebUndoActions
347 * editing/CompositeEditCommand.cpp:
348 (WebCore::CompositeEditCommand::moveParagraph): Added a preserveStyle bool.
349 (WebCore::CompositeEditCommand::moveParagraphs): Ditto. downstream() the start
350 or else we'll move collapsed whitespace and uncollapse it.
351 * editing/CompositeEditCommand.h:
352 * editing/DeleteSelectionCommand.cpp:
353 (WebCore::DeleteSelectionCommand::initializePositionData):
354 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Don't update m_endingPosition
355 because that's removeNode's responsibility.
356 (WebCore::updatePositionForNodeRemoval): Added.
357 (WebCore::DeleteSelectionCommand::removeNode): Turned removeFullySelectedNode into a virtual
358 overload of removeNode so that we can update positions as we remove nodes.
359 (WebCore::updatePositionForTextRemoval): Added.
360 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
361 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
362 (WebCore::DeleteSelectionCommand::fixupWhitespace): Got rid of m_trailingWhitespaceValid
363 since m_trailingWhitespace is always valid (we update it as we remove nodes).
364 (WebCore::DeleteSelectionCommand::mergeParagraphs):
365 (WebCore::DeleteSelectionCommand::doApply): Leading and trailing spaces should
366 be fixed if they have collapsed before merging paragraphs.
367 * editing/DeleteSelectionCommand.h:
368 * editing/EditAction.h:
370 * editing/FormatBlockCommand.cpp: Added.
371 (WebCore::FormatBlockCommand::FormatBlockCommand):
372 (WebCore::FormatBlockCommand::modifyRange): Similar to InsertListCommand::modifyRange().
373 (WebCore::FormatBlockCommand::doApply):
374 * editing/FormatBlockCommand.h: Added.
375 (WebCore::FormatBlockCommand::editingAction):
376 * editing/InsertListCommand.h:
377 (WebCore::InsertListCommand::editingAction):
378 * editing/JSEditor.cpp:
379 * editing/MergeIdenticalElementsCommand.cpp:
380 (WebCore::MergeIdenticalElementsCommand::doApply):
381 * editing/htmlediting.cpp:
382 (WebCore::validBlockTag):
383 (WebCore::createElement):
384 * editing/htmlediting.h:
386 2006-06-14 Maciej Stachowiak <mjs@apple.com>
390 - fixed <rdar://problem/4586051> 10.4.7 regression: 'Saved and recent' button on mapquest.com does not work
392 * dom/EventTargetNode.cpp:
393 (WebCore::EventTargetNode::dispatchWindowEvent):
395 2006-06-14 David Hyatt <hyatt@apple.com>
397 Rename RenderSlider to DeprecatedSlider, so that I can start work on
398 the new NSView-less slider.
402 * WebCore.vcproj/WebCore/WebCore.vcproj:
403 * WebCore.xcodeproj/project.pbxproj:
404 * html/HTMLInputElement.cpp:
405 (WebCore::HTMLInputElement::createRenderer):
406 * rendering/DeprecatedSlider.cpp: Added.
407 (WebCore::DeprecatedSlider::DeprecatedSlider):
408 (WebCore::DeprecatedSlider::calcMinMaxWidth):
409 (WebCore::DeprecatedSlider::updateFromElement):
410 (WebCore::DeprecatedSlider::valueChanged):
411 * rendering/DeprecatedSlider.h: Added.
412 (WebCore::DeprecatedSlider::renderName):
413 * rendering/RenderSlider.cpp: Removed.
414 * rendering/RenderSlider.h: Removed.
416 2006-06-13 Geoffrey Garen <ggaren@apple.com>
420 - Fixed <rdar://problem/4562192> Creating a new DOMHTMLDocument
423 - Added createHTMLDocument to Objc bindings, fixed up implementation
424 to comply with the DOM 2 Candidate Recommendation in which is was defined.
425 (It never made the final spec.) Also removed use of deprecatedString,
426 to avoid unnecessary killing of puppies.
428 * WebCore.xcodeproj/project.pbxproj:
429 * bindings/objc/DOM.mm:
430 (-[DOMImplementation createHTMLDocument:]):
431 * bindings/objc/DOMPrivate.h:
432 * dom/DOMImplementation.cpp:
433 (WebCore::DOMImplementation::createDocument):
434 (WebCore::DOMImplementation::createHTMLDocument):
436 2006-06-13 Alice Liu <alice.liu@apple.com>
440 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
442 * bindings/js/kjs_html.cpp:
443 (KJS::HTMLElementFunction::callAsFunction):
444 support this by converting the argument to an options object
445 before passing to remove()
447 2006-06-13 Darin Adler <darin@apple.com>
451 - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
453 This patch fixes a bug where the event listener cache does not distinguish
454 HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
455 prevented default masked a case of this bug on the yahoo.com home page until
456 we fixed bug 5180 on 2005-10-03.
458 Test: fast/events/event-listener-html-non-html-confusion.html
460 * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
462 * bindings/js/kjs_window.cpp:
463 (KJS::Window::~Window): Go through the additional maps when clearing the window object
464 pointer in event listeners.
465 (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
467 (KJS::Window::getJSUnprotectedEventListener): Ditto.
469 * bindings/js/kjs_events.cpp:
470 (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
471 or non-HTML map depending on the argument passed.
472 (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
473 HTML or non-HTML map depending on whether the HTML flag is set.
474 (KJS::JSEventListener::JSEventListener): More of the same.
475 (KJS::JSEventListener::~JSEventListener): Ditto.
476 (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
477 is not a listener at construction time, thus the code here to put the listener into a
478 map needs the HTML vs. non-HTML logic.
480 2006-06-13 Maciej Stachowiak <mjs@apple.com>
484 <rdar://problem/4583892> 10.4.7 regression: Hang occurs when attempting to load search results at mapquest.com
486 * dom/EventTargetNode.cpp:
487 (WebCore::EventTargetNode::dispatchGenericEvent): Don't allow
488 "load" events to propagate up to the window. We need this quirk to
489 avoid site hangs, because they depend on an old Mozilla bug.
491 2006-06-13 Antti Koivisto <koivisto@iki.fi>
495 http://bugzilla.opendarwin.org/show_bug.cgi?id=9314
496 Relative positioned block size doesnt update root layer size
498 - take relative positioning into account in leftmost/rightmost/lowestPosition()
499 - ignore zero width/height boxes in leftmost/rightmost/lowestPosition()
500 - split relativePositionOffset() to x and y functions
502 * rendering/RenderBox.cpp:
503 (WebCore::RenderBox::absolutePosition):
504 (WebCore::RenderBox::relativePositionOffsetX):
505 (WebCore::RenderBox::relativePositionOffsetY):
506 (WebCore::RenderBox::lowestPosition):
507 (WebCore::RenderBox::rightmostPosition):
508 (WebCore::RenderBox::leftmostPosition):
509 * rendering/RenderBox.h:
510 * rendering/RenderFlow.cpp:
511 (WebCore::RenderFlow::lowestPosition):
512 (WebCore::RenderFlow::rightmostPosition):
513 (WebCore::RenderFlow::leftmostPosition):
514 * rendering/RenderLayer.cpp:
515 (WebCore::RenderLayer::updateLayerPosition):
516 * rendering/RenderObject.cpp:
517 (WebCore::RenderObject::offsetLeft):
518 (WebCore::RenderObject::offsetTop):
520 2006-06-13 Anders Carlsson <acarlsson@apple.com>
522 Reviewed by Dave Hyatt.
524 http://bugzilla.opendarwin.org/show_bug.cgi?id=9427
525 xml-stylesheet processing instructions outside of the prolog should have no effect.
527 * dom/ProcessingInstruction.cpp:
528 (WebCore::ProcessingInstruction::checkStyleSheet):
531 * dom/xml_tokenizer.cpp:
532 (WebCore::XMLTokenizer::processingInstruction):
533 Only check for style sheet if the root element hasn't yet been encountered.
535 2006-06-13 Anders Carlsson <acarlsson@apple.com>
539 http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
540 REGRESSION: fix for bug 9390 broke two layout tests
542 * loader/PluginDocument.cpp:
543 (WebCore::PluginTokenizer::writeRawData):
544 Call finished() after setting up the document structure so we'll emit onload events.
546 2006-06-12 Geoffrey Garen <ggaren@apple.com>
548 build fix -- forgot to svn add this file
550 * ForwardingHeaders/kjs/SavedBuiltins.h: Added.
552 2006-06-12 Brady Eidson <beidson@apple.com>
556 Fixed a bug in append(char) and append(UChar) where our intended copy-on-write semantics was ignored!
558 * platform/String.cpp:
559 (WebCore::String::append):
561 2006-06-12 Geoffrey Garen <ggaren@apple.com>
563 Reviewed by TimO, Maciej.
565 - WebCore part of merging InterpreterImp into Interpreter. No test
566 because there's no behavior change.
568 A substantive change here is that ScriptInterpreter::mark must now chain to
569 Interpreter::mark, since Interpreter needs to mark the things that
570 InterpreterImp used to mark.
572 * WebCore.xcodeproj/project.pbxproj:
573 * bindings/js/kjs_binding.cpp:
574 * bindings/js/kjs_window.cpp:
576 * bridge/mac/WebCoreFrameBridge.mm:
577 * bridge/mac/WebCoreScriptDebugger.mm:
578 (-[WebCoreScriptCallFrame evaluateWebScript:]):
579 * kwq/KWQPageState.mm:
581 2006-06-12 Brady Eidson <beidson@apple.com>
585 Changed String::ascii() to return a Vector<char> instead of const char*
586 This allows us to use it "regularly" as the returned vector will destruct
587 and not leak memory like the previous approach.
588 We can now do a String.ascii().data() to get a char* buffer instead of
589 String.deprecatedString().ascii(). It doesn't improve the style much but
590 dumping the memory-leak issue is a plus.
592 * icon/IconDatabase.cpp:
593 (WebCore::IconDatabase::open):
594 (WebCore::IconDatabase::clearDatabase):
595 * icon/SQLDatabase.cpp:
597 * icon/SQLStatement.cpp:
598 (WebCore::SQLStatement::prepare):
599 (WebCore::SQLStatement::step):
600 (WebCore::SQLStatement::returnTextResults):
601 (WebCore::SQLStatement::returnTextResults16):
602 (WebCore::SQLStatement::returnIntResults):
603 (WebCore::SQLStatement::returnInt64Results):
604 (WebCore::SQLStatement::returnDoubleResults):
605 In addition to the changes to the string classes, changed my database code over to the new
608 * platform/PlatformString.h:
609 * platform/String.cpp:
610 (WebCore::String::ascii):
611 * platform/StringImpl.cpp:
612 (WebCore::StringImpl::ascii):
613 * platform/StringImpl.h:
615 2006-06-12 Dave Hyatt <hyatt@apple.com>
617 Add the notion of a selection foreground color to the engine for
618 Win32. Rename existing selectionColor methods to be
619 selectionBackgroundColor instead.
621 Change the 60% alpha blend rule for transparent selection to
622 instead be a range from 60-80%, with less transparency being
623 used as needed to ensure the transformed color more closely
624 approximates the original operating system color when blended
625 with a white background.
629 * platform/Color.cpp:
631 (WebCore::Color::blendWithWhite):
633 * rendering/InlineTextBox.cpp:
634 (WebCore::InlineTextBox::paint):
635 (WebCore::InlineTextBox::paintSelection):
636 * rendering/RenderBlock.cpp:
637 (WebCore::RenderBlock::fillHorizontalSelectionGap):
638 (WebCore::RenderBlock::fillVerticalSelectionGap):
639 (WebCore::RenderBlock::fillLeftSelectionGap):
640 (WebCore::RenderBlock::fillRightSelectionGap):
641 * rendering/RenderHTMLCanvas.cpp:
642 (WebCore::RenderHTMLCanvas::paint):
643 * rendering/RenderImage.cpp:
644 (WebCore::RenderImage::paint):
645 * rendering/RenderListMarker.cpp:
646 (WebCore::RenderListMarker::paint):
647 * rendering/RenderObject.cpp:
648 (WebCore::RenderObject::selectionBackgroundColor):
649 (WebCore::RenderObject::selectionForegroundColor):
650 * rendering/RenderObject.h:
651 * rendering/RenderTheme.cpp:
652 (WebCore::RenderTheme::activeSelectionBackgroundColor):
653 (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
654 (WebCore::RenderTheme::platformActiveSelectionBackgroundColor):
655 (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
656 (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
657 (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
658 * rendering/RenderTheme.h:
659 * rendering/RenderThemeMac.h:
660 * rendering/RenderThemeMac.mm:
661 (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
662 (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
663 * rendering/RenderThemeWin.cpp:
664 (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
665 (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
666 (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
667 (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
668 * rendering/RenderThemeWin.h:
669 * rendering/RenderWidget.cpp:
670 (WebCore::RenderWidget::paint):
672 2006-06-12 John Sullivan <sullivan@apple.com>
674 Reviewed by Darin Adler.
677 (WebCore::Frame::markAllMatchesForText):
678 Do a "fake" paint here so that the rectangles for the text matches will have been
679 computed by the time this method returns.
681 2006-06-12 Brady Eidson <beidson@apple.com>
683 Reviewed by Levi and Tim Omernick.
685 -Added a skeleton sqlite3 icon database file to IconDatabase
686 -Added functionality to validate and recreate this icon.db file
687 -Fixed some buggys in SQLDatabase.cpp
689 * icon/IconDatabase.cpp:
690 (WebCore::IconDatabase::open):
691 (WebCore::IconDatabase::isValidDatabase):
692 (WebCore::IconDatabase::clearDatabase):
693 (WebCore::IconDatabase::recreateDatabase):
694 * icon/IconDatabase.h:
696 * icon/SQLStatement.cpp:
697 (WebCore::SQLStatement::columnCount):
698 (WebCore::SQLStatement::getColumnName):
699 (WebCore::SQLStatement::getColumnName16):
700 (WebCore::SQLStatement::getColumnText):
701 (WebCore::SQLStatement::getColumnText16):
702 (WebCore::SQLStatement::getColumnDouble):
703 (WebCore::SQLStatement::getColumnInt):
704 (WebCore::SQLStatement::getColumnInt64):
705 (WebCore::SQLStatement::getColumnBlob):
706 -Added checks to make sure we had a valid working sqlite3_statement as the sqlite3_*
707 function calls weren't as error-tolerant as documentation advertised
708 (maybe differences between the 3.3 docs I looked at and the 3.1.3 version installed on OSX)
710 2006-06-12 Brady Eidson <beidson@apple.com>
714 -Added SQLite helper wrappers to ease use of SQLite in the IconDatabase.
715 -Changed the base IconDatabase over to this new framework.
717 * WebCore.xcodeproj/project.pbxproj:
718 * bridge/mac/WebCoreIconDatabaseBridge.mm:
719 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
720 -By popular request, removed an annoying log message I'd accidentally left in
722 * icon/IconDatabase.cpp:
723 (WebCore::IconDatabase::IconDatabase):
724 (WebCore::IconDatabase::open):
725 (WebCore::IconDatabase::close):
726 (WebCore::IconDatabase::~IconDatabase):
727 * icon/IconDatabase.h:
728 (WebCore::IconDatabase::isOpen):
729 -Changed over IconDatabase from direct sqlite3_* calls to the new SQLDatabase calls
731 * icon/SQLDatabase.cpp: Added.
732 (SQLDatabase::SQLDatabase):
734 (SQLDatabase::close):
735 (SQLDatabase::executeCommand):
736 (SQLDatabase::tableExists):
737 * icon/SQLDatabase.h: Added.
738 (WebCore::SQLDatabase::isOpen):
739 (WebCore::SQLDatabase::getPath):
740 (WebCore::SQLDatabase::lastError):
741 (WebCore::SQLDatabase::lastErrorMsg):
742 (WebCore::SQLStatement::isPrepared):
743 (WebCore::SQLStatement::lastError):
744 (WebCore::SQLStatement::lastErrorMsg):
745 * icon/SQLStatement.cpp: Added.
746 (WebCore::SQLStatement::SQLStatement):
747 (WebCore::SQLStatement::~SQLStatement):
748 (WebCore::SQLStatement::prepare):
749 (WebCore::SQLStatement::step):
750 (WebCore::SQLStatement::finalize):
751 (WebCore::SQLStatement::reset):
752 (WebCore::SQLStatement::executeCommand):
753 (WebCore::SQLStatement::bindBlob):
754 (WebCore::SQLStatement::bindText):
755 (WebCore::SQLStatement::columnCount):
756 (WebCore::SQLStatement::getColumnName):
757 (WebCore::SQLStatement::getColumnName16):
758 (WebCore::SQLStatement::getColumnText):
759 (WebCore::SQLStatement::getColumnText16):
760 (WebCore::SQLStatement::getColumnDouble):
761 (WebCore::SQLStatement::getColumnInt):
762 (WebCore::SQLStatement::getColumnInt64):
763 (WebCore::SQLStatement::getColumnBlob):
764 (WebCore::SQLStatement::returnTextResults):
765 (WebCore::SQLStatement::returnTextResults16):
766 (WebCore::SQLStatement::returnIntResults):
767 (WebCore::SQLStatement::returnInt64Results):
768 (WebCore::SQLStatement::returnDoubleResults):
769 -Initial checking of SQLDatabase framework
771 * platform/PlatformString.h:
772 * platform/String.cpp:
773 (WebCore::String::String):
774 -Added an explicit UChar* constructor to our string class as much of sqlite3's UTF16 handling is based on
775 null-terminated UTF16 which we didn't yet support.
777 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
781 http://bugzilla.opendarwin.org/show_bug.cgi?id=9408
782 Clean build fails with "make: *** No rule to make target `SVGElementFactory.cpp', needed by `all'. Stop"
784 * DerivedSources.make: Fix clean builds.
786 2006-06-11 Darin Adler <darin@apple.com>
788 - another try at fixing Windows
790 * loader/CachedResource.h:
791 * platform/cairo/GraphicsContextCairo.cpp:
792 * platform/image-decoders/ImageDecoder.h:
793 (WebCore::ImageDecoder::setData):
794 * platform/image-decoders/gif/GIFImageDecoder.cpp:
795 (WebCore::GIFImageDecoderPrivate::decode):
796 (WebCore::GIFImageDecoder::setData):
797 * platform/image-decoders/gif/GIFImageDecoder.h:
798 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
799 (WebCore::JPEGImageReader::decode):
800 (WebCore::JPEGImageDecoder::setData):
801 * platform/image-decoders/jpeg/JPEGImageDecoder.h:
802 * platform/image-decoders/png/PNGImageDecoder.cpp:
803 (WebCore::PNGImageReader::decode):
804 (WebCore::PNGImageDecoder::setData):
805 * platform/image-decoders/png/PNGImageDecoder.h:
806 s/DeprecatedByteArray/Vector<char>/
808 2006-06-11 Darin Adler <darin@apple.com>
810 - try to fix Windows build
812 * platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource):
813 Use Vector<char> instead of DeprecatedByteArray.
815 * platform/win/TemporaryLinkStubs.cpp: (KWQServeSynchronousRequest):
816 Don't try to return 0 from a function that returns a Vector<char>.
818 2006-06-11 Sam Weinig <sam.weinig@gmail.com>
820 Reviewed by Hyatt, tweaked quite a bit and landed by Darin.
822 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8039
823 Remove use of DeprecatedArray in favor of new Vector class
825 This removes most of the uses of DeprecatedArray and
826 DeprecatedByteArray, with the exception of DeprecatedCString.
828 No test cases added because there is no change in
831 * loader/CachedCSSStyleSheet.cpp:
832 (WebCore::CachedCSSStyleSheet::data):
833 * loader/CachedCSSStyleSheet.h:
834 * loader/CachedImage.cpp:
835 (WebCore::CachedImage::bufferData):
836 (WebCore::CachedImage::data):
837 (WebCore::CachedImage::checkNotify):
838 (WebCore::CachedImage::shouldStopAnimation):
839 * loader/CachedImage.h:
840 * loader/CachedObject.cpp:
841 (WebCore::CachedObject::bufferData):
842 (WebCore::CachedObject::setExpireDate):
843 * loader/CachedObject.h:
844 (WebCore::CachedObject::setCharset):
845 * loader/CachedScript.cpp:
846 (WebCore::CachedScript::data):
847 * loader/CachedScript.h:
848 * loader/CachedXBLDocument.cpp:
849 (WebCore::CachedXBLDocument::data):
850 (WebCore::CachedXBLDocument::checkNotify):
851 * loader/CachedXBLDocument.h:
852 * loader/CachedXSLStyleSheet.cpp:
853 (WebCore::CachedXSLStyleSheet::data):
854 * loader/CachedXSLStyleSheet.h:
855 * loader/Request.cpp:
856 (WebCore::Request::Request):
857 (WebCore::Request::~Request):
859 (WebCore::Request::buffer):
860 (WebCore::Request::cachedObject):
861 (WebCore::Request::docLoader):
862 (WebCore::Request::isIncremental):
863 (WebCore::Request::setIsIncremental):
864 (WebCore::Request::isMultipart):
865 (WebCore::Request::setIsMultipart):
867 (WebCore::crossDomain):
868 (WebCore::Loader::Loader):
869 (WebCore::Loader::load):
870 (WebCore::Loader::servePendingRequests):
871 (WebCore::Loader::receivedAllData):
872 (WebCore::Loader::receivedResponse):
873 (WebCore::Loader::receivedData):
874 (WebCore::Loader::numRequests):
875 (WebCore::Loader::cancelRequests):
876 (WebCore::Loader::removeBackgroundDecodingRequest):
877 (WebCore::Loader::jobForRequest):
878 * platform/Image.cpp:
879 (WebCore::Image::setData):
881 (WebCore::Image::dataBuffer):
883 * css/cssstyleselector.cpp:
884 (WebCore::CSSStyleSelector::init):
885 (WebCore::CSSStyleSelector::matchRules):
886 (WebCore::CSSStyleSelector::matchRulesForList):
887 (WebCore::CSSStyleSelector::sortMatchedRules):
888 (WebCore::CSSStyleSelector::initForStyleResolve):
889 (WebCore::CSSStyleSelector::createStyleForElement):
890 (WebCore::CSSStyleSelector::createPseudoStyleForElement):
891 * css/cssstyleselector.h:
892 (WebCore::CSSStyleSelector::addMatchedRule):
893 (WebCore::CSSStyleSelector::addMatchedDeclaration):
894 * dom/xml_tokenizer.cpp:
895 (WebCore::OffsetBuffer::OffsetBuffer):
897 * html/HTMLOptionElement.cpp:
898 (WebCore::HTMLOptionElement::index):
899 * html/HTMLSelectElement.cpp:
900 (WebCore::HTMLSelectElement::selectedIndex):
901 (WebCore::HTMLSelectElement::setSelectedIndex):
902 (WebCore::HTMLSelectElement::length):
903 (WebCore::HTMLSelectElement::remove):
904 (WebCore::HTMLSelectElement::value):
905 (WebCore::HTMLSelectElement::setValue):
906 (WebCore::HTMLSelectElement::state):
907 (WebCore::HTMLSelectElement::restoreState):
908 (WebCore::HTMLSelectElement::appendFormData):
909 (WebCore::HTMLSelectElement::optionToListIndex):
910 (WebCore::HTMLSelectElement::listToOptionIndex):
911 (WebCore::HTMLSelectElement::recalcListItems):
912 (WebCore::HTMLSelectElement::reset):
913 (WebCore::HTMLSelectElement::notifyOptionSelected):
914 * html/HTMLSelectElement.h:
915 (WebCore::HTMLSelectElement::listItems):
918 (KWQServeSynchronousRequest):
919 * kwq/KWQTextStream.cpp:
920 (QTextStream::operator<<):
921 * kwq/KWQTextStream.h:
922 * loader/FormData.cpp:
923 (WebCore::FormData::flatten):
924 (WebCore::FormData::flattenToString):
926 (WebCore::FormDataElement::FormDataElement):
927 * platform/DeprecatedString.cpp:
928 * platform/DeprecatedString.h:
929 * platform/IntPointArray.cpp: Removed.
930 * platform/IntPointArray.h: Removed.
931 * platform/TextEncoding.cpp:
932 (WebCore::TextEncoding::toUnicode):
933 * platform/TextEncoding.h:
934 * platform/cairo/pixman/src/pixregion.c:
935 * platform/cg/PathCG.cpp:
936 (WebCore::Path::Path):
937 * rendering/RenderObject.cpp:
938 (WebCore::RenderObject::drawBorder):
939 * rendering/RenderTable.h:
940 (WebCore::RenderTable::colToEffCol):
941 (WebCore::RenderTable::effColToCol):
942 * rendering/RenderTableSection.cpp:
943 (WebCore::RenderTableSection::ensureRows):
944 (WebCore::RenderTableSection::addCell):
945 (WebCore::RenderTableSection::setCellWidths):
946 * rendering/RenderTableSection.h:
947 * rendering/bidi.cpp:
948 (WebCore::addMidpoint):
949 (WebCore::RenderBlock::layoutInlineChildren):
950 * rendering/render_form.cpp:
951 (WebCore::RenderSelect::updateFromElement):
952 (WebCore::RenderSelect::layout):
953 (WebCore::RenderSelect::valueChanged):
954 (WebCore::RenderSelect::selectionChanged):
955 (WebCore::RenderSelect::updateSelection):
956 * rendering/table_layout.cpp:
957 (WebCore::FixedTableLayout::layout):
958 * rendering/table_layout.h:
959 * xml/XSLTProcessor.cpp:
960 (WebCore::docLoaderFunc):
961 * xml/xmlhttprequest.cpp:
962 (WebCore::XMLHttpRequest::send):
963 (WebCore::XMLHttpRequest::processSyncLoadResults):
964 * xml/xmlhttprequest.h:
966 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
970 http://bugzilla.opendarwin.org/show_bug.cgi?id=9394
973 * DerivedSources.make: Removed tabs. Create empty SVGElementFactory.cpp on no-svg build.
974 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Added #if SVG_SUPPORT/#endif.
975 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Ditto.
976 * ksvg2/bindings/idl/svg/SVGAElement.idl: Add "Conditional=SVG" to all interfaces.
977 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl: Ditto.
978 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl: Ditto.
979 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl: Ditto.
980 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl: Ditto.
981 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl: Ditto.
982 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl: Ditto.
983 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl: Ditto.
984 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl: Ditto.
985 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Ditto.
986 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl: Ditto.
987 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl: Ditto.
988 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl: Ditto.
989 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl: Ditto.
990 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl: Ditto.
991 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl: Ditto.
992 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl: Ditto.
993 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl: Ditto.
994 * ksvg2/bindings/idl/svg/SVGCircleElement.idl: Ditto.
995 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl: Ditto.
996 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl: Ditto.
997 * ksvg2/bindings/idl/svg/SVGCursorElement.idl: Ditto.
998 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Ditto.
999 * ksvg2/bindings/idl/svg/SVGDefsElement.idl: Ditto.
1000 * ksvg2/bindings/idl/svg/SVGDescElement.idl: Ditto.
1001 * ksvg2/bindings/idl/svg/SVGElementInstance.idl: Ditto.
1002 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl: Ditto.
1003 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: Ditto.
1004 * ksvg2/bindings/idl/svg/SVGEvent.idl: Ditto.
1005 * ksvg2/bindings/idl/svg/SVGException.idl: Ditto.
1006 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl: Ditto.
1007 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl: Ditto.
1008 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl: Ditto.
1009 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl: Ditto.
1010 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl: Ditto.
1011 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl: Ditto.
1012 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl: Ditto.
1013 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl: Ditto.
1014 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl: Ditto.
1015 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl: Ditto.
1016 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl: Ditto.
1017 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl: Ditto.
1018 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl: Ditto.
1019 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl: Ditto.
1020 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl: Ditto.
1021 * ksvg2/bindings/idl/svg/SVGFETileElement.idl: Ditto.
1022 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl: Ditto.
1023 * ksvg2/bindings/idl/svg/SVGFilterElement.idl: Ditto.
1024 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl: Ditto.
1025 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl: Ditto.
1026 * ksvg2/bindings/idl/svg/SVGGElement.idl: Ditto.
1027 * ksvg2/bindings/idl/svg/SVGGradientElement.idl: Ditto.
1028 * ksvg2/bindings/idl/svg/SVGICCColor.idl: Ditto.
1029 * ksvg2/bindings/idl/svg/SVGImageElement.idl: Ditto.
1030 * ksvg2/bindings/idl/svg/SVGLangSpace.idl: Ditto.
1031 * ksvg2/bindings/idl/svg/SVGLengthList.idl: Ditto.
1032 * ksvg2/bindings/idl/svg/SVGLineElement.idl: Ditto.
1033 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl: Ditto.
1034 * ksvg2/bindings/idl/svg/SVGLocatable.idl: Ditto.
1035 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl: Ditto.
1036 * ksvg2/bindings/idl/svg/SVGNumberList.idl: Ditto.
1037 * ksvg2/bindings/idl/svg/SVGPaint.idl: Ditto.
1038 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Ditto.
1039 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Ditto.
1040 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Ditto.
1041 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Ditto.
1042 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Ditto.
1043 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Ditto.
1044 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Ditto.
1045 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Ditto.
1046 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Ditto.
1047 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Ditto.
1048 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Ditto.
1049 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Ditto.
1050 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Ditto.
1051 * ksvg2/bindings/idl/svg/SVGPatternElement.idl: Ditto.
1052 * ksvg2/bindings/idl/svg/SVGPointList.idl: Ditto.
1053 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl: Ditto.
1054 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl: Ditto.
1055 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl: Ditto.
1056 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl: Ditto.
1057 * ksvg2/bindings/idl/svg/SVGRectElement.idl: Ditto.
1058 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl: Ditto.
1059 * ksvg2/bindings/idl/svg/SVGScriptElement.idl: Ditto.
1060 * ksvg2/bindings/idl/svg/SVGSetElement.idl: Ditto.
1061 * ksvg2/bindings/idl/svg/SVGStopElement.idl: Ditto.
1062 * ksvg2/bindings/idl/svg/SVGStringList.idl: Ditto.
1063 * ksvg2/bindings/idl/svg/SVGStylable.idl: Ditto.
1064 * ksvg2/bindings/idl/svg/SVGStyleElement.idl: Ditto.
1065 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl: Ditto.
1066 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl: Ditto.
1067 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl: Ditto.
1068 * ksvg2/bindings/idl/svg/SVGTests.idl: Ditto.
1069 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl: Ditto.
1070 * ksvg2/bindings/idl/svg/SVGTextElement.idl: Ditto.
1071 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl: Ditto.
1072 * ksvg2/bindings/idl/svg/SVGTitleElement.idl: Ditto.
1073 * ksvg2/bindings/idl/svg/SVGTransformList.idl: Ditto.
1074 * ksvg2/bindings/idl/svg/SVGTransformable.idl: Ditto.
1075 * ksvg2/bindings/idl/svg/SVGURIReference.idl: Ditto.
1076 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl: Ditto.
1077 * ksvg2/bindings/idl/svg/SVGUseElement.idl: Ditto.
1078 * ksvg2/bindings/idl/svg/SVGViewElement.idl: Ditto.
1079 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl: Ditto.
1080 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl: Ditto.
1081 * ksvg2/svg/SVGAngle.idl: Ditto.
1082 * ksvg2/svg/SVGAnimatedLength.idl: Ditto.
1083 * ksvg2/svg/SVGColor.idl: Ditto.
1084 * ksvg2/svg/SVGDocument.idl: Ditto.
1085 * ksvg2/svg/SVGElement.idl: Ditto.
1086 * ksvg2/svg/SVGEvent.idl: Ditto.
1087 * ksvg2/svg/SVGLength.idl: Ditto.
1088 * ksvg2/svg/SVGMatrix.idl: Ditto.
1089 * ksvg2/svg/SVGNumber.idl: Ditto.
1090 * ksvg2/svg/SVGPoint.idl: Ditto.
1091 * ksvg2/svg/SVGRect.idl: Ditto.
1092 * ksvg2/svg/SVGSVGElement.idl: Ditto.
1093 * ksvg2/svg/SVGTransform.idl: Ditto.
1095 2006-06-11 Anders Carlsson <acarlsson@apple.com>
1099 http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
1100 Move full-frame plugins to WebCore
1102 * WebCore.vcproj/WebCore/WebCore.vcproj:
1103 * WebCore.xcodeproj/project.pbxproj:
1106 * bridge/mac/FrameMac.h:
1107 * bridge/mac/FrameMac.mm:
1108 (WebCore::FrameMac::redirectDataToPlugin):
1111 * bridge/mac/WebCoreFrameBridge.h:
1112 * bridge/mac/WebCoreFrameBridge.mm:
1113 Add redirectDataToPlugin which is used to redirect incoming data
1116 * bridge/mac/WebCoreViewFactory.h:
1117 Add pluginSupportsMIMEType which returns whether any plugins support a given MIME type.
1119 * dom/DOMImplementation.cpp:
1120 * dom/DOMImplementation.h:
1121 Get rid of createTextDocument and just create a text document explicitly when needed.
1124 (WebCore::Document::isPluginDocument):
1125 * loader/PluginDocument.cpp: Added.
1126 (WebCore::PluginTokenizer::PluginTokenizer):
1127 (WebCore::PluginTokenizer::wantsRawData):
1128 (WebCore::PluginTokenizer::write):
1129 (WebCore::PluginTokenizer::createDocumentStructure):
1130 (WebCore::PluginTokenizer::writeRawData):
1131 (WebCore::PluginTokenizer::stopParsing):
1132 (WebCore::PluginTokenizer::finish):
1133 (WebCore::PluginTokenizer::isWaitingForScripts):
1134 (WebCore::PluginDocument::PluginDocument):
1135 (WebCore::PluginDocument::createTokenizer):
1136 * loader/PluginDocument.h: Added.
1137 (WebCore::PluginDocument::isPluginDocument):
1141 (WebCore::Frame::begin):
1142 Possibly create a plugin document.
1145 (WebCore::Frame::redirectDataToPlugin):
1148 * platform/PlugInInfoStore.h:
1149 * platform/mac/PlugInInfoStoreMac.mm:
1150 (WebCore::PlugInInfoStore::supportsMIMEType):
1151 Ask WebCoreViewFactory if the MIME type is supported.
1153 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1157 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9334
1158 Incomplete repaint when changing block from non-positioned to positioned
1160 Test: fast/repaint/static-to-positioned.html
1162 * rendering/RenderObject.cpp:
1163 (WebCore::RenderObject::setStyle): If changing from static to positioned, repaint
1166 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1170 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9193
1171 REGRESSION: setting an opacity on an element with an outline causes the outline to disappear completely
1173 Test: fast/layers/opacity-outline.html
1175 - fix repainting of layer children's outlines that extend beyond the layer
1177 Test: fast/repaint/layer-child-outline.html
1179 * rendering/RenderLayer.cpp:
1180 (WebCore::RenderLayer::intersectsDamageRect): Account for outlines.
1181 (WebCore::RenderLayer::absoluteBoundingBox): Ditto.
1182 * rendering/RenderObject.cpp:
1183 (WebCore::RenderObject::maximalOutlineSize): Changed to return the view's maximal
1184 outline size rather than 0 for PaintPhaseChildOutlines.
1186 2006-06-10 Steve Falkenburg <sfalken@apple.com>
1190 * platform/cairo/GraphicsContextCairo.cpp:
1191 * platform/win/TemporaryLinkStubs.cpp:
1192 (GraphicsContext::scale):
1194 2006-06-10 Geoffrey Garen <ggaren@apple.com>
1196 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
1197 Linux porting compile bug
1199 Fix by Mike Emmel, Reviewed by Darin.
1201 * Projects/gdk/webcore-gdk.bkl:
1202 * WebCoreSources.bkl:
1203 * css/maketokenizer:
1204 * html/HTMLCanvasElement.cpp:
1205 * html/HTMLImageElement.h:
1206 * icon/IconDatabase.cpp:
1207 * make-generated-sources.sh:
1209 * page/FramePrivate.h:
1210 * platform/Cursor.h:
1211 * platform/FontData.h:
1212 (WebCore::FontData::getGlyphIndex):
1213 * platform/GlyphBuffer.h:
1214 (WebCore::GlyphBuffer::glyphAt):
1215 (WebCore::GlyphBuffer::advanceAt):
1216 (WebCore::GlyphBuffer::add):
1217 * platform/GraphicsContext.h:
1218 * platform/PlatformKeyboardEvent.h:
1219 * platform/PlatformMouseEvent.h:
1220 * platform/PlatformWheelEvent.h:
1221 * platform/ScrollView.h:
1222 * platform/TransferJob.h:
1223 (WebCore::TransferJob::getInternal):
1224 * platform/TransferJobInternal.h:
1225 (WebCore::TransferJobInternal::TransferJobInternal):
1226 * platform/Widget.h:
1227 * platform/cairo/GraphicsContextCairo.cpp:
1228 (WebCore::GraphicsContext::GraphicsContext):
1229 (WebCore::GraphicsContext::roundToDevicePixels):
1231 * xpath/impl/XPathValue.cpp:
1233 2006-06-09 John Sullivan <sullivan@apple.com>
1235 Reviewed by Tim Omernick and Dave Hyatt.
1237 WebCore support for computing but not highlighting rects for text matches.
1240 added setRenderedRectForMarker() and renderedRectsForMarkers(), and redefined
1241 MarkerMap to be a hashtable of node -> (pair of vectors), one vector of markers
1242 and one vector of rects
1245 (placeholderRectForMarker()):
1246 new function, returns a recognizable degenerate rect used until a real rect has been set
1247 (WebCore::Document::addMarker):
1248 Reworked for new MarkerMap data structure; now adds parallel placeholder rect
1250 (WebCore::Document::copyMarkers):
1251 Reworked for new MarkerMap data structure
1252 (WebCore::Document::removeMarkers):
1253 Reworked for new MarkerMap data structure; now removed corresponding rect along
1255 (WebCore::Document::markersForNode):
1256 Reworked for new MarkerMap data structure
1257 (WebCore::Document::renderedRectsForMarkers):
1258 New method, returns an array of all non-placeholder rects for the given marker type
1259 (WebCore::Document::repaintMarkers):
1260 Reworked for new MarkerMap data structure
1261 (WebCore::Document::setRenderedRectForMarker):
1262 New method, sets the rendered rect for a given marker
1263 (WebCore::Document::shiftMarkers):
1264 Reworked for new MarkerMap data structure; resets rendered rects to placeholders.
1266 * rendering/InlineTextBox.cpp:
1267 (WebCore::InlineTextBox::paint):
1268 removed markedTextMatchesAreHighlighted guard; we always want to call paintTextMatchMarker
1269 now, but sometimes we will end up only computing the rect, not actually highlighting it.
1270 (Maybe some names should be improved here?)
1271 (WebCore::InlineTextBox::paintTextMatchMarker):
1272 Reorganized to move all the code that actually draws into a block that's guarded by
1273 markedTextMatchesAreHighlighted. The rest of the code computes where the highlight will
1274 go, and now we always use that computation in order to call setRenderedRectForMarker.
1276 * bridge/mac/WebCoreFrameBridge.h:
1277 * bridge/mac/WebCoreFrameBridge.mm:
1278 (-[WebCoreFrameBridge rectsForTextMatches]):
1279 New method, returns an array of NSValues representing NSRects. Gets them
1280 from Document::renderedRectsForMarkers
1282 2006-06-10 Anders Carlsson <acarlsson@apple.com>
1286 * bindings/js/kjs_html.cpp:
1287 (KJS::JSHTMLElement::put):
1288 Call WebCore::JSHTMLElement::put so that autogenerated setters will work
1291 2006-06-09 Geoffrey Garen <ggaren@apple.com>
1293 - Build fix after last JSC check-in (oops!)
1295 * bridge/mac/WebCoreScriptDebugger.mm:
1296 (-[WebCoreScriptCallFrame scopeChain]):
1297 (-[WebCoreScriptCallFrame functionName]):
1298 (-[WebCoreScriptCallFrame evaluateWebScript:]):
1300 2006-06-09 David Hyatt <hyatt@apple.com>
1302 Rename m_isFocused on the frame to m_isActive, since it isn't really
1303 about focus but is instead about whether or not the top-level window is
1306 Pull code that was incorrectly factored into Mac-only code out of FrameMac
1307 and back up into Frame.
1309 Reviewed by andersca
1311 * bridge/mac/FrameMac.h:
1312 * bridge/mac/FrameMac.mm:
1314 (WebCore::Frame::setFocusNodeIfNeeded):
1315 (WebCore::Frame::isActive):
1316 (WebCore::Frame::setIsActive):
1317 * page/FramePrivate.h:
1318 (WebCore::FramePrivate::FramePrivate):
1320 2006-06-09 David Hyatt <hyatt@apple.com>
1322 Rework selection coloring. Rename displaysWithFocusAttributes
1323 to isActive. Move the white-blending code onto the Color API to make
1324 it more convenient to mutate colors for selection blending. Eliminate all
1325 the selection state from the GraphicsContext and move it to the RenderTheme.
1326 Implement both Win32 and Mac theme selection colors.
1330 * bridge/mac/FrameMac.h:
1331 * bridge/mac/FrameMac.mm:
1332 (WebCore::FrameMac::setIsActive):
1333 * bridge/mac/WebCoreFrameBridge.h:
1334 * bridge/mac/WebCoreFrameBridge.mm:
1335 (-[WebCoreFrameBridge drawRect:]):
1336 (-[WebCoreFrameBridge setIsActive:]):
1337 (-[WebCoreFrameBridge selectionColor]):
1338 * css/cssstyleselector.cpp:
1339 (WebCore::CSSStyleSelector::checkOneSelector):
1341 (WebCore::Frame::isActive):
1342 (WebCore::Frame::setIsActive):
1344 * platform/Color.cpp:
1346 (WebCore::Color::blendWithWhite):
1348 (WebCore::Color::hasAlpha):
1349 * platform/GraphicsContext.cpp:
1350 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
1351 * platform/GraphicsContext.h:
1352 * platform/mac/GraphicsContextMac.mm:
1353 * platform/win/TemporaryLinkStubs.cpp:
1354 (GraphicsContext::endTransparencyLayer):
1355 * rendering/InlineTextBox.cpp:
1356 (WebCore::InlineTextBox::paintSelection):
1357 * rendering/RenderBlock.cpp:
1358 (WebCore::RenderBlock::fillHorizontalSelectionGap):
1359 (WebCore::RenderBlock::fillVerticalSelectionGap):
1360 (WebCore::RenderBlock::fillLeftSelectionGap):
1361 (WebCore::RenderBlock::fillRightSelectionGap):
1362 * rendering/RenderHTMLCanvas.cpp:
1363 (WebCore::RenderHTMLCanvas::paint):
1364 * rendering/RenderImage.cpp:
1365 (WebCore::RenderImage::paint):
1366 * rendering/RenderListMarker.cpp:
1367 (WebCore::RenderListMarker::paint):
1368 * rendering/RenderListMarker.h:
1369 * rendering/RenderObject.cpp:
1370 (WebCore::RenderObject::selectionColor):
1371 * rendering/RenderObject.h:
1372 * rendering/RenderReplaced.cpp:
1373 * rendering/RenderReplaced.h:
1374 * rendering/RenderTheme.cpp:
1375 (WebCore::RenderTheme::activeSelectionColor):
1376 (WebCore::RenderTheme::inactiveSelectionColor):
1377 (WebCore::RenderTheme::platformActiveSelectionColor):
1378 (WebCore::RenderTheme::platformInactiveSelectionColor):
1379 * rendering/RenderTheme.h:
1380 * rendering/RenderThemeMac.h:
1381 * rendering/RenderThemeMac.mm:
1382 (WebCore::RenderThemeMac::platformActiveSelectionColor):
1383 (WebCore::RenderThemeMac::platformInactiveSelectionColor):
1384 * rendering/RenderThemeWin.cpp:
1385 (WebCore::RenderThemeWin::platformActiveSelectionColor):
1386 (WebCore::RenderThemeWin::platformInactiveSelectionColor):
1387 * rendering/RenderThemeWin.h:
1388 * rendering/RenderWidget.cpp:
1389 (WebCore::RenderWidget::paint):
1391 2006-06-09 Justin Garcia <justin.garcia@apple.com>
1395 <rdar://problem/4549980>
1396 REGRESSION: "Find Again" can get stuck when searching for string with a trailing space
1398 * bridge/mac/FrameMac.h: Moved findString to Frame.
1399 * bridge/mac/FrameMac.mm: Ditto.
1400 * bridge/mac/WebCoreFrameBridge.mm:
1401 (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:]):
1402 Convert the NSString to a String.
1403 * editing/JSEditor.cpp: Added execCommand(FindString, ...)
1404 * editing/Selection.cpp: Added a constructor for Ranges
1405 (WebCore::Selection::Selection):
1406 * editing/Selection.h:
1408 (WebCore::Frame::findString): Moved from FrameMac. Compare a selection created
1409 using the found range with the current selection in case the current selection is
1410 the found range minus some collapsed whitespace on the edges.
1413 2006-06-09 Steve Falkenburg <sfalken@apple.com>
1417 * WebCore.vcproj/WebCore/WebCore.vcproj:
1418 * css/MediaQueryEvaluator.cpp:
1419 * platform/win/TemporaryLinkStubs.cpp:
1420 (GraphicsContext::addRoundedRectClip):
1421 (GraphicsContext::addInnerRoundedRectClip):
1422 (WebCore::screenDepthPerComponent):
1423 (WebCore::screenIsMonochrome):
1425 2006-06-09 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
1427 Reviewed by Hyatt. Tweaked by Maciej. Tweaks reviewed by Beth.
1430 CSS3 Media Queries implementation.
1431 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4127>
1433 * WebCore.xcodeproj/project.pbxproj:
1434 * bindings/js/kjs_css.cpp:
1435 (KJS::DOMMediaList::put):
1436 (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
1437 * bindings/objc/DOMCSS.mm:
1438 (-[DOMMediaList setMediaText:]):
1439 (-[DOMMediaList deleteMedium:]):
1440 (-[DOMMediaList appendMedium:]):
1442 * css/MediaFeatureNames.cpp: Added.
1443 (WebCore::MediaFeatureNames::init):
1444 * css/MediaFeatureNames.h: Added.
1445 * css/MediaList.cpp:
1446 (WebCore::MediaList::MediaList):
1447 (WebCore::MediaList::~MediaList):
1448 (WebCore::parseMediaDescriptor):
1449 (WebCore::MediaList::deleteMedium):
1450 (WebCore::MediaList::mediaText):
1451 (WebCore::MediaList::setMediaText):
1452 (WebCore::MediaList::item):
1453 (WebCore::MediaList::appendMedium):
1454 (WebCore::MediaList::appendMediaQuery):
1456 (WebCore::MediaList::MediaList):
1457 (WebCore::MediaList::length):
1458 (WebCore::MediaList::mediaQueries):
1459 * css/MediaQuery.cpp: Added.
1460 (WebCore::MediaQuery::MediaQuery):
1461 (WebCore::MediaQuery::~MediaQuery):
1462 (WebCore::MediaQuery::operator==):
1463 (WebCore::MediaQuery::cssText):
1464 * css/MediaQuery.h: Added.
1465 (WebCore::MediaQuery::):
1466 (WebCore::MediaQuery::restrictor):
1467 (WebCore::MediaQuery::expressions):
1468 (WebCore::MediaQuery::mediaType):
1469 (WebCore::MediaQuery::append):
1470 * css/MediaQueryEvaluator.cpp: Added.
1472 (WebCore::MediaQueryEvaluator):
1473 (WebCore::MediaQueryEvaluator::~MediaQueryEvaluator):
1474 (WebCore::MediaQueryEvaluator::mediaTypeMatch):
1475 (WebCore::applyRestrictor):
1476 (WebCore::MediaQueryEvaluator::eval):
1477 (WebCore::parseAspectRatio):
1478 (WebCore::cmpvalue):
1479 (WebCore::numberValue):
1480 (WebCore::colorMediaFeatureEval):
1481 (WebCore::monochromeMediaFeatureEval):
1482 (WebCore::device_aspect_ratioMediaFeatureEval):
1483 (WebCore::gridMediaFeatureEval):
1484 (WebCore::device_heightMediaFeatureEval):
1485 (WebCore::device_widthMediaFeatureEval):
1486 (WebCore::heightMediaFeatureEval):
1487 (WebCore::widthMediaFeatureEval):
1488 (WebCore::min_colorMediaFeatureEval):
1489 (WebCore::max_colorMediaFeatureEval):
1490 (WebCore::min_monochromeMediaFeatureEval):
1491 (WebCore::max_monochromeMediaFeatureEval):
1492 (WebCore::min_device_aspect_ratioMediaFeatureEval):
1493 (WebCore::max_device_aspect_ratioMediaFeatureEval):
1494 (WebCore::min_heightMediaFeatureEval):
1495 (WebCore::max_heightMediaFeatureEval):
1496 (WebCore::min_widthMediaFeatureEval):
1497 (WebCore::max_widthMediaFeatureEval):
1498 (WebCore::min_device_heightMediaFeatureEval):
1499 (WebCore::max_device_heightMediaFeatureEval):
1500 (WebCore::min_device_widthMediaFeatureEval):
1501 (WebCore::max_device_widthMediaFeatureEval):
1502 (WebCore::createFunctionMap):
1503 * css/MediaQueryEvaluator.h: Added.
1504 * css/MediaQueryExp.cpp: Added.
1505 (WebCore::MediaQueryExp::MediaQueryExp):
1506 (WebCore::MediaQueryExp::~MediaQueryExp):
1507 * css/MediaQueryExp.h: Added.
1508 (WebCore::MediaQueryExp::mediaFeature):
1509 (WebCore::MediaQueryExp::value):
1510 (WebCore::MediaQueryExp::operator==):
1511 * css/StyleSheet.cpp:
1512 (WebCore::StyleSheet::setMedia):
1513 * css/cssparser.cpp:
1514 (WebCore::CSSParser::CSSParser):
1515 (WebCore::CSSParser::~CSSParser):
1516 (WebCore::CSSParser::setupParser):
1517 (WebCore::CSSParser::parseMediaQuery):
1518 (WebCore::CSSParser::createFloatingMediaQueryExp):
1519 (WebCore::CSSParser::sinkFloatingMediaQueryExp):
1520 (WebCore::CSSParser::createFloatingMediaQueryExpList):
1521 (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
1522 (WebCore::CSSParser::createFloatingMediaQuery):
1523 (WebCore::CSSParser::sinkFloatingMediaQuery):
1525 * css/cssstyleselector.cpp:
1526 (WebCore::CSSStyleSelector::CSSStyleSelector):
1527 (WebCore::CSSStyleSelector::init):
1528 (WebCore::CSSStyleSelector::~CSSStyleSelector):
1529 (WebCore::CSSStyleSelector::loadDefaultStyle):
1530 (WebCore::CSSStyleSelector::matchUARules):
1531 (WebCore::CSSStyleSelector::styleForElement):
1532 (WebCore::CSSStyleSelector::pseudoStyleForElement):
1533 (WebCore::CSSStyleSelector::updateFont):
1534 (WebCore::CSSStyleSelector::cacheBorderAndBackground):
1535 (WebCore::CSSStyleSelector::styleRulesForElement):
1536 (WebCore::CSSRuleSet::addRulesFromSheet):
1537 * css/cssstyleselector.h:
1538 * css/maketokenizer:
1539 * css/tokenizer.flex:
1540 * dom/DOMImplementation.cpp:
1541 (WebCore::DOMImplementation::createCSSStyleSheet):
1542 * html/HTMLLinkElement.cpp:
1543 (WebCore::HTMLLinkElement::process):
1544 (WebCore::HTMLLinkElement::setStyleSheet):
1545 * html/HTMLStyleElement.cpp:
1546 (WebCore::HTMLStyleElement::childrenChanged):
1547 * ksvg2/svg/SVGDOMImplementation.cpp:
1548 (SVGDOMImplementation::createCSSStyleSheet):
1549 * ksvg2/svg/SVGStyleElement.cpp:
1550 (WebCore::SVGStyleElement::childrenChanged):
1552 (WebCore::Frame::Frame):
1553 * platform/Screen.h:
1554 * platform/mac/ScreenMac.mm:
1555 (WebCore::screenDepthPerComponent):
1556 (WebCore::screenIsMonochrome):
1558 2006-06-08 Levi Weintraub <lweintraub@apple.com>
1562 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
1563 Implement execCommand(Insert{Un}OrderedList)
1565 * WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
1567 (WebCore::hasRenderedNonAnonymousDescendantsWithHeight):
1568 Added. A block with height is only a candidate if this is false. This should fix the problems
1569 getting carets into empty blocks.
1570 (WebCore::Position::inRenderedContent):
1571 * editing/AppendNodeCommand.cpp:
1572 (WebCore::AppendNodeCommand::doApply):
1573 * editing/CompositeEditCommand.cpp:
1574 (WebCore::hasARenderedDescendant):
1575 (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet
1576 have a renderer with no descendants. Fixed the pruning rule to avoid removing a node like this.
1577 (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to
1578 each other if they aren't already, as a convenience.
1579 (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection.
1580 (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
1581 * editing/CompositeEditCommand.h:
1582 * editing/DeleteSelectionCommand.cpp:
1583 (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should
1584 continue to happen until it is no longer possible.
1585 (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node
1586 wouldn't always avoid removing the start block.
1587 * editing/InsertListCommand.cpp: Added.
1588 (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list
1590 (WebCore::InsertListCommand::InsertListCommand):
1591 (WebCore::InsertListCommand::modifyRange):
1592 (WebCore::InsertListCommand::doApply):
1593 * editing/InsertListCommand.h: Added.
1594 (WebCore::InsertListCommand::):
1595 * editing/InsertNodeBeforeCommand.cpp:
1596 (WebCore::InsertNodeBeforeCommand::doApply):
1597 * editing/InsertParagraphSeparatorCommand.cpp:
1598 * editing/JSEditor.cpp:
1599 * editing/TextIterator.cpp:
1600 (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the
1601 iterator ends at the start of that node.
1602 * editing/VisiblePosition.cpp:
1603 (WebCore::VisiblePosition::next):
1604 (WebCore::VisiblePosition::previous):
1605 * editing/VisiblePosition.h:
1606 Added a parameter to next/previous that can prevent them from leaving the current editable region.
1607 * editing/htmlediting.cpp:
1608 (WebCore::highestAncestor):
1609 (WebCore::enclosingList):
1610 (WebCore::enclosingListChild):
1611 (WebCore::outermostEnclosingList):
1612 (WebCore::createListItemElement):
1613 * editing/htmlediting.h:
1615 (WebCore::Frame::selectionListState): Added.
1618 2006-06-08 David Harrison <harrison@apple.com>
1620 Reviewed by Geoff and John.
1622 <rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)
1624 Problem was the primitive value was getting reset to a generic state before the parameter
1625 check that relies on that state.
1627 Test: fast/dom/setPrimitiveValue.html
1629 * css/CSSPrimitiveValue.cpp:
1630 (WebCore::CSSPrimitiveValue::setFloatValue):
1631 (WebCore::CSSPrimitiveValue::setStringValue):
1632 Move parameter checks ahead of call to cleanup().
1634 2006-06-08 Alice Liu <alice.liu@apple.com>
1638 - fixed <rdar://problem/4578115> support Range.isPointInRange
1639 - fixed <rdar://problem/4578123> support Range.comparePoint
1642 (WebCore::Range::isPointInRange):
1643 added implementation
1644 (WebCore::Range::comparePoint):
1645 added implementation
1651 2006-06-08 Darin Adler <darin@apple.com>
1655 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
1656 REGRESSION: TinyMCE: Crash on Undo
1658 * bridge/mac/WebCoreFrameBridge.mm:
1659 (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]):
1660 Changed to call nodeInfoAtPoint directly.
1661 (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly.
1662 Also added code to convert coordinates so it works for points that are in nodes in subframes.
1665 (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection
1666 endpoints in another document.
1667 (WebCore::Frame::setSelection): Ditto.
1669 2006-06-07 Justin Garcia <justin.garcia@apple.com>
1673 Fixed some comments and removed an unused variable.
1675 * editing/CompositeEditCommand.cpp:
1676 (WebCore::CompositeEditCommand::removeBlockPlaceholder):
1677 Don't remove a br if it isn't at the start of a block, since
1678 it isn't really a "block placeholder".
1679 * editing/DeleteSelectionCommand.cpp:
1680 (WebCore::DeleteSelectionCommand::initializePositionData):
1681 (WebCore::DeleteSelectionCommand::mergeParagraphs):
1682 (WebCore::DeleteSelectionCommand::doApply):
1683 * editing/InsertLineBreakCommand.cpp:
1684 (WebCore::InsertLineBreakCommand::doApply):
1685 * editing/ReplaceSelectionCommand.cpp:
1686 (WebCore::ReplaceSelectionCommand::doApply):
1687 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1688 * editing/htmlediting.cpp:
1690 2006-06-07 David Hyatt <hyatt@apple.com>
1692 Add support for custom highlighting. This is all ifdefed to be Mac-only.
1696 * WebCore.xcodeproj/project.pbxproj:
1697 * bridge/mac/FrameMac.h:
1698 * bridge/mac/FrameMac.mm:
1699 (WebCore::FrameMac::paintCustomHighlight):
1700 * bridge/mac/WebCoreFrameBridge.h:
1701 * platform/mac/ClipboardMac.h:
1702 * rendering/InlineTextBox.cpp:
1703 (WebCore::InlineTextBox::paint):
1704 (WebCore::InlineTextBox::paintCustomHighlight):
1705 * rendering/InlineTextBox.h:
1707 2006-06-07 Adele Peterson <adele@apple.com>
1711 Added support for cross-platform resize property.
1713 * platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we
1714 already cache this info when we handle mouse down and mouse up.
1715 * platform/mac/MouseEventMac.mm: ditto.
1716 * platform/win/TemporaryLinkStubs.cpp: ditto.
1719 (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
1720 * page/FrameView.cpp:
1721 (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method.
1722 (WebCore::FrameView::mousePressed): Added.
1723 * page/FrameView.h: Added mousePressed.
1725 * rendering/RenderTheme.h: Removed paintResizeControl.
1726 Since its not dependent on the theme, the layer can just paint this.
1727 * rendering/RenderTheme.cpp: ditto.
1728 * rendering/RenderLayer.cpp:
1729 (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage.
1730 (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage.
1731 (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one.
1732 (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
1733 * rendering/RenderLayer.h: Added m_resizeCornerImage. Important to have one per-layer for when we allow
1736 * platform/cairo/ImageCairo.cpp:
1737 (WebCore::Image::loadResource): Loads image resources.
1739 2006-06-07 David Hyatt <hyatt@apple.com>
1741 Add support for a new property for custom highlighting. This patch just
1742 adds support for the parsing of the property. It doesn't do anything yet.
1746 * css/CSSComputedStyleDeclaration.cpp:
1748 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1749 * css/CSSPropertyNames.in:
1750 * css/cssparser.cpp:
1751 (WebCore::CSSParser::parseValue):
1752 * css/cssstyleselector.cpp:
1753 (WebCore::CSSStyleSelector::applyProperty):
1754 * rendering/render_style.cpp:
1755 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
1756 (WebCore::StyleCSS3InheritedData::operator==):
1757 (WebCore::RenderStyle::diff):
1758 * rendering/render_style.h:
1759 (WebCore::RenderStyle::highlight):
1760 (WebCore::RenderStyle::setHighlight):
1761 (WebCore::RenderStyle::initialHighlight):
1763 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1765 Fix suggested by Rob Buis. Reviewed by Darin.
1767 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9341
1768 REGRESSION: Repro crash caused by style="font:bold"
1770 Test: fast/css/font-shorthand-weight-only.html
1772 * css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change
1773 made to fix bug 5564.
1775 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1779 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9122
1780 REGRESSION: Incorrect vertical position for text fields in a "display: table" block
1782 Test: fast/table/text-field-baseline.html
1784 * rendering/RenderTableCell.cpp:
1785 (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just
1788 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
1790 Reviewed by Hyatt (concept) and Darin (some coding details).
1792 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4334
1793 REGRESSION: Flickering when css-hover should change opacity on floating elements
1795 Pixel test: fast/block/float/nopaint-after-layer-destruction.html
1797 * rendering/RenderBlock.cpp:
1798 (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag
1799 in the block's FloatingObject for the given float and calls setChildNeedsLayout.
1800 * rendering/RenderBlock.h:
1801 * rendering/RenderBox.cpp:
1802 (WebCore::blockThatPaintsFloat): Added this helper function.
1803 (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float
1804 gains or loses its layer.
1806 2006-06-06 Mitz Pettel <opendarwin.org@mitzpettel.com>
1810 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9121
1811 REGRESSION: [Incremental Repaint] DHTML movement test failures
1813 Test (repaint): fast/repaint/containing-block-position-change.html
1815 * manual-tests/containing-block-position-chage.html: Added.
1816 * rendering/RenderBlock.cpp:
1817 (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from
1818 the RenderCanvas to RenderView rename.
1819 (WebCore::RenderBlock::removePositionedObject): Added a return immediately
1820 after removing the object.
1821 (WebCore::RenderBlock::removePositionedObjects): Added.
1822 * rendering/RenderBlock.h:
1823 * rendering/RenderObject.cpp:
1824 (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned
1825 descendants from the positioned objects list of their current containing block
1826 when they are going to have a new one as a result of this block's position
1828 * rendering/RenderObject.h:
1829 (WebCore::RenderObject::removePositionedObjects):
1831 2006-06-06 Justin Garcia <justin.garcia@apple.com>
1836 (WebCore::Node::firstDescendant): Added.
1838 * dom/Range.cpp: Added a constructor that takes in Positions.
1839 (WebCore::Range::Range):
1841 * editing/CompositeEditCommand.cpp:
1842 (WebCore::CompositeEditCommand::insertNodeAt):
1843 Let this function insert children into empty containers.
1844 Calls canHaveChildrenForEditing.
1845 (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing.
1846 (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the
1847 replacement so that moveParagraph's callers have a valid destination after the move.
1848 * editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand,
1849 made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
1850 * editing/DeleteSelectionCommand.cpp:
1851 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
1852 Removed m_startNode, used a local variable.
1853 (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion.
1854 (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up
1855 front and keep track of it as nodes and text are removed.
1856 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode.
1857 (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand.
1858 Update m_endingPosition as we remove nodes.
1859 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
1860 Update m_endingPosition as we delete text.
1861 (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block. Cleaned up.
1862 (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph
1863 clobbers the old one.
1864 (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after
1865 deletion. Make the placeholder decision before we do special element expansion.
1866 * editing/DeleteSelectionCommand.h:
1867 * editing/InsertLineBreakCommand.cpp:
1868 (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned
1870 * editing/InsertParagraphSeparatorCommand.cpp:
1871 (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do
1872 a merge (added a testcase).
1873 * editing/RebalanceWhitespaceCommand.cpp:
1874 (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.
1875 * editing/ReplaceSelectionCommand.cpp:
1876 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1877 Merge even when the incoming fragment has interchange newlines (added a testcase).
1878 Merge when the selection being pasted into starts at the start of a block because not
1879 doing so would leave one or more hanging empty blocks.
1880 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1881 Rebalance whitespace using rebalanceWhitespaceAt because rebalanceWhitespace requires
1882 a selection, and a selection can't be created until whitespace has been rebalanced.
1883 * editing/htmlediting.cpp:
1884 (WebCore::canHaveChildrenForEditing): Added.
1885 * editing/htmlediting.h:
1887 2006-06-06 Beth Dakin <bdakin@apple.com>
1891 Fix for <rdar://problem/4570475> Dashboard regions do not scale for
1892 non-1.0 scale factors.
1894 No test cases added since this only affects non-1.0 resolution
1897 * platform/FloatRect.cpp:
1898 (WebCore::FloatRect::scale): Added new function that scales a
1899 rect's origin and size by a given factor.
1900 * platform/FloatRect.h:
1901 * platform/IntRect.cpp:
1902 (WebCore::IntRect::scale): Same as above.
1903 * platform/IntRect.h:
1904 * rendering/RenderObject.cpp:
1905 (WebCore::RenderObject::addDashboardRegions): After the bounds and
1906 clip rects on the Dashboard region have been calculated, get the
1907 user space scale factor, and if it is not 1.0, scale the rects.
1909 2006-06-06 John Sullivan <sullivan@apple.com>
1911 Reviewed by Darin Adler.
1913 - fixed <rdar://problem/4566087> REGRESSION (420+): Crash occurs while completing a find again query at
1914 http://www.apple.com/ (RenderObject::repaint(bool))
1916 This wasn't a new problem in the code, but the recent use of DocumentMarkers for find results brought
1920 Use a RefPtr<Node> instead of a Node* in MarkerMap, so the node will be retained
1923 (WebCore::Document::removeMarkers):
1924 Add a .get() to compensate for using RefPtr. Also, only repaint if this node actually had a marker
1926 (WebCore::Document::repaintMarkers):
1927 Add a .get() to compensate for using RefPtr.
1929 2006-06-06 Anders Carlsson <acarlsson@apple.com>
1933 http://bugzilla.opendarwin.org/show_bug.cgi?id=9325
1934 clientWidth/clientHeight on document element in strict mode should return visible frame size
1937 (WebCore::Element::clientWidth):
1938 (WebCore::Element::clientHeight):
1939 If we're the document element, and in strict mode, return the visible size of the frame.
1941 2006-06-06 Anders Carlsson <acarlsson@apple.com>
1945 * bridge/mac/WebCoreFrameBridge.h:
1946 * bridge/mac/WebCoreFrameBridge.mm:
1947 (-[WebCoreFrameBridge containsPlugins]):
1949 (WebCore::Frame::containsPlugins):
1951 Add containsPlugins function which returns whether a frame contains plugins
1954 2006-06-05 Rob Buis <buis@kde.org>
1958 http://bugzilla.opendarwin.org/show_bug.cgi?id=5564
1959 'font' shorthand parsing should be more tolerant in quirks mode
1961 When not in strict mode accept font property specifications
1962 lacking a font family part, like WinIE does.
1964 * css/cssparser.cpp:
1965 (WebCore::CSSParser::parseFont):
1967 2006-06-05 Beth Dakin <bdakin@apple.com>
1971 Fix for <rdar://problem/4567520> Pixel cracks in weather widget at
1974 To prevent pixel cracks at non-integral scaling factors, before we
1975 call into CG to draw an image, we have to convert the rect to
1976 device space, round the origin and size to integers in device
1977 space, and convert back to user space.
1979 No test cases added since this only affects non-1.0 resolution
1982 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1983 (WebCore::JSCanvasRenderingContext2D::drawImage): drawImage() now
1985 * html/CanvasPattern.cpp:
1986 (WebCore::patternCallback): Call roundToDevicePixels()
1987 * html/CanvasRenderingContext2D.cpp:
1988 (WebCore::CanvasRenderingContext2D::drawImage): drawImage() now
1989 takes FloatRects and call roundToDevicePixels()
1990 * html/CanvasRenderingContext2D.h: drawImage() now takes
1992 * html/HTMLCanvasElement.cpp:
1993 (WebCore::HTMLCanvasElement::paint): Call roundToDevicePixels()
1994 * kcanvas/device/quartz/QuartzSupport.mm:
1995 (WebCore::debugDumpCGImageToFile): Same as above.
1996 * platform/GraphicsContext.h:
1997 * platform/cg/GraphicsContextCG.cpp:
1998 (WebCore::GraphicsContext::roundToDevicePixels): Takes care of
1999 converting between coordinate spaces and rounding.
2000 (WebCore::GraphicsContext::drawLineForText):
2001 * platform/mac/ImageMac.mm: Call roundToDevicePixels()
2002 (WebCore::Image::draw): Same as above.
2003 (WebCore::drawPattern): Same as above.
2005 2006-06-05 Geoffrey Garen <ggaren@apple.com>
2009 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9310
2010 Add missing DOM prototypes and other DOM cleanup
2012 - Added the built-in object prototype to DOM objects that were missing it
2013 so that primitive operations like == work on them.
2015 - Removed dead EventConstructor class (it's autogenerated now)
2017 - Changed HTML collections to describe themselves as "[object Collection]",
2020 - Made DOMCSSRule constructor private because JSCSSRule is the class
2023 * bindings/js/JSHTMLOptionElementConstructor.cpp:
2024 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
2025 * bindings/js/kjs_css.cpp:
2026 (KJS::DOMStyleSheet::DOMStyleSheet):
2027 (KJS::DOMStyleSheetList::DOMStyleSheetList):
2028 (KJS::DOMCSSRule::DOMCSSRule):
2029 (KJS::DOMCSSValue::DOMCSSValue):
2031 (KJS::DOMRGBColor::DOMRGBColor):
2032 (KJS::getDOMRGBColor):
2033 (KJS::DOMRect::DOMRect):
2034 * bindings/js/kjs_css.h:
2035 * bindings/js/kjs_dom.cpp:
2036 (KJS::DOMNodeList::DOMNodeList):
2037 (KJS::DOMExceptionConstructor::DOMExceptionConstructor):
2038 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
2040 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
2041 * bindings/js/kjs_dom.h:
2042 (KJS::DOMNamedNodesCollection::classInfo):
2043 * bindings/js/kjs_events.h:
2044 * bindings/js/kjs_html.cpp:
2047 2006-06-04 Darin Adler <darin@apple.com>
2051 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
2052 REGRESSION: Crash when closing tabs on newegg.com
2053 - removed a no-longer-needed Win32-specific workaround (not reviewed)
2055 * bindings/js/kjs_window.cpp: Added include of <wtf/MathExtras.h>.
2056 (WebCore::floatFeature): Remove WIN32 ifdef around isnan.
2057 (WebCore::toJS): Add null checks.
2059 2006-06-04 Darin Adler <darin@apple.com>
2063 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9176
2064 REGRESSION: repro crash in WebCore::StringImpl::hash() const + 28 (StringImpl.h:67)
2066 Test: fast/loader/link-no-URL.html
2070 (WebCore::Cache::updateCacheStatus): Removed the URL parameter. Instead get the URL
2071 from the cached object itself. Callers were passing in the wrong URL. When it was a
2072 null string, it caused the crash mentioned above. But in other cases it may have
2073 caused some other minor problems as well. Added an assert to catch cases where the
2074 URL is null (should never happen).
2075 (WebCore::Cache::requestImage): Changed call site to not pass URL.
2076 (WebCore::Cache::requestStyleSheet): Ditto.
2077 (WebCore::Cache::requestScript): Ditto.
2078 (WebCore::Cache::requestXSLStyleSheet): Ditto.
2079 (WebCore::Cache::requestXBLDocument): Ditto.
2081 2006-06-04 Darin Adler <darin@apple.com>
2085 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7291
2086 REGRESSION: delete key does not work in isIndex fields
2088 * platform/mac/WebCoreTextField.mm:
2089 (inputElement): Added. Helper function to get the Objective-C wrapper for an
2090 input element associated with a QTextEdit. Returns nil if the element is not
2091 an input element. The bug was caused by passing a non-input element to the
2093 (-[KWQTextFieldController controlTextDidBeginEditing:]): Use inputElement
2094 and don't make the delegate call at all if there is none. This happens only
2095 with isindex elements; it's not important to have auto-fill work with those.
2096 (-[KWQTextFieldController controlTextDidEndEditing:]): Ditto.
2097 (-[KWQTextFieldController controlTextDidChange:]): Ditto.
2098 (-[KWQTextFieldController control:textShouldEndEditing:]): Ditto.
2099 (-[KWQTextFieldController control:textView:doCommandBySelector:]): Ditto.
2100 (-[KWQTextFieldController textView:shouldHandleEvent:]): Ditto.
2102 2006-06-04 Darin Adler <darin@apple.com>
2106 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8995
2107 memory leak in XPath code -- seen in layout tests
2108 - fixed malloc error on exit due to SVGDOMImplementation destructor
2109 - attempted to fix the no-XPATH_SUPPORT build by adding an #if
2110 - changed around includes and header-file formatting in XPath code
2112 * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h when
2113 generating the bindings for XPathNSResolver.
2115 * dom/DOMImplementation.h: Added a virtual destructor for the benefit of
2116 SVGDOMImplementation.
2117 * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::~DOMImplementation): Added.
2119 * ksvg2/svg/SVGDOMImplementation.h: Reformatted a bit, removed unneeded declarations.
2120 * ksvg2/svg/SVGDOMImplementation.cpp:
2121 (SVGDOMImplementation::~SVGDOMImplementation): Remove commented-out code.
2122 (SVGDOMImplementation::createDocument): Remove a reference to KDOMView.
2124 * xpath/XPathExpression.cpp:
2125 (WebCore::XPathExpression::createExpression): Called release to avoid a tiny bit of
2126 reference count churn.
2127 (WebCore::XPathExpression::evaluate): Set exception code explicitly, because the code
2128 relies on it being 0 when the function succeeds.
2130 * xpath/XPathResult.cpp:
2131 (WebCore::InvalidatingEventListener::InvalidatingEventListener): Removed
2132 unneeded target node data member.
2133 (WebCore::XPathResult::XPathResult): Updated for enum name changes and
2134 InvalidatingEventListener name change. Added an assertion.
2136 * xpath/impl/XPathFunctions.h: Removed the FunctionLibrary class. Changed the parameter
2137 for createFunction to be a String instead of char*.
2138 * xpath/impl/XPathFunctions.cpp: Got rid of local implementation of "round", and
2139 used <wtf/MathExtras.h> instead. Also removed unused Interval::asString. Marked all
2140 the Interval functions inline.
2141 (WebCore::XPath::FunSubstring::doEvaluate): Use lround() instead of (long)round().
2142 (WebCore::XPath::FunLang::doEvaluate): Removed some unneeded temporary String variables.
2143 Use equalIgnoringCase() instead of calling lower() on two strings.
2144 (WebCore::XPath::createFunctionMap): Changed how this works so that it's all local to
2145 this function. Also removed a duplicate entry for the "last" function.
2146 (WebCore::XPath::createFunction): Changed from a member function to a separate function.
2147 Also changed so that if the args are not used in the function they are deleted.
2148 This was one of the sources of the storage leaks.
2150 * xpath/impl/XPathGrammar.y: Put XPATH_SUPPORT ifdef in. Replaced <num> with values of
2151 specific types (numop, eqop). Updated for name change from AxisType to Axis. Changed
2152 tokens that were declared as <str> but weren't actually using the string to be
2153 declared with no type (PLUS, MINUS, OR, AND, DOTDOT, SLASHSLASH). Replaced use of
2154 unregisterString, unregisterPredicateVector, and unregisterExpressionVector to
2155 call delete functions instead that both unregister and delete. Change call sites for
2156 createFunction to just use the String, removing the deprecatedString().latin1() call
2157 that is no longer needed. Added a call to unregisterParseNode that was missing in the
2158 "FilterExpr DescendantOrSelf RelativeLocationPath" production.
2160 * xpath/impl/XPathParser.h: Changed Token to hold a String, Step::Axis, NumericOp::Opcode,
2161 and EqTestOp::Opcode. The token ID number tells us which to use. Rearranged to put the private
2162 part of the Parser class last. Moved a number of private things inside the cpp file.
2163 * xpath/impl/XPathParser.cpp:
2164 (WebCore::XPath::charCat): Made this a separate function, instead of a static member.
2165 (WebCore::XPath::isAxisName): Ditto. Also put the global axis map inside the function,
2166 allowing use of a map instead of a map pointer.
2167 (WebCore::XPath::isNodeTypeName): Ditto.
2168 (WebCore::XPath::Parser::isOperatorContext): Made this const.
2169 (WebCore::XPath::Parser::makeTokenAndAdvance): Got rid of the "int" version of this.
2170 By using the actual types, we can safely use overload instead.
2171 (WebCore::XPath::Parser::lexString): Use substring() instead of deprecatedString().mid().
2172 (WebCore::XPath::Parser::lexNumber): Ditto.
2173 (WebCore::XPath::Parser::lexNCName): Changed to return a bool and a String instead of a
2174 Token. This avoids the hack of using a token value of "ERROR + 1" which I found quite
2175 confusing and is also a bit more explicit.
2176 (WebCore::XPath::Parser::lexQName): Ditto.
2177 (WebCore::XPath::Parser::nextTokenInternal): Changed to adapt to the changes above and
2178 to remove some unneeded else statements.
2179 (WebCore::XPath::Parser::lex): Changed the logic that sets up yylval to use the token ID
2180 to decide what the type is. This matches what the grammar expects, and removes the need
2181 for the token object to track which part of the value is good and the need to reserve 0
2182 to have a special meaning.
2183 (WebCore::XPath::Parser::parseStatement): Added code to delete the predicates and the
2184 expressions in the predicate and expression vectors. Before, we were only deleting
2185 the vectors. This was one of the sources of the storage leaks.
2186 (WebCore::XPath::Parser::deletePredicateVector): Renamed, and changed to delete
2187 the vector. However this does not delete the predicates in the vector.
2188 (WebCore::XPath::Parser::deleteExpressionVector): Renamed, and changed to delete
2189 the vector. However this does not delete the expressions in the vector.
2190 (WebCore::XPath::Parser::deleteString): Renamed, and changed to delete the string.
2192 * xpath/impl/XPathPredicate.h:
2193 * xpath/impl/XPathPredicate.cpp:
2194 (WebCore::XPath::NumericOp::NumericOp): Changed opcode from an int to an enum, and
2195 renamed to "opcode" instead of "opCode".
2196 (WebCore::XPath::NumericOp::doEvaluate): More of the same.
2197 (WebCore::XPath::EqTestOp::EqTestOp): Ditto.
2198 (WebCore::XPath::EqTestOp::doEvaluate): Ditto.
2199 (WebCore::XPath::LogicalOp::LogicalOp): Ditto.
2200 (WebCore::XPath::LogicalOp::shortCircuitOn): Ditto.
2201 (WebCore::XPath::Predicate::evaluate): Removed an unneeded "new".
2203 * xpath/impl/XPathStep.h:
2204 * xpath/impl/XPathStep.cpp: Renamed AxisType to Axis. Removed unused axisAsString
2205 function and default constructor.
2207 * xpath/impl/XPathValue.h: Renamed the type constants to have a Value suffix,
2208 instead of the underscore suffix used before on NodeVector and String.
2209 * xpath/impl/XPathValue.cpp: Updated for name change. Added asserts.
2211 * xpath/impl/XPathVariableReference.cpp: (WebCore::XPath::VariableReference::doEvaluate):
2212 Use a reference instead of a pointer.
2214 * xpath/XPathEvaluator.cpp:
2215 * xpath/XPathEvaluator.h:
2216 * xpath/XPathExpression.h:
2217 * xpath/XPathNSResolver.cpp:
2218 * xpath/XPathNSResolver.h:
2219 * xpath/XPathNamespace.cpp:
2220 * xpath/XPathNamespace.h:
2221 * xpath/XPathResult.h:
2222 * xpath/impl/XPathExpressionNode.cpp:
2223 * xpath/impl/XPathExpressionNode.h:
2224 * xpath/impl/XPathPath.cpp:
2225 * xpath/impl/XPathPath.h:
2226 * xpath/impl/XPathUtil.cpp:
2227 * xpath/impl/XPathUtil.h:
2228 * xpath/impl/XPathVariableReference.h:
2229 Reformatted and changed includes around; no substantive changes.
2231 2006-06-04 Sam Weinig <sam.weinig@gmail.com>
2235 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9213
2236 Absolutely positioned objects with relatively positioned inline
2237 containing blocks are rendered incorrectly
2239 * rendering/RenderBox.cpp:
2240 (WebCore::RenderBox::containingBlockWidthForPositioned):
2241 (WebCore::RenderBox::containingBlockHeightForPositioned):
2242 (WebCore::RenderBox::calcAbsoluteHorizontal):
2243 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2244 (WebCore::RenderBox::calcAbsoluteVertical):
2245 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2246 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
2247 * rendering/RenderBox.h:
2249 2006-06-04 Anders Carlsson <acarlsson@apple.com>
2253 http://bugzilla.opendarwin.org/show_bug.cgi?id=9035
2254 document.evaluate and createNSResolver miss on namespaced elements
2256 * xpath/XPathExpression.cpp:
2257 (WebCore::XPathExpression::createExpression):
2258 Pass the resolver to the parser.
2260 * xpath/XPathResult.cpp:
2261 (WebCore::XPathResult::iterateNext):
2262 Fix off-by-one error.
2264 * xpath/impl/XPathExpressionNode.h:
2265 (WebCore::XPath::EvaluationContext::EvaluationContext):
2266 Get rid of the resolver in the evaluation context.
2268 * xpath/impl/XPathGrammar.y:
2269 Fetch the resolver from the parser. Only return the local name.
2271 * xpath/impl/XPathParser.cpp:
2272 (WebCore::XPath::Parser::parseStatement):
2273 * xpath/impl/XPathParser.h:
2274 (WebCore::XPath::Parser::resolver):
2275 Update to hold the resolver.
2277 * xpath/impl/XPathStep.cpp:
2278 (WebCore::XPath::Step::Step):
2279 If the parser has stored a namespace URI, set it.
2281 (WebCore::XPath::Step::nodeTestMatches):
2282 Check namespace URIs.
2284 * xpath/impl/XPathStep.h:
2287 2006-06-03 Rob Buis <buis@kde.org>
2289 Reviewed by mjs. Tweaked and landed by ddkilzer.
2291 http://bugzilla.opendarwin.org/show_bug.cgi?id=7281
2292 With java disabled wrong information is displayed.
2294 Test: fast/replaced/applet-rendering-java-disabled.html
2296 Match WinIE, render applet content inline when java is
2299 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderEmptyApplet.cpp and RenderEmptyApplet.h.
2300 * WebCore.xcodeproj/project.pbxproj: Ditto.
2301 * WebCoreSources.bkl: Ditto.
2302 * html/HTMLAppletElement.cpp:
2303 (WebCore::HTMLAppletElement::createRenderer):
2304 * rendering/RenderEmptyApplet.cpp: Removed.
2305 * rendering/RenderEmptyApplet.h: Removed.
2307 2006-06-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
2311 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9252
2312 REGRESSION: Very odd roll-over issues (content disappearing)
2314 Test: fast/dom/HTMLLinkElement/pending-stylesheet-count.html
2316 * html/HTMLLinkElement.cpp:
2317 (WebCore::HTMLLinkElement::~HTMLLinkElement): If the stylesheet was being
2318 loaded, call stylesheetLoaded() on the document, to keep the pending stylesheet
2321 2006-06-03 Darin Adler <darin@apple.com>
2325 * platform/Widget.h: Moved scaleFactor function out of Apple-specific
2326 section of the header into the common part.
2328 2006-06-03 Beth Dakin <bdakin@apple.com>
2332 Fix for <rdar://problem/4537274> HiDPI: <canvas> needs to apply a
2333 scale. <canvas> needs to scale itself along with whatever scale
2334 factor is set on the window.
2336 * html/HTMLCanvasElement.cpp:
2337 (WebCore::HTMLCanvasElement::createDrawingContext): Get the scale
2338 factor and use it to create a larger buffer and to scale the
2340 * platform/Widget.h: Provide a new function that returns the user
2342 * platform/mac/WidgetMac.mm:
2343 (WebCore::Widget::scaleFactor): Get the scale factor from the
2344 window and return it.
2345 * platform/win/WidgetWin.cpp:
2346 (WebCore::Widget::scaleFactor): Just return 1.0f for now.
2348 2006-06-03 Steve Falkenburg <sfalken@apple.com>
2352 Don't send empty referrers. Fixes image load fail on Spinneret default content.
2354 * platform/win/TransferJobWin.cpp:
2355 (WebCore::TransferJob::start):
2357 2006-06-02 Adele Peterson <adele@apple.com>
2361 Windows theme for textareas. Also made some formatting changes.
2363 * rendering/RenderThemeWin.cpp:
2364 (WebCore::RenderThemeWin::supportsFocus):
2365 (WebCore::RenderThemeWin::getThemeData):
2366 (WebCore::RenderThemeWin::adjustButtonStyle):
2367 (WebCore::RenderThemeWin::adjustTextFieldStyle):
2368 (WebCore::RenderThemeWin::adjustTextAreaStyle):
2369 (WebCore::RenderThemeWin::paintTextArea):
2370 * rendering/RenderThemeWin.h:
2371 (WebCore::RenderThemeWin::supportsHover):
2373 2006-06-02 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
2375 Reviewed by Hyatt, checked in by Tim H.
2377 Explicitly run perl on *.pl files instead of relying
2378 on Windows shell figuring out which program to run for
2381 * DerivedSources.make:
2383 2006-06-02 David Carson <dacarson@gmail.com>
2385 Reviewed by Hyatt, checked in by Tim H.
2387 fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=9115
2388 Changed RenderLayer to only render layers that are not
2389 totally transparent.
2391 * rendering/RenderLayer.cpp
2392 (RenderLayer::paintLayer):
2393 Changed function to also check if the layer is totally transparent
2394 and if it is, don't bother painting it.
2396 2006-06-02 Rob Buis <buis@kde.org>
2398 Reviewed by Hyatt, checked in by Tim H.
2400 http://bugzilla.opendarwin.org/show_bug.cgi?id=8223
2401 WebKit fails to update style on element via DOM
2403 Handle !important by detecting it and using a different code
2404 path from normal priority.
2406 * bindings/js/kjs_css.cpp:
2407 (KJS::DOMCSSStyleDeclaration::put):
2408 * css/CSSStyleDeclaration.cpp:
2409 (WebCore::CSSStyleDeclaration::setProperty):
2410 * css/CSSStyleDeclaration.h:
2412 2006-06-02 Darin Adler <darin@apple.com>
2414 Reviewed by Geoff, checked in by Maciej.
2416 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9236
2417 REGRESSION: focus method does not work on some elements before they are laid out
2419 * dom/Element.cpp: (WebCore::Element::focus): Do the updateLayout call before
2420 calling isFocusable, since isFocusable looks at the size of the renderer.
2422 2006-06-02 Steve Falkenburg <sfalken@apple.com>
2426 Platform hookup fixes
2428 * bridge/win/FrameWin.cpp:
2429 (WebCore::FrameWin::urlSelected):
2430 (WebCore::FrameWin::setTitle):
2431 (WebCore::FrameWin::setStatusBarText):
2432 * bridge/win/FrameWin.h:
2433 * platform/win/TemporaryLinkStubs.cpp:
2434 (FrameWin::overrideMediaType):
2435 * platform/win/TransferJobWin.cpp:
2436 (WebCore::TransferJobWndProc):
2437 (WebCore::TransferJob::start):
2438 (WebCore::TransferJob::fileLoadTimer):
2439 (WebCore::TransferJob::cancel):
2441 2006-06-02 Rémi Zara <remi_zara@mac.com>
2445 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3379
2446 attr(X) does not work
2448 Test: fast/css-generated-content/016.html
2450 * css/cssstyleselector.cpp:
2451 (WebCore::CSSStyleSelector::canShareStyleWithElement): Don't share style
2452 if the unique bit is set.
2453 (WebCore::CSSStyleSelector::applyProperty): When applying the "attr" property,
2454 set the unique bit and add to m_selectorAttrs.
2456 * rendering/render_style.cpp: Did a lot of reformatting, and this one real change.
2457 (WebCore::RenderStyle::RenderStyle): Initialize m_unique to false.
2459 * rendering/render_style.h:
2460 (WebCore::RenderStyle::unique): Added. Returns value of m_unique.
2461 (WebCore::RenderStyle::setUnique): Added. Sets m_unique.
2463 2006-06-02 David Kilzer <ddkilzer@kilzer.net>
2467 http://bugzilla.opendarwin.org/show_bug.cgi?id=9183
2468 Finish renaming of RenderCanvas to RenderView
2470 * rendering/RenderView.h: Changed renderName from "RenderCanvas" to "RenderView".
2472 2006-06-01 Darin Adler <darin@apple.com>
2474 - try to fix Windows build
2476 * bridge/win/FrameWin.cpp: Added include of Decoder.h.
2478 2006-06-01 Darin Adler <darin@apple.com>
2482 - WebCore doesn't need to load WebKit images any more; removed code for that
2484 * WebCore.exp: Removed WebCoreImageRendererFactory.
2485 * WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRendererFactory.h/mm.
2486 * bridge/mac/WebCoreFrameBridge.mm: Removed include of WebCoreImageRendererFactory.h.
2487 * platform/mac/ImageMac.mm: Removed include of WebCoreImageRendererFactory.h.
2488 * platform/mac/WebCoreImageRendererFactory.h: Removed.
2489 * platform/mac/WebCoreImageRendererFactory.m: Removed.
2491 2006-06-01 Sam Weinig <sam.weinig@gmail.com>
2493 Reviewed by Geoff, tweaked a bit by Darin.
2495 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9064
2496 Split dom2_traversalimpl.* into separate files (one class per file).
2498 * WebCore.xcodeproj/project.pbxproj: Updated for new files.
2499 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
2501 * bindings/js/kjs_traversal.h:
2502 * bindings/scripts/CodeGeneratorJS.pm:
2503 * bindings/objc/DOM.mm:
2508 * dom/NodeFilter.cpp: Added.
2509 * dom/NodeFilter.h: Added.
2510 * dom/NodeFilterCondition.cpp: Added.
2511 * dom/NodeFilterCondition.h: Added.
2512 * dom/NodeIterator.cpp: Added.
2513 * dom/NodeIterator.h: Added.
2514 * dom/Traversal.cpp: Added.
2515 * dom/Traversal.h: Added.
2516 * dom/TreeWalker.cpp: Added.
2517 * dom/TreeWalker.h: Added.
2519 * dom/dom2_traversalimpl.cpp: Removed.
2520 * dom/dom2_traversalimpl.h: Removed.
2522 2006-06-01 David Carson <dacarson@gmail.com>
2524 Reviewed by Maciej and Adele
2526 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8398
2527 REGRESSION: LABEL in OPTION element is clobbering display #TEXT
2528 Patch provided by Darin.
2530 * rendering/RenderSelect.cpp
2531 (RenderSelect::updateFromElement):
2532 Changed to use the containing text by default, and not the label text
2534 2006-06-01 David Carson <dacarson@gmail.com>
2538 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8646
2539 Correcting the value returned for window.screen.pixelDepth and
2540 window.screen.colorDepth
2542 * platform/mac/ScreenMac.mm
2544 Changed to return the BitsPerPixelFromDepth rather than the WindowDepth
2546 2006-06-01 Adele Peterson <adele@apple.com>
2550 Missed an initialization in my last checkin which caused too many
2551 resizers to be drawn.
2553 * rendering/render_style.cpp: (WebCore::resize):
2554 Initialize resize to RESIZE_NONE.
2556 2006-06-01 Dave Hyatt <hyatt@apple.com>
2558 Implement form POST using WinINet. This code is crazy... CRAZY!
2560 * platform/TransferJobInternal.h:
2561 (WebCore::TransferJobInternal::TransferJobInternal):
2562 * platform/win/CookieJarWin.cpp:
2563 (WebCore::setCookies):
2565 * platform/win/TransferJobWin.cpp:
2566 (WebCore::TransferJobWndProc):
2567 (WebCore::TransferJob::start):
2569 2006-06-01 Adele Peterson <adele@apple.com>
2573 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9216
2574 Implement CSS3 resize property
2576 * css/html4.css: Sets resize:both for textareas. This won't affect old-style textareas.
2578 * css/CSSPropertyNames.in: Added resize property.
2579 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Added case for CSS_PROP_RESIZE.
2580 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
2581 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): ditto.
2583 * rendering/render_style.cpp: (WebCore::StyleCSS3InheritedData): Initialize resize.
2584 * rendering/render_style.h:
2585 (WebCore::): Added EResize enum.
2586 (WebCore::RenderStyle::resize):
2587 (WebCore::RenderStyle::setResize):
2588 (WebCore::RenderStyle::initialResize):
2590 * page/FrameView.cpp:
2591 (WebCore::FrameViewPrivate::FrameViewPrivate): Added m_resizeLayer to keep track of a layer that has begun resizing.
2592 (WebCore::FrameViewPrivate::reset): Reset m_resizeLayer.
2593 (WebCore::FrameView::handleMousePressEvent): If the mouse was pressed in a layer's resize control, then put the layer into resize mode.
2594 (WebCore::selectCursor): Updated so we get a pointer cursor for the resize control.
2595 (WebCore::FrameView::handleMouseMoveEvent): If there's a layer currently resizing, then tell the layer to continue resizing.
2596 (WebCore::FrameView::handleMouseReleaseEvent): If there's a layer currently resizing, then pull it out of resize mode.
2598 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::isPointInScrollbar): Updated so the resize control isn't considered part of the scrollbar.
2599 * rendering/RenderLayer.cpp:
2600 (WebCore::RenderLayer::RenderLayer): Initialize m_inResizeMode
2601 (WebCore::RenderLayer::updateLayerPositions): Calls positionResizeControl.
2602 (WebCore::RenderLayer::resize): Added. Sets a new width and height based on the current mouse point.
2603 (WebCore::RenderLayer::isPointInResizeControl): Added.
2604 (WebCore::RenderLayer::positionResizeControl): Added.
2605 (WebCore::RenderLayer::positionScrollbars): Calls positionResizeControl.
2606 (WebCore::RenderLayer::paintScrollbars): Calls positionResizeControl.
2607 (WebCore::RenderLayer::paintResizeControl): Added.
2608 (WebCore::RenderLayer::paintLayer): Calls paintResizeControl.
2609 * rendering/RenderLayer.h: Added m_inResizeMode.
2610 (WebCore::RenderLayer::resizeControlRect):
2611 (WebCore::RenderLayer::setResizeControlRect):
2612 (WebCore::RenderLayer::inResizeMode): Added.
2613 (WebCore::RenderLayer::setInResizeMode): Added.
2615 * platform/mac/ImageMac.mm: (WebCore::Image::loadResource): Moved code from WebImageRendererFactory. Now loads images from WebCore's resources.
2616 WebImageRendererFactory is no longer used and should be removed.
2617 * Resources/missingImage.tiff: Added. Copied from WebKit.
2618 * WebCore.xcodeproj/project.pbxproj: Added missingImage.tiff
2619 * loader/Cache.cpp: (WebCore::Cache::init): Updated name from missing_image to missingImage.
2621 * rendering/RenderTheme.h:
2622 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paintResizeControl): Added.
2623 * rendering/RenderThemeMac.h:
2624 * rendering/RenderThemeMac.mm:
2625 (WebCore::RenderThemeMac::RenderThemeMac): Initialize resizeCornerImage.
2626 (WebCore::RenderThemeMac::paintResizeControl): Paints resizeCornerImage.
2628 2006-06-01 Brady Eidson <beidson@apple.com>
2632 Added the beginnings of sqlite-based code in a WebCore
2633 based version of the Icon Database. Right now the code
2634 is very loosely hooked up through a Bridge and only
2635 creates an sqlite3 database.
2637 There are also changes to our String classes to allow appending
2638 a single character to a String without creating a temporary object.
2641 -Added a symbol export
2643 * WebCore.xcodeproj/project.pbxproj:
2644 * bridge/mac/WebCoreIconDatabaseBridge.h: Added.
2645 * bridge/mac/WebCoreIconDatabaseBridge.mm: Added.
2646 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
2647 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2648 (-[WebCoreIconDatabaseBridge isOpen]):
2649 -This class will eventually shadow WebIconDatabase but for now
2650 is a minimal interface to make the sql code live
2653 * icon/IconDatabase.cpp: Added.
2654 -This class will eventually resemble WebIconDatabase but for now
2655 is minimal just to make the sql code live
2656 (WebCore::IconDatabase::sharedIconDatabase):
2657 (WebCore::IconDatabase::IconDatabase):
2658 (WebCore::IconDatabase::open):
2659 -This method calls a mkdir to make sure the target directory
2661 (WebCore::IconDatabase::close):
2662 (WebCore::IconDatabase::~IconDatabase):
2664 * icon/IconDatabase.h: Added.
2665 (WebCore::IconDatabase::isOpen):
2666 * platform/Logging.cpp:
2667 * platform/Logging.h:
2668 -Added an IconDatabase logging channel
2670 * platform/PlatformString.h:
2671 * platform/String.cpp:
2672 (WebCore::String::append):
2673 * platform/StringImpl.cpp:
2674 (WebCore::StringImpl::append):
2675 * platform/StringImpl.h:
2676 -Added append(char) and append(UChar) to allow appending a
2677 single character without creating a temporary object. Required
2678 to facilitate manually adding a null character to a unicode 16
2681 2006-06-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
2683 Reviewed and landed by Anders.
2685 - fixed all places in the Canvas to RenderView rename patch where
2686 view() should have been changed to frameView().
2688 * kwq/WebCoreAXObject.mm:
2689 (-[WebCoreAXObject position]):
2690 (-[WebCoreAXObject accessibilityAttributeValue:]):
2691 * rendering/RenderBlock.cpp:
2692 (WebCore::RenderBlock::layoutBlock):
2693 * rendering/RenderBox.cpp:
2694 (WebCore::RenderBox::paintBackgroundExtended):
2695 * rendering/RenderTreeAsText.cpp:
2696 (externalRepresentation):
2698 2006-06-01 Geoffrey Garen <ggaren@apple.com>
2700 Fix by Mitz. Reviewed, tweaked, tested, landed by me.
2702 - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9113
2703 REGRESSION (14581): XMLHttpRequest never calls onreadystatechange with
2706 An XMLHttpRequest must be added to the DOMObject cache so that its
2707 DOM implementation object can protect it, and by extension, its event
2710 This design seems slightly backwards to me -- the bindings should know
2711 about the DOM, not the other way around -- but I'm restoring it for
2712 now to fix the regression.
2714 * bindings/js/JSXMLHttpRequest.cpp:
2715 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2716 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2718 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2720 * platform/KURL.cpp:
2724 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2728 http://bugzilla.opendarwin.org/show_bug.cgi?id=6309
2729 multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working
2731 * bindings/js/kjs_window.cpp:
2732 (KJS::Location::put):
2733 Handle the case where the hash starts with a "#". Also, don't do anything if the previous and new hashes
2736 * bridge/BrowserExtension.h:
2737 * bridge/mac/BrowserExtensionMac.h:
2738 * bridge/mac/BrowserExtensionMac.mm:
2739 (WebCore::BrowserExtensionMac::historyURL):
2740 * bridge/mac/WebCoreFrameBridge.h:
2741 * bridge/mac/WebCoreFrameBridge.mm:
2742 New function historyURL which returns the complete URL for a given item in the history.
2745 (WebCore::Frame::scheduleLocationChange):
2746 (WebCore::Frame::scheduleHistoryNavigation):
2747 If the URL of the new location only differs in the hash, don't schedule the load. Instead, load it
2750 * platform/KURL.cpp:
2752 Add equalsIgnoringRef which returns whether two URLs are equal, ignoring the ref.
2754 2006-06-01 Anders Carlsson <acarlsson@apple.com>
2758 http://bugzilla.opendarwin.org/show_bug.cgi?id=9212
2759 dispatchEvent13.html crashes under GuardMalloc
2761 * dom/EventTargetNode.cpp:
2762 (WebCore::EventTargetNode::addEventListener):
2763 (WebCore::EventTargetNode::removeEventListener):
2764 (WebCore::EventTargetNode::handleLocalEvents):
2766 (WebCore::EventTargetNode::removeHTMLEventListener):
2767 (WebCore::EventTargetNode::getHTMLEventListener):
2768 * dom/EventTargetNode.h:
2769 Make the list of registered event listeners refcount the listeners
2770 by using a value list of RefPtr objects.
2772 Set removed flag to true in removeEventListener
2773 Only invoke event listeners if they don't have the removed flag.
2775 * dom/dom2_eventsimpl.cpp:
2776 (WebCore::RegisteredEventListener::RegisteredEventListener):
2777 * dom/dom2_eventsimpl.h:
2778 Make RegisteredEventListener refcounted.
2780 (WebCore::RegisteredEventListener::removed):
2781 (WebCore::RegisteredEventListener::setRemoved):
2782 Add removed flag and getter and setter
2784 2006-06-01 Justin Garcia <justin.garcia@apple.com>
2786 Reviewed by harrison
2788 <rdar://problem/4567752> When forwarding a message, pressing TAB key to place caret in body actually selects the entire message instead
2791 (WebCore::Element::focus):
2793 2006-06-01 David Kilzer <ddkilzer@kilzer.net>
2797 http://bugzilla.opendarwin.org/show_bug.cgi?id=9144
2798 Test for Bug 8079 (REGRESSION: Redraw from page cache does not show visited links)
2800 * manual-tests/redraw-page-cache-visited-links.html: Added.
2801 * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added.
2803 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2807 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9124
2808 Drop shadow obscures "add more stuff" bubble at live.com
2810 Test: fast/css/find-next-layer.html
2812 * rendering/RenderObject.cpp:
2813 (WebCore::RenderObject::findNextLayer): Fixed a bug where this function could reach
2814 two levels down in the layer tree and return 0.
2816 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2820 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9109
2821 Remove bogus assertion in RenderBlock::tabWidth
2823 Changed the uninitialized value of m_tabWidth to -1 and removed the
2824 assertion that it cannot be 0.
2826 * rendering/RenderBlock.cpp:
2827 (WebCore:::RenderBlock::RenderBlock):
2828 (WebCore::RenderBlock::setStyle):
2829 * rendering/bidi.cpp:
2830 (WebCore::RenderBlock::tabWidth):
2832 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
2836 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9100
2837 Absolutely positioned replaced elements with all non-auto
2838 values are rendered incorrectly
2840 * rendering/RenderBox.cpp:
2841 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Add support for case when all values are specified.
2842 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto
2844 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2848 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9012
2849 Row height not updated when cell heights change
2851 Test: fast/table/row-height-recalc.html
2853 * rendering/RenderTableCell.cpp:
2854 (WebCore::RenderTableCell::setStyle): Mark the section as needing recalculation
2855 if the height property changed.
2856 * rendering/RenderTableRow.cpp:
2857 (WebCore::RenderTableRow::setStyle): Ditto.
2858 * rendering/RenderTableSection.cpp:
2859 (WebCore::RenderTableSection::recalcCells): Initialize the grid row height
2860 to the height of the row element (like addChild() does).
2862 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
2866 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8969
2867 REGRESSION: typing in textfield repaints whole web page at gamefaqs.com
2869 No test possible (no functionality change)
2872 (WebCore::Document::updateLayout): Changed to ensure that pending subtree
2873 layouts are performed too.
2875 (WebCore::Frame::forceLayout): Force a full layout.
2876 * page/FrameView.cpp:
2877 (WebCore::FrameViewPrivate::reset):
2878 (WebCore::FrameView::layout): Changed to relayout only the subtree rooted
2879 at d->layoutRoot if it's non-zero and allowSubtree is true.
2880 (WebCore::FrameView::scheduleRelayout): Change pending subtree relayout into
2881 normal relayout by clearing d->layoutRoot and propagating needsLayout to the
2883 (WebCore::FrameView::scheduleRelayoutOfSubtree): Added.
2885 * rendering/RenderObject.cpp:
2886 (WebCore::RenderObject::markContainingBlocksForLayout): Added scheduleRelayout
2887 parameter. FrameView passes false to force marking all the way to the root
2888 when turning a pending subtree relayout into a full relayout. Otherwise,
2889 marking stops at the first textField (or at the root) and
2890 relayout of the last object reached is scheduled.
2891 (WebCore::RenderObject::scheduleRelayout):
2892 * rendering/RenderObject.h:
2894 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
2898 patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8910>
2899 Bug 8910: Various code cleanups in RenderBox
2901 Clean up with some slight optimizations.
2903 * rendering/RenderBox.cpp:
2904 (WebCore::RenderBox::contentWidth):
2905 (WebCore::RenderBox::contentHeight):
2906 (WebCore::RenderBox::setPos):
2907 (WebCore::RenderBox::calcWidth):
2908 (WebCore::RenderBox::calcWidthUsing):
2909 * rendering/RenderBox.h:
2911 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
2915 patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8899>
2916 Bug 8899: Removes some unneeded code from RenderBox
2918 Removes the use of WidthType where not needed to simplify
2921 * rendering/RenderBox.cpp:
2922 (WebCore::RenderBox::calcWidthUsing):
2923 (WebCore::RenderBox::sizesToIntrinsicWidth):
2924 (WebCore::RenderBox::calcReplacedWidth):
2925 (WebCore::RenderBox::calcReplacedWidthUsing):
2926 (WebCore::RenderBox::calcReplacedHeight):
2927 (WebCore::RenderBox::calcReplacedHeightUsing):
2928 * rendering/RenderBox.h:
2930 (WebCore::RenderBox::renderName):
2931 * rendering/RenderImage.cpp:
2932 (WebCore::RenderImage::calcReplacedWidth):
2933 (WebCore::RenderImage::calcReplacedHeight):
2935 2006-05-31 Rob Buis <buis@kde.org>
2939 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8455
2940 selectedIndex for a select after a Form reset() has wrong value
2942 Make sure the list items are reset properly by selecting
2943 the first option in case no options have the selected attribute
2946 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::reset):
2948 2006-05-31 Rob Buis <buis@kde.org>
2952 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8024
2953 "Go" button (search) doesn't work at fifa.com (document.all.FormName)
2955 Allow input elements with name attributes as possible named
2956 items for document.all.
2958 * html/HTMLCollection.cpp:
2959 (WebCore::HTMLCollection::checkForNameMatch):
2960 (WebCore::HTMLCollection::updateNameCache):
2962 2006-05-31 Dave Hyatt <hyatt@apple.com>
2964 Adding stubs for BMP/ICO/XBM image decoders. They don't
2965 do anything yet though.
2967 * WebCore.vcproj/WebCore/WebCore.vcproj:
2968 * platform/cairo/ImageSourceCairo.cpp:
2969 (WebCore::createDecoder):
2970 * platform/image-decoders/bmp: Added.
2971 * platform/image-decoders/bmp/BMPImageDecoder.cpp: Added.
2972 (WebCore::BMPImageDecoder::isSizeAvailable):
2973 (WebCore::BMPImageDecoder::frameBufferAtIndex):
2974 * platform/image-decoders/bmp/BMPImageDecoder.h: Added.
2975 * platform/image-decoders/ico: Added.
2976 * platform/image-decoders/ico/ICOImageDecoder.cpp: Added.
2977 (WebCore::ICOImageDecoder::isSizeAvailable):
2978 (WebCore::ICOImageDecoder::frameBufferAtIndex):
2979 * platform/image-decoders/ico/ICOImageDecoder.h: Added.
2980 * platform/image-decoders/xbm: Added.
2981 * platform/image-decoders/xbm/XBMImageDecoder.cpp: Added.
2982 (WebCore::XBMImageDecoder::isSizeAvailable):
2983 (WebCore::XBMImageDecoder::frameBufferAtIndex):
2984 * platform/image-decoders/xbm/XBMImageDecoder.h: Added.
2986 2006-05-31 David Hyatt <hyatt@apple.com>
2988 Fix for the gmail tab-focus-stealing bug.
2992 * bindings/js/kjs_window.cpp:
2993 (KJS::WindowFunc::callAsFunction):
2994 * bridge/mac/BrowserExtensionMac.mm:
2995 (WebCore::BrowserExtensionMac::createNewWindow):
2996 * bridge/mac/FrameMac.h:
2997 * bridge/mac/FrameMac.mm:
2998 (WebCore::FrameMac::focusWindow):
2999 (WebCore::FrameMac::unfocusWindow):
3000 * bridge/mac/WebCoreFrameBridge.h:
3002 * platform/Widget.h:
3003 * platform/mac/WidgetMac.mm:
3004 * platform/win/TemporaryLinkStubs.cpp:
3005 (FrameWin::focusWindow):
3006 * platform/win/WidgetWin.cpp:
3008 2006-05-31 Beth Dakin <bdakin@apple.com>
3012 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6755 CSS3:
3013 Borders rounded with border-radius don't draw the roundings
3015 This patch does not draw all of the different border styles
3016 perfectly, so I have filed a few followup bugs that I will
3017 reference from this Bugzilla.
3019 * platform/GraphicsContext.h:
3020 * platform/cairo/GraphicsContextCairo.cpp:
3021 (WebCore::GraphicsContext::drawArc): drawArc() has different
3022 parameters now, but mostly this needs to be implemented to match
3024 (WebCore::GraphicsContext::addRoundedRectClip): Just a stub.
3025 Implement this later.
3026 (WebCore::GraphicsContext::addInnerRoundedRectClip): Just a stub.
3027 Implement this later.
3028 * platform/cg/GraphicsContextCG.cpp:
3029 (WebCore::GraphicsContext::drawArc): drawArc() now handles drawing
3030 elliptical arcs as well as circular arcs, it also takes a thickness
3031 parameter to draw an arc of a given thickness and draws with the
3032 appropriate pen style.
3033 (WebCore::GraphicsContext::addInnerRoundedRectClip): Adds a clip to
3034 the inside of an arc instead of to the outside which is already
3035 done by addRoundedClipRect()
3036 * rendering/RenderObject.cpp:
3037 (WebCore::RenderObject::drawBorderArc): Draws the border arcs in
3038 the appropriate styles.
3039 (WebCore::RenderObject::paintBorder): Calls drawBorderArc() when
3040 border arcs are needed.
3041 * rendering/RenderObject.h:
3043 2006-05-30 Eric Seidel <eric@eseidel.com>
3045 Reviewed by andersca.
3047 Add first-cut SVG JS bindings autogeneration.
3048 SVGSVGElement and various other support classes are generated.
3049 Various small style fixes.
3050 http://bugzilla.opendarwin.org/show_bug.cgi?id=4249
3052 * DerivedSources.make:
3053 * WebCore+SVG/RGBColor.cpp: Removed.
3054 * WebCore+SVG/RGBColor.h: Removed.
3055 * WebCore.xcodeproj/project.pbxproj:
3056 * bindings/js/JSHTMLElementWrapperFactory.cpp:
3057 (WebCore::createJSHTMLWrapper): renamed from createJSWrapper
3058 * bindings/js/JSHTMLElementWrapperFactory.h:
3059 * bindings/js/kjs_dom.cpp:
3060 (KJS::DOMNode::DOMNode):
3061 (KJS::DOMNode::toBoolean):
3062 (KJS::DOMNode::getOwnPropertySlot):
3063 (KJS::DOMNode::getValueProperty):
3064 (KJS::DOMNode::put):
3065 (KJS::DOMNode::putValueProperty):
3066 (KJS::DOMNode::toPrimitive):
3067 (KJS::DOMNode::toString):
3068 (KJS::DOMNodeProtoFunc::callAsFunction):
3069 (KJS::toEventTargetNode):
3070 (KJS::DOMEventTargetNode::getOwnPropertySlot):
3071 (KJS::DOMEventTargetNode::getValueProperty):
3072 (KJS::DOMEventTargetNode::put):
3073 (KJS::DOMEventTargetNode::putValueProperty):
3074 (KJS::DOMEventTargetNode::setListener):
3075 (KJS::DOMEventTargetNode::getListener):
3076 (KJS::DOMEventTargetNode::pushEventHandlerScope):
3077 (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
3078 (KJS::DOMNodeList::toPrimitive):
3079 (KJS::DOMNodeList::getValueProperty):
3080 (KJS::DOMNodeList::indexGetter):
3081 (KJS::DOMNodeList::nameGetter):
3082 (KJS::DOMNodeList::getOwnPropertySlot):
3083 (KJS::DOMNodeList::callAsFunction):
3084 (KJS::DOMNodeListFunc::callAsFunction):
3086 (KJS::toDocumentType):
3087 (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
3088 (KJS::DOMNamedNodeMap::~DOMNamedNodeMap):
3089 (KJS::DOMNamedNodeMap::lengthGetter):
3090 (KJS::DOMNamedNodeMap::indexGetter):
3091 (KJS::DOMNamedNodeMap::nameGetter):
3092 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
3094 (KJS::checkNodeSecurity):
3095 (KJS::getRuntimeObject):
3096 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
3097 (KJS::DOMExceptionConstructor::getValueProperty):
3098 (KJS::getDOMExceptionConstructor):
3099 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
3100 (KJS::DOMNamedNodesCollection::lengthGetter):
3101 (KJS::DOMNamedNodesCollection::indexGetter):
3102 (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
3103 * bindings/scripts/CodeGenerator.pm:
3104 * bindings/scripts/CodeGeneratorJS.pm:
3106 (WebCore::Document::implicitClose):
3108 * dom/StyledElement.h:
3109 * ksvg2/bindings/idl/svg/SVGAngle.idl: Removed.
3110 * ksvg2/bindings/idl/svg/SVGAnimatedLength.idl: Removed.
3111 * ksvg2/bindings/idl/svg/SVGColor.idl: Removed.
3112 * ksvg2/bindings/idl/svg/SVGDocument.idl: Removed.
3113 * ksvg2/bindings/idl/svg/SVGElement.idl: Removed.
3114 * ksvg2/bindings/idl/svg/SVGLength.idl: Removed.
3115 * ksvg2/bindings/idl/svg/SVGMatrix.idl: Removed.
3116 * ksvg2/bindings/idl/svg/SVGNumber.idl: Removed.
3117 * ksvg2/bindings/idl/svg/SVGPoint.idl: Removed.
3118 * ksvg2/bindings/idl/svg/SVGRect.idl: Removed.
3119 * ksvg2/bindings/idl/svg/SVGSVGElement.idl: Removed.
3120 * ksvg2/bindings/idl/svg/SVGTransform.idl: Removed.
3121 * ksvg2/bindings/idl/svg/kdomdefs.idl: Removed.
3122 * ksvg2/bindings/js: Added.
3123 * ksvg2/bindings/js/JSSVGNumber.cpp: Added.
3125 (WebCore::JSSVGNumber::~JSSVGNumber):
3126 (WebCore::JSSVGNumber::getOwnPropertySlot):
3127 (WebCore::JSSVGNumber::getValue):
3128 (WebCore::getJSSVGNumber):
3129 * ksvg2/bindings/js/JSSVGNumber.h: Added.
3130 (WebCore::JSSVGNumber::JSSVGNumber):
3131 (WebCore::JSSVGNumber::classInfo):
3132 * ksvg2/bindings/js/JSSVGPoint.cpp: Added.
3134 (WebCore::JSSVGPoint::~JSSVGPoint):
3135 (WebCore::JSSVGPoint::getOwnPropertySlot):
3136 (WebCore::JSSVGPoint::getValueProperty):
3137 (WebCore::getJSSVGPoint):
3138 (WebCore::toFloatPoint):
3139 * ksvg2/bindings/js/JSSVGPoint.h: Added.
3140 (WebCore::JSSVGPoint::JSSVGPoint):
3141 (WebCore::JSSVGPoint::classInfo):
3142 (WebCore::JSSVGPoint::):
3143 (WebCore::JSSVGPoint::impl):
3144 * ksvg2/bindings/js/JSSVGRect.cpp: Added.
3146 (WebCore::JSSVGRect::~JSSVGRect):
3147 (WebCore::JSSVGRect::getOwnPropertySlot):
3148 (WebCore::JSSVGRect::getValueProperty):
3149 (WebCore::getJSSVGRect):
3150 (WebCore::toFloatRect):
3151 * ksvg2/bindings/js/JSSVGRect.h: Added.
3152 (WebCore::JSSVGRect::JSSVGRect):
3153 (WebCore::JSSVGRect::classInfo):
3154 (WebCore::JSSVGRect::):
3155 (WebCore::JSSVGRect::impl):
3156 * ksvg2/css/SVGCSSParser.cpp:
3157 (WebCore::CSSParser::parseSVGValue):
3158 * ksvg2/css/SVGCSSStyleSelector.cpp:
3159 (WebCore::CSSStyleSelector::applySVGProperty):
3160 * ksvg2/events/SVGZoomEvent.cpp:
3161 (SVGZoomEvent::SVGZoomEvent):
3162 (SVGZoomEvent::zoomRectScreen):
3163 (SVGZoomEvent::previousTranslate):
3164 (SVGZoomEvent::newTranslate):
3165 * ksvg2/events/SVGZoomEvent.h:
3168 * ksvg2/misc/SVGDocumentExtensions.cpp:
3169 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
3170 (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
3171 (WebCore::SVGDocumentExtensions::addTimeContainer):
3172 (WebCore::SVGDocumentExtensions::removeTimeContainer):
3173 (WebCore::SVGDocumentExtensions::startAnimations):
3174 (WebCore::SVGDocumentExtensions::pauseAnimations):
3175 (WebCore::SVGDocumentExtensions::unpauseAnimations):
3176 * ksvg2/misc/SVGDocumentExtensions.h:
3177 * ksvg2/svg/SVGAElement.h:
3178 * ksvg2/svg/SVGAngle.h:
3179 (WebCore::SVGAngle::):
3180 * ksvg2/svg/SVGAngle.idl: Added.
3181 * ksvg2/svg/SVGAnimateColorElement.cpp:
3182 (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
3183 (WebCore::SVGAnimateColorElement::handleTimerEvent):
3184 (WebCore::SVGAnimateColorElement::clampColor):
3185 * ksvg2/svg/SVGAnimateColorElement.h:
3186 * ksvg2/svg/SVGAnimateElement.cpp:
3187 (SVGAnimateElement::SVGAnimateElement):
3188 (SVGAnimateElement::handleTimerEvent):
3189 * ksvg2/svg/SVGAnimateElement.h:
3190 * ksvg2/svg/SVGAnimateTransformElement.cpp:
3191 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3192 (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
3193 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3194 (WebCore::SVGAnimateTransformElement::parseTransformValue):
3195 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
3196 (WebCore::SVGAnimateTransformElement::initialMatrix):
3197 * ksvg2/svg/SVGAnimateTransformElement.h:
3198 * ksvg2/svg/SVGAnimatedLength.idl: Added.
3199 * ksvg2/svg/SVGAnimationElement.cpp:
3200 (SVGAnimationElement::closeRenderer):
3201 * ksvg2/svg/SVGAnimationElement.h:
3202 * ksvg2/svg/SVGCircleElement.h:
3203 * ksvg2/svg/SVGClipPathElement.h:
3204 * ksvg2/svg/SVGColor.cpp:
3205 (WebCore::SVGColor::SVGColor):
3206 (WebCore::SVGColor::rgbColor):
3207 (WebCore::SVGColor::setRGBColor):
3208 (WebCore::SVGColor::setRGBColorICCColor):
3209 (WebCore::SVGColor::setColor):
3210 (WebCore::SVGColor::color):
3211 * ksvg2/svg/SVGColor.h:
3212 (WebCore::SVGColor::):
3213 (WebCore::SVGColor::setRGBColor):
3214 * ksvg2/svg/SVGColor.idl: Added.
3215 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3216 * ksvg2/svg/SVGCursorElement.h:
3217 * ksvg2/svg/SVGDefsElement.h:
3218 * ksvg2/svg/SVGDescElement.h:
3219 * ksvg2/svg/SVGDocument.idl: Added.
3220 * ksvg2/svg/SVGElement.cpp:
3221 (WebCore::SVGElement::SVGElement):
3222 (WebCore::SVGElement::isSupported):
3223 (WebCore::SVGElement::id):
3224 (WebCore::SVGElement::setId):
3225 (WebCore::SVGElement::xmlbase):
3226 (WebCore::SVGElement::setXmlbase):
3227 (WebCore::SVGElement::ownerSVGElement):
3228 (WebCore::SVGElement::viewportElement):
3229 (WebCore::SVGElement::tryGetAttribute):
3230 (WebCore::SVGElement::tryGetAttributeNS):
3231 (WebCore::SVGElement::childShouldCreateRenderer):
3232 * ksvg2/svg/SVGElement.h:
3233 * ksvg2/svg/SVGElement.idl: Added.
3234 * ksvg2/svg/SVGEllipseElement.h:
3235 * ksvg2/svg/SVGEvent.idl: Added.
3236 * ksvg2/svg/SVGFEBlendElement.h:
3237 * ksvg2/svg/SVGFEColorMatrixElement.h:
3238 * ksvg2/svg/SVGFEComponentTransferElement.h:
3239 * ksvg2/svg/SVGFECompositeElement.h:
3240 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
3241 * ksvg2/svg/SVGFEDistantLightElement.h:
3242 * ksvg2/svg/SVGFEFloodElement.h:
3243 * ksvg2/svg/SVGFEFuncAElement.h:
3244 * ksvg2/svg/SVGFEFuncBElement.h:
3245 * ksvg2/svg/SVGFEFuncGElement.h:
3246 * ksvg2/svg/SVGFEFuncRElement.h:
3247 * ksvg2/svg/SVGFEGaussianBlurElement.h:
3248 * ksvg2/svg/SVGFEImageElement.h:
3249 * ksvg2/svg/SVGFELightElement.h:
3250 * ksvg2/svg/SVGFEMergeElement.h:
3251 * ksvg2/svg/SVGFEMergeNodeElement.h:
3252 * ksvg2/svg/SVGFEOffsetElement.h:
3253 * ksvg2/svg/SVGFEPointLightElement.h:
3254 * ksvg2/svg/SVGFESpecularLightingElement.h:
3255 * ksvg2/svg/SVGFESpotLightElement.h:
3256 * ksvg2/svg/SVGFETileElement.h:
3257 * ksvg2/svg/SVGFETurbulenceElement.h:
3258 * ksvg2/svg/SVGFilterElement.h:
3259 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3260 * ksvg2/svg/SVGForeignObjectElement.h:
3261 * ksvg2/svg/SVGGElement.h:
3262 * ksvg2/svg/SVGGradientElement.h:
3263 * ksvg2/svg/SVGHelper.cpp:
3264 (WebCore::SVGHelper::PercentageOfViewport):
3265 (WebCore::SVGHelper::ParseSeperatedList):
3266 * ksvg2/svg/SVGImageElement.h:
3267 * ksvg2/svg/SVGLength.h:
3268 (WebCore::SVGLength::):
3269 * ksvg2/svg/SVGLength.idl: Added.
3270 * ksvg2/svg/SVGLineElement.h:
3271 * ksvg2/svg/SVGLinearGradientElement.h:
3272 * ksvg2/svg/SVGLocatable.cpp:
3273 (SVGLocatable::getBBox):
3274 * ksvg2/svg/SVGLocatable.h:
3275 * ksvg2/svg/SVGMarkerElement.h:
3276 * ksvg2/svg/SVGMaskElement.h:
3277 * ksvg2/svg/SVGMatrix.cpp:
3278 (SVGMatrix::inverse):
3279 (SVGMatrix::rotateFromVector):
3280 * ksvg2/svg/SVGMatrix.h:
3281 * ksvg2/svg/SVGMatrix.idl: Added.
3282 * ksvg2/svg/SVGNumber.idl: Added.
3283 * ksvg2/svg/SVGPathElement.cpp:
3284 (WebCore::SVGPathElement::getPointAtLength):
3285 * ksvg2/svg/SVGPathElement.h:
3286 * ksvg2/svg/SVGPatternElement.cpp:
3287 (WebCore::SVGPatternElement::x):
3288 (WebCore::SVGPatternElement::y):
3289 (WebCore::SVGPatternElement::width):
3290 (WebCore::SVGPatternElement::height):
3291 (WebCore::SVGPatternElement::pushAttributeContext):
3292 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
3293 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3294 (WebCore::SVGPatternElement::notifyClientsToRepaint):
3295 (WebCore::SVGPatternElement::notifyAttributeChange):
3296 (WebCore::SVGPatternElement::canvasResource):
3297 (WebCore::SVGPatternElement::getCTM):
3298 * ksvg2/svg/SVGPatternElement.h:
3299 * ksvg2/svg/SVGPoint.idl: Added.
3300 * ksvg2/svg/SVGPolyElement.h:
3301 * ksvg2/svg/SVGPolygonElement.h:
3302 * ksvg2/svg/SVGPolylineElement.h:
3303 * ksvg2/svg/SVGRadialGradientElement.h:
3304 * ksvg2/svg/SVGRect.idl: Added.
3305 * ksvg2/svg/SVGRectElement.h:
3306 * ksvg2/svg/SVGSVGElement.cpp:
3307 (WebCore::SVGSVGElement::SVGSVGElement):
3308 (WebCore::SVGSVGElement::~SVGSVGElement):
3309 (WebCore::SVGSVGElement::viewport):
3310 (WebCore::SVGSVGElement::currentTranslate):
3311 (WebCore::SVGSVGElement::unsuspendRedraw):
3312 (WebCore::SVGSVGElement::getIntersectionList):
3313 (WebCore::SVGSVGElement::getEnclosureList):
3314 (WebCore::SVGSVGElement::checkIntersection):
3315 (WebCore::SVGSVGElement::checkEnclosure):
3316 (WebCore::SVGSVGElement::createSVGNumber):
3317 (WebCore::SVGSVGElement::createSVGPoint):
3318 (WebCore::SVGSVGElement::createSVGRect):
3319 (WebCore::SVGSVGElement::pauseAnimations):
3320 (WebCore::SVGSVGElement::unpauseAnimations):
3321 (WebCore::SVGSVGElement::animationsPaused):
3322 (WebCore::SVGSVGElement::getCurrentTime):
3323 (WebCore::SVGSVGElement::setCurrentTime):
3324 * ksvg2/svg/SVGSVGElement.h:
3325 (WebCore::SVGSVGElement::timeScheduler):
3326 * ksvg2/svg/SVGSVGElement.idl: Added.
3327 * ksvg2/svg/SVGScriptElement.h:
3328 * ksvg2/svg/SVGSetElement.cpp:
3329 (WebCore::SVGSetElement::SVGSetElement):
3330 (WebCore::SVGSetElement::handleTimerEvent):
3331 * ksvg2/svg/SVGSetElement.h:
3332 * ksvg2/svg/SVGStopElement.h:
3333 * ksvg2/svg/SVGStyleElement.h:
3334 * ksvg2/svg/SVGStyledElement.h:
3335 * ksvg2/svg/SVGStyledLocatableElement.cpp:
3336 (SVGStyledLocatableElement::getBBox):
3337 * ksvg2/svg/SVGStyledLocatableElement.h:
3338 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3339 (SVGStyledTransformableElement::getBBox):
3340 * ksvg2/svg/SVGStyledTransformableElement.h:
3341 * ksvg2/svg/SVGSwitchElement.h:
3342 * ksvg2/svg/SVGSymbolElement.h:
3343 * ksvg2/svg/SVGTRefElement.h:
3344 * ksvg2/svg/SVGTSpanElement.h:
3345 * ksvg2/svg/SVGTextContentElement.cpp:
3346 (SVGTextContentElement::getStartPositionOfChar):
3347 (SVGTextContentElement::getEndPositionOfChar):
3348 (SVGTextContentElement::getExtentOfChar):
3349 (SVGTextContentElement::getCharNumAtPosition):
3350 (SVGTextContentElement::parseMappedAttribute):
3351 * ksvg2/svg/SVGTextContentElement.h:
3352 * ksvg2/svg/SVGTextElement.cpp:
3353 (WebCore::SVGTextElement::getBBox):
3354 * ksvg2/svg/SVGTextElement.h:
3355 * ksvg2/svg/SVGTextPositioningElement.h:
3356 * ksvg2/svg/SVGTitleElement.h:
3357 * ksvg2/svg/SVGTransform.h:
3358 (WebCore::SVGTransform::):
3359 * ksvg2/svg/SVGTransform.idl: Added.
3360 * ksvg2/svg/SVGUseElement.h:
3361 * ksvg2/svg/SVGViewElement.h:
3363 (WebCore::Frame::Frame):
3364 (WebCore::Frame::pauseTimeouts):
3365 (WebCore::Frame::resumeTimeouts):
3367 * rendering/RenderBR.h:
3368 * rendering/RenderBox.h:
3369 (WebCore::RenderBox::renderName):
3370 * rendering/RenderCanvas.h:
3371 (WebCore::RenderCanvas::view):
3372 * rendering/RenderContainer.h:
3373 * rendering/RenderFlexibleBox.h:
3374 * rendering/RenderFlow.h:
3375 (WebCore::RenderFlow::RenderFlow):
3376 * rendering/RenderInline.h:
3377 * rendering/RenderTableSection.h:
3378 * rendering/RenderTextFragment.h:
3379 (WebCore::RenderTextFragment::contentString):
3380 * xml/xmlattrs.in: Added.
3382 2006-05-30 Geoffrey Garen <ggaren@apple.com>
3386 - Fixed <rdar://problem/4559720> window sizing: make javascript window
3387 and screen sizing methods and properties work @ HIDPI
3389 The general approach here is to change some ints to floats, make
3390 a few key functions that scale between WebView and window/screen
3391 coordinates, and change other functions that work with screen
3392 coordinates to use the scaling functions for their underlying
3395 * manual-tests/window-open-features.html: Removed.
3396 * manual-tests/window-sizing.html: Added. More test coverage.
3398 * bindings/js/kjs_window.cpp: Changed ints to floats and IntRects to
3399 FloatRects, because window coordinates can be fractional when scaled
3400 to WebView/DOM coordinates.
3401 (KJS::floatFeature):
3402 (KJS::showModalDialog):
3403 (KJS::Window::getValueProperty):
3404 (KJS::constrainToVisible):
3405 (KJS::WindowFunc::callAsFunction):
3406 * bridge/BrowserExtension.h:
3407 * bridge/mac/BrowserExtensionMac.mm:
3408 (WebCore::BrowserExtensionMac::createNewWindow): Removed custom scaling
3409 code and replaced with calls to Page::windowRect and
3410 Page::setWindowRect. Renamed 'page' and 'bridge' to 'pageBridge' and
3411 'frameBridge,' respectively.
3412 * bridge/mac/PageMac.mm:
3413 (WebCore::Page::windowRect): Changed to use scaling
3414 (WebCore::Page::setWindowRect): ditto
3415 * bridge/mac/WebCoreFrameBridge.mm:
3418 * platform/IntRect.h:
3419 * platform/Screen.h:
3420 * platform/mac/MouseEventMac.mm:
3421 (WebCore::globalPositionForEvent): Changed to use flipScreenPoint
3422 * platform/mac/ScreenMac.mm:
3423 (WebCore::flipScreenRect): New key function
3424 (WebCore::flipScreenPoint): New key function
3425 (WebCore::scaleScreenRectToView): New key function
3426 (WebCore::scaleViewRectToScreen): New key function
3427 (WebCore::screenRect): Changed to use scaling
3428 (WebCore::usableScreenRect): ditto
3430 Feeble attempt to preserve Windows build:
3432 * platform/win/ScreenWin.cpp:
3433 (WebCore::scaleScreenRectToWidget): stub -- doesn't actually scale
3434 (WebCore::scaleWidgetRectToScreen): ditto
3435 * bridge/win/PageWin.cpp:
3436 (WebCore::Page::Page):
3437 (WebCore::Page::widget):
3439 2006-05-30 David Hyatt <hyatt@apple.com>
3441 Rename RenderCanvas to RenderView. Rename canvas(), isCanvas()
3442 to view(), isView(). Rename the frame view accessor on the old canvas
3443 from view() to frameView() (to avoid view()->view(), since that just looks
3446 Reviewed by andersca
3448 * WebCore.vcproj/WebCore/WebCore.vcproj:
3449 * WebCore.xcodeproj/project.pbxproj:
3450 * bindings/js/kjs_dom.cpp:
3451 * bindings/js/kjs_window.cpp:
3452 * bridge/mac/FrameMac.mm:
3453 * bridge/mac/WebCoreFrameBridge.mm:
3454 (-[WebCoreFrameBridge _setupRootForPrinting:]):
3455 (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
3456 (-[WebCoreFrameBridge selectionColor]):
3457 (-[WebCoreFrameBridge accessibilityTree]):
3459 (WebCore::Document::attach):
3460 (WebCore::Document::updateSelection):
3461 (WebCore::Document::prepareMouseEvent):
3462 * editing/SelectionController.cpp:
3463 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3464 * ksvg2/svg/SVGClipPathElement.cpp:
3465 (SVGClipPathElement::canvasResource):
3466 * ksvg2/svg/SVGFEFloodElement.cpp:
3467 (SVGFEFloodElement::filterEffect):
3468 * ksvg2/svg/SVGGradientElement.cpp:
3469 (SVGGradientElement::rebuildStops):
3470 * ksvg2/svg/SVGHelper.cpp:
3471 (SVGHelper::PercentageOfViewport):
3472 * ksvg2/svg/SVGPathElement.cpp:
3473 (WebCore::SVGPathElement::getPointAtLength):
3474 * ksvg2/svg/SVGSVGElement.cpp:
3475 (WebCore::SVGSVGElement::currentTranslate):
3476 * ksvg2/svg/SVGStyledElement.cpp:
3477 (WebCore::SVGStyledElement::view):
3478 (WebCore::SVGStyledElement::pushAttributeContext):
3479 * ksvg2/svg/SVGStyledElement.h:
3480 * kwq/WebCoreAXObject.mm:
3481 (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
3482 (-[WebCoreAXObject role]):
3483 (-[WebCoreAXObject value]):
3484 (-[WebCoreAXObject position]):
3485 (-[WebCoreAXObject accessibilityIsIgnored]):
3486 (-[WebCoreAXObject accessibilityAttributeNames]):
3487 (-[WebCoreAXObject topView]):
3488 (-[WebCoreAXObject accessibilityAttributeValue:]):
3490 (WebCore::Frame::selectionRect):
3491 (WebCore::Frame::paint):
3492 (WebCore::Frame::adjustPageHeight):
3493 (WebCore::Frame::forceLayoutWithPageWidthRange):
3494 * page/FrameView.cpp:
3495 (WebCore::FrameView::adjustViewSize):
3496 (WebCore::FrameView::layout):
3498 * rendering/AutoTableLayout.cpp:
3499 (WebCore::shouldScaleColumns):
3500 * rendering/RenderBlock.cpp:
3501 (WebCore::RenderBlock::MarginInfo::MarginInfo):
3502 (WebCore::RenderBlock::isSelfCollapsingBlock):
3503 (WebCore::RenderBlock::layoutBlock):
3504 (WebCore::RenderBlock::paintChildren):
3505 (WebCore::RenderBlock::setSelectionState):
3506 (WebCore::RenderBlock::isSelectionRoot):
3507 (WebCore::RenderBlock::fillInlineSelectionGaps):
3508 (WebCore::RenderBlock::lowestPosition):
3509 (WebCore::RenderBlock::rightmostPosition):
3510 (WebCore::RenderBlock::leftmostPosition):
3511 (WebCore::RenderBlock::clearFloats):
3512 (WebCore::RenderBlock::nodeAtPoint):
3513 (WebCore::RenderBlock::calcBlocminMaxWidth):
3514 (WebCore::RenderBlock::inRootBlockContext):
3515 * rendering/RenderBox.cpp:
3516 (WebCore::RenderBox::setStyle):
3517 (WebCore::RenderBox::paintRootBoxDecorations):
3518 (WebCore::RenderBox::paintBackgroundExtended):
3519 (WebCore::RenderBox::calcHeight):
3520 (WebCore::RenderBox::calcPercentageHeight):
3521 (WebCore::RenderBox::availableHeightUsing):
3522 * rendering/RenderCanvas.cpp: Removed.
3523 * rendering/RenderCanvas.h: Removed.
3524 * rendering/RenderContainer.cpp:
3525 (WebCore::RenderContainer::removeChildNode):
3526 * rendering/RenderFileButton.cpp:
3527 (WebCore::RenderFileButton::RenderFileButton):
3528 * rendering/RenderFlow.cpp:
3529 (WebCore::RenderFlow::destroy):
3530 (WebCore::RenderFlow::paintLines):
3531 * rendering/RenderFrameSet.cpp:
3532 (WebCore::RenderFrameSet::layout):
3533 (WebCore::RenderFrameSet::u