1 2006-08-15 David Hyatt <hyatt@apple.com>
3 Fix for bug 3303, support CSS2 system fonts. This patch adds a new API
4 to RenderTheme for obtaining a system font. In addition to supporting
5 the CSS2 values, extensions have been added for the 3 control sizes on
6 Mac. The UA stylesheet now uses -webkit-small-control and no longer hardcodes
7 Lucida Grande 11px. This means that controls in Safari should now respect
8 haxies that modify the default fonts on controls.
12 Added fast/css/css2-system-fonts.html
14 * WebCore.xcodeproj/project.pbxproj:
15 * css/CSSValueKeywords.in:
17 (WebCore::CSSParser::parseValue):
18 * css/cssstyleselector.cpp:
19 (WebCore::CSSStyleSelector::applyProperty):
21 * platform/FontDescription.h:
22 (WebCore::FontDescription::setBold):
23 * platform/win/TemporaryLinkStubs.cpp:
24 (RenderThemeWin::systemFont):
25 * rendering/RenderMenuList.cpp:
26 (WebCore::RenderMenuList::calcMinMaxWidth):
27 * rendering/RenderTheme.h:
28 (WebCore::RenderTheme::minimumMenuListSize):
29 * rendering/RenderThemeMac.h:
30 * rendering/RenderThemeMac.mm:
31 (WebCore::RenderThemeMac::systemFont):
32 (WebCore::RenderThemeMac::minimumMenuListSize):
33 * rendering/RenderThemeWin.h:
35 2006-08-15 Adele Peterson <adele@apple.com>
39 - Fix for <rdar://problem/4680207> REGRESSION: select-all should fire onSelect event for text fields and textareas (9518)
40 http://bugzilla.opendarwin.org/show_bug.cgi?id=9518
42 Test: fast/forms/onselect-selectall.html
44 * page/Frame.cpp: (WebCore::Frame::selectAll): Call notifyRendererOfSelectionChange with userTriggered = true so that onSelect will fire.
46 2006-08-15 Anders Carlsson <acarlsson@apple.com>
50 * platform/PlatformString.h:
51 * platform/String.cpp:
52 (WebCore::String::charactersWithNullTermination):
53 Add new function which calls StringImpl::charactersWithNullTermination.
55 * platform/StringImpl.cpp:
56 (WebCore::StringImpl::init):
57 (WebCore::StringImpl::append):
58 (WebCore::StringImpl::insert):
59 (WebCore::StringImpl::truncate):
60 (WebCore::StringImpl::remove):
61 Set m_hasTerminatingNullCharacter to false;
63 (WebCore::StringImpl::charactersWithNullTermination):
64 If the string already has a terminating null character, simply return it. Otherwise,
65 realloc to make room for one and set m_hasTerminatingNullCharacter to true;
67 * platform/StringImpl.h:
68 (WebCore::StringImpl::StringImpl):
69 Add m_hasTerminatingNullCharacter.
71 2006-08-15 Adele Peterson <adele@apple.com>
75 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9926
76 REGRESSION: pop-up looks bad because <option> respects color but not background-color
78 * rendering/RenderPopupMenuMac.mm:
79 (WebCore::RenderPopupMenuMac::addGroupLabel): Removed code to set foreground color in NSMenu.
80 Added a FIXME that we need to handle both foreground and background color. (9846)
81 (WebCore::RenderPopupMenuMac::addOption): ditto.
82 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustMenuListStyle):
83 For the aqua look, set the foreground color to black.
85 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
89 http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
90 Bug 10384: Switch to DWARF for Release configuration
92 * WebCore.xcodeproj/project.pbxproj:
94 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
97 Tweaked and landed by Darin.
99 http://bugzilla.opendarwin.org/show_bug.cgi?id=10399
100 Bug 10399: RenderTextArea is unused
102 * WebCore.vcproj/WebCore/WebCore.vcproj:
103 * WebCore.xcodeproj/project.pbxproj:
104 * WebCoreSources.bkl:
105 Removed RenderTextArea source files.
107 * html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
108 * html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
110 * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
112 * platform/TextBox.h: Removed.
113 * platform/mac/TextBoxMac.mm: Removed.
114 * platform/mac/WebCoreTextArea.h: Removed.
115 * platform/mac/WebCoreTextArea.mm: Removed.
116 * rendering/RenderTextArea.cpp: Removed.
117 * rendering/RenderTextArea.h: Removed.
119 2006-08-15 Brady Eidson <beidson@apple.com>
121 Reviewed by THE OTHER Maciej...
124 1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
125 2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
126 null dereference later
128 * bridge/mac/WebCoreIconDatabaseBridge.mm:
129 (-[WebCoreIconDatabaseBridge retainIconForURL:]): Changed IconDatabase method name
130 (-[WebCoreIconDatabaseBridge releaseIconForURL:]): ditto
131 * loader/icon/IconDatabase.cpp:
132 (WebCore::IconDatabase::retainIconForPageURL): Name change
133 (WebCore::IconDatabase::releaseIconForPageURL): ditto
134 (WebCore::IconDatabase::setIconURLForPageURL): Added the null site-icon check when changing a PageURL's iconURL
135 * loader/icon/IconDatabase.h: Some renames
137 2006-08-14 Eric Seidel <eric@eseidel.com>
141 <mask>, <marker>, <pattern> inside <defs> do not work
142 http://bugzilla.opendarwin.org/show_bug.cgi?id=6548
144 * ksvg2/svg/SVGDefsElement.cpp:
145 (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file
146 (WebCore::SVGDefsElement::isValid): moved to .cpp file
147 (WebCore::SVGDefsElement::rendererIsNeeded): Added.
148 (WebCore::SVGDefsElement::createRenderer): Added.
149 * ksvg2/svg/SVGDefsElement.h:
150 * ksvg2/svg/SVGGElement.cpp:
151 (WebCore::SVGGElement::SVGGElement): adjusted spacing
152 (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing
153 (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
155 2006-08-14 Eric Seidel <eric@eseidel.com>
157 Reviewed by darin and mjs.
159 Add better SVGLoad event support.
160 http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
161 There will still need to be additional support added for <link> and <script> elements.
162 Not all of the error -> loaded -> error transition cases work yet.
164 * dom/EventTargetNode.cpp:
165 (WebCore::EventTargetNode::dispatchGenericEvent):
166 * html/HTMLImageLoader.cpp:
167 (WebCore::HTMLImageLoader::dispatchLoadEvent):
168 * html/HTMLImageLoader.h:
169 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
170 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
171 * ksvg2/misc/SVGImageLoader.cpp:
172 (WebCore::SVGImageLoader::SVGImageLoader):
173 (WebCore::SVGImageLoader::dispatchLoadEvent):
174 * ksvg2/misc/SVGImageLoader.h:
175 * ksvg2/svg/SVGAElement.cpp:
176 (WebCore::SVGAElement::parseMappedAttribute):
177 * ksvg2/svg/SVGAnimatedBoolean.h:
178 * ksvg2/svg/SVGElement.cpp:
179 (WebCore::SVGElement::SVGElement):
180 (WebCore::SVGElement::parseMappedAttribute):
181 (WebCore::SVGElement::haveLoadedRequiredResources):
182 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
183 (WebCore::SVGElement::closeRenderer):
184 * ksvg2/svg/SVGElement.h:
185 (WebCore::SVGElement::rendererIsNeeded):
186 (WebCore::svg_dynamic_cast):
187 * ksvg2/svg/SVGExternalResourcesRequired.h:
188 * ksvg2/svg/SVGImageElement.cpp:
189 (SVGImageElement::SVGImageElement):
190 (SVGImageElement::haveLoadedRequiredResources):
191 * ksvg2/svg/SVGImageElement.h:
192 * ksvg2/svg/SVGSVGElement.cpp:
193 (WebCore::SVGSVGElement::parseMappedAttribute):
194 * ksvg2/svg/SVGScriptElement.cpp:
195 (WebCore::SVGScriptElement::SVGScriptElement):
196 (WebCore::SVGScriptElement::parseMappedAttribute):
197 (WebCore::SVGScriptElement::executeScript):
198 * xml/xmlhttprequest.cpp:
199 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
201 2006-08-14 Anders Carlsson <acarlsson@apple.com>
205 http://bugzilla.opendarwin.org/show_bug.cgi?id=10393
206 Autogenerate NodeIterator and TreeWalker.
208 * DerivedSources.make:
209 * WebCore.xcodeproj/project.pbxproj:
212 * bindings/js/JSNodeIteratorCustom.cpp: Added.
213 (WebCore::JSNodeIterator::mark):
214 * bindings/js/JSTreeWalkerCustom.cpp: Added.
215 (WebCore::JSTreeWalker::mark):
217 * bindings/js/kjs_traversal.cpp:
218 * bindings/js/kjs_traversal.h:
219 Remove implementations of DOMNodeIterator and DOMTreeWalker.
221 * bindings/scripts/CodeGeneratorJS.pm:
222 Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.
224 * bindings/objc/DOM.mm:
225 (-[DOMNodeIterator detach]):
226 * dom/NodeIterator.cpp:
227 (WebCore::NodeIterator::detach):
228 * dom/NodeIterator.h:
229 Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
230 * dom/NodeIterator.idl: Added.
231 * dom/TreeWalker.idl: Added.
233 2006-08-14 Brady Eidson <beidson@apple.com>
237 The changes are plentiful, but small, mostly to improve performance
238 1) Add a bool flag to SiteIcon to stop it from querying the database over and over
239 2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
240 3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon
241 4) Added isIconURLRetained() to optimize the retain count check
242 5) Prune old, unused code
244 * loader/icon/IconDatabase.cpp:
245 (WebCore::IconDatabase::imageDataForIconID): Removed unused code
246 (WebCore::IconDatabase::imageDataForIconURL): Removed unused code
247 (WebCore::IconDatabase::imageDataForPageURL): Removed unused code
248 (WebCore::IconDatabase::isIconExpiredForIconURL): Removed LOG msg
249 (WebCore::IconDatabase::isIconExpiredForPageURL): Removed LOG msg
250 (WebCore::IconDatabase::iconURLForPageURL): Added a hashmap cache to avoid common queries
251 (WebCore::IconDatabase::releaseIconForURL): Changed to is isRetained() instead of retainCount()
252 (WebCore::IconDatabase::isIconURLRetained): Added - we don't care about the actual retain count
253 for an icon so much as whether or not it is retained
254 (WebCore::IconDatabase::setIconURLForPageURL): If the new and old iconURLs are the same, skip the
256 * loader/icon/IconDatabase.h: Added new methods/variables
257 * loader/icon/SiteIcon.cpp:
258 (SiteIcon::SiteIcon): Added a flag so it only queries the database for icon data once
259 (SiteIcon::getImage): Ditto
261 2006-08-14 David Hyatt <hyatt@apple.com>
263 Fix for bug 10385, add more support for crappy pseudo-XML-in-HTML.
267 Added fast/parser/bad-xml-slash.html
269 * html/HTMLTokenizer.cpp:
270 (WebCore::HTMLTokenizer::parseTag):
272 2006-08-14 Darin Adler <darin@apple.com>
274 Reviewed by John Sullivan.
276 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10204
277 REGRESSION: title tag parsing problem breaks Travelocity and Google Analytics pages
279 Test: fast/parser/title-error-test.html
281 * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Fixed an error
282 handling case that was skipping until a </style> tag in code that was shared
283 between both <title> and <style>. Also rearranged the code a tiny bit.
285 2006-08-14 Darin Adler <darin@apple.com>
289 - fixed some storage leaks
290 (part of http://bugzilla.opendarwin.org/show_bug.cgi?id=10259)
292 * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start):
293 Rearrange code so that "delete this" is called any time the function returns
294 false -- ownership was inconsistent before.
296 * rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode):
297 Call deleteLineBoxWrapper even when documentBeingDestroyed() is true, because
298 some of what it does has to be done during destruction. A little awkward since
299 I preserved the order of operations. Perhaps we could structure this better later.
301 2006-08-14 David Harrison <harrison@apple.com>
303 Reviewed by John Sullivan and Geoff Garen.
305 <rdar://problem/3854950> AX Seed: Blackboard Learning Systems - frame names need to be put in AXDescription AXAttribute
307 Test cases added: None. Manual AX testing is way too awkward, and automated testing
308 is not possible. See following bug...
309 <rdar://problem/4256882> Need automated testing support for accessibility APIs
311 * bridge/mac/WebCoreAXObject.mm:
312 (-[WebCoreAXObject accessibilityDescription]):
313 For a web area, return the name of the owning frame or iframe.
315 (-[WebCoreAXObject accessibilityAttributeNames]):
316 Advertize NSAccessibilityDescriptionAttribute.
318 (-[WebCoreAXObject rendererForView:]):
319 Clean up some old naming.
322 2006-08-11 Anders Carlsson <acarlsson@apple.com>
326 http://bugzilla.opendarwin.org/show_bug.cgi?id=10353
327 XMLSerializer and DOMParser should have real implementations
329 Make real implementation files for DOMParser and XMLSerializer and wrap them
330 using our bindings generation.
332 * DerivedSources.make:
333 * WebCore.xcodeproj/project.pbxproj:
334 * bindings/js/JSDOMParser.cpp: Removed.
335 * bindings/js/JSDOMParser.h: Removed.
336 * bindings/js/JSXMLSerializer.cpp: Removed.
337 * bindings/js/JSXMLSerializer.h: Removed.
338 * bindings/js/kjs_window.cpp:
339 (KJS::Window::getValueProperty):
340 * bindings/js/kjs_window.h:
342 * page/DOMWindow.idl:
343 * xml/DOMParser.cpp: Added.
344 (WebCore::DOMParser::parseFromString):
345 * xml/DOMParser.h: Added.
346 * xml/DOMParser.idl: Added.
347 * xml/XMLSerializer.cpp: Added.
348 (WebCore::XMLSerializer::serializeToString):
349 * xml/XMLSerializer.h: Added.
350 * xml/XMLSerializer.idl: Added.
352 2006-08-14 Maciej Stachowiak <mjs@apple.com>
356 - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
358 * WebCore.exp: export new functions
359 * platform/mac/WebCoreSystemInterface.h: Added CFReadStream related functions
360 * platform/mac/WebCoreSystemInterface.mm: ditto
362 2006-08-13 Maks Orlovich <maksim@kde.org>
364 Reviewed (and tweaked a little) by Maciej.
366 - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
367 in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
369 The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.
371 * bindings/js/kjs_events.cpp:
372 (KJS::JSLazyEventListener::parseCode):
374 2006-08-12 Eric Seidel <eric@eseidel.com>
376 Reviewed by hyatt and mjs.
378 Fix two missing null checks causing layout test crashes.
380 * css/cssstyleselector.cpp:
381 (WebCore::CSSStyleSelector::adjustRenderStyle): check e for null (null for pseudo styles)
382 * kcanvas/RenderSVGContainer.cpp:
383 (WebCore::RenderSVGContainer::requiresLayer): check parent()->element() for null
386 2006-08-11 Eric Seidel <eric@eseidel.com>
388 Reviewed by andersca.
390 The outermost <svg> element needs to clip itself
391 http://bugzilla.opendarwin.org/show_bug.cgi?id=5358
393 * css/cssstyleselector.cpp:
394 (WebCore::CSSStyleSelector::adjustRenderStyle): adjust for SVG overflow rules
395 * kcanvas/RenderSVGContainer.cpp:
396 (WebCore::RenderSVGContainer::requiresLayer): only require layers for absolute/relative positioning of outermost SVG
397 (WebCore::RenderSVGContainer::paint):
398 * kcanvas/device/KRenderingDevice.h:
399 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: remove dead methods
400 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: remove dead methods
401 (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
402 * ksvg2/svg/SVGPaint.cpp: spacing changes
403 (WebCore::SVGPaint::SVGPaint): spacing cleanup
404 * ksvg2/svg/SVGSVGElement.cpp:
405 (WebCore::SVGSVGElement::parseMappedAttribute): spacing cleanup
406 * platform/GraphicsContext.h: Added concatCTM
407 * platform/cg/GraphicsContextCG.cpp:
408 (WebCore::GraphicsContext::concatCTM): Added.
410 2006-08-11 Brady Eidson <beidson@apple.com>
414 Renamed a method/parameter for clarity and consistency, as well as some style
415 cleanups and removing some ridiculously verbose log messages.
416 Also added an _isEmpty method to the database and bridge for WebKit's use.
417 Finally, added a central way for both WebKit and WebCore to get the icon database filename
419 * bridge/mac/WebCoreIconDatabaseBridge.h: Added _isEmpty and defaultDatabaseFilename
420 * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed an unnecessary semicolon off most of these methods
421 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
422 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
423 (-[WebCoreIconDatabaseBridge isOpen]):
424 (-[WebCoreIconDatabaseBridge _isEmpty]): Added
425 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
426 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
427 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
428 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
429 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
430 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
431 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
432 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
433 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
434 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
435 (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
436 (-[WebCoreIconDatabaseBridge defaultDatabaseFilename]): Added
438 * loader/icon/IconDatabase.cpp:
439 (WebCore::IconDatabase::defaultDatabaseFilename): Added
440 (WebCore::IconDatabase::open):
441 (WebCore::IconDatabase::isEmpty): Added
442 (WebCore::IconDatabase::retainIconForURL): Removed log message
443 (WebCore::IconDatabase::releaseIconForURL): Removed log message
444 * loader/icon/IconDatabase.h:
446 2006-08-11 David Hyatt <hyatt@apple.com>
448 Eliminate RenderImageButton.
452 * WebCore.xcodeproj/project.pbxproj:
453 * bridge/mac/WebCoreAXObject.mm:
454 (-[WebCoreAXObject isImageButton]):
455 * html/HTMLInputElement.cpp:
456 (WebCore::HTMLInputElement::createRenderer):
457 * rendering/RenderImage.h:
458 (WebCore::RenderImage::isImage):
460 2006-08-11 Adele Peterson <adele@apple.com>
464 - Fix for <rdar://problem/4656274>
465 REGRESSION: option elements are selected when added regardless of "selected" property
467 Test: fast/forms/option-constructor-selected.html
469 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setOption):
470 When adding an option element, check that the option element is selected before calling setSelectedIndex.
472 2006-08-11 David Hyatt <hyatt@apple.com>
474 Fix for bug 10349, make sure to call setChanged when an anchor changes
475 from not being a link to being a link (and vice versa).
477 Test is in fast/dynamic/link-href-change.html
481 * html/HTMLAnchorElement.cpp:
482 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
483 (WebCore::HTMLAnchorElement::parseMappedAttribute):
484 * html/HTMLAnchorElement.h:
485 * html/HTMLAreaElement.cpp:
486 (WebCore::HTMLAreaElement::parseMappedAttribute):
488 2006-08-09 Rob Buis <buis@kde.org>
492 Revert an over-optimization step that messed up the HashSet lookup.
494 * dom/DOMImplementation.cpp:
497 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
499 Rubber stamped by tim
501 Removed commented out code
503 * kcanvas/RenderSVGImage.cpp:
504 (WebCore::RenderSVGImage::paint):
506 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
510 Fixed regression in SVG image layout
513 * kcanvas/RenderSVGImage.cpp:
514 (WebCore::RenderSVGImage::paint):
516 2006-08-10 Anders Carlsson <acarlsson@apple.com>
518 Rubber-stamped by Maciej.
522 * DerivedSources.make:
523 * WebCore.vcproj/WebCore/WebCore.vcproj:
524 * WebCore.xcodeproj/project.pbxproj:
525 * xpath/XPathEvaluator.cpp: Removed.
526 * xpath/XPathEvaluator.h: Removed.
527 * xpath/XPathEvaluator.idl: Removed.
528 * xpath/XPathExpression.cpp: Removed.
529 * xpath/XPathExpression.h: Removed.
530 * xpath/XPathExpression.idl: Removed.
531 * xpath/XPathNSResolver.cpp: Removed.
532 * xpath/XPathNSResolver.h: Removed.
533 * xpath/XPathNSResolver.idl: Removed.
534 * xpath/XPathNamespace.cpp: Removed.
535 * xpath/XPathNamespace.h: Removed.
536 * xpath/XPathResult.cpp: Removed.
537 * xpath/XPathResult.h: Removed.
538 * xpath/XPathResult.idl: Removed.
539 * xpath/impl/XPathExpressionNode.cpp: Removed.
540 * xpath/impl/XPathExpressionNode.h: Removed.
541 * xpath/impl/XPathFunctions.cpp: Removed.
542 * xpath/impl/XPathFunctions.h: Removed.
543 * xpath/impl/XPathGrammar.y: Removed.
544 * xpath/impl/XPathParser.cpp: Removed.
545 * xpath/impl/XPathParser.h: Removed.
546 * xpath/impl/XPathPath.cpp: Removed.
547 * xpath/impl/XPathPath.h: Removed.
548 * xpath/impl/XPathPredicate.cpp: Removed.
549 * xpath/impl/XPathPredicate.h: Removed.
550 * xpath/impl/XPathStep.cpp: Removed.
551 * xpath/impl/XPathStep.h: Removed.
552 * xpath/impl/XPathUtil.cpp: Removed.
553 * xpath/impl/XPathUtil.h: Removed.
554 * xpath/impl/XPathValue.cpp: Removed.
555 * xpath/impl/XPathValue.h: Removed.
556 * xpath/impl/XPathVariableReference.cpp: Removed.
557 * xpath/impl/XPathVariableReference.h: Removed.
559 2006-08-10 David Harrison <harrison@apple.com>
561 Reviewed by John Sullivan.
563 <rdar://problem/4600112> REGRESSION: VO no longer able to review text within an edit field on web pages
565 Test cases added: None. Manual AX testing is way too awkward, and automated testing
566 is not possible. See following bug...
567 <rdar://problem/4256882> Need automated testing support for accessibility APIs
569 * bridge/mac/WebCoreAXObject.mm:
570 (-[WebCoreAXObject value]):
571 Add handling for text input fields.
573 2006-08-09 Graham Dennis <graham.dennis@gmail.com>
577 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10247
578 REGRESSION: Unable to build webkit without SVG/XPATH
580 * bindings/js/kjs_binding.cpp:
581 (KJS::setDOMException):
582 * bindings/js/kjs_dom.cpp:
584 * bindings/js/kjs_html.cpp:
585 (KJS::HTMLElementFunction::callAsFunction):
586 * bindings/js/kjs_proxy.cpp:
587 * bindings/js/kjs_proxy.h:
588 * bindings/objc/DOMInternal.h:
589 * bindings/objc/DOMInternal.mm:
591 * bindings/objc/DOMXPath.mm:
592 * bindings/objc/DOMXPathInternal.h:
593 * bindings/scripts/CodeGeneratorJS.pm:
594 * bridge/mac/WebCoreFrameBridge.mm:
595 (+[WebCoreFrameBridge supportedNonImageMIMETypes]):
597 * css/CSSStyleDeclaration.cpp:
598 (WebCore::propertyID):
600 (WebCore::CSSParser::parseValue):
602 * css/cssstyleselector.cpp:
603 (WebCore::CSSStyleSelector::loadDefaultStyle):
604 (WebCore::CSSStyleSelector::applyProperty):
605 * css/cssstyleselector.h:
607 (WebCore::Document::Document):
608 (WebCore::Document::~Document):
609 (WebCore::Document::createElementNS):
610 (WebCore::Document::implicitClose):
611 (WebCore::Document::recalcStyleSelector):
612 (WebCore::Document::createEvent):
616 (WebCore::Node::createRendererIfNeeded):
618 * dom/XMLTokenizer.cpp:
619 (WebCore::XMLTokenizer::endElementNs):
620 (WebCore::XMLTokenizer::insertErrorMessageBlock):
621 * html/HTMLEmbedElement.cpp:
622 * html/HTMLEmbedElement.h:
623 * html/HTMLObjectElement.cpp:
624 * html/HTMLObjectElement.h:
625 * kcanvas/KCanvasCreator.cpp:
626 * kcanvas/KCanvasCreator.h:
627 * kcanvas/KCanvasFilters.cpp:
628 * kcanvas/KCanvasFilters.h:
629 * kcanvas/KCanvasImage.h:
630 * kcanvas/KCanvasMatrix.cpp:
631 * kcanvas/KCanvasMatrix.h:
632 * kcanvas/KCanvasPath.cpp:
633 * kcanvas/KCanvasPath.h:
634 * kcanvas/KCanvasResourceListener.h:
635 * kcanvas/KCanvasResources.cpp:
636 * kcanvas/KCanvasResources.h:
637 * kcanvas/KCanvasTreeDebug.cpp:
638 * kcanvas/RenderForeignObject.cpp:
639 * kcanvas/RenderForeignObject.h:
640 * kcanvas/RenderPath.cpp:
641 * kcanvas/RenderPath.h:
642 * kcanvas/RenderSVGContainer.cpp:
643 * kcanvas/RenderSVGContainer.h:
644 * kcanvas/RenderSVGImage.cpp:
645 * kcanvas/RenderSVGImage.h:
646 * kcanvas/RenderSVGText.cpp:
647 * kcanvas/RenderSVGText.h:
648 * kcanvas/device/KRenderingDevice.cpp:
649 * kcanvas/device/KRenderingDevice.h:
650 * kcanvas/device/KRenderingFillPainter.cpp:
651 * kcanvas/device/KRenderingFillPainter.h:
652 * kcanvas/device/KRenderingPaintServer.h:
653 * kcanvas/device/KRenderingPaintServerGradient.cpp:
654 * kcanvas/device/KRenderingPaintServerGradient.h:
655 * kcanvas/device/KRenderingPaintServerPattern.cpp:
656 * kcanvas/device/KRenderingPaintServerPattern.h:
657 * kcanvas/device/KRenderingPaintServerSolid.cpp:
658 * kcanvas/device/KRenderingPaintServerSolid.h:
659 * kcanvas/device/KRenderingStrokePainter.cpp:
660 * kcanvas/device/KRenderingStrokePainter.h:
661 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
662 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
663 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
664 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
665 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
666 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
667 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
668 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
669 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
670 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
671 * kcanvas/device/quartz/QuartzSupport.h:
672 * kcanvas/device/quartz/QuartzSupport.mm:
673 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
674 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h:
675 * ksvg2/css/SVGCSSParser.cpp:
676 * ksvg2/css/SVGCSSStyleSelector.cpp:
677 * ksvg2/css/SVGRenderStyle.cpp:
678 * ksvg2/css/SVGRenderStyle.h:
679 * ksvg2/css/SVGRenderStyleDefs.cpp:
680 * ksvg2/css/SVGRenderStyleDefs.h:
681 * ksvg2/ecma/GlobalObject.cpp:
682 * ksvg2/ecma/GlobalObject.h:
683 * ksvg2/events/JSSVGLazyEventListener.cpp:
684 * ksvg2/events/JSSVGLazyEventListener.h:
685 * ksvg2/events/SVGZoomEvent.cpp:
686 * ksvg2/events/SVGZoomEvent.h:
688 * ksvg2/misc/KCanvasRenderingStyle.cpp:
689 * ksvg2/misc/KCanvasRenderingStyle.h:
690 * ksvg2/misc/KSVGTimeScheduler.cpp:
691 * ksvg2/misc/KSVGTimeScheduler.h:
692 * ksvg2/misc/SVGDocumentExtensions.cpp:
693 * ksvg2/misc/SVGDocumentExtensions.h:
694 * ksvg2/misc/SVGImageLoader.cpp:
695 * ksvg2/misc/SVGImageLoader.h:
696 * ksvg2/svg/DOMList.h:
697 * ksvg2/svg/SVGAElement.cpp:
698 * ksvg2/svg/SVGAElement.h:
699 * ksvg2/svg/SVGAngle.cpp:
700 * ksvg2/svg/SVGAngle.h:
701 * ksvg2/svg/SVGAnimateColorElement.cpp:
702 * ksvg2/svg/SVGAnimateColorElement.h:
703 * ksvg2/svg/SVGAnimateElement.cpp:
704 * ksvg2/svg/SVGAnimateElement.h:
705 * ksvg2/svg/SVGAnimateTransformElement.cpp:
706 * ksvg2/svg/SVGAnimateTransformElement.h:
707 * ksvg2/svg/SVGAnimatedAngle.cpp:
708 * ksvg2/svg/SVGAnimatedAngle.h:
709 * ksvg2/svg/SVGAnimatedBoolean.cpp:
710 * ksvg2/svg/SVGAnimatedBoolean.h:
711 * ksvg2/svg/SVGAnimatedColor.cpp:
712 * ksvg2/svg/SVGAnimatedColor.h:
713 * ksvg2/svg/SVGAnimatedEnumeration.cpp:
714 * ksvg2/svg/SVGAnimatedEnumeration.h:
715 * ksvg2/svg/SVGAnimatedInteger.cpp:
716 * ksvg2/svg/SVGAnimatedInteger.h:
717 * ksvg2/svg/SVGAnimatedLength.cpp:
718 * ksvg2/svg/SVGAnimatedLength.h:
719 * ksvg2/svg/SVGAnimatedLengthList.cpp:
720 * ksvg2/svg/SVGAnimatedLengthList.h:
721 * ksvg2/svg/SVGAnimatedNumber.cpp:
722 * ksvg2/svg/SVGAnimatedNumber.h:
723 * ksvg2/svg/SVGAnimatedNumberList.cpp:
724 * ksvg2/svg/SVGAnimatedNumberList.h:
725 * ksvg2/svg/SVGAnimatedPathData.cpp:
726 * ksvg2/svg/SVGAnimatedPathData.h:
727 * ksvg2/svg/SVGAnimatedPoints.cpp:
728 * ksvg2/svg/SVGAnimatedPoints.h:
729 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.cpp:
730 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
731 * ksvg2/svg/SVGAnimatedRect.cpp:
732 * ksvg2/svg/SVGAnimatedRect.h:
733 * ksvg2/svg/SVGAnimatedString.cpp:
734 * ksvg2/svg/SVGAnimatedString.h:
735 * ksvg2/svg/SVGAnimatedTemplate.h:
736 * ksvg2/svg/SVGAnimatedTransformList.cpp:
737 * ksvg2/svg/SVGAnimatedTransformList.h:
738 * ksvg2/svg/SVGAnimationElement.cpp:
739 * ksvg2/svg/SVGAnimationElement.h:
740 * ksvg2/svg/SVGCircleElement.cpp:
741 * ksvg2/svg/SVGCircleElement.h:
742 * ksvg2/svg/SVGClipPathElement.cpp:
743 * ksvg2/svg/SVGClipPathElement.h:
744 * ksvg2/svg/SVGColor.cpp:
745 * ksvg2/svg/SVGColor.h:
746 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
747 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
748 * ksvg2/svg/SVGCursorElement.cpp:
749 * ksvg2/svg/SVGCursorElement.h:
750 * ksvg2/svg/SVGDOMImplementation.cpp:
751 * ksvg2/svg/SVGDOMImplementation.h:
752 * ksvg2/svg/SVGDefsElement.cpp:
753 * ksvg2/svg/SVGDefsElement.h:
754 * ksvg2/svg/SVGDescElement.cpp:
755 * ksvg2/svg/SVGDescElement.h:
756 * ksvg2/svg/SVGDocument.cpp:
757 * ksvg2/svg/SVGDocument.h:
758 * ksvg2/svg/SVGElement.cpp:
759 * ksvg2/svg/SVGElement.h:
760 * ksvg2/svg/SVGElementInstance.cpp:
761 * ksvg2/svg/SVGElementInstance.h:
762 * ksvg2/svg/SVGElementInstanceList.cpp:
763 * ksvg2/svg/SVGElementInstanceList.h:
764 * ksvg2/svg/SVGEllipseElement.cpp:
765 * ksvg2/svg/SVGEllipseElement.h:
766 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
767 * ksvg2/svg/SVGExternalResourcesRequired.h:
768 * ksvg2/svg/SVGFEBlendElement.cpp:
769 * ksvg2/svg/SVGFEBlendElement.h:
770 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
771 * ksvg2/svg/SVGFEColorMatrixElement.h:
772 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
773 * ksvg2/svg/SVGFEComponentTransferElement.h:
774 * ksvg2/svg/SVGFECompositeElement.cpp:
775 * ksvg2/svg/SVGFECompositeElement.h:
776 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
777 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
778 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
779 * ksvg2/svg/SVGFEDisplacementMapElement.h:
780 * ksvg2/svg/SVGFEDistantLightElement.cpp:
781 * ksvg2/svg/SVGFEDistantLightElement.h:
782 * ksvg2/svg/SVGFEFloodElement.cpp:
783 * ksvg2/svg/SVGFEFloodElement.h:
784 * ksvg2/svg/SVGFEFuncAElement.cpp:
785 * ksvg2/svg/SVGFEFuncAElement.h:
786 * ksvg2/svg/SVGFEFuncBElement.cpp:
787 * ksvg2/svg/SVGFEFuncBElement.h:
788 * ksvg2/svg/SVGFEFuncGElement.cpp:
789 * ksvg2/svg/SVGFEFuncGElement.h:
790 * ksvg2/svg/SVGFEFuncRElement.cpp:
791 * ksvg2/svg/SVGFEFuncRElement.h:
792 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
793 * ksvg2/svg/SVGFEGaussianBlurElement.h:
794 * ksvg2/svg/SVGFEImageElement.cpp:
795 * ksvg2/svg/SVGFEImageElement.h:
796 * ksvg2/svg/SVGFELightElement.cpp:
797 * ksvg2/svg/SVGFELightElement.h:
798 * ksvg2/svg/SVGFEMergeElement.cpp:
799 * ksvg2/svg/SVGFEMergeElement.h:
800 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
801 * ksvg2/svg/SVGFEMergeNodeElement.h:
802 * ksvg2/svg/SVGFEOffsetElement.cpp:
803 * ksvg2/svg/SVGFEOffsetElement.h:
804 * ksvg2/svg/SVGFEPointLightElement.cpp:
805 * ksvg2/svg/SVGFEPointLightElement.h:
806 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
807 * ksvg2/svg/SVGFESpecularLightingElement.h:
808 * ksvg2/svg/SVGFESpotLightElement.cpp:
809 * ksvg2/svg/SVGFESpotLightElement.h:
810 * ksvg2/svg/SVGFETileElement.cpp:
811 * ksvg2/svg/SVGFETileElement.h:
812 * ksvg2/svg/SVGFETurbulenceElement.cpp:
813 * ksvg2/svg/SVGFETurbulenceElement.h:
814 * ksvg2/svg/SVGFilterElement.cpp:
815 * ksvg2/svg/SVGFilterElement.h:
816 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
817 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
818 * ksvg2/svg/SVGFitToViewBox.cpp:
819 * ksvg2/svg/SVGFitToViewBox.h:
820 * ksvg2/svg/SVGForeignObjectElement.cpp:
821 * ksvg2/svg/SVGForeignObjectElement.h:
822 * ksvg2/svg/SVGGElement.cpp:
823 * ksvg2/svg/SVGGElement.h:
824 * ksvg2/svg/SVGGradientElement.cpp:
825 * ksvg2/svg/SVGGradientElement.h:
826 * ksvg2/svg/SVGHelper.cpp:
827 * ksvg2/svg/SVGHelper.h:
828 * ksvg2/svg/SVGImageElement.cpp:
829 * ksvg2/svg/SVGImageElement.h:
830 * ksvg2/svg/SVGLangSpace.cpp:
831 * ksvg2/svg/SVGLangSpace.h:
832 * ksvg2/svg/SVGLength.cpp:
833 * ksvg2/svg/SVGLength.h:
834 * ksvg2/svg/SVGLengthList.cpp:
835 * ksvg2/svg/SVGLengthList.h:
836 * ksvg2/svg/SVGLineElement.cpp:
837 * ksvg2/svg/SVGLineElement.h:
838 * ksvg2/svg/SVGLinearGradientElement.cpp:
839 * ksvg2/svg/SVGLinearGradientElement.h:
840 * ksvg2/svg/SVGList.h:
841 * ksvg2/svg/SVGLocatable.cpp:
842 * ksvg2/svg/SVGLocatable.h:
843 * ksvg2/svg/SVGMarkerElement.cpp:
844 * ksvg2/svg/SVGMarkerElement.h:
845 * ksvg2/svg/SVGMaskElement.cpp:
846 * ksvg2/svg/SVGMaskElement.h:
847 * ksvg2/svg/SVGMatrix.cpp:
848 * ksvg2/svg/SVGMatrix.h:
849 * ksvg2/svg/SVGNumber.cpp:
850 * ksvg2/svg/SVGNumber.h:
851 * ksvg2/svg/SVGNumberList.cpp:
852 * ksvg2/svg/SVGNumberList.h:
853 * ksvg2/svg/SVGPaint.cpp:
854 * ksvg2/svg/SVGPaint.h:
855 * ksvg2/svg/SVGPathElement.cpp:
856 * ksvg2/svg/SVGPathElement.h:
857 * ksvg2/svg/SVGPathSeg.cpp:
858 * ksvg2/svg/SVGPathSeg.h:
859 * ksvg2/svg/SVGPathSegArc.cpp:
860 * ksvg2/svg/SVGPathSegArc.h:
861 * ksvg2/svg/SVGPathSegClosePath.cpp:
862 * ksvg2/svg/SVGPathSegClosePath.h:
863 * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
864 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
865 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
866 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
867 * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
868 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
869 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
870 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
871 * ksvg2/svg/SVGPathSegLineto.cpp:
872 * ksvg2/svg/SVGPathSegLineto.h:
873 * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
874 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
875 * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
876 * ksvg2/svg/SVGPathSegLinetoVertical.h:
877 * ksvg2/svg/SVGPathSegList.cpp:
878 * ksvg2/svg/SVGPathSegList.h:
879 * ksvg2/svg/SVGPathSegMoveto.cpp:
880 * ksvg2/svg/SVGPathSegMoveto.h:
881 * ksvg2/svg/SVGPatternElement.cpp:
882 * ksvg2/svg/SVGPatternElement.h:
883 * ksvg2/svg/SVGPoint.cpp:
884 * ksvg2/svg/SVGPoint.h:
885 * ksvg2/svg/SVGPointList.cpp:
886 * ksvg2/svg/SVGPointList.h:
887 * ksvg2/svg/SVGPolyElement.cpp:
888 * ksvg2/svg/SVGPolyElement.h:
889 * ksvg2/svg/SVGPolygonElement.cpp:
890 * ksvg2/svg/SVGPolygonElement.h:
891 * ksvg2/svg/SVGPolylineElement.cpp:
892 * ksvg2/svg/SVGPolylineElement.h:
893 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
894 * ksvg2/svg/SVGPreserveAspectRatio.h:
895 * ksvg2/svg/SVGRadialGradientElement.cpp:
896 * ksvg2/svg/SVGRadialGradientElement.h:
897 * ksvg2/svg/SVGRect.cpp:
898 * ksvg2/svg/SVGRect.h:
899 * ksvg2/svg/SVGRectElement.cpp:
900 * ksvg2/svg/SVGRectElement.h:
901 * ksvg2/svg/SVGSVGElement.cpp:
902 * ksvg2/svg/SVGSVGElement.h:
903 * ksvg2/svg/SVGScriptElement.cpp:
904 * ksvg2/svg/SVGScriptElement.h:
905 * ksvg2/svg/SVGSetElement.cpp:
906 * ksvg2/svg/SVGSetElement.h:
907 * ksvg2/svg/SVGStopElement.cpp:
908 * ksvg2/svg/SVGStopElement.h:
909 * ksvg2/svg/SVGStringList.cpp:
910 * ksvg2/svg/SVGStringList.h:
911 * ksvg2/svg/SVGStylable.cpp:
912 * ksvg2/svg/SVGStylable.h:
913 * ksvg2/svg/SVGStyleElement.cpp:
914 * ksvg2/svg/SVGStyleElement.h:
915 * ksvg2/svg/SVGStyledElement.cpp:
916 * ksvg2/svg/SVGStyledElement.h:
917 * ksvg2/svg/SVGStyledLocatableElement.cpp:
918 * ksvg2/svg/SVGStyledLocatableElement.h:
919 * ksvg2/svg/SVGStyledTransformableElement.cpp:
920 * ksvg2/svg/SVGStyledTransformableElement.h:
921 * ksvg2/svg/SVGSwitchElement.cpp:
922 * ksvg2/svg/SVGSwitchElement.h:
923 * ksvg2/svg/SVGSymbolElement.cpp:
924 * ksvg2/svg/SVGSymbolElement.h:
925 * ksvg2/svg/SVGTRefElement.cpp:
926 * ksvg2/svg/SVGTRefElement.h:
927 * ksvg2/svg/SVGTSpanElement.cpp:
928 * ksvg2/svg/SVGTSpanElement.h:
929 * ksvg2/svg/SVGTests.cpp:
930 * ksvg2/svg/SVGTests.h:
931 * ksvg2/svg/SVGTextContentElement.cpp:
932 * ksvg2/svg/SVGTextContentElement.h:
933 * ksvg2/svg/SVGTextElement.cpp:
934 * ksvg2/svg/SVGTextElement.h:
935 * ksvg2/svg/SVGTextPositioningElement.cpp:
936 * ksvg2/svg/SVGTextPositioningElement.h:
937 * ksvg2/svg/SVGTitleElement.cpp:
938 * ksvg2/svg/SVGTitleElement.h:
939 * ksvg2/svg/SVGTransform.cpp:
940 * ksvg2/svg/SVGTransform.h:
941 * ksvg2/svg/SVGTransformList.cpp:
942 * ksvg2/svg/SVGTransformList.h:
943 * ksvg2/svg/SVGTransformable.cpp:
944 * ksvg2/svg/SVGTransformable.h:
945 * ksvg2/svg/SVGURIReference.cpp:
946 * ksvg2/svg/SVGURIReference.h:
947 * ksvg2/svg/SVGUseElement.cpp:
948 * ksvg2/svg/SVGUseElement.h:
949 * ksvg2/svg/SVGViewElement.cpp:
950 * ksvg2/svg/SVGViewElement.h:
951 * ksvg2/svg/SVGZoomAndPan.cpp:
952 * ksvg2/svg/SVGZoomAndPan.h:
953 * ksvg2/svg/svgpathparser.cpp:
954 * ksvg2/svg/svgpathparser.h:
955 * page/DOMWindow.idl:
957 (WebCore::Frame::Frame):
958 (WebCore::Frame::begin):
959 (WebCore::Frame::pauseTimeouts):
960 (WebCore::Frame::resumeTimeouts):
961 * platform/GraphicsContext.h:
962 * platform/cg/GraphicsContextCG.cpp:
963 * rendering/RenderLayer.cpp:
964 (WebCore::RenderLayer::isTransparent):
965 * rendering/RenderObject.cpp:
966 (WebCore::RenderObject::containingBlock):
967 * rendering/RenderObject.h:
968 * rendering/RenderStyle.cpp:
969 (WebCore::RenderStyle::RenderStyle):
970 (WebCore::RenderStyle::inheritFrom):
971 (WebCore::RenderStyle::operator==):
972 (WebCore::RenderStyle::inheritedNotEqual):
973 (WebCore::RenderStyle::diff):
974 * rendering/RenderStyle.h:
975 * rendering/RenderTreeAsText.cpp:
977 (WebCore::externalRepresentation):
978 * xpath/XPathEvaluator.cpp:
979 * xpath/XPathEvaluator.h:
980 * xpath/XPathExpression.cpp:
981 * xpath/XPathExpression.h:
982 * xpath/XPathNSResolver.cpp:
983 * xpath/XPathNSResolver.h:
984 * xpath/XPathNamespace.cpp:
985 * xpath/XPathNamespace.h:
986 * xpath/XPathResult.cpp:
987 * xpath/XPathResult.h:
988 * xpath/impl/XPathExpressionNode.cpp:
989 * xpath/impl/XPathExpressionNode.h:
990 * xpath/impl/XPathFunctions.cpp:
991 * xpath/impl/XPathFunctions.h:
992 * xpath/impl/XPathGrammar.y:
993 * xpath/impl/XPathParser.cpp:
994 * xpath/impl/XPathParser.h:
995 * xpath/impl/XPathPath.cpp:
996 * xpath/impl/XPathPath.h:
997 * xpath/impl/XPathPredicate.cpp:
998 * xpath/impl/XPathPredicate.h:
999 * xpath/impl/XPathStep.cpp:
1000 * xpath/impl/XPathStep.h:
1001 * xpath/impl/XPathUtil.cpp:
1002 * xpath/impl/XPathUtil.h:
1003 * xpath/impl/XPathValue.cpp:
1004 * xpath/impl/XPathValue.h:
1005 * xpath/impl/XPathVariableReference.cpp:
1006 * xpath/impl/XPathVariableReference.h:
1008 Change all #if SVG_SUPPORT to #ifdef SVG_SUPPORT and
1009 #if XPATH_SUPPORT to #ifdef XPATH_SUPPORT
1010 (except for one #if !SVG_SUPPORT to a #ifndef SVG_SUPPORT
1011 in RenderTreeAsText.cpp)
1013 2006-08-08 Rob Buis <buis@kde.org>
1017 http://bugzilla.opendarwin.org/show_bug.cgi?id=10230
1018 SVGDOMImplementation should die (and be rolled into DOMImplementation)
1020 Delete SVGDOMImplementation and references to it. The
1021 svg specific functionality is now in DOMImplementation.
1023 * WebCore.xcodeproj/project.pbxproj:
1024 * dom/DOMImplementation.cpp:
1025 (WebCore::svgFeatureSet):
1026 (WebCore::DOMImplementation::hasFeature):
1027 (WebCore::DOMImplementation::createDocument):
1028 (WebCore::DOMImplementation::createSVGDocument):
1029 * dom/DOMImplementation.h:
1030 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Removed.
1031 * ksvg2/misc/KSVGTimeScheduler.cpp:
1032 * ksvg2/svg/SVGColor.cpp:
1033 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1034 * ksvg2/svg/SVGDocument.cpp:
1035 (WebCore::SVGDocument::SVGDocument):
1036 * ksvg2/svg/SVGDocument.h:
1037 * ksvg2/svg/SVGElement.cpp:
1038 (WebCore::SVGElement::isSupported):
1039 * ksvg2/svg/SVGFEBlendElement.cpp:
1040 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1041 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1042 * ksvg2/svg/SVGFECompositeElement.cpp:
1043 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1044 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1045 * ksvg2/svg/SVGFEFloodElement.cpp:
1046 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1047 * ksvg2/svg/SVGFELightElement.cpp:
1048 * ksvg2/svg/SVGFEMergeElement.cpp:
1049 * ksvg2/svg/SVGFEOffsetElement.cpp:
1050 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1051 * ksvg2/svg/SVGFETileElement.cpp:
1052 * ksvg2/svg/SVGFETurbulenceElement.cpp:
1053 * ksvg2/svg/SVGGradientElement.cpp:
1054 * ksvg2/svg/SVGPatternElement.cpp:
1055 * ksvg2/svg/SVGPolyElement.cpp:
1056 * ksvg2/svg/SVGStopElement.cpp:
1057 * ksvg2/svg/SVGStyledElement.cpp:
1058 * ksvg2/svg/SVGStyledTransformableElement.cpp:
1059 * ksvg2/svg/SVGTests.cpp:
1060 (WebCore::SVGTests::isValid):
1061 * ksvg2/svg/SVGTransformable.cpp:
1063 (WebCore::Frame::begin):
1065 2006-08-07 Brady Eidson <beidson@apple.com>
1067 Reviewed by Anders and John
1069 Icons can now refresh when new data is sent from WebKit, both on disk and in memory
1071 * bridge/mac/WebCoreIconDatabaseBridge.h:
1072 * bridge/mac/WebCoreIconDatabaseBridge.mm:
1073 (WebCore::IconDatabase::loadIconFromURL): Allows WebCore/Kit to kick off a load
1074 outside of any greater context
1075 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
1076 (-[WebCoreIconDatabaseBridge isIconExpiredForPageURL:]): Allows WebKit
1077 to get whether or not an icon has expired
1079 * loader/icon/IconDatabase.cpp:
1080 (WebCore::IconDatabase::recreateDatabase): Changed database schema slightly
1081 (WebCore::IconDatabase::createPrivateTables): Changed database schema slightly
1082 (WebCore::IconDatabase::iconForPageURL):
1083 (WebCore::IconDatabase::isIconExpiredForIconURL): Get if an icon has expired
1084 (WebCore::IconDatabase::isIconExpiredForPageURL): Get if an icon has expired
1085 (WebCore::IconDatabase::setIconDataForIconURL): Force a refresh of the in memory
1086 image when new icon data is loaded
1087 (WebCore::IconDatabase::setIconURLForPageURL): added a check for null iconID
1089 * loader/icon/IconDatabase.h: added/changed some methods
1090 * loader/icon/SiteIcon.cpp:
1091 (SiteIcon::getImage): simplified/removed debugging code
1092 (SiteIcon::manuallySetImageData): allow the image data to be changed when new icon
1095 2006-08-05 Darin Adler <darin@apple.com>
1097 Reviewed by Eric Seidel.
1099 - fix a storage leak
1101 * rendering/RenderView.cpp: (WebCore::RenderView::setSelection):
1102 Delete the values if we are going to exit without using the maps.
1103 Otherwise all the values leak.
1105 2006-08-05 Darin Adler <darin@apple.com>
1109 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10213
1110 REGRESSION: Crash in WebCore::RenderLayer::isTransparent involving <iframe> and <select>
1112 Test: fast/frames/iframe-option-crash.xhtml
1114 * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations):
1115 Check for a nil renderer.
1117 2006-08-04 David Hyatt <hyatt@apple.com>
1119 Fix for Radar bug #4644045, regression where dragging selection no longer
1120 works for floats contained inside layers. I added an optimization to
1121 refine dirty rect checking for layers, and it incorrectly excluded floats
1122 from the paint bounds since PaintPhaseSelection was not considered when
1123 analyzing the floatRect().
1127 * rendering/RenderBlock.cpp:
1128 (WebCore::RenderBlock::paint):
1130 2006-08-04 David Hyatt <hyatt@apple.com>
1132 Fix remove() so that it is equivalent to calling removeChild on the
1133 parent. This involved moving three operations that remove did.
1135 (1) Move the accessibility object cache removal into the destroy methods,
1136 since this really should just happen when a render object is going away.
1138 (2) removeFromObjectLists shifted into removeChild, which means it will
1139 now be called more often (this is a correct change). Note that there is
1140 also now a new guard on removeFromObjectLists so that it won't do any
1141 work unless the document is not being destroyed.
1143 (3) The big one. deleteLineBoxWrapper was not getting called to clean up
1144 the line box tree. This moved right into RenderContainer's removeChildNode so
1145 that it is now done even in the lowest level RenderContainer removal primitive.
1149 * rendering/RenderContainer.cpp:
1150 (WebCore::RenderContainer::removeChildNode):
1151 (WebCore::RenderContainer::removeChild):
1152 * rendering/RenderObject.cpp:
1153 (WebCore::RenderObject::removeFromObjectLists):
1154 (WebCore::RenderObject::destroy):
1155 * rendering/RenderObject.h:
1156 (WebCore::RenderObject::remove):
1157 * rendering/RenderWidget.cpp:
1158 (WebCore::RenderWidget::destroy):
1160 2006-08-04 David Hyatt <hyatt@apple.com>
1162 Back out the fix for list marker crashes. The actual bug here is that
1163 there is a confusing mismatch between remove() and removeChild() in the
1164 render tree. remove() does a little bit of extra work that removeChild
1165 should be doing instead (so that remove() can just be a shorthand for
1168 This conservative fix does not solve the remove/removeChild mismatch
1169 but instead just changes the list marker updating code to use remove
1174 Test Case: fast/lists/dynamic-marker-crash.html
1176 * rendering/ListMarkerBox.cpp:
1177 * rendering/ListMarkerBox.h:
1178 * rendering/RenderListItem.cpp:
1179 (WebCore::RenderListItem::updateMarkerLocation):
1181 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
1185 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
1186 Make WebCore (and friends) compile with -Wshorten-64-to-32
1188 * Adds -Wshorten-64-to-32 flag to Xcode project.
1189 * Adds 'f' to float literals where expecting a float.
1190 * Use cosf() instead of cos() when assigning to a float.
1192 * WebCore.xcodeproj/project.pbxproj:
1193 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m:
1194 (+[WKDiffuseLightingFilter initialize]):
1195 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m:
1196 (-[WKDiscreteTransferFilter outputImage]):
1197 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m:
1198 (+[WKDisplacementMapFilter initialize]):
1199 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m:
1200 (+[WKSpecularLightingFilter initialize]):
1201 * kcanvas/device/quartz/filters/WKSpotLightFilter.m:
1202 (-[WKSpotLightFilter outputImage]):
1203 * kcanvas/device/quartz/filters/WKTableTransferFilter.m:
1204 (-[WKTableTransferFilter outputImage]):
1206 2006-08-03 David Hyatt <hyatt@apple.com>
1208 Fix for bug 10229, don't bother trying to clear when no floats are
1209 present. I suspect there's still a bug in the math that follows, but
1210 this fix is safer in that it just does the obvious thing (and doesn't
1211 compute any clearance if no floats are even around).
1216 * rendering/RenderBlock.cpp:
1217 (WebCore::RenderBlock::getClearDelta):
1219 2006-08-03 Justin Garcia <justin.garcia@apple.com>
1221 Reviewed by harrison
1223 <rdar://problem/4641033/4515463/4052426/4046570/4053718/4053724/4060115/4062858>
1224 Copy/Paste fidelity was bad.
1226 * editing/ApplyStyleCommand.cpp:
1227 (WebCore::ApplyStyleCommand::applyInlineStyle):
1228 * editing/markup.cpp:
1229 (WebCore::startMarkup): We were not adding non-inheritable styles
1230 to the markup for an element unless they were in the elements inline
1233 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
1237 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
1238 Make WebCore compile with -Wundef
1240 * Adds -Wundef flag to Xcode project
1241 * Converts #ifs to #ifdef and #ifndefs where needed.
1242 * Replaces #ifdef WIN32 with #if PLATFORM(WIN_OS) or PLATFORM(WIN)
1243 (and in one instance in config.h with #if !COMPILER(MSVC))
1244 * Added #define YYMAXDEPTH 10000 in XPathGrammar.y and CSSGrammar.y
1245 to fix a warning from within Bison.
1246 * Cleaned up style a little in surrounding code.
1248 * WebCore.xcodeproj/project.pbxproj:
1249 * bridge/mac/WebCoreAXObject.mm:
1250 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
1253 * css/MediaFeatureNames.cpp:
1254 * css/MediaFeatureNames.h:
1255 * css/cssparser.cpp:
1256 * dom/ContainerNode.cpp:
1257 (WebCore::ContainerNode::setActive):
1259 (WebCore::Element::attach):
1261 * dom/EventNames.cpp:
1263 * dom/NamedAttrMap.h:
1265 * dom/QualifiedName.cpp:
1266 * dom/QualifiedName.h:
1268 * dom/XMLTokenizer.cpp:
1269 (WebCore::XMLTokenizer::error):
1270 * html/HTMLTokenizer.cpp:
1271 (WebCore::HTMLTokenizer::scriptHandler):
1272 (WebCore::HTMLTokenizer::scriptExecution):
1273 (WebCore::HTMLTokenizer::parseTag):
1274 (WebCore::HTMLTokenizer::continueProcessing):
1275 (WebCore::HTMLTokenizer::write):
1276 (WebCore::HTMLTokenizer::timerFired):
1277 (WebCore::HTMLTokenizer::notifyFinished):
1278 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
1279 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1280 * ksvg2/css/SVGRenderStyle.h:
1281 * ksvg2/css/SVGRenderStyleDefs.h:
1282 * ksvg2/scripts/make_names.pl:
1283 * loader/CachedResource.h:
1284 * loader/LoaderFunctions.h:
1287 * page/FrameTree.cpp:
1288 * page/FrameView.cpp:
1289 (WebCore::FrameView::clear):
1290 (WebCore::FrameView::layout):
1291 (WebCore::FrameView::layoutTimerFired):
1292 (WebCore::FrameView::scheduleRelayout):
1293 (WebCore::FrameView::unscheduleRelayout):
1294 * platform/AtomicString.cpp:
1295 * platform/AtomicString.h:
1296 * platform/Cursor.h:
1297 * platform/DeprecatedArray.h:
1298 * platform/DeprecatedString.cpp:
1299 (WebCore::allocateHandle):
1300 (WebCore::initializeHandleNodeBlock):
1301 (WebCore::freeHandle):
1302 * platform/FloatPoint.h:
1303 * platform/FloatRect.h:
1304 * platform/FloatSize.h:
1305 * platform/GraphicsContext.h:
1307 * platform/IntPoint.h:
1308 * platform/IntRect.h:
1309 (WebCore::IntRect::inflateX):
1310 (WebCore::IntRect::inflateY):
1311 * platform/IntSize.h:
1312 * platform/PlatformKeyboardEvent.h:
1313 * platform/PlatformMouseEvent.h:
1314 * platform/PlatformString.h:
1315 * platform/ResourceLoader.h:
1316 * platform/ResourceLoaderInternal.h:
1317 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1318 * platform/ScrollView.h:
1319 * platform/StaticConstructors.h:
1320 * platform/StreamingTextDecoderICU.cpp:
1321 (WebCore::StreamingTextDecoderICU::convert):
1322 * platform/StringImpl.h:
1323 * platform/Widget.h:
1324 * platform/mac/BlockExceptions.mm:
1325 * platform/mac/ColorMac.mm:
1326 (+[WebCoreControlTintObserver WebCore]):
1327 * platform/mac/FloatPointMac.mm:
1328 * platform/mac/FloatRectMac.mm:
1329 * platform/mac/FloatSizeMac.mm:
1330 * platform/mac/FontMac.mm:
1331 * platform/mac/GraphicsContextMac.mm:
1332 (WebCore::GraphicsContext::drawFocusRing):
1333 * platform/mac/IntPointMac.mm:
1334 * platform/mac/IntRectMac.mm:
1335 * platform/mac/IntSizeMac.mm:
1336 * platform/mac/WebCoreSystemInterface.h:
1337 * rendering/RenderBlock.h:
1338 * rendering/RenderTableCell.h:
1339 * rendering/bidi.cpp:
1340 (WebCore::appendRun):
1341 (WebCore::RenderBlock::layoutInlineChildren):
1342 * xml/XSLTProcessor.cpp:
1343 (WebCore::parseErrorFunc):
1344 * xpath/impl/XPathGrammar.y:
1346 2006-08-03 Adam Roben <aroben@apple.com>
1348 Reviewed by Maciej and Beth.
1350 Fix use-after-dispose heap corruption bug.
1352 * rendering/ListMarkerBox.cpp:
1353 (WebCore::ListMarkerBox::destroy): Only call removeChild if we're not
1354 destroying the document
1356 2006-08-03 Adam Roben <aroben@apple.com>
1360 - Fixed Windows build.
1362 * platform/Color.cpp:
1363 (WebCore::makeRGBAFromHSLA): Whitespace change
1364 * platform/win/TemporaryLinkStubs.cpp: Add new method stubs
1365 (PlatformScrollBar::PlatformScrollBar):
1366 (PlatformScrollBar::~PlatformScrollBar):
1367 (PlatformScrollBar::width):
1368 (PlatformScrollBar::height):
1369 (PlatformScrollBar::setEnabled):
1370 (PlatformScrollBar::paint):
1371 (PlatformScrollBar::setScrollBarValue):
1372 (PlatformScrollBar::setKnobProportion):
1373 (PlatformScrollBar::setRect):
1374 (ScrollBar::ScrollBar):
1375 (ScrollBar::scroll):
1376 (ScrollBar::setValue):
1378 2006-08-02 Justin Garcia <justin.garcia@apple.com>
1382 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10225>
1383 GMail Editor: Change Hilite Color doesn't work
1385 * editing/JSEditor.cpp: Added support for execCommand("HiliteColor", ...).
1386 It's what GMail uses to implement text hiliting. It's just a synonym for BackColor.
1387 * editing/SelectionController.cpp:
1388 (WebCore::SelectionController::nodeWillBeRemoved): Moved a comment
1389 a more appropriate place.
1391 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
1393 Reviewed by Adele and Darin.
1395 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10177
1396 REGRESSION: Successfully dragging text into a disabled field
1398 Test: fast/forms/textfield-drag-into-disabled.html
1400 * rendering/RenderTextControl.cpp:
1401 (WebCore::RenderTextControl::createDivStyle): Changed to set -webkit-user-modify
1402 to read-only on the inner div if the control is disabled.
1403 (WebCore::RenderTextControl::updateFromElement): Ditto.
1405 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
1409 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10198
1410 REGRESSION: WebKit r15750 crashes while loading anthem.com
1412 Test: fast/overflow/generated-content-crash.html
1414 * rendering/RenderLayer.cpp:
1415 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Added a null check for
1416 the renderer's element. Generated content does not have an element and
1417 therefore does not need to maintain overflow status.
1419 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
1423 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10202
1424 REGRESSION: Repro crash when loading an empty image document
1426 Test: fast/tokenizer/image-empty-crash.html
1428 * loader/ImageDocument.cpp:
1429 (WebCore::ImageTokenizer::stopParsing): Added null check for m_imageElement.
1430 (WebCore::ImageTokenizer::finish): Ditto.
1432 2006-08-03 Darin Adler <darin@apple.com>
1436 - clean up "flip"-related code a tiny bit
1438 * platform/Screen.h: Removed redundant parameter names.
1439 * platform/mac/ScreenMac.mm:
1440 (WebCore::flipScreenRect): Changed to call flipScreenPoint so we only have one
1441 copy of the flipping code.
1442 (WebCore::flipScreenPoint): Fixed indentation.
1444 * bridge/mac/WebCoreFrameBridge.mm: (globalPoint): Removed type casts and
1447 * platform/mac/PlatformMouseEventMac.mm: (WebCore::globalPositionForEvent):
1448 * platform/mac/WheelEventMac.mm: (WebCore::globalPositionForEvent):
1449 Removed unneeded local variable.
1451 2006-08-02 David Hyatt <hyatt@apple.com>
1453 Abstract RenderLayer scrollbar creation and destruction so that there
1454 is a clean spot in which to drop in engine scrollbar stuff.
1458 * platform/ScrollBar.h:
1459 (WebCore::ScrollBar::hasPlatformScrollBars):
1460 * rendering/RenderLayer.cpp:
1461 (WebCore::RenderLayer::createScrollbar):
1462 (WebCore::RenderLayer::destroyScrollbar):
1463 (WebCore::RenderLayer::setHasHorizontalScrollbar):
1464 (WebCore::RenderLayer::setHasVerticalScrollbar):
1465 * rendering/RenderLayer.h:
1467 2006-08-02 Mitz Pettel <opendarwin.org@mitzpettel.com>
1471 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3438
1472 incorrect display of transparent 1x1 PNGs
1474 Test: fast/replaced/image-solid-color-with-alpha.html
1476 * platform/mac/ImageMac.mm:
1477 (WebCore::Image::checkForSolidColor): Changed to divide each color component
1478 by the alpha component. You need to do that since the bitmap context has
1479 premultiplied alpha but m_solidColor should be non-premultiplied.
1481 2006-08-02 Adam Roben <aroben@apple.com>
1485 - Remove redundant #include
1487 * loader/loader.cpp:
1489 2006-07-31 Sam Weinig <sam.weinig@gmail.com>
1493 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=9955
1494 Colors scaled from [0, 1] range to [0, 255] incorrectly
1496 Fixes scaling issue and fixes Color to follow style guidelines.
1498 * css/cssstyleselector.cpp:
1499 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
1500 * platform/Color.cpp:
1502 (WebCore::makeRGBAFromHSLA):
1503 (WebCore::Color::Color):
1504 (WebCore::Color::name):
1505 (WebCore::Color::setNamedColor):
1506 (WebCore::Color::light):
1507 (WebCore::Color::dark):
1510 (WebCore::Color::Color):
1511 (WebCore::Color::isValid):
1512 (WebCore::Color::red):
1513 (WebCore::Color::green):
1514 (WebCore::Color::blue):
1515 (WebCore::Color::alpha):
1516 (WebCore::Color::rgb):
1517 (WebCore::Color::setRGB):
1518 (WebCore::operator==):
1519 (WebCore::operator!=):
1520 * rendering/RenderObject.cpp:
1521 (WebCore::RenderObject::drawBorder):
1523 2006-07-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
1525 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10158
1526 REGRESSION: Selection highlight is dark and opaque when solid-color images are used
1530 Pixel test: fast/backgrounds/solid-color-context-restore.html
1532 * platform/mac/ImageMac.mm:
1533 (WebCore::Image::draw): Added calls to preserve the graphics context
1534 around the painting of a solid color image.
1535 (WebCore::Image::drawTiled): Ditto.
1537 2006-07-31 Maciej Stachowiak <mjs@apple.com>
1539 Rubber-stamped by Tim Hatcher.
1541 - renamed TransferJob to ResourceLoader
1543 * Projects/gdk/webcore-gdk.bkl:
1544 * WebCore.vcproj/WebCore/WebCore.vcproj:
1545 * WebCore.xcodeproj/project.pbxproj:
1546 * WebCoreSources.bkl:
1547 * bridge/mac/FrameMac.mm:
1548 * bridge/mac/WebCoreResourceLoaderImp.h:
1549 * bridge/mac/WebCoreResourceLoaderImp.mm:
1550 (-[WebCoreResourceLoaderImp redirectedToURL:]):
1551 (-[WebCoreResourceLoaderImp addData:]):
1552 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
1553 * bridge/win/FrameWin.cpp:
1554 * dom/XMLTokenizer.cpp:
1555 (WebCore::openFunc):
1557 * loader/LoaderFunctions.h:
1558 * loader/loader.cpp:
1559 (WebCore::Loader::servePendingRequests):
1560 (WebCore::Loader::receivedAllData):
1561 (WebCore::Loader::receivedResponse):
1562 (WebCore::Loader::receivedData):
1563 (WebCore::Loader::cancelRequests):
1564 (WebCore::Loader::jobForRequest):
1566 * loader/mac/LoaderFunctionsMac.mm:
1567 (WebCore::ServeSynchronousRequest):
1568 * platform/ResourceLoader.cpp: Added.
1569 (WebCore::ResourceLoader::ResourceLoader):
1570 (WebCore::ResourceLoader::isErrorPage):
1571 (WebCore::ResourceLoader::error):
1572 (WebCore::ResourceLoader::setError):
1573 (WebCore::ResourceLoader::queryMetaData):
1574 (WebCore::ResourceLoader::addMetaData):
1575 (WebCore::ResourceLoader::kill):
1576 (WebCore::ResourceLoader::url):
1577 (WebCore::ResourceLoader::postData):
1578 (WebCore::ResourceLoader::method):
1579 (WebCore::ResourceLoader::client):
1580 * platform/ResourceLoader.h: Added.
1581 (WebCore::ResourceLoader::getInternal):
1582 * platform/ResourceLoaderClient.h: Added.
1583 (WebCore::ResourceLoaderClient::~ResourceLoaderClient):
1584 (WebCore::ResourceLoaderClient::receivedRedirect):
1585 (WebCore::ResourceLoaderClient::receivedResponse):
1586 (WebCore::ResourceLoaderClient::receivedData):
1587 (WebCore::ResourceLoaderClient::receivedAllData):
1588 * platform/ResourceLoaderInternal.h: Added.
1589 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1590 * platform/TransferJob.cpp: Removed.
1591 * platform/TransferJob.h: Removed.
1592 * platform/TransferJobClient.h: Removed.
1593 * platform/TransferJobInternal.h: Removed.
1594 * platform/gdk/FrameGdk.cpp:
1595 (WebCore::FrameGdk::openURL):
1596 (WebCore::FrameGdk::urlSelected):
1597 (WebCore::FrameGdk::receivedData):
1598 (WebCore::FrameGdk::receivedAllData):
1599 * platform/gdk/FrameGdk.h:
1600 * platform/gdk/ResourceLoaderCurl.cpp: Added.
1601 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
1602 (WebCore::ResourceLoader::~ResourceLoader):
1603 (WebCore::ResourceLoader::start):
1604 (WebCore::ResourceLoader::cancel):
1605 * platform/gdk/ResourceLoaderManager.cpp: Added.
1606 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
1607 (WebCore::ResourceLoaderManager::get):
1608 (WebCore::ResourceLoaderManager::useSimpleTransfer):
1609 (WebCore::writeCallback):
1610 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1611 (WebCore::ResourceLoaderManager::remove):
1612 (WebCore::ResourceLoaderManager::add):
1613 (WebCore::ResourceLoaderManager::cancel):
1614 * platform/gdk/ResourceLoaderManager.h: Added.
1615 * platform/gdk/TemporaryLinkStubs.cpp:
1616 (WebCore::ServeSynchronousRequest):
1617 (WebCore::ResourceLoader::assembleResponseHeaders):
1618 (WebCore::ResourceLoader::retrieveCharset):
1619 * platform/gdk/TransferJobCurl.cpp: Removed.
1620 * platform/gdk/TransferJobManager.cpp: Removed.
1621 * platform/gdk/TransferJobManager.h: Removed.
1622 * platform/mac/ResourceLoaderMac.mm: Added.
1623 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
1624 (WebCore::ResourceLoader::~ResourceLoader):
1625 (WebCore::ResourceLoader::start):
1626 (WebCore::ResourceLoader::assembleResponseHeaders):
1627 (WebCore::ResourceLoader::retrieveCharset):
1628 (WebCore::ResourceLoader::setLoader):
1629 (WebCore::ResourceLoader::receivedResponse):
1630 (WebCore::ResourceLoader::cancel):
1631 * platform/mac/TransferJobMac.mm: Removed.
1632 * platform/win/ResourceLoaderWin.cpp: Added.
1633 (WebCore::addToOutstandingJobs):
1634 (WebCore::lookupResourceLoader):
1635 (WebCore::ResourceLoaderWndProc):
1636 (WebCore::initializeOffScreenResourceLoaderWindow):
1637 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
1638 (WebCore::ResourceLoader::~ResourceLoader):
1639 (WebCore::ResourceLoader::start):
1640 (WebCore::ResourceLoader::fileLoadTimer):
1641 (WebCore::ResourceLoader::cancel):
1642 * platform/win/ResourceLoaderWin.h: Added.
1643 * platform/win/TemporaryLinkStubs.cpp:
1644 (WebCore::ServeSynchronousRequest):
1645 (WebCore::ResourceLoader::assembleResponseHeaders):
1646 (WebCore::ResourceLoader::retrieveCharset):
1647 * platform/win/TransferJobWin.cpp: Removed.
1648 * platform/win/TransferJobWin.h: Removed.
1649 * xml/XSLTProcessor.cpp:
1650 (WebCore::docLoaderFunc):
1651 * xml/xmlhttprequest.cpp:
1652 (WebCore::XMLHttpRequest::send):
1653 (WebCore::XMLHttpRequest::receivedAllData):
1654 (WebCore::XMLHttpRequest::receivedRedirect):
1655 (WebCore::XMLHttpRequest::receivedData):
1656 * xml/xmlhttprequest.h:
1658 2006-07-31 Darin Adler <darin@apple.com>
1662 - removed obsolete cell margin hack
1664 * rendering/RenderBox.cpp: (WebCore::RenderBox::calcVerticalMargins):
1665 Set top and bottom margins to 0 for table cells instead of -16384.
1666 No effect on layout (including layout tests).
1668 * css/CSSComputedStyleDeclaration.cpp:
1669 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1670 Added a few comments about differences between this class and the
1671 what the CSS specification says about computed style.
1673 2006-07-31 Mark Rowe <opendarwin.org@bdash.net.nz>
1677 http://bugzilla.opendarwin.org/show_bug.cgi?id=9738
1678 Bug 9738: Unqualified :hover selector ignored in strict parsing mode
1680 * css/cssstyleselector.cpp:
1681 (WebCore::CSSStyleSelector::checkSelector): Restrict the :hover and :active
1682 exclusion based on onlyHoverActive to quirks mode.
1684 2006-07-31 David Hyatt <hyatt@apple.com>
1686 Fix for bug 10179, digg.com scrolls slowly. Improve fixed positioning
1687 and fixed backgrounds so that a count of them is kept on the FrameView.
1688 This allows us to switch slow scrolling on and off as these objects come
1691 * css/cssstyleselector.cpp:
1692 (WebCore::CSSStyleSelector::adjustRenderStyle):
1693 (WebCore::CSSStyleSelector::applyProperty):
1694 * page/FrameView.cpp:
1695 (WebCore::FrameViewPrivate::reset):
1696 (WebCore::FrameView::layout):
1697 (WebCore::FrameView::useSlowRepaints):
1698 (WebCore::FrameView::setUseSlowRepaints):
1699 (WebCore::FrameView::addSlowRepaintObject):
1700 (WebCore::FrameView::removeSlowRepaintObject):
1702 * rendering/RenderBox.cpp:
1703 (WebCore::RenderBox::paintBackgroundExtended):
1704 * rendering/RenderObject.cpp:
1705 (WebCore::RenderObject::setStyle):
1706 * rendering/RenderView.cpp:
1707 (WebCore::RenderView::paintBoxDecorations):
1709 2006-07-31 David Hyatt <hyatt@apple.com>
1711 Begin disentangling of scrollbar logic in preparation for engine-implemented
1712 scrollbars. Split ScrollBar into two classes, an abstract base (still named
1713 ScrollBar) and a new PlatformScrollBar subclass. This subclass is used only
1714 by platforms that want to continue to use a platform scrollbar (rather than
1719 * WebCore.xcodeproj/project.pbxproj:
1720 * html/HTMLCanvasElement.h:
1722 * platform/PlatformScrollBar.h: Added.
1723 (WebCore::PlatformScrollBar::isWidget):
1724 * platform/ScrollBar.h:
1725 (WebCore::ScrollBarClient::~ScrollBarClient):
1726 (WebCore::ScrollBar::~ScrollBar):
1727 (WebCore::ScrollBar::orientation):
1728 (WebCore::ScrollBar::value):
1729 (WebCore::ScrollBar::client):
1730 * platform/mac/PlatformScrollBarMac.mm: Added.
1731 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
1732 (-[WebCoreScrollBar detachPlatformScrollBar]):
1733 (-[WebCoreScrollBar scroll:]):
1734 (-[WebCoreScrollBar widget]):
1735 (-[WebCoreScrollBar mouseDown:]):
1736 (WebCore::PlatformScrollBar::PlatformScrollBar):
1737 (WebCore::PlatformScrollBar::~PlatformScrollBar):
1738 (WebCore::PlatformScrollBar::setScrollBarValue):
1739 (WebCore::PlatformScrollBar::setKnobProportion):
1740 (WebCore::PlatformScrollBar::scrollbarHit):
1741 (WebCore::PlatformScrollBar::width):
1742 (WebCore::PlatformScrollBar::height):
1743 (WebCore::PlatformScrollBar::setRect):
1744 (WebCore::PlatformScrollBar::setEnabled):
1745 (WebCore::PlatformScrollBar::paint):
1746 * platform/mac/ScrollBarMac.mm: Removed.
1747 * platform/mac/WebCoreTextArea.mm:
1748 * rendering/RenderBlock.cpp:
1749 (WebCore::RenderBlock::isPointInScrollbar):
1750 * rendering/RenderFormElement.cpp:
1751 * rendering/RenderLayer.cpp:
1752 (WebCore::RenderLayer::horizontalScrollbarWidget):
1753 (WebCore::RenderLayer::verticalScrollbarWidget):
1754 (WebCore::RenderLayer::valueChanged):
1755 (WebCore::RenderLayer::setHasHorizontalScrollbar):
1756 (WebCore::RenderLayer::setHasVerticalScrollbar):
1757 (WebCore::RenderLayer::positionScrollbars):
1758 * rendering/RenderLayer.h:
1759 * rendering/RenderWidget.h:
1761 2006-07-31 Adele Peterson <adele@apple.com>
1763 Reviewed by John and Anders.
1765 - Fix for <rdar://problem/4380576> onChange does not get called when field changed by return key
1767 Test: fast/forms/onchange-enter-submit.html
1769 Blur (which will fire onChange appropriately) before submitting a form when pressing Enter.
1770 This matches the sequence of events fired in WinIE.
1772 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
1773 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::defaultEventHandler):
1775 2006-07-31 Geoffrey Garen <ggaren@apple.com>
1779 Moved string debug function outside of the WebCore namespace so that it's
1780 easier to call in the debugger. I will never doubt Darin again (x100).
1782 * platform/String.cpp:
1785 2006-07-31 David Hyatt <hyatt@apple.com>
1787 Partial fix for 5453. Improve overflow so that when it changes
1788 dynamically from scroll/auto to hidden that we properly hide the
1789 scrollbars. Also refine the dirty dashboard region updating so that
1790 it only happens if the scrollbars genuinely come and go.
1792 Also eliminate the extra repaint of the entire block. This should not be
1793 necessary, since the scrollbars repaint themselves already and children
1794 will repaint already if they move.
1798 Adding test case from bug into fast/overflow/dynamic-hidden.html
1800 * rendering/RenderLayer.cpp:
1801 (WebCore::RenderLayer::setHasHorizontalScrollbar):
1802 (WebCore::RenderLayer::setHasVerticalScrollbar):
1803 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1805 2006-07-31 Graham Dennis <graham.dennis@gmail.com>
1809 <http://bugzilla.opendarwin.org/show_bug.cgi?id=9507>
1810 Empty style spans created in applyInlineStyle
1812 Improves paste fidelity because some of these empty font/style spans had a non-zero
1813 size and were messing up the layout of pasted content:
1814 <rdar://problem/4515463>
1815 REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page
1817 * editing/ApplyStyleCommand.cpp:
1818 (WebCore::ApplyStyleCommand::applyInlineStyle): Use the adjusted start node instead
1819 of start.node(). Don't do any application if the endpoints are swapped. Adjust
1820 endNode if the start node is a descendant of it, so that the pre-order traversal will
1823 2006-07-31 Geoffrey Garen <ggaren@apple.com>
1827 * platform/String.cpp:
1828 (WebCore::string): Added a debugging function to create a String from a
1831 2006-07-31 Anders Carlsson <acarlsson@apple.com>
1833 * css/CSSPrimitiveValue.cpp:
1836 2006-07-31 Geoffrey Garen <ggaren@apple.com>
1838 Reinstating my last change. Everything builds now.
1840 2006-07-31 Geoffrey Garen <ggaren@apple.com>
1842 Backing out my last change because it causes a build failure in some
1843 configurations. This seems to be the cleanest way to get svn to cooperate.
1845 2006-07-31 Geoffrey Garen <ggaren@apple.com>
1849 Moved files around to make WebCore's structure clearer
1850 and easier to explain.
1852 DerivedSources/JS* -> bindings/js/DerivedSources/ (so JS* files
1853 show up when you search inside bindings/js/, but are marked, at
1854 the same time, as files that you should not edit manually)
1856 WebCore+SVG/DOMList.h -> ksvg2/svg/ (only files inside ksvg2/svg/
1861 I tested that everything still builds.
1863 2006-07-30 Darin Adler <darin@apple.com>
1865 Reviewed by Tim Hatcher.
1867 - some improvements for the benefit of the style pane of the inspector
1869 * css/CSSComputedStyleDeclaration.cpp: Removed background-position
1870 and border-spacing from the list of properties that show up in
1871 computed style, because of background-position-x, background-position-y,
1872 -webkit-border-horizontal-spacing and -webkit-border-vertical-spacing.
1873 (WebCore::valueForLength): Added handling for undefinedLength, intrinsic,
1875 (WebCore::primitiveValueFromLength): Removed code that would add a
1876 space to the string for no good reason.
1877 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added a
1878 special case for a line clamp of -1, which should come back as "none"
1879 rather than an actual "-1".
1880 (WebCore::CSSComputedStyleDeclaration::length): Return 0 if the
1881 declaration has no corresponding node or no renderer.
1882 (WebCore::CSSComputedStyleDeclaration::item): Check against length()
1883 so that the two stay consistent rather than using a constant.
1885 * css/CSSPrimitiveValue.cpp:
1886 (WebCore::isCSSTokenizerIdentifier): Added.
1887 (WebCore::isCSSTokenizerURL): Added.
1888 (WebCore::quoteString): Added.
1889 (WebCore::quoteStringIfNeeded): Changed to quote strings in many more
1890 cases -- any cases where they would not parse in the CSS parser otherwise.
1891 The main case this affects is font names with spaces in them.
1892 (WebCore::quoteURLIfNeeded): Added.
1893 (WebCore::CSSPrimitiveValue::cssText): Use quoteURLIfNeeded in the case
1894 where we're making the text form of a URI.
1896 * css/tokenizer.flex: Whitespace tweaks to line things up better.
1898 2006-07-30 Eric Seidel <eric@eseidel.com>
1902 Remove some unused SVG code.
1904 * ksvg2/ecma/Ecma.cpp: Removed.
1905 * ksvg2/ecma/Ecma.h: Removed.
1906 * ksvg2/ecma/GlobalObject.cpp: remove a couple dead functions.
1907 * ksvg2/ecma/GlobalObject.h: add a comment about this dead code.
1908 * ksvg2/ecma/SVGLookup.h: Removed.
1910 2006-07-29 Darin Adler <darin@apple.com>
1912 - Removed tabs from these source files that still had them.
1913 We don't use them; that way source files look fine in editors
1914 that have tabs set to 8 spaces or to 4 spaces.
1915 - Removed allow-tabs Subversion property from the files too.
1917 * bindings/objc/WebScriptObject.h:
1918 * bindings/objc/WebScriptObject.mm:
1919 * platform/FontData.cpp:
1921 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
1925 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10080
1926 Adopt pedantic changes from the Unity project to improve
1927 cross-compiler compatibility
1930 * Removing trailing semicolon from namespace braces.
1931 * Removing trailing comma from last enum declaration.
1932 * Updating to match style guidelines.
1933 * Adding missing newline to the end of the file.
1934 * Turning on gcc warning for missing newline at the end of a source file
1935 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
1936 * Alphabetical sorting of Xcode source list files.
1937 * Use abs() function from <math.h> instead of ABS() macro.
1938 * Use C-style comments instead of C++ comments in files that might
1939 be included by either C or C++ files.
1940 * Use -numeric_limits<double>::infinity() instead of -HUGE_VAL.
1942 * WebCore+SVG/DOMList.h:
1943 * WebCore.xcodeproj/project.pbxproj:
1945 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1946 * bindings/js/JSXSLTProcessor.h:
1947 * bindings/js/kjs_domnode.h:
1949 * bindings/objc/DOMCSS.h:
1950 (-[DOMCSSValue enum]):
1951 * bindings/objc/DOMCore.h:
1952 (-[DOMImplementation createDocument:::]):
1953 * bindings/objc/DOMEvents.h:
1954 (-[DOMOverflowEvent enum]):
1955 * bindings/objc/DOMRange.h:
1956 * bindings/objc/DOMTraversal.h:
1957 * bindings/objc/DOMXPath.h:
1958 (-[DOMXPathNSResolver lookupNamespaceURI:]):
1959 * bridge/mac/WebCoreFrameBridge.h:
1960 * bridge/mac/WebCoreKeyboardAccess.h:
1963 * dom/ChildNodeList.h:
1966 (WebCore::Document::):
1967 * dom/DocumentMarker.h:
1968 (WebCore::DocumentMarker::):
1969 (WebCore::DocumentMarker::operator==):
1970 (WebCore::DocumentMarker::operator!=):
1971 * dom/EventTargetNode.h:
1972 * dom/KeyboardEvent.h:
1973 (WebCore::KeyboardEvent::):
1974 * dom/NameNodeList.h:
1975 (WebCore::NameNodeList::rootNodeChildrenChanged):
1976 * dom/QualifiedName.cpp:
1977 * editing/TypingCommand.h:
1978 (WebCore::TypingCommand::):
1979 * editing/UnlinkCommand.h:
1980 (WebCore::UnlinkCommand::editingAction):
1981 * html/FormDataList.h:
1982 (WebCore::FormDataListItem::FormDataListItem):
1983 (WebCore::FormDataList::appendData):
1984 * html/HTMLBlockquoteElement.h:
1985 * html/HTMLDivElement.h:
1986 * html/HTMLFormElement.h:
1987 * html/HTMLHRElement.h:
1988 * html/HTMLHeadingElement.h:
1989 * html/HTMLMarqueeElement.h:
1990 * html/HTMLParagraphElement.h:
1991 * html/HTMLPlugInElement.h:
1992 * html/HTMLPreElement.h:
1993 * html/HTMLTokenizer.h:
1994 (WebCore::HTMLTokenizer::State::):
1995 * icon/IconDatabase.cpp:
1996 * icon/SQLStatement.cpp:
1997 * kcanvas/KCanvasFilters.h:
1999 (WebCore::KCanvasPoint3F::KCanvasPoint3F):
2000 (WebCore::KCanvasFilter::KCanvasFilter):
2001 (WebCore::KCanvasFilter::~KCanvasFilter):
2002 (WebCore::KCanvasFilterEffect::~KCanvasFilterEffect):
2003 (WebCore::KCComponentTransferFunction::KCComponentTransferFunction):
2004 (WebCore::KCanvasFEConvolveMatrix::KCanvasFEConvolveMatrix):
2005 (WebCore::KCLightSource::KCLightSource):
2006 (WebCore::KCDistantLightSource::KCDistantLightSource):
2007 (WebCore::KCPointLightSource::KCPointLightSource):
2008 (WebCore::KCSpotLightSource::KCSpotLightSource):
2009 (WebCore::KCanvasFEDiffuseLighting::KCanvasFEDiffuseLighting):
2010 (WebCore::KCanvasFEDisplacementMap::KCanvasFEDisplacementMap):
2011 (WebCore::KCanvasFEImage::KCanvasFEImage):
2012 (WebCore::KCanvasFESpecularLighting::KCanvasFESpecularLighting):
2013 * kcanvas/RenderSVGImage.h:
2014 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2015 * ksvg2/css/SVGRenderStyle.h:
2016 (WebCore::SVGRenderStyle::InheritedFlags::):
2017 (WebCore::SVGRenderStyle::NonInheritedFlags::):
2018 * ksvg2/css/SVGRenderStyleDefs.h:
2020 * ksvg2/events/SVGZoomEvent.h:
2023 * ksvg2/misc/KCanvasRenderingStyle.h:
2024 * ksvg2/misc/SVGImageLoader.h:
2025 * ksvg2/scripts/make_names.pl:
2026 * ksvg2/svg/SVGAElement.h:
2027 * ksvg2/svg/SVGAngle.h:
2028 * ksvg2/svg/SVGAnimateColorElement.h:
2029 * ksvg2/svg/SVGAnimateElement.h:
2030 * ksvg2/svg/SVGAnimateTransformElement.h:
2031 * ksvg2/svg/SVGAnimatedAngle.h:
2032 * ksvg2/svg/SVGAnimatedBoolean.h:
2033 * ksvg2/svg/SVGAnimatedColor.h:
2034 * ksvg2/svg/SVGAnimatedEnumeration.h:
2035 * ksvg2/svg/SVGAnimatedInteger.h:
2036 * ksvg2/svg/SVGAnimatedLength.h:
2037 * ksvg2/svg/SVGAnimatedLengthList.h:
2038 * ksvg2/svg/SVGAnimatedNumber.h:
2039 * ksvg2/svg/SVGAnimatedNumberList.h:
2040 * ksvg2/svg/SVGAnimatedPathData.h:
2041 * ksvg2/svg/SVGAnimatedPoints.h:
2042 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
2043 * ksvg2/svg/SVGAnimatedRect.h:
2044 * ksvg2/svg/SVGAnimatedString.h:
2045 * ksvg2/svg/SVGAnimatedTemplate.h:
2046 * ksvg2/svg/SVGAnimatedTransformList.h:
2047 * ksvg2/svg/SVGAnimationElement.cpp:
2048 (SVGAnimationElement::calculateCurrentValueItem):
2049 (SVGAnimationElement::calculateRelativeTimePercentage):
2050 * ksvg2/svg/SVGAnimationElement.h:
2052 * ksvg2/svg/SVGCircleElement.h:
2053 * ksvg2/svg/SVGClipPathElement.h:
2054 * ksvg2/svg/SVGColor.h:
2055 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
2056 * ksvg2/svg/SVGCursorElement.h:
2057 * ksvg2/svg/SVGDOMImplementation.h:
2058 * ksvg2/svg/SVGDefsElement.h:
2059 * ksvg2/svg/SVGDescElement.h:
2060 * ksvg2/svg/SVGDocument.h:
2061 * ksvg2/svg/SVGElement.h:
2062 (WebCore::SVGElement::rendererIsNeeded):
2063 (WebCore::svg_dynamic_cast):
2064 * ksvg2/svg/SVGElementInstance.h:
2065 * ksvg2/svg/SVGElementInstanceList.h:
2066 * ksvg2/svg/SVGEllipseElement.h:
2067 * ksvg2/svg/SVGExternalResourcesRequired.h:
2068 * ksvg2/svg/SVGFEBlendElement.h:
2069 * ksvg2/svg/SVGFEColorMatrixElement.h:
2070 * ksvg2/svg/SVGFEComponentTransferElement.h:
2071 * ksvg2/svg/SVGFECompositeElement.h:
2072 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
2073 * ksvg2/svg/SVGFEDisplacementMapElement.h:
2074 * ksvg2/svg/SVGFEDistantLightElement.h:
2075 * ksvg2/svg/SVGFEFloodElement.h:
2076 * ksvg2/svg/SVGFEFuncAElement.h:
2077 * ksvg2/svg/SVGFEFuncBElement.h:
2078 * ksvg2/svg/SVGFEFuncGElement.h:
2079 * ksvg2/svg/SVGFEFuncRElement.h:
2080 * ksvg2/svg/SVGFEGaussianBlurElement.h:
2081 * ksvg2/svg/SVGFEImageElement.h:
2082 * ksvg2/svg/SVGFELightElement.h:
2083 * ksvg2/svg/SVGFEMergeElement.h:
2084 * ksvg2/svg/SVGFEMergeNodeElement.h:
2085 * ksvg2/svg/SVGFEOffsetElement.h:
2086 * ksvg2/svg/SVGFEPointLightElement.h:
2087 * ksvg2/svg/SVGFESpecularLightingElement.h:
2088 * ksvg2/svg/SVGFESpotLightElement.h:
2089 * ksvg2/svg/SVGFETileElement.h:
2090 * ksvg2/svg/SVGFETurbulenceElement.h:
2091 * ksvg2/svg/SVGFilterElement.h:
2092 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
2093 * ksvg2/svg/SVGFitToViewBox.h:
2094 * ksvg2/svg/SVGForeignObjectElement.cpp:
2095 * ksvg2/svg/SVGForeignObjectElement.h:
2096 * ksvg2/svg/SVGGElement.h:
2097 * ksvg2/svg/SVGGradientElement.h:
2098 * ksvg2/svg/SVGHelper.h:
2100 * ksvg2/svg/SVGImageElement.h:
2101 * ksvg2/svg/SVGLangSpace.h:
2102 * ksvg2/svg/SVGLength.h:
2103 * ksvg2/svg/SVGLengthList.h:
2104 * ksvg2/svg/SVGLineElement.h:
2105 * ksvg2/svg/SVGLinearGradientElement.h:
2106 * ksvg2/svg/SVGList.h:
2107 * ksvg2/svg/SVGLocatable.h:
2108 * ksvg2/svg/SVGMarkerElement.h:
2109 * ksvg2/svg/SVGMaskElement.h:
2110 * ksvg2/svg/SVGMatrix.h:
2111 * ksvg2/svg/SVGNumber.h:
2112 * ksvg2/svg/SVGNumberList.h:
2113 * ksvg2/svg/SVGPaint.h:
2114 * ksvg2/svg/SVGPathElement.h:
2115 * ksvg2/svg/SVGPathSeg.h:
2116 * ksvg2/svg/SVGPathSegArc.h:
2117 * ksvg2/svg/SVGPathSegClosePath.h:
2118 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
2119 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
2120 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
2121 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
2122 * ksvg2/svg/SVGPathSegLineto.h:
2123 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
2124 * ksvg2/svg/SVGPathSegLinetoVertical.h:
2125 * ksvg2/svg/SVGPathSegList.h:
2126 * ksvg2/svg/SVGPathSegMoveto.h:
2127 * ksvg2/svg/SVGPatternElement.h:
2128 * ksvg2/svg/SVGPoint.h:
2129 * ksvg2/svg/SVGPointList.h:
2130 * ksvg2/svg/SVGPolyElement.h:
2131 * ksvg2/svg/SVGPolygonElement.h:
2132 * ksvg2/svg/SVGPolylineElement.h:
2133 * ksvg2/svg/SVGPreserveAspectRatio.h:
2134 * ksvg2/svg/SVGRadialGradientElement.h:
2135 * ksvg2/svg/SVGRect.h:
2136 * ksvg2/svg/SVGRectElement.h:
2137 * ksvg2/svg/SVGSVGElement.h:
2138 * ksvg2/svg/SVGScriptElement.h:
2139 * ksvg2/svg/SVGSetElement.h:
2140 * ksvg2/svg/SVGStopElement.h:
2141 * ksvg2/svg/SVGStringList.h:
2142 * ksvg2/svg/SVGStylable.h:
2143 * ksvg2/svg/SVGStyleElement.h:
2144 * ksvg2/svg/SVGStyledElement.h:
2145 (WebCore::SVGStyledElement::rendererIsNeeded):
2146 (WebCore::SVGStyledElement::canvasResource):
2147 * ksvg2/svg/SVGStyledLocatableElement.h:
2148 * ksvg2/svg/SVGStyledTransformableElement.h:
2149 * ksvg2/svg/SVGSwitchElement.h:
2150 * ksvg2/svg/SVGSymbolElement.h:
2151 * ksvg2/svg/SVGTRefElement.h:
2152 * ksvg2/svg/SVGTSpanElement.h:
2153 * ksvg2/svg/SVGTests.h:
2154 * ksvg2/svg/SVGTextContentElement.h:
2155 * ksvg2/svg/SVGTextElement.h:
2156 * ksvg2/svg/SVGTextPositioningElement.h:
2157 * ksvg2/svg/SVGTitleElement.h:
2158 * ksvg2/svg/SVGTransform.h:
2159 * ksvg2/svg/SVGTransformList.h:
2160 * ksvg2/svg/SVGTransformable.h:
2161 * ksvg2/svg/SVGURIReference.h:
2162 * ksvg2/svg/SVGUseElement.h:
2163 * ksvg2/svg/SVGViewElement.h:
2164 * ksvg2/svg/SVGZoomAndPan.h:
2165 * ksvg2/svg/svgpathparser.h:
2168 * platform/AffineTransform.h:
2169 * platform/FontCache.cpp:
2170 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
2171 * platform/FontData.cpp:
2172 (WebCore::FontData::FontData):
2173 * platform/FontData.h:
2174 * platform/TextBox.h:
2175 (WebCore::TextBox::):
2176 * platform/Timer.cpp:
2177 (WebCore::TimerBase::heapPop):
2178 * platform/mac/FontCacheMac.mm:
2179 * platform/mac/GlyphMapMac.cpp:
2180 * platform/mac/WebFontCache.mm:
2182 * rendering/DeprecatedRenderSelect.cpp:
2183 (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
2184 * rendering/EllipsisBox.h:
2185 * rendering/RenderBR.h:
2186 (WebCore::RenderBR::renderName):
2187 (WebCore::RenderBR::width):
2188 * rendering/RenderBlock.h:
2190 * rendering/RenderFlexibleBox.h:
2191 * rendering/RenderFlow.h:
2192 (WebCore::RenderFlow::RenderFlow):
2193 * rendering/RenderFrame.cpp:
2195 * rendering/break_lines.cpp:
2197 2006-07-29 Rob Buis <buis@kde.org>
2201 http://bugzilla.opendarwin.org/show_bug.cgi?id=10151
2202 ghostmap XHTML + SVG fails due to javascript undefined exception
2204 Make sure document.URL works when called from a non-HTML document.
2206 * bindings/js/kjs_html.cpp:
2207 (KJS::JSHTMLDocument::getValueProperty):
2208 * bindings/js/kjs_html.h:
2209 (KJS::JSHTMLDocument::):
2212 2006-07-29 Mike Emmel <mike.emmel@gmail.com>
2214 Reviewed and tweaked by Darin.
2216 - fixes for Linux build
2217 (still might not compile, since Darin tweaked but was unable to test).
2219 * WebCoreSources.bkl: Added some new sources, removed some obsolete ones.
2220 * Projects/gdk/webcore-gdk.bkl: Added RenderPopupMenuGdk.cpp
2222 * html/HTMLPlugInElement.h: Removed incorrect syntax with class name
2225 * platform/gdk/FrameGdk.h:
2226 * platform/gdk/FrameGdk.cpp: Updated parameters of constructor. Moved a couple stubs
2228 * platform/gdk/RenderPopupMenuGdk.h: Added.
2229 * platform/gdk/RenderPopupMenuGdk.cpp: Added. Just a file full of empty stubs.
2230 * platform/gdk/RenderThemeGdk.h:
2231 * platform/gdk/RenderThemeGdk.cpp: (WebCore::RenderThemeGdk::createPopupMenu): Added.
2233 * platform/gdk/TemporaryLinkStubs.cpp: Add some new stubs.
2235 2006-07-29 Mark Rowe <opendarwin.org@bdash.net.nz>
2239 http://bugzilla.opendarwin.org/show_bug.cgi?id=10022
2240 Bug 10022: REGRESSION: Crash in WebCore::XMLTokenizer::characters
2242 * dom/XMLTokenizer.cpp:
2243 (WebCore::XMLTokenizer::resumeParsing): If the write() call resulted in new callbacks being
2244 added, don't call through to end() just yet.
2246 2006-07-29 Mitz Pettel <opendarwin.org@mitzpettel.com>
2248 Reviewed by John Sullivan.
2250 - manual test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9984
2251 ASSERTION FAILURE: _private->mouseDownEvent != nil
2252 (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
2254 * manual-tests/subview-click-assertion.html: Added.
2256 2006-07-29 Andrew Wellington <proton@wiretapped.net>
2260 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8587 / <rdar://problem/4631844>
2261 REGRESSION: {display:list-item} items outside an ol or ul element don't number correctly
2263 * rendering/RenderListItem.cpp:
2264 (WebCore::enclosingList): If no real list element is found, use parent instead.
2265 (WebCore::previousListItem): Check list elements to see if they are list items -- the
2266 old code assumed that a list would never be a list item but this is entirely possible
2267 with CSS and especially with the new rule that means any DOM element could act as a list.
2269 2006-07-29 Alexey Proskuryakov <ap@nypop.com>
2273 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10147
2274 REGRESSION: custom attribute values set via javascript are not persistent
2276 Test: fast/dom/Element/setAttribute-case-insensitivity.html
2279 (WebCore::Element::setAttribute): Use the lowercased localName for retrieving the old value, too.
2281 2006-07-28 Timothy Hatcher <timothy@apple.com>
2285 Moving the implementation of isContentEditable to the
2286 the WebPrivate category.
2288 * bindings/objc/DOM.mm:
2289 (-[DOMNode isContentEditable]):
2291 2006-07-28 Justin Garcia <justin.garcia@apple.com>
2296 <rdar://problem/4515463>
2297 REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page
2299 Migrate to isBlock and enclosingBlock.
2300 Changed RendereringInfo::isBlock and ReplacementFragment::isBlock
2301 to wasBlock so that they don't conflict with isBlock and because
2302 it's more descriptive.
2304 * editing/ReplaceSelectionCommand.cpp:
2305 (WebCore::ReplacementFragment::mergeStartNode):
2306 (WebCore::ReplacementFragment::wasBlock):
2307 (WebCore::ReplacementFragment::saveRenderingInfo):
2308 (WebCore::ReplacementFragment::renderedBlocks):
2309 (WebCore::RenderingInfo::RenderingInfo):
2310 (WebCore::ReplaceSelectionCommand::shouldMergeStart):
2311 (WebCore::ReplaceSelectionCommand::doApply):
2312 * editing/ReplaceSelectionCommand.h:
2313 (WebCore::RenderingInfo::wasBlock):
2315 2006-07-27 Justin Garcia <justin.garcia@apple.com>
2320 <rdar://problem/4242293>
2321 Poor paste fidelity of http://www.google.com/
2323 * editing/markup.cpp:
2324 (WebCore::needInterchangeNewlineAfter): Added.
2325 (WebCore::createMarkup):
2326 Only add an interchangeNewline if we're annotating for interchange. Can't test
2327 this until we expose createMarkup in non-annotate mode (I'd expose Range::toHTML).
2328 Remove the FIXME about prepending the interchangeNewline before creating the rest
2329 of the markup. Its correct to surround the interchangeNewline in ancestors of the
2331 Fixed the check to see if an interchangeNewline is needed (!inSameBlock). This would
2332 add an interchangeNewline for a selection that started before a table.
2333 Removed the workaround for the bug where markup for a table was not included when
2334 selecting the contents of a table, since this change fixes the general problem of
2335 markup for ancestors of the startNode being left out.
2336 Don't leave out ancestors of the startNode as we leave their subtrees. Execute the
2337 code to include them even if we closed ancestors in the ancestorsToClose list.
2339 2006-07-28 Timothy Hatcher <timothy@apple.com>
2343 Adding isContentEditable to DOMNode's private category.
2345 * bindings/objc/DOMPrivate.h:
2347 2006-07-28 Alexey Proskuryakov <ap@nypop.com>
2349 Rolling out http://bugzilla.opendarwin.org/show_bug.cgi?id=6010 because of failing layout tests.
2350 Add better SVGLoad event support.
2352 * dom/EventTargetNode.cpp:
2353 (WebCore::EventTargetNode::dispatchGenericEvent):
2354 * html/HTMLImageLoader.cpp:
2355 (WebCore::HTMLImageLoader::dispatchLoadEvent):
2356 * html/HTMLImageLoader.h:
2357 * ksvg2/misc/SVGImageLoader.cpp:
2358 (WebCore::SVGImageLoader::SVGImageLoader):
2359 * ksvg2/misc/SVGImageLoader.h:
2360 * ksvg2/svg/SVGAElement.cpp:
2361 (WebCore::SVGAElement::parseMappedAttribute):
2362 * ksvg2/svg/SVGAnimatedBoolean.h:
2363 * ksvg2/svg/SVGElement.cpp:
2364 (WebCore::SVGElement::SVGElement):
2365 (WebCore::SVGElement::parseMappedAttribute):
2366 * ksvg2/svg/SVGElement.h:
2367 (WebCore::SVGElement::adjustViewportClipping):
2368 (WebCore::SVGElement::closeRenderer):
2369 (WebCore::SVGElement::rendererIsNeeded):
2370 (WebCore::SVGElement::isClosed):
2371 (WebCore::svg_dynamic_cast):
2372 * ksvg2/svg/SVGExternalResourcesRequired.h:
2373 * ksvg2/svg/SVGImageElement.cpp:
2374 (SVGImageElement::SVGImageElement):
2375 * ksvg2/svg/SVGImageElement.h:
2376 * ksvg2/svg/SVGSVGElement.cpp:
2377 (WebCore::SVGSVGElement::parseMappedAttribute):
2378 * ksvg2/svg/SVGScriptElement.cpp:
2379 (SVGScriptElement::SVGScriptElement):
2380 (SVGScriptElement::parseMappedAttribute):
2381 (SVGScriptElement::executeScript):
2382 * xml/xmlhttprequest.cpp:
2383 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2385 2006-07-28 Adele Peterson <adele@apple.com>
2387 Rolling out http://bugzilla.opendarwin.org/show_bug.cgi?id=9753 because of failing layout tests.
2388 SVG with width and height 100% leaves room for scrollbar on the right.
2390 * kcanvas/RenderPath.cpp:
2391 * kcanvas/RenderPath.h:
2392 * kcanvas/RenderSVGContainer.cpp:
2393 (WebCore::RenderSVGContainer::layout):
2394 * ksvg2/svg/SVGCircleElement.cpp:
2395 * ksvg2/svg/SVGCircleElement.h:
2396 * ksvg2/svg/SVGEllipseElement.cpp:
2397 * ksvg2/svg/SVGEllipseElement.h:
2398 * ksvg2/svg/SVGLineElement.cpp:
2399 * ksvg2/svg/SVGLineElement.h:
2400 * ksvg2/svg/SVGRectElement.cpp:
2401 * ksvg2/svg/SVGRectElement.h:
2402 * ksvg2/svg/SVGStyledElement.h:
2404 2006-07-27 Eric Seidel <eric@eseidel.com>
2408 Add better SVGLoad event support.
2409 http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
2410 There will still need to be additional support added for <link> and <script> elements.
2411 Not all of the error -> loaded -> error transition cases work yet.
2413 * dom/EventTargetNode.cpp:
2414 (WebCore::EventTargetNode::dispatchGenericEvent):
2415 * html/HTMLImageLoader.cpp:
2416 (WebCore::HTMLImageLoader::dispatchLoadEvent):
2417 * html/HTMLImageLoader.h:
2418 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
2419 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
2420 * ksvg2/misc/SVGImageLoader.cpp:
2421 (WebCore::SVGImageLoader::SVGImageLoader):
2422 (WebCore::SVGImageLoader::dispatchLoadEvent):
2423 * ksvg2/misc/SVGImageLoader.h:
2424 * ksvg2/svg/SVGAElement.cpp:
2425 (WebCore::SVGAElement::parseMappedAttribute):
2426 * ksvg2/svg/SVGAnimatedBoolean.h:
2427 * ksvg2/svg/SVGElement.cpp:
2428 (WebCore::SVGElement::SVGElement):
2429 (WebCore::SVGElement::parseMappedAttribute):
2430 (WebCore::SVGElement::haveLoadedRequiredResources):
2431 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
2432 (WebCore::SVGElement::closeRenderer):
2433 * ksvg2/svg/SVGElement.h:
2434 (WebCore::SVGElement::rendererIsNeeded):
2435 (WebCore::svg_dynamic_cast):
2436 * ksvg2/svg/SVGExternalResourcesRequired.h:
2437 * ksvg2/svg/SVGImageElement.cpp:
2438 (SVGImageElement::SVGImageElement):
2439 (SVGImageElement::haveLoadedRequiredResources):
2440 * ksvg2/svg/SVGImageElement.h:
2441 * ksvg2/svg/SVGSVGElement.cpp:
2442 (WebCore::SVGSVGElement::parseMappedAttribute):
2443 * ksvg2/svg/SVGScriptElement.cpp:
2444 (WebCore::SVGScriptElement::SVGScriptElement):
2445 (WebCore::SVGScriptElement::parseMappedAttribute):
2446 (WebCore::SVGScriptElement::executeScript):
2447 * xml/xmlhttprequest.cpp:
2448 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
2450 2006-07-27 Mitz Pettel <opendarwin.org@mitzpettel.com>
2454 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10135
2455 Cleanup: remove useless parameters from RenderObject::position()
2457 No test possible (no functionality change)
2459 * rendering/RenderBox.cpp:
2460 (WebCore::RenderBox::position):
2461 * rendering/RenderBox.h:
2462 * rendering/RenderObject.h:
2463 (WebCore::RenderObject::position):
2464 * rendering/RenderTableRow.h:
2465 (WebCore::RenderTableRow::position):
2466 * rendering/RenderTableSection.h:
2467 (WebCore::RenderTableSection::position):
2468 * rendering/RenderText.cpp:
2469 (WebCore::RenderText::position):
2470 * rendering/RenderText.h:
2471 * rendering/bidi.cpp:
2472 (WebCore::RenderBlock::constructLine):
2473 (WebCore::RenderBlock::computeVerticalPositionsForLine):
2475 2006-07-27 Rob Buis <buis@kde.org>
2479 http://bugzilla.opendarwin.org/show_bug.cgi?id=9753
2480 SVG with width and height 100% leaves room for scrollbar on the right.
2482 Relayout children of svg containers, except svg shapes that do not depend on percentages.
2484 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::hasPercentageValues):
2485 * kcanvas/RenderPath.h:
2486 * kcanvas/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout):
2487 * ksvg2/svg/SVGCircleElement.cpp: (SVGCircleElement::hasPercentageValues):
2488 * ksvg2/svg/SVGCircleElement.h:
2489 * ksvg2/svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::hasPercentageValues):
2490 * ksvg2/svg/SVGEllipseElement.h:
2491 * ksvg2/svg/SVGLineElement.cpp: (SVGLineElement::hasPercentageValues):
2492 * ksvg2/svg/SVGLineElement.h:
2493 * ksvg2/svg/SVGRectElement.cpp: (WebCore::SVGRectElement::hasPercentageValues):
2494 * ksvg2/svg/SVGRectElement.h:
2495 * ksvg2/svg/SVGStyledElement.h: (WebCore::SVGStyledElement::hasPercentageValues):
2497 2006-07-27 Justin Garcia <justin.garcia@apple.com>
2501 <rdar://problem/4242293>
2502 Poor paste fidelity of http://www.google.com/
2504 * editing/ApplyStyleCommand.cpp:
2505 (WebCore::ApplyStyleCommand::applyInlineStyle): Fixed crasher with nil-check.
2506 * editing/markup.cpp:
2507 (WebCore::startMarkup): Style information wasn't added to an element if it had
2508 attributes but no style attribute.
2510 2006-07-27 Alexander Kellett <lypanov@kde.org>
2514 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9867
2515 REGRESSION: code that modifies form element in Firefox modifies form attribute in WebKit
2517 * bindings/scripts/CodeGeneratorJS.pm: add new attribute - HasOverridingNameGetter
2518 * html/HTMLFormElement.idl:
2520 2006-07-27 Rob Buis <buis@kde.org>
2524 http://bugzilla.opendarwin.org/show_bug.cgi?id=8992
2525 Some HTML DOM attributes have incorrect types
2527 Adjust idl and dom source code for HTMLImageElement and
2528 HTMLBaseFontElement to choose correct type for
2529 HTMLImageElement::border and HTMLBaseFontElement::size
2532 * html/HTMLBaseFontElement.cpp:
2533 (WebCore::HTMLBaseFontElement::size):
2534 (WebCore::HTMLBaseFontElement::setSize):
2535 * html/HTMLBaseFontElement.h:
2536 * html/HTMLBaseFontElement.idl:
2537 * html/HTMLImageElement.cpp:
2538 (WebCore::HTMLImageElement::border):
2539 (WebCore::HTMLImageElement::setBorder):
2540 * html/HTMLImageElement.h:
2541 * html/HTMLImageElement.idl:
2543 2006-07-27 Justin Garcia <justin.garcia@apple.com>
2547 <rdar://problem/4628409>
2548 Safari crashes in CompositeEditCommand::removeBlockPlaceholder entering text in a web page form
2550 * editing/CompositeEditCommand.cpp:
2551 (WebCore::CompositeEditCommand::removeBlockPlaceholder):
2552 A script on the page shrinks the textarea down to zero rows just
2553 before insertion. That gives the shadow div a zero height, removing
2554 [div, 0] as a candidate for a VisiblePosition. Then
2555 InsertTextCommand::input() tries to create a VisiblePosition from
2556 [div, 0] and fails. A nil check is a quick fix. Another might
2557 be to make positions where there is a caret selection candidates.
2558 Another might be to make any [div, 0] where div is a shadow div inside
2559 a form element a candidate.
2561 2006-07-27 Graham Dennis <graham.dennis@gmail.com>
2565 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10094
2566 Japanese characters improperly rendering in TOT
2568 Test: fast/encoding/denormalised-voiced-japanese-chars.html
2570 * platform/Font.cpp:
2571 (WebCore::WidthIterator::advance): pass currentCharacter to normalizeVoicingMarks
2572 (WebCore::WidthIterator::normalizeVoicingMarks): turn the currentCharacter variable
2573 into an argument as WidthIterator::advance doesn't update m_currentCharacter while
2576 2006-07-27 Eric Seidel <eric@eseidel.com>
2580 Complex entities seem to fail on TOT
2581 http://bugzilla.opendarwin.org/show_bug.cgi?id=6390
2582 Use an alternative work-around to an XML Entity parsing bug.
2584 * dom/XMLTokenizer.cpp:
2585 (WebCore::XMLTokenizer::write):
2586 (WebCore::hackAroundLibXMLEntityBug): added.
2587 (WebCore::startElementNsHandler):
2588 (WebCore::endElementNsHandler):
2589 (WebCore::charactersHandler):
2590 (WebCore::processingInstructionHandler):
2591 (WebCore::cdataBlockHandler):
2592 (WebCore::commentHandler):
2593 (WebCore::getEntityHandler):
2595 2006-07-27 Rob Buis <buis@kde.org>
2599 http://bugzilla.opendarwin.org/show_bug.cgi?id=9938
2600 Fix viewBox issues in Hixie's test
2602 Do a more accurate and quicker job of parsing the viewBox
2603 attribute. Handle properly on negative width/height and
2604 invalid syntax in general.
2606 * ksvg2/svg/SVGFitToViewBox.cpp:
2607 (SVGFitToViewBox::parseViewBox):
2609 2006-07-27 Eric Seidel <eric@eseidel.com>
2613 Enables getSVGDocument() support for HTMLObjectElement and HTMLEmbedElement
2614 http://bugzilla.opendarwin.org/show_bug.cgi?id=9237
2615 This patch does not try to autogenerate anything, but enables the SVG functionality.
2616 Also fix HTMLObjectElement vspace and hspace to be numbers instead of strings to match IE & Firefox.
2618 * bindings/js/kjs_dom.cpp:
2620 * bindings/js/kjs_html.cpp:
2621 (KJS::JSHTMLElement::objectGetter):
2622 (KJS::HTMLElementFunction::callAsFunction):
2623 (KJS::JSHTMLElement::objectSetter):
2624 * bindings/js/kjs_html.h:
2625 (KJS::JSHTMLElement::):
2627 (WebCore::Document::isSVGDocument):
2628 * html/HTMLEmbedElement.cpp:
2629 (WebCore::HTMLEmbedElement::contentDocument):
2630 (WebCore::HTMLEmbedElement::getSVGDocument):
2631 * html/HTMLEmbedElement.h:
2632 * html/HTMLObjectElement.cpp:
2633 (WebCore::HTMLObjectElement::HTMLObjectElement):
2634 (WebCore::HTMLObjectElement::getInstance):
2635 (WebCore::HTMLObjectElement::parseMappedAttribute):
2636 (WebCore::HTMLObjectElement::contentDocument):
2637 (WebCore::HTMLObjectElement::rendererIsNeeded):
2638 (WebCore::HTMLObjectElement::createRenderer):
2639 (WebCore::HTMLObjectElement::setCode):
2640 (WebCore::HTMLObjectElement::setArchive):
2641 (WebCore::HTMLObjectElement::setBorder):
2642 (WebCore::HTMLObjectElement::setCodeBase):
2643 (WebCore::HTMLObjectElement::setCodeType):
2644 (WebCore::HTMLObjectElement::setData):
2645 (WebCore::HTMLObjectElement::hspace):
2646 (WebCore::HTMLObjectElement::setHspace):
2647 (WebCore::HTMLObjectElement::setStandby):
2648 (WebCore::HTMLObjectElement::setType):
2649 (WebCore::HTMLObjectElement::setUseMap):
2650 (WebCore::HTMLObjectElement::vspace):
2651 (WebCore::HTMLObjectElement::setVspace):
2652 (WebCore::HTMLObjectElement::getSVGDocument):
2653 * html/HTMLObjectElement.h:
2654 * ksvg2/svg/SVGDocument.h:
2655 (WebCore::SVGDocument::isSVGDocument):
2656 * rendering/RenderWidget.h:
2657 (WebCore::RenderWidget::frameView):
2659 2006-07-26 Alexey Proskuryakov <ap@nypop.com>
2663 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9901
2664 XSLTProcessor cannot parse text nodes for INPUT ELEMENTS in an XSLT stylesheet
2666 Test: fast/js/xhtml-serialize.html
2668 * editing/markup.cpp:
2669 (WebCore::endMarkup): If the element has child nodes, write a closing tag even if it
2670 is not permitted in HTML, to make it valid XML.
2672 2006-07-26 Alice Liu <alice.liu@apple.com>
2674 Reviewed by John Sullivan (and Kevin and Timo).
2676 landing this patch for John et al.
2677 Fixed <rdar://problem/4651380> REGRESSION (9A232->9A234): existing web clips don't render if you restart Dashboard
2679 * page/FrameView.cpp:
2680 (WebCore::FrameView::layout):
2681 moved the call to didFirstLayout to above the check for needsLayout
2682 because we need to call didFirstLayout for every webview, not just
2683 ones we think need layout.
2685 2006-07-26 Justin Garcia <justin.garcia@apple.com>
2689 <rdar://problem/4652788>
2690 REGRESSION: Can't change size or style of any text in message body
2693 (WebCore::Node::isContentRichlyEditable): Mimic Node::isContentEditable.
2694 * html/HTMLElement.cpp:
2695 (WebCore::HTMLElement::isContentRichlyEditable): First check
2696 the frame for editability, then userModify, like what
2697 HTMLElement::isContentEditable() does.
2698 * html/HTMLElement.h:
2700 2006-07-26 Mitz Pettel <opendarwin.org@mitzpettel.com>
2704 - fix debug-only information() string for table cells
2706 * rendering/RenderObject.cpp:
2707 (WebCore::RenderObject::information):
2709 2006-07-25 David Harrison <harrison@apple.com>
2711 Reviewed by timo and Darin.
2713 <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
2715 * WebCore.xcodeproj/project.pbxproj:
2716 * bridge/mac/WebCoreFrameBridge.h:
2717 * bridge/mac/WebCoreFrameBridge.mm:
2718 (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
2719 Add matchStyle parameter for use by WebKit.
2721 2006-07-25 Justin Garcia <justin.garcia@apple.com>
2725 <rdar://problem/4649560>
2726 REGRESSION: Can't Select All when the body is contentEditable="true"
2728 * editing/VisiblePosition.cpp:
2729 (WebCore::VisiblePosition::canonicalPosition): Allow descent from a non-editable html
2730 element into an editable body as a convenience.
2732 2006-07-25 Justin Garcia <justin.garcia@apple.com>
2736 <rdar://problem/4468458> Incoming HTML message is editable <body contenteditable="true">
2739 (WebCore::Document::inDesignMode): Removed some spaces.
2741 (WebCore::Frame::applyEditingStyleToElement): Just add CSS properties needed for editing.
2742 (WebCore::Frame::removeEditingStyleFromElement): Made this a no-op, we'll remove
2745 2006-07-25 David Kilzer <ddkilzer@kilzer.net>
2749 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9717
2750 Replace IDL ConvertUndefinedToTrue parameter attribute with Optional attribute
2752 No test added because there is no change in functionality.
2754 * bindings/js/kjs_binding.cpp: Removed valueToBooleanTreatUndefinedAsTrue() method.
2755 * bindings/js/kjs_binding.h: Ditto.
2756 * bindings/scripts/CodeGeneratorJS.pm: Removed support for ConvertUndefinedToTrue parameter attribute.
2757 * dom/Element.h: Set default value to true for scrollIntoView() and scrollIntoViewIfNeeded() arguments.
2758 * dom/Element.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
2759 Fixed name of scrollIntoViewIfNeeded() argument to match implementation.
2760 * page/DOMWindow.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
2762 2006-07-24 Dan Waylonis <waylonis@google.com>
2764 Reviewed and tweaked a bunch by Darin.
2766 Test: plugins/bindings-test.html
2768 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9902
2769 jsNull and NSNull not properly converted between JS and ObjC
2771 * bindings/objc/WebScriptObject.mm:
2772 (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
2773 Added case that converts jsNull to NSNull.
2775 2006-07-24 Darin Adler <darin@apple.com>
2777 Reviewed by Adele and Justin.
2779 - fix <rdar://problem/4613616> REGRESSION: some spaces typed in <textarea> are posted as non-breaking spaces (9630)
2780 http://bugzilla.opendarwin.org/show_bug.cgi?id=9630
2781 - also fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=9939
2782 REGRESSION: Pasting text into native text area with newline at end does not preserve newline
2783 - removed some uses of DeprecatedPtrList in the markup code
2785 Test: fast/forms/textarea-type-spaces.html
2786 Test: fast/forms/textarea-paste-newline.html
2788 * bindings/objc/DOMHTML.mm: (-[DOMHTMLDocument createDocumentFragmentWithText:]):
2789 Updated call to pass a range -- in this case it is the range of the entire document,
2790 so this will not handle the whitespace properly.
2792 * bridge/mac/WebCoreFrameBridge.h: Added range context parameter to the
2793 documentFragmentWithText: method, so we can handle whitespace properly.
2794 * bridge/mac/WebCoreFrameBridge.mm:
2795 (-[WebCoreFrameBridge nodesFromList:]): Changed from DeprecatedPtrList to Vector.
2796 (-[WebCoreFrameBridge markupStringFromNode:nodes:]): Ditto.
2797 (-[WebCoreFrameBridge markupStringFromRange:nodes:]): Ditto.
2798 (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Added range context
2799 parameter -- pass it on to createFragmentFromText.
2800 (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]): Changed from
2801 DeprecatedPtrList to Vector.
2802 (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
2803 Pass the range of the current selection as context when creating the fragment.
2805 * dom/Position.cpp: (WebCore::Position::inRenderedText): Replace range check with
2806 a call to the new containsCaretOffset function -- helps make the caret work right when
2807 it is past the end of the last line in a textarea.
2809 * editing/CompositeEditCommand.cpp:
2810 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Don't do anything if the
2811 style does not call for collapsing whitespace.
2812 (WebCore::CompositeEditCommand::rebalanceWhitespace): Call replaceWhitespaceAt
2813 to share code, including the new logic mentioned above.
2815 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
2816 Use a text node instead of a break element when inserting and the style is preserveNewline.
2818 * editing/JSEditor.cpp: (WebCore::execRemoveFormat): Pass the selection range
2819 to createFragmentFromText.
2821 * editing/RebalanceWhitespaceCommand.cpp: (WebCore::RebalanceWhitespaceCommand::doApply):
2822 Assert that we're in a style that collapses whitespace. It's the caller's responsibility
2823 not to call otherwise.
2825 * editing/ReplaceSelectionCommand.h: Removed unused destructor, type, isSingleTextNode,
2826 isTreeFragment, m_type, and added a context parameter to inertFragmentForTestRendering.
2827 Also changed the constructor to take a selection rather than a pointer to the root
2828 editable element, replaced removeEndBRIfNeeded with shouldRemoveEndBR and removed an
2829 unused parameter from shouldMergeEnd.
2830 * editing/ReplaceSelectionCommand.cpp:
2831 (WebCore::ReplacementFragment::ReplacementFragment): Removed code to set up m_type.
2832 Compute root editable element from passed-in selection. Used the start of the selection
2833 as a base node for style purposes for the test rendering. Removed the special case
2834 "single text node" alternative to createFragmentFromText in the plain text case, since
2835 createFragmentFromText now handles that correctly.
2836 (WebCore::ReplacementFragment::insertFragmentForTestRendering): Copy the whitespace
2837 property from the source location when creating a temporary element for test rendering.
2838 (WebCore::ReplacementFragment::shouldMergeEnd): Removed unneeded boolean
2839 parameter fragmentHadInterchangeNewlineAtEnd, which is always false.
2840 (WebCore::ReplaceSelectionCommand::doApply): Update for ReplacementFragment changes,
2841 change code to not remove end BR when it can be re-used instead, don't call the
2842 paragraph separator insertion when the position is at the start of a paragraph already,
2843 removed redundant computation of identical "next" value, removed unneeded boolean
2844 parameter to shouldMergeEnd, add case for merging when all we need to do is to delete
2845 a newline character, removed unneeded code to set insertionPos after all code that uses
2846 it, and use spaces instead of non-breaking spaces when doing smart paste if the
2847 context is one where we do not collapse white space.
2848 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): Renamed and changed to return
2849 a boolean instead of doing the removal.
2851 * editing/markup.h: Use Vector instead of DeprecatedPtrList. Change the
2852 createFragmentFromText function to take a range for context instead of a document.
2853 * editing/markup.cpp:
2854 (WebCore::markup): Use Vector instead of DeprecatedPtrList.
2855 (WebCore::createMarkup): Ditto.
2856 (WebCore::createParagraphContentsFromString): Remove unneeded document parameter
2857 and changed a couple places to use isEmpty instead of comparing with "".
2858 (WebCore::createFragmentFromText): Given the new context parameter, if the context
2859 is one that preserves newlines, then use "\n" instead of <br> elements.
2860 (WebCore::createFragmentFromNodes): Use Vector instead of DeprecatedPtrList.
2862 * html/HTMLElement.cpp: (WebCore::HTMLElement::setInnerText): Do not use <br>
2863 elements if the context of this node is one where we preserve newlines.
2865 * rendering/InlineTextBox.h:
2866 * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::containsCaretOffset):
2867 Added. Implements the appropriate rule for determining if a caret position is
2868 in this line or not. Returns true for both one line and the next in cases where
2869 affinity must be considered to determine which line the caret is on.
2871 * rendering/RenderText.h: Make atLineWrap no longer be a member function.
2872 * rendering/RenderText.cpp:
2873 (WebCore::atLineWrap): Remove special rule about preserveNewline and isLineBreak,
2874 which will no longer apply due to the new containsCaretOffset function logic.
2875 (WebCore::RenderText::caretRect): Use containsCaretOffset.
2876 (WebCore::RenderText::inlineBox): Ditto.
2878 * rendering/RenderTextControl.cpp:
2879 (WebCore::RenderTextControl::updateFromElement): Make a placeholder <br> element
2880 after calling setInnerText so that the last newline in the string has the effect
2881 we expect outside the HTML world (an additional line).
2882 (WebCore::RenderTextControl::setSelectionRange): Set granularity of the selection
2883 too. The layout tests caught this problem, which needs a better solution long term.
2884 (WebCore::RenderTextControl::text): Call textContent with the parameter false
2885 so it will not include newlines for <br> elements. Now the only <br> element
2886 that will ever be in the shadow DOM tree is the one to prevent collapsing, and
2887 that one should not show up in the text value.
2889 * rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Took a rule
2890 that specifically called out the pre whitespace mode and made it work for all
2891 the modes that preserve newlines. This makes sure we get a last line box for
2892 text after the last "\n" even in cases where there is no <br> afterward.
2894 * editing/DeleteSelectionCommand.cpp:
2895 (WebCore::DeleteSelectionCommand::fixupWhitespace):
2896 * editing/InsertParagraphSeparatorCommand.cpp:
2897 (WebCore::InsertParagraphSeparatorCommand::doApply):
2898 Added assertions to make sure we don't do anything when we're not collapsing
2901 * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::setDefaultValue):
2902 Changed to use Vector instead of DeprecatedPtrList.
2904 * editing/HTMLInterchange.cpp: Removed obsolete comment.
2906 * loader/Cache.h: Removed a stray include.
2908 2006-07-24 Adele Peterson <adele@apple.com>
2912 - Fix for <rdar://problem/4632132> Changing style of content with mixed editability fails
2914 Test: * editing/style/apple-style-editable-mix.html
2916 * dom/Node.cpp: (WebCore::Node::isContentRichlyEditable): Doesn't need to check the editable root. It now just
2917 checks the user modify property of its own renderer, since that is inherited.
2918 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyle): If the end position is in a table,
2919 Adjust the end node to the last descendant of the table, so we don't skip over any runs.
2921 2006-07-24 Darin Adler <darin@apple.com>
2925 - implement String::createCFString
2927 * WebCore.xcodeproj/project.pbxproj: Added StringImplMac.mm and StringMac.mm.
2929 * bindings/objc/DOMInternal.mm: Moved NSString conversion functions out of here.
2931 * platform/mac/StringImplMac.mm: Added. Moved NSString conversion members here
2932 and added the CFStringRef ones.
2933 * platform/mac/StringMac.mm: Added. Ditto.
2935 2006-07-24 David Hyatt <hyatt@apple.com>
2939 (1) Make sure to mark positioned objects that depend on line position to
2940 mark themselves as needing layout when their line box placeholder gets
2943 * rendering/RenderBox.cpp:
2944 (WebCore::RenderBox::position):
2946 (2) Improve highlighting to factor the inflation into overflow so that
2947 invalidation and repainting will work properly.
2949 * rendering/RootInlineBox.cpp:
2950 (WebCore::RootInlineBox::addHighlightOverflow):
2951 * rendering/RootInlineBox.h:
2952 * rendering/bidi.cpp:
2953 (WebCore::RenderBlock::layoutInlineChildren):
2955 2006-07-24 Anders Carlsson <acarlsson@apple.com>
2959 <rdar://problem/4641824> REGRESSION: Wikipedia widget fails to complete a search after pressing return key
2961 * html/HTMLInputElement.cpp:
2962 (WebCore::HTMLInputElement::defaultEventHandler):
2963 Don't eat enter events for search fields that have no enclosing form; they need to be passed to AppKit so
2964 that onsearch can be invoked.
2966 * manual-tests/onsearch-enter.html: Added.
2968 2006-07-24 Dave MacLachlan <dmaclach@mac.com>
2970 Reviewed by Darin and Alexey.
2972 Fix for: <http://bugzilla.opendarwin.org/show_bug.cgi?id=8425>
2973 and <http://bugzilla.opendarwin.org/show_bug.cgi?id=6947>
2975 Test: svg/custom/non-opaque-filters.svg
2977 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2978 (WebCore::KCanvasFilterQuartz::prepareFilter):
2979 We create an autorelease pool so we can control the deallocation of the
2980 CIContext that we're creating. The CIContext retains the CGContext that
2981 you pass it internally so when the CIContext is released, the
2982 CGContext is released as well.
2983 This is all fine and dandy unless you wrap the creation of the CIFilter
2984 with a pair of CGBegin/EndTransparencyLayer calls which swap the context
2985 out from underneath you. So if you start with context A,
2986 CGBeginTransparencyLayer swaps it out and gives you B. You create a CIFilter
2987 with it and add a reference to B. CGEndTransparencyLayer swaps out B and
2988 gives you back A. Autorelease pool comes and cleans up the Filter, and calls
2989 release on A, but A never got the refcount in the first place. B did. BOOM!
2990 So we create a pool, then do a retain, then release the pool so that we
2991 don't have to worry about the pool releasing it at a later time.
2992 See <rdar://problem/4647735> for reduction of CGEndTransparencyLayer case
2994 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
2998 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9669
2999 Incomplete repaint when changing an inline's border
3001 Test: fast/repaint/line-overflow.html
3003 * rendering/RenderBlock.h:
3004 * rendering/bidi.cpp:
3005 (WebCore::RenderBlock::layoutInlineChildren): Added repaintTop and repaintBottom
3006 variables to track the vertical edges of the area that changed, accounting for
3007 lines that were deleted, inserted or moved. Removed unnecessary updating of
3009 (WebCore::RenderBlock::determineStartPosition): Removed unnecessary updating of
3011 (WebCore::RenderBlock::determineEndPosition):
3012 (WebCore::RenderBlock::matchedEndLine): Added repaintTop and repaintBottom
3013 arguments, which this method updates to account for deleted lines.
3014 (WebCore::RenderBlock::checkLinesForOverflow): Removed outdated FIXME.
3016 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
3020 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10075
3021 REGRESSION: Reversed pop-up text in visually-ordered Hebrew pages
3023 Test: fast/forms/select-visual-hebrew.html
3025 * css/html4.css: Set "-webkit-rtl-ordering: logical" on select elements.
3027 2006-07-24 Alexey Proskuryakov <ap@nypop.com>
3031 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10009
3032 REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)
3035 (WebCore::Frame::begin): Give PDF plugins a chance to handle frame content, before ImageDocument
3038 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
3042 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10083
3043 REGRESSION (r15584): editing/selection/select-from-textfield-outwards failing
3045 * rendering/RenderBlock.cpp:
3046 (WebCore::RenderBlock::positionForCoordinates): Added back change from the fix
3047 for bug 9312: For coordinates outside a replaced object, return the position
3048 just before (after) the element if the coordinates are above or to the left (below
3051 2006-07-23 Mark Rowe <opendarwin.org@bdash.net.nz>
3055 Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
3056 http://bugzilla.opendarwin.org/show_bug.cgi?id=9686
3058 WebCore portion of the fix.
3060 * bridge/mac/WebCoreScriptDebugger.h:
3061 (-[WebScriptDebugger exceptionRaised:sourceId:line::]): Add delegate method.
3062 * bridge/mac/WebCoreScriptDebugger.mm:
3063 (WebCoreScriptDebuggerImp::exception): Call delegate method when an exception is raised.
3065 2006-07-23 Alice Liu <alice.liu@apple.com>
3068 Actually Adele figured out how to fix the layout test failures. Landing this patch for her. Layout test failures exposed but not caused by r15584 (my patch earlier today).
3070 * editing/visible_units.cpp:
3071 (WebCore::previousLinePosition):
3072 When setting selection endpoints, don't traverse down into nodes where editing would ignore its contents. Use the parent node instead.
3073 (WebCore::nextLinePosition):
3076 2006-07-23 David Harrison <harrison@apple.com>
3080 <rdar://problem/4646759> Mail crash editing To Do - WebCore::InsertTextCommand::prepareForTextInsertion
3082 * Test: editing/deleting/delete-mixed-editable-content-001.html
3084 * editing/visible_units.cpp:
3085 (WebCore::startOfParagraph):
3086 Respect editable boundary the same way endOfParagraph does.
3088 2006-07-23 Beth Dakin <bdakin@apple.com>
3090 Reviewed by Maciej. (Patch by me, Maciej, and Harrison.)
3092 Fix for <rdar://problem/4529398> WebCore crashes when pasting rich
3093 text - WebCore::InlineBox::root()
3095 The initial rendering crash was due to a render object having a
3096 stale reference to an inline box that had already been deleted and
3097 then recreated in the exact same location in memory. (Crazy, I
3098 know.) The situation seemed pretty specific to list markers
3099 according to Hyatt according to Maciej, so that is what I patched
3100 specifically. Fixing this crash unearthed a separate editing crash
3101 where we were trying to insert a block into itself. I worked on
3102 that with Maciej and Harrison, and Harrison came up with a fix.
3104 * editing/CompositeEditCommand.cpp:
3105 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): This is the fix for the editing crash. If paragraphStart is an atomic
3106 node, insert the new block into the parent instead.
3107 * rendering/InlineBox.cpp:
3108 (WebCore::InlineBox::isChildOfParent): This function is for
3109 posterity. It will help keep the linebox tree in check.
3110 * rendering/InlineBox.h:
3111 * rendering/InlineFlowBox.cpp:
3112 (WebCore::InlineFlowBox::addToLine): Added assert.
3113 (WebCore::InlineFlowBox::deleteLine): Added assert.
3114 * rendering/ListMarkerBox.cpp:
3115 (WebCore::ListMarkerBox::destroy): If this has a parent, call
3116 removeChild on this.
3117 (WebCore::ListMarkerBox::operator delete):
3118 * rendering/ListMarkerBox.h:
3120 2006-07-23 Alice Liu <alice.liu@apple.com>
3124 fixed <rdar://problem/4617841> REGRESSION (NativeTextField): You can move keyboard focus to a field without getting insertion point
3126 * rendering/RenderBlock.cpp:
3127 (WebCore::RenderBlock::positionForCoordinates):
3128 removed some unnecessary vertical position checks and added a fudge factor to be more forgiving for clicks near lines.
3129 * rendering/RenderTextControl.cpp:
3130 (WebCore::RenderTextControl::nodeAtPoint):
3131 added implementation
3132 * rendering/RenderTextControl.h:
3133 added function protocol
3135 2006-07-23 Adele Peterson <adele@apple.com>
3139 Updating fix from last checkin.
3141 * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
3142 Only tell the view about this flexbox if there isn't another flexbox already cached.
3144 2006-07-23 Adele Peterson <adele@apple.com>
3148 - Fix for <rdar://problem/4644614> REGRESSION: Typing, pasting or dragging in new text areas causes unnecessary scrolling
3150 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): Don't updateScrollInfoAfterLayout if an ancestor flexible box is just on
3152 * rendering/RenderFlexibleBox.cpp:
3153 (WebCore::RenderFlexibleBox::layoutBlock): ditto.
3154 (WebCore::RenderFlexibleBox::layoutVerticalBox): Let the view know if this flex box is doing its first pass at layout.
3156 * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): Caches a flexible box that's doing its first layout.
3157 * rendering/RenderView.h:
3158 (WebCore::RenderView::setFlexBoxInFirstLayout):
3159 (WebCore::RenderView::flexBoxInFirstLayout):
3161 2006-07-22 Alexey Proskuryakov <ap@nypop.com>
3165 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10038
3166 REGRESSION: Length of navigator.mimeTypes collection returns number of installed plugins, not number
3167 of registered mime types
3169 * bindings/js/kjs_navigator.cpp:
3170 (KJS::MimeTypes::getValueProperty): Return the length of the mime types vector, not the plugins one.
3171 (KJS::MimeTypes::getOwnPropertySlot): Fixed another typo, which prevented MimeTypes::getValueProperty()
3172 from even being called.
3174 2006-07-21 Maciej Stachowiak <mjs@apple.com>
3176 Reviewed by Adele and Tim Omernick.
3178 <rdar://problem/4641004> 9A224: Safari crashes in WebCore::RenderMenuList::showPopup when changing a input select field to input text field
3180 Couldn't figure out how to make layout test, here's a manual test:
3181 * manual-tests/remove-select-onchange.html: Added.
3183 * rendering/RenderMenuList.cpp:
3184 (WebCore::RenderMenuList::showPopup): Don't add the RenderPopupMenu to the render
3185 tree so it doesn't get destroyed if we do.
3187 The remaining changes are to let the RenderPopupMenu know its menu list w/o having
3188 to be in the render tree:
3190 * rendering/RenderPopupMenu.cpp:
3191 (WebCore::RenderPopupMenu::RenderPopupMenu):
3192 * rendering/RenderPopupMenu.h:
3193 (WebCore::RenderPopupMenu::menuList):
3194 * rendering/RenderPopupMenuMac.h:
3195 * rendering/RenderPopupMenuMac.mm:
3196 (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
3197 * rendering/RenderPopupMenuWin.h:
3198 (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
3199 * rendering/RenderTheme.h:
3200 * rendering/RenderThemeMac.h:
3201 * rendering/RenderThemeMac.mm:
3202 (WebCore::RenderThemeMac::createPopupMenu):
3203 * rendering/RenderThemeWin.cpp:
3204 (WebCore::RenderThemeWin::createPopupMenu):
3205 * rendering/RenderThemeWin.h:
3207 2006-07-21 Adele Peterson <adele@apple.com>
3211 Fix for: <rdar://problem/4643238> REGRESSION: Can't set insertion point at the end of a line of text
3213 Test: fast/forms/textarea-scrolled-endline-caret.html
3215 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates):
3216 When looking for the closest line box, take the scroll offset into account.
3218 2006-07-21 Tim Omernick <timo@apple.com>
3220 Reviewed by Geoff & Maciej.
3222 <rdar://problem/4632505> REGRESSION: Crash at WebCore::Widget::getView() const + 6
3224 Geoff is working on a layout test for this.
3226 * bridge/mac/FrameMac.mm:
3227 (WebCore::FrameMac::focusWindow):
3228 (WebCore::FrameMac::unfocusWindow):
3229 Check for a NULL view. The view can be NULL if the frame has not yet loaded any data. This fixes the crash, but the behavior is still
3230 wrong -- we should focus the frame once it gets a view. I've filed <rdar://problem/4645685> to track that. It's not as urgent as this
3233 2006-07-21 Maciej Stachowiak <mjs@apple.com>
3237 <rdar://problem/4523976> REGRESSION (NativeTextField): Crash occurs when choosing "Undo Typing" after typing and setting the value
3239 * rendering/RenderTextControl.cpp:
3240 (WebCore::RenderTextControl::updateFromElement): Clear the undo
3241 chain when the text control contents have been set
3243 * bridge/mac/FrameMac.mm:
3244 (WebCore::FrameMac::clearUndoRedoOperations): Before clearing undo
3245 stack, close all open undo groups and then open an equal number,
3246 since otherwise NSUndoManager ends up in an inconsistent state
3247 leading to uncaught ObjC exceptions.
3249 2006-07-21 Beth Dakin <bdakin@apple.com>
3253 Just moving this assertion down a couple of lines. It was hitting
3254 every time you try to print a page because we put it too early in
3257 * bridge/mac/WebCoreFrameBridge.mm:
3258 (-[WebCoreFrameBridge drawRect:]):
3260 2006-07-21 Justin Garcia <justin.garcia@apple.com>
3264 <rdar://problem/4548238>
3265 REGRESSION: Can't remove the first OL/UL list item in a Mail's compose window
3267 * editing/CompositeEditCommand.cpp:
3268 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3269 Moved from InsertParagraphSeparator. Does its own typing style restoration.
3270 * editing/CompositeEditCommand.h:
3271 * editing/InsertParagraphSeparatorCommand.cpp:
3272 (WebCore::InsertParagraphSeparatorCommand::doApply): Call breakOutOfEmptyListItem.
3273 * editing/TypingCommand.cpp:
3274 (WebCore::TypingCommand::deleteKeyPressed): Call breakOutOfEmptyListItem if
3275 the endingSelection is at the start of an editable region.
3276 * editing/htmlediting.cpp:
3277 (WebCore::embeddedSublist): Moved from InsertParagraphSeparator.
3278 (WebCore::appendedSublist): Ditto.
3279 (WebCore::enclosingEmptyListItem): Ditto.
3280 * editing/htmlediting.h:
3282 === Safari-521.20 ===
3284 2006-07-21 Tim Omernick <timo@apple.com>
3286 Reviewed by Beth Dakin & John Sullivan.
3288 <rdar://problem/4633717> 9A218: Reproducible crash in -[NSScroller mouseDown:]
3290 Beth is in the middle of making a layout test for this; she will land it soon.
3292 * platform/mac/ScrollBarMac.mm:
3293 (ScrollBar::~ScrollBar):
3294 Call Widget::removeFromSuperview() rather than -removeFromSuperview directly on the scroll bar view.
3295 Widget::removeFromSuperview() obeys the "mustStayInWindow" flag, which is set while tracking the mouse
3296 in view-based widgets to prevent their destruction while the tracking is in progress.
3297 I searched around WebCore and this is the only Widget subclass that directly removes its view rather
3298 than using removeFromSuperview().
3300 2006-07-21 Mitz Pettel <opendarwin.org@mitzpettel.com>
3304 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9312
3305 REGRESSION: Selection bug in new text fields when selecting past the first letter
3307 Test: editing/selection/select-from-textfield-outwards.html
3309 * editing/Selection.cpp:
3310 (WebCore::Selection::adjustForEditableContent): Added code to handle the case
3311 where the selection starts (resp. ends) in the last (resp. first) visual position
3312 inside an editable root.
3313 * editing/htmlediting.cpp:
3314 (WebCore::comparePositions): Fixed the case of comparing a position inside a shadow
3315 tree with a position in the shadow ancestor.
3316 * rendering/RenderBlock.cpp:
3317 (WebCore::RenderBlock::positionForCoordinates): For coordinates outside a replaced
3318 object, return the position just before (after) the element if the coordinates are above or
3319 to the left (below or to the right).
3320 * rendering/RenderObject.cpp:
3321 (WebCore::RenderObject::caretMaxOffset): Changed to return 1 for replaced objects.
3322 * rendering/RenderText.cpp:
3323 (WebCore::RenderText::positionForCoordinates): Changed to return the last position
3324 in the lowest text box if the y coordinate is below all text boxes.
3326 2006-07-21 Geoffrey Garen <ggaren@apple.com>
3330 - Fixed <rdar://problem/4507265> REGRESSION: overlays don't work on
3331 HousingMaps.com (Google Maps-based site)
3333 - Made style.filter undetectable, like document.all.
3335 Unfortunately, the SVG spec-makers invented a CSS attribute named 'filter',
3336 which conflicts with IE's custom CSS attribute by the same name. Web programs
3337 like the Google maps API test for style.filter, and assume it's the IE
3338 style.filter if they find it, so we need to make style.filter undetectable
3339 to avoid breaking them.
3341 An alternative solution would be to hotwire a delorean, go back in time,
3342 and beg the web standards makers to make standards that work on the web.
3344 * bindings/js/kjs_css.cpp:
3345 (KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
3347 2006-07-20 Justin Garcia <justin.garcia@apple.com>
3351 <rdar://problem/4641033>
3352 REGRESSION: Pasting from web pages into Mail (or Blot) often loses most of the content
3354 * editing/markup.cpp:
3355 (WebCore::createMarkup): We surround the currently accumulated markup with markup
3356 for ancestors of the startNode when the pre-order traversal leaves the trees rooted
3357 at those ancestors. We assumed that any ancestors of the current node not in the
3358 ancestorsToClose list were those kind of ancestors. But we don't add renderer-less
3359 containers to the ancestorsToClose list. So, we were incorrectly surrounding the
3360 currently accumulated markup with markup for render-less containers. Most of the
3361 content at apple.com was being put inside an <optgroup> inside a <select> element.
3362 Then on Paste createContextualFragment would drop it.
3364 2006-07-21 Anders Carlsson <acarlsson@apple.com>
3369 (WebCore::Document::):
3370 * dom/EventTargetNode.cpp:
3371 (WebCore::EventTargetNode::addEventListener):
3372 * page/FrameView.cpp:
3373 (WebCore::FrameView::layout):
3374 * rendering/RenderLayer.cpp:
3375 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
3376 Only dispatch overflowchanged events if overflowchanged event listeners have been registered on the document.
3378 2006-07-20 Anders Carlsson <acarlsson@apple.com>
3382 <rdar://problem/4637807> REGRESSION: "Features & Options" page at volvocars.us fails
3384 * xml/XSLTProcessor.cpp:
3385 (WebCore::xsltParamArrayFromParameterMap):
3386 Turns out parameters never worked. String parameters need to be escaped so we create a transform context,
3387 add the parameters to it quoted and then use xsltApplyStylesheetUser which lets us pass the transform context to it.
3388 This also works around a bug in libxslt where a hash table isn't allocated.
3390 2006-07-20 Alice Liu <alice.liu@apple.com>
3392 Reviewed by Tim Omernick.
3394 Fixed <rdar://problem/4621649> repro crash: Upload link causes crash on pages.google.com in Frame::nodeForWidget
3395 added manual test because there is no way to change the value of an <input type=file> via the DOM. It's not supported because it's a security risk.
3397 * manual-tests/remove-input-file-onchange.html: Added.
3398 * platform/mac/FileButtonMac.mm:
3399 (-[WebFileChooserButton chooseFilename:]):
3400 swapped the calls to changeFilename and bridgeForWidget because changeFilename will destroy the widget that is accessed in bridgeForWidget
3402 2006-07-20 Alice Liu <alice.liu@apple.com>
3406 Fixed <rdar://problem/4532113> REGRESSION (NativeTextField): Crash occurs after modifying field then reloading page -[FormDelegate frameLayoutHasChanged:]
3407 added a manual test because of the need to use AutoFill.
3410 (WebCore::Node::aboutToUnload):
3411 added virtual function prototype
3412 * html/HTMLInputElement.cpp:
3413 (WebCore::HTMLInputElement::aboutToUnload):
3414 added implementation that sends textFieldDidEndEditing notification
3415 * html/HTMLInputElement.h:
3416 added virtual function prototype
3417 * manual-tests/input-type-file-autocomplete-frame-1.html: Added.
3418 * manual-tests/input-type-file-autocomplete-frame-2.html: Added.
3419 * manual-tests/input-type-file-autocomplete-refresh.html: Added.
3421 (WebCore::Frame::stopLoading):
3422 before unloading, call aboutToUnload on the current focused node
3424 2006-07-20 Brady Eidson <beidson@apple.com>
3428 fixed <rdar://problem/4611303> REGRESSION: repro crash in WebCore::EventTargetNode::dispatchWindowEvent at aeropostale.com
3429 There was an attempt to deref an EventListener that got cleaned up in GC. Changing Document's EventListener list from
3430 vanilla ptrs to refptrs to prevent GC, following EventTargetNode's proven example.
3433 (WebCore::Document::Document):
3434 (WebCore::Document::clear):
3435 (WebCore::Document::handleWindowEvent):
3436 (WebCore::Document::getHTMLWindowEventListener):
3437 (WebCore::Document::removeHTMLWindowEventListener):
3438 (WebCore::Document::removeWindowEventListener):
3439 (WebCore::Document::hasWindowEventListener):
3440 Changed all of the list iterators to work with RefPtrs instead of vanilla ptrs
3443 Changed the EventListener list to be a vanilla pointer list to a refptr list
3445 2006-07-20 John Sullivan <sullivan@apple.com>
3449 - WebCore part of fix for:
3450 <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving
3451 closing tabs after clicking in a web page
3453 * bridge/mac/WebCoreFrameBridge.h:
3454 (-[WebCoreFrameBridge textViewWasFirstResponderAtMouseDownTime:])
3455 renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)
3456 * bridge/mac/FrameMac.mm:
3457 (WebCore::FrameMac::passMouseDownEventToWidget):
3458 updated for name change
3460 2006-07-19 Alexey Proskuryakov <ap@nypop.com>
3464 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8272
3465 Use of window.open & window.close can cause crash
3467 * platform/PlatformMouseEvent.h:
3468 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3469 * platform/mac/PlatformMouseEventMac.mm:
3470 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3471 The default constructor now creates a "zero" event, and a new one was added to create the "current" one.
3473 * bridge/mac/FrameMac.mm:
3474 (WebCore::FrameMac::handleMouseMoveEvent):
3475 * rendering/RenderFormElement.cpp:
3476 (WebCore::RenderFormElement::clicked):
3477 Updated for the above changes.
3479 * platform/gdk/MouseEventGdk.cpp:
3480 * platform/gdk/TemporaryLinkStubs.cpp:
3481 (PlatformMouseEvent::PlatformMouseEvent):
3482 * platform/win/MouseEventWin.cpp:
3483 * platform/win/TemporaryLinkStubs.cpp:
3484 (PlatformMouseEvent::PlatformMouseEvent):
3485 Trying not to break other platforms.
3487 * manual-tests/invalid-mouse-event.html: Added.
3489 2006-07-20 Maciej Stachowiak <mjs@apple.com>
3493 - delete line that I only commented in the last patch - meant to do this before landing
3495 * html/HTMLFrameElement.cpp:
3496 (WebCore::HTMLFrameElement::close):
3498 2006-07-19 Maciej Stachowiak <mjs@apple.com>
3502 - fixed <rdar://problem/4634484> REGRESSION: Project Change Request form should have vertical scroll bar, but doesn't
3504 I couldn't figure out how to make an automated test case for this,
3505 or even a manual one. It seems to be timing-related in some way.
3507 * html/HTMLFrameElement.cpp:
3508 (WebCore::HTMLFrameElement::close): detach the child frame from
3509 its element, not the frame containing this element.
3511 2006-07-20 Anders Carlsson <acarlsson@apple.com>
3515 * bridge/mac/FrameMac.mm:
3516 (WebCore::FrameMac::nextKeyViewInFrame):
3517 Hold a ref to the node in case it gets destroyed by an event handler.
3519 2006-07-19 Mark Rowe <opendarwin.org@bdash.net.nz>
3523 http://bugzilla.opendarwin.org/show_bug.cgi?id=10021
3524 Bug 10021: REGRESSION: Stack overflow due to infinite recursion in
3525 Image::checkForSolidColor
3527 * platform/Image.cpp:
3528 (WebCore::Image::cacheFrame): Don't call checkForSolidColor unless
3529 the frame was decoded successfully.
3531 2006-07-19 Adele Peterson <adele@apple.com>
3536 <rdar://problem/4422657> REGRESSION: member name field or password field should have focus after loading webmail.mac.com (7405)
3537 http://bugzilla.opendarwin.org/show_bug.cgi?id=7405
3539 <rdar://problem/4614181> REGRESSION: Crash in WebCore::RenderTextField::text() when quoting post at the Ars Technica forum (9707)
3540 http://bugzilla.opendarwin.org/show_bug.cgi?id=9707
3542 Needs an http test. (http://bugzilla.opendarwin.org/show_bug.cgi?id=10020)
3544 These bugs were both cases where focus() was called on an element which didn't have a renderer yet because stylesheets hadn't finished loading yet.
3545 Now, we detect this case and let setFocusNode be called. And when the stylesheet finishes loading, and the element attaches, a timer will fire,
3546 which will cause the correct selection & scrolling behavior to occur.
3548 This fix removes selection and scrolling behavior from the focus method. This code is now in a new method, updateFocusAppearance.
3549 updateFocusAppearance can now be called directly from focus(), but it can also be called when a timer fires. This timer gets set
3550 up when an element attaches, and its already been focused by the focus method. We have to use a timer, because updateFocusAppearance can cause
3551 a layout to happen, and we don't want that to happen in the middle of attach().
3553 * bindings/objc/DOM.mm: (-[DOMElement isFocused]): Added SPI for autofill.
3554 * bindings/objc/DOMPrivate.h:
3557 (WebCore::Element::Element): Initializes timer and needFocusAppearanceUpdate bool.
3558 (WebCore::Element::attach): Checks needsFocusAppearanceUpdate, and if the node is focused, then starts the timer.
3559 (WebCore::Element::focus): Updated to check supportsFocus before calling setFocusNode,
3560 and only requiring the element to be focusable now before updating focus appearance.
3561 (WebCore::Element::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
3562 (WebCore::Element::updateFocusAppearanceTimerFired): Stops the timer, and if the element is focusable, calls updateFocusAppearance.
3563 (WebCore::Element::stopUpdateFocusAppearanceTimer): Cancels timer, and setsNeedsFocusAppearanceUpdate(false).
3564 (WebCore::Element::detach): Calls stopUpdateFocusAppearanceTimer.
3565 (WebCore::Element::blur): ditto.
3567 (WebCore::Element::needsFocusAppearanceUpdate): Added so the timer only fires when focus() methods have caused an element to be focused.
3568 (WebCore::Element::setNeedsFocusAppearanceUpdate): Added so focus methods can set this flag.
3570 * dom/Node.h: (WebCore::Node::supportsFocus): Added. Base class just calls isFocusable.
3571 * html/HTMLAnchorElement.h: Added supportsFocus.
3572 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::supportsFocus): Added. Checks for the case where stylesheets haven't loaded yet,
3573 so we can still focus the node without a renderer, and when it gets a renderer, we'll update the focus appearance.
3574 * html/HTMLGenericFormElement.h: (WebCore::HTMLGenericFormElement::supportsFocus): ditto.
3575 * html/HTMLGenericFormElement.cpp: Removed include of Document.h since this is now in the header.
3577 * html/HTMLInputElement.cpp:
3578 (WebCore::HTMLInputElement::focus): Updated to check supportsFocus before calling setFocusNode,
3579 and only requiring the element to be focusable now before updating focus appearance.
3580 (WebCore::HTMLInputElement::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
3581 * html/HTMLInputElement.h:
3583 * html/HTMLTextAreaElement.cpp:
3584 (WebCore::HTMLTextAreaElement::focus): Updated to check supportsFocus before calling setFocusNode,
3585 and only requiring the element to be focusable now before updating focus appearance.
3586 (WebCore::HTMLTextAreaElement::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
3587 * html/HTMLTextAreaElement.h:
3589 2006-07-19 Justin Garcia <justin.garcia@apple.com>
3593 <rdar://problem/4631972>
3594 REGRESSION: Mail crashes when pasting entire contents of http://www.apple.com/support/ into a new mail message
3597 (WebCore::Position::upstream): Deployed isBlock and enclosingBlock.
3598 (WebCore::Position::downstream): Ditto.
3599 * editing/CompositeEditCommand.cpp:
3600 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Ditto.
3601 * editing/htmlediting.cpp:
3602 (WebCore::canHaveChildrenForEditing): Added !iframe.
3603 (WebCore::isBlock): Added, returns !node->renderer()->isInline()
3604 (WebCore::enclosingBlock): Added.
3605 * editing/htmlediting.h:
3607 2006-07-19 Anders Carlsson <acarlsson@apple.com>
3611 <rdar://problem/4631272> REGRESSION: Crash tabbing out of hostname field at autorestore.apple.com
3613 * bridge/mac/FrameMac.mm:
3614 (WebCore::FrameMac::nextKeyViewInFrame):
3615 Take into account that focus handlers can cause a node's renderer to be destroyed.
3617 2006-07-19 David Hyatt <hyatt@apple.com>
3619 Fix for 4638376. The 1x1 solid color image optimization was broken when
3620 I re-architected image. This patch restores the optimization for CG. Cairo
3621 will still need the optimization.
3625 WARNING: NO TEST CASES ADDED OR CHANGED (need test cases still)
3627 * platform/Image.cpp:
3628 (WebCore::Image::Image):
3629 (WebCore::Image::invalidateData):
3630 (WebCore::Image::cacheFrame):
3632 (WebCore::Image::setIsPDF):
3633 * platform/cairo/ImageCairo.cpp:
3634 (WebCore::Image::checkForSolidColor):
3635 * platform/mac/ImageMac.mm:
3636 (WebCore::Image::initNativeData):
3637 (WebCore::Image::invalidateNativeData):
3638 (WebCore::Image::checkForSolidColor):
3639 (WebCore::Image::draw):
3640 (WebCore::Image::drawTiled):
3642 2006-07-19 Justin Garcia <justin.garcia@apple.com>
3646 <rdar://problem/4613519>
3647 REGRESSION: Pasting text in native text area inserts text one character before it should (9527)
3649 * editing/InsertParagraphSeparatorCommand.cpp:
3650 (WebCore::InsertParagraphSeparatorCommand::doApply): Turn into an InsertLineBreakCommand instead of bailing
3651 if the enclosingBlockFlowElement doesn't have a parent.
3653 2006-07-19 David Harrison <harrison@apple.com>
3655 Reviewed by Tim Hatcher.
3657 <rdar://problem/4629307> -[DOMRange markupString] does not include the initial table element if it is at the beginning of the range
3658 <rdar://problem/4062218> pasting in contents of web.apple.com strips off the <table> element from the first table
3660 Better patch than previous checkin.
3662 * test: editing/pasteboard/paste-table-003.html
3664 * editing/markup.cpp:
3665 (WebCore::createMarkup):
3666 Make sure to include the table when including a tbody.
3668 === Safari-521.19 ===
3670 2006-07-19 David Harrison <harrison@apple.com>
3672 Reviewed by Tim Hatcher.
3674 <rdar://problem/4629307> -[DOMRange markupString] does not include the initial table element if it is at the beginning of the range
3676 No test case as this can only be reproduced through ObjC APIs.
3678 * editing/markup.cpp:
3679 (WebCore::createMarkup):
3680 Adjust the range for ancestor markup handling when main loop skips first node.
3682 2006-07-18 David Hyatt <hyatt@apple.com>
3684 Fix for radar 4611287, make resizable text fields opt-in rather than
3685 opt-out. Open source users will need to write the pref into their defaults
3686 to see the resizers on textareas now.
3688 Reviewed by mjs and adele
3690 * WebCore.xcodeproj/project.pbxproj:
3691 * bridge/mac/WebCoreSettings.mm:
3692 (-[WebCoreSettings setTextAreasAreResizable:]):
3693 * css/cssparser.cpp:
3694 (WebCore::CSSParser::parseValue):
3695 * css/cssstyleselector.cpp:
3696 (WebCore::CSSStyleSelector::applyProperty):
3699 2006-07-18 Anders Carlsson <acarlsson@apple.com>
3703 http://bugzilla.opendarwin.org/show_bug.cgi?id=9959
3704 REGRESSION: iframes stop rendering after 200th one on successive reloads
3706 * html/HTMLFrameElement.cpp:
3707 (WebCore::HTMLFrameElement::attach):
3708 (WebCore::HTMLFrameElement::close):
3709 * html/HTMLIFrameElement.cpp:
3710 (WebCore::HTMLIFrameElement::insertedIntoDocument):
3711 (WebCore::HTMLIFrameElement::willRemove):
3712 Remove calls to incrementFrameCount and decrementFrameCount.
3715 (WebCore::Frame::Frame):
3716 Call incrementFrameCount here.
3718 (WebCore::Frame::~Frame):
3719 Call disconnectOwnerElement.
3721 (WebCore::Frame::disconnectOwnerElement):
3722 Call decrementFrameCount here.
3724 2006-07-18 Alexey Proskuryakov <ap@nypop.com>
3728 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9013
3729 Let correct CSS custom cursor declarations parse
3731 * css/cssparser.cpp:
3732 (WebCore::CSSParser::parseValue): Ignore any values following a custom CSS cursor URI, instead of
3733 requiring that it is the only one in the list (which is actually illegal, according to the spec).
3734 This is only a temporary hack, with a real implementation to follow in bug 6001/6002.
3736 * manual-tests/custom-cursors.html: Added a test for this issue.
3737 * manual-tests/resources/helpCursor.tiff: A cursor image used in the test.
3739 2006-07-18 Timothy Hatcher <timothy@apple.com>
3743 <rdar://problem/4636216> NetNewsWire fails to launch on 9A224 - missing symbols
3745 WebCore needs to add -sub_library libobjc to maintain
3746 backwards compatibility with binaries linked with WebKit
3747 before JavaScriptCore moved out of WebKit.
3749 * WebCore.xcodeproj/project.pbxproj:
3751 2006-07-18 Mitz Pettel <opendarwin.org@mitzpettel.com>
3755 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9978
3756 REGRESSION (r12949-r12988): Clicking the first letter on a line places the caret at the end of the previous line
3758 Test: editing/selection/click-start-of-line.html
3760 * rendering/RenderText.cpp:
3761 (WebCore::RenderText::positionForCoordinates): Changed to return downstream
3762 affinity if the x coordinate is to the left of the middle of the first character
3765 2006-07-18 Anders Carlsson <acarlsson@apple.com>
3769 http://bugzilla.opendarwin.org/show_bug.cgi?id=9695
3770 <rdar://problem/4614085>
3771 TOT REGRESSION: NativeTextArea: Text area does not respond to Cmd-UpArrow/Cmd-DownArrow (9695)
3773 * editing/SelectionController.cpp:
3774 (WebCore::SelectionController::modifyExtendingRightForward):
3775 (WebCore::SelectionController::modifyMovingRightForward):
3776 (WebCore::SelectionController::modifyExtendingLeftBackward):
3777 (WebCore::SelectionController::modifyMovingLeftBackward):
3778 If the caret is inside an editable region, the beginning/end of the document should actually be the
3779 beginning/end of the editable region.
3781 2006-07-17 Tim Omernick <timo@apple.com>
3785 <rdar://problem/4612079> need a way to prevent pages from scrolling to reveal elements that are focused
3788 * bridge/mac/WebCoreFrameBridge.h:
3789 * bridge/mac/WebCoreFrameBridge.mm:
3790 (-[WebCoreFrameBridge setProhibitsScrolling:]):
3792 (WebCore::Frame::prohibitsScrolling):
3793 (WebCore::Frame::setProhibitsScrolling):
3795 * page/FramePrivate.h:
3796 (WebCore::FramePrivate::FramePrivate):
3797 * page/FrameView.cpp:
3798 (WebCore::FrameView::scrollPointRecursively):
3799 (WebCore::FrameView::setContentsPos):
3801 * platform/ScrollView.h:
3803 2006-07-17 Maciej Stachowiak <mjs@apple.com>
3805 Reviewed by Dave Harrison.
3807 - fixed <rdar://problem/4618089> Blot crashes when I paste in all the contents of http://www.apple.com/startpage/
3809 * editing/htmlediting.cpp:
3810 (WebCore::editingIgnoresContent):
3812 2006-07-17 Justin Garcia <justin.garcia@apple.com>
3816 <rdar://problem/4621728>
3817 REGRESSION: Selecting by dragging down creates selection in wrong direction, with certain steps
3818 <rdar://problem/4604932>
3819 REGRESSION: Dragging too far left on a line will select all lines above it.
3821 No layout test because of 9980.
3823 * rendering/RenderBlock.cpp:
3824 (WebCore::RenderBlock::positionForCoordinates): Don't return positions inside editable roots
3825 for coordinates outside those roots, except for coordinates outside a document that is entirely
3828 2006-07-17 Timothy Hatcher <timothy@apple.com>
3832 <rdar://problem/4635281> JSCanvasRenderingContext2D::drawImage needs to initialize the exception code to zero
3834 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3835 (WebCore::JSCanvasRenderingContext2D::drawImage): initialize ec to zero
3836 * html/CanvasRenderingContext2D.cpp:
3837 (WebCore::CanvasRenderingContext2D::drawImage): initialize ec before earlier return
3839 2006-07-17 Timothy Hatcher <timothy@apple.com>
3843 <rdar://problem/4634874> WebScriptObject and WebUndefined are no longer defined by WebKit
3845 Moves WebScriptObject and WebUndefined to WebCore.
3848 * WebCore.xcodeproj/project.pbxproj:
3849 * bindings/objc/DOM.mm:
3850 * bindings/objc/DOMCore.h:
3851 * bindings/objc/DOMInternal.mm:
3852 * bindings/objc/DOMUtility.mm:
3853 * bindings/objc/WebScriptObject.mm: Added.
3854 (+[WebUndefined allocWithZone:]):
3855 (-[WebUndefined initWithCoder:]):
3856 (-[WebUndefined encodeWithCoder:]):
3857 (-[WebUndefined copyWithZone:]):
3858 * bindings/objc/WebScriptObjectPrivate.h: Added.
3859 * bridge/mac/FrameMac.mm:
3860 * bridge/mac/WebCoreScriptDebugger.mm:
3862 2006-07-17 David Hyatt <hyatt@apple.com>
3864 Back out the fix for 5564, since it turns out font:x-small; is a pretty
3865 prominent IE-specific CSS hack. Because Web sites rely on IE's incorrect
3866 font parsing as a means of also correcting IE's incorrect font size rules.
3868 This fixes Yahoo.com.
3872 * css/cssparser.cpp:
3873 (WebCore::CSSParser::parseFont):
3875 2006-07-17 Justin Garcia <justin.garcia@apple.com>
3879 <rdar://problem/4618389> REGRESSION: After applying a link to the last word of a sentence, a new selection is created at the start of the sentence
3882 (WebCore::Document::updateSelection):
3884 2006-07-17 Maciej Stachowiak <mjs@apple.com>
3888 <rdar://problem/4604946> REGRESSION: 'checkboxRef.checked = true' fires onchange event in Leopard
3890 * html/HTMLInputElement.cpp:
3891 (WebCore::HTMLInputElement::setChecked):
3892 (WebCore::HTMLInputElement::preDispatchEventHandler):
3893 * html/HTMLInputElement.h:
3895 2006-07-16 David Kilzer <ddkilzer@kilzer.net>
3899 - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9954
3900 REGRESSION: document.dir should return empty string in <head>
3902 Test: fast/dom/document-dir-property.html
3904 * bindings/js/kjs_html.cpp:
3905 (KJS::JSHTMLDocument::getValueProperty): Return an empty string instead of an
3906 undefined value for an unset document.dir property.
3908 2006-07-16 David Kilzer <ddkilzer@kilzer.net>
3912 * dom/NodeFilter.idl:
3913 Removed "No newline at end of file" that snuck in as part of the "apply patch" process.
3914 * manual-tests/input-empty-on-focus.html:
3915 Removed "Property changes" that snuck in as part of the "apply patch" process.
3917 2006-07-16 Darin Adler <darin@apple.com>
3919 Reviewed by John Sullivan.
3921 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9943
3922 <rdar://problem/4590613>
3923 REGRESSION (Tiger-TOT): menus are offset to the right at http://movies.aol.com/movie-photo-bts/superman-returns
3925 The problem turns out to be the fact that body.offsetLeft is returning a non-zero value.
3926 I have no idea why the menus worked in Tiger Safari, because body.offsetLeft behavior has not changed.
3927 Presumably some other bug that we fixed had been compensating.
3929 Test: fast/html/body-offset-properties.html
3931 * rendering/RenderObject.cpp:
3932 (WebCore::RenderObject::offsetLeft): Always return 0 for any object without an offsetParent.
3933 (WebCore::RenderObject::offsetTop): Ditto.
3934 (WebCore::RenderObject::offsetParent): Return 0 for the body (treat as a special case).
3936 2006-07-16 Beth Dakin <bdakin@apple.com>
3940 Fix for <rdar://problem/4616595> REGRESSION: Problems with world
3941 clock widget clock hand motion on 9A211 + 4604574
3943 The second hand on the widget was jiggling because the rotation was
3944 messing up the use of the affine transformation matrix while
3945 rounding to pixel boundaries in device space. We are mainly
3946 concerned with rounding to pixel boundaries with the scale in mind,
3947 so this patch extracts the scale to device space from the matrix,
3948 and rounds to pixel boundaries using only the scale. This doesn't
3949 seem like it is a perfect solution, but it definitely solves the
3950 immediate problem. We will probably need to re-address what should
3951 happen to avoid pixel cracks with rotations at non-integral scale
3954 * platform/cg/GraphicsContextCG.cpp:
3955 (WebCore::GraphicsContext::roundToDevicePixels):
3957 2006-07-15 Darin Adler <darin@apple.com>
3959 - fix mistake from fix for 8952 that was breaking layout tests
3961 * editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved):
3962 Justin was right! I changed the behavior of the function by accident. Changed it
3963 back so that it doesn't blow away the selection on the DOM side in the case where
3966 I will write 100 times on the blackboard: "When Justin says something about editing,
3967 assume he is right."
3969 2006-07-15 Darin Adler <darin@apple.com>
3971 - try to fix Windows build
3973 * WebCore.vcproj/WebCore/WebCore.vcproj: Added StreamingTextDecoderICU.cpp/h.
3975 2006-07-15 Darin Adler <darin@apple.com>
3977 Reviewed by John Sullivan.
3979 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8952
3980 <rdar://problem/4575185>
3981 REGRESSION: crash on drag of highlighted Google custom home page modules
3983 Test: fast/dynamic/move-node-with-selection.html
3985 * editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved):
3986 Call updateRendering before calling clearSelection(), since it's important to do any
3987 work beforehand, and there are calls inside clearSelection that will indirectly do an
3988 updateRendering. Also change code to make fewer assumptions about object lifetime.
3990 2006-07-15 Darin Adler <darin@apple.com>
3992 Reviewed by John Sullivan.
3994 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8587
3995 <rdar://problem/4631844>
3996 REGRESSION: {display:list-item} on items outside an ol or ul element no longer causes incremental numbering
3998 Test: fast/lists/numeric-markers-outside-list.html
4000 * rendering/RenderListItem.cpp: (WebCore::previousListItem):
4001 Look for list items, even when we're outside any list.
4003 2006-07-15 Adele Peterson <adele@apple.com>
4007 - Fix for <rdar://problem/4593970> REGRESSION (NativeTextField): autofill menu disappears after typing a 2nd character
4009 This was caused by composite editing commands, (like typing or pasting) that include a DeleteCommand, being
4010 interpreted by the form delegate as an actual delete. This fix doesn't notify the form delegate if the deletion is
4011 part of an editing command to replace the selected text.
4013 * editing/DeleteSelectionCommand.h: Added m_replace to keep track of whether this deletion is
4014 part of a composite command to replace the text being deleted.
4015 * editing/DeleteSelectionCommand.cpp:
4016 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Initialize m_replace.
4017 (WebCore::DeleteSelectionCommand::doApply): Only notify the form delegate of the deletion if the text is not being replaced.
4018 * editing/CompositeEditCommand.h:
4019 * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteSelection):
4020 Added replace argument to construct DeleteSelectionCommand.
4022 * editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input): Call deleteSelection with replace argument.
4023 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): ditto.
4025 2006-07-15 Geoffrey Garen <ggaren@apple.com>
4027 Reviewed by Maciej, tweaked to match Darin's patch.
4029 - Fixed <rdar://problem/4631837> REGRESSION: Reproducible crash on
4030 FCKeditor demo (9911)
4032 * WebCore.xcodeproj/project.pbxproj:
4033 * bindings/js/kjs_html.cpp:
4034 (KJS::JSHTMLDocument::putValueProperty): Check for a null body element before
4035 forwarding the put request to it. I confirmed that no other parts of the
4036 file use 'body' or 'bodyElement' without checking for null.
4038 Also, use 'body' rather than 'bodyElement' because dir can bet set on
4039 any element, not just HTMLBodyElement.
4041 2006-07-15 Darin Adler <darin@apple.com>
4045 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8871
4046 <rdar://problem/4575417>
4047 REGRESSION: Pressing Enter/Return in a text input removes the selected text
4049 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9743
4050 <rdar://problem/4614228>
4051 REGRESSION: crash dispatching JavaScript-created keyboard event to input element
4053 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::doTextFieldCommandFromEvent):
4054 Add a null check to fix the crash, and a FIXME explaining why this is not necessarily
4055 enough for the future.
4057 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
4058 Consume Enter key keypress events even if the element is not in a form.
4060 * platform/mac/KeyEventMac.mm: (WebCore::keyIdentifierForKeyEvent): Added \n to the
4061 characters that turn into "Enter". Actual keyboard events always are \r or \003 on
4062 the Macintosh, but in layout tests we can use \n, and everything other than the
4063 code path here works, so worth fixing.
4065 2006-07-15 Darin Adler <darin@apple.com>
4067 Reviewed by John Sullivan.
4069 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9883
4070 <rdar://problem/4631821>
4071 REGRESSION: NativePopups don't work correctly in some forum software
4073 Test: fast/forms/select-selected.html
4075 * rendering/RenderMenuList.h:
4076 * rendering/RenderMenuList.cpp:
4077 (WebCore::RenderMenuList::updateFromElement): Added code to map the selected option
4078 index to a list index before using it to index into the list.
4079 (WebCore::RenderMenuList::showPopup): Added code to map the selection option index
4080 to a list index before passing it to the menu renderer.
4081 (WebCore::RenderMenuList::valueChanged): Added code to map the list index back to a
4082 option index before calling setSelectedIndex (that function takes an option index).
4084 2006-07-15 Darin Adler <darin@apple.com>
4086 Reviewed by John Sullivan.
4088 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9928
4089 REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix)
4091 * bindings/objc/DOM.mm:
4092 (-[DOMNode addEventListener:::]): Moved into DOMEventTarget category.
4093 (-[DOMNode removeEventListener:::]): Ditto.
4094 (-[DOMNode dispatchEvent:]): Ditto.
4096 * WebCore.xcodeproj/project.pbxproj: Allow Xcode to do its thing.
4098 2006-07-15 Maciej Stachowiak <mjs@apple.com>
4102 <rdar://problem/4632144> REGRESSION: table column tests failing as a result of very recent fix
4104 * rendering/RenderTable.cpp:
4105 (WebCore::RenderTable::addChild): columns and colgroups are valid children of a table too, not
4106 just table sections!
4108 2006-07-15 Anders Carlsson <acarlsson@apple.com>
4112 http://bugzilla.opendarwin.org/show_bug.cgi?id=9866
4113 <rdar://problem/4631561>
4114 REGRESSION: Repro crash from mangleme using iframe, only from server.
4116 * html/HTMLIFrameElement.cpp:
4117 (WebCore::HTMLIFrameElement::attach):
4118 Add null check for contentFrame() since content frames won't be created for invalid URLs.
4120 2006-07-14 Alexey Proskuryakov <ap@nypop.com>
4124 Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4195
4125 REGRESSION: KOI8-U encoding no longer supported.
4128 * http/tests/misc/BOM-override.pl
4129 * http/tests/misc/BOM-override-script.html
4130 * fast/encoding/charset-koi8-u.html
4131 * fast/encoding/charset-x-nextstep.html
4133 Restored a TEC code path for encodings that are not supported by ICU (but which currently
4134 passes all layout tests even by itself with ICU disabled). A lot of refactoring is
4135 still needed - most importantly, round-tripping encoding names via CFStringEncoding
4136 makes little sense now.
4139 * bridge/mac/WebCoreTextDecoder.h: Removed.
4140 * bridge/mac/WebCoreTextDecoder.mm: Removed.
4141 WebCoreTextDecoder was not used anywhere since WebTextView was moved into WebCore.
4143 * loader/Decoder.cpp:
4145 (Decoder::setEncodingName):
4147 Use StreamingTextDecoder::create().
4149 * platform/StreamingTextDecoder.cpp:
4150 (WebCore::StreamingTextDecoder::create):
4151 (WebCore::StreamingTextDecoder::~StreamingTextDecoder):
4152 * platform/StreamingTextDecoder.h:
4153 StreamingTextDecoder is just an abstract interface to implementations now.
4155 * platform/StreamingTextDecoderICU.cpp: Added.
4156 (WebCore::StreamingTextDecoderICU::StreamingTextDecoderICU):
4157 (WebCore::StreamingTextDecoderICU::~StreamingTextDecoderICU):
4158 (WebCore::StreamingTextDecoderICU::releaseICUCon